autoforge-ai 0.1.20 → 0.1.21

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.
@@ -1,96 +0,0 @@
1
- import{a as Ap,u as pt,d as Ve,e as Je,r as f,j as n,g as Dp,Q as _p,f as Mp}from"./vendor-query-CcgjkJlA.js";import{r as kp,S as wh,R as Op,C as Rp,a as zh,T as Up,D as Bp,P as Lp,O as Hp,b as qp,c as _u,d as Gp,e as Qp,f as Yp,g as Vp,I as Xp,h as Kp,i as Zp,j as Fp,k as $p,l as Jp,m as Wp,n as Th,u as Ip,o as Pp,p as ey,q as Eh,A as ty,s as cl,t as Ah,v as ay,w as ny,x as Dh,y as ly,z as sy,B as iy}from"./vendor-radix-DIVIznMB.js";import{c as Hi,t as ry,a as cy,I as uy,B as Mu,U as oy,F as Ki,b as ku,C as ca,d as $t,E as Ou,X as tt,e as ua,R as en,P as Zi,S as tr,L as ze,Z as _h,A as Mh,W as hl,f as xl,g as Yi,h as Vi,i as Vm,H as dy,j as Fi,k as Xm,l as fy,m as zu,T as oa,n as gs,o as an,p as tn,G as gl,M as Ru,q as ar,r as dl,s as Sn,u as my,v as fl,w as hy,x as xy,y as gy,z as kh,D as py,J as Km,K as yy,N as vy,O as by,Q as jy,V as Oh,Y as $i,_ as Ji,$ as Rh,a0 as Ny,a1 as Tu,a2 as Sy,a3 as Cy,a4 as Wi,a5 as wy,a6 as zy,a7 as Uh,a8 as Ty,a9 as Ey,aa as Ay,ab as Dy,ac as _y,ad as Bh,ae as Lh,af as Zm,ag as My,ah as ky,ai as Oy,aj as Ry,ak as Uy,al as By,am as Ly,an as Hy,ao as qy,ap as Gy}from"./vendor-utils-CnTXttNm.js";import{M as Qy,r as Yy}from"./vendor-markdown-BxiGvyag.js";import{D as Vy,o as Xy}from"./vendor-xterm-DP_gxef0.js";import{r as Ky,M as Zy,u as Fy,a as $y,i as Jy,C as Wy,B as Iy,b as Py,c as e0,P as ul,H as Fm}from"./vendor-flow-CSXy01ye.js";(function(){const c=document.createElement("link").relList;if(c&&c.supports&&c.supports("modulepreload"))return;for(const m of document.querySelectorAll('link[rel="modulepreload"]'))o(m);new MutationObserver(m=>{for(const x of m)if(x.type==="childList")for(const p of x.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&o(p)}).observe(document,{childList:!0,subtree:!0});function d(m){const x={};return m.integrity&&(x.integrity=m.integrity),m.referrerPolicy&&(x.referrerPolicy=m.referrerPolicy),m.crossOrigin==="use-credentials"?x.credentials="include":m.crossOrigin==="anonymous"?x.credentials="omit":x.credentials="same-origin",x}function o(m){if(m.ep)return;m.ep=!0;const x=d(m);fetch(m.href,x)}})();var Nu={exports:{}},ds={},Su={exports:{}},Cu={};var $m;function t0(){return $m||($m=1,(function(s){function c(v,D){var ee=v.length;v.push(D);e:for(;0<ee;){var te=ee-1>>>1,ue=v[te];if(0<m(ue,D))v[te]=D,v[ee]=ue,ee=te;else break e}}function d(v){return v.length===0?null:v[0]}function o(v){if(v.length===0)return null;var D=v[0],ee=v.pop();if(ee!==D){v[0]=ee;e:for(var te=0,ue=v.length,se=ue>>>1;te<se;){var me=2*(te+1)-1,X=v[me],fe=me+1,he=v[fe];if(0>m(X,ee))fe<ue&&0>m(he,X)?(v[te]=he,v[fe]=ee,te=fe):(v[te]=X,v[me]=ee,te=me);else if(fe<ue&&0>m(he,ee))v[te]=he,v[fe]=ee,te=fe;else break e}}return D}function m(v,D){var ee=v.sortIndex-D.sortIndex;return ee!==0?ee:v.id-D.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var x=performance;s.unstable_now=function(){return x.now()}}else{var p=Date,y=p.now();s.unstable_now=function(){return p.now()-y}}var g=[],j=[],z=1,E=null,H=3,w=!1,B=!1,M=!1,C=!1,_=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,T=typeof setImmediate<"u"?setImmediate:null;function N(v){for(var D=d(j);D!==null;){if(D.callback===null)o(j);else if(D.startTime<=v)o(j),D.sortIndex=D.expirationTime,c(g,D);else break;D=d(j)}}function L(v){if(M=!1,N(v),!B)if(d(g)!==null)B=!0,I||(I=!0,q());else{var D=d(j);D!==null&&G(L,D.startTime-v)}}var I=!1,F=-1,ae=5,Y=-1;function le(){return C?!0:!(s.unstable_now()-Y<ae)}function W(){if(C=!1,I){var v=s.unstable_now();Y=v;var D=!0;try{e:{B=!1,M&&(M=!1,R(F),F=-1),w=!0;var ee=H;try{t:{for(N(v),E=d(g);E!==null&&!(E.expirationTime>v&&le());){var te=E.callback;if(typeof te=="function"){E.callback=null,H=E.priorityLevel;var ue=te(E.expirationTime<=v);if(v=s.unstable_now(),typeof ue=="function"){E.callback=ue,N(v),D=!0;break t}E===d(g)&&o(g),N(v)}else o(g);E=d(g)}if(E!==null)D=!0;else{var se=d(j);se!==null&&G(L,se.startTime-v),D=!1}}break e}finally{E=null,H=ee,w=!1}D=void 0}}finally{D?q():I=!1}}}var q;if(typeof T=="function")q=function(){T(W)};else if(typeof MessageChannel<"u"){var P=new MessageChannel,Z=P.port2;P.port1.onmessage=W,q=function(){Z.postMessage(null)}}else q=function(){_(W,0)};function G(v,D){F=_(function(){v(s.unstable_now())},D)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(v){v.callback=null},s.unstable_forceFrameRate=function(v){0>v||125<v?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ae=0<v?Math.floor(1e3/v):5},s.unstable_getCurrentPriorityLevel=function(){return H},s.unstable_next=function(v){switch(H){case 1:case 2:case 3:var D=3;break;default:D=H}var ee=H;H=D;try{return v()}finally{H=ee}},s.unstable_requestPaint=function(){C=!0},s.unstable_runWithPriority=function(v,D){switch(v){case 1:case 2:case 3:case 4:case 5:break;default:v=3}var ee=H;H=v;try{return D()}finally{H=ee}},s.unstable_scheduleCallback=function(v,D,ee){var te=s.unstable_now();switch(typeof ee=="object"&&ee!==null?(ee=ee.delay,ee=typeof ee=="number"&&0<ee?te+ee:te):ee=te,v){case 1:var ue=-1;break;case 2:ue=250;break;case 5:ue=1073741823;break;case 4:ue=1e4;break;default:ue=5e3}return ue=ee+ue,v={id:z++,callback:D,priorityLevel:v,startTime:ee,expirationTime:ue,sortIndex:-1},ee>te?(v.sortIndex=ee,c(j,v),d(g)===null&&v===d(j)&&(M?(R(F),F=-1):M=!0,G(L,ee-te))):(v.sortIndex=ue,c(g,v),B||w||(B=!0,I||(I=!0,q()))),v},s.unstable_shouldYield=le,s.unstable_wrapCallback=function(v){var D=H;return function(){var ee=H;H=D;try{return v.apply(this,arguments)}finally{H=ee}}}})(Cu)),Cu}var Jm;function a0(){return Jm||(Jm=1,Su.exports=t0()),Su.exports}var Wm;function n0(){if(Wm)return ds;Wm=1;var s=a0(),c=Ap(),d=kp();function o(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function m(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function x(e){var t=e,a=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(a=t.return),e=t.return;while(e)}return t.tag===3?a:null}function p(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function y(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function g(e){if(x(e)!==e)throw Error(o(188))}function j(e){var t=e.alternate;if(!t){if(t=x(e),t===null)throw Error(o(188));return t!==e?null:e}for(var a=e,l=t;;){var i=a.return;if(i===null)break;var r=i.alternate;if(r===null){if(l=i.return,l!==null){a=l;continue}break}if(i.child===r.child){for(r=i.child;r;){if(r===a)return g(i),e;if(r===l)return g(i),t;r=r.sibling}throw Error(o(188))}if(a.return!==l.return)a=i,l=r;else{for(var u=!1,h=i.child;h;){if(h===a){u=!0,a=i,l=r;break}if(h===l){u=!0,l=i,a=r;break}h=h.sibling}if(!u){for(h=r.child;h;){if(h===a){u=!0,a=r,l=i;break}if(h===l){u=!0,l=r,a=i;break}h=h.sibling}if(!u)throw Error(o(189))}}if(a.alternate!==l)throw Error(o(190))}if(a.tag!==3)throw Error(o(188));return a.stateNode.current===a?e:t}function z(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=z(e),t!==null)return t;e=e.sibling}return null}var E=Object.assign,H=Symbol.for("react.element"),w=Symbol.for("react.transitional.element"),B=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),C=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),R=Symbol.for("react.consumer"),T=Symbol.for("react.context"),N=Symbol.for("react.forward_ref"),L=Symbol.for("react.suspense"),I=Symbol.for("react.suspense_list"),F=Symbol.for("react.memo"),ae=Symbol.for("react.lazy"),Y=Symbol.for("react.activity"),le=Symbol.for("react.memo_cache_sentinel"),W=Symbol.iterator;function q(e){return e===null||typeof e!="object"?null:(e=W&&e[W]||e["@@iterator"],typeof e=="function"?e:null)}var P=Symbol.for("react.client.reference");function Z(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===P?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case M:return"Fragment";case _:return"Profiler";case C:return"StrictMode";case L:return"Suspense";case I:return"SuspenseList";case Y:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case B:return"Portal";case T:return e.displayName||"Context";case R:return(e._context.displayName||"Context")+".Consumer";case N:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case F:return t=e.displayName||null,t!==null?t:Z(e.type)||"Memo";case ae:t=e._payload,e=e._init;try{return Z(e(t))}catch{}}return null}var G=Array.isArray,v=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=d.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee={pending:!1,data:null,method:null,action:null},te=[],ue=-1;function se(e){return{current:e}}function me(e){0>ue||(e.current=te[ue],te[ue]=null,ue--)}function X(e,t){ue++,te[ue]=e.current,e.current=t}var fe=se(null),he=se(null),Xe=se(null),yt=se(null);function vt(e,t){switch(X(Xe,t),X(he,e),X(fe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?mm(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=mm(t),e=hm(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}me(fe),X(fe,e)}function ut(){me(fe),me(he),me(Xe)}function xt(e){e.memoizedState!==null&&X(yt,e);var t=fe.current,a=hm(t,e.type);t!==a&&(X(he,e),X(fe,a))}function Tt(e){he.current===e&&(me(fe),me(he)),yt.current===e&&(me(yt),rs._currentValue=ee)}var ne,oe;function je(e){if(ne===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);ne=t&&t[1]||"",oe=-1<a.stack.indexOf(`
2
- at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
3
- `+ne+e+oe}var De=!1;function xe(e,t){if(!e||De)return"";De=!0;var a=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(t){var $=function(){throw Error()};if(Object.defineProperty($.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct($,[])}catch(Q){var U=Q}Reflect.construct(e,[],$)}else{try{$.call()}catch(Q){U=Q}e.call($.prototype)}}else{try{throw Error()}catch(Q){U=Q}($=e())&&typeof $.catch=="function"&&$.catch(function(){})}}catch(Q){if(Q&&U&&typeof Q.stack=="string")return[Q.stack,U.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var i=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");i&&i.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var r=l.DetermineComponentFrameRoot(),u=r[0],h=r[1];if(u&&h){var b=u.split(`
4
- `),O=h.split(`
5
- `);for(i=l=0;l<b.length&&!b[l].includes("DetermineComponentFrameRoot");)l++;for(;i<O.length&&!O[i].includes("DetermineComponentFrameRoot");)i++;if(l===b.length||i===O.length)for(l=b.length-1,i=O.length-1;1<=l&&0<=i&&b[l]!==O[i];)i--;for(;1<=l&&0<=i;l--,i--)if(b[l]!==O[i]){if(l!==1||i!==1)do if(l--,i--,0>i||b[l]!==O[i]){var V=`
6
- `+b[l].replace(" at new "," at ");return e.displayName&&V.includes("<anonymous>")&&(V=V.replace("<anonymous>",e.displayName)),V}while(1<=l&&0<=i);break}}}finally{De=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?je(a):""}function Et(e,t){switch(e.tag){case 26:case 27:case 5:return je(e.type);case 16:return je("Lazy");case 13:return e.child!==t&&t!==null?je("Suspense Fallback"):je("Suspense");case 19:return je("SuspenseList");case 0:case 15:return xe(e.type,!1);case 11:return xe(e.type.render,!1);case 1:return xe(e.type,!0);case 31:return je("Activity");default:return""}}function js(e){try{var t="",a=null;do t+=Et(e,a),a=e,e=e.return;while(e);return t}catch(l){return`
7
- Error generating stack: `+l.message+`
8
- `+l.stack}}var rr=Object.prototype.hasOwnProperty,cr=s.unstable_scheduleCallback,ur=s.unstable_cancelCallback,rx=s.unstable_shouldYield,cx=s.unstable_requestPaint,At=s.unstable_now,ux=s.unstable_getCurrentPriorityLevel,Yu=s.unstable_ImmediatePriority,Vu=s.unstable_UserBlockingPriority,Ns=s.unstable_NormalPriority,ox=s.unstable_LowPriority,Xu=s.unstable_IdlePriority,dx=s.log,fx=s.unstable_setDisableYieldValue,vl=null,Dt=null;function Aa(e){if(typeof dx=="function"&&fx(e),Dt&&typeof Dt.setStrictMode=="function")try{Dt.setStrictMode(vl,e)}catch{}}var _t=Math.clz32?Math.clz32:xx,mx=Math.log,hx=Math.LN2;function xx(e){return e>>>=0,e===0?32:31-(mx(e)/hx|0)|0}var Ss=256,Cs=262144,ws=4194304;function nn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function zs(e,t,a){var l=e.pendingLanes;if(l===0)return 0;var i=0,r=e.suspendedLanes,u=e.pingedLanes;e=e.warmLanes;var h=l&134217727;return h!==0?(l=h&~r,l!==0?i=nn(l):(u&=h,u!==0?i=nn(u):a||(a=h&~e,a!==0&&(i=nn(a))))):(h=l&~r,h!==0?i=nn(h):u!==0?i=nn(u):a||(a=l&~e,a!==0&&(i=nn(a)))),i===0?0:t!==0&&t!==i&&(t&r)===0&&(r=i&-i,a=t&-t,r>=a||r===32&&(a&4194048)!==0)?t:i}function bl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function gx(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ku(){var e=ws;return ws<<=1,(ws&62914560)===0&&(ws=4194304),e}function or(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function jl(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function px(e,t,a,l,i,r){var u=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var h=e.entanglements,b=e.expirationTimes,O=e.hiddenUpdates;for(a=u&~a;0<a;){var V=31-_t(a),$=1<<V;h[V]=0,b[V]=-1;var U=O[V];if(U!==null)for(O[V]=null,V=0;V<U.length;V++){var Q=U[V];Q!==null&&(Q.lane&=-536870913)}a&=~$}l!==0&&Zu(e,l,0),r!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=r&~(u&~t))}function Zu(e,t,a){e.pendingLanes|=t,e.suspendedLanes&=~t;var l=31-_t(t);e.entangledLanes|=t,e.entanglements[l]=e.entanglements[l]|1073741824|a&261930}function Fu(e,t){var a=e.entangledLanes|=t;for(e=e.entanglements;a;){var l=31-_t(a),i=1<<l;i&t|e[l]&t&&(e[l]|=t),a&=~i}}function $u(e,t){var a=t&-t;return a=(a&42)!==0?1:dr(a),(a&(e.suspendedLanes|t))!==0?0:a}function dr(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function fr(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function Ju(){var e=D.p;return e!==0?e:(e=window.event,e===void 0?32:Bm(e.type))}function Wu(e,t){var a=D.p;try{return D.p=e,t()}finally{D.p=a}}var Da=Math.random().toString(36).slice(2),ot="__reactFiber$"+Da,bt="__reactProps$"+Da,Cn="__reactContainer$"+Da,mr="__reactEvents$"+Da,yx="__reactListeners$"+Da,vx="__reactHandles$"+Da,Iu="__reactResources$"+Da,Nl="__reactMarker$"+Da;function hr(e){delete e[ot],delete e[bt],delete e[mr],delete e[yx],delete e[vx]}function wn(e){var t=e[ot];if(t)return t;for(var a=e.parentNode;a;){if(t=a[Cn]||a[ot]){if(a=t.alternate,t.child!==null||a!==null&&a.child!==null)for(e=jm(e);e!==null;){if(a=e[ot])return a;e=jm(e)}return t}e=a,a=e.parentNode}return null}function zn(e){if(e=e[ot]||e[Cn]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Sl(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(o(33))}function Tn(e){var t=e[Iu];return t||(t=e[Iu]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function lt(e){e[Nl]=!0}var Pu=new Set,eo={};function ln(e,t){En(e,t),En(e+"Capture",t)}function En(e,t){for(eo[e]=t,e=0;e<t.length;e++)Pu.add(t[e])}var bx=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),to={},ao={};function jx(e){return rr.call(ao,e)?!0:rr.call(to,e)?!1:bx.test(e)?ao[e]=!0:(to[e]=!0,!1)}function Ts(e,t,a){if(jx(t))if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var l=t.toLowerCase().slice(0,5);if(l!=="data-"&&l!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+a)}}function Es(e,t,a){if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+a)}}function da(e,t,a,l){if(l===null)e.removeAttribute(a);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(a);return}e.setAttributeNS(t,a,""+l)}}function Ht(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function no(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Nx(e,t,a){var l=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var i=l.get,r=l.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(u){a=""+u,r.call(this,u)}}),Object.defineProperty(e,t,{enumerable:l.enumerable}),{getValue:function(){return a},setValue:function(u){a=""+u},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function xr(e){if(!e._valueTracker){var t=no(e)?"checked":"value";e._valueTracker=Nx(e,t,""+e[t])}}function lo(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var a=t.getValue(),l="";return e&&(l=no(e)?e.checked?"true":"false":e.value),e=l,e!==a?(t.setValue(e),!0):!1}function As(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}}var Sx=/[\n"\\]/g;function qt(e){return e.replace(Sx,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function gr(e,t,a,l,i,r,u,h){e.name="",u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"?e.type=u:e.removeAttribute("type"),t!=null?u==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Ht(t)):e.value!==""+Ht(t)&&(e.value=""+Ht(t)):u!=="submit"&&u!=="reset"||e.removeAttribute("value"),t!=null?pr(e,u,Ht(t)):a!=null?pr(e,u,Ht(a)):l!=null&&e.removeAttribute("value"),i==null&&r!=null&&(e.defaultChecked=!!r),i!=null&&(e.checked=i&&typeof i!="function"&&typeof i!="symbol"),h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.name=""+Ht(h):e.removeAttribute("name")}function so(e,t,a,l,i,r,u,h){if(r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"&&(e.type=r),t!=null||a!=null){if(!(r!=="submit"&&r!=="reset"||t!=null)){xr(e);return}a=a!=null?""+Ht(a):"",t=t!=null?""+Ht(t):a,h||t===e.value||(e.value=t),e.defaultValue=t}l=l??i,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=h?e.checked:!!l,e.defaultChecked=!!l,u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(e.name=u),xr(e)}function pr(e,t,a){t==="number"&&As(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function An(e,t,a,l){if(e=e.options,t){t={};for(var i=0;i<a.length;i++)t["$"+a[i]]=!0;for(a=0;a<e.length;a++)i=t.hasOwnProperty("$"+e[a].value),e[a].selected!==i&&(e[a].selected=i),i&&l&&(e[a].defaultSelected=!0)}else{for(a=""+Ht(a),t=null,i=0;i<e.length;i++){if(e[i].value===a){e[i].selected=!0,l&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function io(e,t,a){if(t!=null&&(t=""+Ht(t),t!==e.value&&(e.value=t),a==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=a!=null?""+Ht(a):""}function ro(e,t,a,l){if(t==null){if(l!=null){if(a!=null)throw Error(o(92));if(G(l)){if(1<l.length)throw Error(o(93));l=l[0]}a=l}a==null&&(a=""),t=a}a=Ht(t),e.defaultValue=a,l=e.textContent,l===a&&l!==""&&l!==null&&(e.value=l),xr(e)}function Dn(e,t){if(t){var a=e.firstChild;if(a&&a===e.lastChild&&a.nodeType===3){a.nodeValue=t;return}}e.textContent=t}var Cx=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function co(e,t,a){var l=t.indexOf("--")===0;a==null||typeof a=="boolean"||a===""?l?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":l?e.setProperty(t,a):typeof a!="number"||a===0||Cx.has(t)?t==="float"?e.cssFloat=a:e[t]=(""+a).trim():e[t]=a+"px"}function uo(e,t,a){if(t!=null&&typeof t!="object")throw Error(o(62));if(e=e.style,a!=null){for(var l in a)!a.hasOwnProperty(l)||t!=null&&t.hasOwnProperty(l)||(l.indexOf("--")===0?e.setProperty(l,""):l==="float"?e.cssFloat="":e[l]="");for(var i in t)l=t[i],t.hasOwnProperty(i)&&a[i]!==l&&co(e,i,l)}else for(var r in t)t.hasOwnProperty(r)&&co(e,r,t[r])}function yr(e){if(e.indexOf("-")===-1)return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wx=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),zx=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Ds(e){return zx.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function fa(){}var vr=null;function br(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var _n=null,Mn=null;function oo(e){var t=zn(e);if(t&&(e=t.stateNode)){var a=e[bt]||null;e:switch(e=t.stateNode,t.type){case"input":if(gr(e,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name),t=a.name,a.type==="radio"&&t!=null){for(a=e;a.parentNode;)a=a.parentNode;for(a=a.querySelectorAll('input[name="'+qt(""+t)+'"][type="radio"]'),t=0;t<a.length;t++){var l=a[t];if(l!==e&&l.form===e.form){var i=l[bt]||null;if(!i)throw Error(o(90));gr(l,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<a.length;t++)l=a[t],l.form===e.form&&lo(l)}break e;case"textarea":io(e,a.value,a.defaultValue);break e;case"select":t=a.value,t!=null&&An(e,!!a.multiple,t,!1)}}}var jr=!1;function fo(e,t,a){if(jr)return e(t,a);jr=!0;try{var l=e(t);return l}finally{if(jr=!1,(_n!==null||Mn!==null)&&(pi(),_n&&(t=_n,e=Mn,Mn=_n=null,oo(t),e)))for(t=0;t<e.length;t++)oo(e[t])}}function Cl(e,t){var a=e.stateNode;if(a===null)return null;var l=a[bt]||null;if(l===null)return null;a=l[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(l=!l.disabled)||(e=e.type,l=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!l;break e;default:e=!1}if(e)return null;if(a&&typeof a!="function")throw Error(o(231,t,typeof a));return a}var ma=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Nr=!1;if(ma)try{var wl={};Object.defineProperty(wl,"passive",{get:function(){Nr=!0}}),window.addEventListener("test",wl,wl),window.removeEventListener("test",wl,wl)}catch{Nr=!1}var _a=null,Sr=null,_s=null;function mo(){if(_s)return _s;var e,t=Sr,a=t.length,l,i="value"in _a?_a.value:_a.textContent,r=i.length;for(e=0;e<a&&t[e]===i[e];e++);var u=a-e;for(l=1;l<=u&&t[a-l]===i[r-l];l++);return _s=i.slice(e,1<l?1-l:void 0)}function Ms(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function ks(){return!0}function ho(){return!1}function jt(e){function t(a,l,i,r,u){this._reactName=a,this._targetInst=i,this.type=l,this.nativeEvent=r,this.target=u,this.currentTarget=null;for(var h in e)e.hasOwnProperty(h)&&(a=e[h],this[h]=a?a(r):r[h]);return this.isDefaultPrevented=(r.defaultPrevented!=null?r.defaultPrevented:r.returnValue===!1)?ks:ho,this.isPropagationStopped=ho,this}return E(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=ks)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=ks)},persist:function(){},isPersistent:ks}),t}var sn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Os=jt(sn),zl=E({},sn,{view:0,detail:0}),Tx=jt(zl),Cr,wr,Tl,Rs=E({},zl,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Tr,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!==Tl&&(Tl&&e.type==="mousemove"?(Cr=e.screenX-Tl.screenX,wr=e.screenY-Tl.screenY):wr=Cr=0,Tl=e),Cr)},movementY:function(e){return"movementY"in e?e.movementY:wr}}),xo=jt(Rs),Ex=E({},Rs,{dataTransfer:0}),Ax=jt(Ex),Dx=E({},zl,{relatedTarget:0}),zr=jt(Dx),_x=E({},sn,{animationName:0,elapsedTime:0,pseudoElement:0}),Mx=jt(_x),kx=E({},sn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ox=jt(kx),Rx=E({},sn,{data:0}),go=jt(Rx),Ux={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Bx={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"},Lx={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Hx(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Lx[e])?!!t[e]:!1}function Tr(){return Hx}var qx=E({},zl,{key:function(e){if(e.key){var t=Ux[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Ms(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Bx[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Tr,charCode:function(e){return e.type==="keypress"?Ms(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Ms(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Gx=jt(qx),Qx=E({},Rs,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),po=jt(Qx),Yx=E({},zl,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Tr}),Vx=jt(Yx),Xx=E({},sn,{propertyName:0,elapsedTime:0,pseudoElement:0}),Kx=jt(Xx),Zx=E({},Rs,{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}),Fx=jt(Zx),$x=E({},sn,{newState:0,oldState:0}),Jx=jt($x),Wx=[9,13,27,32],Er=ma&&"CompositionEvent"in window,El=null;ma&&"documentMode"in document&&(El=document.documentMode);var Ix=ma&&"TextEvent"in window&&!El,yo=ma&&(!Er||El&&8<El&&11>=El),vo=" ",bo=!1;function jo(e,t){switch(e){case"keyup":return Wx.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function No(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var kn=!1;function Px(e,t){switch(e){case"compositionend":return No(t);case"keypress":return t.which!==32?null:(bo=!0,vo);case"textInput":return e=t.data,e===vo&&bo?null:e;default:return null}}function eg(e,t){if(kn)return e==="compositionend"||!Er&&jo(e,t)?(e=mo(),_s=Sr=_a=null,kn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return yo&&t.locale!=="ko"?null:t.data;default:return null}}var tg={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 So(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!tg[e.type]:t==="textarea"}function Co(e,t,a,l){_n?Mn?Mn.push(l):Mn=[l]:_n=l,t=Ci(t,"onChange"),0<t.length&&(a=new Os("onChange","change",null,a,l),e.push({event:a,listeners:t}))}var Al=null,Dl=null;function ag(e){rm(e,0)}function Us(e){var t=Sl(e);if(lo(t))return e}function wo(e,t){if(e==="change")return t}var zo=!1;if(ma){var Ar;if(ma){var Dr="oninput"in document;if(!Dr){var To=document.createElement("div");To.setAttribute("oninput","return;"),Dr=typeof To.oninput=="function"}Ar=Dr}else Ar=!1;zo=Ar&&(!document.documentMode||9<document.documentMode)}function Eo(){Al&&(Al.detachEvent("onpropertychange",Ao),Dl=Al=null)}function Ao(e){if(e.propertyName==="value"&&Us(Dl)){var t=[];Co(t,Dl,e,br(e)),fo(ag,t)}}function ng(e,t,a){e==="focusin"?(Eo(),Al=t,Dl=a,Al.attachEvent("onpropertychange",Ao)):e==="focusout"&&Eo()}function lg(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Us(Dl)}function sg(e,t){if(e==="click")return Us(t)}function ig(e,t){if(e==="input"||e==="change")return Us(t)}function rg(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Mt=typeof Object.is=="function"?Object.is:rg;function _l(e,t){if(Mt(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var a=Object.keys(e),l=Object.keys(t);if(a.length!==l.length)return!1;for(l=0;l<a.length;l++){var i=a[l];if(!rr.call(t,i)||!Mt(e[i],t[i]))return!1}return!0}function Do(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function _o(e,t){var a=Do(e);e=0;for(var l;a;){if(a.nodeType===3){if(l=e+a.textContent.length,e<=t&&l>=t)return{node:a,offset:t-e};e=l}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=Do(a)}}function Mo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Mo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ko(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=As(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=As(e.document)}return t}function _r(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var cg=ma&&"documentMode"in document&&11>=document.documentMode,On=null,Mr=null,Ml=null,kr=!1;function Oo(e,t,a){var l=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;kr||On==null||On!==As(l)||(l=On,"selectionStart"in l&&_r(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Ml&&_l(Ml,l)||(Ml=l,l=Ci(Mr,"onSelect"),0<l.length&&(t=new Os("onSelect","select",null,t,a),e.push({event:t,listeners:l}),t.target=On)))}function rn(e,t){var a={};return a[e.toLowerCase()]=t.toLowerCase(),a["Webkit"+e]="webkit"+t,a["Moz"+e]="moz"+t,a}var Rn={animationend:rn("Animation","AnimationEnd"),animationiteration:rn("Animation","AnimationIteration"),animationstart:rn("Animation","AnimationStart"),transitionrun:rn("Transition","TransitionRun"),transitionstart:rn("Transition","TransitionStart"),transitioncancel:rn("Transition","TransitionCancel"),transitionend:rn("Transition","TransitionEnd")},Or={},Ro={};ma&&(Ro=document.createElement("div").style,"AnimationEvent"in window||(delete Rn.animationend.animation,delete Rn.animationiteration.animation,delete Rn.animationstart.animation),"TransitionEvent"in window||delete Rn.transitionend.transition);function cn(e){if(Or[e])return Or[e];if(!Rn[e])return e;var t=Rn[e],a;for(a in t)if(t.hasOwnProperty(a)&&a in Ro)return Or[e]=t[a];return e}var Uo=cn("animationend"),Bo=cn("animationiteration"),Lo=cn("animationstart"),ug=cn("transitionrun"),og=cn("transitionstart"),dg=cn("transitioncancel"),Ho=cn("transitionend"),qo=new Map,Rr="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Rr.push("scrollEnd");function Jt(e,t){qo.set(e,t),ln(t,[e])}var Bs=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Gt=[],Un=0,Ur=0;function Ls(){for(var e=Un,t=Ur=Un=0;t<e;){var a=Gt[t];Gt[t++]=null;var l=Gt[t];Gt[t++]=null;var i=Gt[t];Gt[t++]=null;var r=Gt[t];if(Gt[t++]=null,l!==null&&i!==null){var u=l.pending;u===null?i.next=i:(i.next=u.next,u.next=i),l.pending=i}r!==0&&Go(a,i,r)}}function Hs(e,t,a,l){Gt[Un++]=e,Gt[Un++]=t,Gt[Un++]=a,Gt[Un++]=l,Ur|=l,e.lanes|=l,e=e.alternate,e!==null&&(e.lanes|=l)}function Br(e,t,a,l){return Hs(e,t,a,l),qs(e)}function un(e,t){return Hs(e,null,null,t),qs(e)}function Go(e,t,a){e.lanes|=a;var l=e.alternate;l!==null&&(l.lanes|=a);for(var i=!1,r=e.return;r!==null;)r.childLanes|=a,l=r.alternate,l!==null&&(l.childLanes|=a),r.tag===22&&(e=r.stateNode,e===null||e._visibility&1||(i=!0)),e=r,r=r.return;return e.tag===3?(r=e.stateNode,i&&t!==null&&(i=31-_t(a),e=r.hiddenUpdates,l=e[i],l===null?e[i]=[t]:l.push(t),t.lane=a|536870912),r):null}function qs(e){if(50<es)throw es=0,Kc=null,Error(o(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Bn={};function fg(e,t,a,l){this.tag=e,this.key=a,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=l,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function kt(e,t,a,l){return new fg(e,t,a,l)}function Lr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ha(e,t){var a=e.alternate;return a===null?(a=kt(e.tag,t,e.key,e.mode),a.elementType=e.elementType,a.type=e.type,a.stateNode=e.stateNode,a.alternate=e,e.alternate=a):(a.pendingProps=t,a.type=e.type,a.flags=0,a.subtreeFlags=0,a.deletions=null),a.flags=e.flags&65011712,a.childLanes=e.childLanes,a.lanes=e.lanes,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue,t=e.dependencies,a.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},a.sibling=e.sibling,a.index=e.index,a.ref=e.ref,a.refCleanup=e.refCleanup,a}function Qo(e,t){e.flags&=65011714;var a=e.alternate;return a===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=a.childLanes,e.lanes=a.lanes,e.child=a.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,e.type=a.type,t=a.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function Gs(e,t,a,l,i,r){var u=0;if(l=e,typeof e=="function")Lr(e)&&(u=1);else if(typeof e=="string")u=pp(e,a,fe.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case Y:return e=kt(31,a,t,i),e.elementType=Y,e.lanes=r,e;case M:return on(a.children,i,r,t);case C:u=8,i|=24;break;case _:return e=kt(12,a,t,i|2),e.elementType=_,e.lanes=r,e;case L:return e=kt(13,a,t,i),e.elementType=L,e.lanes=r,e;case I:return e=kt(19,a,t,i),e.elementType=I,e.lanes=r,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case T:u=10;break e;case R:u=9;break e;case N:u=11;break e;case F:u=14;break e;case ae:u=16,l=null;break e}u=29,a=Error(o(130,e===null?"null":typeof e,"")),l=null}return t=kt(u,a,t,i),t.elementType=e,t.type=l,t.lanes=r,t}function on(e,t,a,l){return e=kt(7,e,l,t),e.lanes=a,e}function Hr(e,t,a){return e=kt(6,e,null,t),e.lanes=a,e}function Yo(e){var t=kt(18,null,null,0);return t.stateNode=e,t}function qr(e,t,a){return t=kt(4,e.children!==null?e.children:[],e.key,t),t.lanes=a,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Vo=new WeakMap;function Qt(e,t){if(typeof e=="object"&&e!==null){var a=Vo.get(e);return a!==void 0?a:(t={value:e,source:t,stack:js(t)},Vo.set(e,t),t)}return{value:e,source:t,stack:js(t)}}var Ln=[],Hn=0,Qs=null,kl=0,Yt=[],Vt=0,Ma=null,la=1,sa="";function xa(e,t){Ln[Hn++]=kl,Ln[Hn++]=Qs,Qs=e,kl=t}function Xo(e,t,a){Yt[Vt++]=la,Yt[Vt++]=sa,Yt[Vt++]=Ma,Ma=e;var l=la;e=sa;var i=32-_t(l)-1;l&=~(1<<i),a+=1;var r=32-_t(t)+i;if(30<r){var u=i-i%5;r=(l&(1<<u)-1).toString(32),l>>=u,i-=u,la=1<<32-_t(t)+i|a<<i|l,sa=r+e}else la=1<<r|a<<i|l,sa=e}function Gr(e){e.return!==null&&(xa(e,1),Xo(e,1,0))}function Qr(e){for(;e===Qs;)Qs=Ln[--Hn],Ln[Hn]=null,kl=Ln[--Hn],Ln[Hn]=null;for(;e===Ma;)Ma=Yt[--Vt],Yt[Vt]=null,sa=Yt[--Vt],Yt[Vt]=null,la=Yt[--Vt],Yt[Vt]=null}function Ko(e,t){Yt[Vt++]=la,Yt[Vt++]=sa,Yt[Vt++]=Ma,la=t.id,sa=t.overflow,Ma=e}var dt=null,Ge=null,Ce=!1,ka=null,Xt=!1,Yr=Error(o(519));function Oa(e){var t=Error(o(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Ol(Qt(t,e)),Yr}function Zo(e){var t=e.stateNode,a=e.type,l=e.memoizedProps;switch(t[ot]=e,t[bt]=l,a){case"dialog":be("cancel",t),be("close",t);break;case"iframe":case"object":case"embed":be("load",t);break;case"video":case"audio":for(a=0;a<as.length;a++)be(as[a],t);break;case"source":be("error",t);break;case"img":case"image":case"link":be("error",t),be("load",t);break;case"details":be("toggle",t);break;case"input":be("invalid",t),so(t,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0);break;case"select":be("invalid",t);break;case"textarea":be("invalid",t),ro(t,l.value,l.defaultValue,l.children)}a=l.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||t.textContent===""+a||l.suppressHydrationWarning===!0||dm(t.textContent,a)?(l.popover!=null&&(be("beforetoggle",t),be("toggle",t)),l.onScroll!=null&&be("scroll",t),l.onScrollEnd!=null&&be("scrollend",t),l.onClick!=null&&(t.onclick=fa),t=!0):t=!1,t||Oa(e,!0)}function Fo(e){for(dt=e.return;dt;)switch(dt.tag){case 5:case 31:case 13:Xt=!1;return;case 27:case 3:Xt=!0;return;default:dt=dt.return}}function qn(e){if(e!==dt)return!1;if(!Ce)return Fo(e),Ce=!0,!1;var t=e.tag,a;if((a=t!==3&&t!==27)&&((a=t===5)&&(a=e.type,a=!(a!=="form"&&a!=="button")||ru(e.type,e.memoizedProps)),a=!a),a&&Ge&&Oa(e),Fo(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));Ge=bm(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));Ge=bm(e)}else t===27?(t=Ge,Fa(e.type)?(e=fu,fu=null,Ge=e):Ge=t):Ge=dt?Zt(e.stateNode.nextSibling):null;return!0}function dn(){Ge=dt=null,Ce=!1}function Vr(){var e=ka;return e!==null&&(wt===null?wt=e:wt.push.apply(wt,e),ka=null),e}function Ol(e){ka===null?ka=[e]:ka.push(e)}var Xr=se(null),fn=null,ga=null;function Ra(e,t,a){X(Xr,t._currentValue),t._currentValue=a}function pa(e){e._currentValue=Xr.current,me(Xr)}function Kr(e,t,a){for(;e!==null;){var l=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,l!==null&&(l.childLanes|=t)):l!==null&&(l.childLanes&t)!==t&&(l.childLanes|=t),e===a)break;e=e.return}}function Zr(e,t,a,l){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var r=i.dependencies;if(r!==null){var u=i.child;r=r.firstContext;e:for(;r!==null;){var h=r;r=i;for(var b=0;b<t.length;b++)if(h.context===t[b]){r.lanes|=a,h=r.alternate,h!==null&&(h.lanes|=a),Kr(r.return,a,e),l||(u=null);break e}r=h.next}}else if(i.tag===18){if(u=i.return,u===null)throw Error(o(341));u.lanes|=a,r=u.alternate,r!==null&&(r.lanes|=a),Kr(u,a,e),u=null}else u=i.child;if(u!==null)u.return=i;else for(u=i;u!==null;){if(u===e){u=null;break}if(i=u.sibling,i!==null){i.return=u.return,u=i;break}u=u.return}i=u}}function Gn(e,t,a,l){e=null;for(var i=t,r=!1;i!==null;){if(!r){if((i.flags&524288)!==0)r=!0;else if((i.flags&262144)!==0)break}if(i.tag===10){var u=i.alternate;if(u===null)throw Error(o(387));if(u=u.memoizedProps,u!==null){var h=i.type;Mt(i.pendingProps.value,u.value)||(e!==null?e.push(h):e=[h])}}else if(i===yt.current){if(u=i.alternate,u===null)throw Error(o(387));u.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e!==null?e.push(rs):e=[rs])}i=i.return}e!==null&&Zr(t,e,a,l),t.flags|=262144}function Ys(e){for(e=e.firstContext;e!==null;){if(!Mt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function mn(e){fn=e,ga=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ft(e){return $o(fn,e)}function Vs(e,t){return fn===null&&mn(e),$o(e,t)}function $o(e,t){var a=t._currentValue;if(t={context:t,memoizedValue:a,next:null},ga===null){if(e===null)throw Error(o(308));ga=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else ga=ga.next=t;return a}var mg=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(a,l){e.push(l)}};this.abort=function(){t.aborted=!0,e.forEach(function(a){return a()})}},hg=s.unstable_scheduleCallback,xg=s.unstable_NormalPriority,We={$$typeof:T,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Fr(){return{controller:new mg,data:new Map,refCount:0}}function Rl(e){e.refCount--,e.refCount===0&&hg(xg,function(){e.controller.abort()})}var Ul=null,$r=0,Qn=0,Yn=null;function gg(e,t){if(Ul===null){var a=Ul=[];$r=0,Qn=Ic(),Yn={status:"pending",value:void 0,then:function(l){a.push(l)}}}return $r++,t.then(Jo,Jo),t}function Jo(){if(--$r===0&&Ul!==null){Yn!==null&&(Yn.status="fulfilled");var e=Ul;Ul=null,Qn=0,Yn=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function pg(e,t){var a=[],l={status:"pending",value:null,reason:null,then:function(i){a.push(i)}};return e.then(function(){l.status="fulfilled",l.value=t;for(var i=0;i<a.length;i++)(0,a[i])(t)},function(i){for(l.status="rejected",l.reason=i,i=0;i<a.length;i++)(0,a[i])(void 0)}),l}var Wo=v.S;v.S=function(e,t){Rf=At(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&gg(e,t),Wo!==null&&Wo(e,t)};var hn=se(null);function Jr(){var e=hn.current;return e!==null?e:He.pooledCache}function Xs(e,t){t===null?X(hn,hn.current):X(hn,t.pool)}function Io(){var e=Jr();return e===null?null:{parent:We._currentValue,pool:e}}var Vn=Error(o(460)),Wr=Error(o(474)),Ks=Error(o(542)),Zs={then:function(){}};function Po(e){return e=e.status,e==="fulfilled"||e==="rejected"}function ed(e,t,a){switch(a=e[a],a===void 0?e.push(t):a!==t&&(t.then(fa,fa),t=a),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,ad(e),e;default:if(typeof t.status=="string")t.then(fa,fa);else{if(e=He,e!==null&&100<e.shellSuspendCounter)throw Error(o(482));e=t,e.status="pending",e.then(function(l){if(t.status==="pending"){var i=t;i.status="fulfilled",i.value=l}},function(l){if(t.status==="pending"){var i=t;i.status="rejected",i.reason=l}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,ad(e),e}throw gn=t,Vn}}function xn(e){try{var t=e._init;return t(e._payload)}catch(a){throw a!==null&&typeof a=="object"&&typeof a.then=="function"?(gn=a,Vn):a}}var gn=null;function td(){if(gn===null)throw Error(o(459));var e=gn;return gn=null,e}function ad(e){if(e===Vn||e===Ks)throw Error(o(483))}var Xn=null,Bl=0;function Fs(e){var t=Bl;return Bl+=1,Xn===null&&(Xn=[]),ed(Xn,e,t)}function Ll(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function $s(e,t){throw t.$$typeof===H?Error(o(525)):(e=Object.prototype.toString.call(t),Error(o(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function nd(e){function t(A,S){if(e){var k=A.deletions;k===null?(A.deletions=[S],A.flags|=16):k.push(S)}}function a(A,S){if(!e)return null;for(;S!==null;)t(A,S),S=S.sibling;return null}function l(A){for(var S=new Map;A!==null;)A.key!==null?S.set(A.key,A):S.set(A.index,A),A=A.sibling;return S}function i(A,S){return A=ha(A,S),A.index=0,A.sibling=null,A}function r(A,S,k){return A.index=k,e?(k=A.alternate,k!==null?(k=k.index,k<S?(A.flags|=67108866,S):k):(A.flags|=67108866,S)):(A.flags|=1048576,S)}function u(A){return e&&A.alternate===null&&(A.flags|=67108866),A}function h(A,S,k,K){return S===null||S.tag!==6?(S=Hr(k,A.mode,K),S.return=A,S):(S=i(S,k),S.return=A,S)}function b(A,S,k,K){var ce=k.type;return ce===M?V(A,S,k.props.children,K,k.key):S!==null&&(S.elementType===ce||typeof ce=="object"&&ce!==null&&ce.$$typeof===ae&&xn(ce)===S.type)?(S=i(S,k.props),Ll(S,k),S.return=A,S):(S=Gs(k.type,k.key,k.props,null,A.mode,K),Ll(S,k),S.return=A,S)}function O(A,S,k,K){return S===null||S.tag!==4||S.stateNode.containerInfo!==k.containerInfo||S.stateNode.implementation!==k.implementation?(S=qr(k,A.mode,K),S.return=A,S):(S=i(S,k.children||[]),S.return=A,S)}function V(A,S,k,K,ce){return S===null||S.tag!==7?(S=on(k,A.mode,K,ce),S.return=A,S):(S=i(S,k),S.return=A,S)}function $(A,S,k){if(typeof S=="string"&&S!==""||typeof S=="number"||typeof S=="bigint")return S=Hr(""+S,A.mode,k),S.return=A,S;if(typeof S=="object"&&S!==null){switch(S.$$typeof){case w:return k=Gs(S.type,S.key,S.props,null,A.mode,k),Ll(k,S),k.return=A,k;case B:return S=qr(S,A.mode,k),S.return=A,S;case ae:return S=xn(S),$(A,S,k)}if(G(S)||q(S))return S=on(S,A.mode,k,null),S.return=A,S;if(typeof S.then=="function")return $(A,Fs(S),k);if(S.$$typeof===T)return $(A,Vs(A,S),k);$s(A,S)}return null}function U(A,S,k,K){var ce=S!==null?S.key:null;if(typeof k=="string"&&k!==""||typeof k=="number"||typeof k=="bigint")return ce!==null?null:h(A,S,""+k,K);if(typeof k=="object"&&k!==null){switch(k.$$typeof){case w:return k.key===ce?b(A,S,k,K):null;case B:return k.key===ce?O(A,S,k,K):null;case ae:return k=xn(k),U(A,S,k,K)}if(G(k)||q(k))return ce!==null?null:V(A,S,k,K,null);if(typeof k.then=="function")return U(A,S,Fs(k),K);if(k.$$typeof===T)return U(A,S,Vs(A,k),K);$s(A,k)}return null}function Q(A,S,k,K,ce){if(typeof K=="string"&&K!==""||typeof K=="number"||typeof K=="bigint")return A=A.get(k)||null,h(S,A,""+K,ce);if(typeof K=="object"&&K!==null){switch(K.$$typeof){case w:return A=A.get(K.key===null?k:K.key)||null,b(S,A,K,ce);case B:return A=A.get(K.key===null?k:K.key)||null,O(S,A,K,ce);case ae:return K=xn(K),Q(A,S,k,K,ce)}if(G(K)||q(K))return A=A.get(k)||null,V(S,A,K,ce,null);if(typeof K.then=="function")return Q(A,S,k,Fs(K),ce);if(K.$$typeof===T)return Q(A,S,k,Vs(S,K),ce);$s(S,K)}return null}function ie(A,S,k,K){for(var ce=null,Te=null,re=S,ye=S=0,Se=null;re!==null&&ye<k.length;ye++){re.index>ye?(Se=re,re=null):Se=re.sibling;var Ee=U(A,re,k[ye],K);if(Ee===null){re===null&&(re=Se);break}e&&re&&Ee.alternate===null&&t(A,re),S=r(Ee,S,ye),Te===null?ce=Ee:Te.sibling=Ee,Te=Ee,re=Se}if(ye===k.length)return a(A,re),Ce&&xa(A,ye),ce;if(re===null){for(;ye<k.length;ye++)re=$(A,k[ye],K),re!==null&&(S=r(re,S,ye),Te===null?ce=re:Te.sibling=re,Te=re);return Ce&&xa(A,ye),ce}for(re=l(re);ye<k.length;ye++)Se=Q(re,A,ye,k[ye],K),Se!==null&&(e&&Se.alternate!==null&&re.delete(Se.key===null?ye:Se.key),S=r(Se,S,ye),Te===null?ce=Se:Te.sibling=Se,Te=Se);return e&&re.forEach(function(Pa){return t(A,Pa)}),Ce&&xa(A,ye),ce}function de(A,S,k,K){if(k==null)throw Error(o(151));for(var ce=null,Te=null,re=S,ye=S=0,Se=null,Ee=k.next();re!==null&&!Ee.done;ye++,Ee=k.next()){re.index>ye?(Se=re,re=null):Se=re.sibling;var Pa=U(A,re,Ee.value,K);if(Pa===null){re===null&&(re=Se);break}e&&re&&Pa.alternate===null&&t(A,re),S=r(Pa,S,ye),Te===null?ce=Pa:Te.sibling=Pa,Te=Pa,re=Se}if(Ee.done)return a(A,re),Ce&&xa(A,ye),ce;if(re===null){for(;!Ee.done;ye++,Ee=k.next())Ee=$(A,Ee.value,K),Ee!==null&&(S=r(Ee,S,ye),Te===null?ce=Ee:Te.sibling=Ee,Te=Ee);return Ce&&xa(A,ye),ce}for(re=l(re);!Ee.done;ye++,Ee=k.next())Ee=Q(re,A,ye,Ee.value,K),Ee!==null&&(e&&Ee.alternate!==null&&re.delete(Ee.key===null?ye:Ee.key),S=r(Ee,S,ye),Te===null?ce=Ee:Te.sibling=Ee,Te=Ee);return e&&re.forEach(function(Ep){return t(A,Ep)}),Ce&&xa(A,ye),ce}function Le(A,S,k,K){if(typeof k=="object"&&k!==null&&k.type===M&&k.key===null&&(k=k.props.children),typeof k=="object"&&k!==null){switch(k.$$typeof){case w:e:{for(var ce=k.key;S!==null;){if(S.key===ce){if(ce=k.type,ce===M){if(S.tag===7){a(A,S.sibling),K=i(S,k.props.children),K.return=A,A=K;break e}}else if(S.elementType===ce||typeof ce=="object"&&ce!==null&&ce.$$typeof===ae&&xn(ce)===S.type){a(A,S.sibling),K=i(S,k.props),Ll(K,k),K.return=A,A=K;break e}a(A,S);break}else t(A,S);S=S.sibling}k.type===M?(K=on(k.props.children,A.mode,K,k.key),K.return=A,A=K):(K=Gs(k.type,k.key,k.props,null,A.mode,K),Ll(K,k),K.return=A,A=K)}return u(A);case B:e:{for(ce=k.key;S!==null;){if(S.key===ce)if(S.tag===4&&S.stateNode.containerInfo===k.containerInfo&&S.stateNode.implementation===k.implementation){a(A,S.sibling),K=i(S,k.children||[]),K.return=A,A=K;break e}else{a(A,S);break}else t(A,S);S=S.sibling}K=qr(k,A.mode,K),K.return=A,A=K}return u(A);case ae:return k=xn(k),Le(A,S,k,K)}if(G(k))return ie(A,S,k,K);if(q(k)){if(ce=q(k),typeof ce!="function")throw Error(o(150));return k=ce.call(k),de(A,S,k,K)}if(typeof k.then=="function")return Le(A,S,Fs(k),K);if(k.$$typeof===T)return Le(A,S,Vs(A,k),K);$s(A,k)}return typeof k=="string"&&k!==""||typeof k=="number"||typeof k=="bigint"?(k=""+k,S!==null&&S.tag===6?(a(A,S.sibling),K=i(S,k),K.return=A,A=K):(a(A,S),K=Hr(k,A.mode,K),K.return=A,A=K),u(A)):a(A,S)}return function(A,S,k,K){try{Bl=0;var ce=Le(A,S,k,K);return Xn=null,ce}catch(re){if(re===Vn||re===Ks)throw re;var Te=kt(29,re,null,A.mode);return Te.lanes=K,Te.return=A,Te}}}var pn=nd(!0),ld=nd(!1),Ua=!1;function Ir(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Pr(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ba(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function La(e,t,a){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(Ae&2)!==0){var i=l.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),l.pending=t,t=qs(e),Go(e,null,a),t}return Hs(e,l,t,a),qs(e)}function Hl(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,a|=l,t.lanes=a,Fu(e,a)}}function ec(e,t){var a=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,a===l)){var i=null,r=null;if(a=a.firstBaseUpdate,a!==null){do{var u={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};r===null?i=r=u:r=r.next=u,a=a.next}while(a!==null);r===null?i=r=t:r=r.next=t}else i=r=t;a={baseState:l.baseState,firstBaseUpdate:i,lastBaseUpdate:r,shared:l.shared,callbacks:l.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var tc=!1;function ql(){if(tc){var e=Yn;if(e!==null)throw e}}function Gl(e,t,a,l){tc=!1;var i=e.updateQueue;Ua=!1;var r=i.firstBaseUpdate,u=i.lastBaseUpdate,h=i.shared.pending;if(h!==null){i.shared.pending=null;var b=h,O=b.next;b.next=null,u===null?r=O:u.next=O,u=b;var V=e.alternate;V!==null&&(V=V.updateQueue,h=V.lastBaseUpdate,h!==u&&(h===null?V.firstBaseUpdate=O:h.next=O,V.lastBaseUpdate=b))}if(r!==null){var $=i.baseState;u=0,V=O=b=null,h=r;do{var U=h.lane&-536870913,Q=U!==h.lane;if(Q?(Ne&U)===U:(l&U)===U){U!==0&&U===Qn&&(tc=!0),V!==null&&(V=V.next={lane:0,tag:h.tag,payload:h.payload,callback:null,next:null});e:{var ie=e,de=h;U=t;var Le=a;switch(de.tag){case 1:if(ie=de.payload,typeof ie=="function"){$=ie.call(Le,$,U);break e}$=ie;break e;case 3:ie.flags=ie.flags&-65537|128;case 0:if(ie=de.payload,U=typeof ie=="function"?ie.call(Le,$,U):ie,U==null)break e;$=E({},$,U);break e;case 2:Ua=!0}}U=h.callback,U!==null&&(e.flags|=64,Q&&(e.flags|=8192),Q=i.callbacks,Q===null?i.callbacks=[U]:Q.push(U))}else Q={lane:U,tag:h.tag,payload:h.payload,callback:h.callback,next:null},V===null?(O=V=Q,b=$):V=V.next=Q,u|=U;if(h=h.next,h===null){if(h=i.shared.pending,h===null)break;Q=h,h=Q.next,Q.next=null,i.lastBaseUpdate=Q,i.shared.pending=null}}while(!0);V===null&&(b=$),i.baseState=b,i.firstBaseUpdate=O,i.lastBaseUpdate=V,r===null&&(i.shared.lanes=0),Ya|=u,e.lanes=u,e.memoizedState=$}}function sd(e,t){if(typeof e!="function")throw Error(o(191,e));e.call(t)}function id(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;e<a.length;e++)sd(a[e],t)}var Kn=se(null),Js=se(0);function rd(e,t){e=za,X(Js,e),X(Kn,t),za=e|t.baseLanes}function ac(){X(Js,za),X(Kn,Kn.current)}function nc(){za=Js.current,me(Kn),me(Js)}var Ot=se(null),Kt=null;function Ha(e){var t=e.alternate;X(Fe,Fe.current&1),X(Ot,e),Kt===null&&(t===null||Kn.current!==null||t.memoizedState!==null)&&(Kt=e)}function lc(e){X(Fe,Fe.current),X(Ot,e),Kt===null&&(Kt=e)}function cd(e){e.tag===22?(X(Fe,Fe.current),X(Ot,e),Kt===null&&(Kt=e)):qa()}function qa(){X(Fe,Fe.current),X(Ot,Ot.current)}function Rt(e){me(Ot),Kt===e&&(Kt=null),me(Fe)}var Fe=se(0);function Ws(e){for(var t=e;t!==null;){if(t.tag===13){var a=t.memoizedState;if(a!==null&&(a=a.dehydrated,a===null||ou(a)||du(a)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ya=0,ge=null,Ue=null,Ie=null,Is=!1,Zn=!1,yn=!1,Ps=0,Ql=0,Fn=null,yg=0;function Ke(){throw Error(o(321))}function sc(e,t){if(t===null)return!1;for(var a=0;a<t.length&&a<e.length;a++)if(!Mt(e[a],t[a]))return!1;return!0}function ic(e,t,a,l,i,r){return ya=r,ge=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,v.H=e===null||e.memoizedState===null?Xd:jc,yn=!1,r=a(l,i),yn=!1,Zn&&(r=od(t,a,l,i)),ud(e),r}function ud(e){v.H=Xl;var t=Ue!==null&&Ue.next!==null;if(ya=0,Ie=Ue=ge=null,Is=!1,Ql=0,Fn=null,t)throw Error(o(300));e===null||Pe||(e=e.dependencies,e!==null&&Ys(e)&&(Pe=!0))}function od(e,t,a,l){ge=e;var i=0;do{if(Zn&&(Fn=null),Ql=0,Zn=!1,25<=i)throw Error(o(301));if(i+=1,Ie=Ue=null,e.updateQueue!=null){var r=e.updateQueue;r.lastEffect=null,r.events=null,r.stores=null,r.memoCache!=null&&(r.memoCache.index=0)}v.H=Kd,r=t(a,l)}while(Zn);return r}function vg(){var e=v.H,t=e.useState()[0];return t=typeof t.then=="function"?Yl(t):t,e=e.useState()[0],(Ue!==null?Ue.memoizedState:null)!==e&&(ge.flags|=1024),t}function rc(){var e=Ps!==0;return Ps=0,e}function cc(e,t,a){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a}function uc(e){if(Is){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Is=!1}ya=0,Ie=Ue=ge=null,Zn=!1,Ql=Ps=0,Fn=null}function gt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ie===null?ge.memoizedState=Ie=e:Ie=Ie.next=e,Ie}function $e(){if(Ue===null){var e=ge.alternate;e=e!==null?e.memoizedState:null}else e=Ue.next;var t=Ie===null?ge.memoizedState:Ie.next;if(t!==null)Ie=t,Ue=e;else{if(e===null)throw ge.alternate===null?Error(o(467)):Error(o(310));Ue=e,e={memoizedState:Ue.memoizedState,baseState:Ue.baseState,baseQueue:Ue.baseQueue,queue:Ue.queue,next:null},Ie===null?ge.memoizedState=Ie=e:Ie=Ie.next=e}return Ie}function ei(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Yl(e){var t=Ql;return Ql+=1,Fn===null&&(Fn=[]),e=ed(Fn,e,t),t=ge,(Ie===null?t.memoizedState:Ie.next)===null&&(t=t.alternate,v.H=t===null||t.memoizedState===null?Xd:jc),e}function ti(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return Yl(e);if(e.$$typeof===T)return ft(e)}throw Error(o(438,String(e)))}function oc(e){var t=null,a=ge.updateQueue;if(a!==null&&(t=a.memoCache),t==null){var l=ge.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(t={data:l.data.map(function(i){return i.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),a===null&&(a=ei(),ge.updateQueue=a),a.memoCache=t,a=t.data[t.index],a===void 0)for(a=t.data[t.index]=Array(e),l=0;l<e;l++)a[l]=le;return t.index++,a}function va(e,t){return typeof t=="function"?t(e):t}function ai(e){var t=$e();return dc(t,Ue,e)}function dc(e,t,a){var l=e.queue;if(l===null)throw Error(o(311));l.lastRenderedReducer=a;var i=e.baseQueue,r=l.pending;if(r!==null){if(i!==null){var u=i.next;i.next=r.next,r.next=u}t.baseQueue=i=r,l.pending=null}if(r=e.baseState,i===null)e.memoizedState=r;else{t=i.next;var h=u=null,b=null,O=t,V=!1;do{var $=O.lane&-536870913;if($!==O.lane?(Ne&$)===$:(ya&$)===$){var U=O.revertLane;if(U===0)b!==null&&(b=b.next={lane:0,revertLane:0,gesture:null,action:O.action,hasEagerState:O.hasEagerState,eagerState:O.eagerState,next:null}),$===Qn&&(V=!0);else if((ya&U)===U){O=O.next,U===Qn&&(V=!0);continue}else $={lane:0,revertLane:O.revertLane,gesture:null,action:O.action,hasEagerState:O.hasEagerState,eagerState:O.eagerState,next:null},b===null?(h=b=$,u=r):b=b.next=$,ge.lanes|=U,Ya|=U;$=O.action,yn&&a(r,$),r=O.hasEagerState?O.eagerState:a(r,$)}else U={lane:$,revertLane:O.revertLane,gesture:O.gesture,action:O.action,hasEagerState:O.hasEagerState,eagerState:O.eagerState,next:null},b===null?(h=b=U,u=r):b=b.next=U,ge.lanes|=$,Ya|=$;O=O.next}while(O!==null&&O!==t);if(b===null?u=r:b.next=h,!Mt(r,e.memoizedState)&&(Pe=!0,V&&(a=Yn,a!==null)))throw a;e.memoizedState=r,e.baseState=u,e.baseQueue=b,l.lastRenderedState=r}return i===null&&(l.lanes=0),[e.memoizedState,l.dispatch]}function fc(e){var t=$e(),a=t.queue;if(a===null)throw Error(o(311));a.lastRenderedReducer=e;var l=a.dispatch,i=a.pending,r=t.memoizedState;if(i!==null){a.pending=null;var u=i=i.next;do r=e(r,u.action),u=u.next;while(u!==i);Mt(r,t.memoizedState)||(Pe=!0),t.memoizedState=r,t.baseQueue===null&&(t.baseState=r),a.lastRenderedState=r}return[r,l]}function dd(e,t,a){var l=ge,i=$e(),r=Ce;if(r){if(a===void 0)throw Error(o(407));a=a()}else a=t();var u=!Mt((Ue||i).memoizedState,a);if(u&&(i.memoizedState=a,Pe=!0),i=i.queue,xc(hd.bind(null,l,i,e),[e]),i.getSnapshot!==t||u||Ie!==null&&Ie.memoizedState.tag&1){if(l.flags|=2048,$n(9,{destroy:void 0},md.bind(null,l,i,a,t),null),He===null)throw Error(o(349));r||(ya&127)!==0||fd(l,t,a)}return a}function fd(e,t,a){e.flags|=16384,e={getSnapshot:t,value:a},t=ge.updateQueue,t===null?(t=ei(),ge.updateQueue=t,t.stores=[e]):(a=t.stores,a===null?t.stores=[e]:a.push(e))}function md(e,t,a,l){t.value=a,t.getSnapshot=l,xd(t)&&gd(e)}function hd(e,t,a){return a(function(){xd(t)&&gd(e)})}function xd(e){var t=e.getSnapshot;e=e.value;try{var a=t();return!Mt(e,a)}catch{return!0}}function gd(e){var t=un(e,2);t!==null&&zt(t,e,2)}function mc(e){var t=gt();if(typeof e=="function"){var a=e;if(e=a(),yn){Aa(!0);try{a()}finally{Aa(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:va,lastRenderedState:e},t}function pd(e,t,a,l){return e.baseState=a,dc(e,Ue,typeof l=="function"?l:va)}function bg(e,t,a,l,i){if(si(e))throw Error(o(485));if(e=t.action,e!==null){var r={payload:i,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(u){r.listeners.push(u)}};v.T!==null?a(!0):r.isTransition=!1,l(r),a=t.pending,a===null?(r.next=t.pending=r,yd(t,r)):(r.next=a.next,t.pending=a.next=r)}}function yd(e,t){var a=t.action,l=t.payload,i=e.state;if(t.isTransition){var r=v.T,u={};v.T=u;try{var h=a(i,l),b=v.S;b!==null&&b(u,h),vd(e,t,h)}catch(O){hc(e,t,O)}finally{r!==null&&u.types!==null&&(r.types=u.types),v.T=r}}else try{r=a(i,l),vd(e,t,r)}catch(O){hc(e,t,O)}}function vd(e,t,a){a!==null&&typeof a=="object"&&typeof a.then=="function"?a.then(function(l){bd(e,t,l)},function(l){return hc(e,t,l)}):bd(e,t,a)}function bd(e,t,a){t.status="fulfilled",t.value=a,jd(t),e.state=a,t=e.pending,t!==null&&(a=t.next,a===t?e.pending=null:(a=a.next,t.next=a,yd(e,a)))}function hc(e,t,a){var l=e.pending;if(e.pending=null,l!==null){l=l.next;do t.status="rejected",t.reason=a,jd(t),t=t.next;while(t!==l)}e.action=null}function jd(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Nd(e,t){return t}function Sd(e,t){if(Ce){var a=He.formState;if(a!==null){e:{var l=ge;if(Ce){if(Ge){t:{for(var i=Ge,r=Xt;i.nodeType!==8;){if(!r){i=null;break t}if(i=Zt(i.nextSibling),i===null){i=null;break t}}r=i.data,i=r==="F!"||r==="F"?i:null}if(i){Ge=Zt(i.nextSibling),l=i.data==="F!";break e}}Oa(l)}l=!1}l&&(t=a[0])}}return a=gt(),a.memoizedState=a.baseState=t,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Nd,lastRenderedState:t},a.queue=l,a=Qd.bind(null,ge,l),l.dispatch=a,l=mc(!1),r=bc.bind(null,ge,!1,l.queue),l=gt(),i={state:t,dispatch:null,action:e,pending:null},l.queue=i,a=bg.bind(null,ge,i,r,a),i.dispatch=a,l.memoizedState=e,[t,a,!1]}function Cd(e){var t=$e();return wd(t,Ue,e)}function wd(e,t,a){if(t=dc(e,t,Nd)[0],e=ai(va)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var l=Yl(t)}catch(u){throw u===Vn?Ks:u}else l=t;t=$e();var i=t.queue,r=i.dispatch;return a!==t.memoizedState&&(ge.flags|=2048,$n(9,{destroy:void 0},jg.bind(null,i,a),null)),[l,r,e]}function jg(e,t){e.action=t}function zd(e){var t=$e(),a=Ue;if(a!==null)return wd(t,a,e);$e(),t=t.memoizedState,a=$e();var l=a.queue.dispatch;return a.memoizedState=e,[t,l,!1]}function $n(e,t,a,l){return e={tag:e,create:a,deps:l,inst:t,next:null},t=ge.updateQueue,t===null&&(t=ei(),ge.updateQueue=t),a=t.lastEffect,a===null?t.lastEffect=e.next=e:(l=a.next,a.next=e,e.next=l,t.lastEffect=e),e}function Td(){return $e().memoizedState}function ni(e,t,a,l){var i=gt();ge.flags|=e,i.memoizedState=$n(1|t,{destroy:void 0},a,l===void 0?null:l)}function li(e,t,a,l){var i=$e();l=l===void 0?null:l;var r=i.memoizedState.inst;Ue!==null&&l!==null&&sc(l,Ue.memoizedState.deps)?i.memoizedState=$n(t,r,a,l):(ge.flags|=e,i.memoizedState=$n(1|t,r,a,l))}function Ed(e,t){ni(8390656,8,e,t)}function xc(e,t){li(2048,8,e,t)}function Ng(e){ge.flags|=4;var t=ge.updateQueue;if(t===null)t=ei(),ge.updateQueue=t,t.events=[e];else{var a=t.events;a===null?t.events=[e]:a.push(e)}}function Ad(e){var t=$e().memoizedState;return Ng({ref:t,nextImpl:e}),function(){if((Ae&2)!==0)throw Error(o(440));return t.impl.apply(void 0,arguments)}}function Dd(e,t){return li(4,2,e,t)}function _d(e,t){return li(4,4,e,t)}function Md(e,t){if(typeof t=="function"){e=e();var a=t(e);return function(){typeof a=="function"?a():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function kd(e,t,a){a=a!=null?a.concat([e]):null,li(4,4,Md.bind(null,t,e),a)}function gc(){}function Od(e,t){var a=$e();t=t===void 0?null:t;var l=a.memoizedState;return t!==null&&sc(t,l[1])?l[0]:(a.memoizedState=[e,t],e)}function Rd(e,t){var a=$e();t=t===void 0?null:t;var l=a.memoizedState;if(t!==null&&sc(t,l[1]))return l[0];if(l=e(),yn){Aa(!0);try{e()}finally{Aa(!1)}}return a.memoizedState=[l,t],l}function pc(e,t,a){return a===void 0||(ya&1073741824)!==0&&(Ne&261930)===0?e.memoizedState=t:(e.memoizedState=a,e=Bf(),ge.lanes|=e,Ya|=e,a)}function Ud(e,t,a,l){return Mt(a,t)?a:Kn.current!==null?(e=pc(e,a,l),Mt(e,t)||(Pe=!0),e):(ya&42)===0||(ya&1073741824)!==0&&(Ne&261930)===0?(Pe=!0,e.memoizedState=a):(e=Bf(),ge.lanes|=e,Ya|=e,t)}function Bd(e,t,a,l,i){var r=D.p;D.p=r!==0&&8>r?r:8;var u=v.T,h={};v.T=h,bc(e,!1,t,a);try{var b=i(),O=v.S;if(O!==null&&O(h,b),b!==null&&typeof b=="object"&&typeof b.then=="function"){var V=pg(b,l);Vl(e,t,V,Lt(e))}else Vl(e,t,l,Lt(e))}catch($){Vl(e,t,{then:function(){},status:"rejected",reason:$},Lt())}finally{D.p=r,u!==null&&h.types!==null&&(u.types=h.types),v.T=u}}function Sg(){}function yc(e,t,a,l){if(e.tag!==5)throw Error(o(476));var i=Ld(e).queue;Bd(e,i,t,ee,a===null?Sg:function(){return Hd(e),a(l)})}function Ld(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ee,baseState:ee,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:va,lastRenderedState:ee},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:va,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Hd(e){var t=Ld(e);t.next===null&&(t=e.alternate.memoizedState),Vl(e,t.next.queue,{},Lt())}function vc(){return ft(rs)}function qd(){return $e().memoizedState}function Gd(){return $e().memoizedState}function Cg(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=Lt();e=Ba(a);var l=La(t,e,a);l!==null&&(zt(l,t,a),Hl(l,t,a)),t={cache:Fr()},e.payload=t;return}t=t.return}}function wg(e,t,a){var l=Lt();a={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},si(e)?Yd(t,a):(a=Br(e,t,a,l),a!==null&&(zt(a,e,l),Vd(a,t,l)))}function Qd(e,t,a){var l=Lt();Vl(e,t,a,l)}function Vl(e,t,a,l){var i={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(si(e))Yd(t,i);else{var r=e.alternate;if(e.lanes===0&&(r===null||r.lanes===0)&&(r=t.lastRenderedReducer,r!==null))try{var u=t.lastRenderedState,h=r(u,a);if(i.hasEagerState=!0,i.eagerState=h,Mt(h,u))return Hs(e,t,i,0),He===null&&Ls(),!1}catch{}if(a=Br(e,t,i,l),a!==null)return zt(a,e,l),Vd(a,t,l),!0}return!1}function bc(e,t,a,l){if(l={lane:2,revertLane:Ic(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},si(e)){if(t)throw Error(o(479))}else t=Br(e,a,l,2),t!==null&&zt(t,e,2)}function si(e){var t=e.alternate;return e===ge||t!==null&&t===ge}function Yd(e,t){Zn=Is=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function Vd(e,t,a){if((a&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,a|=l,t.lanes=a,Fu(e,a)}}var Xl={readContext:ft,use:ti,useCallback:Ke,useContext:Ke,useEffect:Ke,useImperativeHandle:Ke,useLayoutEffect:Ke,useInsertionEffect:Ke,useMemo:Ke,useReducer:Ke,useRef:Ke,useState:Ke,useDebugValue:Ke,useDeferredValue:Ke,useTransition:Ke,useSyncExternalStore:Ke,useId:Ke,useHostTransitionStatus:Ke,useFormState:Ke,useActionState:Ke,useOptimistic:Ke,useMemoCache:Ke,useCacheRefresh:Ke};Xl.useEffectEvent=Ke;var Xd={readContext:ft,use:ti,useCallback:function(e,t){return gt().memoizedState=[e,t===void 0?null:t],e},useContext:ft,useEffect:Ed,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,ni(4194308,4,Md.bind(null,t,e),a)},useLayoutEffect:function(e,t){return ni(4194308,4,e,t)},useInsertionEffect:function(e,t){ni(4,2,e,t)},useMemo:function(e,t){var a=gt();t=t===void 0?null:t;var l=e();if(yn){Aa(!0);try{e()}finally{Aa(!1)}}return a.memoizedState=[l,t],l},useReducer:function(e,t,a){var l=gt();if(a!==void 0){var i=a(t);if(yn){Aa(!0);try{a(t)}finally{Aa(!1)}}}else i=t;return l.memoizedState=l.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},l.queue=e,e=e.dispatch=wg.bind(null,ge,e),[l.memoizedState,e]},useRef:function(e){var t=gt();return e={current:e},t.memoizedState=e},useState:function(e){e=mc(e);var t=e.queue,a=Qd.bind(null,ge,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:gc,useDeferredValue:function(e,t){var a=gt();return pc(a,e,t)},useTransition:function(){var e=mc(!1);return e=Bd.bind(null,ge,e.queue,!0,!1),gt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var l=ge,i=gt();if(Ce){if(a===void 0)throw Error(o(407));a=a()}else{if(a=t(),He===null)throw Error(o(349));(Ne&127)!==0||fd(l,t,a)}i.memoizedState=a;var r={value:a,getSnapshot:t};return i.queue=r,Ed(hd.bind(null,l,r,e),[e]),l.flags|=2048,$n(9,{destroy:void 0},md.bind(null,l,r,a,t),null),a},useId:function(){var e=gt(),t=He.identifierPrefix;if(Ce){var a=sa,l=la;a=(l&~(1<<32-_t(l)-1)).toString(32)+a,t="_"+t+"R_"+a,a=Ps++,0<a&&(t+="H"+a.toString(32)),t+="_"}else a=yg++,t="_"+t+"r_"+a.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:vc,useFormState:Sd,useActionState:Sd,useOptimistic:function(e){var t=gt();t.memoizedState=t.baseState=e;var a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=a,t=bc.bind(null,ge,!0,a),a.dispatch=t,[e,t]},useMemoCache:oc,useCacheRefresh:function(){return gt().memoizedState=Cg.bind(null,ge)},useEffectEvent:function(e){var t=gt(),a={impl:e};return t.memoizedState=a,function(){if((Ae&2)!==0)throw Error(o(440));return a.impl.apply(void 0,arguments)}}},jc={readContext:ft,use:ti,useCallback:Od,useContext:ft,useEffect:xc,useImperativeHandle:kd,useInsertionEffect:Dd,useLayoutEffect:_d,useMemo:Rd,useReducer:ai,useRef:Td,useState:function(){return ai(va)},useDebugValue:gc,useDeferredValue:function(e,t){var a=$e();return Ud(a,Ue.memoizedState,e,t)},useTransition:function(){var e=ai(va)[0],t=$e().memoizedState;return[typeof e=="boolean"?e:Yl(e),t]},useSyncExternalStore:dd,useId:qd,useHostTransitionStatus:vc,useFormState:Cd,useActionState:Cd,useOptimistic:function(e,t){var a=$e();return pd(a,Ue,e,t)},useMemoCache:oc,useCacheRefresh:Gd};jc.useEffectEvent=Ad;var Kd={readContext:ft,use:ti,useCallback:Od,useContext:ft,useEffect:xc,useImperativeHandle:kd,useInsertionEffect:Dd,useLayoutEffect:_d,useMemo:Rd,useReducer:fc,useRef:Td,useState:function(){return fc(va)},useDebugValue:gc,useDeferredValue:function(e,t){var a=$e();return Ue===null?pc(a,e,t):Ud(a,Ue.memoizedState,e,t)},useTransition:function(){var e=fc(va)[0],t=$e().memoizedState;return[typeof e=="boolean"?e:Yl(e),t]},useSyncExternalStore:dd,useId:qd,useHostTransitionStatus:vc,useFormState:zd,useActionState:zd,useOptimistic:function(e,t){var a=$e();return Ue!==null?pd(a,Ue,e,t):(a.baseState=e,[e,a.queue.dispatch])},useMemoCache:oc,useCacheRefresh:Gd};Kd.useEffectEvent=Ad;function Nc(e,t,a,l){t=e.memoizedState,a=a(l,t),a=a==null?t:E({},t,a),e.memoizedState=a,e.lanes===0&&(e.updateQueue.baseState=a)}var Sc={enqueueSetState:function(e,t,a){e=e._reactInternals;var l=Lt(),i=Ba(l);i.payload=t,a!=null&&(i.callback=a),t=La(e,i,l),t!==null&&(zt(t,e,l),Hl(t,e,l))},enqueueReplaceState:function(e,t,a){e=e._reactInternals;var l=Lt(),i=Ba(l);i.tag=1,i.payload=t,a!=null&&(i.callback=a),t=La(e,i,l),t!==null&&(zt(t,e,l),Hl(t,e,l))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var a=Lt(),l=Ba(a);l.tag=2,t!=null&&(l.callback=t),t=La(e,l,a),t!==null&&(zt(t,e,a),Hl(t,e,a))}};function Zd(e,t,a,l,i,r,u){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(l,r,u):t.prototype&&t.prototype.isPureReactComponent?!_l(a,l)||!_l(i,r):!0}function Fd(e,t,a,l){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(a,l),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(a,l),t.state!==e&&Sc.enqueueReplaceState(t,t.state,null)}function vn(e,t){var a=t;if("ref"in t){a={};for(var l in t)l!=="ref"&&(a[l]=t[l])}if(e=e.defaultProps){a===t&&(a=E({},a));for(var i in e)a[i]===void 0&&(a[i]=e[i])}return a}function $d(e){Bs(e)}function Jd(e){console.error(e)}function Wd(e){Bs(e)}function ii(e,t){try{var a=e.onUncaughtError;a(t.value,{componentStack:t.stack})}catch(l){setTimeout(function(){throw l})}}function Id(e,t,a){try{var l=e.onCaughtError;l(a.value,{componentStack:a.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(i){setTimeout(function(){throw i})}}function Cc(e,t,a){return a=Ba(a),a.tag=3,a.payload={element:null},a.callback=function(){ii(e,t)},a}function Pd(e){return e=Ba(e),e.tag=3,e}function ef(e,t,a,l){var i=a.type.getDerivedStateFromError;if(typeof i=="function"){var r=l.value;e.payload=function(){return i(r)},e.callback=function(){Id(t,a,l)}}var u=a.stateNode;u!==null&&typeof u.componentDidCatch=="function"&&(e.callback=function(){Id(t,a,l),typeof i!="function"&&(Va===null?Va=new Set([this]):Va.add(this));var h=l.stack;this.componentDidCatch(l.value,{componentStack:h!==null?h:""})})}function zg(e,t,a,l,i){if(a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){if(t=a.alternate,t!==null&&Gn(t,a,i,!0),a=Ot.current,a!==null){switch(a.tag){case 31:case 13:return Kt===null?yi():a.alternate===null&&Ze===0&&(Ze=3),a.flags&=-257,a.flags|=65536,a.lanes=i,l===Zs?a.flags|=16384:(t=a.updateQueue,t===null?a.updateQueue=new Set([l]):t.add(l),$c(e,l,i)),!1;case 22:return a.flags|=65536,l===Zs?a.flags|=16384:(t=a.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([l])},a.updateQueue=t):(a=t.retryQueue,a===null?t.retryQueue=new Set([l]):a.add(l)),$c(e,l,i)),!1}throw Error(o(435,a.tag))}return $c(e,l,i),yi(),!1}if(Ce)return t=Ot.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=i,l!==Yr&&(e=Error(o(422),{cause:l}),Ol(Qt(e,a)))):(l!==Yr&&(t=Error(o(423),{cause:l}),Ol(Qt(t,a))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,l=Qt(l,a),i=Cc(e.stateNode,l,i),ec(e,i),Ze!==4&&(Ze=2)),!1;var r=Error(o(520),{cause:l});if(r=Qt(r,a),Pl===null?Pl=[r]:Pl.push(r),Ze!==4&&(Ze=2),t===null)return!0;l=Qt(l,a),a=t;do{switch(a.tag){case 3:return a.flags|=65536,e=i&-i,a.lanes|=e,e=Cc(a.stateNode,l,e),ec(a,e),!1;case 1:if(t=a.type,r=a.stateNode,(a.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||r!==null&&typeof r.componentDidCatch=="function"&&(Va===null||!Va.has(r))))return a.flags|=65536,i&=-i,a.lanes|=i,i=Pd(i),ef(i,e,a,l),ec(a,i),!1}a=a.return}while(a!==null);return!1}var wc=Error(o(461)),Pe=!1;function mt(e,t,a,l){t.child=e===null?ld(t,null,a,l):pn(t,e.child,a,l)}function tf(e,t,a,l,i){a=a.render;var r=t.ref;if("ref"in l){var u={};for(var h in l)h!=="ref"&&(u[h]=l[h])}else u=l;return mn(t),l=ic(e,t,a,u,r,i),h=rc(),e!==null&&!Pe?(cc(e,t,i),ba(e,t,i)):(Ce&&h&&Gr(t),t.flags|=1,mt(e,t,l,i),t.child)}function af(e,t,a,l,i){if(e===null){var r=a.type;return typeof r=="function"&&!Lr(r)&&r.defaultProps===void 0&&a.compare===null?(t.tag=15,t.type=r,nf(e,t,r,l,i)):(e=Gs(a.type,null,l,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(r=e.child,!kc(e,i)){var u=r.memoizedProps;if(a=a.compare,a=a!==null?a:_l,a(u,l)&&e.ref===t.ref)return ba(e,t,i)}return t.flags|=1,e=ha(r,l),e.ref=t.ref,e.return=t,t.child=e}function nf(e,t,a,l,i){if(e!==null){var r=e.memoizedProps;if(_l(r,l)&&e.ref===t.ref)if(Pe=!1,t.pendingProps=l=r,kc(e,i))(e.flags&131072)!==0&&(Pe=!0);else return t.lanes=e.lanes,ba(e,t,i)}return zc(e,t,a,l,i)}function lf(e,t,a,l){var i=l.children,r=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.mode==="hidden"){if((t.flags&128)!==0){if(r=r!==null?r.baseLanes|a:a,e!==null){for(l=t.child=e.child,i=0;l!==null;)i=i|l.lanes|l.childLanes,l=l.sibling;l=i&~r}else l=0,t.child=null;return sf(e,t,r,a,l)}if((a&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Xs(t,r!==null?r.cachePool:null),r!==null?rd(t,r):ac(),cd(t);else return l=t.lanes=536870912,sf(e,t,r!==null?r.baseLanes|a:a,a,l)}else r!==null?(Xs(t,r.cachePool),rd(t,r),qa(),t.memoizedState=null):(e!==null&&Xs(t,null),ac(),qa());return mt(e,t,i,a),t.child}function Kl(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function sf(e,t,a,l,i){var r=Jr();return r=r===null?null:{parent:We._currentValue,pool:r},t.memoizedState={baseLanes:a,cachePool:r},e!==null&&Xs(t,null),ac(),cd(t),e!==null&&Gn(e,t,l,!0),t.childLanes=i,null}function ri(e,t){return t=ui({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function rf(e,t,a){return pn(t,e.child,null,a),e=ri(t,t.pendingProps),e.flags|=2,Rt(t),t.memoizedState=null,e}function Tg(e,t,a){var l=t.pendingProps,i=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(Ce){if(l.mode==="hidden")return e=ri(t,l),t.lanes=536870912,Kl(null,e);if(lc(t),(e=Ge)?(e=vm(e,Xt),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ma!==null?{id:la,overflow:sa}:null,retryLane:536870912,hydrationErrors:null},a=Yo(e),a.return=t,t.child=a,dt=t,Ge=null)):e=null,e===null)throw Oa(t);return t.lanes=536870912,null}return ri(t,l)}var r=e.memoizedState;if(r!==null){var u=r.dehydrated;if(lc(t),i)if(t.flags&256)t.flags&=-257,t=rf(e,t,a);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(o(558));else if(Pe||Gn(e,t,a,!1),i=(a&e.childLanes)!==0,Pe||i){if(l=He,l!==null&&(u=$u(l,a),u!==0&&u!==r.retryLane))throw r.retryLane=u,un(e,u),zt(l,e,u),wc;yi(),t=rf(e,t,a)}else e=r.treeContext,Ge=Zt(u.nextSibling),dt=t,Ce=!0,ka=null,Xt=!1,e!==null&&Ko(t,e),t=ri(t,l),t.flags|=4096;return t}return e=ha(e.child,{mode:l.mode,children:l.children}),e.ref=t.ref,t.child=e,e.return=t,e}function ci(e,t){var a=t.ref;if(a===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof a!="function"&&typeof a!="object")throw Error(o(284));(e===null||e.ref!==a)&&(t.flags|=4194816)}}function zc(e,t,a,l,i){return mn(t),a=ic(e,t,a,l,void 0,i),l=rc(),e!==null&&!Pe?(cc(e,t,i),ba(e,t,i)):(Ce&&l&&Gr(t),t.flags|=1,mt(e,t,a,i),t.child)}function cf(e,t,a,l,i,r){return mn(t),t.updateQueue=null,a=od(t,l,a,i),ud(e),l=rc(),e!==null&&!Pe?(cc(e,t,r),ba(e,t,r)):(Ce&&l&&Gr(t),t.flags|=1,mt(e,t,a,r),t.child)}function uf(e,t,a,l,i){if(mn(t),t.stateNode===null){var r=Bn,u=a.contextType;typeof u=="object"&&u!==null&&(r=ft(u)),r=new a(l,r),t.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,r.updater=Sc,t.stateNode=r,r._reactInternals=t,r=t.stateNode,r.props=l,r.state=t.memoizedState,r.refs={},Ir(t),u=a.contextType,r.context=typeof u=="object"&&u!==null?ft(u):Bn,r.state=t.memoizedState,u=a.getDerivedStateFromProps,typeof u=="function"&&(Nc(t,a,u,l),r.state=t.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(u=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),u!==r.state&&Sc.enqueueReplaceState(r,r.state,null),Gl(t,l,r,i),ql(),r.state=t.memoizedState),typeof r.componentDidMount=="function"&&(t.flags|=4194308),l=!0}else if(e===null){r=t.stateNode;var h=t.memoizedProps,b=vn(a,h);r.props=b;var O=r.context,V=a.contextType;u=Bn,typeof V=="object"&&V!==null&&(u=ft(V));var $=a.getDerivedStateFromProps;V=typeof $=="function"||typeof r.getSnapshotBeforeUpdate=="function",h=t.pendingProps!==h,V||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(h||O!==u)&&Fd(t,r,l,u),Ua=!1;var U=t.memoizedState;r.state=U,Gl(t,l,r,i),ql(),O=t.memoizedState,h||U!==O||Ua?(typeof $=="function"&&(Nc(t,a,$,l),O=t.memoizedState),(b=Ua||Zd(t,a,b,l,U,O,u))?(V||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount()),typeof r.componentDidMount=="function"&&(t.flags|=4194308)):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=l,t.memoizedState=O),r.props=l,r.state=O,r.context=u,l=b):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),l=!1)}else{r=t.stateNode,Pr(e,t),u=t.memoizedProps,V=vn(a,u),r.props=V,$=t.pendingProps,U=r.context,O=a.contextType,b=Bn,typeof O=="object"&&O!==null&&(b=ft(O)),h=a.getDerivedStateFromProps,(O=typeof h=="function"||typeof r.getSnapshotBeforeUpdate=="function")||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(u!==$||U!==b)&&Fd(t,r,l,b),Ua=!1,U=t.memoizedState,r.state=U,Gl(t,l,r,i),ql();var Q=t.memoizedState;u!==$||U!==Q||Ua||e!==null&&e.dependencies!==null&&Ys(e.dependencies)?(typeof h=="function"&&(Nc(t,a,h,l),Q=t.memoizedState),(V=Ua||Zd(t,a,V,l,U,Q,b)||e!==null&&e.dependencies!==null&&Ys(e.dependencies))?(O||typeof r.UNSAFE_componentWillUpdate!="function"&&typeof r.componentWillUpdate!="function"||(typeof r.componentWillUpdate=="function"&&r.componentWillUpdate(l,Q,b),typeof r.UNSAFE_componentWillUpdate=="function"&&r.UNSAFE_componentWillUpdate(l,Q,b)),typeof r.componentDidUpdate=="function"&&(t.flags|=4),typeof r.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof r.componentDidUpdate!="function"||u===e.memoizedProps&&U===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&U===e.memoizedState||(t.flags|=1024),t.memoizedProps=l,t.memoizedState=Q),r.props=l,r.state=Q,r.context=b,l=V):(typeof r.componentDidUpdate!="function"||u===e.memoizedProps&&U===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||u===e.memoizedProps&&U===e.memoizedState||(t.flags|=1024),l=!1)}return r=l,ci(e,t),l=(t.flags&128)!==0,r||l?(r=t.stateNode,a=l&&typeof a.getDerivedStateFromError!="function"?null:r.render(),t.flags|=1,e!==null&&l?(t.child=pn(t,e.child,null,i),t.child=pn(t,null,a,i)):mt(e,t,a,i),t.memoizedState=r.state,e=t.child):e=ba(e,t,i),e}function of(e,t,a,l){return dn(),t.flags|=256,mt(e,t,a,l),t.child}var Tc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Ec(e){return{baseLanes:e,cachePool:Io()}}function Ac(e,t,a){return e=e!==null?e.childLanes&~a:0,t&&(e|=Bt),e}function df(e,t,a){var l=t.pendingProps,i=!1,r=(t.flags&128)!==0,u;if((u=r)||(u=e!==null&&e.memoizedState===null?!1:(Fe.current&2)!==0),u&&(i=!0,t.flags&=-129),u=(t.flags&32)!==0,t.flags&=-33,e===null){if(Ce){if(i?Ha(t):qa(),(e=Ge)?(e=vm(e,Xt),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ma!==null?{id:la,overflow:sa}:null,retryLane:536870912,hydrationErrors:null},a=Yo(e),a.return=t,t.child=a,dt=t,Ge=null)):e=null,e===null)throw Oa(t);return du(e)?t.lanes=32:t.lanes=536870912,null}var h=l.children;return l=l.fallback,i?(qa(),i=t.mode,h=ui({mode:"hidden",children:h},i),l=on(l,i,a,null),h.return=t,l.return=t,h.sibling=l,t.child=h,l=t.child,l.memoizedState=Ec(a),l.childLanes=Ac(e,u,a),t.memoizedState=Tc,Kl(null,l)):(Ha(t),Dc(t,h))}var b=e.memoizedState;if(b!==null&&(h=b.dehydrated,h!==null)){if(r)t.flags&256?(Ha(t),t.flags&=-257,t=_c(e,t,a)):t.memoizedState!==null?(qa(),t.child=e.child,t.flags|=128,t=null):(qa(),h=l.fallback,i=t.mode,l=ui({mode:"visible",children:l.children},i),h=on(h,i,a,null),h.flags|=2,l.return=t,h.return=t,l.sibling=h,t.child=l,pn(t,e.child,null,a),l=t.child,l.memoizedState=Ec(a),l.childLanes=Ac(e,u,a),t.memoizedState=Tc,t=Kl(null,l));else if(Ha(t),du(h)){if(u=h.nextSibling&&h.nextSibling.dataset,u)var O=u.dgst;u=O,l=Error(o(419)),l.stack="",l.digest=u,Ol({value:l,source:null,stack:null}),t=_c(e,t,a)}else if(Pe||Gn(e,t,a,!1),u=(a&e.childLanes)!==0,Pe||u){if(u=He,u!==null&&(l=$u(u,a),l!==0&&l!==b.retryLane))throw b.retryLane=l,un(e,l),zt(u,e,l),wc;ou(h)||yi(),t=_c(e,t,a)}else ou(h)?(t.flags|=192,t.child=e.child,t=null):(e=b.treeContext,Ge=Zt(h.nextSibling),dt=t,Ce=!0,ka=null,Xt=!1,e!==null&&Ko(t,e),t=Dc(t,l.children),t.flags|=4096);return t}return i?(qa(),h=l.fallback,i=t.mode,b=e.child,O=b.sibling,l=ha(b,{mode:"hidden",children:l.children}),l.subtreeFlags=b.subtreeFlags&65011712,O!==null?h=ha(O,h):(h=on(h,i,a,null),h.flags|=2),h.return=t,l.return=t,l.sibling=h,t.child=l,Kl(null,l),l=t.child,h=e.child.memoizedState,h===null?h=Ec(a):(i=h.cachePool,i!==null?(b=We._currentValue,i=i.parent!==b?{parent:b,pool:b}:i):i=Io(),h={baseLanes:h.baseLanes|a,cachePool:i}),l.memoizedState=h,l.childLanes=Ac(e,u,a),t.memoizedState=Tc,Kl(e.child,l)):(Ha(t),a=e.child,e=a.sibling,a=ha(a,{mode:"visible",children:l.children}),a.return=t,a.sibling=null,e!==null&&(u=t.deletions,u===null?(t.deletions=[e],t.flags|=16):u.push(e)),t.child=a,t.memoizedState=null,a)}function Dc(e,t){return t=ui({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function ui(e,t){return e=kt(22,e,null,t),e.lanes=0,e}function _c(e,t,a){return pn(t,e.child,null,a),e=Dc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function ff(e,t,a){e.lanes|=t;var l=e.alternate;l!==null&&(l.lanes|=t),Kr(e.return,t,a)}function Mc(e,t,a,l,i,r){var u=e.memoizedState;u===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:l,tail:a,tailMode:i,treeForkCount:r}:(u.isBackwards=t,u.rendering=null,u.renderingStartTime=0,u.last=l,u.tail=a,u.tailMode=i,u.treeForkCount=r)}function mf(e,t,a){var l=t.pendingProps,i=l.revealOrder,r=l.tail;l=l.children;var u=Fe.current,h=(u&2)!==0;if(h?(u=u&1|2,t.flags|=128):u&=1,X(Fe,u),mt(e,t,l,a),l=Ce?kl:0,!h&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&ff(e,a,t);else if(e.tag===19)ff(e,a,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case"forwards":for(a=t.child,i=null;a!==null;)e=a.alternate,e!==null&&Ws(e)===null&&(i=a),a=a.sibling;a=i,a===null?(i=t.child,t.child=null):(i=a.sibling,a.sibling=null),Mc(t,!1,i,a,r,l);break;case"backwards":case"unstable_legacy-backwards":for(a=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Ws(e)===null){t.child=i;break}e=i.sibling,i.sibling=a,a=i,i=e}Mc(t,!0,a,null,r,l);break;case"together":Mc(t,!1,null,null,void 0,l);break;default:t.memoizedState=null}return t.child}function ba(e,t,a){if(e!==null&&(t.dependencies=e.dependencies),Ya|=t.lanes,(a&t.childLanes)===0)if(e!==null){if(Gn(e,t,a,!1),(a&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(o(153));if(t.child!==null){for(e=t.child,a=ha(e,e.pendingProps),t.child=a,a.return=t;e.sibling!==null;)e=e.sibling,a=a.sibling=ha(e,e.pendingProps),a.return=t;a.sibling=null}return t.child}function kc(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&Ys(e)))}function Eg(e,t,a){switch(t.tag){case 3:vt(t,t.stateNode.containerInfo),Ra(t,We,e.memoizedState.cache),dn();break;case 27:case 5:xt(t);break;case 4:vt(t,t.stateNode.containerInfo);break;case 10:Ra(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,lc(t),null;break;case 13:var l=t.memoizedState;if(l!==null)return l.dehydrated!==null?(Ha(t),t.flags|=128,null):(a&t.child.childLanes)!==0?df(e,t,a):(Ha(t),e=ba(e,t,a),e!==null?e.sibling:null);Ha(t);break;case 19:var i=(e.flags&128)!==0;if(l=(a&t.childLanes)!==0,l||(Gn(e,t,a,!1),l=(a&t.childLanes)!==0),i){if(l)return mf(e,t,a);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),X(Fe,Fe.current),l)break;return null;case 22:return t.lanes=0,lf(e,t,a,t.pendingProps);case 24:Ra(t,We,e.memoizedState.cache)}return ba(e,t,a)}function hf(e,t,a){if(e!==null)if(e.memoizedProps!==t.pendingProps)Pe=!0;else{if(!kc(e,a)&&(t.flags&128)===0)return Pe=!1,Eg(e,t,a);Pe=(e.flags&131072)!==0}else Pe=!1,Ce&&(t.flags&1048576)!==0&&Xo(t,kl,t.index);switch(t.lanes=0,t.tag){case 16:e:{var l=t.pendingProps;if(e=xn(t.elementType),t.type=e,typeof e=="function")Lr(e)?(l=vn(e,l),t.tag=1,t=uf(null,t,e,l,a)):(t.tag=0,t=zc(null,t,e,l,a));else{if(e!=null){var i=e.$$typeof;if(i===N){t.tag=11,t=tf(null,t,e,l,a);break e}else if(i===F){t.tag=14,t=af(null,t,e,l,a);break e}}throw t=Z(e)||e,Error(o(306,t,""))}}return t;case 0:return zc(e,t,t.type,t.pendingProps,a);case 1:return l=t.type,i=vn(l,t.pendingProps),uf(e,t,l,i,a);case 3:e:{if(vt(t,t.stateNode.containerInfo),e===null)throw Error(o(387));l=t.pendingProps;var r=t.memoizedState;i=r.element,Pr(e,t),Gl(t,l,null,a);var u=t.memoizedState;if(l=u.cache,Ra(t,We,l),l!==r.cache&&Zr(t,[We],a,!0),ql(),l=u.element,r.isDehydrated)if(r={element:l,isDehydrated:!1,cache:u.cache},t.updateQueue.baseState=r,t.memoizedState=r,t.flags&256){t=of(e,t,l,a);break e}else if(l!==i){i=Qt(Error(o(424)),t),Ol(i),t=of(e,t,l,a);break e}else for(e=t.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,Ge=Zt(e.firstChild),dt=t,Ce=!0,ka=null,Xt=!0,a=ld(t,null,l,a),t.child=a;a;)a.flags=a.flags&-3|4096,a=a.sibling;else{if(dn(),l===i){t=ba(e,t,a);break e}mt(e,t,l,a)}t=t.child}return t;case 26:return ci(e,t),e===null?(a=wm(t.type,null,t.pendingProps,null))?t.memoizedState=a:Ce||(a=t.type,e=t.pendingProps,l=wi(Xe.current).createElement(a),l[ot]=t,l[bt]=e,ht(l,a,e),lt(l),t.stateNode=l):t.memoizedState=wm(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return xt(t),e===null&&Ce&&(l=t.stateNode=Nm(t.type,t.pendingProps,Xe.current),dt=t,Xt=!0,i=Ge,Fa(t.type)?(fu=i,Ge=Zt(l.firstChild)):Ge=i),mt(e,t,t.pendingProps.children,a),ci(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Ce&&((i=l=Ge)&&(l=lp(l,t.type,t.pendingProps,Xt),l!==null?(t.stateNode=l,dt=t,Ge=Zt(l.firstChild),Xt=!1,i=!0):i=!1),i||Oa(t)),xt(t),i=t.type,r=t.pendingProps,u=e!==null?e.memoizedProps:null,l=r.children,ru(i,r)?l=null:u!==null&&ru(i,u)&&(t.flags|=32),t.memoizedState!==null&&(i=ic(e,t,vg,null,null,a),rs._currentValue=i),ci(e,t),mt(e,t,l,a),t.child;case 6:return e===null&&Ce&&((e=a=Ge)&&(a=sp(a,t.pendingProps,Xt),a!==null?(t.stateNode=a,dt=t,Ge=null,e=!0):e=!1),e||Oa(t)),null;case 13:return df(e,t,a);case 4:return vt(t,t.stateNode.containerInfo),l=t.pendingProps,e===null?t.child=pn(t,null,l,a):mt(e,t,l,a),t.child;case 11:return tf(e,t,t.type,t.pendingProps,a);case 7:return mt(e,t,t.pendingProps,a),t.child;case 8:return mt(e,t,t.pendingProps.children,a),t.child;case 12:return mt(e,t,t.pendingProps.children,a),t.child;case 10:return l=t.pendingProps,Ra(t,t.type,l.value),mt(e,t,l.children,a),t.child;case 9:return i=t.type._context,l=t.pendingProps.children,mn(t),i=ft(i),l=l(i),t.flags|=1,mt(e,t,l,a),t.child;case 14:return af(e,t,t.type,t.pendingProps,a);case 15:return nf(e,t,t.type,t.pendingProps,a);case 19:return mf(e,t,a);case 31:return Tg(e,t,a);case 22:return lf(e,t,a,t.pendingProps);case 24:return mn(t),l=ft(We),e===null?(i=Jr(),i===null&&(i=He,r=Fr(),i.pooledCache=r,r.refCount++,r!==null&&(i.pooledCacheLanes|=a),i=r),t.memoizedState={parent:l,cache:i},Ir(t),Ra(t,We,i)):((e.lanes&a)!==0&&(Pr(e,t),Gl(t,null,null,a),ql()),i=e.memoizedState,r=t.memoizedState,i.parent!==l?(i={parent:l,cache:l},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Ra(t,We,l)):(l=r.cache,Ra(t,We,l),l!==i.cache&&Zr(t,[We],a,!0))),mt(e,t,t.pendingProps.children,a),t.child;case 29:throw t.pendingProps}throw Error(o(156,t.tag))}function ja(e){e.flags|=4}function Oc(e,t,a,l,i){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(Gf())e.flags|=8192;else throw gn=Zs,Wr}else e.flags&=-16777217}function xf(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!Dm(t))if(Gf())e.flags|=8192;else throw gn=Zs,Wr}function oi(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Ku():536870912,e.lanes|=t,Pn|=t)}function Zl(e,t){if(!Ce)switch(e.tailMode){case"hidden":t=e.tail;for(var a=null;t!==null;)t.alternate!==null&&(a=t),t=t.sibling;a===null?e.tail=null:a.sibling=null;break;case"collapsed":a=e.tail;for(var l=null;a!==null;)a.alternate!==null&&(l=a),a=a.sibling;l===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:l.sibling=null}}function Qe(e){var t=e.alternate!==null&&e.alternate.child===e.child,a=0,l=0;if(t)for(var i=e.child;i!==null;)a|=i.lanes|i.childLanes,l|=i.subtreeFlags&65011712,l|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)a|=i.lanes|i.childLanes,l|=i.subtreeFlags,l|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=l,e.childLanes=a,t}function Ag(e,t,a){var l=t.pendingProps;switch(Qr(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Qe(t),null;case 1:return Qe(t),null;case 3:return a=t.stateNode,l=null,e!==null&&(l=e.memoizedState.cache),t.memoizedState.cache!==l&&(t.flags|=2048),pa(We),ut(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(e===null||e.child===null)&&(qn(t)?ja(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,Vr())),Qe(t),null;case 26:var i=t.type,r=t.memoizedState;return e===null?(ja(t),r!==null?(Qe(t),xf(t,r)):(Qe(t),Oc(t,i,null,l,a))):r?r!==e.memoizedState?(ja(t),Qe(t),xf(t,r)):(Qe(t),t.flags&=-16777217):(e=e.memoizedProps,e!==l&&ja(t),Qe(t),Oc(t,i,e,l,a)),null;case 27:if(Tt(t),a=Xe.current,i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==l&&ja(t);else{if(!l){if(t.stateNode===null)throw Error(o(166));return Qe(t),null}e=fe.current,qn(t)?Zo(t):(e=Nm(i,l,a),t.stateNode=e,ja(t))}return Qe(t),null;case 5:if(Tt(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==l&&ja(t);else{if(!l){if(t.stateNode===null)throw Error(o(166));return Qe(t),null}if(r=fe.current,qn(t))Zo(t);else{var u=wi(Xe.current);switch(r){case 1:r=u.createElementNS("http://www.w3.org/2000/svg",i);break;case 2:r=u.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;default:switch(i){case"svg":r=u.createElementNS("http://www.w3.org/2000/svg",i);break;case"math":r=u.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;case"script":r=u.createElement("div"),r.innerHTML="<script><\/script>",r=r.removeChild(r.firstChild);break;case"select":r=typeof l.is=="string"?u.createElement("select",{is:l.is}):u.createElement("select"),l.multiple?r.multiple=!0:l.size&&(r.size=l.size);break;default:r=typeof l.is=="string"?u.createElement(i,{is:l.is}):u.createElement(i)}}r[ot]=t,r[bt]=l;e:for(u=t.child;u!==null;){if(u.tag===5||u.tag===6)r.appendChild(u.stateNode);else if(u.tag!==4&&u.tag!==27&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===t)break e;for(;u.sibling===null;){if(u.return===null||u.return===t)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}t.stateNode=r;e:switch(ht(r,i,l),i){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&ja(t)}}return Qe(t),Oc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&ja(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(o(166));if(e=Xe.current,qn(t)){if(e=t.stateNode,a=t.memoizedProps,l=null,i=dt,i!==null)switch(i.tag){case 27:case 5:l=i.memoizedProps}e[ot]=t,e=!!(e.nodeValue===a||l!==null&&l.suppressHydrationWarning===!0||dm(e.nodeValue,a)),e||Oa(t,!0)}else e=wi(e).createTextNode(l),e[ot]=t,t.stateNode=e}return Qe(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(l=qn(t),a!==null){if(e===null){if(!l)throw Error(o(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[ot]=t}else dn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Qe(t),e=!1}else a=Vr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(Rt(t),t):(Rt(t),null);if((t.flags&128)!==0)throw Error(o(558))}return Qe(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=qn(t),l!==null&&l.dehydrated!==null){if(e===null){if(!i)throw Error(o(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(o(317));i[ot]=t}else dn(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Qe(t),i=!1}else i=Vr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(Rt(t),t):(Rt(t),null)}return Rt(t),(t.flags&128)!==0?(t.lanes=a,t):(a=l!==null,e=e!==null&&e.memoizedState!==null,a&&(l=t.child,i=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(i=l.alternate.memoizedState.cachePool.pool),r=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(r=l.memoizedState.cachePool.pool),r!==i&&(l.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),oi(t,t.updateQueue),Qe(t),null);case 4:return ut(),e===null&&au(t.stateNode.containerInfo),Qe(t),null;case 10:return pa(t.type),Qe(t),null;case 19:if(me(Fe),l=t.memoizedState,l===null)return Qe(t),null;if(i=(t.flags&128)!==0,r=l.rendering,r===null)if(i)Zl(l,!1);else{if(Ze!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(r=Ws(e),r!==null){for(t.flags|=128,Zl(l,!1),e=r.updateQueue,t.updateQueue=e,oi(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)Qo(a,e),a=a.sibling;return X(Fe,Fe.current&1|2),Ce&&xa(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&At()>xi&&(t.flags|=128,i=!0,Zl(l,!1),t.lanes=4194304)}else{if(!i)if(e=Ws(r),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,oi(t,e),Zl(l,!0),l.tail===null&&l.tailMode==="hidden"&&!r.alternate&&!Ce)return Qe(t),null}else 2*At()-l.renderingStartTime>xi&&a!==536870912&&(t.flags|=128,i=!0,Zl(l,!1),t.lanes=4194304);l.isBackwards?(r.sibling=t.child,t.child=r):(e=l.last,e!==null?e.sibling=r:t.child=r,l.last=r)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=At(),e.sibling=null,a=Fe.current,X(Fe,i?a&1|2:a&1),Ce&&xa(t,l.treeForkCount),e):(Qe(t),null);case 22:case 23:return Rt(t),nc(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(a&536870912)!==0&&(t.flags&128)===0&&(Qe(t),t.subtreeFlags&6&&(t.flags|=8192)):Qe(t),a=t.updateQueue,a!==null&&oi(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==a&&(t.flags|=2048),e!==null&&me(hn),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),pa(We),Qe(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function Dg(e,t){switch(Qr(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return pa(We),ut(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Tt(t),null;case 31:if(t.memoizedState!==null){if(Rt(t),t.alternate===null)throw Error(o(340));dn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Rt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));dn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return me(Fe),null;case 4:return ut(),null;case 10:return pa(t.type),null;case 22:case 23:return Rt(t),nc(),e!==null&&me(hn),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return pa(We),null;case 25:return null;default:return null}}function gf(e,t){switch(Qr(t),t.tag){case 3:pa(We),ut();break;case 26:case 27:case 5:Tt(t);break;case 4:ut();break;case 31:t.memoizedState!==null&&Rt(t);break;case 13:Rt(t);break;case 19:me(Fe);break;case 10:pa(t.type);break;case 22:case 23:Rt(t),nc(),e!==null&&me(hn);break;case 24:pa(We)}}function Fl(e,t){try{var a=t.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var i=l.next;a=i;do{if((a.tag&e)===e){l=void 0;var r=a.create,u=a.inst;l=r(),u.destroy=l}a=a.next}while(a!==i)}}catch(h){ke(t,t.return,h)}}function Ga(e,t,a){try{var l=t.updateQueue,i=l!==null?l.lastEffect:null;if(i!==null){var r=i.next;l=r;do{if((l.tag&e)===e){var u=l.inst,h=u.destroy;if(h!==void 0){u.destroy=void 0,i=t;var b=a,O=h;try{O()}catch(V){ke(i,b,V)}}}l=l.next}while(l!==r)}}catch(V){ke(t,t.return,V)}}function pf(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{id(t,a)}catch(l){ke(e,e.return,l)}}}function yf(e,t,a){a.props=vn(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(l){ke(e,t,l)}}function $l(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof a=="function"?e.refCleanup=a(l):a.current=l}}catch(i){ke(e,t,i)}}function ia(e,t){var a=e.ref,l=e.refCleanup;if(a!==null)if(typeof l=="function")try{l()}catch(i){ke(e,t,i)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(i){ke(e,t,i)}else a.current=null}function vf(e){var t=e.type,a=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&l.focus();break e;case"img":a.src?l.src=a.src:a.srcSet&&(l.srcset=a.srcSet)}}catch(i){ke(e,e.return,i)}}function Rc(e,t,a){try{var l=e.stateNode;Ig(l,e.type,a,t),l[bt]=t}catch(i){ke(e,e.return,i)}}function bf(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Fa(e.type)||e.tag===4}function Uc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||bf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Fa(e.type)||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 Bc(e,t,a){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(e,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(e),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=fa));else if(l!==4&&(l===27&&Fa(e.type)&&(a=e.stateNode,t=null),e=e.child,e!==null))for(Bc(e,t,a),e=e.sibling;e!==null;)Bc(e,t,a),e=e.sibling}function di(e,t,a){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?a.insertBefore(e,t):a.appendChild(e);else if(l!==4&&(l===27&&Fa(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(di(e,t,a),e=e.sibling;e!==null;)di(e,t,a),e=e.sibling}function jf(e){var t=e.stateNode,a=e.memoizedProps;try{for(var l=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);ht(t,l,a),t[ot]=e,t[bt]=a}catch(r){ke(e,e.return,r)}}var Na=!1,et=!1,Lc=!1,Nf=typeof WeakSet=="function"?WeakSet:Set,st=null;function _g(e,t){if(e=e.containerInfo,su=Mi,e=ko(e),_r(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var l=a.getSelection&&a.getSelection();if(l&&l.rangeCount!==0){a=l.anchorNode;var i=l.anchorOffset,r=l.focusNode;l=l.focusOffset;try{a.nodeType,r.nodeType}catch{a=null;break e}var u=0,h=-1,b=-1,O=0,V=0,$=e,U=null;t:for(;;){for(var Q;$!==a||i!==0&&$.nodeType!==3||(h=u+i),$!==r||l!==0&&$.nodeType!==3||(b=u+l),$.nodeType===3&&(u+=$.nodeValue.length),(Q=$.firstChild)!==null;)U=$,$=Q;for(;;){if($===e)break t;if(U===a&&++O===i&&(h=u),U===r&&++V===l&&(b=u),(Q=$.nextSibling)!==null)break;$=U,U=$.parentNode}$=Q}a=h===-1||b===-1?null:{start:h,end:b}}else a=null}a=a||{start:0,end:0}}else a=null;for(iu={focusedElem:e,selectionRange:a},Mi=!1,st=t;st!==null;)if(t=st,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,st=e;else for(;st!==null;){switch(t=st,r=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(a=0;a<e.length;a++)i=e[a],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&r!==null){e=void 0,a=t,i=r.memoizedProps,r=r.memoizedState,l=a.stateNode;try{var ie=vn(a.type,i);e=l.getSnapshotBeforeUpdate(ie,r),l.__reactInternalSnapshotBeforeUpdate=e}catch(de){ke(a,a.return,de)}}break;case 3:if((e&1024)!==0){if(e=t.stateNode.containerInfo,a=e.nodeType,a===9)uu(e);else if(a===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":uu(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(o(163))}if(e=t.sibling,e!==null){e.return=t.return,st=e;break}st=t.return}}function Sf(e,t,a){var l=a.flags;switch(a.tag){case 0:case 11:case 15:Ca(e,a),l&4&&Fl(5,a);break;case 1:if(Ca(e,a),l&4)if(e=a.stateNode,t===null)try{e.componentDidMount()}catch(u){ke(a,a.return,u)}else{var i=vn(a.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(u){ke(a,a.return,u)}}l&64&&pf(a),l&512&&$l(a,a.return);break;case 3:if(Ca(e,a),l&64&&(e=a.updateQueue,e!==null)){if(t=null,a.child!==null)switch(a.child.tag){case 27:case 5:t=a.child.stateNode;break;case 1:t=a.child.stateNode}try{id(e,t)}catch(u){ke(a,a.return,u)}}break;case 27:t===null&&l&4&&jf(a);case 26:case 5:Ca(e,a),t===null&&l&4&&vf(a),l&512&&$l(a,a.return);break;case 12:Ca(e,a);break;case 31:Ca(e,a),l&4&&zf(e,a);break;case 13:Ca(e,a),l&4&&Tf(e,a),l&64&&(e=a.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(a=qg.bind(null,a),ip(e,a))));break;case 22:if(l=a.memoizedState!==null||Na,!l){t=t!==null&&t.memoizedState!==null||et,i=Na;var r=et;Na=l,(et=t)&&!r?wa(e,a,(a.subtreeFlags&8772)!==0):Ca(e,a),Na=i,et=r}break;case 30:break;default:Ca(e,a)}}function Cf(e){var t=e.alternate;t!==null&&(e.alternate=null,Cf(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&hr(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Ye=null,Nt=!1;function Sa(e,t,a){for(a=a.child;a!==null;)wf(e,t,a),a=a.sibling}function wf(e,t,a){if(Dt&&typeof Dt.onCommitFiberUnmount=="function")try{Dt.onCommitFiberUnmount(vl,a)}catch{}switch(a.tag){case 26:et||ia(a,t),Sa(e,t,a),a.memoizedState?a.memoizedState.count--:a.stateNode&&(a=a.stateNode,a.parentNode.removeChild(a));break;case 27:et||ia(a,t);var l=Ye,i=Nt;Fa(a.type)&&(Ye=a.stateNode,Nt=!1),Sa(e,t,a),ls(a.stateNode),Ye=l,Nt=i;break;case 5:et||ia(a,t);case 6:if(l=Ye,i=Nt,Ye=null,Sa(e,t,a),Ye=l,Nt=i,Ye!==null)if(Nt)try{(Ye.nodeType===9?Ye.body:Ye.nodeName==="HTML"?Ye.ownerDocument.body:Ye).removeChild(a.stateNode)}catch(r){ke(a,t,r)}else try{Ye.removeChild(a.stateNode)}catch(r){ke(a,t,r)}break;case 18:Ye!==null&&(Nt?(e=Ye,pm(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,a.stateNode),rl(e)):pm(Ye,a.stateNode));break;case 4:l=Ye,i=Nt,Ye=a.stateNode.containerInfo,Nt=!0,Sa(e,t,a),Ye=l,Nt=i;break;case 0:case 11:case 14:case 15:Ga(2,a,t),et||Ga(4,a,t),Sa(e,t,a);break;case 1:et||(ia(a,t),l=a.stateNode,typeof l.componentWillUnmount=="function"&&yf(a,t,l)),Sa(e,t,a);break;case 21:Sa(e,t,a);break;case 22:et=(l=et)||a.memoizedState!==null,Sa(e,t,a),et=l;break;default:Sa(e,t,a)}}function zf(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{rl(e)}catch(a){ke(t,t.return,a)}}}function Tf(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{rl(e)}catch(a){ke(t,t.return,a)}}function Mg(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Nf),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Nf),t;default:throw Error(o(435,e.tag))}}function fi(e,t){var a=Mg(e);t.forEach(function(l){if(!a.has(l)){a.add(l);var i=Gg.bind(null,e,l);l.then(i,i)}})}function St(e,t){var a=t.deletions;if(a!==null)for(var l=0;l<a.length;l++){var i=a[l],r=e,u=t,h=u;e:for(;h!==null;){switch(h.tag){case 27:if(Fa(h.type)){Ye=h.stateNode,Nt=!1;break e}break;case 5:Ye=h.stateNode,Nt=!1;break e;case 3:case 4:Ye=h.stateNode.containerInfo,Nt=!0;break e}h=h.return}if(Ye===null)throw Error(o(160));wf(r,u,i),Ye=null,Nt=!1,r=i.alternate,r!==null&&(r.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Ef(t,e),t=t.sibling}var Wt=null;function Ef(e,t){var a=e.alternate,l=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:St(t,e),Ct(e),l&4&&(Ga(3,e,e.return),Fl(3,e),Ga(5,e,e.return));break;case 1:St(t,e),Ct(e),l&512&&(et||a===null||ia(a,a.return)),l&64&&Na&&(e=e.updateQueue,e!==null&&(l=e.callbacks,l!==null&&(a=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=a===null?l:a.concat(l))));break;case 26:var i=Wt;if(St(t,e),Ct(e),l&512&&(et||a===null||ia(a,a.return)),l&4){var r=a!==null?a.memoizedState:null;if(l=e.memoizedState,a===null)if(l===null)if(e.stateNode===null){e:{l=e.type,a=e.memoizedProps,i=i.ownerDocument||i;t:switch(l){case"title":r=i.getElementsByTagName("title")[0],(!r||r[Nl]||r[ot]||r.namespaceURI==="http://www.w3.org/2000/svg"||r.hasAttribute("itemprop"))&&(r=i.createElement(l),i.head.insertBefore(r,i.querySelector("head > title"))),ht(r,l,a),r[ot]=e,lt(r),l=r;break e;case"link":var u=Em("link","href",i).get(l+(a.href||""));if(u){for(var h=0;h<u.length;h++)if(r=u[h],r.getAttribute("href")===(a.href==null||a.href===""?null:a.href)&&r.getAttribute("rel")===(a.rel==null?null:a.rel)&&r.getAttribute("title")===(a.title==null?null:a.title)&&r.getAttribute("crossorigin")===(a.crossOrigin==null?null:a.crossOrigin)){u.splice(h,1);break t}}r=i.createElement(l),ht(r,l,a),i.head.appendChild(r);break;case"meta":if(u=Em("meta","content",i).get(l+(a.content||""))){for(h=0;h<u.length;h++)if(r=u[h],r.getAttribute("content")===(a.content==null?null:""+a.content)&&r.getAttribute("name")===(a.name==null?null:a.name)&&r.getAttribute("property")===(a.property==null?null:a.property)&&r.getAttribute("http-equiv")===(a.httpEquiv==null?null:a.httpEquiv)&&r.getAttribute("charset")===(a.charSet==null?null:a.charSet)){u.splice(h,1);break t}}r=i.createElement(l),ht(r,l,a),i.head.appendChild(r);break;default:throw Error(o(468,l))}r[ot]=e,lt(r),l=r}e.stateNode=l}else Am(i,e.type,e.stateNode);else e.stateNode=Tm(i,l,e.memoizedProps);else r!==l?(r===null?a.stateNode!==null&&(a=a.stateNode,a.parentNode.removeChild(a)):r.count--,l===null?Am(i,e.type,e.stateNode):Tm(i,l,e.memoizedProps)):l===null&&e.stateNode!==null&&Rc(e,e.memoizedProps,a.memoizedProps)}break;case 27:St(t,e),Ct(e),l&512&&(et||a===null||ia(a,a.return)),a!==null&&l&4&&Rc(e,e.memoizedProps,a.memoizedProps);break;case 5:if(St(t,e),Ct(e),l&512&&(et||a===null||ia(a,a.return)),e.flags&32){i=e.stateNode;try{Dn(i,"")}catch(ie){ke(e,e.return,ie)}}l&4&&e.stateNode!=null&&(i=e.memoizedProps,Rc(e,i,a!==null?a.memoizedProps:i)),l&1024&&(Lc=!0);break;case 6:if(St(t,e),Ct(e),l&4){if(e.stateNode===null)throw Error(o(162));l=e.memoizedProps,a=e.stateNode;try{a.nodeValue=l}catch(ie){ke(e,e.return,ie)}}break;case 3:if(Ei=null,i=Wt,Wt=zi(t.containerInfo),St(t,e),Wt=i,Ct(e),l&4&&a!==null&&a.memoizedState.isDehydrated)try{rl(t.containerInfo)}catch(ie){ke(e,e.return,ie)}Lc&&(Lc=!1,Af(e));break;case 4:l=Wt,Wt=zi(e.stateNode.containerInfo),St(t,e),Ct(e),Wt=l;break;case 12:St(t,e),Ct(e);break;case 31:St(t,e),Ct(e),l&4&&(l=e.updateQueue,l!==null&&(e.updateQueue=null,fi(e,l)));break;case 13:St(t,e),Ct(e),e.child.flags&8192&&e.memoizedState!==null!=(a!==null&&a.memoizedState!==null)&&(hi=At()),l&4&&(l=e.updateQueue,l!==null&&(e.updateQueue=null,fi(e,l)));break;case 22:i=e.memoizedState!==null;var b=a!==null&&a.memoizedState!==null,O=Na,V=et;if(Na=O||i,et=V||b,St(t,e),et=V,Na=O,Ct(e),l&8192)e:for(t=e.stateNode,t._visibility=i?t._visibility&-2:t._visibility|1,i&&(a===null||b||Na||et||bn(e)),a=null,t=e;;){if(t.tag===5||t.tag===26){if(a===null){b=a=t;try{if(r=b.stateNode,i)u=r.style,typeof u.setProperty=="function"?u.setProperty("display","none","important"):u.display="none";else{h=b.stateNode;var $=b.memoizedProps.style,U=$!=null&&$.hasOwnProperty("display")?$.display:null;h.style.display=U==null||typeof U=="boolean"?"":(""+U).trim()}}catch(ie){ke(b,b.return,ie)}}}else if(t.tag===6){if(a===null){b=t;try{b.stateNode.nodeValue=i?"":b.memoizedProps}catch(ie){ke(b,b.return,ie)}}}else if(t.tag===18){if(a===null){b=t;try{var Q=b.stateNode;i?ym(Q,!0):ym(b.stateNode,!1)}catch(ie){ke(b,b.return,ie)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;a===t&&(a=null),t=t.return}a===t&&(a=null),t.sibling.return=t.return,t=t.sibling}l&4&&(l=e.updateQueue,l!==null&&(a=l.retryQueue,a!==null&&(l.retryQueue=null,fi(e,a))));break;case 19:St(t,e),Ct(e),l&4&&(l=e.updateQueue,l!==null&&(e.updateQueue=null,fi(e,l)));break;case 30:break;case 21:break;default:St(t,e),Ct(e)}}function Ct(e){var t=e.flags;if(t&2){try{for(var a,l=e.return;l!==null;){if(bf(l)){a=l;break}l=l.return}if(a==null)throw Error(o(160));switch(a.tag){case 27:var i=a.stateNode,r=Uc(e);di(e,r,i);break;case 5:var u=a.stateNode;a.flags&32&&(Dn(u,""),a.flags&=-33);var h=Uc(e);di(e,h,u);break;case 3:case 4:var b=a.stateNode.containerInfo,O=Uc(e);Bc(e,O,b);break;default:throw Error(o(161))}}catch(V){ke(e,e.return,V)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Af(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Af(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function Ca(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Sf(e,t.alternate,t),t=t.sibling}function bn(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Ga(4,t,t.return),bn(t);break;case 1:ia(t,t.return);var a=t.stateNode;typeof a.componentWillUnmount=="function"&&yf(t,t.return,a),bn(t);break;case 27:ls(t.stateNode);case 26:case 5:ia(t,t.return),bn(t);break;case 22:t.memoizedState===null&&bn(t);break;case 30:bn(t);break;default:bn(t)}e=e.sibling}}function wa(e,t,a){for(a=a&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var l=t.alternate,i=e,r=t,u=r.flags;switch(r.tag){case 0:case 11:case 15:wa(i,r,a),Fl(4,r);break;case 1:if(wa(i,r,a),l=r,i=l.stateNode,typeof i.componentDidMount=="function")try{i.componentDidMount()}catch(O){ke(l,l.return,O)}if(l=r,i=l.updateQueue,i!==null){var h=l.stateNode;try{var b=i.shared.hiddenCallbacks;if(b!==null)for(i.shared.hiddenCallbacks=null,i=0;i<b.length;i++)sd(b[i],h)}catch(O){ke(l,l.return,O)}}a&&u&64&&pf(r),$l(r,r.return);break;case 27:jf(r);case 26:case 5:wa(i,r,a),a&&l===null&&u&4&&vf(r),$l(r,r.return);break;case 12:wa(i,r,a);break;case 31:wa(i,r,a),a&&u&4&&zf(i,r);break;case 13:wa(i,r,a),a&&u&4&&Tf(i,r);break;case 22:r.memoizedState===null&&wa(i,r,a),$l(r,r.return);break;case 30:break;default:wa(i,r,a)}t=t.sibling}}function Hc(e,t){var a=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==a&&(e!=null&&e.refCount++,a!=null&&Rl(a))}function qc(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Rl(e))}function It(e,t,a,l){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Df(e,t,a,l),t=t.sibling}function Df(e,t,a,l){var i=t.flags;switch(t.tag){case 0:case 11:case 15:It(e,t,a,l),i&2048&&Fl(9,t);break;case 1:It(e,t,a,l);break;case 3:It(e,t,a,l),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Rl(e)));break;case 12:if(i&2048){It(e,t,a,l),e=t.stateNode;try{var r=t.memoizedProps,u=r.id,h=r.onPostCommit;typeof h=="function"&&h(u,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(b){ke(t,t.return,b)}}else It(e,t,a,l);break;case 31:It(e,t,a,l);break;case 13:It(e,t,a,l);break;case 23:break;case 22:r=t.stateNode,u=t.alternate,t.memoizedState!==null?r._visibility&2?It(e,t,a,l):Jl(e,t):r._visibility&2?It(e,t,a,l):(r._visibility|=2,Jn(e,t,a,l,(t.subtreeFlags&10256)!==0||!1)),i&2048&&Hc(u,t);break;case 24:It(e,t,a,l),i&2048&&qc(t.alternate,t);break;default:It(e,t,a,l)}}function Jn(e,t,a,l,i){for(i=i&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var r=e,u=t,h=a,b=l,O=u.flags;switch(u.tag){case 0:case 11:case 15:Jn(r,u,h,b,i),Fl(8,u);break;case 23:break;case 22:var V=u.stateNode;u.memoizedState!==null?V._visibility&2?Jn(r,u,h,b,i):Jl(r,u):(V._visibility|=2,Jn(r,u,h,b,i)),i&&O&2048&&Hc(u.alternate,u);break;case 24:Jn(r,u,h,b,i),i&&O&2048&&qc(u.alternate,u);break;default:Jn(r,u,h,b,i)}t=t.sibling}}function Jl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var a=e,l=t,i=l.flags;switch(l.tag){case 22:Jl(a,l),i&2048&&Hc(l.alternate,l);break;case 24:Jl(a,l),i&2048&&qc(l.alternate,l);break;default:Jl(a,l)}t=t.sibling}}var Wl=8192;function Wn(e,t,a){if(e.subtreeFlags&Wl)for(e=e.child;e!==null;)_f(e,t,a),e=e.sibling}function _f(e,t,a){switch(e.tag){case 26:Wn(e,t,a),e.flags&Wl&&e.memoizedState!==null&&yp(a,Wt,e.memoizedState,e.memoizedProps);break;case 5:Wn(e,t,a);break;case 3:case 4:var l=Wt;Wt=zi(e.stateNode.containerInfo),Wn(e,t,a),Wt=l;break;case 22:e.memoizedState===null&&(l=e.alternate,l!==null&&l.memoizedState!==null?(l=Wl,Wl=16777216,Wn(e,t,a),Wl=l):Wn(e,t,a));break;default:Wn(e,t,a)}}function Mf(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Il(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var l=t[a];st=l,Of(l,e)}Mf(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)kf(e),e=e.sibling}function kf(e){switch(e.tag){case 0:case 11:case 15:Il(e),e.flags&2048&&Ga(9,e,e.return);break;case 3:Il(e);break;case 12:Il(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,mi(e)):Il(e);break;default:Il(e)}}function mi(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var l=t[a];st=l,Of(l,e)}Mf(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Ga(8,t,t.return),mi(t);break;case 22:a=t.stateNode,a._visibility&2&&(a._visibility&=-3,mi(t));break;default:mi(t)}e=e.sibling}}function Of(e,t){for(;st!==null;){var a=st;switch(a.tag){case 0:case 11:case 15:Ga(8,a,t);break;case 23:case 22:if(a.memoizedState!==null&&a.memoizedState.cachePool!==null){var l=a.memoizedState.cachePool.pool;l!=null&&l.refCount++}break;case 24:Rl(a.memoizedState.cache)}if(l=a.child,l!==null)l.return=a,st=l;else e:for(a=e;st!==null;){l=st;var i=l.sibling,r=l.return;if(Cf(l),l===a){st=null;break e}if(i!==null){i.return=r,st=i;break e}st=r}}}var kg={getCacheForType:function(e){var t=ft(We),a=t.data.get(e);return a===void 0&&(a=e(),t.data.set(e,a)),a},cacheSignal:function(){return ft(We).controller.signal}},Og=typeof WeakMap=="function"?WeakMap:Map,Ae=0,He=null,ve=null,Ne=0,Me=0,Ut=null,Qa=!1,In=!1,Gc=!1,za=0,Ze=0,Ya=0,jn=0,Qc=0,Bt=0,Pn=0,Pl=null,wt=null,Yc=!1,hi=0,Rf=0,xi=1/0,gi=null,Va=null,at=0,Xa=null,el=null,Ta=0,Vc=0,Xc=null,Uf=null,es=0,Kc=null;function Lt(){return(Ae&2)!==0&&Ne!==0?Ne&-Ne:v.T!==null?Ic():Ju()}function Bf(){if(Bt===0)if((Ne&536870912)===0||Ce){var e=Cs;Cs<<=1,(Cs&3932160)===0&&(Cs=262144),Bt=e}else Bt=536870912;return e=Ot.current,e!==null&&(e.flags|=32),Bt}function zt(e,t,a){(e===He&&(Me===2||Me===9)||e.cancelPendingCommit!==null)&&(tl(e,0),Ka(e,Ne,Bt,!1)),jl(e,a),((Ae&2)===0||e!==He)&&(e===He&&((Ae&2)===0&&(jn|=a),Ze===4&&Ka(e,Ne,Bt,!1)),ra(e))}function Lf(e,t,a){if((Ae&6)!==0)throw Error(o(327));var l=!a&&(t&127)===0&&(t&e.expiredLanes)===0||bl(e,t),i=l?Bg(e,t):Fc(e,t,!0),r=l;do{if(i===0){In&&!l&&Ka(e,t,0,!1);break}else{if(a=e.current.alternate,r&&!Rg(a)){i=Fc(e,t,!1),r=!1;continue}if(i===2){if(r=t,e.errorRecoveryDisabledLanes&r)var u=0;else u=e.pendingLanes&-536870913,u=u!==0?u:u&536870912?536870912:0;if(u!==0){t=u;e:{var h=e;i=Pl;var b=h.current.memoizedState.isDehydrated;if(b&&(tl(h,u).flags|=256),u=Fc(h,u,!1),u!==2){if(Gc&&!b){h.errorRecoveryDisabledLanes|=r,jn|=r,i=4;break e}r=wt,wt=i,r!==null&&(wt===null?wt=r:wt.push.apply(wt,r))}i=u}if(r=!1,i!==2)continue}}if(i===1){tl(e,0),Ka(e,t,0,!0);break}e:{switch(l=e,r=i,r){case 0:case 1:throw Error(o(345));case 4:if((t&4194048)!==t)break;case 6:Ka(l,t,Bt,!Qa);break e;case 2:wt=null;break;case 3:case 5:break;default:throw Error(o(329))}if((t&62914560)===t&&(i=hi+300-At(),10<i)){if(Ka(l,t,Bt,!Qa),zs(l,0,!0)!==0)break e;Ta=t,l.timeoutHandle=xm(Hf.bind(null,l,a,wt,gi,Yc,t,Bt,jn,Pn,Qa,r,"Throttled",-0,0),i);break e}Hf(l,a,wt,gi,Yc,t,Bt,jn,Pn,Qa,r,null,-0,0)}}break}while(!0);ra(e)}function Hf(e,t,a,l,i,r,u,h,b,O,V,$,U,Q){if(e.timeoutHandle=-1,$=t.subtreeFlags,$&8192||($&16785408)===16785408){$={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:fa},_f(t,r,$);var ie=(r&62914560)===r?hi-At():(r&4194048)===r?Rf-At():0;if(ie=vp($,ie),ie!==null){Ta=r,e.cancelPendingCommit=ie(Zf.bind(null,e,t,r,a,l,i,u,h,b,V,$,null,U,Q)),Ka(e,r,u,!O);return}}Zf(e,t,r,a,l,i,u,h,b)}function Rg(e){for(var t=e;;){var a=t.tag;if((a===0||a===11||a===15)&&t.flags&16384&&(a=t.updateQueue,a!==null&&(a=a.stores,a!==null)))for(var l=0;l<a.length;l++){var i=a[l],r=i.getSnapshot;i=i.value;try{if(!Mt(r(),i))return!1}catch{return!1}}if(a=t.child,t.subtreeFlags&16384&&a!==null)a.return=t,t=a;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Ka(e,t,a,l){t&=~Qc,t&=~jn,e.suspendedLanes|=t,e.pingedLanes&=~t,l&&(e.warmLanes|=t),l=e.expirationTimes;for(var i=t;0<i;){var r=31-_t(i),u=1<<r;l[r]=-1,i&=~u}a!==0&&Zu(e,a,t)}function pi(){return(Ae&6)===0?(ts(0),!1):!0}function Zc(){if(ve!==null){if(Me===0)var e=ve.return;else e=ve,ga=fn=null,uc(e),Xn=null,Bl=0,e=ve;for(;e!==null;)gf(e.alternate,e),e=e.return;ve=null}}function tl(e,t){var a=e.timeoutHandle;a!==-1&&(e.timeoutHandle=-1,tp(a)),a=e.cancelPendingCommit,a!==null&&(e.cancelPendingCommit=null,a()),Ta=0,Zc(),He=e,ve=a=ha(e.current,null),Ne=t,Me=0,Ut=null,Qa=!1,In=bl(e,t),Gc=!1,Pn=Bt=Qc=jn=Ya=Ze=0,wt=Pl=null,Yc=!1,(t&8)!==0&&(t|=t&32);var l=e.entangledLanes;if(l!==0)for(e=e.entanglements,l&=t;0<l;){var i=31-_t(l),r=1<<i;t|=e[i],l&=~r}return za=t,Ls(),a}function qf(e,t){ge=null,v.H=Xl,t===Vn||t===Ks?(t=td(),Me=3):t===Wr?(t=td(),Me=4):Me=t===wc?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,Ut=t,ve===null&&(Ze=1,ii(e,Qt(t,e.current)))}function Gf(){var e=Ot.current;return e===null?!0:(Ne&4194048)===Ne?Kt===null:(Ne&62914560)===Ne||(Ne&536870912)!==0?e===Kt:!1}function Qf(){var e=v.H;return v.H=Xl,e===null?Xl:e}function Yf(){var e=v.A;return v.A=kg,e}function yi(){Ze=4,Qa||(Ne&4194048)!==Ne&&Ot.current!==null||(In=!0),(Ya&134217727)===0&&(jn&134217727)===0||He===null||Ka(He,Ne,Bt,!1)}function Fc(e,t,a){var l=Ae;Ae|=2;var i=Qf(),r=Yf();(He!==e||Ne!==t)&&(gi=null,tl(e,t)),t=!1;var u=Ze;e:do try{if(Me!==0&&ve!==null){var h=ve,b=Ut;switch(Me){case 8:Zc(),u=6;break e;case 3:case 2:case 9:case 6:Ot.current===null&&(t=!0);var O=Me;if(Me=0,Ut=null,al(e,h,b,O),a&&In){u=0;break e}break;default:O=Me,Me=0,Ut=null,al(e,h,b,O)}}Ug(),u=Ze;break}catch(V){qf(e,V)}while(!0);return t&&e.shellSuspendCounter++,ga=fn=null,Ae=l,v.H=i,v.A=r,ve===null&&(He=null,Ne=0,Ls()),u}function Ug(){for(;ve!==null;)Vf(ve)}function Bg(e,t){var a=Ae;Ae|=2;var l=Qf(),i=Yf();He!==e||Ne!==t?(gi=null,xi=At()+500,tl(e,t)):In=bl(e,t);e:do try{if(Me!==0&&ve!==null){t=ve;var r=Ut;t:switch(Me){case 1:Me=0,Ut=null,al(e,t,r,1);break;case 2:case 9:if(Po(r)){Me=0,Ut=null,Xf(t);break}t=function(){Me!==2&&Me!==9||He!==e||(Me=7),ra(e)},r.then(t,t);break e;case 3:Me=7;break e;case 4:Me=5;break e;case 7:Po(r)?(Me=0,Ut=null,Xf(t)):(Me=0,Ut=null,al(e,t,r,7));break;case 5:var u=null;switch(ve.tag){case 26:u=ve.memoizedState;case 5:case 27:var h=ve;if(u?Dm(u):h.stateNode.complete){Me=0,Ut=null;var b=h.sibling;if(b!==null)ve=b;else{var O=h.return;O!==null?(ve=O,vi(O)):ve=null}break t}}Me=0,Ut=null,al(e,t,r,5);break;case 6:Me=0,Ut=null,al(e,t,r,6);break;case 8:Zc(),Ze=6;break e;default:throw Error(o(462))}}Lg();break}catch(V){qf(e,V)}while(!0);return ga=fn=null,v.H=l,v.A=i,Ae=a,ve!==null?0:(He=null,Ne=0,Ls(),Ze)}function Lg(){for(;ve!==null&&!rx();)Vf(ve)}function Vf(e){var t=hf(e.alternate,e,za);e.memoizedProps=e.pendingProps,t===null?vi(e):ve=t}function Xf(e){var t=e,a=t.alternate;switch(t.tag){case 15:case 0:t=cf(a,t,t.pendingProps,t.type,void 0,Ne);break;case 11:t=cf(a,t,t.pendingProps,t.type.render,t.ref,Ne);break;case 5:uc(t);default:gf(a,t),t=ve=Qo(t,za),t=hf(a,t,za)}e.memoizedProps=e.pendingProps,t===null?vi(e):ve=t}function al(e,t,a,l){ga=fn=null,uc(t),Xn=null,Bl=0;var i=t.return;try{if(zg(e,i,t,a,Ne)){Ze=1,ii(e,Qt(a,e.current)),ve=null;return}}catch(r){if(i!==null)throw ve=i,r;Ze=1,ii(e,Qt(a,e.current)),ve=null;return}t.flags&32768?(Ce||l===1?e=!0:In||(Ne&536870912)!==0?e=!1:(Qa=e=!0,(l===2||l===9||l===3||l===6)&&(l=Ot.current,l!==null&&l.tag===13&&(l.flags|=16384))),Kf(t,e)):vi(t)}function vi(e){var t=e;do{if((t.flags&32768)!==0){Kf(t,Qa);return}e=t.return;var a=Ag(t.alternate,t,za);if(a!==null){ve=a;return}if(t=t.sibling,t!==null){ve=t;return}ve=t=e}while(t!==null);Ze===0&&(Ze=5)}function Kf(e,t){do{var a=Dg(e.alternate,e);if(a!==null){a.flags&=32767,ve=a;return}if(a=e.return,a!==null&&(a.flags|=32768,a.subtreeFlags=0,a.deletions=null),!t&&(e=e.sibling,e!==null)){ve=e;return}ve=e=a}while(e!==null);Ze=6,ve=null}function Zf(e,t,a,l,i,r,u,h,b){e.cancelPendingCommit=null;do bi();while(at!==0);if((Ae&6)!==0)throw Error(o(327));if(t!==null){if(t===e.current)throw Error(o(177));if(r=t.lanes|t.childLanes,r|=Ur,px(e,a,r,u,h,b),e===He&&(ve=He=null,Ne=0),el=t,Xa=e,Ta=a,Vc=r,Xc=i,Uf=l,(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,Qg(Ns,function(){return If(),null})):(e.callbackNode=null,e.callbackPriority=0),l=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||l){l=v.T,v.T=null,i=D.p,D.p=2,u=Ae,Ae|=4;try{_g(e,t,a)}finally{Ae=u,D.p=i,v.T=l}}at=1,Ff(),$f(),Jf()}}function Ff(){if(at===1){at=0;var e=Xa,t=el,a=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||a){a=v.T,v.T=null;var l=D.p;D.p=2;var i=Ae;Ae|=4;try{Ef(t,e);var r=iu,u=ko(e.containerInfo),h=r.focusedElem,b=r.selectionRange;if(u!==h&&h&&h.ownerDocument&&Mo(h.ownerDocument.documentElement,h)){if(b!==null&&_r(h)){var O=b.start,V=b.end;if(V===void 0&&(V=O),"selectionStart"in h)h.selectionStart=O,h.selectionEnd=Math.min(V,h.value.length);else{var $=h.ownerDocument||document,U=$&&$.defaultView||window;if(U.getSelection){var Q=U.getSelection(),ie=h.textContent.length,de=Math.min(b.start,ie),Le=b.end===void 0?de:Math.min(b.end,ie);!Q.extend&&de>Le&&(u=Le,Le=de,de=u);var A=_o(h,de),S=_o(h,Le);if(A&&S&&(Q.rangeCount!==1||Q.anchorNode!==A.node||Q.anchorOffset!==A.offset||Q.focusNode!==S.node||Q.focusOffset!==S.offset)){var k=$.createRange();k.setStart(A.node,A.offset),Q.removeAllRanges(),de>Le?(Q.addRange(k),Q.extend(S.node,S.offset)):(k.setEnd(S.node,S.offset),Q.addRange(k))}}}}for($=[],Q=h;Q=Q.parentNode;)Q.nodeType===1&&$.push({element:Q,left:Q.scrollLeft,top:Q.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;h<$.length;h++){var K=$[h];K.element.scrollLeft=K.left,K.element.scrollTop=K.top}}Mi=!!su,iu=su=null}finally{Ae=i,D.p=l,v.T=a}}e.current=t,at=2}}function $f(){if(at===2){at=0;var e=Xa,t=el,a=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||a){a=v.T,v.T=null;var l=D.p;D.p=2;var i=Ae;Ae|=4;try{Sf(e,t.alternate,t)}finally{Ae=i,D.p=l,v.T=a}}at=3}}function Jf(){if(at===4||at===3){at=0,cx();var e=Xa,t=el,a=Ta,l=Uf;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?at=5:(at=0,el=Xa=null,Wf(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(Va=null),fr(a),t=t.stateNode,Dt&&typeof Dt.onCommitFiberRoot=="function")try{Dt.onCommitFiberRoot(vl,t,void 0,(t.current.flags&128)===128)}catch{}if(l!==null){t=v.T,i=D.p,D.p=2,v.T=null;try{for(var r=e.onRecoverableError,u=0;u<l.length;u++){var h=l[u];r(h.value,{componentStack:h.stack})}}finally{v.T=t,D.p=i}}(Ta&3)!==0&&bi(),ra(e),i=e.pendingLanes,(a&261930)!==0&&(i&42)!==0?e===Kc?es++:(es=0,Kc=e):es=0,ts(0)}}function Wf(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Rl(t)))}function bi(){return Ff(),$f(),Jf(),If()}function If(){if(at!==5)return!1;var e=Xa,t=Vc;Vc=0;var a=fr(Ta),l=v.T,i=D.p;try{D.p=32>a?32:a,v.T=null,a=Xc,Xc=null;var r=Xa,u=Ta;if(at=0,el=Xa=null,Ta=0,(Ae&6)!==0)throw Error(o(331));var h=Ae;if(Ae|=4,kf(r.current),Df(r,r.current,u,a),Ae=h,ts(0,!1),Dt&&typeof Dt.onPostCommitFiberRoot=="function")try{Dt.onPostCommitFiberRoot(vl,r)}catch{}return!0}finally{D.p=i,v.T=l,Wf(e,t)}}function Pf(e,t,a){t=Qt(a,t),t=Cc(e.stateNode,t,2),e=La(e,t,2),e!==null&&(jl(e,2),ra(e))}function ke(e,t,a){if(e.tag===3)Pf(e,e,a);else for(;t!==null;){if(t.tag===3){Pf(t,e,a);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Va===null||!Va.has(l))){e=Qt(a,e),a=Pd(2),l=La(t,a,2),l!==null&&(ef(a,l,t,e),jl(l,2),ra(l));break}}t=t.return}}function $c(e,t,a){var l=e.pingCache;if(l===null){l=e.pingCache=new Og;var i=new Set;l.set(t,i)}else i=l.get(t),i===void 0&&(i=new Set,l.set(t,i));i.has(a)||(Gc=!0,i.add(a),e=Hg.bind(null,e,t,a),t.then(e,e))}function Hg(e,t,a){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,He===e&&(Ne&a)===a&&(Ze===4||Ze===3&&(Ne&62914560)===Ne&&300>At()-hi?(Ae&2)===0&&tl(e,0):Qc|=a,Pn===Ne&&(Pn=0)),ra(e)}function em(e,t){t===0&&(t=Ku()),e=un(e,t),e!==null&&(jl(e,t),ra(e))}function qg(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),em(e,a)}function Gg(e,t){var a=0;switch(e.tag){case 31:case 13:var l=e.stateNode,i=e.memoizedState;i!==null&&(a=i.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(o(314))}l!==null&&l.delete(t),em(e,a)}function Qg(e,t){return cr(e,t)}var ji=null,nl=null,Jc=!1,Ni=!1,Wc=!1,Za=0;function ra(e){e!==nl&&e.next===null&&(nl===null?ji=nl=e:nl=nl.next=e),Ni=!0,Jc||(Jc=!0,Vg())}function ts(e,t){if(!Wc&&Ni){Wc=!0;do for(var a=!1,l=ji;l!==null;){if(e!==0){var i=l.pendingLanes;if(i===0)var r=0;else{var u=l.suspendedLanes,h=l.pingedLanes;r=(1<<31-_t(42|e)+1)-1,r&=i&~(u&~h),r=r&201326741?r&201326741|1:r?r|2:0}r!==0&&(a=!0,lm(l,r))}else r=Ne,r=zs(l,l===He?r:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(r&3)===0||bl(l,r)||(a=!0,lm(l,r));l=l.next}while(a);Wc=!1}}function Yg(){tm()}function tm(){Ni=Jc=!1;var e=0;Za!==0&&ep()&&(e=Za);for(var t=At(),a=null,l=ji;l!==null;){var i=l.next,r=am(l,t);r===0?(l.next=null,a===null?ji=i:a.next=i,i===null&&(nl=a)):(a=l,(e!==0||(r&3)!==0)&&(Ni=!0)),l=i}at!==0&&at!==5||ts(e),Za!==0&&(Za=0)}function am(e,t){for(var a=e.suspendedLanes,l=e.pingedLanes,i=e.expirationTimes,r=e.pendingLanes&-62914561;0<r;){var u=31-_t(r),h=1<<u,b=i[u];b===-1?((h&a)===0||(h&l)!==0)&&(i[u]=gx(h,t)):b<=t&&(e.expiredLanes|=h),r&=~h}if(t=He,a=Ne,a=zs(e,e===t?a:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),l=e.callbackNode,a===0||e===t&&(Me===2||Me===9)||e.cancelPendingCommit!==null)return l!==null&&l!==null&&ur(l),e.callbackNode=null,e.callbackPriority=0;if((a&3)===0||bl(e,a)){if(t=a&-a,t===e.callbackPriority)return t;switch(l!==null&&ur(l),fr(a)){case 2:case 8:a=Vu;break;case 32:a=Ns;break;case 268435456:a=Xu;break;default:a=Ns}return l=nm.bind(null,e),a=cr(a,l),e.callbackPriority=t,e.callbackNode=a,t}return l!==null&&l!==null&&ur(l),e.callbackPriority=2,e.callbackNode=null,2}function nm(e,t){if(at!==0&&at!==5)return e.callbackNode=null,e.callbackPriority=0,null;var a=e.callbackNode;if(bi()&&e.callbackNode!==a)return null;var l=Ne;return l=zs(e,e===He?l:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),l===0?null:(Lf(e,l,t),am(e,At()),e.callbackNode!=null&&e.callbackNode===a?nm.bind(null,e):null)}function lm(e,t){if(bi())return null;Lf(e,t,!0)}function Vg(){ap(function(){(Ae&6)!==0?cr(Yu,Yg):tm()})}function Ic(){if(Za===0){var e=Qn;e===0&&(e=Ss,Ss<<=1,(Ss&261888)===0&&(Ss=256)),Za=e}return Za}function sm(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:Ds(""+e)}function im(e,t){var a=t.ownerDocument.createElement("input");return a.name=t.name,a.value=t.value,e.id&&a.setAttribute("form",e.id),t.parentNode.insertBefore(a,t),e=new FormData(e),a.parentNode.removeChild(a),e}function Xg(e,t,a,l,i){if(t==="submit"&&a&&a.stateNode===i){var r=sm((i[bt]||null).action),u=l.submitter;u&&(t=(t=u[bt]||null)?sm(t.formAction):u.getAttribute("formAction"),t!==null&&(r=t,u=null));var h=new Os("action","action",null,l,i);e.push({event:h,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(Za!==0){var b=u?im(i,u):new FormData(i);yc(a,{pending:!0,data:b,method:i.method,action:r},null,b)}}else typeof r=="function"&&(h.preventDefault(),b=u?im(i,u):new FormData(i),yc(a,{pending:!0,data:b,method:i.method,action:r},r,b))},currentTarget:i}]})}}for(var Pc=0;Pc<Rr.length;Pc++){var eu=Rr[Pc],Kg=eu.toLowerCase(),Zg=eu[0].toUpperCase()+eu.slice(1);Jt(Kg,"on"+Zg)}Jt(Uo,"onAnimationEnd"),Jt(Bo,"onAnimationIteration"),Jt(Lo,"onAnimationStart"),Jt("dblclick","onDoubleClick"),Jt("focusin","onFocus"),Jt("focusout","onBlur"),Jt(ug,"onTransitionRun"),Jt(og,"onTransitionStart"),Jt(dg,"onTransitionCancel"),Jt(Ho,"onTransitionEnd"),En("onMouseEnter",["mouseout","mouseover"]),En("onMouseLeave",["mouseout","mouseover"]),En("onPointerEnter",["pointerout","pointerover"]),En("onPointerLeave",["pointerout","pointerover"]),ln("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),ln("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),ln("onBeforeInput",["compositionend","keypress","textInput","paste"]),ln("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),ln("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),ln("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var as="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(" "),Fg=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(as));function rm(e,t){t=(t&4)!==0;for(var a=0;a<e.length;a++){var l=e[a],i=l.event;l=l.listeners;e:{var r=void 0;if(t)for(var u=l.length-1;0<=u;u--){var h=l[u],b=h.instance,O=h.currentTarget;if(h=h.listener,b!==r&&i.isPropagationStopped())break e;r=h,i.currentTarget=O;try{r(i)}catch(V){Bs(V)}i.currentTarget=null,r=b}else for(u=0;u<l.length;u++){if(h=l[u],b=h.instance,O=h.currentTarget,h=h.listener,b!==r&&i.isPropagationStopped())break e;r=h,i.currentTarget=O;try{r(i)}catch(V){Bs(V)}i.currentTarget=null,r=b}}}}function be(e,t){var a=t[mr];a===void 0&&(a=t[mr]=new Set);var l=e+"__bubble";a.has(l)||(cm(t,e,2,!1),a.add(l))}function tu(e,t,a){var l=0;t&&(l|=4),cm(a,e,l,t)}var Si="_reactListening"+Math.random().toString(36).slice(2);function au(e){if(!e[Si]){e[Si]=!0,Pu.forEach(function(a){a!=="selectionchange"&&(Fg.has(a)||tu(a,!1,e),tu(a,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Si]||(t[Si]=!0,tu("selectionchange",!1,t))}}function cm(e,t,a,l){switch(Bm(t)){case 2:var i=Np;break;case 8:i=Sp;break;default:i=pu}a=i.bind(null,t,a,e),i=void 0,!Nr||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),l?i!==void 0?e.addEventListener(t,a,{capture:!0,passive:i}):e.addEventListener(t,a,!0):i!==void 0?e.addEventListener(t,a,{passive:i}):e.addEventListener(t,a,!1)}function nu(e,t,a,l,i){var r=l;if((t&1)===0&&(t&2)===0&&l!==null)e:for(;;){if(l===null)return;var u=l.tag;if(u===3||u===4){var h=l.stateNode.containerInfo;if(h===i)break;if(u===4)for(u=l.return;u!==null;){var b=u.tag;if((b===3||b===4)&&u.stateNode.containerInfo===i)return;u=u.return}for(;h!==null;){if(u=wn(h),u===null)return;if(b=u.tag,b===5||b===6||b===26||b===27){l=r=u;continue e}h=h.parentNode}}l=l.return}fo(function(){var O=r,V=br(a),$=[];e:{var U=qo.get(e);if(U!==void 0){var Q=Os,ie=e;switch(e){case"keypress":if(Ms(a)===0)break e;case"keydown":case"keyup":Q=Gx;break;case"focusin":ie="focus",Q=zr;break;case"focusout":ie="blur",Q=zr;break;case"beforeblur":case"afterblur":Q=zr;break;case"click":if(a.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":Q=xo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":Q=Ax;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":Q=Vx;break;case Uo:case Bo:case Lo:Q=Mx;break;case Ho:Q=Kx;break;case"scroll":case"scrollend":Q=Tx;break;case"wheel":Q=Fx;break;case"copy":case"cut":case"paste":Q=Ox;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":Q=po;break;case"toggle":case"beforetoggle":Q=Jx}var de=(t&4)!==0,Le=!de&&(e==="scroll"||e==="scrollend"),A=de?U!==null?U+"Capture":null:U;de=[];for(var S=O,k;S!==null;){var K=S;if(k=K.stateNode,K=K.tag,K!==5&&K!==26&&K!==27||k===null||A===null||(K=Cl(S,A),K!=null&&de.push(ns(S,K,k))),Le)break;S=S.return}0<de.length&&(U=new Q(U,ie,null,a,V),$.push({event:U,listeners:de}))}}if((t&7)===0){e:{if(U=e==="mouseover"||e==="pointerover",Q=e==="mouseout"||e==="pointerout",U&&a!==vr&&(ie=a.relatedTarget||a.fromElement)&&(wn(ie)||ie[Cn]))break e;if((Q||U)&&(U=V.window===V?V:(U=V.ownerDocument)?U.defaultView||U.parentWindow:window,Q?(ie=a.relatedTarget||a.toElement,Q=O,ie=ie?wn(ie):null,ie!==null&&(Le=x(ie),de=ie.tag,ie!==Le||de!==5&&de!==27&&de!==6)&&(ie=null)):(Q=null,ie=O),Q!==ie)){if(de=xo,K="onMouseLeave",A="onMouseEnter",S="mouse",(e==="pointerout"||e==="pointerover")&&(de=po,K="onPointerLeave",A="onPointerEnter",S="pointer"),Le=Q==null?U:Sl(Q),k=ie==null?U:Sl(ie),U=new de(K,S+"leave",Q,a,V),U.target=Le,U.relatedTarget=k,K=null,wn(V)===O&&(de=new de(A,S+"enter",ie,a,V),de.target=k,de.relatedTarget=Le,K=de),Le=K,Q&&ie)t:{for(de=$g,A=Q,S=ie,k=0,K=A;K;K=de(K))k++;K=0;for(var ce=S;ce;ce=de(ce))K++;for(;0<k-K;)A=de(A),k--;for(;0<K-k;)S=de(S),K--;for(;k--;){if(A===S||S!==null&&A===S.alternate){de=A;break t}A=de(A),S=de(S)}de=null}else de=null;Q!==null&&um($,U,Q,de,!1),ie!==null&&Le!==null&&um($,Le,ie,de,!0)}}e:{if(U=O?Sl(O):window,Q=U.nodeName&&U.nodeName.toLowerCase(),Q==="select"||Q==="input"&&U.type==="file")var Te=wo;else if(So(U))if(zo)Te=ig;else{Te=lg;var re=ng}else Q=U.nodeName,!Q||Q.toLowerCase()!=="input"||U.type!=="checkbox"&&U.type!=="radio"?O&&yr(O.elementType)&&(Te=wo):Te=sg;if(Te&&(Te=Te(e,O))){Co($,Te,a,V);break e}re&&re(e,U,O),e==="focusout"&&O&&U.type==="number"&&O.memoizedProps.value!=null&&pr(U,"number",U.value)}switch(re=O?Sl(O):window,e){case"focusin":(So(re)||re.contentEditable==="true")&&(On=re,Mr=O,Ml=null);break;case"focusout":Ml=Mr=On=null;break;case"mousedown":kr=!0;break;case"contextmenu":case"mouseup":case"dragend":kr=!1,Oo($,a,V);break;case"selectionchange":if(cg)break;case"keydown":case"keyup":Oo($,a,V)}var ye;if(Er)e:{switch(e){case"compositionstart":var Se="onCompositionStart";break e;case"compositionend":Se="onCompositionEnd";break e;case"compositionupdate":Se="onCompositionUpdate";break e}Se=void 0}else kn?jo(e,a)&&(Se="onCompositionEnd"):e==="keydown"&&a.keyCode===229&&(Se="onCompositionStart");Se&&(yo&&a.locale!=="ko"&&(kn||Se!=="onCompositionStart"?Se==="onCompositionEnd"&&kn&&(ye=mo()):(_a=V,Sr="value"in _a?_a.value:_a.textContent,kn=!0)),re=Ci(O,Se),0<re.length&&(Se=new go(Se,e,null,a,V),$.push({event:Se,listeners:re}),ye?Se.data=ye:(ye=No(a),ye!==null&&(Se.data=ye)))),(ye=Ix?Px(e,a):eg(e,a))&&(Se=Ci(O,"onBeforeInput"),0<Se.length&&(re=new go("onBeforeInput","beforeinput",null,a,V),$.push({event:re,listeners:Se}),re.data=ye)),Xg($,e,O,a,V)}rm($,t)})}function ns(e,t,a){return{instance:e,listener:t,currentTarget:a}}function Ci(e,t){for(var a=t+"Capture",l=[];e!==null;){var i=e,r=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||r===null||(i=Cl(e,a),i!=null&&l.unshift(ns(e,i,r)),i=Cl(e,t),i!=null&&l.push(ns(e,i,r))),e.tag===3)return l;e=e.return}return[]}function $g(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function um(e,t,a,l,i){for(var r=t._reactName,u=[];a!==null&&a!==l;){var h=a,b=h.alternate,O=h.stateNode;if(h=h.tag,b!==null&&b===l)break;h!==5&&h!==26&&h!==27||O===null||(b=O,i?(O=Cl(a,r),O!=null&&u.unshift(ns(a,O,b))):i||(O=Cl(a,r),O!=null&&u.push(ns(a,O,b)))),a=a.return}u.length!==0&&e.push({event:t,listeners:u})}var Jg=/\r\n?/g,Wg=/\u0000|\uFFFD/g;function om(e){return(typeof e=="string"?e:""+e).replace(Jg,`
9
- `).replace(Wg,"")}function dm(e,t){return t=om(t),om(e)===t}function Be(e,t,a,l,i,r){switch(a){case"children":typeof l=="string"?t==="body"||t==="textarea"&&l===""||Dn(e,l):(typeof l=="number"||typeof l=="bigint")&&t!=="body"&&Dn(e,""+l);break;case"className":Es(e,"class",l);break;case"tabIndex":Es(e,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":Es(e,a,l);break;case"style":uo(e,l,r);break;case"data":if(t!=="object"){Es(e,"data",l);break}case"src":case"href":if(l===""&&(t!=="a"||a!=="href")){e.removeAttribute(a);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){e.removeAttribute(a);break}l=Ds(""+l),e.setAttribute(a,l);break;case"action":case"formAction":if(typeof l=="function"){e.setAttribute(a,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof r=="function"&&(a==="formAction"?(t!=="input"&&Be(e,t,"name",i.name,i,null),Be(e,t,"formEncType",i.formEncType,i,null),Be(e,t,"formMethod",i.formMethod,i,null),Be(e,t,"formTarget",i.formTarget,i,null)):(Be(e,t,"encType",i.encType,i,null),Be(e,t,"method",i.method,i,null),Be(e,t,"target",i.target,i,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){e.removeAttribute(a);break}l=Ds(""+l),e.setAttribute(a,l);break;case"onClick":l!=null&&(e.onclick=fa);break;case"onScroll":l!=null&&be("scroll",e);break;case"onScrollEnd":l!=null&&be("scrollend",e);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(o(61));if(a=l.__html,a!=null){if(i.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"multiple":e.multiple=l&&typeof l!="function"&&typeof l!="symbol";break;case"muted":e.muted=l&&typeof l!="function"&&typeof l!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(l==null||typeof l=="function"||typeof l=="boolean"||typeof l=="symbol"){e.removeAttribute("xlink:href");break}a=Ds(""+l),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",a);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":l!=null&&typeof l!="function"&&typeof l!="symbol"?e.setAttribute(a,""+l):e.removeAttribute(a);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":l&&typeof l!="function"&&typeof l!="symbol"?e.setAttribute(a,""):e.removeAttribute(a);break;case"capture":case"download":l===!0?e.setAttribute(a,""):l!==!1&&l!=null&&typeof l!="function"&&typeof l!="symbol"?e.setAttribute(a,l):e.removeAttribute(a);break;case"cols":case"rows":case"size":case"span":l!=null&&typeof l!="function"&&typeof l!="symbol"&&!isNaN(l)&&1<=l?e.setAttribute(a,l):e.removeAttribute(a);break;case"rowSpan":case"start":l==null||typeof l=="function"||typeof l=="symbol"||isNaN(l)?e.removeAttribute(a):e.setAttribute(a,l);break;case"popover":be("beforetoggle",e),be("toggle",e),Ts(e,"popover",l);break;case"xlinkActuate":da(e,"http://www.w3.org/1999/xlink","xlink:actuate",l);break;case"xlinkArcrole":da(e,"http://www.w3.org/1999/xlink","xlink:arcrole",l);break;case"xlinkRole":da(e,"http://www.w3.org/1999/xlink","xlink:role",l);break;case"xlinkShow":da(e,"http://www.w3.org/1999/xlink","xlink:show",l);break;case"xlinkTitle":da(e,"http://www.w3.org/1999/xlink","xlink:title",l);break;case"xlinkType":da(e,"http://www.w3.org/1999/xlink","xlink:type",l);break;case"xmlBase":da(e,"http://www.w3.org/XML/1998/namespace","xml:base",l);break;case"xmlLang":da(e,"http://www.w3.org/XML/1998/namespace","xml:lang",l);break;case"xmlSpace":da(e,"http://www.w3.org/XML/1998/namespace","xml:space",l);break;case"is":Ts(e,"is",l);break;case"innerText":case"textContent":break;default:(!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(a=wx.get(a)||a,Ts(e,a,l))}}function lu(e,t,a,l,i,r){switch(a){case"style":uo(e,l,r);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(o(61));if(a=l.__html,a!=null){if(i.children!=null)throw Error(o(60));e.innerHTML=a}}break;case"children":typeof l=="string"?Dn(e,l):(typeof l=="number"||typeof l=="bigint")&&Dn(e,""+l);break;case"onScroll":l!=null&&be("scroll",e);break;case"onScrollEnd":l!=null&&be("scrollend",e);break;case"onClick":l!=null&&(e.onclick=fa);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!eo.hasOwnProperty(a))e:{if(a[0]==="o"&&a[1]==="n"&&(i=a.endsWith("Capture"),t=a.slice(2,i?a.length-7:void 0),r=e[bt]||null,r=r!=null?r[a]:null,typeof r=="function"&&e.removeEventListener(t,r,i),typeof l=="function")){typeof r!="function"&&r!==null&&(a in e?e[a]=null:e.hasAttribute(a)&&e.removeAttribute(a)),e.addEventListener(t,l,i);break e}a in e?e[a]=l:l===!0?e.setAttribute(a,""):Ts(e,a,l)}}}function ht(e,t,a){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":be("error",e),be("load",e);var l=!1,i=!1,r;for(r in a)if(a.hasOwnProperty(r)){var u=a[r];if(u!=null)switch(r){case"src":l=!0;break;case"srcSet":i=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(o(137,t));default:Be(e,t,r,u,a,null)}}i&&Be(e,t,"srcSet",a.srcSet,a,null),l&&Be(e,t,"src",a.src,a,null);return;case"input":be("invalid",e);var h=r=u=i=null,b=null,O=null;for(l in a)if(a.hasOwnProperty(l)){var V=a[l];if(V!=null)switch(l){case"name":i=V;break;case"type":u=V;break;case"checked":b=V;break;case"defaultChecked":O=V;break;case"value":r=V;break;case"defaultValue":h=V;break;case"children":case"dangerouslySetInnerHTML":if(V!=null)throw Error(o(137,t));break;default:Be(e,t,l,V,a,null)}}so(e,r,h,b,O,u,i,!1);return;case"select":be("invalid",e),l=u=r=null;for(i in a)if(a.hasOwnProperty(i)&&(h=a[i],h!=null))switch(i){case"value":r=h;break;case"defaultValue":u=h;break;case"multiple":l=h;default:Be(e,t,i,h,a,null)}t=r,a=u,e.multiple=!!l,t!=null?An(e,!!l,t,!1):a!=null&&An(e,!!l,a,!0);return;case"textarea":be("invalid",e),r=i=l=null;for(u in a)if(a.hasOwnProperty(u)&&(h=a[u],h!=null))switch(u){case"value":l=h;break;case"defaultValue":i=h;break;case"children":r=h;break;case"dangerouslySetInnerHTML":if(h!=null)throw Error(o(91));break;default:Be(e,t,u,h,a,null)}ro(e,l,i,r);return;case"option":for(b in a)a.hasOwnProperty(b)&&(l=a[b],l!=null)&&(b==="selected"?e.selected=l&&typeof l!="function"&&typeof l!="symbol":Be(e,t,b,l,a,null));return;case"dialog":be("beforetoggle",e),be("toggle",e),be("cancel",e),be("close",e);break;case"iframe":case"object":be("load",e);break;case"video":case"audio":for(l=0;l<as.length;l++)be(as[l],e);break;case"image":be("error",e),be("load",e);break;case"details":be("toggle",e);break;case"embed":case"source":case"link":be("error",e),be("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(O in a)if(a.hasOwnProperty(O)&&(l=a[O],l!=null))switch(O){case"children":case"dangerouslySetInnerHTML":throw Error(o(137,t));default:Be(e,t,O,l,a,null)}return;default:if(yr(t)){for(V in a)a.hasOwnProperty(V)&&(l=a[V],l!==void 0&&lu(e,t,V,l,a,void 0));return}}for(h in a)a.hasOwnProperty(h)&&(l=a[h],l!=null&&Be(e,t,h,l,a,null))}function Ig(e,t,a,l){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var i=null,r=null,u=null,h=null,b=null,O=null,V=null;for(Q in a){var $=a[Q];if(a.hasOwnProperty(Q)&&$!=null)switch(Q){case"checked":break;case"value":break;case"defaultValue":b=$;default:l.hasOwnProperty(Q)||Be(e,t,Q,null,l,$)}}for(var U in l){var Q=l[U];if($=a[U],l.hasOwnProperty(U)&&(Q!=null||$!=null))switch(U){case"type":r=Q;break;case"name":i=Q;break;case"checked":O=Q;break;case"defaultChecked":V=Q;break;case"value":u=Q;break;case"defaultValue":h=Q;break;case"children":case"dangerouslySetInnerHTML":if(Q!=null)throw Error(o(137,t));break;default:Q!==$&&Be(e,t,U,Q,l,$)}}gr(e,u,h,b,O,V,r,i);return;case"select":Q=u=h=U=null;for(r in a)if(b=a[r],a.hasOwnProperty(r)&&b!=null)switch(r){case"value":break;case"multiple":Q=b;default:l.hasOwnProperty(r)||Be(e,t,r,null,l,b)}for(i in l)if(r=l[i],b=a[i],l.hasOwnProperty(i)&&(r!=null||b!=null))switch(i){case"value":U=r;break;case"defaultValue":h=r;break;case"multiple":u=r;default:r!==b&&Be(e,t,i,r,l,b)}t=h,a=u,l=Q,U!=null?An(e,!!a,U,!1):!!l!=!!a&&(t!=null?An(e,!!a,t,!0):An(e,!!a,a?[]:"",!1));return;case"textarea":Q=U=null;for(h in a)if(i=a[h],a.hasOwnProperty(h)&&i!=null&&!l.hasOwnProperty(h))switch(h){case"value":break;case"children":break;default:Be(e,t,h,null,l,i)}for(u in l)if(i=l[u],r=a[u],l.hasOwnProperty(u)&&(i!=null||r!=null))switch(u){case"value":U=i;break;case"defaultValue":Q=i;break;case"children":break;case"dangerouslySetInnerHTML":if(i!=null)throw Error(o(91));break;default:i!==r&&Be(e,t,u,i,l,r)}io(e,U,Q);return;case"option":for(var ie in a)U=a[ie],a.hasOwnProperty(ie)&&U!=null&&!l.hasOwnProperty(ie)&&(ie==="selected"?e.selected=!1:Be(e,t,ie,null,l,U));for(b in l)U=l[b],Q=a[b],l.hasOwnProperty(b)&&U!==Q&&(U!=null||Q!=null)&&(b==="selected"?e.selected=U&&typeof U!="function"&&typeof U!="symbol":Be(e,t,b,U,l,Q));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var de in a)U=a[de],a.hasOwnProperty(de)&&U!=null&&!l.hasOwnProperty(de)&&Be(e,t,de,null,l,U);for(O in l)if(U=l[O],Q=a[O],l.hasOwnProperty(O)&&U!==Q&&(U!=null||Q!=null))switch(O){case"children":case"dangerouslySetInnerHTML":if(U!=null)throw Error(o(137,t));break;default:Be(e,t,O,U,l,Q)}return;default:if(yr(t)){for(var Le in a)U=a[Le],a.hasOwnProperty(Le)&&U!==void 0&&!l.hasOwnProperty(Le)&&lu(e,t,Le,void 0,l,U);for(V in l)U=l[V],Q=a[V],!l.hasOwnProperty(V)||U===Q||U===void 0&&Q===void 0||lu(e,t,V,U,l,Q);return}}for(var A in a)U=a[A],a.hasOwnProperty(A)&&U!=null&&!l.hasOwnProperty(A)&&Be(e,t,A,null,l,U);for($ in l)U=l[$],Q=a[$],!l.hasOwnProperty($)||U===Q||U==null&&Q==null||Be(e,t,$,U,l,Q)}function fm(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function Pg(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,a=performance.getEntriesByType("resource"),l=0;l<a.length;l++){var i=a[l],r=i.transferSize,u=i.initiatorType,h=i.duration;if(r&&h&&fm(u)){for(u=0,h=i.responseEnd,l+=1;l<a.length;l++){var b=a[l],O=b.startTime;if(O>h)break;var V=b.transferSize,$=b.initiatorType;V&&fm($)&&(b=b.responseEnd,u+=V*(b<h?1:(h-O)/(b-O)))}if(--l,t+=8*(r+u)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var su=null,iu=null;function wi(e){return e.nodeType===9?e:e.ownerDocument}function mm(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function hm(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function ru(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var cu=null;function ep(){var e=window.event;return e&&e.type==="popstate"?e===cu?!1:(cu=e,!0):(cu=null,!1)}var xm=typeof setTimeout=="function"?setTimeout:void 0,tp=typeof clearTimeout=="function"?clearTimeout:void 0,gm=typeof Promise=="function"?Promise:void 0,ap=typeof queueMicrotask=="function"?queueMicrotask:typeof gm<"u"?function(e){return gm.resolve(null).then(e).catch(np)}:xm;function np(e){setTimeout(function(){throw e})}function Fa(e){return e==="head"}function pm(e,t){var a=t,l=0;do{var i=a.nextSibling;if(e.removeChild(a),i&&i.nodeType===8)if(a=i.data,a==="/$"||a==="/&"){if(l===0){e.removeChild(i),rl(t);return}l--}else if(a==="$"||a==="$?"||a==="$~"||a==="$!"||a==="&")l++;else if(a==="html")ls(e.ownerDocument.documentElement);else if(a==="head"){a=e.ownerDocument.head,ls(a);for(var r=a.firstChild;r;){var u=r.nextSibling,h=r.nodeName;r[Nl]||h==="SCRIPT"||h==="STYLE"||h==="LINK"&&r.rel.toLowerCase()==="stylesheet"||a.removeChild(r),r=u}}else a==="body"&&ls(e.ownerDocument.body);a=i}while(a);rl(t)}function ym(e,t){var a=e;e=0;do{var l=a.nextSibling;if(a.nodeType===1?t?(a._stashedDisplay=a.style.display,a.style.display="none"):(a.style.display=a._stashedDisplay||"",a.getAttribute("style")===""&&a.removeAttribute("style")):a.nodeType===3&&(t?(a._stashedText=a.nodeValue,a.nodeValue=""):a.nodeValue=a._stashedText||""),l&&l.nodeType===8)if(a=l.data,a==="/$"){if(e===0)break;e--}else a!=="$"&&a!=="$?"&&a!=="$~"&&a!=="$!"||e++;a=l}while(a)}function uu(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var a=t;switch(t=t.nextSibling,a.nodeName){case"HTML":case"HEAD":case"BODY":uu(a),hr(a);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(a.rel.toLowerCase()==="stylesheet")continue}e.removeChild(a)}}function lp(e,t,a,l){for(;e.nodeType===1;){var i=a;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!l&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(l){if(!e[Nl])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(r=e.getAttribute("rel"),r==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(r!==i.rel||e.getAttribute("href")!==(i.href==null||i.href===""?null:i.href)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute("title")!==(i.title==null?null:i.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(r=e.getAttribute("src"),(r!==(i.src==null?null:i.src)||e.getAttribute("type")!==(i.type==null?null:i.type)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin))&&r&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var r=i.name==null?null:""+i.name;if(i.type==="hidden"&&e.getAttribute("name")===r)return e}else return e;if(e=Zt(e.nextSibling),e===null)break}return null}function sp(e,t,a){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!a||(e=Zt(e.nextSibling),e===null))return null;return e}function vm(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=Zt(e.nextSibling),e===null))return null;return e}function ou(e){return e.data==="$?"||e.data==="$~"}function du(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function ip(e,t){var a=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||a.readyState!=="loading")t();else{var l=function(){t(),a.removeEventListener("DOMContentLoaded",l)};a.addEventListener("DOMContentLoaded",l),e._reactRetry=l}}function Zt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var fu=null;function bm(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="/$"||a==="/&"){if(t===0)return Zt(e.nextSibling);t--}else a!=="$"&&a!=="$!"&&a!=="$?"&&a!=="$~"&&a!=="&"||t++}e=e.nextSibling}return null}function jm(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"){if(t===0)return e;t--}else a!=="/$"&&a!=="/&"||t++}e=e.previousSibling}return null}function Nm(e,t,a){switch(t=wi(a),e){case"html":if(e=t.documentElement,!e)throw Error(o(452));return e;case"head":if(e=t.head,!e)throw Error(o(453));return e;case"body":if(e=t.body,!e)throw Error(o(454));return e;default:throw Error(o(451))}}function ls(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);hr(e)}var Ft=new Map,Sm=new Set;function zi(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Ea=D.d;D.d={f:rp,r:cp,D:up,C:op,L:dp,m:fp,X:hp,S:mp,M:xp};function rp(){var e=Ea.f(),t=pi();return e||t}function cp(e){var t=zn(e);t!==null&&t.tag===5&&t.type==="form"?Hd(t):Ea.r(e)}var ll=typeof document>"u"?null:document;function Cm(e,t,a){var l=ll;if(l&&typeof t=="string"&&t){var i=qt(t);i='link[rel="'+e+'"][href="'+i+'"]',typeof a=="string"&&(i+='[crossorigin="'+a+'"]'),Sm.has(i)||(Sm.add(i),e={rel:e,crossOrigin:a,href:t},l.querySelector(i)===null&&(t=l.createElement("link"),ht(t,"link",e),lt(t),l.head.appendChild(t)))}}function up(e){Ea.D(e),Cm("dns-prefetch",e,null)}function op(e,t){Ea.C(e,t),Cm("preconnect",e,t)}function dp(e,t,a){Ea.L(e,t,a);var l=ll;if(l&&e&&t){var i='link[rel="preload"][as="'+qt(t)+'"]';t==="image"&&a&&a.imageSrcSet?(i+='[imagesrcset="'+qt(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(i+='[imagesizes="'+qt(a.imageSizes)+'"]')):i+='[href="'+qt(e)+'"]';var r=i;switch(t){case"style":r=sl(e);break;case"script":r=il(e)}Ft.has(r)||(e=E({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),Ft.set(r,e),l.querySelector(i)!==null||t==="style"&&l.querySelector(ss(r))||t==="script"&&l.querySelector(is(r))||(t=l.createElement("link"),ht(t,"link",e),lt(t),l.head.appendChild(t)))}}function fp(e,t){Ea.m(e,t);var a=ll;if(a&&e){var l=t&&typeof t.as=="string"?t.as:"script",i='link[rel="modulepreload"][as="'+qt(l)+'"][href="'+qt(e)+'"]',r=i;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":r=il(e)}if(!Ft.has(r)&&(e=E({rel:"modulepreload",href:e},t),Ft.set(r,e),a.querySelector(i)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(is(r)))return}l=a.createElement("link"),ht(l,"link",e),lt(l),a.head.appendChild(l)}}}function mp(e,t,a){Ea.S(e,t,a);var l=ll;if(l&&e){var i=Tn(l).hoistableStyles,r=sl(e);t=t||"default";var u=i.get(r);if(!u){var h={loading:0,preload:null};if(u=l.querySelector(ss(r)))h.loading=5;else{e=E({rel:"stylesheet",href:e,"data-precedence":t},a),(a=Ft.get(r))&&mu(e,a);var b=u=l.createElement("link");lt(b),ht(b,"link",e),b._p=new Promise(function(O,V){b.onload=O,b.onerror=V}),b.addEventListener("load",function(){h.loading|=1}),b.addEventListener("error",function(){h.loading|=2}),h.loading|=4,Ti(u,t,l)}u={type:"stylesheet",instance:u,count:1,state:h},i.set(r,u)}}}function hp(e,t){Ea.X(e,t);var a=ll;if(a&&e){var l=Tn(a).hoistableScripts,i=il(e),r=l.get(i);r||(r=a.querySelector(is(i)),r||(e=E({src:e,async:!0},t),(t=Ft.get(i))&&hu(e,t),r=a.createElement("script"),lt(r),ht(r,"link",e),a.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},l.set(i,r))}}function xp(e,t){Ea.M(e,t);var a=ll;if(a&&e){var l=Tn(a).hoistableScripts,i=il(e),r=l.get(i);r||(r=a.querySelector(is(i)),r||(e=E({src:e,async:!0,type:"module"},t),(t=Ft.get(i))&&hu(e,t),r=a.createElement("script"),lt(r),ht(r,"link",e),a.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},l.set(i,r))}}function wm(e,t,a,l){var i=(i=Xe.current)?zi(i):null;if(!i)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=sl(a.href),a=Tn(i).hoistableStyles,l=a.get(t),l||(l={type:"style",instance:null,count:0,state:null},a.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=sl(a.href);var r=Tn(i).hoistableStyles,u=r.get(e);if(u||(i=i.ownerDocument||i,u={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},r.set(e,u),(r=i.querySelector(ss(e)))&&!r._p&&(u.instance=r,u.state.loading=5),Ft.has(e)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},Ft.set(e,a),r||gp(i,e,a,u.state))),t&&l===null)throw Error(o(528,""));return u}if(t&&l!==null)throw Error(o(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=il(a),a=Tn(i).hoistableScripts,l=a.get(t),l||(l={type:"script",instance:null,count:0,state:null},a.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function sl(e){return'href="'+qt(e)+'"'}function ss(e){return'link[rel="stylesheet"]['+e+"]"}function zm(e){return E({},e,{"data-precedence":e.precedence,precedence:null})}function gp(e,t,a,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),ht(t,"link",a),lt(t),e.head.appendChild(t))}function il(e){return'[src="'+qt(e)+'"]'}function is(e){return"script[async]"+e}function Tm(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+qt(a.href)+'"]');if(l)return t.instance=l,lt(l),l;var i=E({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),lt(l),ht(l,"style",i),Ti(l,a.precedence,e),t.instance=l;case"stylesheet":i=sl(a.href);var r=e.querySelector(ss(i));if(r)return t.state.loading|=4,t.instance=r,lt(r),r;l=zm(a),(i=Ft.get(i))&&mu(l,i),r=(e.ownerDocument||e).createElement("link"),lt(r);var u=r;return u._p=new Promise(function(h,b){u.onload=h,u.onerror=b}),ht(r,"link",l),t.state.loading|=4,Ti(r,a.precedence,e),t.instance=r;case"script":return r=il(a.src),(i=e.querySelector(is(r)))?(t.instance=i,lt(i),i):(l=a,(i=Ft.get(r))&&(l=E({},a),hu(l,i)),e=e.ownerDocument||e,i=e.createElement("script"),lt(i),ht(i,"link",l),e.head.appendChild(i),t.instance=i);case"void":return null;default:throw Error(o(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,Ti(l,a.precedence,e));return t.instance}function Ti(e,t,a){for(var l=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),i=l.length?l[l.length-1]:null,r=i,u=0;u<l.length;u++){var h=l[u];if(h.dataset.precedence===t)r=h;else if(r!==i)break}r?r.parentNode.insertBefore(e,r.nextSibling):(t=a.nodeType===9?a.head:a,t.insertBefore(e,t.firstChild))}function mu(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function hu(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var Ei=null;function Em(e,t,a){if(Ei===null){var l=new Map,i=Ei=new Map;i.set(a,l)}else i=Ei,l=i.get(a),l||(l=new Map,i.set(a,l));if(l.has(e))return l;for(l.set(e,null),a=a.getElementsByTagName(e),i=0;i<a.length;i++){var r=a[i];if(!(r[Nl]||r[ot]||e==="link"&&r.getAttribute("rel")==="stylesheet")&&r.namespaceURI!=="http://www.w3.org/2000/svg"){var u=r.getAttribute(t)||"";u=e+u;var h=l.get(u);h?h.push(r):l.set(u,[r])}}return l}function Am(e,t,a){e=e.ownerDocument||e,e.head.insertBefore(a,t==="title"?e.querySelector("head > title"):null)}function pp(e,t,a){if(a===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Dm(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function yp(e,t,a,l){if(a.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var i=sl(l.href),r=t.querySelector(ss(i));if(r){t=r._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Ai.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=r,lt(r);return}r=t.ownerDocument||t,l=zm(l),(i=Ft.get(i))&&mu(l,i),r=r.createElement("link"),lt(r);var u=r;u._p=new Promise(function(h,b){u.onload=h,u.onerror=b}),ht(r,"link",l),a.instance=r}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=Ai.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var xu=0;function vp(e,t){return e.stylesheets&&e.count===0&&_i(e,e.stylesheets),0<e.count||0<e.imgCount?function(a){var l=setTimeout(function(){if(e.stylesheets&&_i(e,e.stylesheets),e.unsuspend){var r=e.unsuspend;e.unsuspend=null,r()}},6e4+t);0<e.imgBytes&&xu===0&&(xu=62500*Pg());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&_i(e,e.stylesheets),e.unsuspend)){var r=e.unsuspend;e.unsuspend=null,r()}},(e.imgBytes>xu?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(i)}}:null}function Ai(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)_i(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Di=null;function _i(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Di=new Map,t.forEach(bp,e),Di=null,Ai.call(e))}function bp(e,t){if(!(t.state.loading&4)){var a=Di.get(e);if(a)var l=a.get(null);else{a=new Map,Di.set(e,a);for(var i=e.querySelectorAll("link[data-precedence],style[data-precedence]"),r=0;r<i.length;r++){var u=i[r];(u.nodeName==="LINK"||u.getAttribute("media")!=="not all")&&(a.set(u.dataset.precedence,u),l=u)}l&&a.set(null,l)}i=t.instance,u=i.getAttribute("data-precedence"),r=a.get(u)||l,r===l&&a.set(null,i),a.set(u,i),this.count++,l=Ai.bind(this),i.addEventListener("load",l),i.addEventListener("error",l),r?r.parentNode.insertBefore(i,r.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var rs={$$typeof:T,Provider:null,Consumer:null,_currentValue:ee,_currentValue2:ee,_threadCount:0};function jp(e,t,a,l,i,r,u,h,b){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=or(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=or(0),this.hiddenUpdates=or(null),this.identifierPrefix=l,this.onUncaughtError=i,this.onCaughtError=r,this.onRecoverableError=u,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=b,this.incompleteTransitions=new Map}function _m(e,t,a,l,i,r,u,h,b,O,V,$){return e=new jp(e,t,a,u,b,O,V,$,h),t=1,r===!0&&(t|=24),r=kt(3,null,null,t),e.current=r,r.stateNode=e,t=Fr(),t.refCount++,e.pooledCache=t,t.refCount++,r.memoizedState={element:l,isDehydrated:a,cache:t},Ir(r),e}function Mm(e){return e?(e=Bn,e):Bn}function km(e,t,a,l,i,r){i=Mm(i),l.context===null?l.context=i:l.pendingContext=i,l=Ba(t),l.payload={element:a},r=r===void 0?null:r,r!==null&&(l.callback=r),a=La(e,l,t),a!==null&&(zt(a,e,t),Hl(a,e,t))}function Om(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var a=e.retryLane;e.retryLane=a!==0&&a<t?a:t}}function gu(e,t){Om(e,t),(e=e.alternate)&&Om(e,t)}function Rm(e){if(e.tag===13||e.tag===31){var t=un(e,67108864);t!==null&&zt(t,e,67108864),gu(e,67108864)}}function Um(e){if(e.tag===13||e.tag===31){var t=Lt();t=dr(t);var a=un(e,t);a!==null&&zt(a,e,t),gu(e,t)}}var Mi=!0;function Np(e,t,a,l){var i=v.T;v.T=null;var r=D.p;try{D.p=2,pu(e,t,a,l)}finally{D.p=r,v.T=i}}function Sp(e,t,a,l){var i=v.T;v.T=null;var r=D.p;try{D.p=8,pu(e,t,a,l)}finally{D.p=r,v.T=i}}function pu(e,t,a,l){if(Mi){var i=yu(l);if(i===null)nu(e,t,l,ki,a),Lm(e,l);else if(wp(i,e,t,a,l))l.stopPropagation();else if(Lm(e,l),t&4&&-1<Cp.indexOf(e)){for(;i!==null;){var r=zn(i);if(r!==null)switch(r.tag){case 3:if(r=r.stateNode,r.current.memoizedState.isDehydrated){var u=nn(r.pendingLanes);if(u!==0){var h=r;for(h.pendingLanes|=2,h.entangledLanes|=2;u;){var b=1<<31-_t(u);h.entanglements[1]|=b,u&=~b}ra(r),(Ae&6)===0&&(xi=At()+500,ts(0))}}break;case 31:case 13:h=un(r,2),h!==null&&zt(h,r,2),pi(),gu(r,2)}if(r=yu(l),r===null&&nu(e,t,l,ki,a),r===i)break;i=r}i!==null&&l.stopPropagation()}else nu(e,t,l,null,a)}}function yu(e){return e=br(e),vu(e)}var ki=null;function vu(e){if(ki=null,e=wn(e),e!==null){var t=x(e);if(t===null)e=null;else{var a=t.tag;if(a===13){if(e=p(t),e!==null)return e;e=null}else if(a===31){if(e=y(t),e!==null)return e;e=null}else if(a===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return ki=e,null}function Bm(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(ux()){case Yu:return 2;case Vu:return 8;case Ns:case ox:return 32;case Xu:return 268435456;default:return 32}default:return 32}}var bu=!1,$a=null,Ja=null,Wa=null,cs=new Map,us=new Map,Ia=[],Cp="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Lm(e,t){switch(e){case"focusin":case"focusout":$a=null;break;case"dragenter":case"dragleave":Ja=null;break;case"mouseover":case"mouseout":Wa=null;break;case"pointerover":case"pointerout":cs.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":us.delete(t.pointerId)}}function os(e,t,a,l,i,r){return e===null||e.nativeEvent!==r?(e={blockedOn:t,domEventName:a,eventSystemFlags:l,nativeEvent:r,targetContainers:[i]},t!==null&&(t=zn(t),t!==null&&Rm(t)),e):(e.eventSystemFlags|=l,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function wp(e,t,a,l,i){switch(t){case"focusin":return $a=os($a,e,t,a,l,i),!0;case"dragenter":return Ja=os(Ja,e,t,a,l,i),!0;case"mouseover":return Wa=os(Wa,e,t,a,l,i),!0;case"pointerover":var r=i.pointerId;return cs.set(r,os(cs.get(r)||null,e,t,a,l,i)),!0;case"gotpointercapture":return r=i.pointerId,us.set(r,os(us.get(r)||null,e,t,a,l,i)),!0}return!1}function Hm(e){var t=wn(e.target);if(t!==null){var a=x(t);if(a!==null){if(t=a.tag,t===13){if(t=p(a),t!==null){e.blockedOn=t,Wu(e.priority,function(){Um(a)});return}}else if(t===31){if(t=y(a),t!==null){e.blockedOn=t,Wu(e.priority,function(){Um(a)});return}}else if(t===3&&a.stateNode.current.memoizedState.isDehydrated){e.blockedOn=a.tag===3?a.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Oi(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var a=yu(e.nativeEvent);if(a===null){a=e.nativeEvent;var l=new a.constructor(a.type,a);vr=l,a.target.dispatchEvent(l),vr=null}else return t=zn(a),t!==null&&Rm(t),e.blockedOn=a,!1;t.shift()}return!0}function qm(e,t,a){Oi(e)&&a.delete(t)}function zp(){bu=!1,$a!==null&&Oi($a)&&($a=null),Ja!==null&&Oi(Ja)&&(Ja=null),Wa!==null&&Oi(Wa)&&(Wa=null),cs.forEach(qm),us.forEach(qm)}function Ri(e,t){e.blockedOn===t&&(e.blockedOn=null,bu||(bu=!0,s.unstable_scheduleCallback(s.unstable_NormalPriority,zp)))}var Ui=null;function Gm(e){Ui!==e&&(Ui=e,s.unstable_scheduleCallback(s.unstable_NormalPriority,function(){Ui===e&&(Ui=null);for(var t=0;t<e.length;t+=3){var a=e[t],l=e[t+1],i=e[t+2];if(typeof l!="function"){if(vu(l||a)===null)continue;break}var r=zn(a);r!==null&&(e.splice(t,3),t-=3,yc(r,{pending:!0,data:i,method:a.method,action:l},l,i))}}))}function rl(e){function t(b){return Ri(b,e)}$a!==null&&Ri($a,e),Ja!==null&&Ri(Ja,e),Wa!==null&&Ri(Wa,e),cs.forEach(t),us.forEach(t);for(var a=0;a<Ia.length;a++){var l=Ia[a];l.blockedOn===e&&(l.blockedOn=null)}for(;0<Ia.length&&(a=Ia[0],a.blockedOn===null);)Hm(a),a.blockedOn===null&&Ia.shift();if(a=(e.ownerDocument||e).$$reactFormReplay,a!=null)for(l=0;l<a.length;l+=3){var i=a[l],r=a[l+1],u=i[bt]||null;if(typeof r=="function")u||Gm(a);else if(u){var h=null;if(r&&r.hasAttribute("formAction")){if(i=r,u=r[bt]||null)h=u.formAction;else if(vu(i)!==null)continue}else h=u.action;typeof h=="function"?a[l+1]=h:(a.splice(l,3),l-=3),Gm(a)}}}function Qm(){function e(r){r.canIntercept&&r.info==="react-transition"&&r.intercept({handler:function(){return new Promise(function(u){return i=u})},focusReset:"manual",scroll:"manual"})}function t(){i!==null&&(i(),i=null),l||setTimeout(a,20)}function a(){if(!l&&!navigation.transition){var r=navigation.currentEntry;r&&r.url!=null&&navigation.navigate(r.url,{state:r.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var l=!1,i=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(a,100),function(){l=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),i!==null&&(i(),i=null)}}}function ju(e){this._internalRoot=e}Bi.prototype.render=ju.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(o(409));var a=t.current,l=Lt();km(a,l,e,t,null,null)},Bi.prototype.unmount=ju.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;km(e.current,2,null,e,null,null),pi(),t[Cn]=null}};function Bi(e){this._internalRoot=e}Bi.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ju();e={blockedOn:null,target:e,priority:t};for(var a=0;a<Ia.length&&t!==0&&t<Ia[a].priority;a++);Ia.splice(a,0,e),a===0&&Hm(e)}};var Ym=c.version;if(Ym!=="19.2.3")throw Error(o(527,Ym,"19.2.3"));D.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(o(188)):(e=Object.keys(e).join(","),Error(o(268,e)));return e=j(t),e=e!==null?z(e):null,e=e===null?null:e.stateNode,e};var Tp={bundleType:0,version:"19.2.3",rendererPackageName:"react-dom",currentDispatcherRef:v,reconcilerVersion:"19.2.3"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Li=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Li.isDisabled&&Li.supportsFiber)try{vl=Li.inject(Tp),Dt=Li}catch{}}return ds.createRoot=function(e,t){if(!m(e))throw Error(o(299));var a=!1,l="",i=$d,r=Jd,u=Wd;return t!=null&&(t.unstable_strictMode===!0&&(a=!0),t.identifierPrefix!==void 0&&(l=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(r=t.onCaughtError),t.onRecoverableError!==void 0&&(u=t.onRecoverableError)),t=_m(e,1,!1,null,null,a,l,null,i,r,u,Qm),e[Cn]=t.current,au(e),new ju(t)},ds.hydrateRoot=function(e,t,a){if(!m(e))throw Error(o(299));var l=!1,i="",r=$d,u=Jd,h=Wd,b=null;return a!=null&&(a.unstable_strictMode===!0&&(l=!0),a.identifierPrefix!==void 0&&(i=a.identifierPrefix),a.onUncaughtError!==void 0&&(r=a.onUncaughtError),a.onCaughtError!==void 0&&(u=a.onCaughtError),a.onRecoverableError!==void 0&&(h=a.onRecoverableError),a.formState!==void 0&&(b=a.formState)),t=_m(e,1,!0,t,a??null,l,i,b,r,u,h,Qm),t.context=Mm(null),a=t.current,l=Lt(),l=dr(l),i=Ba(l),i.callback=null,La(a,i,l),a=l,t.current.lanes=a,jl(t,a),ra(t),e[Cn]=t.current,au(e),new Bi(t)},ds.version="19.2.3",ds}var Im;function l0(){if(Im)return Nu.exports;Im=1;function s(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(c){console.error(c)}}return s(),Nu.exports=n0(),Nu.exports}var s0=l0();const i0="/api";async function pe(s,c){const d=await fetch(`${i0}${s}`,{...c,headers:{"Content-Type":"application/json",...c?.headers}});if(!d.ok){const o=await d.json().catch(()=>({detail:"Unknown error"}));throw new Error(o.detail||`HTTP ${d.status}`)}if(d.status!==204)return d.json()}async function r0(){return pe("/projects")}async function c0(s,c,d="manual"){return pe("/projects",{method:"POST",body:JSON.stringify({name:s,path:c,spec_method:d})})}async function u0(s){await pe(`/projects/${encodeURIComponent(s)}`,{method:"DELETE"})}async function o0(s,c){return pe(`/projects/${encodeURIComponent(s)}/settings`,{method:"PATCH",body:JSON.stringify(c)})}async function d0(s,c=!1){const d=c?"?full_reset=true":"";return pe(`/projects/${encodeURIComponent(s)}/reset${d}`,{method:"POST"})}async function f0(s){return pe(`/projects/${encodeURIComponent(s)}/features`)}async function m0(s,c){return pe(`/projects/${encodeURIComponent(s)}/features`,{method:"POST",body:JSON.stringify(c)})}async function h0(s,c){await pe(`/projects/${encodeURIComponent(s)}/features/${c}`,{method:"DELETE"})}async function x0(s,c){await pe(`/projects/${encodeURIComponent(s)}/features/${c}/skip`,{method:"PATCH"})}async function g0(s,c,d){return pe(`/projects/${encodeURIComponent(s)}/features/${c}`,{method:"PATCH",body:JSON.stringify(d)})}async function p0(s,c,d){return pe(`/projects/${encodeURIComponent(s)}/features/${c}/resolve-human-input`,{method:"POST",body:JSON.stringify(d)})}async function y0(s){return pe(`/projects/${encodeURIComponent(s)}/features/graph`)}async function v0(s){return pe(`/projects/${encodeURIComponent(s)}/agent/status`)}async function Uu(s,c={}){return pe(`/projects/${encodeURIComponent(s)}/agent/start`,{method:"POST",body:JSON.stringify({yolo_mode:c.yoloMode??!1,parallel_mode:c.parallelMode??!1,max_concurrency:c.maxConcurrency,testing_agent_ratio:c.testingAgentRatio})})}async function b0(s){return pe(`/projects/${encodeURIComponent(s)}/agent/stop`,{method:"POST"})}async function j0(s){return pe(`/projects/${encodeURIComponent(s)}/agent/graceful-pause`,{method:"POST"})}async function N0(s){return pe(`/projects/${encodeURIComponent(s)}/agent/graceful-resume`,{method:"POST"})}async function S0(s){return pe(`/spec/status/${encodeURIComponent(s)}`)}async function C0(){return pe("/setup/status")}async function w0(){return pe("/health")}async function z0(s){const c=s?`?path=${encodeURIComponent(s)}`:"";return pe(`/filesystem/list${c}`)}async function T0(s){const c=s.endsWith("/")?s.slice(0,-1):s,d=c.lastIndexOf("/");let o,m;if(d===2&&/^[A-Za-z]:/.test(c))o=c.substring(0,3),m=c.substring(3);else if(d>0)o=c.substring(0,d),m=c.substring(d+1);else if(d===0)o="/",m=c.substring(1);else throw new Error("Invalid path: must be an absolute path");if(!m)throw new Error("Invalid path: directory name is empty");return pe("/filesystem/create-directory",{method:"POST",body:JSON.stringify({parent_path:o,name:m})})}async function E0(s){return pe(`/assistant/conversations/${encodeURIComponent(s)}`)}async function A0(s,c){return pe(`/assistant/conversations/${encodeURIComponent(s)}/${c}`)}async function D0(s,c){await pe(`/assistant/conversations/${encodeURIComponent(s)}/${c}`,{method:"DELETE"})}async function _0(){return pe("/settings/models")}async function M0(){return pe("/settings/providers")}async function k0(){return pe("/settings")}async function O0(s){return pe("/settings",{method:"PATCH",body:JSON.stringify(s)})}async function Hh(s,c){return pe(`/projects/${encodeURIComponent(s)}/devserver/start`,{method:"POST",body:JSON.stringify({command:c})})}async function R0(s){return pe(`/projects/${encodeURIComponent(s)}/devserver/stop`,{method:"POST"})}async function U0(s){return pe(`/projects/${encodeURIComponent(s)}/devserver/config`)}async function B0(s,c){return pe(`/projects/${encodeURIComponent(s)}/devserver/config`,{method:"PATCH",body:JSON.stringify({custom_command:c})})}async function L0(s){return pe(`/terminal/${encodeURIComponent(s)}`)}async function H0(s,c){return pe(`/terminal/${encodeURIComponent(s)}`,{method:"POST",body:JSON.stringify({name:null})})}async function q0(s,c,d){return pe(`/terminal/${encodeURIComponent(s)}/${c}`,{method:"PATCH",body:JSON.stringify({name:d})})}async function G0(s,c){await pe(`/terminal/${encodeURIComponent(s)}/${c}`,{method:"DELETE"})}async function Q0(s){return pe(`/projects/${encodeURIComponent(s)}/schedules`)}async function Y0(s,c){return pe(`/projects/${encodeURIComponent(s)}/schedules`,{method:"POST",body:JSON.stringify(c)})}async function V0(s,c,d){return pe(`/projects/${encodeURIComponent(s)}/schedules/${c}`,{method:"PATCH",body:JSON.stringify(d)})}async function X0(s,c){await pe(`/projects/${encodeURIComponent(s)}/schedules/${c}`,{method:"DELETE"})}async function K0(s){return pe(`/projects/${encodeURIComponent(s)}/schedules/next`)}function Z0(){return pt({queryKey:["projects"],queryFn:r0})}function F0(){const s=Ve();return Je({mutationFn:({name:c,path:d,specMethod:o})=>c0(c,d,o),onSuccess:()=>{s.invalidateQueries({queryKey:["projects"]})}})}function $0(){const s=Ve();return Je({mutationFn:c=>u0(c),onSuccess:()=>{s.invalidateQueries({queryKey:["projects"]})}})}function J0(s){const c=Ve();return Je({mutationFn:d=>d0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["projects"]}),c.invalidateQueries({queryKey:["project",s]}),c.invalidateQueries({queryKey:["features",s]}),c.invalidateQueries({queryKey:["agent-status",s]})}})}function W0(s){const c=Ve();return Je({mutationFn:d=>o0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["projects"]}),c.invalidateQueries({queryKey:["project",s]})}})}function qh(s){return pt({queryKey:["features",s],queryFn:()=>f0(s),enabled:!!s,refetchInterval:5e3})}function I0(s){const c=Ve();return Je({mutationFn:d=>m0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["features",s]})}})}function P0(s){const c=Ve();return Je({mutationFn:d=>h0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["features",s]})}})}function ev(s){const c=Ve();return Je({mutationFn:d=>x0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["features",s]})}})}function tv(s){const c=Ve();return Je({mutationFn:({featureId:d,update:o})=>g0(s,d,o),onSuccess:()=>{c.invalidateQueries({queryKey:["features",s]})}})}function av(s){const c=Ve();return Je({mutationFn:({featureId:d,fields:o})=>p0(s,d,{fields:o}),onSuccess:()=>{c.invalidateQueries({queryKey:["features",s]})}})}function nv(s){return pt({queryKey:["agent-status",s],queryFn:()=>v0(s),enabled:!!s,refetchInterval:3e3})}function lv(s){const c=Ve();return Je({mutationFn:(d={})=>Uu(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["agent-status",s]})}})}function sv(s){const c=Ve();return Je({mutationFn:()=>b0(s),onSuccess:()=>{c.invalidateQueries({queryKey:["agent-status",s]}),c.invalidateQueries({queryKey:["nextRun",s]})}})}function iv(s){const c=Ve();return Je({mutationFn:()=>j0(s),onSuccess:()=>{c.invalidateQueries({queryKey:["agent-status",s]})}})}function rv(s){const c=Ve();return Je({mutationFn:()=>N0(s),onSuccess:()=>{c.invalidateQueries({queryKey:["agent-status",s]})}})}function cv(){return pt({queryKey:["setup-status"],queryFn:C0,staleTime:6e4})}function uv(){return pt({queryKey:["health"],queryFn:w0,retry:!1})}const Gh={models:[{id:"claude-opus-4-6",name:"Claude Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet"}],default:"claude-opus-4-6"},Qh={yolo_mode:!1,model:"claude-opus-4-6",glm_mode:!1,ollama_mode:!1,testing_agent_ratio:1,playwright_headless:!0,batch_size:3,testing_batch_size:3,api_provider:"claude",api_base_url:null,api_has_auth_token:!1,api_model:null},ov={providers:[{id:"claude",name:"Claude (Anthropic)",base_url:null,models:Gh.models,default_model:"claude-opus-4-6",requires_auth:!1}],current:"claude"};function dv(){return pt({queryKey:["available-providers"],queryFn:M0,staleTime:3e5,retry:1,placeholderData:ov})}function fv(){return pt({queryKey:["available-models"],queryFn:_0,staleTime:3e5,retry:1,placeholderData:Gh})}function Bu(){return pt({queryKey:["settings"],queryFn:k0,staleTime:6e4,retry:1,placeholderData:Qh})}function mv(){const s=Ve();return Je({mutationFn:c=>O0(c),onMutate:async c=>{await s.cancelQueries({queryKey:["settings"]});const d=s.getQueryData(["settings"]);return s.setQueryData(["settings"],o=>({...Qh,...o,...c})),{previous:d}},onError:(c,d,o)=>{o?.previous&&s.setQueryData(["settings"],o.previous)},onSettled:()=>{s.invalidateQueries({queryKey:["settings"]}),s.invalidateQueries({queryKey:["available-models"]}),s.invalidateQueries({queryKey:["available-providers"]})}})}const hv={detected_type:null,detected_command:null,custom_command:null,effective_command:null};function xv(s){return pt({queryKey:["dev-server-config",s],queryFn:()=>U0(s),enabled:!!s,staleTime:3e4,placeholderData:hv})}function gv(s){const c=Ve();return Je({mutationFn:d=>B0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["dev-server-config",s]})}})}const Pm=100,pv=20,eh=500;function yv(s){const[c,d]=f.useState({progress:{passing:0,in_progress:0,needs_human_input:0,total:0,percentage:0},agentStatus:"loading",logs:[],isConnected:!1,devServerStatus:"stopped",devServerUrl:null,devLogs:[],activeAgents:[],recentActivity:[],agentLogs:new Map,celebrationQueue:[],celebration:null,orchestratorStatus:null,browserScreenshots:new Map,browserViewSubscribed:!1}),o=f.useRef(null),m=f.useRef(null),x=f.useRef(0),p=f.useCallback(()=>{if(!s)return;const M=window.location.protocol==="https:"?"wss:":"ws:",C=window.location.host,_=`${M}//${C}/ws/projects/${encodeURIComponent(s)}`;try{const R=new WebSocket(_);o.current=R,R.onopen=()=>{d(T=>({...T,isConnected:!0})),x.current=0},R.onmessage=T=>{try{const N=JSON.parse(T.data);switch(N.type){case"progress":d(L=>({...L,progress:{passing:N.passing,in_progress:N.in_progress,needs_human_input:N.needs_human_input??0,total:N.total,percentage:N.percentage}}));break;case"agent_status":d(L=>({...L,agentStatus:N.status,...(N.status==="stopped"||N.status==="crashed")&&{activeAgents:[],recentActivity:[],orchestratorStatus:null,browserScreenshots:new Map}}));break;case"log":d(L=>{const I=[...L.logs.slice(-Pm+1),{line:N.line,timestamp:N.timestamp,featureId:N.featureId,agentIndex:N.agentIndex}];let F=L.agentLogs;if(N.agentIndex!==void 0){F=new Map(L.agentLogs);const ae=F.get(N.agentIndex)||[],Y={line:N.line,timestamp:N.timestamp,type:"output"};F.set(N.agentIndex,[...ae.slice(-eh+1),Y])}return{...L,logs:I,agentLogs:F}});break;case"feature_update":break;case"agent_update":d(L=>{const I=new Map(L.agentLogs),F=I.get(N.agentIndex)||[],ae={line:`[STATE] ${N.state}${N.thought?`: ${N.thought}`:""}`,timestamp:N.timestamp,type:N.state==="error"?"error":"state_change"};I.set(N.agentIndex,[...F.slice(-eh+1),ae]);const Y=I.get(N.agentIndex)||[],le=L.activeAgents.findIndex(G=>G.agentIndex===N.agentIndex);let W;N.state==="success"||N.state==="error"?N.agentIndex===-1?W=L.activeAgents.filter(G=>G.featureId!==N.featureId):W=L.activeAgents.filter(G=>G.agentIndex!==N.agentIndex):le>=0?(W=[...L.activeAgents],W[le]={agentIndex:N.agentIndex,agentName:N.agentName,agentType:N.agentType||"coding",featureId:N.featureId,featureIds:N.featureIds||[N.featureId],featureName:N.featureName,state:N.state,thought:N.thought,timestamp:N.timestamp,logs:Y}):W=[...L.activeAgents,{agentIndex:N.agentIndex,agentName:N.agentName,agentType:N.agentType||"coding",featureId:N.featureId,featureIds:N.featureIds||[N.featureId],featureName:N.featureName,state:N.state,thought:N.thought,timestamp:N.timestamp,logs:Y}];let q=L.recentActivity;N.thought&&(q=[{agentName:N.agentName,thought:N.thought,timestamp:N.timestamp,featureId:N.featureId},...L.recentActivity.slice(0,pv-1)]);let P=L.celebrationQueue,Z=L.celebration;if(N.state==="success"){const G={agentName:N.agentName,featureName:N.featureName,featureId:N.featureId};L.celebration?P=[...L.celebrationQueue,G]:Z=G}return{...L,activeAgents:W,agentLogs:I,recentActivity:q,celebrationQueue:P,celebration:Z}});break;case"orchestrator_update":d(L=>{const I={eventType:N.eventType,message:N.message,timestamp:N.timestamp,featureId:N.featureId,featureName:N.featureName};return{...L,orchestratorStatus:{state:N.state,message:N.message,codingAgents:N.codingAgents??L.orchestratorStatus?.codingAgents??0,testingAgents:N.testingAgents??L.orchestratorStatus?.testingAgents??0,maxConcurrency:N.maxConcurrency??L.orchestratorStatus?.maxConcurrency??3,readyCount:N.readyCount??L.orchestratorStatus?.readyCount??0,blockedCount:N.blockedCount??L.orchestratorStatus?.blockedCount??0,timestamp:N.timestamp,recentEvents:[I,...(L.orchestratorStatus?.recentEvents??[]).slice(0,4)]}}});break;case"dev_log":d(L=>({...L,devLogs:[...L.devLogs.slice(-Pm+1),{line:N.line,timestamp:N.timestamp}]}));break;case"dev_server_status":d(L=>({...L,devServerStatus:N.status,devServerUrl:N.url}));break;case"browser_screenshot":d(L=>{const I=new Map(L.browserScreenshots);return I.set(N.sessionName,{sessionName:N.sessionName,agentIndex:N.agentIndex,agentType:N.agentType,featureId:N.featureId,featureName:N.featureName,imageDataUrl:`data:image/png;base64,${N.imageData}`,timestamp:N.timestamp}),{...L,browserScreenshots:I}});break;case"pong":break}}catch{console.error("Failed to parse WebSocket message")}},R.onclose=T=>{if(d(I=>({...I,isConnected:!1})),o.current=null,T.code>=4e3&&T.code<=4999)return;const L=Math.min(1e3*Math.pow(2,x.current),3e4);x.current++,m.current=window.setTimeout(()=>{p()},L)},R.onerror=()=>{R.close()}}catch{}},[s]),y=f.useCallback(()=>{o.current?.readyState===WebSocket.OPEN&&o.current.send(JSON.stringify({type:"ping"}))},[]),g=f.useCallback(()=>{d(M=>{const[C,..._]=M.celebrationQueue;return{...M,celebration:C||null,celebrationQueue:_}})},[]);f.useEffect(()=>{if(d({progress:{passing:0,in_progress:0,needs_human_input:0,total:0,percentage:0},agentStatus:"loading",logs:[],isConnected:!1,devServerStatus:"stopped",devServerUrl:null,devLogs:[],activeAgents:[],recentActivity:[],agentLogs:new Map,celebrationQueue:[],celebration:null,orchestratorStatus:null,browserScreenshots:new Map,browserViewSubscribed:!1}),!s){o.current&&(o.current.close(),o.current=null);return}p();const M=setInterval(y,3e4);return()=>{clearInterval(M),m.current&&clearTimeout(m.current),o.current&&(o.current.close(),o.current=null)}},[s,p,y]),f.useEffect(()=>{const C=setInterval(()=>{d(_=>{const R=Date.now(),T=_.activeAgents.filter(N=>R-new Date(N.timestamp).getTime()<18e5);return T.length!==_.activeAgents.length?{..._,activeAgents:T}:_})},6e4);return()=>clearInterval(C)},[]);const j=f.useCallback(()=>{d(M=>({...M,logs:[]}))},[]),z=f.useCallback(()=>{d(M=>({...M,devLogs:[]}))},[]),E=f.useCallback(M=>c.agentLogs.get(M)||[],[c.agentLogs]),H=f.useCallback(M=>{d(C=>{const _=new Map(C.agentLogs);return _.delete(M),{...C,agentLogs:_}})},[]),w=f.useCallback(()=>{o.current?.readyState===WebSocket.OPEN&&(o.current.send(JSON.stringify({type:"browser_view_subscribe"})),d(M=>({...M,browserViewSubscribed:!0})))},[]),B=f.useCallback(()=>{o.current?.readyState===WebSocket.OPEN&&(o.current.send(JSON.stringify({type:"browser_view_unsubscribe"})),d(M=>({...M,browserViewSubscribed:!1})))},[]);return{...c,clearLogs:j,clearDevLogs:z,clearCelebration:g,getAgentLogs:E,clearAgentLogs:H,subscribeBrowserView:w,unsubscribeBrowserView:B}}const vv={started:[523.25,659.25],completed:[523.25,659.25,783.99]};function th(s){try{const c=new(window.AudioContext||window.webkitAudioContext),d=vv[s],o=s==="completed"?.15:.12,m=d.length*o;d.forEach((x,p)=>{const y=c.createOscillator(),g=c.createGain();y.connect(g),g.connect(c.destination),y.type="sine",y.frequency.setValueAtTime(x,c.currentTime);const j=c.currentTime+p*o;g.gain.setValueAtTime(0,j),g.gain.linearRampToValueAtTime(.3,j+.02),g.gain.exponentialRampToValueAtTime(.01,j+o),y.start(j),y.stop(j+o)}),setTimeout(()=>{c.close()},m*1e3+100)}catch{}}function bv(s){return{pendingIds:new Set(s?.pending.map(c=>c.id)??[]),inProgressIds:new Set(s?.in_progress.map(c=>c.id)??[]),doneIds:new Set(s?.done.map(c=>c.id)??[])}}function jv(s){const c=f.useRef(null),d=f.useRef(!1);f.useEffect(()=>{if(!s)return;const o=bv(s);if(!d.current){c.current=o,d.current=!0;return}const m=c.current;if(!m){c.current=o;return}for(const x of o.inProgressIds)if(m.pendingIds.has(x)&&!m.inProgressIds.has(x)){th("started");break}for(const x of o.doneIds)if(!m.doneIds.has(x)&&(m.inProgressIds.has(x)||m.pendingIds.has(x))){th("completed");break}c.current=o},[s])}function Nv(){try{const s=new(window.AudioContext||window.webkitAudioContext),c=[{freq:523.25,start:0},{freq:659.25,start:.15},{freq:783.99,start:.3},{freq:1046.5,start:.45}],d=.25;c.forEach(({freq:p,start:y})=>{const g=s.createOscillator(),j=s.createGain();g.connect(j),j.connect(s.destination),g.type="sine",g.frequency.setValueAtTime(p,s.currentTime+y);const z=s.currentTime+y;j.gain.setValueAtTime(0,z),j.gain.linearRampToValueAtTime(.4,z+.03),j.gain.setValueAtTime(.4,z+d*.6),j.gain.exponentialRampToValueAtTime(.01,z+d),g.start(z),g.stop(z+d)});const o=[523.25,659.25,783.99,1046.5],m=.65,x=.5;o.forEach(p=>{const y=s.createOscillator(),g=s.createGain();y.connect(g),g.connect(s.destination),y.type="sine",y.frequency.setValueAtTime(p,s.currentTime+m);const j=s.currentTime+m;g.gain.setValueAtTime(0,j),g.gain.linearRampToValueAtTime(.2,j+.05),g.gain.setValueAtTime(.2,j+x*.5),g.gain.exponentialRampToValueAtTime(.01,j+x),y.start(j),y.stop(j+x)}),setTimeout(()=>{s.close()},1500)}catch{}}function Sv(){const c=Date.now()+2e3;Hi({particleCount:100,spread:70,origin:{x:0,y:.6},angle:60,colors:["#ff6b6b","#4ecdc4","#45b7d1","#96ceb4","#ffeaa7","#dfe6e9"]}),Hi({particleCount:100,spread:70,origin:{x:1,y:.6},angle:120,colors:["#ff6b6b","#4ecdc4","#45b7d1","#96ceb4","#ffeaa7","#dfe6e9"]});const d=setInterval(()=>{if(Date.now()>c){clearInterval(d);return}Hi({particleCount:30,spread:60,origin:{x:0,y:.6},angle:60,colors:["#ff6b6b","#4ecdc4","#45b7d1","#96ceb4","#ffeaa7","#dfe6e9"]}),Hi({particleCount:30,spread:60,origin:{x:1,y:.6},angle:120,colors:["#ff6b6b","#4ecdc4","#45b7d1","#96ceb4","#ffeaa7","#dfe6e9"]})},250)}function Cv(s){return s?s.pending.length===0&&s.in_progress.length===0&&(s.needs_human_input?.length||0)===0&&s.done.length>0:!1}function wv(s,c){const d=f.useRef(new Set),o=f.useRef(null);f.useEffect(()=>{if(!s||!c)return;const m=Cv(s);if(o.current!==c){o.current=c,m&&d.current.add(c);return}m&&!d.current.has(c)&&(d.current.add(c),Sv(),Nv())},[s,c])}const Xi=[{id:"twitter",name:"Twitter",description:"Clean and modern blue design",previewColors:{primary:"#4a9eff",background:"#ffffff",accent:"#e8f4ff"}},{id:"claude",name:"Claude",description:"Warm beige tones with orange accents",previewColors:{primary:"#c75b2a",background:"#faf6f0",accent:"#f5ede4"}},{id:"neo-brutalism",name:"Neo Brutalism",description:"Bold colors with hard shadows",previewColors:{primary:"#ff4d00",background:"#ffffff",accent:"#ffeb00"}},{id:"retro-arcade",name:"Retro Arcade",description:"Vibrant pink and teal pixel vibes",previewColors:{primary:"#e8457c",background:"#f0e6d3",accent:"#4eb8a5"}},{id:"aurora",name:"Aurora",description:"Deep violet and teal, like northern lights",previewColors:{primary:"#8b5cf6",background:"#faf8ff",accent:"#2dd4bf"}},{id:"business",name:"Business",description:"Deep navy (#000e4e) and gray monochrome",previewColors:{primary:"#000e4e",background:"#eaecef",accent:"#6b7280"}}],ah="autoforge-theme",nh="autoforge-dark-mode";function zv(s){switch(s){case"twitter":return"";case"claude":return"theme-claude";case"neo-brutalism":return"theme-neo-brutalism";case"retro-arcade":return"theme-retro-arcade";case"aurora":return"theme-aurora";case"business":return"theme-business";default:return""}}function Yh(){const[s,c]=f.useState(()=>{try{const y=localStorage.getItem(ah);if(y==="twitter"||y==="claude"||y==="neo-brutalism"||y==="retro-arcade"||y==="aurora"||y==="business")return y}catch{}return"twitter"}),[d,o]=f.useState(()=>{try{return localStorage.getItem(nh)==="true"}catch{return!1}});f.useEffect(()=>{const y=document.documentElement;y.classList.remove("theme-claude","theme-neo-brutalism","theme-retro-arcade","theme-aurora","theme-business");const g=zv(s);g&&y.classList.add(g),d?y.classList.add("dark"):y.classList.remove("dark");try{localStorage.setItem(ah,s),localStorage.setItem(nh,String(d))}catch{}},[s,d]);const m=f.useCallback(y=>{c(y)},[]),x=f.useCallback(y=>{o(y)},[]),p=f.useCallback(()=>{o(y=>!y)},[]);return{theme:s,setTheme:m,darkMode:d,setDarkMode:x,toggleDarkMode:p,themes:Xi,currentTheme:Xi.find(y=>y.id===s)??Xi[0]}}function Nn(){return`${Date.now()}-${Math.random().toString(36).substring(2,9)}`}function Tv({projectName:s,onError:c}){const[d,o]=f.useState([]),[m,x]=f.useState(!1),[p,y]=f.useState(!1),[g,j]=f.useState("disconnected"),[z,E]=f.useState(null),[H,w]=f.useState(null),B=f.useRef(null),M=f.useRef(null),C=f.useRef(0),_=3,R=f.useRef(null),T=f.useRef(null),N=f.useRef(!1);f.useEffect(()=>{N.current=p},[p]),f.useEffect(()=>()=>{R.current&&clearInterval(R.current),T.current&&clearTimeout(T.current),B.current&&B.current.close()},[]),f.useEffect(()=>{if(p)return;const le=setTimeout(()=>{const W=setInterval(async()=>{if(N.current){clearInterval(W);return}try{const q=await S0(s);q.exists&&q.status==="complete"&&(y(!0),x(!1),o(P=>{const Z=P[P.length-1];return Z?.role==="assistant"&&Z.isStreaming?[...P.slice(0,-1),{...Z,isStreaming:!1}]:P}),o(P=>[...P,{id:Nn(),role:"system",content:`Spec creation complete! Files written: ${q.files_written.join(", ")}${q.feature_count?` (${q.feature_count} features)`:""}`,timestamp:new Date}]),clearInterval(W))}catch{}},3e3);return()=>clearInterval(W)},3e3);return()=>clearTimeout(le)},[s,p]);const L=f.useCallback(()=>{if(B.current?.readyState===WebSocket.OPEN)return;j("connecting");const le=window.location.protocol==="https:"?"wss:":"ws:",W=window.location.host,q=`${le}//${W}/api/spec/ws/${encodeURIComponent(s)}`,P=new WebSocket(q);B.current=P,P.onopen=()=>{j("connected"),C.current=0,R.current=window.setInterval(()=>{P.readyState===WebSocket.OPEN&&P.send(JSON.stringify({type:"ping"}))},3e4)},P.onclose=Z=>{if(j("disconnected"),R.current&&(clearInterval(R.current),R.current=null),!(Z.code>=4e3&&Z.code<=4999)&&C.current<_&&!N.current){C.current++;const v=Math.min(1e3*Math.pow(2,C.current),1e4);T.current=window.setTimeout(L,v)}},P.onerror=()=>{j("error"),c?.("WebSocket connection error")},P.onmessage=Z=>{try{const G=JSON.parse(Z.data);switch(G.type){case"text":{o(v=>{const D=v[v.length-1];return D?.role==="assistant"&&D.isStreaming?[...v.slice(0,-1),{...D,content:D.content+G.content}]:(M.current=Nn(),[...v,{id:M.current,role:"assistant",content:G.content,timestamp:new Date,isStreaming:!0}])});break}case"question":{E(G.questions),w(G.tool_id||null),x(!1),o(v=>{const D=v[v.length-1];return D?.role==="assistant"&&D.isStreaming?[...v.slice(0,-1),{...D,isStreaming:!1,questions:G.questions}]:v});break}case"spec_complete":{y(!0),x(!1),o(v=>{const D=v[v.length-1];return D?.role==="assistant"&&D.isStreaming?[...v.slice(0,-1),{...D,isStreaming:!1}]:v}),o(v=>[...v,{id:Nn(),role:"system",content:`Specification file created: ${G.path}`,timestamp:new Date}]);break}case"file_written":{o(v=>[...v,{id:Nn(),role:"system",content:`File created: ${G.path}`,timestamp:new Date}]);break}case"complete":{y(!0),x(!1),o(v=>{const D=v[v.length-1];return D?.role==="assistant"&&D.isStreaming?[...v.slice(0,-1),{...D,isStreaming:!1}]:v});break}case"error":{x(!1),c?.(G.content),o(v=>[...v,{id:Nn(),role:"system",content:`Error: ${G.content}`,timestamp:new Date}]);break}case"pong":break;case"response_done":{x(!1),o(v=>{const D=v[v.length-1];return D?.role==="assistant"&&D.isStreaming?[...v.slice(0,-1),{...D,isStreaming:!1}]:v});break}}}catch(G){console.error("Failed to parse WebSocket message:",G)}}},[s,c]),I=f.useCallback(()=>{L();const le=()=>{B.current?.readyState===WebSocket.OPEN?(x(!0),B.current.send(JSON.stringify({type:"start"}))):B.current?.readyState===WebSocket.CONNECTING&&setTimeout(le,100)};setTimeout(le,100)},[L]),F=f.useCallback((le,W)=>{if(!B.current||B.current.readyState!==WebSocket.OPEN){c?.("Not connected");return}o(P=>[...P,{id:Nn(),role:"user",content:le,attachments:W,timestamp:new Date}]),E(null),w(null),x(!0);const q={type:"message",content:le};W&&W.length>0&&(q.attachments=W.map(P=>({filename:P.filename,mimeType:P.mimeType,base64Data:P.base64Data}))),B.current.send(JSON.stringify(q))},[c]),ae=f.useCallback(le=>{if(!B.current||B.current.readyState!==WebSocket.OPEN){c?.("Not connected");return}const W=Object.values(le).map(q=>Array.isArray(q)?q.join(", "):q).join("; ");o(q=>[...q,{id:Nn(),role:"user",content:W,timestamp:new Date}]),E(null),w(null),x(!0),B.current.send(JSON.stringify({type:"answer",answers:le,tool_id:H}))},[H,c]),Y=f.useCallback(()=>{C.current=_,R.current&&(clearInterval(R.current),R.current=null),B.current&&(B.current.close(),B.current=null),j("disconnected")},[]);return{messages:d,isLoading:m,isComplete:p,connectionStatus:g,currentQuestions:z,currentToolId:H,start:I,sendMessage:F,sendAnswer:ae,disconnect:Y}}const ol=["Spark","Fizz","Octo","Hoot","Buzz","Pixel","Byte","Nova","Chip","Bolt","Dash","Zap","Gizmo","Turbo","Blip","Neon","Widget","Zippy","Quirk","Flux"],nr=["image/jpeg","image/png"],Ev=["text/plain","text/markdown","text/csv","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/pdf","application/vnd.openxmlformats-officedocument.presentationml.presentation"],Ii=[...nr,...Ev];function Lu(s){return nr.includes(s.mimeType)}function Pi(s){const c=s.split(".").pop()?.toLowerCase();return{md:"text/markdown",txt:"text/plain",csv:"text/csv",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",pdf:"application/pdf",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png"}[c||""]||"application/octet-stream"}function Re(...s){return ry(cy(s))}function Oe({className:s,...c}){return n.jsx("div",{"data-slot":"card",className:Re("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",s),...c})}function lr({className:s,...c}){return n.jsx("div",{"data-slot":"card-header",className:Re("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",s),...c})}function Hu({className:s,...c}){return n.jsx("div",{"data-slot":"card-title",className:Re("leading-none font-semibold",s),...c})}function Av({className:s,...c}){return n.jsx("div",{"data-slot":"card-description",className:Re("text-muted-foreground text-sm",s),...c})}function qe({className:s,...c}){return n.jsx("div",{"data-slot":"card-content",className:Re("px-6",s),...c})}const Dv=[Yy],_v={a:({children:s,href:c,...d})=>n.jsx("a",{href:c,target:"_blank",rel:"noopener noreferrer",...d,children:s})},qu=f.memo(function({message:c}){const{role:d,content:o,attachments:m,timestamp:x,isStreaming:p}=c,y=x.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}),j={user:{icon:oy,bgColor:"bg-primary",textColor:"text-primary-foreground",align:"justify-end",bubbleAlign:"items-end",iconBg:"bg-primary",iconColor:"text-primary-foreground"},assistant:{icon:Mu,bgColor:"bg-muted",textColor:"text-foreground",align:"justify-start",bubbleAlign:"items-start",iconBg:"bg-secondary",iconColor:"text-secondary-foreground"},system:{icon:uy,bgColor:"bg-green-100 dark:bg-green-900/30",textColor:"text-green-900 dark:text-green-100",align:"justify-center",bubbleAlign:"items-center",iconBg:"bg-green-500",iconColor:"text-white"}}[d],z=j.icon;return d==="system"?n.jsx("div",{className:`flex ${j.align} px-4 py-2`,children:n.jsx("div",{className:`${j.bgColor} border border-border rounded-lg px-4 py-2 text-sm font-mono ${j.textColor}`,children:n.jsxs("span",{className:"flex items-center gap-2",children:[n.jsx(z,{size:14}),o]})})}):n.jsx("div",{className:`flex ${j.align} px-4 py-2`,children:n.jsxs("div",{className:`flex flex-col ${j.bubbleAlign} max-w-[80%] gap-1`,children:[n.jsxs("div",{className:"flex items-start gap-2",children:[d==="assistant"&&n.jsx("div",{className:`${j.iconBg} p-1.5 rounded flex-shrink-0`,children:n.jsx(z,{size:16,className:j.iconColor})}),n.jsxs(Oe,{className:`${j.bgColor} px-4 py-3 border ${p?"animate-pulse":""}`,children:[o&&n.jsx("div",{className:`text-sm leading-relaxed ${j.textColor} chat-prose${d==="user"?" chat-prose-user":""}`,children:n.jsx(Qy,{remarkPlugins:Dv,components:_v,children:o})}),m&&m.length>0&&n.jsx("div",{className:`flex flex-wrap gap-2 ${o?"mt-3":""}`,children:m.map(E=>n.jsx("div",{className:"border border-border rounded p-1 bg-card",children:Lu(E)?n.jsxs(n.Fragment,{children:[n.jsx("img",{src:E.previewUrl,alt:E.filename,className:"max-w-48 max-h-48 object-contain cursor-pointer hover:opacity-90 transition-opacity rounded",onClick:()=>window.open(E.previewUrl,"_blank"),title:`${E.filename} (click to enlarge)`}),n.jsx("span",{className:"text-xs text-muted-foreground block mt-1 text-center",children:E.filename})]}):n.jsxs("div",{className:"flex items-center gap-2 px-2 py-1",children:[n.jsx(Ki,{size:16,className:"text-muted-foreground flex-shrink-0"}),n.jsx("span",{className:"text-xs text-muted-foreground",children:E.filename}),n.jsxs("span",{className:"text-xs text-muted-foreground/60",children:["(",(E.size/1024).toFixed(0)," KB)"]})]})},E.id))}),p&&n.jsx("span",{className:"inline-block w-2 h-4 bg-primary ml-1 animate-pulse rounded"})]}),d==="user"&&n.jsx("div",{className:`${j.iconBg} p-1.5 rounded flex-shrink-0`,children:n.jsx(z,{size:16,className:j.iconColor})})]}),n.jsx("span",{className:"text-xs text-muted-foreground font-mono px-2",children:y})]})})}),Mv=ku("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function J({className:s,variant:c="default",size:d="default",asChild:o=!1,...m}){const x=o?wh:"button";return n.jsx(x,{"data-slot":"button","data-variant":c,"data-size":d,className:Re(Mv({variant:c,size:d,className:s})),...m})}function it({className:s,type:c,...d}){return n.jsx("input",{type:c,"data-slot":"input",className:Re("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",s),...d})}const kv=ku("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function we({className:s,variant:c="default",asChild:d=!1,...o}){const m=d?wh:"span";return n.jsx(m,{"data-slot":"badge","data-variant":c,className:Re(kv({variant:c}),s),...o})}function Vh({questions:s,onSubmit:c,disabled:d=!1}){const[o,m]=f.useState({}),[x,p]=f.useState({}),[y,g]=f.useState({}),j=(M,C,_)=>{const R=String(M);if(C==="Other"){g(T=>({...T,[R]:!0}));return}g(T=>({...T,[R]:!1})),m(T=>{if(_){const N=T[R]||[];return N.includes(C)?{...T,[R]:N.filter(L=>L!==C)}:{...T,[R]:[...N,C]}}else return{...T,[R]:C}})},z=(M,C)=>{const _=String(M);p(R=>({...R,[_]:C})),m(R=>({...R,[_]:C}))},E=()=>{const M={};s.forEach((C,_)=>{const R=String(_);y[R]&&x[R]?M[R]=x[R]:o[R]&&(M[R]=o[R])}),c(M)},H=(M,C,_)=>{const R=String(M),T=o[R];return _?Array.isArray(T)&&T.includes(C):T===C},w=M=>{const C=String(M);return!!(o[C]||y[C]&&x[C])},B=s.every((M,C)=>w(C));return n.jsxs("div",{className:"space-y-6 p-4",children:[s.map((M,C)=>n.jsx(Oe,{children:n.jsxs(qe,{className:"p-4",children:[n.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[n.jsx(we,{children:M.header}),n.jsx("span",{className:"font-bold text-foreground",children:M.question}),M.multiSelect&&n.jsx("span",{className:"text-xs text-muted-foreground font-mono",children:"(select multiple)"})]}),n.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[M.options.map((_,R)=>{const T=H(C,_.label,M.multiSelect);return n.jsx("button",{onClick:()=>j(C,_.label,M.multiSelect),disabled:d,className:`
10
- text-left p-4 rounded-lg border-2 transition-all duration-150
11
- ${T?"bg-primary/10 border-primary":"bg-card border-border hover:border-primary/50 hover:bg-muted"}
12
- disabled:opacity-50 disabled:cursor-not-allowed
13
- `,children:n.jsxs("div",{className:"flex items-start gap-2",children:[n.jsx("div",{className:`
14
- w-5 h-5 flex-shrink-0 mt-0.5 border-2 flex items-center justify-center
15
- ${M.multiSelect?"rounded":"rounded-full"}
16
- ${T?"bg-primary border-primary text-primary-foreground":"border-border bg-background"}
17
- `,children:T&&n.jsx(ca,{size:12,strokeWidth:3})}),n.jsxs("div",{className:"flex-1",children:[n.jsx("div",{className:"font-bold text-foreground",children:_.label}),n.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:_.description})]})]})},R)}),n.jsx("button",{onClick:()=>j(C,"Other",M.multiSelect),disabled:d,className:`
18
- text-left p-4 rounded-lg border-2 transition-all duration-150
19
- ${y[String(C)]?"bg-primary/10 border-primary":"bg-card border-border hover:border-primary/50 hover:bg-muted"}
20
- disabled:opacity-50 disabled:cursor-not-allowed
21
- `,children:n.jsxs("div",{className:"flex items-start gap-2",children:[n.jsx("div",{className:`
22
- w-5 h-5 flex-shrink-0 mt-0.5 border-2 flex items-center justify-center
23
- ${M.multiSelect?"rounded":"rounded-full"}
24
- ${y[String(C)]?"bg-primary border-primary text-primary-foreground":"border-border bg-background"}
25
- `,children:y[String(C)]&&n.jsx(ca,{size:12,strokeWidth:3})}),n.jsxs("div",{className:"flex-1",children:[n.jsx("div",{className:"font-bold text-foreground",children:"Other"}),n.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:"Provide a custom answer"})]})]})})]}),y[String(C)]&&n.jsx("div",{className:"mt-4",children:n.jsx(it,{type:"text",value:x[String(C)]||"",onChange:_=>z(C,_.target.value),placeholder:"Type your answer...",autoFocus:!0,disabled:d})})]})},C)),n.jsx("div",{className:"flex justify-end",children:n.jsx(J,{onClick:E,disabled:d||!B,children:"Continue"})})]})}function Xh(){return n.jsxs("div",{className:"flex items-center gap-2 p-4",children:[n.jsxs("div",{className:"flex items-center gap-1",children:[n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0ms"}}),n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"150ms"}}),n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"300ms"}})]}),n.jsx("span",{className:"text-sm font-mono text-muted-foreground",children:"Claude is thinking..."})]})}function ys(s,c=!0){return!(s.key!=="Enter"||c&&s.shiftKey||s.nativeEvent.isComposing)}function vs({className:s,...c}){return n.jsx("textarea",{"data-slot":"textarea",className:Re("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",s),...c})}const Ov=ku("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"}},defaultVariants:{variant:"default"}});function rt({className:s,variant:c,...d}){return n.jsx("div",{"data-slot":"alert",role:"alert",className:Re(Ov({variant:c}),s),...d})}function Rv({className:s,...c}){return n.jsx("div",{"data-slot":"alert-title",className:Re("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",s),...c})}function ct({className:s,...c}){return n.jsx("div",{"data-slot":"alert-description",className:Re("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",s),...c})}const Uv=5*1024*1024,Bv=20*1024*1024,Lv=["md","txt","csv","docx","xlsx","pdf","pptx","jpg","jpeg","png"],Hv=`Let's call it Simple Todo. This is a really simple web app that I can use to track my to-do items using a Kanban board. I should be able to add to-dos and then drag and drop them through the Kanban board. The different columns in the Kanban board are:
26
-
27
- - To Do
28
- - In Progress
29
- - Done
30
-
31
- The app should use a neobrutalism design.
32
-
33
- There is no need for user authentication either. All the to-dos will be stored in local storage, so each user has access to all of their to-dos when they open their browser. So do not worry about implementing a backend with user authentication or a database. Simply store everything in local storage. As for the design, please try to avoid AI slop, so use your front-end design skills to design something beautiful and practical. As for the content of the to-dos, we should store:
34
-
35
- - The name or the title at the very least
36
- - Optionally, we can also set tags, due dates, and priorities which should be represented as beautiful little badges on the to-do card
37
-
38
- Users should have the ability to easily clear out all the completed To-Dos. They should also be able to filter and search for To-Dos as well.
39
-
40
- You choose the rest. Keep it simple. Should be 25 features.`;function Kh({projectName:s,onComplete:c,onCancel:d,onExitToProject:o,initializerStatus:m="idle",initializerError:x=null,onRetryInitializer:p}){const[y,g]=f.useState(""),[j,z]=f.useState(null),[E,H]=f.useState(!1),[w,B]=f.useState([]),M=f.useRef(null),C=f.useRef(null),_=f.useRef(null),{messages:R,isLoading:T,isComplete:N,connectionStatus:L,currentQuestions:I,start:F,sendMessage:ae,sendAnswer:Y,disconnect:le}=Tv({projectName:s,onComplete:c,onError:te=>z(te)});f.useEffect(()=>(F(),()=>{le()}),[]),f.useEffect(()=>{M.current?.scrollIntoView({behavior:"smooth"})},[R,I,T]),f.useEffect(()=>{!T&&!I&&C.current&&C.current.focus()},[T,I]);const W=()=>{const te=y.trim();if(!(!te&&w.length===0||T)){if(/^\s*\/exit\s*$/i.test(te)){g(""),o();return}ae(te,w.length>0?w:void 0),g(""),B([]),C.current&&(C.current.style.height="auto")}},q=te=>{ys(te)&&(te.preventDefault(),W())},P=te=>{Y(te)},Z=f.useCallback(te=>{te&&Array.from(te).forEach(ue=>{let se=ue.type;if((!se||!Ii.includes(se))&&(se=Pi(ue.name)),!Ii.includes(se)){const Xe=ue.name.split(".").pop()?.toLowerCase();if(!Xe||!Lv.includes(Xe)){z(`Unsupported file type: ${ue.name}. Supported: images (JPEG, PNG) and documents (MD, TXT, CSV, DOCX, XLSX, PDF, PPTX).`);return}se=Pi(ue.name)}const me=nr.includes(se),X=me?Uv:Bv,fe=me?"5 MB":"20 MB";if(ue.size>X){z(`File too large: ${ue.name}. Maximum size is ${fe}.`);return}const he=new FileReader;he.onload=Xe=>{const yt=Xe.target?.result,vt=yt.split(",")[1],ut={id:`${Date.now()}-${Math.random().toString(36).substring(2,9)}`,filename:ue.name,mimeType:se,base64Data:vt,previewUrl:me?yt:"",size:ue.size};B(xt=>[...xt,ut])},he.readAsDataURL(ue)})},[]),G=f.useCallback(te=>{B(ue=>ue.filter(se=>se.id!==te))},[]),v=f.useCallback(te=>{te.preventDefault(),Z(te.dataTransfer.files)},[Z]),D=f.useCallback(te=>{te.preventDefault()},[]),ee=()=>{switch(L){case"connected":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-green-500",children:[n.jsx(xl,{size:12}),"Connected"]});case"connecting":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-yellow-500",children:[n.jsx(xl,{size:12,className:"animate-pulse"}),"Connecting..."]});case"error":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-destructive",children:[n.jsx(hl,{size:12}),"Error"]});default:return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[n.jsx(hl,{size:12}),"Disconnected"]})}};return n.jsxs("div",{className:"flex flex-col h-screen bg-background",children:[n.jsxs("div",{className:"flex items-center justify-between p-4 border-b-2 border-border bg-card",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsxs("h2",{className:"font-display font-bold text-lg text-foreground",children:["Create Spec: ",s]}),n.jsx(ee,{})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[N&&n.jsxs("span",{className:"flex items-center gap-1 text-sm text-green-500 font-bold",children:[n.jsx($t,{size:16}),"Complete"]}),n.jsxs(J,{onClick:()=>{g(Hv),C.current&&(C.current.style.height="auto",C.current.style.height=`${Math.min(C.current.scrollHeight,200)}px`)},variant:"ghost",size:"sm",title:"Load sample prompt (Simple Todo app)",children:[n.jsx(Ki,{size:16}),"Load Sample"]}),n.jsxs(J,{onClick:o,variant:"ghost",size:"sm",title:"Exit chat and go to project (you can start the agent manually)",children:[n.jsx(Ou,{size:16}),"Exit to Project"]}),n.jsx(J,{onClick:d,variant:"ghost",size:"icon",title:"Cancel",children:n.jsx(tt,{size:20})})]})]}),j&&n.jsxs(rt,{variant:"destructive",className:"rounded-none border-x-0 border-t-0",children:[n.jsx(ua,{size:16}),n.jsx(ct,{className:"flex-1",children:j}),n.jsx(J,{onClick:()=>z(null),variant:"ghost",size:"icon",className:"h-6 w-6",children:n.jsx(tt,{size:14})})]}),n.jsxs("div",{className:"flex-1 overflow-y-auto py-4 min-h-0",children:[R.length===0&&!T&&n.jsx("div",{className:"flex flex-col items-center justify-center h-full text-center p-8",children:n.jsx(Oe,{className:"p-6 max-w-md",children:n.jsxs(qe,{className:"p-0",children:[n.jsx("h3",{className:"font-display font-bold text-lg mb-2",children:"Starting Spec Creation"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Connecting to Claude to help you create your app specification..."}),L==="error"&&n.jsxs(J,{onClick:F,className:"mt-4",size:"sm",children:[n.jsx(en,{size:14}),"Retry Connection"]})]})})}),R.map(te=>n.jsx(qu,{message:te},te.id)),I&&I.length>0&&n.jsx(Vh,{questions:I,onSubmit:P,disabled:T}),T&&!I&&n.jsx(Xh,{}),n.jsx("div",{ref:M})]}),!N&&n.jsxs("div",{className:"p-4 border-t-2 border-border bg-card",onDrop:v,onDragOver:D,children:[w.length>0&&n.jsx("div",{className:"flex flex-wrap gap-2 mb-3",children:w.map(te=>n.jsxs("div",{className:"relative group border-2 border-border p-1 bg-card rounded shadow-sm",children:[Lu(te)?n.jsx("img",{src:te.previewUrl,alt:te.filename,className:"w-16 h-16 object-cover rounded"}):n.jsx("div",{className:"w-16 h-16 flex items-center justify-center bg-muted rounded",children:n.jsx(Ki,{size:24,className:"text-muted-foreground"})}),n.jsx("button",{onClick:()=>G(te.id),className:"absolute -top-2 -right-2 bg-destructive text-destructive-foreground rounded-full p-0.5 border-2 border-border hover:scale-110 transition-transform",title:"Remove attachment",children:n.jsx(tt,{size:12})}),n.jsx("span",{className:"text-xs truncate block max-w-16 mt-1 text-center text-muted-foreground",children:te.filename.length>10?`${te.filename.substring(0,7)}...`:te.filename})]},te.id))}),n.jsxs("div",{className:"flex gap-3",children:[n.jsx("input",{ref:_,type:"file",accept:"image/jpeg,image/png,.md,.txt,.csv,.docx,.xlsx,.pdf,.pptx",multiple:!0,onChange:te=>Z(te.target.files),className:"hidden"}),n.jsx(J,{onClick:()=>_.current?.click(),disabled:L!=="connected",variant:"ghost",size:"icon",title:"Attach files (images: JPEG/PNG up to 5MB, documents: MD, TXT, CSV, DOCX, XLSX, PDF, PPTX up to 20MB)",children:n.jsx(Zi,{size:18})}),n.jsx(vs,{ref:C,value:y,onChange:te=>{g(te.target.value),te.target.style.height="auto",te.target.style.height=`${Math.min(te.target.scrollHeight,200)}px`},onKeyDown:q,placeholder:I?"Or type a custom response...":w.length>0?"Add a message with your image(s)...":"Type your response... (or /exit to go to project)",className:"flex-1 resize-none min-h-[46px] max-h-[200px] overflow-y-auto",disabled:T&&!I||L!=="connected",rows:1}),n.jsx(J,{onClick:W,disabled:!y.trim()&&w.length===0||T&&!I||L!=="connected",className:"px-6",children:n.jsx(tr,{size:18})})]}),n.jsxs("p",{className:"text-xs text-muted-foreground mt-2",children:["Press Enter to send, Shift+Enter for new line. Drag & drop or click ",n.jsx(Zi,{size:12,className:"inline"})," to attach files."]})]}),N&&n.jsx("div",{className:`p-4 border-t-2 border-border ${m==="error"?"bg-destructive":"bg-green-500"}`,children:n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("div",{className:"flex items-center gap-2",children:m==="starting"?n.jsxs(n.Fragment,{children:[n.jsx(ze,{size:20,className:"animate-spin text-white"}),n.jsxs("span",{className:"font-bold text-white",children:["Starting agent",E?" (YOLO mode)":"","..."]})]}):m==="error"?n.jsxs(n.Fragment,{children:[n.jsx(ua,{size:20,className:"text-white"}),n.jsx("span",{className:"font-bold text-white",children:x||"Failed to start agent"})]}):n.jsxs(n.Fragment,{children:[n.jsx($t,{size:20,className:"text-white"}),n.jsx("span",{className:"font-bold text-white",children:"Specification created successfully!"})]})}),n.jsxs("div",{className:"flex items-center gap-2",children:[m==="error"&&p&&n.jsxs(J,{onClick:p,variant:"secondary",children:[n.jsx(en,{size:14}),"Retry"]}),m==="idle"&&n.jsxs(n.Fragment,{children:[n.jsxs(J,{onClick:()=>H(!E),variant:E?"default":"secondary",size:"sm",className:E?"bg-yellow-500 hover:bg-yellow-600 text-yellow-900":"",title:"YOLO Mode: Skip testing for rapid prototyping",children:[n.jsx(_h,{size:16}),n.jsx("span",{className:E?"font-bold":"",children:"YOLO"})]}),n.jsxs(J,{onClick:()=>c("",E),children:["Continue to Project",n.jsx(Mh,{size:16})]})]})]})]})})]})}function qv({onSelect:s,onCancel:c,initialPath:d}){const[o,m]=f.useState(d),[x,p]=f.useState(null),[y,g]=f.useState(!1),[j,z]=f.useState(""),[E,H]=f.useState(null),{data:w,isLoading:B,error:M,refetch:C}=pt({queryKey:["filesystem","list",o],queryFn:()=>z0(o)});f.useEffect(()=>{w?.current_path&&p(w.current_path)},[w?.current_path]);const _=Y=>{m(Y),p(Y),g(!1),z(""),H(null)},R=()=>{w?.parent_path&&_(w.parent_path)},T=Y=>{_(`${Y.letter}:/`)},N=Y=>{Y.is_directory&&_(Y.path)},L=async()=>{if(!j.trim()){H("Folder name is required");return}if(!/^[a-zA-Z0-9_\-. ]+$/.test(j)){H("Invalid folder name");return}const Y=`${w?.current_path}/${j.trim()}`;try{await T0(Y),await C(),_(Y)}catch(le){H(le instanceof Error?le.message:"Failed to create folder")}},I=()=>{x&&s(x)},F=Y=>{if(!Y)return[];const le=[];if(/^[A-Za-z]:/.test(Y)){const P=Y.slice(0,2);le.push({name:P,path:`${P}/`}),Y=Y.slice(3)}else Y.startsWith("/")&&(le.push({name:"/",path:"/"}),Y=Y.slice(1));const W=Y.split("/").filter(Boolean);let q=le.length>0?le[0].path:"";for(const P of W)q=q.endsWith("/")?q+P:q+"/"+P,le.push({name:P,path:q});return le},ae=w?.current_path?F(w.current_path):[];return n.jsxs("div",{className:"flex flex-col h-full max-h-[70vh]",children:[n.jsxs("div",{className:"flex-shrink-0 p-4 border-b bg-card",children:[n.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[n.jsx(Yi,{size:20,className:"text-primary"}),n.jsx("span",{className:"font-semibold",children:"Select Project Folder"})]}),n.jsxs("div",{className:"flex items-center gap-1 flex-wrap text-sm",children:[w?.parent_path&&n.jsx(J,{variant:"ghost",size:"icon-sm",onClick:R,title:"Go up",children:n.jsx(Vi,{size:16})}),ae.map((Y,le)=>n.jsxs("div",{className:"flex items-center",children:[le>0&&n.jsx(Vm,{size:14,className:"text-muted-foreground mx-1"}),n.jsx(J,{variant:"ghost",size:"sm",onClick:()=>_(Y.path),className:le===ae.length-1?"font-semibold":"",children:Y.name})]},Y.path))]})]}),w?.drives&&w.drives.length>0&&n.jsx("div",{className:"flex-shrink-0 p-3 border-b bg-muted/50",children:n.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[n.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Drives:"}),w.drives.map(Y=>n.jsxs(J,{variant:o?.startsWith(Y.letter)?"default":"outline",size:"sm",onClick:()=>T(Y),children:[n.jsx(dy,{size:14}),Y.letter,": ",Y.label&&`(${Y.label})`]},Y.letter))]})}),n.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto bg-card",children:n.jsxs("div",{className:"p-2",children:[B?n.jsx("div",{className:"flex items-center justify-center p-8",children:n.jsx(ze,{size:24,className:"animate-spin text-primary"})}):M?n.jsxs("div",{className:"p-4 text-center",children:[n.jsx(ua,{size:32,className:"mx-auto mb-2 text-destructive"}),n.jsx("p",{className:"text-destructive",children:M instanceof Error?M.message:"Failed to load directory"}),n.jsx(J,{variant:"outline",size:"sm",onClick:()=>C(),className:"mt-2",children:"Retry"})]}):n.jsxs("div",{className:"grid grid-cols-1 gap-1",children:[w?.entries.filter(Y=>Y.is_directory).map(Y=>n.jsxs("button",{onClick:()=>N(Y),onDoubleClick:()=>_(Y.path),className:`
41
- w-full text-left p-2 rounded-md
42
- flex items-center gap-2
43
- hover:bg-muted
44
- border-2 border-transparent transition-colors
45
- ${x===Y.path?"bg-primary/10 border-primary":""}
46
- `,children:[x===Y.path?n.jsx(Fi,{size:18,className:"text-primary flex-shrink-0"}):n.jsx(Yi,{size:18,className:"text-muted-foreground flex-shrink-0"}),n.jsx("span",{className:"truncate flex-1",children:Y.name}),Y.has_children&&n.jsx(Vm,{size:14,className:"ml-auto text-muted-foreground flex-shrink-0"})]},Y.path)),w?.entries.filter(Y=>Y.is_directory).length===0&&n.jsxs("div",{className:"p-4 text-center text-muted-foreground",children:[n.jsx(Yi,{size:32,className:"mx-auto mb-2 opacity-50"}),n.jsx("p",{children:"No subfolders"}),n.jsx("p",{className:"text-sm",children:"You can create a new folder or select this directory."})]})]}),y&&n.jsx(Oe,{className:"mt-2",children:n.jsxs(qe,{className:"p-3",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(Xm,{size:18,className:"text-primary"}),n.jsx(it,{type:"text",value:j,onChange:Y=>z(Y.target.value),placeholder:"New folder name",className:"flex-1",autoFocus:!0,onKeyDown:Y=>{ys(Y,!1)&&L(),Y.key==="Escape"&&(g(!1),z(""),H(null))}}),n.jsx(J,{onClick:L,size:"sm",children:"Create"}),n.jsx(J,{variant:"ghost",size:"sm",onClick:()=>{g(!1),z(""),H(null)},children:"Cancel"})]}),E&&n.jsx("p",{className:"text-sm text-destructive mt-1",children:E})]})})]})}),n.jsxs("div",{className:"flex-shrink-0 p-4 border-t bg-card",children:[n.jsx(Oe,{className:"mb-3",children:n.jsxs(qe,{className:"p-2",children:[n.jsx("div",{className:"text-xs text-muted-foreground mb-1",children:"Selected path:"}),n.jsx("div",{className:"font-mono text-sm truncate",children:x||"No folder selected"}),x&&n.jsx("div",{className:"text-xs text-muted-foreground mt-2 italic",children:"This folder will contain all project files"})]})}),n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsxs(J,{variant:"outline",onClick:()=>g(!0),disabled:y,children:[n.jsx(Xm,{size:16}),"New Folder"]}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(J,{variant:"outline",onClick:c,children:"Cancel"}),n.jsx(J,{onClick:I,disabled:!x,children:"Select This Folder"})]})]})]})]})}function ea({...s}){return n.jsx(Op,{"data-slot":"dialog",...s})}function Gv({...s}){return n.jsx(Lp,{"data-slot":"dialog-portal",...s})}function Qv({className:s,...c}){return n.jsx(Hp,{"data-slot":"dialog-overlay",className:Re("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",s),...c})}function ta({className:s,children:c,showCloseButton:d=!0,...o}){return n.jsxs(Gv,{"data-slot":"dialog-portal",children:[n.jsx(Qv,{}),n.jsxs(Rp,{"data-slot":"dialog-content",className:Re("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] max-h-[calc(100vh-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none overflow-y-auto sm:max-w-lg",s),...o,children:[c,d&&n.jsxs(zh,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[n.jsx(tt,{}),n.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function aa({className:s,...c}){return n.jsx("div",{"data-slot":"dialog-header",className:Re("flex flex-col gap-2 text-center sm:text-left",s),...c})}function Pt({className:s,showCloseButton:c=!1,children:d,...o}){return n.jsxs("div",{"data-slot":"dialog-footer",className:Re("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",s),...o,children:[d,c&&n.jsx(zh,{asChild:!0,children:n.jsx(J,{variant:"outline",children:"Close"})})]})}function na({className:s,...c}){return n.jsx(Up,{"data-slot":"dialog-title",className:Re("text-lg leading-none font-semibold",s),...c})}function ml({className:s,...c}){return n.jsx(Bp,{"data-slot":"dialog-description",className:Re("text-muted-foreground text-sm",s),...c})}function _e({className:s,...c}){return n.jsx(qp,{"data-slot":"label",className:Re("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",s),...c})}function Yv({isOpen:s,onClose:c,onProjectCreated:d,onStepChange:o}){const[m,x]=f.useState("name"),[p,y]=f.useState(""),[g,j]=f.useState(null),[z,E]=f.useState(null),[H,w]=f.useState(null),[B,M]=f.useState("idle"),[C,_]=f.useState(null),[R,T]=f.useState(!1),[N,L]=f.useState("idle"),[I,F]=f.useState([]),[ae,Y]=f.useState(null),le=f.useRef(null),W=F0(),q=fe=>{x(fe),o?.(fe)};if(!s)return null;const P=fe=>{fe.preventDefault();const he=p.trim();if(!he){w("Please enter a project name");return}if(!/^[a-zA-Z0-9_-]+$/.test(he)){w("Project name can only contain letters, numbers, hyphens, and underscores");return}w(null),q("folder")},Z=fe=>{j(fe),q("template")},G=()=>{q("name")},v=async fe=>{if(fe==="blank"){q("method");return}if(g){L("running"),F([]),Y(null);try{const he=await fetch("/api/scaffold/run",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({template:"agentic-starter",target_path:g})});if(!he.ok||!he.body){L("error"),Y(`Server error: ${he.status}`);return}const Xe=he.body.getReader(),yt=new TextDecoder;let vt="";for(;;){const{done:ut,value:xt}=await Xe.read();if(ut)break;vt+=yt.decode(xt,{stream:!0});const Tt=vt.split(`
47
- `);vt=Tt.pop()||"";for(const ne of Tt)if(ne.startsWith("data: "))try{const oe=JSON.parse(ne.slice(6));oe.type==="output"?(F(je=>{const De=[...je,oe.line];return De.length>100?De.slice(-100):De}),setTimeout(()=>le.current?.scrollTo(0,le.current.scrollHeight),0)):oe.type==="complete"?oe.success?(L("success"),setTimeout(()=>q("method"),1200)):(L("error"),Y(`Scaffold exited with code ${oe.exit_code}`)):oe.type==="error"&&(L("error"),Y(oe.message))}catch{}}}catch(he){L("error"),Y(he instanceof Error?he.message:"Failed to run scaffold")}}},D=async fe=>{if(E(fe),!g){w("Please select a project folder first"),q("folder");return}if(fe==="manual")try{const he=await W.mutateAsync({name:p.trim(),path:g,specMethod:"manual"});q("complete"),setTimeout(()=>{d(he.name),me()},1500)}catch(he){w(he instanceof Error?he.message:"Failed to create project")}else try{await W.mutateAsync({name:p.trim(),path:g,specMethod:"claude"}),q("chat")}catch(he){w(he instanceof Error?he.message:"Failed to create project")}},ee=async(fe,he=!1)=>{T(he),M("starting");try{await Uu(p.trim(),{yoloMode:he,maxConcurrency:3}),q("complete"),setTimeout(()=>{d(p.trim()),me()},1500)}catch(Xe){M("error"),_(Xe instanceof Error?Xe.message:"Failed to start agent")}},te=()=>{_(null),M("idle"),ee("",R)},ue=()=>{q("method"),E(null)},se=()=>{d(p.trim()),me()},me=()=>{q("name"),y(""),j(null),E(null),w(null),M("idle"),_(null),T(!1),L("idle"),F([]),Y(null),c()},X=()=>{m==="method"?(q("template"),E(null)):m==="template"?(q("folder"),L("idle"),F([]),Y(null)):m==="folder"&&(q("name"),j(null))};return m==="chat"?_u.createPortal(n.jsx("div",{className:"fixed inset-0 z-50 bg-background flex flex-col",children:n.jsx(Kh,{projectName:p.trim(),onComplete:ee,onCancel:ue,onExitToProject:se,initializerStatus:B,initializerError:C,onRetryInitializer:te})}),document.body):m==="folder"?n.jsx(ea,{open:!0,onOpenChange:fe=>!fe&&me(),children:n.jsxs(ta,{className:"sm:max-w-3xl max-h-[85vh] flex flex-col p-0",children:[n.jsx(aa,{className:"p-6 pb-4 border-b",children:n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(Yi,{size:24,className:"text-primary"}),n.jsxs("div",{children:[n.jsx(na,{children:"Select Project Location"}),n.jsxs(ml,{children:["Select the folder to use for project ",n.jsx("span",{className:"font-semibold font-mono",children:p}),". Create a new folder or choose an existing one."]})]})]})}),n.jsx("div",{className:"flex-1 overflow-hidden",children:n.jsx(qv,{onSelect:Z,onCancel:G})})]})}):n.jsx(ea,{open:!0,onOpenChange:fe=>!fe&&me(),children:n.jsxs(ta,{className:"sm:max-w-lg",children:[n.jsx(aa,{children:n.jsxs(na,{children:[m==="name"&&"Create New Project",m==="template"&&"Choose Project Template",m==="method"&&"Choose Setup Method",m==="complete"&&"Project Created!"]})}),m==="name"&&n.jsxs("form",{onSubmit:P,className:"space-y-4",children:[n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"project-name",children:"Project Name"}),n.jsx(it,{id:"project-name",type:"text",value:p,onChange:fe=>y(fe.target.value),placeholder:"my-awesome-app",pattern:"^[a-zA-Z0-9_-]+$",autoFocus:!0}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Use letters, numbers, hyphens, and underscores only."})]}),H&&n.jsx(rt,{variant:"destructive",children:n.jsx(ct,{children:H})}),n.jsx(Pt,{children:n.jsxs(J,{type:"submit",disabled:!p.trim(),children:["Next",n.jsx(Mh,{size:16})]})})]}),m==="template"&&n.jsxs("div",{className:"space-y-4",children:[N==="idle"&&n.jsxs(n.Fragment,{children:[n.jsx(ml,{children:"Start with a blank project or use a pre-configured template."}),n.jsxs("div",{className:"space-y-3",children:[n.jsx(Oe,{className:"cursor-pointer hover:border-primary transition-colors",onClick:()=>v("blank"),children:n.jsx(qe,{className:"p-4",children:n.jsxs("div",{className:"flex items-start gap-4",children:[n.jsx("div",{className:"p-2 bg-secondary rounded-lg",children:n.jsx(fy,{size:24,className:"text-secondary-foreground"})}),n.jsxs("div",{className:"flex-1",children:[n.jsx("span",{className:"font-semibold",children:"Blank Project"}),n.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Start from scratch. AutoForge will scaffold your app based on the spec you define."})]})]})})}),n.jsx(Oe,{className:"cursor-pointer hover:border-primary transition-colors",onClick:()=>v("agentic-starter"),children:n.jsx(qe,{className:"p-4",children:n.jsxs("div",{className:"flex items-start gap-4",children:[n.jsx("div",{className:"p-2 bg-primary/10 rounded-lg",children:n.jsx(_h,{size:24,className:"text-primary"})}),n.jsxs("div",{className:"flex-1",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("span",{className:"font-semibold",children:"Agentic Starter"}),n.jsx(we,{variant:"secondary",children:"Next.js"})]}),n.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Pre-configured Next.js app with BetterAuth, Drizzle ORM, Postgres, and AI capabilities."})]})]})})})]}),n.jsx(Pt,{className:"sm:justify-start",children:n.jsxs(J,{variant:"ghost",onClick:X,children:[n.jsx(Vi,{size:16}),"Back"]})})]}),N==="running"&&n.jsxs("div",{className:"space-y-3",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(ze,{size:16,className:"animate-spin text-primary"}),n.jsx("span",{className:"font-medium",children:"Setting up Agentic Starter..."})]}),n.jsx("div",{ref:le,className:"bg-muted rounded-lg p-3 max-h-60 overflow-y-auto font-mono text-xs leading-relaxed",children:I.map((fe,he)=>n.jsx("div",{className:"whitespace-pre-wrap break-all",children:fe},he))})]}),N==="success"&&n.jsxs("div",{className:"text-center py-6",children:[n.jsx("div",{className:"inline-flex items-center justify-center w-12 h-12 bg-primary/10 rounded-full mb-3",children:n.jsx($t,{size:24,className:"text-primary"})}),n.jsx("p",{className:"font-medium",children:"Template ready!"}),n.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Proceeding to setup method..."})]}),N==="error"&&n.jsxs("div",{className:"space-y-3",children:[n.jsxs(rt,{variant:"destructive",children:[n.jsx(ua,{size:16}),n.jsx(ct,{children:ae||"An unknown error occurred"})]}),I.length>0&&n.jsx("div",{className:"bg-muted rounded-lg p-3 max-h-40 overflow-y-auto font-mono text-xs leading-relaxed",children:I.slice(-10).map((fe,he)=>n.jsx("div",{className:"whitespace-pre-wrap break-all",children:fe},he))}),n.jsxs(Pt,{className:"sm:justify-start gap-2",children:[n.jsxs(J,{variant:"ghost",onClick:X,children:[n.jsx(Vi,{size:16}),"Back"]}),n.jsxs(J,{variant:"outline",onClick:()=>v("agentic-starter"),children:[n.jsx(en,{size:16}),"Retry"]})]})]})]}),m==="method"&&n.jsxs("div",{className:"space-y-4",children:[n.jsx(ml,{children:"How would you like to define your project?"}),n.jsxs("div",{className:"space-y-3",children:[n.jsx(Oe,{className:"cursor-pointer hover:border-primary transition-colors",onClick:()=>!W.isPending&&D("claude"),children:n.jsx(qe,{className:"p-4",children:n.jsxs("div",{className:"flex items-start gap-4",children:[n.jsx("div",{className:"p-2 bg-primary/10 rounded-lg",children:n.jsx(Mu,{size:24,className:"text-primary"})}),n.jsxs("div",{className:"flex-1",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("span",{className:"font-semibold",children:"Create with Claude"}),n.jsx(we,{children:"Recommended"})]}),n.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Interactive conversation to define features and generate your app specification automatically."})]})]})})}),n.jsx(Oe,{className:"cursor-pointer hover:border-primary transition-colors",onClick:()=>!W.isPending&&D("manual"),children:n.jsx(qe,{className:"p-4",children:n.jsxs("div",{className:"flex items-start gap-4",children:[n.jsx("div",{className:"p-2 bg-secondary rounded-lg",children:n.jsx(zu,{size:24,className:"text-secondary-foreground"})}),n.jsxs("div",{className:"flex-1",children:[n.jsx("span",{className:"font-semibold",children:"Edit Templates Manually"}),n.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Edit the template files directly. Best for developers who want full control."})]})]})})})]}),H&&n.jsx(rt,{variant:"destructive",children:n.jsx(ct,{children:H})}),W.isPending&&n.jsxs("div",{className:"flex items-center justify-center gap-2 text-muted-foreground",children:[n.jsx(ze,{size:16,className:"animate-spin"}),n.jsx("span",{children:"Creating project..."})]}),n.jsx(Pt,{className:"sm:justify-start",children:n.jsxs(J,{variant:"ghost",onClick:X,disabled:W.isPending,children:[n.jsx(Vi,{size:16}),"Back"]})})]}),m==="complete"&&n.jsxs("div",{className:"text-center py-8",children:[n.jsx("div",{className:"inline-flex items-center justify-center w-16 h-16 bg-primary/10 rounded-full mb-4",children:n.jsx($t,{size:32,className:"text-primary"})}),n.jsx("h3",{className:"font-semibold text-xl mb-2",children:p}),n.jsx("p",{className:"text-muted-foreground",children:"Your project has been created successfully!"}),n.jsxs("div",{className:"mt-4 flex items-center justify-center gap-2",children:[n.jsx(ze,{size:16,className:"animate-spin"}),n.jsx("span",{className:"text-sm text-muted-foreground",children:"Redirecting..."})]})]})]})})}function Zh({isOpen:s,title:c,message:d,confirmLabel:o="Confirm",cancelLabel:m="Cancel",variant:x="danger",isLoading:p=!1,onConfirm:y,onCancel:g}){return n.jsx(ea,{open:s,onOpenChange:j=>!j&&g(),children:n.jsxs(ta,{className:"sm:max-w-md",children:[n.jsx(aa,{children:n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("div",{className:`p-2 rounded-lg ${x==="danger"?"bg-destructive/10 text-destructive":"bg-primary/10 text-primary"}`,children:n.jsx(oa,{size:20})}),n.jsx(na,{children:c})]})}),n.jsx(ml,{asChild:!0,children:n.jsx("div",{className:"text-muted-foreground",children:d})}),n.jsxs(Pt,{className:"gap-2 sm:gap-0",children:[n.jsx(J,{variant:"outline",onClick:g,disabled:p,children:m}),n.jsx(J,{variant:x==="danger"?"destructive":"default",onClick:y,disabled:p,children:p?"Deleting...":o})]})]})})}function Vv({...s}){return n.jsx(Gp,{"data-slot":"dropdown-menu",...s})}function Xv({...s}){return n.jsx(Qp,{"data-slot":"dropdown-menu-trigger",...s})}function Kv({className:s,sideOffset:c=4,...d}){return n.jsx(Yp,{children:n.jsx(Vp,{"data-slot":"dropdown-menu-content",sideOffset:c,className:Re("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...d})})}function lh({className:s,inset:c,variant:d="default",...o}){return n.jsx(Xp,{"data-slot":"dropdown-menu-item","data-inset":c,"data-variant":d,className:Re("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),...o})}function Zv({className:s,...c}){return n.jsx(Kp,{"data-slot":"dropdown-menu-separator",className:Re("bg-border -mx-1 my-1 h-px",s),...c})}function Fv({projects:s,selectedProject:c,onSelectProject:d,isLoading:o,onSpecCreatingChange:m}){const[x,p]=f.useState(!1),[y,g]=f.useState(!1),[j,z]=f.useState(null),E=$0(),H=_=>{d(_),p(!1)},w=(_,R)=>{_.stopPropagation(),_.preventDefault(),z(R)},B=async()=>{if(j)try{await E.mutateAsync(j),c===j&&d(null),z(null)}catch(_){console.error("Failed to delete project:",_),z(null)}},M=()=>{z(null)},C=s.find(_=>_.name===c);return n.jsxs("div",{className:"relative",children:[n.jsxs(Vv,{open:x,onOpenChange:p,children:[n.jsx(Xv,{asChild:!0,children:n.jsxs(J,{variant:"outline",className:"min-w-[140px] sm:min-w-[200px] justify-between",disabled:o,title:C?.path,children:[o?n.jsx(ze,{size:18,className:"animate-spin"}):c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"flex items-center gap-2 truncate",children:[n.jsx(Fi,{size:18,className:"shrink-0"}),n.jsx("span",{className:"truncate",children:c})]}),C&&C.stats.total>0&&n.jsxs(we,{className:"ml-2",children:[C.stats.percentage,"%"]})]}):n.jsx("span",{className:"text-muted-foreground",children:"Select Project"}),n.jsx(gs,{size:18,className:`transition-transform ${x?"rotate-180":""}`})]})}),n.jsxs(Kv,{align:"start",className:"w-[280px] p-0 flex flex-col",children:[s.length>0?n.jsx("div",{className:"max-h-[300px] overflow-y-auto p-1",children:s.map(_=>n.jsxs(lh,{title:_.path,className:`flex items-center justify-between cursor-pointer ${_.name===c?"bg-primary/10":""}`,onSelect:()=>{d(_.name)},children:[n.jsxs("span",{className:"flex items-center gap-2 flex-1",children:[n.jsx(Fi,{size:16}),_.name,_.stats.total>0&&n.jsxs("span",{className:"text-sm font-mono text-muted-foreground ml-auto",children:[_.stats.passing,"/",_.stats.total]})]}),n.jsx(J,{variant:"ghost",size:"icon-xs",onClick:R=>w(R,_.name),className:"text-muted-foreground hover:text-destructive",children:n.jsx(an,{size:14})})]},_.name))}):n.jsx("div",{className:"p-4 text-center text-muted-foreground",children:"No projects yet"}),n.jsx(Zv,{className:"my-0"}),n.jsx("div",{className:"p-1",children:n.jsxs(lh,{onSelect:()=>{g(!0)},className:"cursor-pointer font-semibold",children:[n.jsx(tn,{size:16}),"New Project"]})})]})]}),n.jsx(Yv,{isOpen:y,onClose:()=>g(!1),onProjectCreated:H,onStepChange:_=>m?.(_==="chat")}),n.jsx(Zh,{isOpen:j!==null,title:"Delete Project",message:`Are you sure you want to remove "${j}" from the registry? This will unregister the project but preserve its files on disk.`,confirmLabel:"Delete",cancelLabel:"Cancel",variant:"danger",isLoading:E.isPending,onConfirm:B,onCancel:M})]})}function $v({feature:s,allFeatures:c=[],compact:d=!1}){const o=s.dependencies||[];if(o.length===0)return null;const m=s.blocked??(s.blocking_dependencies&&s.blocking_dependencies.length>0)??!1,x=s.blocking_dependencies?.length??0;let p=o.length-x;if(c.length>0&&!s.blocking_dependencies){const y=new Set(c.filter(g=>g.passes).map(g=>g.id));p=o.filter(g=>y.has(g)).length}return d?n.jsx(we,{variant:"outline",className:`gap-1 font-mono text-xs ${m?"bg-destructive/10 text-destructive border-destructive/30":"bg-muted text-muted-foreground"}`,title:m?`Blocked by ${x} ${x===1?"dependency":"dependencies"}`:`${p}/${o.length} dependencies satisfied`,children:m?n.jsxs(n.Fragment,{children:[n.jsx(oa,{size:12}),n.jsx("span",{children:x})]}):n.jsxs(n.Fragment,{children:[n.jsx(gl,{size:12}),n.jsxs("span",{children:[p,"/",o.length]})]})}):n.jsx("div",{className:"flex items-center gap-2",children:m?n.jsxs("div",{className:"flex items-center gap-1.5 text-sm text-destructive",children:[n.jsx(oa,{size:14}),n.jsxs("span",{className:"font-medium",children:["Blocked by ",x," ",x===1?"dependency":"dependencies"]})]}):n.jsxs("div",{className:"flex items-center gap-1.5 text-sm text-muted-foreground",children:[n.jsx(ca,{size:14,className:"text-primary"}),n.jsxs("span",{children:["All ",o.length," ",o.length===1?"dependency":"dependencies"," satisfied"]})]})})}const Jv={primary:"#6B7280",secondary:"#9CA3AF",accent:"#F3F4F6"},Wv={Spark:{primary:"#3B82F6",secondary:"#60A5FA",accent:"#DBEAFE"},Fizz:{primary:"#F97316",secondary:"#FB923C",accent:"#FFEDD5"},Octo:{primary:"#8B5CF6",secondary:"#A78BFA",accent:"#EDE9FE"},Hoot:{primary:"#22C55E",secondary:"#4ADE80",accent:"#DCFCE7"},Buzz:{primary:"#EAB308",secondary:"#FACC15",accent:"#FEF9C3"},Pixel:{primary:"#EC4899",secondary:"#F472B6",accent:"#FCE7F3"},Byte:{primary:"#06B6D4",secondary:"#22D3EE",accent:"#CFFAFE"},Nova:{primary:"#F43F5E",secondary:"#FB7185",accent:"#FFE4E6"},Chip:{primary:"#84CC16",secondary:"#A3E635",accent:"#ECFCCB"},Bolt:{primary:"#FBBF24",secondary:"#FCD34D",accent:"#FEF3C7"},Dash:{primary:"#14B8A6",secondary:"#2DD4BF",accent:"#CCFBF1"},Zap:{primary:"#A855F7",secondary:"#C084FC",accent:"#F3E8FF"},Gizmo:{primary:"#64748B",secondary:"#94A3B8",accent:"#F1F5F9"},Turbo:{primary:"#EF4444",secondary:"#F87171",accent:"#FEE2E2"},Blip:{primary:"#10B981",secondary:"#34D399",accent:"#D1FAE5"},Neon:{primary:"#D946EF",secondary:"#E879F9",accent:"#FAE8FF"},Widget:{primary:"#6366F1",secondary:"#818CF8",accent:"#E0E7FF"},Zippy:{primary:"#F59E0B",secondary:"#FBBF24",accent:"#FEF3C7"},Quirk:{primary:"#0EA5E9",secondary:"#38BDF8",accent:"#E0F2FE"},Flux:{primary:"#7C3AED",secondary:"#8B5CF6",accent:"#EDE9FE"}};function Iv({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"16",y:"20",width:"32",height:"28",rx:"4",fill:s.primary}),n.jsx("rect",{x:"12",y:"8",width:"40",height:"24",rx:"4",fill:s.secondary}),n.jsx("circle",{cx:"32",cy:"4",r:"4",fill:s.primary,className:"animate-pulse"}),n.jsx("rect",{x:"30",y:"4",width:"4",height:"8",fill:s.primary}),n.jsx("circle",{cx:"24",cy:"18",r:"4",fill:"white"}),n.jsx("circle",{cx:"40",cy:"18",r:"4",fill:"white"}),n.jsx("circle",{cx:"25",cy:"18",r:"2",fill:s.primary}),n.jsx("circle",{cx:"41",cy:"18",r:"2",fill:s.primary}),n.jsx("rect",{x:"26",y:"24",width:"12",height:"2",rx:"1",fill:"white"}),n.jsx("rect",{x:"6",y:"24",width:"8",height:"4",rx:"2",fill:s.primary}),n.jsx("rect",{x:"50",y:"24",width:"8",height:"4",rx:"2",fill:s.primary})]})}function Pv({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("polygon",{points:"12,12 20,28 4,28",fill:s.primary}),n.jsx("polygon",{points:"52,12 60,28 44,28",fill:s.primary}),n.jsx("polygon",{points:"14,14 18,26 8,26",fill:s.accent}),n.jsx("polygon",{points:"50,14 56,26 44,26",fill:s.accent}),n.jsx("ellipse",{cx:"32",cy:"36",rx:"24",ry:"22",fill:s.primary}),n.jsx("ellipse",{cx:"32",cy:"40",rx:"18",ry:"14",fill:s.accent}),n.jsx("ellipse",{cx:"24",cy:"32",rx:"4",ry:"5",fill:"white"}),n.jsx("ellipse",{cx:"40",cy:"32",rx:"4",ry:"5",fill:"white"}),n.jsx("circle",{cx:"25",cy:"33",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"41",cy:"33",r:"2",fill:"#1a1a1a"}),n.jsx("ellipse",{cx:"32",cy:"42",rx:"4",ry:"3",fill:s.primary}),n.jsx("line",{x1:"8",y1:"38",x2:"18",y2:"40",stroke:s.primary,strokeWidth:"2"}),n.jsx("line",{x1:"8",y1:"44",x2:"18",y2:"44",stroke:s.primary,strokeWidth:"2"}),n.jsx("line",{x1:"46",y1:"40",x2:"56",y2:"38",stroke:s.primary,strokeWidth:"2"}),n.jsx("line",{x1:"46",y1:"44",x2:"56",y2:"44",stroke:s.primary,strokeWidth:"2"})]})}function eb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("path",{d:"M12,48 Q8,56 12,60 Q16,64 20,58",fill:s.secondary}),n.jsx("path",{d:"M22,50 Q20,58 24,62",fill:s.secondary}),n.jsx("path",{d:"M32,52 Q32,60 36,62",fill:s.secondary}),n.jsx("path",{d:"M42,50 Q44,58 40,62",fill:s.secondary}),n.jsx("path",{d:"M52,48 Q56,56 52,60 Q48,64 44,58",fill:s.secondary}),n.jsx("ellipse",{cx:"32",cy:"32",rx:"22",ry:"24",fill:s.primary}),n.jsx("ellipse",{cx:"24",cy:"28",rx:"6",ry:"8",fill:"white"}),n.jsx("ellipse",{cx:"40",cy:"28",rx:"6",ry:"8",fill:"white"}),n.jsx("ellipse",{cx:"25",cy:"30",rx:"3",ry:"4",fill:s.primary}),n.jsx("ellipse",{cx:"41",cy:"30",rx:"3",ry:"4",fill:s.primary}),n.jsx("path",{d:"M24,42 Q32,48 40,42",stroke:s.accent,strokeWidth:"2",fill:"none",strokeLinecap:"round"})]})}function tb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("polygon",{points:"14,8 22,24 6,20",fill:s.primary}),n.jsx("polygon",{points:"50,8 58,20 42,24",fill:s.primary}),n.jsx("ellipse",{cx:"32",cy:"40",rx:"20",ry:"18",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"28",r:"20",fill:s.secondary}),n.jsx("circle",{cx:"24",cy:"26",r:"10",fill:s.accent}),n.jsx("circle",{cx:"40",cy:"26",r:"10",fill:s.accent}),n.jsx("circle",{cx:"24",cy:"26",r:"6",fill:"white"}),n.jsx("circle",{cx:"40",cy:"26",r:"6",fill:"white"}),n.jsx("circle",{cx:"25",cy:"27",r:"3",fill:"#1a1a1a"}),n.jsx("circle",{cx:"41",cy:"27",r:"3",fill:"#1a1a1a"}),n.jsx("polygon",{points:"32,32 28,40 36,40",fill:"#F97316"}),n.jsx("ellipse",{cx:"32",cy:"46",rx:"10",ry:"8",fill:s.accent})]})}function ab({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("ellipse",{cx:"14",cy:"32",rx:"10",ry:"14",fill:s.accent,opacity:"0.8",className:"animate-pulse"}),n.jsx("ellipse",{cx:"50",cy:"32",rx:"10",ry:"14",fill:s.accent,opacity:"0.8",className:"animate-pulse"}),n.jsx("ellipse",{cx:"32",cy:"36",rx:"14",ry:"20",fill:s.primary}),n.jsx("ellipse",{cx:"32",cy:"30",rx:"12",ry:"6",fill:"#1a1a1a"}),n.jsx("ellipse",{cx:"32",cy:"44",rx:"12",ry:"6",fill:"#1a1a1a"}),n.jsx("circle",{cx:"32",cy:"16",r:"12",fill:s.primary}),n.jsx("line",{x1:"26",y1:"8",x2:"22",y2:"2",stroke:"#1a1a1a",strokeWidth:"2"}),n.jsx("line",{x1:"38",y1:"8",x2:"42",y2:"2",stroke:"#1a1a1a",strokeWidth:"2"}),n.jsx("circle",{cx:"22",cy:"2",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"42",cy:"2",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"28",cy:"14",r:"4",fill:"white"}),n.jsx("circle",{cx:"36",cy:"14",r:"4",fill:"white"}),n.jsx("circle",{cx:"29",cy:"15",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"37",cy:"15",r:"2",fill:"#1a1a1a"}),n.jsx("path",{d:"M28,20 Q32,24 36,20",stroke:"#1a1a1a",strokeWidth:"1.5",fill:"none",strokeLinecap:"round"})]})}function nb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"20",y:"28",width:"24",height:"28",fill:s.primary}),n.jsx("rect",{x:"16",y:"32",width:"8",height:"20",fill:s.secondary}),n.jsx("rect",{x:"40",y:"32",width:"8",height:"20",fill:s.secondary}),n.jsx("rect",{x:"16",y:"8",width:"32",height:"24",fill:s.primary}),n.jsx("rect",{x:"20",y:"14",width:"8",height:"8",fill:"white"}),n.jsx("rect",{x:"36",y:"14",width:"8",height:"8",fill:"white"}),n.jsx("rect",{x:"24",y:"16",width:"4",height:"4",fill:"#1a1a1a"}),n.jsx("rect",{x:"38",y:"16",width:"4",height:"4",fill:"#1a1a1a"}),n.jsx("rect",{x:"26",y:"26",width:"12",height:"4",fill:s.accent})]})}function lb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("polygon",{points:"32,8 56,20 56,44 32,56 8,44 8,20",fill:s.primary}),n.jsx("polygon",{points:"32,8 56,20 32,32 8,20",fill:s.secondary}),n.jsx("polygon",{points:"32,32 56,20 56,44 32,56",fill:s.accent,opacity:"0.6"}),n.jsx("circle",{cx:"24",cy:"28",r:"4",fill:"white"}),n.jsx("circle",{cx:"40",cy:"28",r:"4",fill:"white"}),n.jsx("circle",{cx:"25",cy:"29",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"41",cy:"29",r:"2",fill:"#1a1a1a"}),n.jsx("path",{d:"M26,38 Q32,42 38,38",stroke:"white",strokeWidth:"2",fill:"none",strokeLinecap:"round"})]})}function sb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("polygon",{points:"32,2 38,22 58,22 42,36 48,56 32,44 16,56 22,36 6,22 26,22",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"14",fill:s.secondary}),n.jsx("circle",{cx:"27",cy:"30",r:"3",fill:"white"}),n.jsx("circle",{cx:"37",cy:"30",r:"3",fill:"white"}),n.jsx("circle",{cx:"28",cy:"31",r:"1.5",fill:"#1a1a1a"}),n.jsx("circle",{cx:"38",cy:"31",r:"1.5",fill:"#1a1a1a"}),n.jsx("path",{d:"M28,37 Q32,40 36,37",stroke:"#1a1a1a",strokeWidth:"1.5",fill:"none",strokeLinecap:"round"})]})}function ib({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"16",y:"16",width:"32",height:"32",rx:"4",fill:s.primary}),n.jsx("rect",{x:"20",y:"10",width:"4",height:"8",fill:s.secondary}),n.jsx("rect",{x:"30",y:"10",width:"4",height:"8",fill:s.secondary}),n.jsx("rect",{x:"40",y:"10",width:"4",height:"8",fill:s.secondary}),n.jsx("rect",{x:"20",y:"46",width:"4",height:"8",fill:s.secondary}),n.jsx("rect",{x:"30",y:"46",width:"4",height:"8",fill:s.secondary}),n.jsx("rect",{x:"40",y:"46",width:"4",height:"8",fill:s.secondary}),n.jsx("circle",{cx:"26",cy:"28",r:"4",fill:s.accent}),n.jsx("circle",{cx:"38",cy:"28",r:"4",fill:s.accent}),n.jsx("circle",{cx:"26",cy:"28",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"38",cy:"28",r:"2",fill:"#1a1a1a"}),n.jsx("rect",{x:"26",y:"38",width:"12",height:"3",rx:"1",fill:s.accent})]})}function rb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("polygon",{points:"36,4 20,28 30,28 24,60 48,32 36,32 44,4",fill:s.primary}),n.jsx("polygon",{points:"34,8 24,26 32,26 28,52 42,34 34,34 40,8",fill:s.secondary}),n.jsx("circle",{cx:"30",cy:"30",r:"3",fill:"white"}),n.jsx("circle",{cx:"38",cy:"26",r:"3",fill:"white"}),n.jsx("circle",{cx:"31",cy:"31",r:"1.5",fill:"#1a1a1a"}),n.jsx("circle",{cx:"39",cy:"27",r:"1.5",fill:"#1a1a1a"})]})}function cb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"4",y:"28",width:"12",height:"3",rx:"1",fill:s.accent,opacity:"0.6"}),n.jsx("rect",{x:"8",y:"34",width:"10",height:"3",rx:"1",fill:s.accent,opacity:"0.4"}),n.jsx("ellipse",{cx:"36",cy:"32",rx:"20",ry:"16",fill:s.primary}),n.jsx("ellipse",{cx:"40",cy:"32",rx:"14",ry:"12",fill:s.secondary}),n.jsx("circle",{cx:"38",cy:"28",r:"4",fill:"white"}),n.jsx("circle",{cx:"48",cy:"28",r:"4",fill:"white"}),n.jsx("circle",{cx:"39",cy:"29",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"49",cy:"29",r:"2",fill:"#1a1a1a"}),n.jsx("path",{d:"M40,36 Q44,39 48,36",stroke:"#1a1a1a",strokeWidth:"1.5",fill:"none",strokeLinecap:"round"})]})}function ub({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("path",{d:"M12,32 L20,28 L16,32 L22,30",stroke:s.secondary,strokeWidth:"2",className:"animate-pulse"}),n.jsx("path",{d:"M52,32 L44,28 L48,32 L42,30",stroke:s.secondary,strokeWidth:"2",className:"animate-pulse"}),n.jsx("circle",{cx:"32",cy:"32",r:"18",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"14",fill:s.secondary}),n.jsx("circle",{cx:"26",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"38",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"27",cy:"31",r:"2",fill:s.primary}),n.jsx("circle",{cx:"39",cy:"31",r:"2",fill:s.primary}),n.jsx("path",{d:"M28,40 Q32,44 36,40",stroke:"white",strokeWidth:"2",fill:"none",strokeLinecap:"round"})]})}function ob({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"28",y:"4",width:"8",height:"8",fill:s.primary}),n.jsx("rect",{x:"28",y:"52",width:"8",height:"8",fill:s.primary}),n.jsx("rect",{x:"4",y:"28",width:"8",height:"8",fill:s.primary}),n.jsx("rect",{x:"52",y:"28",width:"8",height:"8",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"20",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"14",fill:s.secondary}),n.jsx("circle",{cx:"26",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"38",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"27",cy:"31",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"39",cy:"31",r:"2",fill:"#1a1a1a"}),n.jsx("path",{d:"M28,40 Q32,43 36,40",stroke:"#1a1a1a",strokeWidth:"2",fill:"none",strokeLinecap:"round"})]})}function db({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("ellipse",{cx:"32",cy:"58",rx:"8",ry:"6",fill:"#FBBF24",className:"animate-pulse"}),n.jsx("ellipse",{cx:"32",cy:"56",rx:"5",ry:"4",fill:"#FCD34D"}),n.jsx("ellipse",{cx:"32",cy:"32",rx:"14",ry:"24",fill:s.primary}),n.jsx("ellipse",{cx:"32",cy:"12",rx:"8",ry:"10",fill:s.secondary}),n.jsx("polygon",{points:"18,44 10,56 18,52",fill:s.secondary}),n.jsx("polygon",{points:"46,44 54,56 46,52",fill:s.secondary}),n.jsx("circle",{cx:"32",cy:"28",r:"8",fill:s.accent}),n.jsx("circle",{cx:"29",cy:"27",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"35",cy:"27",r:"2",fill:"#1a1a1a"}),n.jsx("path",{d:"M29,32 Q32,34 35,32",stroke:"#1a1a1a",strokeWidth:"1",fill:"none"})]})}function fb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("circle",{cx:"32",cy:"32",r:"28",stroke:s.accent,strokeWidth:"2",fill:"none",opacity:"0.3"}),n.jsx("circle",{cx:"32",cy:"32",r:"22",stroke:s.accent,strokeWidth:"2",fill:"none",opacity:"0.5"}),n.jsx("circle",{cx:"32",cy:"32",r:"14",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"10",fill:s.secondary}),n.jsx("circle",{cx:"28",cy:"30",r:"3",fill:"white"}),n.jsx("circle",{cx:"36",cy:"30",r:"3",fill:"white"}),n.jsx("circle",{cx:"29",cy:"31",r:"1.5",fill:"#1a1a1a"}),n.jsx("circle",{cx:"37",cy:"31",r:"1.5",fill:"#1a1a1a"}),n.jsx("path",{d:"M29,37 Q32,40 35,37",stroke:"white",strokeWidth:"1.5",fill:"none",strokeLinecap:"round"})]})}function mb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("circle",{cx:"32",cy:"32",r:"26",fill:s.accent,opacity:"0.3"}),n.jsx("circle",{cx:"32",cy:"32",r:"22",fill:s.accent,opacity:"0.5"}),n.jsx("circle",{cx:"32",cy:"32",r:"18",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"12",fill:s.secondary}),n.jsx("circle",{cx:"27",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"37",cy:"30",r:"4",fill:"white"}),n.jsx("circle",{cx:"28",cy:"31",r:"2",fill:s.primary}),n.jsx("circle",{cx:"38",cy:"31",r:"2",fill:s.primary}),n.jsx("path",{d:"M28,38 Q32,42 36,38",stroke:"white",strokeWidth:"2",fill:"none",strokeLinecap:"round"})]})}function hb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"8",y:"12",width:"48",height:"40",rx:"4",fill:s.primary}),n.jsx("rect",{x:"8",y:"12",width:"48",height:"10",rx:"4",fill:s.secondary}),n.jsx("circle",{cx:"16",cy:"17",r:"2",fill:"#EF4444"}),n.jsx("circle",{cx:"24",cy:"17",r:"2",fill:"#FBBF24"}),n.jsx("circle",{cx:"32",cy:"17",r:"2",fill:"#22C55E"}),n.jsx("rect",{x:"12",y:"26",width:"40",height:"22",rx:"2",fill:s.accent}),n.jsx("circle",{cx:"24",cy:"34",r:"4",fill:"white"}),n.jsx("circle",{cx:"40",cy:"34",r:"4",fill:"white"}),n.jsx("circle",{cx:"25",cy:"35",r:"2",fill:s.primary}),n.jsx("circle",{cx:"41",cy:"35",r:"2",fill:s.primary}),n.jsx("rect",{x:"28",y:"42",width:"8",height:"3",rx:"1",fill:s.primary})]})}function xb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("ellipse",{cx:"22",cy:"14",rx:"6",ry:"14",fill:s.primary}),n.jsx("ellipse",{cx:"42",cy:"14",rx:"6",ry:"14",fill:s.primary}),n.jsx("ellipse",{cx:"22",cy:"14",rx:"3",ry:"10",fill:s.accent}),n.jsx("ellipse",{cx:"42",cy:"14",rx:"3",ry:"10",fill:s.accent}),n.jsx("circle",{cx:"32",cy:"38",r:"20",fill:s.primary}),n.jsx("circle",{cx:"24",cy:"34",r:"5",fill:"white"}),n.jsx("circle",{cx:"40",cy:"34",r:"5",fill:"white"}),n.jsx("circle",{cx:"25",cy:"35",r:"2.5",fill:"#1a1a1a"}),n.jsx("circle",{cx:"41",cy:"35",r:"2.5",fill:"#1a1a1a"}),n.jsx("ellipse",{cx:"32",cy:"44",rx:"3",ry:"2",fill:s.secondary}),n.jsx("path",{d:"M32,46 L32,50 M28,52 Q32,56 36,52",stroke:"#1a1a1a",strokeWidth:"1.5",fill:"none"})]})}function gb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("path",{d:"M24,20 Q24,8 32,8 Q44,8 44,20 Q44,28 32,32 L32,40",stroke:s.primary,strokeWidth:"8",fill:"none",strokeLinecap:"round"}),n.jsx("circle",{cx:"32",cy:"52",r:"6",fill:s.primary}),n.jsx("circle",{cx:"29",cy:"51",r:"1.5",fill:"white"}),n.jsx("circle",{cx:"35",cy:"51",r:"1.5",fill:"white"}),n.jsx("circle",{cx:"29",cy:"51",r:"0.75",fill:"#1a1a1a"}),n.jsx("circle",{cx:"35",cy:"51",r:"0.75",fill:"#1a1a1a"}),n.jsx("circle",{cx:"32",cy:"20",r:"4",fill:s.secondary})]})}function pb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("path",{d:"M8,32 Q16,16 32,32 Q48,48 56,32",stroke:s.primary,strokeWidth:"16",fill:"none",strokeLinecap:"round"}),n.jsx("path",{d:"M8,32 Q16,16 32,32 Q48,48 56,32",stroke:s.secondary,strokeWidth:"10",fill:"none",strokeLinecap:"round"}),n.jsx("circle",{cx:"28",cy:"28",r:"4",fill:"white"}),n.jsx("circle",{cx:"40",cy:"36",r:"4",fill:"white"}),n.jsx("circle",{cx:"29",cy:"29",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"41",cy:"37",r:"2",fill:"#1a1a1a"}),n.jsx("circle",{cx:"16",cy:"24",r:"2",fill:s.accent,className:"animate-pulse"}),n.jsx("circle",{cx:"48",cy:"40",r:"2",fill:s.accent,className:"animate-pulse"})]})}function yb({colors:s,size:c}){return n.jsxs("svg",{width:c,height:c,viewBox:"0 0 64 64",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("circle",{cx:"32",cy:"32",r:"28",fill:s.primary}),n.jsx("circle",{cx:"32",cy:"32",r:"24",fill:s.secondary}),n.jsx("text",{x:"32",y:"44",textAnchor:"middle",fontSize:"32",fontWeight:"bold",fill:"white",children:"?"})]})}const vb={Spark:Iv,Fizz:Pv,Octo:eb,Hoot:tb,Buzz:ab,Pixel:nb,Byte:lb,Nova:sb,Chip:ib,Bolt:rb,Dash:cb,Zap:ub,Gizmo:ob,Turbo:db,Blip:fb,Neon:mb,Widget:hb,Zippy:xb,Quirk:gb,Flux:pb},bb=yb,jb={sm:{svg:32,font:"text-xs"},md:{svg:48,font:"text-sm"},lg:{svg:64,font:"text-base"}};function Nb(s){switch(s){case"idle":return"animate-bounce-gentle";case"thinking":return"animate-thinking";case"working":return"animate-working";case"testing":return"animate-testing";case"success":return"animate-celebrate";case"error":case"struggling":return"animate-shake-gentle";default:return""}}function Sb(s){switch(s){case"working":return"shadow-[0_0_12px_rgba(0,180,216,0.5)]";case"thinking":return"shadow-[0_0_8px_rgba(255,214,10,0.4)]";case"success":return"shadow-[0_0_16px_rgba(112,224,0,0.6)]";case"error":case"struggling":return"shadow-[0_0_12px_rgba(255,84,0,0.5)]";default:return""}}function Cb(s){switch(s){case"idle":return"waiting";case"thinking":return"analyzing";case"working":return"coding";case"testing":return"running tests";case"success":return"completed successfully";case"error":return"encountered an error";case"struggling":return"having difficulty";default:return s}}function yl({name:s,state:c,size:d="md",showName:o=!1}){const m=s==="Unknown",x=m?Jv:Wv[s],{svg:p,font:y}=jb[d],g=m?bb:vb[s],j=Cb(c),z=`Agent ${s} is ${j}`;return n.jsxs("div",{className:"flex flex-col items-center gap-1",role:"status","aria-label":z,"aria-live":"polite",children:[n.jsx("div",{className:`
48
- rounded-full p-1 transition-all duration-300
49
- ${Nb(c)}
50
- ${Sb(c)}
51
- `,style:{backgroundColor:x.accent},title:z,role:"img","aria-hidden":"true",children:n.jsx(g,{colors:x,size:p})}),o&&n.jsx("span",{className:`${y} font-bold text-foreground`,style:{color:x.primary},children:s})]})}function wb(s){const c=["bg-pink-500","bg-cyan-500","bg-green-500","bg-yellow-500","bg-orange-500","bg-purple-500","bg-blue-500"];let d=0;for(let o=0;o<s.length;o++)d=s.charCodeAt(o)+((d<<5)-d);return c[Math.abs(d)%c.length]}function zb({feature:s,onClick:c,isInProgress:d,allFeatures:o=[],activeAgent:m}){const x=wb(s.category),p=s.blocked||s.blocking_dependencies&&s.blocking_dependencies.length>0,y=!!m;return n.jsx(Oe,{onClick:c,className:`
52
- cursor-pointer transition-all hover:border-primary py-3
53
- ${d?"animate-pulse":""}
54
- ${s.passes?"border-primary/50":""}
55
- ${s.needs_human_input?"border-amber-500/50":""}
56
- ${p&&!s.passes&&!s.needs_human_input?"border-destructive/50 opacity-80":""}
57
- ${y?"ring-2 ring-primary ring-offset-2":""}
58
- `,children:n.jsxs(qe,{className:"p-4 space-y-3",children:[n.jsxs("div",{className:"flex items-start justify-between gap-2",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(we,{className:`${x} text-white`,children:s.category}),n.jsx($v,{feature:s,allFeatures:o,compact:!0})]}),n.jsxs("span",{className:"font-mono text-sm text-muted-foreground",children:["#",s.priority]})]}),n.jsx("h3",{className:"font-semibold line-clamp-2",children:s.name}),n.jsx("p",{className:"text-sm text-muted-foreground line-clamp-2",children:s.description}),m&&n.jsxs("div",{className:"flex items-center gap-2 py-2 px-2 rounded-md bg-primary/10 border border-primary/30",children:[n.jsx(yl,{name:m.agentName,state:m.state,size:"sm"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsxs("div",{className:"text-xs font-semibold text-primary",children:[m.agentName," is working on this!"]}),m.thought&&n.jsxs("div",{className:"flex items-center gap-1 mt-0.5",children:[n.jsx(Ru,{size:10,className:"text-muted-foreground shrink-0"}),n.jsx("p",{className:"text-[10px] text-muted-foreground truncate italic",children:m.thought})]})]})]}),n.jsx("div",{className:"flex items-center gap-2 text-sm",children:d?n.jsxs(n.Fragment,{children:[n.jsx(ze,{size:16,className:"animate-spin text-primary"}),n.jsx("span",{className:"text-primary font-medium",children:"Processing..."})]}):s.passes?n.jsxs(n.Fragment,{children:[n.jsx($t,{size:16,className:"text-primary"}),n.jsx("span",{className:"text-primary font-medium",children:"Complete"})]}):s.needs_human_input?n.jsxs(n.Fragment,{children:[n.jsx(ar,{size:16,className:"text-amber-500"}),n.jsx("span",{className:"text-amber-500 font-medium",children:"Needs Your Input"})]}):p?n.jsxs(n.Fragment,{children:[n.jsx(dl,{size:16,className:"text-destructive"}),n.jsx("span",{className:"text-destructive",children:"Blocked"})]}):n.jsxs(n.Fragment,{children:[n.jsx(dl,{size:16,className:"text-muted-foreground"}),n.jsx("span",{className:"text-muted-foreground",children:"Pending"})]})})]})})}const Tb={pending:"border-t-4 border-t-muted",progress:"border-t-4 border-t-primary",done:"border-t-4 border-t-primary",human_input:"border-t-4 border-t-amber-500"};function qi({title:s,count:c,features:d,allFeatures:o=[],activeAgents:m=[],color:x,onFeatureClick:p,onAddFeature:y,onExpandProject:g,showExpandButton:j,onCreateSpec:z,showCreateSpec:E}){const H=new Map;for(const w of m){const B=w.featureIds||[w.featureId];for(const M of B)H.set(M,w)}return n.jsxs(Oe,{className:`overflow-hidden ${Tb[x]} py-0`,children:[n.jsxs(lr,{className:"px-4 py-3 border-b flex-row items-center justify-between space-y-0",children:[n.jsxs(Hu,{className:"text-lg font-semibold flex items-center gap-2",children:[s,n.jsx(we,{variant:"secondary",children:c})]}),(y||g)&&n.jsxs("div",{className:"flex items-center gap-2",children:[y&&n.jsx(J,{onClick:y,size:"icon-sm",title:"Add new feature (N)",children:n.jsx(tn,{size:16})}),g&&j&&n.jsx(J,{onClick:g,size:"icon-sm",variant:"secondary",title:"Expand project with AI (E)",children:n.jsx(Sn,{size:16})})]})]}),n.jsx(qe,{className:"p-0",children:n.jsx("div",{className:"h-[600px] overflow-y-auto",children:n.jsx("div",{className:"p-4 space-y-3",children:d.length===0?n.jsx("div",{className:"text-center py-8 text-muted-foreground",children:E&&z?n.jsxs("div",{className:"space-y-4",children:[n.jsx("p",{children:"No spec created yet"}),n.jsxs(J,{onClick:z,children:[n.jsx(my,{size:18}),"Create Spec with AI"]})]}):"No features"}):d.map((w,B)=>n.jsx("div",{className:"animate-slide-in",style:{animationDelay:`${B*50}ms`},children:n.jsx(zb,{feature:w,onClick:()=>p(w),isInProgress:x==="progress",allFeatures:o,activeAgent:H.get(w.id)})},w.id))})})})]})}function Eb({features:s,onFeatureClick:c,onAddFeature:d,onExpandProject:o,activeAgents:m=[],onCreateSpec:x,hasSpec:p=!0}){const y=s&&s.pending.length+s.in_progress.length+s.done.length+(s.needs_human_input?.length||0)>0,g=s?[...s.pending,...s.in_progress,...s.done,...s.needs_human_input||[]]:[],j=s?.needs_human_input?.length||0,z=j>0;return s?n.jsxs("div",{className:`grid grid-cols-1 ${z?"md:grid-cols-4":"md:grid-cols-3"} gap-6`,children:[n.jsx(qi,{title:"Pending",count:s.pending.length,features:s.pending,allFeatures:g,activeAgents:m,color:"pending",onFeatureClick:c,onAddFeature:d,onExpandProject:o,showExpandButton:y&&p,onCreateSpec:x,showCreateSpec:!p&&!y}),n.jsx(qi,{title:"In Progress",count:s.in_progress.length,features:s.in_progress,allFeatures:g,activeAgents:m,color:"progress",onFeatureClick:c}),z&&n.jsx(qi,{title:"Needs Input",count:j,features:s.needs_human_input,allFeatures:g,activeAgents:m,color:"human_input",onFeatureClick:c}),n.jsx(qi,{title:"Done",count:s.done.length,features:s.done,allFeatures:g,activeAgents:m,color:"done",onFeatureClick:c})]}):n.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6",children:["Pending","In Progress","Done"].map(E=>n.jsx(Oe,{className:"py-4",children:n.jsxs(qe,{className:"p-4",children:[n.jsx("div",{className:"h-8 bg-muted animate-pulse rounded mb-4"}),n.jsx("div",{className:"space-y-3",children:[1,2,3].map(H=>n.jsx("div",{className:"h-24 bg-muted animate-pulse rounded"},H))})]})},E))})}function Ab(s){return pt({queryKey:["schedules",s],queryFn:()=>Q0(s),enabled:!!s})}function Db(s){const c=Ve();return Je({mutationFn:d=>Y0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["schedules",s]}),c.invalidateQueries({queryKey:["nextRun",s]})}})}function _b(s){const c=Ve();return Je({mutationFn:d=>X0(s,d),onSuccess:()=>{c.invalidateQueries({queryKey:["schedules",s]}),c.invalidateQueries({queryKey:["nextRun",s]})}})}function Mb(s){const c=Ve();return Je({mutationFn:({scheduleId:d,enabled:o})=>V0(s,d,{enabled:o}),onSuccess:()=>{c.invalidateQueries({queryKey:["schedules",s]}),c.invalidateQueries({queryKey:["nextRun",s]})}})}function kb(s){return pt({queryKey:["nextRun",s],queryFn:()=>K0(s),enabled:!!s,refetchInterval:3e4})}function Ob(s){const[c,d]=s.split(":").map(Number),o=new Date(Date.UTC(2e3,0,15,c,d,0,0)),m=o.getDate();let x=0;m===14&&(x=-1),m===16&&(x=1);const p=o.getHours(),y=o.getMinutes();return{time:`${String(p).padStart(2,"0")}:${String(y).padStart(2,"0")}`,dayShift:x}}function Rb(s){const[c,d]=s.split(":").map(Number),o=new Date(2e3,0,15,c,d,0,0),m=o.getUTCDate();let x=0;m===14&&(x=-1),m===16&&(x=1);const p=o.getUTCHours(),y=o.getUTCMinutes();return{time:`${String(p).padStart(2,"0")}:${String(y).padStart(2,"0")}`,dayShift:x}}function Ub(s){let c=0;return s&1&&(c|=2),s&2&&(c|=4),s&4&&(c|=8),s&8&&(c|=16),s&16&&(c|=32),s&32&&(c|=64),s&64&&(c|=1),c}function Bb(s){let c=0;return s&1&&(c|=64),s&2&&(c|=1),s&4&&(c|=2),s&8&&(c|=4),s&16&&(c|=8),s&32&&(c|=16),s&64&&(c|=32),c}function sh(s,c){return c===1?Ub(s):c===-1?Bb(s):s}function ih(s){const c=Math.floor(s/60),d=s%60;return c===0?`${d}m`:d===0?`${c}h`:`${c}h ${d}m`}function Lb(s){const c=new Date(s),d=new Date,o=c.getTime()-d.getTime();return Math.floor(o/(1e3*60*60))<24?c.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}):c.toLocaleString([],{weekday:"short",hour:"numeric",minute:"2-digit"})}function Hb(s){return new Date(s).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"})}const rh=[{label:"Mon",bit:1},{label:"Tue",bit:2},{label:"Wed",bit:4},{label:"Thu",bit:8},{label:"Fri",bit:16},{label:"Sat",bit:32},{label:"Sun",bit:64}];function ch(s,c){return(s&c)!==0}function qb(s,c){return s^c}function Gb({className:s,...c}){return n.jsx(Zp,{"data-slot":"checkbox",className:Re("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",s),...c,children:n.jsx(Fp,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none",children:n.jsx(ca,{className:"size-3.5"})})})}function Eu({className:s,orientation:c="horizontal",decorative:d=!0,...o}){return n.jsx($p,{"data-slot":"separator",decorative:d,orientation:c,className:Re("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",s),...o})}function Qb({projectName:s,isOpen:c,onClose:d}){const o=f.useRef(null),m=f.useRef(null),{data:x,isLoading:p}=Ab(s),y=Db(s),g=_b(s),j=Mb(s),[z,E]=f.useState({start_time:"22:00",duration_minutes:240,days_of_week:31,enabled:!0,yolo_mode:!1,model:null,max_concurrency:3}),[H,w]=f.useState(null);f.useEffect(()=>{c&&m.current&&m.current.focus()},[c]);const B=x?.schedules||[],M=async()=>{try{if(w(null),z.days_of_week===0){w("Please select at least one day");return}if(z.duration_minutes<1||z.duration_minutes>1440){w("Duration must be between 1 and 1440 minutes");return}const{time:T,dayShift:N}=Rb(z.start_time),L=sh(z.days_of_week,N),I={...z,start_time:T,days_of_week:L};await y.mutateAsync(I),E({start_time:"22:00",duration_minutes:240,days_of_week:31,enabled:!0,yolo_mode:!1,model:null,max_concurrency:3})}catch(T){w(T instanceof Error?T.message:"Failed to create schedule")}},C=async(T,N)=>{try{w(null),await j.mutateAsync({scheduleId:T,enabled:!N})}catch(L){w(L instanceof Error?L.message:"Failed to toggle schedule")}},_=async T=>{if(confirm("Are you sure you want to delete this schedule?"))try{w(null),await g.mutateAsync(T)}catch(N){w(N instanceof Error?N.message:"Failed to delete schedule")}},R=T=>{E(N=>({...N,days_of_week:qb(N.days_of_week,T)}))};return n.jsx(ea,{open:c,onOpenChange:T=>!T&&d(),children:n.jsxs(ta,{ref:o,className:"sm:max-w-[650px] max-h-[80vh] flex flex-col p-0",children:[n.jsx(aa,{className:"p-6 pb-4",children:n.jsxs(na,{className:"flex items-center gap-2",children:[n.jsx(fl,{size:24,className:"text-primary"}),"Agent Schedules"]})}),n.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto px-6",children:[H&&n.jsx(rt,{variant:"destructive",className:"mb-4",children:n.jsx(ct,{children:H})}),p&&n.jsx("div",{className:"text-center py-8 text-muted-foreground",children:"Loading schedules..."}),!p&&B.length>0&&n.jsx("div",{className:"space-y-3 mb-6",children:B.map(T=>{const{time:N,dayShift:L}=Ob(T.start_time),I=ih(T.duration_minutes),F=sh(T.days_of_week,L);return n.jsx(Oe,{children:n.jsx(qe,{className:"p-4",children:n.jsxs("div",{className:"flex items-start justify-between gap-4",children:[n.jsxs("div",{className:"flex-1",children:[n.jsxs("div",{className:"flex items-baseline gap-2 mb-2",children:[n.jsx("span",{className:"text-lg font-semibold",children:N}),n.jsxs("span",{className:"text-sm text-muted-foreground",children:["for ",I]})]}),n.jsx("div",{className:"flex gap-1 mb-2",children:rh.map(ae=>{const Y=ch(F,ae.bit);return n.jsx("span",{className:`text-xs px-2 py-1 rounded border ${Y?"border-primary bg-primary text-primary-foreground font-medium":"border-border text-muted-foreground"}`,children:ae.label},ae.label)})}),n.jsxs("div",{className:"flex gap-3 text-xs text-muted-foreground",children:[T.yolo_mode&&n.jsx("span",{className:"font-semibold text-yellow-600",children:"YOLO mode"}),n.jsxs("span",{className:"flex items-center gap-1",children:[n.jsx(gl,{size:12}),T.max_concurrency,"x"]}),T.model&&n.jsxs("span",{children:["Model: ",T.model]}),T.crash_count>0&&n.jsxs("span",{className:"text-destructive",children:["Crashes: ",T.crash_count]})]})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(J,{variant:"ghost",size:"sm",onClick:()=>C(T.id,T.enabled),disabled:j.isPending,className:T.enabled?"text-primary":"text-muted-foreground",children:T.enabled?"Enabled":"Disabled"}),n.jsx(J,{variant:"ghost",size:"icon-sm",onClick:()=>_(T.id),disabled:g.isPending,className:"text-destructive hover:text-destructive",children:n.jsx(an,{size:16})})]})]})})},T.id)})}),!p&&B.length===0&&n.jsxs("div",{className:"text-center py-6 text-muted-foreground mb-6",children:[n.jsx(fl,{size:48,className:"mx-auto mb-2 opacity-50"}),n.jsx("p",{children:"No schedules configured yet"})]}),n.jsx(Eu,{className:"my-6"}),n.jsxs("div",{className:"pb-6",children:[n.jsx("h3",{className:"text-lg font-semibold mb-4",children:"Add New Schedule"}),n.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{children:"Start Time (Local)"}),n.jsx(it,{type:"time",value:z.start_time,onChange:T=>E(N=>({...N,start_time:T.target.value}))})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{children:"Duration (minutes)"}),n.jsx(it,{type:"number",min:"1",max:"1440",value:z.duration_minutes,onChange:T=>{const N=parseInt(T.target.value,10),L=isNaN(N)?1:Math.max(1,Math.min(1440,N));E(I=>({...I,duration_minutes:L}))}}),n.jsx("p",{className:"text-xs text-muted-foreground",children:ih(z.duration_minutes)})]})]}),n.jsxs("div",{className:"mb-4 space-y-2",children:[n.jsx(_e,{children:"Days"}),n.jsx("div",{className:"flex gap-2",children:rh.map(T=>{const N=ch(z.days_of_week,T.bit);return n.jsx(J,{variant:N?"default":"outline",size:"sm",onClick:()=>R(T.bit),children:T.label},T.label)})})]}),n.jsxs("div",{className:"mb-4 flex items-center space-x-2",children:[n.jsx(Gb,{id:"yolo-mode",checked:z.yolo_mode,onCheckedChange:T=>E(N=>({...N,yolo_mode:T===!0}))}),n.jsx(_e,{htmlFor:"yolo-mode",className:"font-normal",children:"YOLO Mode (skip testing)"})]}),n.jsxs("div",{className:"mb-4 space-y-2",children:[n.jsx(_e,{children:"Concurrent Agents (1-5)"}),n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(gl,{size:16,className:z.max_concurrency>1?"text-primary":"text-muted-foreground"}),n.jsx("input",{type:"range",min:1,max:5,value:z.max_concurrency,onChange:T=>E(N=>({...N,max_concurrency:Number(T.target.value)})),className:"flex-1 h-2 accent-primary cursor-pointer"}),n.jsxs("span",{className:"text-sm font-medium min-w-[2rem] text-center",children:[z.max_concurrency,"x"]})]}),n.jsxs("p",{className:"text-xs text-muted-foreground",children:["Run ",z.max_concurrency," agent",z.max_concurrency>1?"s":""," in parallel for faster feature completion"]})]}),n.jsxs("div",{className:"mb-4 space-y-2",children:[n.jsx(_e,{children:"Model (optional, defaults to global setting)"}),n.jsx(it,{placeholder:"e.g., claude-3-5-sonnet-20241022",value:z.model||"",onChange:T=>E(N=>({...N,model:T.target.value||null}))})]})]})]}),n.jsxs(Pt,{className:"p-6 pt-4 border-t",children:[n.jsx(J,{variant:"outline",onClick:d,children:"Close"}),n.jsx(J,{onClick:M,disabled:y.isPending||z.days_of_week===0,children:y.isPending?"Creating...":"Create Schedule"})]})]})})}function Yb({projectName:s,status:c,defaultConcurrency:d=3}){const{data:o}=Bu(),m=o?.yolo_mode??!1,[x,p]=f.useState(d);f.useEffect(()=>{p(d)},[d]);const y=W0(s),g=f.useRef(null),j=f.useCallback(ae=>{p(ae),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{y.mutate({default_concurrency:ae})},500)},[y]);f.useEffect(()=>()=>{g.current&&clearTimeout(g.current)},[]);const z=lv(s),E=sv(s),H=iv(s),w=rv(s),{data:B}=kb(s),[M,C]=f.useState(!1),_=z.isPending||E.isPending||H.isPending||w.isPending,R=c==="running"||c==="paused"||c==="pausing"||c==="paused_graceful",T=c==="loading",N=x>1,L=()=>z.mutate({yoloMode:m,parallelMode:N,maxConcurrency:x,testingAgentRatio:o?.testing_agent_ratio}),I=()=>E.mutate(),F=c==="stopped"||c==="crashed";return n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex items-center gap-2 sm:gap-4",children:[F&&n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(gl,{size:16,className:N?"text-primary":"text-muted-foreground"}),n.jsx("input",{type:"range",min:1,max:5,value:x,onChange:ae=>j(Number(ae.target.value)),disabled:_,className:"w-16 h-2 accent-primary cursor-pointer",title:`${x} concurrent agent${x>1?"s":""}`,"aria-label":"Set number of concurrent agents"}),n.jsxs("span",{className:"text-xs font-semibold min-w-[1.5rem] text-center",children:[x,"x"]})]}),R&&N&&n.jsxs(we,{variant:"secondary",className:"gap-1",children:[n.jsx(gl,{size:14}),x,"x"]}),B?.is_currently_running&&B.next_end&&n.jsxs(we,{variant:"default",className:"gap-1",children:[n.jsx(fl,{size:14}),"Running until ",Hb(B.next_end)]}),!B?.is_currently_running&&B?.next_start&&n.jsxs(we,{variant:"secondary",className:"gap-1",children:[n.jsx(fl,{size:14}),"Next: ",Lb(B.next_start)]}),T?n.jsx(J,{disabled:!0,variant:"outline",size:"sm",children:n.jsx(ze,{size:18,className:"animate-spin"})}):F?n.jsx(J,{onClick:L,disabled:_,variant:m?"secondary":"default",size:"sm",title:m?"Start Agent (YOLO Mode)":"Start Agent",children:_?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(hy,{size:18})}):n.jsxs("div",{className:"flex items-center gap-1.5",children:[c==="pausing"&&n.jsxs(we,{variant:"secondary",className:"gap-1 animate-pulse",children:[n.jsx(ze,{size:12,className:"animate-spin"}),"Pausing..."]}),c==="paused_graceful"&&n.jsxs(n.Fragment,{children:[n.jsx(we,{variant:"outline",className:"gap-1",children:"Paused"}),n.jsx(J,{onClick:()=>w.mutate(),disabled:_,variant:"default",size:"sm",title:"Resume agent",children:w.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(xy,{size:18})})]}),c==="running"&&n.jsx(J,{onClick:()=>H.mutate(),disabled:_,variant:"outline",size:"sm",title:"Pause agent (finish current work first)",children:H.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(gy,{size:18})}),n.jsx(J,{onClick:I,disabled:_,variant:"destructive",size:"sm",title:"Stop Agent (immediate)",children:E.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(kh,{size:18})})]}),n.jsx(J,{variant:"outline",size:"sm",onClick:()=>C(!0),title:"Manage schedules",children:n.jsx(fl,{size:18})})]}),n.jsx(Qb,{projectName:s,isOpen:M,onClose:()=>C(!1)})]})}const Vb=3e4;function Xb(s){const c=s.trim();return!(/^\[Tool:/.test(c)||/^\s*Input:\s*\{/.test(c)||/^\[(Done|Error)\]/.test(c)||/^Output:/.test(c)||/^[[{]/.test(c)||c.length<10||/^[A-Za-z]:\\/.test(c)||/^\/[a-z]/.test(c))}function Kb(s){for(let c=s.length-1;c>=0;c--)if(Xb(s[c].line))return s[c].line.trim();return null}function Zb({passing:s,total:c,percentage:d,isConnected:o,logs:m=[],agentStatus:x}){const p=f.useMemo(()=>Kb(m),[m]),[y,g]=f.useState(null),[j,z]=f.useState(!0),E=m.length>0?new Date(m[m.length-1].timestamp).getTime():0,H=f.useMemo(()=>p?x==="running"||x==="pausing"?!0:x==="paused"?Date.now()-E<Vb:!1:!1,[p,x,E]);f.useEffect(()=>{if(p!==y&&p){z(!1);const B=setTimeout(()=>{g(p),z(!0)},150);return()=>clearTimeout(B)}},[p,y]);const w=x==="running";return n.jsxs(Oe,{children:[n.jsxs(lr,{className:"flex-row items-center justify-between space-y-0 pb-0",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(Hu,{className:"text-xl uppercase tracking-wide",children:"Progress"}),n.jsx(we,{variant:o?"default":"destructive",className:"gap-1",children:o?n.jsxs(n.Fragment,{children:[n.jsx(xl,{size:14}),"Live"]}):n.jsxs(n.Fragment,{children:[n.jsx(hl,{size:14}),"Offline"]})})]}),n.jsxs("div",{className:"flex items-baseline gap-1",children:[n.jsx("span",{className:"font-mono text-lg font-bold text-primary",children:s}),n.jsx("span",{className:"text-sm text-muted-foreground",children:"/"}),n.jsx("span",{className:"font-mono text-lg font-bold",children:c})]})]}),n.jsxs(qe,{className:"pt-3 pb-3",children:[n.jsxs("div",{className:"flex items-center gap-4",children:[n.jsx("div",{className:"h-2.5 bg-muted rounded-full overflow-hidden flex-1",children:n.jsx("div",{className:"h-full bg-primary rounded-full transition-all duration-500 ease-out",style:{width:`${d}%`}})}),n.jsxs("span",{className:"text-sm font-bold tabular-nums text-muted-foreground w-12 text-right",children:[d.toFixed(1),"%"]})]}),n.jsx("div",{className:`
59
- transition-all duration-300 ease-out overflow-hidden
60
- ${H&&y?"opacity-100 max-h-10 mt-3":"opacity-0 max-h-0 mt-0"}
61
- `,children:n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs("div",{className:"relative shrink-0",children:[n.jsx(py,{size:16,className:"text-primary",strokeWidth:2.5}),w&&n.jsx(Sn,{size:8,className:"absolute -top-1 -right-1 text-yellow-500 animate-pulse"})]}),n.jsx("p",{className:"font-mono text-sm truncate text-muted-foreground transition-all duration-150 ease-out",style:{opacity:j?1:0,transform:j?"translateY(0)":"translateY(-4px)"},children:y?.replace(/:$/,"")})]})})]})]})}function Fb({onComplete:s}){const{data:c,isLoading:d,error:o}=cv(),{data:m,error:x}=uv(),p=m?.status==="healthy"&&!x,y=p&&c?.claude_cli&&c?.credentials,g=f.useCallback(()=>{y&&s()},[y,s]);return f.useEffect(()=>{g()},[g]),n.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center p-4",children:n.jsx(Oe,{className:"w-full max-w-lg",children:n.jsxs(qe,{className:"p-8",children:[n.jsx("h1",{className:"font-display text-3xl font-bold text-center mb-2",children:"Setup Wizard"}),n.jsx("p",{className:"text-center text-muted-foreground mb-8",children:"Let's make sure everything is ready to go"}),n.jsxs("div",{className:"space-y-4",children:[n.jsx(Gi,{label:"Backend Server",description:"FastAPI server is running",status:x?"error":p?"success":"loading"}),n.jsx(Gi,{label:"Claude CLI",description:"Claude Code CLI is installed",status:d?"loading":o?"error":c?.claude_cli?"success":"error",helpLink:"https://docs.anthropic.com/claude/claude-code",helpText:"Install Claude Code"}),n.jsx(Gi,{label:"Anthropic Credentials",description:"API credentials are configured",status:d?"loading":o?"error":c?.credentials?"success":"error",helpLink:"https://console.anthropic.com/account/keys",helpText:"Get API Key"}),n.jsx(Gi,{label:"Node.js",description:"Node.js is installed (for UI dev)",status:d?"loading":o?"error":c?.node?"success":"warning",helpLink:"https://nodejs.org",helpText:"Install Node.js",optional:!0})]}),y&&n.jsx(J,{onClick:s,className:"w-full mt-8 bg-green-500 hover:bg-green-600 text-white",children:"Continue to Dashboard"}),(x||o)&&n.jsxs(rt,{variant:"destructive",className:"mt-6",children:[n.jsx(Rv,{children:"Setup Error"}),n.jsx(ct,{children:x?"Cannot connect to the backend server. Make sure to run start_ui.py first.":"Failed to check setup status."})]})]})})})}function Gi({label:s,description:c,status:d,helpLink:o,helpText:m,optional:x}){return n.jsxs("div",{className:"flex items-start gap-4 p-4 bg-background border-2 border-border rounded-lg",children:[n.jsx("div",{className:"flex-shrink-0 mt-1",children:d==="success"?n.jsx($t,{size:24,className:"text-green-500"}):d==="error"?n.jsx(Km,{size:24,className:"text-destructive"}):d==="warning"?n.jsx(Km,{size:24,className:"text-yellow-500"}):n.jsx(ze,{size:24,className:"animate-spin text-primary"})}),n.jsxs("div",{className:"flex-1",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("span",{className:"font-display font-bold text-foreground",children:s}),x&&n.jsx("span",{className:"text-xs text-muted-foreground",children:"(optional)"})]}),n.jsx("p",{className:"text-sm text-muted-foreground",children:c}),(d==="error"||d==="warning")&&o&&n.jsxs("a",{href:o,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 mt-2 text-sm text-primary hover:underline",children:[m," ",n.jsx(Ou,{size:12})]})]})]})}function $b({projectName:s,onClose:c}){const d=f.useId(),[o,m]=f.useState(""),[x,p]=f.useState(""),[y,g]=f.useState(""),[j,z]=f.useState(""),[E,H]=f.useState([{id:`${d}-step-0`,value:""}]),[w,B]=f.useState(null),[M,C]=f.useState(1),_=I0(s),R=()=>{H([...E,{id:`${d}-step-${M}`,value:""}]),C(M+1)},T=F=>{H(E.filter(ae=>ae.id!==F))},N=(F,ae)=>{H(E.map(Y=>Y.id===F?{...Y,value:ae}:Y))},L=async F=>{F.preventDefault(),B(null);const ae=E.map(Y=>Y.value.trim()).filter(Y=>Y.length>0);try{await _.mutateAsync({category:o.trim(),name:x.trim(),description:y.trim(),steps:ae,priority:j?parseInt(j,10):void 0}),c()}catch(Y){B(Y instanceof Error?Y.message:"Failed to create feature")}},I=o.trim()&&x.trim()&&y.trim();return n.jsx(ea,{open:!0,onOpenChange:F=>!F&&c(),children:n.jsxs(ta,{className:"sm:max-w-2xl",children:[n.jsx(aa,{children:n.jsx(na,{children:"Add Feature"})}),n.jsxs("form",{onSubmit:L,className:"space-y-4",children:[w&&n.jsxs(rt,{variant:"destructive",children:[n.jsx(ua,{className:"h-4 w-4"}),n.jsxs(ct,{className:"flex items-center justify-between",children:[n.jsx("span",{children:w}),n.jsx(J,{type:"button",variant:"ghost",size:"icon-xs",onClick:()=>B(null),children:n.jsx(tt,{size:14})})]})]}),n.jsxs("div",{className:"flex gap-4",children:[n.jsxs("div",{className:"flex-1 space-y-2",children:[n.jsx(_e,{htmlFor:"category",children:"Category"}),n.jsx(it,{id:"category",type:"text",value:o,onChange:F=>m(F.target.value),placeholder:"e.g., Authentication, UI, API",required:!0})]}),n.jsxs("div",{className:"w-32 space-y-2",children:[n.jsx(_e,{htmlFor:"priority",children:"Priority"}),n.jsx(it,{id:"priority",type:"number",value:j,onChange:F=>z(F.target.value),placeholder:"Auto",min:"1"})]})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"name",children:"Feature Name"}),n.jsx(it,{id:"name",type:"text",value:x,onChange:F=>p(F.target.value),placeholder:"e.g., User login form",required:!0})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"description",children:"Description"}),n.jsx(vs,{id:"description",value:y,onChange:F=>g(F.target.value),placeholder:"Describe what this feature should do...",className:"min-h-[100px] resize-y",required:!0})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{children:"Test Steps (Optional)"}),n.jsx("div",{className:"space-y-2",children:E.map((F,ae)=>n.jsxs("div",{className:"flex gap-2 items-center",children:[n.jsx("span",{className:"w-10 h-10 flex-shrink-0 flex items-center justify-center font-mono font-semibold text-sm border rounded-md bg-muted text-muted-foreground",children:ae+1}),n.jsx(it,{type:"text",value:F.value,onChange:Y=>N(F.id,Y.target.value),placeholder:"Describe this step...",className:"flex-1"}),E.length>1&&n.jsx(J,{type:"button",variant:"ghost",size:"icon",onClick:()=>T(F.id),children:n.jsx(an,{size:18})})]},F.id))}),n.jsxs(J,{type:"button",variant:"ghost",size:"sm",onClick:R,children:[n.jsx(tn,{size:16}),"Add Step"]})]}),n.jsxs(Pt,{className:"pt-4 border-t",children:[n.jsx(J,{type:"button",variant:"outline",onClick:c,children:"Cancel"}),n.jsx(J,{type:"submit",disabled:!I||_.isPending,children:_.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsxs(n.Fragment,{children:[n.jsx(tn,{size:18}),"Create Feature"]})})]})]})]})})}function Jb({feature:s,projectName:c,onClose:d,onSaved:o}){const m=f.useId(),[x,p]=f.useState(s.category),[y,g]=f.useState(s.name),[j,z]=f.useState(s.description),[E,H]=f.useState(String(s.priority)),[w,B]=f.useState(()=>s.steps.length>0?s.steps.map((W,q)=>({id:`${m}-step-${q}`,value:W})):[{id:`${m}-step-0`,value:""}]),[M,C]=f.useState(null),[_,R]=f.useState(s.steps.length||1),T=tv(c),N=()=>{B([...w,{id:`${m}-step-${_}`,value:""}]),R(_+1)},L=W=>{B(w.filter(q=>q.id!==W))},I=(W,q)=>{B(w.map(P=>P.id===W?{...P,value:q}:P))},F=async W=>{W.preventDefault(),C(null);const q=w.map(P=>P.value.trim()).filter(P=>P.length>0);try{await T.mutateAsync({featureId:s.id,update:{category:x.trim(),name:y.trim(),description:j.trim(),steps:q,priority:parseInt(E,10)}}),o()}catch(P){C(P instanceof Error?P.message:"Failed to update feature")}},ae=x.trim()&&y.trim()&&j.trim(),Y=w.map(W=>W.value.trim()).filter(W=>W),le=x.trim()!==s.category||y.trim()!==s.name||j.trim()!==s.description||parseInt(E,10)!==s.priority||JSON.stringify(Y)!==JSON.stringify(s.steps);return n.jsx(ea,{open:!0,onOpenChange:W=>!W&&d(),children:n.jsxs(ta,{className:"sm:max-w-2xl",children:[n.jsx(aa,{children:n.jsx(na,{children:"Edit Feature"})}),n.jsxs("form",{onSubmit:F,className:"space-y-4",children:[M&&n.jsxs(rt,{variant:"destructive",children:[n.jsx(ua,{className:"h-4 w-4"}),n.jsxs(ct,{className:"flex items-center justify-between",children:[n.jsx("span",{children:M}),n.jsx(J,{type:"button",variant:"ghost",size:"icon-xs",onClick:()=>C(null),children:n.jsx(tt,{size:14})})]})]}),n.jsxs("div",{className:"flex gap-4",children:[n.jsxs("div",{className:"flex-1 space-y-2",children:[n.jsx(_e,{htmlFor:"category",children:"Category"}),n.jsx(it,{id:"category",type:"text",value:x,onChange:W=>p(W.target.value),placeholder:"e.g., Authentication, UI, API",required:!0})]}),n.jsxs("div",{className:"w-32 space-y-2",children:[n.jsx(_e,{htmlFor:"priority",children:"Priority"}),n.jsx(it,{id:"priority",type:"number",value:E,onChange:W=>H(W.target.value),min:"1",required:!0})]})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"name",children:"Feature Name"}),n.jsx(it,{id:"name",type:"text",value:y,onChange:W=>g(W.target.value),placeholder:"e.g., User login form",required:!0})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"description",children:"Description"}),n.jsx(vs,{id:"description",value:j,onChange:W=>z(W.target.value),placeholder:"Describe what this feature should do...",className:"min-h-[100px] resize-y",required:!0})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{children:"Test Steps"}),n.jsx("div",{className:"space-y-2",children:w.map((W,q)=>n.jsxs("div",{className:"flex gap-2 items-center",children:[n.jsx("span",{className:"w-10 h-10 flex-shrink-0 flex items-center justify-center font-mono font-semibold text-sm border rounded-md bg-muted text-muted-foreground",children:q+1}),n.jsx(it,{type:"text",value:W.value,onChange:P=>I(W.id,P.target.value),placeholder:"Describe this step...",className:"flex-1"}),w.length>1&&n.jsx(J,{type:"button",variant:"ghost",size:"icon",onClick:()=>L(W.id),children:n.jsx(an,{size:18})})]},W.id))}),n.jsxs(J,{type:"button",variant:"ghost",size:"sm",onClick:N,children:[n.jsx(tn,{size:16}),"Add Step"]})]}),n.jsxs(Pt,{className:"pt-4 border-t",children:[n.jsx(J,{type:"button",variant:"outline",onClick:d,children:"Cancel"}),n.jsx(J,{type:"submit",disabled:!ae||!le||T.isPending,children:T.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsxs(n.Fragment,{children:[n.jsx(yy,{size:18}),"Save Changes"]})})]})]})]})})}function Fh({className:s,size:c="default",...d}){return n.jsx(Jp,{"data-slot":"switch","data-size":c,className:Re("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 group/switch inline-flex shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",s),...d,children:n.jsx(Wp,{"data-slot":"switch-thumb",className:Re("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}function Wb({request:s,onSubmit:c,isLoading:d}){const[o,m]=f.useState(()=>{const g={};for(const j of s.fields)j.type==="boolean"?g[j.id]=!1:g[j.id]="";return g}),[x,p]=f.useState(null),y=async()=>{for(const g of s.fields)if(g.required){const j=o[g.id];if(j==null||j===""){p(`"${g.label}" is required`);return}}p(null),await c(o)};return n.jsxs(rt,{className:"border-amber-500 bg-amber-50 dark:bg-amber-950/20",children:[n.jsx(ar,{className:"h-5 w-5 text-amber-600"}),n.jsxs(ct,{className:"space-y-4",children:[n.jsxs("div",{children:[n.jsx("h4",{className:"font-semibold text-amber-700 dark:text-amber-400",children:"Agent needs your help"}),n.jsx("p",{className:"text-sm text-amber-600 dark:text-amber-300 mt-1",children:s.prompt})]}),n.jsx("div",{className:"space-y-3",children:s.fields.map(g=>n.jsxs("div",{className:"space-y-1.5",children:[n.jsxs(_e,{htmlFor:`human-input-${g.id}`,className:"text-sm font-medium text-foreground",children:[g.label,g.required&&n.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),g.type==="text"&&n.jsx(it,{id:`human-input-${g.id}`,value:o[g.id],onChange:j=>m(z=>({...z,[g.id]:j.target.value})),placeholder:g.placeholder||"",disabled:d}),g.type==="textarea"&&n.jsx(vs,{id:`human-input-${g.id}`,value:o[g.id],onChange:j=>m(z=>({...z,[g.id]:j.target.value})),placeholder:g.placeholder||"",disabled:d,rows:3}),g.type==="select"&&g.options&&n.jsx("div",{className:"space-y-1.5",children:g.options.map(j=>n.jsxs("label",{className:`flex items-center gap-2 p-2 rounded-md border cursor-pointer transition-colors
62
- ${o[g.id]===j.value?"border-primary bg-primary/10":"border-border hover:border-primary/50"}`,children:[n.jsx("input",{type:"radio",name:`human-input-${g.id}`,value:j.value,checked:o[g.id]===j.value,onChange:z=>m(E=>({...E,[g.id]:z.target.value})),disabled:d,className:"accent-primary"}),n.jsx("span",{className:"text-sm",children:j.label})]},j.value))}),g.type==="boolean"&&n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(Fh,{id:`human-input-${g.id}`,checked:o[g.id],onCheckedChange:j=>m(z=>({...z,[g.id]:j})),disabled:d}),n.jsx(_e,{htmlFor:`human-input-${g.id}`,className:"text-sm",children:o[g.id]?"Yes":"No"})]})]},g.id))}),x&&n.jsx("p",{className:"text-sm text-destructive",children:x}),n.jsx(J,{onClick:y,disabled:d,className:"w-full",children:d?n.jsx(ze,{size:16,className:"animate-spin"}):n.jsxs(n.Fragment,{children:[n.jsx(tr,{size:16}),"Submit Response"]})})]})]})}function Ib(s){const c=["bg-pink-500","bg-cyan-500","bg-green-500","bg-yellow-500","bg-orange-500","bg-purple-500","bg-blue-500"];let d=0;for(let o=0;o<s.length;o++)d=s.charCodeAt(o)+((d<<5)-d);return c[Math.abs(d)%c.length]}function Pb({feature:s,projectName:c,onClose:d}){const[o,m]=f.useState(null),[x,p]=f.useState(!1),[y,g]=f.useState(!1),j=ev(c),z=P0(c),{data:E}=qh(c),H=av(c),w=new Map;E&&[...E.pending,...E.in_progress,...E.done,...E.needs_human_input||[]].forEach(R=>{w.set(R.id,R)});const B=(s.dependencies||[]).map(R=>w.get(R)).filter(R=>R!==void 0),M=(s.blocking_dependencies||[]).map(R=>w.get(R)).filter(R=>R!==void 0),C=async()=>{m(null);try{await j.mutateAsync(s.id),d()}catch(R){m(R instanceof Error?R.message:"Failed to skip feature")}},_=async()=>{m(null);try{await z.mutateAsync(s.id),d()}catch(R){m(R instanceof Error?R.message:"Failed to delete feature")}};return y?n.jsx(Jb,{feature:s,projectName:c,onClose:()=>g(!1),onSaved:d}):n.jsx(ea,{open:!0,onOpenChange:R=>!R&&d(),children:n.jsxs(ta,{className:"sm:max-w-2xl p-0 gap-0",children:[n.jsxs(aa,{className:"p-6 pb-4",children:[n.jsx("div",{className:"flex items-start gap-3",children:n.jsx(we,{className:`${Ib(s.category)} text-white`,children:s.category})}),n.jsx(na,{className:"text-xl mt-2",children:s.name})]}),n.jsx(Eu,{}),n.jsxs("div",{className:"p-6 space-y-6 max-h-[60vh] overflow-y-auto",children:[o&&n.jsxs(rt,{variant:"destructive",children:[n.jsx(ua,{className:"h-4 w-4"}),n.jsxs(ct,{className:"flex items-center justify-between",children:[n.jsx("span",{children:o}),n.jsx(J,{variant:"ghost",size:"icon-xs",onClick:()=>m(null),children:n.jsx(tt,{size:14})})]})]}),n.jsxs("div",{className:"flex items-center gap-3 p-4 bg-muted rounded-lg",children:[s.passes?n.jsxs(n.Fragment,{children:[n.jsx($t,{size:24,className:"text-primary"}),n.jsx("span",{className:"font-semibold text-primary",children:"COMPLETE"})]}):s.needs_human_input?n.jsxs(n.Fragment,{children:[n.jsx(ar,{size:24,className:"text-amber-500"}),n.jsx("span",{className:"font-semibold text-amber-500",children:"NEEDS YOUR INPUT"})]}):n.jsxs(n.Fragment,{children:[n.jsx(dl,{size:24,className:"text-muted-foreground"}),n.jsx("span",{className:"font-semibold text-muted-foreground",children:"PENDING"})]}),n.jsxs("span",{className:"ml-auto font-mono text-sm text-muted-foreground",children:["Priority: #",s.priority]})]}),s.needs_human_input&&s.human_input_request&&n.jsx(Wb,{request:s.human_input_request,onSubmit:async R=>{m(null);try{await H.mutateAsync({featureId:s.id,fields:R}),d()}catch(T){m(T instanceof Error?T.message:"Failed to submit response")}},isLoading:H.isPending}),s.human_input_response&&!s.needs_human_input&&n.jsxs(rt,{className:"border-green-500 bg-green-50 dark:bg-green-950/20",children:[n.jsx($t,{className:"h-4 w-4 text-green-600"}),n.jsxs(ct,{children:[n.jsx("h4",{className:"font-semibold mb-1 text-green-700 dark:text-green-400",children:"Human Input Provided"}),n.jsxs("p",{className:"text-sm text-green-600 dark:text-green-300",children:["Response submitted",s.human_input_response.responded_at?` at ${new Date(s.human_input_response.responded_at).toLocaleString()}`:"","."]})]})]}),n.jsxs("div",{children:[n.jsx("h3",{className:"font-semibold mb-2 text-sm uppercase tracking-wide text-muted-foreground",children:"Description"}),n.jsx("p",{className:"text-foreground",children:s.description})]}),M.length>0&&n.jsxs(rt,{variant:"destructive",className:"border-orange-500 bg-orange-50 dark:bg-orange-950/20",children:[n.jsx(oa,{className:"h-4 w-4 text-orange-600"}),n.jsxs(ct,{children:[n.jsx("h4",{className:"font-semibold mb-1 text-orange-700 dark:text-orange-400",children:"Blocked By"}),n.jsx("p",{className:"text-sm text-orange-600 dark:text-orange-300 mb-2",children:"This feature cannot start until the following dependencies are complete:"}),n.jsx("ul",{className:"space-y-1",children:M.map(R=>n.jsxs("li",{className:"flex items-center gap-2 text-sm text-orange-600 dark:text-orange-300",children:[n.jsx(dl,{size:14}),n.jsxs("span",{className:"font-mono text-xs",children:["#",R.id]}),n.jsx("span",{children:R.name})]},R.id))})]})]}),B.length>0&&n.jsxs("div",{children:[n.jsxs("h3",{className:"font-semibold mb-2 text-sm uppercase tracking-wide text-muted-foreground flex items-center gap-2",children:[n.jsx(vy,{size:16}),"Depends On"]}),n.jsx("ul",{className:"space-y-1",children:B.map(R=>n.jsxs("li",{className:"flex items-center gap-2 p-2 bg-muted rounded-md text-sm",children:[R.passes?n.jsx($t,{size:16,className:"text-primary"}):n.jsx(dl,{size:16,className:"text-muted-foreground"}),n.jsxs("span",{className:"font-mono text-xs text-muted-foreground",children:["#",R.id]}),n.jsx("span",{className:R.passes?"text-primary":"",children:R.name})]},R.id))})]}),s.steps.length>0&&n.jsxs("div",{children:[n.jsx("h3",{className:"font-semibold mb-2 text-sm uppercase tracking-wide text-muted-foreground",children:"Test Steps"}),n.jsx("ol",{className:"list-decimal list-inside space-y-2",children:s.steps.map((R,T)=>n.jsx("li",{className:"p-3 bg-muted rounded-md text-sm",children:R},T))})]})]}),!s.passes&&n.jsxs(n.Fragment,{children:[n.jsx(Eu,{}),n.jsx(Pt,{className:"p-4 bg-muted/50",children:x?n.jsxs("div",{className:"w-full space-y-4",children:[n.jsx("p",{className:"font-medium text-center",children:"Are you sure you want to delete this feature?"}),n.jsxs("div",{className:"flex gap-3",children:[n.jsx(J,{variant:"destructive",onClick:_,disabled:z.isPending,className:"flex-1",children:z.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):"Yes, Delete"}),n.jsx(J,{variant:"outline",onClick:()=>p(!1),disabled:z.isPending,className:"flex-1",children:"Cancel"})]})]}):n.jsxs("div",{className:"flex gap-3 w-full",children:[n.jsxs(J,{onClick:()=>g(!0),disabled:j.isPending,className:"flex-1",children:[n.jsx(by,{size:18}),"Edit"]}),n.jsx(J,{variant:"secondary",onClick:C,disabled:j.isPending,className:"flex-1",children:j.isPending?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsxs(n.Fragment,{children:[n.jsx(jy,{size:18}),"Skip"]})}),n.jsx(J,{variant:"destructive",size:"icon",onClick:()=>p(!0),disabled:j.isPending,children:n.jsx(an,{size:18})})]})})]})]})})}const ej={background:"#09090b",foreground:"#fafafa",cursor:"#3b82f6",cursorAccent:"#09090b",selectionBackground:"rgba(59, 130, 246, 0.3)",selectionForeground:"#ffffff",black:"#09090b",red:"#ef4444",green:"#22c55e",yellow:"#eab308",blue:"#3b82f6",magenta:"#a855f7",cyan:"#06b6d4",white:"#fafafa",brightBlack:"#52525b",brightRed:"#f87171",brightGreen:"#4ade80",brightYellow:"#facc15",brightBlue:"#60a5fa",brightMagenta:"#c084fc",brightCyan:"#22d3ee",brightWhite:"#ffffff"},uh=1e3,oh=3e4;function tj({projectName:s,terminalId:c,isActive:d}){const o=f.useRef(null),m=f.useRef(null),x=f.useRef(null),p=f.useRef(null),y=f.useRef(null),g=f.useRef(0),j=f.useRef(!1),z=f.useRef(!1),E=f.useRef(!1),H=f.useRef(!1),w=f.useRef(null),B=f.useRef(null),M=f.useRef(null),C=f.useRef(d),[_,R]=f.useState(!1),[T,N]=f.useState(!1),[L,I]=f.useState(null);f.useEffect(()=>{E.current=T},[T]),f.useEffect(()=>{C.current=d},[d]);const F=f.useCallback(Z=>{const v=new TextEncoder().encode(Z);let D="";for(let ee=0;ee<v.length;ee++)D+=String.fromCharCode(v[ee]);return btoa(D)},[]),ae=f.useCallback(Z=>{try{const G=atob(Z),v=new Uint8Array(G.length);for(let ee=0;ee<G.length;ee++)v[ee]=G.charCodeAt(ee);return new TextDecoder().decode(v)}catch{return console.error("Failed to decode base64 data"),""}},[]),Y=f.useCallback(Z=>{p.current?.readyState===WebSocket.OPEN&&p.current.send(JSON.stringify(Z))},[]),le=f.useCallback((Z,G)=>{Y({type:"resize",cols:Z,rows:G})},[Y]),W=f.useCallback(()=>{if(x.current&&m.current)try{const Z=x.current.proposeDimensions();Z&&Z.cols&&Z.rows&&!isNaN(Z.cols)&&!isNaN(Z.rows)&&Z.cols>=1&&Z.rows>=1&&x.current.fit();const{cols:v,rows:D}=m.current;v>0&&D>0&&le(v,D)}catch{}},[le]),q=f.useCallback(()=>{if(!s||!c||!C.current||z.current||p.current?.readyState===WebSocket.CONNECTING||p.current?.readyState===WebSocket.OPEN)return;z.current=!0,y.current&&(clearTimeout(y.current),y.current=null);const Z=window.location.protocol==="https:"?"wss:":"ws:",G=window.location.host,v=`${Z}//${G}/api/terminal/ws/${encodeURIComponent(s)}/${encodeURIComponent(c)}`;try{const D=new WebSocket(v);p.current=D,D.onopen=()=>{if(z.current=!1,R(!0),N(!1),I(null),g.current=0,m.current){const{cols:ee,rows:te}=m.current;le(ee,te)}},D.onmessage=ee=>{try{const te=JSON.parse(ee.data);switch(te.type){case"output":{const ue=ae(te.data);ue&&m.current&&m.current.write(ue);break}case"exit":{N(!0),I(te.code),m.current&&(m.current.writeln(""),m.current.writeln(`\x1B[33m[Shell exited with code ${te.code}]\x1B[0m`),m.current.writeln("\x1B[90mPress any key to reconnect...\x1B[0m"));break}}}catch{console.error("Failed to parse terminal WebSocket message")}},D.onclose=()=>{z.current=!1,R(!1),p.current=null;const ee=C.current&&!E.current&&!H.current;if(H.current=!1,ee){const te=Math.min(uh*Math.pow(2,g.current),oh);g.current++,y.current=window.setTimeout(()=>{q()},te)}},D.onerror=()=>{D.close()}}catch{z.current=!1;const D=Math.min(uh*Math.pow(2,g.current),oh);g.current++,y.current=window.setTimeout(()=>{q()},D)}},[s,c,le,ae]);f.useEffect(()=>{w.current=q},[q]);const P=f.useCallback(()=>{if(!o.current||j.current)return;const Z=new Vy({theme:ej,fontFamily:"JetBrains Mono, Consolas, Monaco, monospace",fontSize:14,cursorBlink:!0,cursorStyle:"block",allowProposedApi:!0,scrollback:1e4}),G=new Xy;Z.loadAddon(G),Z.open(o.current),m.current=Z,x.current=G,j.current=!0,Z.onData(v=>{if(E.current){N(!1),I(null),w.current?.();return}const D={type:"input",data:F(v)};Y(D)}),Z.onResize(({cols:v,rows:D})=>{le(v,D)})},[F,Y,le]);return f.useEffect(()=>{if(!d)return;const Z=()=>{W()};return window.addEventListener("resize",Z),()=>{window.removeEventListener("resize",Z)}},[d,W]),f.useEffect(()=>{if(!d){y.current&&(clearTimeout(y.current),y.current=null);return}j.current||P();let Z,G;const v=()=>{Z=requestAnimationFrame(()=>{G=requestAnimationFrame(()=>{(!p.current||p.current.readyState!==WebSocket.OPEN)&&w.current?.()})})},D=window.setTimeout(v,50);return()=>{clearTimeout(D),cancelAnimationFrame(Z),cancelAnimationFrame(G)}},[d,P]),f.useEffect(()=>{if(d&&m.current){let Z,G;const v=()=>{Z=requestAnimationFrame(()=>{G=requestAnimationFrame(()=>{m.current&&x.current&&(W(),m.current.refresh(0,m.current.rows-1),m.current.focus())})})},D=window.setTimeout(v,16);return()=>{clearTimeout(D),cancelAnimationFrame(Z),cancelAnimationFrame(G)}}},[d,W]),f.useEffect(()=>()=>{y.current&&clearTimeout(y.current),p.current&&p.current.close(),m.current&&m.current.dispose(),j.current=!1},[]),f.useEffect(()=>{if(d&&j.current){if(B.current===null&&M.current===null){B.current=s,M.current=c;return}if(B.current===s&&M.current===c)return;B.current=s,M.current=c,m.current&&(m.current.clear(),m.current.write("\x1B[H")),H.current=!0,p.current&&(p.current.close(),p.current=null),z.current=!1,N(!1),I(null),g.current=0,w.current?.()}},[s,c,d]),n.jsxs("div",{className:"relative h-full w-full bg-zinc-950",children:[n.jsxs("div",{className:"absolute top-2 right-2 z-10 flex items-center gap-2",children:[n.jsx("div",{className:`w-2 h-2 rounded-full ${_?"bg-green-500":"bg-destructive"}`,title:_?"Connected":"Disconnected"}),!_&&!T&&n.jsx("span",{className:"text-xs font-mono text-muted-foreground",children:"Connecting..."}),T&&L!==null&&n.jsxs("span",{className:"text-xs font-mono text-yellow-500",children:["Exit: ",L]})]}),n.jsx("div",{ref:o,className:"h-full w-full p-2",style:{minHeight:"100px"},onClick:()=>{m.current?.focus()}})]})}function aj({terminals:s,activeTerminalId:c,onSelect:d,onCreate:o,onRename:m,onClose:x}){const[p,y]=f.useState(null),[g,j]=f.useState(""),[z,E]=f.useState({visible:!1,x:0,y:0,terminalId:null}),H=f.useRef(null),w=f.useRef(null);f.useEffect(()=>{p&&H.current&&(H.current.focus(),H.current.select())},[p]),f.useEffect(()=>{const F=ae=>{w.current&&!w.current.contains(ae.target)&&E(Y=>({...Y,visible:!1}))};if(z.visible)return document.addEventListener("mousedown",F),()=>document.removeEventListener("mousedown",F)},[z.visible]);const B=f.useCallback(F=>{y(F.id),j(F.name),E(ae=>({...ae,visible:!1}))},[]),M=f.useCallback(()=>{p&&g.trim()&&m(p,g.trim()),y(null),j("")},[p,g,m]),C=f.useCallback(()=>{y(null),j("")},[]),_=f.useCallback(F=>{ys(F,!1)?(F.preventDefault(),M()):F.key==="Escape"&&(F.preventDefault(),C())},[M,C]),R=f.useCallback(F=>{B(F)},[B]),T=f.useCallback((F,ae)=>{F.preventDefault(),E({visible:!0,x:F.clientX,y:F.clientY,terminalId:ae})},[]),N=f.useCallback(()=>{if(z.terminalId){const F=s.find(ae=>ae.id===z.terminalId);F&&B(F)}},[z.terminalId,s,B]),L=f.useCallback(()=>{z.terminalId&&x(z.terminalId),E(F=>({...F,visible:!1}))},[z.terminalId,x]),I=f.useCallback((F,ae)=>{F.stopPropagation(),x(ae)},[x]);return n.jsxs("div",{className:"flex items-center gap-1 px-2 py-1 bg-zinc-900 border-b border-border overflow-x-auto",children:[s.map(F=>n.jsxs("div",{className:`
63
- group flex items-center gap-1 px-3 py-1 rounded cursor-pointer
64
- transition-colors duration-100 select-none min-w-0
65
- ${c===F.id?"bg-primary text-primary-foreground":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"}
66
- `,onClick:()=>d(F.id),onDoubleClick:()=>R(F),onContextMenu:ae=>T(ae,F.id),children:[p===F.id?n.jsx(it,{ref:H,type:"text",value:g,onChange:ae=>j(ae.target.value),onBlur:M,onKeyDown:_,className:"h-6 px-1 py-0 text-sm font-mono w-24",onClick:ae=>ae.stopPropagation()}):n.jsx("span",{className:"text-sm font-mono truncate max-w-[120px]",children:F.name}),s.length>1&&n.jsx("button",{onClick:ae=>I(ae,F.id),className:`
67
- p-0.5 rounded opacity-0 group-hover:opacity-100 transition-opacity
68
- ${c===F.id?"hover:bg-black/20":"hover:bg-white/20"}
69
- `,title:"Close terminal",children:n.jsx(tt,{className:"w-3 h-3"})})]},F.id)),n.jsx(J,{variant:"ghost",size:"icon",onClick:o,className:"h-8 w-8 bg-zinc-800 text-zinc-300 hover:bg-zinc-700",title:"New terminal",children:n.jsx(tn,{className:"w-4 h-4"})}),z.visible&&n.jsxs("div",{ref:w,className:"fixed z-50 bg-popover border border-border rounded-md py-1 min-w-[120px] shadow-md",style:{left:z.x,top:z.y},children:[n.jsx("button",{onClick:N,className:"w-full px-3 py-1.5 text-left text-sm font-mono hover:bg-accent transition-colors",children:"Rename"}),s.length>1&&n.jsx("button",{onClick:L,className:"w-full px-3 py-1.5 text-left text-sm font-mono text-destructive hover:bg-destructive hover:text-destructive-foreground transition-colors",children:"Close"})]})]})}function nj({screenshots:s,onSubscribe:c,onUnsubscribe:d}){const[o,m]=f.useState(null);f.useEffect(()=>(c(),()=>d()),[c,d]);const x=Array.from(s.values());if(x.length===0)return n.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground gap-2",children:[n.jsx(Oh,{size:24}),n.jsx("span",{className:"text-sm",children:"No active browser sessions"}),n.jsx("span",{className:"text-xs",children:"Screenshots will appear when agents open browsers"})]});const p=o?s.get(o):null;return n.jsxs("div",{className:"h-full overflow-auto p-3",children:[p&&n.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70",onClick:()=>m(null),children:n.jsxs("div",{className:"relative max-w-[90vw] max-h-[90vh] bg-card border-2 border-border rounded-lg overflow-hidden",onClick:y=>y.stopPropagation(),children:[n.jsxs("div",{className:"flex items-center justify-between px-3 py-2 bg-muted border-b border-border",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[p.agentType==="coding"?n.jsx($i,{size:14,className:"text-blue-500"}):n.jsx(Ji,{size:14,className:"text-purple-500"}),n.jsx("span",{className:"font-mono text-sm font-bold",children:ol[p.agentIndex%ol.length]}),n.jsx(we,{variant:"outline",className:"text-[10px] h-4",children:p.agentType}),n.jsx("span",{className:"text-xs text-muted-foreground truncate",children:p.featureName})]}),n.jsx("button",{onClick:()=>m(null),className:"p-1 hover:bg-accent rounded transition-colors cursor-pointer",children:n.jsx(tt,{size:16})})]}),n.jsx("img",{src:p.imageDataUrl,alt:`Browser view - ${p.featureName}`,className:"max-w-full max-h-[calc(90vh-3rem)] object-contain"})]})}),n.jsx("div",{className:"grid gap-3 grid-cols-1 md:grid-cols-2 xl:grid-cols-3",children:x.map(y=>n.jsxs("div",{className:"border-2 border-border rounded-lg overflow-hidden bg-card hover:border-foreground/30 transition-colors",children:[n.jsxs("div",{className:"flex items-center justify-between px-2.5 py-1.5 bg-muted border-b border-border",children:[n.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[y.agentType==="coding"?n.jsx($i,{size:12,className:"text-blue-500 shrink-0"}):n.jsx(Ji,{size:12,className:"text-purple-500 shrink-0"}),n.jsx("span",{className:"font-mono text-xs font-bold",children:ol[y.agentIndex%ol.length]}),n.jsx(we,{variant:"outline",className:"text-[9px] h-3.5 px-1",children:y.agentType}),n.jsx("span",{className:"text-[11px] text-muted-foreground truncate",children:y.featureName})]}),n.jsx("button",{onClick:()=>m(y.sessionName),className:"p-0.5 hover:bg-accent rounded transition-colors cursor-pointer shrink-0",title:"Expand",children:n.jsx(Rh,{size:12,className:"text-muted-foreground"})})]}),n.jsx("div",{className:"cursor-pointer overflow-hidden",onClick:()=>m(y.sessionName),children:n.jsx("img",{src:y.imageDataUrl,alt:`Browser - ${y.featureName}`,className:"w-full h-auto max-h-[280px] object-cover object-top"})}),n.jsx("div",{className:"px-2.5 py-1 bg-muted border-t border-border",children:n.jsx("span",{className:"text-[10px] text-muted-foreground font-mono",children:new Date(y.timestamp).toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})})})]},y.sessionName))})]})}const dh=150,fh=600,lj=288,mh="debug-panel-height",hh="debug-panel-tab";function sj({logs:s,devLogs:c,isOpen:d,onToggle:o,onClear:m,onClearDevLogs:x,onHeightChange:p,projectName:y,activeTab:g,onTabChange:j,browserScreenshots:z,onSubscribeBrowserView:E,onUnsubscribeBrowserView:H}){const w=f.useRef(null),B=f.useRef(null),[M,C]=f.useState(!0),[_,R]=f.useState(!0),[T,N]=f.useState(!1),[L,I]=f.useState(()=>{const ne=localStorage.getItem(mh);return ne?Math.min(Math.max(parseInt(ne,10),dh),fh):lj}),[F,ae]=f.useState(()=>localStorage.getItem(hh)||"agent"),[Y,le]=f.useState([]),[W,q]=f.useState(null),[P,Z]=f.useState(!1),G=g??F,v=ne=>{ae(ne),localStorage.setItem(hh,ne),j?.(ne)},D=f.useCallback(async()=>{if(y){Z(!0);try{const ne=await L0(y);le(ne),ne.length>0&&(!W||!ne.find(oe=>oe.id===W))&&q(ne[0].id)}catch(ne){console.error("Failed to fetch terminals:",ne)}finally{Z(!1)}}},[y,W]),ee=f.useCallback(async()=>{if(y)try{const ne=await H0(y);le(oe=>[...oe,ne]),q(ne.id)}catch(ne){console.error("Failed to create terminal:",ne)}},[y]),te=f.useCallback(async(ne,oe)=>{if(y)try{const je=await q0(y,ne,oe);le(De=>De.map(xe=>xe.id===ne?je:xe))}catch(je){console.error("Failed to rename terminal:",je)}},[y]),ue=f.useCallback(async ne=>{if(!(!y||Y.length<=1))try{if(await G0(y,ne),le(oe=>oe.filter(je=>je.id!==ne)),W===ne){const oe=Y.filter(je=>je.id!==ne);oe.length>0&&q(oe[0].id)}}catch(oe){console.error("Failed to close terminal:",oe)}},[y,Y,W]);f.useEffect(()=>{y?D():(le([]),q(null))},[y]),f.useEffect(()=>{M&&w.current&&d&&G==="agent"&&(w.current.scrollTop=w.current.scrollHeight)},[s,M,d,G]),f.useEffect(()=>{_&&B.current&&d&&G==="devserver"&&(B.current.scrollTop=B.current.scrollHeight)},[c,_,d,G]),f.useEffect(()=>{p&&d&&p(L)},[L,d,p]);const se=f.useCallback(ne=>{const oe=window.innerHeight-ne.clientY,je=Math.min(Math.max(oe,dh),fh);I(je)},[]),me=f.useCallback(()=>{N(!1),localStorage.setItem(mh,L.toString())},[L]);f.useEffect(()=>(T&&(document.addEventListener("mousemove",se),document.addEventListener("mouseup",me),document.body.style.cursor="ns-resize",document.body.style.userSelect="none"),()=>{document.removeEventListener("mousemove",se),document.removeEventListener("mouseup",me),document.body.style.cursor="",document.body.style.userSelect=""}),[T,se,me]);const X=ne=>{ne.preventDefault(),ne.stopPropagation(),N(!0)},fe=ne=>{const oe=ne.currentTarget,je=oe.scrollHeight-oe.scrollTop<=oe.clientHeight+50;C(je)},he=ne=>{const oe=ne.currentTarget,je=oe.scrollHeight-oe.scrollTop<=oe.clientHeight+50;R(je)},Xe=()=>{G==="agent"?m():G==="devserver"&&x()},yt=()=>G==="agent"?s.length:G==="devserver"?c.length:0,vt=()=>G==="agent"?!M:G==="devserver"?!_:!1,ut=ne=>{const oe=ne.toLowerCase();return oe.includes("error")||oe.includes("exception")||oe.includes("traceback")?"error":oe.includes("warn")||oe.includes("warning")?"warn":oe.includes("debug")?"debug":"info"},xt=ne=>{switch(ne){case"error":return"text-red-500";case"warn":return"text-yellow-500";case"debug":return"text-blue-400";default:return"text-foreground"}},Tt=ne=>{try{return new Date(ne).toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return""}};return n.jsxs("div",{className:`fixed bottom-0 left-0 right-0 z-40 ${T?"":"transition-all duration-200"}`,style:{height:d?L:40},children:[d&&n.jsx("div",{className:"absolute top-0 left-0 right-0 h-2 cursor-ns-resize group flex items-center justify-center -translate-y-1/2 z-50",onMouseDown:X,children:n.jsx("div",{className:"w-16 h-1.5 bg-border rounded-full group-hover:bg-muted-foreground transition-colors flex items-center justify-center",children:n.jsx(Ny,{size:12,className:"text-muted-foreground group-hover:text-foreground"})})}),n.jsxs("div",{className:"flex items-center justify-between h-10 px-4 bg-muted border-t border-border",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs("button",{onClick:o,className:"flex items-center gap-2 hover:bg-accent px-2 py-1 rounded transition-colors cursor-pointer",children:[n.jsx(Tu,{size:16,className:"text-green-500"}),n.jsx("span",{className:"font-mono text-sm text-foreground font-bold",children:"Debug"}),n.jsx(we,{variant:"secondary",className:"text-xs font-mono",title:"Toggle debug panel",children:"D"})]}),d&&n.jsxs("div",{className:"flex items-center gap-1 ml-4",children:[n.jsxs(J,{variant:G==="agent"?"secondary":"ghost",size:"sm",onClick:ne=>{ne.stopPropagation(),v("agent")},className:"h-7 text-xs font-mono gap-1.5",children:[n.jsx(Sy,{size:12}),"Agent",s.length>0&&n.jsx(we,{variant:"default",className:"h-4 px-1.5 text-[10px]",children:s.length})]}),n.jsxs(J,{variant:G==="devserver"?"secondary":"ghost",size:"sm",onClick:ne=>{ne.stopPropagation(),v("devserver")},className:"h-7 text-xs font-mono gap-1.5",children:[n.jsx(Cy,{size:12}),"Dev Server",c.length>0&&n.jsx(we,{variant:"default",className:"h-4 px-1.5 text-[10px]",children:c.length})]}),n.jsxs(J,{variant:G==="terminal"?"secondary":"ghost",size:"sm",onClick:ne=>{ne.stopPropagation(),v("terminal")},className:"h-7 text-xs font-mono gap-1.5",children:[n.jsx(Tu,{size:12}),"Terminal",n.jsx(we,{variant:"outline",className:"h-4 px-1.5 text-[10px]",title:"Toggle terminal",children:"T"})]}),n.jsxs(J,{variant:G==="browsers"?"secondary":"ghost",size:"sm",onClick:ne=>{ne.stopPropagation(),v("browsers")},className:"h-7 text-xs font-mono gap-1.5",children:[n.jsx(Oh,{size:12}),"Browsers",z&&z.size>0&&n.jsx(we,{variant:"default",className:"h-4 px-1.5 text-[10px]",children:z.size})]})]}),d&&G!=="terminal"&&G!=="browsers"&&n.jsxs(n.Fragment,{children:[yt()>0&&n.jsx(we,{variant:"secondary",className:"ml-2 font-mono",children:yt()}),vt()&&n.jsx(we,{variant:"default",className:"bg-yellow-500 text-yellow-950",children:"Paused"})]})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[d&&G!=="terminal"&&G!=="browsers"&&n.jsx(J,{variant:"ghost",size:"icon",onClick:ne=>{ne.stopPropagation(),Xe()},className:"h-7 w-7",title:"Clear logs",children:n.jsx(an,{size:14,className:"text-muted-foreground"})}),n.jsx("div",{className:"p-1",children:d?n.jsx(gs,{size:16,className:"text-muted-foreground"}):n.jsx(Wi,{size:16,className:"text-muted-foreground"})})]})]}),d&&n.jsxs("div",{className:"h-[calc(100%-2.5rem)] bg-card",children:[G==="agent"&&n.jsx("div",{ref:w,onScroll:fe,className:"h-full overflow-y-auto p-2 font-mono text-sm",children:s.length===0?n.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:"No logs yet. Start the agent to see output."}):n.jsx("div",{className:"space-y-0.5",children:s.map((ne,oe)=>{const je=ut(ne.line),De=xt(je),xe=Tt(ne.timestamp);return n.jsxs("div",{className:"flex gap-2 hover:bg-muted px-1 py-0.5 rounded",children:[n.jsx("span",{className:"text-muted-foreground select-none shrink-0",children:xe}),n.jsx("span",{className:`${De} whitespace-pre-wrap break-all`,children:ne.line})]},`${ne.timestamp}-${oe}`)})})}),G==="devserver"&&n.jsx("div",{ref:B,onScroll:he,className:"h-full overflow-y-auto p-2 font-mono text-sm",children:c.length===0?n.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:"No dev server logs yet."}):n.jsx("div",{className:"space-y-0.5",children:c.map((ne,oe)=>{const je=ut(ne.line),De=xt(je),xe=Tt(ne.timestamp);return n.jsxs("div",{className:"flex gap-2 hover:bg-muted px-1 py-0.5 rounded",children:[n.jsx("span",{className:"text-muted-foreground select-none shrink-0",children:xe}),n.jsx("span",{className:`${De} whitespace-pre-wrap break-all`,children:ne.line})]},`${ne.timestamp}-${oe}`)})})}),G==="terminal"&&n.jsxs("div",{className:"h-full flex flex-col",children:[Y.length>0&&n.jsx(aj,{terminals:Y,activeTerminalId:W,onSelect:q,onCreate:ee,onRename:te,onClose:ue}),n.jsx("div",{className:"flex-1 min-h-0 relative",children:P?n.jsx("div",{className:"h-full flex items-center justify-center text-muted-foreground font-mono text-sm",children:"Loading terminals..."}):Y.length===0?n.jsx("div",{className:"h-full flex items-center justify-center text-muted-foreground font-mono text-sm",children:"No terminal available"}):Y.map(ne=>{const oe=ne.id===W;return n.jsx("div",{className:"absolute inset-0",style:{zIndex:oe?10:1,transform:oe?"none":"translateX(-200%)",pointerEvents:oe?"auto":"none"},children:n.jsx(tj,{projectName:y,terminalId:ne.id,isActive:G==="terminal"&&oe})},ne.id)})})]}),G==="browsers"&&z&&E&&H&&n.jsx(nj,{screenshots:z,onSubscribe:E,onUnsubscribe:H})]})]})}function ij(s){switch(s){case"idle":return"Standing by...";case"thinking":return"Pondering...";case"working":return"Coding away...";case"testing":return"Checking work...";case"success":return"Nailed it!";case"error":return"Trying plan B...";case"struggling":return"Being persistent...";default:return"Busy..."}}function rj(s){switch(s){case"success":return"text-primary";case"error":return"text-yellow-600";case"struggling":return"text-orange-500";case"working":case"testing":return"text-primary";case"thinking":return"text-yellow-600";default:return"text-muted-foreground"}}function $h(s){return s==="testing"?{label:"TEST",className:"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300",icon:Ji}:{label:"CODE",className:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",icon:$i}}function cj({agent:s,onShowLogs:c,browserScreenshot:d}){const o=["thinking","working","testing"].includes(s.state),m=s.logs&&s.logs.length>0,x=$h(s.agentType||"coding"),p=x.icon,[y,g]=f.useState(!1);return n.jsxs(n.Fragment,{children:[y&&d&&_u.createPortal(n.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70",onClick:()=>g(!1),children:n.jsxs("div",{className:"relative max-w-[90vw] max-h-[90vh] bg-card border-2 border-border rounded-lg overflow-hidden",onClick:j=>j.stopPropagation(),children:[n.jsxs("div",{className:"flex items-center justify-between px-3 py-2 bg-muted border-b border-border",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(p,{size:14,className:s.agentType==="testing"?"text-purple-500":"text-blue-500"}),n.jsx("span",{className:"font-mono text-sm font-bold",children:ol[s.agentIndex%ol.length]}),n.jsx(we,{variant:"outline",className:"text-[10px] h-4",children:s.agentType||"coding"}),n.jsx("span",{className:"text-xs text-muted-foreground truncate",children:s.featureName})]}),n.jsx("button",{onClick:()=>g(!1),className:"p-1 hover:bg-accent rounded transition-colors cursor-pointer",children:n.jsx(tt,{size:16})})]}),n.jsx("img",{src:d.imageDataUrl,alt:`Browser view - ${s.featureName}`,className:"max-w-full max-h-[calc(90vh-3rem)] object-contain"})]})}),document.body),n.jsx(Oe,{className:`min-w-[180px] ${d?"max-w-[280px]":"max-w-[220px]"} py-3 ${o?"animate-pulse":""}`,children:n.jsxs(qe,{className:"p-3 space-y-2",children:[n.jsx("div",{className:"flex justify-end",children:n.jsxs(we,{variant:"outline",className:`text-[10px] ${x.className}`,children:[n.jsx(p,{size:10}),x.label]})}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(yl,{name:s.agentName,state:s.state,size:"sm"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"font-semibold text-sm truncate",children:s.agentName}),n.jsx("div",{className:`text-xs ${rj(s.state)}`,children:ij(s.state)})]}),m&&c&&n.jsx(J,{variant:"ghost",size:"icon-xs",onClick:()=>c(s.agentIndex),title:`View logs (${s.logs?.length||0} entries)`,children:n.jsx(wy,{size:14,className:"text-muted-foreground"})})]}),n.jsx("div",{children:s.featureIds&&s.featureIds.length>1?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"text-xs text-muted-foreground mb-0.5",children:["Batch: ",s.featureIds.map(j=>`#${j}`).join(", ")]}),n.jsxs("div",{className:"text-sm font-bold truncate",children:["Active: Feature #",s.featureId]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"text-xs text-muted-foreground mb-0.5",children:["Feature #",s.featureId]}),n.jsx("div",{className:"text-sm font-medium truncate",title:s.featureName,children:s.featureName})]})}),d&&n.jsxs("div",{className:"pt-1 relative group",children:[n.jsx("div",{className:"cursor-pointer overflow-hidden rounded border border-border/50",onClick:()=>g(!0),children:n.jsx("img",{src:d.imageDataUrl,alt:"Browser view",className:"w-full h-auto max-h-[120px] object-cover object-top"})}),n.jsx("button",{onClick:()=>g(!0),className:"absolute top-2.5 right-1.5 p-0.5 bg-black/50 hover:bg-black/70 rounded transition-opacity opacity-0 group-hover:opacity-100 cursor-pointer",title:"Expand screenshot",children:n.jsx(Rh,{size:12,className:"text-white"})})]}),s.thought&&n.jsx("div",{className:"pt-2 border-t border-border/50",children:n.jsxs("div",{className:"flex items-start gap-1.5",children:[n.jsx(Ru,{size:14,className:"text-primary shrink-0 mt-0.5"}),n.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2 italic",title:s.thought,children:s.thought})]})})]})})]})}function uj({agent:s,logs:c,onClose:d}){const[o,m]=f.useState(!1),x=$h(s.agentType||"coding"),p=x.icon,y=async()=>{const j=c.map(z=>`[${z.timestamp}] ${z.line}`).join(`
70
- `);await navigator.clipboard.writeText(j),m(!0),setTimeout(()=>m(!1),2e3)},g=j=>{switch(j){case"error":return"text-destructive";case"state_change":return"text-primary";default:return"text-foreground"}};return _u.createPortal(n.jsx("div",{className:"fixed inset-0 flex items-center justify-center p-4 bg-black/50",style:{zIndex:9999},onClick:j=>{j.target===j.currentTarget&&d()},children:n.jsxs(Oe,{className:"w-full max-w-4xl max-h-[80vh] flex flex-col py-0",children:[n.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(yl,{name:s.agentName,state:s.state,size:"sm"}),n.jsxs("div",{children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs("h2",{className:"font-semibold text-lg",children:[s.agentName," Logs"]}),n.jsxs(we,{variant:"outline",className:`text-[10px] ${x.className}`,children:[n.jsx(p,{size:10}),x.label]})]}),n.jsx("p",{className:"text-sm text-muted-foreground",children:s.featureIds&&s.featureIds.length>1?`Batch: ${s.featureIds.map(j=>`#${j}`).join(", ")}`:`Feature #${s.featureId}: ${s.featureName}`})]})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs(J,{variant:"outline",size:"sm",onClick:y,children:[o?n.jsx(ca,{size:14}):n.jsx(zy,{size:14}),o?"Copied!":"Copy"]}),n.jsx(J,{variant:"ghost",size:"icon-sm",onClick:d,children:n.jsx(tt,{size:20})})]})]}),n.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 bg-muted/50",children:n.jsx("div",{className:"font-mono text-xs space-y-1",children:c.length===0?n.jsx("p",{className:"text-muted-foreground italic",children:"No logs available"}):c.map((j,z)=>n.jsxs("div",{className:`${g(j.type)} whitespace-pre-wrap break-all`,children:[n.jsxs("span",{className:"text-muted-foreground",children:["[",new Date(j.timestamp).toLocaleTimeString(),"]"]})," ",j.line]},z))})}),n.jsxs("div",{className:"p-3 border-t text-xs text-muted-foreground",children:[c.length," log entries"]})]})}),document.body)}function oj(s){const c=new Date(s),o=new Date().getTime()-c.getTime(),m=Math.floor(o/1e3);return m<5?"just now":m<60?`${m}s ago`:m<3600?`${Math.floor(m/60)}m ago`:c.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function dj({activities:s,maxItems:c=5,showHeader:d=!0}){const o=s.slice(0,c);return o.length===0?null:n.jsxs("div",{children:[d&&n.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[n.jsx(Uh,{size:14,className:"text-muted-foreground"}),n.jsx("span",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wide",children:"Recent Activity"})]}),n.jsx("div",{className:"space-y-2",children:o.map(m=>n.jsx(Oe,{className:"py-1.5",children:n.jsxs(qe,{className:"p-2 flex items-start gap-2",children:[n.jsx(yl,{name:m.agentName,state:"working",size:"sm"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("span",{className:"text-xs font-semibold",style:{color:fj(m.agentName)},children:m.agentName}),n.jsxs("span",{className:"text-[10px] text-muted-foreground",children:["#",m.featureId]}),n.jsx("span",{className:"text-[10px] text-muted-foreground ml-auto",children:oj(m.timestamp)})]}),n.jsx("p",{className:"text-xs text-muted-foreground truncate",title:m.thought,children:m.thought})]})]})},`${m.featureId}-${m.timestamp}-${m.thought.slice(0,20)}`))})]})}function fj(s){return{Spark:"#3B82F6",Fizz:"#F97316",Octo:"#8B5CF6",Hoot:"#22C55E",Buzz:"#EAB308",Pixel:"#EC4899",Byte:"#06B6D4",Nova:"#F43F5E",Chip:"#84CC16",Bolt:"#FBBF24",Dash:"#14B8A6",Zap:"#A855F7",Gizmo:"#64748B",Turbo:"#EF4444",Blip:"#10B981",Neon:"#D946EF",Widget:"#6366F1",Zippy:"#F59E0B",Quirk:"#0EA5E9",Flux:"#7C3AED"}[s]||"#6B7280"}const mj={sm:{svg:32,font:"text-xs"},md:{svg:48,font:"text-sm"},lg:{svg:64,font:"text-base"}},nt={primary:"#7C3AED",secondary:"#A78BFA",accent:"#EDE9FE",baton:"#FBBF24",gold:"#F59E0B"};function hj({size:s,state:c}){const d=c==="spawning"?"animate-conducting":c==="scheduling"?"animate-baton-tap":"";return n.jsxs("svg",{width:s,height:s,viewBox:"0 0 64 64",fill:"none",children:[n.jsx("rect",{x:"22",y:"54",width:"20",height:"6",rx:"2",fill:nt.primary,opacity:"0.3"}),n.jsx("rect",{x:"18",y:"28",width:"28",height:"26",rx:"4",fill:nt.primary}),n.jsx("rect",{x:"26",y:"32",width:"12",height:"18",fill:nt.accent}),n.jsx("rect",{x:"30",y:"32",width:"4",height:"18",fill:nt.secondary}),n.jsx("path",{d:"M27,30 L32,33 L37,30 L32,32 Z",fill:nt.gold}),n.jsx("rect",{x:"16",y:"6",width:"32",height:"24",rx:"4",fill:nt.secondary}),n.jsx("rect",{x:"14",y:"2",width:"36",height:"8",rx:"2",fill:nt.primary}),n.jsx("rect",{x:"20",y:"0",width:"24",height:"4",rx:"2",fill:nt.primary}),n.jsx("circle",{cx:"32",cy:"2",r:"3",fill:nt.gold}),n.jsx("circle",{cx:"24",cy:"16",r:"4",fill:"white"}),n.jsx("circle",{cx:"40",cy:"16",r:"4",fill:"white"}),n.jsx("circle",{cx:"25",cy:"16",r:"2",fill:nt.primary}),n.jsx("circle",{cx:"41",cy:"16",r:"2",fill:nt.primary}),n.jsx("path",{d:"M26,24 Q32,28 38,24",stroke:"white",strokeWidth:"2",fill:"none",strokeLinecap:"round"}),n.jsx("rect",{x:"8",y:"32",width:"10",height:"4",rx:"2",fill:nt.primary}),n.jsx("rect",{x:"46",y:"28",width:"10",height:"4",rx:"2",fill:nt.primary,className:d,style:{transformOrigin:"46px 30px"}}),n.jsx("circle",{cx:"56",cy:"30",r:"4",fill:nt.secondary,className:d,style:{transformOrigin:"46px 30px"}}),n.jsxs("g",{className:d,style:{transformOrigin:"56px 30px"},children:[n.jsx("line",{x1:"56",y1:"26",x2:"62",y2:"10",stroke:nt.baton,strokeWidth:"2",strokeLinecap:"round"}),n.jsx("circle",{cx:"62",cy:"10",r:"2",fill:nt.gold})]}),(c==="spawning"||c==="monitoring")&&n.jsxs(n.Fragment,{children:[n.jsx("text",{x:"4",y:"20",fontSize:"8",fill:nt.secondary,className:"animate-pulse",children:"♪"}),n.jsx("text",{x:"58",y:"48",fontSize:"8",fill:nt.secondary,className:"animate-pulse",style:{animationDelay:"0.3s"},children:"♫"})]})]})}function xj(s){switch(s){case"idle":return"animate-bounce-gentle";case"initializing":return"animate-thinking";case"scheduling":return"animate-thinking";case"spawning":return"animate-working";case"monitoring":return"animate-bounce-gentle";case"draining":return"animate-thinking";case"paused":return"";case"complete":return"animate-celebrate";default:return""}}function gj(s){switch(s){case"initializing":return"shadow-[0_0_12px_rgba(124,58,237,0.4)]";case"scheduling":return"shadow-[0_0_10px_rgba(167,139,250,0.5)]";case"spawning":return"shadow-[0_0_16px_rgba(124,58,237,0.6)]";case"monitoring":return"shadow-[0_0_8px_rgba(167,139,250,0.4)]";case"draining":return"shadow-[0_0_10px_rgba(251,191,36,0.5)]";case"paused":return"";case"complete":return"shadow-[0_0_20px_rgba(112,224,0,0.6)]";default:return""}}function pj(s){switch(s){case"idle":return"waiting";case"initializing":return"initializing features";case"scheduling":return"selecting next features";case"spawning":return"spawning agents";case"monitoring":return"monitoring progress";case"draining":return"draining active agents";case"paused":return"paused";case"complete":return"all features complete";default:return s}}function yj({state:s,size:c="md"}){const{svg:d}=mj[c],m=`Orchestrator Maestro is ${pj(s)}`;return n.jsx("div",{className:"flex flex-col items-center gap-1",role:"status","aria-label":m,"aria-live":"polite",children:n.jsx("div",{className:`
71
- rounded-full p-1 transition-all duration-300
72
- ${xj(s)}
73
- ${gj(s)}
74
- `,style:{backgroundColor:nt.accent},title:m,role:"img","aria-hidden":"true",children:n.jsx(hj,{size:d,state:s})})})}function vj(s){switch(s){case"idle":return"Standing by...";case"initializing":return"Setting up features...";case"scheduling":return"Planning next moves...";case"spawning":return"Deploying agents...";case"monitoring":return"Watching progress...";case"complete":return"Mission accomplished!";case"draining":return"Draining agents...";case"paused":return"Paused";default:return"Orchestrating..."}}function bj(s){switch(s){case"complete":return"text-primary";case"spawning":return"text-primary";case"scheduling":case"monitoring":return"text-primary";case"initializing":return"text-yellow-600 dark:text-yellow-400";case"draining":return"text-amber-600 dark:text-amber-400";case"paused":return"text-muted-foreground";default:return"text-muted-foreground"}}function jj(s){const c=new Date,d=new Date(s),o=c.getTime()-d.getTime(),m=Math.floor(o/1e3);if(m<5)return"just now";if(m<60)return`${m}s ago`;const x=Math.floor(m/60);return x<60?`${x}m ago`:`${Math.floor(x/60)}h ago`}function Nj({status:s}){const[c,d]=f.useState(!1);return n.jsx(Oe,{className:"mb-4 bg-primary/10 border-primary/30 py-4",children:n.jsxs(qe,{className:"p-4",children:[n.jsxs("div",{className:"flex items-start gap-4",children:[n.jsx(yj,{state:s.state,size:"md"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[n.jsx("span",{className:"font-semibold text-lg text-primary",children:"Maestro"}),n.jsx("span",{className:`text-sm font-medium ${bj(s.state)}`,children:vj(s.state)})]}),n.jsx("p",{className:"text-sm text-foreground mb-3 line-clamp-2",children:s.message}),n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsxs(we,{variant:"outline",className:"bg-blue-100 text-blue-700 border-blue-300 dark:bg-blue-900/30 dark:text-blue-300 dark:border-blue-700",children:[n.jsx($i,{size:12}),"Coding: ",s.codingAgents]}),n.jsxs(we,{variant:"outline",className:"bg-purple-100 text-purple-700 border-purple-300 dark:bg-purple-900/30 dark:text-purple-300 dark:border-purple-700",children:[n.jsx(Ji,{size:12}),"Testing: ",s.testingAgents]}),n.jsxs(we,{variant:"outline",className:"bg-green-100 text-green-700 border-green-300 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700",children:[n.jsx(fl,{size:12}),"Ready: ",s.readyCount]}),s.blockedCount>0&&n.jsxs(we,{variant:"outline",className:"bg-amber-100 text-amber-700 border-amber-300 dark:bg-amber-900/30 dark:text-amber-300 dark:border-amber-700",children:[n.jsx(Ty,{size:12}),"Blocked: ",s.blockedCount]})]})]}),s.recentEvents.length>0&&n.jsxs(J,{variant:"ghost",size:"sm",onClick:()=>d(!c),className:"text-primary hover:bg-primary/10",children:[n.jsx(Sn,{size:12}),"Activity",c?n.jsx(Wi,{size:14}):n.jsx(gs,{size:14})]})]}),c&&s.recentEvents.length>0&&n.jsx("div",{className:"mt-3 pt-3 border-t border-primary/20",children:n.jsx("div",{className:"space-y-1.5",children:s.recentEvents.map((o,m)=>n.jsxs("div",{className:"flex items-start gap-2 text-xs",children:[n.jsx("span",{className:"text-primary shrink-0 font-mono",children:jj(o.timestamp)}),n.jsx("span",{className:"text-foreground",children:o.message})]},`${o.timestamp}-${m}`))})})]})})}const xh="autoforge-activity-collapsed";function Sj({agents:s,orchestratorStatus:c,recentActivity:d,isExpanded:o=!0,getAgentLogs:m,browserScreenshots:x}){const[p,y]=f.useState(o),[g,j]=f.useState(()=>{try{return localStorage.getItem(xh)==="true"}catch{return!1}}),[z,E]=f.useState(null),H=()=>{const w=!g;j(w);try{localStorage.setItem(xh,String(w))}catch{}};return!c&&s.length===0?null:n.jsxs(Oe,{className:"mb-6 overflow-hidden py-0",children:[n.jsxs("button",{onClick:()=>y(!p),className:"w-full flex items-center justify-between px-4 py-3 bg-primary hover:bg-primary/90 transition-colors",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(Ey,{size:20,className:"text-primary-foreground"}),n.jsx("span",{className:"font-semibold text-primary-foreground uppercase tracking-wide",children:"Mission Control"}),n.jsx(we,{variant:"secondary",className:"ml-2",children:s.length>0?`${s.length} ${s.length===1?"agent":"agents"} active`:c?.state==="initializing"?"Initializing":c?.state==="draining"?"Draining":c?.state==="paused"?"Paused":c?.state==="complete"?"Complete":"Orchestrating"})]}),p?n.jsx(Wi,{size:20,className:"text-primary-foreground"}):n.jsx(gs,{size:20,className:"text-primary-foreground"})]}),n.jsx("div",{className:`
75
- transition-all duration-300 ease-out
76
- ${p?"max-h-[600px] opacity-100 overflow-y-auto":"max-h-0 opacity-0 overflow-hidden"}
77
- `,children:n.jsxs(qe,{className:"p-4",children:[c&&n.jsx(Nj,{status:c}),s.length>0&&n.jsx("div",{className:"flex gap-4 overflow-x-auto pb-4",children:s.map(w=>{const B=x?Array.from(x.values()).find(M=>M.agentIndex===w.agentIndex):void 0;return n.jsx(cj,{agent:w,onShowLogs:M=>{const C=s.find(_=>_.agentIndex===M);C&&E(C)},browserScreenshot:B},`agent-${w.agentIndex}`)})}),d.length>0&&n.jsxs("div",{className:"mt-4 pt-4 border-t",children:[n.jsxs(J,{variant:"ghost",size:"sm",onClick:H,className:"gap-2 mb-2 h-auto p-1",children:[n.jsx(Uh,{size:14,className:"text-muted-foreground"}),n.jsx("span",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wide",children:"Recent Activity"}),n.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",d.length,")"]}),g?n.jsx(gs,{size:14,className:"text-muted-foreground"}):n.jsx(Wi,{size:14,className:"text-muted-foreground"})]}),n.jsx("div",{className:`
78
- transition-all duration-200 ease-out overflow-hidden
79
- ${g?"max-h-0 opacity-0":"max-h-[300px] opacity-100"}
80
- `,children:n.jsx(dj,{activities:d,maxItems:5,showHeader:!1})})]})]})}),z&&m&&n.jsx(uj,{agent:z,logs:m(z.agentIndex),onClose:()=>E(null)})]})}function Cj(s){return Array.from({length:s},(c,d)=>({id:d,x:Math.random()*100,delay:Math.random()*.5,duration:1+Math.random()*1,color:["#ff006e","#ffd60a","#70e000","#00b4d8","#8338ec"][Math.floor(Math.random()*5)],rotation:Math.random()*360}))}function wj({agentName:s,featureName:c,onComplete:d}){const[o,m]=f.useState(!0),[x]=f.useState(()=>Cj(30)),p=f.useCallback(()=>{m(!1),setTimeout(()=>d?.(),300)},[d]);return f.useEffect(()=>{const y=setTimeout(p,3e3),g=j=>{j.key==="Escape"&&p()};return window.addEventListener("keydown",g),()=>{clearTimeout(y),window.removeEventListener("keydown",g)}},[p]),o?n.jsxs("div",{className:`
81
- fixed inset-0 z-50 flex items-center justify-center
82
- pointer-events-none
83
- transition-opacity duration-300
84
- ${o?"opacity-100":"opacity-0"}
85
- `,children:[n.jsx("div",{className:"absolute inset-0 overflow-hidden",children:x.map(y=>n.jsx("div",{className:"absolute w-3 h-3 animate-confetti",style:{left:`${y.x}%`,top:"-20px",backgroundColor:y.color,animationDelay:`${y.delay}s`,animationDuration:`${y.duration}s`,transform:`rotate(${y.rotation}deg)`}},y.id))}),n.jsx(Oe,{onClick:p,className:"p-6 bg-green-500 border-green-600 animate-bounce-in pointer-events-auto cursor-pointer hover:scale-105 transition-transform focus:outline-none focus:ring-2 focus:ring-primary",role:"button",tabIndex:0,children:n.jsxs(qe,{className:"p-0 flex flex-col items-center gap-4",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(Sn,{size:24,className:"text-yellow-300 animate-pulse"}),n.jsx(Ay,{size:28,className:"text-white"}),n.jsx(Sn,{size:24,className:"text-yellow-300 animate-pulse"})]}),n.jsx(yl,{name:s,state:"success",size:"lg"}),n.jsxs("div",{className:"text-center",children:[n.jsx("h3",{className:"font-display text-lg font-bold text-white mb-1",children:"Feature Complete!"}),n.jsx("p",{className:"text-sm text-white/80 max-w-[200px] truncate",children:c}),n.jsxs("p",{className:"text-xs text-white/60 mt-2",children:["Great job, ",s,"!"]})]}),n.jsx("p",{className:"text-xs text-white/40 mt-1",children:"Click or press Esc to dismiss"})]})})]}):null}function zj({onClick:s,isOpen:c}){return n.jsx(J,{onClick:s,size:"icon",className:"fixed bottom-6 right-6 z-50 w-14 h-14 rounded-full shadow-lg hover:shadow-xl transition-all duration-200 hover:-translate-y-0.5 active:translate-y-0.5",title:c?"Close Assistant (Press A)":"Open Assistant (Press A)","aria-label":c?"Close Assistant":"Open Assistant",children:c?n.jsx(tt,{size:24}):n.jsx(Ru,{size:24})})}function fs(){return`${Date.now()}-${Math.random().toString(36).substring(2,9)}`}function Tj({projectName:s,onError:c}){const[d,o]=f.useState([]),[m,x]=f.useState(!1),[p,y]=f.useState("disconnected"),[g,j]=f.useState(null),[z,E]=f.useState(null),H=f.useRef(null),w=f.useRef(null),B=f.useRef(0),M=3,C=f.useRef(null),_=f.useRef(null),R=f.useRef(null);f.useEffect(()=>()=>{C.current&&clearInterval(C.current),_.current&&clearTimeout(_.current),R.current&&clearTimeout(R.current),H.current&&H.current.close(),w.current=null},[]);const T=f.useCallback(()=>{if(H.current?.readyState===WebSocket.OPEN||H.current?.readyState===WebSocket.CONNECTING)return;y("connecting");const Y=window.location.protocol==="https:"?"wss:":"ws:",le=window.location.host,W=`${Y}//${le}/api/assistant/ws/${encodeURIComponent(s)}`,q=new WebSocket(W);H.current=q,q.onopen=()=>{y("connected"),B.current=0,C.current=window.setInterval(()=>{q.readyState===WebSocket.OPEN&&q.send(JSON.stringify({type:"ping"}))},3e4)},q.onclose=()=>{if(y("disconnected"),C.current&&(clearInterval(C.current),C.current=null),B.current<M){B.current++;const P=Math.min(1e3*Math.pow(2,B.current),1e4);_.current=window.setTimeout(T,P)}},q.onerror=()=>{y("error"),c?.("WebSocket connection error")},q.onmessage=P=>{try{const Z=JSON.parse(P.data);switch(Z.type){case"text":{o(G=>{const v=G[G.length-1];return v?.role==="assistant"&&v.isStreaming?[...G.slice(0,-1),{...v,content:v.content+Z.content}]:(w.current=fs(),[...G,{id:w.current,role:"assistant",content:Z.content,timestamp:new Date,isStreaming:!0}])});break}case"tool_call":{let G=`Using tool: ${Z.tool}`;if(Z.tool==="mcp__features__feature_create"){const v=Z.input;G=`Creating feature: "${v.name||"New Feature"}" in ${v.category||"General"}`}else if(Z.tool==="mcp__features__feature_create_bulk"){const D=Z.input.features?.length||0;G=`Creating ${D} feature${D!==1?"s":""}`}else if(Z.tool==="mcp__features__feature_skip")G="Skipping feature (moving to end of queue)";else if(Z.tool==="mcp__features__feature_get_stats")G="Checking project progress";else if(Z.tool==="mcp__features__feature_get_next")G="Getting next pending feature";else if(Z.tool==="Read"){const D=Z.input.file_path||"";G=`Reading file: ${D.split("/").pop()||D}`}else Z.tool==="Glob"?G=`Searching for files: ${Z.input.pattern||"..."}`:Z.tool==="Grep"&&(G=`Searching for: ${Z.input.pattern||"..."}`);o(v=>[...v,{id:fs(),role:"system",content:G,timestamp:new Date}]);break}case"question":{E(Z.questions),x(!1),o(G=>{const v=G[G.length-1];return v?.role==="assistant"&&v.isStreaming?[...G.slice(0,-1),{...v,isStreaming:!1,questions:Z.questions}]:G});break}case"conversation_created":{j(Z.conversation_id);break}case"response_done":{x(!1),w.current=null,o(G=>{const v=G[G.length-1];return v?.role==="assistant"&&v.isStreaming?[...G.slice(0,-1),{...v,isStreaming:!1}]:G});break}case"error":{x(!1),c?.(Z.content),o(G=>[...G,{id:fs(),role:"system",content:`Error: ${Z.content}`,timestamp:new Date}]);break}case"pong":break}}catch(Z){console.error("Failed to parse WebSocket message:",Z)}}},[s,c]),N=f.useCallback(Y=>{R.current&&(clearTimeout(R.current),R.current=null),T();const le=()=>{if(H.current?.readyState===WebSocket.OPEN){R.current=null,x(!0);const W={type:"start"};Y&&(W.conversation_id=Y,j(Y)),H.current.send(JSON.stringify(W))}else H.current?.readyState===WebSocket.CONNECTING?R.current=window.setTimeout(le,100):R.current=null};R.current=window.setTimeout(le,100)},[T]),L=f.useCallback(Y=>{if(!H.current||H.current.readyState!==WebSocket.OPEN){c?.("Not connected");return}o(le=>[...le,{id:fs(),role:"user",content:Y,timestamp:new Date}]),x(!0),H.current.send(JSON.stringify({type:"message",content:Y}))},[c]),I=f.useCallback(Y=>{if(!H.current||H.current.readyState!==WebSocket.OPEN){c?.("Not connected");return}const le=[];for(const[,q]of Object.entries(Y))Array.isArray(q)?le.push(q.join(", ")):le.push(q);const W=le.join("; ");o(q=>[...q,{id:fs(),role:"user",content:W,timestamp:new Date}]),E(null),x(!0),H.current.send(JSON.stringify({type:"answer",answers:Y}))},[c]),F=f.useCallback(()=>{B.current=M,C.current&&(clearInterval(C.current),C.current=null),H.current&&(H.current.close(),H.current=null),y("disconnected")},[]),ae=f.useCallback(()=>{o([])},[]);return{messages:d,isLoading:m,connectionStatus:p,conversationId:g,currentQuestions:z,start:N,sendMessage:L,sendAnswer:I,disconnect:F,clearMessages:ae}}function Ej(s){return pt({queryKey:["conversations",s],queryFn:()=>E0(s),enabled:!!s,staleTime:3e4})}function Aj(s,c){return pt({queryKey:["conversation",s,c],queryFn:()=>A0(s,c),enabled:!!s&&!!c,staleTime:3e4,retry:(d,o)=>o instanceof Error&&(o.message.toLowerCase().includes("not found")||o.message==="HTTP 404")?!1:d<3})}function Dj(s){const c=Ve();return Je({mutationFn:d=>D0(s,d),onSuccess:(d,o)=>{c.invalidateQueries({queryKey:["conversations",s]}),c.removeQueries({queryKey:["conversation",s,o]})}})}function _j(s){if(!s)return"";const c=new Date(s),o=new Date().getTime()-c.getTime(),m=Math.floor(o/1e3),x=Math.floor(m/60),p=Math.floor(x/60),y=Math.floor(p/24);return m<60?"just now":x<60?`${x}m ago`:p<24?`${p}h ago`:y===1?"yesterday":y<7?`${y}d ago`:c.toLocaleDateString()}function Mj({projectName:s,currentConversationId:c,isOpen:d,onClose:o,onSelectConversation:m}){const[x,p]=f.useState(null),[y,g]=f.useState(null),{data:j,isLoading:z}=Ej(s),E=Dj(s);f.useEffect(()=>{d||g(null)},[d]);const H=(C,_)=>{C.stopPropagation(),p(_)},w=async()=>{if(x)try{g(null),await E.mutateAsync(x.id),p(null)}catch{g("Failed to delete conversation. Please try again.")}},B=()=>{p(null),g(null)},M=C=>{m(C),o()};return f.useEffect(()=>{if(!d)return;const C=_=>{_.key==="Escape"&&(_.preventDefault(),o())};return document.addEventListener("keydown",C),()=>document.removeEventListener("keydown",C)},[d,o]),d?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"fixed inset-0 z-40",onClick:o}),n.jsxs(Oe,{className:"absolute top-full left-0 mt-2 z-50 w-[320px] max-w-[calc(100vw-2rem)] shadow-lg",children:[n.jsx(lr,{className:"p-3 border-b border-border",children:n.jsx("h3",{className:"font-bold text-sm",children:"Conversation History"})}),n.jsx(qe,{className:"p-0",children:z?n.jsx("div",{className:"p-4 flex items-center justify-center",children:n.jsx(ze,{size:20,className:"animate-spin text-muted-foreground"})}):!j||j.length===0?n.jsx("div",{className:"p-4 text-center text-muted-foreground text-sm",children:"No conversations yet"}):n.jsx("div",{className:"max-h-[300px] overflow-y-auto",children:j.map(C=>{const _=C.id===c;return n.jsxs("div",{className:`flex items-center group ${_?"bg-primary/10":"hover:bg-muted"}`,children:[n.jsx("button",{onClick:()=>M(C.id),className:"flex-1 px-3 py-2 text-left",disabled:_,children:n.jsxs("div",{className:"flex items-start gap-2",children:[n.jsx(Dy,{size:16,className:"mt-0.5 flex-shrink-0 text-muted-foreground"}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"font-medium truncate text-foreground",children:C.title||"Untitled conversation"}),n.jsxs("div",{className:"text-xs flex items-center gap-2 text-muted-foreground",children:[n.jsxs("span",{children:[C.message_count," messages"]}),n.jsx("span",{children:"|"}),n.jsx("span",{children:_j(C.updated_at)})]})]})]})}),n.jsx(J,{variant:"ghost",size:"icon",onClick:R=>H(R,C),className:`h-8 w-8 mr-2 ${_?"opacity-60 hover:opacity-100":"opacity-0 group-hover:opacity-100"} hover:text-destructive hover:bg-destructive/10`,title:"Delete conversation",children:n.jsx(an,{size:14})})]},C.id)})})})]}),n.jsx(Zh,{isOpen:x!==null,title:"Delete Conversation",message:y?n.jsxs("div",{className:"space-y-3",children:[n.jsx("p",{children:`Are you sure you want to delete "${x?.title||"this conversation"}"? This action cannot be undone.`}),n.jsxs("div",{className:"flex items-center gap-2 p-2 bg-destructive/10 border border-destructive rounded text-sm text-destructive",children:[n.jsx(ua,{size:16,className:"flex-shrink-0"}),n.jsx("span",{children:y})]})]}):`Are you sure you want to delete "${x?.title||"this conversation"}"? This action cannot be undone.`,confirmLabel:"Delete",cancelLabel:"Cancel",variant:"danger",isLoading:E.isPending,onConfirm:w,onCancel:B})]}):null}function kj({projectName:s,conversationId:c,initialMessages:d,isLoadingConversation:o,onNewChat:m,onSelectConversation:x,onConversationCreated:p}){const[y,g]=f.useState(""),[j,z]=f.useState(!1),E=f.useRef(null),H=f.useRef(null),w=f.useRef(!1),B=f.useRef(void 0),M=f.useCallback(G=>{console.error("Assistant error:",G)},[]),{messages:C,isLoading:_,connectionStatus:R,conversationId:T,currentQuestions:N,start:L,sendMessage:I,sendAnswer:F,clearMessages:ae}=Tj({projectName:s,onError:M}),Y=f.useRef(T);f.useEffect(()=>{Y.current===null&&T!==null&&p&&p(T),Y.current=T},[T,p]),f.useEffect(()=>{E.current?.scrollIntoView({behavior:"smooth"})},[C]),f.useEffect(()=>{if(o||B.current===c&&w.current)return;const G=B.current!==void 0&&B.current!==c;B.current=c,w.current=!0,G&&ae(),L(c)},[c,o,L,ae]);const le=f.useCallback(()=>{ae(),m?.()},[ae,m]),W=f.useCallback(G=>{z(!1),x?.(G)},[x]);f.useEffect(()=>{_||H.current?.focus()},[_]);const q=()=>{const G=y.trim();!G||_||o||(I(G),g(""))},P=G=>{ys(G)&&(G.preventDefault(),q())},Z=f.useMemo(()=>{if(!(B.current===c&&!o))return d??[];if(!d||d.length===0)return C;const v=new Map;for(const D of d)v.set(D.id,D);for(const D of C)v.set(D.id,D);return Array.from(v.values())},[d,C,c,o]);return n.jsxs("div",{className:"flex flex-col h-full",children:[n.jsxs("div",{className:"flex items-center justify-between px-4 py-2 border-b border-border bg-background",children:[n.jsxs("div",{className:"flex items-center gap-1 relative",children:[n.jsx(J,{variant:"ghost",size:"icon",onClick:le,className:"h-8 w-8",title:"New conversation",disabled:_,children:n.jsx(tn,{size:16})}),n.jsx(J,{variant:j?"secondary":"ghost",size:"icon",onClick:()=>z(!j),className:"h-8 w-8",title:"Conversation history",children:n.jsx(_y,{size:16})}),n.jsx(Mj,{projectName:s,currentConversationId:c??T,isOpen:j,onClose:()=>z(!1),onSelectConversation:W})]}),n.jsx("div",{className:"flex items-center gap-2",children:R==="connected"?n.jsxs(n.Fragment,{children:[n.jsx(xl,{size:14,className:"text-green-500"}),n.jsx("span",{className:"text-xs text-muted-foreground",children:"Connected"})]}):R==="connecting"?n.jsxs(n.Fragment,{children:[n.jsx(ze,{size:14,className:"text-primary animate-spin"}),n.jsx("span",{className:"text-xs text-muted-foreground",children:"Connecting..."})]}):n.jsxs(n.Fragment,{children:[n.jsx(hl,{size:14,className:"text-destructive"}),n.jsx("span",{className:"text-xs text-muted-foreground",children:"Disconnected"})]})})]}),n.jsx("div",{className:"flex-1 overflow-y-auto bg-background",children:o?n.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(ze,{size:16,className:"animate-spin"}),n.jsx("span",{children:"Loading conversation..."})]})}):Z.length===0?n.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:_?n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx(ze,{size:16,className:"animate-spin"}),n.jsx("span",{children:"Connecting to assistant..."})]}):n.jsx("span",{children:"Ask me anything about the codebase"})}):n.jsxs("div",{className:"py-4",children:[Z.map(G=>n.jsx(qu,{message:G},G.id)),n.jsx("div",{ref:E})]})}),_&&Z.length>0&&n.jsx("div",{className:"px-4 py-2 border-t border-border bg-background",children:n.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground text-sm",children:[n.jsxs("div",{className:"flex gap-1",children:[n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0ms"}}),n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"150ms"}}),n.jsx("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"300ms"}})]}),n.jsx("span",{children:"Thinking..."})]})}),N&&n.jsx("div",{className:"border-t border-border bg-background",children:n.jsx(Vh,{questions:N,onSubmit:F})}),n.jsxs("div",{className:"border-t border-border p-4 bg-card",children:[n.jsxs("div",{className:"flex gap-2",children:[n.jsx(vs,{ref:H,value:y,onChange:G=>g(G.target.value),onKeyDown:P,placeholder:"Ask about the codebase...",disabled:_||o||R!=="connected"||!!N,className:"flex-1 resize-none min-h-[44px] max-h-[120px]",rows:1}),n.jsx(J,{onClick:q,disabled:!y.trim()||_||o||R!=="connected"||!!N,title:"Send message",children:_?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(tr,{size:18})})]}),n.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:N?"Select an option above to continue":"Press Enter to send, Shift+Enter for new line"})]})]})}const Jh="assistant-conversation-",gh="assistant-panel-width",Oj=400,ph=300,yh=90;function vh(s){try{const c=localStorage.getItem(`${Jh}${s}`);if(c)return JSON.parse(c).conversationId||null}catch{}return null}function Rj(s,c){const d=`${Jh}${s}`;c?localStorage.setItem(d,JSON.stringify({conversationId:c})):localStorage.removeItem(d)}function Uj({projectName:s,isOpen:c,onClose:d}){const[o,m]=f.useState(()=>vh(s)),{data:x,isLoading:p,error:y}=Aj(s,o);f.useEffect(()=>{if(y&&o){const C=y.message.toLowerCase();(C.includes("not found")||C.includes("404"))&&(console.warn(`Conversation ${o} not found, clearing stored ID`),m(null))}},[y,o]);const g=x?.messages.map(C=>({id:`db-${C.id}`,role:C.role,content:C.content,timestamp:C.timestamp?new Date(C.timestamp):new Date}));f.useEffect(()=>{Rj(s,o)},[s,o]),f.useEffect(()=>{m(vh(s))},[s]);const j=f.useCallback(()=>{m(null)},[]),z=f.useCallback(C=>{m(C)},[]),E=f.useCallback(C=>{m(C)},[]),[H,w]=f.useState(()=>{try{const C=localStorage.getItem(gh);if(C)return Math.max(ph,parseInt(C,10))}catch{}return Oj}),B=f.useRef(!1),M=f.useCallback(C=>{C.preventDefault(),B.current=!0;const _=C.clientX,R=H,T=window.innerWidth*(yh/100),N=I=>{if(!B.current)return;const F=_-I.clientX,ae=Math.min(T,Math.max(ph,R+F));w(ae)},L=()=>{B.current=!1,document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",L),document.body.style.cursor="",document.body.style.userSelect="",w(I=>(localStorage.setItem(gh,String(I)),I))};document.body.style.cursor="col-resize",document.body.style.userSelect="none",document.addEventListener("mousemove",N),document.addEventListener("mouseup",L)},[H]);return n.jsxs(n.Fragment,{children:[c&&n.jsx("div",{className:"fixed inset-0 bg-black/20 z-40 transition-opacity duration-300",onClick:d,"aria-hidden":"true"}),n.jsxs("div",{className:`
86
- fixed right-0 top-0 bottom-0 z-50
87
- bg-card
88
- border-l border-border
89
- transform transition-transform duration-300 ease-out
90
- flex flex-col shadow-xl
91
- ${c?"translate-x-0":"translate-x-full"}
92
- `,style:{width:`${H}px`,maxWidth:`${yh}vw`},role:"dialog","aria-label":"Project Assistant","aria-hidden":!c,children:[n.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 group",onMouseDown:M,children:n.jsx("div",{className:"absolute inset-y-0 left-0 w-0.5 bg-border group-hover:bg-primary transition-colors"})}),n.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border bg-primary text-primary-foreground",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx("div",{className:"bg-card text-foreground border border-border p-1.5 rounded",children:n.jsx(Mu,{size:18})}),n.jsxs("div",{children:[n.jsx("h2",{className:"font-semibold",children:"Project Assistant"}),n.jsx("p",{className:"text-xs opacity-80 font-mono",children:s})]})]}),n.jsx(J,{variant:"ghost",size:"icon",onClick:d,className:"text-primary-foreground hover:bg-primary-foreground/20",title:"Close Assistant (Press A)","aria-label":"Close Assistant",children:n.jsx(tt,{size:18})})]}),n.jsx("div",{className:"flex-1 overflow-hidden",children:c&&n.jsx(kj,{projectName:s,conversationId:o,initialMessages:g,isLoadingConversation:p,onNewChat:j,onSelectConversation:z,onConversationCreated:E})})]})]})}function Qi(){return`${Date.now()}-${Math.random().toString(36).substring(2,9)}`}function Bj({projectName:s,onComplete:c,onError:d}){const[o,m]=f.useState([]),[x,p]=f.useState(!1),[y,g]=f.useState(!1),[j,z]=f.useState("disconnected"),[E,H]=f.useState(0),[w,B]=f.useState([]),M=f.useRef(null),C=f.useRef(null),_=f.useRef(0),R=3,T=f.useRef(null),N=f.useRef(null),L=f.useRef(!1),I=f.useRef(!1);f.useEffect(()=>{L.current=y},[y]),f.useEffect(()=>()=>{T.current&&clearInterval(T.current),N.current&&clearTimeout(N.current),M.current&&M.current.close()},[]);const F=f.useCallback(()=>{if(I.current||M.current?.readyState===WebSocket.OPEN)return;z("connecting");const W=window.location.protocol==="https:"?"wss:":"ws:",q=window.location.host,P=`${W}//${q}/api/expand/ws/${encodeURIComponent(s)}`,Z=new WebSocket(P);M.current=Z,Z.onopen=()=>{z("connected"),_.current=0,I.current=!1,T.current=window.setInterval(()=>{Z.readyState===WebSocket.OPEN&&Z.send(JSON.stringify({type:"ping"}))},3e4)},Z.onclose=G=>{z("disconnected"),T.current&&(clearInterval(T.current),T.current=null);const v=G.code>=4e3&&G.code<=4999;if(!I.current&&!v&&_.current<R&&!L.current){_.current++;const D=Math.min(1e3*Math.pow(2,_.current),1e4);N.current=window.setTimeout(F,D)}},Z.onerror=()=>{z("error"),d?.("WebSocket connection error")},Z.onmessage=G=>{try{const v=JSON.parse(G.data);switch(v.type){case"text":{m(D=>{const ee=D[D.length-1];return ee?.role==="assistant"&&ee.isStreaming?[...D.slice(0,-1),{...ee,content:ee.content+v.content}]:(C.current=Qi(),[...D,{id:C.current,role:"assistant",content:v.content,timestamp:new Date,isStreaming:!0}])});break}case"features_created":{H(D=>D+v.count),B(v.features),m(D=>[...D,{id:Qi(),role:"system",content:`Created ${v.count} new feature${v.count!==1?"s":""}!`,timestamp:new Date}]);break}case"expansion_complete":{g(!0),p(!1),m(D=>{const ee=D[D.length-1];return ee?.role==="assistant"&&ee.isStreaming?[...D.slice(0,-1),{...ee,isStreaming:!1}]:D}),c?.(v.total_added);break}case"error":{p(!1),d?.(v.content),m(D=>[...D,{id:Qi(),role:"system",content:`Error: ${v.content}`,timestamp:new Date}]);break}case"pong":break;case"response_done":{p(!1),m(D=>{const ee=D[D.length-1];return ee?.role==="assistant"&&ee.isStreaming?[...D.slice(0,-1),{...ee,isStreaming:!1}]:D});break}}}catch(v){console.error("Failed to parse WebSocket message:",v)}}},[s,c,d]),ae=f.useCallback(()=>{F();let W=0;const q=50,P=()=>{M.current?.readyState===WebSocket.OPEN?(p(!0),M.current.send(JSON.stringify({type:"start"}))):M.current?.readyState===WebSocket.CONNECTING&&(W++<q?setTimeout(P,100):(d?.("Connection timeout"),p(!1)))};setTimeout(P,100)},[F,d]),Y=f.useCallback((W,q)=>{if(!M.current||M.current.readyState!==WebSocket.OPEN){d?.("Not connected");return}m(Z=>[...Z,{id:Qi(),role:"user",content:W,attachments:q,timestamp:new Date}]),p(!0);const P={type:"message",content:W};q&&q.length>0&&(P.attachments=q.map(Z=>({filename:Z.filename,mimeType:Z.mimeType,base64Data:Z.base64Data}))),M.current.send(JSON.stringify(P))},[d]),le=f.useCallback(()=>{I.current=!0,_.current=R,T.current&&(clearInterval(T.current),T.current=null),N.current&&(clearTimeout(N.current),N.current=null),M.current&&(M.current.close(),M.current=null),z("disconnected")},[]);return{messages:o,isLoading:x,isComplete:y,connectionStatus:j,featuresCreated:E,recentFeatures:w,start:ae,sendMessage:Y,disconnect:le}}const Lj=5*1024*1024,Hj=20*1024*1024,qj=["md","txt","csv","docx","xlsx","pdf","pptx","jpg","jpeg","png"];function Gj({projectName:s,onComplete:c,onCancel:d}){const[o,m]=f.useState(""),[x,p]=f.useState(null),[y,g]=f.useState([]),j=f.useRef(null),z=f.useRef(null),E=f.useRef(null),H=f.useCallback(q=>p(q),[]),{messages:w,isLoading:B,isComplete:M,connectionStatus:C,featuresCreated:_,start:R,sendMessage:T,disconnect:N}=Bj({projectName:s,onComplete:c,onError:H});f.useEffect(()=>(R(),()=>{N()}),[]),f.useEffect(()=>{j.current?.scrollIntoView({behavior:"smooth"})},[w,B]),f.useEffect(()=>{!B&&z.current&&z.current.focus()},[B]);const L=()=>{const q=o.trim();!q&&y.length===0||B||(T(q,y.length>0?y:void 0),m(""),g([]))},I=q=>{ys(q)&&(q.preventDefault(),L())},F=f.useCallback(q=>{q&&Array.from(q).forEach(P=>{let Z=P.type;if((!Z||!Ii.includes(Z))&&(Z=Pi(P.name)),!Ii.includes(Z)){const te=P.name.split(".").pop()?.toLowerCase();if(!te||!qj.includes(te)){p(`Unsupported file type: ${P.name}. Supported: images (JPEG, PNG) and documents (MD, TXT, CSV, DOCX, XLSX, PDF, PPTX).`);return}Z=Pi(P.name)}const G=nr.includes(Z),v=G?Lj:Hj,D=G?"5 MB":"20 MB";if(P.size>v){p(`File too large: ${P.name}. Maximum size is ${D}.`);return}const ee=new FileReader;ee.onload=te=>{const ue=te.target?.result,se=ue.split(",")[1],me={id:`${Date.now()}-${Math.random().toString(36).substring(2,9)}`,filename:P.name,mimeType:Z,base64Data:se,previewUrl:G?ue:"",size:P.size};g(X=>[...X,me])},ee.onerror=()=>{p(`Failed to read file: ${P.name}`)},ee.readAsDataURL(P)})},[]),ae=f.useCallback(q=>{g(P=>P.filter(Z=>Z.id!==q))},[]),Y=f.useCallback(q=>{q.preventDefault(),F(q.dataTransfer.files)},[F]),le=f.useCallback(q=>{q.preventDefault()},[]),W=()=>{switch(C){case"connected":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-green-500",children:[n.jsx(xl,{size:12}),"Connected"]});case"connecting":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-yellow-500",children:[n.jsx(xl,{size:12,className:"animate-pulse"}),"Connecting..."]});case"error":return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-destructive",children:[n.jsx(hl,{size:12}),"Error"]});default:return n.jsxs("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[n.jsx(hl,{size:12}),"Disconnected"]})}};return n.jsxs("div",{className:"flex flex-col h-full bg-background",children:[n.jsxs("div",{className:"flex items-center justify-between p-4 border-b-2 border-border bg-card",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsxs("h2",{className:"font-display font-bold text-lg text-foreground",children:["Expand Project: ",s]}),n.jsx(W,{}),_>0&&n.jsxs("span",{className:"flex items-center gap-1 text-sm text-green-500 font-bold",children:[n.jsx(tn,{size:14}),_," added"]})]}),n.jsxs("div",{className:"flex items-center gap-2",children:[M&&n.jsxs("span",{className:"flex items-center gap-1 text-sm text-green-500 font-bold",children:[n.jsx($t,{size:16}),"Complete"]}),n.jsx(J,{onClick:d,variant:"ghost",size:"icon",title:"Close",children:n.jsx(tt,{size:20})})]})]}),x&&n.jsxs(rt,{variant:"destructive",className:"rounded-none border-x-0 border-t-0",children:[n.jsx(ua,{size:16}),n.jsx(ct,{className:"flex-1",children:x}),n.jsx(J,{onClick:()=>p(null),variant:"ghost",size:"icon",className:"h-6 w-6",children:n.jsx(tt,{size:14})})]}),n.jsxs("div",{className:"flex-1 overflow-y-auto py-4",children:[w.length===0&&!B&&n.jsx("div",{className:"flex flex-col items-center justify-center h-full text-center p-8",children:n.jsx(Oe,{className:"p-6 max-w-md",children:n.jsxs(qe,{className:"p-0",children:[n.jsx("h3",{className:"font-display font-bold text-lg mb-2",children:"Starting Project Expansion"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Connecting to Claude to help you add new features to your project..."}),C==="error"&&n.jsxs(J,{onClick:R,className:"mt-4",size:"sm",children:[n.jsx(en,{size:14}),"Retry Connection"]})]})})}),w.map(q=>n.jsx(qu,{message:q},q.id)),B&&n.jsx(Xh,{}),n.jsx("div",{ref:j})]}),!M&&n.jsxs("div",{className:"p-4 border-t-2 border-border bg-card",onDrop:Y,onDragOver:le,children:[y.length>0&&n.jsx("div",{className:"flex flex-wrap gap-2 mb-3",children:y.map(q=>n.jsxs("div",{className:"relative group border-2 border-border p-1 bg-card rounded shadow-sm",children:[Lu(q)?n.jsx("img",{src:q.previewUrl,alt:q.filename,className:"w-16 h-16 object-cover rounded"}):n.jsx("div",{className:"w-16 h-16 flex items-center justify-center bg-muted rounded",children:n.jsx(Ki,{size:24,className:"text-muted-foreground"})}),n.jsx("button",{onClick:()=>ae(q.id),className:"absolute -top-2 -right-2 bg-destructive text-destructive-foreground rounded-full p-0.5 border-2 border-border hover:scale-110 transition-transform",title:"Remove attachment",children:n.jsx(tt,{size:12})}),n.jsx("span",{className:"text-xs truncate block max-w-16 mt-1 text-center text-muted-foreground",children:q.filename.length>10?`${q.filename.substring(0,7)}...`:q.filename})]},q.id))}),n.jsxs("div",{className:"flex gap-3",children:[n.jsx("input",{ref:E,type:"file",accept:"image/jpeg,image/png,.md,.txt,.csv,.docx,.xlsx,.pdf,.pptx",multiple:!0,onChange:q=>F(q.target.files),className:"hidden"}),n.jsx(J,{onClick:()=>E.current?.click(),disabled:C!=="connected",variant:"ghost",size:"icon",title:"Attach files (images: JPEG/PNG up to 5MB, documents: MD, TXT, CSV, DOCX, XLSX, PDF, PPTX up to 20MB)",children:n.jsx(Zi,{size:18})}),n.jsx(it,{ref:z,type:"text",value:o,onChange:q=>m(q.target.value),onKeyDown:I,placeholder:y.length>0?"Add a message with your image(s)...":"Describe the features you want to add...",className:"flex-1",disabled:B||C!=="connected"}),n.jsx(J,{onClick:L,disabled:!o.trim()&&y.length===0||B||C!=="connected",className:"px-6",children:n.jsx(tr,{size:18})})]}),n.jsxs("p",{className:"text-xs text-muted-foreground mt-2",children:["Press Enter to send. Drag & drop or click ",n.jsx(Zi,{size:12,className:"inline"})," to attach files."]})]}),M&&n.jsx("div",{className:"p-4 border-t-2 border-border bg-green-500 text-white",children:n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsx($t,{size:20}),n.jsxs("span",{className:"font-bold",children:["Added ",_," new feature",_!==1?"s":"","!"]})]}),n.jsx(J,{onClick:()=>c(_),variant:"secondary",children:"Close"})]})})]})}function Qj({isOpen:s,projectName:c,onClose:d,onFeaturesAdded:o}){if(!s)return null;const m=x=>{x>0&&o(),d()};return n.jsx("div",{className:"fixed inset-0 z-50 bg-background",children:n.jsx(Gj,{projectName:c,onComplete:m,onCancel:d})})}function bh({className:s,min:c,max:d,value:o,onChange:m,disabled:x,...p}){return n.jsxs("div",{className:Re("flex items-center gap-3",s),children:[n.jsx("input",{type:"range",min:c,max:d,value:o,onChange:y=>m(Number(y.target.value)),disabled:x,className:Re("slider-input h-2 w-full cursor-pointer appearance-none rounded-full bg-input transition-colors","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",x&&"cursor-not-allowed opacity-50"),...p}),n.jsx("span",{className:"min-w-[2ch] text-center text-sm font-semibold tabular-nums",children:o})]})}const Yj={claude:"Default provider. Uses Claude CLI credentials. API key auth is recommended.",kimi:"Get an API key at kimi.com",glm:"Get an API key at open.bigmodel.cn",ollama:"Run models locally. Install from ollama.com",custom:"Connect to any OpenAI-compatible API endpoint."};function Vj({isOpen:s,onClose:c}){const{data:d,isLoading:o,isError:m,refetch:x}=Bu(),{data:p}=fv(),{data:y}=dv(),g=mv(),{theme:j,setTheme:z,darkMode:E,toggleDarkMode:H}=Yh(),[w,B]=f.useState(!1),[M,C]=f.useState(""),[_,R]=f.useState(""),[T,N]=f.useState(""),L=()=>{d&&!g.isPending&&g.mutate({yolo_mode:!d.yolo_mode})},I=X=>{g.isPending||g.mutate({api_model:X})},F=X=>{g.isPending||g.mutate({testing_agent_ratio:X})},ae=X=>{g.isPending||g.mutate({batch_size:X})},Y=X=>{g.isPending||g.mutate({testing_batch_size:X})},le=X=>{g.isPending||(g.mutate({api_provider:X}),C(""),B(!1),R(""),N(""))},W=()=>{M.trim()&&!g.isPending&&(g.mutate({api_auth_token:M.trim()}),C(""),B(!1))},q=()=>{T.trim()&&!g.isPending&&(g.mutate({api_base_url:T.trim()}),N(""))},P=()=>{_.trim()&&!g.isPending&&(g.mutate({api_model:_.trim()}),R(""))},Z=y?.providers??[],G=p?.models??[],v=g.isPending,D=d?.api_provider??"claude",ee=Z.find(X=>X.id===D),ue=D!=="claude"&&ee?.requires_auth,se=D==="custom"||D==="azure",me=D==="custom"||D==="ollama";return n.jsx(ea,{open:s,onOpenChange:X=>!X&&c(),children:n.jsxs(ta,{"aria-describedby":void 0,className:"sm:max-w-lg max-h-[90vh] overflow-y-auto",children:[n.jsx(aa,{children:n.jsxs(na,{className:"flex items-center gap-2",children:["Settings",v&&n.jsx(ze,{className:"animate-spin",size:16})]})}),o&&n.jsxs("div",{className:"flex items-center justify-center py-8",children:[n.jsx(ze,{className:"animate-spin",size:24}),n.jsx("span",{className:"ml-2",children:"Loading settings..."})]}),m&&n.jsxs(rt,{variant:"destructive",children:[n.jsx(ua,{className:"h-4 w-4"}),n.jsxs(ct,{children:["Failed to load settings",n.jsx(J,{variant:"link",onClick:()=>x(),className:"ml-2 p-0 h-auto",children:"Retry"})]})]}),d&&!o&&n.jsxs("div",{className:"space-y-6",children:[n.jsxs("div",{className:"space-y-3",children:[n.jsx(_e,{className:"font-medium",children:"Theme"}),n.jsx("div",{className:"grid gap-2",children:Xi.map(X=>n.jsxs("button",{onClick:()=>z(X.id),className:`flex items-center gap-3 p-3 rounded-lg border-2 transition-colors text-left ${j===X.id?"border-primary bg-primary/5":"border-border hover:border-primary/50 hover:bg-muted/50"}`,children:[n.jsxs("div",{className:"flex gap-0.5 shrink-0",children:[n.jsx("div",{className:"w-5 h-5 rounded-sm border border-border/50",style:{backgroundColor:X.previewColors.background}}),n.jsx("div",{className:"w-5 h-5 rounded-sm border border-border/50",style:{backgroundColor:X.previewColors.primary}}),n.jsx("div",{className:"w-5 h-5 rounded-sm border border-border/50",style:{backgroundColor:X.previewColors.accent}})]}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"font-medium text-sm",children:X.name}),n.jsx("div",{className:"text-xs text-muted-foreground",children:X.description})]}),j===X.id&&n.jsx(ca,{size:18,className:"text-primary shrink-0"})]},X.id))})]}),n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsxs("div",{className:"space-y-0.5",children:[n.jsx(_e,{htmlFor:"dark-mode",className:"font-medium",children:"Dark Mode"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Switch between light and dark appearance"})]}),n.jsxs(J,{id:"dark-mode",variant:"outline",size:"sm",onClick:H,className:"gap-2",children:[E?n.jsx(Bh,{size:16}):n.jsx(Lh,{size:16}),E?"Light":"Dark"]})]}),n.jsx("hr",{className:"border-border"}),n.jsxs("div",{className:"space-y-3",children:[n.jsx(_e,{className:"font-medium",children:"API Provider"}),n.jsx("div",{className:"flex flex-wrap gap-1.5",children:Z.map(X=>n.jsx("button",{onClick:()=>le(X.id),disabled:v,className:`py-1.5 px-3 text-sm font-medium rounded-md border transition-colors ${D===X.id?"bg-primary text-primary-foreground border-primary":"bg-background text-foreground border-border hover:bg-muted"} ${v?"opacity-50 cursor-not-allowed":""}`,children:X.name.split(" (")[0]},X.id))}),n.jsx("p",{className:"text-xs text-muted-foreground",children:Yj[D]??""}),D==="claude"&&n.jsxs(rt,{className:"border-amber-500/50 bg-amber-50 dark:bg-amber-950/20 mt-2",children:[n.jsx(oa,{className:"h-4 w-4 text-amber-600"}),n.jsxs(ct,{className:"text-xs text-amber-700 dark:text-amber-300",children:["Anthropic's policy may not permit using subscription-based auth (",n.jsx("code",{className:"text-xs",children:"claude login"}),") with third-party agents. Consider using an API key provider or setting the ",n.jsx("code",{className:"text-xs",children:"ANTHROPIC_API_KEY"})," environment variable to avoid potential account issues."]})]}),ue&&n.jsxs("div",{className:"space-y-2 pt-1",children:[n.jsx(_e,{className:"text-sm",children:"API Key"}),d.api_has_auth_token&&!M&&n.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[n.jsx(Zm,{size:14,className:"text-green-500"}),n.jsx("span",{children:"Configured"}),n.jsx(J,{variant:"ghost",size:"sm",className:"h-auto py-0.5 px-2 text-xs",onClick:()=>C(" "),children:"Change"})]}),(!d.api_has_auth_token||M)&&n.jsxs("div",{className:"flex gap-2",children:[n.jsxs("div",{className:"relative flex-1",children:[n.jsx("input",{type:w?"text":"password",value:M.trim(),onChange:X=>C(X.target.value),placeholder:"Enter API key...",className:"w-full py-1.5 px-3 pe-9 text-sm border rounded-md bg-background"}),n.jsx("button",{type:"button",onClick:()=>B(!w),className:"absolute end-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",children:w?n.jsx(My,{size:14}):n.jsx(ky,{size:14})})]}),n.jsx(J,{size:"sm",onClick:W,disabled:!M.trim()||v,children:"Save"})]})]}),se&&n.jsxs("div",{className:"space-y-2 pt-1",children:[n.jsx(_e,{className:"text-sm",children:"Base URL"}),d.api_base_url&&!T&&n.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[n.jsx(Zm,{size:14,className:"text-green-500"}),n.jsx("span",{className:"truncate",children:d.api_base_url}),n.jsx(J,{variant:"ghost",size:"sm",className:"h-auto py-0.5 px-2 text-xs shrink-0",onClick:()=>N(d.api_base_url||""),children:"Change"})]}),(!d.api_base_url||T)&&n.jsxs("div",{className:"flex gap-2",children:[n.jsx("input",{type:"text",value:T,onChange:X=>N(X.target.value),placeholder:D==="azure"?"https://your-resource.services.ai.azure.com/anthropic":"https://api.example.com/v1",className:"flex-1 py-1.5 px-3 text-sm border rounded-md bg-background"}),n.jsx(J,{size:"sm",onClick:q,disabled:!T.trim()||v,children:"Save"})]})]})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{className:"font-medium",children:"Model"}),G.length>0&&n.jsx("div",{className:"flex rounded-lg border overflow-hidden",children:G.map(X=>n.jsxs("button",{onClick:()=>I(X.id),disabled:v,className:`flex-1 py-2 px-3 text-sm font-medium transition-colors ${(d.api_model??d.model)===X.id?"bg-primary text-primary-foreground":"bg-background text-foreground hover:bg-muted"} ${v?"opacity-50 cursor-not-allowed":""}`,children:[n.jsx("span",{className:"block",children:X.name}),n.jsx("span",{className:"block text-xs opacity-60",children:X.id})]},X.id))}),me&&n.jsxs("div",{className:"flex gap-2 pt-1",children:[n.jsx("input",{type:"text",value:_,onChange:X=>R(X.target.value),placeholder:"Custom model name...",className:"flex-1 py-1.5 px-3 text-sm border rounded-md bg-background",onKeyDown:X=>X.key==="Enter"&&P()}),n.jsx(J,{size:"sm",onClick:P,disabled:!_.trim()||v,children:"Set"})]})]}),n.jsx("hr",{className:"border-border"}),n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsxs("div",{className:"space-y-0.5",children:[n.jsx(_e,{htmlFor:"yolo-mode",className:"font-medium",children:"YOLO Mode"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Skip testing for rapid prototyping"})]}),n.jsx(Fh,{id:"yolo-mode",checked:d.yolo_mode,onCheckedChange:L,disabled:v})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{className:"font-medium",children:"Regression Agents"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Number of regression testing agents (0 = disabled)"}),n.jsx("div",{className:"flex rounded-lg border overflow-hidden",children:[0,1,2,3].map(X=>n.jsx("button",{onClick:()=>F(X),disabled:v,className:`flex-1 py-2 px-3 text-sm font-medium transition-colors ${d.testing_agent_ratio===X?"bg-primary text-primary-foreground":"bg-background text-foreground hover:bg-muted"} ${v?"opacity-50 cursor-not-allowed":""}`,children:X},X))})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{className:"font-medium",children:"Features per Coding Agent"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Number of features assigned to each coding agent session"}),n.jsx(bh,{min:1,max:15,value:d.batch_size??3,onChange:ae,disabled:v})]}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{className:"font-medium",children:"Features per Testing Agent"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Number of features assigned to each testing agent session"}),n.jsx(bh,{min:1,max:15,value:d.testing_batch_size??3,onChange:Y,disabled:v})]}),g.isError&&n.jsx(rt,{variant:"destructive",children:n.jsx(ct,{children:"Failed to save settings. Please try again."})})]})]})})}function Xj({projectName:s,isOpen:c,onClose:d,autoStartOnSave:o=!1}){const{data:m}=xv(c?s:null),x=gv(s),p=Ve(),[y,g]=f.useState(""),[j,z]=f.useState(null),[E,H]=f.useState(!1);f.useEffect(()=>{c&&m&&(g(m.custom_command??m.effective_command??""),z(null))},[c,m]);const w=!!m?.custom_command,B=async()=>{const C=y.trim();if(!C){z("Please enter a dev server command.");return}H(!0),z(null);try{await x.mutateAsync(C),o&&(await Hh(s),p.invalidateQueries({queryKey:["dev-server-status",s]})),d()}catch(_){z(_ instanceof Error?_.message:"Failed to save configuration")}finally{H(!1)}},M=async()=>{H(!0),z(null);try{await x.mutateAsync(null),g(m?.detected_command??"")}catch(C){z(C instanceof Error?C.message:"Failed to clear configuration")}finally{H(!1)}};return n.jsx(ea,{open:c,onOpenChange:C=>!C&&d(),children:n.jsxs(ta,{className:"sm:max-w-lg",children:[n.jsx(aa,{children:n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("div",{className:"p-2 rounded-lg bg-primary/10 text-primary",children:n.jsx(Tu,{size:20})}),n.jsx(na,{children:"Dev Server Configuration"})]})}),n.jsx(ml,{asChild:!0,children:n.jsxs("div",{className:"space-y-4",children:[n.jsx("div",{className:"rounded-lg border-2 border-border bg-muted/50 p-3 text-sm",children:m?.detected_type?n.jsxs("p",{children:["Detected project type: ",n.jsx("strong",{className:"text-foreground",children:m.detected_type}),m.detected_command&&n.jsxs("span",{className:"text-muted-foreground",children:[" — ",m.detected_command]})]}):n.jsx("p",{className:"text-muted-foreground",children:"No project type detected. Enter a custom command below."})}),n.jsxs("div",{className:"space-y-2",children:[n.jsx(_e,{htmlFor:"dev-command",className:"text-foreground",children:"Dev server command"}),n.jsx(it,{id:"dev-command",value:y,onChange:C=>{g(C.target.value),z(null)},placeholder:"npm run dev",onKeyDown:C=>{C.key==="Enter"&&!E&&B()}}),n.jsx("p",{className:"text-xs text-muted-foreground",children:"Allowed runners: npm, npx, pnpm, yarn, python, uvicorn, flask, poetry, cargo, go"})]}),w&&n.jsxs(J,{variant:"outline",size:"sm",onClick:M,disabled:E,className:"gap-1.5",children:[n.jsx(en,{size:14}),"Clear custom command (use auto-detection)"]}),j&&n.jsx("p",{className:"text-sm font-mono text-destructive",children:j})]})}),n.jsxs(Pt,{className:"gap-2 sm:gap-0",children:[n.jsx(J,{variant:"outline",onClick:d,disabled:E,children:"Cancel"}),n.jsx(J,{onClick:B,disabled:E,children:E?n.jsxs(n.Fragment,{children:[n.jsx(ze,{size:16,className:"animate-spin mr-1.5"}),"Saving..."]}):o?"Save & Start":"Save"})]})]})})}function Kj(s){const c=Ve();return Je({mutationFn:()=>Hh(s),onSuccess:()=>{c.invalidateQueries({queryKey:["dev-server-status",s]})}})}function Zj(s){const c=Ve();return Je({mutationFn:()=>R0(s),onSuccess:()=>{c.invalidateQueries({queryKey:["dev-server-status",s]})}})}function Fj({projectName:s,status:c,url:d}){const o=Kj(s),m=Zj(s),[x,p]=f.useState(!1),[y,g]=f.useState(!1),j=o.isPending||m.isPending,z=()=>{m.reset(),o.mutate(void 0,{onError:T=>{T.message?.includes("No dev command available")&&(g(!0),p(!0))}})},E=()=>{o.reset(),m.mutate()},H=()=>{g(!1),p(!0)},w=()=>{p(!1),o.error?.message?.includes("No dev command available")&&o.reset()},B=c==="stopped"||c==="crashed",M=c==="running",C=c==="crashed",_=o.error,R=_&&!_.message?.includes("No dev command available");return n.jsxs("div",{className:"flex items-center gap-2",children:[B?n.jsxs(n.Fragment,{children:[n.jsx(J,{onClick:z,disabled:j,variant:C?"destructive":"outline",size:"sm",title:C?"Dev Server Crashed - Click to Restart":"Start Dev Server","aria-label":C?"Restart Dev Server (crashed)":"Start Dev Server",children:j?n.jsx(ze,{size:18,className:"animate-spin"}):C?n.jsx(oa,{size:18}):n.jsx(Oy,{size:18})}),n.jsx(J,{onClick:H,variant:"ghost",size:"sm",title:"Configure Dev Server","aria-label":"Configure Dev Server",children:n.jsx(Ry,{size:16})})]}):n.jsx(J,{onClick:E,disabled:j,size:"sm",className:"bg-primary text-primary-foreground hover:bg-primary/90",title:"Stop Dev Server","aria-label":"Stop Dev Server",children:j?n.jsx(ze,{size:18,className:"animate-spin"}):n.jsx(kh,{size:18})}),M&&d&&n.jsx(J,{asChild:!0,size:"sm",className:"bg-primary text-primary-foreground hover:bg-primary/90 gap-1",children:n.jsxs("a",{href:d,target:"_blank",rel:"noopener noreferrer",title:`Open ${d} in new tab`,children:[n.jsx("span",{className:"font-mono text-xs",children:d}),n.jsx(Ou,{size:14})]})}),(R||m.error)&&n.jsx("span",{className:"text-xs font-mono text-destructive ml-2",children:String((R?_:m.error)?.message||"Operation failed")}),n.jsx(Xj,{projectName:s,isOpen:x,onClose:w,autoStartOnSave:y})]})}function $j({viewMode:s,onViewModeChange:c}){return n.jsxs("div",{className:"inline-flex rounded-lg border p-1 bg-background",children:[n.jsxs(J,{variant:s==="kanban"?"default":"ghost",size:"sm",onClick:()=>c("kanban"),title:"Kanban View",children:[n.jsx(Uy,{size:16}),"Kanban"]}),n.jsxs(J,{variant:s==="graph"?"default":"ghost",size:"sm",onClick:()=>c("graph"),title:"Dependency Graph View",children:[n.jsx(gl,{size:16}),"Graph"]})]})}var Jj=Ky();const jh=Dp(Jj),er=220,Nh=80;class Wj extends f.Component{constructor(c){super(c),this.state={hasError:!1,error:null}}static getDerivedStateFromError(c){return{hasError:!0,error:c}}componentDidCatch(c,d){console.error("DependencyGraph error:",c,d)}handleReset=()=>{this.setState({hasError:!1,error:null}),this.props.onReset?.()};render(){return this.state.hasError?n.jsx("div",{className:"h-full w-full flex items-center justify-center bg-muted",children:n.jsxs("div",{className:"text-center p-6",children:[n.jsx(oa,{size:48,className:"mx-auto mb-4 text-yellow-500"}),n.jsx("div",{className:"text-foreground font-bold mb-2",children:"Graph rendering error"}),n.jsx("div",{className:"text-sm text-muted-foreground mb-4",children:"The dependency graph encountered an issue."}),n.jsxs(J,{onClick:this.handleReset,className:"gap-2",children:[n.jsx(By,{size:16}),"Reload Graph"]})]})}):this.props.children}}function Ij({data:s}){const c={pending:"bg-yellow-100 border-yellow-300 dark:bg-yellow-900/30 dark:border-yellow-700",in_progress:"bg-cyan-100 border-cyan-300 dark:bg-cyan-900/30 dark:border-cyan-700",done:"bg-green-100 border-green-300 dark:bg-green-900/30 dark:border-green-700",blocked:"bg-red-50 border-red-300 dark:bg-red-900/20 dark:border-red-700",needs_human_input:"bg-amber-100 border-amber-300 dark:bg-amber-900/30 dark:border-amber-700"},d={pending:"text-yellow-900 dark:text-yellow-100",in_progress:"text-cyan-900 dark:text-cyan-100",done:"text-green-900 dark:text-green-100",blocked:"text-red-900 dark:text-red-100",needs_human_input:"text-amber-900 dark:text-amber-100"},o=()=>{switch(s.status){case"done":return n.jsx($t,{size:16,className:d[s.status]});case"in_progress":return n.jsx(ze,{size:16,className:`${d[s.status]} animate-spin`});case"blocked":return n.jsx(oa,{size:16,className:"text-destructive"});case"needs_human_input":return n.jsx(ar,{size:16,className:d[s.status]});default:return n.jsx(dl,{size:16,className:d[s.status]})}};return n.jsxs(n.Fragment,{children:[n.jsx(Fm,{type:"target",position:ul.Left,className:"!bg-border !w-2 !h-2"}),n.jsxs("div",{className:`
93
- px-4 py-3 rounded-lg border-2 cursor-pointer
94
- transition-all hover:shadow-md relative
95
- ${c[s.status]}
96
- `,onClick:s.onClick,style:{minWidth:er-20,maxWidth:er},children:[s.agent&&n.jsx("div",{className:"absolute -top-3 -right-3 z-10",children:n.jsx("div",{className:"rounded-full border-2 border-border bg-background shadow-sm",children:n.jsx(yl,{name:s.agent.name,state:s.agent.state,size:"sm"})})}),n.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[n.jsx(o,{}),n.jsxs("span",{className:`text-xs font-mono ${d[s.status]} opacity-70`,children:["#",s.priority]}),s.agent&&n.jsx("span",{className:`text-xs font-bold ${d[s.status]} ml-auto`,children:s.agent.name})]}),n.jsx("div",{className:`font-bold text-sm ${d[s.status]} truncate`,title:s.name,children:s.name}),n.jsx("div",{className:`text-xs ${d[s.status]} opacity-70 truncate`,title:s.category,children:s.category})]}),n.jsx(Fm,{type:"source",position:ul.Right,className:"!bg-border !w-2 !h-2"})]})}const Pj={feature:Ij};function Sh(s,c,d="LR"){const o=new jh.graphlib.Graph;o.setDefaultEdgeLabel(()=>({}));const m=d==="LR";return o.setGraph({rankdir:d,nodesep:50,ranksep:100,marginx:50,marginy:50}),s.forEach(p=>{o.setNode(p.id,{width:er,height:Nh})}),c.forEach(p=>{o.setEdge(p.source,p.target)}),jh.layout(o),{nodes:s.map(p=>{const y=o.node(p.id);return{...p,position:{x:y.x-er/2,y:y.y-Nh/2},sourcePosition:m?ul.Right:ul.Bottom,targetPosition:m?ul.Left:ul.Top}}),edges:c}}function e1({graphData:s,onNodeClick:c,activeAgents:d=[]}){const[o,m]=f.useState("LR"),x=f.useRef(c);f.useEffect(()=>{x.current=c},[c]);const p=f.useCallback(T=>{x.current?.(T)},[]),y=f.useMemo(()=>{const T=new Map;for(const N of d){const L=N.featureIds||[N.featureId];for(const I of L)T.set(I,{name:N.agentName,state:N.state})}return T},[d]),g=f.useMemo(()=>{const T=s.nodes.map(L=>({id:String(L.id),type:"feature",position:{x:0,y:0},data:{...L,onClick:()=>p(L.id),agent:y.get(L.id)}})),N=s.edges.map((L,I)=>({id:`e${L.source}-${L.target}-${I}`,source:String(L.source),target:String(L.target),type:"smoothstep",animated:!1,style:{stroke:"#a1a1aa",strokeWidth:2},markerEnd:{type:Zy.ArrowClosed,color:"#a1a1aa"}}));return Sh(T,N,o)},[s,o,p,y]),[j,z,E]=Fy(g.nodes),[H,w,B]=$y(g.edges),M=f.useRef(""),C=f.useRef(o);f.useEffect(()=>{const T=Array.from(y.entries()).map(([L,I])=>({featureId:L,agentName:I.name,agentState:I.state})),N=JSON.stringify({nodes:s.nodes.map(L=>({id:L.id,status:L.status})),edges:s.edges,agents:T});if(N!==M.current||o!==C.current){M.current=N,C.current=o;const{nodes:L,edges:I}=Sh(g.nodes,g.edges,o);z(L),w(I)}},[s,o,z,w,g,y]);const _=f.useCallback(T=>{m(T)},[]),R=f.useCallback(T=>{switch(T.data.status){case"done":return"#22c55e";case"in_progress":return"#06b6d4";case"blocked":return"#ef4444";case"needs_human_input":return"#f59e0b";default:return"#eab308"}},[]);return s.nodes.length===0?n.jsx("div",{className:"h-full w-full flex items-center justify-center bg-muted",children:n.jsxs("div",{className:"text-center",children:[n.jsx("div",{className:"text-muted-foreground mb-2",children:"No features to display"}),n.jsx("div",{className:"text-sm text-muted-foreground/70",children:"Create features to see the dependency graph"})]})}):n.jsxs("div",{className:"h-full w-full relative bg-background",children:[n.jsxs("div",{className:"absolute top-4 left-4 z-10 flex gap-2",children:[n.jsx(J,{variant:o==="LR"?"default":"outline",size:"sm",onClick:()=>_("LR"),children:"Horizontal"}),n.jsx(J,{variant:o==="TB"?"default":"outline",size:"sm",onClick:()=>_("TB"),children:"Vertical"})]}),n.jsx(Oe,{className:"absolute top-4 right-4 z-10",children:n.jsxs(qe,{className:"p-3",children:[n.jsx("div",{className:"text-xs font-bold mb-2",children:"Status"}),n.jsxs("div",{className:"space-y-1.5",children:[n.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[n.jsx("div",{className:"w-3 h-3 rounded bg-yellow-400 border border-yellow-500"}),n.jsx("span",{children:"Pending"})]}),n.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[n.jsx("div",{className:"w-3 h-3 rounded bg-cyan-400 border border-cyan-500"}),n.jsx("span",{children:"In Progress"})]}),n.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[n.jsx("div",{className:"w-3 h-3 rounded bg-green-400 border border-green-500"}),n.jsx("span",{children:"Done"})]}),n.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[n.jsx("div",{className:"w-3 h-3 rounded bg-red-100 border border-red-400"}),n.jsx("span",{children:"Blocked"})]})]})]})}),n.jsxs(Jy,{nodes:j,edges:H,onNodesChange:E,onEdgesChange:B,nodeTypes:Pj,connectionMode:Wy.Loose,fitView:!0,fitViewOptions:{padding:.2},attributionPosition:"bottom-left",minZoom:.1,maxZoom:2,children:[n.jsx(Iy,{color:"#d4d4d8",gap:20,size:1}),n.jsx(Py,{className:"!bg-card !border !border-border !rounded-lg !shadow-sm",showInteractive:!1}),n.jsx(e0,{nodeColor:R,className:"!bg-card !border !border-border !rounded-lg !shadow-sm",maskColor:"rgba(0, 0, 0, 0.1)"})]})]})}function t1({graphData:s,onNodeClick:c,activeAgents:d}){const[o,m]=f.useState(0),x=f.useCallback(()=>{m(p=>p+1)},[]);return n.jsx(Wj,{onReset:x,children:n.jsx(e1,{graphData:s,onNodeClick:c,activeAgents:d})},o)}const a1=[{key:"?",description:"Show keyboard shortcuts"},{key:"D",description:"Toggle debug panel"},{key:"T",description:"Toggle terminal tab"},{key:"N",description:"Add new feature",context:"with project"},{key:"E",description:"Expand project with AI",context:"with spec & features"},{key:"A",description:"Toggle AI assistant",context:"with project"},{key:"G",description:"Toggle Kanban/Graph view",context:"with project"},{key:",",description:"Open settings"},{key:"Esc",description:"Close modal/panel"}];function n1({isOpen:s,onClose:c}){const d=f.useCallback(o=>{(o.key==="Escape"||o.key==="?")&&(o.preventDefault(),c())},[c]);return f.useEffect(()=>{if(s)return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[s,d]),n.jsx(ea,{open:s,onOpenChange:o=>!o&&c(),children:n.jsxs(ta,{className:"sm:max-w-md",children:[n.jsx(aa,{children:n.jsxs(na,{className:"flex items-center gap-2",children:[n.jsx(Ly,{size:20,className:"text-primary"}),"Keyboard Shortcuts"]})}),n.jsx("ul",{className:"space-y-1",children:a1.map(o=>n.jsxs("li",{className:"flex items-center justify-between py-2 border-b border-border/50 last:border-0",children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("kbd",{className:"px-2 py-1 text-xs font-mono bg-muted rounded border border-border min-w-[2rem] text-center",children:o.key}),n.jsx("span",{className:"text-sm",children:o.description})]}),o.context&&n.jsx(we,{variant:"secondary",className:"text-xs",children:o.context})]},o.key))}),n.jsx("p",{className:"text-xs text-muted-foreground text-center pt-2",children:"Press ? or Esc to close"})]})})}var l1=Symbol("radix.slottable");function s1(s){const c=({children:d})=>n.jsx(n.Fragment,{children:d});return c.displayName=`${s}.Slottable`,c.__radixId=l1,c}var i1=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),r1="VisuallyHidden",Wh=f.forwardRef((s,c)=>n.jsx(Th.span,{...s,ref:c,style:{...i1,...s.style}}));Wh.displayName=r1;var c1=Wh,[sr]=iy("Tooltip",[Dh]),ir=Dh(),Ih="TooltipProvider",u1=700,Au="tooltip.open",[o1,Gu]=sr(Ih),Ph=s=>{const{__scopeTooltip:c,delayDuration:d=u1,skipDelayDuration:o=300,disableHoverableContent:m=!1,children:x}=s,p=f.useRef(!0),y=f.useRef(!1),g=f.useRef(0);return f.useEffect(()=>{const j=g.current;return()=>window.clearTimeout(j)},[]),n.jsx(o1,{scope:c,isOpenDelayedRef:p,delayDuration:d,onOpen:f.useCallback(()=>{window.clearTimeout(g.current),p.current=!1},[]),onClose:f.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>p.current=!0,o)},[o]),isPointerInTransitRef:y,onPointerInTransitChange:f.useCallback(j=>{y.current=j},[]),disableHoverableContent:m,children:x})};Ph.displayName=Ih;var ps="Tooltip",[d1,bs]=sr(ps),ex=s=>{const{__scopeTooltip:c,children:d,open:o,defaultOpen:m,onOpenChange:x,disableHoverableContent:p,delayDuration:y}=s,g=Gu(ps,s.__scopeTooltip),j=ir(c),[z,E]=f.useState(null),H=Ip(),w=f.useRef(0),B=p??g.disableHoverableContent,M=y??g.delayDuration,C=f.useRef(!1),[_,R]=Pp({prop:o,defaultProp:m??!1,onChange:F=>{F?(g.onOpen(),document.dispatchEvent(new CustomEvent(Au))):g.onClose(),x?.(F)},caller:ps}),T=f.useMemo(()=>_?C.current?"delayed-open":"instant-open":"closed",[_]),N=f.useCallback(()=>{window.clearTimeout(w.current),w.current=0,C.current=!1,R(!0)},[R]),L=f.useCallback(()=>{window.clearTimeout(w.current),w.current=0,R(!1)},[R]),I=f.useCallback(()=>{window.clearTimeout(w.current),w.current=window.setTimeout(()=>{C.current=!0,R(!0),w.current=0},M)},[M,R]);return f.useEffect(()=>()=>{w.current&&(window.clearTimeout(w.current),w.current=0)},[]),n.jsx(ey,{...j,children:n.jsx(d1,{scope:c,contentId:H,open:_,stateAttribute:T,trigger:z,onTriggerChange:E,onTriggerEnter:f.useCallback(()=>{g.isOpenDelayedRef.current?I():N()},[g.isOpenDelayedRef,I,N]),onTriggerLeave:f.useCallback(()=>{B?L():(window.clearTimeout(w.current),w.current=0)},[L,B]),onOpen:N,onClose:L,disableHoverableContent:B,children:d})})};ex.displayName=ps;var Du="TooltipTrigger",tx=f.forwardRef((s,c)=>{const{__scopeTooltip:d,...o}=s,m=bs(Du,d),x=Gu(Du,d),p=ir(d),y=f.useRef(null),g=Eh(c,y,m.onTriggerChange),j=f.useRef(!1),z=f.useRef(!1),E=f.useCallback(()=>j.current=!1,[]);return f.useEffect(()=>()=>document.removeEventListener("pointerup",E),[E]),n.jsx(ty,{asChild:!0,...p,children:n.jsx(Th.button,{"aria-describedby":m.open?m.contentId:void 0,"data-state":m.stateAttribute,...o,ref:g,onPointerMove:cl(s.onPointerMove,H=>{H.pointerType!=="touch"&&!z.current&&!x.isPointerInTransitRef.current&&(m.onTriggerEnter(),z.current=!0)}),onPointerLeave:cl(s.onPointerLeave,()=>{m.onTriggerLeave(),z.current=!1}),onPointerDown:cl(s.onPointerDown,()=>{m.open&&m.onClose(),j.current=!0,document.addEventListener("pointerup",E,{once:!0})}),onFocus:cl(s.onFocus,()=>{j.current||m.onOpen()}),onBlur:cl(s.onBlur,m.onClose),onClick:cl(s.onClick,m.onClose)})})});tx.displayName=Du;var Qu="TooltipPortal",[f1,m1]=sr(Qu,{forceMount:void 0}),ax=s=>{const{__scopeTooltip:c,forceMount:d,children:o,container:m}=s,x=bs(Qu,c);return n.jsx(f1,{scope:c,forceMount:d,children:n.jsx(Ah,{present:d||x.open,children:n.jsx(ay,{asChild:!0,container:m,children:o})})})};ax.displayName=Qu;var pl="TooltipContent",nx=f.forwardRef((s,c)=>{const d=m1(pl,s.__scopeTooltip),{forceMount:o=d.forceMount,side:m="top",...x}=s,p=bs(pl,s.__scopeTooltip);return n.jsx(Ah,{present:o||p.open,children:p.disableHoverableContent?n.jsx(lx,{side:m,...x,ref:c}):n.jsx(h1,{side:m,...x,ref:c})})}),h1=f.forwardRef((s,c)=>{const d=bs(pl,s.__scopeTooltip),o=Gu(pl,s.__scopeTooltip),m=f.useRef(null),x=Eh(c,m),[p,y]=f.useState(null),{trigger:g,onClose:j}=d,z=m.current,{onPointerInTransitChange:E}=o,H=f.useCallback(()=>{y(null),E(!1)},[E]),w=f.useCallback((B,M)=>{const C=B.currentTarget,_={x:B.clientX,y:B.clientY},R=y1(_,C.getBoundingClientRect()),T=v1(_,R),N=b1(M.getBoundingClientRect()),L=N1([...T,...N]);y(L),E(!0)},[E]);return f.useEffect(()=>()=>H(),[H]),f.useEffect(()=>{if(g&&z){const B=C=>w(C,z),M=C=>w(C,g);return g.addEventListener("pointerleave",B),z.addEventListener("pointerleave",M),()=>{g.removeEventListener("pointerleave",B),z.removeEventListener("pointerleave",M)}}},[g,z,w,H]),f.useEffect(()=>{if(p){const B=M=>{const C=M.target,_={x:M.clientX,y:M.clientY},R=g?.contains(C)||z?.contains(C),T=!j1(_,p);R?H():T&&(H(),j())};return document.addEventListener("pointermove",B),()=>document.removeEventListener("pointermove",B)}},[g,z,p,j,H]),n.jsx(lx,{...s,ref:x})}),[x1,g1]=sr(ps,{isInside:!1}),p1=s1("TooltipContent"),lx=f.forwardRef((s,c)=>{const{__scopeTooltip:d,children:o,"aria-label":m,onEscapeKeyDown:x,onPointerDownOutside:p,...y}=s,g=bs(pl,d),j=ir(d),{onClose:z}=g;return f.useEffect(()=>(document.addEventListener(Au,z),()=>document.removeEventListener(Au,z)),[z]),f.useEffect(()=>{if(g.trigger){const E=H=>{H.target?.contains(g.trigger)&&z()};return window.addEventListener("scroll",E,{capture:!0}),()=>window.removeEventListener("scroll",E,{capture:!0})}},[g.trigger,z]),n.jsx(ly,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:x,onPointerDownOutside:p,onFocusOutside:E=>E.preventDefault(),onDismiss:z,children:n.jsxs(sy,{"data-state":g.stateAttribute,...j,...y,ref:c,style:{...y.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[n.jsx(p1,{children:o}),n.jsx(x1,{scope:d,isInside:!0,children:n.jsx(c1,{id:g.contentId,role:"tooltip",children:m||o})})]})})});nx.displayName=pl;var sx="TooltipArrow",ix=f.forwardRef((s,c)=>{const{__scopeTooltip:d,...o}=s,m=ir(d);return g1(sx,d).isInside?null:n.jsx(ny,{...m,...o,ref:c})});ix.displayName=sx;function y1(s,c){const d=Math.abs(c.top-s.y),o=Math.abs(c.bottom-s.y),m=Math.abs(c.right-s.x),x=Math.abs(c.left-s.x);switch(Math.min(d,o,m,x)){case x:return"left";case m:return"right";case d:return"top";case o:return"bottom";default:throw new Error("unreachable")}}function v1(s,c,d=5){const o=[];switch(c){case"top":o.push({x:s.x-d,y:s.y+d},{x:s.x+d,y:s.y+d});break;case"bottom":o.push({x:s.x-d,y:s.y-d},{x:s.x+d,y:s.y-d});break;case"left":o.push({x:s.x+d,y:s.y-d},{x:s.x+d,y:s.y+d});break;case"right":o.push({x:s.x-d,y:s.y-d},{x:s.x-d,y:s.y+d});break}return o}function b1(s){const{top:c,right:d,bottom:o,left:m}=s;return[{x:m,y:c},{x:d,y:c},{x:d,y:o},{x:m,y:o}]}function j1(s,c){const{x:d,y:o}=s;let m=!1;for(let x=0,p=c.length-1;x<c.length;p=x++){const y=c[x],g=c[p],j=y.x,z=y.y,E=g.x,H=g.y;z>o!=H>o&&d<(E-j)*(o-z)/(H-z)+j&&(m=!m)}return m}function N1(s){const c=s.slice();return c.sort((d,o)=>d.x<o.x?-1:d.x>o.x?1:d.y<o.y?-1:d.y>o.y?1:0),S1(c)}function S1(s){if(s.length<=1)return s.slice();const c=[];for(let o=0;o<s.length;o++){const m=s[o];for(;c.length>=2;){const x=c[c.length-1],p=c[c.length-2];if((x.x-p.x)*(m.y-p.y)>=(x.y-p.y)*(m.x-p.x))c.pop();else break}c.push(m)}c.pop();const d=[];for(let o=s.length-1;o>=0;o--){const m=s[o];for(;d.length>=2;){const x=d[d.length-1],p=d[d.length-2];if((x.x-p.x)*(m.y-p.y)>=(x.y-p.y)*(m.x-p.x))d.pop();else break}d.push(m)}return d.pop(),c.length===1&&d.length===1&&c[0].x===d[0].x&&c[0].y===d[0].y?c:c.concat(d)}var C1=Ph,w1=ex,z1=tx,T1=ax,E1=nx,A1=ix;function D1({delayDuration:s=250,...c}){return n.jsx(C1,{"data-slot":"tooltip-provider",delayDuration:s,...c})}function ms({...s}){return n.jsx(w1,{"data-slot":"tooltip",...s})}function hs({...s}){return n.jsx(z1,{"data-slot":"tooltip-trigger",...s})}function xs({className:s,side:c="bottom",align:d="center",sideOffset:o=8,children:m,...x}){return n.jsx(T1,{children:n.jsxs(E1,{"data-slot":"tooltip-content",side:c,align:d,sideOffset:o,className:Re("z-50 overflow-hidden rounded-md border bg-neutral-900 px-3 py-2 text-sm text-white shadow-md leading-tight min-h-7","data-[state=delayed-open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=delayed-open]:fade-in-0 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...x,children:[m,n.jsx(A1,{"data-slot":"tooltip-arrow",className:"fill-neutral-900"})]})})}function _1({themes:s,currentTheme:c,onThemeChange:d}){const[o,m]=f.useState(!1),[x,p]=f.useState(null),y=f.useRef(null),g=f.useRef(null);f.useEffect(()=>{const w=B=>{y.current&&!y.current.contains(B.target)&&(m(!1),p(null))};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[]),f.useEffect(()=>{if(x){const w=document.documentElement;w.classList.remove("theme-claude","theme-neo-brutalism","theme-retro-arcade","theme-aurora","theme-business"),x==="claude"?w.classList.add("theme-claude"):x==="neo-brutalism"?w.classList.add("theme-neo-brutalism"):x==="retro-arcade"?w.classList.add("theme-retro-arcade"):x==="aurora"?w.classList.add("theme-aurora"):x==="business"&&w.classList.add("theme-business")}return()=>{if(x){const w=document.documentElement;w.classList.remove("theme-claude","theme-neo-brutalism","theme-retro-arcade","theme-aurora","theme-business"),c==="claude"?w.classList.add("theme-claude"):c==="neo-brutalism"?w.classList.add("theme-neo-brutalism"):c==="retro-arcade"?w.classList.add("theme-retro-arcade"):c==="aurora"?w.classList.add("theme-aurora"):c==="business"&&w.classList.add("theme-business")}}},[x,c]);const j=()=>{g.current&&clearTimeout(g.current),m(!0)},z=()=>{g.current=setTimeout(()=>{m(!1),p(null)},150)},E=w=>{p(w)},H=w=>{d(w),p(null),m(!1)};return n.jsxs("div",{ref:y,className:"relative",onMouseEnter:j,onMouseLeave:z,children:[n.jsxs(ms,{children:[n.jsx(hs,{asChild:!0,children:n.jsx(J,{variant:"outline",size:"sm","aria-label":"Select theme","aria-expanded":o,"aria-haspopup":"true",children:n.jsx(Hy,{size:18})})}),n.jsx(xs,{children:"Theme"})]}),o&&n.jsx("div",{className:"absolute right-0 top-full mt-2 w-56 bg-popover border-2 border-border rounded-lg shadow-lg z-50 animate-slide-in-down overflow-hidden",role:"menu","aria-orientation":"vertical",children:n.jsx("div",{className:"p-2 space-y-1",children:s.map(w=>n.jsxs("button",{onClick:()=>H(w.id),onMouseEnter:()=>E(w.id),onMouseLeave:()=>p(null),className:`w-full flex items-center gap-3 px-3 py-2 rounded-md text-left transition-colors ${c===w.id?"bg-primary/10 text-foreground":"hover:bg-muted text-foreground"}`,role:"menuitem",children:[n.jsxs("div",{className:"flex gap-0.5 shrink-0",children:[n.jsx("div",{className:"w-4 h-4 rounded-sm border border-border/50",style:{backgroundColor:w.previewColors.background}}),n.jsx("div",{className:"w-4 h-4 rounded-sm border border-border/50",style:{backgroundColor:w.previewColors.primary}}),n.jsx("div",{className:"w-4 h-4 rounded-sm border border-border/50",style:{backgroundColor:w.previewColors.accent}})]}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"font-medium text-sm",children:w.name}),n.jsx("div",{className:"text-xs text-muted-foreground truncate",children:w.description})]}),c===w.id&&n.jsx(ca,{size:16,className:"text-primary shrink-0"})]},w.id))})})]})}function M1({isOpen:s,projectName:c,onClose:d,onResetComplete:o}){const[m,x]=f.useState("quick"),p=J0(c),y=async()=>{const j=m==="full";try{await p.mutateAsync(j),o?.(j),d()}catch{}},g=()=>{p.isPending||(p.reset(),x("quick"),d())};return n.jsx(ea,{open:s,onOpenChange:j=>!j&&g(),children:n.jsxs(ta,{className:"sm:max-w-md",children:[n.jsxs(aa,{children:[n.jsxs(na,{className:"flex items-center gap-2",children:[n.jsx(en,{size:20}),"Reset Project"]}),n.jsxs(ml,{children:["Reset ",n.jsx("span",{className:"font-semibold",children:c})," to start fresh"]})]}),n.jsxs("div",{className:"space-y-4 py-4",children:[n.jsxs("div",{className:"flex rounded-lg border-2 border-border overflow-hidden",children:[n.jsxs("button",{onClick:()=>x("quick"),disabled:p.isPending,className:`flex-1 py-3 px-4 text-sm font-medium transition-colors flex items-center justify-center gap-2 ${m==="quick"?"bg-primary text-primary-foreground":"bg-background text-foreground hover:bg-muted"} ${p.isPending?"opacity-50 cursor-not-allowed":""}`,children:[n.jsx(en,{size:16}),"Quick Reset"]}),n.jsxs("button",{onClick:()=>x("full"),disabled:p.isPending,className:`flex-1 py-3 px-4 text-sm font-medium transition-colors flex items-center justify-center gap-2 ${m==="full"?"bg-destructive text-destructive-foreground":"bg-background text-foreground hover:bg-muted"} ${p.isPending?"opacity-50 cursor-not-allowed":""}`,children:[n.jsx(an,{size:16}),"Full Reset"]})]}),n.jsxs(rt,{variant:m==="full"?"destructive":"default",className:"border-2",children:[n.jsx(oa,{className:"h-4 w-4"}),n.jsxs(ct,{children:[n.jsx("div",{className:"font-semibold mb-2",children:"What will be deleted:"}),n.jsxs("ul",{className:"list-none space-y-1 text-sm",children:[n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(tt,{size:14,className:"text-destructive"}),"All features and progress"]}),n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(tt,{size:14,className:"text-destructive"}),"Assistant chat history"]}),n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(tt,{size:14,className:"text-destructive"}),"Agent settings"]}),m==="full"&&n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(tt,{size:14,className:"text-destructive"}),"App spec and prompts"]})]})]})]}),n.jsxs("div",{className:"bg-muted/50 rounded-lg border-2 border-border p-3",children:[n.jsx("div",{className:"font-semibold mb-2 text-sm",children:"What will be preserved:"}),n.jsx("ul",{className:"list-none space-y-1 text-sm text-muted-foreground",children:m==="quick"?n.jsxs(n.Fragment,{children:[n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(ca,{size:14,className:"text-green-600"}),"App spec and prompts"]}),n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(ca,{size:14,className:"text-green-600"}),"Project code and files"]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("li",{className:"flex items-center gap-2",children:[n.jsx(ca,{size:14,className:"text-green-600"}),"Project code and files"]}),n.jsxs("li",{className:"flex items-center gap-2 text-muted-foreground/70",children:[n.jsx(oa,{size:14}),"Setup wizard will appear"]})]})})]}),p.isError&&n.jsx(rt,{variant:"destructive",children:n.jsx(ct,{children:p.error instanceof Error?p.error.message:"Failed to reset project. Please try again."})})]}),n.jsxs(Pt,{className:"gap-2",children:[n.jsx(J,{variant:"outline",onClick:g,disabled:p.isPending,children:"Cancel"}),n.jsx(J,{variant:m==="full"?"destructive":"default",onClick:y,disabled:p.isPending,children:p.isPending?n.jsxs(n.Fragment,{children:[n.jsx(ze,{className:"animate-spin mr-2",size:16}),"Resetting..."]}):n.jsx(n.Fragment,{children:m==="quick"?"Quick Reset":"Full Reset"})})]})]})})}function k1({projectName:s,projectPath:c,onCreateWithClaude:d,onEditManually:o}){return n.jsx("div",{className:"max-w-2xl mx-auto mt-8",children:n.jsxs(Oe,{className:"border-2",children:[n.jsxs(lr,{className:"text-center",children:[n.jsx(Hu,{className:"text-2xl font-display",children:"Project Setup Required"}),n.jsxs(Av,{className:"text-base",children:[n.jsx("span",{className:"font-semibold",children:s})," needs an app spec to get started"]}),c&&n.jsxs("div",{className:"flex items-center justify-center gap-2 text-sm text-muted-foreground mt-2",children:[n.jsx(Fi,{size:14}),n.jsx("code",{className:"bg-muted px-2 py-0.5 rounded text-xs",children:c})]})]}),n.jsxs(qe,{className:"space-y-4",children:[n.jsx("p",{className:"text-center text-muted-foreground",children:"Choose how you want to create your app specification:"}),n.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[n.jsx(Oe,{className:"cursor-pointer border-2 transition-all hover:border-primary hover:shadow-md",onClick:d,children:n.jsxs(qe,{className:"pt-6 text-center space-y-3",children:[n.jsx("div",{className:"w-12 h-12 mx-auto bg-primary/10 rounded-full flex items-center justify-center",children:n.jsx(Sn,{className:"text-primary",size:24})}),n.jsx("h3",{className:"font-semibold text-lg",children:"Create with Claude"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Describe your app idea and Claude will help create a detailed specification"}),n.jsxs(J,{className:"w-full",children:[n.jsx(Sn,{size:16,className:"mr-2"}),"Start Chat"]})]})}),n.jsx(Oe,{className:"cursor-pointer border-2 transition-all hover:border-primary hover:shadow-md",onClick:o,children:n.jsxs(qe,{className:"pt-6 text-center space-y-3",children:[n.jsx("div",{className:"w-12 h-12 mx-auto bg-muted rounded-full flex items-center justify-center",children:n.jsx(zu,{className:"text-muted-foreground",size:24})}),n.jsx("h3",{className:"font-semibold text-lg",children:"Edit Templates Manually"}),n.jsx("p",{className:"text-sm text-muted-foreground",children:"Create the prompts directory and edit template files yourself"}),n.jsxs(J,{variant:"outline",className:"w-full",children:[n.jsx(zu,{size:16,className:"mr-2"}),"View Templates"]})]})})]}),n.jsx("p",{className:"text-center text-xs text-muted-foreground pt-4",children:"The app spec tells the agent what to build. It includes the application name, description, tech stack, and feature requirements."})]})]})})}const wu="autoforge-selected-project",Ch="autoforge-view-mode",O1=48;function R1(){const[s,c]=f.useState(()=>{try{return localStorage.getItem(wu)}catch{return null}}),[d,o]=f.useState(!1),[m,x]=f.useState(!1),[p,y]=f.useState(null),[g,j]=f.useState(!0),[z,E]=f.useState(!1),[H,w]=f.useState(288),[B,M]=f.useState("agent"),[C,_]=f.useState(!1),[R,T]=f.useState(!1),[N,L]=f.useState(!1),[I,F]=f.useState(!1),[ae,Y]=f.useState(!1),[le,W]=f.useState(!1),[q,P]=f.useState("idle"),[Z,G]=f.useState(null),[v,D]=f.useState(()=>{try{return localStorage.getItem(Ch)==="graph"?"graph":"kanban"}catch{return"kanban"}}),ee=Ve(),{data:te,isLoading:ue}=Z0(),{data:se}=qh(s),{data:me}=Bu();nv(s);const X=yv(s),{theme:fe,setTheme:he,darkMode:Xe,toggleDarkMode:yt,themes:vt}=Yh(),ut=te?.find(De=>De.name===s),xt=ut?.has_spec??!0,{data:Tt}=pt({queryKey:["dependencyGraph",s],queryFn:()=>y0(s),enabled:!!s&&v==="graph",refetchInterval:5e3});f.useEffect(()=>{try{localStorage.setItem(Ch,v)}catch{}},[v]),jv(se),wv(se,s);const ne=f.useCallback(De=>{c(De);try{De?localStorage.setItem(wu,De):localStorage.removeItem(wu)}catch{}},[]),oe=f.useCallback(De=>{const Et=[...se?.pending??[],...se?.in_progress??[],...se?.done??[],...se?.needs_human_input??[]].find(js=>js.id===De);Et&&y(Et)},[se]);f.useEffect(()=>{s&&te&&!te.some(De=>De.name===s)&&ne(null)},[s,te,ne]),f.useEffect(()=>{const De=xe=>{xe.target instanceof HTMLInputElement||xe.target instanceof HTMLTextAreaElement||((xe.key==="d"||xe.key==="D")&&(xe.preventDefault(),E(Et=>!Et)),(xe.key==="t"||xe.key==="T")&&(xe.preventDefault(),z?B==="terminal"?E(!1):M("terminal"):(E(!0),M("terminal"))),(xe.key==="n"||xe.key==="N")&&s&&(xe.preventDefault(),o(!0)),(xe.key==="e"||xe.key==="E")&&s&&xt&&se&&se.pending.length+se.in_progress.length+se.done.length+(se.needs_human_input?.length||0)>0&&(xe.preventDefault(),x(!0)),(xe.key==="a"||xe.key==="A")&&s&&!I&&(xe.preventDefault(),_(Et=>!Et)),xe.key===","&&(xe.preventDefault(),T(!0)),(xe.key==="g"||xe.key==="G")&&s&&(xe.preventDefault(),D(Et=>Et==="kanban"?"graph":"kanban")),xe.key==="?"&&(xe.preventDefault(),L(!0)),(xe.key==="r"||xe.key==="R")&&s&&!["running","pausing","paused_graceful"].includes(X.agentStatus)&&(xe.preventDefault(),Y(!0)),xe.key==="Escape"&&(N?L(!1):ae?Y(!1):m?x(!1):R?T(!1):C?_(!1):d?o(!1):p?y(null):z&&E(!1)))};return window.addEventListener("keydown",De),()=>window.removeEventListener("keydown",De)},[s,d,m,p,z,B,C,se,R,N,I,v,ae,X.agentStatus,xt]);const je=X.progress.total>0?X.progress:{passing:se?.done.length??0,total:(se?.pending.length??0)+(se?.in_progress.length??0)+(se?.done.length??0)+(se?.needs_human_input?.length??0),percentage:0};return je.total>0&&je.percentage===0&&(je.percentage=Math.round(je.passing/je.total*100*10)/10),g?n.jsxs("div",{className:"min-h-screen bg-background",children:[n.jsx("header",{className:"sticky top-0 z-50 bg-card/80 backdrop-blur-md text-foreground border-b-2 border-border",children:n.jsx("div",{className:"max-w-7xl mx-auto px-4 py-3",children:n.jsxs(D1,{children:[n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[n.jsx("img",{src:"/logo.png",alt:"AutoForge",className:"h-9 w-9 rounded-full"}),n.jsx("h1",{className:"font-display text-2xl font-bold tracking-tight uppercase hidden md:block",children:"AutoForge"})]}),n.jsx(Fv,{projects:te??[],selectedProject:s,onSelectProject:ne,isLoading:ue,onSpecCreatingChange:F}),n.jsx("div",{className:"flex-1"}),s&&me?.ollama_mode&&n.jsxs("div",{className:"hidden sm:flex items-center gap-1.5 px-2 py-1 bg-card rounded border-2 border-border shadow-sm",title:"Using Ollama local models",children:[n.jsx("img",{src:"/ollama.png",alt:"Ollama",className:"w-5 h-5"}),n.jsx("span",{className:"text-xs font-bold text-foreground",children:"Ollama"})]}),s&&me?.glm_mode&&n.jsx(we,{className:"hidden sm:inline-flex bg-purple-500 text-white hover:bg-purple-600",title:"Using GLM API",children:"GLM"}),n.jsxs(ms,{children:[n.jsx(hs,{asChild:!0,children:n.jsx(J,{onClick:()=>window.open("https://autoforge.cc","_blank"),variant:"outline",size:"sm","aria-label":"Open Documentation",children:n.jsx(qy,{size:18})})}),n.jsx(xs,{children:"Docs"})]}),n.jsx(_1,{themes:vt,currentTheme:fe,onThemeChange:he}),n.jsxs(ms,{children:[n.jsx(hs,{asChild:!0,children:n.jsx(J,{onClick:yt,variant:"outline",size:"sm","aria-label":"Toggle dark mode",children:Xe?n.jsx(Bh,{size:18}):n.jsx(Lh,{size:18})})}),n.jsx(xs,{children:"Toggle theme"})]})]}),s&&n.jsxs("div",{className:"flex items-center gap-3 mt-2 pt-2 border-t border-border/50",children:[n.jsx(Yb,{projectName:s,status:X.agentStatus,defaultConcurrency:ut?.default_concurrency}),n.jsx(Fj,{projectName:s,status:X.devServerStatus,url:X.devServerUrl}),n.jsx("div",{className:"flex-1"}),n.jsxs(ms,{children:[n.jsx(hs,{asChild:!0,children:n.jsx(J,{onClick:()=>T(!0),variant:"outline",size:"sm","aria-label":"Open Settings",children:n.jsx(Gy,{size:18})})}),n.jsx(xs,{children:"Settings (,)"})]}),n.jsxs(ms,{children:[n.jsx(hs,{asChild:!0,children:n.jsx(J,{onClick:()=>Y(!0),variant:"outline",size:"sm","aria-label":"Reset Project",disabled:["running","pausing","paused_graceful"].includes(X.agentStatus),children:n.jsx(en,{size:18})})}),n.jsx(xs,{children:"Reset (R)"})]})]})]})})}),n.jsx("main",{className:"max-w-7xl mx-auto px-4 py-8",style:{paddingBottom:z?H+32:O1},children:s?xt?n.jsxs("div",{className:"space-y-8",children:[n.jsx(Zb,{passing:je.passing,total:je.total,percentage:je.percentage,isConnected:X.isConnected,logs:X.activeAgents.length===0?X.logs:void 0,agentStatus:X.activeAgents.length===0?X.agentStatus:void 0}),n.jsx(Sj,{agents:X.activeAgents,orchestratorStatus:X.orchestratorStatus,recentActivity:X.recentActivity,getAgentLogs:X.getAgentLogs,browserScreenshots:X.browserScreenshots}),se&&se.pending.length===0&&se.in_progress.length===0&&se.done.length===0&&(se.needs_human_input?.length||0)===0&&X.agentStatus==="running"&&n.jsx(Oe,{className:"p-8 text-center",children:n.jsxs(qe,{className:"p-0",children:[n.jsx(ze,{size:32,className:"animate-spin mx-auto mb-4 text-primary"}),n.jsx("h3",{className:"font-display font-bold text-xl mb-2",children:"Initializing Features..."}),n.jsx("p",{className:"text-muted-foreground",children:"The agent is reading your spec and creating features. This may take a moment."})]})}),se&&se.pending.length+se.in_progress.length+se.done.length+(se.needs_human_input?.length||0)>0&&n.jsx("div",{className:"flex justify-center",children:n.jsx($j,{viewMode:v,onViewModeChange:D})}),v==="kanban"?n.jsx(Eb,{features:se,onFeatureClick:y,onAddFeature:()=>o(!0),onExpandProject:()=>x(!0),activeAgents:X.activeAgents,onCreateSpec:()=>W(!0),hasSpec:xt}):n.jsx(Oe,{className:"overflow-hidden",style:{height:"600px"},children:Tt?n.jsx(t1,{graphData:Tt,onNodeClick:oe,activeAgents:X.activeAgents}):n.jsx("div",{className:"h-full flex items-center justify-center",children:n.jsx(ze,{size:32,className:"animate-spin text-primary"})})})]}):n.jsx(k1,{projectName:s,projectPath:ut?.path,onCreateWithClaude:()=>W(!0),onEditManually:()=>{E(!0)}}):n.jsxs("div",{className:"text-center mt-12",children:[n.jsx("h2",{className:"font-display text-2xl font-bold mb-2",children:"Welcome to AutoForge"}),n.jsx("p",{className:"text-muted-foreground mb-4",children:"Select a project from the dropdown above or create a new one to get started."})]})}),d&&s&&n.jsx($b,{projectName:s,onClose:()=>o(!1)}),p&&s&&n.jsx(Pb,{feature:p,projectName:s,onClose:()=>y(null)}),m&&s&&xt&&n.jsx(Qj,{isOpen:m,projectName:s,onClose:()=>x(!1),onFeaturesAdded:()=>{ee.invalidateQueries({queryKey:["features",s]})}}),le&&s&&n.jsx("div",{className:"fixed inset-0 z-50 bg-background",children:n.jsx(Kh,{projectName:s,onComplete:async(De,xe)=>{P("starting");try{await Uu(s,{yoloMode:xe??!1,maxConcurrency:3}),W(!1),P("idle"),ee.invalidateQueries({queryKey:["projects"]}),ee.invalidateQueries({queryKey:["features",s]})}catch(Et){P("error"),G(Et instanceof Error?Et.message:"Failed to start agent")}},onCancel:()=>{W(!1),P("idle")},onExitToProject:()=>{W(!1),P("idle")},initializerStatus:q,initializerError:Z,onRetryInitializer:()=>{G(null),P("idle")}})}),s&&n.jsx(sj,{logs:X.logs,devLogs:X.devLogs,isOpen:z,onToggle:()=>E(!z),onClear:X.clearLogs,onClearDevLogs:X.clearDevLogs,onHeightChange:w,projectName:s,activeTab:B,onTabChange:M,browserScreenshots:X.browserScreenshots,onSubscribeBrowserView:X.subscribeBrowserView,onUnsubscribeBrowserView:X.unsubscribeBrowserView}),s&&!m&&!I&&!le&&n.jsxs(n.Fragment,{children:[n.jsx(zj,{onClick:()=>_(!C),isOpen:C}),n.jsx(Uj,{projectName:s,isOpen:C,onClose:()=>_(!1)})]}),n.jsx(Vj,{isOpen:R,onClose:()=>T(!1)}),n.jsx(n1,{isOpen:N,onClose:()=>L(!1)}),ae&&s&&n.jsx(M1,{isOpen:ae,projectName:s,onClose:()=>Y(!1),onResetComplete:De=>{De&&W(!0)}}),X.celebration&&n.jsx(wj,{agentName:X.celebration.agentName,featureName:X.celebration.featureName,onComplete:X.clearCelebration})]}):n.jsx(Fb,{onComplete:()=>j(!0)})}const U1=new _p({defaultOptions:{queries:{staleTime:5e3,refetchOnWindowFocus:!1}}});s0.createRoot(document.getElementById("root")).render(n.jsx(f.StrictMode,{children:n.jsx(Mp,{client:U1,children:n.jsx(R1,{})})}));