@orion-agents/orion-code 0.3.9 → 0.3.11

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.
@@ -0,0 +1,17 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalPanel-CMLU7j08.js","assets/TerminalPanel-DLuoa74B.css","assets/GitPanel-Cnz52VRO.js","assets/DiffViewer-BrE5tfZc.js","assets/ReviewPanel-D_xxkVG_.js"])))=>i.map(i=>d[i]);
2
+ var Dh=Object.defineProperty;var Lh=(t,r,l)=>r in t?Dh(t,r,{enumerable:!0,configurable:!0,writable:!0,value:l}):t[r]=l;var Wn=(t,r,l)=>Lh(t,typeof r!="symbol"?r+"":r,l);(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))a(d);new MutationObserver(d=>{for(const p of d)if(p.type==="childList")for(const h of p.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&a(h)}).observe(document,{childList:!0,subtree:!0});function l(d){const p={};return d.integrity&&(p.integrity=d.integrity),d.referrerPolicy&&(p.referrerPolicy=d.referrerPolicy),d.crossOrigin==="use-credentials"?p.credentials="include":d.crossOrigin==="anonymous"?p.credentials="omit":p.credentials="same-origin",p}function a(d){if(d.ep)return;d.ep=!0;const p=l(d);fetch(d.href,p)}})();function gf(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var fa={exports:{}},Os={},pa={exports:{}},Ie={};var vd;function Oh(){if(vd)return Ie;vd=1;var t=Symbol.for("react.element"),r=Symbol.for("react.portal"),l=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),p=Symbol.for("react.provider"),h=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),k=Symbol.for("react.suspense"),I=Symbol.for("react.memo"),P=Symbol.for("react.lazy"),N=Symbol.iterator;function T(w){return w===null||typeof w!="object"?null:(w=N&&w[N]||w["@@iterator"],typeof w=="function"?w:null)}var M={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},W=Object.assign,D={};function O(w,A,R){this.props=w,this.context=A,this.refs=D,this.updater=R||M}O.prototype.isReactComponent={},O.prototype.setState=function(w,A){if(typeof w!="object"&&typeof w!="function"&&w!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,w,A,"setState")},O.prototype.forceUpdate=function(w){this.updater.enqueueForceUpdate(this,w,"forceUpdate")};function ne(){}ne.prototype=O.prototype;function F(w,A,R){this.props=w,this.context=A,this.refs=D,this.updater=R||M}var we=F.prototype=new ne;we.constructor=F,W(we,O.prototype),we.isPureReactComponent=!0;var Z=Array.isArray,ue=Object.prototype.hasOwnProperty,b={current:null},H={key:!0,ref:!0,__self:!0,__source:!0};function fe(w,A,R){var le,ge={},ye=null,be=null;if(A!=null)for(le in A.ref!==void 0&&(be=A.ref),A.key!==void 0&&(ye=""+A.key),A)ue.call(A,le)&&!H.hasOwnProperty(le)&&(ge[le]=A[le]);var ke=arguments.length-2;if(ke===1)ge.children=R;else if(1<ke){for(var Pe=Array(ke),He=0;He<ke;He++)Pe[He]=arguments[He+2];ge.children=Pe}if(w&&w.defaultProps)for(le in ke=w.defaultProps,ke)ge[le]===void 0&&(ge[le]=ke[le]);return{$$typeof:t,type:w,key:ye,ref:be,props:ge,_owner:b.current}}function re(w,A){return{$$typeof:t,type:w.type,key:A,ref:w.ref,props:w.props,_owner:w._owner}}function Ce(w){return typeof w=="object"&&w!==null&&w.$$typeof===t}function _e(w){var A={"=":"=0",":":"=2"};return"$"+w.replace(/[=:]/g,function(R){return A[R]})}var Re=/\/+/g;function B(w,A){return typeof w=="object"&&w!==null&&w.key!=null?_e(""+w.key):A.toString(36)}function ve(w,A,R,le,ge){var ye=typeof w;(ye==="undefined"||ye==="boolean")&&(w=null);var be=!1;if(w===null)be=!0;else switch(ye){case"string":case"number":be=!0;break;case"object":switch(w.$$typeof){case t:case r:be=!0}}if(be)return be=w,ge=ge(be),w=le===""?"."+B(be,0):le,Z(ge)?(R="",w!=null&&(R=w.replace(Re,"$&/")+"/"),ve(ge,A,R,"",function(He){return He})):ge!=null&&(Ce(ge)&&(ge=re(ge,R+(!ge.key||be&&be.key===ge.key?"":(""+ge.key).replace(Re,"$&/")+"/")+w)),A.push(ge)),1;if(be=0,le=le===""?".":le+":",Z(w))for(var ke=0;ke<w.length;ke++){ye=w[ke];var Pe=le+B(ye,ke);be+=ve(ye,A,R,Pe,ge)}else if(Pe=T(w),typeof Pe=="function")for(w=Pe.call(w),ke=0;!(ye=w.next()).done;)ye=ye.value,Pe=le+B(ye,ke++),be+=ve(ye,A,R,Pe,ge);else if(ye==="object")throw A=String(w),Error("Objects are not valid as a React child (found: "+(A==="[object Object]"?"object with keys {"+Object.keys(w).join(", ")+"}":A)+"). If you meant to render a collection of children, use an array instead.");return be}function G(w,A,R){if(w==null)return w;var le=[],ge=0;return ve(w,le,"","",function(ye){return A.call(R,ye,ge++)}),le}function de(w){if(w._status===-1){var A=w._result;A=A(),A.then(function(R){(w._status===0||w._status===-1)&&(w._status=1,w._result=R)},function(R){(w._status===0||w._status===-1)&&(w._status=2,w._result=R)}),w._status===-1&&(w._status=0,w._result=A)}if(w._status===1)return w._result.default;throw w._result}var Y={current:null},$={transition:null},X={ReactCurrentDispatcher:Y,ReactCurrentBatchConfig:$,ReactCurrentOwner:b};function K(){throw Error("act(...) is not supported in production builds of React.")}return Ie.Children={map:G,forEach:function(w,A,R){G(w,function(){A.apply(this,arguments)},R)},count:function(w){var A=0;return G(w,function(){A++}),A},toArray:function(w){return G(w,function(A){return A})||[]},only:function(w){if(!Ce(w))throw Error("React.Children.only expected to receive a single React element child.");return w}},Ie.Component=O,Ie.Fragment=l,Ie.Profiler=d,Ie.PureComponent=F,Ie.StrictMode=a,Ie.Suspense=k,Ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=X,Ie.act=K,Ie.cloneElement=function(w,A,R){if(w==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+w+".");var le=W({},w.props),ge=w.key,ye=w.ref,be=w._owner;if(A!=null){if(A.ref!==void 0&&(ye=A.ref,be=b.current),A.key!==void 0&&(ge=""+A.key),w.type&&w.type.defaultProps)var ke=w.type.defaultProps;for(Pe in A)ue.call(A,Pe)&&!H.hasOwnProperty(Pe)&&(le[Pe]=A[Pe]===void 0&&ke!==void 0?ke[Pe]:A[Pe])}var Pe=arguments.length-2;if(Pe===1)le.children=R;else if(1<Pe){ke=Array(Pe);for(var He=0;He<Pe;He++)ke[He]=arguments[He+2];le.children=ke}return{$$typeof:t,type:w.type,key:ge,ref:ye,props:le,_owner:be}},Ie.createContext=function(w){return w={$$typeof:h,_currentValue:w,_currentValue2:w,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},w.Provider={$$typeof:p,_context:w},w.Consumer=w},Ie.createElement=fe,Ie.createFactory=function(w){var A=fe.bind(null,w);return A.type=w,A},Ie.createRef=function(){return{current:null}},Ie.forwardRef=function(w){return{$$typeof:g,render:w}},Ie.isValidElement=Ce,Ie.lazy=function(w){return{$$typeof:P,_payload:{_status:-1,_result:w},_init:de}},Ie.memo=function(w,A){return{$$typeof:I,type:w,compare:A===void 0?null:A}},Ie.startTransition=function(w){var A=$.transition;$.transition={};try{w()}finally{$.transition=A}},Ie.unstable_act=K,Ie.useCallback=function(w,A){return Y.current.useCallback(w,A)},Ie.useContext=function(w){return Y.current.useContext(w)},Ie.useDebugValue=function(){},Ie.useDeferredValue=function(w){return Y.current.useDeferredValue(w)},Ie.useEffect=function(w,A){return Y.current.useEffect(w,A)},Ie.useId=function(){return Y.current.useId()},Ie.useImperativeHandle=function(w,A,R){return Y.current.useImperativeHandle(w,A,R)},Ie.useInsertionEffect=function(w,A){return Y.current.useInsertionEffect(w,A)},Ie.useLayoutEffect=function(w,A){return Y.current.useLayoutEffect(w,A)},Ie.useMemo=function(w,A){return Y.current.useMemo(w,A)},Ie.useReducer=function(w,A,R){return Y.current.useReducer(w,A,R)},Ie.useRef=function(w){return Y.current.useRef(w)},Ie.useState=function(w){return Y.current.useState(w)},Ie.useSyncExternalStore=function(w,A,R){return Y.current.useSyncExternalStore(w,A,R)},Ie.useTransition=function(){return Y.current.useTransition()},Ie.version="18.3.1",Ie}var yd;function Ra(){return yd||(yd=1,pa.exports=Oh()),pa.exports}var xd;function zh(){if(xd)return Os;xd=1;var t=Ra(),r=Symbol.for("react.element"),l=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,d=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function h(g,k,I){var P,N={},T=null,M=null;I!==void 0&&(T=""+I),k.key!==void 0&&(T=""+k.key),k.ref!==void 0&&(M=k.ref);for(P in k)a.call(k,P)&&!p.hasOwnProperty(P)&&(N[P]=k[P]);if(g&&g.defaultProps)for(P in k=g.defaultProps,k)N[P]===void 0&&(N[P]=k[P]);return{$$typeof:r,type:g,key:T,ref:M,props:N,_owner:d.current}}return Os.Fragment=l,Os.jsx=h,Os.jsxs=h,Os}var wd;function Fh(){return wd||(wd=1,fa.exports=zh()),fa.exports}var i=Fh(),m=Ra();const qh=gf(m);var to={},ha={exports:{}},jn={},ma={exports:{}},ga={};var kd;function Bh(){return kd||(kd=1,(function(t){function r($,X){var K=$.length;$.push(X);e:for(;0<K;){var w=K-1>>>1,A=$[w];if(0<d(A,X))$[w]=X,$[K]=A,K=w;else break e}}function l($){return $.length===0?null:$[0]}function a($){if($.length===0)return null;var X=$[0],K=$.pop();if(K!==X){$[0]=K;e:for(var w=0,A=$.length,R=A>>>1;w<R;){var le=2*(w+1)-1,ge=$[le],ye=le+1,be=$[ye];if(0>d(ge,K))ye<A&&0>d(be,ge)?($[w]=be,$[ye]=K,w=ye):($[w]=ge,$[le]=K,w=le);else if(ye<A&&0>d(be,K))$[w]=be,$[ye]=K,w=ye;else break e}}return X}function d($,X){var K=$.sortIndex-X.sortIndex;return K!==0?K:$.id-X.id}if(typeof performance=="object"&&typeof performance.now=="function"){var p=performance;t.unstable_now=function(){return p.now()}}else{var h=Date,g=h.now();t.unstable_now=function(){return h.now()-g}}var k=[],I=[],P=1,N=null,T=3,M=!1,W=!1,D=!1,O=typeof setTimeout=="function"?setTimeout:null,ne=typeof clearTimeout=="function"?clearTimeout:null,F=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function we($){for(var X=l(I);X!==null;){if(X.callback===null)a(I);else if(X.startTime<=$)a(I),X.sortIndex=X.expirationTime,r(k,X);else break;X=l(I)}}function Z($){if(D=!1,we($),!W)if(l(k)!==null)W=!0,de(ue);else{var X=l(I);X!==null&&Y(Z,X.startTime-$)}}function ue($,X){W=!1,D&&(D=!1,ne(fe),fe=-1),M=!0;var K=T;try{for(we(X),N=l(k);N!==null&&(!(N.expirationTime>X)||$&&!_e());){var w=N.callback;if(typeof w=="function"){N.callback=null,T=N.priorityLevel;var A=w(N.expirationTime<=X);X=t.unstable_now(),typeof A=="function"?N.callback=A:N===l(k)&&a(k),we(X)}else a(k);N=l(k)}if(N!==null)var R=!0;else{var le=l(I);le!==null&&Y(Z,le.startTime-X),R=!1}return R}finally{N=null,T=K,M=!1}}var b=!1,H=null,fe=-1,re=5,Ce=-1;function _e(){return!(t.unstable_now()-Ce<re)}function Re(){if(H!==null){var $=t.unstable_now();Ce=$;var X=!0;try{X=H(!0,$)}finally{X?B():(b=!1,H=null)}}else b=!1}var B;if(typeof F=="function")B=function(){F(Re)};else if(typeof MessageChannel<"u"){var ve=new MessageChannel,G=ve.port2;ve.port1.onmessage=Re,B=function(){G.postMessage(null)}}else B=function(){O(Re,0)};function de($){H=$,b||(b=!0,B())}function Y($,X){fe=O(function(){$(t.unstable_now())},X)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function($){$.callback=null},t.unstable_continueExecution=function(){W||M||(W=!0,de(ue))},t.unstable_forceFrameRate=function($){0>$||125<$?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):re=0<$?Math.floor(1e3/$):5},t.unstable_getCurrentPriorityLevel=function(){return T},t.unstable_getFirstCallbackNode=function(){return l(k)},t.unstable_next=function($){switch(T){case 1:case 2:case 3:var X=3;break;default:X=T}var K=T;T=X;try{return $()}finally{T=K}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function($,X){switch($){case 1:case 2:case 3:case 4:case 5:break;default:$=3}var K=T;T=$;try{return X()}finally{T=K}},t.unstable_scheduleCallback=function($,X,K){var w=t.unstable_now();switch(typeof K=="object"&&K!==null?(K=K.delay,K=typeof K=="number"&&0<K?w+K:w):K=w,$){case 1:var A=-1;break;case 2:A=250;break;case 5:A=1073741823;break;case 4:A=1e4;break;default:A=5e3}return A=K+A,$={id:P++,callback:X,priorityLevel:$,startTime:K,expirationTime:A,sortIndex:-1},K>w?($.sortIndex=K,r(I,$),l(k)===null&&$===l(I)&&(D?(ne(fe),fe=-1):D=!0,Y(Z,K-w))):($.sortIndex=A,r(k,$),W||M||(W=!0,de(ue))),$},t.unstable_shouldYield=_e,t.unstable_wrapCallback=function($){var X=T;return function(){var K=T;T=X;try{return $.apply(this,arguments)}finally{T=K}}}})(ga)),ga}var jd;function Wh(){return jd||(jd=1,ma.exports=Bh()),ma.exports}var Sd;function Uh(){if(Sd)return jn;Sd=1;var t=Ra(),r=Wh();function l(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,s=1;s<arguments.length;s++)n+="&args[]="+encodeURIComponent(arguments[s]);return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var a=new Set,d={};function p(e,n){h(e,n),h(e+"Capture",n)}function h(e,n){for(d[e]=n,e=0;e<n.length;e++)a.add(n[e])}var g=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),k=Object.prototype.hasOwnProperty,I=/^[: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]*$/,P={},N={};function T(e){return k.call(N,e)?!0:k.call(P,e)?!1:I.test(e)?N[e]=!0:(P[e]=!0,!1)}function M(e,n,s,o){if(s!==null&&s.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return o?!1:s!==null?!s.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function W(e,n,s,o){if(n===null||typeof n>"u"||M(e,n,s,o))return!0;if(o)return!1;if(s!==null)switch(s.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function D(e,n,s,o,c,u,f){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=o,this.attributeNamespace=c,this.mustUseProperty=s,this.propertyName=e,this.type=n,this.sanitizeURL=u,this.removeEmptyString=f}var O={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){O[e]=new D(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];O[n]=new D(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){O[e]=new D(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){O[e]=new D(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){O[e]=new D(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){O[e]=new D(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){O[e]=new D(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){O[e]=new D(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){O[e]=new D(e,5,!1,e.toLowerCase(),null,!1,!1)});var ne=/[\-:]([a-z])/g;function F(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var n=e.replace(ne,F);O[n]=new D(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(ne,F);O[n]=new D(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(ne,F);O[n]=new D(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){O[e]=new D(e,1,!1,e.toLowerCase(),null,!1,!1)}),O.xlinkHref=new D("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){O[e]=new D(e,1,!1,e.toLowerCase(),null,!0,!0)});function we(e,n,s,o){var c=O.hasOwnProperty(n)?O[n]:null;(c!==null?c.type!==0:o||!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(W(n,s,c,o)&&(s=null),o||c===null?T(n)&&(s===null?e.removeAttribute(n):e.setAttribute(n,""+s)):c.mustUseProperty?e[c.propertyName]=s===null?c.type===3?!1:"":s:(n=c.attributeName,o=c.attributeNamespace,s===null?e.removeAttribute(n):(c=c.type,s=c===3||c===4&&s===!0?"":""+s,o?e.setAttributeNS(o,n,s):e.setAttribute(n,s))))}var Z=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,ue=Symbol.for("react.element"),b=Symbol.for("react.portal"),H=Symbol.for("react.fragment"),fe=Symbol.for("react.strict_mode"),re=Symbol.for("react.profiler"),Ce=Symbol.for("react.provider"),_e=Symbol.for("react.context"),Re=Symbol.for("react.forward_ref"),B=Symbol.for("react.suspense"),ve=Symbol.for("react.suspense_list"),G=Symbol.for("react.memo"),de=Symbol.for("react.lazy"),Y=Symbol.for("react.offscreen"),$=Symbol.iterator;function X(e){return e===null||typeof e!="object"?null:(e=$&&e[$]||e["@@iterator"],typeof e=="function"?e:null)}var K=Object.assign,w;function A(e){if(w===void 0)try{throw Error()}catch(s){var n=s.stack.trim().match(/\n( *(at )?)/);w=n&&n[1]||""}return`
3
+ `+w+e}var R=!1;function le(e,n){if(!e||R)return"";R=!0;var s=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(n,[])}catch(E){var o=E}Reflect.construct(e,[],n)}else{try{n.call()}catch(E){o=E}e.call(n.prototype)}else{try{throw Error()}catch(E){o=E}e()}}catch(E){if(E&&o&&typeof E.stack=="string"){for(var c=E.stack.split(`
4
+ `),u=o.stack.split(`
5
+ `),f=c.length-1,v=u.length-1;1<=f&&0<=v&&c[f]!==u[v];)v--;for(;1<=f&&0<=v;f--,v--)if(c[f]!==u[v]){if(f!==1||v!==1)do if(f--,v--,0>v||c[f]!==u[v]){var y=`
6
+ `+c[f].replace(" at new "," at ");return e.displayName&&y.includes("<anonymous>")&&(y=y.replace("<anonymous>",e.displayName)),y}while(1<=f&&0<=v);break}}}finally{R=!1,Error.prepareStackTrace=s}return(e=e?e.displayName||e.name:"")?A(e):""}function ge(e){switch(e.tag){case 5:return A(e.type);case 16:return A("Lazy");case 13:return A("Suspense");case 19:return A("SuspenseList");case 0:case 2:case 15:return e=le(e.type,!1),e;case 11:return e=le(e.type.render,!1),e;case 1:return e=le(e.type,!0),e;default:return""}}function ye(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case H:return"Fragment";case b:return"Portal";case re:return"Profiler";case fe:return"StrictMode";case B:return"Suspense";case ve:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case _e:return(e.displayName||"Context")+".Consumer";case Ce:return(e._context.displayName||"Context")+".Provider";case Re:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case G:return n=e.displayName||null,n!==null?n:ye(e.type)||"Memo";case de:n=e._payload,e=e._init;try{return ye(e(n))}catch{}}return null}function be(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=n.render,e=e.displayName||e.name||"",n.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ye(n);case 8:return n===fe?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function ke(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Pe(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function He(e){var n=Pe(e)?"checked":"value",s=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),o=""+e[n];if(!e.hasOwnProperty(n)&&typeof s<"u"&&typeof s.get=="function"&&typeof s.set=="function"){var c=s.get,u=s.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return c.call(this)},set:function(f){o=""+f,u.call(this,f)}}),Object.defineProperty(e,n,{enumerable:s.enumerable}),{getValue:function(){return o},setValue:function(f){o=""+f},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function Se(e){e._valueTracker||(e._valueTracker=He(e))}function sn(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var s=n.getValue(),o="";return e&&(o=Pe(e)?e.checked?"true":"false":e.value),e=o,e!==s?(n.setValue(e),!0):!1}function Ye(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function pn(e,n){var s=n.checked;return K({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:s??e._wrapperState.initialChecked})}function Vn(e,n){var s=n.defaultValue==null?"":n.defaultValue,o=n.checked!=null?n.checked:n.defaultChecked;s=ke(n.value!=null?n.value:s),e._wrapperState={initialChecked:o,initialValue:s,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Mn(e,n){n=n.checked,n!=null&&we(e,"checked",n,!1)}function In(e,n){Mn(e,n);var s=ke(n.value),o=n.type;if(s!=null)o==="number"?(s===0&&e.value===""||e.value!=s)&&(e.value=""+s):e.value!==""+s&&(e.value=""+s);else if(o==="submit"||o==="reset"){e.removeAttribute("value");return}n.hasOwnProperty("value")?on(e,n.type,s):n.hasOwnProperty("defaultValue")&&on(e,n.type,ke(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(e.defaultChecked=!!n.defaultChecked)}function gn(e,n,s){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var o=n.type;if(!(o!=="submit"&&o!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+e._wrapperState.initialValue,s||n===e.value||(e.value=n),e.defaultValue=n}s=e.name,s!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,s!==""&&(e.name=s)}function on(e,n,s){(n!=="number"||Ye(e.ownerDocument)!==e)&&(s==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+s&&(e.defaultValue=""+s))}var it=Array.isArray;function Kn(e,n,s,o){if(e=e.options,n){n={};for(var c=0;c<s.length;c++)n["$"+s[c]]=!0;for(s=0;s<e.length;s++)c=n.hasOwnProperty("$"+e[s].value),e[s].selected!==c&&(e[s].selected=c),c&&o&&(e[s].defaultSelected=!0)}else{for(s=""+ke(s),n=null,c=0;c<e.length;c++){if(e[c].value===s){e[c].selected=!0,o&&(e[c].defaultSelected=!0);return}n!==null||e[c].disabled||(n=e[c])}n!==null&&(n.selected=!0)}}function Qn(e,n){if(n.dangerouslySetInnerHTML!=null)throw Error(l(91));return K({},n,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function It(e,n){var s=n.value;if(s==null){if(s=n.children,n=n.defaultValue,s!=null){if(n!=null)throw Error(l(92));if(it(s)){if(1<s.length)throw Error(l(93));s=s[0]}n=s}n==null&&(n=""),s=n}e._wrapperState={initialValue:ke(s)}}function Yt(e,n){var s=ke(n.value),o=ke(n.defaultValue);s!=null&&(s=""+s,s!==e.value&&(e.value=s),n.defaultValue==null&&e.defaultValue!==s&&(e.defaultValue=s)),o!=null&&(e.defaultValue=""+o)}function J(e){var n=e.textContent;n===e._wrapperState.initialValue&&n!==""&&n!==null&&(e.value=n)}function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function je(e,n){return e==null||e==="http://www.w3.org/1999/xhtml"?pe(n):e==="http://www.w3.org/2000/svg"&&n==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var De,$n=(function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(n,s,o,c){MSApp.execUnsafeLocalFunction(function(){return e(n,s,o,c)})}:e})(function(e,n){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=n;else{for(De=De||document.createElement("div"),De.innerHTML="<svg>"+n.valueOf().toString()+"</svg>",n=De.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;n.firstChild;)e.appendChild(n.firstChild)}});function An(e,n){if(n){var s=e.firstChild;if(s&&s===e.lastChild&&s.nodeType===3){s.nodeValue=n;return}}e.textContent=n}var Dn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ft=["Webkit","ms","Moz","O"];Object.keys(Dn).forEach(function(e){ft.forEach(function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1),Dn[n]=Dn[e]})});function ns(e,n,s){return n==null||typeof n=="boolean"||n===""?"":s||typeof n!="number"||n===0||Dn.hasOwnProperty(e)&&Dn[e]?(""+n).trim():n+"px"}function ts(e,n){e=e.style;for(var s in n)if(n.hasOwnProperty(s)){var o=s.indexOf("--")===0,c=ns(s,n[s],o);s==="float"&&(s="cssFloat"),o?e.setProperty(s,c):e[s]=c}}var Vs=K({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function yr(e,n){if(n){if(Vs[e]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(l(137,e));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(l(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(l(61))}if(n.style!=null&&typeof n.style!="object")throw Error(l(62))}}function xr(e,n){if(e.indexOf("-")===-1)return typeof n.is=="string";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 wr=null;function kr(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var jr=null,pt=null,ht=null;function rs(e){if(e=Ss(e)){if(typeof jr!="function")throw Error(l(280));var n=e.stateNode;n&&(n=vi(n),jr(e.stateNode,e.type,n))}}function ss(e){pt?ht?ht.push(e):ht=[e]:pt=e}function Ks(){if(pt){var e=pt,n=ht;if(ht=pt=null,rs(e),n)for(e=0;e<n.length;e++)rs(n[e])}}function j(e,n){return e(n)}function S(){}var L=!1;function se(e,n,s){if(L)return e(n,s);L=!0;try{return j(e,n,s)}finally{L=!1,(pt!==null||ht!==null)&&(S(),Ks())}}function ie(e,n){var s=e.stateNode;if(s===null)return null;var o=vi(s);if(o===null)return null;s=o[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(o=!o.disabled)||(e=e.type,o=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!o;break e;default:e=!1}if(e)return null;if(s&&typeof s!="function")throw Error(l(231,n,typeof s));return s}var Ae=!1;if(g)try{var Oe={};Object.defineProperty(Oe,"passive",{get:function(){Ae=!0}}),window.addEventListener("test",Oe,Oe),window.removeEventListener("test",Oe,Oe)}catch{Ae=!1}function Ze(e,n,s,o,c,u,f,v,y){var E=Array.prototype.slice.call(arguments,3);try{n.apply(s,E)}catch(q){this.onError(q)}}var bn=!1,Sr=null,Cr=!1,en=null,Qs={onError:function(e){bn=!0,Sr=e}};function Gs(e,n,s,o,c,u,f,v,y){bn=!1,Sr=null,Ze.apply(Qs,arguments)}function Ys(e,n,s,o,c,u,f,v,y){if(Gs.apply(this,arguments),bn){if(bn){var E=Sr;bn=!1,Sr=null}else throw Error(l(198));Cr||(Cr=!0,en=E)}}function Xt(e){var n=e,s=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do n=e,(n.flags&4098)!==0&&(s=n.return),e=n.return;while(e)}return n.tag===3?s:null}function Fa(e){if(e.tag===13){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function qa(e){if(Xt(e)!==e)throw Error(l(188))}function Vf(e){var n=e.alternate;if(!n){if(n=Xt(e),n===null)throw Error(l(188));return n!==e?null:e}for(var s=e,o=n;;){var c=s.return;if(c===null)break;var u=c.alternate;if(u===null){if(o=c.return,o!==null){s=o;continue}break}if(c.child===u.child){for(u=c.child;u;){if(u===s)return qa(c),e;if(u===o)return qa(c),n;u=u.sibling}throw Error(l(188))}if(s.return!==o.return)s=c,o=u;else{for(var f=!1,v=c.child;v;){if(v===s){f=!0,s=c,o=u;break}if(v===o){f=!0,o=c,s=u;break}v=v.sibling}if(!f){for(v=u.child;v;){if(v===s){f=!0,s=u,o=c;break}if(v===o){f=!0,o=u,s=c;break}v=v.sibling}if(!f)throw Error(l(189))}}if(s.alternate!==o)throw Error(l(190))}if(s.tag!==3)throw Error(l(188));return s.stateNode.current===s?e:n}function Ba(e){return e=Vf(e),e!==null?Wa(e):null}function Wa(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var n=Wa(e);if(n!==null)return n;e=e.sibling}return null}var Ua=r.unstable_scheduleCallback,Ha=r.unstable_cancelCallback,Kf=r.unstable_shouldYield,Qf=r.unstable_requestPaint,Ve=r.unstable_now,Gf=r.unstable_getCurrentPriorityLevel,To=r.unstable_ImmediatePriority,Va=r.unstable_UserBlockingPriority,Xs=r.unstable_NormalPriority,Yf=r.unstable_LowPriority,Ka=r.unstable_IdlePriority,Js=null,ot=null;function Xf(e){if(ot&&typeof ot.onCommitFiberRoot=="function")try{ot.onCommitFiberRoot(Js,e,void 0,(e.current.flags&128)===128)}catch{}}var Gn=Math.clz32?Math.clz32:ep,Jf=Math.log,Zf=Math.LN2;function ep(e){return e>>>=0,e===0?32:31-(Jf(e)/Zf|0)|0}var Zs=64,ei=4194304;function is(e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ni(e,n){var s=e.pendingLanes;if(s===0)return 0;var o=0,c=e.suspendedLanes,u=e.pingedLanes,f=s&268435455;if(f!==0){var v=f&~c;v!==0?o=is(v):(u&=f,u!==0&&(o=is(u)))}else f=s&~c,f!==0?o=is(f):u!==0&&(o=is(u));if(o===0)return 0;if(n!==0&&n!==o&&(n&c)===0&&(c=o&-o,u=n&-n,c>=u||c===16&&(u&4194240)!==0))return n;if((o&4)!==0&&(o|=s&16),n=e.entangledLanes,n!==0)for(e=e.entanglements,n&=o;0<n;)s=31-Gn(n),c=1<<s,o|=e[s],n&=~c;return o}function np(e,n){switch(e){case 1:case 2:case 4:return n+250;case 8:case 16:case 32:case 64: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 n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function tp(e,n){for(var s=e.suspendedLanes,o=e.pingedLanes,c=e.expirationTimes,u=e.pendingLanes;0<u;){var f=31-Gn(u),v=1<<f,y=c[f];y===-1?((v&s)===0||(v&o)!==0)&&(c[f]=np(v,n)):y<=n&&(e.expiredLanes|=v),u&=~v}}function Mo(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Qa(){var e=Zs;return Zs<<=1,(Zs&4194240)===0&&(Zs=64),e}function $o(e){for(var n=[],s=0;31>s;s++)n.push(e);return n}function os(e,n,s){e.pendingLanes|=n,n!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,n=31-Gn(n),e[n]=s}function rp(e,n){var s=e.pendingLanes&~n;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=n,e.mutableReadLanes&=n,e.entangledLanes&=n,n=e.entanglements;var o=e.eventTimes;for(e=e.expirationTimes;0<s;){var c=31-Gn(s),u=1<<c;n[c]=0,o[c]=-1,e[c]=-1,s&=~u}}function Ao(e,n){var s=e.entangledLanes|=n;for(e=e.entanglements;s;){var o=31-Gn(s),c=1<<o;c&n|e[o]&n&&(e[o]|=n),s&=~c}}var $e=0;function Ga(e){return e&=-e,1<e?4<e?(e&268435455)!==0?16:536870912:4:1}var Ya,Do,Xa,Ja,Za,Lo=!1,ti=[],bt=null,Et=null,Rt=null,ls=new Map,as=new Map,Pt=[],sp="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 submit".split(" ");function ec(e,n){switch(e){case"focusin":case"focusout":bt=null;break;case"dragenter":case"dragleave":Et=null;break;case"mouseover":case"mouseout":Rt=null;break;case"pointerover":case"pointerout":ls.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":as.delete(n.pointerId)}}function cs(e,n,s,o,c,u){return e===null||e.nativeEvent!==u?(e={blockedOn:n,domEventName:s,eventSystemFlags:o,nativeEvent:u,targetContainers:[c]},n!==null&&(n=Ss(n),n!==null&&Do(n)),e):(e.eventSystemFlags|=o,n=e.targetContainers,c!==null&&n.indexOf(c)===-1&&n.push(c),e)}function ip(e,n,s,o,c){switch(n){case"focusin":return bt=cs(bt,e,n,s,o,c),!0;case"dragenter":return Et=cs(Et,e,n,s,o,c),!0;case"mouseover":return Rt=cs(Rt,e,n,s,o,c),!0;case"pointerover":var u=c.pointerId;return ls.set(u,cs(ls.get(u)||null,e,n,s,o,c)),!0;case"gotpointercapture":return u=c.pointerId,as.set(u,cs(as.get(u)||null,e,n,s,o,c)),!0}return!1}function nc(e){var n=Jt(e.target);if(n!==null){var s=Xt(n);if(s!==null){if(n=s.tag,n===13){if(n=Fa(s),n!==null){e.blockedOn=n,Za(e.priority,function(){Xa(s)});return}}else if(n===3&&s.stateNode.current.memoizedState.isDehydrated){e.blockedOn=s.tag===3?s.stateNode.containerInfo:null;return}}}e.blockedOn=null}function ri(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;0<n.length;){var s=zo(e.domEventName,e.eventSystemFlags,n[0],e.nativeEvent);if(s===null){s=e.nativeEvent;var o=new s.constructor(s.type,s);wr=o,s.target.dispatchEvent(o),wr=null}else return n=Ss(s),n!==null&&Do(n),e.blockedOn=s,!1;n.shift()}return!0}function tc(e,n,s){ri(e)&&s.delete(n)}function op(){Lo=!1,bt!==null&&ri(bt)&&(bt=null),Et!==null&&ri(Et)&&(Et=null),Rt!==null&&ri(Rt)&&(Rt=null),ls.forEach(tc),as.forEach(tc)}function us(e,n){e.blockedOn===n&&(e.blockedOn=null,Lo||(Lo=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,op)))}function ds(e){function n(c){return us(c,e)}if(0<ti.length){us(ti[0],e);for(var s=1;s<ti.length;s++){var o=ti[s];o.blockedOn===e&&(o.blockedOn=null)}}for(bt!==null&&us(bt,e),Et!==null&&us(Et,e),Rt!==null&&us(Rt,e),ls.forEach(n),as.forEach(n),s=0;s<Pt.length;s++)o=Pt[s],o.blockedOn===e&&(o.blockedOn=null);for(;0<Pt.length&&(s=Pt[0],s.blockedOn===null);)nc(s),s.blockedOn===null&&Pt.shift()}var Nr=Z.ReactCurrentBatchConfig,si=!0;function lp(e,n,s,o){var c=$e,u=Nr.transition;Nr.transition=null;try{$e=1,Oo(e,n,s,o)}finally{$e=c,Nr.transition=u}}function ap(e,n,s,o){var c=$e,u=Nr.transition;Nr.transition=null;try{$e=4,Oo(e,n,s,o)}finally{$e=c,Nr.transition=u}}function Oo(e,n,s,o){if(si){var c=zo(e,n,s,o);if(c===null)tl(e,n,o,ii,s),ec(e,o);else if(ip(c,e,n,s,o))o.stopPropagation();else if(ec(e,o),n&4&&-1<sp.indexOf(e)){for(;c!==null;){var u=Ss(c);if(u!==null&&Ya(u),u=zo(e,n,s,o),u===null&&tl(e,n,o,ii,s),u===c)break;c=u}c!==null&&o.stopPropagation()}else tl(e,n,o,null,s)}}var ii=null;function zo(e,n,s,o){if(ii=null,e=kr(o),e=Jt(e),e!==null)if(n=Xt(e),n===null)e=null;else if(s=n.tag,s===13){if(e=Fa(n),e!==null)return e;e=null}else if(s===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null);return ii=e,null}function rc(e){switch(e){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Gf()){case To:return 1;case Va:return 4;case Xs:case Yf:return 16;case Ka:return 536870912;default:return 16}default:return 16}}var Tt=null,Fo=null,oi=null;function sc(){if(oi)return oi;var e,n=Fo,s=n.length,o,c="value"in Tt?Tt.value:Tt.textContent,u=c.length;for(e=0;e<s&&n[e]===c[e];e++);var f=s-e;for(o=1;o<=f&&n[s-o]===c[u-o];o++);return oi=c.slice(e,1<o?1-o:void 0)}function li(e){var n=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&n===13&&(e=13)):e=n,e===10&&(e=13),32<=e||e===13?e:0}function ai(){return!0}function ic(){return!1}function En(e){function n(s,o,c,u,f){this._reactName=s,this._targetInst=c,this.type=o,this.nativeEvent=u,this.target=f,this.currentTarget=null;for(var v in e)e.hasOwnProperty(v)&&(s=e[v],this[v]=s?s(u):u[v]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?ai:ic,this.isPropagationStopped=ic,this}return K(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var s=this.nativeEvent;s&&(s.preventDefault?s.preventDefault():typeof s.returnValue!="unknown"&&(s.returnValue=!1),this.isDefaultPrevented=ai)},stopPropagation:function(){var s=this.nativeEvent;s&&(s.stopPropagation?s.stopPropagation():typeof s.cancelBubble!="unknown"&&(s.cancelBubble=!0),this.isPropagationStopped=ai)},persist:function(){},isPersistent:ai}),n}var _r={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},qo=En(_r),fs=K({},_r,{view:0,detail:0}),cp=En(fs),Bo,Wo,ps,ci=K({},fs,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ho,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!==ps&&(ps&&e.type==="mousemove"?(Bo=e.screenX-ps.screenX,Wo=e.screenY-ps.screenY):Wo=Bo=0,ps=e),Bo)},movementY:function(e){return"movementY"in e?e.movementY:Wo}}),oc=En(ci),up=K({},ci,{dataTransfer:0}),dp=En(up),fp=K({},fs,{relatedTarget:0}),Uo=En(fp),pp=K({},_r,{animationName:0,elapsedTime:0,pseudoElement:0}),hp=En(pp),mp=K({},_r,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),gp=En(mp),vp=K({},_r,{data:0}),lc=En(vp),yp={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xp={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"},wp={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kp(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):(e=wp[e])?!!n[e]:!1}function Ho(){return kp}var jp=K({},fs,{key:function(e){if(e.key){var n=yp[e.key]||e.key;if(n!=="Unidentified")return n}return e.type==="keypress"?(e=li(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?xp[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ho,charCode:function(e){return e.type==="keypress"?li(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?li(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Sp=En(jp),Cp=K({},ci,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),ac=En(Cp),Np=K({},fs,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ho}),_p=En(Np),Ip=K({},_r,{propertyName:0,elapsedTime:0,pseudoElement:0}),bp=En(Ip),Ep=K({},ci,{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}),Rp=En(Ep),Pp=[9,13,27,32],Vo=g&&"CompositionEvent"in window,hs=null;g&&"documentMode"in document&&(hs=document.documentMode);var Tp=g&&"TextEvent"in window&&!hs,cc=g&&(!Vo||hs&&8<hs&&11>=hs),uc=" ",dc=!1;function fc(e,n){switch(e){case"keyup":return Pp.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function pc(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ir=!1;function Mp(e,n){switch(e){case"compositionend":return pc(n);case"keypress":return n.which!==32?null:(dc=!0,uc);case"textInput":return e=n.data,e===uc&&dc?null:e;default:return null}}function $p(e,n){if(Ir)return e==="compositionend"||!Vo&&fc(e,n)?(e=sc(),oi=Fo=Tt=null,Ir=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return cc&&n.locale!=="ko"?null:n.data;default:return null}}var Ap={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 hc(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!Ap[e.type]:n==="textarea"}function mc(e,n,s,o){ss(o),n=hi(n,"onChange"),0<n.length&&(s=new qo("onChange","change",null,s,o),e.push({event:s,listeners:n}))}var ms=null,gs=null;function Dp(e){Mc(e,0)}function ui(e){var n=Tr(e);if(sn(n))return e}function Lp(e,n){if(e==="change")return n}var gc=!1;if(g){var Ko;if(g){var Qo="oninput"in document;if(!Qo){var vc=document.createElement("div");vc.setAttribute("oninput","return;"),Qo=typeof vc.oninput=="function"}Ko=Qo}else Ko=!1;gc=Ko&&(!document.documentMode||9<document.documentMode)}function yc(){ms&&(ms.detachEvent("onpropertychange",xc),gs=ms=null)}function xc(e){if(e.propertyName==="value"&&ui(gs)){var n=[];mc(n,gs,e,kr(e)),se(Dp,n)}}function Op(e,n,s){e==="focusin"?(yc(),ms=n,gs=s,ms.attachEvent("onpropertychange",xc)):e==="focusout"&&yc()}function zp(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ui(gs)}function Fp(e,n){if(e==="click")return ui(n)}function qp(e,n){if(e==="input"||e==="change")return ui(n)}function Bp(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Yn=typeof Object.is=="function"?Object.is:Bp;function vs(e,n){if(Yn(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var s=Object.keys(e),o=Object.keys(n);if(s.length!==o.length)return!1;for(o=0;o<s.length;o++){var c=s[o];if(!k.call(n,c)||!Yn(e[c],n[c]))return!1}return!0}function wc(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function kc(e,n){var s=wc(e);e=0;for(var o;s;){if(s.nodeType===3){if(o=e+s.textContent.length,e<=n&&o>=n)return{node:s,offset:n-e};e=o}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=wc(s)}}function jc(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?jc(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function Sc(){for(var e=window,n=Ye();n instanceof e.HTMLIFrameElement;){try{var s=typeof n.contentWindow.location.href=="string"}catch{s=!1}if(s)e=n.contentWindow;else break;n=Ye(e.document)}return n}function Go(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}function Wp(e){var n=Sc(),s=e.focusedElem,o=e.selectionRange;if(n!==s&&s&&s.ownerDocument&&jc(s.ownerDocument.documentElement,s)){if(o!==null&&Go(s)){if(n=o.start,e=o.end,e===void 0&&(e=n),"selectionStart"in s)s.selectionStart=n,s.selectionEnd=Math.min(e,s.value.length);else if(e=(n=s.ownerDocument||document)&&n.defaultView||window,e.getSelection){e=e.getSelection();var c=s.textContent.length,u=Math.min(o.start,c);o=o.end===void 0?u:Math.min(o.end,c),!e.extend&&u>o&&(c=o,o=u,u=c),c=kc(s,u);var f=kc(s,o);c&&f&&(e.rangeCount!==1||e.anchorNode!==c.node||e.anchorOffset!==c.offset||e.focusNode!==f.node||e.focusOffset!==f.offset)&&(n=n.createRange(),n.setStart(c.node,c.offset),e.removeAllRanges(),u>o?(e.addRange(n),e.extend(f.node,f.offset)):(n.setEnd(f.node,f.offset),e.addRange(n)))}}for(n=[],e=s;e=e.parentNode;)e.nodeType===1&&n.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof s.focus=="function"&&s.focus(),s=0;s<n.length;s++)e=n[s],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Up=g&&"documentMode"in document&&11>=document.documentMode,br=null,Yo=null,ys=null,Xo=!1;function Cc(e,n,s){var o=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;Xo||br==null||br!==Ye(o)||(o=br,"selectionStart"in o&&Go(o)?o={start:o.selectionStart,end:o.selectionEnd}:(o=(o.ownerDocument&&o.ownerDocument.defaultView||window).getSelection(),o={anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset}),ys&&vs(ys,o)||(ys=o,o=hi(Yo,"onSelect"),0<o.length&&(n=new qo("onSelect","select",null,n,s),e.push({event:n,listeners:o}),n.target=br)))}function di(e,n){var s={};return s[e.toLowerCase()]=n.toLowerCase(),s["Webkit"+e]="webkit"+n,s["Moz"+e]="moz"+n,s}var Er={animationend:di("Animation","AnimationEnd"),animationiteration:di("Animation","AnimationIteration"),animationstart:di("Animation","AnimationStart"),transitionend:di("Transition","TransitionEnd")},Jo={},Nc={};g&&(Nc=document.createElement("div").style,"AnimationEvent"in window||(delete Er.animationend.animation,delete Er.animationiteration.animation,delete Er.animationstart.animation),"TransitionEvent"in window||delete Er.transitionend.transition);function fi(e){if(Jo[e])return Jo[e];if(!Er[e])return e;var n=Er[e],s;for(s in n)if(n.hasOwnProperty(s)&&s in Nc)return Jo[e]=n[s];return e}var _c=fi("animationend"),Ic=fi("animationiteration"),bc=fi("animationstart"),Ec=fi("transitionend"),Rc=new Map,Pc="abort auxClick 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(" ");function Mt(e,n){Rc.set(e,n),p(n,[e])}for(var Zo=0;Zo<Pc.length;Zo++){var el=Pc[Zo],Hp=el.toLowerCase(),Vp=el[0].toUpperCase()+el.slice(1);Mt(Hp,"on"+Vp)}Mt(_c,"onAnimationEnd"),Mt(Ic,"onAnimationIteration"),Mt(bc,"onAnimationStart"),Mt("dblclick","onDoubleClick"),Mt("focusin","onFocus"),Mt("focusout","onBlur"),Mt(Ec,"onTransitionEnd"),h("onMouseEnter",["mouseout","mouseover"]),h("onMouseLeave",["mouseout","mouseover"]),h("onPointerEnter",["pointerout","pointerover"]),h("onPointerLeave",["pointerout","pointerover"]),p("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),p("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),p("onBeforeInput",["compositionend","keypress","textInput","paste"]),p("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),p("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),p("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var xs="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(" "),Kp=new Set("cancel close invalid load scroll toggle".split(" ").concat(xs));function Tc(e,n,s){var o=e.type||"unknown-event";e.currentTarget=s,Ys(o,n,void 0,e),e.currentTarget=null}function Mc(e,n){n=(n&4)!==0;for(var s=0;s<e.length;s++){var o=e[s],c=o.event;o=o.listeners;e:{var u=void 0;if(n)for(var f=o.length-1;0<=f;f--){var v=o[f],y=v.instance,E=v.currentTarget;if(v=v.listener,y!==u&&c.isPropagationStopped())break e;Tc(c,v,E),u=y}else for(f=0;f<o.length;f++){if(v=o[f],y=v.instance,E=v.currentTarget,v=v.listener,y!==u&&c.isPropagationStopped())break e;Tc(c,v,E),u=y}}}if(Cr)throw e=en,Cr=!1,en=null,e}function ze(e,n){var s=n[al];s===void 0&&(s=n[al]=new Set);var o=e+"__bubble";s.has(o)||($c(n,e,2,!1),s.add(o))}function nl(e,n,s){var o=0;n&&(o|=4),$c(s,e,o,n)}var pi="_reactListening"+Math.random().toString(36).slice(2);function ws(e){if(!e[pi]){e[pi]=!0,a.forEach(function(s){s!=="selectionchange"&&(Kp.has(s)||nl(s,!1,e),nl(s,!0,e))});var n=e.nodeType===9?e:e.ownerDocument;n===null||n[pi]||(n[pi]=!0,nl("selectionchange",!1,n))}}function $c(e,n,s,o){switch(rc(n)){case 1:var c=lp;break;case 4:c=ap;break;default:c=Oo}s=c.bind(null,n,s,e),c=void 0,!Ae||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(c=!0),o?c!==void 0?e.addEventListener(n,s,{capture:!0,passive:c}):e.addEventListener(n,s,!0):c!==void 0?e.addEventListener(n,s,{passive:c}):e.addEventListener(n,s,!1)}function tl(e,n,s,o,c){var u=o;if((n&1)===0&&(n&2)===0&&o!==null)e:for(;;){if(o===null)return;var f=o.tag;if(f===3||f===4){var v=o.stateNode.containerInfo;if(v===c||v.nodeType===8&&v.parentNode===c)break;if(f===4)for(f=o.return;f!==null;){var y=f.tag;if((y===3||y===4)&&(y=f.stateNode.containerInfo,y===c||y.nodeType===8&&y.parentNode===c))return;f=f.return}for(;v!==null;){if(f=Jt(v),f===null)return;if(y=f.tag,y===5||y===6){o=u=f;continue e}v=v.parentNode}}o=o.return}se(function(){var E=u,q=kr(s),U=[];e:{var z=Rc.get(e);if(z!==void 0){var ee=qo,oe=e;switch(e){case"keypress":if(li(s)===0)break e;case"keydown":case"keyup":ee=Sp;break;case"focusin":oe="focus",ee=Uo;break;case"focusout":oe="blur",ee=Uo;break;case"beforeblur":case"afterblur":ee=Uo;break;case"click":if(s.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ee=oc;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ee=dp;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ee=_p;break;case _c:case Ic:case bc:ee=hp;break;case Ec:ee=bp;break;case"scroll":ee=cp;break;case"wheel":ee=Rp;break;case"copy":case"cut":case"paste":ee=gp;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ee=ac}var ae=(n&4)!==0,Ke=!ae&&e==="scroll",C=ae?z!==null?z+"Capture":null:z;ae=[];for(var x=E,_;x!==null;){_=x;var V=_.stateNode;if(_.tag===5&&V!==null&&(_=V,C!==null&&(V=ie(x,C),V!=null&&ae.push(ks(x,V,_)))),Ke)break;x=x.return}0<ae.length&&(z=new ee(z,oe,null,s,q),U.push({event:z,listeners:ae}))}}if((n&7)===0){e:{if(z=e==="mouseover"||e==="pointerover",ee=e==="mouseout"||e==="pointerout",z&&s!==wr&&(oe=s.relatedTarget||s.fromElement)&&(Jt(oe)||oe[mt]))break e;if((ee||z)&&(z=q.window===q?q:(z=q.ownerDocument)?z.defaultView||z.parentWindow:window,ee?(oe=s.relatedTarget||s.toElement,ee=E,oe=oe?Jt(oe):null,oe!==null&&(Ke=Xt(oe),oe!==Ke||oe.tag!==5&&oe.tag!==6)&&(oe=null)):(ee=null,oe=E),ee!==oe)){if(ae=oc,V="onMouseLeave",C="onMouseEnter",x="mouse",(e==="pointerout"||e==="pointerover")&&(ae=ac,V="onPointerLeave",C="onPointerEnter",x="pointer"),Ke=ee==null?z:Tr(ee),_=oe==null?z:Tr(oe),z=new ae(V,x+"leave",ee,s,q),z.target=Ke,z.relatedTarget=_,V=null,Jt(q)===E&&(ae=new ae(C,x+"enter",oe,s,q),ae.target=_,ae.relatedTarget=Ke,V=ae),Ke=V,ee&&oe)n:{for(ae=ee,C=oe,x=0,_=ae;_;_=Rr(_))x++;for(_=0,V=C;V;V=Rr(V))_++;for(;0<x-_;)ae=Rr(ae),x--;for(;0<_-x;)C=Rr(C),_--;for(;x--;){if(ae===C||C!==null&&ae===C.alternate)break n;ae=Rr(ae),C=Rr(C)}ae=null}else ae=null;ee!==null&&Ac(U,z,ee,ae,!1),oe!==null&&Ke!==null&&Ac(U,Ke,oe,ae,!0)}}e:{if(z=E?Tr(E):window,ee=z.nodeName&&z.nodeName.toLowerCase(),ee==="select"||ee==="input"&&z.type==="file")var ce=Lp;else if(hc(z))if(gc)ce=qp;else{ce=zp;var he=Op}else(ee=z.nodeName)&&ee.toLowerCase()==="input"&&(z.type==="checkbox"||z.type==="radio")&&(ce=Fp);if(ce&&(ce=ce(e,E))){mc(U,ce,s,q);break e}he&&he(e,z,E),e==="focusout"&&(he=z._wrapperState)&&he.controlled&&z.type==="number"&&on(z,"number",z.value)}switch(he=E?Tr(E):window,e){case"focusin":(hc(he)||he.contentEditable==="true")&&(br=he,Yo=E,ys=null);break;case"focusout":ys=Yo=br=null;break;case"mousedown":Xo=!0;break;case"contextmenu":case"mouseup":case"dragend":Xo=!1,Cc(U,s,q);break;case"selectionchange":if(Up)break;case"keydown":case"keyup":Cc(U,s,q)}var me;if(Vo)e:{switch(e){case"compositionstart":var xe="onCompositionStart";break e;case"compositionend":xe="onCompositionEnd";break e;case"compositionupdate":xe="onCompositionUpdate";break e}xe=void 0}else Ir?fc(e,s)&&(xe="onCompositionEnd"):e==="keydown"&&s.keyCode===229&&(xe="onCompositionStart");xe&&(cc&&s.locale!=="ko"&&(Ir||xe!=="onCompositionStart"?xe==="onCompositionEnd"&&Ir&&(me=sc()):(Tt=q,Fo="value"in Tt?Tt.value:Tt.textContent,Ir=!0)),he=hi(E,xe),0<he.length&&(xe=new lc(xe,e,null,s,q),U.push({event:xe,listeners:he}),me?xe.data=me:(me=pc(s),me!==null&&(xe.data=me)))),(me=Tp?Mp(e,s):$p(e,s))&&(E=hi(E,"onBeforeInput"),0<E.length&&(q=new lc("onBeforeInput","beforeinput",null,s,q),U.push({event:q,listeners:E}),q.data=me))}Mc(U,n)})}function ks(e,n,s){return{instance:e,listener:n,currentTarget:s}}function hi(e,n){for(var s=n+"Capture",o=[];e!==null;){var c=e,u=c.stateNode;c.tag===5&&u!==null&&(c=u,u=ie(e,s),u!=null&&o.unshift(ks(e,u,c)),u=ie(e,n),u!=null&&o.push(ks(e,u,c))),e=e.return}return o}function Rr(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Ac(e,n,s,o,c){for(var u=n._reactName,f=[];s!==null&&s!==o;){var v=s,y=v.alternate,E=v.stateNode;if(y!==null&&y===o)break;v.tag===5&&E!==null&&(v=E,c?(y=ie(s,u),y!=null&&f.unshift(ks(s,y,v))):c||(y=ie(s,u),y!=null&&f.push(ks(s,y,v)))),s=s.return}f.length!==0&&e.push({event:n,listeners:f})}var Qp=/\r\n?/g,Gp=/\u0000|\uFFFD/g;function Dc(e){return(typeof e=="string"?e:""+e).replace(Qp,`
7
+ `).replace(Gp,"")}function mi(e,n,s){if(n=Dc(n),Dc(e)!==n&&s)throw Error(l(425))}function gi(){}var rl=null,sl=null;function il(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var ol=typeof setTimeout=="function"?setTimeout:void 0,Yp=typeof clearTimeout=="function"?clearTimeout:void 0,Lc=typeof Promise=="function"?Promise:void 0,Xp=typeof queueMicrotask=="function"?queueMicrotask:typeof Lc<"u"?function(e){return Lc.resolve(null).then(e).catch(Jp)}:ol;function Jp(e){setTimeout(function(){throw e})}function ll(e,n){var s=n,o=0;do{var c=s.nextSibling;if(e.removeChild(s),c&&c.nodeType===8)if(s=c.data,s==="/$"){if(o===0){e.removeChild(c),ds(n);return}o--}else s!=="$"&&s!=="$?"&&s!=="$!"||o++;s=c}while(s);ds(n)}function $t(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?")break;if(n==="/$")return null}}return e}function Oc(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var s=e.data;if(s==="$"||s==="$!"||s==="$?"){if(n===0)return e;n--}else s==="/$"&&n++}e=e.previousSibling}return null}var Pr=Math.random().toString(36).slice(2),lt="__reactFiber$"+Pr,js="__reactProps$"+Pr,mt="__reactContainer$"+Pr,al="__reactEvents$"+Pr,Zp="__reactListeners$"+Pr,eh="__reactHandles$"+Pr;function Jt(e){var n=e[lt];if(n)return n;for(var s=e.parentNode;s;){if(n=s[mt]||s[lt]){if(s=n.alternate,n.child!==null||s!==null&&s.child!==null)for(e=Oc(e);e!==null;){if(s=e[lt])return s;e=Oc(e)}return n}e=s,s=e.parentNode}return null}function Ss(e){return e=e[lt]||e[mt],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Tr(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(l(33))}function vi(e){return e[js]||null}var cl=[],Mr=-1;function At(e){return{current:e}}function Fe(e){0>Mr||(e.current=cl[Mr],cl[Mr]=null,Mr--)}function Le(e,n){Mr++,cl[Mr]=e.current,e.current=n}var Dt={},cn=At(Dt),vn=At(!1),Zt=Dt;function $r(e,n){var s=e.type.contextTypes;if(!s)return Dt;var o=e.stateNode;if(o&&o.__reactInternalMemoizedUnmaskedChildContext===n)return o.__reactInternalMemoizedMaskedChildContext;var c={},u;for(u in s)c[u]=n[u];return o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=c),c}function yn(e){return e=e.childContextTypes,e!=null}function yi(){Fe(vn),Fe(cn)}function zc(e,n,s){if(cn.current!==Dt)throw Error(l(168));Le(cn,n),Le(vn,s)}function Fc(e,n,s){var o=e.stateNode;if(n=n.childContextTypes,typeof o.getChildContext!="function")return s;o=o.getChildContext();for(var c in o)if(!(c in n))throw Error(l(108,be(e)||"Unknown",c));return K({},s,o)}function xi(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Dt,Zt=cn.current,Le(cn,e),Le(vn,vn.current),!0}function qc(e,n,s){var o=e.stateNode;if(!o)throw Error(l(169));s?(e=Fc(e,n,Zt),o.__reactInternalMemoizedMergedChildContext=e,Fe(vn),Fe(cn),Le(cn,e)):Fe(vn),Le(vn,s)}var gt=null,wi=!1,ul=!1;function Bc(e){gt===null?gt=[e]:gt.push(e)}function nh(e){wi=!0,Bc(e)}function Lt(){if(!ul&&gt!==null){ul=!0;var e=0,n=$e;try{var s=gt;for($e=1;e<s.length;e++){var o=s[e];do o=o(!0);while(o!==null)}gt=null,wi=!1}catch(c){throw gt!==null&&(gt=gt.slice(e+1)),Ua(To,Lt),c}finally{$e=n,ul=!1}}return null}var Ar=[],Dr=0,ki=null,ji=0,Ln=[],On=0,er=null,vt=1,yt="";function nr(e,n){Ar[Dr++]=ji,Ar[Dr++]=ki,ki=e,ji=n}function Wc(e,n,s){Ln[On++]=vt,Ln[On++]=yt,Ln[On++]=er,er=e;var o=vt;e=yt;var c=32-Gn(o)-1;o&=~(1<<c),s+=1;var u=32-Gn(n)+c;if(30<u){var f=c-c%5;u=(o&(1<<f)-1).toString(32),o>>=f,c-=f,vt=1<<32-Gn(n)+c|s<<c|o,yt=u+e}else vt=1<<u|s<<c|o,yt=e}function dl(e){e.return!==null&&(nr(e,1),Wc(e,1,0))}function fl(e){for(;e===ki;)ki=Ar[--Dr],Ar[Dr]=null,ji=Ar[--Dr],Ar[Dr]=null;for(;e===er;)er=Ln[--On],Ln[On]=null,yt=Ln[--On],Ln[On]=null,vt=Ln[--On],Ln[On]=null}var Rn=null,Pn=null,qe=!1,Xn=null;function Uc(e,n){var s=Bn(5,null,null,0);s.elementType="DELETED",s.stateNode=n,s.return=e,n=e.deletions,n===null?(e.deletions=[s],e.flags|=16):n.push(s)}function Hc(e,n){switch(e.tag){case 5:var s=e.type;return n=n.nodeType!==1||s.toLowerCase()!==n.nodeName.toLowerCase()?null:n,n!==null?(e.stateNode=n,Rn=e,Pn=$t(n.firstChild),!0):!1;case 6:return n=e.pendingProps===""||n.nodeType!==3?null:n,n!==null?(e.stateNode=n,Rn=e,Pn=null,!0):!1;case 13:return n=n.nodeType!==8?null:n,n!==null?(s=er!==null?{id:vt,overflow:yt}:null,e.memoizedState={dehydrated:n,treeContext:s,retryLane:1073741824},s=Bn(18,null,null,0),s.stateNode=n,s.return=e,e.child=s,Rn=e,Pn=null,!0):!1;default:return!1}}function pl(e){return(e.mode&1)!==0&&(e.flags&128)===0}function hl(e){if(qe){var n=Pn;if(n){var s=n;if(!Hc(e,n)){if(pl(e))throw Error(l(418));n=$t(s.nextSibling);var o=Rn;n&&Hc(e,n)?Uc(o,s):(e.flags=e.flags&-4097|2,qe=!1,Rn=e)}}else{if(pl(e))throw Error(l(418));e.flags=e.flags&-4097|2,qe=!1,Rn=e}}}function Vc(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Rn=e}function Si(e){if(e!==Rn)return!1;if(!qe)return Vc(e),qe=!0,!1;var n;if((n=e.tag!==3)&&!(n=e.tag!==5)&&(n=e.type,n=n!=="head"&&n!=="body"&&!il(e.type,e.memoizedProps)),n&&(n=Pn)){if(pl(e))throw Kc(),Error(l(418));for(;n;)Uc(e,n),n=$t(n.nextSibling)}if(Vc(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(l(317));e:{for(e=e.nextSibling,n=0;e;){if(e.nodeType===8){var s=e.data;if(s==="/$"){if(n===0){Pn=$t(e.nextSibling);break e}n--}else s!=="$"&&s!=="$!"&&s!=="$?"||n++}e=e.nextSibling}Pn=null}}else Pn=Rn?$t(e.stateNode.nextSibling):null;return!0}function Kc(){for(var e=Pn;e;)e=$t(e.nextSibling)}function Lr(){Pn=Rn=null,qe=!1}function ml(e){Xn===null?Xn=[e]:Xn.push(e)}var th=Z.ReactCurrentBatchConfig;function Cs(e,n,s){if(e=s.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(s._owner){if(s=s._owner,s){if(s.tag!==1)throw Error(l(309));var o=s.stateNode}if(!o)throw Error(l(147,e));var c=o,u=""+e;return n!==null&&n.ref!==null&&typeof n.ref=="function"&&n.ref._stringRef===u?n.ref:(n=function(f){var v=c.refs;f===null?delete v[u]:v[u]=f},n._stringRef=u,n)}if(typeof e!="string")throw Error(l(284));if(!s._owner)throw Error(l(290,e))}return e}function Ci(e,n){throw e=Object.prototype.toString.call(n),Error(l(31,e==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":e))}function Qc(e){var n=e._init;return n(e._payload)}function Gc(e){function n(C,x){if(e){var _=C.deletions;_===null?(C.deletions=[x],C.flags|=16):_.push(x)}}function s(C,x){if(!e)return null;for(;x!==null;)n(C,x),x=x.sibling;return null}function o(C,x){for(C=new Map;x!==null;)x.key!==null?C.set(x.key,x):C.set(x.index,x),x=x.sibling;return C}function c(C,x){return C=Ht(C,x),C.index=0,C.sibling=null,C}function u(C,x,_){return C.index=_,e?(_=C.alternate,_!==null?(_=_.index,_<x?(C.flags|=2,x):_):(C.flags|=2,x)):(C.flags|=1048576,x)}function f(C){return e&&C.alternate===null&&(C.flags|=2),C}function v(C,x,_,V){return x===null||x.tag!==6?(x=oa(_,C.mode,V),x.return=C,x):(x=c(x,_),x.return=C,x)}function y(C,x,_,V){var ce=_.type;return ce===H?q(C,x,_.props.children,V,_.key):x!==null&&(x.elementType===ce||typeof ce=="object"&&ce!==null&&ce.$$typeof===de&&Qc(ce)===x.type)?(V=c(x,_.props),V.ref=Cs(C,x,_),V.return=C,V):(V=Qi(_.type,_.key,_.props,null,C.mode,V),V.ref=Cs(C,x,_),V.return=C,V)}function E(C,x,_,V){return x===null||x.tag!==4||x.stateNode.containerInfo!==_.containerInfo||x.stateNode.implementation!==_.implementation?(x=la(_,C.mode,V),x.return=C,x):(x=c(x,_.children||[]),x.return=C,x)}function q(C,x,_,V,ce){return x===null||x.tag!==7?(x=cr(_,C.mode,V,ce),x.return=C,x):(x=c(x,_),x.return=C,x)}function U(C,x,_){if(typeof x=="string"&&x!==""||typeof x=="number")return x=oa(""+x,C.mode,_),x.return=C,x;if(typeof x=="object"&&x!==null){switch(x.$$typeof){case ue:return _=Qi(x.type,x.key,x.props,null,C.mode,_),_.ref=Cs(C,null,x),_.return=C,_;case b:return x=la(x,C.mode,_),x.return=C,x;case de:var V=x._init;return U(C,V(x._payload),_)}if(it(x)||X(x))return x=cr(x,C.mode,_,null),x.return=C,x;Ci(C,x)}return null}function z(C,x,_,V){var ce=x!==null?x.key:null;if(typeof _=="string"&&_!==""||typeof _=="number")return ce!==null?null:v(C,x,""+_,V);if(typeof _=="object"&&_!==null){switch(_.$$typeof){case ue:return _.key===ce?y(C,x,_,V):null;case b:return _.key===ce?E(C,x,_,V):null;case de:return ce=_._init,z(C,x,ce(_._payload),V)}if(it(_)||X(_))return ce!==null?null:q(C,x,_,V,null);Ci(C,_)}return null}function ee(C,x,_,V,ce){if(typeof V=="string"&&V!==""||typeof V=="number")return C=C.get(_)||null,v(x,C,""+V,ce);if(typeof V=="object"&&V!==null){switch(V.$$typeof){case ue:return C=C.get(V.key===null?_:V.key)||null,y(x,C,V,ce);case b:return C=C.get(V.key===null?_:V.key)||null,E(x,C,V,ce);case de:var he=V._init;return ee(C,x,_,he(V._payload),ce)}if(it(V)||X(V))return C=C.get(_)||null,q(x,C,V,ce,null);Ci(x,V)}return null}function oe(C,x,_,V){for(var ce=null,he=null,me=x,xe=x=0,rn=null;me!==null&&xe<_.length;xe++){me.index>xe?(rn=me,me=null):rn=me.sibling;var Me=z(C,me,_[xe],V);if(Me===null){me===null&&(me=rn);break}e&&me&&Me.alternate===null&&n(C,me),x=u(Me,x,xe),he===null?ce=Me:he.sibling=Me,he=Me,me=rn}if(xe===_.length)return s(C,me),qe&&nr(C,xe),ce;if(me===null){for(;xe<_.length;xe++)me=U(C,_[xe],V),me!==null&&(x=u(me,x,xe),he===null?ce=me:he.sibling=me,he=me);return qe&&nr(C,xe),ce}for(me=o(C,me);xe<_.length;xe++)rn=ee(me,C,xe,_[xe],V),rn!==null&&(e&&rn.alternate!==null&&me.delete(rn.key===null?xe:rn.key),x=u(rn,x,xe),he===null?ce=rn:he.sibling=rn,he=rn);return e&&me.forEach(function(Vt){return n(C,Vt)}),qe&&nr(C,xe),ce}function ae(C,x,_,V){var ce=X(_);if(typeof ce!="function")throw Error(l(150));if(_=ce.call(_),_==null)throw Error(l(151));for(var he=ce=null,me=x,xe=x=0,rn=null,Me=_.next();me!==null&&!Me.done;xe++,Me=_.next()){me.index>xe?(rn=me,me=null):rn=me.sibling;var Vt=z(C,me,Me.value,V);if(Vt===null){me===null&&(me=rn);break}e&&me&&Vt.alternate===null&&n(C,me),x=u(Vt,x,xe),he===null?ce=Vt:he.sibling=Vt,he=Vt,me=rn}if(Me.done)return s(C,me),qe&&nr(C,xe),ce;if(me===null){for(;!Me.done;xe++,Me=_.next())Me=U(C,Me.value,V),Me!==null&&(x=u(Me,x,xe),he===null?ce=Me:he.sibling=Me,he=Me);return qe&&nr(C,xe),ce}for(me=o(C,me);!Me.done;xe++,Me=_.next())Me=ee(me,C,xe,Me.value,V),Me!==null&&(e&&Me.alternate!==null&&me.delete(Me.key===null?xe:Me.key),x=u(Me,x,xe),he===null?ce=Me:he.sibling=Me,he=Me);return e&&me.forEach(function(Ah){return n(C,Ah)}),qe&&nr(C,xe),ce}function Ke(C,x,_,V){if(typeof _=="object"&&_!==null&&_.type===H&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case ue:e:{for(var ce=_.key,he=x;he!==null;){if(he.key===ce){if(ce=_.type,ce===H){if(he.tag===7){s(C,he.sibling),x=c(he,_.props.children),x.return=C,C=x;break e}}else if(he.elementType===ce||typeof ce=="object"&&ce!==null&&ce.$$typeof===de&&Qc(ce)===he.type){s(C,he.sibling),x=c(he,_.props),x.ref=Cs(C,he,_),x.return=C,C=x;break e}s(C,he);break}else n(C,he);he=he.sibling}_.type===H?(x=cr(_.props.children,C.mode,V,_.key),x.return=C,C=x):(V=Qi(_.type,_.key,_.props,null,C.mode,V),V.ref=Cs(C,x,_),V.return=C,C=V)}return f(C);case b:e:{for(he=_.key;x!==null;){if(x.key===he)if(x.tag===4&&x.stateNode.containerInfo===_.containerInfo&&x.stateNode.implementation===_.implementation){s(C,x.sibling),x=c(x,_.children||[]),x.return=C,C=x;break e}else{s(C,x);break}else n(C,x);x=x.sibling}x=la(_,C.mode,V),x.return=C,C=x}return f(C);case de:return he=_._init,Ke(C,x,he(_._payload),V)}if(it(_))return oe(C,x,_,V);if(X(_))return ae(C,x,_,V);Ci(C,_)}return typeof _=="string"&&_!==""||typeof _=="number"?(_=""+_,x!==null&&x.tag===6?(s(C,x.sibling),x=c(x,_),x.return=C,C=x):(s(C,x),x=oa(_,C.mode,V),x.return=C,C=x),f(C)):s(C,x)}return Ke}var Or=Gc(!0),Yc=Gc(!1),Ni=At(null),_i=null,zr=null,gl=null;function vl(){gl=zr=_i=null}function yl(e){var n=Ni.current;Fe(Ni),e._currentValue=n}function xl(e,n,s){for(;e!==null;){var o=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,o!==null&&(o.childLanes|=n)):o!==null&&(o.childLanes&n)!==n&&(o.childLanes|=n),e===s)break;e=e.return}}function Fr(e,n){_i=e,gl=zr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&n)!==0&&(xn=!0),e.firstContext=null)}function zn(e){var n=e._currentValue;if(gl!==e)if(e={context:e,memoizedValue:n,next:null},zr===null){if(_i===null)throw Error(l(308));zr=e,_i.dependencies={lanes:0,firstContext:e}}else zr=zr.next=e;return n}var tr=null;function wl(e){tr===null?tr=[e]:tr.push(e)}function Xc(e,n,s,o){var c=n.interleaved;return c===null?(s.next=s,wl(n)):(s.next=c.next,c.next=s),n.interleaved=s,xt(e,o)}function xt(e,n){e.lanes|=n;var s=e.alternate;for(s!==null&&(s.lanes|=n),s=e,e=e.return;e!==null;)e.childLanes|=n,s=e.alternate,s!==null&&(s.childLanes|=n),s=e,e=e.return;return s.tag===3?s.stateNode:null}var Ot=!1;function kl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Jc(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function wt(e,n){return{eventTime:e,lane:n,tag:0,payload:null,callback:null,next:null}}function zt(e,n,s){var o=e.updateQueue;if(o===null)return null;if(o=o.shared,(Te&2)!==0){var c=o.pending;return c===null?n.next=n:(n.next=c.next,c.next=n),o.pending=n,xt(e,s)}return c=o.interleaved,c===null?(n.next=n,wl(o)):(n.next=c.next,c.next=n),o.interleaved=n,xt(e,s)}function Ii(e,n,s){if(n=n.updateQueue,n!==null&&(n=n.shared,(s&4194240)!==0)){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,Ao(e,s)}}function Zc(e,n){var s=e.updateQueue,o=e.alternate;if(o!==null&&(o=o.updateQueue,s===o)){var c=null,u=null;if(s=s.firstBaseUpdate,s!==null){do{var f={eventTime:s.eventTime,lane:s.lane,tag:s.tag,payload:s.payload,callback:s.callback,next:null};u===null?c=u=f:u=u.next=f,s=s.next}while(s!==null);u===null?c=u=n:u=u.next=n}else c=u=n;s={baseState:o.baseState,firstBaseUpdate:c,lastBaseUpdate:u,shared:o.shared,effects:o.effects},e.updateQueue=s;return}e=s.lastBaseUpdate,e===null?s.firstBaseUpdate=n:e.next=n,s.lastBaseUpdate=n}function bi(e,n,s,o){var c=e.updateQueue;Ot=!1;var u=c.firstBaseUpdate,f=c.lastBaseUpdate,v=c.shared.pending;if(v!==null){c.shared.pending=null;var y=v,E=y.next;y.next=null,f===null?u=E:f.next=E,f=y;var q=e.alternate;q!==null&&(q=q.updateQueue,v=q.lastBaseUpdate,v!==f&&(v===null?q.firstBaseUpdate=E:v.next=E,q.lastBaseUpdate=y))}if(u!==null){var U=c.baseState;f=0,q=E=y=null,v=u;do{var z=v.lane,ee=v.eventTime;if((o&z)===z){q!==null&&(q=q.next={eventTime:ee,lane:0,tag:v.tag,payload:v.payload,callback:v.callback,next:null});e:{var oe=e,ae=v;switch(z=n,ee=s,ae.tag){case 1:if(oe=ae.payload,typeof oe=="function"){U=oe.call(ee,U,z);break e}U=oe;break e;case 3:oe.flags=oe.flags&-65537|128;case 0:if(oe=ae.payload,z=typeof oe=="function"?oe.call(ee,U,z):oe,z==null)break e;U=K({},U,z);break e;case 2:Ot=!0}}v.callback!==null&&v.lane!==0&&(e.flags|=64,z=c.effects,z===null?c.effects=[v]:z.push(v))}else ee={eventTime:ee,lane:z,tag:v.tag,payload:v.payload,callback:v.callback,next:null},q===null?(E=q=ee,y=U):q=q.next=ee,f|=z;if(v=v.next,v===null){if(v=c.shared.pending,v===null)break;z=v,v=z.next,z.next=null,c.lastBaseUpdate=z,c.shared.pending=null}}while(!0);if(q===null&&(y=U),c.baseState=y,c.firstBaseUpdate=E,c.lastBaseUpdate=q,n=c.shared.interleaved,n!==null){c=n;do f|=c.lane,c=c.next;while(c!==n)}else u===null&&(c.shared.lanes=0);ir|=f,e.lanes=f,e.memoizedState=U}}function eu(e,n,s){if(e=n.effects,n.effects=null,e!==null)for(n=0;n<e.length;n++){var o=e[n],c=o.callback;if(c!==null){if(o.callback=null,o=s,typeof c!="function")throw Error(l(191,c));c.call(o)}}}var Ns={},at=At(Ns),_s=At(Ns),Is=At(Ns);function rr(e){if(e===Ns)throw Error(l(174));return e}function jl(e,n){switch(Le(Is,n),Le(_s,e),Le(at,Ns),e=n.nodeType,e){case 9:case 11:n=(n=n.documentElement)?n.namespaceURI:je(null,"");break;default:e=e===8?n.parentNode:n,n=e.namespaceURI||null,e=e.tagName,n=je(n,e)}Fe(at),Le(at,n)}function qr(){Fe(at),Fe(_s),Fe(Is)}function nu(e){rr(Is.current);var n=rr(at.current),s=je(n,e.type);n!==s&&(Le(_s,e),Le(at,s))}function Sl(e){_s.current===e&&(Fe(at),Fe(_s))}var Be=At(0);function Ei(e){for(var n=e;n!==null;){if(n.tag===13){var s=n.memoizedState;if(s!==null&&(s=s.dehydrated,s===null||s.data==="$?"||s.data==="$!"))return n}else if(n.tag===19&&n.memoizedProps.revealOrder!==void 0){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var Cl=[];function Nl(){for(var e=0;e<Cl.length;e++)Cl[e]._workInProgressVersionPrimary=null;Cl.length=0}var Ri=Z.ReactCurrentDispatcher,_l=Z.ReactCurrentBatchConfig,sr=0,We=null,Xe=null,nn=null,Pi=!1,bs=!1,Es=0,rh=0;function un(){throw Error(l(321))}function Il(e,n){if(n===null)return!1;for(var s=0;s<n.length&&s<e.length;s++)if(!Yn(e[s],n[s]))return!1;return!0}function bl(e,n,s,o,c,u){if(sr=u,We=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,Ri.current=e===null||e.memoizedState===null?lh:ah,e=s(o,c),bs){u=0;do{if(bs=!1,Es=0,25<=u)throw Error(l(301));u+=1,nn=Xe=null,n.updateQueue=null,Ri.current=ch,e=s(o,c)}while(bs)}if(Ri.current=$i,n=Xe!==null&&Xe.next!==null,sr=0,nn=Xe=We=null,Pi=!1,n)throw Error(l(300));return e}function El(){var e=Es!==0;return Es=0,e}function ct(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return nn===null?We.memoizedState=nn=e:nn=nn.next=e,nn}function Fn(){if(Xe===null){var e=We.alternate;e=e!==null?e.memoizedState:null}else e=Xe.next;var n=nn===null?We.memoizedState:nn.next;if(n!==null)nn=n,Xe=e;else{if(e===null)throw Error(l(310));Xe=e,e={memoizedState:Xe.memoizedState,baseState:Xe.baseState,baseQueue:Xe.baseQueue,queue:Xe.queue,next:null},nn===null?We.memoizedState=nn=e:nn=nn.next=e}return nn}function Rs(e,n){return typeof n=="function"?n(e):n}function Rl(e){var n=Fn(),s=n.queue;if(s===null)throw Error(l(311));s.lastRenderedReducer=e;var o=Xe,c=o.baseQueue,u=s.pending;if(u!==null){if(c!==null){var f=c.next;c.next=u.next,u.next=f}o.baseQueue=c=u,s.pending=null}if(c!==null){u=c.next,o=o.baseState;var v=f=null,y=null,E=u;do{var q=E.lane;if((sr&q)===q)y!==null&&(y=y.next={lane:0,action:E.action,hasEagerState:E.hasEagerState,eagerState:E.eagerState,next:null}),o=E.hasEagerState?E.eagerState:e(o,E.action);else{var U={lane:q,action:E.action,hasEagerState:E.hasEagerState,eagerState:E.eagerState,next:null};y===null?(v=y=U,f=o):y=y.next=U,We.lanes|=q,ir|=q}E=E.next}while(E!==null&&E!==u);y===null?f=o:y.next=v,Yn(o,n.memoizedState)||(xn=!0),n.memoizedState=o,n.baseState=f,n.baseQueue=y,s.lastRenderedState=o}if(e=s.interleaved,e!==null){c=e;do u=c.lane,We.lanes|=u,ir|=u,c=c.next;while(c!==e)}else c===null&&(s.lanes=0);return[n.memoizedState,s.dispatch]}function Pl(e){var n=Fn(),s=n.queue;if(s===null)throw Error(l(311));s.lastRenderedReducer=e;var o=s.dispatch,c=s.pending,u=n.memoizedState;if(c!==null){s.pending=null;var f=c=c.next;do u=e(u,f.action),f=f.next;while(f!==c);Yn(u,n.memoizedState)||(xn=!0),n.memoizedState=u,n.baseQueue===null&&(n.baseState=u),s.lastRenderedState=u}return[u,o]}function tu(){}function ru(e,n){var s=We,o=Fn(),c=n(),u=!Yn(o.memoizedState,c);if(u&&(o.memoizedState=c,xn=!0),o=o.queue,Tl(ou.bind(null,s,o,e),[e]),o.getSnapshot!==n||u||nn!==null&&nn.memoizedState.tag&1){if(s.flags|=2048,Ps(9,iu.bind(null,s,o,c,n),void 0,null),tn===null)throw Error(l(349));(sr&30)!==0||su(s,n,c)}return c}function su(e,n,s){e.flags|=16384,e={getSnapshot:n,value:s},n=We.updateQueue,n===null?(n={lastEffect:null,stores:null},We.updateQueue=n,n.stores=[e]):(s=n.stores,s===null?n.stores=[e]:s.push(e))}function iu(e,n,s,o){n.value=s,n.getSnapshot=o,lu(n)&&au(e)}function ou(e,n,s){return s(function(){lu(n)&&au(e)})}function lu(e){var n=e.getSnapshot;e=e.value;try{var s=n();return!Yn(e,s)}catch{return!0}}function au(e){var n=xt(e,1);n!==null&&nt(n,e,1,-1)}function cu(e){var n=ct();return typeof e=="function"&&(e=e()),n.memoizedState=n.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Rs,lastRenderedState:e},n.queue=e,e=e.dispatch=oh.bind(null,We,e),[n.memoizedState,e]}function Ps(e,n,s,o){return e={tag:e,create:n,destroy:s,deps:o,next:null},n=We.updateQueue,n===null?(n={lastEffect:null,stores:null},We.updateQueue=n,n.lastEffect=e.next=e):(s=n.lastEffect,s===null?n.lastEffect=e.next=e:(o=s.next,s.next=e,e.next=o,n.lastEffect=e)),e}function uu(){return Fn().memoizedState}function Ti(e,n,s,o){var c=ct();We.flags|=e,c.memoizedState=Ps(1|n,s,void 0,o===void 0?null:o)}function Mi(e,n,s,o){var c=Fn();o=o===void 0?null:o;var u=void 0;if(Xe!==null){var f=Xe.memoizedState;if(u=f.destroy,o!==null&&Il(o,f.deps)){c.memoizedState=Ps(n,s,u,o);return}}We.flags|=e,c.memoizedState=Ps(1|n,s,u,o)}function du(e,n){return Ti(8390656,8,e,n)}function Tl(e,n){return Mi(2048,8,e,n)}function fu(e,n){return Mi(4,2,e,n)}function pu(e,n){return Mi(4,4,e,n)}function hu(e,n){if(typeof n=="function")return e=e(),n(e),function(){n(null)};if(n!=null)return e=e(),n.current=e,function(){n.current=null}}function mu(e,n,s){return s=s!=null?s.concat([e]):null,Mi(4,4,hu.bind(null,n,e),s)}function Ml(){}function gu(e,n){var s=Fn();n=n===void 0?null:n;var o=s.memoizedState;return o!==null&&n!==null&&Il(n,o[1])?o[0]:(s.memoizedState=[e,n],e)}function vu(e,n){var s=Fn();n=n===void 0?null:n;var o=s.memoizedState;return o!==null&&n!==null&&Il(n,o[1])?o[0]:(e=e(),s.memoizedState=[e,n],e)}function yu(e,n,s){return(sr&21)===0?(e.baseState&&(e.baseState=!1,xn=!0),e.memoizedState=s):(Yn(s,n)||(s=Qa(),We.lanes|=s,ir|=s,e.baseState=!0),n)}function sh(e,n){var s=$e;$e=s!==0&&4>s?s:4,e(!0);var o=_l.transition;_l.transition={};try{e(!1),n()}finally{$e=s,_l.transition=o}}function xu(){return Fn().memoizedState}function ih(e,n,s){var o=Wt(e);if(s={lane:o,action:s,hasEagerState:!1,eagerState:null,next:null},wu(e))ku(n,s);else if(s=Xc(e,n,s,o),s!==null){var c=mn();nt(s,e,o,c),ju(s,n,o)}}function oh(e,n,s){var o=Wt(e),c={lane:o,action:s,hasEagerState:!1,eagerState:null,next:null};if(wu(e))ku(n,c);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=n.lastRenderedReducer,u!==null))try{var f=n.lastRenderedState,v=u(f,s);if(c.hasEagerState=!0,c.eagerState=v,Yn(v,f)){var y=n.interleaved;y===null?(c.next=c,wl(n)):(c.next=y.next,y.next=c),n.interleaved=c;return}}catch{}s=Xc(e,n,c,o),s!==null&&(c=mn(),nt(s,e,o,c),ju(s,n,o))}}function wu(e){var n=e.alternate;return e===We||n!==null&&n===We}function ku(e,n){bs=Pi=!0;var s=e.pending;s===null?n.next=n:(n.next=s.next,s.next=n),e.pending=n}function ju(e,n,s){if((s&4194240)!==0){var o=n.lanes;o&=e.pendingLanes,s|=o,n.lanes=s,Ao(e,s)}}var $i={readContext:zn,useCallback:un,useContext:un,useEffect:un,useImperativeHandle:un,useInsertionEffect:un,useLayoutEffect:un,useMemo:un,useReducer:un,useRef:un,useState:un,useDebugValue:un,useDeferredValue:un,useTransition:un,useMutableSource:un,useSyncExternalStore:un,useId:un,unstable_isNewReconciler:!1},lh={readContext:zn,useCallback:function(e,n){return ct().memoizedState=[e,n===void 0?null:n],e},useContext:zn,useEffect:du,useImperativeHandle:function(e,n,s){return s=s!=null?s.concat([e]):null,Ti(4194308,4,hu.bind(null,n,e),s)},useLayoutEffect:function(e,n){return Ti(4194308,4,e,n)},useInsertionEffect:function(e,n){return Ti(4,2,e,n)},useMemo:function(e,n){var s=ct();return n=n===void 0?null:n,e=e(),s.memoizedState=[e,n],e},useReducer:function(e,n,s){var o=ct();return n=s!==void 0?s(n):n,o.memoizedState=o.baseState=n,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:n},o.queue=e,e=e.dispatch=ih.bind(null,We,e),[o.memoizedState,e]},useRef:function(e){var n=ct();return e={current:e},n.memoizedState=e},useState:cu,useDebugValue:Ml,useDeferredValue:function(e){return ct().memoizedState=e},useTransition:function(){var e=cu(!1),n=e[0];return e=sh.bind(null,e[1]),ct().memoizedState=e,[n,e]},useMutableSource:function(){},useSyncExternalStore:function(e,n,s){var o=We,c=ct();if(qe){if(s===void 0)throw Error(l(407));s=s()}else{if(s=n(),tn===null)throw Error(l(349));(sr&30)!==0||su(o,n,s)}c.memoizedState=s;var u={value:s,getSnapshot:n};return c.queue=u,du(ou.bind(null,o,u,e),[e]),o.flags|=2048,Ps(9,iu.bind(null,o,u,s,n),void 0,null),s},useId:function(){var e=ct(),n=tn.identifierPrefix;if(qe){var s=yt,o=vt;s=(o&~(1<<32-Gn(o)-1)).toString(32)+s,n=":"+n+"R"+s,s=Es++,0<s&&(n+="H"+s.toString(32)),n+=":"}else s=rh++,n=":"+n+"r"+s.toString(32)+":";return e.memoizedState=n},unstable_isNewReconciler:!1},ah={readContext:zn,useCallback:gu,useContext:zn,useEffect:Tl,useImperativeHandle:mu,useInsertionEffect:fu,useLayoutEffect:pu,useMemo:vu,useReducer:Rl,useRef:uu,useState:function(){return Rl(Rs)},useDebugValue:Ml,useDeferredValue:function(e){var n=Fn();return yu(n,Xe.memoizedState,e)},useTransition:function(){var e=Rl(Rs)[0],n=Fn().memoizedState;return[e,n]},useMutableSource:tu,useSyncExternalStore:ru,useId:xu,unstable_isNewReconciler:!1},ch={readContext:zn,useCallback:gu,useContext:zn,useEffect:Tl,useImperativeHandle:mu,useInsertionEffect:fu,useLayoutEffect:pu,useMemo:vu,useReducer:Pl,useRef:uu,useState:function(){return Pl(Rs)},useDebugValue:Ml,useDeferredValue:function(e){var n=Fn();return Xe===null?n.memoizedState=e:yu(n,Xe.memoizedState,e)},useTransition:function(){var e=Pl(Rs)[0],n=Fn().memoizedState;return[e,n]},useMutableSource:tu,useSyncExternalStore:ru,useId:xu,unstable_isNewReconciler:!1};function Jn(e,n){if(e&&e.defaultProps){n=K({},n),e=e.defaultProps;for(var s in e)n[s]===void 0&&(n[s]=e[s]);return n}return n}function $l(e,n,s,o){n=e.memoizedState,s=s(o,n),s=s==null?n:K({},n,s),e.memoizedState=s,e.lanes===0&&(e.updateQueue.baseState=s)}var Ai={isMounted:function(e){return(e=e._reactInternals)?Xt(e)===e:!1},enqueueSetState:function(e,n,s){e=e._reactInternals;var o=mn(),c=Wt(e),u=wt(o,c);u.payload=n,s!=null&&(u.callback=s),n=zt(e,u,c),n!==null&&(nt(n,e,c,o),Ii(n,e,c))},enqueueReplaceState:function(e,n,s){e=e._reactInternals;var o=mn(),c=Wt(e),u=wt(o,c);u.tag=1,u.payload=n,s!=null&&(u.callback=s),n=zt(e,u,c),n!==null&&(nt(n,e,c,o),Ii(n,e,c))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var s=mn(),o=Wt(e),c=wt(s,o);c.tag=2,n!=null&&(c.callback=n),n=zt(e,c,o),n!==null&&(nt(n,e,o,s),Ii(n,e,o))}};function Su(e,n,s,o,c,u,f){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(o,u,f):n.prototype&&n.prototype.isPureReactComponent?!vs(s,o)||!vs(c,u):!0}function Cu(e,n,s){var o=!1,c=Dt,u=n.contextType;return typeof u=="object"&&u!==null?u=zn(u):(c=yn(n)?Zt:cn.current,o=n.contextTypes,u=(o=o!=null)?$r(e,c):Dt),n=new n(s,u),e.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,n.updater=Ai,e.stateNode=n,n._reactInternals=e,o&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=c,e.__reactInternalMemoizedMaskedChildContext=u),n}function Nu(e,n,s,o){e=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(s,o),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(s,o),n.state!==e&&Ai.enqueueReplaceState(n,n.state,null)}function Al(e,n,s,o){var c=e.stateNode;c.props=s,c.state=e.memoizedState,c.refs={},kl(e);var u=n.contextType;typeof u=="object"&&u!==null?c.context=zn(u):(u=yn(n)?Zt:cn.current,c.context=$r(e,u)),c.state=e.memoizedState,u=n.getDerivedStateFromProps,typeof u=="function"&&($l(e,n,u,s),c.state=e.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof c.getSnapshotBeforeUpdate=="function"||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(n=c.state,typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount(),n!==c.state&&Ai.enqueueReplaceState(c,c.state,null),bi(e,s,c,o),c.state=e.memoizedState),typeof c.componentDidMount=="function"&&(e.flags|=4194308)}function Br(e,n){try{var s="",o=n;do s+=ge(o),o=o.return;while(o);var c=s}catch(u){c=`
8
+ Error generating stack: `+u.message+`
9
+ `+u.stack}return{value:e,source:n,stack:c,digest:null}}function Dl(e,n,s){return{value:e,source:null,stack:s??null,digest:n??null}}function Ll(e,n){try{console.error(n.value)}catch(s){setTimeout(function(){throw s})}}var uh=typeof WeakMap=="function"?WeakMap:Map;function _u(e,n,s){s=wt(-1,s),s.tag=3,s.payload={element:null};var o=n.value;return s.callback=function(){Bi||(Bi=!0,Jl=o),Ll(e,n)},s}function Iu(e,n,s){s=wt(-1,s),s.tag=3;var o=e.type.getDerivedStateFromError;if(typeof o=="function"){var c=n.value;s.payload=function(){return o(c)},s.callback=function(){Ll(e,n)}}var u=e.stateNode;return u!==null&&typeof u.componentDidCatch=="function"&&(s.callback=function(){Ll(e,n),typeof o!="function"&&(qt===null?qt=new Set([this]):qt.add(this));var f=n.stack;this.componentDidCatch(n.value,{componentStack:f!==null?f:""})}),s}function bu(e,n,s){var o=e.pingCache;if(o===null){o=e.pingCache=new uh;var c=new Set;o.set(n,c)}else c=o.get(n),c===void 0&&(c=new Set,o.set(n,c));c.has(s)||(c.add(s),e=Ch.bind(null,e,n,s),n.then(e,e))}function Eu(e){do{var n;if((n=e.tag===13)&&(n=e.memoizedState,n=n!==null?n.dehydrated!==null:!0),n)return e;e=e.return}while(e!==null);return null}function Ru(e,n,s,o,c){return(e.mode&1)===0?(e===n?e.flags|=65536:(e.flags|=128,s.flags|=131072,s.flags&=-52805,s.tag===1&&(s.alternate===null?s.tag=17:(n=wt(-1,1),n.tag=2,zt(s,n,1))),s.lanes|=1),e):(e.flags|=65536,e.lanes=c,e)}var dh=Z.ReactCurrentOwner,xn=!1;function hn(e,n,s,o){n.child=e===null?Yc(n,null,s,o):Or(n,e.child,s,o)}function Pu(e,n,s,o,c){s=s.render;var u=n.ref;return Fr(n,c),o=bl(e,n,s,o,u,c),s=El(),e!==null&&!xn?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~c,kt(e,n,c)):(qe&&s&&dl(n),n.flags|=1,hn(e,n,o,c),n.child)}function Tu(e,n,s,o,c){if(e===null){var u=s.type;return typeof u=="function"&&!ia(u)&&u.defaultProps===void 0&&s.compare===null&&s.defaultProps===void 0?(n.tag=15,n.type=u,Mu(e,n,u,o,c)):(e=Qi(s.type,null,o,n,n.mode,c),e.ref=n.ref,e.return=n,n.child=e)}if(u=e.child,(e.lanes&c)===0){var f=u.memoizedProps;if(s=s.compare,s=s!==null?s:vs,s(f,o)&&e.ref===n.ref)return kt(e,n,c)}return n.flags|=1,e=Ht(u,o),e.ref=n.ref,e.return=n,n.child=e}function Mu(e,n,s,o,c){if(e!==null){var u=e.memoizedProps;if(vs(u,o)&&e.ref===n.ref)if(xn=!1,n.pendingProps=o=u,(e.lanes&c)!==0)(e.flags&131072)!==0&&(xn=!0);else return n.lanes=e.lanes,kt(e,n,c)}return Ol(e,n,s,o,c)}function $u(e,n,s){var o=n.pendingProps,c=o.children,u=e!==null?e.memoizedState:null;if(o.mode==="hidden")if((n.mode&1)===0)n.memoizedState={baseLanes:0,cachePool:null,transitions:null},Le(Ur,Tn),Tn|=s;else{if((s&1073741824)===0)return e=u!==null?u.baseLanes|s:s,n.lanes=n.childLanes=1073741824,n.memoizedState={baseLanes:e,cachePool:null,transitions:null},n.updateQueue=null,Le(Ur,Tn),Tn|=e,null;n.memoizedState={baseLanes:0,cachePool:null,transitions:null},o=u!==null?u.baseLanes:s,Le(Ur,Tn),Tn|=o}else u!==null?(o=u.baseLanes|s,n.memoizedState=null):o=s,Le(Ur,Tn),Tn|=o;return hn(e,n,c,s),n.child}function Au(e,n){var s=n.ref;(e===null&&s!==null||e!==null&&e.ref!==s)&&(n.flags|=512,n.flags|=2097152)}function Ol(e,n,s,o,c){var u=yn(s)?Zt:cn.current;return u=$r(n,u),Fr(n,c),s=bl(e,n,s,o,u,c),o=El(),e!==null&&!xn?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~c,kt(e,n,c)):(qe&&o&&dl(n),n.flags|=1,hn(e,n,s,c),n.child)}function Du(e,n,s,o,c){if(yn(s)){var u=!0;xi(n)}else u=!1;if(Fr(n,c),n.stateNode===null)Li(e,n),Cu(n,s,o),Al(n,s,o,c),o=!0;else if(e===null){var f=n.stateNode,v=n.memoizedProps;f.props=v;var y=f.context,E=s.contextType;typeof E=="object"&&E!==null?E=zn(E):(E=yn(s)?Zt:cn.current,E=$r(n,E));var q=s.getDerivedStateFromProps,U=typeof q=="function"||typeof f.getSnapshotBeforeUpdate=="function";U||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(v!==o||y!==E)&&Nu(n,f,o,E),Ot=!1;var z=n.memoizedState;f.state=z,bi(n,o,f,c),y=n.memoizedState,v!==o||z!==y||vn.current||Ot?(typeof q=="function"&&($l(n,s,q,o),y=n.memoizedState),(v=Ot||Su(n,s,v,o,z,y,E))?(U||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount()),typeof f.componentDidMount=="function"&&(n.flags|=4194308)):(typeof f.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=o,n.memoizedState=y),f.props=o,f.state=y,f.context=E,o=v):(typeof f.componentDidMount=="function"&&(n.flags|=4194308),o=!1)}else{f=n.stateNode,Jc(e,n),v=n.memoizedProps,E=n.type===n.elementType?v:Jn(n.type,v),f.props=E,U=n.pendingProps,z=f.context,y=s.contextType,typeof y=="object"&&y!==null?y=zn(y):(y=yn(s)?Zt:cn.current,y=$r(n,y));var ee=s.getDerivedStateFromProps;(q=typeof ee=="function"||typeof f.getSnapshotBeforeUpdate=="function")||typeof f.UNSAFE_componentWillReceiveProps!="function"&&typeof f.componentWillReceiveProps!="function"||(v!==U||z!==y)&&Nu(n,f,o,y),Ot=!1,z=n.memoizedState,f.state=z,bi(n,o,f,c);var oe=n.memoizedState;v!==U||z!==oe||vn.current||Ot?(typeof ee=="function"&&($l(n,s,ee,o),oe=n.memoizedState),(E=Ot||Su(n,s,E,o,z,oe,y)||!1)?(q||typeof f.UNSAFE_componentWillUpdate!="function"&&typeof f.componentWillUpdate!="function"||(typeof f.componentWillUpdate=="function"&&f.componentWillUpdate(o,oe,y),typeof f.UNSAFE_componentWillUpdate=="function"&&f.UNSAFE_componentWillUpdate(o,oe,y)),typeof f.componentDidUpdate=="function"&&(n.flags|=4),typeof f.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof f.componentDidUpdate!="function"||v===e.memoizedProps&&z===e.memoizedState||(n.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||v===e.memoizedProps&&z===e.memoizedState||(n.flags|=1024),n.memoizedProps=o,n.memoizedState=oe),f.props=o,f.state=oe,f.context=y,o=E):(typeof f.componentDidUpdate!="function"||v===e.memoizedProps&&z===e.memoizedState||(n.flags|=4),typeof f.getSnapshotBeforeUpdate!="function"||v===e.memoizedProps&&z===e.memoizedState||(n.flags|=1024),o=!1)}return zl(e,n,s,o,u,c)}function zl(e,n,s,o,c,u){Au(e,n);var f=(n.flags&128)!==0;if(!o&&!f)return c&&qc(n,s,!1),kt(e,n,u);o=n.stateNode,dh.current=n;var v=f&&typeof s.getDerivedStateFromError!="function"?null:o.render();return n.flags|=1,e!==null&&f?(n.child=Or(n,e.child,null,u),n.child=Or(n,null,v,u)):hn(e,n,v,u),n.memoizedState=o.state,c&&qc(n,s,!0),n.child}function Lu(e){var n=e.stateNode;n.pendingContext?zc(e,n.pendingContext,n.pendingContext!==n.context):n.context&&zc(e,n.context,!1),jl(e,n.containerInfo)}function Ou(e,n,s,o,c){return Lr(),ml(c),n.flags|=256,hn(e,n,s,o),n.child}var Fl={dehydrated:null,treeContext:null,retryLane:0};function ql(e){return{baseLanes:e,cachePool:null,transitions:null}}function zu(e,n,s){var o=n.pendingProps,c=Be.current,u=!1,f=(n.flags&128)!==0,v;if((v=f)||(v=e!==null&&e.memoizedState===null?!1:(c&2)!==0),v?(u=!0,n.flags&=-129):(e===null||e.memoizedState!==null)&&(c|=1),Le(Be,c&1),e===null)return hl(n),e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?((n.mode&1)===0?n.lanes=1:e.data==="$!"?n.lanes=8:n.lanes=1073741824,null):(f=o.children,e=o.fallback,u?(o=n.mode,u=n.child,f={mode:"hidden",children:f},(o&1)===0&&u!==null?(u.childLanes=0,u.pendingProps=f):u=Gi(f,o,0,null),e=cr(e,o,s,null),u.return=n,e.return=n,u.sibling=e,n.child=u,n.child.memoizedState=ql(s),n.memoizedState=Fl,e):Bl(n,f));if(c=e.memoizedState,c!==null&&(v=c.dehydrated,v!==null))return fh(e,n,f,o,v,c,s);if(u){u=o.fallback,f=n.mode,c=e.child,v=c.sibling;var y={mode:"hidden",children:o.children};return(f&1)===0&&n.child!==c?(o=n.child,o.childLanes=0,o.pendingProps=y,n.deletions=null):(o=Ht(c,y),o.subtreeFlags=c.subtreeFlags&14680064),v!==null?u=Ht(v,u):(u=cr(u,f,s,null),u.flags|=2),u.return=n,o.return=n,o.sibling=u,n.child=o,o=u,u=n.child,f=e.child.memoizedState,f=f===null?ql(s):{baseLanes:f.baseLanes|s,cachePool:null,transitions:f.transitions},u.memoizedState=f,u.childLanes=e.childLanes&~s,n.memoizedState=Fl,o}return u=e.child,e=u.sibling,o=Ht(u,{mode:"visible",children:o.children}),(n.mode&1)===0&&(o.lanes=s),o.return=n,o.sibling=null,e!==null&&(s=n.deletions,s===null?(n.deletions=[e],n.flags|=16):s.push(e)),n.child=o,n.memoizedState=null,o}function Bl(e,n){return n=Gi({mode:"visible",children:n},e.mode,0,null),n.return=e,e.child=n}function Di(e,n,s,o){return o!==null&&ml(o),Or(n,e.child,null,s),e=Bl(n,n.pendingProps.children),e.flags|=2,n.memoizedState=null,e}function fh(e,n,s,o,c,u,f){if(s)return n.flags&256?(n.flags&=-257,o=Dl(Error(l(422))),Di(e,n,f,o)):n.memoizedState!==null?(n.child=e.child,n.flags|=128,null):(u=o.fallback,c=n.mode,o=Gi({mode:"visible",children:o.children},c,0,null),u=cr(u,c,f,null),u.flags|=2,o.return=n,u.return=n,o.sibling=u,n.child=o,(n.mode&1)!==0&&Or(n,e.child,null,f),n.child.memoizedState=ql(f),n.memoizedState=Fl,u);if((n.mode&1)===0)return Di(e,n,f,null);if(c.data==="$!"){if(o=c.nextSibling&&c.nextSibling.dataset,o)var v=o.dgst;return o=v,u=Error(l(419)),o=Dl(u,o,void 0),Di(e,n,f,o)}if(v=(f&e.childLanes)!==0,xn||v){if(o=tn,o!==null){switch(f&-f){case 4:c=2;break;case 16:c=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:c=32;break;case 536870912:c=268435456;break;default:c=0}c=(c&(o.suspendedLanes|f))!==0?0:c,c!==0&&c!==u.retryLane&&(u.retryLane=c,xt(e,c),nt(o,e,c,-1))}return sa(),o=Dl(Error(l(421))),Di(e,n,f,o)}return c.data==="$?"?(n.flags|=128,n.child=e.child,n=Nh.bind(null,e),c._reactRetry=n,null):(e=u.treeContext,Pn=$t(c.nextSibling),Rn=n,qe=!0,Xn=null,e!==null&&(Ln[On++]=vt,Ln[On++]=yt,Ln[On++]=er,vt=e.id,yt=e.overflow,er=n),n=Bl(n,o.children),n.flags|=4096,n)}function Fu(e,n,s){e.lanes|=n;var o=e.alternate;o!==null&&(o.lanes|=n),xl(e.return,n,s)}function Wl(e,n,s,o,c){var u=e.memoizedState;u===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:o,tail:s,tailMode:c}:(u.isBackwards=n,u.rendering=null,u.renderingStartTime=0,u.last=o,u.tail=s,u.tailMode=c)}function qu(e,n,s){var o=n.pendingProps,c=o.revealOrder,u=o.tail;if(hn(e,n,o.children,s),o=Be.current,(o&2)!==0)o=o&1|2,n.flags|=128;else{if(e!==null&&(e.flags&128)!==0)e:for(e=n.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Fu(e,s,n);else if(e.tag===19)Fu(e,s,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;e.sibling===null;){if(e.return===null||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}o&=1}if(Le(Be,o),(n.mode&1)===0)n.memoizedState=null;else switch(c){case"forwards":for(s=n.child,c=null;s!==null;)e=s.alternate,e!==null&&Ei(e)===null&&(c=s),s=s.sibling;s=c,s===null?(c=n.child,n.child=null):(c=s.sibling,s.sibling=null),Wl(n,!1,c,s,u);break;case"backwards":for(s=null,c=n.child,n.child=null;c!==null;){if(e=c.alternate,e!==null&&Ei(e)===null){n.child=c;break}e=c.sibling,c.sibling=s,s=c,c=e}Wl(n,!0,s,null,u);break;case"together":Wl(n,!1,null,null,void 0);break;default:n.memoizedState=null}return n.child}function Li(e,n){(n.mode&1)===0&&e!==null&&(e.alternate=null,n.alternate=null,n.flags|=2)}function kt(e,n,s){if(e!==null&&(n.dependencies=e.dependencies),ir|=n.lanes,(s&n.childLanes)===0)return null;if(e!==null&&n.child!==e.child)throw Error(l(153));if(n.child!==null){for(e=n.child,s=Ht(e,e.pendingProps),n.child=s,s.return=n;e.sibling!==null;)e=e.sibling,s=s.sibling=Ht(e,e.pendingProps),s.return=n;s.sibling=null}return n.child}function ph(e,n,s){switch(n.tag){case 3:Lu(n),Lr();break;case 5:nu(n);break;case 1:yn(n.type)&&xi(n);break;case 4:jl(n,n.stateNode.containerInfo);break;case 10:var o=n.type._context,c=n.memoizedProps.value;Le(Ni,o._currentValue),o._currentValue=c;break;case 13:if(o=n.memoizedState,o!==null)return o.dehydrated!==null?(Le(Be,Be.current&1),n.flags|=128,null):(s&n.child.childLanes)!==0?zu(e,n,s):(Le(Be,Be.current&1),e=kt(e,n,s),e!==null?e.sibling:null);Le(Be,Be.current&1);break;case 19:if(o=(s&n.childLanes)!==0,(e.flags&128)!==0){if(o)return qu(e,n,s);n.flags|=128}if(c=n.memoizedState,c!==null&&(c.rendering=null,c.tail=null,c.lastEffect=null),Le(Be,Be.current),o)break;return null;case 22:case 23:return n.lanes=0,$u(e,n,s)}return kt(e,n,s)}var Bu,Ul,Wu,Uu;Bu=function(e,n){for(var s=n.child;s!==null;){if(s.tag===5||s.tag===6)e.appendChild(s.stateNode);else if(s.tag!==4&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===n)break;for(;s.sibling===null;){if(s.return===null||s.return===n)return;s=s.return}s.sibling.return=s.return,s=s.sibling}},Ul=function(){},Wu=function(e,n,s,o){var c=e.memoizedProps;if(c!==o){e=n.stateNode,rr(at.current);var u=null;switch(s){case"input":c=pn(e,c),o=pn(e,o),u=[];break;case"select":c=K({},c,{value:void 0}),o=K({},o,{value:void 0}),u=[];break;case"textarea":c=Qn(e,c),o=Qn(e,o),u=[];break;default:typeof c.onClick!="function"&&typeof o.onClick=="function"&&(e.onclick=gi)}yr(s,o);var f;s=null;for(E in c)if(!o.hasOwnProperty(E)&&c.hasOwnProperty(E)&&c[E]!=null)if(E==="style"){var v=c[E];for(f in v)v.hasOwnProperty(f)&&(s||(s={}),s[f]="")}else E!=="dangerouslySetInnerHTML"&&E!=="children"&&E!=="suppressContentEditableWarning"&&E!=="suppressHydrationWarning"&&E!=="autoFocus"&&(d.hasOwnProperty(E)?u||(u=[]):(u=u||[]).push(E,null));for(E in o){var y=o[E];if(v=c?.[E],o.hasOwnProperty(E)&&y!==v&&(y!=null||v!=null))if(E==="style")if(v){for(f in v)!v.hasOwnProperty(f)||y&&y.hasOwnProperty(f)||(s||(s={}),s[f]="");for(f in y)y.hasOwnProperty(f)&&v[f]!==y[f]&&(s||(s={}),s[f]=y[f])}else s||(u||(u=[]),u.push(E,s)),s=y;else E==="dangerouslySetInnerHTML"?(y=y?y.__html:void 0,v=v?v.__html:void 0,y!=null&&v!==y&&(u=u||[]).push(E,y)):E==="children"?typeof y!="string"&&typeof y!="number"||(u=u||[]).push(E,""+y):E!=="suppressContentEditableWarning"&&E!=="suppressHydrationWarning"&&(d.hasOwnProperty(E)?(y!=null&&E==="onScroll"&&ze("scroll",e),u||v===y||(u=[])):(u=u||[]).push(E,y))}s&&(u=u||[]).push("style",s);var E=u;(n.updateQueue=E)&&(n.flags|=4)}},Uu=function(e,n,s,o){s!==o&&(n.flags|=4)};function Ts(e,n){if(!qe)switch(e.tailMode){case"hidden":n=e.tail;for(var s=null;n!==null;)n.alternate!==null&&(s=n),n=n.sibling;s===null?e.tail=null:s.sibling=null;break;case"collapsed":s=e.tail;for(var o=null;s!==null;)s.alternate!==null&&(o=s),s=s.sibling;o===null?n||e.tail===null?e.tail=null:e.tail.sibling=null:o.sibling=null}}function dn(e){var n=e.alternate!==null&&e.alternate.child===e.child,s=0,o=0;if(n)for(var c=e.child;c!==null;)s|=c.lanes|c.childLanes,o|=c.subtreeFlags&14680064,o|=c.flags&14680064,c.return=e,c=c.sibling;else for(c=e.child;c!==null;)s|=c.lanes|c.childLanes,o|=c.subtreeFlags,o|=c.flags,c.return=e,c=c.sibling;return e.subtreeFlags|=o,e.childLanes=s,n}function hh(e,n,s){var o=n.pendingProps;switch(fl(n),n.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return dn(n),null;case 1:return yn(n.type)&&yi(),dn(n),null;case 3:return o=n.stateNode,qr(),Fe(vn),Fe(cn),Nl(),o.pendingContext&&(o.context=o.pendingContext,o.pendingContext=null),(e===null||e.child===null)&&(Si(n)?n.flags|=4:e===null||e.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,Xn!==null&&(na(Xn),Xn=null))),Ul(e,n),dn(n),null;case 5:Sl(n);var c=rr(Is.current);if(s=n.type,e!==null&&n.stateNode!=null)Wu(e,n,s,o,c),e.ref!==n.ref&&(n.flags|=512,n.flags|=2097152);else{if(!o){if(n.stateNode===null)throw Error(l(166));return dn(n),null}if(e=rr(at.current),Si(n)){o=n.stateNode,s=n.type;var u=n.memoizedProps;switch(o[lt]=n,o[js]=u,e=(n.mode&1)!==0,s){case"dialog":ze("cancel",o),ze("close",o);break;case"iframe":case"object":case"embed":ze("load",o);break;case"video":case"audio":for(c=0;c<xs.length;c++)ze(xs[c],o);break;case"source":ze("error",o);break;case"img":case"image":case"link":ze("error",o),ze("load",o);break;case"details":ze("toggle",o);break;case"input":Vn(o,u),ze("invalid",o);break;case"select":o._wrapperState={wasMultiple:!!u.multiple},ze("invalid",o);break;case"textarea":It(o,u),ze("invalid",o)}yr(s,u),c=null;for(var f in u)if(u.hasOwnProperty(f)){var v=u[f];f==="children"?typeof v=="string"?o.textContent!==v&&(u.suppressHydrationWarning!==!0&&mi(o.textContent,v,e),c=["children",v]):typeof v=="number"&&o.textContent!==""+v&&(u.suppressHydrationWarning!==!0&&mi(o.textContent,v,e),c=["children",""+v]):d.hasOwnProperty(f)&&v!=null&&f==="onScroll"&&ze("scroll",o)}switch(s){case"input":Se(o),gn(o,u,!0);break;case"textarea":Se(o),J(o);break;case"select":case"option":break;default:typeof u.onClick=="function"&&(o.onclick=gi)}o=c,n.updateQueue=o,o!==null&&(n.flags|=4)}else{f=c.nodeType===9?c:c.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=pe(s)),e==="http://www.w3.org/1999/xhtml"?s==="script"?(e=f.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof o.is=="string"?e=f.createElement(s,{is:o.is}):(e=f.createElement(s),s==="select"&&(f=e,o.multiple?f.multiple=!0:o.size&&(f.size=o.size))):e=f.createElementNS(e,s),e[lt]=n,e[js]=o,Bu(e,n,!1,!1),n.stateNode=e;e:{switch(f=xr(s,o),s){case"dialog":ze("cancel",e),ze("close",e),c=o;break;case"iframe":case"object":case"embed":ze("load",e),c=o;break;case"video":case"audio":for(c=0;c<xs.length;c++)ze(xs[c],e);c=o;break;case"source":ze("error",e),c=o;break;case"img":case"image":case"link":ze("error",e),ze("load",e),c=o;break;case"details":ze("toggle",e),c=o;break;case"input":Vn(e,o),c=pn(e,o),ze("invalid",e);break;case"option":c=o;break;case"select":e._wrapperState={wasMultiple:!!o.multiple},c=K({},o,{value:void 0}),ze("invalid",e);break;case"textarea":It(e,o),c=Qn(e,o),ze("invalid",e);break;default:c=o}yr(s,c),v=c;for(u in v)if(v.hasOwnProperty(u)){var y=v[u];u==="style"?ts(e,y):u==="dangerouslySetInnerHTML"?(y=y?y.__html:void 0,y!=null&&$n(e,y)):u==="children"?typeof y=="string"?(s!=="textarea"||y!=="")&&An(e,y):typeof y=="number"&&An(e,""+y):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(d.hasOwnProperty(u)?y!=null&&u==="onScroll"&&ze("scroll",e):y!=null&&we(e,u,y,f))}switch(s){case"input":Se(e),gn(e,o,!1);break;case"textarea":Se(e),J(e);break;case"option":o.value!=null&&e.setAttribute("value",""+ke(o.value));break;case"select":e.multiple=!!o.multiple,u=o.value,u!=null?Kn(e,!!o.multiple,u,!1):o.defaultValue!=null&&Kn(e,!!o.multiple,o.defaultValue,!0);break;default:typeof c.onClick=="function"&&(e.onclick=gi)}switch(s){case"button":case"input":case"select":case"textarea":o=!!o.autoFocus;break e;case"img":o=!0;break e;default:o=!1}}o&&(n.flags|=4)}n.ref!==null&&(n.flags|=512,n.flags|=2097152)}return dn(n),null;case 6:if(e&&n.stateNode!=null)Uu(e,n,e.memoizedProps,o);else{if(typeof o!="string"&&n.stateNode===null)throw Error(l(166));if(s=rr(Is.current),rr(at.current),Si(n)){if(o=n.stateNode,s=n.memoizedProps,o[lt]=n,(u=o.nodeValue!==s)&&(e=Rn,e!==null))switch(e.tag){case 3:mi(o.nodeValue,s,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&mi(o.nodeValue,s,(e.mode&1)!==0)}u&&(n.flags|=4)}else o=(s.nodeType===9?s:s.ownerDocument).createTextNode(o),o[lt]=n,n.stateNode=o}return dn(n),null;case 13:if(Fe(Be),o=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(qe&&Pn!==null&&(n.mode&1)!==0&&(n.flags&128)===0)Kc(),Lr(),n.flags|=98560,u=!1;else if(u=Si(n),o!==null&&o.dehydrated!==null){if(e===null){if(!u)throw Error(l(318));if(u=n.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(l(317));u[lt]=n}else Lr(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;dn(n),u=!1}else Xn!==null&&(na(Xn),Xn=null),u=!0;if(!u)return n.flags&65536?n:null}return(n.flags&128)!==0?(n.lanes=s,n):(o=o!==null,o!==(e!==null&&e.memoizedState!==null)&&o&&(n.child.flags|=8192,(n.mode&1)!==0&&(e===null||(Be.current&1)!==0?Je===0&&(Je=3):sa())),n.updateQueue!==null&&(n.flags|=4),dn(n),null);case 4:return qr(),Ul(e,n),e===null&&ws(n.stateNode.containerInfo),dn(n),null;case 10:return yl(n.type._context),dn(n),null;case 17:return yn(n.type)&&yi(),dn(n),null;case 19:if(Fe(Be),u=n.memoizedState,u===null)return dn(n),null;if(o=(n.flags&128)!==0,f=u.rendering,f===null)if(o)Ts(u,!1);else{if(Je!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(f=Ei(e),f!==null){for(n.flags|=128,Ts(u,!1),o=f.updateQueue,o!==null&&(n.updateQueue=o,n.flags|=4),n.subtreeFlags=0,o=s,s=n.child;s!==null;)u=s,e=o,u.flags&=14680066,f=u.alternate,f===null?(u.childLanes=0,u.lanes=e,u.child=null,u.subtreeFlags=0,u.memoizedProps=null,u.memoizedState=null,u.updateQueue=null,u.dependencies=null,u.stateNode=null):(u.childLanes=f.childLanes,u.lanes=f.lanes,u.child=f.child,u.subtreeFlags=0,u.deletions=null,u.memoizedProps=f.memoizedProps,u.memoizedState=f.memoizedState,u.updateQueue=f.updateQueue,u.type=f.type,e=f.dependencies,u.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),s=s.sibling;return Le(Be,Be.current&1|2),n.child}e=e.sibling}u.tail!==null&&Ve()>Hr&&(n.flags|=128,o=!0,Ts(u,!1),n.lanes=4194304)}else{if(!o)if(e=Ei(f),e!==null){if(n.flags|=128,o=!0,s=e.updateQueue,s!==null&&(n.updateQueue=s,n.flags|=4),Ts(u,!0),u.tail===null&&u.tailMode==="hidden"&&!f.alternate&&!qe)return dn(n),null}else 2*Ve()-u.renderingStartTime>Hr&&s!==1073741824&&(n.flags|=128,o=!0,Ts(u,!1),n.lanes=4194304);u.isBackwards?(f.sibling=n.child,n.child=f):(s=u.last,s!==null?s.sibling=f:n.child=f,u.last=f)}return u.tail!==null?(n=u.tail,u.rendering=n,u.tail=n.sibling,u.renderingStartTime=Ve(),n.sibling=null,s=Be.current,Le(Be,o?s&1|2:s&1),n):(dn(n),null);case 22:case 23:return ra(),o=n.memoizedState!==null,e!==null&&e.memoizedState!==null!==o&&(n.flags|=8192),o&&(n.mode&1)!==0?(Tn&1073741824)!==0&&(dn(n),n.subtreeFlags&6&&(n.flags|=8192)):dn(n),null;case 24:return null;case 25:return null}throw Error(l(156,n.tag))}function mh(e,n){switch(fl(n),n.tag){case 1:return yn(n.type)&&yi(),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return qr(),Fe(vn),Fe(cn),Nl(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 5:return Sl(n),null;case 13:if(Fe(Be),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(l(340));Lr()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return Fe(Be),null;case 4:return qr(),null;case 10:return yl(n.type._context),null;case 22:case 23:return ra(),null;case 24:return null;default:return null}}var Oi=!1,fn=!1,gh=typeof WeakSet=="function"?WeakSet:Set,te=null;function Wr(e,n){var s=e.ref;if(s!==null)if(typeof s=="function")try{s(null)}catch(o){Ue(e,n,o)}else s.current=null}function Hl(e,n,s){try{s()}catch(o){Ue(e,n,o)}}var Hu=!1;function vh(e,n){if(rl=si,e=Sc(),Go(e)){if("selectionStart"in e)var s={start:e.selectionStart,end:e.selectionEnd};else e:{s=(s=e.ownerDocument)&&s.defaultView||window;var o=s.getSelection&&s.getSelection();if(o&&o.rangeCount!==0){s=o.anchorNode;var c=o.anchorOffset,u=o.focusNode;o=o.focusOffset;try{s.nodeType,u.nodeType}catch{s=null;break e}var f=0,v=-1,y=-1,E=0,q=0,U=e,z=null;n:for(;;){for(var ee;U!==s||c!==0&&U.nodeType!==3||(v=f+c),U!==u||o!==0&&U.nodeType!==3||(y=f+o),U.nodeType===3&&(f+=U.nodeValue.length),(ee=U.firstChild)!==null;)z=U,U=ee;for(;;){if(U===e)break n;if(z===s&&++E===c&&(v=f),z===u&&++q===o&&(y=f),(ee=U.nextSibling)!==null)break;U=z,z=U.parentNode}U=ee}s=v===-1||y===-1?null:{start:v,end:y}}else s=null}s=s||{start:0,end:0}}else s=null;for(sl={focusedElem:e,selectionRange:s},si=!1,te=n;te!==null;)if(n=te,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,te=e;else for(;te!==null;){n=te;try{var oe=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(oe!==null){var ae=oe.memoizedProps,Ke=oe.memoizedState,C=n.stateNode,x=C.getSnapshotBeforeUpdate(n.elementType===n.type?ae:Jn(n.type,ae),Ke);C.__reactInternalSnapshotBeforeUpdate=x}break;case 3:var _=n.stateNode.containerInfo;_.nodeType===1?_.textContent="":_.nodeType===9&&_.documentElement&&_.removeChild(_.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(V){Ue(n,n.return,V)}if(e=n.sibling,e!==null){e.return=n.return,te=e;break}te=n.return}return oe=Hu,Hu=!1,oe}function Ms(e,n,s){var o=n.updateQueue;if(o=o!==null?o.lastEffect:null,o!==null){var c=o=o.next;do{if((c.tag&e)===e){var u=c.destroy;c.destroy=void 0,u!==void 0&&Hl(n,s,u)}c=c.next}while(c!==o)}}function zi(e,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var s=n=n.next;do{if((s.tag&e)===e){var o=s.create;s.destroy=o()}s=s.next}while(s!==n)}}function Vl(e){var n=e.ref;if(n!==null){var s=e.stateNode;e.tag,e=s,typeof n=="function"?n(e):n.current=e}}function Vu(e){var n=e.alternate;n!==null&&(e.alternate=null,Vu(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&(delete n[lt],delete n[js],delete n[al],delete n[Zp],delete n[eh])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ku(e){return e.tag===5||e.tag===3||e.tag===4}function Qu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Ku(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.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Kl(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?s.nodeType===8?s.parentNode.insertBefore(e,n):s.insertBefore(e,n):(s.nodeType===8?(n=s.parentNode,n.insertBefore(e,s)):(n=s,n.appendChild(e)),s=s._reactRootContainer,s!=null||n.onclick!==null||(n.onclick=gi));else if(o!==4&&(e=e.child,e!==null))for(Kl(e,n,s),e=e.sibling;e!==null;)Kl(e,n,s),e=e.sibling}function Ql(e,n,s){var o=e.tag;if(o===5||o===6)e=e.stateNode,n?s.insertBefore(e,n):s.appendChild(e);else if(o!==4&&(e=e.child,e!==null))for(Ql(e,n,s),e=e.sibling;e!==null;)Ql(e,n,s),e=e.sibling}var ln=null,Zn=!1;function Ft(e,n,s){for(s=s.child;s!==null;)Gu(e,n,s),s=s.sibling}function Gu(e,n,s){if(ot&&typeof ot.onCommitFiberUnmount=="function")try{ot.onCommitFiberUnmount(Js,s)}catch{}switch(s.tag){case 5:fn||Wr(s,n);case 6:var o=ln,c=Zn;ln=null,Ft(e,n,s),ln=o,Zn=c,ln!==null&&(Zn?(e=ln,s=s.stateNode,e.nodeType===8?e.parentNode.removeChild(s):e.removeChild(s)):ln.removeChild(s.stateNode));break;case 18:ln!==null&&(Zn?(e=ln,s=s.stateNode,e.nodeType===8?ll(e.parentNode,s):e.nodeType===1&&ll(e,s),ds(e)):ll(ln,s.stateNode));break;case 4:o=ln,c=Zn,ln=s.stateNode.containerInfo,Zn=!0,Ft(e,n,s),ln=o,Zn=c;break;case 0:case 11:case 14:case 15:if(!fn&&(o=s.updateQueue,o!==null&&(o=o.lastEffect,o!==null))){c=o=o.next;do{var u=c,f=u.destroy;u=u.tag,f!==void 0&&((u&2)!==0||(u&4)!==0)&&Hl(s,n,f),c=c.next}while(c!==o)}Ft(e,n,s);break;case 1:if(!fn&&(Wr(s,n),o=s.stateNode,typeof o.componentWillUnmount=="function"))try{o.props=s.memoizedProps,o.state=s.memoizedState,o.componentWillUnmount()}catch(v){Ue(s,n,v)}Ft(e,n,s);break;case 21:Ft(e,n,s);break;case 22:s.mode&1?(fn=(o=fn)||s.memoizedState!==null,Ft(e,n,s),fn=o):Ft(e,n,s);break;default:Ft(e,n,s)}}function Yu(e){var n=e.updateQueue;if(n!==null){e.updateQueue=null;var s=e.stateNode;s===null&&(s=e.stateNode=new gh),n.forEach(function(o){var c=_h.bind(null,e,o);s.has(o)||(s.add(o),o.then(c,c))})}}function et(e,n){var s=n.deletions;if(s!==null)for(var o=0;o<s.length;o++){var c=s[o];try{var u=e,f=n,v=f;e:for(;v!==null;){switch(v.tag){case 5:ln=v.stateNode,Zn=!1;break e;case 3:ln=v.stateNode.containerInfo,Zn=!0;break e;case 4:ln=v.stateNode.containerInfo,Zn=!0;break e}v=v.return}if(ln===null)throw Error(l(160));Gu(u,f,c),ln=null,Zn=!1;var y=c.alternate;y!==null&&(y.return=null),c.return=null}catch(E){Ue(c,n,E)}}if(n.subtreeFlags&12854)for(n=n.child;n!==null;)Xu(n,e),n=n.sibling}function Xu(e,n){var s=e.alternate,o=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(et(n,e),ut(e),o&4){try{Ms(3,e,e.return),zi(3,e)}catch(ae){Ue(e,e.return,ae)}try{Ms(5,e,e.return)}catch(ae){Ue(e,e.return,ae)}}break;case 1:et(n,e),ut(e),o&512&&s!==null&&Wr(s,s.return);break;case 5:if(et(n,e),ut(e),o&512&&s!==null&&Wr(s,s.return),e.flags&32){var c=e.stateNode;try{An(c,"")}catch(ae){Ue(e,e.return,ae)}}if(o&4&&(c=e.stateNode,c!=null)){var u=e.memoizedProps,f=s!==null?s.memoizedProps:u,v=e.type,y=e.updateQueue;if(e.updateQueue=null,y!==null)try{v==="input"&&u.type==="radio"&&u.name!=null&&Mn(c,u),xr(v,f);var E=xr(v,u);for(f=0;f<y.length;f+=2){var q=y[f],U=y[f+1];q==="style"?ts(c,U):q==="dangerouslySetInnerHTML"?$n(c,U):q==="children"?An(c,U):we(c,q,U,E)}switch(v){case"input":In(c,u);break;case"textarea":Yt(c,u);break;case"select":var z=c._wrapperState.wasMultiple;c._wrapperState.wasMultiple=!!u.multiple;var ee=u.value;ee!=null?Kn(c,!!u.multiple,ee,!1):z!==!!u.multiple&&(u.defaultValue!=null?Kn(c,!!u.multiple,u.defaultValue,!0):Kn(c,!!u.multiple,u.multiple?[]:"",!1))}c[js]=u}catch(ae){Ue(e,e.return,ae)}}break;case 6:if(et(n,e),ut(e),o&4){if(e.stateNode===null)throw Error(l(162));c=e.stateNode,u=e.memoizedProps;try{c.nodeValue=u}catch(ae){Ue(e,e.return,ae)}}break;case 3:if(et(n,e),ut(e),o&4&&s!==null&&s.memoizedState.isDehydrated)try{ds(n.containerInfo)}catch(ae){Ue(e,e.return,ae)}break;case 4:et(n,e),ut(e);break;case 13:et(n,e),ut(e),c=e.child,c.flags&8192&&(u=c.memoizedState!==null,c.stateNode.isHidden=u,!u||c.alternate!==null&&c.alternate.memoizedState!==null||(Xl=Ve())),o&4&&Yu(e);break;case 22:if(q=s!==null&&s.memoizedState!==null,e.mode&1?(fn=(E=fn)||q,et(n,e),fn=E):et(n,e),ut(e),o&8192){if(E=e.memoizedState!==null,(e.stateNode.isHidden=E)&&!q&&(e.mode&1)!==0)for(te=e,q=e.child;q!==null;){for(U=te=q;te!==null;){switch(z=te,ee=z.child,z.tag){case 0:case 11:case 14:case 15:Ms(4,z,z.return);break;case 1:Wr(z,z.return);var oe=z.stateNode;if(typeof oe.componentWillUnmount=="function"){o=z,s=z.return;try{n=o,oe.props=n.memoizedProps,oe.state=n.memoizedState,oe.componentWillUnmount()}catch(ae){Ue(o,s,ae)}}break;case 5:Wr(z,z.return);break;case 22:if(z.memoizedState!==null){ed(U);continue}}ee!==null?(ee.return=z,te=ee):ed(U)}q=q.sibling}e:for(q=null,U=e;;){if(U.tag===5){if(q===null){q=U;try{c=U.stateNode,E?(u=c.style,typeof u.setProperty=="function"?u.setProperty("display","none","important"):u.display="none"):(v=U.stateNode,y=U.memoizedProps.style,f=y!=null&&y.hasOwnProperty("display")?y.display:null,v.style.display=ns("display",f))}catch(ae){Ue(e,e.return,ae)}}}else if(U.tag===6){if(q===null)try{U.stateNode.nodeValue=E?"":U.memoizedProps}catch(ae){Ue(e,e.return,ae)}}else if((U.tag!==22&&U.tag!==23||U.memoizedState===null||U===e)&&U.child!==null){U.child.return=U,U=U.child;continue}if(U===e)break e;for(;U.sibling===null;){if(U.return===null||U.return===e)break e;q===U&&(q=null),U=U.return}q===U&&(q=null),U.sibling.return=U.return,U=U.sibling}}break;case 19:et(n,e),ut(e),o&4&&Yu(e);break;case 21:break;default:et(n,e),ut(e)}}function ut(e){var n=e.flags;if(n&2){try{e:{for(var s=e.return;s!==null;){if(Ku(s)){var o=s;break e}s=s.return}throw Error(l(160))}switch(o.tag){case 5:var c=o.stateNode;o.flags&32&&(An(c,""),o.flags&=-33);var u=Qu(e);Ql(e,u,c);break;case 3:case 4:var f=o.stateNode.containerInfo,v=Qu(e);Kl(e,v,f);break;default:throw Error(l(161))}}catch(y){Ue(e,e.return,y)}e.flags&=-3}n&4096&&(e.flags&=-4097)}function yh(e,n,s){te=e,Ju(e)}function Ju(e,n,s){for(var o=(e.mode&1)!==0;te!==null;){var c=te,u=c.child;if(c.tag===22&&o){var f=c.memoizedState!==null||Oi;if(!f){var v=c.alternate,y=v!==null&&v.memoizedState!==null||fn;v=Oi;var E=fn;if(Oi=f,(fn=y)&&!E)for(te=c;te!==null;)f=te,y=f.child,f.tag===22&&f.memoizedState!==null?nd(c):y!==null?(y.return=f,te=y):nd(c);for(;u!==null;)te=u,Ju(u),u=u.sibling;te=c,Oi=v,fn=E}Zu(e)}else(c.subtreeFlags&8772)!==0&&u!==null?(u.return=c,te=u):Zu(e)}}function Zu(e){for(;te!==null;){var n=te;if((n.flags&8772)!==0){var s=n.alternate;try{if((n.flags&8772)!==0)switch(n.tag){case 0:case 11:case 15:fn||zi(5,n);break;case 1:var o=n.stateNode;if(n.flags&4&&!fn)if(s===null)o.componentDidMount();else{var c=n.elementType===n.type?s.memoizedProps:Jn(n.type,s.memoizedProps);o.componentDidUpdate(c,s.memoizedState,o.__reactInternalSnapshotBeforeUpdate)}var u=n.updateQueue;u!==null&&eu(n,u,o);break;case 3:var f=n.updateQueue;if(f!==null){if(s=null,n.child!==null)switch(n.child.tag){case 5:s=n.child.stateNode;break;case 1:s=n.child.stateNode}eu(n,f,s)}break;case 5:var v=n.stateNode;if(s===null&&n.flags&4){s=v;var y=n.memoizedProps;switch(n.type){case"button":case"input":case"select":case"textarea":y.autoFocus&&s.focus();break;case"img":y.src&&(s.src=y.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(n.memoizedState===null){var E=n.alternate;if(E!==null){var q=E.memoizedState;if(q!==null){var U=q.dehydrated;U!==null&&ds(U)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(l(163))}fn||n.flags&512&&Vl(n)}catch(z){Ue(n,n.return,z)}}if(n===e){te=null;break}if(s=n.sibling,s!==null){s.return=n.return,te=s;break}te=n.return}}function ed(e){for(;te!==null;){var n=te;if(n===e){te=null;break}var s=n.sibling;if(s!==null){s.return=n.return,te=s;break}te=n.return}}function nd(e){for(;te!==null;){var n=te;try{switch(n.tag){case 0:case 11:case 15:var s=n.return;try{zi(4,n)}catch(y){Ue(n,s,y)}break;case 1:var o=n.stateNode;if(typeof o.componentDidMount=="function"){var c=n.return;try{o.componentDidMount()}catch(y){Ue(n,c,y)}}var u=n.return;try{Vl(n)}catch(y){Ue(n,u,y)}break;case 5:var f=n.return;try{Vl(n)}catch(y){Ue(n,f,y)}}}catch(y){Ue(n,n.return,y)}if(n===e){te=null;break}var v=n.sibling;if(v!==null){v.return=n.return,te=v;break}te=n.return}}var xh=Math.ceil,Fi=Z.ReactCurrentDispatcher,Gl=Z.ReactCurrentOwner,qn=Z.ReactCurrentBatchConfig,Te=0,tn=null,Ge=null,an=0,Tn=0,Ur=At(0),Je=0,$s=null,ir=0,qi=0,Yl=0,As=null,wn=null,Xl=0,Hr=1/0,jt=null,Bi=!1,Jl=null,qt=null,Wi=!1,Bt=null,Ui=0,Ds=0,Zl=null,Hi=-1,Vi=0;function mn(){return(Te&6)!==0?Ve():Hi!==-1?Hi:Hi=Ve()}function Wt(e){return(e.mode&1)===0?1:(Te&2)!==0&&an!==0?an&-an:th.transition!==null?(Vi===0&&(Vi=Qa()),Vi):(e=$e,e!==0||(e=window.event,e=e===void 0?16:rc(e.type)),e)}function nt(e,n,s,o){if(50<Ds)throw Ds=0,Zl=null,Error(l(185));os(e,s,o),((Te&2)===0||e!==tn)&&(e===tn&&((Te&2)===0&&(qi|=s),Je===4&&Ut(e,an)),kn(e,o),s===1&&Te===0&&(n.mode&1)===0&&(Hr=Ve()+500,wi&&Lt()))}function kn(e,n){var s=e.callbackNode;tp(e,n);var o=ni(e,e===tn?an:0);if(o===0)s!==null&&Ha(s),e.callbackNode=null,e.callbackPriority=0;else if(n=o&-o,e.callbackPriority!==n){if(s!=null&&Ha(s),n===1)e.tag===0?nh(rd.bind(null,e)):Bc(rd.bind(null,e)),Xp(function(){(Te&6)===0&&Lt()}),s=null;else{switch(Ga(o)){case 1:s=To;break;case 4:s=Va;break;case 16:s=Xs;break;case 536870912:s=Ka;break;default:s=Xs}s=dd(s,td.bind(null,e))}e.callbackPriority=n,e.callbackNode=s}}function td(e,n){if(Hi=-1,Vi=0,(Te&6)!==0)throw Error(l(327));var s=e.callbackNode;if(Vr()&&e.callbackNode!==s)return null;var o=ni(e,e===tn?an:0);if(o===0)return null;if((o&30)!==0||(o&e.expiredLanes)!==0||n)n=Ki(e,o);else{n=o;var c=Te;Te|=2;var u=id();(tn!==e||an!==n)&&(jt=null,Hr=Ve()+500,lr(e,n));do try{jh();break}catch(v){sd(e,v)}while(!0);vl(),Fi.current=u,Te=c,Ge!==null?n=0:(tn=null,an=0,n=Je)}if(n!==0){if(n===2&&(c=Mo(e),c!==0&&(o=c,n=ea(e,c))),n===1)throw s=$s,lr(e,0),Ut(e,o),kn(e,Ve()),s;if(n===6)Ut(e,o);else{if(c=e.current.alternate,(o&30)===0&&!wh(c)&&(n=Ki(e,o),n===2&&(u=Mo(e),u!==0&&(o=u,n=ea(e,u))),n===1))throw s=$s,lr(e,0),Ut(e,o),kn(e,Ve()),s;switch(e.finishedWork=c,e.finishedLanes=o,n){case 0:case 1:throw Error(l(345));case 2:ar(e,wn,jt);break;case 3:if(Ut(e,o),(o&130023424)===o&&(n=Xl+500-Ve(),10<n)){if(ni(e,0)!==0)break;if(c=e.suspendedLanes,(c&o)!==o){mn(),e.pingedLanes|=e.suspendedLanes&c;break}e.timeoutHandle=ol(ar.bind(null,e,wn,jt),n);break}ar(e,wn,jt);break;case 4:if(Ut(e,o),(o&4194240)===o)break;for(n=e.eventTimes,c=-1;0<o;){var f=31-Gn(o);u=1<<f,f=n[f],f>c&&(c=f),o&=~u}if(o=c,o=Ve()-o,o=(120>o?120:480>o?480:1080>o?1080:1920>o?1920:3e3>o?3e3:4320>o?4320:1960*xh(o/1960))-o,10<o){e.timeoutHandle=ol(ar.bind(null,e,wn,jt),o);break}ar(e,wn,jt);break;case 5:ar(e,wn,jt);break;default:throw Error(l(329))}}}return kn(e,Ve()),e.callbackNode===s?td.bind(null,e):null}function ea(e,n){var s=As;return e.current.memoizedState.isDehydrated&&(lr(e,n).flags|=256),e=Ki(e,n),e!==2&&(n=wn,wn=s,n!==null&&na(n)),e}function na(e){wn===null?wn=e:wn.push.apply(wn,e)}function wh(e){for(var n=e;;){if(n.flags&16384){var s=n.updateQueue;if(s!==null&&(s=s.stores,s!==null))for(var o=0;o<s.length;o++){var c=s[o],u=c.getSnapshot;c=c.value;try{if(!Yn(u(),c))return!1}catch{return!1}}}if(s=n.child,n.subtreeFlags&16384&&s!==null)s.return=n,n=s;else{if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function Ut(e,n){for(n&=~Yl,n&=~qi,e.suspendedLanes|=n,e.pingedLanes&=~n,e=e.expirationTimes;0<n;){var s=31-Gn(n),o=1<<s;e[s]=-1,n&=~o}}function rd(e){if((Te&6)!==0)throw Error(l(327));Vr();var n=ni(e,0);if((n&1)===0)return kn(e,Ve()),null;var s=Ki(e,n);if(e.tag!==0&&s===2){var o=Mo(e);o!==0&&(n=o,s=ea(e,o))}if(s===1)throw s=$s,lr(e,0),Ut(e,n),kn(e,Ve()),s;if(s===6)throw Error(l(345));return e.finishedWork=e.current.alternate,e.finishedLanes=n,ar(e,wn,jt),kn(e,Ve()),null}function ta(e,n){var s=Te;Te|=1;try{return e(n)}finally{Te=s,Te===0&&(Hr=Ve()+500,wi&&Lt())}}function or(e){Bt!==null&&Bt.tag===0&&(Te&6)===0&&Vr();var n=Te;Te|=1;var s=qn.transition,o=$e;try{if(qn.transition=null,$e=1,e)return e()}finally{$e=o,qn.transition=s,Te=n,(Te&6)===0&&Lt()}}function ra(){Tn=Ur.current,Fe(Ur)}function lr(e,n){e.finishedWork=null,e.finishedLanes=0;var s=e.timeoutHandle;if(s!==-1&&(e.timeoutHandle=-1,Yp(s)),Ge!==null)for(s=Ge.return;s!==null;){var o=s;switch(fl(o),o.tag){case 1:o=o.type.childContextTypes,o!=null&&yi();break;case 3:qr(),Fe(vn),Fe(cn),Nl();break;case 5:Sl(o);break;case 4:qr();break;case 13:Fe(Be);break;case 19:Fe(Be);break;case 10:yl(o.type._context);break;case 22:case 23:ra()}s=s.return}if(tn=e,Ge=e=Ht(e.current,null),an=Tn=n,Je=0,$s=null,Yl=qi=ir=0,wn=As=null,tr!==null){for(n=0;n<tr.length;n++)if(s=tr[n],o=s.interleaved,o!==null){s.interleaved=null;var c=o.next,u=s.pending;if(u!==null){var f=u.next;u.next=c,o.next=f}s.pending=o}tr=null}return e}function sd(e,n){do{var s=Ge;try{if(vl(),Ri.current=$i,Pi){for(var o=We.memoizedState;o!==null;){var c=o.queue;c!==null&&(c.pending=null),o=o.next}Pi=!1}if(sr=0,nn=Xe=We=null,bs=!1,Es=0,Gl.current=null,s===null||s.return===null){Je=1,$s=n,Ge=null;break}e:{var u=e,f=s.return,v=s,y=n;if(n=an,v.flags|=32768,y!==null&&typeof y=="object"&&typeof y.then=="function"){var E=y,q=v,U=q.tag;if((q.mode&1)===0&&(U===0||U===11||U===15)){var z=q.alternate;z?(q.updateQueue=z.updateQueue,q.memoizedState=z.memoizedState,q.lanes=z.lanes):(q.updateQueue=null,q.memoizedState=null)}var ee=Eu(f);if(ee!==null){ee.flags&=-257,Ru(ee,f,v,u,n),ee.mode&1&&bu(u,E,n),n=ee,y=E;var oe=n.updateQueue;if(oe===null){var ae=new Set;ae.add(y),n.updateQueue=ae}else oe.add(y);break e}else{if((n&1)===0){bu(u,E,n),sa();break e}y=Error(l(426))}}else if(qe&&v.mode&1){var Ke=Eu(f);if(Ke!==null){(Ke.flags&65536)===0&&(Ke.flags|=256),Ru(Ke,f,v,u,n),ml(Br(y,v));break e}}u=y=Br(y,v),Je!==4&&(Je=2),As===null?As=[u]:As.push(u),u=f;do{switch(u.tag){case 3:u.flags|=65536,n&=-n,u.lanes|=n;var C=_u(u,y,n);Zc(u,C);break e;case 1:v=y;var x=u.type,_=u.stateNode;if((u.flags&128)===0&&(typeof x.getDerivedStateFromError=="function"||_!==null&&typeof _.componentDidCatch=="function"&&(qt===null||!qt.has(_)))){u.flags|=65536,n&=-n,u.lanes|=n;var V=Iu(u,v,n);Zc(u,V);break e}}u=u.return}while(u!==null)}ld(s)}catch(ce){n=ce,Ge===s&&s!==null&&(Ge=s=s.return);continue}break}while(!0)}function id(){var e=Fi.current;return Fi.current=$i,e===null?$i:e}function sa(){(Je===0||Je===3||Je===2)&&(Je=4),tn===null||(ir&268435455)===0&&(qi&268435455)===0||Ut(tn,an)}function Ki(e,n){var s=Te;Te|=2;var o=id();(tn!==e||an!==n)&&(jt=null,lr(e,n));do try{kh();break}catch(c){sd(e,c)}while(!0);if(vl(),Te=s,Fi.current=o,Ge!==null)throw Error(l(261));return tn=null,an=0,Je}function kh(){for(;Ge!==null;)od(Ge)}function jh(){for(;Ge!==null&&!Kf();)od(Ge)}function od(e){var n=ud(e.alternate,e,Tn);e.memoizedProps=e.pendingProps,n===null?ld(e):Ge=n,Gl.current=null}function ld(e){var n=e;do{var s=n.alternate;if(e=n.return,(n.flags&32768)===0){if(s=hh(s,n,Tn),s!==null){Ge=s;return}}else{if(s=mh(s,n),s!==null){s.flags&=32767,Ge=s;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Je=6,Ge=null;return}}if(n=n.sibling,n!==null){Ge=n;return}Ge=n=e}while(n!==null);Je===0&&(Je=5)}function ar(e,n,s){var o=$e,c=qn.transition;try{qn.transition=null,$e=1,Sh(e,n,s,o)}finally{qn.transition=c,$e=o}return null}function Sh(e,n,s,o){do Vr();while(Bt!==null);if((Te&6)!==0)throw Error(l(327));s=e.finishedWork;var c=e.finishedLanes;if(s===null)return null;if(e.finishedWork=null,e.finishedLanes=0,s===e.current)throw Error(l(177));e.callbackNode=null,e.callbackPriority=0;var u=s.lanes|s.childLanes;if(rp(e,u),e===tn&&(Ge=tn=null,an=0),(s.subtreeFlags&2064)===0&&(s.flags&2064)===0||Wi||(Wi=!0,dd(Xs,function(){return Vr(),null})),u=(s.flags&15990)!==0,(s.subtreeFlags&15990)!==0||u){u=qn.transition,qn.transition=null;var f=$e;$e=1;var v=Te;Te|=4,Gl.current=null,vh(e,s),Xu(s,e),Wp(sl),si=!!rl,sl=rl=null,e.current=s,yh(s),Qf(),Te=v,$e=f,qn.transition=u}else e.current=s;if(Wi&&(Wi=!1,Bt=e,Ui=c),u=e.pendingLanes,u===0&&(qt=null),Xf(s.stateNode),kn(e,Ve()),n!==null)for(o=e.onRecoverableError,s=0;s<n.length;s++)c=n[s],o(c.value,{componentStack:c.stack,digest:c.digest});if(Bi)throw Bi=!1,e=Jl,Jl=null,e;return(Ui&1)!==0&&e.tag!==0&&Vr(),u=e.pendingLanes,(u&1)!==0?e===Zl?Ds++:(Ds=0,Zl=e):Ds=0,Lt(),null}function Vr(){if(Bt!==null){var e=Ga(Ui),n=qn.transition,s=$e;try{if(qn.transition=null,$e=16>e?16:e,Bt===null)var o=!1;else{if(e=Bt,Bt=null,Ui=0,(Te&6)!==0)throw Error(l(331));var c=Te;for(Te|=4,te=e.current;te!==null;){var u=te,f=u.child;if((te.flags&16)!==0){var v=u.deletions;if(v!==null){for(var y=0;y<v.length;y++){var E=v[y];for(te=E;te!==null;){var q=te;switch(q.tag){case 0:case 11:case 15:Ms(8,q,u)}var U=q.child;if(U!==null)U.return=q,te=U;else for(;te!==null;){q=te;var z=q.sibling,ee=q.return;if(Vu(q),q===E){te=null;break}if(z!==null){z.return=ee,te=z;break}te=ee}}}var oe=u.alternate;if(oe!==null){var ae=oe.child;if(ae!==null){oe.child=null;do{var Ke=ae.sibling;ae.sibling=null,ae=Ke}while(ae!==null)}}te=u}}if((u.subtreeFlags&2064)!==0&&f!==null)f.return=u,te=f;else e:for(;te!==null;){if(u=te,(u.flags&2048)!==0)switch(u.tag){case 0:case 11:case 15:Ms(9,u,u.return)}var C=u.sibling;if(C!==null){C.return=u.return,te=C;break e}te=u.return}}var x=e.current;for(te=x;te!==null;){f=te;var _=f.child;if((f.subtreeFlags&2064)!==0&&_!==null)_.return=f,te=_;else e:for(f=x;te!==null;){if(v=te,(v.flags&2048)!==0)try{switch(v.tag){case 0:case 11:case 15:zi(9,v)}}catch(ce){Ue(v,v.return,ce)}if(v===f){te=null;break e}var V=v.sibling;if(V!==null){V.return=v.return,te=V;break e}te=v.return}}if(Te=c,Lt(),ot&&typeof ot.onPostCommitFiberRoot=="function")try{ot.onPostCommitFiberRoot(Js,e)}catch{}o=!0}return o}finally{$e=s,qn.transition=n}}return!1}function ad(e,n,s){n=Br(s,n),n=_u(e,n,1),e=zt(e,n,1),n=mn(),e!==null&&(os(e,1,n),kn(e,n))}function Ue(e,n,s){if(e.tag===3)ad(e,e,s);else for(;n!==null;){if(n.tag===3){ad(n,e,s);break}else if(n.tag===1){var o=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof o.componentDidCatch=="function"&&(qt===null||!qt.has(o))){e=Br(s,e),e=Iu(n,e,1),n=zt(n,e,1),e=mn(),n!==null&&(os(n,1,e),kn(n,e));break}}n=n.return}}function Ch(e,n,s){var o=e.pingCache;o!==null&&o.delete(n),n=mn(),e.pingedLanes|=e.suspendedLanes&s,tn===e&&(an&s)===s&&(Je===4||Je===3&&(an&130023424)===an&&500>Ve()-Xl?lr(e,0):Yl|=s),kn(e,n)}function cd(e,n){n===0&&((e.mode&1)===0?n=1:(n=ei,ei<<=1,(ei&130023424)===0&&(ei=4194304)));var s=mn();e=xt(e,n),e!==null&&(os(e,n,s),kn(e,s))}function Nh(e){var n=e.memoizedState,s=0;n!==null&&(s=n.retryLane),cd(e,s)}function _h(e,n){var s=0;switch(e.tag){case 13:var o=e.stateNode,c=e.memoizedState;c!==null&&(s=c.retryLane);break;case 19:o=e.stateNode;break;default:throw Error(l(314))}o!==null&&o.delete(n),cd(e,s)}var ud;ud=function(e,n,s){if(e!==null)if(e.memoizedProps!==n.pendingProps||vn.current)xn=!0;else{if((e.lanes&s)===0&&(n.flags&128)===0)return xn=!1,ph(e,n,s);xn=(e.flags&131072)!==0}else xn=!1,qe&&(n.flags&1048576)!==0&&Wc(n,ji,n.index);switch(n.lanes=0,n.tag){case 2:var o=n.type;Li(e,n),e=n.pendingProps;var c=$r(n,cn.current);Fr(n,s),c=bl(null,n,o,e,c,s);var u=El();return n.flags|=1,typeof c=="object"&&c!==null&&typeof c.render=="function"&&c.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,yn(o)?(u=!0,xi(n)):u=!1,n.memoizedState=c.state!==null&&c.state!==void 0?c.state:null,kl(n),c.updater=Ai,n.stateNode=c,c._reactInternals=n,Al(n,o,e,s),n=zl(null,n,o,!0,u,s)):(n.tag=0,qe&&u&&dl(n),hn(null,n,c,s),n=n.child),n;case 16:o=n.elementType;e:{switch(Li(e,n),e=n.pendingProps,c=o._init,o=c(o._payload),n.type=o,c=n.tag=bh(o),e=Jn(o,e),c){case 0:n=Ol(null,n,o,e,s);break e;case 1:n=Du(null,n,o,e,s);break e;case 11:n=Pu(null,n,o,e,s);break e;case 14:n=Tu(null,n,o,Jn(o.type,e),s);break e}throw Error(l(306,o,""))}return n;case 0:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:Jn(o,c),Ol(e,n,o,c,s);case 1:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:Jn(o,c),Du(e,n,o,c,s);case 3:e:{if(Lu(n),e===null)throw Error(l(387));o=n.pendingProps,u=n.memoizedState,c=u.element,Jc(e,n),bi(n,o,null,s);var f=n.memoizedState;if(o=f.element,u.isDehydrated)if(u={element:o,isDehydrated:!1,cache:f.cache,pendingSuspenseBoundaries:f.pendingSuspenseBoundaries,transitions:f.transitions},n.updateQueue.baseState=u,n.memoizedState=u,n.flags&256){c=Br(Error(l(423)),n),n=Ou(e,n,o,s,c);break e}else if(o!==c){c=Br(Error(l(424)),n),n=Ou(e,n,o,s,c);break e}else for(Pn=$t(n.stateNode.containerInfo.firstChild),Rn=n,qe=!0,Xn=null,s=Yc(n,null,o,s),n.child=s;s;)s.flags=s.flags&-3|4096,s=s.sibling;else{if(Lr(),o===c){n=kt(e,n,s);break e}hn(e,n,o,s)}n=n.child}return n;case 5:return nu(n),e===null&&hl(n),o=n.type,c=n.pendingProps,u=e!==null?e.memoizedProps:null,f=c.children,il(o,c)?f=null:u!==null&&il(o,u)&&(n.flags|=32),Au(e,n),hn(e,n,f,s),n.child;case 6:return e===null&&hl(n),null;case 13:return zu(e,n,s);case 4:return jl(n,n.stateNode.containerInfo),o=n.pendingProps,e===null?n.child=Or(n,null,o,s):hn(e,n,o,s),n.child;case 11:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:Jn(o,c),Pu(e,n,o,c,s);case 7:return hn(e,n,n.pendingProps,s),n.child;case 8:return hn(e,n,n.pendingProps.children,s),n.child;case 12:return hn(e,n,n.pendingProps.children,s),n.child;case 10:e:{if(o=n.type._context,c=n.pendingProps,u=n.memoizedProps,f=c.value,Le(Ni,o._currentValue),o._currentValue=f,u!==null)if(Yn(u.value,f)){if(u.children===c.children&&!vn.current){n=kt(e,n,s);break e}}else for(u=n.child,u!==null&&(u.return=n);u!==null;){var v=u.dependencies;if(v!==null){f=u.child;for(var y=v.firstContext;y!==null;){if(y.context===o){if(u.tag===1){y=wt(-1,s&-s),y.tag=2;var E=u.updateQueue;if(E!==null){E=E.shared;var q=E.pending;q===null?y.next=y:(y.next=q.next,q.next=y),E.pending=y}}u.lanes|=s,y=u.alternate,y!==null&&(y.lanes|=s),xl(u.return,s,n),v.lanes|=s;break}y=y.next}}else if(u.tag===10)f=u.type===n.type?null:u.child;else if(u.tag===18){if(f=u.return,f===null)throw Error(l(341));f.lanes|=s,v=f.alternate,v!==null&&(v.lanes|=s),xl(f,s,n),f=u.sibling}else f=u.child;if(f!==null)f.return=u;else for(f=u;f!==null;){if(f===n){f=null;break}if(u=f.sibling,u!==null){u.return=f.return,f=u;break}f=f.return}u=f}hn(e,n,c.children,s),n=n.child}return n;case 9:return c=n.type,o=n.pendingProps.children,Fr(n,s),c=zn(c),o=o(c),n.flags|=1,hn(e,n,o,s),n.child;case 14:return o=n.type,c=Jn(o,n.pendingProps),c=Jn(o.type,c),Tu(e,n,o,c,s);case 15:return Mu(e,n,n.type,n.pendingProps,s);case 17:return o=n.type,c=n.pendingProps,c=n.elementType===o?c:Jn(o,c),Li(e,n),n.tag=1,yn(o)?(e=!0,xi(n)):e=!1,Fr(n,s),Cu(n,o,c),Al(n,o,c,s),zl(null,n,o,!0,e,s);case 19:return qu(e,n,s);case 22:return $u(e,n,s)}throw Error(l(156,n.tag))};function dd(e,n){return Ua(e,n)}function Ih(e,n,s,o){this.tag=e,this.key=s,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=o,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Bn(e,n,s,o){return new Ih(e,n,s,o)}function ia(e){return e=e.prototype,!(!e||!e.isReactComponent)}function bh(e){if(typeof e=="function")return ia(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Re)return 11;if(e===G)return 14}return 2}function Ht(e,n){var s=e.alternate;return s===null?(s=Bn(e.tag,n,e.key,e.mode),s.elementType=e.elementType,s.type=e.type,s.stateNode=e.stateNode,s.alternate=e,e.alternate=s):(s.pendingProps=n,s.type=e.type,s.flags=0,s.subtreeFlags=0,s.deletions=null),s.flags=e.flags&14680064,s.childLanes=e.childLanes,s.lanes=e.lanes,s.child=e.child,s.memoizedProps=e.memoizedProps,s.memoizedState=e.memoizedState,s.updateQueue=e.updateQueue,n=e.dependencies,s.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},s.sibling=e.sibling,s.index=e.index,s.ref=e.ref,s}function Qi(e,n,s,o,c,u){var f=2;if(o=e,typeof e=="function")ia(e)&&(f=1);else if(typeof e=="string")f=5;else e:switch(e){case H:return cr(s.children,c,u,n);case fe:f=8,c|=8;break;case re:return e=Bn(12,s,n,c|2),e.elementType=re,e.lanes=u,e;case B:return e=Bn(13,s,n,c),e.elementType=B,e.lanes=u,e;case ve:return e=Bn(19,s,n,c),e.elementType=ve,e.lanes=u,e;case Y:return Gi(s,c,u,n);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Ce:f=10;break e;case _e:f=9;break e;case Re:f=11;break e;case G:f=14;break e;case de:f=16,o=null;break e}throw Error(l(130,e==null?e:typeof e,""))}return n=Bn(f,s,n,c),n.elementType=e,n.type=o,n.lanes=u,n}function cr(e,n,s,o){return e=Bn(7,e,o,n),e.lanes=s,e}function Gi(e,n,s,o){return e=Bn(22,e,o,n),e.elementType=Y,e.lanes=s,e.stateNode={isHidden:!1},e}function oa(e,n,s){return e=Bn(6,e,null,n),e.lanes=s,e}function la(e,n,s){return n=Bn(4,e.children!==null?e.children:[],e.key,n),n.lanes=s,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function Eh(e,n,s,o,c){this.tag=n,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=$o(0),this.expirationTimes=$o(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=$o(0),this.identifierPrefix=o,this.onRecoverableError=c,this.mutableSourceEagerHydrationData=null}function aa(e,n,s,o,c,u,f,v,y){return e=new Eh(e,n,s,v,y),n===1?(n=1,u===!0&&(n|=8)):n=0,u=Bn(3,null,null,n),e.current=u,u.stateNode=e,u.memoizedState={element:o,isDehydrated:s,cache:null,transitions:null,pendingSuspenseBoundaries:null},kl(u),e}function Rh(e,n,s){var o=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:b,key:o==null?null:""+o,children:e,containerInfo:n,implementation:s}}function fd(e){if(!e)return Dt;e=e._reactInternals;e:{if(Xt(e)!==e||e.tag!==1)throw Error(l(170));var n=e;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(yn(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(n!==null);throw Error(l(171))}if(e.tag===1){var s=e.type;if(yn(s))return Fc(e,s,n)}return n}function pd(e,n,s,o,c,u,f,v,y){return e=aa(s,o,!0,e,c,u,f,v,y),e.context=fd(null),s=e.current,o=mn(),c=Wt(s),u=wt(o,c),u.callback=n??null,zt(s,u,c),e.current.lanes=c,os(e,c,o),kn(e,o),e}function Yi(e,n,s,o){var c=n.current,u=mn(),f=Wt(c);return s=fd(s),n.context===null?n.context=s:n.pendingContext=s,n=wt(u,f),n.payload={element:e},o=o===void 0?null:o,o!==null&&(n.callback=o),e=zt(c,n,f),e!==null&&(nt(e,c,f,u),Ii(e,c,f)),f}function Xi(e){return e=e.current,e.child?(e.child.tag===5,e.child.stateNode):null}function hd(e,n){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var s=e.retryLane;e.retryLane=s!==0&&s<n?s:n}}function ca(e,n){hd(e,n),(e=e.alternate)&&hd(e,n)}function Ph(){return null}var md=typeof reportError=="function"?reportError:function(e){console.error(e)};function ua(e){this._internalRoot=e}Ji.prototype.render=ua.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw Error(l(409));Yi(e,n,null,null)},Ji.prototype.unmount=ua.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;or(function(){Yi(null,e,null,null)}),n[mt]=null}};function Ji(e){this._internalRoot=e}Ji.prototype.unstable_scheduleHydration=function(e){if(e){var n=Ja();e={blockedOn:null,target:e,priority:n};for(var s=0;s<Pt.length&&n!==0&&n<Pt[s].priority;s++);Pt.splice(s,0,e),s===0&&nc(e)}};function da(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Zi(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function gd(){}function Th(e,n,s,o,c){if(c){if(typeof o=="function"){var u=o;o=function(){var E=Xi(f);u.call(E)}}var f=pd(n,o,e,0,null,!1,!1,"",gd);return e._reactRootContainer=f,e[mt]=f.current,ws(e.nodeType===8?e.parentNode:e),or(),f}for(;c=e.lastChild;)e.removeChild(c);if(typeof o=="function"){var v=o;o=function(){var E=Xi(y);v.call(E)}}var y=aa(e,0,!1,null,null,!1,!1,"",gd);return e._reactRootContainer=y,e[mt]=y.current,ws(e.nodeType===8?e.parentNode:e),or(function(){Yi(n,y,s,o)}),y}function eo(e,n,s,o,c){var u=s._reactRootContainer;if(u){var f=u;if(typeof c=="function"){var v=c;c=function(){var y=Xi(f);v.call(y)}}Yi(n,f,e,c)}else f=Th(s,n,e,c,o);return Xi(f)}Ya=function(e){switch(e.tag){case 3:var n=e.stateNode;if(n.current.memoizedState.isDehydrated){var s=is(n.pendingLanes);s!==0&&(Ao(n,s|1),kn(n,Ve()),(Te&6)===0&&(Hr=Ve()+500,Lt()))}break;case 13:or(function(){var o=xt(e,1);if(o!==null){var c=mn();nt(o,e,1,c)}}),ca(e,1)}},Do=function(e){if(e.tag===13){var n=xt(e,134217728);if(n!==null){var s=mn();nt(n,e,134217728,s)}ca(e,134217728)}},Xa=function(e){if(e.tag===13){var n=Wt(e),s=xt(e,n);if(s!==null){var o=mn();nt(s,e,n,o)}ca(e,n)}},Ja=function(){return $e},Za=function(e,n){var s=$e;try{return $e=e,n()}finally{$e=s}},jr=function(e,n,s){switch(n){case"input":if(In(e,s),n=s.name,s.type==="radio"&&n!=null){for(s=e;s.parentNode;)s=s.parentNode;for(s=s.querySelectorAll("input[name="+JSON.stringify(""+n)+'][type="radio"]'),n=0;n<s.length;n++){var o=s[n];if(o!==e&&o.form===e.form){var c=vi(o);if(!c)throw Error(l(90));sn(o),In(o,c)}}}break;case"textarea":Yt(e,s);break;case"select":n=s.value,n!=null&&Kn(e,!!s.multiple,n,!1)}},j=ta,S=or;var Mh={usingClientEntryPoint:!1,Events:[Ss,Tr,vi,ss,Ks,ta]},Ls={findFiberByHostInstance:Jt,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},$h={bundleType:Ls.bundleType,version:Ls.version,rendererPackageName:Ls.rendererPackageName,rendererConfig:Ls.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Z.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Ba(e),e===null?null:e.stateNode},findFiberByHostInstance:Ls.findFiberByHostInstance||Ph,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var no=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!no.isDisabled&&no.supportsFiber)try{Js=no.inject($h),ot=no}catch{}}return jn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Mh,jn.createPortal=function(e,n){var s=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!da(n))throw Error(l(200));return Rh(e,n,null,s)},jn.createRoot=function(e,n){if(!da(e))throw Error(l(299));var s=!1,o="",c=md;return n!=null&&(n.unstable_strictMode===!0&&(s=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(c=n.onRecoverableError)),n=aa(e,1,!1,null,null,s,!1,o,c),e[mt]=n.current,ws(e.nodeType===8?e.parentNode:e),new ua(n)},jn.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var n=e._reactInternals;if(n===void 0)throw typeof e.render=="function"?Error(l(188)):(e=Object.keys(e).join(","),Error(l(268,e)));return e=Ba(n),e=e===null?null:e.stateNode,e},jn.flushSync=function(e){return or(e)},jn.hydrate=function(e,n,s){if(!Zi(n))throw Error(l(200));return eo(null,e,n,!0,s)},jn.hydrateRoot=function(e,n,s){if(!da(e))throw Error(l(405));var o=s!=null&&s.hydratedSources||null,c=!1,u="",f=md;if(s!=null&&(s.unstable_strictMode===!0&&(c=!0),s.identifierPrefix!==void 0&&(u=s.identifierPrefix),s.onRecoverableError!==void 0&&(f=s.onRecoverableError)),n=pd(n,null,e,1,s??null,c,!1,u,f),e[mt]=n.current,ws(e),o)for(e=0;e<o.length;e++)s=o[e],c=s._getVersion,c=c(s._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[s,c]:n.mutableSourceEagerHydrationData.push(s,c);return new Ji(n)},jn.render=function(e,n,s){if(!Zi(n))throw Error(l(200));return eo(null,e,n,!1,s)},jn.unmountComponentAtNode=function(e){if(!Zi(e))throw Error(l(40));return e._reactRootContainer?(or(function(){eo(null,null,e,!1,function(){e._reactRootContainer=null,e[mt]=null})}),!0):!1},jn.unstable_batchedUpdates=ta,jn.unstable_renderSubtreeIntoContainer=function(e,n,s,o){if(!Zi(s))throw Error(l(200));if(e==null||e._reactInternals===void 0)throw Error(l(38));return eo(e,n,s,!1,o)},jn.version="18.3.1-next-f1338f8080-20240426",jn}var Cd;function Hh(){if(Cd)return ha.exports;Cd=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}return t(),ha.exports=Uh(),ha.exports}var Nd;function Vh(){if(Nd)return to;Nd=1;var t=Hh();return to.createRoot=t.createRoot,to.hydrateRoot=t.hydrateRoot,to}var Kh=Vh();const Qh=gf(Kh),vf={boot:"loading",bootstrap:null,connection:"connecting",connectionAttempt:0,lastCursor:0,lastEventId:null,contextRevision:"",workspaceId:"",workspace:"",workspaces:[],sessions:[],workspaceSessions:{},archivedSessions:{status:"idle",items:[],nextCursor:null,ownerWorkspaceId:""},workspaceProjectSummaries:{},workspaceResourceEpochs:{},workspaceNextCursor:null,sessionNextCursor:null,activeSessionId:null,sessionSync:{},clientTelemetry:{sessionSwitches:0,snapshotCacheHits:0,snapshotLoads:0,snapshotFailures:0},sessionProjectionById:{},sessionRuntimeById:{},transcript:[],tools:[],edits:[],subtasks:[],research:[],permission:null,processing:!1,statusMessage:"正在连接本地 Web Host…",mode:{baseMode:"interactive",pendingBaseMode:null},effort:null,queue:{items:[],limit:16},goal:null,goalEvidence:[],goalActivity:[],diagnostics:null,settings:null,settingsMirror:{status:"idle",document:null,lastGood:null,stale:!1,error:null,generation:0},sessionSnapshot:null,composer:null,modelCatalog:null,plan:null,skills:[],mcpServers:[],toolDetails:[],skillNextCursor:null,mcpNextCursor:null,toolDetailNextCursor:null,loopStats:null,traces:[],pendingAction:null,notice:null,announcement:""},_d=Object.freeze({status:"idle",requestId:null});function jo(t){return t.activeSessionId?t.sessionSync[t.activeSessionId]??_d:_d}function gr(t){return!!(t.activeSessionId&&t.sessionSnapshot?.session.id===t.activeSessionId&&jo(t).status==="ready")}function Q({name:t,size:r=18,...l}){return i.jsx("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24",width:r,height:r,fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",...l,children:Gh[t]})}const Gh={activity:i.jsx("path",{d:"M3 12h4l2.2-6 4.2 12 2.2-6H21"}),add:i.jsx("path",{d:"M12 5v14M5 12h14"}),"arrow-up":i.jsx("path",{d:"m6 11 6-6 6 6M12 5v14"}),branch:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"6",cy:"5",r:"2"}),i.jsx("circle",{cx:"18",cy:"7",r:"2"}),i.jsx("circle",{cx:"6",cy:"19",r:"2"}),i.jsx("path",{d:"M6 7v10M8 12h4a6 6 0 0 0 6-3"})]}),check:i.jsx("path",{d:"m5 12 4 4L19 6"}),chevron:i.jsx("path",{d:"m9 7 5 5-5 5"}),close:i.jsx("path",{d:"m6 6 12 12M18 6 6 18"}),code:i.jsx("path",{d:"m8 9-4 3 4 3M16 9l4 3-4 3M14 5l-4 14"}),copy:i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"8",y:"8",width:"11",height:"11",rx:"2"}),i.jsx("path",{d:"M16 8V6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2"})]}),diagnostics:i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M4 19V9M10 19V5M16 19v-7M22 19V3"}),i.jsx("path",{d:"M2 19h21"})]}),edit:i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 20h9"}),i.jsx("path",{d:"M16.5 3.5a2.1 2.1 0 0 1 3 3L8 18l-4 1 1-4Z"})]}),goal:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"8"}),i.jsx("circle",{cx:"12",cy:"12",r:"3"}),i.jsx("path",{d:"m15 9 5-5M17 4h3v3"})]}),info:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M12 11v5M12 8h.01"})]}),keyboard:i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"2",y:"6",width:"20",height:"12",rx:"2"}),i.jsx("path",{d:"M6 10h.01M10 10h.01M14 10h.01M18 10h.01M6 14h.01M18 14h.01M9.5 14.5h5"})]}),menu:i.jsx("path",{d:"M4 7h16M4 12h16M4 17h16"}),monitor:i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2"}),i.jsx("path",{d:"M8 21h8M12 17v4"})]}),moon:i.jsx("path",{d:"M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z"}),more:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"5",cy:"12",r:"1",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"12",cy:"12",r:"1",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"19",cy:"12",r:"1",fill:"currentColor",stroke:"none"})]}),pause:i.jsx("path",{d:"M9 5v14M15 5v14"}),refresh:i.jsx("path",{d:"M20 7v5h-5M4 17v-5h5M6.1 9A7 7 0 0 1 18 6l2 6M17.9 15A7 7 0 0 1 6 18l-2-6"}),search:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"11",cy:"11",r:"7"}),i.jsx("path",{d:"m20 20-4-4"})]}),settings:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"3"}),i.jsx("path",{d:"M19.4 15a1.7 1.7 0 0 0 .3 1.9l.1.1-2.8 2.8-.1-.1a1.7 1.7 0 0 0-1.9-.3 1.7 1.7 0 0 0-1 1.6v.2h-4V21a1.7 1.7 0 0 0-1-1.6 1.7 1.7 0 0 0-1.9.3l-.1.1L4.2 17l.1-.1a1.7 1.7 0 0 0 .3-1.9A1.7 1.7 0 0 0 3 14H2.8v-4H3a1.7 1.7 0 0 0 1.6-1 1.7 1.7 0 0 0-.3-1.9L4.2 7 7 4.2l.1.1A1.7 1.7 0 0 0 9 4.6a1.7 1.7 0 0 0 1-1.6v-.2h4V3a1.7 1.7 0 0 0 1 1.6 1.7 1.7 0 0 0 1.9-.3l.1-.1L19.8 7l-.1.1a1.7 1.7 0 0 0-.3 1.9 1.7 1.7 0 0 0 1.6 1h.2v4H21a1.7 1.7 0 0 0-1.6 1Z"})]}),sidebar:i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),i.jsx("path",{d:"M9 4v16"})]}),spark:i.jsx("path",{d:"m12 3 1.5 5.5L19 10l-5.5 1.5L12 17l-1.5-5.5L5 10l5.5-1.5ZM19 16l.7 2.3L22 19l-2.3.7L19 22l-.7-2.3L16 19l2.3-.7Z"}),stop:i.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"}),sun:i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"4"}),i.jsx("path",{d:"M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"})]}),terminal:i.jsx("path",{d:"m5 7 4 4-4 4M11 16h8"}),trash:i.jsx(i.Fragment,{children:i.jsx("path",{d:"M4 7h16M9 7V4h6v3M7 7l1 13h8l1-13M10 11v5M14 11v5"})}),warning:i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 3 2.5 20h19Z"}),i.jsx("path",{d:"M12 9v4M12 17h.01"})]}),workspace:i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M3 7h7l2 2h9v10H3Z"}),i.jsx("path",{d:"M3 7V5h7l2 2"})]})};function Us({children:t,className:r=""}){return i.jsx("div",{className:`markdown ${r}`.trim(),children:yf(t)})}function yf(t){const r=t.replace(/\r\n?/g,`
10
+ `).split(`
11
+ `),l=[];let a=0;for(;a<r.length;){const d=r[a];if(!d.trim()){a+=1;continue}const p=d.match(/^\s*```([^`]*)$/);if(p){const P=[];for(a+=1;a<r.length&&!/^\s*```\s*$/.test(r[a]);)P.push(r[a]),a+=1;a<r.length&&(a+=1),l.push(i.jsx(nm,{language:p[1].trim(),content:P.join(`
12
+ `)},`code-${a}`));continue}const h=d.match(/^(#{1,6})\s+(.+)$/);if(h){const P=Math.min(6,h[1].length);l.push(em(P,Bs(h[2],`heading-${a}`),`heading-${a}`)),a+=1;continue}if(/^\s*>\s?/.test(d)){const P=[];for(;a<r.length&&/^\s*>\s?/.test(r[a]);)P.push(r[a].replace(/^\s*>\s?/,"")),a+=1;l.push(i.jsx("blockquote",{children:yf(P.join(`
13
+ `))},`quote-${a}`));continue}if(d.match(/^\s*(?:[-*+] |\d+[.)] )(.+)$/)){const P=/^\s*\d/.test(d),N=[],T=P?/^\s*\d+[.)]\s+(.+)$/:/^\s*[-*+]\s+(.+)$/;for(;a<r.length;){const W=r[a].match(T);if(!W)break;N.push(W[1]),a+=1}const M=N.map((W,D)=>i.jsx("li",{children:Bs(W,`list-${a}-${D}`)},`item-${a}-${D}`));l.push(P?i.jsx("ol",{children:M},`list-${a}`):i.jsx("ul",{children:M},`list-${a}`));continue}const k=ka(d);if(k&&k.length>=1&&a+1<r.length){const P=Xh(r[a+1]);if(P&&P.length===k.length){const N=[k];for(a+=2;a<r.length;){const T=ka(r[a]);if(!T||T.length!==k.length)break;N.push(T),a+=1}l.push(Jh(N,P,`table-${a}`));continue}}const I=[d.trim()];for(a+=1;a<r.length&&r[a].trim()&&!Yh(r[a]);)I.push(r[a].trim()),a+=1;l.push(i.jsx("p",{children:Bs(I.join(" "),`paragraph-${a}`)},`paragraph-${a}`))}return l}function Yh(t){return/^\s*```/.test(t)||/^(#{1,6})\s+/.test(t)||/^\s*>\s?/.test(t)||/^\s*(?:[-*+] |\d+[.)] )/.test(t)||ka(t)!==null}function ka(t){if(!t.includes("|"))return null;const r=t.split("|"),l=r[0].trim()==="",a=r[r.length-1].trim()==="",d=l&&a?r.slice(1,-1):r;return d.length===0?null:d.map(p=>p.trim())}function Xh(t){if(!t.includes("|")&&!/[-:]/.test(t))return null;let r=t.split("|").map(a=>a.trim());if(r.length>=2&&r[0]===""&&r[r.length-1]===""&&(r=r.slice(1,-1)),r.length<1)return null;const l=[];for(const a of r){if(a===""||!/^:?-+:?$/.test(a))return null;const d=a.startsWith(":"),p=a.endsWith(":");d&&p?l.push("center"):p?l.push("right"):l.push("left")}return l}function Jh(t,r,l){const[a,...d]=t,p=h=>h==="left"?void 0:{textAlign:h};return i.jsxs("table",{className:"markdown-table",children:[i.jsx("thead",{children:i.jsx("tr",{children:a.map((h,g)=>i.jsx("th",{style:p(r[g]),children:Bs(h,`${l}-th-${g}`)},`th-${g}`))})}),i.jsx("tbody",{children:d.map((h,g)=>i.jsx("tr",{children:h.map((k,I)=>i.jsx("td",{style:p(r[I]),children:Bs(k,`${l}-td-${g}-${I}`)},`td-${g}-${I}`))},`tr-${g}`))})]},l)}function Bs(t,r){const l=/(`[^`\n]+`|\*\*[^*\n]+\*\*|\[[^\]\n]+\]\([^\s)]+\))/g,a=[];let d=0,p,h=0;for(;p=l.exec(t);){p.index>d&&a.push(t.slice(d,p.index));const g=p[0],k=`${r}-${h++}`;if(g.startsWith("`"))a.push(i.jsx("code",{children:g.slice(1,-1)},k));else if(g.startsWith("**"))a.push(i.jsx("strong",{children:g.slice(2,-2)},k));else{const I=g.match(/^\[([^\]]+)\]\(([^)]+)\)$/);I&&Zh(I[2])?a.push(i.jsx("a",{href:I[2],target:"_blank",rel:"noopener noreferrer",referrerPolicy:"no-referrer",children:I[1]},k)):a.push(g)}d=p.index+g.length}return d<t.length&&a.push(t.slice(d)),a}function Zh(t){try{const r=new URL(t);return r.protocol==="https:"||r.protocol==="http:"||r.protocol==="mailto:"}catch{return!1}}function em(t,r,l){return t===1?i.jsx("h1",{children:r},l):t===2?i.jsx("h2",{children:r},l):t===3?i.jsx("h3",{children:r},l):t===4?i.jsx("h4",{children:r},l):t===5?i.jsx("h5",{children:r},l):i.jsx("h6",{children:r},l)}function nm({language:t,content:r}){const[l,a]=m.useState("idle"),d=async()=>{try{await navigator.clipboard.writeText(r),a("copied"),window.setTimeout(()=>a("idle"),1400)}catch{a("failed")}};return i.jsxs("figure",{className:"code-block",children:[i.jsxs("figcaption",{children:[i.jsx("span",{children:t||"text"}),i.jsxs("button",{type:"button",className:"icon-text-button",onClick:d,"aria-label":"复制代码",children:[i.jsx(Q,{name:l==="copied"?"check":"copy",size:15}),l==="copied"?"已复制":l==="failed"?"复制失败":"复制"]})]}),i.jsx("pre",{tabIndex:0,"aria-label":`${t||"文本"}代码块`,children:i.jsx("code",{children:r})})]})}function Qt(t){return t.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f]/g,"")}function Pa(t,r=8e3){const l=/api.?key|authorization|cookie|password|secret|token/i;let a;try{a=JSON.stringify(t,(p,h)=>p&&l.test(p)?"[REDACTED]":h,2)}catch{a=String(t)}const d=Qt(a);return d.length<=r?d:`${d.slice(0,r)}
14
+ …已截断`}const tm=.02,rm=.1;function Xr(t,r,l){const a=Number.isFinite(t)?Math.round(t):r;return Math.min(l,Math.max(r,a))}function sm(t,r,l){const a=l-r;if(a<=0)return 0;const d=(Xr(t,r,l)-r)/a;return Math.round(d*100)}function im(t){const{key:r,minWidth:l,maxWidth:a,defaultWidth:d,currentWidth:p,side:h}=t,g=N=>Xr(N,l,a);if(r==="Home")return g(l);if(r==="End")return g(a);if(r==="Enter"||r===" ")return g(d);if(r!=="ArrowLeft"&&r!=="ArrowRight")return null;const k=t.shiftKey?rm:tm,I=Math.max(1,Math.round((a-l)*k)),P=(r==="ArrowRight"?1:-1)*(h==="left"?1:-1);return g(p+P*I)}function xf({side:t,className:r,minWidth:l,maxWidth:a,defaultWidth:d,label:p,width:h,controls:g,onPreview:k,onCommit:I}){const P=m.useRef(Xr(h??d,l,a)),N=m.useRef(null),T=m.useRef(null),M=m.useRef(null),W=()=>{M.current!==null&&cancelAnimationFrame(M.current),M.current=null},D=()=>{N.current=null,T.current=null,W(),delete document.documentElement.dataset.panelResizing};m.useEffect(()=>D,[]),m.useEffect(()=>{h===void 0||N.current!==null||(P.current=Xr(h,l,a))},[h,l,a]);const O=re=>{P.current=re,T.current=re,M.current===null&&(M.current=requestAnimationFrame(()=>{M.current=null;const Ce=T.current;T.current=null,Ce!==null&&k(Ce)}))},ne=re=>{const _e=re.currentTarget.closest(".workbench-shell")?.getBoundingClientRect()??{left:0,right:window.innerWidth},Re=t==="left"?re.clientX-_e.left:_e.right-re.clientX;return Xr(Re,l,a)},F=re=>{re.button!==0||N.current!==null||(re.preventDefault(),N.current=re.pointerId,re.currentTarget.setPointerCapture(re.pointerId),document.documentElement.dataset.panelResizing=t,O(ne(re)))},we=re=>{N.current===re.pointerId&&O(ne(re))},Z=re=>{if(N.current!==re.pointerId)return;re.currentTarget.hasPointerCapture(re.pointerId)&&re.currentTarget.releasePointerCapture(re.pointerId);const Ce=T.current??P.current;D(),k(Ce),I(Ce)},ue=re=>{if(N.current!==re.pointerId)return;const Ce=T.current??P.current;D(),k(Ce),I(Ce)},b=re=>{P.current=re,k(re),I(re)},H=re=>{const Ce=im({key:re.key,shiftKey:re.shiftKey,minWidth:l,maxWidth:a,defaultWidth:d,currentWidth:P.current,side:t});Ce!==null&&(re.preventDefault(),b(Ce))},fe=sm(P.current,l,a);return i.jsx("div",{className:`panel-resize-handle panel-resize-handle-${t}${r?` ${r}`:""}`,role:"separator","aria-orientation":"vertical","aria-label":p,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":fe,"aria-valuetext":`${P.current} 像素`,"aria-controls":g,tabIndex:0,title:`${p};方向键调整,Shift 加速,Enter 恢复默认,双击亦可恢复`,onPointerDown:F,onPointerMove:we,onPointerUp:Z,onPointerCancel:Z,onLostPointerCapture:ue,onKeyDown:H,onDoubleClick:()=>b(Xr(d,l,a)),children:i.jsx("span",{})})}const om=["ArrowDown","ArrowUp","Home","End","Escape"];function lm({label:t,items:r,disabled:l=!1}){const[a,d]=m.useState(!1),p=m.useRef(null),h=m.useRef(null),g=m.useRef([]),k=m.useId(),I=()=>{d(!1),h.current?.focus()};m.useEffect(()=>{if(!a)return;const N=T=>{p.current?.contains(T.target)||d(!1)};return document.addEventListener("pointerdown",N),()=>document.removeEventListener("pointerdown",N)},[a]),m.useEffect(()=>{if(!a)return;const N=r.findIndex(T=>!T.disabled);g.current[N>=0?N:0]?.focus()},[a]);const P=N=>{if(!om.includes(N.key))return;if(N.preventDefault(),N.key==="Escape"){I();return}const T=r.map((D,O)=>({item:D,index:O})).filter(D=>!D.item.disabled);if(!T.length)return;const M=T.findIndex(D=>g.current[D.index]===document.activeElement);let W=0;if(N.key==="Home")W=0;else if(N.key==="End")W=T.length-1;else{const D=N.key==="ArrowDown"?1:-1;W=M<0?0:(M+D+T.length)%T.length}g.current[T[W].index]?.focus()};return i.jsxs("div",{className:"session-row-menu",ref:p,children:[i.jsx("button",{ref:h,type:"button",className:"icon-button session-row-menu-trigger","aria-label":t,"aria-haspopup":"menu","aria-expanded":a,disabled:l,onClick:()=>d(N=>!N),onKeyDown:N=>{if(N.key==="ArrowDown"||N.key==="Enter"||N.key===" "){if(a)return;N.preventDefault(),d(!0)}},children:i.jsx(Q,{name:"more",size:15})}),a?i.jsx("div",{className:"session-menu",role:"menu","aria-label":t,onKeyDown:P,children:r.map((N,T)=>i.jsxs("button",{ref:M=>{g.current[T]=M},type:"button",role:"menuitem",className:`session-menu-item${N.danger?" danger":""}`,tabIndex:-1,disabled:N.disabled,"aria-describedby":N.hint?`${k}-${N.id}`:void 0,onClick:()=>{d(!1),N.onSelect()},children:[N.label,N.hint?i.jsx("span",{id:`${k}-${N.id}`,className:"session-menu-hint",children:N.hint}):null]},N.id))}):null]})}const Ta=240,So=280,wf=480,Id=48,Ma=320,$a=420,kf=720,am=48,bd=560,jf="orion.web.workbench-layout.v2",cm="orion.web.work-panel.v1",ja=["agent","review","terminal","files","git"],hr=Object.freeze({schemaVersion:2,projectNavigation:Object.freeze({expanded:!0,widthPx:So}),workPanel:Object.freeze({expanded:!0,widthPx:$a,activePanel:"agent",agentPanel:"goal"})});function ro(t,r){const l=pm(t),a=Sf(r.projectNavigation.widthPx),d=Aa(r.workPanel.widthPx);if(l<=760)return Object.freeze({projectNavigation:Object.freeze({mode:"drawer",widthPx:0}),conversationWidthPx:l,workPanel:Object.freeze({mode:"drawer",widthPx:0})});if(l<=1180){const I=l-bd,N=r.projectNavigation.expanded&&I>=Ta?"dock":r.projectNavigation.expanded?"drawer":"rail",T=N==="dock"?Math.min(a,I):N==="rail"?Id:0;return Object.freeze({projectNavigation:Object.freeze({mode:N,widthPx:T}),conversationWidthPx:Math.max(0,l-T),workPanel:Object.freeze({mode:"drawer",widthPx:0})})}const p=r.projectNavigation.expanded?a:Id,h=l-p-bd,g=r.workPanel.expanded&&h>=Ma,k=g?Math.min(d,h):am;return Object.freeze({projectNavigation:Object.freeze({mode:r.projectNavigation.expanded?"dock":"rail",widthPx:p}),conversationWidthPx:Math.max(0,l-p-k),workPanel:Object.freeze({mode:g?"dock":"rail",widthPx:k})})}function Sf(t){const r=Number.isFinite(t)?Math.round(t):So;return Math.min(wf,Math.max(Ta,r))}function Aa(t){const r=Number.isFinite(t)?Math.round(t):$a;return Math.min(kf,Math.max(Ma,r))}function um(t,r=null){if(!t)return fm(r);try{const l=JSON.parse(t);if(!po(l)||l.schemaVersion!==2)return hr;const a=po(l.projectNavigation)?l.projectNavigation:{},d=po(l.workPanel)?l.workPanel:{};return Cf({schemaVersion:2,projectNavigation:{expanded:typeof a.expanded=="boolean"?a.expanded:!0,widthPx:Sf(Number(a.widthPx))},workPanel:{expanded:typeof d.expanded=="boolean"?d.expanded:!0,widthPx:Aa(Number(d.widthPx)),activePanel:Da(d.activePanel)?d.activePanel:"agent",agentPanel:_f(d.agentPanel)?d.agentPanel:"goal",order:hm(d.order)}})}catch{return hr}}function dm(){const t=Nf();if(!t)return hr;try{return um(t.localStorage.getItem(jf),t.localStorage.getItem(cm))}catch{return hr}}function Ed(t){const r=Nf();if(r)try{r.localStorage.setItem(jf,JSON.stringify(t))}catch{}}function fm(t){if(!t)return hr;try{const r=JSON.parse(t);return!po(r)||r.schemaVersion!==1?hr:Cf({schemaVersion:2,projectNavigation:{expanded:!0,widthPx:So},workPanel:{expanded:typeof r.expanded=="boolean"?r.expanded:!0,widthPx:Aa(Number(r.widthPx)),activePanel:Da(r.activePanel)?r.activePanel:"agent",agentPanel:_f(r.agentPanel)?r.agentPanel:"goal"}})}catch{return hr}}function Cf(t){return Object.freeze({schemaVersion:2,projectNavigation:Object.freeze({...t.projectNavigation}),workPanel:Object.freeze({...t.workPanel})})}function pm(t){return!Number.isFinite(t)||t<=0?1440:Math.max(320,Math.round(t))}function Nf(){return globalThis.window??null}function hm(t){if(!Array.isArray(t)||t.length!==ja.length)return;const r=new Set;for(const l of t){if(!Da(l)||r.has(l))return;r.add(l)}return Object.freeze([...t])}function Da(t){return["agent","review","terminal","files","git"].includes(String(t))}function _f(t){return["goal","activity","integrations","diagnostics"].includes(String(t))}function po(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}const ur=40;function mm({state:t,drawerOpen:r,dockVisible:l,collapsed:a,resizable:d,width:p,onCloseDrawer:h,onExpand:g,onCollapse:k,onOpenWorkspaceDialog:I,onOpenSettings:P,onLoadMoreWorkspaces:N,onCreateSession:T,onLoadWorkspaceSessions:M,onActivateContext:W,onSetPinned:D,onRemoveWorkspace:O,onRefreshSummary:ne,onRenameSession:F,onSessionTags:we,onArchiveSession:Z,onDeleteSession:ue,onRestoreSession:b,onWidthPreview:H,onWidthCommit:fe}){const[re,Ce]=m.useState(""),[_e,Re]=m.useState(0),[B,ve]=m.useState(new Set(t.workspaceId?[t.workspaceId]:[])),G=m.useDeferredValue(re.trim().toLocaleLowerCase()),de=m.useRef(null),Y=!!t.pendingAction,$=Y||t.processing;m.useEffect(()=>{r&&de.current?.focus()},[r]),m.useEffect(()=>{t.workspaceId&&ve(R=>new Set([...R,t.workspaceId]))},[t.workspaceId]),m.useEffect(()=>Re(0),[G]);const X=m.useMemo(()=>{const R=[...t.workspaces].sort(gm);return G?R.filter(le=>Pd(le,G)?!0:(t.workspaceSessions[le.id]?.items??[]).some(ge=>[ge.name,ge.taskSummary,ge.id].filter(ye=>!!ye).some(ye=>ye.toLocaleLowerCase().includes(G)))):R},[G,t.workspaceSessions,t.workspaces]);m.useEffect(()=>{const R=X.findIndex(le=>le.id===t.workspaceId);R<0||Re(le=>R<le||R>=le+ur?Math.floor(R/ur)*ur:le)},[X,t.workspaceId]);const K=X.slice(_e,_e+ur),w=!!(G&&(t.workspaceNextCursor||Object.values(t.workspaceSessions).some(R=>!!R.nextCursor))),A=R=>{const le=new Set(B);le.has(R.id)?le.delete(R.id):(le.add(R.id),t.workspaceSessions[R.id]?ne(R.id):M(R.id)),ve(le)};if(a&&!r){const R=t.workspaces.find(le=>le.id===t.workspaceId);return i.jsxs("aside",{id:"workspace-rail",className:"workspace-rail project-navigator project-navigator-collapsed","aria-label":"项目与会话",hidden:!l,children:[i.jsxs("div",{className:"project-rail-brand","aria-hidden":"true",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{})]}),i.jsx("button",{type:"button",className:"icon-button project-rail-action","aria-label":"展开项目导航",title:"展开项目导航(⌘/Ctrl+B)",onClick:g,children:i.jsx(Q,{name:"sidebar",size:17})}),i.jsx("button",{type:"button",className:"icon-button project-rail-action","aria-label":"新建会话",title:"新建会话",onClick:T,disabled:Y||!t.workspaceId,children:i.jsx(Q,{name:"add",size:18})}),i.jsx("button",{type:"button",className:"icon-button project-rail-action project-rail-workspace","aria-label":R?`打开项目 ${R.label}`:"打开项目导航",title:R?.label??"打开项目导航",onClick:g,children:i.jsx(Q,{name:"workspace",size:17})}),i.jsx("span",{className:"project-rail-spacer"}),i.jsx("button",{type:"button",className:"icon-button project-rail-action","aria-label":"打开设置",title:"设置",onClick:P,children:i.jsx(Q,{name:"settings",size:17})}),i.jsx("span",{className:`connection-dot project-rail-connection ${t.connection}`,"aria-label":va(t.connection),title:va(t.connection)})]})}return i.jsxs("aside",{id:"project-navigation",className:`workspace-rail project-navigator ${r?"drawer-open":""}`,"aria-label":"项目与会话",hidden:!l,children:[i.jsxs("div",{className:"brand-row",children:[i.jsxs("div",{className:"brand-mark","aria-hidden":"true",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{})]}),i.jsxs("div",{className:"brand-copy",children:[i.jsx("strong",{children:"ORION"}),i.jsx("span",{children:"CODE WORKBENCH"})]}),i.jsx("button",{ref:de,type:"button",className:"icon-button drawer-close","aria-label":"关闭项目导航",onClick:h,children:i.jsx(Q,{name:"close"})}),i.jsx("button",{type:"button",className:"icon-button project-navigation-collapse","aria-label":"折叠项目导航",title:"折叠项目导航(⌘/Ctrl+B)",onClick:k,children:i.jsx(Q,{name:"sidebar"})})]}),i.jsxs("div",{className:"project-toolbar",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"LOCAL PROJECTS"}),i.jsx("h2",{children:"项目"})]}),i.jsx("button",{type:"button",className:"icon-button","aria-label":"选择其他工作区",title:"打开其他项目",onClick:I,disabled:$,children:i.jsx(Q,{name:"add"})})]}),i.jsxs("label",{className:"project-search",children:[i.jsx("span",{className:"sr-only",children:"搜索项目和会话"}),i.jsx(Q,{name:"search",size:15}),i.jsx("input",{type:"search",value:re,onChange:R=>Ce(R.target.value),placeholder:"搜索项目和会话"}),re?i.jsx("button",{type:"button","aria-label":"清除搜索",onClick:()=>Ce(""),children:i.jsx(Q,{name:"close",size:13})}):null]}),w?i.jsx("p",{className:"project-search-scope",role:"status",children:"搜索仅覆盖已加载的项目和会话;仍有分页内容未加载。"}):null,i.jsxs("nav",{className:"project-tree","aria-label":"已知项目",children:[K.map((R,le)=>{const ge=_e+le,ye=X[ge-1],be=B.has(R.id)||!!G,ke=t.workspaceSessions[R.id],Pe=t.workspaceProjectSummaries[R.id],He=Pd(R,G)?ke?.items??[]:vm(ke?.items??[],G);return i.jsxs(m.Fragment,{children:[ge===0||ye?.pinnedOrder!==void 0&&R.pinnedOrder===void 0?i.jsx("h3",{className:"project-group-heading",role:"presentation",children:R.pinnedOrder===void 0?"RECENT":"PINNED"}):null,i.jsxs("section",{className:`project-node ${R.active?"active":""} ${R.available?"":"unavailable"}`,children:[i.jsxs("div",{className:"project-row",children:[i.jsxs("button",{id:`project-${R.id}`,type:"button",className:"project-toggle","aria-expanded":be,"aria-controls":`project-${R.id}-sessions`,"aria-current":R.active?"page":void 0,onClick:()=>A(R),onKeyDown:Se=>{if(Se.key==="ArrowRight"){Se.preventDefault(),be?Se.currentTarget.closest(".project-node")?.querySelector(".project-session-main")?.focus():A(R);return}if(Se.key==="ArrowLeft"&&be){Se.preventDefault(),A(R);return}Rd(Se)},children:[i.jsx(Q,{name:"chevron",size:13}),i.jsx("span",{className:"workspace-icon",children:i.jsx(Q,{name:"workspace",size:15})}),i.jsxs("span",{className:"project-copy",children:[i.jsx("strong",{children:R.label}),i.jsx("span",{title:R.path,children:Pe?`${Pe.detached?Pe.head||"detached":Pe.branch||"Git"} · ${Pe.dirtyCount?`M${Pe.dirtyCount}`:"clean"}`:ym(R.path)})]})]}),i.jsx("button",{type:"button",className:"icon-button project-pin","aria-label":`${R.pinnedOrder===void 0?"置顶":"取消置顶"}项目 ${R.label}`,"aria-pressed":R.pinnedOrder!==void 0,onClick:()=>D(R.id,R.pinnedOrder===void 0),disabled:Y,children:i.jsx("span",{"aria-hidden":"true",children:R.pinnedOrder===void 0?"○":"●"})}),!R.available&&!R.active?i.jsx("button",{type:"button",className:"icon-button project-remove","aria-label":`移除不可用项目 ${R.label}`,onClick:()=>O(R.id),disabled:Y,children:i.jsx(Q,{name:"close",size:13})}):i.jsx("button",{type:"button",className:"icon-button project-add-session","aria-label":`在 ${R.label} 新建会话`,disabled:Y||!R.available||!R.active,onClick:T,title:R.active?"新建会话":"先激活项目后新建会话",children:i.jsx(Q,{name:"add",size:14})})]}),be?i.jsxs(m.Fragment,{children:[i.jsxs("div",{id:`project-${R.id}-sessions`,className:"project-sessions",role:"list","aria-label":`${R.label} 的会话`,children:[ke?.status==="loading"&&!ke.items.length?i.jsx("p",{className:"project-loading",role:"listitem",children:"正在加载会话…"}):null,ke?.status==="error"?i.jsx("div",{role:"listitem",children:i.jsx("button",{type:"button",className:"project-load-error",onClick:()=>M(R.id),children:"加载失败,重试"})}):null,He.map(Se=>{const sn=R.active&&Se.id===t.activeSessionId,Ye=t.sessionRuntimeById[Se.id],pn=wm(Ye),Vn=!R.active&&$,Mn=jm(Ye?.phase),In=Se.tags??[];return i.jsxs("div",{className:`project-session-row ${sn?"active":""}`,role:"listitem",children:[i.jsxs("button",{type:"button",className:"project-session-main","aria-current":sn?"page":void 0,"aria-disabled":sn||Vn||!R.available,onClick:()=>{sn||W(R.id,Se.id)},disabled:Vn||!R.available,onKeyDown:gn=>{if(gn.key==="ArrowLeft"){gn.preventDefault(),document.getElementById(`project-${R.id}`)?.focus();return}Rd(gn)},children:[i.jsx("span",{className:`session-state ${pn.tone}`,"aria-hidden":"true"}),i.jsxs("span",{children:[i.jsx("strong",{children:mr(Se)}),i.jsxs("small",{children:[Td(Se.updatedAt)," · ",Se.messageCount," 条"]}),In.length>0?i.jsxs("small",{className:"project-session-tags","aria-label":"会话标签",children:[In.slice(0,3).map(gn=>i.jsx("span",{className:"session-tag-badge",children:gn},gn)),In.length>3?i.jsxs("span",{className:"session-tag-more",children:["+",In.length-3]}):null]}):null,pn.label?i.jsx("small",{className:"project-session-status",children:pn.label}):null]})]}),R.active?i.jsx(lm,{label:`会话 ${mr(Se)} 操作`,disabled:Y,items:[{id:"rename",label:"重命名…",onSelect:()=>F(Se)},{id:"tags",label:"管理标签…",onSelect:()=>we(Se)},{id:"archive",label:"归档",disabled:Mn,hint:Mn?"会话运行中":void 0,onSelect:()=>Z(Se)},{id:"delete",label:"删除…",danger:!0,disabled:Mn,hint:Mn?"会话运行中":void 0,onSelect:()=>ue(Se)}]}):null]},Se.id)}),ke?.status==="ready"&&!He.length?i.jsx("div",{role:"listitem",children:i.jsx("button",{type:"button",className:"project-empty-session",disabled:$||!R.available,onClick:()=>W(R.id,null),children:G?"没有匹配会话":"打开项目"})}):null,ke?.nextCursor?i.jsx("div",{role:"listitem",children:i.jsx("button",{type:"button",className:"text-button project-load-more",onClick:()=>M(R.id,!0),children:"加载更多会话"})}):null]}),R.active&&(t.archivedSessions.items.length>0||t.archivedSessions.status==="loading")?i.jsxs("details",{className:"archived-section",children:[i.jsxs("summary",{children:["已归档(",t.archivedSessions.items.length,t.archivedSessions.status==="loading"?"…":"",")"]}),i.jsx("div",{className:"archived-list",role:"list","aria-label":"已归档会话",children:t.archivedSessions.items.map(Se=>i.jsxs("div",{className:"archived-row",role:"listitem",children:[i.jsxs("span",{className:"archived-copy",children:[i.jsx("strong",{children:mr(Se)}),i.jsx("small",{children:Td(Se.updatedAt)})]}),i.jsx("button",{type:"button",className:"text-button",disabled:Y,onClick:()=>b(Se),children:"还原"}),i.jsx("button",{type:"button",className:"text-button archived-delete",disabled:Y,onClick:()=>ue(Se),children:"删除"})]},Se.id))})]}):null]}):null]})]},R.id)}),X.length?null:i.jsxs("div",{className:"empty-rail",children:[i.jsx(Q,{name:"search"}),i.jsx("p",{children:"没有匹配的项目或会话"})]}),_e>0?i.jsx("button",{type:"button",className:"text-button project-window-more",onClick:()=>Re(R=>Math.max(0,R-ur)),children:"上一批项目"}):null,_e+ur<X.length?i.jsx("button",{type:"button",className:"text-button project-window-more",onClick:()=>Re(R=>R+ur),children:"下一批项目"}):t.workspaceNextCursor?i.jsx("button",{type:"button",className:"text-button project-window-more",onClick:N,children:"加载更多项目"}):null]}),i.jsxs("footer",{className:"rail-footer",children:[i.jsx("span",{className:`connection-dot ${t.connection}`,"aria-hidden":"true"}),i.jsx("span",{title:xm(t.connection),children:va(t.connection)}),i.jsx("button",{type:"button",className:"icon-button rail-settings","aria-label":"打开设置",onClick:P,children:i.jsx(Q,{name:"settings",size:14})}),t.bootstrap?.productVersion?i.jsxs("span",{className:"version",children:["v",t.bootstrap.productVersion]}):null]}),d?i.jsx(xf,{side:"left",minWidth:Ta,maxWidth:wf,defaultWidth:So,label:"拖动或按方向键调整项目导航宽度",width:p,controls:"workspace-rail",onPreview:H,onCommit:fe}):null]})}function Rd(t){if(!["ArrowDown","ArrowUp","Home","End"].includes(t.key))return;const r=t.currentTarget.closest(".project-tree");if(!r)return;const l=Array.from(r.querySelectorAll(".project-toggle:not(:disabled), .project-session-main:not(:disabled)")).filter(p=>p.getClientRects().length>0),a=l.indexOf(t.currentTarget);if(a<0||l.length===0)return;const d=t.key==="Home"?0:t.key==="End"?l.length-1:Math.max(0,Math.min(l.length-1,a+(t.key==="ArrowDown"?1:-1)));t.preventDefault(),l[d]?.focus()}function gm(t,r){return t.pinnedOrder!==void 0||r.pinnedOrder!==void 0?t.pinnedOrder===void 0?1:r.pinnedOrder===void 0?-1:t.pinnedOrder-r.pinnedOrder:Date.parse(r.lastActivatedAt)-Date.parse(t.lastActivatedAt)}function Pd(t,r){return!!(r&&(t.label.toLocaleLowerCase().includes(r)||t.path.toLocaleLowerCase().includes(r)))}function vm(t,r){return r?t.filter(l=>[l.name,l.taskSummary,l.id,l.model].filter(a=>!!a).some(a=>a.toLocaleLowerCase().includes(r))):t}function mr(t){return t.name||t.taskSummary||`会话 ${t.id.slice(0,8)}`}function If(t){const r=t.replace(/[\\/]+$/,"");return r.split(/[\\/]/).filter(Boolean).at(-1)??r}function ym(t){return t.length<=31?t:`…${t.slice(-30)}`}function Td(t){const r=Date.parse(t);if(!Number.isFinite(r))return"未知";const l=Math.max(0,Math.floor((Date.now()-r)/6e4));if(l<1)return"刚刚";if(l<60)return`${l} 分钟前`;const a=Math.floor(l/60);if(a<24)return`${a} 小时前`;const d=Math.floor(a/24);return d<30?`${d} 天前`:new Date(r).toLocaleDateString("zh-CN")}function va(t){return t==="live"?"已连接":t==="offline"?"离线":t==="replay-required"?"事件流需恢复":t==="closed"?"已关闭":t==="connecting"?"正在连接…":"正在重连…"}function xm(t){return t==="live"?"本地 Web Host 已连接":t==="offline"?"浏览器离线":t==="replay-required"?"Web Host 事件流需要恢复":t==="closed"?"本地 Web Host 已关闭":t==="connecting"?"正在连接本地 Web Host":"正在重连本地 Web Host"}function wm(t){return!t||t.phase==="cold"?{label:"",tone:""}:t.pendingApprovalCount>0||t.phase==="waiting_approval"?{label:"等待审批",tone:"approval"}:t.phase==="running"||t.phase==="starting"?{label:t.phase==="starting"?"正在启动":"运行中",tone:"running"}:t.phase==="queued"?{label:t.queuePosition?`排队 ${t.queuePosition}`:"排队中",tone:"queued"}:t.phase==="failed"?{label:"失败",tone:"failed"}:t.phase==="interrupted"?{label:"已中断",tone:"failed"}:t.phase==="stopping"?{label:"正在停止",tone:"running"}:{label:"已就绪",tone:"ready"}}const km=new Set(["starting","queued","running","waiting_approval","stopping"]);function jm(t){return t?km.has(t):!1}const Sm=Object.freeze({activating:"running",closed:"danger",completed:"success",connected:"success",done:"success",draining:"warning",error:"danger",failed:"danger",live:"running",offline:"danger",passed:"success",pending:"running",queued:"running",ready:"success",rejected:"danger",replay:"warning","replay-required":"warning",running:"running",skipped:"warning",streaming:"running",success:"success",timedout:"warning",warning:"warning"}),Md=Object.freeze({danger:"失败",idle:"空闲",running:"进行中",success:"已完成",warning:"部分完成"});function Cm(t){return Sm[t.trim().toLowerCase()]??"idle"}function Nm(t){return Md[t]??Md.idle}function La({state:t,className:r="",label:l,describe:a=!0}){const d=Cm(t);return i.jsxs(i.Fragment,{children:[i.jsx("span",{className:`state-dot state-${t}${r?` ${r}`:""}`,"data-tone":d,"aria-hidden":"true"}),a?i.jsx("span",{className:"sr-only",children:l??Nm(d)}):null]})}const es="orion.web.composer-drafts.v1",bf=20,Sa=256*1024,_m=5*1024*1024;function Im(t,r){return Co().entries.find(l=>l.workspaceId===t&&l.sessionId===r)??null}function bm(t){const r=No();if(!r)return;const l=Object.freeze({...t,references:[...t.references],updatedAt:Date.now()});if(Ca(l)>Sa)throw new Error(`Composer draft exceeds ${Sa} bytes.`);const a=Co().entries.filter(p=>!(p.workspaceId===t.workspaceId&&p.sessionId===t.sessionId)),d=[l,...a].slice(0,bf);for(;d.length>0&&Ca({version:1,entries:d})>_m;)d.pop();r.setItem(es,JSON.stringify({version:1,entries:d}))}function $d(t,r){const l=No();if(!l)return;const a=Co().entries.filter(d=>!(d.workspaceId===t&&d.sessionId===r));a.length===0?l.removeItem(es):l.setItem(es,JSON.stringify({version:1,entries:a}))}function Em(t){const r=No();if(!r)return;const l=Co().entries.filter(a=>a.workspaceId!==t);l.length===0?r.removeItem(es):r.setItem(es,JSON.stringify({version:1,entries:l}))}function Co(){const t=No();if(!t)return{version:1,entries:[]};try{const r=JSON.parse(t.getItem(es)??"");return r.version!==1||!Array.isArray(r.entries)?{version:1,entries:[]}:{version:1,entries:r.entries.filter(Rm).slice(0,bf)}}catch{return{version:1,entries:[]}}}function Rm(t){if(!t||typeof t!="object")return!1;const r=t;return typeof r.workspaceId=="string"&&typeof r.sessionId=="string"&&typeof r.text=="string"&&Array.isArray(r.references)&&typeof r.updatedAt=="number"&&Number.isFinite(r.updatedAt)&&Ca(r)<=Sa}function No(){try{return typeof window>"u"?null:window.sessionStorage}catch{return null}}function Ca(t){return new TextEncoder().encode(JSON.stringify(t)).byteLength}const Ef=/^hmac-sha256:[0-9a-f]{64}$/,Pm=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,Tm=/^(?:api[-_]?key|authorization|cookie|password|secret|access[-_]?token|refresh[-_]?token|auth[-_]?token|credential[-_]?value|headers?|env(?:ironment)?[-_]?name)$/i,Mm=["ready","invalid","read-only","unavailable"],$m=["internal","model","global","project","session"],Am=["global","project","session"],Dm=["live","next-logical-request","new-session","restart"],Lm=["runtime_busy","read_only","invalid_document"],Om=["system","light","dark"],zm=["system","reduced"],Fm=["classic","orion-blocksmith"],Rf=["auto","none","minimal","low","medium","high","xhigh","max"],qm=["ask","allow","deny"],Bm=["appearance.style","appearance.theme","appearance.motion","defaults.model","defaults.effort","permissions.toolConfirmation"];function Na(t){go(t);const r=Un(t,"Settings document");if(Hn(r,["schemaVersion","revision","state","writable","hasDocument","workspace","sections","models","credentials","currentSession","diagnostic"]),r.schemaVersion!==1&&r.schemaVersion!==2)throw new Error("Settings schemaVersion is not supported.");const l=r.schemaVersion,a=_n(r.revision,"Settings revision");if(!Ef.test(a))throw new Error("Settings revision is invalid.");const d=st(r.state,"Settings state",Mm),p=Un(r.sections,"Settings sections");Hn(p,["appearance","defaults","permissions"]);const h=Un(p.appearance,"Appearance settings");Hn(h,l===1?["theme","motion"]:["style","theme","motion"]);const g=Un(p.defaults,"Default settings");Hn(g,["model","effort"]);const k=Un(p.permissions,"Permission settings");Hn(k,["toolConfirmation"]);const I=_a(r.models,"Settings models").map(Hm),P=_a(r.credentials,"Credential status").map(Vm),N=r.currentSession===void 0?void 0:Km(r.currentSession),T=r.diagnostic===void 0?void 0:Qm(r.diagnostic);return{schemaVersion:2,revision:a,state:d,writable:Jr(r.writable,"Settings writable"),hasDocument:Jr(r.hasDocument,"Settings document availability"),workspace:_n(r.workspace,"Settings workspace"),sections:{appearance:{style:l===1?Jm(d,Jr(r.writable,"Settings writable")):Kr(h.style,"Visual style",Xm),theme:Kr(h.theme,"Theme",Ym),motion:Kr(h.motion,"Motion",Zm)},defaults:{model:Kr(g.model,"Default model",tg),effort:Kr(g.effort,"Default effort",eg)},permissions:{toolConfirmation:Kr(k.toolConfirmation,"Tool confirmation",ng)}},models:I,credentials:P,...N?{currentSession:N}:{},...T?{diagnostic:T}:{}}}function Wm(t){go(t);const r=Un(t,"Settings mutation result");Hn(r,["requestId","revision","appliedKeys","settings"]);const l=_n(r.requestId,"Settings requestId");if(!Pm.test(l))throw new Error("Settings requestId is invalid.");const a=Na(r.settings),d=_n(r.revision,"Settings mutation revision");if(d!==a.revision)throw new Error("Settings mutation revisions do not match.");const p=_a(r.appliedKeys,"Applied setting keys").map((h,g)=>st(h,`Applied setting key ${g+1}`,Bm));if(new Set(p).size!==p.length)throw new Error("Settings mutation contains duplicate applied keys.");return{requestId:l,revision:d,appliedKeys:p,settings:a}}function Um(t){const r=Un(t.payload,"Settings invalidation payload");Hn(r,["revision","reason","state"]);const l=_n(r.revision,"Settings invalidation revision");if(!Ef.test(l))throw new Error("Settings invalidation revision is invalid.");return{apiVersion:1,eventId:_n(t.eventId,"Settings invalidation eventId"),cursor:Gm(t.cursor,"Settings invalidation cursor"),sessionId:null,threadId:null,durable:!1,timestamp:_n(t.timestamp,"Settings invalidation timestamp"),type:"settings_invalidated",payload:{revision:l,reason:st(r.reason,"Settings invalidation reason",["local-write","external-edit","workspace-change"]),state:st(r.state,"Settings invalidation state",["ready","invalid"])}}}function Kr(t,r,l){const a=Un(t,`${r} field`);if(Hn(a,["effectiveValue","explicitValue","inheritedValue","source","scope","applies","overridden","writable","blockedReason"]),!l(a.effectiveValue))throw new Error(`${r} effective value is invalid.`);if(a.explicitValue!==void 0&&!l(a.explicitValue))throw new Error(`${r} explicit value is invalid.`);if(a.inheritedValue!==void 0&&!l(a.inheritedValue))throw new Error(`${r} inherited value is invalid.`);const d=a.explicitValue,p=a.inheritedValue;return{effectiveValue:a.effectiveValue,...d===void 0?{}:{explicitValue:d},...p===void 0?{}:{inheritedValue:p},source:st(a.source,`${r} source`,$m),scope:st(a.scope,`${r} scope`,Am),applies:st(a.applies,`${r} application timing`,Dm),overridden:Jr(a.overridden,`${r} override state`),writable:Jr(a.writable,`${r} writable state`),...a.blockedReason===void 0?{}:{blockedReason:st(a.blockedReason,`${r} blocked reason`,Lm)}}}function Hm(t,r){const l=Un(t,`Model ${r+1}`);return Hn(l,["id","label","provider"]),{id:_n(l.id,`Model ${r+1} id`),label:_n(l.label,`Model ${r+1} label`),...l.provider===void 0?{}:{provider:_n(l.provider,`Model ${r+1} provider`)}}}function Vm(t,r){const l=Un(t,`Credential ${r+1}`);if(Hn(l,["providerId","state","source","writable"]),l.writable!==!1)throw new Error("Browser credential status must be read-only.");return{providerId:_n(l.providerId,`Credential ${r+1} provider`),state:st(l.state,`Credential ${r+1} state`,["ready","missing","unavailable"]),source:st(l.source,`Credential ${r+1} source`,["environment","legacy","none"]),writable:!1}}function Km(t){const r=Un(t,"Current session settings");return Hn(r,["model","effort","overridesProjectEffort"]),{model:_n(r.model,"Current session model"),effort:st(r.effort,"Current session effort",Rf),overridesProjectEffort:Jr(r.overridesProjectEffort,"Current session effort override state")}}function Qm(t){const r=Un(t,"Settings diagnostic");return Hn(r,["code","message"]),{code:_n(r.code,"Settings diagnostic code"),message:_n(r.message,"Settings diagnostic message")}}function go(t,r=new Set){if(!(!t||typeof t!="object")){if(r.has(t))throw new Error("Settings response contains a cycle.");r.add(t);try{if(Array.isArray(t)){for(const l of t)go(l,r);return}for(const[l,a]of Object.entries(t)){if(Tm.test(l))throw new Error("Settings response contains a forbidden secret-bearing field.");go(a,r)}}finally{r.delete(t)}}}function Un(t,r){if(!t||typeof t!="object"||Array.isArray(t))throw new Error(`${r} must be an object.`);return t}function _a(t,r){if(!Array.isArray(t))throw new Error(`${r} must be an array.`);return t}function _n(t,r){if(typeof t!="string"||!t.trim())throw new Error(`${r} must be text.`);return t}function Jr(t,r){if(typeof t!="boolean")throw new Error(`${r} must be boolean.`);return t}function Gm(t,r){if(!Number.isSafeInteger(t)||t<0)throw new Error(`${r} must be a non-negative safe integer.`);return t}function st(t,r,l){if(typeof t!="string"||!l.includes(t))throw new Error(`${r} is invalid.`);return t}function Hn(t,r){const l=new Set(r),a=Object.keys(t).find(d=>!l.has(d));if(a)throw new Error(`Settings response contains an unknown field: ${a}.`)}function Ym(t){return typeof t=="string"&&Om.includes(t)}function Xm(t){return typeof t=="string"&&Fm.includes(t)}function Jm(t,r){const l=t==="invalid"?"invalid_document":t==="ready"&&r?void 0:"read_only";return{effectiveValue:"orion-blocksmith",inheritedValue:"orion-blocksmith",source:"internal",scope:"global",applies:"live",overridden:!1,writable:t==="ready"&&r,...l?{blockedReason:l}:{}}}function Zm(t){return typeof t=="string"&&zm.includes(t)}function eg(t){return typeof t=="string"&&Rf.includes(t)}function ng(t){return typeof t=="string"&&qm.includes(t)}function tg(t){return typeof t=="string"&&!!t.trim()}const so="/api/v1",rg="x-orion-web-nonce",Ia=100,sg=50,dt=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;class Ne extends Error{constructor(l,a,d,p){super(l);Wn(this,"status");Wn(this,"code");Wn(this,"type");this.status=a,this.code=d,this.type=p,this.name="WebApiError"}}class ig{constructor(){Wn(this,"nonce","")}async bootstrap(){const r=await this.query("/bootstrap");if(!Ct(r)||r.apiVersion!==1||typeof r.nonce!="string")throw new Ne("Web Host 返回了不兼容的启动协议。",502);return this.nonce=r.nonce,{...r,settings:Na(r.settings)}}async listWorkspaces(r,l){const a=await this.collectionPage(Sn("/workspaces",r),l),d=a.items.find(p=>p.active);return{activeId:d?.id??"",activePath:d?.path??"",workspaces:a.items,nextCursor:a.nextCursor}}async listWorkspaceSessions(r,l,a){const d=await this.collectionPage(Sn(`/workspaces/${encodeURIComponent(r)}/sessions`,l),a);return{sessions:d.items,nextCursor:d.nextCursor}}workspaceProjectSummary(r,l){return this.query(Sn(`/workspaces/${encodeURIComponent(r)}/summary`,l))}async listSessions(r,l){const a=await this.collectionPage(Sn("/sessions",r),l);return{sessions:a.items,nextCursor:a.nextCursor}}diagnostics(r){return this.query(Sn("/diagnostics",r))}async settings(){return Na(await this.query("/settings"))}async sessionSnapshot(r,l,a){const d=`/sessions/${encodeURIComponent(r)}/snapshot`;return this.query(ya(Sn(d,l),a??null,!0,sg))}composerState(r,l){return this.query(Sn(`/sessions/${encodeURIComponent(r)}/composer-state`,l))}modelCatalog(r,l,a){return this.query(ya(Sn(`/sessions/${encodeURIComponent(r)}/model-catalog`,l),a??null,!1,Ia))}composerAction(r,l){return this.mutate(`/sessions/${encodeURIComponent(r)}/composer-actions`,"POST",{...l,requestId:Qe()})}async skills(r,l){const a=await this.collectionPage(Sn("/skills",r),l);return{skills:a.items,nextCursor:a.nextCursor}}async mcp(r,l){const a=await this.collectionPage(Sn("/mcp",r),l);return{servers:a.items,nextCursor:a.nextCursor}}async toolDetails(r,l){const a=await this.collectionPage(Sn("/tool-details",r),l);return{details:a.items,nextCursor:a.nextCursor}}readToolDetail(r,l,a=0,d=64*1024){const p=new URLSearchParams({offsetBytes:String(a),limitBytes:String(d)});return fr(p,l),this.query(`/tool-details/${encodeURIComponent(r)}?${p.toString()}`)}listFiles(r,l,a){const d=new URLSearchParams({pageSize:"100"});return fr(d,r),l&&d.set("parentId",l),a&&d.set("cursor",a),this.query(`/files?${d.toString()}`)}readFileContent(r,l,a){const d=new URLSearchParams({limitBytes:String(65536)});return fr(d,l),a&&d.set("cursor",a),this.query(`/files/${encodeURIComponent(r)}/content?${d.toString()}`)}gitStatus(r,l){const a=new URLSearchParams({pageSize:"200"});return fr(a,r),l&&a.set("cursor",l),this.query(`/git/status?${a.toString()}`)}gitLog(r,l){const a=new URLSearchParams({pageSize:"30"});return fr(a,r),l&&a.set("cursor",l),this.query(`/git/log?${a.toString()}`)}gitDiff(r,l,a){const d=new URLSearchParams({lineLimit:"240",byteLimit:String(262144)});return fr(d,l),a&&d.set("cursor",a),this.query(`/git/diff/${encodeURIComponent(r)}?${d.toString()}`)}review(r){return this.query(Sn("/review",r))}async terminals(r,l){const a=await this.collectionPage(Sn("/terminals",r),l);return{terminals:a.items,nextCursor:a.nextCursor}}createTerminal(r){return this.mutate("/terminals","POST",{...r,requestId:Qe()},{"X-Orion-User-Gesture":"terminal-create-v1"})}terminalAttachTicket(r,l){return this.mutate(`/terminals/${encodeURIComponent(r)}/attach-ticket`,"POST",{...l,requestId:Qe()})}closeTerminal(r,l){return this.mutate(`/terminals/${encodeURIComponent(r)}`,"DELETE",{...l,requestId:Qe()})}terminalSocket(r){const l=location.protocol==="https:"?"wss:":"ws:";return new WebSocket(`${l}//${location.host}${so}/terminals/${encodeURIComponent(r)}/stream`,"orion-terminal-v1")}activateContext(r){return this.mutate("/context/activate","POST",{...r,requestId:Qe()})}async setWorkspacePinned(r,l,a){return(await this.mutate(`/workspaces/${encodeURIComponent(r)}/pin`,"POST",{requestId:Qe(),pinned:l,...a})).workspace}removeWorkspace(r,l){return this.mutate(`/workspaces/${encodeURIComponent(r)}`,"DELETE",{requestId:Qe(),...l})}async activateWorkspace(r,l){const a=await this.mutate("/workspaces/activate","POST",{requestId:Qe(),path:r,...l});return{requestId:a.requestId,activeId:a.page.items.find(d=>d.active)?.id??"",activePath:a.active,workspaces:a.page.items,nextCursor:a.page.nextCursor}}async createSession(r){return(await this.mutate("/sessions","POST",{requestId:Qe(),...r})).session}activateSession(r,l){return this.mutate(`/sessions/${encodeURIComponent(r)}/activate`,"POST",{requestId:Qe(),...l})}async renameSession(r,l,a){return(await this.mutate(`/sessions/${encodeURIComponent(r)}`,"PATCH",{requestId:Qe(),name:l,...a})).session}async updateSessionTags(r,l,a){return(await this.mutate(`/sessions/${encodeURIComponent(r)}/tags`,"POST",{requestId:Qe(),tags:[...l],...a})).session}async archiveSession(r,l){return(await this.mutate(`/sessions/${encodeURIComponent(r)}/archive`,"POST",{requestId:Qe(),...l})).session}async restoreSession(r,l){return(await this.mutate(`/sessions/${encodeURIComponent(r)}/restore`,"POST",{requestId:Qe(),...l})).session}async deleteSession(r,l){await this.mutate(`/sessions/${encodeURIComponent(r)}`,"DELETE",{requestId:Qe(),...l})}async listArchivedWorkspaceSessions(r,l,a){const d=await this.collectionPage(Sn(`/workspaces/${encodeURIComponent(r)}/sessions/archived`,l),a);return{sessions:d.items,nextCursor:d.nextCursor}}command(r){return this.mutate("/commands","POST",{...r,requestId:Qe()})}async updateSettings(r,l,a,d=Qe()){const p=await this.mutate("/settings","PATCH",{operations:l,expectedRevision:r,...a,requestId:d}),h=Wm(p);if(h.requestId!==d)throw new Ne("Host 返回了其他设置请求的结果。",502,"settings_response_invalid");const g=l.map(k=>k.key);if(h.appliedKeys.length!==g.length||g.some(k=>!h.appliedKeys.includes(k)))throw new Ne("Host 返回的设置字段与提交内容不一致。",502,"settings_response_invalid");return h}openSettingsDocument(){return this.mutate("/settings/open-document","POST",{requestId:Qe()})}connectEvents(r){let l=Math.max(0,r.cursor??0),a=null,d,p=0,h=!1,g=!1;const k=()=>{if(!(h||g)){if(!navigator.onLine){r.onStatus("offline",p);return}r.onStatus(p===0?"connecting":"reconnecting",p),a=new EventSource(`${so}/events?cursor=${l}`),a.onopen=()=>{p=0,r.onStatus("live",p)},a.addEventListener("orion",N=>{if(!(h||g))try{const T=og(N.data);if(T.type==="replay_reset"){l=T.cursor,r.onEvent(T),g=!0,a?.close(),a=null,window.clearTimeout(d);return}if(T.cursor<=l)return;l=T.cursor,r.onEvent(T)}catch(T){r.onProtocolError?.(T instanceof Error?T.message:"无法解析 Web Host 事件流消息。")}}),a.onerror=()=>{if(a?.close(),a=null,h||g)return;p+=1,r.onStatus(navigator.onLine?"reconnecting":"offline",p);const N=Math.min(1e4,500*2**Math.min(p,5));window.clearTimeout(d),d=window.setTimeout(k,N)}}},I=()=>{h||g||a||(window.clearTimeout(d),k())},P=()=>{window.clearTimeout(d),a?.close(),a=null,!g&&r.onStatus("offline",p)};return window.addEventListener("online",I),window.addEventListener("offline",P),k(),{close(){h=!0,window.clearTimeout(d),a?.close(),a=null,window.removeEventListener("online",I),window.removeEventListener("offline",P)},cursor:()=>l}}collectionPage(r,l){return this.query(ya(r,l??null,!1,Ia))}async query(r){const l=await fetch(`${so}${r}`,{method:"GET",headers:{Accept:"application/json"},credentials:"same-origin",cache:"no-store"});return Ad(l)}async mutate(r,l,a,d={}){if(!this.nonce)throw new Ne("Web Workbench 尚未完成安全握手。",503);const p=await fetch(`${so}${r}`,{method:l,headers:{Accept:"application/json","Content-Type":"application/json",[rg]:this.nonce,...d},credentials:"same-origin",cache:"no-store",body:JSON.stringify(a)});return Ad(p)}}async function Ad(t){const l=(t.headers.get("content-type")??"").includes("json")?await t.json().catch(()=>null):null;if(!t.ok){const a=Ct(l)?l:{},d=typeof a.detail=="string"?a.detail:`请求失败 (${t.status})`;throw new Ne(d,t.status,typeof a.code=="string"?a.code:void 0,typeof a.type=="string"?a.type:void 0)}return l}function og(t){const r=JSON.parse(t);if(!Ct(r)||r.apiVersion!==1||typeof r.eventId!="string"||!dt.test(r.eventId)||!Number.isSafeInteger(r.cursor)||r.cursor<0||r.sessionId!==null&&typeof r.sessionId!="string"||r.threadId!==null&&typeof r.threadId!="string"||typeof r.durable!="boolean"||typeof r.timestamp!="string"||!["runtime_event","thread_event","workbench_state","replay_reset","settings_invalidated","workspace_resource_invalidated","composer_state_changed","session_runtime_changed","workspace_mutation_changed"].includes(String(r.type))||!Ct(r.payload))throw new Error("Web Host 事件流消息不符合 Web protocol v1。");if(r.type==="runtime_event"){const l=r.payload.value;if(!Ct(l)||typeof r.payload.eventType!="string"||l.type!==r.payload.eventType)throw new Error("Web Host 事件流消息判别字段不一致。")}if(r.type==="thread_event"&&(!Ct(r.payload.value)||typeof r.payload.eventType!="string"||!Number.isSafeInteger(r.payload.sequence)||typeof r.sessionId!="string"||typeof r.threadId!="string"))throw new Error("Thread 事件身份或序列无效。");if(r.type==="workbench_state"&&(typeof r.payload.contextRevision!="string"||!dt.test(r.payload.contextRevision)||typeof r.payload.workspaceId!="string"||!dt.test(r.payload.workspaceId)||typeof r.payload.workspace!="string"||r.payload.activeSessionId!==null&&typeof r.payload.activeSessionId!="string"))throw new Error("Workbench 状态事件无效。");if(r.type==="settings_invalidated"&&(r.sessionId!==null||r.threadId!==null||r.durable!==!1))throw new Error("Settings invalidation 事件身份无效。");if(r.type==="settings_invalidated")return Um(r);if(r.type==="session_runtime_changed"&&(!Ct(r.payload.runtime)||r.sessionId!==r.payload.runtime.sessionId||!lg(r.payload.runtime)))throw new Error("Session Runtime 状态事件无效。");if(r.type==="workspace_mutation_changed"){const l=r.payload.state;if(typeof r.sessionId!="string"||r.durable!==!1||!Ct(l)||typeof l.callId!="string"||l.callId.length<1||!["queued","running","completed","failed","cancelled"].includes(String(l.phase))||(l.phase==="queued"?!Number.isSafeInteger(l.queuePosition)||l.queuePosition<1:l.queuePosition!==void 0))throw new Error("Workspace mutation 状态事件无效。")}if(r.type==="workspace_resource_invalidated"&&(r.sessionId!==null||r.threadId!==null||r.durable!==!1||typeof r.payload.workspaceId!="string"||!dt.test(r.payload.workspaceId)||!Array.isArray(r.payload.resources)||r.payload.resources.length<1||r.payload.resources.some(l=>!["files","git","review"].includes(String(l)))||!["context-change","filesystem-change","terminal-command","tool-finished"].includes(String(r.payload.reason))))throw new Error("Workspace resource invalidation 事件无效。");if(r.type==="composer_state_changed"&&(typeof r.sessionId!="string"||r.durable!==!0||!Ct(r.payload.state)||r.payload.state.apiVersion!==1||r.payload.state.sessionId!==r.sessionId||typeof r.payload.state.controlRevision!="string"||!dt.test(r.payload.state.controlRevision)||typeof r.payload.state.contextRevision!="string"||!dt.test(r.payload.state.contextRevision)))throw new Error("Composer state 事件身份无效。");if(r.type==="replay_reset"&&(typeof r.payload.reason!="string"||r.payload.snapshotRequired!==!0))throw new Error("Replay reset 事件无效。");return r}function lg(t){const r=t.phase==="queued";return typeof t.workspaceId=="string"&&dt.test(t.workspaceId)&&typeof t.sessionId=="string"&&dt.test(t.sessionId)&&typeof t.runtimeRevision=="string"&&dt.test(t.runtimeRevision)&&["cold","starting","idle","queued","running","waiting_approval","stopping","interrupted","failed"].includes(String(t.phase))&&Number.isSafeInteger(t.pendingApprovalCount)&&t.pendingApprovalCount>=0&&typeof t.resident=="boolean"&&Number.isSafeInteger(t.estimatedBytes)&&t.estimatedBytes>=0&&typeof t.updatedAt=="string"&&(r?typeof t.queueId=="string"&&dt.test(t.queueId)&&Number.isSafeInteger(t.queuePosition)&&t.queuePosition>=1:t.queueId===void 0&&t.queuePosition===void 0)}function ya(t,r=null,l=!1,a=Ia){const d=new URLSearchParams({pageSize:String(a)});return r&&d.set("cursor",r),l&&d.set("tail","1"),`${t}${t.includes("?")?"&":"?"}${d.toString()}`}function fr(t,r){t.set("expectedContextRevision",r.expectedContextRevision),t.set("workspaceId",r.workspaceId)}function Sn(t,r){const l=new URLSearchParams;return fr(l,r),`${t}${t.includes("?")?"&":"?"}${l.toString()}`}function Ct(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function Qe(){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();const t=crypto.getRandomValues(new Uint8Array(16));t[6]=t[6]&15|64,t[8]=t[8]&63|128;const r=[...t].map(l=>l.toString(16).padStart(2,"0")).join("");return`${r.slice(0,8)}-${r.slice(8,12)}-${r.slice(12,16)}-${r.slice(16,20)}-${r.slice(20)}`}function ag({state:t,actions:r,insertion:l}){const a=t.workspaceId,d=t.activeSessionId??"",[p,h]=m.useState({workspaceId:a,sessionId:d,text:"",references:[]}),[g,k]=m.useState(null),[I,P]=m.useState(""),[N,T]=m.useState(new Set),M=m.useRef(null),W=`${a}:${d}`,D=m.useRef(W);D.current=W;const O=`${p.workspaceId}:${p.sessionId}`,ne=!d||!t.bootstrap?.configured||t.connection!=="live"||!gr(t),F=!!t.pendingAction,we=t.sessionSnapshot?.sessionRuntime.phase==="queued",Z=!ne&&!F,ue=Z&&!we;m.useEffect(()=>{if(!a||!d){h({workspaceId:a,sessionId:d,text:"",references:[]});return}const B=Im(a,d);h({workspaceId:a,sessionId:d,text:B?.text??"",references:B?.references??[]}),P(""),T(new Set)},[a,d]),m.useEffect(()=>{if(!(!p.workspaceId||!p.sessionId))try{p.text||p.references.length>0?bm(p):$d(p.workspaceId,p.sessionId),P("")}catch(B){P(B instanceof Error?B.message:"草稿无法保存。")}},[p]),m.useEffect(()=>{!l||!d||O!==W||(h(B=>({...B,text:B.text.trim()?`${B.text.trimEnd()}
15
+
16
+ ${l.text}`:l.text})),requestAnimationFrame(()=>M.current?.focus()))},[W,O,l,d]);const b=O===W?p.text:"",H=O===W?p.references:[],fe=B=>h(ve=>({...ve,workspaceId:a,sessionId:d,text:B})),re=B=>{const ve=new Set(B.map(Ws));T(G=>new Set([...G].filter(de=>ve.has(de)))),h(G=>({...G,workspaceId:a,sessionId:d,references:B}))},Ce=async B=>{const ve=b.trim();if(!ve||!ue)return;const G=W;try{B==="queue"?await r.queue(ve,H):await r.submit(ve,H),$d(a,d),T(new Set),D.current===G&&h({workspaceId:a,sessionId:d,text:"",references:[]}),M.current?.focus()}catch(de){de instanceof Ne&&["context_reference_stale","context_reference_forbidden"].includes(de.code??"")&&T(new Set(H.map(Ws))),P(de instanceof Error?de.message:"发送失败,草稿已保留。"),M.current?.focus()}},_e=B=>{B.preventDefault(),Ce(t.processing?"queue":"submit")},Re=B=>{B.key!=="Enter"||B.shiftKey||B.nativeEvent.isComposing||(B.preventDefault(),t.processing&&(B.metaKey||B.ctrlKey)?Ce("submit"):Ce(t.processing?"queue":"submit"))};return i.jsxs("div",{className:"composer-control-center",children:[t.composer?.planReview?.status==="awaiting_review"?i.jsx(hg,{state:t,actions:r}):null,H.length>0?i.jsx(pg,{references:H,invalidReferenceKeys:N,onChange:re}):null,i.jsxs("form",{className:"composer composer-v032",onSubmit:_e,children:[i.jsx("label",{htmlFor:"orion-composer",className:"sr-only",children:"发送给 Orion"}),i.jsx("textarea",{ref:M,id:"orion-composer",rows:3,maxLength:1e6,value:b,onChange:B=>fe(B.target.value),onKeyDown:Re,placeholder:F?"正在同步会话控制状态…":we?`任务正在排队${t.sessionSnapshot?.sessionRuntime.queuePosition?`(第 ${t.sessionSnapshot.sessionRuntime.queuePosition} 位)`:""}`:ne?"选择会话并配置模型后开始":t.processing?"输入后续消息;Enter 排队,⌘/Ctrl+Enter Steer":"描述任务,或输入 / 查看命令…",disabled:!ue}),i.jsxs("div",{className:"composer-toolbar composer-control-toolbar",children:[i.jsxs("div",{className:"composer-controls composer-control-row",children:[i.jsx(fg,{state:t,actions:r,disabled:!ue,references:H,onChange:re,onInsertCommand:()=>fe(b.trim()?`${b.trimEnd()}
17
+ /`:"/")}),i.jsx(ba,{label:yg(t),accessibleLabel:"工作模式",disabled:!ue,value:t.composer?.mode.baseMode??t.mode.baseMode,options:[{value:"interactive",label:"BUILD",detail:"执行、修改并验证当前任务"},{value:"plan",label:"PLAN",detail:"生成计划并等待你的审核"},{value:"auto",label:"AUTO",detail:"自主执行,仍受权限与沙箱约束"}],onSelect:B=>{B==="auto"?k("auto"):Nn(r.setMode(B))}}),i.jsx(ba,{label:xg(t),accessibleLabel:"会话权限",disabled:!ue,value:t.composer?.permission.override??"inherit",options:[{value:"inherit",label:"继承项目",detail:`当前 ${t.composer?.permission.projectDefault??"ask"}`},{value:"ask",label:"ASK",detail:"高风险工具逐次请求批准"},{value:"allow",label:"ALLOW",detail:"允许策略许可的工具,不绕过沙箱"},{value:"deny",label:"DENY",detail:"拒绝需要授权的工具"}],onSelect:B=>{B==="allow"?k("allow"):Nn(r.setPermissionOverride(B==="inherit"?null:B))}})]}),i.jsxs("div",{className:"composer-actions composer-control-actions",children:[i.jsx(cg,{state:t,actions:r,disabled:!ue}),i.jsx(dg,{state:t,actions:r,disabled:!ue}),t.processing?i.jsxs(i.Fragment,{children:[i.jsxs("button",{type:"button",className:"icon-text-button stop-button",onClick:()=>Nn(r.interrupt()),disabled:!ue,children:[i.jsx(Q,{name:"stop",size:14}),"停止"]}),i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>{Ce("submit")},disabled:!b.trim()||!ue,children:"Steer"})]}):null,we?i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>Nn(r.cancelQueuedTurn()),disabled:!Z,children:"取消排队"}):null,i.jsx("button",{type:"submit",className:"send-button composer-send-icon","aria-label":t.processing?"加入消息队列":"发送消息",disabled:!ue||!b.trim(),children:i.jsx(Q,{name:"arrow-up",size:17})})]})]}),H.length>0||I||t.composer?.lastError?i.jsxs("div",{className:"composer-footline",children:[H.length>0?i.jsxs("span",{children:[H.length," 个 Context 引用"]}):null,I?i.jsx("span",{role:"alert",children:I}):t.composer?.lastError?i.jsx("span",{role:"alert",children:t.composer.lastError.message}):null]}):null]}),g?i.jsx(mg,{kind:g,onCancel:()=>k(null),onConfirm:()=>{const B=g;k(null),Nn(B==="auto"?r.setMode("auto"):r.setPermissionOverride("allow"))}}):null]})}function cg({state:t,actions:r,disabled:l}){const a=t.composer?.model,d=["auto",...a?.effort.supportedLevels??[]];return i.jsxs("div",{className:"model-control-cluster",children:[i.jsx(ug,{state:t,actions:r,disabled:l}),a?.effort.supported?i.jsx(ba,{label:t.composer?.pending.model?`${io(a.effort.requested)} → ${io(t.composer.pending.model.effort)}`:io(a.effort.requested),accessibleLabel:"推理强度",disabled:l,value:a.effort.requested,options:d.map(p=>({value:p,label:io(p),detail:p==="auto"?"采用模型或项目默认值":`请求 ${p} reasoning effort`})),onSelect:p=>Nn(r.selectModel(a.modelId,p))}):null]})}function ug({state:t,actions:r,disabled:l}){const[a,d]=m.useState(!1),[p,h]=m.useState(""),g=m.useRef(null),k=m.useRef(null),I=m.useRef(null),P=t.composer?.model,N=t.modelCatalog,T=t.composer?.pending.model?`${P?.modelId??"模型"} → ${t.composer.pending.model.modelId}`:P?.modelId??"模型",M=p.trim().toLowerCase(),W=new Set((N?.unavailableProviders??[]).map(F=>F.id)),D=(N?.items??[]).filter(F=>!W.has(F.providerId)).filter(F=>[F.id,F.label,F.providerId,F.providerLabel].some(we=>we.toLowerCase().includes(M))).slice(0,80),O=new Map;for(const F of D){const we=F.providerLabel||F.providerId;O.set(we,[...O.get(we)??[],F])}const ne=()=>{d(!1),h(""),k.current?.focus()};return _o(a,g,ne),i.jsxs("div",{className:"control-menu",ref:g,children:[i.jsxs("button",{ref:k,type:"button",className:"composer-control-trigger","aria-label":"会话模型","aria-haspopup":"menu","aria-expanded":a,disabled:l,onClick:()=>{a?ne():(d(!0),N||Nn(r.loadModelCatalog()))},children:[i.jsx("span",{children:T}),i.jsx(Q,{name:"chevron",size:12})]}),a?i.jsxs("div",{className:"control-menu-popover model-catalog-popover",role:"menu","aria-label":"会话模型",ref:I,onKeyDown:F=>za(F,ne),children:[(N?.items.length??0)>8?i.jsxs("label",{className:"model-catalog-search",children:[i.jsx("span",{className:"sr-only",children:"筛选模型"}),i.jsx("input",{type:"search",value:p,placeholder:"筛选模型…",onChange:F=>h(F.target.value),onKeyDown:F=>{F.key==="ArrowDown"?(F.preventDefault(),Pf(I.current)):F.key==="Escape"&&(F.stopPropagation(),ne())}})]}):null,N===null?i.jsx("p",{role:"status",children:"正在加载模型…"}):null,N&&D.length===0?i.jsx("p",{children:"没有匹配的可用模型"}):null,[...O.entries()].map(([F,we])=>i.jsxs("section",{role:"group","aria-label":F,children:[i.jsx("div",{className:"model-provider-heading",children:F}),we.map(Z=>i.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":Z.id===P?.modelId,onClick:()=>{ne(),Nn(r.selectModel(Z.id))},children:[i.jsxs("span",{children:[i.jsx("strong",{children:Z.label}),i.jsxs("small",{children:[Gr(Z.contextWindow)," context",Z.reasoning?" · reasoning":""]})]}),Z.id===P?.modelId?i.jsx(Q,{name:"check",size:14}):null]},Z.id))]},F)),N?.unavailableProviders.map(F=>i.jsxs("section",{role:"group","aria-label":`${F.id} 不可用`,children:[i.jsxs("div",{className:"model-provider-heading state-error",children:[F.id," · 不可用"]}),i.jsx("p",{children:F.reason}),i.jsx("button",{type:"button",role:"menuitem",onClick:()=>Nn(r.loadModelCatalog()),children:"Retry"})]},F.id)),(N?.items.length??0)>80&&!M?i.jsx("p",{children:"显示前 80 项;输入关键词继续筛选。"}):null]}):null]})}function dg({state:t,actions:r,disabled:l}){const[a,d]=m.useState(!1),p=m.useRef(null),h=m.useRef(null),g=t.composer?.contextUsage,k=g?Math.max(0,Math.min(100,g.percent)):null,I=g?.source==="estimated",P=!!(g&&g.percent>=g.warningThresholdPercent);return _o(a,p,()=>{d(!1),h.current?.focus()}),i.jsxs("div",{className:"context-meter-wrap",ref:p,children:[i.jsxs("button",{ref:h,type:"button",className:"context-meter-button","aria-label":g?`Context ${I?"估算 ":""}${g.usedTokens} / ${g.safeInputBudget??g.contextWindow} tokens,${g.percent}%${P?",接近压缩阈值":""}`:"Context 用量不可用","aria-haspopup":"dialog","aria-expanded":a,disabled:l,onClick:()=>d(N=>!N),children:[i.jsx("span",{className:"context-meter-ring",style:{"--context-percent":`${k??0}%`},"aria-hidden":"true"}),i.jsx("span",{children:g?`${I?"~":""}${g.percent}%${P?" !":""}`:"Context"})]}),a?i.jsxs("section",{className:"context-popover",role:"dialog","aria-label":"Context 用量详情",children:[i.jsxs("header",{children:[i.jsx("strong",{children:"Context"}),i.jsx("button",{type:"button",className:"icon-button",onClick:()=>d(!1),"aria-label":"关闭 Context 详情",children:i.jsx(Q,{name:"close",size:14})})]}),g?i.jsxs("dl",{children:[i.jsxs("div",{children:[i.jsx("dt",{children:"当前模型"}),i.jsx("dd",{children:g.modelId})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"已使用"}),i.jsx("dd",{children:Gr(g.usedTokens)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"安全输入预算"}),i.jsx("dd",{children:Gr(g.safeInputBudget??g.contextWindow)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"原始窗口"}),i.jsx("dd",{children:Gr(g.contextWindow)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"输出预留"}),i.jsx("dd",{children:Gr(g.reservedOutputTokens??0)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"安全余量"}),i.jsx("dd",{children:Gr(g.safetyMarginTokens??0)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"来源"}),i.jsx("dd",{children:g.source==="estimated"?"估算 ~":g.source})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"警告阈值"}),i.jsxs("dd",{children:[g.warningThresholdPercent,"%"]})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"自动压缩"}),i.jsx("dd",{children:g.autoCompactEnabled?`${g.autoCompactThresholdPercent}%`:"关闭"})]})]}):i.jsx("p",{children:"Runtime 尚未提供当前模型的 Context 计数。"}),t.composer?.compactAvailable?i.jsx("button",{type:"button",className:"secondary-button",disabled:!g||t.processing,onClick:()=>Nn(r.compactContext()),children:"立即压缩"}):null]}):null]})}function fg({state:t,actions:r,disabled:l,references:a,onChange:d,onInsertCommand:p}){const[h,g]=m.useState(!1),[k,I]=m.useState("root"),[P,N]=m.useState([]),[T,M]=m.useState(!1),[W,D]=m.useState(""),O=m.useRef(null),ne=m.useRef(null);_o(h,O,()=>g(!1));const F=b=>{a.some(H=>H.kind===b.kind&&H.id===b.id)||d([...a,b]),g(!1),I("root")},we=async()=>{I("files"),M(!0),D("");try{const b=await r.listFiles();N(b.items.filter(H=>H.readable&&!H.sensitive))}catch(b){D(b instanceof Error?b.message:"文件列表加载失败。")}finally{M(!1)}},Z=async b=>{M(!0),D("");try{if(Ld(b)){const H=await r.listFiles(b.id);F({kind:"folder",id:b.id,label:b.name,revision:H.revision})}else if(wg(b)){const H=await r.readFileContent(b.id);if(H.binary||H.sensitive)throw new Error("该文件不能加入模型 Context。");F({kind:"file",id:b.id,label:b.name,revision:H.revision})}}catch(H){D(H instanceof Error?H.message:"Context 引用加载失败。")}finally{M(!1)}},ue=async()=>{M(!0);try{const b=await r.review();F({kind:"review",id:"working-tree",label:b.truncated?`Review · ${b.totalChangedFiles} files · ${b.changedFiles.length} visible`:`Review · ${b.totalChangedFiles} files`,gitRevision:b.repositoryRevision})}catch(b){D(b instanceof Error?b.message:"Review Context 加载失败。")}finally{M(!1)}};return i.jsxs("div",{className:"control-menu context-launcher",ref:O,children:[i.jsx("button",{type:"button",className:"context-add-button","aria-label":"添加 Context","aria-haspopup":"menu","aria-expanded":h,disabled:l,onClick:()=>{const b=!h;g(b),b&&requestAnimationFrame(()=>Pf(ne.current))},children:i.jsx(Q,{name:"add",size:17})}),h?i.jsxs("div",{className:"control-menu-popover context-launcher-menu",role:"menu","aria-label":"添加 Context",ref:ne,onKeyDown:b=>za(b,()=>g(!1)),children:[k!=="root"?i.jsx("button",{type:"button",role:"menuitem",onClick:()=>I("root"),children:"← 返回"}):null,k==="root"?i.jsxs(i.Fragment,{children:[i.jsx(St,{label:"文件或目录",detail:"Workspace 内受控读取",onClick:()=>{we()}}),i.jsx(St,{label:"当前 Review",detail:"绑定 exact Git revision",onClick:()=>{ue()}}),i.jsx(St,{label:"历史 Session",detail:"引用受控摘要",onClick:()=>I("sessions")}),i.jsx(St,{label:"Skill",detail:"绑定已加载能力 digest",onClick:()=>I("skills")}),i.jsx(St,{label:"命令",detail:"插入 / 命令入口",onClick:()=>{p(),g(!1)}}),a.length>0?i.jsx(St,{label:"清除 Context",detail:"移除当前草稿全部引用",onClick:()=>{d([]),g(!1)}}):null]}):null,k==="files"?P.map(b=>i.jsx(St,{label:b.name,detail:Ld(b)?"目录":`${b.sizeBytes??0} bytes`,onClick:()=>{Z(b)}},b.id)):null,k==="sessions"?t.sessions.filter(b=>b.id!==t.activeSessionId).map(b=>i.jsx(St,{label:b.name||`Session ${b.id.slice(0,8)}`,detail:`${b.messageCount} 条消息`,onClick:()=>F({kind:"session",id:b.id,label:b.name||`Session ${b.id.slice(0,8)}`,digest:b.contextDigest})},b.id)):null,k==="skills"?t.skills.filter(b=>b.userInvocable).map(b=>i.jsx(St,{label:b.name,detail:b.description,onClick:()=>F({kind:"skill",id:b.id,label:b.name,digest:b.digest})},b.id)):null,T?i.jsx("p",{role:"status",children:"正在加载…"}):null,W?i.jsx("p",{role:"alert",children:W}):null]}):null]})}function pg({references:t,invalidReferenceKeys:r,onChange:l}){return i.jsx("div",{className:"context-tray","aria-label":"当前 Context 引用",children:t.map(a=>i.jsxs("span",{className:`context-chip${r.has(Ws(a))?" state-stale":""}`,children:[i.jsx("small",{children:kg(a.kind)}),i.jsx("span",{children:a.label}),r.has(Ws(a))?i.jsx("span",{className:"context-chip-state",children:"已失效,请移除后重新添加"}):null,i.jsx("button",{type:"button","aria-label":`移除 Context ${a.label}`,onClick:()=>l(t.filter(d=>d!==a)),children:i.jsx(Q,{name:"close",size:12})})]},Ws(a)))})}function hg({state:t,actions:r}){const l=t.composer.planReview,[a,d]=m.useState(!1),[p,h]=m.useState(""),g=!!t.pendingAction||t.connection!=="live"||!gr(t);return i.jsxs("section",{className:"plan-review-card","aria-labelledby":"plan-review-title",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"PLAN REVIEW"}),i.jsx("h2",{id:"plan-review-title",children:"计划已保存,尚未执行"}),i.jsxs("p",{children:["由 ",l.createdModel," 创建 · digest ",l.planDigest.slice(0,12)]})]}),a?i.jsxs("label",{children:["继续规划反馈",i.jsx("textarea",{rows:2,value:p,onChange:k=>h(k.target.value)})]}):null,i.jsxs("div",{className:"plan-review-actions",children:[i.jsx("button",{type:"button",className:"danger-ghost-button",disabled:g,onClick:()=>Nn(r.reviewPlan(l.planDigest,"cancel")),children:"取消计划"}),a?i.jsx("button",{type:"button",className:"secondary-button",disabled:g||!p.trim(),onClick:()=>Nn(r.reviewPlan(l.planDigest,"continue",p.trim())),children:"提交反馈"}):i.jsx("button",{type:"button",className:"secondary-button",disabled:g,onClick:()=>d(!0),children:"继续规划"}),i.jsx("button",{type:"button",className:"primary-button",disabled:g,onClick:()=>Nn(r.reviewPlan(l.planDigest,"approve")),children:"批准并进入 BUILD"})]})]})}function ba({label:t,accessibleLabel:r,value:l,options:a,disabled:d,emptyLabel:p,onOpen:h,onSelect:g}){const[k,I]=m.useState(!1),P=m.useRef(null),N=m.useRef(null),T=m.useRef(null),M=m.useId(),W=()=>{I(!1),N.current?.focus()},D=()=>{I(!0),h?.(),requestAnimationFrame(()=>gg(T.current))};return _o(k,P,W),i.jsxs("div",{className:"control-menu",ref:P,children:[i.jsxs("button",{ref:N,type:"button",className:"composer-control-trigger","aria-label":r,"aria-haspopup":"menu","aria-expanded":k,"aria-controls":k?M:void 0,disabled:d,onClick:()=>{k?W():D()},onKeyDown:O=>{O.key==="ArrowDown"&&(O.preventDefault(),D())},children:[i.jsx("span",{children:t}),i.jsx(Q,{name:"chevron",size:12})]}),k?i.jsx("div",{id:M,ref:T,className:"control-menu-popover",role:"menu","aria-label":r,onKeyDown:O=>za(O,W),children:a.length===0?i.jsx("p",{children:p??"没有选项"}):a.map(O=>i.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":O.value===l,onClick:()=>{W(),g(O.value)},children:[i.jsxs("span",{children:[i.jsx("strong",{children:O.label}),i.jsx("small",{children:O.detail})]}),O.value===l?i.jsx(Q,{name:"check",size:14}):null]},O.value))}):null]})}function St({label:t,detail:r,onClick:l}){return i.jsx("button",{type:"button",role:"menuitem",onClick:l,children:i.jsxs("span",{children:[i.jsx("strong",{children:t}),i.jsx("small",{children:r})]})})}function mg({kind:t,onCancel:r,onConfirm:l}){const[a,d]=m.useState(!1),p=m.useRef(null),h=m.useRef(null);return m.useEffect(()=>{const g=document.querySelector(t==="auto"?'[aria-label="工作模式"]':'[aria-label="会话权限"]');return h.current?.focus(),()=>g?.focus()},[t]),i.jsx("div",{className:"modal-backdrop",onPointerDown:g=>{g.target===g.currentTarget&&r()},children:i.jsxs("section",{ref:p,className:"risk-confirmation",role:"alertdialog","aria-modal":"true","aria-labelledby":"risk-title","aria-describedby":"risk-description",onKeyDown:g=>vg(g,p.current,r),children:[i.jsx("h2",{id:"risk-title",children:t==="auto"?"启用 AUTO 模式?":"启用会话 ALLOW?"}),i.jsx("p",{id:"risk-description",children:t==="auto"?"Orion 会自主执行多个步骤,但仍受 ToolGateway、沙箱与 Workspace containment 约束。":"策略允许的工具将不再逐次询问;硬拒绝、沙箱和 Workspace 边界仍然生效。"}),i.jsxs("label",{children:[i.jsx("input",{type:"checkbox",checked:a,onChange:g=>d(g.target.checked)}),"我理解这会扩大本会话的默认执行范围"]}),i.jsxs("div",{children:[i.jsx("button",{ref:h,type:"button",className:"secondary-button",onClick:r,children:"取消"}),i.jsx("button",{type:"button",className:"primary-button",disabled:!a,onClick:l,children:"确认启用"})]})]})})}function Oa(t){return t?[...t.querySelectorAll('[role="menuitem"], [role="menuitemradio"]')].filter(r=>!r.disabled):[]}function Pf(t){Oa(t)[0]?.focus()}function gg(t){const r=Oa(t);(r.find(l=>l.getAttribute("aria-checked")==="true")??r[0])?.focus()}function za(t,r){if(t.key==="Escape"){t.preventDefault(),r();return}if(!["ArrowDown","ArrowUp","Home","End"].includes(t.key))return;t.preventDefault();const l=Oa(t.currentTarget);if(l.length===0)return;const a=l.indexOf(document.activeElement),d=t.key==="Home"?0:t.key==="End"?l.length-1:t.key==="ArrowDown"?(Math.max(0,a)+1)%l.length:(a<=0?l.length:a)-1;l[d]?.focus()}function vg(t,r,l){if(t.key==="Escape"){t.preventDefault(),l();return}if(t.key!=="Tab"||!r)return;const a=[...r.querySelectorAll('button:not(:disabled), input:not(:disabled), textarea:not(:disabled), [tabindex]:not([tabindex="-1"])')];if(a.length===0)return;const d=a[0],p=a.at(-1);t.shiftKey&&document.activeElement===d?(t.preventDefault(),p.focus()):!t.shiftKey&&document.activeElement===p&&(t.preventDefault(),d.focus())}function _o(t,r,l){m.useEffect(()=>{if(!t)return;const a=p=>{r.current?.contains(p.target)||l()},d=p=>{p.key==="Escape"&&l()};return document.addEventListener("pointerdown",a),document.addEventListener("keydown",d),()=>{document.removeEventListener("pointerdown",a),document.removeEventListener("keydown",d)}},[l,t,r])}function Dd(t){return t==="plan"?"PLAN":t==="auto"?"AUTO":"BUILD"}function yg(t){const r=t.composer?.mode??t.mode,l=Dd(r.baseMode);return r.pendingBaseMode?`${l} → ${Dd(r.pendingBaseMode)}`:l}function xg(t){const r=t.composer?.permission,l=r?.source==="session"?"Session":"Project",a=`${r?.effective.toUpperCase()??"ASK"} · ${l}`;if((t.composer?.mode.baseMode??t.mode.baseMode)==="auto"&&r?.effective!=="deny")return"AUTO · hard policy";const d=t.composer?.pending.permission;return d?`${a} → ${(d.override??r?.projectDefault??"ask").toUpperCase()} · Session`:a}function io(t){return t==="auto"?"Effort 自动":`Effort ${t}`}function Ld(t){return t.kind==="directory"||t.kind==="symlink"&&t.targetKind==="directory"}function wg(t){return t.kind==="file"||t.kind==="symlink"&&t.targetKind==="file"}function kg(t){return t==="file"?"FILE":t==="folder"?"FOLDER":t==="review"?"REVIEW":t==="session"?"SESSION":"SKILL"}function Ws(t){return`${t.kind}:${t.id}`}function Nn(t){t.catch(()=>{})}function Gr(t){return t>=1e3?`${Math.round(t/1e3)}k`:String(t)}const Od=320,jg=300,xa=["system","light","dark"],Sg={system:"monitor",light:"sun",dark:"moon"},zd={system:"跟随系统",light:"浅色",dark:"深色"};function Cg(t){const r=t??"system",l=xa.indexOf(r),a=xa[(l+1)%xa.length];return{current:r,next:a}}function Ng({state:t,actions:r,navigationOpen:l,inspectorExpanded:a,onOpenNavigation:d,onToggleInspector:p,onRevealSettings:h,onCreateSession:g,themePreference:k,onCycleTheme:I,onShowShortcuts:P,composerInsertion:N}){const T=t.sessions.find(B=>B.id===t.activeSessionId),M=jo(t),W=m.useMemo(()=>_g(t),[t.edits,t.research,t.subtasks,t.tools,t.transcript]),[D,O]=m.useState(Od),ne=W.slice(-D),F=m.useRef(null),we=m.useRef(null),Z=m.useRef(!0),ue=m.useRef(null),[b,H]=m.useState(!0);m.useEffect(()=>{O(Od),Z.current=!0,H(!0)},[t.activeSessionId]),m.useLayoutEffect(()=>{const B=F.current;if(B){if(ue.current){const ve=ue.current;B.scrollTop=ve.top+(B.scrollHeight-ve.height),ue.current=null;return}Z.current&&(B.scrollTop=B.scrollHeight)}},[ne.length,t.processing]),m.useLayoutEffect(()=>{const B=F.current,ve=we.current;if(!B||!ve||typeof ResizeObserver>"u")return;const G=new ResizeObserver(()=>{Z.current&&(B.scrollTop=B.scrollHeight)});return G.observe(ve),()=>G.disconnect()},[t.activeSessionId]);const fe=()=>{const B=F.current;if(!B)return;const ve=B.scrollHeight-B.scrollTop-B.clientHeight<72;Z.current=ve,H(ve)},re=!!t.sessionSnapshot?.transcript.nextCursor,Ce=async()=>{const B=F.current;if(B&&(ue.current={height:B.scrollHeight,top:B.scrollTop}),W.length>ne.length){O(ve=>ve+jg);return}if(re)try{await r.loadOlderTranscript(),O(ve=>ve+100)}catch{ue.current=null}},_e=()=>{const B=F.current;B&&(Z.current=!0,H(!0),B.scrollTo({top:B.scrollHeight,behavior:"smooth"}))},Re=Cg(k);return i.jsxs("main",{className:"conversation-column",id:"main-content",children:[i.jsxs("header",{className:"conversation-header",children:[i.jsx("button",{type:"button",className:"icon-button mobile-nav-toggle",onClick:d,"aria-label":"打开会话导航","aria-controls":"workspace-rail","aria-expanded":l,children:i.jsx(Q,{name:"menu"})}),i.jsxs("div",{className:"conversation-identity",children:[i.jsxs("div",{className:"title-line",children:[i.jsx("h1",{tabIndex:-1,children:T?mr(T):"Orion Code"}),t.processing?i.jsx("span",{className:"running-pulse",children:"运行中"}):null]}),i.jsxs("p",{title:t.workspace,children:[T?.model??t.settings?.sections.defaults.model.effectiveValue??"本地工作台"," ","· ",Fg(t.workspace)]})]}),i.jsxs("div",{className:"header-actions",children:[i.jsx("button",{type:"button",className:"icon-button theme-cycle-button",onClick:I,"aria-label":`主题:${zd[Re.current]},点击切换为${zd[Re.next]}`,children:i.jsx(Q,{name:Sg[Re.current]})}),i.jsx("button",{type:"button",className:"icon-button shortcut-help-button",onClick:P,"aria-label":"键盘快捷键帮助",children:i.jsx(Q,{name:"keyboard"})}),i.jsx("button",{type:"button",className:"icon-button inspector-toggle",onClick:p,"aria-label":a?"关闭工作面板":"打开工作面板","aria-controls":"work-panel","aria-expanded":a,children:i.jsx(Q,{name:"sidebar"})})]})]}),t.bootstrap?.configured?null:i.jsxs("div",{className:"configuration-banner",role:"status",children:[i.jsx(Q,{name:"warning"}),i.jsxs("div",{children:[i.jsx("strong",{children:"模型尚未配置"}),i.jsx("span",{children:"请在 Orion 配置文件或环境变量中设置凭证。API Key 不会进入浏览器。"})]}),i.jsx("button",{type:"button",className:"secondary-button",onClick:h,children:"转到设置"})]}),i.jsx("div",{className:"transcript-viewport",ref:F,role:"region","aria-label":"会话记录",tabIndex:0,onScroll:fe,"aria-busy":t.processing,children:i.jsxs("div",{className:"transcript-content",ref:we,children:[W.length>ne.length||re?i.jsx("button",{type:"button",className:"load-history",onClick:()=>{Ce()},disabled:!!t.pendingAction,children:W.length>ne.length?`加载更早内容 · 还剩 ${W.length-ne.length} 项`:"从持久记录加载更早内容"}):null,t.activeSessionId?M.status==="failed"&&ne.length===0?i.jsx(oo,{icon:"warning",title:"会话快照加载失败",detail:M.error??"请重试当前会话快照。"}):(M.status==="loading"||M.status==="refreshing")&&ne.length===0?i.jsx(oo,{icon:"refresh",title:"正在同步会话",detail:"本地 Web Host 正在读取最近的会话快照。"}):ne.length===0?i.jsx(oo,{icon:"spark",title:"准备好开始了",detail:"描述要构建、修复或调查的任务。Orion 会实时展示工具、文件变化与验证结果。"}):i.jsx("ol",{className:"timeline","aria-label":"会话记录",children:ne.map(B=>i.jsx("li",{"data-event-id":B.order,children:bg(B,t)},Ig(B)))}):i.jsx(oo,{icon:"workspace",title:"选择或创建一个会话",detail:"Orion 会在当前工作区运行,并沿用 CLI/TUI 的权限与持久化状态。",action:"创建会话",onAction:g}),t.processing?i.jsxs("div",{className:"thinking-indicator",role:"status",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{children:t.statusMessage||"Orion 正在处理…"})]}):null]})}),!b&&ne.length>0?i.jsxs("button",{type:"button",className:"jump-latest",onClick:_e,children:[i.jsx(Q,{name:"arrow-up",size:15}),"回到最新"]}):null,i.jsxs("div",{className:"input-dock",children:[t.permission||t.queue.items.length>0?i.jsxs("div",{className:"input-transients",children:[t.permission?i.jsx(Ag,{state:t,actions:r}):null,t.queue.items.length>0?i.jsx(Dg,{state:t,actions:r}):null]}):null,i.jsx(ag,{state:t,actions:r,insertion:N})]})]})}function _g(t){const r=new Set(t.tools.map(a=>a.callId));return[...t.transcript.filter(a=>!a.toolActivity?.callId||!r.has(a.toolActivity.callId)).map(a=>({kind:"transcript",order:a.order,value:a})),...t.tools.map(a=>({kind:"tool",order:a.order,value:a})),...t.edits.map(a=>({kind:"edit",order:a.order,value:a})),...t.subtasks.map(a=>({kind:"subtask",order:a.order,value:a})),...t.research.map(a=>({kind:"research",order:a.order,value:a}))].sort((a,d)=>a.order-d.order)}function Ig(t){return t.kind==="transcript"?`entry-${t.value.id}`:t.kind==="tool"?`tool-${t.value.callId}`:t.kind==="edit"?`edit-${t.order}`:t.kind==="subtask"?`subtask-${t.value.taskId}`:`research-${t.value.packetId}`}function bg(t,r){if(t.kind==="transcript")return i.jsx(Eg,{entry:t.value});if(t.kind==="tool"){const l=r.transcript.find(a=>a.toolActivity?.callId===t.value.callId)?.toolActivity;return i.jsx(Rg,{tool:t.value,activity:l})}return t.kind==="edit"?i.jsx(Tg,{edit:t.value}):t.kind==="subtask"?i.jsx(Mg,{subtask:t.value}):i.jsx($g,{research:t.value})}function Eg({entry:t}){if(t.toolActivity)return i.jsx(Pg,{entry:t});if(Og(t))return i.jsxs("details",{className:"reasoning-card",children:[i.jsxs("summary",{children:[i.jsx(La,{state:t.live?"running":"ready",describe:!1}),i.jsx("span",{children:t.live?"正在分析":t.title||"推理摘要"}),i.jsx("span",{className:"reasoning-hint",children:"展开查看 Runtime 提供的摘要"})]}),i.jsx(Us,{children:t.content})]});const r=t.role;return i.jsxs("article",{className:`message-card role-${r}`,"aria-label":Fd(r),children:[i.jsxs("header",{children:[i.jsx("span",{className:"message-avatar","aria-hidden":"true",children:zg(r)}),i.jsx("span",{children:t.title||Fd(r)}),t.live?i.jsx("span",{className:"streaming-label",children:"生成中"}):null,t.command?i.jsx("span",{className:`command-state ${t.command.success?"success":"error"}`,children:t.command.success?"成功":"失败"}):null]}),i.jsx("div",{className:"message-body",children:r==="user"?i.jsx("p",{className:"literal-message",children:t.content}):i.jsx(Us,{children:t.content})}),t.budgetStop?i.jsxs("div",{className:"budget-stop",role:"status",children:[i.jsx(Q,{name:"pause",size:15}),i.jsxs("span",{children:[t.budgetStop.reason," · 状态已保留"]})]}):null]})}function Rg({tool:t,activity:r}){const l=t.workspaceMutation?.phase==="queued"?`等待工作树写入${t.workspaceMutation.queuePosition?`(第 ${t.workspaceMutation.queuePosition} 位)`:""}`:t.workspaceMutation?.phase==="running"?"正在写入工作树":t.state==="running"?"运行中":t.state==="success"?"完成":t.state==="skipped"?"跳过":"失败",a=r?.outputView?.preview||r?.body||t.error||t.summary;return i.jsxs("article",{className:`tool-card tool-${t.state}`,"aria-label":`工具 ${t.name}:${l}`,children:[i.jsxs("div",{className:"tool-card-header",children:[i.jsx("span",{className:`tool-state-icon ${t.state}`,"aria-hidden":"true",children:t.state==="running"?i.jsx("span",{className:"spinner"}):i.jsx(Q,{name:t.state==="success"?"check":t.state==="skipped"?"pause":"warning",size:15})}),i.jsxs("div",{className:"tool-title",children:[i.jsx("strong",{children:t.name}),i.jsxs("span",{children:["#",t.sequence," · ",l,t.duration!==void 0?` · ${Tf(t.duration)}`:""]})]}),t.outputBytes!==void 0?i.jsx("span",{className:"byte-pill",children:qd(t.outputBytes)}):null]}),t.summary||t.error?i.jsx("p",{className:t.error?"tool-error-copy":"tool-summary",children:Qt(t.error||t.summary||"")}):null,i.jsxs("details",{className:"tool-details",open:t.state==="error",children:[i.jsx("summary",{children:"输入与详情"}),i.jsxs("dl",{className:"tool-meta-grid",children:[i.jsxs("div",{children:[i.jsx("dt",{children:"授权"}),i.jsx("dd",{children:t.authorization?`${t.authorization.approved?"允许":"拒绝"} · ${t.authorization.source}`:"等待 Runtime 记录"})]}),t.artifactId?i.jsxs("div",{children:[i.jsx("dt",{children:"产物"}),i.jsx("dd",{children:i.jsx("code",{children:t.artifactId})})]}):null]}),i.jsxs("div",{className:"tool-detail-section",children:[i.jsx("span",{className:"micro-label",children:"参数(已脱敏)"}),i.jsx("pre",{tabIndex:0,children:Pa(t.args)})]}),a?i.jsxs("div",{className:"tool-detail-section",children:[i.jsx("span",{className:"micro-label",children:"输出预览"}),i.jsx("pre",{tabIndex:0,children:Qt(a)}),r?.outputView?.omittedBytes?i.jsxs("p",{className:"truncation-note",children:["另有 ",qd(r.outputView.omittedBytes)," 已折叠,可在 Inspector 中查看产物。"]}):null]}):null]})]})}function Pg({entry:t}){const r=t.toolActivity;return i.jsxs("article",{className:`tool-card tool-${r.state}`,children:[i.jsxs("div",{className:"tool-card-header",children:[i.jsx("span",{className:`tool-state-icon ${r.state}`,"aria-hidden":"true",children:i.jsx(Q,{name:"terminal",size:15})}),i.jsxs("div",{className:"tool-title",children:[i.jsx("strong",{children:r.name}),i.jsx("span",{children:r.detail})]})]}),r.summary?i.jsx("p",{className:"tool-summary",children:r.summary}):null,r.outputView?.preview||r.body?i.jsx("pre",{tabIndex:0,children:Qt(r.outputView?.preview||r.body||"")}):null]})}function Tg({edit:t}){const r=t.request;return i.jsxs("article",{className:"edit-card",children:[i.jsxs("header",{children:[i.jsx("span",{className:"edit-icon",children:i.jsx(Q,{name:"edit",size:15})}),i.jsxs("div",{children:[i.jsx("strong",{children:"文件修改预览"}),i.jsxs("span",{children:[r.kind," · ",r.candidates.length," 个候选"]})]})]}),i.jsx("code",{className:"path-chip",title:r.path,children:r.path}),i.jsxs("details",{children:[i.jsx("summary",{children:"查看替换内容"}),i.jsx("pre",{tabIndex:0,children:Qt(r.newString)})]})]})}function Mg({subtask:t}){return i.jsxs("details",{className:`activity-card subtask-card state-${t.state}`,children:[i.jsxs("summary",{children:[i.jsx(Q,{name:"branch",size:16}),i.jsxs("span",{children:[i.jsx("strong",{children:t.role}),i.jsx("small",{children:t.state})]}),t.durationMs!==void 0?i.jsx("time",{children:Tf(t.durationMs)}):null]}),i.jsx("p",{children:t.objective}),t.summary?i.jsx(Us,{children:t.summary}):null]})}function $g({research:t}){return i.jsxs("details",{className:`activity-card research-card state-${t.stage}`,children:[i.jsxs("summary",{children:[i.jsx(Q,{name:"search",size:16}),i.jsxs("span",{children:[i.jsx("strong",{children:"Research"}),i.jsxs("small",{children:[t.stage," · ",t.sources.length," sources"]})]})]}),t.objective?i.jsx("p",{children:t.objective}):null,t.conclusion?i.jsx(Us,{children:t.conclusion}):null,t.sources.length>0?i.jsx("ul",{className:"source-list",children:t.sources.map(r=>i.jsxs("li",{children:[i.jsx(La,{state:r.status}),i.jsx("span",{children:r.title||r.location||r.id}),i.jsxs("small",{children:[r.provider," · ",r.status]})]},r.id))}):null]})}function Ag({state:t,actions:r}){const l=t.permission,a=m.useRef(null),d=m.useRef("");m.useEffect(()=>{d.current!==l.id&&(d.current=l.id,a.current?.focus())},[l.id]);const p=!!t.pendingAction||t.connection!=="live"||!gr(t);return i.jsxs("section",{ref:a,className:"approval-card",role:"region","aria-live":"assertive","aria-labelledby":"approval-title","aria-describedby":"approval-reason",tabIndex:-1,children:[i.jsxs("div",{className:"approval-heading",children:[i.jsx("span",{className:"approval-icon",children:i.jsx(Q,{name:"warning",size:17})}),i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"需要你的确认"}),i.jsxs("h2",{id:"approval-title",children:["允许 ",l.name,"?"]})]})]}),i.jsx("p",{id:"approval-reason",children:l.reason||"该工具需要在当前权限策略下获得明确授权。"}),i.jsxs("details",{className:"approval-args",children:[i.jsx("summary",{children:"查看脱敏参数"}),i.jsx("pre",{tabIndex:0,children:Pa(l.args,6e3)})]}),i.jsxs("div",{className:"approval-actions",children:[i.jsx("button",{type:"button",className:"danger-ghost-button",onClick:()=>_t(r.answerPermission(!1)),disabled:p,children:"拒绝"}),i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>_t(r.answerPermission(!0,"once")),disabled:p,children:"仅本次"}),i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>_t(r.answerPermission(!0,"project")),disabled:p,children:"允许此项目"}),i.jsx("button",{type:"button",className:"primary-button",onClick:()=>_t(r.answerPermission(!0,"global")),disabled:p,children:"始终允许"})]}),i.jsx("p",{className:"approval-footnote",children:"项目与全局授权会写入 Orion 配置;拒绝不会丢失当前会话。"})]})}function Dg({state:t,actions:r}){const l=!!t.pendingAction||t.connection!=="live"||!gr(t);return i.jsxs("details",{className:"queue-dock",children:[i.jsxs("summary",{children:[i.jsxs("span",{children:[t.queue.items.length," 条排队消息"]}),i.jsx("span",{children:"执行时采用最新 Composer 控制"})]}),i.jsxs("div",{className:"queue-list",children:[t.queue.items.map((a,d)=>i.jsx(Lg,{item:a,index:d,count:t.queue.items.length,disabled:l,actions:r},a.id)),i.jsx("button",{type:"button",className:"text-button queue-clear",onClick:()=>_t(r.clearQueue()),disabled:l,children:"清空队列"})]})]})}function Lg({item:t,index:r,count:l,disabled:a,actions:d}){const[p,h]=m.useState(!1),[g,k]=m.useState(t.text);m.useEffect(()=>k(t.text),[t.text]);const I=async()=>{const P=g.trim();P&&(await d.editQueued(t.id,t.revision,P),h(!1))};return i.jsxs("div",{className:"queue-row",children:[i.jsx("span",{className:"queue-index",children:r+1}),p?i.jsx("textarea",{rows:2,value:g,"aria-label":`编辑排队消息 ${r+1}`,onChange:P=>k(P.target.value)}):i.jsx("p",{children:t.text}),i.jsxs("div",{className:"queue-row-actions",children:[i.jsx("button",{type:"button",className:"icon-button","aria-label":`上移排队消息 ${r+1}`,onClick:()=>_t(d.moveQueued(t.id,t.revision,r-1)),disabled:a||r===0,children:i.jsx(Q,{name:"arrow-up",size:13})}),i.jsx("button",{type:"button",className:"icon-button queue-move-down","aria-label":`下移排队消息 ${r+1}`,onClick:()=>_t(d.moveQueued(t.id,t.revision,r+1)),disabled:a||r===l-1,children:i.jsx(Q,{name:"arrow-up",size:13})}),p?i.jsx("button",{type:"button",className:"text-button",onClick:()=>_t(I()),disabled:a||!g.trim(),children:"保存"}):i.jsx("button",{type:"button",className:"text-button",onClick:()=>h(!0),disabled:a,children:"编辑"}),i.jsx("button",{type:"button",className:"icon-button","aria-label":`移除排队消息 ${r+1}`,onClick:()=>_t(d.removeQueued(t.id,t.revision)),disabled:a,children:i.jsx(Q,{name:"trash",size:14})})]})]})}function oo({icon:t,title:r,detail:l,action:a,onAction:d}){return i.jsxs("section",{className:"empty-conversation",children:[i.jsx("div",{className:"empty-orbit",children:i.jsx(Q,{name:t,size:26})}),i.jsx("h2",{children:r}),i.jsx("p",{children:l}),a&&d?i.jsx("button",{type:"button",className:"primary-button",onClick:d,children:a}):null]})}function Og(t){const r=`${t.title??""}`.toLocaleLowerCase();return r.includes("reason")||r.includes("think")||r.includes("analysis")||r.includes("推理")||r.includes("思考")}function Fd(t){return t==="user"?"你":t==="assistant"?"Orion":t==="command"?"命令":t==="error"?"错误":t==="system"?"系统":t==="status"?"状态":"工具"}function zg(t){return t==="user"?"Y":t==="assistant"?"O":t==="error"?"!":t==="command"?"›":"·"}function _t(t){t.catch(()=>{})}function Tf(t){return t<1e3?`${Math.round(t)}ms`:t<6e4?`${(t/1e3).toFixed(t<1e4?1:0)}s`:`${Math.floor(t/6e4)}m ${Math.round(t%6e4/1e3)}s`}function qd(t){return t<1024?`${t} B`:t<1048576?`${(t/1024).toFixed(1)} KB`:`${(t/1048576).toFixed(1)} MB`}function Fg(t){const r=t.replace(/[\\/]+$/,"");return r.split(/[\\/]/).filter(Boolean).at(-1)??r}function Io({open:t,onClose:r,labelledBy:l,describedBy:a,className:d="",children:p}){const h=m.useRef(null);m.useEffect(()=>{const k=h.current;k&&(t&&!k.open&&k.showModal(),!t&&k.open&&k.close())},[t]);const g=k=>{k.target===k.currentTarget&&r()};return i.jsx("dialog",{ref:h,className:`modal ${d}`.trim(),"aria-labelledby":l,"aria-describedby":a,onCancel:k=>{k.preventDefault(),r()},onClose:r,onClick:g,children:p})}function qg({open:t,onClose:r,state:l,onSelect:a,onLoadMore:d}){const[p,h]=m.useState(""),[g,k]=m.useState(""),[I,P]=m.useState(!1),[N,T]=m.useState(!1);m.useEffect(()=>{t&&(h(""),k(""),P(!1),T(!1))},[t]);const M=!!l.pendingAction||I,W=l.workspaces.slice(0,3),D=l.workspaces.slice(3),O=async F=>{const we=F.trim();if(we){if(we===l.workspace){k("该目录已经是当前工作区。");return}k(""),P(!0);try{await a(we),r()}catch(Z){k(Z instanceof Error?Z.message:"工作区切换失败。")}finally{P(!1)}}},ne=F=>{F.preventDefault(),O(p)};return i.jsxs(Io,{open:t,onClose:r,labelledBy:"workspace-dialog-title",describedBy:"workspace-dialog-description",className:"workspace-modal",children:[i.jsxs("div",{className:"modal-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"LOCAL WORKSPACE"}),i.jsx("h2",{id:"workspace-dialog-title",children:"打开或新增项目"}),i.jsx("p",{id:"workspace-dialog-description",children:"选择一个本地目录作为项目;Host 会解析真实路径并拒绝无效目录。"})]}),i.jsx("button",{type:"button",className:"icon-button",onClick:r,"aria-label":"关闭工作区选择",children:i.jsx(Q,{name:"close"})})]}),i.jsxs("div",{className:"workspace-options",role:"group","aria-label":"常用工作区",children:[W.map(F=>i.jsx(Bd,{workspace:F,locked:M,onSelect:O},F.id)),D.length>0?i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"text-button workspace-toggle-all","aria-expanded":N,onClick:()=>T(F=>!F),children:N?"收起其他工作区":`其他工作区(${D.length})`}),N?D.map(F=>i.jsx(Bd,{workspace:F,locked:M,onSelect:O},F.id)):null]}):null,l.workspaceNextCursor?i.jsx("button",{type:"button",className:"text-button",onClick:()=>{d()},disabled:M,children:"加载更多工作区"}):null]}),i.jsxs("form",{className:"workspace-path-form",onSubmit:ne,children:[i.jsx("label",{htmlFor:"workspace-path-input",children:"打开其他本地目录"}),i.jsxs("div",{className:"path-input-row",children:[i.jsx("input",{id:"workspace-path-input",value:p,onChange:F=>{h(F.target.value),g&&k("")},placeholder:"/Users/name/project",spellCheck:!1,autoComplete:"off"}),i.jsx("button",{type:"submit",className:"primary-button",disabled:!p.trim()||M,children:I?"打开中…":"打开"})]}),g?i.jsx("p",{className:"field-error",role:"alert",children:g}):null]})]})}function Bd({workspace:t,locked:r,onSelect:l}){return i.jsxs("button",{type:"button",className:`workspace-option ${t.active?"active":""}`,disabled:t.active||!t.available||r,onClick:()=>{l(t.path)},children:[i.jsx("span",{className:"workspace-icon",children:i.jsx(Q,{name:"workspace",size:17})}),i.jsxs("span",{children:[i.jsx("strong",{children:t.label||If(t.path)}),i.jsx("small",{title:t.path,children:t.path})]}),t.active?i.jsx("span",{className:"current-pill",children:"当前"}):t.available?i.jsx(Q,{name:"chevron",size:15}):i.jsx("span",{className:"current-pill",children:"不可用"})]})}function Bg({open:t,onClose:r,session:l,pending:a,onRename:d}){const[p,h]=m.useState(""),[g,k]=m.useState(""),I=l?.id;m.useEffect(()=>{t&&l&&(h(mr(l)),k(""))},[t,I]);const P=async N=>{if(N.preventDefault(),!(!l||!p.trim())){k("");try{await d(l.id,p.trim()),r()}catch(T){k(T instanceof Error?T.message:"重命名失败,请重试。")}}};return i.jsx(Io,{open:t,onClose:r,labelledBy:"rename-title",className:"rename-modal",children:i.jsxs("form",{onSubmit:P,children:[i.jsxs("header",{className:"modal-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"SESSION"}),i.jsx("h2",{id:"rename-title",children:"重命名会话"})]}),i.jsx("button",{type:"button",className:"icon-button",onClick:r,"aria-label":"关闭重命名窗口",children:i.jsx(Q,{name:"close"})})]}),i.jsxs("div",{className:"rename-body",children:[i.jsx("label",{htmlFor:"session-name",children:"会话名称"}),i.jsx("input",{id:"session-name",value:p,onChange:N=>{h(N.target.value),g&&k("")},maxLength:120,autoFocus:!0}),g?i.jsx("p",{className:"field-error",role:"alert",children:g}):null]}),i.jsxs("footer",{className:"modal-footer",children:[i.jsx("button",{type:"button",className:"secondary-button",onClick:r,children:"取消"}),i.jsx("button",{type:"submit",className:"primary-button",disabled:a||!p.trim(),children:a?"保存中…":"保存"})]})]})})}const Wd=8;function Wg({open:t,onClose:r,session:l,pending:a,onSave:d}){const[p,h]=m.useState(()=>l?.tags?[...l.tags]:[]),[g,k]=m.useState(""),[I,P]=m.useState(""),N=l?.id;m.useEffect(()=>{t&&l&&(h(l.tags??[]),k(""),P(""))},[t,N]);const T=()=>{const D=g.trim().slice(0,32);if(k(""),!!D&&!p.includes(D)){if(p.length>=Wd){P(`最多 ${Wd} 个标签。`);return}h([...p,D]),P("")}},M=D=>h(p.filter(O=>O!==D)),W=async D=>{if(D.preventDefault(),!!l){P("");try{await d(l.id,p),r()}catch(O){P(O instanceof Error?O.message:"保存标签失败,请重试。")}}};return i.jsx(Io,{open:t,onClose:r,labelledBy:"session-tags-title",className:"tags-modal",children:i.jsxs("form",{onSubmit:W,children:[i.jsxs("header",{className:"modal-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"SESSION"}),i.jsx("h2",{id:"session-tags-title",children:"管理会话标签"})]}),i.jsx("button",{type:"button",className:"icon-button",onClick:r,"aria-label":"关闭标签窗口",children:i.jsx(Q,{name:"close"})})]}),i.jsxs("div",{className:"session-tags-body",children:[l?i.jsx("p",{className:"modal-description",children:mr(l)}):null,i.jsx("div",{className:"session-tags-chips",role:"list","aria-label":"当前标签",children:p.length===0?i.jsx("span",{className:"session-tags-empty",children:"还没有标签,输入后回车添加。"}):p.map(D=>i.jsxs("span",{className:"session-tag-chip",role:"listitem",children:[D,i.jsx("button",{type:"button",className:"icon-button session-tag-remove","aria-label":`移除标签 ${D}`,onClick:()=>M(D),children:i.jsx(Q,{name:"close",size:11})})]},D))}),i.jsx("label",{htmlFor:"session-tag-input",children:"新标签"}),i.jsx("input",{id:"session-tag-input",value:g,onChange:D=>{k(D.target.value),I&&P("")},onKeyDown:D=>{(D.key==="Enter"||D.key===","||D.key===",")&&(D.preventDefault(),T())},placeholder:"回车或逗号添加",maxLength:32,autoFocus:!0}),I?i.jsx("p",{className:"field-error",role:"alert",children:I}):null]}),i.jsxs("footer",{className:"modal-footer",children:[i.jsx("button",{type:"button",className:"secondary-button",onClick:r,children:"取消"}),i.jsx("button",{type:"submit",className:"primary-button",disabled:a,children:a?"保存中…":"保存"})]})]})})}function Ug({open:t,onClose:r,session:l,pending:a,onConfirm:d}){const p=async()=>{if(l)try{await d(l.id),r()}catch{}};return i.jsxs(Io,{open:t,onClose:r,labelledBy:"confirm-delete-title",describedBy:"confirm-delete-description",className:"delete-modal",children:[i.jsxs("div",{className:"modal-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"SESSION"}),i.jsx("h2",{id:"confirm-delete-title",children:"删除会话"})]}),i.jsx("button",{type:"button",className:"icon-button",onClick:r,"aria-label":"关闭删除确认",children:i.jsx(Q,{name:"close"})})]}),i.jsxs("p",{id:"confirm-delete-description",className:"confirm-delete-body",children:["将永久删除会话",i.jsx("strong",{children:l?`「${mr(l)}」`:""}),"及其全部记录(消息、文件变更、目标与检查点)。此操作不可恢复。"]}),i.jsxs("footer",{className:"modal-footer",children:[i.jsx("button",{type:"button",className:"secondary-button",onClick:r,children:"取消"}),i.jsx("button",{type:"button",className:"danger-button",disabled:a,onClick:()=>{p()},children:a?"删除中…":"永久删除"})]})]})}const Hg=["appearance.style","appearance.theme","appearance.motion","defaults.model","defaults.effort","permissions.toolConfirmation"];function vo(t,r){return r==="appearance.style"?t.sections.appearance.style:r==="appearance.theme"?t.sections.appearance.theme:r==="appearance.motion"?t.sections.appearance.motion:r==="defaults.model"?t.sections.defaults.model:r==="defaults.effort"?t.sections.defaults.effort:t.sections.permissions.toolConfirmation}function Vg(t){return{"appearance.style":t.sections.appearance.style.effectiveValue,"appearance.theme":t.sections.appearance.theme.effectiveValue,"appearance.motion":t.sections.appearance.motion.effectiveValue,"defaults.model":t.sections.defaults.model.effectiveValue,"defaults.effort":t.sections.defaults.effort.effectiveValue,"permissions.toolConfirmation":t.sections.permissions.toolConfirmation.effectiveValue}}function pr(t){return{openedAtRevision:t.revision,workspace:t.workspace,base:t,values:Yg(t),intents:{},serverLatest:null}}function Mf(t,r,l){const a=Nt(t.base,r),d={...t.values,[r]:l},p={...t.intents};return Object.is(l,a)?delete p[r]:p[r]={op:"set",value:l},{...t,values:d,intents:p,serverLatest:null}}function $f(t,r){const l=vo(t.base,r),a={...t.intents};return l.explicitValue===void 0?(delete a[r],{...t,values:{...t.values,[r]:Nt(t.base,r)},intents:a,serverLatest:null}):(a[r]={op:"unset"},{...t,values:{...t.values,[r]:l.inheritedValue??l.effectiveValue},intents:a,serverLatest:null})}function Ud(t,r){return{...t,serverLatest:r}}function Kg(t){const r=t.serverLatest;if(!r)return t;let l=pr(r);for(const a of vr(t)){const d=t.intents[a];if(d){if(d.op==="unset"){l=$f(l,a);continue}l=Mf(l,a,d.value)}}return l}function vr(t){return Hg.filter(r=>t.intents[r]!==void 0)}function Qg(t){return vr(t).map(r=>{const l=t.intents[r];return l.op==="unset"?{op:"unset",key:r}:{op:"set",key:r,value:l.value}})}function Gg(t){return t.serverLatest?vr(t).filter(r=>{const l=vo(t.base,r),a=vo(t.serverLatest,r);return!Object.is(l.effectiveValue,a.effectiveValue)||!Object.is(l.explicitValue,a.explicitValue)||l.overridden!==a.overridden||l.source!==a.source}):[]}function Nt(t,r){const l=vo(t,r);return l.explicitValue??l.effectiveValue}function Yg(t){const r=Vg(t);return{"appearance.style":Nt(t,"appearance.style")??r["appearance.style"],"appearance.theme":Nt(t,"appearance.theme")??r["appearance.theme"],"appearance.motion":Nt(t,"appearance.motion")??r["appearance.motion"],"defaults.model":Nt(t,"defaults.model")??r["defaults.model"],"defaults.effort":Nt(t,"defaults.effort")??r["defaults.effort"],"permissions.toolConfirmation":Nt(t,"permissions.toolConfirmation")??r["permissions.toolConfirmation"]}}const yo={phase:"closed",section:"general",draft:null,message:null,problemCode:null,confirmDiscard:!1};function Xg(t,r){switch(r.type){case"open":return{...yo,phase:"ready",draft:pr(r.document)};case"close":return yo;case"select_section":return{...t,section:r.section,confirmDiscard:!1};case"set_value":return!t.draft||t.phase==="saving"?t:{...t,phase:"ready",draft:Mf(t.draft,r.key,r.value),message:null,problemCode:null,confirmDiscard:!1};case"reset_value":return!t.draft||t.phase==="saving"?t:{...t,phase:"ready",draft:$f(t.draft,r.key),message:null,problemCode:null,confirmDiscard:!1};case"save_started":return{...t,phase:"saving",message:"正在原子应用设置…",problemCode:null,confirmDiscard:!1};case"save_succeeded":return{...t,phase:"success",draft:pr(r.document),message:"设置已安全保存并应用。",problemCode:null,confirmDiscard:!1};case"save_failed":{if(!t.draft)return t;const l=r.code==="settings_revision_conflict";return{...t,phase:l?"conflict":"rejected",draft:r.latest?Ud(t.draft,r.latest):t.draft,message:r.message,problemCode:r.code,confirmDiscard:!1}}case"server_updated":{if(!t.draft)return{...t,phase:"ready",draft:pr(r.document)};if(t.phase==="saving")return t;if(t.draft.base.revision===r.document.revision){const l=vr(t.draft).length>0;return{...t,draft:l?{...t.draft,base:r.document}:pr(r.document)}}return t.draft.workspace!==r.document.workspace||vr(t.draft).length===0?{...t,phase:"ready",draft:pr(r.document),message:"已采用 Host 的最新设置。",problemCode:null,confirmDiscard:!1}:{...t,phase:"conflict",draft:Ud(t.draft,r.document),message:"Host 设置已更新。你的草稿仍被保留,请选择如何继续。",problemCode:"settings_revision_conflict",confirmDiscard:!1}}case"adopt_server":return t.draft?.serverLatest?{...t,phase:"ready",draft:pr(t.draft.serverLatest),message:"已采用服务器最新值。",problemCode:null}:t;case"rebase":return t.draft?.serverLatest?{...t,phase:"ready",draft:Kg(t.draft),message:"草稿已基于服务器最新值重放;请确认后再次应用。",problemCode:null}:t;case"request_discard":return{...t,confirmDiscard:!0};case"cancel_discard":return{...t,confirmDiscard:!1};case"clear_status":return{...t,phase:"ready",message:null,problemCode:null}}}const Jg=["auto","none","minimal","low","medium","high","xhigh","max"],Zg=[{id:"general",label:"General",icon:"settings"},{id:"models",label:"Models & Reasoning",icon:"spark"},{id:"permissions",label:"Permissions",icon:"warning"},{id:"advanced",label:"Advanced",icon:"diagnostics"}];function ev({open:t,onClose:r,state:l,actions:a,onGoToSessionControls:d}){const p=m.useRef(null),h=m.useRef(null),g=m.useRef(null),k=m.useRef(null),I=m.useRef(null),P=m.useRef(!1),N=m.useRef(null),T=m.useRef(yo.phase),[M,W]=m.useReducer(Xg,yo),[D,O]=m.useState(!1),[ne,F]=m.useState(!1),[we,Z]=m.useState(null),ue=l.settings??l.settingsMirror.lastGood,b=ue&&(!l.workspace||ue.workspace===l.workspace)?ue:null;m.useEffect(()=>{const G=p.current;G&&(t&&!G.open&&G.showModal(),!t&&G.open&&G.close())},[t]),m.useEffect(()=>{if(t&&!P.current)b&&(W({type:"open",document:b}),I.current=b),O(!1),F(!1),Z(null);else if(t&&b&&I.current===null)W({type:"open",document:b}),I.current=b;else if(t&&b&&I.current!==null&&I.current!==b){if(M.phase==="saving")return;I.current=b,W({type:"server_updated",document:b})}else!t&&P.current&&(W({type:"close"}),I.current=null,N.current=null);P.current=t},[b,M.phase,t]),m.useEffect(()=>{M.confirmDiscard&&g.current?.focus()},[M.confirmDiscard]),m.useEffect(()=>{const G=T.current;if(T.current=M.phase,!t||G!=="saving"||M.phase!=="success")return;const de=Qd();p.current?.contains(de)||h.current?.focus()},[M.phase,t]),m.useEffect(()=>{!t||b||l.settingsMirror.status==="loading"||a.refreshSettings().catch(()=>{})},[a,b,t,l.settingsMirror.status]),m.useEffect(()=>{!t||!M.draft||!l.workspace||M.draft.workspace!==l.workspace&&(W({type:"close"}),I.current=null)},[M.draft,t,l.workspace]);const H=M.draft,fe=H?vr(H):[],re=fe.length>0,Ce=l.processing&&fe.some(G=>["defaults.effort","permissions.toolConfirmation"].includes(G)),_e=()=>{if(M.phase!=="saving"){if(re){const G=Qd();k.current=G instanceof HTMLElement?G:null,W({type:"request_discard"});return}W({type:"close"}),r()}},Re=()=>{W({type:"close"}),r()},B=async G=>{if(G.preventDefault(),!H||!re||M.phase==="saving"||M.phase==="conflict")return;const de=Qg(H),Y=N.current??Qe();N.current=Y,W({type:"save_started"});try{const $=await a.updateSettings(H.base.revision,de,Y);N.current=null,I.current=$.settings,W({type:"save_succeeded",document:$.settings})}catch($){const X=$ instanceof Ne?$.code??"settings_rejected":"network";let K;X==="settings_revision_conflict"?(N.current=null,K=await a.refreshSettings().catch(()=>{}),K&&(I.current=K)):$ instanceof Ne&&$.status<500&&(N.current=null);const w=X==="settings_revision_conflict"&&!K?"settings_recovery_required":X;W({type:"save_failed",code:w,message:av(w,$),...K?{latest:K}:{}})}},ve=G=>{G.target===G.currentTarget&&_e()};return i.jsx("dialog",{id:"settings-dialog",ref:p,className:"modal settings-modal","aria-modal":"true","aria-labelledby":"settings-title","aria-describedby":"settings-description",onCancel:G=>{G.preventDefault(),_e()},onClick:ve,children:i.jsxs("form",{onSubmit:B,children:[i.jsxs("header",{className:"modal-header settings-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"HOST SETTINGS"}),i.jsx("h2",{id:"settings-title",children:"设置"}),i.jsx("p",{id:"settings-description",children:"由本地 Host 读取、校验并原子保存。"})]}),i.jsx("button",{ref:h,type:"button",className:"icon-button",onClick:_e,"aria-label":"关闭设置",disabled:M.phase==="saving",children:i.jsx(Q,{name:"close"})})]}),i.jsxs("div",{className:"settings-layout",children:[i.jsx("nav",{className:"settings-navigation","aria-label":"设置类别",children:Zg.map(G=>i.jsxs("button",{type:"button",className:M.section===G.id?"active":"","aria-current":M.section===G.id?"page":void 0,onClick:()=>W({type:"select_section",section:G.id}),children:[i.jsx(Q,{name:G.icon,size:16}),i.jsx("span",{children:G.label})]},G.id))}),i.jsxs("div",{className:"settings-content",children:[i.jsx(ov,{state:l}),H?i.jsxs(i.Fragment,{children:[M.phase==="conflict"?i.jsx(lv,{draft:H,onAdopt:()=>{N.current=null,W({type:"adopt_server"})},onRebase:()=>{N.current=null,W({type:"rebase"})}}):null,M.message&&M.phase!=="conflict"?i.jsxs("div",{className:`settings-inline-message settings-message-${M.phase}`,role:M.phase==="rejected"?"alert":"status","aria-live":M.phase==="rejected"?"assertive":"polite",children:[i.jsx(Q,{name:M.phase==="success"?"check":"info",size:16}),i.jsx("span",{children:M.message})]}):null,M.section==="general"?i.jsx(nv,{document:H.base,draft:H.values,dirtyKeys:fe,saving:M.phase==="saving",onSet:(G,de)=>W({type:"set_value",key:G,value:de}),onReset:G=>W({type:"reset_value",key:G})}):null,M.section==="models"?i.jsx(rv,{document:H.base,draft:H.values,dirtyKeys:fe,runtimeBusy:l.processing,saving:M.phase==="saving",onGoToSessionControls:d,onSet:(G,de)=>W({type:"set_value",key:G,value:de}),onReset:G=>W({type:"reset_value",key:G})}):null,M.section==="permissions"?i.jsx(sv,{document:H.base,value:H.values["permissions.toolConfirmation"],dirtyKeys:fe,runtimeBusy:l.processing,saving:M.phase==="saving",confirmAllow:D,allowAcknowledged:ne,onAllowRequested:()=>{F(!1),O(!0)},onAllowAcknowledged:F,onConfirmAllow:()=>{W({type:"set_value",key:"permissions.toolConfirmation",value:"allow"}),O(!1),F(!1)},onCancelAllow:()=>{O(!1),F(!1)},onSet:G=>W({type:"set_value",key:"permissions.toolConfirmation",value:G}),onReset:()=>W({type:"reset_value",key:"permissions.toolConfirmation"})}):null,M.section==="advanced"?i.jsx(iv,{state:l,document:H.base,documentAction:we,onOpenDocument:()=>{Z({tone:"status",message:"正在请求 Host 打开设置文件…"}),a.openSettingsDocument().then(()=>Z({tone:"status",message:"已交给系统默认编辑器打开。"})).catch(G=>Z({tone:"error",message:G instanceof Error?G.message:"无法打开设置文件。"}))},onRefresh:()=>{Z({tone:"status",message:"正在重新载入 Host 设置…"}),a.refreshSettings().then(()=>Z({tone:"status",message:"已载入最新设置。"})).catch(G=>Z({tone:"error",message:G instanceof Error?G.message:"重新载入失败。"}))}}):null]}):i.jsxs("section",{className:"settings-empty","aria-live":"polite",children:[i.jsx(Q,{name:"refresh"}),i.jsx("h3",{children:"正在读取设置"}),i.jsx("p",{children:"等待本地 Host 返回可验证的设置快照。"})]})]})]}),M.confirmDiscard?i.jsxs("div",{className:"settings-discard-confirm",role:"alertdialog","aria-labelledby":"settings-discard-title","aria-describedby":"settings-discard-description",children:[i.jsxs("div",{children:[i.jsx("strong",{id:"settings-discard-title",children:"放弃未应用的更改?"}),i.jsxs("p",{id:"settings-discard-description",children:["你的 ",fe.length," 项草稿尚未写入 Host。"]})]}),i.jsxs("div",{children:[i.jsx("button",{ref:g,type:"button",className:"secondary-button",onClick:()=>{W({type:"cancel_discard"});const G=k.current;requestAnimationFrame(()=>G?.focus())},children:"继续编辑"}),i.jsx("button",{type:"button",className:"danger-ghost-button",onClick:Re,children:"放弃更改"})]})]}):null,i.jsxs("footer",{className:"modal-footer settings-footer",children:[i.jsx("span",{className:"settings-dirty-summary","aria-live":"polite",children:re?`${fe.length} 项未应用`:"没有未应用的更改"}),i.jsx("button",{type:"button",className:"secondary-button",onClick:_e,disabled:M.phase==="saving",children:"取消"}),i.jsx("button",{type:"submit",className:"primary-button",disabled:!H||!re||M.phase==="saving"||M.phase==="conflict"||Ce||H.base.state!=="ready"||!H.base.writable,children:M.phase==="saving"?"应用中…":`应用 ${fe.length} 项`})]})]})})}function nv({document:t,draft:r,dirtyKeys:l,saving:a,onSet:d,onReset:p}){const h=t.sections.appearance.style,g=t.sections.appearance.theme,k=t.sections.appearance.motion;return i.jsxs(bo,{heading:"通用",detail:"外观偏好由 Host 保存,并在所有 Workbench 窗口保持一致。",children:[i.jsx(Zr,{id:"settings-style",label:"视觉风格",description:"选择内置的方块工坊外观,或切回经典工作台。",field:h,dirty:l.includes("appearance.style"),onReset:()=>p("appearance.style"),disabled:a||!rt(t,h),children:i.jsxs("select",{id:"settings-style",value:r["appearance.style"],disabled:a||!rt(t,h),onChange:I=>d("appearance.style",I.target.value),children:[i.jsx("option",{value:"orion-blocksmith",children:"方块工坊(内置,默认)"}),i.jsx("option",{value:"classic",children:"经典"})]})}),i.jsx(Zr,{id:"settings-theme",label:"主题",description:"跟随系统或固定使用浅色、深色。",field:g,dirty:l.includes("appearance.theme"),onReset:()=>p("appearance.theme"),disabled:a||!rt(t,g),children:i.jsxs("select",{id:"settings-theme",value:r["appearance.theme"],disabled:a||!rt(t,g),onChange:I=>d("appearance.theme",I.target.value),children:[i.jsx("option",{value:"system",children:"跟随系统"}),i.jsx("option",{value:"dark",children:"深色"}),i.jsx("option",{value:"light",children:"浅色"})]})}),i.jsxs("figure",{className:"appearance-preview","data-preview-style":r["appearance.style"],"data-preview-theme":r["appearance.theme"],"aria-label":`外观预览:${r["appearance.style"]==="orion-blocksmith"?"方块工坊":"经典工作台"},${tv(r["appearance.theme"])}`,children:[i.jsxs("div",{className:"appearance-preview-frame","aria-hidden":"true",children:[i.jsx("span",{className:"appearance-preview-rail"}),i.jsxs("span",{className:"appearance-preview-main",children:[i.jsx("i",{}),i.jsx("i",{})]}),i.jsx("span",{className:"appearance-preview-panel"})]}),i.jsx("figcaption",{children:"纯 CSS 预览 · 均为内置外观,不支持安装或卸载。"})]}),i.jsx(Zr,{id:"settings-motion",label:"动效",description:"减少非必要动画,保留状态变化。",field:k,dirty:l.includes("appearance.motion"),onReset:()=>p("appearance.motion"),disabled:a||!rt(t,k),children:i.jsxs("select",{id:"settings-motion",value:r["appearance.motion"],disabled:a||!rt(t,k),onChange:I=>d("appearance.motion",I.target.value),children:[i.jsx("option",{value:"system",children:"跟随系统"}),i.jsx("option",{value:"reduced",children:"减少动效"})]})})]})}function tv(t){return t==="light"?"浅色":t==="dark"?"深色":"跟随系统"}function rv({document:t,draft:r,dirtyKeys:l,saving:a,runtimeBusy:d,onSet:p,onReset:h,onGoToSessionControls:g}){const k=t.sections.defaults.model,I=t.sections.defaults.effort,P=t.models.some(N=>N.id===r["defaults.model"])?t.models:[{id:r["defaults.model"],label:r["defaults.model"]},...t.models];return i.jsxs(bo,{heading:"模型与推理",detail:"项目默认值通常从下一逻辑请求开始生效;当前会话覆盖保持可见。",children:[d?i.jsx(Af,{detail:"当前回合正在运行;项目推理强度暂时锁定,默认模型仍可用于新会话。"}):null,i.jsx(Zr,{id:"settings-model",label:"默认模型",description:"仅展示 Host 提供的可用模型标识。",field:k,dirty:l.includes("defaults.model"),onReset:()=>h("defaults.model"),disabled:a||!rt(t,k),children:i.jsx("select",{id:"settings-model",value:r["defaults.model"],disabled:a||!rt(t,k),onChange:N=>p("defaults.model",N.target.value),children:P.map(N=>i.jsxs("option",{value:N.id,children:[N.label,N.provider?` · ${N.provider}`:""]},N.id))})}),i.jsx(Zr,{id:"settings-effort",label:"默认推理强度",description:"模型不支持的强度会由 Host 拒绝,不会静默降级。",field:I,dirty:l.includes("defaults.effort"),onReset:()=>h("defaults.effort"),disabled:a||d||!rt(t,I),children:i.jsx("select",{id:"settings-effort",value:r["defaults.effort"],disabled:a||d||!rt(t,I),onChange:N=>p("defaults.effort",N.target.value),children:Jg.map(N=>i.jsx("option",{value:N,children:N==="auto"?"Auto":N},N))})}),t.currentSession?i.jsxs("div",{className:"settings-readonly-card","aria-label":"当前会话设置",children:[i.jsxs("div",{children:[i.jsx("span",{children:"当前会话"}),i.jsx("strong",{children:t.currentSession.model})]}),i.jsxs("div",{children:[i.jsx("span",{children:"Effort"}),i.jsx("strong",{children:t.currentSession.effort})]}),i.jsx("p",{children:t.currentSession.overridesProjectEffort?"当前会话覆盖了项目推理强度。":"当前会话沿用项目默认值。"}),i.jsx("small",{children:"可在会话输入框使用 /model 或 /effort 调整当前会话。"}),i.jsx("button",{type:"button",className:"text-button",onClick:g,"aria-controls":"orion-composer",children:"转到会话控制"})]}):null,i.jsxs("div",{className:"credential-note",children:[i.jsx(Q,{name:"check",size:16}),i.jsxs("div",{children:[i.jsx("strong",{children:"凭证始终留在 Host"}),i.jsx("p",{children:"浏览器只接收 ready / missing / unavailable 状态,不提供 API Key 输入框。"})]})]})]})}function sv({document:t,value:r,dirtyKeys:l,runtimeBusy:a,saving:d,confirmAllow:p,allowAcknowledged:h,onAllowRequested:g,onAllowAcknowledged:k,onConfirmAllow:I,onCancelAllow:P,onSet:N,onReset:T}){const M=m.useRef(null),W=m.useRef(null),D=t.sections.permissions.toolConfirmation,O=d||a||!rt(t,D);return m.useEffect(()=>{p&&W.current?.focus()},[p]),i.jsxs(bo,{heading:"权限",detail:"默认确认策略不改变工作区边界、硬拒绝和高风险保护。",children:[a?i.jsx(Af,{}):null,i.jsx(Zr,{id:"settings-tool-confirmation",label:"工具确认",description:"Ask 逐次询问;Deny 默认拒绝;Allow 仍受 Host 安全策略约束。",field:D,labelControl:!1,dirty:l.includes("permissions.toolConfirmation"),onReset:T,disabled:O,children:i.jsxs("fieldset",{id:"settings-tool-confirmation",className:"segmented-field",disabled:O,children:[i.jsx("legend",{className:"sr-only",children:"默认工具确认策略"}),["ask","allow","deny"].map(ne=>i.jsxs("label",{children:[i.jsx("input",{ref:ne==="allow"?M:void 0,type:"radio",name:"settings-permission",value:ne,checked:r===ne,onChange:()=>ne==="allow"?g():N(ne)}),i.jsx("span",{children:ne==="ask"?"Ask":ne==="allow"?"Allow":"Deny"})]},ne))]})}),p?i.jsxs("div",{className:"settings-risk-confirm",role:"alertdialog","aria-labelledby":"allow-confirm-title","aria-describedby":"allow-confirm-description",children:[i.jsx("strong",{id:"allow-confirm-title",children:"确认启用 Allow"}),i.jsx("p",{id:"allow-confirm-description",children:"Orion 会减少常规工具询问,但硬拒绝、工作区边界和风险检查仍然生效。"}),i.jsxs("label",{children:[i.jsx("input",{ref:W,type:"checkbox",checked:h,onChange:ne=>k(ne.target.checked)}),i.jsx("span",{children:"我理解这会扩大默认授权范围"})]}),i.jsxs("div",{children:[i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>{P(),requestAnimationFrame(()=>M.current?.focus())},children:"保持当前策略"}),i.jsx("button",{type:"button",className:"primary-button",disabled:!h,onClick:I,children:"启用 Allow"})]})]}):null,i.jsx("p",{className:"settings-help",children:"Agent 的 BUILD / PLAN / AUTO 模式与工具确认策略互相独立。"})]})}function iv({state:t,document:r,documentAction:l,onOpenDocument:a,onRefresh:d}){return i.jsxs(bo,{heading:"高级",detail:"配置状态、凭证可用性和集成清单均为只读摘要。",children:[r.diagnostic?i.jsxs("div",{className:"settings-diagnostic",role:"alert",children:[i.jsx(Q,{name:"warning",size:16}),i.jsxs("div",{children:[i.jsx("strong",{children:Qt(r.diagnostic.code)}),i.jsx("p",{children:Qt(r.diagnostic.message)})]})]}):null,i.jsxs("dl",{className:"settings-facts",children:[i.jsxs("div",{children:[i.jsx("dt",{children:"状态"}),i.jsx("dd",{children:mv(r.state)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"工作区"}),i.jsx("dd",{title:"仅显示目录名",children:If(r.workspace)||"—"})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"文档"}),i.jsx("dd",{children:r.hasDocument?"已创建":"尚未创建"})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"版本"}),i.jsx("dd",{title:r.revision,children:Vd(r.revision)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"Last good"}),i.jsx("dd",{children:t.settingsMirror.lastGood?Vd(t.settingsMirror.lastGood.revision):"无"})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"Mirror"}),i.jsxs("dd",{children:[t.settingsMirror.status," · g",t.settingsMirror.generation]})]})]}),i.jsxs("div",{className:"settings-advanced-actions",children:[i.jsxs("button",{type:"button",className:"secondary-button",onClick:d,children:[i.jsx(Q,{name:"refresh",size:15}),"重新载入设置"]}),i.jsxs("button",{type:"button",className:"secondary-button",onClick:a,children:[i.jsx(Q,{name:"edit",size:15}),"打开配置文件"]})]}),l?i.jsx("div",{className:`settings-document-action ${l.tone}`,role:l.tone==="error"?"alert":"status",children:l.message}):null,i.jsxs("section",{className:"settings-subsection","aria-labelledby":"credential-status-heading",children:[i.jsx("h4",{id:"credential-status-heading",children:"凭证状态"}),i.jsx("p",{children:"仅显示来源类别与可用性;密钥值、环境变量名和认证头不会进入浏览器。"}),r.credentials.length?i.jsx("ul",{className:"settings-readonly-list",children:r.credentials.map(p=>i.jsxs("li",{children:[i.jsx("span",{children:p.providerId}),i.jsx("span",{className:`settings-state-badge state-${p.state}`,children:p.state}),i.jsx("small",{children:hv(p.source)})]},p.providerId))}):i.jsx("p",{className:"settings-empty-line",children:"Host 未报告凭证槽位。"})]}),i.jsxs("section",{className:"settings-subsection","aria-labelledby":"integration-status-heading",children:[i.jsx("h4",{id:"integration-status-heading",children:"只读能力"}),i.jsx("p",{children:"Skills 与 MCP 在专用配置中管理,此处用于确认 Host 实际加载结果。"}),i.jsxs("div",{className:"settings-capability-grid",children:[i.jsx(Hd,{title:"Skills",count:t.skills.length,names:t.skills.map(p=>p.name)}),i.jsx(Hd,{title:"MCP",count:t.mcpServers.length,names:t.mcpServers.map(p=>p.name)})]})]})]})}function ov({state:t}){const{settingsMirror:r}=t;return r.status==="loading"?i.jsxs("div",{className:"settings-availability",role:"status",children:[i.jsx(Q,{name:"refresh",size:15})," 正在与 Host 同步设置…"]}):r.error?i.jsxs("div",{className:"settings-availability error",role:"alert",children:[i.jsx(Q,{name:"warning",size:15})," 设置同步失败:",r.error," 当前显示上一次可用值。"]}):r.stale?i.jsxs("div",{className:"settings-availability",role:"status",children:[i.jsx(Q,{name:"refresh",size:15})," Host 已更新设置,正在载入;当前显示上一次可用值。"]}):r.document?.state==="invalid"?i.jsxs("div",{className:"settings-availability error",role:"alert",children:[i.jsx(Q,{name:"warning",size:15})," 设置文档无效。控件已锁定,并保留上一次可用值供参考。"]}):r.document?.state==="read-only"?i.jsxs("div",{className:"settings-availability",role:"status",children:[i.jsx(Q,{name:"info",size:15})," 设置当前为只读状态。"]}):r.document?.state==="unavailable"?i.jsxs("div",{className:"settings-availability error",role:"alert",children:[i.jsx(Q,{name:"warning",size:15})," Host 设置暂不可用;当前显示上一次可用值。"]}):null}function bo({heading:t,detail:r,children:l}){return i.jsxs("section",{className:"settings-section","aria-labelledby":`settings-${Kd(t)}-heading`,children:[i.jsxs("header",{className:"settings-section-heading",children:[i.jsx("h3",{id:`settings-${Kd(t)}-heading`,children:t}),i.jsx("p",{children:r})]}),i.jsx("div",{className:"settings-section-fields",children:l})]})}function Zr({id:t,label:r,description:l,field:a,labelControl:d=!0,dirty:p,disabled:h,onReset:g,children:k}){return i.jsxs("div",{className:`settings-field-card ${p?"dirty":""}`,children:[i.jsxs("div",{className:"settings-field-copy",children:[d?i.jsx("label",{htmlFor:t,children:r}):i.jsx("strong",{children:r}),i.jsx("p",{children:l}),i.jsxs("div",{className:"settings-field-meta","aria-label":`${r} 设置来源`,children:[i.jsx("span",{children:cv(a.source)}),i.jsx("span",{children:uv(a.scope)}),i.jsx("span",{children:dv(a.applies)}),p?i.jsx("strong",{children:"草稿"}):null]}),a.blockedReason?i.jsx("small",{className:"settings-blocked-reason",children:fv(a.blockedReason)}):null]}),i.jsxs("div",{className:"settings-field-control",children:[k,i.jsx("button",{type:"button",className:"text-button",onClick:g,disabled:h||a.explicitValue===void 0&&!p,"aria-label":`重置${r}为继承值`,children:"重置"})]})]})}function lv({draft:t,onAdopt:r,onRebase:l}){const a=Gg(t),d=vr(t),p=t.serverLatest;return i.jsxs("div",{className:"settings-conflict",role:"alert",children:[i.jsx(Q,{name:"warning",size:17}),i.jsxs("div",{children:[i.jsx("strong",{children:"Host 设置已在其他位置更新"}),i.jsxs("p",{children:["草稿仍被保留",a.length?`;${a.length} 个草稿字段的服务器值发生变化`:"","。"]}),p?i.jsxs("div",{className:"settings-conflict-values","aria-label":"服务器值与我的草稿",children:[i.jsxs("div",{className:"settings-conflict-value-heading","aria-hidden":"true",children:[i.jsx("span",{children:"字段"}),i.jsx("span",{children:"服务器最新值"}),i.jsx("span",{children:"我的草稿"})]}),d.map(h=>i.jsxs("div",{children:[i.jsx("strong",{children:pv(h)}),i.jsx("span",{"data-label":"服务器最新值",children:String(Nt(p,h))}),i.jsxs("span",{"data-label":"我的草稿",children:[String(t.values[h]),t.intents[h]?.op==="unset"?"(重置)":""]})]},h))]}):null,i.jsxs("div",{children:[i.jsx("button",{type:"button",className:"secondary-button",onClick:r,children:"采用服务器值"}),i.jsx("button",{type:"button",className:"primary-button",onClick:l,children:"基于最新值重试"})]})]})]})}function Af({detail:t="当前回合正在运行;相关设置会在 Runtime 空闲后解锁。"}={}){return i.jsxs("div",{className:"settings-busy",role:"status",children:[i.jsx(Q,{name:"activity",size:15})," ",t]})}function Hd({title:t,count:r,names:l}){return i.jsxs("div",{className:"settings-capability-card",children:[i.jsx("span",{children:t}),i.jsx("strong",{children:r}),i.jsx("small",{children:l.slice(0,3).join(" · ")||"未加载"})]})}function rt(t,r){return t.state==="ready"&&t.writable&&r.writable&&!r.blockedReason}function av(t,r){const l=r instanceof Error?r.message:"Host 拒绝了设置变更。";switch(t){case"settings_revision_conflict":return"设置已在其他位置更新。你的草稿没有丢失。";case"runtime_busy":return"Runtime 正在处理任务。请等待当前回合结束后再次应用。";case"settings_document_invalid":return"配置文件无效。请在高级页查看 Host 提供的安全诊断。";case"settings_write_forbidden":return"当前设置来源为只读,Host 未执行任何变更。";case"request_id_conflict":return"保存请求标识与先前内容冲突,请重新应用。";case"settings_recovery_required":return"Host 报告设置冲突,但最新设置暂时无法载入。草稿已保留,请重新载入后再试。";case"network":return"未能确认 Host 是否收到请求;保留草稿,可安全重试。";default:return l}}function cv(t){return`来源:${t==="internal"?"内置":t==="model"?"模型":t==="global"?"全局":t==="project"?"项目":"会话"}`}function uv(t){return`作用域:${t==="global"?"全局":t==="project"?"项目":"会话"}`}function dv(t){return`生效:${t==="live"?"立即":t==="next-logical-request"?"下次请求":t==="new-session"?"新会话":"重启后"}`}function fv(t){return t==="runtime_busy"?"Runtime 正在运行,暂不可修改。":t==="read_only"?"此字段来自只读配置。":"设置文档无效,修复前不可修改。"}function pv(t){return t==="appearance.style"?"视觉风格":t==="appearance.theme"?"主题":t==="appearance.motion"?"动效":t==="defaults.model"?"默认模型":t==="defaults.effort"?"默认推理强度":"工具确认"}function hv(t){return t==="environment"?"环境提供":t==="legacy"?"Host 旧配置":"未配置"}function mv(t){return t==="ready"?"可用":t==="invalid"?"无效":t==="read-only"?"只读":"不可用"}function Vd(t){return t.length>24?`${t.slice(0,20)}…`:t}function Kd(t){return t.replace(/[^a-z0-9]+/gi,"-").replace(/^-|-$/g,"").toLowerCase()||"section"}function Qd(){return typeof document>"u"?null:document.activeElement}const gv=["导航","面板","编辑","浮层"],Df=Object.freeze([{id:"toggle-project-navigation",tokens:["Mod","B"],group:"导航",description:"展开或折叠项目导航"},{id:"toggle-work-panel",tokens:["Mod","Shift","B"],group:"导航",description:"展开或折叠右侧工作面板"},{id:"focus-work-panel-1",tokens:["Mod","Shift","1"],group:"面板",description:"切换到 Agent 面板"},{id:"focus-work-panel-2",tokens:["Mod","Shift","2"],group:"面板",description:"切换到审阅面板"},{id:"focus-work-panel-3",tokens:["Mod","Shift","3"],group:"面板",description:"切换到终端面板"},{id:"focus-work-panel-4",tokens:["Mod","Shift","4"],group:"面板",description:"切换到文件面板"},{id:"focus-work-panel-5",tokens:["Mod","Shift","5"],group:"面板",description:"切换到 Git 面板"},{id:"work-panel-tab-nav",tokens:["←","→"],group:"面板",description:"在面板标签之间移动(Home / End 跳到首尾)"},{id:"resize-panel",tokens:["←","→"],group:"面板",description:"聚焦分隔条后按 2% 步长调整宽度,配合 Shift 为 10%"},{id:"resize-panel-reset",tokens:["Enter"],group:"面板",description:"分隔条聚焦时恢复默认宽度(Home 最窄,End 最宽)"},{id:"submit-composer",tokens:["Enter"],group:"编辑",description:"在输入框中发送当前内容"},{id:"newline-composer",tokens:["Shift","Enter"],group:"编辑",description:"在输入框中插入换行而不发送"},{id:"force-submit-composer",tokens:["Mod","Enter"],group:"编辑",description:"Agent 运行中时立即提交(否则进入队列)"},{id:"project-tree-nav",tokens:["↑","↓"],group:"面板",description:"在项目与会话树中移动焦点"},{id:"close-overlay",tokens:["Esc"],group:"浮层",description:"关闭抽屉、对话框或快捷键面板"},{id:"open-shortcut-help",tokens:["Mod","/"],group:"浮层",description:"打开或关闭本快捷键面板"}]);function vv(){if(typeof navigator>"u")return!1;const t=navigator.platform??"";return/mac|iphone|ipad|ipod/i.test(t)||/Mac/i.test(navigator.userAgent??"")}function yv(t,r=vv()){return t.map(a=>a==="Mod"?r?"⌘":"Ctrl":a==="Shift"?r?"⇧":"Shift":a==="Alt"?r?"⌥":"Alt":a.toUpperCase()).join(r?" ":"+")}function xo(t,r){let l=!1,a=!1,d=!1,p=null;for(const I of r)I==="Mod"?l=!0:I==="Shift"?a=!0:I==="Alt"?d=!0:p=I;if(l!==(t.metaKey||t.ctrlKey)||a!==t.shiftKey||d!==t.altKey||p===null)return!1;const h=t.code??"";if(/^[a-z]$/i.test(p))return h===`Key${p.toUpperCase()}`;if(/^[0-9]$/.test(p))return h===`Digit${p}`;const k=Object.freeze({esc:"escape"})[p.toLowerCase()]??p.toLowerCase();return t.key.toLowerCase()===k}function wo(t){return Df.find(r=>r.id===t)}function xv(){return gv.map(t=>({group:t,items:Df.filter(r=>r.group===t)})).filter(t=>t.items.length>0)}function wv({open:t,onClose:r}){const l=m.useRef(null),a="shortcut-help-title";m.useEffect(()=>{const h=l.current;h&&(t&&!h.open&&h.showModal(),!t&&h.open&&h.close())},[t]);const d=h=>{h.target===h.currentTarget&&r()},p=xv();return i.jsxs("dialog",{ref:l,id:"shortcut-help",className:"modal shortcut-help","aria-labelledby":a,onCancel:h=>{h.preventDefault(),r()},onClose:r,onClick:d,children:[i.jsxs("header",{className:"shortcut-help-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"KEYBOARD"}),i.jsx("h2",{id:a,children:"键盘快捷键"})]}),i.jsx("button",{type:"button",className:"icon-button",onClick:r,"aria-label":"关闭快捷键面板",children:i.jsx(Q,{name:"close",size:15})})]}),i.jsx("div",{className:"shortcut-help-body",children:p.map(({group:h,items:g})=>i.jsxs("section",{className:"shortcut-help-group",children:[i.jsx("h3",{children:h}),i.jsx("dl",{children:g.map(k=>i.jsxs("div",{className:"shortcut-row",children:[i.jsx("dt",{children:k.description}),i.jsx("dd",{children:i.jsx("kbd",{children:yv(k.tokens)})})]},k.id))})]},h))}),i.jsx("footer",{className:"shortcut-help-footer",children:i.jsxs("p",{children:["按 ",i.jsx("kbd",{children:"Esc"})," 关闭本面板,焦点会回到打开它的位置。"]})})]})}const kv="modulepreload",jv=function(t){return"/"+t},Gd={},Eo=function(r,l,a){let d=Promise.resolve();if(l&&l.length>0){let k=function(I){return Promise.all(I.map(P=>Promise.resolve(P).then(N=>({status:"fulfilled",value:N}),N=>({status:"rejected",reason:N}))))};document.getElementsByTagName("link");const h=document.querySelector("meta[property=csp-nonce]"),g=h?.nonce||h?.getAttribute("nonce");d=k(l.map(I=>{if(I=jv(I),I in Gd)return;Gd[I]=!0;const P=I.endsWith(".css"),N=P?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${I}"]${N}`))return;const T=document.createElement("link");if(T.rel=P?"stylesheet":kv,P||(T.as="script"),T.crossOrigin="",T.href=I,g&&T.setAttribute("nonce",g),document.head.appendChild(T),P)return new Promise((M,W)=>{T.addEventListener("load",M),T.addEventListener("error",()=>W(new Error(`Unable to preload CSS for ${I}`)))})}))}function p(h){const g=new Event("vite:preloadError",{cancelable:!0});if(g.payload=h,window.dispatchEvent(g),!g.defaultPrevented)throw h}return d.then(h=>{for(const g of h||[])g.status==="rejected"&&p(g.reason);return r().catch(p)})},dr=[{id:"goal",label:"Goal",icon:"goal"},{id:"activity",label:"活动",icon:"activity"},{id:"integrations",label:"能力",icon:"branch"},{id:"diagnostics",label:"诊断",icon:"diagnostics"}];function Sv({state:t,actions:r,tab:l,onTabChange:a}){const d=m.useId(),p=h=>{if(h.key!=="ArrowLeft"&&h.key!=="ArrowRight"&&h.key!=="Home"&&h.key!=="End")return;h.preventDefault();const g=dr.findIndex(I=>I.id===l),k=h.key==="Home"?0:h.key==="End"?dr.length-1:(g+(h.key==="ArrowRight"?1:-1)+dr.length)%dr.length;a(dr[k].id),requestAnimationFrame(()=>document.getElementById(`${d}-tab-${dr[k].id}`)?.focus())};return i.jsxs("div",{className:"agent-panel",children:[i.jsx("div",{className:"inspector-tabs",role:"tablist","aria-label":"详情类别",onKeyDown:p,children:dr.map(h=>i.jsxs("button",{id:`${d}-tab-${h.id}`,type:"button",role:"tab","aria-selected":l===h.id,"aria-controls":`${d}-panel`,tabIndex:l===h.id?0:-1,onClick:()=>a(h.id),children:[i.jsx(Q,{name:h.icon,size:15}),i.jsx("span",{children:h.label})]},h.id))}),i.jsxs("div",{id:`${d}-panel`,className:"inspector-body",role:"tabpanel","aria-labelledby":`${d}-tab-${l}`,tabIndex:0,children:[l==="goal"?i.jsx(Cv,{state:t,actions:r}):null,l==="activity"?i.jsx(_v,{state:t,actions:r}):null,l==="integrations"?i.jsx(Ev,{state:t,actions:r}):null,l==="diagnostics"?i.jsx(Rv,{state:t,actions:r}):null]})]})}function Cv({state:t,actions:r}){const l=t.goal,a=t.plan?.body??(typeof t.diagnostics?.plan=="string"?t.diagnostics.plan:""),p=!!t.pendingAction||t.connection!=="live"||!gr(t);if(!l)return i.jsxs("div",{className:"inspector-stack",children:[i.jsxs("section",{className:"inspector-empty-card",children:[i.jsx("div",{className:"empty-mini-icon",children:i.jsx(Q,{name:"goal"})}),i.jsx("h3",{children:"没有活动 Goal"}),i.jsx("p",{children:"Goal 会跨回合保存目标、计划、证据和预算状态。"})]}),i.jsx(Nv,{onCreate:g=>r.controlGoal("create",g),disabled:p||!t.activeSessionId}),i.jsx(Yd,{mode:t.mode.baseMode,plan:a})]});const h=l.criteria?.total?Math.round(l.criteria.passed/l.criteria.total*100):0;return i.jsxs("div",{className:"inspector-stack",children:[i.jsxs("section",{className:"goal-card",children:[i.jsxs("header",{children:[i.jsx("span",{className:`goal-status status-${l.status}`,children:l.status.replace(/_/g," ")}),i.jsxs("span",{children:["rev ",l.revision]})]}),i.jsx("h3",{children:l.objective}),l.criteria?i.jsxs("div",{className:"goal-progress",children:[i.jsxs("div",{children:[i.jsx("span",{children:"成功条件"}),i.jsxs("strong",{children:[l.criteria.passed," / ",l.criteria.total]})]}),i.jsx("progress",{value:l.criteria.passed,max:Math.max(1,l.criteria.total),"aria-label":`Goal 条件完成 ${h}%`}),i.jsxs("div",{className:"goal-breakdown",children:[i.jsxs("span",{children:[h,"% 完成"]}),i.jsxs("span",{children:[l.criteria.failed," 失败 · ",l.criteria.stale," 过期"]})]})]}):null,i.jsxs("dl",{className:"metric-grid",children:[i.jsxs("div",{children:[i.jsx("dt",{children:"Tokens"}),i.jsxs("dd",{children:[Xd(l.tokensUsed),l.tokenBudget?` / ${Xd(l.tokenBudget)}`:""]})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"用时"}),i.jsx("dd",{children:Tv(l.timeUsedMs)})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"续跑"}),i.jsx("dd",{children:l.continuationCount})]}),i.jsxs("div",{children:[i.jsx("dt",{children:"Plan"}),i.jsx("dd",{children:l.planRevision?`r${l.planRevision}`:"—"})]})]}),l.nextAction?i.jsxs("div",{className:"next-action",children:[i.jsx("span",{children:"下一步"}),i.jsx("p",{children:l.nextAction})]}):null,l.auditRemaining?.length?i.jsxs("details",{className:"remaining-audit",children:[i.jsxs("summary",{children:["仍需验证 ",l.auditRemaining.length," 项"]}),i.jsx("ul",{children:l.auditRemaining.map((g,k)=>i.jsx("li",{children:g},`${g}-${k}`))})]}):null,i.jsxs("div",{className:"goal-actions",children:[l.status==="active"?i.jsxs("button",{type:"button",className:"secondary-button",onClick:()=>{r.controlGoal("pause")},disabled:p,children:[i.jsx(Q,{name:"pause",size:14}),"暂停"]}):l.status!=="complete"?i.jsxs("button",{type:"button",className:"secondary-button",onClick:()=>{r.controlGoal("resume")},disabled:p,children:[i.jsx(Q,{name:"refresh",size:14}),"恢复"]}):null,i.jsx("button",{type:"button",className:"danger-ghost-button",onClick:()=>{window.confirm("清除此 Goal?会话记录仍会保留。")&&r.controlGoal("clear")},disabled:p,children:"清除"})]})]}),t.goalEvidence.length>0?i.jsxs("section",{className:"inspector-section",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"最近证据"}),i.jsx("span",{children:t.goalEvidence.length})]}),i.jsx("ul",{className:"evidence-list",children:t.goalEvidence.slice(-8).reverse().map(g=>i.jsxs("li",{children:[i.jsx("span",{className:`evidence-state ${g.result}`,"aria-hidden":"true",children:i.jsx(Q,{name:g.result==="passed"?"check":g.result==="failed"?"close":"more",size:12})}),i.jsxs("div",{children:[i.jsx("strong",{children:g.subject}),i.jsxs("span",{children:[g.kind," · ",g.result]})]})]},g.id))})]}):null,i.jsx(Yd,{mode:t.mode.baseMode,plan:a,goalPhase:l.planPhase}),t.goalActivity.length>0?i.jsxs("section",{className:"inspector-section",children:[i.jsx("div",{className:"inspector-section-heading",children:i.jsx("h3",{children:"Goal 轨迹"})}),i.jsx("ol",{className:"compact-timeline",children:t.goalActivity.slice(-10).reverse().map((g,k)=>i.jsxs("li",{children:[i.jsx("span",{className:"timeline-pin","aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("strong",{children:g.type.replace(/_/g," ")}),i.jsx("p",{children:g.message}),i.jsx("time",{children:Mv(g.timestamp)})]})]},`${g.timestamp}-${k}`))})]}):null]})}function Nv({onCreate:t,disabled:r}){const[l,a]=m.useState(""),d=async p=>{if(p.preventDefault(),!!l.trim())try{await t(l.trim()),a("")}catch{}};return i.jsxs("form",{className:"goal-create",onSubmit:d,children:[i.jsx("label",{htmlFor:"goal-objective",children:"创建 Goal"}),i.jsx("textarea",{id:"goal-objective",rows:3,value:l,onChange:p=>a(p.target.value),placeholder:"输入一个可验证、可持续执行的目标…",disabled:r}),i.jsxs("button",{type:"submit",className:"primary-button",disabled:r||!l.trim(),children:[i.jsx(Q,{name:"goal",size:15}),"开始 Goal"]})]})}function Yd({mode:t,plan:r,goalPhase:l}){return i.jsxs("section",{className:"inspector-section plan-section",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"Plan"}),i.jsx("span",{className:`mode-badge mode-${t}`,children:t==="plan"?"PLAN MODE":l||"READ ONLY"})]}),r?i.jsx(Us,{children:r}):i.jsx("p",{className:"muted-copy",children:"还没有保存的计划。切换到 PLAN 模式后提交任务,Runtime 会生成并保存计划。"})]})}function _v({state:t,actions:r}){const l=m.useMemo(()=>t.tools.filter(a=>Pv(a)),[t.tools]);return i.jsxs("div",{className:"inspector-stack",children:[i.jsxs("section",{className:"inspector-section",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"工具调用"}),i.jsx("span",{children:t.tools.length})]}),t.tools.length?i.jsx("ul",{className:"activity-list",children:t.tools.slice(-20).reverse().map(a=>i.jsx(Iv,{tool:a},a.callId))}):i.jsx(ho,{text:"还没有工具活动"})]}),i.jsx(bv,{state:t,actions:r}),i.jsxs("section",{className:"inspector-section",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"文件变化"}),i.jsx("span",{children:l.length+t.edits.length})]}),l.length||t.edits.length?i.jsxs("ul",{className:"change-list",children:[t.edits.slice(-8).reverse().map(a=>i.jsxs("li",{children:[i.jsx(Q,{name:"edit",size:14}),i.jsxs("div",{children:[i.jsx("strong",{children:Lf(a.request.path)}),i.jsxs("span",{children:[a.request.kind," · ",a.request.candidates.length," candidates"]})]})]},a.eventId)),l.slice(-8).reverse().map(a=>i.jsxs("li",{children:[i.jsx(Q,{name:"code",size:14}),i.jsxs("div",{children:[i.jsx("strong",{children:a.name}),i.jsx("span",{children:a.summary||a.state})]})]},a.callId))]}):i.jsx(ho,{text:"还没有文件变化"})]}),i.jsxs("section",{className:"inspector-section",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"子代理与研究"}),i.jsx("span",{children:t.subtasks.length+t.research.length})]}),t.subtasks.length?i.jsx("ul",{className:"activity-list",children:t.subtasks.slice(-8).reverse().map(a=>i.jsxs("li",{children:[i.jsx("span",{className:`state-dot state-${a.state}`,"aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("strong",{children:a.role}),i.jsx("span",{children:a.objective})]}),i.jsx("small",{children:a.state})]},a.taskId))}):null,t.research.length?i.jsx("ul",{className:"activity-list",children:t.research.slice(-6).reverse().map(a=>i.jsxs("li",{children:[i.jsx("span",{className:`state-dot state-${a.stage}`,"aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Research"}),i.jsx("span",{children:a.objective||a.packetId})]}),i.jsx("small",{children:a.stage})]},a.packetId))}):null,!t.subtasks.length&&!t.research.length?i.jsx(ho,{text:"还没有子代理或研究活动"}):null]})]})}function Iv({tool:t}){return i.jsxs("li",{children:[i.jsx("span",{className:`state-dot state-${t.state}`,"aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("strong",{children:t.name}),i.jsx("span",{children:t.summary||`调用 #${t.sequence}`})]}),i.jsx("small",{children:t.duration!==void 0?`${Math.round(t.duration)}ms`:t.state})]})}function bv({state:t,actions:r}){const[l,a]=m.useState(""),[d,p]=m.useState(""),[h,g]=m.useState(),[k,I]=m.useState(0),[P,N]=m.useState(!1),[T,M]=m.useState("");m.useEffect(()=>{a(""),p(""),g(void 0),M("")},[t.activeSessionId]);const W=async(D,O=0)=>{N(!0),M("");try{const ne=await r.readToolDetail(D,O);a(D),p(F=>O===0?ne.content:`${F}${ne.content}`),g(ne.nextOffsetBytes),I(ne.totalBytes)}catch(ne){M(ne instanceof Error?ne.message:"工具详情读取失败。")}finally{N(!1)}};return i.jsxs("section",{className:"inspector-section tool-detail-browser",children:[i.jsxs("div",{className:"inspector-section-heading",children:[i.jsx("h3",{children:"持久化输出"}),i.jsxs("button",{type:"button",className:"icon-text-button",onClick:()=>{r.refreshToolDetails()},disabled:!!t.pendingAction,children:[i.jsx(Q,{name:"refresh",size:13}),"刷新"]})]}),t.toolDetails.length?i.jsx("div",{className:"detail-selector",role:"group","aria-label":"工具输出详情",children:t.toolDetails.slice(-20).reverse().map(D=>i.jsxs("button",{type:"button",className:l&&D.artifactId===l?"active":"",disabled:!D.artifactId||P,onClick:()=>D.artifactId&&void W(D.artifactId),children:[i.jsxs("span",{children:[i.jsx("strong",{children:D.toolName}),i.jsxs("small",{children:["#",D.sequence," · ",Jd(D.outputBytes)]})]}),i.jsx(Q,{name:"chevron",size:13})]},`${D.callId}:${D.sequence}`))}):i.jsx(ho,{text:"没有可读取的持久化输出"}),t.toolDetailNextCursor?i.jsx("button",{type:"button",className:"text-button",onClick:()=>{r.loadMoreToolDetails()},disabled:!!t.pendingAction,children:"加载更多输出记录"}):null,T?i.jsx("p",{className:"field-error",role:"alert",children:T}):null,l?i.jsxs("div",{className:"detail-output",children:[i.jsxs("div",{children:[i.jsxs("span",{children:[Jd(k)," · 已脱敏"]}),i.jsx("code",{children:l})]}),i.jsx("pre",{tabIndex:0,children:Qt(d)}),h!==void 0?i.jsx("button",{type:"button",className:"secondary-button",disabled:P,onClick:()=>{W(l,h)},children:P?"读取中…":"加载更多"}):null]}):null]})}function Ev({state:t,actions:r}){const l=t.skills,a=t.mcpServers;return i.jsxs("div",{className:"inspector-stack",children:[i.jsxs("section",{className:"capability-card",children:[i.jsxs("header",{children:[i.jsx("span",{className:"capability-icon",children:i.jsx(Q,{name:"spark",size:17})}),i.jsxs("div",{children:[i.jsx("h3",{children:"Skills"}),i.jsx("p",{children:"安全描述符,只读"})]}),i.jsx("span",{className:`readiness-pill ${l.length?"ready":""}`,children:l.length?`${l.length} 可用`:"未发现"})]}),l.length?i.jsx("ul",{className:"skill-list",children:l.map(d=>i.jsxs("li",{children:[i.jsxs("div",{children:[i.jsx("strong",{children:d.name}),i.jsxs("span",{children:[d.sourceScope," · ",d.providerId]})]}),i.jsx("p",{children:d.description}),d.requestedCapabilities.length?i.jsx("small",{children:d.requestedCapabilities.join(" · ")}):null]},d.id))}):i.jsx("p",{className:"muted-copy",children:"当前 Runtime 没有公开可用的 Skill 描述符。"})]}),i.jsxs("section",{className:"capability-card",children:[i.jsxs("header",{children:[i.jsx("span",{className:"capability-icon mcp",children:i.jsx(Q,{name:"branch",size:17})}),i.jsxs("div",{children:[i.jsx("h3",{children:"MCP Servers"}),i.jsx("p",{children:"只读配置与运行状态"})]}),i.jsx("span",{className:`readiness-pill ${a.length?"ready":""}`,children:a.length?`${a.length} 已配置`:"未配置"})]}),a.length?i.jsx("ul",{className:"server-list",children:a.map(d=>i.jsxs("li",{children:[i.jsx("span",{className:`state-dot state-${d.state}`,"aria-hidden":"true"}),i.jsxs("div",{children:[i.jsx("code",{children:d.name}),i.jsxs("small",{children:[d.transport," · ",d.toolCount," tools"]})]}),i.jsx("span",{children:d.disabled?"Disabled":d.state})]},d.id))}):i.jsx("p",{className:"muted-copy",children:"没有可用的 MCP Server。浏览器不会接收环境变量或认证 Header。"})]}),t.skillNextCursor||t.mcpNextCursor?i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>{r.loadMoreCapabilities()},disabled:!!t.pendingAction,children:"加载更多能力"}):null,i.jsxs("section",{className:"security-note",children:[i.jsx(Q,{name:"info",size:16}),i.jsxs("p",{children:[i.jsx("strong",{children:"能力边界由 Runtime 管理。"})," Web 端只展示描述符和状态,不加载外部插件代码,也不会绕过 ToolGateway。"]})]})]})}function Rv({state:t,actions:r}){const l=t.diagnostics,a=jo(t);return i.jsxs("div",{className:"inspector-stack",children:[i.jsxs("div",{className:"diagnostics-toolbar",children:[i.jsxs("div",{children:[i.jsx("span",{className:`connection-dot ${t.connection}`,"aria-hidden":"true"}),i.jsx("strong",{children:$v(t.connection)})]}),i.jsxs("button",{type:"button",className:"icon-text-button",onClick:()=>{r.refreshDiagnostics()},disabled:!!t.pendingAction,children:[i.jsx(Q,{name:"refresh",size:14}),"刷新"]})]}),i.jsxs("section",{className:"inspector-section",children:[i.jsx("div",{className:"inspector-section-heading",children:i.jsx("h3",{children:"Runtime"})}),i.jsxs("dl",{className:"diagnostic-list",children:[i.jsx(Cn,{label:"版本",value:t.bootstrap?.productVersion??"—"}),i.jsx(Cn,{label:"工作区",value:Lf(t.workspace)||"—"}),i.jsx(Cn,{label:"会话",value:t.activeSessionId?.slice(0,12)??"未选择"}),i.jsx(Cn,{label:"模式",value:String(l?.agentMode??t.mode.baseMode)}),i.jsx(Cn,{label:"权限",value:String(l?.permissionMode??t.settings?.sections.permissions.toolConfirmation.effectiveValue??"—")}),i.jsx(Cn,{label:"事件游标",value:`${t.lastCursor}`}),i.jsx(Cn,{label:"事件 UUID",value:t.lastEventId?.slice(0,12)??"—"}),i.jsx(Cn,{label:"会话快照",value:a.status}),i.jsx(Cn,{label:"保留事件",value:`${l?.eventStream?.retained??"—"}`}),i.jsx(Cn,{label:"快照请求",value:l?.session?`${l.session.snapshotRequests} 次 / 失败 ${l.session.snapshotFailures}`:"—"}),i.jsx(Cn,{label:"快照时延",value:l?.session?`${l.session.snapshotLastMs} ms(累计 ${l.session.snapshotTotalMs} ms)`:"—"}),i.jsx(Cn,{label:"Session actor",value:l?.session?`${l.session.actors.actorsCreated} 分配 / ${l.session.actors.actorsEvicted} LRU 驱逐`:"—"}),i.jsx(Cn,{label:"control plane",value:l?.session?`${l.session.controlPlaneInstalls} 次装载 / ${l.session.controlPlaneShutdowns} 次关闭`:"—"}),i.jsx(Cn,{label:"浏览器切换",value:`${t.clientTelemetry.sessionSwitches} 次 / 缓存命中 ${t.clientTelemetry.snapshotCacheHits} / 加载 ${t.clientTelemetry.snapshotLoads}`})]})]}),l?.contextUsage?i.jsx(lo,{title:"Context usage",value:l.contextUsage}):null,l?.tokenUsage?i.jsx(lo,{title:"Token usage",value:l.tokenUsage}):null,l?.harness?i.jsx(lo,{title:"Harness",value:l.harness}):null,t.loopStats?i.jsx(lo,{title:"Loop statistics",value:t.loopStats}):null,i.jsxs("section",{className:"security-note",children:[i.jsx(Q,{name:"check",size:16}),i.jsx("p",{children:"诊断载荷由 Host 脱敏。API Key、认证 Header 和环境值不会返回浏览器。"})]})]})}function Cn({label:t,value:r}){return i.jsxs("div",{children:[i.jsx("dt",{children:t}),i.jsx("dd",{title:r,children:r})]})}function lo({title:t,value:r}){return i.jsxs("details",{className:"json-section",children:[i.jsx("summary",{children:t}),i.jsx("pre",{tabIndex:0,children:Pa(r,12e3)})]})}function ho({text:t}){return i.jsxs("div",{className:"empty-small",children:[i.jsx("span",{className:"empty-line","aria-hidden":"true"}),i.jsx("p",{children:t})]})}function Pv(t){return/write|edit|patch|delete|move|rename|mkdir|create/i.test(t.name)}function Lf(t){const r=t.replace(/[\\/]+$/,"");return r.split(/[\\/]/).filter(Boolean).at(-1)??r}function Xd(t){return new Intl.NumberFormat("zh-CN",{notation:t>99999?"compact":"standard"}).format(t)}function Tv(t){return t<1e3?`${Math.round(t)}ms`:t<6e4?`${Math.round(t/1e3)}s`:`${Math.floor(t/6e4)}m ${Math.round(t%6e4/1e3)}s`}function Jd(t){return t<1024?`${t} B`:t<1048576?`${(t/1024).toFixed(1)} KB`:`${(t/1048576).toFixed(1)} MB`}function Mv(t){const r=Date.parse(t);return Number.isFinite(r)?new Date(r).toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"}):""}function $v(t){return t==="live"?"本地 Web Host 连接正常":t==="offline"?"浏览器离线":t==="replay-required"?"Web Host 事件流需要恢复":t==="closed"?"本地 Web Host 已关闭":t==="connecting"?"正在连接本地 Web Host":"正在重新连接本地 Web Host"}function Av({width:t,onPreview:r,onCommit:l}){return i.jsx(xf,{side:"right",className:"work-panel-resize-handle",minWidth:Ma,maxWidth:kf,defaultWidth:$a,label:"拖动或按方向键调整工作面板宽度",width:t,controls:"work-panel-detail",onPreview:r,onCommit:l})}const Dv=m.lazy(()=>Eo(()=>import("./TerminalPanel-CMLU7j08.js"),__vite__mapDeps([0,1])).then(t=>({default:t.TerminalPanel}))),Lv=m.lazy(()=>Eo(()=>import("./FilesPanel-ZwlVgxJi.js"),[]).then(t=>({default:t.FilesPanel}))),Ov=m.lazy(()=>Eo(()=>import("./GitPanel-Cnz52VRO.js"),__vite__mapDeps([2,3])).then(t=>({default:t.GitPanel}))),zv=m.lazy(()=>Eo(()=>import("./ReviewPanel-D_xxkVG_.js"),__vite__mapDeps([4,3])).then(t=>({default:t.ReviewPanel}))),Fv=["focus-work-panel-1","focus-work-panel-2","focus-work-panel-3","focus-work-panel-4","focus-work-panel-5"],ao=Object.freeze({agent:{label:"Agent",icon:"spark"},review:{label:"审阅",icon:"edit"},terminal:{label:"终端",icon:"terminal"},files:{label:"文件",icon:"workspace"},git:{label:"Git",icon:"branch"}}),qv=new Set(["starting","running","stopping","queued","waiting_approval","interrupted","failed"]);function Bv(t,r){return t?qv.has(t)?t==="failed"||t==="interrupted"?"failed":t==="queued"||t==="waiting_approval"?"queued":"running":null:r?"running":null}function Wv({state:t,actions:r,mode:l,expanded:a,activePanel:d,panelOrder:p,agentPanel:h,onExpand:g,onCollapse:k,onPanelChange:I,onAgentPanelChange:P,onWidthPreview:N,onWidthCommit:T,width:M,onSendToComposer:W}){const D=m.useRef(null),O=m.useRef(null),ne=m.useRef(null),F=m.useRef(a),we=m.useId(),Z=m.useRef(new Set([d]));Z.current.add(d);const ue=m.useRef(d==="terminal"||Z.current.has("terminal"));d==="terminal"&&(ue.current=!0);const[b,H]=m.useState(!1),fe=p&&p.length===ja.length?p:ja,re=t.workspaceResourceEpochs[t.workspaceId]??{files:0,git:0,review:0},Ce=t.sessionRuntimeById[t.activeSessionId??""]?.phase,_e=Bv(Ce,t.processing);m.useEffect(()=>{if(l!=="overlay"||!a)return;let Y=0,$=0;const X=()=>{Y+=1,O.current?.focus(),(document.activeElement===O.current||Y>=10)&&window.clearInterval($)};return $=window.setInterval(X,16),X(),()=>window.clearInterval($)},[a,l]),m.useEffect(()=>{const Y=F.current;if(F.current=a,!(l!=="dock"||Y===a)){if(!a){requestAnimationFrame(()=>D.current?.querySelector(`[data-work-panel-id="${d}"]`)?.focus());return}b&&(H(!1),requestAnimationFrame(()=>ne.current?.focus()))}},[d,a,l,b]),m.useEffect(()=>{const Y=wo("toggle-work-panel"),$=X=>{if(Y&&xo(X,Y.tokens)){X.preventDefault(),a?k():(H(!0),g());return}const K=Fv.findIndex(A=>{const R=wo(A);return R?xo(X,R.tokens):!1}),w=fe[K];w&&(X.preventDefault(),!(a&&d===w)&&(I(w),a||g()))};return window.addEventListener("keydown",$),()=>window.removeEventListener("keydown",$)},[a,l,k,g,I]);const Re=Y=>{if(Y.key==="Escape"&&a&&!Y.target.closest('[role="alertdialog"], .terminal-host, input, textarea, [contenteditable]')){Y.preventDefault(),k();return}if(l!=="overlay"||!a||Y.key!=="Tab")return;const $=Uv(D.current);if(!$.length){Y.preventDefault(),D.current?.focus();return}const X=$.indexOf(document.activeElement);Y.shiftKey&&X<=0?(Y.preventDefault(),$.at(-1)?.focus()):!Y.shiftKey&&(X<0||X===$.length-1)&&(Y.preventDefault(),$[0].focus())},B=Y=>{if(l==="overlay"){I(Y),a||(H(!0),g());return}if(a&&d===Y){k();return}a||H(!0),I(Y),g()},ve=(Y=!1)=>i.jsx("nav",{className:Y?"work-panel-rail work-panel-rail-overlay":"work-panel-rail","aria-label":"工作面板快捷入口","aria-orientation":Y?"horizontal":"vertical",children:fe.map(($,X)=>{const K=ao[$],w=d===$;return i.jsxs("button",{type:"button",className:"work-panel-rail-button","data-work-panel-id":$,"aria-label":`打开${K.label}面板`,"aria-current":w?"page":void 0,title:`${K.label} · ⌘⇧${X+1}`,onClick:()=>B($),children:[i.jsx(Q,{name:K.icon,size:17}),$==="terminal"&&_e?i.jsx(La,{state:_e,className:"rail-status-dot",describe:!1}):null]},$)})}),G=Y=>i.jsxs("div",{id:`${we}-${Y}`,className:"work-panel-pane",role:"tabpanel","aria-label":ao[Y].label,hidden:Y!==d,children:[Y==="agent"?i.jsx(Sv,{state:t,actions:r,tab:h,onTabChange:P}):null,Y==="review"?i.jsx(zv,{workspaceId:t.workspaceId,refreshEpoch:re.review,actions:r,onSendToComposer:W}):null,Y==="terminal"?i.jsx(Dv,{workspaceId:t.workspaceId,workspacePath:t.workspace,styleNonce:t.bootstrap?.nonce??"",available:!!t.bootstrap?.capabilities.terminal,actions:r}):null,Y==="files"?i.jsx(Lv,{workspaceId:t.workspaceId,refreshEpoch:re.files,actions:r}):null,Y==="git"?i.jsx(Ov,{workspaceId:t.workspaceId,refreshEpoch:re.git,actions:r,onSendToComposer:W}):null]},Y),de=d==="terminal"||!ue.current?[d]:[d,"terminal"];return i.jsxs("aside",{ref:D,id:"work-panel",className:`work-panel work-panel-${l} ${a?"drawer-open work-panel-expanded":"work-panel-collapsed"}`,role:l==="overlay"?"dialog":void 0,"aria-modal":l==="overlay"&&a?!0:void 0,"aria-label":"工作面板","data-mode":l,"data-state":a?"expanded":"collapsed",tabIndex:l==="overlay"&&a?-1:void 0,onKeyDownCapture:Re,children:[l==="dock"?i.jsxs("div",{className:"work-panel-dock-body",children:[a?i.jsxs("section",{ref:ne,id:"work-panel-detail",className:"work-panel-detail","aria-label":"工作面板内容",tabIndex:-1,children:[i.jsxs("header",{className:"work-panel-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"PROJECT WORKSPACE"}),i.jsx("h2",{children:ao[d].label})]}),i.jsx("div",{className:"work-panel-header-actions",children:i.jsx("button",{type:"button",className:"icon-button",onClick:k,"aria-label":"收起工作面板","aria-controls":"work-panel-detail","aria-expanded":"true",title:"收起(Esc)",children:i.jsx(Q,{name:"sidebar"})})})]}),i.jsx("div",{className:"work-panel-content",children:i.jsx(m.Suspense,{fallback:i.jsx("p",{className:"resource-loading",children:"正在加载工作面板…"}),children:de.map(Y=>G(Y))})})]}):null,ve()]}):i.jsxs("div",{id:"work-panel-detail",className:"work-panel-detail",hidden:!a,children:[i.jsxs("header",{className:"work-panel-header",children:[i.jsxs("div",{children:[i.jsx("span",{className:"eyebrow",children:"PROJECT WORKSPACE"}),i.jsx("h2",{children:ao[d].label})]}),i.jsx("div",{className:"work-panel-header-actions",children:i.jsx("button",{ref:O,type:"button",className:"icon-button",onClick:k,"aria-label":"关闭工作面板","aria-controls":"work-panel-detail","aria-expanded":"true",children:i.jsx(Q,{name:"close"})})})]}),ve(!0),i.jsx("div",{className:"work-panel-content",children:i.jsx(m.Suspense,{fallback:i.jsx("p",{className:"resource-loading",children:"正在加载工作面板…"}),children:de.map(Y=>G(Y))})})]}),l==="dock"&&a?i.jsx(Av,{width:M,onPreview:N,onCommit:T}):null]})}function Uv(t){return t?Array.from(t.querySelectorAll('a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])')).filter(r=>!r.hasAttribute("disabled")&&!r.closest("[inert]")&&!r.closest("[hidden]")&&r.getClientRects().length>0):[]}function Hv(t,r,l){const a=r==="light"||r==="system"&&l;return t==="orion-blocksmith"?a?"#d7d0c1":"#15191b":a?"#f4f5f8":"#090b10"}function Gt(t,r){return t.some(l=>l.id===r.id)?t.map(l=>l.id===r.id?r:l):[r,...t]}const ko=1e4,Vv=256,Kv=256,Qv=128,Gv=8,Of=8*1024*1024,Yv=64;function Xv(t=vf,r){switch(r.type){case"baseline_loaded":{const l=t.workspaceId!==r.bootstrap.workspaceId||t.activeSessionId!==r.bootstrap.activeSessionId?Hs(t):t,a=af(r.diagnostics,l.mode);return{...l,boot:"ready",bootError:void 0,bootstrap:r.bootstrap,contextRevision:r.bootstrap.contextRevision,workspaceId:r.bootstrap.workspaceId,workspace:r.workspaces.activePath||r.bootstrap.workspace,workspaces:r.workspaces.workspaces,sessions:r.sessions,workspaceSessions:{...l.workspaceSessions,[r.bootstrap.workspaceId]:{status:"ready",items:r.sessions,nextCursor:r.sessionNextCursor}},workspaceNextCursor:r.workspaces.nextCursor,sessionNextCursor:r.sessionNextCursor,activeSessionId:r.bootstrap.activeSessionId,sessionSync:r.bootstrap.activeSessionId?{...l.sessionSync,[r.bootstrap.activeSessionId]:{status:l.sessionProjectionById[r.bootstrap.activeSessionId]?"refreshing":"loading",requestId:null}}:l.sessionSync,settings:r.settings,diagnostics:r.diagnostics,skills:r.skills,skillNextCursor:r.skillNextCursor,mcpServers:r.mcpServers,mcpNextCursor:r.mcpNextCursor,toolDetails:r.toolDetails,toolDetailNextCursor:r.toolDetailNextCursor,notice:l.notice?.domain==="session-snapshot"?null:l.notice,processing:!!r.diagnostics.processing,mode:a,statusMessage:r.bootstrap.configured?"本地 Web Host 已就绪":"模型尚未配置,任务提交已停用",announcement:r.bootstrap.configured?"本地 Web Host 已就绪":"Orion 尚未配置模型"}}case"boot_failed":return{...t,boot:"error",bootError:r.message,connection:oy()?"reconnecting":"offline",announcement:`启动失败:${r.message}`};case"connection_changed":return t.connection==="replay-required"?t:{...t,connection:r.phase,connectionAttempt:r.attempt,announcement:ly(r.phase,r.attempt)};case"event_received":return Jv(t,r.envelope);case"session_snapshot_started":return t.contextRevision!==r.contextRevision||t.workspaceId!==r.workspaceId?t:co(qs(t,r.sessionId,{status:r.cached?"refreshing":"loading",requestId:r.requestId}),{snapshotLoads:1});case"session_snapshot_loaded":{const l=r.snapshot.session.id;return!lf(t,r.contextRevision,r.workspaceId)||!of(t,l,r.requestId)?t:t.activeSessionId!==l?r.requestId===void 0?t:sf(ef(t,r.snapshot),l):sf(Zd(t,r.snapshot,r.advanceEventCursor!==!1),l)}case"composer_loaded":return r.composer.sessionId!==t.activeSessionId||r.composer.workspaceId!==t.workspaceId||r.composer.contextRevision!==t.contextRevision?t:zf(t,r.composer);case"model_catalog_loaded":return{...t,modelCatalog:r.catalog};case"durable_session_metadata_loaded":return t.contextRevision!==r.contextRevision||t.workspaceId!==r.workspaceId?t:t.activeSessionId!==r.snapshot.session.id?ef(t,r.snapshot):r.snapshot.runtime.active!==!0?t:ny(t,r.snapshot);case"older_transcript_loaded":{if(t.activeSessionId!==r.snapshot.session.id||!t.sessionSnapshot)return t;const l=new Set(t.transcript.map(d=>d.id)),a=Ff(r.snapshot).filter(d=>!l.has(d.id));return{...t,transcript:[...a,...t.transcript].sort((d,p)=>d.order-p.order).slice(-ko),sessionSnapshot:{...t.sessionSnapshot,transcript:{items:t.sessionSnapshot.transcript.items,nextCursor:r.snapshot.transcript.nextCursor}},announcement:`已加载 ${a.length} 条更早记录`}}case"sessions_loaded":return{...t,sessions:r.append?Kt(t.sessions,r.sessions,l=>l.id):r.sessions,sessionNextCursor:r.nextCursor,workspaceSessions:t.workspaceId?{...t.workspaceSessions,[t.workspaceId]:{status:"ready",items:r.append?Kt(t.sessions,r.sessions,l=>l.id):r.sessions,nextCursor:r.nextCursor}}:t.workspaceSessions};case"workspaces_loaded":return{...t,workspaceId:r.value.activeId||t.workspaceId,workspace:r.value.activePath||t.workspace,workspaces:r.append?Kt(t.workspaces,r.value.workspaces,l=>l.id):r.value.workspaces,workspaceNextCursor:r.value.nextCursor};case"workspace_sessions_loading":return{...t,workspaceSessions:{...t.workspaceSessions,[r.workspaceId]:{status:"loading",items:t.workspaceSessions[r.workspaceId]?.items??[],nextCursor:t.workspaceSessions[r.workspaceId]?.nextCursor??null}}};case"workspace_sessions_loaded":{const l=t.workspaceSessions[r.workspaceId],a=r.append?Kt(l?.items??[],r.sessions,d=>d.id):r.sessions;return{...t,sessions:r.workspaceId===t.workspaceId?a:t.sessions,sessionNextCursor:r.workspaceId===t.workspaceId?r.nextCursor:t.sessionNextCursor,workspaceSessions:{...t.workspaceSessions,[r.workspaceId]:{status:"ready",items:a,nextCursor:r.nextCursor}}}}case"workspace_sessions_failed":return{...t,workspaceSessions:{...t.workspaceSessions,[r.workspaceId]:{status:"error",items:t.workspaceSessions[r.workspaceId]?.items??[],nextCursor:t.workspaceSessions[r.workspaceId]?.nextCursor??null,error:r.detail}}};case"session_updated":return tf(t,a=>ty(a,r.session));case"session_archived":{const l=nf(t,r.session.id),a=t.archivedSessions.items.some(d=>d.id===r.session.id);return{...l,archivedSessions:a?l.archivedSessions:{...l.archivedSessions,status:"ready",items:[r.session,...l.archivedSessions.items]}}}case"session_restored":{const l=tf(t,a=>[r.session,...a.filter(d=>d.id!==r.session.id)]);return{...l,archivedSessions:{...l.archivedSessions,items:l.archivedSessions.items.filter(a=>a.id!==r.session.id)}}}case"session_deleted":{const l={...t.sessionRuntimeById};return delete l[r.sessionId],{...nf(t,r.sessionId),sessionRuntimeById:l,archivedSessions:{...t.archivedSessions,items:t.archivedSessions.items.filter(a=>a.id!==r.sessionId)}}}case"archived_sessions_loading":return r.workspaceId!==t.workspaceId?t:{...t,archivedSessions:{status:"loading",items:t.archivedSessions.ownerWorkspaceId===r.workspaceId?t.archivedSessions.items:[],nextCursor:t.archivedSessions.nextCursor,ownerWorkspaceId:t.archivedSessions.ownerWorkspaceId}};case"archived_sessions_loaded":{if(r.workspaceId!==t.workspaceId)return t;const l=r.append?Kt(t.archivedSessions.items,r.sessions,a=>a.id):r.sessions;return{...t,archivedSessions:{status:"ready",items:l,nextCursor:r.nextCursor,ownerWorkspaceId:r.workspaceId}}}case"archived_sessions_failed":return r.workspaceId!==t.workspaceId?t:{...t,archivedSessions:{...t.archivedSessions,status:"error",error:r.detail}};case"workspace_project_summary_loaded":return{...t,workspaceProjectSummaries:{...t.workspaceProjectSummaries,[r.summary.workspaceId]:r.summary}};case"settings_loaded":return{...t,settings:r.settings};case"settings_mirror_changed":return{...t,settings:r.snapshot.document??r.snapshot.lastGood,settingsMirror:r.snapshot};case"diagnostics_loaded":return{...t,diagnostics:r.diagnostics,processing:!!(r.diagnostics.processing??t.processing),mode:af(r.diagnostics,t.mode)};case"capabilities_loaded":return{...t,skills:r.append?Kt(t.skills,r.skills,l=>l.id):r.skills,skillNextCursor:r.skillNextCursor,mcpServers:r.append?Kt(t.mcpServers,r.mcpServers,l=>l.id):r.mcpServers,mcpNextCursor:r.mcpNextCursor};case"tool_details_loaded":return{...t,toolDetails:r.append?Kt(t.toolDetails,r.details,l=>`${l.sequence}:${l.callId}`):r.details,toolDetailNextCursor:r.nextCursor};case"pending_action":return{...t,pendingAction:r.label};case"notice":return{...t,notice:r.notice};case"approval_resolved":return t.permission?.id!==r.requestId?t:{...t,permission:null,announcement:r.approved?"工具权限已授予":"工具请求已拒绝"};case"snapshot_failed":{if(!lf(t,r.contextRevision,r.workspaceId))return t;if(!r.sessionId)return t.connection==="replay-required"?t:{...t,notice:{id:r.requestId??t.lastCursor,tone:"warning",title:"会话状态尚未同步",detail:r.detail},announcement:"会话状态尚未同步"};if(!of(t,r.sessionId,r.requestId)||r.sessionId!==t.activeSessionId&&r.requestId===void 0)return t;const l=co(qs(t,r.sessionId,{status:"failed",requestId:r.requestId??t.sessionSync[r.sessionId]?.requestId??null,error:r.detail}),{snapshotFailures:1});return r.sessionId!==t.activeSessionId||t.connection==="replay-required"?l:{...l,statusMessage:t.sessionSnapshot?.session.id===r.sessionId?"会话刷新失败,当前显示最近状态":"会话快照加载失败",notice:{id:r.requestId??t.lastCursor,tone:"warning",title:"会话快照尚未同步",detail:r.detail,domain:"session-snapshot",sessionId:r.sessionId},announcement:"当前会话快照尚未同步,写操作已暂停"}}case"reset_session_view":{const l=!!r.activeSessionId&&r.activeSessionId!==t.activeSessionId,a=!!(r.activeSessionId&&t.sessionProjectionById[r.activeSessionId]),d={...l?{sessionSwitches:1}:{},...a?{snapshotCacheHits:1}:{}};if(r.activeSessionId&&t.sessionProjectionById[r.activeSessionId]){const g=r.activeSessionId,k=Zd({...t,activeSessionId:g},t.sessionProjectionById[g],!1);return co({...qs(k,g,{status:"refreshing",requestId:t.sessionSync[g]?.requestId??null}),notice:t.notice?.domain==="session-snapshot"&&t.notice.sessionId!==g?null:t.notice,statusMessage:"已显示最近会话状态,正在同步…",announcement:"已切换到缓存会话,正在同步最新状态"},d)}const p={...Hs(t),activeSessionId:r.activeSessionId,notice:t.notice?.domain==="session-snapshot"&&t.notice.sessionId!==r.activeSessionId?null:t.notice,statusMessage:r.activeSessionId?"正在加载会话快照…":"请选择会话",announcement:r.activeSessionId?"正在加载会话快照":"会话已清除"},h=r.activeSessionId?qs(p,r.activeSessionId,{status:"loading",requestId:t.sessionSync[r.activeSessionId]?.requestId??null}):p;return co(h,d)}case"recovering":return{...t,connection:"connecting",replayReason:void 0,notice:null,announcement:"正在重新加载会话状态"}}}function Jv(t,r){if(r.type==="replay_reset")return{...t,lastCursor:r.cursor,lastEventId:r.eventId,connection:"replay-required",replayReason:r.payload.reason,notice:{id:r.cursor,tone:"warning",title:"需要重新载入会话",detail:r.payload.reason,domain:"transport"},announcement:"事件历史已超出保留窗口,需要重新载入会话"};if(t.connection==="replay-required"||r.cursor<=t.lastCursor)return t;const l={...t,lastCursor:r.cursor,lastEventId:r.eventId};if(r.type==="settings_invalidated")return{...l,announcement:r.payload.revision===t.settings?.revision?"Host 设置已同步":r.payload.state==="invalid"?"设置文档无效,仍保留上一次可用值":"Host 设置已更新,正在刷新"};if(r.type==="workspace_resource_invalidated"){const d={...t.workspaceResourceEpochs[r.payload.workspaceId]??{files:0,git:0,review:0}};for(const p of r.payload.resources)d[p]=r.cursor;return{...l,workspaceResourceEpochs:{...t.workspaceResourceEpochs,[r.payload.workspaceId]:d},announcement:"项目资源已变化,可用面板正在刷新"}}if(r.type==="workbench_state"){const a=t.workspaceId!==""&&t.workspaceId!==r.payload.workspaceId||t.workspace!==""&&t.workspace!==r.payload.workspace;return{...a?Hs(l):l,contextRevision:r.payload.contextRevision,workspaceId:r.payload.workspaceId,workspace:r.payload.workspace,activeSessionId:a?null:t.activeSessionId}}if(r.type==="composer_state_changed"){const a=r.payload.state;return a.sessionId!==l.activeSessionId||a.workspaceId!==l.workspaceId||a.contextRevision!==l.contextRevision?l:zf(l,a)}if(r.type==="session_runtime_changed"){const a=r.payload.runtime,d=l.sessionProjectionById[a.sessionId],p=Po(l.sessionRuntimeById,a),h=d?Ro(l.sessionProjectionById,{...d,sessionRuntime:a}):l.sessionProjectionById;return a.sessionId!==l.activeSessionId?{...l,sessionProjectionById:h,sessionRuntimeById:p}:{...l,sessionProjectionById:h,sessionRuntimeById:p,processing:["running","waiting_approval","stopping"].includes(a.phase),sessionSnapshot:l.sessionSnapshot?.session.id===a.sessionId?{...l.sessionSnapshot,sessionRuntime:a}:l.sessionSnapshot,composer:l.composer?.sessionId===a.sessionId?{...l.composer,sessionRuntime:a}:l.composer}}if(r.type==="workspace_mutation_changed"){if(r.sessionId!==l.activeSessionId)return l;const a=l.tools.find(p=>p.callId===r.payload.state.callId);if(!a)return l;const d={phase:r.payload.state.phase,...r.payload.state.queuePosition===void 0?{}:{queuePosition:r.payload.state.queuePosition}};return{...l,tools:Ea(l.tools,{...a,workspaceMutation:d}),announcement:d.phase==="queued"?`工具 ${a.name} 正在等待工作树写入`:d.phase==="running"?`工具 ${a.name} 已获得工作树写入权限`:l.announcement}}return r.sessionId!==null&&r.sessionId!==l.activeSessionId?l:r.type==="thread_event"?Zv(l,r.payload.value):ey(l,r.payload.value,r.eventId,r.cursor,r.timestamp)}function Zv(t,r){const l=r.payload;switch(l.type){case"thread.started":case"thread.resumed":return{...t,statusMessage:"会话线程已就绪"};case"thread.forked":return{...t,statusMessage:"分支线程已就绪"};case"turn.started":return{...t,processing:!0,statusMessage:l.data.mode==="plan"?"正在制定计划…":"Orion 正在处理…",announcement:"新回合已开始"};case"turn.queued":return{...t,statusMessage:"消息已进入 Runtime 队列"};case"turn.queue_expired":return{...t,notice:{id:t.lastCursor,tone:"warning",title:"一条排队消息已过期",detail:`队列项 ${l.data.queueId} 未在时限内开始。`}};case"turn.steered":return{...t,statusMessage:"已将补充指令送入当前回合"};case"turn.interrupt_requested":return{...t,statusMessage:"正在中断当前回合…"};case"turn.committed":return{...t,statusMessage:"回合结果已持久化"};case"plan.review_requested":return{...t,processing:!1,statusMessage:"计划已保存,等待审核",announcement:"计划已准备好,请审核后再执行"};case"plan.review_resolved":return{...t,statusMessage:l.data.action==="approve"?"计划已批准,正在进入 BUILD":l.data.action==="continue"?"已提交继续规划反馈":"计划已取消"};case"turn.completed":return{...t,processing:!1,permission:null,statusMessage:"任务已完成",announcement:"当前回合已完成"};case"turn.failed":return{...t,processing:!1,permission:null,statusMessage:"当前回合失败",notice:{id:t.lastCursor,tone:"error",title:"当前回合失败",detail:l.data.error},announcement:"当前回合失败"};case"turn.interrupted":return{...t,processing:!1,permission:null,statusMessage:"当前回合已中断",announcement:"当前回合已中断"};case"compact.started":return{...t,statusMessage:"正在压缩上下文…"};case"compact.completed":return{...t,statusMessage:"上下文压缩完成"};case"compact.failed":return{...t,statusMessage:"上下文压缩失败",notice:{id:t.lastCursor,tone:"warning",title:"上下文压缩失败",detail:l.data.error}};case"approval.requested":return{...t,statusMessage:`等待确认:${l.data.toolName}`};case"item.started":case"item.delta":case"item.completed":case"item.failed":case"item.interrupted":case"item.indeterminate":case"step.snapshot":case"capability.receipt":case"tool.receipt":return t}}function ey(t,r,l,a,d){switch(r.type){case"transcript_append":{const p={...r.entry,id:`web-entry-${a}`,eventId:l,order:a,receivedAt:d};return{...t,transcript:mo(t.transcript,p,ko)}}case"transcript_update":if(r.contentDelta!==void 0){const p=t.transcript.find(h=>h.id===r.id);if(!p||r.contentStart===void 0||(p.content??"").length!==r.contentStart){const h="流式回复基线已变化,需要重新载入会话。";return{...t,connection:"replay-required",replayReason:h,notice:{id:a,tone:"warning",title:"需要重新载入会话",detail:h},announcement:h}}}return{...t,transcript:t.transcript.map(p=>p.id===r.id?{...p,...r.patch,...r.contentDelta===void 0?{}:{content:`${p.content??""}${r.contentDelta}`}}:p)};case"transcript_finalize":return{...t,transcript:t.transcript.map(p=>p.id===r.id?{...p,...r.patch,live:!1}:p)};case"transcript_remove":return{...t,transcript:t.transcript.filter(p=>p.id!==r.id)};case"transcript_replace":{const p=Math.max(1,r.entries.length);return{...t,transcript:r.entries.slice(-ko).map((h,g)=>({...h,eventId:`${l}:${g}`,order:a-1+(g+1)/(p+1),receivedAt:d,live:!1}))}}case"transcript_clear":return{...Hs(t),activeSessionId:t.activeSessionId,statusMessage:"新会话已就绪"};case"status_changed":return{...t,statusMessage:r.message};case"permission_requested":return{...t,permission:{...r.request,eventId:l},announcement:`需要确认工具权限:${r.request.name}`};case"tool_started":{const p={callId:r.event.callId,eventId:l,order:a,name:r.event.name,args:r.event.args,sequence:r.event.sequence,state:"running",startedAt:d};return{...t,tools:Ea(t.tools,p),announcement:`工具 ${p.name} 已开始`}}case"tool_finished":{const p=t.tools.find(g=>g.callId===r.event.callId),h={callId:r.event.callId,eventId:p?.eventId??l,order:p?.order??a,name:r.event.name,args:r.event.args,sequence:r.event.sequence,state:r.event.skipped?"skipped":r.event.success?"success":"error",startedAt:p?.startedAt,finishedAt:d,duration:r.event.duration,summary:r.event.summary,error:r.event.error,outputBytes:r.event.outputBytes,artifactId:r.event.artifactRef?.id,authorization:r.event.authorization};return{...t,tools:Ea(t.tools,h),announcement:`工具 ${h.name} ${h.state==="success"?"已完成":h.state==="skipped"?"已跳过":"失败"}`}}case"edit_preview_requested":{const p={eventId:l,order:a,receivedAt:d,request:r.request};return{...t,edits:mo(t.edits,p,Vv)}}case"session_restored":return{...t,activeSessionId:r.event.sessionId,statusMessage:`已恢复 ${r.event.restoredMessages} 条消息`,announcement:"会话恢复完成",notice:r.event.warnings&&r.event.warnings.length>0?{id:a,tone:"warning",title:"会话已恢复,但有注意事项",detail:r.event.warnings.join(" ")}:t.notice};case"loop_stats_updated":return{...t,loopStats:r.stats};case"trace_event_recorded":return{...t,traces:mo(t.traces,r.event,Kv)};case"harness_diagnostics_updated":return{...t,diagnostics:{...t.diagnostics??{},harness:r.diagnostics}};case"subtask_event":{const p={...r.event,eventId:l,order:a,updatedAt:d},h=[...t.subtasks.filter(g=>g.taskId!==p.taskId),p].slice(-256);return{...t,subtasks:h}}case"research_event":return{...t,research:sy(t.research,r.event,l,a,d)};case"goal_event":return ry(t,r.event,d);case"effort_event":return{...t,effort:r.event};case"followup_queue_changed":return{...t,queue:r.snapshot};case"processing_changed":return{...t,processing:r.processing,permission:r.processing?t.permission:null,announcement:r.processing?"Orion 开始处理任务":"Orion 已完成当前处理"};case"agent_mode_changed":return{...t,mode:r.snapshot};case"clear_view":return{...t,transcript:[],tools:[],edits:[]};case"shutdown_requested":return{...t,connection:"closed",processing:!1,permission:null,statusMessage:r.reason??"Web Host 已关闭",announcement:"Orion Web Host 已关闭"};case"session_picker_requested":case"model_picker_requested":return t}}function Zd(t,r,l=!0){const a=Ff(r).slice(-ko),d=Bf(r.runtime.agentMode)?r.runtime.agentMode:t.mode.baseMode,p=r.pendingApprovals[0],h=qf(r.goal);return{...Hs(t),lastCursor:l?Math.max(t.lastCursor,r.eventCursor):t.lastCursor,activeSessionId:r.session.id,sessionProjectionById:Ro(t.sessionProjectionById,r),sessionRuntimeById:Po(t.sessionRuntimeById,r.sessionRuntime),sessions:Gt(t.sessions,r.session),workspaceSessions:t.workspaceId?{...t.workspaceSessions,[t.workspaceId]:{status:"ready",items:Gt(t.workspaceSessions[t.workspaceId]?.items??t.sessions,r.session),nextCursor:t.workspaceSessions[t.workspaceId]?.nextCursor??t.sessionNextCursor}}:t.workspaceSessions,transcript:a,permission:p?{id:p.id,name:p.toolName,reason:p.reason,args:{...p.sanitizedArguments},eventId:`snapshot:${p.id}`}:null,processing:r.runtime.processing,statusMessage:r.runtime.status,mode:r.composer.mode??{baseMode:d,pendingBaseMode:null},queue:{items:r.composer.queue.items.map(g=>({...g})),limit:r.composer.queue.limit},goal:h,plan:r.plan??null,composer:r.composer,sessionSnapshot:r,diagnostics:{...t.diagnostics??{},activeSessionId:r.session.id,processing:r.runtime.processing,agentMode:d,permissionMode:r.runtime.permissionMode,contextUsage:r.runtime.contextUsage,tokenUsage:r.runtime.tokenUsage,plan:r.plan?.body??null,recoveryDiagnostics:r.recoveryDiagnostics},announcement:"会话快照已同步"}}function ef(t,r){const l=t.workspaceId?{...t.workspaceSessions,[t.workspaceId]:{status:"ready",items:Gt(t.workspaceSessions[t.workspaceId]?.items??t.sessions,r.session),nextCursor:t.workspaceSessions[t.workspaceId]?.nextCursor??t.sessionNextCursor}}:t.workspaceSessions;return{...t,sessionProjectionById:Ro(t.sessionProjectionById,r),sessionRuntimeById:Po(t.sessionRuntimeById,r.sessionRuntime),sessions:Gt(t.sessions,r.session),workspaceSessions:l}}function zf(t,r){const l=t.sessionProjectionById[r.sessionId],a=l?Ro(t.sessionProjectionById,{...l,sessionRuntime:r.sessionRuntime,composer:r}):t.sessionProjectionById;return{...t,composer:r,sessionSnapshot:t.sessionSnapshot?.session.id===r.sessionId?{...t.sessionSnapshot,sessionRuntime:r.sessionRuntime,composer:r}:t.sessionSnapshot,sessionProjectionById:a,sessionRuntimeById:Po(t.sessionRuntimeById,r.sessionRuntime),processing:r.processing,mode:r.mode,queue:{items:r.queue.items.map(d=>({...d})),limit:r.queue.limit},diagnostics:{...t.diagnostics??{},contextUsage:r.contextUsage,agentMode:r.mode.baseMode}}}function ny(t,r){const l=Gt(t.sessions,r.session),a=t.workspaceSessions[t.workspaceId],d=!t.composer||t.composer.controlRevision===r.composer.controlRevision?r.composer:t.composer;return{...t,sessions:l,workspaceSessions:{...t.workspaceSessions,[t.workspaceId]:{status:"ready",items:Gt(a?.items??t.sessions,r.session),nextCursor:a?.nextCursor??t.sessionNextCursor}},goal:qf(r.goal),plan:r.plan,composer:d,sessionSnapshot:t.sessionSnapshot?.session.id===r.session.id?{...t.sessionSnapshot,session:r.session,goal:r.goal,plan:r.plan,composer:d,recoveryDiagnostics:r.recoveryDiagnostics}:t.sessionSnapshot,diagnostics:{...t.diagnostics??{},plan:r.plan?.body??null,recoveryDiagnostics:r.recoveryDiagnostics}}}function Ff(t){return t.transcript.items.map((r,l)=>{const a=Number.parseInt(r.id.split(":").at(-1)??"",10);return{id:r.id,role:r.role,content:r.content,eventId:`snapshot:${r.id}`,order:-1e9+(Number.isSafeInteger(a)?a:l),receivedAt:iy(r.timestamp),live:!1}})}function qf(t){if(!t||!zs(t.state))return null;const r=t.state;if(typeof r.goalId!="string"||typeof r.objective!="string"||typeof r.status!="string")return null;const l=zs(r.budget)?r.budget:null,a=zs(r.lastStopDecision)?r.lastStopDecision:null,d=a&&zs(a.reason)?uo(a.reason.message):uo(r.stopReason),p=zs(r.criteria)?{passed:tt(r.criteria.passed),total:tt(r.criteria.total),failed:tt(r.criteria.failed),stale:tt(r.criteria.stale)}:void 0;return{goalId:r.goalId,revision:tt(r.revision,tt(r.generation,1)),objective:r.objective,status:r.status,tokenBudget:wa(r.tokenBudget)??wa(l?.maxTokens),tokensUsed:tt(r.tokensUsed),timeUsedMs:tt(r.timeUsedMs,tt(r.elapsedMs)),continuationCount:tt(r.continuationCount),updatedAt:tt(r.updatedAt),stopReason:d,criteria:p,planRevision:wa(r.planRevision),planPhase:uo(r.planPhase),nextAction:uo(r.nextAction),auditRemaining:Array.isArray(r.auditRemaining)?r.auditRemaining.filter(h=>typeof h=="string"):void 0}}function Kt(t,r,l){const a=new Map(t.map(d=>[l(d),d]));for(const d of r)a.set(l(d),d);return[...a.values()]}function ty(t,r){const l=t.findIndex(d=>d.id===r.id);if(l<0)return[r,...t];const a=[...t];return a[l]=r,a}function nf(t,r){const l=t.workspaceId,a=l?t.workspaceSessions[l]:void 0,d=(a?.items??t.sessions).filter(p=>p.id!==r);return{...t,sessions:l?d:t.sessions,workspaceSessions:l?{...t.workspaceSessions,[l]:{status:(a?.status??"ready")==="error"?"error":"ready",items:d,nextCursor:a?.nextCursor??null,error:a?.error}}:t.workspaceSessions}}function tf(t,r){const l=t.workspaceId,a=l?t.workspaceSessions[l]:void 0,d=a?.items??t.sessions,p=r(d),h=a?.status==="error"?"error":a?.status==="loading"?"loading":"ready";return{...t,sessions:l?p:t.sessions,workspaceSessions:l?{...t.workspaceSessions,[l]:{status:h,items:p,nextCursor:a?.nextCursor??null,error:a?.error}}:t.workspaceSessions}}function ry(t,r,l){switch(r.type){case"goal_updated":case"goal_restored":return{...t,goal:r.goal,goalActivity:Qr(t.goalActivity,r.type,"Goal 状态已更新",l)};case"goal_completed":return{...t,goal:r.goal,goalActivity:Qr(t.goalActivity,r.type,r.audit.verificationSummary,l),announcement:"Goal 已完成并通过运行时审计"};case"goal_cleared":return{...t,goal:null,goalEvidence:[],goalActivity:Qr(t.goalActivity,r.type,r.reason,l)};case"goal_plan_updated":return{...t,goal:t.goal?{...t.goal,planRevision:r.planRevision,planPhase:r.phase,nextAction:r.nextAction}:t.goal,goalActivity:Qr(t.goalActivity,r.type,r.nextAction??`Plan phase: ${r.phase}`,l)};case"goal_evidence_recorded":{const a=r.evidence;return{...t,goalEvidence:[...t.goalEvidence.filter(d=>d.id!==a.id),a].slice(-256)}}case"goal_continuation":return{...t,goalActivity:Qr(t.goalActivity,`${r.type}:${r.phase}`,r.reason,l)};case"goal_audit_failed":return{...t,goalActivity:Qr(t.goalActivity,r.type,r.summary,l),notice:{id:Date.parse(l),tone:"warning",title:"Goal 审计尚未通过",detail:r.summary}}}}function sy(t,r,l,a,d){const h=t.find(k=>k.packetId===r.packetId)??{packetId:r.packetId,eventId:l,order:a,updatedAt:d,stage:"running",sources:[],conflicts:[]};let g;switch(r.type){case"research_started":g={...h,eventId:l,order:a,updatedAt:d,objective:r.objective,mode:r.mode,stage:"running"};break;case"research_source":{const k={id:r.sourceId,provider:r.provider,status:r.status,title:r.title,location:r.displayUrl??r.canonicalUrl??r.projectPath,failureReason:r.failureReason};g={...h,eventId:l,order:a,updatedAt:d,sources:[...h.sources.filter(I=>I.id!==k.id),k].slice(-64)};break}case"research_conflict":g={...h,eventId:l,order:a,updatedAt:d,conflicts:[...h.conflicts.filter(k=>k!==r.claimId),r.claimId].slice(-64)};break;case"research_completed":g={...h,eventId:l,order:a,updatedAt:d,stage:r.stage,auditStatus:r.auditStatus,conclusion:r.conclusion,summary:r.summary};break}return[...t.filter(k=>k.packetId!==r.packetId),g].slice(-128)}function Ea(t,r){return[...t.filter(l=>l.callId!==r.callId),r].sort((l,a)=>l.order-a.order).slice(-1e3)}function Ro(t,r){const l=Object.entries(t).filter(([d])=>d!==r.session.id);l.push([r.session.id,r]);let a=l.reduce((d,[,p])=>d+rf(p),0);for(;l.length>1&&(l.length>Gv||a>Of);){const d=l.shift();d&&(a-=rf(d[1]))}return Object.freeze(Object.fromEntries(l))}function Po(t,r){const l=Object.entries(t).filter(([a])=>a!==r.sessionId);return l.push([r.sessionId,r]),Object.freeze(Object.fromEntries(l.slice(-64)))}function rf(t){try{return JSON.stringify(t).length*2}catch{return Of}}function Hs(t){return{...t,transcript:[],tools:[],edits:[],subtasks:[],research:[],permission:null,processing:!1,statusMessage:"",queue:{items:[],limit:16},goal:null,goalEvidence:[],goalActivity:[],sessionSnapshot:null,composer:null,modelCatalog:null,plan:null,loopStats:null,traces:[]}}function qs(t,r,l){const a={...t.sessionSync};delete a[r],a[r]=l;const d=Object.keys(a).length-Yv;return d>0&&Object.keys(a).filter(p=>p!==t.activeSessionId&&p!==r).slice(0,d).forEach(p=>delete a[p]),{...t,sessionSync:a}}function co(t,r){const l={sessionSwitches:t.clientTelemetry.sessionSwitches+(r.sessionSwitches??0),snapshotCacheHits:t.clientTelemetry.snapshotCacheHits+(r.snapshotCacheHits??0),snapshotLoads:t.clientTelemetry.snapshotLoads+(r.snapshotLoads??0),snapshotFailures:t.clientTelemetry.snapshotFailures+(r.snapshotFailures??0)};return{...t,clientTelemetry:l}}function sf(t,r){const l=qs(t,r,{status:"ready",requestId:t.sessionSync[r]?.requestId??null});return l.notice?.domain!=="session-snapshot"||l.notice.sessionId!==r?l:{...l,notice:null}}function of(t,r,l){return l===void 0||t.sessionSync[r]?.requestId===l}function lf(t,r,l){return(r===void 0||t.contextRevision===r)&&(l===void 0||t.workspaceId===l)}function Qr(t,r,l,a){return mo(t,{type:r,message:l,timestamp:a},Qv)}function mo(t,r,l){const a=[...t,r];return a.length<=l?a:a.slice(a.length-l)}function af(t,r){const l=t.agentMode;return Bf(l)?{baseMode:l,pendingBaseMode:null}:r}function Bf(t){return t==="interactive"||t==="plan"||t==="auto"}function iy(t){const r=new Date(t);return Number.isFinite(r.getTime())?r.toISOString():new Date(0).toISOString()}function zs(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function tt(t,r=0){return typeof t=="number"&&Number.isFinite(t)?t:r}function wa(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}function uo(t){return typeof t=="string"&&t?t:void 0}function oy(){return typeof navigator>"u"||navigator.onLine}function ly(t,r){return t==="live"?"本地 Web Host 事件流已连接":t==="offline"?"浏览器已离线,本地 Web Host 将在网络恢复后重连":t==="reconnecting"?`正在重新连接本地 Web Host,第 ${Math.max(1,r)} 次尝试`:t==="connecting"?"正在连接本地 Web Host":t==="replay-required"?"本地 Web Host 事件历史需要重新载入":"本地 Web Host 已关闭"}const cf="orion.web.theme",uf="orion.web.motion";function ay(t){const r=ff(cf),l=ff(uf),a=cy(r),d=uy(l),p=[],h=[];return r!==null&&h.push(cf),l!==null&&h.push(uf),t.sections.appearance.theme.explicitValue===void 0&&a&&p.push({op:"set",key:"appearance.theme",value:a}),t.sections.appearance.motion.explicitValue===void 0&&d&&p.push({op:"set",key:"appearance.motion",value:d}),{operations:p,keysToClear:h}}function df(t){if(!(typeof window>"u"))for(const r of t)try{window.localStorage.removeItem(r)}catch{}}function ff(t){if(typeof window>"u")return null;try{return window.localStorage.getItem(t)}catch{return null}}function cy(t){return t==="system"||t==="light"||t==="dark"?t:null}function uy(t){return t==="system"||t==="reduced"?t:null}class dy{constructor(r){Wn(this,"read");Wn(this,"snapshot",Object.freeze({status:"idle",document:null,lastGood:null,stale:!1,error:null,generation:0}));Wn(this,"listeners",new Set);Wn(this,"inFlight",null);Wn(this,"rerun",!1);Wn(this,"generation",0);Wn(this,"disposed",!1);this.read=r}getSnapshot(){return this.snapshot}subscribe(r){return this.listeners.add(r),()=>this.listeners.delete(r)}ensure(){return this.snapshot.document||this.inFlight?this.inFlight??Promise.resolve(this.snapshot):this.refresh()}refresh(){if(this.disposed)return Promise.resolve(this.snapshot);if(this.inFlight)return this.rerun=!0,this.inFlight;const r=Promise.resolve().then(()=>this.run());return this.inFlight=r,r}accept(r){return this.disposed?this.snapshot:(this.generation+=1,this.inFlight&&(this.rerun=!0),this.publishDocument(r))}invalidate(r,l){return this.snapshot.document?.revision===r&&(l==="ready"?this.snapshot.document.state==="ready":this.snapshot.document.state==="invalid")?Promise.resolve(this.snapshot):(this.setSnapshot({...this.snapshot,stale:!0}),this.refresh())}reset(){this.disposed||(this.generation+=1,this.rerun=!1,this.setSnapshot({status:"idle",document:null,lastGood:null,stale:!1,error:null,generation:this.generation}))}dispose(){this.disposed=!0,this.generation+=1,this.listeners.clear()}async run(){try{do{this.rerun=!1;const r=++this.generation;this.setSnapshot({...this.snapshot,status:this.snapshot.document?"ready":"loading",error:null,generation:r});try{const l=await this.read();if(this.disposed)return this.snapshot;if(r!==this.generation)continue;this.publishDocument(l)}catch(l){if(this.disposed)return this.snapshot;if(r!==this.generation)continue;this.setSnapshot({...this.snapshot,status:this.snapshot.document?"ready":"unavailable",stale:!0,error:l instanceof Error?l.message:"设置读取失败。",generation:r})}}while(this.rerun&&!this.disposed);return this.snapshot}finally{if(this.inFlight=null,this.rerun&&!this.disposed)return this.refresh()}}publishDocument(r){const l=r.state==="ready"?r:this.snapshot.lastGood;return this.setSnapshot({status:"ready",document:r,lastGood:l,stale:!1,error:null,generation:this.generation}),this.snapshot}setSnapshot(r){this.snapshot=Object.freeze(r);for(const l of this.listeners)l()}}function fy(t,r,l){if(t)return t;const a=new Set(r.map(d=>d.id));return l&&a.has(l)?l:r[0]?.id??null}const py=7,hy=2;function my(){const t=m.useMemo(()=>new ig,[]),r=m.useMemo(()=>new dy(()=>t.settings()),[t]),[l,a]=m.useReducer(Xv,vf),[d,p]=m.useState(0),h=m.useRef(l),g=m.useRef(null),k=m.useRef(0),I=m.useRef(0),P=m.useRef(new Map),N=m.useRef(0),T=m.useRef(0),M=m.useRef(new Map),W=m.useRef(()=>{}),D=m.useRef(!1);h.current=l,m.useEffect(()=>r.subscribe(()=>{a({type:"settings_mirror_changed",snapshot:r.getSnapshot()})}),[r]);const O=m.useCallback((j,S=Ee(h.current),L={})=>{const se=`${S.workspaceId}:${S.expectedContextRevision}:${j}`,ie=M.current.get(se);if(ie&&!L.force)return ie.promise;const Ae=++T.current;a({type:"session_snapshot_started",sessionId:j,requestId:Ae,cached:!!h.current.sessionProjectionById[j],contextRevision:S.expectedContextRevision,workspaceId:S.workspaceId});const Oe=t.sessionSnapshot(j,S).then(Ze=>(pf(Ze,j,S),a({type:"session_snapshot_loaded",snapshot:Ze,requestId:Ae,contextRevision:S.expectedContextRevision,workspaceId:S.workspaceId,advanceEventCursor:g.current===null}),Ze)).catch(Ze=>{const bn=Yr(Ze);throw a({type:"snapshot_failed",sessionId:j,detail:bn,requestId:Ae,contextRevision:S.expectedContextRevision,workspaceId:S.workspaceId}),new Ne(bn,Ze instanceof Ne?Ze.status:503,"session_snapshot_sync_failed",Ze instanceof Ne?Ze.type:void 0)}).finally(()=>{M.current.get(se)?.requestId===Ae&&M.current.delete(se)});return M.current.set(se,{requestId:Ae,promise:Oe}),Oe},[t]),ne=m.useCallback(async()=>{const j=++I.current;try{const S=await t.bootstrap(),L={expectedContextRevision:S.contextRevision,workspaceId:S.workspaceId};r.reset(),r.accept(S.settings);const[se,ie,Ae]=await Promise.all([t.listWorkspaces(L),t.listSessions(L),r.refresh()]),Oe=vy(S.workspaceId,ie.sessions,S.activeSessionId);Fs(S.workspaceId,Oe);const Ze=Object.freeze({...S,activeSessionId:Oe}),bn=Oe?await t.sessionSnapshot(Oe,L).then(en=>(pf(en,Oe,L),{snapshot:en,error:void 0})).catch(en=>({snapshot:null,error:en})):{snapshot:null,error:void 0},Sr=await gy(t,r,Ae.document??Ae.lastGood??S.settings,L);if(j!==I.current)return;a({type:"baseline_loaded",bootstrap:Ze,workspaces:se,sessions:ie.sessions,sessionNextCursor:ie.nextCursor,diagnostics:{},settings:Sr,skills:[],skillNextCursor:null,mcpServers:[],mcpNextCursor:null,toolDetails:[],toolDetailNextCursor:null}),bn.snapshot&&a({type:"session_snapshot_loaded",snapshot:bn.snapshot,contextRevision:L.expectedContextRevision,workspaceId:L.workspaceId}),bn.error&&a({type:"snapshot_failed",sessionId:Oe,detail:Yr(bn.error),contextRevision:L.expectedContextRevision,workspaceId:L.workspaceId}),W.current();const Cr=ie.sessions.map(en=>en.id).filter(en=>en!==Oe).slice(0,py);W.current=Cy(()=>{j===I.current&&Ny(Cr,hy,async en=>{j===I.current&&await O(en,L).catch(()=>{})})}),t.workspaceProjectSummary(S.workspaceId,L).then(en=>{j===I.current&&a({type:"workspace_project_summary_loaded",summary:en})}).catch(()=>{}),Promise.all([t.diagnostics(L).catch(()=>({})),t.skills(L).catch(()=>({skills:[],nextCursor:null})),t.mcp(L).catch(()=>({servers:[],nextCursor:null})),t.toolDetails(L).catch(()=>({details:[],nextCursor:null}))]).then(([en,Qs,Gs,Ys])=>{j===I.current&&(a({type:"diagnostics_loaded",diagnostics:en}),a({type:"capabilities_loaded",skills:Qs.skills,skillNextCursor:Qs.nextCursor,mcpServers:Gs.servers,mcpNextCursor:Gs.nextCursor}),a({type:"tool_details_loaded",details:Ys.details,nextCursor:Ys.nextCursor}))})}catch(S){throw S}},[t,O,r]),F=m.useCallback(async()=>{let j;for(let S=0;S<3;S+=1)try{await ne();return}catch(L){if(j=L,!jy(L)||S===2)break;await Sy(100*3**S)}throw a({type:"boot_failed",message:Yr(j)}),j},[ne]);m.useEffect(()=>{if(D.current)return;D.current=!0;let j=!0;return F().catch(()=>{}),()=>{j=!1}},[F]),m.useEffect(()=>()=>{W.current()},[]);const we=l.bootstrap!==null;m.useEffect(()=>{if(!we)return;const j=t.connectEvents({cursor:h.current.lastCursor,onEvent:S=>{if(a({type:"event_received",envelope:S}),_y(S)){const L=h.current;if(S.sessionId&&L.contextRevision&&L.workspaceId){const se=S.sessionId,ie=++N.current;P.current.set(se,ie);const Ae=L.contextRevision,Oe=L.workspaceId;t.sessionSnapshot(se,{expectedContextRevision:Ae,workspaceId:Oe}).then(Ze=>{P.current.get(se)===ie&&a({type:"durable_session_metadata_loaded",snapshot:Ze,contextRevision:Ae,workspaceId:Oe})}).catch(()=>{}).finally(()=>{P.current.get(se)===ie&&P.current.delete(se)})}}S.type==="settings_invalidated"&&r.invalidate(S.payload.revision,S.payload.state)},onStatus:(S,L)=>a({type:"connection_changed",phase:S,attempt:L}),onProtocolError:S=>a({type:"notice",notice:{id:Date.now(),tone:"error",title:"收到无法识别的 Web Host 事件流消息",detail:S}})});return g.current=j,()=>{j.close(),g.current===j&&(g.current=null)}},[t,we,r,d]);const Z=m.useCallback(()=>{g.current?.close(),g.current=null},[]),ue=m.useCallback(()=>{p(j=>j+1)},[]);m.useEffect(()=>{!l.workspace||l.boot!=="ready"||l.pendingAction||l.bootstrap?.workspace!==l.workspace&&(Z(),F().catch(j=>mf(a,"工作区刷新失败",j)).finally(ue))},[F,Z,ue,l.boot,l.bootstrap?.workspace,l.pendingAction,l.workspace]),m.useEffect(()=>{l.boot==="ready"&&(l.pendingAction||!l.activeSessionId||l.bootstrap?.workspace===l.workspace&&l.sessionSnapshot?.session.id!==l.activeSessionId&&O(l.activeSessionId).catch(()=>{}))},[O,l.activeSessionId,l.boot,l.bootstrap?.workspace,l.pendingAction,l.sessionSnapshot,l.workspace]);const b=m.useCallback(async(j,S)=>{const L=++k.current;a({type:"pending_action",label:j});try{return await S()}catch(se){throw ky(se)||mf(a,`${j}失败`,se),se}finally{k.current===L&&a({type:"pending_action",label:null})}},[]),H=m.useCallback(async(j,S)=>b(j,async()=>{if(h.current.connection!=="live")throw new Ne("本地 Web Host 连接尚未就绪,请在连接恢复后重试。",409,"session_not_synchronized");const L=h.current.activeSessionId;if(!L)throw new Ne("当前没有可接收命令的活动会话。",409,"active_session_changed");const se=h.current.sessionSnapshot;if(!se||!gr(h.current))throw new Ne("当前会话快照尚未同步,请刷新后重试。",409,"session_runtime_revision_conflict");try{const ie=await t.command({...S,workspaceId:h.current.workspaceId,expectedContextRevision:h.current.contextRevision,expectedSessionId:L,expectedSessionRuntimeRevision:se.sessionRuntime.runtimeRevision});return xy(ie),ie}catch(ie){throw ie instanceof Ne&&["context_revision_conflict","active_session_changed","session_runtime_revision_conflict"].includes(ie.code??"")?(a({type:"snapshot_failed",sessionId:L,detail:ie.message,contextRevision:h.current.contextRevision,workspaceId:h.current.workspaceId}),new Ne(ie.message,ie.status,"session_runtime_revision_conflict",ie.type)):ie}}),[t,b]),fe=m.useCallback(async(j,S)=>b(j,async()=>{const L=h.current,se=L.composer;if(L.connection!=="live"||!L.activeSessionId||!gr(L)||!se||se.sessionId!==L.activeSessionId)throw new Ne("Composer 控制状态尚未与活动会话同步。",409,"composer_control_conflict");try{const ie=await t.composerAction(L.activeSessionId,{...S,workspaceId:L.workspaceId,expectedContextRevision:L.contextRevision,expectedSessionId:L.activeSessionId,expectedSessionRuntimeRevision:se.sessionRuntime.runtimeRevision,expectedControlRevision:se.controlRevision});return a({type:"composer_loaded",composer:ie.state}),ie}catch(ie){throw ie instanceof Ne&&["composer_control_conflict","context_revision_conflict","active_session_changed","session_runtime_revision_conflict"].includes(ie.code??"")?(a({type:"snapshot_failed",sessionId:L.activeSessionId,detail:ie.message,contextRevision:L.contextRevision,workspaceId:L.workspaceId}),new Ne(ie.message,ie.status,"composer_control_conflict",ie.type)):ie}}),[t,b]),re=m.useCallback(()=>b("重新连接",F),[F,b]),Ce=m.useCallback(()=>b("刷新诊断",async()=>{const j=++I.current,S=await t.diagnostics(Ee(h.current));j===I.current&&a({type:"diagnostics_loaded",diagnostics:S})}),[t,b]),_e=m.useCallback(()=>b("刷新工具详情",async()=>{const j=++I.current,S=await t.toolDetails(Ee(h.current));j===I.current&&a({type:"tool_details_loaded",details:S.details,nextCursor:S.nextCursor})}),[t,b]),Re=m.useCallback(()=>b("加载更多工作区",async()=>{const j=Ee(h.current),S=h.current.workspaceNextCursor;if(S)try{const L=await t.listWorkspaces(j,S);a({type:"workspaces_loaded",value:L,append:!0})}catch(L){if(!fo(L))throw L;a({type:"workspaces_loaded",value:await t.listWorkspaces(j)})}}),[t,b]),B=m.useCallback(()=>b("加载更多会话",async()=>{const j=h.current.sessionNextCursor;if(!j)return;const S=Ee(h.current);try{const L=await t.listSessions(S,j);a({type:"sessions_loaded",sessions:L.sessions,nextCursor:L.nextCursor,append:!0})}catch(L){if(!fo(L))throw L;const se=await t.listSessions(S);a({type:"sessions_loaded",sessions:se.sessions,nextCursor:se.nextCursor})}}),[t,b]),ve=m.useCallback(async(j,S=!1)=>{const L=Ee(h.current),se=h.current.workspaceSessions[j],ie=S?se?.nextCursor:void 0;if(S&&!ie)return;a({type:"workspace_sessions_loading",workspaceId:j});const Ae=t.workspaceProjectSummary(j,L).catch(()=>null);try{const Oe=await t.listWorkspaceSessions(j,L,ie??void 0);a({type:"workspace_sessions_loaded",workspaceId:j,sessions:Oe.sessions,nextCursor:Oe.nextCursor,append:S});const Ze=await Ae;Ze&&a({type:"workspace_project_summary_loaded",summary:Ze})}catch(Oe){throw a({type:"workspace_sessions_failed",workspaceId:j,detail:Yr(Oe)}),Oe}},[t]),G=m.useCallback(async j=>{const S=await t.workspaceProjectSummary(j,Ee(h.current));a({type:"workspace_project_summary_loaded",summary:S})},[t]),de=m.useCallback(()=>b("加载更多能力",async()=>{const j=Ee(h.current),S=h.current.skillNextCursor,L=h.current.mcpNextCursor;if(!(!S&&!L))try{const[se,ie]=await Promise.all([S?t.skills(j,S):Promise.resolve({skills:[],nextCursor:null}),L?t.mcp(j,L):Promise.resolve({servers:[],nextCursor:null})]);a({type:"capabilities_loaded",skills:se.skills,skillNextCursor:se.nextCursor,mcpServers:ie.servers,mcpNextCursor:ie.nextCursor,append:!0})}catch(se){if(!fo(se))throw se;const[ie,Ae]=await Promise.all([t.skills(j),t.mcp(j)]);a({type:"capabilities_loaded",skills:ie.skills,skillNextCursor:ie.nextCursor,mcpServers:Ae.servers,mcpNextCursor:Ae.nextCursor})}}),[t,b]),Y=m.useCallback(()=>b("加载更多工具详情",async()=>{const j=Ee(h.current),S=h.current.toolDetailNextCursor;if(S)try{const L=await t.toolDetails(j,S);a({type:"tool_details_loaded",details:L.details,nextCursor:L.nextCursor,append:!0})}catch(L){if(!fo(L))throw L;const se=await t.toolDetails(j);a({type:"tool_details_loaded",details:se.details,nextCursor:se.nextCursor})}}),[t,b]),$=m.useCallback(async()=>{const j=h.current;if(j.connection!=="replay-required"){if(!j.activeSessionId)return;await O(j.activeSessionId,Ee(j),{force:!0});return}await b("恢复本地 Web Host 事件流",async()=>{Z(),a({type:"recovering"});try{await F()}finally{ue()}})},[F,O,Z,ue,b]),X=m.useCallback(j=>b("切换工作区",async()=>{Z();try{const S=await t.activateWorkspace(j,Ee(h.current));a({type:"workspaces_loaded",value:S}),a({type:"reset_session_view",activeSessionId:null}),await F()}finally{ue()}}),[t,F,Z,ue,b]),K=m.useCallback(j=>{const S=h.current;if(S.activeSessionId===j&&S.sessionSnapshot&&S.sessionSync[j]?.status==="ready")return Promise.resolve();const L=Ee(S);return(async()=>{Fs(L.workspaceId,j),a({type:"reset_session_view",activeSessionId:j}),await O(j,L)})()},[O]),w=m.useCallback((j,S)=>j===h.current.workspaceId&&S?K(S):b("切换项目上下文",async()=>{const L=h.current,se=L.contextRevision;if(!se)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");if(j===L.workspaceId){Fs(j,S),a({type:"reset_session_view",activeSessionId:S}),S&&await O(S,Ee(L));return}Fs(j,S),Z(),++I.current;try{const ie=await t.activateContext({expectedContextRevision:se,workspaceId:j,sessionId:S});if(ie.contextRevision!==ie.bootstrap.contextRevision||ie.bootstrap.workspaceId!==j)throw new Ne("Host 返回的项目上下文不一致。",502,"context_response_invalid");a({type:"reset_session_view",activeSessionId:S}),await F()}catch(ie){throw ie instanceof Ne&&(ie.code==="context_revision_conflict"||ie.code==="active_session_changed")&&a({type:"snapshot_failed",sessionId:null,detail:ie.message}),ie}finally{ue()}}),[t,F,O,Z,ue,b,K]),A=m.useCallback((j,S)=>b(S?"置顶项目":"取消置顶",async()=>{await t.setWorkspacePinned(j,S,Ee(h.current)),a({type:"workspaces_loaded",value:await t.listWorkspaces(Ee(h.current))})}),[t,b]),R=m.useCallback(j=>b("移除项目",async()=>{const S=h.current;if(!S.contextRevision)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");await t.removeWorkspace(j,Ee(S)),Em(j),a({type:"workspaces_loaded",value:await t.listWorkspaces(Ee(h.current))})}),[t,b]),le=m.useCallback(()=>b("创建会话",async()=>{const j=Ee(h.current),S=await t.createSession(j);Fs(j.workspaceId,S.id),a({type:"sessions_loaded",sessions:Gt(h.current.sessions,S),nextCursor:h.current.sessionNextCursor}),a({type:"reset_session_view",activeSessionId:S.id}),await O(S.id,j)}),[t,O,b]),ge=K,ye=m.useCallback(()=>b("加载更早记录",async()=>{const j=h.current.sessionSnapshot,S=h.current.activeSessionId,L=j?.transcript.nextCursor;if(!(!j||!S||!L))try{const se=await t.sessionSnapshot(S,Ee(h.current),L);if(se.session.id!==j.session.id||se.threadId!==j.threadId||se.threadCursor!==j.threadCursor||se.projectionDigest!==j.projectionDigest)throw new Ne("加载历史记录时会话快照发生变化,正在恢复最新快照。",409,"transcript_cursor_stale");a({type:"older_transcript_loaded",snapshot:se})}catch(se){if(!(se instanceof Ne)||se.code!=="transcript_cursor_stale")throw se;Z(),a({type:"recovering"});try{await O(S,Ee(h.current),{force:!0})}finally{ue()}}}),[t,O,Z,ue,b]),be=m.useCallback((j,S)=>b("重命名会话",async()=>{const L=await t.renameSession(j,S,Ee(h.current)),se=Gt(h.current.sessions,L);a({type:"sessions_loaded",sessions:se,nextCursor:h.current.sessionNextCursor})}),[t,b]),ke=m.useCallback((j,S)=>b("更新会话标签",async()=>{const L=await t.updateSessionTags(j,S,Ee(h.current));a({type:"session_updated",session:L})}),[t,b]),Pe=m.useCallback(j=>b("归档会话",async()=>{const S=await t.archiveSession(j,Ee(h.current));a({type:"session_archived",session:S})}),[t,b]),He=m.useCallback(j=>b("还原会话",async()=>{const S=await t.restoreSession(j,Ee(h.current));a({type:"session_restored",session:S})}),[t,b]),Se=m.useCallback(j=>b("删除会话",async()=>{await t.deleteSession(j,Ee(h.current)),a({type:"session_deleted",sessionId:j})}),[t,b]),sn=m.useCallback(async(j,S=!1)=>{const L=Ee(h.current),se=h.current.archivedSessions,ie=S?se?.nextCursor:void 0;if(!(S&&!ie)){a({type:"archived_sessions_loading",workspaceId:j});try{const Ae=await t.listArchivedWorkspaceSessions(j,L,ie??void 0);a({type:"archived_sessions_loaded",workspaceId:j,sessions:Ae.sessions,nextCursor:Ae.nextCursor,append:S})}catch(Ae){throw a({type:"archived_sessions_failed",workspaceId:j,detail:Yr(Ae)}),Ae}}},[t]),Ye=m.useCallback((j,S)=>H("提交任务",{type:"submit",text:j,contextReferences:S}),[H]),pn=m.useCallback((j,S)=>H("加入队列",{type:"queue_followup",text:j,contextReferences:S}),[H]),Vn=m.useCallback(async(j,S)=>{await fe("移除排队消息",{type:"remove_queue_item",itemId:j,expectedItemRevision:S})},[fe]),Mn=m.useCallback(async(j,S,L)=>{await fe("编辑排队消息",{type:"edit_queue_item",itemId:j,expectedItemRevision:S,text:L})},[fe]),In=m.useCallback(async(j,S,L)=>{await fe("移动排队消息",{type:"move_queue_item",itemId:j,expectedItemRevision:S,targetIndex:L})},[fe]),gn=m.useCallback(async()=>{await H("清空队列",{type:"clear_followups"})},[H]),on=m.useCallback(async()=>{const j=h.current.sessionSnapshot?.sessionRuntime;if(!j||j.phase!=="queued"||!j.queueId)throw new Ne("排队任务已变化,请等待状态同步后重试。",409,"session_queue_conflict");await H("取消排队任务",{type:"cancel_queued_turn",queueId:j.queueId})},[H]),it=m.useCallback(async()=>{await H("中断任务",{type:"interrupt"})},[H]),Kn=m.useCallback(async j=>{h.current.mode.baseMode===j&&!h.current.mode.pendingBaseMode||await fe("切换模式",{type:"set_agent_mode",mode:j})},[fe]),Qn=m.useCallback(async j=>{await fe(j===null?"继承项目权限":"切换会话权限",j===null?{type:"clear_permission_override"}:{type:"set_permission_override",value:j})},[fe]),It=m.useCallback(()=>b("加载模型目录",async()=>{const j=h.current;if(!j.activeSessionId)return;const S=await t.modelCatalog(j.activeSessionId,Ee(j));a({type:"model_catalog_loaded",catalog:S})}),[t,b]),Yt=m.useCallback(async(j,S)=>{await fe("切换会话模型",{type:"select_model",modelId:j,...S?{effort:S}:{}})},[fe]),J=m.useCallback(async()=>{await fe("压缩上下文",{type:"compact_context"})},[fe]),pe=m.useCallback(async(j,S,L)=>{await fe("审核计划",{type:"review_plan",planDigest:j,action:S,...L?{feedback:L}:{}})},[fe]),je=m.useCallback(async(j,S="once")=>{const L=h.current.permission;L&&(await H(j?"确认工具权限":"拒绝工具权限",{type:"permission_decision",requestPermissionId:L.id,approved:j,scope:S}),a({type:"approval_resolved",requestId:L.id,approved:j}))},[H]),De=m.useCallback(async(j,S)=>{await H("更新 Goal",{type:"goal_control",goalAction:j,objective:S});const L=++I.current;Z();try{const se=h.current.activeSessionId,ie=Ee(h.current),[Ae]=await Promise.all([t.diagnostics(ie),se?O(se,ie,{force:!0}):Promise.resolve()]);if(L!==I.current)return;a({type:"diagnostics_loaded",diagnostics:Ae})}finally{ue()}},[t,O,Z,ue,H]),$n=m.useCallback(async()=>{const j=await r.refresh(),S=j.document??j.lastGood;if(!S)throw new Ne(j.error??"设置尚不可用。",503);return S},[r]),An=m.useCallback(async(j,S,L)=>{if(S.length<1||S.length>20)throw new Ne("设置变更必须包含 1 到 20 个字段。",400,"settings_invalid_operation");const se=await t.updateSettings(j,S,Ee(h.current),L);return r.accept(se.settings),se},[t,r]),Dn=m.useCallback(async()=>{await t.openSettingsDocument()},[t]),ft=m.useCallback((j,S=0)=>t.readToolDetail(j,Ee(h.current),S),[t]),ns=m.useCallback((j,S)=>t.listFiles(Ee(h.current),j,S),[t]),ts=m.useCallback((j,S)=>t.readFileContent(j,Ee(h.current),S),[t]),Vs=m.useCallback(j=>t.gitStatus(Ee(h.current),j),[t]),yr=m.useCallback(j=>t.gitLog(Ee(h.current),j),[t]),xr=m.useCallback((j,S)=>t.gitDiff(j,Ee(h.current),S),[t]),wr=m.useCallback(()=>t.review(Ee(h.current)),[t]),kr=m.useCallback(async()=>(await t.terminals(Ee(h.current))).terminals,[t]),jr=m.useCallback(async(j,S)=>{const L=h.current;if(!L.contextRevision||!L.workspaceId)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");return t.createTerminal({expectedContextRevision:L.contextRevision,workspaceId:L.workspaceId,cols:j,rows:S})},[t]),pt=m.useCallback(async j=>{const S=h.current;if(!S.contextRevision||!S.workspaceId)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");return t.terminalAttachTicket(j,{expectedContextRevision:S.contextRevision,workspaceId:S.workspaceId})},[t]),ht=m.useCallback(async j=>{const S=h.current;if(!S.contextRevision||!S.workspaceId)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");await t.closeTerminal(j,{expectedContextRevision:S.contextRevision,workspaceId:S.workspaceId})},[t]),rs=m.useCallback(j=>t.terminalSocket(j),[t]),ss=m.useCallback(()=>a({type:"notice",notice:null}),[]),Ks=m.useMemo(()=>({retryBoot:re,refreshDiagnostics:Ce,refreshToolDetails:_e,loadMoreWorkspaces:Re,loadMoreSessions:B,loadWorkspaceSessions:ve,refreshWorkspaceProjectSummary:G,loadMoreCapabilities:de,loadMoreToolDetails:Y,recoverSession:$,switchWorkspace:X,activateContext:w,setWorkspacePinned:A,removeWorkspace:R,createSession:le,activateSession:ge,loadOlderTranscript:ye,renameSession:be,updateSessionTags:ke,archiveSession:Pe,restoreSession:He,deleteSession:Se,loadArchivedWorkspaceSessions:sn,submit:Ye,queue:pn,removeQueued:Vn,editQueued:Mn,moveQueued:In,clearQueue:gn,cancelQueuedTurn:on,interrupt:it,setMode:Kn,setPermissionOverride:Qn,loadModelCatalog:It,selectModel:Yt,compactContext:J,reviewPlan:pe,answerPermission:je,controlGoal:De,refreshSettings:$n,updateSettings:An,openSettingsDocument:Dn,readToolDetail:ft,listFiles:ns,readFileContent:ts,gitStatus:Vs,gitLog:yr,gitDiff:xr,review:wr,terminals:kr,createTerminal:jr,terminalAttachTicket:pt,closeTerminal:ht,terminalSocket:rs,dismissNotice:ss}),[ge,w,ht,jr,xr,yr,Vs,ns,ye,de,B,Y,Re,It,ve,je,gn,on,J,pe,De,le,ss,Mn,it,pn,ts,ft,wr,$,Ce,$n,_e,G,Vn,R,be,He,ke,Pe,Se,sn,re,Kn,Qn,Yt,A,Ye,X,In,pt,rs,kr,An,Dn]);return{state:l,actions:Ks}}async function gy(t,r,l,a){let d=l;for(let p=0;p<2;p+=1){const h=ay(d);if(h.keysToClear.length===0||d.state!=="ready"||!d.writable)return d;if(h.operations.length===0)return df(h.keysToClear),d;try{const g=await t.updateSettings(d.revision,h.operations,a,Qe());return r.accept(g.settings),df(h.keysToClear),g.settings}catch(g){if(p===0&&g instanceof Ne&&g.code==="settings_revision_conflict"){const k=await r.refresh(),I=k.document??k.lastGood;if(I){d=I;continue}}return d}}return d}function Ee(t){if(!t.contextRevision||!t.workspaceId)throw new Ne("工作区上下文尚未完成同步。",409,"context_revision_conflict");return{expectedContextRevision:t.contextRevision,workspaceId:t.workspaceId}}function pf(t,r,l){if(!(t.session.id===r&&t.sessionRuntime.sessionId===r&&t.sessionRuntime.workspaceId===l.workspaceId&&t.composer.sessionId===r&&t.composer.workspaceId===l.workspaceId&&t.composer.contextRevision===l.expectedContextRevision))throw new Ne("Host 返回的会话快照身份与当前项目上下文不一致。",502,"session_snapshot_identity_mismatch")}const hf="orion.web.view-id.v1",Wf="orion.web.foreground-session.v1:";function vy(t,r,l){const a=Uf(`${Wf}${t}`);return fy(a,r,l)}function Fs(t,r){yy();const l=`${Wf}${t}`;try{r?globalThis.sessionStorage?.setItem(l,r):globalThis.sessionStorage?.removeItem(l)}catch{}}function yy(){const t=Uf(hf);if(t)return t;const r=globalThis.crypto?.randomUUID?.()??`view-${Date.now().toString(36)}`;try{globalThis.sessionStorage?.setItem(hf,r)}catch{}return r}function Uf(t){try{return globalThis.sessionStorage?.getItem(t)??null}catch{return null}}function xy(t){if(t.result.includes("failed")||t.result.includes("invalid")||t.result.includes("rejected")||t.result.includes("ignored")||t.result.includes("full")||t.result==="empty")throw new Ne(wy(t),409)}function wy(t){if(t.detail)try{const r=JSON.parse(t.detail);if(typeof r.reason=="string")return r.reason}catch{}return`Runtime 未接受操作:${t.result}`}function mf(t,r,l,a="error"){t({type:"notice",notice:{id:Date.now(),tone:a,title:r,detail:Yr(l)}})}function Yr(t){return t instanceof Ne||t instanceof Error?t.message:"发生未知错误。"}function fo(t){return t instanceof Ne&&t.code==="collection_cursor_stale"}function ky(t){return t instanceof Ne&&["composer_control_conflict","session_runtime_revision_conflict","session_snapshot_sync_failed"].includes(t.code??"")}function jy(t){return t instanceof Ne&&["context_revision_conflict","runtime_busy","active_session_changed"].includes(t.code??"")}function Sy(t){return new Promise(r=>{globalThis.setTimeout(r,t)})}function Cy(t){if(typeof window<"u"&&"requestIdleCallback"in window){const l=window.requestIdleCallback(t,{timeout:1500});return()=>window.cancelIdleCallback(l)}const r=globalThis.setTimeout(t,150);return()=>globalThis.clearTimeout(r)}async function Ny(t,r,l){let a=0;const d=Array.from({length:Math.min(Math.max(1,r),t.length)},async()=>{for(;a<t.length;){const p=t[a];a+=1,p!==void 0&&await l(p)}});await Promise.all(d)}function _y(t){return t.sessionId?t.type==="runtime_event"?t.payload.value.type==="permission_requested":t.type!=="thread_event"?!1:["approval.requested","plan.review_requested","turn.completed","turn.failed","turn.interrupted"].includes(t.payload.value.payload.type):!1}const Iy=5e3;function by(t,r){return r||t.tone==="error"?null:Iy}function Ey({uid:t,notice:r,reconnectNeeded:l,snapshotRetryNeeded:a,pendingAction:d,onDismiss:p,onRecover:h}){const g=l||a,k=!g,I=m.useRef(p);m.useEffect(()=>{I.current=p},[p]);const P=by(r,g);m.useEffect(()=>{if(P===null)return;const M=window.setTimeout(()=>I.current(t),P);return()=>window.clearTimeout(M)},[P,t]);const N=`notice-${t}`,T=r.tone==="success"?"check":r.tone==="info"?"info":"warning";return i.jsxs("aside",{className:`workbench-notice notice-${r.tone}`,role:r.tone==="error"?"alert":"status","aria-labelledby":N,children:[i.jsx("span",{className:"notice-icon","aria-hidden":"true",children:i.jsx(Q,{name:T,size:17})}),i.jsxs("div",{children:[i.jsx("strong",{id:N,children:r.title}),r.detail?i.jsx("p",{children:r.detail}):null]}),l?i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>h(t),disabled:d,children:"重建连接"}):null,a?i.jsx("button",{type:"button",className:"secondary-button",onClick:()=>h(t),disabled:d,children:"重试同步"}):null,k?i.jsx("button",{type:"button",className:"icon-button",onClick:()=>p(t),"aria-label":"关闭通知",children:i.jsx(Q,{name:"close",size:15})}):null]})}function Ry(){const{state:t,actions:r}=my(),[l,a]=m.useState(!1),[d,p]=m.useState(dm),[h,g]=m.useState(!1),[k,I]=m.useState(!1),[P,N]=m.useState(!1),[T,M]=m.useState(null),[W,D]=m.useState(null),[O,ne]=m.useState(null),[F,we]=m.useState(!1),[Z,ue]=m.useState([]),b=m.useRef(0),H=m.useRef(t.notice),fe=m.useRef(null),[re,Ce]=m.useState(null),_e=m.useRef(null),Re=m.useRef(!1),B=m.useRef(!1),ve=m.useRef(null),G=Py(ve),de=ro(G,d),Y=de.projectNavigation.mode==="drawer",$=de.workPanel.mode==="drawer",X=de.workPanel.mode==="rail"&&d.workPanel.expanded,K=$||X&&h,w=$||X?h:de.workPanel.mode==="dock",A=K&&h,R=Y&&l,le=R||A,ge=t.settings?.state==="ready"?t.settings:t.settingsMirror.lastGood??t.settings,ye=ge?.sections.appearance.theme.effectiveValue,be=ge?.sections.appearance.motion.effectiveValue,ke=ge?.sections.appearance.style.effectiveValue??"orion-blocksmith",Pe=jo(t),He=m.useCallback(()=>{if(!t.workspace)return;const J=ge?.revision;if(!J)return;const pe=ge?.sections.appearance.theme.effectiveValue??"system",je=pe==="system"?"light":pe==="light"?"dark":"system";r.updateSettings(J,[{op:"set",key:"appearance.theme",value:je}],Qe()).catch(De=>{console.warn("[theme] 主题切换写入失败",De)})},[r,ge,t.workspace]),Se=m.useCallback(J=>{p(pe=>{const je={...pe,projectNavigation:{...pe.projectNavigation,...J}};return Ed(je),je})},[]),sn=m.useCallback(J=>{p(pe=>{const je={...pe,workPanel:{...pe.workPanel,...J}};return Ed(je),je})},[]),Ye=m.useCallback(()=>{_e.current=document.activeElement instanceof HTMLElement?document.activeElement:null},[]),pn=m.useCallback(()=>{requestAnimationFrame(()=>document.querySelector(".project-search input")?.focus())},[]),Vn=m.useCallback(()=>{requestAnimationFrame(()=>document.querySelector('.workspace-rail [aria-label="打开设置"]')?.focus())},[]),Mn=m.useCallback(()=>{Y&&(Ye(),g(!1),a(!0)),Vn()},[Vn,Y,Ye]),In=m.useCallback(()=>{Re.current=R,R&&(a(!1),g(!1),_e.current=null),I(!0)},[R]),gn=m.useCallback(()=>{I(!1),Re.current&&(Re.current=!1,B.current=!0,a(!0))},[]),on=m.useCallback(()=>{a(!1),g(!1),B.current=!1;const J=_e.current;_e.current=null,J&&requestAnimationFrame(()=>J.focus())},[]);m.useLayoutEffect(()=>{document.documentElement.dataset.theme=ye??"system",document.documentElement.dataset.motion=be??"system",document.documentElement.dataset.uiStyle=ke},[be,ye,ke]),m.useEffect(()=>{H.current=t.notice;const J=t.notice;J&&fe.current!==J.id&&(fe.current=J.id,ue(pe=>pe.some(je=>je.notice.id===J.id)?pe:[...pe,{uid:++b.current,notice:J}].slice(-4)))},[t.notice]),m.useEffect(()=>{const J=t.workspaceId;if(!J)return;const pe=t.workspaceSessions[J],je=t.archivedSessions;pe?.status==="ready"&&(je.ownerWorkspaceId===J&&je.status!=="idle"||r.loadArchivedWorkspaceSessions(J))},[r,t.archivedSessions,t.workspaceId,t.workspaceSessions]);const it=m.useCallback(J=>{const pe=Z.find(je=>je.uid===J);pe&&(H.current?.id===pe.notice.id&&r.dismissNotice(),ue(je=>je.filter(De=>De.uid!==J)))},[r,Z]),Kn=m.useCallback(J=>{const pe=Z.find(je=>je.uid===J);pe&&(H.current?.id===pe.notice.id&&r.dismissNotice(),ue(je=>je.filter(De=>De.uid!==J)),r.recoverSession())},[r,Z]);m.useEffect(()=>{const J=window.matchMedia("(prefers-color-scheme: light)"),pe=document.querySelector('meta[name="theme-color"]'),je=()=>{pe&&(pe.content=Hv(ke,ye??"system",J.matches))};return je(),J.addEventListener("change",je),()=>J.removeEventListener("change",je)},[ye,ke]),m.useEffect(()=>{a(!1),g(!1),_e.current=null,Re.current=!1,B.current=!1},[t.activeSessionId,t.workspace]),m.useLayoutEffect(()=>{a(!1),g(!1),_e.current=null,B.current=!1},[de.projectNavigation.mode,de.workPanel.mode,Y,$]),m.useEffect(()=>{const J=pe=>{const je=wo("toggle-project-navigation");if(je&&xo(pe,je.tokens)){if(pe.preventDefault(),Y){if(l){on();return}Ye(),g(!1),a(!0);return}const De=!d.projectNavigation.expanded,$n=!!(!De&&document.activeElement?.closest(".workspace-rail")),An=ro(G,{...d,projectNavigation:{...d.projectNavigation,expanded:De}});if(De&&An.projectNavigation.mode==="drawer"){Se({expanded:De}),Ye(),g(!1),a(!0);return}Se({expanded:De}),De?pn():$n&&requestAnimationFrame(()=>{(document.querySelector('.project-navigator-collapsed [aria-label="展开项目导航"]')??document.querySelector(".mobile-nav-toggle"))?.focus()})}};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[on,pn,l,Y,d.projectNavigation,Ye,G,Se]),m.useEffect(()=>{const J=wo("open-shortcut-help");if(!J)return;const pe=je=>{xo(je,J.tokens)&&(je.preventDefault(),we(De=>!De))};return window.addEventListener("keydown",pe),()=>window.removeEventListener("keydown",pe)},[]),m.useEffect(()=>{if(!le)return;const J=document.querySelector(".conversation-column"),pe=document.querySelector(".workspace-rail"),je=document.querySelector(".work-panel"),De=document.querySelector(".workbench-notice-stack"),$n=document.querySelector(".skip-link");J&&(J.inert=!0),pe&&(pe.inert=A),je&&(je.inert=l),De&&(De.inert=!0),$n&&($n.inert=!0);const An=window.setTimeout(()=>{const ft=A?je?.querySelector('[aria-label="关闭工作面板"]'):B.current?pe?.querySelector('[aria-label="打开设置"]'):pe?.querySelector(".drawer-close");B.current=!1,ft?.focus()},0),Dn=ft=>{ft.key==="Escape"&&!ft.target?.closest?.('[role="alertdialog"]')&&on()};return window.addEventListener("keydown",Dn),()=>{J&&(J.inert=!1),pe&&(pe.inert=!1),je&&(je.inert=!1),De&&(De.inert=!1),$n&&($n.inert=!1),window.clearTimeout(An),window.removeEventListener("keydown",Dn)}},[on,le,l,A,t.notice]);const Qn=m.useCallback(()=>{requestAnimationFrame(()=>document.querySelector("#main-content h1")?.focus())},[]),It=()=>{a(!1),r.createSession().then(Qn,Qn)},Yt=()=>{Re.current=!1,B.current=!1,I(!1),requestAnimationFrame(()=>document.querySelector("#orion-composer")?.focus())};return i.jsxs(i.Fragment,{children:[i.jsx("a",{className:"skip-link",href:"#main-content",children:"跳到主要内容"}),i.jsxs("div",{ref:ve,className:`workbench-shell project-navigation-${de.projectNavigation.mode} work-panel-mode-${de.workPanel.mode} ${X&&h?"work-panel-transient-overlay":""}`,style:{"--project-navigation-width":`${de.projectNavigation.widthPx}px`,"--project-navigation-preferred-width":`${d.projectNavigation.widthPx}px`,"--work-panel-width":`${de.workPanel.widthPx}px`,"--work-panel-preferred-width":`${d.workPanel.widthPx}px`},"aria-busy":t.boot==="loading",children:[i.jsx(mm,{state:t,drawerOpen:R,dockVisible:!0,collapsed:de.projectNavigation.mode==="rail",resizable:de.projectNavigation.mode==="dock",width:de.projectNavigation.widthPx,onCloseDrawer:on,onExpand:()=>{Y?(Ye(),g(!1),a(!0)):(Se({expanded:!0}),pn())},onCollapse:()=>{Y?on():Se({expanded:!1})},onOpenWorkspaceDialog:()=>N(!0),onOpenSettings:In,onLoadMoreWorkspaces:()=>{r.loadMoreWorkspaces()},onCreateSession:It,onLoadWorkspaceSessions:(J,pe)=>{r.loadWorkspaceSessions(J,pe)},onActivateContext:(J,pe)=>{a(!1),r.activateContext(J,pe).then(Qn,Qn)},onSetPinned:(J,pe)=>{r.setWorkspacePinned(J,pe)},onRemoveWorkspace:J=>{r.removeWorkspace(J)},onRefreshSummary:J=>{r.refreshWorkspaceProjectSummary(J)},onRenameSession:M,onSessionTags:D,onArchiveSession:J=>{r.archiveSession(J.id)},onDeleteSession:ne,onRestoreSession:J=>{r.restoreSession(J.id)},onWidthPreview:J=>{const pe=ro(G,{...d,projectNavigation:{...d.projectNavigation,widthPx:J}});ve.current?.style.setProperty("--project-navigation-width",`${pe.projectNavigation.widthPx}px`)},onWidthCommit:J=>Se({widthPx:J})}),i.jsx(Ng,{state:t,actions:r,navigationOpen:Y?R:de.projectNavigation.mode==="dock",inspectorExpanded:w,onOpenNavigation:()=>{if(!Y){Se({expanded:!0}),pn();return}Ye(),g(!1),a(!0)},onToggleInspector:()=>{if($||X){if(h){on();return}Ye(),a(!1),g(!0);return}sn({expanded:!d.workPanel.expanded})},onRevealSettings:Mn,onCreateSession:It,themePreference:ye,onCycleTheme:He,onShowShortcuts:()=>we(!0),composerInsertion:re}),i.jsx(Wv,{state:t,actions:r,mode:K?"overlay":"dock",expanded:w,activePanel:d.workPanel.activePanel,panelOrder:d.workPanel.order,agentPanel:d.workPanel.agentPanel,onExpand:()=>{$||X?g(!0):sn({expanded:!0})},onCollapse:()=>{K?on():sn({expanded:!1})},onPanelChange:J=>sn({activePanel:J}),onAgentPanelChange:J=>sn({agentPanel:J}),onWidthPreview:J=>{const pe=ro(G,{...d,workPanel:{...d.workPanel,widthPx:J}});ve.current?.style.setProperty("--work-panel-width",`${pe.workPanel.widthPx}px`)},onWidthCommit:J=>sn({widthPx:J}),width:de.workPanel.widthPx,onSendToComposer:J=>{Ce({id:Date.now(),text:J}),$&&on(),requestAnimationFrame(()=>document.querySelector("#orion-composer")?.focus())}}),le?i.jsx("button",{type:"button",className:"drawer-scrim","aria-label":"关闭侧边面板",tabIndex:-1,onClick:on}):null,Z.length>0?i.jsx("div",{className:"workbench-notice-stack","aria-live":"polite",children:Z.map(J=>i.jsx(Ey,{uid:J.uid,notice:J.notice,reconnectNeeded:t.connection==="replay-required",snapshotRetryNeeded:J.notice.domain==="session-snapshot"&&Pe.status==="failed",pendingAction:!!t.pendingAction,onDismiss:it,onRecover:Kn},J.uid))}):null,t.boot!=="ready"?i.jsxs("section",{className:"boot-screen",role:t.boot==="error"?"alert":"status",children:[i.jsxs("div",{className:"boot-mark","aria-hidden":"true",children:[i.jsx("span",{}),i.jsx("span",{}),i.jsx("span",{})]}),t.boot==="loading"?i.jsxs(i.Fragment,{children:[i.jsx("h1",{children:"正在启动 Orion Workbench"}),i.jsx("p",{children:"建立本地安全握手并恢复工作区状态…"}),i.jsx("span",{className:"boot-loader","aria-hidden":"true"})]}):i.jsxs(i.Fragment,{children:[i.jsx("h1",{children:"无法连接本地 Web Host"}),i.jsx("p",{children:t.bootError||"请确认 Orion Web Host 仍在运行。"}),i.jsxs("button",{type:"button",className:"primary-button",onClick:()=>{r.retryBoot()},disabled:!!t.pendingAction,children:[i.jsx(Q,{name:"refresh",size:15}),"重新连接"]})]})]}):null,i.jsx("div",{className:"sr-only","aria-live":"polite","aria-atomic":"true",children:t.announcement})]}),i.jsx(ev,{open:k,onClose:gn,state:t,actions:r,onGoToSessionControls:Yt}),i.jsx(qg,{open:P,onClose:()=>N(!1),state:t,onSelect:r.switchWorkspace,onLoadMore:r.loadMoreWorkspaces}),i.jsx(Bg,{open:!!T,onClose:()=>M(null),session:T,pending:!!t.pendingAction,onRename:r.renameSession}),i.jsx(Wg,{open:!!W,onClose:()=>D(null),session:W,pending:!!t.pendingAction,onSave:r.updateSessionTags}),i.jsx(Ug,{open:!!O,onClose:()=>ne(null),session:O,pending:!!t.pendingAction,onConfirm:r.deleteSession}),i.jsx(wv,{open:F,onClose:()=>we(!1)})]})}function Py(t){const[r,l]=m.useState(()=>typeof window>"u"?1440:Math.max(320,Math.round(window.innerWidth)));return m.useEffect(()=>{const a=t.current;if(!a)return;const d=()=>{const p=Math.max(320,Math.round(a.getBoundingClientRect().width));l(h=>h===p?h:p)};if(d(),typeof ResizeObserver<"u"){const p=new ResizeObserver(d);return p.observe(a),()=>p.disconnect()}return window.addEventListener("resize",d),()=>window.removeEventListener("resize",d)},[t]),r}const Hf=document.getElementById("root");if(!Hf)throw new Error("Orion Web root element was not found.");Qh.createRoot(Hf).render(i.jsx(qh.StrictMode,{children:i.jsx(Ry,{})}));export{Q as I,La as S,Ne as W,i as j,m as r,Qt as s};