@@ -4,7 +4,7 @@
< meta charset = "utf-8" >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< title > Codex 命令台< / title >
< title > Codex 命令台< / title >
< script type = "module" crossorigin > ( f u n c t i o n ( ) { c o n s t r = d o c u m e n t . c r e a t e E l e m e n t ( " l i n k " ) . r e l L i s t ; i f ( r & & r . s u p p o r t s & & r . s u p p o r t s ( " m o d u l e p r e l o a d " ) ) r e t u r n ; f o r ( c o n s t g o f d o c u m e n t . q u e r y S e l e c t o r A l l ( ' l i n k [ r e l = " m o d u l e p r e l o a d " ] ' ) ) f ( g ) ; n e w M u t a t i o n O b s e r v e r ( g = > { f o r ( c o n s t C o f g ) i f ( C . t y p e = = = " c h i l d L i s t " ) f o r ( c o n s t A o f C . a d d e d N o d e s ) A . t a g N a m e = = = " L I N K " & & A . r e l = = = " m o d u l e p r e l o a d " & & f ( A ) } ) . o b s e r v e ( d o c u m e n t , { c h i l d L i s t : ! 0 , s u b t r e e : ! 0 } ) ; f u n c t i o n h ( g ) { c o n s t C = { } ; r e t u r n g . i n t e g r i t y & & ( C . i n t e g r i t y = g . i n t e g r i t y ) , g . r e f e r r e r P o l i c y & & ( C . r e f e r r e r P o l i c y = g . r e f e r r e r P o l i c y ) , g . c r o s s O r i g i n = = = " u s e - c r e d e n t i a l s " ? C . c r e d e n t i a l s = " i n c l u d e " : g . c r o s s O r i g i n = = = " a n o n y m o u s " ? C . c r e d e n t i a l s = " o m i t " : C . c r e d e n t i a l s = " s a m e - o r i g i n " , C } f u n c t i o n f ( g ) { i f ( g . e p ) r e t u r n ; g . e p = ! 0 ; c o n s t C = h ( g ) ; f e t c h ( g . h r e f , C ) } } ) ( ) ; f u n c t i o n K h ( i ) { r e t u r n i & & i . _ _ e s M o d u l e & & O b j e c t . p r o t o t y p e . h a s O w n P r o p e r t y . c a l l ( i , " d e f a u l t " ) ? i . d e f a u l t : i } v a r n o = { e x p o r t s : { } } , u i = { } ; / * *
< script type = "module" crossorigin > ( f u n c t i o n ( ) { c o n s t r = d o c u m e n t . c r e a t e E l e m e n t ( " l i n k " ) . r e l L i s t ; i f ( r & & r . s u p p o r t s & & r . s u p p o r t s ( " m o d u l e p r e l o a d " ) ) r e t u r n ; f o r ( c o n s t y o f d o c u m e n t . q u e r y S e l e c t o r A l l ( ' l i n k [ r e l = " m o d u l e p r e l o a d " ] ' ) ) f ( y ) ; n e w M u t a t i o n O b s e r v e r ( y = > { f o r ( c o n s t C o f y ) i f ( C . t y p e = = = " c h i l d L i s t " ) f o r ( c o n s t M o f C . a d d e d N o d e s ) M . t a g N a m e = = = " L I N K " & & M . r e l = = = " m o d u l e p r e l o a d " & & f ( M ) } ) . o b s e r v e ( d o c u m e n t , { c h i l d L i s t : ! 0 , s u b t r e e : ! 0 } ) ; f u n c t i o n h ( y ) { c o n s t C = { } ; r e t u r n y . i n t e g r i t y & & ( C . i n t e g r i t y = y . i n t e g r i t y ) , y . r e f e r r e r P o l i c y & & ( C . r e f e r r e r P o l i c y = y . r e f e r r e r P o l i c y ) , y . c r o s s O r i g i n = = = " u s e - c r e d e n t i a l s " ? C . c r e d e n t i a l s = " i n c l u d e " : y . c r o s s O r i g i n = = = " a n o n y m o u s " ? C . c r e d e n t i a l s = " o m i t " : C . c r e d e n t i a l s = " s a m e - o r i g i n " , C } f u n c t i o n f ( y ) { i f ( y . e p ) r e t u r n ; y . e p = ! 0 ; c o n s t C = h ( y ) ; f e t c h ( y . h r e f , C ) } } ) ( ) ; f u n c t i o n J h ( i ) { r e t u r n i & & i . _ _ e s M o d u l e & & O b j e c t . p r o t o t y p e . h a s O w n P r o p e r t y . c a l l ( i , " d e f a u l t " ) ? i . d e f a u l t : i } v a r i o = { e x p o r t s : { } } , s i = { } ; / * *
* @license React
* @license React
* react-jsx-runtime.production.js
* react-jsx-runtime.production.js
*
*
@@ -12,7 +12,7 @@
*
*
* This source code is licensed under the MIT license found in the
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* LICENSE file in the root directory of this source tree.
*/var R h;function k y(){if(R h)return u i;R h=1;var i=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function h(f,g ,C){var A =null;if(C!==void 0& & (A =""+C),g .key!==void 0& & (A =""+g .key),"key"in g ){C={};for(var S in g )S!=="key"& & (C[S]=g [S])}else C=g ;return g =C.ref,{$$typeof:i,type:f,key:A ,ref:g !==void 0?g :null,props:C}}return u i.Fragment=r,u i.jsx=h,u i.jsxs=h,u i}var D h;function By(){return D h||(D h=1,n o.exports=k y()),n o.exports}var c=By(),u o={exports:{}},yt={};/**
*/var D h;function H y(){if(D h)return s i;D h=1;var i=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function h(f,y ,C){var M =null;if(C!==void 0& & (M =""+C),y .key!==void 0& & (M =""+y .key),"key"in y ){C={};for(var S in y )S!=="key"& & (C[S]=y [S])}else C=y ;return y =C.ref,{$$typeof:i,type:f,key:M ,ref:y !==void 0?y :null,props:C}}return s i.Fragment=r,s i.jsx=h,s i.jsxs=h,s i}var U h;function By(){return U h||(U h=1,i o.exports=H y()),i o.exports}var c=By(),c o={exports:{}},yt={};/**
* @license React
* @license React
* react.production.js
* react.production.js
*
*
@@ -20,7 +20,7 @@
*
*
* This source code is licensed under the MIT license found in the
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* LICENSE file in the root directory of this source tree.
*/var Uh;function qy(){if(Uh)return yt;Uh=1;var i=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),g=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),A=Symbol.for("react.context"),S=Symbol.for("react.forward_ref"),H=Symbol.for("react.suspense"),R=Symbol.for("react.memo"),Y=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),k=Symbol.for("react.view_transition"),W=Symbol.iterator;function V(y){return y===null||typeof y!="object"?null:(y=W& & y[W]||y["@@iterator"],typeof y=="function"?y:null)}var I={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X=Object.assign,ht={};function gt(y,D,ct){this.props=y,this.context=D,this.refs=ht,this.updater=ct||I}gt.prototype.isReactComponent={},gt.prototype.setState=function(y,D){if(typeof y!="object"& & typeof y!="function"& & y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,y,D,"setState")},gt.prototype.forceUpdate=function(y){this.updater.enqueueForceUpdate(this,y,"forceUpdate")};function xt(){}xt.prototype=gt.prototype;function Z(y,D,ct){this.props=y,this.context=D,this.refs=ht,this.updater=ct||I}var Tt=Z.prototype=new xt;Tt.constructor=Z,X(Tt,gt.prototype),Tt.isPureReactComponent=!0;var w=Array.isArray;function Q(){}var et={H:null,A:null,T:null,S:null},zt=Object.prototype.hasOwnProperty;function Bt(y,D,ct){var it=ct.ref;return{$$typeof:i,type:y,key:D,ref:it!==void 0?it:null,props:ct}}function vt(y,D){return Bt(y.type,D,y.props)}function wt(y){return typeof y=="object"& & y!==null& & y.$$typeof===i}function q(y){var D={"=":"=0",":":"=2"};return"$"+y.replace(/[=:]/g,function(ct){return D[ct]})}var ot=/\/+/g;function rt(y,D){return typeof y=="object"& & y!==null& & y.key!=null?q(""+y.key):D.toString(36)}function G(y){switch(y.status){case"fulfilled":return y.value;case"rejected":throw y.reason;default:switch(typeof y.status=="string"?y.then(Q,Q):(y.status="pending",y.then(function(D){y.status==="pending"& & (y.status="fulfilled",y.value=D)},function(D){y.status==="pending"& & (y.status="rejected",y.reason=D)})),y.status){case"fulfilled":return y.value;case"rejected":throw y.reason}}throw y}function N(y,D,ct,it,Nt){var _t=typeof y;(_t==="undefined"||_t==="boolean")&&(y=null); var Rt=!1;if(y===null)Rt=!0;else switch(_t){case"bigint":case"string":case"number":Rt=!0;break;case"object":switch(y.$$typeof){case i:case r:Rt=!0;break;case Y:return Rt=y._init,N(Rt(y._payload),D,ct,it,Nt)}}if(Rt)return Nt=Nt(y),Rt=it===""?"."+rt(y,0):it,w(Nt)?(ct="",Rt!=null& & (ct=Rt.replace(ot,"$& /")+"/"),N(Nt,D,ct,"",function(ce){return ce})):Nt!=null&&(wt(Nt)&&(Nt=vt(Nt,ct+(Nt.key==null||y&&y.key===Nt.key?"":(""+Nt.key).replace(ot,"$&/")+"/")+Rt)),D.push(Nt)),1; Rt=0;var P=it===""?".":it+":";if(w(y))for(var dt=0;dt< y.length ; dt + + ) it = y[dt],_t=P+rt(it,dt),Rt+=N(it,D,ct,_t,Nt);else if ( dt = V(y),typeof dt = ="function")for(y=dt.call(y),dt=0;!(it=y.next()).done;)it=it.value,_t=P+rt(it,dt++),Rt+=N(it,D,ct,_t,Nt);else if ( _t = =="object"){if(typeof y . then = ="function")return N ( G ( y ) , D , ct , it , Nt ) ; throw D = String(y),Error("Objects are not valid as a React child ( found: " + ( D = =="[object Object ] " ? " object with keys { " + Object . keys ( y ) . join ( " , " ) + " } " :D ) + " ) . If you meant to render a collection of children , use an array instead . " ) } return Rt } function ut ( y , D , ct ) { if ( y = =null)return y ; var it = [],Nt=0;return N ( y , it , " " , " " , function ( _t ) { return D . call ( ct , _t , Nt + + ) } ) , it } function St ( y ) { if ( y . _status = ==-1){var D = y._result,ct=D();ct.then(function(it){(y._status===0||y._status===-1)&&(y._status=1,y._result=it,ct.status===void 0 & & ( ct . status = "fulfilled" , ct . value = it))},function(it){(y._status===0||y._status===-1)&&(y._status=2,y._result=it,ct.status===void 0 & & ( ct . status = "rejected" , ct . reason = it))}),y._status===-1&&(y._status=0,y._result=ct)}if(y._status===1)return y . _result . default ; throw y . _result } var pt = typeof reportError = ="function"?reportError:function(y){if(typeof window = ="object"&&typeof window . ErrorEvent = ="function"){var D = new window . ErrorEvent ( " error " , { bubbles: ! 0 , cancelable: ! 0 , message:typeof y = ="object"&&y!==null&&typeof y . message = ="string"?String(y.message):String(y),error:y});if(!window.dispatchEvent(D))return}else if ( typeof process = ="object"&&typeof process . emit = ="function"){process.emit("uncaughtException",y);return}console.error(y)};function ge ( y ) { var D = et.T,ct={};ct.types=D!==null?D.types:null,et.T=ct;try{var it = y(),Nt=et.S;Nt!==null&&Nt(ct,it),typeof it = ="object"&&it!==null&&typeof it . then = ="function"&&it.then(Q,pt)}catch(_t){pt(_t)}finally{D!==null&&ct.types!==null&&(D.types=ct.types),et.T=D}}function we ( y ) { var D = et.T;if(D!==null){var ct = D.types;ct===null?D.types=[y]:ct.indexOf(y)===-1&&ct.push(y)}else ge ( we . bind ( null , y ) ) } var Ce = {map:ut,forEach:function(y,D,ct){ut(y,function(){D.apply(this,arguments)},ct)},count:function(y){var D = 0;return ut ( y , function ( ) { D + + } ) , D } , toAr Line truncated
*/var wh;function qy(){if(wh)return yt;wh=1;var i=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),y=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),M=Symbol.for("react.context"),S=Symbol.for("react.forward_ref"),_=Symbol.for("react.suspense"),O=Symbol.for("react.memo"),Y=Symbol.for("react.lazy"),x=Symbol.for("react.activity"),H=Symbol.for("react.view_transition"),L=Symbol.iterator;function tt(g){return g===null||typeof g!="object"?null:(g=L& & g[L]||g["@@iterator"],typeof g=="function"?g:null)}var dt={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J=Object.assign,gt={};function _t(g,U,ct){this.props=g,this.context=U,this.refs=gt,this.updater=ct||dt}_t.prototype.isReactComponent={},_t.prototype.setState=function(g,U){if(typeof g!="object"& & typeof g!="function"& & g!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,g,U,"setState")},_t.prototype.forceUpdate=function(g){this.updater.enqueueForceUpdate(this,g,"forceUpdate")};function Dt(){}Dt.prototype=_t.prototype;function Q(g,U,ct){this.props=g,this.context=U,this.refs=gt,this.updater=ct||dt}var ft=Q.prototype=new Dt;ft.constructor=Q,J(ft,_t.prototype),ft.isPureReactComponent=!0;var D=Array.isArray;function X(){}var et={H:null,A:null,T:null,S:null},xt=Object.prototype.hasOwnProperty;function Mt(g,U,ct){var it=ct.ref;return{$$typeof:i,type:g,key:U,ref:it!==void 0?it:null,props:ct}}function mt(g,U){return Mt(g.type,U,g.props)}function Nt(g){return typeof g=="object"& & g!==null& & g.$$typeof===i}function B(g){var U={"=":"=0",":":"=2"};return"$"+g.replace(/[=:]/g,function(ct){return U[ct]})}var nt=/\/+/g;function rt(g,U){return typeof g=="object"& & g!==null& & g.key!=null?B(""+g.key):U.toString(36)}function G(g){switch(g.status){case"fulfilled":return g.value;case"rejected":throw g.reason;default:switch(typeof g.status=="string"?g.then(X,X):(g.status="pending",g.then(function(U){g.status==="pending"& & (g.status="fulfilled",g.value=U)},function(U){g.status==="pending"& & (g.status="rejected",g.reason=U)})),g.status){case"fulfilled":return g.value;case"rejected":throw g.reason}}throw g}function A(g,U,ct,it,Ot){var Et=typeof g;(Et==="undefined"||Et==="boolean")&&(g=null); var kt=!1;if(g===null)kt=!0;else switch(Et){case"bigint":case"string":case"number":kt=!0;break;case"object":switch(g.$$typeof){case i:case r:kt=!0;break;case Y:return kt=g._init,A(kt(g._payload),U,ct,it,Ot)}}if(kt)return Ot=Ot(g),kt=it===""?"."+rt(g,0):it,D(Ot)?(ct="",kt!=null& & (ct=kt.replace(nt,"$& /")+"/"),A(Ot,U,ct,"",function(se){return se})):Ot!=null&&(Nt(Ot)&&(Ot=mt(Ot,ct+(Ot.key==null||g&&g.key===Ot.key?"":(""+Ot.key).replace(nt,"$&/")+"/")+kt)),U.push(Ot)),1; kt=0;var P=it===""?".":it+":";if(D(g))for(var ht=0;ht< g.length ; ht + + ) it = g[ht],Et=P+rt(it,ht),kt+=A(it,U,ct,Et,Ot);else if ( ht = tt(g),typeof ht = ="function")for(g=ht.call(g),ht=0;!(it=g.next()).done;)it=it.value,Et=P+rt(it,ht++),kt+=A(it,U,ct,Et,Ot);else if ( Et = =="object"){if(typeof g . then = ="function")return A ( G ( g ) , U , ct , it , Ot ) ; throw U = String(g),Error("Objects are not valid as a React child ( found: " + ( U = =="[object Object ] " ? " object with keys { " + Object . keys ( g ) . join ( " , " ) + " } " :U ) + " ) . If you meant to render a collection of children , use an array instead . " ) } return kt } function ut ( g , U , ct ) { if ( g = =null)return g ; var it = [],Ot=0;return A ( g , it , " " , " " , function ( Et ) { return U . call ( ct , Et , Ot + + ) } ) , it } function bt ( g ) { if ( g . _status = ==-1){var U = g._result,ct=U();ct.then(function(it){(g._status===0||g._status===-1)&&(g._status=1,g._result=it,ct.status===void 0 & & ( ct . status = "fulfilled" , ct . value = it))},function(it){(g._status===0||g._status===-1)&&(g._status=2,g._result=it,ct.status===void 0 & & ( ct . status = "rejected" , ct . reason = it))}),g._status===-1&&(g._status=0,g._result=ct)}if(g._status===1)return g . _result . default ; throw g . _result } var pt = typeof reportError = ="function"?reportError:function(g){if(typeof window = ="object"&&typeof window . ErrorEvent = ="function"){var U = new window . ErrorEvent ( " error " , { bubbles: ! 0 , cancelable: ! 0 , message:typeof g = ="object"&&g!==null&&typeof g . message = ="string"?String(g.message):String(g),error:g});if(!window.dispatchEvent(U))return}else if ( typeof process = ="object"&&typeof process . emit = ="function"){process.emit("uncaughtException",g);return}console.error(g)};function Se ( g ) { var U = et.T,ct={};ct.types=U!==null?U.types:null,et.T=ct;try{var it = g(),Ot=et.S;Ot!==null&&Ot(ct,it),typeof it = ="object"&&it!==null&&typeof it . then = ="function"&&it.then(X,pt)}catch(Et){pt(Et)}finally{U!==null&&ct.types!==null&&(U.types=ct.types),et.T=U}}function we ( g ) { var U = et.T;if(U!==null){var ct = U.types;ct===null?U.types=[g]:ct.indexOf(g)===-1&&ct.push(g)}else Se ( we . bind ( null , g ) ) } var Ne = {map:ut,forEach:function(g,U,ct){ut(g,function(){U.apply(this,arguments)},ct)},count:function(g){var U = 0;return ut ( g , function ( ) { U + + } ) , U } Line truncated
* @license React
* @license React
* scheduler.production.js
* scheduler.production.js
*
*
@@ -28,7 +28,7 @@
*
*
* This source code is licensed under the MIT license found in the
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* LICENSE file in the root directory of this source tree.
*/var w h;function Gy(){return w h||(w h=1,(function(i){function r(G,N ){var ut=G.length;G.push(N );t:for(;0< ut ; ) { var St = ut-1 > >>1,pt=G[S t];if(0< g ( pt , N ) ) G [ St ] = N , G [ ut ] = pt , ut = S t;else break t } } function h ( G ) { return G . length = ==0?null:G[0]}function f ( G ) { if ( G . length = ==0)return null ; var N = G[0],ut=G.pop();if(ut!==N ){G[0]=ut;t:for(var St = 0,pt=G.length,g e=pt > >>1;S t< ge ; ) { var we = 2*(S t+1)-1,C e=G[we],y =we+1,D =G[y ];if(0 > g(C e,ut))y < pt & & 0 > g(D,C e)?(G[S t]=D ,G[y ]=ut,S t=y ):(G[S t]=C e,G[we]=ut,S t=we);else if(y < pt & & 0 > g(D ,ut))G[S t]=D ,G[y ]=ut,S t=y ;else break t}}return N }function g (G,N ){var ut=G.sortIndex-N .sortIndex;return ut!==0?ut:G.id-N .id}if(i.unstable_now=void 0,typeof performance=="object"& & typeof performance.now=="function"){var C=performance;i.unstable_now=function(){return C.now()}}else{var A =Date,S=A .now();i.unstable_now=function(){return A .now()-S}}var H =[],R =[],Y=1,x=null,k =3,W =!1,V =!1,I =!1,X =!1,h t=typeof setTimeout=="function"?setTimeout:null,g t=typeof clearTimeout=="function"?clearTimeout:null,x t=typeof setImmediate< "u"?setImmediate:null;function Z (G){for(var N =h(R );N !==null;){if(N .callback===null)f(R );else if(N .startTime< =G)f(R ),N .sortIndex=N .expirationTime,r(H,N );else break;N =h(R )}}function T t(G){if(I =!1,Z (G),!V )if(h(H )!==null)V =!0,w ||(w =!0,w t());else{var N =h(R );N !==null& & rt(T t,N .startTime-G)}}var w =!1,Q =-1,et=5,z t=-1;function B t(){return X ?!0:!(i.unstable_now()-z t< et ) } function vt ( ) { if ( X = !1,w ){var G = i.unstable_now();z t=G;var N = !0;try{t:{V =!1,I &&(I =!1,g t(Q ),Q =-1),W =!0;var ut = k ;try{e:{for(Z (G),x=h(H );x!==null&&!(x.expirationTime> G&&B t()); ){var S t=x.callback;if(typeof S t=="function"){x.callback=null,k =x.priorityLevel;var pt=S t(x.expirationTime< =G);if(G=i.unstable_now(),typeof pt=="function"){x.callback=pt,Z (G),N =!0;break e}x===h(H )& & f(H ),Z (G)}else f(H );x=h(H )}if(x!==null)N =!0;else{var g e=h(R );g e!==null& & rt(T t,g e.startTime-G),N =!1}}break t}finally{x=null,k =ut,W =!1}N =void 0}}finally{N?w t():w =!1}}}var w t;if(typeof x t=="function")w t=function(){x t(v t)};else if(typeof MessageChannel< "u"){var q =new MessageChannel,o t=q .port2;q .port1.onmessage=v t,w t=function(){o t.postMessage(null)}}else w t=function(){h t(v t,0)};function rt(G,N ){Q=h t(function(){G(i.unstable_now())},N )}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(G){G.callback=null},i.unstable_forceFrameRate=function(G){0>G||125< G ? console . error ( " forceFrameRate takes a positive int between 0 and 125 , forcing frame rates higher than 125 fps is not supported " ) :et = 0<G?Math.floor(1e3/G):5},i.unstable_getCurrentPriorityLevel=function(){return k } , i . unstable_next = function(G){switch(k ){case 1:case 2:case 3:var N = 3;break;default:N=k }var ut = k;k=N ;try{return G ( ) } finally { k = ut}},i.unstable_requestPaint=function(){X =!0},i.unstable_runWithPriority=function(G,N ){switch(G){case 1:case 2:case 3:case 4:case 5:break ; default:G = 3}var ut = k;k =G;try{return N ( ) } finally { k = ut}},i.unstable_scheduleCallback=function(G,N ,ut){var St = i.unstable_now();switch(typeof ut = ="object"&&ut!==null?(ut=ut.delay,ut=typeof ut = ="number"&&0<ut?S t+ut:S t):ut=S t,G){case 1:var pt = -1;break;case 2:pt = 250;break;case 5:pt = 1073741823;break;case 4:pt = 1e4;break;default:pt=5e3}return pt = ut+pt,G={id:Y++,callback:N ,priorityLevel:G,startTime:ut,expirationTime:pt,sortIndex:-1},ut > S t?(G.sortIndex=ut,r(R ,G),h(H )===null& & G===h(R )& & (I ?(g t(Q ),Q =-1):I =!0,rt(T t,ut-S t))):(G.sortIndex=pt,r(H ,G),V ||W ||(V =!0,w ||(w =!0,w t()))),G},i.unstable_shouldYield=B t,i.unstable_wrapCallback=function(G){var N=k ;return function(){var ut=k;k=N ;try{return G.apply(this,arguments)}finally{k =ut}}}})(s o)),s o}var k h;function Qy(){return k h||(k h=1,c o.exports=Gy()),c o.exports}var r o={exports:{}},H e={};/**
*/var H h;function Gy(){return H h||(H h=1,(function(i){function r(G,A ){var ut=G.length;G.push(A );t:for(;0< ut ; ) { var bt = ut-1 > >>1,pt=G[b t];if(0< y ( pt , A ) ) G [ bt ] = A , G [ ut ] = pt , ut = b t;else break t } } function h ( G ) { return G . length = ==0?null:G[0]}function f ( G ) { if ( G . length = ==0)return null ; var A = G[0],ut=G.pop();if(ut!==A ){G[0]=ut;t:for(var bt = 0,pt=G.length,S e=pt > >>1;b t< Se ; ) { var we = 2*(b t+1)-1,N e=G[we],g =we+1,U =G[g ];if(0 > y(N e,ut))g < pt & & 0 > y(U,N e)?(G[b t]=U ,G[g ]=ut,b t=g ):(G[b t]=N e,G[we]=ut,b t=we);else if(g < pt & & 0 > y(U ,ut))G[b t]=U ,G[g ]=ut,b t=g ;else break t}}return A }function y (G,A ){var ut=G.sortIndex-A .sortIndex;return ut!==0?ut:G.id-A .id}if(i.unstable_now=void 0,typeof performance=="object"& & typeof performance.now=="function"){var C=performance;i.unstable_now=function(){return C.now()}}else{var M =Date,S=M .now();i.unstable_now=function(){return M .now()-S}}var _ =[],O =[],Y=1,x=null,H =3,L =!1,tt =!1,dt =!1,J =!1,g t=typeof setTimeout=="function"?setTimeout:null,_ t=typeof clearTimeout=="function"?clearTimeout:null,D t=typeof setImmediate< "u"?setImmediate:null;function Q (G){for(var A =h(O );A !==null;){if(A .callback===null)f(O );else if(A .startTime< =G)f(O ),A .sortIndex=A .expirationTime,r(_,A );else break;A =h(O )}}function f t(G){if(dt =!1,Q (G),!tt )if(h(_ )!==null)tt =!0,D ||(D =!0,N t());else{var A =h(O );A !==null& & rt(f t,A .startTime-G)}}var D =!1,X =-1,et=5,x t=-1;function M t(){return J ?!0:!(i.unstable_now()-x t< et ) } function mt ( ) { if ( J = !1,D ){var G = i.unstable_now();x t=G;var A = !0;try{t:{tt =!1,dt &&(dt =!1,_ t(X ),X =-1),L =!0;var ut = H ;try{e:{for(Q (G),x=h(_ );x!==null&&!(x.expirationTime> G&&M t()); ){var b t=x.callback;if(typeof b t=="function"){x.callback=null,H =x.priorityLevel;var pt=b t(x.expirationTime< =G);if(G=i.unstable_now(),typeof pt=="function"){x.callback=pt,Q (G),A =!0;break e}x===h(_ )& & f(_ ),Q (G)}else f(_ );x=h(_ )}if(x!==null)A =!0;else{var S e=h(O );S e!==null& & rt(f t,S e.startTime-G),A =!1}}break t}finally{x=null,H =ut,L =!1}A =void 0}}finally{A?N t():D =!1}}}var N t;if(typeof D t=="function")N t=function(){D t(m t)};else if(typeof MessageChannel< "u"){var B =new MessageChannel,n t=B .port2;B .port1.onmessage=m t,N t=function(){n t.postMessage(null)}}else N t=function(){g t(m t,0)};function rt(G,A ){X=g t(function(){G(i.unstable_now())},A )}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(G){G.callback=null},i.unstable_forceFrameRate=function(G){0>G||125< G ? console . error ( " forceFrameRate takes a positive int between 0 and 125 , forcing frame rates higher than 125 fps is not supported " ) :et = 0<G?Math.floor(1e3/G):5},i.unstable_getCurrentPriorityLevel=function(){return H } , i . unstable_next = function(G){switch(H ){case 1:case 2:case 3:var A = 3;break;default:A=H }var ut = H;H=A ;try{return G ( ) } finally { H = ut}},i.unstable_requestPaint=function(){J =!0},i.unstable_runWithPriority=function(G,A ){switch(G){case 1:case 2:case 3:case 4:case 5:break ; default:G = 3}var ut = H;H =G;try{return A ( ) } finally { H = ut}},i.unstable_scheduleCallback=function(G,A ,ut){var bt = i.unstable_now();switch(typeof ut = ="object"&&ut!==null?(ut=ut.delay,ut=typeof ut = ="number"&&0<ut?b t+ut:b t):ut=b t,G){case 1:var pt = -1;break;case 2:pt = 250;break;case 5:pt = 1073741823;break;case 4:pt = 1e4;break;default:pt=5e3}return pt = ut+pt,G={id:Y++,callback:A ,priorityLevel:G,startTime:ut,expirationTime:pt,sortIndex:-1},ut > b t?(G.sortIndex=ut,r(O ,G),h(_ )===null& & G===h(O )& & (dt ?(_ t(X ),X =-1):dt =!0,rt(f t,ut-b t))):(G.sortIndex=pt,r(_ ,G),tt ||L ||(tt =!0,D ||(D =!0,N t()))),G},i.unstable_shouldYield=M t,i.unstable_wrapCallback=function(G){var A=H ;return function(){var ut=H;H=A ;try{return G.apply(this,arguments)}finally{H =ut}}}})(o o)),o o}var B h;function Qy(){return B h||(B h=1,r o.exports=Gy()),r o.exports}var f o={exports:{}},U e={};/**
* @license React
* @license React
* react-dom.production.js
* react-dom.production.js
*
*
@@ -36,7 +36,7 @@
*
*
* This source code is licensed under the MIT license found in the
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* LICENSE file in the root directory of this source tree.
*/var B h;function Xy(){if(B h)return H e;B h=1;var i=y o();function r(Y){var x="https://react.dev/errors/"+Y;if(1< arguments.length ) { x + = " ? args [ ] = " + encodeURIComponent ( arguments [ 1 ] ) ; for ( var k = 2;k <arguments.length;k ++)x+="&args[]="+encodeURIComponent(arguments[k ])}return"Minified React error # " + Y + " ; visit " + x + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings . " } function h ( ) { } var f = {d:{f:h,r:function(){throw Error ( r ( 522 ) ) } , D:h , C:h , L:h , m:h , X:h , S:h , M:h } , p:0 , findDOMNode:null } , g = Symbol.for("react.portal"),C=Symbol.for("react.recoverable"),A =Symbol.for("react.optimistic_key");function S ( Y , x , k ) { var W = 3<arguments.length&&arguments[3]!==void 0 ? arguments [ 3 ] :null ; return { $ $ typeof:g , key:W = =null?null:W ===A?A :""+W ,children:Y,containerInfo:x,implementation:k }}var H = i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function R ( Y , x ) { if ( Y = =="font")return"";if(typeof x = ="string")return x = =="use-credentials"?x:""}return He . __DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = f,H e.browser=function(Y){return{$$typeof:C,_reason:Y}},H e.createPortal=function(Y,x){var k = 2<arguments.length&&arguments[2]!==void 0 ? arguments [ 2 ] :null ; if ( ! x | | x . nodeType ! = = 1 & & x . nodeType ! = = 9 & & x . nodeType ! = = 11 ) throw Error ( r ( 299 ) ) ; return S ( Y , x , null , k ) } , He . flushSync = function(Y){var x = H .T,k =f.p;try{if(H .T=null,f.p=2,Y)return Y ( ) } finally { H . T = x,f.p=k ,f.d.f()}},H e.preconnect=function(Y,x){typeof Y = ="string"&&(x?(x=x.crossOrigin,x=typeof x = ="string"?x==="use-credentials"?x:"":void 0 ) :x = null,f.d.C(Y,x))},H e.prefetchDNS=function(Y){typeof Y = ="string"&&f.d.D(Y)},H e.preinit=function(Y,x){if(typeof Y = ="string"&&x&&typeof x . as = ="string"){var k = x.as,W=R(k ,x.crossOrigin),V =typeof x . integrity = ="string"?x.integrity:void 0 , I = typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 ; k = =="style"?f.d.S(Y,typeof x . precedence = ="string"?x.precedence:void 0 , { crossOrigin:W , integrity:V , fetchPriority:I } ) :k = =="script"&&f.d.X(Y,{crossOrigin:W ,integrity:V ,fetchPriority:I ,nonce:typeof x . nonce = ="string"?x.nonce:void 0 } ) } } , He . preinitModule = function(Y,x){if(typeof Y = ="string")if(typeof x = ="object"&&x!==null){if(x.as==null||x.as==="script"){var k = R (x.as,x.crossOrigin);f.d.M(Y,{crossOrigin:k ,integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 } ) } } else x = =null&&f.d.M(Y)},H e.preload=function(Y,x){if(typeof Y = ="string"&&typeof x = ="object"&&x!==null&&typeof x . as = ="string"){var k = x.as,W=R(k ,x.crossOrigin);f.d.L(Y,k ,{crossOrigin:W ,integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , type:typeof x . type = ="string"?x.type:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 , referrerPolicy:typeof x . referrerPolicy = ="string"?x.referrerPolicy:void 0 , imageSrcSet:typeof x . imageSrcSet = ="string"?x.imageSrcSet:void 0 , imageSizes:typeof x . imageSizes = ="string"?x.imageSizes:void 0 , media:typeof x . media = ="string"?x.media:void 0 } ) } } , He . preloadModule = function(Y,x){if(typeof Y = ="string")if(x){var k = R (x.as,x.crossOrigin);f.d.m(Y,{as:typeof x . as = ="string"&&x.as!=="script"?x.as:void 0 , crossOrigin:k , integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 } ) } else f . d . m ( Y ) } , He . requestFormReset = function(Y){f.d.r(Y)},H e.unstable_batchedUpdates=function(Y,x){return Y ( x ) } , He . useFormState = function(Y,x,k ){return H . H . useFormState ( Y , x , k ) } , He . useFormStatus = function(){return H . H . useHostTransitionStatus ( ) } , He . version = "19.3.1" , He } var qh ; function Ly ( ) { if ( qh ) return ro . exports ; qh = 1;function i ( ) { if ( ! ( typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ > "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(r){console.error(r)}}return i(),r o.exports=Xy(),r o.exports}/**
*/var q h;function Xy(){if(q h)return U e;q h=1;var i=g o();function r(Y){var x="https://react.dev/errors/"+Y;if(1< arguments.length ) { x + = " ? args [ ] = " + encodeURIComponent ( arguments [ 1 ] ) ; for ( var H = 2;H <arguments.length;H ++)x+="&args[]="+encodeURIComponent(arguments[H ])}return"Minified React error # " + Y + " ; visit " + x + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings . " } function h ( ) { } var f = {d:{f:h,r:function(){throw Error ( r ( 522 ) ) } , D:h , C:h , L:h , m:h , X:h , S:h , M:h } , p:0 , findDOMNode:null } , y = Symbol.for("react.portal"),C=Symbol.for("react.recoverable"),M =Symbol.for("react.optimistic_key");function S ( Y , x , H ) { var L = 3<arguments.length&&arguments[3]!==void 0 ? arguments [ 3 ] :null ; return { $ $ typeof:y , key:L = =null?null:L ===M?M :""+L ,children:Y,containerInfo:x,implementation:H }}var _ = i.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function O ( Y , x ) { if ( Y = =="font")return"";if(typeof x = ="string")return x = =="use-credentials"?x:""}return Ue . __DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = f,U e.browser=function(Y){return{$$typeof:C,_reason:Y}},U e.createPortal=function(Y,x){var H = 2<arguments.length&&arguments[2]!==void 0 ? arguments [ 2 ] :null ; if ( ! x | | x . nodeType ! = = 1 & & x . nodeType ! = = 9 & & x . nodeType ! = = 11 ) throw Error ( r ( 299 ) ) ; return S ( Y , x , null , H ) } , Ue . flushSync = function(Y){var x = _ .T,H =f.p;try{if(_ .T=null,f.p=2,Y)return Y ( ) } finally { _ . T = x,f.p=H ,f.d.f()}},U e.preconnect=function(Y,x){typeof Y = ="string"&&(x?(x=x.crossOrigin,x=typeof x = ="string"?x==="use-credentials"?x:"":void 0 ) :x = null,f.d.C(Y,x))},U e.prefetchDNS=function(Y){typeof Y = ="string"&&f.d.D(Y)},U e.preinit=function(Y,x){if(typeof Y = ="string"&&x&&typeof x . as = ="string"){var H = x.as,L=O(H ,x.crossOrigin),tt =typeof x . integrity = ="string"?x.integrity:void 0 , dt = typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 ; H = =="style"?f.d.S(Y,typeof x . precedence = ="string"?x.precedence:void 0 , { crossOrigin:L , integrity:tt , fetchPriority:dt } ) :H = =="script"&&f.d.X(Y,{crossOrigin:L ,integrity:tt ,fetchPriority:dt ,nonce:typeof x . nonce = ="string"?x.nonce:void 0 } ) } } , Ue . preinitModule = function(Y,x){if(typeof Y = ="string")if(typeof x = ="object"&&x!==null){if(x.as==null||x.as==="script"){var H = O (x.as,x.crossOrigin);f.d.M(Y,{crossOrigin:H ,integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 } ) } } else x = =null&&f.d.M(Y)},U e.preload=function(Y,x){if(typeof Y = ="string"&&typeof x = ="object"&&x!==null&&typeof x . as = ="string"){var H = x.as,L=O(H ,x.crossOrigin);f.d.L(Y,H ,{crossOrigin:L ,integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , type:typeof x . type = ="string"?x.type:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 , referrerPolicy:typeof x . referrerPolicy = ="string"?x.referrerPolicy:void 0 , imageSrcSet:typeof x . imageSrcSet = ="string"?x.imageSrcSet:void 0 , imageSizes:typeof x . imageSizes = ="string"?x.imageSizes:void 0 , media:typeof x . media = ="string"?x.media:void 0 } ) } } , Ue . preloadModule = function(Y,x){if(typeof Y = ="string")if(x){var H = O (x.as,x.crossOrigin);f.d.m(Y,{as:typeof x . as = ="string"&&x.as!=="script"?x.as:void 0 , crossOrigin:H , integrity:typeof x . integrity = ="string"?x.integrity:void 0 , nonce:typeof x . nonce = ="string"?x.nonce:void 0 , fetchPriority:typeof x . fetchPriority = ="string"?x.fetchPriority:void 0 } ) } else f . d . m ( Y ) } , Ue . requestFormReset = function(Y){f.d.r(Y)},U e.unstable_batchedUpdates=function(Y,x){return Y ( x ) } , Ue . useFormState = function(Y,x,H ){return _ . H . useFormState ( Y , x , H ) } , Ue . useFormStatus = function(){return _ . H . useHostTransitionStatus ( ) } , Ue . version = "19.3.1" , Ue } var Yh ; function Ly ( ) { if ( Yh ) return fo . exports ; Yh = 1;function i ( ) { if ( ! ( typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ > "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(r){console.error(r)}}return i(),f o.exports=Xy(),f o.exports}/**
* @license React
* @license React
* react-dom-client.production.js
* react-dom-client.production.js
*
*
@@ -44,38 +44,38 @@
*
*
* This source code is licensed under the MIT license found in the
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* LICENSE file in the root directory of this source tree.
*/var Yh;function Vy(){if(Yh)return ii;Yh=1;var i=Qy(),r=yo(),h=Ly();function f(t){var e="https://react.dev/errors/"+t;if(1< arguments.length ) { e + = " ? args [ ] = " + encodeURIComponent ( arguments [ 1 ] ) ; for ( var l = 2;l<arguments.length;l++)e+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error # " + t + " ; visit " + e + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings . " } function g ( t ) { return ! ( ! t | | t . nodeType ! = = 1 & & t . nodeType ! = = 9 & & t . nodeType ! = = 11 ) } function C ( t ) { for ( var e = t,l=e;l&&!l.alternate;)e=l,(e.flags&4098)!==0&&(t=e.return),l=e.return;for(;e.return;)e=e.return;return e . tag = ==3?t:null}function A ( t ) { if ( t . tag = ==13){var e = t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e . dehydrated } return null } function S ( t ) { if ( t . tag = ==31){var e = t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e . dehydrated } return null } function H ( t ) { if ( C ( t ) ! = = t ) throw Error ( f ( 188 ) ) } function R ( t ) { var e = t.alternate;if(!e){if(e=C(t),e===null)throw Error ( f ( 188 ) ) ; return e ! = = t ? null:t } for ( var l = t,a=e;;){var n = l.return;if(n===null)break;var u = n.alternate;if(u===null){if(a=n.return,a!==null){l=a;continue}break}if(n.child===u.child){for(u=n.child;u;){if(u===l)return H ( n ) , t ; if ( u = ==a)return H ( n ) , e ; u = u.sibling}throw Error ( f ( 188 ) ) } if ( l . return ! = = a . return ) l = n,a=u;else{for(var s = !1,o=n.child;o;){if(o===l){s=!0,l=n,a=u;break}if(o===a){s=!0,a=n,l=u;break}o=o.sibling}if(!s){for(o=u.child;o;){if(o===l){s=!0,l=u,a=n;break}if(o===a){s=!0,a=u,l=n;break}o=o.sibling}if(!s)throw Error ( f ( 189 ) ) } } if ( l . alternate ! = = a ) throw Error ( f ( 190 ) ) } if ( l . tag ! = = 3 ) throw Error ( f ( 188 ) ) ; return l . stateNode . current = ==l?t:e}function Y ( t ) { var e = t.tag;if(e===5||e===26||e===27||e===6)return t ; for ( t = t.child;t!==null;){if(e=Y(t),e!==null)return e ; t = t.sibling}return null } function x ( t , e , l , a , n , u ) { for ( ; t ! = = null ; ) { if ( ( t . tag = ==5||t.tag===27||t.tag===6)&&l(t,a,n,u)||(t.tag!==22||t.memoizedState===null)&&(e||t.tag!==5&&t.tag!==27)&&x(t.child,e,l,a,n,u))return!0;t=t.sibling}return!1}function k ( t ) { for ( t = t.return;t!==null;){if(t.tag===3||t.tag===5||t.tag===27)return t ; t = t.return}return null } function W ( t ) { var e = !1;for(t=t.return;t!==null&&(t.tag===4&&(e=!0),!(t.tag===3||t.tag===5||t.tag===27));)t=t.return;return e } function V ( t ) { var e = [null,null],l=k(t);return l = ==null||I(e,t,l.child,{foundSelf:!1}),e}function I ( t , e , l , a ) { for ( ; l ! = = null ; ) { if ( l = ==e)a.foundSelf=!0;else if ( l . tag = ==5||l.tag===27||l.tag===6){if(a.foundSelf)return t [ 1 ] = l , ! 0 ; t [ 0 ] = l } else if ( ( l . tag ! = = 22 | | l . memoizedState = ==null)&&I(t,e,l.child,a))return!0;l=l.sibling}return!1}function X ( t ) { switch ( t . tag ) { case 5:case 27:case 6:return t . stateNode ; case 3:return t . stateNode . containerInfo ; default:throw Error ( f ( 559 ) ) } } var ht = null,gt=null;function xt ( t , e , l ) { return t = ==l?!0:t===e?(ht=t,!0):!1}function Z ( t , e , l ) { return t = ==l?(gt=t,!1):t===e?(gt!==null&&(ht=t),!0):!1}function Tt ( t ) { if ( t = ==null)return null ; do t = t===null?null:t.return;while(t&&t.tag!==5&&t.tag!==27&&t.tag!==3);return t | | null } function w ( t , e , l ) { for ( var a = 0,n=t;n;n=l(n))a++;n=0;for(var u = e;u;u=l(u))n++;for(;0<a-n;)t=l(t),a--;for(;0<n-a;)e=l(e),n--;for(;a--;){if(t===e||e!==null&&t===e.alternate)return t ; t = l(t),e=l(e)}return null } var Q = Object.assign,et=Symbol.for("react.element"),zt=Symbol.for("react.transitional.element"),Bt=Symbol.for("react.portal"),vt=Symbol.for("react.fragment"),wt=Symbol.for("react.strict_mode"),q=Symbol.for("react.profiler"),ot=Symbol.for("react.consumer"),rt=Symbol.for("react.context"),G=Symbol.for("react.forward_ref"),N=Symbol.for("react.suspense"),ut=Symbol.for("react.suspense_list"),St=Symbol.for("react.memo"),pt=Symbol.for("react.lazy"),ge=Symbol.for("react.activity"),we=Symbol.for("react.legacy_hidden"),Ce=Symbol.for("react.memo_cache_sentinel"),y=Symbol.for("react.view_transition"),D=Symbol.for("react.recoverable"),ct=Symbol.iterator;function it ( t ) { return t = ==null||typeof t ! = " object " ? null: ( t = ct&&t[ct]||t["@@iterator"],typeof t = ="function"?t:null)}var Nt = Symbol.for("react.client.reference");function _t ( t ) { if ( t = =null)return null ; if ( typeof t = ="function")return t . $ $ typeof = ==Nt?null:t.displayName||t.name||null;if(typeof t = ="string")return t ; switch ( t ) { case vt:return " Fragment " ; case q:return " Profiler " ; case wt:return " StrictMode " ; case N:return " Suspense " ; case ut:return " SuspenseList " ; case ge:return " Activity " ; case y:return " ViewTransition " } if ( typeof t = ="object")switch(t.$$typeof){case Bt:return " Portal " ; case rt:return t . displayName | | " Context " ; case ot:return ( t . _context . displayName | | " Context " ) + " . Consumer " ; case G:var e = t.render;return t = t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case St:return e = t.displayName||null,e!==null?e:_t(t.type)||"Memo";case pt:e = t._payload,t=t._init;try{return _t ( t ( e ) ) } catch { } } return null } var Rt = Array.isArray,P=r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,dt=h.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ce={pending:!1,data:null,method:null,action:n Line truncated
*/var Gh;function Vy(){if(Gh)return ri;Gh=1;var i=Qy(),r=go(),h=Ly();function f(t){var e="https://react.dev/errors/"+t;if(1< arguments.length ) { e + = " ? args [ ] = " + encodeURIComponent ( arguments [ 1 ] ) ; for ( var l = 2;l<arguments.length;l++)e+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error # " + t + " ; visit " + e + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings . " } function y ( t ) { return ! ( ! t | | t . nodeType ! = = 1 & & t . nodeType ! = = 9 & & t . nodeType ! = = 11 ) } function C ( t ) { for ( var e = t,l=e;l&&!l.alternate;)e=l,(e.flags&4098)!==0&&(t=e.return),l=e.return;for(;e.return;)e=e.return;return e . tag = ==3?t:null}function M ( t ) { if ( t . tag = ==13){var e = t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e . dehydrated } return null } function S ( t ) { if ( t . tag = ==31){var e = t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e . dehydrated } return null } function _ ( t ) { if ( C ( t ) ! = = t ) throw Error ( f ( 188 ) ) } function O ( t ) { var e = t.alternate;if(!e){if(e=C(t),e===null)throw Error ( f ( 188 ) ) ; return e ! = = t ? null:t } for ( var l = t,a=e;;){var n = l.return;if(n===null)break;var u = n.alternate;if(u===null){if(a=n.return,a!==null){l=a;continue}break}if(n.child===u.child){for(u=n.child;u;){if(u===l)return _ ( n ) , t ; if ( u = ==a)return _ ( n ) , e ; u = u.sibling}throw Error ( f ( 188 ) ) } if ( l . return ! = = a . return ) l = n,a=u;else{for(var s = !1,o=n.child;o;){if(o===l){s=!0,l=n,a=u;break}if(o===a){s=!0,a=n,l=u;break}o=o.sibling}if(!s){for(o=u.child;o;){if(o===l){s=!0,l=u,a=n;break}if(o===a){s=!0,a=u,l=n;break}o=o.sibling}if(!s)throw Error ( f ( 189 ) ) } } if ( l . alternate ! = = a ) throw Error ( f ( 190 ) ) } if ( l . tag ! = = 3 ) throw Error ( f ( 188 ) ) ; return l . stateNode . current = ==l?t:e}function Y ( t ) { var e = t.tag;if(e===5||e===26||e===27||e===6)return t ; for ( t = t.child;t!==null;){if(e=Y(t),e!==null)return e ; t = t.sibling}return null } function x ( t , e , l , a , n , u ) { for ( ; t ! = = null ; ) { if ( ( t . tag = ==5||t.tag===27||t.tag===6)&&l(t,a,n,u)||(t.tag!==22||t.memoizedState===null)&&(e||t.tag!==5&&t.tag!==27)&&x(t.child,e,l,a,n,u))return!0;t=t.sibling}return!1}function H ( t ) { for ( t = t.return;t!==null;){if(t.tag===3||t.tag===5||t.tag===27)return t ; t = t.return}return null } function L ( t ) { var e = !1;for(t=t.return;t!==null&&(t.tag===4&&(e=!0),!(t.tag===3||t.tag===5||t.tag===27));)t=t.return;return e } function tt ( t ) { var e = [null,null],l=H(t);return l = ==null||dt(e,t,l.child,{foundSelf:!1}),e}function dt ( t , e , l , a ) { for ( ; l ! = = null ; ) { if ( l = ==e)a.foundSelf=!0;else if ( l . tag = ==5||l.tag===27||l.tag===6){if(a.foundSelf)return t [ 1 ] = l , ! 0 ; t [ 0 ] = l } else if ( ( l . tag ! = = 22 | | l . memoizedState = ==null)&&dt(t,e,l.child,a))return!0;l=l.sibling}return!1}function J ( t ) { switch ( t . tag ) { case 5:case 27:case 6:return t . stateNode ; case 3:return t . stateNode . containerInfo ; default:throw Error ( f ( 559 ) ) } } var gt = null,_t=null;function Dt ( t , e , l ) { return t = ==l?!0:t===e?(gt=t,!0):!1}function Q ( t , e , l ) { return t = ==l?(_t=t,!1):t===e?(_t!==null&&(gt=t),!0):!1}function ft ( t ) { if ( t = ==null)return null ; do t = t===null?null:t.return;while(t&&t.tag!==5&&t.tag!==27&&t.tag!==3);return t | | null } function D ( t , e , l ) { for ( var a = 0,n=t;n;n=l(n))a++;n=0;for(var u = e;u;u=l(u))n++;for(;0<a-n;)t=l(t),a--;for(;0<n-a;)e=l(e),n--;for(;a--;){if(t===e||e!==null&&t===e.alternate)return t ; t = l(t),e=l(e)}return null } var X = Object.assign,et=Symbol.for("react.element"),xt=Symbol.for("react.transitional.element"),Mt=Symbol.for("react.portal"),mt=Symbol.for("react.fragment"),Nt=Symbol.for("react.strict_mode"),B=Symbol.for("react.profiler"),nt=Symbol.for("react.consumer"),rt=Symbol.for("react.context"),G=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),ut=Symbol.for("react.suspense_list"),bt=Symbol.for("react.memo"),pt=Symbol.for("react.lazy"),Se=Symbol.for("react.activity"),we=Symbol.for("react.legacy_hidden"),Ne=Symbol.for("react.memo_cache_sentinel"),g=Symbol.for("react.view_transition"),U=Symbol.for("react.recoverable"),ct=Symbol.iterator;function it ( t ) { return t = ==null||typeof t ! = " object " ? null: ( t = ct&&t[ct]||t["@@iterator"],typeof t = ="function"?t:null)}var Ot = Symbol.for("react.client.reference");function Et ( t ) { if ( t = =null)return null ; if ( typeof t = ="function")return t . $ $ typeof = ==Ot?null:t.displayName||t.name||null;if(typeof t = ="string")return t ; switch ( t ) { case mt:return " Fragment " ; case B:return " Profiler " ; case Nt:return " StrictMode " ; case A:return " Suspense " ; case ut:return " SuspenseList " ; case Se:return " Activity " ; case g:return " ViewTransition " } if ( typeof t = ="object")switch(t.$$typeof){case Mt:return " Portal " ; case rt:return t . displayName | | " Context " ; case nt:return ( t . _context . displayName | | " Context " ) + " . Consumer " ; case G:var e = t.render;return t = t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case bt:return e = t.displayName||null,e!==null?e:Et(t.type)||"Memo";case pt:e = t._payload,t=t._init;try{return Et ( t ( e ) ) } catch { } } return null } var kt = Array.isArray,P=r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ht=h.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,se={pending:!1,data:null,method:null,acti Line truncated
at`)?" (< anonymous > )":-1< l.stack.indexOf ( " @ " ) ? " @ unknown:0:0 " : " " } return `
at`)?" (< anonymous > )":-1< l.stack.indexOf ( " @ " ) ? " @ unknown:0:0 " : " " } return `
`+B e+t+s e}var r l=!1;function F l(t,e){if(!t||r l)return"";r l=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var a={DetermineComponentFrameRoot:function(){try{if(e){var z =function(){throw Error()};if(Object.defineProperty(z .prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"& & Reflect.construct){try{Reflect.construct(z ,[])}catch(L ){var p=L }Reflect.construct(t,[],z )}else{try{z .call()}catch(L ){p=L}z =!1;try{var _ =Object.getOwnPropertyDescriptor(t.prototype,"props");Object.defineProperty(t.prototype,"props",{configurable:!0,set:function(){throw Error()}}),z =!0,new t}finally{z & & (_ !==void 0?Object.defineProperty(t.prototype,"props",_ ):delete t.prototype.props)}}}else{try{throw Error()}catch(L ){p=L }(z =t())& & typeof z .catch=="function"& & z .catch(function(){})}}catch(L ){if(L & & p& & typeof L .stack=="string")return[L .stack,p.stack]}return[null,null]}};a.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var n=Object.getOwnPropertyDescriptor(a.DetermineComponentFrameRoot,"name");n&&n.configurable&&Object.defineProperty(a.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"}); var u=a.DetermineComponentFrameRoot(),s=u[0],o=u[1];if(s& & o){var m=s.split(`
`+H e+t+r e}var f l=!1;function $ l(t,e){if(!t||f l)return"";f l=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var a={DetermineComponentFrameRoot:function(){try{if(e){var R =function(){throw Error()};if(Object.defineProperty(R .prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"& & Reflect.construct){try{Reflect.construct(R ,[])}catch(V ){var p=V }Reflect.construct(t,[],R )}else{try{R .call()}catch(V ){p=V}R =!1;try{var E =Object.getOwnPropertyDescriptor(t.prototype,"props");Object.defineProperty(t.prototype,"props",{configurable:!0,set:function(){throw Error()}}),R =!0,new t}finally{R & & (E !==void 0?Object.defineProperty(t.prototype,"props",E ):delete t.prototype.props)}}}else{try{throw Error()}catch(V ){p=V }(R =t())& & typeof R .catch=="function"& & R .catch(function(){})}}catch(V ){if(V & & p& & typeof V .stack=="string")return[V .stack,p.stack]}return[null,null]}};a.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var n=Object.getOwnPropertyDescriptor(a.DetermineComponentFrameRoot,"name");n&&n.configurable&&Object.defineProperty(a.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"}); var u=a.DetermineComponentFrameRoot(),s=u[0],o=u[1];if(s& & o){var m=s.split(`
`),j=o.split(`
`),j=o.split(`
`);for(n=a=0;a< m.length & & ! m [ a ] . includes ( " DetermineComponentFrameRoot " ) ; ) a + + ; for ( ; n < j . length & & ! j [ n ] . includes ( " DetermineComponentFrameRoot " ) ; ) n + + ; if ( a = ==m.length||n===j.length)for(a=m.length-1,n=j.length-1;1<=a&&0<=n&&m[a]!==j[n];)n--;for(;1<=a&&0<=n;a--,n--)if(m[a]!==j[n]){if(a!==1||n!==1)do if ( a-- , n-- , 0 > n||m[a]!==j[n]){var E =`
`);for(n=a=0;a< m.length & & ! m [ a ] . includes ( " DetermineComponentFrameRoot " ) ; ) a + + ; for ( ; n < j . length & & ! j [ n ] . includes ( " DetermineComponentFrameRoot " ) ; ) n + + ; if ( a = ==m.length||n===j.length)for(a=m.length-1,n=j.length-1;1<=a&&0<=n&&m[a]!==j[n];)n--;for(;1<=a&&0<=n;a--,n--)if(m[a]!==j[n]){if(a!==1||n!==1)do if ( a-- , n-- , 0 > n||m[a]!==j[n]){var N =`
`+m[a].replace(" at new "," at ");return t.displayName&&E .includes("<anonymous>")&&(E=E .replace("<anonymous>",t.displayName)),E }while(1<=a&&0<=n); break}}}finally{r l=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?r e(l):""}function m a(t,e){switch(t.tag){case 26:case 27:case 5:return r e(t.type);case 16:return r e("Lazy");case 13:return t.child!==e& & e!==null?r e("Suspense Fallback"):r e("Suspense");case 19:return r e("SuspenseList");case 0:case 15:return F l(t.type,!1);case 11:return F l(t.type.render,!1);case 1:return F l(t.type,!0);case 31:return r e("Activity");case 30:return r e("ViewTransition");default:return""}}function D l(t){try{var e="",l=null;do e+=m a(t,l),l=t,t=t.return;while(t);return e}catch(a){return`
`+m[a].replace(" at new "," at ");return t.displayName&&N .includes("<anonymous>")&&(N=N .replace("<anonymous>",t.displayName)),N }while(1<=a&&0<=n); break}}}finally{f l=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?o e(l):""}function y a(t,e){switch(t.tag){case 26:case 27:case 5:return o e(t.type);case 16:return o e("Lazy");case 13:return t.child!==e& & e!==null?o e("Suspense Fallback"):o e("Suspense");case 19:return o e("SuspenseList");case 0:case 15:return $ l(t.type,!1);case 11:return $ l(t.type.render,!1);case 1:return $ l(t.type,!0);case 31:return o e("Activity");case 30:return o e("ViewTransition");default:return""}}function k l(t){try{var e="",l=null;do e+=y a(t,l),l=t,t=t.return;while(t);return e}catch(a){return`
Error generating stack: `+a.message+`
Error generating stack: `+a.message+`
`+a.stack}}var te=Object.prototype.hasOwnProperty,Pe=i.unstable_scheduleCallback,qe=i.unstable_cancelCallback,_l=i.unstable_shouldYield,ol=i.unstable_requestPaint,Wt=i.unstable_now,Ul=i.unstable_getCurrentPriorityLevel,mn=i.unstable_ImmediatePriority,Qa=i.unstable_UserBlockingPriority,Se=i.unstable_NormalPriority,Xa=i.unstable_LowPriority,ha=i.unstable_IdlePriority,su=i.log,ru=i.unstable_setDisableYieldValue,Wl=null,Ae=null;function fl(t){if(typeof su=="function"& & ru(t),Ae& & typeof Ae.setStrictMode=="function")try{Ae.setStrictMode(Wl,t)}catch{}}var Oe=Math.clz32?Math.clz32:du,ou=Math.log,fu=Math.LN2;function du(t){return t>>>=0,t===0?32:31-(ou(t)/fu|0)|0}var B=256,U=262144,$=4194304;function at(t){var e=t&42; if(e!==0)return e;switch(t& -t){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 t&-t; case 262144:case 524288:case 1048576:case 2097152:return t&3932160; case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560; case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function O(t,e,l){var a=t.pendingLanes;if(a===0)return 0;var n=0,u=t.suspendedLanes,s=t.pingedLanes;t=t.warmLanes;var o=a&134217727; return o!==0?(a=o& ~u,a!==0?n=at(a):(s& =o,s!==0?n=at(s):l||(l=o& ~t,l!==0& & (n=at(l))))):(o=a& ~u,o!==0?n=at(o):s!==0?n=at(s):l||(l=a& ~t,l!==0& & (n=at(l)))),n===0?0:e!==0& & e!==n& & (e& u)===0& & (u=n& -n,l=e& -e,u>=l||u===32& & (l& 4194048)!==0)?e:n}function J(t,e){return(t.pendingLanes& ~(t.suspendedLanes& ~t.pingedLanes)& e)===0}function nt(t,e){(e&8)!==0&&(e|=e&32); var l=t.entangledLanes;if(l!==0)for(t=t.entanglements,l&=e; 0< l ; ) { var a = 31-Oe(l),n=1<<a;e|=t[a],l&=~n}return e } function qt ( t , e ) { switch ( t ) { case 1:case 2:case 4:case 8:case 64:return e + 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 e + 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 Dt ( ) { var t = $;return $ < < = 1 , ( $ & 62914560 ) = = = 0 & & ( $ = 4194304 ) , t } function xe ( t ) { for ( var e = [],l=0;31 > l;l++)e.push(t);return e}function be(t,e){t.pendingLanes|=e,e!==268435456& & (t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Dc(t,e,l,a,n,u){var s=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0; var o=t.entanglements,m=t.expirationTimes,j=t.hiddenUpdates;for(l=s&~l; 0< l ; ) { var E = 31-Oe(l),z=1<<E;o[E]=0,m[E]=-1;var p = j[E];if(p!==null)for(j[E]=null,E=0;E<p.length;E++){var _ = p[E];_!==null&&(_.lane&=-536870913)}l&=~z}a!==0&&ci(t,a,0),u!==0&&n===0&&t.tag!==0&&(t.suspendedLanes|=u&~(s&~e))}function ci ( t , e , l ) { t . pendingLanes | = e , t . suspendedLanes & = ~ e ; var a = 31-Oe(e);t.entangledLanes|=e,t.entanglements[a]=t.entanglements[a]|1073741824|l&261930}function hn ( t , e ) { var l = t.entangledLanes|=e;for(t=t.entanglements;l;){var a = 31-Oe(l),n=1<<a;n&e|t[a]&e&&(t[a]|=e),l&=~n}}function $ l ( t , e ) { var l = e&-e;return l = (l&42)!==0?1:Hl(l),(l&(t.suspendedLanes|e))!==0?0:l}function Hl ( t ) { switch ( t ) { case 2:t = 1;break;case 8:t = 4;break;case 32:t = 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:t = 128;break;case 268435456:t = 134217728;break;default:t=0}return t } function mu ( t ) { return t & = -t , 2 < t ? 8 < t ? ( t & 134217727 ) ! = = 0 ? 32:268435456:8:2 } function hu ( ) { var t = dt.p;return t ! = = 0 ? t: ( t = window.event,t===void 0 ? 32:Eh ( t . type ) ) } function Ze ( t , e ) { var l = dt.p;try{return dt . p = t,e()}finally{dt.p=l}}var ae = Math.random().toString(36).slice(2),ve="__reactFiber$"+ae,Ke="__reactProps$"+ae,vn="__reactContainer$"+ae,So="__reactEvents$"+ae,Ph="__reactListeners$"+ae,tv="__reactHandles$"+ae,xo="__reactResources$"+ae,vu="__reactMarker$"+ae,si="__reactLoad$"+ae;function ri ( t ) { delete t [ ve ] , delete t [ Ke ] , delete t [ Ph ] , delete t [ tv ] } function La ( t ) { var e ; if ( e = t[ve])return e ; for ( var l = t.parentNode;l;){if(e=l[vn]||l[ve]){if(l=e.alternate,e.child!==null||l!==null&&l.child!==null)for(t=uh(t);t!==null;){if(l=t[ve])return l ; t = uh(t)}return e } t = l,l=t.parentNode}return null } function yn ( t ) { if ( t = t[ve]||t[vn]){var e = t.tag;if(e===5||e===6||e===13||e===31||e===26||e===27||e===3)return t } return null } function yu ( t ) { var e = t.tag;if(e===5||e===26||e===27||e===6)return t . stateNode ; throw Error ( f ( 33 ) ) } function gn ( t ) { var e = t[xo];return e | | ( e = t[xo]={hoistableStyles:new Map , hoistableScripts:new Map } ) , e } function je ( t ) { t [ vu ] = ! 0 } function bo ( t ) { t [ si ] = void 0 } var jo = new Set , To = {};function Va ( t , e ) { pn ( t , e ) , pn ( t + " Capture " , e ) } function pn ( t , Line truncated
`+a.stack}}var te=Object.prototype.hasOwnProperty,tl=i.unstable_scheduleCallback,Be=i.unstable_cancelCallback,Nl=i.unstable_shouldYield,dl=i.unstable_requestPaint,$t=i.unstable_now,Hl=i.unstable_getCurrentPriorityLevel,vn=i.unstable_ImmediatePriority,Va=i.unstable_UserBlockingPriority,be=i.unstable_NormalPriority,Il=i.unstable_LowPriority,ga=i.unstable_IdlePriority,fu=i.log,du=i.unstable_setDisableYieldValue,Pl=null,Ce=null;function ml(t){if(typeof fu=="function"& & du(t),Ce& & typeof Ce.setStrictMode=="function")try{Ce.setStrictMode(Pl,t)}catch{}}var Ae=Math.clz32?Math.clz32:vu,mu=Math.log,hu=Math.LN2;function vu(t){return t>>>=0,t===0?32:31-(mu(t)/hu|0)|0}var q=256,k=262144,I=4194304;function at(t){var e=t&42; if(e!==0)return e;switch(t& -t){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 t&-t; case 262144:case 524288:case 1048576:case 2097152:return t&3932160; case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560; case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function qt(t,e,l){var a=t.pendingLanes;if(a===0)return 0;var n=0,u=t.suspendedLanes,s=t.pingedLanes;t=t.warmLanes;var o=a&134217727; return o!==0?(a=o& ~u,a!==0?n=at(a):(s& =o,s!==0?n=at(s):l||(l=o& ~t,l!==0& & (n=at(l))))):(o=a& ~u,o!==0?n=at(o):s!==0?n=at(s):l||(l=a& ~t,l!==0& & (n=at(l)))),n===0?0:e!==0& & e!==n& & (e& u)===0& & (u=n& -n,l=e& -e,u>=l||u===32& & (l& 4194048)!==0)?e:n}function hl(t,e){return(t.pendingLanes& ~(t.suspendedLanes& ~t.pingedLanes)& e)===0}function w(t,e){(e&8)!==0&&(e|=e&32); var l=t.entangledLanes;if(l!==0)for(t=t.entanglements,l&=e; 0< l ; ) { var a = 31-Ae(l),n=1<<a;e|=t[a],l&=~n}return e } function Z ( t , e ) { switch ( t ) { case 1:case 2:case 4:case 8:case 64:return e + 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 e + 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 K ( ) { var t = I;return I < < = 1 , ( I & 62914560 ) = = = 0 & & ( I = 4194304),t}function Yt ( t ) { for ( var e = [],l=0;31 > l;l++)e.push(t);return e}function St(t,e){t.pendingLanes|=e,e!==268435456& & (t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function qe(t,e,l,a,n,u){var s=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0; var o=t.entanglements,m=t.expirationTimes,j=t.hiddenUpdates;for(l=s&~l; 0< l ; ) { var N = 31-Ae(l),R=1<<N;o[N]=0,m[N]=-1;var p = j[N];if(p!==null)for(j[N]=null,N=0;N<p.length;N++){var E = p[N];E!==null&&(E.lane&=-536870913)}l&=~R}a!==0&&Cl(t,a,0),u!==0&&n===0&&t.tag!==0&&(t.suspendedLanes|=u&~(s&~e))}function Cl ( t , e , l ) { t . pendingLanes | = e , t . suspendedLanes & = ~ e ; var a = 31-Ae(e);t.entangledLanes|=e,t.entanglements[a]=t.entanglements[a]|1073741824|l&261930}function yn ( t , e ) { var l = t.entangledLanes|=e;for(t=t.entanglements;l;){var a = 31-Ae(l),n=1<<a;n&e|t[a]&e&&(t[a]|=e),l&=~n}}function ta ( t , e ) { var l = e&-e;return l = (l&42)!==0?1:Bl(l),(l&(t.suspendedLanes|e))!==0?0:l}function Bl ( t ) { switch ( t ) { case 2:t = 1;break;case 8:t = 4;break;case 32:t = 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:t = 128;break;case 268435456:t = 134217728;break;default:t=0}return t } function yu ( t ) { return t & = -t , 2 < t ? 8 < t ? ( t & 134217727 ) ! = = 0 ? 32:268435456:8:2 } function gu ( ) { var t = ht.p;return t ! = = 0 ? t: ( t = window.event,t===void 0 ? 32:Nh ( t . type ) ) } function Ke ( t , e ) { var l = ht.p;try{return ht . p = t,e()}finally{ht.p=l}}var ne = Math.random().toString(36).slice(2),ye="__reactFiber$"+ne,Je="__reactProps$"+ne,gn="__reactContainer$"+ne,xo="__reactEvents$"+ne,Ph="__reactListeners$"+ne,tv="__reactHandles$"+ne,bo="__reactResources$"+ne,pu="__reactMarker$"+ne,fi="__reactLoad$"+ne;function di ( t ) { delete t [ ye ] , delete t [ Je ] , delete t [ Ph ] , delete t [ tv ] } function Za ( t ) { var e ; if ( e = t[ye])return e ; for ( var l = t.parentNode;l;){if(e=l[gn]||l[ye]){if(l=e.alternate,e.child!==null||l!==null&&l.child!==null)for(t=ih(t);t!==null;){if(l=t[ye])return l ; t = ih(t)}return e } t = l,l=t.parentNode}return null } function pn ( t ) { if ( t = t[ye]||t[gn]){var e = t.tag;if(e===5||e===6||e===13||e===31||e===26||e===27||e===3)return t } return null } function Su ( t ) { var e = t.tag;if(e===5||e===26||e===27||e===6)return t . stateNode ; throw Error ( f ( 33 ) ) } function Sn ( t ) { var e = t[bo];return e | | ( e = t[bo]={hoistableStyles:new Map , hoistableScripts:new Map } ) , e } function je ( t ) { t [ pu ] = ! 0 } function jo ( t ) { t [ fi ] = void 0 } var To = new Set , _o = {};function Ka ( t , e ) { xn ( t , e ) , xn ( t + " Capture " , e ) } function xn ( t , e Line truncated
`).replace(G0,"")}function qm(t,e){return e=Bm(e),Bm(t)===e}function Vt(t,e,l,a,n,u){switch(l){case"children":if(typeof a=="string")e==="body"||e==="textarea"&&a===""||xn(t,a); else if(typeof a=="number"||typeof a=="bigint")e!=="body"&&xn(t,""+a); else return;break;case"className":fi(t,"class",a);break;case"tabIndex":fi(t,"tabindex",a);break;case"dir":case"role":case"viewBox":case"width":case"height":fi(t,l,a);break;case"style":Do(t,a,u);return;case"data":if(e!=="object"){fi(t,"data",a);break}case"src":case"href":if(a===""&&(e!=="a"||l!=="href")){t.removeAttribute(l); break}if(a==null||typeof a=="function"||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=di(a),t.setAttribute(l,a);break;case"action":case"formAction":if(typeof a=="function"){t.setAttribute(l,"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 u=="function"&&(l==="formAction"?(e!=="input"&&Vt(t,e,"name",n.name,n,null),Vt(t,e,"formEncType",n.formEncType,n,null),Vt(t,e,"formMethod",n.formMethod,n,null),Vt(t,e,"formTarget",n.formTarget,n,null)):(Vt(t,e,"encType",n.encType,n,null),Vt(t,e,"method",n.method,n,null),Vt(t,e,"target",n.target,n,null))); if(a==null||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=di(a),t.setAttribute(l,a);break;case"onClick":a!=null&&(t.onclick=wl); return;case"onScroll":a!=null&&At("scroll",t); return;case"onScrollEnd":a!=null&&At("scrollend",t); return;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(f(61));if(l=a.__html,l!=null){if(n.children!=null)throw Error(f(60));(u!=null?u.__html:void 0)!==l&&(t.innerHTML=l)}}break; case"multiple":t.multiple=a& & typeof a!="function"& & typeof a!="symbol";break;case"muted":t.muted=a& & typeof a!="function"& & typeof a!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(a==null||typeof a=="function"||typeof a=="boolean"||typeof a=="symbol"){t.removeAttribute("xlink:href");break}l=di(a),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":a!=null& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,a):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":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":a& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":a===!0?t.setAttribute(l,""):a!==!1& & a!=null& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,a):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":a!=null& & typeof a!="function"& & typeof a!="symbol"&&!isNaN(a)&&1<=a?t.setAttribute(l,a):t.removeAttribute(l); break;case"rowSpan":case"start":a==null||typeof a=="function"||typeof a=="symbol"||isNaN(a)?t.removeAttribute(l):t.setAttribute(l,a);break;case"popover":At("beforetoggle",t),At("toggle",t),oi(t,"popover",a);break;case"xlinkActuate":Il(t,"http://www.w3.org/1999/xlink","xlink:actuate",a);break;case"xlinkArcrole":Il(t,"http://www.w3.org/1999/xlink","xlink:arcrole",a);break;case"xlinkRole":Il(t,"http://www.w3.org/1999/xlink","xlink:role",a);break;case"xlinkShow":Il(t,"http://www.w3.org/1999/xlink","xlink:show",a);break;case"xlinkTitle":Il(t,"http://www.w3.org/1999/xlink","xlink:title",a);break;case"xlinkType":Il(t,"http://www.w3.org/1999/xlink","xlink:type",a);break;case"xmlBase":Il(t,"http://www.w3.org/XML/1998/namespace","xml:base",a);break;case"xmlLang":Il(t,"http://www.w3.org/XML/1998/namespace","xml:lang",a);break;case"xmlSpace":Il(t,"http://www.w3.org/XML/1998/namespace","xml:space",a);break;case"is":oi(t,"is",a);break;case"innerText":case"textContent":return;default:if(!(2< l.length ) | | l [ 0 ] ! = = " o " & & l [ 0 ] ! = = " O " | | l [ 1 ] ! = = " n " & & l [ 1 ] ! = = " N " ) l = iv.get(l)||l,oi(t,l,a);else return } kt = !0}function Hr ( t , e , l , a , n , u ) { switch ( l ) { case " style " :Do ( t , a , u ) ; return ; case " dangerouslySetInnerHTML " :if ( a ! = null ) { if ( typeof a ! = " object " | | ! ( " __html " in a ) ) throw Error ( f ( 61 ) ) ; if ( l = a.__html,l!=null){if(n.children!=null)throw Error ( f ( 60 ) ) ; ( u ! = null ? u . __html:void 0 ) ! = = l & & ( t . innerHTML = l)}}break;case"children":if(typeof a = ="string")xn(t,a);else if ( typeof a = ="number"||typeof a = ="bigint")xn(t,""+a);else return ; break ; case " onScroll " :a ! = null & & At ( " scroll " , t ) ; return ; case " onScrollEnd " :a ! = null & & At ( " scro Line truncated
`).replace(G0,"")}function Ym(t,e){return e=qm(e),qm(t)===e}function Kt(t,e,l,a,n,u){switch(l){case"children":if(typeof a=="string")e==="body"||e==="textarea"&&a===""||jn(t,a); else if(typeof a=="number"||typeof a=="bigint")e!=="body"&&jn(t,""+a); else return;break;case"className":hi(t,"class",a);break;case"tabIndex":hi(t,"tabindex",a);break;case"dir":case"role":case"viewBox":case"width":case"height":hi(t,l,a);break;case"style":Uo(t,a,u);return;case"data":if(e!=="object"){hi(t,"data",a);break}case"src":case"href":if(a===""&&(e!=="a"||l!=="href")){t.removeAttribute(l); break}if(a==null||typeof a=="function"||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=vi(a),t.setAttribute(l,a);break;case"action":case"formAction":if(typeof a=="function"){t.setAttribute(l,"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 u=="function"&&(l==="formAction"?(e!=="input"&&Kt(t,e,"name",n.name,n,null),Kt(t,e,"formEncType",n.formEncType,n,null),Kt(t,e,"formMethod",n.formMethod,n,null),Kt(t,e,"formTarget",n.formTarget,n,null)):(Kt(t,e,"encType",n.encType,n,null),Kt(t,e,"method",n.method,n,null),Kt(t,e,"target",n.target,n,null))); if(a==null||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=vi(a),t.setAttribute(l,a);break;case"onClick":a!=null&&(t.onclick=ql); return;case"onScroll":a!=null&&Rt("scroll",t); return;case"onScrollEnd":a!=null&&Rt("scrollend",t); return;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(f(61));if(l=a.__html,l!=null){if(n.children!=null)throw Error(f(60));(u!=null?u.__html:void 0)!==l&&(t.innerHTML=l)}}break; case"multiple":t.multiple=a& & typeof a!="function"& & typeof a!="symbol";break;case"muted":t.muted=a& & typeof a!="function"& & typeof a!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(a==null||typeof a=="function"||typeof a=="boolean"||typeof a=="symbol"){t.removeAttribute("xlink:href");break}l=vi(a),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":a!=null& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,a):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":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":a& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":a===!0?t.setAttribute(l,""):a!==!1& & a!=null& & typeof a!="function"& & typeof a!="symbol"?t.setAttribute(l,a):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":a!=null& & typeof a!="function"& & typeof a!="symbol"&&!isNaN(a)&&1<=a?t.setAttribute(l,a):t.removeAttribute(l); break;case"rowSpan":case"start":a==null||typeof a=="function"||typeof a=="symbol"||isNaN(a)?t.removeAttribute(l):t.setAttribute(l,a);break;case"popover":Rt("beforetoggle",t),Rt("toggle",t),mi(t,"popover",a);break;case"xlinkActuate":ea(t,"http://www.w3.org/1999/xlink","xlink:actuate",a);break;case"xlinkArcrole":ea(t,"http://www.w3.org/1999/xlink","xlink:arcrole",a);break;case"xlinkRole":ea(t,"http://www.w3.org/1999/xlink","xlink:role",a);break;case"xlinkShow":ea(t,"http://www.w3.org/1999/xlink","xlink:show",a);break;case"xlinkTitle":ea(t,"http://www.w3.org/1999/xlink","xlink:title",a);break;case"xlinkType":ea(t,"http://www.w3.org/1999/xlink","xlink:type",a);break;case"xmlBase":ea(t,"http://www.w3.org/XML/1998/namespace","xml:base",a);break;case"xmlLang":ea(t,"http://www.w3.org/XML/1998/namespace","xml:lang",a);break;case"xmlSpace":ea(t,"http://www.w3.org/XML/1998/namespace","xml:space",a);break;case"is":mi(t,"is",a);break;case"innerText":case"textContent":return;default:if(!(2< l.length ) | | l [ 0 ] ! = = " o " & & l [ 0 ] ! = = " O " | | l [ 1 ] ! = = " n " & & l [ 1 ] ! = = " N " ) l = iv.get(l)||l,mi(t,l,a);else return } Bt = !0}function Hr ( t , e , l , a , n , u ) { switch ( l ) { case " style " :Uo ( t , a , u ) ; return ; case " dangerouslySetInnerHTML " :if ( a ! = null ) { if ( typeof a ! = " object " | | ! ( " __html " in a ) ) throw Error ( f ( 61 ) ) ; if ( l = a.__html,l!=null){if(n.children!=null)throw Error ( f ( 60 ) ) ; ( u ! = null ? u . __html:void 0 ) ! = = l & & ( t . innerHTML = l)}}break;case"children":if(typeof a = ="string")jn(t,a);else if ( typeof a = ="number"||typeof a = ="bigint")jn(t,""+a);else return ; break ; case " onScroll " :a ! = null & & Rt ( " scroll " , t ) ; return ; case " onScrollEnd " :a ! = null & & Rt ( " scro Line truncated
`;q t& & (x e+=q t+`
`;Y t& & (q e+=Y t+`
`),D t& & (x e+=(Array.isArray(D t)?D t.join(`
`),S t& & (q e+=(Array.isArray(S t)?S t.join(`
`):String(D t))+`
`):String(S t))+`
`),xe+=JSON.stringify(nt,null,2).slice(0,4e3),jl(xe),ce("已返回登录信息,见下方")}catch(nt){ce("发起失败:"+nt.message)}},[]),U=d.useCallback(async()=>{const O=V.trim();if(!O){W("请填要查配额的用户 id");return}try{const J=await tt(K.adminQuotaUser(O));W("用户 "+O.slice(0,8)+":本月用量 "+fo(J.used_usd_micros)+" / 配额 "+fo(J.quota_usd_micros)+(J.remaining_usd_micros!==null& & J.remaining_usd_micros!==void 0?"(剩余 "+fo(J.remaining_usd_micros)+") ":"")+" | 月份 "+(J.month||""))}catch(J){W(oo(J))}},[V]),$=d.useCallback(async()=>{if(window.confirm("确定手动触发 sweep 吗?超阈值的陈旧 running 任务会被标为 interrupted。"))try{const J=(await tt(K.adminSweep,"POST",{})).swept||[];W("sweep 完成,清理 "+J.length+" 个任务"+(J.length?": "+J.join("、"):""))}catch(O){W(oo(O))}},[]),at=d.useCallback(async()=>{try{const O=await tt(K.adminBackup,"POST",{});W("备份完成:backend="+O.backend+" | 路径 "+O.path+" | 大小 "+O.size_bytes+" 字节 | 任务 "+O.task_count+" 行")}catch(O){W(oo(O))}},[]);return{keySaved:i,keyState:h,quotaText:g,healthText:A,adminGate:H,adminBody:Y,adminResult:k,adminUserId:V,setAdminUserId:I,projects:X,projectId:gt,setProjectId:xt,projectMsg:Z,githubRepos:w,workers:et,workersSummary:Bt,workersError:wt,members:ot,memberMsg:G,memberError:ut,skills:pt,apps:we,mcpServers:y,skillMsg:ct,skillError:Nt,mcpMsg:Rt,mcpOauthMsg:dt,mcpOauthBox:Ga,envs:Le,envCount:Gt,envMsg:Jl,envRepoLine:da,envRepoBar:zl,envRepoMsg:Tl,envSelect:se,setEnvSelect:re,models:rl,modelCustomVisible:ma,refreshHealth:qe,loadQuota:_l,probeAdmin:ol,refreshProjects:Wt,loadGithubRepos:Ul,loadRelayModels:mn,refreshWorkers:Qa,refreshEnvs:Se,refreshMembers:Xa,refreshSkills:ha,saveKeyInput:su,clearKeyInput:ru,createProject:Wl,createEnv:Ae,archiveEnv:fl,saveEnvRepo:Oe,inviteMember:ou,changeMemberRole:fu,reloadMcp:du,mcpOauth:B,adminQuota:U,adminSweep:$,adminBackup:at}}const mo=20;function ag(){const[i,r]=d.useState([]),[h,f]=d.useState(""),[g,C]=d.useState(""),[A,S]=d.useState(""),[H,R]=d.useState(""),[Y,x]=d.useState(0),[k,W]=d.useState(0),[V,I]=d.useState({}),X=d.useRef(0),ht=d.useRef({status:"",executor:"",q:""});ht.current={status:g,executor:A,q:H};const gt=d.useRef(""),xt=d.useCallback(async(ot,rt,G)=>{const N=ot!==void 0?ot:rt;if(!N){r([]),W(0),I({});return}gt.current=N;const ut=G!==void 0?G:X.current,St=ht.current;try{const pt=await tt(K.tasksPage(N,mo,ut*mo,St.status,St.executor,St.q));r(pt.tasks||[]),W(pt.total??(pt.tasks||[]).length),I(pt.status_counts||{}),f("")}catch(pt){f("加载失败:"+pt.message)}},[]),Z=d.useCallback(ot=>{const rt=Math.max(0,ot);X.current=rt,x(rt)},[]),Tt=d.useCallback(ot=>{Z(ot),xt(gt.current||void 0,void 0,ot)},[xt,Z]);d.useEffect(()=>{if(!gt.current)return;const ot=setTimeout(()=>{xt(gt.current,void 0,0)},300);return()=>clearTimeout(ot)},[g,A,H]);const w=d.useCallback(ot=>{C(ot),Z(0)},[Z]),Q=d.useCallback(ot=>{S(ot),Z(0)},[Z]),et=d.useCallback(ot=>{R(ot),Z(0)},[Z]),zt=d.useCallback(async ot=>{Z(0),await xt(ot,void 0,0)},[xt,Z]),Bt=Math.max(1,Math.ceil(k/mo)),vt=k===0?"共 0 个任务":"共 "+k+" 个任务,第 "+(Y+1)+" / "+Bt+" 页",wt=i,q=d.useCallback(async(ot,rt)=>{const G={...ot};rt.length& & (G.upload_id=await tg(rt));const N=await tt(K.tasksCreate,"POST",G);return"任务已建:"+Ne(N.id)},[]);return{tasks:i,taskError:h,statusFilter:g,setStatusFilter:w,executorFilter:A,setExecutorFilter:Q,searchText:H,setSearchText:et,filteredTasks:wt,taskCountText:vt,refreshTasks:xt,refreshTasksFirstPage:zt,page:Y,totalPages:Bt,taskTotal:k,taskStatusCounts:V,goToPage:Tt,dispatch:q}}function ng(i,r){const[h,f]=d.useState(null),[g,C]=d.useState(""),[A,S]=d.useState(""),[H,R]=d.useState(""),[Y,x]=d.useState(""),[k,W]=d.useState(void 0),[V,I]=d.useState(!1),[X,ht]=d.useState(""),[gt,xt]=d.useState([]),[Z,Tt]=d.useState([]),[w,Q]=d.useState(""),[et,zt]=d.useState([]),[Bt,vt]=d.useState(""),[wt,q]=d.useState(""),[ot,rt]=d.useState([]),[G,N]=d.useState(""),[ut,St]=d.useState(""),[pt,ge]=d.useState(""),[we,Ce]=d.useState(""),[y,D]=d.useState([]),[ct,it]=d.useState([]),[Nt,_t]=d.useState(""),[Rt,P]=d.useState([]),[dt,ce]=d.useState(""),[Ga,jl]=d.useState(""),[Le,le]=d.useState(""),[Gt,he]=d.useState(""),[Jl,pe]=d.useState([]),[da,Ve]=d.useState(""),[zl,Rl]=d.useState(null),Tl=d.useRef(null),Be=d.useRef(null),se=d.useRef(null);se.current=h;const re=d.useCallback(()=>{if(Tl.current){try{Tl.current.abort()}catch{}Tl.current=null}Be.current& & (clearTimeout(Be.current),Be.current=null)},[]),rl=d.useCallback(async B=>{try{const U=await tt(K.taskAgents(B));Tt(U.agents||[]),Q(U.note||"")}catch(U){Tt([]),Q("子代理链路加载失败:"+U.message)}},[]),Fl=d.useCallback(B=>{Be.current& & clearTimeout(Be.current),Be.current=setTimeout(()=>void rl(B),1e3)},[rl]),ma=d.useCallback(async B=>{if(!B.coordinator_parts){xt([]);return}try{const U=await tt(K.tasksByParent(B.project_id||"",B.id));xt(U.tasks||[])}catch{xt([])}},[]),Dl=d.useCallback(async B=>{try{Line truncated
`),qe+=JSON.stringify(K,null,2).slice(0,4e3),_l(qe),se("已返回登录信息,见下方")}catch(K){se("发起失败:"+K.message)}},[]),I=d.useCallback(async()=>{const w=tt.trim();if(!w){L("请填要查配额的用户 id");return}try{const Z=await W(F.adminQuotaUser(w));L("用户 "+w.slice(0,8)+":本月用量 "+iu(Z.used_usd_micros)+" / 配额 "+iu(Z.quota_usd_micros)+(Z.remaining_usd_micros!==null& & Z.remaining_usd_micros!==void 0?"(剩余 "+iu(Z.remaining_usd_micros)+") ":"")+" | 月份 "+(Z.month||""))}catch(Z){L(Dc(Z))}},[tt]),at=d.useCallback(async(w,Z)=>{const K=w.trim();if(!K){L("请填要设置配额的用户 id");return}let Yt;if(!Z.trim())Yt=null;else{const St=Number(Z.trim());if(!Number.isFinite(St)||St< 0 ) { L ( " 配额金额无效 : 请输入 > = 0 的美元数,留空表示不限额");return}Yt=Math.round(St*1e6)}try{const St=await W(F.adminQuotas,"POST",{user_id:K,quota_usd_micros:Yt});L("配额已设置:用户 "+K.slice(0,8)+":本月用量 "+iu(St.used_usd_micros)+" / 配额 "+iu(St.quota_usd_micros)+(St.remaining_usd_micros!==null& & St.remaining_usd_micros!==void 0?"(剩余 "+iu(St.remaining_usd_micros)+") ":"")+" | 月份 "+(St.month||""))}catch(St){L(Dc(St))}},[]),qt=d.useCallback(async()=>{if(window.confirm("确定手动触发 sweep 吗?超阈值的陈旧 running 任务会被标为 interrupted。"))try{const Z=(await W(F.adminSweep,"POST",{})).swept||[];L("sweep 完成,清理 "+Z.length+" 个任务"+(Z.length?": "+Z.join("、"):""))}catch(w){L(Dc(w))}},[]),hl=d.useCallback(async()=>{try{const w=await W(F.adminBackup,"POST",{});L("备份完成:backend="+w.backend+" | 路径 "+w.path+" | 大小 "+w.size_bytes+" 字节 | 任务 "+w.task_count+" 行")}catch(w){L(Dc(w))}},[]);return{keySaved:i,keyState:h,quotaText:y,healthText:M,adminGate:_,adminBody:Y,adminResult:H,adminUserId:tt,setAdminUserId:dt,projects:J,projectId:_t,setProjectId:Dt,projectMsg:Q,githubRepos:D,workers:et,workersSummary:Mt,workersError:Nt,members:nt,memberMsg:G,memberError:ut,skills:pt,apps:we,mcpServers:g,skillMsg:ct,skillError:Ot,mcpMsg:kt,mcpOauthMsg:ht,mcpOauthBox:La,envs:Ve,envCount:Qt,envMsg:Wl,envRepoLine:va,envRepoBar:Ul,envRepoMsg:El,envSelect:re,setEnvSelect:oe,models:fl,modelCustomVisible:ya,refreshHealth:Be,loadQuota:Nl,probeAdmin:dl,refreshProjects:$t,loadGithubRepos:Hl,loadRelayModels:vn,refreshWorkers:Va,refreshEnvs:be,refreshMembers:Il,refreshSkills:ga,saveKeyInput:fu,clearKeyInput:du,createProject:Pl,createEnv:Ce,archiveEnv:ml,saveEnvRepo:Ae,inviteMember:mu,changeMemberRole:hu,removeMember:vu,reloadMcp:q,mcpOauth:k,adminQuota:I,adminSetQuota:at,adminSweep:qt,adminBackup:hl}}const mo=20;function ag(){const[i,r]=d.useState([]),[h,f]=d.useState(""),[y,C]=d.useState(""),[M,S]=d.useState(""),[_,O]=d.useState(""),[Y,x]=d.useState(0),[H,L]=d.useState(0),[tt,dt]=d.useState({}),J=d.useRef(0),gt=d.useRef({status:"",executor:"",q:""});gt.current={status:y,executor:M,q:_};const _t=d.useRef(""),Dt=d.useCallback(async(nt,rt,G)=>{const A=nt!==void 0?nt:rt;if(!A){r([]),L(0),dt({});return}_t.current=A;const ut=G!==void 0?G:J.current,bt=gt.current;try{const pt=await W(F.tasksPage(A,mo,ut*mo,bt.status,bt.executor,bt.q));r(pt.tasks||[]),L(pt.total??(pt.tasks||[]).length),dt(pt.status_counts||{}),f("")}catch(pt){f("加载失败:"+pt.message)}},[]),Q=d.useCallback(nt=>{const rt=Math.max(0,nt);J.current=rt,x(rt)},[]),ft=d.useCallback(nt=>{Q(nt),Dt(_t.current||void 0,void 0,nt)},[Dt,Q]);d.useEffect(()=>{if(!_t.current)return;const nt=setTimeout(()=>{Dt(_t.current,void 0,0)},300);return()=>clearTimeout(nt)},[y,M,_]);const D=d.useCallback(nt=>{C(nt),Q(0)},[Q]),X=d.useCallback(nt=>{S(nt),Q(0)},[Q]),et=d.useCallback(nt=>{O(nt),Q(0)},[Q]),xt=d.useCallback(async nt=>{Q(0),await Dt(nt,void 0,0)},[Dt,Q]),Mt=Math.max(1,Math.ceil(H/mo)),mt=H===0?"共 0 个任务":"共 "+H+" 个任务,第 "+(Y+1)+" / "+Mt+" 页",Nt=i,B=d.useCallback(async(nt,rt)=>{const G={...nt};rt.length& & (G.upload_id=await tg(rt));const A=await W(F.tasksCreate,"POST",G);return"任务已建:"+pe(A.id)},[]);return{tasks:i,taskError:h,statusFilter:y,setStatusFilter:D,executorFilter:M,setExecutorFilter:X,searchText:_,setSearchText:et,filteredTasks:Nt,taskCountText:mt,refreshTasks:Dt,refreshTasksFirstPage:xt,page:Y,totalPages:Mt,taskTotal:H,taskStatusCounts:tt,goToPage:ft,dispatch:B}}function ng(i,r){const[h,f]=d.useState(null),[y,C]=d.useState(""),[M,S]=d.useState(""),[_,O]=d.useState(""),[Y,x]=d.useState(""),[H,L]=d.useState(void 0),[tt,dt]=d.useState(!1),[J,gt]=d.useState(""),[_t,Dt]=d.useState([]),[Q,ft]=d.useState([]),[D,X]=d.useState(""),[et,xt]=d.useState([]),[Mt,mt]=d.useState(""),[Nt,B]=d.useState(""),[nt,rt]=d.useState([]),[G,A]=d.useState(""),[ut,bt]=d.useState(""),[pt,Se]=d.useState(""),[we,Ne]=d.useState(""),[g,U]=d.useState([]),[ct,it]=d.useState([]),[Ot,Et]=d.useState(""),[kt,P]=d.useState([]),[ht,se]=d.useState(""),[La,_l]=d.useState(""),[Ve,ae]=d.useState(""),[Qt,ve]=d.useState(""),[Wl,xe]=d.useState([]),[va,Ze]=d.useState(""),Line truncated
`);h n=H l.pop()||"";for(const m u of H l){const h u=m u.split(`
`);y n=B l.pop()||"";for(const y u of B l){const g u=y u.split(`
`).filter(Z e=>Z e.indexOf("data: ")===0).map(Z e=>Z e.slice(6)).join(`
`).filter(K e=>K e.indexOf("data: ")===0).map(K e=>K e.slice(6)).join(`
`);if(h u)try{const Z e=JSON.parse(h u);if(Z e.type==="snapshot")at=Z e.entries||[],Object.keys(O ).forEach(a e=>delete O[a e]),at.forEach((a e,v e)=>{a e.id&&(O[a e.id]=v e)}),J=Z e.note||"",rt([...at]),N(J ),F l(B ); else if(Z e.type==="entry"){const a e=Z e.entry;a e.id& & a e.id in O ?at[O[a e.id]]=a e:(a e.id& & (O[a e.id]=at.length),at.push(a e)),rt([...at]),F l(B )}else Z e.type==="done"&&(nt =!0,qt=Z e.status,S t(qt ))}catch{}}if(nt )break}}catch(Dt ){if(Dt&&Dt .name==="AbortError")return; N ("链路流中断:"+Dt .message);return}nt & & r()},[r e,F l,r]),S e=d.useCallback(async B =>{r e();try{const U =await tt(K .task(B ));f(U );let $ ="";U .result_text& & ($ +=`=== result ===
`);if(g u)try{const K e=JSON.parse(g u);if(K e.type==="snapshot")at=K e.entries||[],Object.keys(qt ).forEach(n e=>delete qt[n e]),at.forEach((n e,y e)=>{n e.id&&(qt[n e.id]=y e)}),hl=K e.note||"",rt([...at]),A(hl ),$ l(q ); else if(K e.type==="entry"){const n e=K e.entry;n e.id& & n e.id in qt ?at[qt[n e.id]]=n e:(n e.id& & (qt[n e.id]=at.length),at.push(n e)),rt([...at]),$ l(q )}else K e.type==="done"&&(w =!0,Z=K e.status,b t(Z ))}catch{}}if(w )break}}catch(K ){if(K&&K .name==="AbortError")return; A ("链路流中断:"+K .message);return}w & & r()},[o e,$ l,r]),b e=d.useCallback(async q =>{o e();try{const k =await W(F .task(q ));f(k );let I ="";k .result_text& & (I +=`=== result ===
`+U .result_text.slice(0,8e3)+`
`+k .result_text.slice(0,8e3)+`
`),U .error_text& & ($ +=`=== error ===
`),k .error_text& & (I +=`=== error ===
`+U .error_text.slice(0,8e3)+`
`+k .error_text.slice(0,8e3)+`
`),$ ||($ ="(暂无 result/error 输出)"),C($ ),x(""),W (void 0),D l(B ),I (!1),h t(""),c e(""),h e(""),m n(U .status);const at=i(U .project_id),O =at==="maintainer"||at==="owner",J =at==="contributor"||O,nt=u u.includes(U .status),qt =[];["failed","interrupted","merge-failed"].includes(U .status)& & O||qt .push("重试:不可用——仅 failed/interrupted/merge-failed 可重试"+(O ?"":",且仅 maintainer 可重试")),!nt & & J||qt .push("取消:不可用——"+(nt ?"终态任务不可取消":"仅项目成员(contributor 及以上)可取消")),U .status==="completed"& & O||qt .push("合并:不可用——仅 completed 可合并"+(O ?"":",且仅 maintainer 可合并")),U .status==="merged"& & O||qt .push("提 PR:不可用——仅 merged 可提 PR"+(O ?"":",且仅 maintainer 可提 PR")),R(qt .join("; ")),S(""),Q a(B,U .status),r l(B ),m a(U ),Pe(B ),te(B ),o l(B ),W t(B ),U l(B ),q e(B ),_ l(B )}catch(U ){f(null),C("加载失败:"+U .message)}},[r e,Q a,r l,m a,Pe ,te,o l,W t,U l,q e,_ l,D l,i]),Xa =d.useCallback(async()=>{const B=s e.current;if(B ){try{const U =await tt(K .task(B .id));f(U );let $ ="";U .result_text& & ($ +=`=== result ===
`),I ||(I ="(暂无 result/error 输出)"),C(I ),x(""),L (void 0),k l(q ),dt (!1),g t(""),s e(""),v e(""),v n(k .status);const at=i(k .project_id),qt =at==="maintainer"||at==="owner",hl =at==="contributor"||qt,w=s u.includes(k .status),Z =[];["failed","interrupted","merge-failed"].includes(k .status)& & qt||Z .push("重试:不可用——仅 failed/interrupted/merge-failed 可重试"+(qt ?"":",且仅 maintainer 可重试")),!w & & hl||Z .push("取消:不可用——"+(w ?"终态任务不可取消":"仅项目成员(contributor 及以上)可取消")),k .status==="completed"& & qt||Z .push("合并:不可用——仅 completed 可合并"+(qt ?"":",且仅 maintainer 可合并")),k .status==="merged"& & qt||Z .push("提 PR:不可用——仅 merged 可提 PR"+(qt ?"":",且仅 maintainer 可提 PR")),O(Z .join("; ")),S(""),V a(q,k .status),f l(q ),y a(k ),tl(q ),te(q ),d l(q ),$ t(q ),H l(q ),B e(q ),N l(q )}catch(k ){f(null),C("加载失败:"+k .message)}},[o e,V a,f l,y a,tl ,te,d l,$ t,H l,B e,N l,k l,i]),Il =d.useCallback(async()=>{const q=r e.current;if(q ){try{const k =await W(F .task(q .id));f(k );let I ="";k .result_text& & (I +=`=== result ===
`+U .result_text.slice(0,8e3)+`
`+k .result_text.slice(0,8e3)+`
`),U .error_text& & ($ +=`=== error ===
`),k .error_text& & (I +=`=== error ===
`+U .error_text.slice(0,8e3)+`
`+k .error_text.slice(0,8e3)+`
`),C($||"(暂无 result/error 输出)")}catch{}te(B.id),Pe(B.id),qe(B.id),_l(B.id),ma(B),rl(B.id),ol(B.id),Wt(B.id),Ul(B.id),Dl(B.id)}},[te,Pe,qe,_l,ma,rl,ol,Wt,Ul,Dl]),ha=d.useCallback(async B=>{const U=se.current;if(!U)return;const $={cancel:"确定取消该任务吗?",merge:"确定把 completed 任务标为 merged 吗?",pr:"确定为该任务提 PR 吗?(会在仓库真实建 PR) "};if(!($[B]& & !window.confirm($[B])))try{const at=await tt(K.taskAction(U.id,B),"POST",{});S(B+" 已提交:"+JSON.stringify(at).slice(0,300)),r(),await Se(U.id)}catch(at){S(B+" 失败:"+at.message)}},[Se,r]),su=d.useCallback(async()=>{const B=se.current;if(B)try{const U=await tt(K.taskCost(B.id));x(JSON.stringify(U,null,2).slice(0,4e3))}catch(U){x("查成本失败:"+U.message)}},[]),ru=d.useCallback(async B=>{const U=se.current;if(U){if(!B.trim()){ht("分支消息必填");return}if(!uu.includes(U.status)){ht("仅终态任务可分支");return}try{const $=await tt(K.taskFork(U.id),"POST",{message:B.trim()});ht("分支任务已建:"+$.id.slice(0,8)),r()}catch($){ht("分支失败:"+$.message)}}},[r]),Wl=d.useCallback(async B=>{const U=se.current;if(U)try{await tt(K.taskReviews(U.id),"POST",B),vt("评审已登记(requested) "),await qe(U.id)}catch($){vt("登记评审需求失败:"+$.message)}},[qe]),Ae=d.useCallback(B=>{const U=se.current;if(!U)return;const $=window.prompt("输入该条评审的 findings(将写回记录并标为 completed):");$!==null& & tt(K.taskReviewFindings(U.id,B),"POST",{findings:$}).then(()=>void qe(U.id)).catch(at=>vt("写 findings 失败:"+at.message))},[qe]),fl=d.useCallback((B,U)=>{const $=se.current;if(!$)return;const at=U==="approved"?"approve":"deny";tt(K.taskApprovalDecision($.id,B,at),"POST",{}).then(()=>{_t("已记录"+(U==="approved"?"允许":"拒绝")+"(当前版本只留回执,不拦截实时行为)"),_l($.id)}).catch(O=>_t("决定失败:"+O.message))},[_l]),Oe=d.useCallback(async(B,U,$)=>{const at=se.current;if(at){if(!U.trim()){ce("目标任务 id 不能为空");return}if(!$.trim()){ce("消息正文不能为空");return}try{const O=await tt(K.taskMessagesTo(U.trim()),"POST",{from_task_id:at.id,body:$.trim(),mode:B});ce("已发送("+O.delivery+") "),await ol(at.id)}catch(O){ce("发送失败:"+O.message)}}},[ol]),ou=d.useCallback((B,U)=>{const $=se.current;if(!$)return;if(!["completed","failed","interrupted"].includes($.status)){he("仅 completed/failed/interrupted 任务可操作线程(merged/merge-failed 不可改,服务端同样 409) ");return}const at={};if(B==="rename"){if(!U.trim()){he("新线程名不能为空");return}at.name=U.trim()}tt(K.taskThreadAction($.id,B),"POST",at).then(O=>{he(B+" 已提交:"+JSON.stringify(O).slice(0,300)),Wt($.id),Ul($.id)}).catch(O=>he(B+" 失败:"+O.message))},[Wt,Ul]),fu=d.useCallback(async B=>{const U=se.current;if(!U)return;const $=B.trim();if(!$){Ve("消息不能为空");return}try{uu.includes(U.status)& & U.status!=="merged"?(await tt(K.taskContinue(U.id),"POST",{message:$}),Ve("已重新排队,同一会话继续"),r(),await Se(U.id)):["queued","running"].includes(U.status)?(await tt(K.taskFollowups(U.id),"POST",{body:$,mode:"direct"}),Ve("已直接发送"),await te(U.id),await Pe(U.id)):Ve("merged/merge-failed 任务不可继续,也不可发后续消息")}catch(at){Ve("发送失败:"+at.message)}},[Se,r,te,Pe]),du=d.useCallback(async()=>{const B=se.current;if(!B){Ce("先选一个任务");return}try{const U=await tt(K.taskTrace(B.id)),$=new Blob([JSON.stringify({task_id:B.id,status:U.status,note:U.note||"",count:(U.entries||[]).length,entries:U.entries||[]},null,2)],{type:"application/json"}),at=document.createElement("a");at.href=URL.createObjectURL($),at.download="trace-"+B.id.slice(0,8)+".json",document.body.appendChild(at),at.click(),at.remove(),setTimeout(()=>URL.revokeObjectURL(at.href),1e3),Ce("已下载完整链路 "+(U.entries||[]).length+" 条")}catch(U){Ce("下载失败:"+U.message)}},[]);return d.useEffect(()=>()=>re(),[re]),{currentTask:h,detailBody:g,actionMsg:A,actionReasons:H,costBox:Y,costSummary:k,forkVisible:V,setForkVisible:I,forkMsg:X,coordChildren:gt,agents:Z,agentsNote:w,reviews:et,reviewMsg:Bt,reviewError:wt,traceEntries:ot,traceNote:G,traceDone:ut,traceKind:pt,setTraceKind:ge,traceMsg:we,followups:y,approvals:ct,approvalMsg:Nt,peerMessages:Rt,peerMsg:dt,threadText:Ga,threadGateNote:Le,threadMsg:Gt,threadList:Jl,chatMsg:da,chatHistory:zl,showDetail:Se,refreshDetailLists:Xa,doAction:ha,taskCost:su,forkTask:ru,postReview:Wl,submitFindings:Ae,decideApproval:fl,postPeer:Oe,threadAction:ou,sendChatMessage:fu,downloadTrace:du,refreshReviews:()=>void qe(),refreshApprovals:()=>void _l()}}function ug(i){const[r,h]=d.useState([]),[f,g]=d.useState(""),[C,A]=d.useState(null),[S,H]=d.useState(""),R=d.useCallback(async V=>{const I=V!==void 0?V:i();if(!I){h([]);return}try{const X=await tt(K.projectAutomations(I));h(X.automations||[])}catch(X){g("自动化加载失败:"+X.message)}}Line truncated
`),C(I||"(暂无 result/error 输出)")}catch{}te(q.id),tl(q.id),Be(q.id),Nl(q.id),ya(q),fl(q.id),dl(q.id),$t(q.id),Hl(q.id),kl(q.id)}},[te,tl,Be,Nl,ya,fl,dl,$t,Hl,kl]),ga=d.useCallback(async q=>{const k=re.current;if(!k)return;const I={cancel:"确定取消该任务吗?",merge:"确定把 completed 任务标为 merged 吗?",pr:"确定为该任务提 PR 吗?(会在仓库真实建 PR) "};if(!(I[q]& & !window.confirm(I[q])))try{const at=await W(F.taskAction(k.id,q),"POST",{});S(q+" 已提交:"+JSON.stringify(at).slice(0,300)),r(),await be(k.id)}catch(at){S(q+" 失败:"+at.message)}},[be,r]),fu=d.useCallback(async()=>{const q=re.current;if(q)try{const k=await W(F.taskCost(q.id));x(JSON.stringify(k,null,2).slice(0,4e3))}catch(k){x("查成本失败:"+k.message)}},[]),du=d.useCallback(async q=>{const k=re.current;if(k){if(!q.trim()){gt("分支消息必填");return}if(!su.includes(k.status)){gt("仅终态任务可分支");return}try{const I=await W(F.taskFork(k.id),"POST",{message:q.trim()});gt("分支任务已建:"+I.id.slice(0,8)),r()}catch(I){gt("分支失败:"+I.message)}}},[r]),Pl=d.useCallback(async q=>{const k=re.current;if(k)try{await W(F.taskReviews(k.id),"POST",q),mt("评审已登记(requested) "),await Be(k.id)}catch(I){mt("登记评审需求失败:"+I.message)}},[Be]),Ce=d.useCallback(q=>{const k=re.current;if(!k)return;const I=window.prompt("输入该条评审的 findings(将写回记录并标为 completed):");I!==null& & W(F.taskReviewFindings(k.id,q),"POST",{findings:I}).then(()=>void Be(k.id)).catch(at=>mt("写 findings 失败:"+at.message))},[Be]),ml=d.useCallback((q,k)=>{const I=re.current;if(!I)return;const at=k==="approved"?"approve":"deny";W(F.taskApprovalDecision(I.id,q,at),"POST",{}).then(()=>{Et("已记录"+(k==="approved"?"允许":"拒绝")+"(当前版本只留回执,不拦截实时行为)"),Nl(I.id)}).catch(qt=>Et("决定失败:"+qt.message))},[Nl]),Ae=d.useCallback(async(q,k,I)=>{const at=re.current;if(at){if(!k.trim()){se("目标任务 id 不能为空");return}if(!I.trim()){se("消息正文不能为空");return}try{const qt=await W(F.taskMessagesTo(k.trim()),"POST",{from_task_id:at.id,body:I.trim(),mode:q});se("已发送("+qt.delivery+") "),await dl(at.id)}catch(qt){se("发送失败:"+qt.message)}}},[dl]),mu=d.useCallback((q,k)=>{const I=re.current;if(!I)return;if(!["completed","failed","interrupted"].includes(I.status)){ve("仅 completed/failed/interrupted 任务可操作线程(merged/merge-failed 不可改,服务端同样 409) ");return}const at={};if(q==="rename"){if(!k.trim()){ve("新线程名不能为空");return}at.name=k.trim()}W(F.taskThreadAction(I.id,q),"POST",at).then(qt=>{ve(q+" 已提交:"+JSON.stringify(qt).slice(0,300)),$t(I.id),Hl(I.id)}).catch(qt=>ve(q+" 失败:"+qt.message))},[$t,Hl]),hu=d.useCallback(async q=>{const k=re.current;if(!k)return;const I=q.trim();if(!I){Ze("消息不能为空");return}try{su.includes(k.status)& & k.status!=="merged"?(await W(F.taskContinue(k.id),"POST",{message:I}),Ze("已重新排队,同一会话继续"),r(),await be(k.id)):["queued","running"].includes(k.status)?(await W(F.taskFollowups(k.id),"POST",{body:I,mode:"direct"}),Ze("已直接发送"),await te(k.id),await tl(k.id)):Ze("merged/merge-failed 任务不可继续,也不可发后续消息")}catch(at){Ze("发送失败:"+at.message)}},[be,r,te,tl]),vu=d.useCallback(async()=>{const q=re.current;if(!q){Ne("先选一个任务");return}try{const k=await W(F.taskTrace(q.id)),I=new Blob([JSON.stringify({task_id:q.id,status:k.status,note:k.note||"",count:(k.entries||[]).length,entries:k.entries||[]},null,2)],{type:"application/json"}),at=document.createElement("a");at.href=URL.createObjectURL(I),at.download="trace-"+q.id.slice(0,8)+".json",document.body.appendChild(at),at.click(),at.remove(),setTimeout(()=>URL.revokeObjectURL(at.href),1e3),Ne("已下载完整链路 "+(k.entries||[]).length+" 条")}catch(k){Ne("下载失败:"+k.message)}},[]);return d.useEffect(()=>()=>oe(),[oe]),{currentTask:h,detailBody:y,actionMsg:M,actionReasons:_,costBox:Y,costSummary:H,forkVisible:tt,setForkVisible:dt,forkMsg:J,coordChildren:_t,agents:Q,agentsNote:D,reviews:et,reviewMsg:Mt,reviewError:Nt,traceEntries:nt,traceNote:G,traceDone:ut,traceKind:pt,setTraceKind:Se,traceMsg:we,followups:g,approvals:ct,approvalMsg:Ot,peerMessages:kt,peerMsg:ht,threadText:La,threadGateNote:Ve,threadMsg:Qt,threadList:Wl,chatMsg:va,chatHistory:Ul,showDetail:be,refreshDetailLists:Il,doAction:ga,taskCost:fu,forkTask:du,postReview:Pl,submitFindings:Ce,decideApproval:ml,postPeer:Ae,threadAction:mu,sendChatMessage:hu,downloadTrace:vu,refreshReviews:()=>void Be(),refreshApprovals:()=>void Nl()}}function ug(i){const[r,h]=d.useState([]),[f,y]=d.useState(""),[C,M]=d.useState(null),[S,_]=d.useState(""),[O,Y]=d.useState(null),[x,H]=d.useState(""),L=d.useCallback(async Q=>{const ft=Q!==void 0?Q:i();if(!ft){h([]);return}try{const D=await W(F.projectAutomations(ft));h(D.automations||[])}catLine truncated
(链路摘要已截断至 300 字,完整回复见右侧任务结果)`:f,label:"助手"}}if(i.kind==="exec"||i.kind==="file"||i.kind==="tool"||i.kind==="call"){const f=i.kind==="exec"?"命令":i.kind==="file"?"文件":i.kind==="tool"?"工具":"调用";return{id:h,role:"tool",kind:i.kind,text:vo(i),label:f}}return i.kind==="plan"?{id:h,role:"status",kind:i.kind,text:i.text||""}:i.kind==="reasoning"?{id:h,role:"status",kind:i.kind,text:"思考:"+(i.summary||"")}:i.kind==="agent-start"?{id:h,role:"status",kind:i.kind,text:"子代理开始:"+(i.name||"")+(i.prompt?"( "+i.prompt+") ":"")}:i.kind==="agent-done"?{id:h,role:"status",kind:i.kind,text:"子代理结束:"+(i.name||"")+" "+(i.status||"")}:{id:h,role:"status",kind:i.kind,text:vo(i)}}function pg(){const i=Zt(),r=i.currentTask,h=d.useMemo(()=>{if(!r)return[];let H;if(i.chatHistory){H=i.chatHistory.messages.map(V=>({id:V.id,role:V.role,text:V.text,label:V.label,kind:V.kind}));const k=new Set(H.map(V=>V.id)),W=i.traceEntries.filter(V=>V.id&&!k.has(V.id)&&!String(V.id).startsWith("fu-")).map((V,I)=>Xh(V,I)); H=[...H,...W]}else{const k=r.prompt?[{id:"task-prompt",role:"user",text:r.prompt}]:[],W=i.traceEntries.filter(I=>!String(I.id||"").startsWith("fu-")).map((I,X)=>Xh(I,X)),V=i.followups.map((I,X)=>({id:"followup-"+X,role:"user",text:String(I.body||""),label:"后续消息"}));H=[...k,...W,...V]}const R=i.traceKind,Y=R?H.filter(k=>k.role==="user"||!k.kind||k.kind===R):H,x=i.traceDone?[{id:"trace-done",role:"status",text:"链路已结束("+i.traceDone+") "}]:[];return[...Y,...x]},[r,i.chatHistory,i.traceEntries,i.followups,i.traceKind,i.traceDone]);if(!r)return c.jsx("div",{className:"muted",children:"点任务行查看详情后,这里显示继续会话"});const f=uu.includes(r.status),g=["queued","running"].includes(r.status),C=f||g,A=f?"终态任务:发送走继续接口(同一会话再跑一轮)":g?"运行中/排队中:发送走后续消息直接发送(跑完当前轮后优先执行)":"merged/merge-failed 任务不可继续,也不可发后续消息",S=i.chatHistory?i.chatHistory.legacy_continue_count??null:null;return c.jsxs("div",{className:"chat-column",children:[c.jsx("div",{className:"muted",children:"实时对话"}),c.jsxs(Ht,{children:[c.jsxs("select",{"aria-label":"链路类型",value:i.traceKind,onChange:H=>i.setTraceKind(H.target.value),children:[c.jsx("option",{value:"",children:"链路类型:全部"}),["exec","file","call","tool","message","reasoning","plan","agent-start","agent-done"].map(H=>c.jsx("option",{value:H,children:H==="exec"?"命令":H==="file"?"文件":H==="call"?"调用":H==="tool"?"工具":H==="message"?"消息":H==="reasoning"?"思考":H==="plan"?"计划":"子代理"},H))]}),c.jsx("button",{onClick:i.downloadTrace,children:"下载完整链路"}),c.jsx("span",{className:"muted",children:i.traceMsg})]}),i.traceNote?c.jsx("div",{children:c.jsx("span",{className:"err",children:i.traceNote})}):null,S!==null& & S>0?c.jsxs("div",{className:"muted",children:["此前有 ",S," 条继续消息发生在持久化之前,未入库,上面历史不完整;部署后新发的继续消息会正常显示。"]}):null,i.chatHistory& & i.chatHistory.trace_note?c.jsx("div",{className:"muted",children:i.chatHistory.trace_note}):null,c.jsx(yg,{messages:h,empty:"(暂无会话消息)"}),c.jsx(gg,{disabled:!C,placeholder:"消息",onSend:H=>void i.sendChatMessage(H)}),c.jsxs("div",{className:"muted",children:[A,"。",i.chatMsg]}),c.jsx("div",{className:"muted",children:"对话时间线:首条是本任务 prompt(用户);助手回复、命令/文件/工具/调用、计划/思考/子代理开始结束都在同一列里,不再另起一份链路名单。流式进行中时新条目实时追加;你在底部时自动跟随,往上翻时暂停跟随,点“回到最新”恢复。"})]})}function Sg(){return Zt().currentTask?c.jsx("div",{className:"conversation",children:c.jsx(pg,{})}):c.jsx("div",{className:"conversation",children:c.jsx("div",{className:"muted",children:"在任务列表里点一条任务,对话和详情就切到该任务;也可以在上面派发一个新任务。"})})}function xg(){const i=Zt(),r=i.currentTask,[h,f]=d.useState("");if(!r)return null;const g=uu.includes(r.status),C=["failed","interrupted","merge-failed"].includes(r.status);return c.jsxs(c.Fragment,{children:[c.jsxs(Ht,{children:[c.jsx("button",{disabled:!C,title:C?"":"仅 failed/interrupted/merge-failed 可重试",onClick:()=>i.doAction("retry"),children:"重试"}),c.jsx("button",{className:"danger",disabled:g,title:g?"终态任务不可取消":"",onClick:()=>i.doAction("cancel"),children:"取消"}),c.jsx("button",{disabled:r.status!=="completed",title:r.status!=="completed"?"仅 completed 可合并":"",onClick:()=>i.doAction("merge"),children:"合并(completed → merged) "}),c.jsx("button",{disabled:r.status!=="merged",title:r.status!=="merged"?"仅 merged 可提 PR":"",onClick:()=>i.doAction("pr"),children:"提 PR(须 mergedLine truncated
(链路摘要已截断至 300 字,完整回复见右侧任务结果)`:f,label:"助手"}}if(i.kind==="exec"||i.kind==="file"||i.kind==="tool"||i.kind==="call"){const f=i.kind==="exec"?"命令":i.kind==="file"?"文件":i.kind==="tool"?"工具":"调用";return{id:h,role:"tool",kind:i.kind,text:yo(i),label:f}}return i.kind==="plan"?{id:h,role:"status",kind:i.kind,text:i.text||""}:i.kind==="reasoning"?{id:h,role:"status",kind:i.kind,text:"思考:"+(i.summary||"")}:i.kind==="agent-start"?{id:h,role:"status",kind:i.kind,text:"子代理开始:"+(i.name||"")+(i.prompt?"( "+i.prompt+") ":"")}:i.kind==="agent-done"?{id:h,role:"status",kind:i.kind,text:"子代理结束:"+(i.name||"")+" "+(i.status||"")}:{id:h,role:"status",kind:i.kind,text:yo(i)}}function pg(){const i=Lt(),r=i.currentTask,h=d.useMemo(()=>{if(!r)return[];let _;if(i.chatHistory){_=i.chatHistory.messages.map(tt=>({id:tt.id,role:tt.role,text:tt.text,label:tt.label,kind:tt.kind}));const H=new Set(_.map(tt=>tt.id)),L=i.traceEntries.filter(tt=>tt.id&&!H.has(tt.id)&&!String(tt.id).startsWith("fu-")).map((tt,dt)=>Lh(tt,dt)); _=[..._,...L]}else{const H=r.prompt?[{id:"task-prompt",role:"user",text:r.prompt}]:[],L=i.traceEntries.filter(dt=>!String(dt.id||"").startsWith("fu-")).map((dt,J)=>Lh(dt,J)),tt=i.followups.map((dt,J)=>({id:"followup-"+J,role:"user",text:String(dt.body||""),label:"后续消息"}));_=[...H,...L,...tt]}const O=i.traceKind,Y=O?_.filter(H=>H.role==="user"||!H.kind||H.kind===O):_,x=i.traceDone?[{id:"trace-done",role:"status",text:"链路已结束("+i.traceDone+") "}]:[];return[...Y,...x]},[r,i.chatHistory,i.traceEntries,i.followups,i.traceKind,i.traceDone]);if(!r)return c.jsx("div",{className:"muted",children:"点任务行查看详情后,这里显示继续会话"});const f=su.includes(r.status),y=["queued","running"].includes(r.status),C=f||y,M=f?"终态任务:发送走继续接口(同一会话再跑一轮)":y?"运行中/排队中:发送走后续消息直接发送(跑完当前轮后优先执行)":"merged/merge-failed 任务不可继续,也不可发后续消息",S=i.chatHistory?i.chatHistory.legacy_continue_count??null:null;return c.jsxs("div",{className:"chat-column",children:[c.jsx("div",{className:"muted",children:"实时对话"}),c.jsxs(At,{children:[c.jsxs("select",{"aria-label":"链路类型",value:i.traceKind,onChange:_=>i.setTraceKind(_.target.value),children:[c.jsx("option",{value:"",children:"链路类型:全部"}),["exec","file","call","tool","message","reasoning","plan","agent-start","agent-done"].map(_=>c.jsx("option",{value:_,children:_==="exec"?"命令":_==="file"?"文件":_==="call"?"调用":_==="tool"?"工具":_==="message"?"消息":_==="reasoning"?"思考":_==="plan"?"计划":"子代理"},_))]}),c.jsx("button",{onClick:i.downloadTrace,children:"下载完整链路"}),c.jsx("span",{className:"muted",children:i.traceMsg})]}),i.traceNote?c.jsx("div",{children:c.jsx("span",{className:"err",children:i.traceNote})}):null,S!==null& & S>0?c.jsxs("div",{className:"muted",children:["此前有 ",S," 条继续消息发生在持久化之前,未入库,上面历史不完整;部署后新发的继续消息会正常显示。"]}):null,i.chatHistory& & i.chatHistory.trace_note?c.jsx("div",{className:"muted",children:i.chatHistory.trace_note}):null,c.jsx(yg,{messages:h,empty:"(暂无会话消息)"}),c.jsx(gg,{disabled:!C,placeholder:"消息",onSend:_=>void i.sendChatMessage(_)}),c.jsxs("div",{className:"muted",children:[M,"。",i.chatMsg]}),c.jsx("div",{className:"muted",children:"对话时间线:首条是本任务 prompt(用户);助手回复、命令/文件/工具/调用、计划/思考/子代理开始结束都在同一列里,不再另起一份链路名单。流式进行中时新条目实时追加;你在底部时自动跟随,往上翻时暂停跟随,点“回到最新”恢复。"})]})}function Sg(){return Lt().currentTask?c.jsx("div",{className:"conversation",children:c.jsx(pg,{})}):c.jsx("div",{className:"conversation",children:c.jsx("div",{className:"muted",children:"在任务列表里点一条任务,对话和详情就切到该任务;也可以在上面派发一个新任务。"})})}function xg(){const i=Lt(),r=i.currentTask,[h,f]=d.useState("");if(!r)return null;const y=su.includes(r.status),C=["failed","interrupted","merge-failed"].includes(r.status);return c.jsxs(c.Fragment,{children:[c.jsxs(At,{children:[c.jsx("button",{disabled:!C,title:C?"":"仅 failed/interrupted/merge-failed 可重试",onClick:()=>i.doAction("retry"),children:"重试"}),c.jsx("button",{className:"danger",disabled:y,title:y?"终态任务不可取消":"",onClick:()=>i.doAction("cancel"),children:"取消"}),c.jsx("button",{disabled:r.status!=="completed",title:r.status!=="completed"?"仅 completed 可合并":"",onClick:()=>i.doAction("merge"),children:"合并(completed → merged) "}),c.jsx("button",{disabled:r.status!=="merged",title:r.status!=="merged"?"仅 merged 可提 PR":"",onClick:()=>i.doAction("pr"),childrLine truncated
`);for(;o t>=0;){const rt=v t.slice(0,o t);v t=v t.slice(o t+2);for(const G of rt.split(`
`);for(;n t>=0;){const rt=m t.slice(0,n t);m t=m t.slice(n t+2);for(const G of rt.split(`
`))if(G.startsWith("data: "))try{const N =JSON.parse(G.slice(6));N .waiting?S(N .task_status==="interrupted"?"任务已中断,等待续跑…":N .task_status==="paused"?"任务已暂停…":"等待会话…"):N .image&&(f("data:image/jpeg; base64,"+N .image),S("直播中"));const ut={};N .holder& & (ut.holder=N .holder),N .url& & (ut.url=N .url),N .title!==void 0& & (ut.title=N .title),Object.keys(ut).length>0& & C(S t=>({...S t||{},...ut}))}catch{}o t=v t.indexOf(`
`))if(G.startsWith("data: "))try{const A =JSON.parse(G.slice(6));A .waiting?S(A .task_status==="interrupted"?"任务已中断,等待续跑…":A .task_status==="paused"?"任务已暂停…":"等待会话…"):A .image&&(f("data:image/jpeg; base64,"+A .image),S("直播中"));const ut={};A .holder& & (ut.holder=A .holder),A .url& & (ut.url=A .url),A .title!==void 0& & (ut.title=A .title),Object.keys(ut).length>0& & C(b t=>({...b t||{},...ut}))}catch{}n t=m t.indexOf(`
`)}}S("流已断开")}catch(et){if(et.name==="AbortError")return;R(et instanceof Error?et.message:String(et)),S("未开始")}finally{x(!1)}},[r]),X=d.useCallback(()=>{var w;(w=k.current)==null||w.abort(),x(!1),S("已停止")},[]),ht=d.useCallback(async w=>{if(r)try{const Q=await tt(K.taskBrowserControl(r.id),"POST",{holder:w});C(Q),R("")}catch(Q){R(Q instanceof Error?Q.message:String(Q))}},[r]),gt=d.useCallback(async w=>{if(!r||(g==null?void 0:g.holder)!=="user"||!W.current)return;const Q=W.current.getBoundingClientRect(),et=Math.round((w.clientX-Q.left)/Q.width*1280),zt=Math.round((w.clientY-Q.top)/Q.height*800);try{await tt(K.taskBrowserInput(r.id),"POST",{type:"mouse_click",x:et,y:zt})}catch(Bt){R(Bt instanceof Error?Bt.message:String(Bt))}},[r,g]),xt=d.useCallback(async w=>{if(!(!r||(g==null?void 0:g.holder)!=="user")){w.preventDefault();try{w.key.length===1?await tt(K.taskBrowserInput(r.id),"POST",{type:"type",text:w.key}):await tt(K.taskBrowserInput(r.id),"POST",{type:"key",key:w.key})}catch(Q){R(Q instanceof Error?Q.message:String(Q))}}},[r,g]);if(!r)return c.jsx("div",{className:"muted",children:"点任务行查看详情"});const Z=(g==null?void 0:g.holder)||"—",Tt=g!==null;return c.jsxs("div",{children:[c.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",alignItems:"center"},children:[c.jsxs("span",{children:["状态 ",c.jsx("b",{children:A})]}),c.jsxs("span",{className:"muted",children:["会话 ",Tt?"活跃":"未激活(轮次结束即消失)"]}),c.jsxs("span",{className:"muted",children:["控制权 ",Z]}),g!=null& & g.url?c.jsx("span",{className:"muted",title:g.url,children:g.url.slice(0,80)}):null]}),c.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginTop:8},children:[Y?c.jsx("button",{type:"button",onClick:X,children:"停止观看"}):c.jsx("button",{type:"button",onClick:()=>void I(),children:"开始观看"}),c.jsx("button",{type:"button",onClick:()=>void V(),children:"刷新状态"}),Z!=="user"?c.jsx("button",{type:"button",onClick:()=>void ht("user"),disabled:!Tt,children:"接管"}):c.jsx("button",{type:"button",onClick:()=>void ht("agent"),children:"交还给 Agent"})]}),H?c.jsx("div",{className:"muted",style:{marginTop:8},children:H}):null,Z==="user"?c.jsx("div",{className:"muted",style:{marginTop:8},children:"你已接管:点画面即点击,键盘输入直达页面。交还后 Agent 续跑前会先快照确认你的改动。"}):null,c.jsx("div",{style:{marginTop:8},children:h?c.jsx("img",{ref:W,src:h,alt:"浏览器实时画面",tabIndex:0,onClick:w=>void gt(w),onKeyDown:w=>void xt(w),style:{width:"100%",maxWidth:1280,cursor:Z==="user"?"crosshair":"default",border:"1px solid var(--border, #ccc)"}}):c.jsx("div",{className:"muted",children:Tt?"点“开始观看”接入画面流(接管后点画面即点击)":"浏览器会话未激活:任务本轮未开浏览器,或轮次已结束。"})})]})}function jg(){const i=Zt(),[r,h]=d.useState("uncommittedChanges"),[f,g]=d.useState(""),[C,A]=d.useState(""),[S,H]=d.useState("");return c.jsxs(c.Fragment,{children:[c.jsx("h3",{children:"评审队列"}),c.jsxs("select",{"aria-label":"评审目标",value:r,onChange:R=>h(R.target.value),children:[c.jsx("option",{value:"uncommittedChanges",children:"未提交改动(工作区)"}),c.jsx("option",{value:"baseBranch",children:"与分支的差异"}),c.jsx("option",{value:"commit",children:"指定提交"}),c.jsx("option",{value:"custom",children:"自定义评审指令"})]}),c.jsx("input",{className:"stacked",placeholder:"与分支的差异用:分支名(如 main) ",style:{width:"100%"},value:f,onChange:R=>g(R.target.value)}),c.jsx("input",{className:"stacked",placeholder:"指定提交用:提交 sha",style:{width:"100%"},value:C,onChange:R=>A(R.target.value)}),c.jsx("textarea",{placeholder:"自定义评审指令用:评审指令正文",value:S,onChange:R=>H(R.target.value)}),c.jsxs(Ht,{children:[c.jsx("button",{className:"primary",onClick:()=>void i.postReview({target_type:r,branch:f.trim()||void 0,sha:C.trim()||void 0,instructions:S.trim()||void 0}),children:"登记评审需求"}),c.jsx("button",{onClick:i.refreshReviews,children:"刷新队列"}),c.jsx("span",{className:"muted",children:i.reviewMsg})]}),c.jsx("div",{className:"muted",children:"本基线只登记评审需求(requested),不自动跑评审;评审是否执行、结果如何,以评审队列里的记录为准。"}),i.reviewError?c.jsx("div",{className:"muted",children:i.reviewError}):i.reviews.length===0?c.jsx("div",{className:"muted",children:"点任务行查看详情后,点“刷新队列”查看评审记录"}):c.jsx(cu,{children:i.reviews.map(R=>{let Y=R.target_type||"";return R.branch& & (Y+=": "+R.branch),R.sha& & (Y+=": "+String(R.sha).slice(0,12)),R.instructions& & (Y+=": "+String(R.instructions).slice(0,80)),c.jsxs("li",{children:[c.jsxs("span",{className:"row-main",children:[c.jsx("b",{children:"评审"})," ",Ne(R.id)," | ",Y," | ",c.jsx("span",{className:"st-"+(R.status||""),children:RLine truncated
`)}}S("流已断开")}catch(et){if(et.name==="AbortError")return;O(et instanceof Error?et.message:String(et)),S("未开始")}finally{x(!1)}},[r]),J=d.useCallback(()=>{var D;(D=H.current)==null||D.abort(),x(!1),S("已停止")},[]),gt=d.useCallback(async D=>{if(r)try{const X=await W(F.taskBrowserControl(r.id),"POST",{holder:D});C(X),O("")}catch(X){O(X instanceof Error?X.message:String(X))}},[r]),_t=d.useCallback(async D=>{if(!r||(y==null?void 0:y.holder)!=="user"||!L.current)return;const X=L.current.getBoundingClientRect(),et=Math.round((D.clientX-X.left)/X.width*1280),xt=Math.round((D.clientY-X.top)/X.height*800);try{await W(F.taskBrowserInput(r.id),"POST",{type:"mouse_click",x:et,y:xt})}catch(Mt){O(Mt instanceof Error?Mt.message:String(Mt))}},[r,y]),Dt=d.useCallback(async D=>{if(!(!r||(y==null?void 0:y.holder)!=="user")){D.preventDefault();try{D.key.length===1?await W(F.taskBrowserInput(r.id),"POST",{type:"type",text:D.key}):await W(F.taskBrowserInput(r.id),"POST",{type:"key",key:D.key})}catch(X){O(X instanceof Error?X.message:String(X))}}},[r,y]);if(!r)return c.jsx("div",{className:"muted",children:"点任务行查看详情"});const Q=(y==null?void 0:y.holder)||"—",ft=y!==null;return c.jsxs("div",{children:[c.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",alignItems:"center"},children:[c.jsxs("span",{children:["状态 ",c.jsx("b",{children:M})]}),c.jsxs("span",{className:"muted",children:["会话 ",ft?"活跃":"未激活(轮次结束即消失)"]}),c.jsxs("span",{className:"muted",children:["控制权 ",Q]}),y!=null& & y.url?c.jsx("span",{className:"muted",title:y.url,children:y.url.slice(0,80)}):null]}),c.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginTop:8},children:[Y?c.jsx("button",{type:"button",onClick:J,children:"停止观看"}):c.jsx("button",{type:"button",onClick:()=>void dt(),children:"开始观看"}),c.jsx("button",{type:"button",onClick:()=>void tt(),children:"刷新状态"}),Q!=="user"?c.jsx("button",{type:"button",onClick:()=>void gt("user"),disabled:!ft,children:"接管"}):c.jsx("button",{type:"button",onClick:()=>void gt("agent"),children:"交还给 Agent"})]}),_?c.jsx("div",{className:"muted",style:{marginTop:8},children:_}):null,Q==="user"?c.jsx("div",{className:"muted",style:{marginTop:8},children:"你已接管:点画面即点击,键盘输入直达页面。交还后 Agent 续跑前会先快照确认你的改动。"}):null,c.jsx("div",{style:{marginTop:8},children:h?c.jsx("img",{ref:L,src:h,alt:"浏览器实时画面",tabIndex:0,onClick:D=>void _t(D),onKeyDown:D=>void Dt(D),style:{width:"100%",maxWidth:1280,cursor:Q==="user"?"crosshair":"default",border:"1px solid var(--border, #ccc)"}}):c.jsx("div",{className:"muted",children:ft?"点“开始观看”接入画面流(接管后点画面即点击)":"浏览器会话未激活:任务本轮未开浏览器,或轮次已结束。"})})]})}function jg(){const i=Lt(),[r,h]=d.useState("uncommittedChanges"),[f,y]=d.useState(""),[C,M]=d.useState(""),[S,_]=d.useState("");return c.jsxs(c.Fragment,{children:[c.jsx("h3",{children:"评审队列"}),c.jsxs("select",{"aria-label":"评审目标",value:r,onChange:O=>h(O.target.value),children:[c.jsx("option",{value:"uncommittedChanges",children:"未提交改动(工作区)"}),c.jsx("option",{value:"baseBranch",children:"与分支的差异"}),c.jsx("option",{value:"commit",children:"指定提交"}),c.jsx("option",{value:"custom",children:"自定义评审指令"})]}),c.jsx("input",{className:"stacked",placeholder:"与分支的差异用:分支名(如 main) ",style:{width:"100%"},value:f,onChange:O=>y(O.target.value)}),c.jsx("input",{className:"stacked",placeholder:"指定提交用:提交 sha",style:{width:"100%"},value:C,onChange:O=>M(O.target.value)}),c.jsx("textarea",{placeholder:"自定义评审指令用:评审指令正文",value:S,onChange:O=>_(O.target.value)}),c.jsxs(At,{children:[c.jsx("button",{className:"primary",onClick:()=>void i.postReview({target_type:r,branch:f.trim()||void 0,sha:C.trim()||void 0,instructions:S.trim()||void 0}),children:"登记评审需求"}),c.jsx("button",{onClick:i.refreshReviews,children:"刷新队列"}),c.jsx("span",{className:"muted",children:i.reviewMsg})]}),c.jsx("div",{className:"muted",children:"本基线只登记评审需求(requested),不自动跑评审;评审是否执行、结果如何,以评审队列里的记录为准。"}),i.reviewError?c.jsx("div",{className:"muted",children:i.reviewError}):i.reviews.length===0?c.jsx("div",{className:"muted",children:"点任务行查看详情后,点“刷新队列”查看评审记录"}):c.jsx(ou,{children:i.reviews.map(O=>{let Y=O.target_type||"";return O.branch& & (Y+=": "+O.branch),O.sha& & (Y+=": "+String(O.sha).slice(0,12)),O.instructions& & (Y+=": "+String(O.instructions).slice(0,80)),c.jsxs("li",{children:[c.jsxs("span",{className:"row-main",children:[c.jsx("b",{children:"评审"})," ",pe(O.id)," | ",Y," | ",c.jsx("span",{className:"st-"+(O.status||""),children:O.sLine truncated
< style rel = "stylesheet" crossorigin > : r o o t { - - t e x t : # 1 f 2 3 2 8 ; - - m u t e d : # 6 5 6 d 7 6 ; - - s u b t l e : # 6 e 7 7 8 1 ; - - l i n e : # d 0 d 7 d e ; - - l i n e - m u t e d : # d 8 d e e 4 ; - - p a p e r : # f f f f f f ; - - c a r d : # f f f f f f ; - - s u b t l e - b g : # f 6 f 8 f a ; - - i n s e t - b g : # f 6 f 8 f a ; - - a c c e n t : # 0 9 6 9 d a ; - - a c c e n t - e m p h a s i s : # 0 9 6 9 d a ; - - g r e e n : # 2 d a 4 4 e ; - - g r e e n - h o v e r : # 2 c 9 7 4 b ; - - s u c c e s s : # 1 a 7 f 3 7 ; - - d a n g e r : # d 1 2 4 2 f ; - - d a n g e r - b g : # f f e b e 9 ; - - a t t e n t i o n : # 9 a 6 7 0 0 ; - - d o n e : # 8 2 5 0 d f ; - - s e l e c t e d - b g : # d d f 4 f f ; - - r a d i u s : 6 p x ; - - s h a d o w : 0 1 p x 0 r g b a ( 2 7 , 3 1 , 3 6 , . 0 4 ) ; - - s a n s : - a p p l e - s y s t e m , B l i n k M a c S y s t e m F o n t , " S e g o e U I " , " N o t o S a n s " , H e l v e t i c a , A r i a l , s a n s - s e r i f ; - - m o n o : u i - m o n o s p a c e , S F M o n o - R e g u l a r , S F M o n o - R e g u l a r , M e n l o , C o n s o l a s , " L i b e r a t i o n M o n o " , m o n o s p a c e ; - - c t l : 3 2 p x } * { b o x - s i z i n g : b o r d e r - b o x } h t m l , b o d y , # r o o t { h e i g h t : 1 0 0 % } b o d y { f o n t - f a m i l y : v a r ( - - s a n s ) ; m a r g i n : 0 ; c o l o r : v a r ( - - t e x t ) ; b a c k g r o u n d : # f f f ; l i n e - h e i g h t : 1 . 5 ; f o n t - s i z e : 1 4 p x } a { c o l o r : v a r ( - - a c c e n t ) ; t e x t - u n d e r l i n e - o f f s e t : 3 p x } : f o c u s - v i s i b l e { o u t l i n e : 2 p x s o l i d v a r ( - - a c c e n t ) ; o u t l i n e - o f f s e t : 2 p x } @ m e d i a ( p r e f e r s - r e d u c e d - m o t i o n : r e d u c e ) { * { s c r o l l - b e h a v i o r : a u t o ! i m p o r t a n t ; t r a n s i t i o n : n o n e ! i m p o r t a n t } } . m u t e d { c o l o r : v a r ( - - m u t e d ) ; f o n t - s i z e : 1 2 p x ; l i n e - h e i g h t : 1 . 5 } . e r r { c o l o r : v a r ( - - d a n g e r ) } . o k { c o l o r : v a r ( - - s u c c e s s ) } b u t t o n { c u r s o r : p o i n t e r ; f o n t - w e i g h t : 5 0 0 ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) ; b o x - s h a d o w : v a r ( - - s h a d o w ) } b u t t o n : h o v e r { b a c k g r o u n d : v a r ( - - s u b t l e - b g ) } b u t t o n : d i s a b l e d { o p a c i t y : . 4 5 ; c u r s o r : n o t - a l l o w e d ; b o x - s h a d o w : n o n e } b u t t o n . p r i m a r y , b u t t o n . s e a l { b a c k g r o u n d : v a r ( - - g r e e n ) ; b o r d e r - c o l o r : # 1 b 1 f 2 4 2 6 ; c o l o r : # f f f } b u t t o n . p r i m a r y : h o v e r , b u t t o n . s e a l : h o v e r { b a c k g r o u n d : v a r ( - - g r e e n - h o v e r ) } b u t t o n . d a n g e r { c o l o r : v a r ( - - d a n g e r ) ; b o r d e r - c o l o r : v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f } b u t t o n . d a n g e r : h o v e r { b a c k g r o u n d : v a r ( - - d a n g e r - b g ) ; c o l o r : v a r ( - - d a n g e r ) } . i c o n - b t n { w i d t h : 3 2 p x ; h e i g h t : 3 2 p x ; p a d d i n g : 0 ; d i s p l a y : g r i d ; p l a c e - i t e m s : c e n t e r ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) ; f o n t - s i z e : 1 6 p x ; l i n e - h e i g h t : 1 } . i c o n - b t n : h o v e r { b a c k g r o u n d : v a r ( - - s u b t l e - b g ) } . d a s h - t o p b a r { p o s i t i o n : s t i c k y ; t o p : 0 ; z - i n d e x : 1 0 ; b a c k g r o u n d : # 2 4 2 9 2 f ; c o l o r : # f f f ; b o r d e r - b o t t o m : 1 p x s o l i d r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , . 1 5 ) ; p a d d i n g : 1 0 p x 2 0 p x 8 p x } . d a s h - t o p b a r . m u t e d { c o l o r : # f f f f f f b f } . d a s h - t o p b a r - r o w { d i s p l a y : f l e x ; g a p : 1 4 p x ; a l i g n - i t e m s : c e n t e r ; f l e x - w r a p : w r a p } . d a s h - b r a n d { f o n t - w e i g h t : 6 0 0 ; f o n t - s i z e : 1 6 p x ; c o l o r : # f f f } . d a s h - s t a t u s { f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; c o l o r : # f f f f f f b f } . d a s h - s t a t u s . o k { c o l o r : # 2 d a 4 4 e } . d a s h - s t a m p { m a r g i n - l e f t : a u t o } . d a s h - n a v { d i s p l a y : f l e x ; g a p : 4 p x ; f l e x - w r a p : w r a p ; m a r g i n - t o p : 8 p x } . d a s h - n a v a { c o l o r : # f f f ; t e x t - d e c o r a t i o n : n o n e ; f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; p a d d i n g : 6 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . d a s h - n a v a : h o v e r { b a c k g r o u n d : # f f f f f f 1 f ; t e x t - d e c o r a t i o n : n o n e } . t a b - n a v b u t t o n { b a c k g r o u n d : t r a n s p a r e n t ; b o r d e r : 0 ; b o x - s h a d o w : n o n e ; c o l o r : # f f f ; f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; p a d d i n g : 6 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . t a b - n a v b u t t o n : h o v e r { b a c k g r o u n d : # f f f f f f 1 f } . t a b - n a v b u t t o n . a c t i v e { b a c k g r o u n d : # f f f f f f 2 e } . d a s h - p a g e - t a b s { d i s p l a y : f l e x } . d a s h - p a g e - t a b s > . t a b - c o n t e n t { g r i d - c o l u m n : 1 / - 1 ; m i n - w i d t h : 0 ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 2 0 p x } . t a b - w o r k b e n c h { d i s p l a y : g r i d ; g r i d - t e m p l a t e - c o l u m n s : 3 2 0 p x m i n m a x ( 0 , 1 f r ) ; g a p : 2 0 p x ; a l i g n - i t e m s : s t a r t } . t a b - w o r k b e n c h > * { m i n - w i d t h : 0 } @ m e d i a ( m a x - w i d t h : 8 9 9 p x ) { . t a b - w o r k b e n c h { g r i d - t e m p l a t e - c o l u m n s : 1 f r } . t a b - w o r k b e n c h # s e c - d i s p a t c h { o r d e r : 1 } . t a b - w o r k b e n c h # s e c - t a s k s { o r d e r : 2 } . t a b - w o r k b e n c h # s e c - c o n v { o r d e r : 3 } } . d a s h - p a g e { m a x - w i d t h : 1 1 8 0 p x ; m a r g i n : 0 a u t o ; p a d d i n g : 2 0 p x ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 2 0 p x } . d a s h - p a g e > * { m i n - w i d t h : 0 } . d a s h - s e c t i o n > * { m i n - w i d t h : 0 } . d a s h - s e c t i o n { s c r o l l - m a r g i n - t o p : 1 3 0 p x ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 1 6 p x } . d a s h - s e c t i o n . c a r d { p a d d i n g : 1 6 p x } . d a s h - c a r d s { d i s p l a y : g r i d ; g r i d - t e m p l a t e - c o l u m n s : r e p e a t ( 3 , 1 f r ) ; g a p : 1 2 p x } . d a s h - c a r d { b a c k g r o u n d : # f f f ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; p a d d i n g : 1 6 p x ; m i n - w i d t h : 0 } . d a s h - c a r d - l a b e l { c o l o r : v a r ( - - m u t e d ) ; f o n t - s i z e : 1 2 p x ; f o n t - w e i g h t : 6 0 0 } . d a s h - c a r d - v a l u e { f o n t - s i z e : 2 4 p x ; f o n t - w e i g h t : 6 0 0 ; l i n e - h e i g h t : 1 . 3 ; o v e r f l o w - w r a p : a n y w h e r e } . c a r d { b a c k g r o u n d : v a r ( - - c a r d ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o x - s h a d o w : n o n e ; p a d d i n g : 1 6 p x } . c a r d h 2 { f o n t - s i z e : 1 4 p x ; m a r g i n : 0 0 1 2 p x ; f o n t - w e i g h t : 6 0 0 } . c a r d h 3 { f o n t - s i z e : 1 4 p x ; m a r g i n : 2 4 p x 0 1 2 p x ; p a d d i n g - t o p : 1 6 p x ; b o r d e r - t o p : 1 p x s o l i d v a r ( - - l i n e ) ; f o n t - w e i g h t : 6 0 0 } . c a r d h 3 : f i r s t - o f - t y p e { b o r d e r - t o p : 0 ; p a d d i n g - t o p : 0 } . c o m p o s e r h 2 { f o n t - s i z e : 1 6 p x } . c o m p o s e r t e x t a r e a . p r o m p t { m i n - h e i g h t : 1 4 8 p x ; f o n t - s i z e : 1 4 p x ; p a d d i n g : 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . c o m p o s e r t e x t a r e a . c o o r d { f o n t - f a m i l y : v a r ( - - m o n o ) ; f o n t - s i z e : 1 3 p x } . b a r { d i s p l a y : f l e x ; g a p : 8 p x ; f l e x - w r a p : w r a p ; a l i g n - i t e m s : c e n t e r ; m a r g i n : 1 2 p x 0 } . b a r > b u t t o n , . b a r > l a b e l { d i s p l a y : i n l i n e - f l e x ; a l i g n - i t e m s : c e n t e r ; h e i g h t : v a r ( - - c t l ) ; m i n - h e i g h t : v a r ( - - c t l ) ; p a d d i n g : 0 1 6 p x ; b o x - s i z i n g : b o r d e r - b o x ; w h i t e - s p a c e : n o w r a p } . b a r > i n p u t , . b a r > s e l e c t { h e i g h t : v a r ( - - c t l ) ; m i n - h e i g h t : v a r ( - - c t l ) } i n p u t , s e l e c t , t e x t a r e a , b u t t o n { f o n t : i n h e r i t ; f o n t - s i z e : 1 4 p x ; p a d d i n g : 5 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) } i n p u t : f o c u s , s e l e c t : f o c u s , t e x t a r e a : f o c u s { o u t l i n e : n o n e ; b o r d e r - c o l o r : v a r ( - - a c c e n t ) ; b o x - s h a d o w : 0 0 0 3 p x # 0 9 6 9 d a 4 d } s e l e c t { - m o z - a p p e a r a n c e : n o n e ; a p p e a r a n c e : n o n e ; - w e b k i t - a p p e a r a n c e : n o n e ; c u r s Line truncated
< style rel = "stylesheet" crossorigin > : r o o t { - - t e x t : # 1 f 2 3 2 8 ; - - m u t e d : # 6 5 6 d 7 6 ; - - s u b t l e : # 6 e 7 7 8 1 ; - - l i n e : # d 0 d 7 d e ; - - l i n e - m u t e d : # d 8 d e e 4 ; - - p a p e r : # f f f f f f ; - - c a r d : # f f f f f f ; - - s u b t l e - b g : # f 6 f 8 f a ; - - i n s e t - b g : # f 6 f 8 f a ; - - a c c e n t : # 0 9 6 9 d a ; - - a c c e n t - e m p h a s i s : # 0 9 6 9 d a ; - - g r e e n : # 2 d a 4 4 e ; - - g r e e n - h o v e r : # 2 c 9 7 4 b ; - - s u c c e s s : # 1 a 7 f 3 7 ; - - d a n g e r : # d 1 2 4 2 f ; - - d a n g e r - b g : # f f e b e 9 ; - - a t t e n t i o n : # 9 a 6 7 0 0 ; - - d o n e : # 8 2 5 0 d f ; - - s e l e c t e d - b g : # d d f 4 f f ; - - r a d i u s : 6 p x ; - - s h a d o w : 0 1 p x 0 r g b a ( 2 7 , 3 1 , 3 6 , . 0 4 ) ; - - s a n s : - a p p l e - s y s t e m , B l i n k M a c S y s t e m F o n t , " S e g o e U I " , " N o t o S a n s " , H e l v e t i c a , A r i a l , s a n s - s e r i f ; - - m o n o : u i - m o n o s p a c e , S F M o n o - R e g u l a r , S F M o n o - R e g u l a r , M e n l o , C o n s o l a s , " L i b e r a t i o n M o n o " , m o n o s p a c e ; - - c t l : 3 2 p x } * { b o x - s i z i n g : b o r d e r - b o x } h t m l , b o d y , # r o o t { h e i g h t : 1 0 0 % } b o d y { f o n t - f a m i l y : v a r ( - - s a n s ) ; m a r g i n : 0 ; c o l o r : v a r ( - - t e x t ) ; b a c k g r o u n d : # f f f ; l i n e - h e i g h t : 1 . 5 ; f o n t - s i z e : 1 4 p x } a { c o l o r : v a r ( - - a c c e n t ) ; t e x t - u n d e r l i n e - o f f s e t : 3 p x } : f o c u s - v i s i b l e { o u t l i n e : 2 p x s o l i d v a r ( - - a c c e n t ) ; o u t l i n e - o f f s e t : 2 p x } @ m e d i a ( p r e f e r s - r e d u c e d - m o t i o n : r e d u c e ) { * { s c r o l l - b e h a v i o r : a u t o ! i m p o r t a n t ; t r a n s i t i o n : n o n e ! i m p o r t a n t } } . m u t e d { c o l o r : v a r ( - - m u t e d ) ; f o n t - s i z e : 1 2 p x ; l i n e - h e i g h t : 1 . 5 } . e r r { c o l o r : v a r ( - - d a n g e r ) } . o k { c o l o r : v a r ( - - s u c c e s s ) } b u t t o n { c u r s o r : p o i n t e r ; f o n t - w e i g h t : 5 0 0 ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) ; b o x - s h a d o w : v a r ( - - s h a d o w ) } b u t t o n : h o v e r { b a c k g r o u n d : v a r ( - - s u b t l e - b g ) } b u t t o n : d i s a b l e d { o p a c i t y : . 4 5 ; c u r s o r : n o t - a l l o w e d ; b o x - s h a d o w : n o n e } b u t t o n . p r i m a r y , b u t t o n . s e a l { b a c k g r o u n d : v a r ( - - g r e e n ) ; b o r d e r - c o l o r : # 1 b 1 f 2 4 2 6 ; c o l o r : # f f f } b u t t o n . p r i m a r y : h o v e r , b u t t o n . s e a l : h o v e r { b a c k g r o u n d : v a r ( - - g r e e n - h o v e r ) } b u t t o n . d a n g e r { c o l o r : v a r ( - - d a n g e r ) ; b o r d e r - c o l o r : v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f } b u t t o n . d a n g e r : h o v e r { b a c k g r o u n d : v a r ( - - d a n g e r - b g ) ; c o l o r : v a r ( - - d a n g e r ) } . i c o n - b t n { w i d t h : 3 2 p x ; h e i g h t : 3 2 p x ; p a d d i n g : 0 ; d i s p l a y : g r i d ; p l a c e - i t e m s : c e n t e r ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) ; f o n t - s i z e : 1 6 p x ; l i n e - h e i g h t : 1 } . i c o n - b t n : h o v e r { b a c k g r o u n d : v a r ( - - s u b t l e - b g ) } . d a s h - t o p b a r { p o s i t i o n : s t i c k y ; t o p : 0 ; z - i n d e x : 1 0 ; b a c k g r o u n d : # 2 4 2 9 2 f ; c o l o r : # f f f ; b o r d e r - b o t t o m : 1 p x s o l i d r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , . 1 5 ) ; p a d d i n g : 1 0 p x 2 0 p x 8 p x } . d a s h - t o p b a r . m u t e d { c o l o r : # f f f f f f b f } . d a s h - t o p b a r - r o w { d i s p l a y : f l e x ; g a p : 1 4 p x ; a l i g n - i t e m s : c e n t e r ; f l e x - w r a p : w r a p } . d a s h - b r a n d { f o n t - w e i g h t : 6 0 0 ; f o n t - s i z e : 1 6 p x ; c o l o r : # f f f } . d a s h - s t a t u s { f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; c o l o r : # f f f f f f b f } . d a s h - s t a t u s . o k { c o l o r : # 2 d a 4 4 e } . d a s h - s t a m p { m a r g i n - l e f t : a u t o } . d a s h - n a v { d i s p l a y : f l e x ; g a p : 4 p x ; f l e x - w r a p : w r a p ; m a r g i n - t o p : 8 p x } . d a s h - n a v a { c o l o r : # f f f ; t e x t - d e c o r a t i o n : n o n e ; f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; p a d d i n g : 6 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . d a s h - n a v a : h o v e r { b a c k g r o u n d : # f f f f f f 1 f ; t e x t - d e c o r a t i o n : n o n e } . t a b - n a v b u t t o n { b a c k g r o u n d : t r a n s p a r e n t ; b o r d e r : 0 ; b o x - s h a d o w : n o n e ; c o l o r : # f f f ; f o n t - s i z e : 1 3 p x ; f o n t - w e i g h t : 6 0 0 ; p a d d i n g : 6 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . t a b - n a v b u t t o n : h o v e r { b a c k g r o u n d : # f f f f f f 1 f } . t a b - n a v b u t t o n . a c t i v e { b a c k g r o u n d : # f f f f f f 2 e } . d a s h - p a g e - t a b s { d i s p l a y : f l e x } . d a s h - p a g e - t a b s > . t a b - c o n t e n t { g r i d - c o l u m n : 1 / - 1 ; m i n - w i d t h : 0 ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 2 0 p x } . t a b - w o r k b e n c h { d i s p l a y : g r i d ; g r i d - t e m p l a t e - c o l u m n s : 3 2 0 p x m i n m a x ( 0 , 1 f r ) ; g a p : 2 0 p x ; a l i g n - i t e m s : s t a r t } . t a b - w o r k b e n c h > * { m i n - w i d t h : 0 } @ m e d i a ( m a x - w i d t h : 8 9 9 p x ) { . t a b - w o r k b e n c h { g r i d - t e m p l a t e - c o l u m n s : 1 f r } . t a b - w o r k b e n c h # s e c - d i s p a t c h { o r d e r : 1 } . t a b - w o r k b e n c h # s e c - t a s k s { o r d e r : 2 } . t a b - w o r k b e n c h # s e c - c o n v { o r d e r : 3 } } . d a s h - p a g e { m a x - w i d t h : 1 1 8 0 p x ; m a r g i n : 0 a u t o ; p a d d i n g : 2 0 p x ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 2 0 p x } . d a s h - p a g e > * { m i n - w i d t h : 0 } . d a s h - s e c t i o n > * { m i n - w i d t h : 0 } . d a s h - s e c t i o n { s c r o l l - m a r g i n - t o p : 1 3 0 p x ; d i s p l a y : f l e x ; f l e x - d i r e c t i o n : c o l u m n ; g a p : 1 6 p x } . d a s h - s e c t i o n . c a r d { p a d d i n g : 1 6 p x } . d a s h - c a r d s { d i s p l a y : g r i d ; g r i d - t e m p l a t e - c o l u m n s : r e p e a t ( 3 , 1 f r ) ; g a p : 1 2 p x } . d a s h - c a r d { b a c k g r o u n d : # f f f ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; p a d d i n g : 1 6 p x ; m i n - w i d t h : 0 } . d a s h - c a r d - l a b e l { c o l o r : v a r ( - - m u t e d ) ; f o n t - s i z e : 1 2 p x ; f o n t - w e i g h t : 6 0 0 } . d a s h - c a r d - v a l u e { f o n t - s i z e : 2 4 p x ; f o n t - w e i g h t : 6 0 0 ; l i n e - h e i g h t : 1 . 3 ; o v e r f l o w - w r a p : a n y w h e r e } . c a r d { b a c k g r o u n d : v a r ( - - c a r d ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o x - s h a d o w : n o n e ; p a d d i n g : 1 6 p x } . c a r d h 2 { f o n t - s i z e : 1 4 p x ; m a r g i n : 0 0 1 2 p x ; f o n t - w e i g h t : 6 0 0 } . c a r d h 3 { f o n t - s i z e : 1 4 p x ; m a r g i n : 2 4 p x 0 1 2 p x ; p a d d i n g - t o p : 1 6 p x ; b o r d e r - t o p : 1 p x s o l i d v a r ( - - l i n e ) ; f o n t - w e i g h t : 6 0 0 } . c a r d h 3 : f i r s t - o f - t y p e { b o r d e r - t o p : 0 ; p a d d i n g - t o p : 0 } . c o m p o s e r h 2 { f o n t - s i z e : 1 6 p x } . c o m p o s e r t e x t a r e a . p r o m p t { m i n - h e i g h t : 1 4 8 p x ; f o n t - s i z e : 1 4 p x ; p a d d i n g : 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) } . c o m p o s e r t e x t a r e a . c o o r d { f o n t - f a m i l y : v a r ( - - m o n o ) ; f o n t - s i z e : 1 3 p x } . b a r { d i s p l a y : f l e x ; g a p : 8 p x ; f l e x - w r a p : w r a p ; a l i g n - i t e m s : c e n t e r ; m a r g i n : 1 2 p x 0 } . b a r > b u t t o n , . b a r > l a b e l { d i s p l a y : i n l i n e - f l e x ; a l i g n - i t e m s : c e n t e r ; h e i g h t : v a r ( - - c t l ) ; m i n - h e i g h t : v a r ( - - c t l ) ; p a d d i n g : 0 1 6 p x ; b o x - s i z i n g : b o r d e r - b o x ; w h i t e - s p a c e : n o w r a p } . b a r > i n p u t , . b a r > s e l e c t { h e i g h t : v a r ( - - c t l ) ; m i n - h e i g h t : v a r ( - - c t l ) } i n p u t , s e l e c t , t e x t a r e a , b u t t o n { f o n t : i n h e r i t ; f o n t - s i z e : 1 4 p x ; p a d d i n g : 5 p x 1 2 p x ; b o r d e r - r a d i u s : v a r ( - - r a d i u s ) ; b o r d e r : 1 p x s o l i d v a r ( - - l i n e ) ; b a c k g r o u n d : # f f f ; c o l o r : v a r ( - - t e x t ) } i n p u t : f o c u s , s e l e c t : f o c u s , t e x t a r e a : f o c u s { o u t l i n e : n o n e ; b o r d e r - c o l o r : v a r ( - - a c c e n t ) ; b o x - s h a d o w : 0 0 0 3 p x # 0 9 6 9 d a 4 d } s e l e c t { - m o z - a p p e a r a n c e : n o n e ; a p p e a r a n c e : n o n e ; - w e b k i t - a p p e a r a n c e : n o n e ; c u r s Line truncated
< / head >
< / head >
< body >
< body >
< div id = "root" > < / div >
< div id = "root" > < / div >