@oonacode/win32-x64 0.3.149 → 0.3.151
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/oona.exe +2 -2
- package/oonacode-release.json +3 -3
- package/package.json +1 -1
- package/web-ui/assets/index-B7Aux-7r.css +2 -0
- package/web-ui/assets/index-BS33MxDB.js +138 -0
- package/web-ui/index.html +2 -2
- package/web-ui/assets/index-CTtwZap7.js +0 -137
- package/web-ui/assets/index-CV8nMt98.css +0 -2
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?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),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.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`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function ee(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var k=/\/+/g;function te(e,t){return typeof e==`object`&&e&&e.key!=null?ee(``+e.key):t.toString(36)}function A(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(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 j(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,j(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+te(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(k,`$&/`)+`/`),j(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(k,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+te(a,u),c+=j(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+te(a,u++),c+=j(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return j(A(e),r,i,a,o);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 c}function ne(e,t,n){if(e==null)return e;var r=[],i=0;return j(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function re(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 M=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)},N={map:ne,forEach:function(e,t,n){ne(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ne(e,function(){t++}),t},toArray:function(e){return ne(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=N,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.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=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:re}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.8`})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,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,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(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 a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&te(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&te(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var ee=new MessageChannel,k=ee.port2;ee.port1.onmessage=D,O=function(){k.postMessage(null)}}else O=function(){_(D,0)};function te(t,n){C=_(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`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!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=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,te(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{var t=d();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 i={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},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(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=i,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 o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.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,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.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??i.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=c(n,t.crossOrigin);i.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=c(t.as,t.crossOrigin);i.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 i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.8`})),h=o(((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=m()})),g=o((e=>{var t=p(),n=d(),r=h();function i(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 a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(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 s(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 c(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 l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function f(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=f(e),t!==null)return t;e=e.sibling}return null}var m=Object.assign,g=Symbol.for(`react.element`),_=Symbol.for(`react.transitional.element`),v=Symbol.for(`react.portal`),y=Symbol.for(`react.fragment`),b=Symbol.for(`react.strict_mode`),x=Symbol.for(`react.profiler`),S=Symbol.for(`react.consumer`),C=Symbol.for(`react.context`),w=Symbol.for(`react.forward_ref`),T=Symbol.for(`react.suspense`),E=Symbol.for(`react.suspense_list`),D=Symbol.for(`react.memo`),O=Symbol.for(`react.lazy`),ee=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),te=Symbol.iterator;function A(e){return typeof e!=`object`||!e?null:(e=te&&e[te]||e[`@@iterator`],typeof e==`function`?e:null)}var j=Symbol.for(`react.client.reference`);function ne(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===j?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case y:return`Fragment`;case x:return`Profiler`;case b:return`StrictMode`;case T:return`Suspense`;case E:return`SuspenseList`;case ee:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case v:return`Portal`;case C:return e.displayName||`Context`;case S:return(e._context.displayName||`Context`)+`.Consumer`;case w:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case D:return t=e.displayName||null,t===null?ne(e.type)||`Memo`:t;case O:t=e._payload,e=e._init;try{return ne(e(t))}catch{}}return null}var re=Array.isArray,M=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ie={pending:!1,data:null,method:null,action:null},ae=[],oe=-1;function se(e){return{current:e}}function ce(e){0>oe||(e.current=ae[oe],ae[oe]=null,oe--)}function le(e,t){oe++,ae[oe]=e.current,e.current=t}var ue=se(null),de=se(null),fe=se(null),pe=se(null);function me(e,t){switch(le(fe,t),le(de,e),le(ue,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Qd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Qd(t),e=$d(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ce(ue),le(ue,e)}function he(){ce(ue),ce(de),ce(fe)}function ge(e){e.memoizedState!==null&&le(pe,e);var t=ue.current,n=$d(t,e.type);t!==n&&(le(de,e),le(ue,n))}function _e(e){de.current===e&&(ce(ue),ce(de)),pe.current===e&&(ce(pe),cp._currentValue=ie)}var ve,ye;function be(e){if(ve===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ve=t&&t[1]||``,ye=-1<e.stack.indexOf(`
|
|
2
|
+
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
3
|
+
`+ve+e+ye}var xe=!1;function Se(e,t){if(!e||xe)return``;xe=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
4
|
+
`),l=s.split(`
|
|
5
|
+
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
6
|
+
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{xe=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?be(n):``}function Ce(e,t){switch(e.tag){case 26:case 27:case 5:return be(e.type);case 16:return be(`Lazy`);case 13:return e.child!==t&&t!==null?be(`Suspense Fallback`):be(`Suspense`);case 19:return be(`SuspenseList`);case 0:case 15:return Se(e.type,!1);case 11:return Se(e.type.render,!1);case 1:return Se(e.type,!0);case 31:return be(`Activity`);default:return``}}function we(e){try{var t=``,n=null;do t+=Ce(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
7
|
+
Error generating stack: `+e.message+`
|
|
8
|
+
`+e.stack}}var Te=Object.prototype.hasOwnProperty,Ee=t.unstable_scheduleCallback,De=t.unstable_cancelCallback,Oe=t.unstable_shouldYield,ke=t.unstable_requestPaint,P=t.unstable_now,Ae=t.unstable_getCurrentPriorityLevel,je=t.unstable_ImmediatePriority,Me=t.unstable_UserBlockingPriority,Ne=t.unstable_NormalPriority,F=t.unstable_LowPriority,Pe=t.unstable_IdlePriority,Fe=t.log,Ie=t.unstable_setDisableYieldValue,Le=null,Re=null;function ze(e){if(typeof Fe==`function`&&Ie(e),Re&&typeof Re.setStrictMode==`function`)try{Re.setStrictMode(Le,e)}catch{}}var Be=Math.clz32?Math.clz32:Ue,Ve=Math.log,He=Math.LN2;function Ue(e){return e>>>=0,e===0?32:31-(Ve(e)/He|0)|0}var We=256,Ge=262144,Ke=4194304;function qe(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Je(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=qe(n))):i=qe(o):i=qe(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=qe(n))):i=qe(o)):i=qe(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Ye(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Xe(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ze(){var e=Ke;return Ke<<=1,!(Ke&62914560)&&(Ke=4194304),e}function Qe(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function $e(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function et(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Be(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&tt(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function tt(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Be(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function nt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Be(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function rt(e,t){var n=t&-t;return n=n&42?1:I(n),(n&(e.suspendedLanes|t))===0?n:0}function I(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function it(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function at(){var e=N.p;return e===0?(e=window.event,e===void 0?32:Cp(e.type)):e}function ot(e,t){var n=N.p;try{return N.p=e,t()}finally{N.p=n}}var st=Math.random().toString(36).slice(2),ct=`__reactFiber$`+st,lt=`__reactProps$`+st,ut=`__reactContainer$`+st,dt=`__reactEvents$`+st,ft=`__reactListeners$`+st,pt=`__reactHandles$`+st,mt=`__reactResources$`+st,ht=`__reactMarker$`+st;function gt(e){delete e[ct],delete e[lt],delete e[dt],delete e[ft],delete e[pt]}function _t(e){var t=e[ct];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ut]||n[ct]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Sf(e);e!==null;){if(n=e[ct])return n;e=Sf(e)}return t}e=n,n=e.parentNode}return null}function vt(e){if(e=e[ct]||e[ut]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function yt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function bt(e){var t=e[mt];return t||=e[mt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function xt(e){e[ht]=!0}var St=new Set,Ct={};function wt(e,t){Tt(e,t),Tt(e+`Capture`,t)}function Tt(e,t){for(Ct[e]=t,e=0;e<t.length;e++)St.add(t[e])}var Et=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Dt={},Ot={};function kt(e){return Te.call(Ot,e)?!0:Te.call(Dt,e)?!1:Et.test(e)?Ot[e]=!0:(Dt[e]=!0,!1)}function At(e,t,n){if(kt(t)){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}}function jt(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Mt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Nt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function Pt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function Ft(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function It(e){if(!e._valueTracker){var t=Pt(e)?`checked`:`value`;e._valueTracker=Ft(e,t,``+e[t])}}function Lt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=Pt(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}function Rt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var zt=/[\n"\\]/g;function Bt(e){return e.replace(zt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Vt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Nt(t)):e.value!==``+Nt(t)&&(e.value=``+Nt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Ut(e,o,Nt(n)):Ut(e,o,Nt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Nt(s):e.removeAttribute(`name`)}function Ht(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){It(e);return}n=n==null?``:``+Nt(n),t=t==null?n:``+Nt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),It(e)}function Ut(e,t,n){t===`number`&&Rt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function Wt(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Nt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Gt(e,t,n){if(t!=null&&(t=``+Nt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+Nt(n)}function Kt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(re(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Nt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),It(e)}function qt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Jt=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Yt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Jt.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Xt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Yt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Yt(e,o,t[o])}function Zt(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var Qt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),$t=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function en(e){return $t.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function tn(){}var nn=null;function rn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var an=null,on=null;function sn(e){var t=vt(e);if(t&&(e=t.stateNode)){var n=e[lt]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Vt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Bt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[lt]||null;if(!a)throw Error(i(90));Vt(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Lt(r)}break a;case`textarea`:Gt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Wt(e,!!n.multiple,t,!1)}}}var cn=!1;function ln(e,t,n){if(cn)return e(t,n);cn=!0;try{return e(t)}finally{if(cn=!1,(an!==null||on!==null)&&(ku(),an&&(t=an,e=on,on=an=null,sn(t),e)))for(t=0;t<e.length;t++)sn(e[t])}}function un(e,t){var n=e.stateNode;if(n===null)return null;var r=n[lt]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=e!==`button`&&e!==`input`&&e!==`select`&&e!==`textarea`),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var dn=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),fn=!1;if(dn)try{var pn={};Object.defineProperty(pn,"passive",{get:function(){fn=!0}}),window.addEventListener(`test`,pn,pn),window.removeEventListener(`test`,pn,pn)}catch{fn=!1}var mn=null,hn=null,gn=null;function _n(){if(gn)return gn;var e,t=hn,n=t.length,r,i=`value`in mn?mn.value:mn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return gn=i.slice(e,1<r?1-r:void 0)}function vn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function yn(){return!0}function bn(){return!1}function xn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?yn:bn,this.isPropagationStopped=bn,this}return m(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=yn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=yn)},persist:function(){},isPersistent:yn}),t}var Sn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Cn=xn(Sn),wn=m({},Sn,{view:0,detail:0}),Tn=xn(wn),En,Dn,On,kn=m({},wn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Bn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==On&&(On&&e.type===`mousemove`?(En=e.screenX-On.screenX,Dn=e.screenY-On.screenY):Dn=En=0,On=e),En)},movementY:function(e){return`movementY`in e?e.movementY:Dn}}),An=xn(kn),jn=xn(m({},kn,{dataTransfer:0})),Mn=xn(m({},wn,{relatedTarget:0})),Nn=xn(m({},Sn,{animationName:0,elapsedTime:0,pseudoElement:0})),Pn=xn(m({},Sn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Fn=xn(m({},Sn,{data:0})),In={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Ln={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Rn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function zn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Rn[e])?!!t[e]:!1}function Bn(){return zn}var Vn=xn(m({},wn,{key:function(e){if(e.key){var t=In[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=vn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Ln[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Bn,charCode:function(e){return e.type===`keypress`?vn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?vn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Hn=xn(m({},kn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Un=xn(m({},wn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Bn})),Wn=xn(m({},Sn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Gn=xn(m({},kn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Kn=xn(m({},Sn,{newState:0,oldState:0})),qn=[9,13,27,32],Jn=dn&&`CompositionEvent`in window,Yn=null;dn&&`documentMode`in document&&(Yn=document.documentMode);var Xn=dn&&`TextEvent`in window&&!Yn,Zn=dn&&(!Jn||Yn&&8<Yn&&11>=Yn),Qn=` `,$n=!1;function er(e,t){switch(e){case`keyup`:return qn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function tr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var nr=!1;function rr(e,t){switch(e){case`compositionend`:return tr(t);case`keypress`:return t.which===32?($n=!0,Qn):null;case`textInput`:return e=t.data,e===Qn&&$n?null:e;default:return null}}function ir(e,t){if(nr)return e===`compositionend`||!Jn&&er(e,t)?(e=_n(),gn=hn=mn=null,nr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Zn&&t.locale!==`ko`?null:t.data;default:return null}}var ar={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function or(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!ar[e.type]:t===`textarea`}function sr(e,t,n,r){an?on?on.push(r):on=[r]:an=r,t=Id(t,`onChange`),0<t.length&&(n=new Cn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var cr=null,lr=null;function ur(e){Od(e,0)}function dr(e){if(Lt(yt(e)))return e}function fr(e,t){if(e===`change`)return t}var pr=!1;if(dn){var mr;if(dn){var hr=`oninput`in document;if(!hr){var gr=document.createElement(`div`);gr.setAttribute(`oninput`,`return;`),hr=typeof gr.oninput==`function`}mr=hr}else mr=!1;pr=mr&&(!document.documentMode||9<document.documentMode)}function _r(){cr&&(cr.detachEvent(`onpropertychange`,vr),lr=cr=null)}function vr(e){if(e.propertyName===`value`&&dr(lr)){var t=[];sr(t,lr,e,rn(e)),ln(ur,t)}}function yr(e,t,n){e===`focusin`?(_r(),cr=t,lr=n,cr.attachEvent(`onpropertychange`,vr)):e===`focusout`&&_r()}function br(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return dr(lr)}function xr(e,t){if(e===`click`)return dr(t)}function Sr(e,t){if(e===`input`||e===`change`)return dr(t)}function Cr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var wr=typeof Object.is==`function`?Object.is:Cr;function Tr(e,t){if(wr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!Te.call(t,i)||!wr(e[i],t[i]))return!1}return!0}function Er(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Dr(e,t){var n=Er(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Er(n)}}function Or(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Or(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function kr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Rt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Rt(e.document)}return t}function Ar(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var jr=dn&&`documentMode`in document&&11>=document.documentMode,Mr=null,Nr=null,Pr=null,Fr=!1;function Ir(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Fr||Mr==null||Mr!==Rt(r)||(r=Mr,`selectionStart`in r&&Ar(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Pr&&Tr(Pr,r)||(Pr=r,r=Id(Nr,`onSelect`),0<r.length&&(t=new Cn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Mr)))}function Lr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Rr={animationend:Lr(`Animation`,`AnimationEnd`),animationiteration:Lr(`Animation`,`AnimationIteration`),animationstart:Lr(`Animation`,`AnimationStart`),transitionrun:Lr(`Transition`,`TransitionRun`),transitionstart:Lr(`Transition`,`TransitionStart`),transitioncancel:Lr(`Transition`,`TransitionCancel`),transitionend:Lr(`Transition`,`TransitionEnd`)},zr={},Br={};dn&&(Br=document.createElement(`div`).style,`AnimationEvent`in window||(delete Rr.animationend.animation,delete Rr.animationiteration.animation,delete Rr.animationstart.animation),`TransitionEvent`in window||delete Rr.transitionend.transition);function Vr(e){if(zr[e])return zr[e];if(!Rr[e])return e;var t=Rr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Br)return zr[e]=t[n];return e}var Hr=Vr(`animationend`),Ur=Vr(`animationiteration`),Wr=Vr(`animationstart`),Gr=Vr(`transitionrun`),Kr=Vr(`transitionstart`),qr=Vr(`transitioncancel`),Jr=Vr(`transitionend`),Yr=new Map,Xr=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);Xr.push(`scrollEnd`);function Zr(e,t){Yr.set(e,t),wt(t,[e])}var Qr=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)},$r=[],ei=0,ti=0;function ni(){for(var e=ei,t=ti=ei=0;t<e;){var n=$r[t];$r[t++]=null;var r=$r[t];$r[t++]=null;var i=$r[t];$r[t++]=null;var a=$r[t];if($r[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&oi(n,i,a)}}function ri(e,t,n,r){$r[ei++]=e,$r[ei++]=t,$r[ei++]=n,$r[ei++]=r,ti|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function ii(e,t,n,r){return ri(e,t,n,r),si(e)}function ai(e,t){return ri(e,null,null,t),si(e)}function oi(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Be(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function si(e){if(50<bu)throw bu=0,xu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var ci={};function li(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ui(e,t,n,r){return new li(e,t,n,r)}function di(e){return e=e.prototype,!(!e||!e.isReactComponent)}function fi(e,t){var n=e.alternate;return n===null?(n=ui(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function pi(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function mi(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)di(e)&&(s=1);else if(typeof e==`string`)s=$f(e,n,ue.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case ee:return e=ui(31,n,t,a),e.elementType=ee,e.lanes=o,e;case y:return hi(n.children,a,o,t);case b:s=8,a|=24;break;case x:return e=ui(12,n,t,a|2),e.elementType=x,e.lanes=o,e;case T:return e=ui(13,n,t,a),e.elementType=T,e.lanes=o,e;case E:return e=ui(19,n,t,a),e.elementType=E,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case C:s=10;break a;case S:s=9;break a;case w:s=11;break a;case D:s=14;break a;case O:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=ui(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function hi(e,t,n,r){return e=ui(7,e,r,t),e.lanes=n,e}function gi(e,t,n){return e=ui(6,e,null,t),e.lanes=n,e}function _i(e){var t=ui(18,null,null,0);return t.stateNode=e,t}function vi(e,t,n){return t=ui(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var yi=new WeakMap;function bi(e,t){if(typeof e==`object`&&e){var n=yi.get(e);return n===void 0?(t={value:e,source:t,stack:we(t)},yi.set(e,t),t):n}return{value:e,source:t,stack:we(t)}}var xi=[],Si=0,Ci=null,wi=0,Ti=[],Ei=0,Di=null,Oi=1,ki=``;function Ai(e,t){xi[Si++]=wi,xi[Si++]=Ci,Ci=e,wi=t}function ji(e,t,n){Ti[Ei++]=Oi,Ti[Ei++]=ki,Ti[Ei++]=Di,Di=e;var r=Oi;e=ki;var i=32-Be(r)-1;r&=~(1<<i),n+=1;var a=32-Be(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Oi=1<<32-Be(t)+i|n<<i|r,ki=a+e}else Oi=1<<a|n<<i|r,ki=e}function Mi(e){e.return!==null&&(Ai(e,1),ji(e,1,0))}function Ni(e){for(;e===Ci;)Ci=xi[--Si],xi[Si]=null,wi=xi[--Si],xi[Si]=null;for(;e===Di;)Di=Ti[--Ei],Ti[Ei]=null,ki=Ti[--Ei],Ti[Ei]=null,Oi=Ti[--Ei],Ti[Ei]=null}function Pi(e,t){Ti[Ei++]=Oi,Ti[Ei++]=ki,Ti[Ei++]=Di,Oi=t.id,ki=t.overflow,Di=e}var Fi=null,Ii=null,L=!1,Li=null,Ri=!1,zi=Error(i(519));function Bi(e){throw Ki(bi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),zi}function Vi(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[ct]=e,t[lt]=r,n){case`dialog`:kd(`cancel`,t),kd(`close`,t);break;case`iframe`:case`object`:case`embed`:kd(`load`,t);break;case`video`:case`audio`:for(n=0;n<Ed.length;n++)kd(Ed[n],t);break;case`source`:kd(`error`,t);break;case`img`:case`image`:case`link`:kd(`error`,t),kd(`load`,t);break;case`details`:kd(`toggle`,t);break;case`input`:kd(`invalid`,t),Ht(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:kd(`invalid`,t);break;case`textarea`:kd(`invalid`,t),Kt(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||Hd(t.textContent,n)?(r.popover!=null&&(kd(`beforetoggle`,t),kd(`toggle`,t)),r.onScroll!=null&&kd(`scroll`,t),r.onScrollEnd!=null&&kd(`scrollend`,t),r.onClick!=null&&(t.onclick=tn),t=!0):t=!1,t||Bi(e,!0)}function Hi(e){for(Fi=e.return;Fi;)switch(Fi.tag){case 5:case 31:case 13:Ri=!1;return;case 27:case 3:Ri=!0;return;default:Fi=Fi.return}}function Ui(e){if(e!==Fi)return!1;if(!L)return Hi(e),L=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||ef(e.type,e.memoizedProps)),n=!n),n&&Ii&&Bi(e),Hi(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Ii=xf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Ii=xf(e)}else t===27?(t=Ii,lf(e.type)?(e=bf,bf=null,Ii=e):Ii=t):Ii=Fi?yf(e.stateNode.nextSibling):null;return!0}function Wi(){Ii=Fi=null,L=!1}function Gi(){var e=Li;return e!==null&&(ou===null?ou=e:ou.push.apply(ou,e),Li=null),e}function Ki(e){Li===null?Li=[e]:Li.push(e)}var qi=se(null),Ji=null,Yi=null;function Xi(e,t,n){le(qi,t._currentValue),t._currentValue=n}function Zi(e){e._currentValue=qi.current,ce(qi)}function Qi(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function $i(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Qi(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Qi(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function ea(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;wr(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===pe.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[cp]:e.push(cp))}a=a.return}e!==null&&$i(t,e,n,r),t.flags|=262144}function ta(e){for(e=e.firstContext;e!==null;){if(!wr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function na(e){Ji=e,Yi=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ra(e){return aa(Ji,e)}function ia(e,t){return Ji===null&&na(e),aa(e,t)}function aa(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Yi===null){if(e===null)throw Error(i(308));Yi=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Yi=Yi.next=t;return n}var oa=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},sa=t.unstable_scheduleCallback,ca=t.unstable_NormalPriority,la={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function ua(){return{controller:new oa,data:new Map,refCount:0}}function da(e){e.refCount--,e.refCount===0&&sa(ca,function(){e.controller.abort()})}var fa=null,pa=0,ma=0,ha=null;function ga(e,t){if(fa===null){var n=fa=[];pa=0,ma=bd(),ha={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return pa++,t.then(_a,_a),t}function _a(){if(--pa===0&&fa!==null){ha!==null&&(ha.status=`fulfilled`);var e=fa;fa=null,ma=0,ha=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function va(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var ya=M.S;M.S=function(e,t){lu=P(),typeof t==`object`&&t&&typeof t.then==`function`&&ga(e,t),ya!==null&&ya(e,t)};var ba=se(null);function xa(){var e=ba.current;return e===null?Gl.pooledCache:e}function Sa(e,t){t===null?le(ba,ba.current):le(ba,t.pool)}function Ca(){var e=xa();return e===null?null:{parent:la._currentValue,pool:e}}var wa=Error(i(460)),Ta=Error(i(474)),Ea=Error(i(542)),Da={then:function(){}};function Oa(e){return e=e.status,e===`fulfilled`||e===`rejected`}function ka(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(tn,tn),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Na(e),e;default:if(typeof t.status==`string`)t.then(tn,tn);else{if(e=Gl,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Na(e),e}throw ja=t,wa}}function Aa(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(ja=e,wa):e}}var ja=null;function Ma(){if(ja===null)throw Error(i(459));var e=ja;return ja=null,e}function Na(e){if(e===wa||e===Ea)throw Error(i(483))}var Pa=null,Fa=0;function Ia(e){var t=Fa;return Fa+=1,Pa===null&&(Pa=[]),ka(Pa,e,t)}function La(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Ra(e,t){throw t.$$typeof===g?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function za(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=fi(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=gi(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===y?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===O&&Aa(i)===t.type)?(t=a(t,n.props),La(t,n),t.return=e,t):(t=mi(n.type,n.key,n.props,null,e.mode,r),La(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=vi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=hi(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=gi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case _:return n=mi(t.type,t.key,t.props,null,e.mode,n),La(n,t),n.return=e,n;case v:return t=vi(t,e.mode,n),t.return=e,t;case O:return t=Aa(t),f(e,t,n)}if(re(t)||A(t))return t=hi(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Ia(t),n);if(t.$$typeof===C)return f(e,ia(e,t),n);Ra(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case _:return n.key===i?l(e,t,n,r):null;case v:return n.key===i?u(e,t,n,r):null;case O:return n=Aa(n),p(e,t,n,r)}if(re(n)||A(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Ia(n),r);if(n.$$typeof===C)return p(e,t,ia(e,n),r);Ra(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case _:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case v:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case O:return r=Aa(r),m(e,t,n,r,i)}if(re(r)||A(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,Ia(r),i);if(r.$$typeof===C)return m(e,t,n,ia(t,r),i);Ra(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),L&&Ai(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return L&&Ai(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),L&&Ai(i,h),l}function g(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),L&&Ai(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return L&&Ai(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),L&&Ai(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===y&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case _:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===y){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===O&&Aa(l)===r.type){n(e,r.sibling),c=a(r,o.props),La(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===y?(c=hi(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=mi(o.type,o.key,o.props,null,e.mode,c),La(c,o),c.return=e,e=c)}return s(e);case v:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=vi(o,e.mode,c),c.return=e,e=c}return s(e);case O:return o=Aa(o),b(e,r,o,c)}if(re(o))return h(e,r,o,c);if(A(o)){if(l=A(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,Ia(o),c);if(o.$$typeof===C)return b(e,r,ia(e,o),c);Ra(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=gi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Fa=0;var i=b(e,t,n,r);return Pa=null,i}catch(t){if(t===wa||t===Ea)throw t;var a=ui(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ba=za(!0),Va=za(!1),Ha=!1;function Ua(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Wa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ga(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ka(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Wl&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=si(e),oi(e,null,n),t}return ri(e,r,t,n),si(e)}function qa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,nt(e,n)}}function Ja(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ya=!1;function Xa(){if(Ya){var e=ha;if(e!==null)throw e}}function Za(e,t,n,r){Ya=!1;var i=e.updateQueue;Ha=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Kl&f)===f:(r&f)===f){f!==0&&f===ma&&(Ya=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,f);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,f=typeof h==`function`?h.call(_,d,f):h,f==null)break a;d=m({},d,f);break a;case 2:Ha=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),eu|=o,e.lanes=o,e.memoizedState=d}}function Qa(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function $a(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Qa(n[e],t)}var eo=se(null),R=se(0);function to(e,t){e=Ql,le(R,e),le(eo,t),Ql=e|t.baseLanes}function no(){le(R,Ql),le(eo,eo.current)}function ro(){Ql=R.current,ce(eo),ce(R)}var io=se(null),ao=null;function oo(e){var t=e.alternate;le(fo,fo.current&1),le(io,e),ao===null&&(t===null||eo.current!==null||t.memoizedState!==null)&&(ao=e)}function so(e){le(fo,fo.current),le(io,e),ao===null&&(ao=e)}function co(e){e.tag===22?(le(fo,fo.current),le(io,e),ao===null&&(ao=e)):lo(e)}function lo(){le(fo,fo.current),le(io,io.current)}function uo(e){ce(io),ao===e&&(ao=null),ce(fo)}var fo=se(0);function po(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||gf(n)||_f(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var mo=0,z=null,ho=null,go=null,_o=!1,vo=!1,yo=!1,bo=0,xo=0,So=null,Co=0;function wo(){throw Error(i(321))}function To(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!wr(e[n],t[n]))return!1;return!0}function Eo(e,t,n,r,i,a){return mo=a,z=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,M.H=e===null||e.memoizedState===null?Hs:Us,yo=!1,a=n(r,i),yo=!1,vo&&(a=Oo(t,n,r,i)),Do(e),a}function Do(e){M.H=Vs;var t=ho!==null&&ho.next!==null;if(mo=0,go=ho=z=null,_o=!1,xo=0,So=null,t)throw Error(i(300));e===null||oc||(e=e.dependencies,e!==null&&ta(e)&&(oc=!0))}function Oo(e,t,n,r){z=e;var a=0;do{if(vo&&(So=null),xo=0,vo=!1,25<=a)throw Error(i(301));if(a+=1,go=ho=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}M.H=Ws,o=t(n,r)}while(vo);return o}function ko(){var e=M.H,t=e.useState()[0];return t=typeof t.then==`function`?Fo(t):t,e=e.useState()[0],(ho===null?null:ho.memoizedState)!==e&&(z.flags|=1024),t}function Ao(){var e=bo!==0;return bo=0,e}function jo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function Mo(e){if(_o){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}_o=!1}mo=0,go=ho=z=null,vo=!1,xo=bo=0,So=null}function No(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return go===null?z.memoizedState=go=e:go=go.next=e,go}function B(){if(ho===null){var e=z.alternate;e=e===null?null:e.memoizedState}else e=ho.next;var t=go===null?z.memoizedState:go.next;if(t!==null)go=t,ho=e;else{if(e===null)throw z.alternate===null?Error(i(467)):Error(i(310));ho=e,e={memoizedState:ho.memoizedState,baseState:ho.baseState,baseQueue:ho.baseQueue,queue:ho.queue,next:null},go===null?z.memoizedState=go=e:go=go.next=e}return go}function Po(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Fo(e){var t=xo;return xo+=1,So===null&&(So=[]),e=ka(So,e,t),t=z,(go===null?t.memoizedState:go.next)===null&&(t=t.alternate,M.H=t===null||t.memoizedState===null?Hs:Us),e}function Io(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return Fo(e);if(e.$$typeof===C)return ra(e)}throw Error(i(438,String(e)))}function Lo(e){var t=null,n=z.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=z.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Po(),z.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=k;return t.index++,n}function Ro(e,t){return typeof t==`function`?t(e):t}function zo(e){return Bo(B(),ho,e)}function Bo(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(mo&f)===f:(Kl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===ma&&(d=!0);else if((mo&p)===p){u=u.next,p===ma&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,z.lanes|=p,eu|=p;f=u.action,yo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,z.lanes|=f,eu|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!wr(o,e.memoizedState)&&(oc=!0,d&&(n=ha,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Vo(e){var t=B(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);wr(o,t.memoizedState)||(oc=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Ho(e,t,n){var r=z,a=B(),o=L;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!wr((ho||a).memoizedState,n);if(s&&(a.memoizedState=n,oc=!0),a=a.queue,ps(Go.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||go!==null&&go.memoizedState.tag&1){if(r.flags|=2048,cs(9,{destroy:void 0},Wo.bind(null,r,a,n,t),null),Gl===null)throw Error(i(349));o||mo&127||Uo(r,t,n)}return n}function Uo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=z.updateQueue,t===null?(t=Po(),z.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Wo(e,t,n,r){t.value=n,t.getSnapshot=r,Ko(t)&&qo(e)}function Go(e,t,n){return n(function(){Ko(t)&&qo(e)})}function Ko(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!wr(e,n)}catch{return!0}}function qo(e){var t=ai(e,2);t!==null&&wu(t,e,2)}function Jo(e){var t=No();if(typeof e==`function`){var n=e;if(e=n(),yo){ze(!0);try{n()}finally{ze(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:e},t}function Yo(e,t,n,r){return e.baseState=n,Bo(e,ho,typeof r==`function`?r:Ro)}function Xo(e,t,n,r,a){if(Rs(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};M.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,Zo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Zo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=M.T,o={};M.T=o;try{var s=n(i,r),c=M.S;c!==null&&c(o,s),Qo(e,t,s)}catch(n){es(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),M.T=a}}else try{a=n(i,r),Qo(e,t,a)}catch(n){es(e,t,n)}}function Qo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){$o(e,t,n)},function(n){return es(e,t,n)}):$o(e,t,n)}function $o(e,t,n){t.status=`fulfilled`,t.value=n,ts(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Zo(e,n)))}function es(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,ts(t),t=t.next;while(t!==r)}e.action=null}function ts(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function ns(e,t){return t}function rs(e,t){if(L){var n=Gl.formState;if(n!==null){a:{var r=z;if(L){if(Ii){b:{for(var i=Ii,a=Ri;i.nodeType!==8;){if(!a){i=null;break b}if(i=yf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){Ii=yf(i.nextSibling),r=i.data===`F!`;break a}}Bi(r)}r=!1}r&&(t=n[0])}}return n=No(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ns,lastRenderedState:t},n.queue=r,n=Fs.bind(null,z,r),r.dispatch=n,r=Jo(!1),a=Ls.bind(null,z,!1,r.queue),r=No(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Xo.bind(null,z,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function is(e){return as(B(),ho,e)}function as(e,t,n){if(t=Bo(e,t,ns)[0],e=zo(Ro)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=Fo(t)}catch(e){throw e===wa?Ea:e}else r=t;t=B();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(z.flags|=2048,cs(9,{destroy:void 0},os.bind(null,i,n),null)),[r,a,e]}function os(e,t){e.action=t}function ss(e){var t=B(),n=ho;if(n!==null)return as(t,n,e);B(),t=t.memoizedState,n=B();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function cs(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=z.updateQueue,t===null&&(t=Po(),z.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function ls(){return B().memoizedState}function us(e,t,n,r){var i=No();z.flags|=e,i.memoizedState=cs(1|t,{destroy:void 0},n,r===void 0?null:r)}function ds(e,t,n,r){var i=B();r=r===void 0?null:r;var a=i.memoizedState.inst;ho!==null&&r!==null&&To(r,ho.memoizedState.deps)?i.memoizedState=cs(t,a,n,r):(z.flags|=e,i.memoizedState=cs(1|t,a,n,r))}function fs(e,t){us(8390656,8,e,t)}function ps(e,t){ds(2048,8,e,t)}function ms(e){z.flags|=4;var t=z.updateQueue;if(t===null)t=Po(),z.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function hs(e){var t=B().memoizedState;return ms({ref:t,nextImpl:e}),function(){if(Wl&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function gs(e,t){return ds(4,2,e,t)}function _s(e,t){return ds(4,4,e,t)}function vs(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function ys(e,t,n){n=n==null?null:n.concat([e]),ds(4,4,vs.bind(null,t,e),n)}function bs(){}function xs(e,t){var n=B();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&To(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ss(e,t){var n=B();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&To(t,r[1]))return r[0];if(r=e(),yo){ze(!0);try{e()}finally{ze(!1)}}return n.memoizedState=[r,t],r}function Cs(e,t,n){return n===void 0||mo&1073741824&&!(Kl&261930)?e.memoizedState=t:(e.memoizedState=n,e=Cu(),z.lanes|=e,eu|=e,n)}function ws(e,t,n,r){return wr(n,t)?n:eo.current===null?!(mo&42)||mo&1073741824&&!(Kl&261930)?(oc=!0,e.memoizedState=n):(e=Cu(),z.lanes|=e,eu|=e,t):(e=Cs(e,n,r),wr(e,t)||(oc=!0),e)}function Ts(e,t,n,r,i){var a=N.p;N.p=a!==0&&8>a?a:8;var o=M.T,s={};M.T=s,Ls(e,!1,t,n);try{var c=i(),l=M.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Is(e,t,va(c,r),Su(e)):Is(e,t,r,Su(e))}catch(n){Is(e,t,{then:function(){},status:`rejected`,reason:n},Su())}finally{N.p=a,o!==null&&s.types!==null&&(o.types=s.types),M.T=o}}function Es(){}function Ds(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Os(e).queue;Ts(e,a,t,ie,n===null?Es:function(){return ks(e),n(r)})}function Os(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ie,baseState:ie,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:ie},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function ks(e){var t=Os(e);t.next===null&&(t=e.alternate.memoizedState),Is(e,t.next.queue,{},Su())}function As(){return ra(cp)}function js(){return B().memoizedState}function Ms(){return B().memoizedState}function Ns(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Su();e=Ga(n);var r=Ka(t,e,n);r!==null&&(wu(r,t,n),qa(r,t,n)),t={cache:ua()},e.payload=t;return}t=t.return}}function Ps(e,t,n){var r=Su();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Rs(e)?zs(t,n):(n=ii(e,t,n,r),n!==null&&(wu(n,e,r),Bs(n,t,r)))}function Fs(e,t,n){Is(e,t,n,Su())}function Is(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Rs(e))zs(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,wr(s,o))return ri(e,t,i,0),Gl===null&&ni(),!1}catch{}if(n=ii(e,t,i,r),n!==null)return wu(n,e,r),Bs(n,t,r),!0}return!1}function Ls(e,t,n,r){if(r={lane:2,revertLane:bd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Rs(e)){if(t)throw Error(i(479))}else t=ii(e,n,r,2),t!==null&&wu(t,e,2)}function Rs(e){var t=e.alternate;return e===z||t!==null&&t===z}function zs(e,t){vo=_o=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Bs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,nt(e,n)}}var Vs={readContext:ra,use:Io,useCallback:wo,useContext:wo,useEffect:wo,useImperativeHandle:wo,useLayoutEffect:wo,useInsertionEffect:wo,useMemo:wo,useReducer:wo,useRef:wo,useState:wo,useDebugValue:wo,useDeferredValue:wo,useTransition:wo,useSyncExternalStore:wo,useId:wo,useHostTransitionStatus:wo,useFormState:wo,useActionState:wo,useOptimistic:wo,useMemoCache:wo,useCacheRefresh:wo};Vs.useEffectEvent=wo;var Hs={readContext:ra,use:Io,useCallback:function(e,t){return No().memoizedState=[e,t===void 0?null:t],e},useContext:ra,useEffect:fs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),us(4194308,4,vs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return us(4194308,4,e,t)},useInsertionEffect:function(e,t){us(4,2,e,t)},useMemo:function(e,t){var n=No();t=t===void 0?null:t;var r=e();if(yo){ze(!0);try{e()}finally{ze(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=No();if(n!==void 0){var i=n(t);if(yo){ze(!0);try{n(t)}finally{ze(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ps.bind(null,z,e),[r.memoizedState,e]},useRef:function(e){var t=No();return e={current:e},t.memoizedState=e},useState:function(e){e=Jo(e);var t=e.queue,n=Fs.bind(null,z,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:bs,useDeferredValue:function(e,t){return Cs(No(),e,t)},useTransition:function(){var e=Jo(!1);return e=Ts.bind(null,z,e.queue,!0,!1),No().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=z,a=No();if(L){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Gl===null)throw Error(i(349));Kl&127||Uo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,fs(Go.bind(null,r,o,e),[e]),r.flags|=2048,cs(9,{destroy:void 0},Wo.bind(null,r,o,n,t),null),n},useId:function(){var e=No(),t=Gl.identifierPrefix;if(L){var n=ki,r=Oi;n=(r&~(1<<32-Be(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=bo++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=Co++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:As,useFormState:rs,useActionState:rs,useOptimistic:function(e){var t=No();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Ls.bind(null,z,!0,n),n.dispatch=t,[e,t]},useMemoCache:Lo,useCacheRefresh:function(){return No().memoizedState=Ns.bind(null,z)},useEffectEvent:function(e){var t=No(),n={impl:e};return t.memoizedState=n,function(){if(Wl&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Us={readContext:ra,use:Io,useCallback:xs,useContext:ra,useEffect:ps,useImperativeHandle:ys,useInsertionEffect:gs,useLayoutEffect:_s,useMemo:Ss,useReducer:zo,useRef:ls,useState:function(){return zo(Ro)},useDebugValue:bs,useDeferredValue:function(e,t){return ws(B(),ho.memoizedState,e,t)},useTransition:function(){var e=zo(Ro)[0],t=B().memoizedState;return[typeof e==`boolean`?e:Fo(e),t]},useSyncExternalStore:Ho,useId:js,useHostTransitionStatus:As,useFormState:is,useActionState:is,useOptimistic:function(e,t){return Yo(B(),ho,e,t)},useMemoCache:Lo,useCacheRefresh:Ms};Us.useEffectEvent=hs;var Ws={readContext:ra,use:Io,useCallback:xs,useContext:ra,useEffect:ps,useImperativeHandle:ys,useInsertionEffect:gs,useLayoutEffect:_s,useMemo:Ss,useReducer:Vo,useRef:ls,useState:function(){return Vo(Ro)},useDebugValue:bs,useDeferredValue:function(e,t){var n=B();return ho===null?Cs(n,e,t):ws(n,ho.memoizedState,e,t)},useTransition:function(){var e=Vo(Ro)[0],t=B().memoizedState;return[typeof e==`boolean`?e:Fo(e),t]},useSyncExternalStore:Ho,useId:js,useHostTransitionStatus:As,useFormState:ss,useActionState:ss,useOptimistic:function(e,t){var n=B();return ho===null?(n.baseState=e,[e,n.queue.dispatch]):Yo(n,ho,e,t)},useMemoCache:Lo,useCacheRefresh:Ms};Ws.useEffectEvent=hs;function Gs(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:m({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ks={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Su(),i=Ga(r);i.payload=t,n!=null&&(i.callback=n),t=Ka(e,i,r),t!==null&&(wu(t,e,r),qa(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Su(),i=Ga(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Ka(e,i,r),t!==null&&(wu(t,e,r),qa(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Su(),r=Ga(n);r.tag=2,t!=null&&(r.callback=t),t=Ka(e,r,n),t!==null&&(wu(t,e,n),qa(t,e,n))}};function qs(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Tr(n,r)||!Tr(i,a):!0}function Js(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ks.enqueueReplaceState(t,t.state,null)}function Ys(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=m({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Xs(e){Qr(e)}function Zs(e){console.error(e)}function Qs(e){Qr(e)}function $s(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function ec(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function tc(e,t,n){return n=Ga(n),n.tag=3,n.payload={element:null},n.callback=function(){$s(e,t)},n}function nc(e){return e=Ga(e),e.tag=3,e}function rc(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){ec(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){ec(t,n,r),typeof i!=`function`&&(fu===null?fu=new Set([this]):fu.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function ic(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&ea(t,n,a,!0),n=io.current,n!==null){switch(n.tag){case 31:case 13:return ao===null?Iu():n.alternate===null&&$l===0&&($l=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===Da?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),td(e,r,a)),!1;case 22:return n.flags|=65536,r===Da?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),td(e,r,a)),!1}throw Error(i(435,n.tag))}return td(e,r,a),Iu(),!1}if(L)return t=io.current,t===null?(r!==zi&&(t=Error(i(423),{cause:r}),Ki(bi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=bi(r,n),a=tc(e.stateNode,r,a),Ja(e,a),$l!==4&&($l=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==zi&&(e=Error(i(422),{cause:r}),Ki(bi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=bi(o,n),au===null?au=[o]:au.push(o),$l!==4&&($l=2),t===null)return!0;r=bi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=tc(n.stateNode,r,e),Ja(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(fu===null||!fu.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=nc(a),rc(a,e,n,r),Ja(n,a),!1}n=n.return}while(n!==null);return!1}var ac=Error(i(461)),oc=!1;function sc(e,t,n,r){t.child=e===null?Va(t,null,n,r):Ba(t,e.child,n,r)}function cc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return na(t),r=Eo(e,t,n,o,a,i),s=Ao(),e!==null&&!oc?(jo(e,t,i),Mc(e,t,i)):(L&&s&&Mi(t),t.flags|=1,sc(e,t,r,i),t.child)}function lc(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!di(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,uc(e,t,a,r,i)):(e=mi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!Nc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Tr:n,n(o,r)&&e.ref===t.ref)return Mc(e,t,i)}return t.flags|=1,e=fi(a,r),e.ref=t.ref,e.return=t,t.child=e}function uc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Tr(a,r)&&e.ref===t.ref){if(oc=!1,t.pendingProps=r=a,Nc(e,i))e.flags&131072&&(oc=!0);else return t.lanes=e.lanes,Mc(e,t,i)}}return vc(e,t,n,r,i)}function dc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return pc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Sa(t,a===null?null:a.cachePool),a===null?no():to(t,a),co(t);else return r=t.lanes=536870912,pc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&Sa(t,null),no(),lo(t)):(Sa(t,a.cachePool),to(t,a),lo(t),t.memoizedState=null);return sc(e,t,i,n),t.child}function fc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function pc(e,t,n,r,i){var a=xa();return a=a===null?null:{parent:la._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&Sa(t,null),no(),co(t),e!==null&&ea(e,t,r,!0),t.childLanes=i,null}function mc(e,t){return t=Dc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function hc(e,t,n){return Ba(t,e.child,null,n),e=mc(t,t.pendingProps),e.flags|=2,uo(t),t.memoizedState=null,e}function gc(e,t,n){var r=t.pendingProps,a=!!(t.flags&128);if(t.flags&=-129,e===null){if(L){if(r.mode===`hidden`)return e=mc(t,r),t.lanes=536870912,fc(null,e);if(so(t),(e=Ii)?(e=hf(e,Ri),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Di===null?null:{id:Oi,overflow:ki},retryLane:536870912,hydrationErrors:null},n=_i(e),n.return=t,t.child=n,Fi=t,Ii=null)):e=null,e===null)throw Bi(t);return t.lanes=536870912,null}return mc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(so(t),a){if(t.flags&256)t.flags&=-257,t=hc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558))}else if(oc||ea(e,t,n,!1),a=(n&e.childLanes)!==0,oc||a){if(r=Gl,r!==null&&(s=rt(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,ai(e,s),wu(r,e,s),ac;Iu(),t=hc(e,t,n)}else e=o.treeContext,Ii=yf(s.nextSibling),Fi=t,L=!0,Li=null,Ri=!1,e!==null&&Pi(t,e),t=mc(t,r),t.flags|=4096;return t}return e=fi(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function _c(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function vc(e,t,n,r,i){return na(t),n=Eo(e,t,n,r,void 0,i),r=Ao(),e!==null&&!oc?(jo(e,t,i),Mc(e,t,i)):(L&&r&&Mi(t),t.flags|=1,sc(e,t,n,i),t.child)}function yc(e,t,n,r,i,a){return na(t),t.updateQueue=null,n=Oo(t,r,n,i),Do(e),r=Ao(),e!==null&&!oc?(jo(e,t,a),Mc(e,t,a)):(L&&r&&Mi(t),t.flags|=1,sc(e,t,n,a),t.child)}function bc(e,t,n,r,i){if(na(t),t.stateNode===null){var a=ci,o=n.contextType;typeof o==`object`&&o&&(a=ra(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ks,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Ua(t),o=n.contextType,a.context=typeof o==`object`&&o?ra(o):ci,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Gs(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Ks.enqueueReplaceState(a,a.state,null),Za(t,r,a,i),Xa(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Ys(n,s);a.props=c;var l=a.context,u=n.contextType;o=ci,typeof u==`object`&&u&&(o=ra(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Js(t,a,r,o),Ha=!1;var f=t.memoizedState;a.state=f,Za(t,r,a,i),Xa(),l=t.memoizedState,s||f!==l||Ha?(typeof d==`function`&&(Gs(t,n,d,r),l=t.memoizedState),(c=Ha||qs(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,Wa(e,t),o=t.memoizedProps,u=Ys(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=ci,typeof l==`object`&&l&&(c=ra(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Js(t,a,r,c),Ha=!1,f=t.memoizedState,a.state=f,Za(t,r,a,i),Xa();var p=t.memoizedState;o!==d||f!==p||Ha||e!==null&&e.dependencies!==null&&ta(e.dependencies)?(typeof s==`function`&&(Gs(t,n,s,r),p=t.memoizedState),(u=Ha||qs(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&ta(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,_c(e,t),r=!!(t.flags&128),a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Ba(t,e.child,null,i),t.child=Ba(t,null,n,i)):sc(e,t,n,i),t.memoizedState=a.state,e=t.child):e=Mc(e,t,i),e}function xc(e,t,n,r){return Wi(),t.flags|=256,sc(e,t,n,r),t.child}var Sc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Cc(e){return{baseLanes:e,cachePool:Ca()}}function wc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=ru),e}function Tc(e,t,n){var r=t.pendingProps,a=!1,o=!!(t.flags&128),s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:!!(fo.current&2)),s&&(a=!0,t.flags&=-129),s=!!(t.flags&32),t.flags&=-33,e===null){if(L){if(a?oo(t):lo(t),(e=Ii)?(e=hf(e,Ri),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Di===null?null:{id:Oi,overflow:ki},retryLane:536870912,hydrationErrors:null},n=_i(e),n.return=t,t.child=n,Fi=t,Ii=null)):e=null,e===null)throw Bi(t);return _f(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(lo(t),a=t.mode,c=Dc({mode:`hidden`,children:c},a),r=hi(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=Cc(n),r.childLanes=wc(e,s,n),t.memoizedState=Sc,fc(null,r)):(oo(t),Ec(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(oo(t),t.flags&=-257,t=Oc(e,t,n)):t.memoizedState===null?(lo(t),c=r.fallback,a=t.mode,r=Dc({mode:`visible`,children:r.children},a),c=hi(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Ba(t,e.child,null,n),r=t.child,r.memoizedState=Cc(n),r.childLanes=wc(e,s,n),t.memoizedState=Sc,t=fc(null,r)):(lo(t),t.child=e.child,t.flags|=128,t=null);else if(oo(t),_f(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Ki({value:r,source:null,stack:null}),t=Oc(e,t,n)}else if(oc||ea(e,t,n,!1),s=(n&e.childLanes)!==0,oc||s){if(s=Gl,s!==null&&(r=rt(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,ai(e,r),wu(s,e,r),ac;gf(c)||Iu(),t=Oc(e,t,n)}else gf(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,Ii=yf(c.nextSibling),Fi=t,L=!0,Li=null,Ri=!1,e!==null&&Pi(t,e),t=Ec(t,r.children),t.flags|=4096);return t}return a?(lo(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=fi(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=hi(c,a,n,null),c.flags|=2):c=fi(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,fc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=Cc(n):(a=c.cachePool,a===null?a=Ca():(l=la._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=wc(e,s,n),t.memoizedState=Sc,fc(e.child,r)):(oo(t),n=e.child,e=n.sibling,n=fi(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function Ec(e,t){return t=Dc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Dc(e,t){return e=ui(22,e,null,t),e.lanes=0,e}function Oc(e,t,n){return Ba(t,e.child,null,n),e=Ec(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function kc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Qi(e.return,t,n)}function Ac(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function jc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=fo.current,s=!!(o&2);if(s?(o=o&1|2,t.flags|=128):o&=1,le(fo,o),sc(e,t,r,n),r=L?wi:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&kc(e,n,t);else if(e.tag===19)kc(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&po(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Ac(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&po(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Ac(t,!0,n,null,a,r);break;case`together`:Ac(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function Mc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),eu|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(ea(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=fi(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=fi(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Nc(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&ta(e)))}function Pc(e,t,n){switch(t.tag){case 3:me(t,t.stateNode.containerInfo),Xi(t,la,e.memoizedState.cache),Wi();break;case 27:case 5:ge(t);break;case 4:me(t,t.stateNode.containerInfo);break;case 10:Xi(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,so(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(oo(t),e=Mc(e,t,n),e===null?null:e.sibling):Tc(e,t,n):(oo(t),t.flags|=128,null);oo(t);break;case 19:var i=!!(e.flags&128);if(r=(n&t.childLanes)!==0,r||=(ea(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return jc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),le(fo,fo.current),r)break;return null;case 22:return t.lanes=0,dc(e,t,n,t.pendingProps);case 24:Xi(t,la,e.memoizedState.cache)}return Mc(e,t,n)}function Fc(e,t,n){if(e!==null){if(e.memoizedProps!==t.pendingProps)oc=!0;else{if(!Nc(e,n)&&!(t.flags&128))return oc=!1,Pc(e,t,n);oc=!!(e.flags&131072)}}else oc=!1,L&&t.flags&1048576&&ji(t,wi,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=Aa(t.elementType),t.type=e,typeof e==`function`)di(e)?(r=Ys(e,r),t.tag=1,t=bc(null,t,e,r,n)):(t.tag=0,t=vc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===w){t.tag=11,t=cc(null,t,e,r,n);break a}if(a===D){t.tag=14,t=lc(null,t,e,r,n);break a}}throw t=ne(e)||e,Error(i(306,t,``))}}return t;case 0:return vc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Ys(r,t.pendingProps),bc(e,t,r,a,n);case 3:a:{if(me(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,Wa(e,t),Za(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Xi(t,la,r),r!==o.cache&&$i(t,[la],n,!0),Xa(),r=s.element,o.isDehydrated){if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=xc(e,t,r,n);break a}if(r!==a){a=bi(Error(i(424)),t),Ki(a),t=xc(e,t,r,n);break a}switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Ii=yf(e.firstChild),Fi=t,L=!0,Li=null,Ri=!0,n=Va(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Wi(),r===a){t=Mc(e,t,n);break a}sc(e,t,r,n)}t=t.child}return t;case 26:return _c(e,t),e===null?(n=Bf(t.type,null,t.pendingProps,null))?t.memoizedState=n:L||(n=t.type,e=t.pendingProps,r=Zd(fe.current).createElement(n),r[ct]=t,r[lt]=e,Gd(r,n,e),xt(r),t.stateNode=r):t.memoizedState=Bf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return ge(t),e===null&&L&&(r=t.stateNode=Cf(t.type,t.pendingProps,fe.current),Fi=t,Ri=!0,a=Ii,lf(t.type)?(bf=a,Ii=yf(r.firstChild)):Ii=a),sc(e,t,t.pendingProps.children,n),_c(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&L&&((a=r=Ii)&&(r=pf(r,t.type,t.pendingProps,Ri),r===null?a=!1:(t.stateNode=r,Fi=t,Ii=yf(r.firstChild),Ri=!1,a=!0)),a||Bi(t)),ge(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,ef(a,o)?r=null:s!==null&&ef(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=Eo(e,t,ko,null,null,n),cp._currentValue=a),_c(e,t),sc(e,t,r,n),t.child;case 6:return e===null&&L&&((e=n=Ii)&&(n=mf(n,t.pendingProps,Ri),n===null?e=!1:(t.stateNode=n,Fi=t,Ii=null,e=!0)),e||Bi(t)),null;case 13:return Tc(e,t,n);case 4:return me(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ba(t,null,r,n):sc(e,t,r,n),t.child;case 11:return cc(e,t,t.type,t.pendingProps,n);case 7:return sc(e,t,t.pendingProps,n),t.child;case 8:return sc(e,t,t.pendingProps.children,n),t.child;case 12:return sc(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Xi(t,t.type,r.value),sc(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,na(t),a=ra(a),r=r(a),t.flags|=1,sc(e,t,r,n),t.child;case 14:return lc(e,t,t.type,t.pendingProps,n);case 15:return uc(e,t,t.type,t.pendingProps,n);case 19:return jc(e,t,n);case 31:return gc(e,t,n);case 22:return dc(e,t,n,t.pendingProps);case 24:return na(t),r=ra(la),e===null?(a=xa(),a===null&&(a=Gl,o=ua(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Ua(t),Xi(t,la,a)):((e.lanes&n)!==0&&(Wa(e,t),Za(t,null,null,n),Xa()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Xi(t,la,r),r!==a.cache&&$i(t,[la],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Xi(t,la,r))),sc(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Ic(e){e.flags|=4}function Lc(e,t,n,r,i){if((t=!!(e.mode&32))&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if(Nu())e.flags|=8192;else throw ja=Da,Ta}}else e.flags&=-16777217}function Rc(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!ep(t)){if(Nu())e.flags|=8192;else throw ja=Da,Ta}}function zc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ze(),e.lanes|=t,iu|=t)}function Bc(e,t){if(!L)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Vc(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Hc(e,t,n){var r=t.pendingProps;switch(Ni(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Vc(t),null;case 1:return Vc(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Zi(la),he(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Ui(t)?Ic(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Gi())),Vc(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Ic(t),o===null?(Vc(t),Lc(t,a,null,r,n)):(Vc(t),Rc(t,o))):o?o===e.memoizedState?(Vc(t),t.flags&=-16777217):(Ic(t),Vc(t),Rc(t,o)):(e=e.memoizedProps,e!==r&&Ic(t),Vc(t),Lc(t,a,e,r,n)),null;case 27:if(_e(t),n=fe.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Ic(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Vc(t),null}e=ue.current,Ui(t)?Vi(t,e):(e=Cf(a,r,n),t.stateNode=e,Ic(t))}return Vc(t),null;case 5:if(_e(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Ic(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Vc(t),null}if(o=ue.current,Ui(t))Vi(t,o);else{var s=Zd(fe.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[ct]=t,o[lt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Gd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Ic(t)}}return Vc(t),Lc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Ic(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=fe.current,Ui(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=Fi,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[ct]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Hd(e.nodeValue,n)),e||Bi(t,!0)}else e=Zd(e).createTextNode(r),e[ct]=t,t.stateNode=e}return Vc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Ui(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[ct]=t}else Wi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Vc(t),e=!1}else n=Gi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(uo(t),t):(uo(t),null);if(t.flags&128)throw Error(i(558))}return Vc(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Ui(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[ct]=t}else Wi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Vc(t),a=!1}else a=Gi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(uo(t),t):(uo(t),null)}return uo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),zc(t,t.updateQueue),Vc(t),null);case 4:return he(),e===null&&Md(t.stateNode.containerInfo),Vc(t),null;case 10:return Zi(t.type),Vc(t),null;case 19:if(ce(fo),r=t.memoizedState,r===null)return Vc(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Bc(r,!1);else{if($l!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=po(e),o!==null){for(t.flags|=128,Bc(r,!1),e=o.updateQueue,t.updateQueue=e,zc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)pi(n,e),n=n.sibling;return le(fo,fo.current&1|2),L&&Ai(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&P()>uu&&(t.flags|=128,a=!0,Bc(r,!1),t.lanes=4194304)}}else{if(!a){if(e=po(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,zc(t,e),Bc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!L)return Vc(t),null}else 2*P()-r.renderingStartTime>uu&&n!==536870912&&(t.flags|=128,a=!0,Bc(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(Vc(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=P(),e.sibling=null,n=fo.current,le(fo,a?n&1|2:n&1),L&&Ai(t,r.treeForkCount),e);case 22:case 23:return uo(t),ro(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Vc(t),t.subtreeFlags&6&&(t.flags|=8192)):Vc(t),n=t.updateQueue,n!==null&&zc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&ce(ba),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Zi(la),Vc(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Uc(e,t){switch(Ni(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Zi(la),he(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return _e(t),null;case 31:if(t.memoizedState!==null){if(uo(t),t.alternate===null)throw Error(i(340));Wi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(uo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Wi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ce(fo),null;case 4:return he(),null;case 10:return Zi(t.type),null;case 22:case 23:return uo(t),ro(),e!==null&&ce(ba),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Zi(la),null;case 25:return null;default:return null}}function Wc(e,t){switch(Ni(t),t.tag){case 3:Zi(la),he();break;case 26:case 27:case 5:_e(t);break;case 4:he();break;case 31:t.memoizedState!==null&&uo(t);break;case 13:uo(t);break;case 19:ce(fo);break;case 10:Zi(t.type);break;case 22:case 23:uo(t),ro(),e!==null&&ce(ba);break;case 24:Zi(la)}}function Gc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){ed(t,t.return,e)}}function Kc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){ed(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){ed(t,t.return,e)}}function qc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{$a(t,n)}catch(t){ed(e,e.return,t)}}}function Jc(e,t,n){n.props=Ys(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){ed(e,t,n)}}function Yc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){ed(e,t,n)}}function Xc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){ed(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){ed(e,t,n)}else n.current=null}}function Zc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){ed(e,e.return,t)}}function Qc(e,t,n){try{var r=e.stateNode;Kd(r,e.type,n,t),r[lt]=t}catch(t){ed(e,e.return,t)}}function $c(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&lf(e.type)||e.tag===4}function el(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||$c(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&lf(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function tl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=tn));else if(r!==4&&(r===27&&lf(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(tl(e,t,n),e=e.sibling;e!==null;)tl(e,t,n),e=e.sibling}function nl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&lf(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(nl(e,t,n),e=e.sibling;e!==null;)nl(e,t,n),e=e.sibling}function rl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Gd(t,r,n),t[ct]=e,t[lt]=n}catch(t){ed(e,e.return,t)}}var il=!1,al=!1,ol=!1,sl=typeof WeakSet==`function`?WeakSet:Set,cl=null;function ll(e,t){if(e=e.containerInfo,Yd=gp,e=kr(e),Ar(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(Xd={focusedElem:e,selectionRange:n},gp=!1,cl=t;cl!==null;)if(t=cl,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,cl=e;else for(;cl!==null;){switch(t=cl,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=Ys(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){ed(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ff(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ff(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,cl=e;break}cl=t.return}}function ul(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:Tl(e,n),r&4&&Gc(5,n);break;case 1:if(Tl(e,n),r&4){if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){ed(n,n.return,e)}else{var i=Ys(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){ed(n,n.return,e)}}}r&64&&qc(n),r&512&&Yc(n,n.return);break;case 3:if(Tl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{$a(e,t)}catch(e){ed(n,n.return,e)}}break;case 27:t===null&&r&4&&rl(n);case 26:case 5:Tl(e,n),t===null&&r&4&&Zc(n),r&512&&Yc(n,n.return);break;case 12:Tl(e,n);break;case 31:Tl(e,n),r&4&&gl(e,n);break;case 13:Tl(e,n),r&4&&_l(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=id.bind(null,n),vf(e,n))));break;case 22:if(r=n.memoizedState!==null||il,!r){t=t!==null&&t.memoizedState!==null||al,i=il;var a=al;il=r,(al=t)&&!a?Dl(e,n,!!(n.subtreeFlags&8772)):Tl(e,n),il=i,al=a}break;case 30:break;default:Tl(e,n)}}function dl(e){var t=e.alternate;t!==null&&(e.alternate=null,dl(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&>(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var fl=null,pl=!1;function ml(e,t,n){for(n=n.child;n!==null;)hl(e,t,n),n=n.sibling}function hl(e,t,n){if(Re&&typeof Re.onCommitFiberUnmount==`function`)try{Re.onCommitFiberUnmount(Le,n)}catch{}switch(n.tag){case 26:al||Xc(n,t),ml(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:al||Xc(n,t);var r=fl,i=pl;lf(n.type)&&(fl=n.stateNode,pl=!1),ml(e,t,n),wf(n.stateNode),fl=r,pl=i;break;case 5:al||Xc(n,t);case 6:if(r=fl,i=pl,fl=null,ml(e,t,n),fl=r,pl=i,fl!==null){if(pl)try{(fl.nodeType===9?fl.body:fl.nodeName===`HTML`?fl.ownerDocument.body:fl).removeChild(n.stateNode)}catch(e){ed(n,t,e)}else try{fl.removeChild(n.stateNode)}catch(e){ed(n,t,e)}}break;case 18:fl!==null&&(pl?(e=fl,uf(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Ip(e)):uf(fl,n.stateNode));break;case 4:r=fl,i=pl,fl=n.stateNode.containerInfo,pl=!0,ml(e,t,n),fl=r,pl=i;break;case 0:case 11:case 14:case 15:Kc(2,n,t),al||Kc(4,n,t),ml(e,t,n);break;case 1:al||(Xc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Jc(n,t,r)),ml(e,t,n);break;case 21:ml(e,t,n);break;case 22:al=(r=al)||n.memoizedState!==null,ml(e,t,n),al=r;break;default:ml(e,t,n)}}function gl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Ip(e)}catch(e){ed(t,t.return,e)}}}function _l(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Ip(e)}catch(e){ed(t,t.return,e)}}function vl(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new sl),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new sl),t;default:throw Error(i(435,e.tag))}}function yl(e,t){var n=vl(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=ad.bind(null,e,t);t.then(r,r)}})}function bl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(lf(c.type)){fl=c.stateNode,pl=!1;break a}break;case 5:fl=c.stateNode,pl=!1;break a;case 3:case 4:fl=c.stateNode.containerInfo,pl=!0;break a}c=c.return}if(fl===null)throw Error(i(160));hl(o,s,a),fl=null,pl=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Sl(t,e),t=t.sibling}var xl=null;function Sl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:bl(t,e),Cl(e),r&4&&(Kc(3,e,e.return),Gc(3,e),Kc(5,e,e.return));break;case 1:bl(t,e),Cl(e),r&512&&(al||n===null||Xc(n,n.return)),r&64&&il&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=xl;if(bl(t,e),Cl(e),r&512&&(al||n===null||Xc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null){if(r===null){if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[ht]||o[ct]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Gd(o,r,n),o[ct]=e,xt(o),r=o;break a;case`link`:var s=Zf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Gd(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Zf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Gd(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[ct]=e,xt(o),r=o}e.stateNode=r}else Qf(a,e.type,e.stateNode)}else e.stateNode=qf(a,r,e.memoizedProps)}else o===r?r===null&&e.stateNode!==null&&Qc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Qf(a,e.type,e.stateNode):qf(a,r,e.memoizedProps))}break;case 27:bl(t,e),Cl(e),r&512&&(al||n===null||Xc(n,n.return)),n!==null&&r&4&&Qc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(bl(t,e),Cl(e),r&512&&(al||n===null||Xc(n,n.return)),e.flags&32){a=e.stateNode;try{qt(a,``)}catch(t){ed(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,Qc(e,a,n===null?a:n.memoizedProps)),r&1024&&(ol=!0);break;case 6:if(bl(t,e),Cl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){ed(e,e.return,t)}}break;case 3:if(U=null,a=xl,xl=Df(t.containerInfo),bl(t,e),xl=a,Cl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Ip(t.containerInfo)}catch(t){ed(e,e.return,t)}ol&&(ol=!1,wl(e));break;case 4:r=xl,xl=Df(e.stateNode.containerInfo),bl(t,e),Cl(e),xl=r;break;case 12:bl(t,e),Cl(e);break;case 31:bl(t,e),Cl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,yl(e,r)));break;case 13:bl(t,e),Cl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(cu=P()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,yl(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=il,d=al;if(il=u||a,al=d||l,bl(t,e),al=d,il=u,Cl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||il||al||El(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){ed(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){ed(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?df(m,!0):df(l.stateNode,!1)}catch(e){ed(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,yl(e,n))));break;case 19:bl(t,e),Cl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,yl(e,r)));break;case 30:break;case 21:break;default:bl(t,e),Cl(e)}}function Cl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if($c(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;nl(e,el(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(qt(o,``),n.flags&=-33),nl(e,el(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;tl(e,el(e),s);break;default:throw Error(i(161))}}catch(t){ed(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function wl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;wl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function Tl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)ul(e,t.alternate,t),t=t.sibling}function El(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Kc(4,t,t.return),El(t);break;case 1:Xc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Jc(t,t.return,n),El(t);break;case 27:wf(t.stateNode);case 26:case 5:Xc(t,t.return),El(t);break;case 22:t.memoizedState===null&&El(t);break;case 30:El(t);break;default:El(t)}e=e.sibling}}function Dl(e,t,n){for(n&&=!!(t.subtreeFlags&8772),t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:Dl(i,a,n),Gc(4,a);break;case 1:if(Dl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){ed(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)Qa(c[i],s)}catch(e){ed(r,r.return,e)}}n&&o&64&&qc(a),Yc(a,a.return);break;case 27:rl(a);case 26:case 5:Dl(i,a,n),n&&r===null&&o&4&&Zc(a),Yc(a,a.return);break;case 12:Dl(i,a,n);break;case 31:Dl(i,a,n),n&&o&4&&gl(i,a);break;case 13:Dl(i,a,n),n&&o&4&&_l(i,a);break;case 22:a.memoizedState===null&&Dl(i,a,n),Yc(a,a.return);break;case 30:break;default:Dl(i,a,n)}t=t.sibling}}function Ol(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&da(n))}function kl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&da(e))}function Al(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)jl(e,t,n,r),t=t.sibling}function jl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:Al(e,t,n,r),i&2048&&Gc(9,t);break;case 1:Al(e,t,n,r);break;case 3:Al(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&da(e)));break;case 12:if(i&2048){Al(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){ed(t,t.return,e)}}else Al(e,t,n,r);break;case 31:Al(e,t,n,r);break;case 13:Al(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?Al(e,t,n,r):(a._visibility|=2,Ml(e,t,n,r,!!(t.subtreeFlags&10256)||!1)):a._visibility&2?Al(e,t,n,r):Nl(e,t),i&2048&&Ol(o,t);break;case 24:Al(e,t,n,r),i&2048&&kl(t.alternate,t);break;default:Al(e,t,n,r)}}function Ml(e,t,n,r,i){for(i&&=!!(t.subtreeFlags&10256)||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Ml(a,o,s,c,i),Gc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Ml(a,o,s,c,i)):u._visibility&2?Ml(a,o,s,c,i):Nl(a,o),i&&l&2048&&Ol(o.alternate,o);break;case 24:Ml(a,o,s,c,i),i&&l&2048&&kl(o.alternate,o);break;default:Ml(a,o,s,c,i)}t=t.sibling}}function Nl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Nl(n,r),i&2048&&Ol(r.alternate,r);break;case 24:Nl(n,r),i&2048&&kl(r.alternate,r);break;default:Nl(n,r)}t=t.sibling}}var Pl=8192;function Fl(e,t,n){if(e.subtreeFlags&Pl)for(e=e.child;e!==null;)Il(e,t,n),e=e.sibling}function Il(e,t,n){switch(e.tag){case 26:Fl(e,t,n),e.flags&Pl&&e.memoizedState!==null&&tp(n,xl,e.memoizedState,e.memoizedProps);break;case 5:Fl(e,t,n);break;case 3:case 4:var r=xl;xl=Df(e.stateNode.containerInfo),Fl(e,t,n),xl=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Pl,Pl=16777216,Fl(e,t,n),Pl=r):Fl(e,t,n));break;default:Fl(e,t,n)}}function Ll(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Rl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];cl=r,Vl(r,e)}Ll(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)zl(e),e=e.sibling}function zl(e){switch(e.tag){case 0:case 11:case 15:Rl(e),e.flags&2048&&Kc(9,e,e.return);break;case 3:Rl(e);break;case 12:Rl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Bl(e)):Rl(e);break;default:Rl(e)}}function Bl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];cl=r,Vl(r,e)}Ll(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Kc(8,t,t.return),Bl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Bl(t));break;default:Bl(t)}e=e.sibling}}function Vl(e,t){for(;cl!==null;){var n=cl;switch(n.tag){case 0:case 11:case 15:Kc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:da(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,cl=r;else a:for(n=e;cl!==null;){r=cl;var i=r.sibling,a=r.return;if(dl(r),r===n){cl=null;break a}if(i!==null){i.return=a,cl=i;break a}cl=a}}}var Hl={getCacheForType:function(e){var t=ra(la),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return ra(la).controller.signal}},Ul=typeof WeakMap==`function`?WeakMap:Map,Wl=0,Gl=null,V=null,Kl=0,ql=0,Jl=null,Yl=!1,Xl=!1,Zl=!1,Ql=0,$l=0,eu=0,tu=0,nu=0,ru=0,iu=0,au=null,ou=null,su=!1,cu=0,lu=0,uu=1/0,du=null,fu=null,pu=0,mu=null,hu=null,gu=0,_u=0,vu=null,yu=null,bu=0,xu=null;function Su(){return Wl&2&&Kl!==0?Kl&-Kl:M.T===null?at():bd()}function Cu(){if(ru===0){if(!(Kl&536870912)||L){var e=Ge;Ge<<=1,!(Ge&3932160)&&(Ge=262144),ru=e}else ru=536870912}return e=io.current,e!==null&&(e.flags|=32),ru}function wu(e,t,n){(e===Gl&&(ql===2||ql===9)||e.cancelPendingCommit!==null)&&(ju(e,0),Ou(e,Kl,ru,!1)),$e(e,n),(!(Wl&2)||e!==Gl)&&(e===Gl&&(!(Wl&2)&&(tu|=n),$l===4&&Ou(e,Kl,ru,!1)),fd(e))}function Tu(e,t,n){if(Wl&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||Ye(e,t),a=r?zu(e,t):Lu(e,t,!0),o=r;do{if(a===0){Xl&&!r&&Ou(e,t,0,!1);break}if(n=e.current.alternate,o&&!Du(n)){a=Lu(e,t,!1),o=!1;continue}if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=au;var l=c.current.memoizedState.isDehydrated;if(l&&(ju(c,s).flags|=256),s=Lu(c,s,!1),s!==2){if(Zl&&!l){c.errorRecoveryDisabledLanes|=o,tu|=o,a=4;break a}o=ou,ou=a,o!==null&&(ou===null?ou=o:ou.push.apply(ou,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){ju(e,0),Ou(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:Ou(r,t,ru,!Yl);break a;case 2:ou=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=cu+300-P(),10<a)){if(Ou(r,t,ru,!Yl),Je(r,0,!0)!==0)break a;gu=t,r.timeoutHandle=rf(Eu.bind(null,r,n,ou,du,su,t,ru,tu,iu,Yl,o,`Throttled`,-0,0),a);break a}Eu(r,n,ou,du,su,t,ru,tu,iu,Yl,o,null,-0,0)}break}while(1);fd(e)}function Eu(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:tn},Il(t,a,d);var m=(a&62914560)===a?cu-P():(a&4194048)===a?lu-P():0;if(m=rp(d,m),m!==null){gu=a,e.cancelPendingCommit=m(Ku.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),Ou(e,a,o,!l);return}}Ku(e,t,a,n,r,i,o,s,c)}function Du(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!wr(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Ou(e,t,n,r){t&=~nu,t&=~tu,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Be(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&tt(e,n,t)}function ku(){return Wl&6?!0:(pd(0,!1),!1)}function Au(){if(V!==null){if(ql===0)var e=V.return;else e=V,Yi=Ji=null,Mo(e),Pa=null,Fa=0,e=V;for(;e!==null;)Wc(e.alternate,e),e=e.return;V=null}}function ju(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,af(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),gu=0,Au(),Gl=e,V=n=fi(e.current,null),Kl=t,ql=0,Jl=null,Yl=!1,Xl=Ye(e,t),Zl=!1,iu=ru=nu=tu=eu=$l=0,ou=au=null,su=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Be(r),a=1<<i;t|=e[i],r&=~a}return Ql=t,ni(),n}function Mu(e,t){z=null,M.H=Vs,t===wa||t===Ea?(t=Ma(),ql=3):t===Ta?(t=Ma(),ql=4):ql=t===ac?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Jl=t,V===null&&($l=1,$s(e,bi(t,e.current)))}function Nu(){var e=io.current;return e===null?!0:(Kl&4194048)===Kl?ao===null:(Kl&62914560)===Kl||Kl&536870912?e===ao:!1}function Pu(){var e=M.H;return M.H=Vs,e===null?Vs:e}function Fu(){var e=M.A;return M.A=Hl,e}function Iu(){$l=4,Yl||(Kl&4194048)!==Kl&&io.current!==null||(Xl=!0),!(eu&134217727)&&!(tu&134217727)||Gl===null||Ou(Gl,Kl,ru,!1)}function Lu(e,t,n){var r=Wl;Wl|=2;var i=Pu(),a=Fu();(Gl!==e||Kl!==t)&&(du=null,ju(e,t)),t=!1;var o=$l;a:do try{if(ql!==0&&V!==null){var s=V,c=Jl;switch(ql){case 8:Au(),o=6;break a;case 3:case 2:case 9:case 6:io.current===null&&(t=!0);var l=ql;if(ql=0,Jl=null,Uu(e,s,c,l),n&&Xl){o=0;break a}break;default:l=ql,ql=0,Jl=null,Uu(e,s,c,l)}}Ru(),o=$l;break}catch(t){Mu(e,t)}while(1);return t&&e.shellSuspendCounter++,Yi=Ji=null,Wl=r,M.H=i,M.A=a,V===null&&(Gl=null,Kl=0,ni()),o}function Ru(){for(;V!==null;)Vu(V)}function zu(e,t){var n=Wl;Wl|=2;var r=Pu(),a=Fu();Gl!==e||Kl!==t?(du=null,uu=P()+500,ju(e,t)):Xl=Ye(e,t);a:do try{if(ql!==0&&V!==null){t=V;var o=Jl;b:switch(ql){case 1:ql=0,Jl=null,Uu(e,t,o,1);break;case 2:case 9:if(Oa(o)){ql=0,Jl=null,Hu(t);break}t=function(){ql!==2&&ql!==9||Gl!==e||(ql=7),fd(e)},o.then(t,t);break a;case 3:ql=7;break a;case 4:ql=5;break a;case 7:Oa(o)?(ql=0,Jl=null,Hu(t)):(ql=0,Jl=null,Uu(e,t,o,7));break;case 5:var s=null;switch(V.tag){case 26:s=V.memoizedState;case 5:case 27:var c=V;if(s?ep(s):c.stateNode.complete){ql=0,Jl=null;var l=c.sibling;if(l!==null)V=l;else{var u=c.return;u===null?V=null:(V=u,Wu(u))}break b}}ql=0,Jl=null,Uu(e,t,o,5);break;case 6:ql=0,Jl=null,Uu(e,t,o,6);break;case 8:Au(),$l=6;break a;default:throw Error(i(462))}}Bu();break}catch(t){Mu(e,t)}while(1);return Yi=Ji=null,M.H=r,M.A=a,Wl=n,V===null?(Gl=null,Kl=0,ni(),$l):0}function Bu(){for(;V!==null&&!Oe();)Vu(V)}function Vu(e){var t=Fc(e.alternate,e,Ql);e.memoizedProps=e.pendingProps,t===null?Wu(e):V=t}function Hu(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=yc(n,t,t.pendingProps,t.type,void 0,Kl);break;case 11:t=yc(n,t,t.pendingProps,t.type.render,t.ref,Kl);break;case 5:Mo(t);default:Wc(n,t),t=V=pi(t,Ql),t=Fc(n,t,Ql)}e.memoizedProps=e.pendingProps,t===null?Wu(e):V=t}function Uu(e,t,n,r){Yi=Ji=null,Mo(t),Pa=null,Fa=0;var i=t.return;try{if(ic(e,i,t,n,Kl)){$l=1,$s(e,bi(n,e.current)),V=null;return}}catch(t){if(i!==null)throw V=i,t;$l=1,$s(e,bi(n,e.current)),V=null;return}t.flags&32768?(L||r===1?e=!0:Xl||Kl&536870912?e=!1:(Yl=e=!0,(r===2||r===9||r===3||r===6)&&(r=io.current,r!==null&&r.tag===13&&(r.flags|=16384))),Gu(t,e)):Wu(t)}function Wu(e){var t=e;do{if(t.flags&32768){Gu(t,Yl);return}e=t.return;var n=Hc(t.alternate,t,Ql);if(n!==null){V=n;return}if(t=t.sibling,t!==null){V=t;return}V=t=e}while(t!==null);$l===0&&($l=5)}function Gu(e,t){do{var n=Uc(e.alternate,e);if(n!==null){n.flags&=32767,V=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){V=e;return}V=e=n}while(e!==null);$l=6,V=null}function Ku(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Zu();while(pu!==0);if(Wl&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=ti,et(e,n,o,s,c,l),e===Gl&&(V=Gl=null,Kl=0),hu=t,mu=e,gu=n,_u=o,vu=a,yu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,H(Ne,function(){return Qu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=M.T,M.T=null,a=N.p,N.p=2,s=Wl,Wl|=4;try{ll(e,t,n)}finally{Wl=s,N.p=a,M.T=r}}pu=1,qu(),Ju(),Yu()}}function qu(){if(pu===1){pu=0;var e=mu,t=hu,n=!!(t.flags&13878);if(t.subtreeFlags&13878||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Wl;Wl|=4;try{Sl(t,e);var a=Xd,o=kr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&Or(s.ownerDocument.documentElement,s)){if(c!==null&&Ar(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=Dr(s,h),v=Dr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}gp=!!Yd,Xd=Yd=null}finally{Wl=i,N.p=r,M.T=n}}e.current=t,pu=2}}function Ju(){if(pu===2){pu=0;var e=mu,t=hu,n=!!(t.flags&8772);if(t.subtreeFlags&8772||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Wl;Wl|=4;try{ul(e,t.alternate,t)}finally{Wl=i,N.p=r,M.T=n}}pu=3}}function Yu(){if(pu===4||pu===3){pu=0,ke();var e=mu,t=hu,n=gu,r=yu;t.subtreeFlags&10256||t.flags&10256?pu=5:(pu=0,hu=mu=null,Xu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(fu=null),it(n),t=t.stateNode,Re&&typeof Re.onCommitFiberRoot==`function`)try{Re.onCommitFiberRoot(Le,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=M.T,i=N.p,N.p=2,M.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{M.T=t,N.p=i}}gu&3&&Zu(),fd(e),i=e.pendingLanes,n&261930&&i&42?e===xu?bu++:(bu=0,xu=e):bu=0,pd(0,!1)}}function Xu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,da(t)))}function Zu(){return qu(),Ju(),Yu(),Qu()}function Qu(){if(pu!==5)return!1;var e=mu,t=_u;_u=0;var n=it(gu),r=M.T,a=N.p;try{N.p=32>n?32:n,M.T=null,n=vu,vu=null;var o=mu,s=gu;if(pu=0,hu=mu=null,gu=0,Wl&6)throw Error(i(331));var c=Wl;if(Wl|=4,zl(o.current),jl(o,o.current,s,n),Wl=c,pd(0,!1),Re&&typeof Re.onPostCommitFiberRoot==`function`)try{Re.onPostCommitFiberRoot(Le,o)}catch{}return!0}finally{N.p=a,M.T=r,Xu(e,t)}}function $u(e,t,n){t=bi(n,t),t=tc(e.stateNode,t,2),e=Ka(e,t,2),e!==null&&($e(e,2),fd(e))}function ed(e,t,n){if(e.tag===3)$u(e,e,n);else for(;t!==null;){if(t.tag===3){$u(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(fu===null||!fu.has(r))){e=bi(n,e),n=nc(2),r=Ka(t,n,2),r!==null&&(rc(n,r,t,e),$e(r,2),fd(r));break}}t=t.return}}function td(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ul;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Zl=!0,i.add(n),e=nd.bind(null,e,t,n),t.then(e,e))}function nd(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Gl===e&&(Kl&n)===n&&($l===4||$l===3&&(Kl&62914560)===Kl&&300>P()-cu?!(Wl&2)&&ju(e,0):nu|=n,iu===Kl&&(iu=0)),fd(e)}function rd(e,t){t===0&&(t=Ze()),e=ai(e,t),e!==null&&($e(e,t),fd(e))}function id(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),rd(e,n)}function ad(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),rd(e,n)}function H(e,t){return Ee(e,t)}var od=null,sd=null,cd=!1,ld=!1,ud=!1,dd=0;function fd(e){e!==sd&&e.next===null&&(sd===null?od=sd=e:sd=sd.next=e),ld=!0,cd||(cd=!0,yd())}function pd(e,t){if(!ud&&ld){ud=!0;do for(var n=!1,r=od;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Be(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,vd(r,a))}else a=Kl,a=Je(r,r===Gl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Ye(r,a)||(n=!0,vd(r,a))}r=r.next}while(n);ud=!1}}function md(){hd()}function hd(){ld=cd=!1;var e=0;dd!==0&&nf()&&(e=dd);for(var t=P(),n=null,r=od;r!==null;){var i=r.next,a=gd(r,t);a===0?(r.next=null,n===null?od=i:n.next=i,i===null&&(sd=n)):(n=r,(e!==0||a&3)&&(ld=!0)),r=i}pu!==0&&pu!==5||pd(e,!1),dd!==0&&(dd=0)}function gd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Be(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Xe(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Gl,n=Kl,n=Je(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(ql===2||ql===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&De(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Ye(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&De(r),it(n)){case 2:case 8:n=Me;break;case 32:n=Ne;break;case 268435456:n=Pe;break;default:n=Ne}return r=_d.bind(null,e),n=Ee(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&De(r),e.callbackPriority=2,e.callbackNode=null,2}function _d(e,t){if(pu!==0&&pu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Zu()&&e.callbackNode!==n)return null;var r=Kl;return r=Je(e,e===Gl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(Tu(e,r,t),gd(e,P()),e.callbackNode!=null&&e.callbackNode===n?_d.bind(null,e):null)}function vd(e,t){if(Zu())return null;Tu(e,t,!0)}function yd(){sf(function(){Wl&6?Ee(je,md):hd()})}function bd(){if(dd===0){var e=ma;e===0&&(e=We,We<<=1,!(We&261888)&&(We=256)),dd=e}return dd}function xd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:en(``+e)}function Sd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function Cd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=xd((i[lt]||null).action),o=r.submitter;o&&(t=(t=o[lt]||null)?xd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new Cn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(dd!==0){var e=o?Sd(i,o):new FormData(i);Ds(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?Sd(i,o):new FormData(i),Ds(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var wd=0;wd<Xr.length;wd++){var Td=Xr[wd];Zr(Td.toLowerCase(),`on`+(Td[0].toUpperCase()+Td.slice(1)))}Zr(Hr,`onAnimationEnd`),Zr(Ur,`onAnimationIteration`),Zr(Wr,`onAnimationStart`),Zr(`dblclick`,`onDoubleClick`),Zr(`focusin`,`onFocus`),Zr(`focusout`,`onBlur`),Zr(Gr,`onTransitionRun`),Zr(Kr,`onTransitionStart`),Zr(qr,`onTransitionCancel`),Zr(Jr,`onTransitionEnd`),Tt(`onMouseEnter`,[`mouseout`,`mouseover`]),Tt(`onMouseLeave`,[`mouseout`,`mouseover`]),Tt(`onPointerEnter`,[`pointerout`,`pointerover`]),Tt(`onPointerLeave`,[`pointerout`,`pointerover`]),wt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),wt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),wt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),wt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),wt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),wt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Ed=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),Dd=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(Ed));function Od(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Qr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Qr(e)}i.currentTarget=null,a=c}}}}function kd(e,t){var n=t[dt];n===void 0&&(n=t[dt]=new Set);var r=e+`__bubble`;n.has(r)||(Nd(t,e,2,!1),n.add(r))}function Ad(e,t,n){var r=0;t&&(r|=4),Nd(n,e,r,t)}var jd=`_reactListening`+Math.random().toString(36).slice(2);function Md(e){if(!e[jd]){e[jd]=!0,St.forEach(function(t){t!==`selectionchange`&&(Dd.has(t)||Ad(t,!1,e),Ad(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[jd]||(t[jd]=!0,Ad(`selectionchange`,!1,t))}}function Nd(e,t,n,r){switch(Cp(t)){case 2:var i=_p;break;case 8:i=vp;break;default:i=yp}n=i.bind(null,t,n,e),i=void 0,!fn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function Pd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=_t(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}ln(function(){var r=a,i=rn(n),s=[];a:{var c=Yr.get(e);if(c!==void 0){var l=Cn,u=e;switch(e){case`keypress`:if(vn(n)===0)break a;case`keydown`:case`keyup`:l=Vn;break;case`focusin`:u=`focus`,l=Mn;break;case`focusout`:u=`blur`,l=Mn;break;case`beforeblur`:case`afterblur`:l=Mn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=An;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=jn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Un;break;case Hr:case Ur:case Wr:l=Nn;break;case Jr:l=Wn;break;case`scroll`:case`scrollend`:l=Tn;break;case`wheel`:l=Gn;break;case`copy`:case`cut`:case`paste`:l=Pn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Hn;break;case`toggle`:case`beforetoggle`:l=Kn}var d=!!(t&4),f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=un(m,p),g!=null&&d.push(Fd(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==nn&&(u=n.relatedTarget||n.fromElement)&&(_t(u)||u[ut]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?_t(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=An,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Hn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:yt(l),h=u==null?c:yt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,_t(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Ld,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Rd(s,c,l,d,!1),u!==null&&f!==null&&Rd(s,f,u,d,!0)}}a:{if(c=r?yt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=fr;else if(or(c)){if(pr)v=Sr;else{v=br;var y=yr}}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Zt(r.elementType)&&(v=fr):v=xr;if(v&&=v(e,r)){sr(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Ut(c,`number`,c.value)}switch(y=r?yt(r):window,e){case`focusin`:(or(y)||y.contentEditable===`true`)&&(Mr=y,Nr=r,Pr=null);break;case`focusout`:Pr=Nr=Mr=null;break;case`mousedown`:Fr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Fr=!1,Ir(s,n,i);break;case`selectionchange`:if(jr)break;case`keydown`:case`keyup`:Ir(s,n,i)}var b;if(Jn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else nr?er(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Zn&&n.locale!==`ko`&&(nr||x!==`onCompositionStart`?x===`onCompositionEnd`&&nr&&(b=_n()):(mn=i,hn=`value`in mn?mn.value:mn.textContent,nr=!0)),y=Id(r,x),0<y.length&&(x=new Fn(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=tr(n),b!==null&&(x.data=b)))),(b=Xn?rr(e,n):ir(e,n))&&(x=Id(r,`onBeforeInput`),0<x.length&&(y=new Fn(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),Cd(s,e,r,n,i)}Od(s,t)})}function Fd(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Id(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=un(e,n),i!=null&&r.unshift(Fd(e,i,a)),i=un(e,t),i!=null&&r.push(Fd(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Ld(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Rd(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=un(n,a),l!=null&&o.unshift(Fd(n,l,c))):i||(l=un(n,a),l!=null&&o.push(Fd(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var zd=/\r\n?/g,Bd=/\u0000|\uFFFD/g;function Vd(e){return(typeof e==`string`?e:``+e).replace(zd,`
|
|
9
|
+
`).replace(Bd,``)}function Hd(e,t){return t=Vd(t),Vd(e)===t}function Ud(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||qt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&qt(e,``+r);break;case`className`:jt(e,`class`,r);break;case`tabIndex`:jt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:jt(e,n,r);break;case`style`:Xt(e,r,o);break;case`data`:if(t!==`object`){jt(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=en(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}if(typeof o==`function`&&(n===`formAction`?(t!==`input`&&Ud(e,t,`name`,a.name,a,null),Ud(e,t,`formEncType`,a.formEncType,a,null),Ud(e,t,`formMethod`,a.formMethod,a,null),Ud(e,t,`formTarget`,a.formTarget,a,null)):(Ud(e,t,`encType`,a.encType,a,null),Ud(e,t,`method`,a.method,a,null),Ud(e,t,`target`,a.target,a,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=en(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=tn);break;case`onScroll`:r!=null&&kd(`scroll`,e);break;case`onScrollEnd`:r!=null&&kd(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=en(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:kd(`beforetoggle`,e),kd(`toggle`,e),At(e,`popover`,r);break;case`xlinkActuate`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:At(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=Qt.get(n)||n,At(e,n,r))}}function Wd(e,t,n,r,a,o){switch(n){case`style`:Xt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?qt(e,r):(typeof r==`number`||typeof r==`bigint`)&&qt(e,``+r);break;case`onScroll`:r!=null&&kd(`scroll`,e);break;case`onScrollEnd`:r!=null&&kd(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=tn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!Ct.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[lt]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):At(e,n,r)}}}function Gd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:kd(`error`,e),kd(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Ud(e,t,o,s,n,null)}}a&&Ud(e,t,`srcSet`,n.srcSet,n,null),r&&Ud(e,t,`src`,n.src,n,null);return;case`input`:kd(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:Ud(e,t,r,d,n,null)}}Ht(e,o,c,l,u,s,a,!1);return;case`select`:for(a in kd(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Ud(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Wt(e,!!r,n,!0):Wt(e,!!r,t,!1);return;case`textarea`:for(s in kd(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:Ud(e,t,s,c,n,null)}Kt(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Ud(e,t,l,r,n,null)}return;case`dialog`:kd(`beforetoggle`,e),kd(`toggle`,e),kd(`cancel`,e),kd(`close`,e);break;case`iframe`:case`object`:kd(`load`,e);break;case`video`:case`audio`:for(r=0;r<Ed.length;r++)kd(Ed[r],e);break;case`image`:kd(`error`,e),kd(`load`,e);break;case`details`:kd(`toggle`,e);break;case`embed`:case`source`:case`link`:kd(`error`,e),kd(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Ud(e,t,u,r,n,null)}return;default:if(Zt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Wd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Ud(e,t,c,r,n,null))}function Kd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Ud(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&Ud(e,t,p,m,r,f)}}Vt(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Ud(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Ud(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Wt(e,!!n,n?[]:``,!1):Wt(e,!!n,t,!0)):Wt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Ud(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&Ud(e,t,s,a,r,o)}Gt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Ud(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Ud(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Ud(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:Ud(e,t,u,p,r,m)}return;default:if(Zt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Wd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Wd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Ud(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Ud(e,t,f,p,r,m)}function qd(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Jd(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&qd(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&qd(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Yd=null,Xd=null;function Zd(e){return e.nodeType===9?e:e.ownerDocument}function Qd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function $d(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function ef(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var tf=null;function nf(){var e=window.event;return e&&e.type===`popstate`?e!==tf&&(tf=e,!0):(tf=null,!1)}var rf=typeof setTimeout==`function`?setTimeout:void 0,af=typeof clearTimeout==`function`?clearTimeout:void 0,of=typeof Promise==`function`?Promise:void 0,sf=typeof queueMicrotask==`function`?queueMicrotask:of===void 0?rf:function(e){return of.resolve(null).then(e).catch(cf)};function cf(e){setTimeout(function(){throw e})}function lf(e){return e===`head`}function uf(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8){if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Ip(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)wf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,wf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ht]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&wf(e.ownerDocument.body)}n=i}while(n);Ip(t)}function df(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8){if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++}n=r}while(n)}function ff(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:ff(n),gt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function pf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r){if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[ht])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=yf(e.nextSibling),e===null)break}return null}function mf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=yf(e.nextSibling),e===null))return null;return e}function hf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=yf(e.nextSibling),e===null))return null;return e}function gf(e){return e.data===`$?`||e.data===`$~`}function _f(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function vf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function yf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var bf=null;function xf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return yf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function Sf(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function Cf(e,t,n){switch(t=Zd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function wf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);gt(e)}var Tf=new Map,Ef=new Set;function Df(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Of=N.d;N.d={f:kf,r:Af,D:Nf,C:Pf,L:Ff,m:If,X:Rf,S:Lf,M:zf};function kf(){var e=Of.f(),t=ku();return e||t}function Af(e){var t=vt(e);t!==null&&t.tag===5&&t.type===`form`?ks(t):Of.r(e)}var jf=typeof document>`u`?null:document;function Mf(e,t,n){var r=jf;if(r&&typeof t==`string`&&t){var i=Bt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),Ef.has(i)||(Ef.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Gd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function Nf(e){Of.D(e),Mf(`dns-prefetch`,e,null)}function Pf(e,t){Of.C(e,t),Mf(`preconnect`,e,t)}function Ff(e,t,n){Of.L(e,t,n);var r=jf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Bt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Bt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Bt(n.imageSizes)+`"]`)):i+=`[href="`+Bt(e)+`"]`;var a=i;switch(t){case`style`:a=Vf(e);break;case`script`:a=Gf(e)}Tf.has(a)||(e=m({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Tf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Hf(a))||t===`script`&&r.querySelector(Kf(a))||(t=r.createElement(`link`),Gd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function If(e,t){Of.m(e,t);var n=jf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Bt(r)+`"][href="`+Bt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Gf(e)}if(!Tf.has(a)&&(e=m({rel:`modulepreload`,href:e},t),Tf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Kf(a)))return}r=n.createElement(`link`),Gd(r,`link`,e),xt(r),n.head.appendChild(r)}}}function Lf(e,t,n){Of.S(e,t,n);var r=jf;if(r&&e){var i=bt(r).hoistableStyles,a=Vf(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Hf(a)))s.loading=5;else{e=m({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Tf.get(a))&&Yf(e,n);var c=o=r.createElement(`link`);xt(c),Gd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Jf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Rf(e,t){Of.X(e,t);var n=jf;if(n&&e){var r=bt(n).hoistableScripts,i=Gf(e),a=r.get(i);a||(a=n.querySelector(Kf(i)),a||(e=m({src:e,async:!0},t),(t=Tf.get(i))&&Xf(e,t),a=n.createElement(`script`),xt(a),Gd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function zf(e,t){Of.M(e,t);var n=jf;if(n&&e){var r=bt(n).hoistableScripts,i=Gf(e),a=r.get(i);a||(a=n.querySelector(Kf(i)),a||(e=m({src:e,async:!0,type:`module`},t),(t=Tf.get(i))&&Xf(e,t),a=n.createElement(`script`),xt(a),Gd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Bf(e,t,n,r){var a=(a=fe.current)?Df(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Vf(n.href),n=bt(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Vf(n.href);var o=bt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Hf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),Tf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Tf.set(e,n),o||Wf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Gf(n),n=bt(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Vf(e){return`href="`+Bt(e)+`"`}function Hf(e){return`link[rel="stylesheet"][`+e+`]`}function Uf(e){return m({},e,{"data-precedence":e.precedence,precedence:null})}function Wf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Gd(t,`link`,n),xt(t),e.head.appendChild(t))}function Gf(e){return`[src="`+Bt(e)+`"]`}function Kf(e){return`script[async]`+e}function qf(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Bt(n.href)+`"]`);if(r)return t.instance=r,xt(r),r;var a=m({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),xt(r),Gd(r,`style`,a),Jf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Vf(n.href);var o=e.querySelector(Hf(a));if(o)return t.state.loading|=4,t.instance=o,xt(o),o;r=Uf(n),(a=Tf.get(a))&&Yf(r,a),o=(e.ownerDocument||e).createElement(`link`),xt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Gd(o,`link`,r),t.state.loading|=4,Jf(o,n.precedence,e),t.instance=o;case`script`:return o=Gf(n.src),(a=e.querySelector(Kf(o)))?(t.instance=a,xt(a),a):(r=n,(a=Tf.get(o))&&(r=m({},n),Xf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),xt(a),Gd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Jf(r,n.precedence,e));return t.instance}function Jf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Yf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function Xf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var U=null;function Zf(e,t,n){if(U===null){var r=new Map,i=U=new Map;i.set(n,r)}else i=U,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ht]||a[ct]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Qf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function $f(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function ep(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function tp(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Vf(r.href),a=t.querySelector(Hf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=ip.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,xt(a);return}a=t.ownerDocument||t,r=Uf(r),(i=Tf.get(i))&&Yf(r,i),a=a.createElement(`link`),xt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Gd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=ip.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var np=0;function rp(e,t){return e.stylesheets&&e.count===0&&op(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&op(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&np===0&&(np=62500*Jd());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&op(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>np?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function ip(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)op(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ap=null;function op(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ap=new Map,t.forEach(sp,e),ap=null,ip.call(e))}function sp(e,t){if(!(t.state.loading&4)){var n=ap.get(e);if(n)var r=n.get(null);else{n=new Map,ap.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=ip.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var cp={$$typeof:C,Provider:null,Consumer:null,_currentValue:ie,_currentValue2:ie,_threadCount:0};function lp(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Qe(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Qe(0),this.hiddenUpdates=Qe(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function up(e,t,n,r,i,a,o,s,c,l,u,d){return e=new lp(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=ui(3,null,null,t),e.current=a,a.stateNode=e,t=ua(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ua(a),e}function dp(e){return e?(e=ci,e):ci}function fp(e,t,n,r,i,a){i=dp(i),r.context===null?r.context=i:r.pendingContext=i,r=Ga(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Ka(e,r,t),n!==null&&(wu(n,e,t),qa(n,e,t))}function W(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function pp(e,t){W(e,t),(e=e.alternate)&&W(e,t)}function mp(e){if(e.tag===13||e.tag===31){var t=ai(e,67108864);t!==null&&wu(t,e,67108864),pp(e,67108864)}}function hp(e){if(e.tag===13||e.tag===31){var t=Su();t=I(t);var n=ai(e,t);n!==null&&wu(n,e,t),pp(e,t)}}var gp=!0;function _p(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=2,yp(e,t,n,r)}finally{N.p=a,M.T=i}}function vp(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=8,yp(e,t,n,r)}finally{N.p=a,M.T=i}}function yp(e,t,n,r){if(gp){var i=bp(r);if(i===null)Pd(e,t,r,xp,n),Op(e,r);else if(kp(i,e,t,n,r))r.stopPropagation();else if(Op(e,r),t&4&&-1<Dp.indexOf(e)){for(;i!==null;){var a=vt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=qe(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Be(o);s.entanglements[1]|=c,o&=~c}fd(a),!(Wl&6)&&(uu=P()+500,pd(0,!1))}}break;case 31:case 13:s=ai(a,2),s!==null&&wu(s,a,2),ku(),pp(a,2)}if(a=bp(r),a===null&&Pd(e,t,r,xp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Pd(e,t,r,null,n)}}function bp(e){return e=rn(e),Sp(e)}var xp=null;function Sp(e){if(xp=null,e=_t(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return xp=e,null}function Cp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(Ae()){case je:return 2;case Me:return 8;case Ne:case F:return 32;case Pe:return 268435456;default:return 32}default:return 32}}var wp=!1,G=null,K=null,Tp=null,q=new Map,J=new Map,Ep=[],Dp=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Op(e,t){switch(e){case`focusin`:case`focusout`:G=null;break;case`dragenter`:case`dragleave`:K=null;break;case`mouseover`:case`mouseout`:Tp=null;break;case`pointerover`:case`pointerout`:q.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:J.delete(t.pointerId)}}function Y(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=vt(t),t!==null&&mp(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function kp(e,t,n,r,i){switch(t){case`focusin`:return G=Y(G,e,t,n,r,i),!0;case`dragenter`:return K=Y(K,e,t,n,r,i),!0;case`mouseover`:return Tp=Y(Tp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return q.set(a,Y(q.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,J.set(a,Y(J.get(a)||null,e,t,n,r,i)),!0}return!1}function X(e){var t=_t(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,ot(e.priority,function(){hp(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,ot(e.priority,function(){hp(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ap(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=bp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);nn=r,n.target.dispatchEvent(r),nn=null}else return t=vt(n),t!==null&&mp(t),e.blockedOn=n,!1;t.shift()}return!0}function jp(e,t,n){Ap(e)&&n.delete(t)}function Mp(){wp=!1,G!==null&&Ap(G)&&(G=null),K!==null&&Ap(K)&&(K=null),Tp!==null&&Ap(Tp)&&(Tp=null),q.forEach(jp),J.forEach(jp)}function Np(e,n){e.blockedOn===n&&(e.blockedOn=null,wp||(wp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Mp)))}var Pp=null;function Fp(e){Pp!==e&&(Pp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){Pp===e&&(Pp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(Sp(r||n)===null)continue;break}var a=vt(n);a!==null&&(e.splice(t,3),t-=3,Ds(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Ip(e){function t(t){return Np(t,e)}G!==null&&Np(G,e),K!==null&&Np(K,e),Tp!==null&&Np(Tp,e),q.forEach(t),J.forEach(t);for(var n=0;n<Ep.length;n++){var r=Ep[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Ep.length&&(n=Ep[0],n.blockedOn===null);)X(n),n.blockedOn===null&&Ep.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[lt]||null;if(typeof a==`function`)o||Fp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[lt]||null)s=o.formAction;else if(Sp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Fp(n)}}}function Lp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Rp(e){this._internalRoot=e}zp.prototype.render=Rp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;fp(n,Su(),e,t,null,null)},zp.prototype.unmount=Rp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;fp(e.current,2,null,e,null,null),ku(),t[ut]=null}};function zp(e){this._internalRoot=e}zp.prototype.unstable_scheduleHydration=function(e){if(e){var t=at();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ep.length&&t!==0&&t<Ep[n].priority;n++);Ep.splice(n,0,e),n===0&&X(e)}};var Bp=n.version;if(Bp!==`19.2.8`)throw Error(i(527,Bp,`19.2.8`));N.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:f(e),e=e===null?null:e.stateNode,e};var Vp={bundleType:0,version:`19.2.8`,rendererPackageName:`react-dom`,currentDispatcherRef:M,reconcilerVersion:`19.2.8`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var Hp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Hp.isDisabled&&Hp.supportsFiber)try{Le=Hp.inject(Vp),Re=Hp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Xs,s=Zs,c=Qs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=up(e,1,!1,null,null,n,r,null,o,s,c,Lp),e[ut]=t.current,Md(e),new Rp(t)}})),_=o(((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=g()})),v=d(),y=_(),b=`/api/v1/ws`,x=S()??`https://api.oonacode.oonak.ai`;function S(){return typeof OONACODE_GATEWAY_ORIGIN==`string`&&OONACODE_GATEWAY_ORIGIN.trim().length>0?OONACODE_GATEWAY_ORIGIN.trim().replace(/\/+$/,``):null}var C=[],w=`oonacode`;function T(e){return!C.includes(e)}var E=[`openrouter`,`azure-openai`,`ollama`];function D(e){return E.includes(e)}function O(e){return`${e===1?`one chat is`:`${e} chats are`} filed under this project — move or delete ${e===1?`it`:`them`} first`}function ee(e){return e===`unverified`||e===`pending`||e===`verified`}function k(e){if(typeof e!=`object`||!e)return!1;let t=e.error;if(typeof t!=`object`||!t)return!1;let{code:n,details:r}=t;if(n!==`email_not_verified`||typeof r!=`object`||!r)return!1;let i=r;return ee(i.verification)&&typeof i.email==`string`&&typeof i.resendAfterSec==`number`&&Number.isFinite(i.resendAfterSec)}function te(e){return e.type===`stream_event`}var A=`This session is being continued from a previous conversation`;function j(e){return typeof e==`string`&&e.length>0&&e!==`<synthetic>`}function ne(e){return e.trimStart().startsWith(A)}var re=`Your response above was cut off mid-stream`;function M(e){return e.trimStart().startsWith(re)}function N(e){return/^\[Request interrupted by user[^\]]*\]\s*$/.test(e.trim())}var ie=[`Continue from where you left off.`,`Ultracode is on`,`workflow-authoring`,`# Workflow authoring reference`,`<system-reminder>`];function ae(e){let t=e.trimStart();return ie.some(e=>t.startsWith(e))}function oe(e){let t=e.split(`
|
|
10
|
+
`).map(e=>e.trim()).find(e=>e.length>0);if(!t)return`Engine note`;let n=t.replace(/^#+\s*/,``).replace(/^<system-reminder>\s*/,``);return n.length>96?`${n.slice(0,95)}…`:n||`Engine note`}var se=/\[Image: (?:source: [^\]\n]+?|original \d+x\d+, displayed at \d+x\d+\. Multiply coordinates by \d+(?:\.\d+)? to map to original image\.)(?:, original \d+x\d+, displayed at \d+x\d+\. Multiply coordinates by \d+(?:\.\d+)? to map to original image\.)?\]/g;function ce(e){return e.includes(`[Image: `)?e.replace(se,``):e}function le(e){if(typeof e!=`object`||!e)return null;let t=e;return t.type!==`queue-operation`||t.operation!==`remove`||typeof t.content!=`string`||t.content.length===0?null:{text:t.content,deliveredAt:typeof t.timestamp==`string`?t.timestamp:null}}function ue(e){if(typeof e!=`object`||!e)return null;let t=e;if(t.type!==`attachment`||t.attachment?.type!==`queued_command`)return null;let n=t.attachment.prompt,r;if(typeof n==`string`)r=n;else if(Array.isArray(n))r=ce(n.filter(e=>typeof e==`object`&&!!e&&e.type===`text`&&typeof e.text==`string`).map(e=>e.text).join(`
|
|
11
|
+
`)).trim();else return null;let i=t.attachment.timestamp??t.timestamp;return{text:r,content:n,sourceUuid:typeof t.attachment.source_uuid==`string`?t.attachment.source_uuid:null,timestamp:typeof i==`string`?i:null}}var de=`<task-notification>`;function fe(e){return e.trimStart().startsWith(de)}function pe(e,t){let n=RegExp(`<${t}>([\\s\\S]*?)</${t}>`).exec(e);return(n?n[1].trim():``)||null}function me(e){let t=[de];return e.taskId&&t.push(`<task-id>${e.taskId}</task-id>`),e.toolUseId&&t.push(`<tool-use-id>${e.toolUseId}</tool-use-id>`),e.status&&t.push(`<status>${e.status}</status>`),e.summary&&t.push(`<summary>${e.summary}</summary>`),t.push(`</task-notification>`),t.join(`
|
|
12
|
+
`)}function he(e){return{taskId:pe(e,`task-id`),toolUseId:pe(e,`tool-use-id`),status:pe(e,`status`),summary:pe(e,`summary`),note:pe(e,`note`)}}var ge=[`low`,`medium`,`high`,`xhigh`,`max`,`ultracode`],_e=[`low`,`medium`,`high`,`xhigh`,`max`];function ve(e){return typeof e==`string`&&ge.includes(e)}function ye(e){return e?Array.isArray(e.effortLevels)?e.effortLevels:e.supportsThinking===!1?[]:_e:[]}function be(e){return e?.supportsTools!==!1}function xe(e){return e.trim().replace(/\s+/g,` `).toLowerCase()}function Se(e){return e.replace(/\s+/g,` `).toLowerCase()}function Ce(e){let t=e.split(` `).map(e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)).join(`\\s+`);return new RegExp(t,`gi`)}function we(e,t={}){let n=e.trim().replace(/\s+/g,` `);if(n===``)return null;let r=n.split(` `).map(e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)).join(`\\s+`),i=t.wholeWord?`(?<![\\p{L}\\p{N}_])${r}(?![\\p{L}\\p{N}_])`:r;return new RegExp(i,t.caseSensitive?`gu`:`giu`)}function Te(e,t,n={}){let r=we(t,n);return r!==null&&r.test(e)}function Ee(e,t,n){let r=xe(t);if(r===``)return[];let i=[];for(let t=0;t<e.length;t++){let a=n(e[t]);a!==``&&Se(a).includes(r)&&i.push(t)}return i}function De(e,t,n){return n<=0?-1:e<0||e>=n?t>=0?0:n-1:((e+t)%n+n)%n}function Oe(e,t){return t<=0?`no matches`:`${e<0||e>=t?0:e+1}/${t}`}function ke(e){return typeof e==`object`&&!!e&&typeof e.type==`string`}var P={health:`/api/v1/health`,info:`/api/v1/info`,sessions:`/api/v1/sessions`,adoptLegacySessions:`/api/v1/sessions/adopt-legacy`,session:e=>`/api/v1/sessions/${e}`,sessionEntries:e=>`/api/v1/sessions/${e}/entries`,sessionSearch:`/api/v1/sessions/search`,agentTools:`/api/v1/agent-tools`,sessionMessages:e=>`/api/v1/sessions/${e}/messages`,sessionPrompt:e=>`/api/v1/sessions/${e}/prompt`,sessionInterrupt:e=>`/api/v1/sessions/${e}/interrupt`,sessionQueued:(e,t)=>`/api/v1/sessions/${e}/queued/${encodeURIComponent(t)}`,sessionFork:e=>`/api/v1/sessions/${e}/fork`,sessionExport:e=>`/api/v1/sessions/${e}/export`,sessionsExportArchive:`/api/v1/sessions/export`,sessionProject:e=>`/api/v1/sessions/${e}/project`,importClaude:`/api/v1/import/claude`,sessionLink:e=>`/api/v1/sessions/${e}/link`,sessionSyncDown:e=>`/api/v1/sessions/${e}/sync-down`,projects:`/api/v1/projects`,projectInspect:`/api/v1/projects/inspect`,vaultProjects:`/api/v1/vault/projects`,vaultProject:e=>`/api/v1/vault/projects/${e}`,scheduledTasks:`/api/v1/scheduled-tasks`,scheduledTask:e=>`/api/v1/scheduled-tasks/${e}`,githubLink:`/api/v1/git/github`,githubLinkStart:`/api/v1/git/github/link`,providers:`/api/v1/providers`,providersActive:`/api/v1/providers/active`,providerTest:e=>`/api/v1/providers/${e}/test`,providerProbe:e=>`/api/v1/providers/${e}/probe`,providerSecret:e=>`/api/v1/providers/${e}/secret`,models:`/api/v1/models`,settings:`/api/v1/settings`,account:`/api/v1/account`,accountLogin:`/api/v1/account/login`,accountLogout:`/api/v1/account/logout`,accountRemoveHost:`/api/v1/account/remove-host`,accountUnlock:`/api/v1/account/unlock`,accountPlan:`/api/v1/account/plan`,accountLock:`/api/v1/account/lock`,accountResendVerification:`/api/v1/account/resend-verification`,accountLinkStart:`/api/v1/account/link/start`,accountLinkStatus:`/api/v1/account/link`,accountLinkCancel:`/api/v1/account/link/cancel`,credentials:`/api/v1/credentials`,credential:e=>`/api/v1/credentials/${e}`,credentialTest:e=>`/api/v1/credentials/${e}/test`,syncNow:`/api/v1/sync/now`,subscriptionClaudeLogin:`/api/v1/subscription/claude/login`,subscriptionClaudeLoginState:`/api/v1/subscription/claude/login/state`,subscriptionClaudeLoginCode:`/api/v1/subscription/claude/login/code`,subscriptionClaudeLoginCancel:`/api/v1/subscription/claude/login/cancel`,subscriptionClaudeStatus:`/api/v1/subscription/claude`,subscriptionOauthLogin:e=>`/api/v1/subscription/oauth/${e}/login`,subscriptionOauthLoginState:e=>`/api/v1/subscription/oauth/${e}/login/state`,subscriptionOauthLoginCancel:e=>`/api/v1/subscription/oauth/${e}/login/cancel`,doctor:`/api/v1/doctor`,hostShutdown:`/api/v1/host/shutdown`,hostVaultUnlock:e=>`/api/v1/hosts/${encodeURIComponent(e)}/vault-unlock`,hosts:`/api/v1/hosts`,host:e=>`/api/v1/hosts/${e}`,hostSessions:e=>`/api/v1/hosts/${e}/sessions`,hostSessionEntries:(e,t)=>`/api/v1/hosts/${e}/sessions/${t}/entries`,hostSession:(e,t)=>`/api/v1/hosts/${e}/sessions/${t}`,ws:`/api/v1/ws`,remoteWs:`/api/v1/relay/ws`,errorReport:`/api/v1/errors`,bugReport:`/api/v1/bug-reports`,sandboxRunToken:`/api/v1/sandbox/run-token`,sessionFiles:e=>`/api/v1/sessions/${e}/files`,sessionFile:e=>`/api/v1/sessions/${e}/files/content`,sessionLocalFile:e=>`/api/v1/sessions/${e}/local-file`,sessionLocalFileGrant:e=>`/api/v1/sessions/${e}/local-file/grant`,sandboxRestore:`/api/v1/sandbox/restore`},Ae={health:`GET`,info:`GET`,listSessions:`GET`,createSession:`POST`,getSession:`GET`,updateSession:`PATCH`,deleteSession:`DELETE`,listEntries:`GET`,listMessages:`GET`,prompt:`POST`,interrupt:`POST`,cancelQueued:`DELETE`,fork:`POST`,export:`GET`,exportArchive:`POST`,attachSessionProject:`POST`,listProjects:`GET`,scanClaudeSessions:`GET`,importClaudeSessions:`POST`,sessionLink:`GET`,syncSessionDown:`POST`,inspectProject:`GET`,listVaultProjects:`GET`,createVaultProject:`POST`,updateVaultProject:`PATCH`,deleteVaultProject:`DELETE`,listScheduledTasks:`GET`,createScheduledTask:`POST`,updateScheduledTask:`PATCH`,deleteScheduledTask:`DELETE`,searchEntries:`GET`,getGithubLink:`GET`,startGithubLink:`POST`,cancelGithubLink:`DELETE`,unlinkGithub:`DELETE`,listProviders:`GET`,setActiveProvider:`PUT`,providerTest:`POST`,providerProbe:`POST`,revealCredential:`GET`,listModels:`GET`,getSettings:`GET`,updateSettings:`PATCH`,getAccount:`GET`,login:`POST`,logout:`POST`,removeHostFromAccount:`POST`,unlock:`POST`,resendVerification:`POST`,linkStart:`POST`,linkStatus:`GET`,linkCancel:`POST`,listCredentials:`GET`,addCredential:`POST`,deleteCredential:`DELETE`,credentialTest:`POST`,syncNow:`POST`,claudeLogin:`POST`,claudeLoginState:`GET`,claudeLoginCode:`POST`,claudeLoginCancel:`POST`,claudeStatus:`GET`,oauthLogin:`POST`,oauthLoginState:`GET`,oauthLoginCancel:`POST`,doctor:`GET`,hostShutdown:`POST`,listHosts:`GET`,getHost:`GET`,updateHost:`PATCH`,listHostSessions:`GET`,deleteHostSession:`DELETE`,listHostSessionEntries:`GET`,errorReport:`POST`,bugReport:`POST`,listSessionFiles:`GET`,readSessionFile:`GET`,deleteSessionFile:`DELETE`,readLocalFile:`GET`,grantLocalFile:`POST`};function je(e){return typeof e==`object`&&!!e&&typeof e.type==`string`}function Me(e){return e===`attached`}var Ne;function F(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}var Pe=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Fe=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Ne=globalThis).__zod_globalConfig??(Ne.__zod_globalConfig={});var Ie=globalThis.__zod_globalConfig;function Le(e){return e&&Object.assign(Ie,e),Ie}function Re(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function ze(e,t){return typeof t==`bigint`?t.toString():t}function Be(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Ve(e){return e==null}function He(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function Ue(e,t){let n=e/t,r=Math.round(n),i=2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}var We=Symbol(`evaluating`);function Ge(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==We)return r===void 0&&(r=We,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function Ke(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function qe(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function Je(e){return JSON.stringify(e)}function Ye(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var Xe=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Ze(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Qe=Be(()=>{if(Ie.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function $e(e){if(Ze(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return Ze(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function et(e){return $e(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var tt=new Set([`string`,`number`,`symbol`]);function nt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function rt(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function I(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function it(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var at={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function ot(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return rt(e,qe(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return Ke(this,`shape`,e),e},checks:[]}))}function st(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return rt(e,qe(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return Ke(this,`shape`,r),r},checks:[]}))}function ct(e,t){if(!$e(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return rt(e,qe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Ke(this,`shape`,n),n}}))}function lt(e,t){if(!$e(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return rt(e,qe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Ke(this,`shape`,n),n}}))}function ut(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return rt(e,qe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Ke(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function dt(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return rt(t,qe(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return Ke(this,`shape`,i),i},checks:[]}))}function ft(e,t,n){return rt(t,qe(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return Ke(this,`shape`,i),i}}))}function pt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function mt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function ht(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function gt(e){return typeof e==`string`?e:e?.message}function _t(e,t,n){let r=e.message?e.message:gt(e.inst?._zod.def?.error?.(e))??gt(t?.error?.(e))??gt(n.customError?.(e))??gt(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function vt(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function yt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var bt=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,ze,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},xt=F(`$ZodError`,bt),St=F(`$ZodError`,bt,{Parent:Error});function Ct(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function wt(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var Tt=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Pe;if(o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>_t(e,a,Le())));throw Xe(t,i?.callee),t}return o.value},Et=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>_t(e,a,Le())));throw Xe(t,i?.callee),t}return o.value},Dt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Pe;return a.issues.length?{success:!1,error:new(e??xt)(a.issues.map(e=>_t(e,i,Le())))}:{success:!0,data:a.value}},Ot=Dt(St),kt=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>_t(e,i,Le())))}:{success:!0,data:a.value}},At=kt(St),jt=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Tt(e)(t,n,i)},Mt=e=>(t,n,r)=>Tt(e)(t,n,r),Nt=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Et(e)(t,n,i)},Pt=e=>async(t,n,r)=>Et(e)(t,n,r),Ft=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Dt(e)(t,n,i)},It=e=>(t,n,r)=>Dt(e)(t,n,r),Lt=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return kt(e)(t,n,i)},Rt=e=>async(t,n,r)=>kt(e)(t,n,r),zt=/^[cC][0-9a-z]{6,}$/,Bt=/^[0-9a-z]+$/,Vt=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ht=/^[0-9a-vA-V]{20}$/,Ut=/^[A-Za-z0-9]{27}$/,Wt=/^[a-zA-Z0-9_-]{21}$/,Gt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Kt=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,qt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Jt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Yt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function Xt(){return new RegExp(Yt,`u`)}var Zt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Qt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,$t=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,en=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,tn=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,nn=/^[A-Za-z0-9_-]*$/,rn=/^https?$/,an=/^\+[1-9]\d{6,14}$/,on=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,sn=RegExp(`^${on}$`);function cn(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ln(e){return RegExp(`^${cn(e)}$`)}function un(e){let t=cn({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${on}T(?:${r})$`)}var dn=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},fn=/^-?\d+$/,pn=/^-?\d+(?:\.\d+)?$/,mn=/^(?:true|false)$/i,hn=/^[^A-Z]*$/,gn=/^[^a-z]*$/,_n=F(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),vn={number:`number`,bigint:`bigint`,object:`date`},yn=F(`$ZodCheckLessThan`,(e,t)=>{_n.init(e,t);let n=vn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),bn=F(`$ZodCheckGreaterThan`,(e,t)=>{_n.init(e,t);let n=vn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),xn=F(`$ZodCheckMultipleOf`,(e,t)=>{_n.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):Ue(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Sn=F(`$ZodCheckNumberFormat`,(e,t)=>{_n.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=at[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=fn)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Cn=F(`$ZodCheckMaxLength`,(e,t)=>{var n;_n.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ve(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=vt(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),wn=F(`$ZodCheckMinLength`,(e,t)=>{var n;_n.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ve(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=vt(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Tn=F(`$ZodCheckLengthEquals`,(e,t)=>{var n;_n.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ve(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=vt(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),En=F(`$ZodCheckStringFormat`,(e,t)=>{var n,r;_n.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Dn=F(`$ZodCheckRegex`,(e,t)=>{En.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),On=F(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=hn,En.init(e,t)}),kn=F(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=gn,En.init(e,t)}),An=F(`$ZodCheckIncludes`,(e,t)=>{_n.init(e,t);let n=nt(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),jn=F(`$ZodCheckStartsWith`,(e,t)=>{_n.init(e,t);let n=RegExp(`^${nt(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Mn=F(`$ZodCheckEndsWith`,(e,t)=>{_n.init(e,t);let n=RegExp(`.*${nt(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Nn=F(`$ZodCheckOverwrite`,(e,t)=>{_n.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),Pn=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
13
|
+
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
14
|
+
`))}},Fn={major:4,minor:4,patch:3},In=F(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Fn;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=pt(e),i;for(let a of t){if(a._zod.def.when){if(mt(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Pe;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=pt(e,t))});else{if(e.issues.length===t)continue;r||=pt(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(pt(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Pe;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Pe;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ge(e,`~standard`,()=>({validate:t=>{try{let n=Ot(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return At(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Ln=F(`$ZodString`,(e,t)=>{In.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??dn(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),Rn=F(`$ZodStringFormat`,(e,t)=>{En.init(e,t),Ln.init(e,t)}),zn=F(`$ZodGUID`,(e,t)=>{t.pattern??=Kt,Rn.init(e,t)}),Bn=F(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=qt(e)}else t.pattern??=qt();Rn.init(e,t)}),Vn=F(`$ZodEmail`,(e,t)=>{t.pattern??=Jt,Rn.init(e,t)}),Hn=F(`$ZodURL`,(e,t)=>{Rn.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===rn.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),n.value=t.normalize?i.href:r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),Un=F(`$ZodEmoji`,(e,t)=>{t.pattern??=Xt(),Rn.init(e,t)}),Wn=F(`$ZodNanoID`,(e,t)=>{t.pattern??=Wt,Rn.init(e,t)}),Gn=F(`$ZodCUID`,(e,t)=>{t.pattern??=zt,Rn.init(e,t)}),Kn=F(`$ZodCUID2`,(e,t)=>{t.pattern??=Bt,Rn.init(e,t)}),qn=F(`$ZodULID`,(e,t)=>{t.pattern??=Vt,Rn.init(e,t)}),Jn=F(`$ZodXID`,(e,t)=>{t.pattern??=Ht,Rn.init(e,t)}),Yn=F(`$ZodKSUID`,(e,t)=>{t.pattern??=Ut,Rn.init(e,t)}),Xn=F(`$ZodISODateTime`,(e,t)=>{t.pattern??=un(t),Rn.init(e,t)}),Zn=F(`$ZodISODate`,(e,t)=>{t.pattern??=sn,Rn.init(e,t)}),Qn=F(`$ZodISOTime`,(e,t)=>{t.pattern??=ln(t),Rn.init(e,t)}),$n=F(`$ZodISODuration`,(e,t)=>{t.pattern??=Gt,Rn.init(e,t)}),er=F(`$ZodIPv4`,(e,t)=>{t.pattern??=Zt,Rn.init(e,t),e._zod.bag.format=`ipv4`}),tr=F(`$ZodIPv6`,(e,t)=>{t.pattern??=Qt,Rn.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),nr=F(`$ZodCIDRv4`,(e,t)=>{t.pattern??=$t,Rn.init(e,t)}),rr=F(`$ZodCIDRv6`,(e,t)=>{t.pattern??=en,Rn.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function ir(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var ar=F(`$ZodBase64`,(e,t)=>{t.pattern??=tn,Rn.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{ir(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function or(e){if(!nn.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return ir(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var sr=F(`$ZodBase64URL`,(e,t)=>{t.pattern??=nn,Rn.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{or(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),cr=F(`$ZodE164`,(e,t)=>{t.pattern??=an,Rn.init(e,t)});function lr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var ur=F(`$ZodJWT`,(e,t)=>{Rn.init(e,t),e._zod.check=n=>{lr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),dr=F(`$ZodNumber`,(e,t)=>{In.init(e,t),e._zod.pattern=e._zod.bag.pattern??pn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),fr=F(`$ZodNumberFormat`,(e,t)=>{Sn.init(e,t),dr.init(e,t)}),pr=F(`$ZodBoolean`,(e,t)=>{In.init(e,t),e._zod.pattern=mn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),mr=F(`$ZodUnknown`,(e,t)=>{In.init(e,t),e._zod.parse=e=>e}),hr=F(`$ZodNever`,(e,t)=>{In.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function gr(e,t,n){e.issues.length&&t.issues.push(...ht(n,e.issues)),t.value[n]=e.value}var _r=F(`$ZodArray`,(e,t)=>{In.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>gr(t,n,e))):gr(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function vr(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...ht(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function yr(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=it(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function br(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>vr(e,n,i,t,u,d))):vr(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var xr=F(`$ZodObject`,(e,t)=>{if(In.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let n=Be(()=>yr(t));Ge(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Ze,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>vr(n,t,e,s,r,i))):vr(a,t,e,s,r,i)}return i?br(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),Sr=F(`$ZodObjectJIT`,(e,t)=>{xr.init(e,t);let n=e._zod.parse,r=Be(()=>yr(t)),i=e=>{let t=new Pn([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=Je(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=Je(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
|
|
15
|
+
if (${n}.issues.length) {
|
|
16
|
+
if (${o} in input) {
|
|
17
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
18
|
+
...iss,
|
|
19
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
20
|
+
})));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
if (${n}.value === undefined) {
|
|
25
|
+
if (${o} in input) {
|
|
26
|
+
newResult[${o}] = undefined;
|
|
27
|
+
}
|
|
28
|
+
} else {
|
|
29
|
+
newResult[${o}] = ${n}.value;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
`):c?t.write(`
|
|
33
|
+
if (${n}.issues.length) {
|
|
34
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
35
|
+
...iss,
|
|
36
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
37
|
+
})));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (${n}.value === undefined) {
|
|
41
|
+
if (${o} in input) {
|
|
42
|
+
newResult[${o}] = undefined;
|
|
43
|
+
}
|
|
44
|
+
} else {
|
|
45
|
+
newResult[${o}] = ${n}.value;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
`):t.write(`
|
|
49
|
+
const ${n}_present = ${o} in input;
|
|
50
|
+
if (${n}.issues.length) {
|
|
51
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
52
|
+
...iss,
|
|
53
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
54
|
+
})));
|
|
55
|
+
}
|
|
56
|
+
if (!${n}_present && !${n}.issues.length) {
|
|
57
|
+
payload.issues.push({
|
|
58
|
+
code: "invalid_type",
|
|
59
|
+
expected: "nonoptional",
|
|
60
|
+
input: undefined,
|
|
61
|
+
path: [${o}]
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (${n}_present) {
|
|
66
|
+
if (${n}.value === undefined) {
|
|
67
|
+
newResult[${o}] = undefined;
|
|
68
|
+
} else {
|
|
69
|
+
newResult[${o}] = ${n}.value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=Ze,s=!Ie.jitless,c=s&&Qe.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?br([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Cr(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!pt(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>_t(e,r,Le())))}),t)}var wr=F(`$ZodUnion`,(e,t)=>{In.init(e,t),Ge(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ge(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ge(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ge(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=>He(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>Cr(t,r,e,i)):Cr(o,r,e,i)}}),Tr=F(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,wr.init(e,t);let n=e._zod.parse;Ge(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=Be(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Ze(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),Er=F(`$ZodIntersection`,(e,t)=>{In.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Or(e,t,n)):Or(e,i,a)}});function Dr(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if($e(e)&&$e(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Dr(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Dr(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Or(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),pt(e))return e;let o=Dr(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var kr=F(`$ZodRecord`,(e,t)=>{In.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!$e(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>_t(e,r,Le())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...ht(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...ht(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&pn.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>_t(e,r,Le())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...ht(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...ht(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),Ar=F(`$ZodEnum`,(e,t)=>{In.init(e,t);let n=Re(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>tt.has(typeof e)).map(e=>typeof e==`string`?nt(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),jr=F(`$ZodLiteral`,(e,t)=>{if(In.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`?nt(e):e?nt(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Mr=F(`$ZodTransform`,(e,t)=>{In.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Fe(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new Pe;return n.value=i,n.fallback=!0,n}});function Nr(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var Pr=F(`$ZodOptional`,(e,t)=>{In.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ge(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ge(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${He(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>Nr(e,r)):Nr(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Fr=F(`$ZodExactOptional`,(e,t)=>{Pr.init(e,t),Ge(e._zod,`values`,()=>t.innerType._zod.values),Ge(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Ir=F(`$ZodNullable`,(e,t)=>{In.init(e,t),Ge(e._zod,`optin`,()=>t.innerType._zod.optin),Ge(e._zod,`optout`,()=>t.innerType._zod.optout),Ge(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${He(e.source)}|null)$`):void 0}),Ge(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)}),Lr=F(`$ZodDefault`,(e,t)=>{In.init(e,t),e._zod.optin=`optional`,Ge(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=>Rr(e,t)):Rr(r,t)}});function Rr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var zr=F(`$ZodPrefault`,(e,t)=>{In.init(e,t),e._zod.optin=`optional`,Ge(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))}),Br=F(`$ZodNonOptional`,(e,t)=>{In.init(e,t),Ge(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Vr(t,e)):Vr(i,e)}});function Vr(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 Hr=F(`$ZodCatch`,(e,t)=>{In.init(e,t),e._zod.optin=`optional`,Ge(e._zod,`optout`,()=>t.innerType._zod.optout),Ge(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=>_t(e,n,Le()))},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=>_t(e,n,Le()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),Ur=F(`$ZodPipe`,(e,t)=>{In.init(e,t),Ge(e._zod,`values`,()=>t.in._zod.values),Ge(e._zod,`optin`,()=>t.in._zod.optin),Ge(e._zod,`optout`,()=>t.out._zod.optout),Ge(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=>Wr(e,t.in,n)):Wr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Wr(e,t.out,n)):Wr(r,t.out,n)}});function Wr(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 Gr=F(`$ZodReadonly`,(e,t)=>{In.init(e,t),Ge(e._zod,`propValues`,()=>t.innerType._zod.propValues),Ge(e._zod,`values`,()=>t.innerType._zod.values),Ge(e._zod,`optin`,()=>t.innerType?._zod?.optin),Ge(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(Kr):Kr(r)}});function Kr(e){return e.value=Object.freeze(e.value),e}var qr=F(`$ZodCustom`,(e,t)=>{_n.init(e,t),In.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Jr(t,n,r,e));Jr(i,n,r,e)}});function Jr(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(yt(e))}}var Yr,Xr=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 Zr(){return new Xr}(Yr=globalThis).__zod_globalRegistry??(Yr.__zod_globalRegistry=Zr());var Qr=globalThis.__zod_globalRegistry;function $r(e,t){return new e({type:`string`,...I(t)})}function ei(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...I(t)})}function ti(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...I(t)})}function ni(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...I(t)})}function ri(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...I(t)})}function ii(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...I(t)})}function ai(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...I(t)})}function oi(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...I(t)})}function si(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...I(t)})}function ci(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...I(t)})}function li(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...I(t)})}function ui(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...I(t)})}function di(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...I(t)})}function fi(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...I(t)})}function pi(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...I(t)})}function mi(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...I(t)})}function hi(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...I(t)})}function gi(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...I(t)})}function _i(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...I(t)})}function vi(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...I(t)})}function yi(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...I(t)})}function bi(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...I(t)})}function xi(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...I(t)})}function Si(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...I(t)})}function Ci(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...I(t)})}function wi(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...I(t)})}function Ti(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...I(t)})}function Ei(e,t){return new e({type:`number`,checks:[],...I(t)})}function Di(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...I(t)})}function Oi(e,t){return new e({type:`boolean`,...I(t)})}function ki(e){return new e({type:`unknown`})}function Ai(e,t){return new e({type:`never`,...I(t)})}function ji(e,t){return new yn({check:`less_than`,...I(t),value:e,inclusive:!1})}function Mi(e,t){return new yn({check:`less_than`,...I(t),value:e,inclusive:!0})}function Ni(e,t){return new bn({check:`greater_than`,...I(t),value:e,inclusive:!1})}function Pi(e,t){return new bn({check:`greater_than`,...I(t),value:e,inclusive:!0})}function Fi(e,t){return new xn({check:`multiple_of`,...I(t),value:e})}function Ii(e,t){return new Cn({check:`max_length`,...I(t),maximum:e})}function L(e,t){return new wn({check:`min_length`,...I(t),minimum:e})}function Li(e,t){return new Tn({check:`length_equals`,...I(t),length:e})}function Ri(e,t){return new Dn({check:`string_format`,format:`regex`,...I(t),pattern:e})}function zi(e){return new On({check:`string_format`,format:`lowercase`,...I(e)})}function Bi(e){return new kn({check:`string_format`,format:`uppercase`,...I(e)})}function Vi(e,t){return new An({check:`string_format`,format:`includes`,...I(t),includes:e})}function Hi(e,t){return new jn({check:`string_format`,format:`starts_with`,...I(t),prefix:e})}function Ui(e,t){return new Mn({check:`string_format`,format:`ends_with`,...I(t),suffix:e})}function Wi(e){return new Nn({check:`overwrite`,tx:e})}function Gi(e){return Wi(t=>t.normalize(e))}function Ki(){return Wi(e=>e.trim())}function qi(){return Wi(e=>e.toLowerCase())}function Ji(){return Wi(e=>e.toUpperCase())}function Yi(){return Wi(e=>Ye(e))}function Xi(e,t,n){return new e({type:`array`,element:t,...I(n)})}function Zi(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...I(n)})}function Qi(e,t){let n=$i(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(yt(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(yt(r))}},e(t.value,t)),t);return n}function $i(e,t){let n=new _n({check:`custom`,...I(t)});return n._zod.check=e,n}function ea(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??Qr,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 ta(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,ta(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&ia(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function na(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
74
|
+
|
|
75
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function ra(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:oa(t,`input`,e.processors),output:oa(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function ia(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 ia(r.element,n);if(r.type===`set`)return ia(r.valueType,n);if(r.type===`lazy`)return ia(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 ia(r.innerType,n);if(r.type===`intersection`)return ia(r.left,n)||ia(r.right,n);if(r.type===`record`||r.type===`map`)return ia(r.keyType,n)||ia(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:ia(r.in,n)||ia(r.out,n);if(r.type===`object`){for(let e in r.shape)if(ia(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(ia(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(ia(e,n))return!0;return!!(r.rest&&ia(r.rest,n))}return!1}var aa=(e,t={})=>n=>{let r=ea({...n,processors:t});return ta(e,r),na(r,e),ra(r,e)},oa=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=ea({...i??{},target:a,io:t,processors:n});return ta(e,o),na(o,e),ra(o,e)},sa={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},ca=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=sa[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},la=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;i.type=typeof s==`string`&&s.includes(`int`)?`integer`:`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},ua=(e,t,n,r)=>{n.type=`boolean`},da=(e,t,n,r)=>{n.not={}},fa=(e,t,n,r)=>{let i=e._zod.def,a=Re(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},pa=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0){if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a}},ma=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},ha=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},ga=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=ta(a.element,t,{...r,path:[...r.path,`items`]})},_a=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=ta(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=ta(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},va=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>ta(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},ya=(e,t,n,r)=>{let i=e._zod.def,a=ta(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=ta(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},ba=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=ta(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else(t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=ta(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=ta(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},xa=(e,t,n,r)=>{let i=e._zod.def,a=ta(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Sa=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ca=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},wa=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ta=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Ea=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;ta(o,t,r);let s=t.seen.get(e);s.ref=o},Da=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Oa=(e,t,n,r)=>{let i=e._zod.def;ta(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ka=F(`ZodISODateTime`,(e,t)=>{Xn.init(e,t),to.init(e,t)});function Aa(e){return Si(ka,e)}var ja=F(`ZodISODate`,(e,t)=>{Zn.init(e,t),to.init(e,t)});function Ma(e){return Ci(ja,e)}var Na=F(`ZodISOTime`,(e,t)=>{Qn.init(e,t),to.init(e,t)});function Pa(e){return wi(Na,e)}var Fa=F(`ZodISODuration`,(e,t)=>{$n.init(e,t),to.init(e,t)});function Ia(e){return Ti(Fa,e)}var La=F(`ZodError`,(e,t)=>{xt.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>wt(e,t)},flatten:{value:t=>Ct(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ze,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ze,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Ra=Tt(La),za=Et(La),Ba=Dt(La),Va=kt(La),Ha=jt(La),Ua=Mt(La),Wa=Nt(La),Ga=Pt(La),Ka=Ft(La),qa=It(La),Ja=Lt(La),Ya=Rt(La),Xa=new WeakMap;function Za(e,t,n){let r=Object.getPrototypeOf(e),i=Xa.get(r);if(i||(i=new Set,Xa.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var Qa=F(`ZodType`,(e,t)=>(In.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:oa(e,`input`),output:oa(e,`output`)}}),e.toJSONSchema=aa(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>Ra(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Ba(e,t,n),e.parseAsync=async(t,n)=>za(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Va(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Ha(e,t,n),e.decode=(t,n)=>Ua(e,t,n),e.encodeAsync=async(t,n)=>Wa(e,t,n),e.decodeAsync=async(t,n)=>Ga(e,t,n),e.safeEncode=(t,n)=>Ka(e,t,n),e.safeDecode=(t,n)=>qa(e,t,n),e.safeEncodeAsync=async(t,n)=>Ja(e,t,n),e.safeDecodeAsync=async(t,n)=>Ya(e,t,n),Za(e,`ZodType`,{check(...e){let t=this.def;return this.clone(qe(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 rt(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(ps(e,t))},superRefine(e,t){return this.check(ms(e,t))},overwrite(e){return this.check(Wi(e))},optional(){return Yo(this)},exactOptional(){return Zo(this)},nullable(){return $o(this)},nullish(){return Yo($o(this))},nonoptional(e){return as(this,e)},array(){return Mo(this)},or(e){return Fo([this,e])},and(e){return zo(this,e)},transform(e){return ls(this,qo(e))},default(e){return ts(this,e)},prefault(e){return rs(this,e)},catch(e){return ss(this,e)},pipe(e){return ls(this,e)},readonly(){return ds(this)},describe(e){let t=this.clone();return Qr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Qr.get(this);let t=this.clone();return Qr.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 Qr.get(e)?.description},configurable:!0}),e)),$a=F(`_ZodString`,(e,t)=>{Ln.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ca(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Za(e,`_ZodString`,{regex(...e){return this.check(Ri(...e))},includes(...e){return this.check(Vi(...e))},startsWith(...e){return this.check(Hi(...e))},endsWith(...e){return this.check(Ui(...e))},min(...e){return this.check(L(...e))},max(...e){return this.check(Ii(...e))},length(...e){return this.check(Li(...e))},nonempty(...e){return this.check(L(1,...e))},lowercase(e){return this.check(zi(e))},uppercase(e){return this.check(Bi(e))},trim(){return this.check(Ki())},normalize(...e){return this.check(Gi(...e))},toLowerCase(){return this.check(qi())},toUpperCase(){return this.check(Ji())},slugify(){return this.check(Yi())}})}),eo=F(`ZodString`,(e,t)=>{Ln.init(e,t),$a.init(e,t),e.email=t=>e.check(ei(no,t)),e.url=t=>e.check(oi(ao,t)),e.jwt=t=>e.check(xi(bo,t)),e.emoji=t=>e.check(si(oo,t)),e.guid=t=>e.check(ti(ro,t)),e.uuid=t=>e.check(ni(io,t)),e.uuidv4=t=>e.check(ri(io,t)),e.uuidv6=t=>e.check(ii(io,t)),e.uuidv7=t=>e.check(ai(io,t)),e.nanoid=t=>e.check(ci(so,t)),e.guid=t=>e.check(ti(ro,t)),e.cuid=t=>e.check(li(co,t)),e.cuid2=t=>e.check(ui(lo,t)),e.ulid=t=>e.check(di(uo,t)),e.base64=t=>e.check(vi(_o,t)),e.base64url=t=>e.check(yi(vo,t)),e.xid=t=>e.check(fi(fo,t)),e.ksuid=t=>e.check(pi(po,t)),e.ipv4=t=>e.check(mi(mo,t)),e.ipv6=t=>e.check(hi(z,t)),e.cidrv4=t=>e.check(gi(ho,t)),e.cidrv6=t=>e.check(_i(go,t)),e.e164=t=>e.check(bi(yo,t)),e.datetime=t=>e.check(Aa(t)),e.date=t=>e.check(Ma(t)),e.time=t=>e.check(Pa(t)),e.duration=t=>e.check(Ia(t))});function R(e){return $r(eo,e)}var to=F(`ZodStringFormat`,(e,t)=>{Rn.init(e,t),$a.init(e,t)}),no=F(`ZodEmail`,(e,t)=>{Vn.init(e,t),to.init(e,t)}),ro=F(`ZodGUID`,(e,t)=>{zn.init(e,t),to.init(e,t)}),io=F(`ZodUUID`,(e,t)=>{Bn.init(e,t),to.init(e,t)}),ao=F(`ZodURL`,(e,t)=>{Hn.init(e,t),to.init(e,t)}),oo=F(`ZodEmoji`,(e,t)=>{Un.init(e,t),to.init(e,t)}),so=F(`ZodNanoID`,(e,t)=>{Wn.init(e,t),to.init(e,t)}),co=F(`ZodCUID`,(e,t)=>{Gn.init(e,t),to.init(e,t)}),lo=F(`ZodCUID2`,(e,t)=>{Kn.init(e,t),to.init(e,t)}),uo=F(`ZodULID`,(e,t)=>{qn.init(e,t),to.init(e,t)}),fo=F(`ZodXID`,(e,t)=>{Jn.init(e,t),to.init(e,t)}),po=F(`ZodKSUID`,(e,t)=>{Yn.init(e,t),to.init(e,t)}),mo=F(`ZodIPv4`,(e,t)=>{er.init(e,t),to.init(e,t)}),z=F(`ZodIPv6`,(e,t)=>{tr.init(e,t),to.init(e,t)}),ho=F(`ZodCIDRv4`,(e,t)=>{nr.init(e,t),to.init(e,t)}),go=F(`ZodCIDRv6`,(e,t)=>{rr.init(e,t),to.init(e,t)}),_o=F(`ZodBase64`,(e,t)=>{ar.init(e,t),to.init(e,t)}),vo=F(`ZodBase64URL`,(e,t)=>{sr.init(e,t),to.init(e,t)}),yo=F(`ZodE164`,(e,t)=>{cr.init(e,t),to.init(e,t)}),bo=F(`ZodJWT`,(e,t)=>{ur.init(e,t),to.init(e,t)}),xo=F(`ZodNumber`,(e,t)=>{dr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>la(e,t,n,r),Za(e,`ZodNumber`,{gt(e,t){return this.check(Ni(e,t))},gte(e,t){return this.check(Pi(e,t))},min(e,t){return this.check(Pi(e,t))},lt(e,t){return this.check(ji(e,t))},lte(e,t){return this.check(Mi(e,t))},max(e,t){return this.check(Mi(e,t))},int(e){return this.check(wo(e))},safe(e){return this.check(wo(e))},positive(e){return this.check(Ni(0,e))},nonnegative(e){return this.check(Pi(0,e))},negative(e){return this.check(ji(0,e))},nonpositive(e){return this.check(Mi(0,e))},multipleOf(e,t){return this.check(Fi(e,t))},step(e,t){return this.check(Fi(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 So(e){return Ei(xo,e)}var Co=F(`ZodNumberFormat`,(e,t)=>{fr.init(e,t),xo.init(e,t)});function wo(e){return Di(Co,e)}var To=F(`ZodBoolean`,(e,t)=>{pr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ua(e,t,n,r)});function Eo(e){return Oi(To,e)}var Do=F(`ZodUnknown`,(e,t)=>{mr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Oo(){return ki(Do)}var ko=F(`ZodNever`,(e,t)=>{hr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>da(e,t,n,r)});function Ao(e){return Ai(ko,e)}var jo=F(`ZodArray`,(e,t)=>{_r.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ga(e,t,n,r),e.element=t.element,Za(e,`ZodArray`,{min(e,t){return this.check(L(e,t))},nonempty(e){return this.check(L(1,e))},max(e,t){return this.check(Ii(e,t))},length(e,t){return this.check(Li(e,t))},unwrap(){return this.element}})});function Mo(e,t){return Xi(jo,e,t)}var No=F(`ZodObject`,(e,t)=>{Sr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_a(e,t,n,r),Ge(e,`shape`,()=>t.shape),Za(e,`ZodObject`,{keyof(){return Uo(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:Oo()})},loose(){return this.clone({...this._zod.def,catchall:Oo()})},strict(){return this.clone({...this._zod.def,catchall:Ao()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return ct(this,e)},safeExtend(e){return lt(this,e)},merge(e){return ut(this,e)},pick(e){return ot(this,e)},omit(e){return st(this,e)},partial(...e){return dt(Jo,this,e[0])},required(...e){return ft(is,this,e[0])}})});function B(e,t){return new No({type:`object`,shape:e??{},...I(t)})}var Po=F(`ZodUnion`,(e,t)=>{wr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>va(e,t,n,r),e.options=t.options});function Fo(e,t){return new Po({type:`union`,options:e,...I(t)})}var Io=F(`ZodDiscriminatedUnion`,(e,t)=>{Po.init(e,t),Tr.init(e,t)});function Lo(e,t,n){return new Io({type:`union`,options:t,discriminator:e,...I(n)})}var Ro=F(`ZodIntersection`,(e,t)=>{Er.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ya(e,t,n,r)});function zo(e,t){return new Ro({type:`intersection`,left:e,right:t})}var Bo=F(`ZodRecord`,(e,t)=>{kr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ba(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function Vo(e,t,n){return!t||!t._zod?new Bo({type:`record`,keyType:R(),valueType:e,...I(t)}):new Bo({type:`record`,keyType:e,valueType:t,...I(n)})}var Ho=F(`ZodEnum`,(e,t)=>{Ar.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fa(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Ho({...t,checks:[],...I(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Ho({...t,checks:[],...I(r),entries:i})}});function Uo(e,t){return new Ho({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...I(t)})}var Wo=F(`ZodLiteral`,(e,t)=>{jr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>pa(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 Go(e,t){return new Wo({type:`literal`,values:Array.isArray(e)?e:[e],...I(t)})}var Ko=F(`ZodTransform`,(e,t)=>{Mr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ha(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Fe(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(yt(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(yt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function qo(e){return new Ko({type:`transform`,transform:e})}var Jo=F(`ZodOptional`,(e,t)=>{Pr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Yo(e){return new Jo({type:`optional`,innerType:e})}var Xo=F(`ZodExactOptional`,(e,t)=>{Fr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Zo(e){return new Xo({type:`optional`,innerType:e})}var Qo=F(`ZodNullable`,(e,t)=>{Ir.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function $o(e){return new Qo({type:`nullable`,innerType:e})}var es=F(`ZodDefault`,(e,t)=>{Lr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ca(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function ts(e,t){return new es({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():et(t)}})}var ns=F(`ZodPrefault`,(e,t)=>{zr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function rs(e,t){return new ns({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():et(t)}})}var is=F(`ZodNonOptional`,(e,t)=>{Br.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Sa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function as(e,t){return new is({type:`nonoptional`,innerType:e,...I(t)})}var os=F(`ZodCatch`,(e,t)=>{Hr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ta(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ss(e,t){return new os({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var cs=F(`ZodPipe`,(e,t)=>{Ur.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ea(e,t,n,r),e.in=t.in,e.out=t.out});function ls(e,t){return new cs({type:`pipe`,in:e,out:t})}var us=F(`ZodReadonly`,(e,t)=>{Gr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Da(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ds(e){return new us({type:`readonly`,innerType:e})}var fs=F(`ZodCustom`,(e,t)=>{qr.init(e,t),Qa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ma(e,t,n,r)});function ps(e,t={}){return Zi(fs,e,t)}function ms(e,t){return Qi(e,t)}var hs={artificial_analysis_intelligence_index:{label:`Intelligence index`,scale:`index`},artificial_analysis_coding_index:{label:`Coding index`,scale:`index`},artificial_analysis_math_index:{label:`Math index`,scale:`index`},gpqa:{label:`GPQA Diamond`,scale:`fraction`},hle:{label:`Humanity's Last Exam`,scale:`fraction`},lcr:{label:`Long-context reasoning`,scale:`fraction`},livecodebench:{label:`LiveCodeBench`,scale:`fraction`},scicode:{label:`SciCode`,scale:`fraction`},math_500:{label:`MATH-500`,scale:`fraction`},aime:{label:`AIME`,scale:`fraction`},aime_25:{label:`AIME 2025`,scale:`fraction`},ifbench:{label:`IFBench`,scale:`fraction`},mmlu_pro:{label:`MMLU Pro`,scale:`fraction`},tau2:{label:`τ²-bench (agentic)`,scale:`fraction`},tau_banking:{label:`τ-bench banking`,scale:`fraction`},terminalbench_hard:{label:`Terminal-Bench Hard`,scale:`fraction`},terminalbench_v2_1:{label:`Terminal-Bench 2.1`,scale:`fraction`}};function gs(e){return(e.credentialVariants??[]).filter(e=>!e.operatorOnly)}function _s(e){let t=new Set(e.map(e=>e.definition.id));return e.filter(e=>!e.definition.clientGroup||e.definition.clientGroup===e.definition.id||!t.has(e.definition.clientGroup))}function vs(e,t){return e.filter(e=>e.definition.id===t||e.definition.clientGroup===t&&e.definition.id!==t)}function ys(e){return _s(e).filter(e=>e.definition.enabled&&e.definition.credentialClass!==`none`&&T(e.definition.id)&&!D(e.definition.id))}function bs(e){if(!e)return!1;try{let t=new URL(e).hostname.toLowerCase();return t===`127.0.0.1`||t===`localhost`||t===`::1`||t===`[::1]`}catch{return!1}}function xs(e,t={}){let n=e.displayName,r=t.credentialClass??e.credentialClass,i=t.baseUrl??e.baseUrl;return e.id===`oonacode`?{kind:`pool`,badge:`via OonaCode`,detail:`Runs on OonaCode's own provider accounts, through the OonaCode gateway. Priced models are billed to your account in credits; free models cost nothing on any plan.`,viaGateway:!0}:e.route===`direct`?{kind:`subscription-direct`,badge:`direct to provider`,detail:`Your ${n} subscription runs straight from this PC to the provider — it never passes through the OonaCode gateway.`,viaGateway:!1}:r===`api_key`&&e.kind!==`anthropic-passthrough`?{kind:`own-key-translated`,badge:`direct to provider`,detail:`Your ${n} key stays on this PC: OonaCode translates the request here and calls ${n} from this machine. The gateway sees neither the key nor the traffic.`,viaGateway:!1}:bs(i)?{kind:`local-server`,badge:`on this machine`,detail:`Runs against ${n} on this machine (${i}) — the request never leaves the PC.`,viaGateway:!1}:r===`api_key`&&e.kind===`anthropic-passthrough`&&e.directCapable===!0?{kind:`own-key-direct`,badge:`direct to provider`,detail:`Your ${n} key runs straight from this PC to ${n} — the OonaCode gateway is not in the path.`,viaGateway:!1}:{kind:`gateway`,badge:`via OonaCode`,detail:`Routed to ${n} through the OonaCode gateway.`,viaGateway:!0}}var Ss=Lo(`type`,[B({type:Go(`oauth-device`),deviceAuthorizationUrl:R().url(),tokenUrl:R().url(),clientId:R().min(1),scopes:Mo(R().min(1)).min(1),signInLabel:R().min(1).optional(),referrer:R().min(1).optional()}),B({type:Go(`openai-device`),deviceAuthorizationUrl:R().url(),pollUrl:R().url(),tokenUrl:R().url(),verificationUri:R().url(),redirectUri:R().url(),clientId:R().min(1),signInLabel:R().min(1).optional()})]),Cs=B({id:R().min(1),displayName:R().min(1),upstreamId:R().min(1).optional(),servedBy:Mo(R().min(1)).optional(),subscriptionServedBy:Mo(R().min(1)).optional(),contextWindow:So().int().positive().optional(),maxOutputTokens:So().int().positive().optional(),supportsTools:Eo().optional(),supportsThinking:Eo().optional(),effortLevels:Mo(Uo(ge)).optional(),helperModel:R().min(1).optional(),supportsVision:Eo().optional(),inputPricePerM:So().nonnegative().optional(),outputPricePerM:So().nonnegative().optional(),notes:R().optional(),free:Eo().optional(),aaIntelligence:So().optional(),aaCoding:So().optional(),aaOutputTps:So().optional(),aaTtft:So().optional(),aa:B({fetchedAt:R(),creator:R().optional(),releaseDate:R().optional(),benchmarks:Vo(R(),So()).optional()}).loose().optional()}).loose(),ws=B({id:R().regex(/^[a-z0-9][a-z0-9-]{1,40}$/,`provider id must be lowercase kebab-case`),displayName:R().min(1),kind:Uo([`anthropic-passthrough`,`openai-compatible`,`gemini`]),route:Uo([`gateway`,`direct`]),credentialClass:Uo([`api_key`,`subscription`,`none`]),baseUrl:R().url(),messagesPath:R().startsWith(`/`).optional(),modelsPath:R().startsWith(`/`).optional(),auth:B({header:Uo([`x-api-key`,`authorization-bearer`,`api-key`,`none`]),extraHeaders:Vo(R(),R()).optional()}),models:Mo(Cs),defaultModel:R().min(1),modelAliases:Vo(R(),R()).optional(),helperModel:R().min(1).optional(),capabilities:B({streaming:Eo(),tools:Eo(),thinking:Eo(),vision:Eo(),countTokens:Eo(),promptCaching:Eo(),promptCacheTtlSec:So().int().positive().optional()}),translate:B({maxTokensParam:Uo([`max_tokens`,`max_completion_tokens`]).optional(),reasoningEffortFromBudget:Eo().optional(),reasoningContentField:R().nullable().optional(),supportsParallelToolCalls:Eo().optional(),systemRole:Uo([`system`,`developer`]).optional(),streamIncludeUsage:Eo().optional(),wire:Uo([`chat`,`responses`]).optional()}).optional(),passthrough:B({stripCacheControl:Eo().optional(),cacheChain:Eo().optional(),toolSchemaRequiredArray:Eo().optional(),toolDescriptionRequired:Eo().optional(),allowedBetas:Mo(R()).optional(),anthropicVersion:R().optional()}).optional(),userBaseUrl:Eo().optional(),engineEnv:Vo(R(),R()).optional(),directCapable:Eo().optional(),subscriptionLogin:Ss.optional(),phase:Fo([Go(1),Go(2)]),enabled:Eo(),docsUrl:R().url().optional(),notes:R().optional(),references:Mo(B({label:R().min(1),url:R().url(),kind:Uo([`docs`,`pricing`,`models`,`console`,`status`,`keys`,`signup`,`other`]).optional()})).optional(),keyFormat:R().optional(),credentialVariants:Mo(B({id:R().min(1),label:R().min(1),header:Uo([`x-api-key`,`authorization-bearer`,`api-key`,`none`]).optional(),extraHeaders:Vo(R(),R()).optional(),operatorOnly:Eo().optional(),requiresClaudeCodeIdentity:Eo().optional(),subscriptionLogin:Ss.optional(),claudeCodeShape:B({betas:R().min(1),userAgent:R().min(1),billingHeader:R().min(1),headers:Vo(R(),R()).optional()}).optional(),baseUrl:R().url().optional(),keyFormat:R().optional(),notes:R().optional()})).optional(),adminGroup:R().optional(),clientGroup:R().optional(),recordLabel:R().optional(),effortLevels:Mo(Uo(ge)).optional()});B({version:So().int().positive(),updatedAt:R(),providers:Mo(ws)});function Ts(e,t){return Es(e,js(e,t))}function Es(e,t){return e.models.find(e=>e.id===t)?.upstreamId??t}function Ds(e){return/^claude-/i.test(e)}function Os(e){return e.replace(/\[1m\]$/i,``)}function ks(e,t){return{images:e.models.find(e=>e.id===t)?.supportsVision??e.capabilities.vision,documents:Ds(t)}}function As(e,t,n){let r=ks(e,t),i=new Set;for(let e of n){let t=e?.type;(t===`image`||t===`document`)&&i.add(t)}let a=e.models.find(e=>e.id===t)?.displayName??t;return i.has(`image`)&&!r.images?`${a} cannot read images. Remove the image, or pick a model that can — the model details say which.`:i.has(`document`)&&!r.documents?`${a} cannot read PDF documents — only Anthropic's Claude models take a PDF. Attach it as text, or pick a Claude model.`:null}function js(e,t){if(!t)return e.defaultModel;if(e.models.some(e=>e.id===t))return t;let n=e.modelAliases?.[t];if(n)return n;let r=t.toLowerCase(),i=r.includes(`haiku`)?`haiku`:r.includes(`opus`)?`opus`:r.includes(`sonnet`)?`sonnet`:r.includes(`fable`)?`fable`:null;if(i){if(e.modelAliases?.[i])return e.modelAliases[i];let t=e.models.find(e=>e.id.toLowerCase().includes(i));if(t)return t.id}return e.defaultModel}var Ms={messages:`/v1/messages`,countTokens:`/v1/messages/count_tokens`,models:`/v1/models`,providerMessages:e=>`/p/${e}/v1/messages`,providerCountTokens:e=>`/p/${e}/v1/messages/count_tokens`,providerModels:e=>`/p/${e}/v1/models`,health:`/api/health`,streamCheck:`/api/stream-check`,register:`/api/auth/register`,login:`/api/auth/login`,refresh:`/api/auth/refresh`,logout:`/api/auth/logout`,me:`/api/auth/me`,prelogin:`/api/auth/prelogin`,tokens:`/api/me/tokens`,token:e=>`/api/me/tokens/${e}`,tokenPurge:e=>`/api/me/tokens/${e}/purge`,tokenUsage:e=>`/api/me/tokens/${e}/usage`,providers:`/api/me/providers`,provider:e=>`/api/me/providers/${e}`,providerTest:e=>`/api/me/providers/${e}/test`,routing:`/api/me/routing`,usage:`/api/me/usage`,usageSession:e=>`/api/me/usage/sessions/${e}`,devices:`/api/me/devices`,pushToken:`/api/me/push-token`,hostNotify:`/api/me/hosts/notify`,device:e=>`/api/me/devices/${e}`,hosts:`/api/me/hosts`,hostHeartbeat:`/api/me/hosts/heartbeat`,hostVaultUnlock:e=>`/api/me/hosts/${encodeURIComponent(e)}/vault-unlock`,host:e=>`/api/me/hosts/${encodeURIComponent(e)}`,vault:`/api/me/vault`,vaultEvents:`/api/me/vault/events`,historySessions:`/api/me/history/sessions`,historySession:e=>`/api/me/history/sessions/${e}`,historyEntries:e=>`/api/me/history/sessions/${e}/entries`,registry:`/api/registry`,agentTools:`/api/agent-tools`,agentToolCalls:`/api/me/agent-tools/calls`,releasesLatest:`/api/releases/latest`,releasesHistory:`/api/releases`,team:`/api/me/team`,teamInvites:`/api/me/team/invites`,teamInvite:e=>`/api/me/team/invites/${e}`,teamInviteLookup:`/api/team/invites/lookup`,teamInviteDecline:`/api/team/invites/decline`,teamJoin:`/api/me/team/join`,teamInvitations:`/api/me/team/invitations`,teamInvitationAccept:e=>`/api/me/team/invitations/${e}/accept`,teamInvitationDecline:e=>`/api/me/team/invitations/${e}/decline`,teamMember:e=>`/api/me/team/members/${e}`,teamLeave:`/api/me/team/leave`,teamTransfer:`/api/me/team/transfer`,teamAudit:`/api/me/team/audit`,teamCheckout:`/api/me/team/checkout`,teamTopup:`/api/me/team/topup`,teamSeats:`/api/me/team/seats`,googleConfig:`/api/auth/google/config`,googleStart:`/api/auth/google/start`,googleCallback:`/api/auth/google/callback`,githubConfig:`/api/auth/github/config`,githubStart:`/api/auth/github/start`,githubCallback:`/api/auth/github/callback`,googleUnlink:`/api/me/google`,telegramConfig:`/api/auth/telegram/config`,telegramAuth:`/api/auth/telegram`,telegram:`/api/me/telegram`,telegramWebhook:`/api/webhooks/telegram`,passphraseSetup:`/api/auth/passphrase/setup`,passphraseRekey:`/api/me/passphrase/rekey`,recovery:`/api/me/recovery`,recoveryChallenge:`/api/auth/recovery/challenge`,recoveryConsume:`/api/auth/recovery/consume`,deviceApprovals:`/api/me/device-approvals`,deviceApproval:e=>`/api/me/device-approvals/${e}`,deviceApprovalApprove:e=>`/api/me/device-approvals/${e}/approve`,deviceApprovalDeny:e=>`/api/me/device-approvals/${e}/deny`,passwordResetRequest:`/api/auth/password-reset/request`,passwordResetConfirm:`/api/auth/password-reset/confirm`,vaultRekeyComplete:`/api/me/vault/rekey-complete`,vaultRekeyPending:`/api/me/vault/rekey-pending`,emailVerifySend:`/api/auth/email/verify/send`,emailVerifyConfirm:`/api/auth/email/verify/confirm`,emailVerifyWatch:`/api/auth/email/verify/watch`,twoFactor:`/api/me/2fa`,twoFactorEnroll:`/api/me/2fa/enroll`,twoFactorConfirm:`/api/me/2fa/confirm`,twoFactorDisable:`/api/me/2fa/disable`,twoFactorDisableRequest:`/api/me/2fa/disable/request`,twoFactorRecoveryCodes:`/api/me/2fa/recovery-codes`,twoFactorVerify:`/api/auth/2fa/verify`,deviceLinkStart:`/api/auth/device/start`,deviceLinkPoll:`/api/auth/device/poll`,deviceLinks:`/api/me/device-links`,deviceLink:e=>`/api/me/device-links/${e}`,deviceLinkApprove:e=>`/api/me/device-links/${e}/approve`,deviceLinkDeny:e=>`/api/me/device-links/${e}/deny`,hostLogs:`/api/me/hosts/logs`,errorReport:`/api/me/errors`,bugReports:`/api/me/bug-reports`,plans:`/api/plans`,myPlan:`/api/me/plan`,checkout:`/api/me/plan/checkout`,creditsTopup:`/api/me/credits/topup`,billing:`/api/me/billing`},Ns=2048,Ps=16384,Fs=8e3,Is=5242880,Ls=12582912;new Set(`BCDFGHJKLMNPQRSTVWXZ`.split(``));var Rs=`discard-my-vault-and-history`,zs=`Anyone who can use this device can use your saved provider keys without your passphrase. Turn this off on shared or public computers. You can revoke it any time from Devices.`,Bs={name:120,instructions:2e4,goal:2e3,repositories:50,repositoryUrl:500,memory:2e4,minIntervalFloor:1,minIntervalCeiling:10080},Vs=`⏰ Scheduled task "`;function Hs(e){if(!e.startsWith(Vs))return null;let t=e.indexOf(`"
|
|
76
|
+
|
|
77
|
+
`,18);return t<0?null:{title:e.slice(18,t),prompt:e.slice(t+3)}}Object.freeze({tengu_amber_sentinel:!0,tengu_groovy_eclipse:!0,tengu_humble_hammock:!0});var Us=[`mon`,`tue`,`wed`,`thu`,`fri`,`sat`,`sun`],Ws=/^([01]\d|2[0-3]):[0-5]\d$/;B({tz:R().min(1),windows:Mo(B({from:R().regex(Ws,`HH:MM`),to:R().regex(Ws,`HH:MM`),days:Mo(Uo(Us)).optional(),kind:Uo([`peak`,`offpeak`])})),offpeakDiscount:So().nonnegative().max(1).optional()});var Gs=[`priceInputCacheMissPeak`,`priceInputCacheMissOffpeak`,`priceInputCacheHitPeak`,`priceInputCacheHitOffpeak`,`priceCacheWritePeak`,`priceCacheWriteOffpeak`,`priceOutputPeak`,`priceOutputOffpeak`],Ks=B({inputCacheMiss:So().nonnegative(),inputCacheHit:So().nonnegative().optional(),cacheWrite:So().nonnegative().optional(),output:So().nonnegative()});B({by:Go(`prompt_tokens`),tiers:Mo(B({upToPromptTokens:So().int().positive().optional(),price:Ks,cost:Ks.optional()})).min(1),note:R().optional()}).superRefine((e,t)=>{let n=0;e.tiers.forEach((r,i)=>{let a=r.upToPromptTokens;if(a===void 0){i!==e.tiers.length-1&&t.addIssue({code:`custom`,message:`only the LAST tier may omit upToPromptTokens`,path:[`tiers`,i]});return}a<=n&&t.addIssue({code:`custom`,message:`tiers must ascend: ${a} does not exceed ${n}`,path:[`tiers`,i,`upToPromptTokens`]}),n=a})}),[...Gs];var qs={oonacode:{hex:`#000000`,owner:`OonaCode`,d:`M0.72 12a11.28 11.28 0 1 0 22.56 0a11.28 11.28 0 1 0 -22.56 0ZM4.8 12a7.2 7.2 0 1 0 14.4 0a7.2 7.2 0 1 0 -14.4 0ZM7.44 12a4.56 4.56 0 1 0 9.12 0a4.56 4.56 0 1 0 -9.12 0Z`,fillRule:`evenodd`},anthropic:{hex:`#D97757`,owner:`Anthropic`,d:`m4.7144 15.9555 4.7174-2.6471.079-.2307-.079-.1275h-.2307l-.7893-.0486-2.6956-.0729-2.3375-.0971-2.2646-.1214-.5707-.1215-.5343-.7042.0546-.3522.4797-.3218.686.0608 1.5179.1032 2.2767.1578 1.6514.0972 2.4468.255h.3886l.0546-.1579-.1336-.0971-.1032-.0972L6.973 9.8356l-2.55-1.6879-1.3356-.9714-.7225-.4918-.3643-.4614-.1578-1.0078.6557-.7225.8803.0607.2246.0607.8925.686 1.9064 1.4754 2.4893 1.8336.3643.3035.1457-.1032.0182-.0728-.164-.2733-1.3539-2.4467-1.445-2.4893-.6435-1.032-.17-.6194c-.0607-.255-.1032-.4674-.1032-.7285L6.287.1335 6.6997 0l.9957.1336.419.3642.6192 1.4147 1.0018 2.2282 1.5543 3.0296.4553.8985.2429.8318.091.255h.1579v-.1457l.1275-1.706.2368-2.0947.2307-2.6957.0789-.7589.3764-.9107.7468-.4918.5828.2793.4797.686-.0668.4433-.2853 1.8517-.5586 2.9021-.3643 1.9429h.2125l.2429-.2429.9835-1.3053 1.6514-2.0643.7286-.8196.85-.9046.5464-.4311h1.0321l.759 1.1293-.34 1.1657-1.0625 1.3478-.8804 1.1414-1.2628 1.7-.7893 1.36.0729.1093.1882-.0183 2.8535-.607 1.5421-.2794 1.8396-.3157.8318.3886.091.3946-.3278.8075-1.967.4857-2.3072.4614-3.4364.8136-.0425.0304.0486.0607 1.5482.1457.6618.0364h1.621l3.0175.2247.7892.522.4736.6376-.079.4857-1.2142.6193-1.6393-.3886-3.825-.9107-1.3113-.3279h-.1822v.1093l1.0929 1.0686 2.0035 1.8092 2.5075 2.3314.1275.5768-.3218.4554-.34-.0486-2.2039-1.6575-.85-.7468-1.9246-1.621h-.1275v.17l.4432.6496 2.3436 3.5214.1214 1.0807-.17.3521-.6071.2125-.6679-.1214-1.3721-1.9246L14.38 17.959l-1.1414-1.9428-.1397.079-.674 7.2552-.3156.3703-.7286.2793-.6071-.4614-.3218-.7468.3218-1.4753.3886-1.9246.3157-1.53.2853-1.9004.17-.6314-.0121-.0425-.1397.0182-1.4328 1.9672-2.1796 2.9446-1.7243 1.8456-.4128.164-.7164-.3704.0667-.6618.4008-.5889 2.386-3.0357 1.4389-1.882.929-1.0868-.0062-.1579h-.0546l-6.3385 4.1164-1.1293.1457-.4857-.4554.0608-.7467.2307-.2429 1.9064-1.3114Z`},"anthropic-subscription":{hex:`#D97757`,owner:`Anthropic`,d:`m4.7144 15.9555 4.7174-2.6471.079-.2307-.079-.1275h-.2307l-.7893-.0486-2.6956-.0729-2.3375-.0971-2.2646-.1214-.5707-.1215-.5343-.7042.0546-.3522.4797-.3218.686.0608 1.5179.1032 2.2767.1578 1.6514.0972 2.4468.255h.3886l.0546-.1579-.1336-.0971-.1032-.0972L6.973 9.8356l-2.55-1.6879-1.3356-.9714-.7225-.4918-.3643-.4614-.1578-1.0078.6557-.7225.8803.0607.2246.0607.8925.686 1.9064 1.4754 2.4893 1.8336.3643.3035.1457-.1032.0182-.0728-.164-.2733-1.3539-2.4467-1.445-2.4893-.6435-1.032-.17-.6194c-.0607-.255-.1032-.4674-.1032-.7285L6.287.1335 6.6997 0l.9957.1336.419.3642.6192 1.4147 1.0018 2.2282 1.5543 3.0296.4553.8985.2429.8318.091.255h.1579v-.1457l.1275-1.706.2368-2.0947.2307-2.6957.0789-.7589.3764-.9107.7468-.4918.5828.2793.4797.686-.0668.4433-.2853 1.8517-.5586 2.9021-.3643 1.9429h.2125l.2429-.2429.9835-1.3053 1.6514-2.0643.7286-.8196.85-.9046.5464-.4311h1.0321l.759 1.1293-.34 1.1657-1.0625 1.3478-.8804 1.1414-1.2628 1.7-.7893 1.36.0729.1093.1882-.0183 2.8535-.607 1.5421-.2794 1.8396-.3157.8318.3886.091.3946-.3278.8075-1.967.4857-2.3072.4614-3.4364.8136-.0425.0304.0486.0607 1.5482.1457.6618.0364h1.621l3.0175.2247.7892.522.4736.6376-.079.4857-1.2142.6193-1.6393-.3886-3.825-.9107-1.3113-.3279h-.1822v.1093l1.0929 1.0686 2.0035 1.8092 2.5075 2.3314.1275.5768-.3218.4554-.34-.0486-2.2039-1.6575-.85-.7468-1.9246-1.621h-.1275v.17l.4432.6496 2.3436 3.5214.1214 1.0807-.17.3521-.6071.2125-.6679-.1214-1.3721-1.9246L14.38 17.959l-1.1414-1.9428-.1397.079-.674 7.2552-.3156.3703-.7286.2793-.6071-.4614-.3218-.7468.3218-1.4753.3886-1.9246.3157-1.53.2853-1.9004.17-.6314-.0121-.0425-.1397.0182-1.4328 1.9672-2.1796 2.9446-1.7243 1.8456-.4128.164-.7164-.3704.0667-.6618.4008-.5889 2.386-3.0357 1.4389-1.882.929-1.0868-.0062-.1579h-.0546l-6.3385 4.1164-1.1293.1457-.4857-.4554.0608-.7467.2307-.2429 1.9064-1.3114Z`},openai:{hex:`#000000`,owner:`OpenAI`,d:`M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z`},xai:{hex:`#000000`,owner:`xAI`,d:`M14.234 10.162 22.977 0h-2.072l-7.591 8.824L7.251 0H.258l9.168 13.343L.258 24H2.33l8.016-9.318L16.749 24h6.993zm-2.837 3.299-.929-1.329L3.076 1.56h3.182l5.965 8.532.929 1.329 7.754 11.09h-3.182z`},deepseek:{hex:`#5786FE`,owner:`DeepSeek`,d:`M23.748 4.651c-.254-.124-.364.113-.512.233-.051.04-.094.09-.137.137-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.155-.708-.311-.955-.65-.172-.24-.219-.509-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.094.172.187.129.323-.082.28-.18.553-.266.833-.055.179-.137.218-.328.14a5.5 5.5 0 0 1-1.737-1.179c-.857-.828-1.631-1.743-2.597-2.46a12 12 0 0 0-.689-.47c-.985-.957.13-1.743.387-1.836.27-.098.094-.433-.778-.428-.872.003-1.67.295-2.687.685a3 3 0 0 1-.465.136 9.6 9.6 0 0 0-2.883-.101c-1.885.21-3.39 1.1-4.497 2.622C.082 8.776-.231 10.854.152 13.02c.403 2.284 1.568 4.175 3.36 5.653 1.857 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.132-.284 4.994-1.86.47.234.962.328 1.78.398.629.058 1.235-.031 1.705-.129.735-.155.684-.836.418-.961-2.155-1.004-1.682-.595-2.112-.926 1.095-1.295 2.768-3.598 3.284-6.733.05-.346.115-.834.108-1.114-.004-.171.035-.238.23-.257a4.2 4.2 0 0 0 1.545-.475c1.397-.763 1.96-2.016 2.093-3.517.02-.23-.004-.467-.247-.588M11.58 18.168c-2.088-1.642-3.101-2.183-3.52-2.16-.39.024-.32.472-.234.763.09.288.207.487.371.74.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.168-1.361-.801-2.5-1.86-3.301-3.306-.775-1.393-1.225-2.888-1.299-4.482-.02-.385.094-.522.477-.592a4.7 4.7 0 0 1 1.53-.038c2.131.311 3.946 1.264 5.467 2.774.868.86 1.525 1.887 2.202 2.89.72 1.066 1.494 2.082 2.48 2.915.348.291.626.513.892.677-.802.09-2.14.109-3.055-.615zm1.001-6.44a.306.306 0 0 1 .415-.287.3.3 0 0 1 .113.074.3.3 0 0 1 .086.214c0 .17-.136.307-.308.307a.303.303 0 0 1-.306-.307m3.11 1.596c-.2.081-.4.151-.591.16a1.25 1.25 0 0 1-.798-.254c-.274-.23-.47-.358-.551-.758a1.7 1.7 0 0 1 .015-.588c.07-.327-.007-.537-.238-.727-.188-.156-.426-.199-.689-.199a.6.6 0 0 1-.254-.078.253.253 0 0 1-.114-.358 1 1 0 0 1 .192-.21c.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.392.451.462.576.685.915.176.264.336.536.446.848.066.194-.02.353-.25.45`},kimi:{hex:`#000000`,owner:`Moonshot`,d:`M21.765.351C22.998.351 24 1.353 24 2.586S22.998 4.82 21.765 4.82h-1.974c-.15 0-.26-.12-.26-.26V2.586A2.237 2.237 0 0 1 21.765.35M9.41 13.388l8.447-8.377c.16-.16.07-.471-.14-.471h-4.55s-.1.02-.14.06l-9.099 9.029c-.14.14-.35.02-.35-.21V4.81c0-.15-.1-.27-.221-.27H.22c-.12 0-.22.12-.22.27v18.57c0 .15.1.27.22.27h3.137c.12 0 .22-.12.22-.27v-3.79c0-.08.03-.16.08-.21l2.826-2.796c.07-.07.16-.08.241-.03l7.546 5.551a8.9 8.9 0 0 0 4.018 1.493c.12.01.23-.11.23-.27V19.76c0-.14-.08-.25-.19-.26a5.8 5.8 0 0 1-2.355-.942l-6.533-4.73c-.14-.09-.15-.32-.03-.441`},qwen:{hex:`#6950EF`,owner:`Alibaba`,d:`M23.919 14.545 20.817 9.17l1.47-2.544a.56.56 0 0 0 0-.566l-1.633-2.83a.57.57 0 0 0-.49-.283h-6.207L12.487.402a.57.57 0 0 0-.49-.284H8.732a.56.56 0 0 0-.49.284L5.139 5.775h-2.94a.56.56 0 0 0-.49.284L.077 8.887a.56.56 0 0 0 0 .567L3.18 14.83l-1.47 2.545a.56.56 0 0 0 0 .566l1.634 2.83a.57.57 0 0 0 .49.283h6.205l1.47 2.545a.57.57 0 0 0 .49.284h3.266a.57.57 0 0 0 .49-.284l3.104-5.375h2.94a.57.57 0 0 0 .49-.283l1.634-2.828a.55.55 0 0 0-.004-.568M8.733.686l1.634 2.828-1.634 2.828H21.8L20.164 9.17H7.425L5.63 6.06Zm1.306 19.801-6.205-.002 1.634-2.83h3.265L2.201 6.344h3.267q3.182 5.517 6.367 11.032zm10.124-5.66L18.53 12l-6.532 11.315-1.634-2.83c2.129-3.673 4.25-7.351 6.373-11.028h3.592l3.102 5.374z`},mimo:{hex:`#FF6900`,owner:`Xiaomi`,d:`M12 0C8.016 0 4.756.255 2.493 2.516.23 4.776 0 8.033 0 12.012c0 3.98.23 7.235 2.494 9.497C4.757 23.77 8.017 24 12 24c3.983 0 7.243-.23 9.506-2.491C23.77 19.247 24 15.99 24 12.012c0-3.984-.233-7.243-2.502-9.504C19.234.252 15.978 0 12 0zM4.906 7.405h5.624c1.47 0 3.007.068 3.764.827.746.746.827 2.233.83 3.676v4.54a.15.15 0 0 1-.152.147h-1.947a.15.15 0 0 1-.152-.148V11.83c-.002-.806-.048-1.634-.464-2.051-.358-.36-1.026-.441-1.72-.458H7.158a.15.15 0 0 0-.151.147v6.98a.15.15 0 0 1-.152.148H4.906a.15.15 0 0 1-.15-.148V7.554a.15.15 0 0 1 .15-.149zm12.131 0h1.949a.15.15 0 0 1 .15.15v8.892a.15.15 0 0 1-.15.148h-1.949a.15.15 0 0 1-.151-.148V7.554a.15.15 0 0 1 .151-.149zM8.92 10.948h2.046c.083 0 .15.066.15.147v5.352a.15.15 0 0 1-.15.148H8.92a.15.15 0 0 1-.152-.148v-5.352a.15.15 0 0 1 .152-.147Z`}};function Js(e){return qs[e]??null}function Ys(e){let t=e.replace(/\(.*?\)/g,` `).split(/[\s/_-]+/).filter(Boolean);return t.length===0?`?`:t.length===1?t[0].slice(0,2).toUpperCase():`${t[0][0]}${t[1][0]}`.toUpperCase()}var Xs=[`stable`,`dev`];function Zs(e){return typeof e==`string`&&Xs.includes(e)}function Qs(e){if(typeof e!=`string`)return null;let t=e.trim().toLowerCase();return Zs(t)?t:null}function $s(e){let t=Qs(e)??`stable`;return t===`stable`?Ms.releasesLatest:`${Ms.releasesLatest}?channel=${encodeURIComponent(t)}`}function ec(e,t){let n=Qs(t)??`stable`;return n===`stable`?e:`${e} (${n})`}var tc=5e4,nc=[`bg`,`surface`,`surface-2`,`surface-3`,`border`,`fg`,`fg-muted`,`fg-faint`,`accent`,`accent-fg`,`accent-soft`,`project`,`ok`,`ok-soft`,`warn`,`warn-soft`,`danger`,`danger-soft`,`think`,`think-soft`,`code-bg`,`user-bubble`],rc={agentFinished:!1,permissionRequired:!0,errorOccurred:!0},ic={autoAcceptPermissions:!1,showReasoningSummaries:!0,notifications:rc,showAgentPicker:!0,transcriptWindowSize:500,openTabs:[],draftTabs:[],draftTitles:{},activeTab:null,remoteTabs:{},sessionPanelOpen:!1,explorerOpen:!1,sidebarWidth:288,sidebarPinned:!0,dismissedUpdateVersion:null,lastSeenReleaseNotes:null,claudeImportOffered:!1,claudeImportOffers:0,collapsedProjects:[],themeColors:{light:{},dark:{}}};function ac(e){return Math.min(Math.max(typeof e==`number`&&Number.isFinite(e)?Math.floor(e):0,0),3)}function oc(e){return Math.min(640,Math.max(200,typeof e==`number`&&Number.isFinite(e)?Math.round(e):288))}function sc(e){return Math.min(tc,Math.max(100,typeof e==`number`&&Number.isFinite(e)?Math.round(e):500))}function cc(e,t){return typeof e==`boolean`?e:t}function lc(e){return typeof e==`string`&&e.length>0&&e.length<=64?e:null}function uc(e,t=50){if(!Array.isArray(e))return[];let n=[];for(let r of e)if(!(typeof r!=`string`||r.length===0||r.length>200)&&!n.includes(r)&&(n.push(r),n.length>=t))break;return n}function dc(e,t=50){if(typeof e!=`object`||!e||Array.isArray(e))return{};let n={};for(let[r,i]of Object.entries(e))if(!(r.length===0||r.length>200)&&!(typeof i!=`string`||i.length===0||i.length>200)&&(n[r]=i,Object.keys(n).length>=t))break;return n}function fc(e){if(typeof e!=`string`)return null;let t=e.trim();return/^#[0-9a-fA-F]{6}$/.test(t)?t.toLowerCase():null}function pc(e){if(typeof e!=`object`||!e||Array.isArray(e))return{};let t={};for(let[n,r]of Object.entries(e)){if(!nc.includes(n))continue;let e=fc(r);e!==null&&(t[n]=e)}return t}function mc(e){let t=typeof e==`object`&&e?e:{};return{light:pc(t.light),dark:pc(t.dark)}}function hc(e){let t=typeof e==`object`&&e?e:{},n=typeof t.notifications==`object`&&t.notifications!==null?t.notifications:{},r=uc(t.openTabs),i=uc(t.draftTabs).filter(e=>!r.includes(e)),a={};for(let[e,n]of Object.entries(dc(t.draftTitles)))i.includes(e)&&(a[e]=n);let o=[...r,...i],s=t.activeTab,c=typeof s==`string`&&o.includes(s)?s:o[o.length-1]??null;return{autoAcceptPermissions:cc(t.autoAcceptPermissions,ic.autoAcceptPermissions),showReasoningSummaries:cc(t.showReasoningSummaries,ic.showReasoningSummaries),notifications:{agentFinished:cc(n.agentFinished,rc.agentFinished),permissionRequired:cc(n.permissionRequired,rc.permissionRequired),errorOccurred:cc(n.errorOccurred,rc.errorOccurred)},showAgentPicker:cc(t.showAgentPicker,ic.showAgentPicker),transcriptWindowSize:sc(t.transcriptWindowSize),openTabs:r,draftTabs:i,draftTitles:a,activeTab:c,remoteTabs:dc(t.remoteTabs),sessionPanelOpen:cc(t.sessionPanelOpen,ic.sessionPanelOpen),explorerOpen:cc(t.explorerOpen,ic.explorerOpen),sidebarWidth:oc(t.sidebarWidth),sidebarPinned:cc(t.sidebarPinned,ic.sidebarPinned),dismissedUpdateVersion:lc(t.dismissedUpdateVersion),lastSeenReleaseNotes:lc(t.lastSeenReleaseNotes),claudeImportOffered:cc(t.claudeImportOffered,ic.claudeImportOffered),claudeImportOffers:ac(t.claudeImportOffers),collapsedProjects:uc(t.collapsedProjects),themeColors:mc(t.themeColors)}}new Set(Object.keys(ic));var gc=[{version:`0.3.151`,date:`2026-09-25`,added:[`Files the agent names in a chat are clickable. Audio and video play right in the chat with a small player, pictures open as a preview, and in the app every file can be opened in its own program or shown in its folder.`,`Uninstalling the app asks whether to keep your chats on this PC. Keeping them means a new install signs in and continues every chat.`],fixed:[`Installing and updating no longer fail with “The operation has timed out” on PCs whose network drops the newer internet addresses, nor while our server restarts for an update.`]},{version:`0.3.150`,date:`2026-09-25`,added:[],fixed:[`The fix in 0.3.149 for long, sleeping turns now really reaches the agent: the Monitor tool and the block on long waits are on for every chat.`,`A chat compacted after a long pause no longer pays to cache a conversation it is about to replace, and the agent keeps each tool call in its history exactly as it wrote it — both as Claude Code does.`]},{version:`0.3.149`,date:`2026-09-25`,added:[`The agent can watch a long job with the Monitor tool, as Claude Code does, and is woken the moment the job finishes.`],fixed:[`Long chats no longer spend their time asleep. With no way to watch a background job, the agent had been polling it with waits of four to eight minutes. One chat spent more than three and a half hours of a day sleeping, and turns ran for hours while the model worked for a fraction of that. The agent now gets the same working rules as Claude Code, and long waits are blocked.`]},{version:`0.3.148`,date:`2026-09-25`,added:[],fixed:[`A scheduled task that could not be sent — the PC had just restarted, the vault was still locked, the server was not reachable yet — waits and tries again instead of switching itself off. Pausing, editing or deleting a task while its prompt is being sent is no longer undone, and a scheduled prompt no longer lands in a chat whose engine is still starting.`,`A chat on your own DeepSeek key, or one switched with a typed “/model opus”, is no longer shown as withdrawn and locked. “/model fable” picks Claude Fable instead of the default model.`,`Moving a chat to another model no longer lowers its saved effort level to what the old model offered, and a one-off “oona --effort” is no longer saved as the chat’s level.`,`After you pick another model for a locked chat and send, the chat no longer flashes the lock again while the engine starts; if the start fails, your pick is kept.`,`Coming back from a file tab no longer jumps the chat to an old reply or reopens the search bar.`,`The hidden sidebar slides away again when the pointer leaves the window past its edge, and the keyboard no longer tabs through it while it is hidden. Clicking ⓘ in Settings opens its note instead of closing it.`,`Subagents write their prompt cache for five minutes, as Claude Code does for its subscribers; the chat itself keeps the hour. Their cache writes cost less.`]},{version:`0.3.147`,date:`2026-09-25`,added:[`A chat’s scheduled tasks sit beside its subagents: a clock badge says how many are live and when the next one runs, and opens the list — each task’s schedule, its next and last run, Pause and Delete. The tasks run on this PC.`],fixed:[`A prompt the scheduler sends into a chat reads as a “Scheduled task” line, not as your own message waiting in the queue.`,`A chat whose model is no longer offered shows that model in red and waits for you to pick another; its history stays, and the old model is not in the list any more.`,`The effort list follows the server within minutes, without restarting the app. A chat set to a level that has been switched off moves to the nearest one — ultracode becomes xhigh. Chats on your own Claude subscription have an effort picker again.`]},{version:`0.3.146`,date:`2026-09-25`,added:[`A Tools menu beside the model picker: switch OonaCode’s own tools on or off for each chat — browser, desktop and window control, clipboard, screen capture, Office documents and run-as-administrator. Each tool costs the model only a short line until it is used, and the menu shows how much. The first tools are marked Demo while they are tested with every model: a demo tool answers what it would have done, and does nothing on your PC yet.`],fixed:[]},{version:`0.3.145`,date:`2026-09-25`,added:[],fixed:[`Every request of every chat, on every model, is about 3,200 tokens smaller: the engine’s own “auto memory” instructions are gone. OonaCode starts each engine in a fresh private folder and deletes it afterwards, so the notes the model was told to keep there were thrown away when the chat went idle — the model spent tool calls writing memories it would never read. A project’s memory is OonaCode’s own and stays.`,`The engine’s claude.ai Artifact tools are switched off everywhere OonaCode runs it — the app, the terminal, VS Code, the phone, Telegram and the agent API.`]},{version:`0.3.144`,date:`2026-09-25`,added:[],fixed:[`Long chats on Claude models in the OonaCode pool keep their cache for an hour, as Claude Code does for its subscribers. A pause of more than five minutes no longer re-sends the whole conversation at the full cache-write price, which in a large chat was the most expensive part of coming back to it.`,`The session panel’s Context shows how big the conversation is now, not the total of every request the chat ever made — a long chat read “10.7M / 1.0M tokens”.`,`The message box keeps the cursor after you send, so you can go straight on typing the next message.`,`A paid chat’s background work (titles, reading web pages) no longer goes to a free model of the same vendor.`]},{version:`0.3.143`,date:`2026-09-24`,added:[`Search inside your chats: open the search in the chat list, press the sliders button and choose Whole chats. It looks through every message of every chat on this PC, and you choose whose words — yours, the model’s, or both — plus, if you like, the tools’ commands and output and the subagents’ conversations. Results show each message with the words lit; a click opens the chat with its search on them.`,`More search options, for both kinds of search: one project only, a time window (today, 7 or 30 days), match case and whole words.`],fixed:[`While you search the chat list, projects with no matching chat are hidden too.`]},{version:`0.3.142`,date:`2026-09-24`,added:[],fixed:[`A reply you sent shows as the same small chip it had in the message box — “Reply to” and the first few words — instead of the whole quoted text; the full quote appears when you rest the pointer on it, and a click jumps to the message it answers.`,`The model now knows a reply points back into the conversation: it is told the quoted lines are from the chat history, not new input, and whose words they were — its own earlier reply, your earlier message, a file, or a tool’s output.`,`When the chat list is narrow, its buttons wrap onto a second line instead of spilling out of it.`]},{version:`0.3.141`,date:`2026-09-24`,added:[`The chat list on the left can be made wider or narrower: drag its right edge (double-click it for the usual width).`,`The chat list can hide: press the pin in its header, the button at the top left, or View → Sidebar (Ctrl+B). While hidden it slides in when the pointer reaches the left edge of the window, and slides away when you leave it.`,`Search in the chat list is a single magnifier now; click it and the search box opens across the top. Escape or × clears it.`],fixed:[`Opening OonaCode right after a restart no longer leaves the OonaCode pool models out of the model list: if they cannot be read yet, OonaCode asks again by itself a few seconds later and the list fills in.`,`The Artificial Analysis scores (intelligence, coding, speed and benchmarks) show on every model in the model list again — including the models of your own Claude and SuperGrok subscriptions, which never had them.`,`A chat’s details card no longer appears on top of its right-click menu.`]},{version:`0.3.140`,date:`2026-09-24`,added:[`Reply is tidier: the message you reply to shows as a small chip above the message box with its first few words, instead of filling the box. Click the chip — or the quote in a sent reply — to jump to that message; the × removes it.`,`Right-click a project in the sidebar for its settings: Project settings… opens Projects with that project already selected. The gear beside a project’s “+” does the same, and a chat filed in a project offers it in its own menu too.`,`Link GitHub. Under a project’s Repositories (and in Settings → Providers), link your GitHub account once: the agent’s git and gh then clone, pull and push your private repositories on every PC of yours. You type a short code on github.com; the token stays in your encrypted vault and never reaches the OonaCode server. Public repositories need nothing.`],fixed:[]},{version:`0.3.139`,date:`2026-09-24`,added:[`Every setting now says what it does, and resting the pointer on the ⓘ beside it tells you where in OonaCode it applies and what it does not do.`,`Export chats… is in the File menu (and on the sidebar in a browser window) instead of in Settings.`,`With Remote access turned off on a PC, your phone, Telegram, the website and your other PCs still show it — online or not — marked “remote access off”, and opening it tells you to turn Remote access back on in OonaCode on that PC.`],fixed:[`Turning Remote access off now tells your other devices at once. Before, the PC was already unreachable from them, but they could not say why.`,`The settings of This PC save the moment you change them — nothing is lost by closing the dialog.`,`Settings that did nothing, or repeated another one, are gone: the default permission mode (each chat’s Build / Plan / Ask first picker decides), the agent-picker switch, the Git Bash path, the engine path and the extra allowed origins. The server address is shown, not edited — signing in sets it.`]},{version:`0.3.138`,date:`2026-09-24`,added:[`Projects have settings now, like the Claude app’s: a goal, the repositories the project works on, what a new chat in it starts on (model, effort and folder), a project memory the agent keeps up to date, and whether its chats may schedule work — and how often at most. All of it is in Projects, and a Claude app project you import brings its own.`,`OonaCode has a scheduler. Ask the agent to do something later or on a repeat — “check the build every morning at nine” — and it schedules it on this PC; when it is due, the prompt arrives in the chat, even if the chat had gone quiet. The Projects dialog and the chat’s info panel list what is scheduled, where you can pause, resume or delete it.`],fixed:[`Saving a project’s instructions now reaches its chats at their next message, instead of waiting until the chat happened to restart.`]},{version:`0.3.137`,date:`2026-09-24`,added:[],fixed:[`After a PC restart the app could ask for a "host token" and sign you out: two copies of the OonaCode background service started at once and fought over your session. Only one ever runs now, and the app never shows the token page — if its service is replaced it reconnects by itself.`,`The unlock screen stays put until you unlock, and says what went wrong in place — a wrong password, or a connection it is re-establishing — instead of jumping to another page.`,`A message with a picture sent while the agent was working stayed “queued”, and removing it said it was already sent. It now shows as read the moment the agent takes it, and a reopened chat shows it with its picture.`,`In the model’s questions, typing your own answer now clears the options you had picked, and picking an option clears what you typed — the answer sent is exactly the one you chose. The same on the phone, in the terminal and in Telegram.`]},{version:`0.3.136`,date:`2026-09-24`,added:[`Every model now has its own housekeeper — the small, fast model of the same maker that writes a chat’s titles and reads the web pages it fetches. On the OonaCode pool a MiMo v2.6 Pro chat uses MiMo v2.6 Flash, a Qwen chat Qwen3.8 Flash, a GLM chat GLM-5.3 Flash and a GPT-5 chat GPT-5 mini, instead of doing that work on the big model itself. A free model keeps its own, so it stays free.`],fixed:[]},{version:`0.3.135`,date:`2026-09-24`,added:[],fixed:[`Claude models on the OonaCode pool — Opus 5.5, Opus 5, Sonnet 5 and Fable 5.1 — now use their whole 1M context. A long chat no longer stops to summarise itself every ~170k tokens, and its subagents get the same window.`,`Reading a web page is quick again in a Claude chat: pages are read by Claude Haiku, as in Claude Code, instead of a helper that took about a minute a page.`,`Changing a chat’s model now moves its subagents and background helpers to the new model too; before, they stayed on the old one until the app restarted.`,`MiMo v2.5 and v2.5 Pro chats now use their full 1M context too.`]},{version:`0.3.134`,date:`2026-09-23`,added:[],fixed:[`On the Android app, the model’s questions can be answered again. They come one at a time — “Question 2 of 3” — with Back, Next and Skip, and Answer sends them to your PC. The card used to show only the first question, hide the rest below it and wait for all of them, so it could not be sent.`]},{version:`0.3.133`,date:`2026-09-23`,added:[`Bring your Claude desktop app projects across: File → Import chats from other coding agents now lists every project the Claude app has opened on this PC. Each one arrives as an OonaCode project of the same name — its goal, instructions and what Claude noted about it become the project’s instructions — with its project chat and one chat per thread filed under it, ready to carry on.`,`A Claude Code chat you moved into a Claude app project is filed under that project here too.`,`A thread you never opened in the Claude app still comes across, with its task and every reply the project chat saw; open it once in the Claude app and import again for its whole conversation.`],fixed:[`Cursor chats appear in the import list again — they had been left out since September 10.`]},{version:`0.3.132`,date:`2026-09-23`,added:[`Reply to any part of a chat: select some text (or just right-click a block), choose Reply, and it is quoted in your message box — type your answer under it. A quote from a file the agent read names the file.`,`Right-click in a chat: copy what you selected, copy a whole reply or tool output, copy a code block or a link, find the selected words in the chat, or select a block.`,`Search in a chat opens the block its match is in — a folded tool card, a thought, a finished agent’s work — and scrolls to the words themselves.`,`Search matches are now bright orange, the current one strongest, so they stand out on code too.`,`The file viewer shows pictures (PNG, JPEG, GIF, WebP, SVG and more), plays audio and video, and shows Markdown formatted, with a switch to the source.`,`Right-click a file or folder in the explorer to copy its path or delete it.`],fixed:[`Moving a chat to another folder or project while it was working could delete the folder it was working in, start two agents at once, or send your next message to the old folder.`,`The working line no longer says a chat may be stuck while it waits for your approval or answer, or right after you send a message, and it counts time correctly (no more "4m 60s").`,`A date line no longer says "Today" for yesterday’s messages when the app stays open past midnight.`,"Installing with npm (`npm i -g oonacode`) installs this version again; earlier npm releases carried an old program.",`The What’s new window could open again on the next start, showing the same update a second time.`,`An older OonaCode window or VS Code extension no longer resets settings it does not know about, such as your theme colours or which project groups you folded.`,`A new install no longer opens with a list of changes; this window now appears only after an update.`,`The notification switch for permissions now says it also covers the agent’s questions.`]},{version:`0.3.131`,date:`2026-09-23`,added:[`Claude Opus 5.5 is here — the newest Opus, and cheaper to run than Opus 5. Choose it in the model picker, from the OonaCode pool or on your own Claude subscription. It runs on the newer Claude Code engine (2.1.280) that this update brings.`,`Every block in a chat shows its time at the bottom right, in your local time — hover it for the full date — and a date line marks where each day starts.`,`A running chat tells you how long the agent has been quiet, and after five minutes that it may be stuck and what to do.`,`After every update, OonaCode now opens this window to show you what changed.`],fixed:[`A reply that streamed in live had no time on it until the chat was opened again.`,`Chats open in tabs could fail to come back after a restart if a setting changed while they were being restored.`]}];function _c(e,t){let n=e=>{let[t,...n]=e.trim().replace(/^v/,``).split(`-`);return{nums:(t??``).split(`.`).map(e=>Number.parseInt(e,10)||0),pre:n.length>0?n.join(`-`):null}},r=n(e),i=n(t);for(let e=0;e<Math.max(r.nums.length,i.nums.length);e++){let t=(r.nums[e]??0)-(i.nums[e]??0);if(t!==0)return t}return r.pre===i.pre?0:r.pre===null?1:i.pre===null?-1:vc(r.pre,i.pre)}function vc(e,t){let n=e.split(`.`),r=t.split(`.`);for(let e=0;e<Math.max(n.length,r.length);e++){let t=n[e],i=r[e];if(t===i)continue;if(t===void 0)return-1;if(i===void 0)return 1;let a=/^\d+$/.test(t),o=/^\d+$/.test(i);if(a&&o){let e=Number(t)-Number(i);if(e!==0)return e;continue}return a===o?t<i?-1:1:a?-1:1}return 0}function yc(e,t,n=gc){if(!e||e===`0.0.0`)return[];let r=n.filter(t=>_c(t.version,e)<=0);return[...t===null?r.filter(t=>_c(t.version,e)===0):r.filter(e=>_c(e.version,t)>0)].sort((e,t)=>_c(t.version,e.version))}function bc(e,t,n,r=gc){if(!e||e===`0.0.0`)return{record:null,show:[]};let i=null;for(let e of r)(i===null||_c(e.version,i)>0)&&(i=e.version);let a=i!==null&&_c(e,i)>0?i:e;return{record:t===null||_c(a,t)>0?a:null,show:t===null&&!n?[]:yc(e,t,r)}}function xc(e,t){if(t==null)return[...e];if(t.length===0)return[];let n=new Set(t),r=e.filter(e=>n.has(e.id));return r.length>0?r:[...e]}var Sc=`the user skipped the question`,Cc=`(the user skipped this question)`;function wc(e){let t=e?.questions;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let t=e;if(typeof t.question!=`string`)continue;let r=Array.isArray(t.options)?t.options.map(e=>e&&typeof e==`object`?e:null).filter(e=>e!==null&&typeof e.label==`string`).map(e=>({label:e.label,...typeof e.description==`string`?{description:e.description}:{}})):[];n.push({question:t.question,header:typeof t.header==`string`?t.header:``,options:r,multiSelect:t.multiSelect===!0})}return n}function Tc(e,t,n={},r=new Set){let i={};return e.forEach((e,a)=>{if(r.has(a)){i[e.question]=Cc;return}let o=(n[a]??``).trim();i[e.question]=o||(t[a]??[]).join(`, `)}),i}var Ec=[`win32`,`linux`,`darwin`],Dc=[`demo`,`live`],Oc=[`allow`,`ask`],kc=[`string`,`number`,`integer`,`boolean`,`array`,`object`];function Ac(e,t){let n=t?.[e.slug];return typeof n==`boolean`?n:e.defaultOn}function jc(e,t){return e.filter(e=>Ac(e,t))}var Mc={slug:48,name:80,entryTool:40,description:2e3,promptLine:1e3,actionDescription:1e3,params:30,paramName:48,paramDescription:400,enumValues:40,callArgKeys:20,callError:500,callBatch:100},Nc=/^[A-Za-z0-9_-]+$/;function Pc(e){return typeof e==`string`&&e.length>0&&e.length<=Mc.entryTool&&Nc.test(e)}function Fc(e){return Math.ceil(e.length/4)}function Ic(e){return Fc(`${e.entryTool} ${e.description}`)+55}var Lc=B({type:Uo(kc),required:Eo().optional(),enum:Mo(Fo([R(),So()])).optional(),description:R().optional()}),Rc=B({slug:R().min(1),description:R(),params:Vo(R(),Lc),permission:Uo(Oc),sort:So()}),zc=B({version:R(),url:R(),sha256:R(),sizeBytes:So(),exe:R(),format:Go(`zip`)}),Bc=B({slug:R().min(1),name:R(),entryTool:R().refine(Pc,`not a valid tool name`),description:R(),promptLine:R().nullable(),status:Uo(Dc),defaultOn:Eo(),sort:So(),install:zc.nullable(),actions:Mo(Rc)});B({platform:Uo(Ec),version:R(),packs:Mo(Bc),refreshMinutes:So()});function Vc(e,t,n){return n?`${e}::${n}::${t}`:`${e}::${t}`}function Hc(e,t){return e===`oonacode`?-1:t}function Uc(e){return e.filter(e=>e.definition.enabled&&e.configured&&T(e.definition.id)&&!D(e.definition.id)&&e.definition.models.length>0).map((e,t)=>({p:e,order:Hc(e.definition.id,t)})).sort((e,t)=>e.order-t.order).map(e=>e.p)}function Wc(e){let t=gs(e.definition);if(t.length<2)return[{variantId:null,suffix:``}];let n=new Set((e.credentials??[]).map(e=>e.variantId??`payg`)),r=t.filter(e=>n.has(e.id));return r.length<2?[{variantId:null,suffix:``}]:r.map(e=>({variantId:e.id,suffix:` ${Gc(e.id,e.label)}`}))}function Gc(e,t){return e===`token-plan`?`Subscription`:e===`payg`||e===`api-key`?`API`:t}function Kc(e,t){let n=Uc(e),r=e=>{let t=e.definition.clientGroup,r=(t?n.find(e=>e.definition.id===t)?.definition:void 0)?.displayName??e.definition.displayName,i=n.filter(n=>(n.definition.clientGroup??n.definition.id)===(t??e.definition.id));return e.definition.recordLabel&&i.length>1?`${r} ${e.definition.recordLabel}`:r};return n.flatMap(n=>{let i=xc(n.definition.models,t?.[n.definition.id]),a=r(n);return Wc(n).map(t=>({providerId:n.definition.id,variantId:t.variantId,label:`${a}${t.suffix}`,route:n.definition.route,models:i.map(r=>({providerId:n.definition.id,variantId:t.variantId,modelId:r.id,label:r.displayName||r.id,value:Vc(n.definition.id,r.id,t.variantId),free:r.free===!0,details:{...r.aaIntelligence===void 0?{}:{intelligence:r.aaIntelligence},...r.aaCoding===void 0?{}:{coding:r.aaCoding},...r.aaOutputTps===void 0?{}:{outputTps:r.aaOutputTps},...r.aaTtft===void 0?{}:{ttft:r.aaTtft},...r.contextWindow===void 0?{}:{contextWindow:r.contextWindow},...r.maxOutputTokens===void 0?{}:{maxOutputTokens:r.maxOutputTokens},...r.supportsThinking===void 0?{}:{thinking:r.supportsThinking},...r.supportsVision===void 0?{}:{vision:r.supportsVision},...r.supportsTools===void 0?{}:{tools:r.supportsTools},...r.inputPricePerM===void 0?{}:{inputPricePerM:r.inputPricePerM},...r.outputPricePerM===void 0?{}:{outputPricePerM:r.outputPricePerM},...r.notes===void 0?{}:{notes:r.notes},...r.aa===void 0?{}:{aa:r.aa},...r.servedBy===void 0?{}:{providers:r.servedBy.map(t=>{let n=e.find(e=>e.definition.id===t)?.definition,i=n?.displayName??t;if(!r.subscriptionServedBy?.includes(t))return i;let a=n?.credentialVariants?.find(e=>e.id===`token-plan`)?.label;return`${i} — ${a?a.replace(/\s*\(.*\)\s*$/,``):`subscription`}`})}}}))}))}).filter(e=>e.models.length>0)}var qc=new Set([`opus`,`sonnet`,`haiku`,`fable`]);function Jc(e,t){if(!t.providerId||!t.model)return!1;let n=e.find(e=>e.definition.id===t.providerId)?.definition;if(!n||n.models.length===0)return!1;let r=Os(t.model);if(n.models.some(e=>e.id===r||e.upstreamId===r)||n.modelAliases?.[r]!==void 0)return!1;let i=r.toLowerCase();return!qc.has(i)||n.modelAliases?.[i]===void 0&&!n.models.some(e=>e.id.toLowerCase().includes(i))}function Yc(e,t){let n=Kc(e),r=n[0]??null,i=t.providerId??r?.providerId??null,a=t.variantId??(i?n.find(e=>e.providerId===i)?.variantId??null:r?.variantId??null);return i?t.model?{providerId:i,variantId:a,modelId:t.model}:{providerId:i,variantId:a,modelId:e.find(e=>e.definition.id===i)?.definition?.defaultModel||n.find(e=>e.providerId===i)?.models[0]?.modelId||null}:{providerId:null,variantId:a,modelId:t.model??null}}function Xc(e){if(!Number.isFinite(e))return`0 credits`;let t=Math.round(e*1e3)/1e3,n=t.toFixed(3).replace(/\.?0+$/,``);return`${n===``?`0`:n} credit${t===1?``:`s`}`}function Zc(e){return`Remote access is turned off on ${e}, so it cannot be reached from here. Turn it on in OonaCode on that PC — Settings → This PC → Remote access — then try again.`}function Qc(e){if(typeof e!=`string`)return null;let t=/^API Error\b:?\s*(?:(\d{3})(?!\d)\s*)?([\s\S]*)$/i.exec(e.trim());return t?{status:t[1]===void 0?null:Number(t[1]),message:(t[2]??``).trim()}:null}function $c(e){return typeof e!=`string`||e===``?!1:/prompt is too long|maximum context length|context[ _-]?length[ _-]?exceeded|input token count exceeds|too many (?:input )?tokens|exceeds? the (?:maximum|model's) context/i.test(e)}var el=`chat too long for this model`;function tl(e,t){if($c(t))return el;switch(e){case 400:case 422:return`invalid request`;case 401:return`sign-in needed`;case 402:return`insufficient credits`;case 403:return`not allowed`;case 404:return`model not found`;case 408:case 504:return`timed out`;case 413:return`request too large`;case 429:return`rate limited`;default:return e!==null&&e>=500&&e<=599?`provider error`:`API error`}}var nl={error_max_turns:`max turns reached`,error_max_budget_usd:`budget reached`,error_during_execution:`error during execution`,error_max_structured_output_retries:`structured output failed`,interrupted:`interrupted`,success:`error`};function rl(e){if(!e.isError)return`turn complete`;let t=Qc(e.text);if(t)return tl(t.status,t.message);let n=nl[e.subtype];if(n!==void 0)return n;let r=e.subtype.replace(/_/g,` `).trim();return r===``?`error`:r}var il={authentication_failed:`sign-in needed`,billing_error:`billing problem`,rate_limit:`rate limited`,invalid_request:`invalid request`,server_error:`provider error`};function al(e,t){if(typeof e!=`string`)return null;let n=e.trim();if(n===``)return null;if($c(t))return el;let r=il[n];if(r!==void 0)return r;if(n===`unknown`){let e=Qc(t);return e?tl(e.status,e.message):$c(t)?el:`error`}return n.replace(/_/g,` `)}function ol(e){return typeof e==`number`&&Number.isFinite(e)?e:0}function sl(e,t){let n=typeof e==`object`&&e?e:{},r={input:ol(n.input_tokens),cached:ol(n.cache_read_input_tokens)+ol(n.cache_creation_input_tokens),output:ol(n.output_tokens)};if(r.input+r.cached+r.output>0||typeof t!=`object`||!t)return r;let i={input:0,cached:0,output:0};for(let e of Object.values(t)){if(typeof e!=`object`||!e)continue;let t=e;i.input+=ol(t.inputTokens),i.cached+=ol(t.cacheReadInputTokens)+ol(t.cacheCreationInputTokens),i.output+=ol(t.outputTokens)}return i}function cl(e,t,n=140){let r=t??{};for(let t of[`command`,`file_path`,`pattern`,`query`,`url`,`path`,`prompt`]){let i=r[t];if(typeof i==`string`&&i.trim().length>0){let t=i.replace(/\s+/g,` `).trim();return`${e}: ${t.length>n?`${t.slice(0,n)}…`:t}`}}return e}var ll={wav:{kind:`audio`,mime:`audio/wav`},mp3:{kind:`audio`,mime:`audio/mpeg`},ogg:{kind:`audio`,mime:`audio/ogg`},oga:{kind:`audio`,mime:`audio/ogg`},opus:{kind:`audio`,mime:`audio/ogg`},m4a:{kind:`audio`,mime:`audio/mp4`},aac:{kind:`audio`,mime:`audio/aac`},flac:{kind:`audio`,mime:`audio/flac`},weba:{kind:`audio`,mime:`audio/webm`},mp4:{kind:`video`,mime:`video/mp4`},m4v:{kind:`video`,mime:`video/mp4`},mov:{kind:`video`,mime:`video/mp4`},webm:{kind:`video`,mime:`video/webm`},mkv:{kind:`video`,mime:`video/x-matroska`},ogv:{kind:`video`,mime:`video/ogg`},png:{kind:`image`,mime:`image/png`},jpg:{kind:`image`,mime:`image/jpeg`},jpeg:{kind:`image`,mime:`image/jpeg`},gif:{kind:`image`,mime:`image/gif`},webp:{kind:`image`,mime:`image/webp`},bmp:{kind:`image`,mime:`image/bmp`},svg:{kind:`image`,mime:`image/svg+xml`},avif:{kind:`image`,mime:`image/avif`}};function ul(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`)),n=e.slice(t+1),r=n.lastIndexOf(`.`);return r<=0?``:n.slice(r+1).toLowerCase()}function dl(e){return ll[ul(e)]??null}var fl={complete:`/api/v1/account/vault/rekey-complete`,revoke:`/api/v1/account/vault/rekey-revoke`,deviceUnlock:`/api/v1/account/device-unlock`};function pl(e){return e?.deviceUnlock??`off`}function ml(e){if(!e?.loggedIn)return null;let t=e;if(t.vaultStatus!==`pending_rekey`)return null;let n=t.vaultRekeyPending??null;return{pending:n,canFinishHere:t.canFinishRekey===!0,trustedDevices:n?.trustedDevices.map(e=>e.label||e.name)??[],since:n?.since??null,from:hl(n)}}function hl(e){if(!e)return null;let t=e.requestedFrom.device?.trim()||null,n=e.requestedFrom.ip?.trim()||null;return t&&n?`${t} (${n})`:t??n}function gl(e){if(!e)return`an unknown date`;let t=Date.parse(e);if(Number.isNaN(t))return`an unknown date`;try{return new Date(t).toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`})}catch{return new Date(t).toISOString()}}function _l(e){let t=e.from?` from ${e.from}`:``;return`A password reset was started on ${gl(e.since)}${t}. Your saved provider keys are still sealed under the old password.`}function vl(e){return e.trustedDevices.length===0?`No device with "keep me unlocked" is left, so nothing here holds the key from before the reset.`:`Open OonaCode on ${bl(e.trustedDevices)} to finish the reset — your saved keys are waiting there.`}var yl=`Either way, your vault Recovery Key still works: sign in on the OonaCode website from any device and finish the reset there. Discarding is the last resort — it deletes your saved provider keys, your mirrored history and that Recovery Key for good.`;function bl(e){return e.length<=1?e[0]??``:`${e.slice(0,-1).join(`, `)} or ${e[e.length-1]}`}function xl(e){return e.canFinishHere?`A password reset is waiting: this PC can move your vault to the new password.`:e.trustedDevices.length>0?`A password reset is waiting — your saved keys stay locked until it is finished on ${bl(e.trustedDevices)}.`:`A password reset is waiting and no PC holds the old key — finish it with your vault Recovery Key on the OonaCode website.`}var Sl=class extends Error{code;status;details;constructor(e,t,n,r){super(n),this.name=`HostApiError`,this.code=e,this.status=t,this.details=r}get isUnauthorized(){return this.status===401||this.code===`unauthorized`}get isEmailNotVerified(){return this.code===`email_not_verified`}};function Cl(e){if(!e)return``;let t=new URLSearchParams;for(let[n,r]of Object.entries(e))r!=null&&r!==``&&t.set(n,String(r));let n=t.toString();return n?`?${n}`:``}function wl(e){return e.trim().replace(/\/+$/,``)}function Tl(e,t){let n=wl(e.baseUrl),r=t??((e,t)=>fetch(e,t));async function i(t,i,a,o={}){let s={Authorization:`Bearer ${e.token}`,Accept:o.raw||o.bytes?`*/*`:`application/json`},c={method:t,headers:s,credentials:`omit`};a!==void 0&&(s[`Content-Type`]=`application/json`,c.body=JSON.stringify(a));let l;try{l=await r(`${n}${i}`,c)}catch(e){throw new Sl(`network`,0,`Cannot reach the host at ${n}: ${String(e?.message??e)}`)}if(!l.ok){let e=null,t=``;try{t=await l.text(),e=t?JSON.parse(t):null}catch{e=null}let n=e?.error?.code??(l.status===401?`unauthorized`:`internal`),r=e?.error?.message??(t||`${l.status} ${l.statusText}`);throw new Sl(n,l.status,r,e?.error?.details)}if(o.bytes)return await l.arrayBuffer();if(o.raw)return await l.text();if(l.status===204)return;let u=await l.text();if(u)try{return JSON.parse(u)}catch{throw new Sl(`parse`,l.status,`Host returned malformed JSON for ${t} ${i}`)}}let a=Ae;return{health:()=>i(a.health,P.health),info:()=>i(a.info,P.info),listSessions:e=>i(a.listSessions,`${P.sessions}${Cl(e)}`),createSession:e=>i(a.createSession,P.sessions,e),getSession:e=>i(a.getSession,P.session(e)),updateSession:(e,t)=>i(a.updateSession,P.session(e),t),deleteSession:e=>i(a.deleteSession,P.session(e)),exportSessionsArchive:async t=>{let i=await r(`${n}${P.sessionsExportArchive}`,{method:`POST`,credentials:`omit`,headers:{Authorization:`Bearer ${e.token}`,Accept:`application/zip`,"Content-Type":`application/json`},body:JSON.stringify({password:t})});if(!i.ok){let e=await i.text().catch(()=>``),t=null;try{t=e?JSON.parse(e):null}catch{t=null}throw new Sl(t?.error?.code??`internal`,i.status,t?.error?.message??e??`the export failed`)}return i.blob()},listEntries:(e,t)=>i(a.listEntries,`${P.sessionEntries(e)}${Cl(t)}`),listMessages:e=>i(a.listMessages,P.sessionMessages(e)),prompt:(e,t)=>i(a.prompt,P.sessionPrompt(e),{...t,stream:!1}),interrupt:e=>i(a.interrupt,P.sessionInterrupt(e),{}),cancelQueued:(e,t)=>i(a.cancelQueued,P.sessionQueued(e,t)),forkSession:(e,t)=>i(a.fork,P.sessionFork(e),t??{}),exportSession:(e,t)=>i(a.export,`${P.sessionExport(e)}${Cl(t)}`,void 0,{raw:!0}),listProjects:()=>i(a.listProjects,P.projects),listVaultProjects:()=>i(a.listVaultProjects,P.vaultProjects),createVaultProject:e=>i(a.createVaultProject,P.vaultProjects,e),updateVaultProject:(e,t)=>i(a.updateVaultProject,P.vaultProject(e),t),deleteVaultProject:e=>i(a.deleteVaultProject,P.vaultProject(e)),listScheduledTasks:(e={})=>{let t=new URLSearchParams;e.sessionId&&t.set(`sessionId`,e.sessionId),e.projectId&&t.set(`projectId`,e.projectId);let n=t.toString();return i(a.listScheduledTasks,n?`${P.scheduledTasks}?${n}`:P.scheduledTasks)},createScheduledTask:e=>i(a.createScheduledTask,P.scheduledTasks,e),updateScheduledTask:(e,t)=>i(a.updateScheduledTask,P.scheduledTask(e),t),deleteScheduledTask:e=>i(a.deleteScheduledTask,P.scheduledTask(e)),getGithubLink:()=>i(a.getGithubLink,P.githubLink),searchEntries:e=>i(a.searchEntries,`${P.sessionSearch}${Cl(e)}`),startGithubLink:()=>i(a.startGithubLink,P.githubLinkStart,{}),cancelGithubLink:()=>i(a.cancelGithubLink,P.githubLinkStart),unlinkGithub:()=>i(a.unlinkGithub,P.githubLink),scanClaudeSessions:()=>i(a.scanClaudeSessions,P.importClaude),importClaudeSessions:e=>i(a.importClaudeSessions,P.importClaude,e??{}),sessionLink:e=>i(a.sessionLink,P.sessionLink(e)),syncSessionDown:e=>i(a.syncSessionDown,P.sessionSyncDown(e),{}),inspectProject:e=>i(a.inspectProject,`${P.projectInspect}${Cl(e)}`),attachSessionProject:(e,t)=>i(a.attachSessionProject,P.sessionProject(e),t),listAgentTools:()=>i(`GET`,P.agentTools),listProviders:()=>i(a.listProviders,P.providers),setActiveProvider:e=>i(a.setActiveProvider,P.providersActive,e),testProvider:e=>i(a.providerTest,P.providerTest(e),{}),probeCredential:(e,t)=>i(a.providerProbe,P.providerProbe(e),t),listModels:e=>i(a.listModels,`${P.models}${Cl(e)}`),getSettings:()=>i(a.getSettings,P.settings),updateSettings:e=>i(a.updateSettings,P.settings,e),getAccount:()=>i(a.getAccount,P.account),login:e=>i(a.login,P.accountLogin,e),logout:()=>i(a.logout,P.accountLogout,{}),unlock:e=>i(a.unlock,P.accountUnlock,e),lock:()=>i(`POST`,P.accountLock,{reason:`user`}),plan:()=>i(`GET`,P.accountPlan),remoteUnlockHost:(e,t)=>i(`POST`,P.hostVaultUnlock(e),{password:t}),resendVerification:e=>i(a.resendVerification,P.accountResendVerification,e),startAccountLink:e=>i(a.linkStart,P.accountLinkStart,e??{}),accountLinkStatus:()=>i(a.linkStatus,P.accountLinkStatus),cancelAccountLink:()=>i(a.linkCancel,P.accountLinkCancel,{}),completeVaultRekey:e=>i(`POST`,fl.complete,e),revokeVaultRekey:e=>i(`POST`,fl.revoke,e),setDeviceUnlock:e=>i(`POST`,fl.deviceUnlock,e),listCredentials:()=>i(a.listCredentials,P.credentials),addCredential:e=>i(a.addCredential,P.credentials,e),deleteCredential:e=>i(a.deleteCredential,P.credential(e)),testCredential:e=>i(a.credentialTest,P.credentialTest(e),{}),syncNow:()=>i(a.syncNow,P.syncNow,{}),claudeSubscriptionLogin:()=>i(a.claudeLogin,P.subscriptionClaudeLogin,{}),claudeSubscriptionStatus:()=>i(a.claudeStatus,P.subscriptionClaudeStatus),claudeLoginState:()=>i(a.claudeLoginState,P.subscriptionClaudeLoginState),claudeLoginCode:e=>i(a.claudeLoginCode,P.subscriptionClaudeLoginCode,e),claudeLoginCancel:()=>i(a.claudeLoginCancel,P.subscriptionClaudeLoginCancel,{}),oauthLoginStart:e=>i(a.oauthLogin,P.subscriptionOauthLogin(e),{}),oauthLoginState:e=>i(a.oauthLoginState,P.subscriptionOauthLoginState(e)),oauthLoginCancel:e=>i(a.oauthLoginCancel,P.subscriptionOauthLoginCancel(e),{}),doctor:()=>i(a.doctor,P.doctor),listHosts:()=>i(a.listHosts,P.hosts),listHostSessions:e=>i(a.listHostSessions,P.hostSessions(e)),deleteHostSession:(e,t)=>i(a.deleteHostSession,P.hostSession(e,t),{method:`DELETE`}),updateHost:(e,t)=>i(a.updateHost,P.host(e),t),listHostSessionEntries:(e,t,n)=>i(a.listHostSessionEntries,`${P.hostSessionEntries(e,t)}${Cl(n)}`),reportError:e=>i(a.errorReport,P.errorReport,e),sendBugReport:e=>i(a.bugReport,P.bugReport,e),listSessionFiles:(e,t)=>i(a.listSessionFiles,`${P.sessionFiles(e)}${Cl({path:t})}`),readSessionFile:(e,t)=>i(a.readSessionFile,`${P.sessionFile(e)}${Cl({path:t})}`,void 0,{raw:!0}),readSessionFileBytes:(e,t)=>i(a.readSessionFile,`${P.sessionFile(e)}${Cl({path:t})}`,void 0,{bytes:!0}),deleteSessionFile:(e,t)=>i(a.deleteSessionFile,`${P.sessionFile(e)}${Cl({path:t})}`),grantLocalFile:async(e,t)=>{let r=await i(a.grantLocalFile,P.sessionLocalFileGrant(e),{path:t});return{...r,url:/^https?:/i.test(r.url)?r.url:`${n}${r.url}`}}}}function El(e){return e instanceof Sl&&(e.status===404||e.status===501)}var Dl=120;function Ol(){return Dl}function kl(e){let t=e.batchMs??120,n=e.hiddenBatchMs??1e3,r=e.isHidden??(()=>!1),i=e.now??(()=>Date.now()),a=e.setTimeout??((e,t)=>setTimeout(e,t)),o=e.clearTimeout??(e=>clearTimeout(e)),s=[],c=null,l=-1/0,u=!1,d=()=>{if(c!==null&&(o(c),c=null),s.length===0)return;let t=s;s=[],l=i(),e.deliver(t)};return{push(o){if(u)return;if(s.push(o),!e.isStreamFrame(o)){d();return}let f=r()?n:t;if(f<=0){d();return}if(c!==null)return;let p=i()-l;if(p>=f){d();return}c=a(()=>{c=null,d()},f-p)},flush:d,dispose(){u=!0,c!==null&&o(c),c=null,s=[]}}}function Al(e,t,n){if((t.providerId??``)!==e.providerId||e.variantId!==void 0&&(t.variantId??null)!==(e.variantId??null)||!t.model)return!1;let r=Os(t.model),i=Os(e.model);if(r===i)return!0;let a=n.find(t=>t.definition.id===e.providerId)?.definition;return a!==void 0&&Ts(a,i)===r}function jl(e){return e instanceof Sl&&e.code===`email_not_verified`}function Ml(e){if(!jl(e))return null;let t={error:{code:e.code,message:e.message,details:e.details}};return k(t)?t.error.details:null}function Nl(e){let t=e.trim(),n=t.indexOf(`@`);return n<=0?`***`:`${t.slice(0,1)}***${t.slice(n)}`}function Pl(e,t){return e===void 0||!Number.isFinite(e)||e<=0?t:t+Math.ceil(e)*1e3}function Fl(e,t){return Math.max(0,Math.ceil((e.resendAt-t)/1e3))}function Il(e,t){if(!jl(e))return null;let n=t.now??Date.now(),r=Ml(e),i=t.email.trim();return{email:i,displayEmail:r?.email||Nl(i),verification:r?.verification??`pending`,registered:t.registered===!0,resendAt:Pl(r?.resendAfterSec,n)}}function Ll(e){let t=e.registered?`Account created. `:``;return e.verification===`unverified`?`${t}Confirm your email first — no link is outstanding for ${e.displayEmail}; send a new one.`:`${t}Confirm your email first — we sent a link to ${e.displayEmail}.`}function Rl(e=null){return{sessionId:e,session:null,items:[],index:new Map,status:`idle`,activeTurnId:null,init:null,statusText:null,pendingPermissions:[],lastSeq:null,totals:{costUsd:0,inputTokens:0,cachedInputTokens:0,outputTokens:0,turns:0},turnCachedTokens:0,contextTokens:null,hydrated:!1,agentActivity:{},hasSubagentItems:!1,hasOptimisticUser:!1,lastLocalPromptId:null,lastFrameAt:null,lastLiveUuid:null,engineSince:null,subpathParents:{},seen:new Set,streams:{},nextId:1}}function zl(e,t){let n=e.agentActivity[t.agentId],r={subpath:t.subpath,firstAt:n?Math.min(n.firstAt,t.at):t.at,at:n?Math.max(n.at,t.at):t.at,finished:t.finished,toolUses:(n?.toolUses??0)+t.toolUses};return{...e,agentActivity:{...e.agentActivity,[t.agentId]:r}}}function Bl(e,t,n,r,i,a){let o=bu.exec(t)?.[2];if(!o)return e;let s=i&&Date.parse(i)||0;if(n!==`assistant`)return zl(e,{agentId:o,subpath:t,at:s,finished:e.agentActivity[o]?.finished??!1,toolUses:0});let c=(Array.isArray(r)?r:[]).filter(e=>e.type===`tool_use`),l=c.length===0;return typeof a==`string`&&(l=a===`end_turn`||a===`stop_sequence`),c.some(e=>e.name===`StructuredOutput`)&&(l=!0),zl(e,{agentId:o,subpath:t,at:s,finished:l,toolUses:c.length})}function Vl(e,t){switch(t.type){case`frame`:return Hl(e,t.frame,t.receivedAt);case`hydrate`:return gu(e,t.messages,t.session??null);case`entries`:return vu(e,t.entries);case`session`:return Tu(e,t.session);case`local_prompt`:return Du(e,t);case`local_prompt_failed`:return Ou(e,t.requestId);case`local_permission`:return hu(e,t.requestId,t.behavior,`local`);case`local_system`:{let n={kind:`system`,id:`sys:${e.nextId}`,uuid:null,parentToolUseId:null,turnId:null,timestamp:null,subtype:t.subtype,text:t.text};return Fu({...e,nextId:e.nextId+1},n)}case`reset`:return Rl(e.sessionId)}}function Hl(e,t,n){let r=Kl(e,t,n);if(n===void 0||!Wl(t,e,r))return r;let i=r.lastFrameAt;return i!==null&&n>=i&&n-i<1e3?r:{...r,lastFrameAt:n}}function Ul(e){return e===`running`||e===`waiting_permission`}function Wl(e,t,n){switch(e.type){case`agent`:return e.seq===null?e.message.type!==`system`||e.message.subtype!==`local_command`:!1;case`turn_started`:case`turn_finished`:case`prompt_delivered`:case`subagent_activity`:return!0;case`permission_request`:return n!==t;case`permission_resolved`:return!0;default:return!1}}function Gl(e){if(e.lastFrameAt!==null||!e.hydrated||!Ul(e.status))return e;let t=e.engineSince??0;for(let n=e.items.length-1;n>=0;n--){let r=e.items[n].timestamp,i=r?Date.parse(r):NaN;if(Number.isFinite(i)){i>t&&(t=i);break}}for(let n of Object.values(e.agentActivity))n.at>t&&(t=n.at);return t>0?{...e,lastFrameAt:t}:e}function V(e,t,n){return t!==null||n===void 0||typeof e.timestamp==`string`?e:{...e,timestamp:new Date(n).toISOString()}}function Kl(e,t,n){switch(t.type){case`agent`:{if(t.seq!==null&&e.seen.has(`seq:${t.seq}`))return e;let r=ql(e,V(t.message,t.seq,n),{turnId:t.turnId,receivedAt:n});return t.seq!==null&&(r=zu(r,`seq:${t.seq}`),(r.lastSeq===null||t.seq>r.lastSeq)&&(r={...r,lastSeq:t.seq})),r}case`turn_started`:{let n=`turnstart:${t.turnId}`;if(e.seen.has(n))return e;let r=zu(e,n);if(r={...r,activeTurnId:t.turnId,status:`running`,statusText:null,turnCachedTokens:0},t.requestId){let e=r.items.findIndex(e=>e.kind===`user`&&e.requestId===t.requestId);if(e>=0){let n={...r.items[e],turnId:t.turnId,waiting:!1};r=e<r.items.length-1?Fu(Lu(r,new Set([n.id])),n):Iu(r,e,n)}}return r}case`turn_finished`:return uu(e,t.result,t.turnId);case`prompt_delivered`:return ou(e,t.text,t.deliveredAt,t.requestId);case`prompt_cancelled`:{let n=e.items.filter(e=>e.kind===`user`&&!e.failed&&(e.requestId===t.requestId||(e.waiting||e.optimistic)&&e.deliveredAt===null&&e.text===t.text));return Lu(e,new Set(n.map(e=>e.id)))}case`subagent_activity`:return zl(e,{agentId:t.agentId,subpath:t.subpath,at:Date.parse(t.at)||Date.now(),finished:t.finished,toolUses:t.toolUses});case`permission_request`:return mu(e,t.request,t.turnId,t.settled===!0);case`permission_resolved`:return hu(e,t.requestId,t.behavior,t.resolvedBy);case`session_state`:{let n=t.session;return Tu((n.status===`idle`||n.status===`error`)&&e.pendingPermissions.length===0&&e.activeTurnId!==null?{...e,activeTurnId:null}:e,n)}case`error`:{if(t.code===`replay_truncated`||t.code===`replay_windowed`)return e;let r={kind:`error`,id:`err:${e.nextId}`,uuid:null,parentToolUseId:null,turnId:e.activeTurnId,timestamp:n===void 0?null:new Date(n).toISOString(),code:t.code,message:t.message,requestId:t.requestId??null};return Fu({...e,nextId:e.nextId+1},r)}default:return e}}function ql(e,t,n){let r=typeof t.uuid==`string`?t.uuid:null,i=t.type===`stream_event`||t.type===`tool_progress`,a=r&&!i?`uuid:${r}`:null;if(i&&r!==null&&r===e.lastLiveUuid)return e;if(a&&e.seen.has(a))return t.type===`assistant`?Ql(e,t):e;let o=e;switch(t.type){case`system`:o=Jl(e,t,n);break;case`stream_event`:o=Yl(e,t,n);break;case`assistant`:o=Zl(e,t,n);break;case`user`:o=ru(e,t,n);break;case`result`:o=lu(e,t,n);break;case`tool_progress`:o=fu(e,t);break;case`auth_status`:o=pu(e,t,n);break;default:return e}return a?o=zu(o,a):i&&r!==null&&(o={...o,lastLiveUuid:r}),o}function Jl(e,t,n){switch(t.subtype){case`init`:{let r={model:Gu(t.model),cwd:Gu(t.cwd),tools:Array.isArray(t.tools)?t.tools.filter(e=>typeof e==`string`):[],permissionMode:Gu(t.permissionMode),claudeCodeVersion:Gu(t.claude_code_version),apiKeySource:Gu(t.apiKeySource),sessionId:Gu(t.session_id),mcpServers:Array.isArray(t.mcp_servers)?t.mcp_servers:[]};return{...e,init:r,engineSince:n.receivedAt??Date.now()}}case`compact_boundary`:{let r=t.compact_metadata??{},i={kind:`compact`,id:Vu(e,`compact`,t),uuid:Hu(t),parentToolUseId:Uu(t),turnId:n.turnId,timestamp:Wu(t),trigger:r.trigger===`manual`?`manual`:`auto`,preTokens:typeof r.pre_tokens==`number`?r.pre_tokens:0,postTokens:typeof r.post_tokens==`number`?r.post_tokens:null};return Fu(Bu(e),i)}case`status`:{let n=typeof t.status==`string`?t.status:null;return{...e,statusText:n}}case`task_notification`:{let r=me({taskId:Gu(t.task_id)||null,toolUseId:Gu(t.tool_use_id)||null,status:Gu(t.status)||null,summary:Gu(t.summary)||null});if(ju(e,r))return e;let i=Hu(t),a={kind:`user`,id:i?`u:${i}`:`i${e.nextId}`,uuid:i,parentToolUseId:Uu(t),turnId:n.turnId,timestamp:Wu(t),text:r,attachments:[],requestId:null,optimistic:!1,failed:!1,waiting:!1,deliveredAt:null,compactSummary:!1,taskNotification:!0,engineNote:!1};return e.index.get(a.id)===void 0?Fu(i?e:Bu(e),a):e}case`permission_denied`:{let n=Gu(t.tool_use_id),r=Gu(t.message);return Ru(e,n,e=>{let t=e.name===`AskUserQuestion`&&r===`the user skipped the question`;return{...e,status:t?`skipped`:`denied`,result:e.result??{content:r||`Permission denied`,isError:!t,structured:null}}})}case`rewind_boundary`:{let n={kind:`system`,id:`sys:${e.nextId}`,uuid:Hu(t),parentToolUseId:Uu(t),turnId:e.activeTurnId,timestamp:Wu(t),subtype:`rewind`,text:typeof t.content==`string`&&t.content.trim()?t.content.trim():`Rewound here — the conversation was taken back to this point and continued differently.`};return Fu({...e,nextId:e.nextId+1},n)}default:{let n=typeof t.content==`string`?t.content.trim():``,r=n?nu(n):null;if(!r||r.subtype===`caveat`)return e;let i={kind:`system`,id:`sys:${e.nextId}`,uuid:Hu(t),parentToolUseId:Uu(t),turnId:e.activeTurnId,timestamp:Wu(t),subtype:r.subtype,text:r.text};return Fu({...e,nextId:e.nextId+1},i)}}}function Yl(e,t,n){let r=t.event;if(!r||typeof r!=`object`)return e;let i=Uu(t),a=i??``,o=e.streams[a]??{messageId:null,model:null,blocks:{},unclaimed:[]};switch(r.type){case`message_start`:{let t=r.message,n={messageId:t?.id??null,model:t?.model??null,blocks:{},unclaimed:[]},i=e;for(let e of o.unclaimed)i=Xl(i,e);return{...i,streams:{...i.streams,[a]:n}}}case`content_block_start`:{let s=r.content_block,c=e,l;if(s.type===`text`)l={kind:`assistant`,id:`i${e.nextId}`,uuid:null,parentToolUseId:i,turnId:n.turnId,timestamp:Wu(t),text:s.text??``,streaming:!0,model:o.model,messageId:o.messageId,error:null,aborted:!1},c=Bu(c);else if(s.type===`thinking`||s.type===`redacted_thinking`)l={kind:`thinking`,id:`i${e.nextId}`,uuid:null,parentToolUseId:i,turnId:n.turnId,timestamp:Wu(t),text:s.type===`thinking`?s.thinking??``:``,streaming:!0,redacted:s.type===`redacted_thinking`},c=Bu(c);else if(s.type===`tool_use`){let c=s;if(e.index.get(c.id)!==void 0){let t={...o.blocks,[r.index]:c.id};return{...e,streams:{...e.streams,[a]:{...o,blocks:t}}}}let u=c.input&&Object.keys(c.input).length>0;l={kind:`tool`,id:c.id,uuid:null,parentToolUseId:i,turnId:n.turnId,timestamp:Wu(t),toolUseId:c.id,name:c.name,input:u?c.input:null,inputJson:u?JSON.stringify(c.input):``,status:`streaming`,result:null,startedAt:n.receivedAt??null,finishedAt:null,durationMs:null,elapsedSec:null,permissionRequestId:null,messageId:o.messageId}}else return e;c=Fu(c,l);let u={...o.blocks,[r.index]:l.id},d=[...o.unclaimed,l.id];return{...c,streams:{...c.streams,[a]:{...o,blocks:u,unclaimed:d}}}}case`content_block_delta`:{let t=o.blocks[r.index];if(!t)return e;let n=e.index.get(t);if(n===void 0)return e;let i=e.items[n],a=r.delta;return a.type===`text_delta`&&i.kind===`assistant`?Iu(e,n,{...i,text:i.text+a.text}):a.type===`thinking_delta`&&i.kind===`thinking`?Iu(e,n,{...i,text:i.text+a.thinking}):a.type===`input_json_delta`&&i.kind===`tool`?Iu(e,n,{...i,inputJson:i.inputJson+a.partial_json}):e}case`content_block_stop`:{let t=o.blocks[r.index];return t?Xl(e,t,n.receivedAt):e}case`message_delta`:case`message_stop`:case`ping`:return e;case`error`:{let a={kind:`error`,id:`err:${e.nextId}`,uuid:null,parentToolUseId:i,turnId:n.turnId,timestamp:Wu(t),code:r.error?.type??`stream_error`,message:r.error?.message??`stream error`,requestId:null};return Fu(Bu(e),a)}default:return e}}function Xl(e,t,n){let r=e.index.get(t);if(r===void 0)return e;let i=e.items[r];if(i.kind===`assistant`||i.kind===`thinking`)return i.streaming?Iu(e,r,{...i,streaming:!1}):e;if(i.kind===`tool`&&i.status===`streaming`){let t=i.input??Yu(i.inputJson);return Iu(e,r,{...i,input:t,status:`running`,startedAt:i.startedAt??n??null})}return e}function Zl(e,t,n){let r=t.message??{},i=qu(r.content),a=Uu(t),o=a??``,s=Hu(t),c=Wu(t),l=typeof t.error==`string`?t.error:null,u=t.aborted===!0,d=e;{let e=Ku(r.usage?.cache_read_input_tokens)+Ku(r.usage?.cache_creation_input_tokens),n=`usage:${r.id??``}`;if(e>0&&r.id&&!d.seen.has(n)&&(d={...zu(d,n),turnCachedTokens:d.turnCachedTokens+e}),a===null&&t.isSidechain!==!0){let t=Ku(r.usage?.input_tokens)+e+Ku(r.usage?.output_tokens);t>0&&t!==d.contextTokens&&(d={...d,contextTokens:t})}}let f=d.streams[o];for(let e of i){let t=f?$l(d,f,e):null;if(t){let n=d.index.get(t),i=d.items[n];d=Iu(d,n,eu(i,e,{uuid:s,timestamp:c,model:r.model??null,messageId:r.id??null,errorText:l,aborted:u})),f={...f,unclaimed:f.unclaimed.filter(e=>e!==t)},d={...d,streams:{...d.streams,[o]:f}};continue}let i=tu(d,e,{uuid:s,timestamp:c,parentToolUseId:a,turnId:n.turnId,model:r.model??null,messageId:r.id??null,errorText:l,aborted:u,receivedAt:n.receivedAt});i&&(d=i)}if(i.length===0&&l){let e={kind:`error`,id:`err:${d.nextId}`,uuid:s,parentToolUseId:a,turnId:n.turnId,timestamp:c,code:`assistant_error`,message:l,requestId:null};d=Fu(Bu(d),e)}return d}function Ql(e,t){let n=Uu(t)??``,r=e.streams[n];if(!r||r.unclaimed.length===0)return e;let i=t.message??{},a=new Set,o=e,s=r;for(let e of qu(i.content)){let t=$l(o,s,e);t&&(a.add(t),s={...s,unclaimed:s.unclaimed.filter(e=>e!==t)},o={...o,streams:{...o.streams,[n]:s}})}return Lu(e,a)}function $l(e,t,n){for(let r of t.unclaimed){let t=e.index.get(r);if(t===void 0)continue;let i=e.items[t];if(!i.uuid&&(n.type===`text`&&i.kind===`assistant`||(n.type===`thinking`||n.type===`redacted_thinking`)&&i.kind===`thinking`||n.type===`tool_use`&&i.kind===`tool`&&i.toolUseId===n.id))return r}return null}function eu(e,t,n){if(e.kind===`assistant`&&t.type===`text`){let r=t.text??e.text;return{...e,uuid:n.uuid,timestamp:n.timestamp??e.timestamp,text:r.length>=e.text.length?r:e.text,streaming:!1,model:n.model??e.model,messageId:n.messageId??e.messageId,error:n.errorText,aborted:n.aborted}}if(e.kind===`thinking`){let r=t.type===`thinking`?t.thinking??e.text:e.text;return{...e,uuid:n.uuid,timestamp:n.timestamp??e.timestamp,text:r||e.text,streaming:!1}}if(e.kind===`tool`&&t.type===`tool_use`){let r=t,i=r.input&&Object.keys(r.input).length>0?r.input:e.input??Yu(e.inputJson);return{...e,uuid:n.uuid,timestamp:n.timestamp??e.timestamp,name:r.name??e.name,input:i,inputJson:e.inputJson||(i?JSON.stringify(i):``),status:e.status===`streaming`?`running`:e.status,messageId:n.messageId??e.messageId}}return e}function tu(e,t,n){let r={uuid:n.uuid,parentToolUseId:n.parentToolUseId,turnId:n.turnId,timestamp:n.timestamp};if(t.type===`text`){let i={kind:`assistant`,id:`i${e.nextId}`,...r,text:t.text??``,streaming:!1,model:n.model,messageId:n.messageId,error:n.errorText,aborted:n.aborted};return Fu(Bu(e),i)}if(t.type===`thinking`||t.type===`redacted_thinking`){let n={kind:`thinking`,id:`i${e.nextId}`,...r,text:t.type===`thinking`?t.thinking??``:``,streaming:!1,redacted:t.type===`redacted_thinking`};return Fu(Bu(e),n)}if(t.type===`tool_use`){let i=t,a=e.index.get(i.id);if(a!==void 0){let r=e.items[a];return Iu(e,a,eu(r,t,n))}let o=i.input&&typeof i.input==`object`?i.input:null;return Fu(e,{kind:`tool`,id:i.id,...r,toolUseId:i.id,name:i.name,input:o,inputJson:o?JSON.stringify(o):``,status:`running`,result:null,startedAt:n.receivedAt??null,finishedAt:null,durationMs:null,elapsedSec:null,permissionRequestId:null,messageId:n.messageId})}return null}function nu(e){if(/^<local-command-caveat>/.test(e))return{subtype:`caveat`,text:``};let t=/^<local-command-(stdout|stderr)>([\s\S]*?)<\/local-command-\1>$/.exec(e);if(t){let e=t[2].replace(/\u001b\[[0-9;]*m/g,``).trim();return{subtype:t[1]===`stderr`?`local-command-error`:`local-command`,text:e}}let n=/<command-name>([^<]*)<\/command-name>/.exec(e);if(n&&/^<command-/.test(e)){let t=/<command-args>([^<]*)<\/command-args>/.exec(e)?.[1]?.trim()??``;return{subtype:`command`,text:`${n[1].trim()}${t?` `+t:``}`}}return null}function ru(e,t,n){let r=t.message??{},i=Uu(t),a=Hu(t),o=Wu(t),s=t.isSynthetic===!0,c=e,l=[],u=[],d=!1;if(typeof r.content==`string`)l.push(r.content);else for(let e of qu(r.content))if(e.type===`text`)l.push(e.text??``);else if(e.type===`tool_result`){d=!0;let r=e;c=su(c,r.tool_use_id,{content:r.content??``,isError:r.is_error===!0,structured:t.tool_use_result??null},n.receivedAt)}else(e.type===`image`||e.type===`document`)&&u.push(e);let f=ce(l.join(`
|
|
78
|
+
`)).trim();if(fe(f)&&ju(c,f))return c;let p=nu(f);if(p?.subtype===`caveat`)return c;if(p){let e={kind:`system`,id:`sys:${c.nextId}`,uuid:a,parentToolUseId:i,turnId:c.activeTurnId,timestamp:o,subtype:p.subtype,text:p.text};return Fu({...c,nextId:c.nextId+1},e)}if(f.length===0&&u.length===0||d&&f.length===0||s&&d)return c;if(i===null&&!s&&c.hasOptimisticUser){let e=c.items.findIndex(e=>e.kind===`user`&&e.optimistic&&!e.failed&&e.text===f);if(e<0&&(c={...c,hasOptimisticUser:!1}),e>=0){let t=c.items[e],r={...t,uuid:a??t.uuid,timestamp:o??t.timestamp,optimistic:!1,turnId:t.turnId??n.turnId};return t.waiting&&e<c.items.length-1?Fu(Lu(c,new Set([t.id])),{...r,waiting:!1}):Iu(c,e,r)}}let m=t.isMeta===!0||ae(f),h=t.isCompactSummary===!0||ne(f)||fe(f),g=Hs(f),_={kind:`user`,id:a?`u:${a}`:`i${c.nextId}`,uuid:a,parentToolUseId:i,turnId:n.turnId,timestamp:o,text:f,attachments:u,requestId:null,optimistic:!1,failed:!1,waiting:!s&&!m&&!h&&g===null&&i===null&&n.turnId!==null&&iu(c,n.turnId),deliveredAt:null,compactSummary:t.isCompactSummary===!0||ne(f),taskNotification:fe(f),engineNote:!ne(f)&&!fe(f)&&m,...g?{scheduledTask:g.title}:{}};return c.index.get(_.id)===void 0?Fu(a?c:Bu(c),_):c}function iu(e,t){if(e.status!==`running`)return!1;for(let n=e.items.length-1;n>=0;n--){let r=e.items[n];if((t===null||r.turnId===null||r.turnId===t)&&(r.kind===`assistant`||r.kind===`thinking`||r.kind===`tool`))return!0}return!1}function au(e){let t=-1;for(let n=e.items.length-1;n>=0;n--){let r=e.items[n];if(r.kind===`user`&&r.waiting){t=n;break}}if(t<0)return e;let n=e.items.map(e=>e.kind===`user`&&e.waiting?{...e,waiting:!1}:e);return{...e,items:n}}function ou(e,t,n,r){let i=r!==void 0&&e.items.some(e=>e.kind===`user`&&!e.failed&&e.requestId===r);for(let a=e.items.length-1;a>=0;a--){let o=e.items[a];if(o.kind!==`user`||o.failed||(i?o.requestId!==r:o.text!==t))continue;if(!o.optimistic&&!o.waiting&&o.deliveredAt!==null)return e;let s={...o,optimistic:!1,waiting:!1,deliveredAt:n??o.deliveredAt??new Date().toISOString()};return o.waiting&&a<e.items.length-1?Fu(Lu(e,new Set([o.id])),s):Iu(e,a,s)}return e}function su(e,t,n,r){let i=e.index.get(t);if(i===void 0)return Fu(e,{kind:`tool`,id:t,uuid:null,parentToolUseId:null,turnId:null,timestamp:null,toolUseId:t,name:`unknown`,input:null,inputJson:``,status:n.isError?`error`:`done`,result:n,startedAt:null,finishedAt:r??null,durationMs:null,elapsedSec:null,permissionRequestId:null,messageId:null});let a=e.items[i];if(a.result&&a.status!==`running`&&a.status!==`streaming`&&a.status!==`pending`)return e;let o=r??null,s=a.startedAt!==null&&o!==null?Math.max(0,o-a.startedAt):a.durationMs;return Iu(e,i,{...a,input:a.input??Yu(a.inputJson),result:cu(a.name,n)?{...n,isError:!1}:n,status:cu(a.name,n)?`skipped`:n.isError?`error`:`done`,finishedAt:o,durationMs:s})}function cu(e,t){return!t.isError||e!==`AskUserQuestion`?!1:typeof t.content==`string`&&t.content.includes(`the user skipped the question`)}function lu(e,t,n){let r=sl(t.usage,t.modelUsage),i=Array.isArray(t.permission_denials)?t.permission_denials:[],a=n.turnId;return du(e,{kind:`result`,id:a?`result:${a}`:Hu(t)?`result:${Hu(t)}`:`result:${e.nextId}`,uuid:Hu(t),parentToolUseId:null,turnId:a,timestamp:Wu(t),subtype:typeof t.subtype==`string`?t.subtype:`success`,isError:t.is_error===!0||typeof t.result==`string`&&/^API Error\b/i.test(t.result.trim()),costUsd:Ku(t.total_cost_usd),durationMs:Ku(t.duration_ms),durationApiMs:typeof t.duration_api_ms==`number`?t.duration_api_ms:null,numTurns:Ku(t.num_turns),inputTokens:r.input,cachedInputTokens:r.cached||e.turnCachedTokens,outputTokens:r.output,text:typeof t.result==`string`?t.result:null,errors:Array.isArray(t.errors)?t.errors.map(String):[],stopReason:typeof t.stop_reason==`string`?t.stop_reason:null,structuredOutput:t.structured_output??null},new Set(i.map(e=>e.tool_use_id??``)),n.receivedAt)}function uu(e,t,n){e=au(e);let r=`result:${n}`,i=e.index.get(r),a={kind:`result`,id:r,uuid:i===void 0?null:e.items[i].uuid,parentToolUseId:null,turnId:n,timestamp:i===void 0?null:e.items[i].timestamp,subtype:t.subtype,isError:t.isError,costUsd:t.totalCostUsd,durationMs:t.durationMs,durationApiMs:i===void 0?null:e.items[i].durationApiMs,numTurns:t.numTurns,inputTokens:t.inputTokens,cachedInputTokens:t.cachedInputTokens??(i===void 0?void 0:e.items[i].cachedInputTokens)??e.turnCachedTokens,outputTokens:t.outputTokens,text:t.result,errors:t.errors??[],stopReason:t.stopReason,structuredOutput:t.structuredOutput??null};return du(e,a,new Set,void 0)}function du(e,t,n,r){let i=e,a=i.index.get(t.id),o=a!==void 0;i=a===void 0?Fu(Bu(i),t):Iu(i,a,t);let s=i.items.map(e=>{if((e.kind===`assistant`||e.kind===`thinking`)&&e.streaming)return{...e,streaming:!1};if(e.kind===`tool`&&e.result===null&&(e.status===`streaming`||e.status===`running`||e.status===`pending`)){let t=n.has(e.toolUseId)?`denied`:`cancelled`;return{...e,status:t,input:e.input??Yu(e.inputJson),finishedAt:r??null}}return e}),c=o?i.totals:{costUsd:i.totals.costUsd+t.costUsd,inputTokens:i.totals.inputTokens+t.inputTokens,cachedInputTokens:i.totals.cachedInputTokens+(t.cachedInputTokens??0),outputTokens:i.totals.outputTokens+t.outputTokens,turns:i.totals.turns+1};return{...i,items:s,totals:c,status:t.isError?`error`:`idle`,activeTurnId:null,statusText:null,streams:{},pendingPermissions:[]}}function fu(e,t){let n=Gu(t.tool_use_id),r=typeof t.elapsed_time_seconds==`number`?t.elapsed_time_seconds:null;return!n||r===null?e:Ru(e,n,e=>e.result?e:{...e,elapsedSec:r})}function pu(e,t,n){let r=Array.isArray(t.output)?t.output.map(String).join(`
|
|
79
|
+
`):``,i=typeof t.error==`string`?t.error:null,a=i?`Authentication error: ${i}`:t.isAuthenticating?`Authenticating…\n${r}`.trim():r;if(!a)return e;let o={kind:`system`,id:`sys:${e.nextId}`,uuid:Hu(t),parentToolUseId:null,turnId:n.turnId,timestamp:Wu(t),subtype:`auth_status`,text:a};return Fu(Bu(e),o)}function mu(e,t,n,r=!1){let i=`perm:${t.requestId}`;if(e.index.get(i)!==void 0)return e;let a=e.index.get(t.toolUseId),o=a===void 0?void 0:e.items[a],s=Fu(e,{kind:`permission`,id:i,uuid:null,parentToolUseId:o?.kind===`tool`?o.parentToolUseId:null,turnId:n,timestamp:t.createdAt,request:t,status:`pending`,resolvedBy:null});return s=Ru(s,t.toolUseId,e=>({...e,permissionRequestId:t.requestId,status:e.result?e.status:`pending`})),r?{...s,activeTurnId:s.activeTurnId??n}:{...s,pendingPermissions:[...s.pendingPermissions.filter(e=>e.requestId!==t.requestId),t],status:`waiting_permission`,activeTurnId:s.activeTurnId??n}}function hu(e,t,n,r){let i=`perm:${t}`,a=e.index.get(i),o=e,s=null;if(a!==void 0){let e=o.items[a];s=e.request.toolUseId,e.status===`pending`&&(o=Iu(o,a,{...e,status:n===`allow`?`allowed`:`denied`,resolvedBy:r}))}let c=o.pendingPermissions.filter(e=>e.requestId!==t);s&&(o=Ru(o,s,e=>e.result?e:{...e,status:n===`allow`?`running`:`denied`}));let l=c.length>0?`waiting_permission`:o.activeTurnId||o.status===`waiting_permission`?`running`:o.status;return{...o,pendingPermissions:c,status:l}}function gu(e,t,n){return Nu(e,e=>_u(e,t,n))}function _u(e,t,n){let r=e;for(let e of t){let t=e.parentToolUseId;if(e.subpath&&(r=Bl(r,e.subpath,e.role,e.content,e.timestamp)),e.subpath&&(t===null||r.index.get(t)===void 0)){let n=wu(r,e.subpath);r=n.state,t=n.parentToolUseId}let n={type:e.role===`assistant`?`assistant`:e.role===`user`?`user`:`system`,uuid:e.uuid,parent_tool_use_id:t,timestamp:e.timestamp??void 0};if(e.role===`system`){let t=typeof e.content==`string`?e.content:Ju(qu(e.content));if(!t||r.seen.has(`uuid:${e.uuid}`))continue;let n={kind:`system`,id:`sys:${e.uuid}`,uuid:e.uuid,parentToolUseId:e.parentToolUseId,turnId:null,timestamp:e.timestamp,subtype:e.subtype===`rewind_boundary`?`rewind`:`history`,text:t};r.index.get(n.id)===void 0&&(r=zu(Fu(r,n),`uuid:${e.uuid}`));continue}let i=e.role===`assistant`?{id:null,role:`assistant`,model:e.model,content:qu(e.content)}:{role:`user`,content:typeof e.content==`string`?e.content:qu(e.content)};r=ql(r,{...n,message:i},{turnId:null,receivedAt:void 0})}return r={...r,hydrated:!0},r=n?Tu(r,n):Eu(r),Gl(r)}function vu(e,t){return Nu(e,e=>yu(e,t))}function yu(e,t){let n=e;for(let e of t){let t=`seq:${e.seq}`;if(n.seen.has(t))continue;let r=e.entry,i=e.type||String(r.type??``);if(i===`attachment`){let t=ue(r);if(t!==null){let i={type:`user`,uuid:e.uuid??(typeof r.uuid==`string`?r.uuid:void 0),parent_tool_use_id:null,timestamp:e.timestamp??void 0,message:{role:`user`,content:t.content}};n=ql(n,i,{turnId:null,receivedAt:void 0}),typeof t.content!=`string`&&(n=ou(n,t.text,t.timestamp))}}if(i===`queue-operation`){let e=le(r);e&&(n=ou(n,e.text,e.deliveredAt))}if(i===`user`||i===`assistant`||i===`system`||i===`result`){let t=r.parent_tool_use_id??null;if(e.subpath){let t=r.message;n=Bl(n,e.subpath,i,t?.content,e.timestamp,t?.stop_reason)}if(e.subpath&&(t===null||n.index.get(t)===void 0)){let r=wu(n,e.subpath);n=r.state,t=r.parentToolUseId}let a={...r,type:i,uuid:e.uuid??(typeof r.uuid==`string`?r.uuid:void 0),parent_tool_use_id:t,timestamp:e.timestamp??void 0};n=ql(n,a,{turnId:null,receivedAt:void 0})}n=zu(n,t),(n.lastSeq===null||e.seq>n.lastSeq)&&(n={...n,lastSeq:e.seq})}return Gl(Eu({...n,hydrated:!0}))}var bu=/^subagents\/(?:workflows\/([^/]+)\/)?agent-(.+?)(?:\.jsonl)?$/;function xu(e){return`subagent:${e}`}function Su(e){return`subagent:workflows/${e}`}function Cu(e,t,n,r){return{kind:`tool`,id:e,uuid:null,parentToolUseId:r,turnId:null,timestamp:null,toolUseId:e,name:t,input:{description:n},inputJson:``,status:`done`,result:null,startedAt:null,finishedAt:null,durationMs:null,elapsedSec:null,permissionRequestId:null,messageId:null}}function wu(e,t){if(!t)return{state:e,parentToolUseId:null};let n=e.subpathParents[t];if(n!==void 0&&e.index.get(n)!==void 0)return{state:e,parentToolUseId:n};let r=bu.exec(t);if(!r)return{state:e,parentToolUseId:null};let i=r[1]??null,a=r[2],o=(e,n)=>({state:Mu?(e.subpathParents[t]=n,e):{...e,subpathParents:{...e.subpathParents,[t]:n}},parentToolUseId:n}),s=e.index.get(a);if(s!==void 0){let t=e.items[s];if(t?.kind===`tool`)return o(e,t.toolUseId)}if(i){for(let t of e.items)if(t.kind===`tool`&&t.name===`Workflow`&&t.result!==null&&Xu(t.result).includes(i))return o(e,t.toolUseId)}let c=xu(t);if(e.index.get(c)!==void 0)return o(e,c);let l=a.slice(0,8),u=e,d=null;i&&(d=Su(i),u.index.get(d)===void 0&&(u=Fu(u,Cu(d,`Workflow`,`Workflow run ${i} (transcript)`,null))));let f=Cu(c,`Agent`,i?`Agent ${l}`:`Agent ${l} (transcript)`,d);return o(Fu(u,f),c)}function Tu(e,t){let n=e.pendingPermissions.length>0?`waiting_permission`:t.status,r=t.engineSince?Date.parse(t.engineSince):NaN,i=e.hydrated&&e.session!==null&&!Ul(e.status)&&Ul(n),a=Gl(Eu({...e,session:t,sessionId:t.id,status:n,engineSince:Number.isFinite(r)?r:e.engineSince,...i?{lastFrameAt:null}:{}}));if(!i)return a;let o=Date.parse(t.updatedAt);return Number.isFinite(o)&&o>(a.lastFrameAt??0)?{...a,lastFrameAt:o}:a}function Eu(e){if(e.activeTurnId!==null||e.status!==`idle`&&e.status!==`error`)return e;let t=!1,n=e.items.map(e=>(e.kind===`assistant`||e.kind===`thinking`)&&e.streaming?(t=!0,{...e,streaming:!1}):e.kind===`tool`&&e.result===null&&(e.status===`streaming`||e.status===`running`||e.status===`pending`)?(t=!0,{...e,status:`cancelled`,input:e.input??Yu(e.inputJson)}):e);return t?{...e,items:n}:e}function Du(e,t){let n=(t.attachments??[]).filter(e=>typeof e==`object`&&!!e&&typeof e.type==`string`),r={kind:`user`,id:`req:${t.requestId}`,uuid:null,parentToolUseId:null,turnId:null,timestamp:t.at??null,text:t.text,attachments:n,requestId:t.requestId,optimistic:!0,failed:!1,waiting:e.status===`running`,deliveredAt:null,compactSummary:!1,taskNotification:!1,engineNote:!1};if(e.index.get(r.id)!==void 0)return e;let i=new Set(e.items.filter(e=>e.kind===`user`&&e.failed&&e.text===t.text).map(e=>e.id)),a=!Ul(e.status),o=t.at===void 0?NaN:Date.parse(t.at);return{...Fu(Lu(e,i),r),status:`running`,statusText:null,hasOptimisticUser:!0,lastLocalPromptId:r.id,...a?{lastFrameAt:Number.isFinite(o)?o:null}:{}}}function Ou(e,t){let n=e.index.get(`req:${t}`),r=e;if(n!==void 0){let t=e.items[n];t?.kind===`user`&&!t.failed&&(r=Iu(e,n,{...t,failed:!0}))}return r.activeTurnId!==null||r.status!==`running`&&r.status!==`waiting_permission`?r:{...r,status:`error`,statusText:null}}function ku(e,t){let n=new Map,r=new Map;for(let t of e){let e={item:t,children:[]};n.set(t.id,e),t.kind===`tool`&&r.set(t.toolUseId,e)}let i=[];for(let t of e){let e=n.get(t.id),a=t.parentToolUseId?r.get(t.parentToolUseId):void 0;a&&a!==e?a.children.push(e):i.push(e)}if(!t||t.length===0)return i;let a=new Map,o=e=>{for(let t of e)a.set(t.item.id,t),t.children.length>0&&o(t.children)};o(t);let s=new Map;for(let t=e.length-1;t>=0;t--){let r=n.get(e[t].id);for(let e=0;e<r.children.length;e++){let t=s.get(r.children[e]);t&&(r.children[e]=t)}let i=a.get(r.item.id);s.set(r,i&&Au(i,r)?i:r)}let c=i.map(e=>s.get(e)??e);return c.length===t.length&&c.every((e,n)=>e===t[n])?t:c}function Au(e,t){if(e.item!==t.item||e.children.length!==t.children.length)return!1;for(let n=0;n<t.children.length;n++)if(e.children[n]!==t.children[n])return!1;return!0}function ju(e,t){let n=he(t);if(!n.taskId)return!1;for(let t=e.items.length-1;t>=0;t--){let r=e.items[t];if(r.kind!==`user`||!r.taskNotification)continue;let i=he(r.text);if(i.taskId===n.taskId&&(i.toolUseId??null)===(n.toolUseId??null))return!0}return!1}var Mu=!1;function Nu(e,t){if(Mu)return t(e);Mu=!0;try{return t({...e,items:e.items.slice(),index:new Map(e.index),seen:new Set(e.seen),subpathParents:{...e.subpathParents}})}finally{Mu=!1}}var Pu=new Set([`Task`,`Agent`,`Workflow`]);function Fu(e,t){let n=e.hasSubagentItems||t.kind===`tool`&&Pu.has(t.name);if(Mu)return e.items.push(t),e.index.set(t.id,e.items.length-1),e.hasSubagentItems=n,e;let r=[...e.items,t];return{...e,items:r,index:new Map(e.index).set(t.id,r.length-1),...n===e.hasSubagentItems?{}:{hasSubagentItems:n}}}function Iu(e,t,n){if(Mu)return e.items[t]=n,e;let r=e.items.slice();return r[t]=n,{...e,items:r}}function Lu(e,t){if(t.size===0)return e;let n=e.items.filter(e=>!t.has(e.id)),r=new Map;n.forEach((e,t)=>{r.set(e.id,t)});let i={};for(let[n,r]of Object.entries(e.streams)){let e={};for(let[n,i]of Object.entries(r.blocks))t.has(i)||(e[Number(n)]=i);i[n]={...r,blocks:e,unclaimed:r.unclaimed.filter(e=>!t.has(e))}}return{...e,items:n,index:r,streams:i}}function Ru(e,t,n){let r=e.index.get(t);if(r===void 0)return e;let i=e.items[r];if(!i||i.kind!==`tool`)return e;let a=n(i);return a===i?e:Iu(e,r,a)}function zu(e,t){return e.seen.has(t)?e:Mu?(e.seen.add(t),e):{...e,seen:new Set(e.seen).add(t)}}function Bu(e){return{...e,nextId:e.nextId+1}}function Vu(e,t,n){let r=Hu(n);return r?`${t}:${r}`:`${t}:${e.nextId}`}function Hu(e){return typeof e.uuid==`string`&&e.uuid?e.uuid:null}function Uu(e){return typeof e.parent_tool_use_id==`string`&&e.parent_tool_use_id?e.parent_tool_use_id:null}function Wu(e){return typeof e.timestamp==`string`?e.timestamp:null}function Gu(e){return typeof e==`string`?e:``}function Ku(e){return typeof e==`number`&&Number.isFinite(e)?e:0}function qu(e){return typeof e==`string`?e?[{type:`text`,text:e}]:[]:Array.isArray(e)?e.filter(e=>typeof e==`object`&&!!e&&typeof e.type==`string`):[]}function Ju(e){return e.map(e=>e.type===`text`?e.text??``:``).filter(Boolean).join(`
|
|
80
|
+
`)}function Yu(e){let t=e.trim();if(!t)return null;try{let e=JSON.parse(t);return typeof e==`object`&&e&&!Array.isArray(e)?e:null}catch{return null}}function Xu(e){return e?typeof e.content==`string`?e.content:e.content.map(e=>e.type===`text`?e.text??``:e.type===`image`?`[image]`:`[${e.type}]`).join(`
|
|
81
|
+
`):``}function Zu(e){return!Number.isFinite(e)||e===0?`$0.00`:e<.01?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`}function Qu(e){if(e==null||!Number.isFinite(e))return``;if(e<1e3)return`${Math.floor(e)}ms`;if(e<1e4)return`${(Math.floor(e/100)/10).toFixed(1)}s`;let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/3600),r=Math.floor(t%3600/60);return n>0?`${n}h ${r}m`:`${r}m ${t%60}s`}function $u(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e4?`${Math.round(e/1e3)}k`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function ed(e,t=Date.now()){if(!e)return``;let n=Date.parse(e);if(!Number.isFinite(n))return``;let r=Math.max(0,t-n),i=Math.floor(r/1e3);if(i<45)return`just now`;let a=Math.floor(i/60);if(a<60)return`${a}m ago`;let o=Math.floor(a/60);if(o<24)return`${o}h ago`;let s=Math.floor(o/24);return s<30?`${s}d ago`:new Date(n).toLocaleDateString()}function td(e){if(!e)return;let t=new Date(e);if(!Number.isNaN(t.getTime()))return t.toLocaleString()}function nd(e){if(!e)return``;let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}):``}function rd(e){let t=e.replace(/[\\/]+$/,``),n=t.split(/[\\/]/);return n[n.length-1]||t}function id(e,t){return e.length<=t?e:`${e.slice(0,Math.max(0,t-1))}…`}function ad(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function H(...e){return e.filter(Boolean).join(` `)}function od(e,t=6){let n=e.trim().split(/\s+/).filter(Boolean);return n.length<=t?n.join(` `):`${n.slice(0,t).join(` `)}…`}function sd(e){return e.title?.trim()||e.firstPrompt?.trim().replace(/\s+/g,` `)||`Session ${e.id.slice(0,8)}`}function cd(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function ld(e,t=Date.now()){return{id:e,title:null,providerId:null,variantId:null,projectId:null,model:null,permissionMode:null,projectDir:null,createdAt:t}}function ud(e,t){if(!t)return e;let n={...e};return!e.model&&!e.providerId&&t.model&&(n.model=t.model,n.providerId=t.providerId??null,n.variantId=null),!e.effort&&t.effort&&(n.effort=t.effort),!e.projectDir&&t.cwd&&(n.projectDir=t.cwd),n}var dd=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function fd(e){return dd.test(e)}function pd(){let e=new Uint8Array(16),t=globalThis.crypto;if(t&&typeof t.getRandomValues==`function`)return t.getRandomValues(e),e;for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return e}function md(){let e=globalThis.crypto;if(e&&typeof e.randomUUID==`function`){let t=e.randomUUID();if(fd(t))return t}let t=pd();t[6]=(t[6]??0)&15|64,t[8]=(t[8]??0)&63|128;let n=Array.from(t,e=>e.toString(16).padStart(2,`0`)).join(``);return`${n.slice(0,8)}-${n.slice(8,12)}-${n.slice(12,16)}-${n.slice(16,20)}-${n.slice(20)}`}function hd(e){return e.title?.trim()||`New chat`}function gd(e){let t=e.trim().replace(/\s+/g,` `).slice(0,500);return t.length>0?t:null}function _d(e,t){return typeof t==`string`&&e[t]!==void 0}var vd=`oonacode.uiPrefs`;function yd(e){if(!e)return null;try{let t=e.getItem(vd);return t?hc(JSON.parse(t)):null}catch{return null}}function bd(e,t){if(e)try{e.setItem(vd,JSON.stringify(t))}catch{}}function xd(e,t){let n=t.notifications?{...e.notifications,...t.notifications}:e.notifications;return hc({...e,...t,notifications:n})}function Sd(e){let t=e;return!t||typeof t!=`object`?!1:t.status===400||t.status===422||t.code===`bad_request`}function Cd(e,t,n){return{...e??{},[t]:n}}function wd(e,t){let n=jc(e,t);return{count:n.length,label:`Tools · ${n.length}`,title:n.length>0?`OonaCode tools on in this chat: ${n.map(e=>e.name).join(`, `)}`:`No OonaCode tools are on in this chat`}}function Td(e){return e&&Object.keys(e).length>0?{toolPacks:{...e}}:{}}var Ed=`Switching a tool restarts this chat's agent; its next message re-reads the conversation once.`;function Dd(e=[],t=null){let n=[];for(let t of e)t&&!n.includes(t)&&n.push(t);let r=n.slice(-20);return{ids:r,activeId:t&&r.includes(t)?t:r[r.length-1]??null}}function Od(e,t){if(!t)return e;if(e.ids.includes(t))return e.activeId===t?e:{ids:e.ids,activeId:t};let n=[...e.ids,t];if(n.length>20){let r=n.find(n=>n!==t&&n!==e.activeId)??n[0];n=n.filter(e=>e!==r)}return{ids:n,activeId:t}}function kd(e,t){return!e.ids.includes(t)||e.activeId===t?e:{ids:e.ids,activeId:t}}function Ad(e,t){let n=e.ids.indexOf(t);if(n===-1)return e;let r=e.ids.filter(e=>e!==t);return e.activeId===t?{ids:r,activeId:r[n]??r[n-1]??null}:{ids:r,activeId:e.activeId}}function jd(e,t,n){if(t===n||t<0||t>=e.ids.length)return e;let r=Math.max(0,Math.min(e.ids.length-1,n));if(r===t)return e;let i=[...e.ids],[a]=i.splice(t,1);return a===void 0?e:(i.splice(r,0,a),{ids:i,activeId:e.activeId})}function Md(e,t){let n=t instanceof Set?t:new Set(t),r=e.ids.filter(e=>n.has(e));return r.length===e.ids.length?e:{ids:r,activeId:e.activeId&&r.includes(e.activeId)?e.activeId:r[r.length-1]??null}}function Nd(e,t){if(e.ids.length===0)return e;let n=e.activeId?e.ids.indexOf(e.activeId):-1,r=n===-1?0:n,i=e.ids.length,a=((r+t)%i+i)%i,o=e.ids[a];return o?kd(e,o):e}function Pd(e,t={},n={}){let r=[],i=[],a={},o={};for(let s of e.ids){let e=n[s];if(e){i.push(s),e.title&&(a[s]=e.title);continue}r.push(s);let c=t[s];c&&(o[s]=c)}return{openTabs:r,draftTabs:i,draftTitles:a,activeTab:e.activeId,remoteTabs:o}}function Fd(e){let t=e?.remoteTabs;if(!t)return{};let n={};for(let[e,r]of Object.entries(t))typeof r==`string`&&r.length>0&&(n[e]=r);return n}function Id(e){let t=e?.draftTabs??[],n=e?.draftTitles??{},r=[];for(let e of t){if(typeof e!=`string`||e.length===0)continue;let t=n[e];r.push({id:e,title:typeof t==`string`&&t.length>0?t:null})}return r}function Ld(e){return Dd([...e.openTabs??[],...e.draftTabs??[]],e.activeTab??null)}function Rd(e,t){if(e.length!==t.length)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!0;return!1}function zd(e,t){for(let n of new Set([...Object.keys(e),...Object.keys(t)]))if(e[n]!==t[n])return!0;return!1}function Bd(e,t,n,r={}){let i=Pd(e,n??{},r);return!!(Rd(t.openTabs??[],i.openTabs)||Rd(t.draftTabs??[],i.draftTabs)||zd(t.draftTitles??{},i.draftTitles)||(t.activeTab??null)!==e.activeId||n&&zd(t.remoteTabs??{},i.remoteTabs))}function Vd(e){return!e||e.text.length===0&&e.attachments.length===0&&(e.replies?.length??0)===0}function Hd(e,t){if(!e||e.text!==t.text||e.attachments.length!==t.attachments.length)return!1;let n=e.replies??[],r=t.replies??[];return n.length!==r.length||!n.every((e,t)=>e===r[t])?!1:e.attachments.every((e,n)=>e===t.attachments[n])}function Ud(e,t,n){if(Vd(n)){if(e[t]===void 0)return e;let{[t]:n,...r}=e;return r}return Hd(e[t],n)?e:{...e,[t]:n}}function Wd(e,t){let n=Object.keys(e);if(n.length===0)return e;let r=new Set(t);if(n.every(e=>r.has(e)))return e;let i={};for(let t of n)r.has(t)&&(i[t]=e[t]);return i}function Gd(e,t){return e?`From \`${e}\`:`:t===`assistant`?`From your earlier reply:`:t===`user`?`From my earlier message:`:t&&typeof t==`object`&&t.tool?`From the output of ${t.tool}:`:null}var Kd=/^From (?:`[^`]+`|your earlier reply|my earlier message|the output of .+):$/,qd=`Replying to an earlier part of this conversation — the quoted lines are from the chat history above, not new input:`;function Jd(e,t=null,n=null){let r=e.replace(/\r\n?/g,`
|
|
82
|
+
`).replace(/\n{3,}/g,`
|
|
83
|
+
|
|
84
|
+
`).replace(/^(?:[ \t]*\n)+/,``).replace(/\s+$/,``);r.length>1500&&(r=`${r.slice(0,1499).trimEnd()}…`);let i=r.split(`
|
|
85
|
+
`).map(e=>e===``?`>`:`> ${e}`),a=Gd(t,n);return a&&i.unshift(`> ${a}`,`>`),i.join(`
|
|
86
|
+
`)}function Yd(e){let t=e.split(`
|
|
87
|
+
`),n=+(t[0]===`Replying to an earlier part of this conversation — the quoted lines are from the chat history above, not new input:`),r=[];for(;;){let e=n;for(;n<t.length&&/^>( |$)/.test(t[n]);)n++;if(n===e)break;let i=t.slice(e,n).map(e=>e.replace(/^> ?/,``)).join(`
|
|
88
|
+
`).trim();i!==``&&r.push(i);let a=n;for(;a<t.length&&t[a].trim()===``;)a++;if(a<t.length&&/^>( |$)/.test(t[a]))n=a;else break}return r.length===0?null:{quotes:r,reply:t.slice(n).join(`
|
|
89
|
+
`).trim()}}function Xd(e){let t=e.split(`
|
|
90
|
+
`);return(Kd.test(t[0].trim())?t.slice(1):t).join(`
|
|
91
|
+
`).trim()}function Zd(e){let t=e.trim();if(t.length<=300)return t;let n=t.slice(0,299),r=n.lastIndexOf(` `);return`${(r>150?n.slice(0,r):n).trimEnd()}…`}function Qd(e){if(!e)return null;for(let t of[`file_path`,`notebook_path`,`path`]){let n=e[t];if(typeof n==`string`&&n.trim()!==``)return n}return null}function $d(e,t=8){let n=e.replace(/\s+/g,` `).trim().split(` `).filter(e=>e!==``),r=n.slice(0,t).join(` `);return n.length>t?`${r}…`:r}function ef(e,t){let n=t.trim();if(e.length===0)return n;let r=e.join(`
|
|
92
|
+
|
|
93
|
+
`);return n?`${qd}\n${r}\n\n${n}`:`${qd}\n${r}`}function tf(e){return e.replace(/\s+/g,` `).trim().toLowerCase()}function nf(e,t){let n=tf(Xd(t).replace(/…$/,``)).slice(0,80);if(n.length<3)return null;for(let t=e.length-1;t>=0;t--){let r=e[t];if(tf(r.text).includes(n))return r.id}return null}function rf(e=500){let t=af(e);return{size:t,rendered:t}}function af(e){return Number.isFinite(e)?Math.max(1,Math.round(e)):500}function of(e,t){let n=af(t);return e.size===n&&e.rendered===n?e:{size:n,rendered:n}}function sf(e,t,n=100){let r=Math.max(0,Math.floor(t)),i=Math.max(1,Math.floor(n));if(e.rendered>=r)return e;let a=Math.min(r,e.rendered+i);return a===e.rendered?e:{size:e.size,rendered:a}}function cf(e,t,n){let r=Math.min(Math.max(0,Math.floor(n)),Math.max(0,Math.floor(t)));return r<=e.rendered?e:{size:e.size,rendered:r}}function lf(e){return e.rendered===e.size?e:{size:e.size,rendered:e.size}}function uf(e,t){let n=e.length,r=Math.min(n,Math.max(t.size,t.rendered)),i=Math.max(0,n-r);return{start:i,items:i===0?e.slice():e.slice(i),hiddenAbove:i,hasMore:i>0,total:n}}function df(e,t=48){return e.scrollHeight-e.scrollTop-e.clientHeight<=t}function ff(e,t=24){return e.scrollTop<=t}var pf=2e3;function mf(e,t=pf,n=Date.now){let r=-1/0,i=null,a=()=>{i=null,r=n(),e()};return{request(){if(i!==null)return;let e=r+t-n();e<=0?a():i=setTimeout(a,e)},dispose(){i!==null&&(clearTimeout(i),i=null)}}}var hf=3e3;function gf(e){let{balance:t}=e.credits;if(typeof e.credits.plan!=`number`&&typeof e.credits.topup!=`number`)return{balance:t,plan:null,topup:null,hasSplit:!1};let n=e.credits.plan??Math.max(0,t-(e.credits.topup??0));return{balance:t,plan:n,topup:e.credits.topup??Math.max(0,t-n),hasSplit:!0}}function _f(e){return e.credits.monthlyGrant>0?e.credits.monthlyGrant:hf}function vf(e){if(!e)return`ok`;let{balance:t}=e.credits;return t<=0?`empty`:t<=_f(e)*.1?`low`:`ok`}function yf(e){if(!e)return null;let t=vf(e);if(t===`ok`)return null;let n=bf(e.credits.balance);return t===`empty`?{level:t,text:`No credits left — a priced model will be refused. Free models still run, on every plan.`}:{level:t,text:`Running low: ${n} credits left. Free models still run, on every plan.`}}function bf(e){return e.toLocaleString(`en-US`,{maximumFractionDigits:0})}function xf(e,t){return!t||t.providerId!==`oonacode`?!1:(t.poolCredits??0)!==(e?.providerId===`oonacode`?e.poolCredits??0:0)}var Sf=[`desktop`,`host`,`cli`,`engine`],Cf={desktop:`Desktop app`,host:`Host service`,cli:`oona CLI`,engine:`Agent engine`},wf={available:!1,components:[],version:``,channel:``,publishedAt:``,notes:``},Tf=/(\d+(?:\.\d+)*(?:[-+][0-9A-Za-z.-]+)?)\s*$/;function Ef(e){return typeof e.version==`string`&&e.version.trim()?e.version.trim():Tf.exec(e.name??``)?.[1]??null}function Df(e){let[t=``,n=``]=(e.trim().replace(/^v/i,``).split(`+`)[0]??``).split(`-`,2);return{nums:t.split(`.`).map(e=>{let t=Number.parseInt(e,10);return Number.isFinite(t)?t:0}).filter((e,t)=>t<4),pre:n?n.split(`.`):[]}}function Of(e,t){let n=Df(e),r=Df(t),i=Math.max(n.nums.length,r.nums.length);for(let e=0;e<i;e++){let t=n.nums[e]??0,i=r.nums[e]??0;if(t!==i)return t<i?-1:1}if(n.pre.length===0&&r.pre.length===0)return 0;if(n.pre.length===0)return 1;if(r.pre.length===0)return-1;let a=Math.max(n.pre.length,r.pre.length);for(let e=0;e<a;e++){let t=n.pre[e],i=r.pre[e];if(t===i)continue;if(t===void 0)return-1;if(i===void 0)return 1;let a=Number.parseInt(t,10),o=Number.parseInt(i,10);return Number.isFinite(a)&&Number.isFinite(o)&&/^\d+$/.test(t)&&/^\d+$/.test(i)?a<o?-1:1:t<i?-1:1}return 0}function kf(e,t){return!e||!t?!1:Of(e,t)===1}function Af(e){if(typeof e!=`object`||!e)return null;let t=e,n=typeof t.version==`string`?t.version:``;if(!n)return null;let r=Array.isArray(t.assets)?t.assets.filter(e=>typeof e==`object`&&!!e):[];return{version:n,channel:typeof t.channel==`string`?t.channel:`stable`,publishedAt:typeof t.publishedAt==`string`?t.publishedAt:``,notes:typeof t.notes==`string`?t.notes:``,assets:r}}function jf(e,t){if(!e||!e.version)return wf;let n=new Map;for(let t of e.assets??[]){let e=typeof t?.kind==`string`?t.kind:``;!e||n.has(e)||n.set(e,t)}let r=[];for(let i of Sf){let a=t[i];if(typeof a!=`string`||!a.trim())continue;let o=n.get(i),s=(o?Ef(o):null)??(i===`desktop`?e.version:null);!s||!kf(s,a)||r.push({component:i,label:Cf[i],current:a.trim(),latest:s,url:o?.url?o.url:null,notes:typeof o?.notes==`string`?o.notes:``})}return{available:r.length>0,components:r,version:e.version,channel:e.channel,publishedAt:e.publishedAt,notes:e.notes}}function Mf(e,t=null){return!e||!e.trim()?null:`${e.trim().replace(/\/+$/,``)}${$s(t)}`}function Nf(e){return e.bridge?.appChannel??e.info?.cliChannel??`stable`}function Pf(e,t){return ec(e,t)}var Ff={phase:`idle`,version:``,percent:0,transferred:0,total:0,bytesPerSecond:0,error:``,notice:``};function If(e){return e===`ready`||e===`installing`}function Lf(e,t){let n=t.version||e.version;switch(t.phase){case`checking`:return If(e.phase)?e:{...Ff,phase:`checking`,version:n};case`available`:return If(e.phase)?e:{...Ff,phase:`available`,version:n};case`not-available`:return If(e.phase)?e:{...Ff,version:n};case`downloading`:return{...Ff,phase:`downloading`,version:n,percent:Math.max(0,Math.min(100,t.percent)),transferred:t.transferred,total:t.total,bytesPerSecond:t.bytesPerSecond};case`downloaded`:return{...Ff,phase:`ready`,version:n,percent:100};case`installing`:return{...Ff,phase:`installing`,version:n,percent:100,notice:t.message||(e.phase===`installing`?e.notice:``)};case`error`:return{...Ff,phase:`error`,version:n,error:t.message}}}function Rf(e){switch(e.install.phase){case`ready`:case`installing`:return`ready`;case`downloading`:return`downloading`;case`available`:return`available`;default:return e.manifestAvailable?`available`:`idle`}}var zf=[`B`,`KB`,`MB`,`GB`];function Bf(e){if(!Number.isFinite(e)||e<=0)return`0 B`;let t=e,n=0;for(;t>=1024&&n<zf.length-1;)t/=1024,n+=1;return`${t>=10||n===0?Math.round(t):t.toFixed(1)} ${zf[n]}`}function Vf(e){return!Number.isFinite(e)||e<=0?``:`${Bf(e)}/s`}var Hf=[`host`,`cli`,`engine`];function Uf(e,t,n={}){let r=e.length>0,i=n.shellEngaged===!0||e.includes(`desktop`)||!r&&!n.checked,a=r&&e.some(e=>Hf.includes(e)),o=i&&t.desktop,s=a&&t.terminal,c=e.filter(e=>e===`desktop`?i&&!o:a&&!s),l=!i&&!a;return{terminal:s,desktop:o,manual:c,upToDate:l,label:l?`Up to date`:s&&o?`Update everything`:o?`Update and relaunch`:s?`Update now`:`How to update`}}function Wf(e,t){return e===`desktop`?t.desktop?`Downloads here, then OonaCode restarts`:`Run the installer from the website`:t.terminal?`Installed by the oona installer — updated from here`:"Run `oona update` in a terminal"}var Gf={running:!1,message:``,failed:!1};function Kf(e,t){switch(e){case`agentFinished`:return t.notifications.agentFinished;case`permissionRequired`:return t.notifications.permissionRequired;case`errorOccurred`:return t.notifications.errorOccurred;default:return!1}}function qf(e,t){let n=t.sessionTitle||`OonaCode`,r=e=>t.sessionId?{...e,sessionId:t.sessionId}:e;switch(e){case`permissionRequired`:return t.toolName===`AskUserQuestion`?r({title:`Question for you`,body:`${n} — the agent is asking you a question.`,focusOnClick:!0}):r({title:`Permission required`,body:`${n} — the agent wants to run ${t.toolName??`a tool`}.`,focusOnClick:!0});case`errorOccurred`:return r({title:`OonaCode error`,body:`${n} — ${t.detail??`the agent reported an error`}.`,focusOnClick:!0});default:return r({title:t.isError?`Agent needs attention`:`Agent finished`,body:t.isError?`${n} — the turn ended with an error.`:`${n} — turn complete.`,focusOnClick:!0,silent:!t.isError})}}async function Jf(e,t={}){if(t.documentHasFocus?.()===!0)return!1;if(t.bridgeNotify)try{return await t.bridgeNotify(e)}catch{return!1}let n=t.browser;if(!n)return!1;try{if(n.permission===`granted`||n.permission==="default"&&n.requestPermission&&await n.requestPermission()===`granted`)return n.create(e.title,{body:e.body,silent:e.silent===!0}),!0}catch{}return!1}function Yf(){if(typeof window>`u`)return{};let e=window.oonacode,t=globalThis.Notification;return{bridgeNotify:e?.notify?t=>e.notify(t):void 0,browser:t?{permission:t.permission,create:(e,n)=>{new t(e,n)},requestPermission:()=>t.requestPermission()}:void 0,documentHasFocus:()=>typeof document<`u`&&typeof document.hasFocus==`function`&&document.hasFocus()}}var Xf=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),U=o(((e,t)=>{t.exports=Xf()}))(),Zf=2e3,Qf=2500;function $f(){return{connection:{status:`idle`,detail:null,hostName:null,hostId:null,appVersion:null},info:null,bundleAppVersion:null,hostUpdatedTo:null,sessions:[],sessionLinks:{},sessionsTotal:0,sessionsLoading:!1,sessionsError:null,sessionListLoaded:!1,search:``,projects:[],vaultProjects:[],scheduledTasksVersion:0,assignProjectSessionId:null,projectsStartNew:!1,projectsSelectId:null,currentSessionId:null,tabs:Dd(),drafts:{},pendingRouting:{},transcripts:{},transcriptLoading:{},files:{},unsent:{},composerQuote:null,jumpTo:null,chatSearchRequest:null,windows:{},modelBoundaries:{},providers:[],activeProviderId:null,models:{},agentTools:null,settings:null,prefs:{...ic},prefsBackend:`unknown`,account:null,plan:null,accountLoaded:!1,accountLink:null,emailVerification:null,recoveryKey:null,credentials:[],claudeSubscription:null,claudeLogin:null,oauthLogin:null,engineDownload:null,importProgress:null,doctor:null,remote:{hosts:[],supported:!0,loading:!1,loaded:!1,sessions:{},sessionOwners:{},tabs:{},reason:null,stale:!1},update:wf,updateChecking:!1,updateInstall:Ff,terminalUpdate:Gf,updateDismissed:null,toasts:[],ui:{sidebarOpen:!0,dialog:`none`,connectProviderId:null,claudeLoginMode:null,oauthLoginProviderId:null,settingsSection:null}}}function ep(e,t){if(t===e.tabs&&t.activeId===e.currentSessionId)return e;let n=e.drafts;for(let r of e.tabs.ids)t.ids.includes(r)||e.drafts[r]===void 0||(n===e.drafts&&(n={...n}),delete n[r]);return{...e,tabs:t,drafts:n,unsent:Wd(e.unsent,t.ids),currentSessionId:t.activeId}}function tp(e,t){return e.windows[t]??rf(e.prefs.transcriptWindowSize)}function np(e,t){let n=Object.entries(e);if(n.length===0)return e;let r=!1,i={};for(let[e,a]of n){let n=of(a,t);n!==a&&(r=!0),i[e]=n}return r?i:e}function rp(e,t){return{...e,prefs:t,windows:np(e.windows,t.transcriptWindowSize)}}function ip(e,t){switch(t.type){case`connection`:return{...e,connection:{...e.connection,status:t.status,detail:t.detail??null}};case`welcome`:return{...e,connection:{...e.connection,hostName:t.hostName,hostId:t.hostId,appVersion:t.appVersion}};case`info`:{let n=t.info.account??null,r=e.bundleAppVersion??t.info.appVersion;return{...e,info:t.info,bundleAppVersion:r,hostUpdatedTo:t.info.appVersion===r?null:t.info.appVersion,activeProviderId:t.info.activeProviderId,account:n??e.account,accountLoaded:e.accountLoaded||n!==null,accountLink:n?.link??e.accountLink,connection:{...e.connection,hostName:t.info.hostName,hostId:t.info.hostId,appVersion:t.info.appVersion}}}case`sessions`:return{...e,sessions:t.sessions,sessionsTotal:t.total,sessionsLoading:!1,sessionsError:null,sessionListLoaded:!0,...t.links?{sessionLinks:Object.fromEntries(t.links.map(e=>[e.sessionId,e]))}:{}};case`session_link`:{let n={...e.sessionLinks};return t.link?n[t.sessionId]=t.link:delete n[t.sessionId],{...e,sessionLinks:n}}case`sessions_loading`:return{...e,sessionsLoading:t.loading};case`sessions_error`:return{...e,sessionsError:t.error,sessionsLoading:!1};case`search`:return{...e,search:t.value};case`session_upsert`:{let n=e.sessions.findIndex(e=>e.id===t.session.id),r=n>=0?e.sessions.map(e=>e.id===t.session.id?t.session:e):[t.session,...e.sessions],i=e.transcripts[t.session.id],a=n>=0?e.sessions[n]:void 0,o=a!==void 0&&a.cwd!==t.session.cwd,s=i&&o?Vl(i,{type:`local_system`,subtype:`workspace`,text:`Workspace changed to ${t.session.cwd} — the engine restarts there on your next message; the conversation continues.`}):i,c=s?{...e.transcripts,[t.session.id]:Vl(s,{type:`session`,session:t.session})}:e.transcripts;return{...e,sessions:r,sessionsTotal:n>=0?e.sessionsTotal:e.sessionsTotal+1,transcripts:c}}case`file_open`:{let n=e.files[t.sessionId]??{open:[],active:null},r=n.open.includes(t.path)?n.open:[...n.open,t.path];return{...e,files:{...e.files,[t.sessionId]:{open:r,active:t.path}}}}case`file_close`:{let n=e.files[t.sessionId];if(!n||!n.open.includes(t.path))return e;let r=n.open.indexOf(t.path),i=n.open.filter(e=>e!==t.path),a=n.active===t.path?i[Math.min(r,i.length-1)]??null:n.active;return{...e,files:{...e.files,[t.sessionId]:{open:i,active:a}}}}case`file_show_chat`:{let n=e.files[t.sessionId];return!n||n.active===null?e:{...e,files:{...e.files,[t.sessionId]:{...n,active:null}}}}case`file_activate`:{let n=e.files[t.sessionId];return!n||!n.open.includes(t.path)||n.active===t.path?e:{...e,files:{...e.files,[t.sessionId]:{...n,active:t.path}}}}case`session_removed`:{let{[t.id]:n,...r}=e.transcripts,{[t.id]:i,...a}=e.files,{[t.id]:o,...s}=e.windows,{[t.id]:c,...l}=e.pendingRouting,{[t.id]:u,...d}=e.remote.tabs,{[t.id]:f,...p}=e.remote.sessionOwners,{[t.id]:m,...h}=e.prefs.remoteTabs,g={...e,sessions:e.sessions.filter(e=>e.id!==t.id),sessionsTotal:Math.max(0,e.sessionsTotal-1),transcripts:r,windows:s,files:a,pendingRouting:l,remote:{...e.remote,tabs:d,sessionOwners:p,sessions:Object.fromEntries(Object.entries(e.remote.sessions).map(([e,n])=>[e,Array.isArray(n)?n.filter(e=>e.id!==t.id):n]))},prefs:{...e.prefs,remoteTabs:h}};return ep(g,Ad(g.tabs,t.id))}case`projects`:return{...e,projects:t.projects};case`scheduled_tasks_changed`:return{...e,scheduledTasksVersion:e.scheduledTasksVersion+1};case`vault_projects`:return{...e,vaultProjects:t.projects};case`assign_project_dialog`:return{...e,assignProjectSessionId:t.sessionId,ui:{...e.ui,dialog:t.sessionId?`assign-project`:`none`}};case`select_session`:{let n={...e,ui:{...e.ui,dialog:`none`}};return t.id===null?{...n,currentSessionId:null}:ep(n,Od(n.tabs,t.id))}case`close_tab`:return ep(e,Ad(e.tabs,t.id));case`unsent`:{if(!e.tabs.ids.includes(t.sessionId)||t.onlyIfEmpty&&!Vd(e.unsent[t.sessionId]))return e;let n=Ud(e.unsent,t.sessionId,t.message);return n===e.unsent?e:{...e,unsent:n}}case`composer_quote`:return{...e,composerQuote:{sessionId:t.sessionId,text:t.text,preview:t.preview,itemId:t.itemId,seq:(e.composerQuote?.seq??0)+1}};case`chat_search_request`:return{...e,chatSearchRequest:{sessionId:t.sessionId,query:t.query,seq:(e.chatSearchRequest?.seq??0)+1}};case`chat_search_request_seen`:{let n=e.chatSearchRequest;return!n||n.seq!==t.seq||n.seen?e:{...e,chatSearchRequest:{...n,seen:!0}}}case`jump_to`:return{...e,jumpTo:{sessionId:t.sessionId,itemId:t.itemId,seq:(e.jumpTo?.seq??0)+1}};case`move_tab`:return ep(e,jd(e.tabs,t.from,t.to));case`cycle_tab`:return ep(e,Nd(e.tabs,t.delta));case`restore_tabs`:{let n=e.tabs.ids.filter(e=>!t.ids.includes(e)),r={...e.drafts},i=new Set(e.sessions.map(e=>e.id));for(let e of t.drafts)!r[e.id]&&!i.has(e.id)&&(r[e.id]=e);let a=e.currentSessionId??t.activeId;return ep({...e,drafts:r},Dd([...t.ids,...n],a))}case`draft_open`:return ep({...e,drafts:{...e.drafts,[t.draft.id]:t.draft}},Od(e.tabs,t.draft.id));case`draft_patch`:{let n=e.drafts[t.id];return n?{...e,drafts:{...e.drafts,[t.id]:{...n,...t.patch}}}:e}case`draft_materialized`:{if(!e.drafts[t.id])return e;let{[t.id]:n,...r}=e.drafts;return{...e,drafts:r}}case`routing_seen`:{let n=e.pendingRouting[t.session.id];if(!n||!Al(n,t.session,e.providers))return e;let{[t.session.id]:r,...i}=e.pendingRouting;return{...e,pendingRouting:i}}case`pending_routing`:if(t.routing===null){if(!e.pendingRouting[t.sessionId])return e;let{[t.sessionId]:n,...r}=e.pendingRouting;return{...e,pendingRouting:r}}return{...e,pendingRouting:{...e.pendingRouting,[t.sessionId]:t.routing}};case`transcript`:{let n=e.transcripts[t.sessionId]??Rl(t.sessionId),r=Vl(n,t.action);if(r===n)return e;let i={...e,transcripts:{...e.transcripts,[t.sessionId]:r}};if(r.items.length>n.items.length){let e=tp(i,t.sessionId),n=lf(e);if(n!==e||i.windows[t.sessionId]===void 0)return{...i,windows:{...i.windows,[t.sessionId]:n}}}return i}case`transcript_loading`:return{...e,transcriptLoading:{...e.transcriptLoading,[t.sessionId]:t.loading}};case`window_grow`:{let n=tp(e,t.sessionId),r=sf(n,t.total);return r===n&&e.windows[t.sessionId]!==void 0?e:{...e,windows:{...e.windows,[t.sessionId]:r}}}case`window_reveal`:{let n=tp(e,t.sessionId),r=cf(n,t.rendered,t.total);return r===n&&e.windows[t.sessionId]!==void 0?e:{...e,windows:{...e.windows,[t.sessionId]:r}}}case`window_trim`:{let n=tp(e,t.sessionId),r=lf(n);return r===n&&e.windows[t.sessionId]!==void 0?e:{...e,windows:{...e.windows,[t.sessionId]:r}}}case`window_size`:{let n={};for(let[r,i]of Object.entries(e.windows))n[r]=of(i,t.size);return{...e,windows:n}}case`model_boundary`:return{...e,modelBoundaries:{...e.modelBoundaries,[t.sessionId]:t.boundary}};case`providers`:return{...e,providers:t.providers,activeProviderId:t.activeProviderId};case`active_provider`:return{...e,activeProviderId:t.activeProviderId};case`models`:return{...e,models:{...e.models,[t.providerId]:t.response}};case`agent_tools`:return{...e,agentTools:t.catalogue};case`settings`:{let n={...e,settings:t.settings};return t.settings.uiPrefs&&(n=rp(n,hc(t.settings.uiPrefs)),n.prefsBackend=`brain`),n}case`prefs`:return rp(e,t.prefs);case`prefs_backend`:return{...e,prefsBackend:t.backend};case`plan`:return{...e,plan:t.plan};case`account`:return{...e,account:t.account,accountLoaded:!0,accountLink:t.account.link??e.accountLink,emailVerification:t.account.loggedIn?null:e.emailVerification};case`account_unavailable`:return e.accountLoaded?e:{...e,accountLoaded:!0};case`account_link`:return{...e,accountLink:t.link};case`email_verification`:return{...e,emailVerification:t.pending};case`recovery_key`:return{...e,recoveryKey:t.recoveryKey};case`credentials`:return{...e,credentials:t.credentials};case`claude_subscription`:return{...e,claudeSubscription:t.status};case`claude_login`:return{...e,claudeLogin:t.state};case`oauth_login`:return{...e,oauthLogin:t.state};case`oauth_login_provider`:return{...e,ui:{...e.ui,oauthLoginProviderId:t.providerId}};case`engine_download`:return{...e,engineDownload:t.state};case`import_progress`:return{...e,importProgress:t.progress};case`doctor`:return{...e,doctor:t.checks};case`remote_hosts`:{let n=e.remote.tabs;for(let r of t.hosts){let t=r.label||r.hostName;for(let[i,a]of Object.entries(n))a.hostId===r.hostId&&a.hostName!==t&&(n===e.remote.tabs&&(n={...n}),n[i]={...a,hostName:t})}return{...e,remote:{...e.remote,hosts:t.hosts,tabs:n,loading:!1,loaded:!0,reason:t.reason??null,stale:t.stale??!1}}}case`remote_unsupported`:return{...e,remote:{...e.remote,supported:!1,loading:!1,loaded:!0}};case`remote_loading`:return{...e,remote:{...e.remote,loading:t.loading}};case`remote_loaded`:return{...e,remote:{...e.remote,loading:!1,loaded:!0}};case`remote_sessions`:{let n={...e.remote.sessionOwners};for(let e of t.sessions)n[e.id]=t.hostId;return{...e,remote:{...e.remote,sessions:{...e.remote.sessions,[t.hostId]:t.sessions},sessionOwners:n}}}case`remote_tab`:return{...e,remote:{...e.remote,tabs:{...e.remote.tabs,[t.tab.sessionId]:t.tab},sessionOwners:{...e.remote.sessionOwners,[t.tab.sessionId]:t.tab.hostId}}};case`remote_tab_state`:{let n=e.remote.tabs[t.sessionId];if(!n)return e;let r={...n,state:t.state,detail:t.detail,live:t.state===`attached`,...t.pairingId===void 0?{}:{pairingId:t.pairingId}};return{...e,remote:{...e.remote,tabs:{...e.remote.tabs,[t.sessionId]:r}}}}case`remote_tab_closed`:{if(!e.remote.tabs[t.sessionId])return e;let{[t.sessionId]:n,...r}=e.remote.tabs;return{...e,remote:{...e.remote,tabs:r}}}case`update_status`:return{...e,update:t.status,updateChecking:!1};case`update_checking`:return{...e,updateChecking:t.checking};case`update_event`:{let n=Lf(e.updateInstall,t.event),r=n.phase===`downloading`&&e.ui.dialog===`none`?`update`:e.ui.dialog;return{...e,updateInstall:n,ui:e.ui.dialog===r?e.ui:{...e.ui,dialog:r}}}case`terminal_update`:{let n=t.terminal.running&&e.ui.dialog===`none`?`update`:e.ui.dialog;return{...e,terminalUpdate:t.terminal,ui:e.ui.dialog===n?e.ui:{...e.ui,dialog:n}}}case`update_dismissed`:return{...e,updateDismissed:t.version};case`toast`:{let n=e.toasts.filter(e=>e.id!==t.toast.id);return{...e,toasts:[...n.slice(-4),t.toast]}}case`dismiss_toast`:return{...e,toasts:e.toasts.filter(e=>e.id!==t.id)};case`sidebar`:return{...e,ui:{...e.ui,sidebarOpen:t.open}};case`projects_new`:return{...e,projectsStartNew:!0,projectsSelectId:null};case`projects_select`:return{...e,projectsStartNew:!1,projectsSelectId:t.projectId};case`dialog`:return{...e,projectsStartNew:t.dialog===`projects`&&e.projectsStartNew,projectsSelectId:t.dialog===`projects`?e.projectsSelectId:null,ui:{...e.ui,dialog:t.dialog,claudeLoginMode:t.dialog===`claude-login`?e.ui.claudeLoginMode:null,oauthLoginProviderId:t.dialog===`oauth-login`?e.ui.oauthLoginProviderId:null,connectProviderId:t.connectProviderId??null}};case`connect_provider`:return{...e,ui:{...e.ui,connectProviderId:t.providerId}};case`claude_login_mode`:return{...e,ui:{...e.ui,claudeLoginMode:t.mode}};case`settings_section`:return{...e,ui:{...e.ui,settingsSection:t.section}}}}function ap(e){return e.type===`subagent_activity`||e.type===`agent`&&te(e.message)}function op(){return typeof document<`u`&&document.visibilityState===`hidden`}function sp(e,t){switch(e.type){case`welcome`:return[{type:`welcome`,hostName:e.hostName,hostId:e.hostId,appVersion:e.appVersion}];case`agent`:case`permission_request`:case`permission_resolved`:case`turn_started`:case`turn_finished`:case`prompt_delivered`:case`subagent_activity`:case`prompt_cancelled`:return[{type:`transcript`,sessionId:e.sessionId,action:{type:`frame`,frame:e,receivedAt:t}}];case`session_state`:return[{type:`session_upsert`,session:e.session},{type:`routing_seen`,session:e.session},{type:`transcript`,sessionId:e.session.id,action:{type:`frame`,frame:e,receivedAt:t}}];case`claude_login`:return[{type:`claude_login`,state:e.state}];case`engine_download`:return[{type:`engine_download`,state:e.state}];case`import_progress`:return[{type:`import_progress`,progress:e.finished?null:e}];case`pool_notice`:{let t=e.retryAfterSec?` Retrying by itself in ${e.retryAfterSec} s.`:``;return[{type:`toast`,toast:{id:`t-pool-${e.code}`,kind:`info`,text:`${e.message}${t}`}}]}case`error`:return e.sessionId?[{type:`transcript`,sessionId:e.sessionId,action:{type:`frame`,frame:e,receivedAt:t}}]:[{type:`toast`,toast:{id:`t-${t}`,kind:`error`,text:`${e.code}: ${e.message}`}}];default:return[]}}var cp=36e5,lp=1500;function up(e,t,n){if(e.type===`welcome`)return[];let r=`sessionId`in e?e.sessionId:e.type===`session_state`?e.session.id:void 0;return typeof r==`string`&&r!==t?[]:sp(e,n)}function dp(e,t){return e.transcripts[t]?.session??e.sessions.find(e=>e.id===t)}var fp=(0,v.createContext)(null);function W(){let e=(0,v.useContext)(fp);if(!e)throw Error(`useApp must be used inside <AppProvider>`);return e}function pp(){let{state:e}=W();return e.currentSessionId?e.transcripts[e.currentSessionId]??null:null}function mp(){let{state:e}=W(),t=e.currentSessionId;return t?e.transcripts[t]?.session??e.sessions.find(e=>e.id===t)??null:null}function hp(){let{state:e}=W(),t=e.currentSessionId;return t?e.drafts[t]??null:null}function gp(){return typeof window<`u`&&window.oonacode?`desktop`:`host`}var _p=0;function vp(e){return e.status===401&&/password|credential/i.test(e.message)}function yp(){try{return typeof window<`u`?window.localStorage:null}catch{return null}}function bp({api:e,socket:t,relay:n=null,initialSessionId:r,onUnauthorized:i,storage:a,fetchImpl:o,reportError:s,streamBatchMs:c=Ol(),children:l}){let[u,d]=(0,v.useReducer)(ip,void 0,$f),f=(0,v.useRef)(u),p=(0,v.useRef)(!1),m=u.updateInstall.phase,h=u.terminalUpdate.running;(0,v.useEffect)(()=>{h||m!==`downloading`&&m!==`installing`&&(p.current=!1)},[m,h]),f.current=u;let g=(0,v.useRef)(i);g.current=i;let _=(0,v.useRef)(s);_.current=s;let y=(0,v.useRef)(a);y.current=a===void 0?yp():a;let b=(0,v.useRef)(o);b.current=o;let x=(0,v.useRef)(null),S=(0,v.useRef)({tail:Promise.resolve(),latest:0}),C=(0,v.useRef)(new Set),w=(0,v.useRef)(new Map),T=(0,v.useRef)(new Set),E=(0,v.useRef)(new Map),D=(0,v.useRef)(new Map),O=(0,v.useRef)(()=>{}),ee=(0,v.useRef)(null);ee.current===null&&(ee.current=mf(()=>O.current())),(0,v.useEffect)(()=>()=>ee.current?.dispose(),[]);let k=(0,v.useMemo)(()=>{let r=(e,t)=>{_p+=1,d({type:`toast`,toast:{id:`toast-${_p}`,kind:e,text:t}})},i=(e,t)=>{if(e instanceof Sl&&e.isUnauthorized&&!vp(e)){g.current?.();return}let n=t?`${t}: ${cd(e)}`:cd(e);r(`error`,n),_.current?.(e,{source:`action`,...t?{action:t}:{}})},a=e=>r(`error`,`This host build cannot ${e} yet — update OonaCode on this PC`),o=()=>f.current.currentSessionId,s=e=>typeof e==`string`?f.current.drafts[e]??null:null,l=e=>_d(f.current.drafts,e),u=async t=>{d({type:`sessions_loading`,loading:!0});try{let n=(t??f.current.search).trim(),r=await e.listSessions(n?{search:n,limit:200,links:!0}:{limit:200,links:!0});d({type:`sessions`,sessions:r.sessions,total:r.total,...r.links?{links:r.links}:{}})}catch(e){d({type:`sessions_error`,error:cd(e)}),i(e,`Sessions`)}},m=async()=>{try{d({type:`vault_projects`,projects:(await e.listVaultProjects()).projects})}catch{f.current.vaultProjects.length===0&&d({type:`vault_projects`,projects:[]})}},h=async()=>{try{d({type:`projects`,projects:(await e.listProjects()).projects})}catch(e){i(e,`Projects`)}await m()},v=async()=>{try{let t=await e.listProviders();d({type:`providers`,providers:t.providers,activeProviderId:t.activeProviderId})}catch(e){i(e,`Providers`)}},C=async()=>{if(e.listAgentTools)try{let{catalogue:t}=await e.listAgentTools();t&&d({type:`agent_tools`,catalogue:t})}catch(e){e instanceof Sl&&e.isUnauthorized&&g.current?.()}},T=async t=>{try{d({type:`models`,providerId:t,response:await e.listModels({providerId:t})})}catch(e){i(e,`Models`)}},k=async(t,n,r)=>{try{let i=await e.setActiveProvider({providerId:t,...n?{model:n}:{},...r===void 0?{}:{variantId:r}});d({type:`active_provider`,activeProviderId:i.activeProviderId}),await v()}catch(e){i(e,`Provider`)}},te=async()=>{try{d({type:`settings`,settings:await e.getSettings()})}catch(e){i(e,`Settings`)}},A=async()=>{try{d({type:`account`,account:await e.getAccount()})}catch(e){d({type:`account_unavailable`}),i(e,`Account`)}},j=async()=>{try{d({type:`credentials`,credentials:(await e.listCredentials()).credentials})}catch(e){if(e instanceof Sl&&(e.code===`vault_locked`||e.status===423)){d({type:`credentials`,credentials:[]});return}i(e,`Credentials`)}},ne=async()=>{try{d({type:`claude_subscription`,status:await e.claudeSubscriptionStatus()})}catch(e){e instanceof Sl&&e.isUnauthorized&&g.current?.(),d({type:`claude_subscription`,status:null})}},re=async t=>{try{d({type:`oauth_login`,state:await e.oauthLoginStart(t)})}catch(e){r(`error`,`Sign-in: ${cd(e)}`)}},M=async t=>{try{d({type:`oauth_login`,state:await e.oauthLoginState(t)})}catch{}},N=async t=>{try{d({type:`oauth_login`,state:await e.oauthLoginCancel(t)})}catch(e){r(`error`,`Sign-in: ${cd(e)}`)}},ie=async()=>{try{d({type:`claude_login`,state:await e.claudeLoginState()})}catch{}},ae=async()=>{try{let t=await e.claudeSubscriptionLogin();return t.login&&d({type:`claude_login`,state:t.login}),t}catch(e){return r(`error`,`Claude login: ${cd(e)}`),null}},oe=async t=>{try{return d({type:`claude_login`,state:await e.claudeLoginCode({code:t})}),!0}catch(e){return r(`error`,`Claude login: ${cd(e)}`),!1}},se=async()=>{try{d({type:`claude_login`,state:await e.claudeLoginCancel()})}catch(e){r(`error`,`Claude login: ${cd(e)}`)}},ce=async()=>{try{let t=await e.info();x.current=t,d({type:`info`,info:t})}catch(e){i(e,`Host`)}},le=async()=>{let t=(x.current??f.current.info)?.appVersion??``;for(let n=0;n<8;n++){try{let n=await e.info();if(x.current=n,d({type:`info`,info:n}),n.appVersion!==t)return}catch{}await new Promise(e=>setTimeout(e,lp))}},ue=async()=>{if(e.plan)try{let{plan:t}=await e.plan();d({type:`plan`,plan:t})}catch{d({type:`plan`,plan:null})}};O.current=()=>void ue();let de=()=>{e.plan&&ee.current?.request()},fe=async()=>{if(!e.listHosts||!f.current.remote.supported){d({type:`remote_loaded`});return}d({type:`remote_loading`,loading:!0});try{let t=await e.listHosts();d({type:`remote_hosts`,hosts:t.hosts,reason:t.reason??null,stale:t.stale??!1})}catch(e){El(e)?d({type:`remote_unsupported`}):(d({type:`remote_loaded`}),e instanceof Sl&&e.isUnauthorized&&g.current?.())}},pe=async t=>{if(!e.listHostSessions)return null;try{let n=await e.listHostSessions(t);return d({type:`remote_sessions`,hostId:t,sessions:n.sessions}),n.sessions}catch(e){return El(e)?d({type:`remote_unsupported`}):i(e,`Remote sessions`),null}},me=async e=>{await pe(e)},he=e=>{let t=f.current;if(t.drafts[e]||t.remote.tabs[e]||E.current.has(e))return null;let n=t.remote.sessionOwners[e]??t.prefs.remoteTabs[e];if(!n)return null;let r=t.remote.hosts.find(e=>e.hostId===n);return r&&!r.isSelf?n:null},ge=e=>{if(e!==null){let t=he(e);if(t!==null){Ce(t,e);return}}d({type:`select_session`,id:e})},_e=e=>e?f.current.remote.tabs[e]??null:null,ye=(e,t)=>E.current.get(e)?.send(t)??!1,be=e=>{let t=_e(e);r(`error`,`${t?.hostName??`That PC`} is offline — this transcript is read-only until it comes back.`)},xe=async(t,n)=>{if(e.listHostSessionEntries){d({type:`transcript_loading`,sessionId:n,loading:!0});try{let r=await e.listHostSessionEntries(t,n,{limit:500,tail:1});r.entries.length>0&&d({type:`transcript`,sessionId:n,action:{type:`entries`,entries:r.entries}})}catch(e){e instanceof Sl&&e.isUnauthorized?g.current?.():El(e)||i(e,`Remote history`)}finally{d({type:`transcript_loading`,sessionId:n,loading:!1})}}},Se=e=>{D.current.get(e)?.dispose(),D.current.delete(e);let t=E.current.get(e);t&&(E.current.delete(e),t.detach(),d({type:`remote_tab_closed`,sessionId:e}))},Ce=async(e,t,r={})=>{let i=f.current,a=i.remote.hosts.find(t=>t.hostId===e)??null,o=a?.label||a?.hostName||e,s=(i.remote.sessions[e]??[]).find(e=>e.id===t);if(r.draft||(s?d({type:`session_upsert`,session:s}):(async()=>{let n=(await pe(e))?.find(e=>e.id===t);n&&d({type:`session_upsert`,session:n})})()),d({type:`remote_tab`,tab:{sessionId:t,hostId:e,hostName:o,pairingId:null,state:`unavailable`,detail:null,live:!1}}),r.focus!==!1&&d({type:`select_session`,id:t}),r.draft||xe(e,t),!n){d({type:`remote_tab_state`,sessionId:t,state:`unavailable`,detail:`This window cannot bridge to other PCs yet.`});return}E.current.get(t)?.detach(),D.current.get(t)?.dispose();let l=kl({isStreamFrame:ap,deliver:e=>{for(let t of e)u(t)},batchMs:c,isHidden:op});D.current.set(t,l);let u=e=>{let n=Date.now(),r=e.type===`session_state`?dp(f.current,e.session.id):void 0;for(let r of up(e,t,n))d(r);e.type===`session_state`&&f.current.drafts[e.session.id]&&d({type:`draft_materialized`,id:e.session.id}),e.type===`session_state`&&xf(r,e.session)&&de()},p=n.attach({hostId:e,sessionId:t,onFrame:e=>l.push(e),onState:e=>{if(d({type:`remote_tab_state`,sessionId:t,state:e.state,detail:e.detail,pairingId:e.pairingId}),e.state!==`attached`)return;let r=f.current.transcripts[t]?.lastSeq??0;n.send(e.pairingId,{type:`subscribe`,sessionId:t,afterSeq:r})}});E.current.set(t,p),d({type:`remote_tab_state`,sessionId:t,state:`unavailable`,detail:null,pairingId:p.pairingId})},we=async t=>{let n=xd(f.current.prefs,t);if(f.current={...f.current,prefs:n},d({type:`prefs`,prefs:n}),t.transcriptWindowSize!==void 0&&d({type:`window_size`,size:n.transcriptWindowSize}),f.current.prefsBackend===`local`){bd(y.current,n);return}let r=S.current,i=++r.latest,a=r.tail.then(async()=>{if(i===r.latest)try{let t=await e.updateSettings({uiPrefs:n});i===r.latest&&d({type:`settings`,settings:t}),t.uiPrefs?d({type:`prefs_backend`,backend:`brain`}):bd(y.current,n)}catch(e){if(Sd(e)){d({type:`prefs_backend`,backend:`local`}),bd(y.current,n);return}e instanceof Sl&&e.isUnauthorized?g.current?.():bd(y.current,n)}});r.tail=a.catch(()=>void 0),await a},Te=async t=>{let[n,r]=await Promise.all([e.getSession(t),e.listMessages(t)]);d({type:`session_upsert`,session:n}),d({type:`transcript`,sessionId:t,action:{type:`hydrate`,messages:r.messages,session:n}})},Ee=e=>{d({type:`session_upsert`,session:e}),ge(e.id),h()},De=async t=>{try{let n=await e.createSession(t);return Ee(n),n}catch(e){return i(e,`New session`),null}},Oe=(e={})=>{let t=ld(md()),n=e.title?gd(e.title):null,r=e.projectId?f.current.vaultProjects.find(t=>t.id===e.projectId):void 0;d({type:`draft_open`,draft:ud({...t,...n?{title:n}:{},...e.projectId?{projectId:e.projectId}:{}},r?.chatDefaults)})},ke=async e=>{let t=f.current.remote.hosts.find(t=>t.hostId===e)??null,n=t?.label||t?.hostName||`That PC`;if(t&&!t.online){r(`error`,`${n} is offline — a new chat has to start on a PC that is awake.`);return}let i=ld(md());d({type:`draft_open`,draft:i}),await Ce(e,i.id,{draft:!0})},P=async n=>{let r=f.current,i=Yc(r.providers,{providerId:n.providerId??r.activeProviderId,model:n.model??r.info?.activeModel??null,variantId:n.variantId}),a={sessionId:n.id,...n.projectDir?{cwd:n.projectDir}:{},...n.projectId?{projectId:n.projectId}:{},...n.title?{title:n.title}:{},...i.providerId?{providerId:i.providerId}:{},...i.variantId?{variantId:i.variantId}:{},...i.modelId?{model:i.modelId}:{},permissionMode:n.permissionMode??`default`,...n.effort&&ve(n.effort)?{effort:n.effort}:{},...Td(n.toolPacks)},o;try{o=await e.createSession(a)}catch(t){let r=await e.getSession(n.id).catch(()=>null);if(!r)throw t;o=r}return d({type:`session_upsert`,session:o}),d({type:`draft_materialized`,id:n.id}),t.subscribe(o.id),h(),o},Ae=async()=>e.scanClaudeSessions(),je=async(t,n)=>{let r=await e.importClaudeSessions({...t&&t.length>0?{ids:t}:{},...n?{overwrite:!0}:{}});return r.imported.length>0&&(await u(),h()),r},Me=async t=>{if(!e.sessionLink)return null;try{let{link:n}=await e.sessionLink(t);return d({type:`session_link`,sessionId:t,link:n}),n}catch{return d({type:`session_link`,sessionId:t,link:null}),null}},Ne=async t=>{if(!e.syncSessionDown)return null;try{let n=await e.syncSessionDown(t);return d({type:`session_link`,sessionId:t,link:n.link}),n.added>0&&(await u(),f.current.tabs.ids.includes(t)&&await Te(t)),n}catch(e){return i(e,`Sync`),null}},F=async(e=!1)=>{let t=f.current,n=t.account?.gatewayUrl??t.settings?.gatewayUrl??null,i=typeof window<`u`?window.oonacode:void 0,a=Mf(n,Nf({bridge:i,info:t.info})),o=e&&i?.checkForUpdates?i.checkForUpdates():null;if(o&&o.catch(()=>void 0),!a){e&&!o&&r(`info`,`Set a gateway URL in Settings to check for updates`);return}d({type:`update_checking`,checking:!0});try{let o=i?.fetchLatestRelease?await i.fetchLatestRelease(n):await(async()=>{let e=await(b.current??(e=>fetch(e,{credentials:`omit`})))(a);if(!e.ok)throw Error(`release feed returned ${e.status}`);return e.json()})(),s=x.current??t.info,c=jf(Af(o),{desktop:i?.appVersion??null,host:s?.appVersion??t.connection.appVersion??null,cli:s?.cliVersion??null,engine:s?.engine.version??null});d({type:`update_status`,status:c}),e&&r(c.available?`info`:`success`,c.available?`OonaCode ${c.version} is available (${c.components.length} component${c.components.length===1?``:`s`})`:`Everything is up to date`)}catch(t){d({type:`update_checking`,checking:!1}),e&&r(`error`,`Update check failed: ${cd(t)}`)}};return{refreshInfo:ce,refreshSessions:u,scanClaudeSessions:Ae,importClaudeSessions:je,refreshSessionLink:Me,syncSessionDown:Ne,refreshProjects:h,refreshProviders:v,refreshAgentTools:C,refreshModels:T,refreshSettings:te,refreshAccount:A,refreshCredentials:j,refreshClaudeSubscription:ne,startClaudeLogin:ae,submitClaudeLoginCode:oe,cancelClaudeLogin:se,refreshClaudeLogin:ie,startOauthLogin:re,refreshOauthLogin:M,cancelOauthLogin:N,refreshHosts:fe,refreshPlan:ue,refreshPlanSoon:de,refreshHostSessions:me,openRemoteSession:Ce,newRemoteTab:ke,async renameHost(t,n){if(!e.updateHost){r(`error`,`This host build cannot rename devices yet`);return}try{let i=await e.updateHost(t,{label:n});d({type:`remote_hosts`,hosts:f.current.remote.hosts.map(e=>e.hostId===t?i:e),reason:f.current.remote.reason,stale:f.current.remote.stale}),r(`success`,`Device renamed`)}catch(e){El(e)?d({type:`remote_unsupported`}):i(e,`Rename device`)}},async runDoctor(){d({type:`doctor`,checks:null});try{d({type:`doctor`,checks:(await e.doctor()).checks})}catch(e){i(e,`Doctor`)}},setSearch(e){d({type:`search`,value:e})},selectSession:ge,closeTab(e){Se(e),d({type:`close_tab`,id:e})},rememberUnsent(e,t,n){d({type:`unsent`,sessionId:e,message:t,onlyIfEmpty:n})},quoteIntoComposer(e,t,n){d({type:`composer_quote`,sessionId:e,text:t,preview:n?.preview??$d(t.replace(/^> ?/gm,``)),itemId:n?.itemId??null})},jumpToItem(e,t){d({type:`jump_to`,sessionId:e,itemId:t})},async searchTranscripts(t){if(!e.searchEntries)return null;try{return await e.searchEntries(t)}catch{return null}},openChatWithSearch(e,t){ge(e),d({type:`chat_search_request`,sessionId:e,query:t})},moveTab(e,t){d({type:`move_tab`,from:e,to:t})},cycleTab(e){d({type:`cycle_tab`,delta:e})},newTab:Oe,createSession:De,async deleteSession(n){if(l(n)){d({type:`close_tab`,id:n});return}try{await e.deleteSession(n),t.unsubscribe(n),d({type:`session_removed`,id:n})}catch(e){i(e,`Delete`)}},async deleteRemoteSession(n,r){try{if(!e.deleteHostSession)throw Error(`this PC is running an older OonaCode that cannot delete a chat on another device`);await e.deleteHostSession(n,r),t.unsubscribe(r),d({type:`session_removed`,id:r})}catch(e){i(e,`Delete`)}},async renameSession(t,n){try{d({type:`session_upsert`,session:await e.updateSession(t,{title:n})})}catch(e){i(e,`Rename`)}},refreshVaultProjects:m,async createVaultProject(t){try{let n=await e.createVaultProject(t);return await m(),n}catch(e){return i(e,`Project`),null}},async updateVaultProject(t,n){try{let r=await e.updateVaultProject(t,n);return await m(),r}catch(e){return i(e,`Project`),null}},async listScheduledTasks(t){if(!e.listScheduledTasks)return[];try{return(await e.listScheduledTasks(t)).tasks}catch{return[]}},async updateScheduledTask(t,n){if(!e.updateScheduledTask)return!1;try{return await e.updateScheduledTask(t,n),!0}catch(e){return i(e,`Scheduled task`),!1}},async githubLink(t){let n=t===`get`?e.getGithubLink:t===`start`?e.startGithubLink:t===`cancel`?e.cancelGithubLink:e.unlinkGithub;if(!n)return null;try{return await n.call(e)}catch(e){return t!==`get`&&i(e,`GitHub`),null}},async deleteScheduledTask(t){if(!e.deleteScheduledTask)return!1;try{return await e.deleteScheduledTask(t),!0}catch(e){return i(e,`Scheduled task`),!1}},async deleteVaultProject(t){try{return await e.deleteVaultProject(t),await m(),await u(),!0}catch(e){return i(e,`Project`),!1}},async setSessionProject(t,n){if(l(t)){let e=f.current.drafts[t],r=n?f.current.vaultProjects.find(e=>e.id===n):void 0,i=e?ud({...e,projectId:n},r?.chatDefaults):null;return d({type:`draft_patch`,id:t,patch:i?{projectId:n,model:i.model,providerId:i.providerId,variantId:i.variantId,projectDir:i.projectDir,effort:i.effort??null}:{projectId:n}}),!0}try{return d({type:`session_upsert`,session:await e.updateSession(t,{projectId:n})}),!0}catch(e){return i(e,`Project`),!1}},openNewProject(){d({type:`projects_new`}),d({type:`dialog`,dialog:`projects`})},openProjectSettings(e){d({type:`projects_select`,projectId:e}),d({type:`dialog`,dialog:`projects`})},openAssignProject(e){d({type:`assign_project_dialog`,sessionId:e})},renameTab(t,n){let r=gd(n);if(l(t)){d({type:`draft_patch`,id:t,patch:{title:r}});return}(async()=>{try{d({type:`session_upsert`,session:await e.updateSession(t,{title:r??``})})}catch(e){i(e,`Rename`)}})()},async forkSession(t){if(l(t)){Oe();return}try{let n=await e.forkSession(t,{});d({type:`session_upsert`,session:n}),ge(n.id)}catch(e){i(e,`Fork`)}},async sendPrompt(n,r=[],a){let c=o();if(!c)return!1;let l=`req-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,u=(e,t)=>(d({type:`transcript`,sessionId:c,action:{type:`frame`,frame:{type:`error`,sessionId:c,requestId:l,code:e,message:t}}}),d({type:`transcript`,sessionId:c,action:{type:`local_prompt_failed`,requestId:l}}),!1);d({type:`transcript`,sessionId:c,action:{type:`local_prompt`,requestId:l,text:n,attachments:r,at:new Date().toISOString()}}),d({type:`window_trim`,sessionId:c});let p=s(c);if(p!==null&&_e(c)!==null&&p)p.model&&ye(c,{type:`set_model`,sessionId:c,model:p.model,...p.providerId?{providerId:p.providerId}:{},...p.variantId===null?{}:{variantId:p.variantId}}),p.permissionMode&&ye(c,{type:`set_permission_mode`,sessionId:c,mode:p.permissionMode}),p.title&&ye(c,{type:`set_title`,sessionId:c,title:p.title});else if(p)try{await P(p)}catch(e){return i(e,`New chat`),u(`session_create_failed`,cd(e))}let m=f.current.pendingRouting[c];if(m&&(a={...a,providerId:m.providerId,model:a?.model??m.model,...m.variantId===void 0?{}:{variantId:m.variantId}}),_e(c))return ye(c,{type:`prompt`,sessionId:c,requestId:l,text:n,...r.length>0?{attachments:r}:{},...a?{options:a}:{}})?!0:(be(c),u(`host_offline`,`That PC is offline — this transcript is read-only.`));try{t.status===`open`?t.prompt(c,n,{attachments:r,options:a,requestId:l}):await e.prompt(c,{text:n,attachments:r,options:a})}catch(e){return i(e,`Send`),u(`send_failed`,cd(e))}return!0},respondPermission(e,n,i){let a=i??o();if(a&&!l(a)){if(!(_e(a)?ye(a,{type:`permission_response`,sessionId:a,requestId:e,decision:n}):t.respondPermission(a,e,n))){r(`error`,`Not connected to the host — cannot answer the permission request`);return}d({type:`transcript`,sessionId:a,action:{type:`local_permission`,requestId:e,behavior:n.behavior}})}},async cancelQueued(t,n){let a=n??o();if(!(!a||l(a))){if(_e(a)){r(`info`,`Withdrawing a queued message is done on the PC that runs the chat`);return}try{(await e.cancelQueued(a,t)).cancelled?d({type:`transcript`,sessionId:a,action:{type:`frame`,frame:{type:`prompt_cancelled`,sessionId:a,requestId:t,text:``}}}):r(`info`,`The agent has already read that message`)}catch(e){i(e,`Withdraw`)}}},async interrupt(n){let r=n??o();if(r&&!l(r)){if(_e(r)){ye(r,{type:`interrupt`,sessionId:r})||be(r);return}if(!t.interrupt(r))try{await e.interrupt(r)}catch(e){i(e,`Interrupt`)}}},setSessionModel(e,n,r){let i=o();if(!i)return;if(n&&k(n,e,r),s(i)){d({type:`draft_patch`,id:i,patch:{model:e,...n?{providerId:n}:{},...r===void 0?{}:{variantId:r}}});return}let a=f.current.sessions.find(e=>e.id===i),c=f.current.transcripts[i]?.session?.model??a?.model??null,l=f.current.pendingRouting[i];l!==void 0||n!==void 0&&a!==void 0&&n!==(a.providerId??null)||r!==void 0&&a!==void 0&&(r??null)!==(a.variantId??null)?d({type:`pending_routing`,sessionId:i,routing:{providerId:n??l?.providerId??a?.providerId??``,model:e,...r===void 0?{}:{variantId:r}}}):_e(i)?ye(i,{type:`set_model`,sessionId:i,model:e}):t.setModel(i,e),c!==e&&d({type:`model_boundary`,sessionId:i,boundary:{index:f.current.transcripts[i]?.items.length??0,from:c,to:e}}),a&&d({type:`session_upsert`,session:{...a,model:e,...n?{providerId:n}:{},...r===void 0?{}:{variantId:r}}})},setSessionPermissionMode(e){let n=o();if(!n)return;if(l(n)){d({type:`draft_patch`,id:n,patch:{permissionMode:e}});return}_e(n)?ye(n,{type:`set_permission_mode`,sessionId:n,mode:e}):t.setPermissionMode(n,e);let r=f.current.sessions.find(e=>e.id===n);r&&d({type:`session_upsert`,session:{...r,permissionMode:e}})},setSessionEffort(e){let n=o();if(!n||l(n))return;_e(n)?ye(n,{type:`set_effort`,sessionId:n,effort:e}):t.setEffort(n,e);let r=f.current.sessions.find(e=>e.id===n);if(r){let{effort:t,...n}=r;d({type:`session_upsert`,session:e?{...n,effort:e}:n})}},async setSessionToolPacks(t,n){if(l(t))return d({type:`draft_patch`,id:t,patch:{toolPacks:{...n}}}),!0;let a=_e(t);if(a)return r(`error`,`This chat runs on ${a.hostName} — switch its tools in OonaCode on that PC.`),!1;let o=(w.current.get(t)??0)+1;w.current.set(t,o);let s=dp(f.current,t),c=s?.toolPacks;s&&d({type:`session_upsert`,session:{...s,toolPacks:n}});try{let r=await e.updateSession(t,{toolPacks:n});return w.current.get(t)===o&&d({type:`session_upsert`,session:r}),!0}catch(e){if(w.current.get(t)===o){let e=dp(f.current,t);if(e){let{toolPacks:t,...n}=e;d({type:`session_upsert`,session:c?{...n,toolPacks:c}:n})}}return i(e,`Tools`),!1}},setActiveProvider:k,async inspectProject(t){if(!e.inspectProject)return null;try{return await e.inspectProject({dir:t})}catch(e){return El(e)||(e instanceof Sl&&e.isUnauthorized?g.current?.():i(e,`Folder`)),null}},async attachProject(t,n){let c=n??o();if(!c)return!1;if(s(c))return d({type:`draft_patch`,id:c,patch:{projectDir:t}}),!0;let l=_e(c);if(l)return r(`error`,`This chat runs on ${l.hostName} — choose its project folder in OonaCode on that PC.`),!1;if(!e.attachSessionProject)return a(`open a chat in one of your project folders`),!1;try{let n=await e.attachSessionProject(c,{dir:t});return d({type:`session_upsert`,session:n.session}),h(),r(`success`,n.appliesOnNextMessage?`Switched to ${n.session.cwd} — the turn in progress finishes where it started, and your next message runs there with that project's CLAUDE.md and settings`:n.restarted?`Switched to ${n.session.cwd} — this chat restarts with that project's CLAUDE.md and settings loaded, and continues where it left off`:`Switched to ${n.session.cwd} — the next message loads that project's CLAUDE.md and settings`),!0}catch(e){return El(e)?a(`open a chat in one of your project folders`):i(e,`Project folder`),!1}},async saveSettings(t){try{d({type:`settings`,settings:await e.updateSettings(t)}),r(`success`,`Settings saved`)}catch(e){i(e,`Settings`)}},savePrefs:we,growTranscript(e,t){d({type:`window_grow`,sessionId:e,total:t})},revealTranscript(e,t,n){d({type:`window_reveal`,sessionId:e,rendered:t,total:n})},trimTranscript(e){d({type:`window_trim`,sessionId:e})},hydrateSession:Te,async catchUpEntries(t){if(l(t))return;let n=_e(t);if(n){await xe(n.hostId,t);return}let r=f.current.transcripts[t],i=r?.lastSeq??void 0;if(i===void 0&&r?.hydrated){try{await Te(t)}catch(e){e instanceof Sl&&e.isUnauthorized&&g.current?.()}return}for(let n=0;n<200;n++){let n;try{n=await e.listEntries(t,{limit:500,...i===void 0?{}:{afterSeq:i}})}catch(e){e instanceof Sl&&e.isUnauthorized&&g.current?.();return}if(n.entries.length>0&&d({type:`transcript`,sessionId:t,action:{type:`entries`,entries:n.entries}}),n.nextSeq===null||n.nextSeq===i)return;i=n.nextSeq}},checkUpdates:F,async installUpdate(){if(p.current)return;p.current=!0;let e=typeof window<`u`?window.oonacode:void 0,t=f.current,n=Uf(t.update.components.map(e=>e.component),{desktop:typeof e?.installUpdate==`function`,terminal:typeof e?.updateTerminalInstall==`function`},{checked:t.update.version!==``,shellEngaged:t.updateInstall.phase!==`idle`&&t.updateInstall.phase!==`checking`});if(n.upToDate){r(`success`,`Everything is up to date`),p.current=!1;return}let i=n.desktop;if(n.terminal&&e?.updateTerminalInstall){d({type:`terminal_update`,terminal:{running:!0,message:``,failed:!1}});try{let t=await e.updateTerminalInstall();if(d({type:`terminal_update`,terminal:{running:!1,message:t.message,failed:!t.ok}}),!t.ok){r(`error`,t.message),p.current=!1;return}t.absent?e.installUpdate&&(i=!0):(r(`success`,t.message),await le(),await F(!1))}catch(e){let t=cd(e);d({type:`terminal_update`,terminal:{running:!1,message:t,failed:!0}}),r(`error`,`Updating the CLI and host service failed: ${t}`),p.current=!1;return}}if(!i){n.manual.length>0&&r(`info`,`This window cannot install `+n.manual.map(e=>Cf[e]).join(`, `)+" — run the installer from the website, or `oona update` in a terminal"),p.current=!1;return}if(!e?.installUpdate){r(`info`,"This window cannot install the app itself — run the installer again, or `oona update` in a terminal"),p.current=!1;return}try{let t=await e.installUpdate();r(t.started?`info`:`error`,t.message),t.started||(p.current=!1)}catch(e){r(`error`,`Update failed: ${cd(e)}`),p.current=!1}},dismissUpdate(){let e=f.current.update.version||null;d({type:`update_dismissed`,version:e}),we({dismissedUpdateVersion:e}),d({type:`dialog`,dialog:`none`})},async login(t){try{return d({type:`account`,account:await e.login(t)}),r(`success`,t.register?`Account created`:`Logged in`),j(),v(),fe(),`ok`}catch(e){let n=Il(e,{email:t.email,registered:t.register===!0});return n?(d({type:`email_verification`,pending:n}),`verification_pending`):(i(e,`Login`),`failed`)}},async startAccountLink(){if(!e.startAccountLink)return a(`sign in through your browser`),null;try{let t=await e.startAccountLink({clientKind:gp()});return d({type:`account_link`,link:t}),t.status===`error`&&r(`error`,t.message??`Could not start the sign-in`),t}catch(e){return El(e)?a(`sign in through your browser`):i(e,`Sign in`),null}},async refreshAccountLink(){if(e.accountLinkStatus)try{let t=await e.accountLinkStatus();d({type:`account_link`,link:t}),t.status===`approved`&&(A(),j(),v())}catch(e){El(e)||i(e,`Sign in`)}},async cancelAccountLink(){if(!e.cancelAccountLink){d({type:`account_link`,link:{status:`idle`}});return}try{d({type:`account_link`,link:await e.cancelAccountLink()})}catch(e){d({type:`account_link`,link:{status:`idle`}}),El(e)||i(e,`Sign in`)}},async resendVerification(){let t=f.current.emailVerification;if(!t)return!1;try{let n=await e.resendVerification({email:t.email});return d({type:`email_verification`,pending:{...t,verification:`pending`,resendAt:Pl(n.resendAfterSec,Date.now())}}),r(`success`,`Confirmation link sent to ${t.displayEmail}`),!0}catch(e){return El(e)?r(`error`,`This host build cannot resend the link yet — use "Resend" on the website sign-in page`):i(e,`Resend link`),!1}},dismissEmailVerification(){d({type:`email_verification`,pending:null})},async logout(){try{d({type:`account`,account:await e.logout()}),d({type:`credentials`,credentials:[]})}catch(e){i(e,`Logout`)}},async remoteUnlockHost(t,n){try{let i=await e.remoteUnlockHost(t,n);return i.ok?(r(`info`,`Device unlocked — its sessions are available again.`),fe(),!0):(r(`error`,i.error===`host_too_old`?`That PC runs an older OonaCode — update it first.`:i.error===`wrong_keys`?`Wrong password — the device stays locked.`:`Could not unlock: `+(i.error??`unknown`)),!1)}catch(e){return r(`error`,cd(e)),!1}},async lockDevice(){try{let t=await e.lock();d({type:`account`,account:t})}catch(e){r(`error`,cd(e))}},async unlock(t,n={}){try{return d({type:`account`,account:await e.unlock({password:t,...n.keepUnlocked===void 0?{}:{keepUnlocked:n.keepUnlocked}})}),j(),!0}catch(e){if(!n.onError)return i(e,`Unlock`),!1;let t=e instanceof Sl&&e.isUnauthorized&&!vp(e);return t&&g.current?.(),n.onError(e instanceof Sl&&vp(e)?`Wrong password — the vault stays locked.`:t?`Reconnecting to the OonaCode host — press Unlock again in a moment.`:`Could not unlock: ${cd(e)}`),e instanceof Sl&&e.isUnauthorized||_.current?.(e,{source:`action`,action:`Unlock`}),!1}},async completeVaultRekey(t){if(!e.completeVaultRekey)return a(`finish a password reset`),!1;try{let n=await e.completeVaultRekey({password:t});return d({type:`account`,account:n.account}),d({type:`recovery_key`,recoveryKey:{code:n.recoveryCode,devicesSignedOut:n.devicesSignedOut,warning:n.warning??null}}),r(n.warning?`info`:`success`,n.warning?`Vault moved to your new password — with a warning, see your Recovery Key below`:`Vault moved to your new password`),j(),v(),!0}catch(e){return El(e)?a(`finish a password reset`):i(e,`Move vault`),!1}},async revokeVaultRekey(t){if(!e.revokeVaultRekey)return a(`abandon a password reset`),!1;try{let n=await e.revokeVaultRekey({acknowledgeDataLoss:Rs,password:t});return d({type:`account`,account:n.account}),d({type:`credentials`,credentials:[]}),r(`info`,`Vault discarded — every saved key and ${n.discarded.historySessions} mirrored session(s) are gone. Unlock with your new password to start a fresh vault.`),!0}catch(e){return El(e)?a(`abandon a password reset`):i(e,`Discard vault`),!1}},dismissRecoveryKey(){d({type:`recovery_key`,recoveryKey:null})},async setDeviceUnlock(t,n){if(!e.setDeviceUnlock)return a(`keep itself unlocked`),!1;try{let i=await e.setDeviceUnlock({enabled:t,...n?{password:n}:{}});return d({type:`account`,account:i}),r(`success`,t?`This PC will stay unlocked after a restart`:`This PC will ask for your password after a restart`),!0}catch(e){return El(e)?a(`keep itself unlocked`):i(e,`Keep me unlocked`),!1}},async probeCredential(t,n){try{let r=await e.probeCredential(t,n);return{ok:r.ok,...r.error?{error:r.error}:{}}}catch(e){return{ok:!1,error:cd(e)}}},async addCredential(t){try{return await e.addCredential(t),r(`success`,`Credential saved to your vault`),await j(),v(),!0}catch(e){return i(e,`Add credential`),!1}},async deleteCredential(t){try{await e.deleteCredential(t),r(`info`,`Credential revoked on all devices`),await j(),v()}catch(e){i(e,`Revoke`)}},async testCredential(t){try{let n=await e.testCredential(t);r(n.ok?`success`:`error`,n.ok?`Credential works (${n.latencyMs??`?`} ms)`:`Test failed: ${n.error??`unknown error`}`)}catch(e){i(e,`Test`)}},async testProvider(t){try{let n=await e.testProvider(t);r(n.ok?`success`:`error`,n.ok?`${t} reachable (${n.latencyMs??`?`} ms)`:`${t}: ${n.error??`test failed`}`),v()}catch(e){i(e,`Test`)}},async syncNow(){try{let t=await e.syncNow();r(t.ok?`success`:`error`,t.ok?`Vault synced (rev ${t.rev??`?`})`:`Sync failed: ${t.error??`unknown`}`),A(),j()}catch(e){i(e,`Sync`)}},async claudeLogin(){d({type:`claude_login_mode`,mode:`open`}),d({type:`connect_provider`,providerId:null}),d({type:`dialog`,dialog:`claude-login`})},toast:r,dismissToast(e){d({type:`dismiss_toast`,id:e})},openDialog(e,t){d({type:`dialog`,dialog:e,connectProviderId:t??null})},openProviderConnect(e){d({type:`connect_provider`,providerId:e})},openSettings(e){d({type:`settings_section`,section:e}),d({type:`dialog`,dialog:`settings`})},openClaudeLogin(e){d({type:`claude_login_mode`,mode:e}),d({type:`connect_provider`,providerId:null}),d({type:`dialog`,dialog:`claude-login`})},openOauthLogin(e){d({type:`connect_provider`,providerId:null}),d({type:`dialog`,dialog:`oauth-login`}),d({type:`oauth_login_provider`,providerId:e})},setSidebar(e){d({type:`sidebar`,open:e})},openFile(e){let t=f.current.currentSessionId;t&&d({type:`file_open`,sessionId:t,path:e})},closeFile(e){let t=f.current.currentSessionId;t&&d({type:`file_close`,sessionId:t,path:e})},activateFile(e){let t=f.current.currentSessionId;t&&d({type:`file_activate`,sessionId:t,path:e})},showChat(e){let t=e??f.current.currentSessionId;t&&d({type:`file_show_chat`,sessionId:t})}}},[e,t,n]);(0,v.useEffect)(()=>{let e=yd(y.current);e&&d({type:`prefs`,prefs:e})},[]),(0,v.useEffect)(()=>{let e=!1,n=t.onStatus((t,n)=>{d({type:`connection`,status:t,detail:n??null}),t===`open`&&e&&(k.refreshInfo(),k.refreshVaultProjects(),k.refreshAgentTools()),t===`open`&&(e=!0)}),r=(e,t)=>{Kf(e,f.current.prefs)&&Jf(qf(e,t),Yf())},i=e=>{let t=f.current.transcripts[e]?.session??f.current.sessions.find(t=>t.id===e);return t?sd(t):`OonaCode session`},a=e=>{let t=Date.now(),n=e.type===`session_state`?dp(f.current,e.session.id):void 0;for(let n of sp(e,t))d(n);if(e.type===`session_state`&&xf(n,e.session)&&k.refreshPlanSoon(),e.type===`permission_request`){let t=`${e.sessionId}:${e.request.requestId}`;if(T.current.has(t)||(T.current.size>=Zf&&T.current.clear(),T.current.add(t),e.settled===!0))return;r(`permissionRequired`,{sessionTitle:i(e.sessionId),toolName:e.request.toolName,sessionId:e.sessionId})}else if(e.type===`turn_finished`)r(`agentFinished`,{sessionTitle:i(e.sessionId),isError:e.result.isError,sessionId:e.sessionId});else if(e.type===`error`)r(`errorOccurred`,{sessionTitle:e.sessionId?i(e.sessionId):`OonaCode`,detail:e.code,...e.sessionId?{sessionId:e.sessionId}:{}});else if(e.type===`scheduled_tasks_changed`)d({type:`scheduled_tasks_changed`});else if(e.type===`session_list_changed`)k.refreshSessions(),e.reason===`deleted`&&d({type:`session_removed`,id:e.sessionId});else if(e.type===`account_changed`&&e.reason===`agent_tools`)k.refreshAgentTools();else if(e.type===`account_changed`)k.refreshAccount(),k.refreshPlan(),k.refreshProviders(),k.refreshAgentTools(),k.refreshInfo(),e.reason!==`provider`&&k.refreshCredentials(),e.reason!==`provider`&&(k.refreshHosts(),k.refreshClaudeSubscription(),k.refreshVaultProjects());else if(e.type===`welcome`){k.refreshSessions();let e=f.current.currentSessionId;e&&k.catchUpEntries(e)}},o=kl({isStreamFrame:ap,deliver:e=>{for(let t of e)a(t)},batchMs:c,isHidden:op}),s=t.onAny(e=>o.push(e)),l=()=>{op()||o.flush()};return typeof document<`u`&&document.addEventListener(`visibilitychange`,l),t.connect(),()=>{n(),s(),typeof document<`u`&&document.removeEventListener(`visibilitychange`,l),o.dispose(),t.close()}},[t,k,c]),(0,v.useEffect)(()=>{if(typeof window>`u`||typeof document>`u`)return;let e=()=>k.refreshPlanSoon(),t=()=>{document.visibilityState===`visible`&&k.refreshPlanSoon()};return window.addEventListener(`focus`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`focus`,e),document.removeEventListener(`visibilitychange`,t)}},[k]),(0,v.useEffect)(()=>{k.refreshInfo(),k.refreshPlan(),k.refreshSessions(),k.refreshProjects(),k.refreshProviders(),k.refreshAgentTools(),k.refreshSettings(),k.refreshAccount(),k.refreshCredentials(),k.refreshHosts()},[k]),(0,v.useEffect)(()=>{r&&d({type:`select_session`,id:r})},[r]);let te=(0,v.useRef)(!1),A=(0,v.useRef)(!1),j=(0,v.useRef)(null),ne=(0,v.useRef)(!0);(0,v.useEffect)(()=>(ne.current=!0,()=>{ne.current=!1}),[]);let re=u.sessionListLoaded,M=u.remote.loaded,N=u.settings!==null,[ie,ae]=(0,v.useState)(!1);(0,v.useEffect)(()=>{if(M&&N||ie)return;let e=setTimeout(()=>ae(!0),Qf);return()=>clearTimeout(e)},[M,N,ie]),(0,v.useEffect)(()=>{if(te.current||!re||!N||!M&&!ie)return;te.current=!0;let t=Ld(u.prefs),n=new Set(u.sessions.map(e=>e.id)),r=Id(u.prefs).filter(({id:e})=>!n.has(e)).map(({id:e,title:t},n)=>({...ld(e,n),title:t})),i=new Set(r.map(e=>e.id));if(t.ids.length===0)return;let a=Fd(u.prefs),o=t.ids.filter(e=>a[e]!==void 0),s=e=>{let n=Md(t,[...u.sessions.map(e=>e.id),...o,...i,...e]),s=[...n.ids],c=f.current.currentSessionId;if(c&&!s.includes(c)&&s.push(c),s.length!==0){j.current=f.current.tabs,d({type:`restore_tabs`,ids:s,activeId:c??n.activeId,drafts:r.filter(e=>s.includes(e.id))});for(let e of s){let t=a[e];t!==void 0&&k.openRemoteSession(t,e,{focus:!1})}}},c=t.ids.filter(e=>!n.has(e)&&a[e]===void 0&&!i.has(e));if(c.length===0){s([]);return}A.current=!0,Promise.all(c.map(t=>e.getSession(t).then(()=>t,e=>e instanceof Sl&&e.status===404?null:t))).then(e=>{A.current=!1,ne.current&&s(e.filter(e=>e!==null))})},[re,M,ie,N,u.prefs,u.sessions,e,k]);let oe=u.tabs,se=u.prefs,ce=u.remote.tabs,le=u.drafts,ue=u.settings!==null;(0,v.useEffect)(()=>{if(!ue||!te.current||A.current)return;if(j.current!==null){if(oe===j.current)return;j.current=null}let e={};for(let t of oe.ids){let n=ce[t];n&&(e[t]=n.hostId)}Bd(oe,se,e,le)&&(te.current=!0,k.savePrefs(Pd(oe,e,le)))},[oe,se,ce,le,ue,re,k]);let de=u.tabs.ids.join(`,`);(0,v.useEffect)(()=>{let e=de?de.split(`,`):[];for(let n of e){if(f.current.remote.tabs[n]||f.current.drafts[n])continue;let e=f.current.transcripts[n];t.subscribe(n,e?.lastSeq??void 0),!e?.hydrated&&(d({type:`transcript_loading`,sessionId:n,loading:!0}),(async()=>{try{await k.hydrateSession(n),C.current.add(n)}catch(e){e instanceof Sl&&e.isUnauthorized?g.current?.():k.toast(`error`,`Could not load session: ${cd(e)}`)}finally{d({type:`transcript_loading`,sessionId:n,loading:!1})}})())}return()=>{for(let n of e){if(f.current.tabs.ids.includes(n)||f.current.remote.tabs[n])continue;let e=f.current.transcripts[n];(!e||e.status===`idle`||e.status===`error`)&&t.unsubscribe(n)}}},[de,e,t,k]),(0,v.useEffect)(()=>{if(n)return()=>n.close()},[n]);let fe=u.settings?.theme??`system`,pe=u.prefs.themeColors;(0,v.useEffect)(()=>{if(typeof document>`u`)return;let e=document.documentElement,t=typeof window.matchMedia==`function`?window.matchMedia(`(prefers-color-scheme: dark)`):null,n=()=>{let n=fe===`dark`?`dark`:fe===`light`?`light`:t?.matches?`dark`:`light`,r=pe[n];for(let t of nc){let n=r[t];n?e.style.setProperty(`--${t}`,n):e.style.removeProperty(`--${t}`)}};if(n(),!(fe!==`system`||!t||typeof t.addEventListener!=`function`))return t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)},[fe,pe]),(0,v.useEffect)(()=>{if(typeof document>`u`)return;let e=document.documentElement;fe===`system`?e.removeAttribute(`data-theme`):e.setAttribute(`data-theme`,fe),window.oonacode?.setTheme?.(fe)},[fe]);let me=u.account?.gatewayUrl??u.settings?.gatewayUrl??null,he=k.checkUpdates,ge=(0,v.useRef)(0);(0,v.useEffect)(()=>{if(!me)return;let e=()=>{ge.current=Date.now(),he(!1)};e();let t=setInterval(e,cp),n=()=>{typeof document<`u`&&document.visibilityState===`hidden`||Date.now()-ge.current<3e5||e()};return window.addEventListener(`focus`,n),document.addEventListener(`visibilitychange`,n),()=>{clearInterval(t),window.removeEventListener(`focus`,n),document.removeEventListener(`visibilitychange`,n)}},[me,he]);let _e=k.openDialog,ye=k.newTab,be=k.savePrefs,xe=(0,v.useCallback)(e=>{switch(e){case`sign-in`:f.current.account?.loggedIn&&_e(`account`);break;case`settings`:_e(`settings`);break;case`new-tab`:ye();break;case`new-project`:f.current.account?.loggedIn&&(d({type:`projects_new`}),_e(`projects`));break;case`check-updates`:he(!0);break;case`import-chats`:f.current.account?.loggedIn&&_e(`import-claude`);break;case`export-chats`:f.current.account?.loggedIn&&_e(`export-chats`);break;case`toggle-session-panel`:be({sessionPanelOpen:!f.current.prefs.sessionPanelOpen});break;case`toggle-sidebar`:be({sidebarPinned:!f.current.prefs.sidebarPinned})}},[_e,ye,he,be]);(0,v.useEffect)(()=>{let e=typeof window<`u`?window.oonacode:void 0;if(e?.onMenuCommand)return e.onMenuCommand(xe)},[xe]),(0,v.useEffect)(()=>{let e=window.oonacode;if(e?.onOpenSession)return e.onOpenSession(e=>{if(f.current.remote.tabs[e]||f.current.drafts[e]){k.selectSession(e);return}!f.current.sessions.some(t=>t.id===e)&&!f.current.transcripts[e]||k.selectSession(e)})},[k]),(0,v.useEffect)(()=>{let e=typeof window<`u`?window.oonacode:void 0;if(e?.onUpdateEvent)return e.onUpdateEvent(e=>d({type:`update_event`,event:e}))},[]);let Se=(0,v.useMemo)(()=>({state:u,dispatch:d,actions:k,api:e,socket:t}),[u,k,e,t]);return(0,U.jsx)(fp.Provider,{value:Se,children:l})}var xp=h(),Sp=`inline-block shrink-0`;function Cp(e){return!!e&&/(^|\s)(w-|h-|size-|min-w-|min-h-)/.test(e)}var wp=`w-4 h-4`;function G(e,{className:t,title:n},r=`0 0 24 24`){return(0,U.jsxs)(`svg`,{className:H(Sp,Cp(t)?``:wp,t),width:`1em`,height:`1em`,viewBox:r,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":!n||void 0,role:n?`img`:void 0,children:[n?(0,U.jsx)(`title`,{children:n}):null,e]})}var K={Menu:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`3`,y1:`6`,x2:`21`,y2:`6`}),(0,U.jsx)(`line`,{x1:`3`,y1:`12`,x2:`21`,y2:`12`}),(0,U.jsx)(`line`,{x1:`3`,y1:`18`,x2:`21`,y2:`18`})]}),e),More:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`5`,r:`1.6`}),(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.6`}),(0,U.jsx)(`circle`,{cx:`12`,cy:`19`,r:`1.6`})]}),e),Plus:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),(0,U.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})]}),e),Send:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`22`,y1:`2`,x2:`11`,y2:`13`}),(0,U.jsx)(`polygon`,{points:`22 2 15 22 11 13 2 9 22 2`})]}),e),Stop:e=>G((0,U.jsx)(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`}),e),Chevron:e=>G((0,U.jsx)(`polyline`,{points:e.open?`6 9 12 15 18 9`:`9 6 15 12 9 18`}),e),Settings:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3`}),(0,U.jsx)(`path`,{d:`M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09a1.65 1.65 0 0 0-1-1.51 1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09a1.65 1.65 0 0 0 1.51-1 1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z`})]}),e),User:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2`}),(0,U.jsx)(`circle`,{cx:`12`,cy:`7`,r:`4`})]}),e),Stethoscope:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M4.8 2.3A.3.3 0 1 0 5 2H4a2 2 0 0 0-2 2v5a6 6 0 0 0 6 6 6 6 0 0 0 6-6V4a2 2 0 0 0-2-2h-1a.2.2 0 1 0 .3.3`}),(0,U.jsx)(`path`,{d:`M8 15v1a6 6 0 0 0 6 6 6 6 0 0 0 6-6v-4`}),(0,U.jsx)(`circle`,{cx:`20`,cy:`10`,r:`2`})]}),e),Copy:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`}),(0,U.jsx)(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})]}),e),Check:e=>G((0,U.jsx)(`polyline`,{points:`20 6 9 17 4 12`}),e),Reply:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polyline`,{points:`9 17 4 12 9 7`}),(0,U.jsx)(`path`,{d:`M20 18v-2a4 4 0 0 0-4-4H4`})]}),e),Clock:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,U.jsx)(`polyline`,{points:`12 7 12 12 15 14`})]}),e),X:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,U.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]}),e),Alert:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,U.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,U.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),e),Bug:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M8 2l1.88 1.88`}),(0,U.jsx)(`path`,{d:`M14.12 3.88L16 2`}),(0,U.jsx)(`path`,{d:`M9 7.13v-1a3.003 3.003 0 1 1 6 0v1`}),(0,U.jsx)(`path`,{d:`M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6z`}),(0,U.jsx)(`path`,{d:`M12 20v-9`}),(0,U.jsx)(`path`,{d:`M6.53 9C4.6 8.8 3 7.1 3 5`}),(0,U.jsx)(`path`,{d:`M6 13H2`}),(0,U.jsx)(`path`,{d:`M3 21c0-2.1 1.7-3.9 3.8-4`}),(0,U.jsx)(`path`,{d:`M20.97 5c0 2.1-1.6 3.8-3.5 4`}),(0,U.jsx)(`path`,{d:`M22 13h-4`}),(0,U.jsx)(`path`,{d:`M17.2 17c2.1.1 3.8 1.9 3.8 4`})]}),e),Spinner:e=>G((0,U.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`}),{...e,className:H(`spin`,e.className??`w-4 h-4`)}),Tool:e=>G((0,U.jsx)(`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z`}),e),Brain:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M9.5 2a2.5 2.5 0 0 1 2.5 2.5V20a2.5 2.5 0 0 1-5 0 2.5 2.5 0 0 1-2.5-2.5v-1A2.5 2.5 0 0 1 2 14v-1a2.5 2.5 0 0 1 2.5-2.5V9A2.5 2.5 0 0 1 7 6.5V4.5A2.5 2.5 0 0 1 9.5 2z`}),(0,U.jsx)(`path`,{d:`M14.5 2A2.5 2.5 0 0 0 12 4.5V20a2.5 2.5 0 0 0 5 0 2.5 2.5 0 0 0 2.5-2.5v-1A2.5 2.5 0 0 0 22 14v-1a2.5 2.5 0 0 0-2.5-2.5V9A2.5 2.5 0 0 0 17 6.5V4.5A2.5 2.5 0 0 0 14.5 2z`})]}),e),ArrowDown:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),(0,U.jsx)(`polyline`,{points:`19 12 12 19 5 12`})]}),e),Paperclip:e=>G((0,U.jsx)(`path`,{d:`M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48`}),e),Folder:e=>G((0,U.jsx)(`path`,{d:`M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z`}),e),Project:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polygon`,{points:`12 2 2 7 12 12 22 7 12 2`}),(0,U.jsx)(`polyline`,{points:`2 17 12 22 22 17`}),(0,U.jsx)(`polyline`,{points:`2 12 12 17 22 12`})]}),e),File:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),(0,U.jsx)(`polyline`,{points:`14 2 14 8 20 8`})]}),e),ChevronRight:e=>G((0,U.jsx)(`polyline`,{points:`9 18 15 12 9 6`}),e),Play:e=>G((0,U.jsx)(`polygon`,{points:`6 4 20 12 6 20 6 4`}),e),Music:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M9 18V5l12-2v13`}),(0,U.jsx)(`circle`,{cx:`6`,cy:`18`,r:`3`}),(0,U.jsx)(`circle`,{cx:`18`,cy:`16`,r:`3`})]}),e),Film:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`2`,y:`2`,width:`20`,height:`20`,rx:`2.18`,ry:`2.18`}),(0,U.jsx)(`line`,{x1:`7`,y1:`2`,x2:`7`,y2:`22`}),(0,U.jsx)(`line`,{x1:`17`,y1:`2`,x2:`17`,y2:`22`}),(0,U.jsx)(`line`,{x1:`2`,y1:`12`,x2:`22`,y2:`12`}),(0,U.jsx)(`line`,{x1:`2`,y1:`7`,x2:`7`,y2:`7`}),(0,U.jsx)(`line`,{x1:`2`,y1:`17`,x2:`7`,y2:`17`}),(0,U.jsx)(`line`,{x1:`17`,y1:`17`,x2:`22`,y2:`17`}),(0,U.jsx)(`line`,{x1:`17`,y1:`7`,x2:`22`,y2:`7`})]}),e),Image:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,ry:`2`}),(0,U.jsx)(`circle`,{cx:`8.5`,cy:`8.5`,r:`1.5`}),(0,U.jsx)(`polyline`,{points:`21 15 16 10 5 21`})]}),e),ExternalLink:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`}),(0,U.jsx)(`polyline`,{points:`15 3 21 3 21 9`}),(0,U.jsx)(`line`,{x1:`10`,y1:`14`,x2:`21`,y2:`3`})]}),e),ExpandAll:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polyline`,{points:`7 5 12 10 17 5`}),(0,U.jsx)(`polyline`,{points:`7 13 12 18 17 13`})]}),e),CollapseAll:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polyline`,{points:`7 11 12 6 17 11`}),(0,U.jsx)(`polyline`,{points:`7 19 12 14 17 19`})]}),e),Palette:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M12 3a9 9 0 1 0 0 18c.9 0 1.6-.7 1.6-1.6 0-.4-.2-.8-.4-1.1-.3-.3-.4-.7-.4-1.1 0-.9.7-1.6 1.6-1.6H16a5 5 0 0 0 5-5c0-3.9-4-7.6-9-7.6Z`}),(0,U.jsx)(`circle`,{cx:`7.5`,cy:`11.5`,r:`1`}),(0,U.jsx)(`circle`,{cx:`10.5`,cy:`7.5`,r:`1`}),(0,U.jsx)(`circle`,{cx:`15.5`,cy:`8.5`,r:`1`})]}),e),Bot:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`3`,y:`11`,width:`18`,height:`10`,rx:`2`}),(0,U.jsx)(`circle`,{cx:`12`,cy:`5`,r:`2`}),(0,U.jsx)(`path`,{d:`M12 7v4`}),(0,U.jsx)(`line`,{x1:`8`,y1:`16`,x2:`8`,y2:`16`}),(0,U.jsx)(`line`,{x1:`16`,y1:`16`,x2:`16`,y2:`16`})]}),e),Trash:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polyline`,{points:`3 6 5 6 21 6`}),(0,U.jsx)(`path`,{d:`M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6`}),(0,U.jsx)(`path`,{d:`M10 11v6M14 11v6`}),(0,U.jsx)(`path`,{d:`M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2`})]}),e),Refresh:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`polyline`,{points:`23 4 23 10 17 10`}),(0,U.jsx)(`path`,{d:`M20.49 15a9 9 0 1 1-2.12-9.36L23 10`})]}),e),Search:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,U.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),e),Shield:e=>G((0,U.jsx)(`path`,{d:`M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z`}),e),Coins:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`ellipse`,{cx:`8`,cy:`6`,rx:`5`,ry:`2.5`}),(0,U.jsx)(`path`,{d:`M3 6v4c0 1.4 2.2 2.5 5 2.5s5-1.1 5-2.5V6`}),(0,U.jsx)(`path`,{d:`M3 10v4c0 1.4 2.2 2.5 5 2.5 1 0 1.9-.13 2.7-.36`}),(0,U.jsx)(`circle`,{cx:`16`,cy:`15`,r:`5`}),(0,U.jsx)(`path`,{d:`M16 13v4M14.5 15h3`})]}),e),Lock:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`5`,y:`11`,width:`14`,height:`9`,rx:`2`}),(0,U.jsx)(`path`,{d:`M8 11V7a4 4 0 0 1 8 0v4`})]}),e),Fork:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`18`,r:`3`}),(0,U.jsx)(`circle`,{cx:`6`,cy:`6`,r:`3`}),(0,U.jsx)(`circle`,{cx:`18`,cy:`6`,r:`3`}),(0,U.jsx)(`path`,{d:`M18 9a9 9 0 0 1-9 9M6 9a9 9 0 0 0 9 9`})]}),e),Edit:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`}),(0,U.jsx)(`path`,{d:`M18.5 2.5a2.12 2.12 0 0 1 3 3L12 15l-4 1 1-4z`})]}),e),Upload:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}),(0,U.jsx)(`polyline`,{points:`17 8 12 3 7 8`}),(0,U.jsx)(`line`,{x1:`12`,y1:`3`,x2:`12`,y2:`15`})]}),e),Download:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}),(0,U.jsx)(`polyline`,{points:`7 10 12 15 17 10`}),(0,U.jsx)(`line`,{x1:`12`,y1:`15`,x2:`12`,y2:`3`})]}),e),Info:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,U.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12`,y2:`12`}),(0,U.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12.01`,y2:`8`})]}),e),Panel:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`}),(0,U.jsx)(`line`,{x1:`15`,y1:`3`,x2:`15`,y2:`21`})]}),e),LogIn:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`}),(0,U.jsx)(`polyline`,{points:`10 17 15 12 10 7`}),(0,U.jsx)(`line`,{x1:`15`,y1:`12`,x2:`3`,y2:`12`})]}),e),Globe:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,U.jsx)(`line`,{x1:`2`,y1:`12`,x2:`22`,y2:`12`}),(0,U.jsx)(`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`})]}),e),Monitor:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`}),(0,U.jsx)(`line`,{x1:`8`,y1:`21`,x2:`16`,y2:`21`}),(0,U.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12`,y2:`21`})]}),e),Bell:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M18 8a6 6 0 0 0-12 0c0 7-3 9-3 9h18s-3-2-3-9`}),(0,U.jsx)(`path`,{d:`M13.73 21a2 2 0 0 1-3.46 0`})]}),e),Sliders:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`4`,y1:`21`,x2:`4`,y2:`14`}),(0,U.jsx)(`line`,{x1:`4`,y1:`10`,x2:`4`,y2:`3`}),(0,U.jsx)(`line`,{x1:`12`,y1:`21`,x2:`12`,y2:`12`}),(0,U.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`3`}),(0,U.jsx)(`line`,{x1:`20`,y1:`21`,x2:`20`,y2:`16`}),(0,U.jsx)(`line`,{x1:`20`,y1:`12`,x2:`20`,y2:`3`}),(0,U.jsx)(`line`,{x1:`1`,y1:`14`,x2:`7`,y2:`14`}),(0,U.jsx)(`line`,{x1:`9`,y1:`8`,x2:`15`,y2:`8`}),(0,U.jsx)(`line`,{x1:`17`,y1:`16`,x2:`23`,y2:`16`})]}),e),Pin:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M12 17v5`}),(0,U.jsx)(`path`,{d:`M9 10.76V6h6v4.76a2 2 0 0 0 1.11 1.79l1.78.9A2 2 0 0 1 19 15.24V16H5v-.76a2 2 0 0 1 1.11-1.79l1.78-.9A2 2 0 0 0 9 10.76z`}),(0,U.jsx)(`path`,{d:`M8 3h8`})]}),e),PanelLeft:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`rect`,{x:`3`,y:`4`,width:`18`,height:`16`,rx:`2`}),(0,U.jsx)(`line`,{x1:`9`,y1:`4`,x2:`9`,y2:`20`})]}),e),GitBranch:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`line`,{x1:`6`,y1:`3`,x2:`6`,y2:`15`}),(0,U.jsx)(`circle`,{cx:`18`,cy:`6`,r:`3`}),(0,U.jsx)(`circle`,{cx:`6`,cy:`18`,r:`3`}),(0,U.jsx)(`path`,{d:`M18 9a9 9 0 0 1-9 9`})]}),e),Plug:e=>G((0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`path`,{d:`M12 22v-5`}),(0,U.jsx)(`path`,{d:`M9 7V2M15 7V2`}),(0,U.jsx)(`path`,{d:`M6 7h12v4a6 6 0 0 1-12 0z`})]}),e),Key:e=>G((0,U.jsx)(`path`,{d:`M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3`}),e)},Tp={primary:`bg-accent text-accent-fg hover:opacity-90 border-transparent`,inverse:`bg-inverse-bg text-inverse-fg hover:opacity-90 border-transparent`,secondary:`bg-surface-2 text-fg hover:bg-surface-3 border-border`,ghost:`bg-transparent text-fg-muted hover:bg-surface-2 hover:text-fg border-transparent`,danger:`bg-danger-soft text-danger hover:opacity-90 border-transparent`,success:`bg-ok-soft text-ok hover:opacity-90 border-transparent`};function q({variant:e=`secondary`,size:t=`md`,busy:n,className:r,children:i,disabled:a,...o}){return(0,U.jsxs)(`button`,{type:`button`,...o,disabled:a||n,className:H(`inline-flex items-center gap-1.5 rounded-md border font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed whitespace-nowrap`,t===`sm`?`px-2 py-1 text-xs`:`px-3 py-1.5 text-sm`,Tp[e],r),children:[n?(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`}):null,i]})}function J({label:e,className:t,children:n,...r}){return(0,U.jsx)(`button`,{type:`button`,"aria-label":e,title:e,...r,className:H(`inline-flex items-center justify-center rounded-md p-1.5 text-fg-muted hover:bg-surface-2 hover:text-fg disabled:opacity-50`,t),children:n})}function Ep({label:e,details:t}){let n=(0,v.useRef)(null),[r,i]=(0,v.useState)(null),a=()=>{let e=n.current?.getBoundingClientRect();if(!e||typeof window>`u`)return;let t=Math.max(8,Math.min(e.left-12,window.innerWidth-320-8)),r=e.bottom+6,a=r+180>window.innerHeight?Math.max(8,e.top-186):r;i({left:t,top:a})},o=()=>i(null);return(0,U.jsxs)(`span`,{ref:n,className:`inline-flex align-middle`,onMouseEnter:a,onMouseLeave:o,onFocus:a,onBlur:o,onKeyDown:e=>{e.key!==`Escape`||!r||(e.stopPropagation(),o())},children:[(0,U.jsx)(`span`,{tabIndex:0,role:`button`,"aria-label":`About ${e}`,className:`cursor-help rounded text-fg-faint hover:text-fg focus:text-fg focus:outline-none`,"data-testid":`info-tip`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a()},children:(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5`})}),r&&typeof document<`u`?(0,xp.createPortal)((0,U.jsx)(`div`,{role:`tooltip`,className:`fixed z-[60] w-80 rounded-md border border-border bg-surface px-3 py-2 text-xs leading-snug text-fg shadow-lg`,style:{left:r.left,top:r.top},"data-testid":`info-tip-card`,children:t}),document.body):null]})}function Dp({items:e}){return(0,U.jsx)(`ul`,{className:`list-disc space-y-1 pl-4`,children:e.map(e=>(0,U.jsx)(`li`,{children:e},e))})}function Op({label:e,hint:t,details:n,children:r,className:i}){return(0,U.jsxs)(`label`,{className:H(`flex flex-col gap-1 text-sm`,i),children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5 font-medium text-fg`,children:[e,n&&n.length>0?(0,U.jsx)(Ep,{label:e,details:(0,U.jsx)(Dp,{items:n})}):null]}),r,t?(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,children:t}):null]})}var Y=`w-full rounded-md border border-border bg-surface px-2.5 py-1.5 text-sm text-fg placeholder:text-fg-faint focus:border-accent focus:outline-none`,kp=Y;function X({tone:e=`neutral`,children:t,className:n}){return(0,U.jsx)(`span`,{className:H(`inline-flex items-center rounded px-1.5 py-0.5 text-[11px] font-medium leading-4`,{neutral:`bg-surface-2 text-fg-muted`,ok:`bg-ok-soft text-ok`,warn:`bg-warn-soft text-warn`,danger:`bg-danger-soft text-danger`,accent:`bg-accent-soft text-accent`,think:`bg-think-soft text-think`}[e],n),children:t})}function Ap({open:e,title:t,onClose:n,children:r,footer:i,wide:a}){let o=(0,v.useRef)(null);return(0,v.useEffect)(()=>{if(!e)return;let t=document.activeElement,r=o.current;(r?.querySelector(`input, select, textarea, button:not([data-close])`)??r)?.focus();let i=e=>{e.key===`Escape`&&(e.stopPropagation(),n())};return document.addEventListener(`keydown`,i),()=>{document.removeEventListener(`keydown`,i),t?.focus?.()}},[e,n]),e?(0,xp.createPortal)((0,U.jsx)(`div`,{className:`fixed inset-0 z-40 flex items-end sm:items-center justify-center bg-black/40 p-0 sm:p-4`,onMouseDown:e=>e.target===e.currentTarget&&n(),children:(0,U.jsxs)(`div`,{ref:o,role:`dialog`,"aria-modal":`true`,"aria-label":t,tabIndex:-1,className:H(`flex max-h-[95vh] w-full flex-col rounded-t-xl sm:rounded-xl border border-border bg-surface shadow-lg outline-none`,a?`sm:max-w-3xl`:`sm:max-w-lg`),children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border px-4 py-3`,children:[(0,U.jsx)(`h2`,{className:`text-base font-semibold`,children:t}),(0,U.jsx)(J,{label:`Close`,"data-close":!0,onClick:n,children:(0,U.jsx)(K.X,{})})]}),(0,U.jsx)(`div`,{className:`flex-1 overflow-y-auto px-4 py-3`,children:r}),i?(0,U.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 border-t border-border px-4 py-3`,children:i}):null]})}),document.body):null}function jp({checked:e,onChange:t,label:n,hint:r,details:i,disabled:a,testId:o}){return(0,U.jsxs)(`label`,{className:H(`flex items-start justify-between gap-3 py-2`,a&&`opacity-60`),...o?{"data-testid":o}:{},children:[(0,U.jsxs)(`span`,{className:`min-w-0`,children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5 text-sm font-medium text-fg`,children:[n,i&&i.length>0?(0,U.jsx)(Ep,{label:n,details:(0,U.jsx)(Dp,{items:i})}):null]}),r?(0,U.jsx)(`span`,{className:`mt-0.5 block text-xs text-fg-faint`,children:r}):null]}),(0,U.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,"aria-label":n,disabled:a,onClick:()=>t(!e),className:H(`relative mt-0.5 h-5 w-9 shrink-0 rounded-full border transition-colors`,e?`border-accent bg-accent`:`border-border bg-surface-2`),children:(0,U.jsx)(`span`,{className:H(`absolute top-0.5 h-3.5 w-3.5 rounded-full bg-surface transition-all`,e?`left-[1.15rem]`:`left-0.5`)})})]})}function Mp({value:e,options:t,onChange:n,label:r}){return(0,U.jsx)(`div`,{className:`inline-flex rounded-md border border-border bg-surface-2 p-0.5`,role:`radiogroup`,"aria-label":r,children:t.map(t=>(0,U.jsx)(`button`,{type:`button`,role:`radio`,"aria-checked":e===t.value,onClick:()=>n(t.value),className:H(`rounded px-2.5 py-1 text-xs font-medium transition-colors`,e===t.value?`bg-surface text-fg shadow-sm`:`text-fg-muted hover:text-fg`),children:t.label},t.value))})}function Np({icon:e,title:t,hint:n,action:r}){return(0,U.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-8 text-center text-fg-muted`,children:[e?(0,U.jsx)(`div`,{className:`text-fg-faint`,children:e}):null,(0,U.jsx)(`div`,{className:`text-base font-medium text-fg`,children:t}),n?(0,U.jsx)(`div`,{className:`max-w-md text-sm`,children:n}):null,r?(0,U.jsx)(`div`,{className:`mt-2`,children:r}):null]})}function Pp({open:e,title:t,message:n,confirmLabel:r=`Delete`,danger:i=!0,onConfirm:a,onClose:o}){return(0,U.jsx)(Ap,{open:e,title:t,onClose:o,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{"data-close":!0,onClick:o,children:`Cancel`}),(0,U.jsx)(q,{variant:i?`danger`:`primary`,"data-testid":`confirm-dialog-accept`,onClick:()=>{a(),o()},children:r})]}),children:(0,U.jsx)(`div`,{className:`text-sm text-fg-muted`,children:n})})}function Fp({open:e,title:t,label:n,initialValue:r=``,password:i=!1,submitLabel:a=`Save`,onSubmit:o,onClose:s}){let[c,l]=(0,v.useState)(r);(0,v.useEffect)(()=>{e&&l(r)},[e,r]);let u=()=>{let e=c.trim();e&&(o(e),s())};return(0,U.jsx)(Ap,{open:e,title:t,onClose:s,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{"data-close":!0,onClick:s,children:`Cancel`}),(0,U.jsx)(q,{variant:`primary`,"data-testid":`prompt-dialog-submit`,onClick:u,children:a})]}),children:(0,U.jsx)(Op,{label:n,children:(0,U.jsx)(`input`,{className:Y,type:i?`password`:`text`,value:c,"data-testid":`prompt-dialog-input`,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),u())}})})})}function Ip({checked:e,onChange:t}){let{state:n}=W();return pl(n.account)===`unavailable`?null:(0,U.jsxs)(`label`,{className:`flex items-start gap-2 text-sm`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-1`,checked:e,onChange:e=>t(e.target.checked),"data-testid":`keep-unlocked`}),(0,U.jsxs)(`span`,{children:[(0,U.jsx)(`span`,{className:`block`,children:`Keep me unlocked on this PC`}),(0,U.jsx)(`span`,{className:`block text-xs text-fg-faint`,children:zs})]})]})}function Lp({view:e}){let{actions:t}=W(),[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(``),[u,d]=(0,v.useState)(``),f=async()=>{if(n){a(!0);try{await t.completeVaultRekey(n)&&r(``)}finally{a(!1)}}},p=async()=>{if(!(c.trim()!==`discard-my-vault-and-history`||!u)){a(!0);try{await t.revokeVaultRekey(u)&&d(``)}finally{a(!1),l(``)}}};return(0,U.jsxs)(`div`,{role:`status`,"data-testid":`vault-rekey-pending`,className:`space-y-3 rounded-md border border-warn/50 bg-warn-soft p-3 text-sm`,children:[(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(K.Alert,{className:`mt-0.5 w-4 h-4 shrink-0 text-warn`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,U.jsx)(`p`,{className:`font-medium text-fg`,children:_l(e)}),e.canFinishHere?(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`This PC still holds the key from before the reset, so it can move your vault to the new password. Nothing is lost. Type your new password to confirm; you will get a new vault Recovery Key.`}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:vl(e)}),(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,"data-testid":`rekey-recovery-exit`,children:yl})]})]})]}),e.canFinishHere?(0,U.jsxs)(`form`,{className:`flex items-end gap-2`,onSubmit:e=>{e.preventDefault(),f()},children:[(0,U.jsx)(Op,{label:`New password`,className:`flex-1`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:n,onChange:e=>r(e.target.value),autoComplete:`current-password`,"data-testid":`rekey-password`})}),(0,U.jsx)(q,{type:`submit`,variant:`primary`,busy:i,disabled:!n,"data-testid":`rekey-finish`,children:`Move my vault to the new password`})]}):null,o?(0,U.jsxs)(`div`,{className:`space-y-2 rounded-md border border-danger/40 bg-surface p-3`,children:[(0,U.jsxs)(`p`,{className:`text-xs text-danger`,children:[`Discarding permanently deletes every saved provider key, the mirrored session history on the server, and the vault Recovery Key that could still have moved them. There is no undo. Type `,(0,U.jsx)(`span`,{className:`font-mono`,children:Rs}),` and your current password to confirm.`]}),(0,U.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,U.jsx)(Op,{label:`Your new password`,className:`flex-1`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:u,onChange:e=>d(e.target.value),autoComplete:`current-password`,"data-testid":`rekey-discard-password`})}),(0,U.jsx)(Op,{label:`Confirmation`,className:`flex-1`,children:(0,U.jsx)(`input`,{className:Y,value:c,onChange:e=>l(e.target.value),autoComplete:`off`,spellCheck:!1,"data-testid":`rekey-discard-ack`})}),(0,U.jsx)(q,{variant:`danger`,busy:i,disabled:c.trim()!==`discard-my-vault-and-history`||!u,onClick:()=>void p(),"data-testid":`rekey-discard-confirm`,children:`Discard vault and history`}),(0,U.jsx)(q,{variant:`ghost`,onClick:()=>s(!1),children:`Cancel`})]})]}):(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>s(!0),"data-testid":`rekey-discard`,children:e.canFinishHere?`This was not me — discard the vault instead`:`Last resort: discard the vault`})]})}function Rp(){let{state:e,actions:t}=W(),n=e.recoveryKey,[r,i]=(0,v.useState)(!1);if(!n)return null;let a=async()=>{try{await navigator.clipboard?.writeText(n.code),i(!0)}catch{t.toast(`error`,`Could not copy — select the code and copy it by hand`)}};return(0,U.jsxs)(`div`,{role:`status`,"data-testid":`recovery-key`,className:`space-y-2 rounded-md border border-ok/50 bg-ok-soft p-3 text-sm`,children:[(0,U.jsx)(`p`,{className:`font-medium text-fg`,children:`Your new vault Recovery Key`}),(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`Write it down now — this is the only copy, and OonaCode does not store it. It unlocks your vault data if you ever forget the password. It is not a 2FA backup code.`}),(0,U.jsx)(`div`,{className:`select-all rounded-md border border-border bg-surface px-3 py-2 font-mono text-base tracking-wider`,"data-testid":`recovery-key-code`,children:n.code}),n.devicesSignedOut>0?(0,U.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[n.devicesSignedOut,` other device`,n.devicesSignedOut===1?` was`:`s were`,` signed out; sign in there with the new password.`]}):null,n.warning?(0,U.jsx)(`p`,{className:`rounded-md border border-warn/50 bg-warn-soft px-2 py-1.5 text-xs text-fg`,"data-testid":`recovery-key-warning`,children:n.warning}):null,(0,U.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,U.jsxs)(q,{size:`sm`,onClick:()=>void a(),children:[(0,U.jsx)(K.Copy,{className:`w-3.5 h-3.5`}),` `,r?`Copied`:`Copy`]}),(0,U.jsx)(q,{size:`sm`,variant:`primary`,onClick:()=>t.dismissRecoveryKey(),"data-testid":`recovery-key-done`,children:`I have saved it`})]})]})}function zp(){let{state:e,actions:t}=W(),[n,r]=(0,v.useState)(!1),[i,a]=(0,v.useState)(``),[o,s]=(0,v.useState)(!1),c=pl(e.account);if(c===`unavailable`||c===`pending_rekey`)return null;let l=async e=>{s(!0);try{await t.setDeviceUnlock(e,e?i:void 0)&&(r(!1),a(``))}finally{s(!1)}};return c===`armed`?(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs`,"data-testid":`device-unlock`,children:[(0,U.jsx)(X,{tone:`ok`,children:`stays unlocked on this PC`}),(0,U.jsx)(q,{size:`sm`,busy:o,onClick:()=>void l(!1),children:`Turn off`})]}):n?(0,U.jsxs)(`form`,{className:`space-y-2 rounded-md border border-border bg-surface-2 p-3`,"data-testid":`device-unlock`,onSubmit:e=>{e.preventDefault(),l(!0)},children:[(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,children:zs}),(0,U.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,U.jsx)(Op,{label:`Password`,className:`flex-1`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:i,onChange:e=>a(e.target.value),autoComplete:`current-password`})}),(0,U.jsx)(q,{type:`submit`,variant:`primary`,busy:o,disabled:!i,children:`Keep me unlocked`}),(0,U.jsx)(q,{variant:`ghost`,onClick:()=>r(!1),children:`Cancel`})]})]}):(0,U.jsx)(q,{size:`sm`,onClick:()=>r(!0),"data-testid":`device-unlock`,children:`Keep me unlocked on this PC…`})}function Bp({pending:e}){let{actions:t}=W(),[n,r]=(0,v.useState)(()=>Date.now()),[i,a]=(0,v.useState)(!1);(0,v.useEffect)(()=>{if(r(Date.now()),e.resendAt<=Date.now())return;let t=setInterval(()=>{let n=Date.now();r(n),n>=e.resendAt&&clearInterval(t)},1e3);return()=>clearInterval(t)},[e.resendAt]);let o=Fl(e,n),s=async()=>{a(!0);try{await t.resendVerification()}finally{a(!1)}};return(0,U.jsxs)(`div`,{role:`status`,"data-testid":`email-verification`,className:`space-y-2 rounded-md border border-warn/50 bg-warn-soft p-3 text-sm`,children:[(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(K.Alert,{className:`mt-0.5 w-4 h-4 shrink-0 text-warn`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`p`,{className:`font-medium text-fg`,children:Ll(e)}),(0,U.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:`Open the link on any device, then log in again here. Check the spam folder if it does not arrive.`})]})]}),(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(q,{size:`sm`,variant:`primary`,busy:i,disabled:o>0,onClick:()=>void s(),"data-testid":`resend-verification`,children:o>0?`Resend link (${o}s)`:`Resend link`}),(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>t.dismissEmailVerification(),children:`Dismiss`})]})]})}function Vp(){let{state:e,actions:t}=W(),[n,r]=(0,v.useState)(e.settings?.gatewayUrl||x),[i,a]=(0,v.useState)(``),[o,s]=(0,v.useState)(``),[c,l]=(0,v.useState)(e.connection.hostName??``),[u,d]=(0,v.useState)(!1),[f,p]=(0,v.useState)(!0),[m,h]=(0,v.useState)(!1);(0,v.useEffect)(()=>{e.settings?.gatewayUrl&&n===x&&r(e.settings.gatewayUrl)},[e.settings?.gatewayUrl,n]);let g=async()=>{if(!(!n.trim()||!i.trim()||!o)){h(!0);try{await t.login({gatewayUrl:n.trim(),email:i.trim(),password:o,register:u,...c.trim()?{deviceName:c.trim()}:{},keepUnlocked:f})!==`verification_pending`&&s(``)}finally{h(!1)}}};return(0,U.jsxs)(`form`,{className:`space-y-3`,onSubmit:e=>{e.preventDefault(),g()},children:[(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`Log in to sync your credentials across your own devices (zero-knowledge: the server only ever sees ciphertext) and to route API-key providers through your gateway.`}),e.emailVerification?(0,U.jsx)(Bp,{pending:e.emailVerification}):null,(0,U.jsx)(Op,{label:`Gateway URL`,children:(0,U.jsx)(`input`,{className:Y,value:n,onChange:e=>r(e.target.value),placeholder:x,autoComplete:`url`,spellCheck:!1})}),(0,U.jsx)(Op,{label:`Email`,children:(0,U.jsx)(`input`,{className:Y,type:`email`,value:i,onChange:e=>a(e.target.value),autoComplete:`username`})}),(0,U.jsx)(Op,{label:`Password`,hint:`Also unlocks your vault. It never leaves this PC; only a derived proof is sent.`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:o,onChange:e=>s(e.target.value),autoComplete:u?`new-password`:`current-password`})}),(0,U.jsx)(Op,{label:`Device name`,children:(0,U.jsx)(`input`,{className:Y,value:c,onChange:e=>l(e.target.value),placeholder:`Office PC`})}),(0,U.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,U.jsx)(`input`,{type:`checkbox`,checked:u,onChange:e=>d(e.target.checked)}),` `,`Create a new account`]}),(0,U.jsx)(Ip,{checked:f,onChange:p}),(0,U.jsx)(q,{type:`submit`,variant:`primary`,busy:m,disabled:!n.trim()||!i.trim()||!o,children:u?`Register`:`Log in`})]})}function Hp(){let{actions:e}=W(),[t,n]=(0,v.useState)(``),[r,i]=(0,v.useState)(!0),[a,o]=(0,v.useState)(!1);return(0,U.jsxs)(`form`,{className:`space-y-2`,onSubmit:i=>{i.preventDefault(),o(!0),e.unlock(t,{keepUnlocked:r}).finally(()=>{o(!1),n(``)})},children:[(0,U.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,U.jsx)(Op,{label:`Vault locked — enter your password`,className:`flex-1`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:t,onChange:e=>n(e.target.value),autoComplete:`current-password`})}),(0,U.jsx)(q,{type:`submit`,variant:`primary`,busy:a,disabled:!t,children:`Unlock`})]}),(0,U.jsx)(Ip,{checked:r,onChange:i})]})}function Up(){let{state:e}=W(),t=e.plan,n=e=>e.toLocaleString(void 0,{maximumFractionDigits:0});return(0,U.jsxs)(`section`,{className:`space-y-2`,"data-testid":`account-plan`,children:[(0,U.jsx)(`h3`,{className:`text-sm font-semibold`,children:`Plan & credits`}),t===null?(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`Sign in to see your plan and credit balance.`}):(0,U.jsxs)(`div`,{className:`space-y-2 rounded-md border border-border px-3 py-2.5 text-sm`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Plan`}),(0,U.jsxs)(`span`,{className:`font-medium`,children:[t.planName,t.status===`none`?` (lapsed)`:``]})]}),(0,U.jsx)(`div`,{className:`h-px bg-border`}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Plan credits`}),(0,U.jsx)(`span`,{className:`font-semibold tabular-nums`,"data-testid":`account-credits`,children:n(t.credits.balance)})]}),(0,U.jsxs)(`div`,{className:`text-[11px] text-fg-faint`,children:[t.credits.monthlyGrant>0?`Tops up to ${n(t.credits.monthlyGrant)} each 30-day period. `:`No monthly top-up on this plan; the signup gift and anything you buy never expire. `,`Free models never draw on it.`]})]})]})}function Wp({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.account,a=ml(i);return(0,v.useEffect)(()=>{e&&(r.refreshAccount(),r.refreshPlan())},[e,r]),(0,U.jsx)(Ap,{open:e,title:`Account`,onClose:t,children:(0,U.jsxs)(`div`,{className:`space-y-5`,children:[i?.loggedIn?(0,U.jsxs)(`section`,{className:`space-y-2`,children:[(0,U.jsx)(Rp,{}),(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`font-medium`,children:i.email}),a?(0,U.jsx)(X,{tone:`warn`,children:`vault waiting for a password reset to finish`}):(0,U.jsx)(X,{tone:i.vaultUnlocked?`ok`:`warn`,children:i.vaultUnlocked?`vault unlocked`:`vault locked`}),(0,U.jsxs)(X,{tone:i.syncStatus===`error`?`danger`:i.syncStatus===`offline`?`warn`:`neutral`,children:[`sync: `,i.syncStatus]}),i.vaultRev===null?null:(0,U.jsxs)(X,{children:[`rev `,i.vaultRev]})]}),(0,U.jsxs)(`div`,{className:`text-xs text-fg-faint`,children:[i.gatewayUrl,` · device `,i.deviceId?.slice(0,8)??`?`,` · last sync`,` `,i.lastSyncAt?ed(i.lastSyncAt):`never`,i.syncError?(0,U.jsxs)(`span`,{className:`text-danger`,children:[` · `,i.syncError]}):null]}),a?(0,U.jsx)(Lp,{view:a}):null,!a&&!i.vaultUnlocked?(0,U.jsx)(Hp,{}):null,i.vaultUnlocked?(0,U.jsx)(zp,{}):null,(0,U.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,U.jsxs)(q,{onClick:()=>void r.syncNow(),disabled:!i.vaultUnlocked,children:[(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`}),` Sync now`]}),(0,U.jsx)(q,{variant:`danger`,onClick:()=>void r.logout(),children:`Log out`})]})]}):(0,U.jsx)(Vp,{}),(0,U.jsx)(Up,{})]})})}function Gp(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var Kp=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qp=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Jp={};function Yp(e,t){return((t||Jp).jsx?qp:Kp).test(e)}var Xp=/[ \t\n\f\r]/g;function Zp(e){return typeof e==`object`?e.type===`text`&&Qp(e.value):Qp(e)}function Qp(e){return e.replace(Xp,``)===``}var $p=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};$p.prototype.normal={},$p.prototype.property={},$p.prototype.space=void 0;function em(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new $p(n,r,t)}function tm(e){return e.toLowerCase()}var nm=class{constructor(e,t){this.attribute=t,this.property=e}};nm.prototype.attribute=``,nm.prototype.booleanish=!1,nm.prototype.boolean=!1,nm.prototype.commaOrSpaceSeparated=!1,nm.prototype.commaSeparated=!1,nm.prototype.defined=!1,nm.prototype.mustUseProperty=!1,nm.prototype.number=!1,nm.prototype.overloadedBoolean=!1,nm.prototype.property=``,nm.prototype.spaceSeparated=!1,nm.prototype.space=void 0;var rm=s({boolean:()=>Z,booleanish:()=>am,commaOrSpaceSeparated:()=>lm,commaSeparated:()=>cm,number:()=>Q,overloadedBoolean:()=>om,spaceSeparated:()=>sm}),im=0,Z=um(),am=um(),om=um(),Q=um(),sm=um(),cm=um(),lm=um();function um(){return 2**++im}var dm=Object.keys(rm),fm=class extends nm{constructor(e,t,n,r){let i=-1;if(super(e,t),pm(this,`space`,r),typeof n==`number`)for(;++i<dm.length;){let e=dm[i];pm(this,dm[i],(n&rm[e])===rm[e])}}};fm.prototype.defined=!0;function pm(e,t,n){n&&(e[t]=n)}function mm(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new fm(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[tm(r)]=r,n[tm(a.attribute)]=r}return new $p(t,n,e.space)}var hm=mm({properties:{ariaActiveDescendant:null,ariaAtomic:am,ariaAutoComplete:null,ariaBusy:am,ariaChecked:am,ariaColCount:Q,ariaColIndex:Q,ariaColSpan:Q,ariaControls:sm,ariaCurrent:null,ariaDescribedBy:sm,ariaDetails:null,ariaDisabled:am,ariaDropEffect:sm,ariaErrorMessage:null,ariaExpanded:am,ariaFlowTo:sm,ariaGrabbed:am,ariaHasPopup:null,ariaHidden:am,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:sm,ariaLevel:Q,ariaLive:null,ariaModal:am,ariaMultiLine:am,ariaMultiSelectable:am,ariaOrientation:null,ariaOwns:sm,ariaPlaceholder:null,ariaPosInSet:Q,ariaPressed:am,ariaReadOnly:am,ariaRelevant:null,ariaRequired:am,ariaRoleDescription:sm,ariaRowCount:Q,ariaRowIndex:Q,ariaRowSpan:Q,ariaSelected:am,ariaSetSize:Q,ariaSort:null,ariaValueMax:Q,ariaValueMin:Q,ariaValueNow:Q,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function gm(e,t){return t in e?e[t]:t}function _m(e,t){return gm(e,t.toLowerCase())}var vm=mm({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:cm,acceptCharset:sm,accessKey:sm,action:null,allow:null,allowFullScreen:Z,allowPaymentRequest:Z,allowUserMedia:Z,alpha:Z,alt:null,as:null,async:Z,autoCapitalize:null,autoComplete:sm,autoFocus:Z,autoPlay:Z,blocking:sm,capture:null,charSet:null,checked:Z,cite:null,className:sm,closedBy:null,colorSpace:null,cols:Q,colSpan:Q,command:null,commandFor:null,content:null,contentEditable:am,controls:Z,controlsList:sm,coords:Q|cm,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Z,defer:Z,dir:null,dirName:null,disabled:Z,download:om,draggable:am,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Z,formTarget:null,headers:sm,height:Q,hidden:om,high:Q,href:null,hrefLang:null,htmlFor:sm,httpEquiv:sm,id:null,imageSizes:null,imageSrcSet:null,inert:Z,inputMode:null,integrity:null,is:null,isMap:Z,itemId:null,itemProp:sm,itemRef:sm,itemScope:Z,itemType:sm,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Z,low:Q,manifest:null,max:null,maxLength:Q,media:null,method:null,min:null,minLength:Q,multiple:Z,muted:Z,name:null,nonce:null,noModule:Z,noValidate:Z,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Z,optimum:Q,pattern:null,ping:sm,placeholder:null,playsInline:Z,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Z,referrerPolicy:null,rel:sm,required:Z,reversed:Z,rows:Q,rowSpan:Q,sandbox:sm,scope:null,scoped:Z,seamless:Z,selected:Z,shadowRootClonable:Z,shadowRootCustomElementRegistry:Z,shadowRootDelegatesFocus:Z,shadowRootMode:null,shadowRootSerializable:Z,shape:null,size:Q,sizes:null,slot:null,span:Q,spellCheck:am,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Q,step:null,style:null,tabIndex:Q,target:null,title:null,translate:null,type:null,typeMustMatch:Z,useMap:null,value:am,width:Q,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:sm,axis:null,background:null,bgColor:null,border:Q,borderColor:null,bottomMargin:Q,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Z,declare:Z,event:null,face:null,frame:null,frameBorder:null,hSpace:Q,leftMargin:Q,link:null,longDesc:null,lowSrc:null,marginHeight:Q,marginWidth:Q,noResize:Z,noHref:Z,noShade:Z,noWrap:Z,object:null,profile:null,prompt:null,rev:null,rightMargin:Q,rules:null,scheme:null,scrolling:am,standby:null,summary:null,text:null,topMargin:Q,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Q,allowTransparency:null,autoCorrect:null,autoSave:null,credentialless:Z,disablePictureInPicture:Z,disableRemotePlayback:Z,exportParts:cm,part:sm,prefix:null,property:null,results:Q,security:null,unselectable:null},space:`html`,transform:_m}),ym=mm({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,dominantBaseline:`dominant-baseline`,enableBackground:`enable-background`,fillOpacity:`fill-opacity`,fillRule:`fill-rule`,floodColor:`flood-color`,floodOpacity:`flood-opacity`,fontFamily:`font-family`,fontSize:`font-size`,fontSizeAdjust:`font-size-adjust`,fontStretch:`font-stretch`,fontStyle:`font-style`,fontVariant:`font-variant`,fontWeight:`font-weight`,glyphName:`glyph-name`,glyphOrientationHorizontal:`glyph-orientation-horizontal`,glyphOrientationVertical:`glyph-orientation-vertical`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,maskType:`mask-type`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,renderingIntent:`rendering-intent`,shapeRendering:`shape-rendering`,stopColor:`stop-color`,stopOpacity:`stop-opacity`,strikethroughPosition:`strikethrough-position`,strikethroughThickness:`strikethrough-thickness`,strokeDashArray:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeLineCap:`stroke-linecap`,strokeLineJoin:`stroke-linejoin`,strokeMiterLimit:`stroke-miterlimit`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,underlinePosition:`underline-position`,underlineThickness:`underline-thickness`,unicodeBidi:`unicode-bidi`,unicodeRange:`unicode-range`,unitsPerEm:`units-per-em`,vAlphabetic:`v-alphabetic`,vHanging:`v-hanging`,vIdeographic:`v-ideographic`,vMathematical:`v-mathematical`,vectorEffect:`vector-effect`,vertAdvY:`vert-adv-y`,vertOriginX:`vert-origin-x`,vertOriginY:`vert-origin-y`,wordSpacing:`word-spacing`,writingMode:`writing-mode`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:lm,accentHeight:Q,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Q,amplitude:Q,arabicForm:null,ascent:Q,attributeName:null,attributeType:null,azimuth:Q,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Q,by:null,calcMode:null,capHeight:Q,className:sm,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Q,diffuseConstant:Q,direction:null,display:null,dur:null,divisor:Q,dominantBaseline:null,download:Z,dx:null,dy:null,edgeMode:null,editable:null,elevation:Q,enableBackground:null,end:null,event:null,exponent:Q,externalResourcesRequired:null,fill:null,fillOpacity:Q,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:cm,g2:cm,glyphName:cm,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Q,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Q,horizOriginX:Q,horizOriginY:Q,id:null,ideographic:Q,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Q,k:Q,k1:Q,k2:Q,k3:Q,k4:Q,kernelMatrix:lm,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Q,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskType:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Q,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Q,overlineThickness:Q,paintOrder:null,panose1:null,path:null,pathLength:Q,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:sm,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Q,pointsAtY:Q,pointsAtZ:Q,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:lm,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:lm,rev:lm,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:lm,requiredFeatures:lm,requiredFonts:lm,requiredFormats:lm,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Q,specularExponent:Q,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Q,strikethroughThickness:Q,string:null,stroke:null,strokeDashArray:lm,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Q,strokeOpacity:Q,strokeWidth:null,style:null,surfaceScale:Q,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:lm,tabIndex:Q,tableValues:null,target:null,targetX:Q,targetY:Q,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:lm,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Q,underlineThickness:Q,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Q,values:null,vAlphabetic:Q,vMathematical:Q,vectorEffect:null,vHanging:Q,vIdeographic:Q,version:null,vertAdvY:Q,vertOriginX:Q,vertOriginY:Q,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Q,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:gm}),bm=mm({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),xm=mm({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:_m}),Sm=mm({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),Cm={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},wm=/[A-Z]/g,Tm=/-[a-z]/g,Em=/^data[-\w.:]+$/i;function Dm(e,t){let n=tm(t),r=t,i=nm;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&Em.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(Tm,km);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!Tm.test(e)){let n=e.replace(wm,Om);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=fm}return new i(r,t)}function Om(e){return`-`+e.toLowerCase()}function km(e){return e.charAt(1).toUpperCase()}var Am=em([hm,vm,bm,xm,Sm],`html`),jm=em([hm,ym,bm,xm,Sm],`svg`);function Mm(e){return e.join(` `).trim()}var Nm=o(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g;function u(e,t){if(typeof e!=`string`)throw TypeError(`First argument must be a string`);if(!e)return[];t||={};var l=1,u=1;function f(e){var t=e.match(r);t&&(l+=t.length);var n=e.lastIndexOf(`
|
|
94
|
+
`);u=~n?e.length-n:u+e.length}function p(){var e={line:l,column:u};return function(t){return t.position=new m(e),_(),t}}function m(e){this.start=e,this.end={line:l,column:u},this.source=t.source}m.prototype.content=e;function h(n){var r=Error(t.source+`:`+l+`:`+u+`: `+n);if(r.reason=n,r.filename=t.source,r.line=l,r.column=u,r.source=e,!t.silent)throw r}function g(t){var n=t.exec(e);if(n){var r=n[0];return f(r),e=e.slice(r.length),n}}function _(){g(i)}function v(e){var t;for(e||=[];t=y();)t!==!1&&e.push(t);return e}function y(){var t=p();if(e.charAt(0)==`/`&&e.charAt(1)==`*`){for(var n=2;e.charAt(n)!=``&&(e.charAt(n)!=`*`||e.charAt(n+1)!=`/`);)++n;if(n+=2,e.charAt(n-1)===``)return h(`End of comment missing`);var r=e.slice(2,n-2);return u+=2,f(r),e=e.slice(n),u+=2,t({type:`comment`,comment:r})}}function b(){var e=p(),t=g(a);if(t){if(y(),!g(o))return h(`property missing ':'`);var r=g(s),i=e({type:`declaration`,property:d(t[0].replace(n,``)),value:r?d(r[0].replace(n,``)):``});return g(c),i}}function x(){var e=[];v(e);for(var t;t=b();)t!==!1&&(e.push(t),v(e));return e}return _(),x()}function d(e){return e?e.replace(l,``):``}t.exports=u})),Pm=o((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var n=t(Nm());function r(e,t){let r=null;if(!e||typeof e!=`string`)return r;let i=(0,n.default)(e),a=typeof t==`function`;return i.forEach(e=>{if(e.type!==`declaration`)return;let{property:n,value:i}=e;a?t(n,i,e):i&&(r||={},r[n]=i)}),r}})),Fm=o((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.camelCase=void 0;var t=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(e){return!e||r.test(e)||t.test(e)},s=function(e,t){return t.toUpperCase()},c=function(e,t){return`${t}-`};e.camelCase=function(e,t){return t===void 0&&(t={}),o(e)?e:(e=e.toLowerCase(),e=t.reactCompat?e.replace(a,c):e.replace(i,c),e.replace(n,s))}})),Im=o(((e,t)=>{var n=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(Pm()),r=Fm();function i(e,t){var i={};return!e||typeof e!=`string`||(0,n.default)(e,function(e,n){e&&n&&(i[(0,r.camelCase)(e,t)]=n)}),i}i.default=i,t.exports=i})),Lm=zm(`end`),Rm=zm(`start`);function zm(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function Bm(e){let t=Rm(e),n=Lm(e);if(t&&n)return{start:t,end:n}}function Vm(e){return!e||typeof e!=`object`?``:`position`in e||`type`in e?Um(e.position):`start`in e||`end`in e?Um(e):`line`in e||`column`in e?Hm(e):``}function Hm(e){return Wm(e&&e.line)+`:`+Wm(e&&e.column)}function Um(e){return Hm(e&&e.start)+`-`+Hm(e&&e.end)}function Wm(e){return e&&typeof e==`number`?e:1}var Gm=class extends Error{constructor(e,t,n){super(),typeof t==`string`&&(n=t,t=void 0);let r=``,i={},a=!1;if(t&&(i=`line`in t&&`column`in t||`start`in t&&`end`in t?{place:t}:`type`in t?{ancestors:[t],place:t.position}:{...t}),typeof e==`string`?r=e:!i.cause&&e&&(a=!0,r=e.message,i.cause=e),!i.ruleId&&!i.source&&typeof n==`string`){let e=n.indexOf(`:`);e===-1?i.ruleId=n:(i.source=n.slice(0,e),i.ruleId=n.slice(e+1))}if(!i.place&&i.ancestors&&i.ancestors){let e=i.ancestors[i.ancestors.length-1];e&&(i.place=e.position)}let o=i.place&&`start`in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file=``,this.message=r,this.line=o?o.line:void 0,this.name=Vm(i.place)||`1:1`,this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=a&&i.cause&&typeof i.cause.stack==`string`?i.cause.stack:``,this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}};Gm.prototype.file=``,Gm.prototype.name=``,Gm.prototype.reason=``,Gm.prototype.message=``,Gm.prototype.stack=``,Gm.prototype.column=void 0,Gm.prototype.line=void 0,Gm.prototype.ancestors=void 0,Gm.prototype.cause=void 0,Gm.prototype.fatal=void 0,Gm.prototype.place=void 0,Gm.prototype.ruleId=void 0,Gm.prototype.source=void 0;var Km=l(Im(),1),qm={}.hasOwnProperty,Jm=new Map,Ym=/[A-Z]/g,Xm=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]),Zm=new Set([`td`,`th`]),Qm=`https://github.com/syntax-tree/hast-util-to-jsx-runtime`;function $m(e,t){if(!t||t.Fragment===void 0)throw TypeError("Expected `Fragment` in options");let n=t.filePath||void 0,r;if(t.development){if(typeof t.jsxDEV!=`function`)throw TypeError("Expected `jsxDEV` in options when `development: true`");r=uh(n,t.jsxDEV)}else{if(typeof t.jsx!=`function`)throw TypeError("Expected `jsx` in production options");if(typeof t.jsxs!=`function`)throw TypeError("Expected `jsxs` in production options");r=lh(n,t.jsx,t.jsxs)}let i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||`react`,evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space===`svg`?jm:Am,stylePropertyNameCase:t.stylePropertyNameCase||`dom`,tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=eh(i,e,void 0);return a&&typeof a!=`string`?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function eh(e,t,n){if(t.type===`element`)return th(e,t,n);if(t.type===`mdxFlowExpression`||t.type===`mdxTextExpression`)return nh(e,t);if(t.type===`mdxJsxFlowElement`||t.type===`mdxJsxTextElement`)return ih(e,t,n);if(t.type===`mdxjsEsm`)return rh(e,t);if(t.type===`root`)return ah(e,t,n);if(t.type===`text`)return oh(e,t)}function th(e,t,n){let r=e.schema,i=r;t.tagName.toLowerCase()===`svg`&&r.space===`html`&&(i=jm,e.schema=i),e.ancestors.push(t);let a=gh(e,t.tagName,!1),o=dh(e,t),s=ph(e,t);return Xm.has(t.tagName)&&(s=s.filter(function(e){return typeof e!=`string`||!Zp(e)})),sh(e,o,a,t),ch(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function nh(e,t){if(t.data&&t.data.estree&&e.evaluater){let n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}_h(e,t.position)}function rh(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);_h(e,t.position)}function ih(e,t,n){let r=e.schema,i=r;t.name===`svg`&&r.space===`html`&&(i=jm,e.schema=i),e.ancestors.push(t);let a=t.name===null?e.Fragment:gh(e,t.name,!0),o=fh(e,t),s=ph(e,t);return sh(e,o,a,t),ch(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function ah(e,t,n){let r={};return ch(r,ph(e,t)),e.create(t,e.Fragment,r,n)}function oh(e,t){return t.value}function sh(e,t,n,r){typeof n!=`string`&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ch(e,t){if(t.length>0){let n=t.length>1?t:t[0];n&&(e.children=n)}}function lh(e,t,n){return r;function r(e,r,i,a){let o=Array.isArray(i.children)?n:t;return a?o(r,i,a):o(r,i)}}function uh(e,t){return n;function n(n,r,i,a){let o=Array.isArray(i.children),s=Rm(n);return t(r,i,a,o,{columnNumber:s?s.column-1:void 0,fileName:e,lineNumber:s?s.line:void 0},void 0)}}function dh(e,t){let n={},r,i;for(i in t.properties)if(i!==`children`&&qm.call(t.properties,i)){let a=mh(e,i,t.properties[i]);if(a){let[i,o]=a;e.tableCellAlignToStyle&&i===`align`&&typeof o==`string`&&Zm.has(t.tagName)?r=o:n[i]=o}}if(r){let t=n.style||={};t[e.stylePropertyNameCase===`css`?`text-align`:`textAlign`]=r}return n}function fh(e,t){let n={};for(let r of t.attributes)if(r.type===`mdxJsxExpressionAttribute`){if(r.data&&r.data.estree&&e.evaluater){let t=r.data.estree.body[0];t.type;let i=t.expression;i.type;let a=i.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else _h(e,t.position)}else{let i=r.name,a;if(r.value&&typeof r.value==`object`){if(r.value.data&&r.value.data.estree&&e.evaluater){let t=r.value.data.estree.body[0];t.type,a=e.evaluater.evaluateExpression(t.expression)}else _h(e,t.position)}else a=r.value===null||r.value;n[i]=a}return n}function ph(e,t){let n=[],r=-1,i=e.passKeys?new Map:Jm;for(;++r<t.children.length;){let a=t.children[r],o;if(e.passKeys){let e=a.type===`element`?a.tagName:a.type===`mdxJsxFlowElement`||a.type===`mdxJsxTextElement`?a.name:void 0;if(e){let t=i.get(e)||0;o=e+`-`+t,i.set(e,t+1)}}let s=eh(e,a,o);s!==void 0&&n.push(s)}return n}function mh(e,t,n){let r=Dm(e.schema,t);if(!(n==null||typeof n==`number`&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?Gp(n):Mm(n)),r.property===`style`){let t=typeof n==`object`?n:hh(e,String(n));return e.stylePropertyNameCase===`css`&&(t=vh(t)),[`style`,t]}return[e.elementAttributeNameCase===`react`&&r.space?Cm[r.property]||r.property:r.attribute,n]}}function hh(e,t){try{return(0,Km.default)(t,{reactCompat:!0})}catch(t){if(e.ignoreInvalidStyle)return{};let n=t,r=new Gm("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:`style`,source:`hast-util-to-jsx-runtime`});throw r.file=e.filePath||void 0,r.url=Qm+`#cannot-parse-style-attribute`,r}}function gh(e,t,n){let r;if(!n)r={type:`Literal`,value:t};else if(t.includes(`.`)){let e=t.split(`.`),n=-1,i;for(;++n<e.length;){let t=Yp(e[n])?{type:`Identifier`,name:e[n]}:{type:`Literal`,value:e[n]};i=i?{type:`MemberExpression`,object:i,property:t,computed:!!(n&&t.type===`Literal`),optional:!1}:t}r=i}else r=Yp(t)&&!/^[a-z]/.test(t)?{type:`Identifier`,name:t}:{type:`Literal`,value:t};if(r.type===`Literal`){let t=r.value;return qm.call(e.components,t)?e.components[t]:t}if(e.evaluater)return e.evaluater.evaluateExpression(r);_h(e)}function _h(e,t){let n=new Gm("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:`mdx-estree`,source:`hast-util-to-jsx-runtime`});throw n.file=e.filePath||void 0,n.url=Qm+`#cannot-handle-mdx-estrees-without-createevaluater`,n}function vh(e){let t={},n;for(n in e)qm.call(e,n)&&(t[yh(n)]=e[n]);return t}function yh(e){let t=e.replace(Ym,bh);return t.slice(0,3)===`ms-`&&(t=`-`+t),t}function bh(e){return`-`+e.toLowerCase()}var xh={action:[`form`],cite:[`blockquote`,`del`,`ins`,`q`],data:[`object`],formAction:[`button`,`input`],href:[`a`,`area`,`base`,`link`],icon:[`menuitem`],itemId:null,manifest:[`html`],ping:[`a`,`area`],poster:[`video`],src:[`audio`,`embed`,`iframe`,`img`,`input`,`script`,`source`,`track`,`video`]},Sh={};function Ch(e,t){let n=t||Sh;return wh(e,typeof n.includeImageAlt!=`boolean`||n.includeImageAlt,typeof n.includeHtml!=`boolean`||n.includeHtml)}function wh(e,t,n){if(Eh(e)){if(`value`in e)return e.type===`html`&&!n?``:e.value;if(t&&`alt`in e&&e.alt)return e.alt;if(`children`in e)return Th(e.children,t,n)}return Array.isArray(e)?Th(e,t,n):``}function Th(e,t,n){let r=[],i=-1;for(;++i<e.length;)r[i]=wh(e[i],t,n);return r.join(``)}function Eh(e){return!!(e&&typeof e==`object`)}var Dh=document.createElement(`i`);function Oh(e){let t=`&`+e+`;`;Dh.innerHTML=t;let n=Dh.textContent;return n.charCodeAt(n.length-1)===59&&e!==`semi`?!1:n!==t&&n}function kh(e,t,n,r){let i=e.length,a=0,o;if(t=t<0?-t>i?0:i+t:t>i?i:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);a<r.length;)o=r.slice(a,a+1e4),o.unshift(t,0),e.splice(...o),a+=1e4,t+=1e4}function Ah(e,t){return e.length>0?(kh(e,e.length,0,t),e):t}var jh={}.hasOwnProperty;function Mh(e){let t={},n=-1;for(;++n<e.length;)Nh(t,e[n]);return t}function Nh(e,t){let n;for(n in t){let r=(jh.call(e,n)?e[n]:void 0)||(e[n]={}),i=t[n],a;if(i)for(a in i){jh.call(r,a)||(r[a]=[]);let e=i[a];Ph(r[a],Array.isArray(e)?e:e?[e]:[])}}}function Ph(e,t){let n=-1,r=[];for(;++n<t.length;)(t[n].add===`after`?e:r).push(t[n]);kh(e,0,0,r)}function Fh(e,t){let n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)==65535||(n&65535)==65534||n>1114111?`�`:String.fromCodePoint(n)}function Ih(e){return e.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}var Lh=Jh(/[A-Za-z]/),Rh=Jh(/[\dA-Za-z]/),zh=Jh(/[#-'*+\--9=?A-Z^-~]/);function Bh(e){return e!==null&&(e<32||e===127)}var Vh=Jh(/\d/),Hh=Jh(/[\dA-Fa-f]/),Uh=Jh(/[!-/:-@[-`{-~]/);function $(e){return e!==null&&e<-2}function Wh(e){return e!==null&&(e<0||e===32)}function Gh(e){return e===-2||e===-1||e===32}var Kh=Jh(/\p{P}|\p{S}/u),qh=Jh(/\s/);function Jh(e){return t;function t(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function Yh(e){let t=[],n=-1,r=0,i=0;for(;++n<e.length;){let a=e.charCodeAt(n),o=``;if(a===37&&Rh(e.charCodeAt(n+1))&&Rh(e.charCodeAt(n+2)))i=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(o=String.fromCharCode(a));else if(a>55295&&a<57344){let t=e.charCodeAt(n+1);a<56320&&t>56319&&t<57344?(o=String.fromCharCode(a,t),i=1):o=`�`}else o=String.fromCharCode(a);o&&=(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+i+1,``),i&&=(n+=i,0)}return t.join(``)+e.slice(r)}function Xh(e,t,n,r){let i=r?r-1:1/0,a=0;return o;function o(r){return Gh(r)?(e.enter(n),s(r)):t(r)}function s(r){return Gh(r)&&a++<i?(e.consume(r),s):(e.exit(n),t(r))}}var Zh={tokenize:Qh};function Qh(e){let t=e.attempt(this.parser.constructs.contentInitial,r,i),n;return t;function r(n){if(n===null){e.consume(n);return}return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Xh(e,t,`linePrefix`)}function i(t){return e.enter(`paragraph`),a(t)}function a(t){let r=e.enter(`chunkText`,{contentType:`text`,previous:n});return n&&(n.next=r),n=r,o(t)}function o(t){if(t===null){e.exit(`chunkText`),e.exit(`paragraph`),e.consume(t);return}return $(t)?(e.consume(t),e.exit(`chunkText`),a):(e.consume(t),o)}}var $h={tokenize:tg},eg={tokenize:ng};function tg(e){let t=this,n=[],r=0,i,a,o;return s;function s(i){if(r<n.length){let a=n[r];return t.containerState=a[1],e.attempt(a[0].continuation,c,l)(i)}return l(i)}function c(e){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&v();let n=t.events.length,a=n,o;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){o=t.events[a][1].end;break}_(r);let s=n;for(;s<t.events.length;)t.events[s][1].end={...o},s++;return kh(t.events,a+1,0,t.events.slice(n)),t.events.length=s,l(e)}return s(e)}function l(a){if(r===n.length){if(!i)return f(a);if(i.currentConstruct&&i.currentConstruct.concrete)return m(a);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(eg,u,d)(a)}function u(e){return i&&v(),_(r),f(e)}function d(e){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,m(e)}function f(n){return t.containerState={},e.attempt(eg,p,m)(n)}function p(e){return r++,n.push([t.currentConstruct,t.containerState]),f(e)}function m(n){if(n===null){i&&v(),_(0),e.consume(n);return}return i||=t.parser.flow(t.now()),e.enter(`chunkFlow`,{_tokenizer:i,contentType:`flow`,previous:a}),h(n)}function h(n){if(n===null){g(e.exit(`chunkFlow`),!0),_(0),e.consume(n);return}return $(n)?(e.consume(n),g(e.exit(`chunkFlow`)),r=0,t.interrupt=void 0,s):(e.consume(n),h)}function g(e,n){let s=t.sliceStream(e);if(n&&s.push(null),e.previous=a,a&&(a.next=e),a=e,i.defineSkip(e.start),i.write(s),t.parser.lazy[e.start.line]){let e=i.events.length;for(;e--;)if(i.events[e][1].start.offset<o&&(!i.events[e][1].end||i.events[e][1].end.offset>o))return;let n=t.events.length,a=n,s,c;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){if(s){c=t.events[a][1].end;break}s=!0}for(_(r),e=n;e<t.events.length;)t.events[e][1].end={...c},e++;kh(t.events,a+1,0,t.events.slice(n)),t.events.length=e}}function _(r){let i=n.length;for(;i-->r;){let r=n[i];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function v(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function ng(e,t,n){return Xh(e,e.attempt(this.parser.constructs.document,t,n),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}function rg(e){if(e===null||Wh(e)||qh(e))return 1;if(Kh(e))return 2}function ig(e,t,n){let r=[],i=-1;for(;++i<e.length;){let a=e[i].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}var ag={name:`attention`,resolveAll:og,tokenize:sg};function og(e,t){let n=-1,r,i,a,o,s,c,l,u;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`attentionSequence`&&e[n][1]._close){for(r=n;r--;)if(e[r][0]===`exit`&&e[r][1].type===`attentionSequence`&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;c=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[n][1].start};cg(d,-c),cg(f,c),o={type:c>1?`strongSequence`:`emphasisSequence`,start:d,end:{...e[r][1].end}},s={type:c>1?`strongSequence`:`emphasisSequence`,start:{...e[n][1].start},end:f},a={type:c>1?`strongText`:`emphasisText`,start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?`strong`:`emphasis`,start:{...o.start},end:{...s.end}},e[r][1].end={...o.start},e[n][1].start={...s.end},l=[],e[r][1].end.offset-e[r][1].start.offset&&(l=Ah(l,[[`enter`,e[r][1],t],[`exit`,e[r][1],t]])),l=Ah(l,[[`enter`,i,t],[`enter`,o,t],[`exit`,o,t],[`enter`,a,t]]),l=Ah(l,ig(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),l=Ah(l,[[`exit`,a,t],[`enter`,s,t],[`exit`,s,t],[`exit`,i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,l=Ah(l,[[`enter`,e[n][1],t],[`exit`,e[n][1],t]])):u=0,kh(e,r-1,n-r+3,l),n=r+l.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`attentionSequence`&&(e[n][1].type=`data`);return e}function sg(e,t){let n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=rg(r),a;return o;function o(t){return a=t,e.enter(`attentionSequence`),s(t)}function s(o){if(o===a)return e.consume(o),s;let c=e.exit(`attentionSequence`),l=rg(o),u=!l||l===2&&i||n.includes(o),d=!i||i===2&&l||n.includes(r);return c._open=!!(a===42?u:u&&(i||!d)),c._close=!!(a===42?d:d&&(l||!u)),t(o)}}function cg(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}var lg={name:`autolink`,tokenize:ug};function ug(e,t,n){let r=0;return i;function i(t){return e.enter(`autolink`),e.enter(`autolinkMarker`),e.consume(t),e.exit(`autolinkMarker`),e.enter(`autolinkProtocol`),a}function a(t){return Lh(t)?(e.consume(t),o):t===64?n(t):l(t)}function o(e){return e===43||e===45||e===46||Rh(e)?(r=1,s(e)):l(e)}function s(t){return t===58?(e.consume(t),r=0,c):(t===43||t===45||t===46||Rh(t))&&r++<32?(e.consume(t),s):(r=0,l(t))}function c(r){return r===62?(e.exit(`autolinkProtocol`),e.enter(`autolinkMarker`),e.consume(r),e.exit(`autolinkMarker`),e.exit(`autolink`),t):r===null||r===32||r===60||Bh(r)?n(r):(e.consume(r),c)}function l(t){return t===64?(e.consume(t),u):zh(t)?(e.consume(t),l):n(t)}function u(e){return Rh(e)?d(e):n(e)}function d(n){return n===46?(e.consume(n),r=0,u):n===62?(e.exit(`autolinkProtocol`).type=`autolinkEmail`,e.enter(`autolinkMarker`),e.consume(n),e.exit(`autolinkMarker`),e.exit(`autolink`),t):f(n)}function f(t){if((t===45||Rh(t))&&r++<63){let n=t===45?f:d;return e.consume(t),n}return n(t)}}var dg={partial:!0,tokenize:fg};function fg(e,t,n){return r;function r(t){return Gh(t)?Xh(e,i,`linePrefix`)(t):i(t)}function i(e){return e===null||$(e)?t(e):n(e)}}var pg={continuation:{tokenize:hg},exit:gg,name:`blockQuote`,tokenize:mg};function mg(e,t,n){let r=this;return i;function i(t){if(t===62){let n=r.containerState;return n.open||=(e.enter(`blockQuote`,{_container:!0}),!0),e.enter(`blockQuotePrefix`),e.enter(`blockQuoteMarker`),e.consume(t),e.exit(`blockQuoteMarker`),a}return n(t)}function a(n){return Gh(n)?(e.enter(`blockQuotePrefixWhitespace`),e.consume(n),e.exit(`blockQuotePrefixWhitespace`),e.exit(`blockQuotePrefix`),t):(e.exit(`blockQuotePrefix`),t(n))}}function hg(e,t,n){let r=this;return i;function i(t){return Gh(t)?Xh(e,a,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):a(t)}function a(r){return e.attempt(pg,t,n)(r)}}function gg(e){e.exit(`blockQuote`)}var _g={name:`characterEscape`,tokenize:vg};function vg(e,t,n){return r;function r(t){return e.enter(`characterEscape`),e.enter(`escapeMarker`),e.consume(t),e.exit(`escapeMarker`),i}function i(r){return Uh(r)?(e.enter(`characterEscapeValue`),e.consume(r),e.exit(`characterEscapeValue`),e.exit(`characterEscape`),t):n(r)}}var yg={name:`characterReference`,tokenize:bg};function bg(e,t,n){let r=this,i=0,a,o;return s;function s(t){return e.enter(`characterReference`),e.enter(`characterReferenceMarker`),e.consume(t),e.exit(`characterReferenceMarker`),c}function c(t){return t===35?(e.enter(`characterReferenceMarkerNumeric`),e.consume(t),e.exit(`characterReferenceMarkerNumeric`),l):(e.enter(`characterReferenceValue`),a=31,o=Rh,u(t))}function l(t){return t===88||t===120?(e.enter(`characterReferenceMarkerHexadecimal`),e.consume(t),e.exit(`characterReferenceMarkerHexadecimal`),e.enter(`characterReferenceValue`),a=6,o=Hh,u):(e.enter(`characterReferenceValue`),a=7,o=Vh,u(t))}function u(s){if(s===59&&i){let i=e.exit(`characterReferenceValue`);return o===Rh&&!Oh(r.sliceSerialize(i))?n(s):(e.enter(`characterReferenceMarker`),e.consume(s),e.exit(`characterReferenceMarker`),e.exit(`characterReference`),t)}return o(s)&&i++<a?(e.consume(s),u):n(s)}}var xg={partial:!0,tokenize:wg},Sg={concrete:!0,name:`codeFenced`,tokenize:Cg};function Cg(e,t,n){let r=this,i={partial:!0,tokenize:x},a=0,o=0,s;return c;function c(e){return l(e)}function l(t){let n=r.events[r.events.length-1];return a=n&&n[1].type===`linePrefix`?n[2].sliceSerialize(n[1],!0).length:0,s=t,e.enter(`codeFenced`),e.enter(`codeFencedFence`),e.enter(`codeFencedFenceSequence`),u(t)}function u(t){return t===s?(o++,e.consume(t),u):o<3?n(t):(e.exit(`codeFencedFenceSequence`),Gh(t)?Xh(e,d,`whitespace`)(t):d(t))}function d(n){return n===null||$(n)?(e.exit(`codeFencedFence`),r.interrupt?t(n):e.check(xg,h,b)(n)):(e.enter(`codeFencedFenceInfo`),e.enter(`chunkString`,{contentType:`string`}),f(n))}function f(t){return t===null||$(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),d(t)):Gh(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),Xh(e,p,`whitespace`)(t)):t===96&&t===s?n(t):(e.consume(t),f)}function p(t){return t===null||$(t)?d(t):(e.enter(`codeFencedFenceMeta`),e.enter(`chunkString`,{contentType:`string`}),m(t))}function m(t){return t===null||$(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceMeta`),d(t)):t===96&&t===s?n(t):(e.consume(t),m)}function h(t){return e.attempt(i,b,g)(t)}function g(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),_}function _(t){return a>0&&Gh(t)?Xh(e,v,`linePrefix`,a+1)(t):v(t)}function v(t){return t===null||$(t)?e.check(xg,h,b)(t):(e.enter(`codeFlowValue`),y(t))}function y(t){return t===null||$(t)?(e.exit(`codeFlowValue`),v(t)):(e.consume(t),y)}function b(n){return e.exit(`codeFenced`),t(n)}function x(e,t,n){let i=0;return a;function a(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c}function c(t){return e.enter(`codeFencedFence`),Gh(t)?Xh(e,l,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):l(t)}function l(t){return t===s?(e.enter(`codeFencedFenceSequence`),u(t)):n(t)}function u(t){return t===s?(i++,e.consume(t),u):i>=o?(e.exit(`codeFencedFenceSequence`),Gh(t)?Xh(e,d,`whitespace`)(t):d(t)):n(t)}function d(r){return r===null||$(r)?(e.exit(`codeFencedFence`),t(r)):n(r)}}}function wg(e,t,n){let r=this;return i;function i(t){return t===null?n(t):(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}var Tg={name:`codeIndented`,tokenize:Dg},Eg={partial:!0,tokenize:Og};function Dg(e,t,n){let r=this;return i;function i(t){return e.enter(`codeIndented`),Xh(e,a,`linePrefix`,5)(t)}function a(e){let t=r.events[r.events.length-1];return t&&t[1].type===`linePrefix`&&t[2].sliceSerialize(t[1],!0).length>=4?o(e):n(e)}function o(t){return t===null?c(t):$(t)?e.attempt(Eg,o,c)(t):(e.enter(`codeFlowValue`),s(t))}function s(t){return t===null||$(t)?(e.exit(`codeFlowValue`),o(t)):(e.consume(t),s)}function c(n){return e.exit(`codeIndented`),t(n)}}function Og(e,t,n){let r=this;return i;function i(t){return r.parser.lazy[r.now().line]?n(t):$(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),i):Xh(e,a,`linePrefix`,5)(t)}function a(e){let a=r.events[r.events.length-1];return a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(e):$(e)?i(e):n(e)}}var kg={name:`codeText`,previous:jg,resolve:Ag,tokenize:Mg};function Ag(e){let t=e.length-4,n=3,r,i;if((e[n][1].type===`lineEnding`||e[n][1].type===`space`)&&(e[t][1].type===`lineEnding`||e[t][1].type===`space`)){for(r=n;++r<t;)if(e[r][1].type===`codeTextData`){e[n][1].type=`codeTextPadding`,e[t][1].type=`codeTextPadding`,n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!==`lineEnding`&&(i=r):(r===t||e[r][1].type===`lineEnding`)&&(e[i][1].type=`codeTextData`,r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function jg(e){return e!==96||this.events[this.events.length-1][1].type===`characterEscape`}function Mg(e,t,n){let r=0,i,a;return o;function o(t){return e.enter(`codeText`),e.enter(`codeTextSequence`),s(t)}function s(t){return t===96?(e.consume(t),r++,s):(e.exit(`codeTextSequence`),c(t))}function c(t){return t===null?n(t):t===32?(e.enter(`space`),e.consume(t),e.exit(`space`),c):t===96?(a=e.enter(`codeTextSequence`),i=0,u(t)):$(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c):(e.enter(`codeTextData`),l(t))}function l(t){return t===null||t===32||t===96||$(t)?(e.exit(`codeTextData`),c(t)):(e.consume(t),l)}function u(n){return n===96?(e.consume(n),i++,u):i===r?(e.exit(`codeTextSequence`),e.exit(`codeText`),t(n)):(a.type=`codeTextData`,l(n))}}var Ng=class{constructor(e){this.left=e?[...e]:[],this.right=[]}get(e){if(e<0||e>=this.left.length+this.right.length)throw RangeError("Cannot access index `"+e+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return e<this.left.length?this.left[e]:this.right[this.right.length-e+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(e,t){let n=t??1/0;return n<this.left.length?this.left.slice(e,n):e>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-e+this.left.length).reverse():this.left.slice(e).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(e,t,n){let r=t||0;this.setCursor(Math.trunc(e));let i=this.right.splice(this.right.length-r,1/0);return n&&Pg(this.left,n),i.reverse()}pop(){return this.setCursor(1/0),this.left.pop()}push(e){this.setCursor(1/0),this.left.push(e)}pushMany(e){this.setCursor(1/0),Pg(this.left,e)}unshift(e){this.setCursor(0),this.right.push(e)}unshiftMany(e){this.setCursor(0),Pg(this.right,e.reverse())}setCursor(e){if(!(e===this.left.length||e>this.left.length&&this.right.length===0||e<0&&this.left.length===0)){if(e<this.left.length){let t=this.left.splice(e,1/0);Pg(this.right,t.reverse())}else{let t=this.right.splice(this.left.length+this.right.length-e,1/0);Pg(this.left,t.reverse())}}}};function Pg(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function Fg(e){let t={},n=-1,r,i,a,o,s,c,l,u=new Ng(e);for(;++n<u.length;){for(;n in t;)n=t[n];if(r=u.get(n),n&&r[1].type===`chunkFlow`&&u.get(n-1)[1].type===`listItemPrefix`&&(c=r[1]._tokenizer.events,a=0,a<c.length&&c[a][1].type===`lineEndingBlank`&&(a+=2),a<c.length&&c[a][1].type===`content`))for(;++a<c.length&&c[a][1].type!==`content`;)c[a][1].type===`chunkText`&&(c[a][1]._isInFirstContentOfListItem=!0,a++);if(r[0]===`enter`)r[1].contentType&&(Object.assign(t,Ig(u,n)),n=t[n],l=!0);else if(r[1]._container){for(a=n,i=void 0;a--;)if(o=u.get(a),o[1].type===`lineEnding`||o[1].type===`lineEndingBlank`)o[0]===`enter`&&(i&&(u.get(i)[1].type=`lineEndingBlank`),o[1].type=`lineEnding`,i=a);else if(o[1].type!==`linePrefix`&&o[1].type!==`listItemIndent`)break;i&&(r[1].end={...u.get(i)[1].start},s=u.slice(i,n),s.unshift(r),u.splice(i,n-i+1,s))}}return kh(e,0,1/0,u.slice(0)),!l}function Ig(e,t){let n=e.get(t)[1],r=e.get(t)[2],i=t-1,a=[],o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));let s=o.events,c=[],l={},u,d,f=-1,p=n,m=0,h=0,g=[h];for(;p;){for(;e.get(++i)[1]!==p;);a.push(i),p._tokenizer||(u=r.sliceStream(p),p.next||u.push(null),d&&o.defineSkip(p.start),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(u),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=n;++f<s.length;)s[f][0]===`exit`&&s[f-1][0]===`enter`&&s[f][1].type===s[f-1][1].type&&s[f][1].start.line!==s[f][1].end.line&&(h=f+1,g.push(h),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(o.events=[],p?(p._tokenizer=void 0,p.previous=void 0):g.pop(),f=g.length;f--;){let t=s.slice(g[f],g[f+1]),n=a.pop();c.push([n,n+t.length-1]),e.splice(n,2,t)}for(c.reverse(),f=-1;++f<c.length;)l[m+c[f][0]]=m+c[f][1],m+=c[f][1]-c[f][0]-1;return l}var Lg={resolve:zg,tokenize:Bg},Rg={partial:!0,tokenize:Vg};function zg(e){return Fg(e),e}function Bg(e,t){let n;return r;function r(t){return e.enter(`content`),n=e.enter(`chunkContent`,{contentType:`content`}),i(t)}function i(t){return t===null?a(t):$(t)?e.check(Rg,o,a)(t):(e.consume(t),i)}function a(n){return e.exit(`chunkContent`),e.exit(`content`),t(n)}function o(t){return e.consume(t),e.exit(`chunkContent`),n.next=e.enter(`chunkContent`,{contentType:`content`,previous:n}),n=n.next,i}}function Vg(e,t,n){let r=this;return i;function i(t){return e.exit(`chunkContent`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Xh(e,a,`linePrefix`)}function a(i){if(i===null||$(i))return n(i);let a=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes(`codeIndented`)&&a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(i):e.interrupt(r.parser.constructs.flow,n,t)(i)}}function Hg(e,t,n,r,i,a,o,s,c){let l=c||1/0,u=0;return d;function d(t){return t===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(t),e.exit(a),f):t===null||t===32||t===41||Bh(t)?n(t):(e.enter(r),e.enter(o),e.enter(s),e.enter(`chunkString`,{contentType:`string`}),h(t))}function f(n){return n===62?(e.enter(a),e.consume(n),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(s),e.enter(`chunkString`,{contentType:`string`}),p(n))}function p(t){return t===62?(e.exit(`chunkString`),e.exit(s),f(t)):t===null||t===60||$(t)?n(t):(e.consume(t),t===92?m:p)}function m(t){return t===60||t===62||t===92?(e.consume(t),p):p(t)}function h(i){return!u&&(i===null||i===41||Wh(i))?(e.exit(`chunkString`),e.exit(s),e.exit(o),e.exit(r),t(i)):u<l&&i===40?(e.consume(i),u++,h):i===41?(e.consume(i),u--,h):i===null||i===32||i===40||Bh(i)?n(i):(e.consume(i),i===92?g:h)}function g(t){return t===40||t===41||t===92?(e.consume(t),h):h(t)}}function Ug(e,t,n,r,i,a){let o=this,s=0,c;return l;function l(t){return e.enter(r),e.enter(i),e.consume(t),e.exit(i),e.enter(a),u}function u(l){return s>999||l===null||l===91||l===93&&!c||l===94&&!s&&`_hiddenFootnoteSupport`in o.parser.constructs?n(l):l===93?(e.exit(a),e.enter(i),e.consume(l),e.exit(i),e.exit(r),t):$(l)?(e.enter(`lineEnding`),e.consume(l),e.exit(`lineEnding`),u):(e.enter(`chunkString`,{contentType:`string`}),d(l))}function d(t){return t===null||t===91||t===93||$(t)||s++>999?(e.exit(`chunkString`),u(t)):(e.consume(t),c||=!Gh(t),t===92?f:d)}function f(t){return t===91||t===92||t===93?(e.consume(t),s++,d):d(t)}}function Wg(e,t,n,r,i,a){let o;return s;function s(t){return t===34||t===39||t===40?(e.enter(r),e.enter(i),e.consume(t),e.exit(i),o=t===40?41:t,c):n(t)}function c(n){return n===o?(e.enter(i),e.consume(n),e.exit(i),e.exit(r),t):(e.enter(a),l(n))}function l(t){return t===o?(e.exit(a),c(o)):t===null?n(t):$(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Xh(e,l,`linePrefix`)):(e.enter(`chunkString`,{contentType:`string`}),u(t))}function u(t){return t===o||t===null||$(t)?(e.exit(`chunkString`),l(t)):(e.consume(t),t===92?d:u)}function d(t){return t===o||t===92?(e.consume(t),u):u(t)}}function Gg(e,t){let n;return r;function r(i){return $(i)?(e.enter(`lineEnding`),e.consume(i),e.exit(`lineEnding`),n=!0,r):Gh(i)?Xh(e,r,n?`linePrefix`:`lineSuffix`)(i):t(i)}}var Kg={name:`definition`,tokenize:Jg},qg={partial:!0,tokenize:Yg};function Jg(e,t,n){let r=this,i;return a;function a(t){return e.enter(`definition`),o(t)}function o(t){return Ug.call(r,e,s,n,`definitionLabel`,`definitionLabelMarker`,`definitionLabelString`)(t)}function s(t){return i=Ih(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),t===58?(e.enter(`definitionMarker`),e.consume(t),e.exit(`definitionMarker`),c):n(t)}function c(t){return Wh(t)?Gg(e,l)(t):l(t)}function l(t){return Hg(e,u,n,`definitionDestination`,`definitionDestinationLiteral`,`definitionDestinationLiteralMarker`,`definitionDestinationRaw`,`definitionDestinationString`)(t)}function u(t){return e.attempt(qg,d,d)(t)}function d(t){return Gh(t)?Xh(e,f,`whitespace`)(t):f(t)}function f(a){return a===null||$(a)?(e.exit(`definition`),r.parser.defined.push(i),t(a)):n(a)}}function Yg(e,t,n){return r;function r(t){return Wh(t)?Gg(e,i)(t):n(t)}function i(t){return Wg(e,a,n,`definitionTitle`,`definitionTitleMarker`,`definitionTitleString`)(t)}function a(t){return Gh(t)?Xh(e,o,`whitespace`)(t):o(t)}function o(e){return e===null||$(e)?t(e):n(e)}}var Xg={name:`hardBreakEscape`,tokenize:Zg};function Zg(e,t,n){return r;function r(t){return e.enter(`hardBreakEscape`),e.consume(t),i}function i(r){return $(r)?(e.exit(`hardBreakEscape`),t(r)):n(r)}}var Qg={name:`headingAtx`,resolve:$g,tokenize:e_};function $g(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type===`whitespace`&&(r+=2),n-2>r&&e[n][1].type===`whitespace`&&(n-=2),e[n][1].type===`atxHeadingSequence`&&(r===n-1||n-4>r&&e[n-2][1].type===`whitespace`)&&(n-=r+1===n?2:4),n>r&&(i={type:`atxHeadingText`,start:e[r][1].start,end:e[n][1].end},a={type:`chunkText`,start:e[r][1].start,end:e[n][1].end,contentType:`text`},kh(e,r,n-r+1,[[`enter`,i,t],[`enter`,a,t],[`exit`,a,t],[`exit`,i,t]])),e}function e_(e,t,n){let r=0;return i;function i(t){return e.enter(`atxHeading`),a(t)}function a(t){return e.enter(`atxHeadingSequence`),o(t)}function o(t){return t===35&&r++<6?(e.consume(t),o):t===null||Wh(t)?(e.exit(`atxHeadingSequence`),s(t)):n(t)}function s(n){return n===35?(e.enter(`atxHeadingSequence`),c(n)):n===null||$(n)?(e.exit(`atxHeading`),t(n)):Gh(n)?Xh(e,s,`whitespace`)(n):(e.enter(`atxHeadingText`),l(n))}function c(t){return t===35?(e.consume(t),c):(e.exit(`atxHeadingSequence`),s(t))}function l(t){return t===null||t===35||Wh(t)?(e.exit(`atxHeadingText`),s(t)):(e.consume(t),l)}}var t_=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),n_=[`pre`,`script`,`style`,`textarea`],r_={concrete:!0,name:`htmlFlow`,resolveTo:o_,tokenize:s_},i_={partial:!0,tokenize:l_},a_={partial:!0,tokenize:c_};function o_(e){let t=e.length;for(;t--&&(e[t][0]!==`enter`||e[t][1].type!==`htmlFlow`););return t>1&&e[t-2][1].type===`linePrefix`&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function s_(e,t,n){let r=this,i,a,o,s,c;return l;function l(e){return u(e)}function u(t){return e.enter(`htmlFlow`),e.enter(`htmlFlowData`),e.consume(t),d}function d(s){return s===33?(e.consume(s),f):s===47?(e.consume(s),a=!0,h):s===63?(e.consume(s),i=3,r.interrupt?t:M):Lh(s)?(e.consume(s),o=String.fromCharCode(s),g):n(s)}function f(a){return a===45?(e.consume(a),i=2,p):a===91?(e.consume(a),i=5,s=0,m):Lh(a)?(e.consume(a),i=4,r.interrupt?t:M):n(a)}function p(i){return i===45?(e.consume(i),r.interrupt?t:M):n(i)}function m(i){return i===`CDATA[`.charCodeAt(s++)?(e.consume(i),s===6?r.interrupt?t:O:m):n(i)}function h(t){return Lh(t)?(e.consume(t),o=String.fromCharCode(t),g):n(t)}function g(s){if(s===null||s===47||s===62||Wh(s)){let c=s===47,l=o.toLowerCase();return!c&&!a&&n_.includes(l)?(i=1,r.interrupt?t(s):O(s)):t_.includes(o.toLowerCase())?(i=6,c?(e.consume(s),_):r.interrupt?t(s):O(s)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(s):a?v(s):y(s))}return s===45||Rh(s)?(e.consume(s),o+=String.fromCharCode(s),g):n(s)}function _(i){return i===62?(e.consume(i),r.interrupt?t:O):n(i)}function v(t){return Gh(t)?(e.consume(t),v):E(t)}function y(t){return t===47?(e.consume(t),E):t===58||t===95||Lh(t)?(e.consume(t),b):Gh(t)?(e.consume(t),y):E(t)}function b(t){return t===45||t===46||t===58||t===95||Rh(t)?(e.consume(t),b):x(t)}function x(t){return t===61?(e.consume(t),S):Gh(t)?(e.consume(t),x):y(t)}function S(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),c=t,C):Gh(t)?(e.consume(t),S):w(t)}function C(t){return t===c?(e.consume(t),c=null,T):t===null||$(t)?n(t):(e.consume(t),C)}function w(t){return t===null||t===34||t===39||t===47||t===60||t===61||t===62||t===96||Wh(t)?x(t):(e.consume(t),w)}function T(e){return e===47||e===62||Gh(e)?y(e):n(e)}function E(t){return t===62?(e.consume(t),D):n(t)}function D(t){return t===null||$(t)?O(t):Gh(t)?(e.consume(t),D):n(t)}function O(t){return t===45&&i===2?(e.consume(t),A):t===60&&i===1?(e.consume(t),j):t===62&&i===4?(e.consume(t),N):t===63&&i===3?(e.consume(t),M):t===93&&i===5?(e.consume(t),re):$(t)&&(i===6||i===7)?(e.exit(`htmlFlowData`),e.check(i_,ie,ee)(t)):t===null||$(t)?(e.exit(`htmlFlowData`),ee(t)):(e.consume(t),O)}function ee(t){return e.check(a_,k,ie)(t)}function k(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),te}function te(t){return t===null||$(t)?ee(t):(e.enter(`htmlFlowData`),O(t))}function A(t){return t===45?(e.consume(t),M):O(t)}function j(t){return t===47?(e.consume(t),o=``,ne):O(t)}function ne(t){if(t===62){let n=o.toLowerCase();return n_.includes(n)?(e.consume(t),N):O(t)}return Lh(t)&&o.length<8?(e.consume(t),o+=String.fromCharCode(t),ne):O(t)}function re(t){return t===93?(e.consume(t),M):O(t)}function M(t){return t===62?(e.consume(t),N):t===45&&i===2?(e.consume(t),M):O(t)}function N(t){return t===null||$(t)?(e.exit(`htmlFlowData`),ie(t)):(e.consume(t),N)}function ie(n){return e.exit(`htmlFlow`),t(n)}}function c_(e,t,n){let r=this;return i;function i(t){return $(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a):n(t)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}function l_(e,t,n){return r;function r(r){return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),e.attempt(dg,t,n)}}var u_={name:`htmlText`,tokenize:d_};function d_(e,t,n){let r=this,i,a,o;return s;function s(t){return e.enter(`htmlText`),e.enter(`htmlTextData`),e.consume(t),c}function c(t){return t===33?(e.consume(t),l):t===47?(e.consume(t),x):t===63?(e.consume(t),y):Lh(t)?(e.consume(t),w):n(t)}function l(t){return t===45?(e.consume(t),u):t===91?(e.consume(t),a=0,m):Lh(t)?(e.consume(t),v):n(t)}function u(t){return t===45?(e.consume(t),p):n(t)}function d(t){return t===null?n(t):t===45?(e.consume(t),f):$(t)?(o=d,j(t)):(e.consume(t),d)}function f(t){return t===45?(e.consume(t),p):d(t)}function p(e){return e===62?A(e):e===45?f(e):d(e)}function m(t){return t===`CDATA[`.charCodeAt(a++)?(e.consume(t),a===6?h:m):n(t)}function h(t){return t===null?n(t):t===93?(e.consume(t),g):$(t)?(o=h,j(t)):(e.consume(t),h)}function g(t){return t===93?(e.consume(t),_):h(t)}function _(t){return t===62?A(t):t===93?(e.consume(t),_):h(t)}function v(t){return t===null||t===62?A(t):$(t)?(o=v,j(t)):(e.consume(t),v)}function y(t){return t===null?n(t):t===63?(e.consume(t),b):$(t)?(o=y,j(t)):(e.consume(t),y)}function b(e){return e===62?A(e):y(e)}function x(t){return Lh(t)?(e.consume(t),S):n(t)}function S(t){return t===45||Rh(t)?(e.consume(t),S):C(t)}function C(t){return $(t)?(o=C,j(t)):Gh(t)?(e.consume(t),C):A(t)}function w(t){return t===45||Rh(t)?(e.consume(t),w):t===47||t===62||Wh(t)?T(t):n(t)}function T(t){return t===47?(e.consume(t),A):t===58||t===95||Lh(t)?(e.consume(t),E):$(t)?(o=T,j(t)):Gh(t)?(e.consume(t),T):A(t)}function E(t){return t===45||t===46||t===58||t===95||Rh(t)?(e.consume(t),E):D(t)}function D(t){return t===61?(e.consume(t),O):$(t)?(o=D,j(t)):Gh(t)?(e.consume(t),D):T(t)}function O(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),i=t,ee):$(t)?(o=O,j(t)):Gh(t)?(e.consume(t),O):(e.consume(t),k)}function ee(t){return t===i?(e.consume(t),i=void 0,te):t===null?n(t):$(t)?(o=ee,j(t)):(e.consume(t),ee)}function k(t){return t===null||t===34||t===39||t===60||t===61||t===96?n(t):t===47||t===62||Wh(t)?T(t):(e.consume(t),k)}function te(e){return e===47||e===62||Wh(e)?T(e):n(e)}function A(r){return r===62?(e.consume(r),e.exit(`htmlTextData`),e.exit(`htmlText`),t):n(r)}function j(t){return e.exit(`htmlTextData`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),ne}function ne(t){return Gh(t)?Xh(e,re,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):re(t)}function re(t){return e.enter(`htmlTextData`),o(t)}}var f_={name:`labelEnd`,resolveAll:g_,resolveTo:__,tokenize:v_},p_={tokenize:y_},m_={tokenize:b_},h_={tokenize:x_};function g_(e){let t=-1,n=[];for(;++t<e.length;){let r=e[t][1];if(n.push(e[t]),r.type===`labelImage`||r.type===`labelLink`||r.type===`labelEnd`){let e=r.type===`labelImage`?4:2;r.type=`data`,t+=e}}return e.length!==n.length&&kh(e,0,e.length,n),e}function __(e,t){let n=e.length,r=0,i,a,o,s;for(;n--;)if(i=e[n][1],a){if(i.type===`link`||i.type===`labelLink`&&i._inactive)break;e[n][0]===`enter`&&i.type===`labelLink`&&(i._inactive=!0)}else if(o){if(e[n][0]===`enter`&&(i.type===`labelImage`||i.type===`labelLink`)&&!i._balanced&&(a=n,i.type!==`labelLink`)){r=2;break}}else i.type===`labelEnd`&&(o=n);let c={type:e[a][1].type===`labelLink`?`link`:`image`,start:{...e[a][1].start},end:{...e[e.length-1][1].end}},l={type:`label`,start:{...e[a][1].start},end:{...e[o][1].end}},u={type:`labelText`,start:{...e[a+r+2][1].end},end:{...e[o-2][1].start}};return s=[[`enter`,c,t],[`enter`,l,t]],s=Ah(s,e.slice(a+1,a+r+3)),s=Ah(s,[[`enter`,u,t]]),s=Ah(s,ig(t.parser.constructs.insideSpan.null,e.slice(a+r+4,o-3),t)),s=Ah(s,[[`exit`,u,t],e[o-2],e[o-1],[`exit`,l,t]]),s=Ah(s,e.slice(o+1)),s=Ah(s,[[`exit`,c,t]]),kh(e,a,e.length,s),e}function v_(e,t,n){let r=this,i=r.events.length,a,o;for(;i--;)if((r.events[i][1].type===`labelImage`||r.events[i][1].type===`labelLink`)&&!r.events[i][1]._balanced){a=r.events[i][1];break}return s;function s(t){return a?a._inactive?d(t):(o=r.parser.defined.includes(Ih(r.sliceSerialize({start:a.end,end:r.now()}))),e.enter(`labelEnd`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelEnd`),c):n(t)}function c(t){return t===40?e.attempt(p_,u,o?u:d)(t):t===91?e.attempt(m_,u,o?l:d)(t):o?u(t):d(t)}function l(t){return e.attempt(h_,u,d)(t)}function u(e){return t(e)}function d(e){return a._balanced=!0,n(e)}}function y_(e,t,n){return r;function r(t){return e.enter(`resource`),e.enter(`resourceMarker`),e.consume(t),e.exit(`resourceMarker`),i}function i(t){return Wh(t)?Gg(e,a)(t):a(t)}function a(t){return t===41?u(t):Hg(e,o,s,`resourceDestination`,`resourceDestinationLiteral`,`resourceDestinationLiteralMarker`,`resourceDestinationRaw`,`resourceDestinationString`,32)(t)}function o(t){return Wh(t)?Gg(e,c)(t):u(t)}function s(e){return n(e)}function c(t){return t===34||t===39||t===40?Wg(e,l,n,`resourceTitle`,`resourceTitleMarker`,`resourceTitleString`)(t):u(t)}function l(t){return Wh(t)?Gg(e,u)(t):u(t)}function u(r){return r===41?(e.enter(`resourceMarker`),e.consume(r),e.exit(`resourceMarker`),e.exit(`resource`),t):n(r)}}function b_(e,t,n){let r=this;return i;function i(t){return Ug.call(r,e,a,o,`reference`,`referenceMarker`,`referenceString`)(t)}function a(e){return r.parser.defined.includes(Ih(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(e):n(e)}function o(e){return n(e)}}function x_(e,t,n){return r;function r(t){return e.enter(`reference`),e.enter(`referenceMarker`),e.consume(t),e.exit(`referenceMarker`),i}function i(r){return r===93?(e.enter(`referenceMarker`),e.consume(r),e.exit(`referenceMarker`),e.exit(`reference`),t):n(r)}}var S_={name:`labelStartImage`,resolveAll:f_.resolveAll,tokenize:C_};function C_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelImage`),e.enter(`labelImageMarker`),e.consume(t),e.exit(`labelImageMarker`),a}function a(t){return t===91?(e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelImage`),o):n(t)}function o(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var w_={name:`labelStartLink`,resolveAll:f_.resolveAll,tokenize:T_};function T_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelLink`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelLink`),a}function a(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var E_={name:`lineEnding`,tokenize:D_};function D_(e,t){return n;function n(n){return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Xh(e,t,`linePrefix`)}}var O_={name:`thematicBreak`,tokenize:k_};function k_(e,t,n){let r=0,i;return a;function a(t){return e.enter(`thematicBreak`),o(t)}function o(e){return i=e,s(e)}function s(a){return a===i?(e.enter(`thematicBreakSequence`),c(a)):r>=3&&(a===null||$(a))?(e.exit(`thematicBreak`),t(a)):n(a)}function c(t){return t===i?(e.consume(t),r++,c):(e.exit(`thematicBreakSequence`),Gh(t)?Xh(e,s,`whitespace`)(t):s(t))}}var A_={continuation:{tokenize:P_},exit:I_,name:`list`,tokenize:N_},j_={partial:!0,tokenize:L_},M_={partial:!0,tokenize:F_};function N_(e,t,n){let r=this,i=r.events[r.events.length-1],a=i&&i[1].type===`linePrefix`?i[2].sliceSerialize(i[1],!0).length:0,o=0;return s;function s(t){let i=r.containerState.type||(t===42||t===43||t===45?`listUnordered`:`listOrdered`);if(i===`listUnordered`?!r.containerState.marker||t===r.containerState.marker:Vh(t)){if(r.containerState.type||(r.containerState.type=i,e.enter(i,{_container:!0})),i===`listUnordered`)return e.enter(`listItemPrefix`),t===42||t===45?e.check(O_,n,l)(t):l(t);if(!r.interrupt||t===49)return e.enter(`listItemPrefix`),e.enter(`listItemValue`),c(t)}return n(t)}function c(t){return Vh(t)&&++o<10?(e.consume(t),c):(!r.interrupt||o<2)&&(r.containerState.marker?t===r.containerState.marker:t===41||t===46)?(e.exit(`listItemValue`),l(t)):n(t)}function l(t){return e.enter(`listItemMarker`),e.consume(t),e.exit(`listItemMarker`),r.containerState.marker=r.containerState.marker||t,e.check(dg,r.interrupt?n:u,e.attempt(j_,f,d))}function u(e){return r.containerState.initialBlankLine=!0,a++,f(e)}function d(t){return Gh(t)?(e.enter(`listItemPrefixWhitespace`),e.consume(t),e.exit(`listItemPrefixWhitespace`),f):n(t)}function f(n){return r.containerState.size=a+r.sliceSerialize(e.exit(`listItemPrefix`),!0).length,t(n)}}function P_(e,t,n){let r=this;return r.containerState._closeFlow=void 0,e.check(dg,i,a);function i(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Xh(e,t,`listItemIndent`,r.containerState.size+1)(n)}function a(n){return r.containerState.furtherBlankLines||!Gh(n)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(n)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(M_,t,o)(n))}function o(i){return r.containerState._closeFlow=!0,r.interrupt=void 0,Xh(e,e.attempt(A_,t,n),`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(i)}}function F_(e,t,n){let r=this;return Xh(e,i,`listItemIndent`,r.containerState.size+1);function i(e){let i=r.events[r.events.length-1];return i&&i[1].type===`listItemIndent`&&i[2].sliceSerialize(i[1],!0).length===r.containerState.size?t(e):n(e)}}function I_(e){e.exit(this.containerState.type)}function L_(e,t,n){let r=this;return Xh(e,i,`listItemPrefixWhitespace`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:5);function i(e){let i=r.events[r.events.length-1];return!Gh(e)&&i&&i[1].type===`listItemPrefixWhitespace`?t(e):n(e)}}var R_={name:`setextUnderline`,resolveTo:z_,tokenize:B_};function z_(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]===`enter`){if(e[n][1].type===`content`){r=n;break}e[n][1].type===`paragraph`&&(i=n)}else e[n][1].type===`content`&&e.splice(n,1),!a&&e[n][1].type===`definition`&&(a=n);let o={type:`setextHeading`,start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type=`setextHeadingText`,a?(e.splice(i,0,[`enter`,o,t]),e.splice(a+1,0,[`exit`,e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=o,e.push([`exit`,o,t]),e}function B_(e,t,n){let r=this,i;return a;function a(t){let a=r.events.length,s;for(;a--;)if(r.events[a][1].type!==`lineEnding`&&r.events[a][1].type!==`linePrefix`&&r.events[a][1].type!==`content`){s=r.events[a][1].type===`paragraph`;break}return!r.parser.lazy[r.now().line]&&(r.interrupt||s)?(e.enter(`setextHeadingLine`),i=t,o(t)):n(t)}function o(t){return e.enter(`setextHeadingLineSequence`),s(t)}function s(t){return t===i?(e.consume(t),s):(e.exit(`setextHeadingLineSequence`),Gh(t)?Xh(e,c,`lineSuffix`)(t):c(t))}function c(r){return r===null||$(r)?(e.exit(`setextHeadingLine`),t(r)):n(r)}}var V_={tokenize:H_};function H_(e){let t=this,n=e.attempt(dg,r,e.attempt(this.parser.constructs.flowInitial,i,Xh(e,e.attempt(this.parser.constructs.flow,i,e.attempt(Lg,i)),`linePrefix`)));return n;function r(r){if(r===null){e.consume(r);return}return e.enter(`lineEndingBlank`),e.consume(r),e.exit(`lineEndingBlank`),t.currentConstruct=void 0,n}function i(r){if(r===null){e.consume(r);return}return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),t.currentConstruct=void 0,n}}var U_={resolveAll:q_()},W_=K_(`string`),G_=K_(`text`);function K_(e){return{resolveAll:q_(e===`text`?J_:void 0),tokenize:t};function t(t){let n=this,r=this.parser.constructs[e],i=t.attempt(r,a,o);return a;function a(e){return c(e)?i(e):o(e)}function o(e){if(e===null){t.consume(e);return}return t.enter(`data`),t.consume(e),s}function s(e){return c(e)?(t.exit(`data`),i(e)):(t.consume(e),s)}function c(e){if(e===null)return!0;let t=r[e],i=-1;if(t)for(;++i<t.length;){let e=t[i];if(!e.previous||e.previous.call(n,n.previous))return!0}return!1}}}function q_(e){return t;function t(t,n){let r=-1,i;for(;++r<=t.length;)i===void 0?t[r]&&t[r][1].type===`data`&&(i=r,r++):(!t[r]||t[r][1].type!==`data`)&&(r!==i+2&&(t[i][1].end=t[r-1][1].end,t.splice(i+2,r-i-2),r=i+2),i=void 0);return e?e(t,n):t}}function J_(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type===`lineEnding`)&&e[n-1][1].type===`data`){let r=e[n-1][1],i=t.sliceStream(r),a=i.length,o=-1,s=0,c;for(;a--;){let e=i[a];if(typeof e==`string`){for(o=e.length;e.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(e===-2)c=!0,s++;else if(e!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){let i={type:n===e.length||c||s<2?`lineSuffix`:`hardBreakTrailing`,start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...i.start},r.start.offset===r.end.offset?Object.assign(r,i):(e.splice(n,0,[`enter`,i,t],[`exit`,i,t]),n+=2)}n++}return e}var Y_=s({attentionMarkers:()=>rv,contentInitial:()=>Z_,disable:()=>iv,document:()=>X_,flow:()=>$_,flowInitial:()=>Q_,insideSpan:()=>nv,string:()=>ev,text:()=>tv}),X_={42:A_,43:A_,45:A_,48:A_,49:A_,50:A_,51:A_,52:A_,53:A_,54:A_,55:A_,56:A_,57:A_,62:pg},Z_={91:Kg},Q_={[-2]:Tg,[-1]:Tg,32:Tg},$_={35:Qg,42:O_,45:[R_,O_],60:r_,61:R_,95:O_,96:Sg,126:Sg},ev={38:yg,92:_g},tv={[-5]:E_,[-4]:E_,[-3]:E_,33:S_,38:yg,42:ag,60:[lg,u_],91:w_,92:[Xg,_g],93:f_,95:ag,96:kg},nv={null:[ag,U_]},rv={null:[42,95]},iv={null:[]};function av(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0},i={},a=[],o=[],s=[],c={attempt:C(x),check:C(S),consume:v,enter:y,exit:b,interrupt:C(S,{interrupt:!0})},l={code:null,containerState:{},defineSkip:h,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d},u=t.tokenize.call(l,c);return t.resolveAll&&a.push(t),l;function d(e){return o=Ah(o,e),g(),o[o.length-1]===null?(w(t,0),l.events=ig(a,l.events,l),l.events):[]}function f(e,t){return sv(p(e),t)}function p(e){return ov(o,e)}function m(){let{_bufferIndex:e,_index:t,line:n,column:i,offset:a}=r;return{_bufferIndex:e,_index:t,line:n,column:i,offset:a}}function h(e){i[e.line]=e.column,E()}function g(){let e;for(;r._index<o.length;){let t=o[r._index];if(typeof t==`string`)for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)_(t.charCodeAt(r._bufferIndex));else _(t)}}function _(e){u=u(e)}function v(e){$(e)?(r.line++,r.column=1,r.offset+=e===-3?2:1,E()):e!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=e}function y(e,t){let n=t||{};return n.type=e,n.start=m(),l.events.push([`enter`,n,l]),s.push(n),n}function b(e){let t=s.pop();return t.end=m(),l.events.push([`exit`,t,l]),t}function x(e,t){w(e,t.from)}function S(e,t){t.restore()}function C(e,t){return n;function n(n,r,i){let a,o,s,u;return Array.isArray(n)?f(n):`tokenize`in n?f([n]):d(n);function d(e){return t;function t(t){let n=t!==null&&e[t],r=t!==null&&e.null;return f([...Array.isArray(n)?n:n?[n]:[],...Array.isArray(r)?r:r?[r]:[]])(t)}}function f(e){return a=e,o=0,e.length===0?i:p(e[o])}function p(e){return n;function n(n){return u=T(),s=e,e.partial||(l.currentConstruct=e),e.name&&l.parser.constructs.disable.null.includes(e.name)?h(n):e.tokenize.call(t?Object.assign(Object.create(l),t):l,c,m,h)(n)}}function m(t){return e(s,u),r}function h(e){return u.restore(),++o<a.length?p(a[o]):i}}}function w(e,t){e.resolveAll&&!a.includes(e)&&a.push(e),e.resolve&&kh(l.events,t,l.events.length-t,e.resolve(l.events.slice(t),l)),e.resolveTo&&(l.events=e.resolveTo(l.events,l))}function T(){let e=m(),t=l.previous,n=l.currentConstruct,i=l.events.length,a=Array.from(s);return{from:i,restore:o};function o(){r=e,l.previous=t,l.currentConstruct=n,l.events.length=i,s=a,E()}}function E(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function ov(e,t){let n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex,o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){let e=o[0];typeof e==`string`?o[0]=e.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function sv(e,t){let n=-1,r=[],i;for(;++n<e.length;){let a=e[n],o;if(typeof a==`string`)o=a;else switch(a){case-5:o=`\r`;break;case-4:o=`
|
|
95
|
+
`;break;case-3:o=`\r
|
|
96
|
+
`;break;case-2:o=t?` `:` `;break;case-1:if(!t&&i)continue;o=` `;break;default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join(``)}function cv(e){let t={constructs:Mh([Y_,...(e||{}).extensions||[]]),content:n(Zh),defined:[],document:n($h),flow:n(V_),lazy:{},string:n(W_),text:n(G_)};return t;function n(e){return n;function n(n){return av(t,e,n)}}}function lv(e){for(;!Fg(e););return e}var uv=/[\0\t\n\r]/g;function dv(){let e=1,t=``,n=!0,r;return i;function i(i,a,o){let s=[],c,l,u,d,f;for(i=t+(typeof i==`string`?i.toString():new TextDecoder(a||void 0).decode(i)),u=0,t=``,n&&=(i.charCodeAt(0)===65279&&u++,void 0);u<i.length;){if(uv.lastIndex=u,c=uv.exec(i),d=c&&c.index!==void 0?c.index:i.length,f=i.charCodeAt(d),!c){t=i.slice(u);break}if(f===10&&u===d&&r)s.push(-3),r=void 0;else switch(r&&=(s.push(-5),void 0),u<d&&(s.push(i.slice(u,d)),e+=d-u),f){case 0:s.push(65533),e++;break;case 9:for(l=Math.ceil(e/4)*4,s.push(-2);e++<l;)s.push(-1);break;case 10:s.push(-4),e=1;break;default:r=!0,e=1}u=d+1}return o&&(r&&s.push(-5),t&&s.push(t),s.push(null)),s}}var fv=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function pv(e){return e.replace(fv,mv)}function mv(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){let e=n.charCodeAt(1),t=e===120||e===88;return Fh(n.slice(t?2:1),t?16:10)}return Oh(n)||e}var hv={}.hasOwnProperty;function gv(e,t,n){return t&&typeof t==`object`&&(n=t,t=void 0),_v(n)(lv(cv(n).document().write(dv()(e,t,!0))))}function _v(e){let t={transforms:[],canContainEols:[`emphasis`,`fragment`,`heading`,`paragraph`,`strong`],enter:{autolink:a(xe),autolinkProtocol:T,autolinkEmail:T,atxHeading:a(_e),blockQuote:a(fe),characterEscape:T,characterReference:T,codeFenced:a(pe),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(pe,o),codeText:a(me,o),codeTextData:T,data:T,codeFlowValue:T,definition:a(he),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(ge),hardBreakEscape:a(ve),hardBreakTrailing:a(ve),htmlFlow:a(ye,o),htmlFlowData:T,htmlText:a(ye,o),htmlTextData:T,image:a(be),label:o,link:a(xe),listItem:a(Ce),listItemValue:f,listOrdered:a(Se,d),listUnordered:a(Se),paragraph:a(we),reference:ae,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(_e),strong:a(Te),thematicBreak:a(De)},exit:{atxHeading:c(),atxHeadingSequence:x,autolink:c(),autolinkEmail:de,autolinkProtocol:ue,blockQuote:c(),characterEscapeValue:E,characterReferenceMarkerHexadecimal:se,characterReferenceMarkerNumeric:se,characterReferenceValue:ce,characterReference:le,codeFenced:c(g),codeFencedFence:h,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:E,codeIndented:c(_),codeText:c(te),codeTextData:E,data:E,definition:c(),definitionDestinationString:b,definitionLabelString:v,definitionTitleString:y,emphasis:c(),hardBreakEscape:c(O),hardBreakTrailing:c(O),htmlFlow:c(ee),htmlFlowData:E,htmlText:c(k),htmlTextData:E,image:c(j),label:re,labelText:ne,lineEnding:D,link:c(A),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:oe,resourceDestinationString:M,resourceTitleString:N,resource:ie,setextHeading:c(w),setextHeadingLineSequence:C,setextHeadingText:S,strong:c(),thematicBreak:c()}};yv(t,(e||{}).mdastExtensions||[]);let n={};return r;function r(e){let r={type:`root`,children:[]},a={stack:[r],tokenStack:[],config:t,enter:s,exit:l,buffer:o,resume:u,data:n},c=[],d=-1;for(;++d<e.length;)(e[d][1].type===`listOrdered`||e[d][1].type===`listUnordered`)&&(e[d][0]===`enter`?c.push(d):d=i(e,c.pop(),d));for(d=-1;++d<e.length;){let n=t[e[d][0]];hv.call(n,e[d][1].type)&&n[e[d][1].type].call(Object.assign({sliceSerialize:e[d][2].sliceSerialize},a),e[d][1])}if(a.tokenStack.length>0){let e=a.tokenStack[a.tokenStack.length-1];(e[1]||xv).call(a,void 0,e[0])}for(r.position={start:vv(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:vv(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},d=-1;++d<t.transforms.length;)r=t.transforms[d](r)||r;return r}function i(e,t,n){let r=t-1,i=-1,a=!1,o,s,c,l;for(;++r<=n;){let t=e[r];switch(t[1].type){case`listUnordered`:case`listOrdered`:case`blockQuote`:t[0]===`enter`?i++:i--,l=void 0;break;case`lineEndingBlank`:t[0]===`enter`&&(o&&!l&&!i&&!c&&(c=r),l=void 0);break;case`linePrefix`:case`listItemValue`:case`listItemMarker`:case`listItemPrefix`:case`listItemPrefixWhitespace`:break;default:l=void 0}if(!i&&t[0]===`enter`&&t[1].type===`listItemPrefix`||i===-1&&t[0]===`exit`&&(t[1].type===`listUnordered`||t[1].type===`listOrdered`)){if(o){let i=r;for(s=void 0;i--;){let t=e[i];if(t[1].type===`lineEnding`||t[1].type===`lineEndingBlank`){if(t[0]===`exit`)continue;s&&(e[s][1].type=`lineEndingBlank`,a=!0),t[1].type=`lineEnding`,s=i}else if(t[1].type!==`linePrefix`&&t[1].type!==`blockQuotePrefix`&&t[1].type!==`blockQuotePrefixWhitespace`&&t[1].type!==`blockQuoteMarker`&&t[1].type!==`listItemIndent`)break}c&&(!s||c<s)&&(o._spread=!0),o.end=Object.assign({},s?e[s][1].start:t[1].end),e.splice(s||r,0,[`exit`,o,t[2]]),r++,n++}if(t[1].type===`listItemPrefix`){let i={type:`listItem`,_spread:!1,start:Object.assign({},t[1].start),end:void 0};o=i,e.splice(r,0,[`enter`,i,t[2]]),r++,n++,c=void 0,l=!0}}}return e[t][1]._spread=a,n}function a(e,t){return n;function n(n){s.call(this,e(n),n),t&&t.call(this,n)}}function o(){this.stack.push({type:`fragment`,children:[]})}function s(e,t,n){this.stack[this.stack.length-1].children.push(e),this.stack.push(e),this.tokenStack.push([t,n||void 0]),e.position={start:vv(t.start),end:void 0}}function c(e){return t;function t(t){e&&e.call(this,t),l.call(this,t)}}function l(e,t){let n=this.stack.pop(),r=this.tokenStack.pop();if(r)r[0].type!==e.type&&(t?t.call(this,e,r[0]):(r[1]||xv).call(this,e,r[0]));else throw Error("Cannot close `"+e.type+"` ("+Vm({start:e.start,end:e.end})+`): it’s not open`);n.position.end=vv(e.end)}function u(){return Ch(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(e){if(this.data.expectingFirstListItemValue){let t=this.stack[this.stack.length-2];t.start=Number.parseInt(this.sliceSerialize(e),10),this.data.expectingFirstListItemValue=void 0}}function p(){let e=this.resume(),t=this.stack[this.stack.length-1];t.lang=e}function m(){let e=this.resume(),t=this.stack[this.stack.length-1];t.meta=e}function h(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function g(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,``),this.data.flowCodeInside=void 0}function _(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/(\r?\n|\r)$/g,``)}function v(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Ih(this.sliceSerialize(e)).toLowerCase()}function y(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function b(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function x(e){let t=this.stack[this.stack.length-1];t.depth||=this.sliceSerialize(e).length}function S(){this.data.setextHeadingSlurpLineEnding=!0}function C(e){let t=this.stack[this.stack.length-1];t.depth=this.sliceSerialize(e).codePointAt(0)===61?1:2}function w(){this.data.setextHeadingSlurpLineEnding=void 0}function T(e){let t=this.stack[this.stack.length-1].children,n=t[t.length-1];(!n||n.type!==`text`)&&(n=Ee(),n.position={start:vv(e.start),end:void 0},t.push(n)),this.stack.push(n)}function E(e){let t=this.stack.pop();t.value+=this.sliceSerialize(e),t.position.end=vv(e.end)}function D(e){let n=this.stack[this.stack.length-1];if(this.data.atHardBreak){let t=n.children[n.children.length-1];t.position.end=vv(e.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(n.type)&&(T.call(this,e),E.call(this,e))}function O(){this.data.atHardBreak=!0}function ee(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function k(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function te(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function A(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function j(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function ne(e){let t=this.sliceSerialize(e),n=this.stack[this.stack.length-2];n.label=pv(t),n.identifier=Ih(t).toLowerCase()}function re(){let e=this.stack[this.stack.length-1],t=this.resume(),n=this.stack[this.stack.length-1];this.data.inReference=!0,n.type===`link`?n.children=e.children:n.alt=t}function M(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function N(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function ie(){this.data.inReference=void 0}function ae(){this.data.referenceType=`collapsed`}function oe(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Ih(this.sliceSerialize(e)).toLowerCase(),this.data.referenceType=`full`}function se(e){this.data.characterReferenceType=e.type}function ce(e){let t=this.sliceSerialize(e),n=this.data.characterReferenceType,r;n?(r=Fh(t,n===`characterReferenceMarkerNumeric`?10:16),this.data.characterReferenceType=void 0):r=Oh(t);let i=this.stack[this.stack.length-1];i.value+=r}function le(e){let t=this.stack.pop();t.position.end=vv(e.end)}function ue(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=this.sliceSerialize(e)}function de(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=`mailto:`+this.sliceSerialize(e)}function fe(){return{type:`blockquote`,children:[]}}function pe(){return{type:`code`,lang:null,meta:null,value:``}}function me(){return{type:`inlineCode`,value:``}}function he(){return{type:`definition`,identifier:``,label:null,title:null,url:``}}function ge(){return{type:`emphasis`,children:[]}}function _e(){return{type:`heading`,depth:0,children:[]}}function ve(){return{type:`break`}}function ye(){return{type:`html`,value:``}}function be(){return{type:`image`,title:null,url:``,alt:null}}function xe(){return{type:`link`,title:null,url:``,children:[]}}function Se(e){return{type:`list`,ordered:e.type===`listOrdered`,start:null,spread:e._spread,children:[]}}function Ce(e){return{type:`listItem`,spread:e._spread,checked:null,children:[]}}function we(){return{type:`paragraph`,children:[]}}function Te(){return{type:`strong`,children:[]}}function Ee(){return{type:`text`,value:``}}function De(){return{type:`thematicBreak`}}}function vv(e){return{line:e.line,column:e.column,offset:e.offset}}function yv(e,t){let n=-1;for(;++n<t.length;){let r=t[n];Array.isArray(r)?yv(e,r):bv(e,r)}}function bv(e,t){let n;for(n in t)if(hv.call(t,n))switch(n){case`canContainEols`:{let r=t[n];r&&e[n].push(...r);break}case`transforms`:{let r=t[n];r&&e[n].push(...r);break}case`enter`:case`exit`:{let r=t[n];r&&Object.assign(e[n],r);break}}}function xv(e,t){throw Error(e?"Cannot close `"+e.type+"` ("+Vm({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+Vm({start:t.start,end:t.end})+`) is open`:"Cannot close document, a token (`"+t.type+"`, "+Vm({start:t.start,end:t.end})+`) is still open`)}function Sv(e){let t=this;t.parser=n;function n(n){return gv(n,{...t.data(`settings`),...e,extensions:t.data(`micromarkExtensions`)||[],mdastExtensions:t.data(`fromMarkdownExtensions`)||[]})}}function Cv(e,t){let n={type:`element`,tagName:`blockquote`,properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function wv(e,t){let n={type:`element`,tagName:`br`,properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:`text`,value:`
|
|
97
|
+
`}]}function Tv(e,t){let n=t.value?t.value+`
|
|
98
|
+
`:``,r={},i=t.lang?t.lang.split(/\s+/):[];i.length>0&&(r.className=[`language-`+i[0]]);let a={type:`element`,tagName:`code`,properties:r,children:[{type:`text`,value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:`element`,tagName:`pre`,properties:{},children:[a]},e.patch(t,a),a}function Ev(e,t){let n={type:`element`,tagName:`del`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Dv(e,t){let n={type:`element`,tagName:`em`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Ov(e,t){let n=typeof e.options.clobberPrefix==`string`?e.options.clobberPrefix:`user-content-`,r=String(t.identifier).toUpperCase(),i=Yh(r.toLowerCase()),a=e.footnoteOrder.indexOf(r),o,s=e.footnoteCounts.get(r);s===void 0?(s=0,e.footnoteOrder.push(r),o=e.footnoteOrder.length):o=a+1,s+=1,e.footnoteCounts.set(r,s);let c={type:`element`,tagName:`a`,properties:{href:`#`+n+`fn-`+i,id:n+`fnref-`+i+(s>1?`-`+s:``),dataFootnoteRef:!0,ariaDescribedBy:[`footnote-label`]},children:[{type:`text`,value:String(o)}]};e.patch(t,c);let l={type:`element`,tagName:`sup`,properties:{},children:[c]};return e.patch(t,l),e.applyData(t,l)}function kv(e,t){let n={type:`element`,tagName:`h`+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Av(e,t){if(e.options.allowDangerousHtml){let n={type:`raw`,value:t.value};return e.patch(t,n),e.applyData(t,n)}}function jv(e,t){let n=t.referenceType,r=`]`;if(n===`collapsed`?r+=`[]`:n===`full`&&(r+=`[`+(t.label||t.identifier)+`]`),t.type===`imageReference`)return[{type:`text`,value:`![`+t.alt+r}];let i=e.all(t),a=i[0];a&&a.type===`text`?a.value=`[`+a.value:i.unshift({type:`text`,value:`[`});let o=i[i.length-1];return o&&o.type===`text`?o.value+=r:i.push({type:`text`,value:r}),i}function Mv(e,t){let n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return jv(e,t);let i={src:Yh(r.url||``),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);let a={type:`element`,tagName:`img`,properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function Nv(e,t){let n={src:Yh(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);let r={type:`element`,tagName:`img`,properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function Pv(e,t){let n={type:`text`,value:t.value.replace(/\r?\n|\r/g,` `)};e.patch(t,n);let r={type:`element`,tagName:`code`,properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function Fv(e,t){let n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return jv(e,t);let i={href:Yh(r.url||``)};r.title!==null&&r.title!==void 0&&(i.title=r.title);let a={type:`element`,tagName:`a`,properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function Iv(e,t){let n={href:Yh(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);let r={type:`element`,tagName:`a`,properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Lv(e,t,n){let r=e.all(t),i=n?Rv(n):zv(t),a={},o=[];if(typeof t.checked==`boolean`){let e=r[0],n;e&&e.type===`element`&&e.tagName===`p`?n=e:(n={type:`element`,tagName:`p`,properties:{},children:[]},r.unshift(n)),n.children.length>0&&n.children.unshift({type:`text`,value:` `}),n.children.unshift({type:`element`,tagName:`input`,properties:{type:`checkbox`,checked:t.checked,disabled:!0},children:[]}),a.className=[`task-list-item`]}let s=-1;for(;++s<r.length;){let e=r[s];(i||s!==0||e.type!==`element`||e.tagName!==`p`)&&o.push({type:`text`,value:`
|
|
99
|
+
`}),e.type===`element`&&e.tagName===`p`&&!i?o.push(...e.children):o.push(e)}let c=r[r.length-1];c&&(i||c.type!==`element`||c.tagName!==`p`)&&o.push({type:`text`,value:`
|
|
100
|
+
`});let l={type:`element`,tagName:`li`,properties:a,children:o};return e.patch(t,l),e.applyData(t,l)}function Rv(e){let t=!1;if(e.type===`list`){t=e.spread||!1;let n=e.children,r=-1;for(;!t&&++r<n.length;)t=zv(n[r])}return t}function zv(e){return e.spread??e.children.length>1}function Bv(e,t){let n={},r=e.all(t),i=-1;for(typeof t.start==`number`&&t.start!==1&&(n.start=t.start);++i<r.length;){let e=r[i];if(e.type===`element`&&e.tagName===`li`&&e.properties&&Array.isArray(e.properties.className)&&e.properties.className.includes(`task-list-item`)){n.className=[`contains-task-list`];break}}let a={type:`element`,tagName:t.ordered?`ol`:`ul`,properties:n,children:e.wrap(r,!0)};return e.patch(t,a),e.applyData(t,a)}function Vv(e,t){let n={type:`element`,tagName:`p`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Hv(e,t){let n={type:`root`,children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function Uv(e,t){let n={type:`element`,tagName:`strong`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Wv(e,t){let n=e.all(t),r=n.shift(),i=[];if(r){let n={type:`element`,tagName:`thead`,properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],n),i.push(n)}if(n.length>0){let r={type:`element`,tagName:`tbody`,properties:{},children:e.wrap(n,!0)},a=Rm(t.children[1]),o=Lm(t.children[t.children.length-1]);a&&o&&(r.position={start:a,end:o}),i.push(r)}let a={type:`element`,tagName:`table`,properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function Gv(e,t,n){let r=n?n.children:void 0,i=(r?r.indexOf(t):1)===0?`th`:`td`,a=n&&n.type===`table`?n.align:void 0,o=a?a.length:t.children.length,s=-1,c=[];for(;++s<o;){let n=t.children[s],r={},o=a?a[s]:void 0;o&&(r.align=o);let l={type:`element`,tagName:i,properties:r,children:[]};n&&(l.children=e.all(n),e.patch(n,l),l=e.applyData(n,l)),c.push(l)}let l={type:`element`,tagName:`tr`,properties:{},children:e.wrap(c,!0)};return e.patch(t,l),e.applyData(t,l)}function Kv(e,t){let n={type:`element`,tagName:`td`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}var qv=9,Jv=32;function Yv(e){let t=String(e),n=/\r?\n|\r/g,r=n.exec(t),i=0,a=[];for(;r;)a.push(Xv(t.slice(i,r.index),i>0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(Xv(t.slice(i),i>0,!1)),a.join(``)}function Xv(e,t,n){let r=0,i=e.length;if(t){let t=e.codePointAt(r);for(;t===qv||t===Jv;)r++,t=e.codePointAt(r)}if(n){let t=e.codePointAt(i-1);for(;t===qv||t===Jv;)i--,t=e.codePointAt(i-1)}return i>r?e.slice(r,i):``}function Zv(e,t){let n={type:`text`,value:Yv(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function Qv(e,t){let n={type:`element`,tagName:`hr`,properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}var $v={blockquote:Cv,break:wv,code:Tv,delete:Ev,emphasis:Dv,footnoteReference:Ov,heading:kv,html:Av,imageReference:Mv,image:Nv,inlineCode:Pv,linkReference:Fv,link:Iv,listItem:Lv,list:Bv,paragraph:Vv,root:Hv,strong:Uv,table:Wv,tableCell:Kv,tableRow:Gv,text:Zv,thematicBreak:Qv,toml:ey,yaml:ey,definition:ey,footnoteDefinition:ey};function ey(){}var ty=typeof self==`object`?self:globalThis,ny=(e,t)=>{switch(e){case`Function`:case`SharedWorker`:case`Worker`:case`eval`:case`setInterval`:case`setTimeout`:throw TypeError(`unable to deserialize `+e)}return new ty[e](t)},ry=(e,t)=>{let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o;return n(typeof ty[e]==`function`?ny(e,t):Error(t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}return n(ny(a,o),i)};return r},iy=e=>ry(new Map,e)(0),ay=``,{toString:oy}={},{keys:sy}=Object,cy=e=>{let t=typeof e;if(t!==`object`||!e)return[0,t];let n=oy.call(e).slice(8,-1);switch(n){case`Array`:return[1,ay];case`Object`:return[2,ay];case`Date`:return[3,ay];case`RegExp`:return[4,ay];case`Map`:return[5,ay];case`Set`:return[6,ay];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:e instanceof Error?[7,e.name||`Error`]:[2,n]},ly=([e,t])=>e===0&&(t===`function`||t===`symbol`),uy=(e,t,n,r)=>{let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=cy(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize `+s);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of sy(r))(e||!ly(cy(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,isNaN(r.getTime())?ay:r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(ly(cy(n))||ly(cy(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!ly(cy(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a},dy=(e,{json:t,lossy:n}={})=>{let r=[];return uy(!(t||n),!!t,new Map,r)(e),r},fy=typeof structuredClone==`function`?(e,t)=>t&&(`json`in t||`lossy`in t)?iy(dy(e,t)):structuredClone(e):(e,t)=>iy(dy(e,t));function py(e,t){let n=[{type:`text`,value:`↩`}];return t>1&&n.push({type:`element`,tagName:`sup`,properties:{},children:[{type:`text`,value:String(t)}]}),n}function my(e,t){return`Back to reference `+(e+1)+(t>1?`-`+t:``)}function hy(e){let t=typeof e.options.clobberPrefix==`string`?e.options.clobberPrefix:`user-content-`,n=e.options.footnoteBackContent||py,r=e.options.footnoteBackLabel||my,i=e.options.footnoteLabel||`Footnotes`,a=e.options.footnoteLabelTagName||`h2`,o=e.options.footnoteLabelProperties||{className:[`sr-only`]},s=[],c=-1;for(;++c<e.footnoteOrder.length;){let i=e.footnoteById.get(e.footnoteOrder[c]);if(!i)continue;let a=e.all(i),o=String(i.identifier).toUpperCase(),l=Yh(o.toLowerCase()),u=0,d=[],f=e.footnoteCounts.get(o);for(;f!==void 0&&++u<=f;){d.length>0&&d.push({type:`text`,value:` `});let e=typeof n==`string`?n:n(c,u);typeof e==`string`&&(e={type:`text`,value:e}),d.push({type:`element`,tagName:`a`,properties:{href:`#`+t+`fnref-`+l+(u>1?`-`+u:``),dataFootnoteBackref:``,ariaLabel:typeof r==`string`?r:r(c,u),className:[`data-footnote-backref`]},children:Array.isArray(e)?e:[e]})}let p=a[a.length-1];if(p&&p.type===`element`&&p.tagName===`p`){let e=p.children[p.children.length-1];e&&e.type===`text`?e.value+=` `:p.children.push({type:`text`,value:` `}),p.children.push(...d)}else a.push(...d);let m={type:`element`,tagName:`li`,properties:{id:t+`fn-`+l},children:e.wrap(a,!0)};e.patch(i,m),s.push(m)}if(s.length!==0)return{type:`element`,tagName:`section`,properties:{dataFootnotes:!0,className:[`footnotes`]},children:[{type:`element`,tagName:a,properties:{...fy(o),id:`footnote-label`},children:[{type:`text`,value:i}]},{type:`text`,value:`
|
|
101
|
+
`},{type:`element`,tagName:`ol`,properties:{},children:e.wrap(s,!0)},{type:`text`,value:`
|
|
102
|
+
`}]}}var gy=(function(e){if(e==null)return xy;if(typeof e==`function`)return by(e);if(typeof e==`object`)return Array.isArray(e)?_y(e):vy(e);if(typeof e==`string`)return yy(e);throw Error(`Expected function, string, or object as test`)});function _y(e){let t=[],n=-1;for(;++n<e.length;)t[n]=gy(e[n]);return by(r);function r(...e){let n=-1;for(;++n<t.length;)if(t[n].apply(this,e))return!0;return!1}}function vy(e){let t=e;return by(n);function n(n){let r=n,i;for(i in e)if(r[i]!==t[i])return!1;return!0}}function yy(e){return by(t);function t(t){return t&&t.type===e}}function by(e){return t;function t(t,n,r){return!!(Sy(t)&&e.call(this,t,typeof n==`number`?n:void 0,r||void 0))}}function xy(){return!0}function Sy(e){return typeof e==`object`&&!!e&&`type`in e}function Cy(e){return e}var wy=[];function Ty(e,t,n,r){let i;typeof t==`function`&&typeof n!=`function`?(r=n,n=t):i=t;let a=gy(i),o=r?-1:1;s(e,void 0,[])();function s(e,i,c){let l=e&&typeof e==`object`?e:{};if(typeof l.type==`string`){let t=typeof l.tagName==`string`?l.tagName:typeof l.name==`string`?l.name:void 0;Object.defineProperty(u,"name",{value:`node (`+Cy(e.type+(t?`<`+t+`>`:``))+`)`})}return u;function u(){let l=wy,u,d,f;if((!t||a(e,i,c[c.length-1]||void 0))&&(l=Ey(n(e,c)),l[0]===!1))return l;if(`children`in e&&e.children){let t=e;if(t.children&&l[0]!==`skip`)for(d=(r?t.children.length:-1)+o,f=c.concat(t);d>-1&&d<t.children.length;){let e=t.children[d];if(u=s(e,d,f)(),u[0]===!1)return u;d=typeof u[1]==`number`?u[1]:d+o}}return l}}}function Ey(e){return Array.isArray(e)?e:typeof e==`number`?[!0,e]:e==null?wy:[e]}function Dy(e,t,n,r){let i,a,o;typeof t==`function`&&typeof n!=`function`?(a=void 0,o=t,i=n):(a=t,o=n,i=r),Ty(e,a,s,i);function s(e,t){let n=t[t.length-1],r=n?n.children.indexOf(e):void 0;return o(e,r,n)}}var Oy={}.hasOwnProperty,ky={};function Ay(e,t){let n=t||ky,r=new Map,i=new Map,a={all:s,applyData:My,definitionById:r,footnoteById:i,footnoteCounts:new Map,footnoteOrder:[],handlers:{...$v,...n.handlers},one:o,options:n,patch:jy,wrap:Py};return Dy(e,function(e){if(e.type===`definition`||e.type===`footnoteDefinition`){let t=e.type===`definition`?r:i,n=String(e.identifier).toUpperCase();t.has(n)||t.set(n,e)}}),a;function o(e,t){let n=e.type,r=a.handlers[n];if(Oy.call(a.handlers,n)&&r)return r(a,e,t);if(a.options.passThrough&&a.options.passThrough.includes(n)){if(`children`in e){let{children:t,...n}=e,r=fy(n);return r.children=a.all(e),r}return fy(e)}return(a.options.unknownHandler||Ny)(a,e,t)}function s(e){let t=[];if(`children`in e){let n=e.children,r=-1;for(;++r<n.length;){let i=a.one(n[r],e);if(i){if(r&&n[r-1].type===`break`&&(!Array.isArray(i)&&i.type===`text`&&(i.value=Fy(i.value)),!Array.isArray(i)&&i.type===`element`)){let e=i.children[0];e&&e.type===`text`&&(e.value=Fy(e.value))}Array.isArray(i)?t.push(...i):t.push(i)}}}return t}}function jy(e,t){e.position&&(t.position=Bm(e))}function My(e,t){let n=t;if(e&&e.data){let t=e.data.hName,r=e.data.hChildren,i=e.data.hProperties;typeof t==`string`&&(n.type===`element`?n.tagName=t:n={type:`element`,tagName:t,properties:{},children:`children`in n?n.children:[n]}),n.type===`element`&&i&&Object.assign(n.properties,fy(i)),`children`in n&&n.children&&r!=null&&(n.children=r)}return n}function Ny(e,t){let n=t.data||{},r=`value`in t&&!(Oy.call(n,`hProperties`)||Oy.call(n,`hChildren`))?{type:`text`,value:t.value}:{type:`element`,tagName:`div`,properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Py(e,t){let n=[],r=-1;for(t&&n.push({type:`text`,value:`
|
|
103
|
+
`});++r<e.length;)r&&n.push({type:`text`,value:`
|
|
104
|
+
`}),n.push(e[r]);return t&&e.length>0&&n.push({type:`text`,value:`
|
|
105
|
+
`}),n}function Fy(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function Iy(e,t){let n=Ay(e,t),r=n.one(e,void 0),i=hy(n),a=Array.isArray(r)?{type:`root`,children:r}:r||{type:`root`,children:[]};return i&&(`children`in a,a.children.push({type:`text`,value:`
|
|
106
|
+
`},i)),a}function Ly(e,t){return e&&`run`in e?async function(n,r){let i=Iy(n,{file:r,...t});await e.run(i,r)}:function(n,r){return Iy(n,{file:r,...e||t})}}function Ry(e){if(e)throw e}var zy=o(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=Object.prototype.toString,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=function(e){return typeof Array.isArray==`function`?Array.isArray(e):r.call(e)===`[object Array]`},s=function(e){if(!e||r.call(e)!==`[object Object]`)return!1;var t=n.call(e,`constructor`),i=e.constructor&&e.constructor.prototype&&n.call(e.constructor.prototype,`isPrototypeOf`);if(e.constructor&&!t&&!i)return!1;for(var a in e);return a===void 0||n.call(e,a)},c=function(e,t){i&&t.name===`__proto__`?i(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},l=function(e,t){if(t===`__proto__`){if(!n.call(e,t))return;if(a)return a(e,t).value}return e[t]};t.exports=function e(){var t,n,r,i,a,u,d=arguments[0],f=1,p=arguments.length,m=!1;for(typeof d==`boolean`&&(m=d,d=arguments[1]||{},f=2),(d==null||typeof d!=`object`&&typeof d!=`function`)&&(d={});f<p;++f)if(t=arguments[f],t!=null)for(n in t)r=l(d,n),i=l(t,n),d!==i&&(m&&i&&(s(i)||(a=o(i)))?(a?(a=!1,u=r&&o(r)?r:[]):u=r&&s(r)?r:{},c(d,{name:n,newValue:e(m,u,i)})):i!==void 0&&c(d,{name:n,newValue:i}));return d}}));function By(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Vy(){let e=[],t={run:n,use:r};return t;function n(...t){let n=-1,r=t.pop();if(typeof r!=`function`)throw TypeError(`Expected function as last argument, not `+r);i(null,...t);function i(a,...o){let s=e[++n],c=-1;if(a){r(a);return}for(;++c<t.length;)(o[c]===null||o[c]===void 0)&&(o[c]=t[c]);t=o,s?Hy(s,i)(...o):r(null,...o)}}function r(n){if(typeof n!=`function`)throw TypeError("Expected `middelware` to be a function, not "+n);return e.push(n),t}}function Hy(e,t){let n;return r;function r(...t){let r=e.length>t.length,o;r&&t.push(i);try{o=e.apply(this,t)}catch(e){let t=e;if(r&&n)throw t;return i(t)}r||(o&&o.then&&typeof o.then==`function`?o.then(a,i):o instanceof Error?i(o):a(o))}function i(e,...r){n||(n=!0,t(e,...r))}function a(e){i(null,e)}}var Uy={basename:Wy,dirname:Gy,extname:Ky,join:qy,sep:`/`};function Wy(e,t){if(t!==void 0&&typeof t!=`string`)throw TypeError(`"ext" argument must be a string`);Xy(e);let n=0,r=-1,i=e.length,a;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else r<0&&(a=!0,r=i+1);return r<0?``:e.slice(n,r)}if(t===e)return``;let o=-1,s=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else o<0&&(a=!0,o=i+1),s>-1&&(e.codePointAt(i)===t.codePointAt(s--)?s<0&&(r=i):(s=-1,r=o));return n===r?r=o:r<0&&(r=e.length),e.slice(n,r)}function Gy(e){if(Xy(e),e.length===0)return`.`;let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||=!0;return t<0?e.codePointAt(0)===47?`/`:`.`:t===1&&e.codePointAt(0)===47?`//`:e.slice(0,t)}function Ky(e){Xy(e);let t=e.length,n=-1,r=0,i=-1,a=0,o;for(;t--;){let s=e.codePointAt(t);if(s===47){if(o){r=t+1;break}continue}n<0&&(o=!0,n=t+1),s===46?i<0?i=t:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===r+1?``:e.slice(i,n)}function qy(...e){let t=-1,n;for(;++t<e.length;)Xy(e[t]),e[t]&&(n=n===void 0?e[t]:n+`/`+e[t]);return n===void 0?`.`:Jy(n)}function Jy(e){Xy(e);let t=e.codePointAt(0)===47,n=Yy(e,!t);return n.length===0&&!t&&(n=`.`),n.length>0&&e.codePointAt(e.length-1)===47&&(n+=`/`),t?`/`+n:n}function Yy(e,t){let n=``,r=0,i=-1,a=0,o=-1,s,c;for(;++o<=e.length;){if(o<e.length)s=e.codePointAt(o);else if(s===47)break;else s=47;if(s===47){if(i!==o-1&&a!==1){if(i!==o-1&&a===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(c=n.lastIndexOf(`/`),c!==n.length-1){c<0?(n=``,r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf(`/`)),i=o,a=0;continue}}else if(n.length>0){n=``,r=0,i=o,a=0;continue}}t&&(n=n.length>0?n+`/..`:`..`,r=2)}else n.length>0?n+=`/`+e.slice(i+1,o):n=e.slice(i+1,o),r=o-i-1}i=o,a=0}else s===46&&a>-1?a++:a=-1}return n}function Xy(e){if(typeof e!=`string`)throw TypeError(`Path must be a string. Received `+JSON.stringify(e))}var Zy={cwd:Qy};function Qy(){return`/`}function $y(e){return!!(typeof e==`object`&&e&&`href`in e&&e.href&&`protocol`in e&&e.protocol&&e.auth===void 0)}function eb(e){if(typeof e==`string`)e=new URL(e);else if(!$y(e)){let t=TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code=`ERR_INVALID_ARG_TYPE`,t}if(e.protocol!==`file:`){let e=TypeError(`The URL must be of scheme file`);throw e.code=`ERR_INVALID_URL_SCHEME`,e}return tb(e)}function tb(e){if(e.hostname!==``){let e=TypeError(`File URL host must be "localhost" or empty on darwin`);throw e.code=`ERR_INVALID_FILE_URL_HOST`,e}let t=e.pathname,n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){let e=t.codePointAt(n+2);if(e===70||e===102){let e=TypeError(`File URL path must not include encoded / characters`);throw e.code=`ERR_INVALID_FILE_URL_PATH`,e}}return decodeURIComponent(t)}var nb=[`history`,`path`,`basename`,`stem`,`extname`,`dirname`],rb=class{constructor(e){let t;t=e?$y(e)?{path:e}:typeof e==`string`||sb(e)?{value:e}:e:{},this.cwd=`cwd`in t?``:Zy.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let n=-1;for(;++n<nb.length;){let e=nb[n];e in t&&t[e]!==void 0&&t[e]!==null&&(this[e]=e===`history`?[...t[e]]:t[e])}let r;for(r in t)nb.includes(r)||(this[r]=t[r])}get basename(){return typeof this.path==`string`?Uy.basename(this.path):void 0}set basename(e){ab(e,`basename`),ib(e,`basename`),this.path=Uy.join(this.dirname||``,e)}get dirname(){return typeof this.path==`string`?Uy.dirname(this.path):void 0}set dirname(e){ob(this.basename,`dirname`),this.path=Uy.join(e||``,this.basename)}get extname(){return typeof this.path==`string`?Uy.extname(this.path):void 0}set extname(e){if(ib(e,`extname`),ob(this.dirname,`extname`),e){if(e.codePointAt(0)!==46)throw Error("`extname` must start with `.`");if(e.includes(`.`,1))throw Error("`extname` cannot contain multiple dots")}this.path=Uy.join(this.dirname,this.stem+(e||``))}get path(){return this.history[this.history.length-1]}set path(e){$y(e)&&(e=eb(e)),ab(e,`path`),this.path!==e&&this.history.push(e)}get stem(){return typeof this.path==`string`?Uy.basename(this.path,this.extname):void 0}set stem(e){ab(e,`stem`),ib(e,`stem`),this.path=Uy.join(this.dirname||``,e+(this.extname||``))}fail(e,t,n){let r=this.message(e,t,n);throw r.fatal=!0,r}info(e,t,n){let r=this.message(e,t,n);return r.fatal=void 0,r}message(e,t,n){let r=new Gm(e,t,n);return this.path&&(r.name=this.path+`:`+r.name,r.file=this.path),r.fatal=!1,this.messages.push(r),r}toString(e){return this.value===void 0?``:typeof this.value==`string`?this.value:new TextDecoder(e||void 0).decode(this.value)}};function ib(e,t){if(e&&e.includes(Uy.sep))throw Error("`"+t+"` cannot be a path: did not expect `"+Uy.sep+"`")}function ab(e,t){if(!e)throw Error("`"+t+"` cannot be empty")}function ob(e,t){if(!e)throw Error("Setting `"+t+"` requires `path` to be set too")}function sb(e){return!!(e&&typeof e==`object`&&`byteLength`in e&&`byteOffset`in e)}var cb=(function(e){let t=this.constructor.prototype,n=t[e],r=function(){return n.apply(r,arguments)};return Object.setPrototypeOf(r,t),r}),lb=l(zy(),1),ub={}.hasOwnProperty,db=new class e extends cb{constructor(){super(`copy`),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Vy()}copy(){let t=new e,n=-1;for(;++n<this.attachers.length;){let e=this.attachers[n];t.use(...e)}return t.data((0,lb.default)(!0,{},this.namespace)),t}data(e,t){return typeof e==`string`?arguments.length===2?(mb(`data`,this.frozen),this.namespace[e]=t,this):ub.call(this.namespace,e)&&this.namespace[e]||void 0:e?(mb(`data`,this.frozen),this.namespace=e,this):this.namespace}freeze(){if(this.frozen)return this;let e=this;for(;++this.freezeIndex<this.attachers.length;){let[t,...n]=this.attachers[this.freezeIndex];if(n[0]===!1)continue;n[0]===!0&&(n[0]=void 0);let r=t.call(e,...n);typeof r==`function`&&this.transformers.use(r)}return this.frozen=!0,this.freezeIndex=1/0,this}parse(e){this.freeze();let t=_b(e),n=this.parser||this.Parser;return fb(`parse`,n),n(String(t),t)}process(e,t){let n=this;return this.freeze(),fb(`process`,this.parser||this.Parser),pb(`process`,this.compiler||this.Compiler),t?r(void 0,t):new Promise(r);function r(r,i){let a=_b(e),o=n.parse(a);n.run(o,a,function(e,t,r){if(e||!t||!r)return s(e);let i=t,a=n.stringify(i,r);yb(a)?r.value=a:r.result=a,s(e,r)});function s(e,n){e||!n?i(e):r?r(n):t(void 0,n)}}}processSync(e){let t=!1,n;return this.freeze(),fb(`processSync`,this.parser||this.Parser),pb(`processSync`,this.compiler||this.Compiler),this.process(e,r),gb(`processSync`,`process`,t),n;function r(e,r){t=!0,Ry(e),n=r}}run(e,t,n){hb(e),this.freeze();let r=this.transformers;return!n&&typeof t==`function`&&(n=t,t=void 0),n?i(void 0,n):new Promise(i);function i(i,a){let o=_b(t);r.run(e,o,s);function s(t,r,o){let s=r||e;t?a(t):i?i(s):n(void 0,s,o)}}}runSync(e,t){let n=!1,r;return this.run(e,t,i),gb(`runSync`,`run`,n),r;function i(e,t){Ry(e),r=t,n=!0}}stringify(e,t){this.freeze();let n=_b(t),r=this.compiler||this.Compiler;return pb(`stringify`,r),hb(e),r(e,n)}use(e,...t){let n=this.attachers,r=this.namespace;if(mb(`use`,this.frozen),e!=null){if(typeof e==`function`)s(e,t);else if(typeof e==`object`)Array.isArray(e)?o(e):a(e);else throw TypeError("Expected usable value, not `"+e+"`")}return this;function i(e){if(typeof e==`function`)s(e,[]);else if(typeof e==`object`){if(Array.isArray(e)){let[t,...n]=e;s(t,n)}else a(e)}else throw TypeError("Expected usable value, not `"+e+"`")}function a(e){if(!(`plugins`in e)&&!(`settings`in e))throw Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");o(e.plugins),e.settings&&(r.settings=(0,lb.default)(!0,r.settings,e.settings))}function o(e){let t=-1;if(e!=null){if(Array.isArray(e))for(;++t<e.length;){let n=e[t];i(n)}else throw TypeError("Expected a list of plugins, not `"+e+"`")}}function s(e,t){let r=-1,i=-1;for(;++r<n.length;)if(n[r][0]===e){i=r;break}if(i===-1)n.push([e,...t]);else if(t.length>0){let[r,...a]=t,o=n[i][1];By(o)&&By(r)&&(r=(0,lb.default)(!0,o,r)),n[i]=[e,r,...a]}}}}().freeze();function fb(e,t){if(typeof t!=`function`)throw TypeError("Cannot `"+e+"` without `parser`")}function pb(e,t){if(typeof t!=`function`)throw TypeError("Cannot `"+e+"` without `compiler`")}function mb(e,t){if(t)throw Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function hb(e){if(!By(e)||typeof e.type!=`string`)throw TypeError("Expected node, got `"+e+"`")}function gb(e,t,n){if(!n)throw Error("`"+e+"` finished async. Use `"+t+"` instead")}function _b(e){return vb(e)?e:new rb(e)}function vb(e){return!!(e&&typeof e==`object`&&`message`in e&&`messages`in e)}function yb(e){return typeof e==`string`||bb(e)}function bb(e){return!!(e&&typeof e==`object`&&`byteLength`in e&&`byteOffset`in e)}var xb=[],Sb={allowDangerousHtml:!0},Cb=/^(https?|ircs?|mailto|xmpp)$/i,wb=[{from:`astPlugins`,id:`remove-buggy-html-in-markdown-parser`},{from:`allowDangerousHtml`,id:`remove-buggy-html-in-markdown-parser`},{from:`allowNode`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`allowElement`},{from:`allowedTypes`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`allowedElements`},{from:`className`,id:`remove-classname`},{from:`disallowedTypes`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`disallowedElements`},{from:`escapeHtml`,id:`remove-buggy-html-in-markdown-parser`},{from:`includeElementIndex`,id:`#remove-includeelementindex`},{from:`includeNodeIndex`,id:`change-includenodeindex-to-includeelementindex`},{from:`linkTarget`,id:`remove-linktarget`},{from:`plugins`,id:`change-plugins-to-remarkplugins`,to:`remarkPlugins`},{from:`rawSourcePos`,id:`#remove-rawsourcepos`},{from:`renderers`,id:`change-renderers-to-components`,to:`components`},{from:`source`,id:`change-source-to-children`,to:`children`},{from:`sourcePos`,id:`#remove-sourcepos`},{from:`transformImageUri`,id:`#add-urltransform`,to:`urlTransform`},{from:`transformLinkUri`,id:`#add-urltransform`,to:`urlTransform`}];function Tb(e){let t=Eb(e),n=Db(e);return Ob(t.runSync(t.parse(n),n),e)}function Eb(e){let t=e.rehypePlugins||xb,n=e.remarkPlugins||xb,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...Sb}:Sb;return db().use(Sv).use(n).use(Ly,r).use(t)}function Db(e){let t=e.children||``,n=new rb;return typeof t==`string`?n.value=t:``+t,n}function Ob(e,t){let n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,o=t.skipHtml,s=t.unwrapDisallowed,c=t.urlTransform||kb;for(let e of wb)Object.hasOwn(t,e.from)&&``+e.from+(e.to?"use `"+e.to+"` instead":`remove it`)+e.id;return Dy(e,l),$m(e,{Fragment:U.Fragment,components:i,ignoreInvalidStyle:!0,jsx:U.jsx,jsxs:U.jsxs,passKeys:!0,passNode:!0});function l(e,t,i){if(e.type===`raw`&&i&&typeof t==`number`)return o?i.children.splice(t,1):i.children[t]={type:`text`,value:e.value},t;if(e.type===`element`){let t;for(t in xh)if(Object.hasOwn(xh,t)&&Object.hasOwn(e.properties,t)){let n=e.properties[t],r=xh[t];(r===null||r.includes(e.tagName))&&(e.properties[t]=c(String(n||``),t,e))}}if(e.type===`element`){let o=n?!n.includes(e.tagName):a?a.includes(e.tagName):!1;if(!o&&r&&typeof t==`number`&&(o=!r(e,t,i)),o&&i&&typeof t==`number`)return s&&e.children?i.children.splice(t,1,...e.children):i.children.splice(t,1),t}}}function kb(e){let t=e.indexOf(`:`),n=e.indexOf(`?`),r=e.indexOf(`#`),i=e.indexOf(`/`);return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||Cb.test(e.slice(0,t))?e:``}function Ab(e,t){let n=String(e);if(typeof t!=`string`)throw TypeError(`Expected character`);let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function jb(e){if(typeof e!=`string`)throw TypeError(`Expected a string`);return e.replace(/[|\\{}()[\]^$+*?.]/g,`\\$&`).replace(/-/g,`\\x2d`)}function Mb(e,t,n){let r=gy((n||{}).ignore||[]),i=Nb(t),a=-1;for(;++a<i.length;)Ty(e,`text`,o);function o(e,t){let n=-1,i;for(;++n<t.length;){let e=t[n],a=i?i.children:void 0;if(r(e,a?a.indexOf(e):void 0,i))return;i=e}if(i)return s(e,t)}function s(e,t){let n=t[t.length-1],r=i[a][0],o=i[a][1],s=0,c=n.children.indexOf(e),l=!1,u=[];r.lastIndex=0;let d=r.exec(e.value);for(;d;){let n=d.index,i={index:d.index,input:d.input,stack:[...t,e]},a=o(...d,i);if(typeof a==`string`&&(a=a.length>0?{type:`text`,value:a}:void 0),a===!1?r.lastIndex=n+1:(s!==n&&u.push({type:`text`,value:e.value.slice(s,n)}),Array.isArray(a)?u.push(...a):a&&u.push(a),s=n+d[0].length,l=!0),!r.global)break;d=r.exec(e.value)}return l?(s<e.value.length&&u.push({type:`text`,value:e.value.slice(s)}),n.children.splice(c,1,...u)):u=[e],c+u.length}}function Nb(e){let t=[];if(!Array.isArray(e))throw TypeError(`Expected find and replace tuple or list of tuples`);let n=!e[0]||Array.isArray(e[0])?e:[e],r=-1;for(;++r<n.length;){let e=n[r];t.push([Pb(e[0]),Fb(e[1])])}return t}function Pb(e){return typeof e==`string`?new RegExp(jb(e),`g`):e}function Fb(e){return typeof e==`function`?e:function(){return e}}var Ib=`phrasing`,Lb=[`autolink`,`link`,`image`,`label`];function Rb(){return{transforms:[Kb],enter:{literalAutolink:Bb,literalAutolinkEmail:Vb,literalAutolinkHttp:Vb,literalAutolinkWww:Vb},exit:{literalAutolink:Gb,literalAutolinkEmail:Wb,literalAutolinkHttp:Hb,literalAutolinkWww:Ub}}}function zb(){return{unsafe:[{character:`@`,before:`[+\\-.\\w]`,after:`[\\-.\\w]`,inConstruct:Ib,notInConstruct:Lb},{character:`.`,before:`[Ww]`,after:`[\\-.\\w]`,inConstruct:Ib,notInConstruct:Lb},{character:`:`,before:`[ps]`,after:`\\/`,inConstruct:Ib,notInConstruct:Lb}]}}function Bb(e){this.enter({type:`link`,title:null,url:``,children:[]},e)}function Vb(e){this.config.enter.autolinkProtocol.call(this,e)}function Hb(e){this.config.exit.autolinkProtocol.call(this,e)}function Ub(e){this.config.exit.data.call(this,e);let t=this.stack[this.stack.length-1];t.type,t.url=`http://`+this.sliceSerialize(e)}function Wb(e){this.config.exit.autolinkEmail.call(this,e)}function Gb(e){this.exit(e)}function Kb(e){Mb(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,qb],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,Jb]],{ignore:[`link`,`linkReference`]})}function qb(e,t,n,r,i){let a=``;if(!Zb(i)||(/^w/i.test(t)&&(n=t+n,t=``,a=`http://`),!Yb(n)))return!1;let o=Xb(n+r);if(!o[0])return!1;let s={type:`link`,title:null,url:a+t+o[0],children:[{type:`text`,value:t+o[0]}]};return o[1]?[s,{type:`text`,value:o[1]}]:s}function Jb(e,t,n,r){return!Zb(r,!0)||/[-\d_]$/.test(n)?!1:{type:`link`,title:null,url:`mailto:`+t+`@`+n,children:[{type:`text`,value:t+`@`+n}]}}function Yb(e){let t=e.split(`.`);return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function Xb(e){let t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(`)`),i=Ab(e,`(`),a=Ab(e,`)`);for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(`)`),a++;return[e,n]}function Zb(e,t){let n=e.input.charCodeAt(e.index-1);return(e.index===0||qh(n)||Kh(n))&&(!t||n!==47)}sx.peek=ox;function Qb(){this.buffer()}function $b(e){this.enter({type:`footnoteReference`,identifier:``,label:``},e)}function ex(){this.buffer()}function tx(e){this.enter({type:`footnoteDefinition`,identifier:``,label:``,children:[]},e)}function nx(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ih(this.sliceSerialize(e)).toLowerCase(),n.label=t}function rx(e){this.exit(e)}function ix(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Ih(this.sliceSerialize(e)).toLowerCase(),n.label=t}function ax(e){this.exit(e)}function ox(){return`[`}function sx(e,t,n,r){let i=n.createTracker(r),a=i.move(`[^`),o=n.enter(`footnoteReference`),s=n.enter(`reference`);return a+=i.move(n.safe(n.associationId(e),{after:`]`,before:a})),s(),o(),a+=i.move(`]`),a}function cx(){return{enter:{gfmFootnoteCallString:Qb,gfmFootnoteCall:$b,gfmFootnoteDefinitionLabelString:ex,gfmFootnoteDefinition:tx},exit:{gfmFootnoteCallString:nx,gfmFootnoteCall:rx,gfmFootnoteDefinitionLabelString:ix,gfmFootnoteDefinition:ax}}}function lx(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:sx},unsafe:[{character:`[`,inConstruct:[`label`,`phrasing`,`reference`]}]};function n(e,n,r,i){let a=r.createTracker(i),o=a.move(`[^`),s=r.enter(`footnoteDefinition`),c=r.enter(`label`);return o+=a.move(r.safe(r.associationId(e),{before:o,after:`]`})),c(),o+=a.move(`]:`),e.children&&e.children.length>0&&(a.shift(4),o+=a.move((t?`
|
|
107
|
+
`:` `)+r.indentLines(r.containerFlow(e,a.current()),t?dx:ux))),s(),o}}function ux(e,t,n){return t===0?e:dx(e,t,n)}function dx(e,t,n){return(n?``:` `)+e}var fx=[`autolink`,`destinationLiteral`,`destinationRaw`,`reference`,`titleQuote`,`titleApostrophe`];_x.peek=vx;function px(){return{canContainEols:[`delete`],enter:{strikethrough:hx},exit:{strikethrough:gx}}}function mx(){return{unsafe:[{character:`~`,inConstruct:`phrasing`,notInConstruct:fx}],handlers:{delete:_x}}}function hx(e){this.enter({type:`delete`,children:[]},e)}function gx(e){this.exit(e)}function _x(e,t,n,r){let i=n.createTracker(r),a=n.enter(`strikethrough`),o=i.move(`~~`);return o+=n.containerPhrasing(e,{...i.current(),before:o,after:`~`}),o+=i.move(`~~`),a(),o}function vx(){return`~`}function yx(e){return e.length}function bx(e,t){let n=t||{},r=(n.align||[]).concat(),i=n.stringLength||yx,a=[],o=[],s=[],c=[],l=0,u=-1;for(;++u<e.length;){let t=[],r=[],a=-1;for(e[u].length>l&&(l=e[u].length);++a<e[u].length;){let o=xx(e[u][a]);if(n.alignDelimiters!==!1){let e=i(o);r[a]=e,(c[a]===void 0||e>c[a])&&(c[a]=e)}t.push(o)}o[u]=t,s[u]=r}let d=-1;if(typeof r==`object`&&`length`in r)for(;++d<l;)a[d]=Sx(r[d]);else{let e=Sx(r);for(;++d<l;)a[d]=e}d=-1;let f=[],p=[];for(;++d<l;){let e=a[d],t=``,r=``;e===99?(t=`:`,r=`:`):e===108?t=`:`:e===114&&(r=`:`);let i=n.alignDelimiters===!1?1:Math.max(1,c[d]-t.length-r.length),o=t+`-`.repeat(i)+r;n.alignDelimiters!==!1&&(i=t.length+i+r.length,i>c[d]&&(c[d]=i),p[d]=i),f[d]=o}o.splice(1,0,f),s.splice(1,0,p),u=-1;let m=[];for(;++u<o.length;){let e=o[u],t=s[u];d=-1;let r=[];for(;++d<l;){let i=e[d]||``,o=``,s=``;if(n.alignDelimiters!==!1){let e=c[d]-(t[d]||0),n=a[d];n===114?o=` `.repeat(e):n===99?e%2?(o=` `.repeat(e/2+.5),s=` `.repeat(e/2-.5)):(o=` `.repeat(e/2),s=o):s=` `.repeat(e)}n.delimiterStart!==!1&&!d&&r.push(`|`),n.padding!==!1&&(n.alignDelimiters!==!1||i!==``)&&(n.delimiterStart!==!1||d)&&r.push(` `),n.alignDelimiters!==!1&&r.push(o),r.push(i),n.alignDelimiters!==!1&&r.push(s),n.padding!==!1&&r.push(` `),(n.delimiterEnd!==!1||d!==l-1)&&r.push(`|`)}m.push(n.delimiterEnd===!1?r.join(``).replace(/ +$/,``):r.join(``))}return m.join(`
|
|
108
|
+
`)}function xx(e){return e==null?``:String(e)}function Sx(e){let t=typeof e==`string`?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function Cx(e,t,n,r){let i=n.enter(`blockquote`),a=n.createTracker(r);a.move(`> `),a.shift(2);let o=n.indentLines(n.containerFlow(e,a.current()),wx);return i(),o}function wx(e,t,n){return`>`+(n?``:` `)+e}function Tx(e,t){return Ex(e,t.inConstruct,!0)&&!Ex(e,t.notInConstruct,!1)}function Ex(e,t,n){if(typeof t==`string`&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function Dx(e,t,n,r){let i=-1;for(;++i<n.unsafe.length;)if(n.unsafe[i].character===`
|
|
109
|
+
`&&Tx(n.stack,n.unsafe[i]))return/[ \t]/.test(r.before)?``:` `;return`\\
|
|
110
|
+
`}function Ox(e,t){let n=String(e),r=n.indexOf(t),i=r,a=0,o=0;if(typeof t!=`string`)throw TypeError(`Expected substring`);for(;r!==-1;)r===i?++a>o&&(o=a):a=1,i=r+t.length,r=n.indexOf(t,i);return o}function kx(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Ax(e){let t=e.options.fence||"`";if(t!=="`"&&t!==`~`)throw Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function jx(e,t,n,r){let i=Ax(n),a=e.value||``,o=i==="`"?`GraveAccent`:`Tilde`;if(kx(e,n)){let e=n.enter(`codeIndented`),t=n.indentLines(a,Mx);return e(),t}let s=n.createTracker(r),c=i.repeat(Math.max(Ox(a,i)+1,3)),l=n.enter(`codeFenced`),u=s.move(c);if(e.lang){let t=n.enter(`codeFencedLang${o}`);u+=s.move(n.safe(e.lang,{before:u,after:` `,encode:["`"],...s.current()})),t()}if(e.lang&&e.meta){let t=n.enter(`codeFencedMeta${o}`);u+=s.move(` `),u+=s.move(n.safe(e.meta,{before:u,after:`
|
|
111
|
+
`,encode:["`"],...s.current()})),t()}return u+=s.move(`
|
|
112
|
+
`),a&&(u+=s.move(a+`
|
|
113
|
+
`)),u+=s.move(c),l(),u}function Mx(e,t,n){return(n?``:` `)+e}function Nx(e){let t=e.options.quote||`"`;if(t!==`"`&&t!==`'`)throw Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function Px(e,t,n,r){let i=Nx(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.enter(`definition`),s=n.enter(`label`),c=n.createTracker(r),l=c.move(`[`);return l+=c.move(n.safe(n.associationId(e),{before:l,after:`]`,...c.current()})),l+=c.move(`]: `),s(),!e.url||/[\0- \u007F]/.test(e.url)?(s=n.enter(`destinationLiteral`),l+=c.move(`<`),l+=c.move(n.safe(e.url,{before:l,after:`>`,...c.current()})),l+=c.move(`>`)):(s=n.enter(`destinationRaw`),l+=c.move(n.safe(e.url,{before:l,after:e.title?` `:`
|
|
114
|
+
`,...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),l+=c.move(` `+i),l+=c.move(n.safe(e.title,{before:l,after:i,...c.current()})),l+=c.move(i),s()),o(),l}function Fx(e){let t=e.options.emphasis||`*`;if(t!==`*`&&t!==`_`)throw Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function Ix(e){return`&#x`+e.toString(16).toUpperCase()+`;`}function Lx(e,t,n){let r=rg(e),i=rg(t);return r===void 0?i===void 0?n===`_`?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Rx.peek=zx;function Rx(e,t,n,r){let i=Fx(n),a=n.enter(`emphasis`),o=n.createTracker(r),s=o.move(i),c=o.move(n.containerPhrasing(e,{after:i,before:s,...o.current()})),l=c.charCodeAt(0),u=Lx(r.before.charCodeAt(r.before.length-1),l,i);u.inside&&(c=Ix(l)+c.slice(1));let d=c.charCodeAt(c.length-1),f=Lx(r.after.charCodeAt(0),d,i);f.inside&&(c=c.slice(0,-1)+Ix(d));let p=o.move(i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+p}function zx(e,t,n){return n.options.emphasis||`*`}function Bx(e,t){let n=!1;return Dy(e,function(e){if(`value`in e&&/\r?\n|\r/.test(e.value)||e.type===`break`)return n=!0,!1}),!!((!e.depth||e.depth<3)&&Ch(e)&&(t.options.setext||n))}function Vx(e,t,n,r){let i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(Bx(e,n)){let t=n.enter(`headingSetext`),r=n.enter(`phrasing`),o=n.containerPhrasing(e,{...a.current(),before:`
|
|
115
|
+
`,after:`
|
|
116
|
+
`});return r(),t(),o+`
|
|
117
|
+
`+(i===1?`=`:`-`).repeat(o.length-(Math.max(o.lastIndexOf(`\r`),o.lastIndexOf(`
|
|
118
|
+
`))+1))}let o=`#`.repeat(i),s=n.enter(`headingAtx`),c=n.enter(`phrasing`);a.move(o+` `);let l=n.containerPhrasing(e,{before:`# `,after:`
|
|
119
|
+
`,...a.current()});return/^[\t ]/.test(l)&&(l=Ix(l.charCodeAt(0))+l.slice(1)),l=l?o+` `+l:o,n.options.closeAtx&&(l+=` `+o),c(),s(),l}Hx.peek=Ux;function Hx(e){return e.value||``}function Ux(){return`<`}Wx.peek=Gx;function Wx(e,t,n,r){let i=Nx(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.enter(`image`),s=n.enter(`label`),c=n.createTracker(r),l=c.move(`![`);return l+=c.move(n.safe(e.alt,{before:l,after:`]`,...c.current()})),l+=c.move(`](`),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=n.enter(`destinationLiteral`),l+=c.move(`<`),l+=c.move(n.safe(e.url,{before:l,after:`>`,...c.current()})),l+=c.move(`>`)):(s=n.enter(`destinationRaw`),l+=c.move(n.safe(e.url,{before:l,after:e.title?` `:`)`,...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),l+=c.move(` `+i),l+=c.move(n.safe(e.title,{before:l,after:i,...c.current()})),l+=c.move(i),s()),l+=c.move(`)`),o(),l}function Gx(){return`!`}Kx.peek=qx;function Kx(e,t,n,r){let i=e.referenceType,a=n.enter(`imageReference`),o=n.enter(`label`),s=n.createTracker(r),c=s.move(`![`),l=n.safe(e.alt,{before:c,after:`]`,...s.current()});c+=s.move(l+`][`),o();let u=n.stack;n.stack=[],o=n.enter(`reference`);let d=n.safe(n.associationId(e),{before:c,after:`]`,...s.current()});return o(),n.stack=u,a(),i===`full`||!l||l!==d?c+=s.move(d+`]`):i===`shortcut`?c=c.slice(0,-1):c+=s.move(`]`),c}function qx(){return`!`}Jx.peek=Yx;function Jx(e,t,n){let r=e.value||``,i="`",a=-1;for(;RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=` `+r+` `);++a<n.unsafe.length;){let e=n.unsafe[a],t=n.compilePattern(e),i;if(e.atBreak)for(;i=t.exec(r);){let e=i.index;r.charCodeAt(e)===10&&r.charCodeAt(e-1)===13&&e--,r=r.slice(0,e)+` `+r.slice(i.index+1)}}return i+r+i}function Yx(){return"`"}function Xx(e,t){let n=Ch(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type===`text`&&(n===e.url||`mailto:`+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}Zx.peek=Qx;function Zx(e,t,n,r){let i=Nx(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.createTracker(r),s,c;if(Xx(e,n)){let t=n.stack;n.stack=[],s=n.enter(`autolink`);let r=o.move(`<`);return r+=o.move(n.containerPhrasing(e,{before:r,after:`>`,...o.current()})),r+=o.move(`>`),s(),n.stack=t,r}s=n.enter(`link`),c=n.enter(`label`);let l=o.move(`[`);return l+=o.move(n.containerPhrasing(e,{before:l,after:`](`,...o.current()})),l+=o.move(`](`),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter(`destinationLiteral`),l+=o.move(`<`),l+=o.move(n.safe(e.url,{before:l,after:`>`,...o.current()})),l+=o.move(`>`)):(c=n.enter(`destinationRaw`),l+=o.move(n.safe(e.url,{before:l,after:e.title?` `:`)`,...o.current()}))),c(),e.title&&(c=n.enter(`title${a}`),l+=o.move(` `+i),l+=o.move(n.safe(e.title,{before:l,after:i,...o.current()})),l+=o.move(i),c()),l+=o.move(`)`),s(),l}function Qx(e,t,n){return Xx(e,n)?`<`:`[`}$x.peek=eS;function $x(e,t,n,r){let i=e.referenceType,a=n.enter(`linkReference`),o=n.enter(`label`),s=n.createTracker(r),c=s.move(`[`),l=n.containerPhrasing(e,{before:c,after:`]`,...s.current()});c+=s.move(l+`][`),o();let u=n.stack;n.stack=[],o=n.enter(`reference`);let d=n.safe(n.associationId(e),{before:c,after:`]`,...s.current()});return o(),n.stack=u,a(),i===`full`||!l||l!==d?c+=s.move(d+`]`):i===`shortcut`?c=c.slice(0,-1):c+=s.move(`]`),c}function eS(){return`[`}function tS(e){let t=e.options.bullet||`*`;if(t!==`*`&&t!==`+`&&t!==`-`)throw Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function nS(e){let t=tS(e),n=e.options.bulletOther;if(!n)return t===`*`?`-`:`*`;if(n!==`*`&&n!==`+`&&n!==`-`)throw Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function rS(e){let t=e.options.bulletOrdered||`.`;if(t!==`.`&&t!==`)`)throw Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function iS(e){let t=e.options.rule||`*`;if(t!==`*`&&t!==`-`&&t!==`_`)throw Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function aS(e,t,n,r){let i=n.enter(`list`),a=n.bulletCurrent,o=e.ordered?rS(n):tS(n),s=e.ordered?o===`.`?`)`:`.`:nS(n),c=t&&n.bulletLastUsed?o===n.bulletLastUsed:!1;if(!e.ordered){let t=e.children?e.children[0]:void 0;if((o===`*`||o===`-`)&&t&&(!t.children||!t.children[0])&&n.stack[n.stack.length-1]===`list`&&n.stack[n.stack.length-2]===`listItem`&&n.stack[n.stack.length-3]===`list`&&n.stack[n.stack.length-4]===`listItem`&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),iS(n)===o&&t){let t=-1;for(;++t<e.children.length;){let n=e.children[t];if(n&&n.type===`listItem`&&n.children&&n.children[0]&&n.children[0].type===`thematicBreak`){c=!0;break}}}}c&&(o=s),n.bulletCurrent=o;let l=n.containerFlow(e,r);return n.bulletLastUsed=o,n.bulletCurrent=a,i(),l}function oS(e){let t=e.options.listItemIndent||`one`;if(t!==`tab`&&t!==`one`&&t!==`mixed`)throw Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function sS(e,t,n,r){let i=oS(n),a=n.bulletCurrent||tS(n);t&&t.type===`list`&&t.ordered&&(a=(typeof t.start==`number`&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let o=a.length+1;(i===`tab`||i===`mixed`&&(t&&t.type===`list`&&t.spread||e.spread))&&(o=Math.ceil(o/4)*4);let s=n.createTracker(r);s.move(a+` `.repeat(o-a.length)),s.shift(o);let c=n.enter(`listItem`),l=n.indentLines(n.containerFlow(e,s.current()),u);return c(),l;function u(e,t,n){return t?(n?``:` `.repeat(o))+e:(n?a:a+` `.repeat(o-a.length))+e}}function cS(e,t,n,r){let i=n.enter(`paragraph`),a=n.enter(`phrasing`),o=n.containerPhrasing(e,r);return a(),i(),o}var lS=gy([`break`,`delete`,`emphasis`,`footnote`,`footnoteReference`,`image`,`imageReference`,`inlineCode`,`inlineMath`,`link`,`linkReference`,`mdxJsxTextElement`,`mdxTextExpression`,`strong`,`text`,`textDirective`]);function uS(e,t,n,r){return(e.children.some(function(e){return lS(e)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function dS(e){let t=e.options.strong||`*`;if(t!==`*`&&t!==`_`)throw Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}fS.peek=pS;function fS(e,t,n,r){let i=dS(n),a=n.enter(`strong`),o=n.createTracker(r),s=o.move(i+i),c=o.move(n.containerPhrasing(e,{after:i,before:s,...o.current()})),l=c.charCodeAt(0),u=Lx(r.before.charCodeAt(r.before.length-1),l,i);u.inside&&(c=Ix(l)+c.slice(1));let d=c.charCodeAt(c.length-1),f=Lx(r.after.charCodeAt(0),d,i);f.inside&&(c=c.slice(0,-1)+Ix(d));let p=o.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+p}function pS(e,t,n){return n.options.strong||`*`}function mS(e,t,n,r){return n.safe(e.value,r)}function hS(e){let t=e.options.ruleRepetition||3;if(t<3)throw Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function gS(e,t,n){let r=(iS(n)+(n.options.ruleSpaces?` `:``)).repeat(hS(n));return n.options.ruleSpaces?r.slice(0,-1):r}var _S={blockquote:Cx,break:Dx,code:jx,definition:Px,emphasis:Rx,hardBreak:Dx,heading:Vx,html:Hx,image:Wx,imageReference:Kx,inlineCode:Jx,link:Zx,linkReference:$x,list:aS,listItem:sS,paragraph:cS,root:uS,strong:fS,text:mS,thematicBreak:gS};function vS(){return{enter:{table:yS,tableData:CS,tableHeader:CS,tableRow:xS},exit:{codeText:wS,table:bS,tableData:SS,tableHeader:SS,tableRow:SS}}}function yS(e){let t=e._align;this.enter({type:`table`,align:t.map(function(e){return e===`none`?null:e}),children:[]},e),this.data.inTable=!0}function bS(e){this.exit(e),this.data.inTable=void 0}function xS(e){this.enter({type:`tableRow`,children:[]},e)}function SS(e){this.exit(e)}function CS(e){this.enter({type:`tableCell`,children:[]},e)}function wS(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,TS));let n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function TS(e,t){return t===`|`?t:e}function ES(e){let t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?` `:`|`;return{unsafe:[{character:`\r`,inConstruct:`tableCell`},{character:`
|
|
120
|
+
`,inConstruct:`tableCell`},{atBreak:!0,character:`|`,after:`[ :-]`},{character:`|`,inConstruct:`tableCell`},{atBreak:!0,character:`:`,after:`-`},{atBreak:!0,character:`-`,after:`[:|-]`}],handlers:{inlineCode:f,table:o,tableCell:c,tableRow:s}};function o(e,t,n,r){return l(u(e,n,r),e.align)}function s(e,t,n,r){let i=l([d(e,n,r)]);return i.slice(0,i.indexOf(`
|
|
121
|
+
`))}function c(e,t,n,r){let i=n.enter(`tableCell`),o=n.enter(`phrasing`),s=n.containerPhrasing(e,{...r,before:a,after:a});return o(),i(),s}function l(e,t){return bx(e,{align:t,alignDelimiters:r,padding:n,stringLength:i})}function u(e,t,n){let r=e.children,i=-1,a=[],o=t.enter(`table`);for(;++i<r.length;)a[i]=d(r[i],t,n);return o(),a}function d(e,t,n){let r=e.children,i=-1,a=[],o=t.enter(`tableRow`);for(;++i<r.length;)a[i]=c(r[i],e,t,n);return o(),a}function f(e,t,n){let r=_S.inlineCode(e,t,n);return n.stack.includes(`tableCell`)&&(r=r.replace(/\|/g,`\\$&`)),r}}function DS(){return{exit:{taskListCheckValueChecked:kS,taskListCheckValueUnchecked:kS,paragraph:AS}}}function OS(){return{unsafe:[{atBreak:!0,character:`-`,after:`[:|-]`}],handlers:{listItem:jS}}}function kS(e){let t=this.stack[this.stack.length-2];t.type,t.checked=e.type===`taskListCheckValueChecked`}function AS(e){let t=this.stack[this.stack.length-2];if(t&&t.type===`listItem`&&typeof t.checked==`boolean`){let e=this.stack[this.stack.length-1];e.type;let n=e.children[0];if(n&&n.type===`text`){let r=t.children,i=-1,a;for(;++i<r.length;){let e=r[i];if(e.type===`paragraph`){a=e;break}}a===e&&(n.value=n.value.slice(1),n.value.length===0?e.children.shift():e.position&&n.position&&typeof n.position.start.offset==`number`&&(n.position.start.column++,n.position.start.offset++,e.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function jS(e,t,n,r){let i=e.children[0],a=typeof e.checked==`boolean`&&i&&i.type===`paragraph`,o=`[`+(e.checked?`x`:` `)+`] `,s=n.createTracker(r);a&&s.move(o);let c=_S.listItem(e,t,n,{...r,...s.current()});return a&&(c=c.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,l)),c;function l(e){return e+o}}function MS(){return[Rb(),cx(),px(),vS(),DS()]}function NS(e){return{extensions:[zb(),lx(e),mx(),ES(e),OS()]}}var PS={tokenize:JS,partial:!0},FS={tokenize:YS,partial:!0},IS={tokenize:XS,partial:!0},LS={tokenize:ZS,partial:!0},RS={tokenize:QS,partial:!0},zS={name:`wwwAutolink`,tokenize:KS,previous:$S},BS={name:`protocolAutolink`,tokenize:qS,previous:eC},VS={name:`emailAutolink`,tokenize:GS,previous:tC},HS={};function US(){return{text:HS}}for(var WS=48;WS<123;)HS[WS]=VS,WS++,WS===58?WS=65:WS===91&&(WS=97);HS[43]=VS,HS[45]=VS,HS[46]=VS,HS[95]=VS,HS[72]=[VS,BS],HS[104]=[VS,BS],HS[87]=[VS,zS],HS[119]=[VS,zS];function GS(e,t,n){let r=this,i,a;return o;function o(t){return!nC(t)||!tC.call(r,r.previous)||rC(r.events)?n(t):(e.enter(`literalAutolink`),e.enter(`literalAutolinkEmail`),s(t))}function s(t){return nC(t)?(e.consume(t),s):t===64?(e.consume(t),c):n(t)}function c(t){return t===46?e.check(RS,u,l)(t):t===45||t===95||Rh(t)?(a=!0,e.consume(t),c):u(t)}function l(t){return e.consume(t),i=!0,c}function u(o){return a&&i&&Lh(r.previous)?(e.exit(`literalAutolinkEmail`),e.exit(`literalAutolink`),t(o)):n(o)}}function KS(e,t,n){let r=this;return i;function i(t){return t!==87&&t!==119||!$S.call(r,r.previous)||rC(r.events)?n(t):(e.enter(`literalAutolink`),e.enter(`literalAutolinkWww`),e.check(PS,e.attempt(FS,e.attempt(IS,a),n),n)(t))}function a(n){return e.exit(`literalAutolinkWww`),e.exit(`literalAutolink`),t(n)}}function qS(e,t,n){let r=this,i=``,a=!1;return o;function o(t){return(t===72||t===104)&&eC.call(r,r.previous)&&!rC(r.events)?(e.enter(`literalAutolink`),e.enter(`literalAutolinkHttp`),i+=String.fromCodePoint(t),e.consume(t),s):n(t)}function s(t){if(Lh(t)&&i.length<5)return i+=String.fromCodePoint(t),e.consume(t),s;if(t===58){let n=i.toLowerCase();if(n===`http`||n===`https`)return e.consume(t),c}return n(t)}function c(t){return t===47?(e.consume(t),a?l:(a=!0,c)):n(t)}function l(t){return t===null||Bh(t)||Wh(t)||qh(t)||Kh(t)?n(t):e.attempt(FS,e.attempt(IS,u),n)(t)}function u(n){return e.exit(`literalAutolinkHttp`),e.exit(`literalAutolink`),t(n)}}function JS(e,t,n){let r=0;return i;function i(t){return(t===87||t===119)&&r<3?(r++,e.consume(t),i):t===46&&r===3?(e.consume(t),a):n(t)}function a(e){return e===null?n(e):t(e)}}function YS(e,t,n){let r,i,a;return o;function o(t){return t===46||t===95?e.check(LS,c,s)(t):t===null||Wh(t)||qh(t)||t!==45&&Kh(t)?c(t):(a=!0,e.consume(t),o)}function s(t){return t===95?r=!0:(i=r,r=void 0),e.consume(t),o}function c(e){return i||r||!a?n(e):t(e)}}function XS(e,t){let n=0,r=0;return i;function i(o){return o===40?(n++,e.consume(o),i):o===41&&r<n?a(o):o===33||o===34||o===38||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===60||o===63||o===93||o===95||o===126?e.check(LS,t,a)(o):o===null||Wh(o)||qh(o)?t(o):(e.consume(o),i)}function a(t){return t===41&&r++,e.consume(t),i}}function ZS(e,t,n){return r;function r(o){return o===33||o===34||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===63||o===95||o===126?(e.consume(o),r):o===38?(e.consume(o),a):o===93?(e.consume(o),i):o===60||o===null||Wh(o)||qh(o)?t(o):n(o)}function i(e){return e===null||e===40||e===91||Wh(e)||qh(e)?t(e):r(e)}function a(e){return Lh(e)?o(e):n(e)}function o(t){return t===59?(e.consume(t),r):Lh(t)?(e.consume(t),o):n(t)}}function QS(e,t,n){return r;function r(t){return e.consume(t),i}function i(e){return Rh(e)?n(e):t(e)}}function $S(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Wh(e)}function eC(e){return!Lh(e)}function tC(e){return!(e===47||nC(e))}function nC(e){return e===43||e===45||e===46||e===95||Rh(e)}function rC(e){let t=e.length,n=!1;for(;t--;){let r=e[t][1];if((r.type===`labelLink`||r.type===`labelImage`)&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}var iC={tokenize:fC,partial:!0};function aC(){return{document:{91:{name:`gfmFootnoteDefinition`,tokenize:lC,continuation:{tokenize:uC},exit:dC}},text:{91:{name:`gfmFootnoteCall`,tokenize:cC},93:{name:`gfmPotentialFootnoteCall`,add:`after`,tokenize:oC,resolveTo:sC}}}}function oC(e,t,n){let r=this,i=r.events.length,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]),o;for(;i--;){let e=r.events[i][1];if(e.type===`labelImage`){o=e;break}if(e.type===`gfmFootnoteCall`||e.type===`labelLink`||e.type===`label`||e.type===`image`||e.type===`link`)break}return s;function s(i){if(!o||!o._balanced)return n(i);let s=Ih(r.sliceSerialize({start:o.end,end:r.now()}));return s.codePointAt(0)!==94||!a.includes(s.slice(1))?n(i):(e.enter(`gfmFootnoteCallLabelMarker`),e.consume(i),e.exit(`gfmFootnoteCallLabelMarker`),t(i))}}function sC(e,t){let n=e.length;for(;n--;)if(e[n][1].type===`labelImage`&&e[n][0]===`enter`){e[n][1];break}e[n+1][1].type=`data`,e[n+3][1].type=`gfmFootnoteCallLabelMarker`;let r={type:`gfmFootnoteCall`,start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:`gfmFootnoteCallMarker`,start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;let a={type:`gfmFootnoteCallString`,start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},o={type:`chunkString`,contentType:`string`,start:Object.assign({},a.start),end:Object.assign({},a.end)},s=[e[n+1],e[n+2],[`enter`,r,t],e[n+3],e[n+4],[`enter`,i,t],[`exit`,i,t],[`enter`,a,t],[`enter`,o,t],[`exit`,o,t],[`exit`,a,t],e[e.length-2],e[e.length-1],[`exit`,r,t]];return e.splice(n,e.length-n+1,...s),e}function cC(e,t,n){let r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]),a=0,o;return s;function s(t){return e.enter(`gfmFootnoteCall`),e.enter(`gfmFootnoteCallLabelMarker`),e.consume(t),e.exit(`gfmFootnoteCallLabelMarker`),c}function c(t){return t===94?(e.enter(`gfmFootnoteCallMarker`),e.consume(t),e.exit(`gfmFootnoteCallMarker`),e.enter(`gfmFootnoteCallString`),e.enter(`chunkString`).contentType=`string`,l):n(t)}function l(s){if(a>999||s===93&&!o||s===null||s===91||Wh(s))return n(s);if(s===93){e.exit(`chunkString`);let a=e.exit(`gfmFootnoteCallString`);return i.includes(Ih(r.sliceSerialize(a)))?(e.enter(`gfmFootnoteCallLabelMarker`),e.consume(s),e.exit(`gfmFootnoteCallLabelMarker`),e.exit(`gfmFootnoteCall`),t):n(s)}return Wh(s)||(o=!0),a++,e.consume(s),s===92?u:l}function u(t){return t===91||t===92||t===93?(e.consume(t),a++,l):l(t)}}function lC(e,t,n){let r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]),a,o=0,s;return c;function c(t){return e.enter(`gfmFootnoteDefinition`)._container=!0,e.enter(`gfmFootnoteDefinitionLabel`),e.enter(`gfmFootnoteDefinitionLabelMarker`),e.consume(t),e.exit(`gfmFootnoteDefinitionLabelMarker`),l}function l(t){return t===94?(e.enter(`gfmFootnoteDefinitionMarker`),e.consume(t),e.exit(`gfmFootnoteDefinitionMarker`),e.enter(`gfmFootnoteDefinitionLabelString`),e.enter(`chunkString`).contentType=`string`,u):n(t)}function u(t){if(o>999||t===93&&!s||t===null||t===91||Wh(t))return n(t);if(t===93){e.exit(`chunkString`);let n=e.exit(`gfmFootnoteDefinitionLabelString`);return a=Ih(r.sliceSerialize(n)),e.enter(`gfmFootnoteDefinitionLabelMarker`),e.consume(t),e.exit(`gfmFootnoteDefinitionLabelMarker`),e.exit(`gfmFootnoteDefinitionLabel`),f}return Wh(t)||(s=!0),o++,e.consume(t),t===92?d:u}function d(t){return t===91||t===92||t===93?(e.consume(t),o++,u):u(t)}function f(t){return t===58?(e.enter(`definitionMarker`),e.consume(t),e.exit(`definitionMarker`),i.includes(a)||i.push(a),Xh(e,p,`gfmFootnoteDefinitionWhitespace`)):n(t)}function p(e){return t(e)}}function uC(e,t,n){return e.check(dg,t,e.attempt(iC,t,n))}function dC(e){e.exit(`gfmFootnoteDefinition`)}function fC(e,t,n){let r=this;return Xh(e,i,`gfmFootnoteDefinitionIndent`,5);function i(e){let i=r.events[r.events.length-1];return i&&i[1].type===`gfmFootnoteDefinitionIndent`&&i[2].sliceSerialize(i[1],!0).length===4?t(e):n(e)}}function pC(e){let t=(e||{}).singleTilde,n={name:`strikethrough`,tokenize:i,resolveAll:r};return t??=!0,{text:{126:n},insideSpan:{null:[n]},attentionMarkers:{null:[126]}};function r(e,t){let n=-1;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`strikethroughSequenceTemporary`&&e[n][1]._close){let r=n;for(;r--;)if(e[r][0]===`exit`&&e[r][1].type===`strikethroughSequenceTemporary`&&e[r][1]._open&&e[n][1].end.offset-e[n][1].start.offset===e[r][1].end.offset-e[r][1].start.offset){e[n][1].type=`strikethroughSequence`,e[r][1].type=`strikethroughSequence`;let i={type:`strikethrough`,start:Object.assign({},e[r][1].start),end:Object.assign({},e[n][1].end)},a={type:`strikethroughText`,start:Object.assign({},e[r][1].end),end:Object.assign({},e[n][1].start)},o=[[`enter`,i,t],[`enter`,e[r][1],t],[`exit`,e[r][1],t],[`enter`,a,t]],s=t.parser.constructs.insideSpan.null;s&&kh(o,o.length,0,ig(s,e.slice(r+1,n),t)),kh(o,o.length,0,[[`exit`,a,t],[`enter`,e[n][1],t],[`exit`,e[n][1],t],[`exit`,i,t]]),kh(e,r-1,n-r+3,o),n=r+o.length-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`strikethroughSequenceTemporary`&&(e[n][1].type=`data`);return e}function i(e,n,r){let i=this.previous,a=this.events,o=0;return s;function s(t){return i===126&&a[a.length-1][1].type!==`characterEscape`?r(t):(e.enter(`strikethroughSequenceTemporary`),c(t))}function c(a){let s=rg(i);if(a===126)return o>1?r(a):(e.consume(a),o++,c);if(o<2&&!t)return r(a);let l=e.exit(`strikethroughSequenceTemporary`),u=rg(a);return l._open=!u||u===2&&!!s,l._close=!s||s===2&&!!u,n(a)}}}var mC=class{constructor(){this.map=[]}add(e,t,n){hC(this,e,t,n)}consume(e){if(this.map.sort(function(e,t){return e[0]-t[0]}),this.map.length===0)return;let t=this.map.length,n=[];for(;t>0;)--t,n.push(e.slice(this.map[t][0]+this.map[t][1]),this.map[t][2]),e.length=this.map[t][0];n.push(e.slice()),e.length=0;let r=n.pop();for(;r;){for(let t of r)e.push(t);r=n.pop()}this.map.length=0}};function hC(e,t,n,r){let i=0;if(n!==0||r.length!==0){for(;i<e.map.length;){if(e.map[i][0]===t){e.map[i][1]+=n,e.map[i][2].push(...r);return}i+=1}e.map.push([t,n,r])}}function gC(e,t){let n=!1,r=[];for(;t<e.length;){let i=e[t];if(n){if(i[0]===`enter`)i[1].type===`tableContent`&&r.push(e[t+1][1].type===`tableDelimiterMarker`?`left`:`none`);else if(i[1].type===`tableContent`){if(e[t-1][1].type===`tableDelimiterMarker`){let e=r.length-1;r[e]=r[e]===`left`?`center`:`right`}}else if(i[1].type===`tableDelimiterRow`)break}else i[0]===`enter`&&i[1].type===`tableDelimiterRow`&&(n=!0);t+=1}return r}function _C(){return{flow:{null:{name:`table`,tokenize:vC,resolveAll:yC}}}}function vC(e,t,n){let r=this,i=0,a=0,o;return s;function s(e){let t=r.events.length-1;for(;t>-1;){let e=r.events[t][1].type;if(e===`lineEnding`||e===`linePrefix`)t--;else break}let i=t>-1?r.events[t][1].type:null,a=i===`tableHead`||i===`tableRow`?S:c;return a===S&&r.parser.lazy[r.now().line]?n(e):a(e)}function c(t){return e.enter(`tableHead`),e.enter(`tableRow`),l(t)}function l(e){return e===124?u(e):(o=!0,a+=1,u(e))}function u(t){return t===null?n(t):$(t)?a>1?(a=0,r.interrupt=!0,e.exit(`tableRow`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),p):n(t):Gh(t)?Xh(e,u,`whitespace`)(t):(a+=1,o&&(o=!1,i+=1),t===124?(e.enter(`tableCellDivider`),e.consume(t),e.exit(`tableCellDivider`),o=!0,u):(e.enter(`data`),d(t)))}function d(t){return t===null||t===124||Wh(t)?(e.exit(`data`),u(t)):(e.consume(t),t===92?f:d)}function f(t){return t===92||t===124?(e.consume(t),d):d(t)}function p(t){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(t):(e.enter(`tableDelimiterRow`),o=!1,Gh(t)?Xh(e,m,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):m(t))}function m(t){return t===45||t===58?g(t):t===124?(o=!0,e.enter(`tableCellDivider`),e.consume(t),e.exit(`tableCellDivider`),h):x(t)}function h(t){return Gh(t)?Xh(e,g,`whitespace`)(t):g(t)}function g(t){return t===58?(a+=1,o=!0,e.enter(`tableDelimiterMarker`),e.consume(t),e.exit(`tableDelimiterMarker`),_):t===45?(a+=1,_(t)):t===null||$(t)?b(t):x(t)}function _(t){return t===45?(e.enter(`tableDelimiterFiller`),v(t)):x(t)}function v(t){return t===45?(e.consume(t),v):t===58?(o=!0,e.exit(`tableDelimiterFiller`),e.enter(`tableDelimiterMarker`),e.consume(t),e.exit(`tableDelimiterMarker`),y):(e.exit(`tableDelimiterFiller`),y(t))}function y(t){return Gh(t)?Xh(e,b,`whitespace`)(t):b(t)}function b(n){return n===124?m(n):n===null||$(n)?!o||i!==a?x(n):(e.exit(`tableDelimiterRow`),e.exit(`tableHead`),t(n)):x(n)}function x(e){return n(e)}function S(t){return e.enter(`tableRow`),C(t)}function C(n){return n===124?(e.enter(`tableCellDivider`),e.consume(n),e.exit(`tableCellDivider`),C):n===null||$(n)?(e.exit(`tableRow`),t(n)):Gh(n)?Xh(e,C,`whitespace`)(n):(e.enter(`data`),w(n))}function w(t){return t===null||t===124||Wh(t)?(e.exit(`data`),C(t)):(e.consume(t),t===92?T:w)}function T(t){return t===92||t===124?(e.consume(t),w):w(t)}}function yC(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],o=[0,0,0,0],s=!1,c=0,l,u,d,f=new mC;for(;++n<e.length;){let p=e[n],m=p[1];p[0]===`enter`?m.type===`tableHead`?(s=!1,c!==0&&(xC(f,t,c,l,u),u=void 0,c=0),l={type:`table`,start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[[`enter`,l,t]])):m.type===`tableRow`||m.type===`tableDelimiterRow`?(r=!0,d=void 0,a=[0,0,0,0],o=[0,n+1,0,0],s&&(s=!1,u={type:`tableBody`,start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[[`enter`,u,t]])),i=m.type===`tableDelimiterRow`?2:u?3:1):i&&(m.type===`data`||m.type===`tableDelimiterMarker`||m.type===`tableDelimiterFiller`)?(r=!1,o[2]===0&&(a[1]!==0&&(o[0]=o[1],d=bC(f,t,a,i,void 0,d),a=[0,0,0,0]),o[2]=n)):m.type===`tableCellDivider`&&(r?r=!1:(a[1]!==0&&(o[0]=o[1],d=bC(f,t,a,i,void 0,d)),a=o,o=[a[1],n,0,0])):m.type===`tableHead`?(s=!0,c=n):m.type===`tableRow`||m.type===`tableDelimiterRow`?(c=n,a[1]===0?o[1]!==0&&(d=bC(f,t,o,i,n,d)):(o[0]=o[1],d=bC(f,t,a,i,n,d)),i=0):i&&(m.type===`data`||m.type===`tableDelimiterMarker`||m.type===`tableDelimiterFiller`)&&(o[3]=n)}for(c!==0&&xC(f,t,c,l,u),f.consume(t.events),n=-1;++n<t.events.length;){let e=t.events[n];e[0]===`enter`&&e[1].type===`table`&&(e[1]._align=gC(t.events,n))}return e}function bC(e,t,n,r,i,a){let o=r===1?`tableHeader`:r===2?`tableDelimiter`:`tableData`;n[0]!==0&&(a.end=Object.assign({},SC(t.events,n[0])),e.add(n[0],0,[[`exit`,a,t]]));let s=SC(t.events,n[1]);if(a={type:o,start:Object.assign({},s),end:Object.assign({},s)},e.add(n[1],0,[[`enter`,a,t]]),n[2]!==0){let i=SC(t.events,n[2]),a=SC(t.events,n[3]),o={type:`tableContent`,start:Object.assign({},i),end:Object.assign({},a)};if(e.add(n[2],0,[[`enter`,o,t]]),r!==2){let r=t.events[n[2]],i=t.events[n[3]];if(r[1].end=Object.assign({},i[1].end),r[1].type=`chunkText`,r[1].contentType=`text`,n[3]>n[2]+1){let t=n[2]+1,r=n[3]-n[2]-1;e.add(t,r,[])}}e.add(n[3]+1,0,[[`exit`,o,t]])}return i!==void 0&&(a.end=Object.assign({},SC(t.events,i)),e.add(i,0,[[`exit`,a,t]]),a=void 0),a}function xC(e,t,n,r,i){let a=[],o=SC(t.events,n);i&&(i.end=Object.assign({},o),a.push([`exit`,i,t])),r.end=Object.assign({},o),a.push([`exit`,r,t]),e.add(n+1,0,a)}function SC(e,t){let n=e[t],r=n[0]===`enter`?`start`:`end`;return n[1][r]}var CC={name:`tasklistCheck`,tokenize:TC};function wC(){return{text:{91:CC}}}function TC(e,t,n){let r=this;return i;function i(t){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(t):(e.enter(`taskListCheck`),e.enter(`taskListCheckMarker`),e.consume(t),e.exit(`taskListCheckMarker`),a)}function a(t){return Wh(t)?(e.enter(`taskListCheckValueUnchecked`),e.consume(t),e.exit(`taskListCheckValueUnchecked`),o):t===88||t===120?(e.enter(`taskListCheckValueChecked`),e.consume(t),e.exit(`taskListCheckValueChecked`),o):n(t)}function o(t){return t===93?(e.enter(`taskListCheckMarker`),e.consume(t),e.exit(`taskListCheckMarker`),e.exit(`taskListCheck`),s):n(t)}function s(r){return $(r)?t(r):Gh(r)?e.check({tokenize:EC},t,n)(r):n(r)}}function EC(e,t,n){return Xh(e,r,`whitespace`);function r(e){return e===null?n(e):t(e)}}function DC(e){return Mh([US(),aC(),pC(e),_C(),wC()])}var OC={};function kC(e){let t=this,n=e||OC,r=t.data(),i=r.micromarkExtensions||=[],a=r.fromMarkdownExtensions||=[],o=r.toMarkdownExtensions||=[];i.push(DC(n)),a.push(MS()),o.push(NS(n))}function AC(e){let t=e.replace(/[\\/]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return n===-1?t:t.slice(n+1)}function jC(e,t){return e?`${e}/${t}`:t}function MC(e){let t=e.lastIndexOf(`/`);return t===-1?``:e.slice(0,t)}function NC(e,t){return t===``||e===t||e.startsWith(`${t}/`)}function PC(e,t){return t?t===`win32`?`\\`:`/`:/^[A-Za-z]:|\\/.test(e)?`\\`:`/`}function FC(e,t){return t===`/`?e:e.replace(/\//g,`\\`)}function IC(e,t,n){let r=PC(e,n),i=r===`\\`?e.replace(/\//g,`\\`):e;return t?`${i.replace(/[\\/]+$/,``)}${r}${FC(t,r)}`:i}var LC=Object.fromEntries(Object.entries({ts:[`ts`,`mts`,`cts`],tsx:[`tsx`],js:[`js`,`mjs`,`cjs`],jsx:[`jsx`],json:[`json`,`jsonc`,`json5`,`jsonl`,`ndjson`,`webmanifest`,`geojson`],markdown:[`md`,`mdx`,`markdown`],python:[`py`,`pyi`,`pyw`],rust:[`rs`],go:[`go`],java:[`java`],kotlin:[`kt`,`kts`],groovy:[`groovy`,`gradle`],scala:[`scala`,`sbt`],csharp:[`cs`,`csx`],fsharp:[`fs`,`fsx`,`fsi`],vb:[`vb`],c:[`c`,`h`],cpp:[`cpp`,`cc`,`cxx`,`hpp`,`hh`,`hxx`,`ino`],swift:[`swift`],dart:[`dart`],php:[`php`],ruby:[`rb`,`rake`,`gemspec`,`erb`],perl:[`pl`,`pm`],lua:[`lua`],r:[`r`,`rmd`],julia:[`jl`],zig:[`zig`],elixir:[`ex`,`exs`],erlang:[`erl`,`hrl`],haskell:[`hs`],clojure:[`clj`,`cljs`,`cljc`,`edn`],ocaml:[`ml`,`mli`],solidity:[`sol`],vue:[`vue`],svelte:[`svelte`],astro:[`astro`],html:[`html`,`htm`,`xhtml`],css:[`css`],scss:[`scss`,`sass`],less:[`less`],xml:[`xml`,`svg`,`xsd`,`xsl`,`xslt`,`xaml`,`plist`,`resx`,`nuspec`],msbuild:[`csproj`,`vbproj`,`fsproj`,`vcxproj`,`props`,`targets`],yaml:[`yml`,`yaml`],toml:[`toml`],ini:[`ini`,`cfg`,`conf`,`properties`,`env`,`editorconfig`],graphql:[`graphql`,`gql`],proto:[`proto`],prisma:[`prisma`],hcl:[`tf`,`tfvars`,`hcl`],sql:[`sql`],powershell:[`ps1`,`psm1`,`psd1`],bash:[`sh`,`bash`,`zsh`,`ksh`],fish:[`fish`],batch:[`bat`,`cmd`],dockerfile:[`dockerfile`,`containerfile`],makefile:[`mk`,`mak`],cmake:[`cmake`],diff:[`diff`,`patch`],latex:[`tex`,`sty`,`cls`,`bib`],rst:[`rst`],asciidoc:[`adoc`,`asciidoc`],glsl:[`glsl`,`vert`,`frag`,`wgsl`,`hlsl`],csv:[`csv`],tsv:[`tsv`],text:[`txt`,`text`,`log`,`lock`,`out`,`nfo`]}).flatMap(([e,t])=>t.map(t=>[t,e]))),RC={dockerfile:`dockerfile`,containerfile:`dockerfile`,makefile:`makefile`,gnumakefile:`makefile`,"cmakelists.txt":`cmake`,jenkinsfile:`groovy`,gemfile:`ruby`,rakefile:`ruby`,podfile:`ruby`,vagrantfile:`ruby`,brewfile:`ruby`,procfile:`text`,license:`text`,licence:`text`,readme:`text`,changelog:`text`,authors:`text`,contributors:`text`,codeowners:`text`,notice:`text`,copying:`text`,".gitignore":`gitignore`,".gitattributes":`gitignore`,".dockerignore":`gitignore`,".npmignore":`gitignore`,".prettierignore":`gitignore`,".eslintignore":`gitignore`,".vscodeignore":`gitignore`,".gitmodules":`ini`,".editorconfig":`ini`,".npmrc":`ini`,".yarnrc":`ini`,".nvmrc":`text`,".node-version":`text`,".python-version":`text`,".tool-versions":`text`,".prettierrc":`json`,".eslintrc":`json`,".babelrc":`json`,".swcrc":`json`,".bashrc":`bash`,".bash_profile":`bash`,".zshrc":`bash`,".profile":`bash`};function zC(e){let t=e.toLowerCase();return RC[t]||(/^\.env(\..+)?$/.test(t)?`dotenv`:/^(docker|container)file\..+$/.test(t)?`dockerfile`:null)}function BC(e){let t=AC(e),n=t.lastIndexOf(`.`);return n<=0?``:t.slice(n+1).toLowerCase()}function VC(e){if(!e)return null;let t=zC(AC(e));if(t)return t;let n=BC(e);return LC[n]??(n||null)}var HC=Object.fromEntries(Object.entries({image:{png:`image/png`,apng:`image/apng`,jpg:`image/jpeg`,jpeg:`image/jpeg`,jfif:`image/jpeg`,gif:`image/gif`,webp:`image/webp`,bmp:`image/bmp`,ico:`image/x-icon`,cur:`image/x-icon`,svg:`image/svg+xml`,avif:`image/avif`},audio:{mp3:`audio/mpeg`,wav:`audio/wav`,ogg:`audio/ogg`,oga:`audio/ogg`,opus:`audio/ogg`,m4a:`audio/mp4`,flac:`audio/flac`,aac:`audio/aac`,weba:`audio/webm`},video:{mp4:`video/mp4`,m4v:`video/mp4`,mov:`video/mp4`,webm:`video/webm`,ogv:`video/ogg`},pdf:{pdf:`application/pdf`}}).flatMap(([e,t])=>Object.entries(t).map(([t,n])=>[t,{kind:e,mime:n}])));function UC(e){let t=BC(e),n=HC[t];return n?{kind:n.kind,mime:n.mime}:LC[t]===`markdown`?{kind:`markdown`,mime:null}:zC(AC(e))||LC[t]?{kind:`text`,mime:null}:{kind:`unknown`,mime:null}}var WC=(e,t,n)=>e.length>=t+n.length&&[...n].every((n,r)=>e[t+r]===n.charCodeAt(0)),GC=(e,t)=>e.length>=t.length&&t.every((t,n)=>e[n]===t),KC=new Set([`avif`,`avis`]),qC=new Set([`M4A `,`M4B `,`M4P `]),JC=new Set([`heic`,`heix`,`hevc`,`heim`,`heis`,`mif1`,`msf1`]);function YC(e){let t=e=>({kind:`image`,mime:e}),n=e=>({kind:`audio`,mime:e});if(GC(e,[137,80,78,71,13,10,26,10]))return t(`image/png`);if(GC(e,[255,216,255]))return t(`image/jpeg`);if(WC(e,0,`GIF87a`)||WC(e,0,`GIF89a`))return t(`image/gif`);if(WC(e,0,`RIFF`)&&WC(e,8,`WEBP`))return t(`image/webp`);if(WC(e,0,`RIFF`)&&WC(e,8,`WAVE`))return n(`audio/wav`);if(WC(e,0,`BM`)&&[12,40,52,56,64,108,124].includes(e[14]??-1)&&e[15]===0&&e[16]===0&&e[17]===0)return t(`image/bmp`);if(GC(e,[0,0,1,0])&&((e[4]??0)>0||(e[5]??0)>0))return t(`image/x-icon`);if(WC(e,0,`%PDF-`))return{kind:`pdf`,mime:`application/pdf`};if(WC(e,0,`ID3`))return n(`audio/mpeg`);if(WC(e,0,`OggS`))return n(`audio/ogg`);if(WC(e,0,`fLaC`))return n(`audio/flac`);if(GC(e,[26,69,223,163]))return{kind:`video`,mime:`video/webm`};if(WC(e,4,`ftyp`)&&e.length>=12){let r=String.fromCharCode(...e.subarray(8,12));return KC.has(r)?t(`image/avif`):qC.has(r)?n(`audio/mp4`):JC.has(r)?null:{kind:`video`,mime:`video/mp4`}}return null}var XC=8192;function ZC(e){return e.subarray(0,XC).includes(0)}function QC(e){return e.slice(0,XC).includes(`\0`)}function $C(e){try{return e[0]===255&&e[1]===254?new TextDecoder(`utf-16le`).decode(e.subarray(2)):e[0]===254&&e[1]===255?new TextDecoder(`utf-16be`).decode(e.subarray(2)):ZC(e)?null:new TextDecoder(`utf-8`).decode(e)}catch{return null}}function ew(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e[n],t=Math.imul(t,16777619);return`${e.length}:${(t>>>0).toString(16)}`}function tw(e){return!Number.isFinite(e)||e<0?``:e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(+(e<10240))} KB`:e<1073741824?`${(e/1048576).toFixed(1)} MB`:`${(e/1073741824).toFixed(2)} GB`}var nw=/^[A-Za-z]:[\\/]/,rw=/^[\\/]{2}/,iw=/^[A-Za-z][A-Za-z0-9+.-]*:/,aw=/\.(?=[A-Za-z0-9]{0,9}[A-Za-z])[A-Za-z0-9]{1,10}$/,ow=/#L\d+(?:C\d+)?(?:-L?\d+(?:C\d+)?)?$/,sw=/(\.[A-Za-z0-9]{1,10}):\d+(?::\d+)?$/,cw=/[*?"<>|]/;function lw(e){return rw.test(e)?null:nw.test(e)||e.startsWith(`/`)?`abs`:/^~[\\/]/.test(e)?`home`:iw.test(e)?null:`rel`}function uw(e){let t=e.slice(Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`))+1);return t.lastIndexOf(`.`)>0&&aw.test(t)}function dw(e){return e.replace(ow,``).replace(sw,`$1`)}function fw(e){if(!e.includes(`%`))return e;try{return decodeURIComponent(e)}catch{return e}}function pw(e){let t=/^file:(\/\/([^/]*))?(\/.*)?$/i.exec(e.trim());if(!t)return null;let n=t[2]??``;if(n!==``&&n.toLowerCase()!==`localhost`)return null;let r=fw(t[3]??``);return/^\/[A-Za-z]:[\\/]/.test(r)&&(r=r.slice(1)),!r||rw.test(r)?null:r}function mw(e){let t=e.trim();if(t.startsWith(`<`)&&t.endsWith(`>`)&&(t=t.slice(1,-1).trim()),!t||t.startsWith(`#`)||t.startsWith(`?`))return null;if(/^file:/i.test(t)){let e=pw(t);if(!e)return null;let n=lw(e);return n?{path:dw(e),base:n}:null}let n=dw(fw(t)),r=lw(n);return r?nw.test(n)?cw.test(n.slice(2))?null:{path:n,base:r}:!uw(n)||cw.test(n)||r===`rel`&&/^www\./i.test(n)?null:{path:n,base:r}:null}function hw(e){let t=e.trim();if(!t||t.length>1024||/[\r\n]/.test(t))return null;let n=/^(["'])(.*)\1$/.exec(t);if(n&&(t=(n[2]??``).trim()),/^file:/i.test(t)){let e=pw(t),n=e?lw(e):null;return e&&n&&uw(e)?{path:e,base:n}:null}t=dw(t);let r=lw(t);if(!r||!uw(t))return null;let i=nw.test(t)?t.slice(2):t;return cw.test(i)?null:r===`rel`?/\s|=/.test(t)||t.startsWith(`-`)||t.startsWith(`@`)||!/[\\/]/.test(t)&&!dl(t)?null:{path:t,base:r}:/^\s|\s$/.test(t)?null:{path:t,base:r}}var gw=String.raw`[^\s\\/:*?"<>|()[\]{}\`',;]`,_w=String.raw`\.(?=[A-Za-z0-9]{0,9}[A-Za-z])[A-Za-z0-9]{1,10}`,vw=String.raw`(?=$|[\s.,;:!?)\]}'"»”>\`])`,yw=new RegExp([String.raw`\[(?<label>[^\]\n]{1,300})\]\(\s*<?(?<target>(?:[A-Za-z]:[\\/]|file:|~[\\/]|\/)[^()<>\n]*?)>?\s*\)`,String.raw`(?<win>(?<![\w/\\:.-])[A-Za-z]:[\\/](?![\\/])(?:${gw}+[\\/])*${gw}*${_w}${vw})`,String.raw`(?<posix>(?<=^|[\s(\[{"'«“\`])~?\/(?:${gw}+\/)*${gw}*${_w}${vw})`,String.raw`(?<url>(?<![\w])file:\/\/\/?[^\s<>"'()[\]{}\`]+)`].join(`|`),`g`);function bw(e){if(!/[\\/]/.test(e))return[];let t=[];for(let n of e.matchAll(yw)){let e=n.groups??{},r=n.index??0,i=r+n[0].length,a=null,o;if(e.target!==void 0)a=mw(e.target),o=e.label;else if(e.win!==void 0||e.posix!==void 0){let t=e.win??e.posix,n=lw(t);a=n?{path:t,base:n}:null}else if(e.url!==void 0){let t=e.url.replace(/[.,;:!?]+$/,``);i=r+t.length;let n=pw(t),o=n?lw(n):null;a=n&&o&&uw(n)?{path:n,base:o}:null}a&&t.push({start:r,end:i,ref:a,...o===void 0?{}:{label:o}})}return t}function xw(e,t){if(e.platform)return e.platform===`win32`;let n=e.cwd??e.homeDir??t;return/^[A-Za-z]:|\\/.test(n)}function Sw(e,t,n){let r=[];for(let e of t.split(/[\\/]+/))e!==``&&e!==`.`&&(e===`..`?r.pop():r.push(e));return e+r.join(n)}function Cw(e,t,n){let r=n?`\\`:`/`;return ww(`${e.replace(/[\\/]+$/,``)}${r}${t}`,n)}function ww(e,t){return t?nw.test(e)?Sw(`${e.slice(0,2).toUpperCase()}\\`,e.slice(3),`\\`):Sw(`\\`,e,`\\`):Sw(`/`,e,`/`)}function Tw(e,t){let n=xw(t,e.path);switch(e.base){case`abs`:return ww(e.path,n);case`home`:return t.homeDir?Cw(t.homeDir,e.path.slice(2),n):null;case`rel`:return t.cwd?Cw(t.cwd,e.path,n):null}}function Ew(e,t){if(!t.cwd)return null;let n=xw(t,e),r=ww(t.cwd,n),i=n?`\\`:`/`,a=r.endsWith(i)?r:r+i;if(!(n?e.toLowerCase().startsWith(a.toLowerCase()):e.startsWith(a)))return null;let o=e.slice(a.length);return o?o.split(/[\\/]/).join(`/`):null}function Dw(e){return dl(e)?.kind??`file`}function Ow(e){let t=UC(e).kind;return t!==`unknown`&&t!==`pdf`}function kw(e){let t=e.replace(/[\\/]+$/,``);return t.slice(Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`))+1)}var Aw=`oona-file`;function jw(e,t,n){return{type:`oonaLocalFile`,data:{hName:Aw,hProperties:{filePath:e.path,fileBase:e.base,fileVariant:t}},children:n}}function Mw(e){let t=bw(e);if(t.length===0)return null;let n=[],r=0;for(let i of t){i.start>r&&n.push({type:`text`,value:e.slice(r,i.start)});let t=e.slice(i.start,i.end);n.push(i.label===void 0?jw(i.ref,`bare`,[{type:`text`,value:t}]):jw(i.ref,`link`,[{type:`text`,value:i.label}])),r=i.end}return r<e.length&&n.push({type:`text`,value:e.slice(r)}),n}var Nw=new Set([`link`,`linkReference`,`image`,`imageReference`,`definition`,`html`]);function Pw(e){let t=e.children;if(!t)return;let n=null;for(let e=0;e<t.length;e++){let r=t[e],i=null;if(r.type===`link`){let e=mw(r.url??``);e&&(i=[jw(e,`link`,r.children??[])])}else if(r.type===`inlineCode`){let e=hw(r.value??``);e&&(i=[jw(e,`code`,[{type:`text`,value:r.value??``}])])}else if(r.type===`code`){let e=r.value??``,t=e.includes(`
|
|
122
|
+
`)?null:hw(e);t&&(i=[jw(t,`block`,[{type:`text`,value:e}])])}else r.type===`text`?i=Mw(r.value??``):Nw.has(r.type)||Pw(r);i?(n??=t.slice(0,e),n.push(...i)):n&&n.push(r)}n&&(e.children=n)}function Fw(){return e=>{Pw(e)}}var Iw=(0,v.createContext)({sessionId:null,cwd:null,homeDir:null,platform:null,remote:!1,grant:null,openInViewer:null,bridge:null,notify:null});function Lw(e){typeof document>`u`||document.querySelectorAll(`audio, video`).forEach(t=>{t!==e&&!t.paused&&t.pause()})}var Rw=`This file is on the PC that runs this chat — open it on that PC.`;function zw({kind:e}){let t=`h-3.5 w-3.5 text-fg-faint`;switch(e){case`audio`:return(0,U.jsx)(K.Music,{className:t});case`video`:return(0,U.jsx)(K.Film,{className:t});case`image`:return(0,U.jsx)(K.Image,{className:t});case`file`:return(0,U.jsx)(K.File,{className:t})}}function Bw({label:e,onClick:t,testId:n,children:r}){return(0,U.jsx)(`button`,{type:`button`,"aria-label":e,title:e,"data-testid":n,onClick:e=>{e.preventDefault(),t()},className:`inline-flex items-center justify-center rounded p-0.5 text-fg-muted hover:bg-surface-3 hover:text-fg`,children:r})}function Vw(e){return e instanceof Sl?e.status===404&&e.message.startsWith(`no route for`)?`This PC’s OonaCode cannot play files from the chat yet — update it.`:e.code===`session_not_found`?`Send a message first — this chat is not saved yet.`:e.status===404?`Not found on this PC.`:e.message:e instanceof Error?e.message:String(e)}function Hw({sessionId:e,path:t,kind:n,grant:r}){let[i,a]=(0,v.useState)(null),[o,s]=(0,v.useState)(0),[c,l]=(0,v.useState)(!1);(0,v.useEffect)(()=>{let n=!0;return a(null),r(e,t).then(e=>{n&&a({url:e.url})},e=>{n&&a({error:Vw(e)})}),()=>{n=!1}},[e,t,r,o]),(0,v.useEffect)(()=>{if(!c||typeof window>`u`)return;let e=e=>{e.key===`Escape`&&l(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[c]);let u=()=>{o===0?s(1):a({error:`It could not be played here.`})},d=e=>Lw(e.currentTarget);return i===null?(0,U.jsxs)(`span`,{className:`my-1 flex items-center gap-1 text-xs text-fg-muted`,"data-testid":`local-file-loading`,children:[(0,U.jsx)(K.Spinner,{className:`h-3 w-3`}),` Loading…`]}):`error`in i?(0,U.jsx)(`span`,{className:`my-1 block text-xs text-danger`,"data-testid":`local-file-error`,children:i.error}):n===`audio`?(0,U.jsx)(`audio`,{controls:!0,autoPlay:!0,preload:`metadata`,src:i.url,onPlay:d,onError:u,className:`my-1 block h-9 w-full max-w-sm`,"data-testid":`local-file-audio`}):n===`video`?(0,U.jsx)(`video`,{controls:!0,autoPlay:!0,preload:`metadata`,src:i.url,onPlay:d,onError:u,className:`my-1 block max-h-72 w-full max-w-md rounded border border-border bg-black`,"data-testid":`local-file-video`}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`img`,{src:i.url,alt:kw(t),onError:u,onClick:()=>l(!0),title:`Enlarge`,className:`my-1 block max-h-40 max-w-full cursor-zoom-in rounded border border-border`,"data-testid":`local-file-image`}),c&&typeof document<`u`?(0,xp.createPortal)((0,U.jsx)(`div`,{role:`dialog`,"aria-label":kw(t),onClick:()=>l(!1),className:`fixed inset-0 z-50 flex cursor-zoom-out items-center justify-center bg-black/70 p-6`,"data-testid":`local-file-zoom`,children:(0,U.jsx)(`img`,{src:i.url,alt:kw(t),className:`max-h-[90vh] max-w-[90vw] rounded shadow-lg`})}),document.body):null]})}var Uw=(0,v.memo)(function({path:e,base:t,variant:n,children:r}){let i=(0,v.useContext)(Iw),a=(0,v.useMemo)(()=>Tw({path:e,base:t},i),[e,t,i.cwd,i.homeDir,i.platform]),o=Dw(a??e),[s,c]=(0,v.useState)(!1),l=!i.remote&&a!==null,u=l?Ew(a,i):null,d=u!==null&&i.openInViewer!==null&&Ow(a),f=l&&!!i.bridge?.openPath,p=l&&!!i.bridge?.showItemInFolder,m=l&&o!==`file`&&i.grant!==null&&i.sessionId!==null,h=()=>{!a||!i.bridge?.openPath||i.bridge.openPath(a).then(e=>{!e.ok&&e.message&&i.notify?.(e.shownInFolder?`info`:`error`,e.message)},e=>i.notify?.(`error`,Vw(e)))},g=()=>{!a||!i.bridge?.showItemInFolder||i.bridge.showItemInFolder(a).then(e=>{!e.ok&&e.message&&i.notify?.(`error`,e.message)},e=>i.notify?.(`error`,Vw(e)))},_=d?{run:()=>i.openInViewer(u),title:`Open in the file viewer`}:f?{run:h,title:`Open with its app`}:m?{run:()=>c(e=>!e),title:o===`image`?`Show here`:`Play here`}:null,y=a??e,b=i.remote?`${y}\n${Rw}`:_?`${_.title}\n${y}`:y,x=n===`code`||n===`block`?(0,U.jsx)(`code`,{className:n===`block`?`break-all`:void 0,children:r}):(0,U.jsx)(`span`,{className:H(`min-w-0 break-all`,n===`bare`&&`font-mono text-[0.92em]`),children:r}),S=_?(0,U.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),_.run()},title:b,"data-testid":`local-file-name`,className:`min-w-0 cursor-pointer text-left text-accent underline decoration-dotted underline-offset-2 hover:decoration-solid`,children:x}):(0,U.jsx)(`span`,{title:b,"data-testid":`local-file-name`,className:`min-w-0`,children:x}),C=(0,U.jsxs)(U.Fragment,{children:[m?(0,U.jsx)(Bw,{label:s?`Close the player`:o===`image`?`Show here`:`Play here`,onClick:()=>c(e=>!e),testId:`local-file-play`,children:s?(0,U.jsx)(K.X,{className:`h-3 w-3`}):o===`image`?(0,U.jsx)(K.Image,{className:`h-3 w-3`}):(0,U.jsx)(K.Play,{className:`h-3 w-3`})}):null,f?(0,U.jsx)(Bw,{label:`Open with its app`,onClick:h,testId:`local-file-open`,children:(0,U.jsx)(K.ExternalLink,{className:`h-3 w-3`})}):null,p?(0,U.jsx)(Bw,{label:`Show in folder`,onClick:g,testId:`local-file-folder`,children:(0,U.jsx)(K.Folder,{className:`h-3 w-3`})}):null,i.remote?(0,U.jsx)(`span`,{title:Rw,"aria-label":Rw,"data-testid":`local-file-remote`,children:(0,U.jsx)(K.Monitor,{className:`h-3 w-3 text-fg-faint`})}):null]}),w=s&&m?(0,U.jsx)(`span`,{className:`block`,"data-testid":`local-file-player`,children:(0,U.jsx)(Hw,{sessionId:i.sessionId,path:a,kind:o,grant:i.grant})}):null;return n===`block`?(0,U.jsxs)(`div`,{className:`my-2`,"data-testid":`local-file`,"data-kind":o,"data-path":y,children:[(0,U.jsxs)(`div`,{className:`flex max-w-full items-center gap-1 rounded-md border border-border bg-code-bg px-2 py-1.5 font-mono text-[12.5px]`,children:[(0,U.jsx)(zw,{kind:o}),S,C]}),w]}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`span`,{className:H(`inline-flex max-w-full items-center gap-0.5 align-baseline`,n===`link`&&`rounded border border-border bg-surface-2 px-1 py-px`),"data-testid":`local-file`,"data-kind":o,"data-path":y,children:[n===`link`?(0,U.jsx)(zw,{kind:o}):null,S,C]}),w]})});function Ww(e){let{filePath:t,fileBase:n,fileVariant:r,children:i}=e;return!t||!n?(0,U.jsx)(U.Fragment,{children:i}):(0,U.jsx)(Uw,{path:t,base:n,variant:r??`bare`,children:i})}var Gw=(0,v.memo)(function({text:e}){let t=(0,v.useMemo)(()=>{let t=bw(e);if(t.length===0)return null;let n=[],r=0;for(let i of t)i.start>r&&n.push(e.slice(r,i.start)),n.push((0,U.jsx)(Uw,{path:i.ref.path,base:i.ref.base,variant:i.label===void 0?`bare`:`link`,children:i.label??e.slice(i.start,i.end)},i.start)),r=i.end;return r<e.length&&n.push(e.slice(r)),n},[e]);return(0,U.jsx)(U.Fragment,{children:t??e})});async function Kw(e){try{if(navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}try{let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.opacity=`0`,document.body.appendChild(t),t.select();let n=document.execCommand(`copy`);return document.body.removeChild(t),n}catch{return!1}}function qw({text:e,className:t}){let[n,r]=(0,v.useState)(!1);return(0,U.jsxs)(`button`,{type:`button`,"aria-label":`Copy to clipboard`,title:`Copy`,className:H(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[11px] text-fg-muted hover:bg-surface-3 hover:text-fg`,t),onClick:()=>{Kw(e).then(e=>{e&&(r(!0),setTimeout(()=>r(!1),1500))})},children:[n?(0,U.jsx)(K.Check,{className:`w-3 h-3`}):(0,U.jsx)(K.Copy,{className:`w-3 h-3`}),n?`Copied`:`Copy`]})}function Jw({code:e,language:t,className:n,maxHeight:r}){return(0,U.jsxs)(`div`,{className:H(`group relative my-2 overflow-hidden rounded-md border border-border bg-code-bg`,n),children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border px-2 py-0.5 text-[11px] text-fg-faint`,children:[(0,U.jsx)(`span`,{className:`font-mono`,children:t||`text`}),(0,U.jsx)(qw,{text:e})]}),(0,U.jsx)(`pre`,{className:`m-0 overflow-x-auto p-3 font-mono text-[12.5px] leading-relaxed`,style:r?{maxHeight:r,overflowY:`auto`}:void 0,children:(0,U.jsx)(`code`,{children:e})})]})}function Yw(e){return typeof e==`string`?e:Array.isArray(e)?e.map(Yw).join(``):e&&typeof e==`object`&&`props`in e?Yw(e.props.children):``}function Xw(e){window.oonacode?.openExternal?window.oonacode.openExternal(e):window.open(e,`_blank`,`noopener,noreferrer`)}var Zw={pre({children:e}){let t=Array.isArray(e)?e[0]:e,n=t&&typeof t==`object`&&`props`in t?t.props:null,r=n?.className?.match(/language-([\w-]+)/)?.[1]??null,i=Yw(n?.children??e).replace(/\n$/,``);return(0,U.jsx)(Jw,{code:i,language:r})},a({href:e,children:t}){let n=e??``;return(0,U.jsx)(`a`,{href:n,onClick:e=>{/^https?:/i.test(n)&&(e.preventDefault(),Xw(n))},rel:`noopener noreferrer`,target:`_blank`,children:t})}},Qw=[kC],$w=[kC,Fw],eT={...Zw,[Aw]:Ww},tT=(0,v.memo)(function({text:e,className:t,localFiles:n=!1}){return(0,U.jsx)(`div`,{className:H(`md break-words`,t),children:(0,U.jsx)(Tb,{remarkPlugins:n?$w:Qw,components:n?eT:Zw,children:e})})});function nT(e){return Math.max(100,Math.min(1e3,Math.round(e/100)))}function rT(e,t=600){let n=e.length-t;if(n<=0)return{head:``,tail:e};let r=!1,i=-1,a=0;for(;a<n;){let t=e.indexOf(`
|
|
123
|
+
`,a),o=t===-1?e.length:t,s=e.slice(a,o);if(/^\s{0,3}(```|~~~)/.test(s)&&(r=!r),!r&&s.trim()===``&&a>0&&o<=n&&(i=a-1),t===-1)break;a=t+1}return i<=0?{head:``,tail:e}:{head:e.slice(0,i),tail:e.slice(i)}}var iT=(0,v.memo)(function({text:e,localFiles:t=!1}){let{head:n,tail:r}=rT(e);return(0,U.jsxs)(U.Fragment,{children:[n?(0,U.jsx)(tT,{text:n,localFiles:t}):null,(0,U.jsx)(tT,{text:r,localFiles:t})]})});function aT(e){let t=(0,v.useRef)(null);(0,v.useEffect)(()=>{let e=t.current;e&&(e.focus(),e.select())},[e.focusSeq]);let n=t=>{t.key===`Enter`||t.key===`ArrowDown`?(t.preventDefault(),e.onStep(t.key===`Enter`&&t.shiftKey?-1:1)):t.key===`ArrowUp`?(t.preventDefault(),e.onStep(-1)):t.key===`Escape`&&(t.preventDefault(),t.stopPropagation(),e.onClose())},r=e.query.trim()!==``&&e.count===0;return(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border bg-surface px-3 py-1.5`,"data-testid":`chat-search`,role:`search`,children:[(0,U.jsx)(K.Search,{className:`w-3.5 h-3.5 shrink-0 text-fg-faint`}),(0,U.jsx)(`input`,{ref:t,type:`text`,value:e.query,onChange:t=>e.onQuery(t.target.value),onKeyDown:n,placeholder:`Find in this chat`,"aria-label":`Find in this chat`,spellCheck:!1,className:H(Y,`h-7 min-w-0 flex-1 py-0 text-xs`),"data-testid":`chat-search-input`}),(0,U.jsx)(`span`,{className:H(`shrink-0 tabular-nums text-xs`,r?`text-warn`:`text-fg-muted`),"data-testid":`chat-search-count`,children:e.query.trim()===``?``:Oe(e.index,e.count)}),(0,U.jsx)(J,{label:`Previous match (Shift+Enter)`,onClick:()=>e.onStep(-1),disabled:e.count===0,"data-testid":`chat-search-prev`,children:(0,U.jsx)(K.ArrowDown,{className:`w-3.5 h-3.5 rotate-180`})}),(0,U.jsx)(J,{label:`Next match (Enter)`,onClick:()=>e.onStep(1),disabled:e.count===0,"data-testid":`chat-search-next`,children:(0,U.jsx)(K.ArrowDown,{className:`w-3.5 h-3.5`})}),(0,U.jsx)(J,{label:`Close search (Esc)`,onClick:e.onClose,"data-testid":`chat-search-close`,children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]})}var oT=`data-item-id`;function sT(e){return`[${oT}="${e.replace(/["\\]/g,`\\$&`)}"]`}var cT=`oona-search`,lT=`oona-search-current`,uT=2e3;function dT(){let e=globalThis.CSS,t=globalThis.Highlight;return!e?.highlights||typeof t!=`function`?null:{registry:e.highlights,Highlight:t}}function fT(e,t,n,r){let i=dT();if(i===null)return;let a=xe(r);if(a===``||t.length===0){pT();return}let o=Ce(a),s=[],c=[],l=uT;for(let r of t){let t=e.querySelector(sT(r.id));if(!t)continue;let i=_T(t,o,l);if(l-=i.length,r.id===n?c.push(...i):s.push(...i),l<=0)break}i.registry.set(cT,new i.Highlight(...s)),i.registry.set(lT,new i.Highlight(...c))}function pT(){let e=dT();e!==null&&(e.registry.delete(cT),e.registry.delete(lT))}function mT(e,t){let n=xe(t);return n===``?null:_T(e,Ce(n),1)[0]??null}function hT(e,t){let n=e.startContainer instanceof Element?e.startContainer:e.startContainer.parentElement;for(;n;){if(n instanceof HTMLElement&&gT(n)){let t=e.getBoundingClientRect(),r=n.getBoundingClientRect();n.scrollTop+=t.top-r.top-(n.clientHeight-t.height)/2}if(n===t)break;n=n.parentElement}}function gT(e){if(e.scrollHeight<=e.clientHeight)return!1;let t=getComputedStyle(e).overflowY;return t===`auto`||t===`scroll`}function _T(e,t,n){let r=e.ownerDocument;if(!r||n<=0)return[];let i=[],a=r.createTreeWalker(e,NodeFilter.SHOW_TEXT);for(let e=a.nextNode();e!==null;e=a.nextNode()){let a=e.data;t.lastIndex=0;for(let o of a.matchAll(t)){if(o[0].length===0)continue;let t=r.createRange();if(t.setStart(e,o.index??0),t.setEnd(e,(o.index??0)+o[0].length),i.push(t),i.length>=n)return i}}return i}var vT=new Set([`Task`,`Agent`,`Workflow`]);function yT(e){let t=[],n=[];for(let r of e)(r.running?t:n).push(r);return t.concat(n)}function bT(e){return e.kind===`tool`&&vT.has(e.name)}var xT=new Set([`streaming`,`pending`,`running`]);function ST(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function CT(e){return typeof e==`string`&&e.trim()?e.trim():null}function wT(e){let t=e.result?.structured;return t&&typeof t==`object`?t:null}function TT(e){if(e.kind===`tool`&&e.startedAt!==null)return e.startedAt;if(e.timestamp){let t=Date.parse(e.timestamp);if(Number.isFinite(t))return t}return null}var ET=new Map;function DT(e,t){let n=ET.get(t);n||(n=RegExp(`<${t}>([\\s\\S]*?)</${t}>`),ET.set(t,n));let r=n.exec(e);return r?r[1].trim():null}function OT(e,t,n){for(let r of e){if(!r.text.includes(`<task-notification>`)||DT(r.text,`task-id`)!==t)continue;let e=DT(r.text,`tool-use-id`);if(e&&e!==n)continue;let i=DT(r.text,`usage`)??``;return{status:DT(r.text,`status`),tokens:ST(Number(DT(i,`subagent_tokens`)??NaN)),toolUses:ST(Number(DT(i,`tool_uses`)??NaN)),durationMs:ST(Number(DT(i,`duration_ms`)??NaN)),at:TT(r)}}return null}var kT={alive:!0,since:null};function AT(e,t){return e.alive?e.since===null||t===null||t<=0||t>=e.since:!1}function jT(e,t=Date.now(),n={},r=kT){let i=e.filter(bT),a=e.filter(e=>e.kind===`user`&&e.text.includes(`<task-notification>`)),o=NT(i,e,a,t,r),s=MT(e,a,new Set(o.map(e=>e.agentId)),t,n,r);return[...o,...s]}function MT(e,t,n,r,i,a){let o=[],s=new Set(n),c=new Map;for(let e of t){if(!e.text.includes(`<task-notification>`))continue;let t=DT(e.text,`task-id`);if(!t||n.has(t))continue;let r=DT(e.text,`usage`)??``,i=DT(e.text,`status`),a=(DT(e.text,`summary`)??``).split(`
|
|
124
|
+
`)[0].trim(),o=TT(e)??0,s=c.get(t);s&&s.at>o||c.set(t,{at:o,view:{id:`note:${t}`,agentId:t,name:a.length>0?a.length>80?`${a.slice(0,79)}…`:a:`background task`,type:null,model:null,status:i&&i!==`completed`?`error`:`done`,running:!1,startedAt:null,endedAt:o>0?o:null,durationMs:ST(Number(DT(r,`duration_ms`)??NaN)),tokens:ST(Number(DT(r,`subagent_tokens`)??NaN)),toolCalls:ST(Number(DT(r,`tool_uses`)??NaN))??0,runs:1,nested:0,depth:0}})}for(let[e,t]of c)s.add(e),o.push(t.view);let l=new Map;for(let t of e){if(t.kind!==`permission`)continue;let e=t.request.agentId;if(!e||s.has(e))continue;let n=TT(t),r=l.get(e);r?(r.count+=1,(r.first===null||n!==null&&n<r.first)&&(r.first=n),n!==null&&(r.last===null||n>r.last)&&(r.last=n)):l.set(e,{first:n,last:n,count:1})}for(let[e,t]of l){let n=i[e],c=n?.finished===!0,l=n&&n.at>0?n.at:t.last,u=!c&&AT(a,l),d=n&&n.firstAt>0?t.first===null?n.firstAt:Math.min(t.first,n.firstAt):t.first,f=u?null:c&&n&&n.at>0?n.at:null;o.push({id:`perm:${e}`,agentId:e,name:`background agent`,type:null,model:null,status:u?`running`:c?`done`:`cancelled`,running:u,startedAt:d,endedAt:f,durationMs:d===null?null:Math.max(0,(u?r:f??l??d)-d),tokens:null,toolCalls:Math.max(t.count,n?.toolUses??0),runs:1,nested:0,depth:0}),s.add(e)}for(let[e,t]of Object.entries(i)){if(s.has(e)||l.has(e))continue;let n=!t.finished&&AT(a,t.at>0?t.at:null),i=t.firstAt>0?t.firstAt:null,c=n?null:t.finished&&t.at>0?t.at:null,u=n?r:t.at>0?t.at:i;o.push({id:`act:${e}`,agentId:e,name:`background agent`,type:null,model:null,status:n?`running`:t.finished?`done`:`cancelled`,running:n,startedAt:i,endedAt:c,durationMs:i!==null&&u!==null&&u>0?Math.max(0,u-i):null,tokens:null,toolCalls:t.toolUses,runs:1,nested:0,depth:0})}return o}function NT(e,t,n,r,i){if(e.length===0)return[];let a=new Map(e.map(e=>[e.toolUseId,e])),o=t.filter(e=>e.kind===`tool`&&e.name===`SendMessage`),s=new Map,c=new Map,l=new Map;for(let e of t){if(!e.parentToolUseId||!a.has(e.parentToolUseId))continue;if(e.kind===`assistant`){j(e.model)&&l.set(e.parentToolUseId,e.model);continue}if(e.kind!==`tool`)continue;let t=bT(e)?c:s;t.set(e.parentToolUseId,(t.get(e.parentToolUseId)??0)+1)}let u=e=>{let t=0,n=e.parentToolUseId;for(;n&&a.has(n)&&t<8;)t+=1,n=a.get(n).parentToolUseId;return t};return e.map(e=>{let t=wT(e),a=CT(e.input?.subagent_type),d=CT(e.input?.description)??CT(e.input?.name)??a??e.name,f=CT(t?.agentId)??e.toolUseId,p=t?.isAsync===!0||t?.status===`async_launched`,m={id:e.toolUseId,agentId:f,name:d,type:a,model:l.get(e.toolUseId)??null,startedAt:e.startedAt,nested:c.get(e.toolUseId)??0,depth:u(e)};if(!p){let n=xT.has(e.status)&&!e.result&&AT(i,e.startedAt),a=ST(t?.totalDurationMs)??e.durationMs??(n&&e.startedAt!==null?Math.max(0,r-e.startedAt):e.elapsedSec===null?null:e.elapsedSec*1e3);return{...m,status:n?e.status:xT.has(e.status)?`cancelled`:e.status,running:n,endedAt:n?null:e.finishedAt,durationMs:a,tokens:ST(t?.totalTokens),toolCalls:ST(t?.totalToolUseCount)??s.get(e.toolUseId)??0,runs:1}}let h=[e,...o.filter(e=>{let t=wT(e),n=CT(e.input?.to);return CT(t?.resumedAgentId)===f||n===f||n===d})],g=null,_=null,v=!1,y=!1,b=!1,x=null,S=null,C=null;for(let t of h){let a=OT(n,f,t.toolUseId),o=TT(t);if(!a){if(t!==e&&wT(t)?.success===!1||t!==e&&t.result?.isError)continue;S=o,AT(i,o)?(v=!0,x=o===null?null:Math.max(0,r-o)):(b=!0,x=null),C=null;continue}a.tokens!==null&&(g=(g??0)+a.tokens),a.toolUses!==null&&(_=(_??0)+a.toolUses),a.status&&a.status!==`completed`&&(y=!0),x=a.durationMs??(a.at!==null&&o!==null?Math.max(0,a.at-o):null),S=o,C=a.at}let w=v?`running`:y||e.status===`error`||e.status===`denied`?`error`:b?`cancelled`:`done`;return{...m,startedAt:S??e.startedAt,status:w,running:v,endedAt:v?null:C,durationMs:x,tokens:g,toolCalls:Math.max(_??0,s.get(e.toolUseId)??0),runs:h.length}})}function PT(e,t){let[n,r]=(0,v.useState)(e),i=(0,v.useRef)(e);i.current=e;let a=nT(e.length);return(0,v.useEffect)(()=>{if(!t)return;let e=window.setInterval(()=>r(i.current),a);return()=>window.clearInterval(e)},[t,a]),t?n:e}var FT=new Set;function IT(){let e=FT,t=new Set;return{get:()=>e,set(n){if(n.size!==0||e.size!==0){e=n.size===0?FT:n;for(let e of t)e()}},subscribe(e){return t.add(e),()=>t.delete(e)}}}var LT=(0,v.createContext)({get:()=>FT,set:()=>{},subscribe:()=>()=>{}});function RT(e){let t=(0,v.useContext)(LT),n=()=>{let n=t.get();return n.size===0?!1:typeof e==`string`?n.has(e):e.some(e=>n.has(e))};return(0,v.useSyncExternalStore)(t.subscribe,n,n)}function zT(e,t){let n=RT(e);return(0,v.useEffect)(()=>{n&&t(!0)},[n,t]),n}function BT(e){return typeof e==`string`?e:null}function VT(e,t){if(!t)return``;switch(e){case`Bash`:case`PowerShell`:return id((BT(t.command)??``).replace(/\s+/g,` `),90);case`Read`:case`Write`:case`Edit`:case`MultiEdit`:case`NotebookEdit`:return BT(t.file_path)??BT(t.notebook_path)??``;case`Glob`:case`Grep`:return`${BT(t.pattern)??``}${BT(t.path)?` in ${BT(t.path)}`:``}`;case`Task`:case`Agent`:return BT(t.description)??id(BT(t.prompt)??``,80);case`WebFetch`:case`WebSearch`:return BT(t.url)??BT(t.query)??``;case`TodoWrite`:return`update todo list`;default:{let e=Object.entries(t).find(([,e])=>typeof e==`string`);return e?id(String(e[1]).replace(/\s+/g,` `),80):``}}}var HT=(0,v.memo)(function({oldText:e,newText:t}){let n=(0,v.useMemo)(()=>e.split(`
|
|
125
|
+
`),[e]),r=(0,v.useMemo)(()=>t.split(`
|
|
126
|
+
`),[t]);return(0,U.jsxs)(`pre`,{className:`lazy-block m-0 max-h-72 overflow-auto rounded-md border border-border bg-code-bg p-2 font-mono text-[12.5px] leading-relaxed`,children:[n.map((e,t)=>(0,U.jsxs)(`div`,{className:`bg-danger-soft text-danger`,children:[(0,U.jsx)(`span`,{className:`select-none pr-2 text-fg-faint`,children:`-`}),e]},`o${t}`)),r.map((e,t)=>(0,U.jsxs)(`div`,{className:`bg-ok-soft text-ok`,children:[(0,U.jsx)(`span`,{className:`select-none pr-2 text-fg-faint`,children:`+`}),e]},`n${t}`))]})}),UT=VC;function WT({name:e,input:t,inputJson:n,streaming:r}){if(!t)return n?(0,U.jsx)(Jw,{code:n,language:`json`,maxHeight:`14rem`}):r?(0,U.jsx)(`div`,{className:`text-xs text-fg-faint`,children:`Receiving arguments…`}):null;switch(e){case`Bash`:case`PowerShell`:{let n=BT(t.description);return(0,U.jsxs)(`div`,{children:[n?(0,U.jsx)(`div`,{className:`mb-1 text-xs text-fg-muted`,children:n}):null,(0,U.jsx)(Jw,{code:BT(t.command)??ad(t),language:e===`PowerShell`?`powershell`:`bash`,maxHeight:`14rem`})]})}case`Edit`:{let e=BT(t.file_path);return(0,U.jsxs)(`div`,{className:`space-y-1`,children:[e?(0,U.jsxs)(`div`,{className:`font-mono text-xs text-fg-muted`,children:[e,t.replace_all?` (replace all)`:``]}):null,(0,U.jsx)(HT,{oldText:BT(t.old_string)??``,newText:BT(t.new_string)??``})]})}case`Write`:{let e=BT(t.file_path);return(0,U.jsxs)(`div`,{children:[e?(0,U.jsx)(`div`,{className:`mb-1 font-mono text-xs text-fg-muted`,children:e}):null,(0,U.jsx)(Jw,{code:BT(t.content)??``,language:UT(e),maxHeight:`18rem`})]})}case`Read`:{let e=BT(t.file_path)??``,n=[t.offset===void 0?null:`offset ${String(t.offset)}`,t.limit===void 0?null:`limit ${String(t.limit)}`].filter(Boolean).join(`, `);return(0,U.jsxs)(`div`,{className:`font-mono text-xs text-fg-muted`,children:[e,n?` (${n})`:``]})}default:return(0,U.jsx)(Jw,{code:ad(t),language:`json`,maxHeight:`14rem`})}}function GT({blocks:e}){return(0,U.jsx)(`div`,{className:`space-y-1`,children:e.map((e,t)=>{if(e.type===`image`){let n=e.source,r=n?.type===`base64`&&n.data?`data:${n.media_type??`image/png`};base64,${n.data}`:n?.url;return r?(0,U.jsx)(`img`,{src:r,alt:`tool result`,className:`max-h-64 max-w-full rounded border border-border`},t):(0,U.jsx)(`div`,{children:`[image]`},t)}let n=e.type===`text`?e.text??``:`[${e.type}]`;return(0,U.jsx)(`pre`,{className:`pre-wrap m-0 font-mono text-[12.5px] leading-relaxed`,children:n},t)})})}var KT=`Code snippet`;function qT(e){return e===`unknown`?KT:e}var JT={streaming:`preparing`,pending:`needs approval`,running:`running`,done:`done`,error:`error`,denied:`denied`,skipped:`skipped`,cancelled:`cancelled`};function YT({status:e}){switch(e){case`streaming`:case`running`:return(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5 text-accent`});case`pending`:return(0,U.jsx)(K.Shield,{className:`w-3.5 h-3.5 text-warn`});case`done`:return(0,U.jsx)(K.Check,{className:`w-3.5 h-3.5 text-ok`});case`error`:case`denied`:return(0,U.jsx)(K.X,{className:`w-3.5 h-3.5 text-danger`});case`skipped`:case`cancelled`:return(0,U.jsx)(K.X,{className:`w-3.5 h-3.5 text-fg-faint`})}}function XT(e){for(let t of e)if(t.item.kind===`permission`&&t.item.status===`pending`||t.children.length>0&&XT(t.children))return!0;return!1}var ZT=(0,v.memo)(function({node:e,renderChildren:t}){let n=e.item,r=n.status===`error`||n.status===`denied`,[i,a]=(0,v.useState)(null),o=zT(n.id,a),s=XT(e.children),c=vT.has(n.name)&&(n.status===`done`||n.status===`cancelled`),l=s||o||(i??(r||n.status===`pending`||e.children.length>0&&!c)),u=(0,v.useMemo)(()=>VT(n.name,n.input),[n.name,n.input]),d=(0,v.useMemo)(()=>l?Xu(n.result):``,[l,n.result]),f=n.result!==null&&!n.result.isError&&(typeof n.result.content==`string`&&/^Async agent launched/i.test(n.result.content.trimStart())||n.result.structured?.status===`async_launched`),p=n.durationMs===null?n.elapsedSec!==null&&!n.result?Qu(n.elapsedSec*1e3):``:Qu(n.durationMs);return(0,U.jsxs)(`div`,{"data-testid":`tool-${n.toolUseId}`,className:H(`my-1.5 overflow-hidden rounded-lg border bg-surface text-sm`,r?`border-danger/50`:n.status===`pending`?`border-warn/60`:`border-border`),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":l,onClick:()=>a(s?null:!l),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left hover:bg-surface-2`,children:[(0,U.jsx)(YT,{status:n.status}),(0,U.jsx)(K.Tool,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:qT(n.name)}),u?(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs text-fg-muted`,children:u}):(0,U.jsx)(`span`,{className:`flex-1`}),p?(0,U.jsx)(`span`,{className:`text-[11px] text-fg-faint`,children:p}):null,(0,U.jsx)(X,{tone:r?`danger`:n.status===`pending`?`warn`:n.status===`done`?`ok`:`neutral`,children:JT[n.status]}),(0,U.jsx)(K.Chevron,{open:l,className:`w-3.5 h-3.5 text-fg-faint`})]}),l?(0,U.jsxs)(`div`,{className:`space-y-2 border-t border-border px-2.5 py-2`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`div`,{className:`mb-1 text-[11px] uppercase tracking-wide text-fg-faint`,children:`Input`}),(0,U.jsx)(WT,{name:n.name,input:n.input,inputJson:n.inputJson,streaming:n.status===`streaming`})]}),e.children.length>0?(0,U.jsxs)(`div`,{className:`border-l-2 border-think/40 pl-2`,children:[(0,U.jsx)(`div`,{className:`mb-1 text-[11px] uppercase tracking-wide text-think`,children:`Subagent`}),t(e.children)]}):null,n.result&&f?(0,U.jsx)(`div`,{className:`text-xs text-fg-faint`,"data-testid":`tool-launch-note`,children:`Launched in the background — the chat is told when it finishes.`}):n.result?(0,U.jsxs)(`div`,{children:[(0,U.jsxs)(`div`,{className:`mb-1 flex items-center justify-between text-[11px] uppercase tracking-wide text-fg-faint`,children:[(0,U.jsx)(`span`,{children:n.result.isError?`Error`:`Result`}),d?(0,U.jsxs)(`span`,{className:`normal-case`,children:[d.length.toLocaleString(),` chars`]}):null]}),(0,U.jsx)(`div`,{className:H(`lazy-block max-h-72 overflow-auto rounded-md border p-2`,n.result.isError?`border-danger/40 bg-danger-soft text-danger`:`border-border bg-code-bg`),children:typeof n.result.content==`string`?(0,U.jsx)(`pre`,{className:`pre-wrap m-0 font-mono text-[12.5px] leading-relaxed`,children:n.result.content||`(empty)`}):(0,U.jsx)(GT,{blocks:n.result.content})})]}):n.status===`cancelled`?(0,U.jsx)(`div`,{className:`text-xs text-fg-faint`,children:`No result (turn ended before the tool finished).`}):null]}):null]})}),QT=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(null),r=zT(e.id,n)||(t??e.streaming),i=PT(e.text,e.streaming),a=$T(i);return(0,U.jsxs)(`div`,{className:`my-1.5 rounded-lg border border-think/30 bg-think-soft/40 text-sm`,children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":r,onClick:()=>n(!r),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-think`,children:[e.streaming?(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`}):(0,U.jsx)(K.Brain,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`font-medium`,children:e.redacted?`Redacted thinking`:e.streaming?`Thinking…`:`Thought`}),!e.redacted&&a?(0,U.jsxs)(`span`,{className:`text-xs opacity-70`,children:[a,` words`]}):null,(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:r,className:`w-3.5 h-3.5 opacity-70`})]}),r&&!e.redacted?(0,U.jsx)(`div`,{className:H(`border-t border-think/20 px-3 py-2 text-fg-muted`,e.streaming&&`caret`),children:e.streaming?(0,U.jsx)(`div`,{className:`pre-wrap`,"data-testid":`thinking-stream`,children:i}):(0,U.jsx)(tT,{text:e.text})}):null]})});function $T(e){let t=0,n=!1;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i===32||i===10||i===13||i===9?n=!1:n||(n=!0,t++)}return t}function eE(e,t){switch(e.kind){case`user`:return e.text;case`assistant`:return e.text;case`thinking`:return t?e.text:``;case`tool`:return[e.name,VT(e.name,e.input)??``,tE(e.result)].filter(e=>e!==``).join(`
|
|
127
|
+
`);case`system`:return e.text;case`error`:return e.message;case`permission`:return e.request.toolName;case`result`:case`compact`:return``}}function tE(e){return e===null?``:typeof e.content==`string`?e.content:e.content.map(e=>`text`in e&&typeof e.text==`string`?e.text:``).filter(e=>e!==``).join(`
|
|
128
|
+
`)}function nE(e,t,n){let r=Ee(e,t,e=>eE(e,n.showReasoning));if(r.length===0)return[];let i=new Map;for(let t of e)t.kind===`tool`&&i.set(t.toolUseId,t);return r.map(t=>{let n=e[t],r=rE(n,i);return{id:n.id,rootId:r[0]??n.id,path:r}})}function rE(e,t){let n=[],r=e;for(let e=0;e<16&&r.parentToolUseId!==null;e++){let e=t.get(r.parentToolUseId);if(e===void 0)break;n.unshift(e.id),r=e}return n}function iE(e,t){let n=e instanceof Element?e:null,r=e=>e!==null&&t.contains(e)?e:null,i=typeof window<`u`?window.getSelection():null,a=i&&!i.isCollapsed&&i.anchorNode&&t.contains(i.anchorNode)?i.toString():``,o=r(n?.closest(`[data-item-id]`)??null),s=r(n?.closest(`pre`)??null),c=r(n?.closest(`a[href]`)??null);return{selection:a,itemId:o?.getAttribute(`data-item-id`)??null,code:s?.textContent??null,link:c?.href||null}}function aE(e){switch(e.kind){case`user`:case`assistant`:case`thinking`:case`system`:return e.text;case`tool`:{let t=tE(e.result);return t===``?VT(e.name,e.input)??``:t}case`error`:return e.message;case`permission`:return e.request.toolName;case`result`:case`compact`:return``}}function oE(e){switch(e.kind){case`user`:return`Copy message`;case`assistant`:return`Copy reply`;case`tool`:return e.result?`Copy tool output`:`Copy tool call`;case`thinking`:return`Copy thought`;default:return`Copy text`}}function sE(e){let t=e.trim();return t===``||t.length>80||/[\r\n]/.test(t)?null:t}function cE(e){if(!e)return null;try{let t=new URL(e);return t.protocol===`https:`||t.protocol===`http:`?t.href:null}catch{return null}}function lE(e,t,n={}){let r=[],i=t!==null&&aE(t).trim()!==``;n.canReply!==!1&&(e.selection.trim()!==``||i)&&r.push({key:`reply`,label:e.selection.trim()===``?`Reply`:`Reply to selection`}),r.push({key:`copy`,label:`Copy`,hint:`Ctrl+C`,disabled:e.selection===``,separated:r.length>0}),e.code!==null&&e.code.trim()!==``&&r.push({key:`copy-code`,label:`Copy code block`}),e.link!==null&&(r.push({key:`copy-link`,label:`Copy link address`}),cE(e.link)&&r.push({key:`open-link`,label:`Open link`})),t!==null&&i&&r.push({key:`copy-item`,label:oE(t)});let a=sE(e.selection);if(a!==null){let e=a.length>32?`${a.slice(0,31)}…`:a;r.push({key:`find`,label:`Find “${e}” in this chat`,separated:!0})}return e.itemId!==null&&r.push({key:`select-block`,label:`Select all in this block`,separated:a===null}),r}function uE(e,t){return e===null||e===document||e===window||!t?!0:e instanceof Node?e.contains(t):!0}var dE=30;function fE({open:e,at:t,items:n,onClose:r,label:i,anchorEl:a=null,testId:o=`session-context-menu`}){let s=(0,v.useRef)(null),[c,l]=(0,v.useState)(t),u=n.filter(e=>!e.disabled),[d,f]=(0,v.useState)(0);return(0,v.useEffect)(()=>{e&&f(0)},[e,t.x,t.y]),(0,v.useLayoutEffect)(()=>{if(!e)return;let r=s.current,i=r?.offsetWidth??200,a=r?.offsetHeight??n.length*dE,o=window.innerWidth-i-8,c=window.innerHeight-a-8;l({x:Math.max(8,Math.min(t.x,o)),y:Math.max(8,Math.min(t.y,c))})},[e,t.x,t.y,n.length]),(0,v.useEffect)(()=>{if(!e)return;let t=e=>{if(e.key===`Escape`){e.stopPropagation(),r();return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault(),f(t=>((e.key===`ArrowDown`?t+1:t-1)+u.length)%Math.max(u.length,1));return}if(e.key===`Enter`||e.key===` `){e.preventDefault();let t=u[d];t&&(r(),t.onSelect())}},n=e=>{s.current?.contains(e.target)||(e.preventDefault(),e.stopPropagation(),r())},i=e=>{uE(e.target,a)&&r()};return document.addEventListener(`keydown`,t),window.addEventListener(`mousedown`,n,!0),window.addEventListener(`resize`,r),window.addEventListener(`scroll`,i,!0),()=>{document.removeEventListener(`keydown`,t),window.removeEventListener(`mousedown`,n,!0),window.removeEventListener(`resize`,r),window.removeEventListener(`scroll`,i,!0)}},[e,r,u,d,a]),e?(0,xp.createPortal)((0,U.jsx)(`div`,{ref:s,role:`menu`,"aria-label":i,"data-testid":o,className:`fixed z-50 min-w-[190px] overflow-hidden rounded-md border border-border bg-surface py-1 shadow-lg`,style:{left:c.x,top:c.y},children:n.map(e=>{let t=u.indexOf(e);return(0,U.jsxs)(`div`,{children:[e.separated?(0,U.jsx)(`div`,{className:`my-1 h-px bg-border`}):null,(0,U.jsxs)(`button`,{type:`button`,role:`menuitem`,disabled:e.disabled,"data-testid":e.testId,className:H(`flex w-full items-center gap-2 px-3 py-1.5 text-left text-sm`,e.disabled?`cursor-default text-fg-faint`:e.danger?`text-danger hover:bg-danger-soft`:`text-fg hover:bg-surface-2`,!e.disabled&&t===d?`bg-surface-2`:``),onMouseEnter:()=>t>=0&&f(t),onClick:()=>{r(),e.onSelect()},children:[e.icon?(0,U.jsx)(`span`,{className:`w-3.5 shrink-0`,children:e.icon}):null,(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),e.hint?(0,U.jsx)(`span`,{className:`shrink-0 text-[11px] text-fg-faint`,children:e.hint}):null]})]},e.key)})}),document.body):null}function pE(e){if(!e.supported)return`Remote devices appear once the relay is available on this host build.`;switch(e.reason){case`logged_out`:return`Sign in to your OonaCode account to see your other PCs here.`;case`gateway_unreachable`:return`Your account server is unreachable — only this PC is listed right now.`;case`vault_locked`:return`Unlock your vault to browse the sessions on your other PCs.`;default:return`No other PCs on this account yet. Install OonaCode on another machine and sign in.`}}function mE({sessions:e,onOpen:t,readOnly:n}){return e.length===0?(0,U.jsx)(`div`,{className:`px-2 py-4 text-center text-xs text-fg-faint`,children:`No sessions here.`}):(0,U.jsx)(`ul`,{className:`divide-y divide-border`,children:e.map(e=>(0,U.jsx)(`li`,{children:(0,U.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id),className:`flex w-full items-center gap-2 px-2 py-2 text-left hover:bg-surface-2`,children:[(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`truncate text-sm`,children:sd(e)}),(0,U.jsxs)(`div`,{className:`truncate text-[11px] text-fg-faint`,children:[e.cwd,` · `,ed(e.updatedAt)]})]}),n?(0,U.jsx)(X,{tone:`warn`,children:`read-only`}):null,(0,U.jsx)(K.Chevron,{className:`w-3.5 h-3.5 shrink-0 text-fg-faint`})]})},e.id))})}function hE({open:e,onClose:t}){let{state:n,actions:r}=W(),[i,a]=(0,v.useState)(`local`),[o,s]=(0,v.useState)(``);(0,v.useEffect)(()=>{e&&r.refreshHosts()},[e,r]),(0,v.useEffect)(()=>{!e||i===`local`||r.refreshHostSessions(i)},[e,i,r]);let c=(0,v.useMemo)(()=>n.remote.hosts.filter(e=>!e.isSelf),[n.remote.hosts]),l=c.find(e=>e.hostId===i)??null,u=i===`local`?n.sessions:n.remote.sessions[i]??[],d=(0,v.useMemo)(()=>{let e=o.trim().toLowerCase();return e?u.filter(t=>sd(t).toLowerCase().includes(e)||t.cwd.toLowerCase().includes(e)):u},[u,o]);return(0,U.jsx)(Ap,{open:e,title:`Open a session`,onClose:t,wide:!0,children:(0,U.jsxs)(`div`,{className:`flex min-h-[20rem] gap-4`,children:[(0,U.jsxs)(`nav`,{className:`w-44 shrink-0 space-y-0.5`,"aria-label":`Devices`,children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>a(`local`),"aria-current":i===`local`?`true`:void 0,className:H(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,i===`local`?`bg-accent-soft font-medium text-accent`:`text-fg-muted hover:bg-surface-2`),children:[(0,U.jsx)(K.Monitor,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:n.connection.hostName??`This PC`}),(0,U.jsx)(X,{tone:`ok`,children:`local`})]}),c.map(e=>(0,U.jsxs)(`button`,{type:`button`,onClick:()=>a(e.hostId),"aria-current":i===e.hostId?`true`:void 0,className:H(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,i===e.hostId?`bg-accent-soft font-medium text-accent`:`text-fg-muted hover:bg-surface-2`),children:[(0,U.jsx)(K.Monitor,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label||e.hostName}),(0,U.jsx)(`span`,{className:H(`h-1.5 w-1.5 shrink-0 rounded-full`,e.online?`bg-ok`:`bg-fg-faint`),"aria-label":e.online?`online`:`offline`})]},e.hostId)),c.length===0?(0,U.jsx)(`div`,{className:`px-2 pt-3 text-[11px] text-fg-faint`,children:pE(n.remote)}):null]}),(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,U.jsx)(`input`,{className:Y,placeholder:`Filter sessions`,"aria-label":`Filter sessions`,value:o,onChange:e=>s(e.target.value)}),l&&!l.online?(0,U.jsxs)(`div`,{className:`mt-2 rounded-md bg-warn-soft px-3 py-2 text-xs text-warn`,children:[l.label||l.hostName,` is offline — its sessions open read-only from your encrypted history mirror. Continuing one needs that PC online.`]}):null,(0,U.jsx)(`div`,{className:`mt-2 min-h-0 flex-1 overflow-y-auto rounded-md border border-border`,children:(0,U.jsx)(mE,{sessions:d,readOnly:l!==null&&!l.online,onOpen:e=>{if(l){r.openRemoteSession(l.hostId,e),t();return}r.selectSession(e),t()}})}),(0,U.jsx)(`div`,{className:`mt-2 flex justify-end`,children:(0,U.jsxs)(q,{variant:`primary`,onClick:()=>{r.newTab(),t()},children:[(0,U.jsx)(K.Plus,{className:`w-4 h-4`}),` New chat here`]})})]})]})})}function gE(){let{state:e}=W(),t=e.currentSessionId?e.remote.tabs[e.currentSessionId]:void 0;return t?(0,U.jsxs)(`div`,{className:H(`flex items-center gap-2 px-3 py-1.5 text-xs`,t.live?`bg-accent-soft text-accent`:`bg-warn-soft text-warn`),role:`status`,"data-testid":`remote-banner`,children:[(0,U.jsx)(K.Monitor,{className:`w-3.5 h-3.5`}),t.live?(0,U.jsxs)(`span`,{children:[`This session runs on `,(0,U.jsx)(`strong`,{children:t.hostName}),`. This window is a live view — that PC executes every tool.`]}):(0,U.jsxs)(`span`,{children:[(0,U.jsx)(`strong`,{children:t.hostName}),` is not reachable — this transcript is read-only history from your encrypted mirror`,t.detail?` (${t.detail})`:``,`. Bring that PC online to continue the session.`]})]}):null}function _E(){let{state:e}=W(),t=e.currentSessionId;if(!t)return!1;let n=e.remote.tabs[t];return n?!n.live:!1}var vE=`data-pin-message`;function yE(e,t,n){let r=0,i=e-1,a=-1;for(;r<=i;){let e=r+i>>1;t(e)<n?(a=e,r=e+1):i=e-1}return a}function bE(e,t=240){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,t-1)}…`}var xE=null,SE=460,CE=8;function wE(e,t){if(typeof window>`u`)return e;let n=t?.offsetWidth??SE,r=t?.offsetHeight??200;return{left:Math.min(Math.max(CE,e.left),Math.max(CE,window.innerWidth-n-CE)),top:Math.min(Math.max(CE,e.top),Math.max(CE,window.innerHeight-r-CE))}}function TE(e,t,n,r){return e===t?`current`:r[e]?`skipped`:n[e]?`answered`:`open`}function EE({item:e,onDecide:t,busy:n,cardRef:r,stackIndex:i=0}){let a=e.request,o=wc(a.input),[s,c]=(0,v.useState)(0),[l,u]=(0,v.useState)({}),[d,f]=(0,v.useState)({}),[p,m]=(0,v.useState)({}),[h,g]=(0,v.useState)(xE),_=(0,v.useRef)(null),y=(0,v.useRef)(null),b=o[s],x=s===o.length-1,S=e=>(l[e]??[]).length>0||(d[e]??``).trim().length>0,C={};o.forEach((e,t)=>{C[t]=S(t)});let w=new Set(Object.entries(p).filter(([,e])=>e).map(([e])=>Number(e))),T=Tc(o,l,d,w),E=o.every((e,t)=>C[t]||p[t]),D=o.some((e,t)=>C[t]&&!p[t]),O=(e,t,n)=>{m(t=>t[e]?{...t,[e]:!1}:t),f(t=>t[e]?{...t,[e]:``}:t),u(r=>{let i=r[e]??[];return n?{...r,[e]:i.includes(t)?i.filter(e=>e!==t):[...i,t]}:{...r,[e]:i[0]===t?[]:[t]}})},ee=(0,v.useCallback)(()=>{if(E){if(!D){t({behavior:`deny`,message:Sc});return}t({behavior:`allow`,updatedInput:{...a.input,answers:T}})}},[E,D,t,a.input,T]),k=()=>{b&&(!C[s]&&!p[s]||(x?ee():c(s+1)))},te=()=>{if(m(e=>({...e,[s]:!0})),u(e=>({...e,[s]:[]})),f(e=>({...e,[s]:``})),x){let e=new Set([...w,s]);if(!o.some((t,n)=>C[n]&&!e.has(n))){t({behavior:`deny`,message:Sc});return}let n={...l,[s]:[]},r={...d,[s]:``};t({behavior:`allow`,updatedInput:{...a.input,answers:Tc(o,n,r,e)}});return}c(s+1)},A=e=>{if(e.button!==0)return;let t=r.current;if(!t)return;let n=t.getBoundingClientRect();_.current={dx:e.clientX-n.left,dy:e.clientY-n.top},e.preventDefault();let i=e=>{let t=_.current;if(!t)return;let n=wE({left:e.clientX-t.dx,top:e.clientY-t.dy},r.current);xE=n,g(n)},a=()=>{_.current=null,document.removeEventListener(`mousemove`,i),document.removeEventListener(`mouseup`,a)};document.addEventListener(`mousemove`,i),document.addEventListener(`mouseup`,a)};if((0,v.useEffect)(()=>{if(h){let e=wE(h,r.current);(e.left!==h.left||e.top!==h.top)&&g(e)}},[]),typeof document>`u`||o.length===0)return null;let j=h?{left:h.left+i*24,top:h.top+i*24}:{right:16+i*24,bottom:132+i*24};return(0,xp.createPortal)((0,U.jsxs)(`div`,{ref:r,className:`fixed z-30 flex max-h-[70vh] w-[460px] max-w-[calc(100vw-16px)] flex-col rounded-xl border border-accent/50 bg-surface text-sm shadow-xl`,style:j,role:`group`,"aria-label":`The model has a question`,"data-permission-pending":`true`,"data-testid":`question-${a.requestId}`,children:[(0,U.jsxs)(`div`,{className:`flex cursor-move select-none items-center gap-2 rounded-t-xl border-b border-border bg-accent-soft/40 px-3 py-2`,onMouseDown:A,"data-testid":`question-drag-handle`,title:`Drag to move`,children:[(0,U.jsx)(K.Info,{className:`w-4 h-4 text-accent`}),(0,U.jsx)(`span`,{className:`font-semibold`,children:o.length>1?`The model has questions`:`The model has a question`}),a.agentId?(0,U.jsx)(X,{tone:`think`,children:`subagent`}):null,(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsxs)(`span`,{className:`text-[11px] text-fg-faint`,"data-testid":`question-step`,children:[s+1,` of `,o.length]})]}),o.length>1?(0,U.jsx)(`div`,{className:`flex flex-wrap gap-1 border-b border-border px-3 py-1.5`,role:`tablist`,"data-testid":`question-tabs`,children:o.map((e,t)=>{let r=TE(t,s,C,p);return(0,U.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":t===s,disabled:n,onClick:()=>c(t),"data-testid":`question-tab`,"data-state":r,title:e.question,className:`flex items-center gap-1 rounded-md border px-2 py-0.5 text-[11px] transition `+(t===s?`border-accent bg-accent text-accent-fg`:`border-border bg-surface text-fg-muted hover:border-accent/60`),children:[r===`answered`?(0,U.jsx)(K.Check,{className:`w-3 h-3`}):null,r===`skipped`?(0,U.jsx)(`span`,{"aria-hidden":!0,children:`–`}):null,e.header||`Q${t+1}`]},t)})}):null,b?(0,U.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-3 py-2.5`,"data-testid":`question-body`,children:[(0,U.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-2`,children:[b.header?(0,U.jsx)(X,{tone:`accent`,children:b.header}):null,(0,U.jsx)(`span`,{className:`font-medium`,children:b.question})]}),(0,U.jsx)(`div`,{className:`space-y-1`,role:b.multiSelect?`group`:`radiogroup`,"aria-label":b.multiSelect?`choose any`:`choose one`,children:b.options.map(e=>{let t=(l[s]??[]).includes(e.label);return(0,U.jsxs)(`button`,{type:`button`,role:b.multiSelect?`checkbox`:`radio`,"aria-checked":t,disabled:n,onClick:()=>O(s,e.label,b.multiSelect),"data-testid":`question-option`,"data-label":e.label,className:`flex w-full items-start gap-2.5 rounded-md border px-2.5 py-1.5 text-left transition `+(t?`border-accent bg-accent-soft/60`:`border-border bg-surface hover:border-accent/60`),children:[(0,U.jsx)(`span`,{"aria-hidden":!0,className:`mt-0.5 flex h-3.5 w-3.5 shrink-0 items-center justify-center border `+(b.multiSelect?`rounded-sm `:`rounded-full `)+(t?`border-accent bg-accent text-accent-fg`:`border-fg-faint`),children:t?(0,U.jsx)(K.Check,{className:`w-2.5 h-2.5`}):null}),(0,U.jsxs)(`span`,{className:`min-w-0`,children:[(0,U.jsx)(`span`,{className:`block text-sm`,children:e.label}),e.description?(0,U.jsx)(`span`,{className:`block text-[11px] leading-snug text-fg-muted`,children:e.description}):null]})]},e.label)})}),(0,U.jsx)(`input`,{ref:y,className:Y+` mt-2 text-xs`,value:d[s]??``,onChange:e=>{let t=e.target.value;f(e=>({...e,[s]:t})),t.trim()&&(m(e=>e[s]?{...e,[s]:!1}:e),u(e=>(e[s]??[]).length>0?{...e,[s]:[]}:e))},placeholder:b.options.length>0?`Other — type your own answer`:`Type your answer`,autoComplete:`off`,"data-testid":`question-custom`,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),k())}}),b.multiSelect?(0,U.jsx)(`div`,{className:`mt-1 text-[11px] text-fg-faint`,children:`Choose any that apply.`}):null]}):null,(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-t border-border px-3 py-2`,children:[(0,U.jsx)(q,{size:`sm`,variant:`ghost`,disabled:n||s===0,onClick:()=>c(s-1),"data-testid":`question-back`,children:`Back`}),(0,U.jsx)(q,{size:`sm`,disabled:n,onClick:te,"data-testid":`question-skip`,children:`Skip`}),(0,U.jsx)(`span`,{className:`flex-1`}),x?(0,U.jsx)(q,{size:`sm`,variant:`primary`,busy:n,disabled:!E,onClick:ee,"data-testid":`question-answer`,children:`Answer`}):(0,U.jsxs)(q,{size:`sm`,variant:`primary`,busy:n,disabled:!C[s]&&!p[s],onClick:k,"data-testid":`question-next`,children:[`Next `,(0,U.jsx)(K.ChevronRight,{className:`w-3.5 h-3.5`})]})]})]}),document.body)}function DE(e){if(!e)return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e instanceof HTMLElement&&e.isContentEditable}function OE(e,t,n){if(!e||!n||n.querySelector(`[role="dialog"][aria-modal="true"]`))return!1;let r=t instanceof Element?t:null;if(r&&DE(r)&&!e.contains(r)&&r.closest(`[data-testid="composer"]`)===null)return!1;let i=n.querySelector(`[data-permission-pending="true"]`);return i===null||i===e}var kE=(0,v.memo)(function({item:e,agentName:t}){let n=e.request,[r,i]=(0,v.useState)(!1),a=e.status===`allowed`,o=(0,v.useMemo)(()=>cl(n.toolName,n.input,110),[n]),s=n.agentId?t??`background agent`:null;return(0,U.jsxs)(`div`,{className:`my-1 text-xs text-fg-faint`,"data-testid":`permission-${n.requestId}`,children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":r,onClick:()=>i(e=>!e),className:`flex w-full min-w-0 items-center gap-2 rounded px-1 py-0.5 text-left hover:bg-surface-2`,children:[a?(0,U.jsx)(K.Check,{className:`w-3 h-3 shrink-0 text-ok`}):(0,U.jsx)(K.X,{className:`w-3 h-3 shrink-0 text-danger`}),(0,U.jsxs)(`span`,{className:`shrink-0`,children:[a?`Allowed`:`Denied`,` `,n.displayName??n.toolName,e.resolvedBy===`auto`?` (automatically)`:e.resolvedBy&&e.resolvedBy!==`local`?` (by ${e.resolvedBy})`:``]}),o?(0,U.jsx)(`span`,{className:`min-w-0 truncate font-mono text-fg-muted`,"data-testid":`permission-summary`,children:o}):null,s?(0,U.jsx)(`span`,{title:n.agentId??void 0,className:`shrink-0`,children:(0,U.jsx)(X,{tone:`think`,children:s})}):null,(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:r,className:`w-3 h-3 shrink-0`})]}),r?(0,U.jsx)(`div`,{className:`ml-5 mt-1`,children:(0,U.jsx)(WT,{name:n.toolName,input:n.input})}):null]})});function AE({items:e,agentNameOf:t}){let[n,r]=(0,v.useState)(!1),i=zT((0,v.useMemo)(()=>e.map(e=>e.id),[e]),r),{allowed:a,denied:o,tools:s,who:c}=(0,v.useMemo)(()=>{let n=e.filter(e=>e.status===`allowed`).length,r=new Map,i=new Set;for(let n of e){let e=n.request.displayName??n.request.toolName;r.set(e,(r.get(e)??0)+1),n.request.agentId&&i.add(t(n.request.agentId)??`background agent`)}return{allowed:n,denied:e.length-n,tools:[...r.entries()].sort((e,t)=>t[1]-e[1]).map(([e,t])=>t>1?`${e} ×${t}`:e).join(`, `),who:[...i]}},[e,t]);return(0,U.jsxs)(`div`,{className:`my-1 text-xs text-fg-faint`,"data-testid":`permission-run`,children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":n||i,onClick:()=>r(e=>!e),className:`flex w-full min-w-0 items-center gap-2 rounded px-1 py-0.5 text-left hover:bg-surface-2`,children:[o===0?(0,U.jsx)(K.Check,{className:`w-3 h-3 shrink-0 text-ok`}):(0,U.jsx)(K.X,{className:`w-3 h-3 shrink-0 text-danger`}),(0,U.jsxs)(`span`,{className:`shrink-0`,children:[a>0?`Allowed ${a}`:``,a>0&&o>0?` · `:``,o>0?`Denied ${o}`:``]}),(0,U.jsx)(`span`,{className:`min-w-0 truncate text-fg-muted`,"data-testid":`permission-run-tools`,children:s}),c.length>0?(0,U.jsx)(`span`,{className:`shrink-0`,children:(0,U.jsx)(X,{tone:`think`,children:c.length===1?c[0]:`${c.length} agents`})}):null,(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:n||i,className:`w-3 h-3 shrink-0`})]}),n||i?(0,U.jsx)(`div`,{className:`ml-3`,children:e.map(e=>(0,U.jsx)(kE,{item:e,agentName:e.request.agentId?t(e.request.agentId):null},e.id))}):null]})}function jE({item:e,onDecide:t,busy:n,stackIndex:r,agentName:i}){let a=e.request,[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(``),u=a.title??`Allow ${a.displayName??a.toolName}?`,d=(0,v.useRef)(t);d.current=t;let f=(0,v.useRef)(n);f.current=n;let p=(0,v.useRef)(null),m=e.status===`pending`;return(0,v.useEffect)(()=>{if(m&&typeof document<`u`){let e=e=>{e.key!==`Escape`||f.current||OE(p.current,e.target,document)&&(e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),d.current({behavior:`deny`}))};return document.addEventListener(`keydown`,e,!0),()=>document.removeEventListener(`keydown`,e,!0)}},[m]),e.status===`pending`?a.toolName===`AskUserQuestion`?(0,U.jsx)(EE,{item:e,onDecide:t,busy:n,cardRef:p,...r===void 0?{}:{stackIndex:r}}):(0,U.jsxs)(`div`,{ref:p,className:`my-2 rounded-lg border border-warn/60 bg-warn-soft/40 p-3 text-sm shadow-sm`,role:`group`,"aria-label":`Permission request`,"data-permission-pending":`true`,"data-testid":`permission-${a.requestId}`,children:[(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(K.Shield,{className:`mt-0.5 w-4 h-4 text-warn`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`font-semibold`,children:u}),(0,U.jsx)(X,{tone:`warn`,children:a.toolName}),a.agentId?(0,U.jsx)(X,{tone:`think`,children:`subagent`}):null]}),a.description?(0,U.jsx)(`div`,{className:`mt-0.5 text-fg-muted`,children:a.description}):null,a.decisionReason?(0,U.jsx)(`div`,{className:`mt-0.5 text-xs text-fg-faint`,children:a.decisionReason}):null,a.blockedPath?(0,U.jsxs)(`div`,{className:`mt-0.5 font-mono text-xs text-danger`,children:[`Blocked path: `,a.blockedPath]}):null]})]}),(0,U.jsx)(`div`,{className:`mt-2`,children:(0,U.jsx)(WT,{name:a.toolName,input:a.input})}),o?(0,U.jsx)(`div`,{className:`mt-2`,children:(0,U.jsx)(`input`,{className:Y,placeholder:`Optional: tell the agent why (sent as the tool result)`,value:c,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&t(c.trim()?{behavior:`deny`,message:c.trim()}:{behavior:`deny`})}})}):null,(0,U.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-2`,children:[(0,U.jsxs)(q,{variant:`inverse`,busy:n,onClick:()=>t({behavior:`allow`}),autoFocus:!0,children:[(0,U.jsx)(K.Check,{className:`w-3.5 h-3.5`}),` Allow`]}),(0,U.jsx)(q,{variant:`secondary`,busy:n,title:`Allow and remember this rule for the session/project`,onClick:()=>t({behavior:`allow`,remember:!0}),children:`Allow always`}),o?(0,U.jsx)(q,{variant:`secondary`,busy:n,onClick:()=>t(c.trim()?{behavior:`deny`,message:c.trim()}:{behavior:`deny`}),children:`Confirm deny`}):(0,U.jsxs)(q,{variant:`ghost`,busy:n,onClick:()=>s(!0),children:[(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`}),` Deny`]}),(0,U.jsx)(`span`,{className:`text-[11px] text-fg-faint`,children:`Enter = allow · Esc = deny`})]})]}):(0,U.jsx)(kE,{item:e,agentName:i??null})}function ME(e){let t=[],n=0;for(;n<e.length;){let r=e[n].item;if(r.kind===`permission`&&r.status!==`pending`){let r=[],i=n;for(;i<e.length;){let t=e[i].item;if(t.kind!==`permission`||t.status===`pending`)break;r.push(t),i+=1}if(r.length>=3){t.push({run:r}),n=i;continue}}t.push(e[n]),n+=1}return t}function NE(e){if(!e)return{flow:void 0,queued:[]};let t=[];for(let n of e)n.kind===`user`&&n.waiting&&!n.failed&&t.push(n);if(t.length===0)return{flow:e,queued:t};let n=new Set(t.map(e=>e.id));return{flow:e.filter(e=>!n.has(e.id)),queued:t}}function PE({items:e,onCancel:t}){let n=(0,v.useRef)(null),r=e.length;return(0,v.useEffect)(()=>{let e=n.current;e&&(e.scrollTop=e.scrollHeight)},[r]),e.length===0?null:(0,U.jsxs)(`div`,{className:`shrink-0 border-t border-border bg-surface px-3 pb-1 pt-2 sm:px-6`,"data-testid":`queued-strip`,children:[(0,U.jsxs)(`div`,{className:`mb-0.5 text-right text-[11px] text-fg-faint`,children:[e.length===1?`Queued`:`${e.length} queued`,` — the agent reads this at its next step`]}),(0,U.jsx)(`div`,{ref:n,className:`max-h-[200px] overflow-y-auto`,"data-testid":`queued-strip-list`,children:e.map(e=>(0,U.jsxs)(`div`,{className:`relative`,[oT]:e.id,children:[(0,U.jsx)(LE,{item:e}),t&&e.requestId?(0,U.jsx)(`button`,{type:`button`,onClick:()=>t(e),title:`Withdraw this message — the agent has not read it yet`,"aria-label":`Withdraw this message`,"data-testid":`queued-cancel-${e.requestId}`,className:`absolute right-1 top-1 rounded-full border border-border bg-surface p-0.5 text-fg-muted shadow-sm hover:bg-surface-2 hover:text-fg`,children:(0,U.jsx)(K.X,{className:`h-3 w-3`})}):null]},e.id))})]})}function FE(e){return e.failed?`failed`:e.optimistic||e.waiting?`pending`:`delivered`}function IE(e){return!e.compactSummary&&!e.taskNotification&&!e.engineNote&&e.scheduledTask===void 0&&!M(e.text)&&!N(e.text)}var LE=(0,v.memo)(function({item:e}){if(N(e.text))return(0,U.jsx)(VE,{item:e});if(e.compactSummary)return(0,U.jsx)(GE,{item:e});if(e.taskNotification)return(0,U.jsx)(WE,{item:e});if(M(e.text))return(0,U.jsx)(HE,{item:e});if(e.engineNote)return(0,U.jsx)(zE,{item:e});if(e.scheduledTask!==void 0)return(0,U.jsx)(BE,{item:e});let t=FE(e);return(0,U.jsx)(`div`,{className:`my-2 flex justify-end`,"data-testid":`user-bubble`,"data-delivery":t,children:(0,U.jsxs)(`div`,{className:H(`max-w-[85%] rounded-2xl rounded-br-md bg-user-bubble px-3.5 py-2 text-sm`,t===`pending`&&`opacity-70`,e.failed&&`border border-danger/50`),children:[e.attachments.length>0?(0,U.jsx)(`div`,{className:`mb-1 flex flex-wrap gap-1`,children:e.attachments.map((e,t)=>{let n=e.source,r=n?.type===`base64`&&n.data?`data:${n.media_type??`image/png`};base64,${n.data}`:null;return r&&e.type===`image`?(0,U.jsx)(`img`,{src:r,alt:`attachment`,className:`max-h-40 rounded border border-border`},t):(0,U.jsx)(X,{children:e.type},t)})}):null,(0,U.jsx)(RE,{text:e.text}),e.failed?(0,U.jsx)(`div`,{className:`mt-1 text-right text-[10px] text-danger`,"data-testid":`user-not-sent`,children:`Not sent — send it again`}):null,(0,U.jsxs)(`div`,{className:`mt-0.5 flex items-center justify-end gap-1 text-[10px] text-fg-muted`,"data-testid":`user-time`,children:[e.timestamp?(0,U.jsx)(`span`,{title:td(e.timestamp),children:nd(e.timestamp)}):null,t===`pending`?(0,U.jsx)(`span`,{"data-testid":`user-waiting`,title:e.waiting?`Handed to the agent — it reads this at its next step`:`Sending…`,"aria-label":`not read yet`,children:(0,U.jsx)(K.Clock,{className:`h-3 w-3`})}):t===`delivered`?(0,U.jsx)(`span`,{"data-testid":`user-delivered`,title:e.deliveredAt?`Read by the agent at ${td(e.deliveredAt)}`:`Sent to the model`,"aria-label":`read by the agent`,children:(0,U.jsx)(K.Check,{className:`h-3 w-3`})}):null]})]})})});function RE({text:e}){let t=Yd(e);return t?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-1.5 flex flex-col gap-1`,children:t.quotes.map((e,t)=>(0,U.jsxs)(`button`,{type:`button`,className:`flex min-w-0 max-w-full items-center gap-1.5 rounded-md border-l-2 border-accent bg-accent-soft/60 py-1 pl-2 pr-2 text-left text-xs text-fg-muted hover:text-fg`,title:`Go to the quoted message:\n\n${Xd(e)}`,"data-quote":e,"data-testid":`user-reply-quote`,children:[(0,U.jsx)(K.Reply,{className:`h-3.5 w-3.5 shrink-0 text-accent`}),(0,U.jsxs)(`span`,{className:`min-w-0 truncate`,children:[(0,U.jsx)(`span`,{className:`text-fg`,children:`Reply to `}),$d(Xd(e))]})]},t))}),t.reply===``?null:(0,U.jsx)(`div`,{className:`pre-wrap`,children:(0,U.jsx)(Gw,{text:t.reply})})]}):(0,U.jsx)(`div`,{className:`pre-wrap`,children:(0,U.jsx)(Gw,{text:e})})}var zE=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(!1);zT(e.id,n);let r=e.text.trim()?e.text.trim().split(/\s+/).length:0;return(0,U.jsxs)(`div`,{className:`my-2 rounded-lg border border-border bg-surface text-sm`,"data-testid":`engine-note`,title:td(e.timestamp),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":t,onClick:()=>n(e=>!e),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-fg-muted hover:bg-surface-2`,children:[(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Engine note`}),(0,U.jsxs)(`span`,{className:`min-w-0 truncate text-xs opacity-70`,children:[oe(e.text),r>40?` · ${r.toLocaleString()} words`:``]}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5 text-fg-faint`})]}),t?(0,U.jsx)(`div`,{className:`border-t border-border px-3 py-2 text-fg-muted`,children:(0,U.jsx)(tT,{text:e.text})}):null]})}),BE=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(!1);zT(e.id,n);let r=Hs(e.text)?.prompt??e.text;return(0,U.jsxs)(`div`,{className:`my-2 rounded-lg border border-border bg-surface text-sm`,"data-testid":`scheduled-task-line`,title:td(e.timestamp),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":t,onClick:()=>n(e=>!e),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-fg-muted hover:bg-surface-2`,children:[(0,U.jsx)(K.Clock,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Scheduled task`}),(0,U.jsx)(`span`,{className:`min-w-0 truncate text-xs opacity-70`,children:e.scheduledTask}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5 text-fg-faint`})]}),t?(0,U.jsx)(`div`,{className:`border-t border-border px-3 py-2 text-fg-muted`,children:(0,U.jsx)(tT,{text:r})}):null]})}),VE=(0,v.memo)(function({item:e}){return(0,U.jsxs)(`div`,{className:`my-2 flex items-center gap-2 text-xs text-fg-faint`,"data-testid":`interrupt-marker`,title:td(e.timestamp),children:[(0,U.jsx)(`span`,{className:`h-px flex-1 bg-border`}),(0,U.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-full border border-border bg-surface px-2.5 py-0.5`,children:[(0,U.jsx)(K.Stop,{className:`h-3 w-3 text-danger`}),(0,U.jsx)(`span`,{className:`font-medium text-fg-muted`,children:`User requested stop`})]}),(0,U.jsx)(`span`,{className:`h-px flex-1 bg-border`})]})}),HE=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(!1);return zT(e.id,n),(0,U.jsxs)(`div`,{className:`my-2 rounded-lg border border-border bg-surface text-sm`,"data-testid":`stream-cut`,title:td(e.timestamp),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":t,onClick:()=>n(e=>!e),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-fg-muted hover:bg-surface-2`,children:[(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Reply cut off`}),(0,U.jsx)(`span`,{className:`text-xs opacity-70`,children:`the stream broke mid-answer; the engine asked the model to resume where it stopped`}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5 text-fg-faint`})]}),t?(0,U.jsx)(`div`,{className:`border-t border-border px-3 py-2 text-fg-muted`,children:(0,U.jsx)(tT,{text:e.text})}):null]})}),UE=(0,v.memo)(function({item:e}){let t=al(e.error,e.text),n=PT(e.text,e.streaming);return(0,U.jsxs)(`div`,{className:`my-2 text-sm`,"data-testid":`assistant-bubble`,title:td(e.timestamp),children:[(0,U.jsx)(`div`,{className:H(e.streaming&&`caret`),children:e.streaming?(0,U.jsx)(iT,{text:n,localFiles:!0}):(0,U.jsx)(tT,{text:n,localFiles:!0})}),t?(0,U.jsx)(`div`,{className:`mt-1 text-xs text-danger`,"data-testid":`assistant-error`,children:t}):null,e.aborted?(0,U.jsx)(X,{tone:`warn`,className:`mt-1`,children:`interrupted`}):null]})}),WE=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(!1);zT(e.id,n);let r=he(e.text),i=r.status??`ended`,a=i===`completed`?`text-ok`:i===`failed`?`text-danger`:`text-warn`;return(0,U.jsxs)(`div`,{className:`my-2 rounded-lg border border-border bg-surface text-sm`,"data-testid":`task-notification`,"data-status":i,title:td(e.timestamp),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":t,onClick:()=>n(e=>!e),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-fg-muted hover:bg-surface-2`,children:[(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Background task`}),(0,U.jsx)(`span`,{className:`text-xs font-medium ${a}`,children:i}),r.summary?(0,U.jsx)(`span`,{className:`min-w-0 truncate text-xs opacity-70`,children:r.summary}):null,(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5 text-fg-faint`})]}),t?(0,U.jsxs)(`div`,{className:`border-t border-border px-3 py-2 text-xs text-fg-muted`,children:[r.note?(0,U.jsx)(`p`,{className:`mb-2`,children:r.note}):null,(0,U.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-[11px] text-fg-faint`,children:e.text})]}):null]})}),GE=(0,v.memo)(function({item:e}){let[t,n]=(0,v.useState)(!1);zT(e.id,n);let r=e.text.trim()?e.text.trim().split(/\s+/).length:0;return(0,U.jsxs)(`div`,{className:`my-2 rounded-lg border border-border bg-surface text-sm`,"data-testid":`compact-summary`,title:td(e.timestamp),children:[(0,U.jsxs)(`button`,{type:`button`,"aria-expanded":t,onClick:()=>n(e=>!e),className:`flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-fg-muted hover:bg-surface-2`,children:[(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Context compacted`}),(0,U.jsxs)(`span`,{className:`text-xs opacity-70`,children:[`the engine summarised the conversation so far to make room · `,r.toLocaleString(),` `,`words`]}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5 text-fg-faint`})]}),t?(0,U.jsx)(`div`,{className:`border-t border-border px-3 py-2 text-fg-muted`,children:(0,U.jsx)(tT,{text:e.text})}):null]})}),KE=(0,v.memo)(function({item:e}){let t=[Qu(e.durationMs),`${$u(e.inputTokens)} in${(e.cachedInputTokens??0)>0?` (+${$u(e.cachedInputTokens??0)} cached)`:``} / ${$u(e.outputTokens)} out`,`${e.numTurns} step${e.numTurns===1?``:`s`}`],n=e.isError?rl(e):`turn complete`;return(0,U.jsxs)(`div`,{className:H(`my-2 flex flex-wrap items-center gap-x-2 gap-y-1 text-[11px]`,e.isError?`text-danger`:`text-fg-faint`),"data-testid":`result-line`,title:td(e.timestamp),children:[e.isError?(0,U.jsx)(K.Alert,{className:`w-3 h-3`}):(0,U.jsx)(K.Check,{className:`w-3 h-3`}),(0,U.jsx)(`span`,{children:n}),(0,U.jsx)(`span`,{children:`·`}),(0,U.jsx)(`span`,{children:t.join(` · `)}),e.errors.length>0?(0,U.jsx)(`span`,{className:`w-full pre-wrap font-mono`,children:e.errors.join(`
|
|
129
|
+
`)}):null]})}),qE=(0,v.memo)(function({item:e}){return(0,U.jsxs)(`div`,{className:`my-3 flex items-center gap-2 text-[11px] text-fg-faint`,children:[(0,U.jsx)(`div`,{className:`h-px flex-1 bg-border`}),(0,U.jsxs)(`span`,{children:[`Context compacted (`,e.trigger,`) · `,$u(e.preTokens),e.postTokens===null?``:` → ${$u(e.postTokens)}`,` tokens`]}),(0,U.jsx)(`div`,{className:`h-px flex-1 bg-border`})]})}),JE=(0,v.memo)(function({item:e}){let t=e.subtype===`local-command`||e.subtype===`local-command-error`,n=e.subtype===`command`;return e.subtype===`rewind`?(0,U.jsxs)(`div`,{className:`my-3 flex items-center gap-2 text-[11px] text-fg-faint`,"data-testid":`rewind-boundary`,children:[(0,U.jsx)(`span`,{className:`h-px flex-1 bg-border`}),(0,U.jsxs)(`span`,{className:`whitespace-nowrap rounded border border-border bg-surface-2 px-2 py-0.5`,children:[`⟲ `,e.text]}),(0,U.jsx)(`span`,{className:`h-px flex-1 bg-border`})]}):(0,U.jsx)(`div`,{className:H(`my-2 rounded-md border border-border bg-surface-2 px-3 py-1.5 text-xs`,e.subtype===`local-command-error`?`text-danger`:t?`text-fg`:`text-fg-muted`),"data-testid":t||n?`command-echo`:void 0,children:n?(0,U.jsx)(`span`,{className:`font-mono`,children:e.text}):(0,U.jsx)(`span`,{className:H(`pre-wrap`,t&&`font-semibold`),children:e.text})})}),YE=(0,v.memo)(function({item:e}){return(0,U.jsxs)(`div`,{className:`my-2 flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-xs text-danger`,role:`alert`,children:[(0,U.jsx)(K.Alert,{className:`mt-0.5 w-3.5 h-3.5`}),(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`span`,{className:`font-mono`,children:e.code}),`: `,e.message]})]})});function XE({label:e,lastFrameAt:t=null}){let n=tD(t),r=n!==null&&n>=3e4,i=n!==null&&n>=3e5;return(0,U.jsxs)(`div`,{className:`my-2 flex flex-wrap items-center gap-2 text-xs text-fg-muted`,"data-testid":`working`,role:`status`,"aria-live":`polite`,children:[(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`blink`,children:e}),(0,U.jsxs)(`span`,{className:`thinking-dots`,"aria-hidden":!0,children:[(0,U.jsx)(`span`,{children:`.`}),(0,U.jsx)(`span`,{children:`.`}),(0,U.jsx)(`span`,{children:`.`})]}),r&&t!==null?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`span`,{"data-testid":`working-quiet`,"aria-hidden":`true`,className:i?`inline-flex items-center gap-1 text-fg`:void 0,title:`Last activity at ${rD.format(t)}`,children:[i?(0,U.jsx)(K.Alert,{className:`h-3.5 w-3.5 shrink-0 text-warn`}):null,`· nothing from the agent for ${Qu(n)}`,i?` — it may be stuck: press Stop, then send a message to continue`:``]}),(0,U.jsx)(`span`,{className:`sr-only`,"data-testid":`working-quiet-sr`,children:i?`Nothing from the agent for over five minutes. It may be stuck: press Stop, then send a message to continue.`:`Nothing from the agent for over thirty seconds.`})]}):null]})}function ZE(e,t){return e.item.id===t||e.children.some(e=>ZE(e,t))}function QE(e){if(typeof requestAnimationFrame==`function`){let t=requestAnimationFrame(()=>e());return()=>cancelAnimationFrame(t)}let t=setTimeout(e,16);return()=>clearTimeout(t)}function $E(e){let t=e?.pendingPermissions??[];return t.length===0?null:t.some(e=>e.toolName===`AskUserQuestion`)?`answer`:`approval`}function eD(e){return!e||e.status!==`running`||e.pendingPermissions.length>0?null:e.lastFrameAt}function tD(e){let[t,n]=(0,v.useState)(()=>Date.now());return(0,v.useEffect)(()=>{if(e===null)return;n(Date.now());let t=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(t)},[e]),e===null?null:Math.max(0,t-e)}var nD=new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`}),rD=new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`}),iD=new Intl.DateTimeFormat(void 0,{dateStyle:`full`,timeStyle:`long`}),aD=new Intl.DateTimeFormat(void 0,{weekday:`long`,day:`numeric`,month:`long`}),oD=new Intl.DateTimeFormat(void 0,{dateStyle:`full`});function sD(e){let t=Date.parse(e);if(!Number.isFinite(t))return null;let n=new Date(t);return`${n.getFullYear()}-${n.getMonth()+1}-${n.getDate()}`}function cD(e,t=new Date){let n=sD(e);if(n===null)return``;if(n===sD(t.toISOString()))return`Today`;let r=new Date(t);if(r.setDate(r.getDate()-1),n===sD(r.toISOString()))return`Yesterday`;let i=Date.parse(e);return(new Date(i).getFullYear()===t.getFullYear()?aD:oD).format(i)}function lD(){let[e,t]=(0,v.useState)(0),n=sD(new Date().toISOString())??``;return(0,v.useEffect)(()=>{let e=new Date,n=new Date(e.getFullYear(),e.getMonth(),e.getDate()+1,0,0,1),r=setTimeout(()=>t(e=>e+1),n.getTime()-e.getTime());return()=>clearTimeout(r)},[n,e]),n}var uD=(0,v.memo)(function({iso:e}){let t=e?Date.parse(e):NaN,n=Number.isFinite(t);return(0,U.jsx)(`span`,{"data-testid":`item-time`,className:`mb-2 min-w-11 shrink-0 select-none whitespace-nowrap text-right text-[10px] tabular-nums text-fg-muted`,title:n?iD.format(t):void 0,children:n?nD.format(t):``})}),dD=(0,v.memo)(function({iso:e}){return(0,U.jsx)(`div`,{className:`my-3 flex justify-center`,"data-testid":`day-separator`,children:(0,U.jsx)(`span`,{className:`rounded-full border border-border bg-surface px-2.5 py-0.5 text-[11px] text-fg-muted`,children:cD(e)})})});function fD({hasProject:e}){let{actions:t}=W();return(0,U.jsxs)(`div`,{className:`py-10 text-center`,"data-testid":`draft-intro`,children:[(0,U.jsx)(`div`,{className:`text-sm text-fg-muted`,children:`Send a message to start this chat.`}),e?null:(0,U.jsxs)(`div`,{className:`mx-auto mt-2 max-w-md text-xs text-fg-faint`,children:[`It runs in a folder OonaCode makes for it. The agent can still read and write anywhere on this PC — it just asks first.`,` `,(0,U.jsx)(`button`,{type:`button`,className:`underline hover:text-fg`,onClick:()=>t.openDialog(`project`),children:`Use one of your project folders`}),` `,`to load its `,(0,U.jsx)(`code`,{children:`CLAUDE.md`}),` and settings instead.`]})]})}function pD(e,t,n){return e===`waiting_permission`&&!n?`Waiting for your approval`:t??`thinking`}var mD={open:!1,query:``,currentId:null,focusSeq:0},hD=[];function gD(){let{state:e,actions:t,api:n}=W(),r=pp(),i=mp(),a=e.currentSessionId,o=a?e.remote.tabs[a]!==void 0:!1,s=r?.init?.cwd??i?.cwd??null,c=e.info?.homeDir??null,l=e.info?.platform??null;return(0,v.useMemo)(()=>{let e=typeof window<`u`?window.oonacode??null:null,r=n.grantLocalFile?.bind(n)??null;return{sessionId:a,cwd:s,homeDir:o?null:c,platform:o?null:l,remote:o,grant:r,openInViewer:o?null:e=>t.openFile(e),bridge:e&&(e.openPath||e.showItemInFolder)?e:null,notify:(e,n)=>t.toast(e,n)}},[a,s,o,c,l,n,t])}function _D(){let e=gD();return(0,U.jsx)(Iw.Provider,{value:e,children:(0,U.jsx)(vD,{})})}function vD(){let{state:e,actions:t,dispatch:n}=W(),r=pp(),i=mp(),a=hp(),o=(0,v.useRef)(null),[s,c]=(0,v.useState)(!0),l=(0,v.useRef)(null),u=e.currentSessionId,d=u&&!a?e.transcriptLoading[u]===!0:!1,f=e.prefs.showReasoningSummaries,p=r?.items,{flow:m,queued:h}=(0,v.useMemo)(()=>NE(p),[p]),g=(0,v.useRef)([]),_=(0,v.useMemo)(()=>{let e=m?ku(m,g.current):[];return g.current=e,e},[m]),y=u?e.windows[u]:void 0,b=(0,v.useMemo)(()=>y??rf(e.prefs.transcriptWindowSize),[y,e.prefs.transcriptWindowSize]),x=(0,v.useMemo)(()=>uf(_,b),[_,b]),[S,C]=(0,v.useState)(mD),T=(0,v.useMemo)(()=>S.open&&m?nE(m,S.query,{showReasoning:f}):hD,[m,S.open,S.query,f]),E=S.currentId===null?-1:T.findIndex(e=>e.id===S.currentId),D=E>=0?T[E]??null:null,O=(0,v.useCallback)(()=>C(e=>({...e,open:!0,focusSeq:e.focusSeq+1})),[]),ee=(0,v.useCallback)(()=>C(mD),[]),k=(0,v.useCallback)(e=>C(t=>({...t,query:e,currentId:null})),[]),te=(0,v.useRef)(null),A=(0,v.useCallback)(e=>{te.current=null,C(t=>{let n=De(t.currentId===null?-1:T.findIndex(e=>e.id===t.currentId),e,T.length);return{...t,currentId:T[n]?.id??null}})},[T]);(0,v.useEffect)(()=>{if(!S.open||S.currentId!==null&&T.some(e=>e.id===S.currentId))return;let e=T.length>0?T[T.length-1]?.id??null:null;e!==S.currentId&&C(t=>({...t,currentId:e}))},[T,S.open,S.currentId]),(0,v.useEffect)(()=>{if(!u||typeof window>`u`)return;let e=e=>{!(e.ctrlKey||e.metaKey)||e.altKey||e.key!==`f`&&e.key!==`F`||(e.preventDefault(),O())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[u,O]);let j=(0,v.useMemo)(()=>IT(),[]),ne=D?[...D.path,D.id].join(`
|
|
130
|
+
`):``;(0,v.useLayoutEffect)(()=>{j.set(new Set(ne===``?[]:ne.split(`
|
|
131
|
+
`)))},[ne,j]),(0,v.useEffect)(()=>{if(!D||!u){te.current=null;return}if(te.current===D.id)return;let e=_.findIndex(e=>e.item.id===D.rootId);if(e<0)return;if(e<x.start){t.revealTranscript(u,_.length-e,_.length);return}let n=o.current;if(n)return QE(()=>{let e=n.querySelector(sT(D.id))??n.querySelector(sT(D.rootId));if(!(e instanceof HTMLElement))return;te.current=D.id,c(!1);let t=mT(e,S.query);t?hT(t,n):typeof e.scrollIntoView==`function`&&e.scrollIntoView({block:`center`})})},[D,_,x.start,u,t,S.query]);let re=e.jumpTo,M=(0,v.useRef)(re?.seq??0);(0,v.useEffect)(()=>{if(!re||!u||re.sessionId!==u||re.seq<=M.current)return;let e=_.findIndex(e=>ZE(e,re.itemId));if(e<0){M.current=re.seq;return}if(e<x.start){t.revealTranscript(u,_.length-e,_.length);return}let n=o.current;if(n)return M.current=re.seq,QE(()=>{let t=n.querySelector(sT(re.itemId))??n.querySelector(sT(_[e].item.id));t instanceof HTMLElement&&(c(!1),typeof t.scrollIntoView==`function`&&t.scrollIntoView({block:`center`,behavior:`smooth`}),t.classList.add(`chat-jump-flash`),setTimeout(()=>t.classList.remove(`chat-jump-flash`),1600))})},[re,_,x.start,u,t]);let N=(0,v.useCallback)(e=>{let n=(e.target instanceof Element?e.target:null)?.closest(`[data-testid="user-reply-quote"]`),i=r?.items;if(!n||!u||!i)return;let a=n.closest(`[data-item-id]`)?.getAttribute(`data-item-id`)??null,o=a?i.findIndex(e=>e.id===a):-1,s=nf((o>=0?i.slice(0,o):i).map(e=>({id:e.id,text:aE(e)})),n.getAttribute(`data-quote`)??``);s&&t.jumpToItem(u,s)},[r?.items,u,t]);(0,v.useEffect)(()=>{let e=o.current;if(!S.open||!e){pT();return}let t=()=>fT(e,T,D?.id??null,S.query);t();let n=QE(t);return()=>{n(),pT()}},[S.open,S.query,T,D,x.items]);let ie=D?.id??null,[ae,oe]=(0,v.useState)(null),se=_E(),ce=u!==null&&!se,le=(0,v.useCallback)(()=>oe(null),[]),ue=(0,v.useCallback)(e=>{if(e.shiftKey)return;let t=o.current;if(!t)return;let n=e.target instanceof Element?e.target:null;n?.closest(`input, textarea, select, [contenteditable="true"]`)||(e.preventDefault(),oe({at:{x:e.clientX,y:e.clientY},target:iE(n,t)}))},[]),de=(0,v.useMemo)(()=>{let e=ae?.target.itemId;if(!e||!r)return null;let t=r.index.get(e);return t===void 0?null:r.items[t]??null},[ae,r]),fe=(0,v.useMemo)(()=>{if(!ae)return[];let{target:e}=ae,n=e=>void Kw(e).then(e=>t.toast(e?`success`:`error`,e?`Copied`:`Could not copy to the clipboard`)),r={reply:()=>{if(!u)return;let n=e.selection.trim()===``?Zd(de?aE(de):``):e.selection;if(n.trim()===``)return;let r=de?.kind===`tool`?Qd(de.input):null,i=de?.kind===`assistant`||de?.kind===`thinking`?`assistant`:de?.kind===`user`?`user`:de?.kind===`tool`?{tool:de.name}:null;t.quoteIntoComposer(u,Jd(n,r,i),{preview:$d(n),itemId:de?.id??null})},copy:()=>n(e.selection),"copy-code":()=>n(e.code??``),"copy-link":()=>n(e.link??``),"open-link":()=>{let t=cE(e.link);if(!t)return;let n=typeof window<`u`?window.oonacode:void 0;n?.openExternal?n.openExternal(t):window.open(t,`_blank`,`noopener,noreferrer`)},"copy-item":()=>n(de?aE(de):``),find:()=>C(t=>({...t,open:!0,query:e.selection.trim(),currentId:null,focusSeq:t.focusSeq+1})),"select-block":()=>{let t=e.itemId?o.current?.querySelector(sT(e.itemId)):null,n=t?.firstElementChild??t,r=window.getSelection();if(!n||!r)return;let i=document.createRange();i.selectNodeContents(n),r.removeAllRanges(),r.addRange(i)}},i={reply:(0,U.jsx)(K.Reply,{className:`h-3.5 w-3.5`}),copy:(0,U.jsx)(K.Copy,{className:`h-3.5 w-3.5`}),"copy-code":(0,U.jsx)(K.Copy,{className:`h-3.5 w-3.5`}),"copy-item":(0,U.jsx)(K.Copy,{className:`h-3.5 w-3.5`}),"copy-link":(0,U.jsx)(K.Globe,{className:`h-3.5 w-3.5`}),"open-link":(0,U.jsx)(K.Globe,{className:`h-3.5 w-3.5`}),find:(0,U.jsx)(K.Search,{className:`h-3.5 w-3.5`})};return lE(e,de,{canReply:ce}).map(e=>({key:e.key,label:e.label,hint:e.hint,disabled:e.disabled,separated:e.separated,icon:i[e.key]??(0,U.jsx)(`span`,{}),testId:`chat-menu-${e.key}`,onSelect:r[e.key]}))},[ae,de,t,u,ce]),pe=(0,v.useCallback)(()=>{if(!u||!x.hasMore)return;let e=o.current;e&&(l.current=e.scrollHeight-e.scrollTop),t.growTranscript(u,x.total)},[u,x.hasMore,x.total,t]),[me,he]=(0,v.useState)(null),ge=(0,v.useRef)(null),_e=(0,v.useCallback)(()=>{let e=o.current;if(!e){he(null);return}let t=e.querySelectorAll(`[${vE}]`),n=e.getBoundingClientRect().top,r=ge.current?.offsetHeight??0,i=yE(t.length,e=>t[e].getBoundingClientRect().top-n,r),a=i<0?null:t[i].getAttribute(vE);he(e=>e===a?e:a)},[]),ve=(0,v.useCallback)(()=>{let e=o.current;if(!e)return;let n={scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight},r=df(n);c(r),_e(),r&&u?t.trimTranscript(u):ff(n)&&x.hasMore&&pe()},[u,x.hasMore,pe,t,_e]),ye=(0,v.useCallback)(()=>{let e=o.current;if(!e||!me)return;let t=e.querySelector(sT(me));if(!(t instanceof HTMLElement))return;let n=t.getBoundingClientRect().top-e.getBoundingClientRect().top;c(!1),e.scrollTo({top:e.scrollTop+n-(ge.current?.offsetHeight??0)})},[me]),be=(0,v.useCallback)(()=>{let e=o.current;e&&e.scrollTo({top:e.scrollHeight}),c(!0),u&&t.trimTranscript(u)},[u,t]);(0,v.useLayoutEffect)(()=>{let e=o.current;if(e){if(l.current!==null){e.scrollTop=Math.max(0,e.scrollHeight-l.current),l.current=null;return}s&&(e.scrollTop=e.scrollHeight)}},[x.items,s]),(0,v.useLayoutEffect)(()=>{_e()},[x.items,_e]);let xe=r?.lastLocalPromptId??null;(0,v.useEffect)(()=>{xe!==null&&be()},[xe,be]),(0,v.useEffect)(()=>{c(!0),l.current=null,he(null),C(mD)},[u]);let Se=e.chatSearchRequest,Ce=(0,v.useRef)(Se?.seen?Se.seq:0);(0,v.useEffect)(()=>{let e=Se;!e||!u||e.sessionId!==u||e.seq<=Ce.current||(Ce.current=e.seq,te.current=null,C(t=>({open:!0,query:e.query,currentId:null,focusSeq:t.focusSeq+1})),n({type:`chat_search_request_seen`,seq:e.seq}))},[Se,u,n]);let we=i?.providerId===w,Te=r?.hasSubagentItems===!0||i?.hasSubagents===!0||Object.keys(r?.agentActivity??{}).length>0,Ee=(0,v.useMemo)(()=>{let e=new Map;if(!Te)return e;for(let t of jT(m??[]))e.set(t.agentId,t.name);return e},[m,Te]),Oe=(0,v.useRef)(Ee);Oe.current=Ee;let ke=(0,v.useCallback)(e=>Oe.current.get(e)??null,[]),P=lD(),Ae=(0,v.useCallback)((e,n=!1)=>{let r=[],i=null;for(let t of ME(e)){let e=`run`in t?t.run[0]:t.item,o=`run`in t?t.run[t.run.length-1].timestamp:t.item.timestamp;if(n&&o){let t=sD(o);t!==null&&t!==i&&(r.push((0,U.jsx)(dD,{iso:o,today:P},`day:${e.id}`)),i=t)}let s=a(t);s!==null&&r.push(s)}return r;function a(e){if(`run`in e){let t=e.run[0];return(0,U.jsxs)(`div`,{[oT]:t.id,className:`flex items-end gap-2`,children:[(0,U.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,U.jsx)(AE,{items:e.run,agentNameOf:ke})}),(0,U.jsx)(uD,{iso:e.run[e.run.length-1].timestamp})]},`run:${t.id}`)}let r=e.item,i=(()=>{switch(r.kind){case`user`:return(0,U.jsx)(LE,{item:r},r.id);case`assistant`:return(0,U.jsx)(UE,{item:r},r.id);case`thinking`:return f?(0,U.jsx)(QT,{item:r},r.id):null;case`tool`:return(0,U.jsx)(ZT,{node:e,renderChildren:Ae},r.id);case`result`:return(0,U.jsx)(KE,{item:r,hideCost:we},r.id);case`compact`:return(0,U.jsx)(qE,{item:r},r.id);case`permission`:return r.status===`pending`?null:(0,U.jsx)(jE,{item:r,agentName:r.request.agentId?ke(r.request.agentId):null,onDecide:e=>t.respondPermission(r.request.requestId,e)},r.id);case`system`:return(0,U.jsx)(JE,{item:r},r.id);case`error`:return(0,U.jsx)(YE,{item:r},r.id)}})();if(i===null)return null;let a=r.kind===`user`&&IE(r);return(0,U.jsxs)(`div`,{[oT]:r.id,...n&&a?{[vE]:r.id}:{},className:H(`flex items-end gap-2`,r.id===ie&&`chat-search-current`),children:[(0,U.jsx)(`div`,{className:`min-w-0 flex-1`,children:i}),a?null:(0,U.jsx)(uD,{iso:r.timestamp})]},r.id)}},[t,f,we,ie,ke,P]),je=(0,v.useMemo)(()=>{if(me===null||!m)return null;let e=m.find(e=>e.id===me);if(!e||e.kind!==`user`)return null;let t=Yd(e.text);return bE(t&&t.reply!==``?t.reply:e.text)},[m,me]);if(!u)return(0,U.jsx)(Np,{icon:(0,U.jsx)(K.Edit,{className:`w-8 h-8`}),title:`No session selected`,hint:`Open a chat tab or pick a session from the sidebar. Sessions run on this PC and are stored in the host's SQLite database.`,action:(0,U.jsxs)(q,{variant:`primary`,onClick:()=>t.newTab(),children:[(0,U.jsx)(K.Plus,{className:`w-4 h-4`}),` New chat`]})});let Me=r?.init,Ne=r?.status===`running`||r?.status===`waiting_permission`,F=$E(r),Pe=F===`answer`?`Waiting for your answer`:F===`approval`?`Waiting for your approval`:pD(r?.status,r?.statusText,e.prefs.autoAcceptPermissions);return(0,U.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[S.open?(0,U.jsx)(aT,{query:S.query,index:E,count:T.length,focusSeq:S.focusSeq,onQuery:k,onStep:A,onClose:ee}):null,(0,U.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[je===null?null:(0,U.jsx)(`div`,{ref:ge,className:`pointer-events-none absolute inset-x-0 top-0 z-10 px-3 pr-12 pt-2 sm:px-6 sm:pr-14`,children:(0,U.jsxs)(`button`,{type:`button`,onClick:ye,title:`Go to this message`,"data-testid":`pinned-user-message`,"data-pinned-id":me,className:`pointer-events-auto flex w-full items-center gap-2 rounded-lg border border-border bg-surface px-3 py-1.5 text-left text-xs text-fg-muted shadow-md hover:bg-surface-2 hover:text-fg`,children:[(0,U.jsx)(K.User,{className:`h-3 w-3 shrink-0`}),(0,U.jsx)(`span`,{className:`truncate`,children:je})]})}),(0,U.jsx)(`div`,{ref:o,onScroll:ve,onContextMenu:ue,onClick:N,className:`flex-1 overflow-y-auto px-3 py-3 sm:px-6`,"data-testid":`transcript`,children:(0,U.jsx)(LT.Provider,{value:j,children:(0,U.jsxs)(`div`,{className:`w-full`,children:[a&&a.projectDir?(0,U.jsxs)(`div`,{className:`mb-3 flex flex-wrap items-center gap-2 text-[11px] text-fg-faint`,children:[(0,U.jsx)(K.Folder,{className:`w-3 h-3`}),(0,U.jsx)(`span`,{className:`font-mono`,children:a.projectDir}),(0,U.jsx)(X,{tone:`accent`,children:`project attached`})]}):null,i||Me?(0,U.jsxs)(`div`,{className:`mb-3 flex flex-wrap items-center gap-2 text-[11px] text-fg-faint`,children:[(0,U.jsx)(K.Folder,{className:`w-3 h-3`}),(0,U.jsx)(`span`,{className:`font-mono`,children:Me?.cwd??i?.cwd}),Me?.model??i?.model?(0,U.jsx)(X,{children:Os(Me?.model??i?.model??``)}):null,i?.providerId?(0,U.jsx)(X,{tone:`accent`,children:i.providerId}):null,(0,U.jsx)(X,{children:Me?.permissionMode??i?.permissionMode??`default`}),Me?(0,U.jsxs)(`span`,{children:[Me.tools.length,` tools · engine `,Me.claudeCodeVersion]}):null,i?.mirrored?(0,U.jsx)(X,{tone:`think`,children:`mirrored`}):null]}):null,x.hasMore?(0,U.jsx)(`div`,{className:`mb-2 flex items-center justify-center`,"data-testid":`window-more`,children:(0,U.jsxs)(q,{size:`sm`,onClick:pe,children:[(0,U.jsx)(K.ArrowDown,{className:`w-3 h-3 rotate-180`}),` Load `,100,` `,`older lines (`,x.hiddenAbove,` hidden)`]})}):null,d&&(!r||r.items.length===0)?(0,U.jsxs)(`div`,{className:`flex items-center gap-2 py-8 text-sm text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{}),` Loading transcript…`]}):null,!d&&(r?.items.length??0)===0?a?(0,U.jsx)(fD,{hasProject:a.projectDir!==null}):r?(0,U.jsx)(`div`,{className:`py-10 text-center text-sm text-fg-muted`,children:`Send a message to start this session.`}):null:null,Ae(x.items,!0),Ne?(0,U.jsx)(XE,{label:Pe,lastFrameAt:eD(r)}):null,(0,U.jsx)(`div`,{className:`h-2`})]})})}),(0,U.jsx)(fE,{open:ae!==null,at:ae?.at??{x:0,y:0},items:fe,onClose:le,label:`Chat`,testId:`chat-context-menu`})]}),(0,U.jsx)(PE,{items:h,onCancel:e=>{e.requestId&&t.cancelQueued(e.requestId)}}),S.open?null:(0,U.jsx)(J,{label:`Find in this chat (Ctrl+F)`,onClick:O,className:`absolute right-5 top-2 border border-border bg-surface shadow-md`,"data-testid":`chat-search-open`,children:(0,U.jsx)(K.Search,{className:`w-3.5 h-3.5`})}),s?null:(0,U.jsxs)(`button`,{type:`button`,onClick:be,className:`absolute bottom-3 left-1/2 -translate-x-1/2 rounded-full border border-border bg-surface px-3 py-1 text-xs shadow-md hover:bg-surface-2`,"data-testid":`chat-jump-latest`,children:[(0,U.jsx)(K.ArrowDown,{className:`mr-1 inline w-3 h-3`}),` Jump to latest`]})]})}function yD(){let{state:e}=W(),t=mp();if(!t)return null;let n=e.pendingRouting[t.id],r={providerId:n?.providerId??t.providerId,model:n?.model??t.model};return Jc(e.providers,r)?r.model??null:null}function bD(e){let t=e.toLowerCase();return t===`#000000`||t===`#000`?void 0:e}function xD({providerId:e,displayName:t,size:n=14,className:r}){let i=Js(e);if(!i)return(0,U.jsx)(`span`,{"aria-hidden":`true`,"data-provider-mark":e,className:H(`inline-flex flex-shrink-0 items-center justify-center rounded-sm bg-fg/10 font-semibold text-fg-muted`,r),style:{width:n,height:n,fontSize:Math.round(n*.55),lineHeight:1},children:Ys(t)});let a=bD(i.hex);return(0,U.jsx)(`svg`,{"aria-hidden":`true`,"data-provider-mark":e,viewBox:`0 0 24 24`,width:n,height:n,className:H(`flex-shrink-0`,a?void 0:`text-fg`,r),style:{width:n,height:n},children:(0,U.jsx)(`path`,{d:i.d,fill:a??`currentColor`,fillRule:i.fillRule})})}function SD(e){if(e>=1e6){let t=e/1e6;return`${Number.isInteger(t)?t:t.toFixed(1)}M`}return e>=1e3?`${Math.round(e/1e3)}K`:String(e)}function CD({m:e}){let{intelligence:t,coding:n,outputTps:r,contextWindow:i,thinking:a,vision:o}=e.details;return t===void 0&&n===void 0&&r===void 0&&i===void 0&&!a&&!o?null:(0,U.jsxs)(`span`,{className:`ml-auto flex flex-shrink-0 items-center gap-2 pl-3 text-[10px] leading-none tabular-nums`,children:[a?(0,U.jsx)(`span`,{className:`text-think`,title:`Reasoning / extended thinking`,children:`✦`}):null,o?(0,U.jsx)(`span`,{className:`text-fg-faint`,title:`Accepts images`,children:`◉`}):null,i===void 0?null:(0,U.jsx)(`span`,{className:`text-fg-faint`,title:`${i.toLocaleString()} token context`,children:SD(i)}),t===void 0?null:(0,U.jsxs)(`span`,{className:`rounded-sm bg-fg/10 px-1 py-px font-semibold text-fg-muted`,title:`Artificial Analysis intelligence index — their measurement, not ours`,children:[`IQ `,Math.round(t)]}),n===void 0?null:(0,U.jsxs)(`span`,{className:`rounded-sm bg-accent/15 px-1 py-px font-semibold text-accent`,title:`Artificial Analysis coding index — their measurement, not ours`,children:[`</>`,` `,Math.round(n)]}),r===void 0?null:(0,U.jsxs)(`span`,{className:`text-fg-faint`,title:`Artificial Analysis median output speed, tokens per second`,children:[Math.round(r),` t/s`]})]})}function wD({label:e,value:t,hint:n}){return t===null?null:(0,U.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,U.jsx)(`span`,{className:`text-fg-faint`,children:e}),(0,U.jsx)(`span`,{className:`text-right font-mono tabular-nums text-fg-muted`,title:n,children:t})]})}function TD({m:e,group:t,side:n}){let r=e.details,i=e=>e===void 0?null:e===0?`free`:`$${e<1?e.toFixed(3):e.toFixed(2)}`,a=[{label:`thinking`,on:r.thinking===!0},{label:`tools`,on:r.tools===!0},{label:`vision`,on:r.vision===!0}],o=r.intelligence!==void 0||r.coding!==void 0||r.outputTps!==void 0||r.ttft!==void 0,s=Object.entries(r.aa?.benchmarks??{}).filter(([e])=>e!==`artificial_analysis_intelligence_index`&&e!==`artificial_analysis_coding_index`).map(([e,t])=>({id:e,value:t,meta:hs[e]})).sort((e,t)=>(e.meta?.label??e.id).localeCompare(t.meta?.label??t.id)),c=r.aa?.fetchedAt?new Date(r.aa.fetchedAt):null;return(0,U.jsxs)(`div`,{"data-testid":`model-details`,className:H(`absolute top-0 z-10 max-h-[22rem] w-[19rem] overflow-y-auto rounded-lg border border-border bg-surface p-3 shadow-lg`,n===`right`?`left-full ml-2`:`right-full mr-2`),children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(xD,{providerId:e.providerId,displayName:t,size:13}),(0,U.jsx)(`span`,{className:`truncate text-xs font-semibold text-fg`,children:e.label}),e.free?(0,U.jsx)(OD,{}):null]}),(0,U.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[10px] text-fg-faint`,title:e.modelId,children:e.modelId}),(0,U.jsxs)(`div`,{className:`text-[10px] text-fg-faint`,children:[t,r.aa?.creator?` · by ${r.aa.creator}`:``,r.aa?.releaseDate?` · released ${r.aa.releaseDate}`:``]}),(0,U.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1 border-t border-border pt-2`,children:a.map(e=>(0,U.jsx)(`span`,{"data-testid":`cap-${e.label}`,"data-on":e.on,className:H(`rounded px-1.5 py-0.5 text-[10px]`,e.on?`bg-ok/15 text-ok`:`bg-fg/5 text-fg-faint line-through`),children:e.label},e.label))}),(0,U.jsxs)(`div`,{className:`mt-2 space-y-1 border-t border-border pt-2 text-[11px]`,children:[(0,U.jsx)(wD,{label:`Context`,value:r.contextWindow===void 0?null:SD(r.contextWindow),hint:r.contextWindow===void 0?void 0:`${r.contextWindow.toLocaleString()} tokens`}),(0,U.jsx)(wD,{label:`Max output`,value:r.maxOutputTokens===void 0?null:SD(r.maxOutputTokens),hint:r.maxOutputTokens===void 0?void 0:`${r.maxOutputTokens.toLocaleString()} tokens`}),(0,U.jsx)(wD,{label:r.providers&&r.providers.length>1?`Providers`:`Provider`,value:r.providers&&r.providers.length>0?r.providers.join(`, `):null,hint:`Which backend the pool sends this model to — the subscription lane first, whichever provider holds it.`}),(0,U.jsx)(wD,{label:`Input / 1M`,value:i(r.inputPricePerM)}),(0,U.jsx)(wD,{label:`Output / 1M`,value:i(r.outputPricePerM)})]}),o||s.length>0?(0,U.jsxs)(`div`,{className:`mt-2 border-t border-border pt-2`,"data-testid":`model-details-aa`,children:[(0,U.jsxs)(`div`,{className:`mb-1 flex items-baseline justify-between gap-2`,children:[(0,U.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wide text-fg-faint`,children:`Independent ratings`}),(0,U.jsxs)(`span`,{className:`text-[10px] text-fg-faint`,children:[`Artificial Analysis`,c?` · ${c.toLocaleDateString()}`:``]})]}),(0,U.jsx)(ED,{label:`Intelligence`,value:r.intelligence}),(0,U.jsx)(ED,{label:`Coding`,value:r.coding}),(0,U.jsxs)(`div`,{className:`mt-1 space-y-1 text-[11px]`,children:[(0,U.jsx)(wD,{label:`Speed`,value:r.outputTps===void 0?null:`${Math.round(r.outputTps)} tok/s`,hint:`Median output tokens per second`}),(0,U.jsx)(wD,{label:`First answer`,value:r.ttft===void 0?null:`${r.ttft.toFixed(2)}s`,hint:`Median time to the first answer token — after reasoning, which is what you wait for`})]}),s.length>0?(0,U.jsx)(`div`,{className:`mt-1.5 space-y-1 border-t border-border pt-1.5 text-[11px]`,children:s.map(e=>(0,U.jsx)(wD,{label:e.meta?.label??e.id,value:DD(e.value,e.meta?.scale),hint:e.meta?void 0:`Reported by Artificial Analysis as "${e.id}"`},e.id))}):null]}):null,r.notes?(0,U.jsx)(`div`,{className:`mt-2 border-t border-border pt-2 text-[10px] leading-snug text-fg-muted`,children:r.notes}):null]})}function ED({label:e,value:t}){if(t===void 0)return null;let n=Math.max(0,Math.min(100,t));return(0,U.jsxs)(`div`,{className:`mb-1`,"data-testid":`score-${e.toLowerCase()}`,children:[(0,U.jsxs)(`div`,{className:`flex items-baseline justify-between text-[11px]`,children:[(0,U.jsx)(`span`,{className:`text-fg-faint`,children:e}),(0,U.jsx)(`span`,{className:`font-mono tabular-nums text-fg-muted`,children:t.toFixed(1)})]}),(0,U.jsx)(`div`,{className:`mt-0.5 h-1 w-full overflow-hidden rounded-full bg-fg/10`,children:(0,U.jsx)(`div`,{className:`h-full rounded-full bg-accent`,style:{width:`${n}%`}})})]})}function DD(e,t){return t===`index`?e.toFixed(1):t===`fraction`||e>0&&e<=1?`${(e*100).toFixed(1)}%`:e.toFixed(2)}function OD({className:e}){return(0,U.jsx)(`span`,{"data-testid":`model-free-badge`,title:`Free on every plan — served from the operator's own capacity, and never billed to you.`,className:H(`rounded-sm bg-ok/15 px-1 py-px text-[10px] leading-none font-semibold tracking-wide text-ok uppercase`,e),children:`Free`})}function kD({disabled:e,className:t}){let{state:n,actions:r}=W(),i=mp(),a=hp(),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(``),[u,d]=(0,v.useState)(0),f=(0,v.useRef)(null),p=(0,v.useRef)(null),m=(0,v.useRef)(null),h=n.settings?.modelVisibility??null,g=(0,v.useMemo)(()=>Kc(n.providers,h),[n.providers,h]),_=n.currentSessionId?n.pendingRouting[n.currentSessionId]:void 0,y=Yc(n.providers,{providerId:_?.providerId??a?.providerId??i?.providerId??n.activeProviderId,model:_?.model??a?.model??i?.model??n.info?.activeModel,variantId:_?.variantId??a?.variantId??i?.variantId??null}),b=y.providerId&&y.modelId?Vc(y.providerId,y.modelId,y.variantId):``,x=g.flatMap(e=>e.models).find(e=>e.value===b)??null,S=!x&&b?y.modelId:null,C=yD(),w=(0,v.useMemo)(()=>{let e=c.trim().toLowerCase();return e?g.map(t=>({...t,models:t.models.filter(n=>n.label.toLowerCase().includes(e)||n.modelId.toLowerCase().includes(e)||t.label.toLowerCase().includes(e))})).filter(e=>e.models.length>0):g},[g,c]),T=(0,v.useMemo)(()=>w.flatMap(e=>e.models.map(t=>({m:t,group:e.label}))),[w]);(0,v.useEffect)(()=>{if(!o)return;let e=T.findIndex(e=>e.m.value===b);d(e>=0?e:0)},[o,T,b]),(0,v.useEffect)(()=>{if(!o)return;let e=e=>{f.current&&!f.current.contains(e.target)&&s(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[o]);let E=(e=!0)=>{s(!1),l(``),e&&p.current?.focus()},D=e=>{r.setSessionModel(e.modelId,e.providerId,e.variantId),E()},O=e=>{if(e.key===`Escape`){e.preventDefault(),E();return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(e.preventDefault(),T.length===0)return;let t=e.key===`ArrowDown`?1:-1;d(e=>(e+t+T.length)%T.length);return}if(e.key===`Home`||e.key===`End`){e.preventDefault(),d(e.key===`Home`?0:Math.max(0,T.length-1));return}if(e.key===`Enter`){e.preventDefault();let t=T[u];t&&D(t.m)}},[ee,k]=(0,v.useState)(`right`),[te,A]=(0,v.useState)(!0);(0,v.useEffect)(()=>{if(!o)return;let e=()=>{let e=f.current?.getBoundingClientRect();if(!e)return;let t=e.left+480;k(t+312<=window.innerWidth?`right`:`left`);let n=window.innerHeight-e.bottom,r=e.top;A(n>=420?!1:r>n)};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[o]),(0,v.useEffect)(()=>{o&&(m.current?.querySelector(`[data-cursor="true"]`))?.scrollIntoView({block:`nearest`})},[o,u]);let j=x?.label??S??`No model`,ne=x?.providerId??y.providerId??``,re=g.find(e=>e.providerId===ne)?.label??ne;return(0,U.jsxs)(`span`,{ref:f,className:`relative inline-flex items-center gap-1.5`,children:[(0,U.jsxs)(`button`,{type:`button`,ref:p,"aria-label":`Model`,"aria-haspopup":`listbox`,"aria-expanded":o,"data-testid":`model-picker`,disabled:e,className:H(`flex max-w-[22rem] min-w-[9rem] items-center gap-1.5 rounded px-1 py-0.5 text-xs text-fg hover:bg-fg/5 disabled:opacity-50`,t),onClick:()=>o?E():s(!0),onKeyDown:e=>{!o&&(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),s(!0))},children:[ne?(0,U.jsx)(xD,{providerId:ne,displayName:re,size:13}):null,(0,U.jsx)(`span`,{className:H(`truncate`,C?`text-danger`:void 0),"data-testid":C?`model-picker-withdrawn`:void 0,title:C?`${C} is no longer offered — pick another model to continue this chat`:void 0,children:j}),x?.free?(0,U.jsx)(OD,{}):null,(0,U.jsx)(`span`,{"aria-hidden":`true`,className:`text-fg-faint`,children:`▾`})]}),o?(0,U.jsxs)(`div`,{"data-testid":`model-picker-panel`,className:H(`absolute left-0 z-50 w-[30rem] max-w-[calc(100vw-2rem)]`,te?`bottom-full mb-1`:`top-full mt-1`),onKeyDown:O,children:[(0,U.jsxs)(`div`,{"data-testid":`model-picker-chrome`,className:`max-h-[26rem] overflow-hidden rounded-lg border border-border bg-surface shadow-lg`,children:[(0,U.jsx)(`div`,{className:`border-b border-border p-1.5`,children:(0,U.jsx)(`input`,{autoFocus:!0,type:`text`,"data-testid":`model-search`,placeholder:`Search models…`,className:`w-full rounded border-0 bg-transparent px-1.5 py-1 text-xs text-fg outline-none placeholder:text-fg-faint`,value:c,onChange:e=>l(e.target.value)})}),(0,U.jsxs)(`div`,{ref:m,role:`listbox`,"aria-label":`Model`,className:`max-h-80 overflow-y-auto`,children:[g.length===0?(0,U.jsx)(`div`,{className:`px-3 py-6 text-center text-xs text-fg-muted`,children:`No provider configured — add one in Settings → Providers`}):w.length===0?(0,U.jsxs)(`div`,{className:`px-3 py-6 text-center text-xs text-fg-muted`,children:[`Nothing matches “`,c,`”`]}):null,w.map(e=>(0,U.jsxs)(`div`,{children:[(0,U.jsxs)(`div`,{className:`sticky top-0 flex items-center gap-1.5 bg-surface-2 px-2 py-1 text-[10px] font-semibold tracking-wide text-fg-muted uppercase`,children:[(0,U.jsx)(xD,{providerId:e.providerId,displayName:e.label,size:12}),e.label,e.route===`direct`?(0,U.jsx)(`span`,{className:`ml-auto normal-case`,title:`Runs straight from this PC to the provider — never through our servers.`,children:`direct`}):null]}),e.models.map(e=>{let t=T.findIndex(t=>t.m===e);return(0,U.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":e.value===b,"data-testid":`model-option-${e.value}`,"data-value":e.value,"data-free":e.free?`true`:void 0,"data-cursor":t===u?`true`:void 0,className:H(`flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-xs`,t===u?`bg-accent/10`:`hover:bg-fg/5`,e.value===b?`text-accent`:`text-fg`),onMouseEnter:()=>d(t),onClick:()=>D(e),children:[(0,U.jsx)(`span`,{className:H(`truncate`,e.free?`font-semibold`:void 0),children:e.label}),e.free?(0,U.jsx)(OD,{}):null,(0,U.jsx)(CD,{m:e})]},e.value)})]},`${e.providerId}:${e.variantId??``}`))]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-3 border-t border-border px-2 py-1.5 text-[11px]`,children:[(0,U.jsx)(`button`,{type:`button`,"data-testid":`manage-models-entry`,className:`text-fg-muted hover:text-fg`,onClick:()=>{E(!1),r.openDialog(`manage-models`)},children:`Manage models…`}),(0,U.jsx)(`button`,{type:`button`,"data-testid":`manage-providers-entry`,className:`text-fg-muted hover:text-fg`,onClick:()=>{E(!1),r.openSettings(`providers`)},children:`Manage providers…`}),(0,U.jsx)(`a`,{href:`https://artificialanalysis.ai/`,target:`_blank`,rel:`noreferrer noopener`,className:`ml-auto text-fg-faint hover:text-fg-muted`,title:`IQ and coding scores are Artificial Analysis's measurements`,children:`ratings by Artificial Analysis`})]})]}),T[u]?(0,U.jsx)(TD,{m:T[u].m,group:T[u].group,side:ee}):null]}):null]})}var AD=352,jD=388;function MD({disabled:e}){let{state:t,actions:n}=W(),r=mp(),i=hp(),a=pp(),o=t.currentSessionId,s=t.agentTools?.packs??[],[c,l]=(0,v.useState)(!1),[u,d]=(0,v.useState)({up:!0,right:!1}),f=(0,v.useRef)(null),p=(0,v.useRef)(null),m=(0,v.useRef)(null);if((0,v.useEffect)(()=>{l(!1)},[o]),(0,v.useEffect)(()=>{if(!c)return;let e=e=>{f.current&&!f.current.contains(e.target)&&l(!1)},t=e=>{e.key===`Escape`&&(e.preventDefault(),l(!1),p.current?.focus())};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[c]),(0,v.useEffect)(()=>{c&&m.current?.querySelector(`[role="switch"]`)?.focus()},[c]),(0,v.useEffect)(()=>{if(!c)return;let e=()=>{let e=f.current?.getBoundingClientRect();if(!e)return;let t=window.innerHeight-e.bottom,n=e.top;d({up:t>=jD?!1:n>t,right:e.left+AD>window.innerWidth&&e.right>=AD})};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[c]),s.length===0||!o||t.remote.tabs[o])return null;let h=i?i.toolPacks:r?.toolPacks,g=wd(s,h),_=!i&&((a?.items.length??0)>0||(r?.entryCount??0)>0),y=(e=!0)=>{l(!1),e&&p.current?.focus()},b=e=>{let t=!Ac(e,h);n.setSessionToolPacks(o,Cd(h,e.slug,t))};return(0,U.jsxs)(`span`,{ref:f,className:`relative inline-flex items-center`,children:[(0,U.jsxs)(`button`,{type:`button`,ref:p,"aria-label":g.label,"aria-haspopup":`dialog`,"aria-expanded":c,title:g.title,"data-testid":`tools-picker`,"data-count":g.count,disabled:e,onClick:()=>c?y():l(!0),className:H(`flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded px-1.5 py-0.5 text-xs hover:bg-fg/5 disabled:opacity-50`,g.count>0?`text-fg`:`text-fg-muted`),children:[(0,U.jsx)(K.Tool,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{children:`Tools`}),(0,U.jsxs)(`span`,{className:g.count>0?`text-accent`:`text-fg-faint`,children:[`· `,g.count]})]}),c?(0,U.jsx)(`div`,{ref:m,role:`dialog`,"aria-label":`Tools for this chat`,"data-testid":`tools-panel`,onKeyDown:e=>{if(![`ArrowDown`,`ArrowUp`,`Home`,`End`].includes(e.key))return;let t=Array.from(m.current?.querySelectorAll(`[role="switch"]:not([disabled])`)??[]);if(t.length===0)return;e.preventDefault();let n=t.indexOf(document.activeElement);t[e.key===`Home`?0:e.key===`End`?t.length-1:(n+(e.key===`ArrowDown`?1:-1)+t.length)%t.length]?.focus()},className:H(`absolute z-50 w-[22rem] max-w-[calc(100vw-2rem)]`,u.up?`bottom-full mb-1`:`top-full mt-1`,u.right?`right-0`:`left-0`),children:(0,U.jsxs)(`div`,{className:`flex max-h-[24rem] flex-col overflow-hidden rounded-lg border border-border bg-surface shadow-lg`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-2.5 py-1.5 text-[11px] uppercase tracking-wide text-fg-muted`,children:[(0,U.jsx)(K.Tool,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`flex-1`,children:`OonaCode tools`}),(0,U.jsxs)(`span`,{className:`normal-case tracking-normal text-fg-faint`,children:[g.count,` of `,s.length,` on`]})]}),(0,U.jsx)(`ul`,{className:`min-h-0 flex-1 overflow-y-auto py-1`,children:s.map(t=>(0,U.jsx)(ND,{pack:t,on:Ac(t,h),disabled:e,onToggle:()=>b(t)},t.slug))}),_?(0,U.jsx)(`div`,{className:`border-t border-border px-2.5 py-1.5 text-[11px] leading-snug text-fg-faint`,"data-testid":`tools-restart-note`,children:Ed}):null]})}):null]})}function ND({pack:e,on:t,disabled:n,onToggle:r}){let i=Ic(e);return(0,U.jsxs)(`li`,{className:`flex items-start gap-3 px-2.5 py-2 hover:bg-surface-2`,"data-testid":`tool-pack-${e.slug}`,children:[(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(`span`,{className:`truncate text-xs font-medium text-fg`,children:e.name}),e.status===`demo`?(0,U.jsx)(`span`,{"data-testid":`tool-pack-demo-${e.slug}`,title:`Demo pack — its calls are checked and logged, nothing is executed yet.`,className:`shrink-0 rounded-sm bg-warn-soft px-1 py-px text-[10px] leading-none font-semibold tracking-wide text-warn uppercase`,children:`Demo`}):null]}),e.description?(0,U.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-[11px] leading-snug text-fg-muted`,title:e.description,children:e.description}):null,(0,U.jsxs)(`p`,{className:`mt-0.5 text-[10px] text-fg-faint`,title:`What this tool adds to every request the chat sends while it is on`,children:[`≈`,i.toLocaleString(),` tokens per request`]})]}),(0,U.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":t,"aria-label":e.name,disabled:n,"data-testid":`tool-pack-switch-${e.slug}`,onClick:r,className:H(`relative mt-0.5 h-5 w-9 shrink-0 rounded-full border transition-colors focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent disabled:opacity-50`,t?`border-accent bg-accent`:`border-border bg-surface-2`),children:(0,U.jsx)(`span`,{className:H(`absolute top-0.5 h-3.5 w-3.5 rounded-full bg-surface transition-all`,t?`left-[1.15rem]`:`left-0.5`)})})]})}var PD=1e3,FD=6e4;function ID(){let e=pp(),t=mp(),n=e?.items,[r,i]=(0,v.useState)(!1),[a,o]=(0,v.useState)(()=>Date.now()),s=(0,v.useRef)(null),c=e?.agentActivity,l=e?.status===`running`||e?.status===`waiting_permission`,u=e?.engineSince??null,d=e?.hasSubagentItems===!0||t?.hasSubagents===!0||Object.keys(c??{}).length>0,f=(0,v.useMemo)(()=>n&&d?jT(n,a,c??{},{alive:l,since:u}):[],[n,d,a,c,l,u]),p=f.filter(e=>e.running).length,[m,h]=(0,v.useState)(!1),g=(0,v.useMemo)(()=>m?f:f.filter(e=>e.running||e.endedAt!==null&&a-e.endedAt<FD),[f,a,m]),_=f.length-g.length;if((0,v.useEffect)(()=>{if(!r)return;let e=setInterval(()=>o(Date.now()),PD);return()=>clearInterval(e)},[r]),(0,v.useEffect)(()=>{if(!r)return;let e=e=>{s.current?.contains(e.target)||i(!1)},t=e=>{e.key===`Escape`&&i(!1)};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[r]),(0,v.useEffect)(()=>{i(!1),h(!1)},[e?.sessionId]),f.length===0)return null;let y=p>0?`${p} working`:`${f.length} ${f.length===1?`agent`:`agents`} finished`;return(0,U.jsxs)(`span`,{ref:s,className:`relative inline-flex items-center`,children:[(0,U.jsxs)(`button`,{type:`button`,"aria-label":y,title:y,"aria-haspopup":`dialog`,"aria-expanded":r,"data-testid":`subagents-badge`,onClick:()=>{o(Date.now()),i(e=>!e)},className:H(`flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded px-1.5 py-0.5 text-xs hover:bg-fg/5`,p>0?`text-accent`:`text-fg-muted`),children:[(0,U.jsx)(K.Bot,{className:`w-3.5 h-3.5`}),(0,U.jsxs)(`span`,{children:[f.length,` `,f.length===1?`agent`:`agents`]}),p>0?(0,U.jsxs)(`span`,{className:`text-fg-faint`,children:[`· `,p,` working`]}):null,p>0?(0,U.jsx)(`span`,{"aria-hidden":`true`,className:`h-1.5 w-1.5 animate-pulse rounded-full bg-accent`,"data-testid":`subagents-running`}):null]}),r?(0,U.jsx)(`div`,{role:`dialog`,"aria-label":`Subagents of this chat`,"data-testid":`subagents-panel`,className:`absolute bottom-full left-0 z-50 mb-1 w-[24rem] max-w-[calc(100vw-2rem)]`,children:(0,U.jsxs)(`div`,{className:`max-h-[22rem] overflow-hidden rounded-lg border border-border bg-surface shadow-lg`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-2.5 py-1.5 text-[11px] uppercase tracking-wide text-fg-muted`,children:[(0,U.jsx)(K.Bot,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`flex-1`,children:`Subagents`}),(0,U.jsx)(`span`,{className:`normal-case tracking-normal text-fg-faint`,children:y})]}),(0,U.jsxs)(`ul`,{className:`max-h-[19rem] overflow-y-auto py-1`,children:[yT(g).map(e=>(0,U.jsx)(LD,{agent:e,onJump:()=>i(!1)},e.id)),g.length===0?(0,U.jsx)(`li`,{className:`px-2.5 py-2 text-xs text-fg-faint`,children:`Nothing is working now.`}):null]}),_>0||m?(0,U.jsx)(`button`,{type:`button`,onClick:()=>h(e=>!e),"data-testid":`subagents-toggle-finished`,className:`w-full border-t border-border px-2.5 py-1.5 text-left text-[11px] text-fg-faint hover:bg-surface-2 hover:text-fg`,children:m?`Hide finished agents`:`${_} finished ${_===1?`agent`:`agents`} hidden — show`}):null]})}):null]})}function LD({agent:e,onJump:t}){let n=()=>{document.querySelector(`[data-testid="tool-${e.id}"]`)?.scrollIntoView({block:`center`,behavior:`smooth`}),t()},r=e.status===`error`||e.status===`denied`,i=r?`danger`:e.running?`accent`:`neutral`,a=e.running?`working`:e.status,o=!e.running;return(0,U.jsx)(`li`,{children:(0,U.jsxs)(`button`,{type:`button`,onClick:n,"data-testid":`subagent-${e.id}`,"data-state":e.running?`working`:r?`failed`:`done`,title:`Show this subagent's card in the chat`,className:H(`flex w-full flex-col gap-0.5 px-2.5 py-1.5 text-left hover:bg-surface-2`,o&&!r&&`opacity-60 hover:opacity-100`),style:e.depth?{paddingLeft:`${.625+e.depth*.75}rem`}:void 0,children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-2`,children:[e.running?(0,U.jsx)(K.Spinner,{className:`w-3 h-3 text-accent`}):(0,U.jsx)(K.Bot,{className:`w-3 h-3 text-fg-faint`}),(0,U.jsx)(`span`,{className:H(`min-w-0 flex-1 truncate text-sm font-medium`,o?`text-fg-muted`:`text-fg`),children:e.name}),(0,U.jsx)(X,{tone:i,children:a})]}),(0,U.jsxs)(`span`,{className:`flex items-center gap-3 pl-5 text-[11px] text-fg-faint`,children:[e.type&&e.type!==e.name?(0,U.jsx)(`span`,{className:`font-mono`,children:e.type}):null,e.model?(0,U.jsx)(`span`,{className:`font-mono`,"data-testid":`subagent-model-${e.agentId}`,children:e.model}):null,e.runs>1?(0,U.jsxs)(`span`,{children:[`resumed ×`,e.runs-1]}):null,e.durationMs===null?null:(0,U.jsx)(`span`,{children:Qu(e.durationMs)}),e.tokens===null?null:(0,U.jsxs)(`span`,{children:[$u(e.tokens),` tokens`]}),(0,U.jsxs)(`span`,{children:[e.toolCalls,` `,e.toolCalls===1?`tool call`:`tool calls`]}),e.nested>0?(0,U.jsxs)(`span`,{children:[e.nested,` `,e.nested===1?`subagent`:`subagents`]}):null]})]})})}function RD(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function zD(e){if(`at`in e)return`once, ${RD(e.at)}`;if(`everyMinutes`in e){let t=e.everyMinutes;return t%1440==0?t===1440?`every day`:`every ${t/1440} days`:t%60==0?t===60?`every hour`:`every ${t/60} hours`:`every ${t} minutes`}return`cron ${e.cron}`}function BD(e,t){return t?e?`next ${RD(e)}`:`done`:e?`paused`:`done`}function VD({sessionId:e,projectId:t,showChat:n=!1}){let{state:r,actions:i}=W(),[a,o]=(0,v.useState)(null),[s,c]=(0,v.useState)(null),l=r.scheduledTasksVersion;(0,v.useEffect)(()=>{let n=!0;return i.listScheduledTasks({...e?{sessionId:e}:{},...t?{projectId:t}:{}}).then(e=>{n&&o(e)}),()=>{n=!1}},[e,t,l]);let u=e=>r.sessions.find(t=>t.id===e)?.title??`a chat`;return a===null?null:a.length===0?(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,"data-testid":`scheduled-tasks-empty`,children:`No scheduled tasks. Ask the agent to do something later or on a repeat — it uses OonaCode's scheduler, which runs on this PC even when the chat has gone quiet.`}):(0,U.jsx)(`ul`,{className:`space-y-1.5`,"data-testid":`scheduled-tasks`,children:a.map(e=>(0,U.jsxs)(`li`,{className:`rounded-md border border-border px-2.5 py-1.5 text-xs`,"data-testid":`scheduled-task-${e.id}`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium text-fg`,title:e.prompt,children:e.title}),(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>void i.updateScheduledTask(e.id,{enabled:!e.enabled}),disabled:!e.enabled&&e.nextRunAt===null&&`at`in e.when,"data-testid":`scheduled-task-toggle`,children:e.enabled?`Pause`:`Resume`}),(0,U.jsx)(q,{size:`sm`,variant:s===e.id?`danger`:`ghost`,onClick:()=>{if(s!==e.id){c(e.id);return}c(null),i.deleteScheduledTask(e.id)},"data-testid":`scheduled-task-delete`,children:s===e.id?`Delete?`:`Delete`})]}),(0,U.jsxs)(`div`,{className:`mt-0.5 text-fg-muted`,children:[zD(e.when),` · `,BD(e.nextRunAt,e.enabled),n?` · in “${u(e.sessionId)}”`:``,e.createdBy===`model`?` · set by the agent`:``]}),e.lastResult?(0,U.jsxs)(`div`,{className:`text-fg-faint`,"data-testid":`scheduled-task-result`,children:[`last: `,e.lastResult]}):null]},e.id))})}function HD(e,t){let n=new Date(e),r=n.toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`});return n.toDateString()===t.toDateString()?r:`${n.toLocaleDateString(void 0,{month:`short`,day:`numeric`})} ${r}`}function UD(){let{state:e,actions:t}=W(),n=mp()?.id??null,r=e.scheduledTasksVersion,[i,a]=(0,v.useState)([]),[o,s]=(0,v.useState)(!1),c=(0,v.useRef)(null);if((0,v.useEffect)(()=>{if(!n){a([]);return}let e=!0;return t.listScheduledTasks({sessionId:n}).then(t=>{e&&a(t)}).catch(()=>{e&&a([])}),()=>{e=!1}},[n,r]),(0,v.useEffect)(()=>{if(!o)return;let e=e=>{c.current?.contains(e.target)||s(!1)},t=e=>{e.key===`Escape`&&s(!1)};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[o]),(0,v.useEffect)(()=>s(!1),[n]),!n||i.length===0)return null;let l=i.filter(e=>e.enabled&&e.nextRunAt!==null),u=l.map(e=>e.nextRunAt).sort().at(0),d=l.length>0?`${l.length} scheduled${u?` · next ${HD(u,new Date)}`:``}`:`${i.length} scheduled · paused`;return(0,U.jsxs)(`span`,{ref:c,className:`relative inline-flex items-center`,children:[(0,U.jsxs)(`button`,{type:`button`,"aria-label":`Scheduled tasks: ${d}`,title:`Scheduled tasks of this chat — ${d}`,"aria-haspopup":`dialog`,"aria-expanded":o,"data-testid":`scheduled-badge`,onClick:()=>s(e=>!e),className:H(`flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded px-1.5 py-0.5 text-xs hover:bg-fg/5`,l.length>0?`text-accent`:`text-fg-muted`),children:[(0,U.jsx)(K.Clock,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{children:d})]}),o?(0,U.jsx)(`div`,{role:`dialog`,"aria-label":`Scheduled tasks of this chat`,"data-testid":`scheduled-panel`,className:`absolute bottom-full left-0 z-50 mb-1 w-[26rem] max-w-[calc(100vw-2rem)]`,children:(0,U.jsxs)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-surface shadow-lg`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-2.5 py-1.5 text-[11px] uppercase tracking-wide text-fg-muted`,children:[(0,U.jsx)(K.Clock,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`flex-1`,children:`Scheduled tasks`}),(0,U.jsx)(`span`,{className:`normal-case tracking-normal text-fg-faint`,children:`runs on this PC`})]}),(0,U.jsx)(`div`,{className:`max-h-[22rem] overflow-y-auto p-2`,children:(0,U.jsx)(VD,{sessionId:n})})]})}):null]})}function WD(){let{state:e}=W(),t=mp(),n=hp(),r=e.currentSessionId?e.pendingRouting[e.currentSessionId]:void 0;return(0,v.useMemo)(()=>{let i=Yc(e.providers,{providerId:r?.providerId??n?.providerId??t?.providerId??e.activeProviderId,model:r?.model??n?.model??t?.model??e.info?.activeModel,variantId:r?.variantId??n?.variantId??t?.variantId??null}),a=(e.providers.find(e=>e.definition.id===i.providerId)?.definition)?.models.find(e=>e.id===i.modelId)??null;return{...i,option:a}},[e.providers,e.activeProviderId,e.info?.activeModel,r?.providerId,r?.model,r?.variantId,n?.providerId,n?.model,n?.variantId,t?.providerId,t?.model,t?.variantId])}var GD=6e4;function KD(e){return Math.ceil(Math.max(0,e)/3)*4}function qD(e,t){return t?Math.min(e.size,GD):KD(e.size)}function JD(e){return e>=1048576?`${(e/1048576).toFixed(1)} MB`:e>=1024?`${Math.round(e/1024)} KB`:`${Math.max(0,Math.round(e))} B`}function YD(e,t={}){let n=t.budget??6291456,r=t.isText??(()=>!1),i=Math.max(0,t.usedBytes??0),a=[],o=[],s=0;for(let t of e){let e=qD(t,r(t));if(e>n){o.push({name:t.name,reason:`too large — ${JD(t.size)} becomes ${JD(e)} once encoded (limit ${JD(n)})`});continue}if(i+e>n){o.push({name:t.name,reason:`would exceed the ${JD(n)} attachment budget — send the staged files first`});continue}i+=e,s+=e,a.push(t)}return{accepted:a,rejected:o,addedBytes:s}}var XD=3e3;function ZD(e,t,n){return e?.providerId!==`oonacode`||(n?.priceUsdMonthly??0)>0?null:t?.free===!0?`free`:`pool`}function QD(e){switch(e){case`free`:return`Waiting for a free-lane slot — free requests are paced, so the first reply can take a few seconds.`;case`pool`:return`Waiting for a slot on the OonaCode pool — the request is queued behind the provider’s rate limits.`;default:return null}}function $D(e,t,n=XD){let[r,i]=(0,v.useState)(!1);return(0,v.useEffect)(()=>{if(i(!1),!e)return;let t=setTimeout(()=>i(!0),n);return()=>clearTimeout(t)},[e,t,n]),r}function eO(e){let t=Math.floor(e/6e4);if(t<60)return`${Math.max(1,t)}m`;let n=Math.floor(t/60);if(n<24)return`${n}h ${t-n*60}m`;let r=Math.floor(n/24);return`${r}d ${n-r*24}h`}function tO(e){return e>=1e5||e>=1e4?`${Math.round(e/1e3)}k`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function nO(e){let{lastTurnEndedAt:t,now:n,ttlSec:r,contextTokens:i,running:a}=e;if(a||t===null||r===null||r<=0||i!==null&&i<1024)return null;let o=n-t;if(!Number.isFinite(o)||o<r*1e3)return null;let s=i===null?`the whole conversation`:`about ${tO(i)} tokens`;return`Idle ${eO(o)}. The prompt cache has likely expired, so your next message will re-cache ${s}.`}var rO=[{value:`default`,label:`Ask (default)`},{value:`acceptEdits`,label:`Accept edits`},{value:`plan`,label:`Plan`},{value:`auto`,label:`Auto`},{value:`dontAsk`,label:`Don't ask`},{value:`bypassPermissions`,label:`Bypass permissions`}],iO=`Ask anything — build, fix, explain…`,aO=[{id:`build`,label:`Build`,mode:null},{id:`plan`,label:`Plan`,mode:`plan`},{id:`ask`,label:`Ask first`,mode:`default`},{id:`auto`,label:`Autonomous`,mode:`acceptEdits`}],oO=`build`;function sO(e){return new Promise((t,n)=>{let r=new FileReader;r.onerror=()=>n(r.error??Error(`read failed`)),r.onload=()=>{let e=String(r.result??``);t(e.slice(e.indexOf(`,`)+1))},r.readAsDataURL(e)})}function cO(e){return new Promise((t,n)=>{let r=new FileReader;r.onerror=()=>n(r.error??Error(`read failed`)),r.onload=()=>t(String(r.result??``)),r.readAsText(e)})}function lO(e){return e.type.startsWith(`image/`)?`image`:e.type===`application/pdf`?`document`:`text`}function uO(e){return e.map(e=>e.kind===`image`?{type:`image`,source:{type:`base64`,media_type:e.mediaType,data:e.data}}:e.kind===`document`?{type:`document`,source:{type:`base64`,media_type:e.mediaType||`application/pdf`,data:e.data}}:{type:`text`,text:`Attached file ${e.name}:\n\n\`\`\`\n${e.data}\n\`\`\``})}function dO(){let{state:e,actions:t}=W(),n=mp(),r=hp(),i=pp(),a=e.currentSessionId,o=a?e.unsent[a]:void 0,[s,c]=(0,v.useState)(()=>o?.text??``),[l,u]=(0,v.useState)(()=>[...o?.attachments??[]]),[d,f]=(0,v.useState)(()=>[...o?.replies??[]]),[p,m]=(0,v.useState)(``),[h,g]=(0,v.useState)(oO),[_,y]=(0,v.useState)(!1),b=(0,v.useRef)(null),x=(0,v.useRef)(null),S=(0,v.useRef)(0),C=(0,v.useRef)(!0),w=(0,v.useRef)({text:s,attachments:l,replies:d});w.current={text:s,attachments:l,replies:d},(0,v.useEffect)(()=>(C.current=!0,()=>{C.current=!1}),[]),(0,v.useEffect)(()=>{if(a)return()=>t.rememberUnsent(a,w.current)},[a,t]),(0,v.useEffect)(()=>{o&&(c(e=>e.length===0?o.text:e),u(e=>e.length===0?[...o.attachments]:e),f(e=>e.length===0?[...o.replies??[]]:e))},[o]);let T=e.composerQuote,E=(0,v.useRef)(T?.seq??0);(0,v.useEffect)(()=>{!T||T.seq<=E.current||(E.current=T.seq,T.sessionId===a&&(f(e=>e.some(e=>e.quote===T.text)?e:[...e,{id:`reply-${T.seq}`,quote:T.text,preview:T.preview,itemId:T.itemId}]),b.current?.focus()))},[T,a]);let D=n?.effort??r?.effort??``;(0,v.useEffect)(()=>{m(D)},[a,D]);let O=i?.status===`running`||i?.status===`waiting_permission`,ee=e.connection.status===`open`,k=_E(),te=yD(),A=!a||k||te!==null,j=WD(),ne=be(j.option),re=(0,v.useMemo)(()=>{let e=ye(j.option);return e.length===0?[]:D&&!e.includes(D)?[...e,D]:e},[j.option,D]),M=re.length>0,N=(0,v.useMemo)(()=>e.providers.find(e=>e.definition.id===j.providerId)?.definition,[e.providers,j.providerId]);(0,v.useEffect)(()=>{let e=b.current;e&&(e.style.height=`auto`,e.style.height=`${Math.min(e.scrollHeight,240)}px`)},[s]),(0,v.useEffect)(()=>{b.current?.focus()},[a]);let ie=`default`,ae=r?.permissionMode??n?.permissionMode??ie,oe=ae===ie?oO:aO.find(e=>e.mode===ae)?.id??`build`;(0,v.useEffect)(()=>{g(ne?oe:oO)},[ne,oe,a]);let se=(0,v.useMemo)(()=>l.reduce((e,t)=>e+t.data.length,0),[l]),ce=(0,v.useRef)(se);ce.current=se;let le=(0,v.useCallback)(async e=>{let n=Array.from(e);if(n.length===0)return;let r=YD(n,{usedBytes:ce.current,isText:e=>lO(e)===`text`});for(let e of r.rejected)t.toast(`error`,`${e.name} was not attached: ${e.reason}`);let i=[];for(let e of r.accepted){let n=lO(e);if(n!==`text`&&N&&j.modelId){let r=As(N,j.modelId,[{type:n}]);if(r){t.toast(`error`,`${e.name||`File`} was not attached: ${r}`);continue}}try{let t=n===`text`?(await cO(e)).slice(0,GD):await sO(e);i.push({id:`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,name:e.name||(n===`image`?`image`:`file`),mediaType:e.type||(n===`text`?`text/plain`:`application/octet-stream`),data:t,kind:n,size:e.size})}catch{t.toast(`error`,`${e.name||`File`} could not be read — nothing was attached`)}}i.length>0&&u(e=>[...e,...i])},[t,N,j.modelId]),ue=(0,v.useMemo)(()=>aO.find(e=>e.id===h)?.mode??null,[h]),de=(0,v.useCallback)(()=>{let e=s.trim();if(!a||te!==null||!e&&l.length===0)return;let n=ef(d.map(e=>e.quote),e||`Please look at the attached file(s).`),r=l,i=d,o=uO(r),m={};p&&(m.effort=p),ue&&(m.permissionMode=ue);let h=a;c(``),u([]),f([]),b.current?.focus(),t.sendPrompt(n,o,Object.keys(m).length>0?m:void 0).then(e=>{if(C.current){let e=document.activeElement;(!e||e===document.body)&&b.current?.focus()}if(!e){if(C.current){c(e=>e.length===0?s:e),u(e=>e.length===0?r:e),f(e=>e.length===0?i:e);return}t.rememberUnsent(h,{text:s,attachments:r,replies:i},!0)}})},[s,l,d,a,te,t,p,ue]),fe=e=>{e.key===`Enter`&&!e.shiftKey&&!e.nativeEvent.isComposing?(e.preventDefault(),de()):e.key===`Escape`&&O&&(e.preventDefault(),t.interrupt())},pe=e=>{let t=Array.from(e.clipboardData?.files??[]);t.length>0&&(e.preventDefault(),le(t))},me=e=>{e.preventDefault(),S.current=0,y(!1),e.dataTransfer?.files?.length&&le(e.dataTransfer.files)},he=e=>{e.dataTransfer?.types?.includes(`Files`)&&(S.current+=1,y(!0))},ge=()=>{S.current=Math.max(0,S.current-1),S.current===0&&y(!1)},_e=e=>{e.target.files&&le(e.target.files),e.target.value=``},{pendingQuestions:ve,pendingPermissions:xe}=(0,v.useMemo)(()=>{let e=[],t=[],n=[];for(let r of i?.items??[])r.kind===`permission`&&r.status===`pending`&&(e.push(r),r.request.toolName===`AskUserQuestion`?t.push(r):n.push(r));return{pendingQuestions:t,pendingPermissions:n}},[i?.items]),Se=ZD(n,j.option,e.plan),Ce=$D(i?.status===`running`,i?.items.length??0)&&Se?QD(Se):null,[we,Te]=(0,v.useState)(()=>Date.now());(0,v.useEffect)(()=>{let e=setInterval(()=>Te(Date.now()),6e4);return()=>clearInterval(e)},[]);let Ee=(0,v.useMemo)(()=>{if(!i||!n)return null;let t=i.items,r=null;for(let e=t.length-1;e>=0;e--)if(t[e].kind===`result`){r=t[e];break}if(!r||r.kind!==`result`){if(t.length===0)return null;let r=e.providers.find(e=>e.definition.id===j.providerId)?.definition.capabilities.promptCacheTtlSec??null,a=Date.parse(n.updatedAt);return nO({lastTurnEndedAt:Number.isFinite(a)?a:null,now:we,ttlSec:r,contextTokens:i.contextTokens,running:O})}let a=r.timestamp?Date.parse(r.timestamp):Date.parse(n.updatedAt),o=e.providers.find(e=>e.definition.id===j.providerId)?.definition.capabilities.promptCacheTtlSec??null;return nO({lastTurnEndedAt:Number.isFinite(a)?a:null,now:we,ttlSec:o,contextTokens:i.contextTokens,running:O})},[i,n,e.providers,j.providerId,we,O]);return(0,U.jsxs)(`div`,{className:`relative border-t border-border bg-surface px-3 py-2 sm:px-6`,onDrop:me,onDragOver:e=>e.preventDefault(),onDragEnter:he,onDragLeave:ge,"data-testid":`composer`,children:[_?(0,U.jsxs)(`div`,{className:`pointer-events-none absolute inset-1 z-10 flex items-center justify-center rounded-xl border-2 border-dashed border-accent bg-accent-soft/70 text-sm font-medium text-accent`,"data-testid":`drop-overlay`,children:[(0,U.jsx)(K.Upload,{className:`mr-2 w-4 h-4`}),` Drop files to attach`]}):null,(0,U.jsxs)(`div`,{className:`w-full`,children:[xe.length>0?(0,U.jsx)(`div`,{className:`mb-2 max-h-[45vh] space-y-2 overflow-y-auto`,"data-testid":`composer-pending`,children:xe.map(e=>(0,U.jsx)(jE,{item:e,onDecide:n=>t.respondPermission(e.request.requestId,n,a??void 0)},e.id))}):null,ve.map((e,n)=>(0,U.jsx)(jE,{item:e,stackIndex:n,onDecide:n=>t.respondPermission(e.request.requestId,n,a??void 0)},e.id)),Ee&&!Ce?(0,U.jsxs)(`div`,{className:`mb-2 flex items-center gap-2 rounded-md bg-surface-2 px-2.5 py-1.5 text-[11px] text-fg-muted`,"data-testid":`idle-cache-hint`,children:[(0,U.jsx)(`span`,{className:`inline-block h-1.5 w-1.5 shrink-0 rounded-full bg-fg-faint`}),Ee]}):null,Ce?(0,U.jsxs)(`div`,{className:`mb-2 flex items-center gap-2 rounded-md bg-surface-2 px-2.5 py-1.5 text-[11px] text-fg-muted`,"data-testid":`pacing-hint`,"data-lane":Se??void 0,children:[(0,U.jsx)(`span`,{className:`inline-block h-1.5 w-1.5 shrink-0 animate-pulse rounded-full bg-warn`}),Ce]}):null,!ee&&a?(0,U.jsx)(`div`,{className:`mb-2 text-xs text-fg-faint`,children:e.connection.status===`unauthorized`?`The host rejected this token.`:`Not connected to the host — messages will be sent over HTTP when possible.`}):null,d.length>0?(0,U.jsx)(`div`,{className:`mb-2 flex flex-col gap-1`,"data-testid":`reply-chips`,children:d.map(e=>(0,U.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border-l-2 border-accent bg-accent-soft/60 py-1 pl-2 pr-1 text-xs`,"data-testid":`reply-chip`,children:[(0,U.jsx)(K.Reply,{className:`h-3.5 w-3.5 shrink-0 text-accent`}),(0,U.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 truncate text-left text-fg-muted hover:text-fg`,title:`Go to the message this replies to`,disabled:!e.itemId||!a,onClick:()=>{e.itemId&&a&&t.jumpToItem(a,e.itemId)},"data-testid":`reply-chip-jump`,children:[(0,U.jsx)(`span`,{className:`text-fg`,children:`Reply to `}),e.preview]}),(0,U.jsx)(`button`,{type:`button`,"aria-label":`Remove this reply`,onClick:()=>f(t=>t.filter(t=>t.id!==e.id)),className:`shrink-0 rounded p-0.5 text-fg-muted hover:text-danger`,"data-testid":`reply-chip-remove`,children:(0,U.jsx)(K.X,{className:`h-3 w-3`})})]},e.id))}):null,l.length>0?(0,U.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-2`,"data-testid":`attachments`,children:l.map(e=>(0,U.jsxs)(`div`,{className:`relative`,children:[e.kind===`image`?(0,U.jsx)(`img`,{src:`data:${e.mediaType};base64,${e.data}`,alt:e.name,className:`h-14 w-14 rounded border border-border object-cover`}):(0,U.jsxs)(`div`,{className:`flex h-14 min-w-[7rem] max-w-[12rem] flex-col justify-center rounded border border-border bg-surface-2 px-2 text-[11px]`,children:[(0,U.jsx)(`span`,{className:`truncate font-medium`,children:id(e.name,22)}),(0,U.jsxs)(`span`,{className:`text-fg-faint`,children:[e.kind===`document`?`PDF`:`text`,` · `,Math.ceil(e.size/1024),` KB`]})]}),(0,U.jsx)(`button`,{type:`button`,"aria-label":`Remove ${e.name}`,onClick:()=>u(t=>t.filter(t=>t.id!==e.id)),className:`absolute -right-1.5 -top-1.5 rounded-full border border-border bg-surface p-0.5 text-fg-muted hover:text-danger`,children:(0,U.jsx)(K.X,{className:`w-3 h-3`})})]},e.id))}):null,te?(0,U.jsxs)(`p`,{className:`px-1 text-xs text-danger`,role:`status`,"data-testid":`model-withdrawn`,children:[te,` is no longer available. Pick another model below to continue this chat — its history stays.`]}):null,(0,U.jsxs)(`div`,{className:H(`flex flex-col gap-1 rounded-xl border bg-bg px-2 py-1.5`,A?`border-border opacity-60`:`border-border`),children:[(0,U.jsx)(`textarea`,{ref:b,"aria-label":`Message`,rows:1,value:s,disabled:A,placeholder:k?`This session runs on a PC that is offline — read-only`:te?`${te} is no longer offered — pick another model to continue`:A?`Open a chat to start`:O?`Agent is working — a message sent now is handed to it and read at its next step (Esc to stop)`:iO,onChange:e=>c(e.target.value),onKeyDown:fe,onPaste:pe,className:`max-h-60 min-h-[2.25rem] w-full resize-none bg-transparent px-1 py-1.5 text-sm outline-none placeholder:text-fg-faint`}),(0,U.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(`input`,{ref:x,type:`file`,multiple:!0,className:`hidden`,onChange:_e,"data-testid":`file-input`}),(0,U.jsx)(J,{label:`Attach files or images`,disabled:A,onClick:()=>x.current?.click(),children:(0,U.jsx)(K.Upload,{className:`w-4 h-4`})}),(0,U.jsx)(kD,{disabled:!a||k}),(0,U.jsx)(MD,{disabled:A}),(0,U.jsx)(ID,{}),(0,U.jsx)(UD,{}),ne?(0,U.jsx)(`select`,{"aria-label":`Agent`,"data-testid":`agent-picker`,className:H(kp,`w-auto border-0 bg-transparent px-1 py-0.5 text-xs`),value:h,disabled:A,onChange:e=>{g(e.target.value);let n=aO.find(t=>t.id===e.target.value)?.mode??ie;t.setSessionPermissionMode(n)},children:aO.map(e=>(0,U.jsx)(`option`,{value:e.id,children:e.label},e.id))}):null,M?(0,U.jsxs)(`select`,{"aria-label":`Effort`,className:H(kp,`hidden w-auto border-0 bg-transparent px-1 py-0.5 text-xs lg:block`),value:p,disabled:A,onChange:e=>{let n=e.target.value;m(n),t.setSessionEffort(n||null)},children:[(0,U.jsx)(`option`,{value:``,children:`effort: default`}),re.map(e=>(0,U.jsxs)(`option`,{value:e,children:[`effort: `,e]},e))]}):null,(0,U.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[O?(0,U.jsxs)(q,{variant:`danger`,size:`sm`,onClick:()=>void t.interrupt(),title:`Interrupt (Esc)`,"aria-label":`Interrupt`,"data-testid":`stop-button`,children:[(0,U.jsx)(K.Stop,{className:`w-3.5 h-3.5`}),` Stop`]}):null,(0,U.jsxs)(q,{variant:`primary`,size:`sm`,onMouseDown:e=>e.preventDefault(),onClick:de,disabled:A||!s.trim()&&l.length===0,"aria-label":O?`Queue message`:`Send`,title:O?`Queue this message — it runs when the current turn ends`:void 0,children:[(0,U.jsx)(K.Send,{className:`w-3.5 h-3.5`}),` `,O?`Queue`:`Send`]})]})]})]}),i&&i.totals.turns>0?(0,U.jsxs)(`div`,{className:`mt-1 text-right text-[11px] text-fg-faint`,children:[i.totals.turns,` turn`,i.totals.turns===1?``:`s`,` ·`,` `,n?.providerId===`oonacode`?Xc(n.poolCredits??0):`$${i.totals.costUsd.toFixed(4)}`]}):null]})]})}function fO(e){return(e/1048576).toFixed(e>=104857600?0:1)+` MB`}function pO(e){switch(e.phase){case`download`:return e.totalBytes?`Downloading the coding engine (v${e.version}) — ${fO(e.receivedBytes)} of ${fO(e.totalBytes)}…`:`Downloading the coding engine (v${e.version}) — ${fO(e.receivedBytes)}…`;case`verify`:return`Verifying the coding engine…`;case`extract`:return`Unpacking the coding engine…`;case`failed`:return`The coding engine could not be downloaded: ${e.error??`unknown error`}. The next message tries again.`;default:return null}}function mO(){let{state:e}=W(),t=e.engineDownload;if(!t)return null;let n=pO(t);if(!n)return null;let r=t.phase===`failed`,i=t.phase===`download`&&t.totalBytes?Math.min(100,Math.round(t.receivedBytes/t.totalBytes*100)):null;return(0,U.jsxs)(`div`,{className:`mx-4 mb-2 rounded-md border px-3 py-2 text-xs `+(r?`border-danger/40 bg-danger/10 text-danger`:`border-accent/40 bg-accent/10 text-fg`),role:`status`,"data-testid":`engine-download`,children:[(0,U.jsx)(`div`,{children:n}),i===null?null:(0,U.jsx)(`div`,{className:`mt-1 h-1 w-full overflow-hidden rounded bg-fg/10`,children:(0,U.jsx)(`div`,{className:`h-full bg-accent`,style:{width:i+`%`}})})]})}function hO({open:e,onClose:t}){let{state:n,actions:r}=W();(0,v.useEffect)(()=>{e&&r.runDoctor()},[e,r]);let i=n.doctor,a=i?.filter(e=>!e.ok).length??0;return(0,U.jsxs)(Ap,{open:e,title:`Doctor`,onClose:t,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(q,{onClick:()=>void r.runDoctor(),children:[(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`}),` Run again`]}),(0,U.jsx)(q,{variant:`primary`,onClick:t,children:`Close`})]}),children:[n.info?(0,U.jsxs)(`div`,{className:`mb-3 grid grid-cols-1 gap-x-4 gap-y-0.5 text-xs text-fg-muted sm:grid-cols-2`,children:[(0,U.jsxs)(`div`,{children:[`Host: `,n.info.hostName,` (`,n.info.platform,`/`,n.info.arch,`)`]}),(0,U.jsxs)(`div`,{children:[`App: `,Pf(n.info.appVersion,n.info.cliChannel),n.info.cliChannel&&n.info.cliChannel!==`stable`?` — ${n.info.cliChannel} channel (updates stay within it)`:``]}),(0,U.jsxs)(`div`,{className:`truncate`,title:n.info.engine.binaryPath,children:[`Engine: `,n.info.engine.version??`unknown`,` — `,n.info.engine.binaryPath]}),(0,U.jsxs)(`div`,{className:`truncate`,title:n.info.engine.configDir,children:[`Isolated config dir: `,n.info.engine.configDir]}),(0,U.jsxs)(`div`,{children:[`Listening: `,n.info.addresses.join(`, `),`:`,n.info.port]})]}):null,i===null?(0,U.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-sm text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{}),` Running checks…`]}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-2 text-sm`,children:a===0?(0,U.jsxs)(`span`,{className:`text-ok`,children:[`All `,i.length,` checks passed.`]}):(0,U.jsxs)(`span`,{className:`text-danger`,children:[a,` of `,i.length,` checks need attention.`]})}),(0,U.jsx)(`ul`,{className:`divide-y divide-border rounded-md border border-border`,children:i.map(e=>(0,U.jsxs)(`li`,{className:`flex items-start gap-2 px-3 py-2 text-sm`,children:[e.ok?(0,U.jsx)(K.Check,{className:`mt-0.5 text-ok`}):(0,U.jsx)(K.Alert,{className:`mt-0.5 text-danger`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`font-medium`,children:e.label}),(0,U.jsx)(`div`,{className:`pre-wrap text-xs text-fg-muted`,children:e.detail}),!e.ok&&e.fix?(0,U.jsx)(`div`,{className:`mt-1 pre-wrap rounded bg-surface-2 px-2 py-1 font-mono text-xs`,children:e.fix}):null]})]},e.id))})]})]})}function gO({open:e,onClose:t}){let{state:n,actions:r}=W(),i=mp(),a=hp(),o=n.currentSessionId,[s,c]=(0,v.useState)(``),[l,u]=(0,v.useState)(!1),[d,f]=(0,v.useState)(!1),[p,m]=(0,v.useState)(null);(0,v.useEffect)(()=>{e&&(c(a?.projectDir??i?.projectDir??``),m(null),u(!1),f(!1))},[e,a?.projectDir,i?.projectDir]);let h=(0,v.useCallback)(async e=>{let t=e.trim();if(t){u(!0),m(null);try{m(await r.inspectProject(t))}finally{u(!1)}}},[r]),g=(0,v.useCallback)(async()=>{let e=typeof window<`u`?window.oonacode:void 0;if(!e?.pickDirectory)return;let t=await e.pickDirectory({title:`Choose a project folder`});t&&(c(t),await h(t))},[h]),_=(0,v.useCallback)(async()=>{if(!(!p||!o)){f(!0);try{await r.attachProject(p.dir,o)&&t()}finally{f(!1)}}},[p,o,r,t]),y=o===null?null:n.remote.tabs[o]??null,b=o!==null&&y===null&&p!==null&&p.exists&&p.isDirectory&&p.anchorable;return(0,U.jsx)(Ap,{open:e,title:`Use a project folder`,onClose:t,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:t,children:b?`Not now`:`Close`}),b?(0,U.jsx)(q,{variant:`primary`,busy:d,onClick:()=>void _(),"data-testid":`project-switch`,children:`Switch to this project`}):null]}),children:y?(0,U.jsxs)(vO,{tone:`warn`,testId:`project-remote`,children:[`This chat runs on `,(0,U.jsx)(`strong`,{children:y.hostName}),`, and a project folder is a folder on that PC. Open OonaCode there and choose it from that window — this one can only see this machine's disk, and the folder has to be where the agent actually works.`]}):(0,U.jsxs)(`form`,{className:`space-y-3`,onSubmit:e=>{e.preventDefault(),h(s)},children:[(0,U.jsxs)(`div`,{className:`rounded-md border border-border bg-surface-2 px-3 py-2 text-xs text-fg-muted space-y-1.5`,children:[(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`strong`,{className:`text-fg`,children:`What a project folder is.`}),` It tells this chat which folder on this PC it is working in. The agent then loads that folder's`,(0,U.jsx)(`span`,{className:`font-mono`,children:` CLAUDE.md`}),` and`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`.claude/`}),` settings, and — the part you noticed — it stops asking permission for edits and commands inside that folder, because you have said "this is the project, go ahead here".`]}),(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`strong`,{className:`text-fg`,children:`Where it is used.`}),` Every message in this chat runs with that folder as the working directory: relative paths resolve there, the file tools default there, and its project rules apply. Each chat has its own folder; other chats are unaffected. The chat still keeps running in the app-private workspace until you attach one.`]}),(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`strong`,{className:`text-fg`,children:`Good folders:`}),` the root of a code project you own — a repository or app directory, usually the one with a`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`CLAUDE.md`}),` or a`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`.claude/`}),` folder, a`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`.git`}),` repo, or a`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`package.json`}),`.`]}),(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`strong`,{className:`text-fg`,children:`Do not set:`}),` your whole home directory, a drive root (`,(0,U.jsx)(`span`,{className:`font-mono`,children:`C:`}),`),`,` `,(0,U.jsx)(`span`,{className:`font-mono`,children:`Desktop`}),`,`,(0,U.jsx)(`span`,{className:`font-mono`,children:` Downloads`}),`, a system or Program Files folder, or a cloud-synced root — attaching there gives the agent silent, unprompted edit access across far more than a project, which is exactly what the permission prompts exist to prevent. OonaCode already refuses the home directory and drive roots for this reason.`]}),(0,U.jsxs)(`p`,{children:[`A folder buys `,(0,U.jsx)(`strong`,{className:`text-fg`,children:`silence and context, never access`}),`: the agent can already read and write anywhere with your approval — outside a project it just asks first.`]})]}),(0,U.jsx)(Op,{label:`Folder on this PC`,hint:`An absolute path. Only this machine can see it, so OonaCode asks the host what is there.`,children:(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsx)(`input`,{className:Y,value:s,onChange:e=>{c(e.target.value),m(null)},placeholder:`D:\\projects\\my-app`,"aria-label":`Project folder`,autoFocus:!0,spellCheck:!1}),window.oonacode?.pickDirectory?(0,U.jsxs)(q,{onClick:()=>void g(),children:[(0,U.jsx)(K.Folder,{className:`w-4 h-4`}),` Browse`]}):null,(0,U.jsx)(q,{busy:l,disabled:s.trim().length===0,onClick:()=>void h(s),"data-testid":`project-check`,children:`Check`})]})}),p?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(_O,{result:p,restarts:i!==null}),o===null?(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`Open a chat first — a folder is attached to one chat, not to the app.`}):null]}):(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`A chat does not need a folder. It already has every file tool, everywhere — outside a project it simply asks before touching a file. Naming a project adds that project's configuration and context; it never adds access that was missing.`})]})})}function _O({result:e,restarts:t}){return!e.exists||!e.isDirectory?(0,U.jsxs)(vO,{tone:`danger`,testId:`project-verdict`,children:[(0,U.jsx)(`strong`,{className:`font-mono`,children:e.dir}),` is not a folder on this PC.`]}):e.anchorable?e.looksLikeProject?(0,U.jsxs)(vO,{tone:`accent`,testId:`project-verdict`,children:[(0,U.jsxs)(`div`,{className:`font-medium`,children:[`Switching this chat to `,e.dir,` loads:`]}),(0,U.jsxs)(`ul`,{className:`mt-1 list-disc space-y-0.5 pl-4`,children:[(0,U.jsxs)(`li`,{children:[`its `,(0,U.jsx)(`code`,{children:e.hasClaudeMd?`CLAUDE.md`:`CLAUDE.md (none at the root)`}),` and the ones above it`]}),(0,U.jsxs)(`li`,{children:[(0,U.jsx)(`code`,{children:`.claude/settings.json`}),` and `,(0,U.jsx)(`code`,{children:`settings.local.json`}),e.hasClaudeDir?``:` (none yet)`]}),(0,U.jsx)(`li`,{children:`that project's skills, sub-agents, slash commands and hooks`}),(0,U.jsx)(`li`,{children:`silence: file operations inside it stop raising a permission card`})]}),(0,U.jsx)(`div`,{className:`mt-1.5`,children:t?`The agent restarts once to pick them up and resumes this conversation exactly where it is — nothing is lost.`:`Your first message starts the chat there.`})]}):(0,U.jsxs)(vO,{tone:`accent`,testId:`project-verdict`,children:[(0,U.jsxs)(`div`,{className:`font-medium`,children:[`Switching this chat to `,e.dir,`:`]}),(0,U.jsxs)(`ul`,{className:`mt-1 list-disc space-y-0.5 pl-4`,children:[(0,U.jsxs)(`li`,{children:[`it has no `,(0,U.jsx)(`code`,{children:`CLAUDE.md`}),` and no `,(0,U.jsx)(`code`,{children:`.claude/`}),` folder yet, so nothing is loaded from it — add them later and the next restart picks them up`]}),(0,U.jsx)(`li`,{children:`silence: file operations inside it stop raising a permission card`})]}),(0,U.jsx)(`div`,{className:`mt-1.5`,children:t?`The agent restarts once and resumes this conversation exactly where it is — nothing is lost.`:`Your first message starts the chat there.`})]}):(0,U.jsxs)(vO,{tone:`danger`,testId:`project-verdict`,children:[`OonaCode will not use `,(0,U.jsx)(`strong`,{className:`font-mono`,children:e.dir}),` as a project:`,` `,e.reason??`it is not a usable project directory`,`.`]})}function vO({tone:e,testId:t,children:n}){return(0,U.jsx)(`div`,{className:`rounded-md border px-3 py-2 text-xs ${e===`danger`?`border-danger/40 bg-danger-soft text-danger`:e===`warn`?`border-warn/50 bg-warn-soft text-warn`:`border-accent/40 bg-accent-soft text-fg`}`,"data-testid":t,children:n})}var yO=(e,t)=>`${e}::${t}`;function bO(e){let t=e.indexOf(`::`);return t<=0||t===e.length-2?null:{providerId:e.slice(0,t),model:e.slice(t+2)}}function xO(e){let t=e?.chatDefaults??{};return{name:e?.name??``,goal:e?.goal??``,instructions:e?.instructions??``,repositories:(e?.repositories??[]).join(`
|
|
132
|
+
`),model:t.providerId&&t.model?yO(t.providerId,t.model):``,effort:t.effort??``,cwd:t.cwd??``,memoryEnabled:e?.memoryEnabled===!0,memory:e?.memory??``,tasksEnabled:e?.tasksEnabled!==!1,minInterval:String(e?.minRoutineIntervalMinutes??15)}}var SO=e=>e.split(/\r?\n/).map(e=>e.trim()).filter(e=>e.length>0);function CO(e){let t=bO(e.model);return!t&&!e.effort&&!e.cwd.trim()?null:{providerId:t?.providerId??null,model:t?.model??null,effort:e.effort||null,cwd:e.cwd.trim()||null}}function wO(e){if(!e.name.trim())return`A project needs a name.`;let t=Number(e.minInterval);return!Number.isInteger(t)||t<Bs.minIntervalFloor||t>Bs.minIntervalCeiling?`The minimum interval is a whole number of minutes, ${Bs.minIntervalFloor}–${Bs.minIntervalCeiling}.`:SO(e.repositories).length>Bs.repositories?`At most ${Bs.repositories} repositories.`:null}var TO=(e,t)=>(e?.providerId??null)===(t?.providerId??null)&&(e?.model??null)===(t?.model??null)&&(e?.effort??null)===(t?.effort??null)&&(e?.cwd??null)===(t?.cwd??null);function EO(e,t){let n=xO(t),r={};e.name.trim()!==t.name&&(r.name=e.name.trim()),e.goal!==n.goal&&(r.goal=e.goal),e.instructions!==t.instructions&&(r.instructions=e.instructions);let i=SO(e.repositories);i.join(`
|
|
133
|
+
`)!==(t.repositories??[]).join(`
|
|
134
|
+
`)&&(r.repositories=i);let a=CO(e);TO(t.chatDefaults,a)||(r.chatDefaults=a),e.memoryEnabled!==n.memoryEnabled&&(r.memoryEnabled=e.memoryEnabled),e.memory!==n.memory&&(r.memory=e.memory),e.tasksEnabled!==n.tasksEnabled&&(r.tasksEnabled=e.tasksEnabled);let o=Number(e.minInterval);return String(o)!==n.minInterval&&Number.isInteger(o)&&(r.minRoutineIntervalMinutes=o),r}function DO(e){let t=CO(e),n=SO(e.repositories),r=Number(e.minInterval);return{name:e.name.trim(),instructions:e.instructions,...e.goal.trim()?{goal:e.goal}:{},...n.length>0?{repositories:n}:{},...t?{chatDefaults:t}:{},...e.memoryEnabled?{memoryEnabled:!0}:{},...e.memory?{memory:e.memory}:{},...e.tasksEnabled?{}:{tasksEnabled:!1},...Number.isInteger(r)&&r!==15?{minRoutineIntervalMinutes:r}:{}}}function OO(e,t){if(t===null){let t=xO(null);return Object.keys(t).some(n=>e[n]!==t[n])}return Object.keys(EO(e,t)).length>0}function kO(e){let t=typeof window<`u`?window.oonacode:void 0;t?.openExternal?t.openExternal(e):window.open(e,`_blank`,`noopener,noreferrer`)}function AO({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.claudeLogin,a=n.ui.claudeLoginMode,[o,s]=(0,v.useState)(``),[c,l]=(0,v.useState)(!1),[u,d]=(0,v.useState)(!1),[f,p]=(0,v.useState)(!1),[m,h]=(0,v.useState)(null),g=(0,v.useRef)(null),[_,y]=(0,v.useState)(0),[b,x]=(0,v.useState)(null),S=i?.phase===`starting`||i?.phase===`awaiting_browser`||i?.phase===`awaiting_code`,C=i!=null&&(S||b!==null&&i.id===b),w=C?i:null,T=C&&S,E=w?.phase??`idle`,D=T?w?.url??w?.fallbackUrl??null:null,O=E===`connected`,ee=O||E===`failed`||E===`cancelled`,k=!a&&!S&&!m,te=ee&&!k;(0,v.useEffect)(()=>{if(!e)return;s(``),h(null),p(!1),x(null),g.current=null,r.refreshClaudeLogin();let t=setInterval(()=>void r.refreshClaudeLogin(),2e3);return()=>clearInterval(t)},[e,r]),(0,v.useEffect)(()=>{if(!e||!a)return;let t=!1;return(async()=>{let e=await r.startClaudeLogin();t||!e||(e.login?x(e.login.id):h(e))})(),()=>{t=!0}},[e,a,_,r]),(0,v.useEffect)(()=>{!e||!D||!a||g.current===D||!T||(g.current=D,a===`open`?kO(D):navigator.clipboard?navigator.clipboard.writeText(D).then(()=>{d(!0),r.toast(`info`,`Sign-in link copied — paste it into the browser where you are signed in to Claude`),setTimeout(()=>d(!1),2500)}).catch(()=>r.toast(`error`,`Could not copy — use the Copy button below`)):r.toast(`error`,`Could not copy — select the link and copy it by hand`))},[e,D,a,T,r]),(0,v.useEffect)(()=>{w?.phase===`connected`&&r.refreshClaudeSubscription()},[w?.phase,r]);let A=m?.command?`${m.command.file} ${m.command.args.join(` `)}`:null,j=async()=>{if(D)try{await navigator.clipboard.writeText(D),d(!0),setTimeout(()=>d(!1),1500)}catch{r.toast(`error`,`Could not copy — select the link and copy it by hand`)}},ne=async()=>{if(o.trim()){l(!0);try{await r.submitClaudeLoginCode(o)&&s(``)}finally{l(!1)}}},re=k?(0,U.jsxs)(`div`,{className:`flex w-full flex-wrap items-center justify-end gap-2`,children:[(0,U.jsx)(q,{onClick:t,"data-testid":`claude-login-close`,children:`Close`}),(0,U.jsxs)(q,{onClick:()=>r.openClaudeLogin(`copy`),"data-testid":`claude-login-copy-mode`,children:[(0,U.jsx)(K.Copy,{className:`w-4 h-4`}),` Copy link`]}),(0,U.jsxs)(q,{variant:`primary`,onClick:()=>r.openClaudeLogin(`open`),"data-testid":`claude-login-open-mode`,children:[(0,U.jsx)(K.LogIn,{className:`w-4 h-4`}),` Sign in with my subscription`]})]}):te||m?(0,U.jsxs)(`div`,{className:`flex w-full items-center justify-end gap-2`,children:[O?null:(0,U.jsx)(q,{onClick:()=>{g.current=null,h(null),x(null),a||r.openClaudeLogin(`open`),y(e=>e+1)},"data-testid":`claude-login-retry`,children:`Try again`}),(0,U.jsx)(q,{variant:`primary`,onClick:t,"data-testid":`claude-login-close`,children:`Close`})]}):(0,U.jsxs)(`div`,{className:`flex w-full items-center justify-end gap-2`,children:[(0,U.jsx)(q,{onClick:t,children:`Keep in background`}),(0,U.jsx)(q,{variant:`danger`,onClick:()=>void r.cancelClaudeLogin(),"data-testid":`claude-login-cancel`,children:`Cancel sign-in`})]});return(0,U.jsx)(Ap,{open:e,title:`Connect your Claude subscription`,onClose:t,footer:re,children:(0,U.jsxs)(`div`,{className:`space-y-4`,children:[(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`Your Claude Pro/Max login runs the genuine Claude Code engine directly against api.anthropic.com — never through the gateway. The token it stores lasts a year and syncs to every PC you sign in to.`}),k?(0,U.jsxs)(`div`,{className:`space-y-2 text-sm`,"data-testid":`claude-login-choose`,children:[(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`span`,{className:`font-medium`,children:`Sign in with my subscription`}),` opens the Claude sign-in page in this PC's browser.`]}),(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`span`,{className:`font-medium`,children:`Copy link`}),` copies the same page's link for the browser where you are already signed in to Claude — any browser on this PC works.`]}),(0,U.jsx)(`p`,{className:`text-fg-faint`,children:`Either way this window connects by itself when you finish signing in.`})]}):null,k?null:(0,U.jsx)(`div`,{className:`rounded-md border border-border bg-surface-2 p-3 text-xs`,"data-testid":`claude-login-wait`,children:D?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-1 text-fg-faint`,children:a===`copy`?`Sign-in link (copied):`:`Sign-in link (opened in your browser):`}),(0,U.jsx)(`div`,{className:`break-all font-mono select-all`,"data-testid":`claude-login-url`,children:D}),(0,U.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:[(0,U.jsxs)(q,{size:`sm`,onClick:()=>void j(),"data-testid":`claude-login-copy`,children:[(0,U.jsx)(K.Copy,{className:`w-3 h-3`}),` `,u?`Copied`:`Copy link`]}),(0,U.jsx)(q,{size:`sm`,onClick:()=>kO(D),children:`Open in browser`})]})]}):O?null:(0,U.jsxs)(`div`,{className:`flex items-center gap-2 text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{className:`w-4 h-4 animate-spin`}),` Preparing your sign-in link…`]})}),(0,U.jsx)(`div`,{className:H(`text-sm`,O?`text-ok`:E===`failed`?`text-danger`:`text-fg-muted`),"data-testid":`claude-login-status`,children:k?null:O?`Connected — your Claude subscription is stored in the vault and runs from this PC.`:T&&D?w?.message??`Waiting for you to finish in the browser…`:w?.message??m?.instructions??`Starting the Claude sign-in…`}),T&&D?(0,U.jsx)(`div`,{className:`text-xs`,children:f?(0,U.jsx)(Op,{label:`The page showed a code instead? Paste it here`,children:(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsx)(`input`,{className:Y,value:o,onChange:e=>s(e.target.value),placeholder:`paste the code here`,autoComplete:`off`,spellCheck:!1,"data-testid":`claude-login-code`,onKeyDown:e=>{e.key===`Enter`&&ne()}}),(0,U.jsx)(q,{variant:`primary`,busy:c,disabled:!o.trim(),onClick:()=>void ne(),"data-testid":`claude-login-submit`,children:`Continue`})]})}):(0,U.jsx)(`button`,{type:`button`,className:`text-fg-faint underline hover:text-fg`,onClick:()=>p(!0),"data-testid":`claude-login-show-code`,children:`The page showed a code instead? Paste it here`})}):null,A?(0,U.jsxs)(`div`,{className:`rounded-md border border-border bg-surface-2 p-3 text-xs`,children:[(0,U.jsx)(`div`,{className:`mb-1 text-fg-faint`,children:`This host cannot open a terminal for the engine. Run this in a terminal on this PC, then add the printed token as a subscription credential:`}),(0,U.jsx)(Jw,{code:A,language:`powershell`})]}):null]})})}function jO({compact:e=!1}){let{actions:t}=W(),[n,r]=(0,v.useState)(null),[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(!1),u=(0,v.useRef)(null),d=(0,v.useCallback)(async()=>{let e=await t.githubLink(`get`);e&&r(e)},[t]);(0,v.useEffect)(()=>{d()},[d]);let f=n?.login.phase===`awaiting_approval`;(0,v.useEffect)(()=>{if(!f)return;let e=setInterval(()=>void d(),2e3);return()=>clearInterval(e)},[f,d]);let p=f?n?.login.verificationUriComplete??n?.login.verificationUri??null:null;if((0,v.useEffect)(()=>{let e=n?.login.id;!f||!p||!e||u.current===e||(u.current=e,kO(p))},[f,p,n?.login.id]),!n)return null;let m=async e=>{a(!0);try{let n=await t.githubLink(e);n&&r(n)}finally{a(!1),s(!1)}},h=e=>{navigator.clipboard?.writeText(e).then(()=>{l(!0),setTimeout(()=>l(!1),2e3)}).catch(()=>t.toast(`error`,`Could not copy — select it and copy by hand`))},g=n.account,_=n.login.phase===`failed`||n.login.phase===`expired`;return(0,U.jsxs)(`div`,{className:`space-y-2 rounded-md border border-border bg-surface-2/40 p-3 text-sm`,"data-testid":`github-link`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(K.GitBranch,{className:`h-4 w-4 shrink-0`}),g?(0,U.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,"data-testid":`github-linked`,children:[`GitHub linked as `,(0,U.jsxs)(`b`,{children:[`@`,g.login]}),g.name?(0,U.jsxs)(`span`,{className:`text-fg-muted`,children:[` · `,g.name]}):null]}):(0,U.jsx)(`span`,{className:`min-w-0 flex-1`,children:`GitHub not linked`}),g?(0,U.jsx)(q,{size:`sm`,variant:o?`danger`:`ghost`,disabled:i,onClick:()=>o?void m(`unlink`):s(!0),"data-testid":`github-unlink`,children:o?`Unlink — sure?`:`Unlink`}):n.available&&!f?(0,U.jsx)(q,{size:`sm`,variant:`primary`,disabled:i,onClick:()=>void m(`start`),"data-testid":`github-link-start`,children:`Link GitHub`}):null]}),f?(0,U.jsxs)(`div`,{className:`space-y-2`,"data-testid":`github-link-pending`,children:[(0,U.jsxs)(`p`,{className:`text-fg-muted`,children:[`GitHub’s page opened in your browser. If it did not, open`,` `,(0,U.jsx)(`a`,{className:`underline`,href:p??`#`,onClick:e=>{e.preventDefault(),p&&kO(p)},children:p}),` `,`on any device and enter:`]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`code`,{className:`rounded border border-border px-2 py-1 font-mono text-base`,"data-testid":`github-user-code`,children:n.login.userCode}),(0,U.jsxs)(q,{size:`sm`,onClick:()=>n.login.userCode&&h(n.login.userCode),children:[(0,U.jsx)(K.Copy,{className:`h-3.5 w-3.5`}),` `,c?`Copied`:`Copy`]}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>void m(`cancel`),children:`Cancel`})]}),(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,children:`Waiting for GitHub…`})]}):null,_?(0,U.jsxs)(`p`,{className:`text-xs text-danger`,"data-testid":`github-link-ended`,children:[n.login.message??`The link did not complete.`,` Press Link GitHub to try again.`]}):null,!e||!g?(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,children:g?`The agent’s git and gh use this account on every PC of yours, for github.com only. The token stays in your encrypted vault and never reaches the OonaCode server.`:n.available?`Public repositories need nothing. For private ones, link GitHub: the agent’s git and gh then sign in as you on every PC of yours. Without it, the agent uses whatever git sign-in this PC already has.`:n.unavailableReason??`Link GitHub is not available.`}):null]})}var MO=`__new__`;function NO({title:e,children:t}){return(0,U.jsxs)(`section`,{className:`space-y-2 border-t border-border pt-3 first:border-t-0 first:pt-0`,children:[(0,U.jsx)(`h3`,{className:`text-xs font-semibold uppercase tracking-wide text-fg-faint`,children:e}),t]})}function PO({open:e,startNew:t=!1,selectId:n=null,onClose:r}){let{state:i,actions:a}=W(),o=i.vaultProjects,[s,c]=(0,v.useState)(MO),[l,u]=(0,v.useState)(xO(null)),[d,f]=(0,v.useState)(!1),[p,m]=(0,v.useState)(!1),h=(e,t)=>u(n=>({...n,[e]:t}));(0,v.useEffect)(()=>{if(!e)return;a.refreshVaultProjects();let r=n&&o.some(e=>e.id===n)?n:null;c(t?MO:r??o[0]?.id??MO),m(!1)},[e]);let g=s===MO?null:o.find(e=>e.id===s)??null;(0,v.useEffect)(()=>{u(xO(g)),m(!1)},[g?.id,g?.updatedAt]);let _=(0,v.useMemo)(()=>i.providers.filter(e=>e.configured).flatMap(e=>e.definition.models.map(t=>({key:yO(e.definition.id,t.id),label:`${e.definition.displayName} — ${t.displayName||t.id}`,option:t}))),[i.providers]),y=_.find(e=>e.key===l.model)??null,b=l.model&&!y?bO(l.model):null,x=y?ye(y.option):[],S=OO(l,g),C=S?wO(l):null;async function w(){if(!wO(l)){f(!0);try{if(g===null){let e=await a.createVaultProject(DO(l));e&&c(e.id)}else await a.updateVaultProject(g.id,EO(l,g))}finally{f(!1)}}}async function T(){if(g){if(!p){m(!0);return}f(!0);try{await a.deleteVaultProject(g.id)&&c(MO)}finally{f(!1)}}}async function E(){let e=await window.oonacode?.pickDirectory?.({title:`The folder new chats in this project run in`,...l.cwd?{defaultPath:l.cwd}:{}});e&&h(`cwd`,e)}let D=e=>i.sessions.filter(t=>t.projectId===e).length,ee=e=>e.sessionCount??D(e.id),k=g?ee(g):0;return(0,U.jsx)(Ap,{open:e,title:`Projects`,onClose:r,wide:!0,footer:(0,U.jsxs)(U.Fragment,{children:[g?k>0?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`span`,{className:`text-xs text-fg-muted`,"data-testid":`project-delete-reason`,children:O(k)}),(0,U.jsx)(q,{variant:`ghost`,disabled:!0,"data-testid":`project-delete`,children:`Delete project`})]}):(0,U.jsx)(q,{variant:p?`danger`:`ghost`,onClick:T,disabled:d,"data-testid":`project-delete`,children:p?`Delete ${g.name}?`:`Delete project`}):null,(0,U.jsx)(`span`,{className:`flex-1`}),C?(0,U.jsx)(`span`,{className:`text-xs text-danger`,"data-testid":`project-problem`,children:C}):null,(0,U.jsx)(q,{variant:`ghost`,onClick:r,children:`Close`}),(0,U.jsx)(q,{variant:`primary`,onClick:w,disabled:d||!S||C!==null,"data-testid":`project-save`,children:g===null?`Create project`:`Save`})]}),children:(0,U.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-[180px_1fr]`,children:[(0,U.jsxs)(`div`,{className:`flex flex-col gap-0.5`,"data-testid":`projects-list`,children:[(0,U.jsxs)(`button`,{type:`button`,className:H(`flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,s===MO?`bg-accent-soft text-fg`:`hover:bg-surface-2 text-fg-muted`),onClick:()=>c(MO),"data-testid":`project-new`,children:[(0,U.jsx)(K.Plus,{className:`w-3.5 h-3.5`}),` New project`]}),o.map(e=>(0,U.jsxs)(`button`,{type:`button`,className:H(`flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,s===e.id?`bg-accent-soft text-fg`:`hover:bg-surface-2 text-fg`),onClick:()=>c(e.id),"data-testid":`project-item-${e.id}`,children:[(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5 shrink-0`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name}),(0,U.jsx)(`span`,{className:`text-[11px] text-fg-faint`,children:ee(e)})]},e.id))]}),(0,U.jsxs)(`div`,{className:`max-h-[65vh] space-y-4 overflow-y-auto pr-1`,children:[(0,U.jsxs)(NO,{title:`Project`,children:[(0,U.jsx)(Op,{label:`Name`,children:(0,U.jsx)(`input`,{className:Y,value:l.name,onChange:e=>h(`name`,e.target.value),placeholder:`My app`,maxLength:Bs.name,"data-testid":`project-name`})}),(0,U.jsx)(Op,{label:`Goal (optional)`,hint:`What the project is for, in a line or two.`,children:(0,U.jsx)(`input`,{className:Y,value:l.goal,onChange:e=>h(`goal`,e.target.value),placeholder:`A desktop app that…`,maxLength:Bs.goal,"data-testid":`project-goal`})}),(0,U.jsx)(Op,{label:`Instructions for the agent (optional)`,children:(0,U.jsx)(`textarea`,{className:H(Y,`h-40 font-mono text-xs`),value:l.instructions,onChange:e=>h(`instructions`,e.target.value),placeholder:`Standing rules for every chat in this project — e.g.
|
|
135
|
+
- push to the feature branch, never to main
|
|
136
|
+
- run the tests before saying a change is done
|
|
137
|
+
- use the browser on port 9170 for anything on the web`,maxLength:Bs.instructions,"data-testid":`project-instructions`})})]}),(0,U.jsxs)(NO,{title:`Repositories`,children:[(0,U.jsx)(Op,{label:`One per line (optional)`,hint:`Every chat in the project is told about them.`,children:(0,U.jsx)(`textarea`,{className:H(Y,`h-16 font-mono text-xs`),value:l.repositories,onChange:e=>h(`repositories`,e.target.value),placeholder:`https://github.com/you/app`,"data-testid":`project-repositories`})}),(0,U.jsx)(jO,{compact:!0})]}),(0,U.jsxs)(NO,{title:`New chats`,children:[(0,U.jsx)(Op,{label:`Model`,hint:`What a new chat in this project starts on.`,children:(0,U.jsxs)(`select`,{className:Y,value:l.model,onChange:e=>{h(`model`,e.target.value),h(`effort`,``)},"data-testid":`project-model`,children:[(0,U.jsx)(`option`,{value:``,children:`Whatever a new chat would start on`}),b?(0,U.jsxs)(`option`,{value:l.model,children:[b.model,` (not on this PC)`]}):null,_.map(e=>(0,U.jsx)(`option`,{value:e.key,children:e.label},e.key))]})}),x.length>0?(0,U.jsx)(Op,{label:`Effort`,children:(0,U.jsxs)(`select`,{className:Y,value:l.effort,onChange:e=>h(`effort`,e.target.value),"data-testid":`project-effort`,children:[(0,U.jsx)(`option`,{value:``,children:`Default`}),x.map(e=>(0,U.jsx)(`option`,{value:e,children:e},e))]})}):null,(0,U.jsx)(Op,{label:`Folder`,hint:`Where a new chat runs; left empty, each chat gets its own.`,children:(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsx)(`input`,{className:H(Y,`flex-1 font-mono text-xs`),value:l.cwd,onChange:e=>h(`cwd`,e.target.value),placeholder:`C:\\\\src\\\\my-app`,"data-testid":`project-cwd`}),window.oonacode?.pickDirectory?(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>void E(),children:`Choose…`}):null]})})]}),(0,U.jsxs)(NO,{title:`Memory`,children:[(0,U.jsxs)(`label`,{className:`flex items-start gap-2 text-sm`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-1`,checked:l.memoryEnabled,onChange:e=>h(`memoryEnabled`,e.target.checked),"data-testid":`project-memory-enabled`}),(0,U.jsx)(`span`,{children:`Keep a project memory — notes every chat of the project reads at its start, and the agent keeps up to date.`})]}),l.memoryEnabled?(0,U.jsx)(`textarea`,{className:H(Y,`h-28 font-mono text-xs`),value:l.memory,onChange:e=>h(`memory`,e.target.value),placeholder:`Nothing noted yet.`,maxLength:Bs.memory,"data-testid":`project-memory`}):null]}),(0,U.jsxs)(NO,{title:`Scheduled tasks`,children:[(0,U.jsxs)(`label`,{className:`flex items-start gap-2 text-sm`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-1`,checked:l.tasksEnabled,onChange:e=>h(`tasksEnabled`,e.target.checked),"data-testid":`project-tasks-enabled`}),(0,U.jsx)(`span`,{children:`The agent may schedule work in this project's chats — once, or on a repeat — with OonaCode's scheduler on this PC.`})]}),l.tasksEnabled?(0,U.jsx)(Op,{label:`Shortest repeat, in minutes`,children:(0,U.jsx)(`input`,{className:H(Y,`w-28`),inputMode:`numeric`,value:l.minInterval,onChange:e=>h(`minInterval`,e.target.value),"data-testid":`project-min-interval`})}):null,g?(0,U.jsx)(VD,{projectId:g.id,showChat:!0}):null]}),(0,U.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`Saved settings reach the project's chats at their next message. Projects live in your vault: only your own devices can read them.`})]})]})})}var FO=`(min-width: 768px)`;function IO(){return typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(FO).matches}function LO(){let[e,t]=(0,v.useState)(IO);return(0,v.useEffect)(()=>{if(typeof window>`u`||typeof window.matchMedia!=`function`)return;let e=window.matchMedia(FO),n=()=>t(e.matches);return n(),e.addEventListener?.(`change`,n),()=>e.removeEventListener?.(`change`,n)},[]),e}function RO(e){try{return!!e?.matches(`:hover`)}catch{return!1}}function zO(e){if(typeof document>`u`)return!1;if(document.querySelector(`[role="menu"], [role="dialog"]`))return!0;let t=document.activeElement;return!!(e&&t&&e.contains(t)&&t.tagName===`INPUT`)}function BO({hidden:e,children:t}){let{state:n,actions:r}=W(),i=n.prefs.sidebarPinned,a=n.ui.sidebarOpen,[o,s]=(0,v.useState)(null),c=o??n.prefs.sidebarWidth,[l,u]=(0,v.useState)(!1),d=LO(),f=(0,v.useRef)(null),p=(0,v.useRef)(null),m=(0,v.useCallback)(()=>{p.current!==null&&(clearTimeout(p.current),p.current=null)},[]),h=(0,v.useCallback)(()=>{m(),p.current=setTimeout(function e(){if(zO(f.current)){p.current=setTimeout(e,350);return}p.current=null,!RO(f.current)&&u(!1)},350)},[m]);(0,v.useEffect)(()=>m,[m]),(0,v.useEffect)(()=>{u(!1),m()},[i,m]);let g=e=>{e.preventDefault();let t=e.clientX,i=c,a=i,o=e=>{a=oc(i+(e.clientX-t)),s(a)},l=()=>{window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,l),document.body.style.cursor=``,document.body.style.userSelect=``,s(null),a!==n.prefs.sidebarWidth&&r.savePrefs({sidebarWidth:a})};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,l)},_=i||l;return(0,U.jsxs)(U.Fragment,{children:[!i&&!l&&!e?(0,U.jsx)(`div`,{className:`absolute inset-y-0 left-0 z-40 hidden w-2 md:block`,onMouseEnter:()=>{u(!0),h()},"aria-hidden":!0,"data-testid":`sidebar-hover-edge`}):null,(0,U.jsxs)(`aside`,{ref:f,"data-chrome":`sidebar`,hidden:e,inert:!e&&(d?!_:!a),"data-testid":`sidebar-frame`,"data-state":i?`docked`:l?`peek`:`hidden`,style:{"--sidebar-w":`${c}px`},onMouseEnter:i?void 0:m,onMouseLeave:i?void 0:h,className:H(`absolute inset-y-0 left-0 z-30 w-72 max-w-[85vw] border-r border-border bg-surface transition-transform md:w-[var(--sidebar-w)] md:max-w-[70vw]`,a?`translate-x-0`:`-translate-x-full`,i?`md:relative md:z-auto md:translate-x-0`:H(`md:z-40 md:shadow-2xl`,_?`md:translate-x-0`:`md:-translate-x-full`)),children:[t,(0,U.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize the session list`,title:`Drag to resize · double-click for the default width`,className:`absolute inset-y-0 -right-1 z-10 hidden w-2 cursor-col-resize hover:bg-accent/30 md:block`,onPointerDown:g,onDoubleClick:()=>void r.savePrefs({sidebarWidth:288}),"data-testid":`sidebar-resize`})]})]})}function VO({open:e,onClose:t}){return(0,U.jsx)(Ap,{open:e,title:`Export my chats`,onClose:t,children:(0,U.jsx)(HO,{onDone:t})})}function HO({onDone:e}){let{api:t,state:n}=W(),[r,i]=(0,v.useState)(``),[a,o]=(0,v.useState)(!1),[s,c]=(0,v.useState)(null),[l,u]=(0,v.useState)(!1),[d,f]=(0,v.useState)(0),p=n.sessionsTotal||n.sessions.length;(0,v.useEffect)(()=>{if(!a){f(0);return}let e=Date.now(),t=setInterval(()=>f(Math.floor((Date.now()-e)/1e3)),1e3);return()=>clearInterval(t)},[a]);let m=async()=>{if(!t.exportSessionsArchive){c(`this PC is running an older OonaCode that cannot export chats`);return}o(!0),c(null);try{let n=await t.exportSessionsArchive(r),a=URL.createObjectURL(n),o=document.createElement(`a`);o.href=a,o.download=`oonacode-chats-${new Date().toISOString().slice(0,10)}.zip`,o.click(),URL.revokeObjectURL(a),i(``),u(!1),e()}catch(e){c(e instanceof Error?e.message:`the export failed`)}finally{o(!1)}};return(0,U.jsxs)(`div`,{children:[(0,U.jsx)(Ap,{open:a,title:`Exporting your chats`,onClose:()=>void 0,children:(0,U.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,U.jsx)(K.Spinner,{className:`mt-0.5 w-5 h-5 shrink-0 text-accent`}),(0,U.jsxs)(`div`,{className:`min-w-0 text-sm`,children:[(0,U.jsxs)(`div`,{className:`font-medium`,children:[`Packing`,` `,p>0?`${p} chat${p===1?``:`s`}`:`your chats`,`…`]}),(0,U.jsxs)(`div`,{className:`mt-1 tabular text-fg-muted`,children:[Math.floor(d/60),`:`,String(d%60).padStart(2,`0`),` elapsed`]}),(0,U.jsx)(`p`,{className:`mt-2 text-xs text-fg-faint`,children:`Your PC writes the whole archive before the download starts, so nothing appears in your downloads until it is finished. A long history can take a minute or two — this is normal, and you do not need to press anything again.`})]})]})}),(0,U.jsxs)(`p`,{className:`text-sm text-fg-muted`,children:[`One zip with a plain `,(0,U.jsx)(`code`,{children:`.txt`}),` of every conversation on this PC, plus an index. It is for reading and copying from — there is no way to load it back in.`]}),(0,U.jsx)(`p`,{className:`mt-1 text-xs text-warn`,children:`The zip is not encrypted: anyone who opens it can read every conversation in it.`}),l?(0,U.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(`input`,{type:`password`,autoFocus:!0,className:Y+` max-w-[16rem]`,placeholder:`Account password`,value:r,onChange:e=>i(e.target.value),onKeyDown:e=>{e.key===`Enter`&&r&&m()},"data-testid":`export-chats-password`}),(0,U.jsx)(q,{onClick:()=>void m(),disabled:a||!r,children:a?`Exporting…`:`Export`}),(0,U.jsx)(q,{variant:`ghost`,onClick:()=>{u(!1),i(``),c(null)},children:`Cancel`})]}):(0,U.jsx)(q,{className:`mt-2`,onClick:()=>u(!0),"data-testid":`export-chats`,children:`Export chats…`}),s?(0,U.jsx)(`div`,{className:`mt-2 text-xs text-danger`,children:s}):null]})}function UO({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.assignProjectSessionId,a=i?n.sessions.find(e=>e.id===i)??null:null,o=i?n.drafts[i]??null:null,s=a?.projectId??o?.projectId??null,[c,l]=(0,v.useState)(s),[u,d]=(0,v.useState)(!1);(0,v.useEffect)(()=>{e&&l(s)},[e,s]);let f=a?.status===`running`||a?.status===`waiting_permission`,p=od(a?sd(a):o?.title??`New chat`);async function m(){if(i){d(!0);try{await r.setSessionProject(i,c)&&t()}finally{d(!1)}}}return(0,U.jsxs)(Ap,{open:e,title:`Move “${p}” to a project`,onClose:t,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{variant:`ghost`,onClick:()=>{t(),r.openDialog(`projects`)},children:`Manage projects…`}),(0,U.jsx)(`span`,{className:`flex-1`}),(0,U.jsx)(q,{variant:`ghost`,onClick:t,children:`Cancel`}),(0,U.jsx)(q,{variant:`primary`,onClick:m,disabled:u||c===s,"data-testid":`assign-project-apply`,children:`Apply`})]}),children:[(0,U.jsxs)(`div`,{className:`flex flex-col gap-0.5`,role:`radiogroup`,"aria-label":`Project`,children:[(0,U.jsx)(WO,{selected:c===null,onSelect:()=>l(null),label:`No project`,testId:`assign-project-none`}),n.vaultProjects.map(e=>(0,U.jsx)(WO,{selected:c===e.id,onSelect:()=>l(e.id),label:e.name,hint:e.instructions.trim()?`has instructions`:void 0,testId:`assign-project-${e.id}`},e.id)),n.vaultProjects.length===0?(0,U.jsxs)(`p`,{className:`px-2 py-2 text-xs text-fg-muted`,children:[`No projects yet — create one under `,(0,U.jsx)(`em`,{children:`Manage projects…`}),`.`]}):null]}),f?(0,U.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,"data-testid":`assign-project-busy`,children:`This chat is mid-turn — it moves now and the turn is left alone. The project's instructions reach the agent at your next message.`}):(0,U.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:`The project's instructions reach the agent on the chat's next start — nothing in the conversation is lost.`})]})}function WO({selected:e,onSelect:t,label:n,hint:r,disabled:i=!1,testId:a}){return(0,U.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":e,onClick:t,disabled:i,className:H(`flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,e?`bg-accent-soft text-fg`:`hover:bg-surface-2 text-fg`,i&&`cursor-not-allowed opacity-50`),"data-testid":a,children:[(0,U.jsx)(`span`,{className:H(`inline-block h-3 w-3 rounded-full border`,e?`border-accent bg-accent`:`border-border`)}),(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5 shrink-0`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:n}),r?(0,U.jsx)(`span`,{className:`text-[11px] text-fg-faint`,children:r}):null]})}function GO(e,t){let n=e.definition.displayName;return!t||t.id===`payg`||t.id===`api-key`?[`Sign in to the ${n} console.`,`Create an API key (or copy an existing one).`,`Paste it below — OonaCode encrypts it into your vault before it leaves this PC.`]:[`Open the ${n} console and pick the ${t.label} plan.`,t.notes??`Complete the provider’s subscription/token flow in the browser.`,`Copy the token it issues${t.keyFormat?` (looks like ${t.keyFormat})`:``} and paste it below.`]}function KO(e,t){let n=e.find(e=>e.definition.id===t);if(!n)return[];let r=n.definition.clientGroup??n.definition.id,i=e.find(e=>e.definition.id===r);return i?[i,...e.filter(e=>e.definition.clientGroup===r)]:[n]}function qO(e){let t=[];for(let n of e){let e=n.definition,r=gs(e),i=e.credentialClass===`subscription`;if(r.length>1)for(let i of r)t.push({key:`${e.id}:${i.id}`,label:i.id===`token-plan`?`Subscription`:i.id===`payg`?`API`:i.label,provider:n,variantId:i.id,variant:i,isSubscription:!1,hasLoginFlow:!1,loginKind:null,keyFormat:i.keyFormat??e.keyFormat});else t.push({key:e.id,label:e.recordLabel??(i?`Subscription`:`API`),provider:n,variantId:r[0]?.id??null,variant:r[0]??null,isSubscription:i,hasLoginFlow:i&&e.route===`direct`,loginKind:i&&e.route===`direct`?e.subscriptionLogin?`oauth`:`claude`:null,keyFormat:r[0]?.keyFormat??e.keyFormat})}return t}function JO(e){let t=(e.provider.credentials??[]).filter(e=>e.class!==`none`);return(e.variantId?t.filter(t=>(t.variantId??`payg`)===e.variantId):t).slice(0,1)}function YO({open:e,providerId:t,onClose:n}){let{state:r,actions:i}=W(),a=(0,v.useMemo)(()=>t?KO(r.providers,t):[],[r.providers,t]),o=(0,v.useMemo)(()=>qO(a),[a]),[s,c]=(0,v.useState)(``),[l,u]=(0,v.useState)(``),[d,f]=(0,v.useState)(``),[p,m]=(0,v.useState)(``),[h,g]=(0,v.useState)(!1),[_,y]=(0,v.useState)(null),b=o.find(e=>e.key===s)??o[0]??null;if((0,v.useEffect)(()=>{if(!e)return;let n=o.find(e=>e.provider.definition.id===t);c((n??o[0])?.key??``),u(``),m(``),y(null)},[e,t,o]),(0,v.useEffect)(()=>{if(!e||!b)return;let t=b.provider.definition;f(t.userBaseUrl?b.variant?.baseUrl??t.baseUrl:``)},[e,b,b?.key]),!b)return null;let x=b.provider.definition,S=a[0]?.definition?.displayName??x.displayName,C=JO(b),w=a.some(e=>(e.credentials??[]).some(e=>e.class!==`none`)),T=x.credentialClass!==`none`,E=xs(x,{credentialClass:b.isSubscription?`subscription`:x.credentialClass,...x.userBaseUrl&&d.trim()?{baseUrl:d.trim()}:{}}),D=!h&&(!T||l.trim().length>0),O=async()=>{g(!0),y(null);try{if(!T){await i.setActiveProvider(x.id),n();return}let e=await i.probeCredential(x.id,{secret:l.trim(),variantId:b.variantId,...x.userBaseUrl&&d.trim()?{baseUrl:d.trim()}:{}});if(!e.ok){y(e.error??`${S} rejected this key — check it and try again.`);return}let t={};b.variantId&&(t.variant=b.variantId),x.userBaseUrl&&d.trim()&&(t.baseUrl=d.trim()),await i.addCredential({class:b.isSubscription?`subscription`:`api_key`,providerId:x.id,secret:l.trim(),...p.trim()?{label:p.trim()}:{},...Object.keys(t).length>0?{meta:t}:{}})&&(u(``),n())}finally{g(!1)}};return(0,U.jsx)(Ap,{open:e,title:`${w?`Manage`:`Connect`} ${S}`,onClose:n,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:n,children:`Cancel`}),b.loginKind===`oauth`?(0,U.jsxs)(q,{onClick:()=>i.openOauthLogin(b.provider.definition.id),"data-testid":`connect-oauth-signin`,children:[(0,U.jsx)(K.LogIn,{className:`w-4 h-4`}),` `,b.provider.definition.subscriptionLogin?.signInLabel??`Sign in instead`]}):b.loginKind===`claude`?(0,U.jsxs)(q,{onClick:()=>i.openClaudeLogin(null),"data-testid":`connect-claude-signin`,children:[(0,U.jsx)(K.LogIn,{className:`w-4 h-4`}),` Sign in instead`]}):null,(0,U.jsx)(q,{variant:`primary`,busy:h,disabled:!D,onClick:()=>void O(),children:h?`Checking…`:T?`Save key`:`Use this provider`})]}),children:(0,U.jsxs)(`div`,{className:`space-y-3`,children:[o.length>1?(0,U.jsx)(`div`,{className:`flex gap-1 border-b border-border`,role:`tablist`,children:o.map(e=>{let t=JO(e)[0];return(0,U.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":e.key===b.key,"data-testid":`record-tab-${e.key}`,onClick:()=>c(e.key),className:e.key===b.key?`rounded-t-md border border-b-0 border-border bg-surface-2 px-3 py-1.5 text-sm font-medium`:`px-3 py-1.5 text-sm text-fg-muted hover:text-fg`,children:[e.label,t?(0,U.jsx)(`span`,{className:`ml-1.5 font-mono text-[11px] text-ok`,children:t.masked}):null]},e.key)})}):null,C.length>0?(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(`div`,{className:`text-xs font-medium text-fg-muted`,children:`Connected`}),C.map(e=>(0,U.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-border px-2.5 py-1.5`,"data-testid":`stored-credential-${e.id}`,children:[(0,U.jsx)(X,{tone:e.class===`subscription`?`accent`:`ok`,children:b.label}),(0,U.jsx)(`span`,{className:`font-mono text-xs`,children:e.masked}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] text-fg-faint`,children:e.label}),(0,U.jsx)(q,{size:`sm`,onClick:()=>void i.testCredential(e.id),children:`Test`}),(0,U.jsx)(q,{size:`sm`,variant:`danger`,onClick:()=>void i.deleteCredential(e.id),children:`Remove`})]},e.id))]}):null,(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs`,children:[(0,U.jsx)(X,{tone:E.viaGateway?`accent`:`ok`,children:E.badge}),(0,U.jsx)(X,{children:x.kind}),b.keyFormat?(0,U.jsxs)(`span`,{className:`text-fg-faint`,children:[`key format `,b.keyFormat]}):null]}),(0,U.jsxs)(`div`,{className:E.viaGateway?`rounded-md border border-border bg-surface-2 px-3 py-2 text-xs text-fg-muted`:`rounded-md border border-ok/40 bg-ok-soft px-3 py-2 text-xs text-ok`,"data-testid":`connect-route`,children:[E.detail,T&&!E.viaGateway?` The key is stored in your zero-knowledge vault.`:null]}),T?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`ol`,{className:`ml-4 list-decimal space-y-1 text-xs text-fg-muted`,children:b.loginKind===`oauth`?[`Press “${b.provider.definition.subscriptionLogin?.signInLabel??`Sign in`}”: a short code opens in your browser, you approve it, and the subscription is stored by itself — nothing to paste.`,`The token refreshes on its own; sign in again only if the provider says it expired.`,`Or paste an access token below, if you have one from elsewhere.`].map((e,t)=>(0,U.jsx)(`li`,{children:e},t)):b.hasLoginFlow?[`Press “Sign in instead” to get a token through the genuine engine — the fastest way.`,"Or run `claude setup-token` yourself and complete the sign-in in your browser.",`Paste the token it prints below (it looks like sk-ant-oat01-…).`].map((e,t)=>(0,U.jsx)(`li`,{children:e},t)):GO(b.provider,b.variant).map((e,t)=>(0,U.jsx)(`li`,{children:e},t))}),(0,U.jsx)(Op,{label:b.isSubscription?`Subscription token`:`API key`,hint:`Tried against the provider before it is saved, then encrypted on this PC with your vault key.`,children:(0,U.jsx)(`input`,{className:Y,type:`password`,autoComplete:`off`,spellCheck:!1,value:l,placeholder:b.keyFormat??`sk-…`,onChange:e=>{u(e.target.value),y(null)}})}),_?(0,U.jsx)(`div`,{className:`rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-xs text-danger`,"data-testid":`connect-probe-error`,children:_}):null,x.userBaseUrl?(0,U.jsx)(Op,{label:`Base URL`,hint:`Point this at your own server if it is not the default. Each record has its own endpoint.`,children:(0,U.jsx)(`input`,{className:Y,value:d,spellCheck:!1,onChange:e=>f(e.target.value),placeholder:b.variant?.baseUrl??x.baseUrl})}):null,(0,U.jsx)(Op,{label:`Label (optional)`,children:(0,U.jsx)(`input`,{className:Y,value:p,onChange:e=>m(e.target.value),placeholder:`${S} ${b.label.toLowerCase()} key`})})]}):(0,U.jsxs)(`div`,{className:`rounded-md bg-surface-2 px-3 py-2 text-xs text-fg-muted`,children:[x.displayName,` needs no credential.`]})]})})}function XO({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.ui.oauthLoginProviderId,a=i?n.providers.find(e=>e.definition.id===i)??null:null,o=n.oauthLogin&&n.oauthLogin.providerId===i?n.oauthLogin:null,[s,c]=(0,v.useState)(0),[l,u]=(0,v.useState)(!1),d=(0,v.useRef)(null),f=a?.definition.displayName??i??`the provider`,p=a?.definition.subscriptionLogin?.signInLabel??`Sign in to ${f}`,m=o?.phase===`awaiting_approval`,h=m?o?.verificationUriComplete??o?.verificationUri??null:null;(0,v.useEffect)(()=>{if(!e||!i)return;d.current=null,r.startOauthLogin(i);let t=setInterval(()=>void r.refreshOauthLogin(i),2e3);return()=>clearInterval(t)},[e,i,s,r]),(0,v.useEffect)(()=>{!e||!h||!o?.id||d.current===o.id||(d.current=o.id,kO(h))},[e,h,o?.id]),(0,v.useEffect)(()=>{e&&o?.phase===`connected`&&r.refreshCredentials()},[e,o?.phase,r]);let g=e=>{if(!navigator.clipboard){r.toast(`error`,`Could not copy — select it and copy by hand`);return}navigator.clipboard.writeText(e).then(()=>{u(!0),setTimeout(()=>u(!1),2e3)}).catch(()=>r.toast(`error`,`Could not copy`))},_=o?.phase===`connected`||o?.phase===`failed`||o?.phase===`expired`||o?.phase===`cancelled`;return(0,U.jsx)(Ap,{open:e,title:p,onClose:t,footer:(0,U.jsxs)(U.Fragment,{children:[m?(0,U.jsx)(q,{onClick:()=>i&&void r.cancelOauthLogin(i),"data-testid":`oauth-login-cancel`,children:`Cancel sign-in`}):null,_&&o?.phase!==`connected`?(0,U.jsx)(q,{onClick:()=>c(e=>e+1),"data-testid":`oauth-login-retry`,children:`Try again`}):null,(0,U.jsx)(q,{variant:`primary`,onClick:t,children:o?.phase===`connected`?`Done`:`Close`})]}),children:(0,U.jsx)(`div`,{className:`space-y-3 text-sm`,"data-testid":`oauth-login-dialog`,children:m&&o?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`p`,{children:[`A sign-in page for `,f,` opened in your browser. If it did not, open the link below on any device and enter this code:`]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`code`,{className:`text-lg font-mono px-2 py-1 rounded border border-border`,"data-testid":`oauth-user-code`,children:o.userCode}),(0,U.jsxs)(q,{onClick:()=>o.userCode&&g(o.userCode),children:[(0,U.jsx)(K.Copy,{className:`w-4 h-4`}),` `,l?`Copied`:`Copy code`]})]}),h?(0,U.jsxs)(`div`,{className:`flex items-center gap-2 break-all`,children:[(0,U.jsx)(`a`,{className:`underline`,href:h,onClick:e=>{e.preventDefault(),kO(h)},children:h}),(0,U.jsxs)(q,{onClick:()=>g(h),children:[(0,U.jsx)(K.Copy,{className:`w-4 h-4`}),` Copy link`]})]}):null,(0,U.jsxs)(`p`,{className:`text-fg-muted`,children:[`Waiting for your approval… the code expires`,o.expiresAt?` at ${new Date(o.expiresAt).toLocaleTimeString()}`:` soon`,`. The subscription is stored in your vault the moment `,f,` confirms it.`]})]}):o?.phase===`connected`?(0,U.jsxs)(`p`,{"data-testid":`oauth-login-connected`,children:[`Signed in. Your `,f,` subscription is stored in your vault and synced to your other machines; chats on it run from this PC straight to the provider.`]}):_?(0,U.jsx)(`p`,{className:`text-danger`,"data-testid":`oauth-login-ended`,children:o?.message??`The sign-in did not complete.`}):(0,U.jsx)(`p`,{children:`Starting the sign-in…`})})})}function ZO({open:e,onClose:t}){let{state:n,actions:r}=W(),i=(0,v.useMemo)(()=>Uc(n.providers),[n.providers]),[a,o]=(0,v.useState)({}),[s,c]=(0,v.useState)(``),[l,u]=(0,v.useState)(!1);(0,v.useEffect)(()=>{e&&(o({...n.settings?.modelVisibility??{}}),c(``))},[e]);let d=(e,t)=>a[e]??t,f=(e,t,n)=>d(e,n).includes(t),p=(e,t,n)=>{o(r=>{let i=r[e]??n,a=i.includes(t)?i.filter(e=>e!==t):n.filter(e=>e===t||i.includes(e));return{...r,[e]:a}})},m=(e,t,n)=>{o(r=>({...r,[e]:t?[...n]:[]}))},h=async()=>{u(!0);try{let e={};for(let t of i){let n=t.definition.models.map(e=>e.id),r=a[t.definition.id];r&&r.length!==n.length&&(e[t.definition.id]=r)}await r.saveSettings({modelVisibility:e}),t()}finally{u(!1)}},g=s.trim().toLowerCase();return(0,U.jsx)(Ap,{open:e,title:`Manage models`,onClose:t,wide:!0,footer:(0,U.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-2`,children:[(0,U.jsxs)(q,{onClick:()=>{t(),r.openSettings(`providers`)},"data-testid":`manage-models-add-provider`,children:[(0,U.jsx)(K.Plus,{className:`w-3.5 h-3.5`}),` Add provider`]}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(q,{onClick:t,children:`Cancel`}),(0,U.jsx)(q,{variant:`primary`,busy:l,onClick:()=>void h(),"data-testid":`manage-models-save`,children:`Save`})]})]}),children:(0,U.jsxs)(`div`,{className:`space-y-4`,children:[(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`Choose which models the chat's picker offers. A provider with every model checked shows all of them — including ones it adds later.`}),(0,U.jsx)(`input`,{className:Y,value:s,onChange:e=>c(e.target.value),placeholder:`Filter models…`,"data-testid":`manage-models-filter`}),i.length===0?(0,U.jsxs)(`div`,{className:`text-sm text-fg-faint`,children:[`No provider is connected yet — use `,(0,U.jsx)(`strong`,{children:`Add provider`}),` below to connect one.`]}):null,i.map(e=>{let t=e.definition.models.map(e=>e.id),n=e.definition.models.filter(e=>!g||e.id.toLowerCase().includes(g)||(e.displayName??``).toLowerCase().includes(g)),r=d(e.definition.id,t).length;return(0,U.jsxs)(`div`,{className:`rounded-md border border-border p-3`,"data-testid":`manage-models-${e.definition.id}`,children:[(0,U.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`font-medium`,children:e.definition.displayName}),(0,U.jsxs)(`span`,{className:`text-xs text-fg-faint`,children:[r===t.length?`all`:r,` of `,t.length,` shown`]}),(0,U.jsxs)(`span`,{className:`ml-auto flex gap-1`,children:[(0,U.jsx)(q,{size:`sm`,onClick:()=>m(e.definition.id,!0,t),children:`All`}),(0,U.jsx)(q,{size:`sm`,onClick:()=>m(e.definition.id,!1,t),children:`None`})]})]}),(0,U.jsxs)(`div`,{className:`grid gap-1 sm:grid-cols-2`,children:[n.map(n=>(0,U.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,U.jsx)(`input`,{type:`checkbox`,checked:f(e.definition.id,n.id,t),onChange:()=>p(e.definition.id,n.id,t),"data-testid":`manage-model-${n.id}`}),(0,U.jsxs)(`span`,{className:`truncate`,title:n.id,children:[n.displayName??n.id,n.displayName&&n.displayName!==n.id?(0,U.jsxs)(`span`,{className:`text-fg-faint`,children:[` · `,n.id]}):null]})]},n.id)),n.length===0?(0,U.jsxs)(`div`,{className:`text-xs text-fg-faint`,children:[(0,U.jsx)(K.Info,{className:`mr-1 inline w-3 h-3`}),` No model matches the filter.`]}):null]})]},e.definition.id)})]})})}function QO(e){return e?e.replace(/[\\/]+$/,``).split(/[\\/]/).length<=2?e:`…${e.slice(-40)}`:`no folder recorded`}function $O(e){return e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1048576).toFixed(1)} MB`}function ek(e){let t=Date.parse(e);return Number.isFinite(t)?new Date(t).toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`}):``}function tk(e){return e.alreadyImported&&e.upToDate===!0}function nk(e){return!e.alreadyImported&&e.deletedHere===!0}function rk(e){return typeof e.unavailable==`string`&&e.unavailable.length>0}function ik(e){if(!e.some(e=>e.projectName))return e;let t=[],n=new Map;for(let r of e){let e=r.projectName??``;n.has(e)||(n.set(e,[]),t.push(e)),n.get(e).push(r)}return t.flatMap(e=>n.get(e))}function ak({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.importProgress,[a,o]=(0,v.useState)(!1),[s,c]=(0,v.useState)(!1),[l,u]=(0,v.useState)(null),[d,f]=(0,v.useState)(null),[p,m]=(0,v.useState)(new Set),[h,g]=(0,v.useState)(null),[_,y]=(0,v.useState)(null),b=(0,v.useMemo)(()=>d??[],[d]),x=(0,v.useMemo)(()=>b.filter(e=>!e.alreadyImported&&!nk(e)&&!rk(e)),[b]),S=(0,v.useMemo)(()=>b.filter(e=>e.alreadyImported),[b]),[C,w]=(0,v.useState)(!1),[T,E]=(0,v.useState)(!1),D=(0,v.useMemo)(()=>b.filter(tk),[b]),O=(0,v.useMemo)(()=>b.filter(nk),[b]),ee=(0,v.useMemo)(()=>b.filter(e=>(C||!tk(e))&&(T||!nk(e))),[b,C,T]),k=(0,v.useMemo)(()=>b.filter(e=>e.alreadyImported&&p.has(e.id)),[b,p]),te=(0,v.useMemo)(()=>{let e=[...new Set(b.map(e=>e.agentName??`Claude Code`))];return e.length===1?e[0]:`coding-agent`},[b]),A=(0,v.useMemo)(()=>{let e=new Map;for(let t of b){let n=t.agentName??`Claude Code`,r=t.agentId??`claude-code`,i=e.get(r)??{name:n,chats:[]};i.chats.push(t),e.set(r,i)}return[...e.entries()].map(([e,t])=>({key:e,...t,chats:ik(t.chats)}))},[b]);(0,v.useEffect)(()=>{h===null&&A.length>0&&g(new Set([A[0].key]))},[A,h]),(0,v.useEffect)(()=>{e&&(u(null),y(null),g(null),o(!0),r.scanClaudeSessions().then(e=>{f(e.sessions),m(new Set(e.sessions.filter(e=>!e.alreadyImported&&!nk(e)&&!rk(e)).map(e=>e.id)))}).catch(e=>u(e instanceof Error?e.message:String(e))).finally(()=>o(!1)))},[e]);let j=e=>m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),ne=()=>{n.prefs.claudeImportOffered||r.savePrefs({claudeImportOffered:!0}),t()},re=async()=>{c(!0),u(null);try{let e=await r.importClaudeSessions([...p],k.length>0);y({imported:e.imported.length,replaced:e.replaced?.length??0,entries:e.imported.reduce((e,t)=>e+t.entries,0)+(e.replaced??[]).reduce((e,t)=>e+t.entries,0),failed:e.failed.length,filed:e.filed?.length??0,projectsMade:(e.projects??[]).filter(e=>e.created).map(e=>e.name),warnings:e.warnings??[]}),n.prefs.claudeImportOffered||r.savePrefs({claudeImportOffered:!0}),await r.refreshSessions()}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,U.jsx)(Ap,{open:e,title:`Import your ${te} chats`,onClose:ne,wide:!0,footer:(0,U.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-2`,children:[(0,U.jsx)(`span`,{className:`text-[11px] text-fg-faint`,children:k.length>0?(0,U.jsxs)(`span`,{className:`text-warn`,children:[k.length,` already-imported `,k.length===1?`chat`:`chats`,` `,`will be REPLACED — the OonaCode copy is rebuilt from the original, and anything added here is lost.`]}):`Your other apps stay exactly as they are — this copies, it never moves or deletes.`}),(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(q,{onClick:ne,"data-testid":`import-claude-close`,children:_?`Done`:`Not now`}),_?null:(0,U.jsxs)(q,{variant:`primary`,busy:s,disabled:p.size===0,onClick:()=>void re(),"data-testid":`import-claude-run`,children:[`Import `,p.size>0?p.size:``]})]})]}),children:(0,U.jsxs)(`div`,{className:`space-y-3`,"data-testid":`import-claude-body`,children:[a?(0,U.jsx)(`div`,{className:`text-sm text-fg-muted`,children:`Looking for chats on this PC…`}):null,i&&!_?(0,U.jsxs)(`div`,{className:`space-y-2`,"data-testid":`import-claude-progress`,children:[(0,U.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3 text-sm`,children:[(0,U.jsxs)(`span`,{children:[`Importing `,(0,U.jsx)(`strong`,{children:i.done}),` of `,(0,U.jsx)(`strong`,{children:i.total}),`…`]}),(0,U.jsxs)(`span`,{className:`text-[11px] text-fg-faint`,children:[Math.round(i.done/Math.max(i.total,1)*100),`%`]})]}),(0,U.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded bg-surface-2`,children:(0,U.jsx)(`div`,{className:`h-full bg-accent transition-[width] duration-200`,style:{width:`${Math.round(i.done/Math.max(i.total,1)*100)}%`}})}),i.current?(0,U.jsxs)(`div`,{className:`truncate text-[11px] text-fg-faint`,title:i.current,children:[`reading: `,i.current]}):null,(0,U.jsxs)(`div`,{className:`flex gap-3 text-[11px] text-fg-faint`,children:[(0,U.jsxs)(`span`,{children:[i.imported,` imported`]}),i.skipped>0?(0,U.jsxs)(`span`,{children:[i.skipped,` already in`]}):null,i.failed>0?(0,U.jsxs)(`span`,{className:`text-warn`,children:[i.failed,` could not be read`]}):null]}),(0,U.jsx)(`p`,{className:`text-[11px] text-fg-faint`,children:`A big chat takes a moment — the largest here are over 100 MB. Your Claude Code is only being read.`})]}):null,l?(0,U.jsx)(`div`,{className:`rounded border border-danger/40 bg-danger/10 p-2 text-sm text-danger`,children:l}):null,_?(0,U.jsxs)(`div`,{className:`text-sm`,"data-testid":`import-claude-done`,children:[(0,U.jsxs)(`p`,{children:[`Imported `,(0,U.jsx)(`strong`,{children:_.imported}),` `,_.imported===1?`chat`:`chats`,_.replaced>0?(0,U.jsxs)(U.Fragment,{children:[` and rebuilt `,(0,U.jsx)(`strong`,{children:_.replaced}),` that `,_.replaced===1?`was`:`were`,` already here`]}):null,` `,`(`,_.entries.toLocaleString(),` entries). They are in your sessions list now, and you can carry on typing in them.`]}),_.projectsMade.length>0?(0,U.jsxs)(`p`,{className:`mt-1`,"data-testid":`import-claude-projects-made`,children:[_.projectsMade.length===1?`Created the project `:`Created the projects `,_.projectsMade.map((e,t)=>(0,U.jsxs)(`span`,{children:[t>0?`, `:``,(0,U.jsx)(`strong`,{children:e})]},e)),` `,`and filed `,_.projectsMade.length===1?`its`:`their`,` chats under`,` `,_.projectsMade.length===1?`it`:`them`,`.`]}):null,_.filed>0?(0,U.jsxs)(`p`,{className:`mt-1 text-fg-muted`,"data-testid":`import-claude-filed`,children:[_.filed,` `,_.filed===1?`chat that was`:`chats that were`,` already here`,` `,_.filed===1?`is`:`are`,` now filed under`,` `,_.filed===1?`its`:`their`,` project.`]}):null,_.failed>0?(0,U.jsxs)(`p`,{className:`mt-1 text-warn`,children:[_.failed,` could not be read and were left alone.`]}):null,_.warnings.map(e=>(0,U.jsx)(`p`,{className:`mt-1 text-warn`,children:e},e))]}):null,!a&&!_&&!i&&d!==null&&d.length>0?(0,U.jsxs)(`div`,{className:`space-y-0.5 text-sm`,"data-testid":`import-claude-tally`,children:[(0,U.jsxs)(`p`,{children:[(0,U.jsx)(`strong`,{children:d.length}),` `,d.length===1?`chat`:`chats`,` on this PC`,A.length>0?` — `:``,A.map((e,t)=>(0,U.jsxs)(`span`,{children:[t>0?`, `:``,(0,U.jsx)(`strong`,{children:e.chats.length}),` `,e.name]},e.key))]}),(0,U.jsxs)(`p`,{className:`text-fg-muted`,children:[S.length>0?`${S.length} already imported · `:``,(0,U.jsx)(`strong`,{className:`text-fg`,children:x.length}),` new`]}),D.length>0?(0,U.jsxs)(`p`,{className:`text-[11px] text-fg-faint`,children:[D.length,` imported and up to date `,C?`shown`:`hidden`,` —`,` `,(0,U.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>w(e=>!e),"data-testid":`import-claude-toggle-uptodate`,children:C?`hide`:`show`})]}):null,O.length>0?(0,U.jsxs)(`p`,{className:`text-[11px] text-fg-faint`,"data-testid":`import-claude-deleted-line`,children:[O.length,` you deleted here `,T?`shown`:`hidden`,` —`,` `,(0,U.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>E(e=>!e),"data-testid":`import-claude-toggle-deleted`,children:T?`hide`:`show`})]}):null]}):null,!a&&!_&&!i&&d!==null&&x.length===0?(0,U.jsx)(`div`,{className:`text-sm text-fg-muted`,"data-testid":`import-claude-empty`,children:d.length===0?`No Claude Code chats were found on this PC.`:`All ${d.length} of them are already imported — they are in your sessions list.`}):null,!_&&!i&&b.length>0?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`These are the chats the coding agents on this PC have, newest first. Importing copies them into OonaCode so you can read them here — and continue them, in the folder each one ran in.`}),(0,U.jsx)(`div`,{className:`max-h-96 space-y-3 overflow-y-auto`,children:A.map(e=>{let t=e.chats.filter(e=>ee.includes(e)),n=t.filter(e=>!rk(e)).map(e=>e.id),r=n.filter(e=>p.has(e)).length,i=h?.has(e.key)??!1,a=e.chats.filter(e=>!e.alreadyImported&&!nk(e)&&!rk(e)).length,o=e.chats.length-t.length;return t.length===0?null:(0,U.jsxs)(`div`,{className:`rounded border border-border`,"data-testid":`import-group-${e.key}`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border bg-surface-2 px-2 py-1.5`,children:[(0,U.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-center gap-1.5 text-left text-xs font-medium`,onClick:()=>g(t=>{let n=new Set(t??[]);return n.has(e.key)?n.delete(e.key):n.add(e.key),n}),"aria-expanded":i,"data-testid":`import-group-header-${e.key}`,children:[(0,U.jsx)(K.Chevron,{open:i,className:`w-3 h-3 shrink-0`}),e.name,(0,U.jsxs)(`span`,{className:`font-normal text-fg-faint`,children:[e.chats.length,` `,e.chats.length===1?`chat`:`chats`,a>0?` · ${a} new`:` · all imported`,o>0?` · ${o} up to date hidden`:``,r>0?` · ${r} selected`:``]})]}),(0,U.jsx)(`button`,{type:`button`,className:`shrink-0 text-[11px] underline text-fg-faint`,onClick:()=>m(e=>{let t=new Set(e),r=n.every(e=>t.has(e));for(let e of n)r?t.delete(e):t.add(e);return t}),"data-testid":`import-group-toggle-${e.key}`,children:n.every(e=>p.has(e))?`none`:`all`})]}),i?t.map(e=>(0,U.jsxs)(`label`,{className:`flex items-start gap-2 border-b border-border p-2 last:border-b-0 ${rk(e)?`cursor-default opacity-60`:`cursor-pointer hover:bg-surface-2`}`,"data-testid":`import-row-${e.id}`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-1`,checked:p.has(e.id),disabled:rk(e),onChange:()=>j(e.id),"aria-label":e.title??e.firstPrompt??e.id}),(0,U.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`span`,{className:`block truncate text-sm`,children:e.title??e.firstPrompt??(0,U.jsx)(`span`,{className:`text-fg-faint`,children:`(no prompt)`})}),(0,U.jsxs)(`span`,{className:`mt-0.5 block truncate text-[11px] text-fg-faint`,children:[e.projectName?(0,U.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,U.jsx)(K.Project,{className:`w-3 h-3`}),e.projectName]}):(0,U.jsxs)(U.Fragment,{children:[QO(e.cwd),e.cwd&&!e.cwdExists?` · folder is gone`:``]}),` `,`· `,e.entryCount,` entries`,e.bytes>0?` · ${$O(e.bytes)}`:``,` ·`,` `,ek(e.lastEntryAt??e.updatedAt),e.model?` · ${e.model}`:``]}),e.unavailable||e.note?(0,U.jsx)(`span`,{className:`mt-0.5 block text-[11px] ${e.unavailable?`text-warn`:`text-fg-faint`}`,"data-testid":`import-row-note-${e.id}`,children:e.unavailable??e.note}):null]}),e.supersedes&&e.supersedes.length>0?(0,U.jsx)(`span`,{className:`mt-0.5 shrink-0 rounded bg-surface-2 px-1 text-[11px] text-fg-faint`,title:`Rewound — replaces ${e.supersedes.length} earlier ${e.supersedes.length===1?`branch`:`branches`} of this chat`,children:`rewound`}):null,e.alreadyImported?(0,U.jsxs)(`span`,{className:`mt-0.5 flex shrink-0 items-center gap-1 text-[11px] text-fg-faint`,children:[(0,U.jsx)(K.Check,{className:`w-3 h-3 text-ok`}),`imported`,e.upToDate===!1?(0,U.jsxs)(`span`,{className:`ml-1 inline-flex shrink-0 items-center gap-0.5 rounded bg-warn-soft px-1 text-[10px] font-medium leading-4 text-warn`,title:`The original has newer messages than the OonaCode copy — importing again brings them in`,"data-testid":`import-behind-${e.id}`,"aria-label":`behind its original`,children:[(0,U.jsx)(K.ArrowDown,{className:`w-2.5 h-2.5`}),`behind`]}):null]}):null]},e.id)):null]},e.key)})}),(0,U.jsxs)(`div`,{className:`flex items-center gap-3 text-[11px] text-fg-faint`,children:[(0,U.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>m(new Set(ee.filter(e=>!rk(e)).map(e=>e.id))),"data-testid":`import-claude-select-all`,children:`Select all`}),(0,U.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>m(new Set),"data-testid":`import-claude-select-none`,children:`Select none`})]})]}):null]})})}var ok={model:null,previousModel:null,costUsd:0,inputTokens:0,outputTokens:0,turns:0,durationMs:0,contextTokens:null,contextWindow:null,contextUsed:null,costSource:`engine`,credits:null,resetAtIndex:null,didReset:!1,countedResults:0};function sk(e,t){let n=t?Os(t):null,r=null,i=null;for(let t=0;t<e.length;t++){let a=e[t];if(!a||a.kind!==`assistant`||!j(a.model))continue;let o=Os(a.model);n!==null&&o!==n&&(r=t,i=n),n=o}return{index:r,from:i,to:n}}function ck(e){let{items:t,session:n=null,initModel:r=null,boundary:i=null,models:a}=e,o=e.contextTokens!=null&&e.contextTokens>0?e.contextTokens:null;if(t.length===0&&!n)return ok;let s=sk(t,r),c=i&&i.index>=0?Math.min(i.index,t.length):null,l=null,u=null;s.index!==null&&(c===null||s.index>=c)?(l=s.index,u=s.from):c!==null&&(l=c,u=i?.from??s.from);let d=l??0,f=0,p=0,m=0,h=0,g=0,_=0;for(let e=d;e<t.length;e++){let n=t[e];!n||n.kind!==`result`||(_+=1,f+=n.costUsd,p+=n.inputTokens,m+=n.outputTokens,h+=n.numTurns,g+=n.durationMs)}_===0&&l===null&&n&&(f=n.totalCostUsd,p=n.inputTokens,m=n.outputTokens);let v=`engine`,y=null;n&&n.providerId===`oonacode`&&(f=n.totalCostUsd,y=n.poolCredits??null,v=`gateway`);let b=r?Os(r):null,x=i&&c!==null&&l===c?i.to:s.to??n?.model??b??null,S=[x,n?.model??null,b].filter(e=>typeof e==`string`&&e.length>0),C=(a?S.map(e=>a.find(t=>t.id===e)).find(e=>e?.contextWindow!=null):void 0)?.contextWindow??null;return{model:x,previousModel:u,costUsd:f,inputTokens:p,outputTokens:m,turns:h,durationMs:g,contextTokens:o,contextWindow:C,contextUsed:C&&C>0&&o!==null?Math.min(1,o/C):null,resetAtIndex:l,didReset:l!==null,countedResults:_,costSource:v,credits:y}}function lk({label:e,icon:t,children:n}){return(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,U.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1.5 text-xs text-fg-faint`,children:[t?(0,U.jsx)(`span`,{className:`shrink-0 text-fg-faint`,"aria-hidden":`true`,children:t}):null,e]}),(0,U.jsx)(`span`,{className:`min-w-0 truncate text-right text-xs font-medium text-fg`,children:n})]})}function uk({label:e,icon:t}){return(0,U.jsxs)(`div`,{className:`mb-1 flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide text-fg-faint`,children:[(0,U.jsx)(`span`,{"aria-hidden":`true`,children:t}),e]})}var dk={provider:(0,U.jsx)(K.Plug,{className:`w-3.5 h-3.5`}),route:(0,U.jsx)(K.Globe,{className:`w-3.5 h-3.5`}),model:(0,U.jsx)(K.Bot,{className:`w-3.5 h-3.5`}),permission:(0,U.jsx)(K.Shield,{className:`w-3.5 h-3.5`}),context:(0,U.jsx)(K.Brain,{className:`w-3.5 h-3.5`}),window:(0,U.jsx)(K.Panel,{className:`w-3.5 h-3.5`}),compactions:(0,U.jsx)(K.CollapseAll,{className:`w-3.5 h-3.5`}),usage:(0,U.jsx)(K.Coins,{className:`w-3.5 h-3.5`}),tokensIn:(0,U.jsx)(K.Download,{className:`w-3.5 h-3.5`}),tokensOut:(0,U.jsx)(K.Upload,{className:`w-3.5 h-3.5`}),duration:(0,U.jsx)(K.Clock,{className:`w-3.5 h-3.5`}),turns:(0,U.jsx)(K.Send,{className:`w-3.5 h-3.5`}),session:(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5`}),status:(0,U.jsx)(K.Monitor,{className:`w-3.5 h-3.5`}),updated:(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`}),entries:(0,U.jsx)(K.Menu,{className:`w-3.5 h-3.5`}),mirror:(0,U.jsx)(K.Copy,{className:`w-3.5 h-3.5`}),project:(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5`}),folder:(0,U.jsx)(K.Folder,{className:`w-3.5 h-3.5`})};function fk({used:e}){let t=Math.round(e*100);return(0,U.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-surface-3`,role:`progressbar`,"aria-valuenow":t,"aria-valuemin":0,"aria-valuemax":100,"aria-label":`Context used`,children:(0,U.jsx)(`div`,{className:H(`h-full rounded-full`,t>=90?`bg-danger`:t>=70?`bg-warn`:`bg-accent`),style:{width:`${t}%`}})})}function pk(){let{state:e,actions:t}=W(),n=mp(),r=n?e.remote.tabs[n.id]!==void 0:!1,i=pp(),a=e.currentSessionId,o=n?.projectId?e.vaultProjects.find(e=>e.id===n.projectId):void 0,s=o?.instructions.trim()??``,c=n?.providerId??e.activeProviderId,l=e.providers.find(e=>e.definition.id===c),u=l?.definition.models??(c?e.models[c]?.models:void 0),d=(0,v.useMemo)(()=>{let e=l?.definition;return e?xs(e,{credentialClass:(l.credentials.find(e=>e.variantId===n?.variantId)??l.credentials[0])?.class??null}):null},[l,n?.variantId]),f=(0,v.useMemo)(()=>ck({items:i?.items??[],session:n,initModel:i?.init?.model??null,boundary:a?e.modelBoundaries[a]??null:null,models:u,contextTokens:i?.contextTokens??null}),[i?.items,i?.init?.model,i?.contextTokens,n,a,e.modelBoundaries,u]),p=(0,v.useMemo)(()=>(i?.items??[]).filter(e=>e.kind===`user`&&e.compactSummary).length,[i?.items]);return(0,U.jsxs)(`aside`,{className:`flex w-72 shrink-0 flex-col border-l border-border bg-surface`,"aria-label":`Session info`,"data-testid":`session-panel`,children:[(0,U.jsxs)(`div`,{className:`flex h-9 shrink-0 items-center gap-2 border-b border-border px-3`,children:[(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`flex-1 text-xs font-semibold uppercase tracking-wide text-fg-muted`,children:`Session info`}),(0,U.jsx)(J,{label:`Hide session info`,className:`p-1`,onClick:()=>void t.savePrefs({sessionPanelOpen:!1}),children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]}),n?(0,U.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-3 py-2`,children:[f.didReset?(0,U.jsxs)(`div`,{className:`mb-2 rounded-md bg-accent-soft px-2 py-1.5 text-[11px] text-accent`,"data-testid":`stats-reset`,children:[`Statistics restarted at the model change`,f.previousModel?` (was ${f.previousModel})`:``,`.`]}):null,(0,U.jsxs)(`div`,{className:`mb-2`,children:[(0,U.jsx)(uk,{label:`Model`,icon:dk.model}),(0,U.jsx)(lk,{label:`Provider`,icon:dk.provider,children:l?.definition.displayName??c??`—`}),(0,U.jsx)(lk,{label:`Route`,icon:dk.route,children:d?(0,U.jsx)(X,{tone:d.viaGateway?`accent`:`ok`,children:d.badge}):`—`}),d?(0,U.jsx)(`div`,{className:`pb-1 text-[11px] leading-snug text-fg-faint`,children:d.detail}):null,(0,U.jsx)(lk,{label:`Model`,icon:dk.model,children:f.model??n.model??`—`}),(0,U.jsx)(lk,{label:`Permission mode`,icon:dk.permission,children:(0,U.jsx)(X,{children:n.permissionMode})})]}),(0,U.jsxs)(`div`,{className:`mb-2`,children:[(0,U.jsx)(uk,{label:`Context`,icon:dk.context}),f.contextUsed!==null&&f.contextTokens!==null?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(fk,{used:f.contextUsed}),(0,U.jsxs)(`div`,{className:`mt-1 text-[11px] text-fg-muted`,"data-testid":`context-used`,children:[$u(f.contextTokens),` / `,$u(f.contextWindow??0),` `,`tokens (`,Math.round(f.contextUsed*100),`%)`]})]}):(0,U.jsx)(`div`,{className:`text-[11px] text-fg-muted`,"data-testid":`context-used`,children:f.contextTokens===null?`Measured at the next reply`:`${$u(f.contextTokens)} tokens (window unknown)`}),(0,U.jsx)(lk,{label:`Context window`,icon:dk.window,children:(0,U.jsx)(`span`,{"data-testid":`context-window`,children:f.contextWindow?`${$u(f.contextWindow)} tokens`:`unknown`})}),(0,U.jsx)(lk,{label:`Compactions`,icon:dk.compactions,children:(0,U.jsx)(`span`,{"data-testid":`compaction-count`,children:p})})]}),(0,U.jsxs)(`div`,{className:`mb-2`,children:[(0,U.jsx)(uk,{label:`Usage`,icon:dk.usage}),(0,U.jsx)(lk,{label:`Tokens in`,icon:dk.tokensIn,children:$u(f.inputTokens)}),(0,U.jsx)(lk,{label:`Tokens out`,icon:dk.tokensOut,children:$u(f.outputTokens)}),f.credits===null?null:(0,U.jsx)(lk,{label:`Credits used`,icon:dk.usage,children:f.credits.toLocaleString(`en-US`,{maximumFractionDigits:2})}),(0,U.jsx)(lk,{label:`Duration`,icon:dk.duration,children:f.countedResults>0&&Qu(f.durationMs)||`—`}),(0,U.jsx)(lk,{label:`Turns`,icon:dk.turns,children:f.countedResults>0?f.turns:`—`})]}),(0,U.jsxs)(`div`,{className:`mb-2`,children:[(0,U.jsx)(uk,{label:`Session`,icon:dk.session}),(0,U.jsx)(lk,{label:`Status`,icon:dk.status,children:(0,U.jsx)(X,{tone:i?.status===`error`?`danger`:i?.status===`running`?`accent`:i?.status===`waiting_permission`?`warn`:`neutral`,children:i?.status??n.status})}),(0,U.jsx)(lk,{label:`Updated`,icon:dk.updated,children:ed(n.updatedAt)}),(0,U.jsx)(lk,{label:`Entries`,icon:dk.entries,children:n.entryCount}),(0,U.jsx)(lk,{label:`History mirror`,icon:dk.mirror,children:n.mirrored?`on`:`off`}),(0,U.jsx)(lk,{label:`Project`,icon:dk.project,children:(0,U.jsx)(`span`,{"data-testid":`session-project`,children:o?o.name:`—`})}),s?(0,U.jsx)(`div`,{className:`whitespace-pre-wrap break-words pb-1 text-[11px] leading-snug text-fg-faint`,"data-testid":`session-project-instructions`,children:s.length>300?`${s.slice(0,300)}\u2026`:s}):null,r?null:(0,U.jsx)(`button`,{type:`button`,className:`text-[11px] text-accent hover:underline`,onClick:()=>t.openAssignProject(n.id),"data-testid":`session-change-project`,children:o?`Move to another project…`:`Move to a project…`}),(0,U.jsx)(lk,{label:`Folder`,icon:dk.folder,children:n.projectDir?`project`:`own workspace`}),(0,U.jsx)(`div`,{className:`mt-1 break-all font-mono text-[10px] text-fg-faint`,"data-testid":`session-folder`,children:n.cwd}),r?null:(0,U.jsx)(`button`,{type:`button`,className:`mt-1 text-[11px] text-accent hover:underline`,onClick:()=>t.openDialog(`project`),"data-testid":`session-change-folder`,children:`Change folder…`})]}),r?null:(0,U.jsxs)(`div`,{className:`space-y-1.5`,"data-testid":`session-scheduled-tasks`,children:[(0,U.jsx)(uk,{label:`Scheduled tasks`,icon:dk.session}),(0,U.jsx)(VD,{sessionId:n.id})]}),i?.init?(0,U.jsxs)(`div`,{className:`text-[11px] text-fg-faint`,children:[`engine `,i.init.claudeCodeVersion,` · `,i.init.tools.length,` tools`]}):null]}):(0,U.jsx)(`div`,{className:`p-4 text-xs text-fg-faint`,children:`Open a chat to see its statistics.`})]})}function mk(e){let t=e=>e.type===`dir`?0:1;return[...e].sort((e,n)=>t(e)-t(n)||e.name.localeCompare(n.name))}function hk(e){let t=[];return e.target.type===`file`&&t.push({key:`open`,label:`Open`,icon:(0,U.jsx)(K.File,{className:`w-3.5 h-3.5`}),onSelect:e.onOpen,testId:`files-menu-open`}),t.push({key:`copy-path`,label:`Copy path`,icon:(0,U.jsx)(K.Copy,{className:`w-3.5 h-3.5`}),disabled:!e.canCopyPath,onSelect:e.onCopyPath,testId:`files-menu-copy-path`},{key:`copy-relative-path`,label:`Copy relative path`,icon:(0,U.jsx)(K.Copy,{className:`w-3.5 h-3.5`}),onSelect:e.onCopyRelativePath,testId:`files-menu-copy-relative-path`}),!e.remote&&e.canDelete&&t.push({key:`delete`,label:`Delete…`,icon:(0,U.jsx)(K.Trash,{className:`w-3.5 h-3.5`}),danger:!0,separated:!0,onSelect:e.onDelete,testId:`files-menu-delete`}),t}function gk(e,t){return t instanceof Sl&&t.status===404&&/^no route for /.test(t.message)?`This host is too old to delete files — update it from the title bar.`:`Could not delete ${AC(e.path)}: ${t instanceof Error?t.message:String(t)}`}function _k(){let{state:e,dispatch:t,actions:n,api:r}=W(),i=mp(),a=pp(),o=i?.id??null,s=o?e.remote.tabs[o]!==void 0:!1,c=a?.status===`running`||a?.status===`waiting_permission`,l=o?e.files[o]?.active??null:null,u=e.info?.platform??null,d=i?.cwd??``,[f,p]=(0,v.useState)({}),[m,h]=(0,v.useState)(()=>new Set),[g,_]=(0,v.useState)(!1),y=(0,v.useRef)(f);y.current=f;let b=(0,v.useRef)(m);b.current=m;let x=(0,v.useRef)(o);x.current=o;let S=(0,v.useRef)(e.files);S.current=e.files;let[C,w]=(0,v.useState)(null),T=(0,v.useCallback)(()=>w(null),[]),E=(0,v.useCallback)((e,t,n)=>w({target:e,at:t,el:n}),[]),[D,O]=(0,v.useState)(null),[ee,k]=(0,v.useState)(!1),te=(0,v.useCallback)(()=>O(null),[]),A=(0,v.useCallback)(async e=>{if(!o||!r.listSessionFiles)return;let t=o;p(t=>({...t,[e]:{...t[e]??{entries:null},loading:!0,error:null}}));try{let n=await r.listSessionFiles(t,e);if(x.current!==t)return;_(!1),p(t=>({...t,[e]:{entries:mk(n.entries),loading:!1,error:null}}))}catch(n){if(x.current!==t)return;El(n)&&_(!0);let r=n instanceof Error?n.message:String(n);p(t=>({...t,[e]:{entries:t[e]?.entries??null,loading:!1,error:r}}))}},[r,o]);(0,v.useEffect)(()=>{p({}),h(new Set),_(!1),w(null),O(null),o&&!s&&A(``)},[o,s,A]);let j=(0,v.useRef)(c);(0,v.useEffect)(()=>{if(j.current&&!c&&o&&!s)for(let e of Object.keys(y.current))(e===``||b.current.has(e))&&A(e);j.current=c},[c,o,s,A]);let ne=e=>{h(t=>{let n=new Set(t);return n.has(e)?n.delete(e):(n.add(e),y.current[e]?.entries||A(e)),n})},re=()=>{if(o){A(``);for(let e of m)A(e)}},M=(e,t)=>{Kw(e).then(e=>n.toast(e?`success`:`error`,e?t:`Could not copy to the clipboard`))},N=async()=>{let e=D,i=o;if(!(!e||!i||!r.deleteSessionFile)){k(!0);try{await r.deleteSessionFile(i,e.path);for(let n of S.current[i]?.open??[])NC(n,e.path)&&t({type:`file_close`,sessionId:i,path:n});x.current===i&&(h(t=>new Set([...t].filter(t=>!NC(t,e.path)))),p(t=>Object.fromEntries(Object.entries(t).filter(([t])=>!NC(t,e.path)))),A(MC(e.path))),n.toast(`success`,`Deleted ${AC(e.path)}`)}catch(t){n.toast(`error`,gk(e,t)),x.current===i&&A(MC(e.path))}finally{k(!1),O(null)}}},ie=C?hk({target:C.target,remote:s,canDelete:typeof r.deleteSessionFile==`function`,canCopyPath:d!==``,onOpen:()=>n.openFile(C.target.path),onCopyPath:()=>M(IC(d,C.target.path,u),`Path copied`),onCopyRelativePath:()=>M(FC(C.target.path,PC(d,u)),`Relative path copied`),onDelete:()=>O(C.target)}):[],ae=()=>void n.savePrefs({explorerOpen:!1}),oe=i?.cwd?AC(i.cwd)||i.cwd:`Files`,se=f[``],ce=C?.target.path??null,le=(0,v.useMemo)(()=>o?s?(0,U.jsx)(yk,{children:`This chat runs on another PC; its files can be browsed there.`}):g?(0,U.jsx)(yk,{children:`This host is too old to list files — update it from the title bar.`}):se?.error&&!se.entries?(0,U.jsx)(yk,{tone:`danger`,children:se.error}):se?.entries?se.entries.length===0?(0,U.jsx)(yk,{children:`The folder is empty.`}):(0,U.jsx)(`ul`,{role:`tree`,"aria-label":`Workspace files`,className:`py-1`,children:(0,U.jsx)(Sk,{rel:``,depth:0,tree:f,expanded:m,activeFile:l,menuPath:ce,onToggle:ne,onOpen:e=>n.openFile(e),onMenu:E})}):(0,U.jsx)(yk,{children:`Listing…`}):(0,U.jsx)(yk,{children:`Open a chat to browse the folder it works in.`}),[o,s,g,se,f,m,l,ce,n]);return(0,U.jsxs)(`aside`,{className:`flex w-64 shrink-0 flex-col border-r border-border bg-surface`,"aria-label":`Files`,"data-testid":`file-explorer`,children:[(0,U.jsxs)(`div`,{className:`flex h-9 shrink-0 items-center gap-2 border-b border-border px-3`,children:[(0,U.jsx)(K.Folder,{className:`w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-semibold uppercase tracking-wide text-fg-muted`,title:i?.cwd??void 0,children:oe}),(0,U.jsx)(J,{label:`Refresh files`,className:`p-1`,onClick:re,disabled:!o||s,"data-testid":`file-explorer-refresh`,children:(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`})}),(0,U.jsx)(J,{label:`Hide files`,className:`p-1`,onClick:ae,children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]}),(0,U.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:le}),(0,U.jsx)(fE,{open:C!==null,at:C?.at??{x:0,y:0},anchorEl:C?.el??null,label:`File actions`,testId:`files-context-menu`,onClose:T,items:ie}),(0,U.jsx)(vk,{target:D,absolute:D?d?IC(d,D.path,u):D.path:``,platform:u,busy:ee,onConfirm:()=>void N(),onClose:te})]})}function vk({target:e,absolute:t,platform:n,busy:r,onConfirm:i,onClose:a}){let o=e?.type===`dir`;return(0,U.jsx)(Ap,{open:e!==null,title:o?`Delete this folder?`:`Delete this file?`,onClose:a,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:a,disabled:r,"data-testid":`files-delete-cancel`,children:`Cancel`}),(0,U.jsx)(q,{variant:`danger`,busy:r,onClick:i,"data-testid":`files-delete-confirm`,children:`Delete permanently`})]}),children:(0,U.jsxs)(`div`,{className:`space-y-2 text-sm text-fg-muted`,"data-testid":`files-delete-dialog`,children:[(0,U.jsx)(`p`,{className:`break-all rounded bg-surface-2 px-2 py-1 font-mono text-xs text-fg`,children:t}),(0,U.jsxs)(`p`,{children:[o?`This folder and everything inside it will be deleted from the disk permanently.`:`This file will be deleted from the disk permanently.`,` `,`It does not go to the `,n===`win32`?`Recycle Bin`:`Trash`,`, and it cannot be undone.`]})]})})}function yk({children:e,tone:t}){return(0,U.jsx)(`div`,{className:H(`p-4 text-xs`,t===`danger`?`text-danger`:`text-fg-faint`),children:e})}function bk(e){let t=e.getBoundingClientRect();return{x:t.left+24,y:t.bottom}}function xk(e,t){return{onContextMenu:n=>{n.preventDefault();let r=n.currentTarget;t(e,n.clientX===0&&n.clientY===0?bk(r):{x:n.clientX,y:n.clientY},r)},onKeyDown:n=>{(n.key===`ContextMenu`||n.shiftKey&&n.key===`F10`)&&(n.preventDefault(),t(e,bk(n.currentTarget),n.currentTarget))}}}function Sk({rel:e,depth:t,tree:n,expanded:r,activeFile:i,menuPath:a,onToggle:o,onOpen:s,onMenu:c}){let l=n[e];return l?l.error&&!l.entries?(0,U.jsx)(`li`,{className:`px-2 py-1 text-[11px] text-danger`,style:{paddingLeft:`${.5+t*.75}rem`},children:l.error}):l.entries?(0,U.jsx)(U.Fragment,{children:l.entries.map(l=>{let u=jC(e,l.name),d=a===u;if(l.type===`dir`){let e=r.has(u);return(0,U.jsxs)(`li`,{role:`treeitem`,"aria-expanded":e,children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>o(u),...xk({path:u,type:`dir`},c),"data-testid":`explorer-dir-${u}`,className:H(`flex w-full items-center gap-1 py-0.5 pr-2 text-left text-xs text-fg hover:bg-surface-2`,d&&`bg-surface-2`),style:{paddingLeft:`${.5+t*.75}rem`},children:[(0,U.jsx)(K.ChevronRight,{className:H(`w-3 h-3 shrink-0 text-fg-faint transition-transform`,e&&`rotate-90`)}),(0,U.jsx)(K.Folder,{className:`w-3.5 h-3.5 shrink-0 text-fg-faint`}),(0,U.jsx)(`span`,{className:`truncate`,children:l.name})]}),e?(0,U.jsx)(`ul`,{role:`group`,children:(0,U.jsx)(Sk,{rel:u,depth:t+1,tree:n,expanded:r,activeFile:i,menuPath:a,onToggle:o,onOpen:s,onMenu:c})}):null]},u)}let f=i===u;return(0,U.jsx)(`li`,{role:`treeitem`,"aria-selected":f,children:(0,U.jsxs)(`button`,{type:`button`,onClick:()=>s(u),...xk({path:u,type:l.type},c),disabled:l.type!==`file`,"data-testid":`explorer-file-${u}`,title:`${u} · ${tw(l.size)}`,className:H(`flex w-full items-center gap-1 py-0.5 pr-2 text-left text-xs hover:bg-surface-2 disabled:opacity-50`,f?`bg-accent-soft text-accent`:d?`bg-surface-2 text-fg`:`text-fg`),style:{paddingLeft:`${.5+t*.75+.9}rem`},children:[(0,U.jsx)(K.File,{className:`w-3.5 h-3.5 shrink-0 text-fg-faint`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:l.name}),(0,U.jsx)(`span`,{className:`shrink-0 text-[10px] text-fg-faint`,children:tw(l.size)})]})},u)})}):(0,U.jsx)(`li`,{className:`px-2 py-1 text-[11px] text-fg-faint`,style:{paddingLeft:`${.5+t*.75}rem`},children:`Listing…`}):null}var Ck=524288,wk={shown:null,bytes:0,pixels:null,error:null,loading:!1},Tk=[{value:`source`,label:`Source`},{value:`preview`,label:`Preview`}],Ek=`preview`;function Dk(){let{state:e,actions:t,api:n}=W(),r=pp(),i=e.currentSessionId,a=i?e.files[i]:void 0,o=a?.active??null,s=r?.status===`running`||r?.status===`waiting_permission`,[c,l]=(0,v.useState)({sessionId:i,files:{}}),u=c.sessionId===i?c.files:{},[d,f]=(0,v.useState)(Ek),p=e=>{Ek=e,f(e)},m=(0,v.useRef)(i);m.current=i;let h=(e,t,n)=>l(r=>{let i=r.sessionId===e?r.files:{};return{sessionId:e,files:{...i,[t]:n(i[t]??wk)}}}),g=async e=>{if(!i)return;let t=i;h(t,e,e=>({...e,loading:!0,error:null}));try{let r=await Ok(n,t,e);if(m.current!==t)return;h(t,e,e=>{let t=e.shown!==null&&jk(e.shown,r.shown);return{shown:t?e.shown:r.shown,bytes:r.bytes,pixels:t?e.pixels:null,error:null,loading:!1}})}catch(n){if(m.current!==t)return;let r=n instanceof Error?n.message:String(n);h(t,e,e=>({...e,error:r,loading:!1}))}},_=(e,t,n)=>{if(!i||t<=0||n<=0)return;let r=i;l(i=>{let a=i.sessionId===r?i.files[e]:void 0;return!a||a.pixels?.w===t&&a.pixels.h===n?i:{...i,files:{...i.files,[e]:{...a,pixels:{w:t,h:n}}}}})},y=JSON.stringify(a?.open??[]);(0,v.useEffect)(()=>{let e=new Set(JSON.parse(y));l(t=>{let n=Object.keys(t.files).filter(t=>e.has(t));return n.length===Object.keys(t.files).length?t:{...t,files:Object.fromEntries(n.map(e=>[e,t.files[e]]))}})},[y]);let b=(0,v.useRef)(s);if((0,v.useEffect)(()=>{let e=b.current&&!s;b.current=s,o&&(e||!u[o])&&g(o)},[o,s,i]),!i||!a||!o)return null;let x=u[o],S=x?.shown??null,C=S?.kind===`text`&&S.markdown;return(0,U.jsxs)(`section`,{className:`flex min-h-0 min-w-0 flex-1 flex-col bg-bg`,"aria-label":`File viewer`,"data-testid":`file-viewer`,children:[(0,U.jsxs)(`div`,{className:`flex h-8 shrink-0 items-center gap-2 border-b border-border px-3 font-mono text-[11px] text-fg-faint`,children:[(0,U.jsx)(K.File,{className:`w-3.5 h-3.5 shrink-0`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:o,children:o}),x?.pixels?(0,U.jsxs)(`span`,{className:`shrink-0`,"data-testid":`file-viewer-pixels`,children:[x.pixels.w,` × `,x.pixels.h]}):null,S?(0,U.jsx)(`span`,{className:`shrink-0`,children:tw(x.bytes)}):null,C?(0,U.jsx)(`span`,{className:`shrink-0 font-sans`,children:(0,U.jsx)(Mp,{label:`Markdown view`,value:d,options:Tk,onChange:p})}):null,(0,U.jsx)(`span`,{className:`shrink-0 rounded bg-surface-2 px-1 text-[10px] uppercase tracking-wide`,children:`read-only`}),(0,U.jsx)(J,{label:`Re-read this file`,className:`p-1`,onClick:()=>void g(o),"data-testid":`file-viewer-refresh`,children:(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`})}),(0,U.jsx)(J,{label:`Back to the chat`,className:`p-1`,onClick:()=>t.showChat(),"data-testid":`file-viewer-back`,children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]}),(0,U.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto px-3 py-2`,"data-testid":`file-viewer-body`,children:(0,U.jsx)(Mk,{path:o,loaded:x,markdownMode:d,onPixels:(e,t)=>_(o,e,t)},`${i}\n${o}`)})]})}async function Ok(e,t,n){let r=UC(n),i=e.readSessionFileBytes?async()=>new Uint8Array(await e.readSessionFileBytes(t,n)):null;if(i&&r.mime!==null){let e=await i();return{shown:kk(r.kind,r.mime,e),bytes:e.byteLength}}if(i&&r.kind===`unknown`)return Ak(await i(),!1);if(!e.readSessionFile)throw Error(`This host cannot read files — update it.`);let a=await e.readSessionFile(t,n),o=r.kind===`markdown`;return QC(a)?i?Ak(await i(),o):{shown:{kind:`binary`},bytes:a.length}:{shown:{kind:`text`,text:a,markdown:o},bytes:a.length}}function kk(e,t,n){return e===`pdf`?{kind:`pdf`}:{kind:e,blob:new Blob([n],{type:t}),digest:ew(n)}}function Ak(e,t){let n=YC(e);if(n)return{shown:kk(n.kind,n.mime,e),bytes:e.length};let r=$C(e);return{shown:r===null?{kind:`binary`}:{kind:`text`,text:r,markdown:t},bytes:e.length}}function jk(e,t){return`digest`in e&&`digest`in t&&e.kind===t.kind&&e.digest===t.digest}function Mk({path:e,loaded:t,markdownMode:n,onPixels:r}){if(!t||t.loading&&t.shown===null)return(0,U.jsx)(Nk,{children:`Reading…`});if(t.error&&t.shown===null)return(0,U.jsx)(Nk,{tone:`danger`,testId:`file-viewer-error`,children:t.error});let i=t.shown;if(!i)return null;let a=AC(e),o=tw(t.bytes);switch(i.kind){case`image`:return(0,U.jsx)(Lk,{blob:i.blob,name:a,onPixels:r},i.digest);case`audio`:case`video`:return(0,U.jsx)(Rk,{kind:i.kind,blob:i.blob,name:a,size:o},i.digest);case`pdf`:return(0,U.jsxs)(Nk,{testId:`file-viewer-pdf`,children:[a,` is a PDF document (`,o,`). The viewer cannot show PDF files — copy its path from the file list to open it in a PDF reader.`]});case`binary`:return(0,U.jsxs)(Nk,{testId:`file-viewer-binary`,children:[a,` is not a text file (`,o,`), and not a picture or a clip the viewer can show.`]});case`text`:return(0,U.jsx)(Pk,{path:e,text:i.text,markdown:i.markdown,mode:n})}}function Nk({children:e,tone:t,testId:n}){return(0,U.jsx)(`div`,{className:t===`danger`?`py-4 text-xs text-danger`:`py-4 text-xs text-fg-faint`,"data-testid":n,children:e})}function Pk({path:e,text:t,markdown:n,mode:r}){let i=t.length>Ck,a=i?t.slice(0,Ck):t;return(0,U.jsxs)(U.Fragment,{children:[n&&r===`preview`?(0,U.jsx)(`div`,{className:`max-w-3xl py-2 text-sm`,"data-testid":`file-viewer-markdown`,children:(0,U.jsx)(tT,{text:a})}):(0,U.jsx)(Jw,{code:a,language:VC(e)}),i?(0,U.jsxs)(`div`,{className:`pb-2 text-[11px] text-fg-faint`,children:[`Showing the first `,tw(Ck),` of `,tw(t.length),`.`]}):null]})}function Fk(e){let[t,n]=(0,v.useState)(null);return(0,v.useEffect)(()=>{let t=URL.createObjectURL(e);return n(t),()=>URL.revokeObjectURL(t)},[e]),t}var Ik={backgroundImage:`repeating-conic-gradient(rgb(128 128 128 / 0.22) 0% 25%, transparent 0% 50%)`,backgroundSize:`16px 16px`};function Lk({blob:e,name:t,onPixels:n}){let r=Fk(e),[i,a]=(0,v.useState)(!1);return i?(0,U.jsxs)(Nk,{testId:`file-viewer-image-error`,children:[t,` could not be drawn — it may be damaged, or not the kind of picture its name says.`]}):r?(0,U.jsx)(`div`,{className:`flex h-full min-h-0 items-center justify-center`,children:(0,U.jsx)(`img`,{src:r,alt:t,draggable:!1,"data-testid":`file-viewer-image`,className:`block max-h-full max-w-full object-contain`,style:Ik,onLoad:e=>n(e.currentTarget.naturalWidth,e.currentTarget.naturalHeight),onError:()=>a(!0)})}):null}function Rk({kind:e,blob:t,name:n,size:r}){let i=Fk(t),[a,o]=(0,v.useState)(null);if((0,v.useEffect)(()=>{let e=e=>{e.effectiveDirective===`media-src`&&e.blockedURI.startsWith(`blob`)&&o(`policy`)};return document.addEventListener(`securitypolicyviolation`,e),()=>document.removeEventListener(`securitypolicyviolation`,e)},[]),a)return(0,U.jsx)(Nk,{testId:`file-viewer-media-error`,children:a===`policy`?`${n} (${r}) cannot be played in this window: its security policy does not allow audio or video yet.`:`${n} (${r}) cannot be played here: its format or codec is not one Chromium plays.`});if(!i)return null;let s=()=>o(e=>e??`format`);return e===`audio`?(0,U.jsx)(`div`,{className:`flex h-full min-h-0 items-center justify-center`,children:(0,U.jsx)(`audio`,{src:i,controls:!0,preload:`metadata`,onError:s,"data-testid":`file-viewer-audio`,className:`w-full max-w-xl`})}):(0,U.jsx)(`div`,{className:`flex h-full min-h-0 items-center justify-center`,children:(0,U.jsx)(`video`,{src:i,controls:!0,preload:`metadata`,onError:s,"data-testid":`file-viewer-video`,className:`block max-h-full max-w-full bg-black`})})}var zk={autoAccept:{hint:`Allow every tool the agent wants to use, without asking you. Off by default.`,details:[`Answered by this PC itself, so it covers EVERY chat running here — started in this app, the oona terminal, your phone, Telegram, the website or another PC.`,`The agent’s questions to you (its multiple-choice cards) still wait for your answer.`,`Subagents never ask: their tool requests are always allowed.`,`Takes effect at the next tool request, even in a chat that is already working.`,`What a chat may attempt at all is still its own Build / Plan / Ask first / Autonomous choice in the composer; this only answers the prompts it would have shown you.`]},reasoning:{hint:`Show the model’s thinking between its messages.`,details:[`Display only — the model thinks the same either way.`,`Hidden thinking is also left out of chat search (Ctrl+F).`,`For the windows this PC serves (this app, the local web UI). The phone has its own switch.`]},colourScheme:{hint:`System follows Windows’ light or dark setting.`,details:[`Also colours this window’s title bar and menu.`,`Your own colours per element are under Theme.`]},notifications:{hint:`Windows notifications from this app while its window is not in front.`,details:[`Nothing pops up while you are looking at the window.`,`Your phone’s push notifications are separate: the phone buzzes only while no window on this PC is open.`]},notifyFinished:{hint:`When a chat’s turn ends — finished, or failed.`,details:[`Named after the chat; clicking the notification opens it.`]},notifyWaiting:{hint:`When a chat waits for you: a permission, or one of the agent’s questions.`,details:[`With auto-accept on, only the agent’s questions still wait for you, so only they notify.`]},notifyError:{hint:`When a chat stops on an error.`,details:[`The error itself is also written into the chat.`]},transcriptWindow:{hint:`How many messages and tool cards of a chat stay drawn; older ones leave the top like a stack and come back when you scroll up.`,details:[`Only what is DRAWN: the whole chat is still kept, and still searched.`,`Smaller is faster on long agentic chats; larger keeps more on screen.`]},defaultCwd:{hint:`The folder a new chat runs in when it is not given one. Empty: each chat gets its own private folder.`,details:[`A folder here becomes each new chat’s project: its CLAUDE.md, .claude settings, hooks and skills load. Your home folder and drive roots never load as a project.`,`Empty is the safe default: the agent then works only inside that chat’s own folder under OonaCode’s data directory.`,`Used by chats started in this app. A project’s own folder (Projects → New chats) wins over it; the oona terminal always uses the folder you run it in.`]},mirrorHistory:{hint:`Keep an encrypted copy of this PC’s chats on your account.`,details:[`Encrypted on this PC with your vault key before it is uploaded: the server stores only ciphertext it cannot read.`,`It is how your phone, the website and your other PCs list and read this PC’s chats — also while this PC is off.`,`Turning it off stops uploading; what is already on your account stays until you delete those chats.`]},remoteAccess:{hint:`Let your phone, Telegram, the website and your other PCs reach this PC.`,details:[`This PC keeps one outbound, end-to-end encrypted channel to your OonaCode server; every other device reaches it through that channel alone.`,`Off: they still see this PC online, marked “remote access off”, and cannot open its chats, send prompts, unlock it remotely or delete its chats. This PC also cannot open chats on your other PCs.`,`Chat history already mirrored to your account stays readable everywhere.`,`Takes effect immediately.`]},keepUnlocked:{hint:`Leave your vault unlocked when you close or quit the app.`,details:[`Off (default): closing the window — to the tray too — or quitting stops the chats that are running and locks this PC until you unlock it. Your phone and other devices cannot use it meanwhile.`,`On: chats keep running and your other devices keep working after the window is closed. Choose it on a PC only you use.`]},server:{hint:`Your account’s OonaCode server.`,details:[`Where your account lives: sign-in, OonaCode-pool models and credits, your encrypted vault and chat history, remote access, and app updates.`,`Your own API keys and subscriptions never go through it — this PC calls those providers directly.`,`Set by signing in. (Developers point a build at another server with OONACODE_GATEWAY_URL.)`]},diagnostics:{hint:`While you are signed in, this PC sends OonaCode its warnings and errors, and a short report of any turn that fails.`,details:[`A report names the error, the model and the provider — never the content of your chats.`,`It is how bugs you never reported get fixed. There is no usage tracking.`]}},Bk=[{id:`general`,label:`General`,icon:K.Settings},{id:`theme`,label:`Theme`,icon:K.Palette},{id:`advanced`,label:`Advanced`,icon:K.Sliders},{id:`providers`,label:`Providers`,icon:K.Plug},{id:`devices`,label:`Devices`,icon:K.Monitor},{id:`host`,label:`This PC`,icon:K.Stethoscope}];function Vk(){let{state:e,actions:t}=W(),n=e.prefs,r=e.settings?.theme??`system`;return(0,U.jsxs)(`div`,{className:`space-y-1`,children:[(0,U.jsx)(jp,{label:`Auto-accept permissions`,hint:zk.autoAccept.hint,details:zk.autoAccept.details,checked:n.autoAcceptPermissions,onChange:e=>void t.savePrefs({autoAcceptPermissions:e}),testId:`settings-auto-accept`}),(0,U.jsx)(jp,{label:`Show reasoning in the timeline`,hint:zk.reasoning.hint,details:zk.reasoning.details,checked:n.showReasoningSummaries,onChange:e=>void t.savePrefs({showReasoningSummaries:e})}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-border py-3`,children:[(0,U.jsxs)(`span`,{children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5 text-sm font-medium text-fg`,children:[`Colour scheme`,(0,U.jsx)(Ep,{label:`Colour scheme`,details:(0,U.jsx)(Dp,{items:zk.colourScheme.details})})]}),(0,U.jsx)(`span`,{className:`mt-0.5 block text-xs text-fg-faint`,children:zk.colourScheme.hint})]}),(0,U.jsx)(Mp,{label:`Colour scheme`,value:r,options:[{value:`system`,label:`System`},{value:`dark`,label:`Dark`},{value:`light`,label:`Light`}],onChange:e=>void t.saveSettings({theme:e})})]}),(0,U.jsxs)(`div`,{className:`border-t border-border pt-2`,children:[(0,U.jsxs)(`div`,{className:`mb-1 flex items-center gap-1.5 text-xs font-semibold uppercase tracking-wide text-fg-faint`,children:[(0,U.jsx)(K.Bell,{className:`w-3 h-3`}),` Notifications`,(0,U.jsx)(Ep,{label:`Notifications`,details:(0,U.jsx)(Dp,{items:zk.notifications.details})})]}),(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,children:zk.notifications.hint}),(0,U.jsx)(jp,{label:`Agent finished or needs attention`,hint:zk.notifyFinished.hint,details:zk.notifyFinished.details,checked:n.notifications.agentFinished,onChange:e=>void t.savePrefs({notifications:{...n.notifications,agentFinished:e}})}),(0,U.jsx)(jp,{label:`Permission or question waiting for you`,hint:zk.notifyWaiting.hint,details:zk.notifyWaiting.details,checked:n.notifications.permissionRequired,onChange:e=>void t.savePrefs({notifications:{...n.notifications,permissionRequired:e}})}),(0,U.jsx)(jp,{label:`Error occurred`,hint:zk.notifyError.hint,details:zk.notifyError.details,checked:n.notifications.errorOccurred,onChange:e=>void t.savePrefs({notifications:{...n.notifications,errorOccurred:e}})})]}),e.prefsBackend===`local`?(0,U.jsx)(`div`,{className:`mt-2 rounded-md bg-warn-soft px-3 py-2 text-xs text-warn`,children:`This host does not store UI preferences yet, so they are kept on this device only.`}):null]})}function Hk(e){let t=e.replace(/-/g,` `);return t.charAt(0).toUpperCase()+t.slice(1)}function Uk(e){let t={};if(typeof document>`u`||typeof getComputedStyle!=`function`)return t;let n=document.documentElement,r=n.getAttribute(`data-theme`),i=[];for(let e of nc){let t=n.style.getPropertyValue(`--${e}`);t&&i.push([e,t]),n.style.removeProperty(`--${e}`)}n.setAttribute(`data-theme`,e);let a=getComputedStyle(n);for(let e of nc){let n=a.getPropertyValue(`--${e}`).trim();t[e]=/^#[0-9a-fA-F]{6}$/.test(n)?n.toLowerCase():`#808080`}r===null?n.removeAttribute(`data-theme`):n.setAttribute(`data-theme`,r);for(let[e,t]of i)n.style.setProperty(`--${e}`,t);return t}function Wk(){let{state:e,actions:t}=W(),n=e.prefs,[r,i]=(0,v.useState)(`dark`),a=(0,v.useMemo)(()=>Uk(r),[r]),[o,s]=(0,v.useState)({}),c=(0,v.useRef)(o);c.current=o;let l=(0,v.useRef)(n.themeColors);l.current=n.themeColors;let u=(0,v.useRef)(null),d=()=>{u.current!==null&&(window.clearTimeout(u.current),u.current=null)};(0,v.useEffect)(()=>d,[]);let f=e=>{d();let n=c.current;Object.keys(n).length!==0&&(s({}),t.savePrefs({themeColors:{...l.current,[e]:{...l.current[e],...n}}}))},p=(e,t)=>{s(n=>({...n,[e]:t})),c.current={...c.current,[e]:t},d(),u.current=window.setTimeout(()=>f(r),300)},m={...l.current[r],...o},h=Object.keys(m).length,g=e=>{d(),s({});let n={...m};delete n[e],t.savePrefs({themeColors:{...l.current,[r]:n}})};return(0,U.jsxs)(`div`,{className:`space-y-3`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,U.jsxs)(`div`,{className:`min-w-0`,children:[(0,U.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:`Theme colours`}),(0,U.jsx)(`div`,{className:`mt-0.5 text-xs text-fg-faint`,children:`Choose any colour for any element. A colour you do not choose keeps the theme's own value. Your colours follow your account to every PC.`})]}),(0,U.jsx)(Mp,{label:`Edit colour scheme`,value:r,options:[{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],onChange:e=>{f(r),i(e)}})]}),(0,U.jsx)(`div`,{className:`grid grid-cols-1 gap-x-4 sm:grid-cols-2`,children:nc.map(e=>{let t=m[e]!==void 0,n=m[e]??a[e]??`#808080`;return(0,U.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-border py-1.5`,"data-testid":`theme-color-row-${r}-${e}`,children:[(0,U.jsx)(`input`,{type:`color`,className:`h-6 w-9 shrink-0 cursor-pointer rounded border border-border bg-transparent p-0.5`,value:n,onChange:t=>p(e,t.target.value),"aria-label":`${Hk(e)} colour (${r} scheme)`,"data-testid":`theme-color-${r}-${e}`}),(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-fg-muted`,children:Hk(e)}),(0,U.jsx)(`span`,{className:`w-16 shrink-0 text-right font-mono text-[10px] text-fg-faint`,children:t?m[e]:`default`}),t?(0,U.jsx)(J,{label:`Reset ${Hk(e)} to the theme colour`,className:`p-0.5`,"data-testid":`theme-color-clear-${r}-${e}`,onClick:()=>g(e),children:(0,U.jsx)(K.Refresh,{className:`w-3 h-3`})}):null]},e)})}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-border pt-2`,children:[(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,"data-testid":`theme-colors-count`,children:h===0?`No custom colours in the ${r} scheme.`:`${h} custom colour${h===1?``:`s`} in the ${r} scheme.`}),(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>{d(),s({}),t.savePrefs({themeColors:{...l.current,[r]:{}}})},disabled:h===0,"data-testid":`theme-reset-${r}`,children:`Reset all`})]})]})}function Gk(){let{state:e,actions:t}=W(),n=e.prefs,[r,i]=(0,v.useState)(String(n.transcriptWindowSize));return(0,v.useEffect)(()=>i(String(n.transcriptWindowSize)),[n.transcriptWindowSize]),(0,U.jsx)(`div`,{className:`space-y-1`,children:(0,U.jsx)(Op,{label:`Transcript window size`,hint:`${zk.transcriptWindow.hint} Scrolling to the top brings back 100 more. 100–${tc}, default 500.`,details:zk.transcriptWindow.details,children:(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`input`,{className:H(Y,`w-32`),type:`number`,min:100,max:tc,step:100,value:r,onChange:e=>i(e.target.value),onBlur:()=>{let e=Number.parseInt(r,10);Number.isFinite(e)&&t.savePrefs({transcriptWindowSize:e})},"aria-label":`Transcript window size`}),(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,children:`messages and tool cards`})]})})})}function Kk(){let{state:e,actions:t}=W(),n=(0,v.useMemo)(()=>ys(e.providers),[e.providers]);return(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[n.length===0?(0,U.jsx)(`div`,{className:`py-6 text-center text-sm text-fg-muted`,children:`No providers in the registry.`}):null,n.map(n=>{let r=n.definition,i=e.activeProviderId===r.id,a=vs(e.providers,r.id),o=a.some(e=>e.configured),s=[...new Set(a.flatMap(e=>(e.credentials??[]).map(e=>e.class)))].filter(e=>e!==`none`);return(0,U.jsxs)(`div`,{className:`flex items-center gap-3 rounded-md border border-border px-3 py-2`,"data-testid":`provider-${r.id}`,children:[(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,U.jsx)(`span`,{className:`text-sm font-medium`,children:r.displayName}),i?(0,U.jsx)(X,{tone:`accent`,children:`active`}):null,r.route===`direct`?(0,U.jsx)(X,{tone:`ok`,children:`direct`}):null,s.length>0?s.map(e=>(0,U.jsxs)(X,{tone:`ok`,children:[e===`subscription`?`subscription`:`API key`,` connected`]},e)):o?(0,U.jsx)(X,{tone:`ok`,children:`connected`}):(0,U.jsx)(X,{tone:`warn`,children:`not connected`})]}),(0,U.jsxs)(`div`,{className:`truncate text-[11px] text-fg-faint`,children:[r.models.length,` model`,r.models.length===1?``:`s`,r.credentialVariants?.length?` · ${r.credentialVariants.map(e=>e.label).join(` / `)}`:``]})]}),(0,U.jsxs)(q,{size:`sm`,variant:o?`secondary`:`primary`,onClick:()=>t.openProviderConnect(r.id),children:[(0,U.jsx)(K.Plus,{className:`w-3 h-3`}),` `,o?`Manage…`:`Connect`]})]},r.id)}),(0,U.jsx)(`div`,{className:`pt-3`,children:(0,U.jsx)(jO,{})})]})}function qk(){let{state:e,actions:t}=W(),[n,r]=(0,v.useState)(null),[i,a]=(0,v.useState)(``);return(0,v.useEffect)(()=>{t.refreshHosts()},[t]),e.account?.loggedIn?e.remote.supported?(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[e.remote.loading?(0,U.jsxs)(`div`,{className:`flex items-center gap-2 py-4 text-sm text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{}),` Loading devices…`]}):null,e.remote.hosts.map(e=>(0,U.jsxs)(`div`,{className:`flex items-center gap-3 rounded-md border border-border px-3 py-2`,children:[(0,U.jsx)(K.Monitor,{className:`w-4 h-4 shrink-0 text-fg-faint`}),(0,U.jsx)(`div`,{className:`min-w-0 flex-1`,children:n===e.hostId?(0,U.jsx)(`input`,{className:Y,value:i,autoFocus:!0,"aria-label":`Label for ${e.hostName}`,onChange:e=>a(e.target.value),onKeyDown:n=>{n.key===`Enter`&&i.trim()?(t.renameHost(e.hostId,i.trim()),r(null)):n.key===`Escape`&&r(null)}}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-1.5 text-sm font-medium`,children:[e.label||e.hostName,e.isSelf?(0,U.jsx)(X,{tone:`accent`,children:`this PC`}):null,(0,U.jsx)(X,{tone:e.online?`ok`:`neutral`,children:e.online?`online`:`offline`}),e.remoteAccessOff?(0,U.jsx)(X,{tone:`warn`,children:`remote access off`}):null]}),(0,U.jsxs)(`div`,{className:`truncate text-[11px] text-fg-faint`,children:[e.platform,e.appVersion?` · v${e.appVersion}`:``,e.lastSeenAt?` · seen ${ed(e.lastSeenAt)}`:``]})]})}),n===e.hostId?(0,U.jsx)(q,{size:`sm`,variant:`primary`,onClick:()=>{i.trim()&&t.renameHost(e.hostId,i.trim()),r(null)},children:`Save`}):(0,U.jsxs)(q,{size:`sm`,onClick:()=>{r(e.hostId),a(e.label||e.hostName)},children:[(0,U.jsx)(K.Edit,{className:`w-3 h-3`}),` Rename`]})]},e.hostId)),!e.remote.loading&&e.remote.hosts.length===0?(0,U.jsx)(`div`,{className:`py-6 text-center text-sm text-fg-muted`,children:`No devices reported yet.`}):null]}):(0,U.jsxs)(`div`,{className:`rounded-md border border-border px-3 py-3 text-sm text-fg-muted`,children:[`This host build cannot list your account's devices yet (the relay lands with the server phase). This PC is `,(0,U.jsx)(`strong`,{children:e.connection.hostName??`unknown`}),`.`]}):(0,U.jsx)(`div`,{className:`py-6 text-center text-sm text-fg-muted`,children:`Sign in to see the devices on your account.`})}function Jk(){let{state:e,actions:t}=W(),n=e.settings,[r,i]=(0,v.useState)(n?.defaultCwd??``);if((0,v.useEffect)(()=>i(n?.defaultCwd??``),[n?.defaultCwd]),!n)return(0,U.jsx)(`div`,{className:`py-6 text-sm text-fg-muted`,children:`Loading settings…`});let a=e.account?.gatewayUrl??n.gatewayUrl??x,o=e=>{let r=e.trim()?e.trim():null;r!==(n.defaultCwd??null)&&t.saveSettings({defaultCwd:r})},s=async()=>{let e=await window.oonacode?.pickDirectory?.({title:`The folder new chats run in`,...r?{defaultPath:r}:{}});e&&(i(e),o(e))};return(0,U.jsxs)(`div`,{className:`space-y-3`,children:[(0,U.jsx)(Op,{label:`Default working directory`,hint:zk.defaultCwd.hint,details:zk.defaultCwd.details,children:(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsx)(`input`,{className:H(Y,`flex-1 font-mono text-xs`),value:r,onChange:e=>i(e.target.value),onBlur:()=>o(r),placeholder:`Empty — each chat gets its own folder`,spellCheck:!1,"data-testid":`settings-default-cwd`}),window.oonacode?.pickDirectory?(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>void s(),children:`Choose…`}):null,r?(0,U.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>{i(``),o(``)},children:`Clear`}):null]})}),(0,U.jsxs)(`div`,{className:`border-t border-border pt-1`,children:[(0,U.jsx)(jp,{label:`Mirror chat history to my account`,hint:zk.mirrorHistory.hint,details:zk.mirrorHistory.details,checked:n.mirrorHistory,onChange:e=>void t.saveSettings({mirrorHistory:e}),testId:`settings-mirror`}),(0,U.jsx)(jp,{label:`Remote access`,hint:zk.remoteAccess.hint,details:zk.remoteAccess.details,checked:n.relayEnabled??!0,onChange:e=>void t.saveSettings({relayEnabled:e}),testId:`settings-relay`}),(0,U.jsx)(jp,{label:`Keep the vault unlocked when the app closes`,hint:zk.keepUnlocked.hint,details:zk.keepUnlocked.details,checked:n.keepUnlockedOnExit??!1,onChange:e=>void t.saveSettings({keepUnlockedOnExit:e}),testId:`settings-keep-unlocked-exit`})]}),(0,U.jsxs)(`div`,{className:`space-y-2 border-t border-border pt-3 text-xs`,children:[(0,U.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,U.jsxs)(`span`,{children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5 text-sm font-medium text-fg`,children:[`Server`,(0,U.jsx)(Ep,{label:`Server`,details:(0,U.jsx)(Dp,{items:zk.server.details})})]}),(0,U.jsx)(`span`,{className:`block text-fg-faint`,children:zk.server.hint})]}),(0,U.jsx)(`span`,{className:`break-all font-mono text-fg-muted`,"data-testid":`settings-server`,children:a})]}),(0,U.jsxs)(`div`,{children:[(0,U.jsxs)(`span`,{className:`flex items-center gap-1.5 text-sm font-medium text-fg`,children:[`Diagnostics`,(0,U.jsx)(Ep,{label:`Diagnostics`,details:(0,U.jsx)(Dp,{items:zk.diagnostics.details})})]}),(0,U.jsx)(`span`,{className:`block text-fg-faint`,children:zk.diagnostics.hint})]})]})]})}function Yk({open:e,onClose:t}){let{state:n,actions:r}=W(),[i,a]=(0,v.useState)(`general`),o=n.ui.settingsSection;return(0,v.useEffect)(()=>{e&&o&&a(o)},[e,o]),(0,v.useEffect)(()=>{e&&!n.settings&&r.refreshSettings()},[e,n.settings,r]),(0,U.jsx)(Ap,{open:e,title:`Settings`,onClose:t,wide:!0,footer:(0,U.jsx)(q,{onClick:t,children:`Done`}),children:(0,U.jsxs)(`div`,{className:`flex min-h-[22rem] gap-4`,children:[(0,U.jsxs)(`nav`,{className:`w-36 shrink-0 space-y-0.5`,"aria-label":`Settings sections`,children:[Bk.map(e=>{let t=e.icon;return(0,U.jsxs)(`button`,{type:`button`,onClick:()=>a(e.id),"aria-current":i===e.id?`true`:void 0,className:H(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm`,i===e.id?`bg-accent-soft font-medium text-accent`:`text-fg-muted hover:bg-surface-2`),children:[(0,U.jsx)(t,{className:`w-3.5 h-3.5`}),e.label]},e.id)}),(0,U.jsxs)(`div`,{className:`pt-3 text-[11px] text-fg-faint`,children:[`OonaCode Desktop v`,Pf(typeof window<`u`&&window.oonacode?.appVersion||n.connection.appVersion||`0.0.0`,Nf({bridge:typeof window<`u`?window.oonacode:void 0,info:n.info}))]})]}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[i===`general`?(0,U.jsx)(Vk,{}):null,i===`theme`?(0,U.jsx)(Wk,{}):null,i===`advanced`?(0,U.jsx)(Gk,{}):null,i===`providers`?(0,U.jsx)(Kk,{}):null,i===`devices`?(0,U.jsx)(qk,{}):null,i===`host`?(0,U.jsx)(Jk,{}):null]})]})})}function Xk({toast:e}){let{actions:t}=W();(0,v.useEffect)(()=>{let n=setTimeout(()=>t.dismissToast(e.id),e.kind===`error`?9e3:5e3);return()=>clearTimeout(n)},[e.id,e.kind,t]);let n=e.kind===`error`?`border-danger/50 bg-danger-soft text-danger`:e.kind===`success`?`border-ok/50 bg-ok-soft text-ok`:`border-border bg-surface text-fg`;return(0,U.jsxs)(`div`,{role:e.kind===`error`?`alert`:`status`,className:H(`pointer-events-auto flex max-w-sm items-start gap-2 rounded-md border px-3 py-2 text-sm shadow-md`,n),children:[e.kind===`error`?(0,U.jsx)(K.Alert,{className:`mt-0.5 w-4 h-4`}):e.kind===`success`?(0,U.jsx)(K.Check,{className:`mt-0.5 w-4 h-4`}):null,(0,U.jsx)(`div`,{className:`pre-wrap min-w-0 flex-1`,children:e.text}),(0,U.jsx)(`button`,{type:`button`,"aria-label":`Dismiss`,className:`opacity-60 hover:opacity-100`,onClick:()=>t.dismissToast(e.id),children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]})}function Zk(){let{state:e}=W();return e.toasts.length===0?null:(0,U.jsx)(`div`,{className:`pointer-events-none fixed bottom-4 right-4 z-50 flex flex-col gap-2`,children:e.toasts.map(e=>(0,U.jsx)(Xk,{toast:e},e.id))})}var Qk=2e3;function $k(e){if(!eA(e))return;let t=typeof window<`u`?window.oonacode:void 0;if(t?.openExternal){t.openExternal(e).catch(()=>void 0);return}typeof window<`u`&&window.open(e,`_blank`,`noopener,noreferrer`)}function eA(e){if(typeof e!=`string`||e===``)return!1;try{let{protocol:t}=new URL(e);return t===`http:`||t===`https:`}catch{return!1}}function tA(e){if(e.message)return e.message;switch(e.status){case`denied`:return`That request was denied in the browser. Start again if it was you.`;case`expired`:return`The code expired before it was approved. Start again for a fresh one.`;default:return`The sign-in could not be started. Check that this PC can reach the gateway.`}}function nA({children:e,testId:t}){let{state:n}=W(),r=n.connection.hostName??n.info?.hostName??null;return(0,U.jsxs)(`div`,{className:`flex h-full flex-col bg-bg text-fg`,"data-testid":t,children:[(0,U.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b border-border bg-surface px-3`,children:[(0,U.jsx)(`span`,{className:`font-semibold tracking-tight`,children:`OonaCode`}),r?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`span`,{className:`text-fg-faint`,children:`/`}),(0,U.jsx)(`span`,{className:`truncate text-sm text-fg-muted`,"data-testid":`frame-host-name`,children:r})]}):null]}),(0,U.jsx)(`main`,{className:`flex min-h-0 flex-1 items-start justify-center overflow-y-auto p-6`,children:(0,U.jsx)(`div`,{className:`w-full max-w-md py-6`,children:e})}),(0,U.jsx)(Zk,{})]})}function rA(){return(0,U.jsx)(nA,{testId:`account-loading`,children:(0,U.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 text-sm text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{className:`w-4 h-4`}),(0,U.jsx)(`span`,{children:`Checking your account…`})]})})}function iA({link:e}){let{actions:t}=W(),[n,r]=(0,v.useState)(!1),i=e.verificationUrl??``,a=e.verificationUrlComplete??i,o=eA(a),s=t.refreshAccountLink;return(0,v.useEffect)(()=>{let e=setInterval(()=>void s(),Qk);return()=>clearInterval(e)},[s]),(0,U.jsxs)(`div`,{className:`space-y-3`,"data-testid":`link-waiting`,children:[(0,U.jsxs)(`ol`,{className:`space-y-2 text-sm`,children:[(0,U.jsxs)(`li`,{className:`flex flex-wrap items-baseline gap-2`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`1. Open`}),o?(0,U.jsx)(`a`,{className:`break-all font-medium text-accent underline`,href:a,target:`_blank`,rel:`noopener noreferrer`,"data-testid":`link-url`,onClick:e=>{window.oonacode?.openExternal&&(e.preventDefault(),$k(a))},children:i}):(0,U.jsx)(`span`,{className:`break-all font-medium`,"data-testid":`link-url`,children:i})]}),(0,U.jsxs)(`li`,{className:`flex flex-wrap items-baseline gap-2`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`2. Enter`}),(0,U.jsx)(`span`,{className:`select-all rounded-md border border-border bg-surface-2 px-2.5 py-1 font-mono text-base tracking-widest`,"data-testid":`link-user-code`,children:e.userCode})]})]}),(0,U.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-fg-muted`,role:`status`,children:[(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{children:`Waiting for approval in your browser…`})]}),(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,children:`Approve this code only if you are looking at it on your own screen right now. It is good for a few minutes and can be used once.`}),(0,U.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[o?(0,U.jsxs)(q,{size:`sm`,onClick:()=>$k(a),"data-testid":`link-reopen`,children:[(0,U.jsx)(K.LogIn,{className:`w-3.5 h-3.5`}),` Open the browser again`]}):null,(0,U.jsx)(q,{size:`sm`,variant:`ghost`,busy:n,"data-testid":`link-cancel`,onClick:()=>{r(!0),t.cancelAccountLink().finally(()=>r(!1))},children:`Cancel`})]})]})}function aA(e){if(typeof e!=`string`||e===``)return null;try{let t=new URL(e).hostname;if(!t)return null;let n=/^api(?:-([a-z0-9-]+))?.(.+)$/i.exec(t),r=n?.[2];return n&&r?n[1]?n[1]+`.`+r:r:t}catch{return null}}function oA(){let{state:e,actions:t}=W(),n=e.accountLink,r=aA(n?.verificationUrl??e.settings?.gatewayUrl??e.account?.gatewayUrl??null),[i,a]=(0,v.useState)(!1),o=(0,v.useCallback)(async()=>{a(!0);try{let e=await t.startAccountLink();e?.status===`waiting`&&$k(e.verificationUrlComplete??e.verificationUrl??``)}finally{a(!1)}},[t]);if(n?.status===`waiting`)return(0,U.jsx)(iA,{link:n});let s=n&&(n.status===`denied`||n.status===`expired`);return(0,U.jsxs)(`div`,{className:`space-y-2`,children:[s?(0,U.jsx)(`p`,{role:`status`,"data-testid":`link-refused`,className:`rounded-md border border-warn/50 bg-warn-soft px-3 py-2 text-xs text-fg`,children:tA(n)}):null,(0,U.jsxs)(q,{variant:`primary`,busy:i,onClick:()=>void o(),"data-testid":`link-start`,className:`w-full justify-center`,children:[(0,U.jsx)(K.LogIn,{className:`w-3.5 h-3.5`}),s?`Try again in your browser`:`Sign in with your browser`]}),(0,U.jsxs)(`p`,{className:`text-xs text-fg-faint`,"data-testid":`link-site-note`,children:[`Opens `,r??`your account page`,` and shows a short code to confirm. Your password is never typed on this machine, and this PC never sees anyone else's.`]})]})}function sA(){let{state:e}=W(),[t,n]=(0,v.useState)(!1),r=t||e.emailVerification!==null;return(0,U.jsx)(nA,{testId:`sign-in-view`,children:(0,U.jsxs)(`div`,{className:`space-y-5`,children:[(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(`h1`,{className:`text-xl font-semibold tracking-tight`,children:`Sign in to use OonaCode`}),(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`OonaCode runs the agent on this PC, with your own providers — but it needs an OonaCode account. There is no guest mode.`})]}),(0,U.jsx)(oA,{}),(0,U.jsx)(`div`,{className:H(`space-y-3 border-t border-border pt-4`,r?``:`text-center`),children:r?(0,U.jsx)(Vp,{}):(0,U.jsx)(q,{size:`sm`,variant:`ghost`,"data-testid":`use-password`,onClick:()=>n(!0),children:`Use an email and password instead`})})]})})}function cA(){let{state:e,actions:t}=W(),[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(!0),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(null),u=(0,v.useRef)(null);return(0,v.useEffect)(()=>{let e=()=>u.current?.focus();e();let t=setTimeout(e,60);return()=>clearTimeout(t)},[]),(0,U.jsxs)(`div`,{className:`flex min-h-screen items-center justify-center bg-surface-1 p-6`,"data-testid":`locked-view`,onMouseDown:()=>u.current?.focus(),children:[(0,U.jsxs)(`form`,{onSubmit:e=>{if(e.preventDefault(),!n||o)return;s(!0),l(null);let a=null;t.unlock(n,{keepUnlocked:i,onError:e=>{a=e}}).then(e=>{s(!1),e?r(``):l(a??`Wrong password — the vault stays locked.`)})},className:`w-full max-w-sm space-y-4 text-center`,children:[(0,U.jsx)(K.Lock,{className:`mx-auto h-10 w-10 text-fg-faint`}),(0,U.jsx)(`h1`,{className:`text-lg font-semibold`,children:`This device is locked`}),(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,children:`The vault, your keys and every session on this PC stay unreadable until you unlock — with your account password here, or remotely from another of your devices.`}),(0,U.jsx)(`input`,{ref:u,type:`password`,className:Y,value:n,onChange:e=>r(e.target.value),onMouseDown:e=>e.stopPropagation(),placeholder:`Account password`,autoFocus:!0,"data-testid":`locked-password`}),(0,U.jsxs)(`label`,{className:`flex items-start justify-center gap-2 text-sm text-fg-muted`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-1`,checked:i,onChange:e=>a(e.target.checked),"data-testid":`locked-keep-unlocked`}),(0,U.jsx)(`span`,{children:`Keep me unlocked on this PC`})]}),c?(0,U.jsx)(`div`,{className:`text-sm text-danger`,"data-testid":`locked-error`,children:c}):null,(0,U.jsx)(q,{type:`submit`,variant:`primary`,busy:o,disabled:!n,children:`Unlock`}),(0,U.jsxs)(`div`,{className:`text-xs text-fg-faint`,children:[`Signed in as `,e.account?.email??`this account`,` ·`,` `,(0,U.jsx)(`button`,{type:`button`,className:`underline hover:text-fg`,onClick:()=>void t.logout(),children:`Sign out`})]})]}),(0,U.jsx)(Zk,{})]})}var lA={mode:`names`,mine:!0,model:!0,tools:!1,subagents:!1,projectId:null,when:`any`,caseSensitive:!1,wholeWord:!1};function uA(e){return Object.keys(lA).some(t=>e[t]!==lA[t])}function dA(e,t=Date.now()){if(e===`any`)return null;if(e===`today`){let e=new Date(t);return e.setHours(0,0,0,0),e}return new Date(t-(e===`week`?7:30)*24*60*60*1e3)}function fA(e,t,n,r=Date.now()){if(n.projectId!==null&&e.projectId!==n.projectId)return!1;let i=dA(n.when,r);if(i&&e.mtime<i.getTime())return!1;if((n.caseSensitive||n.wholeWord)&&t.trim()!==``){let r=[e.title,e.firstPrompt,e.lastPrompt,e.projectDir],i={caseSensitive:n.caseSensitive,wholeWord:n.wholeWord};if(!r.some(e=>typeof e==`string`&&Te(e,t,i)))return!1}return!0}function pA(e,t,n=Date.now()){let r=e.trim();if(r.length<2||!t.mine&&!t.model&&!t.tools)return null;let i=dA(t.when,n);return{q:r,limit:200,from:t.mine&&t.model?`both`:t.mine?`user`:t.model?`assistant`:`none`,tools:t.tools,subagents:t.subagents,...i?{since:i.toISOString()}:{},...t.projectId?{projectId:t.projectId}:{},caseSensitive:t.caseSensitive,wholeWord:t.wholeWord}}function mA({label:e,hint:t,checked:n,onChange:r,testId:i}){return(0,U.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 py-0.5 text-xs`,children:[(0,U.jsx)(`input`,{type:`checkbox`,className:`mt-0.5`,checked:n,onChange:e=>r(e.target.checked),"data-testid":i}),(0,U.jsxs)(`span`,{children:[(0,U.jsx)(`span`,{className:`text-fg`,children:e}),t?(0,U.jsx)(`span`,{className:`block text-[11px] text-fg-faint`,children:t}):null]})]})}var hA=`w-full rounded-md border border-border bg-surface px-2 py-1 text-xs text-fg focus:outline-none`;function gA({options:e,onChange:t,projects:n,onClose:r}){let i=(n,r)=>t({...e,[n]:r}),a=e.mode===`conversations`,o=a&&!e.mine&&!e.model&&!e.tools;return(0,U.jsxs)(`div`,{className:`absolute left-2 right-2 top-full z-30 mt-1 space-y-3 rounded-lg border border-border bg-surface p-3 shadow-xl`,onMouseDown:e=>{!(e.target instanceof HTMLSelectElement)&&!(e.target instanceof HTMLInputElement)&&e.preventDefault()},onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),r())},"data-testid":`search-options`,children:[(0,U.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,U.jsx)(`div`,{className:`text-[11px] font-semibold uppercase tracking-wide text-fg-faint`,children:`Search in`}),(0,U.jsx)(Mp,{label:`Search in`,value:e.mode,options:[{value:`names`,label:`Names & prompts`},{value:`conversations`,label:`Whole chats`}],onChange:e=>i(`mode`,e)}),(0,U.jsx)(`p`,{className:`text-[11px] text-fg-faint`,"data-testid":`search-mode-hint`,children:a?`Every message of every chat on this PC. Pick whose words to look in.`:`A chat’s name, its first and last message, and its folder.`})]}),a?(0,U.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,U.jsx)(mA,{label:`My messages`,checked:e.mine,onChange:e=>i(`mine`,e),testId:`search-opt-mine`}),(0,U.jsx)(mA,{label:`Model replies`,checked:e.model,onChange:e=>i(`model`,e),testId:`search-opt-model`}),(0,U.jsx)(mA,{label:`Tool calls & output`,hint:`Commands, file paths and what the tools answered.`,checked:e.tools,onChange:e=>i(`tools`,e),testId:`search-opt-tools`}),(0,U.jsx)(mA,{label:`Subagents’ conversations`,checked:e.subagents,onChange:e=>i(`subagents`,e),testId:`search-opt-subagents`}),o?(0,U.jsx)(`p`,{className:`text-[11px] text-warn`,children:`Tick at least one to search.`}):null]}):null,(0,U.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,U.jsxs)(`label`,{className:`space-y-1 text-[11px] text-fg-faint`,children:[(0,U.jsx)(`span`,{children:`Project`}),(0,U.jsxs)(`select`,{className:hA,value:e.projectId??``,onChange:e=>i(`projectId`,e.target.value||null),"data-testid":`search-opt-project`,children:[(0,U.jsx)(`option`,{value:``,children:`All projects`}),n.map(e=>(0,U.jsx)(`option`,{value:e.id,children:e.name},e.id))]})]}),(0,U.jsxs)(`label`,{className:`space-y-1 text-[11px] text-fg-faint`,children:[(0,U.jsx)(`span`,{children:`When`}),(0,U.jsxs)(`select`,{className:hA,value:e.when,onChange:e=>i(`when`,e.target.value),"data-testid":`search-opt-when`,children:[(0,U.jsx)(`option`,{value:`any`,children:`Any time`}),(0,U.jsx)(`option`,{value:`today`,children:`Today`}),(0,U.jsx)(`option`,{value:`week`,children:`Last 7 days`}),(0,U.jsx)(`option`,{value:`month`,children:`Last 30 days`})]})]})]}),(0,U.jsxs)(`div`,{className:`flex flex-wrap gap-x-4`,children:[(0,U.jsx)(mA,{label:`Match case`,checked:e.caseSensitive,onChange:e=>i(`caseSensitive`,e),testId:`search-opt-case`}),(0,U.jsx)(mA,{label:`Whole words`,checked:e.wholeWord,onChange:e=>i(`wholeWord`,e),testId:`search-opt-word`})]}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border pt-2`,children:[(0,U.jsx)(`button`,{type:`button`,className:H(`text-xs`,uA(e)?`text-accent hover:underline`:`text-fg-faint`),disabled:!uA(e),onClick:()=>t(lA),"data-testid":`search-opt-reset`,children:`Reset`}),(0,U.jsx)(`button`,{type:`button`,className:`rounded-md bg-surface-2 px-2 py-1 text-xs text-fg hover:bg-surface-3`,onClick:r,"data-testid":`search-opt-done`,children:`Done`})]})]})}function _A(e,t,n){let r=we(t,{caseSensitive:n.caseSensitive,wholeWord:n.wholeWord});if(!r)return[{text:e,hit:!1}];let i=[],a=0;for(let t of e.matchAll(r)){let n=t.index??0;t[0].length!==0&&(n>a&&i.push({text:e.slice(a,n),hit:!1}),i.push({text:t[0],hit:!0}),a=n+t[0].length)}return a<e.length&&i.push({text:e.slice(a),hit:!1}),i}function vA(e){return e.kind===`tool`?e.tool??`Tool`:e.role===`assistant`?`Model`:`You`}function yA({query:e,options:t}){let{state:n,actions:r}=W(),i=(0,v.useMemo)(()=>pA(e,t),[e,t]),[a,o]=(0,v.useState)(null),s=i?JSON.stringify(i):``;(0,v.useEffect)(()=>{if(!i)return;let e=!0,t=setTimeout(()=>{r.searchTranscripts(i).then(t=>{e&&o({key:s,res:t})})},350);return()=>{e=!1,clearTimeout(t)}},[s,r]);let c=a&&a.key===s?a:null,l=(0,v.useMemo)(()=>{let e=new Map;for(let t of c?.res?.hits??[]){let r=n.sessions.find(e=>e.id===t.sessionId)?.title||t.title||`Untitled chat`,i=e.get(t.sessionId)??{title:r,hits:[]};i.hits.push(t),e.set(t.sessionId,i)}return[...e.entries()]},[c,n.sessions]);if(!i)return(0,U.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-fg-faint`,"data-testid":`transcript-search-idle`,children:e.trim().length<2?`Type at least two characters to search every chat.`:`Tick what to look in — your messages, the model’s replies or the tools’ side.`});if(!c)return(0,U.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-fg-faint`,"data-testid":`transcript-search-busy`,children:`Searching every chat…`});if(c.res===null)return(0,U.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-danger`,"data-testid":`transcript-search-failed`,children:`This PC could not search its chats. Try again, or update OonaCode.`});let u=c.res.hits.length;return(0,U.jsxs)(`div`,{className:`pb-2`,"data-testid":`transcript-search-results`,children:[(0,U.jsx)(`div`,{className:`px-3 py-1.5 text-[11px] text-fg-faint`,children:u===0?`No message on this PC says that.`:`${u}${c.res.truncated?`+`:``} ${u===1?`message`:`messages`} in ${l.length} ${l.length===1?`chat`:`chats`}`}),l.map(([n,i])=>(0,U.jsxs)(`div`,{className:`mb-1.5`,"data-testid":`transcript-search-chat-${n}`,children:[(0,U.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-1.5 rounded px-2 py-1 text-left text-[13px] font-semibold text-fg hover:bg-surface-2`,onClick:()=>r.openChatWithSearch(n,e.trim()),children:[(0,U.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:i.title}),(0,U.jsx)(`span`,{className:`shrink-0 rounded-full bg-surface-3 px-1.5 text-[10px] font-semibold text-fg-muted`,children:i.hits.length})]}),i.hits.map(i=>(0,U.jsxs)(`button`,{type:`button`,className:`block w-full rounded px-2 py-1 pl-4 text-left text-xs hover:bg-surface-2`,onClick:()=>r.openChatWithSearch(n,e.trim()),"data-testid":`transcript-search-hit`,children:[(0,U.jsxs)(`span`,{className:`mb-0.5 flex items-center gap-1.5 text-[10px] text-fg-faint`,children:[i.kind===`tool`?(0,U.jsx)(K.Tool,{className:`h-3 w-3`}):i.role===`assistant`?(0,U.jsx)(K.Bot,{className:`h-3 w-3`}):(0,U.jsx)(K.User,{className:`h-3 w-3`}),(0,U.jsx)(`span`,{className:`font-medium text-fg-muted`,children:vA(i)}),i.subpath?(0,U.jsx)(`span`,{children:`· subagent`}):null,i.timestamp?(0,U.jsx)(`span`,{className:`ml-auto`,children:ed(i.timestamp)}):null]}),(0,U.jsx)(`span`,{className:`line-clamp-3 text-fg-muted`,children:_A(i.snippet,e,t).map((e,t)=>e.hit?(0,U.jsx)(`mark`,{className:`rounded bg-warn-soft px-0.5 text-fg`,children:e.text},t):(0,U.jsx)(`span`,{children:e.text},t))})]},`${i.seq}`))]},n))]})}function bA({name:e,state:t,behind:n,detail:r}){return(0,U.jsxs)(`div`,{"data-testid":`sync-side`,className:`min-w-0 flex-1 rounded-md border p-3 ${n?`border-warn bg-warn-soft/40`:`border-border bg-surface-2`}`,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-sm font-medium`,children:[(0,U.jsx)(`span`,{className:`min-w-0 truncate`,children:e}),n?(0,U.jsx)(`span`,{className:`shrink-0 text-[11px] font-normal text-warn`,children:`behind`}):null]}),(0,U.jsx)(`div`,{className:`mt-1 text-[11px] text-fg-faint`,children:t.entryCount===null?`size not read`:`${t.entryCount} ${t.entryCount===1?`entry`:`entries`}`}),(0,U.jsx)(`div`,{className:`text-[11px] text-fg-faint`,title:td(t.lastEntryAt),children:t.lastEntryAt?`last message ${ed(t.lastEntryAt)}`:`no timestamps`}),r?(0,U.jsx)(`div`,{className:`mt-1 break-all text-[11px] text-fg-faint`,children:r}):null]})}function xA({sessionId:e,sessionTitle:t,onClose:n}){let{actions:r}=W(),[i,a]=(0,v.useState)(null),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(!1),[u,d]=(0,v.useState)(null),f=(0,v.useCallback)(async()=>{if(e){s(!0);try{a(await r.refreshSessionLink(e))}finally{s(!1)}}},[e,r]);(0,v.useEffect)(()=>{d(null),a(null),f()},[f]);let p=async()=>{if(e){l(!0);try{let t=await r.syncSessionDown(e);d(t),t&&a(t.link)}finally{l(!1)}}},m=i?.status===`ours-behind`,h=i?.status===`theirs-behind`;return(0,U.jsx)(Ap,{open:e!==null,title:`Sync with the original chat`,onClose:n,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{variant:`ghost`,onClick:n,children:`Close`}),(0,U.jsx)(q,{variant:`primary`,busy:c,onClick:()=>void p(),disabled:!i?.canDownstream||o,"data-testid":`sync-down-confirm`,children:c?`Syncing…`:m?`Bring the new messages in`:`Check again`})]}),children:o&&!i?(0,U.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-sm text-fg-muted`,children:[(0,U.jsx)(K.Spinner,{className:`w-4 h-4 spin`}),` Reading the original…`]}):i?(0,U.jsxs)(`div`,{className:`space-y-3`,children:[(0,U.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,U.jsx)(bA,{name:`OonaCode · ${t}`,state:i.ours,behind:m}),(0,U.jsx)(bA,{name:i.agentName,state:i.theirs,behind:h,detail:i.file})]}),(0,U.jsx)(`p`,{className:`text-sm text-fg-muted`,"data-testid":`sync-explanation`,children:m?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`strong`,{children:[i.agentName,` has newer messages.`]}),` Bringing them in adds them to this chat — nothing here is replaced or removed, and `,i.agentName,` is not written to.`]}):h?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`strong`,{children:`This chat is the newer one.`}),` Nothing is sent back: OonaCode never writes into your `,i.agentName,` install, so the copy over there stays as it is.`]}):(0,U.jsx)(U.Fragment,{children:`Both copies are at the same point. There is nothing to bring in.`})}),u?(0,U.jsx)(`div`,{className:`rounded-md border border-border bg-surface-2 p-3 text-sm`,"data-testid":`sync-result`,children:u.added>0?`${u.added} new ${u.added===1?`message`:`messages`} added to this chat.`:`Already up to date — nothing to bring in.`}):null]}):(0,U.jsx)(`p`,{className:`py-4 text-sm text-fg-muted`,children:`This PC no longer has the chat this one was imported from, so there is nothing to compare it with. Nothing is wrong with the chat itself — it stays exactly as it is.`})})}function SA({status:e}){return(0,U.jsx)(`span`,{className:H(`inline-block h-2 w-2 shrink-0 rounded-full`,e===`running`?`bg-accent animate-pulse`:e===`waiting_permission`?`bg-warn animate-pulse`:e===`error`?`bg-danger`:`bg-transparent`),"aria-hidden":!0})}function CA(e){return e.some(e=>e.status===`running`)?`running`:e.some(e=>e.status===`waiting_permission`)?`waiting_permission`:`idle`}function wA({sessions:e,testId:t}){let n=CA(e);if(n===`idle`)return null;let r=e.filter(e=>e.status===`running`||e.status===`waiting_permission`).length;return(0,U.jsx)(`span`,{className:`inline-flex shrink-0 items-center`,title:n===`running`?`${r} chat${r===1?``:`s`} working`:`${r} chat${r===1?``:`s`} waiting for permission`,"aria-label":`${r} active chat${r===1?``:`s`}`,"data-testid":t,children:(0,U.jsx)(SA,{status:n})})}var TA=`flex w-full items-center gap-1 rounded px-2 py-1 text-left text-[11px] font-semibold uppercase tracking-wide text-fg-faint hover:bg-surface-2`,EA=`flex w-full items-center gap-1.5 rounded border-l-2 border-project/70 bg-surface-2/40 px-2 py-1.5 text-left text-[13px] font-semibold tracking-normal text-fg hover:bg-surface-2`;function DA(){let{state:e,actions:t}=W(),[n,r]=(0,v.useState)(lA),[i,a]=(0,v.useState)({}),[o,s]=(0,v.useState)(null),[c,l]=(0,v.useState)(null),[u,d]=(0,v.useState)(!1),[f,p]=(0,v.useState)(null),[m,h]=(0,v.useState)(null),g=(0,v.useCallback)(()=>p(null),[]),[_,y]=(0,v.useState)(null),b=(0,v.useCallback)(()=>y(null),[]),x=AA(),S=e=>a(t=>({...t,[e]:t[e]!==!0})),C=e=>i[e]===!0,w=e.prefs.collapsedProjects,T=e=>w.includes(e),E=e=>{let n=T(e)?w.filter(t=>t!==e):[...w,e];t.savePrefs({collapsedProjects:n})},D=e=>{t.savePrefs({collapsedProjects:e?O.map(e=>e.key):[]})},O=(0,v.useMemo)(()=>{let t=new Map;for(let n of e.vaultProjects)t.set(n.id,{name:n.name,sessions:[]});let r=[];for(let n of e.sessions){if(e.remote.tabs[n.id])continue;let i=n.projectId?t.get(n.projectId):void 0;i?i.sessions.push(n):r.push(n)}let i=[...t.entries()].map(([e,t])=>({key:e,name:t.name,projectId:e,sessions:t.sessions.slice().sort((e,t)=>t.mtime-e.mtime)}));if(i.sort((e,t)=>e.name.localeCompare(t.name,void 0,{sensitivity:`base`})),(r.length>0||i.length===0)&&i.push({key:`none`,name:`No project`,projectId:null,sessions:r.slice().sort((e,t)=>t.mtime-e.mtime)}),e.search.trim()!==``){let t=Date.now();return i.map(r=>({...r,sessions:r.sessions.filter(r=>fA(r,e.search,n,t))})).filter(e=>e.sessions.length>0)}return i},[e.sessions,e.vaultProjects,e.remote.tabs,e.search,n]),ee=(0,v.useMemo)(()=>e.remote.hosts.filter(e=>!e.isSelf),[e.remote.hosts]),k=()=>{let e=C(`remote`);S(`remote`),e&&t.refreshHosts()},te=e=>{t.setSearch(e),t.refreshSessions(e)},[A,j]=(0,v.useState)(!1),ne=(0,v.useRef)(null),[re,M]=(0,v.useState)(!1),[N,ie]=(0,v.useState)(``),ae=n.mode===`conversations`,oe=ae?N:e.search,se=A||oe!==``||re;(0,v.useEffect)(()=>{A&&ne.current?.focus()},[A]);let ce=()=>{e.search!==``&&te(``),ie(``),M(!1),j(!1)},le=t=>{t.mode!==n.mode&&(t.mode===`conversations`?(ie(e.search),e.search!==``&&te(``)):(N!==``&&te(N),ie(``))),r(t)},ue=e.sessions.length,de=e.connection.hostName??`This PC`;return(0,U.jsxs)(`nav`,{className:`flex h-full w-full flex-col bg-surface`,"aria-label":`Sessions`,children:[(0,U.jsxs)(`div`,{className:`relative flex flex-wrap items-center justify-end gap-x-2 gap-y-1 border-b border-border p-2`,children:[(0,U.jsx)(J,{label:`Search chats`,onClick:()=>j(!0),"data-testid":`open-search`,children:(0,U.jsx)(K.Search,{})}),(0,U.jsx)(`span`,{className:`flex-1`}),se?(0,U.jsxs)(`div`,{className:`absolute inset-0 z-10 flex items-center gap-1 bg-surface px-2`,"data-testid":`sidebar-search`,children:[(0,U.jsxs)(`div`,{className:`relative flex-1`,children:[(0,U.jsx)(K.Search,{className:`pointer-events-none absolute left-2 top-2 w-3.5 h-3.5 text-fg-faint`}),(0,U.jsx)(`input`,{ref:ne,"aria-label":`Search sessions`,className:H(Y,`pl-7`),placeholder:ae?`Search every chat`:`Search chats`,value:oe,onChange:e=>ae?ie(e.target.value):te(e.target.value),onBlur:()=>{oe===``&&!re&&j(!1)},onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),ce())}})]}),(0,U.jsxs)(J,{label:re?`Hide search options`:`Search options`,className:H(`relative`,re&&`text-accent`),"aria-pressed":re,onMouseDown:e=>e.preventDefault(),onClick:()=>M(e=>!e),"data-testid":`search-options-toggle`,children:[(0,U.jsx)(K.Sliders,{}),uA(n)?(0,U.jsx)(`span`,{className:`absolute right-0.5 top-0.5 h-1.5 w-1.5 rounded-full bg-accent`,"data-testid":`search-options-dot`}):null]}),(0,U.jsx)(J,{label:`Close search`,onMouseDown:e=>e.preventDefault(),onClick:ce,"data-testid":`close-search`,children:(0,U.jsx)(K.X,{})})]}):null,se&&re?(0,U.jsx)(gA,{options:n,onChange:le,projects:e.vaultProjects,onClose:()=>{M(!1),ne.current?.focus()}}):null,(0,U.jsx)(J,{label:`Refresh sessions`,onClick:()=>{t.refreshSessions(),t.refreshHosts()},children:(0,U.jsx)(K.Refresh,{className:e.sessionsLoading?`spin`:``})}),e.account?.loggedIn?(0,U.jsx)(J,{label:`Import chats from your other coding agents`,onClick:()=>t.openDialog(`import-claude`),"data-testid":`open-import-claude`,children:(0,U.jsx)(K.Download,{})}):null,e.account?.loggedIn?(0,U.jsx)(J,{label:`Export my chats`,onClick:()=>t.openDialog(`export-chats`),"data-testid":`open-export-chats`,children:(0,U.jsx)(K.Upload,{})}):null,(0,U.jsx)(J,{label:`Collapse all projects`,onClick:()=>D(!0),"data-testid":`projects-collapse-all`,children:(0,U.jsx)(K.CollapseAll,{})}),(0,U.jsx)(J,{label:`Expand all projects`,onClick:()=>D(!1),"data-testid":`projects-expand-all`,children:(0,U.jsx)(K.ExpandAll,{})}),(0,U.jsx)(J,{label:`Projects`,onClick:()=>t.openDialog(`projects`),"data-testid":`open-projects`,children:(0,U.jsx)(K.Project,{})}),(0,U.jsx)(J,{label:e.prefs.sidebarPinned?`Hide the session list — it slides in when the pointer reaches the left edge`:`Pin the session list beside the chat`,className:H(`hidden md:inline-flex`,e.prefs.sidebarPinned?`text-accent`:`text-fg-muted`),"aria-pressed":e.prefs.sidebarPinned,onClick:()=>void t.savePrefs({sidebarPinned:!e.prefs.sidebarPinned}),"data-testid":`sidebar-pin`,children:(0,U.jsx)(K.Pin,{})})]}),(0,U.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-1 pb-2`,children:ae&&N.trim()!==``?(0,U.jsx)(yA,{query:N,options:n}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`div`,{className:`mb-1`,"data-testid":`sessions-local`,children:[(0,U.jsxs)(`button`,{type:`button`,className:TA,onClick:()=>S(`local`),"aria-expanded":!C(`local`),title:de,children:[(0,U.jsx)(K.Chevron,{open:!C(`local`),className:`w-3 h-3`}),(0,U.jsx)(K.Monitor,{className:`w-3 h-3`}),(0,U.jsxs)(`span`,{className:`truncate`,children:[`Local · `,de]}),(0,U.jsx)(`span`,{className:`ml-auto font-normal`,children:ue})]}),C(`local`)?null:(0,U.jsxs)(U.Fragment,{children:[e.sessionsError?(0,U.jsx)(`div`,{className:`px-2 py-2 text-xs text-danger`,children:e.sessionsError}):null,!e.sessionsLoading&&ue===0&&!e.sessionsError?(0,U.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-fg-faint`,children:e.search?`No sessions match.`:`No sessions yet — press + to start one.`}):null,O.map(n=>{let r=`local:${n.key}`;return(0,U.jsxs)(`div`,{className:`mb-1 pl-2`,"data-testid":`project-group-${n.key}`,children:[(0,U.jsxs)(`div`,{className:`group relative flex items-center`,children:[(0,U.jsx)(FA,{group:n,collapsed:T(n.key),onToggle:()=>E(n.key),onMenu:(e,t)=>y({group:n,at:e,el:t}),menuOpen:_?.group.key===n.key}),n.projectId?(0,U.jsxs)(`div`,{className:`absolute right-1 hidden items-center rounded bg-surface/90 group-hover:flex group-focus-within:flex`,children:[(0,U.jsx)(J,{label:`Settings of ${n.name}`,className:`p-1`,"data-testid":`project-settings-${n.key}`,onClick:e=>{e.stopPropagation(),t.openProjectSettings(n.projectId)},children:(0,U.jsx)(K.Settings,{className:`w-3.5 h-3.5`})}),(0,U.jsx)(J,{label:`New chat in ${n.name}`,className:`p-1`,"data-testid":`project-new-chat-${n.key}`,onClick:e=>{e.stopPropagation(),t.newTab({projectId:n.projectId})},children:(0,U.jsx)(K.Plus,{className:`w-3.5 h-3.5`})})]}):null]}),T(n.key)?null:n.sessions.map(t=>(0,U.jsx)(zA,{session:t,active:t.id===e.currentSessionId,link:e.sessionLinks[t.id]??null,onMenu:(e,n)=>p({session:t,at:e,el:n}),menuOpen:f?.session.id===t.id},t.id))]},r)})]})]}),(0,U.jsxs)(`div`,{className:`mb-1`,"data-testid":`sessions-remote`,children:[(0,U.jsxs)(`button`,{type:`button`,className:TA,onClick:k,"aria-expanded":!C(`remote`),children:[(0,U.jsx)(K.Chevron,{open:!C(`remote`),className:`w-3 h-3`}),(0,U.jsx)(K.Globe,{className:`w-3 h-3`}),(0,U.jsx)(`span`,{className:`truncate`,children:`Remote`}),(0,U.jsx)(`span`,{className:`ml-auto font-normal`,children:ee.length})]}),C(`remote`)?null:(0,U.jsxs)(U.Fragment,{children:[!e.remote.supported||e.remote.reason===`logged_out`?(0,U.jsx)(`div`,{className:`px-3 py-3 text-xs text-fg-faint`,children:`Sign in to see the sessions of your other devices.`}):ee.length===0?(0,U.jsx)(`div`,{className:`px-3 py-3 text-xs text-fg-faint`,children:e.remote.loading?`Looking for your other devices…`:`No other devices yet.`}):null,ee.map(e=>(0,U.jsx)(OA,{host:e,collapsed:C(`host:${e.hostId}`)||i[`host:${e.hostId}`]===void 0,onToggle:()=>{let n=`host:${e.hostId}`,r=i[n]===void 0||i[n]===!0;a(e=>({...e,[n]:!r})),r&&t.refreshHostSessions(e.hostId)}},e.hostId))]})]})]})}),(0,U.jsx)(`div`,{className:`shrink-0 border-t border-border px-3 py-2 text-[11px] text-fg-faint`,children:(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,U.jsxs)(`button`,{type:`button`,"data-testid":`app-version`,title:`What's new in this version`,className:`truncate hover:text-fg hover:underline`,onClick:()=>t.openDialog(`whats-new`),children:[`OonaCode Desktop v`,x]}),(0,U.jsx)(J,{label:`Lock this device — vault and sessions`,className:`p-1`,"data-testid":`lock-device`,onClick:()=>d(!0),children:(0,U.jsx)(K.Lock,{className:`h-3.5 w-3.5`})})]})}),(0,U.jsx)(fE,{open:_!==null,at:_?.at??{x:0,y:0},anchorEl:_?.el??null,label:`Project actions`,testId:`project-context-menu`,onClose:b,items:_?jA({group:_.group,collapsed:T(_.group.key),actions:t,onToggle:()=>E(_.group.key)}):[]}),(0,U.jsx)(fE,{open:f!==null,at:f?.at??{x:0,y:0},anchorEl:f?.el??null,label:`Chat actions`,onClose:g,items:f?MA({session:f.session,link:e.sessionLinks[f.session.id]??null,actions:t,onSync:()=>h(f.session),onRename:()=>l(f.session),onDelete:()=>s(f.session)}):[]}),(0,U.jsx)(xA,{sessionId:m?.id??null,sessionTitle:m?sd(m):``,onClose:()=>h(null)}),(0,U.jsx)(Pp,{open:o!==null,title:`Delete this chat?`,message:`Its conversation is removed from this PC and from your account, so it stops showing on your other devices and on the website. Your files, folder and code are not touched — only the chat is deleted.`,onConfirm:()=>{o&&t.deleteSession(o.id)},onClose:()=>s(null)}),(0,U.jsx)(Fp,{open:c!==null,title:`Rename chat`,label:`Session title`,initialValue:c?sd(c):``,onSubmit:e=>{c&&e!==sd(c)&&t.renameSession(c.id,e)},onClose:()=>l(null)}),(0,U.jsx)(Pp,{open:u,title:`Lock this device?`,confirmLabel:`Lock`,message:`Every chat closes and nothing on this PC can be read or run until you unlock — here with your password, or remotely from another device.`,onConfirm:()=>void t.lockDevice(),onClose:()=>d(!1)})]})}function OA({host:e,collapsed:t,onToggle:n}){let{state:r,actions:i}=W(),a=e.label||e.hostName,o=r.remote.sessions[e.hostId],[s,c]=(0,v.useState)(null),[l,u]=(0,v.useState)(null),d=e.remoteAccessOff===!0;return(0,U.jsxs)(`div`,{className:`mb-1 pl-2`,"data-testid":`remote-host-${e.hostId}`,children:[(0,U.jsxs)(`div`,{className:`group relative flex items-center`,children:[(0,U.jsxs)(`button`,{type:`button`,className:TA,onClick:n,"aria-expanded":!t,title:e.online?`${a} — online`:`${a} — offline (read-only history)`,children:[(0,U.jsx)(K.Chevron,{open:!t,className:`w-3 h-3`}),(0,U.jsx)(`span`,{className:H(`inline-block h-2 w-2 shrink-0 rounded-full`,e.online?`bg-ok`:`bg-fg-faint`),"aria-label":e.online?`online`:`offline`}),(0,U.jsx)(`span`,{className:`truncate normal-case`,children:a}),d?(0,U.jsx)(`span`,{className:`shrink-0 rounded-full bg-warn-soft px-1.5 text-[10px] font-normal normal-case text-warn`,"data-testid":`remote-off-${e.hostId}`,children:`remote access off`}):null,(0,U.jsx)(`span`,{className:`ml-auto font-normal`,children:!d&&o?o.length:``})]}),(0,U.jsxs)(`div`,{className:`absolute right-1 hidden items-center rounded bg-surface/90 group-hover:flex group-focus-within:flex`,children:[(0,U.jsx)(J,{label:d?Zc(a):e.online?`New chat on ${a}`:`${a} is offline — a new chat has to start on a PC that is awake`,className:`p-1`,disabled:!e.online||d,"data-testid":`remote-new-chat-${e.hostId}`,onClick:()=>void i.newRemoteTab(e.hostId),children:(0,U.jsx)(K.Plus,{className:`w-3 h-3`})}),(0,U.jsx)(J,{label:`Unlock this device`,className:`p-1`,disabled:d,"data-testid":`remote-unlock-${e.hostId}`,onClick:()=>c(`unlock`),children:(0,U.jsx)(K.Lock,{className:`w-3 h-3`})}),(0,U.jsx)(J,{label:`Rename device`,className:`p-1`,onClick:()=>c(`rename`),children:(0,U.jsx)(K.Edit,{className:`w-3 h-3`})})]}),(0,U.jsx)(Fp,{open:s===`unlock`,title:`Unlock "${a}" remotely`,label:`Your account password — it never leaves this PC: the keys are sealed to that device and the server cannot read them.`,password:!0,submitLabel:`Unlock`,onSubmit:t=>void i.remoteUnlockHost(e.hostId,t),onClose:()=>c(null)}),(0,U.jsx)(Fp,{open:s===`rename`,title:`Rename device`,label:`Device name`,initialValue:a,onSubmit:t=>{t!==a&&i.renameHost(e.hostId,t)},onClose:()=>c(null)})]}),!t&&d?(0,U.jsx)(`div`,{className:`px-3 py-2 text-xs text-warn`,"data-testid":`remote-off-note-${e.hostId}`,children:Zc(a)}):t?null:o===void 0?(0,U.jsx)(`div`,{className:`px-3 py-2 text-xs text-fg-faint`,children:`Loading…`}):o.length===0?(0,U.jsx)(`div`,{className:`px-3 py-2 text-xs text-fg-faint`,children:`No sessions on this device.`}):o.map(t=>(0,U.jsx)(kA,{host:e,session:t,active:t.id===r.currentSessionId,onConfirmDelete:()=>u(t)},t.id)),(0,U.jsx)(Pp,{open:l!==null,title:`Delete this chat?`,message:`Its conversation is removed from ${e.hostName} and from your account, so it stops showing here and on the website. Files, folders and code on that PC are not touched — only the chat is deleted.`,onConfirm:()=>{l&&i.deleteRemoteSession(e.hostId,l.id)},onClose:()=>u(null)})]})}function kA({host:e,session:t,active:n,onConfirmDelete:r}){let{actions:i}=W(),a=sd(t);return(0,U.jsxs)(`div`,{className:H(`group flex items-center rounded-md`,n?`bg-accent-soft`:`hover:bg-surface-2`),children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>{i.openRemoteSession(e.hostId,t.id),window.innerWidth<768&&i.setSidebar(!1)},className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-left`,"aria-current":n?`true`:void 0,"data-testid":`remote-session-${t.id}`,title:e.online?void 0:`Read-only until that PC is online`,children:[(0,U.jsx)(SA,{status:t.status}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:H(`truncate text-sm`,n?`font-medium`:``),children:a}),(0,U.jsxs)(`div`,{className:`truncate text-[11px] text-fg-faint`,children:[ed(t.updatedAt),t.model?` · ${t.model}`:``,e.online?``:` · read-only`]})]})]}),(0,U.jsx)(`div`,{className:`mr-1 hidden items-center gap-0.5 rounded bg-surface/90 group-hover:flex group-focus-within:flex`,children:(0,U.jsx)(J,{label:e.online?`Delete this chat`:`That PC is asleep — a chat can only be deleted while the PC that holds it is online`,className:`p-1 hover:text-danger disabled:opacity-40`,disabled:!e.online,"data-testid":`remote-session-delete-${t.id}`,onClick:()=>{r()},children:(0,U.jsx)(K.Trash,{className:`w-3.5 h-3.5`})})})]})}function AA(){let{state:e}=W(),t=typeof window<`u`?window.oonacode:void 0;return Pf(t?.appVersion??e.bundleAppVersion??e.connection.appVersion??e.info?.appVersion??`0.0.0`,Nf({bridge:t,info:e.info}))}function jA({group:e,collapsed:t,actions:n,onToggle:r}){let i=[],a=e.projectId;return a?i.push({key:`settings`,label:`Project settings…`,icon:(0,U.jsx)(K.Settings,{className:`w-3.5 h-3.5`}),onSelect:()=>n.openProjectSettings(a),testId:`project-menu-settings`},{key:`new-chat`,label:`New chat in this project`,icon:(0,U.jsx)(K.Plus,{className:`w-3.5 h-3.5`}),onSelect:()=>n.newTab({projectId:a}),testId:`project-menu-new-chat`}):i.push({key:`new-project`,label:`New project…`,icon:(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5`}),onSelect:()=>n.openNewProject(),testId:`project-menu-new-project`}),i.push({key:`fold`,label:t?`Expand`:`Collapse`,icon:(0,U.jsx)(K.Chevron,{open:t,className:`w-3.5 h-3.5`}),separated:!0,onSelect:r,testId:`project-menu-fold`}),i}function MA({session:e,link:t,actions:n,onSync:r,onRename:i,onDelete:a}){let o=[];return t?.status===`ours-behind`&&o.push({key:`sync`,label:`Sync with ${t.agentName}…`,hint:`behind`,icon:(0,U.jsx)(K.Download,{className:`w-3.5 h-3.5`}),onSelect:r,testId:`session-menu-sync`}),o.push({key:`project`,label:`Move to Project`,icon:(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5`}),separated:o.length>0,onSelect:()=>n.openAssignProject(e.id),testId:`session-menu-project`},...e.projectId?[{key:`project-settings`,label:`Project settings…`,icon:(0,U.jsx)(K.Settings,{className:`w-3.5 h-3.5`}),onSelect:()=>n.openProjectSettings(e.projectId),testId:`session-menu-project-settings`}]:[],{key:`folder`,label:`Change folder…`,icon:(0,U.jsx)(K.Folder,{className:`w-3.5 h-3.5`}),onSelect:()=>{n.selectSession(e.id),n.openDialog(`project`)},testId:`session-menu-folder`},{key:`details`,label:`Details`,icon:(0,U.jsx)(K.Info,{className:`w-3.5 h-3.5`}),onSelect:()=>{n.selectSession(e.id),n.savePrefs({sessionPanelOpen:!0})},testId:`session-menu-details`},{key:`files`,label:`Files`,icon:(0,U.jsx)(K.File,{className:`w-3.5 h-3.5`}),onSelect:()=>{n.selectSession(e.id),n.savePrefs({explorerOpen:!0})},testId:`session-menu-files`},{key:`rename`,label:`Rename…`,icon:(0,U.jsx)(K.Edit,{className:`w-3.5 h-3.5`}),onSelect:i,testId:`session-menu-rename`},{key:`fork`,label:`Fork`,icon:(0,U.jsx)(K.Fork,{className:`w-3.5 h-3.5`}),onSelect:()=>void n.forkSession(e.id),testId:`session-menu-fork`},{key:`delete`,label:`Delete`,icon:(0,U.jsx)(K.Trash,{className:`w-3.5 h-3.5`}),danger:!0,separated:!0,onSelect:a,testId:`session-menu-delete`}),o}function NA({link:e}){return e?.status===`ours-behind`?(0,U.jsxs)(`span`,{className:`ml-1 inline-flex shrink-0 items-center gap-0.5 rounded bg-warn-soft px-1 text-[10px] font-medium leading-4 text-warn`,title:`${e.agentName} has newer messages in this chat — right-click to bring them in`,"data-testid":`session-behind-${e.sessionId}`,"aria-label":`behind its original`,children:[(0,U.jsx)(K.ArrowDown,{className:`w-2.5 h-2.5`}),`behind`]}):null}var PA={idle:`idle`,running:`working`,waiting_permission:`waiting for permission`,error:`error`};function FA({group:e,collapsed:t,onToggle:n,onMenu:r,menuOpen:i=!1}){let a=(0,v.useRef)(null),o=(0,v.useRef)(null),[s,c]=(0,v.useState)(null),l=(0,v.useCallback)(()=>{o.current!==null&&(clearTimeout(o.current),o.current=null),c(null)},[]),u=(0,v.useRef)(i);return u.current=i,(0,v.useEffect)(()=>{i&&l()},[i,l]),(0,v.useEffect)(()=>{if(s===null)return;let e=e=>{uE(e.target,a.current)&&l()};return window.addEventListener(`scroll`,e,!0),()=>window.removeEventListener(`scroll`,e,!0)},[s,l]),(0,v.useEffect)(()=>()=>{o.current!==null&&clearTimeout(o.current)},[]),(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`button`,{ref:a,type:`button`,className:EA,onClick:()=>{l(),n()},onMouseEnter:()=>{o.current!==null&&clearTimeout(o.current),!u.current&&(o.current=setTimeout(()=>{o.current=null,a.current&&!u.current&&c(a.current.getBoundingClientRect())},450))},onMouseLeave:l,onContextMenu:e=>{e.preventDefault(),l(),r({x:e.clientX,y:e.clientY},a.current)},"aria-expanded":!t,"data-testid":`project-header-${e.key}`,children:[(0,U.jsx)(K.Chevron,{open:!t,className:`w-3 h-3 shrink-0`}),(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5 shrink-0 text-project`}),(0,U.jsx)(`span`,{className:`truncate`,children:e.name}),(0,U.jsx)(wA,{sessions:e.sessions,testId:`project-busy-${e.key}`}),(0,U.jsx)(`span`,{className:`ml-auto shrink-0 rounded-full bg-surface-3 px-1.5 py-px text-[10px] font-semibold normal-case tracking-normal text-fg-muted`,"data-testid":`project-count-${e.key}`,children:e.sessions.length})]}),s===null?null:(0,U.jsx)(IA,{group:e,anchor:s})]})}function IA({group:e,anchor:t}){let{state:n}=W(),r=e.projectId?n.vaultProjects.find(t=>t.id===e.projectId):void 0,i=e.sessions.filter(e=>e.status===`running`||e.status===`waiting_permission`).length,a=e.sessions.reduce((e,t)=>e===null||t.updatedAt>e?t.updatedAt:e,null),o=[...new Set(e.sessions.map(e=>e.projectDir??e.cwd).filter(e=>typeof e==`string`&&e.length>0))],s=r?.instructions?.trim()??``,c=Math.max(8,Math.min(t.right+8,window.innerWidth-304-8)),l=Math.max(8,Math.min(t.top,window.innerHeight-320));return(0,xp.createPortal)((0,U.jsxs)(`div`,{role:`tooltip`,"data-testid":`project-details-${e.key}`,className:`fixed z-50 max-h-[20rem] w-[19rem] overflow-y-auto rounded-lg border border-border bg-surface p-3 text-xs shadow-lg`,style:{left:c,top:l},children:[(0,U.jsxs)(`div`,{className:`mb-2 flex items-center gap-1.5`,children:[(0,U.jsx)(K.Project,{className:`w-3.5 h-3.5 shrink-0 text-project`}),(0,U.jsx)(`span`,{className:`truncate text-sm font-medium text-fg`,children:e.name})]}),(0,U.jsxs)(`div`,{className:`space-y-1`,children:[(0,U.jsx)(LA,{label:`Chats`,value:String(e.sessions.length)}),(0,U.jsx)(LA,{label:`Working now`,value:i>0?String(i):null}),(0,U.jsx)(LA,{label:`Last activity`,value:a?ed(a):null}),(0,U.jsx)(LA,{label:o.length>1?`Folders`:`Folder`,value:o.length>1?`${o.length} folders`:o[0]??null})]}),e.projectId?(0,U.jsxs)(`div`,{className:`mt-2 border-t border-border pt-2`,children:[(0,U.jsx)(`div`,{className:`mb-1 text-fg-faint`,children:`Standing instructions`}),s?(0,U.jsx)(`div`,{className:`whitespace-pre-wrap break-words text-fg`,"data-testid":`project-instructions-${e.key}`,children:s.length>400?`${s.slice(0,400)}…`:s}):(0,U.jsx)(`div`,{className:`text-fg-faint`,children:`None — chats here start with nothing extra.`})]}):(0,U.jsx)(`div`,{className:`mt-2 border-t border-border pt-2 text-fg-faint`,children:`Chats filed under no project.`})]}),document.body)}function LA({label:e,value:t}){return t==null||t===``?null:(0,U.jsxs)(`div`,{className:`flex justify-between gap-3`,children:[(0,U.jsx)(`span`,{className:`shrink-0 text-fg-faint`,children:e}),(0,U.jsx)(`span`,{className:`min-w-0 truncate text-right text-fg`,title:t,children:t})]})}function RA({session:e,anchor:t}){let{state:n}=W(),r=n.providers.find(t=>t.definition.id===e.providerId)?.definition,i=r?.models.find(t=>t.id===e.model),a=e.projectId?n.vaultProjects.find(t=>t.id===e.projectId):void 0,o=rO.find(t=>t.value===e.permissionMode)?.label??e.permissionMode,s=Zu(e.totalCostUsd)+(e.poolCredits!==void 0&&e.poolCredits!==null?` · ${e.poolCredits} credits`:``),c=Math.max(8,Math.min(t.right+8,window.innerWidth-304-8)),l=Math.max(8,Math.min(t.top,window.innerHeight-360));return(0,xp.createPortal)((0,U.jsxs)(`div`,{role:`tooltip`,"data-testid":`session-details-${e.id}`,className:`fixed z-50 max-h-[22rem] w-[19rem] overflow-y-auto rounded-lg border border-border bg-surface p-3 text-xs shadow-lg`,style:{left:c,top:l},children:[(0,U.jsx)(`div`,{className:`mb-2 truncate text-sm font-medium text-fg`,children:sd(e)}),(0,U.jsxs)(`div`,{className:`space-y-1`,children:[(0,U.jsx)(LA,{label:`Model`,value:r&&e.model?`${e.model} · ${r.displayName}`:e.model}),(0,U.jsx)(LA,{label:`Effort`,value:e.effort??`default`}),(0,U.jsx)(LA,{label:`Mode`,value:o}),(0,U.jsx)(LA,{label:`Status`,value:PA[e.status]}),(0,U.jsx)(LA,{label:`Context window`,value:i?.contextWindow?`${$u(i.contextWindow)} tokens`:null}),(0,U.jsx)(LA,{label:`Tokens`,value:`${$u(e.inputTokens)} in · ${$u(e.outputTokens)} out`}),(0,U.jsx)(LA,{label:`Cost`,value:s}),(0,U.jsx)(LA,{label:`Messages`,value:String(e.entryCount)}),(0,U.jsx)(LA,{label:`Folder`,value:e.projectDir??e.cwd}),(0,U.jsx)(LA,{label:`Project`,value:a?.name??null}),(0,U.jsx)(LA,{label:`Created`,value:td(e.createdAt)}),(0,U.jsx)(LA,{label:`Updated`,value:td(e.updatedAt)}),(0,U.jsx)(LA,{label:`Forked from`,value:e.forkedFrom}),(0,U.jsx)(LA,{label:`Subagents`,value:e.hasSubagents?`yes`:null}),(0,U.jsx)(LA,{label:`Mirrored`,value:e.mirrored?`yes`:null}),(0,U.jsx)(LA,{label:`Engine since`,value:td(e.engineSince)})]})]}),document.body)}function zA({session:e,active:t,link:n,onMenu:r,menuOpen:i=!1}){let{actions:a}=W(),o=sd(e),s=e=>{let t=e.currentTarget.getBoundingClientRect();r({x:t.left,y:t.bottom+2},c.current)},c=(0,v.useRef)(null),l=(0,v.useRef)(null),[u,d]=(0,v.useState)(null),f=(0,v.useCallback)(()=>{l.current!==null&&(clearTimeout(l.current),l.current=null),d(null)},[]),p=(0,v.useRef)(i);return p.current=i,(0,v.useEffect)(()=>{i&&f()},[i,f]),(0,v.useEffect)(()=>{if(u===null)return;let e=e=>{uE(e.target,c.current)&&f()};return window.addEventListener(`scroll`,e,!0),()=>window.removeEventListener(`scroll`,e,!0)},[u,f]),(0,v.useEffect)(()=>()=>{l.current!==null&&clearTimeout(l.current)},[]),(0,U.jsxs)(`div`,{ref:c,className:H(`group relative flex items-center rounded-md`,t?`bg-accent-soft`:`hover:bg-surface-2`),onMouseEnter:()=>{l.current!==null&&clearTimeout(l.current),!p.current&&(l.current=setTimeout(()=>{l.current=null,c.current&&!p.current&&d(c.current.getBoundingClientRect())},450))},onMouseLeave:f,onClick:f,onContextMenu:e=>{e.preventDefault(),f(),r({x:e.clientX,y:e.clientY},c.current)},children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>{a.selectSession(e.id),window.innerWidth<768&&a.setSidebar(!1)},className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-left`,"aria-current":t?`true`:void 0,"data-testid":`session-${e.id}`,children:[(0,U.jsx)(SA,{status:e.status}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`flex items-center gap-1`,children:(0,U.jsx)(`span`,{className:H(`min-w-0 flex-1 truncate text-sm`,t?`text-fg font-medium`:`text-fg`),children:o})}),(0,U.jsxs)(`div`,{className:`flex min-w-0 items-center text-[11px] text-fg-faint`,children:[(0,U.jsxs)(`span`,{className:`truncate`,children:[ed(e.updatedAt),e.model?` · ${e.model}`:``,` · ${rd(e.projectDir??e.cwd)}`]}),(0,U.jsx)(NA,{link:n})]})]})]}),(0,U.jsx)(J,{label:`Chat actions`,className:`absolute right-1 hidden bg-surface/90 p-1 group-hover:flex group-focus-within:flex`,"data-testid":`session-menu-${e.id}`,onClick:e=>{e.stopPropagation(),s(e)},children:(0,U.jsx)(K.More,{className:`w-3.5 h-3.5`})}),u===null?null:(0,U.jsx)(RA,{session:e,anchor:u})]})}function BA(e,t){return t.scrollWidth<=t.clientWidth||Math.abs(e.deltaX)>Math.abs(e.deltaY)||e.deltaY===0?0:e.deltaMode===1?e.deltaY*16:e.deltaMode===2?e.deltaY*t.clientWidth:e.deltaY}function VA(e){let t=e.split(/[\\/]+/).filter(Boolean);return t[t.length-1]??e}function HA(){let{state:e,actions:t}=W(),n=hp(),r=mp(),i=n?.projectDir??(r?.projectDir?r.cwd:null)??null,a=i?VA(i):`no folder`,[o,s]=(0,v.useState)(null),c=e.currentSessionId?e.files[e.currentSessionId]:void 0,l=c?.active??null,[u,d]=(0,v.useState)(null),[f,p]=(0,v.useState)(null),m=(0,v.useCallback)(()=>p(null),[]),h=(0,v.useRef)(null);(0,v.useEffect)(()=>{h.current?.scrollIntoView({block:`nearest`,inline:`nearest`})},[l]);let g=e.tabs.ids,_=f?f.kind===`chat`?[{key:`rename`,label:`Rename…`,icon:(0,U.jsx)(K.Edit,{className:`w-3.5 h-3.5`}),onSelect:()=>{t.selectSession(f.id),d(f.id)},testId:`tab-menu-rename`},{key:`close`,label:`Close`,icon:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`}),separated:!0,onSelect:()=>t.closeTab(f.id),testId:`tab-menu-close`},{key:`close-others`,label:`Close other tabs`,disabled:g.length<2,onSelect:()=>{for(let e of g)e!==f.id&&t.closeTab(e)},testId:`tab-menu-close-others`},{key:`close-all`,label:`Close all tabs`,onSelect:()=>{for(let e of g)t.closeTab(e)},testId:`tab-menu-close-all`}]:[{key:`close`,label:`Close`,icon:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`}),onSelect:()=>t.closeFile(f.path),testId:`tab-menu-close`},{key:`close-others`,label:`Close other files`,disabled:(c?.open.length??0)<2,onSelect:()=>{for(let e of c?.open??[])e!==f.path&&t.closeFile(e)},testId:`tab-menu-close-others`},{key:`close-all`,label:`Close all files`,onSelect:()=>{for(let e of c?.open??[])t.closeFile(e)},testId:`tab-menu-close-all`}]:[],y=(0,v.useMemo)(()=>e.tabs.ids.map(t=>{let n=e.drafts[t],r=e.transcripts[t]?.session??e.sessions.find(e=>e.id===t)??null,i=e.transcripts[t]?.status??r?.status??`idle`;return{id:t,draft:n!==void 0,title:n?hd(n):r?sd(r):`Session ${t.slice(0,8)}`,customTitle:n?n.title??``:r?.title??``,cwd:n?n.projectDir??``:r?.cwd??``,running:i===`running`||i===`waiting_permission`,waiting:i===`waiting_permission`,error:i===`error`}}),[e.tabs.ids,e.drafts,e.transcripts,e.sessions]),b=(0,v.useCallback)((e,n)=>{d(null),t.renameTab(e,n)},[t]),x=e.currentSessionId?e.remote.tabs[e.currentSessionId]??null:null,S=(0,v.useRef)(null),C=e.tabs.activeId;(0,v.useEffect)(()=>{S.current?.scrollIntoView({block:`nearest`,inline:`nearest`})},[C]);let w=(0,v.useRef)(null),T=(0,v.useRef)(null);return(0,v.useEffect)(()=>{let e=w.current;if(!e)return;let t=e=>{let t=T.current;if(!t)return;let n=BA(e,t);n!==0&&(e.preventDefault(),t.scrollLeft+=n)},n=e=>{e.button===1&&e.preventDefault()};return e.addEventListener(`wheel`,t,{passive:!1}),e.addEventListener(`mousedown`,n),()=>{e.removeEventListener(`wheel`,t),e.removeEventListener(`mousedown`,n)}},[]),(0,U.jsxs)(`div`,{ref:w,className:`flex h-9 shrink-0 items-stretch gap-1 border-b border-border bg-surface px-1`,role:`tablist`,"aria-label":`Open chats`,"data-testid":`tab-bar`,children:[(0,U.jsxs)(`div`,{ref:T,className:`flex min-w-0 flex-1 items-stretch gap-1 overflow-x-auto`,"data-testid":`tabs-scroller`,children:[y.map((n,r)=>{let i=n.id===e.tabs.activeId&&l===null,a=u===n.id;return(0,U.jsxs)(`div`,{ref:n.id===e.tabs.activeId?S:void 0,role:`tab`,"aria-selected":i,tabIndex:i?0:-1,draggable:!a,onDragStart:()=>s(r),onDragOver:e=>{o!==null&&e.preventDefault()},onDrop:e=>{o!==null&&(e.preventDefault(),t.moveTab(o,r),s(null))},onDragEnd:()=>s(null),onContextMenu:e=>{e.preventDefault(),p({kind:`chat`,id:n.id,title:n.title,at:{x:e.clientX,y:e.clientY},el:e.currentTarget})},onAuxClick:e=>{e.button===1&&(e.preventDefault(),t.closeTab(n.id))},className:H(`group relative flex min-w-[7rem] max-w-[15rem] shrink-0 items-center gap-1.5 rounded-t-md border-b-2 px-2 text-xs`,i?`border-accent bg-surface-2 text-fg`:`border-transparent text-fg-muted hover:bg-surface-2`),"data-testid":`tab-${n.id}`,children:[a?(0,U.jsx)(UA,{initial:n.customTitle,placeholder:n.title,onCommit:e=>b(n.id,e),onCancel:()=>d(null)}):(0,U.jsxs)(`button`,{type:`button`,onClick:()=>{t.selectSession(n.id),t.showChat(n.id)},onDoubleClick:()=>d(n.id),title:n.cwd?`${n.title}\n${n.cwd}`:`${n.title}\nDouble-click to rename`,className:`flex min-w-0 flex-1 items-center gap-1.5 py-1 text-left`,children:[n.running?(0,U.jsx)(K.Spinner,{className:H(`w-3 h-3 shrink-0`,n.waiting?`text-warn`:`text-accent`),title:`Agent running`}):n.error?(0,U.jsx)(K.Alert,{className:`w-3 h-3 shrink-0 text-danger`}):(0,U.jsx)(`span`,{className:`w-3 shrink-0`,"aria-hidden":!0}),(0,U.jsx)(`span`,{className:`truncate`,children:id(n.title,28)})]}),(0,U.jsx)(J,{label:`Close ${n.title}`,className:`p-0.5 opacity-0 group-hover:opacity-100 focus:opacity-100`,onClick:()=>t.closeTab(n.id),children:(0,U.jsx)(K.X,{className:`w-3 h-3`})})]},n.id)}),c?.open.map(e=>{let n=l===e,r=AC(e);return(0,U.jsxs)(`div`,{ref:n?h:void 0,role:`tab`,"aria-selected":n,tabIndex:n?0:-1,title:e,onContextMenu:t=>{t.preventDefault(),p({kind:`file`,path:e,at:{x:t.clientX,y:t.clientY},el:t.currentTarget})},onAuxClick:n=>{n.button===1&&(n.preventDefault(),t.closeFile(e))},className:H(`group relative flex min-w-[6rem] max-w-[14rem] shrink-0 items-center gap-1.5 rounded-t-md border-b-2 px-2 text-xs`,n?`border-accent bg-surface-2 text-fg`:`border-transparent text-fg-muted hover:bg-surface-2`),"data-testid":`file-tab-${e}`,children:[(0,U.jsxs)(`button`,{type:`button`,onClick:()=>t.activateFile(e),className:`flex min-w-0 flex-1 items-center gap-1.5 py-1 text-left`,children:[(0,U.jsx)(K.File,{className:`w-3 h-3 shrink-0 text-fg-faint`}),(0,U.jsx)(`span`,{className:`truncate`,children:id(r,28)})]}),(0,U.jsx)(J,{label:`Close ${r}`,className:`p-0.5 opacity-0 group-hover:opacity-100 focus:opacity-100`,onClick:()=>t.closeFile(e),"data-testid":`file-tab-close-${e}`,children:(0,U.jsx)(K.X,{className:`w-3 h-3`})})]},`file:${e}`)})]}),(0,U.jsx)(fE,{open:f!==null,at:f?.at??{x:0,y:0},anchorEl:f?.el??null,label:`Tab actions`,onClose:m,items:_.map(e=>({...e,onSelect:()=>{m(),e.onSelect()}}))}),(0,U.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5 pl-1`,children:[(0,U.jsx)(J,{label:`New chat`,onClick:()=>t.newTab(),"data-testid":`new-tab`,children:(0,U.jsx)(K.Plus,{className:`w-4 h-4`})}),(0,U.jsxs)(`button`,{type:`button`,title:x?`Choose a project folder in OonaCode on ${x.hostName}`:i?`${i} — click to change the folder`:`No project folder: this chat runs in its own workspace. Click to use one of your folders.`,"aria-label":x?`Choose a project folder in OonaCode on ${x.hostName}`:`Use a project folder…`,disabled:x!==null,onClick:()=>t.openDialog(`project`),className:`flex max-w-[220px] items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-fg-muted hover:border-accent/60 hover:text-fg disabled:opacity-50`,"data-testid":`open-project-dialog`,children:[(0,U.jsx)(K.Folder,{className:`w-3.5 h-3.5 shrink-0`}),(0,U.jsx)(`span`,{className:`hidden truncate sm:inline`,"data-testid":`folder-chip`,children:a})]})]})]})}function UA({initial:e,placeholder:t,onCommit:n,onCancel:r}){let[i,a]=(0,v.useState)(e),o=(0,v.useRef)(null),s=(0,v.useRef)(!1);return(0,v.useEffect)(()=>{o.current?.focus(),o.current?.select()},[]),(0,U.jsx)(`input`,{ref:o,"aria-label":`Rename tab`,"data-testid":`tab-title-input`,className:`min-w-0 flex-1 rounded border border-accent bg-bg px-1 py-0.5 text-xs outline-none`,value:i,maxLength:500,placeholder:t,spellCheck:!1,onChange:e=>a(e.target.value),onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`?(e.preventDefault(),n(i)):e.key===`Escape`&&(e.preventDefault(),s.current=!0,r())},onBlur:()=>{s.current||n(i)}})}function WA(){let e=typeof window<`u`?window.oonacode:void 0;return{desktop:typeof e?.installUpdate==`function`,terminal:typeof e?.updateTerminalInstall==`function`}}function GA(e){if(e.upToDate)return`Everything on this PC is up to date — the app, the host service and the oona CLI.`;let t=[];return e.terminal&&t.push(`OonaCode updates the oona CLI and the host service in place — the service restarts and your chats come back with it.`),e.desktop&&t.push(e.terminal?`Then it downloads the app, installs it and relaunches, restoring your open tabs.`:`OonaCode downloads the update, installs it and relaunches. Your open chat tabs are restored afterwards.`),t.length===0?t.push("This window cannot install updates by itself — run the installer again, or `oona update` in a terminal. Your open chat tabs are stored in the host and come back automatically."):e.manual.length>0&&t.push(e.manual.includes(`desktop`)?`The app itself needs the installer from the website.`:"The rest needs `oona update` in a terminal."),t.join(` `)}var KA=2*Math.PI*10;function qA(){return typeof window<`u`&&window.oonacode!==void 0}function JA(){let{state:e,actions:t}=W(),n=e.update,r=e.updateInstall,i=e.prefs.dismissedUpdateVersion,a=n.version!==``&&(e.updateDismissed===n.version||i===n.version);if(!qA())return null;let o=Rf({install:r,manifestAvailable:n.available&&!a}),s=e.terminalUpdate.running,c=e.updateChecking||r.phase===`checking`||s,l=n.components.length,u=Math.round(r.percent),d=s?`Updating the CLI and host service`:o===`ready`?`Restart to finish updating`:o===`downloading`?`Downloading update (${u}%)`:o===`available`?`Update available (${l})`:`Check for updates`,f=s?`Updating the oona CLI and the host service…`:o===`ready`?`An update is ready — restart to finish`:o===`downloading`?`Downloading OonaCode ${r.version||`update`} — ${u}%`:o===`available`?`${l} component${l===1?``:`s`} can be updated`:`Check for updates`;return(0,U.jsxs)(`button`,{type:`button`,onClick:()=>{if(o===`idle`){t.checkUpdates(!0);return}if(o===`ready`){t.installUpdate();return}t.openDialog(`update`)},title:f,"aria-label":d,"aria-busy":c||void 0,"data-testid":`update-badge`,"data-state":o,className:H(`relative inline-flex h-7 w-7 items-center justify-center rounded-full border transition-transform hover:scale-105`,o===`idle`?`border-border bg-surface-2 text-fg-muted hover:text-fg`:`border-accent bg-accent-soft text-accent`),children:[o===`downloading`?(0,U.jsxs)(`svg`,{viewBox:`0 0 24 24`,"data-testid":`update-badge-progress`,role:`progressbar`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":u,className:`absolute inset-0 h-full w-full -rotate-90`,children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,fill:`none`,strokeWidth:`2`,className:`stroke-border`}),(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`,fill:`none`,strokeWidth:`2`,strokeLinecap:`round`,strokeDasharray:KA,strokeDashoffset:KA*(1-Math.max(0,Math.min(100,u))/100),className:`stroke-accent`})]}):null,c&&o!==`downloading`&&o!==`ready`?(0,U.jsx)(`span`,{"data-testid":`update-badge-checking`,className:`inline-flex`,children:(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`})}):o===`ready`?(0,U.jsx)(`span`,{"data-testid":`update-badge-ready`,className:`inline-flex`,children:(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`})}):o===`downloading`?(0,U.jsx)(`span`,{"data-testid":`update-badge-downloading`,className:`text-[9px] font-semibold`,children:u}):(0,U.jsx)(`span`,{"data-testid":o===`available`?`update-badge-available`:`update-badge-idle`,className:`inline-flex`,children:(0,U.jsx)(K.Download,{className:`w-3.5 h-3.5`})}),o===`available`?(0,U.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-accent`,"aria-hidden":!0}):null]})}function YA(){let{state:e,actions:t}=W(),n=e.updateInstall,r=Math.round(Math.max(0,Math.min(100,n.percent))),i=Vf(n.bytesPerSecond);if(n.phase===`error`)return(0,U.jsxs)(`div`,{className:`rounded-md border border-danger-soft bg-danger-soft px-3 py-2 text-xs text-danger`,"data-testid":`update-error`,role:`alert`,children:[(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(K.Alert,{className:`mt-0.5 w-3.5 h-3.5 shrink-0`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`font-medium`,children:`The update could not be downloaded.`}),(0,U.jsx)(`div`,{className:`mt-0.5 pre-wrap break-words`,children:n.error})]})]}),(0,U.jsx)(`div`,{className:`mt-2`,children:(0,U.jsxs)(q,{size:`sm`,onClick:()=>void t.installUpdate(),"data-testid":`update-retry`,children:[(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`}),` Try again`]})})]});let a=n.phase===`installing`;return(0,U.jsxs)(`div`,{className:`space-y-1.5`,"data-testid":`update-progress`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,U.jsx)(`span`,{className:`font-medium text-fg`,children:a?`Installing and restarting…`:n.phase===`ready`?`Downloaded — restart to install`:`Downloading OonaCode ${n.version||``}`.trim()}),a?null:(0,U.jsxs)(`span`,{className:`text-fg-muted`,children:[r,`%`]})]}),n.notice?(0,U.jsx)(`div`,{className:`pre-wrap text-xs text-warn`,"data-testid":`update-notice`,role:`status`,children:n.notice}):null,(0,U.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-surface-2`,children:(0,U.jsx)(`div`,{className:H(`h-full rounded-full bg-accent`,a&&`animate-pulse`),style:{width:`${a?100:r}%`},"data-testid":`update-progress-bar`})}),a?(0,U.jsx)(`div`,{className:`text-xs text-fg-faint`,children:`The host service stops for a few seconds while the installer runs, then OonaCode starts again with your chat tabs.`}):(0,U.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-fg-faint`,children:[(0,U.jsxs)(`span`,{children:[Bf(n.transferred),n.total>0?` of ${Bf(n.total)}`:``]}),i?(0,U.jsx)(`span`,{children:i}):null]})]})}function XA(){let{state:e,actions:t}=W(),n=e.terminalUpdate;return n.running?(0,U.jsxs)(`div`,{className:`flex items-start gap-2 rounded-md border border-border bg-surface-2 px-3 py-2 text-xs`,"data-testid":`terminal-update-running`,role:`status`,children:[(0,U.jsx)(K.Spinner,{className:`mt-0.5 w-3.5 h-3.5 shrink-0`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`font-medium text-fg`,children:`Updating the oona CLI and host service...`}),(0,U.jsx)(`div`,{className:`mt-0.5 text-fg-faint`,children:`The host service stops for a few seconds while its installer runs. Your chats are in the database and come back with it.`})]})]}):n.failed?(0,U.jsxs)(`div`,{className:`rounded-md border border-danger-soft bg-danger-soft px-3 py-2 text-xs text-danger`,"data-testid":`terminal-update-error`,role:`alert`,children:[(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(K.Alert,{className:`mt-0.5 w-3.5 h-3.5 shrink-0`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`font-medium`,children:`The CLI and host service could not be updated.`}),(0,U.jsx)(`div`,{className:`mt-0.5 pre-wrap break-words`,children:n.message})]})]}),(0,U.jsx)(`div`,{className:`mt-2`,children:(0,U.jsxs)(q,{size:`sm`,onClick:()=>void t.installUpdate(),"data-testid":`terminal-update-retry`,children:[(0,U.jsx)(K.Refresh,{className:`w-3.5 h-3.5`}),` Try again`]})})]}):null}function ZA({open:e,onClose:t}){let{state:n,actions:r}=W(),i=n.update,a=n.updateInstall,o=r.checkUpdates,s=a.phase===`downloading`||a.phase===`installing`||a.phase===`ready`;(0,v.useEffect)(()=>{!e||s||o(!1)},[e,s,o]);let c=WA(),l=Uf(i.components.map(e=>e.component),c,{checked:i.version!==``,shellEngaged:a.phase!==`idle`&&a.phase!==`checking`}),u=i.version||a.version,d=a.phase===`ready`,f=a.phase===`downloading`||a.phase===`installing`||d||a.phase===`error`,p=n.terminalUpdate.running,m=n.updateChecking||a.phase===`checking`||p;return(0,U.jsx)(Ap,{open:e,title:`Update OonaCode`,onClose:t,footer:d?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:t,children:`Later`}),(0,U.jsxs)(q,{variant:`primary`,onClick:()=>void r.installUpdate(),"data-testid":`update-restart`,children:[(0,U.jsx)(K.Refresh,{className:`w-4 h-4`}),`Restart and install`]})]}):f?(0,U.jsx)(q,{onClick:t,children:`Close`}):l.upToDate?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(q,{onClick:()=>void r.checkUpdates(!0),busy:m,disabled:m,"data-testid":`update-check-again`,children:[(0,U.jsx)(K.Refresh,{className:`w-4 h-4`}),`Check again`]}),(0,U.jsx)(q,{variant:`primary`,onClick:t,children:`Close`})]}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:()=>r.dismissUpdate(),children:`Skip this version`}),(0,U.jsx)(q,{onClick:t,children:`Later`}),(0,U.jsxs)(q,{variant:`primary`,busy:m,disabled:m,onClick:()=>void r.installUpdate(),children:[(0,U.jsx)(K.Download,{className:`w-4 h-4`}),l.label]})]}),children:(0,U.jsxs)(`div`,{className:`space-y-3`,children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm`,children:[u?(0,U.jsxs)(`span`,{className:`font-medium`,children:[`Release `,u]}):null,i.channel?(0,U.jsx)(X,{children:i.channel}):null,n.updateChecking?(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,"data-testid":`update-rechecking`,children:`checking for a newer one…`}):null,i.publishedAt?(0,U.jsxs)(`span`,{className:`text-xs text-fg-faint`,children:[`published `,new Date(i.publishedAt).toLocaleDateString()]}):null]}),f?(0,U.jsx)(YA,{}):null,(0,U.jsx)(XA,{}),i.components.length>0?(0,U.jsx)(`ul`,{className:`divide-y divide-border rounded-md border border-border`,children:i.components.map(e=>(0,U.jsxs)(`li`,{className:`flex items-start gap-3 px-3 py-2`,children:[(0,U.jsx)(K.Download,{className:`mt-0.5 w-3.5 h-3.5 shrink-0 text-accent`}),(0,U.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,U.jsx)(`div`,{className:`text-sm font-medium`,children:e.label}),(0,U.jsxs)(`div`,{className:`text-xs text-fg-muted`,children:[e.current,` → `,(0,U.jsx)(`span`,{className:`font-medium text-fg`,children:e.latest})]}),(0,U.jsx)(`div`,{className:`text-xs text-fg-faint`,"data-testid":`update-how-${e.component}`,children:Wf(e.component,c)}),e.notes?(0,U.jsx)(`div`,{className:`mt-0.5 pre-wrap text-xs text-fg-faint`,children:e.notes}):null]})]},e.component))}):null,i.notes?(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`div`,{className:`mb-1 text-xs font-semibold uppercase tracking-wide text-fg-faint`,children:`Release notes`}),(0,U.jsx)(`div`,{className:`max-h-48 overflow-y-auto rounded-md bg-surface-2 px-3 py-2 pre-wrap text-xs text-fg-muted`,children:i.notes})]}):null,f?null:(0,U.jsx)(`p`,{className:`text-xs text-fg-faint`,"data-testid":`update-plan-note`,children:GA(l)})]})})}function QA(e){switch(e){case`open`:return{cls:`bg-ok`,label:`Connected`};case`connecting`:case`reconnecting`:return{cls:`bg-warn animate-pulse`,label:e===`connecting`?`Connecting…`:`Reconnecting…`};case`unauthorized`:return{cls:`bg-danger`,label:`Unauthorized`};case`closed`:return{cls:`bg-danger`,label:`Disconnected`};default:return{cls:`bg-fg-faint`,label:`Idle`}}}function $A(){let{state:e,actions:t}=W(),n=QA(e.connection.status),r=e.account?.loggedIn===!0,i=typeof window<`u`&&window.oonacode?.host===`vscode`;return(0,U.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b border-border bg-surface px-2 sm:px-3`,children:[i?null:(0,U.jsx)(J,{label:`Toggle sidebar`,onClick:()=>{typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(min-width: 768px)`).matches?t.savePrefs({sidebarPinned:!e.prefs.sidebarPinned}):t.setSidebar(!e.ui.sidebarOpen)},"data-testid":`toggle-sidebar`,children:(0,U.jsx)(K.PanelLeft,{})}),(0,U.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[i?null:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`span`,{className:`font-semibold tracking-tight`,children:`OonaCode`}),(0,U.jsx)(`span`,{className:`hidden text-fg-faint sm:inline`,children:`/`})]}),(0,U.jsx)(`button`,{type:`button`,onClick:()=>t.openDialog(`session-picker`),title:`Open a session on this PC or another device`,className:`hidden min-w-0 truncate text-sm text-fg-muted hover:text-fg sm:inline`,"data-testid":`host-name`,children:e.connection.hostName??`host`}),(0,U.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-fg-muted`,title:e.connection.detail??n.label,"data-testid":`connection-status`,children:[(0,U.jsx)(`span`,{className:H(`inline-block h-2 w-2 rounded-full`,n.cls),"aria-hidden":!0}),(0,U.jsx)(`span`,{className:`hidden sm:inline`,children:n.label})]})]}),(0,U.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[(0,U.jsx)(`button`,{type:`button`,onClick:()=>t.openDialog(`bug-report`),title:`Bug Report...`,"aria-label":`Bug Report...`,"data-testid":`bug-report-button`,className:`inline-flex h-7 w-7 items-center justify-center rounded-full border border-border bg-surface-2 text-fg-muted transition-transform hover:scale-105 hover:text-fg`,children:(0,U.jsx)(K.Bug,{className:`w-3.5 h-3.5`})}),(0,U.jsx)(JA,{}),e.hostUpdatedTo?(0,U.jsxs)(q,{size:`sm`,variant:`primary`,onClick:()=>window.location.reload(),title:`This window still runs the previous version; the host is now v${e.hostUpdatedTo}`,"data-testid":`reload-for-update`,children:[`Reload for v`,e.hostUpdatedTo]}):null,r?null:(0,U.jsxs)(q,{size:`sm`,variant:`primary`,onClick:()=>t.openDialog(`account`),"data-testid":`sign-in`,children:[(0,U.jsx)(K.LogIn,{className:`w-3.5 h-3.5`}),` Sign in`]}),(0,U.jsx)(J,{label:e.prefs.explorerOpen?`Hide files`:`Show files`,onClick:()=>void t.savePrefs({explorerOpen:!e.prefs.explorerOpen}),className:e.prefs.explorerOpen?`bg-surface-2 text-fg`:void 0,"data-testid":`toggle-explorer`,children:(0,U.jsx)(K.Folder,{})}),(0,U.jsx)(J,{label:e.prefs.sessionPanelOpen?`Hide session info`:`Show session info`,onClick:()=>void t.savePrefs({sessionPanelOpen:!e.prefs.sessionPanelOpen}),className:e.prefs.sessionPanelOpen?`bg-surface-2 text-fg`:void 0,"data-testid":`toggle-session-panel`,children:(0,U.jsx)(K.Panel,{})}),(0,U.jsx)(J,{label:`Doctor`,onClick:()=>t.openDialog(`doctor`),children:(0,U.jsx)(K.Stethoscope,{})}),r?(0,U.jsx)(ej,{}):null,(0,U.jsx)(J,{label:`Account`,onClick:()=>t.openDialog(`account`),children:(0,U.jsxs)(`span`,{className:`relative`,children:[(0,U.jsx)(K.User,{}),r?(0,U.jsx)(`span`,{className:H(`absolute -right-0.5 -top-0.5 h-1.5 w-1.5 rounded-full`,e.account?.vaultUnlocked?`bg-ok`:`bg-warn`)}):null]})}),(0,U.jsx)(J,{label:`Settings`,onClick:()=>t.openDialog(`settings`),children:(0,U.jsx)(K.Settings,{})})]})]})}function ej(){let{state:e}=W(),[t,n]=(0,v.useState)(!1),r=(0,v.useRef)(null),i=e.plan;(0,v.useEffect)(()=>{if(!t)return;let e=e=>{r.current&&!r.current.contains(e.target)&&n(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[t]);let a=i?i.credits.balance:null,o=i?gf(i):null,s=yf(i),c=bf;return(0,U.jsxs)(`div`,{className:`relative`,ref:r,children:[(0,U.jsx)(J,{label:s?`Credits and plan — ${s.text}`:`Credits and plan`,onClick:()=>n(e=>!e),"data-testid":`balance-badge`,className:t?`bg-surface-2 text-fg`:void 0,children:(0,U.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,U.jsx)(K.Coins,{}),a===null?null:(0,U.jsx)(`span`,{className:H(`hidden text-xs tabular-nums sm:inline`,s?s.level===`empty`?`text-danger`:`text-warn`:void 0),"data-testid":`balance-credits`,"data-level":s?.level??`ok`,children:c(a)})]})}),t?(0,U.jsx)(`div`,{className:`absolute right-0 top-full z-50 mt-1 w-64 rounded-md border border-border bg-surface p-3 text-sm shadow-lg`,"data-testid":`balance-popover`,children:i===null||o===null?(0,U.jsx)(`div`,{className:`text-fg-muted`,children:`Balance is unavailable — the gateway can't be reached.`}):(0,U.jsxs)(`div`,{className:`space-y-2`,children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Plan`}),(0,U.jsxs)(`span`,{className:`font-medium`,children:[i.planName,i.status===`none`?` (lapsed)`:``]})]}),(0,U.jsx)(`div`,{className:`h-px bg-border`}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Credits`}),(0,U.jsx)(`span`,{className:`font-semibold tabular-nums`,children:c(o.balance)})]}),s?(0,U.jsx)(`div`,{className:H(`rounded-sm px-2 py-1 text-[11px]`,s.level===`empty`?`bg-danger-soft text-danger`:`bg-warn-soft text-warn`),"data-testid":`balance-warning`,children:s.text}):null,o.hasSplit?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Plan credits`}),(0,U.jsx)(`span`,{className:`tabular-nums`,children:c(o.plan??0)})]}),(0,U.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,U.jsx)(`span`,{className:`text-fg-muted`,children:`Top-up credits`}),(0,U.jsx)(`span`,{className:`tabular-nums`,children:c(o.topup??0)})]})]}):null,(0,U.jsxs)(`div`,{className:`text-[11px] text-fg-faint`,children:[i.credits.monthlyGrant>0?`Plan credits top up to ${c(i.credits.monthlyGrant)} each 30-day period and expire with it; top-ups never do.`:`This plan pays no monthly credits — the signup gift and anything you buy never expire.`,` `,`Free models never draw on this balance.`]})]})}):null]})}function tj(e){return new Promise((t,n)=>{let r=new FileReader;r.onerror=()=>n(r.error??Error(`could not read the file`)),r.onload=()=>{let e=typeof r.result==`string`?r.result:``,n=e.indexOf(`,`);t(n>=0?e.slice(n+1):``)},r.readAsDataURL(e)})}function nj(e,t){let n=[],r=e.length,i=e.reduce((e,t)=>e+t.size,0);for(let e of t){if(r>=5)return{accepted:n,refused:`At most 5 files per report.`};if(e.size>5242880)return{accepted:n,refused:`${e.name} is ${Bf(e.size)}; a file may be at most ${Bf(Is)}.`};if(i+e.size>12582912)return{accepted:n,refused:`All files together may be at most ${Bf(Ls)}.`};n.push(e),r+=1,i+=e.size}return{accepted:n,refused:null}}function rj(e){return e instanceof Sl?e.code===`account_required`||e.status===401?`Sign in to OonaCode first — a report is filed under your account so we can answer it.`:El(e)?`This host build cannot send bug reports yet — update OonaCode on this PC.`:e.status===429?`Too many reports in a minute — wait a moment and send again.`:e.status===413?`The attachments are too large for one report.`:e.message||`The report could not be sent.`:e instanceof Error&&e.message?e.message:`The report could not be sent.`}var ij=0;function aj({open:e,onClose:t}){let{state:n,actions:r,api:i}=W(),[a,o]=(0,v.useState)(``),[s,c]=(0,v.useState)([]),[l,u]=(0,v.useState)(!1),[d,f]=(0,v.useState)(null),[p,m]=(0,v.useState)(!1),h=(0,v.useRef)(null);(0,v.useEffect)(()=>{e&&(o(``),c([]),u(!1),f(null))},[e]);let g=n.account?.loggedIn===!0,_=typeof i.sendBugReport==`function`,y=typeof window<`u`?window.oonacode:void 0,b=y?y.host===`vscode`?`vscode`:`desktop`:`browser`,x=n.currentSessionId?n.sessions.find(e=>e.id===n.currentSessionId)??null:null,S=(0,v.useCallback)(async e=>{let t=Array.from(e);if(t.length===0)return;let{accepted:n,refused:r}=nj(s,t);f(r);let i=t.filter(e=>n.includes(e));if(i.length!==0){m(!0);try{let e=[];for(let t of i){let n=await tj(t);if(!n)continue;let r=t.type||`application/octet-stream`;ij+=1,e.push({key:`f${ij}`,name:t.name,contentType:r,dataBase64:n,size:t.size,preview:r.startsWith(`image/`)?`data:${r};base64,${n}`:null})}c(t=>[...t,...e])}catch(e){f(e instanceof Error?e.message:`could not read the file`)}finally{m(!1)}}},[s]),C=e=>{let t=e.target.files;t&&S(t),e.target.value=``},w=e=>c(t=>t.filter(t=>t.key!==e)),T=async()=>{let e=a.trim();if(!e||l)return;if(!_){f(`This host build cannot send bug reports yet — update OonaCode on this PC.`);return}u(!0),f(null);let o={message:e.slice(0,Fs),...s.length>0?{attachments:s.map(({name:e,contentType:t,dataBase64:n})=>({name:e,contentType:t,dataBase64:n}))}:{},...n.currentSessionId?{sessionId:n.currentSessionId}:{},detail:{embedded:b,connection:n.connection.status,...y?.appVersion?{appVersion:y.appVersion}:{},...n.bundleAppVersion?{uiVersion:n.bundleAppVersion}:{},...n.info?.appVersion?{hostVersion:n.info.appVersion}:{},...n.info?.engine?.version?{engineVersion:n.info.engine.version}:{},...x?.status?{sessionStatus:x.status}:{}}};try{let e=await i.sendBugReport(o);r.toast(`success`,`Bug report #${e.id} sent — thank you.`),t()}catch(e){f(rj(e))}finally{u(!1)}},E=Fs-a.length;return(0,U.jsx)(Ap,{open:e,title:`Bug Report`,onClose:t,footer:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(q,{onClick:t,disabled:l,children:`Cancel`}),(0,U.jsxs)(q,{variant:`primary`,busy:l,disabled:!a.trim()||p,onClick:()=>void T(),"data-testid":`bug-report-send`,children:[(0,U.jsx)(K.Bug,{className:`w-4 h-4`}),`Send report`]})]}),children:(0,U.jsxs)(`div`,{className:`space-y-3 text-sm`,"data-testid":`bug-report-dialog`,children:[(0,U.jsxs)(`p`,{className:`text-fg-muted`,children:[`Tell us what went wrong and what you expected. Screenshots help. The report is filed under your account with this PC's versions`,x?` and the open chat’s model`:``,`; the chat itself is never sent.`]}),g?null:(0,U.jsx)(`div`,{className:`rounded-md border border-warn/40 bg-warn-soft px-3 py-2 text-xs text-warn`,children:`Sign in to OonaCode to send a report — it is filed under your account so we can answer it.`}),(0,U.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(`span`,{className:`font-medium text-fg`,children:`What happened?`}),(0,U.jsx)(`textarea`,{name:`message`,className:H(Y,`min-h-32 resize-y`),value:a,maxLength:Fs,placeholder:`The answer stopped after a few seconds with “API error”. I was using…`,onChange:e=>o(e.target.value),"data-testid":`bug-report-message`}),(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,children:E<500?`${E} characters left`:``})]}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,U.jsx)(`input`,{ref:h,type:`file`,multiple:!0,className:`hidden`,onChange:C,"data-testid":`bug-report-files`}),(0,U.jsxs)(q,{size:`sm`,onClick:()=>h.current?.click(),disabled:l||p||s.length>=5,children:[(0,U.jsx)(K.Paperclip,{className:`w-3.5 h-3.5`}),`Attach files or pictures`]}),(0,U.jsxs)(`span`,{className:`text-xs text-fg-faint`,children:[`up to `,5,` files,`,` `,Bf(Is),` each`]})]}),s.length>0?(0,U.jsx)(`ul`,{className:`flex flex-wrap gap-2`,"data-testid":`bug-report-attachments`,children:s.map(e=>(0,U.jsxs)(`li`,{className:`flex items-center gap-2 rounded-md border border-border bg-surface-2 px-2 py-1 text-xs`,children:[e.preview?(0,U.jsx)(`img`,{src:e.preview,alt:``,className:`h-8 w-8 rounded object-cover`,"aria-hidden":!0}):(0,U.jsx)(K.Paperclip,{className:`w-3.5 h-3.5 text-fg-muted`}),(0,U.jsx)(`span`,{className:`max-w-40 truncate`,title:e.name,children:e.name}),(0,U.jsx)(`span`,{className:`text-fg-faint`,children:Bf(e.size)}),(0,U.jsx)(J,{label:`Remove ${e.name}`,onClick:()=>w(e.key),children:(0,U.jsx)(K.X,{className:`w-3.5 h-3.5`})})]},e.key))}):null]}),d?(0,U.jsx)(`div`,{className:`text-xs text-danger`,role:`alert`,"data-testid":`bug-report-error`,children:d}):null]})})}function oj(e){let t=Date.parse(`${e}T12:00:00`);return Number.isFinite(t)?new Date(t).toLocaleDateString(void 0,{dateStyle:`long`}):e}function sj({open:e,notes:t,onClose:n}){return(0,U.jsx)(Ap,{open:e,title:`What's new in OonaCode`,onClose:n,footer:(0,U.jsx)(q,{variant:`primary`,onClick:n,children:`Got it`}),children:(0,U.jsx)(`div`,{className:`space-y-5 text-sm`,"data-testid":`whats-new`,children:t.map(e=>(0,U.jsxs)(`section`,{"data-version":e.version,children:[(0,U.jsxs)(`div`,{className:`mb-2 flex items-baseline gap-2`,children:[(0,U.jsxs)(`h3`,{className:`text-base font-semibold`,children:[`Version `,e.version]}),(0,U.jsx)(`span`,{className:`text-xs text-fg-faint`,children:oj(e.date)})]}),e.added.length>0?(0,U.jsx)(`ul`,{className:`space-y-1.5`,children:e.added.map((e,t)=>(0,U.jsxs)(`li`,{className:`flex gap-2`,children:[(0,U.jsx)(K.Plus,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-accent`}),(0,U.jsx)(`span`,{children:e})]},t))}):null,e.fixed.length>0?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-1 mt-3 text-xs font-medium uppercase tracking-wide text-fg-faint`,children:`Fixed`}),(0,U.jsx)(`ul`,{className:`space-y-1.5`,children:e.fixed.map((e,t)=>(0,U.jsxs)(`li`,{className:`flex gap-2`,children:[(0,U.jsx)(K.Check,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-ok`}),(0,U.jsx)(`span`,{children:e})]},t))})]}):null]},e.version))})})}function cj(){let{state:e,actions:t}=W(),n=ml(e.account);return!n||e.ui.dialog===`account`?null:(0,U.jsxs)(`div`,{role:`status`,"data-testid":`vault-rekey-banner`,className:`flex items-center gap-2 bg-warn-soft px-3 py-1.5 text-xs text-warn`,children:[(0,U.jsx)(K.Alert,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`flex-1`,children:xl(n)}),(0,U.jsx)(q,{size:`sm`,variant:`primary`,onClick:()=>t.openDialog(`account`),children:`Open Account`})]})}function lj({onReconnect:e}){let{state:t}=W(),n=t.connection.status;if(n===`open`||n===`idle`||n===`connecting`)return null;let r=n===`unauthorized`&&!window.oonacode;return(0,U.jsxs)(`div`,{role:`status`,className:H(`flex items-center gap-2 px-3 py-1.5 text-xs`,r?`bg-danger-soft text-danger`:`bg-warn-soft text-warn`),children:[r?(0,U.jsx)(K.Alert,{className:`w-3.5 h-3.5`}):(0,U.jsx)(K.Spinner,{className:`w-3.5 h-3.5`}),(0,U.jsx)(`span`,{className:`flex-1`,children:r?`The host rejected this connection${t.connection.detail?` (${t.connection.detail})`:``}. Re-open the UI from the desktop app or paste a fresh token.`:`Reconnecting to the host${t.connection.detail?` — ${t.connection.detail}`:``}…`}),r&&e?(0,U.jsx)(q,{size:`sm`,variant:`danger`,onClick:e,children:`Enter token`}):null]})}function uj(){let{actions:e}=W();(0,v.useEffect)(()=>{if(typeof window>`u`)return;let t=t=>{!(t.ctrlKey||t.metaKey)||t.key!==`Tab`||(t.preventDefault(),e.cycleTab(t.shiftKey?-1:1))};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e])}function dj(){let{state:e,actions:t}=W(),n=(0,v.useRef)(!1),r=e.account?.loggedIn===!0,i=e.prefs.claudeImportOffered?3:e.prefs.claudeImportOffers,a=e.ui.dialog===`none`,o=e.settings!==null,s=(0,v.useRef)(e.ui.dialog);s.current=e.ui.dialog,(0,v.useEffect)(()=>{n.current||!o||i>=3||!r||!a||(n.current=!0,t.scanClaudeSessions().then(e=>{if(e.sessions.some(e=>!e.alreadyImported&&e.deletedHere!==!0&&!e.unavailable)){if(s.current!==`none`){n.current=!1;return}t.openDialog(`import-claude`),t.savePrefs({claudeImportOffers:i+1})}}).catch(()=>{}))},[t,a,r,i,o])}function fj(){let{state:e,actions:t}=W(),n=(0,v.useRef)(!1),[r,i]=(0,v.useState)(null),a=(typeof window<`u`?window.oonacode:void 0)?.appVersion??e.bundleAppVersion??null,o=e.settings!==null,s=e.prefs.lastSeenReleaseNotes,c=e.sessionListLoaded,l=e.sessionsTotal>0||e.sessions.length>0,u=e.settings?.uiPrefs,d=u!==void 0&&!(`lastSeenReleaseNotes`in u),f=e.ui.dialog===`none`;(0,v.useEffect)(()=>{if(n.current||!o||!a||!f||s===null&&!c||(n.current=!0,d))return;let{record:e,show:r}=bc(a,s,l);e!==null&&t.savePrefs({lastSeenReleaseNotes:e}),r.length!==0&&(i(r),t.openDialog(`whats-new`))},[t,d,f,a,s,c,o,l]);let p=e.ui.dialog===`whats-new`;return(0,v.useEffect)(()=>{!p&&r&&i(null)},[r,p]),r??(a?yc(a,`0`):[])}function pj({onUnauthorized:e}){let{state:t,actions:n}=W(),r=(0,v.useCallback)(()=>n.openDialog(`none`),[n]),i=fj();dj();let a=typeof window<`u`&&window.oonacode?.host===`vscode`,o=t.ui.sidebarOpen&&!a;return uj(),(0,U.jsxs)(`div`,{className:`flex h-full flex-col bg-bg text-fg`,children:[(0,U.jsx)($A,{}),(0,U.jsx)(lj,{onReconnect:e}),(0,U.jsx)(cj,{}),(0,U.jsxs)(`div`,{className:`relative flex min-h-0 flex-1`,children:[(0,U.jsx)(BO,{hidden:a,children:(0,U.jsx)(DA,{})}),o?(0,U.jsx)(`div`,{className:`absolute inset-0 z-20 bg-black/30 md:hidden`,onClick:()=>n.setSidebar(!1),"aria-hidden":!0}):null,t.prefs.explorerOpen?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`absolute inset-0 z-20 bg-black/30 md:hidden`,onClick:()=>void n.savePrefs({explorerOpen:!1}),"aria-hidden":!0}),(0,U.jsx)(`div`,{className:`absolute inset-y-0 left-0 z-30 flex max-w-[85vw] md:static md:z-auto md:max-w-none`,children:(0,U.jsx)(_k,{})})]}):null,(0,U.jsxs)(`main`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,U.jsx)(HA,{}),(0,U.jsx)(gE,{}),t.currentSessionId&&t.files[t.currentSessionId]?.active?(0,U.jsx)(Dk,{}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(_D,{}),(0,U.jsx)(mO,{}),(0,U.jsx)(dO,{},t.currentSessionId??`none`)]})]}),t.prefs.sessionPanelOpen?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`absolute inset-0 z-20 bg-black/30 lg:hidden`,onClick:()=>void n.savePrefs({sessionPanelOpen:!1}),"aria-hidden":!0}),(0,U.jsx)(`div`,{className:`absolute inset-y-0 right-0 z-30 flex max-w-[85vw] lg:static lg:z-auto lg:max-w-none`,children:(0,U.jsx)(pk,{})})]}):null]}),(0,U.jsx)(gO,{open:t.ui.dialog===`project`,onClose:r}),(0,U.jsx)(PO,{open:t.ui.dialog===`projects`,startNew:t.projectsStartNew,selectId:t.projectsSelectId,onClose:r}),(0,U.jsx)(UO,{open:t.ui.dialog===`assign-project`,onClose:r}),(0,U.jsx)(Yk,{open:t.ui.dialog===`settings`,onClose:r}),(0,U.jsx)(Wp,{open:t.ui.dialog===`account`,onClose:r}),(0,U.jsx)(hO,{open:t.ui.dialog===`doctor`,onClose:r}),(0,U.jsx)(hE,{open:t.ui.dialog===`session-picker`,onClose:r}),(0,U.jsx)(ZA,{open:t.ui.dialog===`update`,onClose:r}),(0,U.jsx)(aj,{open:t.ui.dialog===`bug-report`,onClose:r}),(0,U.jsx)(AO,{open:t.ui.dialog===`claude-login`,onClose:r}),(0,U.jsx)(XO,{open:t.ui.dialog===`oauth-login`,onClose:r}),(0,U.jsx)(ZO,{open:t.ui.dialog===`manage-models`,onClose:r}),(0,U.jsx)(ak,{open:t.ui.dialog===`import-claude`,onClose:r}),(0,U.jsx)(VO,{open:t.ui.dialog===`export-chats`,onClose:r}),(0,U.jsx)(sj,{open:t.ui.dialog===`whats-new`,notes:i,onClose:r}),(0,U.jsx)(YO,{open:t.ui.connectProviderId!==null,providerId:t.ui.connectProviderId,onClose:()=>n.openProviderConnect(null)}),(0,U.jsx)(Zk,{})]})}function mj({onUnauthorized:e}){let{state:t}=W(),n=t.account?.loggedIn===!0&&!t.account.vaultUnlocked;return(0,v.useEffect)(()=>{window.oonacode?.setVaultLocked?.(n)},[n]),t.accountLoaded?t.account?.loggedIn?!t.account.vaultUnlocked&&ml(t.account)===null?(0,U.jsx)(cA,{}):(0,U.jsx)(pj,{onUnauthorized:e}):(0,U.jsx)(sA,{}):(0,U.jsx)(rA,{})}function hj({api:e,socket:t,relay:n,initialSessionId:r,onUnauthorized:i,reportError:a}){return(0,U.jsx)(bp,{api:e,socket:t,relay:n??null,initialSessionId:r??null,onUnauthorized:i,...a?{reportError:a}:{},children:(0,U.jsx)(mj,{onUnauthorized:i})})}var gj=`oonacode.host.connection`,_j=`session`;function vj(e){let t=e.replace(/^#\/?\??/,``),n=new URLSearchParams(t),r=n.get(`token`),i=n.get(`host`)??n.get(`baseUrl`),a=n.get(_j);n.delete(`token`),n.delete(`host`),n.delete(`baseUrl`);let o=n.toString();return{token:r&&r.trim()?r.trim():null,baseUrl:i,sessionId:a,restHash:o?`#${o}`:``}}function yj(e){if(!e)return null;try{let t=e.getItem(gj);if(!t)return null;let n=JSON.parse(t);if(typeof n.baseUrl==`string`&&typeof n.token==`string`&&n.token)return{baseUrl:wl(n.baseUrl),token:n.token}}catch{}return null}function bj(e,t){if(e)try{t?e.setItem(gj,JSON.stringify(t)):e.removeItem(gj)}catch{}}async function xj(e){let t=vj(e.location.hash);if(t.token){let n={baseUrl:wl(t.baseUrl??e.location.origin),token:t.token};bj(e.storage,n);let r=`${e.location.pathname}${e.location.search}${t.restHash}`;try{e.replaceUrl?.(r)}catch{}return{connection:n,source:`hash`,sessionId:t.sessionId}}if(e.bridge&&typeof e.bridge.getConnection==`function`)try{let n=await e.bridge.getConnection();if(n&&typeof n.token==`string`&&n.token&&typeof n.baseUrl==`string`){let r={baseUrl:wl(n.baseUrl),token:n.token};return bj(e.storage,r),{connection:r,source:`bridge`,sessionId:t.sessionId}}}catch{}let n=yj(e.storage);return n?{connection:n,source:`storage`,sessionId:t.sessionId}:{connection:null,source:`none`,sessionId:t.sessionId}}function Sj(e=window){let t=null;try{t=e.sessionStorage}catch{t=null}return xj({location:e.location,storage:t,replaceUrl:t=>e.history.replaceState(null,``,t),bridge:e.oonacode})}var Cj=1;function wj(){let e=globalThis.crypto;return e&&typeof e.randomUUID==`function`?e.randomUUID():`c-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function Tj(e,t){return`${wl(e).replace(/^http(s?):/i,`ws$1:`)}${b}?token=${encodeURIComponent(t)}`}var Ej=class{clientId;opts;ws=null;_status=`idle`;attempts=0;preOpenFailures=0;epoch=0;reconnectTimer=null;pingTimer=null;manuallyClosed=!1;handlers=new Map;anyHandlers=new Set;statusHandlers=new Set;subscriptions=new Map;promptCounter=0;constructor(e){this.opts={clientKind:`web`,minBackoffMs:500,maxBackoffMs:15e3,pingIntervalMs:25e3,authProbeAfterFailures:2,...e,baseUrl:wl(e.baseUrl)},this.clientId=e.clientId??wj()}get status(){return this._status}connect(){this.manuallyClosed=!1,!(this.ws&&(this._status===`open`||this._status===`connecting`))&&this.open()}close(){this.manuallyClosed=!0,this.epoch+=1,this.clearTimers();let e=this.ws;if(this.ws=null,e){e.onopen=e.onclose=e.onerror=e.onmessage=null;try{e.close(1e3,`client closed`)}catch{}}this.setStatus(`closed`)}send(e){let t=this.ws;if(!t||t.readyState!==Cj)return!1;try{return t.send(JSON.stringify(e)),!0}catch{return!1}}on(e,t){let n=this.handlers.get(e);n||(n=new Set,this.handlers.set(e,n));let r=t;return n.add(r),()=>{n?.delete(r)}}onAny(e){return this.anyHandlers.add(e),()=>{this.anyHandlers.delete(e)}}onStatus(e){return this.statusHandlers.add(e),e(this._status),()=>{this.statusHandlers.delete(e)}}subscribe(e,t){let n=this.subscriptions.get(e),r=t??n;this.subscriptions.set(e,r),this.send(r===void 0?{type:`subscribe`,sessionId:e}:{type:`subscribe`,sessionId:e,afterSeq:r})}unsubscribe(e){this.subscriptions.delete(e),this.send({type:`unsubscribe`,sessionId:e})}noteSeq(e,t){if(t===null||!this.subscriptions.has(e))return;let n=this.subscriptions.get(e);(n===void 0||t>n)&&this.subscriptions.set(e,t)}prompt(e,t,n={}){let r=n.requestId??`req-${this.clientId.slice(0,8)}-${++this.promptCounter}`,i={type:`prompt`,sessionId:e,requestId:r,text:t};if(n.attachments&&n.attachments.length>0&&(i.attachments=n.attachments),n.options&&(i.options=n.options),!this.send(i))throw Error(`not connected`);return r}respondPermission(e,t,n){return this.send({type:`permission_response`,sessionId:e,requestId:t,decision:n})}interrupt(e){return this.send({type:`interrupt`,sessionId:e})}setModel(e,t){return this.send({type:`set_model`,sessionId:e,model:t})}setPermissionMode(e,t){return this.send({type:`set_permission_mode`,sessionId:e,mode:t})}setEffort(e,t){return this.send({type:`set_effort`,sessionId:e,effort:t})}open(){this.clearTimers(),this.epoch+=1,this.setStatus(this.attempts===0?`connecting`:`reconnecting`);let e=Tj(this.opts.baseUrl,this.opts.token),t=this.opts.createWebSocket??(e=>new WebSocket(e)),n;try{n=t(e)}catch(e){this.scheduleReconnect(String(e?.message??e));return}this.ws=n;let r=!1;n.onopen=()=>{if(this.ws===n){r=!0,this.attempts=0,this.preOpenFailures=0,this.setStatus(`open`),this.send({type:`hello`,protocolVersion:1,clientKind:this.opts.clientKind,clientId:this.clientId,...this.opts.clientVersion?{clientVersion:this.opts.clientVersion}:{}});for(let[e,t]of this.subscriptions)this.send(t===void 0?{type:`subscribe`,sessionId:e}:{type:`subscribe`,sessionId:e,afterSeq:t});this.opts.pingIntervalMs>0&&(this.pingTimer=setInterval(()=>this.send({type:`ping`,ts:Date.now()}),this.opts.pingIntervalMs))}},n.onmessage=e=>{if(this.ws!==n)return;let t;try{t=typeof e.data==`string`?JSON.parse(e.data):null}catch{return}ke(t)&&this.dispatch(t)},n.onerror=()=>{},n.onclose=e=>{if(this.ws!==n)return;if(this.ws=null,this.pingTimer&&=(clearInterval(this.pingTimer),null),this.manuallyClosed){this.setStatus(`closed`);return}if(e.code===4401||e.code===4403||e.code===1008){this.setStatus(`unauthorized`,e.reason||`host rejected the token or origin`);return}let t=e.reason||`closed (${e.code})`;if(this.preOpenFailures=r?0:this.preOpenFailures+1,!r&&this.opts.authProbeAfterFailures>0&&this.preOpenFailures>=this.opts.authProbeAfterFailures){this.probeAuthThenReconnect(t);return}this.scheduleReconnect(t)}}async probeAuthThenReconnect(e){let t=this.epoch;this.setStatus(`reconnecting`,e);let n=this.opts.fetchImpl??((e,t)=>fetch(e,t)),r=!1;try{let e=await n(`${this.opts.baseUrl}${P.health}`,{method:`GET`,headers:{authorization:`Bearer ${this.opts.token}`}});if(e.status===401||e.status===403)r=!0;else if(e.status===200){let t=await e.json().catch(()=>null);r=!(t&&typeof t==`object`&&typeof t.hostId==`string`)}}catch{}if(!(this.manuallyClosed||t!==this.epoch)){if(r){this.setStatus(`unauthorized`,`host rejected the token`);return}this.scheduleReconnect(e)}}dispatch(e){e.type===`agent`&&e.seq!==null&&this.noteSeq(e.sessionId,e.seq);let t=this.handlers.get(e.type);if(t)for(let n of[...t])Dj(()=>n(e));for(let t of[...this.anyHandlers])Dj(()=>t(e))}scheduleReconnect(e){this.attempts+=1;let t=Math.min(this.opts.maxBackoffMs,this.opts.minBackoffMs*2**Math.min(this.attempts-1,10)),n=Math.round(t*(.7+Math.random()*.6));this.setStatus(`reconnecting`,e);let r=this.opts.setTimeoutImpl??setTimeout;this.reconnectTimer=r(()=>{this.reconnectTimer=null,this.manuallyClosed||this.open()},n)}clearTimers(){this.reconnectTimer&&=((this.opts.clearTimeoutImpl??clearTimeout)(this.reconnectTimer),null),this.pingTimer&&=(clearInterval(this.pingTimer),null)}setStatus(e,t){this._status=e;for(let n of[...this.statusHandlers])Dj(()=>n(e,t))}};function Dj(e){try{e()}catch(e){console.error(`[HostSocket] handler failed`,e)}}var Oj=/([?&#](?:token|access_token|key|api_key|secret|password)=)[^&#\s"']*/gi,kj=/\b(Bearer|Basic)\s+[A-Za-z0-9\-._~+/=]{8,}/g;function Aj(e){return e.replace(Oj,`$1[redacted]`).replace(kj,`$1 [redacted]`)}function jj(e,t){return e.length<=t?e:`${e.slice(0,t-1)}…`}function Mj(e){return typeof e==`object`&&!!e&&typeof e.message==`string`}function Nj(e){if(Mj(e)){let t=typeof e.name==`string`&&e.name?e.name:`Error`,n=typeof e.stack==`string`&&e.stack?e.stack:null;return{message:e.message||t,stack:n}}return typeof e==`string`?{message:jj(e,512),stack:null}:{message:`Unhandled rejection (${e===null?`null`:Array.isArray(e)?`array`:typeof e})`,stack:null}}function Pj(e){return e?e.split(`
|
|
138
|
+
`).find(e=>/^\s+at\s/.test(e))?.trim()??``:``}function Fj(e){let t=e.now??(()=>Date.now()),n=e.maxPerMinute??5,r=e.embedded??`browser`,i=[],a=new Map,o=(e,t)=>{for(;i.length>0&&(i[0]??0)<=t-6e4;)i.shift();for(let[e,n]of a)n<=t-6e4&&a.delete(e);return a.has(e)||i.length>=n?!1:(i.push(t),a.set(e,t),!0)},s=async(n,i={})=>{try{let a=e.api.reportError;if(typeof a!=`function`)return!1;let{message:s,stack:c}=Nj(n),l=t();if(!o(`${s}\n${Pj(c)}`,l))return!1;let u={client:`web-ui`,message:jj(Aj(s),Ns),detail:{source:`manual`,...i,embedded:r},at:new Date(l).toISOString()};return c&&(u.stack=jj(Aj(c),Ps)),e.appVersion&&(u.appVersion=e.appVersion),e.platform&&(u.platform=e.platform),await a.call(e.api,u),!0}catch{return!1}},c=e=>{if(typeof e?.message!=`string`)return;let t=e.error??null;if(t===null&&!e.message)return;let n={source:`window.onerror`};typeof e.filename==`string`&&e.filename&&(n.filename=e.filename),typeof e.lineno==`number`&&e.lineno>0&&(n.lineno=e.lineno),typeof e.colno==`number`&&e.colno>0&&(n.colno=e.colno),s(t??e.message,n)},l=e=>{s(e?.reason,{source:`unhandledrejection`})};return{install:t=>{if(typeof e.api.reportError!=`function`)return()=>{};let n=e=>c(e),r=e=>l(e);return t.addEventListener(`error`,n),t.addEventListener(`unhandledrejection`,r),()=>{t.removeEventListener(`error`,n),t.removeEventListener(`unhandledrejection`,r)}},report:s,handleErrorEvent:c,handleRejectionEvent:l}}var Ij=1;function Lj(e,t){return`${wl(e).replace(/^http(s?):/i,`ws$1:`)}${P.remoteWs}?token=${encodeURIComponent(t)}`}function Rj(e){return`tab-${e}-${Math.random().toString(36).slice(2,10)}`}var zj=class{#e;#t=new Map;#n=new Set;#r=null;#i=`idle`;#a=null;#o=0;#s=!1;#c=0;#l=null;constructor(e){this.#e=e}get status(){return this.#i}get pairingCount(){return this.#t.size}onStatus(e){return this.#n.add(e),e(this.#i),()=>{this.#n.delete(e)}}connect(){if(this.#r||this.#i===`connecting`)return;this.#s=!1,this.#d(`connecting`);let e=Lj(this.#e.baseUrl,this.#e.token),t=this.#e.createWebSocket??(e=>new WebSocket(e)),n;try{n=t(e)}catch{this.#d(`closed`),this.#u();return}this.#r=n,n.onopen=()=>{if(this.#r===n){this.#o=0,this.#d(`open`),this.#f({type:`remote_hello`,protocolVersion:1,clientId:this.#e.clientId??`web-ui`,...this.#e.clientVersion?{clientVersion:this.#e.clientVersion}:{}});for(let e of this.#t.values())this.#p(e)}},n.onmessage=e=>{this.#r===n&&this.#h(e.data)},n.onerror=()=>void 0,n.onclose=()=>{if(this.#r===n){this.#r=null;for(let e of this.#t.values())this.#m(e,{state:`host_offline`,online:!1,detail:`reconnecting to this PC…`});this.#i!==`unavailable`&&this.#d(`closed`),this.#u()}}}close(){this.#s=!0,this.#l=null,this.#a&&(this.#e.clearTimeoutImpl??clearTimeout)(this.#a),this.#a=null,this.#t.clear();let e=this.#r;if(this.#r=null,e){e.onopen=e.onclose=e.onerror=e.onmessage=null;try{e.close(1e3,`closed`)}catch{}}this.#d(`idle`)}#u(){let e=this.#e.reconnectDelayMs??1e3;if(this.#s||e<=0||this.#a||this.#t.size===0)return;let t=this.#e.maxReconnectDelayMs??2e4;this.#o+=1;let n=Math.min(e*2**Math.min(this.#o-1,5),t),r=this.#e.setTimeoutImpl??setTimeout;this.#a=r(()=>{this.#a=null,this.#s||this.connect()},n)}#d(e,t){if(this.#i!==e){this.#i=e;for(let n of[...this.#n])n(e,t)}}#f(e){let t=this.#r;if(!t||t.readyState!==Ij)return!1;try{return t.send(JSON.stringify(e)),!0}catch{return!1}}attach(e){this.#c+=1;let t=Rj(this.#c),n={pairingId:t,hostId:e.hostId,sessionId:e.sessionId,state:`unavailable`,online:!1,detail:null,onFrame:e.onFrame,onState:e.onState};return this.#t.set(t,n),this.#r&&this.#r.readyState===Ij?(this.#l!==null&&this.#m(n,{detail:this.#l}),this.#p(n)):this.connect(),{pairingId:t,hostId:e.hostId,sessionId:e.sessionId,send:e=>this.send(t,e),detach:()=>this.detach(t)}}detach(e){this.#t.get(e)&&(this.#t.delete(e),this.#f({type:`remote_detach`,pairingId:e}),this.#t.size===0&&this.close())}send(e,t){let n=this.#t.get(e);return!n||!n.online?!1:this.#f({type:`remote_send`,pairingId:e,frame:t})}#p(e){this.#f({type:`remote_attach`,pairingId:e.pairingId,hostId:e.hostId,sessionId:e.sessionId})}#m(e,t){Object.assign(e,t),e.onState({pairingId:e.pairingId,hostId:e.hostId,sessionId:e.sessionId,state:e.state,online:e.online,detail:e.detail})}#h(e){let t;try{let n=JSON.parse(typeof e==`string`?e:String(e));if(!je(n))return;t=n}catch{return}switch(t.type){case`remote_welcome`:if(!t.canRelay){let e=t.reason??`this PC cannot reach your other devices right now`;this.#l=e,this.#d(`unavailable`,e);for(let t of this.#t.values())this.#m(t,{state:`unavailable`,online:!1,detail:e});return}this.#l=null,this.#i===`unavailable`&&this.#d(`open`);for(let e of this.#t.values())e.online||this.#p(e);return;case`remote_status`:{let e=this.#t.get(t.pairingId);if(!e)return;this.#m(e,{state:t.state,online:Me(t.state),detail:t.detail??null});return}case`remote_frame`:this.#t.get(t.pairingId)?.onFrame(t.frame);return;case`remote_error`:{let e=t.pairingId?this.#t.get(t.pairingId):void 0;e&&this.#m(e,{state:`error`,online:!1,detail:t.message});return}default:return}}};function Bj({defaultBaseUrl:e,error:t,onConnect:n}){let[r,i]=(0,v.useState)(e),[a,o]=(0,v.useState)(``),s=r.trim().length>0&&a.trim().length>0;return(0,U.jsx)(`div`,{className:`flex min-h-full items-center justify-center bg-bg p-4`,children:(0,U.jsxs)(`form`,{className:`w-full max-w-md space-y-4 rounded-xl border border-border bg-surface p-6 shadow-md`,onSubmit:e=>{e.preventDefault(),s&&n({baseUrl:r.trim(),token:a.trim()})},children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h1`,{className:`text-lg font-semibold`,children:`Connect to your OonaCode host`}),(0,U.jsxs)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:[`This page needs the host's access token. It is normally passed automatically when you open the UI from the desktop app or run`,` `,(0,U.jsx)(`code`,{className:`rounded bg-surface-2 px-1 font-mono`,children:`oona web`}),`.`]})]}),t?(0,U.jsx)(`div`,{className:`rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-sm text-danger`,role:`alert`,children:t}):null,(0,U.jsx)(Op,{label:`Host URL`,children:(0,U.jsx)(`input`,{className:Y,value:r,onChange:e=>i(e.target.value),placeholder:`http://127.0.0.1:41317`,spellCheck:!1,autoComplete:`url`})}),(0,U.jsx)(Op,{label:`Host token`,hint:'Found in %LOCALAPPDATA%\\OonaCode\\host\\host.json ("token") on the PC running the host, printed by `oona serve --show-token`, or embedded in the URL printed by `oona web --print`.',children:(0,U.jsx)(`input`,{className:Y,type:`password`,value:a,onChange:e=>o(e.target.value),autoComplete:`off`,spellCheck:!1,autoFocus:!0})}),(0,U.jsx)(q,{type:`submit`,variant:`primary`,className:`w-full justify-center`,disabled:!s,children:`Connect`})]})})}function Vj(e){return Math.min(5e3,500*2**Math.max(0,e))}async function Hj(e){let t=e.sleep??(e=>new Promise(t=>setTimeout(t,e)));for(let n=0;;n++){if(e.cancelled?.())return null;try{let t=await e.getConnection();if(t&&typeof t.token==`string`&&t.token&&typeof t.baseUrl==`string`&&await e.accepts(t).catch(()=>!1))return t}catch{}await t(Vj(n))}}function Uj(){let[e,t]=(0,v.useState)(void 0),[n,r]=(0,v.useState)(null),[i,a]=(0,v.useState)(null),[o,s]=(0,v.useState)(0),c=(0,v.useRef)(!1),l=(0,v.useRef)(!1);(0,v.useEffect)(()=>()=>{l.current=!0},[]);let u=(0,v.useCallback)(()=>{let e=window.oonacode;return!e||typeof e.getConnection!=`function`?!1:c.current?!0:(c.current=!0,Hj({getConnection:()=>e.getConnection(),accepts:e=>Tl(e).health().then(()=>!0,()=>!1),cancelled:()=>l.current}).then(e=>{c.current=!1,e&&(bj(window.sessionStorage,e),s(e=>e+1),t({baseUrl:e.baseUrl,token:e.token}))}),!0)},[]);(0,v.useEffect)(()=>{Sj().then(e=>{r(e.sessionId),!(!e.connection&&u())&&t(e.connection)})},[u]),(0,v.useEffect)(()=>{e!==void 0&&document.getElementById(`oona-splash`)?.remove()},[e]);let d=(0,v.useCallback)(()=>{bj(window.sessionStorage,null),!u()&&(a(`The host rejected the token. Paste a current one from the host.`),t(null))},[u]),f=(0,v.useMemo)(()=>e?{api:Tl(e),socket:new Ej({baseUrl:e.baseUrl,token:e.token,clientKind:window.oonacode?`desktop`:`web`,clientVersion:window.oonacode?.appVersion}),relay:new zj({baseUrl:e.baseUrl,token:e.token,clientId:window.oonacode?`desktop`:`web-ui`,...window.oonacode?.appVersion?{clientVersion:window.oonacode.appVersion}:{}})}:null,[e]),p=(0,v.useMemo)(()=>f?Fj({api:f.api,appVersion:window.oonacode?.appVersion??null,platform:window.oonacode?.platform??null,embedded:window.oonacode?`desktop`:`browser`}):null,[f]);return(0,v.useEffect)(()=>p?.install(window),[p]),e===void 0?null:!e||!f?(0,U.jsx)(Bj,{defaultBaseUrl:window.location.origin,error:i,onConnect:e=>{bj(window.sessionStorage,e),a(null),t(e)}}):(0,U.jsx)(hj,{api:f.api,socket:f.socket,relay:f.relay,initialSessionId:n,onUnauthorized:d,...p?{reportError:p.report}:{}},o)}var Wj=document.getElementById(`root`);(0,y.createRoot)(Wj).render((0,U.jsx)(v.StrictMode,{children:(0,U.jsx)(Uj,{})}));
|