@camstack/addon-pipeline 1.2.2 → 1.2.3
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/audio-analyzer/index.js +1 -1
- package/dist/audio-analyzer/index.mjs +1 -1
- package/dist/detection-pipeline/index.js +2 -2
- package/dist/detection-pipeline/index.mjs +2 -2
- package/dist/{dist-CVjqvU8G.js → dist-D7-LF079.js} +2 -1
- package/dist/{dist-ClyAFBZk.mjs → dist-DVjpngiC.mjs} +2 -1
- package/dist/motion-wasm/index.js +1 -1
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/pipeline-runner/index.js +2 -2
- package/dist/pipeline-runner/index.mjs +2 -2
- package/dist/recorder/index.js +1 -1
- package/dist/recorder/index.mjs +1 -1
- package/dist/{step-definitions-DMOw4fzn.mjs → step-definitions-BPwND8Zg.mjs} +1 -1
- package/dist/{step-definitions-D76MMwbo.js → step-definitions-BfXdDokR.js} +1 -1
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-7jRy3Uzr.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BozTkBJG.mjs} +3 -3
- package/dist/stream-broker/{hostInit-4pxims1d.mjs → hostInit-BUab2768.mjs} +3 -3
- package/dist/stream-broker/index.js +1 -1
- package/dist/stream-broker/index.mjs +1 -1
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/embed-dist/assets/{MaskShapeCanvas-DI4BY7W2-BPRZW9TX.js → MaskShapeCanvas-DI4BY7W2-L6rscpzL.js} +1 -1
- package/embed-dist/assets/{MotionZonesSettings-NcxxQN8r-Bw6Nlg-Q.js → MotionZonesSettings-NcxxQN8r-CK9BVkOT.js} +1 -1
- package/embed-dist/assets/{PrivacyMaskSettings-APgPLF7p-BLF9QKG8.js → PrivacyMaskSettings-APgPLF7p-CNcYwFLg.js} +1 -1
- package/embed-dist/assets/{index-DiUhKfSk.js → index-CBhJRpiC.js} +4 -4
- package/embed-dist/index.html +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MotionZonesSettings-NcxxQN8r-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MotionZonesSettings-NcxxQN8r-CK9BVkOT.js","./MaskShapeCanvas-DI4BY7W2-L6rscpzL.js","./PrivacyMaskSettings-APgPLF7p-CNcYwFLg.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,a=Object.getPrototypeOf,o=Object.prototype.hasOwnProperty,s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var a in e)t(r,a,{get:e[a],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,a,s,c)=>{if(a&&typeof a==`object`||typeof a==`function`)for(var l=r(a),u=0,d=l.length,f;u<d;u++)f=l[u],!o.call(e,f)&&f!==s&&t(e,f,{get:(e=>a[e]).bind(null,f),enumerable:!(c=n(a,f))||c.enumerable});return e},u=(n,r,o)=>(o=n==null?{}:e(a(n)),l(r||!n||!n.__esModule?t(o,`default`,{value:n,enumerable:!0}):o,n));(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 d=s((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,o=e[r];if(0<a(o,t))e[r]=t,e[n]=o,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,o=e.length,s=o>>>1;r<s;){var c=2*(r+1)-1,l=e[c],u=c+1,d=e[u];if(0>a(l,n))u<o&&0>a(d,l)?(e[r]=d,e[u]=n,r=u):(e[r]=l,e[c]=n,r=c);else if(u<o&&0>a(d,n))e[r]=d,e[u]=n,r=u;else break a}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var o=performance;e.unstable_now=function(){return o.now()}}else{var s=Date,c=s.now();e.unstable_now=function(){return s.now()-c}}var l=[],u=[],d=1,f=null,p=3,m=!1,h=!1,g=!1,_=!1,v=typeof setTimeout==`function`?setTimeout:null,y=typeof clearTimeout==`function`?clearTimeout:null,b=typeof setImmediate<`u`?setImmediate:null;function x(e){for(var a=n(u);a!==null;){if(a.callback===null)r(u);else if(a.startTime<=e)r(u),a.sortIndex=a.expirationTime,t(l,a);else break;a=n(u)}}function S(e){if(g=!1,x(e),!h)if(n(l)!==null)h=!0,C||(C=!0,te());else{var t=n(u);t!==null&&re(S,t.startTime-e)}}var C=!1,w=-1,T=5,E=-1;function D(){return _?!0:!(e.unstable_now()-E<T)}function ee(){if(_=!1,C){var t=e.unstable_now();E=t;var a=!0;try{a:{h=!1,g&&(g=!1,y(w),w=-1),m=!0;var o=p;try{b:{for(x(t),f=n(l);f!==null&&!(f.expirationTime>t&&D());){var s=f.callback;if(typeof s==`function`){f.callback=null,p=f.priorityLevel;var c=s(f.expirationTime<=t);if(t=e.unstable_now(),typeof c==`function`){f.callback=c,x(t),a=!0;break b}f===n(l)&&r(l),x(t)}else r(l);f=n(l)}if(f!==null)a=!0;else{var d=n(u);d!==null&&re(S,d.startTime-t),a=!1}}break a}finally{f=null,p=o,m=!1}a=void 0}}finally{a?te():C=!1}}}var te;if(typeof b==`function`)te=function(){b(ee)};else if(typeof MessageChannel<`u`){var O=new MessageChannel,ne=O.port2;O.port1.onmessage=ee,te=function(){ne.postMessage(null)}}else te=function(){v(ee,0)};function re(t,n){w=v(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):T=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return p},e.unstable_next=function(e){switch(p){case 1:case 2:case 3:var t=3;break;default:t=p}var n=p;p=t;try{return e()}finally{p=n}},e.unstable_requestPaint=function(){_=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=p;p=e;try{return t()}finally{p=n}},e.unstable_scheduleCallback=function(r,a,o){var s=e.unstable_now();switch(typeof o==`object`&&o?(o=o.delay,o=typeof o==`number`&&0<o?s+o:s):o=s,r){case 1:var c=-1;break;case 2:c=250;break;case 5:c=1073741823;break;case 4:c=1e4;break;default:c=5e3}return c=o+c,r={id:d++,callback:a,priorityLevel:r,startTime:o,expirationTime:c,sortIndex:-1},o>s?(r.sortIndex=o,t(u,r),n(l)===null&&r===n(u)&&(g?(y(w),w=-1):g=!0,re(S,o-s))):(r.sortIndex=c,t(l,r),h||m||(h=!0,C||(C=!0,te()))),r},e.unstable_shouldYield=D,e.unstable_wrapCallback=function(e){var t=p;return function(){var n=p;p=t;try{return e.apply(this,arguments)}finally{p=n}}}})),f=s(((e,t)=>{t.exports=d()})),p=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),a=Symbol.for(`react.strict_mode`),o=Symbol.for(`react.profiler`),s=Symbol.for(`react.consumer`),c=Symbol.for(`react.context`),l=Symbol.for(`react.forward_ref`),u=Symbol.for(`react.suspense`),d=Symbol.for(`react.memo`),f=Symbol.for(`react.lazy`),p=Symbol.for(`react.activity`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function y(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function b(){}b.prototype=y.prototype;function x(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}var S=x.prototype=new b;S.constructor=x,_(S,y.prototype),S.isPureReactComponent=!0;var C=Array.isArray;function w(){}var T={H:null,A:null,T:null,S:null},E=Object.prototype.hasOwnProperty;function D(e,n,r){var a=r.ref;return{$$typeof:t,type:e,key:n,ref:a===void 0?null:a,props:r}}function ee(e,t){return D(e.type,t,e.props)}function te(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function O(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ne=/\/+/g;function re(e,t){return typeof e==`object`&&e&&e.key!=null?O(``+e.key):t.toString(36)}function ie(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(w,w):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ae(e,r,a,o,s){var c=typeof e;(c===`undefined`||c===`boolean`)&&(e=null);var l=!1;if(e===null)l=!0;else switch(c){case`bigint`:case`string`:case`number`:l=!0;break;case`object`:switch(e.$$typeof){case t:case n:l=!0;break;case f:return l=e._init,ae(l(e._payload),r,a,o,s)}}if(l)return s=s(e),l=o===``?`.`+re(e,0):o,C(s)?(a=``,l!=null&&(a=l.replace(ne,`$&/`)+`/`),ae(s,r,a,``,function(e){return e})):s!=null&&(te(s)&&(s=ee(s,a+(s.key==null||e&&e.key===s.key?``:(``+s.key).replace(ne,`$&/`)+`/`)+l)),r.push(s)),1;l=0;var u=o===``?`.`:o+`:`;if(C(e))for(var d=0;d<e.length;d++)o=e[d],c=u+re(o,d),l+=ae(o,r,a,c,s);else if(d=h(e),typeof d==`function`)for(e=d.call(e),d=0;!(o=e.next()).done;)o=o.value,c=u+re(o,d++),l+=ae(o,r,a,c,s);else if(c===`object`){if(typeof e.then==`function`)return ae(ie(e),r,a,o,s);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return l}function oe(e,t,n){if(e==null)return e;var r=[],a=0;return ae(e,r,``,``,function(e){return t.call(n,e,a++)}),r}function se(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var k=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)},A={map:oe,forEach:function(e,t,n){oe(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return oe(e,function(){t++}),t},toArray:function(e){return oe(e,function(e){return e})||[]},only:function(e){if(!te(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=p,e.Children=A,e.Component=y,e.Fragment=r,e.Profiler=o,e.PureComponent=x,e.StrictMode=a,e.Suspense=u,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=_({},e.props),a=e.key;if(t!=null)for(o in t.key!==void 0&&(a=``+t.key),t)!E.call(t,o)||o===`key`||o===`__self`||o===`__source`||o===`ref`&&t.ref===void 0||(r[o]=t[o]);var o=arguments.length-2;if(o===1)r.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];r.children=s}return D(e.type,a,r)},e.createContext=function(e){return e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:s,_context:e},e},e.createElement=function(e,t,n){var r,a={},o=null;if(t!=null)for(r in t.key!==void 0&&(o=``+t.key),t)E.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(a[r]=t[r]);var s=arguments.length-2;if(s===1)a.children=n;else if(1<s){for(var c=Array(s),l=0;l<s;l++)c[l]=arguments[l+2];a.children=c}if(e&&e.defaultProps)for(r in s=e.defaultProps,s)a[r]===void 0&&(a[r]=s[r]);return D(e,o,a)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:l,render:e}},e.isValidElement=te,e.lazy=function(e){return{$$typeof:f,_payload:{_status:-1,_result:e},_init:se}},e.memo=function(e,t){return{$$typeof:d,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=T.T,n={};T.T=n;try{var r=e(),a=T.S;a!==null&&a(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(w,k)}catch(e){k(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),T.T=t}},e.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},e.use=function(e){return T.H.use(e)},e.useActionState=function(e,t,n){return T.H.useActionState(e,t,n)},e.useCallback=function(e,t){return T.H.useCallback(e,t)},e.useContext=function(e){return T.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return T.H.useEffect(e,t)},e.useEffectEvent=function(e){return T.H.useEffectEvent(e)},e.useId=function(){return T.H.useId()},e.useImperativeHandle=function(e,t,n){return T.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return T.H.useMemo(e,t)},e.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return T.H.useReducer(e,t,n)},e.useRef=function(e){return T.H.useRef(e)},e.useState=function(e){return T.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return T.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return T.H.useTransition()},e.version=`19.2.7`})),m=s(((e,t)=>{t.exports=p()})),h=s((e=>{var t=m();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 r(){}var a={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},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),o=typeof t.integrity==`string`?t.integrity:void 0,s=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:o,fetchPriority:s}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:o,fetchPriority:s,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`})),g=s(((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=h()})),_=s((e=>{var t=f(),n=m(),r=g();function a(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 o(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function s(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 c(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 l(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 u(e){if(s(e)!==e)throw Error(a(188))}function d(e){var t=e.alternate;if(!t){if(t=s(e),t===null)throw Error(a(188));return t===e?e:null}for(var n=e,r=t;;){var o=n.return;if(o===null)break;var c=o.alternate;if(c===null){if(r=o.return,r!==null){n=r;continue}break}if(o.child===c.child){for(c=o.child;c;){if(c===n)return u(o),e;if(c===r)return u(o),t;c=c.sibling}throw Error(a(188))}if(n.return!==r.return)n=o,r=c;else{for(var l=!1,d=o.child;d;){if(d===n){l=!0,n=o,r=c;break}if(d===r){l=!0,r=o,n=c;break}d=d.sibling}if(!l){for(d=c.child;d;){if(d===n){l=!0,n=c,r=o;break}if(d===r){l=!0,r=c,n=o;break}d=d.sibling}if(!l)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(n.tag!==3)throw Error(a(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 h=Object.assign,_=Symbol.for(`react.element`),v=Symbol.for(`react.transitional.element`),y=Symbol.for(`react.portal`),b=Symbol.for(`react.fragment`),x=Symbol.for(`react.strict_mode`),S=Symbol.for(`react.profiler`),C=Symbol.for(`react.consumer`),w=Symbol.for(`react.context`),T=Symbol.for(`react.forward_ref`),E=Symbol.for(`react.suspense`),D=Symbol.for(`react.suspense_list`),ee=Symbol.for(`react.memo`),te=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),ne=Symbol.for(`react.memo_cache_sentinel`),re=Symbol.iterator;function ie(e){return typeof e!=`object`||!e?null:(e=re&&e[re]||e[`@@iterator`],typeof e==`function`?e:null)}var ae=Symbol.for(`react.client.reference`);function oe(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ae?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case b:return`Fragment`;case S:return`Profiler`;case x:return`StrictMode`;case E:return`Suspense`;case D:return`SuspenseList`;case O:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case y:return`Portal`;case w:return e.displayName||`Context`;case C:return(e._context.displayName||`Context`)+`.Consumer`;case T:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case ee:return t=e.displayName||null,t===null?oe(e.type)||`Memo`:t;case te:t=e._payload,e=e._init;try{return oe(e(t))}catch{}}return null}var se=Array.isArray,k=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,A=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ce={pending:!1,data:null,method:null,action:null},le=[],ue=-1;function de(e){return{current:e}}function j(e){0>ue||(e.current=le[ue],le[ue]=null,ue--)}function M(e,t){ue++,le[ue]=e.current,e.current=t}var fe=de(null),pe=de(null),me=de(null),he=de(null);function ge(e,t){switch(M(me,t),M(pe,e),M(fe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Jd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Jd(t),e=Yd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}j(fe),M(fe,e)}function _e(){j(fe),j(pe),j(me)}function N(e){e.memoizedState!==null&&M(he,e);var t=fe.current,n=Yd(t,e.type);t!==n&&(M(pe,e),M(fe,n))}function ve(e){pe.current===e&&(j(fe),j(pe)),he.current===e&&(j(he),ap._currentValue=ce)}var ye,be;function xe(e){if(ye===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ye=t&&t[1]||``,be=-1<e.stack.indexOf(`
|
|
3
3
|
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
4
4
|
`+ye+e+be}var Se=!1;function Ce(e,t){if(!e||Se)return``;Se=!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 a=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);a&&a.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var o=r.DetermineComponentFrameRoot(),s=o[0],c=o[1];if(s&&c){var l=s.split(`
|
|
@@ -71,7 +71,7 @@ Error generating stack: `+e.message+`
|
|
|
71
71
|
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let c=t.compile();return(t,n)=>c(e,t,n)},o,s=M,c=!te.jitless,l=c&&fe.value,u=t.catchall,d;e._zod.parse=(f,p)=>{d??=r.value;let m=f.value;return s(m)?c&&l&&p?.async===!1&&p.jitless!==!0?(o||=a(t.shape),f=o(f,p),u?zn([],m,f,p,d,e):f):n(f,p):(f.issues.push({expected:`object`,code:`invalid_type`,input:m,inst:e}),f)}});function Hn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let a=e.filter(e=>!De(e));return a.length===1?(t.value=a[0].value,a[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>je(e,r,O())))}),t)}var Un=E(`$ZodUnion`,(e,t)=>{Xt.init(e,t),A(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),A(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),A(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),A(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=>oe(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,a)=>{if(n)return n(r,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>Hn(t,r,e,a)):Hn(s,r,e,a)}}),Wn=E(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Un.init(e,t);let n=e._zod.parse;A(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=ie(()=>{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=(a,o)=>{let s=a.value;if(!M(s))return a.issues.push({code:`invalid_type`,expected:`object`,input:s,inst:e}),a;let c=r.value.get(s?.[t.discriminator]);return c?c._zod.run(a,o):t.unionFallback||o.direction===`backward`?n(a,o):(a.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:s,path:[t.discriminator],inst:e}),a)}}),Gn=E(`$ZodIntersection`,(e,t)=>{Xt.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,a=t.left._zod.run({value:r,issues:[]},n),o=t.right._zod.run({value:r,issues:[]},n);return a instanceof Promise||o instanceof Promise?Promise.all([a,o]).then(([t,n])=>qn(e,t,n)):qn(e,a,o)}});function Kn(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(pe(e)&&pe(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),a={...e,...t};for(let n of r){let r=Kn(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};a[n]=r.data}return{valid:!0,data:a}}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 a=e[r],o=t[r],s=Kn(a,o);if(!s.valid)return{valid:!1,mergeErrorPath:[r,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function qn(e,t,n){let r=new Map,a;for(let n of t.issues)if(n.code===`unrecognized_keys`){a??=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 o=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(o.length&&a&&e.issues.push({...a,keys:o}),De(e))return e;let s=Kn(t.value,n.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Jn=E(`$ZodTuple`,(e,t)=>{Xt.init(e,t);let n=t.items;e._zod.parse=(r,a)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({input:o,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let s=[],c=Yn(n,`optin`),l=Yn(n,`optout`);if(!t.rest){if(o.length<c)return r.issues.push({code:`too_small`,minimum:c,inclusive:!0,input:o,inst:e,origin:`array`}),r;o.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:o,inst:e,origin:`array`})}let u=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:o[e],issues:[]},a);t instanceof Promise?s.push(t.then(t=>{u[e]=t})):u[e]=t}if(t.rest){let e=n.length-1,c=o.slice(n.length);for(let n of c){e++;let o=t.rest._zod.run({value:n,issues:[]},a);o instanceof Promise?s.push(o.then(t=>Xn(t,r,e))):Xn(o,r,e)}}return s.length?Promise.all(s).then(()=>Zn(u,r,n,o,l)):Zn(u,r,n,o,l)}});function Yn(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function Xn(e,t,n){e.issues.length&&t.issues.push(...ke(n,e.issues)),t.value[n]=e.value}function Zn(e,t,n,r,a){for(let o=0;o<n.length;o++){let n=e[o],s=o<r.length;if(n.issues.length){if(!s&&o>=a){t.value.length=o;break}t.issues.push(...ke(o,n.issues))}t.value[o]=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 Qn=E(`$ZodRecord`,(e,t)=>{Xt.init(e,t),e._zod.parse=(n,r)=>{let a=n.value;if(!pe(a))return n.issues.push({expected:`record`,code:`invalid_type`,input:a,inst:e}),n;let o=[],s=t.keyType._zod.values;if(s){n.value={};let c=new Set;for(let l of s)if(typeof l==`string`||typeof l==`number`||typeof l==`symbol`){c.add(typeof l==`number`?l.toString():l);let s=t.keyType._zod.run({value:l,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>je(e,r,O())),input:l,path:[l],inst:e});continue}let u=s.value,d=t.valueType._zod.run({value:a[l],issues:[]},r);d instanceof Promise?o.push(d.then(e=>{e.issues.length&&n.issues.push(...ke(l,e.issues)),n.value[u]=e.value})):(d.issues.length&&n.issues.push(...ke(l,d.issues)),n.value[u]=d.value)}let l;for(let e in a)c.has(e)||(l??=[],l.push(e));l&&l.length>0&&n.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:l})}else{n.value={};for(let s of Reflect.ownKeys(a)){if(s===`__proto__`||!Object.prototype.propertyIsEnumerable.call(a,s))continue;let c=t.keyType._zod.run({value:s,issues:[]},r);if(c instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof s==`string`&&Et.test(s)&&c.issues.length){let e=t.keyType._zod.run({value:Number(s),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(c=e)}if(c.issues.length){t.mode===`loose`?n.value[s]=a[s]:n.issues.push({code:`invalid_key`,origin:`record`,issues:c.issues.map(e=>je(e,r,O())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:a[s],issues:[]},r);l instanceof Promise?o.push(l.then(e=>{e.issues.length&&n.issues.push(...ke(s,e.issues)),n.value[c.value]=e.value})):(l.issues.length&&n.issues.push(...ke(s,l.issues)),n.value[c.value]=l.value)}}return o.length?Promise.all(o).then(()=>n):n}}),$n=E(`$ZodEnum`,(e,t)=>{Xt.init(e,t);let n=ne(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>he.has(typeof e)).map(e=>typeof e==`string`?ge(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,a)=>{let o=t.value;return r.has(o)||t.issues.push({code:`invalid_value`,values:n,input:o,inst:e}),t}}),er=E(`$ZodLiteral`,(e,t)=>{if(Xt.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`?ge(e):e?ge(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,a)=>{let o=r.value;return n.has(o)||r.issues.push({code:`invalid_value`,values:t.values,input:o,inst:e}),r}}),tr=E(`$ZodTransform`,(e,t)=>{Xt.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ee(e.constructor.name);let a=t.transform(n.value,n);if(r.async)return(a instanceof Promise?a:Promise.resolve(a)).then(e=>(n.value=e,n.fallback=!0,n));if(a instanceof Promise)throw new D;return n.value=a,n.fallback=!0,n}});function nr(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var rr=E(`$ZodOptional`,(e,t)=>{Xt.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,A(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${oe(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,a=t.innerType._zod.run(e,n);return a instanceof Promise?a.then(e=>nr(e,r)):nr(a,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),ir=E(`$ZodExactOptional`,(e,t)=>{rr.init(e,t),A(e._zod,`values`,()=>t.innerType._zod.values),A(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),ar=E(`$ZodNullable`,(e,t)=>{Xt.init(e,t),A(e._zod,`optin`,()=>t.innerType._zod.optin),A(e._zod,`optout`,()=>t.innerType._zod.optout),A(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${oe(e.source)}|null)$`):void 0}),A(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)}),or=E(`$ZodDefault`,(e,t)=>{Xt.init(e,t),e._zod.optin=`optional`,A(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=>sr(e,t)):sr(r,t)}});function sr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var cr=E(`$ZodPrefault`,(e,t)=>{Xt.init(e,t),e._zod.optin=`optional`,A(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))}),lr=E(`$ZodNonOptional`,(e,t)=>{Xt.init(e,t),A(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 a=t.innerType._zod.run(n,r);return a instanceof Promise?a.then(t=>ur(t,e)):ur(a,e)}});function ur(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 dr=E(`$ZodCatch`,(e,t)=>{Xt.init(e,t),e._zod.optin=`optional`,A(e._zod,`optout`,()=>t.innerType._zod.optout),A(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=>je(e,n,O()))},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=>je(e,n,O()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),fr=E(`$ZodPipe`,(e,t)=>{Xt.init(e,t),A(e._zod,`values`,()=>t.in._zod.values),A(e._zod,`optin`,()=>t.in._zod.optin),A(e._zod,`optout`,()=>t.out._zod.optout),A(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=>pr(e,t.in,n)):pr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>pr(e,t.out,n)):pr(r,t.out,n)}});function pr(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 mr=E(`$ZodReadonly`,(e,t)=>{Xt.init(e,t),A(e._zod,`propValues`,()=>t.innerType._zod.propValues),A(e._zod,`values`,()=>t.innerType._zod.values),A(e._zod,`optin`,()=>t.innerType?._zod?.optin),A(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(hr):hr(r)}});function hr(e){return e.value=Object.freeze(e.value),e}var gr=E(`$ZodLazy`,(e,t)=>{Xt.init(e,t),A(e._zod,`innerType`,()=>{let e=t;return e._cachedInner||=t.getter(),e._cachedInner}),A(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),A(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),A(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),A(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),_r=E(`$ZodCustom`,(e,t)=>{jt.init(e,t),Xt.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,a=t.fn(r);if(a instanceof Promise)return a.then(t=>vr(t,n,r,e));vr(a,n,r,e)}});function vr(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(Ne(e))}}var yr,br=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 xr(){return new br}(yr=globalThis).__zod_globalRegistry??(yr.__zod_globalRegistry=xr());var Sr=globalThis.__zod_globalRegistry;function Cr(e,t){return new e({type:`string`,...N(t)})}function wr(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...N(t)})}function Tr(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...N(t)})}function Er(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...N(t)})}function Dr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...N(t)})}function Or(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...N(t)})}function kr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...N(t)})}function Ar(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...N(t)})}function jr(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...N(t)})}function Mr(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...N(t)})}function Nr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...N(t)})}function Pr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...N(t)})}function Fr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...N(t)})}function Ir(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...N(t)})}function Lr(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...N(t)})}function Rr(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...N(t)})}function zr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...N(t)})}function Br(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...N(t)})}function Vr(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...N(t)})}function Hr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...N(t)})}function Ur(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...N(t)})}function Wr(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...N(t)})}function Gr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...N(t)})}function Kr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...N(t)})}function qr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...N(t)})}function Jr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...N(t)})}function Yr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...N(t)})}function Xr(e,t){return new e({type:`number`,checks:[],...N(t)})}function Zr(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...N(t)})}function Qr(e,t){return new e({type:`boolean`,...N(t)})}function $r(e,t){return new e({type:`null`,...N(t)})}function ei(e){return new e({type:`any`})}function ti(e){return new e({type:`unknown`})}function ni(e,t){return new e({type:`never`,...N(t)})}function ri(e,t){return new e({type:`void`,...N(t)})}function ii(e,t){return new e({type:`date`,...N(t)})}function ai(e,t){return new Nt({check:`less_than`,...N(t),value:e,inclusive:!1})}function oi(e,t){return new Nt({check:`less_than`,...N(t),value:e,inclusive:!0})}function si(e,t){return new Pt({check:`greater_than`,...N(t),value:e,inclusive:!1})}function ci(e,t){return new Pt({check:`greater_than`,...N(t),value:e,inclusive:!0})}function li(e,t){return new Ft({check:`multiple_of`,...N(t),value:e})}function ui(e,t){return new Lt({check:`max_length`,...N(t),maximum:e})}function di(e,t){return new Rt({check:`min_length`,...N(t),minimum:e})}function fi(e,t){return new zt({check:`length_equals`,...N(t),length:e})}function pi(e,t){return new Vt({check:`string_format`,format:`regex`,...N(t),pattern:e})}function mi(e){return new Ht({check:`string_format`,format:`lowercase`,...N(e)})}function hi(e){return new Ut({check:`string_format`,format:`uppercase`,...N(e)})}function gi(e,t){return new Wt({check:`string_format`,format:`includes`,...N(t),includes:e})}function _i(e,t){return new Gt({check:`string_format`,format:`starts_with`,...N(t),prefix:e})}function vi(e,t){return new Kt({check:`string_format`,format:`ends_with`,...N(t),suffix:e})}function yi(e){return new qt({check:`overwrite`,tx:e})}function bi(e){return yi(t=>t.normalize(e))}function xi(){return yi(e=>e.trim())}function Si(){return yi(e=>e.toLowerCase())}function Ci(){return yi(e=>e.toUpperCase())}function wi(){return yi(e=>de(e))}function Ti(e,t,n){return new e({type:`array`,element:t,...N(n)})}function Ei(e,t,n){let r=N(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function Di(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...N(n)})}function Oi(e,t){let n=ki(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(Ne(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(Ne(r))}},e(t.value,t)),t);return n}function ki(e,t){let n=new jt({check:`custom`,...N(t)});return n._zod.check=e,n}function Ai(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??Sr,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 ji(e,t,n={path:[],schemaPath:[]}){var r;let a=e._zod.def,o=t.seen.get(e);if(o)return o.count++,n.schemaPath.includes(e)&&(o.cycle=n.path),o.schema;let s={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,s);let c=e._zod.toJSONSchema?.();if(c)s.schema=c;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,r);else{let n=s.schema,o=t.processors[a.type];if(!o)throw Error(`[toJSONSchema]: Non-representable type encountered: ${a.type}`);o(e,t,n,r)}let o=e._zod.parent;o&&(s.ref||=o,ji(o,t,r),t.seen.get(o).isParent=!0)}let l=t.metadataRegistry.get(e);return l&&Object.assign(s.schema,l),t.io===`input`&&Pi(e)&&(delete s.schema.examples,delete s.schema.default),t.io===`input`&&`_prefault`in s.schema&&((r=s.schema).default??(r.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function Mi(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 a=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,a=e.external.uri??(e=>e);if(n)return{ref:a(n)};let o=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=o,{defId:o,ref:`${a(`__shared`)}#/${r}/${o}`}}if(t[1]===n)return{ref:`#`};let a=`#/${r}/`,o=t[1].schema.id??`__schema${e.counter++}`;return{defId:o,ref:a+o}},o=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=a(e);t.def={...t.schema},r&&(t.defId=r);let o=t.schema;for(let e in o)delete o[e];o.$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>
|
|
72
72
|
|
|
73
73
|
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]){o(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){o(n);continue}}if(e.metadataRegistry.get(n[0])?.id){o(n);continue}if(r.cycle){o(n);continue}if(r.count>1&&e.reused===`ref`){o(n);continue}}}function Ni(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 a=n.def??n.schema,o={...a},s=n.ref;if(n.ref=null,s){r(s);let n=e.seen.get(s),c=n.schema;if(c.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(a.allOf=a.allOf??[],a.allOf.push(c)):Object.assign(a,c),Object.assign(a,o),t._zod.parent===s)for(let e in a)e===`$ref`||e===`allOf`||e in o||delete a[e];if(c.$ref&&n.def)for(let e in a)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(a[e])===JSON.stringify(n.def[e])&&delete a[e]}let c=t._zod.parent;if(c&&c!==s){r(c);let t=e.seen.get(c);if(t?.schema.$ref&&(a.$ref=t.schema.$ref,t.def))for(let e in a)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(a[e])===JSON.stringify(t.def[e])&&delete a[e]}e.override({zodSchema:t,jsonSchema:a,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let a={};if(e.target===`draft-2020-12`?a.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?a.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?a.$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");a.$id=e.external.uri(n)}Object.assign(a,n.def??n.schema);let o=e.metadataRegistry.get(t)?.id;o!==void 0&&a.id===o&&delete a.id;let s=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,s[e.defId]=e.def)}e.external||Object.keys(s).length>0&&(e.target===`draft-2020-12`?a.$defs=s:a.definitions=s);try{let n=JSON.parse(JSON.stringify(a));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Ii(t,`input`,e.processors),output:Ii(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function Pi(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 Pi(r.element,n);if(r.type===`set`)return Pi(r.valueType,n);if(r.type===`lazy`)return Pi(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 Pi(r.innerType,n);if(r.type===`intersection`)return Pi(r.left,n)||Pi(r.right,n);if(r.type===`record`||r.type===`map`)return Pi(r.keyType,n)||Pi(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:Pi(r.in,n)||Pi(r.out,n);if(r.type===`object`){for(let e in r.shape)if(Pi(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(Pi(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(Pi(e,n))return!0;return!!(r.rest&&Pi(r.rest,n))}return!1}var Fi=(e,t={})=>n=>{let r=Ai({...n,processors:t});return ji(e,r),Mi(r,e),Ni(r,e)},Ii=(e,t,n={})=>r=>{let{libraryOptions:a,target:o}=r??{},s=Ai({...a??{},target:o,io:t,processors:n});return ji(e,s),Mi(s,e),Ni(s,e)},Li={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Ri=(e,t,n,r)=>{let a=n;a.type=`string`;let{minimum:o,maximum:s,format:c,patterns:l,contentEncoding:u}=e._zod.bag;if(typeof o==`number`&&(a.minLength=o),typeof s==`number`&&(a.maxLength=s),c&&(a.format=Li[c]??c,a.format===``&&delete a.format,c===`time`&&delete a.format),u&&(a.contentEncoding=u),l&&l.size>0){let e=[...l];e.length===1?a.pattern=e[0].source:e.length>1&&(a.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},zi=(e,t,n,r)=>{let a=n,{minimum:o,maximum:s,format:c,multipleOf:l,exclusiveMaximum:u,exclusiveMinimum:d}=e._zod.bag;typeof c==`string`&&c.includes(`int`)?a.type=`integer`:a.type=`number`;let f=typeof d==`number`&&d>=(o??-1/0),p=typeof u==`number`&&u<=(s??1/0),m=t.target===`draft-04`||t.target===`openapi-3.0`;f?m?(a.minimum=d,a.exclusiveMinimum=!0):a.exclusiveMinimum=d:typeof o==`number`&&(a.minimum=o),p?m?(a.maximum=u,a.exclusiveMaximum=!0):a.exclusiveMaximum=u:typeof s==`number`&&(a.maximum=s),typeof l==`number`&&(a.multipleOf=l)},Bi=(e,t,n,r)=>{n.type=`boolean`},Vi=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},Hi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`)},Ui=(e,t,n,r)=>{n.not={}},Wi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},Gi=(e,t,n,r)=>{let a=e._zod.def,o=ne(a.entries);o.every(e=>typeof e==`number`)&&(n.type=`number`),o.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=o},Ki=(e,t,n,r)=>{let a=e._zod.def,o=[];for(let e of a.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`);o.push(Number(e))}else o.push(e);if(o.length!==0)if(o.length===1){let e=o[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else o.every(e=>typeof e==`number`)&&(n.type=`number`),o.every(e=>typeof e==`string`)&&(n.type=`string`),o.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),o.every(e=>e===null)&&(n.type=`null`),n.enum=o},qi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Ji=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Yi=(e,t,n,r)=>{let a=n,o=e._zod.def,{minimum:s,maximum:c}=e._zod.bag;typeof s==`number`&&(a.minItems=s),typeof c==`number`&&(a.maxItems=c),a.type=`array`,a.items=ji(o.element,t,{...r,path:[...r.path,`items`]})},Xi=(e,t,n,r)=>{let a=n,o=e._zod.def;a.type=`object`,a.properties={};let s=o.shape;for(let e in s)a.properties[e]=ji(s[e],t,{...r,path:[...r.path,`properties`,e]});let c=new Set(Object.keys(s)),l=new Set([...c].filter(e=>{let n=o.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));l.size>0&&(a.required=Array.from(l)),o.catchall?._zod.def.type===`never`?a.additionalProperties=!1:o.catchall?o.catchall&&(a.additionalProperties=ji(o.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(a.additionalProperties=!1)},Zi=(e,t,n,r)=>{let a=e._zod.def,o=a.inclusive===!1,s=a.options.map((e,n)=>ji(e,t,{...r,path:[...r.path,o?`oneOf`:`anyOf`,n]}));o?n.oneOf=s:n.anyOf=s},Qi=(e,t,n,r)=>{let a=e._zod.def,o=ji(a.left,t,{...r,path:[...r.path,`allOf`,0]}),s=ji(a.right,t,{...r,path:[...r.path,`allOf`,1]}),c=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...c(o)?o.allOf:[o],...c(s)?s.allOf:[s]]},$i=(e,t,n,r)=>{let a=n,o=e._zod.def;a.type=`array`;let s=t.target===`draft-2020-12`?`prefixItems`:`items`,c=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,l=o.items.map((e,n)=>ji(e,t,{...r,path:[...r.path,s,n]})),u=o.rest?ji(o.rest,t,{...r,path:[...r.path,c,...t.target===`openapi-3.0`?[o.items.length]:[]]}):null;t.target===`draft-2020-12`?(a.prefixItems=l,u&&(a.items=u)):t.target===`openapi-3.0`?(a.items={anyOf:l},u&&a.items.anyOf.push(u),a.minItems=l.length,u||(a.maxItems=l.length)):(a.items=l,u&&(a.additionalItems=u));let{minimum:d,maximum:f}=e._zod.bag;typeof d==`number`&&(a.minItems=d),typeof f==`number`&&(a.maxItems=f)},ea=(e,t,n,r)=>{let a=n,o=e._zod.def;a.type=`object`;let s=o.keyType,c=s._zod.bag?.patterns;if(o.mode===`loose`&&c&&c.size>0){let e=ji(o.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});a.patternProperties={};for(let t of c)a.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(a.propertyNames=ji(o.keyType,t,{...r,path:[...r.path,`propertyNames`]})),a.additionalProperties=ji(o.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let l=s._zod.values;if(l){let e=[...l].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(a.required=e)}},ta=(e,t,n,r)=>{let a=e._zod.def,o=ji(a.innerType,t,r),s=t.seen.get(e);t.target===`openapi-3.0`?(s.ref=a.innerType,n.nullable=!0):n.anyOf=[o,{type:`null`}]},na=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType},ra=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType,n.default=JSON.parse(JSON.stringify(a.defaultValue))},ia=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(a.defaultValue)))},aa=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType;let s;try{s=a.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=s},oa=(e,t,n,r)=>{let a=e._zod.def,o=a.in._zod.traits.has(`$ZodTransform`),s=t.io===`input`?o?a.out:a.in:a.out;ji(s,t,r);let c=t.seen.get(e);c.ref=s},sa=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType,n.readOnly=!0},ca=(e,t,n,r)=>{let a=e._zod.def;ji(a.innerType,t,r);let o=t.seen.get(e);o.ref=a.innerType},la=(e,t,n,r)=>{let a=e._zod.innerType;ji(a,t,r);let o=t.seen.get(e);o.ref=a},ua=E(`ZodISODateTime`,(e,t)=>{dn.init(e,t),Ia.init(e,t)});function da(e){return Kr(ua,e)}var fa=E(`ZodISODate`,(e,t)=>{fn.init(e,t),Ia.init(e,t)});function pa(e){return qr(fa,e)}var ma=E(`ZodISOTime`,(e,t)=>{pn.init(e,t),Ia.init(e,t)});function ha(e){return Jr(ma,e)}var ga=E(`ZodISODuration`,(e,t)=>{mn.init(e,t),Ia.init(e,t)});function _a(e){return Yr(ga,e)}var va=E(`ZodError`,(e,t)=>{Fe.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Re(e,t)},flatten:{value:t=>Le(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,re,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,re,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),ya=ze(va),ba=Be(va),xa=Ve(va),Sa=Ue(va),Ca=Ge(va),wa=Ke(va),Ta=qe(va),Ea=Je(va),Da=Ye(va),Oa=Xe(va),ka=Ze(va),Aa=Qe(va),ja=new WeakMap;function Ma(e,t,n){let r=Object.getPrototypeOf(e),a=ja.get(r);if(a||(a=new Set,ja.set(r,a)),!a.has(t)){a.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 Na=E(`ZodType`,(e,t)=>(Xt.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Ii(e,`input`),output:Ii(e,`output`)}}),e.toJSONSchema=Fi(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>ya(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>xa(e,t,n),e.parseAsync=async(t,n)=>ba(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Sa(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Ca(e,t,n),e.decode=(t,n)=>wa(e,t,n),e.encodeAsync=async(t,n)=>Ta(e,t,n),e.decodeAsync=async(t,n)=>Ea(e,t,n),e.safeEncode=(t,n)=>Da(e,t,n),e.safeDecode=(t,n)=>Oa(e,t,n),e.safeEncodeAsync=async(t,n)=>ka(e,t,n),e.safeDecodeAsync=async(t,n)=>Aa(e,t,n),Ma(e,`ZodType`,{check(...e){let t=this.def;return this.clone(le(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 _e(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(is(e,t))},superRefine(e,t){return this.check(as(e,t))},overwrite(e){return this.check(yi(e))},optional(){return Lo(this)},exactOptional(){return zo(this)},nullable(){return Vo(this)},nullish(){return Lo(Vo(this))},nonoptional(e){return qo(this,e)},array(){return z(this)},or(e){return Co([this,e])},and(e){return Do(this,e)},transform(e){return Zo(this,Fo(e))},default(e){return Uo(this,e)},prefault(e){return Go(this,e)},catch(e){return Yo(this,e)},pipe(e){return Zo(this,e)},readonly(){return $o(this)},describe(e){let t=this.clone();return Sr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Sr.get(this);let t=this.clone();return Sr.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 Sr.get(e)?.description},configurable:!0}),e)),Pa=E(`_ZodString`,(e,t)=>{Zt.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Ma(e,`_ZodString`,{regex(...e){return this.check(pi(...e))},includes(...e){return this.check(gi(...e))},startsWith(...e){return this.check(_i(...e))},endsWith(...e){return this.check(vi(...e))},min(...e){return this.check(di(...e))},max(...e){return this.check(ui(...e))},length(...e){return this.check(fi(...e))},nonempty(...e){return this.check(di(1,...e))},lowercase(e){return this.check(mi(e))},uppercase(e){return this.check(hi(e))},trim(){return this.check(xi())},normalize(...e){return this.check(bi(...e))},toLowerCase(){return this.check(Si())},toUpperCase(){return this.check(Ci())},slugify(){return this.check(wi())}})}),Fa=E(`ZodString`,(e,t)=>{Zt.init(e,t),Pa.init(e,t),e.email=t=>e.check(wr(La,t)),e.url=t=>e.check(Ar(Va,t)),e.jwt=t=>e.check(Gr(ro,t)),e.emoji=t=>e.check(jr(Ua,t)),e.guid=t=>e.check(Tr(za,t)),e.uuid=t=>e.check(Er(Ba,t)),e.uuidv4=t=>e.check(Dr(Ba,t)),e.uuidv6=t=>e.check(Or(Ba,t)),e.uuidv7=t=>e.check(kr(Ba,t)),e.nanoid=t=>e.check(Mr(Wa,t)),e.guid=t=>e.check(Tr(za,t)),e.cuid=t=>e.check(Nr(Ga,t)),e.cuid2=t=>e.check(Pr(Ka,t)),e.ulid=t=>e.check(Fr(qa,t)),e.base64=t=>e.check(Hr(eo,t)),e.base64url=t=>e.check(Ur(to,t)),e.xid=t=>e.check(Ir(Ja,t)),e.ksuid=t=>e.check(Lr(Ya,t)),e.ipv4=t=>e.check(Rr(Xa,t)),e.ipv6=t=>e.check(zr(Za,t)),e.cidrv4=t=>e.check(Br(Qa,t)),e.cidrv6=t=>e.check(Vr($a,t)),e.e164=t=>e.check(Wr(no,t)),e.datetime=t=>e.check(da(t)),e.date=t=>e.check(pa(t)),e.time=t=>e.check(ha(t)),e.duration=t=>e.check(_a(t))});function P(e){return Cr(Fa,e)}var Ia=E(`ZodStringFormat`,(e,t)=>{Qt.init(e,t),Pa.init(e,t)}),La=E(`ZodEmail`,(e,t)=>{tn.init(e,t),Ia.init(e,t)});function Ra(e){return wr(La,e)}var za=E(`ZodGUID`,(e,t)=>{$t.init(e,t),Ia.init(e,t)}),Ba=E(`ZodUUID`,(e,t)=>{en.init(e,t),Ia.init(e,t)}),Va=E(`ZodURL`,(e,t)=>{nn.init(e,t),Ia.init(e,t)});function Ha(e){return Ar(Va,e)}var Ua=E(`ZodEmoji`,(e,t)=>{rn.init(e,t),Ia.init(e,t)}),Wa=E(`ZodNanoID`,(e,t)=>{an.init(e,t),Ia.init(e,t)}),Ga=E(`ZodCUID`,(e,t)=>{on.init(e,t),Ia.init(e,t)}),Ka=E(`ZodCUID2`,(e,t)=>{sn.init(e,t),Ia.init(e,t)}),qa=E(`ZodULID`,(e,t)=>{cn.init(e,t),Ia.init(e,t)}),Ja=E(`ZodXID`,(e,t)=>{ln.init(e,t),Ia.init(e,t)}),Ya=E(`ZodKSUID`,(e,t)=>{un.init(e,t),Ia.init(e,t)}),Xa=E(`ZodIPv4`,(e,t)=>{hn.init(e,t),Ia.init(e,t)}),Za=E(`ZodIPv6`,(e,t)=>{gn.init(e,t),Ia.init(e,t)}),Qa=E(`ZodCIDRv4`,(e,t)=>{_n.init(e,t),Ia.init(e,t)}),$a=E(`ZodCIDRv6`,(e,t)=>{vn.init(e,t),Ia.init(e,t)}),eo=E(`ZodBase64`,(e,t)=>{bn.init(e,t),Ia.init(e,t)}),to=E(`ZodBase64URL`,(e,t)=>{Sn.init(e,t),Ia.init(e,t)}),no=E(`ZodE164`,(e,t)=>{Cn.init(e,t),Ia.init(e,t)}),ro=E(`ZodJWT`,(e,t)=>{Tn.init(e,t),Ia.init(e,t)}),io=E(`ZodNumber`,(e,t)=>{En.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),Ma(e,`ZodNumber`,{gt(e,t){return this.check(si(e,t))},gte(e,t){return this.check(ci(e,t))},min(e,t){return this.check(ci(e,t))},lt(e,t){return this.check(ai(e,t))},lte(e,t){return this.check(oi(e,t))},max(e,t){return this.check(oi(e,t))},int(e){return this.check(oo(e))},safe(e){return this.check(oo(e))},positive(e){return this.check(si(0,e))},nonnegative(e){return this.check(ci(0,e))},negative(e){return this.check(ai(0,e))},nonpositive(e){return this.check(oi(0,e))},multipleOf(e,t){return this.check(li(e,t))},step(e,t){return this.check(li(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 F(e){return Xr(io,e)}var ao=E(`ZodNumberFormat`,(e,t)=>{Dn.init(e,t),io.init(e,t)});function oo(e){return Zr(ao,e)}var so=E(`ZodBoolean`,(e,t)=>{On.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r)});function I(e){return Qr(so,e)}var co=E(`ZodNull`,(e,t)=>{kn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r)});function lo(e){return $r(co,e)}var uo=E(`ZodAny`,(e,t)=>{An.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function fo(){return ei(uo)}var po=E(`ZodUnknown`,(e,t)=>{jn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function L(){return ti(po)}var mo=E(`ZodNever`,(e,t)=>{Mn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r)});function ho(e){return ni(mo,e)}var go=E(`ZodVoid`,(e,t)=>{Nn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r)});function R(e){return ri(go,e)}var _o=E(`ZodDate`,(e,t)=>{Pn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.min=(t,n)=>e.check(ci(t,n)),e.max=(t,n)=>e.check(oi(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 vo(e){return ii(_o,e)}var yo=E(`ZodArray`,(e,t)=>{In.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.element=t.element,Ma(e,`ZodArray`,{min(e,t){return this.check(di(e,t))},nonempty(e){return this.check(di(1,e))},max(e,t){return this.check(ui(e,t))},length(e,t){return this.check(fi(e,t))},unwrap(){return this.element}})});function z(e,t){return Ti(yo,e,t)}var bo=E(`ZodObject`,(e,t)=>{Vn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xi(e,t,n,r),A(e,`shape`,()=>t.shape),Ma(e,`ZodObject`,{keyof(){return H(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:L()})},loose(){return this.clone({...this._zod.def,catchall:L()})},strict(){return this.clone({...this._zod.def,catchall:ho()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return Se(this,e)},safeExtend(e){return Ce(this,e)},merge(e){return we(this,e)},pick(e){return be(this,e)},omit(e){return xe(this,e)},partial(...e){return Te(Io,this,e[0])},required(...e){return Ee(Ko,this,e[0])}})});function B(e,t){return new bo({type:`object`,shape:e??{},...N(t)})}function xo(e,t){return new bo({type:`object`,shape:e,catchall:L(),...N(t)})}var So=E(`ZodUnion`,(e,t)=>{Un.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Zi(e,t,n,r),e.options=t.options});function Co(e,t){return new So({type:`union`,options:e,...N(t)})}var wo=E(`ZodDiscriminatedUnion`,(e,t)=>{So.init(e,t),Wn.init(e,t)});function To(e,t,n){return new wo({type:`union`,options:t,discriminator:e,...N(n)})}var Eo=E(`ZodIntersection`,(e,t)=>{Gn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qi(e,t,n,r)});function Do(e,t){return new Eo({type:`intersection`,left:e,right:t})}var Oo=E(`ZodTuple`,(e,t)=>{Jn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$i(e,t,n,r),e.rest=t=>e.clone({...e._zod.def,rest:t})});function ko(e,t,n){let r=t instanceof Xt;return new Oo({type:`tuple`,items:e,rest:r?t:null,...N(r?n:t)})}var Ao=E(`ZodRecord`,(e,t)=>{Qn.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ea(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function V(e,t,n){return!t||!t._zod?new Ao({type:`record`,keyType:P(),valueType:e,...N(t)}):new Ao({type:`record`,keyType:e,valueType:t,...N(n)})}function jo(e,t,n){let r=_e(e);return r._zod.values=void 0,new Ao({type:`record`,keyType:r,valueType:t,...N(n)})}var Mo=E(`ZodEnum`,(e,t)=>{$n.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(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 a={};for(let r of e)if(n.has(r))a[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Mo({...t,checks:[],...N(r),entries:a})},e.exclude=(e,r)=>{let a={...t.entries};for(let t of e)if(n.has(t))delete a[t];else throw Error(`Key ${t} not found in enum`);return new Mo({...t,checks:[],...N(r),entries:a})}});function H(e,t){return new Mo({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...N(t)})}var No=E(`ZodLiteral`,(e,t)=>{er.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(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 U(e,t){return new No({type:`literal`,values:Array.isArray(e)?e:[e],...N(t)})}var Po=E(`ZodTransform`,(e,t)=>{tr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ee(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Ne(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(Ne(t))}};let a=t.transform(n.value,n);return a instanceof Promise?a.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=a,n.fallback=!0,n)}});function Fo(e){return new Po({type:`transform`,transform:e})}var Io=E(`ZodOptional`,(e,t)=>{rr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ca(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Lo(e){return new Io({type:`optional`,innerType:e})}var Ro=E(`ZodExactOptional`,(e,t)=>{ir.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ca(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function zo(e){return new Ro({type:`optional`,innerType:e})}var Bo=E(`ZodNullable`,(e,t)=>{ar.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ta(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Vo(e){return new Bo({type:`nullable`,innerType:e})}var Ho=E(`ZodDefault`,(e,t)=>{or.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ra(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Uo(e,t){return new Ho({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():me(t)}})}var Wo=E(`ZodPrefault`,(e,t)=>{cr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ia(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Go(e,t){return new Wo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():me(t)}})}var Ko=E(`ZodNonOptional`,(e,t)=>{lr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>na(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function qo(e,t){return new Ko({type:`nonoptional`,innerType:e,...N(t)})}var Jo=E(`ZodCatch`,(e,t)=>{dr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>aa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Yo(e,t){return new Jo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Xo=E(`ZodPipe`,(e,t)=>{fr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oa(e,t,n,r),e.in=t.in,e.out=t.out});function Zo(e,t){return new Xo({type:`pipe`,in:e,out:t})}var Qo=E(`ZodReadonly`,(e,t)=>{mr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>sa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function $o(e){return new Qo({type:`readonly`,innerType:e})}var es=E(`ZodLazy`,(e,t)=>{gr.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>la(e,t,n,r),e.unwrap=()=>e._zod.def.getter()});function ts(e){return new es({type:`lazy`,getter:e})}var ns=E(`ZodCustom`,(e,t)=>{_r.init(e,t),Na.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r)});function rs(e,t){return Ei(ns,e??(()=>!0),t)}function is(e,t={}){return Di(ns,e,t)}function as(e,t){return Oi(e,t)}function os(e,t={}){let n=new ns({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...N(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}var ss={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`},cs;cs||={};var ls=`modulepreload`,us=function(e,t){return new URL(e,t).href},ds={},fs=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),a=document.querySelector(`meta[property=csp-nonce]`),o=a?.nonce||a?.getAttribute(`nonce`);function s(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=s(t.map(t=>{if(t=us(t,n),t in ds)return;ds[t]=!0;let r=t.endsWith(`.css`),a=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let a=e[n];if(a.href===t&&(!r||a.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${a}`))return;let s=document.createElement(`link`);if(s.rel=r?`stylesheet`:ls,r||(s.as=`script`),s.crossOrigin=``,s.href=t,o&&s.setAttribute(`nonce`,o),document.head.appendChild(s),r)return new Promise((e,n)=>{s.addEventListener(`load`,e),s.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function a(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`&&a(e.reason);return e().catch(a)})};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:`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 ps=H([`high`,`mid`,`low`]),ms=H([`pull-rtsp`,`pull-rtmp`,`pull-http`,`pull-flv`,`pull-rfc4571`,`push-annexb`,`derived`]),hs=B({width:F().int().positive(),height:F().int().positive()}),gs=B({camStreamId:P().min(1),deviceId:F().int().nonnegative(),kind:ms,url:P().optional(),codec:P().optional(),resolution:hs.optional(),fps:F().positive().optional(),label:P().optional(),deviceFeatures:z(P()).optional(),autoEligible:I().optional(),metadata:V(P(),L()).optional()}),_s=H([`unassigned`,`idle`,`connecting`,`streaming`,`error`]),vs=B({deviceId:F().int().nonnegative(),profile:ps,brokerId:P(),sourceCamStreamId:P().nullable(),status:_s,resolution:hs.optional(),codec:P().optional(),preBufferSec:F().nonnegative().optional(),errorMessage:P().optional()}),ys=B({id:P(),label:P(),protocol:H([`rtsp`,`rtmp`,`annexb`,`http-mjpeg`,`webrtc`,`custom`]),url:P().optional(),resolution:B({width:F(),height:F()}).readonly().optional(),fps:F().optional(),bitrate:F().optional(),codec:P().optional(),profileHint:ps.optional()});B({type:P(),url:P(),videoCodec:P().optional(),audioCodec:P().optional(),metadata:V(P(),L()).readonly().optional()});var bs=B({type:H([`video`,`audio`]),data:os(Uint8Array),pts:F(),dts:F(),keyframe:I(),codec:P()}),xs=B({data:os(Uint8Array),width:F(),height:F(),format:H([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),timestamp:F()}),Ss=B({shmId:P(),slot:F().int().nonnegative(),seq:F().int().nonnegative(),width:F().int().positive(),height:F().int().positive(),format:H([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),pts:F(),byteLength:F().int().nonnegative(),nodeId:P(),slotCount:F().int().positive()}),Cs=H([`rgb`,`bgr`,`yuv420`,`gray`]),ws=B({brokerId:P(),format:Cs,maxFps:F().positive().optional(),tag:P().optional()}),Ts=B({subscriptionId:P(),maxFps:F().nonnegative()}),Es=B({data:os(Uint8Array),sampleRate:F().int().positive(),channels:F().int().positive(),timestamp:F()}),Ds=B({brokerId:P(),tag:P().optional()}),Os=B({subscriptionId:P()}),ks=B({status:H([`idle`,`connecting`,`streaming`,`error`,`stopped`]),inputFps:F(),decodeFps:F(),encodedSubscribers:F(),decodedSubscribers:F(),uptimeMs:F(),bitrateKbps:F(),idrIntervalMs:F(),codec:P().optional(),totalBytes:F(),packetCount:F(),rtspClients:F(),pipeClients:F(),preBufferSec:F(),preBufferMs:F(),preBufferPackets:F(),decoderNodeId:P().nullable(),audio:B({codec:P(),sampleRate:F(),channels:F(),supported:I()}).nullable().optional()}),As=B({profile:ps,brokerId:P(),url:P(),mutedUrl:P(),enabled:I(),codec:P().optional(),resolution:hs.optional()}),W=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}({}),js=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}({}),G=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}({}),Ms=B({id:P(),title:P(),description:P().optional(),style:H([`card`,`accordion`]).optional(),defaultCollapsed:I().optional(),columns:Co([U(1),U(2),U(3),U(4)]).optional(),tab:P().optional(),location:H([`settings`,`top-tab`]).optional(),order:F().optional(),fields:z(fo())});B({tabs:z(B({id:P(),label:P(),icon:P(),order:F().optional()})).optional(),sections:z(Ms)}).nullable(),B({deviceId:F()}),B({deviceId:F()}),B({deviceId:F(),patch:V(P(),L())}),B({success:U(!0)}),B({deviceId:F()}),L().nullable();function K(e,t,n){return{input:e,output:t,kind:n?.kind??`query`,auth:n?.auth??`protected`,...n?.access===void 0?{}:{access:n.access},timeoutMs:n?.timeoutMs}}function Ns(e,t,n){return{...K(e,t,n),systemOnly:!0}}function Ps(e){return{data:e}}var Fs=`device.state-changed`;function Is(e){let t=new Map,n=new Map,r=null,a=(e,t)=>`${e}:${t}`,o=()=>{r||e.live?.onEvent&&(r=e.live.onEvent.subscribe({category:Fs},{onData:e=>{let r=e.data;if(!r||typeof r.deviceId!=`number`||typeof r.capName!=`string`)return;let o=a(r.deviceId,r.capName);t.set(o,r.slice);let s=n.get(o);if(s)for(let e of s)try{e(r.slice)}catch{}}}))},s=()=>{r&&(n.size>0||(r.unsubscribe(),r=null))};return{read(e,n){return t.get(a(e,n))},async refresh(r,o){let s=await e.deviceState.getCapSlice.query({deviceId:r,capName:o}),c=a(r,o);t.set(c,s??void 0);let l=n.get(c);if(l)for(let e of l)try{e(s??void 0)}catch{}},watch(e,t,r){let c=a(e,t),l=n.get(c);return l||(l=new Set,n.set(c,l)),l.add(r),o(),()=>{l.delete(r),l.size===0&&n.delete(c),s()}},async write(t,n,r){await e.deviceState.setCapSlice.mutate({deviceId:t,capName:n,slice:r})}}}function Ls(e,t,n){let r=(e,t)=>`${e}:${t}`;return{read(t,n){return e.get(t)?.get(n)},async refresh(){},watch(e,n,a){let o=r(e,n),s=t.get(o);return s||(s=new Set,t.set(o,s)),s.add(a),()=>{s.delete(a),s.size===0&&t.delete(o)}},async write(e,t,r){if(!n)throw Error(`createMirrorSource: write requires an api reference — pass it as the third argument when constructing the source`);await n.deviceState.setCapSlice.mutate({deviceId:e,capName:t,slice:r})}}}function q(e,t,n){let r=Rs(e)?e:Is(e);return{get value(){return r.read(t,n)},refresh(){return r.refresh(t,n)},subscribe(e){let a=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),a},async set(e){await r.write(t,n,e)},async patch(e){let a={...r.read(t,n),...e};await r.write(t,n,a)}}}function Rs(e){return typeof e.read==`function`&&typeof e.watch==`function`}function zs(e,t,n){let r=e,a=n?.stateSource??Is(e);function o(e,n){let r=typeof e==`object`&&e?e:{};return n===void 0?{...r,deviceId:t.deviceId}:{...r,deviceId:t.deviceId,nodeId:n}}function s(e,t,n,a,o){let s=r[e]?.[t];if(!s)throw Error(`DeviceProxy: api has no '${e}.${t}'`);let c=s;return n===`mutation`?c.mutate(a):n===`subscription`?c.subscribe(a,o):c.query(a)}function c(e,n,r,a,c,l){return s(n,r,a,o(c,t.entries.find(t=>t.capName===e)?.providerNodeId),l)}function l(e,t,n,r,a){return s(e,t,n,o(r,void 0),a)}return{deviceId:t.deviceId,binding:t,state:{airQualitySensor:q(a,t.deviceId,`air-quality-sensor`),alarmPanel:q(a,t.deviceId,`alarm-panel`),ambientLightSensor:q(a,t.deviceId,`ambient-light-sensor`),audioMetrics:q(a,t.deviceId,`audio-metrics`),automationControl:q(a,t.deviceId,`automation-control`),battery:q(a,t.deviceId,`battery`),binary:q(a,t.deviceId,`binary`),brightness:q(a,t.deviceId,`brightness`),cameraStreams:q(a,t.deviceId,`camera-streams`),carbonMonoxide:q(a,t.deviceId,`carbon-monoxide`),climateControl:q(a,t.deviceId,`climate-control`),color:q(a,t.deviceId,`color`),connectivity:q(a,t.deviceId,`connectivity`),consumables:q(a,t.deviceId,`consumables`),contact:q(a,t.deviceId,`contact`),control:q(a,t.deviceId,`control`),cover:q(a,t.deviceId,`cover`),dayNight:q(a,t.deviceId,`day-night`),deviceDiscovery:q(a,t.deviceId,`device-discovery`),deviceStatus:q(a,t.deviceId,`device-status`),doorbell:q(a,t.deviceId,`doorbell`),enumSensor:q(a,t.deviceId,`enum-sensor`),eventEmitter:q(a,t.deviceId,`event-emitter`),fanControl:q(a,t.deviceId,`fan-control`),featureProbe:q(a,t.deviceId,`feature-probe`),flood:q(a,t.deviceId,`flood`),gas:q(a,t.deviceId,`gas`),humidifier:q(a,t.deviceId,`humidifier`),humiditySensor:q(a,t.deviceId,`humidity-sensor`),image:q(a,t.deviceId,`image`),imageSettings:q(a,t.deviceId,`image-settings`),lawnMowerControl:q(a,t.deviceId,`lawn-mower-control`),lockControl:q(a,t.deviceId,`lock-control`),mediaPlayer:q(a,t.deviceId,`media-player`),motion:q(a,t.deviceId,`motion`),motionTrigger:q(a,t.deviceId,`motion-trigger`),motionZones:q(a,t.deviceId,`motion-zones`),nativeObjectDetection:q(a,t.deviceId,`native-object-detection`),notifier:q(a,t.deviceId,`notifier`),numericSensor:q(a,t.deviceId,`numeric-sensor`),petFeeder:q(a,t.deviceId,`pet-feeder`),powerMeter:q(a,t.deviceId,`power-meter`),presence:q(a,t.deviceId,`presence`),pressureSensor:q(a,t.deviceId,`pressure-sensor`),privacyMask:q(a,t.deviceId,`privacy-mask`),ptzAutotrack:q(a,t.deviceId,`ptz-autotrack`),sceneMonitor:q(a,t.deviceId,`scene-monitor`),scriptRunner:q(a,t.deviceId,`script-runner`),smoke:q(a,t.deviceId,`smoke`),streamParams:q(a,t.deviceId,`stream-params`),switch:q(a,t.deviceId,`switch`),tamper:q(a,t.deviceId,`tamper`),temperatureSensor:q(a,t.deviceId,`temperature-sensor`),update:q(a,t.deviceId,`update`),vacuumControl:q(a,t.deviceId,`vacuum-control`),valve:q(a,t.deviceId,`valve`),vibration:q(a,t.deviceId,`vibration`),waterHeater:q(a,t.deviceId,`water-heater`),weather:q(a,t.deviceId,`weather`),zoneAnalytics:q(a,t.deviceId,`zone-analytics`),zoneRules:q(a,t.deviceId,`zone-rules`),zones:q(a,t.deviceId,`zones`)},accessories:{setChildHidden:e=>c(`accessories`,`accessories`,`setChildHidden`,`mutation`,e),getStatus:e=>c(`accessories`,`accessories`,`getStatus`,`query`,e)},airQualitySensor:{getStatus:e=>c(`air-quality-sensor`,`airQualitySensor`,`getStatus`,`query`,e)},alarmPanel:{arm:e=>c(`alarm-panel`,`alarmPanel`,`arm`,`mutation`,e),disarm:e=>c(`alarm-panel`,`alarmPanel`,`disarm`,`mutation`,e),trigger:e=>c(`alarm-panel`,`alarmPanel`,`trigger`,`mutation`,e),getStatus:e=>c(`alarm-panel`,`alarmPanel`,`getStatus`,`query`,e)},ambientLightSensor:{getStatus:e=>c(`ambient-light-sensor`,`ambientLightSensor`,`getStatus`,`query`,e)},audioAnalysis:{resolveDeviceSettings:e=>c(`audio-analysis`,`audioAnalysis`,`resolveDeviceSettings`,`query`,e),getDeviceSettingsContribution:e=>c(`audio-analysis`,`audioAnalysis`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`audio-analysis`,`audioAnalysis`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`audio-analysis`,`audioAnalysis`,`applyDeviceSettingsPatch`,`mutation`,e)},audioMetrics:{getCurrentSnapshot:e=>c(`audio-metrics`,`audioMetrics`,`getCurrentSnapshot`,`query`,e),getHistory:e=>c(`audio-metrics`,`audioMetrics`,`getHistory`,`query`,e)},automationControl:{enable:e=>c(`automation-control`,`automationControl`,`enable`,`mutation`,e),disable:e=>c(`automation-control`,`automationControl`,`disable`,`mutation`,e),trigger:e=>c(`automation-control`,`automationControl`,`trigger`,`mutation`,e),getStatus:e=>c(`automation-control`,`automationControl`,`getStatus`,`query`,e)},battery:{wakeForStream:e=>c(`battery`,`battery`,`wakeForStream`,`mutation`,e),getStatus:e=>c(`battery`,`battery`,`getStatus`,`query`,e)},binary:{getStatus:e=>c(`binary`,`binary`,`getStatus`,`query`,e)},brightness:{setBrightness:e=>c(`brightness`,`brightness`,`setBrightness`,`mutation`,e),getStatus:e=>c(`brightness`,`brightness`,`getStatus`,`query`,e)},button:{press:e=>c(`button`,`button`,`press`,`mutation`,e)},cameraCredentials:{getCredentials:e=>c(`camera-credentials`,`cameraCredentials`,`getCredentials`,`query`,e),getStatus:e=>c(`camera-credentials`,`cameraCredentials`,`getStatus`,`query`,e)},cameraStreams:{getCameraStreams:e=>c(`camera-streams`,`cameraStreams`,`getCameraStreams`,`query`,e),getBrokerStreams:e=>c(`camera-streams`,`cameraStreams`,`getBrokerStreams`,`query`,e),getRtspEntries:e=>c(`camera-streams`,`cameraStreams`,`getRtspEntries`,`query`,e),getProfileRtspEntries:e=>c(`camera-streams`,`cameraStreams`,`getProfileRtspEntries`,`query`,e),pickStream:e=>c(`camera-streams`,`cameraStreams`,`pickStream`,`query`,e)},carbonMonoxide:{getStatus:e=>c(`carbon-monoxide`,`carbonMonoxide`,`getStatus`,`query`,e)},climateControl:{setMode:e=>c(`climate-control`,`climateControl`,`setMode`,`mutation`,e),setFanMode:e=>c(`climate-control`,`climateControl`,`setFanMode`,`mutation`,e),setPreset:e=>c(`climate-control`,`climateControl`,`setPreset`,`mutation`,e),setTarget:e=>c(`climate-control`,`climateControl`,`setTarget`,`mutation`,e),setTargetRange:e=>c(`climate-control`,`climateControl`,`setTargetRange`,`mutation`,e),setTargetHumidity:e=>c(`climate-control`,`climateControl`,`setTargetHumidity`,`mutation`,e),setSwingVertical:e=>c(`climate-control`,`climateControl`,`setSwingVertical`,`mutation`,e),setSwingHorizontal:e=>c(`climate-control`,`climateControl`,`setSwingHorizontal`,`mutation`,e),getStatus:e=>c(`climate-control`,`climateControl`,`getStatus`,`query`,e)},color:{setColor:e=>c(`color`,`color`,`setColor`,`mutation`,e),getStatus:e=>c(`color`,`color`,`getStatus`,`query`,e)},connectivity:{getStatus:e=>c(`connectivity`,`connectivity`,`getStatus`,`query`,e)},consumables:{reset:e=>c(`consumables`,`consumables`,`reset`,`mutation`,e),getStatus:e=>c(`consumables`,`consumables`,`getStatus`,`query`,e)},contact:{getStatus:e=>c(`contact`,`contact`,`getStatus`,`query`,e)},control:{setValue:e=>c(`control`,`control`,`setValue`,`mutation`,e),getStatus:e=>c(`control`,`control`,`getStatus`,`query`,e)},cover:{open:e=>c(`cover`,`cover`,`open`,`mutation`,e),close:e=>c(`cover`,`cover`,`close`,`mutation`,e),stop:e=>c(`cover`,`cover`,`stop`,`mutation`,e),setPosition:e=>c(`cover`,`cover`,`setPosition`,`mutation`,e),setTiltPosition:e=>c(`cover`,`cover`,`setTiltPosition`,`mutation`,e),getStatus:e=>c(`cover`,`cover`,`getStatus`,`query`,e)},dayNight:{getOptions:e=>c(`day-night`,`dayNight`,`getOptions`,`query`,e),setSettings:e=>c(`day-night`,`dayNight`,`setSettings`,`mutation`,e),getStatus:e=>c(`day-night`,`dayNight`,`getStatus`,`query`,e)},detectionPipeline:{getDeviceSettingsContribution:e=>c(`detection-pipeline`,`detectionPipeline`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`detection-pipeline`,`detectionPipeline`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`detection-pipeline`,`detectionPipeline`,`applyDeviceSettingsPatch`,`mutation`,e)},deviceDiscovery:{listDiscovered:e=>c(`device-discovery`,`deviceDiscovery`,`listDiscovered`,`query`,e),refreshDiscovery:e=>c(`device-discovery`,`deviceDiscovery`,`refreshDiscovery`,`mutation`,e),adoptDevice:e=>c(`device-discovery`,`deviceDiscovery`,`adoptDevice`,`mutation`,e),releaseDevice:e=>c(`device-discovery`,`deviceDiscovery`,`releaseDevice`,`mutation`,e),getStatus:e=>c(`device-discovery`,`deviceDiscovery`,`getStatus`,`query`,e)},deviceOps:{getStreamSources:e=>c(`device-ops`,`deviceOps`,`getStreamSources`,`query`,e),getConfigEntries:e=>c(`device-ops`,`deviceOps`,`getConfigEntries`,`query`,e),setConfig:e=>c(`device-ops`,`deviceOps`,`setConfig`,`mutation`,e),runAction:e=>c(`device-ops`,`deviceOps`,`runAction`,`mutation`,e),removeDevice:e=>c(`device-ops`,`deviceOps`,`removeDevice`,`mutation`,e),getSettingsSchema:e=>c(`device-ops`,`deviceOps`,`getSettingsSchema`,`query`,e),getRawState:e=>c(`device-ops`,`deviceOps`,`getRawState`,`query`,e)},deviceStatus:{getStatus:e=>c(`device-status`,`deviceStatus`,`getStatus`,`query`,e)},doorbell:{getStatus:e=>c(`doorbell`,`doorbell`,`getStatus`,`query`,e),getDeviceSettingsContribution:e=>c(`doorbell`,`doorbell`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`doorbell`,`doorbell`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`doorbell`,`doorbell`,`applyDeviceSettingsPatch`,`mutation`,e)},enumSensor:{getStatus:e=>c(`enum-sensor`,`enumSensor`,`getStatus`,`query`,e)},eventEmitter:{getStatus:e=>c(`event-emitter`,`eventEmitter`,`getStatus`,`query`,e)},events:{getEvents:e=>c(`events`,`events`,`getEvents`,`query`,e),getEventThumbnail:e=>c(`events`,`events`,`getEventThumbnail`,`query`,e),getEventClipUrl:e=>c(`events`,`events`,`getEventClipUrl`,`query`,e)},fanControl:{setPercentage:e=>c(`fan-control`,`fanControl`,`setPercentage`,`mutation`,e),setPreset:e=>c(`fan-control`,`fanControl`,`setPreset`,`mutation`,e),setDirection:e=>c(`fan-control`,`fanControl`,`setDirection`,`mutation`,e),setOscillating:e=>c(`fan-control`,`fanControl`,`setOscillating`,`mutation`,e),getStatus:e=>c(`fan-control`,`fanControl`,`getStatus`,`query`,e)},featureProbe:{getStatus:e=>c(`feature-probe`,`featureProbe`,`getStatus`,`query`,e)},flood:{getStatus:e=>c(`flood`,`flood`,`getStatus`,`query`,e)},gas:{getStatus:e=>c(`gas`,`gas`,`getStatus`,`query`,e)},humidifier:{setOn:e=>c(`humidifier`,`humidifier`,`setOn`,`mutation`,e),setTargetHumidity:e=>c(`humidifier`,`humidifier`,`setTargetHumidity`,`mutation`,e),setMode:e=>c(`humidifier`,`humidifier`,`setMode`,`mutation`,e),getStatus:e=>c(`humidifier`,`humidifier`,`getStatus`,`query`,e)},humiditySensor:{getStatus:e=>c(`humidity-sensor`,`humiditySensor`,`getStatus`,`query`,e)},image:{getStatus:e=>c(`image`,`image`,`getStatus`,`query`,e)},imageSettings:{getOptions:e=>c(`image-settings`,`imageSettings`,`getOptions`,`query`,e),setSettings:e=>c(`image-settings`,`imageSettings`,`setSettings`,`mutation`,e),getStatus:e=>c(`image-settings`,`imageSettings`,`getStatus`,`query`,e)},intercom:{startSession:e=>c(`intercom`,`intercom`,`startSession`,`mutation`,e),handleAnswer:e=>c(`intercom`,`intercom`,`handleAnswer`,`mutation`,e),stopSession:e=>c(`intercom`,`intercom`,`stopSession`,`mutation`,e),startTalkSession:e=>c(`intercom`,`intercom`,`startTalkSession`,`mutation`,e),pushTalkAudio:e=>c(`intercom`,`intercom`,`pushTalkAudio`,`mutation`,e),endTalkSession:e=>c(`intercom`,`intercom`,`endTalkSession`,`mutation`,e),getStatus:e=>c(`intercom`,`intercom`,`getStatus`,`query`,e)},lawnMowerControl:{startMowing:e=>c(`lawn-mower-control`,`lawnMowerControl`,`startMowing`,`mutation`,e),pause:e=>c(`lawn-mower-control`,`lawnMowerControl`,`pause`,`mutation`,e),dock:e=>c(`lawn-mower-control`,`lawnMowerControl`,`dock`,`mutation`,e),getStatus:e=>c(`lawn-mower-control`,`lawnMowerControl`,`getStatus`,`query`,e)},lockControl:{lock:e=>c(`lock-control`,`lockControl`,`lock`,`mutation`,e),unlock:e=>c(`lock-control`,`lockControl`,`unlock`,`mutation`,e),open:e=>c(`lock-control`,`lockControl`,`open`,`mutation`,e),getStatus:e=>c(`lock-control`,`lockControl`,`getStatus`,`query`,e)},mediaPlayer:{play:e=>c(`media-player`,`mediaPlayer`,`play`,`mutation`,e),pause:e=>c(`media-player`,`mediaPlayer`,`pause`,`mutation`,e),stop:e=>c(`media-player`,`mediaPlayer`,`stop`,`mutation`,e),next:e=>c(`media-player`,`mediaPlayer`,`next`,`mutation`,e),previous:e=>c(`media-player`,`mediaPlayer`,`previous`,`mutation`,e),seek:e=>c(`media-player`,`mediaPlayer`,`seek`,`mutation`,e),setVolume:e=>c(`media-player`,`mediaPlayer`,`setVolume`,`mutation`,e),setMute:e=>c(`media-player`,`mediaPlayer`,`setMute`,`mutation`,e),setShuffle:e=>c(`media-player`,`mediaPlayer`,`setShuffle`,`mutation`,e),setRepeat:e=>c(`media-player`,`mediaPlayer`,`setRepeat`,`mutation`,e),selectSource:e=>c(`media-player`,`mediaPlayer`,`selectSource`,`mutation`,e),playMedia:e=>c(`media-player`,`mediaPlayer`,`playMedia`,`mutation`,e),getStatus:e=>c(`media-player`,`mediaPlayer`,`getStatus`,`query`,e)},motion:{isDetected:e=>c(`motion`,`motion`,`isDetected`,`query`,e),getStatus:e=>c(`motion`,`motion`,`getStatus`,`query`,e)},motionDetection:{analyze:e=>c(`motion-detection`,`motionDetection`,`analyze`,`mutation`,e),removeCamera:e=>c(`motion-detection`,`motionDetection`,`removeCamera`,`mutation`,e),reset:e=>c(`motion-detection`,`motionDetection`,`reset`,`mutation`,e),getDeviceSettingsContribution:e=>c(`motion-detection`,`motionDetection`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`motion-detection`,`motionDetection`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`motion-detection`,`motionDetection`,`applyDeviceSettingsPatch`,`mutation`,e)},motionTrigger:{setMotionTrigger:e=>c(`motion-trigger`,`motionTrigger`,`setMotionTrigger`,`mutation`,e),getStatus:e=>c(`motion-trigger`,`motionTrigger`,`getStatus`,`query`,e)},motionZones:{getOptions:e=>c(`motion-zones`,`motionZones`,`getOptions`,`query`,e),setZone:e=>c(`motion-zones`,`motionZones`,`setZone`,`mutation`,e),getStatus:e=>c(`motion-zones`,`motionZones`,`getStatus`,`query`,e)},nativeObjectDetection:{setEnabled:e=>c(`native-object-detection`,`nativeObjectDetection`,`setEnabled`,`mutation`,e),getStatus:e=>c(`native-object-detection`,`nativeObjectDetection`,`getStatus`,`query`,e)},notifier:{send:e=>c(`notifier`,`notifier`,`send`,`mutation`,e),cancel:e=>c(`notifier`,`notifier`,`cancel`,`mutation`,e),getStatus:e=>c(`notifier`,`notifier`,`getStatus`,`query`,e)},numericSensor:{getStatus:e=>c(`numeric-sensor`,`numericSensor`,`getStatus`,`query`,e)},osd:{setOverlay:e=>c(`osd`,`osd`,`setOverlay`,`mutation`,e),getStatus:e=>c(`osd`,`osd`,`getStatus`,`query`,e)},petFeeder:{feed:e=>c(`pet-feeder`,`petFeeder`,`feed`,`mutation`,e),cancelFeed:e=>c(`pet-feeder`,`petFeeder`,`cancelFeed`,`mutation`,e),resetDesiccant:e=>c(`pet-feeder`,`petFeeder`,`resetDesiccant`,`mutation`,e),markFoodReplenished:e=>c(`pet-feeder`,`petFeeder`,`markFoodReplenished`,`mutation`,e),callPet:e=>c(`pet-feeder`,`petFeeder`,`callPet`,`mutation`,e),playSound:e=>c(`pet-feeder`,`petFeeder`,`playSound`,`mutation`,e),setChildLock:e=>c(`pet-feeder`,`petFeeder`,`setChildLock`,`mutation`,e),setIndicatorLight:e=>c(`pet-feeder`,`petFeeder`,`setIndicatorLight`,`mutation`,e),setFeedSound:e=>c(`pet-feeder`,`petFeeder`,`setFeedSound`,`mutation`,e),setVolume:e=>c(`pet-feeder`,`petFeeder`,`setVolume`,`mutation`,e),getStatus:e=>c(`pet-feeder`,`petFeeder`,`getStatus`,`query`,e)},pipelineAnalytics:{getActiveTracks:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getActiveTracks`,`query`,e),getTrack:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getTrack`,`query`,e),listTracks:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`listTracks`,`query`,e),listRecentTracks:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`listRecentTracks`,`query`,e),clearTracks:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`clearTracks`,`mutation`,e),getMotionEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getMotionEvents`,`query`,e),getObjectEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getObjectEvents`,`query`,e),getAudioEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getAudioEvents`,`query`,e),listEventKinds:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`listEventKinds`,`query`,e),getSensorEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getSensorEvents`,`query`,e),getKeyEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getKeyEvents`,`query`,e),getEventDensity:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getEventDensity`,`query`,e),pruneEventsBefore:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`pruneEventsBefore`,`mutation`,e),pruneTracksBefore:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`pruneTracksBefore`,`mutation`,e),wipeAllAnalytics:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`wipeAllAnalytics`,`mutation`,e),deleteTracks:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`deleteTracks`,`mutation`,e),getEventStoreFootprint:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getEventStoreFootprint`,`query`,e),pruneEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`pruneEvents`,`mutation`,e),deleteDeviceEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`deleteDeviceEvents`,`mutation`,e),listOpsLog:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`listOpsLog`,`query`,e),getEventMedia:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getEventMedia`,`query`,e),getTrackMedia:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getTrackMedia`,`query`,e),searchObjectEvents:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`searchObjectEvents`,`query`,e),getDeviceSettingsContribution:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`pipeline-analytics`,`pipelineAnalytics`,`applyDeviceSettingsPatch`,`mutation`,e)},powerMeter:{getStatus:e=>c(`power-meter`,`powerMeter`,`getStatus`,`query`,e)},presence:{getStatus:e=>c(`presence`,`presence`,`getStatus`,`query`,e)},pressureSensor:{getStatus:e=>c(`pressure-sensor`,`pressureSensor`,`getStatus`,`query`,e)},privacyMask:{getOptions:e=>c(`privacy-mask`,`privacyMask`,`getOptions`,`query`,e),setMask:e=>c(`privacy-mask`,`privacyMask`,`setMask`,`mutation`,e),getStatus:e=>c(`privacy-mask`,`privacyMask`,`getStatus`,`query`,e)},ptz:{move:e=>c(`ptz`,`ptz`,`move`,`mutation`,e),continuousMove:e=>c(`ptz`,`ptz`,`continuousMove`,`mutation`,e),stop:e=>c(`ptz`,`ptz`,`stop`,`mutation`,e),getPresets:e=>c(`ptz`,`ptz`,`getPresets`,`query`,e),goToPreset:e=>c(`ptz`,`ptz`,`goToPreset`,`mutation`,e),savePreset:e=>c(`ptz`,`ptz`,`savePreset`,`mutation`,e),deletePreset:e=>c(`ptz`,`ptz`,`deletePreset`,`mutation`,e),getOptions:e=>c(`ptz`,`ptz`,`getOptions`,`query`,e),goHome:e=>c(`ptz`,`ptz`,`goHome`,`mutation`,e),getPosition:e=>c(`ptz`,`ptz`,`getPosition`,`query`,e),setAutofocus:e=>c(`ptz`,`ptz`,`setAutofocus`,`mutation`,e),getStatus:e=>c(`ptz`,`ptz`,`getStatus`,`query`,e)},ptzAutotrack:{getStatus:e=>c(`ptz-autotrack`,`ptzAutotrack`,`getStatus`,`query`,e),setEnabled:e=>c(`ptz-autotrack`,`ptzAutotrack`,`setEnabled`,`mutation`,e),getSettings:e=>c(`ptz-autotrack`,`ptzAutotrack`,`getSettings`,`query`,e),setSettings:e=>c(`ptz-autotrack`,`ptzAutotrack`,`setSettings`,`mutation`,e)},reboot:{reboot:e=>c(`reboot`,`reboot`,`reboot`,`mutation`,e)},sceneMonitor:{listScenes:e=>c(`scene-monitor`,`sceneMonitor`,`listScenes`,`query`,e),createScene:e=>c(`scene-monitor`,`sceneMonitor`,`createScene`,`mutation`,e),updateScene:e=>c(`scene-monitor`,`sceneMonitor`,`updateScene`,`mutation`,e),deleteScene:e=>c(`scene-monitor`,`sceneMonitor`,`deleteScene`,`mutation`,e),captureReference:e=>c(`scene-monitor`,`sceneMonitor`,`captureReference`,`mutation`,e),deleteReference:e=>c(`scene-monitor`,`sceneMonitor`,`deleteReference`,`mutation`,e),recheckNow:e=>c(`scene-monitor`,`sceneMonitor`,`recheckNow`,`mutation`,e),getStatus:e=>c(`scene-monitor`,`sceneMonitor`,`getStatus`,`query`,e)},scriptRunner:{run:e=>c(`script-runner`,`scriptRunner`,`run`,`mutation`,e),stop:e=>c(`script-runner`,`scriptRunner`,`stop`,`mutation`,e),getStatus:e=>c(`script-runner`,`scriptRunner`,`getStatus`,`query`,e)},smoke:{getStatus:e=>c(`smoke`,`smoke`,`getStatus`,`query`,e)},snapshot:{getSnapshot:e=>c(`snapshot`,`snapshot`,`getSnapshot`,`query`,e),invalidateCache:e=>c(`snapshot`,`snapshot`,`invalidateCache`,`mutation`,e),getSnapshotOverview:e=>c(`snapshot`,`snapshot`,`getSnapshotOverview`,`query`,e),getStatus:e=>c(`snapshot`,`snapshot`,`getStatus`,`query`,e),getDeviceSettingsContribution:e=>c(`snapshot`,`snapshot`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`snapshot`,`snapshot`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`snapshot`,`snapshot`,`applyDeviceSettingsPatch`,`mutation`,e)},streamCatalog:{getCatalog:e=>c(`stream-catalog`,`streamCatalog`,`getCatalog`,`query`,e)},streamParams:{getOptions:e=>c(`stream-params`,`streamParams`,`getOptions`,`query`,e),setProfile:e=>c(`stream-params`,`streamParams`,`setProfile`,`mutation`,e),getConfigSchema:e=>c(`stream-params`,`streamParams`,`getConfigSchema`,`query`,e),getStatus:e=>c(`stream-params`,`streamParams`,`getStatus`,`query`,e)},switch:{setState:e=>c(`switch`,`switch`,`setState`,`mutation`,e),getStatus:e=>c(`switch`,`switch`,`getStatus`,`query`,e)},tamper:{getStatus:e=>c(`tamper`,`tamper`,`getStatus`,`query`,e)},temperatureSensor:{getStatus:e=>c(`temperature-sensor`,`temperatureSensor`,`getStatus`,`query`,e)},update:{installUpdate:e=>c(`update`,`update`,`installUpdate`,`mutation`,e),getStatus:e=>c(`update`,`update`,`getStatus`,`query`,e)},vacuumControl:{start:e=>c(`vacuum-control`,`vacuumControl`,`start`,`mutation`,e),pause:e=>c(`vacuum-control`,`vacuumControl`,`pause`,`mutation`,e),stop:e=>c(`vacuum-control`,`vacuumControl`,`stop`,`mutation`,e),returnToBase:e=>c(`vacuum-control`,`vacuumControl`,`returnToBase`,`mutation`,e),locate:e=>c(`vacuum-control`,`vacuumControl`,`locate`,`mutation`,e),setFanSpeed:e=>c(`vacuum-control`,`vacuumControl`,`setFanSpeed`,`mutation`,e),getStatus:e=>c(`vacuum-control`,`vacuumControl`,`getStatus`,`query`,e)},valve:{open:e=>c(`valve`,`valve`,`open`,`mutation`,e),close:e=>c(`valve`,`valve`,`close`,`mutation`,e),stop:e=>c(`valve`,`valve`,`stop`,`mutation`,e),setPosition:e=>c(`valve`,`valve`,`setPosition`,`mutation`,e),getStatus:e=>c(`valve`,`valve`,`getStatus`,`query`,e)},vibration:{getStatus:e=>c(`vibration`,`vibration`,`getStatus`,`query`,e)},videoclips:{listClips:e=>c(`videoclips`,`videoclips`,`listClips`,`query`,e),getClipPlayback:e=>c(`videoclips`,`videoclips`,`getClipPlayback`,`query`,e)},waterHeater:{setTargetTemp:e=>c(`water-heater`,`waterHeater`,`setTargetTemp`,`mutation`,e),setOperationMode:e=>c(`water-heater`,`waterHeater`,`setOperationMode`,`mutation`,e),setAway:e=>c(`water-heater`,`waterHeater`,`setAway`,`mutation`,e),getStatus:e=>c(`water-heater`,`waterHeater`,`getStatus`,`query`,e)},weather:{getStatus:e=>c(`weather`,`weather`,`getStatus`,`query`,e)},webrtcSession:{listStreams:e=>c(`webrtc-session`,`webrtcSession`,`listStreams`,`query`,e),createSession:e=>c(`webrtc-session`,`webrtcSession`,`createSession`,`mutation`,e),handleOffer:e=>c(`webrtc-session`,`webrtcSession`,`handleOffer`,`mutation`,e),handleAnswer:e=>c(`webrtc-session`,`webrtcSession`,`handleAnswer`,`mutation`,e),addIceCandidate:e=>c(`webrtc-session`,`webrtcSession`,`addIceCandidate`,`mutation`,e),getIceCandidates:e=>c(`webrtc-session`,`webrtcSession`,`getIceCandidates`,`query`,e),closeSession:e=>c(`webrtc-session`,`webrtcSession`,`closeSession`,`mutation`,e),hasAdaptiveBitrate:e=>c(`webrtc-session`,`webrtcSession`,`hasAdaptiveBitrate`,`query`,e),getSessionState:e=>c(`webrtc-session`,`webrtcSession`,`getSessionState`,`query`,e)},zoneAnalytics:{getCurrentSnapshot:e=>c(`zone-analytics`,`zoneAnalytics`,`getCurrentSnapshot`,`query`,e),getZoneHistory:e=>c(`zone-analytics`,`zoneAnalytics`,`getZoneHistory`,`query`,e),getCameraHistory:e=>c(`zone-analytics`,`zoneAnalytics`,`getCameraHistory`,`query`,e),getUnzonedHistory:e=>c(`zone-analytics`,`zoneAnalytics`,`getUnzonedHistory`,`query`,e)},zoneRules:{listRules:e=>c(`zone-rules`,`zoneRules`,`listRules`,`query`,e),setRules:e=>c(`zone-rules`,`zoneRules`,`setRules`,`mutation`,e)},zones:{listZones:e=>c(`zones`,`zones`,`listZones`,`query`,e),addZone:e=>c(`zones`,`zones`,`addZone`,`mutation`,e),removeZone:e=>c(`zones`,`zones`,`removeZone`,`mutation`,e),updateZone:e=>c(`zones`,`zones`,`updateZone`,`mutation`,e)},addonSettings:{getDeviceSettings:e=>l(`addonSettings`,`getDeviceSettings`,`query`,e),updateDeviceSettings:e=>l(`addonSettings`,`updateDeviceSettings`,`mutation`,e)},cameraPipelineConfig:{getDeviceSettingsContribution:e=>l(`cameraPipelineConfig`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`cameraPipelineConfig`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`cameraPipelineConfig`,`applyDeviceSettingsPatch`,`mutation`,e)},deviceAdoption:{getStatus:e=>l(`deviceAdoption`,`getStatus`,`query`,e)},deviceExport:{getDeviceSettingsContribution:e=>l(`deviceExport`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`deviceExport`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`deviceExport`,`applyDeviceSettingsPatch`,`mutation`,e)},deviceManager:{loadConfig:e=>l(`deviceManager`,`loadConfig`,`query`,e),loadRuntimeState:e=>l(`deviceManager`,`loadRuntimeState`,`query`,e),loadMeta:e=>l(`deviceManager`,`loadMeta`,`query`,e),setName:e=>l(`deviceManager`,`setName`,`mutation`,e),setLocation:e=>l(`deviceManager`,`setLocation`,`mutation`,e),setType:e=>l(`deviceManager`,`setType`,`mutation`,e),setIntegrationId:e=>l(`deviceManager`,`setIntegrationId`,`mutation`,e),setLinkDeviceId:e=>l(`deviceManager`,`setLinkDeviceId`,`mutation`,e),setPrimaryChildEntityId:e=>l(`deviceManager`,`setPrimaryChildEntityId`,`mutation`,e),setChildLayout:e=>l(`deviceManager`,`setChildLayout`,`mutation`,e),setDeviceLinks:e=>l(`deviceManager`,`setDeviceLinks`,`mutation`,e),setDisplay:e=>l(`deviceManager`,`setDisplay`,`mutation`,e),getWireableFields:e=>l(`deviceManager`,`getWireableFields`,`query`,e),setRole:e=>l(`deviceManager`,`setRole`,`mutation`,e),applyInitialMeta:e=>l(`deviceManager`,`applyInitialMeta`,`mutation`,e),setMetadata:e=>l(`deviceManager`,`setMetadata`,`mutation`,e),setDisabled:e=>l(`deviceManager`,`setDisabled`,`mutation`,e),getDevice:e=>l(`deviceManager`,`getDevice`,`query`,e),getLinkedDevices:e=>l(`deviceManager`,`getLinkedDevices`,`query`,e),getStreamSources:e=>l(`deviceManager`,`getStreamSources`,`query`,e),getConfigSchema:e=>l(`deviceManager`,`getConfigSchema`,`query`,e),getSettingsSchema:e=>l(`deviceManager`,`getSettingsSchema`,`query`,e),updateConfig:e=>l(`deviceManager`,`updateConfig`,`mutation`,e),enable:e=>l(`deviceManager`,`enable`,`mutation`,e),disable:e=>l(`deviceManager`,`disable`,`mutation`,e),remove:e=>l(`deviceManager`,`remove`,`mutation`,e),getStreamProfileMap:e=>l(`deviceManager`,`getStreamProfileMap`,`query`,e),setStreamProfileMap:e=>l(`deviceManager`,`setStreamProfileMap`,`mutation`,e),probeStreams:e=>l(`deviceManager`,`probeStreams`,`mutation`,e),getBindings:e=>l(`deviceManager`,`getBindings`,`query`,e),getAllBindings:e=>l(`deviceManager`,`getAllBindings`,`query`,e),setWrapperActive:e=>l(`deviceManager`,`setWrapperActive`,`mutation`,e),getDeviceSettingsAggregate:e=>l(`deviceManager`,`getDeviceSettingsAggregate`,`query`,e),getDeviceLiveInfoAggregate:e=>l(`deviceManager`,`getDeviceLiveInfoAggregate`,`query`,e),getDeviceAggregate:e=>l(`deviceManager`,`getDeviceAggregate`,`query`,e),runDeviceAction:e=>l(`deviceManager`,`runDeviceAction`,`mutation`,e),updateDeviceField:e=>l(`deviceManager`,`updateDeviceField`,`mutation`,e),updateDeviceFieldsBatch:e=>l(`deviceManager`,`updateDeviceFieldsBatch`,`mutation`,e),testField:e=>l(`deviceManager`,`testField`,`mutation`,e),getDeviceStatusAggregate:e=>l(`deviceManager`,`getDeviceStatusAggregate`,`query`,e),getDeviceSettingsContribution:e=>l(`deviceManager`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`deviceManager`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`deviceManager`,`applyDeviceSettingsPatch`,`mutation`,e)},deviceState:{getSnapshot:e=>l(`deviceState`,`getSnapshot`,`query`,e),getCapSlice:e=>l(`deviceState`,`getCapSlice`,`query`,e),setCapSlice:e=>l(`deviceState`,`setCapSlice`,`mutation`,e)},faceGallery:{getFaceByTrack:e=>l(`faceGallery`,`getFaceByTrack`,`query`,e)},networkQuality:{getDeviceStats:e=>l(`networkQuality`,`getDeviceStats`,`query`,e),reportClientStats:e=>l(`networkQuality`,`reportClientStats`,`mutation`,e)},pipelineExecutor:{runPipeline:e=>l(`pipelineExecutor`,`runPipeline`,`mutation`,e),runPipelineBatch:e=>l(`pipelineExecutor`,`runPipelineBatch`,`mutation`,e)},pipelineOrchestrator:{assignPipeline:e=>l(`pipelineOrchestrator`,`assignPipeline`,`mutation`,e),unassignPipeline:e=>l(`pipelineOrchestrator`,`unassignPipeline`,`mutation`,e),setPipelineDevicePin:e=>l(`pipelineOrchestrator`,`setPipelineDevicePin`,`mutation`,e),getPipelineDevicePin:e=>l(`pipelineOrchestrator`,`getPipelineDevicePin`,`query`,e),getPipelineAssignment:e=>l(`pipelineOrchestrator`,`getPipelineAssignment`,`query`,e),getCameraMetrics:e=>l(`pipelineOrchestrator`,`getCameraMetrics`,`query`,e),assignAudio:e=>l(`pipelineOrchestrator`,`assignAudio`,`mutation`,e),unassignAudio:e=>l(`pipelineOrchestrator`,`unassignAudio`,`mutation`,e),getAudioAssignment:e=>l(`pipelineOrchestrator`,`getAudioAssignment`,`query`,e),getAudioAssignments:e=>l(`pipelineOrchestrator`,`getAudioAssignments`,`query`,e),getCameraSettings:e=>l(`pipelineOrchestrator`,`getCameraSettings`,`query`,e),setCameraStepToggle:e=>l(`pipelineOrchestrator`,`setCameraStepToggle`,`mutation`,e),getCameraStepOverrides:e=>l(`pipelineOrchestrator`,`getCameraStepOverrides`,`query`,e),setCameraStepOverride:e=>l(`pipelineOrchestrator`,`setCameraStepOverride`,`mutation`,e),setCameraPipelineForAgent:e=>l(`pipelineOrchestrator`,`setCameraPipelineForAgent`,`mutation`,e),resolvePipeline:e=>l(`pipelineOrchestrator`,`resolvePipeline`,`query`,e),getCameraStatus:e=>l(`pipelineOrchestrator`,`getCameraStatus`,`query`,e),getDeviceSettingsContribution:e=>l(`pipelineOrchestrator`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`pipelineOrchestrator`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`pipelineOrchestrator`,`applyDeviceSettingsPatch`,`mutation`,e)},pipelineRunner:{detachCamera:e=>l(`pipelineRunner`,`detachCamera`,`mutation`,e),getCameraMetrics:e=>l(`pipelineRunner`,`getCameraMetrics`,`query`,e),runDetailSubtree:e=>l(`pipelineRunner`,`runDetailSubtree`,`mutation`,e)},plateGallery:{listPlates:e=>l(`plateGallery`,`listPlates`,`query`,e),getPlateByTrack:e=>l(`plateGallery`,`getPlateByTrack`,`query`,e)},recording:{getAvailability:e=>l(`recording`,`getAvailability`,`query`,e),getDaysWithRecordings:e=>l(`recording`,`getDaysWithRecordings`,`query`,e),getPlaybackManifest:e=>l(`recording`,`getPlaybackManifest`,`query`,e),getDeviceConfig:e=>l(`recording`,`getDeviceConfig`,`query`,e),locateSegment:e=>l(`recording`,`locateSegment`,`query`,e),readSegmentBytes:e=>l(`recording`,`readSegmentBytes`,`query`,e),setDeviceConfig:e=>l(`recording`,`setDeviceConfig`,`mutation`,e),rescanStorage:e=>l(`recording`,`rescanStorage`,`mutation`,e),pruneFootage:e=>l(`recording`,`pruneFootage`,`mutation`,e),deleteFootprint:e=>l(`recording`,`deleteFootprint`,`mutation`,e),getStatus:e=>l(`recording`,`getStatus`,`query`,e),getDeviceSettingsContribution:e=>l(`recording`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`recording`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`recording`,`applyDeviceSettingsPatch`,`mutation`,e)},recordingExport:{createExport:e=>l(`recordingExport`,`createExport`,`mutation`,e),listExports:e=>l(`recordingExport`,`listExports`,`query`,e)},streamBroker:{publishCameraStream:e=>l(`streamBroker`,`publishCameraStream`,`mutation`,e),retractCameraStream:e=>l(`streamBroker`,`retractCameraStream`,`mutation`,e),assignProfile:e=>l(`streamBroker`,`assignProfile`,`mutation`,e),unassignProfile:e=>l(`streamBroker`,`unassignProfile`,`mutation`,e),restartProfile:e=>l(`streamBroker`,`restartProfile`,`mutation`,e),getDeviceSettingsContribution:e=>l(`streamBroker`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>l(`streamBroker`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>l(`streamBroker`,`applyDeviceSettingsPatch`,`mutation`,e)}}}var Bs=B({staticDir:P()}),Vs=B({version:P()}),Hs={name:`admin-ui`,scope:`system`,mode:`singleton`,internal:!0,methods:{getStaticDir:K(R(),Bs),getVersion:K(R(),Vs)}},Us=B({staticDir:P()}),Ws=B({version:P()}),Gs={name:`viewer-ui`,scope:`system`,mode:`singleton`,internal:!0,methods:{getStaticDir:K(R(),Us),getVersion:K(R(),Ws)}},Ks=B({id:P(),label:P(),protocol:H([`rtsp`,`rtmp`,`annexb`,`http-mjpeg`,`webrtc`,`custom`]),url:P().optional(),resolution:B({width:F(),height:F()}).optional(),fps:F().optional(),bitrate:F().optional(),codec:P().optional(),profileHint:ps.optional(),sdp:P().optional()}),qs=B({key:P(),value:L()}),Js=B({source:P(),data:V(P(),L())}),Ys={name:`device-ops`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{getStreamSources:K(B({deviceId:F()}),z(Ks)),getConfigEntries:K(B({deviceId:F()}),z(qs)),setConfig:K(B({deviceId:F(),values:V(P(),L())}),R(),{kind:`mutation`}),runAction:K(B({deviceId:F(),action:P().min(1),input:L()}),L(),{kind:`mutation`}),removeDevice:K(B({deviceId:F()}),R(),{kind:`mutation`}),getSettingsSchema:K(B({deviceId:F()}),L().nullable()),getRawState:K(B({deviceId:F()}),Js.nullable(),{auth:`protected`})}},Xs=H([`singleton`,`device`,`widget`]),Zs=B({capName:P(),kind:Xs,deviceId:F().optional(),reachable:I(),latencyMs:F(),error:P().optional()}),Qs=B({addonId:P(),caps:z(Zs).readonly(),widgets:z(Zs).readonly()}),$s=B({nodeId:P(),addons:z(Qs).readonly()});B({ok:I(),degraded:I(),checkedAt:P(),nodes:z($s).readonly(),summary:B({total:F(),reachable:F(),unreachable:F()})});var ec=B({id:P(),name:P(),category:P().optional(),description:P().optional(),icon:P().optional()}),tc=[`onnx`,`coreml`,`openvino`,`tflite`,`pt`,`gguf`],nc=B({url:P(),sizeMB:F(),isDirectory:I().optional(),files:z(P()).readonly().optional(),runtimes:z(H([`node`,`python`])).readonly().optional()}),rc=B({url:P(),filename:P(),sizeMB:F()}),ic=B({onnx:nc.optional(),coreml:nc.optional(),openvino:nc.optional(),tflite:nc.optional(),pt:nc.optional(),gguf:nc.optional()}),ac=B({family:P(),tier:P(),precision:H([`fp32`,`int8`]).optional(),optimization:H([`standard`,`fast`]).optional(),resolution:F().int().positive().optional()}),oc=B({id:P(),name:P(),description:P(),formats:ic,inputSize:B({width:F(),height:F()}),inputChannels:F().int().positive().optional(),labels:z(ec).readonly(),inputLayout:H([`nchw`,`nhwc`]).optional(),inputNormalization:H([`zero-one`,`imagenet`,`none`]).optional(),outputProbabilities:I().optional(),preprocessMode:H([`letterbox`,`resize`]).optional(),postprocessor:rs().optional(),faceAlignment:I().optional(),extraFiles:z(rc).readonly().optional(),legacy:I().optional(),metrics:B({map50:F().optional(),p95LatencyMs:V(P(),F()).optional()}).optional(),license:P().optional(),group:ac.optional()}),sc=To(`format`,[B({format:U(`openvino`),precisions:z(H([`fp16`,`int8`])).min(1).readonly()}),B({format:U(`coreml`)})]),cc=B({id:P().regex(/^[a-zA-Z0-9._-]+$/),name:P(),labels:z(ec).readonly(),inputSize:B({width:F(),height:F()}),inputLayout:H([`nchw`,`nhwc`]).optional(),inputNormalization:H([`zero-one`,`imagenet`,`none`]).optional(),preprocessMode:H([`letterbox`,`resize`]).optional(),outputFormat:H([`yolo`,`ssd`,`embedding`,`classification`,`ocr`,`segmentation`]),faceAlignment:I().optional()}),lc=B({entry:oc,artifacts:z(B({format:H(tc),precision:H([`fp16`,`int8`]).optional(),sizeMB:F(),validated:I(),files:z(P()).readonly()})).readonly()}),uc=F().int().min(0).max(6),dc=/^([01]\d|2[0-3]):[0-5]\d$/,fc=To(`kind`,[B({kind:U(`always`)}),B({kind:U(`timeOfDay`),start:P().regex(dc),end:P().regex(dc),days:z(uc).optional()})]),pc=H([`continuous`,`onMotion`,`onAudioThreshold`]),mc=H([`off`,`events`,`continuous`]),hc=B({motion:I().optional(),audioThresholdDbfs:F().optional()}),gc=H([`continuous`,`events`]),_c=hc,vc=B({days:z(uc),start:P().regex(dc),end:P().regex(dc),mode:gc,triggers:_c.optional(),preBufferSec:F().min(0).optional(),postBufferSec:F().min(0).optional()}),yc=B({schedule:fc,mode:pc,preBufferSec:F().min(0).default(0),postBufferSec:F().min(0).default(0),resetTimeoutOnNewEvent:I().default(!0),thresholdDbfs:F().optional()}),bc=B({maxAgeDays:F().min(0).optional(),maxSizeGb:F().min(0).optional()}),xc=H([`minimal`,`low`,`standard`,`high`,`max`]),Sc=B({enabled:I(),mode:mc.optional(),profiles:z(ps).optional(),segmentSeconds:F().int().positive().optional(),schedules:z(fc).optional(),schedule:fc.optional(),triggers:hc.optional(),preBufferSec:F().min(0).optional(),postBufferSec:F().min(0).optional(),rules:z(yc).optional(),bands:z(vc).optional(),retention:bc.optional(),scrubThumbnails:xc.optional()}),Cc=H([`recording`,`events`]),wc=H([`prune`,`manual-delete`,`rescan`,`retention-run`]),Tc=H([`retention`,`quota`,`manual`,`operator`]),Ec=B({id:P(),at:F(),domain:Cc,op:wc,reason:Tc,deviceId:F().nullable(),nodeId:P(),itemsAffected:F(),bytesReclaimed:F(),detail:P().nullable(),actor:P()}),Dc=B({deviceId:F().optional(),limit:F().int().min(1).max(1e3).optional()}),Oc=P().regex(/^[a-z][a-zA-Z0-9-]*$/),kc=B({id:P().regex(/^[a-z][a-zA-Z0-9-]*:[a-zA-Z0-9-]+$/),type:P(),displayName:P().min(1),providerId:P().min(1),config:V(P(),L()),nodeId:P().optional(),isDefault:I().default(!1),isSystem:I().default(!1),createdAt:F(),updatedAt:F()}),Ac=Co([Oc,P().regex(/^[a-z][a-zA-Z0-9-]*:[a-zA-Z0-9-]+$/)]),jc=B({id:P().regex(/^[a-z][a-zA-Z0-9-]*$/,{message:`id must start with a lowercase letter and contain only letters, digits, or hyphens`}),displayName:P().min(1,{message:`displayName must not be empty`}),description:P().optional(),cardinality:H([`single`,`multi`]),defaultsTo:P().optional(),defaultRoot:H([`data`,`media`]).optional()}),Mc=B({inputFps:F(),outputFps:F(),avgDecodeTimeMs:F(),droppedFrames:F(),lagMs:F().optional(),effectiveFps:F().optional(),adaptiveFps:F().optional()}),Nc=B({codec:P(),maxFps:F().default(0),outputFormat:H([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]).default(`jpeg`),scale:F().default(1),width:F().optional(),height:F().optional(),deviceId:F().int().nonnegative().optional(),tag:P().optional(),frameSink:H([`callback`,`shm`]).default(`callback`),debug:I().optional()}),Pc=B({video:B({codec:H([`h264`,`h265`,`copy`]),profile:H([`baseline`,`main`,`high`]).optional(),width:F().int().positive().optional(),height:F().int().positive().optional(),fps:F().positive().optional(),bitrateKbps:F().int().positive().optional(),gopFrames:F().int().positive().optional(),bf:F().int().min(0).optional(),preset:H([`ultrafast`,`superfast`,`veryfast`,`faster`,`fast`,`medium`]).optional(),tune:H([`zerolatency`,`film`,`animation`]).optional()}),audio:Co([U(`passthrough`),B({codec:H([`opus`,`aac`,`pcmu`,`pcma`,`copy`]),bitrateKbps:F().int().positive().optional(),sampleRateHz:F().int().positive().optional(),channels:Co([U(1),U(2)]).optional()})]),inputArgs:z(P()).optional(),outputArgs:z(P()).optional()}),Fc={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},Ic=[{id:`speech`,name:`Speech`,icon:`🗣️`},{id:`scream`,name:`Scream / Shout`,icon:`😱`},{id:`crying`,name:`Crying / Baby`,icon:`😢`},{id:`laughter`,name:`Laughter`,icon:`😂`},{id:`music`,name:`Music`,icon:`🎵`},{id:`dog`,name:`Dog`,icon:`🐕`},{id:`cat`,name:`Cat`,icon:`🐈`},{id:`bird`,name:`Bird`,icon:`🐦`},{id:`animal`,name:`Animal (other)`,icon:`🐾`},{id:`alarm`,name:`Alarm / Siren`,icon:`🚨`},{id:`doorbell`,name:`Doorbell / Knock`,icon:`🔔`},{id:`glass_breaking`,name:`Glass Breaking`,icon:`💥`},{id:`gunshot`,name:`Gunshot / Explosion`,icon:`💣`},{id:`vehicle`,name:`Vehicle`,icon:`🚗`},{id:`siren`,name:`Emergency Siren`,icon:`🚑`},{id:`fire`,name:`Fire / Smoke`,icon:`🔥`},{id:`water`,name:`Water`,icon:`💧`},{id:`wind`,name:`Wind / Weather`,icon:`🌬️`},{id:`door`,name:`Door`,icon:`🚪`},{id:`footsteps`,name:`Footsteps`,icon:`👣`},{id:`crowd`,name:`Crowd / Chatter`,icon:`👥`},{id:`telephone`,name:`Telephone`,icon:`📞`},{id:`engine`,name:`Engine / Motor`,icon:`⚙️`},{id:`tools`,name:`Tools / Construction`,icon:`🔨`},{id:`silence`,name:`Silence`,icon:`🤫`}],Lc={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},Rc={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},zc=new Map;for(let[e,t]of Object.entries(Lc.mapping))zc.set(e.toLowerCase(),t);for(let[e,t]of Object.entries(Rc.mapping))zc.set(e.toLowerCase(),t);var Bc={motion:`#f59e0b`,audio:`#06b6d4`,person:`#22c55e`,vehicle:`#3b82f6`,animal:`#f97316`,package:`#a855f7`,sensor:`#8b5cf6`,control:`#10b981`,genericDetection:`#64748b`},Vc={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 Hc(e){return e.split(/[-_ ]/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}var Uc=new Map;function Wc(e,t,n,r,a){Uc.set(e,{kind:e,parentKind:null,level:`macro`,category:t,color:n,iconId:r,labelKey:`eventKind.${e}`,label:a})}function Gc(e,t,n,r,a,o){Uc.set(e,{kind:e,parentKind:t,level:`sub`,category:n,color:r,iconId:a,labelKey:`eventKind.${e}`,label:o})}Wc(`motion`,`motion`,Bc.motion,`motion`,`Motion`),Wc(`audio`,`audio`,Bc.audio,`audio`,`Audio`),Wc(`person`,`detection`,Bc.person,`person`,`Person`),Wc(`vehicle`,`detection`,Bc.vehicle,`vehicle`,`Vehicle`),Wc(`animal`,`detection`,Bc.animal,`animal`,`Animal`),Wc(`package`,`package`,Bc.package,`package`,`Package`),Wc(`sensor`,`sensor`,Bc.sensor,`sensor`,`Sensor`),Wc(`control`,`control`,Bc.control,`control`,`Control`);for(let[e,t]of Object.entries(Fc.mapping))t!==`vehicle`&&t!==`animal`||Uc.has(e)||Gc(e,t,`detection`,Vc[e]??Bc.genericDetection,e,Hc(e));Gc(`package-delivered`,`package`,`package`,Bc.package,`package`,`Package delivered`),Gc(`package-picked-up`,`package`,`package`,Bc.package,`package`,`Package picked up`),Gc(`contact`,`sensor`,`sensor`,`#f59e0b`,`door`,`Contact`),Gc(`motion-sensor`,`sensor`,`sensor`,Bc.sensor,`pir`,`Motion sensor`),Gc(`smoke`,`sensor`,`sensor`,`#ef4444`,`smoke`,`Smoke`),Gc(`flood`,`sensor`,`sensor`,`#3b82f6`,`water`,`Water leak`),Gc(`gas`,`sensor`,`sensor`,`#ef4444`,`gas`,`Gas`),Gc(`carbon-monoxide`,`sensor`,`sensor`,`#dc2626`,`smoke`,`Carbon monoxide`),Gc(`vibration`,`sensor`,`sensor`,`#eab308`,`vibration`,`Vibration`),Gc(`tamper`,`sensor`,`sensor`,`#f97316`,`tamper`,`Tamper`),Gc(`presence`,`sensor`,`sensor`,`#22c55e`,`presence`,`Presence`),Gc(`enum-sensor`,`sensor`,`sensor`,Bc.sensor,`generic`,`Sensor state`),Gc(`device-event`,`sensor`,`sensor`,`#10b981`,`button`,`Device event`),Gc(`lock`,`control`,`control`,`#0ea5e9`,`lock`,`Lock`),Gc(`switch`,`control`,`control`,Bc.control,`switch`,`Switch`),Gc(`siren`,`control`,`control`,`#dc2626`,`siren`,`Siren`),Gc(`button`,`control`,`control`,`#10b981`,`button`,`Button`),Gc(`doorbell`,`control`,`control`,`#a855f7`,`doorbell`,`Doorbell`);for(let e of Ic){let t=`audio-${e.id}`;Uc.has(t)||Gc(t,`audio`,`audio`,Bc.audio,t,e.name)}var Kc=Object.freeze(Object.fromEntries(Uc)),qc=class extends Error{position;constructor(e,t){super(e),this.name=`ExpressionParseError`,this.position=t}},Jc=class extends Error{constructor(e){super(e),this.name=`ExpressionEvalError`}},Yc=2048,Xc=/^[A-Za-z_][A-Za-z0-9_]*$/,Zc=new Set([`now`,`true`,`false`,`null`]),Qc=new Set([`true`,`false`,`null`]);function $c(e){return e>=`0`&&e<=`9`}function el(e){return e>=`A`&&e<=`Z`||e>=`a`&&e<=`z`||e===`_`}function tl(e){return el(e)||$c(e)}function nl(e){return e===` `||e===` `||e===`
|
|
74
|
-
`||e===`\r`||e===`\f`||e===`\v`}function rl(e){if(e.length>2048)throw new qc(`expression too long (${e.length} > ${Yc} chars)`,0);let t=[],n=0,r=e.length;for(;n<r;){let a=e[n];if(nl(a)){n+=1;continue}if($c(a)){let a=n;for(;n<r&&$c(e[n]);)n+=1;if(n<r&&e[n]===`.`){if(n+1>=r||!$c(e[n+1]))throw new qc(`malformed number: decimal point needs a digit`,n);for(n+=1;n<r&&$c(e[n]);)n+=1}let o=e.slice(a,n),s=Number(o);if(!Number.isFinite(s))throw new qc(`malformed number: '${o}'`,a);t.push({type:`number`,value:s,pos:a});continue}if(a===`'`||a===`"`){let o=a,s=n;n+=1;let c=``,l=!1;for(;n<r;){let t=e[n];if(t===`\\`){let t=n+1<r?e[n+1]:``;if(t===`\\`||t===`'`||t===`"`){c+=t,n+=2;continue}throw new qc(`invalid string escape: '\\${t}'`,n)}if(t===o){l=!0,n+=1;break}c+=t,n+=1}if(!l)throw new qc(`unterminated string literal`,s);t.push({type:`string`,value:c,pos:s});continue}if(el(a)){let a=n;for(;n<r&&tl(e[n]);)n+=1;let o=e.slice(a,n);Qc.has(o)?t.push({type:`keyword`,keyword:il(o),pos:a}):t.push({type:`identifier`,name:o,pos:a});continue}let o=n+1<r?e.slice(n,n+2):``;if(o===`<=`||o===`>=`||o===`==`||o===`!=`||o===`&&`||o===`||`){t.push({type:`punct`,punct:o,pos:n}),n+=2;continue}if(al(a)){t.push({type:`punct`,punct:a,pos:n}),n+=1;continue}throw new qc(`unexpected character '${a}'`,n)}return t.push({type:`eof`,pos:r}),t}function il(e){return e===`true`?`true`:e===`false`?`false`:`null`}function al(e){return e===`(`||e===`)`||e===`,`||e===`?`||e===`:`||e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`!`||e===`<`||e===`>`}function ol(e,t,n){if(typeof e!=`number`||!Number.isFinite(e))throw new Jc(`${t}: argument ${n+1} must be a finite number`);return e}function sl(e,t,n){if(typeof e!=`string`)throw new Jc(`${t}: argument ${n+1} must be a string`);return e}function cl(e,t){if(!Number.isFinite(e))throw new Jc(`${t}: produced a non-finite result`);return e}function ll(e,t){return e.map((e,n)=>ol(e,t,n))}var ul=1/0,dl={min:{minArgs:1,maxArgs:ul,apply:e=>cl(Math.min(...ll(e,`min`)),`min`)},max:{minArgs:1,maxArgs:ul,apply:e=>cl(Math.max(...ll(e,`max`)),`max`)},abs:{minArgs:1,maxArgs:1,apply:e=>cl(Math.abs(ol(e[0],`abs`,0)),`abs`)},floor:{minArgs:1,maxArgs:1,apply:e=>cl(Math.floor(ol(e[0],`floor`,0)),`floor`)},ceil:{minArgs:1,maxArgs:1,apply:e=>cl(Math.ceil(ol(e[0],`ceil`,0)),`ceil`)},sqrt:{minArgs:1,maxArgs:1,apply:e=>cl(Math.sqrt(ol(e[0],`sqrt`,0)),`sqrt`)},round:{minArgs:1,maxArgs:2,apply:e=>{let t=ol(e[0],`round`,0),n=e.length>1?Math.trunc(ol(e[1],`round`,1)):0;if(n<0||n>100)throw new Jc(`round: digits must be between 0 and 100`);let r=10**n;return cl(Math.round(t*r)/r,`round`)}},pow:{minArgs:2,maxArgs:2,apply:e=>cl(ol(e[0],`pow`,0)**ol(e[1],`pow`,1),`pow`)},clamp:{minArgs:3,maxArgs:3,apply:e=>{let t=ol(e[0],`clamp`,0),n=ol(e[1],`clamp`,1),r=ol(e[2],`clamp`,2);if(n>r)throw new Jc(`clamp: lower bound is greater than upper bound`);return cl(Math.min(r,Math.max(n,t)),`clamp`)}},avg:{minArgs:1,maxArgs:ul,apply:e=>{let t=ll(e,`avg`);return cl(t.reduce((e,t)=>e+t,0)/t.length,`avg`)}},sum:{minArgs:1,maxArgs:ul,apply:e=>cl(ll(e,`sum`).reduce((e,t)=>e+t,0),`sum`)},coalesce:{minArgs:1,maxArgs:ul,apply:e=>{for(let t of e)if(t!==null)return t;return null}},age:{minArgs:2,maxArgs:2,apply:e=>cl(ol(e[0],`age`,0)-ol(e[1],`age`,1),`age`)},convert:{minArgs:3,maxArgs:3,apply:(e,t)=>{let n=ol(e[0],`convert`,0),r=sl(e[1],`convert`,1).trim(),a=sl(e[2],`convert`,2).trim();if(t.convert){let e=t.convert(n,r,a);if(e===null)throw new Jc(`convert: cannot convert '${r}' to '${a}'`);return cl(e,`convert`)}if(r===a)return n;throw new Jc(`convert: unit conversion table not installed`)}}};Object.freeze(Object.assign(Object.create(null),dl));var fl=new Set(Object.keys(dl)),pl={"||":1,"&&":2,"==":3,"!=":3,"<":4,"<=":4,">":4,">=":4,"+":5,"-":5,"*":6,"/":6,"%":6};function ml(e){return e===`&&`||e===`||`}function hl(e){return e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`==`||e===`!=`||e===`<`||e===`<=`||e===`>`||e===`>=`}var gl=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 qc(`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 qc(`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 qc(`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=pl[n.punct];if(r===void 0||r<e)break;let a=n.punct;this.pos+=1;let o=this.parseBinary(r+1);if(this.countNode(),ml(a))t={kind:`logical`,op:a,left:t,right:o};else if(hl(a))t={kind:`binary`,op:a,left:t,right:o};else throw new qc(`unexpected operator '${a}'`,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 qc(`unexpected token '${e.punct}'`,e.pos);case`eof`:throw new qc(`unexpected end of expression`,e.pos)}}parseCall(e,t){if(!fl.has(e))throw new qc(`unknown function '${e}'`,t);this.expectPunct(`(`);let n=[];if(!this.matchPunct(`)`))for(;;){if(n.push(this.parseTernary()),n.length>16)throw new qc(`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 _l(e){return new gl(rl(e)).parse()}Object.freeze({});var vl=new Map;function yl(e){let t=vl.get(e);if(t!==void 0)return vl.delete(e),vl.set(e,t),t;let n;try{n={ok:!0,parsed:_l(e)}}catch(e){n={ok:!1,error:e instanceof qc?e.message:String(e)}}if(vl.set(e,n),vl.size>256){let e=vl.keys().next().value;e!==void 0&&vl.delete(e)}return n}function bl(e){return yl(e)}function xl(e){let t=Object.keys(e.bindings);if(t.length>32)return`too many bindings (${t.length} > 32)`;for(let e of t){if(!Xc.test(e))return`invalid binding name '${e}'`;if(Zc.has(e))return`binding name '${e}' is reserved`;if(fl.has(e))return`binding name '${e}' shadows a builtin function`}let n=bl(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 Sl={Siren:G.Siren,Floodlight:G.Floodlight,Spotlight:G.Spotlight,PirSensor:G.PirSensor,Chime:G.Chime,Autotrack:G.Autotrack,Nightvision:G.Nightvision,PrivacyMask:G.PrivacyMask};Sl.Siren,Sl.Floodlight,Sl.Spotlight,Sl.PirSensor,Sl.Chime,Sl.Autotrack,Sl.Nightvision,Sl.PrivacyMask,js.BatteryOperated;var Cl=B({online:I(),lastChangedAt:F()}),wl={name:`device-status`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onStatusChanged:{data:B({deviceId:F(),status:Cl})}},status:{schema:Cl,kind:`push`},runtimeState:Cl},Tl=B({flags:V(P(),L()),deviceType:P().nullable(),model:P().nullable(),channelCount:F().nullable(),lastProbedAt:F(),lastFetchedAt:F()}),El={name:`feature-probe`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onProbeChanged:{data:B({deviceId:F(),status:Tl})}},status:{schema:Tl,kind:`push`},runtimeState:Tl},Dl=B({co2Ppm:F().min(0).optional(),vocPpb:F().min(0).optional(),pm25:F().min(0).optional(),pm10:F().min(0).optional(),aqi:F().optional(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Ol={name:`air-quality-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Dl,kind:`push`},runtimeState:Dl},kl=H([`disarmed`,`armed_home`,`armed_away`,`armed_night`,`armed_vacation`,`armed_custom_bypass`,`arming`,`disarming`,`pending`,`triggered`]),Al=H([`home`,`away`,`night`,`vacation`,`custom_bypass`]),jl=B({state:kl,availableModes:z(Al),requiresCode:I(),lastChangedAt:F()}),Ml={name:`alarm-panel`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.AlarmPanel],methods:{arm:K(B({deviceId:F().int().nonnegative(),mode:Al,code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),disarm:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),trigger:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:jl,kind:`push`},runtimeState:jl},Nl=B({lux:F().min(0),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Pl={name:`ambient-light-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Nl,kind:`push`},runtimeState:Nl},Fl=B({className:P(),hits:F().int().nonnegative(),avgScore:F().min(0).max(1),peakScore:F().min(0).max(1)}),Il=B({ts:F().int(),windowSec:F().int().positive(),level:B({rms:F(),dbfs:F()}),peakDbfs:F(),avgDbfs:F(),current:B({className:P(),score:F().min(0).max(1),timestamp:F().int()}).nullable(),byClass:z(Fl).readonly()}),Ll=B({points:z(B({ts:F().int(),dbfs:F().nullable(),peakDbfs:F(),avgDbfs:F(),topClass:P().nullable(),topScore:F().min(0).max(1).nullable()})).readonly(),effectiveSampleEveryMs:F().int().positive(),windowMsActual:F().int().nonnegative()}),Rl={name:`audio-metrics`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCurrentSnapshot:K(B({deviceId:F()}),Il.nullable()),getHistory:K(B({deviceId:F(),windowSec:F().int().positive().optional(),sampleEveryMs:F().int().positive().optional()}),Ll)},runtimeState:Il},zl=B({enabled:I(),isRunning:I(),lastTriggeredAt:F(),lastError:P().nullable(),lastChangedAt:F()}),Bl={name:`automation-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Automation],methods:{enable:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),disable:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),trigger:K(B({deviceId:F().int().nonnegative(),skipCondition:I().optional()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:zl,kind:`push`},runtimeState:zl},Vl=B({percentage:F().min(0).max(100),charging:H([`dc`,`solar`,`none`]),sleeping:I(),lastUpdated:F(),binary:I().optional()}),Hl={name:`battery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor,W.Button,W.Switch],methods:{wakeForStream:K(B({deviceId:F(),timeoutMs:F().int().min(500).max(3e4).default(8e3)}),B({awoke:I(),durationMs:F()}),{kind:`mutation`})},events:{onStatusChanged:{data:B({deviceId:F(),status:Vl})}},status:{schema:Vl,kind:`push`,empty:{percentage:0,charging:`none`,sleeping:!1,lastUpdated:0}},runtimeState:Vl},Ul=B({on:I(),lastChangedAt:F()}),Wl={name:`binary`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ul,kind:`push`},runtimeState:Ul},Gl=B({percentage:F().min(0).max(100),lastChangedAt:F()}),Kl={name:`brightness`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light],methods:{setBrightness:K(B({deviceId:F().int().nonnegative(),percentage:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},events:{onBrightnessChanged:{data:B({deviceId:F(),percentage:F().min(0).max(100),lastChangedAt:F()})}},status:{schema:Gl,kind:`command-driven`},runtimeState:Gl},ql=H([`webrtc`,`hls`,`mjpeg`,`rtsp`]),Jl=B({brokerId:P(),url:P(),mutedUrl:P(),enabled:I(),codec:P().optional(),resolution:B({width:F().int().positive(),height:F().int().positive()}).optional()}),Yl=B({sessionId:P(),remoteAddr:P(),userAgent:P().nullish(),playing:I(),muted:I(),connectedAt:F(),lastRtpAt:F(),bytesSent:F()}),Xl=B({tag:P(),subscribedAt:F(),maxFps:F(),framesDelivered:F(),framesDropped:F()}),Zl=B({tag:P(),subscribedAt:F(),chunksDelivered:F()}),Ql=B({kind:H([`alexa`,`homekit`,`webrtc-browser`,`webrtc-mobile`,`webrtc-whep`,`rtsp-listen`,`derived-broker`,`recording`,`pipeline`,`snapshot`,`warmup`,`unknown`]),label:P().optional(),media:H([`audio`,`video`,`both`]).optional(),targetCodec:P().optional(),transport:H([`passthrough`,`repacketize`,`transcode`]).optional(),remoteAddr:P().optional(),userAgent:P().optional(),userId:P().optional(),sessionId:P().optional(),extra:V(P(),P()).optional()}).readonly(),$l=B({id:P(),channel:H([`annexb`,`rtp`]),attribution:Ql,subscribedAt:F(),packetsDelivered:F()}),eu=B({rtsp:z(Yl).readonly(),decoded:z(Xl).readonly(),audio:z(Zl).readonly(),encoded:z($l).readonly(),pipeClients:F(),encodedSubscribers:F()});H([`reconnecting`,`sleeping`,`offline`,`disabled`,`waking`]);var tu=H([`h264`,`h265`,`copy`]),nu=H([`aac`,`opus`,`pcmu`,`copy`,`none`]),ru=B({deviceId:F().int().nonnegative(),video:tu,audio:nu.optional(),profile:ps.optional(),targetResolution:B({width:F().int().positive(),height:F().int().positive()}).optional(),outputArgs:z(P()).optional(),audioEgress:I().optional(),hostname:P().optional(),tag:P().optional()}),iu=B({url:P(),videoCodec:H([`H264`,`H265`]),audioCodec:P(),resolution:B({width:F().int().positive(),height:F().int().positive()}),transcoded:I(),encoder:P(),pipelineKey:P()}),au={name:`stream-broker`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,methods:{publishCameraStream:K(B({deviceId:F().int().nonnegative(),camStreamId:P().min(1),kind:ms,url:P().optional(),codec:P().optional(),resolution:hs.optional(),fps:F().positive().optional(),label:P().optional(),deviceFeatures:z(P()).optional(),autoEligible:I().optional(),metadata:V(P(),L()).optional(),sourceCamStreamId:P().min(1).optional(),encodeProfile:Pc.optional()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),retractCameraStream:K(B({deviceId:F().int().nonnegative(),camStreamId:P().min(1)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),assignProfile:K(B({deviceId:F().int().nonnegative(),profile:ps,camStreamId:P().min(1)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignProfile:K(B({deviceId:F().int().nonnegative(),profile:ps}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),listAllCameraStreams:K(R(),z(gs).readonly()),listAllProfileSlots:K(R(),z(vs).readonly()),getBrokerStats:K(B({brokerId:P()}),ks),probeStream:K(B({brokerId:P()}),B({probed:I(),summary:P()}),{kind:`mutation`,auth:`admin`}),listClients:K(B({brokerId:P()}),eu),killClient:K(B({brokerId:P(),channel:H([`rtsp`,`decoded`,`audio`]),handle:P()}),B({killed:I()}),{kind:`mutation`,auth:`admin`}),restartProfile:K(B({deviceId:F().int().nonnegative(),profile:ps}),B({success:I()}),{kind:`mutation`,auth:`admin`}),getStreamUrl:K(B({streamId:P(),format:ql}),B({url:P()})),getStreamWithCodec:K(ru,iu,{kind:`mutation`,auth:`admin`}),releaseStreamWithCodec:K(B({pipelineKey:P()}),B({released:I(),refcount:F().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),subscribeAudioChunks:K(Ds,Os,{kind:`mutation`}),pullAudioChunks:K(B({subscriptionId:P(),maxCount:F().int().positive().default(8)}),z(Es).readonly()),unsubscribeAudioChunks:K(B({subscriptionId:P()}),B({released:I()}),{kind:`mutation`}),subscribeFrames:K(ws,Ts,{kind:`mutation`}),pullFrameHandles:K(B({subscriptionId:P(),maxCount:F().int().positive().default(4)}),z(Ss).readonly()),unsubscribeFrames:K(B({subscriptionId:P()}),B({released:I()}),{kind:`mutation`}),setPreBufferDuration:K(B({brokerId:P(),seconds:F().min(0).max(30)}),R(),{kind:`mutation`,auth:`admin`}),getPreBufferInfo:K(B({brokerId:P()}),B({configuredSec:F(),bufferedMs:F(),packetCount:F()})),getRtspPort:K(R(),F()),getAllRtspEntries:K(B({hostname:P().optional()}),z(Jl).readonly()),getRtspEntry:K(B({brokerId:P(),hostname:P().optional()}),Jl.nullable()),regenerateRtspToken:K(B({brokerId:P()}),P().nullable(),{kind:`mutation`,auth:`admin`}),setRtspEnabled:K(B({brokerId:P(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`}),isRtspEnabled:K(B({brokerId:P()}),I())},events:{onCamStreamDemand:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P(),profile:ps})),onCamStreamIdle:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P()})),onRequestStreamSourceRefresh:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P(),brokerId:P()}))}},ou=H([`h264`,`h265`,`hevc`,`av1`,`mjpeg`,`vp8`,`vp9`]),su=B({acceptCodecs:z(ou).readonly().optional(),minHeight:F().int().positive().optional(),minWidth:F().int().positive().optional(),excludeDerived:I().optional(),requireSiblingCodec:z(ou).readonly().optional()}).readonly(),cu=B({preferredProviders:z(P()).readonly().optional(),resolutionPreference:H([`highest`,`lowest`]).optional()}).readonly(),lu=B({camStreamId:P(),codec:P().optional(),resolution:hs.optional(),reason:P()}),uu={name:`camera-streams`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],methods:{getCameraStreams:K(B({deviceId:F().int().nonnegative()}),z(gs).readonly()),getBrokerStreams:K(B({deviceId:F().int().nonnegative()}),z(vs).readonly()),getRtspEntries:K(B({deviceId:F().int().nonnegative(),hostname:P().optional()}),z(Jl).readonly()),getProfileRtspEntries:K(B({deviceId:F().int().nonnegative(),hostname:P().optional()}),z(As).readonly()),pickStream:K(B({deviceId:F().int().nonnegative(),requirements:su,preferences:cu.optional()}),lu.nullable())},events:{onCamStreamsChanged:Ps(B({deviceId:F().int().nonnegative(),camStreams:z(gs).readonly()})),onProfileSlotsChanged:Ps(B({deviceId:F().int().nonnegative(),profileSlots:z(vs).readonly()}))},runtimeState:B({online:I(),slotStatuses:B({high:_s.optional(),mid:_s.optional(),low:_s.optional()}),slotErrors:B({high:P().optional(),mid:P().optional(),low:P().optional()}),lastChangedAt:F()})},du=B({detected:I(),lastChangedAt:F()}),fu={name:`carbon-monoxide`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:du,kind:`push`},runtimeState:du},pu=H([`off`,`heat`,`cool`,`auto`,`heat_cool`,`fan_only`,`dry`]),mu=B({mode:pu,availableModes:z(pu),fanMode:P(),availableFanModes:z(P()),preset:P(),availablePresets:z(P()),target:F().nullable(),targetHigh:F().nullable(),targetLow:F().nullable(),targetHumidity:F().min(0).max(100).nullable(),currentTemp:F().nullable(),currentHumidity:F().min(0).max(100).nullable(),swingVertical:I().nullable(),swingHorizontal:I().nullable(),lastFetchedAt:F()}),hu={name:`climate-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Thermostat,W.Climate],methods:{setMode:K(B({deviceId:F().int().nonnegative(),mode:pu}),R(),{kind:`mutation`,auth:`admin`}),setFanMode:K(B({deviceId:F().int().nonnegative(),fanMode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setPreset:K(B({deviceId:F().int().nonnegative(),preset:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setTarget:K(B({deviceId:F().int().nonnegative(),target:F()}),R(),{kind:`mutation`,auth:`admin`}),setTargetRange:K(B({deviceId:F().int().nonnegative(),targetLow:F(),targetHigh:F()}),R(),{kind:`mutation`,auth:`admin`}),setTargetHumidity:K(B({deviceId:F().int().nonnegative(),targetHumidity:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setSwingVertical:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setSwingHorizontal:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:mu,kind:`push`},runtimeState:mu},gu=B({r:F().int().min(0).max(255),g:F().int().min(0).max(255),b:F().int().min(0).max(255)}),_u=B({h:F().min(0).max(360),s:F().min(0).max(100),v:F().min(0).max(100)}),vu=To(`mode`,[B({mode:U(`rgb`),rgb:gu}),B({mode:U(`hsv`),hsv:_u}),B({mode:U(`mired`),mireds:F().int().min(50).max(1e3)})]),yu=B({mode:H([`rgb`,`hsv`,`mired`]),rgb:gu.optional(),hsv:_u.optional(),mireds:F().int().optional(),lastChangedAt:F()}),bu={name:`color`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light],methods:{setColor:K(B({deviceId:F().int().nonnegative(),color:vu}),R(),{kind:`mutation`,auth:`admin`})},events:{onColorChanged:{data:B({deviceId:F(),mode:H([`rgb`,`hsv`,`mired`]),rgb:gu.optional(),hsv:_u.optional(),mireds:F().int().optional(),lastChangedAt:F()})}},status:{schema:yu,kind:`command-driven`},runtimeState:yu},xu=B({connected:I(),lastChangedAt:F()}),Su={name:`connectivity`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:xu,kind:`push`},runtimeState:xu},Cu=B({key:P().min(1),label:P().min(1),level:F().min(0).max(100).nullable(),status:H([`ok`,`replace`]).nullable(),lastResetAt:F().nullable(),resettable:I()}),wu=B({items:z(Cu),lastChangedAt:F()}),Tu={name:`consumables`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:Object.values(W),deviceConfig:{ui:{kind:`widget`,widgetId:`host/consumables-panel`,tab:`consumables`,topTab:!0,label:`Consumables`,order:5}},methods:{reset:K(B({deviceId:F().int().nonnegative(),key:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wu,kind:`push`,empty:{items:[],lastChangedAt:0},itemArray:{path:`items`,keyField:`key`,labelField:`label`,itemSchema:Cu,emptyItem:{key:``,label:``,level:null,status:null,lastResetAt:null,resettable:!1}}},runtimeState:wu.extend({lastFetchedAt:F()})},Eu=B({entryOpen:I(),lastChangedAt:F()}),Du={name:`contact`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Eu,kind:`push`},runtimeState:Eu},Ou=B({kind:H([`numeric`,`select`,`text`,`datetime`]),value:Co([F(),P()]),options:z(P()),lastChangedAt:F(),unit:P().optional(),min:F().optional(),max:F().optional(),step:F().optional(),precision:F().int().min(0).max(10).optional(),format:H([`date`,`time`,`datetime`]).optional()}),ku=To(`kind`,[B({kind:U(`numeric`),value:F()}),B({kind:U(`select`),value:P().min(1)}),B({kind:U(`text`),value:P()}),B({kind:U(`datetime`),value:P().min(1)})]),Au={name:`control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Control],methods:{setValue:K(B({deviceId:F().int().nonnegative(),control:ku}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Ou,kind:`push`},runtimeState:Ou},ju=B({state:H([`open`,`opening`,`closing`,`closed`,`stopped`]),position:F().min(0).max(100).nullable(),tiltPosition:F().min(0).max(100).nullable(),lastChangedAt:F()}),Mu={name:`cover`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Cover],methods:{open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),close:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setPosition:K(B({deviceId:F().int().nonnegative(),position:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setTiltPosition:K(B({deviceId:F().int().nonnegative(),tiltPosition:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ju,kind:`push`},runtimeState:ju},Nu=H([`auto`,`day`,`night`,`schedule`]),Pu=B({min:F(),max:F(),step:F()}),Fu=B({mode:Nu,sensitivity:F().optional(),switchDelaySec:F().optional(),lastFetchedAt:F()}),Iu=B({modes:z(Nu),supportsSensitivity:I(),sensitivity:Pu.optional(),supportsSwitchDelay:I(),switchDelaySec:Pu.optional()}),Lu=B({mode:Nu.optional(),sensitivity:F().optional(),switchDelaySec:F().optional()}),Ru={name:`day-night`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`day-night`,tab:`image`}},methods:{getOptions:K(B({deviceId:F()}),Iu),setSettings:K(B({deviceId:F(),settings:Lu}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Fu,kind:`poll`},runtimeState:Fu},zu=B({id:P(),system:P(),uniqueId:P().optional(),raw:V(P(),L()).optional()}),Bu=H([`online`,`sleeping`,`offline`,`unknown`]),Vu=ts(()=>B({childNativeId:P(),name:P(),type:H(W),status:Bu,metadata:B({model:P().optional(),serialNumber:P().optional(),uid:P().optional(),rtspChannel:F().int().nonnegative().optional(),isBattery:I().optional(),isDoorbell:I().optional(),isMultifocal:I().optional(),externalLocation:P().optional(),manufacturer:P().optional(),integration:P().optional()}).default({}),alreadyAdopted:I(),adoptedDeviceId:F().int().nonnegative().nullable(),capabilities:z(P()).readonly().optional(),features:z(P()).readonly().optional(),sourceInfo:zu.optional(),children:z(Vu).readonly().optional()})),Hu=B({discovered:z(Vu),lastDiscoveryAt:F().int().nonnegative().nullable(),lastError:P().nullable()}),Uu={name:`device-discovery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Hub],status:{schema:Hu,kind:`poll`},runtimeState:Hu.extend({lastFetchedAt:F().int().nonnegative()}),methods:{listDiscovered:K(B({deviceId:F().int().nonnegative()}),z(Vu).readonly()),refreshDiscovery:K(B({deviceId:F().int().nonnegative()}),z(Vu).readonly(),{kind:`mutation`,auth:`admin`}),adoptDevice:K(B({deviceId:F().int().nonnegative(),childNativeId:P(),name:P().optional()}),B({deviceId:F().int().nonnegative(),stableId:P()}),{kind:`mutation`,auth:`admin`}),releaseDevice:K(B({deviceId:F().int().nonnegative(),childDeviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})}},Wu=B({lastPressedAt:F().nullable(),pressCountSinceStart:F()}),Gu=B({deviceId:F(),timestamp:F()}),Ku={name:`doorbell`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!1,deviceTypes:[W.Button,W.Camera],exposesDeviceSettings:!0,methods:{},events:{onPressed:{data:Gu}},status:{schema:Wu,kind:`push`},runtimeState:Wu},qu=H([`date`,`time`,`datetime`]),Ju=B({value:P(),format:qu.optional(),lastFetchedAt:F()}),Yu={name:`enum-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ju,kind:`push`},runtimeState:Ju},Xu=B({deviceId:F(),eventType:P(),data:V(P(),L()).nullable(),timestamp:F(),seq:F()}),Zu=B({eventTypes:z(P()),lastEvent:Xu.nullable(),eventCountSinceStart:F()}),Qu={name:`event-emitter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.EventEmitter],methods:{},events:{onEvent:{data:Xu}},status:{schema:Zu,kind:`push`},runtimeState:Zu},$u=H([`forward`,`reverse`]),ed=B({percentage:F().min(0).max(100).nullable(),percentageStep:F().positive().optional(),preset:P(),availablePresets:z(P()),direction:$u.nullable(),oscillating:I().nullable(),lastChangedAt:F()}),td={name:`fan-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Fan],methods:{setPercentage:K(B({deviceId:F().int().nonnegative(),percentage:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setPreset:K(B({deviceId:F().int().nonnegative(),preset:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setDirection:K(B({deviceId:F().int().nonnegative(),direction:$u}),R(),{kind:`mutation`,auth:`admin`}),setOscillating:K(B({deviceId:F().int().nonnegative(),oscillating:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ed,kind:`push`},runtimeState:ed},nd=B({flooded:I(),lastChangedAt:F()}),rd={name:`flood`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:nd,kind:`push`},runtimeState:nd},id=B({detected:I(),lastChangedAt:F()}),ad={name:`gas`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:id,kind:`push`},runtimeState:id},od=B({on:I(),currentHumidity:F().min(0).max(100).nullable(),targetHumidity:F().min(0).max(100).nullable(),mode:P().nullable(),availableModes:z(P()),action:P().nullable(),minHumidity:F().nullable(),maxHumidity:F().nullable(),lastChangedAt:F()}),sd={name:`humidifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Humidifier],methods:{setOn:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setTargetHumidity:K(B({deviceId:F().int().nonnegative(),humidity:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setMode:K(B({deviceId:F().int().nonnegative(),mode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:od,kind:`push`},runtimeState:od},cd=B({percent:F().min(0).max(100),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),ld={name:`humidity-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor,W.Thermostat],methods:{},status:{schema:cd,kind:`push`},runtimeState:cd},ud=B({url:P().nullable(),lastUpdated:F().nullable()}),dd={name:`image`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Image],methods:{},status:{schema:ud,kind:`push`},runtimeState:ud},fd=H([`0`,`90`,`180`,`270`]),pd=H([`auto`,`manual`]),md=H([`auto`,`manual`]),hd=H([`off`,`blc`,`wdr`,`hlc`]),gd=B({min:F(),max:F(),step:F()}),_d=B({brightness:F().optional(),contrast:F().optional(),saturation:F().optional(),sharpness:F().optional(),mirror:I().optional(),flip:I().optional(),rotate:fd.optional(),whiteBalance:pd.optional(),warmth:F().optional(),exposureMode:md.optional(),backlightMode:hd.optional(),lastFetchedAt:F()}),vd=B({supportsBrightness:I(),brightness:gd.optional(),supportsContrast:I(),contrast:gd.optional(),supportsSaturation:I(),saturation:gd.optional(),supportsSharpness:I(),sharpness:gd.optional(),supportsMirror:I(),supportsFlip:I(),rotateOptions:z(fd),whiteBalanceModes:z(pd),supportsWarmth:I(),warmth:gd.optional(),exposureModes:z(md),backlightModes:z(hd)}),yd=B({brightness:F().optional(),contrast:F().optional(),saturation:F().optional(),sharpness:F().optional(),mirror:I().optional(),flip:I().optional(),rotate:fd.optional(),whiteBalance:pd.optional(),warmth:F().optional(),exposureMode:md.optional(),backlightMode:hd.optional()}),bd={name:`image-settings`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`image-settings`,tab:`image`}},methods:{getOptions:K(B({deviceId:F()}),vd),setSettings:K(B({deviceId:F(),settings:yd}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:_d,kind:`poll`},runtimeState:_d},xd=H([`idle`,`mowing`,`paused`,`docked`,`error`]),Sd=H([`info`,`warning`,`error`]),Cd=B({activity:xd,batteryLevel:F().min(0).max(100).nullable(),progressPercent:F().min(0).max(100).nullable(),currentCode:F().nullable(),currentCodeLabel:P().nullable(),severity:Sd,lastChangedAt:F()}),wd={name:`lawn-mower-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.LawnMower],methods:{startMowing:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),dock:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Cd,kind:`push`},runtimeState:Cd},Td=B({state:H([`locked`,`unlocked`,`locking`,`unlocking`,`jammed`]),lastChangedAt:F()}),Ed={name:`lock-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Lock],methods:{lock:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),unlock:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Td,kind:`push`},runtimeState:Td},Dd=H([`off`,`on`,`idle`,`playing`,`paused`,`buffering`,`standby`]),Od=H([`off`,`all`,`one`]),kd=B({type:P(),title:P(),artist:P().optional(),album:P().optional(),imageUrl:P().optional()}),Ad=B({state:Dd,volumeLevel:F().min(0).max(100).nullable(),isMuted:I().nullable(),source:P(),availableSources:z(P()),currentMedia:kd.nullable(),positionMs:F().int().nonnegative().nullable(),durationMs:F().int().nonnegative().nullable(),shuffle:I().nullable(),repeat:Od.nullable(),lastChangedAt:F()}),jd={name:`media-player`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.MediaPlayer],methods:{play:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),next:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),previous:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),seek:K(B({deviceId:F().int().nonnegative(),positionMs:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setVolume:K(B({deviceId:F().int().nonnegative(),volumeLevel:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setMute:K(B({deviceId:F().int().nonnegative(),muted:I()}),R(),{kind:`mutation`,auth:`admin`}),setShuffle:K(B({deviceId:F().int().nonnegative(),shuffle:I()}),R(),{kind:`mutation`,auth:`admin`}),setRepeat:K(B({deviceId:F().int().nonnegative(),repeat:Od}),R(),{kind:`mutation`,auth:`admin`}),selectSource:K(B({deviceId:F().int().nonnegative(),source:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),playMedia:K(B({deviceId:F().int().nonnegative(),mediaId:P().min(1),mediaType:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Ad,kind:`push`},runtimeState:Ad},Md=H([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),Nd=B({data:rs(),format:Md,width:F(),height:F(),timestamp:F()}),Pd=B({x:F(),y:F(),w:F(),h:F()});B({class:P(),originalClass:P(),score:F(),bbox:Pd});var Fd=B({data:os(Uint8Array),sampleRate:F(),channels:F(),timestamp:F(),deviceId:F().optional()}),Id=B({rms:F(),dbfs:F()}),Ld=B({className:P(),originalClass:P().optional(),score:F()}),Rd=B({bbox:Pd,pixelCount:F(),intensity:F()}),zd=B({detected:I(),regionCount:F(),regions:z(Rd).readonly(),rawRegions:z(Rd).readonly(),frameWidth:F(),frameHeight:F(),analysisMs:F()}),Bd={name:`motion-detection`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,exposesDeviceSettings:!0,methods:{analyze:K(B({deviceId:F(),frame:Nd.optional(),frameHandle:Ss.optional()}),zd,{kind:`mutation`}),removeCamera:K(B({deviceId:F()}),R(),{kind:`mutation`}),reset:K(R(),R(),{kind:`mutation`})},events:{onMotion:{data:B({deviceId:F(),detected:I(),regionCount:F()})}}};B({activeCameras:F(),throttledCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()});var Vd=B({detectionMode:H([`disabled`,`always-on`,`on-motion`]),configuredFps:F(),actualFps:F(),queueDepth:F(),avgInferenceTimeMs:F(),droppedFrames:F(),phase:H([`idle`,`watching`,`active`])}),Hd=Vd.extend({deviceId:F()}),Ud=H([`onnx`,`coreml`,`openvino`,`tflite`,`pt`,`gguf`]),Wd=H([`detector`,`cropper`,`classifier`,`refiner`,`audio-classifier`]),Gd=B({runtime:H([`node`,`python`]),backend:P(),format:Ud,device:P().optional()}),Kd=B({engine:Gd,devices:z(B({id:P(),label:P(),description:P().optional()})).readonly(),defaultDevice:P()}),qd=ts(()=>B({addonId:P(),addonName:P(),slot:Wd,inputClasses:z(P()).readonly(),outputClasses:z(P()).readonly(),enabled:I(),modelId:P(),children:z(qd).readonly(),group:P().optional(),settings:V(P(),L()).optional()})),Jd=ts(()=>B({addonId:P(),enabled:I(),modelId:P(),children:z(Jd).readonly(),settings:V(P(),L()).optional()})),Yd=B({id:P(),name:P(),createdAt:P(),updatedAt:P(),engine:Gd,steps:z(Jd).readonly()}),Xd=B({id:P(),name:P(),formats:V(P(),B({downloaded:I(),sizeMB:F()})),group:ac.optional(),legacy:I().optional()}),Zd=rs(),Qd=B({id:P(),name:P(),slot:Wd,inputClasses:z(P()).readonly(),outputClasses:z(P()).readonly(),childSlots:z(Wd).readonly(),models:z(Xd).readonly(),defaultModelId:P(),defaultModelIdByFormat:V(P(),P()).optional(),enabledByDefault:I().optional(),backfillIntoExistingOverrides:I().optional(),defaultConfidence:F(),group:P().optional(),configSchema:z(Zd).readonly().optional()}),$d=B({id:Wd,label:P(),priority:F(),parentSlot:Wd.nullable(),addons:z(Qd).readonly()}),ef=B({availableEngines:z(Kd).readonly(),selectedEngine:Gd,slots:z($d).readonly()}),tf=B({runtimeId:H([`onnx`,`openvino`,`coreml`,`edgetpu`]).nullable(),device:P().nullable(),state:H([`idle`,`installing`,`verifying`,`ready`,`failed`]),progress:F().optional(),error:P().optional(),nextRetryAt:F().optional(),configIssues:z(P()).optional()}),nf=ts(()=>B({addonId:P(),modelId:P().optional(),enabled:I().default(!0),children:z(nf).optional(),settings:V(P(),L()).optional(),jumpDeviceKey:P().optional()})),rf=B({addonId:P(),chosen:P(),running:P(),format:P()}),af=B({addonId:P(),kind:H([`unknown-addon`,`no-format-build`]),detail:P()}),of=B({ok:I(),issues:z(af).readonly(),substitutions:z(rf).readonly(),format:P()}),sf=B({filename:P(),stepIds:z(P()).readonly().optional()}),cf=B({base64:P(),filename:P()}),lf=B({filename:P(),sizeKb:F()}),uf=B({base64:P()}),df=B({id:P(),name:P(),description:P(),available:I(),rawLabels:z(P()).readonly().optional()}),ff=B({activeBackend:P(),availableBackends:z(df).readonly(),sampleRate:F(),chunkDurationMs:F()}),pf=B({filePath:P(),sizeMB:F(),durationMs:F()}),mf=B({success:I(),error:P().optional(),frame:rs().optional()}),hf=rs(),gf=rs(),_f=rs(),vf=rs(),yf=rs(),bf=rs(),xf={name:`pipeline-executor`,scope:`system`,mode:`singleton`,methods:{getAvailableEngines:K(R(),z(Gd)),getSelectedEngine:K(R(),Gd),getDefaultSteps:K(Gd,z(qd)),getEngineProvisioning:K(B({nodeId:P()}),tf),getVideoPipelineSteps:K(R(),V(P(),B({modelId:P(),settings:V(P(),L()).readonly()}))),setVideoPipelineSteps:K(B({steps:V(P(),B({modelId:P(),settings:V(P(),L()).readonly()}))}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),clearDeviceOverrides:K(B({nodeId:P()}),B({success:U(!0),clearedDevices:F()}),{kind:`mutation`,auth:`admin`}),getSchema:K(R(),ef),getGlobalSteps:K(R(),z(qd).readonly().nullable()),getGlobalPipelineConfig:K(R(),hf),getOrchestratorConfigSchema:K(R(),gf),validatePipeline:K(B({steps:z(nf)}),of),listTemplates:K(R(),z(Yd).readonly()),saveTemplate:K(B({name:P(),steps:z(Jd).readonly(),engine:Gd}),Yd,{kind:`mutation`}),updateTemplate:K(B({id:P(),name:P().optional(),steps:z(Jd).readonly().optional()}),Yd,{kind:`mutation`}),deleteTemplate:K(B({id:P()}),R(),{kind:`mutation`}),getCapabilities:K(R(),vf),getAddonModels:K(B({addonId:P()}),yf),downloadModel:K(B({addonId:P(),modelId:P(),format:Ud}),pf,{kind:`mutation`}),deleteModel:K(B({addonId:P(),modelId:P(),format:Ud}),B({success:U(!0)}),{kind:`mutation`}),runPipeline:K(B({engine:Gd.optional(),steps:z(nf).min(1),frame:Nd.optional(),frameHandle:Ss.optional(),imageBase64:P().optional(),image:os(Uint8Array).optional(),referenceImage:P().optional(),deviceId:F().optional(),sessionId:P().optional(),plane:H([`full`,`frame`]).optional(),deviceKey:P().optional()}),bf,{kind:`mutation`}),runPipelineBatch:K(B({engine:Gd.optional(),steps:z(nf).min(1),frames:z(Nd).min(1).max(255),deviceId:F().optional(),sessionId:P().optional(),frameId:F().int().nonnegative().optional(),deviceKey:P().optional()}),B({results:z(bf).readonly()}),{kind:`mutation`}),cacheFrameInPool:K(B({data:os(Uint8Array),width:F().int().positive(),height:F().int().positive(),format:H([`rgb`,`bgr`,`gray`])}),B({frameId:F(),width:F(),height:F()}),{kind:`mutation`}),inferCached:K(B({stepId:P(),frameId:F().int()}),V(P(),L()),{kind:`mutation`}),uncacheFrame:K(B({frameId:F().int()}),R(),{kind:`mutation`}),getEffectiveTuning:K(R(),B({batchMode:P(),windowMs:F(),maxBatchSize:F(),concurrency:F()})),listLoadedEngines:K(R(),z(B({engineKey:P(),engine:Gd,modelsLoaded:z(P()).readonly(),inUseByCameras:z(F()).readonly(),kind:H([`runtime`,`warm-override`,`device-pool`]),poolPid:F().nullable(),idleMs:F().nullable(),idleTtlMs:F().nullable()})).readonly()),spinEngine:K(B({engine:Gd}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),killEngine:K(B({engine:Gd,force:I().optional()}),B({success:I(),reason:P().optional()}),{kind:`mutation`,auth:`admin`}),listReferenceImages:K(R(),z(sf).readonly()),getReferenceImage:K(B({filename:P()}),cf.nullable()),getReferenceAudioFiles:K(R(),z(lf).readonly()),getReferenceAudio:K(B({filename:P()}),uf.nullable()),getAudioCapabilities:K(R(),ff),runAudioTest:K(B({addonId:P(),modelId:P(),filename:P().optional(),settings:V(P(),L()).optional()}),mf,{kind:`mutation`}),getDetectionConfigSchema:K(R(),_f)}},Sf=H([`polygon`,`tripwire`]),Cf=B({x:F(),y:F()}),wf=B({id:P(),name:P(),kind:Sf.default(`polygon`),polygon:z(Cf).readonly(),color:P().default(`#3b82f6`)}),Tf={name:`zones`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{listZones:K(B({deviceId:F()}),z(wf).readonly()),addZone:K(B({deviceId:F(),zone:wf}),R(),{kind:`mutation`,auth:`admin`}),removeZone:K(B({deviceId:F(),zoneId:P()}),R(),{kind:`mutation`,auth:`admin`}),updateZone:K(B({deviceId:F(),zone:wf}),R(),{kind:`mutation`,auth:`admin`})},runtimeState:B({zones:z(wf).readonly()})},Ef=B({x:F(),y:F(),w:F(),h:F()}),Df=B({bytes:os(Uint8Array).optional(),jpeg:P().optional(),width:F().int().positive(),height:F().int().positive(),tier:H([`native`,`ram-fullframe`]).optional()}),Of=B({bbox:Ef,className:P()}),kf=B({stepId:P(),className:P(),score:F(),bbox:Ef.optional(),embedding:P().optional(),label:P().optional(),alignedCropJpeg:P().optional()}),Af={min:0,max:6e4,default:3e4,step:500},jf={min:1,max:30,default:4,step:1},Mf={min:1,max:30,default:10,step:1},Nf={min:0,max:300,default:30,step:5},Pf={min:1,max:10,default:4,step:1},Ff=H([`onboard`,`analyzer`]),If=z(Ff),Lf=B({deviceId:F(),detected:I(),source:Ff.default(`analyzer`),regions:z(Rd).readonly().optional()}),Rf=To(`kind`,[B({kind:U(`local-broker`)}),B({kind:U(`remote-restream`),ownerNodeId:P(),ownerReachableHost:P().optional(),hubHostnameOverride:P().optional()})]).describe(`Per-camera frame-source mode for the runner (P2c)`),zf=B({deviceKey:P(),weight:F().positive().default(1),maxSessions:F().int().positive().nullable().default(null)}),Bf=B({deviceId:F(),detectionMode:H([`disabled`,`always-on`,`on-motion`]).default(`on-motion`),audioMode:H([`disabled`,`always-on`,`on-motion`]).default(`always-on`),motionCooldownMs:F().min(Af.min).default(Af.default),motionFps:F().min(jf.min).max(jf.max).default(jf.default),detectionFps:F().min(Mf.min).max(Mf.max).default(Mf.default),motionStreamId:P(),detectionStreamId:P(),motionSources:If.default([`analyzer`]),pipelineEnabled:I().default(!0),steps:z(nf).readonly().optional(),audio:B({modelId:P().optional(),enabled:I()}).nullable().optional(),zones:z(wf).readonly().default([]),onboardMotionDrivesAnalyzer:I().default(!0),occupancyRecheckEnabled:I().default(!1),occupancyRecheckSec:F().min(Nf.min).max(Nf.max).default(Nf.default),occupancyRecheckFrames:F().min(Pf.min).max(Pf.max).default(Pf.default),frameSource:Rf.default({kind:`local-broker`}),deviceKey:P().optional(),inferenceDevices:z(zf).readonly().optional()});jf.min,jf.max,jf.step,jf.default,Mf.min,Mf.max,Mf.step,Mf.default,Af.min,Af.max,Af.step,Af.default,Nf.min,Nf.max,Nf.step,Nf.default,Pf.min,Pf.max,Pf.step,Pf.default;var Vf=B({nodeId:P(),attachedCameras:F(),activeCameras:F(),avgInferenceFps:F(),avgInferenceTimeMs:F(),queueDepthTotal:F(),devices:z(B({deviceKey:P(),backend:P(),attachedCameras:F(),queueDepthTotal:F()})).default([]),hardware:B({hasGpu:I(),inferenceBackend:P().optional(),cpuCores:F().optional()})}),Hf=B({nodeId:P(),activeCameras:F(),throttledCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()}),Uf={name:`pipeline-runner`,scope:`system`,mode:`singleton`,methods:{attachCamera:K(Bf,B({success:U(!0)}),{kind:`mutation`}),detachCamera:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`}),reportMotion:K(Lf,B({success:U(!0)}),{kind:`mutation`}),getLocalLoad:K(R(),Vf),getLocalMetrics:K(R(),Hf),getCameraMetrics:K(B({deviceId:F()}),Vd.nullable()),getAllCameraMetrics:K(R(),z(Hd).readonly()),getLocalCameras:K(R(),z(F()).readonly()),getNativeCrop:K(B({handle:Ss,bbox:Ef,maxWidth:F().int().positive().optional(),encodeJpeg:I().optional()}),Df.nullable()),runDetailSubtree:K(B({deviceId:F(),frameHandle:Ss.optional(),cropJpeg:P().optional(),parent:Of,steps:z(P()).optional()}),B({details:z(kf)}).nullable(),{kind:`mutation`})}},Wf=B({detected:I(),lastDetectedAt:F().nullable(),autoClearAfterMs:F().nullable()}),Gf=B({deviceId:F(),detected:I(),timestamp:F(),source:Ff,regions:z(Rd).readonly().optional()}),Kf={name:`motion`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor],methods:{isDetected:K(B({deviceId:F()}),I())},events:{onMotionChanged:{data:Gf}},status:{schema:Wf,kind:`push`},runtimeState:Wf},qf=B({enabled:I(),lastChangedAt:F()}),Jf=qf.extend({lastFetchedAt:F()}),Yf={name:`motion-trigger`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light,W.Siren,W.Switch],methods:{setMotionTrigger:K(B({deviceId:F().int().nonnegative(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onMotionTriggerChanged:{data:B({deviceId:F(),enabled:I(),lastChangedAt:F()})}},status:{schema:qf,kind:`command-driven`},runtimeState:Jf},Xf=B({x:F(),y:F()}),Zf=B({kind:U(`rect`),x:F(),y:F(),width:F(),height:F()}),Qf=B({kind:U(`polygon`),points:z(Xf)}),$f=B({kind:U(`grid`),gridWidth:F(),gridHeight:F(),cells:z(I())});To(`kind`,[Zf,Qf,$f,B({kind:U(`line`),points:z(Xf)})]);var ep=H([`rect`,`polygon`,`grid`,`line`]),tp=B({min:F(),max:F()}),np=B({width:F(),height:F()}),rp=B({id:F(),enabled:I(),shape:$f}),ip=B({enabled:I(),sensitivity:F(),regions:z(rp),lastFetchedAt:F()}),ap=B({maxRegions:F(),supportedShapes:z(ep),grid:np,sensitivity:B({min:F(),max:F(),step:F()})}),op=B({enabled:I().optional(),sensitivity:F().optional(),regions:z(rp).optional()}),sp={name:`motion-zones`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/motion-zones-grid`,tab:`motion`,label:`Motion Zones`}},methods:{getOptions:K(B({deviceId:F()}),ap),setZone:K(B({deviceId:F(),patch:op}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ip,kind:`poll`},runtimeState:ip},cp=H([`person`,`vehicle`,`animal`,`face`,`package`,`other`]),lp=B({class:cp,timestamp:F(),confidence:F().min(0).max(1).optional()}),up=B({lastByClass:jo(cp,lp.nullable()),supportedClasses:z(cp).readonly(),enabled:I()}),dp=up.extend({lastFetchedAt:F()}),fp={name:`native-object-detection`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{setEnabled:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onDetected:{data:B({deviceId:F(),detection:lp})}},status:{schema:up,kind:`push`},runtimeState:dp},pp=H([`min`,`low`,`normal`,`high`]),mp=B({id:P().min(1),title:P().min(1),uri:Ha().optional(),destructive:I().optional()}),hp=B({image:I(),priority:I(),data:I(),actions:I(),recipients:I()}),gp=B({lastSentAt:F(),lastError:P().nullable(),queueDepth:F().int().nonnegative(),supports:hp}),_p=B({deviceId:F().int().nonnegative(),title:P().optional(),body:P().min(1),image:P().optional(),priority:pp.optional(),channel:P().optional(),recipients:z(P()).optional(),actions:z(mp).optional(),data:V(P(),L()).optional()}),vp=B({notificationId:P(),acceptedAt:F()}),yp={name:`notifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Notifier],methods:{send:K(_p,vp,{kind:`mutation`,auth:`admin`}),cancel:K(B({deviceId:F().int().nonnegative(),notificationId:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},events:{onSent:{data:B({deviceId:F(),notificationId:P(),success:I(),error:P().nullable(),acceptedAt:F()})}},status:{schema:gp,kind:`command-driven`},runtimeState:gp},bp=B({value:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional(),lastFetchedAt:F()}),xp={name:`numeric-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:bp,kind:`push`},runtimeState:bp},Sp=H([`normal`,`offline`,`on_batteries`]),Cp=F().int().min(4).max(200),wp=B({foodLevel:F().nullable(),food1:F().nullable(),food2:F().nullable(),lowFood:I(),batteryPower:F().min(0).max(100).nullable(),desiccantLeftDays:F().nullable(),feeding:I(),status:Sp.nullable(),error:P().nullable(),errorCode:F().nullable(),isDualHopper:I(),childLock:I(),indicatorLight:I(),feedSound:I(),volume:F(),lastFetchedAt:F()}),Tp={name:`pet-feeder`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.PetFeeder],methods:{feed:K(B({deviceId:F().int().nonnegative(),grams:Cp.optional(),hopper1:Cp.optional(),hopper2:Cp.optional()}),R(),{kind:`mutation`,auth:`admin`}),cancelFeed:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),resetDesiccant:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),markFoodReplenished:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),callPet:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),playSound:K(B({deviceId:F().int().nonnegative(),soundId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setChildLock:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setIndicatorLight:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setFeedSound:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setVolume:K(B({deviceId:F().int().nonnegative(),level:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wp,kind:`poll`},runtimeState:wp},Ep=B({watts:F().optional(),kwhTotal:F().optional(),volts:F().optional(),amps:F().optional(),va:F().optional(),powerFactor:F().min(0).max(1).optional(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Dp={name:`power-meter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ep,kind:`push`},runtimeState:Ep},Op=B({latitude:F().min(-90).max(90),longitude:F().min(-180).max(180),accuracyMeters:F().nonnegative()}),kp=B({state:P(),location:P().nullable(),gps:Op.nullable(),batteryPercent:F().min(0).max(100).nullable(),lastChangedAt:F()}),Ap={name:`presence`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Presence],methods:{},status:{schema:kp,kind:`push`},runtimeState:kp},jp=B({hpa:F(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Mp={name:`pressure-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:jp,kind:`push`},runtimeState:jp},Np=To(`kind`,[Zf,Qf]),Pp=B({id:F(),enabled:I(),shape:Np}),Fp=B({enabled:I(),regions:z(Pp),lastFetchedAt:F()}),Ip=B({maxRegions:F(),supportedShapes:z(ep),polygonVertices:tp.optional()}),Lp=B({enabled:I().optional(),regions:z(Pp).optional()}),Rp={name:`privacy-mask`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/privacy-mask-grid`,tab:`image`,label:`Privacy Mask`}},methods:{getOptions:K(B({deviceId:F()}),Ip),setMask:K(B({deviceId:F(),patch:Lp}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Fp,kind:`poll`},runtimeState:Fp},zp=B({targetType:P().describe(`Vendor target string (people/vehicle/pet); empty = camera default`),stopDelaySeconds:F().int().min(0).max(300),disappearDelaySeconds:F().int().min(0).max(300)}),Bp=B({value:P(),label:P()}),Vp=B({enabled:I(),lastChangedAt:F(),currentSettings:zp.nullable(),supportedTargetTypes:z(Bp)}),Hp=Vp.extend({lastFetchedAt:F()}),Up={name:`ptz-autotrack`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-autotrack`,tab:`ptz`,topTab:!0,label:`Auto-Tracking`,order:5}},methods:{getStatus:K(B({deviceId:F()}),Vp),setEnabled:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`}),getSettings:K(B({deviceId:F()}),zp.nullable()),setSettings:K(B({deviceId:F(),settings:zp.partial()}),R(),{kind:`mutation`})},events:{onStatusChanged:{data:B({deviceId:F(),status:Vp})}},status:{schema:Vp,kind:`command-driven`},runtimeState:Hp},Wp=P(),Gp=B({embedding:z(F()),modelId:P(),condition:Wp,capturedAt:F(),thumbnailMediaId:P().optional()}),Kp=B({id:P(),label:P(),references:z(Gp),textPrompts:z(P()).optional(),referenceCount:F(),currentlyMatched:I()}),qp=To(`mode`,[B({mode:U(`similarity`),threshold:F().min(0).max(1),hysteresisCount:F().int().positive()}),B({mode:U(`llm`),prompt:P(),profileId:P().optional(),hysteresisCount:F().int().positive()})]),Jp=B({id:P(),label:P(),roi:Zf,enabled:I(),triggerMode:H([`periodic`,`on-motion`,`both`]),checkIntervalSec:F().optional(),check:qp,states:z(Kp),currentStateId:P().nullable(),lastCheckedAt:F().nullable(),lastConfidence:F().nullable(),currentCondition:Wp.nullable(),availability:H([`ok`,`unavailable`]),unavailableReason:P().nullable()}),Yp=B({monitors:z(Jp),lastFetchedAt:F()}),Xp={name:`scene-monitor`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/scene-monitor-editor`,tab:`scenes`,label:`Scenes`}},methods:{listScenes:K(B({deviceId:F()}),Yp),createScene:K(B({deviceId:F(),label:P(),roi:Zf,check:qp,triggerMode:H([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:F().optional()}),Jp,{kind:`mutation`,auth:`admin`}),updateScene:K(B({deviceId:F(),monitorId:P(),patch:B({label:P().optional(),roi:Zf.optional(),enabled:I().optional(),triggerMode:H([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:F().optional(),check:qp.optional()})}),R(),{kind:`mutation`,auth:`admin`}),deleteScene:K(B({deviceId:F(),monitorId:P()}),R(),{kind:`mutation`,auth:`admin`}),captureReference:K(B({deviceId:F(),monitorId:P(),stateId:P().optional(),label:P().optional(),condition:Wp.optional()}),B({stateId:P(),referenceCount:F()}),{kind:`mutation`,auth:`admin`}),deleteReference:K(B({deviceId:F(),monitorId:P(),stateId:P(),index:F()}),R(),{kind:`mutation`,auth:`admin`}),recheckNow:K(B({deviceId:F(),monitorId:P()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Yp,kind:`push`},runtimeState:Yp},Zp=B({isRunning:I(),lastRunAt:F(),lastRunSuccess:I().nullable(),lastError:P().nullable(),lastChangedAt:F()}),Qp={name:`script-runner`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Script],methods:{run:K(B({deviceId:F().int().nonnegative(),variables:V(P(),L()).optional()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Zp,kind:`push`},runtimeState:Zp},$p=B({detected:I(),lastChangedAt:F()}),em={name:`smoke`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:$p,kind:`push`},runtimeState:$p},tm=H([`main`,`sub`,`ext`]),nm=B({width:F(),height:F(),codec:H([`h264`,`h265`]),framerate:F(),bitrate:F(),bitrateMode:H([`vbr`,`cbr`]).optional(),encoderProfile:H([`high`,`main`,`baseline`]).optional(),gop:F().optional(),audio:I().optional()}),rm=B({main:nm.optional(),sub:nm.optional(),ext:nm.optional(),lastFetchedAt:F()}),im=B({resolutions:z(B({width:F(),height:F()})),codecs:z(H([`h264`,`h265`])),framerates:z(F()),bitrates:z(F()),bitrateRange:ko([F(),F()]).optional(),supportsBitrateMode:I(),supportsEncoderProfile:I(),supportsGop:I(),gop:B({min:F(),max:F(),step:F()}).optional()}),am=B({main:im.optional(),sub:im.optional(),ext:im.optional()}),om=B({width:F().optional(),height:F().optional(),codec:H([`h264`,`h265`]).optional(),framerate:F().optional(),bitrate:F().optional(),bitrateMode:H([`vbr`,`cbr`]).optional(),encoderProfile:H([`high`,`main`,`baseline`]).optional(),gop:F().optional(),audio:I().optional()}),sm={name:`stream-params`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`stream-params`,tab:`streaming`}},methods:{getOptions:K(B({deviceId:F()}),am),setProfile:K(B({deviceId:F(),profile:tm,patch:om}),R(),{kind:`mutation`,auth:`admin`}),getConfigSchema:K(B({deviceId:F()}),L().nullable())},status:{schema:rm,kind:`poll`},runtimeState:rm},cm=B({on:I(),lastChangedAt:F()}),lm={name:`switch`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Switch,W.Siren,W.Light],methods:{setState:K(B({deviceId:F(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onStateChanged:{data:B({deviceId:F(),on:I(),lastChangedAt:F()})}},status:{schema:cm,kind:`command-driven`},runtimeState:cm,settings:{bindings:[{kind:`scalar`,statusPath:`on`,method:`setState`,valueArg:`on`,field:{label:`On`,kind:`boolean`}}]}},um=B({tampered:I(),lastChangedAt:F()}),dm={name:`tamper`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:um,kind:`push`},runtimeState:um},fm=B({celsius:F(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),pm={name:`temperature-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor,W.Thermostat],methods:{},status:{schema:fm,kind:`push`},runtimeState:fm},mm=B({currentVersion:P().nullable(),availableVersion:P().nullable(),updatable:I(),state:P().nullable(),inProgress:I()}),hm={name:`update`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Update],methods:{installUpdate:K(R(),R(),{kind:`mutation`,auth:`admin`})},status:{schema:mm,kind:`poll`},runtimeState:mm},gm=H([`idle`,`cleaning`,`paused`,`returning`,`docked`,`drying`,`error`]),_m=B({level:F().min(0).max(100).nullable(),status:H([`ok`,`low`,`full`]).nullable()}),vm=B({state:gm,batteryLevel:F().min(0).max(100).nullable(),fanSpeed:P().nullable(),availableFanSpeeds:z(P()),cleanWater:_m.nullable(),dirtyWater:_m.nullable(),detergent:_m.nullable(),dustBin:_m.nullable(),progressPercent:F().min(0).max(100).nullable(),errorCode:F().nullable(),errorLabel:P().nullable(),lastChangedAt:F()}),ym={name:`vacuum-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Vacuum],methods:{start:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),returnToBase:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),locate:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setFanSpeed:K(B({deviceId:F().int().nonnegative(),speed:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:vm,kind:`push`},runtimeState:vm},bm=B({state:H([`open`,`opening`,`closing`,`closed`,`stopped`]),position:F().min(0).max(100).nullable(),lastChangedAt:F()}),xm={name:`valve`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Valve],methods:{open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),close:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setPosition:K(B({deviceId:F().int().nonnegative(),position:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:bm,kind:`push`},runtimeState:bm},Sm=B({detected:I(),lastChangedAt:F()}),Cm={name:`vibration`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Sm,kind:`push`},runtimeState:Sm},wm=B({currentTemp:F().nullable(),targetTemp:F().nullable(),operationMode:P().nullable(),availableModes:z(P()),away:I().nullable(),minTemp:F().nullable(),maxTemp:F().nullable(),lastChangedAt:F()}),Tm={name:`water-heater`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.WaterHeater],methods:{setTargetTemp:K(B({deviceId:F().int().nonnegative(),temp:F().finite()}),R(),{kind:`mutation`,auth:`admin`}),setOperationMode:K(B({deviceId:F().int().nonnegative(),mode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setAway:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wm,kind:`push`},runtimeState:wm},Em=B({condition:P().nullable(),temperature:F().nullable(),temperatureUnit:P().nullable(),humidity:F().min(0).max(100).nullable(),pressure:F().nullable(),pressureUnit:P().nullable(),windSpeed:F().nullable(),windSpeedUnit:P().nullable(),windBearing:F().nullable(),lastFetchedAt:F()}),Dm={name:`weather`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Weather],methods:{},status:{schema:Em,kind:`push`},runtimeState:Em},Om=B({totalObjects:F().int().nonnegative(),byClass:V(P(),F().int().nonnegative())}),km=Om.extend({zoneId:P(),zoneName:P(),trackIds:z(P()).readonly()}),Am=B({id:P(),className:P(),bbox:B({x:F(),y:F(),w:F(),h:F()}),frameWidth:F().int().nonnegative(),frameHeight:F().int().nonnegative(),firstSeenAt:F().int(),becameStationaryAt:F().int(),lastConfirmedAt:F().int(),label:P().optional(),keyFrameMediaKey:P().optional()}),jm=B({ts:F().int(),frameWidth:F().int().nonnegative(),frameHeight:F().int().nonnegative(),zones:z(km).readonly(),frame:Om,unzoned:Om,stationaryObjects:z(Am).readonly().optional()}),Mm=H([`minute`,`5min`,`hour`]),Nm=B({from:F().int(),to:F().int(),resolution:Mm}),Pm=B({ts:F().int(),count:F().int().nonnegative()}),Fm={name:`zone-analytics`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCurrentSnapshot:K(B({deviceId:F()}),jm.nullable()),getZoneHistory:K(B({deviceId:F(),zoneId:P(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly()),getCameraHistory:K(B({deviceId:F(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly()),getUnzonedHistory:K(B({deviceId:F(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly())},runtimeState:jm},Im=H([`include`,`exclude`]),Lm=B({id:P(),name:P().optional(),zoneIds:z(P()).min(1).readonly(),mode:Im,classFilter:z(P()).readonly().optional(),overlapThreshold:F().min(0).max(1).optional(),bboxInclusionPct:F().min(0).max(100).optional(),preferMask:I().optional(),enabled:I().default(!0)});z(Lm).readonly();var Rm=H([`motion`,`detection`,`package`]),zm={name:`zone-rules`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{listRules:K(B({deviceId:F(),stage:Rm}),z(Lm).readonly()),setRules:K(B({deviceId:F(),stage:Rm,rules:z(Lm).readonly()}),R(),{kind:`mutation`,auth:`admin`})},runtimeState:B({motion:z(Lm).readonly(),detection:z(Lm).readonly(),package:z(Lm).readonly()})},Bm={"°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 Vm(e){return Object.hasOwn(Bm,e)?Bm[e]:void 0}function Hm(e){return Vm(e)?.dimension}function Um(e,t){return e*t.factor+t.offset}function Wm(e,t){return(e-t.offset)/t.factor}function Gm(e,t,n){if(t===n)return e;let r=Vm(t);if(!r)return;let a=Vm(n);if(a&&r.dimension===a.dimension)return Wm(Um(e,r),a)}function Km(e,t){if(e===t)return!0;let n=Hm(e);return n===void 0?!1:n===Hm(t)}var qm=B({connected:I(),deviceCount:F(),error:P().optional()});B({externalId:P(),name:P(),type:P(),metadata:V(P(),L()).optional()});var Jm=B({stableId:P(),type:H(W),suggestedName:P(),prefilledConfig:V(P(),L()),sourceInfo:zu.optional()}),Ym=B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),parentDeviceId:F().nullable(),online:I(),features:z(P()),config:V(P(),L()),sourceInfo:zu.optional()}),Xm=B({status:H([`ok`,`error`]),labels:z(P()).optional(),error:P().optional()}),Zm=L(),Qm={name:`device-provider`,scope:`system`,mode:`collection`,methods:{start:K(R(),R(),{kind:`mutation`}),stop:K(R(),R(),{kind:`mutation`}),getStatus:K(R(),qm),getDevices:K(R(),z(B({id:P(),name:P(),type:P()}))),supportsDiscovery:K(B({}),I()),discoverDevices:K(B({params:V(P(),L()).optional()}),z(Jm),{kind:`mutation`,auth:`admin`}),getDiscoveryParamsSchema:K(B({}),Zm),getManualCreationType:K(B({}),B({deviceType:H(W).nullable()})),adoptDiscoveredDevice:K(B({candidate:Jm}),Ym,{kind:`mutation`,auth:`admin`}),supportsManualCreation:K(B({}),I()),getChildCreationSchema:K(B({type:H(W)}),Zm),createDevice:K(B({type:H(W),config:V(P(),L())}),Ym,{kind:`mutation`,auth:`admin`}),testCreationField:K(B({type:H(W),key:P(),value:L(),formValues:V(P(),L()).optional()}),Xm,{kind:`mutation`,auth:`admin`})}},$m={[W.Cover]:`cover`,[W.Valve]:`valve`,[W.Humidifier]:`humidifier`,[W.WaterHeater]:`water-heater`,[W.Camera]:`dummy`,[W.Hub]:`dummy`,[W.Switch]:`switch`,[W.Siren]:`switch`,[W.Light]:`light`,[W.Fan]:`fan`,[W.Sensor]:`sensor`,[W.Thermostat]:`thermostat`,[W.Climate]:`climate`,[W.Button]:`button`,[W.EventEmitter]:`dummy`,[W.Update]:`update`,[W.Generic]:`dummy`,[W.Notifier]:`dummy`,[W.Script]:`dummy`,[W.Automation]:`dummy`,[W.Lock]:`lock`,[W.MediaPlayer]:`media-player`,[W.AlarmPanel]:`alarm`,[W.Control]:`control`,[W.Presence]:`sensor`,[W.Weather]:`weather`,[W.Vacuum]:`vacuum`,[W.LawnMower]:`lawn-mower`,[W.Container]:`dummy`,[W.Image]:`image`,[W.PetFeeder]:`pet-feeder`};new Set(Object.values(W));function eh(e){let t=e;function n(e,n,r,a,o){let s=t[e]?.[n];if(!s)throw Error(`SystemProxy: api has no '${e}.${n}'`);let c=s;return r===`mutation`?c.mutate(a):r===`subscription`?c.subscribe(a,o):c.query(a)}return{addonPages:{listPages:e=>n(`addonPages`,`listPages`,`query`,e)},addons:{list:e=>n(`addons`,`list`,`query`,e),getLogs:e=>n(`addons`,`getLogs`,`query`,e),listPackages:e=>n(`addons`,`listPackages`,`query`,e),installPackage:e=>n(`addons`,`installPackage`,`mutation`,e),installFromWorkspace:e=>n(`addons`,`installFromWorkspace`,`mutation`,e),isWorkspaceAvailable:e=>n(`addons`,`isWorkspaceAvailable`,`query`,e),listWorkspacePackages:e=>n(`addons`,`listWorkspacePackages`,`query`,e),uninstallPackage:e=>n(`addons`,`uninstallPackage`,`mutation`,e),reloadPackages:e=>n(`addons`,`reloadPackages`,`mutation`,e),searchAvailable:e=>n(`addons`,`searchAvailable`,`query`,e),listUpdates:e=>n(`addons`,`listUpdates`,`query`,e),updatePackage:e=>n(`addons`,`updatePackage`,`mutation`,e),rollbackPackage:e=>n(`addons`,`rollbackPackage`,`mutation`,e),forceRefresh:e=>n(`addons`,`forceRefresh`,`mutation`,e),restartServer:e=>n(`addons`,`restartServer`,`mutation`,e),getLastRestart:e=>n(`addons`,`getLastRestart`,`query`,e),listFrameworkPackages:e=>n(`addons`,`listFrameworkPackages`,`query`,e),listCapabilityProviders:e=>n(`addons`,`listCapabilityProviders`,`query`,e),setCapabilityProviderEnabled:e=>n(`addons`,`setCapabilityProviderEnabled`,`mutation`,e),getVersions:e=>n(`addons`,`getVersions`,`query`,e),restartAddon:e=>n(`addons`,`restartAddon`,`mutation`,e),retryLoad:e=>n(`addons`,`retryLoad`,`mutation`,e),getAutoUpdateSettings:e=>n(`addons`,`getAutoUpdateSettings`,`query`,e),setAutoUpdateSettings:e=>n(`addons`,`setAutoUpdateSettings`,`mutation`,e),getAddonAutoUpdate:e=>n(`addons`,`getAddonAutoUpdate`,`query`,e),setAddonAutoUpdate:e=>n(`addons`,`setAddonAutoUpdate`,`mutation`,e),applyAutoUpdateToAll:e=>n(`addons`,`applyAutoUpdateToAll`,`mutation`,e),custom:e=>n(`addons`,`custom`,`mutation`,e),startJob:e=>n(`addons`,`startJob`,`mutation`,e),getJob:e=>n(`addons`,`getJob`,`query`,e),listJobs:e=>n(`addons`,`listJobs`,`query`,e),cancelJob:e=>n(`addons`,`cancelJob`,`mutation`,e),onAddonLogs:(e,t)=>n(`addons`,`onAddonLogs`,`subscription`,e,t)},addonSettings:{getGlobalSettings:e=>n(`addonSettings`,`getGlobalSettings`,`query`,e),updateGlobalSettings:e=>n(`addonSettings`,`updateGlobalSettings`,`mutation`,e)},addonWidgets:{listWidgets:e=>n(`addonWidgets`,`listWidgets`,`query`,e)},alerts:{emit:e=>n(`alerts`,`emit`,`mutation`,e),update:e=>n(`alerts`,`update`,`mutation`,e),list:e=>n(`alerts`,`list`,`query`,e),getUnreadCount:e=>n(`alerts`,`getUnreadCount`,`query`,e),markRead:e=>n(`alerts`,`markRead`,`mutation`,e),markAllRead:e=>n(`alerts`,`markAllRead`,`mutation`,e),dismiss:e=>n(`alerts`,`dismiss`,`mutation`,e)},audioAnalyzer:{analyseChunk:e=>n(`audioAnalyzer`,`analyseChunk`,`mutation`,e),classify:e=>n(`audioAnalyzer`,`classify`,`query`,e),isReady:e=>n(`audioAnalyzer`,`isReady`,`query`,e),dispose:e=>n(`audioAnalyzer`,`dispose`,`mutation`,e),reprobeAudioEngine:e=>n(`audioAnalyzer`,`reprobeAudioEngine`,`mutation`,e)},audioCodec:{listSupportedCodecs:e=>n(`audioCodec`,`listSupportedCodecs`,`query`,e),canHandle:e=>n(`audioCodec`,`canHandle`,`query`,e),createDecodeSession:e=>n(`audioCodec`,`createDecodeSession`,`mutation`,e),createEncodeSession:e=>n(`audioCodec`,`createEncodeSession`,`mutation`,e),closeSession:e=>n(`audioCodec`,`closeSession`,`mutation`,e),pushEncodedFrame:e=>n(`audioCodec`,`pushEncodedFrame`,`mutation`,e),pullPcm:e=>n(`audioCodec`,`pullPcm`,`query`,e),pushPcm:e=>n(`audioCodec`,`pushPcm`,`mutation`,e),pullEncoded:e=>n(`audioCodec`,`pullEncoded`,`query`,e),flushEncode:e=>n(`audioCodec`,`flushEncode`,`mutation`,e),listActiveSessions:e=>n(`audioCodec`,`listActiveSessions`,`query`,e)},backup:{listDestinations:e=>n(`backup`,`listDestinations`,`query`,e),trigger:e=>n(`backup`,`trigger`,`mutation`,e),list:e=>n(`backup`,`list`,`query`,e),listLocations:e=>n(`backup`,`listLocations`,`query`,e),getEntries:e=>n(`backup`,`getEntries`,`query`,e),restore:e=>n(`backup`,`restore`,`mutation`,e),delete:e=>n(`backup`,`delete`,`mutation`,e),listArchives:e=>n(`backup`,`listArchives`,`query`,e),upsertDestinationPolicy:e=>n(`backup`,`upsertDestinationPolicy`,`mutation`,e),previewSchedule:e=>n(`backup`,`previewSchedule`,`query`,e)},broker:{list:e=>n(`broker`,`list`,`query`,e),get:e=>n(`broker`,`get`,`query`,e),listProviders:e=>n(`broker`,`listProviders`,`query`,e),add:e=>n(`broker`,`add`,`mutation`,e),remove:e=>n(`broker`,`remove`,`mutation`,e),testConnection:e=>n(`broker`,`testConnection`,`mutation`,e),getSettings:e=>n(`broker`,`getSettings`,`query`,e),setSettings:e=>n(`broker`,`setSettings`,`mutation`,e),getBrokerConfig:e=>n(`broker`,`getBrokerConfig`,`query`,e),getSettingsSchema:e=>n(`broker`,`getSettingsSchema`,`query`,e),testSettings:e=>n(`broker`,`testSettings`,`mutation`,e),publish:e=>n(`broker`,`publish`,`mutation`,e),subscribe:e=>n(`broker`,`subscribe`,`mutation`,e),unsubscribe:e=>n(`broker`,`unsubscribe`,`mutation`,e),getState:e=>n(`broker`,`getState`,`query`,e),getStatus:e=>n(`broker`,`getStatus`,`query`,e)},decoder:{supportsCodec:e=>n(`decoder`,`supportsCodec`,`query`,e),getInfo:e=>n(`decoder`,`getInfo`,`query`,e),createSession:e=>n(`decoder`,`createSession`,`query`,e),destroySession:e=>n(`decoder`,`destroySession`,`query`,e),pushPacket:e=>n(`decoder`,`pushPacket`,`query`,e),openStream:e=>n(`decoder`,`openStream`,`query`,e),pullFrames:e=>n(`decoder`,`pullFrames`,`query`,e),pullHandles:e=>n(`decoder`,`pullHandles`,`query`,e),getFrame:e=>n(`decoder`,`getFrame`,`query`,e),getShmStats:e=>n(`decoder`,`getShmStats`,`query`,e),updateConfig:e=>n(`decoder`,`updateConfig`,`query`,e),getStats:e=>n(`decoder`,`getStats`,`query`,e),listActiveSessions:e=>n(`decoder`,`listActiveSessions`,`query`,e),reprobeHwaccel:e=>n(`decoder`,`reprobeHwaccel`,`mutation`,e)},deviceAdoption:{listCandidateFilters:e=>n(`deviceAdoption`,`listCandidateFilters`,`query`,e),listCandidates:e=>n(`deviceAdoption`,`listCandidates`,`query`,e),getCandidate:e=>n(`deviceAdoption`,`getCandidate`,`query`,e),refresh:e=>n(`deviceAdoption`,`refresh`,`mutation`,e),adopt:e=>n(`deviceAdoption`,`adopt`,`mutation`,e),release:e=>n(`deviceAdoption`,`release`,`mutation`,e),resync:e=>n(`deviceAdoption`,`resync`,`mutation`,e)},deviceExport:{getStatus:e=>n(`deviceExport`,`getStatus`,`query`,e),listSupportedDeviceKinds:e=>n(`deviceExport`,`listSupportedDeviceKinds`,`query`,e),listExposedDevices:e=>n(`deviceExport`,`listExposedDevices`,`query`,e),exposeDevice:e=>n(`deviceExport`,`exposeDevice`,`mutation`,e),unexposeDevice:e=>n(`deviceExport`,`unexposeDevice`,`mutation`,e)},deviceManager:{allocateDeviceId:e=>n(`deviceManager`,`allocateDeviceId`,`mutation`,e),registerDevice:e=>n(`deviceManager`,`registerDevice`,`mutation`,e),removeDevice:e=>n(`deviceManager`,`removeDevice`,`mutation`,e),persistConfig:e=>n(`deviceManager`,`persistConfig`,`mutation`,e),getRoleDisplayDefaults:e=>n(`deviceManager`,`getRoleDisplayDefaults`,`query`,e),setRoleDisplayDefaults:e=>n(`deviceManager`,`setRoleDisplayDefaults`,`mutation`,e),listLocations:e=>n(`deviceManager`,`listLocations`,`query`,e),addLocation:e=>n(`deviceManager`,`addLocation`,`mutation`,e),removeLocation:e=>n(`deviceManager`,`removeLocation`,`mutation`,e),listPersistedByAddon:e=>n(`deviceManager`,`listPersistedByAddon`,`query`,e),listAll:e=>n(`deviceManager`,`listAll`,`query`,e),getChildren:e=>n(`deviceManager`,`getChildren`,`query`,e),removeByIntegration:e=>n(`deviceManager`,`removeByIntegration`,`mutation`,e),listWrappersForCap:e=>n(`deviceManager`,`listWrappersForCap`,`query`,e),listBindableCapsForDeviceType:e=>n(`deviceManager`,`listBindableCapsForDeviceType`,`query`,e),discoverDevices:e=>n(`deviceManager`,`discoverDevices`,`mutation`,e),adoptDevice:e=>n(`deviceManager`,`adoptDevice`,`mutation`,e),getCreationSchema:e=>n(`deviceManager`,`getCreationSchema`,`query`,e),createDevice:e=>n(`deviceManager`,`createDevice`,`mutation`,e),testCreationField:e=>n(`deviceManager`,`testCreationField`,`mutation`,e),adoptionListCandidateFilters:e=>n(`deviceManager`,`adoptionListCandidateFilters`,`query`,e),adoptionListCandidates:e=>n(`deviceManager`,`adoptionListCandidates`,`query`,e),adoptionRefresh:e=>n(`deviceManager`,`adoptionRefresh`,`mutation`,e),adoptionAdopt:e=>n(`deviceManager`,`adoptionAdopt`,`mutation`,e),adoptionRelease:e=>n(`deviceManager`,`adoptionRelease`,`mutation`,e),adoptionResync:e=>n(`deviceManager`,`adoptionResync`,`mutation`,e),discoveryProviders:e=>n(`deviceManager`,`discoveryProviders`,`query`,e),discoverAllProviders:e=>n(`deviceManager`,`discoverAllProviders`,`mutation`,e),discoverProvider:e=>n(`deviceManager`,`discoverProvider`,`mutation`,e),providerCreationType:e=>n(`deviceManager`,`providerCreationType`,`query`,e),providerDiscoveryParamsSchema:e=>n(`deviceManager`,`providerDiscoveryParamsSchema`,`query`,e)},deviceProvider:{start:e=>n(`deviceProvider`,`start`,`mutation`,e),stop:e=>n(`deviceProvider`,`stop`,`mutation`,e),getStatus:e=>n(`deviceProvider`,`getStatus`,`query`,e),getDevices:e=>n(`deviceProvider`,`getDevices`,`query`,e),supportsDiscovery:e=>n(`deviceProvider`,`supportsDiscovery`,`query`,e),discoverDevices:e=>n(`deviceProvider`,`discoverDevices`,`mutation`,e),getDiscoveryParamsSchema:e=>n(`deviceProvider`,`getDiscoveryParamsSchema`,`query`,e),getManualCreationType:e=>n(`deviceProvider`,`getManualCreationType`,`query`,e),adoptDiscoveredDevice:e=>n(`deviceProvider`,`adoptDiscoveredDevice`,`mutation`,e),supportsManualCreation:e=>n(`deviceProvider`,`supportsManualCreation`,`query`,e),getChildCreationSchema:e=>n(`deviceProvider`,`getChildCreationSchema`,`query`,e),createDevice:e=>n(`deviceProvider`,`createDevice`,`mutation`,e),testCreationField:e=>n(`deviceProvider`,`testCreationField`,`mutation`,e)},deviceState:{getAllSnapshots:e=>n(`deviceState`,`getAllSnapshots`,`query`,e)},faceGallery:{listIdentities:e=>n(`faceGallery`,`listIdentities`,`query`,e),createIdentity:e=>n(`faceGallery`,`createIdentity`,`mutation`,e),renameIdentity:e=>n(`faceGallery`,`renameIdentity`,`mutation`,e),deleteIdentity:e=>n(`faceGallery`,`deleteIdentity`,`mutation`,e),listIdentitySamples:e=>n(`faceGallery`,`listIdentitySamples`,`query`,e),removeSample:e=>n(`faceGallery`,`removeSample`,`mutation`,e),listRecentFaces:e=>n(`faceGallery`,`listRecentFaces`,`query`,e),getFaceMedia:e=>n(`faceGallery`,`getFaceMedia`,`query`,e),assignFace:e=>n(`faceGallery`,`assignFace`,`mutation`,e),unassignFace:e=>n(`faceGallery`,`unassignFace`,`mutation`,e),deleteFace:e=>n(`faceGallery`,`deleteFace`,`mutation`,e),assignFaces:e=>n(`faceGallery`,`assignFaces`,`mutation`,e),unassignFaces:e=>n(`faceGallery`,`unassignFaces`,`mutation`,e),suggestFaceClusters:e=>n(`faceGallery`,`suggestFaceClusters`,`query`,e)},integrations:{list:e=>n(`integrations`,`list`,`query`,e),get:e=>n(`integrations`,`get`,`query`,e),getByAddonId:e=>n(`integrations`,`getByAddonId`,`query`,e),create:e=>n(`integrations`,`create`,`mutation`,e),update:e=>n(`integrations`,`update`,`mutation`,e),delete:e=>n(`integrations`,`delete`,`mutation`,e),getSettings:e=>n(`integrations`,`getSettings`,`query`,e),setSettings:e=>n(`integrations`,`setSettings`,`mutation`,e),getAvailableTypes:e=>n(`integrations`,`getAvailableTypes`,`query`,e),testConnection:e=>n(`integrations`,`testConnection`,`mutation`,e)},llm:{generate:e=>n(`llm`,`generate`,`mutation`,e),generateVision:e=>n(`llm`,`generateVision`,`mutation`,e),listProfileKinds:e=>n(`llm`,`listProfileKinds`,`query`,e),listProfiles:e=>n(`llm`,`listProfiles`,`query`,e),upsertProfile:e=>n(`llm`,`upsertProfile`,`mutation`,e),deleteProfile:e=>n(`llm`,`deleteProfile`,`mutation`,e),testProfile:e=>n(`llm`,`testProfile`,`mutation`,e),listModels:e=>n(`llm`,`listModels`,`query`,e),getDefaults:e=>n(`llm`,`getDefaults`,`query`,e),setDefault:e=>n(`llm`,`setDefault`,`mutation`,e),getUsage:e=>n(`llm`,`getUsage`,`query`,e),listModelCatalog:e=>n(`llm`,`listModelCatalog`,`query`,e),listRuntimeNodes:e=>n(`llm`,`listRuntimeNodes`,`query`,e),listNodeModels:e=>n(`llm`,`listNodeModels`,`query`,e),installModel:e=>n(`llm`,`installModel`,`mutation`,e),deleteModel:e=>n(`llm`,`deleteModel`,`mutation`,e),getRuntimeStatus:e=>n(`llm`,`getRuntimeStatus`,`query`,e),startRuntime:e=>n(`llm`,`startRuntime`,`mutation`,e),stopRuntime:e=>n(`llm`,`stopRuntime`,`mutation`,e)},localNetwork:{list:e=>n(`localNetwork`,`list`,`query`,e),getPreferred:e=>n(`localNetwork`,`getPreferred`,`query`,e),getConnectionEndpoints:e=>n(`localNetwork`,`getConnectionEndpoints`,`query`,e),getAllowedAddresses:e=>n(`localNetwork`,`getAllowedAddresses`,`query`,e),setAllowedAddresses:e=>n(`localNetwork`,`setAllowedAddresses`,`mutation`,e),resetAllowlistToBestMatch:e=>n(`localNetwork`,`resetAllowlistToBestMatch`,`mutation`,e)},meshNetwork:{getStatus:e=>n(`meshNetwork`,`getStatus`,`query`,e),join:e=>n(`meshNetwork`,`join`,`mutation`,e),startLogin:e=>n(`meshNetwork`,`startLogin`,`mutation`,e),leave:e=>n(`meshNetwork`,`leave`,`mutation`,e),logout:e=>n(`meshNetwork`,`logout`,`mutation`,e),listPeers:e=>n(`meshNetwork`,`listPeers`,`query`,e),testConnection:e=>n(`meshNetwork`,`testConnection`,`mutation`,e)},metricsProvider:{collectSnapshot:e=>n(`metricsProvider`,`collectSnapshot`,`query`,e),getCached:e=>n(`metricsProvider`,`getCached`,`query`,e),getCurrent:e=>n(`metricsProvider`,`getCurrent`,`query`,e),getDiskSpace:e=>n(`metricsProvider`,`getDiskSpace`,`query`,e),getGpuInfo:e=>n(`metricsProvider`,`getGpuInfo`,`query`,e),getCpuTemperature:e=>n(`metricsProvider`,`getCpuTemperature`,`query`,e),getProcessStats:e=>n(`metricsProvider`,`getProcessStats`,`query`,e),listAddonInstances:e=>n(`metricsProvider`,`listAddonInstances`,`query`,e),getAddonStats:e=>n(`metricsProvider`,`getAddonStats`,`query`,e),listNodeProcesses:e=>n(`metricsProvider`,`listNodeProcesses`,`query`,e),killProcess:e=>n(`metricsProvider`,`killProcess`,`mutation`,e),dumpHeapSnapshot:e=>n(`metricsProvider`,`dumpHeapSnapshot`,`mutation`,e)},mqttBroker:{listBrokers:e=>n(`mqttBroker`,`listBrokers`,`query`,e),getBrokerConfig:e=>n(`mqttBroker`,`getBrokerConfig`,`query`,e),addBroker:e=>n(`mqttBroker`,`addBroker`,`mutation`,e),removeBroker:e=>n(`mqttBroker`,`removeBroker`,`mutation`,e),testConnection:e=>n(`mqttBroker`,`testConnection`,`mutation`,e),startEmbeddedBroker:e=>n(`mqttBroker`,`startEmbeddedBroker`,`mutation`,e),stopEmbeddedBroker:e=>n(`mqttBroker`,`stopEmbeddedBroker`,`mutation`,e),getStatus:e=>n(`mqttBroker`,`getStatus`,`query`,e)},networkAccess:{start:e=>n(`networkAccess`,`start`,`mutation`,e),stop:e=>n(`networkAccess`,`stop`,`mutation`,e),getEndpoint:e=>n(`networkAccess`,`getEndpoint`,`query`,e),getStatus:e=>n(`networkAccess`,`getStatus`,`query`,e),listEndpoints:e=>n(`networkAccess`,`listEndpoints`,`query`,e)},networkQuality:{getAllStats:e=>n(`networkQuality`,`getAllStats`,`query`,e)},nodes:{topology:e=>n(`nodes`,`topology`,`query`,e),deployAddon:e=>n(`nodes`,`deployAddon`,`mutation`,e),undeployAddon:e=>n(`nodes`,`undeployAddon`,`mutation`,e),restartAddon:e=>n(`nodes`,`restartAddon`,`mutation`,e),restartProcess:e=>n(`nodes`,`restartProcess`,`mutation`,e),restartNode:e=>n(`nodes`,`restartNode`,`mutation`,e),shutdownNode:e=>n(`nodes`,`shutdownNode`,`mutation`,e),renameNode:e=>n(`nodes`,`renameNode`,`mutation`,e),clusterAddonStatus:e=>n(`nodes`,`clusterAddonStatus`,`query`,e),getCapUsageGraph:e=>n(`nodes`,`getCapUsageGraph`,`query`,e),getNodeAddons:e=>n(`nodes`,`getNodeAddons`,`query`,e),setProcessLogLevel:e=>n(`nodes`,`setProcessLogLevel`,`mutation`,e),executeQuery:e=>n(`nodes`,`executeQuery`,`mutation`,e)},notificationOutput:{listTargetKinds:e=>n(`notificationOutput`,`listTargetKinds`,`query`,e),listTargets:e=>n(`notificationOutput`,`listTargets`,`query`,e),discoverTargets:e=>n(`notificationOutput`,`discoverTargets`,`query`,e),send:e=>n(`notificationOutput`,`send`,`mutation`,e),testTarget:e=>n(`notificationOutput`,`testTarget`,`mutation`,e),upsertTarget:e=>n(`notificationOutput`,`upsertTarget`,`mutation`,e),deleteTarget:e=>n(`notificationOutput`,`deleteTarget`,`mutation`,e),setTargetEnabled:e=>n(`notificationOutput`,`setTargetEnabled`,`mutation`,e)},pipelineExecutor:{getAvailableEngines:e=>n(`pipelineExecutor`,`getAvailableEngines`,`query`,e),getSelectedEngine:e=>n(`pipelineExecutor`,`getSelectedEngine`,`query`,e),getDefaultSteps:e=>n(`pipelineExecutor`,`getDefaultSteps`,`query`,e),getEngineProvisioning:e=>n(`pipelineExecutor`,`getEngineProvisioning`,`query`,e),getVideoPipelineSteps:e=>n(`pipelineExecutor`,`getVideoPipelineSteps`,`query`,e),setVideoPipelineSteps:e=>n(`pipelineExecutor`,`setVideoPipelineSteps`,`mutation`,e),clearDeviceOverrides:e=>n(`pipelineExecutor`,`clearDeviceOverrides`,`mutation`,e),getSchema:e=>n(`pipelineExecutor`,`getSchema`,`query`,e),getGlobalSteps:e=>n(`pipelineExecutor`,`getGlobalSteps`,`query`,e),getGlobalPipelineConfig:e=>n(`pipelineExecutor`,`getGlobalPipelineConfig`,`query`,e),getOrchestratorConfigSchema:e=>n(`pipelineExecutor`,`getOrchestratorConfigSchema`,`query`,e),validatePipeline:e=>n(`pipelineExecutor`,`validatePipeline`,`query`,e),listTemplates:e=>n(`pipelineExecutor`,`listTemplates`,`query`,e),saveTemplate:e=>n(`pipelineExecutor`,`saveTemplate`,`mutation`,e),updateTemplate:e=>n(`pipelineExecutor`,`updateTemplate`,`mutation`,e),deleteTemplate:e=>n(`pipelineExecutor`,`deleteTemplate`,`mutation`,e),getCapabilities:e=>n(`pipelineExecutor`,`getCapabilities`,`query`,e),getAddonModels:e=>n(`pipelineExecutor`,`getAddonModels`,`query`,e),downloadModel:e=>n(`pipelineExecutor`,`downloadModel`,`mutation`,e),deleteModel:e=>n(`pipelineExecutor`,`deleteModel`,`mutation`,e),cacheFrameInPool:e=>n(`pipelineExecutor`,`cacheFrameInPool`,`mutation`,e),inferCached:e=>n(`pipelineExecutor`,`inferCached`,`mutation`,e),uncacheFrame:e=>n(`pipelineExecutor`,`uncacheFrame`,`mutation`,e),getEffectiveTuning:e=>n(`pipelineExecutor`,`getEffectiveTuning`,`query`,e),listLoadedEngines:e=>n(`pipelineExecutor`,`listLoadedEngines`,`query`,e),spinEngine:e=>n(`pipelineExecutor`,`spinEngine`,`mutation`,e),killEngine:e=>n(`pipelineExecutor`,`killEngine`,`mutation`,e),listReferenceImages:e=>n(`pipelineExecutor`,`listReferenceImages`,`query`,e),getReferenceImage:e=>n(`pipelineExecutor`,`getReferenceImage`,`query`,e),getReferenceAudioFiles:e=>n(`pipelineExecutor`,`getReferenceAudioFiles`,`query`,e),getReferenceAudio:e=>n(`pipelineExecutor`,`getReferenceAudio`,`query`,e),getAudioCapabilities:e=>n(`pipelineExecutor`,`getAudioCapabilities`,`query`,e),runAudioTest:e=>n(`pipelineExecutor`,`runAudioTest`,`mutation`,e),getDetectionConfigSchema:e=>n(`pipelineExecutor`,`getDetectionConfigSchema`,`query`,e)},pipelineOrchestrator:{rebalance:e=>n(`pipelineOrchestrator`,`rebalance`,`mutation`,e),getPipelineAssignments:e=>n(`pipelineOrchestrator`,`getPipelineAssignments`,`query`,e),getAgentLoad:e=>n(`pipelineOrchestrator`,`getAgentLoad`,`query`,e),getGlobalMetrics:e=>n(`pipelineOrchestrator`,`getGlobalMetrics`,`query`,e),getCapabilityBindings:e=>n(`pipelineOrchestrator`,`getCapabilityBindings`,`query`,e),setCapabilityBinding:e=>n(`pipelineOrchestrator`,`setCapabilityBinding`,`mutation`,e),getIngestOwner:e=>n(`pipelineOrchestrator`,`getIngestOwner`,`query`,e),getAudioNodeLoad:e=>n(`pipelineOrchestrator`,`getAudioNodeLoad`,`query`,e),getAgentSettings:e=>n(`pipelineOrchestrator`,`getAgentSettings`,`query`,e),listAgentSettings:e=>n(`pipelineOrchestrator`,`listAgentSettings`,`query`,e),removeAgentSettings:e=>n(`pipelineOrchestrator`,`removeAgentSettings`,`mutation`,e),setAgentMaxCameras:e=>n(`pipelineOrchestrator`,`setAgentMaxCameras`,`mutation`,e),setAgentDetectWeight:e=>n(`pipelineOrchestrator`,`setAgentDetectWeight`,`mutation`,e),setAgentCapabilities:e=>n(`pipelineOrchestrator`,`setAgentCapabilities`,`mutation`,e),setAgentReachableHost:e=>n(`pipelineOrchestrator`,`setAgentReachableHost`,`mutation`,e),setAgentInferenceDevices:e=>n(`pipelineOrchestrator`,`setAgentInferenceDevices`,`mutation`,e),getNodeInferenceDevices:e=>n(`pipelineOrchestrator`,`getNodeInferenceDevices`,`query`,e),resetNodePipelineDefaults:e=>n(`pipelineOrchestrator`,`resetNodePipelineDefaults`,`mutation`,e),getCameraStatuses:e=>n(`pipelineOrchestrator`,`getCameraStatuses`,`query`,e),listTemplates:e=>n(`pipelineOrchestrator`,`listTemplates`,`query`,e),saveTemplate:e=>n(`pipelineOrchestrator`,`saveTemplate`,`mutation`,e),updateTemplate:e=>n(`pipelineOrchestrator`,`updateTemplate`,`mutation`,e),deleteTemplate:e=>n(`pipelineOrchestrator`,`deleteTemplate`,`mutation`,e)},pipelineRunner:{attachCamera:e=>n(`pipelineRunner`,`attachCamera`,`mutation`,e),reportMotion:e=>n(`pipelineRunner`,`reportMotion`,`mutation`,e),getLocalLoad:e=>n(`pipelineRunner`,`getLocalLoad`,`query`,e),getLocalMetrics:e=>n(`pipelineRunner`,`getLocalMetrics`,`query`,e),getAllCameraMetrics:e=>n(`pipelineRunner`,`getAllCameraMetrics`,`query`,e),getLocalCameras:e=>n(`pipelineRunner`,`getLocalCameras`,`query`,e),getNativeCrop:e=>n(`pipelineRunner`,`getNativeCrop`,`query`,e)},plateGallery:{getPlateMedia:e=>n(`plateGallery`,`getPlateMedia`,`query`,e),searchPlates:e=>n(`plateGallery`,`searchPlates`,`query`,e),suggestPlateClusters:e=>n(`plateGallery`,`suggestPlateClusters`,`query`,e),correctPlateText:e=>n(`plateGallery`,`correctPlateText`,`mutation`,e),deletePlate:e=>n(`plateGallery`,`deletePlate`,`mutation`,e),listVehicles:e=>n(`plateGallery`,`listVehicles`,`query`,e),createVehicle:e=>n(`plateGallery`,`createVehicle`,`mutation`,e),renameVehicle:e=>n(`plateGallery`,`renameVehicle`,`mutation`,e),deleteVehicle:e=>n(`plateGallery`,`deleteVehicle`,`mutation`,e),listVehicleSamples:e=>n(`plateGallery`,`listVehicleSamples`,`query`,e),removeVehicleSample:e=>n(`plateGallery`,`removeVehicleSample`,`mutation`,e),assignPlate:e=>n(`plateGallery`,`assignPlate`,`mutation`,e),unassignPlate:e=>n(`plateGallery`,`unassignPlate`,`mutation`,e),assignPlates:e=>n(`plateGallery`,`assignPlates`,`mutation`,e),unassignPlates:e=>n(`plateGallery`,`unassignPlates`,`mutation`,e)},recording:{getStorageUsage:e=>n(`recording`,`getStorageUsage`,`query`,e),listOpsLog:e=>n(`recording`,`listOpsLog`,`query`,e)},recordingExport:{getExport:e=>n(`recordingExport`,`getExport`,`query`,e),cancelExport:e=>n(`recordingExport`,`cancelExport`,`mutation`,e),deleteExport:e=>n(`recordingExport`,`deleteExport`,`mutation`,e),getDownloadUrl:e=>n(`recordingExport`,`getDownloadUrl`,`query`,e)},serverManagement:{getServerPackageStatus:e=>n(`serverManagement`,`getServerPackageStatus`,`query`,e),checkServerUpdate:e=>n(`serverManagement`,`checkServerUpdate`,`mutation`,e),applyServerUpdate:e=>n(`serverManagement`,`applyServerUpdate`,`mutation`,e),rollbackServerUpdate:e=>n(`serverManagement`,`rollbackServerUpdate`,`mutation`,e),restartServer:e=>n(`serverManagement`,`restartServer`,`mutation`,e)},settingsStore:{get:e=>n(`settingsStore`,`get`,`query`,e),set:e=>n(`settingsStore`,`set`,`mutation`,e),query:e=>n(`settingsStore`,`query`,`query`,e),insert:e=>n(`settingsStore`,`insert`,`mutation`,e),update:e=>n(`settingsStore`,`update`,`mutation`,e),delete:e=>n(`settingsStore`,`delete`,`mutation`,e),count:e=>n(`settingsStore`,`count`,`query`,e),histogram:e=>n(`settingsStore`,`histogram`,`query`,e),isEmpty:e=>n(`settingsStore`,`isEmpty`,`query`,e),declareCollection:e=>n(`settingsStore`,`declareCollection`,`mutation`,e)},storage:{resolve:e=>n(`storage`,`resolve`,`query`,e),write:e=>n(`storage`,`write`,`mutation`,e),read:e=>n(`storage`,`read`,`query`,e),exists:e=>n(`storage`,`exists`,`query`,e),list:e=>n(`storage`,`list`,`query`,e),delete:e=>n(`storage`,`delete`,`mutation`,e),getAvailableSpace:e=>n(`storage`,`getAvailableSpace`,`query`,e),beginUpload:e=>n(`storage`,`beginUpload`,`mutation`,e),writeChunk:e=>n(`storage`,`writeChunk`,`mutation`,e),finalizeUpload:e=>n(`storage`,`finalizeUpload`,`mutation`,e),abortUpload:e=>n(`storage`,`abortUpload`,`mutation`,e),beginDownload:e=>n(`storage`,`beginDownload`,`mutation`,e),readChunk:e=>n(`storage`,`readChunk`,`query`,e),endDownload:e=>n(`storage`,`endDownload`,`mutation`,e),listLocations:e=>n(`storage`,`listLocations`,`query`,e),getDefaultLocation:e=>n(`storage`,`getDefaultLocation`,`query`,e),listLocationDeclarations:e=>n(`storage`,`listLocationDeclarations`,`query`,e),upsertLocation:e=>n(`storage`,`upsertLocation`,`mutation`,e),deleteLocation:e=>n(`storage`,`deleteLocation`,`mutation`,e),testLocation:e=>n(`storage`,`testLocation`,`query`,e),listProviders:e=>n(`storage`,`listProviders`,`query`,e),testConfig:e=>n(`storage`,`testConfig`,`query`,e)},streamBroker:{listAllCameraStreams:e=>n(`streamBroker`,`listAllCameraStreams`,`query`,e),listAllProfileSlots:e=>n(`streamBroker`,`listAllProfileSlots`,`query`,e),getBrokerStats:e=>n(`streamBroker`,`getBrokerStats`,`query`,e),probeStream:e=>n(`streamBroker`,`probeStream`,`mutation`,e),listClients:e=>n(`streamBroker`,`listClients`,`query`,e),killClient:e=>n(`streamBroker`,`killClient`,`mutation`,e),getStreamUrl:e=>n(`streamBroker`,`getStreamUrl`,`query`,e),getStreamWithCodec:e=>n(`streamBroker`,`getStreamWithCodec`,`mutation`,e),releaseStreamWithCodec:e=>n(`streamBroker`,`releaseStreamWithCodec`,`mutation`,e),subscribeAudioChunks:e=>n(`streamBroker`,`subscribeAudioChunks`,`mutation`,e),pullAudioChunks:e=>n(`streamBroker`,`pullAudioChunks`,`query`,e),unsubscribeAudioChunks:e=>n(`streamBroker`,`unsubscribeAudioChunks`,`mutation`,e),subscribeFrames:e=>n(`streamBroker`,`subscribeFrames`,`mutation`,e),pullFrameHandles:e=>n(`streamBroker`,`pullFrameHandles`,`query`,e),unsubscribeFrames:e=>n(`streamBroker`,`unsubscribeFrames`,`mutation`,e),setPreBufferDuration:e=>n(`streamBroker`,`setPreBufferDuration`,`mutation`,e),getPreBufferInfo:e=>n(`streamBroker`,`getPreBufferInfo`,`query`,e),getRtspPort:e=>n(`streamBroker`,`getRtspPort`,`query`,e),getAllRtspEntries:e=>n(`streamBroker`,`getAllRtspEntries`,`query`,e),getRtspEntry:e=>n(`streamBroker`,`getRtspEntry`,`query`,e),regenerateRtspToken:e=>n(`streamBroker`,`regenerateRtspToken`,`mutation`,e),setRtspEnabled:e=>n(`streamBroker`,`setRtspEnabled`,`mutation`,e),isRtspEnabled:e=>n(`streamBroker`,`isRtspEnabled`,`query`,e)},system:{info:e=>n(`system`,`info`,`query`,e),health:e=>n(`system`,`health`,`query`,e),featureFlags:e=>n(`system`,`featureFlags`,`query`,e),networkAddresses:e=>n(`system`,`networkAddresses`,`query`,e),getRetentionConfig:e=>n(`system`,`getRetentionConfig`,`query`,e),setRetentionConfig:e=>n(`system`,`setRetentionConfig`,`mutation`,e),forceRetentionCleanup:e=>n(`system`,`forceRetentionCleanup`,`mutation`,e)},toast:{onToast:(e,t)=>n(`toast`,`onToast`,`subscription`,e,t)},turnProvider:{getTurnServers:e=>n(`turnProvider`,`getTurnServers`,`query`,e)},userManagement:{listUsers:e=>n(`userManagement`,`listUsers`,`query`,e),createUser:e=>n(`userManagement`,`createUser`,`mutation`,e),updateUser:e=>n(`userManagement`,`updateUser`,`mutation`,e),deleteUser:e=>n(`userManagement`,`deleteUser`,`mutation`,e),resetPassword:e=>n(`userManagement`,`resetPassword`,`mutation`,e),setUserScopes:e=>n(`userManagement`,`setUserScopes`,`mutation`,e),validateCredentials:e=>n(`userManagement`,`validateCredentials`,`mutation`,e),listApiKeys:e=>n(`userManagement`,`listApiKeys`,`query`,e),createApiKey:e=>n(`userManagement`,`createApiKey`,`mutation`,e),revokeApiKey:e=>n(`userManagement`,`revokeApiKey`,`mutation`,e),validateApiKey:e=>n(`userManagement`,`validateApiKey`,`mutation`,e),createScopedToken:e=>n(`userManagement`,`createScopedToken`,`mutation`,e),revokeScopedToken:e=>n(`userManagement`,`revokeScopedToken`,`mutation`,e),validateScopedToken:e=>n(`userManagement`,`validateScopedToken`,`query`,e),listScopedTokens:e=>n(`userManagement`,`listScopedTokens`,`query`,e),setupTotp:e=>n(`userManagement`,`setupTotp`,`mutation`,e),confirmTotp:e=>n(`userManagement`,`confirmTotp`,`mutation`,e),disableTotp:e=>n(`userManagement`,`disableTotp`,`mutation`,e),getTotpStatus:e=>n(`userManagement`,`getTotpStatus`,`query`,e),verifyTotp:e=>n(`userManagement`,`verifyTotp`,`mutation`,e),oauthIssueCode:e=>n(`userManagement`,`oauthIssueCode`,`mutation`,e),oauthExchangeCode:e=>n(`userManagement`,`oauthExchangeCode`,`mutation`,e),oauthRefresh:e=>n(`userManagement`,`oauthRefresh`,`mutation`,e),oauthVerifyAccessToken:e=>n(`userManagement`,`oauthVerifyAccessToken`,`query`,e),listOauthSessions:e=>n(`userManagement`,`listOauthSessions`,`query`,e),revokeOauthSession:e=>n(`userManagement`,`revokeOauthSession`,`mutation`,e)}}}var th=`device.state-changed`,nh=`capability.binding-changed`,rh=`device.registered`,ih=`device.unregistered`,ah=`device.updated`,oh=class{api;stateMirror=new Map;bindings=new Map;devices=new Map;handleListeners=new Map;globalStateListeners=new Set;capListeners=new Map;deviceListeners=new Map;addedListeners=new Set;removedListeners=new Set;pendingWaits=new Set;stateSource;bridges=[];initialized=!1;initPromise=null;constructor(e){this.api=e,this.stateSource=Ls(this.stateMirror,this.handleListeners,this.api)}async init(e=15e3){if(!this.initialized){if(this.initPromise)return this.initPromise;this.initPromise=(async()=>{let t=(t,n)=>Number.isFinite(e)?new Promise((r,a)=>{let o=setTimeout(()=>a(Error(`SystemMirror.init: '${n}' timed out after ${e}ms`)),e);t.then(e=>{clearTimeout(o),r(e)},e=>{clearTimeout(o),a(e)})}):t,[n,r,a]=await Promise.all([t(this.api.deviceManager.getAllBindings.query({}),`deviceManager.getAllBindings`),t(this.api.deviceState.getAllSnapshots.query({}),`deviceState.getAllSnapshots`),t(this.api.deviceManager.listAll.query({}),`deviceManager.listAll`)]);for(let e of n)this.bindings.set(e.deviceId,e);for(let[e,t]of Object.entries(r)){let n=Number(e);if(!Number.isFinite(n))continue;let r=new Map;for(let[e,n]of Object.entries(t))r.set(e,n);this.stateMirror.set(n,r)}for(let e of a)this.devices.set(e.id,e);try{this.subscribeBus()}catch{}this.initialized=!0})();try{await this.initPromise}finally{this.initPromise=null}}}isReady(){return this.initialized}async awaitReady(){if(!this.initialized)return this.initPromise?this.initPromise:this.init()}dispose(){for(let e of this.bridges)try{e.unsubscribe()}catch{}this.bridges=[],this.handleListeners.clear(),this.globalStateListeners.clear(),this.capListeners.clear(),this.deviceListeners.clear(),this.addedListeners.clear(),this.removedListeners.clear(),this.pendingWaits.clear(),this.initialized=!1}getDeviceById(e){let t=this.bindings.get(e);return t?zs(this.api,t,{stateSource:this.stateSource}):null}getDeviceByName(e){for(let t of this.devices.values())if(t.name===e)return this.getDeviceById(t.id);return null}getDeviceByStableId(e){for(let t of this.devices.values())if(t.stableId===e)return this.getDeviceById(t.id);return null}getDevicesByAddon(e){return this.query({addonId:e})}getDevicesByType(e){return this.query({type:e})}getDeviceInfo(e){return this.devices.get(e)??null}getAllDevices(){let e=[];for(let t of this.bindings.keys()){let n=this.getDeviceById(t);n&&e.push(n)}return e}filterByCap(e){return this.query({caps:e})}query(e={}){let t=[];for(let[n,r]of this.bindings){let a=this.devices.get(n);if(e.id!==void 0&&!sh(n,e.id)||e.stableId!==void 0&&(!a||!sh(a.stableId,e.stableId))||e.addonId!==void 0&&(!a||!sh(a.addonId,e.addonId))||e.type!==void 0&&(!a||!sh(a.type,e.type)))continue;if(e.caps!==void 0){let t=ch(e.caps),n=new Set(r.entries.map(e=>e.capName));if(!t.every(e=>n.has(e)))continue}if(e.anyCap!==void 0){let t=ch(e.anyCap),n=new Set(r.entries.map(e=>e.capName));if(!t.some(e=>n.has(e)))continue}if(e.name!==void 0&&(!a||!lh(a.name,e.name))||e.online!==void 0&&(!a||a.online!==e.online))continue;if(e.parentDeviceId!==void 0){if(!a)continue;let t=e.parentDeviceId;if((a.parentDeviceId??null)!==t)continue}if(e.feature!==void 0&&(!a||!ch(e.feature).every(e=>a.features.includes(e)))||e.isCamera!==void 0&&(!a||a.isCamera!==e.isCamera))continue;let o=this.getDeviceById(n);if(o){if(e.where&&a){if(!e.where(a,o))continue}else if(e.where&&!a)continue;t.push(o)}}return t}whereState(e,t){let n=[];for(let[r,a]of this.stateMirror){let o=a.get(e);if(!o||!t(o,r))continue;let s=this.getDeviceById(r);s&&n.push(s)}return n}mapState(e,t){let n=[];for(let[r,a]of this.stateMirror){let o=a.get(e);o&&n.push(t(o,r))}return n}findState(e,t){for(let[n,r]of this.stateMirror){let a=r.get(e);if(a&&t(a,n))return this.getDeviceById(n)}return null}countByCap(e){let t=0;for(let n of this.bindings.values())n.entries.some(t=>t.capName===e)&&t++;return t}countByState(e,t){let n=0;for(let[r,a]of this.stateMirror){let o=a.get(e);o&&t(o,r)&&n++}return n}listen(e){return this.globalStateListeners.add(e),()=>{this.globalStateListeners.delete(e)}}listenCap(e,t){let n=this.capListeners.get(e);return n||(n=new Set,this.capListeners.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&this.capListeners.delete(e)}}listenDevice(e,t){let n=this.deviceListeners.get(e);return n||(n=new Set,this.deviceListeners.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&this.deviceListeners.delete(e)}}onDeviceAdded(e){return this.addedListeners.add(e),()=>{this.addedListeners.delete(e)}}onDeviceRemoved(e){return this.removedListeners.add(e),()=>{this.removedListeners.delete(e)}}waitForState(e,t,n,r=3e4){return new Promise((a,o)=>{let s=(()=>{let r=this.stateMirror.get(e)?.get(t);return r&&n(r)?r:null})();if(s){a(s);return}let c=null,l=this.listenDevice(e,(e,r,o)=>{r===t&&o&&n(o)&&(c&&clearTimeout(c),l(),a(o))});Number.isFinite(r)&&(c=setTimeout(()=>{l(),o(Error(`waitForState timed out after ${r}ms (deviceId=${e}, capName=${t})`))},r))})}waitForDevice(e,t=3e4){return new Promise((n,r)=>{let a=this.getDeviceById(e);if(a){n(a);return}let o=null,s=this.onDeviceAdded(t=>{if(t!==e)return;let r=this.getDeviceById(t);r&&(o&&clearTimeout(o),s(),n(r))});Number.isFinite(t)&&(o=setTimeout(()=>{s(),r(Error(`waitForDevice timed out after ${t}ms (deviceId=${e})`))},t))})}async forEachCap(e,t){for(let n of this.filterByCap(e))await t(n)}async invokeCap(e,t,n,r={}){let a=this.filterByCap(e),o=Math.max(1,r.parallelism??a.length),s=[];for(let r=0;r<a.length;r+=o){let c=a.slice(r,r+o),l=await Promise.allSettled(c.map(async r=>{let a=r[e];if(!a||typeof a[t]!=`function`)throw Error(`device '${r.deviceId}' does not expose '${e}.${t}'`);return await a[t](n)}));for(let e=0;e<l.length;e++){let t=c[e],n=l[e];n.status===`fulfilled`?s.push({deviceId:t.deviceId,ok:!0,result:n.value}):s.push({deviceId:t.deviceId,ok:!1,error:n.reason})}}return s}summary(){let e={},t={},n={},r=0,a=0;for(let t of this.bindings.values())for(let n of t.entries)e[n.capName]=(e[n.capName]??0)+1;for(let e of this.devices.values())t[e.addonId]=(t[e.addonId]??0)+1,n[e.type]=(n[e.type]??0)+1,e.online?r++:a++;return{totalDevices:this.bindings.size,online:r,offline:a,byCap:e,byAddon:t,byType:n,statedDevices:this.stateMirror.size}}dump(e){let t=e=>{let t=this.devices.get(e)??null,n=this.bindings.get(e)??null,r={},a=this.stateMirror.get(e);if(a)for(let[e,t]of a)r[e]={...t};return{deviceId:e,info:t,binding:n?{...n,entries:n.entries.map(e=>({...e}))}:null,state:r}};if(e!==void 0)return t(e);let n=[];for(let e of this.bindings.keys())n.push(t(e));return n}getRawMirror(){return this.stateMirror}getSystemState(){let e=new Map;for(let[t,n]of this.stateMirror){let r=new Map;for(let[e,t]of n)r.set(e,{...t});e.set(t,r)}return e}subscribeBus(){if(!this.api.live?.onEvent)return;let e=this.api.live.onEvent;this.bridges.push(e.subscribe({category:th},{onData:e=>{let t=e.data;!t||typeof t.deviceId!=`number`||typeof t.capName!=`string`||this.applyStateUpdate(t.deviceId,t.capName,t.slice)}})),this.bridges.push(e.subscribe({category:nh},{onData:e=>{let t=e.data,n=typeof t?.deviceId==`number`?t.deviceId:t?.source?.type===`device`&&typeof t.source.id==`number`?t.source.id:null;n!==null&&this.refreshBinding(n)}})),this.bridges.push(e.subscribe({category:rh},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.refreshDeviceMetadata(t.deviceId,`added`)}})),this.bridges.push(e.subscribe({category:ih},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.applyDeviceRemoval(t.deviceId)}})),this.bridges.push(e.subscribe({category:ah},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.refreshDeviceMetadata(t.deviceId,`updated`)}}))}applyStateUpdate(e,t,n){let r=this.stateMirror.get(e);r||(r=new Map,this.stateMirror.set(e,r)),n===void 0?r.delete(t):r.set(t,n);let a=`${e}:${t}`,o=this.handleListeners.get(a);if(o)for(let e of o)try{e(n)}catch{}for(let r of this.globalStateListeners)try{r(e,t,n)}catch{}let s=this.capListeners.get(t);if(s)for(let t of s)try{t(e,n)}catch{}let c=this.deviceListeners.get(e);if(c)for(let r of c)try{r(e,t,n)}catch{}}applyDeviceRemoval(e){let t=this.devices.get(e)??null;this.bindings.delete(e),this.devices.delete(e),this.stateMirror.delete(e);for(let n of this.removedListeners)try{n(e,t)}catch{}}async refreshBinding(e){try{let t=(await this.api.deviceManager.getAllBindings.query({})).find(t=>t.deviceId===e);t?this.bindings.set(e,t):this.applyDeviceRemoval(e)}catch{}}async refreshDeviceMetadata(e,t){try{let n=(await this.api.deviceManager.listAll.query({})).find(t=>t.id===e);if(!n)return;let r=!this.devices.has(e);if(this.devices.set(e,n),t===`added`&&r){await this.refreshBinding(e);for(let t of this.addedListeners)try{t(e,n)}catch{}}}catch{}}};function sh(e,t){return Array.isArray(t)?t.includes(e):e===t}function ch(e){return Array.isArray(e)?e:[e]}function lh(e,t){return typeof t==`string`?e===t:t instanceof RegExp?t.test(e):`exact`in t?e===t.exact:`contains`in t?e.toLowerCase().includes(t.contains.toLowerCase()):!1}var uh=B({id:P(),label:P(),icon:P(),path:P(),remoteName:P(),bundle:P(),section:P().optional(),sectionLabel:P().optional()}),dh=B({addonId:P(),page:uh,bundleUrl:P()}),fh={name:`addon-pages`,scope:`system`,mode:`singleton`,methods:{listPages:K(R(),z(dh).readonly())}},ph=B({id:P(),label:P(),icon:P(),path:P(),remoteName:P(),bundle:P(),section:P().optional(),sectionLabel:P().optional()}),mh={name:`addon-pages-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listPages:K(R(),z(ph).readonly())}},hh=B({method:H([`GET`,`POST`,`PUT`,`DELETE`,`PATCH`]),path:P(),access:H([`public`,`authenticated`,`admin`]).optional(),description:P().optional()}),gh=B({method:P(),path:P(),params:V(P(),P()),query:V(P(),P()),body:L(),headers:V(P(),P()),user:B({id:P(),username:P(),isAdmin:I()}).optional(),scopedToken:L().optional()}),_h=B({status:F().int(),headers:V(P(),P()),redirectUrl:P().nullable(),body:L().optional(),contentType:P().optional()}),vh={name:`addon-routes`,scope:`system`,mode:`collection`,internal:!0,methods:{getRoutes:K(R(),z(hh)),invoke:K(gh,_h,{kind:`mutation`})},mount:{kind:`skip`}},yh=B({id:P(),label:P(),icon:P(),order:F().optional()}),bh=B({id:P(),title:P(),description:P().optional(),style:H([`card`,`accordion`]).optional(),defaultCollapsed:I().optional(),columns:Co([U(1),U(2),U(3),U(4)]).optional(),tab:P().optional(),location:H([`settings`,`top-tab`]).optional(),order:F().optional(),fields:z(fo())}),xh=B({tabs:z(yh).optional(),sections:z(bh)}),Sh=V(P(),L()),Ch=B({success:U(!0)}),wh={name:`addon-settings`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{getGlobalSettings:K(B({addonId:P(),nodeId:P().optional(),overlay:V(P(),L()).optional(),cap:P().optional()}),xh.nullable()),updateGlobalSettings:K(B({addonId:P(),nodeId:P().optional(),patch:Sh}),Ch,{kind:`mutation`,auth:`admin`}),getDeviceSettings:K(B({addonId:P(),deviceId:F(),nodeId:P().optional()}),xh.nullable()),updateDeviceSettings:K(B({addonId:P(),deviceId:F(),nodeId:P().optional(),patch:Sh}),Ch,{kind:`mutation`,auth:`admin`})}},Th=H([`device-tab`,`dashboard`,`integration-detail`]),Eh=H([`xs`,`sm`,`md`,`lg`,`xl`]),Dh=B({remoteName:P(),exposedModule:P(),componentKey:P().optional()}),Oh=B({tab:P(),subTab:P().optional(),label:P(),order:F().optional(),kind:U(`remote`),remote:Dh,stableId:P(),description:P().optional(),icon:P().optional(),bundle:P(),hosts:z(Th).readonly(),requires:B({deviceContext:I().default(!1),integrationContext:I().default(!1)}),preAuth:I().optional().default(!1),defaultSize:Eh.default(`md`),allowedSizes:z(Eh).readonly().default([`sm`,`md`,`lg`]),defaultColumns:F().int().min(1).max(12).default(6),defaultRows:F().int().min(1).max(12).default(1)}),kh={name:`addon-widgets-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listWidgets:K(R(),z(Oh).readonly())}},Ah=Oh.extend({addonId:P(),bundleUrl:P()}),jh={name:`addon-widgets`,scope:`system`,mode:`singleton`,methods:{listWidgets:K(R(),z(Ah).readonly())}},Mh=B({deviceIds:z(F()).readonly().optional(),classNames:z(P()).readonly().optional(),zoneIds:z(P()).readonly().optional(),minConfidence:F().optional(),source:H([`pipeline`,`onboard`,`any`]).optional(),schedule:B({days:z(F()).readonly(),startHour:F(),endHour:F()}).optional(),cooldownSeconds:F().optional(),minDwellSeconds:F().optional(),eventTypeTokens:z(P()).readonly().optional(),clipDescription:B({text:P().min(1),minSimilarity:F().min(0).max(1)}).optional(),labels:z(P()).readonly().optional()}),Nh=B({title:P(),body:P(),imageMode:H([`crop`,`annotated`,`full`,`none`])}),Ph=B({id:P(),name:P(),enabled:I(),eventTypes:z(P()).readonly(),conditions:Mh,outputs:z(P()).readonly(),template:Nh.optional(),priority:H([`low`,`normal`,`high`,`critical`])}),Fh=B({ruleId:P(),eventId:P(),timestamp:F(),wouldFire:I(),reason:P().optional()}),Ih=B({id:P(),ruleId:P(),ruleName:P(),eventId:P(),timestamp:F(),outputs:z(P()).readonly(),success:I(),error:P().optional(),deviceId:F().optional()}),Lh=B({ruleId:P().optional(),deviceId:F().optional(),from:F().optional(),to:F().optional(),limit:F().optional()}),Rh={name:`advanced-notifier`,scope:`system`,mode:`singleton`,internal:!0,methods:{getRules:K(R(),B({rules:z(Ph).readonly()})),upsertRule:K(B({rule:Ph}),B({success:U(!0)}),{kind:`mutation`}),deleteRule:K(B({ruleId:P()}),B({success:U(!0)}),{kind:`mutation`}),testRule:K(B({ruleId:P(),lookbackMinutes:F()}),B({results:z(Fh).readonly()}),{kind:`mutation`}),getHistory:K(B({filter:Lh.optional()}),B({entries:z(Ih).readonly()}))}},zh=H([`info`,`success`,`warning`,`error`]),Bh=H([`active`,`in-progress`,`completed`,`failed`,`dismissed`]),Vh=B({type:P(),id:P()}),Hh=B({id:P(),category:P(),severity:zh,title:P(),message:P(),status:Bh,progress:F().optional(),read:I(),createdAt:F(),updatedAt:F(),source:Vh.optional(),metadata:V(P(),L()).optional()}),Uh={name:`alerts`,scope:`system`,mode:`singleton`,methods:{emit:K(Hh,R(),{kind:`mutation`}),update:K(B({alertId:P(),patch:Hh.partial()}),R(),{kind:`mutation`}),list:K(B({unreadOnly:I().optional(),limit:F().optional()}).optional(),z(Hh).readonly()),getUnreadCount:K(R(),F()),markRead:K(B({alertId:P()}),R(),{kind:`mutation`}),markAllRead:K(R(),R(),{kind:`mutation`}),dismiss:K(B({alertId:P()}),R(),{kind:`mutation`})}},Wh={name:`audio-analysis`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{resolveDeviceSettings:K(B({deviceId:F()}),rs())},events:{onAudioLevel:Ps(B({deviceId:F(),rms:F(),dbfs:F()}))}},Gh=B({level:Id,classification:B({labels:z(Ld).readonly(),inferenceMs:F()}).optional(),timestamp:F()}),Kh=B({minConfidence:F().min(0).max(1).default(.3),allowedClasses:z(P()).default([])}),qh=B({labels:z(Ld).readonly(),rawLabels:z(Ld).readonly().optional(),inferenceMs:F()}),Jh={name:`audio-analyzer`,scope:`system`,mode:`singleton`,methods:{analyseChunk:K(B({chunk:Fd,settings:Kh}),Gh.nullable(),{kind:`mutation`}),classify:K(Fd,qh,{timeoutMs:3e4}),isReady:K(R(),I()),dispose:K(R(),R(),{kind:`mutation`}),reprobeAudioEngine:K(R(),B({backend:P()}),{kind:`mutation`,auth:`admin`})}},Yh=H([`f32le`,`s16le`]),Xh=B({codec:P(),canDecode:I(),canEncode:I(),label:P().optional()}),Zh=B({codec:P(),sourceSampleRate:F().int().positive(),sourceChannels:F().int().positive(),extraData:os(Uint8Array).optional(),targetSampleRate:F().int().positive(),targetChannels:F().int().positive(),targetFormat:Yh.optional(),idleMs:F().int().positive().optional(),tag:P().optional()}),Qh=B({codec:P(),sourceSampleRate:F().int().positive(),sourceChannels:F().int().positive(),sourceFormat:Yh.optional(),targetSampleRate:F().int().positive(),targetChannels:F().int().positive(),bitrateKbps:F().int().positive().optional(),idleMs:F().int().positive().optional(),tag:P().optional()}),$h=B({data:os(Uint8Array),sampleRate:F().int().positive(),channels:F().int().positive(),format:Yh,pts:F()}),eg=B({data:os(Uint8Array),codec:P(),pts:F(),frameComplete:I()}),tg=B({sessionId:P(),kind:H([`decode`,`encode`]),codec:P(),sourceSampleRate:F(),sourceChannels:F(),targetSampleRate:F(),targetChannels:F(),format:Yh,tag:P().optional(),createdAtMs:F(),lastActivityMs:F(),framesIn:F(),framesOut:F()}),ng={name:`audio-codec`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{listSupportedCodecs:K(R(),z(Xh).readonly()),canHandle:K(B({codec:P(),kind:H([`decode`,`encode`])}),I()),createDecodeSession:K(Zh,B({sessionId:P(),nodeId:P()}),{kind:`mutation`}),createEncodeSession:K(Qh,B({sessionId:P(),nodeId:P()}),{kind:`mutation`}),closeSession:K(B({sessionId:P(),nodeId:P().optional()}),R(),{kind:`mutation`}),pushEncodedFrame:K(B({sessionId:P(),nodeId:P().optional(),data:os(Uint8Array),pts:F().optional()}),R(),{kind:`mutation`}),pullPcm:K(B({sessionId:P(),nodeId:P().optional(),maxCount:F().int().positive().default(8)}),z($h)),pushPcm:K(B({sessionId:P(),nodeId:P().optional(),data:os(Uint8Array),pts:F().optional()}),R(),{kind:`mutation`}),pullEncoded:K(B({sessionId:P(),nodeId:P().optional(),maxCount:F().int().positive().default(8)}),z(eg)),flushEncode:K(B({sessionId:P(),nodeId:P().optional()}),z(eg),{kind:`mutation`}),listActiveSessions:K(R(),z(tg).readonly())}},rg=B({userId:P(),username:P(),email:P().optional(),displayName:P().optional(),isAdmin:I().default(!1)}),ig={name:`auth-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{validateCredentials:K(B({username:P(),password:P()}),rg.nullable(),{kind:`mutation`}),getLoginUrl:K(B({state:P()}),P()),handleCallback:K(V(P(),P()),rg,{kind:`mutation`}),validateToken:K(B({token:P()}),rg.nullable())},mount:{kind:`skip`}},ag=H([`primary`,`second-factor`]),og=To(`kind`,[B({kind:U(`redirect`),id:P(),label:P(),icon:P().optional(),startUrl:P(),stage:ag}),B({kind:U(`widget`),id:P(),addonId:P(),bundle:P(),remote:Dh,stage:ag}),B({kind:U(`passkey`),id:P(),label:P(),stage:ag,rpId:P(),origin:P().nullable()})]),sg={name:`login-method`,scope:`system`,mode:`collection`,internal:!0,methods:{getLoginMethods:K(R(),z(og).readonly())},mount:{kind:`skip`}},cg=B({subId:P(),displayName:P(),description:P().optional(),kind:P(),triggerSupported:I(),restoreSupported:I()}).extend({id:P(),addonId:P(),enabled:I(),retentionCount:F(),label:P().optional(),lastSuccessAt:F().optional(),lastSuccessSizeBytes:F().optional(),cron:P().optional(),nextRunAt:F().optional(),lastRunAt:F().optional()}),lg=B({id:P(),filename:P(),createdAt:F(),sizeBytes:F(),label:P().optional(),locations:z(P()).readonly()}),ug=B({id:P(),destinationId:P().optional(),label:P().optional(),createdAt:F(),sizeBytes:F(),locations:z(P()).optional()}),dg=B({path:P(),kind:H([`file`,`dir`,`symlink`]),sizeBytes:F(),mtime:F()}),fg=B({archiveVersion:U(1),createdAt:F(),dataDir:P(),locations:z(P()),entries:z(dg),totalBytes:F(),totalFiles:F()}),pg=B({name:P(),sizeBytes:F(),fileCount:F(),present:I()}),mg={name:`backup`,scope:`system`,mode:`singleton`,methods:{listDestinations:K(R(),z(cg).readonly(),{auth:`admin`}),trigger:K(B({destinations:z(P()).optional(),locations:z(P()).optional(),label:P().optional()}).optional(),z(ug).readonly(),{kind:`mutation`,auth:`admin`}),list:K(R(),z(ug).readonly(),{auth:`admin`}),listLocations:K(R(),z(pg).readonly(),{auth:`admin`}),getEntries:K(B({destinationId:P(),backupId:P()}),fg.nullable(),{auth:`admin`}),restore:K(B({destinationId:P(),backupId:P(),locations:z(P()).optional()}),R(),{kind:`mutation`,auth:`admin`}),delete:K(B({destinationId:P(),backupId:P()}),R(),{kind:`mutation`,auth:`admin`}),listArchives:K(B({destinationId:P()}),z(lg).readonly(),{auth:`admin`}),upsertDestinationPolicy:K(B({locationId:P(),enabled:I(),retentionCount:F().int().min(1).max(1e3),label:P().optional(),cron:P().optional()}),R(),{kind:`mutation`,auth:`admin`}),previewSchedule:K(B({cron:P(),count:F().int().min(1).max(20).optional()}),B({ok:I(),error:P().optional(),nextRuns:z(F()).readonly()}))}},hg=H([`connected`,`disconnected`,`connecting`,`auth-failed`,`unreachable`,`error`]),gg=B({id:P(),addonId:P(),name:P(),kind:P(),status:hg,info:V(P(),L()),lastCheckedAt:F().nullable(),error:P().nullable()}),_g=B({brokerCount:F().int().nonnegative(),connectedCount:F().int().nonnegative()}),vg=B({addonId:P(),kinds:z(B({kind:P(),label:P()}))}),yg=B({kind:P().optional()}),bg=B({id:P()}),xg=B({kind:P().min(1),name:P().min(1),settings:V(P(),L())}),Sg=B({id:P()}),Cg=B({id:P()}),wg=To(`ok`,[B({ok:U(!0),latencyMs:F().nonnegative()}),B({ok:U(!1),error:P()})]),Tg=V(P(),L()),Eg=B({kind:P()}),Dg=B({kind:P(),settings:Tg}),Og=To(`ok`,[B({ok:U(!0),latencyMs:F().nonnegative().optional()}).strict(),B({ok:U(!1),error:P()})]),kg=L().nullable(),Ag=B({brokerId:P(),target:V(P(),L()),payload:L().optional()}),jg=B({brokerId:P(),filter:V(P(),L())}),Mg=B({subscriptionId:P()}),Ng=B({brokerId:P(),subscriptionId:P()}),Pg=B({brokerId:P(),key:P()}),Fg={name:`broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:_g,kind:`poll`},methods:{list:K(yg,z(gg)),get:K(bg,gg.nullable()),listProviders:K(R(),z(vg),{auth:`admin`}),add:K(xg,Sg,{kind:`mutation`,auth:`admin`}),remove:K(Cg,R(),{kind:`mutation`,auth:`admin`}),testConnection:K(bg,wg,{kind:`mutation`,auth:`admin`}),getSettings:K(bg,Tg.nullable(),{auth:`admin`}),setSettings:K(B({id:P(),settings:Tg}),R(),{kind:`mutation`,auth:`admin`}),getBrokerConfig:K(bg,Tg.nullable(),{auth:`admin`}),getSettingsSchema:K(Eg,kg,{auth:`admin`}),testSettings:K(Dg,Og,{kind:`mutation`,auth:`admin`}),publish:K(Ag,L(),{kind:`mutation`,auth:`admin`}),subscribe:K(jg,Mg,{kind:`mutation`,auth:`admin`}),unsubscribe:K(Ng,R(),{kind:`mutation`,auth:`admin`}),getState:K(Pg,L().nullable()),getStatus:K(R(),_g)}},Ig={name:`camera-pipeline-config`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{}},Lg=B({stepId:P(),entry:oc}),Rg={name:`custom-model-registry`,scope:`system`,mode:`collection`,internal:!0,methods:{listModels:K(R(),z(Lg).readonly())}},zg=B({sessionId:P(),slotCount:F().int(),slotByteLength:F().int(),segmentBytes:F().int(),budgetMb:F().int(),framesWritten:F().int(),getFrameHits:F().int(),getFrameMisses:F().int()}),Bg={name:`decoder`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{supportsCodec:K(B({codec:P()}),I()),getInfo:K(R(),B({id:P(),name:P(),isPullMode:I().optional(),priority:F().optional(),hwaccel:P().optional(),probedBestHwaccel:P().optional()})),createSession:K(Nc,B({sessionId:P(),nodeId:P()})),destroySession:K(B({sessionId:P()}),R()),pushPacket:K(B({sessionId:P(),packet:bs}),R()),openStream:K(B({sessionId:P(),url:P()}),R()),pullFrames:K(B({sessionId:P(),maxCount:F().default(1),waitMs:F().optional()}),z(xs)),pullHandles:K(B({sessionId:P(),maxCount:F().default(1),waitMs:F().optional()}),z(Ss)),getFrame:K(B({handle:Ss}),xs.nullable()),getShmStats:K(B({sessionId:P()}),zg.nullable()),updateConfig:K(B({sessionId:P(),config:Nc.partial()}),R()),getStats:K(B({sessionId:P()}),Mc),listActiveSessions:K(R(),z(B({sessionId:P(),codec:P(),outputFormat:P(),createdAtMs:F()})).readonly()),reprobeHwaccel:K(R(),B({backend:P()}),{kind:`mutation`,auth:`admin`})}},Vg={name:`detection-pipeline`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{}},Hg=B({id:P(),label:P(),isDefault:I().optional()}),Ug=B({search:P().optional(),area:P().optional(),manufacturer:P().optional(),adoptedOnly:I().optional(),unadoptedOnly:I().optional()}),Wg=B({integrationId:P(),page:F().int().positive().default(1),pageSize:F().int().positive().max(2e4).default(50),filter:P().optional(),filterText:Ug.optional()}),Gg=B({candidates:z(Vu).readonly(),totalCount:F().int().nonnegative(),page:F().int().positive(),pageSize:F().int().positive()}),Kg=B({integrationId:P(),childNativeId:P()}),qg=B({lastDiscoveryAt:F().int().nonnegative().nullable(),candidateCount:F().int().nonnegative(),adoptedCount:F().int().nonnegative(),lastError:P().nullable()}),Jg=B({name:P().min(1).optional(),hiddenChildIds:z(P()).optional()}),Yg=B({integrationId:P(),childNativeIds:z(P()).min(1),filter:P().optional(),importLocations:I().optional(),perCandidate:V(P(),Jg).optional()}),Xg=B({adopted:z(B({childNativeId:P(),parentDeviceId:F().int().nonnegative(),accessoryDeviceIds:z(F().int().nonnegative()).readonly()})).readonly()}),Zg=B({integrationId:P(),camDeviceId:F().int().nonnegative()}),Qg=B({camDeviceId:F().int().nonnegative(),resetToSource:I().optional()}),$g=B({changed:I(),rebuiltChildren:F().int().nonnegative(),removedChildren:F().int().nonnegative().optional()}),e_={name:`device-adoption`,scope:`system`,mode:`singleton`,status:{schema:qg,kind:`poll`},methods:{listCandidateFilters:K(B({integrationId:P()}),B({filters:z(Hg)}),{auth:`admin`}),listCandidates:K(Wg,Gg,{auth:`admin`}),getCandidate:K(Kg,Vu.nullable(),{auth:`admin`}),refresh:K(B({integrationId:P()}),qg,{kind:`mutation`,auth:`admin`}),adopt:K(Yg,Xg,{kind:`mutation`,auth:`admin`}),release:K(Zg,R(),{kind:`mutation`,auth:`admin`}),resync:K(Qg,$g,{kind:`mutation`,auth:`admin`})}},t_=H([`unlinked`,`linked`,`error`]),n_=B({label:P(),value:P(),secret:I().optional()}),r_=B({qr:P().optional(),fields:z(n_).readonly().optional(),note:P().optional()}),i_=B({linkState:t_,exposedDeviceCount:F(),error:P().optional(),setup:r_.optional()}),a_=P(),o_=B({deviceId:P(),exposedAs:P().optional(),capabilities:z(P()).optional()}),s_=B({deviceId:P(),capabilities:z(P()).optional()}),c_=B({deviceId:P()}),l_={name:`device-export`,scope:`system`,mode:`collection`,providerKind:`device-export`,status:{schema:i_,kind:`poll`},exposesDeviceSettings:!0,methods:{getStatus:K(R(),i_),listSupportedDeviceKinds:K(R(),z(a_)),listExposedDevices:K(R(),z(o_)),exposeDevice:K(s_,R(),{kind:`mutation`}),unexposeDevice:K(c_,R(),{kind:`mutation`})}},u_=B({childKey:P(),section:P(),order:F().optional(),collapsed:I().optional()}),d_=B({kind:U(`field`).optional(),sourceKey:P(),cap:P(),fieldPath:P()}),f_=B({kind:U(`literal`),value:Co([P(),F(),I(),lo()])}),p_=B({kind:U(`global`),sourceStableId:P(),cap:P(),fieldPath:P()}),m_=B({kind:U(`expression`),expr:P().min(1).max(Yc),bindings:V(P().regex(Xc),Co([d_,f_,p_]))}).superRefine((e,t)=>{let n=xl(e);n!==null&&t.addIssue({code:`custom`,message:n,path:[`expr`]})}),h_=B({id:P(),source:Co([d_,f_,p_,m_]),target:B({cap:P(),fieldPath:P(),itemKey:P().optional()}),transform:To(`kind`,[B({kind:U(`identity`)}),B({kind:U(`enum-map`),mapping:V(P(),Co([P(),F(),I()])),fallback:Co([P(),F(),I()]).optional()}),B({kind:U(`linear`),scale:F(),offset:F(),clamp:ko([F(),F()]).readonly().optional()})]).optional()}),g_=B({unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional()}),__=B({icon:P().min(1).optional(),label:P().min(1).optional(),unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional(),hidden:I().optional(),perCap:V(P(),g_).optional()}),v_=B({unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional(),icon:P().min(1).optional()}),y_=B({id:F(),stableId:P(),addonId:P(),type:H(W),name:P(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional(),online:I(),probed:I().optional(),features:z(P()),isCamera:I(),config:V(P(),L()),metadata:V(P(),L()).nullable().optional(),sourceInfo:zu.optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),primaryChildEntityId:P().nullable().optional(),childLayout:z(u_).readonly().optional(),deviceLinks:z(h_).readonly().optional(),display:__.optional()}),b_=B({key:P(),value:L(),description:P().optional()}),x_=H([`auto`,`manual`]),S_=B({deviceId:F(),name:P(),location:P().nullable(),features:z(P()),producesTrackedEvents:I().optional()}),C_=B({id:F(),stableId:P(),type:P(),name:P(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional()}),w_=B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),userNamed:I().optional(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),metadata:V(P(),L()).nullable().optional(),sourceInfo:zu.optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),primaryChildEntityId:P().nullable().optional(),childLayout:z(u_).readonly().optional(),deviceLinks:z(h_).readonly().optional(),role:P().nullable().optional(),display:__.optional()}),T_=L().nullable(),E_=B({streamId:P(),width:F().optional(),height:F().optional(),codec:P().optional(),fps:F().optional(),bitrateKbps:F().optional()}),D_=B({addonId:P(),stableId:P(),id:F(),type:P(),name:P(),location:P().nullable().optional(),disabled:I().optional(),parentDeviceId:F().nullable(),role:P().nullable().optional(),features:z(P()).optional(),config:V(P(),L())}),O_=B({deviceId:F()}),k_=B({deviceId:F(),data:V(P(),L())}),A_={name:`device-manager`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,methods:{allocateDeviceId:K(B({addonId:P(),stableId:P()}),B({id:F()}),{kind:`mutation`}),registerDevice:K(D_,R(),{kind:`mutation`}),removeDevice:K(O_,R(),{kind:`mutation`}),persistConfig:K(k_,R(),{kind:`mutation`}),loadConfig:K(B({deviceId:F()}),V(P(),L())),loadRuntimeState:K(B({deviceId:F()}),V(P(),L())),loadMeta:K(B({deviceId:F()}),w_.nullable()),setName:K(B({deviceId:F(),name:P()}),R(),{kind:`mutation`,auth:`admin`}),setLocation:K(B({deviceId:F(),location:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setType:K(B({deviceId:F(),type:H(W)}),R(),{kind:`mutation`,auth:`admin`}),setIntegrationId:K(B({deviceId:F(),integrationId:P()}),R(),{kind:`mutation`,auth:`admin`}),setLinkDeviceId:K(B({deviceId:F(),linkDeviceId:F().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setPrimaryChildEntityId:K(B({deviceId:F(),primaryChildEntityId:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setChildLayout:K(B({deviceId:F(),childLayout:z(u_).readonly()}),R(),{kind:`mutation`,auth:`admin`}),setDeviceLinks:K(B({deviceId:F(),deviceLinks:z(h_).readonly()}),R(),{kind:`mutation`,auth:`admin`}),setDisplay:K(B({deviceId:F(),display:__.nullable()}),R(),{kind:`mutation`,auth:`admin`}),getRoleDisplayDefaults:K(B({}),B({defaults:V(P(),v_)}),{kind:`query`}),setRoleDisplayDefaults:K(B({defaults:V(P(),v_)}),R(),{kind:`mutation`,auth:`admin`}),getWireableFields:K(B({deviceId:F(),includeSynthesizable:I().optional()}),B({caps:z(B({cap:P(),fields:z(B({path:P(),kind:H([`string`,`number`,`boolean`,`enum`]),enumValues:z(P()).optional(),item:I().optional()})).readonly(),itemArray:B({path:P(),keyField:P()}).optional()})).readonly()}),{kind:`query`}),setRole:K(B({deviceId:F(),role:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),applyInitialMeta:K(B({deviceId:F(),name:P().optional(),location:P().nullable().optional(),type:H(W).optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),role:P().nullable().optional()}),R(),{kind:`mutation`,auth:`admin`}),setMetadata:K(B({deviceId:F(),patch:V(P(),L())}),R(),{kind:`mutation`,auth:`admin`}),listLocations:K(R(),z(P())),addLocation:K(B({name:P()}),R(),{kind:`mutation`,auth:`admin`}),removeLocation:K(B({name:P(),cascade:I().optional()}),R(),{kind:`mutation`,auth:`admin`}),setDisabled:K(B({deviceId:F(),disabled:I()}),R(),{kind:`mutation`,auth:`admin`}),listPersistedByAddon:K(B({addonId:P()}),z(C_)),listAll:K(B({addonId:P().optional()}),z(y_)),getDevice:K(B({deviceId:F()}),y_.nullable()),getChildren:K(B({parentDeviceId:F()}),z(y_)),getLinkedDevices:K(B({deviceId:F()}),B({mode:x_,devices:z(S_)})),getStreamSources:K(B({deviceId:F()}),z(ys)),getConfigSchema:K(B({deviceId:F()}),z(b_)),getSettingsSchema:K(B({deviceId:F()}),T_),updateConfig:K(B({deviceId:F(),values:V(P(),L())}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),enable:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),disable:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),remove:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),removeByIntegration:K(B({integrationId:P()}),B({removed:F()}),{kind:`mutation`,auth:`admin`}),getStreamProfileMap:K(B({deviceId:F()}),V(P(),P().nullable())),setStreamProfileMap:K(B({deviceId:F(),profileMap:V(P(),P().nullable())}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),probeStreams:K(B({deviceId:F()}),z(E_),{kind:`mutation`,auth:`admin`}),getBindings:K(B({deviceId:F()}),B({deviceId:F(),entries:z(B({capName:P(),kind:H([`native`,`wrapped`,`linked`]),providerAddonId:P(),providerNodeId:P(),nativeAddonId:P()}))})),getAllBindings:K(B({}),z(B({deviceId:F(),entries:z(B({capName:P(),kind:H([`native`,`wrapped`,`linked`]),providerAddonId:P(),providerNodeId:P(),nativeAddonId:P()}))}))),setWrapperActive:K(B({deviceId:F(),capName:P(),wrapperAddonId:P(),active:I()}),R(),{kind:`mutation`,auth:`admin`}),listWrappersForCap:K(B({capName:P()}),z(P())),listBindableCapsForDeviceType:K(B({deviceType:P()}),z(B({capName:P(),wrappers:z(P())}))),getDeviceSettingsAggregate:K(B({deviceId:F()}),xh.nullable()),getDeviceLiveInfoAggregate:K(B({deviceId:F()}),xh.nullable()),getDeviceAggregate:K(B({deviceId:F()}),B({settings:xh.nullable(),live:xh.nullable()})),runDeviceAction:K(B({deviceId:F().int().nonnegative(),action:P().min(1),input:L()}),L(),{kind:`mutation`}),updateDeviceField:K(B({deviceId:F(),writerCapName:P(),writerAddonId:P(),key:P(),value:L()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),updateDeviceFieldsBatch:K(B({deviceId:F(),changes:z(B({writerCapName:P(),writerAddonId:P(),key:P(),value:L()}))}),B({success:U(!0),failures:z(B({writerCapName:P(),writerAddonId:P(),error:P()}))}),{kind:`mutation`,auth:`admin`}),discoverDevices:K(B({addonId:P()}),z(Jm),{kind:`mutation`,auth:`admin`}),adoptDevice:K(B({addonId:P(),candidate:Jm,integrationId:P().optional()}),Ym,{kind:`mutation`,auth:`admin`}),getCreationSchema:K(B({addonId:P(),type:H(W)}),L().nullable()),createDevice:K(B({addonId:P(),type:H(W),config:V(P(),L()),integrationId:P().optional()}),Ym,{kind:`mutation`,auth:`admin`}),testCreationField:K(B({addonId:P(),type:H(W),key:P(),value:L(),formValues:V(P(),L()).optional()}),Xm,{kind:`mutation`,auth:`admin`}),adoptionListCandidateFilters:K(B({addonId:P(),integrationId:P()}),B({filters:z(Hg)}),{auth:`admin`}),adoptionListCandidates:K(Wg.extend({addonId:P()}),Gg,{auth:`admin`}),adoptionRefresh:K(B({addonId:P(),integrationId:P()}),qg,{kind:`mutation`,auth:`admin`}),adoptionAdopt:K(Yg.extend({addonId:P()}),Xg,{kind:`mutation`,auth:`admin`}),adoptionRelease:K(Zg.extend({addonId:P()}),R(),{kind:`mutation`,auth:`admin`}),adoptionResync:K(Qg,$g,{kind:`mutation`,auth:`admin`}),discoveryProviders:K(B({}),B({providers:z(B({addonId:P(),label:P()})).readonly()}),{auth:`admin`}),discoverAllProviders:K(B({}),B({groups:z(B({addonId:P(),label:P(),candidates:z(Jm).readonly(),error:P().nullable()})).readonly()}),{kind:`mutation`,auth:`admin`}),discoverProvider:K(B({addonId:P(),params:V(P(),L()).optional()}),B({candidates:z(Jm).readonly()}),{kind:`mutation`,auth:`admin`}),providerCreationType:K(B({addonId:P()}),B({deviceType:H(W).nullable()}),{auth:`admin`}),providerDiscoveryParamsSchema:K(B({addonId:P()}),L(),{auth:`admin`}),testField:K(B({deviceId:F(),key:P(),value:L()}),Xm,{kind:`mutation`,auth:`admin`}),getDeviceStatusAggregate:K(B({deviceId:F(),caps:z(P()).readonly().optional()}),V(P(),L().nullable()))}},j_={name:`device-state`,scope:`system`,mode:`singleton`,methods:{getSnapshot:K(B({deviceId:F()}),V(P(),V(P(),L()))),getCapSlice:K(B({deviceId:F(),capName:P()}),V(P(),L()).nullable()),getAllSnapshots:K(B({}),V(P(),V(P(),V(P(),L())))),setCapSlice:K(B({deviceId:F(),capName:P(),slice:V(P(),L())}),R(),{kind:`mutation`})},events:{onChanged:Ps(B({deviceId:F(),capName:P(),slice:V(P(),L())}))}},M_=B({embedding:z(F()),inferenceMs:F()}),N_=B({modelId:P(),embeddingDim:F(),ready:I()}),P_={name:`embedding-encoder`,scope:`system`,mode:`collection`,internal:!0,methods:{encode:K(B({crop:os(Uint8Array),width:F(),height:F()}),M_),encodeText:K(B({text:P()}),M_),getInfo:K(R(),N_)}},F_=B({name:P(),path:P()}),I_=B({path:P(),entries:z(F_).readonly(),freeBytes:F(),totalBytes:F()}),L_={name:`filesystem-browse`,scope:`system`,mode:`singleton`,internal:!0,methods:{listAllowedRoots:K(R(),z(P()).readonly(),{auth:`admin`}),browse:K(B({path:P()}),I_,{auth:`admin`}),createDir:K(B({path:P()}),B({path:P()}),{kind:`mutation`,auth:`admin`})}},R_=H([`debug`,`info`,`warn`,`error`]),z_=B({timestamp:vo(),level:R_,scope:z(P()),message:P(),meta:V(P(),L()).optional(),tags:V(P(),P()).optional()}),B_={name:`log-destination`,scope:`system`,mode:`collection`,internal:!0,methods:{write:K(z_,R(),{kind:`mutation`}),query:K(B({scope:z(P()).optional(),level:R_.optional(),since:vo().optional(),until:vo().optional(),limit:F().optional(),tags:V(P(),P()).optional()}),z(z_).readonly())},mount:{kind:`skip`}},V_=B({total:F(),user:F(),system:F(),irq:F(),nice:F(),loadAvg:ko([F(),F(),F()]),cores:F()}),H_=B({percent:F(),totalBytes:F(),usedBytes:F(),availableBytes:F(),swapUsedBytes:F(),swapTotalBytes:F()}),U_=B({readBytes:F(),writeBytes:F(),readOps:F(),writeOps:F(),timestampMs:F()}),W_=B({rxBytes:F(),txBytes:F(),rxPackets:F(),txPackets:F(),rxErrors:F(),txErrors:F(),timestampMs:F()}),G_=B({utilization:F(),model:P(),memoryUsedBytes:F(),memoryTotalBytes:F(),temperature:F().nullable()}),K_=B({openFds:F(),threadCount:F(),activeHandles:F(),activeRequests:F()}),q_=B({avg10:F(),avg60:F(),avg300:F()}),J_=B({some:q_,full:q_.nullable()}),Y_=B({cpu:V_,memory:H_,gpu:G_.nullable(),network:W_,disk:U_,pressure:B({cpu:J_.nullable(),memory:J_.nullable(),io:J_.nullable()}),process:K_,cpuTemperature:F().nullable(),timestampMs:F()}),X_=B({path:P(),totalBytes:F(),usedBytes:F(),availableBytes:F(),percent:F()}),Z_=B({pid:F(),cpu:F(),memory:F(),privateBytes:F().optional(),sharedBytes:F().optional()}),Q_=B({addonId:P(),nodeId:P(),role:H([`hub`,`worker`]),pid:F(),state:H([`starting`,`running`,`stopping`,`stopped`,`crashed`]),uptimeSec:F()}),$_=B({pid:F(),ppid:F(),pgid:F(),classification:H([`root`,`managed`,`system`,`ghost`]),addonId:P().nullable(),nodeId:P().nullable(),command:P(),cpuPercent:F(),memoryRssBytes:F(),uptimeSec:F(),orphaned:I()}),ev=B({pid:F(),force:I().optional()}),tv=B({success:I(),reason:P().optional(),signal:H([`SIGTERM`,`SIGKILL`]).optional()}),nv=B({addonId:P()}),rv=B({success:I(),path:P().optional(),pid:F().optional(),reason:P().optional()}),iv=B({cpuPercent:F(),memoryPercent:F(),memoryUsedMB:F(),memoryTotalMB:F(),diskPercent:F().optional(),temperature:F().optional(),gpuPercent:F().optional(),gpuMemoryPercent:F().optional()}),av={name:`metrics-provider`,scope:`system`,mode:`singleton`,methods:{collectSnapshot:K(R(),Y_),getCached:K(R(),Y_.nullable()),getCurrent:K(R(),iv),getDiskSpace:K(B({dirPath:P()}),X_),getGpuInfo:K(R(),G_.nullable()),getCpuTemperature:K(R(),F().nullable()),getProcessStats:K(B({pids:z(F())}),z(Z_)),listAddonInstances:K(R(),z(Q_).readonly()),getAddonStats:K(B({addonId:P()}),Z_.nullable()),listNodeProcesses:K(R(),z($_).readonly()),killProcess:K(ev,tv,{kind:`mutation`,auth:`admin`}),dumpHeapSnapshot:K(nv,rv,{kind:`mutation`,auth:`admin`})}},ov={name:`model-convert`,scope:`system`,mode:`singleton`,internal:!0,methods:{convert:K(B({sourceUrl:P(),metadata:cc,targets:z(sc).min(1).readonly(),calibrationRef:P().optional(),sessionId:P().optional()}),lc,{kind:`mutation`,auth:`admin`,timeoutMs:6e5})}},sv={name:`model-distributor`,scope:`system`,mode:`singleton`,internal:!0,methods:{distributeModel:K(B({nodeId:P(),modelId:P(),format:H(tc),entry:oc}),B({ok:I(),sha256:P(),bytes:F(),path:P()}),{kind:`mutation`,auth:`admin`})}},cv=H([`external`,`embedded`]),lv=H([`connected`,`disconnected`,`auth-failed`,`unreachable`,`tls-error`]),uv=B({id:P(),name:P(),url:P(),kind:cv,status:lv,latencyMs:F().nullable(),error:P().optional(),connectedClients:F().int().nonnegative().optional(),lastCheckedAt:F().optional()}),dv=B({url:P(),username:P().optional(),password:P().optional(),clientIdPrefix:P().optional()}),fv=B({name:P().min(1),url:P().regex(/^(mqtt|mqtts|ws|wss):\/\//,`URL must start with mqtt(s):// or ws(s)://`),username:P().optional(),password:P().optional(),clientIdPrefix:P().optional()}),pv=B({id:P()}),mv=B({id:P()}),hv=To(`ok`,[B({ok:U(!0),latencyMs:F()}),B({ok:U(!1),error:P()})]),gv=B({port:F().int().min(1).max(65535).default(1883),allowAnonymous:I().default(!1),username:P().optional(),password:P().optional()}),_v=B({id:P(),url:P()}),vv=B({brokerCount:F(),embeddedRunning:I()}),yv={name:`mqtt-broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:vv,kind:`poll`},methods:{listBrokers:K(R(),z(uv)),getBrokerConfig:K(mv,dv),addBroker:K(fv,pv,{kind:`mutation`}),removeBroker:K(mv,R(),{kind:`mutation`}),testConnection:K(mv,hv,{kind:`mutation`}),startEmbeddedBroker:K(gv,_v,{kind:`mutation`}),stopEmbeddedBroker:K(mv,R(),{kind:`mutation`}),getStatus:K(R(),vv)}},bv=B({url:P(),hostname:P(),port:F(),protocol:H([`http`,`https`])}),xv=B({connected:I(),endpoint:bv.nullable(),error:P().optional()}),Sv=bv.extend({id:P(),label:P(),mode:P().optional(),sourcePort:F().optional()}),Cv={name:`network-access`,scope:`system`,mode:`collection`,providerKind:`ingress`,methods:{start:K(R(),bv,{kind:`mutation`}),stop:K(R(),R(),{kind:`mutation`}),getEndpoint:K(R(),bv.nullable()),getStatus:K(R(),xv),listEndpoints:K(R(),z(Sv).readonly())}},wv=H([`image`,`video`,`gif`,`audio`,`icon`]),Tv=B({mediaType:wv,url:P().optional(),bytes:os(Uint8Array).optional(),mime:P().optional(),name:P().optional()}).refine(e=>e.url!==void 0||e.bytes!==void 0,{message:"Attachment requires either `url` or `bytes`"}),Ev=H([`text`,`markdown`,`html`]),Dv=B({id:P(),label:P(),url:P().optional()}),Ov=B({body:P(),title:P().optional(),format:Ev.default(`text`),priority:F().int().min(1).max(5).default(3),level:P().optional(),attachments:z(Tv).optional(),clickUrl:P().optional(),actions:z(Dv).optional(),sound:P().optional(),ttl:F().optional(),tag:P().optional(),deviceId:F().optional(),eventId:P().optional(),metadata:V(P(),L()).optional()}),kv=B({id:P(),label:P(),ordinal:F().int().min(1).max(5).nullable(),flags:B({critical:I().optional(),silent:I().optional(),noPush:I().optional()}).optional(),requires:z(P()).optional(),description:P().optional()}),Av=B({attachments:B({mediaTypes:z(wv),mode:H([`url`,`bytes`,`both`]),max:F().int().nonnegative(),maxBytes:F().int().positive().optional()}),actions:F().int().nonnegative(),levels:z(kv),format:z(Ev),clickUrl:I(),sound:I(),ttl:I(),bodyMaxLen:F().int().positive()}),jv=L(),Mv=B({kind:P(),label:P(),icon:P(),addonId:P(),configSchema:jv,supportsDiscovery:I(),caps:Av}),Nv=B({id:P(),name:P(),kind:P(),addonId:P(),enabled:I(),config:V(P(),L())}),Pv=B({kind:P(),suggestedName:P(),config:V(P(),L())}),Fv=B({level:P(),format:Ev,attachmentsSent:F().int().nonnegative(),actionsSent:F().int().nonnegative(),truncated:I(),dropped:z(P())}),Iv=B({success:I(),error:P().optional(),renderedAs:Fv.optional()}),Lv=Iv,Rv={name:`notification-output`,scope:`system`,mode:`collection`,methods:{listTargetKinds:K(B({}),z(Mv)),listTargets:K(B({}),z(Nv)),discoverTargets:K(B({kind:P(),config:V(P(),L()).optional()}),z(Pv)),send:K(B({targetId:P(),notification:Ov}),Iv,{kind:`mutation`}),testTarget:K(B({targetId:P(),sample:Ov.optional()}),Lv,{kind:`mutation`}),upsertTarget:K(B({target:Nv}),Nv,{kind:`mutation`}),deleteTarget:K(B({targetId:P()}),R(),{kind:`mutation`}),setTargetEnabled:K(B({targetId:P(),enabled:I()}),R(),{kind:`mutation`})}},zv=B({inputTokens:F(),outputTokens:F()}),Bv=H([`timeout`,`rate-limited`,`auth`,`refusal`,`bad-request`,`unavailable`,`no-profile`,`budget-exceeded`,`adapter-error`]),Vv=To(`ok`,[B({ok:U(!0),text:P(),model:P(),usage:zv,truncated:I(),latencyMs:F()}),B({ok:U(!1),code:Bv,message:P(),retryAfterMs:F().optional()})]),Hv=B({bytes:os(Uint8Array),mimeType:P()}),Uv=B({addonId:P().optional(),profileId:P().optional(),consumer:P(),system:P().optional(),prompt:P(),jsonSchema:V(P(),L()).optional(),maxTokens:F().int().positive().optional(),temperature:F().optional()}),Wv=To(`kind`,[B({kind:U(`catalog`),catalogId:P()}),B({kind:U(`url`),url:P(),sha256:P().optional()}),B({kind:U(`path`),path:P()})]),Gv=B({nodeId:P(),engine:H([`llama-cpp`]),model:Wv,contextSize:F().int().default(4096),gpuLayers:F().int().default(0),threads:F().int().optional(),parallel:F().int().default(1),autoStart:I().default(!1),idleStopMinutes:F().int().default(30)}),Kv=B({nodeId:P(),state:H([`stopped`,`downloading`,`starting`,`ready`,`crashed`,`failed`]),pid:F().optional(),port:F().optional(),modelPath:P().optional(),modelId:P().optional(),downloadProgress:F().min(0).max(1).optional(),lastError:P().optional(),crashesInWindow:F(),memoryBytes:F().optional(),vramBytes:F().optional()}),qv=B({file:P(),sizeBytes:F(),catalogId:P().optional(),installedAt:F().optional()}),Jv=B({nodeId:P(),modelsBytes:F(),freeBytes:F().optional()}),Yv={name:`llm-runtime`,scope:`system`,mode:`singleton`,internal:!0,methods:{complete:K(Uv.extend({images:z(Hv).optional(),runtime:Gv,timeoutMs:F().int().positive().optional()}),Vv,{kind:`mutation`}),ensureStarted:K(B({runtime:Gv}),Kv,{kind:`mutation`,auth:`admin`}),stop:K(B({}),R(),{kind:`mutation`,auth:`admin`}),status:K(B({}),Kv),installModel:K(B({model:Wv}),R(),{kind:`mutation`,auth:`admin`}),deleteModel:K(B({file:P()}),R(),{kind:`mutation`,auth:`admin`}),listLocalModels:K(B({}),z(qv)),getDiskUsage:K(B({}),Jv)}},Xv=H([`openai-compatible`,`openai`,`anthropic`,`google`,`managed-local`]),Zv=B({id:P(),name:P(),kind:Xv,addonId:P(),enabled:I(),model:P(),baseUrl:P().optional(),apiKey:P().optional(),supportsVision:I(),temperature:F().min(0).max(2).optional(),maxTokens:F().int().positive().optional(),timeoutMs:F().int().positive().default(6e4),extraHeaders:V(P(),P()).optional(),runtime:Gv.optional()}),Qv=L(),$v=B({kind:Xv,label:P(),icon:P(),addonId:P(),configSchema:Qv}),ey=Co([B({consumer:P()}),B({purpose:H([`text`,`vision`])})]),ty=B({selector:ey,profileId:P()}),ny=B({day:P(),consumer:P(),profileId:P(),calls:F(),okCalls:F(),errorCalls:F(),inputTokens:F(),outputTokens:F(),avgLatencyMs:F()}),ry=B({id:P(),label:P(),family:P(),purpose:H([`text`,`vision`]),url:P(),sha256:P(),sizeBytes:F(),quantization:P(),minRamBytes:F(),contextSizeDefault:F().int(),mmprojUrl:P().optional()}),iy=B({nodeId:P(),reachable:I(),status:Kv.optional(),disk:Jv.optional(),error:P().optional()}),ay=Uv.extend({images:z(Hv).min(1)}),oy=B({addonId:P(),profileId:P()}),sy={name:`llm`,scope:`system`,mode:`collection`,internal:!1,providerKind:`ai`,nodeIdMode:`data`,methods:{generate:K(Uv,Vv,{kind:`mutation`}),generateVision:K(ay,Vv,{kind:`mutation`}),listProfileKinds:K(B({}),z($v)),listProfiles:K(B({}),z(Zv)),upsertProfile:K(B({profile:Zv}),Zv,{kind:`mutation`,auth:`admin`}),deleteProfile:K(oy,R(),{kind:`mutation`,auth:`admin`}),testProfile:K(oy,Vv,{kind:`mutation`,auth:`admin`}),listModels:K(oy,z(P())),getDefaults:K(B({}),z(ty)),setDefault:K(B({selector:ey,profileId:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),getUsage:K(B({since:F().optional(),until:F().optional(),consumer:P().optional(),profileId:P().optional()}),z(ny)),listModelCatalog:K(B({}),z(ry)),listRuntimeNodes:K(B({}),z(iy)),listNodeModels:K(B({nodeId:P()}),z(qv)),installModel:K(B({nodeId:P(),model:Wv}),R(),{kind:`mutation`,auth:`admin`}),deleteModel:K(B({nodeId:P(),file:P()}),R(),{kind:`mutation`,auth:`admin`}),getRuntimeStatus:K(oy,Kv),startRuntime:K(oy,Kv,{kind:`mutation`,auth:`admin`}),stopRuntime:K(oy,R(),{kind:`mutation`,auth:`admin`})}},cy=H([`view`,`create`,`delete`]),ly=Co([U(`*`),z(P())]),uy=V(P(),Co([U(`*`),z(P())])),dy=H([`device`,`system`]),fy=To(`type`,[B({type:U(`category`),target:dy,access:z(cy).min(1)}),B({type:U(`capability`),target:P(),access:z(cy).min(1)}),B({type:U(`addon`),target:P(),access:z(cy).min(1)}),B({type:U(`device`),targets:z(P()).min(1),access:z(cy).min(1)})]);B({id:P(),username:P(),passwordHash:P(),isAdmin:I().default(!1),allowedProviders:ly,allowedDevices:uy,scopes:z(fy).default([]),createdAt:F(),updatedAt:F()}),B({id:P(),label:P(),isAdmin:I().default(!1),allowedProviders:ly,allowedDevices:uy,tokenHash:P(),tokenPrefix:P(),createdAt:F(),lastUsedAt:F().optional()}),B({id:P(),userId:P(),name:P(),tokenHash:P(),tokenPrefix:P(),scopes:z(fy),expiresAt:F().nullish(),lastUsedAt:F().nullish(),createdAt:F()});var py=B({integrationId:P(),displayName:P(),requestedScopes:z(fy),allowedRedirectPrefixes:z(P()).min(1),hubUrl:P().optional()}),my={name:`oauth-integration`,scope:`system`,mode:`collection`,internal:!0,methods:{getDescriptor:K(R(),py)}},hy=H([`new`,`entered`,`left`,`moving`,`idle`]),gy=H([`motion`,`object`,`audio`]),_y=To(`kind`,[Zf,Qf]),vy=H([`motion`,`audio`,`person`,`vehicle`,`animal`,`door`,`pir`,`smoke`,`water`,`button`,`package`,`generic`]),yy=H([`motion`,`audio`,`detection`,`sensor`,`control`,`custom`,`package`]),by=H([`macro`,`sub`]),xy=B({kind:P(),labelKey:P(),label:P(),color:P(),iconId:P(),icon:vy,category:yy,parentKind:P().nullable(),level:by,source:B({capName:P(),deviceId:F()})}),Sy=B({id:P(),deviceId:F(),sourceDeviceId:F(),kind:P(),value:V(P(),L()).nullable(),timestamp:F()}),Cy=B({x:F(),y:F(),timestamp:F(),bbox:Pd}),wy=B({timestamp:F(),position:Cy,mediaKey:P()}),Ty=B({minX:F(),minY:F(),maxX:F(),maxY:F()}),Ey=H([`full`,`slim`]),Dy=B({label:P(),peakScore:F(),count:F(),firstAt:F(),lastAt:F()}),Oy=H([`pipeline`,`sensor`]),ky=B({trackId:P(),deviceId:F(),className:P(),label:P().optional(),producingDeviceName:P().optional(),source:Oy.optional(),firstSeen:F(),lastSeen:F(),positions:z(Cy).readonly(),snapshots:z(wy).readonly(),zonesVisited:z(P()).readonly(),classes:z(P()).readonly().optional(),totalDistance:F(),state:hy,active:I(),importance:F().optional(),bestEventId:P().optional(),importanceReason:P().optional(),audioLabels:z(Dy).readonly().optional(),envelope:Ty.optional()}),Ay={id:P(),deviceId:F(),timestamp:F()},jy=B({...Ay,kind:U(`motion`),regionCount:F(),regions:z(B({bbox:Pd,pixelCount:F(),intensity:F()})).readonly().optional(),frameWidth:F().optional(),frameHeight:F().optional(),mediaUrl:P().optional()}),My=H([`pipeline`,`onboard`]),Ny=B({...Ay,kind:U(`object`),source:My.optional(),frameId:P().optional(),trackId:P().optional(),className:P(),label:P().optional(),confidence:F().optional(),bbox:Pd.optional(),zones:z(P()).readonly().optional(),state:hy.optional(),frameWidth:F().optional(),frameHeight:F().optional(),mediaKey:P().optional(),keyFrameMediaKey:P().optional(),mediaUrl:P().optional(),importance:F().optional()}),Py=B({...Ay,kind:U(`audio`),rms:F(),dbfs:F(),classification:B({className:P(),originalClass:P().optional(),score:F()}).optional(),mediaUrl:P().optional()}),Fy=H([`crop`,`thumbnail`,`snapshot`,`firstFrame`,`lastFrame`,`fullFrame`,`fullFrameBoxed`,`faceCrop`,`plateCrop`,`keyFrame`,`keyFrameSmall`]),Iy=B({key:P(),kind:Fy,base64:P(),sizeBytes:F(),timestamp:F()}),Ly=1e3,Ry=5e3,zy=B({deviceId:F(),since:F().optional(),until:F().optional(),limit:F().int().min(1).max(Ry).default(Ly),projection:H([`full`,`slim`]).optional()}),By=zy.extend({classFilter:P().optional()}),Vy=B({deviceIds:z(F()),since:F().optional(),until:F().optional(),limit:F().int().min(1).max(1e3).default(200),cursor:P().optional(),projection:Ey.optional()}),Hy=B({tracks:z(ky).readonly(),nextCursor:P().nullable()}),Uy=B({deviceId:F(),since:F(),until:F(),limit:F().int().min(1).max(200).default(50),minImportance:F().min(0).max(1).optional(),classFilter:P().optional()}),Wy=B({id:P(),trackId:P(),timestamp:F(),className:P(),label:P().optional(),importance:F(),bestEventId:P(),windowMs:F().optional()});B({trackId:P(),className:P(),confidence:F(),bbox:Pd,zones:z(P()).readonly(),state:hy});var Gy=xo({id:P(),kind:H([`first-level`,`detail`]),macroClass:P(),score:F(),bbox:B({x:F(),y:F(),width:F(),height:F()}),labels:z(xo({label:P(),score:F()})).readonly(),parentId:P().optional()}),Ky=Ny.extend({score:F()}),qy=B({text:P(),deviceId:F().optional(),since:F().optional(),until:F().optional(),classFilter:P().optional(),limit:F().default(50),minScore:F().min(0).max(1).default(.2)}),Jy=B({tracks:F().int(),events:F().int(),media:F().int(),faces:F().int(),plates:F().int(),embeddings:F().int()}),Yy=B({deviceId:F(),rows:F().int(),bytes:F().int()}),Xy=B({totalRows:F().int(),totalBytes:F().int(),devices:z(Yy).readonly()}),Zy=B({motion:F().int(),object:F().int(),audio:F().int()}),Qy={name:`pipeline-analytics`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{getActiveTracks:K(B({deviceId:F()}),z(ky).readonly()),getTrack:K(B({deviceId:F(),trackId:P()}),ky.nullable()),listTracks:K(B({deviceId:F(),since:F().optional(),until:F().optional(),limit:F().optional(),zone:_y.optional(),projection:Ey.optional()}),z(ky).readonly()),listRecentTracks:K(Vy,Hy),clearTracks:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`}),getMotionEvents:K(zy,z(jy).readonly()),getObjectEvents:K(By,z(Ny).readonly()),getAudioEvents:K(zy,z(Py).readonly()),listEventKinds:K(B({deviceId:F()}),z(xy).readonly()),getSensorEvents:K(B({deviceId:F(),since:F().optional(),until:F().optional(),kinds:z(P()).optional(),limit:F().int().min(1).max(Ry).default(Ly)}),z(Sy).readonly()),getKeyEvents:K(Uy,z(Wy).readonly()),getEventDensity:K(B({deviceId:F(),since:F(),until:F(),bucketMs:F().int().positive()}),z(B({bucketStart:F(),motion:F().int(),object:F().int(),audio:F().int()})).readonly()),pruneEventsBefore:K(B({deviceId:F(),cutoffMs:F()}),B({motion:F().int(),object:F().int(),audio:F().int()}),{kind:`mutation`,auth:`admin`}),pruneTracksBefore:K(B({deviceId:F(),cutoffMs:F()}),Jy,{kind:`mutation`,auth:`admin`}),wipeAllAnalytics:K(B({deviceId:F()}),Jy,{kind:`mutation`,auth:`admin`}),deleteTracks:K(B({deviceId:F(),trackIds:z(P()).min(1)}),B({deleted:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),getEventStoreFootprint:K(B({}),Xy,{kind:`query`,auth:`admin`}),pruneEvents:K(B({olderThanMs:F(),reason:Tc.optional()}),Zy,{kind:`mutation`,auth:`admin`}),deleteDeviceEvents:K(B({deviceId:F()}),Zy,{kind:`mutation`,auth:`admin`}),listOpsLog:K(Dc,z(Ec).readonly(),{kind:`query`,auth:`admin`}),getEventMedia:K(B({eventId:P(),kind:Fy.optional()}),z(Iy).readonly()),getTrackMedia:K(B({trackId:P()}),z(Iy).readonly()),searchObjectEvents:K(qy,z(Ky).readonly())},events:{onFrameTracked:{data:B({deviceId:F(),timestamp:F(),frameWidth:F(),frameHeight:F(),detections:z(Gy).readonly()})},onTrackStarted:{data:B({deviceId:F(),trackId:P(),className:P()})},onTrackEnded:{data:B({deviceId:F(),trackId:P(),className:P(),durationMs:F()})},onDetectionEvent:{data:B({deviceId:F(),kind:gy,eventId:P(),timestamp:F()})}}},$y={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 eb(e){return $y[e]??`generic`}var tb={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`,switch:`switch`,button:`button`,doorbell:`doorbell`};function nb(e,t){let n=Kc[t];if(n===void 0)throw Error(`EVENT_KIND_BY_CAP: cap '${e}' maps to unknown taxonomy kind '${t}'`);return{...n,icon:eb(n.iconId)}}Object.freeze(Object.fromEntries(Object.entries(tb).map(([e,t])=>[e,nb(e,t)])));var rb=B({engine:Gd.optional(),steps:z(nf).readonly(),audio:B({engine:Gd.optional(),modelId:P().optional(),enabled:I(),settings:V(P(),L()).readonly().optional()}).nullable().optional()}),ib=B({id:P(),name:P(),description:P().optional(),config:rb,createdAt:P(),updatedAt:P()}),ab=B({modelId:P().optional(),settings:V(P(),L()).optional(),jumpDeviceKey:P().optional()}),ob=B({maxCameras:F().int().nonnegative().nullable().default(null),detectWeight:F().positive().optional(),detect:I().optional(),decode:I().optional(),audio:I().optional(),ingest:I().optional(),reachableHost:P().optional(),inferenceDevices:V(P(),B({enabled:I(),weight:F().positive().optional(),maxSessions:F().int().positive().optional(),steps:V(P(),ab).optional()})).optional()}),sb=B({steps:z(nf).readonly(),audio:B({modelId:P(),enabled:I()}).nullable()}),cb=B({modelId:P().optional(),settings:V(P(),L()).readonly().optional()}),lb=B({pinnedAgentNodeId:P().optional(),stepToggles:V(P(),I()).optional(),stepOverridesByDevice:V(P(),V(P(),V(P(),cb))).optional(),pipelineByAgent:V(P(),sb).optional()}),ub=B({deviceId:F(),agentNodeId:P(),pinned:I(),reason:H([`manual`,`capacity`,`hardware-affinity`,`failover`,`rebalance`]),assignedAt:F()}),db=B({nodeId:P(),online:I(),load:Vf,score:F(),decodeHwaccel:P().nullable()}),fb=B({totalAgents:F(),onlineAgents:F(),totalCameras:F(),attachedCameras:F(),activeCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()}),pb=V(P(),P()),mb=B({ownerNodeId:P(),reachableHost:P().optional(),configIssue:P().optional()}),hb=B({streams:z(B({camStreamId:P(),codec:P(),width:F(),height:F(),fps:F(),kind:P()})).readonly()}),gb=B({detectionNodeId:P().nullable(),decoderNodeId:P().nullable(),audioNodeId:P().nullable(),sourceNodeId:P().nullable(),pinned:B({detection:I(),decoder:I(),audio:I()}),reasons:B({detection:P().optional(),decoder:P().optional(),audio:P().optional()})}),_b=B({profiles:z(B({profile:P(),status:P(),codec:P(),width:F(),height:F(),subscribers:F(),inFps:F(),outFps:F()})).readonly(),webrtcSessions:F(),rtspRestream:I()}),vb=B({framesWritten:F(),getFrameHits:F(),getFrameMisses:F(),budgetMb:F()}),yb=B({nodeId:P(),formats:z(P()).readonly(),sessionCount:F(),shm:vb}),bb=B({enabled:I(),fps:F()}),xb=B({state:H([`idle`,`installing`,`verifying`,`ready`,`failed`]),error:P().optional()}),Sb=H([`idle`,`watching`,`active`]),Cb=B({nodeId:P(),engine:B({backend:P(),device:P()}),phase:Sb,configuredFps:F(),actualFps:F(),queueDepth:F(),avgInferenceMs:F(),provisioning:xb}),wb=B({nodeId:P(),enabled:I()}),Tb=B({mode:H([`off`,`continuous`,`events`]),active:I(),storageBytes:F()}),Eb=B({deviceId:F(),assignment:gb,source:hb,broker:_b.nullable(),decoder:yb.nullable(),motion:bb.nullable(),detection:Cb.nullable(),audio:wb.nullable(),recording:Tb.nullable(),fetchedAt:F()}),Db=B({key:P(),backend:P(),device:P(),format:H(tc),available:I(),enabled:I(),weight:F(),maxSessions:F().nullable(),defaultModelId:P(),steps:V(P(),ab).optional()}),Ob=B({nodeId:P(),reachable:I(),devices:z(Db).readonly()}),kb={name:`pipeline-orchestrator`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,exposesDeviceSettings:!0,methods:{assignPipeline:K(B({deviceId:F(),agentNodeId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignPipeline:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setPipelineDevicePin:K(B({deviceId:F(),deviceKey:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getPipelineDevicePin:K(B({deviceId:F()}),B({deviceKey:P().nullable()})),rebalance:K(R(),B({migrated:F()}),{kind:`mutation`,auth:`admin`}),getPipelineAssignments:K(R(),z(ub).readonly()),getPipelineAssignment:K(B({deviceId:F()}),ub.nullable()),getAgentLoad:K(R(),z(db).readonly()),getGlobalMetrics:K(R(),fb),getCameraMetrics:K(B({deviceId:F()}),Vd.nullable()),getCapabilityBindings:K(B({nodeId:P()}),pb),setCapabilityBinding:K(B({nodeId:P(),capName:P(),addonId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getIngestOwner:K(R(),mb),assignAudio:K(B({deviceId:F(),nodeId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignAudio:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getAudioAssignment:K(B({deviceId:F()}),B({nodeId:P(),pinned:I(),assignedAt:F()}).nullable()),getAudioNodeLoad:K(R(),z(B({nodeId:P(),deviceCount:F()}))),getAudioAssignments:K(R(),z(B({deviceId:F(),nodeId:P(),pinned:I(),assignedAt:F()}))),getAgentSettings:K(B({agentNodeId:P()}),ob.nullable()),listAgentSettings:K(R(),z(B({nodeId:P(),settings:ob})).readonly()),removeAgentSettings:K(B({agentNodeId:P()}),B({success:I(),removed:I()}),{kind:`mutation`,auth:`admin`}),setAgentMaxCameras:K(B({agentNodeId:P(),maxCameras:F().int().nonnegative().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentDetectWeight:K(B({agentNodeId:P(),detectWeight:F().positive().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentCapabilities:K(B({agentNodeId:P(),detect:I().nullable().optional(),audio:I().nullable().optional(),ingest:I().nullable().optional()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentReachableHost:K(B({agentNodeId:P(),reachableHost:P().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentInferenceDevices:K(B({agentNodeId:P(),inferenceDevices:V(P(),B({enabled:I(),weight:F().positive().optional(),maxSessions:F().int().positive().optional(),steps:V(P(),ab).optional()}))}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getNodeInferenceDevices:K(B({nodeId:P()}),Ob),resetNodePipelineDefaults:K(B({agentNodeId:P()}),B({success:U(!0),effectiveModelId:P().nullable(),clearedCameraOverrides:F()}),{kind:`mutation`,auth:`admin`}),getCameraSettings:K(B({deviceId:F()}),lb.nullable()),setCameraStepToggle:K(B({deviceId:F(),addonId:P(),enabled:I().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getCameraStepOverrides:K(B({deviceId:F()}),V(P(),V(P(),V(P(),cb))).nullable()),setCameraStepOverride:K(B({deviceId:F(),agentNodeId:P(),deviceKey:P(),addonId:P(),patch:cb.nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setCameraPipelineForAgent:K(B({deviceId:F(),agentNodeId:P(),pipeline:sb.nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),resolvePipeline:K(B({deviceId:F(),agentNodeId:P().optional()}),rb),getCameraStatus:K(B({deviceId:F()}),Eb),getCameraStatuses:K(B({deviceIds:z(F()).optional()}),z(Eb).readonly()),listTemplates:K(R(),z(ib).readonly()),saveTemplate:K(B({name:P(),description:P().optional(),config:rb}),ib,{kind:`mutation`,auth:`admin`}),updateTemplate:K(B({id:P(),name:P().optional(),description:P().optional(),config:rb.optional()}),ib,{kind:`mutation`,auth:`admin`}),deleteTemplate:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`})}},Ab=H([`workspace`,`baked`,`data-root`]),jb=H([`idle`,`checking`,`staging`,`pending-restart`,`awaiting-confirmation`]),Mb=B({fromVersion:P(),toVersion:P().nullable(),atMs:F(),reason:P()}),Nb=B({packageName:P(),runningVersion:P().nullable(),nodeRuntimeVersion:P().nullable(),activeVersion:P().nullable(),previousVersion:P().nullable(),seedVersion:P().nullable(),latestVersion:P().nullable(),updateAvailable:I(),bootMode:Ab,updateState:jb,pendingVersion:P().nullable(),rolledBack:Mb.nullable(),stateFileCorrupt:I(),lastCheckedAtMs:F().nullable()}),Pb=B({packageName:P(),runningVersion:P().nullable(),latestVersion:P().nullable(),updateAvailable:I(),checkedAtMs:F(),error:P().nullable()}),Fb=B({accepted:I(),targetVersion:P().nullable(),restarting:I(),message:P()}),Ib={name:`server-management`,scope:`system`,mode:`singleton`,methods:{getServerPackageStatus:K(R(),Nb,{auth:`admin`}),checkServerUpdate:K(R(),Pb,{kind:`mutation`,auth:`admin`}),applyServerUpdate:K(B({version:P().optional()}),Fb,{kind:`mutation`,auth:`admin`,timeoutMs:16*6e4}),rollbackServerUpdate:K(R(),Fb,{kind:`mutation`,auth:`admin`}),restartServer:K(R(),Fb,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},Lb=B({where:V(P(),L()).optional(),whereIn:V(P(),z(L())).optional(),whereBetween:V(P(),ko([L(),L()])).optional(),orderBy:B({field:P(),direction:H([`asc`,`desc`])}).optional(),limit:F().optional(),offset:F().optional()}),Rb=B({id:P(),data:V(P(),L())}),zb=B({name:P(),type:H([`TEXT`,`INTEGER`,`REAL`,`JSON`,`BOOLEAN`]),primaryKey:I().optional(),notNull:I().optional(),unique:I().optional()}),Bb=B({name:P(),columns:z(P()).readonly(),unique:I().optional()}),Vb={name:`settings-store`,scope:`system`,mode:`singleton`,methods:{get:K(B({namespace:P().optional(),collection:P(),key:P()}),L()),set:K(B({namespace:P().optional(),collection:P(),key:P(),value:L()}),R(),{kind:`mutation`}),query:K(B({namespace:P().optional(),collection:P(),filter:Lb.optional()}),z(Rb).readonly()),insert:K(B({namespace:P().optional(),collection:P(),record:Rb}),R(),{kind:`mutation`}),update:K(B({namespace:P().optional(),collection:P(),id:P(),data:V(P(),L())}),R(),{kind:`mutation`}),delete:K(B({namespace:P().optional(),collection:P(),key:P()}),R(),{kind:`mutation`}),count:K(B({namespace:P().optional(),collection:P(),filter:Lb.optional()}),F()),histogram:K(B({namespace:P().optional(),collection:P(),field:P(),bucketSize:F().int().positive(),origin:F().int(),filter:Lb.optional()}),z(B({bucket:F().int(),count:F().int()})).readonly()),isEmpty:K(B({namespace:P().optional(),collection:P()}),I()),declareCollection:K(B({namespace:P().optional(),collection:P(),columns:z(zb).readonly(),indexes:z(Bb).readonly().optional()}),R(),{kind:`mutation`})}},Hb=Ra(),Ub=B({to:Co([Hb,z(Hb).min(1)]),cc:z(Hb).optional(),bcc:z(Hb).optional(),from:P().optional(),replyTo:P().optional(),subject:P(),text:P(),html:P().optional()}),Wb=B({messageId:P(),accepted:z(Hb).default([]),rejected:z(Hb).default([])}),Gb=B({ready:I(),host:P(),error:P().optional(),lastVerifiedAt:F().optional()}),Kb={name:`smtp-provider`,scope:`system`,mode:`collection`,internal:!0,providerKind:`email`,methods:{sendEmail:K(Ub,Wb,{kind:`mutation`,auth:`admin`,access:`create`}),verify:K(R(),Gb,{kind:`mutation`,auth:`admin`,access:`view`}),getStatus:K(R(),Gb,{auth:`admin`})}},qb=B({base64:P(),contentType:P()}),Jb=B({lastCapturedAt:F().nullable(),cacheAgeMs:F().nullable(),lastBytes:F().nullable(),lastStreamId:P().nullable()}),Yb={name:`snapshot`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{getSnapshot:K(B({deviceId:F(),streamId:P().optional(),force:I().optional()}),qb.nullable()),invalidateCache:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`}),getSnapshotOverview:Ns(B({deviceIds:z(F()).min(1).max(200)}),z(B({deviceId:F(),lastCapturedAt:F().nullable(),cacheAgeMs:F().nullable(),etag:P().nullable()})))},status:{schema:Jb,kind:`poll`}},Xb=B({userId:P(),username:P(),isAdmin:I(),provider:P(),email:P().optional(),displayName:P().optional(),hubUrl:P().optional(),scopes:z(fy).optional(),redirectUri:P().optional(),integrationId:P().optional(),jti:P().optional(),sessionId:P().optional()}),Zb={name:`sso-bridge`,scope:`system`,mode:`singleton`,internal:!0,methods:{signBridgeToken:K(B({claims:Xb,ttlSec:F().int().positive().optional()}),B({token:P()})),verifyBridgeToken:K(B({token:P()}),Xb.nullable())}},Qb=To(`shouldSaveDiskSpace`,[B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!0),minFreePercent:F().min(0).max(100)}),B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!1),minFreePercent:U(null)})]),$b={name:`storage`,scope:`system`,mode:`singleton`,methods:{resolve:K(B({location:Ac,relativePath:P()}),P()),write:K(B({location:Ac,relativePath:P(),data:os(Uint8Array)}),R(),{kind:`mutation`}),read:K(B({location:Ac,relativePath:P()}),os(Uint8Array)),exists:K(B({location:Ac,relativePath:P()}),I()),list:K(B({location:Ac,prefix:P().optional()}),z(P()).readonly()),delete:K(B({location:Ac,relativePath:P()}),R(),{kind:`mutation`}),getAvailableSpace:K(B({location:Ac}),F().nullable()),beginUpload:K(B({location:Ac,relativePath:P(),sizeBytes:F().optional()}),B({uploadId:P()}),{kind:`mutation`}),writeChunk:K(B({uploadId:P(),offset:F(),data:os(Uint8Array)}),R(),{kind:`mutation`}),finalizeUpload:K(B({uploadId:P()}),R(),{kind:`mutation`}),abortUpload:K(B({uploadId:P()}),R(),{kind:`mutation`}),beginDownload:K(B({location:Ac,relativePath:P()}),B({downloadId:P(),sizeBytes:F()}),{kind:`mutation`}),readChunk:K(B({downloadId:P(),offset:F(),length:F()}),os(Uint8Array)),endDownload:K(B({downloadId:P()}),R(),{kind:`mutation`}),listLocations:K(B({type:Oc.optional()}),z(kc).readonly()),getDefaultLocation:K(B({type:Oc}),kc.nullable()),listLocationDeclarations:K(R(),z(jc).readonly()),upsertLocation:K(kc.omit({createdAt:!0,updatedAt:!0}),kc,{kind:`mutation`,auth:`admin`}),deleteLocation:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),testLocation:K(B({id:P()}),B({ok:I(),error:P().optional()}),{auth:`admin`}),listProviders:K(R(),z(Qb).readonly()),testConfig:K(B({providerId:P(),config:V(P(),L())}),B({ok:I(),error:P().optional()}),{auth:`admin`})}},ex=B({bytes:F().int().nonnegative()}),tx=B({reclaimedBytes:F().int().nonnegative(),exhausted:I()}),nx={name:`storage-evictable`,scope:`system`,mode:`collection`,internal:!0,methods:{getEvictableUsage:K(B({locationId:P()}),ex),evict:K(B({locationId:P(),targetBytes:F().int().positive()}),tx,{kind:`mutation`})}},rx=To(`shouldSaveDiskSpace`,[B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!0),minFreePercent:F().min(0).max(100)}),B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!1),minFreePercent:U(null)})]),ix=B({ok:I(),error:P().optional()}),ax=B({location:kc,relativePath:P(),sizeBytes:F().optional()}),ox=B({uploadId:P()}),sx=B({uploadId:P(),offset:F(),data:os(Uint8Array)}),cx=B({uploadId:P()}),lx=B({uploadId:P()}),ux=B({location:kc,relativePath:P()}),dx=B({downloadId:P(),sizeBytes:F()}),fx=B({downloadId:P(),offset:F(),length:F()}),px=B({downloadId:P()}),mx={name:`storage-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{getProviderInfo:K(R(),rx),testLocation:K(B({config:V(P(),L())}),ix,{auth:`admin`}),resolve:K(B({location:kc,relativePath:P()}),P()),write:K(B({location:kc,relativePath:P(),data:os(Uint8Array)}),R(),{kind:`mutation`}),read:K(B({location:kc,relativePath:P()}),os(Uint8Array)),exists:K(B({location:kc,relativePath:P()}),I()),list:K(B({location:kc,prefix:P().optional()}),z(P()).readonly()),delete:K(B({location:kc,relativePath:P()}),R(),{kind:`mutation`}),getAvailableSpace:K(B({location:kc}),F().nullable()),beginUpload:K(ax,ox,{kind:`mutation`}),writeChunk:K(sx,R(),{kind:`mutation`}),finalizeUpload:K(cx,R(),{kind:`mutation`}),abortUpload:K(lx,R(),{kind:`mutation`}),beginDownload:K(ux,dx,{kind:`mutation`}),readChunk:K(fx,os(Uint8Array)),endDownload:K(px,R(),{kind:`mutation`})}},hx=B({urls:Co([P(),z(P())]),username:P().optional(),credential:P().optional()}),gx={name:`turn-provider`,scope:`system`,mode:`collection`,methods:{getTurnServers:K(R(),z(hx).readonly())}},_x=B({credentialId:P(),label:P(),createdAt:F(),lastUsedAt:F().nullable(),transports:z(P()).default([])}),vx={name:`user-passkeys`,scope:`system`,mode:`collection`,internal:!0,methods:{beginRegistration:K(B({userId:P(),username:P()}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,auth:`admin`,access:`create`}),finishRegistration:K(B({userId:P(),response:V(P(),L()),label:P()}),B({success:U(!0),credentialId:P()}),{kind:`mutation`,auth:`admin`,access:`create`}),beginAuthentication:K(B({userId:P().optional()}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,access:`view`}),finishAuthentication:K(B({userId:P(),response:V(P(),L())}),B({verified:I()}),{kind:`mutation`,access:`view`}),beginDiscoverableAuthentication:K(B({}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,access:`view`}),finishDiscoverableAuthentication:K(B({response:V(P(),L())}),B({verified:I(),userId:P().nullable()}),{kind:`mutation`,access:`view`}),listPasskeys:K(B({userId:P()}),z(_x),{auth:`admin`}),removePasskey:K(B({userId:P(),credentialId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getSecondFactorPreference:K(B({userId:P()}),B({enabled:I()}),{auth:`admin`}),setSecondFactorPreference:K(B({userId:P(),enabled:I()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`})}},yx=B({id:P(),source:P(),kind:H([`motion`,`object`,`audio`,`native`]),timeRange:B({startMs:F(),endMs:F()}),thumbnail:P().optional()}),bx=B({playbackUrl:P(),playbackEndpoints:z(P()).optional(),token:P().optional()}),xx={name:`videoclips`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,methods:{listClips:K(B({deviceId:F(),since:F(),until:F(),limit:F().int().positive().optional()}),z(yx).readonly(),{kind:`query`,auth:`admin`}),getClipPlayback:K(B({deviceId:F(),clipId:P()}),bx,{kind:`query`,auth:`admin`})}},Sx=B({viewportWidth:F().int().positive().optional(),viewportHeight:F().int().positive().optional(),devicePixelRatio:F().positive().optional(),downlinkMbps:F().nonnegative().optional(),prefersTier:P().optional()}).partial(),Cx=To(`kind`,[B({kind:U(`adaptive`)}),B({kind:U(`profile`),profile:ps}),B({kind:U(`cam-stream`),camStreamId:P().min(1)})]),wx=B({id:P(),label:P(),target:Cx,codec:P().nullable(),resolution:B({width:F(),height:F()}).nullable(),status:H([`idle`,`connecting`,`streaming`,`error`,`stopped`]).nullable(),inputFps:F().nullable(),decodeFps:F().nullable(),bitrateKbps:F().nullable()}),Tx={name:`webrtc-session`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,preferredProvider:`stream-broker`,deviceTypes:[W.Camera],methods:{listStreams:K(B({deviceId:F().int().nonnegative()}),z(wx)),createSession:K(B({deviceId:F().int().nonnegative(),target:Cx,hints:Sx.optional(),relayOnly:I().optional(),consumerAttribution:Ql.optional()}),B({sessionId:P(),sdpOffer:P()}),{kind:`mutation`}),handleOffer:K(B({deviceId:F().int().nonnegative(),target:Cx.optional(),sdpOffer:P(),sessionId:P().optional(),relayOnly:I().optional(),nonTrickle:I().optional(),disableTurn:I().optional(),disableIpv6:I().optional(),consumerAttribution:Ql.optional(),hints:Sx.optional()}),B({sessionId:P(),sdpAnswer:P()}),{kind:`mutation`}),handleAnswer:K(B({deviceId:F().int().nonnegative(),sessionId:P(),sdpAnswer:P()}),R(),{kind:`mutation`}),addIceCandidate:K(B({deviceId:F().int().nonnegative(),sessionId:P(),candidate:P(),sdpMid:P().nullable().optional(),sdpMLineIndex:F().int().nullable().optional()}),R(),{kind:`mutation`}),getIceCandidates:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),B({candidates:z(B({candidate:P(),sdpMid:P().nullable(),sdpMLineIndex:F().int().nullable()})),done:I()}),{kind:`query`}),closeSession:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),R(),{kind:`mutation`}),hasAdaptiveBitrate:K(B({deviceId:F().int().nonnegative(),profile:ps}),I()),getSessionState:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),B({pendingRenegotiation:B({target:Cx,epoch:F()}).nullable()}))},mount:{kind:`server-provided`}},Ex=B({childDeviceIds:z(F()).readonly(),hiddenChildIds:z(F()).readonly()}),Dx={name:`accessories`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Hub,W.Switch,W.Light,W.Sensor,W.Thermostat,W.Cover,W.Lock,W.Fan,W.MediaPlayer,W.AlarmPanel,W.Generic],methods:{setChildHidden:K(B({deviceId:F().int().nonnegative(),childDeviceId:F().int().nonnegative(),hidden:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onAccessoriesChanged:{data:B({deviceId:F(),childDeviceIds:z(F()).readonly(),hiddenChildIds:z(F()).readonly()})},onChildVisibilityChanged:{data:B({deviceId:F(),childDeviceId:F(),hidden:I()})}},status:{schema:Ex,kind:`command-driven`}},Ox=H([`install`,`update`,`uninstall`,`restart`]),kx=H([`queued`,`fetching`,`staged`,`validating`,`applying`,`restarting`,`applied`,`done`,`failed`,`skipped`]),Ax=H([`framework`,`addon`]),jx=B({tsMs:F(),nodeId:P(),packageName:P(),phase:kx,message:P()}),Mx=B({taskId:P(),nodeId:P(),packageName:P(),fromVersion:P().nullable(),toVersion:P(),target:Ax,phase:kx,stagedPath:P().nullable(),attempts:F(),steps:z(jx),error:P().nullable(),startedAtMs:F().nullable(),finishedAtMs:F().nullable()}),Nx=H([`running`,`completed`,`failed`,`partially-failed`,`cancelled`]),Px=H([`single`,`bulk`,`cluster`]),Fx=B({jobId:P(),kind:Ox,createdAtMs:F(),createdBy:P(),scope:Px,tasks:z(Mx),state:Nx,schemaVersion:U(1)}),Ix=H([`debug`,`info`,`warn`,`error`]),Lx=H([`off`,`latest`,`beta`]),Rx=H([`off`,`latest`,`beta`,`inherit`]),zx=B({id:P(),name:P().optional(),version:P().optional(),description:P().optional(),icon:P().optional(),color:P().optional(),capabilities:z(L()).readonly().optional(),packageName:P(),packageVersion:P(),packageDisplayName:P().optional(),bundle:B({displayName:P(),description:P().optional(),icon:P().optional()}).optional(),protected:I().optional(),removable:I().optional()}),Bx=B({pid:F().optional(),mode:P(),state:P()}),Vx=B({phase:H([`pending`,`healthy`,`failed`]),retryCount:F(),firstFailureAt:F().nullable(),lastAttemptAt:F().nullable(),lastError:B({message:P(),stack:P().optional()}).nullable(),nextRetryAt:F().nullable(),alertEmitted:I(),retrying:I(),inGracePeriod:I()}),Hx=B({manifest:zx,declaration:L().optional(),source:P(),installSource:P().optional(),process:Bx.optional(),hasBackup:I().optional(),health:Vx.nullable().optional()}),Ux=B({name:P(),version:P(),dir:P(),installSource:P().optional()}),Wx=B({name:P(),currentVersion:P(),latestVersion:P(),category:H([`addon`,`core`]),requiresRestart:I(),isSystem:I()}),Gx=B({version:P(),publishedAt:P(),deprecated:P().optional(),distTags:z(P()).readonly()}),Kx=B({name:P(),version:P(),description:P(),keywords:z(P()).readonly(),publishedAt:P(),author:P(),installed:I(),installedVersion:P().optional()}),qx=B({channel:Lx,intervalSeconds:F()}),Jx=Rx,Yx=L(),Xx=L(),Zx=L(),Qx=H([`queued`,`updating`,`done`,`done-pending-restart`,`failed`]),$x=B({name:P(),isSystem:I(),fromVersion:P(),toVersion:P(),status:Qx,error:P().optional(),startedAtMs:F().optional(),completedAtMs:F().optional()}),eS=H([`regular`,`system`,`restarting`,`finalizing`]);B({id:P(),nodeId:P(),startedAtMs:F(),completedAtMs:F().optional(),total:F(),completed:F(),failed:F(),current:P().nullable(),phase:eS,cancelled:I(),items:z($x).readonly()});var tS=B({packageName:P(),currentVersion:P(),latestVersion:P().nullable(),hasUpdate:I(),description:P().optional(),buildId:P().nullable()}),nS=B({timestamp:P(),level:P(),message:P(),scope:P().optional()}),rS=L(),iS=B({addonId:P().min(1),action:P().min(1),input:L()}),aS={name:`addons`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{list:K(R(),z(Hx).readonly()),getLogs:K(B({addonId:P(),limit:F().min(1).max(500).default(100),level:Ix.optional()}),z(rS)),listPackages:K(R(),z(Ux).readonly()),installPackage:K(B({packageName:P(),version:P().optional()}),Xx,{kind:`mutation`,auth:`admin`}),installFromWorkspace:K(B({packageName:P()}),Xx,{kind:`mutation`,auth:`admin`}),isWorkspaceAvailable:K(R(),I()),listWorkspacePackages:K(R(),z(L()).readonly()),uninstallPackage:K(B({packageName:P()}),L(),{kind:`mutation`,auth:`admin`}),reloadPackages:K(R(),Zx,{kind:`mutation`,auth:`admin`}),searchAvailable:K(B({query:P().optional()}),z(Kx)),listUpdates:K(B({nodeId:P().optional()}),z(Wx).readonly(),{auth:`admin`}),updatePackage:K(B({name:P().min(1),version:P().optional(),nodeId:P().optional()}),L(),{kind:`mutation`,auth:`admin`}),rollbackPackage:K(B({name:P().min(1)}),B({rolledBackTo:P().nullable()}),{kind:`mutation`,auth:`admin`}),forceRefresh:K(B({nodeId:P().optional()}),L(),{kind:`mutation`,auth:`admin`}),restartServer:K(B({confirm:U(!0)}),L(),{kind:`mutation`,auth:`admin`}),getLastRestart:K(R(),B({kind:H([`framework-update`,`manual`,`system`,`framework-bulk-update`]),packageName:P().optional(),fromVersion:P().optional(),toVersion:P().optional(),requestedBy:P().optional(),requestedAt:F()}).nullable(),{auth:`admin`}),listFrameworkPackages:K(R(),z(tS).readonly(),{auth:`admin`}),listCapabilityProviders:K(B({capName:P().min(1)}),z(B({addonId:P(),mode:H([`singleton`,`collection`]),isActive:I()})).readonly()),setCapabilityProviderEnabled:K(B({capName:P().min(1),addonId:P().min(1),enabled:I()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getVersions:K(B({name:P()}),z(Gx).readonly()),restartAddon:K(B({addonId:P()}),Yx,{kind:`mutation`,auth:`admin`}),retryLoad:K(B({packageName:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getAutoUpdateSettings:K(R(),qx,{auth:`admin`}),setAutoUpdateSettings:K(B({channel:Lx,intervalSeconds:F().min(300).max(86400).optional()}),L(),{kind:`mutation`,auth:`admin`}),getAddonAutoUpdate:K(B({addonId:P()}),Jx,{auth:`admin`}),setAddonAutoUpdate:K(B({addonId:P(),channel:Rx}),L(),{kind:`mutation`,auth:`admin`}),applyAutoUpdateToAll:K(B({channel:Lx}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),custom:K(iS,L(),{kind:`mutation`}),startJob:K(B({kind:H([`install`,`update`,`uninstall`,`restart`]),targets:z(B({name:P().min(1),version:P().min(1)})).min(1),nodeIds:z(P()).optional()}),B({jobId:P()}),{kind:`mutation`,auth:`admin`}),getJob:K(B({jobId:P()}),Fx.nullable(),{auth:`admin`}),listJobs:K(B({activeOnly:I().optional()}),z(Fx),{auth:`admin`}),cancelJob:K(B({jobId:P()}),B({cancelled:I()}),{kind:`mutation`,auth:`admin`}),onAddonLogs:K(B({addonId:P(),level:Ix.optional()}),nS,{kind:`subscription`})},mount:{kind:`server-provided`}},oS={name:`button`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Button],methods:{press:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})}},sS=B({host:P(),port:F().int().positive().optional(),onvifPort:F().int().positive().optional(),rtspPort:F().int().positive().optional(),https:I().optional(),username:P().optional(),password:P().optional(),onvifProfile:P().optional()}),cS=B({host:P(),port:F().int().positive().nullable(),onvifPort:F().int().positive().nullable(),rtspPort:F().int().positive().nullable(),https:I().nullable(),hasUsername:I(),hasPassword:I(),onvifProfile:P().nullable()}),lS={name:`camera-credentials`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCredentials:K(B({deviceId:F()}),sS.nullable(),{kind:`query`,auth:`admin`})},status:{schema:cS,kind:`command-driven`}},uS=B({id:P(),type:P(),timestamp:F(),label:P().optional(),thumbnailUrl:P().optional(),clipUrl:P().optional(),metadata:V(P(),L()).optional()}),dS={name:`events`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getEvents:K(B({deviceId:F(),from:F().optional(),to:F().optional(),limit:F().optional()}),z(uS)),getEventThumbnail:K(B({deviceId:F(),eventId:P()}),B({base64:P(),contentType:P()}).nullable()),getEventClipUrl:K(B({deviceId:F(),eventId:P()}),P().nullable())}},fS=B({id:P(),name:P(),sampleCount:F().int().nonnegative(),coverMediaKey:P().optional(),coverBase64:P().optional()}),pS=B({id:P(),source:H([`detected`,`photo`]),addedAt:F().int(),deviceId:F().int().optional(),base64:P().optional()}),mS=B({faceId:P(),deviceId:F().int(),trackId:P(),timestamp:F().int(),recognizedIdentityId:P().optional(),identityName:P().optional(),assigned:I(),base64:P().optional(),faceBbox:Pd.optional(),keyFrameMediaKey:P().optional()}),hS=H([`unassigned`,`recognized`,`all`]),gS=B({key:P(),kind:P(),base64:P(),sizeBytes:F(),timestamp:F()}),_S={name:`face-gallery`,scope:`system`,mode:`singleton`,methods:{listIdentities:K(R(),z(fS).readonly()),createIdentity:K(B({name:P().min(1)}),fS,{kind:`mutation`,auth:`admin`}),renameIdentity:K(B({id:P(),name:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deleteIdentity:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),listIdentitySamples:K(B({identityId:P()}),z(pS).readonly()),removeSample:K(B({identityId:P(),sampleId:P()}),R(),{kind:`mutation`,auth:`admin`}),listRecentFaces:K(B({limit:F().int().positive().optional(),filter:hS.optional()}).optional(),z(mS).readonly()),getFaceByTrack:K(B({deviceId:F().int(),trackId:P()}),mS.nullable()),getFaceMedia:K(B({faceId:P()}),z(gS).readonly()),assignFace:K(B({faceId:P(),identityId:P()}),R(),{kind:`mutation`,auth:`admin`}),unassignFace:K(B({faceId:P()}),R(),{kind:`mutation`,auth:`admin`}),deleteFace:K(B({faceId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignFaces:K(B({faceIds:z(P()).min(1),identityId:P()}),B({assigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignFaces:K(B({faceIds:z(P()).min(1)}),B({unassigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),suggestFaceClusters:K(B({threshold:F().min(0).max(1).optional(),minClusterSize:F().int().min(2).optional(),limit:F().int().positive().optional()}).optional(),z(B({faceIds:z(P()).readonly(),representativeFaceId:P(),size:F().int(),cohesion:F()})).readonly())}},vS=B({id:P(),addonId:P(),name:P(),enabled:I(),info:V(P(),L()).readonly(),createdAt:F(),updatedAt:F(),processState:P()}),yS=B({id:P(),addonId:P(),name:P(),enabled:I(),info:V(P(),L()).readonly(),createdAt:F(),updatedAt:F()}),bS=B({addonId:P(),name:P(),description:P(),iconUrl:P().nullable(),color:P(),instanceMode:P(),mode:H([`standalone`,`account`,`broker`]),discoveryMode:P(),kind:H([`device-adoption`,`device-provider`]),brokerKind:P().nullable(),supportsLocationImport:I(),existingInstances:z(B({id:P(),name:P()})),canAdd:I()}),xS=B({success:I(),error:P().optional()}),SS=B({addonId:P(),name:P(),enabled:I().optional(),info:V(P(),L()).optional(),settings:V(P(),L()).optional(),skipRestart:I().optional()}),CS=B({id:P(),name:P().optional(),enabled:I().optional(),info:V(P(),L()).optional()}),wS=B({success:I(),deletedId:P()}),TS={name:`integrations`,scope:`system`,mode:`singleton`,methods:{list:K(R(),z(vS)),get:K(B({id:P()}),vS),getByAddonId:K(B({addonId:P()}),yS.nullable()),create:K(SS,yS,{kind:`mutation`,auth:`admin`}),update:K(CS,yS,{kind:`mutation`,auth:`admin`}),delete:K(B({id:P()}),wS,{kind:`mutation`,auth:`admin`}),getSettings:K(B({id:P()}),V(P(),L()),{auth:`admin`}),setSettings:K(B({id:P(),settings:V(P(),L())}),B({success:I()}),{kind:`mutation`,auth:`admin`}),getAvailableTypes:K(R(),z(bS),{auth:`admin`}),testConnection:K(B({addonId:P(),settings:V(P(),L())}),xS,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},ES=B({codecs:z(P()),sampleRate:F(),duplex:H([`half`,`full`]),maxBacklogMs:F()}),DS=B({talking:I(),lastSessionAt:F().nullable(),ability:ES.nullable()}),OS=H([`opus`,`s16le`,`g711ulaw`,`g711alaw`]),kS={name:`intercom`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{startSession:K(B({deviceId:F()}),B({sessionId:P(),sdpOffer:P()}),{kind:`mutation`,auth:`admin`}),handleAnswer:K(B({deviceId:F(),sessionId:P(),sdpAnswer:P()}),R(),{kind:`mutation`,auth:`admin`}),stopSession:K(B({deviceId:F(),sessionId:P()}),R(),{kind:`mutation`,auth:`admin`}),startTalkSession:K(B({deviceId:F()}),B({sessionId:P()}),{kind:`mutation`,auth:`admin`}),pushTalkAudio:K(B({deviceId:F(),audioBase64:P(),codec:OS.optional(),sampleRate:F().int().positive().optional(),channels:F().int().positive().optional(),sequenceNumber:F().int()}),B({accepted:I()}),{kind:`mutation`,auth:`admin`}),endTalkSession:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`})},events:{onStatusChanged:{data:B({deviceId:F(),status:DS})}},status:{schema:DS,kind:`command-driven`}},AS=H([`lan`,`wifi`,`docker`,`vpn`,`loopback`,`other`]),jS=B({name:P(),family:H([`IPv4`,`IPv6`]),address:P(),cidr:P(),netmask:P(),internal:I(),mac:P(),kind:AS,preferred:I(),plausible:I(),plausibleReason:P()}),MS=B({interfaces:z(jS).readonly(),probedAt:F()}),NS=jS.nullable(),PS=B({endpoints:z(B({label:P(),baseUrl:P(),kind:H([`lan-ipv4`,`lan-ipv6`,`public`,`loopback`]),interfaceKind:H([`lan`,`wifi`,`docker`,`vpn`,`other`,`loopback`,`public`]),plausible:I(),plausibleReason:P(),priority:F()})).readonly()}),FS=B({addresses:z(P()).readonly()}),IS={name:`local-network`,scope:`system`,mode:`singleton`,methods:{list:K(R(),MS),getPreferred:K(R(),NS),getConnectionEndpoints:K(B({port:F().int().min(1).max(65535),includeLoopback:I().optional(),ipv4Only:I().optional(),scheme:H([`http`,`https`]).optional()}),PS),getAllowedAddresses:K(R(),FS),setAllowedAddresses:K(FS,B({success:U(!0)}),{kind:`mutation`}),resetAllowlistToBestMatch:K(R(),FS,{kind:`mutation`})},mount:{kind:`hub-only`}},LS=B({id:P(),label:P(),scope:H([`mesh`,`public`]),url:P(),hostname:P(),port:F(),protocol:H([`http`,`https`])}),RS=B({id:P(),hostname:P(),magicDns:P(),addresses:z(P()).readonly(),os:P().optional(),online:I(),lastSeenMs:F(),isSelf:I(),connection:H([`direct`,`relay`,`idle`]),relay:P().nullable(),lastHandshakeMs:F(),rxBytes:F(),txBytes:F(),tags:z(P()).readonly(),exitNodeOption:I(),advertisedRoutes:z(P()).readonly(),userLogin:P().nullable(),keyExpiry:F().nullable()}),zS=B({joined:I(),meshIp:P(),magicDnsHostname:P(),peerCount:F(),endpoints:z(LS).readonly(),error:P().optional(),tenantName:P(),magicDnsSuffix:P(),userLogin:P().nullable(),controlPlaneUrl:P(),keyExpiry:F().nullable(),daemonSocket:P().optional(),daemonCliPath:P().optional()}),BS={name:`mesh-network`,scope:`system`,mode:`collection`,providerKind:`mesh`,methods:{getStatus:K(R(),zS),join:K(B({authKey:P().min(8),hostname:P().optional()}),B({joined:U(!0)}),{kind:`mutation`}),startLogin:K(B({hostname:P().optional()}),B({loginUrl:P()}),{kind:`mutation`}),leave:K(R(),B({left:U(!0)}),{kind:`mutation`}),logout:K(R(),B({loggedOut:U(!0)}),{kind:`mutation`}),listPeers:K(R(),B({peers:z(RS).readonly()})),testConnection:K(B({authKey:P().optional()}),B({ok:I(),tenant:P().optional(),daemonVersion:P().optional(),error:P().optional()}),{kind:`mutation`})}},VS=B({nominalBitrateKbps:F(),observedBitrateKbps:F(),peakBitrateKbps:F(),packetLossPercent:F(),lastUpdated:F()}),HS=B({rttMs:F(),jitterMs:F(),estimatedBandwidthKbps:F(),packetLossPercent:F().min(0).max(100),lastUpdated:F()}),US=B({deviceId:F(),streams:V(P(),VS),client:HS.optional()}),WS={name:`network-quality`,scope:`system`,mode:`singleton`,methods:{getDeviceStats:K(B({deviceId:F()}),US.nullable()),getAllStats:K(R(),z(US).readonly()),reportClientStats:K(B({deviceId:F(),rttMs:F().min(0).max(6e4),jitterMs:F().min(0).max(1e4),estimatedBandwidthKbps:F().min(0).max(1e6),packetLossPercent:F().min(0).max(100)}),R(),{kind:`mutation`})},mount:{kind:`server-provided`}},GS=B({addonId:P(),capabilities:z(P()).readonly(),status:P()}),KS=B({pid:F(),name:P(),state:P(),cpuPercent:F(),memoryRss:F(),uptimeSeconds:F(),services:z(GS).readonly(),groupId:P().optional()}),qS=B({id:P(),status:P(),cpuPercent:F(),memoryRss:F()}),JS=B({category:P(),total:F(),healthy:F(),addons:z(qS).readonly()}),YS=B({name:P(),version:P()}),XS=B({id:P(),name:P(),hostname:P(),platform:P(),arch:P(),cpuModel:P().nullable(),cpuCores:F(),memoryMB:F(),engines:z(P()).readonly(),isHub:I(),isOnline:I(),cpuPercent:F(),memoryPercent:F(),uptime:F(),lastSeen:P(),localIps:z(P()).readonly(),addons:z(B({id:P(),capabilities:z(P()).readonly(),status:P()})).readonly(),processes:z(KS).readonly(),categories:z(JS).readonly(),rootPackage:YS.nullable()}),ZS=B({callerAddonId:P(),providerAddonId:P(),capName:P(),callsPerMin:F(),lastCallAtMs:F()}),QS=B({nodeId:P(),name:P(),version:P(),status:P(),synced:I()}),$S=B({hubVersion:P(),nodes:z(QS)}),eC=B({nodeId:P(),addonId:P()}),tC=B({id:P(),status:P(),version:P().optional(),packageName:P().optional()}),nC=B({success:I()}),rC=B({success:I(),reason:P().optional()}),iC=B({restarted:z(P()).readonly(),failed:z(P()).readonly()}),aC=B({nodeId:P(),name:P()}),oC={name:`nodes`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{topology:K(R(),z(XS).readonly(),{auth:`admin`}),deployAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),undeployAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),restartAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),restartProcess:K(B({nodeId:P(),processName:P()}),rC,{kind:`mutation`,auth:`admin`}),restartNode:K(B({nodeId:P()}),iC,{kind:`mutation`,auth:`admin`}),shutdownNode:K(B({nodeId:P()}),nC,{kind:`mutation`,auth:`admin`}),renameNode:K(B({nodeId:P(),name:P().min(1).max(64)}),aC,{kind:`mutation`,auth:`admin`}),clusterAddonStatus:K(R(),V(P(),$S),{auth:`admin`}),getCapUsageGraph:K(B({windowSeconds:F().int().positive().max(300).default(60)}),z(ZS).readonly(),{auth:`admin`}),getNodeAddons:K(B({nodeId:P()}),z(tC).readonly(),{auth:`admin`}),setProcessLogLevel:K(B({nodeId:P(),level:P()}),nC,{kind:`mutation`,auth:`admin`}),executeQuery:K(B({nodeId:P(),addonId:P(),queryName:P(),params:V(P(),L()).optional()}),L(),{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},sC=H([`text`,`timestamp`,`watermark`]),cC=H([`top-left`,`top-center`,`top-right`,`bottom-left`,`bottom-center`,`bottom-right`,`custom`]),lC=B({overlays:z(B({id:P(),kind:sC,enabled:I(),text:P().optional(),position:cC.optional(),availablePositions:z(cC).readonly(),readOnly:I().optional()})).readonly()}),uC=B({enabled:I().optional(),text:P().optional(),position:cC.optional()}).partial(),dC={name:`osd`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{setOverlay:K(B({deviceId:F(),overlayId:P(),patch:uC}),R(),{kind:`mutation`,auth:`admin`})},events:{onStatusChanged:{data:B({deviceId:F(),status:lC})}},status:{schema:lC,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}}}]}},fC=B({id:P(),name:P(),sampleCount:F().int().nonnegative(),coverMediaKey:P().optional(),coverBase64:P().optional()}),pC=B({id:P(),text:P(),score:F(),addedAt:F().int(),deviceId:F().int().optional(),base64:P().optional()}),mC=B({plateId:P(),deviceId:F().int(),trackId:P(),timestamp:F().int(),text:P(),score:F(),corrected:I(),recognizedVehicleId:P().optional(),vehicleName:P().optional(),assigned:I(),plateBbox:Pd.optional(),keyFrameMediaKey:P().optional(),base64:P().optional()}),hC=B({key:P(),kind:P(),base64:P(),sizeBytes:F(),timestamp:F()}),gC=B({plateIds:z(P()).readonly(),representativePlateId:P(),representativeText:P(),size:F().int(),cohesion:F()}),_C={name:`plate-gallery`,scope:`system`,mode:`singleton`,methods:{listPlates:K(B({deviceId:F().int().optional(),limit:F().int().positive().optional()}).optional(),z(mC).readonly()),getPlateByTrack:K(B({deviceId:F().int(),trackId:P()}),mC.nullable()),getPlateMedia:K(B({plateId:P()}),z(hC).readonly()),searchPlates:K(B({text:P().min(1),maxDistance:F().int().min(0).optional(),limit:F().int().positive().optional()}),z(mC).readonly()),suggestPlateClusters:K(B({maxDistance:F().int().min(0).optional(),minClusterSize:F().int().min(2).optional(),limit:F().int().positive().optional()}).optional(),z(gC).readonly()),correctPlateText:K(B({plateId:P(),text:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deletePlate:K(B({plateId:P()}),R(),{kind:`mutation`,auth:`admin`}),listVehicles:K(R(),z(fC).readonly()),createVehicle:K(B({name:P().min(1)}),fC,{kind:`mutation`,auth:`admin`}),renameVehicle:K(B({id:P(),name:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deleteVehicle:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),listVehicleSamples:K(B({vehicleId:P()}),z(pC).readonly()),removeVehicleSample:K(B({vehicleId:P(),sampleId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignPlate:K(B({plateId:P(),vehicleId:P()}),R(),{kind:`mutation`,auth:`admin`}),unassignPlate:K(B({plateId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignPlates:K(B({plateIds:z(P()).min(1),vehicleId:P()}),B({assigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignPlates:K(B({plateIds:z(P()).min(1)}),B({unassigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`})}},vC=H(tc),yC=H([`videotoolbox`,`cuda`,`nvdec`,`vaapi`,`qsv`,`d3d11va`,`dxva2`,`amf`,`vdpau`,`drm`,`coreml`,`tensorrt`,`openvino`,`directml`,`webgpu`,`none`]).nullable().optional(),bC=B({preferred:z(P()).readonly(),rationale:P()}),xC=H([`h264_videotoolbox`,`hevc_videotoolbox`,`h264_vaapi`,`hevc_vaapi`,`h264_nvenc`,`hevc_nvenc`,`h264_qsv`,`hevc_qsv`,`h264_amf`,`hevc_amf`,`libx264`,`libx265`]);B({encoders:z(B({encoder:xC,codec:H([`H264`,`H265`]),family:H([`videotoolbox`,`vaapi`,`nvenc`,`qsv`,`amf`,`software`]),available:I(),reason:P().optional()})).readonly(),defaultH264:xC,defaultH265:xC,probedAt:F()}),B({methods:z(P()).readonly(),probedAt:F()});var SC=H([`darwin`,`linux`,`win32`]),CC=H([`arm64`,`x64`]),wC=B({type:H([`nvidia`,`amd`,`intel`,`apple`]),name:P(),memoryMB:F().optional()}),TC=B({type:H([`apple-ane`,`intel-npu`])}),EC=B({type:U(`coral-edgetpu`),bus:P().optional()}),DC=B({platform:SC,arch:CC,cpuModel:P(),cpuCores:F(),totalRAM_MB:F(),availableRAM_MB:F(),gpu:wC.nullable(),npu:TC.nullable(),coral:EC.nullable().optional()}),OC=B({runtime:H([`node`,`python`]),backend:P(),format:H([`onnx`,`coreml`,`openvino`,`tflite`]),score:F(),reason:P(),available:I()}),kC=B({key:P(),backend:P(),device:P(),format:vC,runtime:U(`python`),score:F(),available:I()}),AC=B({hardware:DC,scores:z(OC).readonly(),bestScore:OC,pythonPath:P().nullable(),devices:z(kC).readonly()}),jC=B({modelId:P(),name:P(),minRAM_MB:F(),accuracyScore:F(),formats:z(P()).readonly()}),MC=B({modelId:P(),runtime:H([`node`,`python`]),backend:P(),format:vC,reason:P()}),NC={name:`platform-probe`,scope:`system`,mode:`singleton`,methods:{getCapabilities:K(R(),AC),getHardware:K(R(),DC),resolveInferenceConfig:K(B({requirements:z(jC).readonly()}),MC),resolveHwAccel:K(B({prefer:yC}),bC)}},PC=B({id:P(),name:P()}),FC=B({pan:F(),tilt:F(),zoom:F()}),IC=B({pan:F().optional(),tilt:F().optional(),zoom:F().optional(),speed:F().optional()}),LC=FC.extend({autofocus:I()}),RC=B({hasPan:I(),hasTilt:I(),hasZoom:I(),supportsPresets:I(),maxPresets:F().optional(),hasAutofocus:I()}),zC={name:`ptz`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-panel`,tab:`ptz`,topTab:!0,label:`PTZ`,order:0}},methods:{move:K(IC.extend({deviceId:F()}),R(),{kind:`mutation`}),continuousMove:K(IC.extend({deviceId:F()}),R(),{kind:`mutation`}),stop:K(B({deviceId:F()}),R(),{kind:`mutation`}),getPresets:K(B({deviceId:F()}),z(PC)),goToPreset:K(B({deviceId:F(),presetId:P()}),R(),{kind:`mutation`}),savePreset:K(B({deviceId:F(),presetId:P(),name:P()}),R(),{kind:`mutation`,auth:`admin`}),deletePreset:K(B({deviceId:F(),presetId:P()}),R(),{kind:`mutation`,auth:`admin`}),getOptions:K(B({deviceId:F()}),RC),goHome:K(B({deviceId:F()}),R(),{kind:`mutation`}),getPosition:K(B({deviceId:F()}),FC),setAutofocus:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`})},status:{schema:LC,kind:`command-driven`}},BC={name:`reboot`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor,W.Switch],methods:{reboot:K(B({deviceId:F().int().nonnegative()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`})}},VC=B({deviceId:F(),enabled:I(),activeMode:H([`off`,`continuous`,`events`]),nodeId:P(),storageBytes:F()}),HC=B({profile:P(),startMs:F(),endMs:F()}),UC=B({deviceId:F(),ranges:z(HC)}),WC=B({deviceId:F(),days:z(F())}),GC=B({deviceId:F(),localMasterPath:P().nullable(),playbackUrl:P().nullable(),playbackEndpoints:z(P())}),KC=B({deviceId:F(),usedBytes:F()}),qC=B({locationId:P().nullable(),usedBytes:F(),availableBytes:F().nullable(),totalBytes:F().nullable()}),JC=B({nodeId:P(),totalUsedBytes:F(),devices:z(KC),locations:z(qC)}),YC=To(`kind`,[B({kind:U(`segment`),startMs:F(),durMs:F(),bytes:F()}),B({kind:U(`gap`),nearestEdgeMs:F().nullable(),prevEndMs:F().nullable().optional()})]),XC=B({data:os(Uint8Array)}),ZC={name:`recording`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,status:{schema:VC,kind:`command-driven`},methods:{getAvailability:K(B({deviceId:F(),fromMs:F(),toMs:F()}),UC,{kind:`query`,auth:`admin`}),getDaysWithRecordings:K(B({deviceId:F(),fromMs:F(),toMs:F(),tzOffsetMinutes:F()}),WC,{kind:`query`,auth:`admin`}),getPlaybackManifest:K(B({deviceId:F(),fromMs:F(),toMs:F()}),GC,{kind:`query`,auth:`admin`}),getStorageUsage:K(B({}),JC,{kind:`query`,auth:`admin`}),getDeviceConfig:K(B({deviceId:F()}),Sc,{kind:`query`,auth:`admin`}),locateSegment:K(B({deviceId:F(),profile:P(),epochMs:F()}),YC,{kind:`query`,auth:`admin`}),readSegmentBytes:K(B({deviceId:F(),profile:P(),startMs:F()}),XC,{kind:`query`,auth:`admin`}),setDeviceConfig:K(B({deviceId:F(),config:Sc}),Sc,{kind:`mutation`,auth:`admin`}),rescanStorage:K(B({deviceId:F()}),VC,{kind:`mutation`,auth:`admin`}),pruneFootage:K(B({deviceId:F(),reason:Tc.optional()}),B({floorMs:F().nullable(),deletedBuckets:F().int(),reclaimedBytes:F().int()}),{kind:`mutation`,auth:`admin`}),deleteFootprint:K(B({deviceId:F(),fromMs:F().optional(),toMs:F().optional()}),B({deletedBuckets:F().int(),reclaimedBytes:F().int()}),{kind:`mutation`,auth:`admin`}),listOpsLog:K(Dc,z(Ec).readonly(),{kind:`query`,auth:`admin`})}},QC=F().min(.25).max(32),$C=B({everyMs:F().int().positive(),outputFps:F().int().min(1).max(60).optional()}),ew=B({speed:QC.optional(),timelapse:$C.optional(),includeAudio:I(),maxLifeMs:F().int().positive(),deleteAfterDownload:I(),title:P().max(200).optional()}).superRefine((e,t)=>{e.speed!==void 0&&e.timelapse!==void 0&&t.addIssue({code:ss.custom,message:`speed and timelapse are mutually exclusive`,path:[`timelapse`]})}),tw=H([`queued`,`rendering`,`ready`,`failed`,`expired`,`deleted`]),nw=B({id:P(),deviceId:F(),profile:P(),fromMs:F(),toMs:F(),options:ew,state:tw,progressPct:F().nullable(),fileBytes:F().nullable(),expiresAt:F(),deleteAfterDownload:I(),downloadedAt:F().nullable(),createdAt:F(),createdBy:P(),error:P().nullable()}),rw=B({url:P(),endpoints:z(P())}),iw={name:`recordingExport`,scope:`system`,mode:`singleton`,methods:{createExport:K(B({deviceId:F(),profile:P(),fromMs:F(),toMs:F(),options:ew}),nw,{kind:`mutation`,auth:`protected`}),listExports:K(B({deviceId:F().optional()}),z(nw),{kind:`query`,auth:`protected`}),getExport:K(B({exportId:P()}),nw,{kind:`query`,auth:`protected`}),cancelExport:K(B({exportId:P()}),nw,{kind:`mutation`,auth:`protected`}),deleteExport:K(B({exportId:P()}),nw,{kind:`mutation`,auth:`protected`}),getDownloadUrl:K(B({exportId:P()}),rw,{kind:`query`,auth:`protected`})}},aw=B({camStreamId:P().min(1),kind:ms,url:P().optional(),codec:P().optional(),resolution:hs.optional(),fps:F().positive().optional(),label:P().optional(),deviceFeatures:z(P()).optional(),autoEligible:I().optional(),metadata:V(P(),L()).optional()}),ow={name:`stream-catalog`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCatalog:K(B({deviceId:F().int().nonnegative()}),z(aw).readonly())}},sw=B({streaming:I(),notifications:I(),objectDetection:I(),remoteAccess:I(),agentCluster:I(),smartHome:I(),recordings:I(),backup:I(),repl:I()}),cw=B({status:U(`ok`),uptime:F()}),lw=B({name:P(),address:P(),family:P(),internal:I()}),uw={name:`system`,scope:`system`,mode:`singleton`,methods:{info:K(R(),sw),health:K(R(),cw),featureFlags:K(R(),sw),networkAddresses:K(R(),z(lw).readonly()),getRetentionConfig:K(R(),L().nullable(),{auth:`admin`}),setRetentionConfig:K(V(P(),L()),lo(),{kind:`mutation`,auth:`admin`}),forceRetentionCleanup:K(R(),R(),{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},dw=B({title:P(),message:P(),severity:H([`info`,`warning`,`critical`]),duration:F().optional(),action:B({label:P(),url:P()}).optional()}),fw={name:`toast`,scope:`system`,mode:`singleton`,methods:{onToast:K(R(),dw,{kind:`subscription`})},mount:{kind:`server-provided`}},pw=B({id:P(),username:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]),allowedDevices:V(P(),Co([z(P()),U(`*`)])),scopes:z(fy).default([]),totpEnabled:I().default(!1),createdAt:F(),updatedAt:F()}),mw=B({username:P(),password:P().min(6),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),scopes:z(fy).optional()}),hw=B({id:P(),isAdmin:I().optional(),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),scopes:z(fy).optional()}),gw=B({id:P(),label:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),tokenPrefix:P(),createdAt:F(),lastUsedAt:F().optional()}),_w=B({label:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional()}),vw=B({token:P(),record:gw}),yw=B({id:P(),userId:P(),name:P(),tokenPrefix:P(),scopes:z(fy),expiresAt:F().nullish(),lastUsedAt:F().nullish(),createdAt:F()}),bw=B({userId:P(),name:P(),scopes:z(fy),expiresAt:F().optional()}),xw=B({token:P(),record:yw}),Sw=B({id:P(),userId:P(),username:P(),integrationId:P(),scopes:z(fy),createdAt:F(),lastUsedAt:F(),revokedAt:F().nullable()}),Cw=B({secret:P(),otpauthUrl:P()}),ww=B({enabled:I(),confirmedAt:F().nullable()}),Tw=[Dx,fh,mh,vh,wh,jh,kh,aS,Hs,Rh,Ol,Ml,Uh,Pl,Wh,Jh,ng,Rl,ig,Bl,mg,Hl,Wl,Kl,Fg,oS,lS,Ig,uu,fu,hu,bu,Su,Tu,Du,Au,Mu,Rg,Ru,Bg,Vg,e_,Uu,l_,A_,Ys,Qm,j_,wl,Ku,P_,Yu,Qu,dS,_S,td,El,L_,rd,ad,sd,ld,dd,bd,TS,kS,wd,sy,Yv,IS,Ed,B_,sg,jd,BS,av,ov,sv,Kf,Bd,Yf,sp,yv,fp,Cv,WS,oC,Rv,yp,xp,my,dC,Tp,Qy,xf,kb,Uf,_C,NC,Dp,Ap,Mp,Rp,zC,Up,BC,ZC,iw,Xp,Qp,Ib,Vb,em,Kb,Yb,Zb,$b,nx,mx,au,ow,sm,lm,uw,dm,pm,fw,gx,hm,{name:`user-management`,scope:`system`,mode:`singleton`,methods:{listUsers:K(R(),z(pw),{auth:`admin`}),createUser:K(mw,pw,{kind:`mutation`,auth:`admin`,access:`create`}),updateUser:K(hw,B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),deleteUser:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),resetPassword:K(B({id:P(),newPassword:P().min(6)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),setUserScopes:K(B({userId:P(),scopes:z(fy)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),validateCredentials:K(B({username:P(),password:P()}),pw.extend({passwordHash:P()}).nullable(),{kind:`mutation`,access:`view`}),listApiKeys:K(R(),z(gw),{auth:`admin`}),createApiKey:K(_w,vw,{kind:`mutation`,auth:`admin`,access:`create`}),revokeApiKey:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),validateApiKey:K(B({token:P()}),gw.nullable(),{kind:`mutation`,access:`view`}),createScopedToken:K(bw,xw,{kind:`mutation`,auth:`admin`,access:`create`}),revokeScopedToken:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),validateScopedToken:K(B({token:P()}),yw.nullable(),{access:`view`}),listScopedTokens:K(B({userId:P()}),z(yw),{auth:`admin`}),setupTotp:K(B({userId:P()}),Cw,{kind:`mutation`,auth:`admin`,access:`create`}),confirmTotp:K(B({userId:P(),code:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),disableTotp:K(B({userId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getTotpStatus:K(B({userId:P()}),ww,{auth:`admin`}),verifyTotp:K(B({userId:P(),code:P()}),B({valid:I()}),{kind:`mutation`,access:`view`}),oauthIssueCode:K(B({integrationId:P(),userId:P(),username:P(),scopes:z(fy),redirectUri:P(),hubUrl:P()}),B({code:P()}),{kind:`mutation`,access:`create`}),oauthExchangeCode:K(B({code:P(),redirectUri:P()}),B({accessToken:P(),refreshToken:P(),expiresIn:F()}).nullable(),{kind:`mutation`,access:`view`}),oauthRefresh:K(B({refreshToken:P()}),B({accessToken:P(),refreshToken:P(),expiresIn:F()}).nullable(),{kind:`mutation`,access:`view`}),oauthVerifyAccessToken:K(B({token:P()}),B({userId:P(),username:P(),scopes:z(fy)}).nullable(),{access:`view`}),listOauthSessions:K(R(),z(Sw),{auth:`admin`}),revokeOauthSession:K(B({id:P()}),B({success:I()}),{kind:`mutation`,auth:`admin`,access:`delete`})}},vx,ym,xm,Cm,xx,Gs,Tm,Dm,Tx,Fm,zm,Tf];Object.freeze({"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.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.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`},"advancedNotifier.deleteRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`delete`},"advancedNotifier.getHistory":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`view`},"advancedNotifier.getRules":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`view`},"advancedNotifier.testRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`create`},"advancedNotifier.upsertRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`create`},"alarmPanel.arm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"alarmPanel.disarm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"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`},"audioAnalysis.resolveDeviceSettings":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`view`},"audioAnalyzer.analyseChunk":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.classify":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`view`},"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.trigger":{capName:`automation-control`,capScope:`device`,addonId:null,access:`create`},"backup.delete":{capName:`backup`,capScope:`system`,addonId:null,access:`delete`},"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.listDestinations":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listLocations":{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.trigger":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.upsertDestinationPolicy":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"battery.wakeForStream":{capName:`battery`,capScope:`device`,addonId:null,access:`create`},"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`},"cameraCredentials.getCredentials":{capName:`camera-credentials`,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`},"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.setColor":{capName:`color`,capScope:`device`,addonId:null,access:`create`},"consumables.reset":{capName:`consumables`,capScope:`device`,addonId:null,access:`delete`},"control.setValue":{capName:`control`,capScope:`device`,addonId:null,access:`create`},"cover.close":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"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.listModels":{capName:`custom-model-registry`,capScope:`system`,addonId:null,access:`view`},"dayNight.getOptions":{capName:`day-night`,capScope:`device`,addonId:null,access:`view`},"dayNight.setSettings":{capName:`day-night`,capScope:`device`,addonId:null,access:`create`},"decoder.createSession":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.destroySession":{capName:`decoder`,capScope:`system`,addonId:null,access:`delete`},"decoder.getFrame":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getInfo":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getShmStats":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getStats":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.listActiveSessions":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.openStream":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pullFrames":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pullHandles":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pushPacket":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.reprobeHwaccel":{capName:`decoder`,capScope:`system`,addonId:null,access:`create`},"decoder.supportsCodec":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.updateConfig":{capName:`decoder`,capScope:`system`,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.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`},"deviceDiscovery.adoptDevice":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`create`},"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.exposeDevice":{capName:`device-export`,capScope:`system`,addonId:null,access:`create`},"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`},"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.adoptionListCandidateFilters":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.adoptionListCandidates":{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.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.getChildren":{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.getLinkedDevices":{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.listAll":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listBindableCapsForDeviceType":{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.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.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.runDeviceAction":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setChildLayout":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setDeviceLinks":{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.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.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.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.getAllSnapshots":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getSnapshot":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.setCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"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`},"events.getEventClipUrl":{capName:`events`,capScope:`device`,addonId:null,access:`view`},"events.getEvents":{capName:`events`,capScope:`device`,addonId:null,access:`view`},"events.getEventThumbnail":{capName:`events`,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.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`},"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`},"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`},"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`},"imageSettings.getOptions":{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.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`},"lawnMowerControl.dock":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`create`},"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.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.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.complete":{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`},"localNetwork.getAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getConnectionEndpoints":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getPreferred":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.list":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.resetAllowlistToBestMatch":{capName:`local-network`,capScope:`system`,addonId:null,access:`delete`},"localNetwork.setAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"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`},"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.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.dumpHeapSnapshot":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`create`},"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.getProcessStats":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.killProcess":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`create`},"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.isDetected":{capName:`motion`,capScope:`device`,addonId:null,access:`view`},"motionDetection.analyze":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`create`},"motionDetection.removeCamera":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionDetection.reset":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionTrigger.setMotionTrigger":{capName:`motion-trigger`,capScope:`device`,addonId:null,access:`create`},"motionZones.getOptions":{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.setEnabled":{capName:`native-object-detection`,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`},"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`},"nodes.clusterAddonStatus":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.deployAddon":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"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.listTargetKinds":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.listTargets":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"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`},"notifier.cancel":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"notifier.send":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"oauthIntegration.getDescriptor":{capName:`oauth-integration`,capScope:`system`,addonId:null,access:`view`},"osd.setOverlay":{capName:`osd`,capScope:`device`,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.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.clearTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteDeviceEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.getActiveTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getAudioEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventDensity":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventMedia":{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.getMotionEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getSensorEvents":{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.listEventKinds":{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.listTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"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.searchObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.wipeAllAnalytics":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineExecutor.cacheFrameInPool":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.clearDeviceOverrides":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.deleteModel":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.deleteTemplate":{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.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.listTemplates":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"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.saveTemplate":{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.updateTemplate":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.validatePipeline":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.assignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.assignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.deleteTemplate":{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.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.getCapabilityBindings":{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.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.listAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.listTemplates":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.rebalance":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.removeAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.resetNodePipelineDefaults":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.resolvePipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.saveTemplate":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentCapabilities":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentDetectWeight":{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.setCameraPipelineForAgent":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepOverride":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepToggle":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCapabilityBinding":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setPipelineDevicePin":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.unassignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.unassignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.updateTemplate":{capName:`pipeline-orchestrator`,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.reportMotion":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.runDetailSubtree":{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`},"privacyMask.getOptions":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`view`},"privacyMask.setMask":{capName:`privacy-mask`,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.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.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.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.deleteFootprint":{capName:`recording`,capScope:`system`,addonId:null,access:`delete`},"recording.getAvailability":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getDaysWithRecordings":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getDeviceConfig":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getPlaybackManifest":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getStorageUsage":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.listOpsLog":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.locateSegment":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.pruneFootage":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recording.readSegmentBytes":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.rescanStorage":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recording.setDeviceConfig":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recordingExport.cancelExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`create`},"recordingExport.createExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`create`},"recordingExport.deleteExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`delete`},"recordingExport.getDownloadUrl":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`view`},"recordingExport.getExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`view`},"recordingExport.listExports":{capName:`recordingExport`,capScope:`system`,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.listScenes":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.recheckNow":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"sceneMonitor.updateScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"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.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.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.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.update":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"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.getSnapshot":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getSnapshotOverview":{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.getDefaultLocation":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.list":{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`},"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.assignProfile":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.getAllRtspEntries":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getBrokerStats":{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.publishCameraStream":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.pullAudioChunks":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.pullFrameHandles":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.regenerateRtspToken":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.releaseStreamWithCodec":{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.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.subscribeFrames":{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`},"streamBroker.unsubscribeFrames":{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.setProfile":{capName:`stream-params`,capScope:`device`,addonId:null,access:`create`},"switch.setState":{capName:`switch`,capScope:`device`,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.getRetentionConfig":{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.setRetentionConfig":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"toast.onToast":{capName:`toast`,capScope:`system`,addonId:null,access:`view`},"turnProvider.getTurnServers":{capName:`turn-provider`,capScope:`system`,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.createApiKey":{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.getTotpStatus":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listApiKeys":{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.updateUser":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.validateApiKey":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"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.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.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`},"videoclips.getClipPlayback":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.listClips":{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.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`},"webrtcSession.addIceCandidate":{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.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.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`}}),Object.freeze({broker:`broker`,"device-export":`device-export`,llm:`ai`,"mesh-network":`mesh`,"mqtt-broker":`broker`,"network-access":`ingress`,"smtp-provider":`email`});var Ew=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(){}},Dw=new class extends Ew{#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`}},Ow={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},kw=new class{#e=Ow;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 Aw(e){setTimeout(e,0)}var jw=typeof window>`u`||`Deno`in globalThis;function Mw(){}function Nw(e,t){return typeof e==`function`?e(t):e}function Pw(e){return typeof e==`number`&&e>=0&&e!==1/0}function Fw(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Iw(e,t){return typeof e==`function`?e(t):e}function Lw(e,t){return typeof e==`function`?e(t):e}function Rw(e,t){let{type:n=`all`,exact:r,fetchStatus:a,predicate:o,queryKey:s,stale:c}=e;if(s){if(r){if(t.queryHash!==Bw(s,t.options))return!1}else if(!Hw(t.queryKey,s))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof c==`boolean`&&t.isStale()!==c||a&&a!==t.state.fetchStatus||o&&!o(t))}function zw(e,t){let{exact:n,status:r,predicate:a,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(n){if(Vw(t.options.mutationKey)!==Vw(o))return!1}else if(!Hw(t.options.mutationKey,o))return!1}return!(r&&t.state.status!==r||a&&!a(t))}function Bw(e,t){return(t?.queryKeyHashFn||Vw)(e)}function Vw(e){return JSON.stringify(e,(e,t)=>qw(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function Hw(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>Hw(e[n],t[n])):!1}var Uw=Object.prototype.hasOwnProperty;function Ww(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=Kw(e)&&Kw(t);if(!r&&!(qw(e)&&qw(t)))return t;let a=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),s=o.length,c=r?Array(s):{},l=0;for(let u=0;u<s;u++){let s=r?u:o[u],d=e[s],f=t[s];if(d===f){c[s]=d,(r?u<a:Uw.call(e,s))&&l++;continue}if(d===null||f===null||typeof d!=`object`||typeof f!=`object`){c[s]=f;continue}let p=Ww(d,f,n+1);c[s]=p,p===d&&l++}return a===s&&l===a?e:c}function Gw(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 Kw(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function qw(e){if(!Jw(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!Jw(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function Jw(e){return Object.prototype.toString.call(e)===`[object Object]`}function Yw(e){return new Promise(t=>{kw.setTimeout(t,e)})}function Xw(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:Ww(e,t)}function Zw(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Qw(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var $w=Symbol();function eT(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===$w?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function tT(e,t){return typeof e==`function`?e(...t):!!e}function nT(e,t,n){let r=!1,a;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(a??=t(),r?a:(r=!0,a.aborted?n():a.addEventListener(`abort`,n,{once:!0}),a))}),e}var rT=(()=>{let e=()=>jw;return{isServer(){return e()},setIsServer(t){e=t}}})();function iT(){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 aT=Aw;function oT(){let e=[],t=0,n=e=>{e()},r=e=>{e()},a=aT,o=r=>{t?e.push(r):a(()=>{n(r)})},s=()=>{let t=e;e=[],t.length&&a(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||s()}return n},batchCalls:e=>(...t)=>{o(()=>{e(...t)})},schedule:o,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{a=e}}}var sT=oT(),cT=new class extends Ew{#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 lT(e){return Math.min(1e3*2**e,3e4)}function uT(e){return(e??`online`)===`online`?cT.isOnline():!0}var dT=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function fT(e){let t=!1,n=0,r,a=iT(),o=()=>a.status!==`pending`,s=t=>{if(!o()){let n=new dT(t);p(n),e.onCancel?.(n)}},c=()=>{t=!0},l=()=>{t=!1},u=()=>Dw.isFocused()&&(e.networkMode===`always`||cT.isOnline())&&e.canRun(),d=()=>uT(e.networkMode)&&e.canRun(),f=e=>{o()||(r?.(),a.resolve(e))},p=e=>{o()||(r?.(),a.reject(e))},m=()=>new Promise(t=>{r=e=>{(o()||u())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,o()||e.onContinue?.()}),h=()=>{if(o())return;let r,a=n===0?e.initialPromise:void 0;try{r=a??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(f).catch(r=>{if(o())return;let a=e.retry??(rT.isServer()?0:3),s=e.retryDelay??lT,c=typeof s==`function`?s(n,r):s,l=a===!0||typeof a==`number`&&n<a||typeof a==`function`&&a(n,r);if(t||!l){p(r);return}n++,e.onFail?.(n,r),Yw(c).then(()=>u()?void 0:m()).then(()=>{t?p(r):h()})})};return{promise:a,status:()=>a.status,cancel:s,continue:()=>(r?.(),a),cancelRetry:c,continueRetry:l,canStart:d,start:()=>(d()?h():m().then(h),a)}}var pT=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Pw(this.gcTime)&&(this.#e=kw.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(rT.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(kw.clearTimeout(this.#e),this.#e=void 0)}};function mT(e){return{onFetch:(t,n)=>{let r=t.options,a=t.fetchOptions?.meta?.fetchMore?.direction,o=t.state.data?.pages||[],s=t.state.data?.pageParams||[],c={pages:[],pageParams:[]},l=0,u=async()=>{let n=!1,u=e=>{nT(e,()=>t.signal,()=>n=!0)},d=eT(t.options,t.fetchOptions),f=async(e,r,a)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let o=await d((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:a?`backward`:`forward`,meta:t.options.meta};return u(e),e})()),{maxPages:s}=t.options,c=a?Qw:Zw;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(a&&o.length){let e=a===`backward`,t=e?gT:hT,n={pages:o,pageParams:s};c=await f(n,t(r,n),e)}else{let t=e??o.length;do{let e=l===0?s[0]??r.initialPageParam:hT(r,c);if(l>0&&e==null)break;c=await f(c,e),l++}while(l<t)}return c};t.options.persister?t.fetchFn=()=>t.options.persister?.(u,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=u}}}function hT(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 gT(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function _T(e,t){return t?hT(e,t)!=null:!1}function vT(e,t){return!t||!e.getPreviousPageParam?!1:gT(e,t)!=null}var yT=class extends pT{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=ST(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=ST(this.options);e.data!==void 0&&(this.setState(xT(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=Xw(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(Mw).catch(Mw):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>Lw(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===$w||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>Iw(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!Fw(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},a=()=>{let e=eT(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},o=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:a};return r(e),e})();(this.#e===`infinite`?mT(this.options.pages):this.options.behavior)?.onFetch(o,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==o.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:o.fetchOptions?.meta}),this.#a=fT({initialPromise:t?.initialPromise,fn:o.fetchFn,onCancel:e=>{e instanceof dT&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof dT){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...bT(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...xT(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),sT.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function bT(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:uT(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function xT(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function ST(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var CT=class extends Ew{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=iT(),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),TT(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ET(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ET(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 Lw(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&&!Gw(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&DT(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||Lw(this.options.enabled,this.#t)!==Lw(t.enabled,this.#t)||Iw(this.options.staleTime,this.#t)!==Iw(t.staleTime,this.#t))&&this.#g();let a=this.#_();r&&(this.#t!==n||Lw(this.options.enabled,this.#t)!==Lw(t.enabled,this.#t)||a!==this.#p)&&this.#v(a)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return kT(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(Mw)),t}#g(){this.#b();let e=Iw(this.options.staleTime,this.#t);if(rT.isServer()||this.#r.isStale||!Pw(e))return;let t=Fw(this.#r.dataUpdatedAt,e)+1;this.#d=kw.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,!(rT.isServer()||Lw(this.options.enabled,this.#t)===!1||!Pw(this.#p)||this.#p===0)&&(this.#f=kw.setInterval(()=>{(this.options.refetchIntervalInBackground||Dw.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(kw.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(kw.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,a=this.#r,o=this.#i,s=this.#a,c=e===n?this.#n:e.state,{state:l}=e,u={...l},d=!1,f;if(t._optimisticResults){let a=this.hasListeners(),o=!a&&TT(e,t),s=a&&DT(e,n,t,r);(o||s)&&(u={...u,...bT(l.data,e.options)}),t._optimisticResults===`isRestoring`&&(u.fetchStatus=`idle`)}let{error:p,errorUpdatedAt:m,status:h}=u;f=u.data;let g=!1;if(t.placeholderData!==void 0&&f===void 0&&h===`pending`){let e;a?.isPlaceholderData&&t.placeholderData===s?.placeholderData?(e=a.data,g=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(h=`success`,f=Xw(a?.data,e,t),d=!0)}if(t.select&&f!==void 0&&!g)if(a&&f===o?.data&&t.select===this.#c)f=this.#l;else try{this.#c=t.select,f=t.select(f),f=Xw(a?.data,f,t),this.#l=f,this.#s=null}catch(e){this.#s=e}this.#s&&(p=this.#s,f=this.#l,m=Date.now(),h=`error`);let _=u.fetchStatus===`fetching`,v=h===`pending`,y=h===`error`,b=v&&_,x=f!==void 0,S={status:h,fetchStatus:u.fetchStatus,isPending:v,isSuccess:h===`success`,isError:y,isInitialLoading:b,isLoading:b,data:f,dataUpdatedAt:u.dataUpdatedAt,error:p,errorUpdatedAt:m,failureCount:u.fetchFailureCount,failureReason:u.fetchFailureReason,errorUpdateCount:u.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:u.dataUpdateCount>c.dataUpdateCount||u.errorUpdateCount>c.errorUpdateCount,isFetching:_,isRefetching:_&&!v,isLoadingError:y&&!x,isPaused:u.fetchStatus===`paused`,isPlaceholderData:d,isRefetchError:y&&x,isStale:OT(e,t),refetch:this.refetch,promise:this.#o,isEnabled:Lw(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=S.data!==void 0,r=S.status===`error`&&!t,a=e=>{r?e.reject(S.error):t&&e.resolve(S.data)},o=()=>{a(this.#o=S.promise=iT())},s=this.#o;switch(s.status){case`pending`:e.queryHash===n.queryHash&&a(s);break;case`fulfilled`:(r||S.data!==s.value)&&o();break;case`rejected`:(!r||S.error!==s.reason)&&o();break}}return S}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),!Gw(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){sT.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function wT(e,t){return Lw(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&Lw(t.retryOnMount,e)===!1)}function TT(e,t){return wT(e,t)||e.state.data!==void 0&&ET(e,t,t.refetchOnMount)}function ET(e,t,n){if(Lw(t.enabled,e)!==!1&&Iw(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&OT(e,t)}return!1}function DT(e,t,n,r){return(e!==t||Lw(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&OT(e,n)}function OT(e,t){return Lw(t.enabled,e)!==!1&&e.isStaleByTime(Iw(t.staleTime,e))}function kT(e,t){return!Gw(e.getCurrentResult(),t)}var AT=class extends CT{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:a,isRefetching:o,isError:s,isRefetchError:c}=r,l=n.fetchMeta?.fetchMore?.direction,u=s&&l===`forward`,d=a&&l===`forward`,f=s&&l===`backward`,p=a&&l===`backward`;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:_T(t,n.data),hasPreviousPage:vT(t,n.data),isFetchNextPageError:u,isFetchingNextPage:d,isFetchPreviousPageError:f,isFetchingPreviousPage:p,isRefetchError:c&&!u&&!f,isRefetching:o&&!d&&!p}}},jT=class extends pT{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||MT(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=fT({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,a=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:a}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:a})}let o=await this.#r.start();return await this.#n.config.onSuccess?.(o,e,this.state.context,this,n),await this.options.onSuccess?.(o,e,this.state.context,n),await this.#n.config.onSettled?.(o,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(o,null,e,this.state.context,n),this.#i({type:`success`,data:o}),o}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),sT.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function MT(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var NT=class extends Ew{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new jT({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t);if(n)if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}else return!0}runNext(e){let t=PT(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){sT.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>zw(t,e))}findAll(e={}){return this.getAll().filter(t=>zw(e,t))}notify(e){sT.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return sT.batch(()=>Promise.all(e.map(e=>e.continue().catch(Mw))))}};function PT(e){return e.options.scope?.id}var FT=class extends Ew{#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),Gw(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&Vw(t.mutationKey)!==Vw(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??MT();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){sT.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 IT(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function LT(e,t,n){let r=e.slice(0);return r[t]=n,r}var RT=class extends Ew{#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,sT.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()),a=e.length!==n.length,o=n.some((t,n)=>t!==e[n]),s=a||o,c=s?!0:r.some((e,t)=>{let n=this.#t[t];return!n||!Gw(e,n)});!s&&!c||(s&&(this.#l=t,this.#i=n),this.#t=r,this.hasListeners()&&(s&&(IT(e,n).forEach(e=>{e.destroy()}),IT(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)),a=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,a),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let a=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?a:n.observer.trackResult(a,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,n){if(t){let r=this.#c,a=n!==void 0&&r!==void 0&&(r.length!==n.length||n.some((e,t)=>e!==r[t]));return(!this.#a||this.#t!==this.#s||a||t!==this.#o)&&(this.#o=t,this.#s=this.#t,n!==void 0&&(this.#c=n),this.#a=Ww(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),a=t.get(r.queryHash)?.shift()??new CT(this.#e,r);n.push({defaultedQueryOptions:r,observer:a})}),n}#m(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=LT(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)&&sT.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}},zT=class extends Ew{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,a=t.queryHash??Bw(r,t),o=this.get(a);return o||(o=new yT({client:e,queryKey:r,queryHash:a,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(o)),o}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){sT.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>Rw(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>Rw(e,t)):t}notify(e){sT.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){sT.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){sT.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},BT=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new zT,this.#t=e.mutationCache||new NT,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=Dw.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=cT.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Iw(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),a=this.#e.get(r.queryHash)?.state.data,o=Nw(t,a);if(o!==void 0)return this.#e.build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return sT.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;sT.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return sT.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=sT.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(Mw).catch(Mw)}invalidateQueries(e,t={}){return sT.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=sT.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(Mw)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(Mw)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(Iw(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Mw).catch(Mw)}fetchInfiniteQuery(e){return e._type=`infinite`,this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Mw).catch(Mw)}ensureInfiniteQueryData(e){return e._type=`infinite`,this.ensureQueryData(e)}resumePausedMutations(){return cT.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(Vw(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{Hw(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(Vw(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{Hw(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=Bw(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===$w&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},VT=S.createContext(void 0),HT=e=>{let t=S.useContext(VT);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},UT=({client:e,children:t})=>(S.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,C.jsx)(VT.Provider,{value:e,children:t})),WT=S.createContext(!1),GT=()=>S.useContext(WT);WT.Provider;function KT(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var qT=S.createContext(KT()),JT=()=>S.useContext(qT),YT=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?tT(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},XT=e=>{S.useEffect(()=>{e.clearReset()},[e])},ZT=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:a})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(a&&e.data===void 0||tT(n,[e.error,r])),QT=(e,t)=>t.state.data===void 0,$T=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))}},eE=(e,t)=>e.isLoading&&e.isFetching&&!t,tE=(e,t)=>e?.suspense&&t.isPending,nE=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function rE({queries:e,...t},n){let r=HT(n),a=GT(),o=JT(),s=S.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=a?`isRestoring`:`optimistic`,t}),[e,r,a]);s.forEach(e=>{$T(e),YT(e,o,r.getQueryCache().get(e.queryHash))}),XT(o);let[c]=S.useState(()=>new RT(r,s,t)),[l,u,d]=c.getOptimisticResult(s,t.combine),f=!a&&t.subscribed!==!1;S.useSyncExternalStore(S.useCallback(e=>f?c.subscribe(sT.batchCalls(e)):Mw,[c,f]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),S.useEffect(()=>{c.setQueries(s,t)},[s,t,c]);let p=l.some((e,t)=>tE(s[t],e))?l.flatMap((e,t)=>{let n=s[t];return n&&tE(n,e)?nE(n,new CT(r,n),o):[]}):[];if(p.length>0)throw Promise.all(p);let m=l.find((e,t)=>{let n=s[t];return n&&ZT({result:e,errorResetBoundary:o,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(m?.error)throw m.error;return u(d())}function iE(e,t,n){let r=GT(),a=JT(),o=HT(n),s=o.defaultQueryOptions(e);o.getDefaultOptions().queries?._experimental_beforeQuery?.(s);let c=o.getQueryCache().get(s.queryHash),l=e.subscribed!==!1;s._optimisticResults=r?`isRestoring`:l?`optimistic`:void 0,$T(s),YT(s,a,c),XT(a);let u=!o.getQueryCache().get(s.queryHash),[d]=S.useState(()=>new t(o,s)),f=d.getOptimisticResult(s),p=!r&&l;if(S.useSyncExternalStore(S.useCallback(e=>{let t=p?d.subscribe(sT.batchCalls(e)):Mw;return d.updateResult(),t},[d,p]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),S.useEffect(()=>{d.setOptions(s)},[s,d]),tE(s,f))throw nE(s,d,a);if(ZT({result:f,errorResetBoundary:a,throwOnError:s.throwOnError,query:c,suspense:s.suspense}))throw f.error;return o.getDefaultOptions().queries?._experimental_afterQuery?.(s,f),s.experimental_prefetchInRender&&!rT.isServer()&&eE(f,r)&&(u?nE(s,d,a):c?.promise)?.catch(Mw).finally(()=>{d.updateResult()}),s.notifyOnChangeProps?f:d.trackResult(f)}function aE(e,t){return iE(e,CT,t)}function oE(e,t){return iE({...e,enabled:!0,suspense:!0,throwOnError:QT,placeholderData:void 0},CT,t)}function sE(e,t){return iE({...e,enabled:!0,suspense:!0,throwOnError:QT},AT,t)}function cE(e,t){return rE({...e,queries:e.queries.map(e=>({...e,suspense:!0,throwOnError:QT,enabled:!0,placeholderData:void 0}))},t)}function lE(e,t){let n=HT(t);n.getQueryState(e.queryKey)||n.prefetchQuery(e)}function uE(e,t){let n=HT(t);n.getQueryState(e.queryKey)||n.prefetchInfiniteQuery(e)}function dE(e){return e}function fE(e){return e}function pE(e,t){let n=HT(t),[r]=S.useState(()=>new FT(n,e));S.useEffect(()=>{r.setOptions(e)},[r,e]);let a=S.useSyncExternalStore(S.useCallback(e=>r.subscribe(sT.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),o=S.useCallback((e,t)=>{r.mutate(e,t).catch(Mw)},[r]);if(a.error&&tT(r.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:o,mutateAsync:a.mutate}}function mE(e,t){return iE(e,AT,t)}g();var hE=Object.create,gE=Object.defineProperty,_E=Object.getOwnPropertyDescriptor,vE=Object.getOwnPropertyNames,yE=Object.getPrototypeOf,bE=Object.prototype.hasOwnProperty,xE=(e,t)=>function(){return t||(0,e[vE(e)[0]])((t={exports:{}}).exports,t),t.exports},SE=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=vE(t),o=0,s=a.length,c;o<s;o++)c=a[o],!bE.call(e,c)&&c!==n&&gE(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=_E(t,c))||r.enumerable});return e},CE=(e,t,n)=>(n=e==null?{}:hE(yE(e)),SE(t||!e||!e.__esModule?gE(n,`default`,{value:e,enumerable:!0}):n,e)),wE=xE({"../../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}}),TE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=wE().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),EE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=wE().default,r=TE();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),DE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=EE();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}}),OE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=DE();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}});function kE(e){let t={subscribe(t){let n=null,r=!1,a=!1,o=!1;function s(){if(n===null){o=!0;return}a||(a=!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),s())},complete(){var e;r||(r=!0,(e=t.complete)==null||e.call(t),s())}}),o&&s(),{unsubscribe:s}},pipe(...e){return e.reduce(AE,t)}};return t}function AE(e,t){return t(e)}function jE(e){let t=new AbortController;return new Promise((n,r)=>{let a=!1;function o(){a||(a=!0,s.unsubscribe())}t.signal.addEventListener(`abort`,()=>{r(t.signal.reason)});let s=e.subscribe({next(e){a=!0,n(e),o()},error(e){r(e)},complete(){t.abort(),o()}})})}function ME(e){return e=>{let t=0,n=null,r=[];function a(){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 o(){if(t===0&&n){let e=n;n=null,e.unsubscribe()}}return kE(e=>(t++,r.push(e),a(),{unsubscribe(){t--,o();let n=r.findIndex(t=>t===e);n>-1&&r.splice(n,1)}}))}}function NE(e){let t=e,n=[],r=e=>{t!==void 0&&e.next(t),n.push(e)},a=e=>{n.splice(n.indexOf(e),1)},o=kE(e=>(r(e),()=>{a(e)}));return o.next=e=>{if(t!==e){t=e;for(let t of n)t.next(e)}},o.get=()=>t,o}function PE(e){return kE(t=>{function n(t=0,r=e.op){let a=e.links[t];if(!a)throw Error(`No more links to execute - did you forget to add an ending link?`);return a({op:r,next(e){return n(t+1,e)}})}return n().subscribe(t)})}function FE(e){return!!e&&!Array.isArray(e)&&typeof e==`object`}function IE(){return Object.create(null)}var LE=typeof Symbol==`function`&&!!Symbol.asyncIterator;function RE(e){return LE&&FE(e)&&Symbol.asyncIterator in e}var zE=e=>e();function BE(e=0){return new Promise(t=>setTimeout(t,e))}var VE={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};VE.BAD_GATEWAY,VE.SERVICE_UNAVAILABLE,VE.GATEWAY_TIMEOUT,VE.INTERNAL_SERVER_ERROR;var HE=Object.create,UE=Object.defineProperty,WE=Object.getOwnPropertyDescriptor,GE=Object.getOwnPropertyNames,KE=Object.getPrototypeOf,qE=Object.prototype.hasOwnProperty,JE=(e,t)=>function(){return t||(0,e[GE(e)[0]])((t={exports:{}}).exports,t),t.exports},YE=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=GE(t),o=0,s=a.length,c;o<s;o++)c=a[o],!qE.call(e,c)&&c!==n&&UE(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=WE(t,c))||r.enumerable});return e},XE=(e,t,n)=>(n=e==null?{}:HE(KE(e)),YE(t||!e||!e.__esModule?UE(n,`default`,{value:e,enumerable:!0}):n,e)),ZE=()=>{},QE=e=>{Object.freeze&&Object.freeze(e)};function $E(e,t,n){let r=t.join(`.`);return n[r]??(n[r]=new Proxy(ZE,{get(r,a){if(!(typeof a!=`string`||a===`then`))return $E(e,[...t,a],n)},apply(n,r,a){let o=t[t.length-1];if(o===`valueOf`||o===`toString`||o===`toJSON`)return`tRPC.proxy(${t.slice(0,-1).join(`.`)})`;let s={args:a,path:t};return o===`call`?s={args:a.length>=2?[a[1]]:[],path:t.slice(0,-1)}:o===`apply`&&(s={args:a.length>=2?a[1]:[],path:t.slice(0,-1)}),QE(s.args),QE(s.path),e(s)}})),n[r]}var eD=e=>$E(e,[],IE()),tD=e=>new Proxy(ZE,{get(t,n){if(n!==`then`)return e(n)}}),nD=JE({"../../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}}),rD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=nD().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),iD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=nD().default,r=rD();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),aD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=iD();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}}),oD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=aD();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}});XE(oD(),1),XE(aD(),1);var sD=XE(oD(),1);function cD(e,t){if(`error`in e){let n=t.deserialize(e.error);return{ok:!1,error:(0,sD.default)((0,sD.default)({},e),{},{error:n})}}return{ok:!0,result:(0,sD.default)((0,sD.default)({},e.result),(!e.result.type||e.result.type===`data`)&&{type:`data`,data:t.deserialize(e.result.data)})}}var lD=class extends Error{constructor(){super(`Unable to transform response from server`)}};function uD(e,t){let n;try{n=cD(e,t)}catch{throw new lD}if(!n.ok&&(!FE(n.error.error)||typeof n.error.error.code!=`number`)||n.ok&&!FE(n.result))throw new lD;return n}XE(oD(),1);var dD=CE(DE(),1),fD=CE(OE(),1);function pD(e){return e instanceof gD}function mD(e){return FE(e)&&FE(e.error)&&typeof e.error.code==`number`&&typeof e.error.message==`string`}function hD(e,t){return typeof e==`string`?e:FE(e)&&typeof e.message==`string`?e.message:t}var gD=class e extends Error{constructor(t,n){var r,a;let o=n?.cause;super(t,{cause:o}),(0,dD.default)(this,`cause`,void 0),(0,dD.default)(this,`shape`,void 0),(0,dD.default)(this,`data`,void 0),(0,dD.default)(this,`meta`,void 0),this.meta=n?.meta,this.cause=o,this.shape=n==null||(r=n.result)==null?void 0:r.error,this.data=n==null||(a=n.result)==null?void 0:a.error.data,this.name=`TRPCClientError`,Object.setPrototypeOf(this,e.prototype)}static from(t,n={}){let r=t;return pD(r)?(n.meta&&(r.meta=(0,fD.default)((0,fD.default)({},r.meta),n.meta)),r):mD(r)?new e(r.error.message,(0,fD.default)((0,fD.default)({},n),{},{result:r,cause:n.cause})):new e(hD(r,`Unknown error`),(0,fD.default)((0,fD.default)({},n),{},{cause:r}))}};function _D(e){let t=e;return t?`input`in t?t:{input:t,output:t}:{input:{serialize:e=>e,deserialize:e=>e},output:{serialize:e=>e,deserialize:e=>e}}}var vD=e=>typeof e==`function`;function yD(e){if(e)return e;if(typeof window<`u`&&vD(window.fetch))return window.fetch;if(typeof globalThis<`u`&&vD(globalThis.fetch))return globalThis.fetch;throw Error(`No fetch implementation found`)}var bD=CE(OE());function xD(e){return{url:e.url.toString(),fetch:e.fetch,transformer:_D(e.transformer),methodOverride:e.methodOverride}}function SD(e){let t={};for(let n=0;n<e.length;n++)t[n]=e[n];return t}var CD={query:`GET`,mutation:`POST`,subscription:`PATCH`};function wD(e){return`input`in e?e.transformer.input.serialize(e.input):SD(e.inputs.map(t=>e.transformer.input.serialize(t)))}var TD=e=>{let t=e.url.split(`?`),n=t[0].replace(/\/$/,``)+`/`+e.path,r=[];if(t[1]&&r.push(t[1]),`inputs`in e&&r.push(`batch=1`),e.type===`query`||e.type===`subscription`){let t=wD(e);t!==void 0&&e.methodOverride!==`POST`&&r.push(`input=${encodeURIComponent(JSON.stringify(t))}`)}return r.length&&(n+=`?`+r.join(`&`)),n},ED=e=>{if(e.type===`query`&&e.methodOverride!==`POST`)return;let t=wD(e);return t===void 0?void 0:JSON.stringify(t)},DD=e=>jD((0,bD.default)((0,bD.default)({},e),{},{contentTypeHeader:`application/json`,getUrl:TD,getBody:ED})),OD=class extends Error{constructor(){let e=`AbortError`;super(e),this.name=e,this.message=e}},kD=e=>{var t;if(e?.aborted)throw(t=e.throwIfAborted)==null||t.call(e),typeof DOMException<`u`?new DOMException(`AbortError`,`AbortError`):new OD};async function AD(e){kD(e.signal);let t=e.getUrl(e),n=e.getBody(e),r=e.methodOverride??CD[e.type],a=await(async()=>{let t=await e.headers();return Symbol.iterator in t?Object.fromEntries(t):t})(),o=(0,bD.default)((0,bD.default)((0,bD.default)({},e.contentTypeHeader&&r!==`GET`?{"content-type":e.contentTypeHeader}:{}),e.trpcAcceptHeader?{[e.trpcAcceptHeaderKey??`trpc-accept`]:e.trpcAcceptHeader}:void 0),a);return yD(e.fetch)(t,{method:r,signal:e.signal,body:n,headers:o})}async function jD(e){let t={},n=await AD(e);t.response=n;let r=await n.json();return t.responseJSON=r,{json:r,meta:t}}function MD(e){return e instanceof Uint8Array||e instanceof Blob}function ND(e){return e instanceof FormData}var PD=CE(OE(),1),FD=e=>{if(`input`in e){let{input:t}=e;if(ND(t)){if(e.type!==`mutation`&&e.methodOverride!==`POST`)throw Error(`FormData is only supported for mutations`);return jD((0,PD.default)((0,PD.default)({},e),{},{contentTypeHeader:void 0,getUrl:TD,getBody:()=>t}))}if(MD(t)){if(e.type!==`mutation`&&e.methodOverride!==`POST`)throw Error(`Octet type input is only supported for mutations`);return jD((0,PD.default)((0,PD.default)({},e),{},{contentTypeHeader:`application/octet-stream`,getUrl:TD,getBody:()=>t}))}}return DD(e)};function ID(e){let t=xD(e);return()=>n=>{let{op:r}=n;return kE(n=>{let{path:a,input:o,type:s}=r;if(s===`subscription`)throw Error("Subscriptions are unsupported by `httpLink` - use `httpSubscriptionLink` or `wsLink`");let c=FD((0,PD.default)((0,PD.default)({},t),{},{type:s,path:a,input:o,signal:r.signal,headers(){return e.headers?typeof e.headers==`function`?e.headers({op:r}):e.headers:{}}})),l;return c.then(e=>{l=e.meta;let r=uD(e.json,t.transformer.output);if(!r.ok){n.error(gD.from(r.error,{meta:l}));return}n.next({context:e.meta,result:r.result}),n.complete()}).catch(e=>{n.error(gD.from(e,{meta:l}))}),()=>{}})}}CE(OE(),1),CE(OE(),1);var LD={encode:e=>JSON.stringify(e),decode:e=>{if(typeof e!=`string`)throw Error(`jsonEncoder received binary data. JSON uses text frames. Use a binary encoder for binary data.`);return JSON.parse(e)}},RD={enabled:!1,closeMs:0},zD={enabled:!1,pongTimeoutMs:1e3,intervalMs:5e3},BD=e=>e===0?0:Math.min(1e3*2**e,3e4),VD=(e,...t)=>typeof e==`function`?e(...t):e,HD=CE(DE(),1),UD=class e extends Error{constructor(t){super(t.message,{cause:t.cause}),this.name=`TRPCWebSocketClosedError`,Object.setPrototypeOf(this,e.prototype)}},WD=class{constructor(e,t){this.onTimeout=e,this.timeoutMs=t,(0,HD.default)(this,`timeout`,void 0)}reset(){this.timeout&&=(clearTimeout(this.timeout),setTimeout(this.onTimeout,this.timeoutMs))}start(){clearTimeout(this.timeout),this.timeout=setTimeout(this.onTimeout,this.timeoutMs)}stop(){clearTimeout(this.timeout),this.timeout=void 0}};function GD(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}async function KD(e){let t=await VD(e.url);return e.connectionParams?t+`${t.includes(`?`)?`&`:`?`}connectionParams=1`:t}async function qD(e,t){let n={method:`connectionParams`,data:await VD(e)};return t.encode(n)}var JD=CE(DE(),1),YD=class{constructor(){(0,JD.default)(this,`outgoingRequests`,[]),(0,JD.default)(this,`pendingRequests`,{})}register(e,t){let{promise:n,resolve:r}=GD();return this.outgoingRequests.push({id:String(e.id),message:e,end:n,callbacks:{next:t.next,complete:()=>{t.complete(),r()},error:e=>{t.error(e),r()}}}),()=>{this.delete(e.id),t.complete(),r()}}delete(e){e!==null&&(this.outgoingRequests=this.outgoingRequests.filter(({id:t})=>t!==String(e)),delete this.pendingRequests[String(e)])}flush(){let e=this.outgoingRequests;this.outgoingRequests=[];for(let t of e)this.pendingRequests[t.id]=t;return e}getPendingRequests(){return Object.values(this.pendingRequests)}getPendingRequest(e){return e===null?null:this.pendingRequests[String(e)]}getOutgoingRequests(){return this.outgoingRequests}getRequests(){return[...this.getOutgoingRequests().map(e=>({state:`outgoing`,message:e.message,end:e.end,callbacks:e.callbacks})),...this.getPendingRequests().map(e=>({state:`pending`,message:e.message,end:e.end,callbacks:e.callbacks}))]}hasPendingRequests(){return this.getPendingRequests().length>0}hasPendingSubscriptions(){return this.getPendingRequests().some(e=>e.message.method===`subscription`)}hasOutgoingRequests(){return this.outgoingRequests.length>0}},XD=CE(DE(),1);function ZD(e){let{promise:t,resolve:n,reject:r}=GD();return e.addEventListener(`open`,()=>{e.removeEventListener(`error`,r),n()}),e.addEventListener(`error`,r),t}function QD(e,{intervalMs:t,pongTimeoutMs:n}){let r,a;function o(){r=setTimeout(()=>{e.send(`PING`),a=setTimeout(()=>{e.close()},n)},t)}function s(){clearTimeout(r),o()}function c(){clearTimeout(a),s()}e.addEventListener(`open`,o),e.addEventListener(`message`,({data:e})=>{clearTimeout(r),o(),e===`PONG`&&c()}),e.addEventListener(`close`,()=>{clearTimeout(r),clearTimeout(a)})}var $D=class e{constructor(t){if((0,XD.default)(this,`id`,++e.connectCount),(0,XD.default)(this,`WebSocketPonyfill`,void 0),(0,XD.default)(this,`urlOptions`,void 0),(0,XD.default)(this,`keepAliveOpts`,void 0),(0,XD.default)(this,`encoder`,void 0),(0,XD.default)(this,`wsObservable`,NE(null)),(0,XD.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=KD(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&&QD(e,t.keepAliveOpts),e.addEventListener(`close`,()=>{t.ws===e&&(t.ws=null)}),await ZD(e),t.urlOptions.connectionParams&&e.send(await qD(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,XD.default)($D,`connectCount`,0);function eO(e){return e.isOpen()?{id:e.id,state:`open`,ws:e.ws}:e.isClosed()?{id:e.id,state:`closed`,ws:e.ws}:e.ws?{id:e.id,state:`connecting`,ws:e.ws}:null}var tO=CE(DE(),1),nO=CE(OE(),1),rO=class{constructor(e){(0,tO.default)(this,`connectionState`,void 0),(0,tO.default)(this,`allowReconnect`,!1),(0,tO.default)(this,`requestManager`,new YD),(0,tO.default)(this,`activeConnection`,void 0),(0,tO.default)(this,`reconnectRetryDelay`,void 0),(0,tO.default)(this,`inactivityTimeout`,void 0),(0,tO.default)(this,`callbacks`,void 0),(0,tO.default)(this,`lazyMode`,void 0),(0,tO.default)(this,`encoder`,void 0),(0,tO.default)(this,`reconnecting`,null),this.encoder=e.experimental_encoder??LD,this.callbacks={onOpen:e.onOpen,onClose:e.onClose,onError:e.onError};let t=(0,nO.default)((0,nO.default)({},RD),e.lazy);this.inactivityTimeout=new WD(()=>{if(this.requestManager.hasOutgoingRequests()||this.requestManager.hasPendingRequests()){this.inactivityTimeout.reset();return}this.close().catch(()=>null)},t.closeMs),this.activeConnection=new $D({WebSocketPonyfill:e.WebSocket,urlOptions:e,keepAlive:(0,nO.default)((0,nO.default)({},zD),e.keepAlive),encoder:this.encoder}),this.activeConnection.wsObservable.subscribe({next:e=>{e&&this.setupWebSocketListeners(e)}}),this.reconnectRetryDelay=e.retryDelayMs??BD,this.lazyMode=t.enabled,this.connectionState=NE({type:`state`,state:t.enabled?`idle`:`connecting`,error:null}),this.lazyMode||this.open().catch(()=>null)}async open(){var e=this;e.allowReconnect=!0,e.connectionState.get().state===`idle`&&e.connectionState.next({type:`state`,state:`connecting`,error:null});try{await e.activeConnection.open()}catch(t){return e.reconnect(new UD({message:`Initialization error`,cause:t})),e.reconnecting}}async close(){var e=this;e.allowReconnect=!1,e.inactivityTimeout.stop();let t=[];for(let n of e.requestManager.getRequests())n.message.method===`subscription`?n.callbacks.complete():n.state===`outgoing`?n.callbacks.error(gD.from(new UD({message:`Closed before connection was established`}))):t.push(n.end);await Promise.all(t).catch(()=>null),await e.activeConnection.close().catch(()=>null),e.connectionState.next({type:`state`,state:`idle`,error:null})}request({op:{id:e,type:t,path:n,input:r,signal:a},transformer:o,lastEventId:s}){return kE(c=>{let l=this.batchSend({id:e,method:t,params:{input:o.input.serialize(r),path:n,lastEventId:s}},(0,nO.default)((0,nO.default)({},c),{},{next(e){let t=uD(e,o.output);if(!t.ok){c.error(gD.from(t.error));return}c.next({result:t.result})}}));return()=>{l(),t===`subscription`&&this.activeConnection.isOpen()&&this.send({id:e,method:`subscription.stop`}),a?.removeEventListener(`abort`,l)}})}get connection(){return eO(this.activeConnection)}reconnect(e){var t=this;if(this.connectionState.next({type:`state`,state:`connecting`,error:gD.from(e)}),this.reconnecting)return;let n=async e=>{try{await BE(t.reconnectRetryDelay(e)),t.allowReconnect&&(await t.activeConnection.close(),await t.activeConnection.open(),t.requestManager.hasPendingRequests()&&t.send(t.requestManager.getPendingRequests().map(({message:e})=>e))),t.reconnecting=null}catch{await n(e+1)}};this.reconnecting=n(0)}setupWebSocketListeners(e){var t=this;let n=e=>{let t=this.requestManager.getPendingRequests();for(let{message:n,callbacks:r}of t)n.method!==`subscription`&&(r.error(gD.from(e??new UD({message:`WebSocket closed`,cause:e}))),this.requestManager.delete(n.id))};e.addEventListener(`open`,()=>{zE(async()=>{var e,n;t.lazyMode&&t.inactivityTimeout.start(),(e=(n=t.callbacks).onOpen)==null||e.call(n),t.connectionState.next({type:`state`,state:`pending`,error:null})}).catch(t=>{e.close(3e3),n(t)})}),e.addEventListener(`message`,({data:e})=>{if(this.inactivityTimeout.reset(),[`PING`,`PONG`].includes(e))return;let t=this.encoder.decode(e);if(`method`in t){this.handleIncomingRequest(t);return}this.handleResponseMessage(t)}),e.addEventListener(`close`,e=>{var t,r;n(e),(t=(r=this.callbacks).onClose)==null||t.call(r,e),(!this.lazyMode||this.requestManager.hasPendingSubscriptions())&&this.reconnect(new UD({message:`WebSocket closed`,cause:e}))}),e.addEventListener(`error`,e=>{var t,r;n(e),(t=(r=this.callbacks).onError)==null||t.call(r,e),this.reconnect(new UD({message:`WebSocket closed`,cause:e}))})}handleResponseMessage(e){let t=this.requestManager.getPendingRequest(e.id);if(!t)return;t.callbacks.next(e);let n=!0;`result`in e&&t.message.method===`subscription`&&(e.result.type===`data`&&(t.message.params.lastEventId=e.result.id),e.result.type!==`stopped`&&(n=!1)),n&&(t.callbacks.complete(),this.requestManager.delete(e.id))}handleIncomingRequest(e){e.method===`reconnect`&&this.reconnect(new UD({message:`Server requested reconnect`}))}send(e){if(!this.activeConnection.isOpen())throw Error(`Active connection is not open`);let t=e instanceof Array?e:[e];this.activeConnection.ws.send(this.encoder.encode(t.length===1?t[0]:t))}batchSend(e,t){var n=this;return this.inactivityTimeout.reset(),zE(async()=>{n.activeConnection.isOpen()||await n.open(),await BE(0),n.requestManager.hasOutgoingRequests()&&n.send(n.requestManager.flush().map(({message:e})=>e))}).catch(n=>{this.requestManager.delete(e.id),t.error(gD.from(n))}),this.requestManager.register(e,t)}};function iO(e){return new rO(e)}function aO(e){let{client:t}=e,n=_D(e.transformer);return()=>({op:e})=>kE(r=>{let a=e.type===`subscription`?t.connectionState.subscribe({next(t){r.next({result:t,context:e.context})}}):null,o=t.request({op:e,transformer:n}).subscribe(r);return()=>{o.unsubscribe(),a?.unsubscribe()}})}var oO=CE(DE(),1),sO=CE(OE(),1),cO=class{constructor(e){(0,oO.default)(this,`links`,void 0),(0,oO.default)(this,`runtime`,void 0),(0,oO.default)(this,`requestId`,void 0),this.requestId=0,this.runtime={},this.links=e.links.map(e=>e(this.runtime))}$request(e){return PE({links:this.links,op:(0,sO.default)((0,sO.default)({},e),{},{context:e.context??{},id:++this.requestId})}).pipe(ME())}async requestAsPromise(e){var t=this;try{return(await jE(t.$request(e))).result.data}catch(e){throw gD.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 a;(a=n.onStopped)==null||a.call(n);break;case`data`:case void 0:var o;(o=n.onData)==null||o.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)}})}},lO=Symbol.for(`trpc_untypedClient`),uO={query:`query`,mutate:`mutation`,subscribe:`subscription`},dO=e=>uO[e];function fO(e){let t=eD(({path:t,args:n})=>{let r=[...t],a=dO(r.pop()),o=r.join(`.`);return e[a](o,...n)});return tD(n=>n===lO?e:t[n])}function pO(e){return fO(new cO(e))}function mO(e){return e[lO]}CE(OE(),1),CE(OE(),1),CE(xE({"../../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,a,o=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&(t=e[n])!=null)return t.call(e);if(a&&(t=e[a])!=null)return new r(t.call(e));n=`@@asyncIterator`,a=`@@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),CE(OE(),1);var hO=xE({"../../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 a=r;if(typeof r!=`function`)throw TypeError(`Object is not disposable.`);a&&(r=function(){try{a.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,a=this.e,o=0;function s(){for(;r=n.pop();)try{if(!r.a&&o===1)return o=0,n.push(r),Promise.resolve().then(s);if(r.d){var e=r.d.call(r.v);if(r.a)return o|=2,Promise.resolve(e).then(s,c)}else o|=1}catch(e){return c(e)}if(o===1)return a===t?Promise.resolve():Promise.reject(a);if(a!==t)throw a}function c(n){return a=a===t?n:new e(n,a),s()}return s()}}}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),gO=xE({"../../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}}),_O=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(e,t){var n=gO();function r(e){return new n(e,0)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),vO=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js"(e,t){var n=gO();function r(e){return function(){return new a(e.apply(this,arguments))}}function a(e){var t,r;function a(t,r){try{var s=e[t](r),c=s.value,l=c instanceof n;Promise.resolve(l?c.v:c).then(function(n){if(l){var r=t===`return`?`return`:`next`;if(!c.k||n.done)return a(r,n);n=e[r](n).value}o(s.done?`return`:`normal`,n)},function(e){a(`throw`,e)})}catch(e){o(`throw`,e)}}function o(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)?a(t.key,t.arg):r=null}this._invoke=function(e,n){return new Promise(function(o,s){var c={key:e,arg:n,resolve:o,reject:s,next:null};r?r=r.next=c:(t=r=c,a(e,n))})},typeof e.return!=`function`&&(this.return=void 0)}a.prototype[typeof Symbol==`function`&&Symbol.asyncIterator||`@@asyncIterator`]=function(){return this},a.prototype.next=function(e){return this._invoke(`next`,e)},a.prototype.throw=function(e){return this._invoke(`throw`,e)},a.prototype.return=function(e){return this._invoke(`return`,e)},t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}});CE(hO(),1),CE(_O(),1),CE(vO(),1),CE(OE(),1);var yO=Object.create,bO=Object.defineProperty,xO=Object.getOwnPropertyDescriptor,SO=Object.getOwnPropertyNames,CO=Object.getPrototypeOf,wO=Object.prototype.hasOwnProperty,TO=(e,t)=>function(){return t||(0,e[SO(e)[0]])((t={exports:{}}).exports,t),t.exports},EO=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=SO(t),o=0,s=a.length,c;o<s;o++)c=a[o],!wO.call(e,c)&&c!==n&&bO(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=xO(t,c))||r.enumerable});return e},DO=(e,t,n)=>(n=e==null?{}:yO(CO(e)),EO(t||!e||!e.__esModule?bO(n,`default`,{value:e,enumerable:!0}):n,e)),OO=TO({"../../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}}),kO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js"(e,t){var n=OO();function r(e,t){if(e==null)return{};var r,a,o=n(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.includes(r)||{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),AO=TO({"../../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}}),jO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=AO().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),MO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=AO().default,r=jO();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),NO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=MO();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}}),PO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=NO();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),FO=DO(kO(),1),IO=DO(PO(),1),LO=[`cursor`,`direction`];function RO(e,t,n){let r=e.flatMap(e=>e.split(`.`));if(!t&&(!n||n===`any`))return r.length?[r]:[];if(n===`infinite`&&FE(t)&&(`direction`in t||`cursor`in t)){let{cursor:e,direction:n}=t;return[r,{input:(0,FO.default)(t,LO),type:`infinite`}]}return[r,(0,IO.default)((0,IO.default)({},t!==void 0&&t!==$w&&{input:t}),n&&n!==`any`&&{type:n})]}function zO(e){return RO(e,void 0,`any`)}function BO(e){return eD(({path:t,args:n})=>{let r=[...t],a=r.pop();if(a===`useMutation`)return e[a](r,...n);if(a===`_def`)return{path:r};let[o,...s]=n,c=s[0]??{};return e[a](r,o,c)})}var VO=[`client`,`ssrContext`,`ssrState`,`abortOnUnmount`],HO=S.createContext?.call(S,null),UO=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 WO(e){return eD(t=>{let n=[...t.path],r=n.pop(),a=[...t.args],o=a.shift(),s=RO(n,o,UO(r));return{infiniteQueryOptions:()=>e.infiniteQueryOptions(n,s,a[0]),queryOptions:()=>e.queryOptions(n,s,...a),fetch:()=>e.fetchQuery(s,...a),fetchInfinite:()=>e.fetchInfiniteQuery(s,a[0]),prefetch:()=>e.prefetchQuery(s,...a),prefetchInfinite:()=>e.prefetchInfiniteQuery(s,a[0]),ensureData:()=>e.ensureQueryData(s,...a),invalidate:()=>e.invalidateQueries(s,...a),reset:()=>e.resetQueries(s,...a),refetch:()=>e.refetchQueries(s,...a),cancel:()=>e.cancelQuery(s,...a),setData:()=>{e.setQueryData(s,a[0],a[1])},setQueriesData:()=>e.setQueriesData(s,a[0],a[1],a[2]),setInfiniteData:()=>{e.setInfiniteQueryData(s,a[0],a[1])},getData:()=>e.getQueryData(s),getInfiniteData:()=>e.getInfiniteQueryData(s),setMutationDefaults:()=>e.setMutationDefaults(zO(n),o),getMutationDefaults:()=>e.getMutationDefaults(zO(n)),isMutating:()=>e.isMutating({mutationKey:zO(n)})}[r]()})}function GO(e){let t=fO(e.client),n=WO(e);return tD(r=>{let a=r;return a===`client`?t:VO.includes(a)?e[a]:n[r]})}var KO=DO(PO(),1);function qO(e){let t=e instanceof cO?e:mO(e);return eD(e=>{let n=e.path,r=n.join(`.`),[a,o]=e.args;return(0,KO.default)({queryKey:RO(n,a,`query`),queryFn:()=>t.query(r,a,o?.trpc)},o)})}var JO=DO(PO(),1);function YO(e,t,n){let r=e[0],a=e[1]?.input;return n&&(a=(0,JO.default)((0,JO.default)((0,JO.default)({},a??{}),n.pageParam?{cursor:n.pageParam}:{}),{},{direction:n.direction})),[r.join(`.`),a,t?.trpc]}var XO=DO(TO({"../../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,a,o=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&(t=e[n])!=null)return t.call(e);if(a&&(t=e[a])!=null)return new r(t.call(e));n=`@@asyncIterator`,a=`@@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 ZO(e){return{path:e.path.join(`.`)}}function QO(e){let t=ZO(e);return S.useMemo(()=>t,[t])}async function $O(e,t,n){let r=t.getQueryCache().build(t,{queryKey:n});r.setState({data:[],status:`success`});let a=[];var o=!1,s=!1,c;try{for(var l=(0,XO.default)(e),u;o=!(u=await l.next()).done;o=!1){let e=u.value;a.push(e),r.setState({data:[...a]})}}catch(e){s=!0,c=e}finally{try{o&&l.return!=null&&await l.return()}finally{if(s)throw c}}return a}var ek=DO(PO(),1);function tk(e){let{client:t,queryClient:n}=e,r=t instanceof cO?t:mO(t);return{infiniteQueryOptions:(e,t,n)=>{let a=t[1]?.input===$w;return Object.assign(fE((0,ek.default)((0,ek.default)({},n),{},{initialData:n?.initialData,queryKey:t,queryFn:a?$w:async e=>{var a;let o=(0,ek.default)((0,ek.default)({},n),{},{trpc:(0,ek.default)((0,ek.default)({},n?.trpc),!(n==null||(a=n.trpc)==null)&&a.abortOnUnmount?{signal:e.signal}:{signal:null})});return await r.query(...YO(t,o,{direction:e.direction,pageParam:e.pageParam}))},initialPageParam:n?.initialCursor??null})),{trpc:ZO({path:e})})},queryOptions:(e,t,a)=>{let o=t[1]?.input===$w;return Object.assign(dE((0,ek.default)((0,ek.default)({},a),{},{initialData:a?.initialData,queryKey:t,queryFn:o?$w:async e=>{var o;let s=(0,ek.default)((0,ek.default)({},a),{},{trpc:(0,ek.default)((0,ek.default)({},a?.trpc),!(a==null||(o=a.trpc)==null)&&o.abortOnUnmount?{signal:e.signal}:{signal:null})}),c=await r.query(...YO(t,s));return RE(c)?$O(c,n,t):c}})),{trpc:ZO({path:e})})},fetchQuery:(e,t)=>n.fetchQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),fetchInfiniteQuery:(e,t)=>n.fetchInfiniteQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:a})=>r.query(...YO(e,t,{pageParam:n,direction:a})),initialPageParam:t?.initialCursor??null})),prefetchQuery:(e,t)=>n.prefetchQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),prefetchInfiniteQuery:(e,t)=>n.prefetchInfiniteQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:a})=>r.query(...YO(e,t,{pageParam:n,direction:a})),initialPageParam:t?.initialCursor??null})),ensureQueryData:(e,t)=>n.ensureQueryData((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),invalidateQueries:(e,t,r)=>n.invalidateQueries((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r),resetQueries:(e,t,r)=>n.resetQueries((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r),refetchQueries:(e,t,r)=>n.refetchQueries((0,ek.default)((0,ek.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,a)=>n.setQueriesData((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r,a),getQueryData:e=>n.getQueryData(e),setInfiniteQueryData:(e,t,r)=>n.setQueryData(e,t,r),getInfiniteQueryData:e=>n.getQueryData(e),setMutationDefaults:(t,a)=>{let o=t[0];return n.setMutationDefaults(t,typeof a==`function`?a({canonicalMutationFn:t=>r.mutation(...YO([o,{input:t}],e))}):a)},getMutationDefaults:e=>n.getMutationDefaults(e),isMutating:e=>n.isMutating((0,ek.default)((0,ek.default)({},e),{},{exact:!0}))}}var J=DO(PO()),nk=(e,t)=>new Proxy(e,{get(e,n){return t(n),e[n]}});function rk(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??HO,a=pO,o=e=>{let{abortOnUnmount:t=!1,queryClient:n,ssrContext:a}=e,[o,s]=S.useState(e.ssrState??!1),c=e.client instanceof cO?e.client:mO(e.client),l=S.useMemo(()=>tk({client:c,queryClient:n}),[c,n]),u=S.useMemo(()=>(0,J.default)({abortOnUnmount:t,queryClient:n,client:c,ssrContext:a??null,ssrState:o},l),[t,c,l,n,a,o]);return S.useEffect(()=>{s(e=>e?`mounted`:!1)},[]),(0,C.jsx)(r.Provider,{value:u,children:e.children})};function s(){let e=S.useContext(r);if(!e)throw Error("Unable to find tRPC Context. Did you forget to wrap your App inside `withTRPC` HoC?");return e}function c(e,t){let{queryClient:n,ssrState:r}=s();return r&&r!==`mounted`&&n.getQueryCache().find({queryKey:e})?.state.status===`error`?(0,J.default)({retryOnMount:!1},t):t}function l(t,n,r){var a,o;let{abortOnUnmount:l,client:u,ssrState:d,queryClient:f,prefetchQuery:p}=s(),m=RO(t,n,`query`),h=f.getQueryDefaults(m),g=n===$w;typeof window>`u`&&d===`prepass`&&(r==null||(a=r.trpc)==null?void 0:a.ssr)!==!1&&(r?.enabled??h?.enabled)!==!1&&!g&&!f.getQueryCache().find({queryKey:m})&&p(m,r);let _=c(m,(0,J.default)((0,J.default)({},h),r)),v=(r==null||(o=r.trpc)==null?void 0:o.abortOnUnmount)??e?.abortOnUnmount??l,y=aE((0,J.default)((0,J.default)({},_),{},{queryKey:m,queryFn:g?n:async e=>{let t=(0,J.default)((0,J.default)({},_),{},{trpc:(0,J.default)((0,J.default)({},_?.trpc),v?{signal:e.signal}:{signal:null})}),n=await u.query(...YO(m,t));return RE(n)?$O(n,f,m):n}}),f);return y.trpc=QO({path:t}),y}function u(t,n,r){var a;let o=s(),c=RO(t,n,`query`),l=n===$w,u=(r==null||(a=r.trpc)==null?void 0:a.abortOnUnmount)??e?.abortOnUnmount??o.abortOnUnmount;lE((0,J.default)((0,J.default)({},r),{},{queryKey:c,queryFn:l?n:e=>{let t={trpc:(0,J.default)((0,J.default)({},r?.trpc),u?{signal:e.signal}:{})};return o.client.query(...YO(c,t))}}))}function d(t,n,r){var a;let o=s(),c=RO(t,n,`query`),l=(r==null||(a=r.trpc)==null?void 0:a.abortOnUnmount)??e?.abortOnUnmount??o.abortOnUnmount,u=oE((0,J.default)((0,J.default)({},r),{},{queryKey:c,queryFn:e=>{let t=(0,J.default)((0,J.default)({},r),{},{trpc:(0,J.default)((0,J.default)({},r?.trpc),l?{signal:e.signal}:{signal:null})});return o.client.query(...YO(c,t))}}),o.queryClient);return u.trpc=QO({path:t}),[u.data,u]}function f(e,t){let{client:r,queryClient:a}=s(),o=zO(e),c=a.defaultMutationOptions(a.getMutationDefaults(o)),l=pE((0,J.default)((0,J.default)({},t),{},{mutationKey:o,mutationFn:n=>r.mutation(...YO([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))??(c==null||(r=c.onSuccess)==null?void 0:r.call(c,...e))},queryClient:a,meta:t?.meta??c?.meta??{}})}}),a);return l.trpc=QO({path:e}),l}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!==$w,a=Vw(RO(e,t,`any`)),{client:o}=s(),c=S.useRef(n);S.useEffect(()=>{c.current=n});let[l]=S.useState(new Set([])),u=S.useCallback(e=>{l.add(e)},[l]),d=S.useRef(null),f=S.useCallback(e=>{let t=g.current,n=g.current=e(t),r=!1;for(let e of l)if(t[e]!==n[e]){r=!0;break}r&&v(nk(n,u))},[u,l]),h=S.useCallback(()=>{var n;if((n=d.current)==null||n.unsubscribe(),!r){f(()=>(0,J.default)((0,J.default)({},p),{},{reset:h}));return}f(()=>(0,J.default)((0,J.default)({},m),{},{reset:h})),d.current=o.subscription(e.join(`.`),t??void 0,{onStarted:()=>{var e,t;(e=(t=c.current).onStarted)==null||e.call(t),f(e=>(0,J.default)((0,J.default)({},e),{},{status:`pending`,error:null}))},onData:e=>{var t,n;(t=(n=c.current).onData)==null||t.call(n,e),f(t=>(0,J.default)((0,J.default)({},t),{},{status:`pending`,data:e,error:null}))},onError:e=>{var t,n;(t=(n=c.current).onError)==null||t.call(n,e),f(t=>(0,J.default)((0,J.default)({},t),{},{status:`error`,error:e}))},onConnectionStateChange:e=>{f(t=>{switch(e.state){case`idle`:return(0,J.default)((0,J.default)({},t),{},{status:e.state,error:null,data:void 0});case`connecting`:return(0,J.default)((0,J.default)({},t),{},{error:e.error,status:e.state});case`pending`:return t}})},onComplete:()=>{var e,t;(e=(t=c.current).onComplete)==null||e.call(t),f(e=>(0,J.default)((0,J.default)({},e),{},{status:`idle`,error:null,data:void 0}))}})},[o,a,r,f]);S.useEffect(()=>(h(),()=>{var e;(e=d.current)==null||e.unsubscribe()}),[h]);let g=S.useRef(r?(0,J.default)((0,J.default)({},m),{},{reset:h}):(0,J.default)((0,J.default)({},p),{},{reset:h})),[_,v]=S.useState(nk(g.current,u));return _}function g(e,t,n){var r,a;let{client:o,ssrState:l,prefetchInfiniteQuery:u,queryClient:d,abortOnUnmount:f}=s(),p=RO(e,t,`infinite`),m=d.getQueryDefaults(p),h=t===$w;typeof window>`u`&&l===`prepass`&&(n==null||(r=n.trpc)==null?void 0:r.ssr)!==!1&&(n?.enabled??m?.enabled)!==!1&&!h&&!d.getQueryCache().find({queryKey:p})&&u(p,(0,J.default)((0,J.default)({},m),n));let g=c(p,(0,J.default)((0,J.default)({},m),n)),_=(n==null||(a=n.trpc)==null?void 0:a.abortOnUnmount)??f,v=mE((0,J.default)((0,J.default)({},g),{},{initialPageParam:n.initialCursor??null,persister:n.persister,queryKey:p,queryFn:h?t:e=>{let t=(0,J.default)((0,J.default)({},g),{},{trpc:(0,J.default)((0,J.default)({},g?.trpc),_?{signal:e.signal}:{signal:null})});return o.query(...YO(p,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),d);return v.trpc=QO({path:e}),v}function _(e,t,n){var r;let a=s(),o=RO(e,t,`infinite`),l=a.queryClient.getQueryDefaults(o),u=t===$w,d=c(o,(0,J.default)((0,J.default)({},l),n)),f=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??a.abortOnUnmount;uE((0,J.default)((0,J.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:o,queryFn:u?t:e=>{let t=(0,J.default)((0,J.default)({},d),{},{trpc:(0,J.default)((0,J.default)({},d?.trpc),f?{signal:e.signal}:{})});return a.client.query(...YO(o,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}))}function v(e,t,n){var r;let a=s(),o=RO(e,t,`infinite`),l=a.queryClient.getQueryDefaults(o),u=c(o,(0,J.default)((0,J.default)({},l),n)),d=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??a.abortOnUnmount,f=sE((0,J.default)((0,J.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:o,queryFn:e=>{let t=(0,J.default)((0,J.default)({},u),{},{trpc:(0,J.default)((0,J.default)({},u?.trpc),d?{signal:e.signal}:{})});return a.client.query(...YO(o,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),a.queryClient);return f.trpc=QO({path:e}),[f.data,f]}return{Provider:o,createClient:a,useContext:s,useUtils:s,useQuery:l,usePrefetchQuery:u,useSuspenseQuery:d,useQueries:(e,t)=>{let{ssrState:n,queryClient:r,prefetchQuery:a,client:o}=s(),c=e(qO(o));if(typeof window>`u`&&n===`prepass`)for(let e of c){let t=e;t.trpc?.ssr!==!1&&!r.getQueryCache().find({queryKey:t.queryKey})&&a(t.queryKey,t)}return rE({queries:c.map(e=>(0,J.default)((0,J.default)({},e),{},{queryKey:e.queryKey})),combine:t?.combine},r)},useSuspenseQueries:e=>{let{queryClient:t,client:n}=s(),r=cE({queries:e(qO(n)).map(e=>(0,J.default)((0,J.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 ik(e){let t=BO(e);return tD(n=>n===`useContext`||n===`useUtils`?()=>{let t=e.useUtils();return S.useMemo(()=>GO(t),[t])}:e.hasOwnProperty(n)?e[n]:t[n])}function ak(e){return ik(rk(e))}var ok=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()}},sk=class{constructor(e){this.generateIdentifier=e,this.kv=new ok}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)}},ck=class extends sk{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 lk(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 uk(e,t){let n=lk(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 dk(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function fk(e,t){return e.indexOf(t)!==-1}function pk(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var mk=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return uk(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},hk=e=>Object.prototype.toString.call(e).slice(8,-1),gk=e=>e===void 0,_k=e=>e===null,vk=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,yk=e=>vk(e)&&Object.keys(e).length===0,bk=e=>Array.isArray(e),xk=e=>typeof e==`string`,Sk=e=>typeof e==`number`&&!isNaN(e),Ck=e=>typeof e==`boolean`,wk=e=>e instanceof RegExp,Tk=e=>e instanceof Map,Ek=e=>e instanceof Set,Dk=e=>hk(e)===`Symbol`,Ok=e=>e instanceof Date&&!isNaN(e.valueOf()),kk=e=>e instanceof Error,Ak=e=>typeof e==`number`&&isNaN(e),jk=e=>Ck(e)||_k(e)||gk(e)||Sk(e)||xk(e)||Dk(e),Mk=e=>typeof e==`bigint`,Nk=e=>e===1/0||e===-1/0,Pk=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),Fk=e=>e instanceof URL,Ik=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),Lk=e=>e.map(String).map(Ik).join(`.`),Rk=(e,t)=>{let n=[],r=``;for(let a=0;a<e.length;a++){let o=e.charAt(a);if(!t&&o===`\\`){let t=e.charAt(a+1);if(t===`\\`){r+=`\\`,a++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(o===`\\`&&e.charAt(a+1)===`.`){r+=`.`,a++;continue}if(o===`.`){n.push(r),r=``;continue}r+=o}let a=r;return n.push(a),n};function zk(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Bk=[zk(gk,`undefined`,()=>null,()=>void 0),zk(Mk,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),zk(Ok,`Date`,e=>e.toISOString(),e=>new Date(e)),zk(kk,`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}),zk(wk,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),zk(Ek,`set`,e=>[...e.values()],e=>new Set(e)),zk(Tk,`map`,e=>[...e.entries()],e=>new Map(e)),zk(e=>Ak(e)||Nk(e),`number`,e=>Ak(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),zk(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),zk(Fk,`URL`,e=>e.toString(),e=>new URL(e))];function Vk(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Hk=Vk((e,t)=>Dk(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}),Uk=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),Wk=Vk(Pk,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=Uk[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function Gk(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var Kk=Vk(Gk,(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)}),qk=Vk((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)}),Jk=[Kk,Hk,qk,Wk],Yk=(e,t)=>{let n=pk(Jk,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=pk(Bk,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},Xk={};Bk.forEach(e=>{Xk[e.annotation]=e});var Zk=(e,t,n)=>{if(bk(t))switch(t[0]){case`symbol`:return Hk.untransform(e,t,n);case`class`:return Kk.untransform(e,t,n);case`custom`:return qk.untransform(e,t,n);case`typed-array`:return Wk.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=Xk[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},Qk=(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 $k(e){if(fk(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(fk(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(fk(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var eA=(e,t)=>{$k(t);for(let n=0;n<t.length;n++){let r=t[n];if(Ek(e))e=Qk(e,+r);else if(Tk(e)){let a=+r,o=+t[++n]==0?`key`:`value`,s=Qk(e,a);switch(o){case`key`:e=s;break;case`value`:e=e.get(s);break}}else e=e[r]}return e},tA=(e,t,n)=>{if($k(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(bk(r)){let e=+n;r=r[e]}else if(vk(r))r=r[n];else if(Ek(r)){let e=+n;r=Qk(r,e)}else if(Tk(r)){if(e===t.length-2)break;let a=+n,o=+t[++e]==0?`key`:`value`,s=Qk(r,a);switch(o){case`key`:r=s;break;case`value`:r=r.get(s);break}}}let a=t[t.length-1];if(bk(r)?r[+a]=n(r[+a]):vk(r)&&(r[a]=n(r[a])),Ek(r)){let e=Qk(r,+a),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(Tk(r)){let e=+t[t.length-2],o=Qk(r,e);switch(+a==0?`key`:`value`){case`key`:{let e=n(o);r.set(e,r.get(o)),e!==o&&r.delete(o);break}case`value`:r.set(o,n(r.get(o)));break}}return e},nA=e=>e<1;function rA(e,t,n,r=[]){if(!e)return;let a=nA(n);if(!bk(e)){dk(e,(e,o)=>rA(e,t,n,[...r,...Rk(o,a)]));return}let[o,s]=e;s&&dk(s,(e,o)=>{rA(e,t,n,[...r,...Rk(o,a)])}),t(o,r)}function iA(e,t,n,r){return rA(t,(t,n)=>{e=tA(e,n,e=>Zk(e,t,r))},n),e}function aA(e,t,n){let r=nA(n);function a(t,n){let a=eA(e,Rk(n,r));t.map(e=>Rk(e,r)).forEach(t=>{e=tA(e,t,()=>a)})}if(bk(t)){let[n,o]=t;n.forEach(t=>{e=tA(e,Rk(t,r),()=>e)}),o&&dk(o,a)}else dk(t,a);return e}var oA=(e,t)=>vk(e)||bk(e)||Tk(e)||Ek(e)||kk(e)||Gk(e,t);function sA(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function cA(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[a,...o]=e;a.length===0?r=o.map(Lk):n[Lk(a)]=o.map(Lk)}),r?yk(n)?[r]:[r,n]:yk(n)?void 0:n}var lA=(e,t,n,r,a=[],o=[],s=new Map)=>{let c=jk(e);if(!c){sA(e,a,t);let n=s.get(e);if(n)return r?{transformedValue:null}:n}if(!oA(e,n)){let t=Yk(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return c||s.set(e,r),r}if(fk(o,e))return{transformedValue:null};let l=Yk(e,n),u=l?.value??e,d=bk(u)?[]:{},f={};dk(u,(c,l)=>{if(l===`__proto__`||l===`constructor`||l===`prototype`)throw Error(`Detected property ${l}. This is a prototype pollution risk, please remove it from your object.`);let u=lA(c,t,n,r,[...a,l],[...o,e],s);d[l]=u.transformedValue,bk(u.annotations)?f[Ik(l)]=u.annotations:vk(u.annotations)&&dk(u.annotations,(e,t)=>{f[Ik(l)+`.`+t]=e})});let p=yk(f)?{transformedValue:d,annotations:l?[l.type]:void 0}:{transformedValue:d,annotations:l?[l.type,f]:f};return c||s.set(e,p),p};function uA(e){return Object.prototype.toString.call(e).slice(8,-1)}function dA(e){return uA(e)===`Array`}function fA(e){if(uA(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function pA(e,t,n,r,a){let o={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;o===`enumerable`&&(e[t]=n),a&&o===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function mA(e,t={}){if(dA(e))return e.map(e=>mA(e,t));if(!fA(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||dA(t.props)&&!t.props.includes(r))return n;let a=e[r];return pA(n,r,mA(a,t),e,t.nonenumerable),n},{})}var hA=class{constructor({dedupe:e=!1}={}){this.classRegistry=new ck,this.symbolRegistry=new sk(e=>e.description??``),this.customTransformerRegistry=new mk,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=lA(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let a=cA(t,this.dedupe);return a&&(r.meta={...r.meta,referentialEqualities:a}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,a=t?.inPlace?n:mA(n);return r?.values&&(a=iA(a,r.values,r.v??0,this)),r?.referentialEqualities&&(a=aA(a,r.referentialEqualities,r.v??0)),a}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)}};hA.defaultInstance=new hA,hA.serialize=hA.defaultInstance.serialize.bind(hA.defaultInstance),hA.deserialize=hA.defaultInstance.deserialize.bind(hA.defaultInstance),hA.stringify=hA.defaultInstance.stringify.bind(hA.defaultInstance),hA.parse=hA.defaultInstance.parse.bind(hA.defaultInstance),hA.registerClass=hA.defaultInstance.registerClass.bind(hA.defaultInstance),hA.registerSymbol=hA.defaultInstance.registerSymbol.bind(hA.defaultInstance),hA.registerCustom=hA.defaultInstance.registerCustom.bind(hA.defaultInstance),hA.allowErrorProps=hA.defaultInstance.allowErrorProps.bind(hA.defaultInstance),hA.serialize,hA.deserialize,hA.stringify,hA.parse,hA.registerClass,hA.registerCustom,hA.registerSymbol,hA.allowErrorProps;var gA=1e4,_A=6e3,vA=2e3,yA=3e4,bA=class{_serverUrl;useWs;baseRetryMs;maxRetryMs;onConnectionChange;token;_trpcClient;_wsClient=null;mirror=null;mirrorInit=null;connected=!1;connectedPromise=null;_systemProxy;_connectionVersion=0;connectionListeners=new Set;constructor(e){this._serverUrl=e.serverUrl.replace(/\/+$/,``),this.token=e.token;let t=typeof window<`u`;this.useWs=e.useWebSocket??t,this.onConnectionChange=e.onConnectionChange,this.baseRetryMs=e.retryDelayMs??vA,this.maxRetryMs=e.maxRetryDelayMs??yA,this._trpcClient=this.buildTrpcClient(),this._systemProxy=eh(this._trpcClient)}get serverUrl(){return this._serverUrl}get connectionVersion(){return this._connectionVersion}subscribeConnectionEvents(e){return this.connectionListeners.add(e),()=>{this.connectionListeners.delete(e)}}emitConnectionEvent(e){try{this.onConnectionChange?.(e)}catch{}for(let t of this.connectionListeners)try{t(e,this._connectionVersion)}catch{}}async awaitConnected(e){if(this.connected)return;if(this.connectedPromise)return this.connectedPromise;let t=e??15e3;this.connectedPromise=(async()=>{let e=this._trpcClient.auth.me.query();Number.isFinite(t)?await new Promise((n,r)=>{let a=setTimeout(()=>r(Error(`System.awaitConnected: probe timed out after ${t}ms`)),t);e.then(()=>{clearTimeout(a),n()},e=>{clearTimeout(a),r(e instanceof Error?e:Error(String(e)))})}):await e,this.connected=!0})();try{await this.connectedPromise}finally{this.connectedPromise=null}}async init(e){if(this.mirror?.isReady())return;if(this.mirrorInit)return this.mirrorInit;let t=new oh(this._trpcClient);return this.mirror=t,this.mirrorInit=(async()=>{await this.awaitConnected(e),await t.init(e)})().finally(()=>{this.mirrorInit=null}),this.mirrorInit}async awaitReady(){if(!this.mirror?.isReady())return this.mirrorInit?this.mirrorInit:this.init()}isReady(){return this.mirror?.isReady()??!1}isConnected(){return this.connected}reconnect(){this.useWs&&(this.emitConnectionEvent(`connecting`),this._wsClient?.close(),this.disposeMirror(),this.connected=!1,this.connectedPromise=null,this._trpcClient=this.buildTrpcClient(),this._systemProxy=eh(this._trpcClient))}switchServerUrl(e){let t=e.replace(/\/+$/,``);t!==this._serverUrl&&(this._serverUrl=t,this.reconnect())}async raceConnectionEndpoints(e){let t=e?.perCandidateTimeoutMs??1500,n=(()=>{try{return new URL(this._serverUrl)}catch{return null}})(),r=n?.port?Number(n.port):n?.protocol===`https:`?443:80,a=n?.protocol===`https:`?`https`:`http`,o=this._trpcClient.localNetwork?.getConnectionEndpoints;if(!o)return{winner:this._serverUrl,switched:!1};let s;try{s=(await o.query({port:r,ipv4Only:e?.ipv4Only,scheme:a})).endpoints}catch{return{winner:this._serverUrl,switched:!1}}if(s.length===0)return{winner:this._serverUrl,switched:!1};let c=await SA(s.map(e=>e.baseUrl),t);return!c||c===this._serverUrl?{winner:c??this._serverUrl,switched:!1}:(this.switchServerUrl(c),{winner:c,switched:!0})}close(){this.disposeMirror(),this.connected=!1,this.connectedPromise=null,this._wsClient?.close()}disposeMirror(){this.mirror?.dispose(),this.mirror=null,this.mirrorInit=null}async login(e,t){let n=await this._trpcClient.auth.login.mutate({username:e,password:t});if(typeof n==`object`&&n&&`token`in n){let e=n,t=e.token,r=e.requiresTotp===!0||Array.isArray(e.secondFactors)&&e.secondFactors.length>0;typeof t==`string`&&!r&&this.setToken(t)}return n}async loginVerifyTotp(e,t){let n=await this._trpcClient.auth.loginVerifyTotp.mutate({challengeToken:e,code:t});if(typeof n==`object`&&n&&`token`in n){let e=n.token;typeof e==`string`&&this.setToken(e)}return n}async loginBeginPasskey(e){return await this._trpcClient.auth.loginBeginPasskey.mutate({challengeToken:e})}async loginVerifyPasskey(e,t){let n=await this._trpcClient.auth.loginVerifyPasskey.mutate({challengeToken:e,response:t});if(typeof n==`object`&&n&&`token`in n){let e=n.token;typeof e==`string`&&this.setToken(e)}return n}async passkeyLoginBegin(){return await this._trpcClient.auth.passkeyLoginBegin.mutate()}async passkeyLoginFinish(e){let t=await this._trpcClient.auth.passkeyLoginFinish.mutate({response:e});if(typeof t==`object`&&t&&`token`in t){let e=t,n=e.requiresTotp===!0||Array.isArray(e.secondFactors)&&e.secondFactors.length>0;typeof e.token==`string`&&!n&&this.setToken(e.token)}return t}async logout(){await this._trpcClient.auth.logout.mutate()}async getMe(){return await this._trpcClient.auth.me.query()}async changeOwnPassword(e){return await this._trpcClient.auth.changeOwnPassword.mutate(e)}async setupOwnTotp(){return await this._trpcClient.auth.setupOwnTotp.mutate()}async confirmOwnTotp(e){return await this._trpcClient.auth.confirmOwnTotp.mutate(e)}async disableOwnTotp(){return await this._trpcClient.auth.disableOwnTotp.mutate()}async getOwnTotpStatus(){return await this._trpcClient.auth.getOwnTotpStatus.query()}async beginOwnPasskeyRegistration(){return await this._trpcClient.auth.beginOwnPasskeyRegistration.mutate()}async finishOwnPasskeyRegistration(e){return await this._trpcClient.auth.finishOwnPasskeyRegistration.mutate(e)}async listOwnPasskeys(){return await this._trpcClient.auth.listOwnPasskeys.query()}async removeOwnPasskey(e){return await this._trpcClient.auth.removeOwnPasskey.mutate(e)}async getOwnPasskeySecondFactorPreference(){return await this._trpcClient.auth.getOwnPasskeySecondFactorPreference.query()}async setOwnPasskeySecondFactorPreference(e){return await this._trpcClient.auth.setOwnPasskeySecondFactorPreference.mutate(e)}setToken(e){this.token=e}listDevices(e){return this.mirror?(e?this.mirror.query(e):this.mirror.getAllDevices()).map(e=>this.attachBinding(e)):[]}getDeviceInfo(e){return this.mirror?.getDeviceInfo(e)??null}listDeviceInfos(e){let t=this.mirror;if(!t)return[];let n=e?t.query(e):t.getAllDevices(),r=[];for(let e of n){let n=t.getDeviceInfo(e.deviceId);n&&r.push(n)}return r}getDevice(e){let t=this.mirror?.getDeviceById(e)??null;return t?this.attachBinding(t):null}getDeviceByName(e){let t=this.mirror?.getDeviceByName(e)??null;return t?this.attachBinding(t):null}getDeviceByStableId(e){let t=this.mirror?.getDeviceByStableId(e)??null;return t?this.attachBinding(t):null}async waitForDevice(e,t){this.mirror||await this.init();let n=await this.mirror.waitForDevice(e,t??3e4);return this.attachBinding(n)}onDeviceAdded(e){if(!this.mirror)throw Error(`System.onDeviceAdded: call init() before subscribing`);return this.mirror.onDeviceAdded(e)}onDeviceRemoved(e){if(!this.mirror)throw Error(`System.onDeviceRemoved: call init() before subscribing`);return this.mirror.onDeviceRemoved(e)}attachBinding(e){let t=this.lookupBinding(e.deviceId);if(t===e.binding)return e;let n=e;return n.binding=t,e}lookupBinding(e){return this.mirror?this.mirror.getDeviceById(e)?.binding??null:null}get addonPages(){return this._systemProxy.addonPages}get addonSettings(){return this._systemProxy.addonSettings}get alerts(){return this._systemProxy.alerts}get audioAnalyzer(){return this._systemProxy.audioAnalyzer}get audioCodec(){return this._systemProxy.audioCodec}get backup(){return this._systemProxy.backup}get decoder(){return this._systemProxy.decoder}get deviceManager(){return this._systemProxy.deviceManager}get deviceProvider(){return this._systemProxy.deviceProvider}get deviceState(){return this._systemProxy.deviceState}get metricsProvider(){return this._systemProxy.metricsProvider}get notificationOutput(){return this._systemProxy.notificationOutput}get pipelineExecutor(){return this._systemProxy.pipelineExecutor}get pipelineOrchestrator(){return this._systemProxy.pipelineOrchestrator}get pipelineRunner(){return this._systemProxy.pipelineRunner}get settingsStore(){return this._systemProxy.settingsStore}get storage(){return this._systemProxy.storage}get streamBroker(){return this._systemProxy.streamBroker}get turnProvider(){return this._systemProxy.turnProvider}get userManagement(){return this._systemProxy.userManagement}subscribeEvent(e,t){let n=this._trpcClient.live.onEvent.subscribe({category:e},{onData:e=>{try{t(e)}catch{}}});return()=>{try{n.unsubscribe()}catch{}}}get trpcClient(){return this._trpcClient}get wsClient(){return this._wsClient}buildTrpcClient(){let e=()=>{let e={};return this.token&&(e.Authorization=`Bearer ${this.token}`),e};if(this.useWs){let e=this._serverUrl.replace(/^http/,`ws`)+`/trpc`,t=this.baseRetryMs,n=this.maxRetryMs;return this._wsClient=iO({url:e,connectionParams:()=>({token:this.token}),retryDelayMs:e=>Math.min(t*2**e,n),keepAlive:{enabled:!0,intervalMs:gA,pongTimeoutMs:_A},onOpen:()=>{this._connectionVersion+=1,this.emitConnectionEvent(`connected`)},onClose:()=>{this.emitConnectionEvent(`disconnected`)}}),pO({links:[aO({client:this._wsClient,transformer:hA})]})}return this._wsClient=null,pO({links:[ID({url:`${this._serverUrl}/trpc`,headers:e,transformer:hA})]})}};function xA(e){return new bA(e)}async function SA(e,t){if(e.length===0)return null;if(typeof fetch!=`function`)return e[0]??null;let n=typeof window<`u`&&window.location!==void 0&&window.location.protocol===`https:`?e.filter(e=>e.toLowerCase().startsWith(`https://`)):e;if(n.length===0)return null;let r=n.map(()=>new AbortController),a=n.map(async(e,n)=>{let a=r[n],o=setTimeout(()=>a.abort(),t);try{let t=await fetch(`${e.replace(/\/+$/,``)}/trpc/health`,{method:`GET`,signal:a.signal,credentials:`omit`});if(!t.ok)throw Error(`${t.status}`);return e}finally{clearTimeout(o)}});try{let e=await Promise.any(a);for(let e of r)try{e.abort()}catch{}return e}catch{return null}}var CA=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}({}),wA=`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(`.`),TA=[`person`,`people`,`pedestrian`,`rider`,`driver`,`cyclist`,`skier`,`skateboarder`,`face`,`hand`,`head`,`body`],EA=[`vehicle`,`car`,`truck`,`bus`,`motorcycle`,`bicycle`,`van`,`ambulance`,`police_car`,`fire_truck`,`train`,`subway`,`tram`,`airplane`,`boat`,`ship`,`helicopter`],DA=`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(`.`),OA=[`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`],kA=[`motion`,`movement`,`other`],AA=[`package`,`packet`],jA=[`audio`],MA=`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(`.`),NA=[`doorbell`,`ring`],PA=[`lock`,`binary`,`flood`,`entry`,`door`,`leak`,`door_open`,`flooded`,`entry_open`];({...wA.reduce((e,t)=>({...e,[t]:`animal`}),{}),...TA.reduce((e,t)=>({...e,[t]:`person`}),{}),...EA.reduce((e,t)=>({...e,[t]:`vehicle`}),{}),...kA.reduce((e,t)=>({...e,[t]:`motion`}),{}),...AA.reduce((e,t)=>({...e,[t]:`package`}),{}),...DA.reduce((e,t)=>({...e,[t]:`face`}),{}),...OA.reduce((e,t)=>({...e,[t]:`plate`}),{}),...jA.reduce((e,t)=>({...e,[t]:`audio`}),{}),...MA.reduce((e,t)=>({...e,[t]:`audio`}),{}),...NA.reduce((e,t)=>({...e,[t]:`doorbell`}),{}),...PA.reduce((e,t)=>({...e,[t]:`sensor`}),{})}),[...Object.values(CA).filter(e=>e!==`motion`)],new Set([`Entry`,`Light`,`Switch`,`Lock`,`SecuritySystem`,`Buttons`,`WindowCovering`,`Siren`,`Sensor`,`Select`,`Program`]),new Set([`light`,`switch`,`input_boolean`,`cover`,`lock`,`alarm_control_panel`,`input_button`,`button`,`input_select`,`select`,`siren`,`media_player`,`script`]);function FA(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=FA(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function IA(){for(var e,t,n=0,r=``,a=arguments.length;n<a;n++)(e=arguments[n])&&(t=FA(e))&&(r&&(r+=` `),r+=t);return r}var LA=(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},RA=(e,t)=>({classGroupId:e,validator:t}),zA=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),BA=`-`,VA=[],HA=`arbitrary..`,UA=e=>{let t=KA(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return GA(e);let n=e.split(BA);return WA(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],a=n[e];return t?a?LA(a,t):t:a||VA}return n[e]||VA}}},WA=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=WA(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(BA):e.slice(t).join(BA),c=o.length;for(let e=0;e<c;e++){let t=o[e];if(t.validator(s))return t.classGroupId}},GA=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?HA+r:void 0})(),KA=e=>{let{theme:t,classGroups:n}=e;return qA(n,t)},qA=(e,t)=>{let n=zA();for(let r in e){let a=e[r];JA(a,n,r,t)}return n},JA=(e,t,n,r)=>{let a=e.length;for(let o=0;o<a;o++){let a=e[o];YA(a,t,n,r)}},YA=(e,t,n,r)=>{if(typeof e==`string`){XA(e,t,n);return}if(typeof e==`function`){ZA(e,t,n,r);return}QA(e,t,n,r)},XA=(e,t,n)=>{let r=e===``?t:$A(t,e);r.classGroupId=n},ZA=(e,t,n,r)=>{if(ej(e)){JA(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(RA(n,e))},QA=(e,t,n,r)=>{let a=Object.entries(e),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];JA(s,$A(t,o),n,r)}},$A=(e,t)=>{let n=e,r=t.split(BA),a=r.length;for(let e=0;e<a;e++){let t=r[e],a=n.nextPart.get(t);a||(a=zA(),n.nextPart.set(t,a)),n=a}return n},ej=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,tj=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),a=(a,o)=>{n[a]=o,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 a(e,t),t},set(e,t){e in n?n[e]=t:a(e,t)}}},nj=`!`,rj=`:`,ij=[],aj=(e,t,n,r,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:a}),oj=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,a=0,o,s=e.length;for(let c=0;c<s;c++){let s=e[c];if(n===0&&r===0){if(s===rj){t.push(e.slice(a,c)),a=c+1;continue}if(s===`/`){o=c;continue}}s===`[`?n++:s===`]`?n--:s===`(`?r++:s===`)`&&r--}let c=t.length===0?e:e.slice(a),l=c,u=!1;c.endsWith(nj)?(l=c.slice(0,-1),u=!0):c.startsWith(nj)&&(l=c.slice(1),u=!0);let d=o&&o>a?o-a:void 0;return aj(t,u,l,d)};if(t){let e=t+rj,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):aj(ij,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},sj=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let a=0;a<e.length;a++){let o=e[a],s=o[0]===`[`,c=t.has(o);s||c?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(o)):r.push(o)}return r.length>0&&(r.sort(),n.push(...r)),n}},cj=e=>({cache:tj(e.cacheSize),parseClassName:oj(e),sortModifiers:sj(e),postfixLookupClassGroupIds:lj(e),...UA(e)}),lj=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},uj=/\s+/,dj=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:a,sortModifiers:o,postfixLookupClassGroupIds:s}=t,c=[],l=e.trim().split(uj),u=``;for(let e=l.length-1;e>=0;--e){let t=l[e],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:h}=n(t);if(d){u=t+(u.length>0?` `+u:u);continue}let g=!!h,_;if(g){_=r(m.substring(0,h));let e=_&&s[_]?r(m):void 0;e&&e!==_&&(_=e,g=!1)}else _=r(m);if(!_){if(!g){u=t+(u.length>0?` `+u:u);continue}if(_=r(m),!_){u=t+(u.length>0?` `+u:u);continue}g=!1}let v=f.length===0?``:f.length===1?f[0]:o(f).join(`:`),y=p?v+nj:v,b=y+_;if(c.indexOf(b)>-1)continue;c.push(b);let x=a(_,g);for(let e=0;e<x.length;++e){let t=x[e];c.push(y+t)}u=t+(u.length>0?` `+u:u)}return u},fj=(...e)=>{let t=0,n,r,a=``;for(;t<e.length;)(n=e[t++])&&(r=pj(n))&&(a&&(a+=` `),a+=r);return a},pj=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=pj(e[r]))&&(n&&(n+=` `),n+=t);return n},mj=(e,...t)=>{let n,r,a,o,s=s=>(n=cj(t.reduce((e,t)=>t(e),e())),r=n.cache.get,a=n.cache.set,o=c,c(s)),c=e=>{let t=r(e);if(t)return t;let o=dj(e,n);return a(e,o),o};return o=s,(...e)=>o(fj(...e))},hj=[],gj=e=>{let t=t=>t[e]||hj;return t.isThemeGetter=!0,t},_j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,vj=/^\((?:(\w[\w-]*):)?(.+)\)$/i,yj=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,bj=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,xj=/\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$/,Sj=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Cj=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,wj=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Tj=e=>yj.test(e),Ej=e=>!!e&&!Number.isNaN(Number(e)),Dj=e=>!!e&&Number.isInteger(Number(e)),Oj=e=>e.endsWith(`%`)&&Ej(e.slice(0,-1)),kj=e=>bj.test(e),Aj=()=>!0,jj=e=>xj.test(e)&&!Sj.test(e),Mj=()=>!1,Nj=e=>Cj.test(e),Pj=e=>wj.test(e),Fj=e=>!Y(e)&&!X(e),Ij=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)),Lj=e=>Qj(e,nM,Mj),Y=e=>_j.test(e),Rj=e=>Qj(e,rM,jj),zj=e=>Qj(e,iM,Ej),Bj=e=>Qj(e,oM,Aj),Vj=e=>Qj(e,aM,Mj),Hj=e=>Qj(e,eM,Mj),Uj=e=>Qj(e,tM,Pj),Wj=e=>Qj(e,sM,Nj),X=e=>vj.test(e),Gj=e=>$j(e,rM),Kj=e=>$j(e,aM),qj=e=>$j(e,eM),Jj=e=>$j(e,nM),Yj=e=>$j(e,tM),Xj=e=>$j(e,sM,!0),Zj=e=>$j(e,oM,!0),Qj=(e,t,n)=>{let r=_j.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},$j=(e,t,n=!1)=>{let r=vj.exec(e);return r?r[1]?t(r[1]):n:!1},eM=e=>e===`position`||e===`percentage`,tM=e=>e===`image`||e===`url`,nM=e=>e===`length`||e===`size`||e===`bg-size`,rM=e=>e===`length`,iM=e=>e===`number`,aM=e=>e===`family-name`,oM=e=>e===`number`||e===`weight`,sM=e=>e===`shadow`,cM=mj(()=>{let e=gj(`color`),t=gj(`font`),n=gj(`text`),r=gj(`font-weight`),a=gj(`tracking`),o=gj(`leading`),s=gj(`breakpoint`),c=gj(`container`),l=gj(`spacing`),u=gj(`radius`),d=gj(`shadow`),f=gj(`inset-shadow`),p=gj(`text-shadow`),m=gj(`drop-shadow`),h=gj(`blur`),g=gj(`perspective`),_=gj(`aspect`),v=gj(`ease`),y=gj(`animate`),b=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],x=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],S=()=>[...x(),X,Y],C=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],w=()=>[`auto`,`contain`,`none`],T=()=>[X,Y,l],E=()=>[Tj,`full`,`auto`,...T()],D=()=>[Dj,`none`,`subgrid`,X,Y],ee=()=>[`auto`,{span:[`full`,Dj,X,Y]},Dj,X,Y],te=()=>[Dj,`auto`,X,Y],O=()=>[`auto`,`min`,`max`,`fr`,X,Y],ne=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],re=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],ie=()=>[`auto`,...T()],ae=()=>[Tj,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...T()],oe=()=>[Tj,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...T()],se=()=>[Tj,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...T()],k=()=>[e,X,Y],A=()=>[...x(),qj,Hj,{position:[X,Y]}],ce=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],le=()=>[`auto`,`cover`,`contain`,Jj,Lj,{size:[X,Y]}],ue=()=>[Oj,Gj,Rj],de=()=>[``,`none`,`full`,u,X,Y],j=()=>[``,Ej,Gj,Rj],M=()=>[`solid`,`dashed`,`dotted`,`double`],fe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],pe=()=>[Ej,Oj,qj,Hj],me=()=>[``,`none`,h,X,Y],he=()=>[`none`,Ej,X,Y],ge=()=>[`none`,Ej,X,Y],_e=()=>[Ej,X,Y],N=()=>[Tj,`full`,...T()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[kj],breakpoint:[kj],color:[Aj],container:[kj],"drop-shadow":[kj],ease:[`in`,`out`,`in-out`],font:[Fj],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[kj],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[kj],shadow:[kj],spacing:[`px`,Ej],text:[kj],"text-shadow":[kj],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Tj,Y,X,_]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[Ij],columns:[{columns:[Ej,Y,X,c]}],"break-after":[{"break-after":b()}],"break-before":[{"break-before":b()}],"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:S()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:w()}],"overscroll-x":[{"overscroll-x":w()}],"overscroll-y":[{"overscroll-y":w()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:E()}],"inset-x":[{"inset-x":E()}],"inset-y":[{"inset-y":E()}],start:[{"inset-s":E(),start:E()}],end:[{"inset-e":E(),end:E()}],"inset-bs":[{"inset-bs":E()}],"inset-be":[{"inset-be":E()}],top:[{top:E()}],right:[{right:E()}],bottom:[{bottom:E()}],left:[{left:E()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Dj,`auto`,X,Y]}],basis:[{basis:[Tj,`full`,`auto`,c,...T()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Ej,Tj,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,Ej,X,Y]}],shrink:[{shrink:[``,Ej,X,Y]}],order:[{order:[Dj,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":D()}],"col-start-end":[{col:ee()}],"col-start":[{"col-start":te()}],"col-end":[{"col-end":te()}],"grid-rows":[{"grid-rows":D()}],"row-start-end":[{row:ee()}],"row-start":[{"row-start":te()}],"row-end":[{"row-end":te()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":O()}],"auto-rows":[{"auto-rows":O()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...ne(),`normal`]}],"justify-items":[{"justify-items":[...re(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...re()]}],"align-content":[{content:[`normal`,...ne()]}],"align-items":[{items:[...re(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...re(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":ne()}],"place-items":[{"place-items":[...re(),`baseline`]}],"place-self":[{"place-self":[`auto`,...re()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:ie()}],mx:[{mx:ie()}],my:[{my:ie()}],ms:[{ms:ie()}],me:[{me:ie()}],mbs:[{mbs:ie()}],mbe:[{mbe:ie()}],mt:[{mt:ie()}],mr:[{mr:ie()}],mb:[{mb:ie()}],ml:[{ml:ie()}],"space-x":[{"space-x":T()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":T()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ae()}],"inline-size":[{inline:[`auto`,...oe()]}],"min-inline-size":[{"min-inline":[`auto`,...oe()]}],"max-inline-size":[{"max-inline":[`none`,...oe()]}],"block-size":[{block:[`auto`,...se()]}],"min-block-size":[{"min-block":[`auto`,...se()]}],"max-block-size":[{"max-block":[`none`,...se()]}],w:[{w:[c,`screen`,...ae()]}],"min-w":[{"min-w":[c,`screen`,`none`,...ae()]}],"max-w":[{"max-w":[c,`screen`,`none`,`prose`,{screen:[s]},...ae()]}],h:[{h:[`screen`,`lh`,...ae()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ae()]}],"max-h":[{"max-h":[`screen`,`lh`,...ae()]}],"font-size":[{text:[`base`,n,Gj,Rj]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Zj,Bj]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Oj,Y]}],"font-family":[{font:[Kj,Vj,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:[a,X,Y]}],"line-clamp":[{"line-clamp":[Ej,`none`,X,zj]}],leading:[{leading:[o,...T()]}],"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:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...M(),`wavy`]}],"text-decoration-thickness":[{decoration:[Ej,`from-font`,`auto`,X,Rj]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[Ej,`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:T()}],"tab-size":[{tab:[Dj,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:A()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:le()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Dj,X,Y],radial:[``,X,Y],conic:[Dj,X,Y]},Yj,Uj]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:ue()}],"gradient-via-pos":[{via:ue()}],"gradient-to-pos":[{to:ue()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:de()}],"rounded-s":[{"rounded-s":de()}],"rounded-e":[{"rounded-e":de()}],"rounded-t":[{"rounded-t":de()}],"rounded-r":[{"rounded-r":de()}],"rounded-b":[{"rounded-b":de()}],"rounded-l":[{"rounded-l":de()}],"rounded-ss":[{"rounded-ss":de()}],"rounded-se":[{"rounded-se":de()}],"rounded-ee":[{"rounded-ee":de()}],"rounded-es":[{"rounded-es":de()}],"rounded-tl":[{"rounded-tl":de()}],"rounded-tr":[{"rounded-tr":de()}],"rounded-br":[{"rounded-br":de()}],"rounded-bl":[{"rounded-bl":de()}],"border-w":[{border:j()}],"border-w-x":[{"border-x":j()}],"border-w-y":[{"border-y":j()}],"border-w-s":[{"border-s":j()}],"border-w-e":[{"border-e":j()}],"border-w-bs":[{"border-bs":j()}],"border-w-be":[{"border-be":j()}],"border-w-t":[{"border-t":j()}],"border-w-r":[{"border-r":j()}],"border-w-b":[{"border-b":j()}],"border-w-l":[{"border-l":j()}],"divide-x":[{"divide-x":j()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":j()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...M(),`hidden`,`none`]}],"divide-style":[{divide:[...M(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...M(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Ej,X,Y]}],"outline-w":[{outline:[``,Ej,Gj,Rj]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,d,Xj,Wj]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,f,Xj,Wj]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:j()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[Ej,Rj]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":j()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,p,Xj,Wj]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[Ej,X,Y]}],"mix-blend":[{"mix-blend":[...fe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":fe()}],"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":[Ej]}],"mask-image-linear-from-pos":[{"mask-linear-from":pe()}],"mask-image-linear-to-pos":[{"mask-linear-to":pe()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":pe()}],"mask-image-t-to-pos":[{"mask-t-to":pe()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":pe()}],"mask-image-r-to-pos":[{"mask-r-to":pe()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":pe()}],"mask-image-b-to-pos":[{"mask-b-to":pe()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":pe()}],"mask-image-l-to-pos":[{"mask-l-to":pe()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":pe()}],"mask-image-x-to-pos":[{"mask-x-to":pe()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":pe()}],"mask-image-y-to-pos":[{"mask-y-to":pe()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":pe()}],"mask-image-radial-to-pos":[{"mask-radial-to":pe()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"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":x()}],"mask-image-conic-pos":[{"mask-conic":[Ej]}],"mask-image-conic-from-pos":[{"mask-conic-from":pe()}],"mask-image-conic-to-pos":[{"mask-conic-to":pe()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:le()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:me()}],brightness:[{brightness:[Ej,X,Y]}],contrast:[{contrast:[Ej,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,m,Xj,Wj]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,Ej,X,Y]}],"hue-rotate":[{"hue-rotate":[Ej,X,Y]}],invert:[{invert:[``,Ej,X,Y]}],saturate:[{saturate:[Ej,X,Y]}],sepia:[{sepia:[``,Ej,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":me()}],"backdrop-brightness":[{"backdrop-brightness":[Ej,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[Ej,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Ej,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ej,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,Ej,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[Ej,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[Ej,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,Ej,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"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:[Ej,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,v,X,Y]}],delay:[{delay:[Ej,X,Y]}],animate:[{animate:[`none`,y,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[g,X,Y]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:he()}],"rotate-x":[{"rotate-x":he()}],"rotate-y":[{"rotate-y":he()}],"rotate-z":[{"rotate-z":he()}],scale:[{scale:ge()}],"scale-x":[{"scale-x":ge()}],"scale-y":[{"scale-y":ge()}],"scale-z":[{"scale-z":ge()}],"scale-3d":[`scale-3d`],skew:[{skew:_e()}],"skew-x":[{"skew-x":_e()}],"skew-y":[{"skew-y":_e()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:N()}],"translate-x":[{"translate-x":N()}],"translate-y":[{"translate-y":N()}],"translate-z":[{"translate-z":N()}],"translate-none":[`translate-none`],zoom:[{zoom:[Dj,X,Y]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"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":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"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`,...k()]}],"stroke-w":[{stroke:[Ej,Gj,Rj,zj]}],stroke:[{stroke:[`none`,...k()]}],"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 cM(IA(e))}var lM=1e3;24*(60*lM*60),30*lM;var uM=/^(\d{4})-(\d{2})-(\d{2})/,dM=/^(\d{2}):(\d{2})(?::(\d{2}))?$/;function fM(e,t){let n=uM.exec(e);if(n===null)return e;let r=Number(n[1]),a=Number(n[2]),o=Number(n[3]),s=new Date(r,a-1,o);if(Number.isNaN(s.getTime()))return e;try{return s.toLocaleDateString(t)}catch{return e}}function pM(e,t){let n=dM.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 mM(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 hM(e,t,n){return e===``?e:t===`date`?fM(e,n):t===`time`?pM(e,n):mM(e,n)}function gM(e,t){return t===void 0?Number.isInteger(e)?String(e):e.toFixed(1):e.toFixed(t)}var _M=e=>e;function vM(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=e.sliceUnit??e.canonicalUnit,a=t?.unit??e.display?.unit??e.roleDefault?.unit;return a!==void 0&&r!==void 0&&a!==r&&Km(r,a)?{unit:a,precision:n,toDisplayValue:e=>Gm(e,r,a)??e}:{unit:r??``,precision:n,toDisplayValue:_M}}function yM(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 bM(e){let t=yM(e);return t===null?(e instanceof Error?e.message:String(e)).includes(`provider not available`):t===`no-provider`||t===`node-offline`}var xM=`text-[10px] text-foreground-subtle`;function SM(e,t){if(typeof globalThis>`u`)return(0,S.createContext)(t);let n=globalThis.__camstackSharedContexts,r=n??new Map;n||(globalThis.__camstackSharedContexts=r);let a=r.get(e);if(a)return a;let o=(0,S.createContext)(t);return r.set(e,o),o}var CM=`FEDERATION_DEBUG`,wM={AT:`@`,HYPHEN:`-`,SLASH:`/`},TM={[wM.AT]:`scope_`,[wM.HYPHEN]:`_`,[wM.SLASH]:`__`};TM[wM.AT],wM.AT,TM[wM.HYPHEN],wM.HYPHEN,TM[wM.SLASH],wM.SLASH;var EM=function(e){return e[e.UNKNOWN=1]=`UNKNOWN`,e[e.CALCULATED=2]=`CALCULATED`,e[e.NO_USE=0]=`NO_USE`,e}({}),DM=typeof ENV_TARGET<`u`?ENV_TARGET===`web`:typeof window<`u`&&window.document!==void 0;function OM(){return DM}function kM(){return typeof navigator<`u`&&navigator?.product===`ReactNative`}function AM(){try{if(OM()&&window.localStorage)return!!localStorage.getItem(CM)}catch{return!1}return!1}function jM(){return typeof process<`u`&&{}.FEDERATION_DEBUG?!!{}.FEDERATION_DEBUG:typeof FEDERATION_DEBUG<`u`&&FEDERATION_DEBUG?!0:AM()}var MM=`[ Federation Runtime ]`,NM=function(...e){return e.length?e.reduce((e,t)=>t?e?`${e}:${t}`:t:e,``):``},PM=(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!OM()&&!kM()&&`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),``},FM=e=>{console.warn(`${MM}: ${e}`)};function IM(e){try{return JSON.stringify(e,null,2)}catch{return``}}var LM=(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 RM(e){return e.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)}function zM(e,t={}){let{remotes:n={},overrides:r={},version:a}=t,o,s=()=>`publicPath`in e.metaData?(e.metaData.publicPath===`auto`||e.metaData.publicPath===``)&&a?RM(a):e.metaData.publicPath:e.metaData.getPublicPath,c=Object.keys(r),l={};Object.keys(n).length||(l=e.remotes?.reduce((e,t)=>{let n,a=t.federationContainerName;return n=c.includes(a)?r[a]:`version`in t?t.version:t.entry,e[a]={matchedVersion:n},e},{})||{}),Object.keys(n).forEach(e=>l[e]={matchedVersion:c.includes(e)?r[e]:n[e]});let{remoteEntry:{path:u,name:d,type:f},types:p={path:``,name:``,zip:``,api:``},buildInfo:{buildVersion:m},globalName:h,ssrRemoteEntry:g}=e.metaData,{exposes:_}=e,v={version:a||``,buildVersion:m,globalName:h,remoteEntry:LM(u,d),remoteEntryType:f,remoteTypes:LM(p.path,p.name),remoteTypesZip:p.zip||``,remoteTypesAPI:p.api||``,remotesInfo:l,shared:e?.shared.map(e=>({assets:e.assets,sharedName:e.name,version:e.version,usedExports:e.referenceExports||[]})),modules:_?.map(e=>({moduleName:e.name,modulePath:e.path,assets:e.assets}))};if(`publicPath`in e.metaData?(o={...v,publicPath:s()},typeof e.metaData.ssrPublicPath==`string`&&(o.ssrPublicPath=e.metaData.ssrPublicPath)):o={...v,getPublicPath:s()},g){let e=LM(g.path,g.name);o.ssrRemoteEntry=e,o.ssrRemoteEntryType=g.type||`commonjs-module`}return o}function BM(e){return!!(`remoteEntry`in e&&e.remoteEntry.includes(`.json`))}var VM=`[ Module Federation ]`,HM=console,UM=[`logger.ts`,`logger.js`,`captureStackTrace`,`Logger.emit`,`Logger.log`,`Logger.info`,`Logger.warn`,`Logger.error`,`Logger.debug`];function WM(){try{let e=Error().stack;if(!e)return;let[,...t]=e.split(`
|
|
74
|
+
`||e===`\r`||e===`\f`||e===`\v`}function rl(e){if(e.length>2048)throw new qc(`expression too long (${e.length} > ${Yc} chars)`,0);let t=[],n=0,r=e.length;for(;n<r;){let a=e[n];if(nl(a)){n+=1;continue}if($c(a)){let a=n;for(;n<r&&$c(e[n]);)n+=1;if(n<r&&e[n]===`.`){if(n+1>=r||!$c(e[n+1]))throw new qc(`malformed number: decimal point needs a digit`,n);for(n+=1;n<r&&$c(e[n]);)n+=1}let o=e.slice(a,n),s=Number(o);if(!Number.isFinite(s))throw new qc(`malformed number: '${o}'`,a);t.push({type:`number`,value:s,pos:a});continue}if(a===`'`||a===`"`){let o=a,s=n;n+=1;let c=``,l=!1;for(;n<r;){let t=e[n];if(t===`\\`){let t=n+1<r?e[n+1]:``;if(t===`\\`||t===`'`||t===`"`){c+=t,n+=2;continue}throw new qc(`invalid string escape: '\\${t}'`,n)}if(t===o){l=!0,n+=1;break}c+=t,n+=1}if(!l)throw new qc(`unterminated string literal`,s);t.push({type:`string`,value:c,pos:s});continue}if(el(a)){let a=n;for(;n<r&&tl(e[n]);)n+=1;let o=e.slice(a,n);Qc.has(o)?t.push({type:`keyword`,keyword:il(o),pos:a}):t.push({type:`identifier`,name:o,pos:a});continue}let o=n+1<r?e.slice(n,n+2):``;if(o===`<=`||o===`>=`||o===`==`||o===`!=`||o===`&&`||o===`||`){t.push({type:`punct`,punct:o,pos:n}),n+=2;continue}if(al(a)){t.push({type:`punct`,punct:a,pos:n}),n+=1;continue}throw new qc(`unexpected character '${a}'`,n)}return t.push({type:`eof`,pos:r}),t}function il(e){return e===`true`?`true`:e===`false`?`false`:`null`}function al(e){return e===`(`||e===`)`||e===`,`||e===`?`||e===`:`||e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`!`||e===`<`||e===`>`}function ol(e,t,n){if(typeof e!=`number`||!Number.isFinite(e))throw new Jc(`${t}: argument ${n+1} must be a finite number`);return e}function sl(e,t,n){if(typeof e!=`string`)throw new Jc(`${t}: argument ${n+1} must be a string`);return e}function cl(e,t){if(!Number.isFinite(e))throw new Jc(`${t}: produced a non-finite result`);return e}function ll(e,t){return e.map((e,n)=>ol(e,t,n))}var ul=1/0,dl={min:{minArgs:1,maxArgs:ul,apply:e=>cl(Math.min(...ll(e,`min`)),`min`)},max:{minArgs:1,maxArgs:ul,apply:e=>cl(Math.max(...ll(e,`max`)),`max`)},abs:{minArgs:1,maxArgs:1,apply:e=>cl(Math.abs(ol(e[0],`abs`,0)),`abs`)},floor:{minArgs:1,maxArgs:1,apply:e=>cl(Math.floor(ol(e[0],`floor`,0)),`floor`)},ceil:{minArgs:1,maxArgs:1,apply:e=>cl(Math.ceil(ol(e[0],`ceil`,0)),`ceil`)},sqrt:{minArgs:1,maxArgs:1,apply:e=>cl(Math.sqrt(ol(e[0],`sqrt`,0)),`sqrt`)},round:{minArgs:1,maxArgs:2,apply:e=>{let t=ol(e[0],`round`,0),n=e.length>1?Math.trunc(ol(e[1],`round`,1)):0;if(n<0||n>100)throw new Jc(`round: digits must be between 0 and 100`);let r=10**n;return cl(Math.round(t*r)/r,`round`)}},pow:{minArgs:2,maxArgs:2,apply:e=>cl(ol(e[0],`pow`,0)**ol(e[1],`pow`,1),`pow`)},clamp:{minArgs:3,maxArgs:3,apply:e=>{let t=ol(e[0],`clamp`,0),n=ol(e[1],`clamp`,1),r=ol(e[2],`clamp`,2);if(n>r)throw new Jc(`clamp: lower bound is greater than upper bound`);return cl(Math.min(r,Math.max(n,t)),`clamp`)}},avg:{minArgs:1,maxArgs:ul,apply:e=>{let t=ll(e,`avg`);return cl(t.reduce((e,t)=>e+t,0)/t.length,`avg`)}},sum:{minArgs:1,maxArgs:ul,apply:e=>cl(ll(e,`sum`).reduce((e,t)=>e+t,0),`sum`)},coalesce:{minArgs:1,maxArgs:ul,apply:e=>{for(let t of e)if(t!==null)return t;return null}},age:{minArgs:2,maxArgs:2,apply:e=>cl(ol(e[0],`age`,0)-ol(e[1],`age`,1),`age`)},convert:{minArgs:3,maxArgs:3,apply:(e,t)=>{let n=ol(e[0],`convert`,0),r=sl(e[1],`convert`,1).trim(),a=sl(e[2],`convert`,2).trim();if(t.convert){let e=t.convert(n,r,a);if(e===null)throw new Jc(`convert: cannot convert '${r}' to '${a}'`);return cl(e,`convert`)}if(r===a)return n;throw new Jc(`convert: unit conversion table not installed`)}}};Object.freeze(Object.assign(Object.create(null),dl));var fl=new Set(Object.keys(dl)),pl={"||":1,"&&":2,"==":3,"!=":3,"<":4,"<=":4,">":4,">=":4,"+":5,"-":5,"*":6,"/":6,"%":6};function ml(e){return e===`&&`||e===`||`}function hl(e){return e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`==`||e===`!=`||e===`<`||e===`<=`||e===`>`||e===`>=`}var gl=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 qc(`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 qc(`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 qc(`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=pl[n.punct];if(r===void 0||r<e)break;let a=n.punct;this.pos+=1;let o=this.parseBinary(r+1);if(this.countNode(),ml(a))t={kind:`logical`,op:a,left:t,right:o};else if(hl(a))t={kind:`binary`,op:a,left:t,right:o};else throw new qc(`unexpected operator '${a}'`,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 qc(`unexpected token '${e.punct}'`,e.pos);case`eof`:throw new qc(`unexpected end of expression`,e.pos)}}parseCall(e,t){if(!fl.has(e))throw new qc(`unknown function '${e}'`,t);this.expectPunct(`(`);let n=[];if(!this.matchPunct(`)`))for(;;){if(n.push(this.parseTernary()),n.length>16)throw new qc(`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 _l(e){return new gl(rl(e)).parse()}Object.freeze({});var vl=new Map;function yl(e){let t=vl.get(e);if(t!==void 0)return vl.delete(e),vl.set(e,t),t;let n;try{n={ok:!0,parsed:_l(e)}}catch(e){n={ok:!1,error:e instanceof qc?e.message:String(e)}}if(vl.set(e,n),vl.size>256){let e=vl.keys().next().value;e!==void 0&&vl.delete(e)}return n}function bl(e){return yl(e)}function xl(e){let t=Object.keys(e.bindings);if(t.length>32)return`too many bindings (${t.length} > 32)`;for(let e of t){if(!Xc.test(e))return`invalid binding name '${e}'`;if(Zc.has(e))return`binding name '${e}' is reserved`;if(fl.has(e))return`binding name '${e}' shadows a builtin function`}let n=bl(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 Sl={Siren:G.Siren,Floodlight:G.Floodlight,Spotlight:G.Spotlight,PirSensor:G.PirSensor,Chime:G.Chime,Autotrack:G.Autotrack,Nightvision:G.Nightvision,PrivacyMask:G.PrivacyMask};Sl.Siren,Sl.Floodlight,Sl.Spotlight,Sl.PirSensor,Sl.Chime,Sl.Autotrack,Sl.Nightvision,Sl.PrivacyMask,js.BatteryOperated;var Cl=B({online:I(),lastChangedAt:F()}),wl={name:`device-status`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onStatusChanged:{data:B({deviceId:F(),status:Cl})}},status:{schema:Cl,kind:`push`},runtimeState:Cl},Tl=B({flags:V(P(),L()),deviceType:P().nullable(),model:P().nullable(),channelCount:F().nullable(),lastProbedAt:F(),lastFetchedAt:F()}),El={name:`feature-probe`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onProbeChanged:{data:B({deviceId:F(),status:Tl})}},status:{schema:Tl,kind:`push`},runtimeState:Tl},Dl=B({co2Ppm:F().min(0).optional(),vocPpb:F().min(0).optional(),pm25:F().min(0).optional(),pm10:F().min(0).optional(),aqi:F().optional(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Ol={name:`air-quality-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Dl,kind:`push`},runtimeState:Dl},kl=H([`disarmed`,`armed_home`,`armed_away`,`armed_night`,`armed_vacation`,`armed_custom_bypass`,`arming`,`disarming`,`pending`,`triggered`]),Al=H([`home`,`away`,`night`,`vacation`,`custom_bypass`]),jl=B({state:kl,availableModes:z(Al),requiresCode:I(),lastChangedAt:F()}),Ml={name:`alarm-panel`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.AlarmPanel],methods:{arm:K(B({deviceId:F().int().nonnegative(),mode:Al,code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),disarm:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),trigger:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:jl,kind:`push`},runtimeState:jl},Nl=B({lux:F().min(0),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Pl={name:`ambient-light-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Nl,kind:`push`},runtimeState:Nl},Fl=B({className:P(),hits:F().int().nonnegative(),avgScore:F().min(0).max(1),peakScore:F().min(0).max(1)}),Il=B({ts:F().int(),windowSec:F().int().positive(),level:B({rms:F(),dbfs:F()}),peakDbfs:F(),avgDbfs:F(),current:B({className:P(),score:F().min(0).max(1),timestamp:F().int()}).nullable(),byClass:z(Fl).readonly()}),Ll=B({points:z(B({ts:F().int(),dbfs:F().nullable(),peakDbfs:F(),avgDbfs:F(),topClass:P().nullable(),topScore:F().min(0).max(1).nullable()})).readonly(),effectiveSampleEveryMs:F().int().positive(),windowMsActual:F().int().nonnegative()}),Rl={name:`audio-metrics`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCurrentSnapshot:K(B({deviceId:F()}),Il.nullable()),getHistory:K(B({deviceId:F(),windowSec:F().int().positive().optional(),sampleEveryMs:F().int().positive().optional()}),Ll)},runtimeState:Il},zl=B({enabled:I(),isRunning:I(),lastTriggeredAt:F(),lastError:P().nullable(),lastChangedAt:F()}),Bl={name:`automation-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Automation],methods:{enable:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),disable:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),trigger:K(B({deviceId:F().int().nonnegative(),skipCondition:I().optional()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:zl,kind:`push`},runtimeState:zl},Vl=B({percentage:F().min(0).max(100),charging:H([`dc`,`solar`,`none`]),sleeping:I(),lastUpdated:F(),binary:I().optional()}),Hl={name:`battery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor,W.Button,W.Switch],methods:{wakeForStream:K(B({deviceId:F(),timeoutMs:F().int().min(500).max(3e4).default(8e3)}),B({awoke:I(),durationMs:F()}),{kind:`mutation`})},events:{onStatusChanged:{data:B({deviceId:F(),status:Vl})}},status:{schema:Vl,kind:`push`,empty:{percentage:0,charging:`none`,sleeping:!1,lastUpdated:0}},runtimeState:Vl},Ul=B({on:I(),lastChangedAt:F()}),Wl={name:`binary`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ul,kind:`push`},runtimeState:Ul},Gl=B({percentage:F().min(0).max(100),lastChangedAt:F()}),Kl={name:`brightness`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light],methods:{setBrightness:K(B({deviceId:F().int().nonnegative(),percentage:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},events:{onBrightnessChanged:{data:B({deviceId:F(),percentage:F().min(0).max(100),lastChangedAt:F()})}},status:{schema:Gl,kind:`command-driven`},runtimeState:Gl},ql=H([`webrtc`,`hls`,`mjpeg`,`rtsp`]),Jl=B({brokerId:P(),url:P(),mutedUrl:P(),enabled:I(),codec:P().optional(),resolution:B({width:F().int().positive(),height:F().int().positive()}).optional()}),Yl=B({sessionId:P(),remoteAddr:P(),userAgent:P().nullish(),playing:I(),muted:I(),connectedAt:F(),lastRtpAt:F(),bytesSent:F()}),Xl=B({tag:P(),subscribedAt:F(),maxFps:F(),framesDelivered:F(),framesDropped:F()}),Zl=B({tag:P(),subscribedAt:F(),chunksDelivered:F()}),Ql=B({kind:H([`alexa`,`homekit`,`webrtc-browser`,`webrtc-mobile`,`webrtc-whep`,`rtsp-listen`,`derived-broker`,`recording`,`pipeline`,`snapshot`,`warmup`,`unknown`]),label:P().optional(),media:H([`audio`,`video`,`both`]).optional(),targetCodec:P().optional(),transport:H([`passthrough`,`repacketize`,`transcode`]).optional(),remoteAddr:P().optional(),userAgent:P().optional(),userId:P().optional(),sessionId:P().optional(),extra:V(P(),P()).optional()}).readonly(),$l=B({id:P(),channel:H([`annexb`,`rtp`]),attribution:Ql,subscribedAt:F(),packetsDelivered:F()}),eu=B({rtsp:z(Yl).readonly(),decoded:z(Xl).readonly(),audio:z(Zl).readonly(),encoded:z($l).readonly(),pipeClients:F(),encodedSubscribers:F()});H([`reconnecting`,`sleeping`,`offline`,`disabled`,`waking`]);var tu=H([`h264`,`h265`,`copy`]),nu=H([`aac`,`opus`,`pcmu`,`copy`,`none`]),ru=B({deviceId:F().int().nonnegative(),video:tu,audio:nu.optional(),profile:ps.optional(),targetResolution:B({width:F().int().positive(),height:F().int().positive()}).optional(),outputArgs:z(P()).optional(),audioEgress:I().optional(),hostname:P().optional(),tag:P().optional()}),iu=B({url:P(),videoCodec:H([`H264`,`H265`]),audioCodec:P(),resolution:B({width:F().int().positive(),height:F().int().positive()}),transcoded:I(),encoder:P(),pipelineKey:P()}),au={name:`stream-broker`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,methods:{publishCameraStream:K(B({deviceId:F().int().nonnegative(),camStreamId:P().min(1),kind:ms,url:P().optional(),codec:P().optional(),resolution:hs.optional(),fps:F().positive().optional(),label:P().optional(),deviceFeatures:z(P()).optional(),autoEligible:I().optional(),metadata:V(P(),L()).optional(),sourceCamStreamId:P().min(1).optional(),encodeProfile:Pc.optional()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),retractCameraStream:K(B({deviceId:F().int().nonnegative(),camStreamId:P().min(1)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),assignProfile:K(B({deviceId:F().int().nonnegative(),profile:ps,camStreamId:P().min(1)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignProfile:K(B({deviceId:F().int().nonnegative(),profile:ps}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),listAllCameraStreams:K(R(),z(gs).readonly()),listAllProfileSlots:K(R(),z(vs).readonly()),getBrokerStats:K(B({brokerId:P()}),ks),probeStream:K(B({brokerId:P()}),B({probed:I(),summary:P()}),{kind:`mutation`,auth:`admin`}),listClients:K(B({brokerId:P()}),eu),killClient:K(B({brokerId:P(),channel:H([`rtsp`,`decoded`,`audio`]),handle:P()}),B({killed:I()}),{kind:`mutation`,auth:`admin`}),restartProfile:K(B({deviceId:F().int().nonnegative(),profile:ps}),B({success:I()}),{kind:`mutation`,auth:`admin`}),getStreamUrl:K(B({streamId:P(),format:ql}),B({url:P()})),getStreamWithCodec:K(ru,iu,{kind:`mutation`,auth:`admin`}),releaseStreamWithCodec:K(B({pipelineKey:P()}),B({released:I(),refcount:F().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),subscribeAudioChunks:K(Ds,Os,{kind:`mutation`}),pullAudioChunks:K(B({subscriptionId:P(),maxCount:F().int().positive().default(8)}),z(Es).readonly()),unsubscribeAudioChunks:K(B({subscriptionId:P()}),B({released:I()}),{kind:`mutation`}),subscribeFrames:K(ws,Ts,{kind:`mutation`}),pullFrameHandles:K(B({subscriptionId:P(),maxCount:F().int().positive().default(4)}),z(Ss).readonly()),unsubscribeFrames:K(B({subscriptionId:P()}),B({released:I()}),{kind:`mutation`}),setPreBufferDuration:K(B({brokerId:P(),seconds:F().min(0).max(30)}),R(),{kind:`mutation`,auth:`admin`}),getPreBufferInfo:K(B({brokerId:P()}),B({configuredSec:F(),bufferedMs:F(),packetCount:F()})),getRtspPort:K(R(),F()),getAllRtspEntries:K(B({hostname:P().optional()}),z(Jl).readonly()),getRtspEntry:K(B({brokerId:P(),hostname:P().optional()}),Jl.nullable()),regenerateRtspToken:K(B({brokerId:P()}),P().nullable(),{kind:`mutation`,auth:`admin`}),setRtspEnabled:K(B({brokerId:P(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`}),isRtspEnabled:K(B({brokerId:P()}),I())},events:{onCamStreamDemand:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P(),profile:ps})),onCamStreamIdle:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P()})),onRequestStreamSourceRefresh:Ps(B({deviceId:F().int().nonnegative(),camStreamId:P(),brokerId:P()}))}},ou=H([`h264`,`h265`,`hevc`,`av1`,`mjpeg`,`vp8`,`vp9`]),su=B({acceptCodecs:z(ou).readonly().optional(),minHeight:F().int().positive().optional(),minWidth:F().int().positive().optional(),excludeDerived:I().optional(),requireSiblingCodec:z(ou).readonly().optional()}).readonly(),cu=B({preferredProviders:z(P()).readonly().optional(),resolutionPreference:H([`highest`,`lowest`]).optional()}).readonly(),lu=B({camStreamId:P(),codec:P().optional(),resolution:hs.optional(),reason:P()}),uu={name:`camera-streams`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],methods:{getCameraStreams:K(B({deviceId:F().int().nonnegative()}),z(gs).readonly()),getBrokerStreams:K(B({deviceId:F().int().nonnegative()}),z(vs).readonly()),getRtspEntries:K(B({deviceId:F().int().nonnegative(),hostname:P().optional()}),z(Jl).readonly()),getProfileRtspEntries:K(B({deviceId:F().int().nonnegative(),hostname:P().optional()}),z(As).readonly()),pickStream:K(B({deviceId:F().int().nonnegative(),requirements:su,preferences:cu.optional()}),lu.nullable())},events:{onCamStreamsChanged:Ps(B({deviceId:F().int().nonnegative(),camStreams:z(gs).readonly()})),onProfileSlotsChanged:Ps(B({deviceId:F().int().nonnegative(),profileSlots:z(vs).readonly()}))},runtimeState:B({online:I(),slotStatuses:B({high:_s.optional(),mid:_s.optional(),low:_s.optional()}),slotErrors:B({high:P().optional(),mid:P().optional(),low:P().optional()}),lastChangedAt:F()})},du=B({detected:I(),lastChangedAt:F()}),fu={name:`carbon-monoxide`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:du,kind:`push`},runtimeState:du},pu=H([`off`,`heat`,`cool`,`auto`,`heat_cool`,`fan_only`,`dry`]),mu=B({mode:pu,availableModes:z(pu),fanMode:P(),availableFanModes:z(P()),preset:P(),availablePresets:z(P()),target:F().nullable(),targetHigh:F().nullable(),targetLow:F().nullable(),targetHumidity:F().min(0).max(100).nullable(),currentTemp:F().nullable(),currentHumidity:F().min(0).max(100).nullable(),swingVertical:I().nullable(),swingHorizontal:I().nullable(),lastFetchedAt:F()}),hu={name:`climate-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Thermostat,W.Climate],methods:{setMode:K(B({deviceId:F().int().nonnegative(),mode:pu}),R(),{kind:`mutation`,auth:`admin`}),setFanMode:K(B({deviceId:F().int().nonnegative(),fanMode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setPreset:K(B({deviceId:F().int().nonnegative(),preset:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setTarget:K(B({deviceId:F().int().nonnegative(),target:F()}),R(),{kind:`mutation`,auth:`admin`}),setTargetRange:K(B({deviceId:F().int().nonnegative(),targetLow:F(),targetHigh:F()}),R(),{kind:`mutation`,auth:`admin`}),setTargetHumidity:K(B({deviceId:F().int().nonnegative(),targetHumidity:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setSwingVertical:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setSwingHorizontal:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:mu,kind:`push`},runtimeState:mu},gu=B({r:F().int().min(0).max(255),g:F().int().min(0).max(255),b:F().int().min(0).max(255)}),_u=B({h:F().min(0).max(360),s:F().min(0).max(100),v:F().min(0).max(100)}),vu=To(`mode`,[B({mode:U(`rgb`),rgb:gu}),B({mode:U(`hsv`),hsv:_u}),B({mode:U(`mired`),mireds:F().int().min(50).max(1e3)})]),yu=B({mode:H([`rgb`,`hsv`,`mired`]),rgb:gu.optional(),hsv:_u.optional(),mireds:F().int().optional(),lastChangedAt:F()}),bu={name:`color`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light],methods:{setColor:K(B({deviceId:F().int().nonnegative(),color:vu}),R(),{kind:`mutation`,auth:`admin`})},events:{onColorChanged:{data:B({deviceId:F(),mode:H([`rgb`,`hsv`,`mired`]),rgb:gu.optional(),hsv:_u.optional(),mireds:F().int().optional(),lastChangedAt:F()})}},status:{schema:yu,kind:`command-driven`},runtimeState:yu},xu=B({connected:I(),lastChangedAt:F()}),Su={name:`connectivity`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:xu,kind:`push`},runtimeState:xu},Cu=B({key:P().min(1),label:P().min(1),level:F().min(0).max(100).nullable(),status:H([`ok`,`replace`]).nullable(),lastResetAt:F().nullable(),resettable:I()}),wu=B({items:z(Cu),lastChangedAt:F()}),Tu={name:`consumables`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:Object.values(W),deviceConfig:{ui:{kind:`widget`,widgetId:`host/consumables-panel`,tab:`consumables`,topTab:!0,label:`Consumables`,order:5}},methods:{reset:K(B({deviceId:F().int().nonnegative(),key:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wu,kind:`push`,empty:{items:[],lastChangedAt:0},itemArray:{path:`items`,keyField:`key`,labelField:`label`,itemSchema:Cu,emptyItem:{key:``,label:``,level:null,status:null,lastResetAt:null,resettable:!1}}},runtimeState:wu.extend({lastFetchedAt:F()})},Eu=B({entryOpen:I(),lastChangedAt:F()}),Du={name:`contact`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Eu,kind:`push`},runtimeState:Eu},Ou=B({kind:H([`numeric`,`select`,`text`,`datetime`]),value:Co([F(),P()]),options:z(P()),lastChangedAt:F(),unit:P().optional(),min:F().optional(),max:F().optional(),step:F().optional(),precision:F().int().min(0).max(10).optional(),format:H([`date`,`time`,`datetime`]).optional()}),ku=To(`kind`,[B({kind:U(`numeric`),value:F()}),B({kind:U(`select`),value:P().min(1)}),B({kind:U(`text`),value:P()}),B({kind:U(`datetime`),value:P().min(1)})]),Au={name:`control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Control],methods:{setValue:K(B({deviceId:F().int().nonnegative(),control:ku}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Ou,kind:`push`},runtimeState:Ou},ju=B({state:H([`open`,`opening`,`closing`,`closed`,`stopped`]),position:F().min(0).max(100).nullable(),tiltPosition:F().min(0).max(100).nullable(),lastChangedAt:F()}),Mu={name:`cover`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Cover],methods:{open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),close:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setPosition:K(B({deviceId:F().int().nonnegative(),position:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setTiltPosition:K(B({deviceId:F().int().nonnegative(),tiltPosition:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ju,kind:`push`},runtimeState:ju},Nu=H([`auto`,`day`,`night`,`schedule`]),Pu=B({min:F(),max:F(),step:F()}),Fu=B({mode:Nu,sensitivity:F().optional(),switchDelaySec:F().optional(),lastFetchedAt:F()}),Iu=B({modes:z(Nu),supportsSensitivity:I(),sensitivity:Pu.optional(),supportsSwitchDelay:I(),switchDelaySec:Pu.optional()}),Lu=B({mode:Nu.optional(),sensitivity:F().optional(),switchDelaySec:F().optional()}),Ru={name:`day-night`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`day-night`,tab:`image`}},methods:{getOptions:K(B({deviceId:F()}),Iu),setSettings:K(B({deviceId:F(),settings:Lu}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Fu,kind:`poll`},runtimeState:Fu},zu=B({id:P(),system:P(),uniqueId:P().optional(),raw:V(P(),L()).optional()}),Bu=H([`online`,`sleeping`,`offline`,`unknown`]),Vu=ts(()=>B({childNativeId:P(),name:P(),type:H(W),status:Bu,metadata:B({model:P().optional(),serialNumber:P().optional(),uid:P().optional(),rtspChannel:F().int().nonnegative().optional(),isBattery:I().optional(),isDoorbell:I().optional(),isMultifocal:I().optional(),externalLocation:P().optional(),manufacturer:P().optional(),integration:P().optional()}).default({}),alreadyAdopted:I(),adoptedDeviceId:F().int().nonnegative().nullable(),capabilities:z(P()).readonly().optional(),features:z(P()).readonly().optional(),sourceInfo:zu.optional(),children:z(Vu).readonly().optional()})),Hu=B({discovered:z(Vu),lastDiscoveryAt:F().int().nonnegative().nullable(),lastError:P().nullable()}),Uu={name:`device-discovery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Hub],status:{schema:Hu,kind:`poll`},runtimeState:Hu.extend({lastFetchedAt:F().int().nonnegative()}),methods:{listDiscovered:K(B({deviceId:F().int().nonnegative()}),z(Vu).readonly()),refreshDiscovery:K(B({deviceId:F().int().nonnegative()}),z(Vu).readonly(),{kind:`mutation`,auth:`admin`}),adoptDevice:K(B({deviceId:F().int().nonnegative(),childNativeId:P(),name:P().optional()}),B({deviceId:F().int().nonnegative(),stableId:P()}),{kind:`mutation`,auth:`admin`}),releaseDevice:K(B({deviceId:F().int().nonnegative(),childDeviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})}},Wu=B({lastPressedAt:F().nullable(),pressCountSinceStart:F()}),Gu=B({deviceId:F(),timestamp:F()}),Ku={name:`doorbell`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!1,deviceTypes:[W.Button,W.Camera],exposesDeviceSettings:!0,methods:{},events:{onPressed:{data:Gu}},status:{schema:Wu,kind:`push`},runtimeState:Wu},qu=H([`date`,`time`,`datetime`]),Ju=B({value:P(),format:qu.optional(),lastFetchedAt:F()}),Yu={name:`enum-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ju,kind:`push`},runtimeState:Ju},Xu=B({deviceId:F(),eventType:P(),data:V(P(),L()).nullable(),timestamp:F(),seq:F()}),Zu=B({eventTypes:z(P()),lastEvent:Xu.nullable(),eventCountSinceStart:F()}),Qu={name:`event-emitter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.EventEmitter],methods:{},events:{onEvent:{data:Xu}},status:{schema:Zu,kind:`push`},runtimeState:Zu},$u=H([`forward`,`reverse`]),ed=B({percentage:F().min(0).max(100).nullable(),percentageStep:F().positive().optional(),preset:P(),availablePresets:z(P()),direction:$u.nullable(),oscillating:I().nullable(),lastChangedAt:F()}),td={name:`fan-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Fan],methods:{setPercentage:K(B({deviceId:F().int().nonnegative(),percentage:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setPreset:K(B({deviceId:F().int().nonnegative(),preset:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setDirection:K(B({deviceId:F().int().nonnegative(),direction:$u}),R(),{kind:`mutation`,auth:`admin`}),setOscillating:K(B({deviceId:F().int().nonnegative(),oscillating:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ed,kind:`push`},runtimeState:ed},nd=B({flooded:I(),lastChangedAt:F()}),rd={name:`flood`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:nd,kind:`push`},runtimeState:nd},id=B({detected:I(),lastChangedAt:F()}),ad={name:`gas`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:id,kind:`push`},runtimeState:id},od=B({on:I(),currentHumidity:F().min(0).max(100).nullable(),targetHumidity:F().min(0).max(100).nullable(),mode:P().nullable(),availableModes:z(P()),action:P().nullable(),minHumidity:F().nullable(),maxHumidity:F().nullable(),lastChangedAt:F()}),sd={name:`humidifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Humidifier],methods:{setOn:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setTargetHumidity:K(B({deviceId:F().int().nonnegative(),humidity:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setMode:K(B({deviceId:F().int().nonnegative(),mode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:od,kind:`push`},runtimeState:od},cd=B({percent:F().min(0).max(100),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),ld={name:`humidity-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor,W.Thermostat],methods:{},status:{schema:cd,kind:`push`},runtimeState:cd},ud=B({url:P().nullable(),lastUpdated:F().nullable()}),dd={name:`image`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Image],methods:{},status:{schema:ud,kind:`push`},runtimeState:ud},fd=H([`0`,`90`,`180`,`270`]),pd=H([`auto`,`manual`]),md=H([`auto`,`manual`]),hd=H([`off`,`blc`,`wdr`,`hlc`]),gd=B({min:F(),max:F(),step:F()}),_d=B({brightness:F().optional(),contrast:F().optional(),saturation:F().optional(),sharpness:F().optional(),mirror:I().optional(),flip:I().optional(),rotate:fd.optional(),whiteBalance:pd.optional(),warmth:F().optional(),exposureMode:md.optional(),backlightMode:hd.optional(),lastFetchedAt:F()}),vd=B({supportsBrightness:I(),brightness:gd.optional(),supportsContrast:I(),contrast:gd.optional(),supportsSaturation:I(),saturation:gd.optional(),supportsSharpness:I(),sharpness:gd.optional(),supportsMirror:I(),supportsFlip:I(),rotateOptions:z(fd),whiteBalanceModes:z(pd),supportsWarmth:I(),warmth:gd.optional(),exposureModes:z(md),backlightModes:z(hd)}),yd=B({brightness:F().optional(),contrast:F().optional(),saturation:F().optional(),sharpness:F().optional(),mirror:I().optional(),flip:I().optional(),rotate:fd.optional(),whiteBalance:pd.optional(),warmth:F().optional(),exposureMode:md.optional(),backlightMode:hd.optional()}),bd={name:`image-settings`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`image-settings`,tab:`image`}},methods:{getOptions:K(B({deviceId:F()}),vd),setSettings:K(B({deviceId:F(),settings:yd}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:_d,kind:`poll`},runtimeState:_d},xd=H([`idle`,`mowing`,`paused`,`docked`,`error`]),Sd=H([`info`,`warning`,`error`]),Cd=B({activity:xd,batteryLevel:F().min(0).max(100).nullable(),progressPercent:F().min(0).max(100).nullable(),currentCode:F().nullable(),currentCodeLabel:P().nullable(),severity:Sd,lastChangedAt:F()}),wd={name:`lawn-mower-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.LawnMower],methods:{startMowing:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),dock:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Cd,kind:`push`},runtimeState:Cd},Td=B({state:H([`locked`,`unlocked`,`locking`,`unlocking`,`jammed`]),lastChangedAt:F()}),Ed={name:`lock-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Lock],methods:{lock:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),unlock:K(B({deviceId:F().int().nonnegative(),code:P().min(1).optional()}),R(),{kind:`mutation`,auth:`admin`}),open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Td,kind:`push`},runtimeState:Td},Dd=H([`off`,`on`,`idle`,`playing`,`paused`,`buffering`,`standby`]),Od=H([`off`,`all`,`one`]),kd=B({type:P(),title:P(),artist:P().optional(),album:P().optional(),imageUrl:P().optional()}),Ad=B({state:Dd,volumeLevel:F().min(0).max(100).nullable(),isMuted:I().nullable(),source:P(),availableSources:z(P()),currentMedia:kd.nullable(),positionMs:F().int().nonnegative().nullable(),durationMs:F().int().nonnegative().nullable(),shuffle:I().nullable(),repeat:Od.nullable(),lastChangedAt:F()}),jd={name:`media-player`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.MediaPlayer],methods:{play:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),next:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),previous:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),seek:K(B({deviceId:F().int().nonnegative(),positionMs:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setVolume:K(B({deviceId:F().int().nonnegative(),volumeLevel:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`}),setMute:K(B({deviceId:F().int().nonnegative(),muted:I()}),R(),{kind:`mutation`,auth:`admin`}),setShuffle:K(B({deviceId:F().int().nonnegative(),shuffle:I()}),R(),{kind:`mutation`,auth:`admin`}),setRepeat:K(B({deviceId:F().int().nonnegative(),repeat:Od}),R(),{kind:`mutation`,auth:`admin`}),selectSource:K(B({deviceId:F().int().nonnegative(),source:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),playMedia:K(B({deviceId:F().int().nonnegative(),mediaId:P().min(1),mediaType:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Ad,kind:`push`},runtimeState:Ad},Md=H([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),Nd=B({data:rs(),format:Md,width:F(),height:F(),timestamp:F()}),Pd=B({x:F(),y:F(),w:F(),h:F()});B({class:P(),originalClass:P(),score:F(),bbox:Pd});var Fd=B({data:os(Uint8Array),sampleRate:F(),channels:F(),timestamp:F(),deviceId:F().optional()}),Id=B({rms:F(),dbfs:F()}),Ld=B({className:P(),originalClass:P().optional(),score:F()}),Rd=B({bbox:Pd,pixelCount:F(),intensity:F()}),zd=B({detected:I(),regionCount:F(),regions:z(Rd).readonly(),rawRegions:z(Rd).readonly(),frameWidth:F(),frameHeight:F(),analysisMs:F()}),Bd={name:`motion-detection`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,exposesDeviceSettings:!0,methods:{analyze:K(B({deviceId:F(),frame:Nd.optional(),frameHandle:Ss.optional()}),zd,{kind:`mutation`}),removeCamera:K(B({deviceId:F()}),R(),{kind:`mutation`}),reset:K(R(),R(),{kind:`mutation`})},events:{onMotion:{data:B({deviceId:F(),detected:I(),regionCount:F()})}}};B({activeCameras:F(),throttledCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()});var Vd=B({detectionMode:H([`disabled`,`always-on`,`on-motion`]),configuredFps:F(),actualFps:F(),queueDepth:F(),avgInferenceTimeMs:F(),droppedFrames:F(),phase:H([`idle`,`watching`,`active`])}),Hd=Vd.extend({deviceId:F()}),Ud=H([`onnx`,`coreml`,`openvino`,`tflite`,`pt`,`gguf`]),Wd=H([`detector`,`cropper`,`classifier`,`refiner`,`audio-classifier`]),Gd=B({runtime:H([`node`,`python`]),backend:P(),format:Ud,device:P().optional()}),Kd=B({engine:Gd,devices:z(B({id:P(),label:P(),description:P().optional()})).readonly(),defaultDevice:P()}),qd=ts(()=>B({addonId:P(),addonName:P(),slot:Wd,inputClasses:z(P()).readonly(),outputClasses:z(P()).readonly(),enabled:I(),modelId:P(),children:z(qd).readonly(),group:P().optional(),settings:V(P(),L()).optional()})),Jd=ts(()=>B({addonId:P(),enabled:I(),modelId:P(),children:z(Jd).readonly(),settings:V(P(),L()).optional()})),Yd=B({id:P(),name:P(),createdAt:P(),updatedAt:P(),engine:Gd,steps:z(Jd).readonly()}),Xd=B({id:P(),name:P(),formats:V(P(),B({downloaded:I(),sizeMB:F()})),group:ac.optional(),legacy:I().optional()}),Zd=rs(),Qd=B({id:P(),name:P(),slot:Wd,inputClasses:z(P()).readonly(),outputClasses:z(P()).readonly(),childSlots:z(Wd).readonly(),models:z(Xd).readonly(),defaultModelId:P(),defaultModelIdByFormat:V(P(),P()).optional(),enabledByDefault:I().optional(),backfillIntoExistingOverrides:I().optional(),defaultConfidence:F(),group:P().optional(),configSchema:z(Zd).readonly().optional()}),$d=B({id:Wd,label:P(),priority:F(),parentSlot:Wd.nullable(),addons:z(Qd).readonly()}),ef=B({availableEngines:z(Kd).readonly(),selectedEngine:Gd,slots:z($d).readonly()}),tf=B({runtimeId:H([`onnx`,`openvino`,`coreml`,`edgetpu`]).nullable(),device:P().nullable(),state:H([`idle`,`installing`,`verifying`,`ready`,`failed`]),progress:F().optional(),error:P().optional(),nextRetryAt:F().optional(),configIssues:z(P()).optional()}),nf=ts(()=>B({addonId:P(),modelId:P().optional(),enabled:I().default(!0),children:z(nf).optional(),settings:V(P(),L()).optional(),jumpDeviceKey:P().optional()})),rf=B({addonId:P(),chosen:P(),running:P(),format:P()}),af=B({addonId:P(),kind:H([`unknown-addon`,`no-format-build`]),detail:P()}),of=B({ok:I(),issues:z(af).readonly(),substitutions:z(rf).readonly(),format:P()}),sf=B({filename:P(),stepIds:z(P()).readonly().optional()}),cf=B({base64:P(),filename:P()}),lf=B({filename:P(),sizeKb:F()}),uf=B({base64:P()}),df=B({id:P(),name:P(),description:P(),available:I(),rawLabels:z(P()).readonly().optional()}),ff=B({activeBackend:P(),availableBackends:z(df).readonly(),sampleRate:F(),chunkDurationMs:F()}),pf=B({filePath:P(),sizeMB:F(),durationMs:F()}),mf=B({success:I(),error:P().optional(),frame:rs().optional()}),hf=rs(),gf=rs(),_f=rs(),vf=rs(),yf=rs(),bf=rs(),xf={name:`pipeline-executor`,scope:`system`,mode:`singleton`,methods:{getAvailableEngines:K(R(),z(Gd)),getSelectedEngine:K(R(),Gd),getDefaultSteps:K(Gd,z(qd)),getEngineProvisioning:K(B({nodeId:P()}),tf),getVideoPipelineSteps:K(R(),V(P(),B({modelId:P(),settings:V(P(),L()).readonly()}))),setVideoPipelineSteps:K(B({steps:V(P(),B({modelId:P(),settings:V(P(),L()).readonly()}))}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),clearDeviceOverrides:K(B({nodeId:P()}),B({success:U(!0),clearedDevices:F()}),{kind:`mutation`,auth:`admin`}),getSchema:K(R(),ef),getGlobalSteps:K(R(),z(qd).readonly().nullable()),getGlobalPipelineConfig:K(R(),hf),getOrchestratorConfigSchema:K(R(),gf),validatePipeline:K(B({steps:z(nf)}),of),listTemplates:K(R(),z(Yd).readonly()),saveTemplate:K(B({name:P(),steps:z(Jd).readonly(),engine:Gd}),Yd,{kind:`mutation`}),updateTemplate:K(B({id:P(),name:P().optional(),steps:z(Jd).readonly().optional()}),Yd,{kind:`mutation`}),deleteTemplate:K(B({id:P()}),R(),{kind:`mutation`}),getCapabilities:K(R(),vf),getAddonModels:K(B({addonId:P()}),yf),downloadModel:K(B({addonId:P(),modelId:P(),format:Ud}),pf,{kind:`mutation`}),deleteModel:K(B({addonId:P(),modelId:P(),format:Ud}),B({success:U(!0)}),{kind:`mutation`}),runPipeline:K(B({engine:Gd.optional(),steps:z(nf).min(1),frame:Nd.optional(),frameHandle:Ss.optional(),imageBase64:P().optional(),image:os(Uint8Array).optional(),referenceImage:P().optional(),deviceId:F().optional(),sessionId:P().optional(),plane:H([`full`,`frame`]).optional(),deviceKey:P().optional()}),bf,{kind:`mutation`}),runPipelineBatch:K(B({engine:Gd.optional(),steps:z(nf).min(1),frames:z(Nd).min(1).max(255),deviceId:F().optional(),sessionId:P().optional(),frameId:F().int().nonnegative().optional(),deviceKey:P().optional()}),B({results:z(bf).readonly()}),{kind:`mutation`}),cacheFrameInPool:K(B({data:os(Uint8Array),width:F().int().positive(),height:F().int().positive(),format:H([`rgb`,`bgr`,`gray`])}),B({frameId:F(),width:F(),height:F()}),{kind:`mutation`}),inferCached:K(B({stepId:P(),frameId:F().int()}),V(P(),L()),{kind:`mutation`}),uncacheFrame:K(B({frameId:F().int()}),R(),{kind:`mutation`}),getEffectiveTuning:K(R(),B({batchMode:P(),windowMs:F(),maxBatchSize:F(),concurrency:F()})),listLoadedEngines:K(R(),z(B({engineKey:P(),engine:Gd,modelsLoaded:z(P()).readonly(),inUseByCameras:z(F()).readonly(),kind:H([`runtime`,`warm-override`,`device-pool`]),poolPid:F().nullable(),idleMs:F().nullable(),idleTtlMs:F().nullable()})).readonly()),spinEngine:K(B({engine:Gd}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),killEngine:K(B({engine:Gd,force:I().optional()}),B({success:I(),reason:P().optional()}),{kind:`mutation`,auth:`admin`}),listReferenceImages:K(R(),z(sf).readonly()),getReferenceImage:K(B({filename:P()}),cf.nullable()),getReferenceAudioFiles:K(R(),z(lf).readonly()),getReferenceAudio:K(B({filename:P()}),uf.nullable()),getAudioCapabilities:K(R(),ff),runAudioTest:K(B({addonId:P(),modelId:P(),filename:P().optional(),settings:V(P(),L()).optional()}),mf,{kind:`mutation`}),getDetectionConfigSchema:K(R(),_f)}},Sf=H([`polygon`,`tripwire`]),Cf=B({x:F(),y:F()}),wf=B({id:P(),name:P(),kind:Sf.default(`polygon`),polygon:z(Cf).readonly(),color:P().default(`#3b82f6`)}),Tf={name:`zones`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{listZones:K(B({deviceId:F()}),z(wf).readonly()),addZone:K(B({deviceId:F(),zone:wf}),R(),{kind:`mutation`,auth:`admin`}),removeZone:K(B({deviceId:F(),zoneId:P()}),R(),{kind:`mutation`,auth:`admin`}),updateZone:K(B({deviceId:F(),zone:wf}),R(),{kind:`mutation`,auth:`admin`})},runtimeState:B({zones:z(wf).readonly()})},Ef=B({x:F(),y:F(),w:F(),h:F()}),Df=B({bytes:os(Uint8Array).optional(),jpeg:P().optional(),width:F().int().positive(),height:F().int().positive(),tier:H([`native`,`ram-fullframe`]).optional()}),Of=B({bbox:Ef,className:P()}),kf=B({stepId:P(),className:P(),score:F(),bbox:Ef.optional(),embedding:P().optional(),label:P().optional(),alignedCropJpeg:P().optional()}),Af={min:0,max:6e4,default:3e4,step:500},jf={min:1,max:30,default:4,step:1},Mf={min:1,max:30,default:10,step:1},Nf={min:0,max:300,default:30,step:5},Pf={min:1,max:10,default:4,step:1},Ff=H([`onboard`,`analyzer`]),If=z(Ff),Lf=B({deviceId:F(),detected:I(),source:Ff.default(`analyzer`),regions:z(Rd).readonly().optional()}),Rf=To(`kind`,[B({kind:U(`local-broker`)}),B({kind:U(`remote-restream`),ownerNodeId:P(),ownerReachableHost:P().optional(),hubHostnameOverride:P().optional()})]).describe(`Per-camera frame-source mode for the runner (P2c)`),zf=B({deviceKey:P(),weight:F().positive().default(1),maxSessions:F().int().positive().nullable().default(null)}),Bf=B({deviceId:F(),detectionMode:H([`disabled`,`always-on`,`on-motion`]).default(`on-motion`),audioMode:H([`disabled`,`always-on`,`on-motion`]).default(`always-on`),motionCooldownMs:F().min(Af.min).default(Af.default),motionFps:F().min(jf.min).max(jf.max).default(jf.default),detectionFps:F().min(Mf.min).max(Mf.max).default(Mf.default),motionStreamId:P(),detectionStreamId:P(),motionSources:If.default([`analyzer`]),pipelineEnabled:I().default(!0),steps:z(nf).readonly().optional(),audio:B({modelId:P().optional(),enabled:I()}).nullable().optional(),zones:z(wf).readonly().default([]),onboardMotionDrivesAnalyzer:I().default(!0),occupancyRecheckEnabled:I().default(!1),occupancyRecheckSec:F().min(Nf.min).max(Nf.max).default(Nf.default),occupancyRecheckFrames:F().min(Pf.min).max(Pf.max).default(Pf.default),frameSource:Rf.default({kind:`local-broker`}),deviceKey:P().optional(),inferenceDevices:z(zf).readonly().optional()});jf.min,jf.max,jf.step,jf.default,Mf.min,Mf.max,Mf.step,Mf.default,Af.min,Af.max,Af.step,Af.default,Nf.min,Nf.max,Nf.step,Nf.default,Pf.min,Pf.max,Pf.step,Pf.default;var Vf=B({nodeId:P(),attachedCameras:F(),activeCameras:F(),avgInferenceFps:F(),avgInferenceTimeMs:F(),queueDepthTotal:F(),devices:z(B({deviceKey:P(),backend:P(),attachedCameras:F(),queueDepthTotal:F()})).default([]),hardware:B({hasGpu:I(),inferenceBackend:P().optional(),cpuCores:F().optional()})}),Hf=B({nodeId:P(),activeCameras:F(),throttledCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()}),Uf={name:`pipeline-runner`,scope:`system`,mode:`singleton`,methods:{attachCamera:K(Bf,B({success:U(!0)}),{kind:`mutation`}),detachCamera:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`}),reportMotion:K(Lf,B({success:U(!0)}),{kind:`mutation`}),getLocalLoad:K(R(),Vf),getLocalMetrics:K(R(),Hf),getCameraMetrics:K(B({deviceId:F()}),Vd.nullable()),getAllCameraMetrics:K(R(),z(Hd).readonly()),getLocalCameras:K(R(),z(F()).readonly()),getNativeCrop:K(B({handle:Ss,bbox:Ef,maxWidth:F().int().positive().optional(),encodeJpeg:I().optional()}),Df.nullable()),runDetailSubtree:K(B({deviceId:F(),frameHandle:Ss.optional(),cropJpeg:P().optional(),parent:Of,steps:z(P()).optional()}),B({details:z(kf)}).nullable(),{kind:`mutation`})}},Wf=B({detected:I(),lastDetectedAt:F().nullable(),autoClearAfterMs:F().nullable()}),Gf=B({deviceId:F(),detected:I(),timestamp:F(),source:Ff,regions:z(Rd).readonly().optional()}),Kf={name:`motion`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor],methods:{isDetected:K(B({deviceId:F()}),I())},events:{onMotionChanged:{data:Gf}},status:{schema:Wf,kind:`push`},runtimeState:Wf},qf=B({enabled:I(),lastChangedAt:F()}),Jf=qf.extend({lastFetchedAt:F()}),Yf={name:`motion-trigger`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Light,W.Siren,W.Switch],methods:{setMotionTrigger:K(B({deviceId:F().int().nonnegative(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onMotionTriggerChanged:{data:B({deviceId:F(),enabled:I(),lastChangedAt:F()})}},status:{schema:qf,kind:`command-driven`},runtimeState:Jf},Xf=B({x:F(),y:F()}),Zf=B({kind:U(`rect`),x:F(),y:F(),width:F(),height:F()}),Qf=B({kind:U(`polygon`),points:z(Xf)}),$f=B({kind:U(`grid`),gridWidth:F(),gridHeight:F(),cells:z(I())});To(`kind`,[Zf,Qf,$f,B({kind:U(`line`),points:z(Xf)})]);var ep=H([`rect`,`polygon`,`grid`,`line`]),tp=B({min:F(),max:F()}),np=B({width:F(),height:F()}),rp=B({id:F(),enabled:I(),shape:$f}),ip=B({enabled:I(),sensitivity:F(),regions:z(rp),lastFetchedAt:F()}),ap=B({maxRegions:F(),supportedShapes:z(ep),grid:np,sensitivity:B({min:F(),max:F(),step:F()})}),op=B({enabled:I().optional(),sensitivity:F().optional(),regions:z(rp).optional()}),sp={name:`motion-zones`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/motion-zones-grid`,tab:`motion`,label:`Motion Zones`}},methods:{getOptions:K(B({deviceId:F()}),ap),setZone:K(B({deviceId:F(),patch:op}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:ip,kind:`poll`},runtimeState:ip},cp=H([`person`,`vehicle`,`animal`,`face`,`package`,`other`]),lp=B({class:cp,timestamp:F(),confidence:F().min(0).max(1).optional()}),up=B({lastByClass:jo(cp,lp.nullable()),supportedClasses:z(cp).readonly(),enabled:I()}),dp=up.extend({lastFetchedAt:F()}),fp={name:`native-object-detection`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{setEnabled:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onDetected:{data:B({deviceId:F(),detection:lp})}},status:{schema:up,kind:`push`},runtimeState:dp},pp=H([`min`,`low`,`normal`,`high`]),mp=B({id:P().min(1),title:P().min(1),uri:Ha().optional(),destructive:I().optional()}),hp=B({image:I(),priority:I(),data:I(),actions:I(),recipients:I()}),gp=B({lastSentAt:F(),lastError:P().nullable(),queueDepth:F().int().nonnegative(),supports:hp}),_p=B({deviceId:F().int().nonnegative(),title:P().optional(),body:P().min(1),image:P().optional(),priority:pp.optional(),channel:P().optional(),recipients:z(P()).optional(),actions:z(mp).optional(),data:V(P(),L()).optional()}),vp=B({notificationId:P(),acceptedAt:F()}),yp={name:`notifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Notifier],methods:{send:K(_p,vp,{kind:`mutation`,auth:`admin`}),cancel:K(B({deviceId:F().int().nonnegative(),notificationId:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},events:{onSent:{data:B({deviceId:F(),notificationId:P(),success:I(),error:P().nullable(),acceptedAt:F()})}},status:{schema:gp,kind:`command-driven`},runtimeState:gp},bp=B({value:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional(),lastFetchedAt:F()}),xp={name:`numeric-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:bp,kind:`push`},runtimeState:bp},Sp=H([`normal`,`offline`,`on_batteries`]),Cp=F().int().min(4).max(200),wp=B({foodLevel:F().nullable(),food1:F().nullable(),food2:F().nullable(),lowFood:I(),batteryPower:F().min(0).max(100).nullable(),desiccantLeftDays:F().nullable(),feeding:I(),status:Sp.nullable(),error:P().nullable(),errorCode:F().nullable(),isDualHopper:I(),childLock:I(),indicatorLight:I(),feedSound:I(),volume:F(),lastFetchedAt:F()}),Tp={name:`pet-feeder`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.PetFeeder],methods:{feed:K(B({deviceId:F().int().nonnegative(),grams:Cp.optional(),hopper1:Cp.optional(),hopper2:Cp.optional()}),R(),{kind:`mutation`,auth:`admin`}),cancelFeed:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),resetDesiccant:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),markFoodReplenished:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),callPet:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),playSound:K(B({deviceId:F().int().nonnegative(),soundId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setChildLock:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setIndicatorLight:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setFeedSound:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`}),setVolume:K(B({deviceId:F().int().nonnegative(),level:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wp,kind:`poll`},runtimeState:wp},Ep=B({watts:F().optional(),kwhTotal:F().optional(),volts:F().optional(),amps:F().optional(),va:F().optional(),powerFactor:F().min(0).max(1).optional(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Dp={name:`power-meter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Ep,kind:`push`},runtimeState:Ep},Op=B({latitude:F().min(-90).max(90),longitude:F().min(-180).max(180),accuracyMeters:F().nonnegative()}),kp=B({state:P(),location:P().nullable(),gps:Op.nullable(),batteryPercent:F().min(0).max(100).nullable(),lastChangedAt:F()}),Ap={name:`presence`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Presence],methods:{},status:{schema:kp,kind:`push`},runtimeState:kp},jp=B({hpa:F(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),Mp={name:`pressure-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:jp,kind:`push`},runtimeState:jp},Np=To(`kind`,[Zf,Qf]),Pp=B({id:F(),enabled:I(),shape:Np}),Fp=B({enabled:I(),regions:z(Pp),lastFetchedAt:F()}),Ip=B({maxRegions:F(),supportedShapes:z(ep),polygonVertices:tp.optional()}),Lp=B({enabled:I().optional(),regions:z(Pp).optional()}),Rp={name:`privacy-mask`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/privacy-mask-grid`,tab:`image`,label:`Privacy Mask`}},methods:{getOptions:K(B({deviceId:F()}),Ip),setMask:K(B({deviceId:F(),patch:Lp}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Fp,kind:`poll`},runtimeState:Fp},zp=B({targetType:P().describe(`Vendor target string (people/vehicle/pet); empty = camera default`),stopDelaySeconds:F().int().min(0).max(300),disappearDelaySeconds:F().int().min(0).max(300)}),Bp=B({value:P(),label:P()}),Vp=B({enabled:I(),lastChangedAt:F(),currentSettings:zp.nullable(),supportedTargetTypes:z(Bp)}),Hp=Vp.extend({lastFetchedAt:F()}),Up={name:`ptz-autotrack`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-autotrack`,tab:`ptz`,topTab:!0,label:`Auto-Tracking`,order:5}},methods:{getStatus:K(B({deviceId:F()}),Vp),setEnabled:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`}),getSettings:K(B({deviceId:F()}),zp.nullable()),setSettings:K(B({deviceId:F(),settings:zp.partial()}),R(),{kind:`mutation`})},events:{onStatusChanged:{data:B({deviceId:F(),status:Vp})}},status:{schema:Vp,kind:`command-driven`},runtimeState:Hp},Wp=P(),Gp=B({embedding:z(F()),modelId:P(),condition:Wp,capturedAt:F(),thumbnailMediaId:P().optional()}),Kp=B({id:P(),label:P(),references:z(Gp),textPrompts:z(P()).optional(),referenceCount:F(),currentlyMatched:I()}),qp=To(`mode`,[B({mode:U(`similarity`),threshold:F().min(0).max(1),hysteresisCount:F().int().positive()}),B({mode:U(`llm`),prompt:P(),profileId:P().optional(),hysteresisCount:F().int().positive()})]),Jp=B({id:P(),label:P(),roi:Zf,enabled:I(),triggerMode:H([`periodic`,`on-motion`,`both`]),checkIntervalSec:F().optional(),check:qp,states:z(Kp),currentStateId:P().nullable(),lastCheckedAt:F().nullable(),lastConfidence:F().nullable(),currentCondition:Wp.nullable(),availability:H([`ok`,`unavailable`]),unavailableReason:P().nullable()}),Yp=B({monitors:z(Jp),lastFetchedAt:F()}),Xp={name:`scene-monitor`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/scene-monitor-editor`,tab:`scenes`,label:`Scenes`}},methods:{listScenes:K(B({deviceId:F()}),Yp),createScene:K(B({deviceId:F(),label:P(),roi:Zf,check:qp,triggerMode:H([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:F().optional()}),Jp,{kind:`mutation`,auth:`admin`}),updateScene:K(B({deviceId:F(),monitorId:P(),patch:B({label:P().optional(),roi:Zf.optional(),enabled:I().optional(),triggerMode:H([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:F().optional(),check:qp.optional()})}),R(),{kind:`mutation`,auth:`admin`}),deleteScene:K(B({deviceId:F(),monitorId:P()}),R(),{kind:`mutation`,auth:`admin`}),captureReference:K(B({deviceId:F(),monitorId:P(),stateId:P().optional(),label:P().optional(),condition:Wp.optional()}),B({stateId:P(),referenceCount:F()}),{kind:`mutation`,auth:`admin`}),deleteReference:K(B({deviceId:F(),monitorId:P(),stateId:P(),index:F()}),R(),{kind:`mutation`,auth:`admin`}),recheckNow:K(B({deviceId:F(),monitorId:P()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Yp,kind:`push`},runtimeState:Yp},Zp=B({isRunning:I(),lastRunAt:F(),lastRunSuccess:I().nullable(),lastError:P().nullable(),lastChangedAt:F()}),Qp={name:`script-runner`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Script],methods:{run:K(B({deviceId:F().int().nonnegative(),variables:V(P(),L()).optional()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:Zp,kind:`push`},runtimeState:Zp},$p=B({detected:I(),lastChangedAt:F()}),em={name:`smoke`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:$p,kind:`push`},runtimeState:$p},tm=H([`main`,`sub`,`ext`]),nm=B({width:F(),height:F(),codec:H([`h264`,`h265`]),framerate:F(),bitrate:F(),bitrateMode:H([`vbr`,`cbr`]).optional(),encoderProfile:H([`high`,`main`,`baseline`]).optional(),gop:F().optional(),audio:I().optional()}),rm=B({main:nm.optional(),sub:nm.optional(),ext:nm.optional(),lastFetchedAt:F()}),im=B({resolutions:z(B({width:F(),height:F()})),codecs:z(H([`h264`,`h265`])),framerates:z(F()),bitrates:z(F()),bitrateRange:ko([F(),F()]).optional(),supportsBitrateMode:I(),supportsEncoderProfile:I(),supportsGop:I(),gop:B({min:F(),max:F(),step:F()}).optional()}),am=B({main:im.optional(),sub:im.optional(),ext:im.optional()}),om=B({width:F().optional(),height:F().optional(),codec:H([`h264`,`h265`]).optional(),framerate:F().optional(),bitrate:F().optional(),bitrateMode:H([`vbr`,`cbr`]).optional(),encoderProfile:H([`high`,`main`,`baseline`]).optional(),gop:F().optional(),audio:I().optional()}),sm={name:`stream-params`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`stream-params`,tab:`streaming`}},methods:{getOptions:K(B({deviceId:F()}),am),setProfile:K(B({deviceId:F(),profile:tm,patch:om}),R(),{kind:`mutation`,auth:`admin`}),getConfigSchema:K(B({deviceId:F()}),L().nullable())},status:{schema:rm,kind:`poll`},runtimeState:rm},cm=B({on:I(),lastChangedAt:F()}),lm={name:`switch`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Switch,W.Siren,W.Light],methods:{setState:K(B({deviceId:F(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onStateChanged:{data:B({deviceId:F(),on:I(),lastChangedAt:F()})}},status:{schema:cm,kind:`command-driven`},runtimeState:cm,settings:{bindings:[{kind:`scalar`,statusPath:`on`,method:`setState`,valueArg:`on`,field:{label:`On`,kind:`boolean`}}]}},um=B({tampered:I(),lastChangedAt:F()}),dm={name:`tamper`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:um,kind:`push`},runtimeState:um},fm=B({celsius:F(),lastFetchedAt:F(),unit:P().optional(),precision:F().int().min(0).max(10).optional()}),pm={name:`temperature-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor,W.Thermostat],methods:{},status:{schema:fm,kind:`push`},runtimeState:fm},mm=B({currentVersion:P().nullable(),availableVersion:P().nullable(),updatable:I(),state:P().nullable(),inProgress:I()}),hm={name:`update`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Update],methods:{installUpdate:K(R(),R(),{kind:`mutation`,auth:`admin`})},status:{schema:mm,kind:`poll`},runtimeState:mm},gm=H([`idle`,`cleaning`,`paused`,`returning`,`docked`,`drying`,`error`]),_m=B({level:F().min(0).max(100).nullable(),status:H([`ok`,`low`,`full`]).nullable()}),vm=B({state:gm,batteryLevel:F().min(0).max(100).nullable(),fanSpeed:P().nullable(),availableFanSpeeds:z(P()),cleanWater:_m.nullable(),dirtyWater:_m.nullable(),detergent:_m.nullable(),dustBin:_m.nullable(),progressPercent:F().min(0).max(100).nullable(),errorCode:F().nullable(),errorLabel:P().nullable(),lastChangedAt:F()}),ym={name:`vacuum-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Vacuum],methods:{start:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),pause:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),returnToBase:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),locate:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setFanSpeed:K(B({deviceId:F().int().nonnegative(),speed:P().min(1)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:vm,kind:`push`},runtimeState:vm},bm=B({state:H([`open`,`opening`,`closing`,`closed`,`stopped`]),position:F().min(0).max(100).nullable(),lastChangedAt:F()}),xm={name:`valve`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Valve],methods:{open:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),close:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),stop:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`}),setPosition:K(B({deviceId:F().int().nonnegative(),position:F().min(0).max(100)}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:bm,kind:`push`},runtimeState:bm},Sm=B({detected:I(),lastChangedAt:F()}),Cm={name:`vibration`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Sensor],methods:{},status:{schema:Sm,kind:`push`},runtimeState:Sm},wm=B({currentTemp:F().nullable(),targetTemp:F().nullable(),operationMode:P().nullable(),availableModes:z(P()),away:I().nullable(),minTemp:F().nullable(),maxTemp:F().nullable(),lastChangedAt:F()}),Tm={name:`water-heater`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.WaterHeater],methods:{setTargetTemp:K(B({deviceId:F().int().nonnegative(),temp:F().finite()}),R(),{kind:`mutation`,auth:`admin`}),setOperationMode:K(B({deviceId:F().int().nonnegative(),mode:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),setAway:K(B({deviceId:F().int().nonnegative(),on:I()}),R(),{kind:`mutation`,auth:`admin`})},status:{schema:wm,kind:`push`},runtimeState:wm},Em=B({condition:P().nullable(),temperature:F().nullable(),temperatureUnit:P().nullable(),humidity:F().min(0).max(100).nullable(),pressure:F().nullable(),pressureUnit:P().nullable(),windSpeed:F().nullable(),windSpeedUnit:P().nullable(),windBearing:F().nullable(),lastFetchedAt:F()}),Dm={name:`weather`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Weather],methods:{},status:{schema:Em,kind:`push`},runtimeState:Em},Om=B({totalObjects:F().int().nonnegative(),byClass:V(P(),F().int().nonnegative())}),km=Om.extend({zoneId:P(),zoneName:P(),trackIds:z(P()).readonly()}),Am=B({id:P(),className:P(),bbox:B({x:F(),y:F(),w:F(),h:F()}),frameWidth:F().int().nonnegative(),frameHeight:F().int().nonnegative(),firstSeenAt:F().int(),becameStationaryAt:F().int(),lastConfirmedAt:F().int(),label:P().optional(),keyFrameMediaKey:P().optional()}),jm=B({ts:F().int(),frameWidth:F().int().nonnegative(),frameHeight:F().int().nonnegative(),zones:z(km).readonly(),frame:Om,unzoned:Om,stationaryObjects:z(Am).readonly().optional()}),Mm=H([`minute`,`5min`,`hour`]),Nm=B({from:F().int(),to:F().int(),resolution:Mm}),Pm=B({ts:F().int(),count:F().int().nonnegative()}),Fm={name:`zone-analytics`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCurrentSnapshot:K(B({deviceId:F()}),jm.nullable()),getZoneHistory:K(B({deviceId:F(),zoneId:P(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly()),getCameraHistory:K(B({deviceId:F(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly()),getUnzonedHistory:K(B({deviceId:F(),className:P().optional()}).extend(Nm.shape),z(Pm).readonly())},runtimeState:jm},Im=H([`include`,`exclude`]),Lm=B({id:P(),name:P().optional(),zoneIds:z(P()).min(1).readonly(),mode:Im,classFilter:z(P()).readonly().optional(),overlapThreshold:F().min(0).max(1).optional(),bboxInclusionPct:F().min(0).max(100).optional(),preferMask:I().optional(),enabled:I().default(!0)});z(Lm).readonly();var Rm=H([`motion`,`detection`,`package`]),zm={name:`zone-rules`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{listRules:K(B({deviceId:F(),stage:Rm}),z(Lm).readonly()),setRules:K(B({deviceId:F(),stage:Rm,rules:z(Lm).readonly()}),R(),{kind:`mutation`,auth:`admin`})},runtimeState:B({motion:z(Lm).readonly(),detection:z(Lm).readonly(),package:z(Lm).readonly()})},Bm={"°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 Vm(e){return Object.hasOwn(Bm,e)?Bm[e]:void 0}function Hm(e){return Vm(e)?.dimension}function Um(e,t){return e*t.factor+t.offset}function Wm(e,t){return(e-t.offset)/t.factor}function Gm(e,t,n){if(t===n)return e;let r=Vm(t);if(!r)return;let a=Vm(n);if(a&&r.dimension===a.dimension)return Wm(Um(e,r),a)}function Km(e,t){if(e===t)return!0;let n=Hm(e);return n===void 0?!1:n===Hm(t)}var qm=B({connected:I(),deviceCount:F(),error:P().optional()});B({externalId:P(),name:P(),type:P(),metadata:V(P(),L()).optional()});var Jm=B({stableId:P(),type:H(W),suggestedName:P(),prefilledConfig:V(P(),L()),sourceInfo:zu.optional()}),Ym=B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),parentDeviceId:F().nullable(),online:I(),features:z(P()),config:V(P(),L()),sourceInfo:zu.optional()}),Xm=B({status:H([`ok`,`error`]),labels:z(P()).optional(),error:P().optional()}),Zm=L(),Qm={name:`device-provider`,scope:`system`,mode:`collection`,methods:{start:K(R(),R(),{kind:`mutation`}),stop:K(R(),R(),{kind:`mutation`}),getStatus:K(R(),qm),getDevices:K(R(),z(B({id:P(),name:P(),type:P()}))),supportsDiscovery:K(B({}),I()),discoverDevices:K(B({params:V(P(),L()).optional()}),z(Jm),{kind:`mutation`,auth:`admin`}),getDiscoveryParamsSchema:K(B({}),Zm),getManualCreationType:K(B({}),B({deviceType:H(W).nullable()})),adoptDiscoveredDevice:K(B({candidate:Jm}),Ym,{kind:`mutation`,auth:`admin`}),supportsManualCreation:K(B({}),I()),getChildCreationSchema:K(B({type:H(W)}),Zm),createDevice:K(B({type:H(W),config:V(P(),L())}),Ym,{kind:`mutation`,auth:`admin`}),testCreationField:K(B({type:H(W),key:P(),value:L(),formValues:V(P(),L()).optional()}),Xm,{kind:`mutation`,auth:`admin`})}},$m={[W.Cover]:`cover`,[W.Valve]:`valve`,[W.Humidifier]:`humidifier`,[W.WaterHeater]:`water-heater`,[W.Camera]:`dummy`,[W.Hub]:`dummy`,[W.Switch]:`switch`,[W.Siren]:`switch`,[W.Light]:`light`,[W.Fan]:`fan`,[W.Sensor]:`sensor`,[W.Thermostat]:`thermostat`,[W.Climate]:`climate`,[W.Button]:`button`,[W.EventEmitter]:`dummy`,[W.Update]:`update`,[W.Generic]:`dummy`,[W.Notifier]:`dummy`,[W.Script]:`dummy`,[W.Automation]:`dummy`,[W.Lock]:`lock`,[W.MediaPlayer]:`media-player`,[W.AlarmPanel]:`alarm`,[W.Control]:`control`,[W.Presence]:`sensor`,[W.Weather]:`weather`,[W.Vacuum]:`vacuum`,[W.LawnMower]:`lawn-mower`,[W.Container]:`dummy`,[W.Image]:`image`,[W.PetFeeder]:`pet-feeder`};new Set(Object.values(W));function eh(e){let t=e;function n(e,n,r,a,o){let s=t[e]?.[n];if(!s)throw Error(`SystemProxy: api has no '${e}.${n}'`);let c=s;return r===`mutation`?c.mutate(a):r===`subscription`?c.subscribe(a,o):c.query(a)}return{addonPages:{listPages:e=>n(`addonPages`,`listPages`,`query`,e)},addons:{list:e=>n(`addons`,`list`,`query`,e),getLogs:e=>n(`addons`,`getLogs`,`query`,e),listPackages:e=>n(`addons`,`listPackages`,`query`,e),installPackage:e=>n(`addons`,`installPackage`,`mutation`,e),installFromWorkspace:e=>n(`addons`,`installFromWorkspace`,`mutation`,e),isWorkspaceAvailable:e=>n(`addons`,`isWorkspaceAvailable`,`query`,e),listWorkspacePackages:e=>n(`addons`,`listWorkspacePackages`,`query`,e),uninstallPackage:e=>n(`addons`,`uninstallPackage`,`mutation`,e),reloadPackages:e=>n(`addons`,`reloadPackages`,`mutation`,e),searchAvailable:e=>n(`addons`,`searchAvailable`,`query`,e),listUpdates:e=>n(`addons`,`listUpdates`,`query`,e),updatePackage:e=>n(`addons`,`updatePackage`,`mutation`,e),rollbackPackage:e=>n(`addons`,`rollbackPackage`,`mutation`,e),forceRefresh:e=>n(`addons`,`forceRefresh`,`mutation`,e),restartServer:e=>n(`addons`,`restartServer`,`mutation`,e),getLastRestart:e=>n(`addons`,`getLastRestart`,`query`,e),listFrameworkPackages:e=>n(`addons`,`listFrameworkPackages`,`query`,e),listCapabilityProviders:e=>n(`addons`,`listCapabilityProviders`,`query`,e),setCapabilityProviderEnabled:e=>n(`addons`,`setCapabilityProviderEnabled`,`mutation`,e),getVersions:e=>n(`addons`,`getVersions`,`query`,e),restartAddon:e=>n(`addons`,`restartAddon`,`mutation`,e),retryLoad:e=>n(`addons`,`retryLoad`,`mutation`,e),getAutoUpdateSettings:e=>n(`addons`,`getAutoUpdateSettings`,`query`,e),setAutoUpdateSettings:e=>n(`addons`,`setAutoUpdateSettings`,`mutation`,e),getAddonAutoUpdate:e=>n(`addons`,`getAddonAutoUpdate`,`query`,e),setAddonAutoUpdate:e=>n(`addons`,`setAddonAutoUpdate`,`mutation`,e),applyAutoUpdateToAll:e=>n(`addons`,`applyAutoUpdateToAll`,`mutation`,e),custom:e=>n(`addons`,`custom`,`mutation`,e),startJob:e=>n(`addons`,`startJob`,`mutation`,e),getJob:e=>n(`addons`,`getJob`,`query`,e),listJobs:e=>n(`addons`,`listJobs`,`query`,e),cancelJob:e=>n(`addons`,`cancelJob`,`mutation`,e),onAddonLogs:(e,t)=>n(`addons`,`onAddonLogs`,`subscription`,e,t)},addonSettings:{getGlobalSettings:e=>n(`addonSettings`,`getGlobalSettings`,`query`,e),updateGlobalSettings:e=>n(`addonSettings`,`updateGlobalSettings`,`mutation`,e)},addonWidgets:{listWidgets:e=>n(`addonWidgets`,`listWidgets`,`query`,e)},alerts:{emit:e=>n(`alerts`,`emit`,`mutation`,e),update:e=>n(`alerts`,`update`,`mutation`,e),list:e=>n(`alerts`,`list`,`query`,e),getUnreadCount:e=>n(`alerts`,`getUnreadCount`,`query`,e),markRead:e=>n(`alerts`,`markRead`,`mutation`,e),markAllRead:e=>n(`alerts`,`markAllRead`,`mutation`,e),dismiss:e=>n(`alerts`,`dismiss`,`mutation`,e)},audioAnalyzer:{analyseChunk:e=>n(`audioAnalyzer`,`analyseChunk`,`mutation`,e),classify:e=>n(`audioAnalyzer`,`classify`,`query`,e),isReady:e=>n(`audioAnalyzer`,`isReady`,`query`,e),dispose:e=>n(`audioAnalyzer`,`dispose`,`mutation`,e),reprobeAudioEngine:e=>n(`audioAnalyzer`,`reprobeAudioEngine`,`mutation`,e)},audioCodec:{listSupportedCodecs:e=>n(`audioCodec`,`listSupportedCodecs`,`query`,e),canHandle:e=>n(`audioCodec`,`canHandle`,`query`,e),createDecodeSession:e=>n(`audioCodec`,`createDecodeSession`,`mutation`,e),createEncodeSession:e=>n(`audioCodec`,`createEncodeSession`,`mutation`,e),closeSession:e=>n(`audioCodec`,`closeSession`,`mutation`,e),pushEncodedFrame:e=>n(`audioCodec`,`pushEncodedFrame`,`mutation`,e),pullPcm:e=>n(`audioCodec`,`pullPcm`,`query`,e),pushPcm:e=>n(`audioCodec`,`pushPcm`,`mutation`,e),pullEncoded:e=>n(`audioCodec`,`pullEncoded`,`query`,e),flushEncode:e=>n(`audioCodec`,`flushEncode`,`mutation`,e),listActiveSessions:e=>n(`audioCodec`,`listActiveSessions`,`query`,e)},backup:{listDestinations:e=>n(`backup`,`listDestinations`,`query`,e),trigger:e=>n(`backup`,`trigger`,`mutation`,e),list:e=>n(`backup`,`list`,`query`,e),listLocations:e=>n(`backup`,`listLocations`,`query`,e),getEntries:e=>n(`backup`,`getEntries`,`query`,e),restore:e=>n(`backup`,`restore`,`mutation`,e),delete:e=>n(`backup`,`delete`,`mutation`,e),listArchives:e=>n(`backup`,`listArchives`,`query`,e),upsertDestinationPolicy:e=>n(`backup`,`upsertDestinationPolicy`,`mutation`,e),previewSchedule:e=>n(`backup`,`previewSchedule`,`query`,e)},broker:{list:e=>n(`broker`,`list`,`query`,e),get:e=>n(`broker`,`get`,`query`,e),listProviders:e=>n(`broker`,`listProviders`,`query`,e),add:e=>n(`broker`,`add`,`mutation`,e),remove:e=>n(`broker`,`remove`,`mutation`,e),testConnection:e=>n(`broker`,`testConnection`,`mutation`,e),getSettings:e=>n(`broker`,`getSettings`,`query`,e),setSettings:e=>n(`broker`,`setSettings`,`mutation`,e),getBrokerConfig:e=>n(`broker`,`getBrokerConfig`,`query`,e),getSettingsSchema:e=>n(`broker`,`getSettingsSchema`,`query`,e),testSettings:e=>n(`broker`,`testSettings`,`mutation`,e),publish:e=>n(`broker`,`publish`,`mutation`,e),subscribe:e=>n(`broker`,`subscribe`,`mutation`,e),unsubscribe:e=>n(`broker`,`unsubscribe`,`mutation`,e),getState:e=>n(`broker`,`getState`,`query`,e),getStatus:e=>n(`broker`,`getStatus`,`query`,e)},decoder:{supportsCodec:e=>n(`decoder`,`supportsCodec`,`query`,e),getInfo:e=>n(`decoder`,`getInfo`,`query`,e),createSession:e=>n(`decoder`,`createSession`,`query`,e),destroySession:e=>n(`decoder`,`destroySession`,`query`,e),pushPacket:e=>n(`decoder`,`pushPacket`,`query`,e),openStream:e=>n(`decoder`,`openStream`,`query`,e),pullFrames:e=>n(`decoder`,`pullFrames`,`query`,e),pullHandles:e=>n(`decoder`,`pullHandles`,`query`,e),getFrame:e=>n(`decoder`,`getFrame`,`query`,e),getShmStats:e=>n(`decoder`,`getShmStats`,`query`,e),updateConfig:e=>n(`decoder`,`updateConfig`,`query`,e),getStats:e=>n(`decoder`,`getStats`,`query`,e),listActiveSessions:e=>n(`decoder`,`listActiveSessions`,`query`,e),reprobeHwaccel:e=>n(`decoder`,`reprobeHwaccel`,`mutation`,e)},deviceAdoption:{listCandidateFilters:e=>n(`deviceAdoption`,`listCandidateFilters`,`query`,e),listCandidates:e=>n(`deviceAdoption`,`listCandidates`,`query`,e),getCandidate:e=>n(`deviceAdoption`,`getCandidate`,`query`,e),refresh:e=>n(`deviceAdoption`,`refresh`,`mutation`,e),adopt:e=>n(`deviceAdoption`,`adopt`,`mutation`,e),release:e=>n(`deviceAdoption`,`release`,`mutation`,e),resync:e=>n(`deviceAdoption`,`resync`,`mutation`,e)},deviceExport:{getStatus:e=>n(`deviceExport`,`getStatus`,`query`,e),listSupportedDeviceKinds:e=>n(`deviceExport`,`listSupportedDeviceKinds`,`query`,e),listExposedDevices:e=>n(`deviceExport`,`listExposedDevices`,`query`,e),exposeDevice:e=>n(`deviceExport`,`exposeDevice`,`mutation`,e),unexposeDevice:e=>n(`deviceExport`,`unexposeDevice`,`mutation`,e)},deviceManager:{allocateDeviceId:e=>n(`deviceManager`,`allocateDeviceId`,`mutation`,e),registerDevice:e=>n(`deviceManager`,`registerDevice`,`mutation`,e),removeDevice:e=>n(`deviceManager`,`removeDevice`,`mutation`,e),persistConfig:e=>n(`deviceManager`,`persistConfig`,`mutation`,e),getRoleDisplayDefaults:e=>n(`deviceManager`,`getRoleDisplayDefaults`,`query`,e),setRoleDisplayDefaults:e=>n(`deviceManager`,`setRoleDisplayDefaults`,`mutation`,e),listLocations:e=>n(`deviceManager`,`listLocations`,`query`,e),addLocation:e=>n(`deviceManager`,`addLocation`,`mutation`,e),removeLocation:e=>n(`deviceManager`,`removeLocation`,`mutation`,e),listPersistedByAddon:e=>n(`deviceManager`,`listPersistedByAddon`,`query`,e),listAll:e=>n(`deviceManager`,`listAll`,`query`,e),getChildren:e=>n(`deviceManager`,`getChildren`,`query`,e),removeByIntegration:e=>n(`deviceManager`,`removeByIntegration`,`mutation`,e),listWrappersForCap:e=>n(`deviceManager`,`listWrappersForCap`,`query`,e),listBindableCapsForDeviceType:e=>n(`deviceManager`,`listBindableCapsForDeviceType`,`query`,e),discoverDevices:e=>n(`deviceManager`,`discoverDevices`,`mutation`,e),adoptDevice:e=>n(`deviceManager`,`adoptDevice`,`mutation`,e),getCreationSchema:e=>n(`deviceManager`,`getCreationSchema`,`query`,e),createDevice:e=>n(`deviceManager`,`createDevice`,`mutation`,e),testCreationField:e=>n(`deviceManager`,`testCreationField`,`mutation`,e),adoptionListCandidateFilters:e=>n(`deviceManager`,`adoptionListCandidateFilters`,`query`,e),adoptionListCandidates:e=>n(`deviceManager`,`adoptionListCandidates`,`query`,e),adoptionRefresh:e=>n(`deviceManager`,`adoptionRefresh`,`mutation`,e),adoptionAdopt:e=>n(`deviceManager`,`adoptionAdopt`,`mutation`,e),adoptionRelease:e=>n(`deviceManager`,`adoptionRelease`,`mutation`,e),adoptionResync:e=>n(`deviceManager`,`adoptionResync`,`mutation`,e),discoveryProviders:e=>n(`deviceManager`,`discoveryProviders`,`query`,e),discoverAllProviders:e=>n(`deviceManager`,`discoverAllProviders`,`mutation`,e),discoverProvider:e=>n(`deviceManager`,`discoverProvider`,`mutation`,e),providerCreationType:e=>n(`deviceManager`,`providerCreationType`,`query`,e),providerDiscoveryParamsSchema:e=>n(`deviceManager`,`providerDiscoveryParamsSchema`,`query`,e)},deviceProvider:{start:e=>n(`deviceProvider`,`start`,`mutation`,e),stop:e=>n(`deviceProvider`,`stop`,`mutation`,e),getStatus:e=>n(`deviceProvider`,`getStatus`,`query`,e),getDevices:e=>n(`deviceProvider`,`getDevices`,`query`,e),supportsDiscovery:e=>n(`deviceProvider`,`supportsDiscovery`,`query`,e),discoverDevices:e=>n(`deviceProvider`,`discoverDevices`,`mutation`,e),getDiscoveryParamsSchema:e=>n(`deviceProvider`,`getDiscoveryParamsSchema`,`query`,e),getManualCreationType:e=>n(`deviceProvider`,`getManualCreationType`,`query`,e),adoptDiscoveredDevice:e=>n(`deviceProvider`,`adoptDiscoveredDevice`,`mutation`,e),supportsManualCreation:e=>n(`deviceProvider`,`supportsManualCreation`,`query`,e),getChildCreationSchema:e=>n(`deviceProvider`,`getChildCreationSchema`,`query`,e),createDevice:e=>n(`deviceProvider`,`createDevice`,`mutation`,e),testCreationField:e=>n(`deviceProvider`,`testCreationField`,`mutation`,e)},deviceState:{getAllSnapshots:e=>n(`deviceState`,`getAllSnapshots`,`query`,e)},faceGallery:{listIdentities:e=>n(`faceGallery`,`listIdentities`,`query`,e),createIdentity:e=>n(`faceGallery`,`createIdentity`,`mutation`,e),renameIdentity:e=>n(`faceGallery`,`renameIdentity`,`mutation`,e),deleteIdentity:e=>n(`faceGallery`,`deleteIdentity`,`mutation`,e),listIdentitySamples:e=>n(`faceGallery`,`listIdentitySamples`,`query`,e),removeSample:e=>n(`faceGallery`,`removeSample`,`mutation`,e),listRecentFaces:e=>n(`faceGallery`,`listRecentFaces`,`query`,e),getFaceMedia:e=>n(`faceGallery`,`getFaceMedia`,`query`,e),assignFace:e=>n(`faceGallery`,`assignFace`,`mutation`,e),unassignFace:e=>n(`faceGallery`,`unassignFace`,`mutation`,e),deleteFace:e=>n(`faceGallery`,`deleteFace`,`mutation`,e),assignFaces:e=>n(`faceGallery`,`assignFaces`,`mutation`,e),unassignFaces:e=>n(`faceGallery`,`unassignFaces`,`mutation`,e),suggestFaceClusters:e=>n(`faceGallery`,`suggestFaceClusters`,`query`,e)},integrations:{list:e=>n(`integrations`,`list`,`query`,e),get:e=>n(`integrations`,`get`,`query`,e),getByAddonId:e=>n(`integrations`,`getByAddonId`,`query`,e),create:e=>n(`integrations`,`create`,`mutation`,e),update:e=>n(`integrations`,`update`,`mutation`,e),delete:e=>n(`integrations`,`delete`,`mutation`,e),getSettings:e=>n(`integrations`,`getSettings`,`query`,e),setSettings:e=>n(`integrations`,`setSettings`,`mutation`,e),getAvailableTypes:e=>n(`integrations`,`getAvailableTypes`,`query`,e),testConnection:e=>n(`integrations`,`testConnection`,`mutation`,e)},llm:{generate:e=>n(`llm`,`generate`,`mutation`,e),generateVision:e=>n(`llm`,`generateVision`,`mutation`,e),listProfileKinds:e=>n(`llm`,`listProfileKinds`,`query`,e),listProfiles:e=>n(`llm`,`listProfiles`,`query`,e),upsertProfile:e=>n(`llm`,`upsertProfile`,`mutation`,e),deleteProfile:e=>n(`llm`,`deleteProfile`,`mutation`,e),testProfile:e=>n(`llm`,`testProfile`,`mutation`,e),listModels:e=>n(`llm`,`listModels`,`query`,e),getDefaults:e=>n(`llm`,`getDefaults`,`query`,e),setDefault:e=>n(`llm`,`setDefault`,`mutation`,e),getUsage:e=>n(`llm`,`getUsage`,`query`,e),listModelCatalog:e=>n(`llm`,`listModelCatalog`,`query`,e),listRuntimeNodes:e=>n(`llm`,`listRuntimeNodes`,`query`,e),listNodeModels:e=>n(`llm`,`listNodeModels`,`query`,e),installModel:e=>n(`llm`,`installModel`,`mutation`,e),deleteModel:e=>n(`llm`,`deleteModel`,`mutation`,e),getRuntimeStatus:e=>n(`llm`,`getRuntimeStatus`,`query`,e),startRuntime:e=>n(`llm`,`startRuntime`,`mutation`,e),stopRuntime:e=>n(`llm`,`stopRuntime`,`mutation`,e)},localNetwork:{list:e=>n(`localNetwork`,`list`,`query`,e),getPreferred:e=>n(`localNetwork`,`getPreferred`,`query`,e),getConnectionEndpoints:e=>n(`localNetwork`,`getConnectionEndpoints`,`query`,e),getAllowedAddresses:e=>n(`localNetwork`,`getAllowedAddresses`,`query`,e),setAllowedAddresses:e=>n(`localNetwork`,`setAllowedAddresses`,`mutation`,e),resetAllowlistToBestMatch:e=>n(`localNetwork`,`resetAllowlistToBestMatch`,`mutation`,e)},meshNetwork:{getStatus:e=>n(`meshNetwork`,`getStatus`,`query`,e),join:e=>n(`meshNetwork`,`join`,`mutation`,e),startLogin:e=>n(`meshNetwork`,`startLogin`,`mutation`,e),leave:e=>n(`meshNetwork`,`leave`,`mutation`,e),logout:e=>n(`meshNetwork`,`logout`,`mutation`,e),listPeers:e=>n(`meshNetwork`,`listPeers`,`query`,e),testConnection:e=>n(`meshNetwork`,`testConnection`,`mutation`,e)},metricsProvider:{collectSnapshot:e=>n(`metricsProvider`,`collectSnapshot`,`query`,e),getCached:e=>n(`metricsProvider`,`getCached`,`query`,e),getCurrent:e=>n(`metricsProvider`,`getCurrent`,`query`,e),getDiskSpace:e=>n(`metricsProvider`,`getDiskSpace`,`query`,e),getGpuInfo:e=>n(`metricsProvider`,`getGpuInfo`,`query`,e),getCpuTemperature:e=>n(`metricsProvider`,`getCpuTemperature`,`query`,e),getProcessStats:e=>n(`metricsProvider`,`getProcessStats`,`query`,e),listAddonInstances:e=>n(`metricsProvider`,`listAddonInstances`,`query`,e),getAddonStats:e=>n(`metricsProvider`,`getAddonStats`,`query`,e),listNodeProcesses:e=>n(`metricsProvider`,`listNodeProcesses`,`query`,e),killProcess:e=>n(`metricsProvider`,`killProcess`,`mutation`,e),dumpHeapSnapshot:e=>n(`metricsProvider`,`dumpHeapSnapshot`,`mutation`,e)},mqttBroker:{listBrokers:e=>n(`mqttBroker`,`listBrokers`,`query`,e),getBrokerConfig:e=>n(`mqttBroker`,`getBrokerConfig`,`query`,e),addBroker:e=>n(`mqttBroker`,`addBroker`,`mutation`,e),removeBroker:e=>n(`mqttBroker`,`removeBroker`,`mutation`,e),testConnection:e=>n(`mqttBroker`,`testConnection`,`mutation`,e),startEmbeddedBroker:e=>n(`mqttBroker`,`startEmbeddedBroker`,`mutation`,e),stopEmbeddedBroker:e=>n(`mqttBroker`,`stopEmbeddedBroker`,`mutation`,e),getStatus:e=>n(`mqttBroker`,`getStatus`,`query`,e)},networkAccess:{start:e=>n(`networkAccess`,`start`,`mutation`,e),stop:e=>n(`networkAccess`,`stop`,`mutation`,e),getEndpoint:e=>n(`networkAccess`,`getEndpoint`,`query`,e),getStatus:e=>n(`networkAccess`,`getStatus`,`query`,e),listEndpoints:e=>n(`networkAccess`,`listEndpoints`,`query`,e)},networkQuality:{getAllStats:e=>n(`networkQuality`,`getAllStats`,`query`,e)},nodes:{topology:e=>n(`nodes`,`topology`,`query`,e),deployAddon:e=>n(`nodes`,`deployAddon`,`mutation`,e),undeployAddon:e=>n(`nodes`,`undeployAddon`,`mutation`,e),restartAddon:e=>n(`nodes`,`restartAddon`,`mutation`,e),restartProcess:e=>n(`nodes`,`restartProcess`,`mutation`,e),restartNode:e=>n(`nodes`,`restartNode`,`mutation`,e),shutdownNode:e=>n(`nodes`,`shutdownNode`,`mutation`,e),renameNode:e=>n(`nodes`,`renameNode`,`mutation`,e),clusterAddonStatus:e=>n(`nodes`,`clusterAddonStatus`,`query`,e),getCapUsageGraph:e=>n(`nodes`,`getCapUsageGraph`,`query`,e),getNodeAddons:e=>n(`nodes`,`getNodeAddons`,`query`,e),setProcessLogLevel:e=>n(`nodes`,`setProcessLogLevel`,`mutation`,e),executeQuery:e=>n(`nodes`,`executeQuery`,`mutation`,e)},notificationOutput:{listTargetKinds:e=>n(`notificationOutput`,`listTargetKinds`,`query`,e),listTargets:e=>n(`notificationOutput`,`listTargets`,`query`,e),discoverTargets:e=>n(`notificationOutput`,`discoverTargets`,`query`,e),send:e=>n(`notificationOutput`,`send`,`mutation`,e),testTarget:e=>n(`notificationOutput`,`testTarget`,`mutation`,e),upsertTarget:e=>n(`notificationOutput`,`upsertTarget`,`mutation`,e),deleteTarget:e=>n(`notificationOutput`,`deleteTarget`,`mutation`,e),setTargetEnabled:e=>n(`notificationOutput`,`setTargetEnabled`,`mutation`,e)},pipelineExecutor:{getAvailableEngines:e=>n(`pipelineExecutor`,`getAvailableEngines`,`query`,e),getSelectedEngine:e=>n(`pipelineExecutor`,`getSelectedEngine`,`query`,e),getDefaultSteps:e=>n(`pipelineExecutor`,`getDefaultSteps`,`query`,e),getEngineProvisioning:e=>n(`pipelineExecutor`,`getEngineProvisioning`,`query`,e),getVideoPipelineSteps:e=>n(`pipelineExecutor`,`getVideoPipelineSteps`,`query`,e),setVideoPipelineSteps:e=>n(`pipelineExecutor`,`setVideoPipelineSteps`,`mutation`,e),clearDeviceOverrides:e=>n(`pipelineExecutor`,`clearDeviceOverrides`,`mutation`,e),getSchema:e=>n(`pipelineExecutor`,`getSchema`,`query`,e),getGlobalSteps:e=>n(`pipelineExecutor`,`getGlobalSteps`,`query`,e),getGlobalPipelineConfig:e=>n(`pipelineExecutor`,`getGlobalPipelineConfig`,`query`,e),getOrchestratorConfigSchema:e=>n(`pipelineExecutor`,`getOrchestratorConfigSchema`,`query`,e),validatePipeline:e=>n(`pipelineExecutor`,`validatePipeline`,`query`,e),listTemplates:e=>n(`pipelineExecutor`,`listTemplates`,`query`,e),saveTemplate:e=>n(`pipelineExecutor`,`saveTemplate`,`mutation`,e),updateTemplate:e=>n(`pipelineExecutor`,`updateTemplate`,`mutation`,e),deleteTemplate:e=>n(`pipelineExecutor`,`deleteTemplate`,`mutation`,e),getCapabilities:e=>n(`pipelineExecutor`,`getCapabilities`,`query`,e),getAddonModels:e=>n(`pipelineExecutor`,`getAddonModels`,`query`,e),downloadModel:e=>n(`pipelineExecutor`,`downloadModel`,`mutation`,e),deleteModel:e=>n(`pipelineExecutor`,`deleteModel`,`mutation`,e),cacheFrameInPool:e=>n(`pipelineExecutor`,`cacheFrameInPool`,`mutation`,e),inferCached:e=>n(`pipelineExecutor`,`inferCached`,`mutation`,e),uncacheFrame:e=>n(`pipelineExecutor`,`uncacheFrame`,`mutation`,e),getEffectiveTuning:e=>n(`pipelineExecutor`,`getEffectiveTuning`,`query`,e),listLoadedEngines:e=>n(`pipelineExecutor`,`listLoadedEngines`,`query`,e),spinEngine:e=>n(`pipelineExecutor`,`spinEngine`,`mutation`,e),killEngine:e=>n(`pipelineExecutor`,`killEngine`,`mutation`,e),listReferenceImages:e=>n(`pipelineExecutor`,`listReferenceImages`,`query`,e),getReferenceImage:e=>n(`pipelineExecutor`,`getReferenceImage`,`query`,e),getReferenceAudioFiles:e=>n(`pipelineExecutor`,`getReferenceAudioFiles`,`query`,e),getReferenceAudio:e=>n(`pipelineExecutor`,`getReferenceAudio`,`query`,e),getAudioCapabilities:e=>n(`pipelineExecutor`,`getAudioCapabilities`,`query`,e),runAudioTest:e=>n(`pipelineExecutor`,`runAudioTest`,`mutation`,e),getDetectionConfigSchema:e=>n(`pipelineExecutor`,`getDetectionConfigSchema`,`query`,e)},pipelineOrchestrator:{rebalance:e=>n(`pipelineOrchestrator`,`rebalance`,`mutation`,e),getPipelineAssignments:e=>n(`pipelineOrchestrator`,`getPipelineAssignments`,`query`,e),getAgentLoad:e=>n(`pipelineOrchestrator`,`getAgentLoad`,`query`,e),getGlobalMetrics:e=>n(`pipelineOrchestrator`,`getGlobalMetrics`,`query`,e),getCapabilityBindings:e=>n(`pipelineOrchestrator`,`getCapabilityBindings`,`query`,e),setCapabilityBinding:e=>n(`pipelineOrchestrator`,`setCapabilityBinding`,`mutation`,e),getIngestOwner:e=>n(`pipelineOrchestrator`,`getIngestOwner`,`query`,e),getAudioNodeLoad:e=>n(`pipelineOrchestrator`,`getAudioNodeLoad`,`query`,e),getAgentSettings:e=>n(`pipelineOrchestrator`,`getAgentSettings`,`query`,e),listAgentSettings:e=>n(`pipelineOrchestrator`,`listAgentSettings`,`query`,e),removeAgentSettings:e=>n(`pipelineOrchestrator`,`removeAgentSettings`,`mutation`,e),setAgentMaxCameras:e=>n(`pipelineOrchestrator`,`setAgentMaxCameras`,`mutation`,e),setAgentDetectWeight:e=>n(`pipelineOrchestrator`,`setAgentDetectWeight`,`mutation`,e),setAgentCapabilities:e=>n(`pipelineOrchestrator`,`setAgentCapabilities`,`mutation`,e),setAgentReachableHost:e=>n(`pipelineOrchestrator`,`setAgentReachableHost`,`mutation`,e),setAgentInferenceDevices:e=>n(`pipelineOrchestrator`,`setAgentInferenceDevices`,`mutation`,e),getNodeInferenceDevices:e=>n(`pipelineOrchestrator`,`getNodeInferenceDevices`,`query`,e),resetNodePipelineDefaults:e=>n(`pipelineOrchestrator`,`resetNodePipelineDefaults`,`mutation`,e),getCameraStatuses:e=>n(`pipelineOrchestrator`,`getCameraStatuses`,`query`,e),listTemplates:e=>n(`pipelineOrchestrator`,`listTemplates`,`query`,e),saveTemplate:e=>n(`pipelineOrchestrator`,`saveTemplate`,`mutation`,e),updateTemplate:e=>n(`pipelineOrchestrator`,`updateTemplate`,`mutation`,e),deleteTemplate:e=>n(`pipelineOrchestrator`,`deleteTemplate`,`mutation`,e)},pipelineRunner:{attachCamera:e=>n(`pipelineRunner`,`attachCamera`,`mutation`,e),reportMotion:e=>n(`pipelineRunner`,`reportMotion`,`mutation`,e),getLocalLoad:e=>n(`pipelineRunner`,`getLocalLoad`,`query`,e),getLocalMetrics:e=>n(`pipelineRunner`,`getLocalMetrics`,`query`,e),getAllCameraMetrics:e=>n(`pipelineRunner`,`getAllCameraMetrics`,`query`,e),getLocalCameras:e=>n(`pipelineRunner`,`getLocalCameras`,`query`,e),getNativeCrop:e=>n(`pipelineRunner`,`getNativeCrop`,`query`,e)},plateGallery:{getPlateMedia:e=>n(`plateGallery`,`getPlateMedia`,`query`,e),searchPlates:e=>n(`plateGallery`,`searchPlates`,`query`,e),suggestPlateClusters:e=>n(`plateGallery`,`suggestPlateClusters`,`query`,e),correctPlateText:e=>n(`plateGallery`,`correctPlateText`,`mutation`,e),deletePlate:e=>n(`plateGallery`,`deletePlate`,`mutation`,e),listVehicles:e=>n(`plateGallery`,`listVehicles`,`query`,e),createVehicle:e=>n(`plateGallery`,`createVehicle`,`mutation`,e),renameVehicle:e=>n(`plateGallery`,`renameVehicle`,`mutation`,e),deleteVehicle:e=>n(`plateGallery`,`deleteVehicle`,`mutation`,e),listVehicleSamples:e=>n(`plateGallery`,`listVehicleSamples`,`query`,e),removeVehicleSample:e=>n(`plateGallery`,`removeVehicleSample`,`mutation`,e),assignPlate:e=>n(`plateGallery`,`assignPlate`,`mutation`,e),unassignPlate:e=>n(`plateGallery`,`unassignPlate`,`mutation`,e),assignPlates:e=>n(`plateGallery`,`assignPlates`,`mutation`,e),unassignPlates:e=>n(`plateGallery`,`unassignPlates`,`mutation`,e)},recording:{getStorageUsage:e=>n(`recording`,`getStorageUsage`,`query`,e),listOpsLog:e=>n(`recording`,`listOpsLog`,`query`,e)},recordingExport:{getExport:e=>n(`recordingExport`,`getExport`,`query`,e),cancelExport:e=>n(`recordingExport`,`cancelExport`,`mutation`,e),deleteExport:e=>n(`recordingExport`,`deleteExport`,`mutation`,e),getDownloadUrl:e=>n(`recordingExport`,`getDownloadUrl`,`query`,e)},serverManagement:{getServerPackageStatus:e=>n(`serverManagement`,`getServerPackageStatus`,`query`,e),checkServerUpdate:e=>n(`serverManagement`,`checkServerUpdate`,`mutation`,e),applyServerUpdate:e=>n(`serverManagement`,`applyServerUpdate`,`mutation`,e),rollbackServerUpdate:e=>n(`serverManagement`,`rollbackServerUpdate`,`mutation`,e),restartServer:e=>n(`serverManagement`,`restartServer`,`mutation`,e)},settingsStore:{get:e=>n(`settingsStore`,`get`,`query`,e),set:e=>n(`settingsStore`,`set`,`mutation`,e),query:e=>n(`settingsStore`,`query`,`query`,e),insert:e=>n(`settingsStore`,`insert`,`mutation`,e),update:e=>n(`settingsStore`,`update`,`mutation`,e),delete:e=>n(`settingsStore`,`delete`,`mutation`,e),count:e=>n(`settingsStore`,`count`,`query`,e),histogram:e=>n(`settingsStore`,`histogram`,`query`,e),isEmpty:e=>n(`settingsStore`,`isEmpty`,`query`,e),declareCollection:e=>n(`settingsStore`,`declareCollection`,`mutation`,e)},storage:{resolve:e=>n(`storage`,`resolve`,`query`,e),write:e=>n(`storage`,`write`,`mutation`,e),read:e=>n(`storage`,`read`,`query`,e),exists:e=>n(`storage`,`exists`,`query`,e),list:e=>n(`storage`,`list`,`query`,e),delete:e=>n(`storage`,`delete`,`mutation`,e),getAvailableSpace:e=>n(`storage`,`getAvailableSpace`,`query`,e),beginUpload:e=>n(`storage`,`beginUpload`,`mutation`,e),writeChunk:e=>n(`storage`,`writeChunk`,`mutation`,e),finalizeUpload:e=>n(`storage`,`finalizeUpload`,`mutation`,e),abortUpload:e=>n(`storage`,`abortUpload`,`mutation`,e),beginDownload:e=>n(`storage`,`beginDownload`,`mutation`,e),readChunk:e=>n(`storage`,`readChunk`,`query`,e),endDownload:e=>n(`storage`,`endDownload`,`mutation`,e),listLocations:e=>n(`storage`,`listLocations`,`query`,e),getDefaultLocation:e=>n(`storage`,`getDefaultLocation`,`query`,e),listLocationDeclarations:e=>n(`storage`,`listLocationDeclarations`,`query`,e),upsertLocation:e=>n(`storage`,`upsertLocation`,`mutation`,e),deleteLocation:e=>n(`storage`,`deleteLocation`,`mutation`,e),testLocation:e=>n(`storage`,`testLocation`,`query`,e),listProviders:e=>n(`storage`,`listProviders`,`query`,e),testConfig:e=>n(`storage`,`testConfig`,`query`,e)},streamBroker:{listAllCameraStreams:e=>n(`streamBroker`,`listAllCameraStreams`,`query`,e),listAllProfileSlots:e=>n(`streamBroker`,`listAllProfileSlots`,`query`,e),getBrokerStats:e=>n(`streamBroker`,`getBrokerStats`,`query`,e),probeStream:e=>n(`streamBroker`,`probeStream`,`mutation`,e),listClients:e=>n(`streamBroker`,`listClients`,`query`,e),killClient:e=>n(`streamBroker`,`killClient`,`mutation`,e),getStreamUrl:e=>n(`streamBroker`,`getStreamUrl`,`query`,e),getStreamWithCodec:e=>n(`streamBroker`,`getStreamWithCodec`,`mutation`,e),releaseStreamWithCodec:e=>n(`streamBroker`,`releaseStreamWithCodec`,`mutation`,e),subscribeAudioChunks:e=>n(`streamBroker`,`subscribeAudioChunks`,`mutation`,e),pullAudioChunks:e=>n(`streamBroker`,`pullAudioChunks`,`query`,e),unsubscribeAudioChunks:e=>n(`streamBroker`,`unsubscribeAudioChunks`,`mutation`,e),subscribeFrames:e=>n(`streamBroker`,`subscribeFrames`,`mutation`,e),pullFrameHandles:e=>n(`streamBroker`,`pullFrameHandles`,`query`,e),unsubscribeFrames:e=>n(`streamBroker`,`unsubscribeFrames`,`mutation`,e),setPreBufferDuration:e=>n(`streamBroker`,`setPreBufferDuration`,`mutation`,e),getPreBufferInfo:e=>n(`streamBroker`,`getPreBufferInfo`,`query`,e),getRtspPort:e=>n(`streamBroker`,`getRtspPort`,`query`,e),getAllRtspEntries:e=>n(`streamBroker`,`getAllRtspEntries`,`query`,e),getRtspEntry:e=>n(`streamBroker`,`getRtspEntry`,`query`,e),regenerateRtspToken:e=>n(`streamBroker`,`regenerateRtspToken`,`mutation`,e),setRtspEnabled:e=>n(`streamBroker`,`setRtspEnabled`,`mutation`,e),isRtspEnabled:e=>n(`streamBroker`,`isRtspEnabled`,`query`,e)},system:{info:e=>n(`system`,`info`,`query`,e),health:e=>n(`system`,`health`,`query`,e),featureFlags:e=>n(`system`,`featureFlags`,`query`,e),networkAddresses:e=>n(`system`,`networkAddresses`,`query`,e),getRetentionConfig:e=>n(`system`,`getRetentionConfig`,`query`,e),setRetentionConfig:e=>n(`system`,`setRetentionConfig`,`mutation`,e),forceRetentionCleanup:e=>n(`system`,`forceRetentionCleanup`,`mutation`,e)},toast:{onToast:(e,t)=>n(`toast`,`onToast`,`subscription`,e,t)},turnProvider:{getTurnServers:e=>n(`turnProvider`,`getTurnServers`,`query`,e)},userManagement:{listUsers:e=>n(`userManagement`,`listUsers`,`query`,e),createUser:e=>n(`userManagement`,`createUser`,`mutation`,e),updateUser:e=>n(`userManagement`,`updateUser`,`mutation`,e),deleteUser:e=>n(`userManagement`,`deleteUser`,`mutation`,e),resetPassword:e=>n(`userManagement`,`resetPassword`,`mutation`,e),setUserScopes:e=>n(`userManagement`,`setUserScopes`,`mutation`,e),validateCredentials:e=>n(`userManagement`,`validateCredentials`,`mutation`,e),listApiKeys:e=>n(`userManagement`,`listApiKeys`,`query`,e),createApiKey:e=>n(`userManagement`,`createApiKey`,`mutation`,e),revokeApiKey:e=>n(`userManagement`,`revokeApiKey`,`mutation`,e),validateApiKey:e=>n(`userManagement`,`validateApiKey`,`mutation`,e),createScopedToken:e=>n(`userManagement`,`createScopedToken`,`mutation`,e),revokeScopedToken:e=>n(`userManagement`,`revokeScopedToken`,`mutation`,e),validateScopedToken:e=>n(`userManagement`,`validateScopedToken`,`query`,e),listScopedTokens:e=>n(`userManagement`,`listScopedTokens`,`query`,e),setupTotp:e=>n(`userManagement`,`setupTotp`,`mutation`,e),confirmTotp:e=>n(`userManagement`,`confirmTotp`,`mutation`,e),disableTotp:e=>n(`userManagement`,`disableTotp`,`mutation`,e),getTotpStatus:e=>n(`userManagement`,`getTotpStatus`,`query`,e),verifyTotp:e=>n(`userManagement`,`verifyTotp`,`mutation`,e),oauthIssueCode:e=>n(`userManagement`,`oauthIssueCode`,`mutation`,e),oauthExchangeCode:e=>n(`userManagement`,`oauthExchangeCode`,`mutation`,e),oauthRefresh:e=>n(`userManagement`,`oauthRefresh`,`mutation`,e),oauthVerifyAccessToken:e=>n(`userManagement`,`oauthVerifyAccessToken`,`query`,e),listOauthSessions:e=>n(`userManagement`,`listOauthSessions`,`query`,e),revokeOauthSession:e=>n(`userManagement`,`revokeOauthSession`,`mutation`,e)}}}var th=`device.state-changed`,nh=`capability.binding-changed`,rh=`device.registered`,ih=`device.unregistered`,ah=`device.updated`,oh=class{api;stateMirror=new Map;bindings=new Map;devices=new Map;handleListeners=new Map;globalStateListeners=new Set;capListeners=new Map;deviceListeners=new Map;addedListeners=new Set;removedListeners=new Set;pendingWaits=new Set;stateSource;bridges=[];initialized=!1;initPromise=null;constructor(e){this.api=e,this.stateSource=Ls(this.stateMirror,this.handleListeners,this.api)}async init(e=15e3){if(!this.initialized){if(this.initPromise)return this.initPromise;this.initPromise=(async()=>{let t=(t,n)=>Number.isFinite(e)?new Promise((r,a)=>{let o=setTimeout(()=>a(Error(`SystemMirror.init: '${n}' timed out after ${e}ms`)),e);t.then(e=>{clearTimeout(o),r(e)},e=>{clearTimeout(o),a(e)})}):t,[n,r,a]=await Promise.all([t(this.api.deviceManager.getAllBindings.query({}),`deviceManager.getAllBindings`),t(this.api.deviceState.getAllSnapshots.query({}),`deviceState.getAllSnapshots`),t(this.api.deviceManager.listAll.query({}),`deviceManager.listAll`)]);for(let e of n)this.bindings.set(e.deviceId,e);for(let[e,t]of Object.entries(r)){let n=Number(e);if(!Number.isFinite(n))continue;let r=new Map;for(let[e,n]of Object.entries(t))r.set(e,n);this.stateMirror.set(n,r)}for(let e of a)this.devices.set(e.id,e);try{this.subscribeBus()}catch{}this.initialized=!0})();try{await this.initPromise}finally{this.initPromise=null}}}isReady(){return this.initialized}async awaitReady(){if(!this.initialized)return this.initPromise?this.initPromise:this.init()}dispose(){for(let e of this.bridges)try{e.unsubscribe()}catch{}this.bridges=[],this.handleListeners.clear(),this.globalStateListeners.clear(),this.capListeners.clear(),this.deviceListeners.clear(),this.addedListeners.clear(),this.removedListeners.clear(),this.pendingWaits.clear(),this.initialized=!1}getDeviceById(e){let t=this.bindings.get(e);return t?zs(this.api,t,{stateSource:this.stateSource}):null}getDeviceByName(e){for(let t of this.devices.values())if(t.name===e)return this.getDeviceById(t.id);return null}getDeviceByStableId(e){for(let t of this.devices.values())if(t.stableId===e)return this.getDeviceById(t.id);return null}getDevicesByAddon(e){return this.query({addonId:e})}getDevicesByType(e){return this.query({type:e})}getDeviceInfo(e){return this.devices.get(e)??null}getAllDevices(){let e=[];for(let t of this.bindings.keys()){let n=this.getDeviceById(t);n&&e.push(n)}return e}filterByCap(e){return this.query({caps:e})}query(e={}){let t=[];for(let[n,r]of this.bindings){let a=this.devices.get(n);if(e.id!==void 0&&!sh(n,e.id)||e.stableId!==void 0&&(!a||!sh(a.stableId,e.stableId))||e.addonId!==void 0&&(!a||!sh(a.addonId,e.addonId))||e.type!==void 0&&(!a||!sh(a.type,e.type)))continue;if(e.caps!==void 0){let t=ch(e.caps),n=new Set(r.entries.map(e=>e.capName));if(!t.every(e=>n.has(e)))continue}if(e.anyCap!==void 0){let t=ch(e.anyCap),n=new Set(r.entries.map(e=>e.capName));if(!t.some(e=>n.has(e)))continue}if(e.name!==void 0&&(!a||!lh(a.name,e.name))||e.online!==void 0&&(!a||a.online!==e.online))continue;if(e.parentDeviceId!==void 0){if(!a)continue;let t=e.parentDeviceId;if((a.parentDeviceId??null)!==t)continue}if(e.feature!==void 0&&(!a||!ch(e.feature).every(e=>a.features.includes(e)))||e.isCamera!==void 0&&(!a||a.isCamera!==e.isCamera))continue;let o=this.getDeviceById(n);if(o){if(e.where&&a){if(!e.where(a,o))continue}else if(e.where&&!a)continue;t.push(o)}}return t}whereState(e,t){let n=[];for(let[r,a]of this.stateMirror){let o=a.get(e);if(!o||!t(o,r))continue;let s=this.getDeviceById(r);s&&n.push(s)}return n}mapState(e,t){let n=[];for(let[r,a]of this.stateMirror){let o=a.get(e);o&&n.push(t(o,r))}return n}findState(e,t){for(let[n,r]of this.stateMirror){let a=r.get(e);if(a&&t(a,n))return this.getDeviceById(n)}return null}countByCap(e){let t=0;for(let n of this.bindings.values())n.entries.some(t=>t.capName===e)&&t++;return t}countByState(e,t){let n=0;for(let[r,a]of this.stateMirror){let o=a.get(e);o&&t(o,r)&&n++}return n}listen(e){return this.globalStateListeners.add(e),()=>{this.globalStateListeners.delete(e)}}listenCap(e,t){let n=this.capListeners.get(e);return n||(n=new Set,this.capListeners.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&this.capListeners.delete(e)}}listenDevice(e,t){let n=this.deviceListeners.get(e);return n||(n=new Set,this.deviceListeners.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&this.deviceListeners.delete(e)}}onDeviceAdded(e){return this.addedListeners.add(e),()=>{this.addedListeners.delete(e)}}onDeviceRemoved(e){return this.removedListeners.add(e),()=>{this.removedListeners.delete(e)}}waitForState(e,t,n,r=3e4){return new Promise((a,o)=>{let s=(()=>{let r=this.stateMirror.get(e)?.get(t);return r&&n(r)?r:null})();if(s){a(s);return}let c=null,l=this.listenDevice(e,(e,r,o)=>{r===t&&o&&n(o)&&(c&&clearTimeout(c),l(),a(o))});Number.isFinite(r)&&(c=setTimeout(()=>{l(),o(Error(`waitForState timed out after ${r}ms (deviceId=${e}, capName=${t})`))},r))})}waitForDevice(e,t=3e4){return new Promise((n,r)=>{let a=this.getDeviceById(e);if(a){n(a);return}let o=null,s=this.onDeviceAdded(t=>{if(t!==e)return;let r=this.getDeviceById(t);r&&(o&&clearTimeout(o),s(),n(r))});Number.isFinite(t)&&(o=setTimeout(()=>{s(),r(Error(`waitForDevice timed out after ${t}ms (deviceId=${e})`))},t))})}async forEachCap(e,t){for(let n of this.filterByCap(e))await t(n)}async invokeCap(e,t,n,r={}){let a=this.filterByCap(e),o=Math.max(1,r.parallelism??a.length),s=[];for(let r=0;r<a.length;r+=o){let c=a.slice(r,r+o),l=await Promise.allSettled(c.map(async r=>{let a=r[e];if(!a||typeof a[t]!=`function`)throw Error(`device '${r.deviceId}' does not expose '${e}.${t}'`);return await a[t](n)}));for(let e=0;e<l.length;e++){let t=c[e],n=l[e];n.status===`fulfilled`?s.push({deviceId:t.deviceId,ok:!0,result:n.value}):s.push({deviceId:t.deviceId,ok:!1,error:n.reason})}}return s}summary(){let e={},t={},n={},r=0,a=0;for(let t of this.bindings.values())for(let n of t.entries)e[n.capName]=(e[n.capName]??0)+1;for(let e of this.devices.values())t[e.addonId]=(t[e.addonId]??0)+1,n[e.type]=(n[e.type]??0)+1,e.online?r++:a++;return{totalDevices:this.bindings.size,online:r,offline:a,byCap:e,byAddon:t,byType:n,statedDevices:this.stateMirror.size}}dump(e){let t=e=>{let t=this.devices.get(e)??null,n=this.bindings.get(e)??null,r={},a=this.stateMirror.get(e);if(a)for(let[e,t]of a)r[e]={...t};return{deviceId:e,info:t,binding:n?{...n,entries:n.entries.map(e=>({...e}))}:null,state:r}};if(e!==void 0)return t(e);let n=[];for(let e of this.bindings.keys())n.push(t(e));return n}getRawMirror(){return this.stateMirror}getSystemState(){let e=new Map;for(let[t,n]of this.stateMirror){let r=new Map;for(let[e,t]of n)r.set(e,{...t});e.set(t,r)}return e}subscribeBus(){if(!this.api.live?.onEvent)return;let e=this.api.live.onEvent;this.bridges.push(e.subscribe({category:th},{onData:e=>{let t=e.data;!t||typeof t.deviceId!=`number`||typeof t.capName!=`string`||this.applyStateUpdate(t.deviceId,t.capName,t.slice)}})),this.bridges.push(e.subscribe({category:nh},{onData:e=>{let t=e.data,n=typeof t?.deviceId==`number`?t.deviceId:t?.source?.type===`device`&&typeof t.source.id==`number`?t.source.id:null;n!==null&&this.refreshBinding(n)}})),this.bridges.push(e.subscribe({category:rh},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.refreshDeviceMetadata(t.deviceId,`added`)}})),this.bridges.push(e.subscribe({category:ih},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.applyDeviceRemoval(t.deviceId)}})),this.bridges.push(e.subscribe({category:ah},{onData:e=>{let t=e.data;typeof t?.deviceId==`number`&&this.refreshDeviceMetadata(t.deviceId,`updated`)}}))}applyStateUpdate(e,t,n){let r=this.stateMirror.get(e);r||(r=new Map,this.stateMirror.set(e,r)),n===void 0?r.delete(t):r.set(t,n);let a=`${e}:${t}`,o=this.handleListeners.get(a);if(o)for(let e of o)try{e(n)}catch{}for(let r of this.globalStateListeners)try{r(e,t,n)}catch{}let s=this.capListeners.get(t);if(s)for(let t of s)try{t(e,n)}catch{}let c=this.deviceListeners.get(e);if(c)for(let r of c)try{r(e,t,n)}catch{}}applyDeviceRemoval(e){let t=this.devices.get(e)??null;this.bindings.delete(e),this.devices.delete(e),this.stateMirror.delete(e);for(let n of this.removedListeners)try{n(e,t)}catch{}}async refreshBinding(e){try{let t=(await this.api.deviceManager.getAllBindings.query({})).find(t=>t.deviceId===e);t?this.bindings.set(e,t):this.applyDeviceRemoval(e)}catch{}}async refreshDeviceMetadata(e,t){try{let n=(await this.api.deviceManager.listAll.query({})).find(t=>t.id===e);if(!n)return;let r=!this.devices.has(e);if(this.devices.set(e,n),t===`added`&&r){await this.refreshBinding(e);for(let t of this.addedListeners)try{t(e,n)}catch{}}}catch{}}};function sh(e,t){return Array.isArray(t)?t.includes(e):e===t}function ch(e){return Array.isArray(e)?e:[e]}function lh(e,t){return typeof t==`string`?e===t:t instanceof RegExp?t.test(e):`exact`in t?e===t.exact:`contains`in t?e.toLowerCase().includes(t.contains.toLowerCase()):!1}var uh=B({id:P(),label:P(),icon:P(),path:P(),remoteName:P(),bundle:P(),section:P().optional(),sectionLabel:P().optional()}),dh=B({addonId:P(),page:uh,bundleUrl:P()}),fh={name:`addon-pages`,scope:`system`,mode:`singleton`,methods:{listPages:K(R(),z(dh).readonly())}},ph=B({id:P(),label:P(),icon:P(),path:P(),remoteName:P(),bundle:P(),section:P().optional(),sectionLabel:P().optional()}),mh={name:`addon-pages-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listPages:K(R(),z(ph).readonly())}},hh=B({method:H([`GET`,`POST`,`PUT`,`DELETE`,`PATCH`]),path:P(),access:H([`public`,`authenticated`,`admin`]).optional(),description:P().optional()}),gh=B({method:P(),path:P(),params:V(P(),P()),query:V(P(),P()),body:L(),headers:V(P(),P()),user:B({id:P(),username:P(),isAdmin:I()}).optional(),scopedToken:L().optional()}),_h=B({status:F().int(),headers:V(P(),P()),redirectUrl:P().nullable(),body:L().optional(),contentType:P().optional()}),vh={name:`addon-routes`,scope:`system`,mode:`collection`,internal:!0,methods:{getRoutes:K(R(),z(hh)),invoke:K(gh,_h,{kind:`mutation`})},mount:{kind:`skip`}},yh=B({id:P(),label:P(),icon:P(),order:F().optional()}),bh=B({id:P(),title:P(),description:P().optional(),style:H([`card`,`accordion`]).optional(),defaultCollapsed:I().optional(),columns:Co([U(1),U(2),U(3),U(4)]).optional(),tab:P().optional(),location:H([`settings`,`top-tab`]).optional(),order:F().optional(),fields:z(fo())}),xh=B({tabs:z(yh).optional(),sections:z(bh)}),Sh=V(P(),L()),Ch=B({success:U(!0)}),wh={name:`addon-settings`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{getGlobalSettings:K(B({addonId:P(),nodeId:P().optional(),overlay:V(P(),L()).optional(),cap:P().optional()}),xh.nullable()),updateGlobalSettings:K(B({addonId:P(),nodeId:P().optional(),patch:Sh}),Ch,{kind:`mutation`,auth:`admin`}),getDeviceSettings:K(B({addonId:P(),deviceId:F(),nodeId:P().optional()}),xh.nullable()),updateDeviceSettings:K(B({addonId:P(),deviceId:F(),nodeId:P().optional(),patch:Sh}),Ch,{kind:`mutation`,auth:`admin`})}},Th=H([`device-tab`,`dashboard`,`integration-detail`]),Eh=H([`xs`,`sm`,`md`,`lg`,`xl`]),Dh=B({remoteName:P(),exposedModule:P(),componentKey:P().optional()}),Oh=B({tab:P(),subTab:P().optional(),label:P(),order:F().optional(),kind:U(`remote`),remote:Dh,stableId:P(),description:P().optional(),icon:P().optional(),bundle:P(),hosts:z(Th).readonly(),requires:B({deviceContext:I().default(!1),integrationContext:I().default(!1)}),preAuth:I().optional().default(!1),defaultSize:Eh.default(`md`),allowedSizes:z(Eh).readonly().default([`sm`,`md`,`lg`]),defaultColumns:F().int().min(1).max(12).default(6),defaultRows:F().int().min(1).max(12).default(1)}),kh={name:`addon-widgets-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listWidgets:K(R(),z(Oh).readonly())}},Ah=Oh.extend({addonId:P(),bundleUrl:P()}),jh={name:`addon-widgets`,scope:`system`,mode:`singleton`,methods:{listWidgets:K(R(),z(Ah).readonly())}},Mh=B({deviceIds:z(F()).readonly().optional(),classNames:z(P()).readonly().optional(),zoneIds:z(P()).readonly().optional(),minConfidence:F().optional(),source:H([`pipeline`,`onboard`,`any`]).optional(),schedule:B({days:z(F()).readonly(),startHour:F(),endHour:F()}).optional(),cooldownSeconds:F().optional(),minDwellSeconds:F().optional(),eventTypeTokens:z(P()).readonly().optional(),clipDescription:B({text:P().min(1),minSimilarity:F().min(0).max(1)}).optional(),labels:z(P()).readonly().optional()}),Nh=B({title:P(),body:P(),imageMode:H([`crop`,`annotated`,`full`,`none`])}),Ph=B({id:P(),name:P(),enabled:I(),eventTypes:z(P()).readonly(),conditions:Mh,outputs:z(P()).readonly(),template:Nh.optional(),priority:H([`low`,`normal`,`high`,`critical`])}),Fh=B({ruleId:P(),eventId:P(),timestamp:F(),wouldFire:I(),reason:P().optional()}),Ih=B({id:P(),ruleId:P(),ruleName:P(),eventId:P(),timestamp:F(),outputs:z(P()).readonly(),success:I(),error:P().optional(),deviceId:F().optional()}),Lh=B({ruleId:P().optional(),deviceId:F().optional(),from:F().optional(),to:F().optional(),limit:F().optional()}),Rh={name:`advanced-notifier`,scope:`system`,mode:`singleton`,internal:!0,methods:{getRules:K(R(),B({rules:z(Ph).readonly()})),upsertRule:K(B({rule:Ph}),B({success:U(!0)}),{kind:`mutation`}),deleteRule:K(B({ruleId:P()}),B({success:U(!0)}),{kind:`mutation`}),testRule:K(B({ruleId:P(),lookbackMinutes:F()}),B({results:z(Fh).readonly()}),{kind:`mutation`}),getHistory:K(B({filter:Lh.optional()}),B({entries:z(Ih).readonly()}))}},zh=H([`info`,`success`,`warning`,`error`]),Bh=H([`active`,`in-progress`,`completed`,`failed`,`dismissed`]),Vh=B({type:P(),id:P()}),Hh=B({id:P(),category:P(),severity:zh,title:P(),message:P(),status:Bh,progress:F().optional(),read:I(),createdAt:F(),updatedAt:F(),source:Vh.optional(),metadata:V(P(),L()).optional()}),Uh={name:`alerts`,scope:`system`,mode:`singleton`,methods:{emit:K(Hh,R(),{kind:`mutation`}),update:K(B({alertId:P(),patch:Hh.partial()}),R(),{kind:`mutation`}),list:K(B({unreadOnly:I().optional(),limit:F().optional()}).optional(),z(Hh).readonly()),getUnreadCount:K(R(),F()),markRead:K(B({alertId:P()}),R(),{kind:`mutation`}),markAllRead:K(R(),R(),{kind:`mutation`}),dismiss:K(B({alertId:P()}),R(),{kind:`mutation`})}},Wh={name:`audio-analysis`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{resolveDeviceSettings:K(B({deviceId:F()}),rs())},events:{onAudioLevel:Ps(B({deviceId:F(),rms:F(),dbfs:F()}))}},Gh=B({level:Id,classification:B({labels:z(Ld).readonly(),inferenceMs:F()}).optional(),timestamp:F()}),Kh=B({minConfidence:F().min(0).max(1).default(.3),allowedClasses:z(P()).default([])}),qh=B({labels:z(Ld).readonly(),rawLabels:z(Ld).readonly().optional(),inferenceMs:F()}),Jh={name:`audio-analyzer`,scope:`system`,mode:`singleton`,methods:{analyseChunk:K(B({chunk:Fd,settings:Kh}),Gh.nullable(),{kind:`mutation`}),classify:K(Fd,qh,{timeoutMs:3e4}),isReady:K(R(),I()),dispose:K(R(),R(),{kind:`mutation`}),reprobeAudioEngine:K(R(),B({backend:P()}),{kind:`mutation`,auth:`admin`})}},Yh=H([`f32le`,`s16le`]),Xh=B({codec:P(),canDecode:I(),canEncode:I(),label:P().optional()}),Zh=B({codec:P(),sourceSampleRate:F().int().positive(),sourceChannels:F().int().positive(),extraData:os(Uint8Array).optional(),targetSampleRate:F().int().positive(),targetChannels:F().int().positive(),targetFormat:Yh.optional(),idleMs:F().int().positive().optional(),tag:P().optional()}),Qh=B({codec:P(),sourceSampleRate:F().int().positive(),sourceChannels:F().int().positive(),sourceFormat:Yh.optional(),targetSampleRate:F().int().positive(),targetChannels:F().int().positive(),bitrateKbps:F().int().positive().optional(),idleMs:F().int().positive().optional(),tag:P().optional()}),$h=B({data:os(Uint8Array),sampleRate:F().int().positive(),channels:F().int().positive(),format:Yh,pts:F()}),eg=B({data:os(Uint8Array),codec:P(),pts:F(),frameComplete:I()}),tg=B({sessionId:P(),kind:H([`decode`,`encode`]),codec:P(),sourceSampleRate:F(),sourceChannels:F(),targetSampleRate:F(),targetChannels:F(),format:Yh,tag:P().optional(),createdAtMs:F(),lastActivityMs:F(),framesIn:F(),framesOut:F()}),ng={name:`audio-codec`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{listSupportedCodecs:K(R(),z(Xh).readonly()),canHandle:K(B({codec:P(),kind:H([`decode`,`encode`])}),I()),createDecodeSession:K(Zh,B({sessionId:P(),nodeId:P()}),{kind:`mutation`}),createEncodeSession:K(Qh,B({sessionId:P(),nodeId:P()}),{kind:`mutation`}),closeSession:K(B({sessionId:P(),nodeId:P().optional()}),R(),{kind:`mutation`}),pushEncodedFrame:K(B({sessionId:P(),nodeId:P().optional(),data:os(Uint8Array),pts:F().optional()}),R(),{kind:`mutation`}),pullPcm:K(B({sessionId:P(),nodeId:P().optional(),maxCount:F().int().positive().default(8)}),z($h)),pushPcm:K(B({sessionId:P(),nodeId:P().optional(),data:os(Uint8Array),pts:F().optional()}),R(),{kind:`mutation`}),pullEncoded:K(B({sessionId:P(),nodeId:P().optional(),maxCount:F().int().positive().default(8)}),z(eg)),flushEncode:K(B({sessionId:P(),nodeId:P().optional()}),z(eg),{kind:`mutation`}),listActiveSessions:K(R(),z(tg).readonly())}},rg=B({userId:P(),username:P(),email:P().optional(),displayName:P().optional(),isAdmin:I().default(!1)}),ig={name:`auth-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{validateCredentials:K(B({username:P(),password:P()}),rg.nullable(),{kind:`mutation`}),getLoginUrl:K(B({state:P()}),P()),handleCallback:K(V(P(),P()),rg,{kind:`mutation`}),validateToken:K(B({token:P()}),rg.nullable())},mount:{kind:`skip`}},ag=H([`primary`,`second-factor`]),og=To(`kind`,[B({kind:U(`redirect`),id:P(),label:P(),icon:P().optional(),startUrl:P(),stage:ag}),B({kind:U(`widget`),id:P(),addonId:P(),bundle:P(),remote:Dh,stage:ag}),B({kind:U(`passkey`),id:P(),label:P(),stage:ag,rpId:P(),origin:P().nullable()})]),sg={name:`login-method`,scope:`system`,mode:`collection`,internal:!0,methods:{getLoginMethods:K(R(),z(og).readonly())},mount:{kind:`skip`}},cg=B({subId:P(),displayName:P(),description:P().optional(),kind:P(),triggerSupported:I(),restoreSupported:I()}).extend({id:P(),addonId:P(),enabled:I(),retentionCount:F(),label:P().optional(),lastSuccessAt:F().optional(),lastSuccessSizeBytes:F().optional(),cron:P().optional(),nextRunAt:F().optional(),lastRunAt:F().optional()}),lg=B({id:P(),filename:P(),createdAt:F(),sizeBytes:F(),label:P().optional(),locations:z(P()).readonly()}),ug=B({id:P(),destinationId:P().optional(),label:P().optional(),createdAt:F(),sizeBytes:F(),locations:z(P()).optional()}),dg=B({path:P(),kind:H([`file`,`dir`,`symlink`]),sizeBytes:F(),mtime:F()}),fg=B({archiveVersion:U(1),createdAt:F(),dataDir:P(),locations:z(P()),entries:z(dg),totalBytes:F(),totalFiles:F()}),pg=B({name:P(),sizeBytes:F(),fileCount:F(),present:I()}),mg={name:`backup`,scope:`system`,mode:`singleton`,methods:{listDestinations:K(R(),z(cg).readonly(),{auth:`admin`}),trigger:K(B({destinations:z(P()).optional(),locations:z(P()).optional(),label:P().optional()}).optional(),z(ug).readonly(),{kind:`mutation`,auth:`admin`}),list:K(R(),z(ug).readonly(),{auth:`admin`}),listLocations:K(R(),z(pg).readonly(),{auth:`admin`}),getEntries:K(B({destinationId:P(),backupId:P()}),fg.nullable(),{auth:`admin`}),restore:K(B({destinationId:P(),backupId:P(),locations:z(P()).optional()}),R(),{kind:`mutation`,auth:`admin`}),delete:K(B({destinationId:P(),backupId:P()}),R(),{kind:`mutation`,auth:`admin`}),listArchives:K(B({destinationId:P()}),z(lg).readonly(),{auth:`admin`}),upsertDestinationPolicy:K(B({locationId:P(),enabled:I(),retentionCount:F().int().min(1).max(1e3),label:P().optional(),cron:P().optional()}),R(),{kind:`mutation`,auth:`admin`}),previewSchedule:K(B({cron:P(),count:F().int().min(1).max(20).optional()}),B({ok:I(),error:P().optional(),nextRuns:z(F()).readonly()}))}},hg=H([`connected`,`disconnected`,`connecting`,`auth-failed`,`unreachable`,`error`]),gg=B({id:P(),addonId:P(),name:P(),kind:P(),status:hg,info:V(P(),L()),lastCheckedAt:F().nullable(),error:P().nullable()}),_g=B({brokerCount:F().int().nonnegative(),connectedCount:F().int().nonnegative()}),vg=B({addonId:P(),kinds:z(B({kind:P(),label:P()}))}),yg=B({kind:P().optional()}),bg=B({id:P()}),xg=B({kind:P().min(1),name:P().min(1),settings:V(P(),L())}),Sg=B({id:P()}),Cg=B({id:P()}),wg=To(`ok`,[B({ok:U(!0),latencyMs:F().nonnegative()}),B({ok:U(!1),error:P()})]),Tg=V(P(),L()),Eg=B({kind:P()}),Dg=B({kind:P(),settings:Tg}),Og=To(`ok`,[B({ok:U(!0),latencyMs:F().nonnegative().optional()}).strict(),B({ok:U(!1),error:P()})]),kg=L().nullable(),Ag=B({brokerId:P(),target:V(P(),L()),payload:L().optional()}),jg=B({brokerId:P(),filter:V(P(),L())}),Mg=B({subscriptionId:P()}),Ng=B({brokerId:P(),subscriptionId:P()}),Pg=B({brokerId:P(),key:P()}),Fg={name:`broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:_g,kind:`poll`},methods:{list:K(yg,z(gg)),get:K(bg,gg.nullable()),listProviders:K(R(),z(vg),{auth:`admin`}),add:K(xg,Sg,{kind:`mutation`,auth:`admin`}),remove:K(Cg,R(),{kind:`mutation`,auth:`admin`}),testConnection:K(bg,wg,{kind:`mutation`,auth:`admin`}),getSettings:K(bg,Tg.nullable(),{auth:`admin`}),setSettings:K(B({id:P(),settings:Tg}),R(),{kind:`mutation`,auth:`admin`}),getBrokerConfig:K(bg,Tg.nullable(),{auth:`admin`}),getSettingsSchema:K(Eg,kg,{auth:`admin`}),testSettings:K(Dg,Og,{kind:`mutation`,auth:`admin`}),publish:K(Ag,L(),{kind:`mutation`,auth:`admin`}),subscribe:K(jg,Mg,{kind:`mutation`,auth:`admin`}),unsubscribe:K(Ng,R(),{kind:`mutation`,auth:`admin`}),getState:K(Pg,L().nullable()),getStatus:K(R(),_g)}},Ig={name:`camera-pipeline-config`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{}},Lg=B({stepId:P(),entry:oc}),Rg={name:`custom-model-registry`,scope:`system`,mode:`collection`,internal:!0,methods:{listModels:K(R(),z(Lg).readonly())}},zg=B({sessionId:P(),slotCount:F().int(),slotByteLength:F().int(),segmentBytes:F().int(),budgetMb:F().int(),framesWritten:F().int(),getFrameHits:F().int(),getFrameMisses:F().int()}),Bg={name:`decoder`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{supportsCodec:K(B({codec:P()}),I()),getInfo:K(R(),B({id:P(),name:P(),isPullMode:I().optional(),priority:F().optional(),hwaccel:P().optional(),probedBestHwaccel:P().optional()})),createSession:K(Nc,B({sessionId:P(),nodeId:P()})),destroySession:K(B({sessionId:P()}),R()),pushPacket:K(B({sessionId:P(),packet:bs}),R()),openStream:K(B({sessionId:P(),url:P()}),R()),pullFrames:K(B({sessionId:P(),maxCount:F().default(1),waitMs:F().optional()}),z(xs)),pullHandles:K(B({sessionId:P(),maxCount:F().default(1),waitMs:F().optional()}),z(Ss)),getFrame:K(B({handle:Ss}),xs.nullable()),getShmStats:K(B({sessionId:P()}),zg.nullable()),updateConfig:K(B({sessionId:P(),config:Nc.partial()}),R()),getStats:K(B({sessionId:P()}),Mc),listActiveSessions:K(R(),z(B({sessionId:P(),codec:P(),outputFormat:P(),createdAtMs:F()})).readonly()),reprobeHwaccel:K(R(),B({backend:P()}),{kind:`mutation`,auth:`admin`})}},Vg={name:`detection-pipeline`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{}},Hg=B({id:P(),label:P(),isDefault:I().optional()}),Ug=B({search:P().optional(),area:P().optional(),manufacturer:P().optional(),adoptedOnly:I().optional(),unadoptedOnly:I().optional()}),Wg=B({integrationId:P(),page:F().int().positive().default(1),pageSize:F().int().positive().max(2e4).default(50),filter:P().optional(),filterText:Ug.optional()}),Gg=B({candidates:z(Vu).readonly(),totalCount:F().int().nonnegative(),page:F().int().positive(),pageSize:F().int().positive()}),Kg=B({integrationId:P(),childNativeId:P()}),qg=B({lastDiscoveryAt:F().int().nonnegative().nullable(),candidateCount:F().int().nonnegative(),adoptedCount:F().int().nonnegative(),lastError:P().nullable()}),Jg=B({name:P().min(1).optional(),hiddenChildIds:z(P()).optional()}),Yg=B({integrationId:P(),childNativeIds:z(P()).min(1),filter:P().optional(),importLocations:I().optional(),perCandidate:V(P(),Jg).optional()}),Xg=B({adopted:z(B({childNativeId:P(),parentDeviceId:F().int().nonnegative(),accessoryDeviceIds:z(F().int().nonnegative()).readonly()})).readonly()}),Zg=B({integrationId:P(),camDeviceId:F().int().nonnegative()}),Qg=B({camDeviceId:F().int().nonnegative(),resetToSource:I().optional()}),$g=B({changed:I(),rebuiltChildren:F().int().nonnegative(),removedChildren:F().int().nonnegative().optional()}),e_={name:`device-adoption`,scope:`system`,mode:`singleton`,status:{schema:qg,kind:`poll`},methods:{listCandidateFilters:K(B({integrationId:P()}),B({filters:z(Hg)}),{auth:`admin`}),listCandidates:K(Wg,Gg,{auth:`admin`}),getCandidate:K(Kg,Vu.nullable(),{auth:`admin`}),refresh:K(B({integrationId:P()}),qg,{kind:`mutation`,auth:`admin`}),adopt:K(Yg,Xg,{kind:`mutation`,auth:`admin`}),release:K(Zg,R(),{kind:`mutation`,auth:`admin`}),resync:K(Qg,$g,{kind:`mutation`,auth:`admin`})}},t_=H([`unlinked`,`linked`,`error`]),n_=B({label:P(),value:P(),secret:I().optional()}),r_=B({qr:P().optional(),fields:z(n_).readonly().optional(),note:P().optional()}),i_=B({linkState:t_,exposedDeviceCount:F(),error:P().optional(),setup:r_.optional()}),a_=P(),o_=B({deviceId:P(),exposedAs:P().optional(),capabilities:z(P()).optional()}),s_=B({deviceId:P(),capabilities:z(P()).optional()}),c_=B({deviceId:P()}),l_={name:`device-export`,scope:`system`,mode:`collection`,providerKind:`device-export`,status:{schema:i_,kind:`poll`},exposesDeviceSettings:!0,methods:{getStatus:K(R(),i_),listSupportedDeviceKinds:K(R(),z(a_)),listExposedDevices:K(R(),z(o_)),exposeDevice:K(s_,R(),{kind:`mutation`}),unexposeDevice:K(c_,R(),{kind:`mutation`})}},u_=B({childKey:P(),section:P(),order:F().optional(),collapsed:I().optional()}),d_=B({kind:U(`field`).optional(),sourceKey:P(),cap:P(),fieldPath:P()}),f_=B({kind:U(`literal`),value:Co([P(),F(),I(),lo()])}),p_=B({kind:U(`global`),sourceStableId:P(),cap:P(),fieldPath:P()}),m_=B({kind:U(`expression`),expr:P().min(1).max(Yc),bindings:V(P().regex(Xc),Co([d_,f_,p_]))}).superRefine((e,t)=>{let n=xl(e);n!==null&&t.addIssue({code:`custom`,message:n,path:[`expr`]})}),h_=B({id:P(),source:Co([d_,f_,p_,m_]),target:B({cap:P(),fieldPath:P(),itemKey:P().optional()}),transform:To(`kind`,[B({kind:U(`identity`)}),B({kind:U(`enum-map`),mapping:V(P(),Co([P(),F(),I()])),fallback:Co([P(),F(),I()]).optional()}),B({kind:U(`linear`),scale:F(),offset:F(),clamp:ko([F(),F()]).readonly().optional()})]).optional()}),g_=B({unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional()}),__=B({icon:P().min(1).optional(),label:P().min(1).optional(),unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional(),hidden:I().optional(),perCap:V(P(),g_).optional()}),v_=B({unit:P().min(1).optional(),precision:F().int().min(0).max(10).optional(),icon:P().min(1).optional()}),y_=B({id:F(),stableId:P(),addonId:P(),type:H(W),name:P(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional(),online:I(),probed:I().optional(),features:z(P()),isCamera:I(),config:V(P(),L()),metadata:V(P(),L()).nullable().optional(),sourceInfo:zu.optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),primaryChildEntityId:P().nullable().optional(),childLayout:z(u_).readonly().optional(),deviceLinks:z(h_).readonly().optional(),display:__.optional()}),b_=B({key:P(),value:L(),description:P().optional()}),x_=H([`auto`,`manual`]),S_=B({deviceId:F(),name:P(),location:P().nullable(),features:z(P()),producesTrackedEvents:I().optional()}),C_=B({id:F(),stableId:P(),type:P(),name:P(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional()}),w_=B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),userNamed:I().optional(),location:P().nullable(),disabled:I(),parentDeviceId:F().nullable(),metadata:V(P(),L()).nullable().optional(),sourceInfo:zu.optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),primaryChildEntityId:P().nullable().optional(),childLayout:z(u_).readonly().optional(),deviceLinks:z(h_).readonly().optional(),role:P().nullable().optional(),display:__.optional()}),T_=L().nullable(),E_=B({streamId:P(),width:F().optional(),height:F().optional(),codec:P().optional(),fps:F().optional(),bitrateKbps:F().optional()}),D_=B({addonId:P(),stableId:P(),id:F(),type:P(),name:P(),location:P().nullable().optional(),disabled:I().optional(),parentDeviceId:F().nullable(),role:P().nullable().optional(),features:z(P()).optional(),config:V(P(),L())}),O_=B({deviceId:F()}),k_=B({deviceId:F(),data:V(P(),L())}),A_={name:`device-manager`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,methods:{allocateDeviceId:K(B({addonId:P(),stableId:P()}),B({id:F()}),{kind:`mutation`}),registerDevice:K(D_,R(),{kind:`mutation`}),removeDevice:K(O_,R(),{kind:`mutation`}),persistConfig:K(k_,R(),{kind:`mutation`}),loadConfig:K(B({deviceId:F()}),V(P(),L())),loadRuntimeState:K(B({deviceId:F()}),V(P(),L())),loadMeta:K(B({deviceId:F()}),w_.nullable()),setName:K(B({deviceId:F(),name:P()}),R(),{kind:`mutation`,auth:`admin`}),setLocation:K(B({deviceId:F(),location:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setType:K(B({deviceId:F(),type:H(W)}),R(),{kind:`mutation`,auth:`admin`}),setIntegrationId:K(B({deviceId:F(),integrationId:P()}),R(),{kind:`mutation`,auth:`admin`}),setLinkDeviceId:K(B({deviceId:F(),linkDeviceId:F().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setPrimaryChildEntityId:K(B({deviceId:F(),primaryChildEntityId:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),setChildLayout:K(B({deviceId:F(),childLayout:z(u_).readonly()}),R(),{kind:`mutation`,auth:`admin`}),setDeviceLinks:K(B({deviceId:F(),deviceLinks:z(h_).readonly()}),R(),{kind:`mutation`,auth:`admin`}),setDisplay:K(B({deviceId:F(),display:__.nullable()}),R(),{kind:`mutation`,auth:`admin`}),getRoleDisplayDefaults:K(B({}),B({defaults:V(P(),v_)}),{kind:`query`}),setRoleDisplayDefaults:K(B({defaults:V(P(),v_)}),R(),{kind:`mutation`,auth:`admin`}),getWireableFields:K(B({deviceId:F(),includeSynthesizable:I().optional()}),B({caps:z(B({cap:P(),fields:z(B({path:P(),kind:H([`string`,`number`,`boolean`,`enum`]),enumValues:z(P()).optional(),item:I().optional()})).readonly(),itemArray:B({path:P(),keyField:P()}).optional()})).readonly()}),{kind:`query`}),setRole:K(B({deviceId:F(),role:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),applyInitialMeta:K(B({deviceId:F(),name:P().optional(),location:P().nullable().optional(),type:H(W).optional(),integrationId:P().optional(),linkDeviceId:F().nullable().optional(),role:P().nullable().optional()}),R(),{kind:`mutation`,auth:`admin`}),setMetadata:K(B({deviceId:F(),patch:V(P(),L())}),R(),{kind:`mutation`,auth:`admin`}),listLocations:K(R(),z(P())),addLocation:K(B({name:P()}),R(),{kind:`mutation`,auth:`admin`}),removeLocation:K(B({name:P(),cascade:I().optional()}),R(),{kind:`mutation`,auth:`admin`}),setDisabled:K(B({deviceId:F(),disabled:I()}),R(),{kind:`mutation`,auth:`admin`}),listPersistedByAddon:K(B({addonId:P()}),z(C_)),listAll:K(B({addonId:P().optional()}),z(y_)),getDevice:K(B({deviceId:F()}),y_.nullable()),getChildren:K(B({parentDeviceId:F()}),z(y_)),getLinkedDevices:K(B({deviceId:F()}),B({mode:x_,devices:z(S_)})),getStreamSources:K(B({deviceId:F()}),z(ys)),getConfigSchema:K(B({deviceId:F()}),z(b_)),getSettingsSchema:K(B({deviceId:F()}),T_),updateConfig:K(B({deviceId:F(),values:V(P(),L())}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),enable:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),disable:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),remove:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),removeByIntegration:K(B({integrationId:P()}),B({removed:F()}),{kind:`mutation`,auth:`admin`}),getStreamProfileMap:K(B({deviceId:F()}),V(P(),P().nullable())),setStreamProfileMap:K(B({deviceId:F(),profileMap:V(P(),P().nullable())}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),probeStreams:K(B({deviceId:F()}),z(E_),{kind:`mutation`,auth:`admin`}),getBindings:K(B({deviceId:F()}),B({deviceId:F(),entries:z(B({capName:P(),kind:H([`native`,`wrapped`,`linked`]),providerAddonId:P(),providerNodeId:P(),nativeAddonId:P()}))})),getAllBindings:K(B({}),z(B({deviceId:F(),entries:z(B({capName:P(),kind:H([`native`,`wrapped`,`linked`]),providerAddonId:P(),providerNodeId:P(),nativeAddonId:P()}))}))),setWrapperActive:K(B({deviceId:F(),capName:P(),wrapperAddonId:P(),active:I()}),R(),{kind:`mutation`,auth:`admin`}),listWrappersForCap:K(B({capName:P()}),z(P())),listBindableCapsForDeviceType:K(B({deviceType:P()}),z(B({capName:P(),wrappers:z(P())}))),getDeviceSettingsAggregate:K(B({deviceId:F()}),xh.nullable()),getDeviceLiveInfoAggregate:K(B({deviceId:F()}),xh.nullable()),getDeviceAggregate:K(B({deviceId:F()}),B({settings:xh.nullable(),live:xh.nullable()})),runDeviceAction:K(B({deviceId:F().int().nonnegative(),action:P().min(1),input:L()}),L(),{kind:`mutation`}),updateDeviceField:K(B({deviceId:F(),writerCapName:P(),writerAddonId:P(),key:P(),value:L()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),updateDeviceFieldsBatch:K(B({deviceId:F(),changes:z(B({writerCapName:P(),writerAddonId:P(),key:P(),value:L()}))}),B({success:U(!0),failures:z(B({writerCapName:P(),writerAddonId:P(),error:P()}))}),{kind:`mutation`,auth:`admin`}),discoverDevices:K(B({addonId:P()}),z(Jm),{kind:`mutation`,auth:`admin`}),adoptDevice:K(B({addonId:P(),candidate:Jm,integrationId:P().optional()}),Ym,{kind:`mutation`,auth:`admin`}),getCreationSchema:K(B({addonId:P(),type:H(W)}),L().nullable()),createDevice:K(B({addonId:P(),type:H(W),config:V(P(),L()),integrationId:P().optional()}),Ym,{kind:`mutation`,auth:`admin`}),testCreationField:K(B({addonId:P(),type:H(W),key:P(),value:L(),formValues:V(P(),L()).optional()}),Xm,{kind:`mutation`,auth:`admin`}),adoptionListCandidateFilters:K(B({addonId:P(),integrationId:P()}),B({filters:z(Hg)}),{auth:`admin`}),adoptionListCandidates:K(Wg.extend({addonId:P()}),Gg,{auth:`admin`}),adoptionRefresh:K(B({addonId:P(),integrationId:P()}),qg,{kind:`mutation`,auth:`admin`}),adoptionAdopt:K(Yg.extend({addonId:P()}),Xg,{kind:`mutation`,auth:`admin`}),adoptionRelease:K(Zg.extend({addonId:P()}),R(),{kind:`mutation`,auth:`admin`}),adoptionResync:K(Qg,$g,{kind:`mutation`,auth:`admin`}),discoveryProviders:K(B({}),B({providers:z(B({addonId:P(),label:P()})).readonly()}),{auth:`admin`}),discoverAllProviders:K(B({}),B({groups:z(B({addonId:P(),label:P(),candidates:z(Jm).readonly(),error:P().nullable()})).readonly()}),{kind:`mutation`,auth:`admin`}),discoverProvider:K(B({addonId:P(),params:V(P(),L()).optional()}),B({candidates:z(Jm).readonly()}),{kind:`mutation`,auth:`admin`}),providerCreationType:K(B({addonId:P()}),B({deviceType:H(W).nullable()}),{auth:`admin`}),providerDiscoveryParamsSchema:K(B({addonId:P()}),L(),{auth:`admin`}),testField:K(B({deviceId:F(),key:P(),value:L()}),Xm,{kind:`mutation`,auth:`admin`}),getDeviceStatusAggregate:K(B({deviceId:F(),caps:z(P()).readonly().optional()}),V(P(),L().nullable()))}},j_={name:`device-state`,scope:`system`,mode:`singleton`,methods:{getSnapshot:K(B({deviceId:F()}),V(P(),V(P(),L()))),getCapSlice:K(B({deviceId:F(),capName:P()}),V(P(),L()).nullable()),getAllSnapshots:K(B({}),V(P(),V(P(),V(P(),L())))),setCapSlice:K(B({deviceId:F(),capName:P(),slice:V(P(),L())}),R(),{kind:`mutation`})},events:{onChanged:Ps(B({deviceId:F(),capName:P(),slice:V(P(),L())}))}},M_=B({embedding:z(F()),inferenceMs:F()}),N_=B({modelId:P(),embeddingDim:F(),ready:I()}),P_={name:`embedding-encoder`,scope:`system`,mode:`collection`,internal:!0,methods:{encode:K(B({crop:os(Uint8Array),width:F(),height:F()}),M_),encodeText:K(B({text:P()}),M_),getInfo:K(R(),N_)}},F_=B({name:P(),path:P()}),I_=B({path:P(),entries:z(F_).readonly(),freeBytes:F(),totalBytes:F()}),L_={name:`filesystem-browse`,scope:`system`,mode:`singleton`,internal:!0,methods:{listAllowedRoots:K(R(),z(P()).readonly(),{auth:`admin`}),browse:K(B({path:P()}),I_,{auth:`admin`}),createDir:K(B({path:P()}),B({path:P()}),{kind:`mutation`,auth:`admin`})}},R_=H([`debug`,`info`,`warn`,`error`]),z_=B({timestamp:vo(),level:R_,scope:z(P()),message:P(),meta:V(P(),L()).optional(),tags:V(P(),P()).optional()}),B_={name:`log-destination`,scope:`system`,mode:`collection`,internal:!0,methods:{write:K(z_,R(),{kind:`mutation`}),query:K(B({scope:z(P()).optional(),level:R_.optional(),since:vo().optional(),until:vo().optional(),limit:F().optional(),tags:V(P(),P()).optional()}),z(z_).readonly())},mount:{kind:`skip`}},V_=B({total:F(),user:F(),system:F(),irq:F(),nice:F(),loadAvg:ko([F(),F(),F()]),cores:F()}),H_=B({percent:F(),totalBytes:F(),usedBytes:F(),availableBytes:F(),swapUsedBytes:F(),swapTotalBytes:F()}),U_=B({readBytes:F(),writeBytes:F(),readOps:F(),writeOps:F(),timestampMs:F()}),W_=B({rxBytes:F(),txBytes:F(),rxPackets:F(),txPackets:F(),rxErrors:F(),txErrors:F(),timestampMs:F()}),G_=B({utilization:F(),model:P(),memoryUsedBytes:F(),memoryTotalBytes:F(),temperature:F().nullable()}),K_=B({openFds:F(),threadCount:F(),activeHandles:F(),activeRequests:F()}),q_=B({avg10:F(),avg60:F(),avg300:F()}),J_=B({some:q_,full:q_.nullable()}),Y_=B({cpu:V_,memory:H_,gpu:G_.nullable(),network:W_,disk:U_,pressure:B({cpu:J_.nullable(),memory:J_.nullable(),io:J_.nullable()}),process:K_,cpuTemperature:F().nullable(),timestampMs:F()}),X_=B({path:P(),totalBytes:F(),usedBytes:F(),availableBytes:F(),percent:F()}),Z_=B({pid:F(),cpu:F(),memory:F(),privateBytes:F().optional(),sharedBytes:F().optional()}),Q_=B({addonId:P(),nodeId:P(),role:H([`hub`,`worker`]),pid:F(),state:H([`starting`,`running`,`stopping`,`stopped`,`crashed`]),uptimeSec:F()}),$_=B({pid:F(),ppid:F(),pgid:F(),classification:H([`root`,`managed`,`system`,`ghost`]),addonId:P().nullable(),nodeId:P().nullable(),command:P(),cpuPercent:F(),memoryRssBytes:F(),uptimeSec:F(),orphaned:I()}),ev=B({pid:F(),force:I().optional()}),tv=B({success:I(),reason:P().optional(),signal:H([`SIGTERM`,`SIGKILL`]).optional()}),nv=B({addonId:P()}),rv=B({success:I(),path:P().optional(),pid:F().optional(),reason:P().optional()}),iv=B({cpuPercent:F(),memoryPercent:F(),memoryUsedMB:F(),memoryTotalMB:F(),diskPercent:F().optional(),temperature:F().optional(),gpuPercent:F().optional(),gpuMemoryPercent:F().optional()}),av={name:`metrics-provider`,scope:`system`,mode:`singleton`,methods:{collectSnapshot:K(R(),Y_),getCached:K(R(),Y_.nullable()),getCurrent:K(R(),iv),getDiskSpace:K(B({dirPath:P()}),X_),getGpuInfo:K(R(),G_.nullable()),getCpuTemperature:K(R(),F().nullable()),getProcessStats:K(B({pids:z(F())}),z(Z_)),listAddonInstances:K(R(),z(Q_).readonly()),getAddonStats:K(B({addonId:P()}),Z_.nullable()),listNodeProcesses:K(R(),z($_).readonly()),killProcess:K(ev,tv,{kind:`mutation`,auth:`admin`}),dumpHeapSnapshot:K(nv,rv,{kind:`mutation`,auth:`admin`})}},ov={name:`model-convert`,scope:`system`,mode:`singleton`,internal:!0,methods:{convert:K(B({sourceUrl:P(),metadata:cc,targets:z(sc).min(1).readonly(),calibrationRef:P().optional(),sessionId:P().optional()}),lc,{kind:`mutation`,auth:`admin`,timeoutMs:6e5})}},sv={name:`model-distributor`,scope:`system`,mode:`singleton`,internal:!0,methods:{distributeModel:K(B({nodeId:P(),modelId:P(),format:H(tc),entry:oc}),B({ok:I(),sha256:P(),bytes:F(),path:P()}),{kind:`mutation`,auth:`admin`})}},cv=H([`external`,`embedded`]),lv=H([`connected`,`disconnected`,`auth-failed`,`unreachable`,`tls-error`]),uv=B({id:P(),name:P(),url:P(),kind:cv,status:lv,latencyMs:F().nullable(),error:P().optional(),connectedClients:F().int().nonnegative().optional(),lastCheckedAt:F().optional()}),dv=B({url:P(),username:P().optional(),password:P().optional(),clientIdPrefix:P().optional()}),fv=B({name:P().min(1),url:P().regex(/^(mqtt|mqtts|ws|wss):\/\//,`URL must start with mqtt(s):// or ws(s)://`),username:P().optional(),password:P().optional(),clientIdPrefix:P().optional()}),pv=B({id:P()}),mv=B({id:P()}),hv=To(`ok`,[B({ok:U(!0),latencyMs:F()}),B({ok:U(!1),error:P()})]),gv=B({port:F().int().min(1).max(65535).default(1883),allowAnonymous:I().default(!1),username:P().optional(),password:P().optional()}),_v=B({id:P(),url:P()}),vv=B({brokerCount:F(),embeddedRunning:I()}),yv={name:`mqtt-broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:vv,kind:`poll`},methods:{listBrokers:K(R(),z(uv)),getBrokerConfig:K(mv,dv),addBroker:K(fv,pv,{kind:`mutation`}),removeBroker:K(mv,R(),{kind:`mutation`}),testConnection:K(mv,hv,{kind:`mutation`}),startEmbeddedBroker:K(gv,_v,{kind:`mutation`}),stopEmbeddedBroker:K(mv,R(),{kind:`mutation`}),getStatus:K(R(),vv)}},bv=B({url:P(),hostname:P(),port:F(),protocol:H([`http`,`https`])}),xv=B({connected:I(),endpoint:bv.nullable(),error:P().optional()}),Sv=bv.extend({id:P(),label:P(),mode:P().optional(),sourcePort:F().optional()}),Cv={name:`network-access`,scope:`system`,mode:`collection`,providerKind:`ingress`,methods:{start:K(R(),bv,{kind:`mutation`}),stop:K(R(),R(),{kind:`mutation`}),getEndpoint:K(R(),bv.nullable()),getStatus:K(R(),xv),listEndpoints:K(R(),z(Sv).readonly())}},wv=H([`image`,`video`,`gif`,`audio`,`icon`]),Tv=B({mediaType:wv,url:P().optional(),bytes:os(Uint8Array).optional(),mime:P().optional(),name:P().optional()}).refine(e=>e.url!==void 0||e.bytes!==void 0,{message:"Attachment requires either `url` or `bytes`"}),Ev=H([`text`,`markdown`,`html`]),Dv=B({id:P(),label:P(),url:P().optional()}),Ov=B({body:P(),title:P().optional(),format:Ev.default(`text`),priority:F().int().min(1).max(5).default(3),level:P().optional(),attachments:z(Tv).optional(),clickUrl:P().optional(),actions:z(Dv).optional(),sound:P().optional(),ttl:F().optional(),tag:P().optional(),deviceId:F().optional(),eventId:P().optional(),metadata:V(P(),L()).optional()}),kv=B({id:P(),label:P(),ordinal:F().int().min(1).max(5).nullable(),flags:B({critical:I().optional(),silent:I().optional(),noPush:I().optional()}).optional(),requires:z(P()).optional(),description:P().optional()}),Av=B({attachments:B({mediaTypes:z(wv),mode:H([`url`,`bytes`,`both`]),max:F().int().nonnegative(),maxBytes:F().int().positive().optional()}),actions:F().int().nonnegative(),levels:z(kv),format:z(Ev),clickUrl:I(),sound:I(),ttl:I(),bodyMaxLen:F().int().positive()}),jv=L(),Mv=B({kind:P(),label:P(),icon:P(),addonId:P(),configSchema:jv,supportsDiscovery:I(),caps:Av}),Nv=B({id:P(),name:P(),kind:P(),addonId:P(),enabled:I(),config:V(P(),L())}),Pv=B({kind:P(),suggestedName:P(),config:V(P(),L())}),Fv=B({level:P(),format:Ev,attachmentsSent:F().int().nonnegative(),actionsSent:F().int().nonnegative(),truncated:I(),dropped:z(P())}),Iv=B({success:I(),error:P().optional(),renderedAs:Fv.optional()}),Lv=Iv,Rv={name:`notification-output`,scope:`system`,mode:`collection`,methods:{listTargetKinds:K(B({}),z(Mv)),listTargets:K(B({}),z(Nv)),discoverTargets:K(B({kind:P(),config:V(P(),L()).optional()}),z(Pv)),send:K(B({targetId:P(),notification:Ov}),Iv,{kind:`mutation`}),testTarget:K(B({targetId:P(),sample:Ov.optional()}),Lv,{kind:`mutation`}),upsertTarget:K(B({target:Nv}),Nv,{kind:`mutation`}),deleteTarget:K(B({targetId:P()}),R(),{kind:`mutation`}),setTargetEnabled:K(B({targetId:P(),enabled:I()}),R(),{kind:`mutation`})}},zv=B({inputTokens:F(),outputTokens:F()}),Bv=H([`timeout`,`rate-limited`,`auth`,`refusal`,`bad-request`,`unavailable`,`no-profile`,`budget-exceeded`,`adapter-error`]),Vv=To(`ok`,[B({ok:U(!0),text:P(),model:P(),usage:zv,truncated:I(),latencyMs:F()}),B({ok:U(!1),code:Bv,message:P(),retryAfterMs:F().optional()})]),Hv=B({bytes:os(Uint8Array),mimeType:P()}),Uv=B({addonId:P().optional(),profileId:P().optional(),consumer:P(),system:P().optional(),prompt:P(),jsonSchema:V(P(),L()).optional(),maxTokens:F().int().positive().optional(),temperature:F().optional()}),Wv=To(`kind`,[B({kind:U(`catalog`),catalogId:P()}),B({kind:U(`url`),url:P(),sha256:P().optional()}),B({kind:U(`path`),path:P()})]),Gv=B({nodeId:P(),engine:H([`llama-cpp`]),model:Wv,contextSize:F().int().default(4096),gpuLayers:F().int().default(0),threads:F().int().optional(),parallel:F().int().default(1),autoStart:I().default(!1),idleStopMinutes:F().int().default(30)}),Kv=B({nodeId:P(),state:H([`stopped`,`downloading`,`starting`,`ready`,`crashed`,`failed`]),pid:F().optional(),port:F().optional(),modelPath:P().optional(),modelId:P().optional(),downloadProgress:F().min(0).max(1).optional(),lastError:P().optional(),crashesInWindow:F(),memoryBytes:F().optional(),vramBytes:F().optional()}),qv=B({file:P(),sizeBytes:F(),catalogId:P().optional(),installedAt:F().optional()}),Jv=B({nodeId:P(),modelsBytes:F(),freeBytes:F().optional()}),Yv={name:`llm-runtime`,scope:`system`,mode:`singleton`,internal:!0,methods:{complete:K(Uv.extend({images:z(Hv).optional(),runtime:Gv,timeoutMs:F().int().positive().optional()}),Vv,{kind:`mutation`}),ensureStarted:K(B({runtime:Gv}),Kv,{kind:`mutation`,auth:`admin`}),stop:K(B({}),R(),{kind:`mutation`,auth:`admin`}),status:K(B({}),Kv),installModel:K(B({model:Wv}),R(),{kind:`mutation`,auth:`admin`}),deleteModel:K(B({file:P()}),R(),{kind:`mutation`,auth:`admin`}),listLocalModels:K(B({}),z(qv)),getDiskUsage:K(B({}),Jv)}},Xv=H([`openai-compatible`,`openai`,`anthropic`,`google`,`managed-local`]),Zv=B({id:P(),name:P(),kind:Xv,addonId:P(),enabled:I(),model:P(),baseUrl:P().optional(),apiKey:P().optional(),supportsVision:I(),temperature:F().min(0).max(2).optional(),maxTokens:F().int().positive().optional(),timeoutMs:F().int().positive().default(6e4),extraHeaders:V(P(),P()).optional(),runtime:Gv.optional()}),Qv=L(),$v=B({kind:Xv,label:P(),icon:P(),addonId:P(),configSchema:Qv}),ey=Co([B({consumer:P()}),B({purpose:H([`text`,`vision`])})]),ty=B({selector:ey,profileId:P()}),ny=B({day:P(),consumer:P(),profileId:P(),calls:F(),okCalls:F(),errorCalls:F(),inputTokens:F(),outputTokens:F(),avgLatencyMs:F()}),ry=B({id:P(),label:P(),family:P(),purpose:H([`text`,`vision`]),url:P(),sha256:P(),sizeBytes:F(),quantization:P(),minRamBytes:F(),contextSizeDefault:F().int(),mmprojUrl:P().optional()}),iy=B({nodeId:P(),reachable:I(),status:Kv.optional(),disk:Jv.optional(),error:P().optional()}),ay=Uv.extend({images:z(Hv).min(1)}),oy=B({addonId:P(),profileId:P()}),sy={name:`llm`,scope:`system`,mode:`collection`,internal:!1,providerKind:`ai`,nodeIdMode:`data`,methods:{generate:K(Uv,Vv,{kind:`mutation`}),generateVision:K(ay,Vv,{kind:`mutation`}),listProfileKinds:K(B({}),z($v)),listProfiles:K(B({}),z(Zv)),upsertProfile:K(B({profile:Zv}),Zv,{kind:`mutation`,auth:`admin`}),deleteProfile:K(oy,R(),{kind:`mutation`,auth:`admin`}),testProfile:K(oy,Vv,{kind:`mutation`,auth:`admin`}),listModels:K(oy,z(P())),getDefaults:K(B({}),z(ty)),setDefault:K(B({selector:ey,profileId:P().nullable()}),R(),{kind:`mutation`,auth:`admin`}),getUsage:K(B({since:F().optional(),until:F().optional(),consumer:P().optional(),profileId:P().optional()}),z(ny)),listModelCatalog:K(B({}),z(ry)),listRuntimeNodes:K(B({}),z(iy)),listNodeModels:K(B({nodeId:P()}),z(qv)),installModel:K(B({nodeId:P(),model:Wv}),R(),{kind:`mutation`,auth:`admin`}),deleteModel:K(B({nodeId:P(),file:P()}),R(),{kind:`mutation`,auth:`admin`}),getRuntimeStatus:K(oy,Kv),startRuntime:K(oy,Kv,{kind:`mutation`,auth:`admin`}),stopRuntime:K(oy,R(),{kind:`mutation`,auth:`admin`})}},cy=H([`view`,`create`,`delete`]),ly=Co([U(`*`),z(P())]),uy=V(P(),Co([U(`*`),z(P())])),dy=H([`device`,`system`]),fy=To(`type`,[B({type:U(`category`),target:dy,access:z(cy).min(1)}),B({type:U(`capability`),target:P(),access:z(cy).min(1)}),B({type:U(`addon`),target:P(),access:z(cy).min(1)}),B({type:U(`device`),targets:z(P()).min(1),access:z(cy).min(1)})]);B({id:P(),username:P(),passwordHash:P(),isAdmin:I().default(!1),allowedProviders:ly,allowedDevices:uy,scopes:z(fy).default([]),createdAt:F(),updatedAt:F()}),B({id:P(),label:P(),isAdmin:I().default(!1),allowedProviders:ly,allowedDevices:uy,tokenHash:P(),tokenPrefix:P(),createdAt:F(),lastUsedAt:F().optional()}),B({id:P(),userId:P(),name:P(),tokenHash:P(),tokenPrefix:P(),scopes:z(fy),expiresAt:F().nullish(),lastUsedAt:F().nullish(),createdAt:F()});var py=B({integrationId:P(),displayName:P(),requestedScopes:z(fy),allowedRedirectPrefixes:z(P()).min(1),hubUrl:P().optional()}),my={name:`oauth-integration`,scope:`system`,mode:`collection`,internal:!0,methods:{getDescriptor:K(R(),py)}},hy=H([`new`,`entered`,`left`,`moving`,`idle`]),gy=H([`motion`,`object`,`audio`]),_y=To(`kind`,[Zf,Qf]),vy=H([`motion`,`audio`,`person`,`vehicle`,`animal`,`door`,`pir`,`smoke`,`water`,`button`,`package`,`generic`]),yy=H([`motion`,`audio`,`detection`,`sensor`,`control`,`custom`,`package`]),by=H([`macro`,`sub`]),xy=B({kind:P(),labelKey:P(),label:P(),color:P(),iconId:P(),icon:vy,category:yy,parentKind:P().nullable(),level:by,source:B({capName:P(),deviceId:F()})}),Sy=B({id:P(),deviceId:F(),sourceDeviceId:F(),kind:P(),value:V(P(),L()).nullable(),timestamp:F()}),Cy=B({x:F(),y:F(),timestamp:F(),bbox:Pd}),wy=B({timestamp:F(),position:Cy,mediaKey:P()}),Ty=B({minX:F(),minY:F(),maxX:F(),maxY:F()}),Ey=H([`full`,`slim`]),Dy=B({label:P(),peakScore:F(),count:F(),firstAt:F(),lastAt:F()}),Oy=H([`pipeline`,`sensor`]),ky=B({trackId:P(),deviceId:F(),className:P(),label:P().optional(),producingDeviceName:P().optional(),source:Oy.optional(),firstSeen:F(),lastSeen:F(),positions:z(Cy).readonly(),snapshots:z(wy).readonly(),zonesVisited:z(P()).readonly(),classes:z(P()).readonly().optional(),totalDistance:F(),state:hy,active:I(),importance:F().optional(),bestEventId:P().optional(),importanceReason:P().optional(),audioLabels:z(Dy).readonly().optional(),envelope:Ty.optional()}),Ay={id:P(),deviceId:F(),timestamp:F()},jy=B({...Ay,kind:U(`motion`),regionCount:F(),regions:z(B({bbox:Pd,pixelCount:F(),intensity:F()})).readonly().optional(),frameWidth:F().optional(),frameHeight:F().optional(),mediaUrl:P().optional()}),My=H([`pipeline`,`onboard`]),Ny=B({...Ay,kind:U(`object`),source:My.optional(),frameId:P().optional(),trackId:P().optional(),className:P(),label:P().optional(),confidence:F().optional(),bbox:Pd.optional(),zones:z(P()).readonly().optional(),state:hy.optional(),frameWidth:F().optional(),frameHeight:F().optional(),mediaKey:P().optional(),keyFrameMediaKey:P().optional(),mediaUrl:P().optional(),importance:F().optional()}),Py=B({...Ay,kind:U(`audio`),rms:F(),dbfs:F(),classification:B({className:P(),originalClass:P().optional(),score:F()}).optional(),mediaUrl:P().optional()}),Fy=H([`crop`,`thumbnail`,`snapshot`,`firstFrame`,`lastFrame`,`fullFrame`,`fullFrameBoxed`,`faceCrop`,`plateCrop`,`keyFrame`,`keyFrameSmall`,`thumbnailSmall`]),Iy=B({key:P(),kind:Fy,base64:P(),sizeBytes:F(),timestamp:F()}),Ly=1e3,Ry=5e3,zy=B({deviceId:F(),since:F().optional(),until:F().optional(),limit:F().int().min(1).max(Ry).default(Ly),projection:H([`full`,`slim`]).optional()}),By=zy.extend({classFilter:P().optional()}),Vy=B({deviceIds:z(F()),since:F().optional(),until:F().optional(),limit:F().int().min(1).max(1e3).default(200),cursor:P().optional(),projection:Ey.optional()}),Hy=B({tracks:z(ky).readonly(),nextCursor:P().nullable()}),Uy=B({deviceId:F(),since:F(),until:F(),limit:F().int().min(1).max(200).default(50),minImportance:F().min(0).max(1).optional(),classFilter:P().optional()}),Wy=B({id:P(),trackId:P(),timestamp:F(),className:P(),label:P().optional(),importance:F(),bestEventId:P(),windowMs:F().optional()});B({trackId:P(),className:P(),confidence:F(),bbox:Pd,zones:z(P()).readonly(),state:hy});var Gy=xo({id:P(),kind:H([`first-level`,`detail`]),macroClass:P(),score:F(),bbox:B({x:F(),y:F(),width:F(),height:F()}),labels:z(xo({label:P(),score:F()})).readonly(),parentId:P().optional()}),Ky=Ny.extend({score:F()}),qy=B({text:P(),deviceId:F().optional(),since:F().optional(),until:F().optional(),classFilter:P().optional(),limit:F().default(50),minScore:F().min(0).max(1).default(.2)}),Jy=B({tracks:F().int(),events:F().int(),media:F().int(),faces:F().int(),plates:F().int(),embeddings:F().int()}),Yy=B({deviceId:F(),rows:F().int(),bytes:F().int()}),Xy=B({totalRows:F().int(),totalBytes:F().int(),devices:z(Yy).readonly()}),Zy=B({motion:F().int(),object:F().int(),audio:F().int()}),Qy={name:`pipeline-analytics`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{getActiveTracks:K(B({deviceId:F()}),z(ky).readonly()),getTrack:K(B({deviceId:F(),trackId:P()}),ky.nullable()),listTracks:K(B({deviceId:F(),since:F().optional(),until:F().optional(),limit:F().optional(),zone:_y.optional(),projection:Ey.optional()}),z(ky).readonly()),listRecentTracks:K(Vy,Hy),clearTracks:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`}),getMotionEvents:K(zy,z(jy).readonly()),getObjectEvents:K(By,z(Ny).readonly()),getAudioEvents:K(zy,z(Py).readonly()),listEventKinds:K(B({deviceId:F()}),z(xy).readonly()),getSensorEvents:K(B({deviceId:F(),since:F().optional(),until:F().optional(),kinds:z(P()).optional(),limit:F().int().min(1).max(Ry).default(Ly)}),z(Sy).readonly()),getKeyEvents:K(Uy,z(Wy).readonly()),getEventDensity:K(B({deviceId:F(),since:F(),until:F(),bucketMs:F().int().positive()}),z(B({bucketStart:F(),motion:F().int(),object:F().int(),audio:F().int()})).readonly()),pruneEventsBefore:K(B({deviceId:F(),cutoffMs:F()}),B({motion:F().int(),object:F().int(),audio:F().int()}),{kind:`mutation`,auth:`admin`}),pruneTracksBefore:K(B({deviceId:F(),cutoffMs:F()}),Jy,{kind:`mutation`,auth:`admin`}),wipeAllAnalytics:K(B({deviceId:F()}),Jy,{kind:`mutation`,auth:`admin`}),deleteTracks:K(B({deviceId:F(),trackIds:z(P()).min(1)}),B({deleted:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),getEventStoreFootprint:K(B({}),Xy,{kind:`query`,auth:`admin`}),pruneEvents:K(B({olderThanMs:F(),reason:Tc.optional()}),Zy,{kind:`mutation`,auth:`admin`}),deleteDeviceEvents:K(B({deviceId:F()}),Zy,{kind:`mutation`,auth:`admin`}),listOpsLog:K(Dc,z(Ec).readonly(),{kind:`query`,auth:`admin`}),getEventMedia:K(B({eventId:P(),kind:Fy.optional()}),z(Iy).readonly()),getTrackMedia:K(B({trackId:P()}),z(Iy).readonly()),searchObjectEvents:K(qy,z(Ky).readonly())},events:{onFrameTracked:{data:B({deviceId:F(),timestamp:F(),frameWidth:F(),frameHeight:F(),detections:z(Gy).readonly()})},onTrackStarted:{data:B({deviceId:F(),trackId:P(),className:P()})},onTrackEnded:{data:B({deviceId:F(),trackId:P(),className:P(),durationMs:F()})},onDetectionEvent:{data:B({deviceId:F(),kind:gy,eventId:P(),timestamp:F()})}}},$y={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 eb(e){return $y[e]??`generic`}var tb={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`,switch:`switch`,button:`button`,doorbell:`doorbell`};function nb(e,t){let n=Kc[t];if(n===void 0)throw Error(`EVENT_KIND_BY_CAP: cap '${e}' maps to unknown taxonomy kind '${t}'`);return{...n,icon:eb(n.iconId)}}Object.freeze(Object.fromEntries(Object.entries(tb).map(([e,t])=>[e,nb(e,t)])));var rb=B({engine:Gd.optional(),steps:z(nf).readonly(),audio:B({engine:Gd.optional(),modelId:P().optional(),enabled:I(),settings:V(P(),L()).readonly().optional()}).nullable().optional()}),ib=B({id:P(),name:P(),description:P().optional(),config:rb,createdAt:P(),updatedAt:P()}),ab=B({modelId:P().optional(),settings:V(P(),L()).optional(),jumpDeviceKey:P().optional()}),ob=B({maxCameras:F().int().nonnegative().nullable().default(null),detectWeight:F().positive().optional(),detect:I().optional(),decode:I().optional(),audio:I().optional(),ingest:I().optional(),reachableHost:P().optional(),inferenceDevices:V(P(),B({enabled:I(),weight:F().positive().optional(),maxSessions:F().int().positive().optional(),steps:V(P(),ab).optional()})).optional()}),sb=B({steps:z(nf).readonly(),audio:B({modelId:P(),enabled:I()}).nullable()}),cb=B({modelId:P().optional(),settings:V(P(),L()).readonly().optional()}),lb=B({pinnedAgentNodeId:P().optional(),stepToggles:V(P(),I()).optional(),stepOverridesByDevice:V(P(),V(P(),V(P(),cb))).optional(),pipelineByAgent:V(P(),sb).optional()}),ub=B({deviceId:F(),agentNodeId:P(),pinned:I(),reason:H([`manual`,`capacity`,`hardware-affinity`,`failover`,`rebalance`]),assignedAt:F()}),db=B({nodeId:P(),online:I(),load:Vf,score:F(),decodeHwaccel:P().nullable()}),fb=B({totalAgents:F(),onlineAgents:F(),totalCameras:F(),attachedCameras:F(),activeCameras:F(),avgInferenceTimeMs:F(),queueDepth:F()}),pb=V(P(),P()),mb=B({ownerNodeId:P(),reachableHost:P().optional(),configIssue:P().optional()}),hb=B({streams:z(B({camStreamId:P(),codec:P(),width:F(),height:F(),fps:F(),kind:P()})).readonly()}),gb=B({detectionNodeId:P().nullable(),decoderNodeId:P().nullable(),audioNodeId:P().nullable(),sourceNodeId:P().nullable(),pinned:B({detection:I(),decoder:I(),audio:I()}),reasons:B({detection:P().optional(),decoder:P().optional(),audio:P().optional()})}),_b=B({profiles:z(B({profile:P(),status:P(),codec:P(),width:F(),height:F(),subscribers:F(),inFps:F(),outFps:F()})).readonly(),webrtcSessions:F(),rtspRestream:I()}),vb=B({framesWritten:F(),getFrameHits:F(),getFrameMisses:F(),budgetMb:F()}),yb=B({nodeId:P(),formats:z(P()).readonly(),sessionCount:F(),shm:vb}),bb=B({enabled:I(),fps:F()}),xb=B({state:H([`idle`,`installing`,`verifying`,`ready`,`failed`]),error:P().optional()}),Sb=H([`idle`,`watching`,`active`]),Cb=B({nodeId:P(),engine:B({backend:P(),device:P()}),phase:Sb,configuredFps:F(),actualFps:F(),queueDepth:F(),avgInferenceMs:F(),provisioning:xb}),wb=B({nodeId:P(),enabled:I()}),Tb=B({mode:H([`off`,`continuous`,`events`]),active:I(),storageBytes:F()}),Eb=B({deviceId:F(),assignment:gb,source:hb,broker:_b.nullable(),decoder:yb.nullable(),motion:bb.nullable(),detection:Cb.nullable(),audio:wb.nullable(),recording:Tb.nullable(),fetchedAt:F()}),Db=B({key:P(),backend:P(),device:P(),format:H(tc),available:I(),enabled:I(),weight:F(),maxSessions:F().nullable(),defaultModelId:P(),steps:V(P(),ab).optional()}),Ob=B({nodeId:P(),reachable:I(),devices:z(Db).readonly()}),kb={name:`pipeline-orchestrator`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,exposesDeviceSettings:!0,methods:{assignPipeline:K(B({deviceId:F(),agentNodeId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignPipeline:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setPipelineDevicePin:K(B({deviceId:F(),deviceKey:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getPipelineDevicePin:K(B({deviceId:F()}),B({deviceKey:P().nullable()})),rebalance:K(R(),B({migrated:F()}),{kind:`mutation`,auth:`admin`}),getPipelineAssignments:K(R(),z(ub).readonly()),getPipelineAssignment:K(B({deviceId:F()}),ub.nullable()),getAgentLoad:K(R(),z(db).readonly()),getGlobalMetrics:K(R(),fb),getCameraMetrics:K(B({deviceId:F()}),Vd.nullable()),getCapabilityBindings:K(B({nodeId:P()}),pb),setCapabilityBinding:K(B({nodeId:P(),capName:P(),addonId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getIngestOwner:K(R(),mb),assignAudio:K(B({deviceId:F(),nodeId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),unassignAudio:K(B({deviceId:F()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getAudioAssignment:K(B({deviceId:F()}),B({nodeId:P(),pinned:I(),assignedAt:F()}).nullable()),getAudioNodeLoad:K(R(),z(B({nodeId:P(),deviceCount:F()}))),getAudioAssignments:K(R(),z(B({deviceId:F(),nodeId:P(),pinned:I(),assignedAt:F()}))),getAgentSettings:K(B({agentNodeId:P()}),ob.nullable()),listAgentSettings:K(R(),z(B({nodeId:P(),settings:ob})).readonly()),removeAgentSettings:K(B({agentNodeId:P()}),B({success:I(),removed:I()}),{kind:`mutation`,auth:`admin`}),setAgentMaxCameras:K(B({agentNodeId:P(),maxCameras:F().int().nonnegative().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentDetectWeight:K(B({agentNodeId:P(),detectWeight:F().positive().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentCapabilities:K(B({agentNodeId:P(),detect:I().nullable().optional(),audio:I().nullable().optional(),ingest:I().nullable().optional()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentReachableHost:K(B({agentNodeId:P(),reachableHost:P().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setAgentInferenceDevices:K(B({agentNodeId:P(),inferenceDevices:V(P(),B({enabled:I(),weight:F().positive().optional(),maxSessions:F().int().positive().optional(),steps:V(P(),ab).optional()}))}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getNodeInferenceDevices:K(B({nodeId:P()}),Ob),resetNodePipelineDefaults:K(B({agentNodeId:P()}),B({success:U(!0),effectiveModelId:P().nullable(),clearedCameraOverrides:F()}),{kind:`mutation`,auth:`admin`}),getCameraSettings:K(B({deviceId:F()}),lb.nullable()),setCameraStepToggle:K(B({deviceId:F(),addonId:P(),enabled:I().nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getCameraStepOverrides:K(B({deviceId:F()}),V(P(),V(P(),V(P(),cb))).nullable()),setCameraStepOverride:K(B({deviceId:F(),agentNodeId:P(),deviceKey:P(),addonId:P(),patch:cb.nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),setCameraPipelineForAgent:K(B({deviceId:F(),agentNodeId:P(),pipeline:sb.nullable()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),resolvePipeline:K(B({deviceId:F(),agentNodeId:P().optional()}),rb),getCameraStatus:K(B({deviceId:F()}),Eb),getCameraStatuses:K(B({deviceIds:z(F()).optional()}),z(Eb).readonly()),listTemplates:K(R(),z(ib).readonly()),saveTemplate:K(B({name:P(),description:P().optional(),config:rb}),ib,{kind:`mutation`,auth:`admin`}),updateTemplate:K(B({id:P(),name:P().optional(),description:P().optional(),config:rb.optional()}),ib,{kind:`mutation`,auth:`admin`}),deleteTemplate:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`})}},Ab=H([`workspace`,`baked`,`data-root`]),jb=H([`idle`,`checking`,`staging`,`pending-restart`,`awaiting-confirmation`]),Mb=B({fromVersion:P(),toVersion:P().nullable(),atMs:F(),reason:P()}),Nb=B({packageName:P(),runningVersion:P().nullable(),nodeRuntimeVersion:P().nullable(),activeVersion:P().nullable(),previousVersion:P().nullable(),seedVersion:P().nullable(),latestVersion:P().nullable(),updateAvailable:I(),bootMode:Ab,updateState:jb,pendingVersion:P().nullable(),rolledBack:Mb.nullable(),stateFileCorrupt:I(),lastCheckedAtMs:F().nullable()}),Pb=B({packageName:P(),runningVersion:P().nullable(),latestVersion:P().nullable(),updateAvailable:I(),checkedAtMs:F(),error:P().nullable()}),Fb=B({accepted:I(),targetVersion:P().nullable(),restarting:I(),message:P()}),Ib={name:`server-management`,scope:`system`,mode:`singleton`,methods:{getServerPackageStatus:K(R(),Nb,{auth:`admin`}),checkServerUpdate:K(R(),Pb,{kind:`mutation`,auth:`admin`}),applyServerUpdate:K(B({version:P().optional()}),Fb,{kind:`mutation`,auth:`admin`,timeoutMs:16*6e4}),rollbackServerUpdate:K(R(),Fb,{kind:`mutation`,auth:`admin`}),restartServer:K(R(),Fb,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},Lb=B({where:V(P(),L()).optional(),whereIn:V(P(),z(L())).optional(),whereBetween:V(P(),ko([L(),L()])).optional(),orderBy:B({field:P(),direction:H([`asc`,`desc`])}).optional(),limit:F().optional(),offset:F().optional()}),Rb=B({id:P(),data:V(P(),L())}),zb=B({name:P(),type:H([`TEXT`,`INTEGER`,`REAL`,`JSON`,`BOOLEAN`]),primaryKey:I().optional(),notNull:I().optional(),unique:I().optional()}),Bb=B({name:P(),columns:z(P()).readonly(),unique:I().optional()}),Vb={name:`settings-store`,scope:`system`,mode:`singleton`,methods:{get:K(B({namespace:P().optional(),collection:P(),key:P()}),L()),set:K(B({namespace:P().optional(),collection:P(),key:P(),value:L()}),R(),{kind:`mutation`}),query:K(B({namespace:P().optional(),collection:P(),filter:Lb.optional()}),z(Rb).readonly()),insert:K(B({namespace:P().optional(),collection:P(),record:Rb}),R(),{kind:`mutation`}),update:K(B({namespace:P().optional(),collection:P(),id:P(),data:V(P(),L())}),R(),{kind:`mutation`}),delete:K(B({namespace:P().optional(),collection:P(),key:P()}),R(),{kind:`mutation`}),count:K(B({namespace:P().optional(),collection:P(),filter:Lb.optional()}),F()),histogram:K(B({namespace:P().optional(),collection:P(),field:P(),bucketSize:F().int().positive(),origin:F().int(),filter:Lb.optional()}),z(B({bucket:F().int(),count:F().int()})).readonly()),isEmpty:K(B({namespace:P().optional(),collection:P()}),I()),declareCollection:K(B({namespace:P().optional(),collection:P(),columns:z(zb).readonly(),indexes:z(Bb).readonly().optional()}),R(),{kind:`mutation`})}},Hb=Ra(),Ub=B({to:Co([Hb,z(Hb).min(1)]),cc:z(Hb).optional(),bcc:z(Hb).optional(),from:P().optional(),replyTo:P().optional(),subject:P(),text:P(),html:P().optional()}),Wb=B({messageId:P(),accepted:z(Hb).default([]),rejected:z(Hb).default([])}),Gb=B({ready:I(),host:P(),error:P().optional(),lastVerifiedAt:F().optional()}),Kb={name:`smtp-provider`,scope:`system`,mode:`collection`,internal:!0,providerKind:`email`,methods:{sendEmail:K(Ub,Wb,{kind:`mutation`,auth:`admin`,access:`create`}),verify:K(R(),Gb,{kind:`mutation`,auth:`admin`,access:`view`}),getStatus:K(R(),Gb,{auth:`admin`})}},qb=B({base64:P(),contentType:P()}),Jb=B({lastCapturedAt:F().nullable(),cacheAgeMs:F().nullable(),lastBytes:F().nullable(),lastStreamId:P().nullable()}),Yb={name:`snapshot`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[W.Camera],exposesDeviceSettings:!0,methods:{getSnapshot:K(B({deviceId:F(),streamId:P().optional(),force:I().optional()}),qb.nullable()),invalidateCache:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`}),getSnapshotOverview:Ns(B({deviceIds:z(F()).min(1).max(200)}),z(B({deviceId:F(),lastCapturedAt:F().nullable(),cacheAgeMs:F().nullable(),etag:P().nullable()})))},status:{schema:Jb,kind:`poll`}},Xb=B({userId:P(),username:P(),isAdmin:I(),provider:P(),email:P().optional(),displayName:P().optional(),hubUrl:P().optional(),scopes:z(fy).optional(),redirectUri:P().optional(),integrationId:P().optional(),jti:P().optional(),sessionId:P().optional()}),Zb={name:`sso-bridge`,scope:`system`,mode:`singleton`,internal:!0,methods:{signBridgeToken:K(B({claims:Xb,ttlSec:F().int().positive().optional()}),B({token:P()})),verifyBridgeToken:K(B({token:P()}),Xb.nullable())}},Qb=To(`shouldSaveDiskSpace`,[B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!0),minFreePercent:F().min(0).max(100)}),B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!1),minFreePercent:U(null)})]),$b={name:`storage`,scope:`system`,mode:`singleton`,methods:{resolve:K(B({location:Ac,relativePath:P()}),P()),write:K(B({location:Ac,relativePath:P(),data:os(Uint8Array)}),R(),{kind:`mutation`}),read:K(B({location:Ac,relativePath:P()}),os(Uint8Array)),exists:K(B({location:Ac,relativePath:P()}),I()),list:K(B({location:Ac,prefix:P().optional()}),z(P()).readonly()),delete:K(B({location:Ac,relativePath:P()}),R(),{kind:`mutation`}),getAvailableSpace:K(B({location:Ac}),F().nullable()),beginUpload:K(B({location:Ac,relativePath:P(),sizeBytes:F().optional()}),B({uploadId:P()}),{kind:`mutation`}),writeChunk:K(B({uploadId:P(),offset:F(),data:os(Uint8Array)}),R(),{kind:`mutation`}),finalizeUpload:K(B({uploadId:P()}),R(),{kind:`mutation`}),abortUpload:K(B({uploadId:P()}),R(),{kind:`mutation`}),beginDownload:K(B({location:Ac,relativePath:P()}),B({downloadId:P(),sizeBytes:F()}),{kind:`mutation`}),readChunk:K(B({downloadId:P(),offset:F(),length:F()}),os(Uint8Array)),endDownload:K(B({downloadId:P()}),R(),{kind:`mutation`}),listLocations:K(B({type:Oc.optional()}),z(kc).readonly()),getDefaultLocation:K(B({type:Oc}),kc.nullable()),listLocationDeclarations:K(R(),z(jc).readonly()),upsertLocation:K(kc.omit({createdAt:!0,updatedAt:!0}),kc,{kind:`mutation`,auth:`admin`}),deleteLocation:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),testLocation:K(B({id:P()}),B({ok:I(),error:P().optional()}),{auth:`admin`}),listProviders:K(R(),z(Qb).readonly()),testConfig:K(B({providerId:P(),config:V(P(),L())}),B({ok:I(),error:P().optional()}),{auth:`admin`})}},ex=B({bytes:F().int().nonnegative()}),tx=B({reclaimedBytes:F().int().nonnegative(),exhausted:I()}),nx={name:`storage-evictable`,scope:`system`,mode:`collection`,internal:!0,methods:{getEvictableUsage:K(B({locationId:P()}),ex),evict:K(B({locationId:P(),targetBytes:F().int().positive()}),tx,{kind:`mutation`})}},rx=To(`shouldSaveDiskSpace`,[B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!0),minFreePercent:F().min(0).max(100)}),B({providerId:P().min(1),displayName:P().min(1),configSchema:L(),nodeLocal:I(),shouldSaveDiskSpace:U(!1),minFreePercent:U(null)})]),ix=B({ok:I(),error:P().optional()}),ax=B({location:kc,relativePath:P(),sizeBytes:F().optional()}),ox=B({uploadId:P()}),sx=B({uploadId:P(),offset:F(),data:os(Uint8Array)}),cx=B({uploadId:P()}),lx=B({uploadId:P()}),ux=B({location:kc,relativePath:P()}),dx=B({downloadId:P(),sizeBytes:F()}),fx=B({downloadId:P(),offset:F(),length:F()}),px=B({downloadId:P()}),mx={name:`storage-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{getProviderInfo:K(R(),rx),testLocation:K(B({config:V(P(),L())}),ix,{auth:`admin`}),resolve:K(B({location:kc,relativePath:P()}),P()),write:K(B({location:kc,relativePath:P(),data:os(Uint8Array)}),R(),{kind:`mutation`}),read:K(B({location:kc,relativePath:P()}),os(Uint8Array)),exists:K(B({location:kc,relativePath:P()}),I()),list:K(B({location:kc,prefix:P().optional()}),z(P()).readonly()),delete:K(B({location:kc,relativePath:P()}),R(),{kind:`mutation`}),getAvailableSpace:K(B({location:kc}),F().nullable()),beginUpload:K(ax,ox,{kind:`mutation`}),writeChunk:K(sx,R(),{kind:`mutation`}),finalizeUpload:K(cx,R(),{kind:`mutation`}),abortUpload:K(lx,R(),{kind:`mutation`}),beginDownload:K(ux,dx,{kind:`mutation`}),readChunk:K(fx,os(Uint8Array)),endDownload:K(px,R(),{kind:`mutation`})}},hx=B({urls:Co([P(),z(P())]),username:P().optional(),credential:P().optional()}),gx={name:`turn-provider`,scope:`system`,mode:`collection`,methods:{getTurnServers:K(R(),z(hx).readonly())}},_x=B({credentialId:P(),label:P(),createdAt:F(),lastUsedAt:F().nullable(),transports:z(P()).default([])}),vx={name:`user-passkeys`,scope:`system`,mode:`collection`,internal:!0,methods:{beginRegistration:K(B({userId:P(),username:P()}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,auth:`admin`,access:`create`}),finishRegistration:K(B({userId:P(),response:V(P(),L()),label:P()}),B({success:U(!0),credentialId:P()}),{kind:`mutation`,auth:`admin`,access:`create`}),beginAuthentication:K(B({userId:P().optional()}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,access:`view`}),finishAuthentication:K(B({userId:P(),response:V(P(),L())}),B({verified:I()}),{kind:`mutation`,access:`view`}),beginDiscoverableAuthentication:K(B({}),B({optionsJSON:V(P(),L())}),{kind:`mutation`,access:`view`}),finishDiscoverableAuthentication:K(B({response:V(P(),L())}),B({verified:I(),userId:P().nullable()}),{kind:`mutation`,access:`view`}),listPasskeys:K(B({userId:P()}),z(_x),{auth:`admin`}),removePasskey:K(B({userId:P(),credentialId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getSecondFactorPreference:K(B({userId:P()}),B({enabled:I()}),{auth:`admin`}),setSecondFactorPreference:K(B({userId:P(),enabled:I()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`})}},yx=B({id:P(),source:P(),kind:H([`motion`,`object`,`audio`,`native`]),timeRange:B({startMs:F(),endMs:F()}),thumbnail:P().optional()}),bx=B({playbackUrl:P(),playbackEndpoints:z(P()).optional(),token:P().optional()}),xx={name:`videoclips`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,methods:{listClips:K(B({deviceId:F(),since:F(),until:F(),limit:F().int().positive().optional()}),z(yx).readonly(),{kind:`query`,auth:`admin`}),getClipPlayback:K(B({deviceId:F(),clipId:P()}),bx,{kind:`query`,auth:`admin`})}},Sx=B({viewportWidth:F().int().positive().optional(),viewportHeight:F().int().positive().optional(),devicePixelRatio:F().positive().optional(),downlinkMbps:F().nonnegative().optional(),prefersTier:P().optional()}).partial(),Cx=To(`kind`,[B({kind:U(`adaptive`)}),B({kind:U(`profile`),profile:ps}),B({kind:U(`cam-stream`),camStreamId:P().min(1)})]),wx=B({id:P(),label:P(),target:Cx,codec:P().nullable(),resolution:B({width:F(),height:F()}).nullable(),status:H([`idle`,`connecting`,`streaming`,`error`,`stopped`]).nullable(),inputFps:F().nullable(),decodeFps:F().nullable(),bitrateKbps:F().nullable()}),Tx={name:`webrtc-session`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,preferredProvider:`stream-broker`,deviceTypes:[W.Camera],methods:{listStreams:K(B({deviceId:F().int().nonnegative()}),z(wx)),createSession:K(B({deviceId:F().int().nonnegative(),target:Cx,hints:Sx.optional(),relayOnly:I().optional(),consumerAttribution:Ql.optional()}),B({sessionId:P(),sdpOffer:P()}),{kind:`mutation`}),handleOffer:K(B({deviceId:F().int().nonnegative(),target:Cx.optional(),sdpOffer:P(),sessionId:P().optional(),relayOnly:I().optional(),nonTrickle:I().optional(),disableTurn:I().optional(),disableIpv6:I().optional(),consumerAttribution:Ql.optional(),hints:Sx.optional()}),B({sessionId:P(),sdpAnswer:P()}),{kind:`mutation`}),handleAnswer:K(B({deviceId:F().int().nonnegative(),sessionId:P(),sdpAnswer:P()}),R(),{kind:`mutation`}),addIceCandidate:K(B({deviceId:F().int().nonnegative(),sessionId:P(),candidate:P(),sdpMid:P().nullable().optional(),sdpMLineIndex:F().int().nullable().optional()}),R(),{kind:`mutation`}),getIceCandidates:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),B({candidates:z(B({candidate:P(),sdpMid:P().nullable(),sdpMLineIndex:F().int().nullable()})),done:I()}),{kind:`query`}),closeSession:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),R(),{kind:`mutation`}),hasAdaptiveBitrate:K(B({deviceId:F().int().nonnegative(),profile:ps}),I()),getSessionState:K(B({deviceId:F().int().nonnegative(),sessionId:P()}),B({pendingRenegotiation:B({target:Cx,epoch:F()}).nullable()}))},mount:{kind:`server-provided`}},Ex=B({childDeviceIds:z(F()).readonly(),hiddenChildIds:z(F()).readonly()}),Dx={name:`accessories`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Hub,W.Switch,W.Light,W.Sensor,W.Thermostat,W.Cover,W.Lock,W.Fan,W.MediaPlayer,W.AlarmPanel,W.Generic],methods:{setChildHidden:K(B({deviceId:F().int().nonnegative(),childDeviceId:F().int().nonnegative(),hidden:I()}),R(),{kind:`mutation`,auth:`admin`})},events:{onAccessoriesChanged:{data:B({deviceId:F(),childDeviceIds:z(F()).readonly(),hiddenChildIds:z(F()).readonly()})},onChildVisibilityChanged:{data:B({deviceId:F(),childDeviceId:F(),hidden:I()})}},status:{schema:Ex,kind:`command-driven`}},Ox=H([`install`,`update`,`uninstall`,`restart`]),kx=H([`queued`,`fetching`,`staged`,`validating`,`applying`,`restarting`,`applied`,`done`,`failed`,`skipped`]),Ax=H([`framework`,`addon`]),jx=B({tsMs:F(),nodeId:P(),packageName:P(),phase:kx,message:P()}),Mx=B({taskId:P(),nodeId:P(),packageName:P(),fromVersion:P().nullable(),toVersion:P(),target:Ax,phase:kx,stagedPath:P().nullable(),attempts:F(),steps:z(jx),error:P().nullable(),startedAtMs:F().nullable(),finishedAtMs:F().nullable()}),Nx=H([`running`,`completed`,`failed`,`partially-failed`,`cancelled`]),Px=H([`single`,`bulk`,`cluster`]),Fx=B({jobId:P(),kind:Ox,createdAtMs:F(),createdBy:P(),scope:Px,tasks:z(Mx),state:Nx,schemaVersion:U(1)}),Ix=H([`debug`,`info`,`warn`,`error`]),Lx=H([`off`,`latest`,`beta`]),Rx=H([`off`,`latest`,`beta`,`inherit`]),zx=B({id:P(),name:P().optional(),version:P().optional(),description:P().optional(),icon:P().optional(),color:P().optional(),capabilities:z(L()).readonly().optional(),packageName:P(),packageVersion:P(),packageDisplayName:P().optional(),bundle:B({displayName:P(),description:P().optional(),icon:P().optional()}).optional(),protected:I().optional(),removable:I().optional()}),Bx=B({pid:F().optional(),mode:P(),state:P()}),Vx=B({phase:H([`pending`,`healthy`,`failed`]),retryCount:F(),firstFailureAt:F().nullable(),lastAttemptAt:F().nullable(),lastError:B({message:P(),stack:P().optional()}).nullable(),nextRetryAt:F().nullable(),alertEmitted:I(),retrying:I(),inGracePeriod:I()}),Hx=B({manifest:zx,declaration:L().optional(),source:P(),installSource:P().optional(),process:Bx.optional(),hasBackup:I().optional(),health:Vx.nullable().optional()}),Ux=B({name:P(),version:P(),dir:P(),installSource:P().optional()}),Wx=B({name:P(),currentVersion:P(),latestVersion:P(),category:H([`addon`,`core`]),requiresRestart:I(),isSystem:I()}),Gx=B({version:P(),publishedAt:P(),deprecated:P().optional(),distTags:z(P()).readonly()}),Kx=B({name:P(),version:P(),description:P(),keywords:z(P()).readonly(),publishedAt:P(),author:P(),installed:I(),installedVersion:P().optional()}),qx=B({channel:Lx,intervalSeconds:F()}),Jx=Rx,Yx=L(),Xx=L(),Zx=L(),Qx=H([`queued`,`updating`,`done`,`done-pending-restart`,`failed`]),$x=B({name:P(),isSystem:I(),fromVersion:P(),toVersion:P(),status:Qx,error:P().optional(),startedAtMs:F().optional(),completedAtMs:F().optional()}),eS=H([`regular`,`system`,`restarting`,`finalizing`]);B({id:P(),nodeId:P(),startedAtMs:F(),completedAtMs:F().optional(),total:F(),completed:F(),failed:F(),current:P().nullable(),phase:eS,cancelled:I(),items:z($x).readonly()});var tS=B({packageName:P(),currentVersion:P(),latestVersion:P().nullable(),hasUpdate:I(),description:P().optional(),buildId:P().nullable()}),nS=B({timestamp:P(),level:P(),message:P(),scope:P().optional()}),rS=L(),iS=B({addonId:P().min(1),action:P().min(1),input:L()}),aS={name:`addons`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{list:K(R(),z(Hx).readonly()),getLogs:K(B({addonId:P(),limit:F().min(1).max(500).default(100),level:Ix.optional()}),z(rS)),listPackages:K(R(),z(Ux).readonly()),installPackage:K(B({packageName:P(),version:P().optional()}),Xx,{kind:`mutation`,auth:`admin`}),installFromWorkspace:K(B({packageName:P()}),Xx,{kind:`mutation`,auth:`admin`}),isWorkspaceAvailable:K(R(),I()),listWorkspacePackages:K(R(),z(L()).readonly()),uninstallPackage:K(B({packageName:P()}),L(),{kind:`mutation`,auth:`admin`}),reloadPackages:K(R(),Zx,{kind:`mutation`,auth:`admin`}),searchAvailable:K(B({query:P().optional()}),z(Kx)),listUpdates:K(B({nodeId:P().optional()}),z(Wx).readonly(),{auth:`admin`}),updatePackage:K(B({name:P().min(1),version:P().optional(),nodeId:P().optional()}),L(),{kind:`mutation`,auth:`admin`}),rollbackPackage:K(B({name:P().min(1)}),B({rolledBackTo:P().nullable()}),{kind:`mutation`,auth:`admin`}),forceRefresh:K(B({nodeId:P().optional()}),L(),{kind:`mutation`,auth:`admin`}),restartServer:K(B({confirm:U(!0)}),L(),{kind:`mutation`,auth:`admin`}),getLastRestart:K(R(),B({kind:H([`framework-update`,`manual`,`system`,`framework-bulk-update`]),packageName:P().optional(),fromVersion:P().optional(),toVersion:P().optional(),requestedBy:P().optional(),requestedAt:F()}).nullable(),{auth:`admin`}),listFrameworkPackages:K(R(),z(tS).readonly(),{auth:`admin`}),listCapabilityProviders:K(B({capName:P().min(1)}),z(B({addonId:P(),mode:H([`singleton`,`collection`]),isActive:I()})).readonly()),setCapabilityProviderEnabled:K(B({capName:P().min(1),addonId:P().min(1),enabled:I()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getVersions:K(B({name:P()}),z(Gx).readonly()),restartAddon:K(B({addonId:P()}),Yx,{kind:`mutation`,auth:`admin`}),retryLoad:K(B({packageName:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),getAutoUpdateSettings:K(R(),qx,{auth:`admin`}),setAutoUpdateSettings:K(B({channel:Lx,intervalSeconds:F().min(300).max(86400).optional()}),L(),{kind:`mutation`,auth:`admin`}),getAddonAutoUpdate:K(B({addonId:P()}),Jx,{auth:`admin`}),setAddonAutoUpdate:K(B({addonId:P(),channel:Rx}),L(),{kind:`mutation`,auth:`admin`}),applyAutoUpdateToAll:K(B({channel:Lx}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`}),custom:K(iS,L(),{kind:`mutation`}),startJob:K(B({kind:H([`install`,`update`,`uninstall`,`restart`]),targets:z(B({name:P().min(1),version:P().min(1)})).min(1),nodeIds:z(P()).optional()}),B({jobId:P()}),{kind:`mutation`,auth:`admin`}),getJob:K(B({jobId:P()}),Fx.nullable(),{auth:`admin`}),listJobs:K(B({activeOnly:I().optional()}),z(Fx),{auth:`admin`}),cancelJob:K(B({jobId:P()}),B({cancelled:I()}),{kind:`mutation`,auth:`admin`}),onAddonLogs:K(B({addonId:P(),level:Ix.optional()}),nS,{kind:`subscription`})},mount:{kind:`server-provided`}},oS={name:`button`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Button],methods:{press:K(B({deviceId:F().int().nonnegative()}),R(),{kind:`mutation`,auth:`admin`})}},sS=B({host:P(),port:F().int().positive().optional(),onvifPort:F().int().positive().optional(),rtspPort:F().int().positive().optional(),https:I().optional(),username:P().optional(),password:P().optional(),onvifProfile:P().optional()}),cS=B({host:P(),port:F().int().positive().nullable(),onvifPort:F().int().positive().nullable(),rtspPort:F().int().positive().nullable(),https:I().nullable(),hasUsername:I(),hasPassword:I(),onvifProfile:P().nullable()}),lS={name:`camera-credentials`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCredentials:K(B({deviceId:F()}),sS.nullable(),{kind:`query`,auth:`admin`})},status:{schema:cS,kind:`command-driven`}},uS=B({id:P(),type:P(),timestamp:F(),label:P().optional(),thumbnailUrl:P().optional(),clipUrl:P().optional(),metadata:V(P(),L()).optional()}),dS={name:`events`,scope:`device`,mode:`singleton`,deviceTypes:[W.Camera],methods:{getEvents:K(B({deviceId:F(),from:F().optional(),to:F().optional(),limit:F().optional()}),z(uS)),getEventThumbnail:K(B({deviceId:F(),eventId:P()}),B({base64:P(),contentType:P()}).nullable()),getEventClipUrl:K(B({deviceId:F(),eventId:P()}),P().nullable())}},fS=B({id:P(),name:P(),sampleCount:F().int().nonnegative(),coverMediaKey:P().optional(),coverBase64:P().optional()}),pS=B({id:P(),source:H([`detected`,`photo`]),addedAt:F().int(),deviceId:F().int().optional(),base64:P().optional()}),mS=B({faceId:P(),deviceId:F().int(),trackId:P(),timestamp:F().int(),recognizedIdentityId:P().optional(),identityName:P().optional(),assigned:I(),base64:P().optional(),faceBbox:Pd.optional(),keyFrameMediaKey:P().optional()}),hS=H([`unassigned`,`recognized`,`all`]),gS=B({key:P(),kind:P(),base64:P(),sizeBytes:F(),timestamp:F()}),_S={name:`face-gallery`,scope:`system`,mode:`singleton`,methods:{listIdentities:K(R(),z(fS).readonly()),createIdentity:K(B({name:P().min(1)}),fS,{kind:`mutation`,auth:`admin`}),renameIdentity:K(B({id:P(),name:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deleteIdentity:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),listIdentitySamples:K(B({identityId:P()}),z(pS).readonly()),removeSample:K(B({identityId:P(),sampleId:P()}),R(),{kind:`mutation`,auth:`admin`}),listRecentFaces:K(B({limit:F().int().positive().optional(),filter:hS.optional()}).optional(),z(mS).readonly()),getFaceByTrack:K(B({deviceId:F().int(),trackId:P()}),mS.nullable()),getFaceMedia:K(B({faceId:P()}),z(gS).readonly()),assignFace:K(B({faceId:P(),identityId:P()}),R(),{kind:`mutation`,auth:`admin`}),unassignFace:K(B({faceId:P()}),R(),{kind:`mutation`,auth:`admin`}),deleteFace:K(B({faceId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignFaces:K(B({faceIds:z(P()).min(1),identityId:P()}),B({assigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignFaces:K(B({faceIds:z(P()).min(1)}),B({unassigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),suggestFaceClusters:K(B({threshold:F().min(0).max(1).optional(),minClusterSize:F().int().min(2).optional(),limit:F().int().positive().optional()}).optional(),z(B({faceIds:z(P()).readonly(),representativeFaceId:P(),size:F().int(),cohesion:F()})).readonly())}},vS=B({id:P(),addonId:P(),name:P(),enabled:I(),info:V(P(),L()).readonly(),createdAt:F(),updatedAt:F(),processState:P()}),yS=B({id:P(),addonId:P(),name:P(),enabled:I(),info:V(P(),L()).readonly(),createdAt:F(),updatedAt:F()}),bS=B({addonId:P(),name:P(),description:P(),iconUrl:P().nullable(),color:P(),instanceMode:P(),mode:H([`standalone`,`account`,`broker`]),discoveryMode:P(),kind:H([`device-adoption`,`device-provider`]),brokerKind:P().nullable(),supportsLocationImport:I(),existingInstances:z(B({id:P(),name:P()})),canAdd:I()}),xS=B({success:I(),error:P().optional()}),SS=B({addonId:P(),name:P(),enabled:I().optional(),info:V(P(),L()).optional(),settings:V(P(),L()).optional(),skipRestart:I().optional()}),CS=B({id:P(),name:P().optional(),enabled:I().optional(),info:V(P(),L()).optional()}),wS=B({success:I(),deletedId:P()}),TS={name:`integrations`,scope:`system`,mode:`singleton`,methods:{list:K(R(),z(vS)),get:K(B({id:P()}),vS),getByAddonId:K(B({addonId:P()}),yS.nullable()),create:K(SS,yS,{kind:`mutation`,auth:`admin`}),update:K(CS,yS,{kind:`mutation`,auth:`admin`}),delete:K(B({id:P()}),wS,{kind:`mutation`,auth:`admin`}),getSettings:K(B({id:P()}),V(P(),L()),{auth:`admin`}),setSettings:K(B({id:P(),settings:V(P(),L())}),B({success:I()}),{kind:`mutation`,auth:`admin`}),getAvailableTypes:K(R(),z(bS),{auth:`admin`}),testConnection:K(B({addonId:P(),settings:V(P(),L())}),xS,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},ES=B({codecs:z(P()),sampleRate:F(),duplex:H([`half`,`full`]),maxBacklogMs:F()}),DS=B({talking:I(),lastSessionAt:F().nullable(),ability:ES.nullable()}),OS=H([`opus`,`s16le`,`g711ulaw`,`g711alaw`]),kS={name:`intercom`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{startSession:K(B({deviceId:F()}),B({sessionId:P(),sdpOffer:P()}),{kind:`mutation`,auth:`admin`}),handleAnswer:K(B({deviceId:F(),sessionId:P(),sdpAnswer:P()}),R(),{kind:`mutation`,auth:`admin`}),stopSession:K(B({deviceId:F(),sessionId:P()}),R(),{kind:`mutation`,auth:`admin`}),startTalkSession:K(B({deviceId:F()}),B({sessionId:P()}),{kind:`mutation`,auth:`admin`}),pushTalkAudio:K(B({deviceId:F(),audioBase64:P(),codec:OS.optional(),sampleRate:F().int().positive().optional(),channels:F().int().positive().optional(),sequenceNumber:F().int()}),B({accepted:I()}),{kind:`mutation`,auth:`admin`}),endTalkSession:K(B({deviceId:F()}),R(),{kind:`mutation`,auth:`admin`})},events:{onStatusChanged:{data:B({deviceId:F(),status:DS})}},status:{schema:DS,kind:`command-driven`}},AS=H([`lan`,`wifi`,`docker`,`vpn`,`loopback`,`other`]),jS=B({name:P(),family:H([`IPv4`,`IPv6`]),address:P(),cidr:P(),netmask:P(),internal:I(),mac:P(),kind:AS,preferred:I(),plausible:I(),plausibleReason:P()}),MS=B({interfaces:z(jS).readonly(),probedAt:F()}),NS=jS.nullable(),PS=B({endpoints:z(B({label:P(),baseUrl:P(),kind:H([`lan-ipv4`,`lan-ipv6`,`public`,`loopback`]),interfaceKind:H([`lan`,`wifi`,`docker`,`vpn`,`other`,`loopback`,`public`]),plausible:I(),plausibleReason:P(),priority:F()})).readonly()}),FS=B({addresses:z(P()).readonly()}),IS={name:`local-network`,scope:`system`,mode:`singleton`,methods:{list:K(R(),MS),getPreferred:K(R(),NS),getConnectionEndpoints:K(B({port:F().int().min(1).max(65535),includeLoopback:I().optional(),ipv4Only:I().optional(),scheme:H([`http`,`https`]).optional()}),PS),getAllowedAddresses:K(R(),FS),setAllowedAddresses:K(FS,B({success:U(!0)}),{kind:`mutation`}),resetAllowlistToBestMatch:K(R(),FS,{kind:`mutation`})},mount:{kind:`hub-only`}},LS=B({id:P(),label:P(),scope:H([`mesh`,`public`]),url:P(),hostname:P(),port:F(),protocol:H([`http`,`https`])}),RS=B({id:P(),hostname:P(),magicDns:P(),addresses:z(P()).readonly(),os:P().optional(),online:I(),lastSeenMs:F(),isSelf:I(),connection:H([`direct`,`relay`,`idle`]),relay:P().nullable(),lastHandshakeMs:F(),rxBytes:F(),txBytes:F(),tags:z(P()).readonly(),exitNodeOption:I(),advertisedRoutes:z(P()).readonly(),userLogin:P().nullable(),keyExpiry:F().nullable()}),zS=B({joined:I(),meshIp:P(),magicDnsHostname:P(),peerCount:F(),endpoints:z(LS).readonly(),error:P().optional(),tenantName:P(),magicDnsSuffix:P(),userLogin:P().nullable(),controlPlaneUrl:P(),keyExpiry:F().nullable(),daemonSocket:P().optional(),daemonCliPath:P().optional()}),BS={name:`mesh-network`,scope:`system`,mode:`collection`,providerKind:`mesh`,methods:{getStatus:K(R(),zS),join:K(B({authKey:P().min(8),hostname:P().optional()}),B({joined:U(!0)}),{kind:`mutation`}),startLogin:K(B({hostname:P().optional()}),B({loginUrl:P()}),{kind:`mutation`}),leave:K(R(),B({left:U(!0)}),{kind:`mutation`}),logout:K(R(),B({loggedOut:U(!0)}),{kind:`mutation`}),listPeers:K(R(),B({peers:z(RS).readonly()})),testConnection:K(B({authKey:P().optional()}),B({ok:I(),tenant:P().optional(),daemonVersion:P().optional(),error:P().optional()}),{kind:`mutation`})}},VS=B({nominalBitrateKbps:F(),observedBitrateKbps:F(),peakBitrateKbps:F(),packetLossPercent:F(),lastUpdated:F()}),HS=B({rttMs:F(),jitterMs:F(),estimatedBandwidthKbps:F(),packetLossPercent:F().min(0).max(100),lastUpdated:F()}),US=B({deviceId:F(),streams:V(P(),VS),client:HS.optional()}),WS={name:`network-quality`,scope:`system`,mode:`singleton`,methods:{getDeviceStats:K(B({deviceId:F()}),US.nullable()),getAllStats:K(R(),z(US).readonly()),reportClientStats:K(B({deviceId:F(),rttMs:F().min(0).max(6e4),jitterMs:F().min(0).max(1e4),estimatedBandwidthKbps:F().min(0).max(1e6),packetLossPercent:F().min(0).max(100)}),R(),{kind:`mutation`})},mount:{kind:`server-provided`}},GS=B({addonId:P(),capabilities:z(P()).readonly(),status:P()}),KS=B({pid:F(),name:P(),state:P(),cpuPercent:F(),memoryRss:F(),uptimeSeconds:F(),services:z(GS).readonly(),groupId:P().optional()}),qS=B({id:P(),status:P(),cpuPercent:F(),memoryRss:F()}),JS=B({category:P(),total:F(),healthy:F(),addons:z(qS).readonly()}),YS=B({name:P(),version:P()}),XS=B({id:P(),name:P(),hostname:P(),platform:P(),arch:P(),cpuModel:P().nullable(),cpuCores:F(),memoryMB:F(),engines:z(P()).readonly(),isHub:I(),isOnline:I(),cpuPercent:F(),memoryPercent:F(),uptime:F(),lastSeen:P(),localIps:z(P()).readonly(),addons:z(B({id:P(),capabilities:z(P()).readonly(),status:P()})).readonly(),processes:z(KS).readonly(),categories:z(JS).readonly(),rootPackage:YS.nullable()}),ZS=B({callerAddonId:P(),providerAddonId:P(),capName:P(),callsPerMin:F(),lastCallAtMs:F()}),QS=B({nodeId:P(),name:P(),version:P(),status:P(),synced:I()}),$S=B({hubVersion:P(),nodes:z(QS)}),eC=B({nodeId:P(),addonId:P()}),tC=B({id:P(),status:P(),version:P().optional(),packageName:P().optional()}),nC=B({success:I()}),rC=B({success:I(),reason:P().optional()}),iC=B({restarted:z(P()).readonly(),failed:z(P()).readonly()}),aC=B({nodeId:P(),name:P()}),oC={name:`nodes`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{topology:K(R(),z(XS).readonly(),{auth:`admin`}),deployAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),undeployAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),restartAddon:K(eC,nC,{kind:`mutation`,auth:`admin`}),restartProcess:K(B({nodeId:P(),processName:P()}),rC,{kind:`mutation`,auth:`admin`}),restartNode:K(B({nodeId:P()}),iC,{kind:`mutation`,auth:`admin`}),shutdownNode:K(B({nodeId:P()}),nC,{kind:`mutation`,auth:`admin`}),renameNode:K(B({nodeId:P(),name:P().min(1).max(64)}),aC,{kind:`mutation`,auth:`admin`}),clusterAddonStatus:K(R(),V(P(),$S),{auth:`admin`}),getCapUsageGraph:K(B({windowSeconds:F().int().positive().max(300).default(60)}),z(ZS).readonly(),{auth:`admin`}),getNodeAddons:K(B({nodeId:P()}),z(tC).readonly(),{auth:`admin`}),setProcessLogLevel:K(B({nodeId:P(),level:P()}),nC,{kind:`mutation`,auth:`admin`}),executeQuery:K(B({nodeId:P(),addonId:P(),queryName:P(),params:V(P(),L()).optional()}),L(),{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},sC=H([`text`,`timestamp`,`watermark`]),cC=H([`top-left`,`top-center`,`top-right`,`bottom-left`,`bottom-center`,`bottom-right`,`custom`]),lC=B({overlays:z(B({id:P(),kind:sC,enabled:I(),text:P().optional(),position:cC.optional(),availablePositions:z(cC).readonly(),readOnly:I().optional()})).readonly()}),uC=B({enabled:I().optional(),text:P().optional(),position:cC.optional()}).partial(),dC={name:`osd`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{setOverlay:K(B({deviceId:F(),overlayId:P(),patch:uC}),R(),{kind:`mutation`,auth:`admin`})},events:{onStatusChanged:{data:B({deviceId:F(),status:lC})}},status:{schema:lC,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}}}]}},fC=B({id:P(),name:P(),sampleCount:F().int().nonnegative(),coverMediaKey:P().optional(),coverBase64:P().optional()}),pC=B({id:P(),text:P(),score:F(),addedAt:F().int(),deviceId:F().int().optional(),base64:P().optional()}),mC=B({plateId:P(),deviceId:F().int(),trackId:P(),timestamp:F().int(),text:P(),score:F(),corrected:I(),recognizedVehicleId:P().optional(),vehicleName:P().optional(),assigned:I(),plateBbox:Pd.optional(),keyFrameMediaKey:P().optional(),base64:P().optional()}),hC=B({key:P(),kind:P(),base64:P(),sizeBytes:F(),timestamp:F()}),gC=B({plateIds:z(P()).readonly(),representativePlateId:P(),representativeText:P(),size:F().int(),cohesion:F()}),_C={name:`plate-gallery`,scope:`system`,mode:`singleton`,methods:{listPlates:K(B({deviceId:F().int().optional(),limit:F().int().positive().optional()}).optional(),z(mC).readonly()),getPlateByTrack:K(B({deviceId:F().int(),trackId:P()}),mC.nullable()),getPlateMedia:K(B({plateId:P()}),z(hC).readonly()),searchPlates:K(B({text:P().min(1),maxDistance:F().int().min(0).optional(),limit:F().int().positive().optional()}),z(mC).readonly()),suggestPlateClusters:K(B({maxDistance:F().int().min(0).optional(),minClusterSize:F().int().min(2).optional(),limit:F().int().positive().optional()}).optional(),z(gC).readonly()),correctPlateText:K(B({plateId:P(),text:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deletePlate:K(B({plateId:P()}),R(),{kind:`mutation`,auth:`admin`}),listVehicles:K(R(),z(fC).readonly()),createVehicle:K(B({name:P().min(1)}),fC,{kind:`mutation`,auth:`admin`}),renameVehicle:K(B({id:P(),name:P().min(1)}),R(),{kind:`mutation`,auth:`admin`}),deleteVehicle:K(B({id:P()}),R(),{kind:`mutation`,auth:`admin`}),listVehicleSamples:K(B({vehicleId:P()}),z(pC).readonly()),removeVehicleSample:K(B({vehicleId:P(),sampleId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignPlate:K(B({plateId:P(),vehicleId:P()}),R(),{kind:`mutation`,auth:`admin`}),unassignPlate:K(B({plateId:P()}),R(),{kind:`mutation`,auth:`admin`}),assignPlates:K(B({plateIds:z(P()).min(1),vehicleId:P()}),B({assigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignPlates:K(B({plateIds:z(P()).min(1)}),B({unassigned:F().int(),failed:z(P()).readonly()}),{kind:`mutation`,auth:`admin`})}},vC=H(tc),yC=H([`videotoolbox`,`cuda`,`nvdec`,`vaapi`,`qsv`,`d3d11va`,`dxva2`,`amf`,`vdpau`,`drm`,`coreml`,`tensorrt`,`openvino`,`directml`,`webgpu`,`none`]).nullable().optional(),bC=B({preferred:z(P()).readonly(),rationale:P()}),xC=H([`h264_videotoolbox`,`hevc_videotoolbox`,`h264_vaapi`,`hevc_vaapi`,`h264_nvenc`,`hevc_nvenc`,`h264_qsv`,`hevc_qsv`,`h264_amf`,`hevc_amf`,`libx264`,`libx265`]);B({encoders:z(B({encoder:xC,codec:H([`H264`,`H265`]),family:H([`videotoolbox`,`vaapi`,`nvenc`,`qsv`,`amf`,`software`]),available:I(),reason:P().optional()})).readonly(),defaultH264:xC,defaultH265:xC,probedAt:F()}),B({methods:z(P()).readonly(),probedAt:F()});var SC=H([`darwin`,`linux`,`win32`]),CC=H([`arm64`,`x64`]),wC=B({type:H([`nvidia`,`amd`,`intel`,`apple`]),name:P(),memoryMB:F().optional()}),TC=B({type:H([`apple-ane`,`intel-npu`])}),EC=B({type:U(`coral-edgetpu`),bus:P().optional()}),DC=B({platform:SC,arch:CC,cpuModel:P(),cpuCores:F(),totalRAM_MB:F(),availableRAM_MB:F(),gpu:wC.nullable(),npu:TC.nullable(),coral:EC.nullable().optional()}),OC=B({runtime:H([`node`,`python`]),backend:P(),format:H([`onnx`,`coreml`,`openvino`,`tflite`]),score:F(),reason:P(),available:I()}),kC=B({key:P(),backend:P(),device:P(),format:vC,runtime:U(`python`),score:F(),available:I()}),AC=B({hardware:DC,scores:z(OC).readonly(),bestScore:OC,pythonPath:P().nullable(),devices:z(kC).readonly()}),jC=B({modelId:P(),name:P(),minRAM_MB:F(),accuracyScore:F(),formats:z(P()).readonly()}),MC=B({modelId:P(),runtime:H([`node`,`python`]),backend:P(),format:vC,reason:P()}),NC={name:`platform-probe`,scope:`system`,mode:`singleton`,methods:{getCapabilities:K(R(),AC),getHardware:K(R(),DC),resolveInferenceConfig:K(B({requirements:z(jC).readonly()}),MC),resolveHwAccel:K(B({prefer:yC}),bC)}},PC=B({id:P(),name:P()}),FC=B({pan:F(),tilt:F(),zoom:F()}),IC=B({pan:F().optional(),tilt:F().optional(),zoom:F().optional(),speed:F().optional()}),LC=FC.extend({autofocus:I()}),RC=B({hasPan:I(),hasTilt:I(),hasZoom:I(),supportsPresets:I(),maxPresets:F().optional(),hasAutofocus:I()}),zC={name:`ptz`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-panel`,tab:`ptz`,topTab:!0,label:`PTZ`,order:0}},methods:{move:K(IC.extend({deviceId:F()}),R(),{kind:`mutation`}),continuousMove:K(IC.extend({deviceId:F()}),R(),{kind:`mutation`}),stop:K(B({deviceId:F()}),R(),{kind:`mutation`}),getPresets:K(B({deviceId:F()}),z(PC)),goToPreset:K(B({deviceId:F(),presetId:P()}),R(),{kind:`mutation`}),savePreset:K(B({deviceId:F(),presetId:P(),name:P()}),R(),{kind:`mutation`,auth:`admin`}),deletePreset:K(B({deviceId:F(),presetId:P()}),R(),{kind:`mutation`,auth:`admin`}),getOptions:K(B({deviceId:F()}),RC),goHome:K(B({deviceId:F()}),R(),{kind:`mutation`}),getPosition:K(B({deviceId:F()}),FC),setAutofocus:K(B({deviceId:F(),enabled:I()}),R(),{kind:`mutation`})},status:{schema:LC,kind:`command-driven`}},BC={name:`reboot`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera,W.Sensor,W.Switch],methods:{reboot:K(B({deviceId:F().int().nonnegative()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`})}},VC=B({deviceId:F(),enabled:I(),activeMode:H([`off`,`continuous`,`events`]),nodeId:P(),storageBytes:F()}),HC=B({profile:P(),startMs:F(),endMs:F()}),UC=B({deviceId:F(),ranges:z(HC)}),WC=B({deviceId:F(),days:z(F())}),GC=B({deviceId:F(),localMasterPath:P().nullable(),playbackUrl:P().nullable(),playbackEndpoints:z(P())}),KC=B({deviceId:F(),usedBytes:F()}),qC=B({locationId:P().nullable(),usedBytes:F(),availableBytes:F().nullable(),totalBytes:F().nullable()}),JC=B({nodeId:P(),totalUsedBytes:F(),devices:z(KC),locations:z(qC)}),YC=To(`kind`,[B({kind:U(`segment`),startMs:F(),durMs:F(),bytes:F()}),B({kind:U(`gap`),nearestEdgeMs:F().nullable(),prevEndMs:F().nullable().optional()})]),XC=B({data:os(Uint8Array)}),ZC={name:`recording`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,status:{schema:VC,kind:`command-driven`},methods:{getAvailability:K(B({deviceId:F(),fromMs:F(),toMs:F()}),UC,{kind:`query`,auth:`admin`}),getDaysWithRecordings:K(B({deviceId:F(),fromMs:F(),toMs:F(),tzOffsetMinutes:F()}),WC,{kind:`query`,auth:`admin`}),getPlaybackManifest:K(B({deviceId:F(),fromMs:F(),toMs:F()}),GC,{kind:`query`,auth:`admin`}),getStorageUsage:K(B({}),JC,{kind:`query`,auth:`admin`}),getDeviceConfig:K(B({deviceId:F()}),Sc,{kind:`query`,auth:`admin`}),locateSegment:K(B({deviceId:F(),profile:P(),epochMs:F()}),YC,{kind:`query`,auth:`admin`}),readSegmentBytes:K(B({deviceId:F(),profile:P(),startMs:F()}),XC,{kind:`query`,auth:`admin`}),setDeviceConfig:K(B({deviceId:F(),config:Sc}),Sc,{kind:`mutation`,auth:`admin`}),rescanStorage:K(B({deviceId:F()}),VC,{kind:`mutation`,auth:`admin`}),pruneFootage:K(B({deviceId:F(),reason:Tc.optional()}),B({floorMs:F().nullable(),deletedBuckets:F().int(),reclaimedBytes:F().int()}),{kind:`mutation`,auth:`admin`}),deleteFootprint:K(B({deviceId:F(),fromMs:F().optional(),toMs:F().optional()}),B({deletedBuckets:F().int(),reclaimedBytes:F().int()}),{kind:`mutation`,auth:`admin`}),listOpsLog:K(Dc,z(Ec).readonly(),{kind:`query`,auth:`admin`})}},QC=F().min(.25).max(32),$C=B({everyMs:F().int().positive(),outputFps:F().int().min(1).max(60).optional()}),ew=B({speed:QC.optional(),timelapse:$C.optional(),includeAudio:I(),maxLifeMs:F().int().positive(),deleteAfterDownload:I(),title:P().max(200).optional()}).superRefine((e,t)=>{e.speed!==void 0&&e.timelapse!==void 0&&t.addIssue({code:ss.custom,message:`speed and timelapse are mutually exclusive`,path:[`timelapse`]})}),tw=H([`queued`,`rendering`,`ready`,`failed`,`expired`,`deleted`]),nw=B({id:P(),deviceId:F(),profile:P(),fromMs:F(),toMs:F(),options:ew,state:tw,progressPct:F().nullable(),fileBytes:F().nullable(),expiresAt:F(),deleteAfterDownload:I(),downloadedAt:F().nullable(),createdAt:F(),createdBy:P(),error:P().nullable()}),rw=B({url:P(),endpoints:z(P())}),iw={name:`recordingExport`,scope:`system`,mode:`singleton`,methods:{createExport:K(B({deviceId:F(),profile:P(),fromMs:F(),toMs:F(),options:ew}),nw,{kind:`mutation`,auth:`protected`}),listExports:K(B({deviceId:F().optional()}),z(nw),{kind:`query`,auth:`protected`}),getExport:K(B({exportId:P()}),nw,{kind:`query`,auth:`protected`}),cancelExport:K(B({exportId:P()}),nw,{kind:`mutation`,auth:`protected`}),deleteExport:K(B({exportId:P()}),nw,{kind:`mutation`,auth:`protected`}),getDownloadUrl:K(B({exportId:P()}),rw,{kind:`query`,auth:`protected`})}},aw=B({camStreamId:P().min(1),kind:ms,url:P().optional(),codec:P().optional(),resolution:hs.optional(),fps:F().positive().optional(),label:P().optional(),deviceFeatures:z(P()).optional(),autoEligible:I().optional(),metadata:V(P(),L()).optional()}),ow={name:`stream-catalog`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[W.Camera],methods:{getCatalog:K(B({deviceId:F().int().nonnegative()}),z(aw).readonly())}},sw=B({streaming:I(),notifications:I(),objectDetection:I(),remoteAccess:I(),agentCluster:I(),smartHome:I(),recordings:I(),backup:I(),repl:I()}),cw=B({status:U(`ok`),uptime:F()}),lw=B({name:P(),address:P(),family:P(),internal:I()}),uw={name:`system`,scope:`system`,mode:`singleton`,methods:{info:K(R(),sw),health:K(R(),cw),featureFlags:K(R(),sw),networkAddresses:K(R(),z(lw).readonly()),getRetentionConfig:K(R(),L().nullable(),{auth:`admin`}),setRetentionConfig:K(V(P(),L()),lo(),{kind:`mutation`,auth:`admin`}),forceRetentionCleanup:K(R(),R(),{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},dw=B({title:P(),message:P(),severity:H([`info`,`warning`,`critical`]),duration:F().optional(),action:B({label:P(),url:P()}).optional()}),fw={name:`toast`,scope:`system`,mode:`singleton`,methods:{onToast:K(R(),dw,{kind:`subscription`})},mount:{kind:`server-provided`}},pw=B({id:P(),username:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]),allowedDevices:V(P(),Co([z(P()),U(`*`)])),scopes:z(fy).default([]),totpEnabled:I().default(!1),createdAt:F(),updatedAt:F()}),mw=B({username:P(),password:P().min(6),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),scopes:z(fy).optional()}),hw=B({id:P(),isAdmin:I().optional(),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),scopes:z(fy).optional()}),gw=B({id:P(),label:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional(),tokenPrefix:P(),createdAt:F(),lastUsedAt:F().optional()}),_w=B({label:P(),isAdmin:I().default(!1),allowedProviders:Co([z(P()),U(`*`)]).optional(),allowedDevices:V(P(),Co([z(P()),U(`*`)])).optional()}),vw=B({token:P(),record:gw}),yw=B({id:P(),userId:P(),name:P(),tokenPrefix:P(),scopes:z(fy),expiresAt:F().nullish(),lastUsedAt:F().nullish(),createdAt:F()}),bw=B({userId:P(),name:P(),scopes:z(fy),expiresAt:F().optional()}),xw=B({token:P(),record:yw}),Sw=B({id:P(),userId:P(),username:P(),integrationId:P(),scopes:z(fy),createdAt:F(),lastUsedAt:F(),revokedAt:F().nullable()}),Cw=B({secret:P(),otpauthUrl:P()}),ww=B({enabled:I(),confirmedAt:F().nullable()}),Tw=[Dx,fh,mh,vh,wh,jh,kh,aS,Hs,Rh,Ol,Ml,Uh,Pl,Wh,Jh,ng,Rl,ig,Bl,mg,Hl,Wl,Kl,Fg,oS,lS,Ig,uu,fu,hu,bu,Su,Tu,Du,Au,Mu,Rg,Ru,Bg,Vg,e_,Uu,l_,A_,Ys,Qm,j_,wl,Ku,P_,Yu,Qu,dS,_S,td,El,L_,rd,ad,sd,ld,dd,bd,TS,kS,wd,sy,Yv,IS,Ed,B_,sg,jd,BS,av,ov,sv,Kf,Bd,Yf,sp,yv,fp,Cv,WS,oC,Rv,yp,xp,my,dC,Tp,Qy,xf,kb,Uf,_C,NC,Dp,Ap,Mp,Rp,zC,Up,BC,ZC,iw,Xp,Qp,Ib,Vb,em,Kb,Yb,Zb,$b,nx,mx,au,ow,sm,lm,uw,dm,pm,fw,gx,hm,{name:`user-management`,scope:`system`,mode:`singleton`,methods:{listUsers:K(R(),z(pw),{auth:`admin`}),createUser:K(mw,pw,{kind:`mutation`,auth:`admin`,access:`create`}),updateUser:K(hw,B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),deleteUser:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),resetPassword:K(B({id:P(),newPassword:P().min(6)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),setUserScopes:K(B({userId:P(),scopes:z(fy)}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),validateCredentials:K(B({username:P(),password:P()}),pw.extend({passwordHash:P()}).nullable(),{kind:`mutation`,access:`view`}),listApiKeys:K(R(),z(gw),{auth:`admin`}),createApiKey:K(_w,vw,{kind:`mutation`,auth:`admin`,access:`create`}),revokeApiKey:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),validateApiKey:K(B({token:P()}),gw.nullable(),{kind:`mutation`,access:`view`}),createScopedToken:K(bw,xw,{kind:`mutation`,auth:`admin`,access:`create`}),revokeScopedToken:K(B({id:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),validateScopedToken:K(B({token:P()}),yw.nullable(),{access:`view`}),listScopedTokens:K(B({userId:P()}),z(yw),{auth:`admin`}),setupTotp:K(B({userId:P()}),Cw,{kind:`mutation`,auth:`admin`,access:`create`}),confirmTotp:K(B({userId:P(),code:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),disableTotp:K(B({userId:P()}),B({success:U(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getTotpStatus:K(B({userId:P()}),ww,{auth:`admin`}),verifyTotp:K(B({userId:P(),code:P()}),B({valid:I()}),{kind:`mutation`,access:`view`}),oauthIssueCode:K(B({integrationId:P(),userId:P(),username:P(),scopes:z(fy),redirectUri:P(),hubUrl:P()}),B({code:P()}),{kind:`mutation`,access:`create`}),oauthExchangeCode:K(B({code:P(),redirectUri:P()}),B({accessToken:P(),refreshToken:P(),expiresIn:F()}).nullable(),{kind:`mutation`,access:`view`}),oauthRefresh:K(B({refreshToken:P()}),B({accessToken:P(),refreshToken:P(),expiresIn:F()}).nullable(),{kind:`mutation`,access:`view`}),oauthVerifyAccessToken:K(B({token:P()}),B({userId:P(),username:P(),scopes:z(fy)}).nullable(),{access:`view`}),listOauthSessions:K(R(),z(Sw),{auth:`admin`}),revokeOauthSession:K(B({id:P()}),B({success:I()}),{kind:`mutation`,auth:`admin`,access:`delete`})}},vx,ym,xm,Cm,xx,Gs,Tm,Dm,Tx,Fm,zm,Tf];Object.freeze({"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.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.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`},"advancedNotifier.deleteRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`delete`},"advancedNotifier.getHistory":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`view`},"advancedNotifier.getRules":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`view`},"advancedNotifier.testRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`create`},"advancedNotifier.upsertRule":{capName:`advanced-notifier`,capScope:`system`,addonId:null,access:`create`},"alarmPanel.arm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"alarmPanel.disarm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"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`},"audioAnalysis.resolveDeviceSettings":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`view`},"audioAnalyzer.analyseChunk":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.classify":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`view`},"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.trigger":{capName:`automation-control`,capScope:`device`,addonId:null,access:`create`},"backup.delete":{capName:`backup`,capScope:`system`,addonId:null,access:`delete`},"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.listDestinations":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listLocations":{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.trigger":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.upsertDestinationPolicy":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"battery.wakeForStream":{capName:`battery`,capScope:`device`,addonId:null,access:`create`},"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`},"cameraCredentials.getCredentials":{capName:`camera-credentials`,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`},"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.setColor":{capName:`color`,capScope:`device`,addonId:null,access:`create`},"consumables.reset":{capName:`consumables`,capScope:`device`,addonId:null,access:`delete`},"control.setValue":{capName:`control`,capScope:`device`,addonId:null,access:`create`},"cover.close":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"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.listModels":{capName:`custom-model-registry`,capScope:`system`,addonId:null,access:`view`},"dayNight.getOptions":{capName:`day-night`,capScope:`device`,addonId:null,access:`view`},"dayNight.setSettings":{capName:`day-night`,capScope:`device`,addonId:null,access:`create`},"decoder.createSession":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.destroySession":{capName:`decoder`,capScope:`system`,addonId:null,access:`delete`},"decoder.getFrame":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getInfo":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getShmStats":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.getStats":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.listActiveSessions":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.openStream":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pullFrames":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pullHandles":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.pushPacket":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.reprobeHwaccel":{capName:`decoder`,capScope:`system`,addonId:null,access:`create`},"decoder.supportsCodec":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.updateConfig":{capName:`decoder`,capScope:`system`,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.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`},"deviceDiscovery.adoptDevice":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`create`},"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.exposeDevice":{capName:`device-export`,capScope:`system`,addonId:null,access:`create`},"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`},"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.adoptionListCandidateFilters":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.adoptionListCandidates":{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.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.getChildren":{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.getLinkedDevices":{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.listAll":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listBindableCapsForDeviceType":{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.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.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.runDeviceAction":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setChildLayout":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setDeviceLinks":{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.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.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.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.getAllSnapshots":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getSnapshot":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.setCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"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`},"events.getEventClipUrl":{capName:`events`,capScope:`device`,addonId:null,access:`view`},"events.getEvents":{capName:`events`,capScope:`device`,addonId:null,access:`view`},"events.getEventThumbnail":{capName:`events`,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.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`},"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`},"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`},"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`},"imageSettings.getOptions":{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.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`},"lawnMowerControl.dock":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`create`},"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.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.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.complete":{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`},"localNetwork.getAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getConnectionEndpoints":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getPreferred":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.list":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.resetAllowlistToBestMatch":{capName:`local-network`,capScope:`system`,addonId:null,access:`delete`},"localNetwork.setAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"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`},"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.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.dumpHeapSnapshot":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`create`},"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.getProcessStats":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.killProcess":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`create`},"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.isDetected":{capName:`motion`,capScope:`device`,addonId:null,access:`view`},"motionDetection.analyze":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`create`},"motionDetection.removeCamera":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionDetection.reset":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionTrigger.setMotionTrigger":{capName:`motion-trigger`,capScope:`device`,addonId:null,access:`create`},"motionZones.getOptions":{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.setEnabled":{capName:`native-object-detection`,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`},"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`},"nodes.clusterAddonStatus":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.deployAddon":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"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.listTargetKinds":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.listTargets":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"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`},"notifier.cancel":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"notifier.send":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"oauthIntegration.getDescriptor":{capName:`oauth-integration`,capScope:`system`,addonId:null,access:`view`},"osd.setOverlay":{capName:`osd`,capScope:`device`,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.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.clearTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteDeviceEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.getActiveTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getAudioEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventDensity":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventMedia":{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.getMotionEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getSensorEvents":{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.listEventKinds":{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.listTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"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.searchObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.wipeAllAnalytics":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineExecutor.cacheFrameInPool":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.clearDeviceOverrides":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.deleteModel":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.deleteTemplate":{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.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.listTemplates":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"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.saveTemplate":{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.updateTemplate":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.validatePipeline":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.assignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.assignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.deleteTemplate":{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.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.getCapabilityBindings":{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.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.listAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.listTemplates":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.rebalance":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.removeAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.resetNodePipelineDefaults":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.resolvePipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.saveTemplate":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentCapabilities":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentDetectWeight":{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.setCameraPipelineForAgent":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepOverride":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepToggle":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCapabilityBinding":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setPipelineDevicePin":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.unassignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.unassignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.updateTemplate":{capName:`pipeline-orchestrator`,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.reportMotion":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.runDetailSubtree":{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`},"privacyMask.getOptions":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`view`},"privacyMask.setMask":{capName:`privacy-mask`,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.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.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.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.deleteFootprint":{capName:`recording`,capScope:`system`,addonId:null,access:`delete`},"recording.getAvailability":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getDaysWithRecordings":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getDeviceConfig":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getPlaybackManifest":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.getStorageUsage":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.listOpsLog":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.locateSegment":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.pruneFootage":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recording.readSegmentBytes":{capName:`recording`,capScope:`system`,addonId:null,access:`view`},"recording.rescanStorage":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recording.setDeviceConfig":{capName:`recording`,capScope:`system`,addonId:null,access:`create`},"recordingExport.cancelExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`create`},"recordingExport.createExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`create`},"recordingExport.deleteExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`delete`},"recordingExport.getDownloadUrl":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`view`},"recordingExport.getExport":{capName:`recordingExport`,capScope:`system`,addonId:null,access:`view`},"recordingExport.listExports":{capName:`recordingExport`,capScope:`system`,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.listScenes":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.recheckNow":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"sceneMonitor.updateScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"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.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.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.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.update":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"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.getSnapshot":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getSnapshotOverview":{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.getDefaultLocation":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.list":{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`},"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.assignProfile":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.getAllRtspEntries":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getBrokerStats":{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.publishCameraStream":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.pullAudioChunks":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.pullFrameHandles":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.regenerateRtspToken":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.releaseStreamWithCodec":{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.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.subscribeFrames":{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`},"streamBroker.unsubscribeFrames":{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.setProfile":{capName:`stream-params`,capScope:`device`,addonId:null,access:`create`},"switch.setState":{capName:`switch`,capScope:`device`,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.getRetentionConfig":{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.setRetentionConfig":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"toast.onToast":{capName:`toast`,capScope:`system`,addonId:null,access:`view`},"turnProvider.getTurnServers":{capName:`turn-provider`,capScope:`system`,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.createApiKey":{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.getTotpStatus":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listApiKeys":{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.updateUser":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.validateApiKey":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"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.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.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`},"videoclips.getClipPlayback":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.listClips":{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.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`},"webrtcSession.addIceCandidate":{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.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.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`}}),Object.freeze({broker:`broker`,"device-export":`device-export`,llm:`ai`,"mesh-network":`mesh`,"mqtt-broker":`broker`,"network-access":`ingress`,"smtp-provider":`email`});var Ew=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(){}},Dw=new class extends Ew{#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`}},Ow={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},kw=new class{#e=Ow;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 Aw(e){setTimeout(e,0)}var jw=typeof window>`u`||`Deno`in globalThis;function Mw(){}function Nw(e,t){return typeof e==`function`?e(t):e}function Pw(e){return typeof e==`number`&&e>=0&&e!==1/0}function Fw(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Iw(e,t){return typeof e==`function`?e(t):e}function Lw(e,t){return typeof e==`function`?e(t):e}function Rw(e,t){let{type:n=`all`,exact:r,fetchStatus:a,predicate:o,queryKey:s,stale:c}=e;if(s){if(r){if(t.queryHash!==Bw(s,t.options))return!1}else if(!Hw(t.queryKey,s))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof c==`boolean`&&t.isStale()!==c||a&&a!==t.state.fetchStatus||o&&!o(t))}function zw(e,t){let{exact:n,status:r,predicate:a,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(n){if(Vw(t.options.mutationKey)!==Vw(o))return!1}else if(!Hw(t.options.mutationKey,o))return!1}return!(r&&t.state.status!==r||a&&!a(t))}function Bw(e,t){return(t?.queryKeyHashFn||Vw)(e)}function Vw(e){return JSON.stringify(e,(e,t)=>qw(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function Hw(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>Hw(e[n],t[n])):!1}var Uw=Object.prototype.hasOwnProperty;function Ww(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=Kw(e)&&Kw(t);if(!r&&!(qw(e)&&qw(t)))return t;let a=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),s=o.length,c=r?Array(s):{},l=0;for(let u=0;u<s;u++){let s=r?u:o[u],d=e[s],f=t[s];if(d===f){c[s]=d,(r?u<a:Uw.call(e,s))&&l++;continue}if(d===null||f===null||typeof d!=`object`||typeof f!=`object`){c[s]=f;continue}let p=Ww(d,f,n+1);c[s]=p,p===d&&l++}return a===s&&l===a?e:c}function Gw(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 Kw(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function qw(e){if(!Jw(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!Jw(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function Jw(e){return Object.prototype.toString.call(e)===`[object Object]`}function Yw(e){return new Promise(t=>{kw.setTimeout(t,e)})}function Xw(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:Ww(e,t)}function Zw(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Qw(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var $w=Symbol();function eT(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===$w?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function tT(e,t){return typeof e==`function`?e(...t):!!e}function nT(e,t,n){let r=!1,a;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(a??=t(),r?a:(r=!0,a.aborted?n():a.addEventListener(`abort`,n,{once:!0}),a))}),e}var rT=(()=>{let e=()=>jw;return{isServer(){return e()},setIsServer(t){e=t}}})();function iT(){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 aT=Aw;function oT(){let e=[],t=0,n=e=>{e()},r=e=>{e()},a=aT,o=r=>{t?e.push(r):a(()=>{n(r)})},s=()=>{let t=e;e=[],t.length&&a(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||s()}return n},batchCalls:e=>(...t)=>{o(()=>{e(...t)})},schedule:o,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{a=e}}}var sT=oT(),cT=new class extends Ew{#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 lT(e){return Math.min(1e3*2**e,3e4)}function uT(e){return(e??`online`)===`online`?cT.isOnline():!0}var dT=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function fT(e){let t=!1,n=0,r,a=iT(),o=()=>a.status!==`pending`,s=t=>{if(!o()){let n=new dT(t);p(n),e.onCancel?.(n)}},c=()=>{t=!0},l=()=>{t=!1},u=()=>Dw.isFocused()&&(e.networkMode===`always`||cT.isOnline())&&e.canRun(),d=()=>uT(e.networkMode)&&e.canRun(),f=e=>{o()||(r?.(),a.resolve(e))},p=e=>{o()||(r?.(),a.reject(e))},m=()=>new Promise(t=>{r=e=>{(o()||u())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,o()||e.onContinue?.()}),h=()=>{if(o())return;let r,a=n===0?e.initialPromise:void 0;try{r=a??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(f).catch(r=>{if(o())return;let a=e.retry??(rT.isServer()?0:3),s=e.retryDelay??lT,c=typeof s==`function`?s(n,r):s,l=a===!0||typeof a==`number`&&n<a||typeof a==`function`&&a(n,r);if(t||!l){p(r);return}n++,e.onFail?.(n,r),Yw(c).then(()=>u()?void 0:m()).then(()=>{t?p(r):h()})})};return{promise:a,status:()=>a.status,cancel:s,continue:()=>(r?.(),a),cancelRetry:c,continueRetry:l,canStart:d,start:()=>(d()?h():m().then(h),a)}}var pT=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Pw(this.gcTime)&&(this.#e=kw.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(rT.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(kw.clearTimeout(this.#e),this.#e=void 0)}};function mT(e){return{onFetch:(t,n)=>{let r=t.options,a=t.fetchOptions?.meta?.fetchMore?.direction,o=t.state.data?.pages||[],s=t.state.data?.pageParams||[],c={pages:[],pageParams:[]},l=0,u=async()=>{let n=!1,u=e=>{nT(e,()=>t.signal,()=>n=!0)},d=eT(t.options,t.fetchOptions),f=async(e,r,a)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let o=await d((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:a?`backward`:`forward`,meta:t.options.meta};return u(e),e})()),{maxPages:s}=t.options,c=a?Qw:Zw;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(a&&o.length){let e=a===`backward`,t=e?gT:hT,n={pages:o,pageParams:s};c=await f(n,t(r,n),e)}else{let t=e??o.length;do{let e=l===0?s[0]??r.initialPageParam:hT(r,c);if(l>0&&e==null)break;c=await f(c,e),l++}while(l<t)}return c};t.options.persister?t.fetchFn=()=>t.options.persister?.(u,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=u}}}function hT(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 gT(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function _T(e,t){return t?hT(e,t)!=null:!1}function vT(e,t){return!t||!e.getPreviousPageParam?!1:gT(e,t)!=null}var yT=class extends pT{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=ST(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=ST(this.options);e.data!==void 0&&(this.setState(xT(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=Xw(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(Mw).catch(Mw):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>Lw(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===$w||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>Iw(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!Fw(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},a=()=>{let e=eT(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},o=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:a};return r(e),e})();(this.#e===`infinite`?mT(this.options.pages):this.options.behavior)?.onFetch(o,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==o.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:o.fetchOptions?.meta}),this.#a=fT({initialPromise:t?.initialPromise,fn:o.fetchFn,onCancel:e=>{e instanceof dT&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof dT){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...bT(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...xT(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),sT.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function bT(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:uT(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function xT(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function ST(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var CT=class extends Ew{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=iT(),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),TT(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ET(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ET(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 Lw(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&&!Gw(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&DT(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||Lw(this.options.enabled,this.#t)!==Lw(t.enabled,this.#t)||Iw(this.options.staleTime,this.#t)!==Iw(t.staleTime,this.#t))&&this.#g();let a=this.#_();r&&(this.#t!==n||Lw(this.options.enabled,this.#t)!==Lw(t.enabled,this.#t)||a!==this.#p)&&this.#v(a)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return kT(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(Mw)),t}#g(){this.#b();let e=Iw(this.options.staleTime,this.#t);if(rT.isServer()||this.#r.isStale||!Pw(e))return;let t=Fw(this.#r.dataUpdatedAt,e)+1;this.#d=kw.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,!(rT.isServer()||Lw(this.options.enabled,this.#t)===!1||!Pw(this.#p)||this.#p===0)&&(this.#f=kw.setInterval(()=>{(this.options.refetchIntervalInBackground||Dw.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(kw.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(kw.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,a=this.#r,o=this.#i,s=this.#a,c=e===n?this.#n:e.state,{state:l}=e,u={...l},d=!1,f;if(t._optimisticResults){let a=this.hasListeners(),o=!a&&TT(e,t),s=a&&DT(e,n,t,r);(o||s)&&(u={...u,...bT(l.data,e.options)}),t._optimisticResults===`isRestoring`&&(u.fetchStatus=`idle`)}let{error:p,errorUpdatedAt:m,status:h}=u;f=u.data;let g=!1;if(t.placeholderData!==void 0&&f===void 0&&h===`pending`){let e;a?.isPlaceholderData&&t.placeholderData===s?.placeholderData?(e=a.data,g=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(h=`success`,f=Xw(a?.data,e,t),d=!0)}if(t.select&&f!==void 0&&!g)if(a&&f===o?.data&&t.select===this.#c)f=this.#l;else try{this.#c=t.select,f=t.select(f),f=Xw(a?.data,f,t),this.#l=f,this.#s=null}catch(e){this.#s=e}this.#s&&(p=this.#s,f=this.#l,m=Date.now(),h=`error`);let _=u.fetchStatus===`fetching`,v=h===`pending`,y=h===`error`,b=v&&_,x=f!==void 0,S={status:h,fetchStatus:u.fetchStatus,isPending:v,isSuccess:h===`success`,isError:y,isInitialLoading:b,isLoading:b,data:f,dataUpdatedAt:u.dataUpdatedAt,error:p,errorUpdatedAt:m,failureCount:u.fetchFailureCount,failureReason:u.fetchFailureReason,errorUpdateCount:u.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:u.dataUpdateCount>c.dataUpdateCount||u.errorUpdateCount>c.errorUpdateCount,isFetching:_,isRefetching:_&&!v,isLoadingError:y&&!x,isPaused:u.fetchStatus===`paused`,isPlaceholderData:d,isRefetchError:y&&x,isStale:OT(e,t),refetch:this.refetch,promise:this.#o,isEnabled:Lw(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=S.data!==void 0,r=S.status===`error`&&!t,a=e=>{r?e.reject(S.error):t&&e.resolve(S.data)},o=()=>{a(this.#o=S.promise=iT())},s=this.#o;switch(s.status){case`pending`:e.queryHash===n.queryHash&&a(s);break;case`fulfilled`:(r||S.data!==s.value)&&o();break;case`rejected`:(!r||S.error!==s.reason)&&o();break}}return S}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),!Gw(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){sT.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function wT(e,t){return Lw(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&Lw(t.retryOnMount,e)===!1)}function TT(e,t){return wT(e,t)||e.state.data!==void 0&&ET(e,t,t.refetchOnMount)}function ET(e,t,n){if(Lw(t.enabled,e)!==!1&&Iw(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&OT(e,t)}return!1}function DT(e,t,n,r){return(e!==t||Lw(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&OT(e,n)}function OT(e,t){return Lw(t.enabled,e)!==!1&&e.isStaleByTime(Iw(t.staleTime,e))}function kT(e,t){return!Gw(e.getCurrentResult(),t)}var AT=class extends CT{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:a,isRefetching:o,isError:s,isRefetchError:c}=r,l=n.fetchMeta?.fetchMore?.direction,u=s&&l===`forward`,d=a&&l===`forward`,f=s&&l===`backward`,p=a&&l===`backward`;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:_T(t,n.data),hasPreviousPage:vT(t,n.data),isFetchNextPageError:u,isFetchingNextPage:d,isFetchPreviousPageError:f,isFetchingPreviousPage:p,isRefetchError:c&&!u&&!f,isRefetching:o&&!d&&!p}}},jT=class extends pT{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||MT(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=fT({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,a=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:a}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:a})}let o=await this.#r.start();return await this.#n.config.onSuccess?.(o,e,this.state.context,this,n),await this.options.onSuccess?.(o,e,this.state.context,n),await this.#n.config.onSettled?.(o,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(o,null,e,this.state.context,n),this.#i({type:`success`,data:o}),o}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),sT.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function MT(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var NT=class extends Ew{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new jT({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t);if(n)if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=PT(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}else return!0}runNext(e){let t=PT(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){sT.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>zw(t,e))}findAll(e={}){return this.getAll().filter(t=>zw(e,t))}notify(e){sT.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return sT.batch(()=>Promise.all(e.map(e=>e.continue().catch(Mw))))}};function PT(e){return e.options.scope?.id}var FT=class extends Ew{#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),Gw(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&Vw(t.mutationKey)!==Vw(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??MT();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){sT.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 IT(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function LT(e,t,n){let r=e.slice(0);return r[t]=n,r}var RT=class extends Ew{#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,sT.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()),a=e.length!==n.length,o=n.some((t,n)=>t!==e[n]),s=a||o,c=s?!0:r.some((e,t)=>{let n=this.#t[t];return!n||!Gw(e,n)});!s&&!c||(s&&(this.#l=t,this.#i=n),this.#t=r,this.hasListeners()&&(s&&(IT(e,n).forEach(e=>{e.destroy()}),IT(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)),a=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,a),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let a=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?a:n.observer.trackResult(a,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,n){if(t){let r=this.#c,a=n!==void 0&&r!==void 0&&(r.length!==n.length||n.some((e,t)=>e!==r[t]));return(!this.#a||this.#t!==this.#s||a||t!==this.#o)&&(this.#o=t,this.#s=this.#t,n!==void 0&&(this.#c=n),this.#a=Ww(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),a=t.get(r.queryHash)?.shift()??new CT(this.#e,r);n.push({defaultedQueryOptions:r,observer:a})}),n}#m(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=LT(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)&&sT.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}},zT=class extends Ew{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,a=t.queryHash??Bw(r,t),o=this.get(a);return o||(o=new yT({client:e,queryKey:r,queryHash:a,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(o)),o}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){sT.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>Rw(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>Rw(e,t)):t}notify(e){sT.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){sT.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){sT.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},BT=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new zT,this.#t=e.mutationCache||new NT,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=Dw.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=cT.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Iw(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),a=this.#e.get(r.queryHash)?.state.data,o=Nw(t,a);if(o!==void 0)return this.#e.build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return sT.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;sT.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return sT.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=sT.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(Mw).catch(Mw)}invalidateQueries(e,t={}){return sT.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=sT.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(Mw)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(Mw)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(Iw(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Mw).catch(Mw)}fetchInfiniteQuery(e){return e._type=`infinite`,this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Mw).catch(Mw)}ensureInfiniteQueryData(e){return e._type=`infinite`,this.ensureQueryData(e)}resumePausedMutations(){return cT.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(Vw(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{Hw(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(Vw(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{Hw(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=Bw(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===$w&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},VT=S.createContext(void 0),HT=e=>{let t=S.useContext(VT);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},UT=({client:e,children:t})=>(S.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,C.jsx)(VT.Provider,{value:e,children:t})),WT=S.createContext(!1),GT=()=>S.useContext(WT);WT.Provider;function KT(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var qT=S.createContext(KT()),JT=()=>S.useContext(qT),YT=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?tT(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},XT=e=>{S.useEffect(()=>{e.clearReset()},[e])},ZT=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:a})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(a&&e.data===void 0||tT(n,[e.error,r])),QT=(e,t)=>t.state.data===void 0,$T=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))}},eE=(e,t)=>e.isLoading&&e.isFetching&&!t,tE=(e,t)=>e?.suspense&&t.isPending,nE=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function rE({queries:e,...t},n){let r=HT(n),a=GT(),o=JT(),s=S.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=a?`isRestoring`:`optimistic`,t}),[e,r,a]);s.forEach(e=>{$T(e),YT(e,o,r.getQueryCache().get(e.queryHash))}),XT(o);let[c]=S.useState(()=>new RT(r,s,t)),[l,u,d]=c.getOptimisticResult(s,t.combine),f=!a&&t.subscribed!==!1;S.useSyncExternalStore(S.useCallback(e=>f?c.subscribe(sT.batchCalls(e)):Mw,[c,f]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),S.useEffect(()=>{c.setQueries(s,t)},[s,t,c]);let p=l.some((e,t)=>tE(s[t],e))?l.flatMap((e,t)=>{let n=s[t];return n&&tE(n,e)?nE(n,new CT(r,n),o):[]}):[];if(p.length>0)throw Promise.all(p);let m=l.find((e,t)=>{let n=s[t];return n&&ZT({result:e,errorResetBoundary:o,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(m?.error)throw m.error;return u(d())}function iE(e,t,n){let r=GT(),a=JT(),o=HT(n),s=o.defaultQueryOptions(e);o.getDefaultOptions().queries?._experimental_beforeQuery?.(s);let c=o.getQueryCache().get(s.queryHash),l=e.subscribed!==!1;s._optimisticResults=r?`isRestoring`:l?`optimistic`:void 0,$T(s),YT(s,a,c),XT(a);let u=!o.getQueryCache().get(s.queryHash),[d]=S.useState(()=>new t(o,s)),f=d.getOptimisticResult(s),p=!r&&l;if(S.useSyncExternalStore(S.useCallback(e=>{let t=p?d.subscribe(sT.batchCalls(e)):Mw;return d.updateResult(),t},[d,p]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),S.useEffect(()=>{d.setOptions(s)},[s,d]),tE(s,f))throw nE(s,d,a);if(ZT({result:f,errorResetBoundary:a,throwOnError:s.throwOnError,query:c,suspense:s.suspense}))throw f.error;return o.getDefaultOptions().queries?._experimental_afterQuery?.(s,f),s.experimental_prefetchInRender&&!rT.isServer()&&eE(f,r)&&(u?nE(s,d,a):c?.promise)?.catch(Mw).finally(()=>{d.updateResult()}),s.notifyOnChangeProps?f:d.trackResult(f)}function aE(e,t){return iE(e,CT,t)}function oE(e,t){return iE({...e,enabled:!0,suspense:!0,throwOnError:QT,placeholderData:void 0},CT,t)}function sE(e,t){return iE({...e,enabled:!0,suspense:!0,throwOnError:QT},AT,t)}function cE(e,t){return rE({...e,queries:e.queries.map(e=>({...e,suspense:!0,throwOnError:QT,enabled:!0,placeholderData:void 0}))},t)}function lE(e,t){let n=HT(t);n.getQueryState(e.queryKey)||n.prefetchQuery(e)}function uE(e,t){let n=HT(t);n.getQueryState(e.queryKey)||n.prefetchInfiniteQuery(e)}function dE(e){return e}function fE(e){return e}function pE(e,t){let n=HT(t),[r]=S.useState(()=>new FT(n,e));S.useEffect(()=>{r.setOptions(e)},[r,e]);let a=S.useSyncExternalStore(S.useCallback(e=>r.subscribe(sT.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),o=S.useCallback((e,t)=>{r.mutate(e,t).catch(Mw)},[r]);if(a.error&&tT(r.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:o,mutateAsync:a.mutate}}function mE(e,t){return iE(e,AT,t)}g();var hE=Object.create,gE=Object.defineProperty,_E=Object.getOwnPropertyDescriptor,vE=Object.getOwnPropertyNames,yE=Object.getPrototypeOf,bE=Object.prototype.hasOwnProperty,xE=(e,t)=>function(){return t||(0,e[vE(e)[0]])((t={exports:{}}).exports,t),t.exports},SE=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=vE(t),o=0,s=a.length,c;o<s;o++)c=a[o],!bE.call(e,c)&&c!==n&&gE(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=_E(t,c))||r.enumerable});return e},CE=(e,t,n)=>(n=e==null?{}:hE(yE(e)),SE(t||!e||!e.__esModule?gE(n,`default`,{value:e,enumerable:!0}):n,e)),wE=xE({"../../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}}),TE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=wE().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),EE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=wE().default,r=TE();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),DE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=EE();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}}),OE=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=DE();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}});function kE(e){let t={subscribe(t){let n=null,r=!1,a=!1,o=!1;function s(){if(n===null){o=!0;return}a||(a=!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),s())},complete(){var e;r||(r=!0,(e=t.complete)==null||e.call(t),s())}}),o&&s(),{unsubscribe:s}},pipe(...e){return e.reduce(AE,t)}};return t}function AE(e,t){return t(e)}function jE(e){let t=new AbortController;return new Promise((n,r)=>{let a=!1;function o(){a||(a=!0,s.unsubscribe())}t.signal.addEventListener(`abort`,()=>{r(t.signal.reason)});let s=e.subscribe({next(e){a=!0,n(e),o()},error(e){r(e)},complete(){t.abort(),o()}})})}function ME(e){return e=>{let t=0,n=null,r=[];function a(){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 o(){if(t===0&&n){let e=n;n=null,e.unsubscribe()}}return kE(e=>(t++,r.push(e),a(),{unsubscribe(){t--,o();let n=r.findIndex(t=>t===e);n>-1&&r.splice(n,1)}}))}}function NE(e){let t=e,n=[],r=e=>{t!==void 0&&e.next(t),n.push(e)},a=e=>{n.splice(n.indexOf(e),1)},o=kE(e=>(r(e),()=>{a(e)}));return o.next=e=>{if(t!==e){t=e;for(let t of n)t.next(e)}},o.get=()=>t,o}function PE(e){return kE(t=>{function n(t=0,r=e.op){let a=e.links[t];if(!a)throw Error(`No more links to execute - did you forget to add an ending link?`);return a({op:r,next(e){return n(t+1,e)}})}return n().subscribe(t)})}function FE(e){return!!e&&!Array.isArray(e)&&typeof e==`object`}function IE(){return Object.create(null)}var LE=typeof Symbol==`function`&&!!Symbol.asyncIterator;function RE(e){return LE&&FE(e)&&Symbol.asyncIterator in e}var zE=e=>e();function BE(e=0){return new Promise(t=>setTimeout(t,e))}var VE={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};VE.BAD_GATEWAY,VE.SERVICE_UNAVAILABLE,VE.GATEWAY_TIMEOUT,VE.INTERNAL_SERVER_ERROR;var HE=Object.create,UE=Object.defineProperty,WE=Object.getOwnPropertyDescriptor,GE=Object.getOwnPropertyNames,KE=Object.getPrototypeOf,qE=Object.prototype.hasOwnProperty,JE=(e,t)=>function(){return t||(0,e[GE(e)[0]])((t={exports:{}}).exports,t),t.exports},YE=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=GE(t),o=0,s=a.length,c;o<s;o++)c=a[o],!qE.call(e,c)&&c!==n&&UE(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=WE(t,c))||r.enumerable});return e},XE=(e,t,n)=>(n=e==null?{}:HE(KE(e)),YE(t||!e||!e.__esModule?UE(n,`default`,{value:e,enumerable:!0}):n,e)),ZE=()=>{},QE=e=>{Object.freeze&&Object.freeze(e)};function $E(e,t,n){let r=t.join(`.`);return n[r]??(n[r]=new Proxy(ZE,{get(r,a){if(!(typeof a!=`string`||a===`then`))return $E(e,[...t,a],n)},apply(n,r,a){let o=t[t.length-1];if(o===`valueOf`||o===`toString`||o===`toJSON`)return`tRPC.proxy(${t.slice(0,-1).join(`.`)})`;let s={args:a,path:t};return o===`call`?s={args:a.length>=2?[a[1]]:[],path:t.slice(0,-1)}:o===`apply`&&(s={args:a.length>=2?a[1]:[],path:t.slice(0,-1)}),QE(s.args),QE(s.path),e(s)}})),n[r]}var eD=e=>$E(e,[],IE()),tD=e=>new Proxy(ZE,{get(t,n){if(n!==`then`)return e(n)}}),nD=JE({"../../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}}),rD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=nD().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),iD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=nD().default,r=rD();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),aD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=iD();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}}),oD=JE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=aD();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}});XE(oD(),1),XE(aD(),1);var sD=XE(oD(),1);function cD(e,t){if(`error`in e){let n=t.deserialize(e.error);return{ok:!1,error:(0,sD.default)((0,sD.default)({},e),{},{error:n})}}return{ok:!0,result:(0,sD.default)((0,sD.default)({},e.result),(!e.result.type||e.result.type===`data`)&&{type:`data`,data:t.deserialize(e.result.data)})}}var lD=class extends Error{constructor(){super(`Unable to transform response from server`)}};function uD(e,t){let n;try{n=cD(e,t)}catch{throw new lD}if(!n.ok&&(!FE(n.error.error)||typeof n.error.error.code!=`number`)||n.ok&&!FE(n.result))throw new lD;return n}XE(oD(),1);var dD=CE(DE(),1),fD=CE(OE(),1);function pD(e){return e instanceof gD}function mD(e){return FE(e)&&FE(e.error)&&typeof e.error.code==`number`&&typeof e.error.message==`string`}function hD(e,t){return typeof e==`string`?e:FE(e)&&typeof e.message==`string`?e.message:t}var gD=class e extends Error{constructor(t,n){var r,a;let o=n?.cause;super(t,{cause:o}),(0,dD.default)(this,`cause`,void 0),(0,dD.default)(this,`shape`,void 0),(0,dD.default)(this,`data`,void 0),(0,dD.default)(this,`meta`,void 0),this.meta=n?.meta,this.cause=o,this.shape=n==null||(r=n.result)==null?void 0:r.error,this.data=n==null||(a=n.result)==null?void 0:a.error.data,this.name=`TRPCClientError`,Object.setPrototypeOf(this,e.prototype)}static from(t,n={}){let r=t;return pD(r)?(n.meta&&(r.meta=(0,fD.default)((0,fD.default)({},r.meta),n.meta)),r):mD(r)?new e(r.error.message,(0,fD.default)((0,fD.default)({},n),{},{result:r,cause:n.cause})):new e(hD(r,`Unknown error`),(0,fD.default)((0,fD.default)({},n),{},{cause:r}))}};function _D(e){let t=e;return t?`input`in t?t:{input:t,output:t}:{input:{serialize:e=>e,deserialize:e=>e},output:{serialize:e=>e,deserialize:e=>e}}}var vD=e=>typeof e==`function`;function yD(e){if(e)return e;if(typeof window<`u`&&vD(window.fetch))return window.fetch;if(typeof globalThis<`u`&&vD(globalThis.fetch))return globalThis.fetch;throw Error(`No fetch implementation found`)}var bD=CE(OE());function xD(e){return{url:e.url.toString(),fetch:e.fetch,transformer:_D(e.transformer),methodOverride:e.methodOverride}}function SD(e){let t={};for(let n=0;n<e.length;n++)t[n]=e[n];return t}var CD={query:`GET`,mutation:`POST`,subscription:`PATCH`};function wD(e){return`input`in e?e.transformer.input.serialize(e.input):SD(e.inputs.map(t=>e.transformer.input.serialize(t)))}var TD=e=>{let t=e.url.split(`?`),n=t[0].replace(/\/$/,``)+`/`+e.path,r=[];if(t[1]&&r.push(t[1]),`inputs`in e&&r.push(`batch=1`),e.type===`query`||e.type===`subscription`){let t=wD(e);t!==void 0&&e.methodOverride!==`POST`&&r.push(`input=${encodeURIComponent(JSON.stringify(t))}`)}return r.length&&(n+=`?`+r.join(`&`)),n},ED=e=>{if(e.type===`query`&&e.methodOverride!==`POST`)return;let t=wD(e);return t===void 0?void 0:JSON.stringify(t)},DD=e=>jD((0,bD.default)((0,bD.default)({},e),{},{contentTypeHeader:`application/json`,getUrl:TD,getBody:ED})),OD=class extends Error{constructor(){let e=`AbortError`;super(e),this.name=e,this.message=e}},kD=e=>{var t;if(e?.aborted)throw(t=e.throwIfAborted)==null||t.call(e),typeof DOMException<`u`?new DOMException(`AbortError`,`AbortError`):new OD};async function AD(e){kD(e.signal);let t=e.getUrl(e),n=e.getBody(e),r=e.methodOverride??CD[e.type],a=await(async()=>{let t=await e.headers();return Symbol.iterator in t?Object.fromEntries(t):t})(),o=(0,bD.default)((0,bD.default)((0,bD.default)({},e.contentTypeHeader&&r!==`GET`?{"content-type":e.contentTypeHeader}:{}),e.trpcAcceptHeader?{[e.trpcAcceptHeaderKey??`trpc-accept`]:e.trpcAcceptHeader}:void 0),a);return yD(e.fetch)(t,{method:r,signal:e.signal,body:n,headers:o})}async function jD(e){let t={},n=await AD(e);t.response=n;let r=await n.json();return t.responseJSON=r,{json:r,meta:t}}function MD(e){return e instanceof Uint8Array||e instanceof Blob}function ND(e){return e instanceof FormData}var PD=CE(OE(),1),FD=e=>{if(`input`in e){let{input:t}=e;if(ND(t)){if(e.type!==`mutation`&&e.methodOverride!==`POST`)throw Error(`FormData is only supported for mutations`);return jD((0,PD.default)((0,PD.default)({},e),{},{contentTypeHeader:void 0,getUrl:TD,getBody:()=>t}))}if(MD(t)){if(e.type!==`mutation`&&e.methodOverride!==`POST`)throw Error(`Octet type input is only supported for mutations`);return jD((0,PD.default)((0,PD.default)({},e),{},{contentTypeHeader:`application/octet-stream`,getUrl:TD,getBody:()=>t}))}}return DD(e)};function ID(e){let t=xD(e);return()=>n=>{let{op:r}=n;return kE(n=>{let{path:a,input:o,type:s}=r;if(s===`subscription`)throw Error("Subscriptions are unsupported by `httpLink` - use `httpSubscriptionLink` or `wsLink`");let c=FD((0,PD.default)((0,PD.default)({},t),{},{type:s,path:a,input:o,signal:r.signal,headers(){return e.headers?typeof e.headers==`function`?e.headers({op:r}):e.headers:{}}})),l;return c.then(e=>{l=e.meta;let r=uD(e.json,t.transformer.output);if(!r.ok){n.error(gD.from(r.error,{meta:l}));return}n.next({context:e.meta,result:r.result}),n.complete()}).catch(e=>{n.error(gD.from(e,{meta:l}))}),()=>{}})}}CE(OE(),1),CE(OE(),1);var LD={encode:e=>JSON.stringify(e),decode:e=>{if(typeof e!=`string`)throw Error(`jsonEncoder received binary data. JSON uses text frames. Use a binary encoder for binary data.`);return JSON.parse(e)}},RD={enabled:!1,closeMs:0},zD={enabled:!1,pongTimeoutMs:1e3,intervalMs:5e3},BD=e=>e===0?0:Math.min(1e3*2**e,3e4),VD=(e,...t)=>typeof e==`function`?e(...t):e,HD=CE(DE(),1),UD=class e extends Error{constructor(t){super(t.message,{cause:t.cause}),this.name=`TRPCWebSocketClosedError`,Object.setPrototypeOf(this,e.prototype)}},WD=class{constructor(e,t){this.onTimeout=e,this.timeoutMs=t,(0,HD.default)(this,`timeout`,void 0)}reset(){this.timeout&&=(clearTimeout(this.timeout),setTimeout(this.onTimeout,this.timeoutMs))}start(){clearTimeout(this.timeout),this.timeout=setTimeout(this.onTimeout,this.timeoutMs)}stop(){clearTimeout(this.timeout),this.timeout=void 0}};function GD(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}async function KD(e){let t=await VD(e.url);return e.connectionParams?t+`${t.includes(`?`)?`&`:`?`}connectionParams=1`:t}async function qD(e,t){let n={method:`connectionParams`,data:await VD(e)};return t.encode(n)}var JD=CE(DE(),1),YD=class{constructor(){(0,JD.default)(this,`outgoingRequests`,[]),(0,JD.default)(this,`pendingRequests`,{})}register(e,t){let{promise:n,resolve:r}=GD();return this.outgoingRequests.push({id:String(e.id),message:e,end:n,callbacks:{next:t.next,complete:()=>{t.complete(),r()},error:e=>{t.error(e),r()}}}),()=>{this.delete(e.id),t.complete(),r()}}delete(e){e!==null&&(this.outgoingRequests=this.outgoingRequests.filter(({id:t})=>t!==String(e)),delete this.pendingRequests[String(e)])}flush(){let e=this.outgoingRequests;this.outgoingRequests=[];for(let t of e)this.pendingRequests[t.id]=t;return e}getPendingRequests(){return Object.values(this.pendingRequests)}getPendingRequest(e){return e===null?null:this.pendingRequests[String(e)]}getOutgoingRequests(){return this.outgoingRequests}getRequests(){return[...this.getOutgoingRequests().map(e=>({state:`outgoing`,message:e.message,end:e.end,callbacks:e.callbacks})),...this.getPendingRequests().map(e=>({state:`pending`,message:e.message,end:e.end,callbacks:e.callbacks}))]}hasPendingRequests(){return this.getPendingRequests().length>0}hasPendingSubscriptions(){return this.getPendingRequests().some(e=>e.message.method===`subscription`)}hasOutgoingRequests(){return this.outgoingRequests.length>0}},XD=CE(DE(),1);function ZD(e){let{promise:t,resolve:n,reject:r}=GD();return e.addEventListener(`open`,()=>{e.removeEventListener(`error`,r),n()}),e.addEventListener(`error`,r),t}function QD(e,{intervalMs:t,pongTimeoutMs:n}){let r,a;function o(){r=setTimeout(()=>{e.send(`PING`),a=setTimeout(()=>{e.close()},n)},t)}function s(){clearTimeout(r),o()}function c(){clearTimeout(a),s()}e.addEventListener(`open`,o),e.addEventListener(`message`,({data:e})=>{clearTimeout(r),o(),e===`PONG`&&c()}),e.addEventListener(`close`,()=>{clearTimeout(r),clearTimeout(a)})}var $D=class e{constructor(t){if((0,XD.default)(this,`id`,++e.connectCount),(0,XD.default)(this,`WebSocketPonyfill`,void 0),(0,XD.default)(this,`urlOptions`,void 0),(0,XD.default)(this,`keepAliveOpts`,void 0),(0,XD.default)(this,`encoder`,void 0),(0,XD.default)(this,`wsObservable`,NE(null)),(0,XD.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=KD(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&&QD(e,t.keepAliveOpts),e.addEventListener(`close`,()=>{t.ws===e&&(t.ws=null)}),await ZD(e),t.urlOptions.connectionParams&&e.send(await qD(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,XD.default)($D,`connectCount`,0);function eO(e){return e.isOpen()?{id:e.id,state:`open`,ws:e.ws}:e.isClosed()?{id:e.id,state:`closed`,ws:e.ws}:e.ws?{id:e.id,state:`connecting`,ws:e.ws}:null}var tO=CE(DE(),1),nO=CE(OE(),1),rO=class{constructor(e){(0,tO.default)(this,`connectionState`,void 0),(0,tO.default)(this,`allowReconnect`,!1),(0,tO.default)(this,`requestManager`,new YD),(0,tO.default)(this,`activeConnection`,void 0),(0,tO.default)(this,`reconnectRetryDelay`,void 0),(0,tO.default)(this,`inactivityTimeout`,void 0),(0,tO.default)(this,`callbacks`,void 0),(0,tO.default)(this,`lazyMode`,void 0),(0,tO.default)(this,`encoder`,void 0),(0,tO.default)(this,`reconnecting`,null),this.encoder=e.experimental_encoder??LD,this.callbacks={onOpen:e.onOpen,onClose:e.onClose,onError:e.onError};let t=(0,nO.default)((0,nO.default)({},RD),e.lazy);this.inactivityTimeout=new WD(()=>{if(this.requestManager.hasOutgoingRequests()||this.requestManager.hasPendingRequests()){this.inactivityTimeout.reset();return}this.close().catch(()=>null)},t.closeMs),this.activeConnection=new $D({WebSocketPonyfill:e.WebSocket,urlOptions:e,keepAlive:(0,nO.default)((0,nO.default)({},zD),e.keepAlive),encoder:this.encoder}),this.activeConnection.wsObservable.subscribe({next:e=>{e&&this.setupWebSocketListeners(e)}}),this.reconnectRetryDelay=e.retryDelayMs??BD,this.lazyMode=t.enabled,this.connectionState=NE({type:`state`,state:t.enabled?`idle`:`connecting`,error:null}),this.lazyMode||this.open().catch(()=>null)}async open(){var e=this;e.allowReconnect=!0,e.connectionState.get().state===`idle`&&e.connectionState.next({type:`state`,state:`connecting`,error:null});try{await e.activeConnection.open()}catch(t){return e.reconnect(new UD({message:`Initialization error`,cause:t})),e.reconnecting}}async close(){var e=this;e.allowReconnect=!1,e.inactivityTimeout.stop();let t=[];for(let n of e.requestManager.getRequests())n.message.method===`subscription`?n.callbacks.complete():n.state===`outgoing`?n.callbacks.error(gD.from(new UD({message:`Closed before connection was established`}))):t.push(n.end);await Promise.all(t).catch(()=>null),await e.activeConnection.close().catch(()=>null),e.connectionState.next({type:`state`,state:`idle`,error:null})}request({op:{id:e,type:t,path:n,input:r,signal:a},transformer:o,lastEventId:s}){return kE(c=>{let l=this.batchSend({id:e,method:t,params:{input:o.input.serialize(r),path:n,lastEventId:s}},(0,nO.default)((0,nO.default)({},c),{},{next(e){let t=uD(e,o.output);if(!t.ok){c.error(gD.from(t.error));return}c.next({result:t.result})}}));return()=>{l(),t===`subscription`&&this.activeConnection.isOpen()&&this.send({id:e,method:`subscription.stop`}),a?.removeEventListener(`abort`,l)}})}get connection(){return eO(this.activeConnection)}reconnect(e){var t=this;if(this.connectionState.next({type:`state`,state:`connecting`,error:gD.from(e)}),this.reconnecting)return;let n=async e=>{try{await BE(t.reconnectRetryDelay(e)),t.allowReconnect&&(await t.activeConnection.close(),await t.activeConnection.open(),t.requestManager.hasPendingRequests()&&t.send(t.requestManager.getPendingRequests().map(({message:e})=>e))),t.reconnecting=null}catch{await n(e+1)}};this.reconnecting=n(0)}setupWebSocketListeners(e){var t=this;let n=e=>{let t=this.requestManager.getPendingRequests();for(let{message:n,callbacks:r}of t)n.method!==`subscription`&&(r.error(gD.from(e??new UD({message:`WebSocket closed`,cause:e}))),this.requestManager.delete(n.id))};e.addEventListener(`open`,()=>{zE(async()=>{var e,n;t.lazyMode&&t.inactivityTimeout.start(),(e=(n=t.callbacks).onOpen)==null||e.call(n),t.connectionState.next({type:`state`,state:`pending`,error:null})}).catch(t=>{e.close(3e3),n(t)})}),e.addEventListener(`message`,({data:e})=>{if(this.inactivityTimeout.reset(),[`PING`,`PONG`].includes(e))return;let t=this.encoder.decode(e);if(`method`in t){this.handleIncomingRequest(t);return}this.handleResponseMessage(t)}),e.addEventListener(`close`,e=>{var t,r;n(e),(t=(r=this.callbacks).onClose)==null||t.call(r,e),(!this.lazyMode||this.requestManager.hasPendingSubscriptions())&&this.reconnect(new UD({message:`WebSocket closed`,cause:e}))}),e.addEventListener(`error`,e=>{var t,r;n(e),(t=(r=this.callbacks).onError)==null||t.call(r,e),this.reconnect(new UD({message:`WebSocket closed`,cause:e}))})}handleResponseMessage(e){let t=this.requestManager.getPendingRequest(e.id);if(!t)return;t.callbacks.next(e);let n=!0;`result`in e&&t.message.method===`subscription`&&(e.result.type===`data`&&(t.message.params.lastEventId=e.result.id),e.result.type!==`stopped`&&(n=!1)),n&&(t.callbacks.complete(),this.requestManager.delete(e.id))}handleIncomingRequest(e){e.method===`reconnect`&&this.reconnect(new UD({message:`Server requested reconnect`}))}send(e){if(!this.activeConnection.isOpen())throw Error(`Active connection is not open`);let t=e instanceof Array?e:[e];this.activeConnection.ws.send(this.encoder.encode(t.length===1?t[0]:t))}batchSend(e,t){var n=this;return this.inactivityTimeout.reset(),zE(async()=>{n.activeConnection.isOpen()||await n.open(),await BE(0),n.requestManager.hasOutgoingRequests()&&n.send(n.requestManager.flush().map(({message:e})=>e))}).catch(n=>{this.requestManager.delete(e.id),t.error(gD.from(n))}),this.requestManager.register(e,t)}};function iO(e){return new rO(e)}function aO(e){let{client:t}=e,n=_D(e.transformer);return()=>({op:e})=>kE(r=>{let a=e.type===`subscription`?t.connectionState.subscribe({next(t){r.next({result:t,context:e.context})}}):null,o=t.request({op:e,transformer:n}).subscribe(r);return()=>{o.unsubscribe(),a?.unsubscribe()}})}var oO=CE(DE(),1),sO=CE(OE(),1),cO=class{constructor(e){(0,oO.default)(this,`links`,void 0),(0,oO.default)(this,`runtime`,void 0),(0,oO.default)(this,`requestId`,void 0),this.requestId=0,this.runtime={},this.links=e.links.map(e=>e(this.runtime))}$request(e){return PE({links:this.links,op:(0,sO.default)((0,sO.default)({},e),{},{context:e.context??{},id:++this.requestId})}).pipe(ME())}async requestAsPromise(e){var t=this;try{return(await jE(t.$request(e))).result.data}catch(e){throw gD.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 a;(a=n.onStopped)==null||a.call(n);break;case`data`:case void 0:var o;(o=n.onData)==null||o.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)}})}},lO=Symbol.for(`trpc_untypedClient`),uO={query:`query`,mutate:`mutation`,subscribe:`subscription`},dO=e=>uO[e];function fO(e){let t=eD(({path:t,args:n})=>{let r=[...t],a=dO(r.pop()),o=r.join(`.`);return e[a](o,...n)});return tD(n=>n===lO?e:t[n])}function pO(e){return fO(new cO(e))}function mO(e){return e[lO]}CE(OE(),1),CE(OE(),1),CE(xE({"../../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,a,o=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&(t=e[n])!=null)return t.call(e);if(a&&(t=e[a])!=null)return new r(t.call(e));n=`@@asyncIterator`,a=`@@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),CE(OE(),1);var hO=xE({"../../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 a=r;if(typeof r!=`function`)throw TypeError(`Object is not disposable.`);a&&(r=function(){try{a.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,a=this.e,o=0;function s(){for(;r=n.pop();)try{if(!r.a&&o===1)return o=0,n.push(r),Promise.resolve().then(s);if(r.d){var e=r.d.call(r.v);if(r.a)return o|=2,Promise.resolve(e).then(s,c)}else o|=1}catch(e){return c(e)}if(o===1)return a===t?Promise.resolve():Promise.reject(a);if(a!==t)throw a}function c(n){return a=a===t?n:new e(n,a),s()}return s()}}}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),gO=xE({"../../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}}),_O=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(e,t){var n=gO();function r(e){return new n(e,0)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),vO=xE({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js"(e,t){var n=gO();function r(e){return function(){return new a(e.apply(this,arguments))}}function a(e){var t,r;function a(t,r){try{var s=e[t](r),c=s.value,l=c instanceof n;Promise.resolve(l?c.v:c).then(function(n){if(l){var r=t===`return`?`return`:`next`;if(!c.k||n.done)return a(r,n);n=e[r](n).value}o(s.done?`return`:`normal`,n)},function(e){a(`throw`,e)})}catch(e){o(`throw`,e)}}function o(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)?a(t.key,t.arg):r=null}this._invoke=function(e,n){return new Promise(function(o,s){var c={key:e,arg:n,resolve:o,reject:s,next:null};r?r=r.next=c:(t=r=c,a(e,n))})},typeof e.return!=`function`&&(this.return=void 0)}a.prototype[typeof Symbol==`function`&&Symbol.asyncIterator||`@@asyncIterator`]=function(){return this},a.prototype.next=function(e){return this._invoke(`next`,e)},a.prototype.throw=function(e){return this._invoke(`throw`,e)},a.prototype.return=function(e){return this._invoke(`return`,e)},t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}});CE(hO(),1),CE(_O(),1),CE(vO(),1),CE(OE(),1);var yO=Object.create,bO=Object.defineProperty,xO=Object.getOwnPropertyDescriptor,SO=Object.getOwnPropertyNames,CO=Object.getPrototypeOf,wO=Object.prototype.hasOwnProperty,TO=(e,t)=>function(){return t||(0,e[SO(e)[0]])((t={exports:{}}).exports,t),t.exports},EO=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var a=SO(t),o=0,s=a.length,c;o<s;o++)c=a[o],!wO.call(e,c)&&c!==n&&bO(e,c,{get:(e=>t[e]).bind(null,c),enumerable:!(r=xO(t,c))||r.enumerable});return e},DO=(e,t,n)=>(n=e==null?{}:yO(CO(e)),EO(t||!e||!e.__esModule?bO(n,`default`,{value:e,enumerable:!0}):n,e)),OO=TO({"../../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}}),kO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js"(e,t){var n=OO();function r(e,t){if(e==null)return{};var r,a,o=n(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],t.includes(r)||{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),AO=TO({"../../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}}),jO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=AO().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||`default`);if(n(a)!=`object`)return a;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}}),MO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=AO().default,r=jO();function a(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),NO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=MO();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}}),PO=TO({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=NO();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 a(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]==null?{}:arguments[t];t%2?r(Object(a),!0).forEach(function(t){n(e,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))})}return e}t.exports=a,t.exports.__esModule=!0,t.exports.default=t.exports}}),FO=DO(kO(),1),IO=DO(PO(),1),LO=[`cursor`,`direction`];function RO(e,t,n){let r=e.flatMap(e=>e.split(`.`));if(!t&&(!n||n===`any`))return r.length?[r]:[];if(n===`infinite`&&FE(t)&&(`direction`in t||`cursor`in t)){let{cursor:e,direction:n}=t;return[r,{input:(0,FO.default)(t,LO),type:`infinite`}]}return[r,(0,IO.default)((0,IO.default)({},t!==void 0&&t!==$w&&{input:t}),n&&n!==`any`&&{type:n})]}function zO(e){return RO(e,void 0,`any`)}function BO(e){return eD(({path:t,args:n})=>{let r=[...t],a=r.pop();if(a===`useMutation`)return e[a](r,...n);if(a===`_def`)return{path:r};let[o,...s]=n,c=s[0]??{};return e[a](r,o,c)})}var VO=[`client`,`ssrContext`,`ssrState`,`abortOnUnmount`],HO=S.createContext?.call(S,null),UO=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 WO(e){return eD(t=>{let n=[...t.path],r=n.pop(),a=[...t.args],o=a.shift(),s=RO(n,o,UO(r));return{infiniteQueryOptions:()=>e.infiniteQueryOptions(n,s,a[0]),queryOptions:()=>e.queryOptions(n,s,...a),fetch:()=>e.fetchQuery(s,...a),fetchInfinite:()=>e.fetchInfiniteQuery(s,a[0]),prefetch:()=>e.prefetchQuery(s,...a),prefetchInfinite:()=>e.prefetchInfiniteQuery(s,a[0]),ensureData:()=>e.ensureQueryData(s,...a),invalidate:()=>e.invalidateQueries(s,...a),reset:()=>e.resetQueries(s,...a),refetch:()=>e.refetchQueries(s,...a),cancel:()=>e.cancelQuery(s,...a),setData:()=>{e.setQueryData(s,a[0],a[1])},setQueriesData:()=>e.setQueriesData(s,a[0],a[1],a[2]),setInfiniteData:()=>{e.setInfiniteQueryData(s,a[0],a[1])},getData:()=>e.getQueryData(s),getInfiniteData:()=>e.getInfiniteQueryData(s),setMutationDefaults:()=>e.setMutationDefaults(zO(n),o),getMutationDefaults:()=>e.getMutationDefaults(zO(n)),isMutating:()=>e.isMutating({mutationKey:zO(n)})}[r]()})}function GO(e){let t=fO(e.client),n=WO(e);return tD(r=>{let a=r;return a===`client`?t:VO.includes(a)?e[a]:n[r]})}var KO=DO(PO(),1);function qO(e){let t=e instanceof cO?e:mO(e);return eD(e=>{let n=e.path,r=n.join(`.`),[a,o]=e.args;return(0,KO.default)({queryKey:RO(n,a,`query`),queryFn:()=>t.query(r,a,o?.trpc)},o)})}var JO=DO(PO(),1);function YO(e,t,n){let r=e[0],a=e[1]?.input;return n&&(a=(0,JO.default)((0,JO.default)((0,JO.default)({},a??{}),n.pageParam?{cursor:n.pageParam}:{}),{},{direction:n.direction})),[r.join(`.`),a,t?.trpc]}var XO=DO(TO({"../../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,a,o=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,a=Symbol.iterator);o--;){if(n&&(t=e[n])!=null)return t.call(e);if(a&&(t=e[a])!=null)return new r(t.call(e));n=`@@asyncIterator`,a=`@@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 ZO(e){return{path:e.path.join(`.`)}}function QO(e){let t=ZO(e);return S.useMemo(()=>t,[t])}async function $O(e,t,n){let r=t.getQueryCache().build(t,{queryKey:n});r.setState({data:[],status:`success`});let a=[];var o=!1,s=!1,c;try{for(var l=(0,XO.default)(e),u;o=!(u=await l.next()).done;o=!1){let e=u.value;a.push(e),r.setState({data:[...a]})}}catch(e){s=!0,c=e}finally{try{o&&l.return!=null&&await l.return()}finally{if(s)throw c}}return a}var ek=DO(PO(),1);function tk(e){let{client:t,queryClient:n}=e,r=t instanceof cO?t:mO(t);return{infiniteQueryOptions:(e,t,n)=>{let a=t[1]?.input===$w;return Object.assign(fE((0,ek.default)((0,ek.default)({},n),{},{initialData:n?.initialData,queryKey:t,queryFn:a?$w:async e=>{var a;let o=(0,ek.default)((0,ek.default)({},n),{},{trpc:(0,ek.default)((0,ek.default)({},n?.trpc),!(n==null||(a=n.trpc)==null)&&a.abortOnUnmount?{signal:e.signal}:{signal:null})});return await r.query(...YO(t,o,{direction:e.direction,pageParam:e.pageParam}))},initialPageParam:n?.initialCursor??null})),{trpc:ZO({path:e})})},queryOptions:(e,t,a)=>{let o=t[1]?.input===$w;return Object.assign(dE((0,ek.default)((0,ek.default)({},a),{},{initialData:a?.initialData,queryKey:t,queryFn:o?$w:async e=>{var o;let s=(0,ek.default)((0,ek.default)({},a),{},{trpc:(0,ek.default)((0,ek.default)({},a?.trpc),!(a==null||(o=a.trpc)==null)&&o.abortOnUnmount?{signal:e.signal}:{signal:null})}),c=await r.query(...YO(t,s));return RE(c)?$O(c,n,t):c}})),{trpc:ZO({path:e})})},fetchQuery:(e,t)=>n.fetchQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),fetchInfiniteQuery:(e,t)=>n.fetchInfiniteQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:a})=>r.query(...YO(e,t,{pageParam:n,direction:a})),initialPageParam:t?.initialCursor??null})),prefetchQuery:(e,t)=>n.prefetchQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),prefetchInfiniteQuery:(e,t)=>n.prefetchInfiniteQuery((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:a})=>r.query(...YO(e,t,{pageParam:n,direction:a})),initialPageParam:t?.initialCursor??null})),ensureQueryData:(e,t)=>n.ensureQueryData((0,ek.default)((0,ek.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...YO(e,t))})),invalidateQueries:(e,t,r)=>n.invalidateQueries((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r),resetQueries:(e,t,r)=>n.resetQueries((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r),refetchQueries:(e,t,r)=>n.refetchQueries((0,ek.default)((0,ek.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,a)=>n.setQueriesData((0,ek.default)((0,ek.default)({},t),{},{queryKey:e}),r,a),getQueryData:e=>n.getQueryData(e),setInfiniteQueryData:(e,t,r)=>n.setQueryData(e,t,r),getInfiniteQueryData:e=>n.getQueryData(e),setMutationDefaults:(t,a)=>{let o=t[0];return n.setMutationDefaults(t,typeof a==`function`?a({canonicalMutationFn:t=>r.mutation(...YO([o,{input:t}],e))}):a)},getMutationDefaults:e=>n.getMutationDefaults(e),isMutating:e=>n.isMutating((0,ek.default)((0,ek.default)({},e),{},{exact:!0}))}}var J=DO(PO()),nk=(e,t)=>new Proxy(e,{get(e,n){return t(n),e[n]}});function rk(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??HO,a=pO,o=e=>{let{abortOnUnmount:t=!1,queryClient:n,ssrContext:a}=e,[o,s]=S.useState(e.ssrState??!1),c=e.client instanceof cO?e.client:mO(e.client),l=S.useMemo(()=>tk({client:c,queryClient:n}),[c,n]),u=S.useMemo(()=>(0,J.default)({abortOnUnmount:t,queryClient:n,client:c,ssrContext:a??null,ssrState:o},l),[t,c,l,n,a,o]);return S.useEffect(()=>{s(e=>e?`mounted`:!1)},[]),(0,C.jsx)(r.Provider,{value:u,children:e.children})};function s(){let e=S.useContext(r);if(!e)throw Error("Unable to find tRPC Context. Did you forget to wrap your App inside `withTRPC` HoC?");return e}function c(e,t){let{queryClient:n,ssrState:r}=s();return r&&r!==`mounted`&&n.getQueryCache().find({queryKey:e})?.state.status===`error`?(0,J.default)({retryOnMount:!1},t):t}function l(t,n,r){var a,o;let{abortOnUnmount:l,client:u,ssrState:d,queryClient:f,prefetchQuery:p}=s(),m=RO(t,n,`query`),h=f.getQueryDefaults(m),g=n===$w;typeof window>`u`&&d===`prepass`&&(r==null||(a=r.trpc)==null?void 0:a.ssr)!==!1&&(r?.enabled??h?.enabled)!==!1&&!g&&!f.getQueryCache().find({queryKey:m})&&p(m,r);let _=c(m,(0,J.default)((0,J.default)({},h),r)),v=(r==null||(o=r.trpc)==null?void 0:o.abortOnUnmount)??e?.abortOnUnmount??l,y=aE((0,J.default)((0,J.default)({},_),{},{queryKey:m,queryFn:g?n:async e=>{let t=(0,J.default)((0,J.default)({},_),{},{trpc:(0,J.default)((0,J.default)({},_?.trpc),v?{signal:e.signal}:{signal:null})}),n=await u.query(...YO(m,t));return RE(n)?$O(n,f,m):n}}),f);return y.trpc=QO({path:t}),y}function u(t,n,r){var a;let o=s(),c=RO(t,n,`query`),l=n===$w,u=(r==null||(a=r.trpc)==null?void 0:a.abortOnUnmount)??e?.abortOnUnmount??o.abortOnUnmount;lE((0,J.default)((0,J.default)({},r),{},{queryKey:c,queryFn:l?n:e=>{let t={trpc:(0,J.default)((0,J.default)({},r?.trpc),u?{signal:e.signal}:{})};return o.client.query(...YO(c,t))}}))}function d(t,n,r){var a;let o=s(),c=RO(t,n,`query`),l=(r==null||(a=r.trpc)==null?void 0:a.abortOnUnmount)??e?.abortOnUnmount??o.abortOnUnmount,u=oE((0,J.default)((0,J.default)({},r),{},{queryKey:c,queryFn:e=>{let t=(0,J.default)((0,J.default)({},r),{},{trpc:(0,J.default)((0,J.default)({},r?.trpc),l?{signal:e.signal}:{signal:null})});return o.client.query(...YO(c,t))}}),o.queryClient);return u.trpc=QO({path:t}),[u.data,u]}function f(e,t){let{client:r,queryClient:a}=s(),o=zO(e),c=a.defaultMutationOptions(a.getMutationDefaults(o)),l=pE((0,J.default)((0,J.default)({},t),{},{mutationKey:o,mutationFn:n=>r.mutation(...YO([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))??(c==null||(r=c.onSuccess)==null?void 0:r.call(c,...e))},queryClient:a,meta:t?.meta??c?.meta??{}})}}),a);return l.trpc=QO({path:e}),l}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!==$w,a=Vw(RO(e,t,`any`)),{client:o}=s(),c=S.useRef(n);S.useEffect(()=>{c.current=n});let[l]=S.useState(new Set([])),u=S.useCallback(e=>{l.add(e)},[l]),d=S.useRef(null),f=S.useCallback(e=>{let t=g.current,n=g.current=e(t),r=!1;for(let e of l)if(t[e]!==n[e]){r=!0;break}r&&v(nk(n,u))},[u,l]),h=S.useCallback(()=>{var n;if((n=d.current)==null||n.unsubscribe(),!r){f(()=>(0,J.default)((0,J.default)({},p),{},{reset:h}));return}f(()=>(0,J.default)((0,J.default)({},m),{},{reset:h})),d.current=o.subscription(e.join(`.`),t??void 0,{onStarted:()=>{var e,t;(e=(t=c.current).onStarted)==null||e.call(t),f(e=>(0,J.default)((0,J.default)({},e),{},{status:`pending`,error:null}))},onData:e=>{var t,n;(t=(n=c.current).onData)==null||t.call(n,e),f(t=>(0,J.default)((0,J.default)({},t),{},{status:`pending`,data:e,error:null}))},onError:e=>{var t,n;(t=(n=c.current).onError)==null||t.call(n,e),f(t=>(0,J.default)((0,J.default)({},t),{},{status:`error`,error:e}))},onConnectionStateChange:e=>{f(t=>{switch(e.state){case`idle`:return(0,J.default)((0,J.default)({},t),{},{status:e.state,error:null,data:void 0});case`connecting`:return(0,J.default)((0,J.default)({},t),{},{error:e.error,status:e.state});case`pending`:return t}})},onComplete:()=>{var e,t;(e=(t=c.current).onComplete)==null||e.call(t),f(e=>(0,J.default)((0,J.default)({},e),{},{status:`idle`,error:null,data:void 0}))}})},[o,a,r,f]);S.useEffect(()=>(h(),()=>{var e;(e=d.current)==null||e.unsubscribe()}),[h]);let g=S.useRef(r?(0,J.default)((0,J.default)({},m),{},{reset:h}):(0,J.default)((0,J.default)({},p),{},{reset:h})),[_,v]=S.useState(nk(g.current,u));return _}function g(e,t,n){var r,a;let{client:o,ssrState:l,prefetchInfiniteQuery:u,queryClient:d,abortOnUnmount:f}=s(),p=RO(e,t,`infinite`),m=d.getQueryDefaults(p),h=t===$w;typeof window>`u`&&l===`prepass`&&(n==null||(r=n.trpc)==null?void 0:r.ssr)!==!1&&(n?.enabled??m?.enabled)!==!1&&!h&&!d.getQueryCache().find({queryKey:p})&&u(p,(0,J.default)((0,J.default)({},m),n));let g=c(p,(0,J.default)((0,J.default)({},m),n)),_=(n==null||(a=n.trpc)==null?void 0:a.abortOnUnmount)??f,v=mE((0,J.default)((0,J.default)({},g),{},{initialPageParam:n.initialCursor??null,persister:n.persister,queryKey:p,queryFn:h?t:e=>{let t=(0,J.default)((0,J.default)({},g),{},{trpc:(0,J.default)((0,J.default)({},g?.trpc),_?{signal:e.signal}:{signal:null})});return o.query(...YO(p,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),d);return v.trpc=QO({path:e}),v}function _(e,t,n){var r;let a=s(),o=RO(e,t,`infinite`),l=a.queryClient.getQueryDefaults(o),u=t===$w,d=c(o,(0,J.default)((0,J.default)({},l),n)),f=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??a.abortOnUnmount;uE((0,J.default)((0,J.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:o,queryFn:u?t:e=>{let t=(0,J.default)((0,J.default)({},d),{},{trpc:(0,J.default)((0,J.default)({},d?.trpc),f?{signal:e.signal}:{})});return a.client.query(...YO(o,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}))}function v(e,t,n){var r;let a=s(),o=RO(e,t,`infinite`),l=a.queryClient.getQueryDefaults(o),u=c(o,(0,J.default)((0,J.default)({},l),n)),d=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??a.abortOnUnmount,f=sE((0,J.default)((0,J.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:o,queryFn:e=>{let t=(0,J.default)((0,J.default)({},u),{},{trpc:(0,J.default)((0,J.default)({},u?.trpc),d?{signal:e.signal}:{})});return a.client.query(...YO(o,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),a.queryClient);return f.trpc=QO({path:e}),[f.data,f]}return{Provider:o,createClient:a,useContext:s,useUtils:s,useQuery:l,usePrefetchQuery:u,useSuspenseQuery:d,useQueries:(e,t)=>{let{ssrState:n,queryClient:r,prefetchQuery:a,client:o}=s(),c=e(qO(o));if(typeof window>`u`&&n===`prepass`)for(let e of c){let t=e;t.trpc?.ssr!==!1&&!r.getQueryCache().find({queryKey:t.queryKey})&&a(t.queryKey,t)}return rE({queries:c.map(e=>(0,J.default)((0,J.default)({},e),{},{queryKey:e.queryKey})),combine:t?.combine},r)},useSuspenseQueries:e=>{let{queryClient:t,client:n}=s(),r=cE({queries:e(qO(n)).map(e=>(0,J.default)((0,J.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 ik(e){let t=BO(e);return tD(n=>n===`useContext`||n===`useUtils`?()=>{let t=e.useUtils();return S.useMemo(()=>GO(t),[t])}:e.hasOwnProperty(n)?e[n]:t[n])}function ak(e){return ik(rk(e))}var ok=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()}},sk=class{constructor(e){this.generateIdentifier=e,this.kv=new ok}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)}},ck=class extends sk{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 lk(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 uk(e,t){let n=lk(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 dk(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function fk(e,t){return e.indexOf(t)!==-1}function pk(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var mk=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return uk(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},hk=e=>Object.prototype.toString.call(e).slice(8,-1),gk=e=>e===void 0,_k=e=>e===null,vk=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,yk=e=>vk(e)&&Object.keys(e).length===0,bk=e=>Array.isArray(e),xk=e=>typeof e==`string`,Sk=e=>typeof e==`number`&&!isNaN(e),Ck=e=>typeof e==`boolean`,wk=e=>e instanceof RegExp,Tk=e=>e instanceof Map,Ek=e=>e instanceof Set,Dk=e=>hk(e)===`Symbol`,Ok=e=>e instanceof Date&&!isNaN(e.valueOf()),kk=e=>e instanceof Error,Ak=e=>typeof e==`number`&&isNaN(e),jk=e=>Ck(e)||_k(e)||gk(e)||Sk(e)||xk(e)||Dk(e),Mk=e=>typeof e==`bigint`,Nk=e=>e===1/0||e===-1/0,Pk=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),Fk=e=>e instanceof URL,Ik=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),Lk=e=>e.map(String).map(Ik).join(`.`),Rk=(e,t)=>{let n=[],r=``;for(let a=0;a<e.length;a++){let o=e.charAt(a);if(!t&&o===`\\`){let t=e.charAt(a+1);if(t===`\\`){r+=`\\`,a++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(o===`\\`&&e.charAt(a+1)===`.`){r+=`.`,a++;continue}if(o===`.`){n.push(r),r=``;continue}r+=o}let a=r;return n.push(a),n};function zk(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Bk=[zk(gk,`undefined`,()=>null,()=>void 0),zk(Mk,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),zk(Ok,`Date`,e=>e.toISOString(),e=>new Date(e)),zk(kk,`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}),zk(wk,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),zk(Ek,`set`,e=>[...e.values()],e=>new Set(e)),zk(Tk,`map`,e=>[...e.entries()],e=>new Map(e)),zk(e=>Ak(e)||Nk(e),`number`,e=>Ak(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),zk(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),zk(Fk,`URL`,e=>e.toString(),e=>new URL(e))];function Vk(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Hk=Vk((e,t)=>Dk(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}),Uk=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),Wk=Vk(Pk,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=Uk[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function Gk(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var Kk=Vk(Gk,(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)}),qk=Vk((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)}),Jk=[Kk,Hk,qk,Wk],Yk=(e,t)=>{let n=pk(Jk,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=pk(Bk,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},Xk={};Bk.forEach(e=>{Xk[e.annotation]=e});var Zk=(e,t,n)=>{if(bk(t))switch(t[0]){case`symbol`:return Hk.untransform(e,t,n);case`class`:return Kk.untransform(e,t,n);case`custom`:return qk.untransform(e,t,n);case`typed-array`:return Wk.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=Xk[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},Qk=(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 $k(e){if(fk(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(fk(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(fk(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var eA=(e,t)=>{$k(t);for(let n=0;n<t.length;n++){let r=t[n];if(Ek(e))e=Qk(e,+r);else if(Tk(e)){let a=+r,o=+t[++n]==0?`key`:`value`,s=Qk(e,a);switch(o){case`key`:e=s;break;case`value`:e=e.get(s);break}}else e=e[r]}return e},tA=(e,t,n)=>{if($k(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(bk(r)){let e=+n;r=r[e]}else if(vk(r))r=r[n];else if(Ek(r)){let e=+n;r=Qk(r,e)}else if(Tk(r)){if(e===t.length-2)break;let a=+n,o=+t[++e]==0?`key`:`value`,s=Qk(r,a);switch(o){case`key`:r=s;break;case`value`:r=r.get(s);break}}}let a=t[t.length-1];if(bk(r)?r[+a]=n(r[+a]):vk(r)&&(r[a]=n(r[a])),Ek(r)){let e=Qk(r,+a),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(Tk(r)){let e=+t[t.length-2],o=Qk(r,e);switch(+a==0?`key`:`value`){case`key`:{let e=n(o);r.set(e,r.get(o)),e!==o&&r.delete(o);break}case`value`:r.set(o,n(r.get(o)));break}}return e},nA=e=>e<1;function rA(e,t,n,r=[]){if(!e)return;let a=nA(n);if(!bk(e)){dk(e,(e,o)=>rA(e,t,n,[...r,...Rk(o,a)]));return}let[o,s]=e;s&&dk(s,(e,o)=>{rA(e,t,n,[...r,...Rk(o,a)])}),t(o,r)}function iA(e,t,n,r){return rA(t,(t,n)=>{e=tA(e,n,e=>Zk(e,t,r))},n),e}function aA(e,t,n){let r=nA(n);function a(t,n){let a=eA(e,Rk(n,r));t.map(e=>Rk(e,r)).forEach(t=>{e=tA(e,t,()=>a)})}if(bk(t)){let[n,o]=t;n.forEach(t=>{e=tA(e,Rk(t,r),()=>e)}),o&&dk(o,a)}else dk(t,a);return e}var oA=(e,t)=>vk(e)||bk(e)||Tk(e)||Ek(e)||kk(e)||Gk(e,t);function sA(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function cA(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[a,...o]=e;a.length===0?r=o.map(Lk):n[Lk(a)]=o.map(Lk)}),r?yk(n)?[r]:[r,n]:yk(n)?void 0:n}var lA=(e,t,n,r,a=[],o=[],s=new Map)=>{let c=jk(e);if(!c){sA(e,a,t);let n=s.get(e);if(n)return r?{transformedValue:null}:n}if(!oA(e,n)){let t=Yk(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return c||s.set(e,r),r}if(fk(o,e))return{transformedValue:null};let l=Yk(e,n),u=l?.value??e,d=bk(u)?[]:{},f={};dk(u,(c,l)=>{if(l===`__proto__`||l===`constructor`||l===`prototype`)throw Error(`Detected property ${l}. This is a prototype pollution risk, please remove it from your object.`);let u=lA(c,t,n,r,[...a,l],[...o,e],s);d[l]=u.transformedValue,bk(u.annotations)?f[Ik(l)]=u.annotations:vk(u.annotations)&&dk(u.annotations,(e,t)=>{f[Ik(l)+`.`+t]=e})});let p=yk(f)?{transformedValue:d,annotations:l?[l.type]:void 0}:{transformedValue:d,annotations:l?[l.type,f]:f};return c||s.set(e,p),p};function uA(e){return Object.prototype.toString.call(e).slice(8,-1)}function dA(e){return uA(e)===`Array`}function fA(e){if(uA(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function pA(e,t,n,r,a){let o={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;o===`enumerable`&&(e[t]=n),a&&o===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function mA(e,t={}){if(dA(e))return e.map(e=>mA(e,t));if(!fA(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||dA(t.props)&&!t.props.includes(r))return n;let a=e[r];return pA(n,r,mA(a,t),e,t.nonenumerable),n},{})}var hA=class{constructor({dedupe:e=!1}={}){this.classRegistry=new ck,this.symbolRegistry=new sk(e=>e.description??``),this.customTransformerRegistry=new mk,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=lA(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let a=cA(t,this.dedupe);return a&&(r.meta={...r.meta,referentialEqualities:a}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,a=t?.inPlace?n:mA(n);return r?.values&&(a=iA(a,r.values,r.v??0,this)),r?.referentialEqualities&&(a=aA(a,r.referentialEqualities,r.v??0)),a}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)}};hA.defaultInstance=new hA,hA.serialize=hA.defaultInstance.serialize.bind(hA.defaultInstance),hA.deserialize=hA.defaultInstance.deserialize.bind(hA.defaultInstance),hA.stringify=hA.defaultInstance.stringify.bind(hA.defaultInstance),hA.parse=hA.defaultInstance.parse.bind(hA.defaultInstance),hA.registerClass=hA.defaultInstance.registerClass.bind(hA.defaultInstance),hA.registerSymbol=hA.defaultInstance.registerSymbol.bind(hA.defaultInstance),hA.registerCustom=hA.defaultInstance.registerCustom.bind(hA.defaultInstance),hA.allowErrorProps=hA.defaultInstance.allowErrorProps.bind(hA.defaultInstance),hA.serialize,hA.deserialize,hA.stringify,hA.parse,hA.registerClass,hA.registerCustom,hA.registerSymbol,hA.allowErrorProps;var gA=1e4,_A=6e3,vA=2e3,yA=3e4,bA=class{_serverUrl;useWs;baseRetryMs;maxRetryMs;onConnectionChange;token;_trpcClient;_wsClient=null;mirror=null;mirrorInit=null;connected=!1;connectedPromise=null;_systemProxy;_connectionVersion=0;connectionListeners=new Set;constructor(e){this._serverUrl=e.serverUrl.replace(/\/+$/,``),this.token=e.token;let t=typeof window<`u`;this.useWs=e.useWebSocket??t,this.onConnectionChange=e.onConnectionChange,this.baseRetryMs=e.retryDelayMs??vA,this.maxRetryMs=e.maxRetryDelayMs??yA,this._trpcClient=this.buildTrpcClient(),this._systemProxy=eh(this._trpcClient)}get serverUrl(){return this._serverUrl}get connectionVersion(){return this._connectionVersion}subscribeConnectionEvents(e){return this.connectionListeners.add(e),()=>{this.connectionListeners.delete(e)}}emitConnectionEvent(e){try{this.onConnectionChange?.(e)}catch{}for(let t of this.connectionListeners)try{t(e,this._connectionVersion)}catch{}}async awaitConnected(e){if(this.connected)return;if(this.connectedPromise)return this.connectedPromise;let t=e??15e3;this.connectedPromise=(async()=>{let e=this._trpcClient.auth.me.query();Number.isFinite(t)?await new Promise((n,r)=>{let a=setTimeout(()=>r(Error(`System.awaitConnected: probe timed out after ${t}ms`)),t);e.then(()=>{clearTimeout(a),n()},e=>{clearTimeout(a),r(e instanceof Error?e:Error(String(e)))})}):await e,this.connected=!0})();try{await this.connectedPromise}finally{this.connectedPromise=null}}async init(e){if(this.mirror?.isReady())return;if(this.mirrorInit)return this.mirrorInit;let t=new oh(this._trpcClient);return this.mirror=t,this.mirrorInit=(async()=>{await this.awaitConnected(e),await t.init(e)})().finally(()=>{this.mirrorInit=null}),this.mirrorInit}async awaitReady(){if(!this.mirror?.isReady())return this.mirrorInit?this.mirrorInit:this.init()}isReady(){return this.mirror?.isReady()??!1}isConnected(){return this.connected}reconnect(){this.useWs&&(this.emitConnectionEvent(`connecting`),this._wsClient?.close(),this.disposeMirror(),this.connected=!1,this.connectedPromise=null,this._trpcClient=this.buildTrpcClient(),this._systemProxy=eh(this._trpcClient))}switchServerUrl(e){let t=e.replace(/\/+$/,``);t!==this._serverUrl&&(this._serverUrl=t,this.reconnect())}async raceConnectionEndpoints(e){let t=e?.perCandidateTimeoutMs??1500,n=(()=>{try{return new URL(this._serverUrl)}catch{return null}})(),r=n?.port?Number(n.port):n?.protocol===`https:`?443:80,a=n?.protocol===`https:`?`https`:`http`,o=this._trpcClient.localNetwork?.getConnectionEndpoints;if(!o)return{winner:this._serverUrl,switched:!1};let s;try{s=(await o.query({port:r,ipv4Only:e?.ipv4Only,scheme:a})).endpoints}catch{return{winner:this._serverUrl,switched:!1}}if(s.length===0)return{winner:this._serverUrl,switched:!1};let c=await SA(s.map(e=>e.baseUrl),t);return!c||c===this._serverUrl?{winner:c??this._serverUrl,switched:!1}:(this.switchServerUrl(c),{winner:c,switched:!0})}close(){this.disposeMirror(),this.connected=!1,this.connectedPromise=null,this._wsClient?.close()}disposeMirror(){this.mirror?.dispose(),this.mirror=null,this.mirrorInit=null}async login(e,t){let n=await this._trpcClient.auth.login.mutate({username:e,password:t});if(typeof n==`object`&&n&&`token`in n){let e=n,t=e.token,r=e.requiresTotp===!0||Array.isArray(e.secondFactors)&&e.secondFactors.length>0;typeof t==`string`&&!r&&this.setToken(t)}return n}async loginVerifyTotp(e,t){let n=await this._trpcClient.auth.loginVerifyTotp.mutate({challengeToken:e,code:t});if(typeof n==`object`&&n&&`token`in n){let e=n.token;typeof e==`string`&&this.setToken(e)}return n}async loginBeginPasskey(e){return await this._trpcClient.auth.loginBeginPasskey.mutate({challengeToken:e})}async loginVerifyPasskey(e,t){let n=await this._trpcClient.auth.loginVerifyPasskey.mutate({challengeToken:e,response:t});if(typeof n==`object`&&n&&`token`in n){let e=n.token;typeof e==`string`&&this.setToken(e)}return n}async passkeyLoginBegin(){return await this._trpcClient.auth.passkeyLoginBegin.mutate()}async passkeyLoginFinish(e){let t=await this._trpcClient.auth.passkeyLoginFinish.mutate({response:e});if(typeof t==`object`&&t&&`token`in t){let e=t,n=e.requiresTotp===!0||Array.isArray(e.secondFactors)&&e.secondFactors.length>0;typeof e.token==`string`&&!n&&this.setToken(e.token)}return t}async logout(){await this._trpcClient.auth.logout.mutate()}async getMe(){return await this._trpcClient.auth.me.query()}async changeOwnPassword(e){return await this._trpcClient.auth.changeOwnPassword.mutate(e)}async setupOwnTotp(){return await this._trpcClient.auth.setupOwnTotp.mutate()}async confirmOwnTotp(e){return await this._trpcClient.auth.confirmOwnTotp.mutate(e)}async disableOwnTotp(){return await this._trpcClient.auth.disableOwnTotp.mutate()}async getOwnTotpStatus(){return await this._trpcClient.auth.getOwnTotpStatus.query()}async beginOwnPasskeyRegistration(){return await this._trpcClient.auth.beginOwnPasskeyRegistration.mutate()}async finishOwnPasskeyRegistration(e){return await this._trpcClient.auth.finishOwnPasskeyRegistration.mutate(e)}async listOwnPasskeys(){return await this._trpcClient.auth.listOwnPasskeys.query()}async removeOwnPasskey(e){return await this._trpcClient.auth.removeOwnPasskey.mutate(e)}async getOwnPasskeySecondFactorPreference(){return await this._trpcClient.auth.getOwnPasskeySecondFactorPreference.query()}async setOwnPasskeySecondFactorPreference(e){return await this._trpcClient.auth.setOwnPasskeySecondFactorPreference.mutate(e)}setToken(e){this.token=e}listDevices(e){return this.mirror?(e?this.mirror.query(e):this.mirror.getAllDevices()).map(e=>this.attachBinding(e)):[]}getDeviceInfo(e){return this.mirror?.getDeviceInfo(e)??null}listDeviceInfos(e){let t=this.mirror;if(!t)return[];let n=e?t.query(e):t.getAllDevices(),r=[];for(let e of n){let n=t.getDeviceInfo(e.deviceId);n&&r.push(n)}return r}getDevice(e){let t=this.mirror?.getDeviceById(e)??null;return t?this.attachBinding(t):null}getDeviceByName(e){let t=this.mirror?.getDeviceByName(e)??null;return t?this.attachBinding(t):null}getDeviceByStableId(e){let t=this.mirror?.getDeviceByStableId(e)??null;return t?this.attachBinding(t):null}async waitForDevice(e,t){this.mirror||await this.init();let n=await this.mirror.waitForDevice(e,t??3e4);return this.attachBinding(n)}onDeviceAdded(e){if(!this.mirror)throw Error(`System.onDeviceAdded: call init() before subscribing`);return this.mirror.onDeviceAdded(e)}onDeviceRemoved(e){if(!this.mirror)throw Error(`System.onDeviceRemoved: call init() before subscribing`);return this.mirror.onDeviceRemoved(e)}attachBinding(e){let t=this.lookupBinding(e.deviceId);if(t===e.binding)return e;let n=e;return n.binding=t,e}lookupBinding(e){return this.mirror?this.mirror.getDeviceById(e)?.binding??null:null}get addonPages(){return this._systemProxy.addonPages}get addonSettings(){return this._systemProxy.addonSettings}get alerts(){return this._systemProxy.alerts}get audioAnalyzer(){return this._systemProxy.audioAnalyzer}get audioCodec(){return this._systemProxy.audioCodec}get backup(){return this._systemProxy.backup}get decoder(){return this._systemProxy.decoder}get deviceManager(){return this._systemProxy.deviceManager}get deviceProvider(){return this._systemProxy.deviceProvider}get deviceState(){return this._systemProxy.deviceState}get metricsProvider(){return this._systemProxy.metricsProvider}get notificationOutput(){return this._systemProxy.notificationOutput}get pipelineExecutor(){return this._systemProxy.pipelineExecutor}get pipelineOrchestrator(){return this._systemProxy.pipelineOrchestrator}get pipelineRunner(){return this._systemProxy.pipelineRunner}get settingsStore(){return this._systemProxy.settingsStore}get storage(){return this._systemProxy.storage}get streamBroker(){return this._systemProxy.streamBroker}get turnProvider(){return this._systemProxy.turnProvider}get userManagement(){return this._systemProxy.userManagement}subscribeEvent(e,t){let n=this._trpcClient.live.onEvent.subscribe({category:e},{onData:e=>{try{t(e)}catch{}}});return()=>{try{n.unsubscribe()}catch{}}}get trpcClient(){return this._trpcClient}get wsClient(){return this._wsClient}buildTrpcClient(){let e=()=>{let e={};return this.token&&(e.Authorization=`Bearer ${this.token}`),e};if(this.useWs){let e=this._serverUrl.replace(/^http/,`ws`)+`/trpc`,t=this.baseRetryMs,n=this.maxRetryMs;return this._wsClient=iO({url:e,connectionParams:()=>({token:this.token}),retryDelayMs:e=>Math.min(t*2**e,n),keepAlive:{enabled:!0,intervalMs:gA,pongTimeoutMs:_A},onOpen:()=>{this._connectionVersion+=1,this.emitConnectionEvent(`connected`)},onClose:()=>{this.emitConnectionEvent(`disconnected`)}}),pO({links:[aO({client:this._wsClient,transformer:hA})]})}return this._wsClient=null,pO({links:[ID({url:`${this._serverUrl}/trpc`,headers:e,transformer:hA})]})}};function xA(e){return new bA(e)}async function SA(e,t){if(e.length===0)return null;if(typeof fetch!=`function`)return e[0]??null;let n=typeof window<`u`&&window.location!==void 0&&window.location.protocol===`https:`?e.filter(e=>e.toLowerCase().startsWith(`https://`)):e;if(n.length===0)return null;let r=n.map(()=>new AbortController),a=n.map(async(e,n)=>{let a=r[n],o=setTimeout(()=>a.abort(),t);try{let t=await fetch(`${e.replace(/\/+$/,``)}/trpc/health`,{method:`GET`,signal:a.signal,credentials:`omit`});if(!t.ok)throw Error(`${t.status}`);return e}finally{clearTimeout(o)}});try{let e=await Promise.any(a);for(let e of r)try{e.abort()}catch{}return e}catch{return null}}var CA=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}({}),wA=`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(`.`),TA=[`person`,`people`,`pedestrian`,`rider`,`driver`,`cyclist`,`skier`,`skateboarder`,`face`,`hand`,`head`,`body`],EA=[`vehicle`,`car`,`truck`,`bus`,`motorcycle`,`bicycle`,`van`,`ambulance`,`police_car`,`fire_truck`,`train`,`subway`,`tram`,`airplane`,`boat`,`ship`,`helicopter`],DA=`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(`.`),OA=[`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`],kA=[`motion`,`movement`,`other`],AA=[`package`,`packet`],jA=[`audio`],MA=`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(`.`),NA=[`doorbell`,`ring`],PA=[`lock`,`binary`,`flood`,`entry`,`door`,`leak`,`door_open`,`flooded`,`entry_open`];({...wA.reduce((e,t)=>({...e,[t]:`animal`}),{}),...TA.reduce((e,t)=>({...e,[t]:`person`}),{}),...EA.reduce((e,t)=>({...e,[t]:`vehicle`}),{}),...kA.reduce((e,t)=>({...e,[t]:`motion`}),{}),...AA.reduce((e,t)=>({...e,[t]:`package`}),{}),...DA.reduce((e,t)=>({...e,[t]:`face`}),{}),...OA.reduce((e,t)=>({...e,[t]:`plate`}),{}),...jA.reduce((e,t)=>({...e,[t]:`audio`}),{}),...MA.reduce((e,t)=>({...e,[t]:`audio`}),{}),...NA.reduce((e,t)=>({...e,[t]:`doorbell`}),{}),...PA.reduce((e,t)=>({...e,[t]:`sensor`}),{})}),[...Object.values(CA).filter(e=>e!==`motion`)],new Set([`Entry`,`Light`,`Switch`,`Lock`,`SecuritySystem`,`Buttons`,`WindowCovering`,`Siren`,`Sensor`,`Select`,`Program`]),new Set([`light`,`switch`,`input_boolean`,`cover`,`lock`,`alarm_control_panel`,`input_button`,`button`,`input_select`,`select`,`siren`,`media_player`,`script`]);function FA(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=FA(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function IA(){for(var e,t,n=0,r=``,a=arguments.length;n<a;n++)(e=arguments[n])&&(t=FA(e))&&(r&&(r+=` `),r+=t);return r}var LA=(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},RA=(e,t)=>({classGroupId:e,validator:t}),zA=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),BA=`-`,VA=[],HA=`arbitrary..`,UA=e=>{let t=KA(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return GA(e);let n=e.split(BA);return WA(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],a=n[e];return t?a?LA(a,t):t:a||VA}return n[e]||VA}}},WA=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=WA(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(BA):e.slice(t).join(BA),c=o.length;for(let e=0;e<c;e++){let t=o[e];if(t.validator(s))return t.classGroupId}},GA=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?HA+r:void 0})(),KA=e=>{let{theme:t,classGroups:n}=e;return qA(n,t)},qA=(e,t)=>{let n=zA();for(let r in e){let a=e[r];JA(a,n,r,t)}return n},JA=(e,t,n,r)=>{let a=e.length;for(let o=0;o<a;o++){let a=e[o];YA(a,t,n,r)}},YA=(e,t,n,r)=>{if(typeof e==`string`){XA(e,t,n);return}if(typeof e==`function`){ZA(e,t,n,r);return}QA(e,t,n,r)},XA=(e,t,n)=>{let r=e===``?t:$A(t,e);r.classGroupId=n},ZA=(e,t,n,r)=>{if(ej(e)){JA(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(RA(n,e))},QA=(e,t,n,r)=>{let a=Object.entries(e),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];JA(s,$A(t,o),n,r)}},$A=(e,t)=>{let n=e,r=t.split(BA),a=r.length;for(let e=0;e<a;e++){let t=r[e],a=n.nextPart.get(t);a||(a=zA(),n.nextPart.set(t,a)),n=a}return n},ej=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,tj=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),a=(a,o)=>{n[a]=o,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 a(e,t),t},set(e,t){e in n?n[e]=t:a(e,t)}}},nj=`!`,rj=`:`,ij=[],aj=(e,t,n,r,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:a}),oj=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,a=0,o,s=e.length;for(let c=0;c<s;c++){let s=e[c];if(n===0&&r===0){if(s===rj){t.push(e.slice(a,c)),a=c+1;continue}if(s===`/`){o=c;continue}}s===`[`?n++:s===`]`?n--:s===`(`?r++:s===`)`&&r--}let c=t.length===0?e:e.slice(a),l=c,u=!1;c.endsWith(nj)?(l=c.slice(0,-1),u=!0):c.startsWith(nj)&&(l=c.slice(1),u=!0);let d=o&&o>a?o-a:void 0;return aj(t,u,l,d)};if(t){let e=t+rj,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):aj(ij,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},sj=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let a=0;a<e.length;a++){let o=e[a],s=o[0]===`[`,c=t.has(o);s||c?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(o)):r.push(o)}return r.length>0&&(r.sort(),n.push(...r)),n}},cj=e=>({cache:tj(e.cacheSize),parseClassName:oj(e),sortModifiers:sj(e),postfixLookupClassGroupIds:lj(e),...UA(e)}),lj=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},uj=/\s+/,dj=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:a,sortModifiers:o,postfixLookupClassGroupIds:s}=t,c=[],l=e.trim().split(uj),u=``;for(let e=l.length-1;e>=0;--e){let t=l[e],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:h}=n(t);if(d){u=t+(u.length>0?` `+u:u);continue}let g=!!h,_;if(g){_=r(m.substring(0,h));let e=_&&s[_]?r(m):void 0;e&&e!==_&&(_=e,g=!1)}else _=r(m);if(!_){if(!g){u=t+(u.length>0?` `+u:u);continue}if(_=r(m),!_){u=t+(u.length>0?` `+u:u);continue}g=!1}let v=f.length===0?``:f.length===1?f[0]:o(f).join(`:`),y=p?v+nj:v,b=y+_;if(c.indexOf(b)>-1)continue;c.push(b);let x=a(_,g);for(let e=0;e<x.length;++e){let t=x[e];c.push(y+t)}u=t+(u.length>0?` `+u:u)}return u},fj=(...e)=>{let t=0,n,r,a=``;for(;t<e.length;)(n=e[t++])&&(r=pj(n))&&(a&&(a+=` `),a+=r);return a},pj=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=pj(e[r]))&&(n&&(n+=` `),n+=t);return n},mj=(e,...t)=>{let n,r,a,o,s=s=>(n=cj(t.reduce((e,t)=>t(e),e())),r=n.cache.get,a=n.cache.set,o=c,c(s)),c=e=>{let t=r(e);if(t)return t;let o=dj(e,n);return a(e,o),o};return o=s,(...e)=>o(fj(...e))},hj=[],gj=e=>{let t=t=>t[e]||hj;return t.isThemeGetter=!0,t},_j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,vj=/^\((?:(\w[\w-]*):)?(.+)\)$/i,yj=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,bj=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,xj=/\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$/,Sj=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Cj=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,wj=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Tj=e=>yj.test(e),Ej=e=>!!e&&!Number.isNaN(Number(e)),Dj=e=>!!e&&Number.isInteger(Number(e)),Oj=e=>e.endsWith(`%`)&&Ej(e.slice(0,-1)),kj=e=>bj.test(e),Aj=()=>!0,jj=e=>xj.test(e)&&!Sj.test(e),Mj=()=>!1,Nj=e=>Cj.test(e),Pj=e=>wj.test(e),Fj=e=>!Y(e)&&!X(e),Ij=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)),Lj=e=>Qj(e,nM,Mj),Y=e=>_j.test(e),Rj=e=>Qj(e,rM,jj),zj=e=>Qj(e,iM,Ej),Bj=e=>Qj(e,oM,Aj),Vj=e=>Qj(e,aM,Mj),Hj=e=>Qj(e,eM,Mj),Uj=e=>Qj(e,tM,Pj),Wj=e=>Qj(e,sM,Nj),X=e=>vj.test(e),Gj=e=>$j(e,rM),Kj=e=>$j(e,aM),qj=e=>$j(e,eM),Jj=e=>$j(e,nM),Yj=e=>$j(e,tM),Xj=e=>$j(e,sM,!0),Zj=e=>$j(e,oM,!0),Qj=(e,t,n)=>{let r=_j.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},$j=(e,t,n=!1)=>{let r=vj.exec(e);return r?r[1]?t(r[1]):n:!1},eM=e=>e===`position`||e===`percentage`,tM=e=>e===`image`||e===`url`,nM=e=>e===`length`||e===`size`||e===`bg-size`,rM=e=>e===`length`,iM=e=>e===`number`,aM=e=>e===`family-name`,oM=e=>e===`number`||e===`weight`,sM=e=>e===`shadow`,cM=mj(()=>{let e=gj(`color`),t=gj(`font`),n=gj(`text`),r=gj(`font-weight`),a=gj(`tracking`),o=gj(`leading`),s=gj(`breakpoint`),c=gj(`container`),l=gj(`spacing`),u=gj(`radius`),d=gj(`shadow`),f=gj(`inset-shadow`),p=gj(`text-shadow`),m=gj(`drop-shadow`),h=gj(`blur`),g=gj(`perspective`),_=gj(`aspect`),v=gj(`ease`),y=gj(`animate`),b=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],x=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],S=()=>[...x(),X,Y],C=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],w=()=>[`auto`,`contain`,`none`],T=()=>[X,Y,l],E=()=>[Tj,`full`,`auto`,...T()],D=()=>[Dj,`none`,`subgrid`,X,Y],ee=()=>[`auto`,{span:[`full`,Dj,X,Y]},Dj,X,Y],te=()=>[Dj,`auto`,X,Y],O=()=>[`auto`,`min`,`max`,`fr`,X,Y],ne=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],re=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],ie=()=>[`auto`,...T()],ae=()=>[Tj,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...T()],oe=()=>[Tj,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...T()],se=()=>[Tj,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...T()],k=()=>[e,X,Y],A=()=>[...x(),qj,Hj,{position:[X,Y]}],ce=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],le=()=>[`auto`,`cover`,`contain`,Jj,Lj,{size:[X,Y]}],ue=()=>[Oj,Gj,Rj],de=()=>[``,`none`,`full`,u,X,Y],j=()=>[``,Ej,Gj,Rj],M=()=>[`solid`,`dashed`,`dotted`,`double`],fe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],pe=()=>[Ej,Oj,qj,Hj],me=()=>[``,`none`,h,X,Y],he=()=>[`none`,Ej,X,Y],ge=()=>[`none`,Ej,X,Y],_e=()=>[Ej,X,Y],N=()=>[Tj,`full`,...T()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[kj],breakpoint:[kj],color:[Aj],container:[kj],"drop-shadow":[kj],ease:[`in`,`out`,`in-out`],font:[Fj],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[kj],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[kj],shadow:[kj],spacing:[`px`,Ej],text:[kj],"text-shadow":[kj],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Tj,Y,X,_]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[Ij],columns:[{columns:[Ej,Y,X,c]}],"break-after":[{"break-after":b()}],"break-before":[{"break-before":b()}],"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:S()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:w()}],"overscroll-x":[{"overscroll-x":w()}],"overscroll-y":[{"overscroll-y":w()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:E()}],"inset-x":[{"inset-x":E()}],"inset-y":[{"inset-y":E()}],start:[{"inset-s":E(),start:E()}],end:[{"inset-e":E(),end:E()}],"inset-bs":[{"inset-bs":E()}],"inset-be":[{"inset-be":E()}],top:[{top:E()}],right:[{right:E()}],bottom:[{bottom:E()}],left:[{left:E()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Dj,`auto`,X,Y]}],basis:[{basis:[Tj,`full`,`auto`,c,...T()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Ej,Tj,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,Ej,X,Y]}],shrink:[{shrink:[``,Ej,X,Y]}],order:[{order:[Dj,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":D()}],"col-start-end":[{col:ee()}],"col-start":[{"col-start":te()}],"col-end":[{"col-end":te()}],"grid-rows":[{"grid-rows":D()}],"row-start-end":[{row:ee()}],"row-start":[{"row-start":te()}],"row-end":[{"row-end":te()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":O()}],"auto-rows":[{"auto-rows":O()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...ne(),`normal`]}],"justify-items":[{"justify-items":[...re(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...re()]}],"align-content":[{content:[`normal`,...ne()]}],"align-items":[{items:[...re(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...re(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":ne()}],"place-items":[{"place-items":[...re(),`baseline`]}],"place-self":[{"place-self":[`auto`,...re()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:ie()}],mx:[{mx:ie()}],my:[{my:ie()}],ms:[{ms:ie()}],me:[{me:ie()}],mbs:[{mbs:ie()}],mbe:[{mbe:ie()}],mt:[{mt:ie()}],mr:[{mr:ie()}],mb:[{mb:ie()}],ml:[{ml:ie()}],"space-x":[{"space-x":T()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":T()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ae()}],"inline-size":[{inline:[`auto`,...oe()]}],"min-inline-size":[{"min-inline":[`auto`,...oe()]}],"max-inline-size":[{"max-inline":[`none`,...oe()]}],"block-size":[{block:[`auto`,...se()]}],"min-block-size":[{"min-block":[`auto`,...se()]}],"max-block-size":[{"max-block":[`none`,...se()]}],w:[{w:[c,`screen`,...ae()]}],"min-w":[{"min-w":[c,`screen`,`none`,...ae()]}],"max-w":[{"max-w":[c,`screen`,`none`,`prose`,{screen:[s]},...ae()]}],h:[{h:[`screen`,`lh`,...ae()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ae()]}],"max-h":[{"max-h":[`screen`,`lh`,...ae()]}],"font-size":[{text:[`base`,n,Gj,Rj]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Zj,Bj]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Oj,Y]}],"font-family":[{font:[Kj,Vj,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:[a,X,Y]}],"line-clamp":[{"line-clamp":[Ej,`none`,X,zj]}],leading:[{leading:[o,...T()]}],"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:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...M(),`wavy`]}],"text-decoration-thickness":[{decoration:[Ej,`from-font`,`auto`,X,Rj]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[Ej,`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:T()}],"tab-size":[{tab:[Dj,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:A()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:le()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Dj,X,Y],radial:[``,X,Y],conic:[Dj,X,Y]},Yj,Uj]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:ue()}],"gradient-via-pos":[{via:ue()}],"gradient-to-pos":[{to:ue()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:de()}],"rounded-s":[{"rounded-s":de()}],"rounded-e":[{"rounded-e":de()}],"rounded-t":[{"rounded-t":de()}],"rounded-r":[{"rounded-r":de()}],"rounded-b":[{"rounded-b":de()}],"rounded-l":[{"rounded-l":de()}],"rounded-ss":[{"rounded-ss":de()}],"rounded-se":[{"rounded-se":de()}],"rounded-ee":[{"rounded-ee":de()}],"rounded-es":[{"rounded-es":de()}],"rounded-tl":[{"rounded-tl":de()}],"rounded-tr":[{"rounded-tr":de()}],"rounded-br":[{"rounded-br":de()}],"rounded-bl":[{"rounded-bl":de()}],"border-w":[{border:j()}],"border-w-x":[{"border-x":j()}],"border-w-y":[{"border-y":j()}],"border-w-s":[{"border-s":j()}],"border-w-e":[{"border-e":j()}],"border-w-bs":[{"border-bs":j()}],"border-w-be":[{"border-be":j()}],"border-w-t":[{"border-t":j()}],"border-w-r":[{"border-r":j()}],"border-w-b":[{"border-b":j()}],"border-w-l":[{"border-l":j()}],"divide-x":[{"divide-x":j()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":j()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...M(),`hidden`,`none`]}],"divide-style":[{divide:[...M(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...M(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Ej,X,Y]}],"outline-w":[{outline:[``,Ej,Gj,Rj]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,d,Xj,Wj]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,f,Xj,Wj]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:j()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[Ej,Rj]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":j()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,p,Xj,Wj]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[Ej,X,Y]}],"mix-blend":[{"mix-blend":[...fe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":fe()}],"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":[Ej]}],"mask-image-linear-from-pos":[{"mask-linear-from":pe()}],"mask-image-linear-to-pos":[{"mask-linear-to":pe()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":pe()}],"mask-image-t-to-pos":[{"mask-t-to":pe()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":pe()}],"mask-image-r-to-pos":[{"mask-r-to":pe()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":pe()}],"mask-image-b-to-pos":[{"mask-b-to":pe()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":pe()}],"mask-image-l-to-pos":[{"mask-l-to":pe()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":pe()}],"mask-image-x-to-pos":[{"mask-x-to":pe()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":pe()}],"mask-image-y-to-pos":[{"mask-y-to":pe()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":pe()}],"mask-image-radial-to-pos":[{"mask-radial-to":pe()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"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":x()}],"mask-image-conic-pos":[{"mask-conic":[Ej]}],"mask-image-conic-from-pos":[{"mask-conic-from":pe()}],"mask-image-conic-to-pos":[{"mask-conic-to":pe()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:le()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:me()}],brightness:[{brightness:[Ej,X,Y]}],contrast:[{contrast:[Ej,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,m,Xj,Wj]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,Ej,X,Y]}],"hue-rotate":[{"hue-rotate":[Ej,X,Y]}],invert:[{invert:[``,Ej,X,Y]}],saturate:[{saturate:[Ej,X,Y]}],sepia:[{sepia:[``,Ej,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":me()}],"backdrop-brightness":[{"backdrop-brightness":[Ej,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[Ej,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Ej,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ej,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,Ej,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[Ej,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[Ej,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,Ej,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"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:[Ej,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,v,X,Y]}],delay:[{delay:[Ej,X,Y]}],animate:[{animate:[`none`,y,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[g,X,Y]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:he()}],"rotate-x":[{"rotate-x":he()}],"rotate-y":[{"rotate-y":he()}],"rotate-z":[{"rotate-z":he()}],scale:[{scale:ge()}],"scale-x":[{"scale-x":ge()}],"scale-y":[{"scale-y":ge()}],"scale-z":[{"scale-z":ge()}],"scale-3d":[`scale-3d`],skew:[{skew:_e()}],"skew-x":[{"skew-x":_e()}],"skew-y":[{"skew-y":_e()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:N()}],"translate-x":[{"translate-x":N()}],"translate-y":[{"translate-y":N()}],"translate-z":[{"translate-z":N()}],"translate-none":[`translate-none`],zoom:[{zoom:[Dj,X,Y]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"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":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"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`,...k()]}],"stroke-w":[{stroke:[Ej,Gj,Rj,zj]}],stroke:[{stroke:[`none`,...k()]}],"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 cM(IA(e))}var lM=1e3;24*(60*lM*60),30*lM;var uM=/^(\d{4})-(\d{2})-(\d{2})/,dM=/^(\d{2}):(\d{2})(?::(\d{2}))?$/;function fM(e,t){let n=uM.exec(e);if(n===null)return e;let r=Number(n[1]),a=Number(n[2]),o=Number(n[3]),s=new Date(r,a-1,o);if(Number.isNaN(s.getTime()))return e;try{return s.toLocaleDateString(t)}catch{return e}}function pM(e,t){let n=dM.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 mM(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 hM(e,t,n){return e===``?e:t===`date`?fM(e,n):t===`time`?pM(e,n):mM(e,n)}function gM(e,t){return t===void 0?Number.isInteger(e)?String(e):e.toFixed(1):e.toFixed(t)}var _M=e=>e;function vM(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=e.sliceUnit??e.canonicalUnit,a=t?.unit??e.display?.unit??e.roleDefault?.unit;return a!==void 0&&r!==void 0&&a!==r&&Km(r,a)?{unit:a,precision:n,toDisplayValue:e=>Gm(e,r,a)??e}:{unit:r??``,precision:n,toDisplayValue:_M}}function yM(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 bM(e){let t=yM(e);return t===null?(e instanceof Error?e.message:String(e)).includes(`provider not available`):t===`no-provider`||t===`node-offline`}var xM=`text-[10px] text-foreground-subtle`;function SM(e,t){if(typeof globalThis>`u`)return(0,S.createContext)(t);let n=globalThis.__camstackSharedContexts,r=n??new Map;n||(globalThis.__camstackSharedContexts=r);let a=r.get(e);if(a)return a;let o=(0,S.createContext)(t);return r.set(e,o),o}var CM=`FEDERATION_DEBUG`,wM={AT:`@`,HYPHEN:`-`,SLASH:`/`},TM={[wM.AT]:`scope_`,[wM.HYPHEN]:`_`,[wM.SLASH]:`__`};TM[wM.AT],wM.AT,TM[wM.HYPHEN],wM.HYPHEN,TM[wM.SLASH],wM.SLASH;var EM=function(e){return e[e.UNKNOWN=1]=`UNKNOWN`,e[e.CALCULATED=2]=`CALCULATED`,e[e.NO_USE=0]=`NO_USE`,e}({}),DM=typeof ENV_TARGET<`u`?ENV_TARGET===`web`:typeof window<`u`&&window.document!==void 0;function OM(){return DM}function kM(){return typeof navigator<`u`&&navigator?.product===`ReactNative`}function AM(){try{if(OM()&&window.localStorage)return!!localStorage.getItem(CM)}catch{return!1}return!1}function jM(){return typeof process<`u`&&{}.FEDERATION_DEBUG?!!{}.FEDERATION_DEBUG:typeof FEDERATION_DEBUG<`u`&&FEDERATION_DEBUG?!0:AM()}var MM=`[ Federation Runtime ]`,NM=function(...e){return e.length?e.reduce((e,t)=>t?e?`${e}:${t}`:t:e,``):``},PM=(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!OM()&&!kM()&&`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),``},FM=e=>{console.warn(`${MM}: ${e}`)};function IM(e){try{return JSON.stringify(e,null,2)}catch{return``}}var LM=(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 RM(e){return e.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)}function zM(e,t={}){let{remotes:n={},overrides:r={},version:a}=t,o,s=()=>`publicPath`in e.metaData?(e.metaData.publicPath===`auto`||e.metaData.publicPath===``)&&a?RM(a):e.metaData.publicPath:e.metaData.getPublicPath,c=Object.keys(r),l={};Object.keys(n).length||(l=e.remotes?.reduce((e,t)=>{let n,a=t.federationContainerName;return n=c.includes(a)?r[a]:`version`in t?t.version:t.entry,e[a]={matchedVersion:n},e},{})||{}),Object.keys(n).forEach(e=>l[e]={matchedVersion:c.includes(e)?r[e]:n[e]});let{remoteEntry:{path:u,name:d,type:f},types:p={path:``,name:``,zip:``,api:``},buildInfo:{buildVersion:m},globalName:h,ssrRemoteEntry:g}=e.metaData,{exposes:_}=e,v={version:a||``,buildVersion:m,globalName:h,remoteEntry:LM(u,d),remoteEntryType:f,remoteTypes:LM(p.path,p.name),remoteTypesZip:p.zip||``,remoteTypesAPI:p.api||``,remotesInfo:l,shared:e?.shared.map(e=>({assets:e.assets,sharedName:e.name,version:e.version,usedExports:e.referenceExports||[]})),modules:_?.map(e=>({moduleName:e.name,modulePath:e.path,assets:e.assets}))};if(`publicPath`in e.metaData?(o={...v,publicPath:s()},typeof e.metaData.ssrPublicPath==`string`&&(o.ssrPublicPath=e.metaData.ssrPublicPath)):o={...v,getPublicPath:s()},g){let e=LM(g.path,g.name);o.ssrRemoteEntry=e,o.ssrRemoteEntryType=g.type||`commonjs-module`}return o}function BM(e){return!!(`remoteEntry`in e&&e.remoteEntry.includes(`.json`))}var VM=`[ Module Federation ]`,HM=console,UM=[`logger.ts`,`logger.js`,`captureStackTrace`,`Logger.emit`,`Logger.log`,`Logger.info`,`Logger.warn`,`Logger.error`,`Logger.debug`];function WM(){try{let e=Error().stack;if(!e)return;let[,...t]=e.split(`
|
|
75
75
|
`),n=t.filter(e=>!UM.some(t=>e.includes(t)));return n.length?`Stack trace:\n${n.slice(0,5).join(`
|
|
76
76
|
`)}`:void 0}catch{return}}var GM=class{constructor(e,t=HM){this.prefix=e,this.delegate=t??HM}setPrefix(e){this.prefix=e}setDelegate(e){this.delegate=e??HM}emit(e,t){let n=this.delegate,r=jM()?WM():void 0,a=r?[...t,r]:t,o=(()=>{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 o){let t=n[e];if(typeof t==`function`){t.call(n,this.prefix,...a);return}}for(let e of o){let t=HM[e];if(typeof t==`function`){t.call(HM,this.prefix,...a);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){jM()&&this.emit(`debug`,e)}};function KM(e){return new GM(e)}function qM(e){let t=new GM(e);return Object.defineProperty(t,"__mf_infrastructure_logger__",{value:!0,enumerable:!1,configurable:!1}),t}KM(VM),qM(VM);async function JM(e,t){try{return await e()}catch(e){!t&&FM(e);return}}function YM(e,t){let n=/^(https?:)?\/\//i;return e.replace(n,``).replace(/\/$/,``)===t.replace(n,``).replace(/\/$/,``)}function XM(e){let t=null,n=!0,r=2e4,a,o=document.getElementsByTagName(`script`);for(let r=0;r<o.length;r++){let a=o[r],s=a.getAttribute(`src`);if(s&&YM(s,e.url)){t=a,n=!1;break}}if(!t){let n=e.attrs;t=document.createElement(`script`),t.type=n?.type===`module`?`module`:`text/javascript`;let a;e.createScriptHook&&(a=e.createScriptHook(e.url,e.attrs),a instanceof HTMLScriptElement?t=a:typeof a==`object`&&(`script`in a&&a.script&&(t=a.script),`timeout`in a&&a.timeout&&(r=a.timeout))),t.src||=e.url,n&&!a&&Object.keys(n).forEach(e=>{t&&(e===`async`||e===`defer`?t[e]=n[e]:t.getAttribute(e)||t.setAttribute(e,n[e]))})}let s=null,c=typeof window<`u`?t=>{if(t.filename&&YM(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`,s=n}}:null;c&&window.addEventListener(`error`,c);let l=async(n,r)=>{clearTimeout(a),c&&window.removeEventListener(`error`,c);let o=()=>{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 s?e?.onErrorCallback&&e?.onErrorCallback(s):e?.cb&&e?.cb()};if(t&&(t.onerror=null,t.onload=null,JM(()=>{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 o(),t}return o(),e}o()};return t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),a=setTimeout(()=>{l(null,{type:`error`,isTimeout:!0})},r),{script:t,needAttach:n}}function ZM(e){let t=null,n=!0,r=2e4,a,o=document.getElementsByTagName(`link`);for(let r=0;r<o.length;r++){let a=o[r],s=a.getAttribute(`href`),c=a.getAttribute(`rel`);if(s&&YM(s,e.url)&&c===e.attrs.rel){t=a,n=!1;break}}if(!t){t=document.createElement(`link`),t.setAttribute(`href`,e.url);let n,a=!0,o=e.attrs;e.createLinkHook&&(n=e.createLinkHook(e.url,o),n instanceof HTMLLinkElement?(t=n,a=!1):typeof n==`object`&&(`link`in n&&n.link&&(t=n.link,a=!1),`timeout`in n&&n.timeout&&(r=n.timeout))),o&&a&&Object.keys(o).forEach(e=>{t&&!t.getAttribute(e)&&t.setAttribute(e,o[e])})}if(!n)return Promise.resolve().then(()=>{e?.cb&&e?.cb()}),{link:t,needAttach:n};let s=(n,r)=>{a&&clearTimeout(a);let o=()=>{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,JM(()=>{let{needDeleteLink:n=!0}=e;n&&t?.parentNode&&t.parentNode.removeChild(t)}),n)){let e=n(r);return o(),e}o()};return t.onerror=s.bind(null,t.onerror),t.onload=s.bind(null,t.onload),a=setTimeout(()=>{s(null,{type:`error`,isTimeout:!0})},r),{link:t,needAttach:n}}function QM(e,t){let{attrs:n={},createScriptHook:r}=t;return new Promise((t,a)=>{let{script:o,needAttach:s}=XM({url:e,cb:t,onErrorCallback:a,attrs:{fetchpriority:`high`,...n},createScriptHook:r,needDeleteScript:!0});s&&document.head.appendChild(o)})}var $M=new Map;function eN(e){if(!e)throw Error(`import specifier is required`);if($M.has(e))return $M.get(e);let t=Function(`name`,`return import(name)`)(e).then(e=>e).catch(t=>{throw console.error(`Error importing module ${e}:`,t),$M.delete(e),t});return $M.set(e,t),t}var tN=async()=>{let e=await eN(`node-fetch`);return e.default||e},nN=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 tN():fetch)(e,t||{}):r},rN=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 a;try{a=new URL(e)}catch(e){console.error(`Error constructing URL:`,e),t(Error(`Invalid URL: ${e}`));return}let o=async()=>r?.fetch?(e,t)=>nN(e,t,r):typeof fetch>`u`?tN():fetch,s=async(e,r)=>{try{let a=await(await e(r.href)).text(),[o,s]=await Promise.all([eN(`path`),eN(`vm`)]),c={exports:{},module:{exports:{}}},l=r.pathname.split(`/`).slice(0,-1).join(`/`),u=o.basename(r.pathname),d=new s.Script(`(function(exports, module, require, __dirname, __filename) {${a}\n})`,{filename:u,importModuleDynamically:s.constants?.USE_MAIN_CONTEXT_DEFAULT_LOADER??eN}),f;f=(await eN(`node:module`)).createRequire(r.protocol===`file:`||r.protocol===`node:`?r.href:o.join(process.cwd(),`__mf_require_base__.js`)),d.runInThisContext()(c.exports,c.module,f,l,u);let p=c.module.exports||c.exports;if(n&&p&&n.globalName){t(void 0,p[n.globalName]||p);return}t(void 0,p)}catch(e){t(e instanceof Error?e:Error(`Script execution error: ${e}`))}};o().then(async e=>{if(n?.type===`esm`||n?.type===`module`)return oN(a.href,{fetch:e,vm:await eN(`vm`)}).then(async e=>{await e.evaluate(),t(void 0,e.namespace)}).catch(e=>{t(e instanceof Error?e:Error(`Script execution error: ${e}`))});s(e,a)}).catch(e=>{t(e)})}:(e,t,n,r)=>{t(Error(`createScriptNode is disabled in non-Node.js environment`))},iN=typeof ENV_TARGET>`u`||ENV_TARGET!==`web`?(e,t)=>new Promise((n,r)=>{rN(e,(e,a)=>{if(e)r(e);else{let e=t?.attrs?.globalName||`__FEDERATION_${t?.attrs?.name}:custom__`;n(globalThis[e]=a)}},t.attrs,t.loaderHook)}):(e,t)=>{throw Error(`loadScriptNode is disabled in non-Node.js environment`)},aN=new Map;async function oN(e,t){if(aN.has(e))return aN.get(e);let{fetch:n,vm:r}=t,a=await(await n(e)).text(),o=new r.SourceTextModule(a,{importModuleDynamically:async(n,r)=>{let a=new URL(n,e).href;return oN(a,t)}});return aN.set(e,o),await o.link(async n=>{let r=new URL(n,e).href;return await oN(r,t)}),o}var sN=e=>`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split(`-`)[0].toLowerCase()}#${e.toLowerCase()}`,cN=(e,t,n,r)=>{let a=[`${[t[e]]} #${e}`];return n&&a.push(`args: ${JSON.stringify(n)}`),a.push(sN(e)),r&&a.push(`Original Error Message:\n ${r}`),a.join(`
|
|
77
77
|
`)};function lN(e,t,n,r,a,o){return r(cN(e,t,n,a))}var uN=`[ Federation Runtime ]`,dN=KM(uN);function fN(e,t,n,r,a){e||(n===void 0?pN(t):pN(t,n,r,void 0,a))}function pN(e,t,n,r,a){if(t!==void 0)return lN(e,t,n??{},e=>{throw Error(`${uN}: ${e}`)},r,a);let o=e;throw o instanceof Error?(o.message.startsWith(uN)||(o.message=`${uN}: ${o.message}`),o):Error(`${uN}: ${o}`)}function mN(e){e instanceof Error&&(e.message.startsWith(uN)||(e.message=`${uN}: ${e.message}`)),dN.warn(e)}function hN(e,t){return e.findIndex(e=>e===t)===-1&&e.push(t),e}function gN(e){return`version`in e&&e.version?`${e.name}:${e.version}`:`entry`in e&&e.entry?`${e.name}:${e.entry}`:`${e.name}`}function _N(e){return e.entry!==void 0}function vN(e){return!e.entry.includes(`.json`)}function yN(e){return e&&typeof e==`object`}var bN=Object.prototype.toString;function xN(e){return bN.call(e)===`[object Object]`}function SN(e){return Array.isArray(e)?e:[e]}function CN(e){let t={url:``,type:`global`,globalName:``};return DM||kM()||!(`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 wN=(e,t)=>{let n;return n=e.endsWith(`/`)?e.slice(0,-1):e,t.startsWith(`.`)&&(t=t.slice(1)),n+=t,n},TN=typeof globalThis==`object`?globalThis:window,EN=(()=>{try{return document.defaultView}catch{return TN}})(),DN=EN;function ON(e,t,n){Object.defineProperty(e,t,{value:n,configurable:!1,writable:!0})}function kN(e,t){return Object.hasOwnProperty.call(e,t)}kN(TN,`__GLOBAL_LOADING_REMOTE_ENTRY__`)||ON(TN,`__GLOBAL_LOADING_REMOTE_ENTRY__`,{});var AN=TN.__GLOBAL_LOADING_REMOTE_ENTRY__;function jN(e){kN(e,`__VMOK__`)&&!kN(e,`__FEDERATION__`)&&ON(e,`__FEDERATION__`,e.__VMOK__),kN(e,`__FEDERATION__`)||(ON(e,`__FEDERATION__`,{__GLOBAL_PLUGIN__:[],__INSTANCES__:[],moduleInfo:{},__SHARE__:{},__MANIFEST_LOADING__:{},__PRELOADED_MAP__:new Map}),ON(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}jN(TN),jN(EN);function MN(e,t=jM()){t&&(TN.__FEDERATION__.__DEBUG_CONSTRUCTOR__=e,TN.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__=`2.5.1`)}function NN(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,a]=r.split(`:`),o=`${n}:${t}`,s=e[o];if(s)return{value:s,key:o}}return{value:void 0,key:t}}}else pN(`getInfoWithoutType: "key" must be a string, got ${typeof t} (${JSON.stringify(t)}).`)}var PN=()=>EN.__FEDERATION__.moduleInfo,FN=(e,t)=>{let n=NN(t,gN(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=gN(n),a=NN(EN.__FEDERATION__.moduleInfo,r).value;if(a?.version===t)return a}},IN=e=>FN(e,EN.__FEDERATION__.moduleInfo),LN=(e,t)=>{let n=gN(e);return EN.__FEDERATION__.moduleInfo[n]=t,EN.__FEDERATION__.moduleInfo},RN=e=>(EN.__FEDERATION__.moduleInfo={...EN.__FEDERATION__.moduleInfo,...e},()=>{let t=Object.keys(e);for(let e of t)delete EN.__FEDERATION__.moduleInfo[e]}),zN=(e,t)=>{let n=t||`__FEDERATION_${e}:custom__`;return{remoteEntryKey:n,entryExports:TN[n]}},BN=()=>EN.__FEDERATION__.__GLOBAL_PLUGIN__,VN=e=>TN.__FEDERATION__.__PRELOADED_MAP__.get(e),HN=e=>TN.__FEDERATION__.__PRELOADED_MAP__.set(e,!0),UN=`[0-9A-Za-z-]+`,WN=`(?:\\+(${UN}(?:\\.${UN})*))`,GN=`0|[1-9]\\d*`,KN=`[0-9]+`,qN=`\\d*[a-zA-Z-][a-zA-Z0-9-]*`,JN=`(?:${KN}|${qN})`,YN=`(?:-?(${JN}(?:\\.${JN})*))`,XN=`(?:${GN}|${qN})`,ZN=`(?:-(${XN}(?:\\.${XN})*))`,QN=`${GN}|x|X|\\*`,$N=`[v=\\s]*(${QN})(?:\\.(${QN})(?:\\.(${QN})(?:${ZN})?${WN}?)?)?`,eP=`^\\s*(${$N})\\s+-\\s+(${$N})\\s*$`,tP=`[v=\\s]*${`(${KN})\\.(${KN})\\.(${KN})`}${YN}?${WN}?`,nP=`((?:<|>)?=?)`,rP=`(\\s*)${nP}\\s*(${tP}|${$N})`,iP=`(?:~>?)`,aP=`(\\s*)${iP}\\s+`,oP=`(?:\\^)`,sP=`(\\s*)${oP}\\s+`,cP=`(<|>)?=?\\s*\\*`,lP=`^${oP}${$N}$`,uP=`v?${`(${GN})\\.(${GN})\\.(${GN})`}${ZN}?${WN}?`,dP=`^${iP}${$N}$`,fP=`^${nP}\\s*${$N}$`,pP=`^${nP}\\s*(${uP})$|^$`,mP=`^\\s*>=\\s*0.0.0\\s*$`;function hP(e){return new RegExp(e)}function gP(e){return!e||e.toLowerCase()===`x`||e===`*`}function _P(...e){return t=>e.reduce((e,t)=>t(e),t)}function vP(e){return e.match(hP(pP))}function yP(e,t,n,r){let a=`${e}.${t}.${n}`;return r?`${a}-${r}`:a}function bP(e){return e.replace(hP(eP),(e,t,n,r,a,o,s,c,l,u,d,f)=>(t=gP(n)?``:gP(r)?`>=${n}.0.0`:gP(a)?`>=${n}.${r}.0`:`>=${t}`,c=gP(l)?``:gP(u)?`<${Number(l)+1}.0.0-0`:gP(d)?`<${l}.${Number(u)+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:`<=${c}`,`${t} ${c}`.trim()))}function xP(e){return e.replace(hP(rP),`$1$2$3`)}function SP(e){return e.replace(hP(aP),`$1~`)}function CP(e){return e.replace(hP(sP),`$1^`)}function wP(e){return e.trim().split(/\s+/).map(e=>e.replace(hP(lP),(e,t,n,r,a)=>gP(t)?``:gP(n)?`>=${t}.0.0 <${Number(t)+1}.0.0-0`:gP(r)?t===`0`?`>=${t}.${n}.0 <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.0 <${Number(t)+1}.0.0-0`:a?t===`0`?n===`0`?`>=${t}.${n}.${r}-${a} <${t}.${n}.${Number(r)+1}-0`:`>=${t}.${n}.${r}-${a} <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.${r}-${a} <${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 TP(e){return e.trim().split(/\s+/).map(e=>e.replace(hP(dP),(e,t,n,r,a)=>gP(t)?``:gP(n)?`>=${t}.0.0 <${Number(t)+1}.0.0-0`:gP(r)?`>=${t}.${n}.0 <${t}.${Number(n)+1}.0-0`:a?`>=${t}.${n}.${r}-${a} <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.${r} <${t}.${Number(n)+1}.0-0`)).join(` `)}function EP(e){return e.split(/\s+/).map(e=>e.trim().replace(hP(fP),(e,t,n,r,a,o)=>{let s=gP(n),c=s||gP(r),l=c||gP(a);return t===`=`&&l&&(t=``),o=``,s?t===`>`||t===`<`?`<0.0.0-0`:`*`:t&&l?(c&&(r=0),a=0,t===`>`?(t=`>=`,c?(n=Number(n)+1,r=0,a=0):(r=Number(r)+1,a=0)):t===`<=`&&(t=`<`,c?n=Number(n)+1:r=Number(r)+1),t===`<`&&(o=`-0`),`${t+n}.${r}.${a}${o}`):c?`>=${n}.0.0${o} <${Number(n)+1}.0.0-0`:l?`>=${n}.${r}.0${o} <${n}.${Number(r)+1}.0-0`:e})).join(` `)}function DP(e){return e.trim().replace(hP(cP),``)}function OP(e){return e.trim().replace(hP(mP),``)}function kP(e,t){return e=Number(e)||e,t=Number(t)||t,e>t?1:e===t?0:-1}function AP(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],a=r[e];if(t!==a)return t===void 0&&a===void 0?0:t?a?kP(t,a):-1:1}return 0}function jP(e,t){return kP(e.major,t.major)||kP(e.minor,t.minor)||kP(e.patch,t.patch)||AP(e,t)}function MP(e,t){return e.version===t.version}function NP(e,t){switch(e.operator){case``:case`=`:return MP(e,t);case`>`:return jP(e,t)<0;case`>=`:return MP(e,t)||jP(e,t)<0;case`<`:return jP(e,t)>0;case`<=`:return MP(e,t)||jP(e,t)>0;case void 0:return!0;default:return!1}}function PP(e){return _P(wP,TP,EP,DP)(e)}function FP(e){return _P(bP,xP,SP,CP)(e.trim()).split(/\s+/).join(` `)}function IP(e,t){if(!e)return!1;let n=vP(e);if(!n)return!1;let[,r,,a,o,s,c]=n,l={operator:r,version:yP(a,o,s,c),major:a,minor:o,patch:s,preRelease:c?.split(`.`)},u=t.split(`||`);for(let e of u){let t=e.trim();if(!t||t===`*`||t===`x`)return!0;try{let e=FP(t);if(!e.trim())return!0;let n=e.split(` `).map(e=>PP(e)).join(` `);if(!n.trim())return!0;let r=n.split(/\s+/).map(e=>OP(e)).filter(Boolean);if(r.length===0)continue;let a=!0;for(let e of r){let t=vP(e);if(!t){a=!1;break}let[,n,,r,o,s,c]=t;if(!NP({operator:n,version:yP(r,o,s,c),major:r,minor:o,patch:s,preRelease:c?.split(`.`)},l)){a=!1;break}}if(a)return!0}catch(e){console.error(`[semver] Error processing range part "${t}":`,e);continue}}return!1}var LP=`default`,RP=`global`;function zP(e,t,n,r){let a;return a=`get`in e?e.get:`lib`in e?()=>Promise.resolve(e.lib):()=>Promise.resolve(()=>{pN(`Cannot get shared "${n}" from "${t}": neither "get" nor "lib" is provided in the share config.`)}),e.shareConfig?.eager&&e.treeShaking?.mode&&pN(`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:a,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??EM.UNKNOWN,useIn:[]}:void 0}}function BP(e,t){let n=t.shared||{},r=t.name,a=Object.keys(n).reduce((e,a)=>{let o=SN(n[a]);return e[a]=e[a]||[],o.forEach(n=>{e[a].push(zP(n,r,a,t.shareStrategy))}),e},{}),o={...e.shared};return Object.keys(a).forEach(e=>{o[e]?a[e].forEach(t=>{o[e].find(e=>e.version===t.version)||o[e].push(t)}):o[e]=a[e]}),{allShareInfos:o,newShareInfos:a}}function VP(e,t){if(!e)return!1;let{status:n,mode:r}=e;return n===EM.NO_USE?!1:n===EM.CALCULATED?!0:r===`runtime-infer`?t?KP(e,t):!0:!1}function HP(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!!IP(n(e),`<=${n(t)}`)}var UP=(e,t)=>{let n=t||function(e,t){return HP(e,t)};return Object.keys(e).reduce((e,t)=>!e||n(e,t)||e===`0`?t:e,0)},WP=e=>!!e.loaded||typeof e.lib==`function`,GP=e=>!!e.loading,KP=(e,t)=>{if(!e||!t)return!1;let{usedExports:n}=e;return n?!!t.every(e=>n.includes(e)):!1};function qP(e,t,n,r){let a=e[t][n],o=``,s=VP(r),c=function(e,t){return s?a[e].treeShaking?a[t].treeShaking?!WP(a[e].treeShaking)&&HP(e,t):!1:!0:!WP(a[e])&&HP(e,t)};if(s){if(o=UP(e[t][n],c),o)return{version:o,useTreesShaking:s};s=!1}return{version:UP(e[t][n],c),useTreesShaking:s}}var JP=e=>WP(e)||GP(e);function YP(e,t,n,r){let a=e[t][n],o=``,s=VP(r),c=function(e,t){if(s){if(!a[e].treeShaking)return!0;if(!a[t].treeShaking)return!1;if(JP(a[t].treeShaking))return JP(a[e].treeShaking)?!!HP(e,t):!0;if(JP(a[e].treeShaking))return!1}return JP(a[t])?JP(a[e])?!!HP(e,t):!0:JP(a[e])?!1:HP(e,t)};if(s){if(o=UP(e[t][n],c),o)return{version:o,useTreesShaking:s};s=!1}return{version:UP(e[t][n],c),useTreesShaking:s}}function XP(e){return e===`loaded-first`?YP:qP}function ZP(e,t,n,r){if(!e)return;let{shareConfig:a,scope:o=LP,strategy:s,treeShaking:c}=n,l=Array.isArray(o)?o:[o];for(let o of l)if(a&&e[o]&&e[o][t]){let{requiredVersion:l}=a,{version:u,useTreesShaking:d}=XP(s)(e,o,t,c),f={shareScopeMap:e,scope:o,pkgName:t,version:u,GlobalFederation:DN.__FEDERATION__,shareInfo:n,resolver:()=>{let r=e[o][t][u];if(a.singleton){if(typeof l==`string`&&!IP(u,l)){let e=`Version ${u} from ${u&&r.from} of shared singleton module ${t} does not satisfy the requirement of ${n.from} which needs ${l})`;a.strictVersion?pN(e):mN(e)}return{shared:r,useTreesShaking:d}}else{if(l===!1||l===`*`||IP(u,l))return{shared:r,useTreesShaking:d};let n=VP(c);if(n){for(let[r,a]of Object.entries(e[o][t]))if(VP(a.treeShaking,c?.usedExports)&&IP(r,l))return{shared:a,useTreesShaking:n}}for(let[n,r]of Object.entries(e[o][t]))if(IP(n,l))return{shared:r,useTreesShaking:!1}}}};return(r.emit(f)||f).resolver()}}function QP(){return DN.__FEDERATION__.__SHARE__}function $P(e){let{pkgName:t,extraOptions:n,shareInfos:r}=e,a=n?.resolver??(e=>{if(!e)return;let t={};return e.forEach(e=>{t[e.version]=e}),t[UP(t,function(e,n){return!WP(t[e])&&HP(e,n)})]}),o=e=>typeof e==`object`&&!!e&&!Array.isArray(e),s=(...e)=>{let t={};for(let n of e)if(n)for(let[e,r]of Object.entries(n)){let n=t[e];o(n)&&o(r)?t[e]=s(n,r):r!==void 0&&(t[e]=r)}return t};return s(a(r[t]),n?.customShareInfo)}var eF=(e,t)=>{e.useIn||=[],hN(e.useIn,t)};function tF(e,t){return t&&e.treeShaking?e.treeShaking:e}function nF(e,t){return!t||t===`.`?e:`${e}/${t.replace(/^\.\//,``)}`}function rF(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 a=n.alias&&t.startsWith(n.alias),o=n.alias&&t.replace(n.alias,``);if(n.alias&&a){if(o&&o.startsWith(`/`)){let e=n.alias;return o=`.${o}`,{pkgNameOrAlias:e,expose:o,remote:n}}else if(o===``)return{pkgNameOrAlias:n.alias,expose:`.`,remote:n}}}}function iF(e,t){for(let n of e)if(t===n.name||n.alias&&t===n.alias)return n}var aF=`RUNTIME-001`,oF=`RUNTIME-002`,sF=`RUNTIME-003`,cF=`RUNTIME-004`,lF=`RUNTIME-005`,uF=`RUNTIME-006`,dF=`RUNTIME-007`,fF=`RUNTIME-008`,pF=`RUNTIME-009`,mF=`RUNTIME-010`,hF=`RUNTIME-011`,gF=`RUNTIME-012`,_F=`RUNTIME-013`,vF=`RUNTIME-014`,yF=`RUNTIME-015`,bF=`TYPE-001`,xF=`BUILD-001`,SF=`BUILD-002`,CF={[aF]:`Failed to get remoteEntry exports.`,[oF]:`The remote entry interface does not contain "init"`,[sF]:`Failed to get manifest.`,[cF]:`Failed to locate remote.`,[lF]:`Invalid loadShareSync function call from bundler runtime`,[uF]:`Invalid loadShareSync function call from runtime`,[dF]:`Failed to get remote snapshot.`,[fF]:`Failed to load script resources.`,[pF]:`Please call createInstance first.`,[mF]:`The name option cannot be changed after initialization. If you want to create a new instance with a different name, please use "createInstance" api.`,[hF]:`The remoteEntry URL is missing from the remote snapshot.`,[gF]:`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.`,[_F]:`The manifest is not a valid Module Federation manifest.`,[vF]:`The remote does not expose the requested module.`,[yF]:`Remote container initialization failed.`},wF={[bF]:`Failed to generate type declaration. Execute the below cmd to reproduce and fix the error.`},TF={[xF]:`Failed to find expose module.`,[SF]:`PublicPath is required in prod mode.`};({...CF,...wF,...TF});var EF=`.then(callbacks[0]).catch(callbacks[1])`;async function DF({entry:e,remoteEntryExports:t}){return new Promise((n,r)=>{try{t?n(t):typeof FEDERATION_ALLOW_NEW_FUNCTION<`u`?Function(`callbacks`,`import("${e}")${EF}`)([n,r]):fs(()=>import(e).then(n),[],import.meta.url).catch(r)}catch(t){pN(`Failed to load ESM entry from "${e}". ${t instanceof Error?t.message:String(t)}`)}})}async function OF({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}")${EF}`)([n,r])}catch(t){pN(`Failed to load SystemJS entry from "${e}". ${t instanceof Error?t.message:String(t)}`)}})}function kF(e,t,n){let{remoteEntryKey:r,entryExports:a}=zN(e,t);return a||pN(aF,CF,{remoteName:e,remoteEntryUrl:n,remoteEntryKey:r}),a}async function AF({name:e,globalName:t,entry:n,remoteInfo:r,loaderHook:a,getEntryUrl:o,resourceContext:s}){let{entryExports:c}=zN(e,t);if(c)return c;let l=o?o(n):n;return QM(l,{attrs:{},createScriptHook:(e,t)=>{let n=a.lifecycle.createScript.emit({url:e,attrs:t,remoteInfo:r,resourceContext:s?{...s,url:e}:void 0});if(n&&(n instanceof HTMLScriptElement||`script`in n||`timeout`in n))return n}}).then(()=>kF(e,t,n),t=>{let n=t instanceof Error?t.message:String(t);pN(fF,CF,{remoteName:e,resourceUrl:l},n)})}async function jF({remoteInfo:e,remoteEntryExports:t,loaderHook:n,getEntryUrl:r,resourceContext:a}){let{entry:o,entryGlobalName:s,name:c,type:l}=e;switch(l){case`esm`:case`module`:return DF({entry:o,remoteEntryExports:t});case`system`:return OF({entry:o,remoteEntryExports:t});default:return AF({entry:o,globalName:s,name:c,remoteInfo:e,loaderHook:n,getEntryUrl:r,resourceContext:a})}}async function MF({remoteInfo:e,loaderHook:t,resourceContext:n}){let{entry:r,entryGlobalName:a,name:o,type:s}=e,{entryExports:c}=zN(o,a);return c||iN(r,{attrs:{name:o,globalName:a,type:s},loaderHook:{createScriptHook:(r,a={})=>{let o=t.lifecycle.createScript.emit({url:r,attrs:a,remoteInfo:e,resourceContext:n?{...n,url:r}:void 0});if(o&&`url`in o)return o}}}).then(()=>kF(o,a,r)).catch(e=>{pN(`Failed to load Node.js entry for remote "${o}" from "${r}". ${e instanceof Error?e.message:String(e)}`)})}function NF(e){let{entry:t,name:n}=e;return NM(n,t)}async function PF(e){let{origin:t,remoteEntryExports:n,remoteInfo:r,getEntryUrl:a,resourceContext:o,_inErrorHandling:s=!1}=e,c=NF(r);if(n)return n;if(!AN[c]){let e=t.remoteHandler.hooks.lifecycle.loadEntry,l=t.loaderHook;AN[c]=e.emit({origin:t,loaderHook:l,remoteInfo:r,remoteEntryExports:n}).then(e=>e||((typeof ENV_TARGET<`u`?ENV_TARGET===`web`:DM)?jF({remoteInfo:r,remoteEntryExports:n,loaderHook:l,getEntryUrl:a,resourceContext:o}):MF({remoteInfo:r,loaderHook:l,resourceContext:o}))).then(async e=>(await t.loaderHook.lifecycle.afterLoadEntry.emit({origin:t,remoteInfo:r,remoteEntryExports:e}),e)).catch(async e=>{let a=NF(r),o=e instanceof Error&&e.message.includes(`ScriptExecutionError`);if(e instanceof Error&&e.message.includes(`RUNTIME-008`)&&!o&&!s){let e=await t.loaderHook.lifecycle.loadEntryError.emit({getRemoteEntry:e=>PF({...e,_inErrorHandling:!0}),origin:t,remoteInfo:r,remoteEntryExports:n,globalLoading:AN,uniqueKey:a});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 AN[c]}function FF(e){return{...e,entry:`entry`in e?e.entry:``,type:e.type||`global`,entryGlobalName:e.entryGlobalName||e.name,shareScope:e.shareScope||`default`}}function IF(){return typeof FEDERATION_BUILD_IDENTIFIER<`u`?FEDERATION_BUILD_IDENTIFIER:``}function LF(e,t){let n=BN(),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 RF(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 zF(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(RF)??[],shared:t}}}function BF(e){return{resourceCategory:`sync`,share:!0,depsRemote:!0,...e}}function VF(e,t){return t.map(t=>{let n=iF(e,t.nameOrAlias);return fN(n,`Unable to preload ${t.nameOrAlias} as it is not included in ${!n&&IM({remoteInfo:n,remotes:e})}`),{remote:n,preloadConfig:BF(t)}})}function HF(e){return e?e.map(e=>e===`.`?e:e.startsWith(`./`)?e.replace(`./`,``):e):[]}function UF(e){return e instanceof Error?e.message.includes(`timed out`)||e.name.includes(`Timeout`):!1}function WF(e,t,n,r){return{url:t,status:n,resourceType:e.resourceType,initiator:e.initiator,id:e.id,error:r}}async function GF(e,t,n,r){let a=e.moduleCache.get(n.name),o=n.entry;if(a?.remoteEntryExports)return WF(r,o,`cached`);try{if(!await PF({origin:e,remoteInfo:n,remoteEntryExports:a?.remoteEntryExports,resourceContext:{...r,url:o}}))throw Error(`Failed to load remoteEntry "${o}".`);return WF(r,o,`success`)}catch(e){return WF(r,o,UF(e)?`timeout`:`error`,e)}}function KF({host:e,remoteInfo:t,url:n,attrs:r,context:a,needDeleteLink:o}){return new Promise(s=>{let{link:c,needAttach:l}=ZM({url:n,cb:()=>{s(WF(a,n,l?`success`:`cached`))},onErrorCallback:e=>{s(WF(a,n,UF(e)?`timeout`:`error`,e))},attrs:r,createLinkHook:(n,r)=>{let o=e.loaderHook.lifecycle.createLink.emit({url:n,attrs:r,remoteInfo:t,resourceContext:{...a,url:n}});return o instanceof HTMLLinkElement,o},needDeleteLink:o});l&&document.head.appendChild(c)})}function qF({host:e,remoteInfo:t,url:n,attrs:r,context:a}){return new Promise(o=>{let{script:s,needAttach:c}=XM({url:n,cb:()=>{o(WF(a,n,c?`success`:`cached`))},onErrorCallback:e=>{o(WF(a,n,UF(e)?`timeout`:`error`,e))},attrs:r,createScriptHook:(n,r)=>{let o=e.loaderHook.lifecycle.createScript.emit({url:n,attrs:r,remoteInfo:t,resourceContext:{...a,url:n}});return o instanceof HTMLScriptElement,o},needDeleteScript:!0});c&&document.head.appendChild(s)})}function JF(e,t){return{...e,resourceType:t}}function YF(e,t,n,r=!0,a={initiator:`preloadRemote`,id:e.name}){let{cssAssets:o,jsAssetsWithoutEntry:s,entryAssets:c}=n,l=[];if(t.options.inBrowser){if(c.forEach(n=>{let{moduleInfo:r}=n;l.push(GF(t,e,r,JF(a,`remoteEntry`)))}),r){let n={rel:`preload`,as:`style`};o.forEach(r=>{l.push(KF({host:t,remoteInfo:e,url:r,attrs:n,context:JF(a,`css`)}))})}else{let n={rel:`stylesheet`,type:`text/css`};o.forEach(r=>{l.push(KF({host:t,remoteInfo:e,url:r,attrs:n,needDeleteLink:!1,context:JF(a,`css`)}))})}if(r){let n={rel:`preload`,as:`script`};s.forEach(r=>{l.push(KF({host:t,remoteInfo:e,url:r,attrs:n,context:JF(a,`js`)}))})}else{let n={fetchpriority:`high`,type:e?.type===`module`?`module`:`text/javascript`};s.forEach(r=>{l.push(qF({host:t,remoteInfo:e,url:r,attrs:n,context:JF(a,`js`)}))})}}return Promise.all(l)}function XF(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 ZF(e,t,n){let r=t,a=Array.isArray(e.shareScope)?e.shareScope:[e.shareScope];a.length||a.push(`default`),a.forEach(e=>{r[e]||(r[e]={})});let o={version:e.version||``,shareScopeKeys:Array.isArray(e.shareScope)?a:e.shareScope||`default`};return Object.defineProperty(o,"shareScopeMap",{value:r,enumerable:!1}),{remoteEntryInitOptions:o,shareScope:r[a[0]],initScope:n??[]}}var QF=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 PF({origin:this.host,remoteInfo:this.remoteInfo,remoteEntryExports:this.remoteEntryExports,resourceContext:{initiator:`loadRemote`,id:nF(this.remoteInfo.name,e),resourceType:`remoteEntry`}});return fN(t,`remoteEntryExports is undefined \n ${IM(this.remoteInfo)}`),this.remoteEntryExports=t,this.remoteEntryExports}async init(e,t,n,r){let a=await this.getEntry(r);if(this.inited)return await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:a,cached:!0,origin:this.host}),a;if(this.initPromise){try{await this.initPromise,await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:a,cached:!0,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:a,error:n,cached:!0,origin:this.host}),n}return a}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:o,initScope:s}=ZF(this.remoteInfo,this.host.shareScopeMap,n),c=await this.host.hooks.lifecycle.beforeInitContainer.emit({shareScope:o,remoteEntryInitOptions:r,initScope:s,remoteInfo:this.remoteInfo,origin:this.host});a?.init===void 0&&pN(oF,CF,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName},void 0,zF(this.host.options));try{await a.init(c.shareScope,c.initScope,c.remoteEntryInitOptions)}catch(e){pN(yF,CF,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName,shareScope:this.remoteInfo.shareScope},`${e}`,zF(this.host.options))}await this.host.hooks.lifecycle.initContainer.emit({...c,id:e,remoteSnapshot:t,remoteEntryExports:a}),this.inited=!0})();try{await this.initPromise,await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:a,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:a,error:n,origin:this.host}),n}finally{this.initing=!1,this.initPromise=void 0}return a}async get(e,t,n,r){let{loadFactory:a=!0}=n||{loadFactory:!0},o=await this.init(e,r,void 0,t);this.lib=o,await this.host.loaderHook.lifecycle.beforeGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:o,origin:this.host});let s;try{let n=await this.host.loaderHook.lifecycle.getModuleFactory.emit({remoteEntryExports:o,expose:t,moduleInfo:this.remoteInfo});s=typeof n==`function`?n:void 0,s||=await o.get(t),s||pN(vF,CF,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,expose:t,requestId:e,availableExposes:XF(r)},void 0,zF(this.host.options)),await this.host.loaderHook.lifecycle.afterGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:o,moduleFactory:s,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:o,error:n,origin:this.host}),n}let c=wN(this.remoteInfo.name,t),l=this.wraperFactory(s,c);if(!a)return l;await this.host.loaderHook.lifecycle.beforeExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:a,origin:this.host});try{let n=await l();return await this.host.loaderHook.lifecycle.afterExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:a,exposeModule:n,origin:this.host}),n}catch(n){throw await this.host.loaderHook.lifecycle.afterExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:a,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)}}},$F=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()}},eI=class extends $F{emit(...e){let t,n=Array.from(this.listeners);if(n.length>0){let r=0,a=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]?a(t):a(n)):t;t=a()}return Promise.resolve(t)}};function tI(e,t){if(!yN(t))return!1;if(e!==t){for(let n in e)if(!(n in t))return!1}return!0}var nI=class extends $F{constructor(e){super(),this.onerror=pN,this.type=e}emit(e){yN(e)||pN(`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(tI(e,n))e=n;else{this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);break}}catch(e){mN(e),this.onerror(e)}return e}},rI=class extends $F{constructor(e){super(),this.onerror=pN,this.type=e}emit(e){yN(e)||pN(`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=>(mN(t),this.onerror(t),e),a=o=>{if(o!==void 0&&tI(e,o))e=o;else if(o!==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(a,r)}catch(e){return r(e)}return e};return Promise.resolve(a(e))}return Promise.resolve(e)}},iI=class{constructor(e){this.registerPlugins={},this.lifecycle=e,this.lifecycleKeys=Object.keys(e)}applyPlugin(e,t){fN(xN(e),`Plugin configuration is invalid.`);let n=e.name;fN(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){fN(e,`A name is required.`);let t=this.registerPlugins[e];fN(t,`The plugin "${e}" is not registered.`),Object.keys(t).forEach(e=>{e!==`name`&&this.lifecycle[e].remove(t[e])})}};function aI(e,t){let n=CN(t);n.url||pN(hF,CF,{remoteName:e.name});let r=PM(t,n.url);!DM&&!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 oI(){return{name:`snapshot-plugin`,async afterResolve(e){let{remote:t,pkgNameOrAlias:n,expose:r,origin:a,remoteInfo:o,id:s}=e;if(!_N(t)||!vN(t)){let{remoteSnapshot:c,globalSnapshot:l}=await a.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:t,id:nF(t.name,r)});aI(o,c);let u={remote:t,preloadConfig:{nameOrAlias:n,exposes:[r],resourceCategory:`sync`,share:!1,depsRemote:!1}},d=await a.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({origin:a,preloadOptions:u,remoteInfo:o,remote:t,remoteSnapshot:c,globalSnapshot:l});return d&&YF(o,a,d,!1,{initiator:`loadRemote`,id:s}).catch(()=>void 0),{...e,remoteSnapshot:c}}return e}}}function sI(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 cI(e,t,n,r,a={},o){let{value:s}=NN(e,gN(t)),c=o||s;if(c&&!BM(c)&&(n(c,t,r),c.remotesInfo)){let t=Object.keys(c.remotesInfo);for(let r of t){if(a[r])continue;a[r]=!0;let t=sI(r),o=c.remotesInfo[r];cI(e,{name:t.name,version:o.matchedVersion},n,!1,a,void 0)}}}var lI=(e,t)=>document.querySelector(`${e}[${e===`link`?`href`:`src`}="${t}"]`);function uI(e,t,n,r,a){let o=[],s=[],c=[],l=new Set,u=new Set,{options:d}=e,{preloadConfig:f}=t,{depsRemote:p}=f;if(cI(r,n,(t,n,r)=>{let a;if(r)a=f;else if(Array.isArray(p)){let e=p.find(e=>e.nameOrAlias===n.name||e.nameOrAlias===n.alias);if(!e)return;a=BF(e)}else if(p===!0)a=f;else return;let l=PM(t,CN(t).url);l&&c.push({name:n.name,moduleInfo:{name:n.name,entry:l,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:l});let u=`modules`in t?t.modules:[],d=HF(a.exposes);d.length&&`modules`in t&&(u=t?.modules?.reduce((e,t)=>(d?.indexOf(t.moduleName)!==-1&&e.push(t),e),[]));function m(e){let n=e.map(e=>PM(t,e));return a.filter?n.filter(a.filter):n}if(u){let r=u.length;for(let c=0;c<r;c++){let r=u[c],l=`${n.name}/${r.moduleName}`;e.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({id:r.moduleName===`.`?n.name:l,name:n.name,remoteSnapshot:t,preloadConfig:a,remote:n,origin:e}),!VN(l)&&(a.resourceCategory===`all`?(o.push(...m(r.assets.css.async)),o.push(...m(r.assets.css.sync)),s.push(...m(r.assets.js.async)),s.push(...m(r.assets.js.sync))):a.resourceCategory===`sync`&&(o.push(...m(r.assets.css.sync)),s.push(...m(r.assets.js.sync))),HN(l))}}},!0,{},a),a.shared&&a.shared.length>0){let t=(t,n)=>{let{shared:r}=ZP(e.shareScopeMap,n.sharedName,t,e.sharedHandler.hooks.lifecycle.resolveShare)||{};r&&typeof r.lib==`function`&&(n.assets.js.sync.forEach(e=>{l.add(e)}),n.assets.css.sync.forEach(e=>{u.add(e)}))};a.shared.forEach(e=>{let n=d.shared?.[e.sharedName];if(!n)return;let r=e.version?n.find(t=>t.version===e.version):n;r&&SN(r).forEach(n=>{t(n,e)})})}let m=s.filter(e=>!l.has(e)&&!lI(`script`,e));return{cssAssets:o.filter(e=>!u.has(e)&&!lI(`link`,e)),jsAssetsWithoutEntry:m,entryAssets:c.filter(e=>!lI(`script`,e.url))}}var dI=function(){return{name:`generate-preload-assets-plugin`,async generatePreloadAssets(e){let{origin:t,preloadOptions:n,remoteInfo:r,remote:a,globalSnapshot:o,remoteSnapshot:s}=e;return DM?_N(a)&&vN(a)?{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[{name:a.name,url:a.entry,moduleInfo:{name:r.name,entry:a.entry,type:r.type||`global`,entryGlobalName:``,shareScope:``}}]}:(aI(r,s),uI(t,n,r,o,s)):{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[]}}}};function fI(e,t){let n=IN({name:t.name,version:t.options.version}),r=n&&`remotesInfo`in n&&n.remotesInfo&&NN(n.remotesInfo,e.name).value;return r&&r.matchedVersion?{hostGlobalSnapshot:n,globalSnapshot:PN(),remoteSnapshot:IN({name:e.name,version:r.matchedVersion})}:{hostGlobalSnapshot:void 0,globalSnapshot:PN(),remoteSnapshot:IN({name:e.name,version:`version`in e?e.version:void 0})}}var pI=class{constructor(e){this.loadingHostSnapshot=null,this.manifestCache=new Map,this.hooks=new iI({beforeLoadRemoteSnapshot:new eI(`beforeLoadRemoteSnapshot`),loadSnapshot:new rI(`loadGlobalSnapshot`),loadRemoteSnapshot:new rI(`loadRemoteSnapshot`),afterLoadSnapshot:new rI(`afterLoadSnapshot`)}),this.manifestLoading=DN.__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 a=IN({name:this.HostInstance.options.name,version:this.HostInstance.options.version});a||(a={version:this.HostInstance.options.version||``,remoteEntry:``,remotesInfo:{}},RN({[this.HostInstance.options.name]:a})),a&&`remotesInfo`in a&&!NN(a.remotesInfo,e.name).value&&(`version`in e||`entry`in e)&&(a.remotesInfo={...a?.remotesInfo,[e.name]:{matchedVersion:`version`in e?e.version:e.entry}});let{hostGlobalSnapshot:o,remoteSnapshot:s,globalSnapshot:c}=this.getGlobalRemoteInfo(e),{remoteSnapshot:l,globalSnapshot:u}=await this.hooks.lifecycle.loadSnapshot.emit({options:r,moduleInfo:e,hostGlobalSnapshot:o,remoteSnapshot:s,globalSnapshot:c}),d,f;if(l)if(BM(l)){let r=DM?l.remoteEntry:l.ssrRemoteEntry||l.remoteEntry||``,a=await this.loadManifestSnapshot(r,e,{},{initiator:n,id:t||e.name}),o=LN({...e,entry:r},a);d=a,f=o}else{let{remoteSnapshot:t}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:e,remoteSnapshot:l,from:`global`});d=t,f=u}else if(_N(e)){let r=await this.loadManifestSnapshot(e.entry,e,{},{initiator:n,id:t||e.name}),a=LN(e,r);d=r,f=a}else pN(dF,CF,{remoteName:e.name,remoteVersion:e.version,hostName:this.HostInstance.options.name,globalSnapshot:JSON.stringify(u)},void 0,zF(this.HostInstance.options));return await this.hooks.lifecycle.afterLoadSnapshot.emit({id:t,host:this.HostInstance,options:r,moduleInfo:e,remoteSnapshot:d}),{remoteSnapshot:d,globalSnapshot:f}}getGlobalRemoteInfo(e){return fI(e,this.HostInstance)}async getManifestJson(e,t,n,r){return(async()=>{let n=FF(t),a=this.manifestCache.get(e);if(a)return a;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,{})),a=await t.json()}catch(r){a=await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:r,from:`runtime`,lifecycle:`afterResolve`,remote:n,origin:this.HostInstance}),a||(delete this.manifestLoading[e],pN(sF,CF,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name},`${r}`,zF(this.HostInstance.options)))}let o=[!a.metaData&&`metaData`,!a.exposes&&`exposes`,!a.shared&&`shared`].filter(Boolean);return o.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: ${o.join(`, `)}.`),from:`runtime`,lifecycle:`afterResolve`,remote:n,origin:this.HostInstance}),o.length>0&&pN(_F,CF,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name,missingFields:o.join(`,`)},void 0,zF(this.HostInstance.options)),this.manifestCache.set(e,a),a})()}async loadManifestSnapshot(e,t,n,r){let a=async()=>{let a=await this.getManifestJson(e,t,n,r),o=zM(a,{version:e}),{remoteSnapshot:s}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:t,manifestJson:a,remoteSnapshot:o,manifestUrl:e,from:`manifest`});return s};return this.manifestLoading[e]||(this.manifestLoading[e]=a().then(e=>e)),this.manifestLoading[e]}},mI=class{constructor(e){this.hooks=new iI({beforeRegisterShare:new nI(`beforeRegisterShare`),afterResolve:new rI(`afterResolve`),beforeLoadShare:new rI(`beforeLoadShare`),loadShare:new eI,afterLoadShare:new $F(`afterLoadShare`),errorLoadShare:new $F(`errorLoadShare`),resolveShare:new nI(`resolveShare`),initContainerShareScopeMap:new nI(`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){mN(e)}}emitErrorLoadShare({lifecycle:e,pkgName:t,shareInfo:n,error:r,recovered:a}){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:a})}catch(e){mN(e)}}registerShared(e,t){let{newShareInfos:n,allShareInfos:r}=BP(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=$P({pkgName:e,extraOptions:t,shareInfos:n.options.shared}),a=r;try{r?.scope&&await Promise.all(r.scope.map(async e=>{await Promise.all(this.initializeSharing(e,{strategy:r.strategy}))})),a=(await this.hooks.lifecycle.beforeLoadShare.emit({pkgName:e,shareInfo:r,shared:n.options.shared,origin:n})).shareInfo,fN(a,`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 o=a,{shared:s,useTreesShaking:c}=ZP(this.shareScopeMap,e,a,this.hooks.lifecycle.resolveShare)||{};if(s){let t=tF(s,c);if(t.lib)return eF(t,n.options.name),this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:o,selectedShared:s}),t.lib;if(t.loading&&!t.loaded){let r=await t.loading;return t.loaded=!0,t.lib||=r,eF(t,n.options.name),this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:o,selectedShared:s}),r}else{let r=(async()=>{let e=await t.get();return eF(t,n.options.name),t.loaded=!0,t.lib=e,e})();this.setShared({pkgName:e,loaded:!1,shared:s,from:n.options.name,lib:null,loading:r,treeShaking:c?t:void 0});let a=await r;return this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:o,selectedShared:s}),a}}else{if(t?.customShareInfo)return this.emitErrorLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:o,recovered:!0}),!1;let r=VP(o.treeShaking),a=tF(o,r),s=(async()=>{let t=await a.get();a.lib=t,a.loaded=!0,eF(a,n.options.name);let{shared:r,useTreesShaking:s}=ZP(this.shareScopeMap,e,o,this.hooks.lifecycle.resolveShare)||{};if(r){let e=tF(r,s);e.lib=t,e.loaded=!0,r.from=o.from}return t})();this.setShared({pkgName:e,loaded:!1,shared:o,from:n.options.name,lib:null,loading:s,treeShaking:r?a:void 0});let c=await s;return this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:o,selectedShared:o}),c}}catch(t){throw this.emitErrorLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,error:t}),t}}initializeSharing(e=LP,t){let{host:n}=this,r=t?.from,a=t?.strategy,o=t?.initScope,s=[];if(r!==`build`){let{initTokens:t}=this;o||=[];let n=t[e];if(n||=t[e]={from:this.host.name},o.indexOf(n)>=0)return s;o.push(n)}let c=this.shareScopeMap,l=n.options.name;c[e]||(c[e]={});let u=c[e],d=(e,t)=>{let{version:n,eager:r}=t;u[e]=u[e]||{};let a=u[e],o=a[n]&&tF(a[n]),s=!!(o&&(`eager`in o&&o.eager||`shareConfig`in o&&o.shareConfig?.eager));(!o||o.strategy!==`loaded-first`&&!o.loaded&&(!r==!s?l>a[n].from:r))&&(a[n]=t)},f=async e=>{let{module:t}=await n.remoteHandler.getRemoteModuleAndOptions({id:e}),r;try{r=await t.getEntry()}catch(a){if(r=await n.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:a,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,o))}};return Object.keys(n.options.shared).forEach(t=>{n.options.shared[t].forEach(n=>{n.scope.includes(e)&&d(t,n)})}),(n.options.shareStrategy===`version-first`||a===`version-first`)&&n.options.remotes.forEach(t=>{t.shareScope===e&&s.push(f(t.name))}),s}loadShareSync(e,t){let{host:n}=this,r=$P({pkgName:e,extraOptions:t,shareInfos:n.options.shared});try{r?.scope&&r.scope.forEach(e=>{this.initializeSharing(e,{strategy:r.strategy})});let{shared:a}=ZP(this.shareScopeMap,e,r,this.hooks.lifecycle.resolveShare)||{};if(a){if(typeof a.lib==`function`)return eF(a,n.options.name),a.loaded||(a.loaded=!0,a.from===n.options.name&&(r.loaded=!0)),this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:a}),a.lib;if(typeof a.get==`function`){let t=a.get();if(!(t instanceof Promise))return eF(a,n.options.name),this.setShared({pkgName:e,loaded:!0,from:n.options.name,lib:t,shared:a}),this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:a}),t}}if(r.lib)return r.loaded||=!0,this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:r}),r.lib;if(r.get){let a=r.get();return a instanceof Promise&&pN(t?.from===`build`?lF:uF,CF,{hostName:n.options.name,sharedPkgName:e},void 0,zF(n.options)),r.lib=a,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}pN(uF,CF,{hostName:n.options.name,sharedPkgName:e},void 0,zF(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:a,loaded:o,get:s,treeShaking:c}){let{version:l,scope:u=`default`,...d}=t,f=Array.isArray(u)?u:[u],p=e=>{let t=(e,t,n)=>{n&&!e[t]&&(e[t]=n)},n=c?e.treeShaking:e;t(n,`loaded`,o),t(n,`loading`,a),t(n,`get`,s)};f.forEach(t=>{this.shareScopeMap[t]||(this.shareScopeMap[t]={}),this.shareScopeMap[t][e]||(this.shareScopeMap[t][e]={}),this.shareScopeMap[t][e][l]||(this.shareScopeMap[t][e][l]={version:l,scope:[t],...d,lib:r});let a=this.shareScopeMap[t][e][l];p(a),n&&a.from!==n&&(a.from=n)})}_setGlobalShareScopeMap(e){let t=QP(),n=e.id||e.name;n&&!t[n]&&(t[n]=this.shareScopeMap)}},hI=class{constructor(e){this.hooks=new iI({beforeRegisterRemote:new nI(`beforeRegisterRemote`),registerRemote:new nI(`registerRemote`),beforeRequest:new rI(`beforeRequest`),afterMatchRemote:new eI(`afterMatchRemote`),onLoad:new eI(`onLoad`),afterLoadRemote:new eI(`afterLoadRemote`),handlePreloadModule:new $F(`handlePreloadModule`),errorLoadRemote:new eI(`errorLoadRemote`),beforePreloadRemote:new eI(`beforePreloadRemote`),generatePreloadAssets:new eI(`generatePreloadAssets`),afterPreloadRemote:new eI(`afterPreloadRemote`),loadEntry:new eI}),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:a,alias:o}=n;if(this.idToRemoteMap[e]={name:n.name,expose:r},o&&e.startsWith(a)){let t=e.replace(a,o);this.idToRemoteMap[t]={name:n.name,expose:r};return}if(o&&e.startsWith(o)){let t=e.replace(o,a);this.idToRemoteMap[t]={name:n.name,expose:r}}}async loadRemote(e,t){let{host:n}=this,r=rF(n.options.remotes,e),a=e,o=r?.expose,s=r?FF(r.remote):void 0,c;try{let{loadFactory:r=!0}=t||{loadFactory:!0},{module:l,moduleOptions:u,remoteMatchInfo:d}=await this.getRemoteModuleAndOptions({id:e}),{pkgNameOrAlias:f,remote:p,expose:m,id:h,remoteSnapshot:g}=d;a=h,o=m,s=FF(p);let _=await l.get(h,m,t,g),v=await this.hooks.lifecycle.onLoad.emit({id:h,pkgNameOrAlias:f,expose:m,exposeModule:r?_:void 0,exposeModuleFactory:r?void 0:_,remote:p,options:u,moduleInstance:l,origin:n});return this.setIdToRemoteMap(e,d),c={id:a,expose:o,remote:s,options:t,origin:n},typeof v==`function`?v:_}catch(r){let{from:l=`runtime`}=t||{from:`runtime`},u;try{u=await this.hooks.lifecycle.errorLoadRemote.emit({id:e,error:r,from:l,lifecycle:`onLoad`,expose:o,remote:s,origin:n})}catch(e){throw c={id:a,expose:o,remote:s,options:t,error:e,origin:n},e}if(!u)throw c={id:a,expose:o,remote:s,options:t,error:r,origin:n},r;return c={id:a,expose:o,remote:s,options:t,error:r,origin:n,recovered:!0},u}finally{c&&await this.hooks.lifecycle.afterLoadRemote.emit(c)}}async preloadRemote(e){let{host:t}=this,n=[];await this.hooks.lifecycle.beforePreloadRemote.emit({preloadOps:e,options:t.options,origin:t});let r=VF(t.options.remotes,e),a=e=>{let{preloadConfig:t,remote:n}=e,r=t.exposes||[];return r.length?r.map(r=>({ops:{...e,preloadConfig:{...t,exposes:[r]}},id:nF(n.name,r)})):[{ops:e,id:`${n.name}/*`}]},o;await Promise.all(r.flatMap(a).map(async e=>{let{ops:r,id:a}=e,{remote:o,preloadConfig:s}=r,c=FF(o);try{let{globalSnapshot:e,remoteSnapshot:l}=await t.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:o,id:a,initiator:`preloadRemote`}),u=await this.hooks.lifecycle.generatePreloadAssets.emit({origin:t,preloadOptions:r,remote:o,remoteInfo:c,globalSnapshot:e,remoteSnapshot:l});if(!u)return;let d=await YF(c,t,u,!0,{initiator:`preloadRemote`,id:a});n.push({remote:o,remoteInfo:c,preloadConfig:s,id:a,results:d})}catch(e){n.push({remote:o,remoteInfo:c,preloadConfig:s,id:a,results:[{url:c.entry,status:`error`,resourceType:/\.json(?:$|[?#])/i.test(c.entry)?`manifest`:`remoteEntry`,initiator:`preloadRemote`,id:a,error:e}]})}}));let s=n.flatMap(e=>e.results.filter(e=>e.status===`error`||e.status===`timeout`));if(s.length>0&&(o=Error(`preloadRemote failed to load ${s.length} resource(s).`),Object.assign(o,{results:n,failedResults:s})),await this.hooks.lifecycle.afterPreloadRemote.emit({preloadOps:e,options:t.options,origin:t,results:n,error:o}),o)throw o}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:a}=r,o=rF(t.options.remotes,a);if(!o)try{pN(cF,CF,{hostName:t.options.name,requestId:a},void 0,zF(t.options))}catch(e){throw await this.hooks.lifecycle.afterMatchRemote.emit({id:a,options:t.options,error:e,origin:t}),e}let{remote:s}=o,c=FF(s);await this.hooks.lifecycle.afterMatchRemote.emit({id:a,...o,options:t.options,remoteInfo:c,origin:t});let l=await t.sharedHandler.hooks.lifecycle.afterResolve.emit({id:a,...o,options:t.options,origin:t,remoteInfo:c}),{remote:u,expose:d}=l;fN(u&&d,`The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${a}.`);let f=t.moduleCache.get(u.name),p={host:t,remoteInfo:c};return f||(f=new QF(p),t.moduleCache.set(u.name,f)),{module:f,moduleOptions:p,remoteMatchInfo:l}}registerRemote(e,t,n){let{host:r}=this,a=()=>{if(e.alias){let n=t.find(t=>e.alias&&(t.name.startsWith(e.alias)||t.alias?.startsWith(e.alias)));fN(!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&&DM&&typeof window<`u`&&!e.entry.startsWith(`http`)&&(e.entry=new URL(e.entry,window.location.origin).href),e.shareScope||=LP,e.type||=RP};this.hooks.lifecycle.beforeRegisterRemote.emit({remote:e,origin:r});let o=t.find(t=>t.name===e.name);if(!o)a(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:r});else{let s=[`The remote "${e.name}" is already registered.`,`Please note that overriding it may cause unexpected errors.`];n?.force&&(this.removeRemote(o),a(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:r}),FM(s.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 a=t.moduleCache.get(e.name);if(a){let n=a.remoteInfo,r=n.entryGlobalName;TN[r]&&(Object.getOwnPropertyDescriptor(TN,r)?.configurable?delete TN[r]:TN[r]=void 0);let o=NF(a.remoteInfo);AN[o]&&delete AN[o],t.snapshotHandler.manifestCache.delete(n.entry);let s=n.buildVersion?NM(n.name,n.buildVersion):n.name,c=TN.__FEDERATION__.__INSTANCES__.findIndex(e=>n.buildVersion?e.options.id===s:e.name===s);if(c!==-1){let e=TN.__FEDERATION__.__INSTANCES__[c];s=e.options.id||s;let t=QP(),r=!0,a=[];Object.keys(t).forEach(e=>{let o=t[e];o&&Object.keys(o).forEach(t=>{let s=o[t];s&&Object.keys(s).forEach(o=>{let c=s[o];c&&Object.keys(c).forEach(s=>{let l=c[s];l&&typeof l==`object`&&l.from===n.name&&(l.loaded||l.loading?(l.useIn=l.useIn.filter(e=>e!==n.name),l.useIn.length?r=!1:a.push([e,t,o,s])):a.push([e,t,o,s]))})})})}),r&&(e.shareScopeMap={},delete t[s]),a.forEach(([e,n,r,a])=>{delete t[e]?.[n]?.[r]?.[a]}),TN.__FEDERATION__.__INSTANCES__.splice(c,1)}let{hostGlobalSnapshot:l}=fI(e,t);if(l){let t=l&&`remotesInfo`in l&&l.remotesInfo&&NN(l.remotesInfo,e.name).key;t&&(delete l.remotesInfo[t],DN.__FEDERATION__.__MANIFEST_LOADING__[t]&&delete DN.__FEDERATION__.__MANIFEST_LOADING__[t])}t.moduleCache.delete(e.name)}}catch(e){dN.error(`removeRemote failed: ${e instanceof Error?e.message:String(e)}`)}}},gI=typeof FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN==`boolean`?!FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN:!0;MN(class{constructor(e){this.hooks=new iI({beforeInit:new nI(`beforeInit`),init:new $F,beforeInitContainer:new rI(`beforeInitContainer`),initContainer:new rI(`initContainer`)}),this.version=`2.5.1`,this.moduleCache=new Map,this.loaderHook=new iI({getModuleInfo:new $F,createScript:new $F,createLink:new $F,fetch:new eI,loadEntryError:new eI,afterLoadEntry:new eI(`afterLoadEntry`),beforeInitRemote:new eI(`beforeInitRemote`),afterInitRemote:new eI(`afterInitRemote`),beforeGetExpose:new eI(`beforeGetExpose`),afterGetExpose:new eI(`afterGetExpose`),beforeExecuteFactory:new eI(`beforeExecuteFactory`),afterExecuteFactory:new eI(`afterExecuteFactory`),getModuleFactory:new eI}),this.bridgeHook=new iI({beforeBridgeRender:new $F,afterBridgeRender:new $F,beforeBridgeDestroy:new $F,afterBridgeDestroy:new $F});let t=gI?[oI(),dI()]:[],n={id:IF(),name:e.name,plugins:t,remotes:[],shared:{},inBrowser:DM};this.name=e.name,this.options=n,this.snapshotHandler=new pI(this),this.sharedHandler=new mI(this),this.remoteHandler=new hI(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&&pN(cN(mF,CF)),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=LP,t){return this.sharedHandler.initializeSharing(e,t)}initRawContainer(e,t,n){let r=FF({name:e,entry:t}),a=new QF({host:this,remoteInfo:r});return a.remoteEntryExports=n,this.moduleCache.set(e,a),a}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}=BP(e,t),{userOptions:r,options:a}=this.hooks.lifecycle.beforeInit.emit({origin:this,userOptions:t,options:e,shareInfo:n}),o=this.remoteHandler.formatAndRegisterRemote(a,r),{allShareInfos:s}=this.sharedHandler.registerShared(a,r),c=[...a.plugins];r.plugins&&r.plugins.forEach(e=>{c.includes(e)||c.push(e)});let l={...e,...t,plugins:c,remotes:o,shared:s,id:r.id||e.id};return this.hooks.lifecycle.init.emit({origin:this,options:l}),l}registerPlugins(e){let t=LF(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 _I=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),vI=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),yI=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),bI=e=>{let t=yI(e);return t.charAt(0).toUpperCase()+t.slice(1)},xI={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`},SI=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},CI=(0,S.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a=``,children:o,iconNode:s,...c},l)=>(0,S.createElement)(`svg`,{ref:l,...xI,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:_I(`lucide`,a),...!o&&!SI(c)&&{"aria-hidden":`true`},...c},[...s.map(([e,t])=>(0,S.createElement)(e,t)),...Array.isArray(o)?o:[o]])),Q=(e,t)=>{let n=(0,S.forwardRef)(({className:n,...r},a)=>(0,S.createElement)(CI,{ref:a,iconNode:t,className:_I(`lucide-${vI(bI(e))}`,`lucide-${e}`,n),...r}));return n.displayName=bI(e),n},wI=Q(`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`}]]),TI=Q(`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`}]]),EI=Q(`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`}]]);Q(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),Q(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Q(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),Q(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),Q(`arrow-up-to-line`,[[`path`,{d:`M5 3h14`,key:`7usisc`}],[`path`,{d:`m18 13-6-6-6 6`,key:`1kf1n9`}],[`path`,{d:`M12 7v14`,key:`1akyts`}]]),Q(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Q(`baby`,[[`path`,{d:`M10 16c.5.3 1.2.5 2 .5s1.5-.2 2-.5`,key:`1u7htd`}],[`path`,{d:`M15 12h.01`,key:`1k8ypt`}],[`path`,{d:`M19.38 6.813A9 9 0 0 1 20.8 10.2a2 2 0 0 1 0 3.6 9 9 0 0 1-17.6 0 2 2 0 0 1 0-3.6A9 9 0 0 1 12 3c2 0 3.5 1.1 3.5 2.5s-.9 2.5-2 2.5c-.8 0-1.5-.4-1.5-1`,key:`11xh7x`}],[`path`,{d:`M9 12h.01`,key:`157uk2`}]]);var DI=Q(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),OI=Q(`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`}]]);Q(`battery-full`,[[`path`,{d:`M10 10v4`,key:`1mb2ec`}],[`path`,{d:`M14 10v4`,key:`1nt88p`}],[`path`,{d:`M22 14v-4`,key:`14q9d5`}],[`path`,{d:`M6 10v4`,key:`1n77qd`}],[`rect`,{x:`2`,y:`6`,width:`16`,height:`12`,rx:`2`,key:`13zb55`}]]),Q(`battery-low`,[[`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`}]]);var kI=Q(`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`}]]),AI=Q(`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`}]]);Q(`battery`,[[`path`,{d:`M 22 14 L 22 10`,key:`nqc4tb`}],[`rect`,{x:`2`,y:`6`,width:`16`,height:`12`,rx:`2`,key:`13zb55`}]]),Q(`bell-ring`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`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`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]);var jI=Q(`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`}]]);Q(`bike`,[[`circle`,{cx:`18.5`,cy:`17.5`,r:`3.5`,key:`15x4ox`}],[`circle`,{cx:`5.5`,cy:`17.5`,r:`3.5`,key:`1noe27`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`path`,{d:`M12 17.5V14l-3-3 4-3 2 3h2`,key:`1npguv`}]]),Q(`bird`,[[`path`,{d:`M16 7h.01`,key:`1kdx03`}],[`path`,{d:`M3.4 18H12a8 8 0 0 0 8-8V7a4 4 0 0 0-7.28-2.3L2 20`,key:`oj1oa8`}],[`path`,{d:`m20 7 2 .5-2 .5`,key:`12nv4d`}],[`path`,{d:`M10 18v3`,key:`1yea0a`}],[`path`,{d:`M14 17.75V21`,key:`1pymcb`}],[`path`,{d:`M7 18a6 6 0 0 0 3.84-10.61`,key:`1npnn0`}]]);var MI=Q(`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`}]]),NI=Q(`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`}]]),PI=Q(`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`}]]),FI=Q(`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`}]]);Q(`bug`,[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]),Q(`bus`,[[`path`,{d:`M8 6v6`,key:`18i7km`}],[`path`,{d:`M15 6v6`,key:`1sg6z9`}],[`path`,{d:`M2 12h19.6`,key:`de5uta`}],[`path`,{d:`M18 18h3s.5-1.7.8-2.8c.1-.4.2-.8.2-1.2 0-.4-.1-.8-.2-1.2l-1.4-5C20.1 6.8 19.1 6 18 6H4a2 2 0 0 0-2 2v10h3`,key:`1wwztk`}],[`circle`,{cx:`7`,cy:`18`,r:`2`,key:`19iecd`}],[`path`,{d:`M9 18h5`,key:`lrx6i`}],[`circle`,{cx:`16`,cy:`18`,r:`2`,key:`1v4tcr`}]]);var II=Q(`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`}]]);Q(`car`,[[`path`,{d:`M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2`,key:`5owen`}],[`circle`,{cx:`7`,cy:`17`,r:`2`,key:`u2ysq9`}],[`path`,{d:`M9 17h6`,key:`r8uit2`}],[`circle`,{cx:`17`,cy:`17`,r:`2`,key:`axvx0g`}]]),Q(`cast`,[[`path`,{d:`M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6`,key:`3zrzxg`}],[`path`,{d:`M2 12a9 9 0 0 1 8 8`,key:`g6cvee`}],[`path`,{d:`M2 16a5 5 0 0 1 4 4`,key:`1y1dii`}],[`line`,{x1:`2`,x2:`2.01`,y1:`20`,y2:`20`,key:`xu2jvo`}]]),Q(`cat`,[[`path`,{d:`M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z`,key:`x6xyqk`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M11.25 16.25h1.5L12 17l-.75-.75Z`,key:`12kq1m`}]]);var LI=Q(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),RI=Q(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]);Q(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]);var zI=Q(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),BI=Q(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]);Q(`chevrons-down-up`,[[`path`,{d:`m7 20 5-5 5 5`,key:`13a0gw`}],[`path`,{d:`m7 4 5 5 5-5`,key:`1kwcof`}]]),Q(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Q(`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`}]]),Q(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]);var VI=Q(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),HI=Q(`circle-dot`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}]]);Q(`circle-pause`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`10`,x2:`10`,y1:`15`,y2:`9`,key:`c1nkhi`}],[`line`,{x1:`14`,x2:`14`,y1:`15`,y2:`9`,key:`h65svq`}]]),Q(`circle-plus`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),Q(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Q(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]);var UI=Q(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),WI=Q(`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`}]]),GI=Q(`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`}]]),KI=Q(`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`}]]),qI=Q(`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`}]]),JI=Q(`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`}]]),YI=Q(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]);Q(`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`}]]),Q(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Q(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Q(`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`}]]);var XI=Q(`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`}]]);Q(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),Q(`dog`,[[`path`,{d:`M11.25 16.25h1.5L12 17z`,key:`w7jh35`}],[`path`,{d:`M16 14v.5`,key:`1lajdz`}],[`path`,{d:`M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309`,key:`u7s9ue`}],[`path`,{d:`M8 14v.5`,key:`1nzgdb`}],[`path`,{d:`M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5`,key:`v8hric`}]]);var ZI=Q(`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`}]]),QI=Q(`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`}]]),$I=Q(`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`}]]),eL=Q(`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`}]]),tL=Q(`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`}]]);Q(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),Q(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]);var nL=Q(`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`}]]);Q(`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`}]]);var rL=Q(`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`}]]),iL=Q(`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`}]]);Q(`film`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M7 3v18`,key:`bbkbws`}],[`path`,{d:`M3 7.5h4`,key:`zfgn84`}],[`path`,{d:`M3 12h18`,key:`1i2n21`}],[`path`,{d:`M3 16.5h4`,key:`1230mu`}],[`path`,{d:`M17 3v18`,key:`in4fa5`}],[`path`,{d:`M17 7.5h4`,key:`myr1c1`}],[`path`,{d:`M17 16.5h4`,key:`go4c1d`}]]);var aL=Q(`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`}]]),oL=Q(`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`}]]),sL=Q(`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`}]]),cL=Q(`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`}]]);Q(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),Q(`gamepad-2`,[[`line`,{x1:`6`,x2:`10`,y1:`11`,y2:`11`,key:`1gktln`}],[`line`,{x1:`8`,x2:`8`,y1:`9`,y2:`13`,key:`qnk9ow`}],[`line`,{x1:`15`,x2:`15.01`,y1:`12`,y2:`12`,key:`krot7o`}],[`line`,{x1:`18`,x2:`18.01`,y1:`10`,y2:`10`,key:`1lcuu1`}],[`path`,{d:`M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z`,key:`mfqc10`}]]);var lL=Q(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]);Q(`grip-horizontal`,[[`circle`,{cx:`12`,cy:`9`,r:`1`,key:`124mty`}],[`circle`,{cx:`19`,cy:`9`,r:`1`,key:`1ruzo2`}],[`circle`,{cx:`5`,cy:`9`,r:`1`,key:`1a8b28`}],[`circle`,{cx:`12`,cy:`15`,r:`1`,key:`1e56xg`}],[`circle`,{cx:`19`,cy:`15`,r:`1`,key:`1a92ep`}],[`circle`,{cx:`5`,cy:`15`,r:`1`,key:`5r1jwy`}]]),Q(`hammer`,[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]),Q(`hard-drive`,[[`path`,{d:`M10 16h.01`,key:`1bzywj`}],[`path`,{d:`M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`18tbho`}],[`path`,{d:`M21.946 12.013H2.054`,key:`zqlbp7`}],[`path`,{d:`M6 16h.01`,key:`1pmjb7`}]]);var uL=Q(`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`}]]),dL=Q(`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`}]]),fL=Q(`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`}]]),pL=Q(`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`}]]);Q(`inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),Q(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Q(`laugh`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M18 13a6 6 0 0 1-6 5 6 6 0 0 1-6-5h12Z`,key:`b2q4dd`}],[`line`,{x1:`9`,x2:`9.01`,y1:`9`,y2:`9`,key:`yxxnd0`}],[`line`,{x1:`15`,x2:`15.01`,y1:`9`,y2:`9`,key:`1p4y9e`}]]),Q(`layout-grid`,[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`1g98yp`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`,key:`nxv5o0`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`1bb6yr`}]]);var mL=Q(`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`}]]),hL=Q(`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`}]]),gL=Q(`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`}]]),_L=Q(`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`}]]),vL=Q(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]);Q(`locate-fixed`,[[`line`,{x1:`2`,x2:`5`,y1:`12`,y2:`12`,key:`bvdh0s`}],[`line`,{x1:`19`,x2:`22`,y1:`12`,y2:`12`,key:`1tbv5k`}],[`line`,{x1:`12`,x2:`12`,y1:`2`,y2:`5`,key:`11lu5j`}],[`line`,{x1:`12`,x2:`12`,y1:`19`,y2:`22`,key:`x3vr5v`}],[`circle`,{cx:`12`,cy:`12`,r:`7`,key:`fim9np`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]);var yL=Q(`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`}]]),bL=Q(`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`}]]),xL=Q(`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`}]]),SL=Q(`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`}]]);Q(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]);var CL=Q(`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`}]]);Q(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]);var wL=Q(`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`}]]);Q(`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`}]]),Q(`minimize-2`,[[`path`,{d:`m14 10 7-7`,key:`oa77jy`}],[`path`,{d:`M20 10h-6V4`,key:`mjg0md`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M4 14h6v6`,key:`rmj7iw`}]]),Q(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]);var TL=Q(`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`}]]),EL=Q(`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`}]]),DL=Q(`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`}]]),OL=Q(`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`}]]),kL=Q(`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`}]]);Q(`move`,[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m15 19-3 3-3-3`,key:`11eu04`}],[`path`,{d:`m19 9 3 3-3 3`,key:`1mg7y2`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m5 9-3 3 3 3`,key:`j64kie`}],[`path`,{d:`m9 5 3-3 3 3`,key:`l8vdw6`}]]);var AL=Q(`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`}]]),jL=Q(`navigation`,[[`polygon`,{points:`3 11 22 2 13 21 11 13 3 11`,key:`1ltx0t`}]]),ML=Q(`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`}]]);Q(`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`}]]);var NL=Q(`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`}]]),PL=Q(`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`}]]);Q(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),Q(`phone`,[[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]);var FL=Q(`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`}]]);Q(`plane`,[[`path`,{d:`M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z`,key:`1v9wt8`}]]);var IL=Q(`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`}]]);Q(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Q(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),Q(`power-off`,[[`path`,{d:`M18.36 6.64A9 9 0 0 1 20.77 15`,key:`dxknvb`}],[`path`,{d:`M6.16 6.16a9 9 0 1 0 12.68 12.68`,key:`1x7qb5`}],[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]);var LL=Q(`power`,[[`path`,{d:`M12 2v10`,key:`mnfbl`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`,key:`obofu9`}]]);Q(`qr-code`,[[`rect`,{width:`5`,height:`5`,x:`3`,y:`3`,rx:`1`,key:`1tu5fj`}],[`rect`,{width:`5`,height:`5`,x:`16`,y:`3`,rx:`1`,key:`1v8r4q`}],[`rect`,{width:`5`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`1x03jg`}],[`path`,{d:`M21 16h-3a2 2 0 0 0-2 2v3`,key:`177gqh`}],[`path`,{d:`M21 21v.01`,key:`ents32`}],[`path`,{d:`M12 7v3a2 2 0 0 1-2 2H7`,key:`8crl2c`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M12 3h.01`,key:`n36tog`}],[`path`,{d:`M12 16v.01`,key:`133mhm`}],[`path`,{d:`M16 12h1`,key:`1slzba`}],[`path`,{d:`M21 12v.01`,key:`1lwtk9`}],[`path`,{d:`M12 21v-1`,key:`1880an`}]]);var RL=Q(`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`}]]);Q(`radio`,[[`path`,{d:`M16.247 7.761a6 6 0 0 1 0 8.478`,key:`1fwjs5`}],[`path`,{d:`M19.075 4.933a10 10 0 0 1 0 14.134`,key:`ehdyv1`}],[`path`,{d:`M4.925 19.067a10 10 0 0 1 0-14.134`,key:`1q22gi`}],[`path`,{d:`M7.753 16.239a6 6 0 0 1 0-8.478`,key:`r2q7qm`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]);var zL=Q(`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`}]]),BL=Q(`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`}]]);Q(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),Q(`sailboat`,[[`path`,{d:`M10 2v15`,key:`1qf71f`}],[`path`,{d:`M7 22a4 4 0 0 1-4-4 1 1 0 0 1 1-1h16a1 1 0 0 1 1 1 4 4 0 0 1-4 4z`,key:`1pxcvx`}],[`path`,{d:`M9.159 2.46a1 1 0 0 1 1.521-.193l9.977 8.98A1 1 0 0 1 20 13H4a1 1 0 0 1-.824-1.567z`,key:`5oog16`}]]),Q(`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`}]]),Q(`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 VL=Q(`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`}]]);Q(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Q(`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`}]]),Q(`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`}]]),Q(`share-2`,[[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}],[`circle`,{cx:`6`,cy:`12`,r:`3`,key:`w7nqdw`}],[`circle`,{cx:`18`,cy:`19`,r:`3`,key:`1xt0gg`}],[`line`,{x1:`8.59`,x2:`15.42`,y1:`13.51`,y2:`17.49`,key:`47mynk`}],[`line`,{x1:`15.41`,x2:`8.59`,y1:`6.51`,y2:`10.49`,key:`1n3mei`}]]);var HL=Q(`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`}]]),UL=Q(`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`}]]),WL=Q(`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`}]]),GL=Q(`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`}]]);Q(`ship`,[[`path`,{d:`M12 10.189V14`,key:`1p8cqu`}],[`path`,{d:`M12 2v3`,key:`qbqxhf`}],[`path`,{d:`M19 13V7a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v6`,key:`qpkstq`}],[`path`,{d:`M19.38 20A11.6 11.6 0 0 0 21 14l-8.188-3.639a2 2 0 0 0-1.624 0L3 14a11.6 11.6 0 0 0 2.81 7.76`,key:`7tigtc`}],[`path`,{d:`M2 21c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`1924j5`}]]);var KL=Q(`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`}]]),qL=Q(`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`}]]),JL=Q(`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`}]]),YL=Q(`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`}]]),XL=Q(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),ZL=Q(`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`}]]),QL=Q(`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`}]]),$L=Q(`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`}]]),eR=Q(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]);Q(`star`,[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]);var tR=Q(`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`}]]),nR=Q(`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`}]]),rR=Q(`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`}]]);Q(`table-2`,[[`path`,{d:`M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18`,key:`gugj83`}]]),Q(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]),Q(`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 iR=Q(`thermometer`,[[`path`,{d:`M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z`,key:`17jzev`}]]),aR=Q(`toggle-left`,[[`circle`,{cx:`9`,cy:`12`,r:`3`,key:`u3jwor`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`5`,rx:`7`,key:`g7kal2`}]]);Q(`toggle-right`,[[`circle`,{cx:`15`,cy:`12`,r:`3`,key:`1afu0r`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`5`,rx:`7`,key:`g7kal2`}]]);var oR=Q(`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`}]]);Q(`train-front`,[[`path`,{d:`M8 3.1V7a4 4 0 0 0 8 0V3.1`,key:`1v71zp`}],[`path`,{d:`m9 15-1-1`,key:`1yrq24`}],[`path`,{d:`m15 15 1-1`,key:`1t0d6s`}],[`path`,{d:`M9 19c-2.8 0-5-2.2-5-5v-4a8 8 0 0 1 16 0v4c0 2.8-2.2 5-5 5Z`,key:`1p0hjs`}],[`path`,{d:`m8 19-2 3`,key:`13i0xs`}],[`path`,{d:`m16 19 2 3`,key:`xo31yx`}]]);var sR=Q(`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`}]]);Q(`trending-up`,[[`path`,{d:`M16 7h6v6`,key:`box55l`}],[`path`,{d:`m22 7-8.5 8.5-5-5L2 17`,key:`1t1m79`}]]),Q(`trending-down`,[[`path`,{d:`M16 17h6v-6`,key:`t6n2it`}],[`path`,{d:`m22 17-8.5-8.5-5 5L2 7`,key:`x473p`}]]);var cR=Q(`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`}]]);Q(`truck`,[[`path`,{d:`M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2`,key:`wrbu53`}],[`path`,{d:`M15 18H9`,key:`1lyqi6`}],[`path`,{d:`M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14`,key:`lysw3i`}],[`circle`,{cx:`17`,cy:`18`,r:`2`,key:`332jqn`}],[`circle`,{cx:`7`,cy:`18`,r:`2`,key:`19iecd`}]]);var lR=Q(`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`}]]);Q(`unlink-2`,[[`path`,{d:`M15 7h2a5 5 0 0 1 0 10h-2m-6 0H7A5 5 0 0 1 7 7h2`,key:`1re2ne`}]]),Q(`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`}]]),Q(`user-check`,[[`path`,{d:`m16 11 2 2 4-4`,key:`9rsbq5`}],[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Q(`user`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),Q(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]);var uR=Q(`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`}]]),dR=Q(`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`}]]),fR=Q(`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`}]]),pR=Q(`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`}]]),mR=Q(`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`}]]),hR=Q(`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`}]]),gR=Q(`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`}]]),_R=Q(`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`}]]),vR=Q(`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`}]]);Q(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]);var yR=Q(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),bR=Q(`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`}]]),xR=Q(`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`}]]),SR=Q(`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`}]]),CR=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,wR=IA,TR=(e,t)=>n=>{if(t?.variants==null)return wR(e,n?.class,n?.className);let{variants:r,defaultVariants:a}=t,o=Object.keys(r).map(e=>{let t=n?.[e],o=a?.[e];if(t===null)return null;let s=CR(t)||CR(o);return r[e][s]}),s=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return wR(e,o,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...o}=t;return Object.entries(o).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...a,...s}[t]):{...a,...s}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},ER=TR(`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 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`}}),DR=(0,S.forwardRef)(({className:e,variant:t,size:n,...r},a)=>(0,C.jsx)(`button`,{ref:a,className:Z(ER({variant:t,size:n}),e),...r}));DR.displayName=`Button`;var OR=TR(`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`}}),kR=(0,S.forwardRef)(({className:e,variant:t,size:n,icon:r,...a},o)=>(0,C.jsx)(`button`,{ref:o,className:Z(OR({variant:t,size:n}),e),...a,children:(0,C.jsx)(r,{className:`h-4 w-4`})}));kR.displayName=`IconButton`;var AR=TR(`inline-flex items-center rounded-full text-xs font-medium px-2 py-0.5`,{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`},styleVariant:{solid:``,outline:`border bg-transparent`}},defaultVariants:{variant:`default`,styleVariant:`solid`}}),jR=(0,S.forwardRef)(({className:e,variant:t,style:n,...r},a)=>(0,C.jsx)(`span`,{ref:a,className:Z(AR({variant:t,styleVariant:n}),e),...r}));jR.displayName=`Badge`;var MR=TR(`rounded-lg p-3`,{variants:{variant:{flat:`bg-surface`,bordered:`bg-surface border border-border`}},defaultVariants:{variant:`bordered`}}),NR=(0,S.forwardRef)(({className:e,variant:t,...n},r)=>(0,C.jsx)(`div`,{ref:r,className:Z(MR({variant:t}),e),...n}));NR.displayName=`Card`;var PR=(0,S.forwardRef)(({className:e,...t},n)=>(0,C.jsx)(`label`,{ref:n,className:Z(`text-[10px] uppercase tracking-wider text-foreground-muted font-medium`,e),...t}));PR.displayName=`Label`;var FR=TR(``,{variants:{orientation:{horizontal:`h-px w-full bg-border-subtle`,vertical:`w-px h-full bg-border-subtle`}},defaultVariants:{orientation:`horizontal`}}),IR=(0,S.forwardRef)(({className:e,orientation:t,...n},r)=>(0,C.jsx)(`div`,{ref:r,role:`separator`,className:Z(FR({orientation:t}),e),...n}));IR.displayName=`Separator`;var LR=(0,S.forwardRef)(({className:e,...t},n)=>(0,C.jsx)(`div`,{ref:n,className:Z(`animate-pulse bg-surface-hover rounded-md h-4 w-full`,e),...t}));LR.displayName=`Skeleton`;var RR=TR(`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-primary transition-colors`,{variants:{state:{default:`border-border`,error:`border-danger`}},defaultVariants:{state:`default`}}),zR=(0,S.forwardRef)(({className:e,state:t,leftSlot:n,rightSlot:r,...a},o)=>n||r?(0,C.jsxs)(`div`,{className:`relative flex items-center w-full`,children:[n&&(0,C.jsx)(`div`,{className:`absolute left-2.5 flex items-center pointer-events-none`,children:n}),(0,C.jsx)(`input`,{ref:o,className:Z(RR({state:t}),n?`pl-7`:``,r?`pr-7`:``,e),...a}),r&&(0,C.jsx)(`div`,{className:`absolute right-2.5 flex items-center pointer-events-none`,children:r})]}):(0,C.jsx)(`input`,{ref:o,className:Z(RR({state:t}),e),...a}));zR.displayName=`Input`;var BR=(0,S.forwardRef)(({className:e,options:t,...n},r)=>(0,C.jsxs)(`div`,{className:`relative w-full`,children:[(0,C.jsx)(`select`,{ref:r,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`,e),...n,children:t.map(e=>(0,C.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,C.jsx)(`div`,{className:`absolute right-2 top-1/2 -translate-y-1/2 pointer-events-none text-foreground-muted`,children:(0,C.jsx)(RI,{className:`h-3.5 w-3.5`})})]}));BR.displayName=`Select`;var VR=(0,S.forwardRef)(({className:e,...t},n)=>(0,C.jsx)(`input`,{ref:n,type:`checkbox`,className:Z(`w-3.5 h-3.5 rounded-sm border border-border accent-primary`,e),...t}));VR.displayName=`Checkbox`;var HR=(0,S.forwardRef)(({className:e,checked:t,onCheckedChange:n,label:r,...a},o)=>(0,C.jsxs)(`button`,{ref:o,role:`switch`,"aria-checked":t,type:`button`,onClick:()=>n(!t),className:Z(`inline-flex items-center gap-2`,e),...a,children:[(0,C.jsx)(`span`,{className:Z(`w-8 h-4 rounded-full transition-colors`,t?`bg-primary`:`bg-surface-hover`),children:(0,C.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,C.jsx)(`span`,{className:`text-xs text-foreground`,children:r})]}));HR.displayName=`Switch`;var UR=(0,S.createContext)(null);function WR(){let e=(0,S.useContext)(UR);if(!e)throw Error(`Dialog compound components must be used within <Dialog>`);return e}function GR({children:e,open:t,onOpenChange:n}){let[r,a]=(0,S.useState)(!1),o=t??r,s=(0,S.useId)(),c=(0,S.useCallback)(e=>{n?.(e),t===void 0&&a(e)},[t,n]);return(0,C.jsx)(UR.Provider,{value:{open:o,setOpen:c,contentId:s},children:e})}var KR=TR(`fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 m-0 w-[calc(100vw-2rem)] bg-background-elevated border border-border rounded-lg p-4 backdrop:bg-black/50 backdrop:backdrop-blur-sm max-h-[calc(100dvh-2rem)] overflow-y-auto [&:not([open])]:hidden`,{variants:{width:{sm:`max-w-sm`,md:`max-w-md`,lg:`max-w-lg`},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] 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:max-h-[calc(100dvh-2rem)]`}},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`}],defaultVariants:{width:`md`,placement:`center`}}),qR=(0,S.forwardRef)(({className:e,width:t,placement:n,children:r,...a},o)=>{let{open:s,setOpen:c,contentId:l}=WR(),u=(0,S.useRef)(null),d=o??u;return(0,S.useEffect)(()=>{let e=d.current;e&&(s&&!e.open&&e.showModal(),!s&&e.open&&e.close())},[s,d]),(0,C.jsx)(`dialog`,{ref:d,id:l,className:Z(KR({width:t,placement:n}),e),onClick:e=>{e.target===e.currentTarget&&c(!1)},onClose:()=>c(!1),...a,children:r})});qR.displayName=`DialogContent`;function JR({className:e,...t}){return(0,C.jsx)(`div`,{className:Z(`flex flex-col gap-1 mb-3`,e),...t})}function YR({className:e,...t}){return(0,C.jsx)(`div`,{className:Z(`flex justify-end gap-2 mt-4`,e),...t})}function XR({className:e,...t}){return(0,C.jsx)(`h2`,{className:Z(`text-sm font-semibold text-foreground`,e),...t})}function ZR({className:e,...t}){return(0,C.jsx)(`p`,{className:Z(`text-xs text-foreground-muted`,e),...t})}(0,S.createContext)(null),(0,S.createContext)(null),(0,S.createContext)(null),(0,S.createContext)(null);var QR=(0,S.forwardRef)(({className:e,...t},n)=>(0,C.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}));QR.displayName=`ScrollArea`;var $R=typeof globalThis<`u`?globalThis.__camstackTrpcReact:void 0,$=$R??ak();typeof globalThis<`u`&&!$R&&(globalThis.__camstackTrpcReact=$);var ez=SM(`camstack:system`,null);function tz({system:e,children:t}){return(0,C.jsx)(ez.Provider,{value:e,children:t})}function nz(){let e=(0,S.useContext)(ez);if(!e)throw Error(`useSystem(): no <SystemProvider> in tree`);return e}function rz(e,t){let n=nz(),r=(0,S.useRef)(t);r.current=t;let[a,o]=(0,S.useState)(n.connectionVersion);(0,S.useEffect)(()=>n.subscribeConnectionEvents((e,t)=>{e===`connected`&&o(t)}),[n]),(0,S.useEffect)(()=>n.subscribeEvent(e,e=>{r.current(e)}),[n,e,a])}SM(`camstack:confirm-dialog`,null);var iz=`capability.binding-changed`;function az(e,t){let[n,r]=(0,S.useState)(null);return(0,S.useEffect)(()=>{if(t===null){r(null);return}let n=!1,a=async()=>{try{let a=await e.deviceManager.getBindings.query({deviceId:t});n||r(a)}catch{n||r(e=>e)}};a();let o=e.live?.onEvent.subscribe({category:iz},{onData:e=>{let n=e.data?.source;if(!n){a();return}n.type===`device`&&n.id===t&&a()}});return()=>{n=!0,o?.unsubscribe()}},[e,t]),(0,S.useMemo)(()=>n?zs(e,n):null,[e,n])}function oz(e){let t=(0,S.useCallback)(t=>e?e.subscribe(()=>t()):()=>void 0,[e]),n=(0,S.useCallback)(()=>e?.value,[e]);return(0,S.useSyncExternalStore)(t,n,n)}function sz(e){let t=az(e.trpc,e.deviceId),n=oz(t===null?void 0:e.slice(t)),r=t===null?void 0:e.cap(t),a=oz(t===null?void 0:t.state.deviceStatus),o=a?.online??!0,s=o?null:a?.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&&o,online:o,offlineSince:s}}function cz({value:e,unit:t,onDelta:n}){return(0,C.jsxs)(`div`,{className:`flex h-8 w-full overflow-hidden rounded-lg border border-border bg-surface`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":`Decrement`,className:`w-9 shrink-0 bg-surface-hover text-base text-foreground`,onClick:()=>n(-1),children:`−`}),(0,C.jsxs)(`span`,{className:`flex flex-1 items-center justify-center gap-0.5 border-x border-border/60 text-sm`,children:[e,t?(0,C.jsx)(`span`,{"data-unit":!0,className:`text-[11px] text-foreground-subtle`,children:t}):null]}),(0,C.jsx)(`button`,{type:`button`,"aria-label":`Increment`,className:`w-9 shrink-0 bg-surface-hover text-base text-foreground`,onClick:()=>n(1),children:`+`})]})}function lz({on:e,targetLabel:t,onConfirm:n}){let r=(0,S.useRef)(null),a=(0,S.useRef)(!1);return(0,C.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,C.jsx)(`span`,{className:`text-xs font-semibold opacity-60`,children:t}),(0,C.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,a.current=!1},onPointerMove:e=>{r.current!==null&&Math.abs(e.clientX-r.current)>40&&(a.current=!0)},onPointerUp:()=>{a.current&&n(),a.current=!1,r.current=null},onPointerCancel:()=>{a.current=!1,r.current=null}})]})}var uz=2,dz=270,fz=315;function pz(e){let t=(e-135+360)%360;return t>dz?+(t<=fz):t/dz}function mz({fraction:e,color:t,knobTopPx:n,onDragFraction:r}){let a=-135+e*270,o=(0,S.useRef)(null),[s,c]=(0,S.useState)(!1),l=r!==void 0,u=n??uz,d=e=>{r!==void 0&&(e.preventDefault(),e.stopPropagation(),e.currentTarget.setPointerCapture?.(e.pointerId),c(!0))},f=e=>{if(r===void 0||!s)return;let t=o.current;if(t===null)return;let n=t.getBoundingClientRect(),a=n.left+n.width/2,c=n.top+n.height/2;r(pz(Math.atan2(e.clientY-c,e.clientX-a)*180/Math.PI))},p=e=>{r!==void 0&&(e.currentTarget.releasePointerCapture?.(e.pointerId),c(!1))};return(0,C.jsx)(`div`,{ref:o,className:`absolute inset-0`,style:{transform:`rotate(${a}deg)`},children:(0,C.jsx)(`div`,{className:Z(`absolute left-1/2 h-5 w-5 -translate-x-1/2 rounded-full bg-white shadow`,l&&(s?`cursor-grabbing`:`cursor-grab`)),style:{top:u,border:`3px solid ${t}`},...l?{onPointerDown:d,onPointerMove:f,onPointerUp:p,onPointerCancel:p}:{}})})}function hz({fraction:e,color:t}){return(0,C.jsxs)(`div`,{className:`relative h-2 w-full rounded-full bg-border`,children:[(0,C.jsx)(`div`,{className:`absolute left-0 top-0 h-2 rounded-full`,style:{width:`${e*100}%`,background:t??`var(--color-primary)`}}),(0,C.jsx)(`div`,{className:`absolute -top-1 h-4 w-4 rounded-full bg-white shadow`,style:{left:`calc(${e*100}% - 8px)`}})]})}function gz({trpc:e,deviceId:t}){let n=az(e,t),r=n===null?void 0:n.button;if(r===void 0)return null;let a=()=>{r.press({deviceId:t})};return(0,C.jsxs)(`button`,{type:`button`,"aria-label":`Press`,title:`Press`,onClick:e=>{e.stopPropagation(),a()},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,C.jsx)(DL,{className:`h-3 w-3`}),(0,C.jsx)(`span`,{children:`Press`})]})}function _z({trpc:e,deviceId:t}){let n=az(e,t),r=n===null?void 0:n.button;return r===void 0?null:(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.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,C.jsx)(DL,{className:`h-6 w-6`})}),(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`Press`})]})}var vz=4e3;function yz(e){if(e!==void 0)return typeof e==`object`&&e&&`lastChangedAt`in e&&typeof e.lastChangedAt==`number`?e.lastChangedAt:e}function bz(e,t){let n=t?.enabled!==!1,r=t?.timeoutMs??vz,[a,o]=(0,S.useState)(void 0),s=(0,S.useRef)(void 0),c=(0,S.useRef)(void 0),l=(0,S.useRef)(!1),u=(0,S.useRef)(void 0),d=(0,S.useCallback)(()=>{u.current!==void 0&&(clearTimeout(u.current),u.current=void 0),s.current=void 0,l.current=!1,c.current=void 0,o(void 0)},[]);(0,S.useEffect)(()=>{if(!n||!l.current)return;let t=yz(e),r=c.current;t!==void 0&&t!==r&&d()}),(0,S.useEffect)(()=>()=>{u.current!==void 0&&clearTimeout(u.current)},[]);let f=(0,S.useCallback)(t=>{if(!n)return;u.current!==void 0&&(clearTimeout(u.current),u.current=void 0);let a=s.current??e;if(a!==void 0){let e={...a,...t};s.current=e,o(e)}c.current=yz(e),l.current=!0,u.current=setTimeout(d,r)},[n,e,d,r]);return n?{display:a===void 0?e:a,applyOptimistic:f}:{display:e,applyOptimistic:()=>{}}}function xz(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 Sz(e){switch(e){case`accent`:return`bg-primary text-primary-foreground`;case`filled`:return`bg-primary/15 text-primary`;case`neutral`:return``}}function Cz({label:e,busy:t,variant:n,onClick:r,children:a}){return(0,C.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`,Sz(n),t&&`opacity-40 cursor-not-allowed`),children:a})}function wz({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:a,available:o}=sz({trpc:e,deviceId:t,cap:e=>e.cover,slice:e=>e.state.cover}),{display:s,applyOptimistic:c}=bz(a,{enabled:n??!0});if(r===void 0)return null;let l=xz(s?.state),u=!o,d=(e,t)=>{u||!e||(t!==void 0&&c(t),e({}))};return(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(Cz,{label:`Open`,busy:u,variant:l.up,onClick:()=>d(r?.open,{state:`opening`}),children:(0,C.jsx)(BI,{className:`h-3.5 w-3.5`})}),(0,C.jsx)(Cz,{label:`Stop`,busy:u,variant:l.stop,onClick:()=>d(r?.stop,{state:`stopped`}),children:(0,C.jsx)(eR,{className:`h-3 w-3`})}),(0,C.jsx)(Cz,{label:`Close`,busy:u,variant:l.down,onClick:()=>d(r?.close,{state:`closing`}),children:(0,C.jsx)(RI,{className:`h-3.5 w-3.5`})}),s!==void 0&&s.position!==null&&(0,C.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle ml-1`,children:[s.position,`%`]})]})}function Tz({label:e,busy:t,variant:n,onClick:r,children:a}){return(0,C.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:a})}function Ez(){return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-y-0 left-1/2 w-px -translate-x-px bg-white/60`}),(0,C.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-x-0 top-1/2 h-px -translate-y-px bg-white/60`})]})}function Dz({position:e,interactive:t,onSetPosition:n}){let r=(1-e/100)*100,a=(0,S.useRef)(null),o=(0,S.useRef)(!1),s=(0,S.useRef)(null),c=t=>{let n=a.current;if(n===null)return e;let r=n.getBoundingClientRect();if(r.height<=0)return e;let o=(t-r.top)/r.height,s=Math.round(100-o*100);return Math.min(100,Math.max(0,s))},l=e=>{if(n===void 0)return;let t=c(e);s.current!==t&&(s.current=t,n(t))},u=e=>{t&&(e.stopPropagation(),e.preventDefault(),o.current=!0,s.current=null,e.currentTarget.setPointerCapture(e.pointerId),l(e.clientY))},d=e=>{!t||!o.current||(e.stopPropagation(),l(e.clientY))},f=e=>{!t||!o.current||(e.stopPropagation(),o.current=!1,s.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId))};return(0,C.jsxs)(`div`,{ref:a,"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?u:void 0,onPointerMove:t?d: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,C.jsx)(Ez,{}),(0,C.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,C.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,C.jsx)(`div`,{className:`absolute -inset-x-1.5 h-full rounded-lg bg-slate-600 shadow-md`}),(0,C.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,C.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,C.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,C.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 Oz({isOpen:e}){return(0,C.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,C.jsx)(Ez,{}),!e&&(0,C.jsx)(`div`,{className:`absolute inset-0`,style:{background:`repeating-linear-gradient(#c9cdd2, #c9cdd2 6px, #b7bcc2 6px, #b7bcc2 8px)`}})]})}function kz({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.cover,slice:e=>e.state.cover}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0)return null;let u=!s,d=(n??[]).includes(js.CoverPositionable),f=(n??[]).includes(js.CoverTilt),p=xz(c?.state),m=c?.position??null,h=m!==null,g=c?.state===`open`||c?.state===`opening`,_=(e,t)=>{u||!e||(t!==void 0&&l(t),e({}))},v=e=>{u||(l({position:e}),a?.setPosition({position:e}))};return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-6`,children:[h?(0,C.jsx)(Dz,{position:m,interactive:d,onSetPosition:d?v:void 0}):(0,C.jsx)(Oz,{isOpen:g}),(0,C.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[h&&(0,C.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,C.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:m}),(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`%`}),(0,C.jsx)(`span`,{className:`text-xs text-foreground-subtle ml-1`,children:`open`})]}),!h&&(0,C.jsx)(`div`,{className:`flex items-baseline gap-1`,children:(0,C.jsx)(`span`,{className:`text-3xl font-semibold capitalize text-foreground`,children:c?.state??`—`})}),(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsx)(Tz,{label:`Open`,busy:u,variant:p.up,onClick:()=>_(a?.open,{state:`opening`}),children:(0,C.jsx)(BI,{className:`h-5 w-5`})}),(0,C.jsx)(Tz,{label:`Stop`,busy:u,variant:p.stop,onClick:()=>_(a?.stop,{state:`stopped`}),children:(0,C.jsx)(eR,{className:`h-4 w-4`})}),(0,C.jsx)(Tz,{label:`Close`,busy:u,variant:p.down,onClick:()=>_(a?.close,{state:`closing`}),children:(0,C.jsx)(RI,{className:`h-5 w-5`})})]})]})]}),d&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,C.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:m??0,disabled:u,className:`flex-1`,onChange:e=>{v(Number(e.target.value))}}),(0,C.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[m??`—`,`%`]})]}),!d&&m!==null&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,C.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:m,disabled:!0,readOnly:!0,className:`flex-1 opacity-60`}),(0,C.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[m,`%`]})]}),f&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{className:`w-12 shrink-0`,children:`Tilt`}),(0,C.jsx)(`input`,{"aria-label":`Tilt position`,type:`range`,min:0,max:100,step:1,value:c?.tiltPosition??0,disabled:u,className:`flex-1`,onChange:e=>{let t=Number(e.target.value);l({tiltPosition:t}),u||a?.setTiltPosition({tiltPosition:t})}}),(0,C.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[c?.tiltPosition??`—`,`%`]})]})]})}function Az(e){return(0,C.jsx)(`span`,{className:`text-foreground-subtle text-xs select-none`,"aria-hidden":`true`,children:`—`})}function jz(e){return(0,C.jsx)(`div`,{className:`rounded border border-border bg-surface-subtle px-3 py-2 text-xs text-foreground-subtle`,children:`Controls coming soon`})}$.accessories.setChildHidden.useMutation,$.accessories.getStatus.useQuery,$.addonPages.listPages.useQuery,$.addons.list.useQuery,$.addons.getLogs.useQuery,$.addons.listPackages.useQuery,$.addons.installPackage.useMutation,$.addons.installFromWorkspace.useMutation,$.addons.isWorkspaceAvailable.useQuery,$.addons.listWorkspacePackages.useQuery,$.addons.uninstallPackage.useMutation,$.addons.reloadPackages.useMutation,$.addons.searchAvailable.useQuery,$.addons.listUpdates.useQuery,$.addons.updatePackage.useMutation,$.addons.rollbackPackage.useMutation,$.addons.forceRefresh.useMutation,$.addons.restartServer.useMutation,$.addons.getLastRestart.useQuery,$.addons.listFrameworkPackages.useQuery,$.addons.listCapabilityProviders.useQuery,$.addons.setCapabilityProviderEnabled.useMutation,$.addons.getVersions.useQuery,$.addons.restartAddon.useMutation,$.addons.retryLoad.useMutation,$.addons.getAutoUpdateSettings.useQuery,$.addons.setAutoUpdateSettings.useMutation,$.addons.getAddonAutoUpdate.useQuery,$.addons.setAddonAutoUpdate.useMutation,$.addons.applyAutoUpdateToAll.useMutation,$.addons.custom.useMutation,$.addons.startJob.useMutation,$.addons.getJob.useQuery,$.addons.listJobs.useQuery,$.addons.cancelJob.useMutation,$.addons.onAddonLogs.useSubscription,$.addonSettings.getGlobalSettings.useQuery,$.addonSettings.updateGlobalSettings.useMutation,$.addonSettings.getDeviceSettings.useQuery,$.addonSettings.updateDeviceSettings.useMutation,$.addonWidgets.listWidgets.useQuery,$.airQualitySensor.getStatus.useQuery,$.alarmPanel.arm.useMutation,$.alarmPanel.disarm.useMutation,$.alarmPanel.trigger.useMutation,$.alarmPanel.getStatus.useQuery,$.alerts.emit.useMutation,$.alerts.update.useMutation,$.alerts.list.useQuery,$.alerts.getUnreadCount.useQuery,$.alerts.markRead.useMutation,$.alerts.markAllRead.useMutation,$.alerts.dismiss.useMutation,$.ambientLightSensor.getStatus.useQuery,$.audioAnalysis.resolveDeviceSettings.useQuery,$.audioAnalysis.getDeviceSettingsContribution.useQuery,$.audioAnalysis.getDeviceLiveContribution.useQuery,$.audioAnalysis.applyDeviceSettingsPatch.useMutation,$.audioAnalyzer.analyseChunk.useMutation,$.audioAnalyzer.classify.useQuery,$.audioAnalyzer.isReady.useQuery,$.audioAnalyzer.dispose.useMutation,$.audioAnalyzer.reprobeAudioEngine.useMutation,$.audioCodec.listSupportedCodecs.useQuery,$.audioCodec.canHandle.useQuery,$.audioCodec.createDecodeSession.useMutation,$.audioCodec.createEncodeSession.useMutation,$.audioCodec.closeSession.useMutation,$.audioCodec.pushEncodedFrame.useMutation,$.audioCodec.pullPcm.useQuery,$.audioCodec.pushPcm.useMutation,$.audioCodec.pullEncoded.useQuery,$.audioCodec.flushEncode.useMutation,$.audioCodec.listActiveSessions.useQuery,$.audioMetrics.getCurrentSnapshot.useQuery,$.audioMetrics.getHistory.useQuery,$.automationControl.enable.useMutation,$.automationControl.disable.useMutation,$.automationControl.trigger.useMutation,$.automationControl.getStatus.useQuery,$.backup.listDestinations.useQuery,$.backup.trigger.useMutation,$.backup.list.useQuery,$.backup.listLocations.useQuery,$.backup.getEntries.useQuery,$.backup.restore.useMutation,$.backup.delete.useMutation,$.backup.listArchives.useQuery,$.backup.upsertDestinationPolicy.useMutation,$.backup.previewSchedule.useQuery,$.battery.wakeForStream.useMutation,$.battery.getStatus.useQuery,$.binary.getStatus.useQuery,$.brightness.setBrightness.useMutation,$.brightness.getStatus.useQuery,$.broker.list.useQuery,$.broker.get.useQuery,$.broker.listProviders.useQuery,$.broker.add.useMutation,$.broker.remove.useMutation,$.broker.testConnection.useMutation,$.broker.getSettings.useQuery,$.broker.setSettings.useMutation,$.broker.getBrokerConfig.useQuery,$.broker.getSettingsSchema.useQuery,$.broker.testSettings.useMutation,$.broker.publish.useMutation,$.broker.subscribe.useMutation,$.broker.unsubscribe.useMutation,$.broker.getState.useQuery,$.broker.getStatus.useQuery,$.button.press.useMutation,$.cameraCredentials.getCredentials.useQuery,$.cameraCredentials.getStatus.useQuery,$.cameraPipelineConfig.getDeviceSettingsContribution.useQuery,$.cameraPipelineConfig.getDeviceLiveContribution.useQuery,$.cameraPipelineConfig.applyDeviceSettingsPatch.useMutation,$.cameraStreams.getCameraStreams.useQuery,$.cameraStreams.getBrokerStreams.useQuery,$.cameraStreams.getRtspEntries.useQuery,$.cameraStreams.getProfileRtspEntries.useQuery,$.cameraStreams.pickStream.useQuery,$.carbonMonoxide.getStatus.useQuery,$.climateControl.setMode.useMutation,$.climateControl.setFanMode.useMutation,$.climateControl.setPreset.useMutation,$.climateControl.setTarget.useMutation,$.climateControl.setTargetRange.useMutation,$.climateControl.setTargetHumidity.useMutation,$.climateControl.setSwingVertical.useMutation,$.climateControl.setSwingHorizontal.useMutation,$.climateControl.getStatus.useQuery,$.color.setColor.useMutation,$.color.getStatus.useQuery,$.connectivity.getStatus.useQuery,$.consumables.reset.useMutation,$.consumables.getStatus.useQuery,$.contact.getStatus.useQuery,$.control.setValue.useMutation,$.control.getStatus.useQuery,$.cover.open.useMutation,$.cover.close.useMutation,$.cover.stop.useMutation,$.cover.setPosition.useMutation,$.cover.setTiltPosition.useMutation,$.cover.getStatus.useQuery,$.dayNight.getOptions.useQuery,$.dayNight.setSettings.useMutation,$.dayNight.getStatus.useQuery,$.decoder.supportsCodec.useQuery,$.decoder.getInfo.useQuery,$.decoder.createSession.useQuery,$.decoder.destroySession.useQuery,$.decoder.pushPacket.useQuery,$.decoder.openStream.useQuery,$.decoder.pullFrames.useQuery,$.decoder.pullHandles.useQuery,$.decoder.getFrame.useQuery,$.decoder.getShmStats.useQuery,$.decoder.updateConfig.useQuery,$.decoder.getStats.useQuery,$.decoder.listActiveSessions.useQuery,$.decoder.reprobeHwaccel.useMutation,$.detectionPipeline.getDeviceSettingsContribution.useQuery,$.detectionPipeline.getDeviceLiveContribution.useQuery,$.detectionPipeline.applyDeviceSettingsPatch.useMutation,$.deviceAdoption.listCandidateFilters.useQuery,$.deviceAdoption.listCandidates.useQuery,$.deviceAdoption.getCandidate.useQuery,$.deviceAdoption.refresh.useMutation,$.deviceAdoption.adopt.useMutation,$.deviceAdoption.release.useMutation,$.deviceAdoption.resync.useMutation,$.deviceAdoption.getStatus.useQuery,$.deviceDiscovery.listDiscovered.useQuery,$.deviceDiscovery.refreshDiscovery.useMutation,$.deviceDiscovery.adoptDevice.useMutation,$.deviceDiscovery.releaseDevice.useMutation,$.deviceDiscovery.getStatus.useQuery,$.deviceExport.getStatus.useQuery,$.deviceExport.listSupportedDeviceKinds.useQuery,$.deviceExport.listExposedDevices.useQuery,$.deviceExport.exposeDevice.useMutation,$.deviceExport.unexposeDevice.useMutation,$.deviceExport.getDeviceSettingsContribution.useQuery,$.deviceExport.getDeviceLiveContribution.useQuery,$.deviceExport.applyDeviceSettingsPatch.useMutation,$.deviceManager.allocateDeviceId.useMutation,$.deviceManager.registerDevice.useMutation,$.deviceManager.removeDevice.useMutation,$.deviceManager.persistConfig.useMutation,$.deviceManager.loadConfig.useQuery,$.deviceManager.loadRuntimeState.useQuery,$.deviceManager.loadMeta.useQuery,$.deviceManager.setName.useMutation,$.deviceManager.setLocation.useMutation,$.deviceManager.setType.useMutation,$.deviceManager.setIntegrationId.useMutation,$.deviceManager.setLinkDeviceId.useMutation,$.deviceManager.setPrimaryChildEntityId.useMutation,$.deviceManager.setChildLayout.useMutation,$.deviceManager.setDeviceLinks.useMutation,$.deviceManager.setDisplay.useMutation;var Mz=$.deviceManager.getRoleDisplayDefaults.useQuery;$.deviceManager.setRoleDisplayDefaults.useMutation,$.deviceManager.getWireableFields.useQuery,$.deviceManager.setRole.useMutation,$.deviceManager.applyInitialMeta.useMutation,$.deviceManager.setMetadata.useMutation,$.deviceManager.listLocations.useQuery,$.deviceManager.addLocation.useMutation,$.deviceManager.removeLocation.useMutation,$.deviceManager.setDisabled.useMutation,$.deviceManager.listPersistedByAddon.useQuery,$.deviceManager.listAll.useQuery;var Nz=$.deviceManager.getDevice.useQuery;$.deviceManager.getChildren.useQuery,$.deviceManager.getLinkedDevices.useQuery,$.deviceManager.getStreamSources.useQuery,$.deviceManager.getConfigSchema.useQuery,$.deviceManager.getSettingsSchema.useQuery,$.deviceManager.updateConfig.useMutation,$.deviceManager.enable.useMutation,$.deviceManager.disable.useMutation,$.deviceManager.remove.useMutation,$.deviceManager.removeByIntegration.useMutation,$.deviceManager.getStreamProfileMap.useQuery,$.deviceManager.setStreamProfileMap.useMutation,$.deviceManager.probeStreams.useMutation,$.deviceManager.getBindings.useQuery,$.deviceManager.getAllBindings.useQuery,$.deviceManager.setWrapperActive.useMutation,$.deviceManager.listWrappersForCap.useQuery,$.deviceManager.listBindableCapsForDeviceType.useQuery,$.deviceManager.getDeviceSettingsAggregate.useQuery,$.deviceManager.getDeviceLiveInfoAggregate.useQuery,$.deviceManager.getDeviceAggregate.useQuery,$.deviceManager.runDeviceAction.useMutation,$.deviceManager.updateDeviceField.useMutation,$.deviceManager.updateDeviceFieldsBatch.useMutation,$.deviceManager.discoverDevices.useMutation,$.deviceManager.adoptDevice.useMutation,$.deviceManager.getCreationSchema.useQuery,$.deviceManager.createDevice.useMutation,$.deviceManager.testCreationField.useMutation,$.deviceManager.adoptionListCandidateFilters.useQuery,$.deviceManager.adoptionListCandidates.useQuery,$.deviceManager.adoptionRefresh.useMutation,$.deviceManager.adoptionAdopt.useMutation,$.deviceManager.adoptionRelease.useMutation,$.deviceManager.adoptionResync.useMutation,$.deviceManager.discoveryProviders.useQuery,$.deviceManager.discoverAllProviders.useMutation,$.deviceManager.discoverProvider.useMutation,$.deviceManager.providerCreationType.useQuery,$.deviceManager.providerDiscoveryParamsSchema.useQuery,$.deviceManager.testField.useMutation,$.deviceManager.getDeviceStatusAggregate.useQuery,$.deviceManager.getDeviceSettingsContribution.useQuery,$.deviceManager.getDeviceLiveContribution.useQuery,$.deviceManager.applyDeviceSettingsPatch.useMutation,$.deviceOps.getStreamSources.useQuery,$.deviceOps.getConfigEntries.useQuery,$.deviceOps.setConfig.useMutation,$.deviceOps.runAction.useMutation,$.deviceOps.removeDevice.useMutation,$.deviceOps.getSettingsSchema.useQuery,$.deviceOps.getRawState.useQuery,$.deviceProvider.start.useMutation,$.deviceProvider.stop.useMutation,$.deviceProvider.getStatus.useQuery,$.deviceProvider.getDevices.useQuery,$.deviceProvider.supportsDiscovery.useQuery,$.deviceProvider.discoverDevices.useMutation,$.deviceProvider.getDiscoveryParamsSchema.useQuery,$.deviceProvider.getManualCreationType.useQuery,$.deviceProvider.adoptDiscoveredDevice.useMutation,$.deviceProvider.supportsManualCreation.useQuery,$.deviceProvider.getChildCreationSchema.useQuery,$.deviceProvider.createDevice.useMutation,$.deviceProvider.testCreationField.useMutation,$.deviceState.getSnapshot.useQuery,$.deviceState.getCapSlice.useQuery,$.deviceState.getAllSnapshots.useQuery,$.deviceState.setCapSlice.useMutation,$.deviceStatus.getStatus.useQuery,$.doorbell.getStatus.useQuery,$.doorbell.getDeviceSettingsContribution.useQuery,$.doorbell.getDeviceLiveContribution.useQuery,$.doorbell.applyDeviceSettingsPatch.useMutation,$.enumSensor.getStatus.useQuery,$.eventEmitter.getStatus.useQuery,$.events.getEvents.useQuery,$.events.getEventThumbnail.useQuery,$.events.getEventClipUrl.useQuery,$.faceGallery.listIdentities.useQuery,$.faceGallery.createIdentity.useMutation,$.faceGallery.renameIdentity.useMutation,$.faceGallery.deleteIdentity.useMutation,$.faceGallery.listIdentitySamples.useQuery,$.faceGallery.removeSample.useMutation,$.faceGallery.listRecentFaces.useQuery,$.faceGallery.getFaceByTrack.useQuery,$.faceGallery.getFaceMedia.useQuery,$.faceGallery.assignFace.useMutation,$.faceGallery.unassignFace.useMutation,$.faceGallery.deleteFace.useMutation,$.faceGallery.assignFaces.useMutation,$.faceGallery.unassignFaces.useMutation,$.faceGallery.suggestFaceClusters.useQuery,$.fanControl.setPercentage.useMutation,$.fanControl.setPreset.useMutation,$.fanControl.setDirection.useMutation,$.fanControl.setOscillating.useMutation,$.fanControl.getStatus.useQuery,$.featureProbe.getStatus.useQuery,$.flood.getStatus.useQuery,$.gas.getStatus.useQuery,$.humidifier.setOn.useMutation,$.humidifier.setTargetHumidity.useMutation,$.humidifier.setMode.useMutation,$.humidifier.getStatus.useQuery,$.humiditySensor.getStatus.useQuery,$.image.getStatus.useQuery,$.imageSettings.getOptions.useQuery,$.imageSettings.setSettings.useMutation,$.imageSettings.getStatus.useQuery,$.integrations.list.useQuery,$.integrations.get.useQuery,$.integrations.getByAddonId.useQuery,$.integrations.create.useMutation,$.integrations.update.useMutation,$.integrations.delete.useMutation,$.integrations.getSettings.useQuery,$.integrations.setSettings.useMutation,$.integrations.getAvailableTypes.useQuery,$.integrations.testConnection.useMutation;var Pz=$.intercom.startSession.useMutation,Fz=$.intercom.handleAnswer.useMutation,Iz=$.intercom.stopSession.useMutation;$.intercom.startTalkSession.useMutation,$.intercom.pushTalkAudio.useMutation,$.intercom.endTalkSession.useMutation,$.intercom.getStatus.useQuery,$.lawnMowerControl.startMowing.useMutation,$.lawnMowerControl.pause.useMutation,$.lawnMowerControl.dock.useMutation,$.lawnMowerControl.getStatus.useQuery,$.llm.generate.useMutation,$.llm.generateVision.useMutation,$.llm.listProfileKinds.useQuery,$.llm.listProfiles.useQuery,$.llm.upsertProfile.useMutation,$.llm.deleteProfile.useMutation,$.llm.testProfile.useMutation,$.llm.listModels.useQuery,$.llm.getDefaults.useQuery,$.llm.setDefault.useMutation,$.llm.getUsage.useQuery,$.llm.listModelCatalog.useQuery,$.llm.listRuntimeNodes.useQuery,$.llm.listNodeModels.useQuery,$.llm.installModel.useMutation,$.llm.deleteModel.useMutation,$.llm.getRuntimeStatus.useQuery,$.llm.startRuntime.useMutation,$.llm.stopRuntime.useMutation,$.localNetwork.list.useQuery,$.localNetwork.getPreferred.useQuery,$.localNetwork.getConnectionEndpoints.useQuery,$.localNetwork.getAllowedAddresses.useQuery,$.localNetwork.setAllowedAddresses.useMutation,$.localNetwork.resetAllowlistToBestMatch.useMutation,$.lockControl.lock.useMutation,$.lockControl.unlock.useMutation,$.lockControl.open.useMutation,$.lockControl.getStatus.useQuery,$.mediaPlayer.play.useMutation,$.mediaPlayer.pause.useMutation,$.mediaPlayer.stop.useMutation,$.mediaPlayer.next.useMutation,$.mediaPlayer.previous.useMutation,$.mediaPlayer.seek.useMutation,$.mediaPlayer.setVolume.useMutation,$.mediaPlayer.setMute.useMutation,$.mediaPlayer.setShuffle.useMutation,$.mediaPlayer.setRepeat.useMutation,$.mediaPlayer.selectSource.useMutation,$.mediaPlayer.playMedia.useMutation,$.mediaPlayer.getStatus.useQuery,$.meshNetwork.getStatus.useQuery,$.meshNetwork.join.useMutation,$.meshNetwork.startLogin.useMutation,$.meshNetwork.leave.useMutation,$.meshNetwork.logout.useMutation,$.meshNetwork.listPeers.useQuery,$.meshNetwork.testConnection.useMutation,$.metricsProvider.collectSnapshot.useQuery,$.metricsProvider.getCached.useQuery,$.metricsProvider.getCurrent.useQuery,$.metricsProvider.getDiskSpace.useQuery,$.metricsProvider.getGpuInfo.useQuery,$.metricsProvider.getCpuTemperature.useQuery,$.metricsProvider.getProcessStats.useQuery,$.metricsProvider.listAddonInstances.useQuery,$.metricsProvider.getAddonStats.useQuery,$.metricsProvider.listNodeProcesses.useQuery,$.metricsProvider.killProcess.useMutation,$.metricsProvider.dumpHeapSnapshot.useMutation,$.motion.isDetected.useQuery,$.motion.getStatus.useQuery,$.motionDetection.analyze.useMutation,$.motionDetection.removeCamera.useMutation,$.motionDetection.reset.useMutation,$.motionDetection.getDeviceSettingsContribution.useQuery,$.motionDetection.getDeviceLiveContribution.useQuery,$.motionDetection.applyDeviceSettingsPatch.useMutation,$.motionTrigger.setMotionTrigger.useMutation,$.motionTrigger.getStatus.useQuery,$.motionZones.getOptions.useQuery,$.motionZones.setZone.useMutation,$.motionZones.getStatus.useQuery,$.mqttBroker.listBrokers.useQuery,$.mqttBroker.getBrokerConfig.useQuery,$.mqttBroker.addBroker.useMutation,$.mqttBroker.removeBroker.useMutation,$.mqttBroker.testConnection.useMutation,$.mqttBroker.startEmbeddedBroker.useMutation,$.mqttBroker.stopEmbeddedBroker.useMutation,$.mqttBroker.getStatus.useQuery,$.nativeObjectDetection.setEnabled.useMutation,$.nativeObjectDetection.getStatus.useQuery,$.networkAccess.start.useMutation,$.networkAccess.stop.useMutation,$.networkAccess.getEndpoint.useQuery,$.networkAccess.getStatus.useQuery,$.networkAccess.listEndpoints.useQuery,$.networkQuality.getDeviceStats.useQuery,$.networkQuality.getAllStats.useQuery,$.networkQuality.reportClientStats.useMutation,$.nodes.topology.useQuery,$.nodes.deployAddon.useMutation,$.nodes.undeployAddon.useMutation,$.nodes.restartAddon.useMutation,$.nodes.restartProcess.useMutation,$.nodes.restartNode.useMutation,$.nodes.shutdownNode.useMutation,$.nodes.renameNode.useMutation,$.nodes.clusterAddonStatus.useQuery,$.nodes.getCapUsageGraph.useQuery,$.nodes.getNodeAddons.useQuery,$.nodes.setProcessLogLevel.useMutation,$.nodes.executeQuery.useMutation,$.notificationOutput.listTargetKinds.useQuery,$.notificationOutput.listTargets.useQuery,$.notificationOutput.discoverTargets.useQuery,$.notificationOutput.send.useMutation,$.notificationOutput.testTarget.useMutation,$.notificationOutput.upsertTarget.useMutation,$.notificationOutput.deleteTarget.useMutation,$.notificationOutput.setTargetEnabled.useMutation,$.notifier.send.useMutation,$.notifier.cancel.useMutation,$.notifier.getStatus.useQuery,$.numericSensor.getStatus.useQuery,$.osd.setOverlay.useMutation,$.osd.getStatus.useQuery,$.petFeeder.feed.useMutation,$.petFeeder.cancelFeed.useMutation,$.petFeeder.resetDesiccant.useMutation,$.petFeeder.markFoodReplenished.useMutation,$.petFeeder.callPet.useMutation,$.petFeeder.playSound.useMutation,$.petFeeder.setChildLock.useMutation,$.petFeeder.setIndicatorLight.useMutation,$.petFeeder.setFeedSound.useMutation,$.petFeeder.setVolume.useMutation,$.petFeeder.getStatus.useQuery,$.pipelineAnalytics.getActiveTracks.useQuery,$.pipelineAnalytics.getTrack.useQuery,$.pipelineAnalytics.listTracks.useQuery,$.pipelineAnalytics.listRecentTracks.useQuery,$.pipelineAnalytics.clearTracks.useMutation,$.pipelineAnalytics.getMotionEvents.useQuery,$.pipelineAnalytics.getObjectEvents.useQuery,$.pipelineAnalytics.getAudioEvents.useQuery,$.pipelineAnalytics.listEventKinds.useQuery,$.pipelineAnalytics.getSensorEvents.useQuery,$.pipelineAnalytics.getKeyEvents.useQuery,$.pipelineAnalytics.getEventDensity.useQuery,$.pipelineAnalytics.pruneEventsBefore.useMutation,$.pipelineAnalytics.pruneTracksBefore.useMutation,$.pipelineAnalytics.wipeAllAnalytics.useMutation,$.pipelineAnalytics.deleteTracks.useMutation,$.pipelineAnalytics.getEventStoreFootprint.useQuery,$.pipelineAnalytics.pruneEvents.useMutation,$.pipelineAnalytics.deleteDeviceEvents.useMutation,$.pipelineAnalytics.listOpsLog.useQuery,$.pipelineAnalytics.getEventMedia.useQuery,$.pipelineAnalytics.getTrackMedia.useQuery,$.pipelineAnalytics.searchObjectEvents.useQuery,$.pipelineAnalytics.getDeviceSettingsContribution.useQuery,$.pipelineAnalytics.getDeviceLiveContribution.useQuery,$.pipelineAnalytics.applyDeviceSettingsPatch.useMutation,$.pipelineExecutor.getAvailableEngines.useQuery,$.pipelineExecutor.getSelectedEngine.useQuery,$.pipelineExecutor.getDefaultSteps.useQuery,$.pipelineExecutor.getEngineProvisioning.useQuery,$.pipelineExecutor.getVideoPipelineSteps.useQuery,$.pipelineExecutor.setVideoPipelineSteps.useMutation,$.pipelineExecutor.clearDeviceOverrides.useMutation,$.pipelineExecutor.getSchema.useQuery,$.pipelineExecutor.getGlobalSteps.useQuery,$.pipelineExecutor.getGlobalPipelineConfig.useQuery,$.pipelineExecutor.getOrchestratorConfigSchema.useQuery,$.pipelineExecutor.validatePipeline.useQuery,$.pipelineExecutor.listTemplates.useQuery,$.pipelineExecutor.saveTemplate.useMutation,$.pipelineExecutor.updateTemplate.useMutation,$.pipelineExecutor.deleteTemplate.useMutation,$.pipelineExecutor.getCapabilities.useQuery,$.pipelineExecutor.getAddonModels.useQuery,$.pipelineExecutor.downloadModel.useMutation,$.pipelineExecutor.deleteModel.useMutation,$.pipelineExecutor.runPipeline.useMutation,$.pipelineExecutor.runPipelineBatch.useMutation,$.pipelineExecutor.cacheFrameInPool.useMutation,$.pipelineExecutor.inferCached.useMutation,$.pipelineExecutor.uncacheFrame.useMutation,$.pipelineExecutor.getEffectiveTuning.useQuery,$.pipelineExecutor.listLoadedEngines.useQuery,$.pipelineExecutor.spinEngine.useMutation,$.pipelineExecutor.killEngine.useMutation,$.pipelineExecutor.listReferenceImages.useQuery,$.pipelineExecutor.getReferenceImage.useQuery,$.pipelineExecutor.getReferenceAudioFiles.useQuery,$.pipelineExecutor.getReferenceAudio.useQuery,$.pipelineExecutor.getAudioCapabilities.useQuery,$.pipelineExecutor.runAudioTest.useMutation,$.pipelineExecutor.getDetectionConfigSchema.useQuery,$.pipelineOrchestrator.assignPipeline.useMutation,$.pipelineOrchestrator.unassignPipeline.useMutation,$.pipelineOrchestrator.setPipelineDevicePin.useMutation,$.pipelineOrchestrator.getPipelineDevicePin.useQuery,$.pipelineOrchestrator.rebalance.useMutation,$.pipelineOrchestrator.getPipelineAssignments.useQuery,$.pipelineOrchestrator.getPipelineAssignment.useQuery,$.pipelineOrchestrator.getAgentLoad.useQuery,$.pipelineOrchestrator.getGlobalMetrics.useQuery,$.pipelineOrchestrator.getCameraMetrics.useQuery,$.pipelineOrchestrator.getCapabilityBindings.useQuery,$.pipelineOrchestrator.setCapabilityBinding.useMutation,$.pipelineOrchestrator.getIngestOwner.useQuery,$.pipelineOrchestrator.assignAudio.useMutation,$.pipelineOrchestrator.unassignAudio.useMutation,$.pipelineOrchestrator.getAudioAssignment.useQuery,$.pipelineOrchestrator.getAudioNodeLoad.useQuery,$.pipelineOrchestrator.getAudioAssignments.useQuery,$.pipelineOrchestrator.getAgentSettings.useQuery,$.pipelineOrchestrator.listAgentSettings.useQuery,$.pipelineOrchestrator.removeAgentSettings.useMutation,$.pipelineOrchestrator.setAgentMaxCameras.useMutation,$.pipelineOrchestrator.setAgentDetectWeight.useMutation,$.pipelineOrchestrator.setAgentCapabilities.useMutation,$.pipelineOrchestrator.setAgentReachableHost.useMutation,$.pipelineOrchestrator.setAgentInferenceDevices.useMutation,$.pipelineOrchestrator.getNodeInferenceDevices.useQuery,$.pipelineOrchestrator.resetNodePipelineDefaults.useMutation,$.pipelineOrchestrator.getCameraSettings.useQuery,$.pipelineOrchestrator.setCameraStepToggle.useMutation,$.pipelineOrchestrator.getCameraStepOverrides.useQuery,$.pipelineOrchestrator.setCameraStepOverride.useMutation,$.pipelineOrchestrator.setCameraPipelineForAgent.useMutation,$.pipelineOrchestrator.resolvePipeline.useQuery,$.pipelineOrchestrator.getCameraStatus.useQuery,$.pipelineOrchestrator.getCameraStatuses.useQuery,$.pipelineOrchestrator.listTemplates.useQuery,$.pipelineOrchestrator.saveTemplate.useMutation,$.pipelineOrchestrator.updateTemplate.useMutation,$.pipelineOrchestrator.deleteTemplate.useMutation,$.pipelineOrchestrator.getDeviceSettingsContribution.useQuery,$.pipelineOrchestrator.getDeviceLiveContribution.useQuery,$.pipelineOrchestrator.applyDeviceSettingsPatch.useMutation,$.pipelineRunner.attachCamera.useMutation,$.pipelineRunner.detachCamera.useMutation,$.pipelineRunner.reportMotion.useMutation,$.pipelineRunner.getLocalLoad.useQuery,$.pipelineRunner.getLocalMetrics.useQuery,$.pipelineRunner.getCameraMetrics.useQuery,$.pipelineRunner.getAllCameraMetrics.useQuery,$.pipelineRunner.getLocalCameras.useQuery,$.pipelineRunner.getNativeCrop.useQuery,$.pipelineRunner.runDetailSubtree.useMutation,$.plateGallery.listPlates.useQuery,$.plateGallery.getPlateByTrack.useQuery,$.plateGallery.getPlateMedia.useQuery,$.plateGallery.searchPlates.useQuery,$.plateGallery.suggestPlateClusters.useQuery,$.plateGallery.correctPlateText.useMutation,$.plateGallery.deletePlate.useMutation,$.plateGallery.listVehicles.useQuery,$.plateGallery.createVehicle.useMutation,$.plateGallery.renameVehicle.useMutation,$.plateGallery.deleteVehicle.useMutation,$.plateGallery.listVehicleSamples.useQuery,$.plateGallery.removeVehicleSample.useMutation,$.plateGallery.assignPlate.useMutation,$.plateGallery.unassignPlate.useMutation,$.plateGallery.assignPlates.useMutation,$.plateGallery.unassignPlates.useMutation,$.powerMeter.getStatus.useQuery,$.presence.getStatus.useQuery,$.pressureSensor.getStatus.useQuery,$.privacyMask.getOptions.useQuery,$.privacyMask.setMask.useMutation,$.privacyMask.getStatus.useQuery,$.ptz.move.useMutation,$.ptz.continuousMove.useMutation,$.ptz.stop.useMutation,$.ptz.getPresets.useQuery,$.ptz.goToPreset.useMutation,$.ptz.savePreset.useMutation,$.ptz.deletePreset.useMutation,$.ptz.getOptions.useQuery,$.ptz.goHome.useMutation,$.ptz.getPosition.useQuery,$.ptz.setAutofocus.useMutation,$.ptz.getStatus.useQuery,$.ptzAutotrack.getStatus.useQuery,$.ptzAutotrack.setEnabled.useMutation,$.ptzAutotrack.getSettings.useQuery,$.ptzAutotrack.setSettings.useMutation,$.reboot.reboot.useMutation,$.recording.getAvailability.useQuery,$.recording.getDaysWithRecordings.useQuery,$.recording.getPlaybackManifest.useQuery,$.recording.getStorageUsage.useQuery,$.recording.getDeviceConfig.useQuery,$.recording.locateSegment.useQuery,$.recording.readSegmentBytes.useQuery,$.recording.setDeviceConfig.useMutation,$.recording.rescanStorage.useMutation,$.recording.pruneFootage.useMutation,$.recording.deleteFootprint.useMutation,$.recording.listOpsLog.useQuery,$.recording.getStatus.useQuery,$.recording.getDeviceSettingsContribution.useQuery,$.recording.getDeviceLiveContribution.useQuery,$.recording.applyDeviceSettingsPatch.useMutation,$.recordingExport.createExport.useMutation,$.recordingExport.listExports.useQuery,$.recordingExport.getExport.useQuery,$.recordingExport.cancelExport.useMutation,$.recordingExport.deleteExport.useMutation,$.recordingExport.getDownloadUrl.useQuery,$.sceneMonitor.listScenes.useQuery,$.sceneMonitor.createScene.useMutation,$.sceneMonitor.updateScene.useMutation,$.sceneMonitor.deleteScene.useMutation,$.sceneMonitor.captureReference.useMutation,$.sceneMonitor.deleteReference.useMutation,$.sceneMonitor.recheckNow.useMutation,$.sceneMonitor.getStatus.useQuery,$.scriptRunner.run.useMutation,$.scriptRunner.stop.useMutation,$.scriptRunner.getStatus.useQuery,$.serverManagement.getServerPackageStatus.useQuery,$.serverManagement.checkServerUpdate.useMutation,$.serverManagement.applyServerUpdate.useMutation,$.serverManagement.rollbackServerUpdate.useMutation,$.serverManagement.restartServer.useMutation,$.settingsStore.get.useQuery,$.settingsStore.set.useMutation,$.settingsStore.query.useQuery,$.settingsStore.insert.useMutation,$.settingsStore.update.useMutation,$.settingsStore.delete.useMutation,$.settingsStore.count.useQuery,$.settingsStore.histogram.useQuery,$.settingsStore.isEmpty.useQuery,$.settingsStore.declareCollection.useMutation,$.smoke.getStatus.useQuery,$.snapshot.getSnapshot.useQuery,$.snapshot.invalidateCache.useMutation,$.snapshot.getSnapshotOverview.useQuery,$.snapshot.getStatus.useQuery,$.snapshot.getDeviceSettingsContribution.useQuery,$.snapshot.getDeviceLiveContribution.useQuery,$.snapshot.applyDeviceSettingsPatch.useMutation,$.storage.resolve.useQuery,$.storage.write.useMutation,$.storage.read.useQuery,$.storage.exists.useQuery,$.storage.list.useQuery,$.storage.delete.useMutation,$.storage.getAvailableSpace.useQuery,$.storage.beginUpload.useMutation,$.storage.writeChunk.useMutation,$.storage.finalizeUpload.useMutation,$.storage.abortUpload.useMutation,$.storage.beginDownload.useMutation,$.storage.readChunk.useQuery,$.storage.endDownload.useMutation,$.storage.listLocations.useQuery,$.storage.getDefaultLocation.useQuery,$.storage.listLocationDeclarations.useQuery,$.storage.upsertLocation.useMutation,$.storage.deleteLocation.useMutation,$.storage.testLocation.useQuery,$.storage.listProviders.useQuery,$.storage.testConfig.useQuery,$.streamBroker.publishCameraStream.useMutation,$.streamBroker.retractCameraStream.useMutation,$.streamBroker.assignProfile.useMutation,$.streamBroker.unassignProfile.useMutation,$.streamBroker.listAllCameraStreams.useQuery,$.streamBroker.listAllProfileSlots.useQuery,$.streamBroker.getBrokerStats.useQuery,$.streamBroker.probeStream.useMutation,$.streamBroker.listClients.useQuery,$.streamBroker.killClient.useMutation,$.streamBroker.restartProfile.useMutation,$.streamBroker.getStreamUrl.useQuery,$.streamBroker.getStreamWithCodec.useMutation,$.streamBroker.releaseStreamWithCodec.useMutation,$.streamBroker.subscribeAudioChunks.useMutation,$.streamBroker.pullAudioChunks.useQuery,$.streamBroker.unsubscribeAudioChunks.useMutation,$.streamBroker.subscribeFrames.useMutation,$.streamBroker.pullFrameHandles.useQuery,$.streamBroker.unsubscribeFrames.useMutation,$.streamBroker.setPreBufferDuration.useMutation,$.streamBroker.getPreBufferInfo.useQuery,$.streamBroker.getRtspPort.useQuery,$.streamBroker.getAllRtspEntries.useQuery,$.streamBroker.getRtspEntry.useQuery,$.streamBroker.regenerateRtspToken.useMutation,$.streamBroker.setRtspEnabled.useMutation,$.streamBroker.isRtspEnabled.useQuery,$.streamBroker.getDeviceSettingsContribution.useQuery,$.streamBroker.getDeviceLiveContribution.useQuery,$.streamBroker.applyDeviceSettingsPatch.useMutation,$.streamCatalog.getCatalog.useQuery,$.streamParams.getOptions.useQuery,$.streamParams.setProfile.useMutation,$.streamParams.getConfigSchema.useQuery,$.streamParams.getStatus.useQuery,$.switch.setState.useMutation,$.switch.getStatus.useQuery,$.system.info.useQuery,$.system.health.useQuery,$.system.featureFlags.useQuery,$.system.networkAddresses.useQuery,$.system.getRetentionConfig.useQuery,$.system.setRetentionConfig.useMutation,$.system.forceRetentionCleanup.useMutation,$.tamper.getStatus.useQuery,$.temperatureSensor.getStatus.useQuery,$.toast.onToast.useSubscription,$.turnProvider.getTurnServers.useQuery,$.update.installUpdate.useMutation,$.update.getStatus.useQuery,$.userManagement.listUsers.useQuery,$.userManagement.createUser.useMutation,$.userManagement.updateUser.useMutation,$.userManagement.deleteUser.useMutation,$.userManagement.resetPassword.useMutation,$.userManagement.setUserScopes.useMutation,$.userManagement.validateCredentials.useMutation,$.userManagement.listApiKeys.useQuery,$.userManagement.createApiKey.useMutation,$.userManagement.revokeApiKey.useMutation,$.userManagement.validateApiKey.useMutation,$.userManagement.createScopedToken.useMutation,$.userManagement.revokeScopedToken.useMutation,$.userManagement.validateScopedToken.useQuery,$.userManagement.listScopedTokens.useQuery,$.userManagement.setupTotp.useMutation,$.userManagement.confirmTotp.useMutation,$.userManagement.disableTotp.useMutation,$.userManagement.getTotpStatus.useQuery,$.userManagement.verifyTotp.useMutation,$.userManagement.oauthIssueCode.useMutation,$.userManagement.oauthExchangeCode.useMutation,$.userManagement.oauthRefresh.useMutation,$.userManagement.oauthVerifyAccessToken.useQuery,$.userManagement.listOauthSessions.useQuery,$.userManagement.revokeOauthSession.useMutation,$.vacuumControl.start.useMutation,$.vacuumControl.pause.useMutation,$.vacuumControl.stop.useMutation,$.vacuumControl.returnToBase.useMutation,$.vacuumControl.locate.useMutation,$.vacuumControl.setFanSpeed.useMutation,$.vacuumControl.getStatus.useQuery,$.valve.open.useMutation,$.valve.close.useMutation,$.valve.stop.useMutation,$.valve.setPosition.useMutation,$.valve.getStatus.useQuery,$.vibration.getStatus.useQuery,$.videoclips.listClips.useQuery,$.videoclips.getClipPlayback.useQuery,$.waterHeater.setTargetTemp.useMutation,$.waterHeater.setOperationMode.useMutation,$.waterHeater.setAway.useMutation,$.waterHeater.getStatus.useQuery,$.weather.getStatus.useQuery,$.webrtcSession.listStreams.useQuery,$.webrtcSession.createSession.useMutation,$.webrtcSession.handleOffer.useMutation,$.webrtcSession.handleAnswer.useMutation,$.webrtcSession.addIceCandidate.useMutation,$.webrtcSession.getIceCandidates.useQuery,$.webrtcSession.closeSession.useMutation,$.webrtcSession.hasAdaptiveBitrate.useQuery,$.webrtcSession.getSessionState.useQuery,$.zoneAnalytics.getCurrentSnapshot.useQuery,$.zoneAnalytics.getZoneHistory.useQuery,$.zoneAnalytics.getCameraHistory.useQuery,$.zoneAnalytics.getUnzonedHistory.useQuery,$.zoneRules.listRules.useQuery,$.zoneRules.setRules.useMutation,$.zones.listZones.useQuery,$.zones.addZone.useMutation,$.zones.removeZone.useMutation,$.zones.updateZone.useMutation;var Lz={kind:`binary`,field:`on`,onLabel:`Low`,offLabel:`Normal`,getSliceHandle:e=>e.binary};function Rz(e){return e===`battery-sensor`}function zz(e,t){if(!Vz(e))return!1;let n=e[t];if(typeof n!=`number`)return!1;let r=e.lastFetchedAt;return!(n===0&&r===0)}var Bz={"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 Vz(e){return typeof e==`object`&&!!e}function Hz(e){return typeof e==`object`&&!!e}function Uz(e){return typeof e==`object`&&!!e&&`state`in e&&typeof e.state==`string`}function Wz(e){return typeof e==`object`&&!!e&&`value`in e&&typeof e.value==`string`}function Gz(e){if(typeof e!=`object`||!e)return;let t=e.format;if(t===`date`||t===`time`||t===`datetime`)return t}function Kz(e){return e===`home`?`Home`:e===`not_home`?`Away`:e.charAt(0).toUpperCase()+e.slice(1)}function qz({trpc:e,device:t}){let n=t.role==null?void 0:Bz[t.role],r=Rz(t.role),{data:a}=Mz({},{staleTime:6e4}),o=az(e,t.id),s=oz(o!==null&&n!==void 0?n.getSliceHandle(o.state):void 0),c=oz(o!==null&&n?.kind===`numeric`?o.state.enumSensor:void 0),l=oz(o!==null&&r?o.state.binary:void 0),u=r&&n?.kind===`numeric`&&!zz(s,n.field)&&l!==void 0,d=u?Lz:n,f=u?l:s;if(d===void 0||f===void 0)return null;if(d.kind===`numeric`){if(!Vz(f))return null;let e=f[d.field];if(typeof e!=`number`)return null;let n=f.lastFetchedAt,r=e===0&&n===0;if(r&&Wz(c)&&c.value!==``)return(0,C.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:c.value});if(r)return null;let o=f,s=typeof o.unit==`string`?o.unit:void 0,l=typeof o.precision==`number`?o.precision:void 0,u=vM({display:t.display,capName:t.role===`numeric-sensor`?`numeric-sensor`:void 0,roleDefault:t.role==null?void 0:a?.defaults[t.role],sliceUnit:s,slicePrecision:l,canonicalUnit:d.canonicalUnit}),p=u.unit,m=gM(u.toDisplayValue(e),u.precision);return(0,C.jsxs)(`span`,{className:Z(`inline-flex items-baseline gap-0.5 tabular-nums text-xs text-foreground`),children:[(0,C.jsx)(`span`,{children:m}),p&&(0,C.jsx)(`span`,{className:`text-foreground-subtle`,children:p})]})}if(d.kind===`binary`){if(!Hz(f))return null;let e=!!f[d.field],t=e?d.onLabel:d.offLabel;return(0,C.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(d.kind===`string`)return!Wz(f)||f.value===``?null:(0,C.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:f.value});if(d.kind===`datetime`){if(!Wz(f)||f.value===``)return null;let e=Gz(f)??d.format,t=hM(f.value,e);return(0,C.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:t})}if(!Uz(f))return null;let p=Kz(f.state);return(0,C.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-1.5 py-0.5 text-xs font-medium`,f.state===`home`?`bg-success/15 text-success`:`bg-surface-subtle text-foreground-subtle`),children:p})}function Jz(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 Yz({trpc:e,deviceId:t}){let{data:n}=Nz({deviceId:t},{staleTime:6e4});return n===void 0?null:(0,C.jsx)(qz,{trpc:e,device:Jz(n)})}function Xz(e){return typeof e==`object`&&!!e}function Zz(e){return typeof e==`object`&&!!e}function Qz(e){return typeof e==`object`&&!!e&&`state`in e&&typeof e.state==`string`}function $z(e){return e===`home`?`Home`:e===`not_home`?`Away`:e.charAt(0).toUpperCase()+e.slice(1)}var eB={low:`bg-danger`,medium:`bg-warning`,high:`bg-success`};function tB(e){return e<=20?`low`:e<=50?`medium`:`high`}function nB({percent:e}){let t=Math.min(100,Math.max(0,e)),n=tB(t);return(0,C.jsx)(`div`,{"data-testid":`battery-bar`,"data-band":n,className:`h-2 w-24 overflow-hidden rounded-full bg-border`,children:(0,C.jsx)(`div`,{className:Z(`h-full rounded-full transition-all`,eB[n]),style:{width:`${t}%`}})})}function rB({trpc:e,device:t}){let n=t.role==null?void 0:Bz[t.role],r=Rz(t.role),{data:a}=Mz({},{staleTime:6e4}),o=az(e,t.id),s=oz(o!==null&&n!==void 0?n.getSliceHandle(o.state):void 0),c=oz(o!==null&&r?o.state.binary:void 0),l=r&&n?.kind===`numeric`&&!zz(s,n.field)&&c!==void 0,u=l?Lz:n,d=l?c:s;if(u===void 0||d===void 0)return(0,C.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,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name}),(0,C.jsx)(`span`,{className:`text-xs text-foreground-subtle italic`,children:`Awaiting state…`})]});if(u.kind===`numeric`){if(!Xz(d))return null;let e=d[u.field];if(typeof e!=`number`)return null;let n=d,o=typeof n.unit==`string`?n.unit:void 0,s=typeof n.precision==`number`?n.precision:void 0,c=vM({display:t.display,capName:t.role===`numeric-sensor`?`numeric-sensor`:void 0,roleDefault:t.role==null?void 0:a?.defaults[t.role],sliceUnit:o,slicePrecision:s,canonicalUnit:u.canonicalUnit}),l=c.unit;return(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,C.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:gM(c.toDisplayValue(e),c.precision)}),l&&(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:l})]}),r&&(0,C.jsx)(nB,{percent:e}),(0,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`binary`){if(!Zz(d))return null;let e=!!d[u.field],n=e?u.onLabel:u.offLabel;return(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.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,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`datetime`){if(!Wz(d))return null;if(d.value===``)return(0,C.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,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name}),(0,C.jsx)(`span`,{className:`text-xs text-foreground-subtle italic`,children:`Awaiting state…`})]});let e=Gz(d)??u.format;return(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:hM(d.value,e)}),(0,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`string`)return!Wz(d)||d.value===``?null:(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsx)(`span`,{className:`text-xl font-semibold text-foreground`,children:d.value}),(0,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]});if(!Qz(d))return null;let f=$z(d.state);return(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.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,C.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}function iB({trpc:e,deviceId:t}){let{data:n}=Nz({deviceId:t},{staleTime:6e4});return n===void 0?null:(0,C.jsx)(rB,{trpc:e,device:n})}function aB(e){return e===void 0||e.inProgress?!1:e.availableVersion!==null&&e.currentVersion!==null&&e.availableVersion!==e.currentVersion}function oB(e,t){return sz({trpc:e,deviceId:t,cap:e=>e.update,slice:e=>e.state.update})}function sB({trpc:e,deviceId:t}){let{cap:n,slice:r}=oB(e,t);return n===void 0?null:r?.inProgress?(0,C.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs text-foreground-subtle`,children:[(0,C.jsx)(vL,{className:`h-3.5 w-3.5 animate-spin`}),`Updating…`]}):aB(r)?(0,C.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,C.jsx)($I,{className:`h-3 w-3`}),`Update`]}):(0,C.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[10px] text-foreground-subtle`,children:[(0,C.jsx)(LI,{className:`h-3 w-3 text-success`}),r?.currentVersion??`Up to date`]})}function cB({trpc:e,deviceId:t}){let{cap:n,slice:r,available:a}=oB(e,t);if(n===void 0)return null;let o=r?.inProgress===!0,s=aB(r),c=r?.currentVersion??`—`,l=()=>{!a||n===void 0||!s||n.installUpdate({})};return(0,C.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,C.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:c}),s&&r?.availableVersion!=null&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`→`}),(0,C.jsx)(`span`,{className:`text-base font-medium text-warning tabular-nums`,children:r.availableVersion})]})]}),o?(0,C.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,C.jsx)(vL,{className:`h-4 w-4 animate-spin`}),`Installing…`]}):s?(0,C.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),l()},disabled:!a,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,C.jsx)($I,{className:`h-4 w-4`}),`Install update`]}):(0,C.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,C.jsx)(LI,{className:`h-4 w-4`}),`Up to date`]}),r?.state!=null&&r.state!==``&&(0,C.jsx)(`span`,{className:`text-[10px] text-foreground-subtle`,children:r.state})]})}function lB(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 uB(e,t){return sz({trpc:e,deviceId:t,cap:e=>e.vacuumControl,slice:e=>e.state.vacuumControl})}function dB({label:e,busy:t,active:n,onClick:r,children:a}){return(0,C.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:a})}function fB(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 pB=`
|
|
@@ -107,8 +107,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
107
107
|
@media (prefers-reduced-motion: reduce) {
|
|
108
108
|
.acv-streak, .acv-fan, .acv-sway-wrap, .acv-glow, .acv-swing { animation: none !important; }
|
|
109
109
|
}
|
|
110
|
-
`;function rH({trpc:e,deviceId:t,layout:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s;if(n===`compact`)return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`span`,{className:Z(`text-xs tabular-nums font-medium`,GV[c.mode]),children:c.target===null?c.currentTemp===null?null:(0,C.jsxs)(`span`,{className:`text-foreground-subtle`,children:[c.currentTemp,`°`]}):(0,C.jsxs)(C.Fragment,{children:[c.target,`°`,c.currentTemp!==null&&(0,C.jsxs)(`span`,{className:`text-foreground-subtle font-normal`,children:[` `,`(`,c.currentTemp,`°)`]})]})}),c.target!==null&&(0,C.jsxs)(C.Fragment,{children:[(0,C.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,C.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,C.jsx)(`select`,{"aria-label":`Mode`,value:c.mode,disabled:u,onChange:e=>{e.stopPropagation();let t=c.availableModes.find(t=>t===e.target.value);!u&&t&&(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,C.jsx)(`option`,{value:e,children:JV[e]},e))})]});let d=XV[c.mode],f=c.mode!==`off`,p=eH(c.preset),m=c.preset===`turbo`,h=Math.max(.55,tH(c.fanMode)*(m?.6:1)),g=c.swingVertical!==null,_=c.swingHorizontal!==null,v=f&&(c.swingVertical===!0||c.swingHorizontal===!0);return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:Z(`relative flex flex-col items-stretch gap-2.5 overflow-hidden rounded-lg border p-3 transition-colors`,WV[c.mode]),children:[(0,C.jsx)(`style`,{children:nH}),(0,C.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,C.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-60`,children:(0,C.jsx)(lH,{mode:c.mode,accent:d,periodSec:h,swaying:v})}),(0,C.jsx)(`div`,{className:`pointer-events-none absolute inset-0 bg-gradient-to-b from-surface/50 via-transparent to-surface/50`}),f&&(0,C.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:d,animation:`acv-glow 3.2s ease-in-out infinite`}}),(0,C.jsxs)(`div`,{className:`relative z-10 flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide`,style:{color:d},children:[(0,C.jsx)(aH,{mode:c.mode,className:`h-3.5 w-3.5`}),JV[c.mode],c.currentTemp!==null&&(0,C.jsxs)(`span`,{className:`normal-case text-foreground-subtle`,children:[`· `,c.currentTemp,`° now`]}),c.currentHumidity!==null&&(0,C.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 normal-case text-foreground-subtle`,children:[(0,C.jsx)(tL,{className:`h-3 w-3`}),c.currentHumidity,`%`]})]}),c.target===null?(0,C.jsxs)(`div`,{className:`relative z-10 flex items-baseline gap-0.5`,children:[(0,C.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums text-foreground`,children:c.currentTemp??`—`}),(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`div`,{className:`relative z-10 flex items-center gap-3`,children:[(0,C.jsx)(sH,{label:`Decrease target`,symbol:`−`,disabled:u,onClick:()=>{if(u||c.target===null)return;let e=c.target-1;l({target:e}),a.setTarget({target:e})}}),(0,C.jsxs)(`div`,{className:`flex items-baseline gap-0.5`,children:[(0,C.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums`,style:{color:d},children:c.target}),(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}),(0,C.jsx)(sH,{label:`Increase target`,symbol:`+`,disabled:u,onClick:()=>{if(u||c.target===null)return;let e=c.target+1;l({target:e}),a.setTarget({target:e})}})]}),(0,C.jsx)(`div`,{className:`relative z-10 w-36`,children:(0,C.jsx)(cH,{value:c.target,min:ZV,max:QV,accent:d})})]})]}),(0,C.jsxs)(`div`,{className:`relative z-10 grid grid-cols-3 gap-2`,children:[(0,C.jsx)(oH,{label:`Mode`,icon:(0,C.jsx)(`span`,{style:{color:d},className:`flex`,children:(0,C.jsx)(aH,{mode:c.mode,className:`h-4 w-4`})}),value:c.mode,options:c.availableModes.map(e=>({value:e,label:JV[e]})),disabled:u,onChange:e=>{let t=c.availableModes.find(t=>t===e);t&&(l({mode:t}),a.setMode({mode:t}))}}),c.availableFanModes.length>0&&(0,C.jsx)(oH,{label:`Fan`,icon:(0,C.jsx)(_R,{className:`h-4 w-4 text-sky-500`}),value:c.fanMode,options:c.availableFanModes.map(e=>({value:e,label:$V(e)})),disabled:u,onChange:e=>{l({fanMode:e}),a.setFanMode({fanMode:e})}}),c.availablePresets.length>0&&(0,C.jsx)(oH,{label:`Preset`,icon:(0,C.jsx)(p,{className:`h-4 w-4 text-emerald-500`}),value:c.preset,options:c.availablePresets.map(e=>({value:e,label:$V(e)})),disabled:u,onChange:e=>{l({preset:e}),a.setPreset({preset:e})}})]}),(g||_)&&(0,C.jsx)(iH,{label:`Swing`,children:(0,C.jsxs)(`div`,{className:`grid grid-cols-2 gap-1`,children:[g&&(0,C.jsx)(dH,{axis:`vertical`,on:c.swingVertical??!1,busy:u,onToggle:e=>{l({swingVertical:e}),a.setSwingVertical({on:e})}}),_&&(0,C.jsx)(dH,{axis:`horizontal`,on:c.swingHorizontal??!1,busy:u,onToggle:e=>{l({swingHorizontal:e}),a.setSwingHorizontal({on:e})}})]})})]})}function iH({label:e,children:t}){return(0,C.jsxs)(`div`,{className:`relative z-10 flex flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),t]})}function aH({mode:e,className:t}){let n=YV[e];return(0,C.jsx)(n,{className:t,"aria-hidden":!0})}function oH({label:e,icon:t,value:n,options:r,disabled:a,onChange:o}){return(0,C.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),(0,C.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`,a&&`opacity-40`),children:[(0,C.jsx)(`span`,{className:`flex shrink-0`,children:t}),(0,C.jsx)(`select`,{"aria-label":e,value:n,disabled:a,onChange:e=>{e.stopPropagation(),a||o(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,C.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,C.jsx)(RI,{className:`h-3 w-3 shrink-0 text-foreground-subtle`})]})]})}function sH({label:e,symbol:t,disabled:n,onClick:r}){return(0,C.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 cH({value:e,min:t,max:n,accent:r}){let a=`${Math.min(1,Math.max(0,(e-t)/(n-t)))*100}%`;return(0,C.jsxs)(`div`,{className:`mt-2 w-full`,children:[(0,C.jsxs)(`div`,{className:`relative h-1.5 w-full rounded-full bg-surface-subtle`,children:[(0,C.jsx)(`div`,{className:`absolute inset-y-0 left-0 rounded-full`,style:{width:a,background:r}}),(0,C.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:a,background:r}})]}),(0,C.jsxs)(`div`,{className:`mt-0.5 flex justify-between text-[9px] tabular-nums text-foreground-subtle`,children:[(0,C.jsxs)(`span`,{children:[t,`°`]}),(0,C.jsxs)(`span`,{children:[n,`°`]})]})]})}function lH({mode:e,accent:t,periodSec:n,swaying:r}){let a=[0,1,2,3,4,5],o=e===`heat`,s=e===`dry`;return(0,C.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-0 overflow-hidden`,children:e===`off`?(0,C.jsx)(`div`,{className:`flex h-full items-center justify-center gap-2 opacity-30`,children:a.map(e=>(0,C.jsx)(`span`,{className:`h-8 w-1 rounded-full bg-foreground-subtle opacity-40`},e))}):e===`fan_only`?(0,C.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,C.jsx)(uH,{color:t,periodSec:Math.max(.5,n*.7),size:56})}):(0,C.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:a.map(e=>(0,C.jsx)(`span`,{className:`acv-streak absolute rounded-full`,style:{left:`${8+e*15}%`,width:s?`0.4rem`:`0.3rem`,height:s?`0.4rem`:`1.9rem`,background:t,boxShadow:`0 0 6px ${t}`,animationName:o?`acv-rise`:`acv-fall`,animationTimingFunction:`linear`,animationIterationCount:`infinite`,animationDuration:`${n}s`,animationDelay:`${e%3*(n/3)+e*.05}s`}},e))})})}function uH({color:e,periodSec:t,size:n}){return(0,C.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,C.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,C.jsx)(`circle`,{cx:`50`,cy:`50`,r:`7`,fill:e})]})}function dH({axis:e,on:t,busy:n,onToggle:r}){let a=e===`vertical`?`Vertical`:`Horizontal`,o=e===`vertical`?kL:OL,s=e===`vertical`?`acv-swing-v`:`acv-swing-h`;return(0,C.jsxs)(`button`,{type:`button`,"aria-label":`${a} 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,C.jsx)(o,{className:`acv-swing h-4 w-4`,"aria-hidden":!0,style:t?{animation:`${s} 1.4s ease-in-out infinite`}:void 0}),a]})}var fH={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`},pH={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`},mH=[`off`,`all`,`one`];function hH(e){return mH.includes(e)}var gH={off:`Off`,all:`All`,one:`One`};function _H(e){return e===`playing`||e===`buffering`?`pause`:`play`}function vH({trpc:e,deviceId:t,features:n,layout:r,optimistic:a}){let{cap:o,slice:s,available:c}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:l,applyOptimistic:u}=bz(s,{enabled:a??!0});if(l===void 0)return null;let d=!c,f=_H(l.state);return(0,C.jsxs)(`div`,{"data-state":l.state,className:Z(`inline-flex items-center gap-2 rounded border px-2 py-1 transition-colors`,fH[l.state],r===`full`&&`flex-col items-stretch gap-3`),children:[(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(`span`,{role:`status`,"aria-label":l.state,className:Z(`inline-block h-2 w-2 rounded-full flex-shrink-0`,pH[l.state])}),(0,C.jsx)(`button`,{type:`button`,"aria-label":f===`play`?`Play`:`Pause`,disabled:d,onClick:e=>{e.stopPropagation(),!d&&(f===`play`?(u({state:`playing`}),o?.play({})):(u({state:`paused`}),o?.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`,d&&`opacity-40 cursor-not-allowed`),children:f===`play`?`▶`:`⏸`})]}),r===`full`&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":`Previous`,disabled:d,onClick:e=>{e.stopPropagation(),d||o?.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`,d&&`opacity-40 cursor-not-allowed`),children:`⏮`}),(0,C.jsx)(`button`,{type:`button`,"aria-label":`Next`,disabled:d,onClick:e=>{e.stopPropagation(),d||o?.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`,d&&`opacity-40 cursor-not-allowed`),children:`⏭`})]}),l.volumeLevel!==null&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Vol`}),(0,C.jsx)(`input`,{"aria-label":`Volume`,type:`range`,min:0,max:100,step:1,value:l.volumeLevel,disabled:d,onChange:e=>{let t=Number(e.target.value);u({volumeLevel:t}),d||o?.setVolume({volumeLevel:t})}}),(0,C.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[l.volumeLevel,`%`]})]}),l.isMuted!==null&&(0,C.jsx)(`button`,{type:`button`,"aria-label":l.isMuted?`Unmute`:`Mute`,disabled:d,onClick:e=>{if(e.stopPropagation(),!d&&l.isMuted!==null){let e=!l.isMuted;u({isMuted:e}),o?.setMute({muted:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,l.isMuted?`bg-amber-400 text-amber-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,d&&`opacity-40 cursor-not-allowed`),children:l.isMuted?`🔇`:`🔊`}),l.availableSources.length>0&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Source`}),(0,C.jsxs)(`select`,{"aria-label":`Source`,value:l.source,disabled:d,onChange:e=>{let t=e.target.value;!d&&t&&(u({source:t}),o?.selectSource({source:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:[(0,C.jsx)(`option`,{value:``,disabled:!0,children:`—`}),l.availableSources.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))]})]}),l.shuffle!==null&&(0,C.jsx)(`button`,{type:`button`,"aria-label":`Shuffle`,disabled:d,onClick:e=>{if(e.stopPropagation(),!d&&l.shuffle!==null){let e=!l.shuffle;u({shuffle:e}),o?.setShuffle({shuffle:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,l.shuffle?`bg-green-400 text-green-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,d&&`opacity-40 cursor-not-allowed`),children:`⇌ Shuffle`}),l.repeat!==null&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Repeat`}),(0,C.jsx)(`select`,{"aria-label":`Repeat`,value:l.repeat,disabled:d,onChange:e=>{let t=e.target.value;!d&&hH(t)&&(u({repeat:t}),o?.setRepeat({repeat:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:mH.map(e=>(0,C.jsx)(`option`,{value:e,children:gH[e]},e))})]})]})]})}function yH(e){return e.slice(0,10)}function bH(e){return e.slice(0,5)}function xH(e){return(e.includes(`T`)?e:e.replace(` `,`T`)).slice(0,16)}function SH({value:e,busy:t,onCommit:n,unit:r,min:a,max:o,step:s,precision:c}){let[l,u]=(0,S.useState)(gM(e,c)),d=Number(l),f=l!==``&&!Number.isNaN(d),p=s??1,m=e=>{let t=e;return a!==void 0&&(t=Math.max(a,t)),o!==void 0&&(t=Math.min(o,t)),t},h=()=>{!t&&f&&n(m(d))};return(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":`Decrement`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e-p);u(gM(t,c)),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,C.jsx)(`input`,{"aria-label":`Numeric value`,type:`number`,disabled:t,value:l,onChange:e=>{u(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,C.jsx)(`span`,{className:`text-foreground-subtle text-xs`,children:r}),(0,C.jsx)(`button`,{type:`button`,"aria-label":`Increment`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e+p);u(gM(t,c)),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 CH({value:e,busy:t,onCommit:n}){let[r,a]=(0,S.useState)(e);return(0,C.jsx)(`input`,{type:`text`,disabled:t,value:r,onChange:e=>a(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 wH({slice:e,busy:t,setValueFn:n,layout:r}){switch(e.kind){case`numeric`:return(0,C.jsx)(SH,{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,C.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 border border-border bg-surface px-1 py-0.5 text-xs`,t&&`opacity-40 cursor-not-allowed`),children:e.options.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))});case`text`:return(0,C.jsx)(CH,{value:String(e.value),busy:t,onCommit:e=>{n({control:{kind:`text`,value:e}})}});case`datetime`:{let a=String(e.value),o=e.format??`datetime`;return r===`compact`?a===``?(0,C.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground-subtle`,children:`—`}):(0,C.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground`,children:hM(a,o)}):(0,C.jsx)(`input`,{type:o===`date`?`date`:o===`time`?`time`:`datetime-local`,"aria-label":`Control value`,disabled:t,value:o===`date`?yH(a):o===`time`?bH(a):xH(a),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 TH({trpc:e,deviceId:t,features:n,layout:r,optimistic:a}){let{cap:o,slice:s,available:c}=sz({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control}),{display:l,applyOptimistic:u}=bz(s,{enabled:a??!0});if(l===void 0)return null;let d=!c;return(0,C.jsx)(`div`,{"data-kind":l.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,C.jsx)(wH,{slice:l,busy:d,setValueFn:e=>{!d&&o&&(u({value:e.control.value}),o.setValue(e))},layout:r})})}var EH=5,DH=35;function OH(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function kH(e,t,n){return Math.round(t+e*(n-t))}var AH=176,jH=76,MH=2*Math.PI*jH,NH=270/360*MH,PH=AH/2-jH-10;function FH(e){let t=AH/2,n=AH/2,r=MH-NH,a=e.mode===`band`?(()=>{let t=e.band.from*NH,n=Math.max(0,(e.band.to-e.band.from)*NH);return{dasharray:`${n} ${MH-n}`,dashoffset:-t}})():(()=>{let t=e.fraction*NH;return{dasharray:`${t} ${MH-t}`,dashoffset:void 0}})();return(0,C.jsxs)(`svg`,{width:AH,height:AH,viewBox:`0 0 ${AH} ${AH}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,C.jsx)(`circle`,{cx:t,cy:n,r:jH,fill:`none`,stroke:`var(--color-border)`,strokeWidth:12,strokeDasharray:`${NH} ${r}`,strokeLinecap:`round`}),(0,C.jsx)(`circle`,{cx:t,cy:n,r:jH,fill:`none`,stroke:e.color,strokeWidth:12,strokeDasharray:a.dasharray,...a.dashoffset===void 0?{}:{strokeDashoffset:a.dashoffset},strokeLinecap:`round`})]})}var IH={heat:`#f59e0b`,cool:`#60a5fa`,auto:`#c084fc`,heat_cool:`#e879f9`,fan_only:`#94a3b8`,dry:`#22d3ee`,off:`#d4d4d8`};function LH({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s,d=IH[c.mode],f=c.mode===`heat_cool`||c.targetLow!==null&&c.targetHigh!==null,p=EH,m=DH,h=!f&&c.target!==null?OH(c.target,p,m):0,g=f&&c.targetLow!==null?OH(c.targetLow,p,m):0,_=f&&c.targetHigh!==null?OH(c.targetHigh,p,m):0;return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:Z(`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4 transition-colors`,WV[c.mode]),children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,C.jsxs)(`div`,{className:`relative`,style:{width:AH,height:AH},children:[f?(0,C.jsx)(FH,{mode:`band`,band:{from:g,to:_},color:d}):(0,C.jsx)(FH,{mode:`fill`,fraction:h,color:d}),f?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:g,color:d,knobTopPx:PH,onDragFraction:e=>{if(u||c.targetHigh===null)return;let t=Math.min(kH(e,p,m),c.targetHigh);l({targetLow:t}),a.setTargetRange({targetLow:t,targetHigh:c.targetHigh})}})}),(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:_,color:d,knobTopPx:PH,onDragFraction:e=>{if(u||c.targetLow===null)return;let t=Math.max(kH(e,p,m),c.targetLow);l({targetHigh:t}),a.setTargetRange({targetLow:c.targetLow,targetHigh:t})}})})]}):(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:h,color:d,knobTopPx:PH,onDragFraction:e=>{if(u)return;let t=kH(e,p,m);l({target:t}),a.setTarget({target:t})}})}),(0,C.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:[(0,C.jsxs)(`div`,{"data-testid":`current-temp`,className:`text-4xl font-bold tabular-nums text-foreground leading-none`,children:[c.currentTemp===null?`—`:c.currentTemp,(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle font-normal ml-0.5`,children:`°`})]}),!f&&c.target!==null&&(0,C.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:d},children:[`set `,c.target,`°`]}),f&&c.targetLow!==null&&c.targetHigh!==null&&(0,C.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:d},children:[c.targetLow,`° – `,c.targetHigh,`°`]})]})]}),!f&&c.target!==null&&(0,C.jsx)(`div`,{className:`w-[200px]`,children:(0,C.jsx)(cz,{value:`${c.target}°`,onDelta:e=>{if(u||c.target===null)return;let t=c.target+e;l({target:t}),a.setTarget({target:t})}})})]}),(0,C.jsx)(`select`,{"aria-label":`Mode`,value:c.mode,disabled:u,onChange:e=>{e.stopPropagation();let t=e.target.value;!u&&t&&(l({mode:c.availableModes.find(e=>e===t)??c.mode}),a.setMode({mode:c.availableModes.find(e=>e===t)??c.mode}))},className:Z(`w-full rounded border border-border bg-surface px-3 py-1.5 text-sm`,u&&`opacity-40 cursor-not-allowed`),children:c.availableModes.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))})]})}function RH(e){return e===`locked`||e===`locking`}function zH(e){return e===`jammed`}var BH={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 VH({state:e}){let t=BH[e];return(0,C.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,C.jsx)(bL,{className:`h-8 w-8`,"aria-hidden":`true`}):(0,C.jsx)(yL,{className:`h-8 w-8`,"aria-hidden":`true`})})}function HH({state:e}){return(0,C.jsx)(`span`,{className:Z(`text-sm font-medium capitalize`,zH(e)?`text-danger`:`text-foreground-muted`),children:e})}function UH({busy:e,onOpen:t}){return(0,C.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,C.jsx)(QI,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Open`]})}function WH({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=RH(c.state),d=zH(c.state)||!s,f=n?.includes(js.LockOpen)===!0,p=()=>{d||(u?(l({state:`unlocking`}),a.unlock({})):(l({state:`locking`}),a.lock({})))},m=()=>{d||a.open({})},h=u?`Unlock`:`Lock`;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,C.jsx)(VH,{state:c.state}),(0,C.jsx)(HH,{state:c.state})]}),(0,C.jsx)(`div`,{className:Z(d&&`pointer-events-none opacity-40`),children:(0,C.jsx)(lz,{on:u,targetLabel:h,onConfirm:p})}),f&&(0,C.jsx)(`div`,{className:`flex justify-center`,children:(0,C.jsx)(UH,{busy:d,onOpen:m})})]})}var GH=150,KH=64,qH=GH/2,JH=2*Math.PI*KH,YH=270/360*JH;function XH({fraction:e,color:t,children:n,onDragFraction:r}){let a=Math.min(1,Math.max(0,e)),o=GH/2,s=GH/2,c=JH-YH,l=a*YH;return(0,C.jsxs)(`div`,{className:`relative`,style:{width:GH,height:GH},children:[(0,C.jsxs)(`svg`,{width:GH,height:GH,viewBox:`0 0 ${GH} ${GH}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,C.jsx)(`circle`,{cx:o,cy:s,r:KH,fill:`none`,stroke:`var(--color-border)`,strokeWidth:11,strokeDasharray:`${YH} ${c}`,strokeLinecap:`round`}),(0,C.jsx)(`circle`,{cx:o,cy:s,r:KH,fill:`none`,stroke:t,strokeWidth:11,strokeDasharray:`${l} ${JH-l}`,strokeLinecap:`round`})]}),(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:a,color:t,knobTopPx:qH-KH-10,...r===void 0?{}:{onDragFraction:r}})}),(0,C.jsx)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:n})]})}function ZH({on:e,busy:t,onToggle:n}){let r={transform:e?`translateX(30px)`:`translateX(3px)`};return(0,C.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,C.jsx)(`span`,{className:Z(`absolute h-6 w-6 rounded-full transition-all`,e?`bg-success`:`bg-foreground-subtle`),style:r})})}var QH=500,$H=150,eU=`linear-gradient(90deg, #9ec9ff, #ffffff, #ffb24d)`;function tU(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function nU(e){return tU(e,$H,QH)}var rU=`#f4b740`,iU=`#d4d4d8`;function aU({trpc:e,deviceId:t,features:n,optimistic:r}){let a=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),o=sz({trpc:e,deviceId:t,cap:e=>e.brightness,slice:e=>e.state.brightness}),s=sz({trpc:e,deviceId:t,cap:e=>e.color,slice:e=>e.state.color}),c=bz(a.slice,{enabled:r??!0}),l=bz(o.slice,{enabled:r??!0}),u=bz(s.slice,{enabled:r??!0});if(a.cap===void 0||c.display===void 0)return null;let d=c.display.on===!0,f=!a.available,p=l.display?.percentage??0,m=!o.available,h=d?p/100:0,g=d?rU:iU,_=(n?.includes(js.LightColorMired)??!1)&&s.cap!==void 0,v=u.display?.mireds,y=!s.available;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,C.jsxs)(XH,{fraction:h,color:g,children:[(0,C.jsxs)(`div`,{"data-testid":`brightness-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[p,(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,C.jsx)(hL,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}),o.cap!==void 0&&(0,C.jsxs)(`label`,{className:`flex w-full items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{className:`w-16`,children:`Brightness`}),(0,C.jsx)(`input`,{"aria-label":`Brightness`,type:`range`,min:0,max:100,step:1,className:`flex-1`,value:p,disabled:m||!d,onChange:e=>{let t=Number(e.target.value);l.applyOptimistic({percentage:t}),m||o.cap?.setBrightness({percentage:t})}}),(0,C.jsxs)(`span`,{className:`tabular-nums w-9 text-right`,children:[p,`%`]})]})]}),(0,C.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:d?`On`:`Off`}),(0,C.jsx)(ZH,{on:d,busy:f,onToggle:()=>{if(f)return;let e=!d;c.applyOptimistic({on:e}),a.cap?.setState({on:e})}})]}),_&&(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`color-temp-strip`,children:[(0,C.jsx)(iR,{className:`h-4 w-4 text-foreground-subtle`,"aria-hidden":`true`}),(0,C.jsxs)(`label`,{className:`flex-1`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Colour temperature`}),(0,C.jsx)(`input`,{"aria-label":`Colour temperature`,type:`range`,min:$H,max:QH,step:1,className:`w-full`,value:v??QH,disabled:y||!d,onChange:e=>{let t=Number(e.target.value);u.applyOptimistic({mode:`mired`,mireds:t}),y||s.cap?.setColor({color:{mode:`mired`,mireds:t}})}}),(0,C.jsx)(`div`,{className:`pointer-events-none mt-1`,children:(0,C.jsx)(hz,{fraction:v===void 0?.5:nU(v),color:eU})})]})]})]})}var oU=`#3aa6a0`,sU=`#d4d4d8`;function cU({trpc:e,deviceId:t,features:n,optimistic:r}){let a=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),o=sz({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl}),s=bz(a.slice,{enabled:r??!0}),c=bz(o.slice,{enabled:r??!0});if(a.cap===void 0||s.display===void 0)return null;let l=s.display.on===!0,u=!a.available,d=c.display?.percentage??0,f=!o.available,p=l?d/100:0,m=l?oU:sU,h=n?.includes(js.FanSpeed)??!1,g=(n?.includes(js.FanOscillating)??!1)&&o.cap!==void 0,_=c.display?.availablePresets??[],v=(n?.includes(js.FanPreset)??!1)&&o.cap!==void 0&&_.length>0,y=c.display?.preset??``,b=c.display?.oscillating===!0,x=()=>{if(u)return;let e=!l;s.applyOptimistic({on:e}),a.cap?.setState({on:e})},S=()=>{if(f)return;let e=!b;c.applyOptimistic({oscillating:e}),o.cap?.setOscillating({oscillating:e})},w=e=>{if(f)return;let t=c.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));c.applyOptimistic({percentage:r}),o.cap?.setPercentage({percentage:r})},T=e=>{f||e===``||(c.applyOptimistic({preset:e}),o.cap?.setPreset({preset:e}))};return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsx)(`div`,{className:`flex flex-col items-center gap-3`,children:h?(0,C.jsxs)(XH,{fraction:p,color:m,onDragFraction:w,children:[(0,C.jsxs)(`div`,{"data-testid":`speed-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[d,(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,C.jsx)(rL,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}):(0,C.jsx)(`div`,{"data-testid":`fan-onoff-icon`,className:`flex h-[150px] w-[150px] items-center justify-center`,children:(0,C.jsx)(rL,{className:`h-16 w-16`,style:{color:m},"aria-hidden":`true`})})}),v&&(0,C.jsx)(`div`,{className:`flex justify-center`,children:(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Preset`}),(0,C.jsxs)(`select`,{"aria-label":`Fan preset`,value:y,disabled:f,onChange:e=>{e.stopPropagation(),T(e.target.value)},className:Z(`bg-surface border border-border rounded px-1 py-0.5`,f&&`opacity-40 cursor-not-allowed`),children:[(0,C.jsx)(`option`,{value:``,disabled:!0,children:`—`}),_.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))]})]})}),(0,C.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[g?(0,C.jsxs)(`button`,{type:`button`,"aria-label":`Oscillate`,"aria-pressed":b,disabled:f,onClick:e=>{e.stopPropagation(),S()},className:Z(`inline-flex items-center gap-1.5 rounded-md border px-3 py-1.5 text-xs font-medium transition-colors`,b?`border-success/50 bg-success/10 text-success`:`border-border text-foreground-muted hover:bg-surface-hover`,f&&`opacity-40 cursor-not-allowed`),children:[(0,C.jsx)(zL,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Oscillate`]}):(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l?`On`:`Off`}),(0,C.jsx)(ZH,{on:l,busy:u,onToggle:x})]})]})}function lU({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:a,available:o}=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),{display:s,applyOptimistic:c}=bz(a,{enabled:n??!0});if(r===void 0||s===void 0)return null;let l=s.on===!0,u=!o;return(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsx)(`div`,{"data-testid":`switch-glyph`,"data-state":l?`on`:`off`,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2 transition-colors`,l?`border-success/30 bg-success/10 text-success`:`border-border bg-surface-subtle text-foreground-subtle`),children:(0,C.jsx)(LL,{className:`h-8 w-8`,"aria-hidden":`true`})}),(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l?`On`:`Off`}),(0,C.jsx)(ZH,{on:l,busy:u,onToggle:()=>{if(u)return;let e=!l;c({on:e}),r.setState({on:e})}})]})}function uU(e){return e===`playing`||e===`buffering`?`pause`:`play`}function dU(e,t){return e===null||t===null||t<=0?0:Math.min(1,Math.max(0,e/t))}function fU(e){if(e===null)return`--:--`;let t=Math.floor(e/1e3);return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function pU({title:e,subtitle:t}){return(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,C.jsx)(AL,{className:`h-6 w-6 text-foreground-subtle`,"aria-hidden":`true`}),(0,C.jsx)(`span`,{className:`text-base font-semibold text-foreground line-clamp-1`,children:e??`Nothing playing`}),t&&(0,C.jsx)(`span`,{className:`text-xs text-foreground-subtle line-clamp-1`,children:t})]})}function mU({label:e,busy:t,onPress:n,children:r,primary:a}){return(0,C.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`,a?`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 hU({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s,d=uU(c.state),f=(n?.includes(js.MediaPlayerSeek)??!1)&&c.durationMs!==null&&c.durationMs>0,p=n?.includes(js.MediaPlayerNext)??!1,m=n?.includes(js.MediaPlayerPrevious)??!1,h=(n?.includes(js.MediaPlayerVolume)??!1)&&c.volumeLevel!==null,g=()=>{u||(d===`play`?(l({state:`playing`}),a.play({})):(l({state:`paused`}),a.pause({})))},_=c.currentMedia?.artist??c.currentMedia?.album??null,v=dU(c.positionMs,c.durationMs),y=c.volumeLevel??0;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsx)(pU,{title:c.currentMedia?.title??null,subtitle:_}),f&&(0,C.jsxs)(`div`,{"data-testid":`media-seek`,className:`flex flex-col gap-1`,children:[(0,C.jsxs)(`label`,{className:`relative block`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Seek`}),(0,C.jsx)(`input`,{"aria-label":`Seek`,type:`range`,min:0,max:c.durationMs??0,step:1e3,className:`absolute inset-0 h-4 w-full cursor-pointer opacity-0`,value:c.positionMs??0,disabled:u,onChange:e=>{if(u)return;let t=Number(e.target.value);l({positionMs:t}),a.seek({positionMs:t})}}),(0,C.jsx)(`div`,{className:`pointer-events-none`,children:(0,C.jsx)(hz,{fraction:v})})]}),(0,C.jsxs)(`div`,{className:`flex justify-between text-[11px] tabular-nums text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:fU(c.positionMs)}),(0,C.jsx)(`span`,{children:fU(c.durationMs)})]})]}),(0,C.jsxs)(`div`,{className:`flex items-center justify-center gap-4`,children:[m&&(0,C.jsx)(mU,{label:`Previous`,busy:u,onPress:()=>void a.previous({}),children:(0,C.jsx)(qL,{className:`h-5 w-5`,"aria-hidden":`true`})}),(0,C.jsx)(mU,{label:d===`play`?`Play`:`Pause`,busy:u,onPress:g,primary:!0,children:d===`play`?(0,C.jsx)(IL,{className:`h-6 w-6`,"aria-hidden":`true`}):(0,C.jsx)(NL,{className:`h-6 w-6`,"aria-hidden":`true`})}),p&&(0,C.jsx)(mU,{label:`Next`,busy:u,onPress:()=>void a.next({}),children:(0,C.jsx)(JL,{className:`h-5 w-5`,"aria-hidden":`true`})})]}),h&&(0,C.jsxs)(`div`,{"data-testid":`media-volume`,className:`flex items-center gap-2`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":c.isMuted===!0?`Unmute`:`Mute`,title:c.isMuted===!0?`Unmute`:`Mute`,disabled:u,onClick:e=>{if(e.stopPropagation(),u||c.isMuted===null)return;let t=!c.isMuted;l({isMuted:t}),a.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`,u&&`opacity-40 cursor-not-allowed`),children:c.isMuted===!0?(0,C.jsx)(pR,{className:`h-4 w-4`,"aria-hidden":`true`}):(0,C.jsx)(fR,{className:`h-4 w-4`,"aria-hidden":`true`})}),(0,C.jsxs)(`label`,{className:`relative block flex-1`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Volume`}),(0,C.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:y,disabled:u,onChange:e=>{if(u)return;let t=Number(e.target.value);l({volumeLevel:t}),a.setVolume({volumeLevel:t})}}),(0,C.jsx)(`div`,{className:`pointer-events-none`,children:(0,C.jsx)(hz,{fraction:y/100})})]}),(0,C.jsxs)(`span`,{className:`w-9 text-right text-[11px] tabular-nums text-foreground-subtle`,children:[y,`%`]})]})]})}var gU={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`}},_U={home:`Home`,away:`Away`,night:`Night`,vacation:`Vacation`,custom_bypass:`Bypass`};function vU(e){return e.startsWith(`armed_`)}function yU(e){return e===`arming`||e===`disarming`}function bU({icon:e}){return e===`disarmed`?(0,C.jsx)(WL,{className:`h-8 w-8`,"aria-hidden":`true`}):e===`triggered`?(0,C.jsx)(HL,{className:`h-8 w-8`,"aria-hidden":`true`}):e===`pending`?(0,C.jsx)(GL,{className:`h-8 w-8`,"aria-hidden":`true`}):(0,C.jsx)(UL,{className:`h-8 w-8`,"aria-hidden":`true`})}function xU({label:e,active:t,busy:n,onSelect:r}){return(0,C.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 SU({state:e,availableModes:t,busy:n,onDisarm:r,onArm:a}){let o=vU(e),s=yU(e);return(0,C.jsxs)(`div`,{className:`flex items-stretch gap-1 rounded-lg border border-border bg-surface-subtle p-1`,children:[(0,C.jsx)(xU,{label:`Disarm`,active:!o&&!s,busy:n,onSelect:r}),t.map(t=>(0,C.jsx)(xU,{label:_U[t],active:!s&&e===`armed_${t}`,busy:n,onSelect:()=>a(t)},t))]})}function CU(e,t,n){let{cap:r,slice:a,available:o}=sz({trpc:e,deviceId:t,cap:e=>e.alarmPanel,slice:e=>e.state.alarmPanel}),{display:s,applyOptimistic:c}=bz(a,{enabled:n??!0}),l=!o;return{display:s,capPresent:r!==void 0,busy:l,handleDisarm:()=>{r===void 0||l||(c({state:`disarming`}),r.disarm({}))},handleArm:e=>{r===void 0||l||(c({state:`arming`}),r.arm({mode:e}))}}}function wU({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:a,busy:o,handleDisarm:s,handleArm:c}=CU(e,t,n);return!a||r===void 0?null:(0,C.jsx)(SU,{state:r.state,availableModes:r.availableModes,busy:o,onDisarm:s,onArm:c})}function TU({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:a,busy:o,handleDisarm:s,handleArm:c}=CU(e,t,n);if(!a||r===void 0)return null;let l=gU[r.state];return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,C.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`,l.colorClass),children:(0,C.jsx)(bU,{icon:l.icon})}),(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l.label})]}),(0,C.jsx)(SU,{state:r.state,availableModes:r.availableModes,busy:o,onDisarm:s,onArm:c})]})}function EU({children:e}){return(0,C.jsx)(`div`,{className:`flex flex-col items-stretch gap-3 rounded-lg border border-border bg-surface p-4`,children:e})}function DU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch});return n!==void 0}function OU({trpc:e,deviceId:t,features:n,optimistic:r}){return DU(e,t)?(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function kU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl});return n!==void 0}function AU({trpc:e,deviceId:t,features:n,optimistic:r}){return kU(e,t)?(0,C.jsx)(VV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function jU({trpc:e,deviceId:t,features:n,optimistic:r}){return DU(e,t)?(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,C.jsx)(HV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function MU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl});return n!==void 0}function NU({trpc:e,deviceId:t,features:n,optimistic:r}){return MU(e,t)?(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,C.jsx)(UV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function PU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl});return n!==void 0}function FU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(qV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function IU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(rH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function LU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(rH,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r}):null}function RU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer});return n!==void 0}function zU({trpc:e,deviceId:t,features:n,optimistic:r}){return RU(e,t)?(0,C.jsx)(vH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function BU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control});return n!==void 0}function VU({trpc:e,deviceId:t,features:n,optimistic:r}){return BU(e,t)?(0,C.jsx)(TH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function HU({trpc:e,deviceId:t,features:n,optimistic:r}){return BU(e,t)?(0,C.jsx)(EU,{children:(0,C.jsx)(TH,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r})}):null}var UU={cover:{InlineControl:wz,HeroCard:kz},valve:{InlineControl:VB,HeroCard:KB},humidifier:{InlineControl:YB,HeroCard:ZB},"water-heater":{InlineControl:tV,HeroCard:rV},switch:{InlineControl:OU,HeroCard:lU},light:{InlineControl:jU,HeroCard:aU},fan:{InlineControl:NU,HeroCard:cU},sensor:{InlineControl:Yz,HeroCard:iB},thermostat:{InlineControl:FU,HeroCard:LH},climate:{InlineControl:IU,HeroCard:LU},button:{InlineControl:gz,HeroCard:_z},update:{InlineControl:sB,HeroCard:cB},lock:{InlineControl:AU,HeroCard:WH},"media-player":{InlineControl:zU,HeroCard:hU},alarm:{InlineControl:wU,HeroCard:TU},control:{InlineControl:VU,HeroCard:HU},weather:{InlineControl:lV,HeroCard:mV},vacuum:{InlineControl:xB,HeroCard:CB},"lawn-mower":{InlineControl:PB,HeroCard:IB},image:{InlineControl:xV,HeroCard:SV},"pet-feeder":{InlineControl:LV,HeroCard:RV},dummy:{InlineControl:Az,HeroCard:jz}};Object.fromEntries(Object.values(W).map(e=>[e,UU[$m[e]]])),W.Cover,W.Valve,W.Thermostat,W.Climate,W.Control,W.Button,W.MediaPlayer,W.AlarmPanel,W.Lock,W.Vacuum,W.LawnMower,W.Humidifier,W.Switch,W.Siren,W.Light,W.Fan,W.WaterHeater,W.Sensor,W.Presence,W.EventEmitter,W.Notifier,W.Script,W.Automation,W.Camera,W.Hub,W.Update,W.Generic,W.Weather,W.Container,W.Image,W.PetFeeder,new Set(Object.values(W));var WU={[W.Camera]:{icon:II,label:`Camera`},[W.Hub]:{icon:ML,label:`Hub`},[W.Light]:{icon:hL,label:`Light`},[W.Siren]:{icon:KL,label:`Siren`},[W.Switch]:{icon:aR,label:`Switch`},[W.Sensor]:{icon:wI,label:`Sensor`},[W.Thermostat]:{icon:iR,label:`Thermostat`},[W.Climate]:{icon:TI,label:`Air conditioner`},[W.Button]:{icon:HI,label:`Button`},[W.EventEmitter]:{icon:bR,label:`Event Emitter`},[W.Update]:{icon:zL,label:`Update`},[W.Generic]:{icon:FI,label:`Generic`},[W.Notifier]:{icon:jI,label:`Notifier`},[W.Script]:{icon:VL,label:`Script`},[W.Automation]:{icon:vR,label:`Automation`},[W.Lock]:{icon:bL,label:`Lock`},[W.Cover]:{icon:MI,label:`Cover`},[W.Valve]:{icon:FL,label:`Valve`},[W.Humidifier]:{icon:mR,label:`Humidifier`},[W.WaterHeater]:{icon:OI,label:`Water heater`},[W.Fan]:{icon:rL,label:`Fan`},[W.MediaPlayer]:{icon:TL,label:`Media player`},[W.AlarmPanel]:{icon:HL,label:`Alarm panel`},[W.Control]:{icon:YL,label:`Control`},[W.Presence]:{icon:SL,label:`Presence`},[W.Weather]:{icon:JI,label:`Weather`},[W.Vacuum]:{icon:PI,label:`Vacuum`},[W.LawnMower]:{icon:oR,label:`Lawn mower`},[W.Container]:{icon:FI,label:`Container`},[W.Image]:{icon:pL,label:`Image`},[W.PetFeeder]:{icon:NI,label:`Pet feeder`}},GU={[G.Siren]:{icon:KL,label:`Siren`},[G.Floodlight]:{icon:hL,label:`Floodlight`},[G.Spotlight]:{icon:oL,label:`Spotlight`},[G.PirSensor]:{icon:RL,label:`PIR sensor`},[G.Chime]:{icon:jI,label:`Chime`},[G.Autotrack]:{icon:XI,label:`Auto-track`},[G.Nightvision]:{icon:EL,label:`Night vision`},[G.PrivacyMask]:{icon:nL,label:`Privacy mask`},[G.Doorbell]:{icon:ZI,label:`Doorbell`},[G.BinaryHelper]:{icon:aR,label:`Binary helper`},[G.MotionSensor]:{icon:cL,label:`Motion sensor`},[G.ContactSensor]:{icon:QI,label:`Contact sensor`},[G.LeakSensor]:{icon:eL,label:`Leak sensor`},[G.SmokeSensor]:{icon:EI,label:`Smoke sensor`},[G.COSensor]:{icon:_R,label:`CO sensor`},[G.GasSensor]:{icon:aL,label:`Gas sensor`},[G.TamperSensor]:{icon:HL,label:`Tamper sensor`},[G.VibrationSensor]:{icon:dR,label:`Vibration sensor`},[G.ConnectivitySensor]:{icon:gR,label:`Connectivity`},[G.SoundSensor]:{icon:fR,label:`Sound sensor`},[G.BinarySensor]:{icon:aR,label:`Binary sensor`},[G.TemperatureSensor]:{icon:iR,label:`Temperature`},[G.HumiditySensor]:{icon:tL,label:`Humidity`},[G.AmbientLightSensor]:{icon:nR,label:`Ambient light`},[G.PressureSensor]:{icon:lL,label:`Pressure`},[G.WindSensor]:{icon:_R,label:`Wind`},[G.RainSensor]:{icon:KI,label:`Rain`},[G.UvSensor]:{icon:tR,label:`UV index`},[G.SolarRadiationSensor]:{icon:rR,label:`Solar radiation`},[G.SoilMoistureSensor]:{icon:$L,label:`Soil moisture`},[G.PowerSensor]:{icon:bR,label:`Power`},[G.EnergySensor]:{icon:bR,label:`Energy`},[G.VoltageSensor]:{icon:bR,label:`Voltage`},[G.CurrentSensor]:{icon:bR,label:`Current`},[G.AirQualitySensor]:{icon:_R,label:`Air quality`},[G.BatterySensor]:{icon:lL,label:`Battery`},[G.NumericSensor]:{icon:uL,label:`Numeric sensor`},[G.EnumSensor]:{icon:_L,label:`Enum sensor`},[G.DateTimeSensor]:{icon:UI,label:`Date / time`},[G.GenericSensor]:{icon:lL,label:`Sensor`},[G.NumericControl]:{icon:YL,label:`Numeric control`},[G.SelectControl]:{icon:gL,label:`Select control`},[G.TextControl]:{icon:lR,label:`Text control`},[G.DateTimeControl]:{icon:UI,label:`Date / time control`},[G.MobilePushNotifier]:{icon:XL,label:`Mobile push`},[G.MessagingNotifier]:{icon:wL,label:`Messaging`},[G.EmailNotifier]:{icon:xL,label:`Email`},[G.GenericNotifier]:{icon:jI,label:`Notifier`}},KU=new Set(Object.values(W));new Set(Object.values(G));function qU(e){return KU.has(e)}var JU=WU[W.Generic];GU[G.GenericSensor];function YU(e){return qU(e)?WU[e]??JU:JU}Object.values(W).map(e=>{let t=YU(e);return{id:e,label:t.label,icon:t.icon}}),(0,S.createContext)(null),new Set([W.Sensor,W.Presence]),Object.freeze([]);var XU={face:`#a855f7`,plate:`#ec4899`};Object.freeze({...Object.fromEntries(Object.values(Kc).filter(e=>e.category===`detection`||e.kind===`motion`).map(e=>[e.kind,e.color])),...XU});var ZU=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()}},QU=class{constructor(e){this.generateIdentifier=e,this.kv=new ZU}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)}},$U=class extends QU{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 eW(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 tW(e,t){let n=eW(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 nW(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function rW(e,t){return e.indexOf(t)!==-1}function iW(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var aW=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return tW(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},oW=e=>Object.prototype.toString.call(e).slice(8,-1),sW=e=>e===void 0,cW=e=>e===null,lW=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,uW=e=>lW(e)&&Object.keys(e).length===0,dW=e=>Array.isArray(e),fW=e=>typeof e==`string`,pW=e=>typeof e==`number`&&!isNaN(e),mW=e=>typeof e==`boolean`,hW=e=>e instanceof RegExp,gW=e=>e instanceof Map,_W=e=>e instanceof Set,vW=e=>oW(e)===`Symbol`,yW=e=>e instanceof Date&&!isNaN(e.valueOf()),bW=e=>e instanceof Error,xW=e=>typeof e==`number`&&isNaN(e),SW=e=>mW(e)||cW(e)||sW(e)||pW(e)||fW(e)||vW(e),CW=e=>typeof e==`bigint`,wW=e=>e===1/0||e===-1/0,TW=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),EW=e=>e instanceof URL,DW=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),OW=e=>e.map(String).map(DW).join(`.`),kW=(e,t)=>{let n=[],r=``;for(let a=0;a<e.length;a++){let o=e.charAt(a);if(!t&&o===`\\`){let t=e.charAt(a+1);if(t===`\\`){r+=`\\`,a++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(o===`\\`&&e.charAt(a+1)===`.`){r+=`.`,a++;continue}if(o===`.`){n.push(r),r=``;continue}r+=o}let a=r;return n.push(a),n};function AW(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var jW=[AW(sW,`undefined`,()=>null,()=>void 0),AW(CW,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),AW(yW,`Date`,e=>e.toISOString(),e=>new Date(e)),AW(bW,`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}),AW(hW,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),AW(_W,`set`,e=>[...e.values()],e=>new Set(e)),AW(gW,`map`,e=>[...e.entries()],e=>new Map(e)),AW(e=>xW(e)||wW(e),`number`,e=>xW(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),AW(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),AW(EW,`URL`,e=>e.toString(),e=>new URL(e))];function MW(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var NW=MW((e,t)=>vW(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}),PW=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),FW=MW(TW,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=PW[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function IW(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var LW=MW(IW,(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)}),RW=MW((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)}),zW=[LW,NW,RW,FW],BW=(e,t)=>{let n=iW(zW,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=iW(jW,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},VW={};jW.forEach(e=>{VW[e.annotation]=e});var HW=(e,t,n)=>{if(dW(t))switch(t[0]){case`symbol`:return NW.untransform(e,t,n);case`class`:return LW.untransform(e,t,n);case`custom`:return RW.untransform(e,t,n);case`typed-array`:return FW.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=VW[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},UW=(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 WW(e){if(rW(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(rW(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(rW(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var GW=(e,t)=>{WW(t);for(let n=0;n<t.length;n++){let r=t[n];if(_W(e))e=UW(e,+r);else if(gW(e)){let a=+r,o=+t[++n]==0?`key`:`value`,s=UW(e,a);switch(o){case`key`:e=s;break;case`value`:e=e.get(s);break}}else e=e[r]}return e},KW=(e,t,n)=>{if(WW(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(dW(r)){let e=+n;r=r[e]}else if(lW(r))r=r[n];else if(_W(r)){let e=+n;r=UW(r,e)}else if(gW(r)){if(e===t.length-2)break;let a=+n,o=+t[++e]==0?`key`:`value`,s=UW(r,a);switch(o){case`key`:r=s;break;case`value`:r=r.get(s);break}}}let a=t[t.length-1];if(dW(r)?r[+a]=n(r[+a]):lW(r)&&(r[a]=n(r[a])),_W(r)){let e=UW(r,+a),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(gW(r)){let e=+t[t.length-2],o=UW(r,e);switch(+a==0?`key`:`value`){case`key`:{let e=n(o);r.set(e,r.get(o)),e!==o&&r.delete(o);break}case`value`:r.set(o,n(r.get(o)));break}}return e},qW=e=>e<1;function JW(e,t,n,r=[]){if(!e)return;let a=qW(n);if(!dW(e)){nW(e,(e,o)=>JW(e,t,n,[...r,...kW(o,a)]));return}let[o,s]=e;s&&nW(s,(e,o)=>{JW(e,t,n,[...r,...kW(o,a)])}),t(o,r)}function YW(e,t,n,r){return JW(t,(t,n)=>{e=KW(e,n,e=>HW(e,t,r))},n),e}function XW(e,t,n){let r=qW(n);function a(t,n){let a=GW(e,kW(n,r));t.map(e=>kW(e,r)).forEach(t=>{e=KW(e,t,()=>a)})}if(dW(t)){let[n,o]=t;n.forEach(t=>{e=KW(e,kW(t,r),()=>e)}),o&&nW(o,a)}else nW(t,a);return e}var ZW=(e,t)=>lW(e)||dW(e)||gW(e)||_W(e)||bW(e)||IW(e,t);function QW(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function $W(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[a,...o]=e;a.length===0?r=o.map(OW):n[OW(a)]=o.map(OW)}),r?uW(n)?[r]:[r,n]:uW(n)?void 0:n}var eG=(e,t,n,r,a=[],o=[],s=new Map)=>{let c=SW(e);if(!c){QW(e,a,t);let n=s.get(e);if(n)return r?{transformedValue:null}:n}if(!ZW(e,n)){let t=BW(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return c||s.set(e,r),r}if(rW(o,e))return{transformedValue:null};let l=BW(e,n),u=l?.value??e,d=dW(u)?[]:{},f={};nW(u,(c,l)=>{if(l===`__proto__`||l===`constructor`||l===`prototype`)throw Error(`Detected property ${l}. This is a prototype pollution risk, please remove it from your object.`);let u=eG(c,t,n,r,[...a,l],[...o,e],s);d[l]=u.transformedValue,dW(u.annotations)?f[DW(l)]=u.annotations:lW(u.annotations)&&nW(u.annotations,(e,t)=>{f[DW(l)+`.`+t]=e})});let p=uW(f)?{transformedValue:d,annotations:l?[l.type]:void 0}:{transformedValue:d,annotations:l?[l.type,f]:f};return c||s.set(e,p),p};function tG(e){return Object.prototype.toString.call(e).slice(8,-1)}function nG(e){return tG(e)===`Array`}function rG(e){if(tG(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function iG(e,t,n,r,a){let o={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;o===`enumerable`&&(e[t]=n),a&&o===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function aG(e,t={}){if(nG(e))return e.map(e=>aG(e,t));if(!rG(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||nG(t.props)&&!t.props.includes(r))return n;let a=e[r];return iG(n,r,aG(a,t),e,t.nonenumerable),n},{})}var oG=class{constructor({dedupe:e=!1}={}){this.classRegistry=new $U,this.symbolRegistry=new QU(e=>e.description??``),this.customTransformerRegistry=new aW,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=eG(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let a=$W(t,this.dedupe);return a&&(r.meta={...r.meta,referentialEqualities:a}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,a=t?.inPlace?n:aG(n);return r?.values&&(a=YW(a,r.values,r.v??0,this)),r?.referentialEqualities&&(a=XW(a,r.referentialEqualities,r.v??0)),a}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)}};oG.defaultInstance=new oG,oG.serialize=oG.defaultInstance.serialize.bind(oG.defaultInstance),oG.deserialize=oG.defaultInstance.deserialize.bind(oG.defaultInstance),oG.stringify=oG.defaultInstance.stringify.bind(oG.defaultInstance),oG.parse=oG.defaultInstance.parse.bind(oG.defaultInstance),oG.registerClass=oG.defaultInstance.registerClass.bind(oG.defaultInstance),oG.registerSymbol=oG.defaultInstance.registerSymbol.bind(oG.defaultInstance),oG.registerCustom=oG.defaultInstance.registerCustom.bind(oG.defaultInstance),oG.allowErrorProps=oG.defaultInstance.allowErrorProps.bind(oG.defaultInstance),oG.serialize,oG.deserialize,oG.stringify,oG.parse,oG.registerClass,oG.registerCustom,oG.registerSymbol,oG.allowErrorProps,(0,S.createContext)(null),SM(`camstack:custom-field-renderers`,{}),SM(`camstack:device-context`,null),SM(`camstack:widget-registry`,null);function sG({title:e,icon:t,headerRight:n,collapsible:r=!1,defaultOpen:a=!0,bodyClassName:o=`p-3`,children:s}){let[c,l]=(0,S.useState)(a),u=!r||c,d=(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`span`,{className:`flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-foreground`,children:[t,e]}),r?c?(0,C.jsx)(RI,{className:`h-3.5 w-3.5 text-foreground-subtle`}):(0,C.jsx)(zI,{className:`h-3.5 w-3.5 text-foreground-subtle`}):n]}),f=`px-4 py-2 flex items-center justify-between ${u?`border-b border-border`:``}`;return(0,C.jsxs)(`div`,{className:`rounded-lg border border-border bg-surface overflow-hidden`,children:[r?(0,C.jsx)(`button`,{type:`button`,onClick:()=>l(e=>!e),className:`w-full text-left ${f}`,children:d}):(0,C.jsx)(`div`,{className:f,children:d}),u?(0,C.jsx)(`div`,{className:o,children:s}):null]})}SM(`camstack:vod-playback`,{request:null,play:()=>{},clear:()=>{}}),SM(`camstack:recorded-playback`,{bindControlChannel:null,channelOpen:!1,mode:`live`,positionMs:null,send:()=>!1}),(0,S.lazy)(()=>fs(()=>import(`./MotionZonesSettings-NcxxQN8r-Bw6Nlg-Q.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1]),import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./PrivacyMaskSettings-APgPLF7p-BLF9QKG8.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([2,1]),import.meta.url));var cG=Object.defineProperty,lG=Object.getOwnPropertySymbols,uG=Object.prototype.hasOwnProperty,dG=Object.prototype.propertyIsEnumerable,fG=(e,t,n)=>t in e?cG(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,pG=(e,t)=>{for(var n in t||={})uG.call(t,n)&&fG(e,n,t[n]);if(lG)for(var n of lG(t))dG.call(t,n)&&fG(e,n,t[n]);return e},mG=(e,t)=>{var n={};for(var r in e)uG.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&lG)for(var r of lG(e))t.indexOf(r)<0&&dG.call(e,r)&&(n[r]=e[r]);return n},hG;(e=>{let t=class t{constructor(e,n,r,o){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(o<-1||o>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let s=[];for(let e=0;e<this.size;e++)s.push(!1);for(let e=0;e<this.size;e++)this.modules.push(s.slice()),this.isFunction.push(s.slice());this.drawFunctionPatterns();let c=this.addEccAndInterleave(r);if(this.drawCodewords(c),o==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(o=t,e=n),this.applyMask(t)}}a(0<=o&&o<=7),this.mask=o,this.applyMask(o),this.drawFormatBits(o),this.isFunction=[]}static encodeText(n,r){let a=e.QrSegment.makeSegments(n);return t.encodeSegments(a,r)}static encodeBinary(n,r){let a=e.QrSegment.makeBytes(n);return t.encodeSegments([a],r)}static encodeSegments(e,r,o=1,c=40,l=-1,u=!0){if(!(t.MIN_VERSION<=o&&o<=c&&c<=t.MAX_VERSION)||l<-1||l>7)throw RangeError(`Invalid value`);let d,f;for(d=o;;d++){let n=t.getNumDataCodewords(d,r)*8,a=s.getTotalBits(e,d);if(a<=n){f=a;break}if(d>=c)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])u&&f<=t.getNumDataCodewords(d,e)*8&&(r=e);let p=[];for(let t of e){n(t.mode.modeBits,4,p),n(t.numChars,t.mode.numCharCountBits(d),p);for(let e of t.getData())p.push(e)}a(p.length==f);let m=t.getNumDataCodewords(d,r)*8;a(p.length<=m),n(0,Math.min(4,m-p.length),p),n(0,(8-p.length%8)%8,p),a(p.length%8==0);for(let e=236;p.length<m;e^=253)n(e,8,p);let h=[];for(;h.length*8<p.length;)h.push(0);return p.forEach((e,t)=>h[t>>>3]|=e<<7-(t&7)),new t(d,r,h,l)}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 o=(t<<10|n)^21522;a(o>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(o,e));this.setFunctionModule(8,7,r(o,6)),this.setFunctionModule(8,8,r(o,7)),this.setFunctionModule(7,8,r(o,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(o,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(o,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(o,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;a(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),a=this.size-11+e%3,o=Math.floor(e/3);this.setFunctionModule(a,o,n),this.setFunctionModule(o,a,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let a=Math.max(Math.abs(r),Math.abs(n)),o=e+r,s=t+n;0<=o&&o<this.size&&0<=s&&s<this.size&&this.setFunctionModule(o,s,a!=2&&a!=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 o=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],s=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],c=Math.floor(t.getNumRawDataModules(n)/8),l=o-c%o,u=Math.floor(c/o),d=[],f=t.reedSolomonComputeDivisor(s);for(let n=0,r=0;n<o;n++){let a=e.slice(r,r+u-s+(n<l?0:1));r+=a.length;let o=t.reedSolomonComputeRemainder(a,f);n<l&&a.push(0),d.push(a.concat(o))}let p=[];for(let e=0;e<d[0].length;e++)d.forEach((t,n)=>{(e!=u-s||n>=l)&&p.push(t[e])});return a(p.length==c),p}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 a=0;a<this.size;a++)for(let o=0;o<2;o++){let s=t-o,c=t+1&2?a:this.size-1-a;!this.isFunction[c][s]&&n<e.length*8&&(this.modules[c][s]=r(e[n>>>3],7-(n&7)),n++)}}a(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,a=0,o=[0,0,0,0,0,0,0];for(let s=0;s<this.size;s++)this.modules[n][s]==r?(a++,a==5?e+=t.PENALTY_N1:a>5&&e++):(this.finderPenaltyAddHistory(a,o),r||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),r=this.modules[n][s],a=1);e+=this.finderPenaltyTerminateAndCount(r,a,o)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,a=0,o=[0,0,0,0,0,0,0];for(let s=0;s<this.size;s++)this.modules[s][n]==r?(a++,a==5?e+=t.PENALTY_N1:a>5&&e++):(this.finderPenaltyAddHistory(a,o),r||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),r=this.modules[s][n],a=1);e+=this.finderPenaltyTerminateAndCount(r,a,o)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let a=this.modules[n][r];a==this.modules[n][r+1]&&a==this.modules[n+1][r]&&a==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,o=Math.ceil(Math.abs(n*20-r*10)/r)-1;return a(0<=o&&o<=9),e+=o*t.PENALTY_N4,a(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 a(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 a=0;a<e;a++){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 a of e){let e=a^r.shift();r.push(0),n.forEach((n,a)=>r[a]^=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 a(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];a(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 a(e){if(!e)throw Error(`Assertion error`)}let o=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 a=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+a),10),a*3+1,r),e+=a}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=[],a;for(a=0;a+2<=t.length;a+=2){let o=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a))*45;o+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a+1)),n(o,11,r)}return a<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a)),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}};o.NUMERIC_REGEX=/^[0-9]*$/,o.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,o.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let s=o;e.QrSegment=o})(hG||={}),(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||={})})(hG||={}),(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||={})})(hG||={});var gG=hG,_G={L:gG.QrCode.Ecc.LOW,M:gG.QrCode.Ecc.MEDIUM,Q:gG.QrCode.Ecc.QUARTILE,H:gG.QrCode.Ecc.HIGH},vG=128,yG=`L`,bG=`#FFFFFF`,xG=`#000000`,SG=!1,CG=1,wG=4,TG=0,EG=.1;function DG(e,t=0){let n=[];return e.forEach(function(e,r){let a=null;e.forEach(function(o,s){if(!o&&a!==null){n.push(`M${a+t} ${r+t}h${s-a}v1H${a+t}z`),a=null;return}if(s===e.length-1){if(!o)return;a===null?n.push(`M${s+t},${r+t} h1v1H${s+t}z`):n.push(`M${a+t},${r+t} h${s+1-a}v1H${a+t}z`);return}o&&a===null&&(a=s)})}),n.join(``)}function OG(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 kG(e,t,n,r){if(r==null)return null;let a=e.length+n*2,o=Math.floor(t*EG),s=a/t,c=(r.width||o)*s,l=(r.height||o)*s,u=r.x==null?e.length/2-c/2:r.x*s,d=r.y==null?e.length/2-l/2:r.y*s,f=r.opacity==null?1:r.opacity,p=null;if(r.excavate){let e=Math.floor(u),t=Math.floor(d);p={x:e,y:t,w:Math.ceil(c+u-e),h:Math.ceil(l+d-t)}}let m=r.crossOrigin;return{x:u,y:d,h:l,w:c,excavation:p,opacity:f,crossOrigin:m}}function AG(e,t){return t==null?e?wG:TG:Math.max(Math.floor(t),0)}function jG({value:e,level:t,minVersion:n,includeMargin:r,marginSize:a,imageSettings:o,size:s,boostLevel:c}){let l=S.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...gG.QrSegment.makeSegments(t)),e),[]);return gG.QrCode.encodeSegments(r,_G[t],n,void 0,void 0,c)},[e,t,n,c]),{cells:u,margin:d,numCells:f,calculatedImageSettings:p}=S.useMemo(()=>{let e=l.getModules(),t=AG(r,a);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:kG(e,s,t,o)}},[l,s,o,r,a]);return{qrcode:l,margin:d,cells:u,numCells:f,calculatedImageSettings:p}}var MG=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),NG=S.forwardRef(function(e,t){let n=e,{value:r,size:a=vG,level:o=yG,bgColor:s=bG,fgColor:c=xG,includeMargin:l=SG,minVersion:u=CG,boostLevel:d,marginSize:f,imageSettings:p}=n,m=mG(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:h}=m,g=mG(m,[`style`]),_=p?.src,v=S.useRef(null),y=S.useRef(null),b=S.useCallback(e=>{v.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[x,C]=S.useState(!1),{margin:w,cells:T,numCells:E,calculatedImageSettings:D}=jG({value:r,level:o,minVersion:u,boostLevel:d,includeMargin:l,marginSize:f,imageSettings:p,size:a});S.useEffect(()=>{if(v.current!=null){let e=v.current,t=e.getContext(`2d`);if(!t)return;let n=T,r=y.current,o=D!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;o&&D.excavation!=null&&(n=OG(T,D.excavation));let l=window.devicePixelRatio||1;e.height=e.width=a*l;let u=a/E*l;t.scale(u,u),t.fillStyle=s,t.fillRect(0,0,E,E),t.fillStyle=c,MG?t.fill(new Path2D(DG(n,w))):T.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+w,n+w,1,1)})}),D&&(t.globalAlpha=D.opacity),o&&t.drawImage(r,D.x+w,D.y+w,D.w,D.h)}}),S.useEffect(()=>{C(!1)},[_]);let ee=pG({height:a,width:a},h),te=null;return _!=null&&(te=S.createElement(`img`,{src:_,key:_,style:{display:`none`},onLoad:()=>{C(!0)},ref:y,crossOrigin:D?.crossOrigin})),S.createElement(S.Fragment,null,S.createElement(`canvas`,pG({style:ee,height:a,width:a,ref:b,role:`img`},g)),te)});NG.displayName=`QRCodeCanvas`;var PG=S.forwardRef(function(e,t){let n=e,{value:r,size:a=vG,level:o=yG,bgColor:s=bG,fgColor:c=xG,includeMargin:l=SG,minVersion:u=CG,boostLevel:d,title:f,marginSize:p,imageSettings:m}=n,h=mG(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:g,cells:_,numCells:v,calculatedImageSettings:y}=jG({value:r,level:o,minVersion:u,boostLevel:d,includeMargin:l,marginSize:p,imageSettings:m,size:a}),b=_,x=null;m!=null&&y!=null&&(y.excavation!=null&&(b=OG(_,y.excavation)),x=S.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 C=DG(b,g);return S.createElement(`svg`,pG({height:a,width:a,viewBox:`0 0 ${v} ${v}`,ref:t,role:`img`},h),!!f&&S.createElement(`title`,null,f),S.createElement(`path`,{fill:s,d:`M0,0 h${v}v${v}H0z`,shapeRendering:`crispEdges`}),S.createElement(`path`,{fill:c,d:C,shapeRendering:`crispEdges`}),x)});PG.displayName=`QRCodeSVG`;function FG(){return typeof window>`u`?!1:window.matchMedia(`(hover: none) and (pointer: coarse)`).matches||typeof navigator<`u`&&navigator.maxTouchPoints>0||`ontouchstart`in window}function IG(e,t,n){let r=0;for(let a=0;a<8;a++)for(let o=0;o<8;o++){let s=Math.min(t-1,Math.floor((o+.5)/8*t)),c=Math.min(n-1,Math.floor((a+.5)/8*n)),{data:l}=e.getImageData(s,c,1,1);.2126*(l[0]??0)+.7152*(l[1]??0)+.0722*(l[2]??0)>12&&r++}return r<=1}function LG(e){let t={};if(typeof window<`u`){if(e){let n=e.getBoundingClientRect();n.width>0&&n.height>0&&(t.viewportWidth=Math.round(n.width),t.viewportHeight=Math.round(n.height))}t.viewportWidth===void 0&&(t.viewportWidth=window.innerWidth,t.viewportHeight=window.innerHeight),t.devicePixelRatio=window.devicePixelRatio||1;let n=navigator.connection;n?.downlink&&n.downlink>0&&(t.downlinkMbps=n.downlink)}return t}var RG=1500,zG=15e3,BG=40,VG=8e3;function HG({serverUrl:e,streamKey:t,label:n,autoPlay:r=!0,muted:a=!0,showControls:o=!0,showStats:s=!1,onPlaybackStats:c,onClientNetworkSample:l,onConnectTiming:u,className:d=``,onStateChange:f,onError:p,overlay:m,createSession:h,sendAnswer:g,handleOffer:_,getIceServers:v,addIceCandidate:y,getIceCandidates:b,closeSession:x,getSessionState:w,reoffer:T,posterUrl:E,hintsOverride:D,reconnectSignal:ee,onControlChannel:te}){let O=(0,S.useRef)(null),ne=(0,S.useRef)(null),re=(0,S.useRef)(null),ie=(0,S.useRef)(new Set),ae=(0,S.useRef)(null),oe=(0,S.useRef)(null),se=(0,S.useRef)(0),k=(0,S.useRef)(!0),A=(0,S.useRef)(te);A.current=te;let ce=(0,S.useRef)(null),le=(0,S.useRef)(null),ue=(0,S.useRef)(0),de=(0,S.useRef)(!1),j=(0,S.useRef)(async()=>{}),[M,fe]=(0,S.useState)(`idle`),[pe,me]=(0,S.useState)(``),[he,ge]=(0,S.useState)(a),[_e,N]=(0,S.useState)(!1),[ve,ye]=(0,S.useState)(!1),be=FG(),[xe,Se]=(0,S.useState)(!0),Ce=(0,S.useRef)(null),we=(0,S.useRef)(!1);(g||h)&&(we.current=!0);let Te=we.current,Ee=(0,S.useRef)(!1);_&&(Ee.current=!0);let De=Ee.current,[Oe,ke]=(0,S.useState)(!1),Ae=(0,S.useRef)(null),[je,Me]=(0,S.useState)(null),[Ne,Pe]=(0,S.useState)(!1),Fe=(0,S.useCallback)(()=>{let e=O.current;if(!(!e||e.readyState<2||!e.videoWidth||!e.videoHeight))try{let t=document.createElement(`canvas`);t.width=e.videoWidth,t.height=e.videoHeight;let n=t.getContext(`2d`);if(!n||(n.drawImage(e,0,0),IG(n,t.width,t.height)))return;Ae.current=t.toDataURL(`image/jpeg`,.6)}catch{}},[]),Ie=(0,S.useCallback)(e=>{fe(e),e===`playing`&&ke(!0),f?.(e)},[f]),Le=(0,S.useCallback)(()=>{if(ae.current?.abort(),ae.current=null,oe.current&&=(clearTimeout(oe.current),null),le.current&&=(clearTimeout(le.current),null),ce.current=null,de.current=!1,ue.current=0,re.current&&=(re.current.close(),null),x&&ie.current.size>0){for(let e of ie.current)x(e).catch(()=>{});ie.current.clear()}},[x]),Re=(0,S.useCallback)(()=>{ae.current?.abort(),ae.current=null,oe.current&&=(clearTimeout(oe.current),null),le.current&&=(clearTimeout(le.current),null),ce.current=null,de.current=!1,ue.current=0},[]),ze=1e3,Be=(0,S.useCallback)(e=>{if(!w||!T)return;le.current&&=(clearTimeout(le.current),null);let t=async()=>{if(k.current&&ce.current===e){if(!de.current)try{let{pendingRenegotiation:t}=await w(e);if(k.current&&ce.current===e&&t&&t.epoch>ue.current&&!de.current){ue.current=t.epoch,await j.current(e,t.target);return}}catch{}!k.current||ce.current!==e||(le.current=setTimeout(()=>{t()},ze))}};le.current=setTimeout(()=>{t()},ze)},[w,T]),Ve=(0,S.useCallback)(async(e=!1)=>{if(!k.current||!h||!g)return;let t=e?re.current:null,n=e?new Set(ie.current):null;e?Re():Le(),Ie(`connecting`);let r=new AbortController;ae.current=r;try{let{sessionId:a,sdpOffer:o,iceServers:s}=await h({...LG(ne.current),...D});if(ie.current.add(a),!k.current||r.signal.aborted){x?.(a).catch(()=>{}),ie.current.delete(a);return}let c=new RTCPeerConnection({iceServers:[...s??[],{urls:`stun:stun.l.google.com:19302`}]});e||(re.current=c);let l=new MediaStream,u=!1,d=()=>{if(!(u||!k.current)){if(u=!0,re.current=c,O.current&&(O.current.srcObject=l,O.current.play().catch(()=>{})),t&&t!==c)try{t.close()}catch{}if(n)for(let e of n)ie.current.delete(e),x?.(e).catch(()=>{})}};c.ontrack=t=>{if(console.debug(`[WebRTC] ontrack`,t.track.kind,t.track.readyState),l.addTrack(t.track),e){d();return}O.current&&(O.current.srcObject=l,O.current.play().catch(()=>{}))},c.oniceconnectionstatechange=()=>{if(!k.current)return;let t=c.iceConnectionState;if(console.debug(`[WebRTC] ICE state:`,t),t===`connected`||t===`completed`)se.current=0,e&&d(),Ie(`playing`),O.current?.paused&&(console.debug(`[WebRTC] video was paused at ICE connected — calling play()`),O.current.play().catch(()=>{}));else if(t===`failed`||t===`disconnected`||t===`closed`){if(e&&!u)try{c.close()}catch{}Ie(`disconnected`),Ke()}},c.onicecandidateerror=e=>{console.debug(`[WebRTC] ICE candidate error:`,e)},console.debug(`[WebRTC] Setting remote description (server offer)...`),await c.setRemoteDescription({type:`offer`,sdp:o});let f=await c.createAnswer();if(await c.setLocalDescription(f),console.debug(`[WebRTC] Local description set, waiting for ICE gathering...`),await WG(c),!k.current)return;let p=(c.localDescription?.sdp??``).split(`
|
|
111
|
-
`).filter(e=>e.startsWith(`a=candidate:`)).length;console.debug(`[WebRTC] Sending answer to server`,{localCandidates:p,sessionId:a.slice(0,8)}),await g(a,c.localDescription?.sdp??``),console.debug(`[WebRTC] Answer sent successfully`);let m=c,_=()=>{let e=m.connectionState;if(e===`closed`||e===`failed`)return;let t=O.current;t&&t.readyState===0&&console.log(`[WebRTC] no video data yet (ice=${m.iceConnectionState})`)};setTimeout(_,3e3),setTimeout(_,8e3)}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}},[e,t,h,g,Le,Re,x,Ie,p,D]),He=(0,S.useCallback)(async()=>{if(k.current){Le(),Ie(`connecting`);try{let n=new RTCPeerConnection({iceServers:[{urls:`stun:stun.l.google.com:19302`}]});re.current=n,n.addTransceiver(`video`,{direction:`recvonly`}),n.addTransceiver(`audio`,{direction:`recvonly`});let r=new MediaStream;n.ontrack=e=>{r.addTrack(e.track),O.current&&(O.current.srcObject=r,O.current.play().catch(()=>{}))},n.oniceconnectionstatechange=()=>{if(!k.current)return;let e=n.iceConnectionState;e===`connected`||e===`completed`?(se.current=0,Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})):(e===`failed`||e===`disconnected`||e===`closed`)&&(Ie(`disconnected`),Ke())};let a=await n.createOffer();if(await n.setLocalDescription(a),await WG(n),!k.current)return;let o=`${e}/api/webrtc?src=${encodeURIComponent(t)}`,s=await fetch(o,{method:`POST`,headers:{"Content-Type":`application/sdp`},body:n.localDescription?.sdp??``});if(!s.ok)throw Error(`WHEP ${s.status}: ${s.statusText}`);let c=await s.text();await n.setRemoteDescription({type:`answer`,sdp:c})}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}}},[e,t,Le,Ie,p]),Ue=(0,S.useCallback)(async(e=!1)=>{if(!k.current||!_)return;let n=e?re.current:null,r=e?new Set(ie.current):null;e?Re():Le(),Ie(`connecting`);let a=new AbortController;ae.current=a;let o=performance.now(),s=()=>Math.round(performance.now()-o),c={};try{let o=await v?.();if(c.iceServersMs=s(),!k.current||a.signal.aborted)return;let l=new RTCPeerConnection({iceServers:[...o??[],{urls:`stun:stun.l.google.com:19302`}]});e||(re.current=l);let d=new MediaStream,f=!1,p=()=>{if(!(f||!k.current)){if(f=!0,re.current=l,O.current&&(O.current.srcObject=d,O.current.play().catch(()=>{})),n&&n!==l)try{n.close()}catch{}if(r)for(let e of r)ie.current.delete(e),x?.(e).catch(()=>{})}};l.ontrack=t=>{if(c.firstTrackMs===void 0&&(c.firstTrackMs=s()),console.debug(`[WebRTC] ontrack (client-offer)`,t.track.kind,t.track.readyState),d.addTrack(t.track),e){p();return}O.current&&(O.current.srcObject=d,O.current.play().catch(()=>{}))};let m=!1;l.oniceconnectionstatechange=()=>{if(!k.current)return;let n=l.iceConnectionState;if(console.debug(`[WebRTC] ICE state (client-offer):`,n),n===`connected`||n===`completed`){if(!m){m=!0,c.iceConnectedMs=s(),console.info(`[WebRTC timing] client-offer connected`,{streamKey:t,...c}),u?.({...c});let e=O.current;e&&`requestVideoFrameCallback`in e&&(e.requestVideoFrameCallback(()=>{c.firstFrameMs=s(),console.info(`[WebRTC timing] first decoded frame`,{streamKey:t,firstFrameMs:c.firstFrameMs}),u?.({...c})}),setTimeout(()=>{k.current&&c.firstFrameMs===void 0&&console.warn(`[WebRTC timing] NO decoded frame (stalled)`,{streamKey:t,sinceIceConnectedMs:s()-(c.iceConnectedMs??0),iceConnectedMs:c.iceConnectedMs,firstTrackMs:c.firstTrackMs})},VG))}se.current=0,e&&p(),Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})}else if(n===`failed`||n===`disconnected`||n===`closed`){if(e&&!f)try{l.close()}catch{}Ie(`disconnected`),Ke()}};let h=null,g=[];if(l.onicecandidate=e=>{if(!e.candidate)return;let t=e.candidate.toJSON();h&&y?y(h,t).catch(()=>{}):g.push(t)},l.addTransceiver(`video`,{direction:`recvonly`}),l.addTransceiver(`audio`,{direction:`recvonly`}),A.current){let e=l.createDataChannel(`camstack-control`);A.current(e)}let S=await l.createOffer();if(c.offerCreatedMs=s(),await l.setLocalDescription(S),c.localSetMs=s(),!k.current||a.signal.aborted)return;let C={...LG(ne.current),...D},w=s(),{sessionId:T,sdpAnswer:E}=await _(l.localDescription?.sdp??S.sdp??``,void 0,C);if(c.signalingRttMs=s()-w,h=T,ie.current.add(T),ce.current=T,!k.current||a.signal.aborted){x?.(T).catch(()=>{}),ie.current.delete(T);return}if(y)for(let e of g)y(T,e).catch(()=>{});if(g.length=0,await l.setRemoteDescription({type:`answer`,sdp:E}),c.answerSetMs=s(),console.debug(`[WebRTC] Client-offer answer set (trickle)`,{sessionId:T.slice(0,8)}),b){let e=new Set,t=Date.now(),n=async()=>{if(!(!k.current||a.signal.aborted)&&!(l.connectionState===`closed`||l.signalingState===`closed`)){try{let{candidates:n,done:r}=await b(T);for(let t of n){let n=t.candidate??``;n&&!e.has(n)&&(e.add(n),l.addIceCandidate(new RTCIceCandidate(t)).catch(()=>{}))}let a=l.iceConnectionState;if(r||Date.now()-t>1e4||a===`connected`||a===`completed`)return}catch{}setTimeout(()=>{n()},200)}};n()}Be(T)}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}},[_,v,y,b,x,Le,Re,Ie,p,Be,D]);j.current=(0,S.useCallback)(async(e,t)=>{let n=T;if(!k.current||!n)return;let r=re.current;de.current=!0;try{let a=await v?.();if(!k.current)return;let o=new RTCPeerConnection({iceServers:[...a??[],{urls:`stun:stun.l.google.com:19302`}]}),s=new MediaStream,c=!1,l=!1,u=null,d,f,p=()=>{f!==void 0&&(clearTimeout(f),f=void 0);let e=u;if(u=null,e){d!==void 0&&typeof e.cancelVideoFrameCallback==`function`&&e.cancelVideoFrameCallback(d),e.removeEventListener(`loadeddata`,m);try{e.srcObject=null}catch{}e.remove()}};function m(){if(c||!k.current){p();return}c=!0,re.current=o,O.current&&(O.current.srcObject=s,O.current.play().catch(()=>{})),r&&r!==o&&r.close(),p()}let h=()=>{if(l||c||!k.current)return;if(l=!0,typeof document>`u`){m();return}let e=document.createElement(`video`);e.muted=!0,e.playsInline=!0,e.autoplay=!0,e.style.cssText=`position:absolute;left:-9999px;top:0;width:1px;height:1px;opacity:0;pointer-events:none;`,e.srcObject=s,u=e,(ne.current??document.body).appendChild(e),e.play().catch(()=>{}),typeof e.requestVideoFrameCallback==`function`&&(d=e.requestVideoFrameCallback(()=>m())),e.addEventListener(`loadeddata`,m,{once:!0}),f=setTimeout(()=>m(),1800)};o.ontrack=e=>{console.debug(`[WebRTC] ontrack (reoffer)`,e.track.kind,e.track.readyState),s.addTrack(e.track),h()},o.oniceconnectionstatechange=()=>{if(!k.current)return;let e=o.iceConnectionState;console.debug(`[WebRTC] ICE state (reoffer):`,e),e===`connected`||e===`completed`?(se.current=0,h(),Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})):(e===`failed`||e===`closed`)&&(p(),!c&&e===`failed`&&o.close(),Ie(`disconnected`),Ke())};let g=null,_=[];if(o.onicecandidate=e=>{if(!e.candidate)return;let t=e.candidate.toJSON();g&&y?y(g,t).catch(()=>{}):_.push(t)},o.addTransceiver(`video`,{direction:`recvonly`}),o.addTransceiver(`audio`,{direction:`recvonly`}),A.current){let e=o.createDataChannel(`camstack-control`);A.current(e)}let x=await o.createOffer();if(await o.setLocalDescription(x),!k.current){o.close();return}let S={...LG(ne.current),...D},{sessionId:C,sdpAnswer:w}=await n(e,o.localDescription?.sdp??x.sdp??``,t,S);if(!k.current){o.close();return}if(g=C,ie.current.add(C),ce.current=C,y)for(let e of _)y(C,e).catch(()=>{});if(_.length=0,await o.setRemoteDescription({type:`answer`,sdp:w}),b){let e=new Set,t=Date.now(),n=async()=>{if(k.current&&!(o.connectionState===`closed`||o.signalingState===`closed`)){try{let{candidates:n,done:r}=await b(C);for(let t of n){let n=t.candidate??``;n&&!e.has(n)&&(e.add(n),o.addIceCandidate(new RTCIceCandidate(t)).catch(()=>{}))}let a=o.iceConnectionState;if(r||Date.now()-t>1e4||a===`connected`||a===`completed`)return}catch{}setTimeout(()=>{n()},200)}};n()}Be(C)}catch(t){console.debug(`[WebRTC] reoffer failed; keeping last frame, re-arming poll`,t instanceof Error?t.message:String(t)),Be(e)}finally{de.current=!1}},[T,v,y,b,Ie,Be,D]);let We=De?Ue:Te?Ve:He,Ge=(0,S.useRef)(()=>{});Ge.current=We;let Ke=(0,S.useCallback)(()=>{if(!k.current||se.current>=BG)return;let e=se.current;se.current+=1;let t=Math.min(zG,RG*2**e),n=Math.round(t*(.8+Math.random()*.4));oe.current=setTimeout(()=>{k.current&&Ge.current()},n)},[]);(0,S.useEffect)(()=>(k.current=!0,se.current=0,r&&We(),()=>{k.current=!1,Le()}),[e,t]);let qe=(0,S.useRef)(!1);(0,S.useEffect)(()=>{if(r){if(De){if(!_)return}else if(Te){if(!h||!g)return}else return;qe.current||re.current||(qe.current=!0,We())}},[r,De,Te,_,h,g,We]);let Je=()=>{se.current=0,We()},Ye=()=>{if(se.current=0,re.current&&De){Ue(!0);return}if(re.current&&Te){Ve(!0);return}We()},Xe=(0,S.useRef)(ee);(0,S.useEffect)(()=>{Xe.current!==ee&&(Xe.current=ee,k.current&&Ye())},[ee]);let Ze=()=>{O.current&&(O.current.muted=!O.current.muted,ge(O.current.muted))},Qe=async()=>{if(ne.current)try{if(document.fullscreenElement){await document.exitFullscreen();return}if(ne.current.requestFullscreen){await ne.current.requestFullscreen();return}let e=O.current;e?.webkitEnterFullscreen&&e.webkitEnterFullscreen()}catch(e){console.warn(`Fullscreen toggle failed: ${e instanceof Error?e.message:e}`)}},$e=async()=>{let e=O.current;if(e)try{if(typeof e.webkitSetPresentationMode==`function`){e.webkitSetPresentationMode(e.webkitPresentationMode===`picture-in-picture`?`inline`:`picture-in-picture`);return}document.pictureInPictureElement?await document.exitPictureInPicture():await e.requestPictureInPicture()}catch(e){console.warn(`PiP toggle failed: ${e instanceof Error?e.message:String(e)}`)}},et=()=>{if(!O.current)return;let e=document.createElement(`canvas`);e.width=O.current.videoWidth||1280,e.height=O.current.videoHeight||720;let n=e.getContext(`2d`);if(!n)return;n.drawImage(O.current,0,0);let r=document.createElement(`a`);r.download=`${t.replace(/[/:]/g,`-`)}-${Date.now()}.jpg`,r.href=e.toDataURL(`image/jpeg`,.92),r.click()};(0,S.useEffect)(()=>{let e=()=>N(!!document.fullscreenElement);document.addEventListener(`fullscreenchange`,e);let t=O.current;return t?.addEventListener(`webkitbeginfullscreen`,e),t?.addEventListener(`webkitendfullscreen`,e),()=>{document.removeEventListener(`fullscreenchange`,e),t?.removeEventListener(`webkitbeginfullscreen`,e),t?.removeEventListener(`webkitendfullscreen`,e)}},[]),(0,S.useEffect)(()=>{let e=O.current,t=typeof document<`u`&&document.pictureInPictureEnabled===!0,n=e!==null&&typeof e.webkitSetPresentationMode==`function`;ye(t||n)},[]);let[tt,nt]=(0,S.useState)(``),rt=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!s){nt(``),rt.current=null;return}let e=async()=>{let e=re.current;if(e)try{let t=await e.getStats(),n=0,r=0,a=0,o=0,s=0,c=0;t.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`?(n=t.bytesReceived??0,r=t.timestamp,a=t.framesPerSecond??0,o=t.frameWidth??0,s=t.frameHeight??0):t.type===`candidate-pair`&&t.nominated&&typeof t.currentRoundTripTime==`number`&&(c=t.currentRoundTripTime)});let l=0;rt.current&&r>rt.current.ts&&(l=Math.round((n-rt.current.bytes)*8/(r-rt.current.ts))),rt.current={bytes:n,ts:r};let u=[];o&&s&&u.push(`${o}×${s}`),a&&u.push(`${Math.round(a)}fps`),l>0&&u.push(`${l} kbps`),c&&u.push(`${Math.round(c*1e3)}ms`),nt(u.join(` · `))}catch{}};e();let t=setInterval(()=>{e()},1e3);return()=>clearInterval(t)},[s]);let it=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!l){it.current=null;return}let e=async()=>{let e=re.current;if(e)try{let t=await e.getStats(),n=0,r=0,a=0,o=0,s=0,c=0;t.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`?(n=t.packetsLost??0,r=t.packetsReceived??0,a=t.bytesReceived??0,o=t.timestamp,s=t.jitter??0):t.type===`candidate-pair`&&t.nominated&&typeof t.currentRoundTripTime==`number`&&(c=t.currentRoundTripTime)});let u=it.current;if(it.current={lost:n,recv:r,bytes:a,ts:o},!u||o<=u.ts)return;let d=Math.max(0,n-u.lost),f=d+Math.max(0,r-u.recv),p=f>0?Math.min(100,d/f*100):0,m=Math.max(0,Math.round((a-u.bytes)*8/(o-u.ts)));l({rttMs:Math.round(c*1e3),jitterMs:Math.round(s*1e3),estimatedBandwidthKbps:m,packetLossPercent:p})}catch{}},t=setInterval(()=>{e()},2e3);return()=>clearInterval(t)},[l]);let at=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!c){at.current=null;return}let e=async()=>{let e=re.current,t=O.current;if(e)try{let n=await e.getStats(),r=0,a=0,o=0,s=0,l=0,u=0,d=0,f=0;n.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`&&(r=t.framesReceived??0,a=t.framesDecoded??0,o=t.framesDropped??0,s=t.framesPerSecond??0,l=t.freezeCount??0,u=t.totalFreezesDuration??0,d=t.jitterBufferDelay??0,f=t.jitterBufferEmittedCount??0)});let p=t?.currentTime??0,m=Date.now(),h=at.current,g=f>0?Math.round(d/f*1e3):0;h&&c({dRecv:r-h.recv,dDec:a-h.dec,dDrop:o-h.drop,fps:Math.round(s),dFreeze:l-h.freeze,freezeTotalMs:Math.round(u*1e3),avgJitterMs:g,dCtMs:Math.round((p-h.ct)*1e3),dtMs:m-h.ts,readyState:t?.readyState??-1}),at.current={recv:r,dec:a,drop:o,freeze:l,ct:p,ts:m}}catch{}};e();let t=setInterval(()=>{e()},1e3);return()=>clearInterval(t)},[c]),(0,S.useEffect)(()=>{ge(a);let e=O.current;e&&(e.muted=a,a||e.play().catch(()=>{}))},[a]);let ot=()=>{be||(Se(!0),Ce.current&&clearTimeout(Ce.current),Ce.current=setTimeout(()=>Se(!1),3e3))},st=()=>{Se(e=>!e),Ce.current&&clearTimeout(Ce.current)};(0,S.useEffect)(()=>{if(M===`playing`){Fe();let e=setInterval(Fe,2e3);return()=>clearInterval(e)}Oe&&Ae.current&&Me(Ae.current)},[M,Oe,Fe]),(0,S.useEffect)(()=>{if(M!==`playing`){Pe(!1);return}let e=O.current;if(!e)return;let t=!1,n=()=>{t||Pe(!0)},r;typeof e.requestVideoFrameCallback==`function`&&(r=e.requestVideoFrameCallback(()=>n())),e.addEventListener(`loadeddata`,n,{once:!0});let a=setTimeout(n,12e3);return()=>{t=!0,clearTimeout(a),r!==void 0&&typeof e.cancelVideoFrameCallback==`function`&&e.cancelVideoFrameCallback(r),e.removeEventListener(`loadeddata`,n)}},[M]);let ct=Oe&&je?je:E??null,lt=!Ne&&ct!==null;return(0,C.jsxs)(`div`,{ref:ne,className:`relative isolate bg-black overflow-hidden group ${d}`,onMouseMove:ot,onMouseEnter:ot,onTouchStart:st,children:[(0,C.jsx)(`video`,{ref:O,autoPlay:r,muted:he,playsInline:!0,className:`w-full h-full object-contain relative z-0`}),lt&&ct&&(0,C.jsx)(`img`,{src:ct,alt:``,className:`absolute inset-0 w-full h-full object-contain z-[5] transform-gpu pointer-events-none`}),n&&M===`playing`&&(0,C.jsx)(`div`,{className:`absolute top-2 left-2 z-10 transform-gpu px-2 py-0.5 rounded bg-black/60 text-[10px] text-white font-medium`,children:n}),s&&tt&&(0,C.jsx)(`div`,{className:`absolute top-2 right-2 z-10 transform-gpu px-2 py-0.5 rounded bg-black/60 text-[10px] text-white font-mono`,children:tt}),m,!ct&&M===`connecting`&&(0,C.jsxs)(`div`,{className:`absolute inset-0 z-10 transform-gpu flex flex-col items-center justify-center bg-black/70 gap-2`,children:[(0,C.jsx)(`svg`,{className:`h-6 w-6 text-white/60 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,children:(0,C.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`32`,strokeDashoffset:`32`,className:`animate-[dash_1.5s_ease-in-out_infinite]`})}),(0,C.jsx)(`span`,{className:`text-xs text-white/60`,children:`Connecting…`})]}),!ct&&(M===`error`||M===`disconnected`)&&(0,C.jsxs)(`div`,{className:`absolute inset-0 z-10 transform-gpu flex flex-col items-center justify-center bg-black/70 gap-2`,children:[(0,C.jsx)(`svg`,{className:`h-6 w-6 text-red-400`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,C.jsx)(`path`,{d:`M1 1l5.5 5.5M23 23l-5.5-5.5M8.11 15.89a8 8 0 0110.78-10.78M3.64 3.64A12 12 0 0020.36 20.36`,strokeLinecap:`round`})}),(0,C.jsx)(`span`,{className:`text-xs text-red-400 text-center px-4`,children:M===`error`?pe||`Connection failed`:`Disconnected`}),(0,C.jsx)(`button`,{onClick:Je,className:`mt-1 inline-flex items-center gap-1.5 rounded px-3 py-1 text-xs bg-white/10 text-white hover:bg-white/20 transition-colors`,children:`Reconnect`})]}),ct&&(M===`connecting`||M===`disconnected`)&&(0,C.jsx)(`div`,{className:`absolute top-2 left-2 z-10 transform-gpu flex h-6 w-6 items-center justify-center rounded-full bg-black/55`,children:(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5 text-white/90 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,children:(0,C.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`32`,strokeDashoffset:`32`,className:`animate-[dash_1.5s_ease-in-out_infinite]`})})}),ct&&M===`error`&&(0,C.jsx)(`button`,{onClick:Je,title:pe||`Reconnect`,className:`absolute top-2 left-2 z-10 transform-gpu flex h-6 w-6 items-center justify-center rounded-full bg-black/55 text-white/90 hover:bg-black/75 transition-colors`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,C.jsx)(`path`,{d:`M23 4v6h-6M1 20v-6h6`}),(0,C.jsx)(`path`,{d:`M3.51 9a9 9 0 0114.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0020.49 15`})]})}),o&&M!==`idle`&&M!==`error`&&(0,C.jsxs)(`div`,{className:`absolute bottom-0 inset-x-0 z-20 transform-gpu flex items-center justify-between px-3 py-1.5 bg-gradient-to-t from-black/80 to-transparent transition-opacity duration-200 ${be||xe?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,children:[(0,C.jsx)(`div`,{className:`flex items-center gap-1`,children:(0,C.jsx)(UG,{onClick:Ze,title:he?`Unmute`:`Mute`,children:he?(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,C.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}):(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`path`,{d:`M19.07 4.93a10 10 0 010 14.14M15.54 8.46a5 5 0 010 7.07`})]})})}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,C.jsx)(UG,{onClick:et,title:`Take snapshot`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`path`,{d:`M23 19a2 2 0 01-2 2H3a2 2 0 01-2-2V8a2 2 0 012-2h4l2-3h6l2 3h4a2 2 0 012 2z`}),(0,C.jsx)(`circle`,{cx:`12`,cy:`13`,r:`4`})]})}),ve&&(0,C.jsx)(UG,{onClick:$e,title:`Picture-in-Picture`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,C.jsx)(`path`,{d:`M21 9V6a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2h4`}),(0,C.jsx)(`rect`,{width:`10`,height:`7`,x:`12`,y:`13`,rx:`2`})]})}),(0,C.jsx)(UG,{onClick:Qe,title:_e?`Exit fullscreen`:`Fullscreen`,children:_e?(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:(0,C.jsx)(`path`,{d:`M8 3v3a2 2 0 01-2 2H3m18 0h-3a2 2 0 01-2-2V3m0 18v-3a2 2 0 012-2h3M3 16h3a2 2 0 012 2v3`})}):(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:(0,C.jsx)(`path`,{d:`M8 3H5a2 2 0 00-2 2v3m18 0V5a2 2 0 00-2-2h-3m0 18h3a2 2 0 002-2v-3M3 16v3a2 2 0 002 2h3`})})})]})]})]})}function UG({onClick:e,title:t,children:n}){return(0,C.jsx)(`button`,{onClick:e,title:t,className:`rounded-full p-1.5 min-w-[44px] min-h-[44px] flex items-center justify-center text-white/80 hover:text-white hover:bg-white/20 active:bg-white/30 transition-colors`,children:n})}async function WG(e){if(e.iceGatheringState!==`complete`)return new Promise(t=>{let n=!1,r,a=()=>{n||(n=!0,r&&clearInterval(r),e.removeEventListener(`icegatheringstatechange`,o),t())},o=()=>{e.iceGatheringState===`complete`&&a()};e.addEventListener(`icegatheringstatechange`,o);let s=Date.now();r=setInterval(()=>{let t=e.localDescription?.sdp??``;/ typ host/.test(t)&&Date.now()-s>=600&&a()},100),setTimeout(a,2500)})}SM(`camstack:player-overlays-state`,null);var GG=SM(`camstack:player-overlays-actions`,null);function KG(e){let t=(0,S.useContext)(GG);(0,S.useEffect)(()=>{if(!(!t||!e))return t.setLayer(e),()=>t.removeLayer(e.id)},[t,e])}B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),online:I(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional(),features:z(P()).optional(),isCamera:I().optional(),sourceInfo:zu.optional()}),w.AddonStarted,w.AddonInstalled,w.AddonRestarted,w.AddonUpdated,w.AddonStopped,w.AddonUninstalled,w.AddonCrashed,w.AddonError,w.DetectionPhaseTransition,w.DetectionResult,w.DetectionEvent,w.DetectionCameraNative,w.ProviderMotion,w.MotionOnMotionChanged,w.MotionAnalysis,w.MotionZonesRaw,w.ProviderDetection,w.PipelineAudioInferenceResult,w.AgentOnline,w.AgentOffline,w.DeviceRegistered,w.DeviceUnregistered,w.DeviceStateChanged,w.EventEmitted;var qG=Object.freeze([...new Set(Object.values(w))].toSorted()),JG=Object.freeze([w.PipelineCameraMetricsSnapshot,w.PipelineRunnerLoadSnapshot,w.PipelineEngineMetricsSnapshot,w.PipelineInferenceResult,w.PipelineTrace,w.PipelineProgress,w.StreamBrokerMetricsSnapshot,w.MetricsNodeResourcesSnapshot,w.MetricsNodeProcessesSnapshot,w.ClusterTopologySnapshot,w.MotionAnalysis,w.MotionZonesRaw,w.DetectionResult,w.PipelineAudioInferenceResult,w.PlatformProbePhase,w.BenchmarkProgress,w.ModelDownloadProgress]),YG=new Set(JG);Object.freeze(qG.filter(e=>!YG.has(e))),Object.freeze([...new Set(Tw.filter(e=>e.scope===`device`).map(e=>e.name))].toSorted()),SM(`camstack:zone-editing`,null);var XG=500,ZG=800;function QG(e,t,n){try{let r=e.live;if(!r)return null;let a=r.onEvent;return!a||typeof a.subscribe!=`function`?null:a.subscribe({category:t},{onData:n})}catch{return null}}function $G(e,t){return e?.id===t}function eK(e,t){let[n,r]=(0,S.useState)(null),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(null),[l,u]=(0,S.useState)(`watching`),d=(0,S.useRef)(void 0),f=(0,S.useRef)(void 0),p=(0,S.useRef)(void 0),m=(0,S.useRef)(0);return(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.motion-analysis`,e=>{let n=e;if(!$G(n?.source,t))return;let a=n.data;!a?.regions||a.regions.length===0||(r({zones:a.regions.map(e=>({...e.bbox,intensity:e.intensity})),frameWidth:a.frameWidth,frameHeight:a.frameHeight}),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>r(null),XG))});return()=>{n?.unsubscribe(),d.current&&clearTimeout(d.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.motion-zones-raw`,e=>{let n=e;if(!$G(n?.source,t))return;let r=n.data;r?.zones&&(o({boxes:r.zones.map(e=>({bbox:e.bbox,changeScore:e.changeScore})),frameWidth:r.frameSize?.width??0,frameHeight:r.frameSize?.height??0,motionScore:r.zones.length>0?r.zones.reduce((e,t)=>e+t.changeScore,0)/r.zones.length:0}),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>o(null),XG))});return()=>{n?.unsubscribe(),f.current&&clearTimeout(f.current)}},[e,t]),(0,S.useEffect)(()=>{if(m.current=0,t===null)return;let n=QG(e,`pipeline-analytics.frame-tracked`,e=>{let n=e?.data;!n||n.deviceId!==t||n.detections?.length&&typeof n.detections[0]?.kind==`string`&&(m.current=Date.now(),c({detections:n.detections,frameWidth:n.frameWidth,frameHeight:n.frameHeight}),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>c(null),ZG))});return()=>{n?.unsubscribe(),p.current&&clearTimeout(p.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.result`,e=>{let n=e;if(!$G(n?.source,t)||Date.now()-m.current<ZG)return;let r=n.data?.frame;r?.detections?.length&&(c({detections:r.detections,frameWidth:r.width,frameHeight:r.height}),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>c(null),ZG))});return()=>{n?.unsubscribe(),p.current&&clearTimeout(p.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.phase-transition`,e=>{let n=e;$G(n?.source,t)&&n.data?.to&&u(n.data.to)});return()=>{n?.unsubscribe()}},[e,t]),{motion:n,motionRaw:a,detection:s,phase:l}}function tK(e,t,n=5e3){let[r,a]=(0,S.useState)([]);(0,S.useEffect)(()=>{if(t===null)return;let r=!1,o=()=>{e.webrtcSession.listStreams.query({deviceId:t}).then(e=>{r||a(e)}).catch(()=>{})};o();let s=setInterval(o,n);return()=>{r=!0,clearInterval(s)}},[e,t,n]);let[o,s]=(0,S.useState)(null);(0,S.useEffect)(()=>{if(t===null)return;let n=!1;return e.pipelineOrchestrator&&e.pipelineOrchestrator.getCameraMetrics.query({deviceId:t}).then(e=>{n||!e||s({phase:e.phase,detectionFps:e.actualFps,avgInferenceMs:e.avgInferenceTimeMs,droppedFrames:e.droppedFrames})}).catch(()=>{}),()=>{n=!0}},[e,t]),rz(`pipeline.camera-metrics-snapshot`,e=>{if(t===null)return;let n=e.data;n.deviceId!==t||!n.metrics||s({phase:n.metrics.phase,detectionFps:n.metrics.actualFps,avgInferenceMs:n.metrics.avgInferenceTimeMs,droppedFrames:n.metrics.droppedFrames})});let{streams:c,hasWebrtc:l}=(0,S.useMemo)(()=>t===null||r.length===0?{streams:[],hasWebrtc:!1}:{streams:r.map(e=>({id:e.id,label:e.label,target:e.target,status:e.status,inputFps:e.inputFps,decodeFps:e.decodeFps,bitrateKbps:e.bitrateKbps})),hasWebrtc:!0},[t,r]),u=(0,S.useCallback)(async()=>{if(e.turnProvider)try{return(await e.turnProvider.getTurnServers.query()).map(e=>({urls:typeof e.urls==`string`?e.urls:[...e.urls],...e.username===void 0?{}:{username:e.username},...e.credential===void 0?{}:{credential:e.credential}}))}catch{return}},[e]),d=(0,S.useCallback)(async(n,r)=>{if(t===null)throw Error(`No device selected`);let a=await e.webrtcSession.createSession.mutate({deviceId:t,target:n,hints:r}),o=await u();return{sessionId:a.sessionId,sdpOffer:a.sdpOffer,...o?{iceServers:o}:{}}},[e,t,u]),f=(0,S.useCallback)(async(n,r,a,o)=>{if(t===null)throw Error(`No device selected`);return e.webrtcSession.handleOffer.mutate({deviceId:t,target:n,sdpOffer:r,...a===void 0?{}:{sessionId:a},...o===void 0?{}:{hints:o}})},[e,t]),p=(0,S.useCallback)(async(n,r)=>{if(t===null)throw Error(`No device selected`);await e.webrtcSession.handleAnswer.mutate({deviceId:t,sessionId:n,sdpAnswer:r})},[e,t]);return{streams:c,hasWebrtc:l,pipelineMetrics:o,createSession:d,handleOffer:f,getIceServers:u,addIceCandidate:(0,S.useCallback)(async(n,r)=>{t!==null&&await e.webrtcSession.addIceCandidate.mutate({deviceId:t,sessionId:n,candidate:r.candidate??``,sdpMid:r.sdpMid??null,sdpMLineIndex:r.sdpMLineIndex??null}).catch(()=>{})},[e,t]),getIceCandidates:(0,S.useCallback)(async n=>t===null?{candidates:[],done:!0}:e.webrtcSession.getIceCandidates.query({deviceId:t,sessionId:n}),[e,t]),sendAnswer:p,closeSession:(0,S.useCallback)(async n=>{t!==null&&await e.webrtcSession.closeSession.mutate({deviceId:t,sessionId:n}).catch(()=>{})},[e,t]),getSessionState:(0,S.useCallback)(async n=>{if(t===null)return{pendingRenegotiation:null};try{return await e.webrtcSession.getSessionState.query({deviceId:t,sessionId:n})}catch{return{pendingRenegotiation:null}}},[e,t])}}(0,S.lazy)(()=>fs(()=>import(`./MaskShapeCanvas-DI4BY7W2-BPRZW9TX.js`).then(e=>({default:e.MaskShapeCanvas})),[],import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./MotionZonesSettings-NcxxQN8r-Bw6Nlg-Q.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1]),import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./PrivacyMaskSettings-APgPLF7p-BLF9QKG8.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([2,1]),import.meta.url));var nK=H([`auto`,`high`,`medium`,`low`]),rK=Co([U(`auto`),F().int().min(1)]),iK=B({enabled:I(),motion:I(),motionHoldSec:F().optional(),audio:H([`off`,`sensor`,`level`]),audioDb:F(),audioHoldSec:F(),detection:I(),detectionHoldSec:F(),detectionClasses:z(P()).optional(),appearance:B({motionColor:P(),audioColor:P(),detectionColor:P(),thickness:F()}).optional()}),aK=B({serverUrl:P().min(1),token:P().min(1),devices:z(F().int().nonnegative()).min(1),layout:rK,quality:nK,showName:I(),showBadges:I(),muted:I(),paused:I(),highlight:iK.optional(),activeOnly:I().optional(),showBoxes:I().optional(),audioOnIds:z(F().int().nonnegative()).optional(),pausedIds:z(F().int().nonnegative()).optional(),snapshots:V(P(),P()).optional(),ptzIds:z(F().int().nonnegative()).optional()});function oK(e){if(e==null)return{ok:!1,error:`config is required`};let t=aK.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}var sK=1e4;function cK(){try{return window.parent!==window}catch{return!0}}function lK(e){let t=window.ReactNativeWebView;if(t){t.postMessage(JSON.stringify(e));return}cK()&&window.parent.postMessage(e,`*`)}function uK(e){let t=t=>{let n=t.data;if(typeof n!=`object`||!n)return;let r=n;r.type!==`embed-command`||typeof r.command!=`object`||r.command===null||e(r.command)};return window.addEventListener(`message`,t),()=>window.removeEventListener(`message`,t)}function dK(e,t,n,r){let a=t();if(a!=null)return Promise.resolve(n(a));if(!cK()){let t=r===void 0?null:r();return t===null?Promise.resolve({ok:!1,error:`config global for mode "${e}" is not set`}):Promise.resolve(t)}return new Promise(t=>{let r,a=e=>{let o=e.data;if(typeof o!=`object`||!o)return;let s=o;s.type===`embed-config`&&(clearTimeout(r),window.removeEventListener(`message`,a),t(n(s.config)))};window.addEventListener(`message`,a),r=setTimeout(()=>{window.removeEventListener(`message`,a),t({ok:!1,error:`config handshake timed out`})},sK),window.parent.postMessage({type:`embed-ready`,mode:e},`*`)})}function fK(e,t,n,r){let[a,o]=(0,S.useState)(null),s=(0,S.useRef)(t);s.current=t;let c=(0,S.useRef)(n);c.current=n;let l=(0,S.useRef)(r);return l.current=r,(0,S.useEffect)(()=>{let t=!0;return dK(e,()=>s.current(),e=>c.current(e),()=>l.current===void 0?null:l.current()).then(e=>{t&&o(e)}),()=>{t=!1}},[e]),a}var pK=H([`auto`,`high`,`medium`,`low`]),mK=Co([U(`auto`),F().int().min(1)]),hK=B({enabled:I(),motion:I(),audio:H([`off`,`sensor`,`level`]),audioDb:F(),audioHoldSec:F(),detection:I(),detectionHoldSec:F(),detectionClasses:z(P()).optional(),appearance:B({motionColor:P(),audioColor:P(),detectionColor:P(),thickness:F()}).optional()}),gK=B({devices:z(F().int().nonnegative()).min(1),layout:mK,quality:pK,showName:I(),audioOnIds:z(F().int().nonnegative()).optional(),activeOnly:I().optional(),boxes:I().optional(),highlight:hK.optional()}),_K=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`;function vK(e){let t=``,n=0;for(;n<e.length;){let r=e[n];if(r===void 0)return null;let a,o;if(r<128)a=r,o=0;else if((r&224)==192)a=r&31,o=1;else if((r&240)==224)a=r&15,o=2;else if((r&248)==240)a=r&7,o=3;else return null;for(let t=1;t<=o;t++){let r=e[n+t];if(r===void 0||(r&192)!=128)return null;a=a<<6|r&63}n+=o+1,t+=String.fromCodePoint(a)}return t}function yK(e){if(e.length%4==1)return null;let t=[];for(let n of e){let e=_K.indexOf(n);if(e<0)return null;t.push(e)}let n=[];for(let e=0;e<t.length;e+=4){let r=t[e],a=t[e+1];if(r===void 0||a===void 0)return null;let o=t[e+2],s=t[e+3];n.push(r<<2|a>>4),o!==void 0&&n.push((a&15)<<4|o>>2),s!==void 0&&o!==void 0&&n.push((o&3)<<6|s)}let r=vK(n);if(r===null)return null;try{return JSON.parse(r)}catch{return null}}function bK(e,t){return e.startsWith(t)?e.slice(t.length):e}function xK(e){let t=new URLSearchParams(bK(e,`#`)).get(`t`);return t!==null&&t.length>0?t:null}function SK(e,t){return new URLSearchParams(bK(e,`?`)).has(`v`)||xK(t)!==null}function CK(e){if(e.length===0)return null;let t=[];for(let n of e.split(`,`)){if(!/^\d+$/.test(n))return null;t.push(Number(n))}return t}function wK(e){return{ok:!1,error:e}}function TK(e,t){let n=new URLSearchParams(bK(e,`?`)),r=n.get(`mode`);if(r!==null&&r!==`grid`)return wK(`unsupported mode "${r}"`);let a=n.get(`v`);if(a===null)return wK(`missing share-link version (v)`);if(a!==`1`)return wK(`unsupported share-link version "${a}"`);let o=n.get(`devices`),s=o===null?null:CK(o);if(s===null||s.length===0)return wK(`invalid or missing devices list`);let c=n.get(`layout`),l;if(c===null||c===`auto`)l=`auto`;else if(/^\d+$/.test(c)&&Number(c)>=1)l=Number(c);else return wK(`invalid layout "${c}"`);let u=n.get(`q`)??`auto`,d=pK.safeParse(u);if(!d.success)return wK(`invalid quality "${u}"`);let f=n.get(`names`)??`0`;if(f!==`0`&&f!==`1`)return wK(`invalid names flag "${f}"`);let p=n.get(`audio`),m;if(p!==null){let e=CK(p);if(e===null)return wK(`invalid audio list "${p}"`);m=e}let h=n.get(`activeOnly`);if(h!==null&&h!==`0`&&h!==`1`)return wK(`invalid activeOnly flag "${h}"`);let g=h===`1`,_=n.get(`boxes`);if(_!==null&&_!==`0`&&_!==`1`)return wK(`invalid boxes flag "${_}"`);let v=_===`1`,y=n.get(`hl`),b;if(y!==null){let e=yK(y),t=hK.safeParse(e);if(e===null||!t.success)return wK(`invalid highlight config (hl)`);b=t.data}let x={devices:[...s],layout:l,quality:d.data,showName:f===`1`,...m!==void 0&&m.length>0?{audioOnIds:[...m]}:{},...g?{activeOnly:!0}:{},...v?{boxes:!0}:{},...b===void 0?{}:{highlight:b}},S=gK.safeParse(x);return S.success?{ok:!0,params:S.data,token:xK(t)}:wK(S.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `))}function EK(e,t,n){if(!SK(e,t))return null;let r=TK(e,t);if(!r.ok)return{ok:!1,error:r.error};if(r.token===null)return{ok:!1,error:`share token missing — the link must end with #t=<token>`};let a=r.params;return oK({serverUrl:n,token:r.token,devices:[...a.devices],layout:a.layout,quality:a.quality,showName:a.showName,showBadges:!0,muted:!0,paused:!1,...a.highlight===void 0?{}:{highlight:a.highlight},...a.activeOnly===!0?{activeOnly:!0}:{},...a.boxes===!0?{showBoxes:!0}:{},...a.audioOnIds!==void 0&&a.audioOnIds.length>0?{audioOnIds:[...a.audioOnIds]}:{}})}function DK(){let e=EK(location.search,location.hash,location.origin);return e!==null&&location.hash!==``&&history.replaceState(null,``,location.pathname+location.search),e}var OK=16/9;function kK(e,t,n,r){if(e<=0||t<=0||n<=0)return{cols:0,rows:0,cellW:0,cellH:0};if(typeof r==`number`&&r>=1){let a=Math.floor(r),o=Math.ceil(e/a),s=Math.min(t/a,n/o*OK);return{cols:a,rows:o,cellW:s,cellH:s/OK}}let a={cols:1,rows:e,cellW:0,cellH:0},o=-1;for(let r=1;r<=e;r++){let s=Math.ceil(e/r),c=Math.min(t/r,n/s*OK),l=c/OK,u=c*l;u>o&&(o=u,a={cols:r,rows:s,cellW:c,cellH:l})}return a}function AK(){let[e,t]=(0,S.useState)(null),[n,r]=(0,S.useState)(`idle`),a=(0,S.useRef)(null),o=(0,S.useRef)(null),s=(0,S.useRef)(null),c=(0,S.useRef)(0),l=(0,S.useRef)(null),u=Pz(),d=Fz(),f=Iz(),p=(0,S.useRef)({start:u.mutateAsync,answer:d.mutateAsync,stop:f.mutateAsync});p.current={start:u.mutateAsync,answer:d.mutateAsync,stop:f.mutateAsync};let m=(0,S.useCallback)(()=>{if(a.current){try{a.current.close()}catch{}a.current=null}if(o.current){for(let e of o.current.getTracks())try{e.stop()}catch{}o.current=null}},[]),h=(0,S.useCallback)(async()=>{let e=s.current;if(s.current=null,m(),e)try{await p.current.stop({deviceId:e.deviceId,sessionId:e.sessionId})}catch{}},[m]),g=(0,S.useCallback)(async e=>{if(l.current===e){c.current+=1,l.current=null,t(null),r(`idle`),await h();return}c.current+=1;let n=c.current;l.current=e,t(e),r(`starting`);let u;try{u=await navigator.mediaDevices.getUserMedia({audio:!0,video:!1})}catch{n===c.current&&(l.current=null,t(null),r(`error`));return}if(n!==c.current){for(let e of u.getTracks())e.stop();return}if(await h(),n!==c.current){for(let e of u.getTracks())e.stop();return}let d=null;try{o.current=u;let f=await p.current.start({deviceId:e});if(n!==c.current){try{await p.current.stop({deviceId:e,sessionId:f.sessionId})}catch{}m();return}s.current={deviceId:e,sessionId:f.sessionId},d=new RTCPeerConnection,a.current=d,d.oniceconnectionstatechange=()=>{if(n!==c.current||!d)return;let e=d.iceConnectionState;e===`connected`||e===`completed`?r(`talking`):(e===`failed`||e===`closed`||e===`disconnected`)&&(l.current=null,t(null),r(`idle`),h())};for(let e of u.getAudioTracks())d.addTrack(e,u);await d.setRemoteDescription({type:`offer`,sdp:f.sdpOffer});let g=await d.createAnswer();if(await d.setLocalDescription(g),n!==c.current)return;await p.current.answer({deviceId:e,sessionId:f.sessionId,sdpAnswer:d.localDescription?.sdp??g.sdp??``})}catch{if(d)try{d.close()}catch{}m();let e=s.current;if(s.current=null,e)try{await p.current.stop({deviceId:e.deviceId,sessionId:e.sessionId})}catch{}n===c.current&&(l.current=null,t(null),r(`error`))}},[h,m]),_=(0,S.useCallback)(e=>{if(e===null){c.current+=1,l.current=null,t(null),r(`idle`),h();return}l.current!==e&&g(e)},[h,g]);return(0,S.useEffect)(()=>()=>{c.current+=1,h()},[h]),{activeMicId:e,micState:n,toggleMic:e=>{g(e)},setActiveMic:_}}var jK=6e3,MK=500;function NK(e,t){let n=(0,S.useRef)(new Map),[,r]=(0,S.useState)(0),a=t?.motion??!1,o=t?.audio??`off`,s=t?.audioDb??-30,c=t?.audioHoldSec??3,l=t?.detection??!1,u=t?.detectionHoldSec??3,d=t?.detectionClasses??[],f=(e,t)=>{n.current.set(e,Date.now()+t),r(e=>e+1)};rz(w.MotionOnMotionChanged,e=>{if(!a)return;let t=e.data;t&&t.detected&&f(t.deviceId,jK)}),rz(w.PipelineAudioInferenceResult,e=>{if(o===`off`)return;let t=e.data;t&&(o===`sensor`?t.frame.detections.length>0:(t.frame.level?.dbfs??-1/0)>=s)&&f(t.deviceId,c*1e3)}),rz(w.DetectionResult,e=>{if(!l)return;let t=e.data;t&&t.frame.detections.some(e=>d.length===0||d.includes(e.macroClass))&&f(t.frame.deviceId,u*1e3)}),(0,S.useEffect)(()=>{let e=setInterval(()=>r(e=>e+1),MK);return()=>clearInterval(e)},[]);let p=Date.now(),m=new Set;for(let t of e){let e=n.current.get(t);e!==void 0&&p<e&&m.add(t)}return m}function PK(e){return{type:`tileOpen`,deviceId:e}}function FK(e){return{type:`audioToggle`,deviceId:e}}function IK(e){return{type:`pauseToggle`,deviceId:e}}function LK(e){return{type:`ptzOpen`,deviceId:e}}function RK(e,t){return t===void 0?{type:`state`,state:e}:{type:`state`,state:e,message:t}}function zK(e){return{type:`layout`,tiles:e}}function BK(e){lK(e)}function VK(e,t,n,r){let a=Number.isFinite(e)&&e>0?e:0,o=Number.isFinite(t)&&t>0?t:0;if(!Number.isFinite(n)||!Number.isFinite(r)||n<=0||r<=0)return{width:a,height:o};let s=Math.min(a/n,o/r);return{width:n*s,height:r*s}}function HK(e,t,n){return!Number.isFinite(e)||!Number.isFinite(t)||!Number.isFinite(n)?0:Math.max(0,(n*t-e)/2)}function UK(e,t,n,r){if(!Number.isFinite(e))return 0;let a=HK(t,n,r);return Math.max(-a,Math.min(a,e))}var WK=4,GK=8,KK=300;function qK(e,t){return Math.hypot(e.x-t.x,e.y-t.y)}function JK({children:e,onTap:t}){let n=(0,S.useRef)(null),r=(0,S.useRef)(null),a=(0,S.useRef)(new Map),o=(0,S.useRef)(1),s=(0,S.useRef)(0),c=(0,S.useRef)(0),l=(0,S.useRef)(null),u=(0,S.useRef)(null),d=(0,S.useRef)(0),f=()=>{let e=r.current;e&&(e.style.transform=`translate(${s.current}px, ${c.current}px) scale(${o.current})`)},p=()=>{let e=n.current?.getBoundingClientRect();if(!e||e.width<=0||e.height<=0)return;let t=r.current?.querySelector(`video`)??null,a=t?null:r.current?.querySelector(`img`)??null,l=t?.videoWidth??a?.naturalWidth??0,u=t?.videoHeight??a?.naturalHeight??0,d=VK(e.width,e.height,l,u);s.current=UK(s.current,e.width,d.width,o.current),c.current=UK(c.current,e.height,d.height,o.current)},m=()=>{o.current=1,s.current=0,c.current=0,f()},h=e=>{try{e.currentTarget.setPointerCapture(e.pointerId)}catch{}if(a.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),a.current.size===2){let e=[...a.current.values()],t=e[0],n=e[1];t&&n&&(l.current={dist:qK(t,n),scale:o.current,cx:(t.x+n.x)/2,cy:(t.y+n.y)/2,tx:s.current,ty:c.current}),u.current=null}else a.current.size===1&&(u.current={x:e.clientX,y:e.clientY,tx:s.current,ty:c.current,moved:!1})},g=e=>{if(!a.current.has(e.pointerId))return;if(a.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),a.current.size>=2&&l.current){let e=[...a.current.values()],t=e[0],n=e[1];if(!t||!n)return;let r=qK(t,n);l.current.dist>0&&(o.current=Math.max(1,Math.min(WK,l.current.scale*(r/l.current.dist))));let u=(t.x+n.x)/2,d=(t.y+n.y)/2;s.current=l.current.tx+(u-l.current.cx),c.current=l.current.ty+(d-l.current.cy),p(),f();return}let t=u.current;if(a.current.size===1&&t){let n=e.clientX-t.x,r=e.clientY-t.y;(Math.abs(n)>GK||Math.abs(r)>GK)&&(t.moved=!0),o.current>1&&(s.current=t.tx+n,c.current=t.ty+r,p(),f())}},_=e=>{let n=a.current.size===1,r=u.current;if(a.current.delete(e.pointerId),a.current.size<2&&(l.current=null),a.current.size===0&&(u.current=null,n&&r&&!r.moved)){let e=Date.now();e-d.current<KK?(d.current=0,m()):(d.current=e,t())}};return(0,C.jsx)(`div`,{ref:n,style:{position:`absolute`,inset:0,overflow:`hidden`,touchAction:`none`},onPointerDown:h,onPointerMove:g,onPointerUp:_,onPointerCancel:_,children:(0,C.jsx)(`div`,{ref:r,style:{width:`100%`,height:`100%`,transformOrigin:`center center`,willChange:`transform`},children:e})})}var YK=2500,XK={person:`#f59e0b`,vehicle:`#3b82f6`,animal:`#22c55e`,face:`#a855f7`,plate:`#ec4899`},ZK=`#ef4444`;function QK(e){return XK[e]??ZK}function $K(e){return e<0?0:e>1?1:e}function eq(e){if(e.width<=0||e.height<=0)return[];let t=[];for(let n of e.detections){let{bbox:r}=n,a=$K(r.x/e.width),o=$K(r.y/e.height),s=$K((r.x+r.width)/e.width),c=$K((r.y+r.height)/e.height);s<=a||c<=o||t.push({label:n.macroClass,score:n.score,x1:a,y1:o,x2:s,y2:c})}return t}function tq({deviceId:e}){let[t,n]=(0,S.useState)([]),r=(0,S.useRef)(void 0);return rz(w.DetectionResult,t=>{let a=t.data;!a||a.frame.deviceId!==e||(n(eq(a.frame)),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>n([]),YK))}),(0,S.useEffect)(()=>()=>{r.current&&clearTimeout(r.current),n([])},[e]),t.length===0?null:(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,overflow:`hidden`,pointerEvents:`none`},children:t.map((e,t)=>{let n=QK(e.label),r=Math.round(e.score*100);return(0,C.jsx)(`div`,{style:{position:`absolute`,left:`${e.x1*100}%`,top:`${e.y1*100}%`,width:`${(e.x2-e.x1)*100}%`,height:`${(e.y2-e.y1)*100}%`,border:`2px solid ${n}`,borderRadius:3},children:(0,C.jsx)(`span`,{style:{position:`absolute`,left:-2,bottom:`100%`,background:n,color:`#fff`,fontSize:10,fontWeight:700,fontFamily:`system-ui, sans-serif`,lineHeight:`14px`,padding:`0 4px`,borderRadius:3,whiteSpace:`nowrap`},children:`${e.label} ${r}%`})},`${e.label}-${t}`)})})}var nq=500;function rq(e,t,n){let{motion:r,detection:a}=eK(e.trpcClient,t),o=(0,S.useRef)(0),s=(0,S.useRef)(0),c=(0,S.useRef)(0),l=(0,S.useRef)(!1),[,u]=(0,S.useState)(0),d=n?.audio??`off`,f=n?.audioDb??-30,p=n?.audioHoldSec??3,m=n?.motionHoldSec??0,h=n?.detectionHoldSec??3,g=n?.detectionClasses??[],_=g.join(`,`);if(rz(w.MotionOnMotionChanged,e=>{let r=e.data;!r||r.deviceId!==t||!n?.motion||(r.detected===!0?(c.current=Date.now()+Math.max(1,m)*1e3,l.current=!0,u(e=>e+1)):r.detected===!1&&l.current&&(c.current=Date.now()+m*1e3,l.current=!1,u(e=>e+1)))}),rz(w.PipelineAudioInferenceResult,e=>{let n=e.data;!n||n.deviceId!==t||d===`off`||(d===`sensor`?n.frame.detections.length>0:(n.frame.level?.dbfs??-1/0)>=f)&&(o.current=Date.now()+p*1e3,u(e=>e+1))}),(0,S.useEffect)(()=>{a&&a.detections.some(e=>g.length===0||g.includes(e.macroClass))&&(s.current=Date.now()+h*1e3,u(e=>e+1))},[a,h,_]),(0,S.useEffect)(()=>{let e=r!==null;(e||l.current)&&(c.current=Date.now()+m*1e3,e||u(e=>e+1)),l.current=e},[r,m]),(0,S.useEffect)(()=>{let e=setInterval(()=>u(e=>e+1),nq);return()=>clearInterval(e)},[]),!n?.enabled)return null;let v=Date.now();return n.detection&&v<s.current?`detection`:d!==`off`&&v<o.current?`audio`:n.motion&&(r!==null||v<c.current)?`motion`:null}var iq={motion:`#DC2626`,audio:`#3B82F6`,detection:`#22C55E`},aq=3500;function oq(e){return e===`auto`?{kind:`adaptive`}:{kind:`profile`,profile:e===`medium`?`mid`:e}}function sq({system:e,deviceId:t,name:n,online:r,quality:a,muted:o,paused:s,showName:c,audioActive:l,micActive:u,onTogglePause:d,onToggleAudio:f,onToggleMic:p,onOpen:m,ptzSupported:h,onPtz:g,highlight:_,showBoxes:v,reconnectSignal:y,posterUrl:b}){let{handleOffer:x,getIceServers:w,addIceCandidate:T,getIceCandidates:E,closeSession:D,getSessionState:ee}=tK(e.trpcClient,t),te=rq(e,t,_),[O,ne]=(0,S.useState)(void 0);(0,S.useEffect)(()=>{if(b||s)return;let n=!1;return e.trpcClient.snapshot.getSnapshot.query({deviceId:t}).then(e=>{!n&&e?.base64&&ne(`data:${e.contentType??`image/jpeg`};base64,${e.base64}`)}).catch(()=>{}),()=>{n=!0}},[b,s,e,t]);let re=b??O,ie=(0,S.useMemo)(()=>oq(a),[a]),ae=`grid:${t}:${a}`,oe=(0,S.useMemo)(()=>(e,t)=>x(ie,e,t),[x,ie]),se=(0,S.useMemo)(()=>(e,t,n)=>x(n,t,e),[x]),[k,A]=(0,S.useState)(!1),ce=(0,S.useRef)(null),le=()=>{ce.current&&clearTimeout(ce.current),ce.current=setTimeout(()=>A(!1),aq)},ue=()=>{A(!0),le()},de=()=>{A(e=>{let t=!e;return t&&le(),t})},j=e=>{e.stopPropagation(),ue()};return(0,S.useEffect)(()=>()=>{ce.current&&clearTimeout(ce.current)},[]),(0,C.jsxs)(`div`,{style:{position:`relative`,width:`100%`,height:`100%`,background:`#000`},children:[(0,C.jsx)(JK,{onTap:de,children:s?(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,color:`#fafaf9`},children:(0,C.jsx)(uq,{size:28})}):(0,C.jsx)(HG,{serverUrl:e.serverUrl,streamKey:ae,autoPlay:!0,muted:o,showControls:!1,className:`w-full h-full`,handleOffer:oe,reoffer:se,getSessionState:ee,getIceServers:w,addIceCandidate:T,getIceCandidates:E,closeSession:D,reconnectSignal:y,posterUrl:re,onClientNetworkSample:a===`auto`?n=>{e.trpcClient.networkQuality.reportClientStats.mutate({deviceId:t,...n}).catch(()=>{})}:void 0},ae)}),v&&!s?(0,C.jsx)(tq,{deviceId:t}):null,te&&(()=>{let e=_?.appearance,t=te===`motion`?e?.motionColor??iq.motion:te===`audio`?e?.audioColor??iq.audio:e?.detectionColor??iq.detection;return(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,border:`${e?.thickness??3}px solid ${t}`,boxShadow:`inset 0 0 12px ${t}`,pointerEvents:`none`}})})(),(c||k)&&(0,C.jsxs)(`div`,{style:{position:`absolute`,left:0,right:0,top:0,display:`flex`,alignItems:`center`,gap:6,padding:`4px 8px`,background:`rgba(0,0,0,0.6)`,color:`#fafaf9`,fontSize:12,fontWeight:600,fontFamily:`system-ui, sans-serif`,pointerEvents:`none`,opacity:c||k?1:0,transition:`opacity 150ms ease`},children:[(0,C.jsx)(`span`,{style:{width:8,height:8,borderRadius:4,background:r?`#34d399`:`#71717a`}}),(0,C.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:n})]}),(0,C.jsxs)(`div`,{style:{position:`absolute`,inset:0,opacity:+!!k,transition:`opacity 150ms ease`,pointerEvents:`none`},children:[(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,pointerEvents:`none`},children:(0,C.jsx)(cq,{label:s?`Play`:`Pause`,big:!0,enabled:k,onClick:e=>{j(e),d(t)},children:s?(0,C.jsx)(uq,{size:22}):(0,C.jsx)(dq,{size:22})})}),(0,C.jsxs)(`div`,{style:{position:`absolute`,left:8,bottom:8,display:`flex`,gap:8,pointerEvents:`none`},children:[(0,C.jsx)(cq,{label:l?`Mute`:`Listen`,active:l,enabled:k,onClick:e=>{j(e),f(t)},children:l?(0,C.jsx)(fq,{size:18}):(0,C.jsx)(pq,{size:18})}),(0,C.jsx)(cq,{label:u?`Stop talk`:`Talk`,active:u,enabled:k,onClick:e=>{j(e),p(t)},children:(0,C.jsx)(mq,{size:18,muted:!u})}),h&&g?(0,C.jsx)(cq,{label:`PTZ`,enabled:k,onClick:e=>{j(e),g(t)},children:(0,C.jsx)(gq,{size:18})}):null]}),(0,C.jsx)(`div`,{style:{position:`absolute`,right:8,bottom:8,pointerEvents:`none`},children:(0,C.jsx)(cq,{label:`Open`,enabled:k,onClick:e=>{j(e),m(t)},children:(0,C.jsx)(hq,{size:18})})})]})]})}function cq({children:e,label:t,onClick:n,big:r=!1,active:a=!1,enabled:o=!0}){let s=r?52:40;return(0,C.jsx)(`button`,{type:`button`,"aria-label":t,onClick:n,style:{width:s,height:s,borderRadius:s/2,border:`none`,display:`flex`,alignItems:`center`,justifyContent:`center`,background:a?`rgba(59,130,246,0.85)`:`rgba(0,0,0,0.55)`,color:`#fafaf9`,cursor:`pointer`,padding:0,WebkitTapHighlightColor:`transparent`,pointerEvents:o?`auto`:`none`},children:e})}var lq={fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`};function uq({size:e}){return(0,C.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,children:(0,C.jsx)(`polygon`,{points:`6 4 20 12 6 20 6 4`,fill:`currentColor`})})}function dq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,children:[(0,C.jsx)(`rect`,{x:`6`,y:`4`,width:`4`,height:`16`,fill:`currentColor`}),(0,C.jsx)(`rect`,{x:`14`,y:`4`,width:`4`,height:`16`,fill:`currentColor`})]})}function fq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`path`,{d:`M19.07 4.93a10 10 0 010 14.14M15.54 8.46a5 5 0 010 7.07`})]})}function pq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,C.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]})}function mq({size:e,muted:t}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`path`,{d:`M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z`}),(0,C.jsx)(`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2M12 19v4`}),t&&(0,C.jsx)(`line`,{x1:`3`,y1:`3`,x2:`21`,y2:`21`})]})}function hq({size:e}){return(0,C.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:(0,C.jsx)(`path`,{d:`M15 3h6v6M21 3l-9 9M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5`})})}function gq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`path`,{d:`M12 2v20M2 12h20`}),(0,C.jsx)(`path`,{d:`M12 2l-3 3M12 2l3 3M12 22l-3-3M12 22l3-3M2 12l3-3M2 12l3 3M22 12l-3-3M22 12l-3 3`})]})}function _q({message:e}){return(0,S.useEffect)(()=>BK(RK(`error`,e)),[e]),(0,C.jsxs)(`div`,{style:{position:`fixed`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`#000`,color:`#f87171`,fontFamily:`system-ui, sans-serif`,fontSize:13,padding:16,textAlign:`center`},children:[`Grid embed config error: `,e]})}function vq({system:e,config:t}){let[n,r]=(0,S.useState)(()=>new Set(t.audioOnIds??[])),a=AK(),o=(0,S.useRef)(a.setActiveMic);o.current=a.setActiveMic;let[s,c]=(0,S.useState)(()=>new Set(t.pausedIds??[])),[l,u]=(0,S.useState)(t.highlight),[d,f]=(0,S.useState)(t.activeOnly??!1),[p,m]=(0,S.useState)(t.showBoxes??!1),h=NK(t.devices,l),g=(0,S.useMemo)(()=>d?t.devices.filter(e=>h.has(e)):t.devices,[d,t.devices,h]),[_,v]=(0,S.useState)(t.quality),[y,b]=(0,S.useState)(t.layout),[x,w]=(0,S.useState)(t.showName),[T,E]=(0,S.useState)(0),[D,ee]=(0,S.useState)(()=>t.snapshots??{}),te=(0,S.useMemo)(()=>new Set(t.ptzIds??[]),[t.ptzIds]),[O,ne]=(0,S.useState)({w:window.innerWidth,h:window.innerHeight}),[re,ie]=(0,S.useState)({});(0,S.useEffect)(()=>{let t=!1;return e.trpcClient.deviceManager.listAll.query({}).then(e=>{if(t)return;let n={};for(let t of e)n[t.id]={name:t.name??`Camera ${t.id}`,online:t.online??!1};ie(n)}).catch(()=>{}),()=>{t=!0}},[e]),(0,S.useEffect)(()=>(window.__camstackGrid={setAudioOn:e=>r(new Set(e)),setMutedAll:e=>{e&&r(new Set)},setActiveMic:e=>o.current(e),setHighlight:e=>u(e),setActiveOnly:e=>f(e),setShowBoxes:e=>m(e),setPaused:e=>c(new Set(e)),setQuality:e=>v(e),setLayout:e=>b(e),setShowName:w,setShowBadges:()=>{},setSnapshots:e=>ee(e),fit:(e,t)=>ne({w:e,h:t}),reconnect:()=>E(e=>e+1)},BK(RK(`ready`)),()=>{window.__camstackGrid&&delete window.__camstackGrid}),[]),(0,S.useEffect)(()=>uK(e=>{let t=window.__camstackGrid;if(t)switch(e.kind){case`setAudioOn`:t.setAudioOn(e.value);break;case`setMutedAll`:t.setMutedAll(e.value);break;case`setActiveMic`:t.setActiveMic(e.value);break;case`setHighlight`:t.setHighlight(e.value);break;case`setActiveOnly`:t.setActiveOnly(e.value);break;case`setShowBoxes`:t.setShowBoxes(e.value===!0);break;case`setPaused`:t.setPaused(e.value);break;case`setQuality`:t.setQuality(e.value);break;case`setLayout`:t.setLayout(e.value);break;case`setShowName`:t.setShowName(e.value);break;case`setShowBadges`:t.setShowBadges(e.value);break;case`setSnapshots`:t.setSnapshots(e.value);break;case`fit`:t.fit(e.w,e.h);break;case`reconnect`:t.reconnect();break;default:break}}),[]);let ae=(0,S.useMemo)(()=>kK(g.length,O.w,O.h,y),[g.length,O.w,O.h,y]),oe=(0,S.useRef)(null);return(0,S.useEffect)(()=>{let e=oe.current;if(!e)return;let t=[];e.querySelectorAll(`[data-device-id]`).forEach(e=>{let n=Number(e.dataset.deviceId),r=e.getBoundingClientRect();t.push({deviceId:n,rect:{x:r.x,y:r.y,w:r.width,h:r.height}})}),t.length&&BK(zK(t))},[ae,g]),(0,C.jsxs)(`div`,{ref:oe,style:{position:`fixed`,inset:0,background:`#000`,display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`center`},children:[d&&g.length===0&&(0,C.jsx)(`div`,{style:{color:`#a1a1aa`,fontFamily:`system-ui, sans-serif`,fontSize:14,padding:24,textAlign:`center`},children:`No active cameras`}),g.map(t=>(0,C.jsx)(`div`,{"data-device-id":t,style:{width:ae.cellW,height:ae.cellH},children:(0,C.jsx)(sq,{system:e,deviceId:t,name:re[t]?.name??`Camera ${t}`,online:re[t]?.online??!1,quality:_,muted:!n.has(t),paused:s.has(t),showName:x,audioActive:n.has(t),micActive:a.activeMicId===t,onTogglePause:e=>BK(IK(e)),onToggleAudio:e=>BK(FK(e)),onToggleMic:a.toggleMic,onOpen:e=>BK(PK(e)),ptzSupported:te.has(t),onPtz:e=>BK(LK(e)),highlight:l,showBoxes:p,reconnectSignal:T,posterUrl:D[String(t)]})},t))]})}function yq(){let e=fK(`grid`,()=>window.__CAMSTACK_GRID__,oK,DK),t=(0,S.useMemo)(()=>e===null||!e.ok?null:{system:xA({serverUrl:e.config.serverUrl,token:e.config.token}),queryClient:new BT({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}})},[e]);return(0,S.useEffect)(()=>{if(t)return()=>t.system.close()},[t]),e===null?null:e.ok?t?(0,C.jsx)(tz,{system:t.system,children:(0,C.jsx)(UT,{client:t.queryClient,children:(0,C.jsx)($.Provider,{client:t.system.trpcClient,queryClient:t.queryClient,children:(0,C.jsx)(vq,{system:t.system,config:e.config})})})}):(0,C.jsx)(_q,{message:`Failed to initialise the grid embed`}):(0,C.jsx)(_q,{message:e.error})}function bq(e){switch(e.kind){case`seekTo`:return{t:`seek`,epoch:e.epochMs};case`scrubEnd`:return{t:`scrubCommit`,epoch:e.epochMs};case`play`:return{t:`setRate`,rate:1};case`pause`:return{t:`setRate`,rate:0};case`setRate`:return{t:`setRate`,rate:Math.min(4,Math.max(0,e.rate))};case`stepFrame`:return{t:`stepFrame`,dir:e.dir};case`goLive`:return{t:`goLive`};case`playRecorded`:return{t:`playRecorded`,deviceId:e.deviceId,epoch:e.epochMs,profile:e.profile};case`scrubStart`:case`scrubTo`:return null}}var xq=class{capacity;dispose;map=new Map;constructor(e,t){this.capacity=e,this.dispose=t}has(e){return this.map.has(e)}get(e){if(!this.map.has(e))return;let t=this.map.get(e);return this.map.delete(e),t!==void 0&&this.map.set(e,t),t}set(e,t){if(this.map.has(e)){let t=this.map.get(e);this.map.delete(e),t!==void 0&&this.dispose?.(t)}for(this.map.set(e,t);this.map.size>this.capacity;){let e=this.map.keys().next().value;if(e===void 0)break;let t=this.map.get(e);this.map.delete(e),t!==void 0&&this.dispose?.(t)}}clear(){this.map.forEach(e=>this.dispose?.(e)),this.map.clear()}};function Sq(e){try{return new URL(e).toString()}catch{let t=typeof window<`u`&&window.location?.origin?window.location.origin:`http://localhost`;return new URL(e,t).toString()}}function Cq(e,t){return new URL(t,e).toString()}function wq(e){let t=(e.split(`/`).pop()??``).match(/^(\d+)-(\d+)(?:-\d+)?\.m4s$/);return t?{startMs:Number(t[1]),durMs:Number(t[2])}:null}function Tq(e,t){let n=e.split(`
|
|
110
|
+
`;function rH({trpc:e,deviceId:t,layout:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s;if(n===`compact`)return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`span`,{className:Z(`text-xs tabular-nums font-medium`,GV[c.mode]),children:c.target===null?c.currentTemp===null?null:(0,C.jsxs)(`span`,{className:`text-foreground-subtle`,children:[c.currentTemp,`°`]}):(0,C.jsxs)(C.Fragment,{children:[c.target,`°`,c.currentTemp!==null&&(0,C.jsxs)(`span`,{className:`text-foreground-subtle font-normal`,children:[` `,`(`,c.currentTemp,`°)`]})]})}),c.target!==null&&(0,C.jsxs)(C.Fragment,{children:[(0,C.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,C.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,C.jsx)(`select`,{"aria-label":`Mode`,value:c.mode,disabled:u,onChange:e=>{e.stopPropagation();let t=c.availableModes.find(t=>t===e.target.value);!u&&t&&(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,C.jsx)(`option`,{value:e,children:JV[e]},e))})]});let d=XV[c.mode],f=c.mode!==`off`,p=eH(c.preset),m=c.preset===`turbo`,h=Math.max(.55,tH(c.fanMode)*(m?.6:1)),g=c.swingVertical!==null,_=c.swingHorizontal!==null,v=f&&(c.swingVertical===!0||c.swingHorizontal===!0);return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:Z(`relative flex flex-col items-stretch gap-2.5 overflow-hidden rounded-lg border p-3 transition-colors`,WV[c.mode]),children:[(0,C.jsx)(`style`,{children:nH}),(0,C.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,C.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-60`,children:(0,C.jsx)(lH,{mode:c.mode,accent:d,periodSec:h,swaying:v})}),(0,C.jsx)(`div`,{className:`pointer-events-none absolute inset-0 bg-gradient-to-b from-surface/50 via-transparent to-surface/50`}),f&&(0,C.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:d,animation:`acv-glow 3.2s ease-in-out infinite`}}),(0,C.jsxs)(`div`,{className:`relative z-10 flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide`,style:{color:d},children:[(0,C.jsx)(aH,{mode:c.mode,className:`h-3.5 w-3.5`}),JV[c.mode],c.currentTemp!==null&&(0,C.jsxs)(`span`,{className:`normal-case text-foreground-subtle`,children:[`· `,c.currentTemp,`° now`]}),c.currentHumidity!==null&&(0,C.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 normal-case text-foreground-subtle`,children:[(0,C.jsx)(tL,{className:`h-3 w-3`}),c.currentHumidity,`%`]})]}),c.target===null?(0,C.jsxs)(`div`,{className:`relative z-10 flex items-baseline gap-0.5`,children:[(0,C.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums text-foreground`,children:c.currentTemp??`—`}),(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`div`,{className:`relative z-10 flex items-center gap-3`,children:[(0,C.jsx)(sH,{label:`Decrease target`,symbol:`−`,disabled:u,onClick:()=>{if(u||c.target===null)return;let e=c.target-1;l({target:e}),a.setTarget({target:e})}}),(0,C.jsxs)(`div`,{className:`flex items-baseline gap-0.5`,children:[(0,C.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums`,style:{color:d},children:c.target}),(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}),(0,C.jsx)(sH,{label:`Increase target`,symbol:`+`,disabled:u,onClick:()=>{if(u||c.target===null)return;let e=c.target+1;l({target:e}),a.setTarget({target:e})}})]}),(0,C.jsx)(`div`,{className:`relative z-10 w-36`,children:(0,C.jsx)(cH,{value:c.target,min:ZV,max:QV,accent:d})})]})]}),(0,C.jsxs)(`div`,{className:`relative z-10 grid grid-cols-3 gap-2`,children:[(0,C.jsx)(oH,{label:`Mode`,icon:(0,C.jsx)(`span`,{style:{color:d},className:`flex`,children:(0,C.jsx)(aH,{mode:c.mode,className:`h-4 w-4`})}),value:c.mode,options:c.availableModes.map(e=>({value:e,label:JV[e]})),disabled:u,onChange:e=>{let t=c.availableModes.find(t=>t===e);t&&(l({mode:t}),a.setMode({mode:t}))}}),c.availableFanModes.length>0&&(0,C.jsx)(oH,{label:`Fan`,icon:(0,C.jsx)(_R,{className:`h-4 w-4 text-sky-500`}),value:c.fanMode,options:c.availableFanModes.map(e=>({value:e,label:$V(e)})),disabled:u,onChange:e=>{l({fanMode:e}),a.setFanMode({fanMode:e})}}),c.availablePresets.length>0&&(0,C.jsx)(oH,{label:`Preset`,icon:(0,C.jsx)(p,{className:`h-4 w-4 text-emerald-500`}),value:c.preset,options:c.availablePresets.map(e=>({value:e,label:$V(e)})),disabled:u,onChange:e=>{l({preset:e}),a.setPreset({preset:e})}})]}),(g||_)&&(0,C.jsx)(iH,{label:`Swing`,children:(0,C.jsxs)(`div`,{className:`grid grid-cols-2 gap-1`,children:[g&&(0,C.jsx)(dH,{axis:`vertical`,on:c.swingVertical??!1,busy:u,onToggle:e=>{l({swingVertical:e}),a.setSwingVertical({on:e})}}),_&&(0,C.jsx)(dH,{axis:`horizontal`,on:c.swingHorizontal??!1,busy:u,onToggle:e=>{l({swingHorizontal:e}),a.setSwingHorizontal({on:e})}})]})})]})}function iH({label:e,children:t}){return(0,C.jsxs)(`div`,{className:`relative z-10 flex flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),t]})}function aH({mode:e,className:t}){let n=YV[e];return(0,C.jsx)(n,{className:t,"aria-hidden":!0})}function oH({label:e,icon:t,value:n,options:r,disabled:a,onChange:o}){return(0,C.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),(0,C.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`,a&&`opacity-40`),children:[(0,C.jsx)(`span`,{className:`flex shrink-0`,children:t}),(0,C.jsx)(`select`,{"aria-label":e,value:n,disabled:a,onChange:e=>{e.stopPropagation(),a||o(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,C.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,C.jsx)(RI,{className:`h-3 w-3 shrink-0 text-foreground-subtle`})]})]})}function sH({label:e,symbol:t,disabled:n,onClick:r}){return(0,C.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 cH({value:e,min:t,max:n,accent:r}){let a=`${Math.min(1,Math.max(0,(e-t)/(n-t)))*100}%`;return(0,C.jsxs)(`div`,{className:`mt-2 w-full`,children:[(0,C.jsxs)(`div`,{className:`relative h-1.5 w-full rounded-full bg-surface-subtle`,children:[(0,C.jsx)(`div`,{className:`absolute inset-y-0 left-0 rounded-full`,style:{width:a,background:r}}),(0,C.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:a,background:r}})]}),(0,C.jsxs)(`div`,{className:`mt-0.5 flex justify-between text-[9px] tabular-nums text-foreground-subtle`,children:[(0,C.jsxs)(`span`,{children:[t,`°`]}),(0,C.jsxs)(`span`,{children:[n,`°`]})]})]})}function lH({mode:e,accent:t,periodSec:n,swaying:r}){let a=[0,1,2,3,4,5],o=e===`heat`,s=e===`dry`;return(0,C.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-0 overflow-hidden`,children:e===`off`?(0,C.jsx)(`div`,{className:`flex h-full items-center justify-center gap-2 opacity-30`,children:a.map(e=>(0,C.jsx)(`span`,{className:`h-8 w-1 rounded-full bg-foreground-subtle opacity-40`},e))}):e===`fan_only`?(0,C.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,C.jsx)(uH,{color:t,periodSec:Math.max(.5,n*.7),size:56})}):(0,C.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:a.map(e=>(0,C.jsx)(`span`,{className:`acv-streak absolute rounded-full`,style:{left:`${8+e*15}%`,width:s?`0.4rem`:`0.3rem`,height:s?`0.4rem`:`1.9rem`,background:t,boxShadow:`0 0 6px ${t}`,animationName:o?`acv-rise`:`acv-fall`,animationTimingFunction:`linear`,animationIterationCount:`infinite`,animationDuration:`${n}s`,animationDelay:`${e%3*(n/3)+e*.05}s`}},e))})})}function uH({color:e,periodSec:t,size:n}){return(0,C.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,C.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,C.jsx)(`circle`,{cx:`50`,cy:`50`,r:`7`,fill:e})]})}function dH({axis:e,on:t,busy:n,onToggle:r}){let a=e===`vertical`?`Vertical`:`Horizontal`,o=e===`vertical`?kL:OL,s=e===`vertical`?`acv-swing-v`:`acv-swing-h`;return(0,C.jsxs)(`button`,{type:`button`,"aria-label":`${a} 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,C.jsx)(o,{className:`acv-swing h-4 w-4`,"aria-hidden":!0,style:t?{animation:`${s} 1.4s ease-in-out infinite`}:void 0}),a]})}var fH={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`},pH={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`},mH=[`off`,`all`,`one`];function hH(e){return mH.includes(e)}var gH={off:`Off`,all:`All`,one:`One`};function _H(e){return e===`playing`||e===`buffering`?`pause`:`play`}function vH({trpc:e,deviceId:t,features:n,layout:r,optimistic:a}){let{cap:o,slice:s,available:c}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:l,applyOptimistic:u}=bz(s,{enabled:a??!0});if(l===void 0)return null;let d=!c,f=_H(l.state);return(0,C.jsxs)(`div`,{"data-state":l.state,className:Z(`inline-flex items-center gap-2 rounded border px-2 py-1 transition-colors`,fH[l.state],r===`full`&&`flex-col items-stretch gap-3`),children:[(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(`span`,{role:`status`,"aria-label":l.state,className:Z(`inline-block h-2 w-2 rounded-full flex-shrink-0`,pH[l.state])}),(0,C.jsx)(`button`,{type:`button`,"aria-label":f===`play`?`Play`:`Pause`,disabled:d,onClick:e=>{e.stopPropagation(),!d&&(f===`play`?(u({state:`playing`}),o?.play({})):(u({state:`paused`}),o?.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`,d&&`opacity-40 cursor-not-allowed`),children:f===`play`?`▶`:`⏸`})]}),r===`full`&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":`Previous`,disabled:d,onClick:e=>{e.stopPropagation(),d||o?.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`,d&&`opacity-40 cursor-not-allowed`),children:`⏮`}),(0,C.jsx)(`button`,{type:`button`,"aria-label":`Next`,disabled:d,onClick:e=>{e.stopPropagation(),d||o?.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`,d&&`opacity-40 cursor-not-allowed`),children:`⏭`})]}),l.volumeLevel!==null&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Vol`}),(0,C.jsx)(`input`,{"aria-label":`Volume`,type:`range`,min:0,max:100,step:1,value:l.volumeLevel,disabled:d,onChange:e=>{let t=Number(e.target.value);u({volumeLevel:t}),d||o?.setVolume({volumeLevel:t})}}),(0,C.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[l.volumeLevel,`%`]})]}),l.isMuted!==null&&(0,C.jsx)(`button`,{type:`button`,"aria-label":l.isMuted?`Unmute`:`Mute`,disabled:d,onClick:e=>{if(e.stopPropagation(),!d&&l.isMuted!==null){let e=!l.isMuted;u({isMuted:e}),o?.setMute({muted:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,l.isMuted?`bg-amber-400 text-amber-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,d&&`opacity-40 cursor-not-allowed`),children:l.isMuted?`🔇`:`🔊`}),l.availableSources.length>0&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Source`}),(0,C.jsxs)(`select`,{"aria-label":`Source`,value:l.source,disabled:d,onChange:e=>{let t=e.target.value;!d&&t&&(u({source:t}),o?.selectSource({source:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:[(0,C.jsx)(`option`,{value:``,disabled:!0,children:`—`}),l.availableSources.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))]})]}),l.shuffle!==null&&(0,C.jsx)(`button`,{type:`button`,"aria-label":`Shuffle`,disabled:d,onClick:e=>{if(e.stopPropagation(),!d&&l.shuffle!==null){let e=!l.shuffle;u({shuffle:e}),o?.setShuffle({shuffle:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,l.shuffle?`bg-green-400 text-green-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,d&&`opacity-40 cursor-not-allowed`),children:`⇌ Shuffle`}),l.repeat!==null&&(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Repeat`}),(0,C.jsx)(`select`,{"aria-label":`Repeat`,value:l.repeat,disabled:d,onChange:e=>{let t=e.target.value;!d&&hH(t)&&(u({repeat:t}),o?.setRepeat({repeat:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:mH.map(e=>(0,C.jsx)(`option`,{value:e,children:gH[e]},e))})]})]})]})}function yH(e){return e.slice(0,10)}function bH(e){return e.slice(0,5)}function xH(e){return(e.includes(`T`)?e:e.replace(` `,`T`)).slice(0,16)}function SH({value:e,busy:t,onCommit:n,unit:r,min:a,max:o,step:s,precision:c}){let[l,u]=(0,S.useState)(gM(e,c)),d=Number(l),f=l!==``&&!Number.isNaN(d),p=s??1,m=e=>{let t=e;return a!==void 0&&(t=Math.max(a,t)),o!==void 0&&(t=Math.min(o,t)),t},h=()=>{!t&&f&&n(m(d))};return(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":`Decrement`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e-p);u(gM(t,c)),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,C.jsx)(`input`,{"aria-label":`Numeric value`,type:`number`,disabled:t,value:l,onChange:e=>{u(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,C.jsx)(`span`,{className:`text-foreground-subtle text-xs`,children:r}),(0,C.jsx)(`button`,{type:`button`,"aria-label":`Increment`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e+p);u(gM(t,c)),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 CH({value:e,busy:t,onCommit:n}){let[r,a]=(0,S.useState)(e);return(0,C.jsx)(`input`,{type:`text`,disabled:t,value:r,onChange:e=>a(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 wH({slice:e,busy:t,setValueFn:n,layout:r}){switch(e.kind){case`numeric`:return(0,C.jsx)(SH,{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,C.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 border border-border bg-surface px-1 py-0.5 text-xs`,t&&`opacity-40 cursor-not-allowed`),children:e.options.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))});case`text`:return(0,C.jsx)(CH,{value:String(e.value),busy:t,onCommit:e=>{n({control:{kind:`text`,value:e}})}});case`datetime`:{let a=String(e.value),o=e.format??`datetime`;return r===`compact`?a===``?(0,C.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground-subtle`,children:`—`}):(0,C.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground`,children:hM(a,o)}):(0,C.jsx)(`input`,{type:o===`date`?`date`:o===`time`?`time`:`datetime-local`,"aria-label":`Control value`,disabled:t,value:o===`date`?yH(a):o===`time`?bH(a):xH(a),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 TH({trpc:e,deviceId:t,features:n,layout:r,optimistic:a}){let{cap:o,slice:s,available:c}=sz({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control}),{display:l,applyOptimistic:u}=bz(s,{enabled:a??!0});if(l===void 0)return null;let d=!c;return(0,C.jsx)(`div`,{"data-kind":l.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,C.jsx)(wH,{slice:l,busy:d,setValueFn:e=>{!d&&o&&(u({value:e.control.value}),o.setValue(e))},layout:r})})}var EH=5,DH=35;function OH(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function kH(e,t,n){return Math.round(t+e*(n-t))}var AH=176,jH=76,MH=2*Math.PI*jH,NH=270/360*MH,PH=AH/2-jH-10;function FH(e){let t=AH/2,n=AH/2,r=MH-NH,a=e.mode===`band`?(()=>{let t=e.band.from*NH,n=Math.max(0,(e.band.to-e.band.from)*NH);return{dasharray:`${n} ${MH-n}`,dashoffset:-t}})():(()=>{let t=e.fraction*NH;return{dasharray:`${t} ${MH-t}`,dashoffset:void 0}})();return(0,C.jsxs)(`svg`,{width:AH,height:AH,viewBox:`0 0 ${AH} ${AH}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,C.jsx)(`circle`,{cx:t,cy:n,r:jH,fill:`none`,stroke:`var(--color-border)`,strokeWidth:12,strokeDasharray:`${NH} ${r}`,strokeLinecap:`round`}),(0,C.jsx)(`circle`,{cx:t,cy:n,r:jH,fill:`none`,stroke:e.color,strokeWidth:12,strokeDasharray:a.dasharray,...a.dashoffset===void 0?{}:{strokeDashoffset:a.dashoffset},strokeLinecap:`round`})]})}var IH={heat:`#f59e0b`,cool:`#60a5fa`,auto:`#c084fc`,heat_cool:`#e879f9`,fan_only:`#94a3b8`,dry:`#22d3ee`,off:`#d4d4d8`};function LH({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s,d=IH[c.mode],f=c.mode===`heat_cool`||c.targetLow!==null&&c.targetHigh!==null,p=EH,m=DH,h=!f&&c.target!==null?OH(c.target,p,m):0,g=f&&c.targetLow!==null?OH(c.targetLow,p,m):0,_=f&&c.targetHigh!==null?OH(c.targetHigh,p,m):0;return(0,C.jsxs)(`div`,{"data-mode":c.mode,className:Z(`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4 transition-colors`,WV[c.mode]),children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,C.jsxs)(`div`,{className:`relative`,style:{width:AH,height:AH},children:[f?(0,C.jsx)(FH,{mode:`band`,band:{from:g,to:_},color:d}):(0,C.jsx)(FH,{mode:`fill`,fraction:h,color:d}),f?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:g,color:d,knobTopPx:PH,onDragFraction:e=>{if(u||c.targetHigh===null)return;let t=Math.min(kH(e,p,m),c.targetHigh);l({targetLow:t}),a.setTargetRange({targetLow:t,targetHigh:c.targetHigh})}})}),(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:_,color:d,knobTopPx:PH,onDragFraction:e=>{if(u||c.targetLow===null)return;let t=Math.max(kH(e,p,m),c.targetLow);l({targetHigh:t}),a.setTargetRange({targetLow:c.targetLow,targetHigh:t})}})})]}):(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:h,color:d,knobTopPx:PH,onDragFraction:e=>{if(u)return;let t=kH(e,p,m);l({target:t}),a.setTarget({target:t})}})}),(0,C.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:[(0,C.jsxs)(`div`,{"data-testid":`current-temp`,className:`text-4xl font-bold tabular-nums text-foreground leading-none`,children:[c.currentTemp===null?`—`:c.currentTemp,(0,C.jsx)(`span`,{className:`text-lg text-foreground-subtle font-normal ml-0.5`,children:`°`})]}),!f&&c.target!==null&&(0,C.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:d},children:[`set `,c.target,`°`]}),f&&c.targetLow!==null&&c.targetHigh!==null&&(0,C.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:d},children:[c.targetLow,`° – `,c.targetHigh,`°`]})]})]}),!f&&c.target!==null&&(0,C.jsx)(`div`,{className:`w-[200px]`,children:(0,C.jsx)(cz,{value:`${c.target}°`,onDelta:e=>{if(u||c.target===null)return;let t=c.target+e;l({target:t}),a.setTarget({target:t})}})})]}),(0,C.jsx)(`select`,{"aria-label":`Mode`,value:c.mode,disabled:u,onChange:e=>{e.stopPropagation();let t=e.target.value;!u&&t&&(l({mode:c.availableModes.find(e=>e===t)??c.mode}),a.setMode({mode:c.availableModes.find(e=>e===t)??c.mode}))},className:Z(`w-full rounded border border-border bg-surface px-3 py-1.5 text-sm`,u&&`opacity-40 cursor-not-allowed`),children:c.availableModes.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))})]})}function RH(e){return e===`locked`||e===`locking`}function zH(e){return e===`jammed`}var BH={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 VH({state:e}){let t=BH[e];return(0,C.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,C.jsx)(bL,{className:`h-8 w-8`,"aria-hidden":`true`}):(0,C.jsx)(yL,{className:`h-8 w-8`,"aria-hidden":`true`})})}function HH({state:e}){return(0,C.jsx)(`span`,{className:Z(`text-sm font-medium capitalize`,zH(e)?`text-danger`:`text-foreground-muted`),children:e})}function UH({busy:e,onOpen:t}){return(0,C.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,C.jsx)(QI,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Open`]})}function WH({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=RH(c.state),d=zH(c.state)||!s,f=n?.includes(js.LockOpen)===!0,p=()=>{d||(u?(l({state:`unlocking`}),a.unlock({})):(l({state:`locking`}),a.lock({})))},m=()=>{d||a.open({})},h=u?`Unlock`:`Lock`;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,C.jsx)(VH,{state:c.state}),(0,C.jsx)(HH,{state:c.state})]}),(0,C.jsx)(`div`,{className:Z(d&&`pointer-events-none opacity-40`),children:(0,C.jsx)(lz,{on:u,targetLabel:h,onConfirm:p})}),f&&(0,C.jsx)(`div`,{className:`flex justify-center`,children:(0,C.jsx)(UH,{busy:d,onOpen:m})})]})}var GH=150,KH=64,qH=GH/2,JH=2*Math.PI*KH,YH=270/360*JH;function XH({fraction:e,color:t,children:n,onDragFraction:r}){let a=Math.min(1,Math.max(0,e)),o=GH/2,s=GH/2,c=JH-YH,l=a*YH;return(0,C.jsxs)(`div`,{className:`relative`,style:{width:GH,height:GH},children:[(0,C.jsxs)(`svg`,{width:GH,height:GH,viewBox:`0 0 ${GH} ${GH}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,C.jsx)(`circle`,{cx:o,cy:s,r:KH,fill:`none`,stroke:`var(--color-border)`,strokeWidth:11,strokeDasharray:`${YH} ${c}`,strokeLinecap:`round`}),(0,C.jsx)(`circle`,{cx:o,cy:s,r:KH,fill:`none`,stroke:t,strokeWidth:11,strokeDasharray:`${l} ${JH-l}`,strokeLinecap:`round`})]}),(0,C.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,C.jsx)(mz,{fraction:a,color:t,knobTopPx:qH-KH-10,...r===void 0?{}:{onDragFraction:r}})}),(0,C.jsx)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:n})]})}function ZH({on:e,busy:t,onToggle:n}){let r={transform:e?`translateX(30px)`:`translateX(3px)`};return(0,C.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,C.jsx)(`span`,{className:Z(`absolute h-6 w-6 rounded-full transition-all`,e?`bg-success`:`bg-foreground-subtle`),style:r})})}var QH=500,$H=150,eU=`linear-gradient(90deg, #9ec9ff, #ffffff, #ffb24d)`;function tU(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function nU(e){return tU(e,$H,QH)}var rU=`#f4b740`,iU=`#d4d4d8`;function aU({trpc:e,deviceId:t,features:n,optimistic:r}){let a=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),o=sz({trpc:e,deviceId:t,cap:e=>e.brightness,slice:e=>e.state.brightness}),s=sz({trpc:e,deviceId:t,cap:e=>e.color,slice:e=>e.state.color}),c=bz(a.slice,{enabled:r??!0}),l=bz(o.slice,{enabled:r??!0}),u=bz(s.slice,{enabled:r??!0});if(a.cap===void 0||c.display===void 0)return null;let d=c.display.on===!0,f=!a.available,p=l.display?.percentage??0,m=!o.available,h=d?p/100:0,g=d?rU:iU,_=(n?.includes(js.LightColorMired)??!1)&&s.cap!==void 0,v=u.display?.mireds,y=!s.available;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,C.jsxs)(XH,{fraction:h,color:g,children:[(0,C.jsxs)(`div`,{"data-testid":`brightness-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[p,(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,C.jsx)(hL,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}),o.cap!==void 0&&(0,C.jsxs)(`label`,{className:`flex w-full items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{className:`w-16`,children:`Brightness`}),(0,C.jsx)(`input`,{"aria-label":`Brightness`,type:`range`,min:0,max:100,step:1,className:`flex-1`,value:p,disabled:m||!d,onChange:e=>{let t=Number(e.target.value);l.applyOptimistic({percentage:t}),m||o.cap?.setBrightness({percentage:t})}}),(0,C.jsxs)(`span`,{className:`tabular-nums w-9 text-right`,children:[p,`%`]})]})]}),(0,C.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:d?`On`:`Off`}),(0,C.jsx)(ZH,{on:d,busy:f,onToggle:()=>{if(f)return;let e=!d;c.applyOptimistic({on:e}),a.cap?.setState({on:e})}})]}),_&&(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`color-temp-strip`,children:[(0,C.jsx)(iR,{className:`h-4 w-4 text-foreground-subtle`,"aria-hidden":`true`}),(0,C.jsxs)(`label`,{className:`flex-1`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Colour temperature`}),(0,C.jsx)(`input`,{"aria-label":`Colour temperature`,type:`range`,min:$H,max:QH,step:1,className:`w-full`,value:v??QH,disabled:y||!d,onChange:e=>{let t=Number(e.target.value);u.applyOptimistic({mode:`mired`,mireds:t}),y||s.cap?.setColor({color:{mode:`mired`,mireds:t}})}}),(0,C.jsx)(`div`,{className:`pointer-events-none mt-1`,children:(0,C.jsx)(hz,{fraction:v===void 0?.5:nU(v),color:eU})})]})]})]})}var oU=`#3aa6a0`,sU=`#d4d4d8`;function cU({trpc:e,deviceId:t,features:n,optimistic:r}){let a=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),o=sz({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl}),s=bz(a.slice,{enabled:r??!0}),c=bz(o.slice,{enabled:r??!0});if(a.cap===void 0||s.display===void 0)return null;let l=s.display.on===!0,u=!a.available,d=c.display?.percentage??0,f=!o.available,p=l?d/100:0,m=l?oU:sU,h=n?.includes(js.FanSpeed)??!1,g=(n?.includes(js.FanOscillating)??!1)&&o.cap!==void 0,_=c.display?.availablePresets??[],v=(n?.includes(js.FanPreset)??!1)&&o.cap!==void 0&&_.length>0,y=c.display?.preset??``,b=c.display?.oscillating===!0,x=()=>{if(u)return;let e=!l;s.applyOptimistic({on:e}),a.cap?.setState({on:e})},S=()=>{if(f)return;let e=!b;c.applyOptimistic({oscillating:e}),o.cap?.setOscillating({oscillating:e})},w=e=>{if(f)return;let t=c.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));c.applyOptimistic({percentage:r}),o.cap?.setPercentage({percentage:r})},T=e=>{f||e===``||(c.applyOptimistic({preset:e}),o.cap?.setPreset({preset:e}))};return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,C.jsx)(`div`,{className:`flex flex-col items-center gap-3`,children:h?(0,C.jsxs)(XH,{fraction:p,color:m,onDragFraction:w,children:[(0,C.jsxs)(`div`,{"data-testid":`speed-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[d,(0,C.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,C.jsx)(rL,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}):(0,C.jsx)(`div`,{"data-testid":`fan-onoff-icon`,className:`flex h-[150px] w-[150px] items-center justify-center`,children:(0,C.jsx)(rL,{className:`h-16 w-16`,style:{color:m},"aria-hidden":`true`})})}),v&&(0,C.jsx)(`div`,{className:`flex justify-center`,children:(0,C.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:`Preset`}),(0,C.jsxs)(`select`,{"aria-label":`Fan preset`,value:y,disabled:f,onChange:e=>{e.stopPropagation(),T(e.target.value)},className:Z(`bg-surface border border-border rounded px-1 py-0.5`,f&&`opacity-40 cursor-not-allowed`),children:[(0,C.jsx)(`option`,{value:``,disabled:!0,children:`—`}),_.map(e=>(0,C.jsx)(`option`,{value:e,children:e},e))]})]})}),(0,C.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[g?(0,C.jsxs)(`button`,{type:`button`,"aria-label":`Oscillate`,"aria-pressed":b,disabled:f,onClick:e=>{e.stopPropagation(),S()},className:Z(`inline-flex items-center gap-1.5 rounded-md border px-3 py-1.5 text-xs font-medium transition-colors`,b?`border-success/50 bg-success/10 text-success`:`border-border text-foreground-muted hover:bg-surface-hover`,f&&`opacity-40 cursor-not-allowed`),children:[(0,C.jsx)(zL,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Oscillate`]}):(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l?`On`:`Off`}),(0,C.jsx)(ZH,{on:l,busy:u,onToggle:x})]})]})}function lU({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:a,available:o}=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),{display:s,applyOptimistic:c}=bz(a,{enabled:n??!0});if(r===void 0||s===void 0)return null;let l=s.on===!0,u=!o;return(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsx)(`div`,{"data-testid":`switch-glyph`,"data-state":l?`on`:`off`,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2 transition-colors`,l?`border-success/30 bg-success/10 text-success`:`border-border bg-surface-subtle text-foreground-subtle`),children:(0,C.jsx)(LL,{className:`h-8 w-8`,"aria-hidden":`true`})}),(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l?`On`:`Off`}),(0,C.jsx)(ZH,{on:l,busy:u,onToggle:()=>{if(u)return;let e=!l;c({on:e}),r.setState({on:e})}})]})}function uU(e){return e===`playing`||e===`buffering`?`pause`:`play`}function dU(e,t){return e===null||t===null||t<=0?0:Math.min(1,Math.max(0,e/t))}function fU(e){if(e===null)return`--:--`;let t=Math.floor(e/1e3);return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function pU({title:e,subtitle:t}){return(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,C.jsx)(AL,{className:`h-6 w-6 text-foreground-subtle`,"aria-hidden":`true`}),(0,C.jsx)(`span`,{className:`text-base font-semibold text-foreground line-clamp-1`,children:e??`Nothing playing`}),t&&(0,C.jsx)(`span`,{className:`text-xs text-foreground-subtle line-clamp-1`,children:t})]})}function mU({label:e,busy:t,onPress:n,children:r,primary:a}){return(0,C.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`,a?`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 hU({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:a,slice:o,available:s}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:c,applyOptimistic:l}=bz(o,{enabled:r??!0});if(a===void 0||c===void 0)return null;let u=!s,d=uU(c.state),f=(n?.includes(js.MediaPlayerSeek)??!1)&&c.durationMs!==null&&c.durationMs>0,p=n?.includes(js.MediaPlayerNext)??!1,m=n?.includes(js.MediaPlayerPrevious)??!1,h=(n?.includes(js.MediaPlayerVolume)??!1)&&c.volumeLevel!==null,g=()=>{u||(d===`play`?(l({state:`playing`}),a.play({})):(l({state:`paused`}),a.pause({})))},_=c.currentMedia?.artist??c.currentMedia?.album??null,v=dU(c.positionMs,c.durationMs),y=c.volumeLevel??0;return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsx)(pU,{title:c.currentMedia?.title??null,subtitle:_}),f&&(0,C.jsxs)(`div`,{"data-testid":`media-seek`,className:`flex flex-col gap-1`,children:[(0,C.jsxs)(`label`,{className:`relative block`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Seek`}),(0,C.jsx)(`input`,{"aria-label":`Seek`,type:`range`,min:0,max:c.durationMs??0,step:1e3,className:`absolute inset-0 h-4 w-full cursor-pointer opacity-0`,value:c.positionMs??0,disabled:u,onChange:e=>{if(u)return;let t=Number(e.target.value);l({positionMs:t}),a.seek({positionMs:t})}}),(0,C.jsx)(`div`,{className:`pointer-events-none`,children:(0,C.jsx)(hz,{fraction:v})})]}),(0,C.jsxs)(`div`,{className:`flex justify-between text-[11px] tabular-nums text-foreground-subtle`,children:[(0,C.jsx)(`span`,{children:fU(c.positionMs)}),(0,C.jsx)(`span`,{children:fU(c.durationMs)})]})]}),(0,C.jsxs)(`div`,{className:`flex items-center justify-center gap-4`,children:[m&&(0,C.jsx)(mU,{label:`Previous`,busy:u,onPress:()=>void a.previous({}),children:(0,C.jsx)(qL,{className:`h-5 w-5`,"aria-hidden":`true`})}),(0,C.jsx)(mU,{label:d===`play`?`Play`:`Pause`,busy:u,onPress:g,primary:!0,children:d===`play`?(0,C.jsx)(IL,{className:`h-6 w-6`,"aria-hidden":`true`}):(0,C.jsx)(NL,{className:`h-6 w-6`,"aria-hidden":`true`})}),p&&(0,C.jsx)(mU,{label:`Next`,busy:u,onPress:()=>void a.next({}),children:(0,C.jsx)(JL,{className:`h-5 w-5`,"aria-hidden":`true`})})]}),h&&(0,C.jsxs)(`div`,{"data-testid":`media-volume`,className:`flex items-center gap-2`,children:[(0,C.jsx)(`button`,{type:`button`,"aria-label":c.isMuted===!0?`Unmute`:`Mute`,title:c.isMuted===!0?`Unmute`:`Mute`,disabled:u,onClick:e=>{if(e.stopPropagation(),u||c.isMuted===null)return;let t=!c.isMuted;l({isMuted:t}),a.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`,u&&`opacity-40 cursor-not-allowed`),children:c.isMuted===!0?(0,C.jsx)(pR,{className:`h-4 w-4`,"aria-hidden":`true`}):(0,C.jsx)(fR,{className:`h-4 w-4`,"aria-hidden":`true`})}),(0,C.jsxs)(`label`,{className:`relative block flex-1`,children:[(0,C.jsx)(`span`,{className:`sr-only`,children:`Volume`}),(0,C.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:y,disabled:u,onChange:e=>{if(u)return;let t=Number(e.target.value);l({volumeLevel:t}),a.setVolume({volumeLevel:t})}}),(0,C.jsx)(`div`,{className:`pointer-events-none`,children:(0,C.jsx)(hz,{fraction:y/100})})]}),(0,C.jsxs)(`span`,{className:`w-9 text-right text-[11px] tabular-nums text-foreground-subtle`,children:[y,`%`]})]})]})}var gU={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`}},_U={home:`Home`,away:`Away`,night:`Night`,vacation:`Vacation`,custom_bypass:`Bypass`};function vU(e){return e.startsWith(`armed_`)}function yU(e){return e===`arming`||e===`disarming`}function bU({icon:e}){return e===`disarmed`?(0,C.jsx)(WL,{className:`h-8 w-8`,"aria-hidden":`true`}):e===`triggered`?(0,C.jsx)(HL,{className:`h-8 w-8`,"aria-hidden":`true`}):e===`pending`?(0,C.jsx)(GL,{className:`h-8 w-8`,"aria-hidden":`true`}):(0,C.jsx)(UL,{className:`h-8 w-8`,"aria-hidden":`true`})}function xU({label:e,active:t,busy:n,onSelect:r}){return(0,C.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 SU({state:e,availableModes:t,busy:n,onDisarm:r,onArm:a}){let o=vU(e),s=yU(e);return(0,C.jsxs)(`div`,{className:`flex items-stretch gap-1 rounded-lg border border-border bg-surface-subtle p-1`,children:[(0,C.jsx)(xU,{label:`Disarm`,active:!o&&!s,busy:n,onSelect:r}),t.map(t=>(0,C.jsx)(xU,{label:_U[t],active:!s&&e===`armed_${t}`,busy:n,onSelect:()=>a(t)},t))]})}function CU(e,t,n){let{cap:r,slice:a,available:o}=sz({trpc:e,deviceId:t,cap:e=>e.alarmPanel,slice:e=>e.state.alarmPanel}),{display:s,applyOptimistic:c}=bz(a,{enabled:n??!0}),l=!o;return{display:s,capPresent:r!==void 0,busy:l,handleDisarm:()=>{r===void 0||l||(c({state:`disarming`}),r.disarm({}))},handleArm:e=>{r===void 0||l||(c({state:`arming`}),r.arm({mode:e}))}}}function wU({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:a,busy:o,handleDisarm:s,handleArm:c}=CU(e,t,n);return!a||r===void 0?null:(0,C.jsx)(SU,{state:r.state,availableModes:r.availableModes,busy:o,onDisarm:s,onArm:c})}function TU({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:a,busy:o,handleDisarm:s,handleArm:c}=CU(e,t,n);if(!a||r===void 0)return null;let l=gU[r.state];return(0,C.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,C.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`,l.colorClass),children:(0,C.jsx)(bU,{icon:l.icon})}),(0,C.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:l.label})]}),(0,C.jsx)(SU,{state:r.state,availableModes:r.availableModes,busy:o,onDisarm:s,onArm:c})]})}function EU({children:e}){return(0,C.jsx)(`div`,{className:`flex flex-col items-stretch gap-3 rounded-lg border border-border bg-surface p-4`,children:e})}function DU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch});return n!==void 0}function OU({trpc:e,deviceId:t,features:n,optimistic:r}){return DU(e,t)?(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function kU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl});return n!==void 0}function AU({trpc:e,deviceId:t,features:n,optimistic:r}){return kU(e,t)?(0,C.jsx)(VV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function jU({trpc:e,deviceId:t,features:n,optimistic:r}){return DU(e,t)?(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,C.jsx)(HV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function MU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl});return n!==void 0}function NU({trpc:e,deviceId:t,features:n,optimistic:r}){return MU(e,t)?(0,C.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,C.jsx)(zV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,C.jsx)(UV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function PU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl});return n!==void 0}function FU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(qV,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function IU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(rH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function LU({trpc:e,deviceId:t,features:n,optimistic:r}){return PU(e,t)?(0,C.jsx)(rH,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r}):null}function RU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer});return n!==void 0}function zU({trpc:e,deviceId:t,features:n,optimistic:r}){return RU(e,t)?(0,C.jsx)(vH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function BU(e,t){let{cap:n}=sz({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control});return n!==void 0}function VU({trpc:e,deviceId:t,features:n,optimistic:r}){return BU(e,t)?(0,C.jsx)(TH,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function HU({trpc:e,deviceId:t,features:n,optimistic:r}){return BU(e,t)?(0,C.jsx)(EU,{children:(0,C.jsx)(TH,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r})}):null}var UU={cover:{InlineControl:wz,HeroCard:kz},valve:{InlineControl:VB,HeroCard:KB},humidifier:{InlineControl:YB,HeroCard:ZB},"water-heater":{InlineControl:tV,HeroCard:rV},switch:{InlineControl:OU,HeroCard:lU},light:{InlineControl:jU,HeroCard:aU},fan:{InlineControl:NU,HeroCard:cU},sensor:{InlineControl:Yz,HeroCard:iB},thermostat:{InlineControl:FU,HeroCard:LH},climate:{InlineControl:IU,HeroCard:LU},button:{InlineControl:gz,HeroCard:_z},update:{InlineControl:sB,HeroCard:cB},lock:{InlineControl:AU,HeroCard:WH},"media-player":{InlineControl:zU,HeroCard:hU},alarm:{InlineControl:wU,HeroCard:TU},control:{InlineControl:VU,HeroCard:HU},weather:{InlineControl:lV,HeroCard:mV},vacuum:{InlineControl:xB,HeroCard:CB},"lawn-mower":{InlineControl:PB,HeroCard:IB},image:{InlineControl:xV,HeroCard:SV},"pet-feeder":{InlineControl:LV,HeroCard:RV},dummy:{InlineControl:Az,HeroCard:jz}};Object.fromEntries(Object.values(W).map(e=>[e,UU[$m[e]]])),W.Cover,W.Valve,W.Thermostat,W.Climate,W.Control,W.Button,W.MediaPlayer,W.AlarmPanel,W.Lock,W.Vacuum,W.LawnMower,W.Humidifier,W.Switch,W.Siren,W.Light,W.Fan,W.WaterHeater,W.Sensor,W.Presence,W.EventEmitter,W.Notifier,W.Script,W.Automation,W.Camera,W.Hub,W.Update,W.Generic,W.Weather,W.Container,W.Image,W.PetFeeder,new Set(Object.values(W));var WU={[W.Camera]:{icon:II,label:`Camera`},[W.Hub]:{icon:ML,label:`Hub`},[W.Light]:{icon:hL,label:`Light`},[W.Siren]:{icon:KL,label:`Siren`},[W.Switch]:{icon:aR,label:`Switch`},[W.Sensor]:{icon:wI,label:`Sensor`},[W.Thermostat]:{icon:iR,label:`Thermostat`},[W.Climate]:{icon:TI,label:`Air conditioner`},[W.Button]:{icon:HI,label:`Button`},[W.EventEmitter]:{icon:bR,label:`Event Emitter`},[W.Update]:{icon:zL,label:`Update`},[W.Generic]:{icon:FI,label:`Generic`},[W.Notifier]:{icon:jI,label:`Notifier`},[W.Script]:{icon:VL,label:`Script`},[W.Automation]:{icon:vR,label:`Automation`},[W.Lock]:{icon:bL,label:`Lock`},[W.Cover]:{icon:MI,label:`Cover`},[W.Valve]:{icon:FL,label:`Valve`},[W.Humidifier]:{icon:mR,label:`Humidifier`},[W.WaterHeater]:{icon:OI,label:`Water heater`},[W.Fan]:{icon:rL,label:`Fan`},[W.MediaPlayer]:{icon:TL,label:`Media player`},[W.AlarmPanel]:{icon:HL,label:`Alarm panel`},[W.Control]:{icon:YL,label:`Control`},[W.Presence]:{icon:SL,label:`Presence`},[W.Weather]:{icon:JI,label:`Weather`},[W.Vacuum]:{icon:PI,label:`Vacuum`},[W.LawnMower]:{icon:oR,label:`Lawn mower`},[W.Container]:{icon:FI,label:`Container`},[W.Image]:{icon:pL,label:`Image`},[W.PetFeeder]:{icon:NI,label:`Pet feeder`}},GU={[G.Siren]:{icon:KL,label:`Siren`},[G.Floodlight]:{icon:hL,label:`Floodlight`},[G.Spotlight]:{icon:oL,label:`Spotlight`},[G.PirSensor]:{icon:RL,label:`PIR sensor`},[G.Chime]:{icon:jI,label:`Chime`},[G.Autotrack]:{icon:XI,label:`Auto-track`},[G.Nightvision]:{icon:EL,label:`Night vision`},[G.PrivacyMask]:{icon:nL,label:`Privacy mask`},[G.Doorbell]:{icon:ZI,label:`Doorbell`},[G.BinaryHelper]:{icon:aR,label:`Binary helper`},[G.MotionSensor]:{icon:cL,label:`Motion sensor`},[G.ContactSensor]:{icon:QI,label:`Contact sensor`},[G.LeakSensor]:{icon:eL,label:`Leak sensor`},[G.SmokeSensor]:{icon:EI,label:`Smoke sensor`},[G.COSensor]:{icon:_R,label:`CO sensor`},[G.GasSensor]:{icon:aL,label:`Gas sensor`},[G.TamperSensor]:{icon:HL,label:`Tamper sensor`},[G.VibrationSensor]:{icon:dR,label:`Vibration sensor`},[G.ConnectivitySensor]:{icon:gR,label:`Connectivity`},[G.SoundSensor]:{icon:fR,label:`Sound sensor`},[G.BinarySensor]:{icon:aR,label:`Binary sensor`},[G.TemperatureSensor]:{icon:iR,label:`Temperature`},[G.HumiditySensor]:{icon:tL,label:`Humidity`},[G.AmbientLightSensor]:{icon:nR,label:`Ambient light`},[G.PressureSensor]:{icon:lL,label:`Pressure`},[G.WindSensor]:{icon:_R,label:`Wind`},[G.RainSensor]:{icon:KI,label:`Rain`},[G.UvSensor]:{icon:tR,label:`UV index`},[G.SolarRadiationSensor]:{icon:rR,label:`Solar radiation`},[G.SoilMoistureSensor]:{icon:$L,label:`Soil moisture`},[G.PowerSensor]:{icon:bR,label:`Power`},[G.EnergySensor]:{icon:bR,label:`Energy`},[G.VoltageSensor]:{icon:bR,label:`Voltage`},[G.CurrentSensor]:{icon:bR,label:`Current`},[G.AirQualitySensor]:{icon:_R,label:`Air quality`},[G.BatterySensor]:{icon:lL,label:`Battery`},[G.NumericSensor]:{icon:uL,label:`Numeric sensor`},[G.EnumSensor]:{icon:_L,label:`Enum sensor`},[G.DateTimeSensor]:{icon:UI,label:`Date / time`},[G.GenericSensor]:{icon:lL,label:`Sensor`},[G.NumericControl]:{icon:YL,label:`Numeric control`},[G.SelectControl]:{icon:gL,label:`Select control`},[G.TextControl]:{icon:lR,label:`Text control`},[G.DateTimeControl]:{icon:UI,label:`Date / time control`},[G.MobilePushNotifier]:{icon:XL,label:`Mobile push`},[G.MessagingNotifier]:{icon:wL,label:`Messaging`},[G.EmailNotifier]:{icon:xL,label:`Email`},[G.GenericNotifier]:{icon:jI,label:`Notifier`}},KU=new Set(Object.values(W));new Set(Object.values(G));function qU(e){return KU.has(e)}var JU=WU[W.Generic];GU[G.GenericSensor];function YU(e){return qU(e)?WU[e]??JU:JU}Object.values(W).map(e=>{let t=YU(e);return{id:e,label:t.label,icon:t.icon}}),(0,S.createContext)(null),new Set([W.Sensor,W.Presence]),Object.freeze([]);var XU={face:`#a855f7`,plate:`#ec4899`};Object.freeze({...Object.fromEntries(Object.values(Kc).filter(e=>e.category===`detection`||e.kind===`motion`).map(e=>[e.kind,e.color])),...XU});var ZU=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()}},QU=class{constructor(e){this.generateIdentifier=e,this.kv=new ZU}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)}},$U=class extends QU{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 eW(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 tW(e,t){let n=eW(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 nW(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function rW(e,t){return e.indexOf(t)!==-1}function iW(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var aW=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return tW(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},oW=e=>Object.prototype.toString.call(e).slice(8,-1),sW=e=>e===void 0,cW=e=>e===null,lW=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,uW=e=>lW(e)&&Object.keys(e).length===0,dW=e=>Array.isArray(e),fW=e=>typeof e==`string`,pW=e=>typeof e==`number`&&!isNaN(e),mW=e=>typeof e==`boolean`,hW=e=>e instanceof RegExp,gW=e=>e instanceof Map,_W=e=>e instanceof Set,vW=e=>oW(e)===`Symbol`,yW=e=>e instanceof Date&&!isNaN(e.valueOf()),bW=e=>e instanceof Error,xW=e=>typeof e==`number`&&isNaN(e),SW=e=>mW(e)||cW(e)||sW(e)||pW(e)||fW(e)||vW(e),CW=e=>typeof e==`bigint`,wW=e=>e===1/0||e===-1/0,TW=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),EW=e=>e instanceof URL,DW=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),OW=e=>e.map(String).map(DW).join(`.`),kW=(e,t)=>{let n=[],r=``;for(let a=0;a<e.length;a++){let o=e.charAt(a);if(!t&&o===`\\`){let t=e.charAt(a+1);if(t===`\\`){r+=`\\`,a++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(o===`\\`&&e.charAt(a+1)===`.`){r+=`.`,a++;continue}if(o===`.`){n.push(r),r=``;continue}r+=o}let a=r;return n.push(a),n};function AW(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var jW=[AW(sW,`undefined`,()=>null,()=>void 0),AW(CW,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),AW(yW,`Date`,e=>e.toISOString(),e=>new Date(e)),AW(bW,`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}),AW(hW,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),AW(_W,`set`,e=>[...e.values()],e=>new Set(e)),AW(gW,`map`,e=>[...e.entries()],e=>new Map(e)),AW(e=>xW(e)||wW(e),`number`,e=>xW(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),AW(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),AW(EW,`URL`,e=>e.toString(),e=>new URL(e))];function MW(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var NW=MW((e,t)=>vW(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}),PW=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),FW=MW(TW,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=PW[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function IW(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var LW=MW(IW,(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)}),RW=MW((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)}),zW=[LW,NW,RW,FW],BW=(e,t)=>{let n=iW(zW,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=iW(jW,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},VW={};jW.forEach(e=>{VW[e.annotation]=e});var HW=(e,t,n)=>{if(dW(t))switch(t[0]){case`symbol`:return NW.untransform(e,t,n);case`class`:return LW.untransform(e,t,n);case`custom`:return RW.untransform(e,t,n);case`typed-array`:return FW.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=VW[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},UW=(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 WW(e){if(rW(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(rW(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(rW(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var GW=(e,t)=>{WW(t);for(let n=0;n<t.length;n++){let r=t[n];if(_W(e))e=UW(e,+r);else if(gW(e)){let a=+r,o=+t[++n]==0?`key`:`value`,s=UW(e,a);switch(o){case`key`:e=s;break;case`value`:e=e.get(s);break}}else e=e[r]}return e},KW=(e,t,n)=>{if(WW(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(dW(r)){let e=+n;r=r[e]}else if(lW(r))r=r[n];else if(_W(r)){let e=+n;r=UW(r,e)}else if(gW(r)){if(e===t.length-2)break;let a=+n,o=+t[++e]==0?`key`:`value`,s=UW(r,a);switch(o){case`key`:r=s;break;case`value`:r=r.get(s);break}}}let a=t[t.length-1];if(dW(r)?r[+a]=n(r[+a]):lW(r)&&(r[a]=n(r[a])),_W(r)){let e=UW(r,+a),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(gW(r)){let e=+t[t.length-2],o=UW(r,e);switch(+a==0?`key`:`value`){case`key`:{let e=n(o);r.set(e,r.get(o)),e!==o&&r.delete(o);break}case`value`:r.set(o,n(r.get(o)));break}}return e},qW=e=>e<1;function JW(e,t,n,r=[]){if(!e)return;let a=qW(n);if(!dW(e)){nW(e,(e,o)=>JW(e,t,n,[...r,...kW(o,a)]));return}let[o,s]=e;s&&nW(s,(e,o)=>{JW(e,t,n,[...r,...kW(o,a)])}),t(o,r)}function YW(e,t,n,r){return JW(t,(t,n)=>{e=KW(e,n,e=>HW(e,t,r))},n),e}function XW(e,t,n){let r=qW(n);function a(t,n){let a=GW(e,kW(n,r));t.map(e=>kW(e,r)).forEach(t=>{e=KW(e,t,()=>a)})}if(dW(t)){let[n,o]=t;n.forEach(t=>{e=KW(e,kW(t,r),()=>e)}),o&&nW(o,a)}else nW(t,a);return e}var ZW=(e,t)=>lW(e)||dW(e)||gW(e)||_W(e)||bW(e)||IW(e,t);function QW(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function $W(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[a,...o]=e;a.length===0?r=o.map(OW):n[OW(a)]=o.map(OW)}),r?uW(n)?[r]:[r,n]:uW(n)?void 0:n}var eG=(e,t,n,r,a=[],o=[],s=new Map)=>{let c=SW(e);if(!c){QW(e,a,t);let n=s.get(e);if(n)return r?{transformedValue:null}:n}if(!ZW(e,n)){let t=BW(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return c||s.set(e,r),r}if(rW(o,e))return{transformedValue:null};let l=BW(e,n),u=l?.value??e,d=dW(u)?[]:{},f={};nW(u,(c,l)=>{if(l===`__proto__`||l===`constructor`||l===`prototype`)throw Error(`Detected property ${l}. This is a prototype pollution risk, please remove it from your object.`);let u=eG(c,t,n,r,[...a,l],[...o,e],s);d[l]=u.transformedValue,dW(u.annotations)?f[DW(l)]=u.annotations:lW(u.annotations)&&nW(u.annotations,(e,t)=>{f[DW(l)+`.`+t]=e})});let p=uW(f)?{transformedValue:d,annotations:l?[l.type]:void 0}:{transformedValue:d,annotations:l?[l.type,f]:f};return c||s.set(e,p),p};function tG(e){return Object.prototype.toString.call(e).slice(8,-1)}function nG(e){return tG(e)===`Array`}function rG(e){if(tG(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function iG(e,t,n,r,a){let o={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;o===`enumerable`&&(e[t]=n),a&&o===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function aG(e,t={}){if(nG(e))return e.map(e=>aG(e,t));if(!rG(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||nG(t.props)&&!t.props.includes(r))return n;let a=e[r];return iG(n,r,aG(a,t),e,t.nonenumerable),n},{})}var oG=class{constructor({dedupe:e=!1}={}){this.classRegistry=new $U,this.symbolRegistry=new QU(e=>e.description??``),this.customTransformerRegistry=new aW,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=eG(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let a=$W(t,this.dedupe);return a&&(r.meta={...r.meta,referentialEqualities:a}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,a=t?.inPlace?n:aG(n);return r?.values&&(a=YW(a,r.values,r.v??0,this)),r?.referentialEqualities&&(a=XW(a,r.referentialEqualities,r.v??0)),a}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)}};oG.defaultInstance=new oG,oG.serialize=oG.defaultInstance.serialize.bind(oG.defaultInstance),oG.deserialize=oG.defaultInstance.deserialize.bind(oG.defaultInstance),oG.stringify=oG.defaultInstance.stringify.bind(oG.defaultInstance),oG.parse=oG.defaultInstance.parse.bind(oG.defaultInstance),oG.registerClass=oG.defaultInstance.registerClass.bind(oG.defaultInstance),oG.registerSymbol=oG.defaultInstance.registerSymbol.bind(oG.defaultInstance),oG.registerCustom=oG.defaultInstance.registerCustom.bind(oG.defaultInstance),oG.allowErrorProps=oG.defaultInstance.allowErrorProps.bind(oG.defaultInstance),oG.serialize,oG.deserialize,oG.stringify,oG.parse,oG.registerClass,oG.registerCustom,oG.registerSymbol,oG.allowErrorProps,(0,S.createContext)(null),SM(`camstack:custom-field-renderers`,{}),SM(`camstack:device-context`,null),SM(`camstack:widget-registry`,null);function sG({title:e,icon:t,headerRight:n,collapsible:r=!1,defaultOpen:a=!0,bodyClassName:o=`p-3`,children:s}){let[c,l]=(0,S.useState)(a),u=!r||c,d=(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`span`,{className:`flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-foreground`,children:[t,e]}),r?c?(0,C.jsx)(RI,{className:`h-3.5 w-3.5 text-foreground-subtle`}):(0,C.jsx)(zI,{className:`h-3.5 w-3.5 text-foreground-subtle`}):n]}),f=`px-4 py-2 flex items-center justify-between ${u?`border-b border-border`:``}`;return(0,C.jsxs)(`div`,{className:`rounded-lg border border-border bg-surface overflow-hidden`,children:[r?(0,C.jsx)(`button`,{type:`button`,onClick:()=>l(e=>!e),className:`w-full text-left ${f}`,children:d}):(0,C.jsx)(`div`,{className:f,children:d}),u?(0,C.jsx)(`div`,{className:o,children:s}):null]})}SM(`camstack:vod-playback`,{request:null,play:()=>{},clear:()=>{}}),SM(`camstack:recorded-playback`,{bindControlChannel:null,channelOpen:!1,mode:`live`,positionMs:null,send:()=>!1}),(0,S.lazy)(()=>fs(()=>import(`./MotionZonesSettings-NcxxQN8r-CK9BVkOT.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1]),import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./PrivacyMaskSettings-APgPLF7p-CNcYwFLg.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([2,1]),import.meta.url));var cG=Object.defineProperty,lG=Object.getOwnPropertySymbols,uG=Object.prototype.hasOwnProperty,dG=Object.prototype.propertyIsEnumerable,fG=(e,t,n)=>t in e?cG(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,pG=(e,t)=>{for(var n in t||={})uG.call(t,n)&&fG(e,n,t[n]);if(lG)for(var n of lG(t))dG.call(t,n)&&fG(e,n,t[n]);return e},mG=(e,t)=>{var n={};for(var r in e)uG.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&lG)for(var r of lG(e))t.indexOf(r)<0&&dG.call(e,r)&&(n[r]=e[r]);return n},hG;(e=>{let t=class t{constructor(e,n,r,o){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(o<-1||o>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let s=[];for(let e=0;e<this.size;e++)s.push(!1);for(let e=0;e<this.size;e++)this.modules.push(s.slice()),this.isFunction.push(s.slice());this.drawFunctionPatterns();let c=this.addEccAndInterleave(r);if(this.drawCodewords(c),o==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(o=t,e=n),this.applyMask(t)}}a(0<=o&&o<=7),this.mask=o,this.applyMask(o),this.drawFormatBits(o),this.isFunction=[]}static encodeText(n,r){let a=e.QrSegment.makeSegments(n);return t.encodeSegments(a,r)}static encodeBinary(n,r){let a=e.QrSegment.makeBytes(n);return t.encodeSegments([a],r)}static encodeSegments(e,r,o=1,c=40,l=-1,u=!0){if(!(t.MIN_VERSION<=o&&o<=c&&c<=t.MAX_VERSION)||l<-1||l>7)throw RangeError(`Invalid value`);let d,f;for(d=o;;d++){let n=t.getNumDataCodewords(d,r)*8,a=s.getTotalBits(e,d);if(a<=n){f=a;break}if(d>=c)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])u&&f<=t.getNumDataCodewords(d,e)*8&&(r=e);let p=[];for(let t of e){n(t.mode.modeBits,4,p),n(t.numChars,t.mode.numCharCountBits(d),p);for(let e of t.getData())p.push(e)}a(p.length==f);let m=t.getNumDataCodewords(d,r)*8;a(p.length<=m),n(0,Math.min(4,m-p.length),p),n(0,(8-p.length%8)%8,p),a(p.length%8==0);for(let e=236;p.length<m;e^=253)n(e,8,p);let h=[];for(;h.length*8<p.length;)h.push(0);return p.forEach((e,t)=>h[t>>>3]|=e<<7-(t&7)),new t(d,r,h,l)}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 o=(t<<10|n)^21522;a(o>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(o,e));this.setFunctionModule(8,7,r(o,6)),this.setFunctionModule(8,8,r(o,7)),this.setFunctionModule(7,8,r(o,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(o,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(o,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(o,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;a(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),a=this.size-11+e%3,o=Math.floor(e/3);this.setFunctionModule(a,o,n),this.setFunctionModule(o,a,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let a=Math.max(Math.abs(r),Math.abs(n)),o=e+r,s=t+n;0<=o&&o<this.size&&0<=s&&s<this.size&&this.setFunctionModule(o,s,a!=2&&a!=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 o=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],s=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],c=Math.floor(t.getNumRawDataModules(n)/8),l=o-c%o,u=Math.floor(c/o),d=[],f=t.reedSolomonComputeDivisor(s);for(let n=0,r=0;n<o;n++){let a=e.slice(r,r+u-s+(n<l?0:1));r+=a.length;let o=t.reedSolomonComputeRemainder(a,f);n<l&&a.push(0),d.push(a.concat(o))}let p=[];for(let e=0;e<d[0].length;e++)d.forEach((t,n)=>{(e!=u-s||n>=l)&&p.push(t[e])});return a(p.length==c),p}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 a=0;a<this.size;a++)for(let o=0;o<2;o++){let s=t-o,c=t+1&2?a:this.size-1-a;!this.isFunction[c][s]&&n<e.length*8&&(this.modules[c][s]=r(e[n>>>3],7-(n&7)),n++)}}a(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,a=0,o=[0,0,0,0,0,0,0];for(let s=0;s<this.size;s++)this.modules[n][s]==r?(a++,a==5?e+=t.PENALTY_N1:a>5&&e++):(this.finderPenaltyAddHistory(a,o),r||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),r=this.modules[n][s],a=1);e+=this.finderPenaltyTerminateAndCount(r,a,o)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,a=0,o=[0,0,0,0,0,0,0];for(let s=0;s<this.size;s++)this.modules[s][n]==r?(a++,a==5?e+=t.PENALTY_N1:a>5&&e++):(this.finderPenaltyAddHistory(a,o),r||(e+=this.finderPenaltyCountPatterns(o)*t.PENALTY_N3),r=this.modules[s][n],a=1);e+=this.finderPenaltyTerminateAndCount(r,a,o)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let a=this.modules[n][r];a==this.modules[n][r+1]&&a==this.modules[n+1][r]&&a==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,o=Math.ceil(Math.abs(n*20-r*10)/r)-1;return a(0<=o&&o<=9),e+=o*t.PENALTY_N4,a(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 a(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 a=0;a<e;a++){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 a of e){let e=a^r.shift();r.push(0),n.forEach((n,a)=>r[a]^=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 a(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];a(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 a(e){if(!e)throw Error(`Assertion error`)}let o=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 a=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+a),10),a*3+1,r),e+=a}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=[],a;for(a=0;a+2<=t.length;a+=2){let o=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a))*45;o+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a+1)),n(o,11,r)}return a<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(a)),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}};o.NUMERIC_REGEX=/^[0-9]*$/,o.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,o.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let s=o;e.QrSegment=o})(hG||={}),(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||={})})(hG||={}),(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||={})})(hG||={});var gG=hG,_G={L:gG.QrCode.Ecc.LOW,M:gG.QrCode.Ecc.MEDIUM,Q:gG.QrCode.Ecc.QUARTILE,H:gG.QrCode.Ecc.HIGH},vG=128,yG=`L`,bG=`#FFFFFF`,xG=`#000000`,SG=!1,CG=1,wG=4,TG=0,EG=.1;function DG(e,t=0){let n=[];return e.forEach(function(e,r){let a=null;e.forEach(function(o,s){if(!o&&a!==null){n.push(`M${a+t} ${r+t}h${s-a}v1H${a+t}z`),a=null;return}if(s===e.length-1){if(!o)return;a===null?n.push(`M${s+t},${r+t} h1v1H${s+t}z`):n.push(`M${a+t},${r+t} h${s+1-a}v1H${a+t}z`);return}o&&a===null&&(a=s)})}),n.join(``)}function OG(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 kG(e,t,n,r){if(r==null)return null;let a=e.length+n*2,o=Math.floor(t*EG),s=a/t,c=(r.width||o)*s,l=(r.height||o)*s,u=r.x==null?e.length/2-c/2:r.x*s,d=r.y==null?e.length/2-l/2:r.y*s,f=r.opacity==null?1:r.opacity,p=null;if(r.excavate){let e=Math.floor(u),t=Math.floor(d);p={x:e,y:t,w:Math.ceil(c+u-e),h:Math.ceil(l+d-t)}}let m=r.crossOrigin;return{x:u,y:d,h:l,w:c,excavation:p,opacity:f,crossOrigin:m}}function AG(e,t){return t==null?e?wG:TG:Math.max(Math.floor(t),0)}function jG({value:e,level:t,minVersion:n,includeMargin:r,marginSize:a,imageSettings:o,size:s,boostLevel:c}){let l=S.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...gG.QrSegment.makeSegments(t)),e),[]);return gG.QrCode.encodeSegments(r,_G[t],n,void 0,void 0,c)},[e,t,n,c]),{cells:u,margin:d,numCells:f,calculatedImageSettings:p}=S.useMemo(()=>{let e=l.getModules(),t=AG(r,a);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:kG(e,s,t,o)}},[l,s,o,r,a]);return{qrcode:l,margin:d,cells:u,numCells:f,calculatedImageSettings:p}}var MG=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),NG=S.forwardRef(function(e,t){let n=e,{value:r,size:a=vG,level:o=yG,bgColor:s=bG,fgColor:c=xG,includeMargin:l=SG,minVersion:u=CG,boostLevel:d,marginSize:f,imageSettings:p}=n,m=mG(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:h}=m,g=mG(m,[`style`]),_=p?.src,v=S.useRef(null),y=S.useRef(null),b=S.useCallback(e=>{v.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[x,C]=S.useState(!1),{margin:w,cells:T,numCells:E,calculatedImageSettings:D}=jG({value:r,level:o,minVersion:u,boostLevel:d,includeMargin:l,marginSize:f,imageSettings:p,size:a});S.useEffect(()=>{if(v.current!=null){let e=v.current,t=e.getContext(`2d`);if(!t)return;let n=T,r=y.current,o=D!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;o&&D.excavation!=null&&(n=OG(T,D.excavation));let l=window.devicePixelRatio||1;e.height=e.width=a*l;let u=a/E*l;t.scale(u,u),t.fillStyle=s,t.fillRect(0,0,E,E),t.fillStyle=c,MG?t.fill(new Path2D(DG(n,w))):T.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+w,n+w,1,1)})}),D&&(t.globalAlpha=D.opacity),o&&t.drawImage(r,D.x+w,D.y+w,D.w,D.h)}}),S.useEffect(()=>{C(!1)},[_]);let ee=pG({height:a,width:a},h),te=null;return _!=null&&(te=S.createElement(`img`,{src:_,key:_,style:{display:`none`},onLoad:()=>{C(!0)},ref:y,crossOrigin:D?.crossOrigin})),S.createElement(S.Fragment,null,S.createElement(`canvas`,pG({style:ee,height:a,width:a,ref:b,role:`img`},g)),te)});NG.displayName=`QRCodeCanvas`;var PG=S.forwardRef(function(e,t){let n=e,{value:r,size:a=vG,level:o=yG,bgColor:s=bG,fgColor:c=xG,includeMargin:l=SG,minVersion:u=CG,boostLevel:d,title:f,marginSize:p,imageSettings:m}=n,h=mG(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:g,cells:_,numCells:v,calculatedImageSettings:y}=jG({value:r,level:o,minVersion:u,boostLevel:d,includeMargin:l,marginSize:p,imageSettings:m,size:a}),b=_,x=null;m!=null&&y!=null&&(y.excavation!=null&&(b=OG(_,y.excavation)),x=S.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 C=DG(b,g);return S.createElement(`svg`,pG({height:a,width:a,viewBox:`0 0 ${v} ${v}`,ref:t,role:`img`},h),!!f&&S.createElement(`title`,null,f),S.createElement(`path`,{fill:s,d:`M0,0 h${v}v${v}H0z`,shapeRendering:`crispEdges`}),S.createElement(`path`,{fill:c,d:C,shapeRendering:`crispEdges`}),x)});PG.displayName=`QRCodeSVG`;function FG(){return typeof window>`u`?!1:window.matchMedia(`(hover: none) and (pointer: coarse)`).matches||typeof navigator<`u`&&navigator.maxTouchPoints>0||`ontouchstart`in window}function IG(e,t,n){let r=0;for(let a=0;a<8;a++)for(let o=0;o<8;o++){let s=Math.min(t-1,Math.floor((o+.5)/8*t)),c=Math.min(n-1,Math.floor((a+.5)/8*n)),{data:l}=e.getImageData(s,c,1,1);.2126*(l[0]??0)+.7152*(l[1]??0)+.0722*(l[2]??0)>12&&r++}return r<=1}function LG(e){let t={};if(typeof window<`u`){if(e){let n=e.getBoundingClientRect();n.width>0&&n.height>0&&(t.viewportWidth=Math.round(n.width),t.viewportHeight=Math.round(n.height))}t.viewportWidth===void 0&&(t.viewportWidth=window.innerWidth,t.viewportHeight=window.innerHeight),t.devicePixelRatio=window.devicePixelRatio||1;let n=navigator.connection;n?.downlink&&n.downlink>0&&(t.downlinkMbps=n.downlink)}return t}var RG=1500,zG=15e3,BG=40,VG=8e3;function HG({serverUrl:e,streamKey:t,label:n,autoPlay:r=!0,muted:a=!0,showControls:o=!0,showStats:s=!1,onPlaybackStats:c,onClientNetworkSample:l,onConnectTiming:u,className:d=``,onStateChange:f,onError:p,overlay:m,createSession:h,sendAnswer:g,handleOffer:_,getIceServers:v,addIceCandidate:y,getIceCandidates:b,closeSession:x,getSessionState:w,reoffer:T,posterUrl:E,hintsOverride:D,reconnectSignal:ee,onControlChannel:te}){let O=(0,S.useRef)(null),ne=(0,S.useRef)(null),re=(0,S.useRef)(null),ie=(0,S.useRef)(new Set),ae=(0,S.useRef)(null),oe=(0,S.useRef)(null),se=(0,S.useRef)(0),k=(0,S.useRef)(!0),A=(0,S.useRef)(te);A.current=te;let ce=(0,S.useRef)(null),le=(0,S.useRef)(null),ue=(0,S.useRef)(0),de=(0,S.useRef)(!1),j=(0,S.useRef)(async()=>{}),[M,fe]=(0,S.useState)(`idle`),[pe,me]=(0,S.useState)(``),[he,ge]=(0,S.useState)(a),[_e,N]=(0,S.useState)(!1),[ve,ye]=(0,S.useState)(!1),be=FG(),[xe,Se]=(0,S.useState)(!0),Ce=(0,S.useRef)(null),we=(0,S.useRef)(!1);(g||h)&&(we.current=!0);let Te=we.current,Ee=(0,S.useRef)(!1);_&&(Ee.current=!0);let De=Ee.current,[Oe,ke]=(0,S.useState)(!1),Ae=(0,S.useRef)(null),[je,Me]=(0,S.useState)(null),[Ne,Pe]=(0,S.useState)(!1),Fe=(0,S.useCallback)(()=>{let e=O.current;if(!(!e||e.readyState<2||!e.videoWidth||!e.videoHeight))try{let t=document.createElement(`canvas`);t.width=e.videoWidth,t.height=e.videoHeight;let n=t.getContext(`2d`);if(!n||(n.drawImage(e,0,0),IG(n,t.width,t.height)))return;Ae.current=t.toDataURL(`image/jpeg`,.6)}catch{}},[]),Ie=(0,S.useCallback)(e=>{fe(e),e===`playing`&&ke(!0),f?.(e)},[f]),Le=(0,S.useCallback)(()=>{if(ae.current?.abort(),ae.current=null,oe.current&&=(clearTimeout(oe.current),null),le.current&&=(clearTimeout(le.current),null),ce.current=null,de.current=!1,ue.current=0,re.current&&=(re.current.close(),null),x&&ie.current.size>0){for(let e of ie.current)x(e).catch(()=>{});ie.current.clear()}},[x]),Re=(0,S.useCallback)(()=>{ae.current?.abort(),ae.current=null,oe.current&&=(clearTimeout(oe.current),null),le.current&&=(clearTimeout(le.current),null),ce.current=null,de.current=!1,ue.current=0},[]),ze=1e3,Be=(0,S.useCallback)(e=>{if(!w||!T)return;le.current&&=(clearTimeout(le.current),null);let t=async()=>{if(k.current&&ce.current===e){if(!de.current)try{let{pendingRenegotiation:t}=await w(e);if(k.current&&ce.current===e&&t&&t.epoch>ue.current&&!de.current){ue.current=t.epoch,await j.current(e,t.target);return}}catch{}!k.current||ce.current!==e||(le.current=setTimeout(()=>{t()},ze))}};le.current=setTimeout(()=>{t()},ze)},[w,T]),Ve=(0,S.useCallback)(async(e=!1)=>{if(!k.current||!h||!g)return;let t=e?re.current:null,n=e?new Set(ie.current):null;e?Re():Le(),Ie(`connecting`);let r=new AbortController;ae.current=r;try{let{sessionId:a,sdpOffer:o,iceServers:s}=await h({...LG(ne.current),...D});if(ie.current.add(a),!k.current||r.signal.aborted){x?.(a).catch(()=>{}),ie.current.delete(a);return}let c=new RTCPeerConnection({iceServers:[...s??[],{urls:`stun:stun.l.google.com:19302`}]});e||(re.current=c);let l=new MediaStream,u=!1,d=()=>{if(!(u||!k.current)){if(u=!0,re.current=c,O.current&&(O.current.srcObject=l,O.current.play().catch(()=>{})),t&&t!==c)try{t.close()}catch{}if(n)for(let e of n)ie.current.delete(e),x?.(e).catch(()=>{})}};c.ontrack=t=>{if(console.debug(`[WebRTC] ontrack`,t.track.kind,t.track.readyState),l.addTrack(t.track),e){d();return}O.current&&(O.current.srcObject=l,O.current.play().catch(()=>{}))},c.oniceconnectionstatechange=()=>{if(!k.current)return;let t=c.iceConnectionState;if(console.debug(`[WebRTC] ICE state:`,t),t===`connected`||t===`completed`)se.current=0,e&&d(),Ie(`playing`),O.current?.paused&&(console.debug(`[WebRTC] video was paused at ICE connected — calling play()`),O.current.play().catch(()=>{}));else if(t===`failed`||t===`disconnected`||t===`closed`){if(e&&!u)try{c.close()}catch{}Ie(`disconnected`),Ke()}},c.onicecandidateerror=e=>{console.debug(`[WebRTC] ICE candidate error:`,e)},console.debug(`[WebRTC] Setting remote description (server offer)...`),await c.setRemoteDescription({type:`offer`,sdp:o});let f=await c.createAnswer();if(await c.setLocalDescription(f),console.debug(`[WebRTC] Local description set, waiting for ICE gathering...`),await WG(c),!k.current)return;let p=(c.localDescription?.sdp??``).split(`
|
|
111
|
+
`).filter(e=>e.startsWith(`a=candidate:`)).length;console.debug(`[WebRTC] Sending answer to server`,{localCandidates:p,sessionId:a.slice(0,8)}),await g(a,c.localDescription?.sdp??``),console.debug(`[WebRTC] Answer sent successfully`);let m=c,_=()=>{let e=m.connectionState;if(e===`closed`||e===`failed`)return;let t=O.current;t&&t.readyState===0&&console.log(`[WebRTC] no video data yet (ice=${m.iceConnectionState})`)};setTimeout(_,3e3),setTimeout(_,8e3)}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}},[e,t,h,g,Le,Re,x,Ie,p,D]),He=(0,S.useCallback)(async()=>{if(k.current){Le(),Ie(`connecting`);try{let n=new RTCPeerConnection({iceServers:[{urls:`stun:stun.l.google.com:19302`}]});re.current=n,n.addTransceiver(`video`,{direction:`recvonly`}),n.addTransceiver(`audio`,{direction:`recvonly`});let r=new MediaStream;n.ontrack=e=>{r.addTrack(e.track),O.current&&(O.current.srcObject=r,O.current.play().catch(()=>{}))},n.oniceconnectionstatechange=()=>{if(!k.current)return;let e=n.iceConnectionState;e===`connected`||e===`completed`?(se.current=0,Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})):(e===`failed`||e===`disconnected`||e===`closed`)&&(Ie(`disconnected`),Ke())};let a=await n.createOffer();if(await n.setLocalDescription(a),await WG(n),!k.current)return;let o=`${e}/api/webrtc?src=${encodeURIComponent(t)}`,s=await fetch(o,{method:`POST`,headers:{"Content-Type":`application/sdp`},body:n.localDescription?.sdp??``});if(!s.ok)throw Error(`WHEP ${s.status}: ${s.statusText}`);let c=await s.text();await n.setRemoteDescription({type:`answer`,sdp:c})}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}}},[e,t,Le,Ie,p]),Ue=(0,S.useCallback)(async(e=!1)=>{if(!k.current||!_)return;let n=e?re.current:null,r=e?new Set(ie.current):null;e?Re():Le(),Ie(`connecting`);let a=new AbortController;ae.current=a;let o=performance.now(),s=()=>Math.round(performance.now()-o),c={};try{let o=await v?.();if(c.iceServersMs=s(),!k.current||a.signal.aborted)return;let l=new RTCPeerConnection({iceServers:[...o??[],{urls:`stun:stun.l.google.com:19302`}]});e||(re.current=l);let d=new MediaStream,f=!1,p=()=>{if(!(f||!k.current)){if(f=!0,re.current=l,O.current&&(O.current.srcObject=d,O.current.play().catch(()=>{})),n&&n!==l)try{n.close()}catch{}if(r)for(let e of r)ie.current.delete(e),x?.(e).catch(()=>{})}};l.ontrack=t=>{if(c.firstTrackMs===void 0&&(c.firstTrackMs=s()),console.debug(`[WebRTC] ontrack (client-offer)`,t.track.kind,t.track.readyState),d.addTrack(t.track),e){p();return}O.current&&(O.current.srcObject=d,O.current.play().catch(()=>{}))};let m=!1;l.oniceconnectionstatechange=()=>{if(!k.current)return;let n=l.iceConnectionState;if(console.debug(`[WebRTC] ICE state (client-offer):`,n),n===`connected`||n===`completed`){if(!m){m=!0,c.iceConnectedMs=s(),console.info(`[WebRTC timing] client-offer connected`,{streamKey:t,...c}),u?.({...c});let e=O.current;e&&`requestVideoFrameCallback`in e&&(e.requestVideoFrameCallback(()=>{c.firstFrameMs=s(),console.info(`[WebRTC timing] first decoded frame`,{streamKey:t,firstFrameMs:c.firstFrameMs}),u?.({...c})}),setTimeout(()=>{k.current&&c.firstFrameMs===void 0&&console.warn(`[WebRTC timing] NO decoded frame (stalled)`,{streamKey:t,sinceIceConnectedMs:s()-(c.iceConnectedMs??0),iceConnectedMs:c.iceConnectedMs,firstTrackMs:c.firstTrackMs})},VG))}se.current=0,e&&p(),Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})}else if(n===`failed`||n===`disconnected`||n===`closed`){if(e&&!f)try{l.close()}catch{}Ie(`disconnected`),Ke()}};let h=null,g=[];if(l.onicecandidate=e=>{if(!e.candidate)return;let t=e.candidate.toJSON();h&&y?y(h,t).catch(()=>{}):g.push(t)},l.addTransceiver(`video`,{direction:`recvonly`}),l.addTransceiver(`audio`,{direction:`recvonly`}),A.current){let e=l.createDataChannel(`camstack-control`);A.current(e)}let S=await l.createOffer();if(c.offerCreatedMs=s(),await l.setLocalDescription(S),c.localSetMs=s(),!k.current||a.signal.aborted)return;let C={...LG(ne.current),...D},w=s(),{sessionId:T,sdpAnswer:E}=await _(l.localDescription?.sdp??S.sdp??``,void 0,C);if(c.signalingRttMs=s()-w,h=T,ie.current.add(T),ce.current=T,!k.current||a.signal.aborted){x?.(T).catch(()=>{}),ie.current.delete(T);return}if(y)for(let e of g)y(T,e).catch(()=>{});if(g.length=0,await l.setRemoteDescription({type:`answer`,sdp:E}),c.answerSetMs=s(),console.debug(`[WebRTC] Client-offer answer set (trickle)`,{sessionId:T.slice(0,8)}),b){let e=new Set,t=Date.now(),n=async()=>{if(!(!k.current||a.signal.aborted)&&!(l.connectionState===`closed`||l.signalingState===`closed`)){try{let{candidates:n,done:r}=await b(T);for(let t of n){let n=t.candidate??``;n&&!e.has(n)&&(e.add(n),l.addIceCandidate(new RTCIceCandidate(t)).catch(()=>{}))}let a=l.iceConnectionState;if(r||Date.now()-t>1e4||a===`connected`||a===`completed`)return}catch{}setTimeout(()=>{n()},200)}};n()}Be(T)}catch(e){if(!k.current)return;let t=e instanceof Error?e.message:String(e);me(t),Ie(`error`),p?.(t),Ke()}},[_,v,y,b,x,Le,Re,Ie,p,Be,D]);j.current=(0,S.useCallback)(async(e,t)=>{let n=T;if(!k.current||!n)return;let r=re.current;de.current=!0;try{let a=await v?.();if(!k.current)return;let o=new RTCPeerConnection({iceServers:[...a??[],{urls:`stun:stun.l.google.com:19302`}]}),s=new MediaStream,c=!1,l=!1,u=null,d,f,p=()=>{f!==void 0&&(clearTimeout(f),f=void 0);let e=u;if(u=null,e){d!==void 0&&typeof e.cancelVideoFrameCallback==`function`&&e.cancelVideoFrameCallback(d),e.removeEventListener(`loadeddata`,m);try{e.srcObject=null}catch{}e.remove()}};function m(){if(c||!k.current){p();return}c=!0,re.current=o,O.current&&(O.current.srcObject=s,O.current.play().catch(()=>{})),r&&r!==o&&r.close(),p()}let h=()=>{if(l||c||!k.current)return;if(l=!0,typeof document>`u`){m();return}let e=document.createElement(`video`);e.muted=!0,e.playsInline=!0,e.autoplay=!0,e.style.cssText=`position:absolute;left:-9999px;top:0;width:1px;height:1px;opacity:0;pointer-events:none;`,e.srcObject=s,u=e,(ne.current??document.body).appendChild(e),e.play().catch(()=>{}),typeof e.requestVideoFrameCallback==`function`&&(d=e.requestVideoFrameCallback(()=>m())),e.addEventListener(`loadeddata`,m,{once:!0}),f=setTimeout(()=>m(),1800)};o.ontrack=e=>{console.debug(`[WebRTC] ontrack (reoffer)`,e.track.kind,e.track.readyState),s.addTrack(e.track),h()},o.oniceconnectionstatechange=()=>{if(!k.current)return;let e=o.iceConnectionState;console.debug(`[WebRTC] ICE state (reoffer):`,e),e===`connected`||e===`completed`?(se.current=0,h(),Ie(`playing`),O.current?.paused&&O.current.play().catch(()=>{})):(e===`failed`||e===`closed`)&&(p(),!c&&e===`failed`&&o.close(),Ie(`disconnected`),Ke())};let g=null,_=[];if(o.onicecandidate=e=>{if(!e.candidate)return;let t=e.candidate.toJSON();g&&y?y(g,t).catch(()=>{}):_.push(t)},o.addTransceiver(`video`,{direction:`recvonly`}),o.addTransceiver(`audio`,{direction:`recvonly`}),A.current){let e=o.createDataChannel(`camstack-control`);A.current(e)}let x=await o.createOffer();if(await o.setLocalDescription(x),!k.current){o.close();return}let S={...LG(ne.current),...D},{sessionId:C,sdpAnswer:w}=await n(e,o.localDescription?.sdp??x.sdp??``,t,S);if(!k.current){o.close();return}if(g=C,ie.current.add(C),ce.current=C,y)for(let e of _)y(C,e).catch(()=>{});if(_.length=0,await o.setRemoteDescription({type:`answer`,sdp:w}),b){let e=new Set,t=Date.now(),n=async()=>{if(k.current&&!(o.connectionState===`closed`||o.signalingState===`closed`)){try{let{candidates:n,done:r}=await b(C);for(let t of n){let n=t.candidate??``;n&&!e.has(n)&&(e.add(n),o.addIceCandidate(new RTCIceCandidate(t)).catch(()=>{}))}let a=o.iceConnectionState;if(r||Date.now()-t>1e4||a===`connected`||a===`completed`)return}catch{}setTimeout(()=>{n()},200)}};n()}Be(C)}catch(t){console.debug(`[WebRTC] reoffer failed; keeping last frame, re-arming poll`,t instanceof Error?t.message:String(t)),Be(e)}finally{de.current=!1}},[T,v,y,b,Ie,Be,D]);let We=De?Ue:Te?Ve:He,Ge=(0,S.useRef)(()=>{});Ge.current=We;let Ke=(0,S.useCallback)(()=>{if(!k.current||se.current>=BG)return;let e=se.current;se.current+=1;let t=Math.min(zG,RG*2**e),n=Math.round(t*(.8+Math.random()*.4));oe.current=setTimeout(()=>{k.current&&Ge.current()},n)},[]);(0,S.useEffect)(()=>(k.current=!0,se.current=0,r&&We(),()=>{k.current=!1,Le()}),[e,t]);let qe=(0,S.useRef)(!1);(0,S.useEffect)(()=>{if(r){if(De){if(!_)return}else if(Te){if(!h||!g)return}else return;qe.current||re.current||(qe.current=!0,We())}},[r,De,Te,_,h,g,We]);let Je=()=>{se.current=0,We()},Ye=()=>{if(se.current=0,re.current&&De){Ue(!0);return}if(re.current&&Te){Ve(!0);return}We()},Xe=(0,S.useRef)(ee);(0,S.useEffect)(()=>{Xe.current!==ee&&(Xe.current=ee,k.current&&Ye())},[ee]);let Ze=()=>{O.current&&(O.current.muted=!O.current.muted,ge(O.current.muted))},Qe=async()=>{if(ne.current)try{if(document.fullscreenElement){await document.exitFullscreen();return}if(ne.current.requestFullscreen){await ne.current.requestFullscreen();return}let e=O.current;e?.webkitEnterFullscreen&&e.webkitEnterFullscreen()}catch(e){console.warn(`Fullscreen toggle failed: ${e instanceof Error?e.message:e}`)}},$e=async()=>{let e=O.current;if(e)try{if(typeof e.webkitSetPresentationMode==`function`){e.webkitSetPresentationMode(e.webkitPresentationMode===`picture-in-picture`?`inline`:`picture-in-picture`);return}document.pictureInPictureElement?await document.exitPictureInPicture():await e.requestPictureInPicture()}catch(e){console.warn(`PiP toggle failed: ${e instanceof Error?e.message:String(e)}`)}},et=()=>{if(!O.current)return;let e=document.createElement(`canvas`);e.width=O.current.videoWidth||1280,e.height=O.current.videoHeight||720;let n=e.getContext(`2d`);if(!n)return;n.drawImage(O.current,0,0);let r=document.createElement(`a`);r.download=`${t.replace(/[/:]/g,`-`)}-${Date.now()}.jpg`,r.href=e.toDataURL(`image/jpeg`,.92),r.click()};(0,S.useEffect)(()=>{let e=()=>N(!!document.fullscreenElement);document.addEventListener(`fullscreenchange`,e);let t=O.current;return t?.addEventListener(`webkitbeginfullscreen`,e),t?.addEventListener(`webkitendfullscreen`,e),()=>{document.removeEventListener(`fullscreenchange`,e),t?.removeEventListener(`webkitbeginfullscreen`,e),t?.removeEventListener(`webkitendfullscreen`,e)}},[]),(0,S.useEffect)(()=>{let e=O.current,t=typeof document<`u`&&document.pictureInPictureEnabled===!0,n=e!==null&&typeof e.webkitSetPresentationMode==`function`;ye(t||n)},[]);let[tt,nt]=(0,S.useState)(``),rt=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!s){nt(``),rt.current=null;return}let e=async()=>{let e=re.current;if(e)try{let t=await e.getStats(),n=0,r=0,a=0,o=0,s=0,c=0;t.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`?(n=t.bytesReceived??0,r=t.timestamp,a=t.framesPerSecond??0,o=t.frameWidth??0,s=t.frameHeight??0):t.type===`candidate-pair`&&t.nominated&&typeof t.currentRoundTripTime==`number`&&(c=t.currentRoundTripTime)});let l=0;rt.current&&r>rt.current.ts&&(l=Math.round((n-rt.current.bytes)*8/(r-rt.current.ts))),rt.current={bytes:n,ts:r};let u=[];o&&s&&u.push(`${o}×${s}`),a&&u.push(`${Math.round(a)}fps`),l>0&&u.push(`${l} kbps`),c&&u.push(`${Math.round(c*1e3)}ms`),nt(u.join(` · `))}catch{}};e();let t=setInterval(()=>{e()},1e3);return()=>clearInterval(t)},[s]);let it=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!l){it.current=null;return}let e=async()=>{let e=re.current;if(e)try{let t=await e.getStats(),n=0,r=0,a=0,o=0,s=0,c=0;t.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`?(n=t.packetsLost??0,r=t.packetsReceived??0,a=t.bytesReceived??0,o=t.timestamp,s=t.jitter??0):t.type===`candidate-pair`&&t.nominated&&typeof t.currentRoundTripTime==`number`&&(c=t.currentRoundTripTime)});let u=it.current;if(it.current={lost:n,recv:r,bytes:a,ts:o},!u||o<=u.ts)return;let d=Math.max(0,n-u.lost),f=d+Math.max(0,r-u.recv),p=f>0?Math.min(100,d/f*100):0,m=Math.max(0,Math.round((a-u.bytes)*8/(o-u.ts)));l({rttMs:Math.round(c*1e3),jitterMs:Math.round(s*1e3),estimatedBandwidthKbps:m,packetLossPercent:p})}catch{}},t=setInterval(()=>{e()},2e3);return()=>clearInterval(t)},[l]);let at=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(!c){at.current=null;return}let e=async()=>{let e=re.current,t=O.current;if(e)try{let n=await e.getStats(),r=0,a=0,o=0,s=0,l=0,u=0,d=0,f=0;n.forEach(e=>{let t=e;t.type===`inbound-rtp`&&(t.kind??t.mediaType)===`video`&&(r=t.framesReceived??0,a=t.framesDecoded??0,o=t.framesDropped??0,s=t.framesPerSecond??0,l=t.freezeCount??0,u=t.totalFreezesDuration??0,d=t.jitterBufferDelay??0,f=t.jitterBufferEmittedCount??0)});let p=t?.currentTime??0,m=Date.now(),h=at.current,g=f>0?Math.round(d/f*1e3):0;h&&c({dRecv:r-h.recv,dDec:a-h.dec,dDrop:o-h.drop,fps:Math.round(s),dFreeze:l-h.freeze,freezeTotalMs:Math.round(u*1e3),avgJitterMs:g,dCtMs:Math.round((p-h.ct)*1e3),dtMs:m-h.ts,readyState:t?.readyState??-1}),at.current={recv:r,dec:a,drop:o,freeze:l,ct:p,ts:m}}catch{}};e();let t=setInterval(()=>{e()},1e3);return()=>clearInterval(t)},[c]),(0,S.useEffect)(()=>{ge(a);let e=O.current;e&&(e.muted=a,a||e.play().catch(()=>{}))},[a]);let ot=()=>{be||(Se(!0),Ce.current&&clearTimeout(Ce.current),Ce.current=setTimeout(()=>Se(!1),3e3))},st=()=>{Se(e=>!e),Ce.current&&clearTimeout(Ce.current)};(0,S.useEffect)(()=>{if(M===`playing`){Fe();let e=setInterval(Fe,2e3);return()=>clearInterval(e)}Oe&&Ae.current&&Me(Ae.current)},[M,Oe,Fe]),(0,S.useEffect)(()=>{if(M!==`playing`){Pe(!1);return}let e=O.current;if(!e)return;let t=!1,n=()=>{t||Pe(!0)},r;typeof e.requestVideoFrameCallback==`function`&&(r=e.requestVideoFrameCallback(()=>n())),e.addEventListener(`loadeddata`,n,{once:!0});let a=setTimeout(n,12e3);return()=>{t=!0,clearTimeout(a),r!==void 0&&typeof e.cancelVideoFrameCallback==`function`&&e.cancelVideoFrameCallback(r),e.removeEventListener(`loadeddata`,n)}},[M]);let ct=Oe&&je?je:E??null,lt=!Ne&&ct!==null;return(0,C.jsxs)(`div`,{ref:ne,className:`relative isolate bg-black overflow-hidden group ${d}`,onMouseMove:ot,onMouseEnter:ot,onTouchStart:st,children:[(0,C.jsx)(`video`,{ref:O,autoPlay:r,muted:he,playsInline:!0,className:`w-full h-full object-contain relative z-0`}),lt&&ct&&(0,C.jsx)(`img`,{src:ct,alt:``,className:`absolute inset-0 w-full h-full object-contain z-[5] transform-gpu pointer-events-none`}),n&&M===`playing`&&(0,C.jsx)(`div`,{className:`absolute top-2 left-2 z-10 transform-gpu px-2 py-0.5 rounded bg-black/60 text-[10px] text-white font-medium`,children:n}),s&&tt&&(0,C.jsx)(`div`,{className:`absolute top-2 right-2 z-10 transform-gpu px-2 py-0.5 rounded bg-black/60 text-[10px] text-white font-mono`,children:tt}),m,!ct&&M===`connecting`&&(0,C.jsxs)(`div`,{className:`absolute inset-0 z-10 transform-gpu flex flex-col items-center justify-center bg-black/70 gap-2`,children:[(0,C.jsx)(`svg`,{className:`h-6 w-6 text-white/60 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,children:(0,C.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`32`,strokeDashoffset:`32`,className:`animate-[dash_1.5s_ease-in-out_infinite]`})}),(0,C.jsx)(`span`,{className:`text-xs text-white/60`,children:`Connecting…`})]}),!ct&&(M===`error`||M===`disconnected`)&&(0,C.jsxs)(`div`,{className:`absolute inset-0 z-10 transform-gpu flex flex-col items-center justify-center bg-black/70 gap-2`,children:[(0,C.jsx)(`svg`,{className:`h-6 w-6 text-red-400`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,C.jsx)(`path`,{d:`M1 1l5.5 5.5M23 23l-5.5-5.5M8.11 15.89a8 8 0 0110.78-10.78M3.64 3.64A12 12 0 0020.36 20.36`,strokeLinecap:`round`})}),(0,C.jsx)(`span`,{className:`text-xs text-red-400 text-center px-4`,children:M===`error`?pe||`Connection failed`:`Disconnected`}),(0,C.jsx)(`button`,{onClick:Je,className:`mt-1 inline-flex items-center gap-1.5 rounded px-3 py-1 text-xs bg-white/10 text-white hover:bg-white/20 transition-colors`,children:`Reconnect`})]}),ct&&(M===`connecting`||M===`disconnected`)&&(0,C.jsx)(`div`,{className:`absolute top-2 left-2 z-10 transform-gpu flex h-6 w-6 items-center justify-center rounded-full bg-black/55`,children:(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5 text-white/90 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,children:(0,C.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`32`,strokeDashoffset:`32`,className:`animate-[dash_1.5s_ease-in-out_infinite]`})})}),ct&&M===`error`&&(0,C.jsx)(`button`,{onClick:Je,title:pe||`Reconnect`,className:`absolute top-2 left-2 z-10 transform-gpu flex h-6 w-6 items-center justify-center rounded-full bg-black/55 text-white/90 hover:bg-black/75 transition-colors`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,C.jsx)(`path`,{d:`M23 4v6h-6M1 20v-6h6`}),(0,C.jsx)(`path`,{d:`M3.51 9a9 9 0 0114.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0020.49 15`})]})}),o&&M!==`idle`&&M!==`error`&&(0,C.jsxs)(`div`,{className:`absolute bottom-0 inset-x-0 z-20 transform-gpu flex items-center justify-between px-3 py-1.5 bg-gradient-to-t from-black/80 to-transparent transition-opacity duration-200 ${be||xe?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,children:[(0,C.jsx)(`div`,{className:`flex items-center gap-1`,children:(0,C.jsx)(UG,{onClick:Ze,title:he?`Unmute`:`Mute`,children:he?(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,C.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}):(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`path`,{d:`M19.07 4.93a10 10 0 010 14.14M15.54 8.46a5 5 0 010 7.07`})]})})}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,C.jsx)(UG,{onClick:et,title:`Take snapshot`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,C.jsx)(`path`,{d:`M23 19a2 2 0 01-2 2H3a2 2 0 01-2-2V8a2 2 0 012-2h4l2-3h6l2 3h4a2 2 0 012 2z`}),(0,C.jsx)(`circle`,{cx:`12`,cy:`13`,r:`4`})]})}),ve&&(0,C.jsx)(UG,{onClick:$e,title:`Picture-in-Picture`,children:(0,C.jsxs)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,C.jsx)(`path`,{d:`M21 9V6a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2h4`}),(0,C.jsx)(`rect`,{width:`10`,height:`7`,x:`12`,y:`13`,rx:`2`})]})}),(0,C.jsx)(UG,{onClick:Qe,title:_e?`Exit fullscreen`:`Fullscreen`,children:_e?(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:(0,C.jsx)(`path`,{d:`M8 3v3a2 2 0 01-2 2H3m18 0h-3a2 2 0 01-2-2V3m0 18v-3a2 2 0 012-2h3M3 16h3a2 2 0 012 2v3`})}):(0,C.jsx)(`svg`,{className:`h-3.5 w-3.5`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:(0,C.jsx)(`path`,{d:`M8 3H5a2 2 0 00-2 2v3m18 0V5a2 2 0 00-2-2h-3m0 18h3a2 2 0 002-2v-3M3 16v3a2 2 0 002 2h3`})})})]})]})]})}function UG({onClick:e,title:t,children:n}){return(0,C.jsx)(`button`,{onClick:e,title:t,className:`rounded-full p-1.5 min-w-[44px] min-h-[44px] flex items-center justify-center text-white/80 hover:text-white hover:bg-white/20 active:bg-white/30 transition-colors`,children:n})}async function WG(e){if(e.iceGatheringState!==`complete`)return new Promise(t=>{let n=!1,r,a=()=>{n||(n=!0,r&&clearInterval(r),e.removeEventListener(`icegatheringstatechange`,o),t())},o=()=>{e.iceGatheringState===`complete`&&a()};e.addEventListener(`icegatheringstatechange`,o);let s=Date.now();r=setInterval(()=>{let t=e.localDescription?.sdp??``;/ typ host/.test(t)&&Date.now()-s>=600&&a()},100),setTimeout(a,2500)})}SM(`camstack:player-overlays-state`,null);var GG=SM(`camstack:player-overlays-actions`,null);function KG(e){let t=(0,S.useContext)(GG);(0,S.useEffect)(()=>{if(!(!t||!e))return t.setLayer(e),()=>t.removeLayer(e.id)},[t,e])}B({id:F(),stableId:P(),addonId:P(),type:P(),name:P(),online:I(),disabled:I(),parentDeviceId:F().nullable(),role:P().nullable().optional(),features:z(P()).optional(),isCamera:I().optional(),sourceInfo:zu.optional()}),w.AddonStarted,w.AddonInstalled,w.AddonRestarted,w.AddonUpdated,w.AddonStopped,w.AddonUninstalled,w.AddonCrashed,w.AddonError,w.DetectionPhaseTransition,w.DetectionResult,w.DetectionEvent,w.DetectionCameraNative,w.ProviderMotion,w.MotionOnMotionChanged,w.MotionAnalysis,w.MotionZonesRaw,w.ProviderDetection,w.PipelineAudioInferenceResult,w.AgentOnline,w.AgentOffline,w.DeviceRegistered,w.DeviceUnregistered,w.DeviceStateChanged,w.EventEmitted;var qG=Object.freeze([...new Set(Object.values(w))].toSorted()),JG=Object.freeze([w.PipelineCameraMetricsSnapshot,w.PipelineRunnerLoadSnapshot,w.PipelineEngineMetricsSnapshot,w.PipelineInferenceResult,w.PipelineTrace,w.PipelineProgress,w.StreamBrokerMetricsSnapshot,w.MetricsNodeResourcesSnapshot,w.MetricsNodeProcessesSnapshot,w.ClusterTopologySnapshot,w.MotionAnalysis,w.MotionZonesRaw,w.DetectionResult,w.PipelineAudioInferenceResult,w.PlatformProbePhase,w.BenchmarkProgress,w.ModelDownloadProgress]),YG=new Set(JG);Object.freeze(qG.filter(e=>!YG.has(e))),Object.freeze([...new Set(Tw.filter(e=>e.scope===`device`).map(e=>e.name))].toSorted()),SM(`camstack:zone-editing`,null);var XG=500,ZG=800;function QG(e,t,n){try{let r=e.live;if(!r)return null;let a=r.onEvent;return!a||typeof a.subscribe!=`function`?null:a.subscribe({category:t},{onData:n})}catch{return null}}function $G(e,t){return e?.id===t}function eK(e,t){let[n,r]=(0,S.useState)(null),[a,o]=(0,S.useState)(null),[s,c]=(0,S.useState)(null),[l,u]=(0,S.useState)(`watching`),d=(0,S.useRef)(void 0),f=(0,S.useRef)(void 0),p=(0,S.useRef)(void 0),m=(0,S.useRef)(0);return(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.motion-analysis`,e=>{let n=e;if(!$G(n?.source,t))return;let a=n.data;!a?.regions||a.regions.length===0||(r({zones:a.regions.map(e=>({...e.bbox,intensity:e.intensity})),frameWidth:a.frameWidth,frameHeight:a.frameHeight}),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>r(null),XG))});return()=>{n?.unsubscribe(),d.current&&clearTimeout(d.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.motion-zones-raw`,e=>{let n=e;if(!$G(n?.source,t))return;let r=n.data;r?.zones&&(o({boxes:r.zones.map(e=>({bbox:e.bbox,changeScore:e.changeScore})),frameWidth:r.frameSize?.width??0,frameHeight:r.frameSize?.height??0,motionScore:r.zones.length>0?r.zones.reduce((e,t)=>e+t.changeScore,0)/r.zones.length:0}),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>o(null),XG))});return()=>{n?.unsubscribe(),f.current&&clearTimeout(f.current)}},[e,t]),(0,S.useEffect)(()=>{if(m.current=0,t===null)return;let n=QG(e,`pipeline-analytics.frame-tracked`,e=>{let n=e?.data;!n||n.deviceId!==t||n.detections?.length&&typeof n.detections[0]?.kind==`string`&&(m.current=Date.now(),c({detections:n.detections,frameWidth:n.frameWidth,frameHeight:n.frameHeight}),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>c(null),ZG))});return()=>{n?.unsubscribe(),p.current&&clearTimeout(p.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.result`,e=>{let n=e;if(!$G(n?.source,t)||Date.now()-m.current<ZG)return;let r=n.data?.frame;r?.detections?.length&&(c({detections:r.detections,frameWidth:r.width,frameHeight:r.height}),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>c(null),ZG))});return()=>{n?.unsubscribe(),p.current&&clearTimeout(p.current)}},[e,t]),(0,S.useEffect)(()=>{if(t===null)return;let n=QG(e,`detection.phase-transition`,e=>{let n=e;$G(n?.source,t)&&n.data?.to&&u(n.data.to)});return()=>{n?.unsubscribe()}},[e,t]),{motion:n,motionRaw:a,detection:s,phase:l}}function tK(e,t,n=5e3){let[r,a]=(0,S.useState)([]);(0,S.useEffect)(()=>{if(t===null)return;let r=!1,o=()=>{e.webrtcSession.listStreams.query({deviceId:t}).then(e=>{r||a(e)}).catch(()=>{})};o();let s=setInterval(o,n);return()=>{r=!0,clearInterval(s)}},[e,t,n]);let[o,s]=(0,S.useState)(null);(0,S.useEffect)(()=>{if(t===null)return;let n=!1;return e.pipelineOrchestrator&&e.pipelineOrchestrator.getCameraMetrics.query({deviceId:t}).then(e=>{n||!e||s({phase:e.phase,detectionFps:e.actualFps,avgInferenceMs:e.avgInferenceTimeMs,droppedFrames:e.droppedFrames})}).catch(()=>{}),()=>{n=!0}},[e,t]),rz(`pipeline.camera-metrics-snapshot`,e=>{if(t===null)return;let n=e.data;n.deviceId!==t||!n.metrics||s({phase:n.metrics.phase,detectionFps:n.metrics.actualFps,avgInferenceMs:n.metrics.avgInferenceTimeMs,droppedFrames:n.metrics.droppedFrames})});let{streams:c,hasWebrtc:l}=(0,S.useMemo)(()=>t===null||r.length===0?{streams:[],hasWebrtc:!1}:{streams:r.map(e=>({id:e.id,label:e.label,target:e.target,status:e.status,inputFps:e.inputFps,decodeFps:e.decodeFps,bitrateKbps:e.bitrateKbps})),hasWebrtc:!0},[t,r]),u=(0,S.useCallback)(async()=>{if(e.turnProvider)try{return(await e.turnProvider.getTurnServers.query()).map(e=>({urls:typeof e.urls==`string`?e.urls:[...e.urls],...e.username===void 0?{}:{username:e.username},...e.credential===void 0?{}:{credential:e.credential}}))}catch{return}},[e]),d=(0,S.useCallback)(async(n,r)=>{if(t===null)throw Error(`No device selected`);let a=await e.webrtcSession.createSession.mutate({deviceId:t,target:n,hints:r}),o=await u();return{sessionId:a.sessionId,sdpOffer:a.sdpOffer,...o?{iceServers:o}:{}}},[e,t,u]),f=(0,S.useCallback)(async(n,r,a,o)=>{if(t===null)throw Error(`No device selected`);return e.webrtcSession.handleOffer.mutate({deviceId:t,target:n,sdpOffer:r,...a===void 0?{}:{sessionId:a},...o===void 0?{}:{hints:o}})},[e,t]),p=(0,S.useCallback)(async(n,r)=>{if(t===null)throw Error(`No device selected`);await e.webrtcSession.handleAnswer.mutate({deviceId:t,sessionId:n,sdpAnswer:r})},[e,t]);return{streams:c,hasWebrtc:l,pipelineMetrics:o,createSession:d,handleOffer:f,getIceServers:u,addIceCandidate:(0,S.useCallback)(async(n,r)=>{t!==null&&await e.webrtcSession.addIceCandidate.mutate({deviceId:t,sessionId:n,candidate:r.candidate??``,sdpMid:r.sdpMid??null,sdpMLineIndex:r.sdpMLineIndex??null}).catch(()=>{})},[e,t]),getIceCandidates:(0,S.useCallback)(async n=>t===null?{candidates:[],done:!0}:e.webrtcSession.getIceCandidates.query({deviceId:t,sessionId:n}),[e,t]),sendAnswer:p,closeSession:(0,S.useCallback)(async n=>{t!==null&&await e.webrtcSession.closeSession.mutate({deviceId:t,sessionId:n}).catch(()=>{})},[e,t]),getSessionState:(0,S.useCallback)(async n=>{if(t===null)return{pendingRenegotiation:null};try{return await e.webrtcSession.getSessionState.query({deviceId:t,sessionId:n})}catch{return{pendingRenegotiation:null}}},[e,t])}}(0,S.lazy)(()=>fs(()=>import(`./MaskShapeCanvas-DI4BY7W2-L6rscpzL.js`).then(e=>({default:e.MaskShapeCanvas})),[],import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./MotionZonesSettings-NcxxQN8r-CK9BVkOT.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1]),import.meta.url)),(0,S.lazy)(()=>fs(()=>import(`./PrivacyMaskSettings-APgPLF7p-CNcYwFLg.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([2,1]),import.meta.url));var nK=H([`auto`,`high`,`medium`,`low`]),rK=Co([U(`auto`),F().int().min(1)]),iK=B({enabled:I(),motion:I(),motionHoldSec:F().optional(),audio:H([`off`,`sensor`,`level`]),audioDb:F(),audioHoldSec:F(),detection:I(),detectionHoldSec:F(),detectionClasses:z(P()).optional(),appearance:B({motionColor:P(),audioColor:P(),detectionColor:P(),thickness:F()}).optional()}),aK=B({serverUrl:P().min(1),token:P().min(1),devices:z(F().int().nonnegative()).min(1),layout:rK,quality:nK,showName:I(),showBadges:I(),muted:I(),paused:I(),highlight:iK.optional(),activeOnly:I().optional(),showBoxes:I().optional(),audioOnIds:z(F().int().nonnegative()).optional(),pausedIds:z(F().int().nonnegative()).optional(),snapshots:V(P(),P()).optional(),ptzIds:z(F().int().nonnegative()).optional()});function oK(e){if(e==null)return{ok:!1,error:`config is required`};let t=aK.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}var sK=1e4;function cK(){try{return window.parent!==window}catch{return!0}}function lK(e){let t=window.ReactNativeWebView;if(t){t.postMessage(JSON.stringify(e));return}cK()&&window.parent.postMessage(e,`*`)}function uK(e){let t=t=>{let n=t.data;if(typeof n!=`object`||!n)return;let r=n;r.type!==`embed-command`||typeof r.command!=`object`||r.command===null||e(r.command)};return window.addEventListener(`message`,t),()=>window.removeEventListener(`message`,t)}function dK(e,t,n,r){let a=t();if(a!=null)return Promise.resolve(n(a));if(!cK()){let t=r===void 0?null:r();return t===null?Promise.resolve({ok:!1,error:`config global for mode "${e}" is not set`}):Promise.resolve(t)}return new Promise(t=>{let r,a=e=>{let o=e.data;if(typeof o!=`object`||!o)return;let s=o;s.type===`embed-config`&&(clearTimeout(r),window.removeEventListener(`message`,a),t(n(s.config)))};window.addEventListener(`message`,a),r=setTimeout(()=>{window.removeEventListener(`message`,a),t({ok:!1,error:`config handshake timed out`})},sK),window.parent.postMessage({type:`embed-ready`,mode:e},`*`)})}function fK(e,t,n,r){let[a,o]=(0,S.useState)(null),s=(0,S.useRef)(t);s.current=t;let c=(0,S.useRef)(n);c.current=n;let l=(0,S.useRef)(r);return l.current=r,(0,S.useEffect)(()=>{let t=!0;return dK(e,()=>s.current(),e=>c.current(e),()=>l.current===void 0?null:l.current()).then(e=>{t&&o(e)}),()=>{t=!1}},[e]),a}var pK=H([`auto`,`high`,`medium`,`low`]),mK=Co([U(`auto`),F().int().min(1)]),hK=B({enabled:I(),motion:I(),audio:H([`off`,`sensor`,`level`]),audioDb:F(),audioHoldSec:F(),detection:I(),detectionHoldSec:F(),detectionClasses:z(P()).optional(),appearance:B({motionColor:P(),audioColor:P(),detectionColor:P(),thickness:F()}).optional()}),gK=B({devices:z(F().int().nonnegative()).min(1),layout:mK,quality:pK,showName:I(),audioOnIds:z(F().int().nonnegative()).optional(),activeOnly:I().optional(),boxes:I().optional(),highlight:hK.optional()}),_K=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`;function vK(e){let t=``,n=0;for(;n<e.length;){let r=e[n];if(r===void 0)return null;let a,o;if(r<128)a=r,o=0;else if((r&224)==192)a=r&31,o=1;else if((r&240)==224)a=r&15,o=2;else if((r&248)==240)a=r&7,o=3;else return null;for(let t=1;t<=o;t++){let r=e[n+t];if(r===void 0||(r&192)!=128)return null;a=a<<6|r&63}n+=o+1,t+=String.fromCodePoint(a)}return t}function yK(e){if(e.length%4==1)return null;let t=[];for(let n of e){let e=_K.indexOf(n);if(e<0)return null;t.push(e)}let n=[];for(let e=0;e<t.length;e+=4){let r=t[e],a=t[e+1];if(r===void 0||a===void 0)return null;let o=t[e+2],s=t[e+3];n.push(r<<2|a>>4),o!==void 0&&n.push((a&15)<<4|o>>2),s!==void 0&&o!==void 0&&n.push((o&3)<<6|s)}let r=vK(n);if(r===null)return null;try{return JSON.parse(r)}catch{return null}}function bK(e,t){return e.startsWith(t)?e.slice(t.length):e}function xK(e){let t=new URLSearchParams(bK(e,`#`)).get(`t`);return t!==null&&t.length>0?t:null}function SK(e,t){return new URLSearchParams(bK(e,`?`)).has(`v`)||xK(t)!==null}function CK(e){if(e.length===0)return null;let t=[];for(let n of e.split(`,`)){if(!/^\d+$/.test(n))return null;t.push(Number(n))}return t}function wK(e){return{ok:!1,error:e}}function TK(e,t){let n=new URLSearchParams(bK(e,`?`)),r=n.get(`mode`);if(r!==null&&r!==`grid`)return wK(`unsupported mode "${r}"`);let a=n.get(`v`);if(a===null)return wK(`missing share-link version (v)`);if(a!==`1`)return wK(`unsupported share-link version "${a}"`);let o=n.get(`devices`),s=o===null?null:CK(o);if(s===null||s.length===0)return wK(`invalid or missing devices list`);let c=n.get(`layout`),l;if(c===null||c===`auto`)l=`auto`;else if(/^\d+$/.test(c)&&Number(c)>=1)l=Number(c);else return wK(`invalid layout "${c}"`);let u=n.get(`q`)??`auto`,d=pK.safeParse(u);if(!d.success)return wK(`invalid quality "${u}"`);let f=n.get(`names`)??`0`;if(f!==`0`&&f!==`1`)return wK(`invalid names flag "${f}"`);let p=n.get(`audio`),m;if(p!==null){let e=CK(p);if(e===null)return wK(`invalid audio list "${p}"`);m=e}let h=n.get(`activeOnly`);if(h!==null&&h!==`0`&&h!==`1`)return wK(`invalid activeOnly flag "${h}"`);let g=h===`1`,_=n.get(`boxes`);if(_!==null&&_!==`0`&&_!==`1`)return wK(`invalid boxes flag "${_}"`);let v=_===`1`,y=n.get(`hl`),b;if(y!==null){let e=yK(y),t=hK.safeParse(e);if(e===null||!t.success)return wK(`invalid highlight config (hl)`);b=t.data}let x={devices:[...s],layout:l,quality:d.data,showName:f===`1`,...m!==void 0&&m.length>0?{audioOnIds:[...m]}:{},...g?{activeOnly:!0}:{},...v?{boxes:!0}:{},...b===void 0?{}:{highlight:b}},S=gK.safeParse(x);return S.success?{ok:!0,params:S.data,token:xK(t)}:wK(S.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `))}function EK(e,t,n){if(!SK(e,t))return null;let r=TK(e,t);if(!r.ok)return{ok:!1,error:r.error};if(r.token===null)return{ok:!1,error:`share token missing — the link must end with #t=<token>`};let a=r.params;return oK({serverUrl:n,token:r.token,devices:[...a.devices],layout:a.layout,quality:a.quality,showName:a.showName,showBadges:!0,muted:!0,paused:!1,...a.highlight===void 0?{}:{highlight:a.highlight},...a.activeOnly===!0?{activeOnly:!0}:{},...a.boxes===!0?{showBoxes:!0}:{},...a.audioOnIds!==void 0&&a.audioOnIds.length>0?{audioOnIds:[...a.audioOnIds]}:{}})}function DK(){let e=EK(location.search,location.hash,location.origin);return e!==null&&location.hash!==``&&history.replaceState(null,``,location.pathname+location.search),e}var OK=16/9;function kK(e,t,n,r){if(e<=0||t<=0||n<=0)return{cols:0,rows:0,cellW:0,cellH:0};if(typeof r==`number`&&r>=1){let a=Math.floor(r),o=Math.ceil(e/a),s=Math.min(t/a,n/o*OK);return{cols:a,rows:o,cellW:s,cellH:s/OK}}let a={cols:1,rows:e,cellW:0,cellH:0},o=-1;for(let r=1;r<=e;r++){let s=Math.ceil(e/r),c=Math.min(t/r,n/s*OK),l=c/OK,u=c*l;u>o&&(o=u,a={cols:r,rows:s,cellW:c,cellH:l})}return a}function AK(){let[e,t]=(0,S.useState)(null),[n,r]=(0,S.useState)(`idle`),a=(0,S.useRef)(null),o=(0,S.useRef)(null),s=(0,S.useRef)(null),c=(0,S.useRef)(0),l=(0,S.useRef)(null),u=Pz(),d=Fz(),f=Iz(),p=(0,S.useRef)({start:u.mutateAsync,answer:d.mutateAsync,stop:f.mutateAsync});p.current={start:u.mutateAsync,answer:d.mutateAsync,stop:f.mutateAsync};let m=(0,S.useCallback)(()=>{if(a.current){try{a.current.close()}catch{}a.current=null}if(o.current){for(let e of o.current.getTracks())try{e.stop()}catch{}o.current=null}},[]),h=(0,S.useCallback)(async()=>{let e=s.current;if(s.current=null,m(),e)try{await p.current.stop({deviceId:e.deviceId,sessionId:e.sessionId})}catch{}},[m]),g=(0,S.useCallback)(async e=>{if(l.current===e){c.current+=1,l.current=null,t(null),r(`idle`),await h();return}c.current+=1;let n=c.current;l.current=e,t(e),r(`starting`);let u;try{u=await navigator.mediaDevices.getUserMedia({audio:!0,video:!1})}catch{n===c.current&&(l.current=null,t(null),r(`error`));return}if(n!==c.current){for(let e of u.getTracks())e.stop();return}if(await h(),n!==c.current){for(let e of u.getTracks())e.stop();return}let d=null;try{o.current=u;let f=await p.current.start({deviceId:e});if(n!==c.current){try{await p.current.stop({deviceId:e,sessionId:f.sessionId})}catch{}m();return}s.current={deviceId:e,sessionId:f.sessionId},d=new RTCPeerConnection,a.current=d,d.oniceconnectionstatechange=()=>{if(n!==c.current||!d)return;let e=d.iceConnectionState;e===`connected`||e===`completed`?r(`talking`):(e===`failed`||e===`closed`||e===`disconnected`)&&(l.current=null,t(null),r(`idle`),h())};for(let e of u.getAudioTracks())d.addTrack(e,u);await d.setRemoteDescription({type:`offer`,sdp:f.sdpOffer});let g=await d.createAnswer();if(await d.setLocalDescription(g),n!==c.current)return;await p.current.answer({deviceId:e,sessionId:f.sessionId,sdpAnswer:d.localDescription?.sdp??g.sdp??``})}catch{if(d)try{d.close()}catch{}m();let e=s.current;if(s.current=null,e)try{await p.current.stop({deviceId:e.deviceId,sessionId:e.sessionId})}catch{}n===c.current&&(l.current=null,t(null),r(`error`))}},[h,m]),_=(0,S.useCallback)(e=>{if(e===null){c.current+=1,l.current=null,t(null),r(`idle`),h();return}l.current!==e&&g(e)},[h,g]);return(0,S.useEffect)(()=>()=>{c.current+=1,h()},[h]),{activeMicId:e,micState:n,toggleMic:e=>{g(e)},setActiveMic:_}}var jK=6e3,MK=500;function NK(e,t){let n=(0,S.useRef)(new Map),[,r]=(0,S.useState)(0),a=t?.motion??!1,o=t?.audio??`off`,s=t?.audioDb??-30,c=t?.audioHoldSec??3,l=t?.detection??!1,u=t?.detectionHoldSec??3,d=t?.detectionClasses??[],f=(e,t)=>{n.current.set(e,Date.now()+t),r(e=>e+1)};rz(w.MotionOnMotionChanged,e=>{if(!a)return;let t=e.data;t&&t.detected&&f(t.deviceId,jK)}),rz(w.PipelineAudioInferenceResult,e=>{if(o===`off`)return;let t=e.data;t&&(o===`sensor`?t.frame.detections.length>0:(t.frame.level?.dbfs??-1/0)>=s)&&f(t.deviceId,c*1e3)}),rz(w.DetectionResult,e=>{if(!l)return;let t=e.data;t&&t.frame.detections.some(e=>d.length===0||d.includes(e.macroClass))&&f(t.frame.deviceId,u*1e3)}),(0,S.useEffect)(()=>{let e=setInterval(()=>r(e=>e+1),MK);return()=>clearInterval(e)},[]);let p=Date.now(),m=new Set;for(let t of e){let e=n.current.get(t);e!==void 0&&p<e&&m.add(t)}return m}function PK(e){return{type:`tileOpen`,deviceId:e}}function FK(e){return{type:`audioToggle`,deviceId:e}}function IK(e){return{type:`pauseToggle`,deviceId:e}}function LK(e){return{type:`ptzOpen`,deviceId:e}}function RK(e,t){return t===void 0?{type:`state`,state:e}:{type:`state`,state:e,message:t}}function zK(e){return{type:`layout`,tiles:e}}function BK(e){lK(e)}function VK(e,t,n,r){let a=Number.isFinite(e)&&e>0?e:0,o=Number.isFinite(t)&&t>0?t:0;if(!Number.isFinite(n)||!Number.isFinite(r)||n<=0||r<=0)return{width:a,height:o};let s=Math.min(a/n,o/r);return{width:n*s,height:r*s}}function HK(e,t,n){return!Number.isFinite(e)||!Number.isFinite(t)||!Number.isFinite(n)?0:Math.max(0,(n*t-e)/2)}function UK(e,t,n,r){if(!Number.isFinite(e))return 0;let a=HK(t,n,r);return Math.max(-a,Math.min(a,e))}var WK=4,GK=8,KK=300;function qK(e,t){return Math.hypot(e.x-t.x,e.y-t.y)}function JK({children:e,onTap:t}){let n=(0,S.useRef)(null),r=(0,S.useRef)(null),a=(0,S.useRef)(new Map),o=(0,S.useRef)(1),s=(0,S.useRef)(0),c=(0,S.useRef)(0),l=(0,S.useRef)(null),u=(0,S.useRef)(null),d=(0,S.useRef)(0),f=()=>{let e=r.current;e&&(e.style.transform=`translate(${s.current}px, ${c.current}px) scale(${o.current})`)},p=()=>{let e=n.current?.getBoundingClientRect();if(!e||e.width<=0||e.height<=0)return;let t=r.current?.querySelector(`video`)??null,a=t?null:r.current?.querySelector(`img`)??null,l=t?.videoWidth??a?.naturalWidth??0,u=t?.videoHeight??a?.naturalHeight??0,d=VK(e.width,e.height,l,u);s.current=UK(s.current,e.width,d.width,o.current),c.current=UK(c.current,e.height,d.height,o.current)},m=()=>{o.current=1,s.current=0,c.current=0,f()},h=e=>{try{e.currentTarget.setPointerCapture(e.pointerId)}catch{}if(a.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),a.current.size===2){let e=[...a.current.values()],t=e[0],n=e[1];t&&n&&(l.current={dist:qK(t,n),scale:o.current,cx:(t.x+n.x)/2,cy:(t.y+n.y)/2,tx:s.current,ty:c.current}),u.current=null}else a.current.size===1&&(u.current={x:e.clientX,y:e.clientY,tx:s.current,ty:c.current,moved:!1})},g=e=>{if(!a.current.has(e.pointerId))return;if(a.current.set(e.pointerId,{x:e.clientX,y:e.clientY}),a.current.size>=2&&l.current){let e=[...a.current.values()],t=e[0],n=e[1];if(!t||!n)return;let r=qK(t,n);l.current.dist>0&&(o.current=Math.max(1,Math.min(WK,l.current.scale*(r/l.current.dist))));let u=(t.x+n.x)/2,d=(t.y+n.y)/2;s.current=l.current.tx+(u-l.current.cx),c.current=l.current.ty+(d-l.current.cy),p(),f();return}let t=u.current;if(a.current.size===1&&t){let n=e.clientX-t.x,r=e.clientY-t.y;(Math.abs(n)>GK||Math.abs(r)>GK)&&(t.moved=!0),o.current>1&&(s.current=t.tx+n,c.current=t.ty+r,p(),f())}},_=e=>{let n=a.current.size===1,r=u.current;if(a.current.delete(e.pointerId),a.current.size<2&&(l.current=null),a.current.size===0&&(u.current=null,n&&r&&!r.moved)){let e=Date.now();e-d.current<KK?(d.current=0,m()):(d.current=e,t())}};return(0,C.jsx)(`div`,{ref:n,style:{position:`absolute`,inset:0,overflow:`hidden`,touchAction:`none`},onPointerDown:h,onPointerMove:g,onPointerUp:_,onPointerCancel:_,children:(0,C.jsx)(`div`,{ref:r,style:{width:`100%`,height:`100%`,transformOrigin:`center center`,willChange:`transform`},children:e})})}var YK=2500,XK={person:`#f59e0b`,vehicle:`#3b82f6`,animal:`#22c55e`,face:`#a855f7`,plate:`#ec4899`},ZK=`#ef4444`;function QK(e){return XK[e]??ZK}function $K(e){return e<0?0:e>1?1:e}function eq(e){if(e.width<=0||e.height<=0)return[];let t=[];for(let n of e.detections){let{bbox:r}=n,a=$K(r.x/e.width),o=$K(r.y/e.height),s=$K((r.x+r.width)/e.width),c=$K((r.y+r.height)/e.height);s<=a||c<=o||t.push({label:n.macroClass,score:n.score,x1:a,y1:o,x2:s,y2:c})}return t}function tq({deviceId:e}){let[t,n]=(0,S.useState)([]),r=(0,S.useRef)(void 0);return rz(w.DetectionResult,t=>{let a=t.data;!a||a.frame.deviceId!==e||(n(eq(a.frame)),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>n([]),YK))}),(0,S.useEffect)(()=>()=>{r.current&&clearTimeout(r.current),n([])},[e]),t.length===0?null:(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,overflow:`hidden`,pointerEvents:`none`},children:t.map((e,t)=>{let n=QK(e.label),r=Math.round(e.score*100);return(0,C.jsx)(`div`,{style:{position:`absolute`,left:`${e.x1*100}%`,top:`${e.y1*100}%`,width:`${(e.x2-e.x1)*100}%`,height:`${(e.y2-e.y1)*100}%`,border:`2px solid ${n}`,borderRadius:3},children:(0,C.jsx)(`span`,{style:{position:`absolute`,left:-2,bottom:`100%`,background:n,color:`#fff`,fontSize:10,fontWeight:700,fontFamily:`system-ui, sans-serif`,lineHeight:`14px`,padding:`0 4px`,borderRadius:3,whiteSpace:`nowrap`},children:`${e.label} ${r}%`})},`${e.label}-${t}`)})})}var nq=500;function rq(e,t,n){let{motion:r,detection:a}=eK(e.trpcClient,t),o=(0,S.useRef)(0),s=(0,S.useRef)(0),c=(0,S.useRef)(0),l=(0,S.useRef)(!1),[,u]=(0,S.useState)(0),d=n?.audio??`off`,f=n?.audioDb??-30,p=n?.audioHoldSec??3,m=n?.motionHoldSec??0,h=n?.detectionHoldSec??3,g=n?.detectionClasses??[],_=g.join(`,`);if(rz(w.MotionOnMotionChanged,e=>{let r=e.data;!r||r.deviceId!==t||!n?.motion||(r.detected===!0?(c.current=Date.now()+Math.max(1,m)*1e3,l.current=!0,u(e=>e+1)):r.detected===!1&&l.current&&(c.current=Date.now()+m*1e3,l.current=!1,u(e=>e+1)))}),rz(w.PipelineAudioInferenceResult,e=>{let n=e.data;!n||n.deviceId!==t||d===`off`||(d===`sensor`?n.frame.detections.length>0:(n.frame.level?.dbfs??-1/0)>=f)&&(o.current=Date.now()+p*1e3,u(e=>e+1))}),(0,S.useEffect)(()=>{a&&a.detections.some(e=>g.length===0||g.includes(e.macroClass))&&(s.current=Date.now()+h*1e3,u(e=>e+1))},[a,h,_]),(0,S.useEffect)(()=>{let e=r!==null;(e||l.current)&&(c.current=Date.now()+m*1e3,e||u(e=>e+1)),l.current=e},[r,m]),(0,S.useEffect)(()=>{let e=setInterval(()=>u(e=>e+1),nq);return()=>clearInterval(e)},[]),!n?.enabled)return null;let v=Date.now();return n.detection&&v<s.current?`detection`:d!==`off`&&v<o.current?`audio`:n.motion&&(r!==null||v<c.current)?`motion`:null}var iq={motion:`#DC2626`,audio:`#3B82F6`,detection:`#22C55E`},aq=3500;function oq(e){return e===`auto`?{kind:`adaptive`}:{kind:`profile`,profile:e===`medium`?`mid`:e}}function sq({system:e,deviceId:t,name:n,online:r,quality:a,muted:o,paused:s,showName:c,audioActive:l,micActive:u,onTogglePause:d,onToggleAudio:f,onToggleMic:p,onOpen:m,ptzSupported:h,onPtz:g,highlight:_,showBoxes:v,reconnectSignal:y,posterUrl:b}){let{handleOffer:x,getIceServers:w,addIceCandidate:T,getIceCandidates:E,closeSession:D,getSessionState:ee}=tK(e.trpcClient,t),te=rq(e,t,_),[O,ne]=(0,S.useState)(void 0);(0,S.useEffect)(()=>{if(b||s)return;let n=!1;return e.trpcClient.snapshot.getSnapshot.query({deviceId:t}).then(e=>{!n&&e?.base64&&ne(`data:${e.contentType??`image/jpeg`};base64,${e.base64}`)}).catch(()=>{}),()=>{n=!0}},[b,s,e,t]);let re=b??O,ie=(0,S.useMemo)(()=>oq(a),[a]),ae=`grid:${t}:${a}`,oe=(0,S.useMemo)(()=>(e,t)=>x(ie,e,t),[x,ie]),se=(0,S.useMemo)(()=>(e,t,n)=>x(n,t,e),[x]),[k,A]=(0,S.useState)(!1),ce=(0,S.useRef)(null),le=()=>{ce.current&&clearTimeout(ce.current),ce.current=setTimeout(()=>A(!1),aq)},ue=()=>{A(!0),le()},de=()=>{A(e=>{let t=!e;return t&&le(),t})},j=e=>{e.stopPropagation(),ue()};return(0,S.useEffect)(()=>()=>{ce.current&&clearTimeout(ce.current)},[]),(0,C.jsxs)(`div`,{style:{position:`relative`,width:`100%`,height:`100%`,background:`#000`},children:[(0,C.jsx)(JK,{onTap:de,children:s?(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,color:`#fafaf9`},children:(0,C.jsx)(uq,{size:28})}):(0,C.jsx)(HG,{serverUrl:e.serverUrl,streamKey:ae,autoPlay:!0,muted:o,showControls:!1,className:`w-full h-full`,handleOffer:oe,reoffer:se,getSessionState:ee,getIceServers:w,addIceCandidate:T,getIceCandidates:E,closeSession:D,reconnectSignal:y,posterUrl:re,onClientNetworkSample:a===`auto`?n=>{e.trpcClient.networkQuality.reportClientStats.mutate({deviceId:t,...n}).catch(()=>{})}:void 0},ae)}),v&&!s?(0,C.jsx)(tq,{deviceId:t}):null,te&&(()=>{let e=_?.appearance,t=te===`motion`?e?.motionColor??iq.motion:te===`audio`?e?.audioColor??iq.audio:e?.detectionColor??iq.detection;return(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,border:`${e?.thickness??3}px solid ${t}`,boxShadow:`inset 0 0 12px ${t}`,pointerEvents:`none`}})})(),(c||k)&&(0,C.jsxs)(`div`,{style:{position:`absolute`,left:0,right:0,top:0,display:`flex`,alignItems:`center`,gap:6,padding:`4px 8px`,background:`rgba(0,0,0,0.6)`,color:`#fafaf9`,fontSize:12,fontWeight:600,fontFamily:`system-ui, sans-serif`,pointerEvents:`none`,opacity:c||k?1:0,transition:`opacity 150ms ease`},children:[(0,C.jsx)(`span`,{style:{width:8,height:8,borderRadius:4,background:r?`#34d399`:`#71717a`}}),(0,C.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:n})]}),(0,C.jsxs)(`div`,{style:{position:`absolute`,inset:0,opacity:+!!k,transition:`opacity 150ms ease`,pointerEvents:`none`},children:[(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,pointerEvents:`none`},children:(0,C.jsx)(cq,{label:s?`Play`:`Pause`,big:!0,enabled:k,onClick:e=>{j(e),d(t)},children:s?(0,C.jsx)(uq,{size:22}):(0,C.jsx)(dq,{size:22})})}),(0,C.jsxs)(`div`,{style:{position:`absolute`,left:8,bottom:8,display:`flex`,gap:8,pointerEvents:`none`},children:[(0,C.jsx)(cq,{label:l?`Mute`:`Listen`,active:l,enabled:k,onClick:e=>{j(e),f(t)},children:l?(0,C.jsx)(fq,{size:18}):(0,C.jsx)(pq,{size:18})}),(0,C.jsx)(cq,{label:u?`Stop talk`:`Talk`,active:u,enabled:k,onClick:e=>{j(e),p(t)},children:(0,C.jsx)(mq,{size:18,muted:!u})}),h&&g?(0,C.jsx)(cq,{label:`PTZ`,enabled:k,onClick:e=>{j(e),g(t)},children:(0,C.jsx)(gq,{size:18})}):null]}),(0,C.jsx)(`div`,{style:{position:`absolute`,right:8,bottom:8,pointerEvents:`none`},children:(0,C.jsx)(cq,{label:`Open`,enabled:k,onClick:e=>{j(e),m(t)},children:(0,C.jsx)(hq,{size:18})})})]})]})}function cq({children:e,label:t,onClick:n,big:r=!1,active:a=!1,enabled:o=!0}){let s=r?52:40;return(0,C.jsx)(`button`,{type:`button`,"aria-label":t,onClick:n,style:{width:s,height:s,borderRadius:s/2,border:`none`,display:`flex`,alignItems:`center`,justifyContent:`center`,background:a?`rgba(59,130,246,0.85)`:`rgba(0,0,0,0.55)`,color:`#fafaf9`,cursor:`pointer`,padding:0,WebkitTapHighlightColor:`transparent`,pointerEvents:o?`auto`:`none`},children:e})}var lq={fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`};function uq({size:e}){return(0,C.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,children:(0,C.jsx)(`polygon`,{points:`6 4 20 12 6 20 6 4`,fill:`currentColor`})})}function dq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,children:[(0,C.jsx)(`rect`,{x:`6`,y:`4`,width:`4`,height:`16`,fill:`currentColor`}),(0,C.jsx)(`rect`,{x:`14`,y:`4`,width:`4`,height:`16`,fill:`currentColor`})]})}function fq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`path`,{d:`M19.07 4.93a10 10 0 010 14.14M15.54 8.46a5 5 0 010 7.07`})]})}function pq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`polygon`,{points:`11 5 6 9 2 9 2 15 6 15 11 19 11 5`}),(0,C.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,C.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]})}function mq({size:e,muted:t}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`path`,{d:`M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z`}),(0,C.jsx)(`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2M12 19v4`}),t&&(0,C.jsx)(`line`,{x1:`3`,y1:`3`,x2:`21`,y2:`21`})]})}function hq({size:e}){return(0,C.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:(0,C.jsx)(`path`,{d:`M15 3h6v6M21 3l-9 9M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5`})})}function gq({size:e}){return(0,C.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,...lq,children:[(0,C.jsx)(`path`,{d:`M12 2v20M2 12h20`}),(0,C.jsx)(`path`,{d:`M12 2l-3 3M12 2l3 3M12 22l-3-3M12 22l3-3M2 12l3-3M2 12l3 3M22 12l-3-3M22 12l-3 3`})]})}function _q({message:e}){return(0,S.useEffect)(()=>BK(RK(`error`,e)),[e]),(0,C.jsxs)(`div`,{style:{position:`fixed`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`#000`,color:`#f87171`,fontFamily:`system-ui, sans-serif`,fontSize:13,padding:16,textAlign:`center`},children:[`Grid embed config error: `,e]})}function vq({system:e,config:t}){let[n,r]=(0,S.useState)(()=>new Set(t.audioOnIds??[])),a=AK(),o=(0,S.useRef)(a.setActiveMic);o.current=a.setActiveMic;let[s,c]=(0,S.useState)(()=>new Set(t.pausedIds??[])),[l,u]=(0,S.useState)(t.highlight),[d,f]=(0,S.useState)(t.activeOnly??!1),[p,m]=(0,S.useState)(t.showBoxes??!1),h=NK(t.devices,l),g=(0,S.useMemo)(()=>d?t.devices.filter(e=>h.has(e)):t.devices,[d,t.devices,h]),[_,v]=(0,S.useState)(t.quality),[y,b]=(0,S.useState)(t.layout),[x,w]=(0,S.useState)(t.showName),[T,E]=(0,S.useState)(0),[D,ee]=(0,S.useState)(()=>t.snapshots??{}),te=(0,S.useMemo)(()=>new Set(t.ptzIds??[]),[t.ptzIds]),[O,ne]=(0,S.useState)({w:window.innerWidth,h:window.innerHeight}),[re,ie]=(0,S.useState)({});(0,S.useEffect)(()=>{let t=!1;return e.trpcClient.deviceManager.listAll.query({}).then(e=>{if(t)return;let n={};for(let t of e)n[t.id]={name:t.name??`Camera ${t.id}`,online:t.online??!1};ie(n)}).catch(()=>{}),()=>{t=!0}},[e]),(0,S.useEffect)(()=>(window.__camstackGrid={setAudioOn:e=>r(new Set(e)),setMutedAll:e=>{e&&r(new Set)},setActiveMic:e=>o.current(e),setHighlight:e=>u(e),setActiveOnly:e=>f(e),setShowBoxes:e=>m(e),setPaused:e=>c(new Set(e)),setQuality:e=>v(e),setLayout:e=>b(e),setShowName:w,setShowBadges:()=>{},setSnapshots:e=>ee(e),fit:(e,t)=>ne({w:e,h:t}),reconnect:()=>E(e=>e+1)},BK(RK(`ready`)),()=>{window.__camstackGrid&&delete window.__camstackGrid}),[]),(0,S.useEffect)(()=>uK(e=>{let t=window.__camstackGrid;if(t)switch(e.kind){case`setAudioOn`:t.setAudioOn(e.value);break;case`setMutedAll`:t.setMutedAll(e.value);break;case`setActiveMic`:t.setActiveMic(e.value);break;case`setHighlight`:t.setHighlight(e.value);break;case`setActiveOnly`:t.setActiveOnly(e.value);break;case`setShowBoxes`:t.setShowBoxes(e.value===!0);break;case`setPaused`:t.setPaused(e.value);break;case`setQuality`:t.setQuality(e.value);break;case`setLayout`:t.setLayout(e.value);break;case`setShowName`:t.setShowName(e.value);break;case`setShowBadges`:t.setShowBadges(e.value);break;case`setSnapshots`:t.setSnapshots(e.value);break;case`fit`:t.fit(e.w,e.h);break;case`reconnect`:t.reconnect();break;default:break}}),[]);let ae=(0,S.useMemo)(()=>kK(g.length,O.w,O.h,y),[g.length,O.w,O.h,y]),oe=(0,S.useRef)(null);return(0,S.useEffect)(()=>{let e=oe.current;if(!e)return;let t=[];e.querySelectorAll(`[data-device-id]`).forEach(e=>{let n=Number(e.dataset.deviceId),r=e.getBoundingClientRect();t.push({deviceId:n,rect:{x:r.x,y:r.y,w:r.width,h:r.height}})}),t.length&&BK(zK(t))},[ae,g]),(0,C.jsxs)(`div`,{ref:oe,style:{position:`fixed`,inset:0,background:`#000`,display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`center`},children:[d&&g.length===0&&(0,C.jsx)(`div`,{style:{color:`#a1a1aa`,fontFamily:`system-ui, sans-serif`,fontSize:14,padding:24,textAlign:`center`},children:`No active cameras`}),g.map(t=>(0,C.jsx)(`div`,{"data-device-id":t,style:{width:ae.cellW,height:ae.cellH},children:(0,C.jsx)(sq,{system:e,deviceId:t,name:re[t]?.name??`Camera ${t}`,online:re[t]?.online??!1,quality:_,muted:!n.has(t),paused:s.has(t),showName:x,audioActive:n.has(t),micActive:a.activeMicId===t,onTogglePause:e=>BK(IK(e)),onToggleAudio:e=>BK(FK(e)),onToggleMic:a.toggleMic,onOpen:e=>BK(PK(e)),ptzSupported:te.has(t),onPtz:e=>BK(LK(e)),highlight:l,showBoxes:p,reconnectSignal:T,posterUrl:D[String(t)]})},t))]})}function yq(){let e=fK(`grid`,()=>window.__CAMSTACK_GRID__,oK,DK),t=(0,S.useMemo)(()=>e===null||!e.ok?null:{system:xA({serverUrl:e.config.serverUrl,token:e.config.token}),queryClient:new BT({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}})},[e]);return(0,S.useEffect)(()=>{if(t)return()=>t.system.close()},[t]),e===null?null:e.ok?t?(0,C.jsx)(tz,{system:t.system,children:(0,C.jsx)(UT,{client:t.queryClient,children:(0,C.jsx)($.Provider,{client:t.system.trpcClient,queryClient:t.queryClient,children:(0,C.jsx)(vq,{system:t.system,config:e.config})})})}):(0,C.jsx)(_q,{message:`Failed to initialise the grid embed`}):(0,C.jsx)(_q,{message:e.error})}function bq(e){switch(e.kind){case`seekTo`:return{t:`seek`,epoch:e.epochMs};case`scrubEnd`:return{t:`scrubCommit`,epoch:e.epochMs};case`play`:return{t:`setRate`,rate:1};case`pause`:return{t:`setRate`,rate:0};case`setRate`:return{t:`setRate`,rate:Math.min(4,Math.max(0,e.rate))};case`stepFrame`:return{t:`stepFrame`,dir:e.dir};case`goLive`:return{t:`goLive`};case`playRecorded`:return{t:`playRecorded`,deviceId:e.deviceId,epoch:e.epochMs,profile:e.profile};case`scrubStart`:case`scrubTo`:return null}}var xq=class{capacity;dispose;map=new Map;constructor(e,t){this.capacity=e,this.dispose=t}has(e){return this.map.has(e)}get(e){if(!this.map.has(e))return;let t=this.map.get(e);return this.map.delete(e),t!==void 0&&this.map.set(e,t),t}set(e,t){if(this.map.has(e)){let t=this.map.get(e);this.map.delete(e),t!==void 0&&this.dispose?.(t)}for(this.map.set(e,t);this.map.size>this.capacity;){let e=this.map.keys().next().value;if(e===void 0)break;let t=this.map.get(e);this.map.delete(e),t!==void 0&&this.dispose?.(t)}}clear(){this.map.forEach(e=>this.dispose?.(e)),this.map.clear()}};function Sq(e){try{return new URL(e).toString()}catch{let t=typeof window<`u`&&window.location?.origin?window.location.origin:`http://localhost`;return new URL(e,t).toString()}}function Cq(e,t){return new URL(t,e).toString()}function wq(e){let t=(e.split(`/`).pop()??``).match(/^(\d+)-(\d+)(?:-\d+)?\.m4s$/);return t?{startMs:Number(t[1]),durMs:Number(t[2])}:null}function Tq(e,t){let n=e.split(`
|
|
112
112
|
`).map(e=>e.trim());for(let e of n)if(/low\.m3u8/i.test(e))return Cq(t,e);let r=null;for(let e=0;e<n.length;e++){let a=n[e],o=n[e+1];a&&a.startsWith(`#EXT-X-STREAM-INF`)&&o&&!o.startsWith(`#`)&&(r=Cq(t,o))}return r}async function Eq(e,t){let n=await fetch(e,t?{headers:t}:void 0);if(!n.ok)throw Error(`playlist fetch ${n.status} for ${e}`);return n.text()}async function Dq(e,t){let n=Sq(e),r=Tq(await Eq(n,t),n);if(!r)return[];let a=await Eq(r,t),o=[];for(let e of a.split(`
|
|
113
113
|
`).map(e=>e.trim())){if(!e||e.startsWith(`#`))continue;let t=Cq(r,e),n=wq(t);n&&o.push({uri:t,startMs:n.startMs,durMs:n.durMs})}return o.sort((e,t)=>e.startMs-t.startMs),o}function Oq(e,t){let n=e.length;if(n===0)return 0;let r=0,a=n-1,o=-1;for(;r<=a;){let n=r+a>>1,s=e[n];if(!s)break;s.startMs<=t?(o=n,r=n+1):a=n-1}if(o===-1)return 0;let s=e[o];if(s&&t<s.startMs+s.durMs)return o;let c=e[o+1];return s&&c?Math.abs(s.startMs-t)<=Math.abs(c.startMs-t)?o:o+1:o}function kq(e,t){return e.length===0?null:e[Oq(e,t)]??null}function Aq(e,t,n,r){if(e.length===0||r<=0)return[];let a=Oq(e,t),o=[];if(n===`forward`)for(let t=a+1;t<=a+r&&t<e.length;t++){let n=e[t];n&&o.push(n)}else for(let t=a-1;t>=a-r&&t>=0;t--){let n=e[t];n&&o.push(n)}return o}function jq(e){return e instanceof Error&&e.unsupported===!0}var Mq=class{deps;generation=0;inflight=null;lastEpoch=0;lastSegStart=null;unsupported=!1;bytes;frames;prefetchCount;subSegmentGranularityMs;prefetching=new Map;constructor(e){this.deps=e,this.bytes=new xq(e.byteCacheSize??24),this.frames=new xq(e.frameCacheSize??16,e=>e.close()),this.prefetchCount=e.prefetchCount??3,this.subSegmentGranularityMs=e.subSegmentGranularityMs??1e3}get codecUnsupported(){return this.unsupported}clearFrames(){this.frames.clear()}dispose(){this.inflight?.abort();for(let e of this.prefetching.values())e.abort();this.prefetching.clear(),this.frames.clear(),this.bytes.clear()}async scrubTo(e){if(this.unsupported)return;let t=e>=this.lastEpoch?`forward`:`backward`;this.lastEpoch=e;let n=++this.generation;this.inflight?.abort();let r=new AbortController;this.inflight=r;let a=performance.now(),o=await this.deps.ensureIndex(e),s=kq(o,e);if(!s)return;let c=this.deps.decodeAt!==void 0&&this.lastSegStart===s.startMs,l=Math.min(Math.max(e-s.startMs,0),Math.max(s.durMs-1,0)),u=c?Math.floor(l/this.subSegmentGranularityMs)*this.subSegmentGranularityMs:0,d=s.startMs+u,f=this.frames.get(d);if(f){n===this.generation&&(this.deps.draw(f),this.deps.onTiming?.({epochMs:e,cached:!0,fetchMs:0,decodeMs:0,totalMs:performance.now()-a}),this.maybePrefetch(o,e,t,s.startMs));return}try{let l=performance.now(),f=await this.getBytes(s.uri,r.signal),p=performance.now()-l,m=performance.now(),h=c&&this.deps.decodeAt?await this.deps.decodeAt(f,u):await this.deps.decode(f),g=performance.now()-m;if(n!==this.generation){h.close();return}this.frames.set(d,h),this.deps.draw(h),this.deps.onTiming?.({epochMs:e,cached:!1,fetchMs:p,decodeMs:g,totalMs:performance.now()-a}),this.maybePrefetch(o,e,t,s.startMs)}catch(e){if(r.signal.aborted)return;throw jq(e)&&(this.unsupported=!0),e}}async getBytes(e,t){let n=this.bytes.get(e);if(n)return n;let r=await this.deps.fetchBytes(e,t);return this.bytes.set(e,r),r}maybePrefetch(e,t,n,r){let a=this.lastSegStart;this.lastSegStart=r,!(a===null||r===a)&&this.schedulePrefetch(e,t,n)}schedulePrefetch(e,t,n){let r=Aq(e,t,n,this.prefetchCount);for(let e of r){if(this.bytes.has(e.uri)||this.prefetching.has(e.uri))continue;let t=new AbortController;this.prefetching.set(e.uri,t),this.deps.fetchBytes(e.uri,t.signal).then(t=>{this.bytes.set(e.uri,t),this.prefetching.delete(e.uri)}).catch(()=>{this.prefetching.delete(e.uri)})}}},Nq=u(s((e=>{var t=(function(){var e=new Date,n=4,r=3,a=2,o=1,s=n;return{setLogLevel:function(e){s=e==this.debug?o:e==this.info?a:e==this.warn?r:(this.error,n)},debug:function(n,r){console.debug===void 0&&(console.debug=console.log),o>=s&&console.debug(`[`+t.getDurationString(new Date-e,1e3)+`]`,`[`+n+`]`,r)},log:function(e,t){this.debug(e.msg)},info:function(n,r){a>=s&&console.info(`[`+t.getDurationString(new Date-e,1e3)+`]`,`[`+n+`]`,r)},warn:function(n,a){r>=s&&console.warn(`[`+t.getDurationString(new Date-e,1e3)+`]`,`[`+n+`]`,a)},error:function(r,a){n>=s&&console.error(`[`+t.getDurationString(new Date-e,1e3)+`]`,`[`+r+`]`,a)}}})();t.getDurationString=function(e,t){var n;function r(e,t){for(var n=(``+e).split(`.`);n[0].length<t;)n[0]=`0`+n[0];return n.join(`.`)}e<0?(n=!0,e=-e):n=!1;var a=e/(t||1),o=Math.floor(a/3600);a-=o*3600;var s=Math.floor(a/60);a-=s*60;var c=a*1e3;return a=Math.floor(a),c-=a*1e3,c=Math.floor(c),(n?`-`:``)+o+`:`+r(s,2)+`:`+r(a,2)+`.`+r(c,3)},t.printRanges=function(e){var n=e.length;if(n>0){for(var r=``,a=0;a<n;a++)a>0&&(r+=`,`),r+=`[`+t.getDurationString(e.start(a))+`,`+t.getDurationString(e.end(a))+`]`;return r}else return`(empty)`},e!==void 0&&(e.Log=t);var n=function(e){if(e instanceof ArrayBuffer)this.buffer=e,this.dataview=new DataView(e);else throw`Needs an array buffer`;this.position=0};n.prototype.getPosition=function(){return this.position},n.prototype.getEndPosition=function(){return this.buffer.byteLength},n.prototype.getLength=function(){return this.buffer.byteLength},n.prototype.seek=function(e){var t=Math.max(0,Math.min(this.buffer.byteLength,e));return this.position=isNaN(t)||!isFinite(t)?0:t,!0},n.prototype.isEos=function(){return this.getPosition()>=this.getEndPosition()},n.prototype.readAnyInt=function(e,t){var n=0;if(this.position+e<=this.buffer.byteLength){switch(e){case 1:n=t?this.dataview.getInt8(this.position):this.dataview.getUint8(this.position);break;case 2:n=t?this.dataview.getInt16(this.position):this.dataview.getUint16(this.position);break;case 3:if(t)throw`No method for reading signed 24 bits values`;n=this.dataview.getUint8(this.position)<<16,n|=this.dataview.getUint8(this.position+1)<<8,n|=this.dataview.getUint8(this.position+2);break;case 4:n=t?this.dataview.getInt32(this.position):this.dataview.getUint32(this.position);break;case 8:if(t)throw`No method for reading signed 64 bits values`;n=this.dataview.getUint32(this.position)<<32,n|=this.dataview.getUint32(this.position+4);break;default:throw`readInt method not implemented for size: `+e}return this.position+=e,n}else throw`Not enough bytes in buffer`},n.prototype.readUint8=function(){return this.readAnyInt(1,!1)},n.prototype.readUint16=function(){return this.readAnyInt(2,!1)},n.prototype.readUint24=function(){return this.readAnyInt(3,!1)},n.prototype.readUint32=function(){return this.readAnyInt(4,!1)},n.prototype.readUint64=function(){return this.readAnyInt(8,!1)},n.prototype.readString=function(e){if(this.position+e<=this.buffer.byteLength){for(var t=``,n=0;n<e;n++)t+=String.fromCharCode(this.readUint8());return t}else throw`Not enough bytes in buffer`},n.prototype.readCString=function(){for(var e=[];;){var t=this.readUint8();if(t!==0)e.push(t);else break}return String.fromCharCode.apply(null,e)},n.prototype.readInt8=function(){return this.readAnyInt(1,!0)},n.prototype.readInt16=function(){return this.readAnyInt(2,!0)},n.prototype.readInt32=function(){return this.readAnyInt(4,!0)},n.prototype.readInt64=function(){return this.readAnyInt(8,!1)},n.prototype.readUint8Array=function(e){for(var t=new Uint8Array(e),n=0;n<e;n++)t[n]=this.readUint8();return t},n.prototype.readInt16Array=function(e){for(var t=new Int16Array(e),n=0;n<e;n++)t[n]=this.readInt16();return t},n.prototype.readUint16Array=function(e){for(var t=new Int16Array(e),n=0;n<e;n++)t[n]=this.readUint16();return t},n.prototype.readUint32Array=function(e){for(var t=new Uint32Array(e),n=0;n<e;n++)t[n]=this.readUint32();return t},n.prototype.readInt32Array=function(e){for(var t=new Int32Array(e),n=0;n<e;n++)t[n]=this.readInt32();return t},e!==void 0&&(e.MP4BoxStream=n);var r=function(e,t,n){this._byteOffset=t||0,e instanceof ArrayBuffer?this.buffer=e:typeof e==`object`?(this.dataView=e,t&&(this._byteOffset+=t)):this.buffer=new ArrayBuffer(e||0),this.position=0,this.endianness=n??r.LITTLE_ENDIAN};r.prototype={},r.prototype.getPosition=function(){return this.position},r.prototype._realloc=function(e){if(this._dynamicSize){var t=this._byteOffset+this.position+e,n=this._buffer.byteLength;if(t<=n){t>this._byteLength&&(this._byteLength=t);return}for(n<1&&(n=1);t>n;)n*=2;var r=new ArrayBuffer(n),a=new Uint8Array(this._buffer);new Uint8Array(r,0,a.length).set(a),this.buffer=r,this._byteLength=t}},r.prototype._trimAlloc=function(){if(this._byteLength!=this._buffer.byteLength){var e=new ArrayBuffer(this._byteLength),t=new Uint8Array(e),n=new Uint8Array(this._buffer,0,t.length);t.set(n),this.buffer=e}},r.BIG_ENDIAN=!1,r.LITTLE_ENDIAN=!0,r.prototype._byteLength=0,Object.defineProperty(r.prototype,"byteLength",{get:function(){return this._byteLength-this._byteOffset}}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this._trimAlloc(),this._buffer},set:function(e){this._buffer=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(r.prototype,"byteOffset",{get:function(){return this._byteOffset},set:function(e){this._byteOffset=e,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(r.prototype,"dataView",{get:function(){return this._dataView},set:function(e){this._byteOffset=e.byteOffset,this._buffer=e.buffer,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._byteOffset+e.byteLength}}),r.prototype.seek=function(e){var t=Math.max(0,Math.min(this.byteLength,e));this.position=isNaN(t)||!isFinite(t)?0:t},r.prototype.isEof=function(){return this.position>=this._byteLength},r.prototype.mapUint8Array=function(e){this._realloc(e*1);var t=new Uint8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=e*1,t},r.prototype.readInt32Array=function(e,t){e??=this.byteLength-this.position/4;var n=new Int32Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readInt16Array=function(e,t){e??=this.byteLength-this.position/2;var n=new Int16Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readInt8Array=function(e){e??=this.byteLength-this.position;var t=new Int8Array(e);return r.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},r.prototype.readUint32Array=function(e,t){e??=this.byteLength-this.position/4;var n=new Uint32Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readUint16Array=function(e,t){e??=this.byteLength-this.position/2;var n=new Uint16Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readUint8Array=function(e){e??=this.byteLength-this.position;var t=new Uint8Array(e);return r.memcpy(t.buffer,0,this.buffer,this.byteOffset+this.position,e*t.BYTES_PER_ELEMENT),this.position+=t.byteLength,t},r.prototype.readFloat64Array=function(e,t){e??=this.byteLength-this.position/8;var n=new Float64Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readFloat32Array=function(e,t){e??=this.byteLength-this.position/4;var n=new Float32Array(e);return r.memcpy(n.buffer,0,this.buffer,this.byteOffset+this.position,e*n.BYTES_PER_ELEMENT),r.arrayToNative(n,t??this.endianness),this.position+=n.byteLength,n},r.prototype.readInt32=function(e){var t=this._dataView.getInt32(this.position,e??this.endianness);return this.position+=4,t},r.prototype.readInt16=function(e){var t=this._dataView.getInt16(this.position,e??this.endianness);return this.position+=2,t},r.prototype.readInt8=function(){var e=this._dataView.getInt8(this.position);return this.position+=1,e},r.prototype.readUint32=function(e){var t=this._dataView.getUint32(this.position,e??this.endianness);return this.position+=4,t},r.prototype.readUint16=function(e){var t=this._dataView.getUint16(this.position,e??this.endianness);return this.position+=2,t},r.prototype.readUint8=function(){var e=this._dataView.getUint8(this.position);return this.position+=1,e},r.prototype.readFloat32=function(e){var t=this._dataView.getFloat32(this.position,e??this.endianness);return this.position+=4,t},r.prototype.readFloat64=function(e){var t=this._dataView.getFloat64(this.position,e??this.endianness);return this.position+=8,t},r.endianness=new Int8Array(new Int16Array([1]).buffer)[0]>0,r.memcpy=function(e,t,n,r,a){var o=new Uint8Array(e,t,a),s=new Uint8Array(n,r,a);o.set(s)},r.arrayToNative=function(e,t){return t==this.endianness?e:this.flipArrayEndianness(e)},r.nativeToEndian=function(e,t){return this.endianness==t?e:this.flipArrayEndianness(e)},r.flipArrayEndianness=function(e){for(var t=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=0;n<e.byteLength;n+=e.BYTES_PER_ELEMENT)for(var r=n+e.BYTES_PER_ELEMENT-1,a=n;r>a;r--,a++){var o=t[a];t[a]=t[r],t[r]=o}return e},r.prototype.failurePosition=0,String.fromCharCodeUint8=function(e){for(var t=[],n=0;n<e.length;n++)t[n]=e[n];return String.fromCharCode.apply(null,t)},r.prototype.readString=function(e,t){return t==null||t==`ASCII`?String.fromCharCodeUint8.apply(null,[this.mapUint8Array(e??this.byteLength-this.position)]):new TextDecoder(t).decode(this.mapUint8Array(e))},r.prototype.readCString=function(e){var t=this.byteLength-this.position,n=new Uint8Array(this._buffer,this._byteOffset+this.position),r=t;e!=null&&(r=Math.min(e,t));for(var a=0;a<r&&n[a]!==0;a++);var o=String.fromCharCodeUint8.apply(null,[this.mapUint8Array(a)]);return e==null?a!=t&&(this.position+=1):this.position+=r-a,o};var a=2**32;r.prototype.readInt64=function(){return this.readInt32()*a+this.readUint32()},r.prototype.readUint64=function(){return this.readUint32()*a+this.readUint32()},r.prototype.readInt64=function(){return this.readUint32()*a+this.readUint32()},r.prototype.readUint24=function(){return(this.readUint8()<<16)+(this.readUint8()<<8)+this.readUint8()},e!==void 0&&(e.DataStream=r),r.prototype.save=function(e){var t=new Blob([this.buffer]);if(window.URL&&URL.createObjectURL){var n=window.URL.createObjectURL(t),r=document.createElement(`a`);document.body.appendChild(r),r.setAttribute(`href`,n),r.setAttribute(`download`,e),r.setAttribute(`target`,`_self`),r.click(),window.URL.revokeObjectURL(n)}else throw`DataStream.save: Can't create object URL.`},r.prototype._dynamicSize=!0,Object.defineProperty(r.prototype,"dynamicSize",{get:function(){return this._dynamicSize},set:function(e){e||this._trimAlloc(),this._dynamicSize=e}}),r.prototype.shift=function(e){var t=new ArrayBuffer(this._byteLength-e),n=new Uint8Array(t),r=new Uint8Array(this._buffer,e,n.length);n.set(r),this.buffer=t,this.position-=e},r.prototype.writeInt32Array=function(e,t){if(this._realloc(e.length*4),e instanceof Int32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt32Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeInt32(e[n],t)},r.prototype.writeInt16Array=function(e,t){if(this._realloc(e.length*2),e instanceof Int16Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt16Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeInt16(e[n],t)},r.prototype.writeInt8Array=function(e){if(this._realloc(e.length*1),e instanceof Int8Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapInt8Array(e.length);else for(var t=0;t<e.length;t++)this.writeInt8(e[t])},r.prototype.writeUint32Array=function(e,t){if(this._realloc(e.length*4),e instanceof Uint32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint32Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeUint32(e[n],t)},r.prototype.writeUint16Array=function(e,t){if(this._realloc(e.length*2),e instanceof Uint16Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint16Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeUint16(e[n],t)},r.prototype.writeUint8Array=function(e){if(this._realloc(e.length*1),e instanceof Uint8Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapUint8Array(e.length);else for(var t=0;t<e.length;t++)this.writeUint8(e[t])},r.prototype.writeFloat64Array=function(e,t){if(this._realloc(e.length*8),e instanceof Float64Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapFloat64Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeFloat64(e[n],t)},r.prototype.writeFloat32Array=function(e,t){if(this._realloc(e.length*4),e instanceof Float32Array&&this.byteOffset+this.position%e.BYTES_PER_ELEMENT===0)r.memcpy(this._buffer,this.byteOffset+this.position,e.buffer,0,e.byteLength),this.mapFloat32Array(e.length,t);else for(var n=0;n<e.length;n++)this.writeFloat32(e[n],t)},r.prototype.writeInt32=function(e,t){this._realloc(4),this._dataView.setInt32(this.position,e,t??this.endianness),this.position+=4},r.prototype.writeInt16=function(e,t){this._realloc(2),this._dataView.setInt16(this.position,e,t??this.endianness),this.position+=2},r.prototype.writeInt8=function(e){this._realloc(1),this._dataView.setInt8(this.position,e),this.position+=1},r.prototype.writeUint32=function(e,t){this._realloc(4),this._dataView.setUint32(this.position,e,t??this.endianness),this.position+=4},r.prototype.writeUint16=function(e,t){this._realloc(2),this._dataView.setUint16(this.position,e,t??this.endianness),this.position+=2},r.prototype.writeUint8=function(e){this._realloc(1),this._dataView.setUint8(this.position,e),this.position+=1},r.prototype.writeFloat32=function(e,t){this._realloc(4),this._dataView.setFloat32(this.position,e,t??this.endianness),this.position+=4},r.prototype.writeFloat64=function(e,t){this._realloc(8),this._dataView.setFloat64(this.position,e,t??this.endianness),this.position+=8},r.prototype.writeUCS2String=function(e,t,n){n??=e.length;for(var r=0;r<e.length&&r<n;r++)this.writeUint16(e.charCodeAt(r),t);for(;r<n;r++)this.writeUint16(0)},r.prototype.writeString=function(e,t,n){var r=0;if(t==null||t==`ASCII`)if(n!=null){var a=Math.min(e.length,n);for(r=0;r<a;r++)this.writeUint8(e.charCodeAt(r));for(;r<n;r++)this.writeUint8(0)}else for(r=0;r<e.length;r++)this.writeUint8(e.charCodeAt(r));else this.writeUint8Array(new TextEncoder(t).encode(e.substring(0,n)))},r.prototype.writeCString=function(e,t){var n=0;if(t!=null){var r=Math.min(e.length,t);for(n=0;n<r;n++)this.writeUint8(e.charCodeAt(n));for(;n<t;n++)this.writeUint8(0)}else{for(n=0;n<e.length;n++)this.writeUint8(e.charCodeAt(n));this.writeUint8(0)}},r.prototype.writeStruct=function(e,t){for(var n=0;n<e.length;n+=2){var r=e[n+1];this.writeType(r,t[e[n]],t)}},r.prototype.writeType=function(e,t,n){var a;if(typeof e==`function`)return e(this,t);if(typeof e==`object`&&!(e instanceof Array))return e.set(this,t,n);var o=null,s=`ASCII`,c=this.position;switch(typeof e==`string`&&/:/.test(e)&&(a=e.split(`:`),e=a[0],o=parseInt(a[1])),typeof e==`string`&&/,/.test(e)&&(a=e.split(`,`),e=a[0],s=parseInt(a[1])),e){case`uint8`:this.writeUint8(t);break;case`int8`:this.writeInt8(t);break;case`uint16`:this.writeUint16(t,this.endianness);break;case`int16`:this.writeInt16(t,this.endianness);break;case`uint32`:this.writeUint32(t,this.endianness);break;case`int32`:this.writeInt32(t,this.endianness);break;case`float32`:this.writeFloat32(t,this.endianness);break;case`float64`:this.writeFloat64(t,this.endianness);break;case`uint16be`:this.writeUint16(t,r.BIG_ENDIAN);break;case`int16be`:this.writeInt16(t,r.BIG_ENDIAN);break;case`uint32be`:this.writeUint32(t,r.BIG_ENDIAN);break;case`int32be`:this.writeInt32(t,r.BIG_ENDIAN);break;case`float32be`:this.writeFloat32(t,r.BIG_ENDIAN);break;case`float64be`:this.writeFloat64(t,r.BIG_ENDIAN);break;case`uint16le`:this.writeUint16(t,r.LITTLE_ENDIAN);break;case`int16le`:this.writeInt16(t,r.LITTLE_ENDIAN);break;case`uint32le`:this.writeUint32(t,r.LITTLE_ENDIAN);break;case`int32le`:this.writeInt32(t,r.LITTLE_ENDIAN);break;case`float32le`:this.writeFloat32(t,r.LITTLE_ENDIAN);break;case`float64le`:this.writeFloat64(t,r.LITTLE_ENDIAN);break;case`cstring`:this.writeCString(t,o);break;case`string`:this.writeString(t,s,o);break;case`u16string`:this.writeUCS2String(t,this.endianness,o);break;case`u16stringle`:this.writeUCS2String(t,r.LITTLE_ENDIAN,o);break;case`u16stringbe`:this.writeUCS2String(t,r.BIG_ENDIAN,o);break;default:if(e.length==3){for(var l=e[1],u=0;u<t.length;u++)this.writeType(l,t[u]);break}else{this.writeStruct(e,t);break}}o!=null&&(this.position=c,this._realloc(o),this.position=c+o)},r.prototype.writeUint64=function(e){var t=Math.floor(e/a);this.writeUint32(t),this.writeUint32(e&4294967295)},r.prototype.writeUint24=function(e){this.writeUint8((e&16711680)>>16),this.writeUint8((e&65280)>>8),this.writeUint8(e&255)},r.prototype.adjustUint32=function(e,t){var n=this.position;this.seek(e),this.writeUint32(t),this.seek(n)},r.prototype.mapInt32Array=function(e,t){this._realloc(e*4);var n=new Int32Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*4,n},r.prototype.mapInt16Array=function(e,t){this._realloc(e*2);var n=new Int16Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*2,n},r.prototype.mapInt8Array=function(e){this._realloc(e*1);var t=new Int8Array(this._buffer,this.byteOffset+this.position,e);return this.position+=e*1,t},r.prototype.mapUint32Array=function(e,t){this._realloc(e*4);var n=new Uint32Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*4,n},r.prototype.mapUint16Array=function(e,t){this._realloc(e*2);var n=new Uint16Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*2,n},r.prototype.mapFloat64Array=function(e,t){this._realloc(e*8);var n=new Float64Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*8,n},r.prototype.mapFloat32Array=function(e,t){this._realloc(e*4);var n=new Float32Array(this._buffer,this.byteOffset+this.position,e);return r.arrayToNative(n,t??this.endianness),this.position+=e*4,n};var o=function(e){this.buffers=[],this.bufferIndex=-1,e&&(this.insertBuffer(e),this.bufferIndex=0)};o.prototype=new r(new ArrayBuffer,0,r.BIG_ENDIAN),o.prototype.initialized=function(){var e;return this.bufferIndex>-1?!0:this.buffers.length>0?(e=this.buffers[0],e.fileStart===0?(this.buffer=e,this.bufferIndex=0,t.debug(`MultiBufferStream`,`Stream ready for parsing`),!0):(t.warn(`MultiBufferStream`,`The first buffer should have a fileStart of 0`),this.logBufferLevel(),!1)):(t.warn(`MultiBufferStream`,`No buffer to start parsing from`),this.logBufferLevel(),!1)},ArrayBuffer.concat=function(e,n){t.debug(`ArrayBuffer`,`Trying to create a new buffer of size: `+(e.byteLength+n.byteLength));var r=new Uint8Array(e.byteLength+n.byteLength);return r.set(new Uint8Array(e),0),r.set(new Uint8Array(n),e.byteLength),r.buffer},o.prototype.reduceBuffer=function(e,t,n){var r=new Uint8Array(n);return r.set(new Uint8Array(e,t,n)),r.buffer.fileStart=e.fileStart+t,r.buffer.usedBytes=0,r.buffer},o.prototype.insertBuffer=function(e){for(var n=!0,r=0;r<this.buffers.length;r++){var a=this.buffers[r];if(e.fileStart<=a.fileStart){if(e.fileStart===a.fileStart)if(e.byteLength>a.byteLength){this.buffers.splice(r,1),r--;continue}else t.warn(`MultiBufferStream`,`Buffer (fileStart: `+e.fileStart+` - Length: `+e.byteLength+`) already appended, ignoring`);else e.fileStart+e.byteLength<=a.fileStart||(e=this.reduceBuffer(e,0,a.fileStart-e.fileStart)),t.debug(`MultiBufferStream`,`Appending new buffer (fileStart: `+e.fileStart+` - Length: `+e.byteLength+`)`),this.buffers.splice(r,0,e),r===0&&(this.buffer=e);n=!1;break}else if(e.fileStart<a.fileStart+a.byteLength){var o=a.fileStart+a.byteLength-e.fileStart,s=e.byteLength-o;if(s>0)e=this.reduceBuffer(e,o,s);else{n=!1;break}}}n&&(t.debug(`MultiBufferStream`,`Appending new buffer (fileStart: `+e.fileStart+` - Length: `+e.byteLength+`)`),this.buffers.push(e),r===0&&(this.buffer=e))},o.prototype.logBufferLevel=function(e){var n,r,a,o,s=[],c,l=``;for(a=0,o=0,n=0;n<this.buffers.length;n++)r=this.buffers[n],n===0?(c={},s.push(c),c.start=r.fileStart,c.end=r.fileStart+r.byteLength,l+=`[`+c.start+`-`):c.end===r.fileStart?c.end=r.fileStart+r.byteLength:(c={},c.start=r.fileStart,l+=s[s.length-1].end-1+`], [`+c.start+`-`,c.end=r.fileStart+r.byteLength,s.push(c)),a+=r.usedBytes,o+=r.byteLength;s.length>0&&(l+=c.end-1+`]`);var u=e?t.info:t.debug;this.buffers.length===0?u(`MultiBufferStream`,`No more buffer in memory`):u(`MultiBufferStream`,``+this.buffers.length+` stored buffer(s) (`+a+`/`+o+` bytes), continuous ranges: `+l)},o.prototype.cleanBuffers=function(){var e,n;for(e=0;e<this.buffers.length;e++)n=this.buffers[e],n.usedBytes===n.byteLength&&(t.debug(`MultiBufferStream`,`Removing buffer #`+e),this.buffers.splice(e,1),e--)},o.prototype.mergeNextBuffer=function(){var e;if(this.bufferIndex+1<this.buffers.length)if(e=this.buffers[this.bufferIndex+1],e.fileStart===this.buffer.fileStart+this.buffer.byteLength){var n=this.buffer.byteLength,r=this.buffer.usedBytes,a=this.buffer.fileStart;return this.buffers[this.bufferIndex]=ArrayBuffer.concat(this.buffer,e),this.buffer=this.buffers[this.bufferIndex],this.buffers.splice(this.bufferIndex+1,1),this.buffer.usedBytes=r,this.buffer.fileStart=a,t.debug(`ISOFile`,`Concatenating buffer for box parsing (length: `+n+`->`+this.buffer.byteLength+`)`),!0}else return!1;else return!1},o.prototype.findPosition=function(e,n,r){var a,o=null,s=-1;for(a=e===!0?0:this.bufferIndex;a<this.buffers.length&&(o=this.buffers[a],o.fileStart<=n);)s=a,r&&(o.fileStart+o.byteLength<=n?o.usedBytes=o.byteLength:o.usedBytes=n-o.fileStart,this.logBufferLevel()),a++;return s===-1?-1:(o=this.buffers[s],o.fileStart+o.byteLength>=n?(t.debug(`MultiBufferStream`,`Found position in existing buffer #`+s),s):-1)},o.prototype.findEndContiguousBuf=function(e){var t,n,r,a=e===void 0?this.bufferIndex:e;if(n=this.buffers[a],this.buffers.length>a+1)for(t=a+1;t<this.buffers.length&&(r=this.buffers[t],r.fileStart===n.fileStart+n.byteLength);t++)n=r;return n.fileStart+n.byteLength},o.prototype.getEndFilePositionAfter=function(e){var t=this.findPosition(!0,e,!1);return t===-1?e:this.findEndContiguousBuf(t)},o.prototype.addUsedBytes=function(e){this.buffer.usedBytes+=e,this.logBufferLevel()},o.prototype.setAllUsedBytes=function(){this.buffer.usedBytes=this.buffer.byteLength,this.logBufferLevel()},o.prototype.seek=function(e,n,r){var a=this.findPosition(n,e,r);return a===-1?(t.debug(`MultiBufferStream`,`Position `+e+` not found in buffered data`),!1):(this.buffer=this.buffers[a],this.bufferIndex=a,this.position=e-this.buffer.fileStart,t.debug(`MultiBufferStream`,`Repositioning parser at buffer position: `+this.position),!0)},o.prototype.getPosition=function(){if(this.bufferIndex===-1||this.buffers[this.bufferIndex]===null)throw`Error accessing position in the MultiBufferStream`;return this.buffers[this.bufferIndex].fileStart+this.position},o.prototype.getLength=function(){return this.byteLength},o.prototype.getEndPosition=function(){if(this.bufferIndex===-1||this.buffers[this.bufferIndex]===null)throw`Error accessing position in the MultiBufferStream`;return this.buffers[this.bufferIndex].fileStart+this.byteLength},e!==void 0&&(e.MultiBufferStream=o);var s=function(){var e=3,n=4,r=5,a=6,o=[];o[e]=`ES_Descriptor`,o[n]=`DecoderConfigDescriptor`,o[r]=`DecoderSpecificInfo`,o[a]=`SLConfigDescriptor`,this.getDescriptorName=function(e){return o[e]};var s=this,c={};return this.parseOneDescriptor=function(e){var n=0,r=0,a=e.readUint8(),s,l;for(n++,l=e.readUint8(),n++;l&128;)r=(r<<7)+(l&127),l=e.readUint8(),n++;return r=(r<<7)+(l&127),t.debug(`MPEG4DescriptorParser`,`Found `+(o[a]||`Descriptor `+a)+`, size `+r+` at position `+e.getPosition()),s=o[a]?new c[o[a]](r):new c.Descriptor(r),s.parse(e),s},c.Descriptor=function(e,t){this.tag=e,this.size=t,this.descs=[]},c.Descriptor.prototype.parse=function(e){this.data=e.readUint8Array(this.size)},c.Descriptor.prototype.findDescriptor=function(e){for(var t=0;t<this.descs.length;t++)if(this.descs[t].tag==e)return this.descs[t];return null},c.Descriptor.prototype.parseRemainingDescriptors=function(e){for(var t=e.position;e.position<t+this.size;){var n=s.parseOneDescriptor(e);this.descs.push(n)}},c.ES_Descriptor=function(t){c.Descriptor.call(this,e,t)},c.ES_Descriptor.prototype=new c.Descriptor,c.ES_Descriptor.prototype.parse=function(e){if(this.ES_ID=e.readUint16(),this.flags=e.readUint8(),this.size-=3,this.flags&128?(this.dependsOn_ES_ID=e.readUint16(),this.size-=2):this.dependsOn_ES_ID=0,this.flags&64){var t=e.readUint8();this.URL=e.readString(t),this.size-=t+1}else this.URL=``;this.flags&32?(this.OCR_ES_ID=e.readUint16(),this.size-=2):this.OCR_ES_ID=0,this.parseRemainingDescriptors(e)},c.ES_Descriptor.prototype.getOTI=function(e){var t=this.findDescriptor(n);return t?t.oti:0},c.ES_Descriptor.prototype.getAudioConfig=function(e){var t=this.findDescriptor(n);if(!t)return null;var a=t.findDescriptor(r);if(a&&a.data){var o=(a.data[0]&248)>>3;return o===31&&a.data.length>=2&&(o=32+((a.data[0]&7)<<3)+((a.data[1]&224)>>5)),o}else return null},c.DecoderConfigDescriptor=function(e){c.Descriptor.call(this,n,e)},c.DecoderConfigDescriptor.prototype=new c.Descriptor,c.DecoderConfigDescriptor.prototype.parse=function(e){this.oti=e.readUint8(),this.streamType=e.readUint8(),this.upStream=(this.streamType>>1&1)!=0,this.streamType>>>=2,this.bufferSize=e.readUint24(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32(),this.size-=13,this.parseRemainingDescriptors(e)},c.DecoderSpecificInfo=function(e){c.Descriptor.call(this,r,e)},c.DecoderSpecificInfo.prototype=new c.Descriptor,c.SLConfigDescriptor=function(e){c.Descriptor.call(this,a,e)},c.SLConfigDescriptor.prototype=new c.Descriptor,this};e!==void 0&&(e.MPEG4DescriptorParser=s);var c={ERR_INVALID_DATA:-1,ERR_NOT_ENOUGH_DATA:0,OK:1,BASIC_BOXES:[{type:`mdat`,name:`MediaDataBox`},{type:`idat`,name:`ItemDataBox`},{type:`free`,name:`FreeSpaceBox`},{type:`skip`,name:`FreeSpaceBox`},{type:`meco`,name:`AdditionalMetadataContainerBox`},{type:`strk`,name:`SubTrackBox`}],FULL_BOXES:[{type:`hmhd`,name:`HintMediaHeaderBox`},{type:`nmhd`,name:`NullMediaHeaderBox`},{type:`iods`,name:`ObjectDescriptorBox`},{type:`xml `,name:`XMLBox`},{type:`bxml`,name:`BinaryXMLBox`},{type:`ipro`,name:`ItemProtectionBox`},{type:`mere`,name:`MetaboxRelationBox`}],CONTAINER_BOXES:[[{type:`moov`,name:`CompressedMovieBox`},[`trak`,`pssh`]],[{type:`trak`,name:`TrackBox`}],[{type:`edts`,name:`EditBox`}],[{type:`mdia`,name:`MediaBox`}],[{type:`minf`,name:`MediaInformationBox`}],[{type:`dinf`,name:`DataInformationBox`}],[{type:`stbl`,name:`SampleTableBox`},[`sgpd`,`sbgp`]],[{type:`mvex`,name:`MovieExtendsBox`},[`trex`]],[{type:`moof`,name:`CompressedMovieFragmentBox`},[`traf`]],[{type:`traf`,name:`TrackFragmentBox`},[`trun`,`sgpd`,`sbgp`]],[{type:`vttc`,name:`VTTCueBox`}],[{type:`tref`,name:`TrackReferenceBox`}],[{type:`iref`,name:`ItemReferenceBox`}],[{type:`mfra`,name:`MovieFragmentRandomAccessBox`},[`tfra`]],[{type:`meco`,name:`AdditionalMetadataContainerBox`}],[{type:`hnti`,name:`trackhintinformation`}],[{type:`hinf`,name:`hintstatisticsbox`}],[{type:`strk`,name:`SubTrackBox`}],[{type:`strd`,name:`SubTrackDefinitionBox`}],[{type:`sinf`,name:`ProtectionSchemeInfoBox`}],[{type:`rinf`,name:`RestrictedSchemeInfoBox`}],[{type:`schi`,name:`SchemeInformationBox`}],[{type:`trgr`,name:`TrackGroupBox`}],[{type:`udta`,name:`UserDataBox`},[`kind`]],[{type:`iprp`,name:`ItemPropertiesBox`},[`ipma`]],[{type:`ipco`,name:`ItemPropertyContainerBox`}],[{type:`grpl`,name:`GroupsListBox`}],[{type:`j2kH`,name:`J2KHeaderInfoBox`}],[{type:`etyp`,name:`ExtendedTypeBox`},[`tyco`]]],boxCodes:[],fullBoxCodes:[],containerBoxCodes:[],sampleEntryCodes:{},sampleGroupEntryCodes:[],trackGroupTypes:[],UUIDBoxes:{},UUIDs:[],initialize:function(){c.FullBox.prototype=new c.Box,c.ContainerBox.prototype=new c.Box,c.SampleEntry.prototype=new c.Box,c.TrackGroupTypeBox.prototype=new c.FullBox,c.BASIC_BOXES.forEach(function(e){c.createBoxCtor(e.type,e.name)}),c.FULL_BOXES.forEach(function(e){c.createFullBoxCtor(e.type,e.name)}),c.CONTAINER_BOXES.forEach(function(e){c.createContainerBoxCtor(e[0].type,e[0].name,null,e[1])})},Box:function(e,t,n,r){this.type=e,this.box_name=n,this.size=t,this.uuid=r},FullBox:function(e,t,n,r){c.Box.call(this,e,t,n,r),this.flags=0,this.version=0},ContainerBox:function(e,t,n,r){c.Box.call(this,e,t,n,r),this.boxes=[]},SampleEntry:function(e,t,n,r){c.ContainerBox.call(this,e,t),this.hdr_size=n,this.start=r},SampleGroupEntry:function(e){this.grouping_type=e},TrackGroupTypeBox:function(e,t){c.FullBox.call(this,e,t)},createBoxCtor:function(e,t,n){c.boxCodes.push(e),c[e+`Box`]=function(n){c.Box.call(this,e,n,t)},c[e+`Box`].prototype=new c.Box,n&&(c[e+`Box`].prototype.parse=n)},createFullBoxCtor:function(e,t,n){c[e+`Box`]=function(n){c.FullBox.call(this,e,n,t)},c[e+`Box`].prototype=new c.FullBox,c[e+`Box`].prototype.parse=function(e){this.parseFullHeader(e),n&&n.call(this,e)}},addSubBoxArrays:function(e){if(e){this.subBoxNames=e;for(var t=e.length,n=0;n<t;n++)this[e[n]+`s`]=[]}},createContainerBoxCtor:function(e,t,n,r){c[e+`Box`]=function(n){c.ContainerBox.call(this,e,n,t),c.addSubBoxArrays.call(this,r)},c[e+`Box`].prototype=new c.ContainerBox,n&&(c[e+`Box`].prototype.parse=n)},createMediaSampleEntryCtor:function(e,t,n){c.sampleEntryCodes[e]=[],c[e+`SampleEntry`]=function(e,t){c.SampleEntry.call(this,e,t),c.addSubBoxArrays.call(this,n)},c[e+`SampleEntry`].prototype=new c.SampleEntry,t&&(c[e+`SampleEntry`].prototype.parse=t)},createSampleEntryCtor:function(e,t,n,r){c.sampleEntryCodes[e].push(t),c[t+`SampleEntry`]=function(n){c[e+`SampleEntry`].call(this,t,n),c.addSubBoxArrays.call(this,r)},c[t+`SampleEntry`].prototype=new c[e+`SampleEntry`],n&&(c[t+`SampleEntry`].prototype.parse=n)},createEncryptedSampleEntryCtor:function(e,t,n){c.createSampleEntryCtor.call(this,e,t,n,[`sinf`])},createSampleGroupCtor:function(e,t){c[e+`SampleGroupEntry`]=function(t){c.SampleGroupEntry.call(this,e,t)},c[e+`SampleGroupEntry`].prototype=new c.SampleGroupEntry,t&&(c[e+`SampleGroupEntry`].prototype.parse=t)},createTrackGroupCtor:function(e,t){c[e+`TrackGroupTypeBox`]=function(t){c.TrackGroupTypeBox.call(this,e,t)},c[e+`TrackGroupTypeBox`].prototype=new c.TrackGroupTypeBox,t&&(c[e+`TrackGroupTypeBox`].prototype.parse=t)},createUUIDBox:function(e,t,n,r,a){c.UUIDs.push(e),c.UUIDBoxes[e]=function(a){n?c.FullBox.call(this,`uuid`,a,t,e):r?c.ContainerBox.call(this,`uuid`,a,t,e):c.Box.call(this,`uuid`,a,t,e)},c.UUIDBoxes[e].prototype=n?new c.FullBox:r?new c.ContainerBox:new c.Box,a&&(n?c.UUIDBoxes[e].prototype.parse=function(e){this.parseFullHeader(e),a&&a.call(this,e)}:c.UUIDBoxes[e].prototype.parse=a)}};c.initialize(),c.TKHD_FLAG_ENABLED=1,c.TKHD_FLAG_IN_MOVIE=2,c.TKHD_FLAG_IN_PREVIEW=4,c.TFHD_FLAG_BASE_DATA_OFFSET=1,c.TFHD_FLAG_SAMPLE_DESC=2,c.TFHD_FLAG_SAMPLE_DUR=8,c.TFHD_FLAG_SAMPLE_SIZE=16,c.TFHD_FLAG_SAMPLE_FLAGS=32,c.TFHD_FLAG_DUR_EMPTY=65536,c.TFHD_FLAG_DEFAULT_BASE_IS_MOOF=131072,c.TRUN_FLAGS_DATA_OFFSET=1,c.TRUN_FLAGS_FIRST_FLAG=4,c.TRUN_FLAGS_DURATION=256,c.TRUN_FLAGS_SIZE=512,c.TRUN_FLAGS_FLAGS=1024,c.TRUN_FLAGS_CTS_OFFSET=2048,c.Box.prototype.add=function(e){return this.addBox(new c[e+`Box`])},c.Box.prototype.addBox=function(e){return this.boxes.push(e),this[e.type+`s`]?this[e.type+`s`].push(e):this[e.type]=e,e},c.Box.prototype.set=function(e,t){return this[e]=t,this},c.Box.prototype.addEntry=function(e,t){var n=t||`entries`;return this[n]||(this[n]=[]),this[n].push(e),this},e!==void 0&&(e.BoxParser=c),c.parseUUID=function(e){return c.parseHex16(e)},c.parseHex16=function(e){for(var t=``,n=0;n<16;n++){var r=e.readUint8().toString(16);t+=r.length===1?`0`+r:r}return t},c.parseOneBox=function(e,n,r){var a,o=e.getPosition(),s=0,l,u;if(e.getEndPosition()-o<8)return t.debug(`BoxParser`,`Not enough data in stream to parse the type and size of the box`),{code:c.ERR_NOT_ENOUGH_DATA};if(r&&r<8)return t.debug(`BoxParser`,`Not enough bytes left in the parent box to parse a new box`),{code:c.ERR_NOT_ENOUGH_DATA};var d=e.readUint32(),f=e.readString(4),p=f;if(t.debug(`BoxParser`,`Found box of type '`+f+`' and size `+d+` at position `+o),s=8,f==`uuid`){if(e.getEndPosition()-e.getPosition()<16||r-s<16)return e.seek(o),t.debug(`BoxParser`,`Not enough bytes left in the parent box to parse a UUID box`),{code:c.ERR_NOT_ENOUGH_DATA};u=c.parseUUID(e),s+=16,p=u}if(d==1){if(e.getEndPosition()-e.getPosition()<8||r&&r-s<8)return e.seek(o),t.warn(`BoxParser`,`Not enough data in stream to parse the extended size of the "`+f+`" box`),{code:c.ERR_NOT_ENOUGH_DATA};d=e.readUint64(),s+=8}else if(d===0){if(r)d=r;else if(f!==`mdat`)return t.error(`BoxParser`,`Unlimited box size not supported for type: '`+f+`'`),a=new c.Box(f,d),{code:c.OK,box:a,size:a.size}}return d!==0&&d<s?(t.error(`BoxParser`,`Box of type `+f+` has an invalid size `+d+` (too small to be a box)`),{code:c.ERR_NOT_ENOUGH_DATA,type:f,size:d,hdr_size:s,start:o}):d!==0&&r&&d>r?(t.error(`BoxParser`,`Box of type '`+f+`' has a size `+d+` greater than its container size `+r),{code:c.ERR_NOT_ENOUGH_DATA,type:f,size:d,hdr_size:s,start:o}):d!==0&&o+d>e.getEndPosition()?(e.seek(o),t.info(`BoxParser`,`Not enough data in stream to parse the entire '`+f+`' box`),{code:c.ERR_NOT_ENOUGH_DATA,type:f,size:d,hdr_size:s,start:o}):n?{code:c.OK,type:f,size:d,hdr_size:s,start:o}:(c[f+`Box`]?a=new c[f+`Box`](d):f===`uuid`?c.UUIDBoxes[u]?a=new c.UUIDBoxes[u](d):(t.warn(`BoxParser`,`Unknown uuid type: '`+u+`'`),a=new c.Box(f,d),a.uuid=u,a.has_unparsed_data=!0):(t.warn(`BoxParser`,`Unknown box type: '`+f+`'`),a=new c.Box(f,d),a.has_unparsed_data=!0),a.hdr_size=s,a.start=o,a.write===c.Box.prototype.write&&a.type!==`mdat`&&(t.info(`BoxParser`,`'`+p+`' box writing not yet implemented, keeping unparsed data in memory for later write`),a.parseDataAndRewind(e)),a.parse(e),l=e.getPosition()-(a.start+a.size),l<0?(t.warn(`BoxParser`,`Parsing of box '`+p+`' did not read the entire indicated box data size (missing `+-l+` bytes), seeking forward`),e.seek(a.start+a.size)):l>0&&(t.error(`BoxParser`,`Parsing of box '`+p+`' read `+l+` more bytes than the indicated box data size, seeking backwards`),a.size!==0&&e.seek(a.start+a.size)),{code:c.OK,box:a,size:a.size})},c.Box.prototype.parse=function(e){this.type==`mdat`?this.size===0?e.seek(e.getEndPosition()):e.seek(this.start+this.size):this.data=e.readUint8Array(this.size-this.hdr_size)},c.Box.prototype.parseDataAndRewind=function(e){this.data=e.readUint8Array(this.size-this.hdr_size),e.position-=this.size-this.hdr_size},c.FullBox.prototype.parseDataAndRewind=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=4,e.position-=this.size-this.hdr_size},c.FullBox.prototype.parseFullHeader=function(e){this.version=e.readUint8(),this.flags=e.readUint24(),this.hdr_size+=4},c.FullBox.prototype.parse=function(e){this.parseFullHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},c.ContainerBox.prototype.parse=function(e){for(var n,r;e.getPosition()<this.start+this.size;)if(n=c.parseOneBox(e,!1,this.size-(e.getPosition()-this.start)),n.code===c.OK)if(r=n.box,this.boxes.push(r),this.subBoxNames&&this.subBoxNames.indexOf(r.type)!=-1)this[this.subBoxNames[this.subBoxNames.indexOf(r.type)]+`s`].push(r);else{var a=r.type===`uuid`?r.uuid:r.type;this[a]?t.warn(`Box of type `+a+` already stored in field of this type`):this[a]=r}else return},c.Box.prototype.parseLanguage=function(e){this.language=e.readUint16();var t=[];t[0]=this.language>>10&31,t[1]=this.language>>5&31,t[2]=this.language&31,this.languageString=String.fromCharCode(t[0]+96,t[1]+96,t[2]+96)},c.SAMPLE_ENTRY_TYPE_VISUAL=`Visual`,c.SAMPLE_ENTRY_TYPE_AUDIO=`Audio`,c.SAMPLE_ENTRY_TYPE_HINT=`Hint`,c.SAMPLE_ENTRY_TYPE_METADATA=`Metadata`,c.SAMPLE_ENTRY_TYPE_SUBTITLE=`Subtitle`,c.SAMPLE_ENTRY_TYPE_SYSTEM=`System`,c.SAMPLE_ENTRY_TYPE_TEXT=`Text`,c.SampleEntry.prototype.parseHeader=function(e){e.readUint8Array(6),this.data_reference_index=e.readUint16(),this.hdr_size+=8},c.SampleEntry.prototype.parse=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size)},c.SampleEntry.prototype.parseDataAndRewind=function(e){this.parseHeader(e),this.data=e.readUint8Array(this.size-this.hdr_size),this.hdr_size-=8,e.position-=this.size-this.hdr_size},c.SampleEntry.prototype.parseFooter=function(e){c.ContainerBox.prototype.parse.call(this,e)},c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_HINT),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_METADATA),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SYSTEM),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_TEXT),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,function(e){var t;this.parseHeader(e),e.readUint16(),e.readUint16(),e.readUint32Array(3),this.width=e.readUint16(),this.height=e.readUint16(),this.horizresolution=e.readUint32(),this.vertresolution=e.readUint32(),e.readUint32(),this.frame_count=e.readUint16(),t=Math.min(31,e.readUint8()),this.compressorname=e.readString(t),t<31&&e.readString(31-t),this.depth=e.readUint16(),e.readUint16(),this.parseFooter(e)}),c.createMediaSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,function(e){this.parseHeader(e),e.readUint32Array(2),this.channel_count=e.readUint16(),this.samplesize=e.readUint16(),e.readUint16(),e.readUint16(),this.samplerate=e.readUint32()/65536,this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`avc1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`avc2`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`avc3`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`avc4`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`av01`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`dav1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`hvc1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`hev1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`hvt1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`lhe1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`dvh1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`dvhe`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vvc1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vvi1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vvs1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vvcN`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vp08`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`vp09`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`avs3`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`j2ki`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`mjp2`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`mjpg`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`uncv`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`mp4a`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`ac-3`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`ac-4`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`ec-3`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`Opus`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`mha1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`mha2`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`mhm1`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`mhm2`),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`fLaC`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_VISUAL,`encv`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_AUDIO,`enca`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE,`encu`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SYSTEM,`encs`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_TEXT,`enct`),c.createEncryptedSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_METADATA,`encm`),c.createBoxCtor(`a1lx`,`AV1LayeredImageIndexingProperty`,function(e){var t=((e.readUint8()&1)+1)*16;this.layer_size=[];for(var n=0;n<3;n++)t==16?this.layer_size[n]=e.readUint16():this.layer_size[n]=e.readUint32()}),c.createBoxCtor(`a1op`,`OperatingPointSelectorProperty`,function(e){this.op_index=e.readUint8()}),c.createFullBoxCtor(`auxC`,`AuxiliaryTypeProperty`,function(e){this.aux_type=e.readCString();var t=this.size-this.hdr_size-(this.aux_type.length+1);this.aux_subtype=e.readUint8Array(t)}),c.createBoxCtor(`av1C`,`AV1CodecConfigurationBox`,function(e){var n=e.readUint8();if((n>>7&1)!=1){t.error(`av1C marker problem`);return}if(this.version=n&127,this.version!==1){t.error(`av1C version `+this.version+` not supported`);return}if(n=e.readUint8(),this.seq_profile=n>>5&7,this.seq_level_idx_0=n&31,n=e.readUint8(),this.seq_tier_0=n>>7&1,this.high_bitdepth=n>>6&1,this.twelve_bit=n>>5&1,this.monochrome=n>>4&1,this.chroma_subsampling_x=n>>3&1,this.chroma_subsampling_y=n>>2&1,this.chroma_sample_position=n&3,n=e.readUint8(),this.reserved_1=n>>5&7,this.reserved_1!==0){t.error(`av1C reserved_1 parsing problem`);return}if(this.initial_presentation_delay_present=n>>4&1,this.initial_presentation_delay_present===1)this.initial_presentation_delay_minus_one=n&15;else if(this.reserved_2=n&15,this.reserved_2!==0){t.error(`av1C reserved_2 parsing problem`);return}var r=this.size-this.hdr_size-4;this.configOBUs=e.readUint8Array(r)});function l(e){var t=`<table class='inner-table'>`;t+=`<thead><tr><th>length</th><th>nalu_data</th></tr></thead>`,t+=`<tbody>`;for(var n=0;n<e.length;n++){var r=e[n];t+=`<tr>`,t+=`<td>`+r.length+`</td>`,t+=`<td>`,t+=r.nalu.reduce(function(e,t){return e+t.toString(16).padStart(2,`0`)},`0x`),t+=`</td></tr>`}return t+=`</tbody></table>`,t}c.createBoxCtor(`avcC`,`AVCConfigurationBox`,function(e){var t,n;for(this.configurationVersion=e.readUint8(),this.AVCProfileIndication=e.readUint8(),this.profile_compatibility=e.readUint8(),this.AVCLevelIndication=e.readUint8(),this.lengthSizeMinusOne=e.readUint8()&3,this.nb_SPS_nalus=e.readUint8()&31,n=this.size-this.hdr_size-6,this.SPS=[],this.SPS.toString=function(){return l(this)},t=0;t<this.nb_SPS_nalus;t++)this.SPS[t]={},this.SPS[t].length=e.readUint16(),this.SPS[t].nalu=e.readUint8Array(this.SPS[t].length),n-=2+this.SPS[t].length;for(this.nb_PPS_nalus=e.readUint8(),n--,this.PPS=[],this.PPS.toString=function(){return l(this)},t=0;t<this.nb_PPS_nalus;t++)this.PPS[t]={},this.PPS[t].length=e.readUint16(),this.PPS[t].nalu=e.readUint8Array(this.PPS[t].length),n-=2+this.PPS[t].length;n>0&&(this.ext=e.readUint8Array(n))}),c.createBoxCtor(`btrt`,`BitRateBox`,function(e){this.bufferSizeDB=e.readUint32(),this.maxBitrate=e.readUint32(),this.avgBitrate=e.readUint32()}),c.createFullBoxCtor(`ccst`,`CodingConstraintsBox`,function(e){var t=e.readUint8();this.all_ref_pics_intra=(t&128)==128,this.intra_pred_used=(t&64)==64,this.max_ref_per_pic=(t&63)>>2,e.readUint24()}),c.createBoxCtor(`cdef`,`ComponentDefinitionBox`,function(e){var t;for(this.channel_count=e.readUint16(),this.channel_indexes=[],this.channel_types=[],this.channel_associations=[],t=0;t<this.channel_count;t++)this.channel_indexes.push(e.readUint16()),this.channel_types.push(e.readUint16()),this.channel_associations.push(e.readUint16())}),c.createBoxCtor(`clap`,`CleanApertureBox`,function(e){this.cleanApertureWidthN=e.readUint32(),this.cleanApertureWidthD=e.readUint32(),this.cleanApertureHeightN=e.readUint32(),this.cleanApertureHeightD=e.readUint32(),this.horizOffN=e.readUint32(),this.horizOffD=e.readUint32(),this.vertOffN=e.readUint32(),this.vertOffD=e.readUint32()}),c.createBoxCtor(`clli`,`ContentLightLevelBox`,function(e){this.max_content_light_level=e.readUint16(),this.max_pic_average_light_level=e.readUint16()}),c.createFullBoxCtor(`cmex`,`CameraExtrinsicMatrixProperty`,function(e){this.flags&1&&(this.pos_x=e.readInt32()),this.flags&2&&(this.pos_y=e.readInt32()),this.flags&4&&(this.pos_z=e.readInt32()),this.flags&8&&(this.version==0?this.flags&16?(this.quat_x=e.readInt32(),this.quat_y=e.readInt32(),this.quat_z=e.readInt32()):(this.quat_x=e.readInt16(),this.quat_y=e.readInt16(),this.quat_z=e.readInt16()):this.version),this.flags&32&&(this.id=e.readUint32())}),c.createFullBoxCtor(`cmin`,`CameraIntrinsicMatrixProperty`,function(e){this.focal_length_x=e.readInt32(),this.principal_point_x=e.readInt32(),this.principal_point_y=e.readInt32(),this.flags&1&&(this.focal_length_y=e.readInt32(),this.skew_factor=e.readInt32())}),c.createBoxCtor(`cmpd`,`ComponentDefinitionBox`,function(e){for(this.component_count=e.readUint32(),this.component_types=[],this.component_type_urls=[],i=0;i<this.component_count;i++){var t=e.readUint16();this.component_types.push(t),t>=32768&&this.component_type_urls.push(e.readCString())}}),c.createFullBoxCtor(`co64`,`ChunkLargeOffsetBox`,function(e){var t=e.readUint32(),n;if(this.chunk_offsets=[],this.version===0)for(n=0;n<t;n++)this.chunk_offsets.push(e.readUint64())}),c.createFullBoxCtor(`CoLL`,`ContentLightLevelBox`,function(e){this.maxCLL=e.readUint16(),this.maxFALL=e.readUint16()}),c.createBoxCtor(`colr`,`ColourInformationBox`,function(e){if(this.colour_type=e.readString(4),this.colour_type===`nclx`){this.colour_primaries=e.readUint16(),this.transfer_characteristics=e.readUint16(),this.matrix_coefficients=e.readUint16();var t=e.readUint8();this.full_range_flag=t>>7}else (this.colour_type===`rICC`||this.colour_type===`prof`)&&(this.ICC_profile=e.readUint8Array(this.size-4))}),c.createFullBoxCtor(`cprt`,`CopyrightBox`,function(e){this.parseLanguage(e),this.notice=e.readCString()}),c.createFullBoxCtor(`cslg`,`CompositionToDecodeBox`,function(e){this.version===0&&(this.compositionToDTSShift=e.readInt32(),this.leastDecodeToDisplayDelta=e.readInt32(),this.greatestDecodeToDisplayDelta=e.readInt32(),this.compositionStartTime=e.readInt32(),this.compositionEndTime=e.readInt32())}),c.createFullBoxCtor(`ctts`,`CompositionOffsetBox`,function(e){var n=e.readUint32(),r;if(this.sample_counts=[],this.sample_offsets=[],this.version===0)for(r=0;r<n;r++){this.sample_counts.push(e.readUint32());var a=e.readInt32();a<0&&t.warn(`BoxParser`,`ctts box uses negative values without using version 1`),this.sample_offsets.push(a)}else if(this.version==1)for(r=0;r<n;r++)this.sample_counts.push(e.readUint32()),this.sample_offsets.push(e.readInt32())}),c.createBoxCtor(`dac3`,`AC3SpecificBox`,function(e){var t=e.readUint8(),n=e.readUint8(),r=e.readUint8();this.fscod=t>>6,this.bsid=t>>1&31,this.bsmod=(t&1)<<2|n>>6&3,this.acmod=n>>3&7,this.lfeon=n>>2&1,this.bit_rate_code=n&3|r>>5&7}),c.createBoxCtor(`dec3`,`EC3SpecificBox`,function(e){var t=e.readUint16();this.data_rate=t>>3,this.num_ind_sub=t&7,this.ind_subs=[];for(var n=0;n<this.num_ind_sub+1;n++){var r={};this.ind_subs.push(r);var a=e.readUint8(),o=e.readUint8(),s=e.readUint8();r.fscod=a>>6,r.bsid=a>>1&31,r.bsmod=(a&1)<<4|o>>4&15,r.acmod=o>>1&7,r.lfeon=o&1,r.num_dep_sub=s>>1&15,r.num_dep_sub>0&&(r.chan_loc=(s&1)<<8|e.readUint8())}}),c.createFullBoxCtor(`dfLa`,`FLACSpecificBox`,function(e){var t=127,n=128,r=[],a=[`STREAMINFO`,`PADDING`,`APPLICATION`,`SEEKTABLE`,`VORBIS_COMMENT`,`CUESHEET`,`PICTURE`,`RESERVED`];do{var o=e.readUint8(),s=Math.min(o&t,a.length-1);if(s?e.readUint8Array(e.readUint24()):(e.readUint8Array(13),this.samplerate=e.readUint32()>>12,e.readUint8Array(20)),r.push(a[s]),o&n)break}while(!0);this.numMetadataBlocks=r.length+` (`+r.join(`, `)+`)`}),c.createBoxCtor(`dimm`,`hintimmediateBytesSent`,function(e){this.bytessent=e.readUint64()}),c.createBoxCtor(`dmax`,`hintlongestpacket`,function(e){this.time=e.readUint32()}),c.createBoxCtor(`dmed`,`hintmediaBytesSent`,function(e){this.bytessent=e.readUint64()}),c.createBoxCtor(`dOps`,`OpusSpecificBox`,function(e){if(this.Version=e.readUint8(),this.OutputChannelCount=e.readUint8(),this.PreSkip=e.readUint16(),this.InputSampleRate=e.readUint32(),this.OutputGain=e.readInt16(),this.ChannelMappingFamily=e.readUint8(),this.ChannelMappingFamily!==0){this.StreamCount=e.readUint8(),this.CoupledCount=e.readUint8(),this.ChannelMapping=[];for(var t=0;t<this.OutputChannelCount;t++)this.ChannelMapping[t]=e.readUint8()}}),c.createFullBoxCtor(`dref`,`DataReferenceBox`,function(e){var t,n;this.entries=[];for(var r=e.readUint32(),a=0;a<r;a++)if(t=c.parseOneBox(e,!1,this.size-(e.getPosition()-this.start)),t.code===c.OK)n=t.box,this.entries.push(n);else return}),c.createBoxCtor(`drep`,`hintrepeatedBytesSent`,function(e){this.bytessent=e.readUint64()}),c.createFullBoxCtor(`elng`,`ExtendedLanguageBox`,function(e){this.extended_language=e.readString(this.size-this.hdr_size)}),c.createFullBoxCtor(`elst`,`EditListBox`,function(e){this.entries=[];for(var t=e.readUint32(),n=0;n<t;n++){var r={};this.entries.push(r),this.version===1?(r.segment_duration=e.readUint64(),r.media_time=e.readInt64()):(r.segment_duration=e.readUint32(),r.media_time=e.readInt32()),r.media_rate_integer=e.readInt16(),r.media_rate_fraction=e.readInt16()}}),c.createFullBoxCtor(`emsg`,`EventMessageBox`,function(e){this.version==1?(this.timescale=e.readUint32(),this.presentation_time=e.readUint64(),this.event_duration=e.readUint32(),this.id=e.readUint32(),this.scheme_id_uri=e.readCString(),this.value=e.readCString()):(this.scheme_id_uri=e.readCString(),this.value=e.readCString(),this.timescale=e.readUint32(),this.presentation_time_delta=e.readUint32(),this.event_duration=e.readUint32(),this.id=e.readUint32());var t=this.size-this.hdr_size-(16+(this.scheme_id_uri.length+1)+(this.value.length+1));this.version==1&&(t-=4),this.message_data=e.readUint8Array(t)}),c.createEntityToGroupCtor=function(e,t){c[e+`Box`]=function(t){c.FullBox.call(this,e,t)},c[e+`Box`].prototype=new c.FullBox,c[e+`Box`].prototype.parse=function(e){if(this.parseFullHeader(e),t)t.call(this,e);else for(this.group_id=e.readUint32(),this.num_entities_in_group=e.readUint32(),this.entity_ids=[],i=0;i<this.num_entities_in_group;i++){var n=e.readUint32();this.entity_ids.push(n)}}},c.createEntityToGroupCtor(`aebr`),c.createEntityToGroupCtor(`afbr`),c.createEntityToGroupCtor(`albc`),c.createEntityToGroupCtor(`altr`),c.createEntityToGroupCtor(`brst`),c.createEntityToGroupCtor(`dobr`),c.createEntityToGroupCtor(`eqiv`),c.createEntityToGroupCtor(`favc`),c.createEntityToGroupCtor(`fobr`),c.createEntityToGroupCtor(`iaug`),c.createEntityToGroupCtor(`pano`),c.createEntityToGroupCtor(`slid`),c.createEntityToGroupCtor(`ster`),c.createEntityToGroupCtor(`tsyn`),c.createEntityToGroupCtor(`wbbr`),c.createEntityToGroupCtor(`prgr`),c.createEntityToGroupCtor(`pymd`,function(e){this.group_id=e.readUint32(),this.num_entities_in_group=e.readUint32(),this.entity_ids=[];for(var t=0;t<this.num_entities_in_group;t++){var n=e.readUint32();this.entity_ids.push(n)}for(this.tile_size_x=e.readUint16(),this.tile_size_y=e.readUint16(),this.layer_binning=[],this.tiles_in_layer_column_minus1=[],this.tiles_in_layer_row_minus1=[],t=0;t<this.num_entities_in_group;t++)this.layer_binning[t]=e.readUint16(),this.tiles_in_layer_row_minus1[t]=e.readUint16(),this.tiles_in_layer_column_minus1[t]=e.readUint16()}),c.createFullBoxCtor(`esds`,`ElementaryStreamDescriptorBox`,function(e){var t=e.readUint8Array(this.size-this.hdr_size);if(s!==void 0){var n=new s;this.esd=n.parseOneDescriptor(new r(t.buffer,0,r.BIG_ENDIAN))}}),c.createBoxCtor(`fiel`,`FieldHandlingBox`,function(e){this.fieldCount=e.readUint8(),this.fieldOrdering=e.readUint8()}),c.createBoxCtor(`frma`,`OriginalFormatBox`,function(e){this.data_format=e.readString(4)}),c.createBoxCtor(`ftyp`,`FileTypeBox`,function(e){var t=this.size-this.hdr_size;this.major_brand=e.readString(4),this.minor_version=e.readUint32(),t-=8,this.compatible_brands=[];for(var n=0;t>=4;)this.compatible_brands[n]=e.readString(4),t-=4,n++}),c.createFullBoxCtor(`hdlr`,`HandlerBox`,function(e){this.version===0&&(e.readUint32(),this.handler=e.readString(4),e.readUint32Array(3),this.name=e.readString(this.size-this.hdr_size-20),this.name[this.name.length-1]===`\0`&&(this.name=this.name.slice(0,-1)))}),c.createBoxCtor(`hvcC`,`HEVCConfigurationBox`,function(e){var t,n,r,a;this.configurationVersion=e.readUint8(),a=e.readUint8(),this.general_profile_space=a>>6,this.general_tier_flag=(a&32)>>5,this.general_profile_idc=a&31,this.general_profile_compatibility=e.readUint32(),this.general_constraint_indicator=e.readUint8Array(6),this.general_level_idc=e.readUint8(),this.min_spatial_segmentation_idc=e.readUint16()&4095,this.parallelismType=e.readUint8()&3,this.chroma_format_idc=e.readUint8()&3,this.bit_depth_luma_minus8=e.readUint8()&7,this.bit_depth_chroma_minus8=e.readUint8()&7,this.avgFrameRate=e.readUint16(),a=e.readUint8(),this.constantFrameRate=a>>6,this.numTemporalLayers=(a&13)>>3,this.temporalIdNested=(a&4)>>2,this.lengthSizeMinusOne=a&3,this.nalu_arrays=[],this.nalu_arrays.toString=function(){var e=`<table class='inner-table'>`;e+=`<thead><tr><th>completeness</th><th>nalu_type</th><th>nalu_data</th></tr></thead>`,e+=`<tbody>`;for(var t=0;t<this.length;t++){var n=this[t];e+=`<tr>`,e+=`<td rowspan='`+n.length+`'>`+n.completeness+`</td>`,e+=`<td rowspan='`+n.length+`'>`+n.nalu_type+`</td>`;for(var r=0;r<n.length;r++){var a=n[r];r!==0&&(e+=`<tr>`),e+=`<td>`,e+=a.data.reduce(function(e,t){return e+t.toString(16).padStart(2,`0`)},`0x`),e+=`</td></tr>`}}return e+=`</tbody></table>`,e};var o=e.readUint8();for(t=0;t<o;t++){var s=[];this.nalu_arrays.push(s),a=e.readUint8(),s.completeness=(a&128)>>7,s.nalu_type=a&63;var c=e.readUint16();for(n=0;n<c;n++){var l={};s.push(l),r=e.readUint16(),l.data=e.readUint8Array(r)}}}),c.createFullBoxCtor(`iinf`,`ItemInfoBox`,function(e){var n;this.version===0?this.entry_count=e.readUint16():this.entry_count=e.readUint32(),this.item_infos=[];for(var r=0;r<this.entry_count;r++)if(n=c.parseOneBox(e,!1,this.size-(e.getPosition()-this.start)),n.code===c.OK)n.box.type!==`infe`&&t.error(`BoxParser`,`Expected 'infe' box, got `+n.box.type),this.item_infos[r]=n.box;else return}),c.createFullBoxCtor(`iloc`,`ItemLocationBox`,function(e){var t=e.readUint8();this.offset_size=t>>4&15,this.length_size=t&15,t=e.readUint8(),this.base_offset_size=t>>4&15,this.version===1||this.version===2?this.index_size=t&15:this.index_size=0,this.items=[];var n=0;if(this.version<2)n=e.readUint16();else if(this.version===2)n=e.readUint32();else throw`version of iloc box not supported`;for(var r=0;r<n;r++){var a={};if(this.items.push(a),this.version<2)a.item_ID=e.readUint16();else if(this.version===2)a.item_ID=e.readUint32();else throw`version of iloc box not supported`;switch(this.version===1||this.version===2?a.construction_method=e.readUint16()&15:a.construction_method=0,a.data_reference_index=e.readUint16(),this.base_offset_size){case 0:a.base_offset=0;break;case 4:a.base_offset=e.readUint32();break;case 8:a.base_offset=e.readUint64();break;default:throw`Error reading base offset size`}var o=e.readUint16();a.extents=[];for(var s=0;s<o;s++){var c={};if(a.extents.push(c),this.version===1||this.version===2)switch(this.index_size){case 0:c.extent_index=0;break;case 4:c.extent_index=e.readUint32();break;case 8:c.extent_index=e.readUint64();break;default:throw`Error reading extent index`}switch(this.offset_size){case 0:c.extent_offset=0;break;case 4:c.extent_offset=e.readUint32();break;case 8:c.extent_offset=e.readUint64();break;default:throw`Error reading extent index`}switch(this.length_size){case 0:c.extent_length=0;break;case 4:c.extent_length=e.readUint32();break;case 8:c.extent_length=e.readUint64();break;default:throw`Error reading extent index`}}}}),c.createBoxCtor(`imir`,`ImageMirror`,function(e){var t=e.readUint8();this.reserved=t>>7,this.axis=t&1}),c.createFullBoxCtor(`infe`,`ItemInfoEntry`,function(e){if((this.version===0||this.version===1)&&(this.item_ID=e.readUint16(),this.item_protection_index=e.readUint16(),this.item_name=e.readCString(),this.content_type=e.readCString(),this.content_encoding=e.readCString()),this.version===1){this.extension_type=e.readString(4),t.warn(`BoxParser`,`Cannot parse extension type`),e.seek(this.start+this.size);return}this.version>=2&&(this.version===2?this.item_ID=e.readUint16():this.version===3&&(this.item_ID=e.readUint32()),this.item_protection_index=e.readUint16(),this.item_type=e.readString(4),this.item_name=e.readCString(),this.item_type===`mime`?(this.content_type=e.readCString(),this.content_encoding=e.readCString()):this.item_type===`uri `&&(this.item_uri_type=e.readCString()))}),c.createFullBoxCtor(`ipma`,`ItemPropertyAssociationBox`,function(e){var t,n;for(entry_count=e.readUint32(),this.associations=[],t=0;t<entry_count;t++){var r={};this.associations.push(r),this.version<1?r.id=e.readUint16():r.id=e.readUint32();var a=e.readUint8();for(r.props=[],n=0;n<a;n++){var o=e.readUint8(),s={};r.props.push(s),s.essential=(o&128)>>7==1,this.flags&1?s.property_index=(o&127)<<8|e.readUint8():s.property_index=o&127}}}),c.createFullBoxCtor(`iref`,`ItemReferenceBox`,function(e){var n,r;for(this.references=[];e.getPosition()<this.start+this.size;)if(n=c.parseOneBox(e,!0,this.size-(e.getPosition()-this.start)),n.code===c.OK)r=this.version===0?new c.SingleItemTypeReferenceBox(n.type,n.size,n.hdr_size,n.start):new c.SingleItemTypeReferenceBoxLarge(n.type,n.size,n.hdr_size,n.start),r.write===c.Box.prototype.write&&r.type!==`mdat`&&(t.warn(`BoxParser`,r.type+` box writing not yet implemented, keeping unparsed data in memory for later write`),r.parseDataAndRewind(e)),r.parse(e),this.references.push(r);else return}),c.createBoxCtor(`irot`,`ImageRotation`,function(e){this.angle=e.readUint8()&3}),c.createFullBoxCtor(`ispe`,`ImageSpatialExtentsProperty`,function(e){this.image_width=e.readUint32(),this.image_height=e.readUint32()}),c.createFullBoxCtor(`kind`,`KindBox`,function(e){this.schemeURI=e.readCString(),this.value=e.readCString()}),c.createFullBoxCtor(`leva`,`LevelAssignmentBox`,function(e){var n=e.readUint8();this.levels=[];for(var r=0;r<n;r++){var a={};this.levels[r]=a,a.track_ID=e.readUint32();var o=e.readUint8();switch(a.padding_flag=o>>7,a.assignment_type=o&127,a.assignment_type){case 0:a.grouping_type=e.readString(4);break;case 1:a.grouping_type=e.readString(4),a.grouping_type_parameter=e.readUint32();break;case 2:break;case 3:break;case 4:a.sub_track_id=e.readUint32();break;default:t.warn(`BoxParser`,`Unknown leva assignement type`)}}}),c.createBoxCtor(`lhvC`,`LHEVCConfigurationBox`,function(e){var t,n,r;this.configurationVersion=e.readUint8(),this.min_spatial_segmentation_idc=e.readUint16()&4095,this.parallelismType=e.readUint8()&3,r=e.readUint8(),this.numTemporalLayers=(r&13)>>3,this.temporalIdNested=(r&4)>>2,this.lengthSizeMinusOne=r&3,this.nalu_arrays=[],this.nalu_arrays.toString=function(){var e=`<table class='inner-table'>`;e+=`<thead><tr><th>completeness</th><th>nalu_type</th><th>nalu_data</th></tr></thead>`,e+=`<tbody>`;for(var t=0;t<this.length;t++){var n=this[t];e+=`<tr>`,e+=`<td rowspan='`+n.length+`'>`+n.completeness+`</td>`,e+=`<td rowspan='`+n.length+`'>`+n.nalu_type+`</td>`;for(var r=0;r<n.length;r++){var a=n[r];r!==0&&(e+=`<tr>`),e+=`<td>`,e+=a.data.reduce(function(e,t){return e+t.toString(16).padStart(2,`0`)},`0x`),e+=`</td></tr>`}}return e+=`</tbody></table>`,e};var a=e.readUint8();for(t=0;t<a;t++){var o=[];this.nalu_arrays.push(o),r=e.readUint8(),o.completeness=(r&128)>>7,o.nalu_type=r&63;var s=e.readUint16();for(n=0;n<s;n++){var c={};o.push(c);var l=e.readUint16();c.data=e.readUint8Array(l)}}}),c.createBoxCtor(`lsel`,`LayerSelectorProperty`,function(e){this.layer_id=e.readUint16()}),c.createBoxCtor(`maxr`,`hintmaxrate`,function(e){this.period=e.readUint32(),this.bytes=e.readUint32()});function u(e,t){this.x=e,this.y=t}u.prototype.toString=function(){return`(`+this.x+`,`+this.y+`)`},c.createBoxCtor(`mdcv`,`MasteringDisplayColourVolumeBox`,function(e){this.display_primaries=[],this.display_primaries[0]=new u(e.readUint16(),e.readUint16()),this.display_primaries[1]=new u(e.readUint16(),e.readUint16()),this.display_primaries[2]=new u(e.readUint16(),e.readUint16()),this.white_point=new u(e.readUint16(),e.readUint16()),this.max_display_mastering_luminance=e.readUint32(),this.min_display_mastering_luminance=e.readUint32()}),c.createFullBoxCtor(`mdhd`,`MediaHeaderBox`,function(e){this.version==1?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.parseLanguage(e),e.readUint16()}),c.createFullBoxCtor(`mehd`,`MovieExtendsHeaderBox`,function(e){this.flags&1&&(t.warn(`BoxParser`,`mehd box incorrectly uses flags set to 1, converting version to 1`),this.version=1),this.version==1?this.fragment_duration=e.readUint64():this.fragment_duration=e.readUint32()}),c.createFullBoxCtor(`meta`,`MetaBox`,function(e){this.boxes=[],c.ContainerBox.prototype.parse.call(this,e)}),c.createFullBoxCtor(`mfhd`,`MovieFragmentHeaderBox`,function(e){this.sequence_number=e.readUint32()}),c.createFullBoxCtor(`mfro`,`MovieFragmentRandomAccessOffsetBox`,function(e){this._size=e.readUint32()}),c.createFullBoxCtor(`mskC`,`MaskConfigurationProperty`,function(e){this.bits_per_pixel=e.readUint8()}),c.createFullBoxCtor(`mvhd`,`MovieHeaderBox`,function(e){this.version==1?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.timescale=e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.timescale=e.readUint32(),this.duration=e.readUint32()),this.rate=e.readUint32(),this.volume=e.readUint16()>>8,e.readUint16(),e.readUint32Array(2),this.matrix=e.readUint32Array(9),e.readUint32Array(6),this.next_track_id=e.readUint32()}),c.createBoxCtor(`npck`,`hintPacketsSent`,function(e){this.packetssent=e.readUint32()}),c.createBoxCtor(`nump`,`hintPacketsSent`,function(e){this.packetssent=e.readUint64()}),c.createFullBoxCtor(`padb`,`PaddingBitsBox`,function(e){var t=e.readUint32();this.padbits=[];for(var n=0;n<Math.floor((t+1)/2);n++)this.padbits=e.readUint8()}),c.createBoxCtor(`pasp`,`PixelAspectRatioBox`,function(e){this.hSpacing=e.readUint32(),this.vSpacing=e.readUint32()}),c.createBoxCtor(`payl`,`CuePayloadBox`,function(e){this.text=e.readString(this.size-this.hdr_size)}),c.createBoxCtor(`payt`,`hintpayloadID`,function(e){this.payloadID=e.readUint32();var t=e.readUint8();this.rtpmap_string=e.readString(t)}),c.createFullBoxCtor(`pdin`,`ProgressiveDownloadInfoBox`,function(e){var t=(this.size-this.hdr_size)/8;this.rate=[],this.initial_delay=[];for(var n=0;n<t;n++)this.rate[n]=e.readUint32(),this.initial_delay[n]=e.readUint32()}),c.createFullBoxCtor(`pitm`,`PrimaryItemBox`,function(e){this.version===0?this.item_id=e.readUint16():this.item_id=e.readUint32()}),c.createFullBoxCtor(`pixi`,`PixelInformationProperty`,function(e){var t;for(this.num_channels=e.readUint8(),this.bits_per_channels=[],t=0;t<this.num_channels;t++)this.bits_per_channels[t]=e.readUint8()}),c.createBoxCtor(`pmax`,`hintlargestpacket`,function(e){this.bytes=e.readUint32()}),c.createFullBoxCtor(`prdi`,`ProgressiveDerivedImageItemInformationProperty`,function(e){if(this.step_count=e.readUint16(),this.item_count=[],this.flags&2)for(var t=0;t<this.step_count;t++)this.item_count[t]=e.readUint16()}),c.createFullBoxCtor(`prft`,`ProducerReferenceTimeBox`,function(e){this.ref_track_id=e.readUint32(),this.ntp_timestamp=e.readUint64(),this.version===0?this.media_time=e.readUint32():this.media_time=e.readUint64()}),c.createFullBoxCtor(`pssh`,`ProtectionSystemSpecificHeaderBox`,function(e){if(this.system_id=c.parseHex16(e),this.version>0){var t=e.readUint32();this.kid=[];for(var n=0;n<t;n++)this.kid[n]=c.parseHex16(e)}var r=e.readUint32();r>0&&(this.data=e.readUint8Array(r))}),c.createFullBoxCtor(`clef`,`TrackCleanApertureDimensionsBox`,function(e){this.width=e.readUint32(),this.height=e.readUint32()}),c.createFullBoxCtor(`enof`,`TrackEncodedPixelsDimensionsBox`,function(e){this.width=e.readUint32(),this.height=e.readUint32()}),c.createFullBoxCtor(`prof`,`TrackProductionApertureDimensionsBox`,function(e){this.width=e.readUint32(),this.height=e.readUint32()}),c.createContainerBoxCtor(`tapt`,`TrackApertureModeDimensionsBox`,null,[`clef`,`prof`,`enof`]),c.createBoxCtor(`rtp `,`rtpmoviehintinformation`,function(e){this.descriptionformat=e.readString(4),this.sdptext=e.readString(this.size-this.hdr_size-4)}),c.createFullBoxCtor(`saio`,`SampleAuxiliaryInformationOffsetsBox`,function(e){this.flags&1&&(this.aux_info_type=e.readString(4),this.aux_info_type_parameter=e.readUint32());var t=e.readUint32();this.offset=[];for(var n=0;n<t;n++)this.version===0?this.offset[n]=e.readUint32():this.offset[n]=e.readUint64()}),c.createFullBoxCtor(`saiz`,`SampleAuxiliaryInformationSizesBox`,function(e){if(this.flags&1&&(this.aux_info_type=e.readString(4),this.aux_info_type_parameter=e.readUint32()),this.default_sample_info_size=e.readUint8(),this.sample_count=e.readUint32(),this.sample_info_size=[],this.default_sample_info_size===0)for(var t=0;t<this.sample_count;t++)this.sample_info_size[t]=e.readUint8()}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_METADATA,`mett`,function(e){this.parseHeader(e),this.content_encoding=e.readCString(),this.mime_format=e.readCString(),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_METADATA,`metx`,function(e){this.parseHeader(e),this.content_encoding=e.readCString(),this.namespace=e.readCString(),this.schema_location=e.readCString(),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE,`sbtt`,function(e){this.parseHeader(e),this.content_encoding=e.readCString(),this.mime_format=e.readCString(),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE,`stpp`,function(e){this.parseHeader(e),this.namespace=e.readCString(),this.schema_location=e.readCString(),this.auxiliary_mime_types=e.readCString(),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE,`stxt`,function(e){this.parseHeader(e),this.content_encoding=e.readCString(),this.mime_format=e.readCString(),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_SUBTITLE,`tx3g`,function(e){this.parseHeader(e),this.displayFlags=e.readUint32(),this.horizontal_justification=e.readInt8(),this.vertical_justification=e.readInt8(),this.bg_color_rgba=e.readUint8Array(4),this.box_record=e.readInt16Array(4),this.style_record=e.readUint8Array(12),this.parseFooter(e)}),c.createSampleEntryCtor(c.SAMPLE_ENTRY_TYPE_METADATA,`wvtt`,function(e){this.parseHeader(e),this.parseFooter(e)}),c.createSampleGroupCtor(`alst`,function(e){var t,n=e.readUint16();for(this.first_output_sample=e.readUint16(),this.sample_offset=[],t=0;t<n;t++)this.sample_offset[t]=e.readUint32();var r=this.description_length-4-4*n;for(this.num_output_samples=[],this.num_total_samples=[],t=0;t<r/4;t++)this.num_output_samples[t]=e.readUint16(),this.num_total_samples[t]=e.readUint16()}),c.createSampleGroupCtor(`avll`,function(e){this.layerNumber=e.readUint8(),this.accurateStatisticsFlag=e.readUint8(),this.avgBitRate=e.readUint16(),this.avgFrameRate=e.readUint16()}),c.createSampleGroupCtor(`avss`,function(e){this.subSequenceIdentifier=e.readUint16(),this.layerNumber=e.readUint8();var t=e.readUint8();this.durationFlag=t>>7,this.avgRateFlag=t>>6&1,this.durationFlag&&(this.duration=e.readUint32()),this.avgRateFlag&&(this.accurateStatisticsFlag=e.readUint8(),this.avgBitRate=e.readUint16(),this.avgFrameRate=e.readUint16()),this.dependency=[];for(var n=e.readUint8(),r=0;r<n;r++){var a={};this.dependency.push(a),a.subSeqDirectionFlag=e.readUint8(),a.layerNumber=e.readUint8(),a.subSequenceIdentifier=e.readUint16()}}),c.createSampleGroupCtor(`dtrt`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`mvif`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`prol`,function(e){this.roll_distance=e.readInt16()}),c.createSampleGroupCtor(`rap `,function(e){var t=e.readUint8();this.num_leading_samples_known=t>>7,this.num_leading_samples=t&127}),c.createSampleGroupCtor(`rash`,function(e){if(this.operation_point_count=e.readUint16(),this.description_length!==2+(this.operation_point_count===1?2:this.operation_point_count*6)+9)t.warn(`BoxParser`,`Mismatch in `+this.grouping_type+` sample group length`),this.data=e.readUint8Array(this.description_length-2);else{if(this.operation_point_count===1)this.target_rate_share=e.readUint16();else{this.target_rate_share=[],this.available_bitrate=[];for(var n=0;n<this.operation_point_count;n++)this.available_bitrate[n]=e.readUint32(),this.target_rate_share[n]=e.readUint16()}this.maximum_bitrate=e.readUint32(),this.minimum_bitrate=e.readUint32(),this.discard_priority=e.readUint8()}}),c.createSampleGroupCtor(`roll`,function(e){this.roll_distance=e.readInt16()}),c.SampleGroupEntry.prototype.parse=function(e){t.warn(`BoxParser`,`Unknown Sample Group type: `+this.grouping_type),this.data=e.readUint8Array(this.description_length)},c.createSampleGroupCtor(`scif`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`scnm`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`seig`,function(e){this.reserved=e.readUint8();var t=e.readUint8();this.crypt_byte_block=t>>4,this.skip_byte_block=t&15,this.isProtected=e.readUint8(),this.Per_Sample_IV_Size=e.readUint8(),this.KID=c.parseHex16(e),this.constant_IV_size=0,this.constant_IV=0,this.isProtected===1&&this.Per_Sample_IV_Size===0&&(this.constant_IV_size=e.readUint8(),this.constant_IV=e.readUint8Array(this.constant_IV_size))}),c.createSampleGroupCtor(`stsa`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`sync`,function(e){var t=e.readUint8();this.NAL_unit_type=t&63}),c.createSampleGroupCtor(`tele`,function(e){var t=e.readUint8();this.level_independently_decodable=t>>7}),c.createSampleGroupCtor(`tsas`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`tscl`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createSampleGroupCtor(`vipr`,function(e){t.warn(`BoxParser`,`Sample Group type: `+this.grouping_type+` not fully parsed`)}),c.createFullBoxCtor(`sbgp`,`SampleToGroupBox`,function(e){this.grouping_type=e.readString(4),this.version===1?this.grouping_type_parameter=e.readUint32():this.grouping_type_parameter=0,this.entries=[];for(var t=e.readUint32(),n=0;n<t;n++){var r={};this.entries.push(r),r.sample_count=e.readInt32(),r.group_description_index=e.readInt32()}});function d(e,t){this.bad_pixel_row=e,this.bad_pixel_column=t}d.prototype.toString=function(){return`[row: `+this.bad_pixel_row+`, column: `+this.bad_pixel_column+`]`},c.createFullBoxCtor(`sbpm`,`SensorBadPixelsMapBox`,function(e){var t;for(this.component_count=e.readUint16(),this.component_index=[],t=0;t<this.component_count;t++)this.component_index.push(e.readUint16());var n=e.readUint8();for(this.correction_applied=(n&128)==128,this.num_bad_rows=e.readUint32(),this.num_bad_cols=e.readUint32(),this.num_bad_pixels=e.readUint32(),this.bad_rows=[],this.bad_columns=[],this.bad_pixels=[],t=0;t<this.num_bad_rows;t++)this.bad_rows.push(e.readUint32());for(t=0;t<this.num_bad_cols;t++)this.bad_columns.push(e.readUint32());for(t=0;t<this.num_bad_pixels;t++){var r=e.readUint32(),a=e.readUint32();this.bad_pixels.push(new d(r,a))}}),c.createFullBoxCtor(`schm`,`SchemeTypeBox`,function(e){this.scheme_type=e.readString(4),this.scheme_version=e.readUint32(),this.flags&1&&(this.scheme_uri=e.readString(this.size-this.hdr_size-8))}),c.createBoxCtor(`sdp `,`rtptracksdphintinformation`,function(e){this.sdptext=e.readString(this.size-this.hdr_size)}),c.createFullBoxCtor(`sdtp`,`SampleDependencyTypeBox`,function(e){var t,n=this.size-this.hdr_size;this.is_leading=[],this.sample_depends_on=[],this.sample_is_depended_on=[],this.sample_has_redundancy=[];for(var r=0;r<n;r++)t=e.readUint8(),this.is_leading[r]=t>>6,this.sample_depends_on[r]=t>>4&3,this.sample_is_depended_on[r]=t>>2&3,this.sample_has_redundancy[r]=t&3}),c.createFullBoxCtor(`senc`,`SampleEncryptionBox`),c.createFullBoxCtor(`sgpd`,`SampleGroupDescriptionBox`,function(e){this.grouping_type=e.readString(4),t.debug(`BoxParser`,`Found Sample Groups of type `+this.grouping_type),this.version===1?this.default_length=e.readUint32():this.default_length=0,this.version>=2&&(this.default_group_description_index=e.readUint32()),this.entries=[];for(var n=e.readUint32(),r=0;r<n;r++){var a=c[this.grouping_type+`SampleGroupEntry`]?new c[this.grouping_type+`SampleGroupEntry`](this.grouping_type):new c.SampleGroupEntry(this.grouping_type);this.entries.push(a),this.version===1&&this.default_length===0?a.description_length=e.readUint32():a.description_length=this.default_length,a.write===c.SampleGroupEntry.prototype.write&&(t.info(`BoxParser`,`SampleGroup for type `+this.grouping_type+` writing not yet implemented, keeping unparsed data in memory for later write`),a.data=e.readUint8Array(a.description_length),e.position-=a.description_length),a.parse(e)}}),c.createFullBoxCtor(`sidx`,`CompressedSegmentIndexBox`,function(e){this.reference_ID=e.readUint32(),this.timescale=e.readUint32(),this.version===0?(this.earliest_presentation_time=e.readUint32(),this.first_offset=e.readUint32()):(this.earliest_presentation_time=e.readUint64(),this.first_offset=e.readUint64()),e.readUint16(),this.references=[];for(var t=e.readUint16(),n=0;n<t;n++){var r={};this.references.push(r);var a=e.readUint32();r.reference_type=a>>31&1,r.referenced_size=a&2147483647,r.subsegment_duration=e.readUint32(),a=e.readUint32(),r.starts_with_SAP=a>>31&1,r.SAP_type=a>>28&7,r.SAP_delta_time=a&268435455}}),c.SingleItemTypeReferenceBox=function(e,t,n,r){c.Box.call(this,e,t),this.hdr_size=n,this.start=r},c.SingleItemTypeReferenceBox.prototype=new c.Box,c.SingleItemTypeReferenceBox.prototype.parse=function(e){this.from_item_ID=e.readUint16();var t=e.readUint16();this.references=[];for(var n=0;n<t;n++)this.references[n]={},this.references[n].to_item_ID=e.readUint16()},c.SingleItemTypeReferenceBoxLarge=function(e,t,n,r){c.Box.call(this,e,t),this.hdr_size=n,this.start=r},c.SingleItemTypeReferenceBoxLarge.prototype=new c.Box,c.SingleItemTypeReferenceBoxLarge.prototype.parse=function(e){this.from_item_ID=e.readUint32();var t=e.readUint16();this.references=[];for(var n=0;n<t;n++)this.references[n]={},this.references[n].to_item_ID=e.readUint32()},c.createFullBoxCtor(`SmDm`,`SMPTE2086MasteringDisplayMetadataBox`,function(e){this.primaryRChromaticity_x=e.readUint16(),this.primaryRChromaticity_y=e.readUint16(),this.primaryGChromaticity_x=e.readUint16(),this.primaryGChromaticity_y=e.readUint16(),this.primaryBChromaticity_x=e.readUint16(),this.primaryBChromaticity_y=e.readUint16(),this.whitePointChromaticity_x=e.readUint16(),this.whitePointChromaticity_y=e.readUint16(),this.luminanceMax=e.readUint32(),this.luminanceMin=e.readUint32()}),c.createFullBoxCtor(`smhd`,`SoundMediaHeaderBox`,function(e){this.balance=e.readUint16(),e.readUint16()}),c.createFullBoxCtor(`ssix`,`CompressedSubsegmentIndexBox`,function(e){this.subsegments=[];for(var t=e.readUint32(),n=0;n<t;n++){var r={};this.subsegments.push(r),r.ranges=[];for(var a=e.readUint32(),o=0;o<a;o++){var s={};r.ranges.push(s),s.level=e.readUint8(),s.range_size=e.readUint24()}}}),c.createFullBoxCtor(`stco`,`ChunkOffsetBox`,function(e){var t=e.readUint32();if(this.chunk_offsets=[],this.version===0)for(var n=0;n<t;n++)this.chunk_offsets.push(e.readUint32())}),c.createFullBoxCtor(`stdp`,`DegradationPriorityBox`,function(e){var t=(this.size-this.hdr_size)/2;this.priority=[];for(var n=0;n<t;n++)this.priority[n]=e.readUint16()}),c.createFullBoxCtor(`sthd`,`SubtitleMediaHeaderBox`),c.createFullBoxCtor(`stri`,`SubTrackInformationBox`,function(e){this.switch_group=e.readUint16(),this.alternate_group=e.readUint16(),this.sub_track_id=e.readUint32();var t=(this.size-this.hdr_size-8)/4;this.attribute_list=[];for(var n=0;n<t;n++)this.attribute_list[n]=e.readUint32()}),c.createFullBoxCtor(`stsc`,`SampleToChunkBox`,function(e){var t=e.readUint32(),n;if(this.first_chunk=[],this.samples_per_chunk=[],this.sample_description_index=[],this.version===0)for(n=0;n<t;n++)this.first_chunk.push(e.readUint32()),this.samples_per_chunk.push(e.readUint32()),this.sample_description_index.push(e.readUint32())}),c.createFullBoxCtor(`stsd`,`SampleDescriptionBox`,function(e){var n,r,a,o;for(this.entries=[],a=e.readUint32(),n=1;n<=a;n++)if(r=c.parseOneBox(e,!0,this.size-(e.getPosition()-this.start)),r.code===c.OK)c[r.type+`SampleEntry`]?(o=new c[r.type+`SampleEntry`](r.size),o.hdr_size=r.hdr_size,o.start=r.start):(t.warn(`BoxParser`,`Unknown sample entry type: `+r.type),o=new c.SampleEntry(r.type,r.size,r.hdr_size,r.start)),o.write===c.SampleEntry.prototype.write&&(t.info(`BoxParser`,`SampleEntry `+o.type+` box writing not yet implemented, keeping unparsed data in memory for later write`),o.parseDataAndRewind(e)),o.parse(e),this.entries.push(o);else return}),c.createFullBoxCtor(`stsg`,`SubTrackSampleGroupBox`,function(e){this.grouping_type=e.readUint32();var t=e.readUint16();this.group_description_index=[];for(var n=0;n<t;n++)this.group_description_index[n]=e.readUint32()}),c.createFullBoxCtor(`stsh`,`ShadowSyncSampleBox`,function(e){var t=e.readUint32(),n;if(this.shadowed_sample_numbers=[],this.sync_sample_numbers=[],this.version===0)for(n=0;n<t;n++)this.shadowed_sample_numbers.push(e.readUint32()),this.sync_sample_numbers.push(e.readUint32())}),c.createFullBoxCtor(`stss`,`SyncSampleBox`,function(e){var t,n=e.readUint32();if(this.version===0)for(this.sample_numbers=[],t=0;t<n;t++)this.sample_numbers.push(e.readUint32())}),c.createFullBoxCtor(`stsz`,`SampleSizeBox`,function(e){var t;if(this.sample_sizes=[],this.version===0)for(this.sample_size=e.readUint32(),this.sample_count=e.readUint32(),t=0;t<this.sample_count;t++)this.sample_size===0?this.sample_sizes.push(e.readUint32()):this.sample_sizes[t]=this.sample_size}),c.createFullBoxCtor(`stts`,`TimeToSampleBox`,function(e){var n=e.readUint32(),r,a;if(this.sample_counts=[],this.sample_deltas=[],this.version===0)for(r=0;r<n;r++)this.sample_counts.push(e.readUint32()),a=e.readInt32(),a<0&&(t.warn(`BoxParser`,`File uses negative stts sample delta, using value 1 instead, sync may be lost!`),a=1),this.sample_deltas.push(a)}),c.createFullBoxCtor(`stvi`,`StereoVideoBox`,function(e){var t=e.readUint32();this.single_view_allowed=t&3,this.stereo_scheme=e.readUint32();var n=e.readUint32();this.stereo_indication_type=e.readString(n);var r,a;for(this.boxes=[];e.getPosition()<this.start+this.size;)if(r=c.parseOneBox(e,!1,this.size-(e.getPosition()-this.start)),r.code===c.OK)a=r.box,this.boxes.push(a),this[a.type]=a;else return}),c.createBoxCtor(`styp`,`SegmentTypeBox`,function(e){c.ftypBox.prototype.parse.call(this,e)}),c.createFullBoxCtor(`stz2`,`CompactSampleSizeBox`,function(e){var n,r;if(this.sample_sizes=[],this.version===0)if(this.reserved=e.readUint24(),this.field_size=e.readUint8(),r=e.readUint32(),this.field_size===4)for(n=0;n<r;n+=2){var a=e.readUint8();this.sample_sizes[n]=a>>4&15,this.sample_sizes[n+1]=a&15}else if(this.field_size===8)for(n=0;n<r;n++)this.sample_sizes[n]=e.readUint8();else if(this.field_size===16)for(n=0;n<r;n++)this.sample_sizes[n]=e.readUint16();else t.error(`BoxParser`,`Error in length field in stz2 box`)}),c.createFullBoxCtor(`subs`,`SubSampleInformationBox`,function(e){var t,n,r=e.readUint32(),a;for(this.entries=[],t=0;t<r;t++){var o={};if(this.entries[t]=o,o.sample_delta=e.readUint32(),o.subsamples=[],a=e.readUint16(),a>0)for(n=0;n<a;n++){var s={};o.subsamples.push(s),this.version==1?s.size=e.readUint32():s.size=e.readUint16(),s.priority=e.readUint8(),s.discardable=e.readUint8(),s.codec_specific_parameters=e.readUint32()}}}),c.createFullBoxCtor(`tenc`,`TrackEncryptionBox`,function(e){if(e.readUint8(),this.version===0)e.readUint8();else{var t=e.readUint8();this.default_crypt_byte_block=t>>4&15,this.default_skip_byte_block=t&15}this.default_isProtected=e.readUint8(),this.default_Per_Sample_IV_Size=e.readUint8(),this.default_KID=c.parseHex16(e),this.default_isProtected===1&&this.default_Per_Sample_IV_Size===0&&(this.default_constant_IV_size=e.readUint8(),this.default_constant_IV=e.readUint8Array(this.default_constant_IV_size))}),c.createFullBoxCtor(`tfdt`,`TrackFragmentBaseMediaDecodeTimeBox`,function(e){this.version==1?this.baseMediaDecodeTime=e.readUint64():this.baseMediaDecodeTime=e.readUint32()}),c.createFullBoxCtor(`tfhd`,`TrackFragmentHeaderBox`,function(e){var t=0;this.track_id=e.readUint32(),this.size-this.hdr_size>t&&this.flags&c.TFHD_FLAG_BASE_DATA_OFFSET?(this.base_data_offset=e.readUint64(),t+=8):this.base_data_offset=0,this.size-this.hdr_size>t&&this.flags&c.TFHD_FLAG_SAMPLE_DESC?(this.default_sample_description_index=e.readUint32(),t+=4):this.default_sample_description_index=0,this.size-this.hdr_size>t&&this.flags&c.TFHD_FLAG_SAMPLE_DUR?(this.default_sample_duration=e.readUint32(),t+=4):this.default_sample_duration=0,this.size-this.hdr_size>t&&this.flags&c.TFHD_FLAG_SAMPLE_SIZE?(this.default_sample_size=e.readUint32(),t+=4):this.default_sample_size=0,this.size-this.hdr_size>t&&this.flags&c.TFHD_FLAG_SAMPLE_FLAGS?(this.default_sample_flags=e.readUint32(),t+=4):this.default_sample_flags=0}),c.createFullBoxCtor(`tfra`,`TrackFragmentRandomAccessBox`,function(e){this.track_ID=e.readUint32(),e.readUint24();var t=e.readUint8();this.length_size_of_traf_num=t>>4&3,this.length_size_of_trun_num=t>>2&3,this.length_size_of_sample_num=t&3,this.entries=[];for(var n=e.readUint32(),r=0;r<n;r++)this.version===1?(this.time=e.readUint64(),this.moof_offset=e.readUint64()):(this.time=e.readUint32(),this.moof_offset=e.readUint32()),this.traf_number=e[`readUint`+8*(this.length_size_of_traf_num+1)](),this.trun_number=e[`readUint`+8*(this.length_size_of_trun_num+1)](),this.sample_number=e[`readUint`+8*(this.length_size_of_sample_num+1)]()}),c.createFullBoxCtor(`tkhd`,`TrackHeaderBox`,function(e){this.version==1?(this.creation_time=e.readUint64(),this.modification_time=e.readUint64(),this.track_id=e.readUint32(),e.readUint32(),this.duration=e.readUint64()):(this.creation_time=e.readUint32(),this.modification_time=e.readUint32(),this.track_id=e.readUint32(),e.readUint32(),this.duration=e.readUint32()),e.readUint32Array(2),this.layer=e.readInt16(),this.alternate_group=e.readInt16(),this.volume=e.readInt16()>>8,e.readUint16(),this.matrix=e.readInt32Array(9),this.width=e.readUint32(),this.height=e.readUint32()}),c.createBoxCtor(`tmax`,`hintmaxrelativetime`,function(e){this.time=e.readUint32()}),c.createBoxCtor(`tmin`,`hintminrelativetime`,function(e){this.time=e.readUint32()}),c.createBoxCtor(`totl`,`hintBytesSent`,function(e){this.bytessent=e.readUint32()}),c.createBoxCtor(`tpay`,`hintBytesSent`,function(e){this.bytessent=e.readUint32()}),c.createBoxCtor(`tpyl`,`hintBytesSent`,function(e){this.bytessent=e.readUint64()}),c.TrackGroupTypeBox.prototype.parse=function(e){this.parseFullHeader(e),this.track_group_id=e.readUint32()},c.createTrackGroupCtor(`msrc`),c.TrackReferenceTypeBox=function(e,t,n,r){c.Box.call(this,e,t),this.hdr_size=n,this.start=r},c.TrackReferenceTypeBox.prototype=new c.Box,c.TrackReferenceTypeBox.prototype.parse=function(e){this.track_ids=e.readUint32Array((this.size-this.hdr_size)/4)},c.trefBox.prototype.parse=function(e){for(var n,r;e.getPosition()<this.start+this.size;)if(n=c.parseOneBox(e,!0,this.size-(e.getPosition()-this.start)),n.code===c.OK)r=new c.TrackReferenceTypeBox(n.type,n.size,n.hdr_size,n.start),r.write===c.Box.prototype.write&&r.type!==`mdat`&&(t.info(`BoxParser`,`TrackReference `+r.type+` box writing not yet implemented, keeping unparsed data in memory for later write`),r.parseDataAndRewind(e)),r.parse(e),this.boxes.push(r);else return},c.createFullBoxCtor(`trep`,`TrackExtensionPropertiesBox`,function(e){for(this.track_ID=e.readUint32(),this.boxes=[];e.getPosition()<this.start+this.size;)if(ret=c.parseOneBox(e,!1,this.size-(e.getPosition()-this.start)),ret.code===c.OK)box=ret.box,this.boxes.push(box);else return}),c.createFullBoxCtor(`trex`,`TrackExtendsBox`,function(e){this.track_id=e.readUint32(),this.default_sample_description_index=e.readUint32(),this.default_sample_duration=e.readUint32(),this.default_sample_size=e.readUint32(),this.default_sample_flags=e.readUint32()}),c.createBoxCtor(`trpy`,`hintBytesSent`,function(e){this.bytessent=e.readUint64()}),c.createFullBoxCtor(`trun`,`TrackRunBox`,function(e){var t=0;if(this.sample_count=e.readUint32(),t+=4,this.size-this.hdr_size>t&&this.flags&c.TRUN_FLAGS_DATA_OFFSET?(this.data_offset=e.readInt32(),t+=4):this.data_offset=0,this.size-this.hdr_size>t&&this.flags&c.TRUN_FLAGS_FIRST_FLAG?(this.first_sample_flags=e.readUint32(),t+=4):this.first_sample_flags=0,this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[],this.size-this.hdr_size>t)for(var n=0;n<this.sample_count;n++)this.flags&c.TRUN_FLAGS_DURATION&&(this.sample_duration[n]=e.readUint32()),this.flags&c.TRUN_FLAGS_SIZE&&(this.sample_size[n]=e.readUint32()),this.flags&c.TRUN_FLAGS_FLAGS&&(this.sample_flags[n]=e.readUint32()),this.flags&c.TRUN_FLAGS_CTS_OFFSET&&(this.version===0?this.sample_composition_time_offset[n]=e.readUint32():this.sample_composition_time_offset[n]=e.readInt32())}),c.createFullBoxCtor(`tsel`,`TrackSelectionBox`,function(e){this.switch_group=e.readUint32();var t=(this.size-this.hdr_size-4)/4;this.attribute_list=[];for(var n=0;n<t;n++)this.attribute_list[n]=e.readUint32()}),c.createFullBoxCtor(`txtC`,`TextConfigBox`,function(e){this.config=e.readCString()}),c.createBoxCtor(`tyco`,`TypeCombinationBox`,function(e){var t=(this.size-this.hdr_size)/4;this.compatible_brands=[];for(var n=0;n<t;n++)this.compatible_brands[n]=e.readString(4)}),c.createFullBoxCtor(`udes`,`UserDescriptionProperty`,function(e){this.lang=e.readCString(),this.name=e.readCString(),this.description=e.readCString(),this.tags=e.readCString()}),c.createFullBoxCtor(`uncC`,`UncompressedFrameConfigBox`,function(e){var t;if(this.profile=e.readString(4),this.version!=1&&this.version==0){for(this.component_count=e.readUint32(),this.component_index=[],this.component_bit_depth_minus_one=[],this.component_format=[],this.component_align_size=[],t=0;t<this.component_count;t++)this.component_index.push(e.readUint16()),this.component_bit_depth_minus_one.push(e.readUint8()),this.component_format.push(e.readUint8()),this.component_align_size.push(e.readUint8());this.sampling_type=e.readUint8(),this.interleave_type=e.readUint8(),this.block_size=e.readUint8();var n=e.readUint8();this.component_little_endian=n>>7&1,this.block_pad_lsb=n>>6&1,this.block_little_endian=n>>5&1,this.block_reversed=n>>4&1,this.pad_unknown=n>>3&1,this.pixel_size=e.readUint32(),this.row_align_size=e.readUint32(),this.tile_align_size=e.readUint32(),this.num_tile_cols_minus_one=e.readUint32(),this.num_tile_rows_minus_one=e.readUint32()}}),c.createFullBoxCtor(`url `,`DataEntryUrlBox`,function(e){this.flags!==1&&(this.location=e.readCString())}),c.createFullBoxCtor(`urn `,`DataEntryUrnBox`,function(e){this.name=e.readCString(),this.size-this.hdr_size-this.name.length-1>0&&(this.location=e.readCString())}),c.createUUIDBox(`a5d40b30e81411ddba2f0800200c9a66`,`LiveServerManifestBox`,!0,!1,function(e){this.LiveServerManifest=e.readString(this.size-this.hdr_size).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}),c.createUUIDBox(`d08a4f1810f34a82b6c832d8aba183d3`,`PiffProtectionSystemSpecificHeaderBox`,!0,!1,function(e){this.system_id=c.parseHex16(e);var t=e.readUint32();t>0&&(this.data=e.readUint8Array(t))}),c.createUUIDBox(`a2394f525a9b4f14a2446c427c648df4`,`PiffSampleEncryptionBox`,!0,!1),c.createUUIDBox(`8974dbce7be74c5184f97148f9882554`,`PiffTrackEncryptionBox`,!0,!1,function(e){this.default_AlgorithmID=e.readUint24(),this.default_IV_size=e.readUint8(),this.default_KID=c.parseHex16(e)}),c.createUUIDBox(`d4807ef2ca3946958e5426cb9e46a79f`,`TfrfBox`,!0,!1,function(e){this.fragment_count=e.readUint8(),this.entries=[];for(var t=0;t<this.fragment_count;t++){var n={},r=0,a=0;this.version===1?(r=e.readUint64(),a=e.readUint64()):(r=e.readUint32(),a=e.readUint32()),n.absolute_time=r,n.absolute_duration=a,this.entries.push(n)}}),c.createUUIDBox(`6d1d9b0542d544e680e2141daff757b2`,`TfxdBox`,!0,!1,function(e){this.version===1?(this.absolute_time=e.readUint64(),this.duration=e.readUint64()):(this.absolute_time=e.readUint32(),this.duration=e.readUint32())}),c.createFullBoxCtor(`vmhd`,`VideoMediaHeaderBox`,function(e){this.graphicsmode=e.readUint16(),this.opcolor=e.readUint16Array(3)}),c.createFullBoxCtor(`vpcC`,`VPCodecConfigurationRecord`,function(e){var t;this.version===1?(this.profile=e.readUint8(),this.level=e.readUint8(),t=e.readUint8(),this.bitDepth=t>>4,this.chromaSubsampling=t>>1&7,this.videoFullRangeFlag=t&1,this.colourPrimaries=e.readUint8(),this.transferCharacteristics=e.readUint8(),this.matrixCoefficients=e.readUint8(),this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize)):(this.profile=e.readUint8(),this.level=e.readUint8(),t=e.readUint8(),this.bitDepth=t>>4&15,this.colorSpace=t&15,t=e.readUint8(),this.chromaSubsampling=t>>4&15,this.transferFunction=t>>1&7,this.videoFullRangeFlag=t&1,this.codecIntializationDataSize=e.readUint16(),this.codecIntializationData=e.readUint8Array(this.codecIntializationDataSize))}),c.createBoxCtor(`vttC`,`WebVTTConfigurationBox`,function(e){this.text=e.readString(this.size-this.hdr_size)}),c.createFullBoxCtor(`vvcC`,`VvcConfigurationBox`,function(e){var t,n,r={held_bits:void 0,num_held_bits:0,stream_read_1_bytes:function(e){this.held_bits=e.readUint8(),this.num_held_bits=8},stream_read_2_bytes:function(e){this.held_bits=e.readUint16(),this.num_held_bits=16},extract_bits:function(e){var t=this.held_bits>>this.num_held_bits-e&(1<<e)-1;return this.num_held_bits-=e,t}};if(r.stream_read_1_bytes(e),r.extract_bits(5),this.lengthSizeMinusOne=r.extract_bits(2),this.ptl_present_flag=r.extract_bits(1),this.ptl_present_flag){if(r.stream_read_2_bytes(e),this.ols_idx=r.extract_bits(9),this.num_sublayers=r.extract_bits(3),this.constant_frame_rate=r.extract_bits(2),this.chroma_format_idc=r.extract_bits(2),r.stream_read_1_bytes(e),this.bit_depth_minus8=r.extract_bits(3),r.extract_bits(5),r.stream_read_2_bytes(e),r.extract_bits(2),this.num_bytes_constraint_info=r.extract_bits(6),this.general_profile_idc=r.extract_bits(7),this.general_tier_flag=r.extract_bits(1),this.general_level_idc=e.readUint8(),r.stream_read_1_bytes(e),this.ptl_frame_only_constraint_flag=r.extract_bits(1),this.ptl_multilayer_enabled_flag=r.extract_bits(1),this.general_constraint_info=new Uint8Array(this.num_bytes_constraint_info),this.num_bytes_constraint_info){for(t=0;t<this.num_bytes_constraint_info-1;t++){var a=r.extract_bits(6);r.stream_read_1_bytes(e);var o=r.extract_bits(2);this.general_constraint_info[t]=a<<2|o}this.general_constraint_info[this.num_bytes_constraint_info-1]=r.extract_bits(6)}else r.extract_bits(6);if(this.num_sublayers>1){for(r.stream_read_1_bytes(e),this.ptl_sublayer_present_mask=0,n=this.num_sublayers-2;n>=0;--n){var s=r.extract_bits(1);this.ptl_sublayer_present_mask|=s<<n}for(n=this.num_sublayers;n<=8&&this.num_sublayers>1;++n)r.extract_bits(1);for(this.sublayer_level_idc=[],n=this.num_sublayers-2;n>=0;--n)this.ptl_sublayer_present_mask&1<<n&&(this.sublayer_level_idc[n]=e.readUint8())}if(this.ptl_num_sub_profiles=e.readUint8(),this.general_sub_profile_idc=[],this.ptl_num_sub_profiles)for(t=0;t<this.ptl_num_sub_profiles;t++)this.general_sub_profile_idc.push(e.readUint32());this.max_picture_width=e.readUint16(),this.max_picture_height=e.readUint16(),this.avg_frame_rate=e.readUint16()}var c=12,l=13;this.nalu_arrays=[];var u=e.readUint8();for(t=0;t<u;t++){var d=[];this.nalu_arrays.push(d),r.stream_read_1_bytes(e),d.completeness=r.extract_bits(1),r.extract_bits(2),d.nalu_type=r.extract_bits(5);var f=1;for(d.nalu_type!=l&&d.nalu_type!=c&&(f=e.readUint16()),n=0;n<f;n++){var p=e.readUint16();d.push({data:e.readUint8Array(p),length:p})}}}),c.createFullBoxCtor(`vvnC`,`VvcNALUConfigBox`,function(e){var t=strm.readUint8();this.lengthSizeMinusOne=t&3}),c.SampleEntry.prototype.isVideo=function(){return!1},c.SampleEntry.prototype.isAudio=function(){return!1},c.SampleEntry.prototype.isSubtitle=function(){return!1},c.SampleEntry.prototype.isMetadata=function(){return!1},c.SampleEntry.prototype.isHint=function(){return!1},c.SampleEntry.prototype.getCodec=function(){return this.type.replace(`.`,``)},c.SampleEntry.prototype.getWidth=function(){return``},c.SampleEntry.prototype.getHeight=function(){return``},c.SampleEntry.prototype.getChannelCount=function(){return``},c.SampleEntry.prototype.getSampleRate=function(){return``},c.SampleEntry.prototype.getSampleSize=function(){return``},c.VisualSampleEntry.prototype.isVideo=function(){return!0},c.VisualSampleEntry.prototype.getWidth=function(){return this.width},c.VisualSampleEntry.prototype.getHeight=function(){return this.height},c.AudioSampleEntry.prototype.isAudio=function(){return!0},c.AudioSampleEntry.prototype.getChannelCount=function(){return this.channel_count},c.AudioSampleEntry.prototype.getSampleRate=function(){return this.samplerate},c.AudioSampleEntry.prototype.getSampleSize=function(){return this.samplesize},c.SubtitleSampleEntry.prototype.isSubtitle=function(){return!0},c.MetadataSampleEntry.prototype.isMetadata=function(){return!0},c.decimalToHex=function(e,t){var n=Number(e).toString(16);for(t??=t=2;n.length<t;)n=`0`+n;return n},c.avc1SampleEntry.prototype.getCodec=c.avc2SampleEntry.prototype.getCodec=c.avc3SampleEntry.prototype.getCodec=c.avc4SampleEntry.prototype.getCodec=function(){var e=c.SampleEntry.prototype.getCodec.call(this);return this.avcC?e+`.`+c.decimalToHex(this.avcC.AVCProfileIndication)+c.decimalToHex(this.avcC.profile_compatibility)+c.decimalToHex(this.avcC.AVCLevelIndication):e},c.hev1SampleEntry.prototype.getCodec=c.hvc1SampleEntry.prototype.getCodec=function(){var e,t=c.SampleEntry.prototype.getCodec.call(this);if(this.hvcC){switch(t+=`.`,this.hvcC.general_profile_space){case 0:t+=``;break;case 1:t+=`A`;break;case 2:t+=`B`;break;case 3:t+=`C`;break}t+=this.hvcC.general_profile_idc,t+=`.`;var n=this.hvcC.general_profile_compatibility,r=0;for(e=0;e<32&&(r|=n&1,e!=31);e++)r<<=1,n>>=1;t+=c.decimalToHex(r,0),t+=`.`,this.hvcC.general_tier_flag===0?t+=`L`:t+=`H`,t+=this.hvcC.general_level_idc;var a=!1,o=``;for(e=5;e>=0;e--)(this.hvcC.general_constraint_indicator[e]||a)&&(o=`.`+c.decimalToHex(this.hvcC.general_constraint_indicator[e],0)+o,a=!0);t+=o}return t},c.vvc1SampleEntry.prototype.getCodec=c.vvi1SampleEntry.prototype.getCodec=function(){var e,t=c.SampleEntry.prototype.getCodec.call(this);if(this.vvcC){t+=`.`+this.vvcC.general_profile_idc,this.vvcC.general_tier_flag?t+=`.H`:t+=`.L`,t+=this.vvcC.general_level_idc;var n=``;if(this.vvcC.general_constraint_info){var r=[],a=0;a|=this.vvcC.ptl_frame_only_constraint<<7,a|=this.vvcC.ptl_multilayer_enabled<<6;var o;for(e=0;e<this.vvcC.general_constraint_info.length;++e)a|=this.vvcC.general_constraint_info[e]>>2&63,r.push(a),a&&(o=e),a=this.vvcC.general_constraint_info[e]>>2&3;if(o===void 0)n=`.CA`;else{n=`.C`;var s=`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`,l=0,u=0;for(e=0;e<=o;++e)for(l=l<<8|r[e],u+=8;u>=5;){var d=l>>u-5&31;n+=s[d],u-=5,l&=(1<<u)-1}u&&(l<<=5-u,n+=s[l&31])}}t+=n}return t},c.mp4aSampleEntry.prototype.getCodec=function(){var e=c.SampleEntry.prototype.getCodec.call(this);if(this.esds&&this.esds.esd){var t=this.esds.esd.getOTI(),n=this.esds.esd.getAudioConfig();return e+`.`+c.decimalToHex(t)+(n?`.`+n:``)}else return e},c.stxtSampleEntry.prototype.getCodec=function(){var e=c.SampleEntry.prototype.getCodec.call(this);return this.mime_format?e+`.`+this.mime_format:e},c.vp08SampleEntry.prototype.getCodec=c.vp09SampleEntry.prototype.getCodec=function(){var e=c.SampleEntry.prototype.getCodec.call(this),t=this.vpcC.level;t==0&&(t=`00`);var n=this.vpcC.bitDepth;return n==8&&(n=`08`),e+`.0`+this.vpcC.profile+`.`+t+`.`+n},c.av01SampleEntry.prototype.getCodec=function(){var e=c.SampleEntry.prototype.getCodec.call(this),t=this.av1C.seq_level_idx_0;t<10&&(t=`0`+t);var n;return this.av1C.seq_profile===2&&this.av1C.high_bitdepth===1?n=this.av1C.twelve_bit===1?`12`:`10`:this.av1C.seq_profile<=2&&(n=this.av1C.high_bitdepth===1?`10`:`08`),e+`.`+this.av1C.seq_profile+`.`+t+(this.av1C.seq_tier_0?`H`:`M`)+`.`+n},c.Box.prototype.writeHeader=function(e,n){this.size+=8,this.size>a&&(this.size+=8),this.type===`uuid`&&(this.size+=16),t.debug(`BoxWriter`,`Writing box `+this.type+` of size: `+this.size+` at position `+e.getPosition()+(n||``)),this.size>a?e.writeUint32(1):(this.sizePosition=e.getPosition(),e.writeUint32(this.size)),e.writeString(this.type,null,4),this.type===`uuid`&&e.writeUint8Array(this.uuid),this.size>a&&e.writeUint64(this.size)},c.FullBox.prototype.writeHeader=function(e){this.size+=4,c.Box.prototype.writeHeader.call(this,e,` v=`+this.version+` f=`+this.flags),e.writeUint8(this.version),e.writeUint24(this.flags)},c.Box.prototype.write=function(e){this.type===`mdat`?this.data&&(this.size=this.data.length,this.writeHeader(e),e.writeUint8Array(this.data)):(this.size=this.data?this.data.length:0,this.writeHeader(e),this.data&&e.writeUint8Array(this.data))},c.ContainerBox.prototype.write=function(e){this.size=0,this.writeHeader(e);for(var n=0;n<this.boxes.length;n++)this.boxes[n]&&(this.boxes[n].write(e),this.size+=this.boxes[n].size);t.debug(`BoxWriter`,`Adjusting box `+this.type+` with new size `+this.size),e.adjustUint32(this.sizePosition,this.size)},c.TrackReferenceTypeBox.prototype.write=function(e){this.size=this.track_ids.length*4,this.writeHeader(e),e.writeUint32Array(this.track_ids)},c.avcCBox.prototype.write=function(e){var t;for(this.size=7,t=0;t<this.SPS.length;t++)this.size+=2+this.SPS[t].length;for(t=0;t<this.PPS.length;t++)this.size+=2+this.PPS[t].length;for(this.ext&&(this.size+=this.ext.length),this.writeHeader(e),e.writeUint8(this.configurationVersion),e.writeUint8(this.AVCProfileIndication),e.writeUint8(this.profile_compatibility),e.writeUint8(this.AVCLevelIndication),e.writeUint8(this.lengthSizeMinusOne+252),e.writeUint8(this.SPS.length+224),t=0;t<this.SPS.length;t++)e.writeUint16(this.SPS[t].length),e.writeUint8Array(this.SPS[t].nalu);for(e.writeUint8(this.PPS.length),t=0;t<this.PPS.length;t++)e.writeUint16(this.PPS[t].length),e.writeUint8Array(this.PPS[t].nalu);this.ext&&e.writeUint8Array(this.ext)},c.co64Box.prototype.write=function(e){var t;for(this.version=0,this.flags=0,this.size=4+8*this.chunk_offsets.length,this.writeHeader(e),e.writeUint32(this.chunk_offsets.length),t=0;t<this.chunk_offsets.length;t++)e.writeUint64(this.chunk_offsets[t])},c.cslgBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=20,this.writeHeader(e),e.writeInt32(this.compositionToDTSShift),e.writeInt32(this.leastDecodeToDisplayDelta),e.writeInt32(this.greatestDecodeToDisplayDelta),e.writeInt32(this.compositionStartTime),e.writeInt32(this.compositionEndTime)},c.cttsBox.prototype.write=function(e){var t;for(this.version=0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(e),e.writeUint32(this.sample_counts.length),t=0;t<this.sample_counts.length;t++)e.writeUint32(this.sample_counts[t]),this.version===1?e.writeInt32(this.sample_offsets[t]):e.writeUint32(this.sample_offsets[t])},c.drefBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4,this.writeHeader(e),e.writeUint32(this.entries.length);for(var n=0;n<this.entries.length;n++)this.entries[n].write(e),this.size+=this.entries[n].size;t.debug(`BoxWriter`,`Adjusting box `+this.type+` with new size `+this.size),e.adjustUint32(this.sizePosition,this.size)},c.elngBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=this.extended_language.length,this.writeHeader(e),e.writeString(this.extended_language)},c.elstBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4+12*this.entries.length,this.writeHeader(e),e.writeUint32(this.entries.length);for(var t=0;t<this.entries.length;t++){var n=this.entries[t];e.writeUint32(n.segment_duration),e.writeInt32(n.media_time),e.writeInt16(n.media_rate_integer),e.writeInt16(n.media_rate_fraction)}},c.emsgBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=16+this.message_data.length+(this.scheme_id_uri.length+1)+(this.value.length+1),this.writeHeader(e),e.writeCString(this.scheme_id_uri),e.writeCString(this.value),e.writeUint32(this.timescale),e.writeUint32(this.presentation_time_delta),e.writeUint32(this.event_duration),e.writeUint32(this.id),e.writeUint8Array(this.message_data)},c.ftypBox.prototype.write=function(e){this.size=8+4*this.compatible_brands.length,this.writeHeader(e),e.writeString(this.major_brand,null,4),e.writeUint32(this.minor_version);for(var t=0;t<this.compatible_brands.length;t++)e.writeString(this.compatible_brands[t],null,4)},c.hdlrBox.prototype.write=function(e){this.size=20+this.name.length+1,this.version=0,this.flags=0,this.writeHeader(e),e.writeUint32(0),e.writeString(this.handler,null,4),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeCString(this.name)},c.hvcCBox.prototype.write=function(e){var t,n;for(this.size=23,t=0;t<this.nalu_arrays.length;t++)for(this.size+=3,n=0;n<this.nalu_arrays[t].length;n++)this.size+=2+this.nalu_arrays[t][n].data.length;for(this.writeHeader(e),e.writeUint8(this.configurationVersion),e.writeUint8((this.general_profile_space<<6)+(this.general_tier_flag<<5)+this.general_profile_idc),e.writeUint32(this.general_profile_compatibility),e.writeUint8Array(this.general_constraint_indicator),e.writeUint8(this.general_level_idc),e.writeUint16(this.min_spatial_segmentation_idc+(15<<24)),e.writeUint8(this.parallelismType+252),e.writeUint8(this.chroma_format_idc+252),e.writeUint8(this.bit_depth_luma_minus8+248),e.writeUint8(this.bit_depth_chroma_minus8+248),e.writeUint16(this.avgFrameRate),e.writeUint8((this.constantFrameRate<<6)+(this.numTemporalLayers<<3)+(this.temporalIdNested<<2)+this.lengthSizeMinusOne),e.writeUint8(this.nalu_arrays.length),t=0;t<this.nalu_arrays.length;t++)for(e.writeUint8((this.nalu_arrays[t].completeness<<7)+this.nalu_arrays[t].nalu_type),e.writeUint16(this.nalu_arrays[t].length),n=0;n<this.nalu_arrays[t].length;n++)e.writeUint16(this.nalu_arrays[t][n].data.length),e.writeUint8Array(this.nalu_arrays[t][n].data)},c.kindBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=this.schemeURI.length+1+(this.value.length+1),this.writeHeader(e),e.writeCString(this.schemeURI),e.writeCString(this.value)},c.mdhdBox.prototype.write=function(e){this.size=20,this.flags=0,this.version=0,this.writeHeader(e),e.writeUint32(this.creation_time),e.writeUint32(this.modification_time),e.writeUint32(this.timescale),e.writeUint32(this.duration),e.writeUint16(this.language),e.writeUint16(0)},c.mehdBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4,this.writeHeader(e),e.writeUint32(this.fragment_duration)},c.mfhdBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4,this.writeHeader(e),e.writeUint32(this.sequence_number)},c.mvhdBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=96,this.writeHeader(e),e.writeUint32(this.creation_time),e.writeUint32(this.modification_time),e.writeUint32(this.timescale),e.writeUint32(this.duration),e.writeUint32(this.rate),e.writeUint16(this.volume<<8),e.writeUint16(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32Array(this.matrix),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32(this.next_track_id)},c.SampleEntry.prototype.writeHeader=function(e){this.size=8,c.Box.prototype.writeHeader.call(this,e),e.writeUint8(0),e.writeUint8(0),e.writeUint8(0),e.writeUint8(0),e.writeUint8(0),e.writeUint8(0),e.writeUint16(this.data_reference_index)},c.SampleEntry.prototype.writeFooter=function(e){for(var n=0;n<this.boxes.length;n++)this.boxes[n].write(e),this.size+=this.boxes[n].size;t.debug(`BoxWriter`,`Adjusting box `+this.type+` with new size `+this.size),e.adjustUint32(this.sizePosition,this.size)},c.SampleEntry.prototype.write=function(e){this.writeHeader(e),e.writeUint8Array(this.data),this.size+=this.data.length,t.debug(`BoxWriter`,`Adjusting box `+this.type+` with new size `+this.size),e.adjustUint32(this.sizePosition,this.size)},c.VisualSampleEntry.prototype.write=function(e){this.writeHeader(e),this.size+=70,e.writeUint16(0),e.writeUint16(0),e.writeUint32(0),e.writeUint32(0),e.writeUint32(0),e.writeUint16(this.width),e.writeUint16(this.height),e.writeUint32(this.horizresolution),e.writeUint32(this.vertresolution),e.writeUint32(0),e.writeUint16(this.frame_count),e.writeUint8(Math.min(31,this.compressorname.length)),e.writeString(this.compressorname,null,31),e.writeUint16(this.depth),e.writeInt16(-1),this.writeFooter(e)},c.AudioSampleEntry.prototype.write=function(e){this.writeHeader(e),this.size+=20,e.writeUint32(0),e.writeUint32(0),e.writeUint16(this.channel_count),e.writeUint16(this.samplesize),e.writeUint16(0),e.writeUint16(0),e.writeUint32(this.samplerate<<16),this.writeFooter(e)},c.stppSampleEntry.prototype.write=function(e){this.writeHeader(e),this.size+=this.namespace.length+1+this.schema_location.length+1+this.auxiliary_mime_types.length+1,e.writeCString(this.namespace),e.writeCString(this.schema_location),e.writeCString(this.auxiliary_mime_types),this.writeFooter(e)},c.SampleGroupEntry.prototype.write=function(e){e.writeUint8Array(this.data)},c.sbgpBox.prototype.write=function(e){this.version=1,this.flags=0,this.size=12+8*this.entries.length,this.writeHeader(e),e.writeString(this.grouping_type,null,4),e.writeUint32(this.grouping_type_parameter),e.writeUint32(this.entries.length);for(var t=0;t<this.entries.length;t++){var n=this.entries[t];e.writeInt32(n.sample_count),e.writeInt32(n.group_description_index)}},c.sgpdBox.prototype.write=function(e){var t,n;for(this.flags=0,this.size=12,t=0;t<this.entries.length;t++)n=this.entries[t],this.version===1&&(this.default_length===0&&(this.size+=4),this.size+=n.data.length);for(this.writeHeader(e),e.writeString(this.grouping_type,null,4),this.version===1&&e.writeUint32(this.default_length),this.version>=2&&e.writeUint32(this.default_sample_description_index),e.writeUint32(this.entries.length),t=0;t<this.entries.length;t++)n=this.entries[t],this.version===1&&this.default_length===0&&e.writeUint32(n.description_length),n.write(e)},c.sidxBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=20+12*this.references.length,this.writeHeader(e),e.writeUint32(this.reference_ID),e.writeUint32(this.timescale),e.writeUint32(this.earliest_presentation_time),e.writeUint32(this.first_offset),e.writeUint16(0),e.writeUint16(this.references.length);for(var t=0;t<this.references.length;t++){var n=this.references[t];e.writeUint32(n.reference_type<<31|n.referenced_size),e.writeUint32(n.subsegment_duration),e.writeUint32(n.starts_with_SAP<<31|n.SAP_type<<28|n.SAP_delta_time)}},c.smhdBox.prototype.write=function(e){this.version=0,this.flags=1,this.size=4,this.writeHeader(e),e.writeUint16(this.balance),e.writeUint16(0)},c.stcoBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4+4*this.chunk_offsets.length,this.writeHeader(e),e.writeUint32(this.chunk_offsets.length),e.writeUint32Array(this.chunk_offsets)},c.stscBox.prototype.write=function(e){var t;for(this.version=0,this.flags=0,this.size=4+12*this.first_chunk.length,this.writeHeader(e),e.writeUint32(this.first_chunk.length),t=0;t<this.first_chunk.length;t++)e.writeUint32(this.first_chunk[t]),e.writeUint32(this.samples_per_chunk[t]),e.writeUint32(this.sample_description_index[t])},c.stsdBox.prototype.write=function(e){var n;for(this.version=0,this.flags=0,this.size=0,this.writeHeader(e),e.writeUint32(this.entries.length),this.size+=4,n=0;n<this.entries.length;n++)this.entries[n].write(e),this.size+=this.entries[n].size;t.debug(`BoxWriter`,`Adjusting box `+this.type+` with new size `+this.size),e.adjustUint32(this.sizePosition,this.size)},c.stshBox.prototype.write=function(e){var t;for(this.version=0,this.flags=0,this.size=4+8*this.shadowed_sample_numbers.length,this.writeHeader(e),e.writeUint32(this.shadowed_sample_numbers.length),t=0;t<this.shadowed_sample_numbers.length;t++)e.writeUint32(this.shadowed_sample_numbers[t]),e.writeUint32(this.sync_sample_numbers[t])},c.stssBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=4+4*this.sample_numbers.length,this.writeHeader(e),e.writeUint32(this.sample_numbers.length),e.writeUint32Array(this.sample_numbers)},c.stszBox.prototype.write=function(e){var t,n=!0;if(this.version=0,this.flags=0,this.sample_sizes.length>0)for(t=0;t+1<this.sample_sizes.length;)if(this.sample_sizes[t+1]!==this.sample_sizes[0]){n=!1;break}else t++;else n=!1;this.size=8,n||(this.size+=4*this.sample_sizes.length),this.writeHeader(e),n?e.writeUint32(this.sample_sizes[0]):e.writeUint32(0),e.writeUint32(this.sample_sizes.length),n||e.writeUint32Array(this.sample_sizes)},c.sttsBox.prototype.write=function(e){var t;for(this.version=0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(e),e.writeUint32(this.sample_counts.length),t=0;t<this.sample_counts.length;t++)e.writeUint32(this.sample_counts[t]),e.writeUint32(this.sample_deltas[t])},c.tfdtBox.prototype.write=function(e){var t=2**32-1;this.version=+(this.baseMediaDecodeTime>t),this.flags=0,this.size=4,this.version===1&&(this.size+=4),this.writeHeader(e),this.version===1?e.writeUint64(this.baseMediaDecodeTime):e.writeUint32(this.baseMediaDecodeTime)},c.tfhdBox.prototype.write=function(e){this.version=0,this.size=4,this.flags&c.TFHD_FLAG_BASE_DATA_OFFSET&&(this.size+=8),this.flags&c.TFHD_FLAG_SAMPLE_DESC&&(this.size+=4),this.flags&c.TFHD_FLAG_SAMPLE_DUR&&(this.size+=4),this.flags&c.TFHD_FLAG_SAMPLE_SIZE&&(this.size+=4),this.flags&c.TFHD_FLAG_SAMPLE_FLAGS&&(this.size+=4),this.writeHeader(e),e.writeUint32(this.track_id),this.flags&c.TFHD_FLAG_BASE_DATA_OFFSET&&e.writeUint64(this.base_data_offset),this.flags&c.TFHD_FLAG_SAMPLE_DESC&&e.writeUint32(this.default_sample_description_index),this.flags&c.TFHD_FLAG_SAMPLE_DUR&&e.writeUint32(this.default_sample_duration),this.flags&c.TFHD_FLAG_SAMPLE_SIZE&&e.writeUint32(this.default_sample_size),this.flags&c.TFHD_FLAG_SAMPLE_FLAGS&&e.writeUint32(this.default_sample_flags)},c.tkhdBox.prototype.write=function(e){this.version=0,this.size=80,this.writeHeader(e),e.writeUint32(this.creation_time),e.writeUint32(this.modification_time),e.writeUint32(this.track_id),e.writeUint32(0),e.writeUint32(this.duration),e.writeUint32(0),e.writeUint32(0),e.writeInt16(this.layer),e.writeInt16(this.alternate_group),e.writeInt16(this.volume<<8),e.writeUint16(0),e.writeInt32Array(this.matrix),e.writeUint32(this.width),e.writeUint32(this.height)},c.trexBox.prototype.write=function(e){this.version=0,this.flags=0,this.size=20,this.writeHeader(e),e.writeUint32(this.track_id),e.writeUint32(this.default_sample_description_index),e.writeUint32(this.default_sample_duration),e.writeUint32(this.default_sample_size),e.writeUint32(this.default_sample_flags)},c.trunBox.prototype.write=function(e){this.version=0,this.size=4,this.flags&c.TRUN_FLAGS_DATA_OFFSET&&(this.size+=4),this.flags&c.TRUN_FLAGS_FIRST_FLAG&&(this.size+=4),this.flags&c.TRUN_FLAGS_DURATION&&(this.size+=4*this.sample_duration.length),this.flags&c.TRUN_FLAGS_SIZE&&(this.size+=4*this.sample_size.length),this.flags&c.TRUN_FLAGS_FLAGS&&(this.size+=4*this.sample_flags.length),this.flags&c.TRUN_FLAGS_CTS_OFFSET&&(this.size+=4*this.sample_composition_time_offset.length),this.writeHeader(e),e.writeUint32(this.sample_count),this.flags&c.TRUN_FLAGS_DATA_OFFSET&&(this.data_offset_position=e.getPosition(),e.writeInt32(this.data_offset)),this.flags&c.TRUN_FLAGS_FIRST_FLAG&&e.writeUint32(this.first_sample_flags);for(var t=0;t<this.sample_count;t++)this.flags&c.TRUN_FLAGS_DURATION&&e.writeUint32(this.sample_duration[t]),this.flags&c.TRUN_FLAGS_SIZE&&e.writeUint32(this.sample_size[t]),this.flags&c.TRUN_FLAGS_FLAGS&&e.writeUint32(this.sample_flags[t]),this.flags&c.TRUN_FLAGS_CTS_OFFSET&&(this.version===0?e.writeUint32(this.sample_composition_time_offset[t]):e.writeInt32(this.sample_composition_time_offset[t]))},c[`url Box`].prototype.write=function(e){this.version=0,this.location?(this.flags=0,this.size=this.location.length+1):(this.flags=1,this.size=0),this.writeHeader(e),this.location&&e.writeCString(this.location)},c[`urn Box`].prototype.write=function(e){this.version=0,this.flags=0,this.size=this.name.length+1+(this.location?this.location.length+1:0),this.writeHeader(e),e.writeCString(this.name),this.location&&e.writeCString(this.location)},c.vmhdBox.prototype.write=function(e){this.version=0,this.flags=1,this.size=8,this.writeHeader(e),e.writeUint16(this.graphicsmode),e.writeUint16Array(this.opcolor)},c.cttsBox.prototype.unpack=function(e){var t,n,r=0;for(t=0;t<this.sample_counts.length;t++)for(n=0;n<this.sample_counts[t];n++)e[r].pts=e[r].dts+this.sample_offsets[t],r++},c.sttsBox.prototype.unpack=function(e){var t,n,r=0;for(t=0;t<this.sample_counts.length;t++)for(n=0;n<this.sample_counts[t];n++)r===0?e[r].dts=0:e[r].dts=e[r-1].dts+this.sample_deltas[t],r++},c.stcoBox.prototype.unpack=function(e){var t;for(t=0;t<this.chunk_offsets.length;t++)e[t].offset=this.chunk_offsets[t]},c.stscBox.prototype.unpack=function(e){var t,n,r,a=0,o=0;for(t=0;t<this.first_chunk.length;t++)for(n=0;n<(t+1<this.first_chunk.length?this.first_chunk[t+1]:1/0);n++)for(o++,r=0;r<this.samples_per_chunk[t];r++){if(e[a])e[a].description_index=this.sample_description_index[t],e[a].chunk_index=o;else return;a++}},c.stszBox.prototype.unpack=function(e){var t;for(t=0;t<this.sample_sizes.length;t++)e[t].size=this.sample_sizes[t]},c.DIFF_BOXES_PROP_NAMES=[`boxes`,`entries`,`references`,`subsamples`,`items`,`item_infos`,`extents`,`associations`,`subsegments`,`ranges`,`seekLists`,`seekPoints`,`esd`,`levels`],c.DIFF_PRIMITIVE_ARRAY_PROP_NAMES=[`compatible_brands`,`matrix`,`opcolor`,`sample_counts`,`sample_deltas`,`first_chunk`,`samples_per_chunk`,`sample_sizes`,`chunk_offsets`,`sample_offsets`,`sample_description_index`,`sample_duration`],c.boxEqualFields=function(e,t){if(e&&!t)return!1;for(var n in e)if(c.DIFF_BOXES_PROP_NAMES.indexOf(n)>-1)continue;else if(e[n]instanceof c.Box||t[n]instanceof c.Box)continue;else if(e[n]===void 0||t[n]===void 0)continue;else if(typeof e[n]==`function`||typeof t[n]==`function`)continue;else if(e.subBoxNames&&e.subBoxNames.indexOf(n.slice(0,4))>-1||t.subBoxNames&&t.subBoxNames.indexOf(n.slice(0,4))>-1)continue;else if(n===`data`||n===`start`||n===`size`||n===`creation_time`||n===`modification_time`)continue;else if(c.DIFF_PRIMITIVE_ARRAY_PROP_NAMES.indexOf(n)>-1)continue;else if(e[n]!==t[n])return!1;return!0},c.boxEqual=function(e,t){if(!c.boxEqualFields(e,t))return!1;for(var n=0;n<c.DIFF_BOXES_PROP_NAMES.length;n++){var r=c.DIFF_BOXES_PROP_NAMES[n];if(e[r]&&t[r]&&!c.boxEqual(e[r],t[r]))return!1}return!0};var f=function(){};f.prototype.parseSample=function(e){var t,r,a=new n(e.buffer);for(t=[];!a.isEos();)r=c.parseOneBox(a,!1),r.code===c.OK&&r.box.type===`vttc`&&t.push(r.box);return t},f.prototype.getText=function(e,t,n){function r(e,t,n){return n||=`0`,e+=``,e.length>=t?e:Array(t-e.length+1).join(n)+e}function a(e){var t=Math.floor(e/3600),n=Math.floor((e-t*3600)/60),a=Math.floor(e-t*3600-n*60),o=Math.floor((e-t*3600-n*60-a)*1e3);return``+r(t,2)+`:`+r(n,2)+`:`+r(a,2)+`.`+r(o,3)}for(var o=this.parseSample(n),s=``,c=0;c<o.length;c++){var l=o[c];s+=a(e)+` --> `+a(t)+`\r
|
|
114
114
|
`,s+=l.payl.text}return s};var p=function(){};p.prototype.parseSample=function(e){var t={},r;t.resources=[];var a=new n(e.data.buffer);if(!e.subsamples||e.subsamples.length===0)t.documentString=a.readString(e.data.length);else if(t.documentString=a.readString(e.subsamples[0].size),e.subsamples.length>1)for(r=1;r<e.subsamples.length;r++)t.resources[r]=a.readUint8Array(e.subsamples[r].size);return typeof DOMParser<`u`&&(t.document=new DOMParser().parseFromString(t.documentString,`application/xml`)),t};var m=function(){};m.prototype.parseSample=function(e){return new n(e.data.buffer).readString(e.data.length)},m.prototype.parseConfig=function(e){var t,r=new n(e.buffer);return r.readUint32(),t=r.readCString(),t},e!==void 0&&(e.VTTin4Parser=f,e.XMLSubtitlein4Parser=p,e.Textin4Parser=m);var h=function(e){this.stream=e||new o,this.boxes=[],this.mdats=[],this.moofs=[],this.isProgressive=!1,this.moovStartFound=!1,this.onMoovStart=null,this.moovStartSent=!1,this.onReady=null,this.readySent=!1,this.onSegment=null,this.onSamples=null,this.onError=null,this.sampleListBuilt=!1,this.fragmentedTracks=[],this.extractedTracks=[],this.isFragmentationInitialized=!1,this.sampleProcessingStarted=!1,this.nextMoofNumber=0,this.itemListBuilt=!1,this.items=[],this.entity_groups=[],this.onSidx=null,this.sidxSent=!1};h.prototype.setSegmentOptions=function(e,t,n){var r=this.getTrackById(e);if(r){var a={};this.fragmentedTracks.push(a),a.id=e,a.user=t,a.trak=r,r.nextSample=0,a.segmentStream=null,a.nb_samples=1e3,a.rapAlignement=!0,n&&(n.nbSamples&&(a.nb_samples=n.nbSamples),n.rapAlignement&&(a.rapAlignement=n.rapAlignement))}},h.prototype.unsetSegmentOptions=function(e){for(var t=-1,n=0;n<this.fragmentedTracks.length;n++)this.fragmentedTracks[n].id==e&&(t=n);t>-1&&this.fragmentedTracks.splice(t,1)},h.prototype.setExtractionOptions=function(e,t,n){var r=this.getTrackById(e);if(r){var a={};this.extractedTracks.push(a),a.id=e,a.user=t,a.trak=r,r.nextSample=0,a.nb_samples=1e3,a.samples=[],n&&n.nbSamples&&(a.nb_samples=n.nbSamples)}},h.prototype.unsetExtractionOptions=function(e){for(var t=-1,n=0;n<this.extractedTracks.length;n++)this.extractedTracks[n].id==e&&(t=n);t>-1&&this.extractedTracks.splice(t,1)},h.prototype.parse=function(){var e,n,r=!1;if(!(this.restoreParsePosition&&!this.restoreParsePosition()))for(;;)if(this.hasIncompleteMdat&&this.hasIncompleteMdat()){if(this.processIncompleteMdat())continue;return}else if(this.saveParsePosition&&this.saveParsePosition(),e=c.parseOneBox(this.stream,r),e.code===c.ERR_NOT_ENOUGH_DATA)if(this.processIncompleteBox){if(this.processIncompleteBox(e))continue;return}else return;else{var a;switch(n=e.box,a=n.type===`uuid`?n.uuid:n.type,this.boxes.push(n),a){case`mdat`:this.mdats.push(n);break;case`moof`:this.moofs.push(n);break;case`moov`:this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0);default:this[a]!==void 0&&t.warn(`ISOFile`,`Duplicate Box of type: `+a+`, overriding previous occurrence`),this[a]=n;break}this.updateUsedBytes&&this.updateUsedBytes(n,e)}},h.prototype.checkBuffer=function(e){if(e==null)throw`Buffer must be defined and non empty`;if(e.fileStart===void 0)throw`Buffer must have a fileStart property`;return e.byteLength===0?(t.warn(`ISOFile`,`Ignoring empty buffer (fileStart: `+e.fileStart+`)`),this.stream.logBufferLevel(),!1):(t.info(`ISOFile`,`Processing buffer (fileStart: `+e.fileStart+`)`),e.usedBytes=0,this.stream.insertBuffer(e),this.stream.logBufferLevel(),this.stream.initialized()?!0:(t.warn(`ISOFile`,`Not ready to start parsing`),!1))},h.prototype.appendBuffer=function(e,n){var r;if(this.checkBuffer(e))return this.parse(),this.moovStartFound&&!this.moovStartSent&&(this.moovStartSent=!0,this.onMoovStart&&this.onMoovStart()),this.moov?(this.sampleListBuilt||=(this.buildSampleLists(),!0),this.updateSampleLists(),this.onReady&&!this.readySent&&(this.readySent=!0,this.onReady(this.getInfo())),this.processSamples(n),this.nextSeekPosition?(r=this.nextSeekPosition,this.nextSeekPosition=void 0):r=this.nextParsePosition,this.stream.getEndFilePositionAfter&&(r=this.stream.getEndFilePositionAfter(r))):r=this.nextParsePosition?this.nextParsePosition:0,this.sidx&&this.onSidx&&!this.sidxSent&&(this.onSidx(this.sidx),this.sidxSent=!0),this.meta&&(this.flattenItemInfo&&!this.itemListBuilt&&(this.flattenItemInfo(),this.itemListBuilt=!0),this.processItems&&this.processItems(this.onItem)),this.stream.cleanBuffers&&(t.info(`ISOFile`,`Done processing buffer (fileStart: `+e.fileStart+`) - next buffer to fetch should have a fileStart position of `+r),this.stream.logBufferLevel(),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0),t.info(`ISOFile`,`Sample data size in memory: `+this.getAllocatedSampleDataSize())),r},h.prototype.getInfo=function(){var e,t,n={},r,a,o,s,c=new Date(`1904-01-01T00:00:00Z`).getTime();if(this.moov)for(n.hasMoov=!0,n.duration=this.moov.mvhd.duration,n.timescale=this.moov.mvhd.timescale,n.isFragmented=this.moov.mvex!=null,n.isFragmented&&this.moov.mvex.mehd&&(n.fragment_duration=this.moov.mvex.mehd.fragment_duration),n.isProgressive=this.isProgressive,n.hasIOD=this.moov.iods!=null,n.brands=[],n.brands.push(this.ftyp.major_brand),n.brands=n.brands.concat(this.ftyp.compatible_brands),n.created=new Date(c+this.moov.mvhd.creation_time*1e3),n.modified=new Date(c+this.moov.mvhd.modification_time*1e3),n.tracks=[],n.audioTracks=[],n.videoTracks=[],n.subtitleTracks=[],n.metadataTracks=[],n.hintTracks=[],n.otherTracks=[],e=0;e<this.moov.traks.length;e++){if(r=this.moov.traks[e],s=r.mdia.minf.stbl.stsd.entries[0],a={},n.tracks.push(a),a.id=r.tkhd.track_id,a.name=r.mdia.hdlr.name,a.references=[],r.tref)for(t=0;t<r.tref.boxes.length;t++)o={},a.references.push(o),o.type=r.tref.boxes[t].type,o.track_ids=r.tref.boxes[t].track_ids;r.edts&&(a.edits=r.edts.elst.entries),a.created=new Date(c+r.tkhd.creation_time*1e3),a.modified=new Date(c+r.tkhd.modification_time*1e3),a.movie_duration=r.tkhd.duration,a.movie_timescale=n.timescale,a.layer=r.tkhd.layer,a.alternate_group=r.tkhd.alternate_group,a.volume=r.tkhd.volume,a.matrix=r.tkhd.matrix,a.track_width=r.tkhd.width/65536,a.track_height=r.tkhd.height/65536,a.timescale=r.mdia.mdhd.timescale,a.cts_shift=r.mdia.minf.stbl.cslg,a.duration=r.mdia.mdhd.duration,a.samples_duration=r.samples_duration,a.codec=s.getCodec(),a.kind=r.udta&&r.udta.kinds.length?r.udta.kinds[0]:{schemeURI:``,value:``},a.language=r.mdia.elng?r.mdia.elng.extended_language:r.mdia.mdhd.languageString,a.nb_samples=r.samples.length,a.size=r.samples_size,a.bitrate=a.size*8*a.timescale/a.samples_duration,s.isAudio()?(a.type=`audio`,n.audioTracks.push(a),a.audio={},a.audio.sample_rate=s.getSampleRate(),a.audio.channel_count=s.getChannelCount(),a.audio.sample_size=s.getSampleSize()):s.isVideo()?(a.type=`video`,n.videoTracks.push(a),a.video={},a.video.width=s.getWidth(),a.video.height=s.getHeight()):s.isSubtitle()?(a.type=`subtitles`,n.subtitleTracks.push(a)):s.isHint()?(a.type=`metadata`,n.hintTracks.push(a)):s.isMetadata()?(a.type=`metadata`,n.metadataTracks.push(a)):(a.type=`metadata`,n.otherTracks.push(a))}else n.hasMoov=!1;if(n.mime=``,n.hasMoov&&n.tracks){for(n.videoTracks&&n.videoTracks.length>0?n.mime+=`video/mp4; codecs="`:n.audioTracks&&n.audioTracks.length>0?n.mime+=`audio/mp4; codecs="`:n.mime+=`application/mp4; codecs="`,e=0;e<n.tracks.length;e++)e!==0&&(n.mime+=`,`),n.mime+=n.tracks[e].codec;n.mime+=`"; profiles="`,n.mime+=this.ftyp.compatible_brands.join(),n.mime+=`"`}return n},h.prototype.setNextSeekPositionFromSample=function(e){e&&(this.nextSeekPosition?this.nextSeekPosition=Math.min(e.offset+e.alreadyRead,this.nextSeekPosition):this.nextSeekPosition=e.offset+e.alreadyRead)},h.prototype.processSamples=function(e){var n,r;if(this.sampleProcessingStarted){if(this.isFragmentationInitialized&&this.onSegment!==null)for(n=0;n<this.fragmentedTracks.length;n++){var a=this.fragmentedTracks[n];for(r=a.trak;r.nextSample<r.samples.length&&this.sampleProcessingStarted;){t.debug(`ISOFile`,`Creating media fragment on track #`+a.id+` for sample `+r.nextSample);var o=this.createFragment(a.id,r.nextSample,a.segmentStream);if(o)a.segmentStream=o,r.nextSample++;else break;if((r.nextSample%a.nb_samples===0||e||r.nextSample>=r.samples.length)&&(t.info(`ISOFile`,`Sending fragmented data on track #`+a.id+` for samples [`+Math.max(0,r.nextSample-a.nb_samples)+`,`+(r.nextSample-1)+`]`),t.info(`ISOFile`,`Sample data size in memory: `+this.getAllocatedSampleDataSize()),this.onSegment&&this.onSegment(a.id,a.user,a.segmentStream.buffer,r.nextSample,e||r.nextSample>=r.samples.length),a.segmentStream=null,a!==this.fragmentedTracks[n]))break}}if(this.onSamples!==null)for(n=0;n<this.extractedTracks.length;n++){var s=this.extractedTracks[n];for(r=s.trak;r.nextSample<r.samples.length&&this.sampleProcessingStarted;){t.debug(`ISOFile`,`Exporting on track #`+s.id+` sample #`+r.nextSample);var c=this.getSample(r,r.nextSample);if(c)r.nextSample++,s.samples.push(c);else{this.setNextSeekPositionFromSample(r.samples[r.nextSample]);break}if((r.nextSample%s.nb_samples===0||r.nextSample>=r.samples.length)&&(t.debug(`ISOFile`,`Sending samples on track #`+s.id+` for sample `+r.nextSample),this.onSamples&&this.onSamples(s.id,s.user,s.samples),s.samples=[],s!==this.extractedTracks[n]))break}}}},h.prototype.getBox=function(e){var t=this.getBoxes(e,!0);return t.length?t[0]:null},h.prototype.getBoxes=function(e,t){var n=[];return h._sweep.call(this,e,n,t),n},h._sweep=function(e,t,n){for(var r in this.type&&this.type==e&&t.push(this),this.boxes){if(t.length&&n)return;h._sweep.call(this.boxes[r],e,t,n)}},h.prototype.getTrackSamplesInfo=function(e){var t=this.getTrackById(e);if(t)return t.samples},h.prototype.getTrackSample=function(e,t){var n=this.getTrackById(e);return this.getSample(n,t)},h.prototype.releaseUsedSamples=function(e,n){var r=0,a=this.getTrackById(e);a.lastValidSample||=0;for(var o=a.lastValidSample;o<n;o++)r+=this.releaseSample(a,o);t.info(`ISOFile`,`Track #`+e+` released samples up to `+n+` (released size: `+r+`, remaining: `+this.samplesDataSize+`)`),a.lastValidSample=n},h.prototype.start=function(){this.sampleProcessingStarted=!0,this.processSamples(!1)},h.prototype.stop=function(){this.sampleProcessingStarted=!1},h.prototype.flush=function(){t.info(`ISOFile`,`Flushing remaining samples`),this.updateSampleLists(),this.processSamples(!0),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0)},h.prototype.seekTrack=function(e,n,r){var a,o,s=1/0,c=0,l=0,u;if(r.samples.length===0)return t.info(`ISOFile`,`No sample in track, cannot seek! Using time `+t.getDurationString(0,1)+` and offset: 0`),{offset:0,time:0};for(a=0;a<r.samples.length;a++){if(o=r.samples[a],a===0)l=0,u=o.timescale;else if(o.cts>e*o.timescale){l=a-1;break}n&&o.is_sync&&(c=a)}for(n&&(l=c),e=r.samples[l].cts,r.nextSample=l;r.samples[l].alreadyRead===r.samples[l].size&&r.samples[l+1];)l++;return s=r.samples[l].offset+r.samples[l].alreadyRead,t.info(`ISOFile`,`Seeking to `+(n?`RAP`:``)+` sample #`+r.nextSample+` on track `+r.tkhd.track_id+`, time `+t.getDurationString(e,u)+` and offset: `+s),{offset:s,time:e/u}},h.prototype.getTrackDuration=function(e){var t;return e.samples?(t=e.samples[e.samples.length-1],(t.cts+t.duration)/t.timescale):1/0},h.prototype.seek=function(e,n){var r=this.moov,a,o,s,c={offset:1/0,time:1/0};if(this.moov){for(s=0;s<r.traks.length;s++)a=r.traks[s],!(e>this.getTrackDuration(a))&&(o=this.seekTrack(e,n,a),o.offset<c.offset&&(c.offset=o.offset),o.time<c.time&&(c.time=o.time));return t.info(`ISOFile`,`Seeking at time `+t.getDurationString(c.time,1)+` needs a buffer with a fileStart position of `+c.offset),c.offset===1/0?c={offset:this.nextParsePosition,time:0}:c.offset=this.stream.getEndFilePositionAfter(c.offset),t.info(`ISOFile`,`Adjusted seek position (after checking data already in buffer): `+c.offset),c}else throw`Cannot seek: moov not received!`},h.prototype.equal=function(e){for(var t=0;t<this.boxes.length&&t<e.boxes.length;){var n=this.boxes[t],r=e.boxes[t];if(!c.boxEqual(n,r))return!1;t++}return!0},e!==void 0&&(e.ISOFile=h),h.prototype.lastBoxStartPosition=0,h.prototype.parsingMdat=null,h.prototype.nextParsePosition=0,h.prototype.discardMdatData=!1,h.prototype.processIncompleteBox=function(e){var t,n,r;return e.type===`mdat`?(t=new c[e.type+`Box`](e.size),this.parsingMdat=t,this.boxes.push(t),this.mdats.push(t),t.start=e.start,t.hdr_size=e.hdr_size,this.stream.addUsedBytes(t.hdr_size),this.lastBoxStartPosition=t.start+t.size,r=this.stream.seek(t.start+t.size,!1,this.discardMdatData),r?(this.parsingMdat=null,!0):(this.moovStartFound?this.nextParsePosition=this.stream.findEndContiguousBuf():this.nextParsePosition=t.start+t.size,!1)):(e.type===`moov`&&(this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0)),n=this.stream.mergeNextBuffer?this.stream.mergeNextBuffer():!1,n?(this.nextParsePosition=this.stream.getEndPosition(),!0):(e.type?this.moovStartFound?this.nextParsePosition=this.stream.getEndPosition():this.nextParsePosition=this.stream.getPosition()+e.size:this.nextParsePosition=this.stream.getEndPosition(),!1))},h.prototype.hasIncompleteMdat=function(){return this.parsingMdat!==null},h.prototype.processIncompleteMdat=function(){var e=this.parsingMdat;return this.stream.seek(e.start+e.size,!1,this.discardMdatData)?(t.debug(`ISOFile`,`Found 'mdat' end in buffered data`),this.parsingMdat=null,!0):(this.nextParsePosition=this.stream.findEndContiguousBuf(),!1)},h.prototype.restoreParsePosition=function(){return this.stream.seek(this.lastBoxStartPosition,!0,this.discardMdatData)},h.prototype.saveParsePosition=function(){this.lastBoxStartPosition=this.stream.getPosition()},h.prototype.updateUsedBytes=function(e,t){this.stream.addUsedBytes&&(e.type===`mdat`?(this.stream.addUsedBytes(e.hdr_size),this.discardMdatData&&this.stream.addUsedBytes(e.size-e.hdr_size)):this.stream.addUsedBytes(e.size))},h.prototype.add=c.Box.prototype.add,h.prototype.addBox=c.Box.prototype.addBox,h.prototype.init=function(e){var t=e||{};this.add(`ftyp`).set(`major_brand`,t.brands&&t.brands[0]||`iso4`).set(`minor_version`,0).set(`compatible_brands`,t.brands||[`iso4`]);var n=this.add(`moov`);return n.add(`mvhd`).set(`timescale`,t.timescale||600).set(`rate`,t.rate||65536).set(`creation_time`,0).set(`modification_time`,0).set(`duration`,t.duration||0).set(`volume`,t.width?0:256).set(`matrix`,[65536,0,0,0,65536,0,0,0,1073741824]).set(`next_track_id`,1),n.add(`mvex`),this},h.prototype.addTrack=function(e){this.moov||this.init(e);var t=e||{};t.width=t.width||320,t.height=t.height||320,t.id=t.id||this.moov.mvhd.next_track_id,t.type=t.type||`avc1`;var r=this.moov.add(`trak`);this.moov.mvhd.next_track_id=t.id+1,r.add(`tkhd`).set(`flags`,c.TKHD_FLAG_ENABLED|c.TKHD_FLAG_IN_MOVIE|c.TKHD_FLAG_IN_PREVIEW).set(`creation_time`,0).set(`modification_time`,0).set(`track_id`,t.id).set(`duration`,t.duration||0).set(`layer`,t.layer||0).set(`alternate_group`,0).set(`volume`,1).set(`matrix`,[65536,0,0,0,65536,0,0,0,1073741824]).set(`width`,t.width<<16).set(`height`,t.height<<16);var a=r.add(`mdia`);a.add(`mdhd`).set(`creation_time`,0).set(`modification_time`,0).set(`timescale`,t.timescale||1).set(`duration`,t.media_duration||0).set(`language`,t.language||`und`),a.add(`hdlr`).set(`handler`,t.hdlr||`vide`).set(`name`,t.name||`Track created with MP4Box.js`),a.add(`elng`).set(`extended_language`,t.language||`fr-FR`);var o=a.add(`minf`);if(c[t.type+`SampleEntry`]!==void 0){var s=new c[t.type+`SampleEntry`];s.data_reference_index=1;var l=``;for(var u in c.sampleEntryCodes)for(var d=c.sampleEntryCodes[u],f=0;f<d.length;f++)if(d.indexOf(t.type)>-1){l=u;break}switch(l){case`Visual`:if(o.add(`vmhd`).set(`graphicsmode`,0).set(`opcolor`,[0,0,0]),s.set(`width`,t.width).set(`height`,t.height).set(`horizresolution`,72<<16).set(`vertresolution`,72<<16).set(`frame_count`,1).set(`compressorname`,t.type+` Compressor`).set(`depth`,24),t.avcDecoderConfigRecord){var p=new c.avcCBox;p.parse(new n(t.avcDecoderConfigRecord)),s.addBox(p)}else if(t.hevcDecoderConfigRecord){var m=new c.hvcCBox;m.parse(new n(t.hevcDecoderConfigRecord)),s.addBox(m)}break;case`Audio`:o.add(`smhd`).set(`balance`,t.balance||0),s.set(`channel_count`,t.channel_count||2).set(`samplesize`,t.samplesize||16).set(`samplerate`,t.samplerate||65536);break;case`Hint`:o.add(`hmhd`);break;case`Subtitle`:switch(o.add(`sthd`),t.type){case`stpp`:s.set(`namespace`,t.namespace||`nonamespace`).set(`schema_location`,t.schema_location||``).set(`auxiliary_mime_types`,t.auxiliary_mime_types||``);break}break;case`Metadata`:o.add(`nmhd`);break;case`System`:o.add(`nmhd`);break;default:o.add(`nmhd`);break}t.description&&s.addBox(t.description),t.description_boxes&&t.description_boxes.forEach(function(e){s.addBox(e)}),o.add(`dinf`).add(`dref`).addEntry(new c[`url Box`]().set(`flags`,1));var h=o.add(`stbl`);return h.add(`stsd`).addEntry(s),h.add(`stts`).set(`sample_counts`,[]).set(`sample_deltas`,[]),h.add(`stsc`).set(`first_chunk`,[]).set(`samples_per_chunk`,[]).set(`sample_description_index`,[]),h.add(`stco`).set(`chunk_offsets`,[]),h.add(`stsz`).set(`sample_sizes`,[]),this.moov.mvex.add(`trex`).set(`track_id`,t.id).set(`default_sample_description_index`,t.default_sample_description_index||1).set(`default_sample_duration`,t.default_sample_duration||0).set(`default_sample_size`,t.default_sample_size||0).set(`default_sample_flags`,t.default_sample_flags||0),this.buildTrakSampleLists(r),t.id}},c.Box.prototype.computeSize=function(e){var t=e||new r;t.endianness=r.BIG_ENDIAN,this.write(t)},h.prototype.addSample=function(e,t,n){var r=n||{},a={},o=this.getTrackById(e);if(o!==null){a.number=o.samples.length,a.track_id=o.tkhd.track_id,a.timescale=o.mdia.mdhd.timescale,a.description_index=r.sample_description_index?r.sample_description_index-1:0,a.description=o.mdia.minf.stbl.stsd.entries[a.description_index],a.data=t,a.size=t.byteLength,a.alreadyRead=a.size,a.duration=r.duration||1,a.cts=r.cts||0,a.dts=r.dts||0,a.is_sync=r.is_sync||!1,a.is_leading=r.is_leading||0,a.depends_on=r.depends_on||0,a.is_depended_on=r.is_depended_on||0,a.has_redundancy=r.has_redundancy||0,a.degradation_priority=r.degradation_priority||0,a.offset=0,a.subsamples=r.subsamples,o.samples.push(a),o.samples_size+=a.size,o.samples_duration+=a.duration,o.first_dts===void 0&&(o.first_dts=r.dts),this.processSamples();var s=this.createSingleSampleMoof(a);return this.addBox(s),s.computeSize(),s.trafs[0].truns[0].data_offset=s.size+8,this.add(`mdat`).data=new Uint8Array(t),a}},h.prototype.createSingleSampleMoof=function(e){var t=0;t=e.is_sync?1<<25:65536;var n=new c.moofBox;n.add(`mfhd`).set(`sequence_number`,this.nextMoofNumber),this.nextMoofNumber++;var r=n.add(`traf`),a=this.getTrackById(e.track_id);return r.add(`tfhd`).set(`track_id`,e.track_id).set(`flags`,c.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),r.add(`tfdt`).set(`baseMediaDecodeTime`,e.dts-(a.first_dts||0)),r.add(`trun`).set(`flags`,c.TRUN_FLAGS_DATA_OFFSET|c.TRUN_FLAGS_DURATION|c.TRUN_FLAGS_SIZE|c.TRUN_FLAGS_FLAGS|c.TRUN_FLAGS_CTS_OFFSET).set(`data_offset`,0).set(`first_sample_flags`,0).set(`sample_count`,1).set(`sample_duration`,[e.duration]).set(`sample_size`,[e.size]).set(`sample_flags`,[t]).set(`sample_composition_time_offset`,[e.cts-e.dts]),n},h.prototype.lastMoofIndex=0,h.prototype.samplesDataSize=0,h.prototype.resetTables=function(){var e,t,n,r,a,o,s,c;for(this.initial_duration=this.moov.mvhd.duration,this.moov.mvhd.duration=0,e=0;e<this.moov.traks.length;e++){t=this.moov.traks[e],t.tkhd.duration=0,t.mdia.mdhd.duration=0,n=t.mdia.minf.stbl.stco||t.mdia.minf.stbl.co64,n.chunk_offsets=[],r=t.mdia.minf.stbl.stsc,r.first_chunk=[],r.samples_per_chunk=[],r.sample_description_index=[],a=t.mdia.minf.stbl.stsz||t.mdia.minf.stbl.stz2,a.sample_sizes=[],o=t.mdia.minf.stbl.stts,o.sample_counts=[],o.sample_deltas=[],s=t.mdia.minf.stbl.ctts,s&&(s.sample_counts=[],s.sample_offsets=[]),c=t.mdia.minf.stbl.stss;var l=t.mdia.minf.stbl.boxes.indexOf(c);l!=-1&&(t.mdia.minf.stbl.boxes[l]=null)}},h.initSampleGroups=function(e,t,n,r,a){var o,s,c,l;function u(e,t,n){this.grouping_type=e,this.grouping_type_parameter=t,this.sbgp=n,this.last_sample_in_run=-1,this.entry_index=-1}for(t&&(t.sample_groups_info=[]),e.sample_groups_info||=[],s=0;s<n.length;s++){for(l=n[s].grouping_type+`/`+n[s].grouping_type_parameter,c=new u(n[s].grouping_type,n[s].grouping_type_parameter,n[s]),t&&(t.sample_groups_info[l]=c),e.sample_groups_info[l]||(e.sample_groups_info[l]=c),o=0;o<r.length;o++)r[o].grouping_type===n[s].grouping_type&&(c.description=r[o],c.description.used=!0);if(a)for(o=0;o<a.length;o++)a[o].grouping_type===n[s].grouping_type&&(c.fragment_description=a[o],c.fragment_description.used=!0,c.is_fragment=!0)}if(!t)for(s=0;s<r.length;s++)!r[s].used&&r[s].version>=2&&(l=r[s].grouping_type+`/0`,c=new u(r[s].grouping_type,0),e.sample_groups_info[l]||(e.sample_groups_info[l]=c));else if(a)for(s=0;s<a.length;s++)!a[s].used&&a[s].version>=2&&(l=a[s].grouping_type+`/0`,c=new u(a[s].grouping_type,0),c.is_fragment=!0,t.sample_groups_info[l]||(t.sample_groups_info[l]=c))},h.setSampleGroupProperties=function(e,t,n,r){var a,o;for(a in t.sample_groups=[],r)if(t.sample_groups[a]={},t.sample_groups[a].grouping_type=r[a].grouping_type,t.sample_groups[a].grouping_type_parameter=r[a].grouping_type_parameter,n>=r[a].last_sample_in_run&&(r[a].last_sample_in_run<0&&(r[a].last_sample_in_run=0),r[a].entry_index++,r[a].entry_index<=r[a].sbgp.entries.length-1&&(r[a].last_sample_in_run+=r[a].sbgp.entries[r[a].entry_index].sample_count)),r[a].entry_index<=r[a].sbgp.entries.length-1?t.sample_groups[a].group_description_index=r[a].sbgp.entries[r[a].entry_index].group_description_index:t.sample_groups[a].group_description_index=-1,t.sample_groups[a].group_description_index!==0){var s=r[a].fragment_description?r[a].fragment_description:r[a].description;t.sample_groups[a].group_description_index>0?(o=t.sample_groups[a].group_description_index>65535?(t.sample_groups[a].group_description_index>>16)-1:t.sample_groups[a].group_description_index-1,s&&o>=0&&(t.sample_groups[a].description=s.entries[o])):s&&s.version>=2&&s.default_group_description_index>0&&(t.sample_groups[a].description=s.entries[s.default_group_description_index-1])}},h.process_sdtp=function(e,t,n){t&&(e?(t.is_leading=e.is_leading[n],t.depends_on=e.sample_depends_on[n],t.is_depended_on=e.sample_is_depended_on[n],t.has_redundancy=e.sample_has_redundancy[n]):(t.is_leading=0,t.depends_on=0,t.is_depended_on=0,t.has_redundancy=0))},h.prototype.buildSampleLists=function(){var e,t;for(e=0;e<this.moov.traks.length;e++)t=this.moov.traks[e],this.buildTrakSampleLists(t)},h.prototype.buildTrakSampleLists=function(e){var t,n,r,a,o,s,c,l,u,d,f,p,m,g,_,v,y,b,x,S,C,w,T,E;if(e.samples=[],e.samples_duration=0,e.samples_size=0,n=e.mdia.minf.stbl.stco||e.mdia.minf.stbl.co64,r=e.mdia.minf.stbl.stsc,a=e.mdia.minf.stbl.stsz||e.mdia.minf.stbl.stz2,o=e.mdia.minf.stbl.stts,s=e.mdia.minf.stbl.ctts,c=e.mdia.minf.stbl.stss,l=e.mdia.minf.stbl.stsd,u=e.mdia.minf.stbl.subs,p=e.mdia.minf.stbl.stdp,d=e.mdia.minf.stbl.sbgps,f=e.mdia.minf.stbl.sgpds,b=-1,x=-1,S=-1,C=-1,w=0,T=0,E=0,h.initSampleGroups(e,null,d,f),a!==void 0){for(t=0;t<a.sample_sizes.length;t++){var D={};D.number=t,D.track_id=e.tkhd.track_id,D.timescale=e.mdia.mdhd.timescale,D.alreadyRead=0,e.samples[t]=D,D.size=a.sample_sizes[t],e.samples_size+=D.size,t===0?(g=1,m=0,D.chunk_index=g,D.chunk_run_index=m,y=r.samples_per_chunk[m],v=0,_=m+1<r.first_chunk.length?r.first_chunk[m+1]-1:1/0):t<y?(D.chunk_index=g,D.chunk_run_index=m):(g++,D.chunk_index=g,v=0,g<=_||(m++,_=m+1<r.first_chunk.length?r.first_chunk[m+1]-1:1/0),D.chunk_run_index=m,y+=r.samples_per_chunk[m]),D.description_index=r.sample_description_index[D.chunk_run_index]-1,D.description=l.entries[D.description_index],D.offset=n.chunk_offsets[D.chunk_index-1]+v,v+=D.size,t>b&&(x++,b<0&&(b=0),b+=o.sample_counts[x]),t>0?(e.samples[t-1].duration=o.sample_deltas[x],e.samples_duration+=e.samples[t-1].duration,D.dts=e.samples[t-1].dts+e.samples[t-1].duration):D.dts=0,s?(t>=S&&(C++,S<0&&(S=0),S+=s.sample_counts[C]),D.cts=e.samples[t].dts+s.sample_offsets[C]):D.cts=D.dts,c?(t==c.sample_numbers[w]-1?(D.is_sync=!0,w++):(D.is_sync=!1,D.degradation_priority=0),u&&u.entries[T].sample_delta+E==t+1&&(D.subsamples=u.entries[T].subsamples,E+=u.entries[T].sample_delta,T++)):D.is_sync=!0,h.process_sdtp(e.mdia.minf.stbl.sdtp,D,D.number),p?D.degradation_priority=p.priority[t]:D.degradation_priority=0,u&&u.entries[T].sample_delta+E==t&&(D.subsamples=u.entries[T].subsamples,E+=u.entries[T].sample_delta),(d.length>0||f.length>0)&&h.setSampleGroupProperties(e,D,t,e.sample_groups_info)}t>0&&(e.samples[t-1].duration=Math.max(e.mdia.mdhd.duration-e.samples[t-1].dts,0),e.samples_duration+=e.samples[t-1].duration)}},h.prototype.updateSampleLists=function(){var e,t,n,r,a,o,s,l,u,d,f,p,m,g,_;if(this.moov!==void 0){for(;this.lastMoofIndex<this.moofs.length;)if(u=this.moofs[this.lastMoofIndex],this.lastMoofIndex++,u.type==`moof`)for(d=u,e=0;e<d.trafs.length;e++){for(f=d.trafs[e],p=this.getTrackById(f.tfhd.track_id),m=this.getTrexById(f.tfhd.track_id),r=f.tfhd.flags&c.TFHD_FLAG_SAMPLE_DESC?f.tfhd.default_sample_description_index:m?m.default_sample_description_index:1,a=f.tfhd.flags&c.TFHD_FLAG_SAMPLE_DUR?f.tfhd.default_sample_duration:m?m.default_sample_duration:0,o=f.tfhd.flags&c.TFHD_FLAG_SAMPLE_SIZE?f.tfhd.default_sample_size:m?m.default_sample_size:0,s=f.tfhd.flags&c.TFHD_FLAG_SAMPLE_FLAGS?f.tfhd.default_sample_flags:m?m.default_sample_flags:0,f.sample_number=0,f.sbgps.length>0&&h.initSampleGroups(p,f,f.sbgps,p.mdia.minf.stbl.sgpds,f.sgpds),t=0;t<f.truns.length;t++){var v=f.truns[t];for(n=0;n<v.sample_count;n++){g={},g.moof_number=this.lastMoofIndex,g.number_in_traf=f.sample_number,f.sample_number++,g.number=p.samples.length,f.first_sample_index=p.samples.length,p.samples.push(g),g.track_id=p.tkhd.track_id,g.timescale=p.mdia.mdhd.timescale,g.description_index=r-1,g.description=p.mdia.minf.stbl.stsd.entries[g.description_index],g.size=o,v.flags&c.TRUN_FLAGS_SIZE&&(g.size=v.sample_size[n]),p.samples_size+=g.size,g.duration=a,v.flags&c.TRUN_FLAGS_DURATION&&(g.duration=v.sample_duration[n]),p.samples_duration+=g.duration,p.first_traf_merged||n>0?g.dts=p.samples[p.samples.length-2].dts+p.samples[p.samples.length-2].duration:(f.tfdt?g.dts=f.tfdt.baseMediaDecodeTime:g.dts=0,p.first_traf_merged=!0),g.cts=g.dts,v.flags&c.TRUN_FLAGS_CTS_OFFSET&&(g.cts=g.dts+v.sample_composition_time_offset[n]),_=s,v.flags&c.TRUN_FLAGS_FLAGS?_=v.sample_flags[n]:n===0&&v.flags&c.TRUN_FLAGS_FIRST_FLAG&&(_=v.first_sample_flags),g.is_sync=!(_>>16&1),g.is_leading=_>>26&3,g.depends_on=_>>24&3,g.is_depended_on=_>>22&3,g.has_redundancy=_>>20&3,g.degradation_priority=_&65535;var y=!!(f.tfhd.flags&c.TFHD_FLAG_BASE_DATA_OFFSET),b=!!(f.tfhd.flags&c.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),x=!!(v.flags&c.TRUN_FLAGS_DATA_OFFSET),S=0;S=y?f.tfhd.base_data_offset:b||t===0?d.start:l,t===0&&n===0?x?g.offset=S+v.data_offset:g.offset=S:g.offset=l,l=g.offset+g.size,(f.sbgps.length>0||f.sgpds.length>0||p.mdia.minf.stbl.sbgps.length>0||p.mdia.minf.stbl.sgpds.length>0)&&h.setSampleGroupProperties(p,g,g.number_in_traf,f.sample_groups_info)}}if(f.subs){p.has_fragment_subsamples=!0;var C=f.first_sample_index;for(t=0;t<f.subs.entries.length;t++)C+=f.subs.entries[t].sample_delta,g=p.samples[C-1],g.subsamples=f.subs.entries[t].subsamples}}}},h.prototype.getSample=function(e,n){var a,o=e.samples[n];if(!this.moov)return null;if(!o.data)o.data=new Uint8Array(o.size),o.alreadyRead=0,this.samplesDataSize+=o.size,t.debug(`ISOFile`,`Allocating sample #`+n+` on track #`+e.tkhd.track_id+` of size `+o.size+` (total: `+this.samplesDataSize+`)`);else if(o.alreadyRead==o.size)return o;for(;;){var s=this.stream.findPosition(!0,o.offset+o.alreadyRead,!1);if(s>-1){a=this.stream.buffers[s];var c=a.byteLength-(o.offset+o.alreadyRead-a.fileStart);if(o.size-o.alreadyRead<=c)return t.debug(`ISOFile`,`Getting sample #`+n+` data (alreadyRead: `+o.alreadyRead+` offset: `+(o.offset+o.alreadyRead-a.fileStart)+` read size: `+(o.size-o.alreadyRead)+` full size: `+o.size+`)`),r.memcpy(o.data.buffer,o.alreadyRead,a,o.offset+o.alreadyRead-a.fileStart,o.size-o.alreadyRead),a.usedBytes+=o.size-o.alreadyRead,this.stream.logBufferLevel(),o.alreadyRead=o.size,o;if(c===0)return null;t.debug(`ISOFile`,`Getting sample #`+n+` partial data (alreadyRead: `+o.alreadyRead+` offset: `+(o.offset+o.alreadyRead-a.fileStart)+` read size: `+c+` full size: `+o.size+`)`),r.memcpy(o.data.buffer,o.alreadyRead,a,o.offset+o.alreadyRead-a.fileStart,c),o.alreadyRead+=c,a.usedBytes+=c,this.stream.logBufferLevel()}else return null}},h.prototype.releaseSample=function(e,t){var n=e.samples[t];return n.data?(this.samplesDataSize-=n.size,n.data=null,n.alreadyRead=0,n.size):0},h.prototype.getAllocatedSampleDataSize=function(){return this.samplesDataSize},h.prototype.getCodecs=function(){var e,t=``;for(e=0;e<this.moov.traks.length;e++){var n=this.moov.traks[e];e>0&&(t+=`,`),t+=n.mdia.minf.stbl.stsd.entries[0].getCodec()}return t},h.prototype.getTrexById=function(e){var t;if(!this.moov||!this.moov.mvex)return null;for(t=0;t<this.moov.mvex.trexs.length;t++){var n=this.moov.mvex.trexs[t];if(n.track_id==e)return n}return null},h.prototype.getTrackById=function(e){if(this.moov===void 0)return null;for(var t=0;t<this.moov.traks.length;t++){var n=this.moov.traks[t];if(n.tkhd.track_id==e)return n}return null},h.prototype.itemsDataSize=0,h.prototype.flattenItemInfo=function(){var e=this.items,n=this.entity_groups,r,a,o,s=this.meta;if(s!=null&&s.hdlr!==void 0&&s.iinf!==void 0){for(r=0;r<s.iinf.item_infos.length;r++)o={},o.id=s.iinf.item_infos[r].item_ID,e[o.id]=o,o.ref_to=[],o.name=s.iinf.item_infos[r].item_name,s.iinf.item_infos[r].protection_index>0&&(o.protection=s.ipro.protections[s.iinf.item_infos[r].protection_index-1]),s.iinf.item_infos[r].item_type?o.type=s.iinf.item_infos[r].item_type:o.type=`mime`,o.content_type=s.iinf.item_infos[r].content_type,o.content_encoding=s.iinf.item_infos[r].content_encoding,o.item_uri_type=s.iinf.item_infos[r].item_uri_type;if(s.grpl)for(r=0;r<s.grpl.boxes.length;r++)entity_group={},entity_group.id=s.grpl.boxes[r].group_id,entity_group.entity_ids=s.grpl.boxes[r].entity_ids,entity_group.type=s.grpl.boxes[r].type,n[entity_group.id]=entity_group;if(s.iloc)for(r=0;r<s.iloc.items.length;r++){var c=s.iloc.items[r];switch(o=e[c.item_ID],c.data_reference_index!==0&&(t.warn(`Item storage with reference to other files: not supported`),o.source=s.dinf.boxes[c.data_reference_index-1]),c.construction_method){case 0:break;case 1:break;case 2:t.warn(`Item storage with construction_method : not supported`);break}for(o.extents=[],o.size=0,a=0;a<c.extents.length;a++)o.extents[a]={},o.extents[a].offset=c.extents[a].extent_offset+c.base_offset,c.construction_method==1&&(o.extents[a].offset+=s.idat.start+s.idat.hdr_size),o.extents[a].length=c.extents[a].extent_length,o.extents[a].alreadyRead=0,o.size+=o.extents[a].length}if(s.pitm&&(e[s.pitm.item_id].primary=!0),s.iref)for(r=0;r<s.iref.references.length;r++){var l=s.iref.references[r];for(a=0;a<l.references.length;a++)e[l.from_item_ID].ref_to.push({type:l.type,id:l.references[a]})}if(s.iprp)for(var u=0;u<s.iprp.ipmas.length;u++){var d=s.iprp.ipmas[u];for(r=0;r<d.associations.length;r++){var f=d.associations[r];if(o=e[f.id],o||=n[f.id],o)for(o.properties===void 0&&(o.properties={},o.properties.boxes=[]),a=0;a<f.props.length;a++){var p=f.props[a];if(p.property_index>0&&p.property_index-1<s.iprp.ipco.boxes.length){var m=s.iprp.ipco.boxes[p.property_index-1];o.properties[m.type]=m,o.properties.boxes.push(m)}}}}}},h.prototype.getItem=function(e){var n,a;if(!this.meta)return null;if(a=this.items[e],!a.data&&a.size)a.data=new Uint8Array(a.size),a.alreadyRead=0,this.itemsDataSize+=a.size,t.debug(`ISOFile`,`Allocating item #`+e+` of size `+a.size+` (total: `+this.itemsDataSize+`)`);else if(a.alreadyRead===a.size)return a;for(var o=0;o<a.extents.length;o++){var s=a.extents[o];if(s.alreadyRead!==s.length){var c=this.stream.findPosition(!0,s.offset+s.alreadyRead,!1);if(c>-1){n=this.stream.buffers[c];var l=n.byteLength-(s.offset+s.alreadyRead-n.fileStart);if(s.length-s.alreadyRead<=l)t.debug(`ISOFile`,`Getting item #`+e+` extent #`+o+` data (alreadyRead: `+s.alreadyRead+` offset: `+(s.offset+s.alreadyRead-n.fileStart)+` read size: `+(s.length-s.alreadyRead)+` full extent size: `+s.length+` full item size: `+a.size+`)`),r.memcpy(a.data.buffer,a.alreadyRead,n,s.offset+s.alreadyRead-n.fileStart,s.length-s.alreadyRead),n.usedBytes+=s.length-s.alreadyRead,this.stream.logBufferLevel(),a.alreadyRead+=s.length-s.alreadyRead,s.alreadyRead=s.length;else return t.debug(`ISOFile`,`Getting item #`+e+` extent #`+o+` partial data (alreadyRead: `+s.alreadyRead+` offset: `+(s.offset+s.alreadyRead-n.fileStart)+` read size: `+l+` full extent size: `+s.length+` full item size: `+a.size+`)`),r.memcpy(a.data.buffer,a.alreadyRead,n,s.offset+s.alreadyRead-n.fileStart,l),s.alreadyRead+=l,a.alreadyRead+=l,n.usedBytes+=l,this.stream.logBufferLevel(),null}else return null}}return a.alreadyRead===a.size?a:null},h.prototype.releaseItem=function(e){var t=this.items[e];if(t.data){this.itemsDataSize-=t.size,t.data=null,t.alreadyRead=0;for(var n=0;n<t.extents.length;n++){var r=t.extents[n];r.alreadyRead=0}return t.size}else return 0},h.prototype.processItems=function(e){for(var t in this.items){var n=this.items[t];this.getItem(n.id),e&&!n.sent&&(e(n),n.sent=!0,n.data=null)}},h.prototype.hasItem=function(e){for(var t in this.items){var n=this.items[t];if(n.name===e)return n.id}return-1},h.prototype.getMetaHandler=function(){return this.meta?this.meta.hdlr.handler:null},h.prototype.getPrimaryItem=function(){return!this.meta||!this.meta.pitm?null:this.getItem(this.meta.pitm.item_id)},h.prototype.itemToFragmentedTrackFile=function(e){var t=e||{},n=null;if(n=t.itemId?this.getItem(t.itemId):this.getPrimaryItem(),n==null)return null;var r=new h;r.discardMdatData=!1;var a={type:n.type,description_boxes:n.properties.boxes};n.properties.ispe&&(a.width=n.properties.ispe.image_width,a.height=n.properties.ispe.image_height);var o=r.addTrack(a);return o?(r.addSample(o,n.data),r):null},h.prototype.write=function(e){for(var t=0;t<this.boxes.length;t++)this.boxes[t].write(e)},h.prototype.createFragment=function(e,n,a){var o=this.getTrackById(e),s=this.getSample(o,n);if(s==null)return this.setNextSeekPositionFromSample(o.samples[n]),null;var l=a||new r;l.endianness=r.BIG_ENDIAN;var u=this.createSingleSampleMoof(s);u.write(l),u.trafs[0].truns[0].data_offset=u.size+8,t.debug(`MP4Box`,`Adjusting data_offset with new value `+u.trafs[0].truns[0].data_offset),l.adjustUint32(u.trafs[0].truns[0].data_offset_position,u.trafs[0].truns[0].data_offset);var d=new c.mdatBox;return d.data=s.data,d.write(l),l},h.writeInitializationSegment=function(e,n,a,o){var s;t.debug(`ISOFile`,`Generating initialization segment`);var c=new r;c.endianness=r.BIG_ENDIAN,e.write(c);var l=n.add(`mvex`);for(a&&l.add(`mehd`).set(`fragment_duration`,a),s=0;s<n.traks.length;s++)l.add(`trex`).set(`track_id`,n.traks[s].tkhd.track_id).set(`default_sample_description_index`,1).set(`default_sample_duration`,o).set(`default_sample_size`,0).set(`default_sample_flags`,65536);return n.write(c),c.buffer},h.prototype.save=function(e){var t=new r;t.endianness=r.BIG_ENDIAN,this.write(t),t.save(e)},h.prototype.getBuffer=function(){var e=new r;return e.endianness=r.BIG_ENDIAN,this.write(e),e.buffer},h.prototype.initializeSegmentation=function(){var e,n,r,a;for(this.onSegment===null&&t.warn(`MP4Box`,`No segmentation callback set!`),this.isFragmentationInitialized||(this.isFragmentationInitialized=!0,this.nextMoofNumber=0,this.resetTables()),n=[],e=0;e<this.fragmentedTracks.length;e++){var o=new c.moovBox;o.mvhd=this.moov.mvhd,o.boxes.push(o.mvhd),r=this.getTrackById(this.fragmentedTracks[e].id),o.boxes.push(r),o.traks.push(r),a={},a.id=r.tkhd.track_id,a.user=this.fragmentedTracks[e].user,a.buffer=h.writeInitializationSegment(this.ftyp,o,this.moov.mvex&&this.moov.mvex.mehd?this.moov.mvex.mehd.fragment_duration:void 0,this.moov.traks[e].samples.length>0?this.moov.traks[e].samples[0].duration:0),n.push(a)}return n},c.Box.prototype.printHeader=function(e){this.size+=8,this.size>a&&(this.size+=8),this.type===`uuid`&&(this.size+=16),e.log(e.indent+`size:`+this.size),e.log(e.indent+`type:`+this.type)},c.FullBox.prototype.printHeader=function(e){this.size+=4,c.Box.prototype.printHeader.call(this,e),e.log(e.indent+`version:`+this.version),e.log(e.indent+`flags:`+this.flags)},c.Box.prototype.print=function(e){this.printHeader(e)},c.ContainerBox.prototype.print=function(e){this.printHeader(e);for(var t=0;t<this.boxes.length;t++)if(this.boxes[t]){var n=e.indent;e.indent+=` `,this.boxes[t].print(e),e.indent=n}},h.prototype.print=function(e){e.indent=``;for(var t=0;t<this.boxes.length;t++)this.boxes[t]&&this.boxes[t].print(e)},c.mvhdBox.prototype.print=function(e){c.FullBox.prototype.printHeader.call(this,e),e.log(e.indent+`creation_time: `+this.creation_time),e.log(e.indent+`modification_time: `+this.modification_time),e.log(e.indent+`timescale: `+this.timescale),e.log(e.indent+`duration: `+this.duration),e.log(e.indent+`rate: `+this.rate),e.log(e.indent+`volume: `+(this.volume>>8)),e.log(e.indent+`matrix: `+this.matrix.join(`, `)),e.log(e.indent+`next_track_id: `+this.next_track_id)},c.tkhdBox.prototype.print=function(e){c.FullBox.prototype.printHeader.call(this,e),e.log(e.indent+`creation_time: `+this.creation_time),e.log(e.indent+`modification_time: `+this.modification_time),e.log(e.indent+`track_id: `+this.track_id),e.log(e.indent+`duration: `+this.duration),e.log(e.indent+`volume: `+(this.volume>>8)),e.log(e.indent+`matrix: `+this.matrix.join(`, `)),e.log(e.indent+`layer: `+this.layer),e.log(e.indent+`alternate_group: `+this.alternate_group),e.log(e.indent+`width: `+this.width),e.log(e.indent+`height: `+this.height)};var g={};g.createFile=function(e,t){var n=e===void 0?!0:e,r=new h(t);return r.discardMdatData=!n,r},e!==void 0&&(e.createFile=g.createFile)}))()),Pq=class extends Error{unsupported=!0;codec;constructor(e){super(`unsupported codec: ${e}`),this.name=`UnsupportedCodecError`,this.codec=e}};function Fq(e){return e instanceof Error&&e.unsupported===!0}function Iq(e){return e.replace(/^hev1\./i,`hvc1.`)}function Lq(e,t){let n=e.getTrackById(t)?.mdia?.minf?.stbl?.stsd?.entries??[];for(let e of n){let t=e.hvcC??e.avcC;if(t){let e=new Nq.DataStream(void 0,0,Nq.DataStream.BIG_ENDIAN);return t.write(e),new Uint8Array(e.buffer,8)}}}function Rq(e,t){if(e.length===0)return null;let n=e.findIndex(e=>e.is_sync);n<0&&(n=0);let r=e[n],a=r.cts/r.timescale*1e3,o=n;for(let r=n+1;r<e.length;r++){let n=e[r];if(n.cts/n.timescale*1e3-a<=t)o=r;else break}return{start:n,end:o}}function zq(e,t){return new Promise((n,r)=>{e.onError=e=>r(Error(`mp4box: ${e}`)),e.onReady=t=>{let a=t.videoTracks?.[0];if(!a){r(Error(`no video track`));return}let o=Lq(e,a.id);n({config:{codec:Iq(a.codec),codedWidth:a.video?.width,codedHeight:a.video?.height,...o?{description:o}:{}},trackId:a.id})};let a=t;a.fileStart=0,e.appendBuffer(a),e.flush()})}async function Bq(e){let t=Nq.createFile(),{config:n,trackId:r}=await zq(t,e);return{config:n,chunk:await new Promise((e,n)=>{t.onSamples=(t,r,a)=>{let o=a.find(e=>e.is_sync)??a[0];if(!o){n(Error(`no sample`));return}e(new EncodedVideoChunk({type:`key`,timestamp:Math.round(o.cts/o.timescale*1e6),data:o.data}))},t.setExtractionOptions(r,null,{nbSamples:1}),t.start()})}}var Vq=2048;async function Hq(e,t){let n=Nq.createFile(),{config:r,trackId:a}=await zq(n,e);return{config:r,chunks:await new Promise((e,r)=>{n.onSamples=(n,a,o)=>{let s=Rq(o,t);if(!s){r(Error(`no sample`));return}let c=[];for(let e=s.start;e<=s.end;e++){let t=o[e];c.push(new EncodedVideoChunk({type:t.is_sync?`key`:`delta`,timestamp:Math.round(t.cts/t.timescale*1e6),data:t.data}))}e(c)},n.setExtractionOptions(a,null,{nbSamples:Vq}),n.start()})}}var Uq=class{decoder=null;async decodeSegment(e){let{config:t,chunk:n}=await Bq(e);if(!(await VideoDecoder.isConfigSupported(t)).supported)throw new Pq(t.codec);return await new Promise((e,r)=>{this.decoder&&this.decoder.state!==`closed`&&this.decoder.close();let a=new VideoDecoder({output:t=>e(t),error:e=>r(e)});a.configure(t),this.decoder=a,a.decode(n),a.flush().catch(r)})}async decodeSegmentAt(e,t){let{config:n,chunks:r}=await Hq(e,t);if(!(await VideoDecoder.isConfigSupported(n)).supported)throw new Pq(n.codec);return await new Promise((e,t)=>{this.decoder&&this.decoder.state!==`closed`&&this.decoder.close();let a=null,o=new VideoDecoder({output:e=>{a?.close(),a=e},error:e=>t(e)});o.configure(n),this.decoder=o;for(let e of r)o.decode(e);o.flush().then(()=>{a?e(a):t(Error(`no frame decoded`))}).catch(t)})}close(){this.decoder&&this.decoder.state!==`closed`&&this.decoder.close(),this.decoder=null}};function Wq({url:e,autoPlay:t=!0,muted:n=!1,className:r}){let a=(0,S.useRef)(null),[o,s]=(0,S.useState)(null);return(0,S.useEffect)(()=>{let n=a.current;if(!n||!e)return;s(null),n.src=e;let r=()=>{t&&n.play().catch(()=>{})},o=()=>s(`Could not load this recording.`);return n.addEventListener(`loadedmetadata`,r),n.addEventListener(`error`,o),()=>{n.removeEventListener(`loadedmetadata`,r),n.removeEventListener(`error`,o),n.removeAttribute(`src`),n.load()}},[e,t]),(0,S.useEffect)(()=>{let e=a.current;e&&(e.muted=n)},[n]),(0,C.jsxs)(`div`,{className:`relative h-full w-full bg-black ${r??``}`,children:[(0,C.jsx)(`video`,{ref:a,playsInline:!0,muted:n,className:`h-full w-full`}),o?(0,C.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center px-4 text-center text-sm text-amber-400`,children:o}):null]})}var Gq=Co([B({kind:U(`adaptive`)}),B({kind:U(`profile`),profile:ps})]),Kq=B({serverUrl:P().min(1),token:P().min(1),deviceId:F().int().nonnegative(),target:Gq,muted:I(),stats:I().optional(),highlight:iK.optional(),snapshot:P().optional(),hlsRecordedPlayback:I().optional()}),qq=300*1e3;function Jq(e,t){try{return new URL(t,e).toString()}catch{return t}}var Yq=[`live`,`loading`,`playing`,`paused`,`gap`,`ended`,`error`];function Xq(e){try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return null;let n=t;return n.t===`state`&&typeof n.state==`string`&&Yq.includes(n.state)?{kind:`state`,state:n.state}:n.t===`position`&&typeof n.epochMs==`number`?{kind:`position`,epochMs:n.epochMs}:null}catch{return null}}function Zq(e,t){lK(t===void 0?{type:`state`,state:e}:{type:`state`,state:e,message:t})}function Qq(e){switch(e){case`playing`:return`playing`;case`error`:return`error`;case`connecting`:case`disconnected`:case`idle`:return`connecting`}}function $q(e){return e.kind===`adaptive`?{kind:`adaptive`}:{kind:`profile`,profile:e.profile}}function eJ(e){return e.kind===`adaptive`?`embed:adaptive`:`embed:profile:${e.profile}`}function tJ(e){let t=Kq.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}function nJ({message:e}){return(0,S.useEffect)(()=>{Zq(`error`,e)},[e]),(0,C.jsxs)(`div`,{style:{position:`fixed`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`#000`,color:`#f87171`,fontFamily:`system-ui, sans-serif`,fontSize:13,padding:16,textAlign:`center`},children:[`Embed config error: `,e]})}function rJ({system:e,deviceId:t,token:n,initialTarget:r,initialMuted:a,initialStats:o,initialHighlight:s,initialSnapshot:c,hlsRecordedPlayback:l}){let[u,d]=(0,S.useState)(r),[f,p]=(0,S.useState)(a),[m,h]=(0,S.useState)(o),[g,_]=(0,S.useState)(s),[v,y]=(0,S.useState)(c),[b,x]=(0,S.useState)(0),[w,T]=(0,S.useState)({w:window.innerWidth,h:window.innerHeight}),[E,D]=(0,S.useState)(null),ee=(0,S.useRef)(null);ee.current=E,(0,S.useEffect)(()=>{l&&(document.cookie=`camstack_session=${n}; path=/; SameSite=Lax`)},[l,n]);let te=rq(e,t,g),O=AK(),ne=(0,S.useRef)(O.setActiveMic);ne.current=O.setActiveMic;let re=(0,S.useRef)(null),ie=(0,S.useRef)(!1),ae=(0,S.useRef)(()=>{}),oe=(0,S.useRef)(e=>{re.current=e,e.onmessage=e=>{let t=e.data;if(typeof t!=`string`)return;let n=Xq(t);n&&(n.kind===`position`?(ie.current&&ae.current(),lK({type:`position`,positionMs:n.epochMs})):(n.state===`playing`&&ie.current&&ae.current(),lK({type:`recState`,state:n.state})))},e.onclose=()=>{re.current===e&&(re.current=null)}}).current,se=(0,S.useRef)(e=>{let t=bq(e);if(!t)return;let n=re.current;n&&n.readyState===`open`&&n.send(JSON.stringify(t))}).current,{handleOffer:k,getIceServers:A,addIceCandidate:ce,getIceCandidates:le,closeSession:ue,getSessionState:de}=tK(e.trpcClient,t),j=(0,S.useMemo)(()=>$q(u),[u]),M=(0,S.useMemo)(()=>(e,t,n)=>k(j,e,t,n),[k,j]),fe=(0,S.useMemo)(()=>(e,t,n,r)=>k(n,t,e,r),[k]),pe=(0,S.useRef)(null),[me,he]=(0,S.useState)(!1),[ge,_e]=(0,S.useState)(!1),N=(0,S.useRef)(!1);N.current=ge;let ve=(0,S.useRef)(null);ae.current=(0,S.useCallback)(()=>{ie.current=!1,ve.current&&=(clearTimeout(ve.current),null),he(!1)},[]);let ye=(0,S.useCallback)(()=>{N.current?(ie.current=!0,ve.current&&clearTimeout(ve.current),ve.current=setTimeout(()=>ae.current(),4e3)):he(!1)},[]),be=(0,S.useRef)(ye);be.current=ye;let xe=(0,S.useRef)(null),Se=(0,S.useRef)(null),Ce=(0,S.useRef)([]),we=(0,S.useRef)(null),Te=(0,S.useRef)(!1),Ee=(0,S.useMemo)(()=>({Authorization:`Bearer ${n}`}),[n]),De=(0,S.useMemo)(()=>async n=>{let r=we.current;if(r&&n>=r.fromMs&&n<r.toMs&&Ce.current.length>0)return Ce.current;let a=new Date(n);a.setHours(0,0,0,0);let o=a.getTime(),s=o+1440*60*1e3,c=await e.trpcClient.recording.getPlaybackManifest.query({deviceId:t,fromMs:o,toMs:s});return c?.playbackUrl?(Ce.current=await Dq(c.playbackUrl,Ee),we.current={fromMs:o,toMs:s},Ce.current):Ce.current},[e,t,Ee]),Oe=(0,S.useMemo)(()=>e=>{let t=pe.current,n=t?.getContext(`2d`);if(!t||!n)return;t.width=w.w,t.height=w.h;let r=e.displayWidth||e.codedWidth,a=e.displayHeight||e.codedHeight,o=Math.min(w.w/r,w.h/a),s=r*o,c=a*o;n.clearRect(0,0,w.w,w.h),n.drawImage(e,(w.w-s)/2,(w.h-c)/2,s,c),_e(!0)},[w.w,w.h]),ke=(0,S.useRef)(Oe);ke.current=Oe;let Ae=(0,S.useMemo)(()=>async e=>{xe.current||=new Uq,Se.current||=new Mq({ensureIndex:e=>De(e),fetchBytes:async(e,t)=>{let n=await fetch(e,{signal:t,headers:Ee});if(!n.ok)throw Error(`segment fetch failed: ${n.status}`);return n.arrayBuffer()},decode:e=>{let t=xe.current;if(!t)throw Error(`decoder not initialised`);return t.decodeSegment(e)},decodeAt:(e,t)=>{let n=xe.current;if(!n)throw Error(`decoder not initialised`);return n.decodeSegmentAt(e,t)},draw:e=>ke.current(e)});try{await Se.current.scrubTo(e)}catch(e){Fq(e)&&!Te.current&&(Te.current=!0,lK({type:`log`,scope:`scrub`,msg:`webcodecs-unsupported`,data:{codec:e.codec}}))}},[De,Ee]),je=(0,S.useRef)(Ae);je.current=Ae,(0,S.useEffect)(()=>()=>{Se.current?.dispose()},[]);let Me=(0,S.useMemo)(()=>async n=>{let r=n-qq,a=n+qq;lK({type:`recState`,state:`loading`});try{let o=await e.trpcClient.recording.getPlaybackManifest.query({deviceId:t,fromMs:r,toMs:a});if(!o?.playbackUrl){lK({type:`recState`,state:`gap`});return}D({url:Jq(e.serverUrl,o.playbackUrl),windowStartMs:r,windowEndMs:a,targetMs:n}),lK({type:`recState`,state:`playing`}),lK({type:`position`,positionMs:n})}catch{lK({type:`recState`,state:`error`})}},[e,t]),Ne=(0,S.useRef)(Me);Ne.current=Me;let Pe=(0,S.useMemo)(()=>e=>{let t=ee.current;if(!t){Ne.current(e);return}if(e>=t.windowStartMs&&e<=t.windowEndMs){let n=Le.current;if(n){n.currentTime=Math.max(0,(e-t.windowStartMs)/1e3),lK({type:`position`,positionMs:e});return}}Ne.current(e)},[]),Fe=(0,S.useRef)(Pe);Fe.current=Pe;let Ie=(0,S.useRef)(null),Le=(0,S.useRef)(null);(0,S.useEffect)(()=>{Le.current=E?Ie.current?.querySelector(`video`)??null:null},[E]),(0,S.useEffect)(()=>(window.__camstackEmbed={setMuted:e=>p(e),setTarget:e=>{let t=Gq.safeParse(e);t.success&&d(t.data)},setStats:e=>h(e),setHighlight:e=>_(e),setSnapshot:e=>y(e),setMic:e=>ne.current(e?t:null),fit:(e,t)=>T({w:e,h:t}),reconnect:()=>x(e=>e+1),playRecorded:(e,t,n)=>{l?Ne.current(t):se({kind:`playRecorded`,deviceId:e,epochMs:t,profile:n})},seek:e=>{Number.isFinite(e)&&(l&&ee.current?Fe.current(e):se({kind:`seekTo`,epochMs:e}))},scrubCommit:e=>{if(Number.isFinite(e)){if(l&&ee.current){Fe.current(e);return}se({kind:`scrubEnd`,epochMs:e}),be.current()}},scrubStart:()=>{l&&ee.current||(_e(!1),he(!0),se({kind:`scrubStart`}))},scrubTo:e=>{Number.isFinite(e)&&(l&&ee.current||je.current(e))},scrubEnd:e=>{if(Number.isFinite(e)){if(l&&ee.current){Fe.current(e);return}se({kind:`scrubEnd`,epochMs:e}),be.current()}},setRate:e=>{if(Number.isFinite(e)){if(l&&ee.current){let t=Le.current;t&&(e===0?t.pause():(t.playbackRate=Math.min(4,Math.max(.25,e)),t.play().catch(()=>{})));return}se({kind:`setRate`,rate:e})}},stepFrame:e=>{e!==1&&e!==-1||l&&ee.current||se({kind:`stepFrame`,dir:e})},goLive:()=>{if(l&&ee.current){D(null),lK({type:`recState`,state:`live`});return}se({kind:`goLive`})}},()=>{window.__camstackEmbed&&delete window.__camstackEmbed}),[t,l]),(0,S.useEffect)(()=>{lK({type:`micState`,state:O.micState})},[O.micState]),(0,S.useEffect)(()=>uK(e=>{let t=window.__camstackEmbed;if(t)switch(e.kind){case`setMuted`:t.setMuted(e.value);break;case`setTarget`:t.setTarget(e.value);break;case`setStats`:t.setStats(e.value);break;case`setHighlight`:t.setHighlight(e.value);break;case`setSnapshot`:t.setSnapshot(e.value);break;case`setMic`:t.setMic(e.value);break;case`fit`:t.fit(e.w,e.h);break;case`reconnect`:t.reconnect();break;case`playRecorded`:t.playRecorded(e.deviceId,e.epochMs,e.profile);break;case`seek`:t.seek(e.epochMs??e.value);break;case`scrubCommit`:t.scrubCommit(e.epochMs??e.value);break;case`scrubStart`:t.scrubStart();break;case`scrubTo`:t.scrubTo(e.epochMs??e.value);break;case`scrubEnd`:t.scrubEnd(e.epochMs??e.value);break;case`setRate`:t.setRate(e.rate??e.value);break;case`stepFrame`:{let n=e.dir;(n===1||n===-1)&&t.stepFrame(n);break}case`goLive`:t.goLive();break;default:break}}),[]);let Re=eJ(u);return(0,C.jsxs)(`div`,{style:{position:`fixed`,left:0,top:0,width:w.w,height:w.h,background:`#000`},children:[(0,C.jsx)(HG,{serverUrl:e.serverUrl,streamKey:Re,autoPlay:!0,muted:f,showControls:!1,showStats:m,onPlaybackStats:e=>lK({type:`log`,scope:`playback`,msg:`stats`,data:e}),onConnectTiming:e=>lK({type:`log`,scope:`webrtc-timing`,msg:`connect`,data:e}),onClientNetworkSample:u.kind===`adaptive`?n=>{e.trpcClient.networkQuality.reportClientStats.mutate({deviceId:t,...n}).catch(()=>{})}:void 0,className:`w-full h-full`,handleOffer:M,reoffer:fe,getSessionState:de,getIceServers:A,addIceCandidate:ce,getIceCandidates:le,closeSession:ue,reconnectSignal:b,posterUrl:v,onControlChannel:oe,onStateChange:e=>Zq(Qq(e)),onError:e=>Zq(`error`,e)},Re),E?(0,C.jsx)(`div`,{ref:Ie,style:{position:`absolute`,inset:0,zIndex:1,background:`#000`},children:(0,C.jsx)(Wq,{url:E.url,muted:f,autoPlay:!0},E.url)}):null,(0,C.jsx)(`canvas`,{ref:pe,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,background:`#000`,pointerEvents:`none`,transform:`translateZ(0)`,zIndex:2,display:me&&ge?`block`:`none`}}),te&&(()=>{let e=g?.appearance,t=te===`motion`?e?.motionColor??iq.motion:te===`audio`?e?.audioColor??iq.audio:e?.detectionColor??iq.detection;return(0,C.jsx)(`div`,{style:{position:`absolute`,inset:0,border:`${e?.thickness??3}px solid ${t}`,boxShadow:`inset 0 0 12px ${t}`,pointerEvents:`none`,transform:`translateZ(0)`}})})()]})}function iJ(){let e=fK(`player`,()=>window.__CAMSTACK_EMBED__,tJ),t=(0,S.useMemo)(()=>e===null||!e.ok?null:{system:xA({serverUrl:e.config.serverUrl,token:e.config.token}),queryClient:new BT({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}})},[e]);return(0,S.useEffect)(()=>{if(t)return()=>{t.system.close()}},[t]),e===null?null:e.ok?t?(0,C.jsx)(tz,{system:t.system,children:(0,C.jsx)(UT,{client:t.queryClient,children:(0,C.jsx)($.Provider,{client:t.system.trpcClient,queryClient:t.queryClient,children:(0,C.jsx)(rJ,{system:t.system,deviceId:e.config.deviceId,token:e.config.token,initialTarget:e.config.target,initialMuted:e.config.muted,initialStats:e.config.stats??!1,initialHighlight:e.config.highlight,initialSnapshot:e.config.snapshot,hlsRecordedPlayback:e.config.hlsRecordedPlayback??!1})})})}):(0,C.jsx)(nJ,{message:`Failed to initialise the embed player`}):(0,C.jsx)(nJ,{message:e.error})}var aJ=B({serverUrl:P().min(1),token:P().min(1),deviceId:F().int().nonnegative(),startMs:F().int().nonnegative().optional()});function oJ(e){if(e==null)return{ok:!1,error:`config is required`};let t=aJ.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}var sJ=360*60*1e3;function cJ(e){lK(e)}function lJ(e,t,n){try{lK({type:`log`,scope:e,msg:t,data:n})}catch{}try{console.debug(`[rec-embed:${e}] ${t}`,n??``)}catch{}}function uJ({system:e,config:t}){let n=(0,S.useRef)(null),r=(0,S.useRef)(null),a=(0,S.useRef)(0),o=(0,S.useRef)(0),[s,c]=(0,S.useState)({w:window.innerWidth,h:window.innerHeight}),[l,u]=(0,S.useState)(!1),d=(0,S.useRef)(!1),f=(0,S.useRef)(null),p=(0,S.useRef)(null),m=(0,S.useRef)([]),h=(0,S.useRef)(null),g=(0,S.useMemo)(()=>async r=>{let s=n.current;if(s){o.current=performance.now(),lJ(`loadAt`,`start`,{epochMs:r,window:sJ}),cJ({type:`state`,state:`loading`});try{let n=await e.trpcClient.recording.getPlaybackManifest.query({deviceId:t.deviceId,fromMs:r,toMs:r+sJ});if(lJ(`loadAt`,`manifest`,{playbackUrl:n?.playbackUrl??null,endpoints:n?.playbackEndpoints?.length??0,localMaster:!!n?.localMasterPath}),!n?.playbackUrl){cJ({type:`state`,state:`error`,message:`no footage`}),u(!1);return}a.current=r,s.src=n.playbackUrl,s.currentTime=0,await s.play().catch(e=>{lJ(`loadAt`,`play-rejected`,{msg:String(e)})}),lJ(`loadAt`,`src-set`,{src:n.playbackUrl})}catch(e){lJ(`loadAt`,`error`,{msg:e instanceof Error?e.message:String(e)}),cJ({type:`state`,state:`error`,message:e instanceof Error?e.message:String(e)}),u(!1)}}},[e,t.deviceId]),_=(0,S.useMemo)(()=>async n=>{let r=h.current;if(r&&n>=r.fromMs&&n<r.toMs&&m.current.length>0)return m.current;let a=new Date(n);a.setHours(0,0,0,0);let o=a.getTime(),s=o+1440*60*1e3,c=await e.trpcClient.recording.getPlaybackManifest.query({deviceId:t.deviceId,fromMs:o,toMs:s});return lJ(`scrub`,`dayIndex-manifest`,{playbackUrl:c?.playbackUrl??null,fromMs:o,toMs:s}),c?.playbackUrl?(m.current=await Dq(c.playbackUrl),h.current={fromMs:o,toMs:s},lJ(`scrub`,`dayIndex-built`,{len:m.current.length,fromMs:o,toMs:s}),m.current):m.current},[e,t.deviceId]),v=(0,S.useMemo)(()=>e=>{let t=r.current,n=t?.getContext(`2d`);if(!t||!n)return;t.width=s.w,t.height=s.h;let a=e.displayWidth||e.codedWidth,o=e.displayHeight||e.codedHeight,c=Math.min(s.w/a,s.h/o),l=a*c,u=o*c;n.clearRect(0,0,s.w,s.h),n.drawImage(e,(s.w-l)/2,(s.h-u)/2,l,u)},[s.w,s.h]),y=(0,S.useRef)(v);y.current=v;let b=(0,S.useMemo)(()=>async e=>{f.current||=new Uq,p.current||=new Mq({ensureIndex:e=>_(e),fetchBytes:async(e,t)=>{let n=await fetch(e,{signal:t});if(!n.ok)throw Error(`segment fetch failed: ${n.status}`);return n.arrayBuffer()},decode:e=>{let t=f.current;if(!t)throw Error(`decoder not initialised`);return t.decodeSegment(e)},decodeAt:(e,t)=>{let n=f.current;if(!n)throw Error(`decoder not initialised`);return n.decodeSegmentAt(e,t)},draw:e=>y.current(e),onTiming:e=>lJ(`scrub`,`timing`,e)});let t=p.current;if(t)try{await t.scrubTo(e),lJ(`scrub`,`drawn`,{epochMs:e})}catch(e){lJ(`scrub`,`error`,{msg:e instanceof Error?e.message:String(e)}),d.current||(d.current=!0,cJ({type:`state`,state:`error`,message:`scrub: ${e instanceof Error?e.message:String(e)}`}))}},[_]);return(0,S.useEffect)(()=>(lJ(`init`,`mounted`,{deviceId:t.deviceId,startMs:t.startMs??null,hasWebCodecs:window.VideoDecoder!==void 0,ua:navigator.userAgent}),window.__camstackRecording={seekTo:e=>{lJ(`cmd`,`seekTo`,{epochMs:e}),g(e)},play:()=>{lJ(`cmd`,`play`),n.current?.play().catch(()=>{})},pause:()=>{lJ(`cmd`,`pause`),n.current?.pause()},setRate:e=>{lJ(`cmd`,`setRate`,{rate:e}),n.current&&(n.current.playbackRate=e)},fit:(e,t)=>{lJ(`cmd`,`fit`,{w:e,h:t}),c({w:e,h:t})},scrubStart:()=>{lJ(`cmd`,`scrubStart`),d.current=!1,u(!0)},scrubTo:e=>{lJ(`cmd`,`scrubTo`,{epochMs:e}),b(e)},scrubEnd:e=>{lJ(`cmd`,`scrubEnd`,{epochMs:e}),p.current?.dispose(),p.current=null,g(e)}},t.startMs&&t.startMs>0&&g(t.startMs),()=>{window.__camstackRecording&&delete window.__camstackRecording,p.current?.dispose(),p.current=null,f.current?.close(),f.current=null}),[g,b,t.startMs,t.deviceId]),(0,S.useEffect)(()=>uK(e=>{let t=window.__camstackRecording;if(t)switch(e.kind){case`seekTo`:t.seekTo(e.value);break;case`play`:t.play();break;case`pause`:t.pause();break;case`setRate`:t.setRate(e.value);break;case`scrubStart`:t.scrubStart();break;case`scrubTo`:t.scrubTo(e.value);break;case`scrubEnd`:t.scrubEnd(e.value);break;case`fit`:t.fit(e.w,e.h);break;default:break}}),[]),(0,C.jsxs)(`div`,{style:{position:`fixed`,left:0,top:0,width:s.w,height:s.h,background:`#000`},children:[(0,C.jsx)(`video`,{ref:n,playsInline:!0,controls:!1,style:{width:`100%`,height:`100%`,objectFit:`contain`,background:`#000`},onLoadedMetadata:e=>lJ(`video`,`loadedmetadata`,{w:e.currentTarget.videoWidth,h:e.currentTarget.videoHeight,dur:e.currentTarget.duration}),onPlaying:()=>{lJ(`video`,`playing`,{vodStartMs:Math.round(performance.now()-o.current)}),cJ({type:`state`,state:`playing`}),u(!1)},onPause:()=>cJ({type:`state`,state:`paused`}),onEnded:()=>cJ({type:`state`,state:`ended`}),onError:e=>{let t=e.currentTarget.error;lJ(`video`,`error`,{code:t?.code??null,message:t?.message??null}),cJ({type:`state`,state:`error`,message:t?.message||`video error`}),u(!1)},onTimeUpdate:e=>cJ({type:`position`,positionMs:a.current+e.currentTarget.currentTime*1e3})}),(0,C.jsx)(`canvas`,{ref:r,style:{position:`absolute`,left:0,top:0,width:`100%`,height:`100%`,background:`#000`,display:l?`block`:`none`}})]})}function dJ(){let e=fK(`recording`,()=>window.__CAMSTACK_RECORDING__,oJ),t=(0,S.useMemo)(()=>e===null||!e.ok?null:(document.cookie=`camstack_session=${e.config.token}; path=/; SameSite=Lax`,xA({serverUrl:e.config.serverUrl,token:e.config.token})),[e]);return(0,S.useEffect)(()=>()=>t?.close(),[t]),e===null?null:e.ok?t?(0,C.jsx)(uJ,{system:t,config:e.config}):(cJ({type:`state`,state:`error`,message:`init failed`}),null):(cJ({type:`state`,state:`error`,message:e.error}),null)}function fJ(){let e=new URLSearchParams(location.search).get(`mode`)??`grid`;return e===`player`?(0,C.jsx)(iJ,{}):e===`recording`?(0,C.jsx)(dJ,{}):(0,C.jsx)(yq,{})}var pJ=document.getElementById(`root`);pJ&&(0,x.createRoot)(pJ).render((0,C.jsx)(fJ,{}));export{sG as a,az as c,b as d,m as f,u as g,c as h,sR as i,KG as l,s as m,eR as n,Q as o,f as p,xM as r,bM as s,nL as t,nz as u};
|