@xcanwin/manyoyo 7.0.8 → 7.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -116,10 +116,10 @@ except \${error}:
116
116
  else:
117
117
  \${}`,{label:`if`,detail:`/ else block`,type:`keyword`}),wI("class ${name}:\n def __init__(self, ${params}):\n ${}",{label:`class`,detail:`definition`,type:`keyword`}),wI("import ${module}",{label:`import`,detail:`statement`,type:`keyword`}),wI("from ${module} import ${names}",{label:`from`,detail:`import`,type:`keyword`})],JG=mF(WG,pF(KG.concat(qG)));function YG(e){let{node:t,pos:n}=e,r=e.lineIndent(n,-1),i=null;for(;;){let a=t.childBefore(n);if(!a)break;if(a.name==`Comment`)n=a.from;else if(a.name==`Body`||a.name==`MatchBody`)e.baseIndentFor(a)+e.unit<=r&&(i=a),t=a;else if(a.name==`MatchClause`)t=a;else if(a.type.is(`Statement`))t=a;else break}return i}function XG(e,t){let n=e.baseIndentFor(t),r=e.lineAt(e.pos,-1),i=r.from+r.text.length;return/^\s*($|#)/.test(r.text)&&e.node.to<i+100&&!/\S/.test(e.state.sliceDoc(i,e.node.to))&&e.lineIndent(e.pos,-1)<=n||/^\s*(else:|elif |except |finally:|case\s+[^=:]+:)/.test(e.textAfter)&&e.lineIndent(e.pos,-1)>n?null:n+e.unit}var ZG=Wk.define({name:`python`,parser:LG.configure({props:[lA.add({Body:e=>XG(e,/^\s*(#|$)/.test(e.textAfter)&&YG(e)||e.node)??e.continue(),MatchBody:e=>XG(e,YG(e)||e.node)??e.continue(),IfStatement:e=>/^\s*(else:|elif )/.test(e.textAfter)?e.baseIndent:e.continue(),"ForStatement WhileStatement":e=>/^\s*else:/.test(e.textAfter)?e.baseIndent:e.continue(),TryStatement:e=>/^\s*(except[ :]|finally:|else:)/.test(e.textAfter)?e.baseIndent:e.continue(),MatchStatement:e=>/^\s*case /.test(e.textAfter)?e.baseIndent+e.unit:e.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":vA({closing:`)`}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":vA({closing:`}`}),"ArrayExpression ArrayComprehensionExpression":vA({closing:`]`}),MemberExpression:e=>e.baseIndent+e.unit,"String FormatString":()=>null,Script:e=>{let t=YG(e);return(t&&XG(e,t))??e.continue()}}),TA.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":EA,Body:(e,t)=>({from:e.from+1,to:e.to-(e.to==t.doc.length?0:1)}),"String FormatString":(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})]}),languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,`'''`,`"""`],stringPrefixes:[`f`,`fr`,`rf`,`r`,`u`,`b`,`br`,`rb`,`F`,`FR`,`RF`,`R`,`U`,`B`,`BR`,`RB`]},commentTokens:{line:`#`},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:|case\s+[^:]*:?)$/}});function QG(){return new tA(ZG,[ZG.data.of({autocomplete:GG}),ZG.data.of({autocomplete:JG})])}var $G=63,eK=64,tK=1,nK=2,rK=3,iK=4,aK=5,oK=6,sK=7,cK=65,lK=66,uK=8,dK=9,fK=10,pK=11,mK=12,hK=13,gK=19,_K=20,vK=29,yK=33,bK=34,xK=47,SK=0,CK=1,wK=2,TK=3,EK=4,DK=class{constructor(e,t,n){this.parent=e,this.depth=t,this.type=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n}};DK.top=new DK(null,-1,SK);function OK(e,t){for(let n=0,r=t-e.pos-1;;r--,n++){let t=e.peek(r);if(AK(t)||t==-1)return n}}function kK(e){return e==32||e==9}function AK(e){return e==10||e==13}function jK(e){return kK(e)||AK(e)}function MK(e){return e<0||jK(e)}var NK=new YL({start:DK.top,reduce(e,t){return e.type==TK&&(t==_K||t==bK)?e.parent:e},shift(e,t,n,r){if(t==rK)return new DK(e,OK(r,r.pos),CK);if(t==cK||t==aK)return new DK(e,OK(r,r.pos),wK);if(t==$G)return e.parent;if(t==gK||t==yK)return new DK(e,0,TK);if(t==hK&&e.type==EK)return e.parent;if(t==xK){let t=/[1-9]/.exec(r.read(r.pos,n.pos));if(t)return new DK(e,e.depth+ +t[0],EK)}return e},hash(e){return e.hash}});function PK(e,t,n=0){return e.peek(n)==t&&e.peek(n+1)==t&&e.peek(n+2)==t&&MK(e.peek(n+3))}var FK=new IL((e,t)=>{if(e.next==-1&&t.canShift(eK))return e.acceptToken(eK);let n=e.peek(-1);if((AK(n)||n<0)&&t.context.type!=TK){if(PK(e,45)){if(t.canShift($G))e.acceptToken($G);else return e.acceptToken(tK,3)}if(PK(e,46)){if(t.canShift($G))e.acceptToken($G);else return e.acceptToken(nK,3)}let n=0;for(;e.next==32;)n++,e.advance();(n<t.context.depth||n==t.context.depth&&t.context.type==CK&&(e.next!=45||!MK(e.peek(1))))&&e.next!=-1&&!AK(e.next)&&e.next!=35&&e.acceptToken($G,-n)}},{contextual:!0}),IK=new IL((e,t)=>{if(t.context.type==TK){e.next==63&&(e.advance(),MK(e.next)&&e.acceptToken(sK));return}if(e.next==45)e.advance(),MK(e.next)&&e.acceptToken(t.context.type==CK&&t.context.depth==OK(e,e.pos-1)?iK:rK);else if(e.next==63)e.advance(),MK(e.next)&&e.acceptToken(t.context.type==wK&&t.context.depth==OK(e,e.pos-1)?oK:aK);else{let n=e.pos;for(;;)if(kK(e.next)){if(e.pos==n)return;e.advance()}else if(e.next==33)BK(e);else if(e.next==38)VK(e);else if(e.next==42){VK(e);break}else if(e.next==39||e.next==34){if(HK(e,!0))break;return}else if(e.next==91||e.next==123){if(!UK(e))return;break}else{qK(e,!0,!1,0);break}for(;kK(e.next);)e.advance();if(e.next==58){if(e.pos==n&&t.canShift(vK))return;MK(e.peek(1))&&e.acceptTokenTo(t.context.type==wK&&t.context.depth==OK(e,n)?lK:cK,n)}}},{contextual:!0});function LK(e){return e>32&&e<127&&e!=34&&e!=37&&e!=44&&e!=60&&e!=62&&e!=92&&e!=94&&e!=96&&e!=123&&e!=124&&e!=125}function RK(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function zK(e,t){return e.next==37?(e.advance(),RK(e.next)&&e.advance(),RK(e.next)&&e.advance(),!0):LK(e.next)||t&&e.next==44?(e.advance(),!0):!1}function BK(e){if(e.advance(),e.next==60){for(e.advance();;)if(!zK(e,!0)){e.next==62&&e.advance();break}}else for(;zK(e,!1););}function VK(e){for(e.advance();!MK(e.next)&&GK(e.next)!=`f`;)e.advance()}function HK(e,t){let n=e.next,r=!1,i=e.pos;for(e.advance();;){let a=e.next;if(a<0)break;if(e.advance(),a==n){if(a==39){if(e.next==39)e.advance();else break}else break}else if(a==92&&n==34)e.next>=0&&e.advance();else if(AK(a)){if(t)return!1;r=!0}else if(t&&e.pos>=i+1024)return!1}return!r}function UK(e){for(let t=[],n=e.pos+1024;;)if(e.next==91||e.next==123)t.push(e.next),e.advance();else if(e.next==39||e.next==34){if(!HK(e,!0))return!1}else if(e.next==93||e.next==125){if(t[t.length-1]!=e.next-2)return!1;if(t.pop(),e.advance(),!t.length)return!0}else if(e.next<0||e.pos>n||AK(e.next))return!1;else e.advance()}var WK=`iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif`;function GK(e){return e<33?`u`:e>125?`s`:WK[e-33]}function KK(e,t){let n=GK(e);return n!=`u`&&!(t&&n==`f`)}function qK(e,t,n,r){if(GK(e.next)==`s`||(e.next==63||e.next==58||e.next==45)&&KK(e.peek(1),n))e.advance();else return!1;let i=e.pos;for(;;){let a=e.next,o=0,s=r+1;for(;jK(a);){if(AK(a)){if(t)return!1;s=0}else s++;a=e.peek(++o)}if(!(a>=0&&(a==58?KK(e.peek(o+1),n):a==35?e.peek(o-1)!=32:KK(a,n)))||!n&&s<=r||s==0&&!n&&(PK(e,45,o)||PK(e,46,o)))break;if(t&&GK(a)==`f`)return!1;for(let t=o;t>=0;t--)e.advance();if(t&&e.pos>i+1024)return!1}return!0}var JK=new IL((e,t)=>{if(e.next==33)BK(e),e.acceptToken(mK);else if(e.next==38||e.next==42){let t=e.next==38?fK:pK;VK(e),e.acceptToken(t)}else e.next==39||e.next==34?(HK(e,!1),e.acceptToken(dK)):qK(e,!1,t.context.type==TK,t.context.depth)&&e.acceptToken(uK)}),YK=new IL((e,t)=>{let n=t.context.type==EK?t.context.depth:-1,r=e.pos;scan:for(;;){let i=0,a=e.next;for(;a==32;)a=e.peek(++i);if(!i&&(PK(e,45,i)||PK(e,46,i))||!AK(a)&&(n<0&&(n=Math.max(t.context.depth+1,i)),i<n))break;for(;;){if(e.next<0)break scan;let t=AK(e.next);if(e.advance(),t)continue scan;r=e.pos}}e.acceptTokenTo(hK,r)}),XK=gk({DirectiveName:X.keyword,DirectiveContent:X.attributeValue,"DirectiveEnd DocEnd":X.meta,QuotedLiteral:X.string,BlockLiteralHeader:X.special(X.string),BlockLiteralContent:X.content,Literal:X.content,"Key/Literal Key/QuotedLiteral":X.definition(X.propertyName),"Anchor Alias":X.labelName,Tag:X.typeName,Comment:X.lineComment,": , -":X.separator,"?":X.punctuation,"[ ]":X.squareBracket,"{ }":X.brace}),ZK=XL.deserialize({version:14,states:"5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",stateData:";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",goto:",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",nodeNames:`⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document`,maxTerm:74,context:NK,nodeProps:[[`isolate`,-3,8,9,14,``],[`openedBy`,18,`[`,32,`{`],[`closedBy`,19,`]`,33,`}`]],propSources:[XK],skippedNodes:[0],repeatNodeCount:6,tokenData:"-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",tokenizers:[FK,IK,JK,YK,0,1],topRules:{Stream:[0,15]},tokenPrec:0}),QK=Wk.define({name:`yaml`,parser:ZK.configure({props:[lA.add({Stream:e=>{for(let t=e.node.resolve(e.pos,-1);t&&t.to>=e.pos;t=t.parent){if(t.name==`BlockLiteralContent`&&t.from<t.to)return e.baseIndentFor(t);if(t.name==`BlockLiteral`)return e.baseIndentFor(t)+e.unit;if(t.name==`BlockSequence`||t.name==`BlockMapping`)return e.column(t.firstChild.from,1);if(t.name==`QuotedLiteral`)return null;if(t.name==`Literal`){let n=e.column(t.from,1);if(n==e.lineIndent(t.from,1))return n;if(t.to>e.pos)return null}}return null},FlowMapping:vA({closing:`}`}),FlowSequence:vA({closing:`]`})}),TA.add({"FlowMapping FlowSequence":EA,"Item Pair BlockLiteral":(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})]}),languageData:{commentTokens:{line:`#`},indentOnInput:/^\s*[\]\}]$/}});function $K(){return new tA(QK)}X.meta;var eq=`#e5c07b`,tq=`#e06c75`,nq=`#56b6c2`,rq=`#ffffff`,iq=`#abb2bf`,aq=`#7d8799`,oq=`#61afef`,sq=`#98c379`,cq=`#d19a66`,lq=`#c678dd`,uq=`#21252b`,dq=`#2c313a`,fq=`#282c34`,pq=`#353a42`,mq=`#3E4451`,hq=`#528bff`,gq=[QT.theme({"&":{color:iq,backgroundColor:fq},".cm-content":{caretColor:hq},".cm-cursor, .cm-dropCursor":{borderLeftColor:hq},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:mq},".cm-panels":{backgroundColor:uq,color:iq},".cm-panels.cm-panels-top":{borderBottom:`2px solid black`},".cm-panels.cm-panels-bottom":{borderTop:`2px solid black`},".cm-searchMatch":{backgroundColor:`#72a1ff59`,outline:`1px solid #457dff`},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:`#6199ff2f`},".cm-activeLine":{backgroundColor:`#6699ff0b`},".cm-selectionMatch":{backgroundColor:`#aafe661a`},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:`#bad0f847`},".cm-gutters":{backgroundColor:fq,color:aq,border:`none`},".cm-activeLineGutter":{backgroundColor:dq},".cm-foldPlaceholder":{backgroundColor:`transparent`,border:`none`,color:`#ddd`},".cm-tooltip":{border:`none`,backgroundColor:pq},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:`transparent`,borderBottomColor:`transparent`},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:pq,borderBottomColor:pq},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:dq,color:iq}}},{dark:!0}),rj($A.define([{tag:X.keyword,color:lq},{tag:[X.name,X.deleted,X.character,X.propertyName,X.macroName],color:tq},{tag:[X.function(X.variableName),X.labelName],color:oq},{tag:[X.color,X.constant(X.name),X.standard(X.name)],color:cq},{tag:[X.definition(X.name),X.separator],color:iq},{tag:[X.typeName,X.className,X.number,X.changed,X.annotation,X.modifier,X.self,X.namespace],color:eq},{tag:[X.operator,X.operatorKeyword,X.url,X.escape,X.regexp,X.link,X.special(X.string)],color:nq},{tag:[X.meta,X.comment],color:aq},{tag:X.strong,fontWeight:`bold`},{tag:X.emphasis,fontStyle:`italic`},{tag:X.strikethrough,textDecoration:`line-through`},{tag:X.link,color:aq,textDecoration:`underline`},{tag:X.heading,fontWeight:`bold`,color:tq},{tag:[X.atom,X.bool,X.special(X.variableName)],color:cq},{tag:[X.processingInstruction,X.string,X.inserted],color:sq},{tag:X.invalid,color:rq}]))];function _q(){return typeof document<`u`&&document.documentElement.classList.contains(`dark`)}var vq=QT.theme({"&":{backgroundColor:`#121314`},".cm-gutters":{backgroundColor:`#121314`,borderRight:`1px solid #3a3f4b`}},{dark:!0});function yq(e){switch(String(e||``).trim()){case`css`:return ZR();case`html`:return HV();case`javascript`:return lV({jsx:!0,typescript:!0});case`json`:return YV();case`markdown`:return XU();case`python`:return QG();case`yaml`:return $K();default:return[]}}function bq({value:e,language:t,readOnly:n,onChange:r}){let i=_.useRef(null),a=_.useRef(null),o=_.useRef(new Ry),s=_.useRef(new Ry),c=_.useRef(new Ry),l=_.useRef(r);_.useEffect(()=>{l.current=r},[r]);let u=_.useRef(!1);return _.useEffect(()=>{let r=i.current;if(!r)return;let d=o.current,f=s.current,p=c.current,m=new QT({parent:r,state:hb.create({doc:e,extensions:[TL,QT.lineWrapping,QT.updateListener.of(e=>{!e.docChanged||u.current||!l.current||l.current(e.state.doc.toString())}),f.of([hb.readOnly.of(n),QT.editable.of(!n)]),d.of(yq(t)),p.of(_q()?[gq,Iy.high(vq)]:[]),QT.theme({"&":{height:`100%`,fontSize:`12px`},".cm-scroller":{overflow:`auto`},".cm-content":{paddingRight:`14px`}})]})});a.current=m;let h=new MutationObserver(()=>{a.current?.dispatch({effects:c.current.reconfigure(_q()?[gq,Iy.high(vq)]:[])})});return h.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`]}),()=>{h.disconnect(),m.destroy(),a.current=null}},[]),_.useEffect(()=>{let t=a.current;!t||t.state.doc.toString()===e||(u.current=!0,t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}}),u.current=!1)},[e]),_.useEffect(()=>{a.current?.dispatch({effects:o.current.reconfigure(yq(t))})},[t]),_.useEffect(()=>{a.current?.dispatch({effects:s.current.reconfigure([hb.readOnly.of(n),QT.editable.of(!n)])})},[n]),(0,q.jsx)(`div`,{ref:i,className:`h-full min-h-64 overflow-hidden rounded-md border`})}function xq(){let[e,t]=_.useState(null),[n,r]=_.useState(null),[i,a]=_.useState(!1),[o,s]=_.useState(``),[c,l]=_.useState(!1),u=_.useCallback(()=>{a(!0),s(``),Jt(`/api/system/quick-chat-config`).then(e=>{t(typeof e.path==`string`?e.path:null),r(typeof e.run==`string`?e.run:null)}).catch(e=>s(e instanceof Error?e.message:`加载失败`)).finally(()=>a(!1))},[]);return _.useEffect(()=>{u()},[u]),(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`配置好后,容器 / AGENT 列表顶部的"快捷对话"按钮会在下面这个目录下新建按时间命名的子目录,自动创建容器和 AGENT,免去手动新建的步骤。`}),i?(0,q.jsx)(`div`,{className:`flex h-24 items-center justify-center`,children:(0,q.jsx)(ad,{className:`size-5`})}):o?(0,q.jsx)(sd,{variant:`destructive`,children:(0,q.jsx)(cd,{children:o})}):(0,q.jsxs)(`div`,{className:`rounded-lg border px-4`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between border-b py-2 text-sm last:border-b-0`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`工作目录`}),(0,q.jsx)(`span`,{className:`font-medium`,children:e||`未设置`})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between py-2 text-sm`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`run`}),(0,q.jsx)(`span`,{className:`font-medium`,children:n||`未设置`})]})]}),(0,q.jsx)(J,{type:`button`,variant:`outline`,onClick:()=>l(!0),className:`w-fit`,children:e&&n?`修改`:`设置`}),(0,q.jsx)(qp,{open:c,onOpenChange:l,initialPath:e||``,initialRun:n||``,onSaved:()=>u()})]})}var Sq=_.createContext(void 0);function Cq(){return _.useContext(Sq)}function wq(e={}){let{highlightItemOnHover:t,highlightedIndex:n,onHighlightedIndexChange:r}=Fr(),{ref:i,index:a}=mp(e),o=n===a,s=_.useRef(null),c=on(i,s);return{compositeProps:{tabIndex:o?0:-1,onFocus(){r(a)},onMouseMove(){let e=s.current;if(!t||!e)return;let n=e.hasAttribute(`disabled`)||e.ariaDisabled===`true`;!o&&!n&&e.focus()}},compositeRef:c,index:a}}function Tq(e){let{render:t,className:n,style:r,state:i=vn,props:a=_n,refs:o=_n,metadata:s,stateAttributesMapping:c,tag:l=`div`,...u}=e,{compositeProps:d,compositeRef:f}=wq({metadata:s});return Ln(l,e,{state:i,ref:[f,...o],props:[d,...a,u],stateAttributesMapping:c})}var Eq=_.forwardRef(function(e,t){let{className:n,defaultPressed:r=!1,disabled:i=!1,form:a,onPressedChange:o,pressed:s,render:c,type:l,value:u,nativeButton:d=!0,style:f,...p}=e,m=di(u||void 0),h=Cq(),g=h?.value??[],v=h?void 0:r,y=(i||h?.disabled)??!1,[b,x]=Nd({controlled:h?m!==void 0&&g.indexOf(m)>-1:s,default:v,name:`Toggle`,state:`pressed`}),{getButtonProps:S,buttonRef:C}=zr({disabled:y,native:d}),w={disabled:y,pressed:b},T=[C,t],E=[{"aria-pressed":b,onClick(e){let t=!b,n=ai(Hr,e.nativeEvent);o?.(t,n),!n.isCanceled&&(m&&h?.setGroupValue?.(m,t,n),!n.isCanceled&&x(t))}},p,S],D=Ln(`button`,e,{enabled:!h,state:w,ref:T,props:E}),O=_.useMemo(()=>({disabled:y,focusableWhenDisabled:!1}),[y]);return h?(0,q.jsx)(Tq,{tag:`button`,render:c,className:n,style:f,metadata:O,state:w,refs:T,props:E}):D}),Dq=`data-composite-item-active`,Oq=[];function kq(e){let{loopFocus:t=!0,orientation:n=`both`,grid:r,onLoop:i,direction:a,highlightedIndex:o,onHighlightedIndexChange:s,rootRef:c,enableHomeAndEndKeys:l=!1,stopEventPropagation:u,disabledIndices:d,modifierKeys:f=Oq}=e,[p,m]=_.useState(0),h=r!=null,g=_.useRef(null),v=on(g,c),y=_.useRef([]),b=_.useRef(!1),x=o??p,S=jr((e,t=!1)=>{if((s??m)(e),t){let t=y.current[e];fu(g.current,t,a,n)}}),C=jr(e=>{if(e.size===0||b.current)return;b.current=!0;let t=Array.from(e.keys()),r=t.find(e=>e?.hasAttribute(`data-composite-item-active`))??null,i=r?e.get(r)?.index??-1:-1;if(i!==-1)S(i);else if(Qa(t,x,d)){let e=Za(t,{disabledIndices:d});Ja(t,e)||S(e)}fu(g.current,r,a,n)});K(()=>{if(d==null||o!=null||!b.current)return;let e=y.current;if(Qa(e,x,d)){let t=Za(e,{disabledIndices:d});Ja(e,t)||S(t)}},[d,o,x,y,S]);let w=jr((e,t,n)=>i?i(e,t,n,y):n),T=jr(e=>{let o=e.key===`Home`||e.key===`End`;if(!cu.has(e.key)||!l&&o||Aq(e,f)||!g.current)return;let s=a===`rtl`,c=s?ou:su,p=s?su:ou,m=n===`vertical`?au:c,_=n===`vertical`?iu:p,v=Gi(e.nativeEvent);if(v!=null&&du(v)&&!Vd(v)){let t=v.selectionStart,n=v.selectionEnd,r=v.value;if(t==null||e.shiftKey||t!==n||e.key!==_&&t<r.length||e.key!==m&&t>0)return}let b=x,C=Ya(y,d),T=Xa(y,d);r!=null&&(b=r({disabledIndices:d,elementsRef:y,event:e,highlightedIndex:x,loopFocus:t,maxIndex:T,minIndex:C,onLoop:w,orientation:n,rtl:s}));let E=n!==`vertical`&&e.key===c||n!==`horizontal`&&e.key===`ArrowDown`,D=n!==`vertical`&&e.key===p||n!==`horizontal`&&e.key===`ArrowUp`;l&&(e.key===`Home`?b=C:e.key===`End`&&(b=T)),b===x&&(E||D)&&(t&&b===T&&E?(b=C,i&&(b=i(e,x,b,y))):t&&b===C&&D?(b=T,i&&(b=i(e,x,b,y))):b=Za(y.current,{startingIndex:b,decrement:D,disabledIndices:d})),b!==x&&!Ja(y.current,b)&&(u&&e.stopPropagation(),(h||o||E||D)&&e.preventDefault(),S(b,!0),queueMicrotask(()=>{y.current[b]?.focus()}))});return{props:{ref:v,onFocus(e){let t=g.current,n=Gi(e.nativeEvent);!t||n==null||!du(n)||n.setSelectionRange(0,n.value.length)},onKeyDown:T},highlightedIndex:x,onHighlightedIndexChange:S,elementsRef:y,onMapChange:C,relayKeyboardEvent:T}}function Aq(e,t){for(let n of lu)if(!t.includes(n)&&e.getModifierState(n))return!0;return!1}function jq(e){let{render:t,className:n,style:r,refs:i=_n,props:a=_n,state:o=vn,stateAttributesMapping:s,highlightedIndex:c,onHighlightedIndexChange:l,orientation:u,grid:d,loopFocus:f,onLoop:p,enableHomeAndEndKeys:m,onMapChange:h,stopEventPropagation:g=!0,rootRef:v,disabledIndices:y,modifierKeys:b,highlightItemOnHover:x=!1,tag:S=`div`,...C}=e,{props:w,highlightedIndex:T,onHighlightedIndexChange:E,elementsRef:D,onMapChange:O,relayKeyboardEvent:k}=kq({grid:d,loopFocus:f,onLoop:p,orientation:u,highlightedIndex:c,onHighlightedIndexChange:l,rootRef:v,stopEventPropagation:g,enableHomeAndEndKeys:m,direction:kf(),disabledIndices:y,modifierKeys:b}),A=Ln(S,e,{state:o,ref:i,props:[w,...a,C],stateAttributesMapping:s}),j=_.useMemo(()=>({highlightedIndex:T,onHighlightedIndexChange:E,highlightItemOnHover:x,relayKeyboardEvent:k}),[T,E,x,k]);return(0,q.jsx)(Pr.Provider,{value:j,children:(0,q.jsx)(xf,{elementsRef:D,onMapChange:e=>{h?.(e),O(e)},children:A})})}var Mq=_.createContext(void 0);function Nq(){return _.useContext(Mq)}var Pq=_.forwardRef(function(e,t){let{defaultValue:n,disabled:r=!1,loopFocus:i=!0,onValueChange:a,orientation:o=`horizontal`,multiple:s=!1,value:c,className:l,render:u,style:d,...f}=e,p=ep(!0),m=Nq(),h=c!==void 0||n!==void 0,g=(p?.disabled??!1)||(m?.disabled??!1)||r,[v,y]=Nd({controlled:c,default:c===void 0?n??_n:void 0,name:`ToggleGroup`,state:`value`}),b=jr((e,t,n)=>{let r;s?(r=v.slice(),t?r.push(e):r.splice(v.indexOf(e),1)):r=t?[e]:[],a?.(r,n),!n.isCanceled&&y(r)}),x={disabled:g,multiple:s,orientation:o},S=_.useMemo(()=>({disabled:g,setGroupValue:b,value:v,isValueInitialized:h}),[g,b,v,h]),C={role:`group`},w=Ln(`div`,e,{enabled:!!p,state:x,ref:t,props:[C,f]});return(0,q.jsx)(Sq.Provider,{value:S,children:p?w:(0,q.jsx)(jq,{render:u,className:l,style:d,state:x,refs:[t],props:[C,f],loopFocus:i,enableHomeAndEndKeys:!0,orientation:o})})}),Fq=Ku(`group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent hover:bg-muted`},size:{default:`h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,sm:`h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,lg:`h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`}},defaultVariants:{variant:`default`,size:`default`}}),Iq=_.createContext({size:`default`,variant:`default`,spacing:2,orientation:`horizontal`});function Lq({className:e,variant:t,size:n,spacing:r=2,orientation:i=`horizontal`,children:a,...o}){return(0,q.jsx)(Pq,{"data-slot":`toggle-group`,"data-variant":t,"data-size":n,"data-spacing":r,"data-orientation":i,style:{"--gap":r},className:G(`group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch`,e),...o,children:(0,q.jsx)(Iq.Provider,{value:{variant:t,size:n,spacing:r,orientation:i},children:a})})}function Rq({className:e,children:t,variant:n=`default`,size:r=`default`,...i}){let a=_.useContext(Iq);return(0,q.jsx)(Eq,{"data-slot":`toggle-group-item`,"data-variant":a.variant||n,"data-size":a.size||r,"data-spacing":a.spacing,className:G(`shrink-0 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t`,Fq({variant:a.variant||n,size:a.size||r}),e),...i,children:t})}var zq=`(prefers-color-scheme: dark)`,Bq=[`dark`,`light`,`system`],Vq=_.createContext(void 0);function Hq(e){return e!==null&&Bq.includes(e)}function Uq(){return window.matchMedia(zq).matches?`dark`:`light`}function Wq(){let e=document.createElement(`style`);return e.appendChild(document.createTextNode(`*,*::before,*::after{-webkit-transition:none!important;transition:none!important}`)),document.head.appendChild(e),()=>{window.getComputedStyle(document.body),requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.remove()})})}}function Gq(e){return e instanceof HTMLElement&&!!(e.isContentEditable||e.closest(`input, textarea, select, [contenteditable='true']`))}function Kq({children:e,defaultTheme:t=`system`,storageKey:n=`theme`,disableTransitionOnChange:r=!0,...i}){let[a,o]=_.useState(()=>{let e=localStorage.getItem(n);return Hq(e)?e:t}),s=_.useCallback(e=>{localStorage.setItem(n,e),o(e)},[n]),c=_.useCallback(e=>{let t=document.documentElement,n=e===`system`?Uq():e,i=r?Wq():null;t.classList.remove(`light`,`dark`),t.classList.add(n),i&&i()},[r]);_.useEffect(()=>{if(c(a),a!==`system`)return;let e=window.matchMedia(zq),t=()=>{c(`system`)};return e.addEventListener(`change`,t),()=>{e.removeEventListener(`change`,t)}},[a,c]),_.useEffect(()=>{let e=e=>{e.repeat||e.metaKey||e.ctrlKey||e.altKey||Gq(e.target)||e.key.toLowerCase()===`d`&&o(e=>{let t=e===`dark`?`light`:e===`light`?`dark`:Uq()===`dark`?`light`:`dark`;return localStorage.setItem(n,t),t})};return window.addEventListener(`keydown`,e),()=>{window.removeEventListener(`keydown`,e)}},[n]),_.useEffect(()=>{let e=e=>{if(e.storageArea===localStorage&&e.key===n){if(Hq(e.newValue)){o(e.newValue);return}o(t)}};return window.addEventListener(`storage`,e),()=>{window.removeEventListener(`storage`,e)}},[t,n]);let l=_.useMemo(()=>({theme:a,setTheme:s}),[a,s]);return(0,q.jsx)(Vq.Provider,{...i,value:l,children:e})}var qq=()=>{let e=_.useContext(Vq);if(e===void 0)throw Error(`useTheme must be used within a ThemeProvider`);return e},Jq=_.createContext(void 0);function Yq(){let e=_.useContext(Jq);if(e===void 0)throw Error(en(63));return e}var Xq={...xd,checked(e){return e?{"data-checked":``}:{"data-unchecked":``}}},Zq=_.forwardRef(function(e,t){let{checked:n,className:r,defaultChecked:i,"aria-labelledby":a,form:o,id:s,inputRef:c,name:l,nativeButton:u=!1,onCheckedChange:d,readOnly:f=!1,required:p=!1,disabled:m=!1,render:h,uncheckedValue:g,value:v,style:y,...b}=e,{clearErrors:x}=Ed(),{state:S,setTouched:C,setDirty:w,validityData:T,setFilled:E,setFocused:D,validationMode:O,disabled:k,name:A,validation:j}=wd(),{labelId:M}=Od(),N=k||m,P=A??l,F=_.useRef(null),I=on(F,c,j.inputRef),L=_.useRef(null),R=di(),z=Md({id:s,implicit:!1,controlRef:L}),ee=u?void 0:z,[B,te]=Nd({controlled:n,default:!!i,name:`Switch`,state:`checked`});Pd(L,R,B,void 0,!N,l),K(()=>{F.current&&E(F.current.checked)},[E]),Bu(B,()=>{x(P),w(B!==T.initialValue),E(B),j.change(B)});let{getButtonProps:V,buttonRef:ne}=zr({disabled:N,native:u}),H=kd(a,M,F,!u,ee),re={id:u?z:R,role:`switch`,"aria-checked":B,"aria-readonly":f||void 0,"aria-required":p||void 0,"aria-labelledby":H,onFocus(){N||D(!0)},onBlur(){let e=F.current;!e||N||(C(!0),D(!1),O===`onBlur`&&j.commit(e.checked))},onClick(e){if(f||N)return;e.preventDefault();let t=F.current;t&&Rr(t,e)}},ie={...j.getValidationProps(N),checked:B,disabled:N,form:o,id:ee,name:P,required:p,style:P?ya:va,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,ref:I,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(f){e.preventDefault();return}let t=e.currentTarget.checked,n=ai(Hr,e.nativeEvent);d?.(t,n),!n.isCanceled&&te(t)},onClick(e){e.stopPropagation()},onFocus(){L.current?.focus()},...v===void 0?vn:{value:v}},ae=_.useMemo(()=>({...S,checked:B,disabled:N,readOnly:f,required:p}),[S,B,N,f,p]),oe=Ln(`span`,e,{state:ae,ref:[t,L,ne],props:[re,b,V,e=>j.getValidationProps(N,e)],stateAttributesMapping:Xq});return(0,q.jsxs)(Jq.Provider,{value:ae,children:[oe,!B&&P&&g!==void 0&&(0,q.jsx)(`input`,{type:`hidden`,form:o,name:P,value:g,disabled:N}),(0,q.jsx)(`input`,{...ie,suppressHydrationWarning:!0})]})}),Qq=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e;return Ln(`span`,e,{state:Yq(),ref:t,stateAttributesMapping:Xq,props:a})});function $q({className:e,size:t=`default`,...n}){return(0,q.jsx)(Zq,{"data-slot":`switch`,"data-size":t,className:G(`peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none group-has-[:focus-visible]/field-label:border-transparent group-has-[:focus-visible]/field-label:ring-0 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...n,children:(0,q.jsx)(Qq,{"data-slot":`switch-thumb`,className:`pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground`})})}var eJ=_.createContext(void 0);function tJ(){let e=_.useContext(eJ);if(e===void 0)throw Error(en(64));return e}var nJ={tabActivationDirection:e=>({"data-activation-direction":e})},rJ=_.forwardRef(function(e,t){let{className:n,defaultValue:r=0,onValueChange:i,orientation:a=`horizontal`,render:o,value:s,style:c,...l}=e,u=e.defaultValue!==void 0,d=_.useRef([]),[f,p]=_.useState(()=>new Map),[m,h]=Nd({controlled:s,default:r,name:`Tabs`,state:`value`}),g=s!==void 0,[v,y]=_.useState(()=>new Map),b=_.useRef(void 0),x=_.useCallback(e=>iJ(v,e),[v]),[S,C]=_.useState(()=>({previousValue:m,tabActivationDirection:`none`})),{previousValue:w,tabActivationDirection:T}=S,E=T,D=!1;w!==m&&(E=aJ(w,m,a,v),D=w!=null&&m!=null&&x(m)==null);let O=D?w:m,k=w!==O||T!==E;K(()=>{k&&C({previousValue:O,tabActivationDirection:E})},[O,k,E]);let A=jr((e,t)=>{t.activationDirection=aJ(m,e,a,v),i?.(e,t),!t.isCanceled&&h(e)}),j=jr((e,t)=>{i?.(e,ai(t,void 0,void 0,{activationDirection:`none`}))}),M=jr((e,t)=>(p(n=>{let r=new Map(n);return r.set(e,t),r}),()=>{p(n=>{if(n.get(e)!==t)return n;let r=new Map(n);return r.delete(e),r})})),N=_.useCallback(e=>f.get(e),[f]),P=_.useCallback(e=>{for(let t of v.values())if(e===t.value)return t.id},[v]),F=_.useMemo(()=>({getTabElementBySelectedValue:x,getTabIdByPanelValue:P,getTabPanelIdByValue:N,onValueChange:A,orientation:a,registerMountedTabPanel:M,setTabMap:y,tabActivationDirection:E,value:m}),[x,P,N,A,a,M,y,E,m]),I=_.useMemo(()=>{for(let e of v.values())if(e.value===m)return e},[v,m]),L=_.useMemo(()=>{for(let e of v.values())if(!e.disabled)return e.value},[v]),R=_.useRef(!u),z=_.useRef(r),ee=_.useRef(u),B=_.useRef(!1);K(()=>{if(g)return;function e(e,t){h(e),C({previousValue:e,tabActivationDirection:`none`}),j(e,t),R.current=!1}if(v.size===0){B.current&&m!==null&&!b.current?.isConnected&&e(null,ti);return}B.current=!0,b.current=v.keys().next().value;let t=I?.disabled,n=I==null&&m!==null;if(!t&&m===z.current&&(ee.current=!1),ee.current&&t&&m===z.current)return;let r=R.current;if(t||n){let n=L??null;if(m===n){R.current=!1;return}let i=ti;r?i=ni:t&&(i=ei),e(n,i);return}r&&I!=null&&(j(m,ni),R.current=!1)},[L,g,j,I,h,v,m]);let te=Ln(`div`,e,{state:{orientation:a,tabActivationDirection:E},ref:t,props:l,stateAttributesMapping:nJ});return(0,q.jsx)(eJ.Provider,{value:F,children:(0,q.jsx)(xf,{elementsRef:d,children:te})})});function iJ(e,t){for(let[n,r]of e.entries())if(t===r.value)return n;return null}function aJ(e,t,n,r){if(e==null||t==null)return`none`;let[i,a,o]=n===`horizontal`?[`left`,`left`,`right`]:[`top`,`up`,`down`],s=iJ(r,e),c=iJ(r,t);if(s==null||c==null)return s!==c&&(typeof e==`number`||typeof e==`string`)&&typeof e==typeof t?t>e?o:a:`none`;let l=s.getBoundingClientRect()[i],u=c.getBoundingClientRect()[i];return u<l?a:u>l?o:`none`}var oJ=_.createContext(void 0);function sJ(){let e=_.useContext(oJ);if(e===void 0)throw Error(en(65));return e}var cJ=_.forwardRef(function(e,t){let{className:n,disabled:r=!1,render:i,value:a,id:o,nativeButton:s=!0,style:c,...l}=e,{value:u,getTabPanelIdByValue:d,onValueChange:f,orientation:p,tabActivationDirection:m}=tJ(),{activateOnFocus:h,registerTabResizeObserverElement:g,tabsListElement:v}=sJ(),{highlightedIndex:y,onHighlightedIndexChange:b}=Fr(),x=di(o),{compositeProps:S,compositeRef:C,index:w}=wq({metadata:_.useMemo(()=>({disabled:r,id:x,value:a}),[r,x,a])}),T=a===u,E=_.useRef(!1),D=_.useRef(null),O=jr(e=>{D.current?.(),D.current=e?g(e):null});K(()=>{if(E.current){E.current=!1;return}if(!(T&&w>-1&&y!==w))return;let e=v;if(e!=null){let t=Ui(Lr(e));if(t&&Wi(e,t))return}r||b(w)},[T,w,y,b,r,v]);let{getButtonProps:k,buttonRef:A}=zr({disabled:r,native:s,focusableWhenDisabled:!0}),j=d(a),M=_.useRef(!1),N=_.useRef(!1);function P(e){f(a,ai(Hr,e.nativeEvent,void 0,{activationDirection:`none`}))}function F(e){T||r||P(e)}function I(e){T||r||h&&(!M.current||N.current)&&P(e)}function L(e){if(T||r)return;M.current=!0,N.current=e.button===0;let t=Lr(e.currentTarget);function n(){M.current=!1,N.current=!1,t.removeEventListener(`pointerup`,n),t.removeEventListener(`pointercancel`,n)}t.addEventListener(`pointerup`,n),t.addEventListener(`pointercancel`,n)}return Ln(`button`,e,{state:{disabled:r,active:T,orientation:p,tabActivationDirection:m},ref:[t,A,C,O],props:[S,{role:`tab`,"aria-controls":j,"aria-selected":T,id:x,onClick:F,onFocus:I,onPointerDown:L,[Dq]:T?``:void 0,onKeyDownCapture(){E.current=!0}},l,k],stateAttributesMapping:nJ})}),lJ={...nJ,...Kn},uJ=_.forwardRef(function(e,t){let{className:n,value:r,render:i,keepMounted:a=!1,style:o,...s}=e,{value:c,getTabIdByPanelValue:l,orientation:u,tabActivationDirection:d,registerMountedTabPanel:f}=tJ(),p=di(),{ref:m,index:h}=mp(),g=r===c,{mounted:v,transitionStatus:y,setMounted:b}=$c(g),x=!v,S=l(r),C={hidden:x,orientation:u,tabActivationDirection:d,transitionStatus:y},w=_.useRef(null),T=Ln(`div`,e,{state:C,ref:[t,m,w],props:[{"aria-labelledby":S,hidden:x,id:p,role:`tabpanel`,tabIndex:g?0:-1,inert:_u(!g),"data-index":h},s],stateAttributesMapping:lJ});return tl({open:g,ref:w,onComplete(){g||b(!1)}}),K(()=>{if(!(p==null||x&&!a))return f(r,p)},[x,a,r,p,f]),a||v?T:null}),dJ=_.forwardRef(function(e,t){let{activateOnFocus:n=!1,className:r,loopFocus:i=!0,render:a,style:o,...s}=e,{orientation:c,setTabMap:l,tabActivationDirection:u}=tJ(),[d,f]=_.useState(0),[p,m]=_.useState(null),h=_.useRef(new Set),g=_.useRef(new Set),v=_.useRef(null);K(()=>{if(typeof ResizeObserver>`u`)return;let e=new ResizeObserver(()=>{h.current.forEach(e=>{e()})});return v.current=e,p&&e.observe(p),g.current.forEach(t=>{e.observe(t)}),()=>{e.disconnect(),v.current=null}},[p]);let y=jr(e=>(h.current.add(e),()=>{h.current.delete(e)})),b=jr(e=>(g.current.add(e),v.current?.observe(e),()=>{g.current.delete(e),v.current?.unobserve(e)})),x={orientation:c,tabActivationDirection:u},S={"aria-orientation":c===`vertical`?`vertical`:void 0,role:`tablist`},C=_.useMemo(()=>({activateOnFocus:n,registerIndicatorUpdateListener:y,registerTabResizeObserverElement:b,tabsListElement:p}),[n,y,b,p]);return(0,q.jsx)(oJ.Provider,{value:C,children:(0,q.jsx)(jq,{render:a,className:r,style:o,state:x,refs:[t,m],props:[S,s],stateAttributesMapping:nJ,highlightedIndex:d,enableHomeAndEndKeys:!0,loopFocus:i,orientation:c,onHighlightedIndexChange:f,onMapChange:l,disabledIndices:_n})})});function fJ({className:e,orientation:t=`horizontal`,...n}){return(0,q.jsx)(rJ,{"data-slot":`tabs`,"data-orientation":t,className:G(`group/tabs flex gap-2 data-horizontal:flex-col`,e),...n})}var pJ=Ku(`group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-horizontal/tabs:h-8 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none`,{variants:{variant:{default:`bg-muted`,line:`gap-1 bg-transparent`}},defaultVariants:{variant:`default`}});function mJ({className:e,variant:t=`default`,...n}){return(0,q.jsx)(dJ,{"data-slot":`tabs-list`,"data-variant":t,className:G(pJ({variant:t}),e),...n})}function hJ({className:e,...t}){return(0,q.jsx)(cJ,{"data-slot":`tabs-trigger`,className:G(`relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 aria-disabled:pointer-events-none aria-disabled:opacity-50 dark:text-muted-foreground dark:hover:text-foreground group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,`group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent`,`data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground`,`after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100`,e),...t})}function gJ({className:e,...t}){return(0,q.jsx)(uJ,{"data-slot":`tabs-content`,className:G(`flex-1 text-sm outline-none`,e),...t})}function _J(e){return/[A-Za-z_$]/.test(e)}function vJ(e){return/[A-Za-z0-9_$]/.test(e)}function yJ(e,t){let n=t;for(;n<e.length;){let t=e[n],r=e[n+1];if(/\s/.test(t)){n+=1;continue}if(t===`/`&&r===`/`){for(n+=2;n<e.length&&e[n]!==`
118
118
  `;)n+=1;continue}if(t===`/`&&r===`*`){for(n+=2;n+1<e.length&&(e[n]!==`*`||e[n+1]!==`/`);)n+=1;n=n+1<e.length?n+2:e.length;continue}break}return n}function bJ(e,t){let n=t,r=``,i=!1,a=!1,o=0;for(;n<e.length;n+=1){let t=e[n],s=e[n+1];if(i){t===`
119
- `&&(i=!1);continue}if(a){t===`*`&&s===`/`&&(a=!1,n+=1);continue}if(r){if(t===`\\`){n+=1;continue}t===r&&(r=``);continue}if(t===`/`&&s===`/`){i=!0,n+=1;continue}if(t===`/`&&s===`*`){a=!0,n+=1;continue}if(t===`"`||t===`'`){r=t;continue}if(t===`{`||t===`[`||t===`(`){o+=1;continue}if(t===`}`||t===`]`||t===`)`){if(o===0)break;--o;continue}if(o===0&&t===`,`)break}let s=n;for(;s>t&&/\s/.test(e[s-1]);)--s;return s}function xJ(e){let t=yJ(e,0);return e[t]===`{`?t:-1}function SJ(e,t){let n=e[t],r=``;for(let i=t+1;i<e.length;i+=1){let t=e[i];if(t===`\\`){r+=t,i+1<e.length&&(r+=e[i+1],i+=1);continue}if(t===n)return{value:r,end:i+1};r+=t}return null}function CJ(e,t){let n=e[t];if(n===`"`||n===`'`)return SJ(e,t);if(!_J(n))return null;let r=t+1;for(;r<e.length&&vJ(e[r]);)r+=1;return{value:e.slice(t,r),end:r}}function wJ(e,t,n){let r=yJ(e,t+1);for(;r<e.length;){if(r=yJ(e,r),e[r]===`}`)return null;let t=CJ(e,r);if(!t||(r=yJ(e,t.end),e[r]!==`:`))return null;let i=yJ(e,r+1),a=bJ(e,i);if(t.value===n)return{start:i,end:a};if(r=yJ(e,a),e[r]===`,`){r+=1;continue}if(e[r]===`}`)return null}return null}function TJ(e,t){if(!Array.isArray(t)||t.length===0)return null;let n=xJ(e);if(n===-1)return null;let r=null;for(let i=0;i<t.length;i+=1){if(r=wJ(e,n,t[i]),!r)return null;if(i===t.length-1)return r;let a=yJ(e,r.start);if(e[a]!==`{`)return null;n=a}return r}function EJ(e,t){return t.slice().sort((e,t)=>t.start-e.start).reduce((e,t)=>`${e.slice(0,t.start)}${t.text}${e.slice(t.end)}`,e)}var DJ=/(pass(word)?|passwd|secret|token|api(?:_|-)?key|auth(?:_|-)?token|oauth(?:_|-)?token)$/i,OJ=[{id:`basic`,label:`基础`,keys:[`containerName`,`hostPath`,`containerPath`,`imageName`,`imageVersion`,`containerMode`]},{id:`runtime`,label:`启动环境`,keys:[`envFile`,`env`,`volumes`,`ports`,`first`]},{id:`command`,label:`运行命令`,keys:[`shellPrefix`,`shell`,`shellSuffix`,`agentPromptCommand`,`yolo`,`quiet`]},{id:`build`,label:`构建参数`,keys:[`imageBuildArgs`]},{id:`web`,label:`Web 服务`,keys:[`serverUser`,`serverPass`,`serve`]},{id:`plugins`,label:`插件`,keys:[`plugins`]},{id:`runs`,label:`运行配置`,keys:[`runs`]},{id:`quick-chat`,label:`快捷对话`,keys:[]},{id:`capacity`,label:`容量预估`,keys:[]}];function kJ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function AJ(e,t,n){if(t.length===0)return n;let[r,...i]=t,a=kJ(e)?{...e}:{};return a[r]=AJ(a[r],i,n),a}function jJ(e,t){return DJ.test(e)?`secret`:typeof t==`boolean`?`boolean`:typeof t==`number`?`number`:Array.isArray(t)?`array`:`string`}function MJ(e,t){return e===`boolean`?t?`true`:`false`:e===`array`?Array.isArray(t)?t.map(e=>String(e)).join(`
119
+ `&&(i=!1);continue}if(a){t===`*`&&s===`/`&&(a=!1,n+=1);continue}if(r){if(t===`\\`){n+=1;continue}t===r&&(r=``);continue}if(t===`/`&&s===`/`){i=!0,n+=1;continue}if(t===`/`&&s===`*`){a=!0,n+=1;continue}if(t===`"`||t===`'`){r=t;continue}if(t===`{`||t===`[`||t===`(`){o+=1;continue}if(t===`}`||t===`]`||t===`)`){if(o===0)break;--o;continue}if(o===0&&t===`,`)break}let s=n;for(;s>t&&/\s/.test(e[s-1]);)--s;return s}function xJ(e){let t=yJ(e,0);return e[t]===`{`?t:-1}function SJ(e,t){let n=e[t],r=``;for(let i=t+1;i<e.length;i+=1){let t=e[i];if(t===`\\`){r+=t,i+1<e.length&&(r+=e[i+1],i+=1);continue}if(t===n)return{value:r,end:i+1};r+=t}return null}function CJ(e,t){let n=e[t];if(n===`"`||n===`'`)return SJ(e,t);if(!_J(n))return null;let r=t+1;for(;r<e.length&&vJ(e[r]);)r+=1;return{value:e.slice(t,r),end:r}}function wJ(e,t,n){let r=yJ(e,t+1);for(;r<e.length;){if(r=yJ(e,r),e[r]===`}`)return null;let t=CJ(e,r);if(!t||(r=yJ(e,t.end),e[r]!==`:`))return null;let i=yJ(e,r+1),a=bJ(e,i);if(t.value===n)return{start:i,end:a};if(r=yJ(e,a),e[r]===`,`){r+=1;continue}if(e[r]===`}`)return null}return null}function TJ(e,t){if(!Array.isArray(t)||t.length===0)return null;let n=xJ(e);if(n===-1)return null;let r=null;for(let i=0;i<t.length;i+=1){if(r=wJ(e,n,t[i]),!r)return null;if(i===t.length-1)return r;let a=yJ(e,r.start);if(e[a]!==`{`)return null;n=a}return r}function EJ(e,t){return t.slice().sort((e,t)=>t.start-e.start).reduce((e,t)=>`${e.slice(0,t.start)}${t.text}${e.slice(t.end)}`,e)}var DJ=/(pass(word)?|passwd|secret|token|api(?:_|-)?key|auth(?:_|-)?token|oauth(?:_|-)?token)$/i,OJ=[{id:`page`,label:`页面`,keys:[]},{id:`basic`,label:`基础`,keys:[`containerName`,`hostPath`,`containerPath`,`imageName`,`imageVersion`,`containerMode`]},{id:`runtime`,label:`启动环境`,keys:[`envFile`,`env`,`volumes`,`ports`,`first`]},{id:`command`,label:`运行命令`,keys:[`shellPrefix`,`shell`,`shellSuffix`,`agentPromptCommand`,`yolo`,`quiet`]},{id:`build`,label:`构建参数`,keys:[`imageBuildArgs`]},{id:`web`,label:`Web 服务`,keys:[`serverUser`,`serverPass`,`serve`]},{id:`plugins`,label:`插件`,keys:[`plugins`]},{id:`runs`,label:`运行配置`,keys:[`runs`]},{id:`quick-chat`,label:`快捷对话`,keys:[]},{id:`capacity`,label:`容量预估`,keys:[]}];function kJ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function AJ(e,t,n){if(t.length===0)return n;let[r,...i]=t,a=kJ(e)?{...e}:{};return a[r]=AJ(a[r],i,n),a}function jJ(e,t){return DJ.test(e)?`secret`:typeof t==`boolean`?`boolean`:typeof t==`number`?`number`:Array.isArray(t)?`array`:`string`}function MJ(e,t){return e===`boolean`?t?`true`:`false`:e===`array`?Array.isArray(t)?t.map(e=>String(e)).join(`
120
120
  `):``:e===`secret`?``:e===`number`?typeof t==`number`?String(t):``:t==null?``:String(t)}function NJ(e,t){if(e===`boolean`)return t===`true`?`true`:`false`;if(e===`array`){let e=t.split(`
121
121
  `).map(e=>e.trim()).filter(Boolean);return JSON.stringify(e)}if(e===`number`){let e=Number(t);return JSON.stringify(Number.isFinite(e)?e:0)}return JSON.stringify(t)}function PJ(e,t){if(e===`boolean`)return t===`true`;if(e===`array`)return t.split(`
122
- `).map(e=>e.trim()).filter(Boolean);if(e===`number`){let e=Number(t);return Number.isFinite(e)?e:0}return t}function FJ({path:e,value:t,onCommit:n}){let r=e[e.length-1],i=`config-field-${e.join(`.`)}`,a=jJ(r,t),[o,s]=_.useState(()=>MJ(a,t));function c(t){n(e,NJ(a,t),PJ(a,t))}return a===`boolean`?(0,q.jsxs)(gd,{orientation:`horizontal`,className:`justify-between`,children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)($q,{id:i,checked:o===`true`,onCheckedChange:e=>{let t=e?`true`:`false`;s(t),c(t)}})]}):a===`array`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Fp,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),placeholder:`每行一项`,spellCheck:!1,wrap:`off`,className:`min-h-16 overflow-x-auto font-mono text-xs whitespace-pre`})]}):a===`secret`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,type:`password`,value:o,onChange:e=>s(e.target.value),onBlur:()=>{o&&c(o)},placeholder:`敏感值已隐藏,留空则保留原值`,autoComplete:`off`})]}):a===`number`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),inputMode:`decimal`})]}):(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,value:o,onChange:e=>{s(e.target.value),c(e.target.value)}})]})}function IJ({path:e,value:t,onCommit:n,depth:r=0}){if(kJ(t)){let i=Object.entries(t);return(0,q.jsxs)(fd,{className:`gap-3 rounded-lg border bg-muted/30 p-3`,children:[(0,q.jsx)(pd,{variant:`legend`,className:`text-sm font-semibold text-foreground`,children:e[e.length-1]}),i.length===0?(0,q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`空`}):i.map(([t,i])=>(0,q.jsx)(IJ,{path:[...e,t],value:i,onCommit:n,depth:r+1},t))]})}return(0,q.jsx)(`div`,{className:G(r>0&&`pl-1`),children:(0,q.jsx)(FJ,{path:e,value:t,onCommit:n})})}function LJ({category:e,liveParsed:t,onCommit:n}){let r=e.keys.filter(e=>e in t);return r.length===0?(0,q.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前配置中该分类暂无内容,如需新增字段请切换到 JSON 视图编辑。`}):(0,q.jsx)(md,{children:r.map(e=>(0,q.jsx)(IJ,{path:[e],value:t[e],onCommit:n},e))})}function RJ({liveParsed:e,onCommit:t}){let n=kJ(e.runs)?e.runs:{},r=Object.keys(n),[i,a]=_.useState(r[0]||``),o=r.includes(i)?i:r[0]||``;return r.length===0?(0,q.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前未配置任何 run,可在 JSON 视图中添加。`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{children:`选择 run`}),(0,q.jsxs)(Dp,{value:o,onValueChange:e=>a(e??``),children:[(0,q.jsx)(Ap,{className:`w-full`,children:(0,q.jsx)(kp,{placeholder:`选择 run`})}),(0,q.jsx)(jp,{children:(0,q.jsx)(Op,{children:r.map(e=>(0,q.jsx)(Mp,{value:e,children:e},e))})})]})]}),o?(0,q.jsx)(md,{children:(0,q.jsx)(IJ,{path:[`runs`,o],value:n[o],onCommit:t},o)}):null]})}function zJ({open:e,onOpenChange:t}){let[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState({}),[c,l]=_.useState(0),[u,d]=_.useState(`form`),[f,p]=_.useState(OJ[0].id),[m,h]=_.useState(!1),[g,v]=_.useState(!1),[y,b]=_.useState(``),[x,S]=_.useState(``),{theme:C,setTheme:w}=qq(),T=_.useCallback(()=>{h(!0),b(``),S(``),Jt(`/api/config`).then(e=>{let t=String(e.raw||``);r(String(e.path||``)),a(t),s(t?Pv.default.parse(t):{}),l(e=>e+1),d(`form`)}).catch(e=>b(e instanceof Error?e.message:`加载配置失败`)).finally(()=>h(!1))},[]);_.useEffect(()=>{e&&T()},[e,T]);function E(e,t,n){a(n=>{let r=TJ(n,e);return r?EJ(n,[{start:r.start,end:r.end,text:t}]):n}),s(t=>AJ(t,e,n))}function D(){try{let e=Pv.default.parse(i);if(!kJ(e))throw Error(`配置根节点必须是对象`);s(e),l(e=>e+1),b(``),d(`form`)}catch(e){b(e instanceof Error?`JSON 内容有误,无法切回分类设置:${e.message}`:`JSON 内容有误,无法切回分类设置`)}}async function O(){v(!0),b(``),S(``);try{await Xt(`/api/config`,{raw:i}),S(`已保存`)}catch(e){b(e instanceof Error?e.message:`保存失败`)}finally{v(!1)}}return(0,q.jsx)(Ju,{open:e,onOpenChange:t,children:(0,q.jsxs)(Zu,{className:`flex h-[80vh] max-h-[80vh] flex-col sm:max-w-4xl`,children:[(0,q.jsxs)(Qu,{className:`shrink-0`,children:[(0,q.jsx)(ed,{children:`系统设置`}),(0,q.jsx)(td,{children:n||`~/.manyoyo/manyoyo.json`})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b pb-2`,children:[(0,q.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:u===`form`?OJ.find(e=>e.id===f)?.label:`JSON 设置`}),(0,q.jsxs)(Lq,{variant:`outline`,size:`sm`,value:[C],onValueChange:e=>{let t=e[0];t&&w(t)},children:[(0,q.jsx)(Rq,{value:`light`,children:`浅色`}),(0,q.jsx)(Rq,{value:`dark`,children:`深色`}),(0,q.jsx)(Rq,{value:`system`,children:`跟随系统`})]})]}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:m?(0,q.jsx)(`div`,{className:`flex h-40 items-center justify-center text-sm text-muted-foreground`,children:`加载中...`}):u===`json`?(0,q.jsx)(`div`,{className:`h-full min-h-72`,children:(0,q.jsx)(bq,{value:i,language:`json`,readOnly:!1,onChange:a})}):(0,q.jsxs)(fJ,{value:f,onValueChange:e=>p(String(e)),orientation:`vertical`,className:`h-full min-h-72`,children:[(0,q.jsx)(mJ,{variant:`line`,className:`w-36 shrink-0`,children:OJ.map(e=>(0,q.jsx)(hJ,{value:e.id,children:e.label},e.id))}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pl-4`,children:OJ.map(e=>(0,q.jsx)(gJ,{value:e.id,className:`mt-0`,children:e.id===`runs`?(0,q.jsx)(RJ,{liveParsed:o,onCommit:E}):e.id===`capacity`?(0,q.jsx)(Lv,{}):e.id===`quick-chat`?(0,q.jsx)(xq,{}):(0,q.jsx)(LJ,{category:e,liveParsed:o,onCommit:E})},e.id))})]},c)}),y?(0,q.jsx)(sd,{variant:`destructive`,className:`shrink-0`,children:(0,q.jsx)(cd,{children:y})}):null,x?(0,q.jsx)(sd,{className:`shrink-0`,children:(0,q.jsx)(cd,{children:x})}):null,(0,q.jsxs)($u,{className:`shrink-0 sm:flex-row sm:justify-between`,children:[(0,q.jsx)(J,{type:`button`,variant:`outline`,size:`sm`,className:`w-full sm:w-auto`,onClick:u===`form`?()=>d(`json`):D,disabled:m,children:u===`form`?`显示 JSON 设置`:`返回分类设置`}),(0,q.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,q.jsx)(J,{type:`button`,variant:`outline`,className:`w-full sm:w-auto`,onClick:T,disabled:m||g,children:`重新加载`}),(0,q.jsx)(J,{type:`button`,className:`w-full sm:w-auto`,onClick:O,disabled:m||g,children:g?`保存中...`:`保存`})]})]})]})})}function BJ({className:e,...t}){return(0,q.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:G(e),...t})}function VJ({className:e,...t}){return(0,q.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:G(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function HJ({className:e,...t}){return(0,q.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:G(`inline-flex items-center gap-1`,e),...t})}function UJ({className:e,...t}){return(0,q.jsx)(`span`,{"data-slot":`breadcrumb-page`,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:G(`font-normal text-foreground`,e),...t})}function WJ({children:e,className:t,...n}){return(0,q.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:G(`[&>svg]:size-3.5`,t),...n,children:e??(0,q.jsx)(F,{})})}var GJ=_.createContext(void 0);function KJ(e){let t=_.useContext(GJ);if(t===void 0&&!e)throw Error(en(33));return t}var qJ=_.createContext(void 0);function JJ(e){let t=_.useContext(qJ);if(t===void 0&&!e)throw Error(en(36));return t}var YJ=_.createContext(void 0);function XJ(e=!0){let t=_.useContext(YJ);if(t===void 0&&!e)throw Error(en(25));return t}function ZJ(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:a,typingRef:o,itemRef:s,itemMetadata:c}=e,{events:l}=a.useState(`floatingTreeRoot`),u=a.useState(`open`),d=XJ(!0),f=d!==void 0;return _.useMemo(()=>({id:r,role:`menuitem`,tabIndex:u&&n?0:-1,onKeyDown(e){e.key===` `&&o?.current&&e.preventDefault()},onMouseMove(e){i&&l.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&l.emit(`close`,{domEvent:e,reason:qr})},onMouseUp(e){if(d){let t=d.initialCursorPointRef.current;if(d.initialCursorPointRef.current=null,f&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||f&&!Ei&&e.button===2)return}s.current&&a.context.allowMouseUpTriggerRef.current&&(!f||e.button===2)&&c.type===`regular-item`&&Rr(s.current,e,{detail:1})}}),[t,n,r,l,i,u,a,o,s,d,f,c])}var QJ={type:`regular-item`};function $J(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:c,nodeId:l}=e,u=_.useRef(null),{getButtonProps:d,buttonRef:f}=zr({disabled:n,focusableWhenDisabled:!0,native:s,composite:!0}),p=ZJ({closeOnClick:t,highlighted:r,id:i,nodeId:l,store:a,typingRef:o,itemRef:u,itemMetadata:c}),m=_.useCallback(e=>Cn(p,{onMouseEnter(){c.type===`submenu-trigger`&&c.setActive()}},e,d),[p,d,c]),h=on(u,f);return _.useMemo(()=>({getItemProps:m,itemRef:h}),[m,h])}var eY=_.createContext(void 0),tY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(void 0),c=Ln(`div`,e,{ref:t,props:{role:`group`,"aria-labelledby":o,...a}});return(0,q.jsx)(eY.Provider,{value:s,children:c})}),nY=_.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=mp({guess:!0,label:a}),f=KJ(!0),p=di(i),{store:m}=JJ(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=$J({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:QJ});return Ln(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),rY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=JJ(),{side:c,align:l}=KJ(),u=ep(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),g=s.useState(`activeTriggerElement`),v=s.useState(`parent`),y=s.useState(`lastOpenChangeReason`),b=s.useState(`rootId`),x=s.useState(`floatingRootContext`),S=s.useState(`floatingTreeRoot`),C=s.useState(`closeDelay`),w=s.useState(`hoverEnabled`),T=s.useState(`disabled`),E=s.useState(`openMethod`),D=v.type===`context-menu`;tl({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),_.useEffect(()=>{function e(e){s.setOpen(!1,ai(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,s]),Il(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=s.useStateSetter(`popupElement`),k=Ln(`div`,e,{state:{transitionStatus:f,side:c,align:l,open:d,nested:v.type===`menu`,instant:h},ref:[t,s.context.popupRef,O],stateAttributesMapping:tr,props:[p,{onKeyDown(e){u&&cu.has(e.key)&&e.stopPropagation()}},Gf(f),o,{"data-rootownerid":b}]}),A=v.type===void 0||D;return(g||v.type===`menubar`&&y!==`outside-press`)&&(A=!0),(0,q.jsx)(ys,{context:x,openInteractionType:E,modal:D,disabled:!m,returnFocus:a===void 0?A:a,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:g,nextFocusableElement:v.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:k})}),iY=_.createContext(void 0);function aY(){let e=_.useContext(iY);if(e===void 0)throw Error(en(32));return e}var oY=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=JJ();return i.useState(`mounted`)||n?(0,q.jsx)(iY.Provider,{value:n,children:(0,q.jsx)(es,{ref:t,...r})}):null}),sY=_.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=Ko,style:g,...v}=e,{store:y}=JJ(),b=aY(),x=XJ(!0),S=y.useState(`parent`),C=y.useState(`floatingRootContext`),w=y.useState(`floatingTreeRoot`),T=y.useState(`mounted`),E=y.useState(`open`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`activeTriggerElement`),A=y.useState(`transitionStatus`),j=y.useState(`positionerElement`),M=y.useState(`instantType`),N=y.useState(`adaptiveOrigin`),P=y.useState(`lastOpenChangeReason`),F=y.useState(`floatingNodeId`),I=y.useState(`floatingParentNodeId`),L=C.useState(`domReferenceElement`),R=_.useRef(null),z=el(j),ee=n,B=c,te=l,V=s,ne=h;S.type===`context-menu`&&(ee=n??S.context?.anchor,V??=`start`,!o&&V!==`center`&&(te=e.alignOffset??2,B=e.sideOffset??-5));let H=o,re=V;S.type===`menu`?(H??=`inline-end`,re??=`start`,ne=e.collisionAvoidance??qo):S.type===`menubar`&&(H??=S.context.orientation===`vertical`?`inline-end`:`bottom`,re??=`start`);let ie=S.type===`context-menu`,ae=Rf({anchor:ee,floatingRootContext:C,positionMethod:x?`fixed`:r,mounted:T,side:H,sideOffset:B,align:re,alignOffset:te,arrowPadding:ie?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:F,keepMounted:b,disableAnchorTracking:m,collisionAvoidance:ne,shift:ie?{crossAxis:!(`side`in ne&&ne.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:w,adaptiveOrigin:N});_.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===F&&y.set(`hoverEnabled`,!1),e.nodeId!==F&&e.parentNodeId===y.select(`floatingParentNodeId`)&&y.setOpen(!1,ai($r)))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[y,w.events,F]),_.useEffect(()=>{if(y.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==y.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;y.setOpen(!1,ai(t))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[w.events,y]);let oe=gi();_.useEffect(()=>{E||oe.clear()},[E,oe]),_.useEffect(()=>{function e(e){if(!(!E||e.nodeId!==y.select(`floatingParentNodeId`))){if(e.target&&k&&k!==e.target){let e=y.select(`closeDelay`);e>0?oe.isStarted()||oe.start(e,()=>{y.setOpen(!1,ai($r))}):y.setOpen(!1,ai($r))}else oe.clear()}}return w.events.on(`itemhover`,e),()=>{w.events.off(`itemhover`,e)}},[w.events,E,k,y,oe]),_.useEffect(()=>{let e={open:E,nodeId:F,parentNodeId:I,reason:y.select(`lastOpenChangeReason`)};w.events.emit(`menuopenchange`,e)},[w.events,E,y,F,I]),K(()=>{let e=L,t=R.current;if(e&&(R.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return z(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[L,z,y]);let se={open:E,side:ae.side,align:ae.align,anchorHidden:ae.anchorHidden,nested:S.type===`menu`,instant:M},ce=S.type===`menubar`&&S.context.modal;Jf(E&&(ce||D&&P!==`trigger-hover`),O===`touch`,j,k);let le=Kf(e,se,{styles:ae.positionerStyles,transitionStatus:A,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!T,inert:!E}),ue=T&&S.type!==`menu`&&(S.type!==`menubar`&&D&&P!==`trigger-hover`||S.type===`menubar`&&S.context.modal),de=null;return S.type===`menubar`?de=S.context.contentElement:S.type===void 0&&(de=k),(0,q.jsxs)(GJ.Provider,{value:ae,children:[ue&&(0,q.jsx)(vu,{ref:S.type===`context-menu`||S.type===`nested-context-menu`?S.context.internalBackdropRef:null,inert:_u(!E),cutout:de}),(0,q.jsx)(cs,{id:F,children:(0,q.jsx)(xf,{elementsRef:y.context.itemDomElements,labelsRef:y.context.itemLabels,children:le})})]})}),cY=_.createContext(null);function lY(e){let t=_.useContext(cY);if(t===null&&!e)throw Error(en(5));return t}var uY={...wl,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},dY=class extends Yc{constructor(e){super({...pY(),...e},fY(),uY),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function fY(){return{positionerRef:_.createRef(),popupRef:_.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),onOpenChangeComplete:void 0,triggerElements:new hl}}function pY(){return{..._l(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new ns,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:vn,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0}}var mY=_.createContext(void 0);function hY(){return _.useContext(mY)}var gY=Rc(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:o=!1,modal:s,loopFocus:c=!0,orientation:l=`vertical`,actionsRef:u,closeParentOnEsc:d=!1,handle:f,triggerId:p,defaultTriggerId:m=null,highlightItemOnHover:h=!0}=e,g=XJ(!0),v=JJ(!0),y=lY(!0),b=hY(),x=_.useMemo(()=>b&&v?{type:`menu`,store:v.store}:y?{type:`menubar`,context:y}:g&&!v?{type:`context-menu`,context:g}:{type:void 0},[g,v,y,b]),S=_Y({open:a,openProp:n,activeTriggerId:m,triggerIdProp:p,parent:x});S.useControlledProp(`openProp`,n),S.useControlledProp(`triggerIdProp`,p),S.useContextCallback(`onOpenChangeComplete`,i);let C=ui(),w=ui(),T=S.useState(`floatingTreeRoot`),E=ss(T),D=as(),O=S.useState(`open`),k=S.useState(`activeTriggerElement`),A=S.useState(`positionerElement`),j=S.useState(`hoverEnabled`),M=S.useState(`disabled`),N=S.useState(`lastOpenChangeReason`),P=S.useState(`parent`),F=S.useState(`activeIndex`),I=S.useState(`payload`),L=S.useState(`floatingParentNodeId`),R=_.useRef(null),z=_.useRef(P.type!==`context-menu`),ee=gi(),B=_.useRef(!0),te=gi(),V=L!=null,{openMethod:ne,triggerProps:H}=Hu(O);S.useSyncedValues({disabled:o,highlightItemOnHover:h,modal:P.type===void 0?s:void 0,openMethod:ne,rootId:C}),dl(S);let{forceUnmount:re}=fl(O,S,()=>{S.set(`allowMouseEnter`,!1)});K(()=>{g&&!v?S.update({parent:{type:`context-menu`,context:g},floatingNodeId:E,floatingParentNodeId:D}):v&&S.update({floatingNodeId:E,floatingParentNodeId:D})},[g,v,E,D,S]),_.useEffect(()=>{if(O||(R.current=null),P.type===`context-menu`){if(!O){ee.clear(),z.current=!1;return}ee.start(500,()=>{z.current=!0})}},[ee,O,P.type]),K(()=>{!O&&!j&&S.set(`hoverEnabled`,!0)},[O,j,S]);let ie=jr((e,t)=>{let n=t.reason;if(!e&&!S.select(`open`)||O===e&&t.trigger===k&&N===n)return;let i=cl(t);if(!e&&t.trigger==null&&(t.trigger=k??void 0),r?.(e,t),t.isCanceled)return;S.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!B.current)return;e&&n===`trigger-focus`?(B.current=!1,te.start(300,()=>{B.current=!0})):(B.current=!0,te.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};R.current=t.event,sl(c,e,t.trigger,i()),S.update(c),P.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?S.set(`instantType`,`group`):o||s?S.set(`instantType`,o?`click`:`dismiss`):S.set(`instantType`,void 0)}),ae=Qc({popupStore:S,floatingId:w,nested:D!=null,onOpenChange:ie}),oe=ae.context.events;K(()=>{let e=({open:e,eventDetails:t})=>ie(e,t);return oe.on(`setOpen`,e),()=>{oe?.off(`setOpen`,e)}},[oe,ie]);let se=_.useCallback(()=>{S.setOpen(!1,ai(ri))},[S]);_.useImperativeHandle(u,()=>({unmount:re,close:se}),[re,se]);let ce;P.type===`context-menu`&&(ce=P.context),_.useImperativeHandle(ce?.positionerRef,()=>A,[A]),_.useImperativeHandle(ce?.actionsRef,()=>({setOpen:ie}),[ie]);let le=Es(ae,{enabled:!M,bubbles:{escapeKey:d&&P.type===`menu`},outsidePress(){return P.type!==`context-menu`||R.current?.type===`contextmenu`||z.current},externalTree:V?T:void 0}),ue=kf(),de=_.useCallback(e=>{S.select(`activeIndex`)!==e&&S.set(`activeIndex`,e)},[S]),fe=Kl(ae,{enabled:!M,listRef:S.context.itemDomElements,activeIndex:F,nested:P.type!==void 0,loopFocus:c,orientation:l,parentOrientation:P.type===`menubar`?P.context.orientation:void 0,rtl:ue===`rtl`,disabledIndices:_n,onNavigate:de,openOnArrowKeyDown:P.type!==`context-menu`,externalTree:V?T:void 0,focusItemOnHover:h}),pe=_.useCallback(e=>{S.context.typingRef.current=e},[S]),me=ql(ae,{enabled:!M,listRef:S.context.itemLabels,elementsRef:S.context.itemDomElements,activeIndex:F,resetMs:500,onMatch:e=>{O&&e!==F&&S.set(`activeIndex`,e)},onTyping:pe});pl(S,{floatingRootContext:ae,activeTriggerProps:_.useMemo(()=>{let e=Cn(me.reference,fe.reference,le.reference,{onMouseMove(){S.set(`allowMouseEnter`,!0)}},H);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=O,e},[S,me.reference,fe.reference,le.reference,H,O]),inactiveTriggerProps:_.useMemo(()=>{let e=Cn(fe.trigger,le.trigger,H);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[fe.trigger,le.trigger,H]),popupProps:_.useMemo(()=>Cn(nl,{id:w,role:`menu`,"aria-labelledby":k?.id,onMouseMove(){S.set(`allowMouseEnter`,!0),P.type===`menu`&&S.set(`hoverEnabled`,!1)},onClick(){S.select(`hoverEnabled`)&&S.set(`hoverEnabled`,!1)},onKeyDown(e){let t=S.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},me.floating,fe.floating,le.floating),[k,w,P.type,S,me.floating,fe.floating,le.floating]),itemProps:fe.item??vn});let U=_.useMemo(()=>({store:S,parent:x}),[S,x]),he=(0,q.jsxs)(qJ.Provider,{value:U,children:[f&&(0,q.jsx)(al,{handle:f,store:S}),typeof t==`function`?t({payload:I}):t]});return P.type===void 0||P.type===`context-menu`?(0,q.jsx)(ls,{externalTree:T,children:he}):he});function _Y(e){return an(()=>new dY(e)).current}function vY(e){if(lr(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!xr(e))return vY(wr(e))}function yY(e,t){let n=_.useRef(null);function r(t){Yo.flushSync(()=>{e.setOpen(!1,ai(Yr,t.nativeEvent,t.currentTarget))}),Co(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&wo(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{Yo.flushSync(()=>{e.setOpen(!1,ai(Yr,n.nativeEvent,n.currentTarget))});let i=So(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&Wi(r,i);){let e=i;if(i=yo(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function bY(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=_.useRef(!1);return _.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,Lr(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:vn,[t,n,r])}var xY=zc(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:s,openOnHover:c,delay:l=100,closeDelay:u=0,handle:d,payload:f,...p}=e,m=JJ(!0),h=Tl(d)??m?.store;if(!h)throw Error(en(85));let g=di(s),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),C=CY(),w=Fr(!0),T=os(),E=_.useMemo(()=>T??new ns,[T]),{registerTrigger:D,isMountedByThisTrigger:O}=ul(g,S,h,{payload:f,closeDelay:u,parent:C,floatingTreeRoot:E,floatingNodeId:ss(E),floatingParentNodeId:as(),keyboardEventRelay:w?.relayKeyboardEvent}),k=C.type===`menubar`,A=h.useState(`disabled`),j=a||A||k&&C.context.disabled,{getButtonProps:M,buttonRef:N}=zr({disabled:j,native:o});_.useEffect(()=>{!b&&C.type===void 0&&(h.context.allowMouseUpTriggerRef.current=!1)},[h,b,C.type]);let P=_.useRef(null),F=gi(),I=jr(e=>{if(!P.current)return;F.clear(),h.context.allowMouseUpTriggerRef.current=!1;let t=e.target;Wi(P.current,t)||Wi(h.select(`positionerElement`),t)||t===P.current||(t==null||vY(t)!==h.select(`rootId`))&&(uf(e,P.current)||E.events.emit(`close`,{domEvent:e,reason:Qr}))});_.useEffect(()=>{b&&h.select(`lastOpenChangeReason`)===`trigger-hover`&&Lr(P.current).addEventListener(`mouseup`,I,{once:!0})},[b,I,h]);let L=k&&C.context.hasSubmenuOpen,R=Rl(y,{enabled:(c??L)&&!j&&(!k||L&&!O),handleClose:tu({blockPointerEvents:!k}),mouseOnly:!0,move:!1,restMs:C.type===void 0?l:void 0,delay:{close:u},triggerElementRef:S,externalTree:E,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),z=SY(b,h.select(`lastOpenChangeReason`)),ee=bs(y,{enabled:!j,event:b&&k?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:C.type===void 0&&z}),B=Al(y,{enabled:!j&&L}),te=bY({open:b,enabled:k,mouseDownAction:`open`}),V=_.useMemo(()=>Cn(B.reference,ee.reference),[B.reference,ee.reference]),ne=h.useState(`triggerProps`,O),{preFocusGuardRef:H,handlePreFocusGuardFocus:re,handleFocusTargetFocus:ie}=yY(h,S),ae={disabled:j,open:b},oe=[P,t,N,D,S],se=[V,R??vn,ne,{"aria-haspopup":`menu`,"aria-controls":x,id:g,onMouseDown:e=>{h.select(`open`)||(F.start(200,()=>{h.context.allowMouseUpTriggerRef.current=!0}),Lr(e.currentTarget).addEventListener(`mouseup`,I,{once:!0}))}},k?{role:`menuitem`}:{},te,p,M],ce=Ln(`button`,e,{enabled:!k,stateAttributesMapping:$n,state:ae,ref:oe,props:se});return k?(0,q.jsx)(Tq,{tag:`button`,render:n,className:r,style:i,state:ae,refs:oe,props:se,stateAttributesMapping:$n}):b?(0,q.jsxs)(_.Fragment,{children:[(0,q.jsx)(ba,{ref:H,onFocus:re},`${g}-pre-focus-guard`),(0,q.jsx)(_.Fragment,{children:ce},g),(0,q.jsx)(ba,{ref:h.context.triggerFocusTargetRef,onFocus:ie},`${g}-post-focus-guard`)]}):(0,q.jsx)(_.Fragment,{children:ce},g)});function SY(e,t){let n=gi(),[r,i]=_.useState(!1);return K(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function CY(){let e=lY(!0);return _.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}function wY({...e}){return(0,q.jsx)(gY,{"data-slot":`dropdown-menu`,...e})}function TY({...e}){return(0,q.jsx)(xY,{"data-slot":`dropdown-menu-trigger`,...e})}function EY({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,q.jsx)(oY,{children:(0,q.jsx)(sY,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,q.jsx)(rY,{"data-slot":`dropdown-menu-content`,className:G(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,i),...a})})})}function DY({...e}){return(0,q.jsx)(tY,{"data-slot":`dropdown-menu-group`,...e})}function OY({className:e,inset:t,variant:n=`default`,...r}){return(0,q.jsx)(nY,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:G(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}var kY=768;function AY(){let[e,t]=_.useState(void 0);return _.useEffect(()=>{let e=window.matchMedia(`(max-width: 767px)`),n=()=>{t(window.innerWidth<kY)};return e.addEventListener(`change`,n),t(window.innerWidth<kY),()=>e.removeEventListener(`change`,n)},[]),!!e}function jY({...e}){return(0,q.jsx)(Lu,{"data-slot":`sheet`,...e})}function MY({...e}){return(0,q.jsx)(yu,{"data-slot":`sheet-portal`,...e})}function NY({className:e,...t}){return(0,q.jsx)(nr,{"data-slot":`sheet-overlay`,className:G(`fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs`,e),...t})}function PY({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,q.jsxs)(MY,{children:[(0,q.jsx)(NY,{}),(0,q.jsxs)(gu,{"data-slot":`sheet-content`,"data-side":n,className:G(`fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm`,e),...i,children:[t,r&&(0,q.jsxs)(oi,{"data-slot":`sheet-close`,render:(0,q.jsx)(J,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`}),children:[(0,q.jsx)(me,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function FY({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sheet-header`,className:G(`flex flex-col gap-0.5 p-4`,e),...t})}function IY({className:e,...t}){return(0,q.jsx)(Ru,{"data-slot":`sheet-title`,className:G(`font-heading text-base font-medium text-foreground`,e),...t})}function LY({className:e,...t}){return(0,q.jsx)(fi,{"data-slot":`sheet-description`,className:G(`text-sm text-muted-foreground`,e),...t})}var RY=_.createContext(void 0);function zY(e){let t=_.useContext(RY);if(t===void 0&&!e)throw Error(en(72));return t}var BY={...wl,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},VY=class extends Yc{constructor(e,t,n){let r=new hl;super(HY(e,r,t,n),UY(r),BY)}setOpen=(e,t)=>{ll(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,ai(Ur,e))}};function HY(e,t,n,r=!1){let i={..._l(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=vl(t,n,r),i}function UY(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var WY=Rc(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=il((e,t)=>new VY({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),v=p.useState(`mounted`),y=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),dl(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:b,transitionStatus:x}=fl(h,p),S=p.useState(`isInstantPhase`),C=p.useState(`instantType`),w=p.useState(`lastOpenChangeReason`),T=_.useRef(null);K(()=>{m&&t&&p.setOpen(!1,ai(ei))},[m,t,p]),K(()=>{x===`ending`&&w===`none`||x!==`ending`&&S?(C!==`delay`&&(T.current=C),p.set(`instantType`,`delay`)):T.current!==null&&(p.set(`instantType`,T.current),T.current=null)},[x,S,w,C,p]),K(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]),_.useImperativeHandle(o,()=>({unmount:b,close:()=>p.setOpen(!1,ai(ri))}),[b,p]);let E=h||v||!t&&a!==`none`;return(0,q.jsxs)(RY.Provider,{value:p,children:[l&&(0,q.jsx)(al,{handle:l,store:p}),E&&(0,q.jsx)(GY,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:y}):f]})});function GY({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Es(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=Cs(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=_.useMemo(()=>Cn(a.reference,i.reference),[a.reference,i.reference]);return pl(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??vn}),null}var KY=_.createContext(void 0);function qY(){return _.useContext(KY)}var JY=`data-base-ui-tooltip-trigger`;function YY(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(cr(n))return n}}let t=e.target;return cr(t)?t:null}function XY(e){let t=e;for(;t;){let e=t.closest(`[${JY}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&cr(n.host)?n.host:null}return null}var ZY=zc(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=zY(!0),m=Tl(a)??p;if(!m)throw Error(en(82));let h=di(d),g=m.useState(`isTriggerActive`,h),v=m.useState(`isOpenedByTrigger`,h),y=m.useState(`floatingRootContext`),b=_.useRef(null),x=c??600,S=u??0,{registerTrigger:C,isMountedByThisTrigger:w}=ul(h,b,m,{payload:o,closeOnClick:l,closeDelay:S}),T=qY(),{delayRef:E,isInstantPhase:D,hasProvider:O}=ca(y,{open:v}),k=Fl(y);m.useSyncedValue(`isInstantPhase`,D);let A=m.useState(`disabled`),j=s??A,M=da(j),N=m.useState(`trackCursorAxis`),P=m.useState(`disableHoverablePopup`),F=_.useRef(!1),I=gi(),L=_.useRef(void 0);function R(){return O?ta(E.current,`open`)===0?0:c??T??600:x}function z(e){let t=b.current;if(!t||!e)return!1;let n=XY(e);return n!==null&&n!==t&&Wi(t,n)}function ee(e){let t=z(e);return F.current=t,t&&(k.openChangeTimeout.clear(),k.restTimeout.clear(),k.restTimeoutPending=!1,I.clear()),t}let B=Rl(y,{enabled:!j,mouseOnly:!0,move:!1,handleClose:!P&&N!==`both`?tu():null,restMs:R,delay(){return u==null&&O?{close:ta(E.current,`close`)}:{close:S}},triggerElementRef:b,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!F.current}}),te=Al(y,{enabled:!j}).reference,V=e=>{let t=F.current,n=YY(e),r=ee(n),i=b.current,a=i&&n&&Wi(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,ai(Wr,e));return}if(t&&!r&&a&&!M.current&&!m.select(`open`)&&i&&Fi(L.current)){let t=()=>{!F.current&&!M.current&&!m.select(`open`)&&m.setOpen(!0,ai(Wr,e,i))},n=R();n===0?(I.clear(),t()):I.start(n,t)}},ne=m.useState(`triggerProps`,w);return Ln(`button`,e,{state:{open:v},ref:[t,C,b],props:[B,te,w||N!==`none`?ne:void 0,{onMouseOver(e){V(e.nativeEvent)},onFocus(e){z(YY(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){F.current=!1,I.clear(),L.current=void 0},onPointerEnter(e){L.current=e.pointerType},onPointerDown(e){L.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,"data-trigger-disabled":j?``:void 0,[JY]:j?void 0:``},f],stateAttributesMapping:Qn})}),QY=_.createContext(void 0);function $Y(){let e=_.useContext(QY);if(e===void 0)throw Error(en(70));return e}var eX=_.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=$o({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,q.jsxs)(_.Fragment,{children:[l,c&&Yo.createPortal(n,c)]})}),tX=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return zY().useState(`mounted`)||n?(0,q.jsx)(QY.Provider,{value:n,children:(0,q.jsx)(eX,{ref:t,...r})}):null}),nX=_.createContext(void 0);function rX(){let e=_.useContext(nX);if(e===void 0)throw Error(en(71));return e}var iX=_.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=qo,style:g,...v}=e,y=zY(),b=$Y(),x=y.useState(`open`),S=y.useState(`mounted`),C=y.useState(`trackCursorAxis`),w=y.useState(`disableHoverablePopup`),T=y.useState(`floatingRootContext`),E=y.useState(`instantType`),D=y.useState(`transitionStatus`),O=Rf({anchor:i,positionMethod:a,floatingRootContext:T,mounted:S,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:b,collisionAvoidance:h,adaptiveOrigin:y.useState(`adaptiveOrigin`)}),k=Kf(e,_.useMemo(()=>({open:x,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:C===`none`?E:`tracking-cursor`}),[x,O.side,O.align,O.anchorHidden,C,E]),{styles:O.positionerStyles,transitionStatus:D,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!S,inert:!x||C===`both`||w});return(0,q.jsx)(nX.Provider,{value:O,children:k})}),aX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=zY(),{side:s,align:c}=rX(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);tl({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),Il(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return Ln(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[nl,f,Gf(d),a],stateAttributesMapping:tr})}),oX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=zY(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=rX();return Ln(`div`,e,{state:{open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)},ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:er})});function sX({...e}){return(0,q.jsx)(WY,{"data-slot":`tooltip`,...e})}function cX({...e}){return(0,q.jsx)(ZY,{"data-slot":`tooltip-trigger`,...e})}function lX({className:e,side:t=`top`,sideOffset:n=4,align:r=`center`,alignOffset:i=0,children:a,...o}){return(0,q.jsx)(tX,{children:(0,q.jsx)(iX,{align:r,alignOffset:i,side:t,sideOffset:n,className:`isolate z-50`,children:(0,q.jsxs)(aX,{"data-slot":`tooltip-content`,className:G(`z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...o,children:[a,(0,q.jsx)(oX,{className:`z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5`})]})})})}var uX=`sidebar_state`,dX=604800,fX=`16rem`,pX=`18rem`,mX=`3rem`,hX=`b`,gX=_.createContext(null);function _X(){let e=_.useContext(gX);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function vX({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o}){let s=AY(),[c,l]=_.useState(!1),[u,d]=_.useState(e),f=t??u,p=_.useCallback(e=>{let t=typeof e==`function`?e(f):e;n?n(t):d(t),document.cookie=`${uX}=${t}; path=/; max-age=${dX}`},[n,f]),m=_.useCallback(()=>s?l(e=>!e):p(e=>!e),[s,p,l]);_.useEffect(()=>{let e=e=>{e.key===hX&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),m())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[m]);let h=f?`expanded`:`collapsed`,g=_.useMemo(()=>({state:h,open:f,setOpen:p,isMobile:s,openMobile:c,setOpenMobile:l,toggleSidebar:m}),[h,f,p,s,c,l,m]);return(0,q.jsx)(gX.Provider,{value:g,children:(0,q.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":fX,"--sidebar-width-icon":mX,...i},className:G(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...o,children:a})})}function yX({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,dir:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=_X();return n===`none`?(0,q.jsx)(`div`,{"data-slot":`sidebar`,className:G(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:i}):s?(0,q.jsx)(jY,{open:l,onOpenChange:u,...o,children:(0,q.jsxs)(PY,{dir:a,"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:G(`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,r),style:{"--sidebar-width":pX},side:e,children:[(0,q.jsxs)(FY,{className:`sr-only`,children:[(0,q.jsx)(IY,{children:`Sidebar`}),(0,q.jsx)(LY,{children:`Displays the mobile sidebar.`})]}),(0,q.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})]})}):(0,q.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,q.jsx)(`div`,{"data-slot":`sidebar-gap`,className:G(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,q.jsx)(`div`,{"data-slot":`sidebar-container`,"data-side":e,className:G(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,q.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border`,children:i})})]})}function bX({className:e,onClick:t,...n}){let{toggleSidebar:r}=_X();return(0,q.jsxs)(J,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon-sm`,className:G(e),onClick:e=>{t?.(e),r()},...n,children:[(0,q.jsx)(ae,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function xX({className:e,...t}){return(0,q.jsx)(`main`,{"data-slot":`sidebar-inset`,className:G(`relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function SX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:G(`flex flex-col gap-2 p-2`,e),...t})}function CX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:G(`flex flex-col gap-2 p-2`,e),...t})}function wX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:G(`thin-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function TX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:G(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function EX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:G(`w-full text-sm`,e),...t})}function DX({className:e,...t}){return(0,q.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:G(`flex w-full min-w-0 flex-col gap-0`,e),...t})}function OX({className:e,...t}){return(0,q.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:G(`group/menu-item relative`,e),...t})}var kX=Ku(`peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_8%)] data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function AX({render:e,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o}){let{isMobile:s,state:c}=_X(),l=nd({defaultTagName:`button`,props:Cn({className:G(kX({variant:n,size:r}),a)},o),render:i?(0,q.jsx)(cX,{render:e}):e,state:{slot:`sidebar-menu-button`,sidebar:`menu-button`,size:r,active:t}});return i?(typeof i==`string`&&(i={children:i}),(0,q.jsxs)(sX,{children:[l,(0,q.jsx)(lX,{side:`right`,align:`center`,hidden:c!==`collapsed`||s,...i})]})):l}function jX({className:e,render:t,showOnHover:n=!1,...r}){return nd({defaultTagName:`button`,props:Cn({className:G(`absolute top-1/2 right-1 flex size-7 -translate-y-1/2 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground after:absolute after:-inset-2 hover:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] hover:text-sidebar-accent-foreground aria-expanded:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] aria-expanded:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0`,e)},r),render:t,state:{slot:`sidebar-menu-action`,sidebar:`menu-action`}})}function MX(e){if(!e)return`暂无更新`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function NX(e,t){let n=new Set(e.map(e=>e.containerName)),r=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),i=RegExp(`^${r}-copy(\\d+)$`),a=0;return n.forEach(e=>{let t=e.match(i);if(t){let e=Number(t[1]);Number.isFinite(e)&&e>a&&(a=e)}}),`${t}-copy${a+1}`}function PX({containers:e,loading:t,error:n,activeSessionName:r,onSelectSession:i,onRefresh:a,confirmLeaveIfDirty:o,creatingAgentContainer:s,onCreatingAgentContainerChange:c,...l}){let{isMobile:u,setOpenMobile:d}=_X(),[f,p]=_.useState(`containers`),[m,h]=_.useState(``),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(``),[A,j]=_.useState(null),[M,N]=_.useState(null),[P,F]=_.useState(null);function I(e,t){return new Promise(n=>{F({title:e,message:t,resolve:n})})}function L(e){F(t=>(t?.resolve(e),null))}let z=e.reduce((e,t)=>e+t.sessions.filter(e=>e.synthetic!==!0).length,0),ee=e.find(e=>e.containerName===m),B=_.useMemo(()=>(ee?.sessions??[]).filter(e=>e.synthetic!==!0),[ee]),te=_.useMemo(()=>r?e.find(e=>e.sessions.some(e=>e.name===r))?.containerName??``:``,[e,r]);function V(){p(`containers`),h(``)}function ne(e){p(`agents`),h(e)}async function re(e){e&&e.name!==r&&!await o()||(i(e),e&&u&&d(!1))}_.useEffect(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),v(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);async function ie(e){O(``);try{let t=await a();ne(e);let n=t.find(t=>t.name===e)||t.find(t=>t.containerName===e);n&&re(n)}catch(e){O(e instanceof Error?e.message:`刷新会话列表失败`)}}function ae(e){let t=e=>String(e).padStart(2,`0`);return`${e.getFullYear()}${t(e.getMonth()+1)}${t(e.getDate())}-${t(e.getHours())}${t(e.getMinutes())}${t(e.getSeconds())}`}async function oe(e,t){S(!0),O(``);try{let n=ae(new Date),r=`${e.replace(/\/+$/,``)}/${n}`,i=await Yt(`/api/fs/directories/mkdir`,{path:r}),a=typeof i.path==`string`&&i.path?i.path:r,o=await Yt(`/api/sessions`,{run:t,createOptions:{hostPath:a,containerPath:a,containerName:`my-easy-${n}`}});await ie(String(o.name))}catch(e){O(e instanceof Error?e.message:`快捷对话创建失败`)}finally{S(!1)}}async function ce(){if(!x&&await o()){O(``);try{let e=await Jt(`/api/system/quick-chat-config`),t=typeof e.path==`string`?e.path:``,n=typeof e.run==`string`?e.run:``;t&&n?await oe(t,n):b(!0)}catch(e){O(e instanceof Error?e.message:`读取快捷对话配置失败`)}}}async function ue(e){if(!s&&await o()){O(``),c(e);try{let t=await Yt(`/api/sessions/${encodeURIComponent(e)}/agents`,{}),n=typeof t.name==`string`?t.name:``,r=await a();ne(e);let i=r.find(e=>e.name===n);i&&re(i)}catch(e){O(e instanceof Error?e.message:`新建 AGENT 失败`)}finally{c(null)}}}function fe(e,t){j({kind:`container`,key:e,initial:t})}function pe(e,t){N({mode:e,containerName:t})}async function me(e){if(!M)return;let t=M.mode===`duplicate`?`duplicate`:`clone-config`,n=await Yt(`/api/sessions/${encodeURIComponent(M.containerName)}/${t}`,e?{containerName:e}:{}),r=await a(),i=String(n.name);ne(i);let o=r.find(e=>e.name===i)||r.find(e=>e.containerName===i);o&&re(o)}async function U(e){let t=await I(`删除容器`,`确认删除容器 ${e}?可以选择是否同时删除该容器的全部历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await Yt(`/api/sessions/${encodeURIComponent(e)}/remove`,{removeHistory:n}),m===e&&V(),r&&r.startsWith(e)&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除容器失败`)}}function he(e){j({kind:`agent`,key:e.name,initial:e.agentRemark})}async function ge(e){if(!A)return;let t=A.kind===`container`?`container-remark`:`agent-remark`;await Yt(`/api/sessions/${encodeURIComponent(A.key)}/${t}`,{remark:e}),await a()}async function _e(e){let t=await I(`删除 AGENT`,`确认删除 AGENT ${e.agentRemark||e.agentName}?可以选择是否同时删除它的历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await Yt(`/api/sessions/${encodeURIComponent(e.name)}/remove-with-history`,{removeHistory:n}),r===e.name&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除 AGENT 失败`)}}let ve=!!(g||y||C||T||A||M||P);return(0,q.jsxs)(yX,{...l,className:G(u&&ve&&`pointer-events-none opacity-40 blur-[2px]`),children:[(0,q.jsxs)(SX,{className:`gap-3 px-3 pt-3`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-between gap-2`,children:(0,q.jsx)(`span`,{className:`text-sm font-semibold tracking-tight`,children:`MANYOYO Web`})}),(0,q.jsxs)(J,{className:`w-full`,size:`lg`,disabled:f===`agents`&&s===m,onClick:()=>f===`agents`?ue(m):E(!0),children:[f===`agents`&&s===m?(0,q.jsx)(ad,{"data-icon":`inline-start`}):(0,q.jsx)(se,{"data-icon":`inline-start`}),f===`agents`?s===m?`创建中...`:`新建AGENT`:`新建容器`]}),(0,q.jsxs)(J,{className:`w-full`,variant:`outline`,disabled:x,onClick:ce,children:[x?(0,q.jsx)(ad,{"data-icon":`inline-start`}):(0,q.jsx)(H,{"data-icon":`inline-start`}),x?`创建中...`:`快捷对话`]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,q.jsx)(`span`,{children:`工作台`}),(0,q.jsx)(`span`,{children:t?`加载中...`:f===`agents`?`${B.length} 个 AGENT`:`${e.length} 个容器 / ${z} 个 AGENT`})]}),(0,q.jsx)(BJ,{children:(0,q.jsxs)(VJ,{className:`flex-nowrap gap-1 text-xs`,children:[(0,q.jsx)(HJ,{className:`shrink-0`,children:(0,q.jsxs)(J,{variant:`outline`,size:`xs`,disabled:f===`containers`,onClick:f===`containers`?void 0:V,className:`text-foreground`,children:[f===`containers`?(0,q.jsx)(`span`,{"data-icon":`inline-start`,className:`flex size-4 items-center justify-center`,children:(0,q.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`})}):(0,q.jsx)(k,{"data-icon":`inline-start`}),`全部容器`]})}),f===`agents`&&ee?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(WJ,{className:`shrink-0`}),(0,q.jsx)(HJ,{className:`min-w-0 flex-1`,children:(0,q.jsx)(UJ,{className:`block truncate`,children:ee.containerRemark||ee.containerName})})]}):null]})}),(0,q.jsxs)(J,{variant:`outline`,className:`w-full justify-start bg-background text-muted-foreground shadow-none`,onClick:()=>v(!0),children:[(0,q.jsx)(le,{"data-icon":`inline-start`}),`搜索容器 / AGENT`,(0,q.jsx)(`kbd`,{className:`ml-auto font-mono text-xs text-muted-foreground`,children:`⌘K`})]}),n||D?(0,q.jsx)(`p`,{className:`text-xs text-destructive`,children:n||D}):null]}),(0,q.jsx)(wX,{children:(0,q.jsx)(TX,{className:`pt-0`,children:(0,q.jsx)(EX,{children:(0,q.jsxs)(DX,{className:`gap-1`,children:[f===`containers`?e.map(e=>(0,q.jsxs)(OX,{children:[(0,q.jsxs)(AX,{size:`lg`,isActive:e.containerName===te,onClick:()=>ne(e.containerName),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,q.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate font-medium`,children:e.containerRemark||e.containerName}),(0,q.jsx)(id,{variant:e.status.toLowerCase().includes(`up`)?`default`:`outline`,className:G(`ml-auto shrink-0`,e.status.toLowerCase().includes(`up`)&&`bg-emerald-600 text-white`),children:e.status===`history`?`仅历史`:e.status.toLowerCase().includes(`up`)?`运行中`:`已停止`})]}),(0,q.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:e.hostPath})]}),(0,q.jsxs)(wY,{children:[(0,q.jsx)(TY,{render:(0,q.jsx)(jX,{showOnHover:!0,children:(0,q.jsx)(R,{})})}),(0,q.jsx)(EY,{side:`right`,align:`start`,className:`w-56`,children:(0,q.jsxs)(DY,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(OY,{onClick:()=>fe(e.containerName,e.containerRemark),children:`编辑备注`}),(0,q.jsx)(OY,{disabled:s===e.containerName,onClick:()=>ue(e.containerName),children:s===e.containerName?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ad,{"data-icon":`inline-start`}),`创建中...`]}):`新建 AGENT`}),(0,q.jsx)(OY,{onClick:()=>pe(`clone-config`,e.containerName),children:`创建相同配置容器`}),(0,q.jsx)(OY,{onClick:()=>pe(`duplicate`,e.containerName),children:`复制容器`}),(0,q.jsx)(OY,{variant:`destructive`,onClick:()=>U(e.containerName),children:`删除容器`})]})})]})]},e.containerName)):B.map(e=>(0,q.jsxs)(OX,{children:[(0,q.jsxs)(AX,{size:`lg`,isActive:r===e.name,onClick:()=>re(e),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,q.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate font-medium`,children:e.agentRemark||e.agentName}),e.archived?(0,q.jsx)(id,{variant:`outline`,className:`ml-auto shrink-0`,children:`已停止`}):null]}),(0,q.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:MX(e.updatedAt||``)})]}),(0,q.jsxs)(wY,{children:[(0,q.jsx)(TY,{render:(0,q.jsx)(jX,{showOnHover:!0,children:(0,q.jsx)(R,{})})}),(0,q.jsx)(EY,{side:`right`,align:`start`,className:`w-56`,children:(0,q.jsxs)(DY,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(OY,{onClick:()=>he(e),children:`编辑备注`}),(0,q.jsx)(OY,{variant:`destructive`,onClick:()=>_e(e),children:`删除 AGENT`})]})})]})]},e.name)),f===`containers`&&!t&&e.length===0?(0,q.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`暂无 manyoyo 容器`}):null,f===`agents`&&B.length===0?(0,q.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`该容器下暂无 AGENT`}):null]})})})}),(0,q.jsx)(CX,{className:`px-3 pb-3`,children:(0,q.jsxs)(J,{variant:`outline`,size:`lg`,className:`w-full`,onClick:()=>w(!0),children:[(0,q.jsx)(de,{"data-icon":`inline-start`}),`系统设置`]})}),(0,q.jsx)(zJ,{open:C,onOpenChange:w}),(0,q.jsx)(Nv,{open:g,onOpenChange:v,containers:e,onSelectContainer:ne,onSelectAgent:(e,t)=>{ne(e),re(t)}}),(0,q.jsx)(qp,{open:y,onOpenChange:b,initialPath:``,initialRun:``,onSaved:(e,t)=>oe(e,t)}),(0,q.jsx)(Wp,{open:T,onOpenChange:E,onCreated:ie}),(0,q.jsx)(Gp,{open:A!==null,onOpenChange:e=>{e||j(null)},title:A?.kind===`container`?`设置容器备注`:`设置 AGENT 备注`,description:`留空可清除备注。`,label:`备注`,initialValue:A?.initial??``,onSubmit:ge}),(0,q.jsx)(Rd,{open:M!==null,onOpenChange:e=>{e||N(null)},mode:M?.mode??`clone-config`,sourceContainerName:M?.containerName??``,suggestedName:M?NX(e,M.containerName):``,onSubmit:me}),(0,q.jsx)(Ju,{open:P!==null,onOpenChange:e=>{e||L(null)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{children:P?.title}),(0,q.jsx)(td,{children:P?.message}),(0,q.jsxs)($u,{children:[(0,q.jsx)(J,{variant:`outline`,onClick:()=>L(null),children:`取消`}),(0,q.jsx)(J,{variant:`outline`,onClick:()=>L(`keep-history`),children:`否,保留历史`}),(0,q.jsx)(J,{variant:`destructive`,onClick:()=>L(`with-history`),children:`是,连同历史一起删除`})]})]})})]})}function FX({onPointerDown:e,dragging:t,className:n,style:r}){return(0,q.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,onPointerDown:e,style:r,className:G(`group relative w-2 shrink-0 cursor-col-resize touch-none select-none`,n),children:(0,q.jsx)(`div`,{className:G(`absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors group-hover:bg-primary/60`,t&&`bg-primary`)})})}var IX=1500;function LX(e){return e.some(e=>e.pending===!0)}function RX(e,t,n,r){let i=_.useRef(t);_.useEffect(()=>{i.current=t},[t]);let a=_.useRef(n);_.useEffect(()=>{a.current=n},[n]);let o=LX(t);_.useEffect(()=>{if(!e||!o||r)return;let t=!1,n=0;function s(){t||!LX(i.current)||(n=window.setTimeout(async()=>{if(!t){try{await a.current()}catch{}t||s()}},IX))}return s(),()=>{t=!0,window.clearTimeout(n)}},[e?.name,o,r])}var zX=`custom`,BX=`__inherit__`;function VX(e){return String(e.containerAgentPromptCommand||``).trim()||String(e.agentPromptCommand||``).trim()}function HX({open:e,onOpenChange:t,session:n,onSaved:r}){let i=n?.agentId==="default",[a,o]=_.useState(zX),[s,c]=_.useState(``),[l,u]=_.useState(!1),[d,f]=_.useState(!1),[p,m]=_.useState(``),h=_.useRef({});_.useEffect(()=>{!e||!n||(u(!0),m(``),Jt(`/api/sessions/${encodeURIComponent(n.name)}/detail`).then(e=>{let t=e.detail||{};h.current=t;let n=String(i?t.containerAgentPromptCommand||``:t.agentPromptCommandOverride||``);if(c(n),!i&&!n){o(BX);return}let r=Object.entries(Ip).find(([,e])=>e===n)?.[0];o(r||zX)}).catch(e=>m(e instanceof Error?e.message:`加载模板失败`)).finally(()=>u(!1)))},[e,n,i]);function g(e){let t=e??zX;if(o(t),t===BX){c(VX(h.current));return}t!==zX&&c(Ip[t])}async function v(){if(n){f(!0),m(``);try{let e=i?{containerAgentPromptCommand:s}:{agentPromptCommandOverride:a===BX?``:s};await Xt(`/api/sessions/${encodeURIComponent(n.name)}/agent-template`,e),t(!1),r()}catch(e){m(e instanceof Error?e.message:`保存失败`)}finally{f(!1)}}}return(0,q.jsx)(Ju,{open:e,onOpenChange:t,children:(0,q.jsxs)(Zu,{className:`sm:max-w-md`,children:[(0,q.jsxs)(Qu,{children:[(0,q.jsx)(ed,{children:`设置 CLI / Agent 模板`}),(0,q.jsx)(td,{children:i?`对该容器下所有未单独覆盖的 AGENT 生效。`:`仅对当前 AGENT 生效,覆盖容器级模板;留空则继承容器默认模板。`})]}),l?(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`加载中...`}):(0,q.jsxs)(md,{children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`agent-template-cli`,children:`CLI`}),(0,q.jsxs)(Dp,{value:a,onValueChange:g,children:[(0,q.jsx)(Ap,{id:`agent-template-cli`,className:`w-full`,children:(0,q.jsx)(kp,{children:e=>e===BX?`继承容器默认`:e===zX?`自定义`:e})}),(0,q.jsx)(jp,{children:(0,q.jsxs)(Op,{children:[i?null:(0,q.jsx)(Mp,{value:BX,children:`继承容器默认`}),(0,q.jsx)(Mp,{value:zX,children:`自定义`}),(0,q.jsx)(Mp,{value:`claude`,children:`claude`}),(0,q.jsx)(Mp,{value:`codex`,children:`codex`}),(0,q.jsx)(Mp,{value:`gemini`,children:`gemini`}),(0,q.jsx)(Mp,{value:`opencode`,children:`opencode`})]})})]})]}),(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`agent-template-command`,children:i?`容器级 agentPromptCommand`:`当前 AGENT 覆盖`}),(0,q.jsx)(Fp,{id:`agent-template-command`,className:`min-h-20 font-mono text-xs`,placeholder:i?`例如 codex exec --skip-git-repo-check {prompt}`:`留空则继承容器默认模板`,value:s,onChange:e=>c(e.target.value)}),(0,q.jsxs)(vd,{children:[`模板需包含 `,`{prompt}`,` 占位符。`]})]}),p?(0,q.jsx)(sd,{variant:`destructive`,children:(0,q.jsx)(cd,{children:p})}):null]}),(0,q.jsx)($u,{children:(0,q.jsx)(J,{onClick:v,disabled:l||d,children:d?`保存中...`:`保存`})})]})})}function UX({className:e,size:t=`default`,...n}){return(0,q.jsx)(`div`,{"data-slot":`card`,"data-size":t,className:G(`group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl`,e),...n})}function WX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-header`,className:G(`group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)`,e),...t})}function GX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-title`,className:G(`font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm`,e),...t})}function KX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-content`,className:G(`px-(--card-spacing)`,e),...t})}var qX=RegExp(`[`+[[8203,8207],[8234,8238],[8288,8297],[65279,65279],[1564,1564]].map(([e,t])=>String.fromCodePoint(e)+`-`+String.fromCodePoint(t)).join(``)+`]`,`g`);function JX(e){return String(e??``).replace(qX,e=>`\\u`+e.codePointAt(0).toString(16).toUpperCase().padStart(4,`0`))}function YX(){let[e,t]=_.useState(null),n=_.useCallback(e=>new Promise(n=>{t({...e,resolve:n})}),[]);function r(e){t(t=>(t?.resolve(e),null))}return{confirm:n,dialog:(0,q.jsx)(Ju,{open:e!==null,onOpenChange:e=>{e||r(!1)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{children:e?.title}),(0,q.jsx)(td,{className:`whitespace-pre-wrap break-all`,children:e?.message}),(0,q.jsxs)($u,{children:[(0,q.jsx)(J,{variant:`outline`,onClick:()=>r(!1),children:e?.cancelLabel||`取消`}),(0,q.jsx)(J,{onClick:()=>r(!0),children:e?.confirmLabel||`继续`})]})]})})}}function XX(e,t,n){return Math.min(n,Math.max(t,e))}function ZX({storageKey:e,defaultWidth:t,min:n,max:r}){let[i,a]=_.useState(()=>{if(typeof window>`u`)return t;let i=Number(window.localStorage.getItem(e));return Number.isFinite(i)&&i>0?XX(i,n,r):t}),[o,s]=_.useState(!1);return _.useEffect(()=>{window.localStorage.setItem(e,String(i))},[e,i]),{width:i,dragging:o,onHandlePointerDown:_.useCallback(e=>{e.preventDefault();let t=e.clientX,o=i;s(!0);function c(e){a(XX(o+(e.clientX-t),n,r))}function l(){s(!1),window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,l)}window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,l)},[i,n,r])}}function QX(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function $X(e){if(Array.isArray(e))return e}function eZ(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function tZ(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
122
+ `).map(e=>e.trim()).filter(Boolean);if(e===`number`){let e=Number(t);return Number.isFinite(e)?e:0}return t}function FJ({path:e,value:t,onCommit:n}){let r=e[e.length-1],i=`config-field-${e.join(`.`)}`,a=jJ(r,t),[o,s]=_.useState(()=>MJ(a,t));function c(t){n(e,NJ(a,t),PJ(a,t))}return a===`boolean`?(0,q.jsxs)(gd,{orientation:`horizontal`,className:`justify-between`,children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)($q,{id:i,checked:o===`true`,onCheckedChange:e=>{let t=e?`true`:`false`;s(t),c(t)}})]}):a===`array`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Fp,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),placeholder:`每行一项`,spellCheck:!1,wrap:`off`,className:`min-h-16 overflow-x-auto font-mono text-xs whitespace-pre`})]}):a===`secret`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,type:`password`,value:o,onChange:e=>s(e.target.value),onBlur:()=>{o&&c(o)},placeholder:`敏感值已隐藏,留空则保留原值`,autoComplete:`off`})]}):a===`number`?(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),inputMode:`decimal`})]}):(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:i,children:r}),(0,q.jsx)(Ld,{id:i,value:o,onChange:e=>{s(e.target.value),c(e.target.value)}})]})}function IJ({path:e,value:t,onCommit:n,depth:r=0}){if(kJ(t)){let i=Object.entries(t);return(0,q.jsxs)(fd,{className:`gap-3 rounded-lg border bg-muted/30 p-3`,children:[(0,q.jsx)(pd,{variant:`legend`,className:`text-sm font-semibold text-foreground`,children:e[e.length-1]}),i.length===0?(0,q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`空`}):i.map(([t,i])=>(0,q.jsx)(IJ,{path:[...e,t],value:i,onCommit:n,depth:r+1},t))]})}return(0,q.jsx)(`div`,{className:G(r>0&&`pl-1`),children:(0,q.jsx)(FJ,{path:e,value:t,onCommit:n})})}function LJ({category:e,liveParsed:t,onCommit:n}){let r=e.keys.filter(e=>e in t);return r.length===0?(0,q.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前配置中该分类暂无内容,如需新增字段请切换到 JSON 视图编辑。`}):(0,q.jsx)(md,{children:r.map(e=>(0,q.jsx)(IJ,{path:[e],value:t[e],onCommit:n},e))})}function RJ({liveParsed:e,onCommit:t}){let n=kJ(e.runs)?e.runs:{},r=Object.keys(n),[i,a]=_.useState(r[0]||``),o=r.includes(i)?i:r[0]||``;return r.length===0?(0,q.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前未配置任何 run,可在 JSON 视图中添加。`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{children:`选择 run`}),(0,q.jsxs)(Dp,{value:o,onValueChange:e=>a(e??``),children:[(0,q.jsx)(Ap,{className:`w-full`,children:(0,q.jsx)(kp,{placeholder:`选择 run`})}),(0,q.jsx)(jp,{children:(0,q.jsx)(Op,{children:r.map(e=>(0,q.jsx)(Mp,{value:e,children:e},e))})})]})]}),o?(0,q.jsx)(md,{children:(0,q.jsx)(IJ,{path:[`runs`,o],value:n[o],onCommit:t},o)}):null]})}function zJ({open:e,onOpenChange:t}){let[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState({}),[c,l]=_.useState(0),[u,d]=_.useState(`form`),[f,p]=_.useState(OJ[0].id),[m,h]=_.useState(!1),[g,v]=_.useState(!1),[y,b]=_.useState(``),[x,S]=_.useState(``),{theme:C,setTheme:w}=qq(),T=_.useCallback(()=>{h(!0),b(``),S(``),Jt(`/api/config`).then(e=>{let t=String(e.raw||``);r(String(e.path||``)),a(t),s(t?Pv.default.parse(t):{}),l(e=>e+1),d(`form`)}).catch(e=>b(e instanceof Error?e.message:`加载配置失败`)).finally(()=>h(!1))},[]);_.useEffect(()=>{e&&T()},[e,T]);function E(e,t,n){a(n=>{let r=TJ(n,e);return r?EJ(n,[{start:r.start,end:r.end,text:t}]):n}),s(t=>AJ(t,e,n))}function D(){try{let e=Pv.default.parse(i);if(!kJ(e))throw Error(`配置根节点必须是对象`);s(e),l(e=>e+1),b(``),d(`form`)}catch(e){b(e instanceof Error?`JSON 内容有误,无法切回分类设置:${e.message}`:`JSON 内容有误,无法切回分类设置`)}}async function O(){v(!0),b(``),S(``);try{await Xt(`/api/config`,{raw:i}),S(`已保存`)}catch(e){b(e instanceof Error?e.message:`保存失败`)}finally{v(!1)}}return(0,q.jsx)(Ju,{open:e,onOpenChange:t,children:(0,q.jsxs)(Zu,{className:`flex h-[80vh] max-h-[80vh] flex-col sm:max-w-4xl`,children:[(0,q.jsxs)(Qu,{className:`shrink-0`,children:[(0,q.jsx)(ed,{children:`系统设置`}),(0,q.jsx)(td,{children:n||`~/.manyoyo/manyoyo.json`})]}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:m?(0,q.jsx)(`div`,{className:`flex h-40 items-center justify-center text-sm text-muted-foreground`,children:`加载中...`}):u===`json`?(0,q.jsx)(`div`,{className:`h-full min-h-72`,children:(0,q.jsx)(bq,{value:i,language:`json`,readOnly:!1,onChange:a})}):(0,q.jsxs)(fJ,{value:f,onValueChange:e=>p(String(e)),orientation:`vertical`,className:`h-full min-h-72`,children:[(0,q.jsx)(mJ,{variant:`line`,className:`w-36 shrink-0`,children:OJ.map(e=>(0,q.jsx)(hJ,{value:e.id,children:e.label},e.id))}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pl-4`,children:OJ.map(e=>(0,q.jsx)(gJ,{value:e.id,className:`mt-0`,children:e.id===`page`?(0,q.jsx)(md,{children:(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{children:`主题`}),(0,q.jsxs)(Lq,{variant:`outline`,size:`sm`,value:[C],onValueChange:e=>{let t=e[0];t&&w(t)},children:[(0,q.jsx)(Rq,{value:`light`,children:`浅色`}),(0,q.jsx)(Rq,{value:`dark`,children:`深色`}),(0,q.jsx)(Rq,{value:`system`,children:`跟随系统`})]})]})}):e.id===`runs`?(0,q.jsx)(RJ,{liveParsed:o,onCommit:E}):e.id===`capacity`?(0,q.jsx)(Lv,{}):e.id===`quick-chat`?(0,q.jsx)(xq,{}):(0,q.jsx)(LJ,{category:e,liveParsed:o,onCommit:E})},e.id))})]},c)}),y?(0,q.jsx)(sd,{variant:`destructive`,className:`shrink-0`,children:(0,q.jsx)(cd,{children:y})}):null,x?(0,q.jsx)(sd,{className:`shrink-0`,children:(0,q.jsx)(cd,{children:x})}):null,(0,q.jsxs)($u,{className:`shrink-0 sm:flex-row sm:justify-between`,children:[(0,q.jsx)(J,{type:`button`,variant:`outline`,size:`sm`,className:`w-full sm:w-auto`,onClick:u===`form`?()=>d(`json`):D,disabled:m,children:u===`form`?`显示 JSON 设置`:`返回分类设置`}),(0,q.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,q.jsx)(J,{type:`button`,variant:`outline`,className:`w-full sm:w-auto`,onClick:T,disabled:m||g,children:`重新加载`}),(0,q.jsx)(J,{type:`button`,className:`w-full sm:w-auto`,onClick:O,disabled:m||g,children:g?`保存中...`:`保存`})]})]})]})})}function BJ({className:e,...t}){return(0,q.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:G(e),...t})}function VJ({className:e,...t}){return(0,q.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:G(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function HJ({className:e,...t}){return(0,q.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:G(`inline-flex items-center gap-1`,e),...t})}function UJ({className:e,...t}){return(0,q.jsx)(`span`,{"data-slot":`breadcrumb-page`,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:G(`font-normal text-foreground`,e),...t})}function WJ({children:e,className:t,...n}){return(0,q.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:G(`[&>svg]:size-3.5`,t),...n,children:e??(0,q.jsx)(F,{})})}var GJ=_.createContext(void 0);function KJ(e){let t=_.useContext(GJ);if(t===void 0&&!e)throw Error(en(33));return t}var qJ=_.createContext(void 0);function JJ(e){let t=_.useContext(qJ);if(t===void 0&&!e)throw Error(en(36));return t}var YJ=_.createContext(void 0);function XJ(e=!0){let t=_.useContext(YJ);if(t===void 0&&!e)throw Error(en(25));return t}function ZJ(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:a,typingRef:o,itemRef:s,itemMetadata:c}=e,{events:l}=a.useState(`floatingTreeRoot`),u=a.useState(`open`),d=XJ(!0),f=d!==void 0;return _.useMemo(()=>({id:r,role:`menuitem`,tabIndex:u&&n?0:-1,onKeyDown(e){e.key===` `&&o?.current&&e.preventDefault()},onMouseMove(e){i&&l.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&l.emit(`close`,{domEvent:e,reason:qr})},onMouseUp(e){if(d){let t=d.initialCursorPointRef.current;if(d.initialCursorPointRef.current=null,f&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||f&&!Ei&&e.button===2)return}s.current&&a.context.allowMouseUpTriggerRef.current&&(!f||e.button===2)&&c.type===`regular-item`&&Rr(s.current,e,{detail:1})}}),[t,n,r,l,i,u,a,o,s,d,f,c])}var QJ={type:`regular-item`};function $J(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:c,nodeId:l}=e,u=_.useRef(null),{getButtonProps:d,buttonRef:f}=zr({disabled:n,focusableWhenDisabled:!0,native:s,composite:!0}),p=ZJ({closeOnClick:t,highlighted:r,id:i,nodeId:l,store:a,typingRef:o,itemRef:u,itemMetadata:c}),m=_.useCallback(e=>Cn(p,{onMouseEnter(){c.type===`submenu-trigger`&&c.setActive()}},e,d),[p,d,c]),h=on(u,f);return _.useMemo(()=>({getItemProps:m,itemRef:h}),[m,h])}var eY=_.createContext(void 0),tY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(void 0),c=Ln(`div`,e,{ref:t,props:{role:`group`,"aria-labelledby":o,...a}});return(0,q.jsx)(eY.Provider,{value:s,children:c})}),nY=_.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=mp({guess:!0,label:a}),f=KJ(!0),p=di(i),{store:m}=JJ(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=$J({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:QJ});return Ln(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),rY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=JJ(),{side:c,align:l}=KJ(),u=ep(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),g=s.useState(`activeTriggerElement`),v=s.useState(`parent`),y=s.useState(`lastOpenChangeReason`),b=s.useState(`rootId`),x=s.useState(`floatingRootContext`),S=s.useState(`floatingTreeRoot`),C=s.useState(`closeDelay`),w=s.useState(`hoverEnabled`),T=s.useState(`disabled`),E=s.useState(`openMethod`),D=v.type===`context-menu`;tl({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),_.useEffect(()=>{function e(e){s.setOpen(!1,ai(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,s]),Il(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=s.useStateSetter(`popupElement`),k=Ln(`div`,e,{state:{transitionStatus:f,side:c,align:l,open:d,nested:v.type===`menu`,instant:h},ref:[t,s.context.popupRef,O],stateAttributesMapping:tr,props:[p,{onKeyDown(e){u&&cu.has(e.key)&&e.stopPropagation()}},Gf(f),o,{"data-rootownerid":b}]}),A=v.type===void 0||D;return(g||v.type===`menubar`&&y!==`outside-press`)&&(A=!0),(0,q.jsx)(ys,{context:x,openInteractionType:E,modal:D,disabled:!m,returnFocus:a===void 0?A:a,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:g,nextFocusableElement:v.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:k})}),iY=_.createContext(void 0);function aY(){let e=_.useContext(iY);if(e===void 0)throw Error(en(32));return e}var oY=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=JJ();return i.useState(`mounted`)||n?(0,q.jsx)(iY.Provider,{value:n,children:(0,q.jsx)(es,{ref:t,...r})}):null}),sY=_.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=Ko,style:g,...v}=e,{store:y}=JJ(),b=aY(),x=XJ(!0),S=y.useState(`parent`),C=y.useState(`floatingRootContext`),w=y.useState(`floatingTreeRoot`),T=y.useState(`mounted`),E=y.useState(`open`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`activeTriggerElement`),A=y.useState(`transitionStatus`),j=y.useState(`positionerElement`),M=y.useState(`instantType`),N=y.useState(`adaptiveOrigin`),P=y.useState(`lastOpenChangeReason`),F=y.useState(`floatingNodeId`),I=y.useState(`floatingParentNodeId`),L=C.useState(`domReferenceElement`),R=_.useRef(null),z=el(j),ee=n,B=c,te=l,V=s,ne=h;S.type===`context-menu`&&(ee=n??S.context?.anchor,V??=`start`,!o&&V!==`center`&&(te=e.alignOffset??2,B=e.sideOffset??-5));let H=o,re=V;S.type===`menu`?(H??=`inline-end`,re??=`start`,ne=e.collisionAvoidance??qo):S.type===`menubar`&&(H??=S.context.orientation===`vertical`?`inline-end`:`bottom`,re??=`start`);let ie=S.type===`context-menu`,ae=Rf({anchor:ee,floatingRootContext:C,positionMethod:x?`fixed`:r,mounted:T,side:H,sideOffset:B,align:re,alignOffset:te,arrowPadding:ie?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:F,keepMounted:b,disableAnchorTracking:m,collisionAvoidance:ne,shift:ie?{crossAxis:!(`side`in ne&&ne.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:w,adaptiveOrigin:N});_.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===F&&y.set(`hoverEnabled`,!1),e.nodeId!==F&&e.parentNodeId===y.select(`floatingParentNodeId`)&&y.setOpen(!1,ai($r)))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[y,w.events,F]),_.useEffect(()=>{if(y.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==y.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;y.setOpen(!1,ai(t))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[w.events,y]);let oe=gi();_.useEffect(()=>{E||oe.clear()},[E,oe]),_.useEffect(()=>{function e(e){if(!(!E||e.nodeId!==y.select(`floatingParentNodeId`))){if(e.target&&k&&k!==e.target){let e=y.select(`closeDelay`);e>0?oe.isStarted()||oe.start(e,()=>{y.setOpen(!1,ai($r))}):y.setOpen(!1,ai($r))}else oe.clear()}}return w.events.on(`itemhover`,e),()=>{w.events.off(`itemhover`,e)}},[w.events,E,k,y,oe]),_.useEffect(()=>{let e={open:E,nodeId:F,parentNodeId:I,reason:y.select(`lastOpenChangeReason`)};w.events.emit(`menuopenchange`,e)},[w.events,E,y,F,I]),K(()=>{let e=L,t=R.current;if(e&&(R.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return z(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[L,z,y]);let se={open:E,side:ae.side,align:ae.align,anchorHidden:ae.anchorHidden,nested:S.type===`menu`,instant:M},ce=S.type===`menubar`&&S.context.modal;Jf(E&&(ce||D&&P!==`trigger-hover`),O===`touch`,j,k);let le=Kf(e,se,{styles:ae.positionerStyles,transitionStatus:A,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!T,inert:!E}),ue=T&&S.type!==`menu`&&(S.type!==`menubar`&&D&&P!==`trigger-hover`||S.type===`menubar`&&S.context.modal),de=null;return S.type===`menubar`?de=S.context.contentElement:S.type===void 0&&(de=k),(0,q.jsxs)(GJ.Provider,{value:ae,children:[ue&&(0,q.jsx)(vu,{ref:S.type===`context-menu`||S.type===`nested-context-menu`?S.context.internalBackdropRef:null,inert:_u(!E),cutout:de}),(0,q.jsx)(cs,{id:F,children:(0,q.jsx)(xf,{elementsRef:y.context.itemDomElements,labelsRef:y.context.itemLabels,children:le})})]})}),cY=_.createContext(null);function lY(e){let t=_.useContext(cY);if(t===null&&!e)throw Error(en(5));return t}var uY={...wl,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},dY=class extends Yc{constructor(e){super({...pY(),...e},fY(),uY),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function fY(){return{positionerRef:_.createRef(),popupRef:_.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),onOpenChangeComplete:void 0,triggerElements:new hl}}function pY(){return{..._l(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new ns,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:vn,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0}}var mY=_.createContext(void 0);function hY(){return _.useContext(mY)}var gY=Rc(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:o=!1,modal:s,loopFocus:c=!0,orientation:l=`vertical`,actionsRef:u,closeParentOnEsc:d=!1,handle:f,triggerId:p,defaultTriggerId:m=null,highlightItemOnHover:h=!0}=e,g=XJ(!0),v=JJ(!0),y=lY(!0),b=hY(),x=_.useMemo(()=>b&&v?{type:`menu`,store:v.store}:y?{type:`menubar`,context:y}:g&&!v?{type:`context-menu`,context:g}:{type:void 0},[g,v,y,b]),S=_Y({open:a,openProp:n,activeTriggerId:m,triggerIdProp:p,parent:x});S.useControlledProp(`openProp`,n),S.useControlledProp(`triggerIdProp`,p),S.useContextCallback(`onOpenChangeComplete`,i);let C=ui(),w=ui(),T=S.useState(`floatingTreeRoot`),E=ss(T),D=as(),O=S.useState(`open`),k=S.useState(`activeTriggerElement`),A=S.useState(`positionerElement`),j=S.useState(`hoverEnabled`),M=S.useState(`disabled`),N=S.useState(`lastOpenChangeReason`),P=S.useState(`parent`),F=S.useState(`activeIndex`),I=S.useState(`payload`),L=S.useState(`floatingParentNodeId`),R=_.useRef(null),z=_.useRef(P.type!==`context-menu`),ee=gi(),B=_.useRef(!0),te=gi(),V=L!=null,{openMethod:ne,triggerProps:H}=Hu(O);S.useSyncedValues({disabled:o,highlightItemOnHover:h,modal:P.type===void 0?s:void 0,openMethod:ne,rootId:C}),dl(S);let{forceUnmount:re}=fl(O,S,()=>{S.set(`allowMouseEnter`,!1)});K(()=>{g&&!v?S.update({parent:{type:`context-menu`,context:g},floatingNodeId:E,floatingParentNodeId:D}):v&&S.update({floatingNodeId:E,floatingParentNodeId:D})},[g,v,E,D,S]),_.useEffect(()=>{if(O||(R.current=null),P.type===`context-menu`){if(!O){ee.clear(),z.current=!1;return}ee.start(500,()=>{z.current=!0})}},[ee,O,P.type]),K(()=>{!O&&!j&&S.set(`hoverEnabled`,!0)},[O,j,S]);let ie=jr((e,t)=>{let n=t.reason;if(!e&&!S.select(`open`)||O===e&&t.trigger===k&&N===n)return;let i=cl(t);if(!e&&t.trigger==null&&(t.trigger=k??void 0),r?.(e,t),t.isCanceled)return;S.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!B.current)return;e&&n===`trigger-focus`?(B.current=!1,te.start(300,()=>{B.current=!0})):(B.current=!0,te.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};R.current=t.event,sl(c,e,t.trigger,i()),S.update(c),P.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?S.set(`instantType`,`group`):o||s?S.set(`instantType`,o?`click`:`dismiss`):S.set(`instantType`,void 0)}),ae=Qc({popupStore:S,floatingId:w,nested:D!=null,onOpenChange:ie}),oe=ae.context.events;K(()=>{let e=({open:e,eventDetails:t})=>ie(e,t);return oe.on(`setOpen`,e),()=>{oe?.off(`setOpen`,e)}},[oe,ie]);let se=_.useCallback(()=>{S.setOpen(!1,ai(ri))},[S]);_.useImperativeHandle(u,()=>({unmount:re,close:se}),[re,se]);let ce;P.type===`context-menu`&&(ce=P.context),_.useImperativeHandle(ce?.positionerRef,()=>A,[A]),_.useImperativeHandle(ce?.actionsRef,()=>({setOpen:ie}),[ie]);let le=Es(ae,{enabled:!M,bubbles:{escapeKey:d&&P.type===`menu`},outsidePress(){return P.type!==`context-menu`||R.current?.type===`contextmenu`||z.current},externalTree:V?T:void 0}),ue=kf(),de=_.useCallback(e=>{S.select(`activeIndex`)!==e&&S.set(`activeIndex`,e)},[S]),fe=Kl(ae,{enabled:!M,listRef:S.context.itemDomElements,activeIndex:F,nested:P.type!==void 0,loopFocus:c,orientation:l,parentOrientation:P.type===`menubar`?P.context.orientation:void 0,rtl:ue===`rtl`,disabledIndices:_n,onNavigate:de,openOnArrowKeyDown:P.type!==`context-menu`,externalTree:V?T:void 0,focusItemOnHover:h}),pe=_.useCallback(e=>{S.context.typingRef.current=e},[S]),me=ql(ae,{enabled:!M,listRef:S.context.itemLabels,elementsRef:S.context.itemDomElements,activeIndex:F,resetMs:500,onMatch:e=>{O&&e!==F&&S.set(`activeIndex`,e)},onTyping:pe});pl(S,{floatingRootContext:ae,activeTriggerProps:_.useMemo(()=>{let e=Cn(me.reference,fe.reference,le.reference,{onMouseMove(){S.set(`allowMouseEnter`,!0)}},H);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=O,e},[S,me.reference,fe.reference,le.reference,H,O]),inactiveTriggerProps:_.useMemo(()=>{let e=Cn(fe.trigger,le.trigger,H);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[fe.trigger,le.trigger,H]),popupProps:_.useMemo(()=>Cn(nl,{id:w,role:`menu`,"aria-labelledby":k?.id,onMouseMove(){S.set(`allowMouseEnter`,!0),P.type===`menu`&&S.set(`hoverEnabled`,!1)},onClick(){S.select(`hoverEnabled`)&&S.set(`hoverEnabled`,!1)},onKeyDown(e){let t=S.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},me.floating,fe.floating,le.floating),[k,w,P.type,S,me.floating,fe.floating,le.floating]),itemProps:fe.item??vn});let U=_.useMemo(()=>({store:S,parent:x}),[S,x]),he=(0,q.jsxs)(qJ.Provider,{value:U,children:[f&&(0,q.jsx)(al,{handle:f,store:S}),typeof t==`function`?t({payload:I}):t]});return P.type===void 0||P.type===`context-menu`?(0,q.jsx)(ls,{externalTree:T,children:he}):he});function _Y(e){return an(()=>new dY(e)).current}function vY(e){if(lr(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!xr(e))return vY(wr(e))}function yY(e,t){let n=_.useRef(null);function r(t){Yo.flushSync(()=>{e.setOpen(!1,ai(Yr,t.nativeEvent,t.currentTarget))}),Co(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&wo(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{Yo.flushSync(()=>{e.setOpen(!1,ai(Yr,n.nativeEvent,n.currentTarget))});let i=So(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&Wi(r,i);){let e=i;if(i=yo(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function bY(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=_.useRef(!1);return _.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,Lr(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:vn,[t,n,r])}var xY=zc(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:s,openOnHover:c,delay:l=100,closeDelay:u=0,handle:d,payload:f,...p}=e,m=JJ(!0),h=Tl(d)??m?.store;if(!h)throw Error(en(85));let g=di(s),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),C=CY(),w=Fr(!0),T=os(),E=_.useMemo(()=>T??new ns,[T]),{registerTrigger:D,isMountedByThisTrigger:O}=ul(g,S,h,{payload:f,closeDelay:u,parent:C,floatingTreeRoot:E,floatingNodeId:ss(E),floatingParentNodeId:as(),keyboardEventRelay:w?.relayKeyboardEvent}),k=C.type===`menubar`,A=h.useState(`disabled`),j=a||A||k&&C.context.disabled,{getButtonProps:M,buttonRef:N}=zr({disabled:j,native:o});_.useEffect(()=>{!b&&C.type===void 0&&(h.context.allowMouseUpTriggerRef.current=!1)},[h,b,C.type]);let P=_.useRef(null),F=gi(),I=jr(e=>{if(!P.current)return;F.clear(),h.context.allowMouseUpTriggerRef.current=!1;let t=e.target;Wi(P.current,t)||Wi(h.select(`positionerElement`),t)||t===P.current||(t==null||vY(t)!==h.select(`rootId`))&&(uf(e,P.current)||E.events.emit(`close`,{domEvent:e,reason:Qr}))});_.useEffect(()=>{b&&h.select(`lastOpenChangeReason`)===`trigger-hover`&&Lr(P.current).addEventListener(`mouseup`,I,{once:!0})},[b,I,h]);let L=k&&C.context.hasSubmenuOpen,R=Rl(y,{enabled:(c??L)&&!j&&(!k||L&&!O),handleClose:tu({blockPointerEvents:!k}),mouseOnly:!0,move:!1,restMs:C.type===void 0?l:void 0,delay:{close:u},triggerElementRef:S,externalTree:E,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),z=SY(b,h.select(`lastOpenChangeReason`)),ee=bs(y,{enabled:!j,event:b&&k?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:C.type===void 0&&z}),B=Al(y,{enabled:!j&&L}),te=bY({open:b,enabled:k,mouseDownAction:`open`}),V=_.useMemo(()=>Cn(B.reference,ee.reference),[B.reference,ee.reference]),ne=h.useState(`triggerProps`,O),{preFocusGuardRef:H,handlePreFocusGuardFocus:re,handleFocusTargetFocus:ie}=yY(h,S),ae={disabled:j,open:b},oe=[P,t,N,D,S],se=[V,R??vn,ne,{"aria-haspopup":`menu`,"aria-controls":x,id:g,onMouseDown:e=>{h.select(`open`)||(F.start(200,()=>{h.context.allowMouseUpTriggerRef.current=!0}),Lr(e.currentTarget).addEventListener(`mouseup`,I,{once:!0}))}},k?{role:`menuitem`}:{},te,p,M],ce=Ln(`button`,e,{enabled:!k,stateAttributesMapping:$n,state:ae,ref:oe,props:se});return k?(0,q.jsx)(Tq,{tag:`button`,render:n,className:r,style:i,state:ae,refs:oe,props:se,stateAttributesMapping:$n}):b?(0,q.jsxs)(_.Fragment,{children:[(0,q.jsx)(ba,{ref:H,onFocus:re},`${g}-pre-focus-guard`),(0,q.jsx)(_.Fragment,{children:ce},g),(0,q.jsx)(ba,{ref:h.context.triggerFocusTargetRef,onFocus:ie},`${g}-post-focus-guard`)]}):(0,q.jsx)(_.Fragment,{children:ce},g)});function SY(e,t){let n=gi(),[r,i]=_.useState(!1);return K(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function CY(){let e=lY(!0);return _.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}function wY({...e}){return(0,q.jsx)(gY,{"data-slot":`dropdown-menu`,...e})}function TY({...e}){return(0,q.jsx)(xY,{"data-slot":`dropdown-menu-trigger`,...e})}function EY({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,q.jsx)(oY,{children:(0,q.jsx)(sY,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,q.jsx)(rY,{"data-slot":`dropdown-menu-content`,className:G(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,i),...a})})})}function DY({...e}){return(0,q.jsx)(tY,{"data-slot":`dropdown-menu-group`,...e})}function OY({className:e,inset:t,variant:n=`default`,...r}){return(0,q.jsx)(nY,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:G(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}var kY=768;function AY(){let[e,t]=_.useState(void 0);return _.useEffect(()=>{let e=window.matchMedia(`(max-width: 767px)`),n=()=>{t(window.innerWidth<kY)};return e.addEventListener(`change`,n),t(window.innerWidth<kY),()=>e.removeEventListener(`change`,n)},[]),!!e}function jY({...e}){return(0,q.jsx)(Lu,{"data-slot":`sheet`,...e})}function MY({...e}){return(0,q.jsx)(yu,{"data-slot":`sheet-portal`,...e})}function NY({className:e,...t}){return(0,q.jsx)(nr,{"data-slot":`sheet-overlay`,className:G(`fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs`,e),...t})}function PY({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,q.jsxs)(MY,{children:[(0,q.jsx)(NY,{}),(0,q.jsxs)(gu,{"data-slot":`sheet-content`,"data-side":n,className:G(`fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm`,e),...i,children:[t,r&&(0,q.jsxs)(oi,{"data-slot":`sheet-close`,render:(0,q.jsx)(J,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`}),children:[(0,q.jsx)(me,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function FY({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sheet-header`,className:G(`flex flex-col gap-0.5 p-4`,e),...t})}function IY({className:e,...t}){return(0,q.jsx)(Ru,{"data-slot":`sheet-title`,className:G(`font-heading text-base font-medium text-foreground`,e),...t})}function LY({className:e,...t}){return(0,q.jsx)(fi,{"data-slot":`sheet-description`,className:G(`text-sm text-muted-foreground`,e),...t})}var RY=_.createContext(void 0);function zY(e){let t=_.useContext(RY);if(t===void 0&&!e)throw Error(en(72));return t}var BY={...wl,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},VY=class extends Yc{constructor(e,t,n){let r=new hl;super(HY(e,r,t,n),UY(r),BY)}setOpen=(e,t)=>{ll(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,ai(Ur,e))}};function HY(e,t,n,r=!1){let i={..._l(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=vl(t,n,r),i}function UY(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var WY=Rc(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=il((e,t)=>new VY({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),v=p.useState(`mounted`),y=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),dl(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:b,transitionStatus:x}=fl(h,p),S=p.useState(`isInstantPhase`),C=p.useState(`instantType`),w=p.useState(`lastOpenChangeReason`),T=_.useRef(null);K(()=>{m&&t&&p.setOpen(!1,ai(ei))},[m,t,p]),K(()=>{x===`ending`&&w===`none`||x!==`ending`&&S?(C!==`delay`&&(T.current=C),p.set(`instantType`,`delay`)):T.current!==null&&(p.set(`instantType`,T.current),T.current=null)},[x,S,w,C,p]),K(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]),_.useImperativeHandle(o,()=>({unmount:b,close:()=>p.setOpen(!1,ai(ri))}),[b,p]);let E=h||v||!t&&a!==`none`;return(0,q.jsxs)(RY.Provider,{value:p,children:[l&&(0,q.jsx)(al,{handle:l,store:p}),E&&(0,q.jsx)(GY,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:y}):f]})});function GY({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Es(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=Cs(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=_.useMemo(()=>Cn(a.reference,i.reference),[a.reference,i.reference]);return pl(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??vn}),null}var KY=_.createContext(void 0);function qY(){return _.useContext(KY)}var JY=`data-base-ui-tooltip-trigger`;function YY(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(cr(n))return n}}let t=e.target;return cr(t)?t:null}function XY(e){let t=e;for(;t;){let e=t.closest(`[${JY}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&cr(n.host)?n.host:null}return null}var ZY=zc(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=zY(!0),m=Tl(a)??p;if(!m)throw Error(en(82));let h=di(d),g=m.useState(`isTriggerActive`,h),v=m.useState(`isOpenedByTrigger`,h),y=m.useState(`floatingRootContext`),b=_.useRef(null),x=c??600,S=u??0,{registerTrigger:C,isMountedByThisTrigger:w}=ul(h,b,m,{payload:o,closeOnClick:l,closeDelay:S}),T=qY(),{delayRef:E,isInstantPhase:D,hasProvider:O}=ca(y,{open:v}),k=Fl(y);m.useSyncedValue(`isInstantPhase`,D);let A=m.useState(`disabled`),j=s??A,M=da(j),N=m.useState(`trackCursorAxis`),P=m.useState(`disableHoverablePopup`),F=_.useRef(!1),I=gi(),L=_.useRef(void 0);function R(){return O?ta(E.current,`open`)===0?0:c??T??600:x}function z(e){let t=b.current;if(!t||!e)return!1;let n=XY(e);return n!==null&&n!==t&&Wi(t,n)}function ee(e){let t=z(e);return F.current=t,t&&(k.openChangeTimeout.clear(),k.restTimeout.clear(),k.restTimeoutPending=!1,I.clear()),t}let B=Rl(y,{enabled:!j,mouseOnly:!0,move:!1,handleClose:!P&&N!==`both`?tu():null,restMs:R,delay(){return u==null&&O?{close:ta(E.current,`close`)}:{close:S}},triggerElementRef:b,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!F.current}}),te=Al(y,{enabled:!j}).reference,V=e=>{let t=F.current,n=YY(e),r=ee(n),i=b.current,a=i&&n&&Wi(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,ai(Wr,e));return}if(t&&!r&&a&&!M.current&&!m.select(`open`)&&i&&Fi(L.current)){let t=()=>{!F.current&&!M.current&&!m.select(`open`)&&m.setOpen(!0,ai(Wr,e,i))},n=R();n===0?(I.clear(),t()):I.start(n,t)}},ne=m.useState(`triggerProps`,w);return Ln(`button`,e,{state:{open:v},ref:[t,C,b],props:[B,te,w||N!==`none`?ne:void 0,{onMouseOver(e){V(e.nativeEvent)},onFocus(e){z(YY(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){F.current=!1,I.clear(),L.current=void 0},onPointerEnter(e){L.current=e.pointerType},onPointerDown(e){L.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,"data-trigger-disabled":j?``:void 0,[JY]:j?void 0:``},f],stateAttributesMapping:Qn})}),QY=_.createContext(void 0);function $Y(){let e=_.useContext(QY);if(e===void 0)throw Error(en(70));return e}var eX=_.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=$o({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,q.jsxs)(_.Fragment,{children:[l,c&&Yo.createPortal(n,c)]})}),tX=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return zY().useState(`mounted`)||n?(0,q.jsx)(QY.Provider,{value:n,children:(0,q.jsx)(eX,{ref:t,...r})}):null}),nX=_.createContext(void 0);function rX(){let e=_.useContext(nX);if(e===void 0)throw Error(en(71));return e}var iX=_.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=qo,style:g,...v}=e,y=zY(),b=$Y(),x=y.useState(`open`),S=y.useState(`mounted`),C=y.useState(`trackCursorAxis`),w=y.useState(`disableHoverablePopup`),T=y.useState(`floatingRootContext`),E=y.useState(`instantType`),D=y.useState(`transitionStatus`),O=Rf({anchor:i,positionMethod:a,floatingRootContext:T,mounted:S,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:b,collisionAvoidance:h,adaptiveOrigin:y.useState(`adaptiveOrigin`)}),k=Kf(e,_.useMemo(()=>({open:x,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:C===`none`?E:`tracking-cursor`}),[x,O.side,O.align,O.anchorHidden,C,E]),{styles:O.positionerStyles,transitionStatus:D,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!S,inert:!x||C===`both`||w});return(0,q.jsx)(nX.Provider,{value:O,children:k})}),aX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=zY(),{side:s,align:c}=rX(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);tl({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),Il(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return Ln(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[nl,f,Gf(d),a],stateAttributesMapping:tr})}),oX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=zY(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=rX();return Ln(`div`,e,{state:{open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)},ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:er})});function sX({...e}){return(0,q.jsx)(WY,{"data-slot":`tooltip`,...e})}function cX({...e}){return(0,q.jsx)(ZY,{"data-slot":`tooltip-trigger`,...e})}function lX({className:e,side:t=`top`,sideOffset:n=4,align:r=`center`,alignOffset:i=0,children:a,...o}){return(0,q.jsx)(tX,{children:(0,q.jsx)(iX,{align:r,alignOffset:i,side:t,sideOffset:n,className:`isolate z-50`,children:(0,q.jsxs)(aX,{"data-slot":`tooltip-content`,className:G(`z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...o,children:[a,(0,q.jsx)(oX,{className:`z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5`})]})})})}var uX=`sidebar_state`,dX=604800,fX=`16rem`,pX=`18rem`,mX=`3rem`,hX=`b`,gX=_.createContext(null);function _X(){let e=_.useContext(gX);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function vX({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o}){let s=AY(),[c,l]=_.useState(!1),[u,d]=_.useState(e),f=t??u,p=_.useCallback(e=>{let t=typeof e==`function`?e(f):e;n?n(t):d(t),document.cookie=`${uX}=${t}; path=/; max-age=${dX}`},[n,f]),m=_.useCallback(()=>s?l(e=>!e):p(e=>!e),[s,p,l]);_.useEffect(()=>{let e=e=>{e.key===hX&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),m())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[m]);let h=f?`expanded`:`collapsed`,g=_.useMemo(()=>({state:h,open:f,setOpen:p,isMobile:s,openMobile:c,setOpenMobile:l,toggleSidebar:m}),[h,f,p,s,c,l,m]);return(0,q.jsx)(gX.Provider,{value:g,children:(0,q.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":fX,"--sidebar-width-icon":mX,...i},className:G(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...o,children:a})})}function yX({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,dir:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=_X();return n===`none`?(0,q.jsx)(`div`,{"data-slot":`sidebar`,className:G(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:i}):s?(0,q.jsx)(jY,{open:l,onOpenChange:u,...o,children:(0,q.jsxs)(PY,{dir:a,"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:G(`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,r),style:{"--sidebar-width":pX},side:e,children:[(0,q.jsxs)(FY,{className:`sr-only`,children:[(0,q.jsx)(IY,{children:`Sidebar`}),(0,q.jsx)(LY,{children:`Displays the mobile sidebar.`})]}),(0,q.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})]})}):(0,q.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,q.jsx)(`div`,{"data-slot":`sidebar-gap`,className:G(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,q.jsx)(`div`,{"data-slot":`sidebar-container`,"data-side":e,className:G(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,q.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border`,children:i})})]})}function bX({className:e,onClick:t,...n}){let{toggleSidebar:r}=_X();return(0,q.jsxs)(J,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon-sm`,className:G(e),onClick:e=>{t?.(e),r()},...n,children:[(0,q.jsx)(ae,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function xX({className:e,...t}){return(0,q.jsx)(`main`,{"data-slot":`sidebar-inset`,className:G(`relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function SX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:G(`flex flex-col gap-2 p-2`,e),...t})}function CX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:G(`flex flex-col gap-2 p-2`,e),...t})}function wX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:G(`thin-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function TX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:G(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function EX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:G(`w-full text-sm`,e),...t})}function DX({className:e,...t}){return(0,q.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:G(`flex w-full min-w-0 flex-col gap-0`,e),...t})}function OX({className:e,...t}){return(0,q.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:G(`group/menu-item relative`,e),...t})}var kX=Ku(`peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_8%)] data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function AX({render:e,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o}){let{isMobile:s,state:c}=_X(),l=nd({defaultTagName:`button`,props:Cn({className:G(kX({variant:n,size:r}),a)},o),render:i?(0,q.jsx)(cX,{render:e}):e,state:{slot:`sidebar-menu-button`,sidebar:`menu-button`,size:r,active:t}});return i?(typeof i==`string`&&(i={children:i}),(0,q.jsxs)(sX,{children:[l,(0,q.jsx)(lX,{side:`right`,align:`center`,hidden:c!==`collapsed`||s,...i})]})):l}function jX({className:e,render:t,showOnHover:n=!1,...r}){return nd({defaultTagName:`button`,props:Cn({className:G(`absolute top-1/2 right-1 flex size-7 -translate-y-1/2 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground after:absolute after:-inset-2 hover:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] hover:text-sidebar-accent-foreground aria-expanded:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] aria-expanded:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0`,e)},r),render:t,state:{slot:`sidebar-menu-action`,sidebar:`menu-action`}})}function MX(e){if(!e)return`暂无更新`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function NX(e,t){let n=new Set(e.map(e=>e.containerName)),r=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),i=RegExp(`^${r}-copy(\\d+)$`),a=0;return n.forEach(e=>{let t=e.match(i);if(t){let e=Number(t[1]);Number.isFinite(e)&&e>a&&(a=e)}}),`${t}-copy${a+1}`}function PX({containers:e,loading:t,error:n,activeSessionName:r,onSelectSession:i,onRefresh:a,confirmLeaveIfDirty:o,creatingAgentContainer:s,onCreatingAgentContainerChange:c,...l}){let{isMobile:u,setOpenMobile:d}=_X(),[f,p]=_.useState(`containers`),[m,h]=_.useState(``),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(``),[A,j]=_.useState(null),[M,N]=_.useState(null),[P,F]=_.useState(null);function I(e,t){return new Promise(n=>{F({title:e,message:t,resolve:n})})}function L(e){F(t=>(t?.resolve(e),null))}let z=e.reduce((e,t)=>e+t.sessions.filter(e=>e.synthetic!==!0).length,0),ee=e.find(e=>e.containerName===m),B=_.useMemo(()=>(ee?.sessions??[]).filter(e=>e.synthetic!==!0),[ee]),te=_.useMemo(()=>r?e.find(e=>e.sessions.some(e=>e.name===r))?.containerName??``:``,[e,r]);function V(){p(`containers`),h(``)}function ne(e){p(`agents`),h(e)}async function re(e){e&&e.name!==r&&!await o()||(i(e),e&&u&&d(!1))}_.useEffect(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),v(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);async function ie(e){O(``);try{let t=await a();ne(e);let n=t.find(t=>t.name===e)||t.find(t=>t.containerName===e);n&&re(n)}catch(e){O(e instanceof Error?e.message:`刷新会话列表失败`)}}function ae(e){let t=e=>String(e).padStart(2,`0`);return`${e.getFullYear()}${t(e.getMonth()+1)}${t(e.getDate())}-${t(e.getHours())}${t(e.getMinutes())}${t(e.getSeconds())}`}async function oe(e,t){S(!0),O(``);try{let n=ae(new Date),r=`${e.replace(/\/+$/,``)}/${n}`,i=await Yt(`/api/fs/directories/mkdir`,{path:r}),a=typeof i.path==`string`&&i.path?i.path:r,o=await Yt(`/api/sessions`,{run:t,createOptions:{hostPath:a,containerPath:a,containerName:`my-easy-${n}`}});await ie(String(o.name))}catch(e){O(e instanceof Error?e.message:`快捷对话创建失败`)}finally{S(!1)}}async function ce(){if(!x&&await o()){O(``);try{let e=await Jt(`/api/system/quick-chat-config`),t=typeof e.path==`string`?e.path:``,n=typeof e.run==`string`?e.run:``;t&&n?await oe(t,n):b(!0)}catch(e){O(e instanceof Error?e.message:`读取快捷对话配置失败`)}}}async function ue(e){if(!s&&await o()){O(``),c(e);try{let t=await Yt(`/api/sessions/${encodeURIComponent(e)}/agents`,{}),n=typeof t.name==`string`?t.name:``,r=await a();ne(e);let i=r.find(e=>e.name===n);i&&re(i)}catch(e){O(e instanceof Error?e.message:`新建 AGENT 失败`)}finally{c(null)}}}function fe(e,t){j({kind:`container`,key:e,initial:t})}function pe(e,t){N({mode:e,containerName:t})}async function me(e){if(!M)return;let t=M.mode===`duplicate`?`duplicate`:`clone-config`,n=await Yt(`/api/sessions/${encodeURIComponent(M.containerName)}/${t}`,e?{containerName:e}:{}),r=await a(),i=String(n.name);ne(i);let o=r.find(e=>e.name===i)||r.find(e=>e.containerName===i);o&&re(o)}async function U(e){let t=await I(`删除容器`,`确认删除容器 ${e}?可以选择是否同时删除该容器的全部历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await Yt(`/api/sessions/${encodeURIComponent(e)}/remove`,{removeHistory:n}),m===e&&V(),r&&r.startsWith(e)&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除容器失败`)}}function he(e){j({kind:`agent`,key:e.name,initial:e.agentRemark})}async function ge(e){if(!A)return;let t=A.kind===`container`?`container-remark`:`agent-remark`;await Yt(`/api/sessions/${encodeURIComponent(A.key)}/${t}`,{remark:e}),await a()}async function _e(e){let t=await I(`删除 AGENT`,`确认删除 AGENT ${e.agentRemark||e.agentName}?可以选择是否同时删除它的历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await Yt(`/api/sessions/${encodeURIComponent(e.name)}/remove-with-history`,{removeHistory:n}),r===e.name&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除 AGENT 失败`)}}let ve=!!(g||y||C||T||A||M||P);return(0,q.jsxs)(yX,{...l,className:G(u&&ve&&`pointer-events-none opacity-40 blur-[2px]`),children:[(0,q.jsxs)(SX,{className:`gap-3 px-3 pt-3`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-between gap-2`,children:(0,q.jsx)(`span`,{className:`text-sm font-semibold tracking-tight`,children:`MANYOYO Web`})}),(0,q.jsxs)(J,{className:`w-full`,size:`lg`,disabled:f===`agents`&&s===m,onClick:()=>f===`agents`?ue(m):E(!0),children:[f===`agents`&&s===m?(0,q.jsx)(ad,{"data-icon":`inline-start`}):(0,q.jsx)(se,{"data-icon":`inline-start`}),f===`agents`?s===m?`创建中...`:`新建AGENT`:`新建容器`]}),(0,q.jsxs)(J,{className:`w-full`,variant:`outline`,disabled:x,onClick:ce,children:[x?(0,q.jsx)(ad,{"data-icon":`inline-start`}):(0,q.jsx)(H,{"data-icon":`inline-start`}),x?`创建中...`:`快捷对话`]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,q.jsx)(`span`,{children:`工作台`}),(0,q.jsx)(`span`,{children:t?`加载中...`:f===`agents`?`${B.length} 个 AGENT`:`${e.length} 个容器 / ${z} 个 AGENT`})]}),(0,q.jsx)(BJ,{children:(0,q.jsxs)(VJ,{className:`flex-nowrap gap-1 text-xs`,children:[(0,q.jsx)(HJ,{className:`shrink-0`,children:(0,q.jsxs)(J,{variant:`outline`,size:`xs`,disabled:f===`containers`,onClick:f===`containers`?void 0:V,className:`text-foreground`,children:[f===`containers`?(0,q.jsx)(`span`,{"data-icon":`inline-start`,className:`flex size-4 items-center justify-center`,children:(0,q.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`})}):(0,q.jsx)(k,{"data-icon":`inline-start`}),`全部容器`]})}),f===`agents`&&ee?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(WJ,{className:`shrink-0`}),(0,q.jsx)(HJ,{className:`min-w-0 flex-1`,children:(0,q.jsx)(UJ,{className:`block truncate`,children:ee.containerRemark||ee.containerName})})]}):null]})}),(0,q.jsxs)(J,{variant:`outline`,className:`w-full justify-start bg-background text-muted-foreground shadow-none`,onClick:()=>v(!0),children:[(0,q.jsx)(le,{"data-icon":`inline-start`}),`搜索容器 / AGENT`,(0,q.jsx)(`kbd`,{className:`ml-auto font-mono text-xs text-muted-foreground`,children:`⌘K`})]}),n||D?(0,q.jsx)(`p`,{className:`text-xs text-destructive`,children:n||D}):null]}),(0,q.jsx)(wX,{children:(0,q.jsx)(TX,{className:`pt-0`,children:(0,q.jsx)(EX,{children:(0,q.jsxs)(DX,{className:`gap-1`,children:[f===`containers`?e.map(e=>(0,q.jsxs)(OX,{children:[(0,q.jsxs)(AX,{size:`lg`,isActive:e.containerName===te,onClick:()=>ne(e.containerName),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,q.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate font-medium`,children:e.containerRemark||e.containerName}),(0,q.jsx)(id,{variant:e.status.toLowerCase().includes(`up`)?`default`:`outline`,className:G(`ml-auto shrink-0`,e.status.toLowerCase().includes(`up`)&&`bg-emerald-600 text-white`),children:e.status===`history`?`仅历史`:e.status.toLowerCase().includes(`up`)?`运行中`:`已停止`})]}),(0,q.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:e.hostPath})]}),(0,q.jsxs)(wY,{children:[(0,q.jsx)(TY,{render:(0,q.jsx)(jX,{showOnHover:!0,children:(0,q.jsx)(R,{})})}),(0,q.jsx)(EY,{side:`right`,align:`start`,className:`w-56`,children:(0,q.jsxs)(DY,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(OY,{onClick:()=>fe(e.containerName,e.containerRemark),children:`编辑备注`}),(0,q.jsx)(OY,{disabled:s===e.containerName,onClick:()=>ue(e.containerName),children:s===e.containerName?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ad,{"data-icon":`inline-start`}),`创建中...`]}):`新建 AGENT`}),(0,q.jsx)(OY,{onClick:()=>pe(`clone-config`,e.containerName),children:`创建相同配置容器`}),(0,q.jsx)(OY,{onClick:()=>pe(`duplicate`,e.containerName),children:`复制容器`}),(0,q.jsx)(OY,{variant:`destructive`,onClick:()=>U(e.containerName),children:`删除容器`})]})})]})]},e.containerName)):B.map(e=>(0,q.jsxs)(OX,{children:[(0,q.jsxs)(AX,{size:`lg`,isActive:r===e.name,onClick:()=>re(e),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,q.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate font-medium`,children:e.agentRemark||e.agentName}),e.archived?(0,q.jsx)(id,{variant:`outline`,className:`ml-auto shrink-0`,children:`已停止`}):null]}),(0,q.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:MX(e.updatedAt||``)})]}),(0,q.jsxs)(wY,{children:[(0,q.jsx)(TY,{render:(0,q.jsx)(jX,{showOnHover:!0,children:(0,q.jsx)(R,{})})}),(0,q.jsx)(EY,{side:`right`,align:`start`,className:`w-56`,children:(0,q.jsxs)(DY,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(OY,{onClick:()=>he(e),children:`编辑备注`}),(0,q.jsx)(OY,{variant:`destructive`,onClick:()=>_e(e),children:`删除 AGENT`})]})})]})]},e.name)),f===`containers`&&!t&&e.length===0?(0,q.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`暂无 manyoyo 容器`}):null,f===`agents`&&B.length===0?(0,q.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`该容器下暂无 AGENT`}):null]})})})}),(0,q.jsx)(CX,{className:`px-3 pb-3`,children:(0,q.jsxs)(J,{variant:`outline`,size:`lg`,className:`w-full`,onClick:()=>w(!0),children:[(0,q.jsx)(de,{"data-icon":`inline-start`}),`系统设置`]})}),(0,q.jsx)(zJ,{open:C,onOpenChange:w}),(0,q.jsx)(Nv,{open:g,onOpenChange:v,containers:e,onSelectContainer:ne,onSelectAgent:(e,t)=>{ne(e),re(t)}}),(0,q.jsx)(qp,{open:y,onOpenChange:b,initialPath:``,initialRun:``,onSaved:(e,t)=>oe(e,t)}),(0,q.jsx)(Wp,{open:T,onOpenChange:E,onCreated:ie}),(0,q.jsx)(Gp,{open:A!==null,onOpenChange:e=>{e||j(null)},title:A?.kind===`container`?`设置容器备注`:`设置 AGENT 备注`,description:`留空可清除备注。`,label:`备注`,initialValue:A?.initial??``,onSubmit:ge}),(0,q.jsx)(Rd,{open:M!==null,onOpenChange:e=>{e||N(null)},mode:M?.mode??`clone-config`,sourceContainerName:M?.containerName??``,suggestedName:M?NX(e,M.containerName):``,onSubmit:me}),(0,q.jsx)(Ju,{open:P!==null,onOpenChange:e=>{e||L(null)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{children:P?.title}),(0,q.jsx)(td,{children:P?.message}),(0,q.jsxs)($u,{children:[(0,q.jsx)(J,{variant:`outline`,onClick:()=>L(null),children:`取消`}),(0,q.jsx)(J,{variant:`outline`,onClick:()=>L(`keep-history`),children:`否,保留历史`}),(0,q.jsx)(J,{variant:`destructive`,onClick:()=>L(`with-history`),children:`是,连同历史一起删除`})]})]})})]})}function FX({onPointerDown:e,dragging:t,className:n,style:r}){return(0,q.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,onPointerDown:e,style:r,className:G(`group relative w-2 shrink-0 cursor-col-resize touch-none select-none`,n),children:(0,q.jsx)(`div`,{className:G(`absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors group-hover:bg-primary/60`,t&&`bg-primary`)})})}var IX=1500;function LX(e){return e.some(e=>e.pending===!0)}function RX(e,t,n,r){let i=_.useRef(t);_.useEffect(()=>{i.current=t},[t]);let a=_.useRef(n);_.useEffect(()=>{a.current=n},[n]);let o=LX(t);_.useEffect(()=>{if(!e||!o||r)return;let t=!1,n=0;function s(){t||!LX(i.current)||(n=window.setTimeout(async()=>{if(!t){try{await a.current()}catch{}t||s()}},IX))}return s(),()=>{t=!0,window.clearTimeout(n)}},[e?.name,o,r])}var zX=`custom`,BX=`__inherit__`;function VX(e){return String(e.containerAgentPromptCommand||``).trim()||String(e.agentPromptCommand||``).trim()}function HX({open:e,onOpenChange:t,session:n,onSaved:r}){let i=n?.agentId==="default",[a,o]=_.useState(zX),[s,c]=_.useState(``),[l,u]=_.useState(!1),[d,f]=_.useState(!1),[p,m]=_.useState(``),h=_.useRef({});_.useEffect(()=>{!e||!n||(u(!0),m(``),Jt(`/api/sessions/${encodeURIComponent(n.name)}/detail`).then(e=>{let t=e.detail||{};h.current=t;let n=String(i?t.containerAgentPromptCommand||``:t.agentPromptCommandOverride||``);if(c(n),!i&&!n){o(BX);return}let r=Object.entries(Ip).find(([,e])=>e===n)?.[0];o(r||zX)}).catch(e=>m(e instanceof Error?e.message:`加载模板失败`)).finally(()=>u(!1)))},[e,n,i]);function g(e){let t=e??zX;if(o(t),t===BX){c(VX(h.current));return}t!==zX&&c(Ip[t])}async function v(){if(n){f(!0),m(``);try{let e=i?{containerAgentPromptCommand:s}:{agentPromptCommandOverride:a===BX?``:s};await Xt(`/api/sessions/${encodeURIComponent(n.name)}/agent-template`,e),t(!1),r()}catch(e){m(e instanceof Error?e.message:`保存失败`)}finally{f(!1)}}}return(0,q.jsx)(Ju,{open:e,onOpenChange:t,children:(0,q.jsxs)(Zu,{className:`sm:max-w-md`,children:[(0,q.jsxs)(Qu,{children:[(0,q.jsx)(ed,{children:`设置 CLI / Agent 模板`}),(0,q.jsx)(td,{children:i?`对该容器下所有未单独覆盖的 AGENT 生效。`:`仅对当前 AGENT 生效,覆盖容器级模板;留空则继承容器默认模板。`})]}),l?(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`加载中...`}):(0,q.jsxs)(md,{children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`agent-template-cli`,children:`CLI`}),(0,q.jsxs)(Dp,{value:a,onValueChange:g,children:[(0,q.jsx)(Ap,{id:`agent-template-cli`,className:`w-full`,children:(0,q.jsx)(kp,{children:e=>e===BX?`继承容器默认`:e===zX?`自定义`:e})}),(0,q.jsx)(jp,{children:(0,q.jsxs)(Op,{children:[i?null:(0,q.jsx)(Mp,{value:BX,children:`继承容器默认`}),(0,q.jsx)(Mp,{value:zX,children:`自定义`}),(0,q.jsx)(Mp,{value:`claude`,children:`claude`}),(0,q.jsx)(Mp,{value:`codex`,children:`codex`}),(0,q.jsx)(Mp,{value:`gemini`,children:`gemini`}),(0,q.jsx)(Mp,{value:`opencode`,children:`opencode`})]})})]})]}),(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`agent-template-command`,children:i?`容器级 agentPromptCommand`:`当前 AGENT 覆盖`}),(0,q.jsx)(Fp,{id:`agent-template-command`,className:`min-h-20 font-mono text-xs`,placeholder:i?`例如 codex exec --skip-git-repo-check {prompt}`:`留空则继承容器默认模板`,value:s,onChange:e=>c(e.target.value)}),(0,q.jsxs)(vd,{children:[`模板需包含 `,`{prompt}`,` 占位符。`]})]}),p?(0,q.jsx)(sd,{variant:`destructive`,children:(0,q.jsx)(cd,{children:p})}):null]}),(0,q.jsx)($u,{children:(0,q.jsx)(J,{onClick:v,disabled:l||d,children:d?`保存中...`:`保存`})})]})})}function UX({className:e,size:t=`default`,...n}){return(0,q.jsx)(`div`,{"data-slot":`card`,"data-size":t,className:G(`group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl`,e),...n})}function WX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-header`,className:G(`group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)`,e),...t})}function GX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-title`,className:G(`font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm`,e),...t})}function KX({className:e,...t}){return(0,q.jsx)(`div`,{"data-slot":`card-content`,className:G(`px-(--card-spacing)`,e),...t})}var qX=RegExp(`[`+[[8203,8207],[8234,8238],[8288,8297],[65279,65279],[1564,1564]].map(([e,t])=>String.fromCodePoint(e)+`-`+String.fromCodePoint(t)).join(``)+`]`,`g`);function JX(e){return String(e??``).replace(qX,e=>`\\u`+e.codePointAt(0).toString(16).toUpperCase().padStart(4,`0`))}function YX(){let[e,t]=_.useState(null),n=_.useCallback(e=>new Promise(n=>{t({...e,resolve:n})}),[]);function r(e){t(t=>(t?.resolve(e),null))}return{confirm:n,dialog:(0,q.jsx)(Ju,{open:e!==null,onOpenChange:e=>{e||r(!1)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{children:e?.title}),(0,q.jsx)(td,{className:`whitespace-pre-wrap break-all`,children:e?.message}),(0,q.jsxs)($u,{children:[(0,q.jsx)(J,{variant:`outline`,onClick:()=>r(!1),children:e?.cancelLabel||`取消`}),(0,q.jsx)(J,{onClick:()=>r(!0),children:e?.confirmLabel||`继续`})]})]})})}}function XX(e,t,n){return Math.min(n,Math.max(t,e))}function ZX({storageKey:e,defaultWidth:t,min:n,max:r}){let[i,a]=_.useState(()=>{if(typeof window>`u`)return t;let i=Number(window.localStorage.getItem(e));return Number.isFinite(i)&&i>0?XX(i,n,r):t}),[o,s]=_.useState(!1);return _.useEffect(()=>{window.localStorage.setItem(e,String(i))},[e,i]),{width:i,dragging:o,onHandlePointerDown:_.useCallback(e=>{e.preventDefault();let t=e.clientX,o=i;s(!0);function c(e){a(XX(o+(e.clientX-t),n,r))}function l(){s(!1),window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,l)}window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,l)},[i,n,r])}}function QX(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function $X(e){if(Array.isArray(e))return e}function eZ(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function tZ(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
123
123
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nZ(e,t){return $X(e)||eZ(e,t)||rZ(e,t)||tZ()}function rZ(e,t){if(e){if(typeof e==`string`)return QX(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?QX(e,t):void 0}}var iZ=Object.entries,aZ=Object.setPrototypeOf,oZ=Object.isFrozen,sZ=Object.getPrototypeOf,cZ=Object.getOwnPropertyDescriptor,lZ=Object.freeze,uZ=Object.seal,dZ=Object.create,fZ=typeof Reflect<`u`&&Reflect,pZ=fZ.apply,mZ=fZ.construct;lZ||=function(e){return e},uZ||=function(e){return e},pZ||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},mZ||=function(e){return new e(...[...arguments].slice(1))};var hZ=FZ(Array.prototype.forEach),gZ=FZ(Array.prototype.lastIndexOf),_Z=FZ(Array.prototype.pop),vZ=FZ(Array.prototype.push),yZ=FZ(Array.prototype.splice),bZ=Array.isArray,xZ=FZ(String.prototype.toLowerCase),SZ=FZ(String.prototype.toString),CZ=FZ(String.prototype.match),wZ=FZ(String.prototype.replace),TZ=FZ(String.prototype.indexOf),EZ=FZ(String.prototype.trim),DZ=FZ(Number.prototype.toString),OZ=FZ(Boolean.prototype.toString),kZ=typeof BigInt>`u`?null:FZ(BigInt.prototype.toString),AZ=typeof Symbol>`u`?null:FZ(Symbol.prototype.toString),jZ=FZ(Object.prototype.hasOwnProperty),MZ=FZ(Object.prototype.toString),NZ=FZ(RegExp.prototype.test),PZ=IZ(TypeError);function FZ(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return pZ(e,t,n)}}function IZ(e){return function(){return mZ(e,[...arguments])}}function LZ(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:xZ;if(aZ&&aZ(e,null),!bZ(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(oZ(t)||(t[r]=e),i=e)}e[i]=!0}return e}function RZ(e){for(let t=0;t<e.length;t++)jZ(e,t)||(e[t]=null);return e}function zZ(e){let t=dZ(null);for(let r of iZ(e)){var n=nZ(r,2);let i=n[0],a=n[1];jZ(e,i)&&(t[i]=bZ(a)?RZ(a):a&&typeof a==`object`&&a.constructor===Object?zZ(a):a)}return t}function BZ(e){switch(typeof e){case`string`:return e;case`number`:return DZ(e);case`boolean`:return OZ(e);case`bigint`:return kZ?kZ(e):`0`;case`symbol`:return AZ?AZ(e):`Symbol()`;case`undefined`:return MZ(e);case`function`:case`object`:{if(e===null)return MZ(e);let t=e,n=VZ(t,`toString`);if(typeof n==`function`){let e=n(t);return typeof e==`string`?e:MZ(e)}return MZ(e)}default:return MZ(e)}}function VZ(e,t){for(;e!==null;){let n=cZ(e,t);if(n){if(n.get)return FZ(n.get);if(typeof n.value==`function`)return FZ(n.value)}e=sZ(e)}function n(){return null}return n}function HZ(e){try{return NZ(e,``),!0}catch{return!1}}var UZ=lZ(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),WZ=lZ(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),GZ=lZ([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),KZ=lZ([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),qZ=lZ(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),JZ=lZ([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),YZ=lZ([`#text`]),XZ=lZ(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns`.split(`.`)),ZZ=lZ(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),QZ=lZ(`accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),$Z=lZ([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),eQ=uZ(/{{[\w\W]*|^[\w\W]*}}/g),tQ=uZ(/<%[\w\W]*|^[\w\W]*%>/g),nQ=uZ(/\${[\w\W]*/g),rQ=uZ(/^data-[\-\w.\u00B7-\uFFFF]+$/),iQ=uZ(/^aria-[\-\w]+$/),aQ=uZ(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),oQ=uZ(/^(?:\w+script|data):/i),sQ=uZ(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),cQ=uZ(/^html$/i),lQ=uZ(/^[a-z][.\w]*(-[.\w]+)+$/i),uQ=uZ(/<[/\w!]/g),dQ=uZ(/<[/\w]/g),fQ=uZ(/<\/no(script|embed|frames)/i),pQ=uZ(/\/>/i),mQ={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},hQ=[`style`,`script`,`xmp`,`iframe`,`noembed`,`noframes`,`plaintext`,`noscript`],gQ=lZ(LZ({},hQ)),_Q=function(){let e={};return hZ(hQ,t=>{e[t]=uZ(RegExp(`</`+t+`(?=[\\t\\n\\f\\r />])`,`i`))}),lZ(e)}(),vQ=function(){return typeof window>`u`?null:window},yQ=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},bQ=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},xQ=function(e,t,n,r){return jZ(e,t)&&bZ(e[t])?LZ(r.base?zZ(r.base):{},e[t],r.transform):n},SQ=function(e,t,n){let r=jZ(e,t)?e[t]:void 0;return r&&typeof r==`object`?zZ(r):n()};function CQ(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:vQ(),t=e=>CQ(e);if(t.version=`3.4.14`,t.removed=[],!e||!e.document||e.document.nodeType!==mQ.document||!e.Element)return t.isSupported=!1,t;let n=e.document,r=n,i=r.currentScript;e.DocumentFragment;let a=e.HTMLTemplateElement,o=e.Node,s=e.Element,c=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let l=e.DOMParser,u=e.trustedTypes,d=s.prototype,f=VZ(d,`cloneNode`),p=VZ(d,`remove`),m=VZ(d,`nextSibling`),h=VZ(d,`childNodes`),g=VZ(d,`parentNode`),_=VZ(d,`shadowRoot`),v=VZ(d,`attributes`),y=o&&o.prototype?VZ(o.prototype,`nodeType`):null,b=o&&o.prototype?VZ(o.prototype,`nodeName`):null,x=o&&o.prototype?VZ(o.prototype,`ownerDocument`):null,S=function(e){return y?y(e):e.nodeType},C=function(e){return b?b(e):e.nodeName};if(typeof a==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let w,T=``,E,D=!1,O=0,k=function(){if(O>0)throw PZ(`A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.`)},A=function(e){k(),O++;try{return w.createHTML(e)}finally{O--}},j=function(e){k(),O++;try{return w.createScriptURL(e)}finally{O--}},M=function(){return D||=(E=yQ(u,i),!0),E},N=n,P=N.implementation,F=N.createNodeIterator,I=N.createDocumentFragment,L=N.getElementsByTagName,R=r.importNode,z=bQ();t.isSupported=typeof iZ==`function`&&typeof g==`function`&&P&&P.createHTMLDocument!==void 0;let ee=eQ,B=tQ,te=nQ,V=rQ,ne=iQ,H=oQ,re=sQ,ie=lQ,ae=aQ,oe=null,se=LZ({},[...UZ,...WZ,...GZ,...qZ,...YZ]),ce=null,le=LZ({},[...XZ,...ZZ,...QZ,...$Z]),ue=Object.seal(dZ(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),de=null,fe=null,pe=Object.seal(dZ(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),me=!0,U=!0,he=!1,ge=!0,_e=!1,ve=!0,ye=!1,be=!1,xe=null,Se=null,Ce=!1,we=!1,Te=!1,Ee=!1,De=!0,Oe=!1,ke=`user-content-`,Ae=!0,je=!1,Me={},Ne=null,Pe=LZ({},`annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp`.split(`.`)),Fe=null,Ie=LZ({},[`audio`,`video`,`img`,`source`,`image`,`track`]),Le=null,Re=LZ({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),ze=`http://www.w3.org/1998/Math/MathML`,Be=`http://www.w3.org/2000/svg`,Ve=`http://www.w3.org/1999/xhtml`,He=Ve,Ue=!1,We=null,Ge=LZ({},[ze,Be,Ve],SZ),Ke=lZ([`mi`,`mo`,`mn`,`ms`,`mtext`]),qe=LZ({},Ke),Je=lZ([`annotation-xml`]),Ye=LZ({},Je),Xe=LZ({},[`title`,`style`,`font`,`a`,`script`]),Ze=null,Qe=[`application/xhtml+xml`,`text/html`],$e=null,et=null,tt=n.createElement(`form`),nt=function(e){return e instanceof RegExp||e instanceof Function},rt=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(et&&et===e)return;(!e||typeof e!=`object`)&&(e={}),e=zZ(e),Ze=Qe.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,$e=Ze===`application/xhtml+xml`?SZ:xZ,oe=xQ(e,`ALLOWED_TAGS`,se,{transform:$e}),ce=xQ(e,`ALLOWED_ATTR`,le,{transform:$e}),We=xQ(e,`ALLOWED_NAMESPACES`,Ge,{transform:SZ}),Le=xQ(e,`ADD_URI_SAFE_ATTR`,Re,{transform:$e,base:Re}),Fe=xQ(e,`ADD_DATA_URI_TAGS`,Ie,{transform:$e,base:Ie}),Ne=xQ(e,`FORBID_CONTENTS`,Pe,{transform:$e}),de=xQ(e,`FORBID_TAGS`,zZ({}),{transform:$e}),fe=xQ(e,`FORBID_ATTR`,zZ({}),{transform:$e}),Me=jZ(e,`USE_PROFILES`)?e.USE_PROFILES&&typeof e.USE_PROFILES==`object`?zZ(e.USE_PROFILES):e.USE_PROFILES:!1,me=e.ALLOW_ARIA_ATTR!==!1,U=e.ALLOW_DATA_ATTR!==!1,he=e.ALLOW_UNKNOWN_PROTOCOLS||!1,ge=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,_e=e.SAFE_FOR_TEMPLATES||!1,ve=e.SAFE_FOR_XML!==!1,ye=e.WHOLE_DOCUMENT||!1,we=e.RETURN_DOM||!1,Te=e.RETURN_DOM_FRAGMENT||!1,Ee=e.RETURN_TRUSTED_TYPE||!1,Ce=e.FORCE_BODY||!1,De=e.SANITIZE_DOM!==!1,Oe=e.SANITIZE_NAMED_PROPS||!1,Ae=e.KEEP_CONTENT!==!1,je=e.IN_PLACE||!1,ae=HZ(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:aQ,He=typeof e.NAMESPACE==`string`?e.NAMESPACE:Ve,qe=SQ(e,`MATHML_TEXT_INTEGRATION_POINTS`,()=>LZ({},Ke)),Ye=SQ(e,`HTML_INTEGRATION_POINTS`,()=>LZ({},Je));let t=SQ(e,`CUSTOM_ELEMENT_HANDLING`,()=>dZ(null));if(ue=dZ(null),jZ(t,`tagNameCheck`)&&nt(t.tagNameCheck)&&(ue.tagNameCheck=t.tagNameCheck),jZ(t,`attributeNameCheck`)&&nt(t.attributeNameCheck)&&(ue.attributeNameCheck=t.attributeNameCheck),jZ(t,`allowCustomizedBuiltInElements`)&&typeof t.allowCustomizedBuiltInElements==`boolean`&&(ue.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),uZ(ue),_e&&(U=!1),Te&&(we=!0),Me&&(oe=LZ({},YZ),ce=dZ(null),Me.html===!0&&(LZ(oe,UZ),LZ(ce,XZ)),Me.svg===!0&&(LZ(oe,WZ),LZ(ce,ZZ),LZ(ce,$Z)),Me.svgFilters===!0&&(LZ(oe,GZ),LZ(ce,ZZ),LZ(ce,$Z)),Me.mathMl===!0&&(LZ(oe,qZ),LZ(ce,QZ),LZ(ce,$Z))),pe.tagCheck=null,pe.attributeCheck=null,jZ(e,`ADD_TAGS`)&&(typeof e.ADD_TAGS==`function`?pe.tagCheck=e.ADD_TAGS:bZ(e.ADD_TAGS)&&(oe===se&&(oe=zZ(oe)),LZ(oe,e.ADD_TAGS,$e))),jZ(e,`ADD_ATTR`)&&(typeof e.ADD_ATTR==`function`?pe.attributeCheck=e.ADD_ATTR:bZ(e.ADD_ATTR)&&(ce===le&&(ce=zZ(ce)),LZ(ce,e.ADD_ATTR,$e))),jZ(e,`ADD_FORBID_CONTENTS`)&&bZ(e.ADD_FORBID_CONTENTS)&&(Ne===Pe&&(Ne=zZ(Ne)),LZ(Ne,e.ADD_FORBID_CONTENTS,$e)),Ae&&(oe[`#text`]=!0),ye&&LZ(oe,[`html`,`head`,`body`]),oe.table&&(LZ(oe,[`tbody`]),delete de.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw PZ(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw PZ(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);let t=w;w=e.TRUSTED_TYPES_POLICY;try{T=A(``)}catch(e){throw w=t,e}}else e.TRUSTED_TYPES_POLICY===null?(w=void 0,T=``):(w===void 0&&(w=M()),w&&typeof T==`string`&&(T=A(``)));lZ&&lZ(e),et=e},it=LZ({},[...WZ,...GZ,...KZ]),at=LZ({},[...qZ,...JZ]),ot=function(e,t,n){return t.namespaceURI===Ve?e===`svg`:t.namespaceURI===ze?e===`svg`&&(n===`annotation-xml`||qe[n]):!!it[e]},st=function(e,t,n){return t.namespaceURI===Ve?e===`math`:t.namespaceURI===Be?e===`math`&&Ye[n]:!!at[e]},ct=function(e,t,n){return t.namespaceURI===Be&&!Ye[n]||t.namespaceURI===ze&&!qe[n]?!1:!at[e]&&(Xe[e]||!it[e])},lt=function(e){let t=g(e);(!t||!t.tagName)&&(t={namespaceURI:He,tagName:`template`});let n=xZ(e.tagName),r=xZ(t.tagName);return We[e.namespaceURI]?e.namespaceURI===Be?ot(n,t,r):e.namespaceURI===ze?st(n,t,r):e.namespaceURI===Ve?ct(n,t,r):!!(Ze===`application/xhtml+xml`&&We[e.namespaceURI]):!1},ut=function(e){vZ(t.removed,{element:e});try{g(e).removeChild(e)}catch{if(p(e),!g(e))throw PZ(`a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place`)}},dt=function(e,t,n){try{e.removeAttributeNode(t)}catch{try{e.removeAttribute(n)}catch{}}},ft=function(e){ht(e);let t=h(e);if(t){let e=[];hZ(t,t=>{vZ(e,t)}),hZ(e,e=>{try{p(e)}catch{}})}let n=v(e);if(n)for(let t=n.length-1;t>=0;--t){let r=n[t],i=r&&r.name;typeof i==`string`&&dt(e,r,i)}},pt=function(e,n,r){if(!r)try{r=n.getAttributeNode(e)}catch{r=null}vZ(t.removed,{attribute:r||null,from:n});try{r?n.removeAttributeNode(r):n.removeAttribute(e)}catch{try{n.removeAttribute(e)}catch{}}if(e===`is`){if(we||Te)try{ut(n)}catch{}else try{n.setAttribute(e,``)}catch{}}},mt=function(e){let t=v(e);if(t)for(let n=t.length-1;n>=0;--n){let r=t[n],i=r&&r.name;typeof i!=`string`||ce[$e(i)]||dt(e,r,i)}},ht=function(e){let t=[e];for(;t.length>0;){let e=t.pop();S(e)===mQ.element&&mt(e);let n=h(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}},gt=function(e,t){return ve?e===`patchsrc`||e===`for`&&t!==`label`&&t!==`output`:!1},_t=function(e){if(!ve)return;let t=[e];for(;t.length>0;){let e=t.pop(),n=S(e);if(n===mQ.processingInstruction||n===mQ.comment&&NZ(dQ,e.data)){try{p(e)}catch{}continue}if(n===mQ.element){let t=e,n=$e(C(e));try{t.hasAttribute&&t.hasAttribute(`patchsrc`)&&t.removeAttribute(`patchsrc`),t.hasAttribute&&t.hasAttribute(`for`)&&gt(`for`,n)&&t.removeAttribute(`for`)}catch{}}let r=h(e);if(r)for(let e=r.length-1;e>=0;--e)t.push(r[e])}},vt=function(e){let t=null,r=null;if(Ce)e=`<remove></remove>`+e;else{let t=CZ(e,/^[\r\n\t ]+/);r=t&&t[0]}Ze===`application/xhtml+xml`&&He===Ve&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=w?A(e):e;if(He===Ve)try{t=new l().parseFromString(i,Ze)}catch{}if(!t||!t.documentElement){t=P.createDocument(He,`template`,null);try{t.documentElement.innerHTML=Ue?T:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),He===Ve?L.call(t,ye?`html`:`body`)[0]:ye?t.documentElement:a},yt=function(e){let t=x?x(e):e.ownerDocument;return F.call(t||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},bt=function(e){return e=wZ(e,ee,` `),e=wZ(e,B,` `),e=wZ(e,te,` `),e},xt=function(e){e.normalize();let t=x?x(e):e.ownerDocument,n=F.call(t||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),r=n.nextNode();for(;r;)r.data=bt(r.data),r=n.nextNode();let i=e.querySelectorAll?.call(e,`template`);i&&hZ(i,e=>{Ct(e.content)&&xt(e.content)})},St=function(e){let t=b?b(e):null;return typeof t!=`string`||$e(t)!==`form`?!1:typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||e.attributes!==v(e)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`||e.nodeType!==y(e)||e.childNodes!==h(e)},Ct=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return y(e)===mQ.documentFragment}catch{return!1}},wt=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return typeof y(e)==`number`}catch{return!1}};function W(e,n,r){e.length!==0&&hZ(e,e=>{e.call(t,n,r,et)})}let Tt=function(e,t){return!!(ve&&e.hasChildNodes()&&!wt(e.firstElementChild)&&NZ(uQ,e.textContent)&&NZ(uQ,e.innerHTML)||ve&&e.namespaceURI===Ve&&gQ[t]&&(wt(e.firstElementChild)||typeof e.textContent==`string`&&NZ(_Q[t],e.textContent))||e.nodeType===mQ.processingInstruction||ve&&e.nodeType===mQ.comment&&NZ(dQ,e.data))},Et=function(e,t){return e instanceof RegExp?NZ(e,t):e instanceof Function&&!!e(t,...[...arguments].slice(2))},Dt=function(e,t,n){if(!de[t]&&Nt(t)&&Et(ue.tagNameCheck,t))return!1;if(Ae&&!Ne[t]){let t=g(e),r=h(e);if(r&&t){let i=r.length;for(let a=i-1;a>=0;--a){let i=e===n?f(r[a],!0):r[a];t.insertBefore(i,m(e))}}}return ut(e),!0},Ot=function(e,t,n,r){return e.length===0?t:t===n||t===r?zZ(t):t},kt=function(e,t){return e===t||g(e)!==null?!1:(je&&ht(e),!0)},At=function(e,n){if(W(z.beforeSanitizeElements,e,null),kt(e,n))return!0;if(St(e))return ut(e),!0;let r=$e(C(e));if(oe=Ot(z.uponSanitizeElement,oe,se,xe),W(z.uponSanitizeElement,e,{tagName:r,allowedTags:oe}),kt(e,n))return!0;if(Tt(e,r))return ut(e),!0;if(de[r]||!(pe.tagCheck instanceof Function&&pe.tagCheck(r))&&!oe[r]){let t=Dt(e,r,n);return t===!1&&W(z.afterSanitizeElements,e,null),t}if(S(e)===mQ.element&&!lt(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&NZ(fQ,e.innerHTML))return ut(e),!0;if(_e&&e.nodeType===mQ.text){let n=bt(e.textContent);e.textContent!==n&&(vZ(t.removed,{element:e.cloneNode()}),e.textContent=n)}return W(z.afterSanitizeElements,e,null),!1},jt=function(e,t,r){if(fe[t]||gt(t,e)||De&&(t===`id`||t===`name`)&&(r in n||r in tt))return!1;let i=ce[t]||pe.attributeCheck instanceof Function&&pe.attributeCheck(t,e);return U&&NZ(V,t)||me&&NZ(ne,t)?!0:i?Le[t]||NZ(ae,wZ(r,re,``))||(t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&TZ(r,`data:`)===0&&Fe[e]||he&&!NZ(H,wZ(r,re,``))?!0:!r:Nt(e)&&Et(ue.tagNameCheck,e)&&Et(ue.attributeNameCheck,t,e)||t===`is`&&ue.allowCustomizedBuiltInElements&&Et(ue.tagNameCheck,r)},Mt=LZ({},[`annotation-xml`,`color-profile`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`missing-glyph`]),Nt=function(e){return!Mt[xZ(e)]&&NZ(ie,e)},Pt=function(e,t,n,r){if(w&&typeof u==`object`&&typeof u.getAttributeType==`function`&&!n)switch(u.getAttributeType(e,t)){case`TrustedHTML`:return A(r);case`TrustedScriptURL`:return j(r)}return r},Ft=function(e,n,r,i){try{r?e.setAttributeNS(r,n,i):e.setAttribute(n,i),St(e)?ut(e):_Z(t.removed)}catch{pt(n,e)}},It=function(e){W(z.beforeSanitizeAttributes,e,null);let t=e.attributes;if(!t||St(e))return;ce=Ot(z.uponSanitizeAttribute,ce,le,Se);let n={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:ce,forceKeepAttr:void 0},r=t.length,i=$e(e.nodeName);for(;r--;){let a=t[r],o=a.name,s=a.namespaceURI,c=a.value,l=$e(o),u=c,d=o===`value`?u:EZ(u);if(n.attrName=l,n.attrValue=d,n.keepAttr=!0,n.forceKeepAttr=void 0,W(z.uponSanitizeAttribute,e,n),d=n.attrValue,Oe&&(l===`id`||l===`name`)&&TZ(d,ke)!==0&&(pt(o,e,a),d=ke+d),ve&&NZ(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,d)){pt(o,e,a);continue}if(l===`attributename`&&CZ(d,`href`)){pt(o,e,a);continue}if(!n.forceKeepAttr){if(!n.keepAttr){pt(o,e,a);continue}if(!ge&&NZ(pQ,d)){pt(o,e,a);continue}if(_e&&(d=bt(d)),!jt(i,l,d)){pt(o,e,a);continue}d=Pt(i,l,s,d),d!==u&&Ft(e,o,s,d)}}W(z.afterSanitizeAttributes,e,null)},Lt=function(e){let t=null,n=yt(e);for(W(z.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(W(z.uponSanitizeShadowNode,t,null),At(t,e),It(t),Ct(t.content)&&Lt(t.content),S(t)===mQ.element){let e=_(t);Ct(e)&&(Rt(e),Lt(e))}W(z.afterSanitizeShadowDOM,e,null)},Rt=function(e){let t=[{node:e,shadow:null}];for(;t.length>0;){let e=t.pop();if(e.shadow){Lt(e.shadow);continue}let n=e.node,r=S(n)===mQ.element,i=h(n);if(i)for(let e=i.length-1;e>=0;--e)t.push({node:i[e],shadow:null});if(r){let e=b?b(n):null;if(typeof e==`string`&&$e(e)===`template`){let e=n.content;Ct(e)&&t.push({node:e,shadow:null})}}if(r){let e=_(n);Ct(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,a=null,o=null,s=null;if(Ue=!e,Ue&&(e=`\x3C!-->`),typeof e!=`string`&&!wt(e)&&(e=BZ(e),typeof e!=`string`))throw PZ(`dirty is not a string, aborting`);if(!t.isSupported)return e;be?(oe=xe,ce=Se):rt(n),(z.uponSanitizeElement.length>0||z.uponSanitizeAttribute.length>0)&&(oe=zZ(oe)),z.uponSanitizeAttribute.length>0&&(ce=zZ(ce)),t.removed=[];let c=je&&typeof e!=`string`&&wt(e);if(c){_t(e);let t=C(e);if(typeof t==`string`){let n=$e(t);if(!oe[n]||de[n])throw ft(e),PZ(`root node is forbidden and cannot be sanitized in-place`)}if(St(e))throw ft(e),PZ(`root node is clobbered and cannot be sanitized in-place`);try{Rt(e)}catch(t){throw ft(e),t}}else if(wt(e))i=vt(`\x3C!---->`),a=i.ownerDocument.importNode(e,!0),a.nodeType===mQ.element&&a.nodeName===`BODY`||a.nodeName===`HTML`?i=a:i.appendChild(a),Rt(a);else{if(!we&&!_e&&!ye&&e.indexOf(`<`)===-1)return w&&Ee?A(e):e;if(i=vt(e),!i)return we?null:Ee?T:``}i&&Ce&&ut(i.firstChild);let l=c?e:i;try{let e=yt(l);for(;o=e.nextNode();)At(o,l),It(o),Ct(o.content)&&Lt(o.content)}catch(n){throw c&&(ft(e),hZ(t.removed,e=>{e.element&&ht(e.element)})),n}if(c)return hZ(t.removed,e=>{e.element&&ht(e.element)}),_e&&xt(e),e;if(we){if(_e&&xt(i),Te)for(s=I.call(i.ownerDocument);i.firstChild;)s.appendChild(i.firstChild);else s=i;return(ce.shadowroot||ce.shadowrootmode)&&(s=R.call(r,s,!0)),s}let u=ye?i.outerHTML:i.innerHTML;return ye&&oe[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&NZ(cQ,i.ownerDocument.doctype.name)&&(u=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
124
124
  `+u),_e&&(u=bt(u)),w&&Ee?A(u):u},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};rt(e),be=!0,xe=oe,Se=ce},t.clearConfig=function(){et=null,be=!1,xe=null,Se=null,w=E,T=``},t.isValidAttribute=function(e,t,n){et||rt({});let r=$e(e),i=$e(t);return jt(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&jZ(z,e)&&vZ(z[e],t)},t.removeHook=function(e,t){if(jZ(z,e)){if(t!==void 0){let n=gZ(z[e],t);return n===-1?void 0:yZ(z[e],n,1)[0]}return _Z(z[e])}},t.removeHooks=function(e){jZ(z,e)&&(z[e]=[])},t.removeAllHooks=function(){z=bQ()},t}var wQ=CQ();function TQ(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var EQ=TQ();function DQ(e){EQ=e}var OQ={exec:()=>null};function kQ(e){let t=[];return n=>{let r=Math.max(0,Math.min(3,n-1)),i=t[r];return i||(i=e(r),t[r]=i),i}}function AQ(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(MQ.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var jQ=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),MQ={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:kQ(e=>RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:kQ(e=>RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:kQ(e=>RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:kQ(e=>RegExp(`^ {0,${e}}#`)),htmlBeginRegex:kQ(e=>RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`,`i`)),blockquoteBeginRegex:kQ(e=>RegExp(`^ {0,${e}}>`))},NQ=/^(?:[ \t]*(?:\n|$))+/,PQ=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,FQ=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,IQ=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,LQ=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,RQ=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,zQ=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,BQ=AQ(zQ).replace(/bull/g,RQ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),VQ=AQ(zQ).replace(/bull/g,RQ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),HQ=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,UQ=/^[^\n]+/,WQ=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,GQ=AQ(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,WQ).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),KQ=AQ(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,RQ).getRegex(),qQ=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,JQ=/\x3C!--(?:-?>|[\s\S]*?(?:-->|$))/,YQ=AQ(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,JQ).replace(`tag`,qQ).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),XQ=e=>AQ(HQ).replace(`hr`,IQ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,e).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,qQ).getRegex(),ZQ=XQ(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),QQ=XQ(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),$Q={blockquote:AQ(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,QQ).getRegex(),code:PQ,def:GQ,fences:FQ,heading:LQ,hr:IQ,html:YQ,lheading:BQ,list:KQ,newline:NQ,paragraph:ZQ,table:OQ,text:UQ},e$=AQ(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,IQ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,qQ).getRegex(),t$={...$Q,lheading:VQ,table:e$,paragraph:AQ(HQ).replace(`hr`,IQ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,e$).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,qQ).getRegex()},n$={...$Q,html:AQ(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,JQ).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:OQ,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:AQ(HQ).replace(`hr`,IQ).replace(`heading`,` *#{1,6} *[^
125
125
  ]`).replace(`lheading`,BQ).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},r$=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,i$=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,a$=/^( {2,}|\\)\n(?!\s*$)/,o$=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,s$=/[\p{P}\p{S}]/u,c$=/[\s\p{P}\p{S}]/u,l$=/[^\s\p{P}\p{S}]/u,u$=AQ(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,c$).getRegex(),d$=/[\p{Pi}\p{Ps}"']/u,f$=/(?!~)[\p{P}\p{S}]/u,p$=/(?!~)[\s\p{P}\p{S}]/u,m$=/(?:[^\s\p{P}\p{S}]|~)/u,h$=AQ(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,jQ?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),g$=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,_$=AQ(g$,`u`).replace(/punct/g,s$).getRegex(),v$=AQ(g$,`u`).replace(/punct/g,f$).getRegex(),y$=AQ(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/,`u`).replace(/openQuote/g,d$).replace(/punct/g,s$).getRegex(),b$=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,x$=AQ(b$,`gu`).replace(/notPunctSpace/g,l$).replace(/punctSpace/g,c$).replace(/punct/g,s$).getRegex(),S$=AQ(b$,`gu`).replace(/notPunctSpace/g,m$).replace(/punctSpace/g,p$).replace(/punct/g,f$).getRegex(),C$=AQ(`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,l$).replace(/punctSpace/g,c$).replace(/punct/g,s$).getRegex(),w$=AQ(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,l$).replace(/punctSpace/g,c$).replace(/punct/g,s$).getRegex(),T$=AQ(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,l$).replace(/punctSpace/g,c$).replace(/punct/g,s$).getRegex(),E$=AQ(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,s$).getRegex(),D$=AQ(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,l$).replace(/punctSpace/g,c$).replace(/punct/g,s$).getRegex(),O$=AQ(/\\(punct)/,`gu`).replace(/punct/g,s$).getRegex(),k$=AQ(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),A$=AQ(JQ).replace(`(?:-->|$)`,`-->`).getRegex(),j$=AQ(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,A$).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),M$=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,N$=AQ(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,M$).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),P$=AQ(/^!?\[(label)\]\[(ref)\]/).replace(`label`,M$).replace(`ref`,WQ).getRegex(),F$=AQ(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,WQ).getRegex(),I$=AQ(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,P$).replace(`nolink`,F$).getRegex(),L$=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,R$={_backpedal:OQ,anyPunctuation:O$,autolink:k$,blockSkip:h$,br:a$,code:i$,del:OQ,delLDelim:OQ,delRDelim:OQ,emStrongLDelim:_$,emStrongRDelimAst:x$,emStrongRDelimUnd:w$,escape:r$,link:N$,nolink:F$,punctuation:u$,reflink:P$,reflinkSearch:I$,tag:j$,text:o$,url:OQ},z$={...R$,emStrongLDelim:y$,emStrongRDelimAst:C$,emStrongRDelimUnd:T$,link:AQ(/^!?\[(label)\]\((.*?)\)/).replace(`label`,M$).getRegex(),reflink:AQ(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,M$).getRegex()},B$={...R$,emStrongRDelimAst:S$,emStrongLDelim:v$,delLDelim:E$,delRDelim:D$,url:AQ(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,L$).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:AQ(/^(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,L$).getRegex()},V$={...B$,br:AQ(a$).replace(`{2,}`,`*`).getRegex(),text:AQ(B$.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},H$={normal:$Q,gfm:t$,pedantic:n$},U$={normal:R$,gfm:B$,breaks:V$,pedantic:z$},W$={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},G$=e=>W$[e];function K$(e,t){if(t){if(MQ.escapeTest.test(e))return e.replace(MQ.escapeReplace,G$)}else if(MQ.escapeTestNoEncode.test(e))return e.replace(MQ.escapeReplaceNoEncode,G$);return e}function q$(e){try{e=encodeURI(e).replace(MQ.percentDecode,`%`)}catch{return null}return e}function J$(e,t){let n=e.replace(MQ.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(MQ.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t){if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``)}for(;r<n.length;r++)n[r]=n[r].trim().replace(MQ.slashPipe,`|`);return n}function Y$(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function X$(e){let t=e.split(`
@@ -200,9 +200,9 @@ WARNING: This link could potentially be dangerous`)){let e=window.open();if(e){t
200
200
  `)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh()),j6&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),n=this._model.finalSelectionStart,r=this._model.finalSelectionEnd;return!n||!r||!t?!1:this._areCoordsInSelection(t,n,r)}isCellInSelection(e,t){let n=this._model.finalSelectionStart,r=this._model.finalSelectionEnd;return!n||!r?!1:this._areCoordsInSelection([e,t],n,r)}_areCoordsInSelection(e,t,n){return e[1]>t[1]&&e[1]<n[1]||t[1]===n[1]&&e[1]===t[1]&&e[0]>=t[0]&&e[0]<n[0]||t[1]<n[1]&&e[1]===n[1]&&e[0]<n[0]||t[1]<n[1]&&e[1]===t[1]&&e[0]>=t[0]}_selectWordAtCursor(e,t){let n=this._linkifier.currentLink?.link?.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=e8(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let r=this._getMouseBufferCoords(e);return r?(this._selectWordAt(r,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=h6(this._coreBrowserService.window,e,this._screenElement)[1],n=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=n?0:(t>n&&(t-=n),t=Math.min(Math.max(t,-t8),t8),t/=t8,t/Math.abs(t)+Math.round(t*(n8-1)))}shouldForceSelection(e){return D6?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(`mousemove`,this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(`mouseup`,this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),r8)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(`mousemove`,this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(`mouseup`,this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(D6&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(e),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let n=this._bufferService.buffer;if(this._model.selectionEnd[1]<n.lines.length){let e=n.lines.get(this._model.selectionEnd[1]);e&&e.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!t||t[0]!==this._model.selectionEnd[0]||t[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let e=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<i8&&e.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let t=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(t&&t[0]!==void 0&&t[1]!==void 0){let e=B6(t[0]-1,t[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(e,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,n=!!e&&!!t&&(e[0]!==t[0]||e[1]!==t[1]);if(!n){this._oldHasSelection&&this._fireOnSelectionChange(e,t,n);return}!e||!t||(!this._oldSelectionStart||!this._oldSelectionEnd||e[0]!==this._oldSelectionStart[0]||e[1]!==this._oldSelectionStart[1]||t[0]!==this._oldSelectionEnd[0]||t[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(e,t,n)}_fireOnSelectionChange(e,t,n){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=n,this._onSelectionChange.fire()}_handleBufferActivate(e){this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(e,t){let n=t;for(let r=0;t>=r;r++){let i=e.loadCell(r,this._workCell).getChars().length;this._workCell.getWidth()===0?n--:i>1&&t!==r&&(n+=i-1)}return n}setSelection(e,t,n){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=n,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,n=!0,r=!0){if(e[0]>=this._bufferService.cols)return;let i=this._bufferService.buffer,a=i.lines.get(e[1]);if(!a)return;let o=i.translateBufferLineToString(e[1],!1),s=this._convertViewportColToCharacterIndex(a,e[0]),c=s,l=e[0]-s,u=0,d=0,f=0,p=0;if(o.charAt(s)===` `){for(;s>0&&o.charAt(s-1)===` `;)s--;for(;c<o.length&&o.charAt(c+1)===` `;)c++}else{let t=e[0],n=e[0];a.getWidth(t)===0&&(u++,t--),a.getWidth(n)===2&&(d++,n++);let r=a.getString(n).length;for(r>1&&(p+=r-1,c+=r-1);t>0&&s>0&&!this._isCharWordSeparator(a.loadCell(t-1,this._workCell));){a.loadCell(t-1,this._workCell);let e=this._workCell.getChars().length;this._workCell.getWidth()===0?(u++,t--):e>1&&(f+=e-1,s-=e-1),s--,t--}for(;n<a.length&&c+1<o.length&&!this._isCharWordSeparator(a.loadCell(n+1,this._workCell));){a.loadCell(n+1,this._workCell);let e=this._workCell.getChars().length;this._workCell.getWidth()===2?(d++,n++):e>1&&(p+=e-1,c+=e-1),c++,n++}}c++;let m=s+l-u+f,h=Math.min(this._bufferService.cols,c-s+u+d-f-p);if(!(!t&&o.slice(s,c).trim()===``)){if(n&&m===0&&a.getCodePoint(0)!==32){let t=i.lines.get(e[1]-1);if(t&&a.isWrapped&&t.getCodePoint(this._bufferService.cols-1)!==32){let t=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(t){let e=this._bufferService.cols-t.start;m-=e,h+=e}}}if(r&&m+h===this._bufferService.cols&&a.getCodePoint(this._bufferService.cols-1)!==32){let t=i.lines.get(e[1]+1);if(t?.isWrapped&&t.getCodePoint(0)!==32){let t=this._getWordAt([0,e[1]+1],!1,!1,!0);t&&(h+=t.length)}}return{start:m,length:h}}}_selectWordAt(e,t){let n=this._getWordAt(e,t);if(n){for(;n.start<0;)n.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[n.start,e[1]],this._model.selectionStartLength=n.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let n=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,n--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,n++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,n]}}_isCharWordSeparator(e){return e.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),n={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=e8(n,this._bufferService.cols)}};o8=O1([k1(3,n0),k1(4,i0),k1(5,g0),k1(6,c0),k1(7,_0),k1(8,h0)],o8);var s8=class{constructor(){this._data={}}set(e,t,n){this._data[e]||(this._data[e]={}),this._data[e][t]=n}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},c8=class{constructor(){this._color=new s8,this._css=new s8}setCss(e,t,n){this._css.set(e,t,n)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,n){this._color.set(e,t,n)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},l8=Object.freeze((()=>{let e=[L3.toColor(`#2e3436`),L3.toColor(`#cc0000`),L3.toColor(`#4e9a06`),L3.toColor(`#c4a000`),L3.toColor(`#3465a4`),L3.toColor(`#75507b`),L3.toColor(`#06989a`),L3.toColor(`#d3d7cf`),L3.toColor(`#555753`),L3.toColor(`#ef2929`),L3.toColor(`#8ae234`),L3.toColor(`#fce94f`),L3.toColor(`#729fcf`),L3.toColor(`#ad7fa8`),L3.toColor(`#34e2e2`),L3.toColor(`#eeeeec`)],t=[0,95,135,175,215,255];for(let n=0;n<216;n++){let r=t[n/36%6|0],i=t[n/6%6|0],a=t[n%6];e.push({css:F3.toCss(r,i,a),rgba:F3.toRgba(r,i,a)})}for(let t=0;t<24;t++){let n=8+t*10;e.push({css:F3.toCss(n,n,n),rgba:F3.toRgba(n,n,n)})}return e})()),u8=L3.toColor(`#ffffff`),d8=L3.toColor(`#000000`),f8=L3.toColor(`#ffffff`),p8=d8,m8={css:`rgba(255, 255, 255, 0.3)`,rgba:4294967117},h8=u8,g8=class extends G0{constructor(e){super(),this._optionsService=e,this._contrastCache=new c8,this._halfContrastCache=new c8,this._onChangeColors=this._register(new Q),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:u8,background:d8,cursor:f8,cursorAccent:p8,selectionForeground:void 0,selectionBackgroundTransparent:m8,selectionBackgroundOpaque:I3.blend(d8,m8),selectionInactiveBackgroundTransparent:m8,selectionInactiveBackgroundOpaque:I3.blend(d8,m8),scrollbarSliderBackground:I3.opacity(u8,.2),scrollbarSliderHoverBackground:I3.opacity(u8,.4),scrollbarSliderActiveBackground:I3.opacity(u8,.5),overviewRulerBorder:u8,ansi:l8.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange(`minimumContrastRatio`,()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange(`theme`,()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=_8(e.foreground,u8),t.background=_8(e.background,d8),t.cursor=I3.blend(t.background,_8(e.cursor,f8)),t.cursorAccent=I3.blend(t.background,_8(e.cursorAccent,p8)),t.selectionBackgroundTransparent=_8(e.selectionBackground,m8),t.selectionBackgroundOpaque=I3.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=_8(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=I3.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?_8(e.selectionForeground,P3):void 0,t.selectionForeground===P3&&(t.selectionForeground=void 0),I3.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=I3.opacity(t.selectionBackgroundTransparent,.3)),I3.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=I3.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=_8(e.scrollbarSliderBackground,I3.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=_8(e.scrollbarSliderHoverBackground,I3.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=_8(e.scrollbarSliderActiveBackground,I3.opacity(t.foreground,.5)),t.overviewRulerBorder=_8(e.overviewRulerBorder,h8),t.ansi=l8.slice(),t.ansi[0]=_8(e.black,l8[0]),t.ansi[1]=_8(e.red,l8[1]),t.ansi[2]=_8(e.green,l8[2]),t.ansi[3]=_8(e.yellow,l8[3]),t.ansi[4]=_8(e.blue,l8[4]),t.ansi[5]=_8(e.magenta,l8[5]),t.ansi[6]=_8(e.cyan,l8[6]),t.ansi[7]=_8(e.white,l8[7]),t.ansi[8]=_8(e.brightBlack,l8[8]),t.ansi[9]=_8(e.brightRed,l8[9]),t.ansi[10]=_8(e.brightGreen,l8[10]),t.ansi[11]=_8(e.brightYellow,l8[11]),t.ansi[12]=_8(e.brightBlue,l8[12]),t.ansi[13]=_8(e.brightMagenta,l8[13]),t.ansi[14]=_8(e.brightCyan,l8[14]),t.ansi[15]=_8(e.brightWhite,l8[15]),e.extendedAnsi){let n=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let r=0;r<n;r++)t.ansi[r+16]=_8(e.extendedAnsi[r],l8[r+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(e){this._restoreColor(e),this._onChangeColors.fire(this.colors)}_restoreColor(e){if(e===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(e){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[e]=this._restoreColors.ansi[e]}}modifyColors(e){e(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};g8=O1([k1(0,c0)],g8);function _8(e,t){if(e!==void 0)try{return L3.toColor(e)}catch{}return t}var v8=class{constructor(...e){this._entries=new Map;for(let[t,n]of e)this.set(t,n)}set(e,t){let n=this._entries.get(e);return this._entries.set(e,t),n}forEach(e){for(let[t,n]of this._entries.entries())e(t,n)}has(e){return this._entries.has(e)}get(e){return this._entries.get(e)}},y8=class{constructor(){this._services=new v8,this._services.set(o0,this)}setService(e,t){this._services.set(e,t)}getService(e){return this._services.get(e)}createInstance(e,...t){let n=$1(e).sort((e,t)=>e.index-t.index),r=[];for(let t of n){let n=this._services.get(t.id);if(!n)throw Error(`[createInstance] ${e.name} depends on UNKNOWN service ${t.id._id}.`);r.push(n)}let i=n.length>0?n[0].index:t.length;if(t.length!==i)throw Error(`[createInstance] First service dependency of ${e.name} at position ${i+1} conflicts with ${t.length} static arguments`);return new e(...t,...r)}},b8={trace:0,debug:1,info:2,warn:3,error:4,off:5},x8=`xterm.js: `,S8=class extends G0{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange(`logLevel`,()=>this._updateLogLevel())),C8=this}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=b8[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;t<e.length;t++)typeof e[t]==`function`&&(e[t]=e[t]())}_log(e,t,n){this._evalLazyOptionalParams(n),e.call(console,(this._optionsService.options.logger?``:x8)+t,...n)}trace(e,...t){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,e,t)}debug(e,...t){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,e,t)}info(e,...t){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,e,t)}warn(e,...t){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,e,t)}error(e,...t){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,e,t)}};S8=O1([k1(0,c0)],S8);var C8,w8=class extends G0{constructor(e){super(),this._maxLength=e,this.onDeleteEmitter=this._register(new Q),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new Q),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new Q),this.onTrim=this.onTrimEmitter.event,this._array=Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(e){if(this._maxLength===e)return;let t=Array(e);for(let n=0;n<Math.min(e,this.length);n++)t[n]=this._array[this._getCyclicIndex(n)];this._array=t,this._maxLength=e,this._startIndex=0}get length(){return this._length}set length(e){if(e>this._length)for(let t=this._length;t<e;t++)this._array[t]=void 0;this._length=e}get(e){return this._array[this._getCyclicIndex(e)]}set(e,t){this._array[this._getCyclicIndex(e)]=t}push(e){this._array[this._getCyclicIndex(this._length)]=e,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw Error(`Can only recycle when the buffer is full`);return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(e,t,...n){if(t){for(let n=e;n<this._length-t;n++)this._array[this._getCyclicIndex(n)]=this._array[this._getCyclicIndex(n+t)];this._length-=t,this.onDeleteEmitter.fire({index:e,amount:t})}for(let t=this._length-1;t>=e;t--)this._array[this._getCyclicIndex(t+n.length)]=this._array[this._getCyclicIndex(t)];for(let t=0;t<n.length;t++)this._array[this._getCyclicIndex(e+t)]=n[t];if(n.length&&this.onInsertEmitter.fire({index:e,amount:n.length}),this._length+n.length>this._maxLength){let e=this._length+n.length-this._maxLength;this._startIndex+=e,this._length=this._maxLength,this.onTrimEmitter.fire(e)}else this._length+=n.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,n){if(!(t<=0)){if(e<0||e>=this._length)throw Error(`start argument out of range`);if(e+n<0)throw Error(`Cannot shift elements in list beyond index 0`);if(n>0){for(let r=t-1;r>=0;r--)this.set(e+r+n,this.get(e+r));let r=e+t+n-this._length;if(r>0)for(this._length+=r;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let r=0;r<t;r++)this.set(e+r+n,this.get(e+r))}}_getCyclicIndex(e){return(this._startIndex+e)%this._maxLength}},T8=3,E8=Object.freeze(new q1),D8=0,O8=2,k8=class e{constructor(e,t,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*T8);let r=t||Y1.fromCharData([0,G1,1,0]);for(let t=0;t<e;++t)this.setCell(t,r);this.length=e}get(e){let t=this._data[e*T8+0],n=t&2097151;return[this._data[e*T8+1],t&2097152?this._combined[e]:n?V1(n):``,t>>22,t&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):n]}set(e,t){this._data[e*T8+1]=t[0],t[1].length>1?(this._combined[e]=t[1],this._data[e*T8+0]=e|2097152|t[2]<<22):this._data[e*T8+0]=t[1].charCodeAt(0)|t[2]<<22}getWidth(e){return this._data[e*T8+0]>>22}hasWidth(e){return this._data[e*T8+0]&12582912}getFg(e){return this._data[e*T8+1]}getBg(e){return this._data[e*T8+2]}hasContent(e){return this._data[e*T8+0]&4194303}getCodePoint(e){let t=this._data[e*T8+0];return t&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):t&2097151}isCombined(e){return this._data[e*T8+0]&2097152}getString(e){let t=this._data[e*T8+0];return t&2097152?this._combined[e]:t&2097151?V1(t&2097151):``}isProtected(e){return this._data[e*T8+2]&536870912}loadCell(e,t){return D8=e*T8,t.content=this._data[D8+0],t.fg=this._data[D8+1],t.bg=this._data[D8+2],t.content&2097152&&(t.combinedData=this._combined[e]),t.bg&268435456&&(t.extended=this._extendedAttrs[e]),t}setCell(e,t){t.content&2097152&&(this._combined[e]=t.combinedData),t.bg&268435456&&(this._extendedAttrs[e]=t.extended),this._data[e*T8+0]=t.content,this._data[e*T8+1]=t.fg,this._data[e*T8+2]=t.bg}setCellFromCodepoint(e,t,n,r){r.bg&268435456&&(this._extendedAttrs[e]=r.extended),this._data[e*T8+0]=t|n<<22,this._data[e*T8+1]=r.fg,this._data[e*T8+2]=r.bg}addCodepointToCell(e,t,n){let r=this._data[e*T8+0];r&2097152?this._combined[e]+=V1(t):r&2097151?(this._combined[e]=V1(r&2097151)+V1(t),r&=-2097152,r|=2097152):r=t|1<<22,n&&(r&=-12582913,r|=n<<22),this._data[e*T8+0]=r}insertCells(e,t,n){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length-e){let r=new Y1;for(let n=this.length-e-t-1;n>=0;--n)this.setCell(e+t+n,this.loadCell(e+n,r));for(let r=0;r<t;++r)this.setCell(e+r,n)}else for(let t=e;t<this.length;++t)this.setCell(t,n);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,n)}deleteCells(e,t,n){if(e%=this.length,t<this.length-e){let r=new Y1;for(let n=0;n<this.length-e-t;++n)this.setCell(e+n,this.loadCell(e+t+n,r));for(let e=this.length-t;e<this.length;++e)this.setCell(e,n)}else for(let t=e;t<this.length;++t)this.setCell(t,n);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,n)}replaceCells(e,t,n,r=!1){if(r){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length&&this.getWidth(t-1)===2&&!this.isProtected(t)&&this.setCellFromCodepoint(t,0,1,n);e<t&&e<this.length;)this.isProtected(e)||this.setCell(e,n),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t,0,1,n);e<t&&e<this.length;)this.setCell(e++,n)}resize(e,t){if(e===this.length)return this._data.length*4*O8<this._data.buffer.byteLength;let n=e*T8;if(e>this.length){if(this._data.buffer.byteLength>=n*4)this._data=new Uint32Array(this._data.buffer,0,n);else{let e=new Uint32Array(n);e.set(this._data),this._data=e}for(let n=this.length;n<e;++n)this.setCell(n,t)}else{this._data=this._data.subarray(0,n);let t=Object.keys(this._combined);for(let n=0;n<t.length;n++){let r=parseInt(t[n],10);r>=e&&delete this._combined[r]}let r=Object.keys(this._extendedAttrs);for(let t=0;t<r.length;t++){let n=parseInt(r[t],10);n>=e&&delete this._extendedAttrs[n]}}return this.length=e,n*4*O8<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*O8<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,t=!1){if(t){for(let t=0;t<this.length;++t)this.isProtected(t)||this.setCell(t,e);return}this._combined={},this._extendedAttrs={};for(let t=0;t<this.length;++t)this.setCell(t,e)}copyFrom(e){this.length===e.length?this._data.set(e._data):this._data=new Uint32Array(e._data),this.length=e.length,this._combined={};for(let t in e._combined)this._combined[t]=e._combined[t];this._extendedAttrs={};for(let t in e._extendedAttrs)this._extendedAttrs[t]=e._extendedAttrs[t];this.isWrapped=e.isWrapped}clone(){let t=new e(0);t._data=new Uint32Array(this._data),t.length=this.length;for(let e in this._combined)t._combined[e]=this._combined[e];for(let e in this._extendedAttrs)t._extendedAttrs[e]=this._extendedAttrs[e];return t.isWrapped=this.isWrapped,t}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*T8+0]&4194303)return e+(this._data[e*T8+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*T8+0]&4194303||this._data[e*T8+2]&50331648)return e+(this._data[e*T8+0]>>22);return 0}copyCellsFrom(e,t,n,r,i){let a=e._data;if(i)for(let i=r-1;i>=0;i--){for(let e=0;e<T8;e++)this._data[(n+i)*T8+e]=a[(t+i)*T8+e];a[(t+i)*T8+2]&268435456&&(this._extendedAttrs[n+i]=e._extendedAttrs[t+i])}else for(let i=0;i<r;i++){for(let e=0;e<T8;e++)this._data[(n+i)*T8+e]=a[(t+i)*T8+e];a[(t+i)*T8+2]&268435456&&(this._extendedAttrs[n+i]=e._extendedAttrs[t+i])}let o=Object.keys(e._combined);for(let r=0;r<o.length;r++){let i=parseInt(o[r],10);i>=t&&(this._combined[i-t+n]=e._combined[i])}}translateToString(e,t,n,r){t??=0,n??=this.length,e&&(n=Math.min(n,this.getTrimmedLength())),r&&(r.length=0);let i=``;for(;t<n;){let e=this._data[t*T8+0],n=e&2097151,a=e&2097152?this._combined[t]:n?V1(n):K1;if(i+=a,r)for(let e=0;e<a.length;++e)r.push(t);t+=e>>22||1}return r&&r.push(t),i}};function A8(e,t,n,r,i,a){let o=[];for(let s=0;s<e.length-1;s++){let c=s,l=e.get(++c);if(!l.isWrapped)continue;let u=[e.get(s)];for(;c<e.length&&l.isWrapped;)u.push(l),l=e.get(++c);if(!a&&r>=s&&r<c){s+=u.length-1;continue}let d=0,f=P8(u,d,t),p=1,m=0;for(;p<u.length;){let e=P8(u,p,t),r=e-m,a=n-f,o=Math.min(r,a);u[d].copyCellsFrom(u[p],m,f,o,!1),f+=o,f===n&&(d++,f=0),m+=o,m===e&&(p++,m=0),f===0&&d!==0&&u[d-1].getWidth(n-1)===2&&(u[d].copyCellsFrom(u[d-1],n-1,f++,1,!1),u[d-1].setCell(n-1,i))}u[d].replaceCells(f,n,i);let h=0;for(let e=u.length-1;e>0&&(e>d||u[e].getTrimmedLength()===0);e--)h++;h>0&&(o.push(s+u.length-h),o.push(h)),s+=u.length-1}return o}function j8(e,t){let n=[],r=0,i=t[r],a=0;for(let o=0;o<e.length;o++)if(i===o){let n=t[++r];e.onDeleteEmitter.fire({index:o-a,amount:n}),o+=n-1,a+=n,i=t[++r]}else n.push(o);return{layout:n,countRemoved:a}}function M8(e,t){let n=[];for(let r=0;r<t.length;r++)n.push(e.get(t[r]));for(let t=0;t<n.length;t++)e.set(t,n[t]);e.length=t.length}function N8(e,t,n){let r=[],i=e.map((n,r)=>P8(e,r,t)).reduce((e,t)=>e+t),a=0,o=0,s=0;for(;s<i;){if(i-s<n){r.push(i-s);break}a+=n;let c=P8(e,o,t);a>c&&(a-=c,o++);let l=e[o].getWidth(a-1)===2;l&&a--;let u=l?n-1:n;r.push(u),s+=u}return r}function P8(e,t,n){if(t===e.length-1)return e[t].getTrimmedLength();let r=!e[t].hasContent(n-1)&&e[t].getWidth(n-1)===1,i=e[t+1].getWidth(0)===2;return r&&i?n-1:n}var F8=class e{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=e._nextId++,this._onDispose=this.register(new Q),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),B0(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};F8._nextId=1;var I8=F8,L8={},R8=L8.B;L8[0]={"`":`◆`,a:`▒`,b:`␉`,c:`␌`,d:`␍`,e:`␊`,f:`°`,g:`±`,h:`␤`,i:`␋`,j:`┘`,k:`┐`,l:`┌`,m:`└`,n:`┼`,o:`⎺`,p:`⎻`,q:`─`,r:`⎼`,s:`⎽`,t:`├`,u:`┤`,v:`┴`,w:`┬`,x:`│`,y:`≤`,z:`≥`,"{":`π`,"|":`≠`,"}":`£`,"~":`·`},L8.A={"#":`£`},L8.B=void 0,L8[4]={"#":`£`,"@":`¾`,"[":`ij`,"\\":`½`,"]":`|`,"{":`¨`,"|":`f`,"}":`¼`,"~":`´`},L8.C=L8[5]={"[":`Ä`,"\\":`Ö`,"]":`Å`,"^":`Ü`,"`":`é`,"{":`ä`,"|":`ö`,"}":`å`,"~":`ü`},L8.R={"#":`£`,"@":`à`,"[":`°`,"\\":`ç`,"]":`§`,"{":`é`,"|":`ù`,"}":`è`,"~":`¨`},L8.Q={"@":`à`,"[":`â`,"\\":`ç`,"]":`ê`,"^":`î`,"`":`ô`,"{":`é`,"|":`ù`,"}":`è`,"~":`û`},L8.K={"@":`§`,"[":`Ä`,"\\":`Ö`,"]":`Ü`,"{":`ä`,"|":`ö`,"}":`ü`,"~":`ß`},L8.Y={"#":`£`,"@":`§`,"[":`°`,"\\":`ç`,"]":`é`,"`":`ù`,"{":`à`,"|":`ò`,"}":`è`,"~":`ì`},L8.E=L8[6]={"@":`Ä`,"[":`Æ`,"\\":`Ø`,"]":`Å`,"^":`Ü`,"`":`ä`,"{":`æ`,"|":`ø`,"}":`å`,"~":`ü`},L8.Z={"#":`£`,"@":`§`,"[":`¡`,"\\":`Ñ`,"]":`¿`,"{":`°`,"|":`ñ`,"}":`ç`},L8.H=L8[7]={"@":`É`,"[":`Ä`,"\\":`Ö`,"]":`Å`,"^":`Ü`,"`":`é`,"{":`ä`,"|":`ö`,"}":`å`,"~":`ü`},L8[`=`]={"#":`ù`,"@":`à`,"[":`é`,"\\":`ç`,"]":`ê`,"^":`î`,_:`è`,"`":`ô`,"{":`ä`,"|":`ö`,"}":`ü`,"~":`û`};var z8=4294967295,B8=class{constructor(e,t,n){this._hasScrollback=e,this._optionsService=t,this._bufferService=n,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=E8.clone(),this.savedCharset=R8,this.markers=[],this._nullCell=Y1.fromCharData([0,G1,1,0]),this._whitespaceCell=Y1.fromCharData([0,K1,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new I6,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new w8(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new J1),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new J1),this._whitespaceCell}getBlankLine(e,t){return new k8(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&e<this._rows}_getCorrectBufferLength(e){if(!this._hasScrollback)return e;let t=e+this._optionsService.rawOptions.scrollback;return t>z8?z8:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=E8);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new w8(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let n=this.getNullCell(E8),r=0,i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols<e)for(let t=0;t<this.lines.length;t++)r+=+this.lines.get(t).resize(e,n);let a=0;if(this._rows<t)for(let r=this._rows;r<t;r++)this.lines.length<t+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new k8(e,n)):this.ybase>0&&this.lines.length<=this.ybase+this.y+a+1?(this.ybase--,a++,this.ydisp>0&&this.ydisp--):this.lines.push(new k8(e,n)));else for(let e=this._rows;e>t;e--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i<this.lines.maxLength){let e=this.lines.length-i;e>0&&(this.lines.trimStart(e),this.ybase=Math.max(this.ybase-e,0),this.ydisp=Math.max(this.ydisp-e,0),this.savedY=Math.max(this.savedY-e,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),a&&(this.y+=a),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let t=0;t<this.lines.length;t++)r+=+this.lines.get(t).resize(e,n);this._cols=e,this._rows=t,this._memoryCleanupQueue.clear(),r>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition<this.lines.length;)if(t+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),t>100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend===`conpty`&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let n=this._optionsService.rawOptions.reflowCursorLine,r=A8(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(E8),n);if(r.length>0){let n=j8(this.lines,r);M8(this.lines,n.layout),this._reflowLargerAdjustViewport(e,t,n.countRemoved)}}_reflowLargerAdjustViewport(e,t,n){let r=this.getNullCell(E8),i=n;for(;i-->0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<t&&this.lines.push(new k8(e,r))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-n,0)}_reflowSmaller(e,t){let n=this._optionsService.rawOptions.reflowCursorLine,r=this.getNullCell(E8),i=[],a=0;for(let o=this.lines.length-1;o>=0;o--){let s=this.lines.get(o);if(!s||!s.isWrapped&&s.getTrimmedLength()<=e)continue;let c=[s];for(;s.isWrapped&&o>0;)s=this.lines.get(--o),c.unshift(s);if(!n){let e=this.ybase+this.y;if(e>=o&&e<o+c.length)continue}let l=c[c.length-1].getTrimmedLength(),u=N8(c,this._cols,e),d=u.length-c.length,f;f=this.ybase===0&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+d):Math.max(0,this.lines.length-this.lines.maxLength+d);let p=[];for(let e=0;e<d;e++){let e=this.getBlankLine(E8,!0);p.push(e)}p.length>0&&(i.push({start:o+c.length+a,newLines:p}),a+=p.length),c.push(...p);let m=u.length-1,h=u[m];h===0&&(m--,h=u[m]);let g=c.length-d-1,_=l;for(;g>=0;){let e=Math.min(_,h);if(c[m]===void 0)break;c[m].copyCellsFrom(c[g],_-e,h-e,e,!0),h-=e,h===0&&(m--,h=u[m]),_-=e,_===0&&(g--,_=P8(c,Math.max(g,0),this._cols))}for(let t=0;t<c.length;t++)u[t]<e&&c[t].setCell(u[t],r);let v=d-f;for(;v-->0;)this.ybase===0?this.y<t-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+a)-t&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+d,this.ybase+t-1)}if(i.length>0){let e=[],t=[];for(let e=0;e<this.lines.length;e++)t.push(this.lines.get(e));let n=this.lines.length,r=n-1,o=0,s=i[o];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+a);let c=0;for(let l=Math.min(this.lines.maxLength-1,n+a-1);l>=0;l--)if(s&&s.start>r+c){for(let e=s.newLines.length-1;e>=0;e--)this.lines.set(l--,s.newLines[e]);l++,e.push({index:r+1,amount:s.newLines.length}),c+=s.newLines.length,s=i[++o]}else this.lines.set(l,t[r--]);let l=0;for(let t=e.length-1;t>=0;t--)e[t].index+=l,this.lines.onInsertEmitter.fire(e[t]),l+=e[t].amount;let u=Math.max(0,n+a-this.lines.maxLength);u>0&&this.lines.onTrimEmitter.fire(u)}}translateBufferLineToString(e,t,n=0,r){let i=this.lines.get(e);return i?i.translateToString(t,n,r):``}getWrappedRangeForLine(e){let t=e,n=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;n+1<this.lines.length&&this.lines.get(n+1).isWrapped;)n++;return{first:t,last:n}}setupTabStops(e){for(e==null?(this.tabs={},e=0):this.tabs[e]||(e=this.prevStop(e));e<this._cols;e+=this._optionsService.rawOptions.tabStopWidth)this.tabs[e]=!0}prevStop(e){for(e??=this.x;!this.tabs[--e]&&e>0;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e??=this.x;!this.tabs[++e]&&e<this._cols;);return e>=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].line===e&&(this.markers[t].dispose(),this.markers.splice(t--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].dispose();this.markers.length=0,this._isClearing=!1}addMarker(e){let t=new I8(e);return this.markers.push(t),t.register(this.lines.onTrim(e=>{t.line-=e,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(e=>{t.line>=e.index&&(t.line+=e.amount)})),t.register(this.lines.onDelete(e=>{t.line>=e.index&&t.line<e.index+e.amount&&t.dispose(),t.line>e.index&&(t.line-=e.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},V8=class extends G0{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new Q),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange(`scrollback`,()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange(`tabStopWidth`,()=>this.setupTabStops()))}reset(){this._normal=new B8(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new B8(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},H8=2,U8=1,W8=class extends G0{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new Q),this.onResize=this._onResize.event,this._onScroll=this._register(new Q),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,H8),this.rows=Math.max(e.rawOptions.rows||0,U8),this.buffers=this._register(new V8(e,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let n=this.cols!==e,r=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:n,rowsChanged:r})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let n=this.buffer,r;r=this._cachedBlankLine,(!r||r.length!==this.cols||r.getFg(0)!==e.fg||r.getBg(0)!==e.bg)&&(r=n.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;let i=n.ybase+n.scrollTop,a=n.ybase+n.scrollBottom;if(n.scrollTop===0){let e=n.lines.isFull;a===n.lines.length-1?e?n.lines.recycle().copyFrom(r):n.lines.push(r.clone()):n.lines.splice(a+1,0,r.clone()),e?this.isUserScrolling&&(n.ydisp=Math.max(n.ydisp-1,0)):(n.ybase++,this.isUserScrolling||n.ydisp++)}else{let e=a-i+1;n.lines.shiftElements(i+1,e-1,-1),n.lines.set(a,r.clone())}this.isUserScrolling||(n.ydisp=n.ybase),this._onScroll.fire(n.ydisp)}scrollLines(e,t){let n=this.buffer;if(e<0){if(n.ydisp===0)return;this.isUserScrolling=!0}else e+n.ydisp>=n.ybase&&(this.isUserScrolling=!1);let r=n.ydisp;n.ydisp=Math.max(Math.min(n.ydisp+e,n.ybase),0),r!==n.ydisp&&(t||this._onScroll.fire(n.ydisp))}};W8=O1([k1(0,c0)],W8);var G8={cols:80,rows:24,cursorBlink:!1,cursorStyle:`block`,cursorWidth:1,cursorInactiveStyle:`outline`,customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:`alt`,fastScrollSensitivity:5,fontFamily:`monospace`,fontSize:15,fontWeight:`normal`,fontWeightBold:`bold`,ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:`info`,logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:D6,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:` ()[]{}',"\``,altClickMovesCursor:!0,convertEol:!1,termName:`xterm`,cancelEvents:!1,overviewRuler:{}},K8=[`normal`,`bold`,`100`,`200`,`300`,`400`,`500`,`600`,`700`,`800`,`900`],q8=class extends G0{constructor(e){super(),this._onOptionChange=this._register(new Q),this.onOptionChange=this._onOptionChange.event;let t={...G8};for(let n in e)if(n in t)try{let r=e[n];t[n]=this._sanitizeAndValidateOption(n,r)}catch(e){console.error(e)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register(H0(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(n=>{n===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(n=>{e.indexOf(n)!==-1&&t()})}_setupOptions(){let e=e=>{if(!(e in G8))throw Error(`No option with key "${e}"`);return this.rawOptions[e]},t=(e,t)=>{if(!(e in G8))throw Error(`No option with key "${e}"`);t=this._sanitizeAndValidateOption(e,t),this.rawOptions[e]!==t&&(this.rawOptions[e]=t,this._onOptionChange.fire(e))};for(let n in this.rawOptions){let r={get:e.bind(this,n),set:t.bind(this,n)};Object.defineProperty(this.options,n,r)}}_sanitizeAndValidateOption(e,t){switch(e){case`cursorStyle`:if(t||=G8[e],!J8(t))throw Error(`"${t}" is not a valid value for ${e}`);break;case`wordSeparator`:t||=G8[e];break;case`fontWeight`:case`fontWeightBold`:if(typeof t==`number`&&1<=t&&t<=1e3)break;t=K8.includes(t)?t:G8[e];break;case`cursorWidth`:t=Math.floor(t);case`lineHeight`:case`tabStopWidth`:if(t<1)throw Error(`${e} cannot be less than 1, value: ${t}`);break;case`minimumContrastRatio`:t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case`scrollback`:if(t=Math.min(t,4294967295),t<0)throw Error(`${e} cannot be less than 0, value: ${t}`);break;case`fastScrollSensitivity`:case`scrollSensitivity`:if(t<=0)throw Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case`rows`:case`cols`:if(!t&&t!==0)throw Error(`${e} must be numeric, value: ${t}`);break;case`windowsPty`:t??={}}return t}};function J8(e){return e===`block`||e===`underline`||e===`bar`}function Y8(e,t=5){if(typeof e!=`object`)return e;let n=Array.isArray(e)?[]:{};for(let r in e)n[r]=t<=1?e[r]:e[r]&&Y8(e[r],t-1);return n}var X8=Object.freeze({insertMode:!1}),Z8=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),Q8=class extends G0{constructor(e,t,n){super(),this._bufferService=e,this._logService=t,this._optionsService=n,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new Q),this.onData=this._onData.event,this._onUserInput=this._register(new Q),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new Q),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new Q),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Y8(X8),this.decPrivateModes=Y8(Z8)}reset(){this.modes=Y8(X8),this.decPrivateModes=Y8(Z8)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let n=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&n.ybase!==n.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace(`sending data (codes)`,()=>e.split(``).map(e=>e.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace(`sending binary (codes)`,()=>e.split(``).map(e=>e.charCodeAt(0))),this._onBinary.fire(e))}};Q8=O1([k1(0,n0),k1(1,s0),k1(2,c0)],Q8);var $8={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>e.action!==32||e.button!==3},ANY:{events:31,restrict:e=>!0}};function e5(e,t){let n=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(n|=64,n|=e.action):(n|=e.button&3,e.button&4&&(n|=64),e.button&8&&(n|=128),e.action===32?n|=32:e.action===0&&!t&&(n|=3)),n}var t5=String.fromCharCode,n5={DEFAULT:e=>{let t=[e5(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?``:`\x1B[M${t5(t[0])}${t5(t[1])}${t5(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?`m`:`M`;return`\x1B[<${e5(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?`m`:`M`;return`\x1B[<${e5(e,!0)};${e.x};${e.y}${t}`}},r5=class extends G0{constructor(e,t,n){super(),this._bufferService=e,this._coreService=t,this._optionsService=n,this._protocols={},this._encodings={},this._activeProtocol=``,this._activeEncoding=``,this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new Q),this.onProtocolChange=this._onProtocolChange.event;for(let e of Object.keys($8))this.addProtocol(e,$8[e]);for(let e of Object.keys(n5))this.addEncoding(e,n5[e]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol=`NONE`,this.activeEncoding=`DEFAULT`,this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,n){if(e.deltaY===0||e.shiftKey||t===void 0||n===void 0)return 0;let r=t/n,i=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(i/=r+0,Math.abs(e.deltaY)<50&&(i*=.3),this._wheelPartialScroll+=i,i=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(i*=this._bufferService.rows),i}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding===`SGR_PIXELS`))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding===`DEFAULT`?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,n){if(n){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift}};r5=O1([k1(0,n0),k1(1,i0),k1(2,c0)],r5);var i5=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],a5=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],o5;function s5(e,t){let n=0,r=t.length-1,i;if(e<t[0][0]||e>t[r][1])return!1;for(;r>=n;)if(i=n+r>>1,e>t[i][1])n=i+1;else if(e<t[i][0])r=i-1;else return!0;return!1}var c5=class{constructor(){if(this.version=`6`,!o5){o5=new Uint8Array(65536),o5.fill(1),o5[0]=0,o5.fill(0,1,32),o5.fill(0,127,160),o5.fill(2,4352,4448),o5[9001]=2,o5[9002]=2,o5.fill(2,11904,42192),o5[12351]=1,o5.fill(2,44032,55204),o5.fill(2,63744,64256),o5.fill(2,65040,65050),o5.fill(2,65072,65136),o5.fill(2,65280,65377),o5.fill(2,65504,65511);for(let e=0;e<i5.length;++e)o5.fill(0,i5[e][0],i5[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?o5[e]:s5(e,a5)?0:e>=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let n=this.wcwidth(e),r=n===0&&t!==0;if(r){let e=l5.extractWidth(t);e===0?r=!1:e>n&&(n=e)}return l5.createPropertyValue(0,n,r)}},l5=class e{constructor(){this._providers=Object.create(null),this._active=``,this._onChange=new Q,this.onChange=this._onChange.event;let e=new c5;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return!!(e&1)}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,t,n=!1){return(e&16777215)<<3|(t&3)<<1|!!n}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(t){let n=0,r=0,i=t.length;for(let a=0;a<i;++a){let o=t.charCodeAt(a);if(55296<=o&&o<=56319){if(++a>=i)return n+this.wcwidth(o);let e=t.charCodeAt(a);56320<=e&&e<=57343?o=(o-55296)*1024+e-56320+65536:n+=this.wcwidth(e)}let s=this.charProperties(o,r),c=e.extractWidth(s);e.extractShouldJoin(s)&&(c-=e.extractWidth(r)),n+=c,r=s}return n}charProperties(e,t){return this._activeProvider.charProperties(e,t)}},u5=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function d5(e){let t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1)?.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&t&&(n.isWrapped=t[3]!==0&&t[3]!==32)}var f5=2147483647,p5=256,m5=class e{constructor(e=32,t=32){if(this.maxLength=e,this.maxSubParamsLength=t,t>p5)throw Error(`maxSubParamsLength must not be greater than 256`);this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let n=new e;if(!t.length)return n;for(let e=+!!Array.isArray(t[0]);e<t.length;++e){let r=t[e];if(Array.isArray(r))for(let e=0;e<r.length;++e)n.addSubParam(r[e]);else n.addParam(r)}return n}clone(){let t=new e(this.maxLength,this.maxSubParamsLength);return t.params.set(this.params),t.length=this.length,t._subParams.set(this._subParams),t._subParamsLength=this._subParamsLength,t._subParamsIdx.set(this._subParamsIdx),t._rejectDigits=this._rejectDigits,t._rejectSubDigits=this._rejectSubDigits,t._digitIsSub=this._digitIsSub,t}toArray(){let e=[];for(let t=0;t<this.length;++t){e.push(this.params[t]);let n=this._subParamsIdx[t]>>8,r=this._subParamsIdx[t]&255;r-n>0&&e.push(Array.prototype.slice.call(this._subParams,n,r))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw Error(`values lesser than -1 are not allowed`);this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>f5?f5:e}addSubParam(e){if(this._digitIsSub=!0,this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw Error(`values lesser than -1 are not allowed`);this._subParams[this._subParamsLength++]=e>f5?f5:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let t=this._subParamsIdx[e]>>8,n=this._subParamsIdx[e]&255;return n-t>0?this._subParams.subarray(t,n):null}getSubParamsAll(){let e={};for(let t=0;t<this.length;++t){let n=this._subParamsIdx[t]>>8,r=this._subParamsIdx[t]&255;r-n>0&&(e[t]=this._subParams.slice(n,r))}return e}addDigit(e){let t;if(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let n=this._digitIsSub?this._subParams:this.params,r=n[t-1];n[t-1]=~r?Math.min(r*10+e,f5):e}},h5=[],g5=class{constructor(){this._state=0,this._active=h5,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let n=this._handlers[e];return n.push(t),{dispose:()=>{let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=h5}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=h5,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||h5,!this._active.length)this._handlerFb(this._id,`START`);else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,n){if(!this._active.length)this._handlerFb(this._id,`PUT`,H1(e,t,n));else for(let r=this._active.length-1;r>=0;r--)this._active[r].put(e,t,n)}start(){this.reset(),this._state=1}put(e,t,n){if(this._state!==3){if(this._state===1)for(;t<n;){let n=e[t++];if(n===59){this._state=2,this._start();break}if(n<48||57<n){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+n-48}this._state===2&&n-t>0&&this._put(e,t,n)}}end(e,t=!0){if(this._state!==0){if(this._state!==3){if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,`END`,e);else{let n=!1,r=this._active.length-1,i=!1;if(this._stack.paused&&(r=this._stack.loopPosition-1,n=t,i=this._stack.fallThrough,this._stack.paused=!1),!i&&n===!1){for(;r>=0&&(n=this._active[r].end(e),n!==!0);r--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!1,n;r--}for(;r>=0;r--)if(n=this._active[r].end(!1),n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!0,n}}this._active=h5,this._id=-1,this._state=0}}},_5=class{constructor(e){this._handler=e,this._data=``,this._hitLimit=!1}start(){this._data=``,this._hitLimit=!1}put(e,t,n){this._hitLimit||(this._data+=H1(e,t,n),this._data.length>1e7&&(this._data=``,this._hitLimit=!0))}end(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data),t instanceof Promise))return t.then(e=>(this._data=``,this._hitLimit=!1,e));return this._data=``,this._hitLimit=!1,t}},v5=[],y5=class{constructor(){this._handlers=Object.create(null),this._active=v5,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=v5}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let n=this._handlers[e];return n.push(t),{dispose:()=>{let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=v5,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||v5,!this._active.length)this._handlerFb(this._ident,`HOOK`,t);else for(let e=this._active.length-1;e>=0;e--)this._active[e].hook(t)}put(e,t,n){if(!this._active.length)this._handlerFb(this._ident,`PUT`,H1(e,t,n));else for(let r=this._active.length-1;r>=0;r--)this._active[r].put(e,t,n)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,`UNHOOK`,e);else{let n=!1,r=this._active.length-1,i=!1;if(this._stack.paused&&(r=this._stack.loopPosition-1,n=t,i=this._stack.fallThrough,this._stack.paused=!1),!i&&n===!1){for(;r>=0&&(n=this._active[r].unhook(e),n!==!0);r--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!1,n;r--}for(;r>=0;r--)if(n=this._active[r].unhook(!1),n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!0,n}this._active=v5,this._ident=0}},b5=new m5;b5.addParam(0);var x5=class{constructor(e){this._handler=e,this._data=``,this._params=b5,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():b5,this._data=``,this._hitLimit=!1}put(e,t,n){this._hitLimit||(this._data+=H1(e,t,n),this._data.length>1e7&&(this._data=``,this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(e=>(this._params=b5,this._data=``,this._hitLimit=!1,e));return this._params=b5,this._data=``,this._hitLimit=!1,t}},S5=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,n,r){this.table[t<<8|e]=n<<4|r}addMany(e,t,n,r){for(let i=0;i<e.length;i++)this.table[t<<8|e[i]]=n<<4|r}},C5=160,w5=function(){let e=new S5(4095),t=Array.apply(null,Array(256)).map((e,t)=>t),n=(e,n)=>t.slice(e,n),r=n(32,127),i=n(0,24);i.push(25),i.push.apply(i,n(28,32));let a=n(0,14),o;for(o in e.setDefault(1,0),e.addMany(r,0,2,0),a)e.addMany([24,26,153,154],o,3,0),e.addMany(n(128,144),o,3,0),e.addMany(n(144,152),o,3,0),e.add(156,o,0,0),e.add(27,o,11,1),e.add(157,o,4,8),e.addMany([152,158,159],o,0,7),e.add(155,o,11,3),e.add(144,o,11,9);return e.addMany(i,0,3,0),e.addMany(i,1,3,1),e.add(127,1,0,1),e.addMany(i,8,0,8),e.addMany(i,3,3,3),e.add(127,3,0,3),e.addMany(i,4,3,4),e.add(127,4,0,4),e.addMany(i,6,3,6),e.addMany(i,5,3,5),e.add(127,5,0,5),e.addMany(i,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(r,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(n(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(r,7,0,7),e.addMany(i,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(n(64,127),3,7,0),e.addMany(n(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(n(48,60),4,8,4),e.addMany(n(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(n(32,64),6,0,6),e.add(127,6,0,6),e.addMany(n(64,127),6,0,0),e.addMany(n(32,48),3,9,5),e.addMany(n(32,48),5,9,5),e.addMany(n(48,64),5,0,6),e.addMany(n(64,127),5,7,0),e.addMany(n(32,48),4,9,5),e.addMany(n(32,48),1,9,2),e.addMany(n(32,48),2,9,2),e.addMany(n(48,127),2,10,0),e.addMany(n(48,80),1,10,0),e.addMany(n(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(n(96,127),1,10,0),e.add(80,1,11,9),e.addMany(i,9,0,9),e.add(127,9,0,9),e.addMany(n(28,32),9,0,9),e.addMany(n(32,48),9,9,12),e.addMany(n(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(i,11,0,11),e.addMany(n(32,128),11,0,11),e.addMany(n(28,32),11,0,11),e.addMany(i,10,0,10),e.add(127,10,0,10),e.addMany(n(28,32),10,0,10),e.addMany(n(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(n(32,48),10,9,12),e.addMany(i,12,0,12),e.add(127,12,0,12),e.addMany(n(28,32),12,0,12),e.addMany(n(32,48),12,9,12),e.addMany(n(48,64),12,0,11),e.addMany(n(64,127),12,12,13),e.addMany(n(64,127),10,12,13),e.addMany(n(64,127),9,12,13),e.addMany(i,13,13,13),e.addMany(r,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(C5,0,2,0),e.add(C5,8,5,8),e.add(C5,6,0,6),e.add(C5,11,0,11),e.add(C5,13,13,13),e}(),T5=class extends G0{constructor(e=w5){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new m5,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,t,n)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,t)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(H0(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new g5),this._dcsParser=this._register(new y5),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:`\\`},()=>!0)}_identifier(e,t=[64,126]){let n=0;if(e.prefix){if(e.prefix.length>1)throw Error(`only one byte as prefix supported`);if(n=e.prefix.charCodeAt(0),n&&60>n||n>63)throw Error(`prefix must be in range 0x3c .. 0x3f`)}if(e.intermediates){if(e.intermediates.length>2)throw Error(`only two bytes as intermediates are supported`);for(let t=0;t<e.intermediates.length;++t){let r=e.intermediates.charCodeAt(t);if(32>r||r>47)throw Error(`intermediate must be in range 0x20 .. 0x2f`);n<<=8,n|=r}}if(e.final.length!==1)throw Error(`final must be a single byte`);let r=e.final.charCodeAt(0);if(t[0]>r||r>t[1])throw Error(`final must be in range ${t[0]} .. ${t[1]}`);return n<<=8,n|=r,n}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join(``)}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let n=this._identifier(e,[48,126]);this._escHandlers[n]===void 0&&(this._escHandlers[n]=[]);let r=this._escHandlers[n];return r.push(t),{dispose:()=>{let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let n=this._identifier(e);this._csiHandlers[n]===void 0&&(this._csiHandlers[n]=[]);let r=this._csiHandlers[n];return r.push(t),{dispose:()=>{let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,n,r,i){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=n,this._parseStack.transition=r,this._parseStack.chunkPos=i}parse(e,t,n){let r=0,i=0,a=0,o;if(this._parseStack.state){if(this._parseStack.state===2)this._parseStack.state=0,a=this._parseStack.chunkPos+1;else{if(n===void 0||this._parseStack.state===1)throw this._parseStack.state=1,Error(`improper continuation due to previous async handler, giving up parsing`);let t=this._parseStack.handlers,i=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(n===!1&&i>-1){for(;i>=0&&(o=t[i](this._params),o!==!0);i--)if(o instanceof Promise)return this._parseStack.handlerPos=i,o}this._parseStack.handlers=[];break;case 4:if(n===!1&&i>-1){for(;i>=0&&(o=t[i](),o!==!0);i--)if(o instanceof Promise)return this._parseStack.handlerPos=i,o}this._parseStack.handlers=[];break;case 6:if(r=e[this._parseStack.chunkPos],o=this._dcsParser.unhook(r!==24&&r!==26,n),o)return o;r===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(r=e[this._parseStack.chunkPos],o=this._oscParser.end(r!==24&&r!==26,n),o)return o;r===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,a=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}}for(let n=a;n<t;++n){switch(r=e[n],i=this._transitions.table[this.currentState<<8|(r<160?r:C5)],i>>4){case 2:for(let i=n+1;;++i){if(i>=t||(r=e[i])<32||r>126&&r<C5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<C5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<C5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<C5){this._printHandler(e,n,i),n=i-1;break}}break;case 3:this._executeHandlers[r]?this._executeHandlers[r]():this._executeHandlerFb(r),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:n,code:r,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let a=this._csiHandlers[this._collect<<8|r],s=a?a.length-1:-1;for(;s>=0&&(o=a[s](this._params),o!==!0);s--)if(o instanceof Promise)return this._preserveStack(3,a,s,i,n),o;s<0&&this._csiHandlerFb(this._collect<<8|r,this._params),this.precedingJoinState=0;break;case 8:do switch(r){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(r-48)}while(++n<t&&(r=e[n])>47&&r<60);n--;break;case 9:this._collect<<=8,this._collect|=r;break;case 10:let c=this._escHandlers[this._collect<<8|r],l=c?c.length-1:-1;for(;l>=0&&(o=c[l](),o!==!0);l--)if(o instanceof Promise)return this._preserveStack(4,c,l,i,n),o;l<0&&this._escHandlerFb(this._collect<<8|r),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|r,this._params);break;case 13:for(let i=n+1;;++i)if(i>=t||(r=e[i])===24||r===26||r===27||r>127&&r<C5){this._dcsParser.put(e,n,i),n=i-1;break}break;case 14:if(o=this._dcsParser.unhook(r!==24&&r!==26),o)return this._preserveStack(6,[],0,i,n),o;r===27&&(i|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let i=n+1;;i++)if(i>=t||(r=e[i])<32||r>127&&r<C5){this._oscParser.put(e,n,i),n=i-1;break}break;case 6:if(o=this._oscParser.end(r!==24&&r!==26),o)return this._preserveStack(5,[],0,i,n),o;r===27&&(i|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=i&15}}},E5=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,D5=/^[\da-f]+$/;function O5(e){if(!e)return;let t=e.toLowerCase();if(t.indexOf(`rgb:`)===0){t=t.slice(4);let e=E5.exec(t);if(e){let t=e[1]?15:e[4]?255:e[7]?4095:65535;return[Math.round(parseInt(e[1]||e[4]||e[7]||e[10],16)/t*255),Math.round(parseInt(e[2]||e[5]||e[8]||e[11],16)/t*255),Math.round(parseInt(e[3]||e[6]||e[9]||e[12],16)/t*255)]}}else if(t.indexOf(`#`)===0&&(t=t.slice(1),D5.exec(t)&&[3,6,9,12].includes(t.length))){let e=t.length/3,n=[0,0,0];for(let r=0;r<3;++r){let i=parseInt(t.slice(e*r,e*r+e),16);n[r]=e===1?i<<4:e===2?i:e===3?i>>4:i>>8}return n}}function k5(e,t){let n=e.toString(16),r=n.length<2?`0`+n:n;switch(t){case 4:return n[0];case 8:return r;case 12:return(r+r).slice(0,3);default:return r+r}}function A5(e,t=16){let[n,r,i]=e;return`rgb:${k5(n,t)}/${k5(r,t)}/${k5(i,t)}`}var j5={"(":0,")":1,"*":2,"+":3,"-":1,".":2},M5=131072,N5=10;function P5(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var F5=5e3,I5=0,L5=class extends G0{constructor(e,t,n,r,i,a,o,s,c=new T5){super(),this._bufferService=e,this._charsetService=t,this._coreService=n,this._logService=r,this._optionsService=i,this._oscLinkService=a,this._coreMouseService=o,this._unicodeService=s,this._parser=c,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new U1,this._utf8Decoder=new W1,this._windowTitle=``,this._iconName=``,this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=E8.clone(),this._eraseAttrDataInternal=E8.clone(),this._onRequestBell=this._register(new Q),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new Q),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new Q),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new Q),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new Q),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new Q),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new Q),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new Q),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new Q),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new Q),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new Q),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new Q),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new Q),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new R5(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(e=>this._activeBuffer=e.activeBuffer)),this._parser.setCsiHandlerFallback((e,t)=>{this._logService.debug(`Unknown CSI code: `,{identifier:this._parser.identToString(e),params:t.toArray()})}),this._parser.setEscHandlerFallback(e=>{this._logService.debug(`Unknown ESC code: `,{identifier:this._parser.identToString(e)})}),this._parser.setExecuteHandlerFallback(e=>{this._logService.debug(`Unknown EXECUTE code: `,{code:e})}),this._parser.setOscHandlerFallback((e,t,n)=>{this._logService.debug(`Unknown OSC code: `,{identifier:e,action:t,data:n})}),this._parser.setDcsHandlerFallback((e,t,n)=>{t===`HOOK`&&(n=n.toArray()),this._logService.debug(`Unknown DCS code: `,{identifier:this._parser.identToString(e),action:t,payload:n})}),this._parser.setPrintHandler((e,t,n)=>this.print(e,t,n)),this._parser.registerCsiHandler({final:`@`},e=>this.insertChars(e)),this._parser.registerCsiHandler({intermediates:` `,final:`@`},e=>this.scrollLeft(e)),this._parser.registerCsiHandler({final:`A`},e=>this.cursorUp(e)),this._parser.registerCsiHandler({intermediates:` `,final:`A`},e=>this.scrollRight(e)),this._parser.registerCsiHandler({final:`B`},e=>this.cursorDown(e)),this._parser.registerCsiHandler({final:`C`},e=>this.cursorForward(e)),this._parser.registerCsiHandler({final:`D`},e=>this.cursorBackward(e)),this._parser.registerCsiHandler({final:`E`},e=>this.cursorNextLine(e)),this._parser.registerCsiHandler({final:`F`},e=>this.cursorPrecedingLine(e)),this._parser.registerCsiHandler({final:`G`},e=>this.cursorCharAbsolute(e)),this._parser.registerCsiHandler({final:`H`},e=>this.cursorPosition(e)),this._parser.registerCsiHandler({final:`I`},e=>this.cursorForwardTab(e)),this._parser.registerCsiHandler({final:`J`},e=>this.eraseInDisplay(e,!1)),this._parser.registerCsiHandler({prefix:`?`,final:`J`},e=>this.eraseInDisplay(e,!0)),this._parser.registerCsiHandler({final:`K`},e=>this.eraseInLine(e,!1)),this._parser.registerCsiHandler({prefix:`?`,final:`K`},e=>this.eraseInLine(e,!0)),this._parser.registerCsiHandler({final:`L`},e=>this.insertLines(e)),this._parser.registerCsiHandler({final:`M`},e=>this.deleteLines(e)),this._parser.registerCsiHandler({final:`P`},e=>this.deleteChars(e)),this._parser.registerCsiHandler({final:`S`},e=>this.scrollUp(e)),this._parser.registerCsiHandler({final:`T`},e=>this.scrollDown(e)),this._parser.registerCsiHandler({final:`X`},e=>this.eraseChars(e)),this._parser.registerCsiHandler({final:`Z`},e=>this.cursorBackwardTab(e)),this._parser.registerCsiHandler({final:"`"},e=>this.charPosAbsolute(e)),this._parser.registerCsiHandler({final:`a`},e=>this.hPositionRelative(e)),this._parser.registerCsiHandler({final:`b`},e=>this.repeatPrecedingCharacter(e)),this._parser.registerCsiHandler({final:`c`},e=>this.sendDeviceAttributesPrimary(e)),this._parser.registerCsiHandler({prefix:`>`,final:`c`},e=>this.sendDeviceAttributesSecondary(e)),this._parser.registerCsiHandler({final:`d`},e=>this.linePosAbsolute(e)),this._parser.registerCsiHandler({final:`e`},e=>this.vPositionRelative(e)),this._parser.registerCsiHandler({final:`f`},e=>this.hVPosition(e)),this._parser.registerCsiHandler({final:`g`},e=>this.tabClear(e)),this._parser.registerCsiHandler({final:`h`},e=>this.setMode(e)),this._parser.registerCsiHandler({prefix:`?`,final:`h`},e=>this.setModePrivate(e)),this._parser.registerCsiHandler({final:`l`},e=>this.resetMode(e)),this._parser.registerCsiHandler({prefix:`?`,final:`l`},e=>this.resetModePrivate(e)),this._parser.registerCsiHandler({final:`m`},e=>this.charAttributes(e)),this._parser.registerCsiHandler({final:`n`},e=>this.deviceStatus(e)),this._parser.registerCsiHandler({prefix:`?`,final:`n`},e=>this.deviceStatusPrivate(e)),this._parser.registerCsiHandler({intermediates:`!`,final:`p`},e=>this.softReset(e)),this._parser.registerCsiHandler({intermediates:` `,final:`q`},e=>this.setCursorStyle(e)),this._parser.registerCsiHandler({final:`r`},e=>this.setScrollRegion(e)),this._parser.registerCsiHandler({final:`s`},e=>this.saveCursor(e)),this._parser.registerCsiHandler({final:`t`},e=>this.windowOptions(e)),this._parser.registerCsiHandler({final:`u`},e=>this.restoreCursor(e)),this._parser.registerCsiHandler({intermediates:`'`,final:`}`},e=>this.insertColumns(e)),this._parser.registerCsiHandler({intermediates:`'`,final:`~`},e=>this.deleteColumns(e)),this._parser.registerCsiHandler({intermediates:`"`,final:`q`},e=>this.selectProtected(e)),this._parser.registerCsiHandler({intermediates:`$`,final:`p`},e=>this.requestMode(e,!0)),this._parser.registerCsiHandler({prefix:`?`,intermediates:`$`,final:`p`},e=>this.requestMode(e,!1)),this._parser.setExecuteHandler($.BEL,()=>this.bell()),this._parser.setExecuteHandler($.LF,()=>this.lineFeed()),this._parser.setExecuteHandler($.VT,()=>this.lineFeed()),this._parser.setExecuteHandler($.FF,()=>this.lineFeed()),this._parser.setExecuteHandler($.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler($.BS,()=>this.backspace()),this._parser.setExecuteHandler($.HT,()=>this.tab()),this._parser.setExecuteHandler($.SO,()=>this.shiftOut()),this._parser.setExecuteHandler($.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(D3.IND,()=>this.index()),this._parser.setExecuteHandler(D3.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(D3.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new _5(e=>(this.setTitle(e),this.setIconName(e),!0))),this._parser.registerOscHandler(1,new _5(e=>this.setIconName(e))),this._parser.registerOscHandler(2,new _5(e=>this.setTitle(e))),this._parser.registerOscHandler(4,new _5(e=>this.setOrReportIndexedColor(e))),this._parser.registerOscHandler(8,new _5(e=>this.setHyperlink(e))),this._parser.registerOscHandler(10,new _5(e=>this.setOrReportFgColor(e))),this._parser.registerOscHandler(11,new _5(e=>this.setOrReportBgColor(e))),this._parser.registerOscHandler(12,new _5(e=>this.setOrReportCursorColor(e))),this._parser.registerOscHandler(104,new _5(e=>this.restoreIndexedColor(e))),this._parser.registerOscHandler(110,new _5(e=>this.restoreFgColor(e))),this._parser.registerOscHandler(111,new _5(e=>this.restoreBgColor(e))),this._parser.registerOscHandler(112,new _5(e=>this.restoreCursorColor(e))),this._parser.registerEscHandler({final:`7`},()=>this.saveCursor()),this._parser.registerEscHandler({final:`8`},()=>this.restoreCursor()),this._parser.registerEscHandler({final:`D`},()=>this.index()),this._parser.registerEscHandler({final:`E`},()=>this.nextLine()),this._parser.registerEscHandler({final:`H`},()=>this.tabSet()),this._parser.registerEscHandler({final:`M`},()=>this.reverseIndex()),this._parser.registerEscHandler({final:`=`},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:`>`},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:`c`},()=>this.fullReset()),this._parser.registerEscHandler({final:`n`},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:`o`},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:`|`},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:`}`},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:`~`},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:`%`,final:`@`},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:`%`,final:`G`},()=>this.selectDefaultCharset());for(let e in L8)this._parser.registerEscHandler({intermediates:`(`,final:e},()=>this.selectCharset(`(`+e)),this._parser.registerEscHandler({intermediates:`)`,final:e},()=>this.selectCharset(`)`+e)),this._parser.registerEscHandler({intermediates:`*`,final:e},()=>this.selectCharset(`*`+e)),this._parser.registerEscHandler({intermediates:`+`,final:e},()=>this.selectCharset(`+`+e)),this._parser.registerEscHandler({intermediates:`-`,final:e},()=>this.selectCharset(`-`+e)),this._parser.registerEscHandler({intermediates:`.`,final:e},()=>this.selectCharset(`.`+e)),this._parser.registerEscHandler({intermediates:`/`,final:e},()=>this.selectCharset(`/`+e));this._parser.registerEscHandler({intermediates:`#`,final:`8`},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(e=>(this._logService.error(`Parsing error: `,e),e)),this._parser.registerDcsHandler({intermediates:`$`,final:`q`},new x5((e,t)=>this.requestStatusString(e,t)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,n,r){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=n,this._parseStack.position=r}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((e,t)=>setTimeout(()=>t(`#SLOW_TIMEOUT`),F5))]).catch(e=>{if(e!==`#SLOW_TIMEOUT`)throw e;console.warn(`async parser handler taking longer than ${F5} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let n,r=this._activeBuffer.x,i=this._activeBuffer.y,a=0,o=this._parseStack.paused;if(o){if(n=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(n),n;r=this._parseStack.cursorStartX,i=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>M5&&(a=this._parseStack.position+M5)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e==`string`?` "${e}"`:` "${Array.prototype.map.call(e,e=>String.fromCharCode(e)).join(``)}"`}`),this._logService.logLevel===0&&this._logService.trace(`parsing data (codes)`,typeof e==`string`?e.split(``).map(e=>e.charCodeAt(0)):e),this._parseBuffer.length<e.length&&this._parseBuffer.length<M5&&(this._parseBuffer=new Uint32Array(Math.min(e.length,M5))),o||this._dirtyRowTracker.clearRange(),e.length>M5)for(let t=a;t<e.length;t+=M5){let a=t+M5<e.length?t+M5:e.length,o=typeof e==`string`?this._stringDecoder.decode(e.substring(t,a),this._parseBuffer):this._utf8Decoder.decode(e.subarray(t,a),this._parseBuffer);if(n=this._parser.parse(this._parseBuffer,o))return this._preserveStack(r,i,o,t),this._logSlowResolvingAsync(n),n}else if(!o){let t=typeof e==`string`?this._stringDecoder.decode(e,this._parseBuffer):this._utf8Decoder.decode(e,this._parseBuffer);if(n=this._parser.parse(this._parseBuffer,t))return this._preserveStack(r,i,t,0),this._logSlowResolvingAsync(n),n}(this._activeBuffer.x!==r||this._activeBuffer.y!==i)&&this._onCursorMove.fire();let s=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),c=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);c<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(c,this._bufferService.rows-1),end:Math.min(s,this._bufferService.rows-1)})}print(e,t,n){let r,i,a=this._charsetService.charset,o=this._optionsService.rawOptions.screenReaderMode,s=this._bufferService.cols,c=this._coreService.decPrivateModes.wraparound,l=this._coreService.modes.insertMode,u=this._curAttrData,d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&n-t>0&&d.getWidth(this._activeBuffer.x-1)===2&&d.setCellFromCodepoint(this._activeBuffer.x-1,0,1,u);let f=this._parser.precedingJoinState;for(let p=t;p<n;++p){if(r=e[p],r<127&&a){let e=a[String.fromCharCode(r)];e&&(r=e.charCodeAt(0))}let t=this._unicodeService.charProperties(r,f);i=l5.extractWidth(t);let n=l5.extractShouldJoin(t),m=n?l5.extractWidth(f):0;if(f=t,o&&this._onA11yChar.fire(V1(r)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+i-m>s){if(c){let e=d,t=this._activeBuffer.x-m;for(this._activeBuffer.x=m,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),m>0&&d instanceof k8&&d.copyCellsFrom(e,t,0,m,!1);t<s;)e.setCellFromCodepoint(t++,0,1,u)}else if(this._activeBuffer.x=s-1,i===2)continue}if(n&&this._activeBuffer.x){let e=d.getWidth(this._activeBuffer.x-1)?1:2;d.addCodepointToCell(this._activeBuffer.x-e,r,i);for(let e=i-m;--e>=0;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,u);continue}if(l&&(d.insertCells(this._activeBuffer.x,i-m,this._activeBuffer.getNullCell(u)),d.getWidth(s-1)===2&&d.setCellFromCodepoint(s-1,0,1,u)),d.setCellFromCodepoint(this._activeBuffer.x++,r,i,u),i>0)for(;--i;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,u)}this._parser.precedingJoinState=f,this._activeBuffer.x<s&&n-t>0&&d.getWidth(this._activeBuffer.x)===0&&!d.hasContent(this._activeBuffer.x)&&d.setCellFromCodepoint(this._activeBuffer.x,0,1,u),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final===`t`&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,e=>!P5(e.params[0],this._optionsService.rawOptions.windowOptions)||t(e)):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new x5(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new _5(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);e.hasWidth(this._activeBuffer.x)&&!e.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,n,r=!1,i=!1){let a=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);a.replaceCells(t,n,this._activeBuffer.getNullCell(this._eraseAttrData()),i),r&&(a.isWrapped=!1)}_resetBufferLine(e,t=!1){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n&&(n.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),n.isWrapped=!1)}eraseInDisplay(e,t=!1){this._restrictCursor(this._bufferService.cols);let n;switch(e.params[0]){case 0:for(n=this._activeBuffer.y,this._dirtyRowTracker.markDirty(n),this._eraseInBufferLine(n++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);n<this._bufferService.rows;n++)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(n);break;case 1:for(n=this._activeBuffer.y,this._dirtyRowTracker.markDirty(n),this._eraseInBufferLine(n,0,this._activeBuffer.x+1,!0,t),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(n+1).isWrapped=!1);n--;)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(n=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,n-1);n--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+n)?.getTrimmedLength(););for(;n>=0;n--)this._bufferService.scroll(this._eraseAttrData())}else{for(n=this._bufferService.rows,this._dirtyRowTracker.markDirty(n-1);n--;)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let e=this._activeBuffer.lines.length-this._bufferService.rows;e>0&&(this._activeBuffer.lines.trimStart(e),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-e,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-e,0),this._onScroll.fire(0))}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let n=this._activeBuffer.ybase+this._activeBuffer.y,r=this._bufferService.rows-1-this._activeBuffer.scrollBottom,i=this._bufferService.rows-1+this._activeBuffer.ybase-r+1;for(;t--;)this._activeBuffer.lines.splice(i-1,1),this._activeBuffer.lines.splice(n,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let n=this._activeBuffer.ybase+this._activeBuffer.y,r;for(r=this._bufferService.rows-1-this._activeBuffer.scrollBottom,r=this._bufferService.rows-1+this._activeBuffer.ybase-r;t--;)this._activeBuffer.lines.splice(n,1),this._activeBuffer.lines.splice(r,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.insertCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.deleteCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(E8));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.deleteCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.insertCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.insertCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.deleteCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(e.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(e){let t=this._parser.precedingJoinState;if(!t)return!0;let n=e.params[0]||1,r=l5.extractWidth(t),i=this._activeBuffer.x-r,a=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(i),o=new Uint32Array(a.length*n),s=0;for(let e=0;e<a.length;){let t=a.codePointAt(e)||0;o[s++]=t,e+=t>65535?2:1}let c=s;for(let e=1;e<n;++e)o.copyWithin(c,0,s),c+=s;return this.print(o,0,c),!0}sendDeviceAttributesPrimary(e){return e.params[0]>0||(this._is(`xterm`)||this._is(`rxvt-unicode`)||this._is(`screen`)?this._coreService.triggerDataEvent($.ESC+`[?1;2c`):this._is(`linux`)&&this._coreService.triggerDataEvent($.ESC+`[?6c`)),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is(`xterm`)?this._coreService.triggerDataEvent($.ESC+`[>0;276;0c`):this._is(`rxvt-unicode`)?this._coreService.triggerDataEvent($.ESC+`[>85;95;0c`):this._is(`linux`)?this._coreService.triggerDataEvent(e.params[0]+`c`):this._is(`screen`)&&this._coreService.triggerDataEvent($.ESC+`[>83;40003;0c`)),!0}_is(e){return(this._optionsService.rawOptions.termName+``).indexOf(e)===0}setMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,R8),this._charsetService.setgCharset(1,R8),this._charsetService.setgCharset(2,R8),this._charsetService.setgCharset(3,R8);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug(`Serial port requested application keypad.`),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol=`X10`;break;case 1e3:this._coreMouseService.activeProtocol=`VT200`;break;case 1002:this._coreMouseService.activeProtocol=`DRAG`;break;case 1003:this._coreMouseService.activeProtocol=`ANY`;break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug(`DECSET 1005 not supported (see #2507)`);break;case 1006:this._coreMouseService.activeEncoding=`SGR`;break;case 1015:this._logService.debug(`DECSET 1015 not supported (see #2507)`);break;case 1016:this._coreMouseService.activeEncoding=`SGR_PIXELS`;break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug(`Switching back to normal keypad.`),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol=`NONE`;break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug(`DECRST 1005 not supported (see #2507)`);break;case 1006:this._coreMouseService.activeEncoding=`DEFAULT`;break;case 1015:this._logService.debug(`DECRST 1015 not supported (see #2507)`);break;case 1016:this._coreMouseService.activeEncoding=`DEFAULT`;break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),e.params[t]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(e,t){let n;(e=>(e[e.NOT_RECOGNIZED=0]=`NOT_RECOGNIZED`,e[e.SET=1]=`SET`,e[e.RESET=2]=`RESET`,e[e.PERMANENTLY_SET=3]=`PERMANENTLY_SET`,e[e.PERMANENTLY_RESET=4]=`PERMANENTLY_RESET`))(n||={});let r=this._coreService.decPrivateModes,{activeProtocol:i,activeEncoding:a}=this._coreMouseService,o=this._coreService,{buffers:s,cols:c}=this._bufferService,{active:l,alt:u}=s,d=this._optionsService.rawOptions,f=(e,n)=>(o.triggerDataEvent(`${$.ESC}[${t?``:`?`}${e};${n}$y`),!0),p=e=>e?1:2,m=e.params[0];return t?m===2?f(m,4):m===4?f(m,p(o.modes.insertMode)):m===12?f(m,3):m===20?f(m,p(d.convertEol)):f(m,0):m===1?f(m,p(r.applicationCursorKeys)):m===3?f(m,d.windowOptions.setWinLines?c===80?2:+(c===132):0):m===6?f(m,p(r.origin)):m===7?f(m,p(r.wraparound)):m===8?f(m,3):m===9?f(m,p(i===`X10`)):m===12?f(m,p(d.cursorBlink)):m===25?f(m,p(!o.isCursorHidden)):m===45?f(m,p(r.reverseWraparound)):m===66?f(m,p(r.applicationKeypad)):m===67?f(m,4):m===1e3?f(m,p(i===`VT200`)):m===1002?f(m,p(i===`DRAG`)):m===1003?f(m,p(i===`ANY`)):m===1004?f(m,p(r.sendFocus)):m===1005?f(m,4):m===1006?f(m,p(a===`SGR`)):m===1015?f(m,4):m===1016?f(m,p(a===`SGR_PIXELS`)):m===1048?f(m,1):m===47||m===1047||m===1049?f(m,p(l===u)):m===2004?f(m,p(r.bracketedPasteMode)):m===2026?f(m,p(r.synchronizedOutput)):f(m,0)}_updateAttrColor(e,t,n,r,i){return t===2?(e|=50331648,e&=-16777216,e|=q1.fromColorRGB([n,r,i])):t===5&&(e&=-50331904,e|=33554432|n&255),e}_extractColor(e,t,n){let r=[0,0,-1,0,0,0],i=0,a=0;do{if(r[a+i]=e.params[t+a],e.hasSubParams(t+a)){let n=e.getSubParams(t+a),o=0;do r[1]===5&&(i=1),r[a+o+1+i]=n[o];while(++o<n.length&&o+a+1+i<r.length);break}if(r[1]===5&&a+i>=2||r[1]===2&&a+i>=5)break;r[1]&&(i=1)}while(++a+t<e.length&&a+i<r.length);for(let e=2;e<r.length;++e)r[e]===-1&&(r[e]=0);switch(r[0]){case 38:n.fg=this._updateAttrColor(n.fg,r[1],r[3],r[4],r[5]);break;case 48:n.bg=this._updateAttrColor(n.bg,r[1],r[3],r[4],r[5]);break;case 58:n.extended=n.extended.clone(),n.extended.underlineColor=this._updateAttrColor(n.extended.underlineColor,r[1],r[3],r[4],r[5])}return a}_processUnderline(e,t){t.extended=t.extended.clone(),(!~e||e>5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=E8.fg,e.bg=E8.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,n,r=this._curAttrData;for(let i=0;i<t;i++)n=e.params[i],n>=30&&n<=37?(r.fg&=-50331904,r.fg|=16777216|n-30):n>=40&&n<=47?(r.bg&=-50331904,r.bg|=16777216|n-40):n>=90&&n<=97?(r.fg&=-50331904,r.fg|=n-90|16777224):n>=100&&n<=107?(r.bg&=-50331904,r.bg|=n-100|16777224):n===0?this._processSGR0(r):n===1?r.fg|=134217728:n===3?r.bg|=67108864:n===4?(r.fg|=268435456,this._processUnderline(e.hasSubParams(i)?e.getSubParams(i)[0]:1,r)):n===5?r.fg|=536870912:n===7?r.fg|=67108864:n===8?r.fg|=1073741824:n===9?r.fg|=2147483648:n===2?r.bg|=134217728:n===21?this._processUnderline(2,r):n===22?(r.fg&=-134217729,r.bg&=-134217729):n===23?r.bg&=-67108865:n===24?(r.fg&=-268435457,this._processUnderline(0,r)):n===25?r.fg&=-536870913:n===27?r.fg&=-67108865:n===28?r.fg&=-1073741825:n===29?r.fg&=2147483647:n===39?(r.fg&=-67108864,r.fg|=E8.fg&16777215):n===49?(r.bg&=-67108864,r.bg|=E8.bg&16777215):n===38||n===48||n===58?i+=this._extractColor(e,i,r):n===53?r.bg|=1073741824:n===55?r.bg&=-1073741825:n===59?(r.extended=r.extended.clone(),r.extended.underlineColor=-1,r.updateExtended()):n===100?(r.fg&=-67108864,r.fg|=E8.fg&16777215,r.bg&=-67108864,r.bg|=E8.bg&16777215):this._logService.debug(`Unknown SGR attribute: %d.`,n);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${$.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,t=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${$.ESC}[${e};${t}R`)}return!0}deviceStatusPrivate(e){if(e.params[0]===6){let e=this._activeBuffer.y+1,t=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${$.ESC}[?${e};${t}R`)}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=E8.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle=`block`;break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle=`underline`;break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle=`bar`}let e=t%2==1;this._coreService.decPrivateModes.cursorBlink=e}return!0}setScrollRegion(e){let t=e.params[0]||1,n;return(e.length<2||(n=e.params[1])>this._bufferService.rows||n===0)&&(n=this._bufferService.rows),n>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=n-1,this._setCursor(0,0)),!0}windowOptions(e){if(!P5(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${$.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>N5&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>N5&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],n=e.split(`;`);for(;n.length>1;){let e=n.shift(),r=n.shift();if(/^\d+$/.exec(e)){let n=parseInt(e);if(z5(n)){if(r===`?`)t.push({type:0,index:n});else{let e=O5(r);e&&t.push({type:1,index:n,color:e})}}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(`;`);if(t===-1)return!0;let n=e.slice(0,t).trim(),r=e.slice(t+1);return r?this._createHyperlink(n,r):!n.trim()&&this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let n=e.split(`:`),r,i=n.findIndex(e=>e.startsWith(`id=`));return i!==-1&&(r=n[i].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:r,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let n=e.split(`;`);for(let e=0;e<n.length&&!(t>=this._specialColors.length);++e,++t)if(n[e]===`?`)this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let r=O5(n[e]);r&&this._onColor.fire([{type:1,index:this._specialColors[t],color:r}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],n=e.split(`;`);for(let e=0;e<n.length;++e)if(/^\d+$/.exec(n[e])){let r=parseInt(n[e]);z5(r)&&t.push({type:2,index:r})}return t.length&&this._onColor.fire(t),!0}restoreFgColor(e){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(e){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(e){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug(`Serial port requested application keypad.`),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug(`Switching back to normal keypad.`),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,R8),!0}selectCharset(e){return e.length===2?(e[0]===`/`||this._charsetService.setgCharset(j5[e[0]],L8[e[1]]||R8),!0):(this.selectDefaultCharset(),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=E8.clone(),this._eraseAttrDataInternal=E8.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new Y1;e.content=4194373,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t<this._bufferService.rows;++t){let n=this._activeBuffer.ybase+this._activeBuffer.y+t,r=this._activeBuffer.lines.get(n);r&&(r.fill(e),r.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(e,t){let n=e=>(this._coreService.triggerDataEvent(`${$.ESC}${e}${$.ESC}\\`),!0),r=this._bufferService.buffer,i=this._optionsService.rawOptions;return n(e===`"q`?`P1$r${+!!this._curAttrData.isProtected()}"q`:e===`"p`?`P1$r61;1"p`:e===`r`?`P1$r${r.scrollTop+1};${r.scrollBottom+1}r`:e===`m`?`P1$r0m`:e===` q`?`P1$r${{block:2,underline:4,bar:6}[i.cursorStyle]-+!!i.cursorBlink} q`:`P0$r`)}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},R5=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){e<this.start?this.start=e:e>this.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(I5=e,e=t,t=I5),e<this.start&&(this.start=e),t>this.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};R5=O1([k1(0,n0)],R5);function z5(e){return 0<=e&&e<256}var B5=5e7,V5=12,H5=50,U5=class extends G0{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new Q),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let n;for(;n=this._writeBuffer.shift();){this._action(n);let e=this._callbacks.shift();e&&e()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>B5)throw Error(`write data discarded, use flow control to avoid losing data`);if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let n=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let e=this._writeBuffer[this._bufferOffset],r=this._action(e,t);if(r){r.catch(e=>(queueMicrotask(()=>{throw e}),Promise.resolve(!1))).then(e=>performance.now()-n>=V5?setTimeout(()=>this._innerWrite(0,e)):this._innerWrite(n,e));return}let i=this._callbacks[this._bufferOffset];if(i&&i(),this._bufferOffset++,this._pendingData-=e.length,performance.now()-n>=V5)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>H5&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},W5=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let n=t.addMarker(t.ybase+t.y),r={data:e,id:this._nextId++,lines:[n]};return n.onDispose(()=>this._removeMarkerFromLink(r,n)),this._dataByLinkId.set(r.id,r),r.id}let n=e,r=this._getEntryIdKey(n),i=this._entriesWithId.get(r);if(i)return this.addLineToLink(i.id,t.ybase+t.y),i.id;let a=t.addMarker(t.ybase+t.y),o={id:this._nextId++,key:this._getEntryIdKey(n),data:n,lines:[a]};return a.onDispose(()=>this._removeMarkerFromLink(o,a)),this._entriesWithId.set(o.key,o),this._dataByLinkId.set(o.id,o),o.id}addLineToLink(e,t){let n=this._dataByLinkId.get(e);if(n&&n.lines.every(e=>e.line!==t)){let e=this._bufferService.buffer.addMarker(t);n.lines.push(e),e.onDispose(()=>this._removeMarkerFromLink(n,e))}}getLinkData(e){return this._dataByLinkId.get(e)?.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let n=e.lines.indexOf(t);n!==-1&&(e.lines.splice(n,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};W5=O1([k1(0,n0)],W5);var G5=!1,K5=class extends G0{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new K0),this._onBinary=this._register(new Q),this.onBinary=this._onBinary.event,this._onData=this._register(new Q),this.onData=this._onData.event,this._onLineFeed=this._register(new Q),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new Q),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new Q),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new Q),this._instantiationService=new y8,this.optionsService=this._register(new q8(e)),this._instantiationService.setService(c0,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(W8)),this._instantiationService.setService(n0,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(S8)),this._instantiationService.setService(s0,this._logService),this.coreService=this._register(this._instantiationService.createInstance(Q8)),this._instantiationService.setService(i0,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(r5)),this._instantiationService.setService(r0,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(l5)),this._instantiationService.setService(u0,this.unicodeService),this._charsetService=this._instantiationService.createInstance(u5),this._instantiationService.setService(a0,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(W5),this._instantiationService.setService(l0,this._oscLinkService),this._inputHandler=this._register(new L5(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register($0.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register($0.forward(this._bufferService.onResize,this._onResize)),this._register($0.forward(this.coreService.onData,this._onData)),this._register($0.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange([`windowsMode`,`windowsPty`],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new U5((e,t)=>this._inputHandler.parse(e,t))),this._register($0.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new Q),this._onScroll.event(e=>{this._onScrollApi?.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!G5&&(this._logService.warn(`writeSync is unreliable and will be removed soon.`),G5=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,H8),t=Math.max(t,U8),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend===`conpty`&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(d5.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:`H`},()=>(d5(this._bufferService),!1))),this._windowsWrappingHeuristics.value=H0(()=>{for(let t of e)t.dispose()})}}},q5={48:[`0`,`)`],49:[`1`,`!`],50:[`2`,`@`],51:[`3`,`#`],52:[`4`,`$`],53:[`5`,`%`],54:[`6`,`^`],55:[`7`,`&`],56:[`8`,`*`],57:[`9`,`(`],186:[`;`,`:`],187:[`=`,`+`],188:[`,`,`<`],189:[`-`,`_`],190:[`.`,`>`],191:[`/`,`?`],192:["`",`~`],219:[`[`,`{`],220:[`\\`,`|`],221:[`]`,`}`],222:[`'`,`"`]};function J5(e,t,n,r){let i={type:0,cancel:!1,key:void 0},a=!!e.shiftKey|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key===`UIKeyInputUpArrow`?i.key=t?$.ESC+`OA`:$.ESC+`[A`:e.key===`UIKeyInputLeftArrow`?i.key=t?$.ESC+`OD`:$.ESC+`[D`:e.key===`UIKeyInputRightArrow`?i.key=t?$.ESC+`OC`:$.ESC+`[C`:e.key===`UIKeyInputDownArrow`&&(i.key=t?$.ESC+`OB`:$.ESC+`[B`);break;case 8:i.key=e.ctrlKey?`\b`:$.DEL,e.altKey&&(i.key=$.ESC+i.key);break;case 9:if(e.shiftKey){i.key=$.ESC+`[Z`;break}i.key=$.HT,i.cancel=!0;break;case 13:i.key=e.altKey?$.ESC+$.CR:$.CR,i.cancel=!0;break;case 27:i.key=$.ESC,e.altKey&&(i.key=$.ESC+$.ESC),i.cancel=!0;break;case 37:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`D`:t?$.ESC+`OD`:$.ESC+`[D`;break;case 39:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`C`:t?$.ESC+`OC`:$.ESC+`[C`;break;case 38:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`A`:t?$.ESC+`OA`:$.ESC+`[A`;break;case 40:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`B`:t?$.ESC+`OB`:$.ESC+`[B`;break;case 45:!e.shiftKey&&!e.ctrlKey&&(i.key=$.ESC+`[2~`);break;case 46:i.key=a?$.ESC+`[3;`+(a+1)+`~`:$.ESC+`[3~`;break;case 36:i.key=a?$.ESC+`[1;`+(a+1)+`H`:t?$.ESC+`OH`:$.ESC+`[H`;break;case 35:i.key=a?$.ESC+`[1;`+(a+1)+`F`:t?$.ESC+`OF`:$.ESC+`[F`;break;case 33:e.shiftKey?i.type=2:i.key=e.ctrlKey?$.ESC+`[5;`+(a+1)+`~`:$.ESC+`[5~`;break;case 34:e.shiftKey?i.type=3:i.key=e.ctrlKey?$.ESC+`[6;`+(a+1)+`~`:$.ESC+`[6~`;break;case 112:i.key=a?$.ESC+`[1;`+(a+1)+`P`:$.ESC+`OP`;break;case 113:i.key=a?$.ESC+`[1;`+(a+1)+`Q`:$.ESC+`OQ`;break;case 114:i.key=a?$.ESC+`[1;`+(a+1)+`R`:$.ESC+`OR`;break;case 115:i.key=a?$.ESC+`[1;`+(a+1)+`S`:$.ESC+`OS`;break;case 116:i.key=a?$.ESC+`[15;`+(a+1)+`~`:$.ESC+`[15~`;break;case 117:i.key=a?$.ESC+`[17;`+(a+1)+`~`:$.ESC+`[17~`;break;case 118:i.key=a?$.ESC+`[18;`+(a+1)+`~`:$.ESC+`[18~`;break;case 119:i.key=a?$.ESC+`[19;`+(a+1)+`~`:$.ESC+`[19~`;break;case 120:i.key=a?$.ESC+`[20;`+(a+1)+`~`:$.ESC+`[20~`;break;case 121:i.key=a?$.ESC+`[21;`+(a+1)+`~`:$.ESC+`[21~`;break;case 122:i.key=a?$.ESC+`[23;`+(a+1)+`~`:$.ESC+`[23~`;break;case 123:i.key=a?$.ESC+`[24;`+(a+1)+`~`:$.ESC+`[24~`;break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?i.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?i.key=$.NUL:e.keyCode>=51&&e.keyCode<=55?i.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?i.key=$.DEL:e.keyCode===219?i.key=$.ESC:e.keyCode===220?i.key=$.FS:e.keyCode===221&&(i.key=$.GS);else if((!n||r)&&e.altKey&&!e.metaKey){let t=q5[e.keyCode]?.[+!!e.shiftKey];if(t)i.key=$.ESC+t;else if(e.keyCode>=65&&e.keyCode<=90){let t=e.ctrlKey?e.keyCode-64:e.keyCode+32,n=String.fromCharCode(t);e.shiftKey&&(n=n.toUpperCase()),i.key=$.ESC+n}else if(e.keyCode===32)i.key=$.ESC+(e.ctrlKey?$.NUL:` `);else if(e.key===`Dead`&&e.code.startsWith(`Key`)){let t=e.code.slice(3,4);e.shiftKey||(t=t.toLowerCase()),i.key=$.ESC+t,i.cancel=!0}}else n&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(i.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?i.key=e.key:e.key&&e.ctrlKey&&(e.key===`_`&&(i.key=$.US),e.key===`@`&&(i.key=$.NUL))}return i}var Y5=0,X5=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new I6,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new I6,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((e,t)=>this._getKey(e)-this._getKey(t)),t=0,n=0,r=Array(this._array.length+this._insertedValues.length);for(let i=0;i<r.length;i++)n>=this._array.length||this._getKey(e[t])<=this._getKey(this._array[n])?(r[i]=e[t],t++):r[i]=this._array[n++];this._array=r,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(Y5=this._search(t),Y5===-1)||this._getKey(this._array[Y5])!==t)return!1;do if(this._array[Y5]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Y5),!0;while(++Y5<this._array.length&&this._getKey(this._array[Y5])===t);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let e=this._deletedIndices.sort((e,t)=>e-t),t=0,n=Array(this._array.length-e.length),r=0;for(let i=0;i<this._array.length;i++)e[t]===i?t++:n[r++]=this._array[i];this._array=n,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Y5=this._search(e),!(Y5<0||Y5>=this._array.length)&&this._getKey(this._array[Y5])===e))do yield this._array[Y5];while(++Y5<this._array.length&&this._getKey(this._array[Y5])===e)}forEachByKey(e,t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Y5=this._search(e),!(Y5<0||Y5>=this._array.length)&&this._getKey(this._array[Y5])===e))do t(this._array[Y5]);while(++Y5<this._array.length&&this._getKey(this._array[Y5])===e)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(e){let t=0,n=this._array.length-1;for(;n>=t;){let r=t+n>>1,i=this._getKey(this._array[r]);if(i>e)n=r-1;else if(i<e)t=r+1;else{for(;r>0&&this._getKey(this._array[r-1])===e;)r--;return r}}return t}},Z5=0,Q5=0,$5=class extends G0{constructor(){super(),this._decorations=new X5(e=>e?.marker.line),this._onDecorationRegistered=this._register(new Q),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new Q),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(H0(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new e7(e);if(t){let e=t.marker.onDispose(()=>t.dispose()),n=t.onDispose(()=>{n.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),e.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,n){let r=0,i=0;for(let a of this._decorations.getKeyIterator(t))r=a.options.x??0,i=r+(a.options.width??1),e>=r&&e<i&&(!n||(a.options.layer??`bottom`)===n)&&(yield a)}forEachDecorationAtCell(e,t,n,r){this._decorations.forEachByKey(t,t=>{Z5=t.options.x??0,Q5=Z5+(t.options.width??1),e>=Z5&&e<Q5&&(!n||(t.options.layer??`bottom`)===n)&&r(t)})}},e7=class extends W0{constructor(e){super(),this.options=e,this.onRenderEmitter=this.add(new Q),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new Q),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=e.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position=`full`)}get backgroundColorRGB(){return this._cachedBg===null&&(this._cachedBg=this.options.backgroundColor?L3.toColor(this.options.backgroundColor):void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this._cachedFg=this.options.foregroundColor?L3.toColor(this.options.foregroundColor):void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},t7=1e3,n7=class{constructor(e,t=t7){this._renderCallback=e,this._debounceThresholdMS=t,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(e,t,n){this._rowCount=n,e=e===void 0?0:e,t=t===void 0?this._rowCount-1:t,this._rowStart=this._rowStart===void 0?e:Math.min(this._rowStart,e),this._rowEnd=this._rowEnd===void 0?t:Math.max(this._rowEnd,t);let r=performance.now();if(r-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=r,this._innerRefresh();else if(!this._additionalRefreshRequested){let e=r-this._lastRefreshMs,t=this._debounceThresholdMS-e;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},t)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},r7=20,i7=class extends G0{constructor(e,t,n,r){super(),this._terminal=e,this._coreBrowserService=n,this._renderService=r,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce=``;let i=this._coreBrowserService.mainDocument;this._accessibilityContainer=i.createElement(`div`),this._accessibilityContainer.classList.add(`xterm-accessibility`),this._rowContainer=i.createElement(`div`),this._rowContainer.setAttribute(`role`,`list`),this._rowContainer.classList.add(`xterm-accessibility-tree`),this._rowElements=[];for(let e=0;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);if(this._topBoundaryFocusListener=e=>this._handleBoundaryFocus(e,0),this._bottomBoundaryFocusListener=e=>this._handleBoundaryFocus(e,1),this._rowElements[0].addEventListener(`focus`,this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=i.createElement(`div`),this._liveRegion.classList.add(`live-region`),this._liveRegion.setAttribute(`aria-live`,`assertive`),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new n7(this._renderRows.bind(this))),!this._terminal.element)throw Error(`Cannot enable accessibility before Terminal.open`);this._terminal.element.insertAdjacentElement(`afterbegin`,this._accessibilityContainer),this._register(this._terminal.onResize(e=>this._handleResize(e.rows))),this._register(this._terminal.onRender(e=>this._refreshRows(e.start,e.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(e=>this._handleChar(e))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
201
201
  `))),this._register(this._terminal.onA11yTab(e=>this._handleTab(e))),this._register(this._terminal.onKey(e=>this._handleKey(e.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(A4(i,`selectionchange`,()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(H0(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t<e;t++)this._handleChar(` `)}_handleChar(e){this._liveRegionLineCount<r7+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===`
202
202
  `&&(this._liveRegionLineCount++,this._liveRegionLineCount===r7+1&&(this._liveRegion.textContent+=N1.get())))}_clearLiveRegion(){this._liveRegion.textContent=``,this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),/\p{Control}/u.test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let n=this._terminal.buffer,r=n.lines.length.toString();for(let i=e;i<=t;i++){let e=n.lines.get(n.ydisp+i),t=[],a=e?.translateToString(!0,void 0,void 0,t)||``,o=(n.ydisp+i+1).toString(),s=this._rowElements[i];s&&(a.length===0?(s.textContent=`\xA0`,this._rowColumns.set(s,[0,1])):(s.textContent=a,this._rowColumns.set(s,t)),s.setAttribute(`aria-posinset`,o),s.setAttribute(`aria-setsize`,r),this._alignRowWidth(s))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce=``)}_handleBoundaryFocus(e,t){let n=e.target,r=this._rowElements[t===0?1:this._rowElements.length-2];if(n.getAttribute(`aria-posinset`)===(t===0?`1`:`${this._terminal.buffer.lines.length}`)||e.relatedTarget!==r)return;let i,a;if(t===0?(i=n,a=this._rowElements.pop(),this._rowContainer.removeChild(a)):(i=this._rowElements.shift(),a=n,this._rowContainer.removeChild(i)),i.removeEventListener(`focus`,this._topBoundaryFocusListener),a.removeEventListener(`focus`,this._bottomBoundaryFocusListener),t===0){let e=this._createAccessibilityTreeNode();this._rowElements.unshift(e),this._rowContainer.insertAdjacentElement(`afterbegin`,e)}else{let e=this._createAccessibilityTreeNode();this._rowElements.push(e),this._rowContainer.appendChild(e)}this._rowElements[0].addEventListener(`focus`,this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error(`anchorNode and/or focusNode are null`);return}let t={node:e.anchorNode,offset:e.anchorOffset},n={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(n.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===n.node&&t.offset>n.offset)&&([t,n]=[n,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let r=this._rowElements.slice(-1)[0];if(n.node.compareDocumentPosition(r)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(n={node:r,offset:r.textContent?.length??0}),!this._rowContainer.contains(n.node))return;let i=({node:e,offset:t})=>{let n=e instanceof Text?e.parentNode:e,r=parseInt(n?.getAttribute(`aria-posinset`),10)-1;if(isNaN(r))return console.warn(`row is invalid. Race condition?`),null;let i=this._rowColumns.get(n);if(!i)return console.warn(`columns is null. Race condition?`),null;let a=t<i.length?i[t]:i.slice(-1)[0]+1;return a>=this._terminal.cols&&(++r,a=0),{row:r,column:a}},a=i(t),o=i(n);if(!(!a||!o)){if(a.row>o.row||a.row===o.row&&a.column>=o.column)throw Error(`invalid range`);this._terminal.select(a.column,a.row,(o.row-a.row)*this._terminal.cols-a.column+o.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener(`focus`,this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement(`div`);return e.setAttribute(`role`,`listitem`),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e]),this._alignRowWidth(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(e){e.style.transform=``;let t=e.getBoundingClientRect().width,n=this._rowColumns.get(e)?.slice(-1)?.[0];if(!n)return;let r=n*this._renderService.dimensions.css.cell.width;e.style.transform=`scaleX(${r/t})`}};i7=O1([k1(1,o0),k1(2,h0),k1(3,_0)],i7);var a7=class extends G0{constructor(e,t,n,r,i){super(),this._element=e,this._mouseService=t,this._renderService=n,this._bufferService=r,this._linkProviderService=i,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new Q),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new Q),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(H0(()=>{B0(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(A4(this._element,`mouseleave`,()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(A4(this._element,`mousemove`,this._handleMouseMove.bind(this))),this._register(A4(this._element,`mousedown`,this._handleMouseDown.bind(this))),this._register(A4(this._element,`mouseup`,this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let n=e.composedPath();for(let e=0;e<n.length;e++){let t=n[e];if(t.classList.contains(`xterm`))break;if(t.classList.contains(`xterm-hover`))return}(!this._lastBufferCell||t.x!==this._lastBufferCell.x||t.y!==this._lastBufferCell.y)&&(this._handleHover(t),this._lastBufferCell=t)}_handleHover(e){if(this._activeLine!==e.y||this._wasResized){this._clearCurrentLink(),this._askForLink(e,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,e)||(this._clearCurrentLink(),this._askForLink(e,!0))}_askForLink(e,t){(!this._activeProviderReplies||!t)&&(this._activeProviderReplies?.forEach(e=>{e?.forEach(e=>{e.link.dispose&&e.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let n=!1;for(let[r,i]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(r)&&(n=this._checkLinkProviderResult(r,e,n)):i.provideLinks(e.y,t=>{if(this._isMouseOut)return;let i=t?.map(e=>({link:e}));this._activeProviderReplies?.set(r,i),n=this._checkLinkProviderResult(r,e,n),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let n=new Set;for(let r=0;r<t.size;r++){let i=t.get(r);if(i)for(let t=0;t<i.length;t++){let r=i[t],a=r.link.range.start.y<e?0:r.link.range.start.x,o=r.link.range.end.y>e?this._bufferService.cols:r.link.range.end.x;for(let e=a;e<=o;e++){if(n.has(e)){i.splice(t--,1);break}n.add(e)}}}}_checkLinkProviderResult(e,t,n){if(!this._activeProviderReplies)return n;let r=this._activeProviderReplies.get(e),i=!1;for(let t=0;t<e;t++)(!this._activeProviderReplies.has(t)||this._activeProviderReplies.get(t))&&(i=!0);if(!i&&r){let e=r.find(e=>this._linkAtPosition(e.link,t));e&&(n=!0,this._handleNewLink(e))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!n)for(let e=0;e<this._activeProviderReplies.size;e++){let r=this._activeProviderReplies.get(e)?.find(e=>this._linkAtPosition(e.link,t));if(r){n=!0,this._handleNewLink(r);break}}return n}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&o7(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,B0(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0||e.link.decorations.underline,pointerCursor:e.link.decorations===void 0||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:e=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==e&&(this._currentLink.state.decorations.pointerCursor=e,this._currentLink.state.isHovered&&this._element.classList.toggle(`xterm-cursor-pointer`,e))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:t=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==t&&(this._currentLink.state.decorations.underline=t,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,t))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(e=>{if(!this._currentLink)return;let t=e.start===0?0:e.start+1+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.ydisp+1+e.end;if(this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=n&&(this._clearCurrentLink(t,n),this._lastMouseEvent)){let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._askForLink(e,!1)}})))}_linkHover(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(`xterm-cursor-pointer`)),t.hover&&t.hover(n,t.text)}_fireUnderlineEvent(e,t){let n=e.range,r=this._bufferService.buffer.ydisp,i=this._createLinkUnderlineEvent(n.start.x-1,n.start.y-r-1,n.end.x,n.end.y-r-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(i)}_linkLeave(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(`xterm-cursor-pointer`)),t.leave&&t.leave(n,t.text)}_linkAtPosition(e,t){let n=e.range.start.y*this._bufferService.cols+e.range.start.x,r=e.range.end.y*this._bufferService.cols+e.range.end.x,i=t.y*this._bufferService.cols+t.x;return n<=i&&i<=r}_positionFromMouseEvent(e,t,n){let r=n.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(r)return{x:r[0],y:r[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,n,r,i){return{x1:e,y1:t,x2:n,y2:r,cols:this._bufferService.cols,fg:i}}};a7=O1([k1(1,g0),k1(2,_0),k1(3,n0),k1(4,x0)],a7);function o7(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var s7=class extends K5{constructor(e={}){super(e),this._linkifier=this._register(new K0),this.browser=y6,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new K0),this._onCursorMove=this._register(new Q),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new Q),this.onKey=this._onKey.event,this._onRender=this._register(new Q),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new Q),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new Q),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new Q),this.onBell=this._onBell.event,this._onFocus=this._register(new Q),this._onBlur=this._register(new Q),this._onA11yCharEmitter=this._register(new Q),this._onA11yTabEmitter=this._register(new Q),this._onWillOpen=this._register(new Q),this._setup(),this._decorationService=this._instantiationService.createInstance($5),this._instantiationService.setService(d0,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(m6),this._instantiationService.setService(x0,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(f0)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register($0.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register($0.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register($0.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register($0.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(H0(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let e,n=``;switch(t.index){case 256:e=`foreground`,n=`10`;break;case 257:e=`background`,n=`11`;break;case 258:e=`cursor`,n=`12`;break;default:e=`ansi`,n=`4;`+t.index}switch(t.type){case 0:let r=I3.toColorRGB(e===`ansi`?this._themeService.colors.ansi[t.index]:this._themeService.colors[e]);this.coreService.triggerDataEvent(`${$.ESC}]${n};${A5(r)}${O3.ST}`);break;case 1:if(e===`ansi`)this._themeService.modifyColors(e=>e.ansi[t.index]=F3.toColor(...t.color));else{let n=e;this._themeService.modifyColors(e=>e[n]=F3.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(i7,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent($.ESC+`[I`),this.element.classList.add(`focus`),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value=``,this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent($.ESC+`[O`),this.element.classList.remove(`focus`),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let n=Math.min(this.buffer.x,this.cols-1),r=this._renderService.dimensions.css.cell.height,i=t.getWidth(n),a=this._renderService.dimensions.css.cell.width*i,o=this.buffer.y*this._renderService.dimensions.css.cell.height,s=n*this._renderService.dimensions.css.cell.width;this.textarea.style.left=s+`px`,this.textarea.style.top=o+`px`,this.textarea.style.width=a+`px`,this.textarea.style.height=r+`px`,this.textarea.style.lineHeight=r+`px`,this.textarea.style.zIndex=`-5`}_initGlobal(){this._bindKeys(),this._register(A4(this.element,`copy`,e=>{this.hasSelection()&&I1(e,this._selectionService)}));let e=e=>L1(e,this.textarea,this.coreService,this.optionsService);this._register(A4(this.textarea,`paste`,e)),this._register(A4(this.element,`paste`,e)),C6?this._register(A4(this.element,`mousedown`,e=>{e.button===2&&B1(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(A4(this.element,`contextmenu`,e=>{B1(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),j6&&this._register(A4(this.element,`auxclick`,e=>{e.button===1&&z1(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(A4(this.textarea,`keyup`,e=>this._keyUp(e),!0)),this._register(A4(this.textarea,`keydown`,e=>this._keyDown(e),!0)),this._register(A4(this.textarea,`keypress`,e=>this._keyPress(e),!0)),this._register(A4(this.textarea,`compositionstart`,()=>this._compositionHelper.compositionstart())),this._register(A4(this.textarea,`compositionupdate`,e=>this._compositionHelper.compositionupdate(e))),this._register(A4(this.textarea,`compositionend`,()=>this._compositionHelper.compositionend())),this._register(A4(this.textarea,`input`,e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){if(!e)throw Error(`Terminal requires a parent element.`);if(e.isConnected||this._logService.debug(`Terminal.open was called on an element that was not attached to the DOM`),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement(`div`),this.element.dir=`ltr`,this.element.classList.add(`terminal`),this.element.classList.add(`xterm`),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement(`div`),this._viewportElement.classList.add(`xterm-viewport`),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement(`div`),this.screenElement.classList.add(`xterm-screen`),this._register(A4(this.screenElement,`mousemove`,e=>this.updateCursorStyle(e))),this._helperContainer=this._document.createElement(`div`),this._helperContainer.classList.add(`xterm-helpers`),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let n=this.textarea=this._document.createElement(`textarea`);this.textarea.classList.add(`xterm-helper-textarea`),this.textarea.setAttribute(`aria-label`,j1.get()),M6||this.textarea.setAttribute(`aria-multiline`,`false`),this.textarea.setAttribute(`autocorrect`,`off`),this.textarea.setAttribute(`autocapitalize`,`off`),this.textarea.setAttribute(`spellcheck`,`false`),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange(`disableStdin`,()=>n.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(f6,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<`u`?window.document:null)),this._instantiationService.setService(h0,this._coreBrowserService),this._register(A4(this.textarea,`focus`,e=>this._handleTextAreaFocus(e))),this._register(A4(this.textarea,`blur`,()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(c6,this._document,this._helperContainer),this._instantiationService.setService(m0,this._charSizeService),this._themeService=this._instantiationService.createInstance(g8),this._instantiationService.setService(b0,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(U3),this._instantiationService.setService(y0,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(R6,this.rows,this.screenElement)),this._instantiationService.setService(_0,this._renderService),this._register(this._renderService.onRenderedViewportChange(e=>this._onRender.fire(e))),this.onResize(e=>this._renderService.resize(e.cols,e.rows)),this._compositionView=this._document.createElement(`div`),this._compositionView.classList.add(`composition-view`),this._compositionHelper=this._instantiationService.createInstance(k3,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(_6),this._instantiationService.setService(g0,this._mouseService);let r=this._linkifier.value=this._register(this._instantiationService.createInstance(a7,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(b3,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(e=>{super.scrollLines(e,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(o8,this.element,this.screenElement,r)),this._instantiationService.setService(v0,this._selectionService),this._register(this._selectionService.onRequestScrollLines(e=>this.scrollLines(e.amount,e.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(e=>this._renderService.handleSelectionChanged(e.start,e.end,e.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(e=>{this.textarea.value=e,this.textarea.focus(),this.textarea.select()})),this._register($0.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(x3,this.screenElement)),this._register(A4(this.element,`mousedown`,e=>this._selectionService.handleMouseDown(e))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add(`enable-mouse-events`)):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(i7,this)),this._register(this.optionsService.onSpecificOptionChange(`screenReaderMode`,e=>this._handleScreenReaderModeOptionChange(e))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(E3,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange(`overviewRuler`,e=>{!this._overviewRulerRenderer&&e&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(E3,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(s6,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function n(t){let n=e._mouseService.getMouseReportCoords(t,e.screenElement);if(!n)return!1;let r,i;switch(t.overrideType||t.type){case`mousemove`:i=32,t.buttons===void 0?(r=3,t.button!==void 0&&(r=t.button<3?t.button:3)):r=t.buttons&1?0:t.buttons&4?1:t.buttons&2?2:3;break;case`mouseup`:i=0,r=t.button<3?t.button:3;break;case`mousedown`:i=1,r=t.button<3?t.button:3;break;case`wheel`:if(e._customWheelEventHandler&&e._customWheelEventHandler(t)===!1)return!1;let n=t.deltaY;if(n===0||e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return!1;i=n<0?0:1,r=4;break;default:return!1}return i===void 0||r===void 0||r>4?!1:e.coreMouseService.triggerMouseEvent({col:n.col,row:n.row,x:n.x,y:n.y,button:r,action:i,ctrl:t.ctrlKey,alt:t.altKey,shift:t.shiftKey})}let r={mouseup:null,wheel:null,mousedrag:null,mousemove:null},i={mouseup:e=>(n(e),e.buttons||(this._document.removeEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.removeEventListener(`mousemove`,r.mousedrag)),this.cancel(e)),wheel:e=>(n(e),this.cancel(e,!0)),mousedrag:e=>{e.buttons&&n(e)},mousemove:e=>{e.buttons||n(e)}};this._register(this.coreMouseService.onProtocolChange(e=>{e?(this.optionsService.rawOptions.logLevel===`debug`&&this._logService.debug(`Binding to mouse events:`,this.coreMouseService.explainEvents(e)),this.element.classList.add(`enable-mouse-events`),this._selectionService.disable()):(this._logService.debug(`Unbinding from mouse events.`),this.element.classList.remove(`enable-mouse-events`),this._selectionService.enable()),e&8?r.mousemove||=(t.addEventListener(`mousemove`,i.mousemove),i.mousemove):(t.removeEventListener(`mousemove`,r.mousemove),r.mousemove=null),e&16?r.wheel||=(t.addEventListener(`wheel`,i.wheel,{passive:!1}),i.wheel):(t.removeEventListener(`wheel`,r.wheel),r.wheel=null),e&2?r.mouseup||=i.mouseup:(this._document.removeEventListener(`mouseup`,r.mouseup),r.mouseup=null),e&4?r.mousedrag||=i.mousedrag:(this._document.removeEventListener(`mousemove`,r.mousedrag),r.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(A4(t,`mousedown`,e=>{if(e.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(e)))return n(e),r.mouseup&&this._document.addEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.addEventListener(`mousemove`,r.mousedrag),this.cancel(e)})),this._register(A4(t,`wheel`,t=>{if(!r.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(t)===!1)return!1;if(!this.buffer.hasScrollback){if(t.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return this.cancel(t,!0);let n=$.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?`O`:`[`)+(t.deltaY<0?`A`:`B`);return this.coreService.triggerDataEvent(n,!0),this.cancel(t,!0)}}},{passive:!1}))}refresh(e,t){this._renderService?.refreshRows(e,t)}updateCursorStyle(e){this._selectionService?.shouldColumnSelect(e)?this.element.classList.add(`column-select`):this.element.classList.remove(`column-select`)}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){R1(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,n){this._selectionService.setSelection(e,t,n)}getSelection(){return this._selectionService?this._selectionService.selectionText:``}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(e,t){this._selectionService?.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key===`Dead`||e.key===`AltGraph`)&&(this._unprocessedDeadKey=!0);let n=J5(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),n.type===3||n.type===2){let t=this.rows-1;return this.scrollLines(n.type===2?-t:t),this.cancel(e,!0)}if(n.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(n.cancel&&this.cancel(e,!0),!n.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((n.key===$.ETX||n.key===$.CR)&&(this.textarea.value=``),this._onKey.fire({key:n.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(n.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let n=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState(`AltGraph`);return t.type===`keypress`?n:n&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(c7(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType===`insertText`&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){this._charSizeService?.measure()}clear(){if(this.buffer.ybase!==0||this.buffer.y!==0){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e<this.rows;e++)this.buffer.lines.push(this.buffer.getBlankLine(E8));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let e=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=e,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains(`focus`)?this.coreService.triggerDataEvent($.ESC+`[I`):this.coreService.triggerDataEvent($.ESC+`[O`)}_reportWindowsOptions(e){if(this._renderService)switch(e){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),t=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${$.ESC}[4;${t};${e}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${$.ESC}[6;${r};${n}t`);break}}cancel(e,t){if(!(!this.options.cancelEvents&&!t))return e.preventDefault(),e.stopPropagation(),!1}};function c7(e){return e.keyCode===16||e.keyCode===17||e.keyCode===18}var l7=class{constructor(){this._addons=[]}dispose(){for(let e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let n={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(n),t.dispose=()=>this._wrappedAddonDispose(n),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let n=0;n<this._addons.length;n++)if(this._addons[n]===e){t=n;break}if(t===-1)throw Error(`Could not dispose an addon that has not been loaded`);e.isDisposed=!0,e.dispose.apply(e.instance),this._addons.splice(t,1)}},u7=class{constructor(e){this._line=e}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(e,t){if(!(e<0||e>=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new Y1)}translateToString(e,t,n){return this._line.translateToString(e,t,n)}},d7=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new u7(t)}getNullCell(){return new Y1}},f7=class extends G0{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new Q),this.onBufferChange=this._onBufferChange.event,this._normal=new d7(this._core.buffers.normal,`normal`),this._alternate=new d7(this._core.buffers.alt,`alternate`),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw Error(`Active buffer is neither normal nor alternate`)}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},p7=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,e=>t(e.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(e,n)=>t(e,n.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},m7=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},h7=[`cols`,`rows`],g7=0,_7=class extends G0{constructor(e){super(),this._core=this._register(new s7(e)),this._addonManager=this._register(new l7),this._publicOptions={...this._core.options};let t=e=>this._core.options[e],n=(e,t)=>{this._checkReadonlyOptions(e),this._core.options[e]=t};for(let e in this._core.options){let r={get:t.bind(this,e),set:n.bind(this,e)};Object.defineProperty(this._publicOptions,e,r)}}_checkReadonlyOptions(e){if(h7.includes(e))throw Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw Error(`You must set the allowProposedApi option to true to use proposed API`)}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||=new p7(this._core),this._parser}get unicode(){return this._checkProposedApi(),new m7(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||=this._register(new f7(this._core)),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t=`none`;switch(this._core.coreMouseService.activeProtocol){case`X10`:t=`x10`;break;case`VT200`:t=`vt200`;break;case`DRAG`:t=`drag`;break;case`ANY`:t=`any`}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,n){this._verifyIntegers(e,t,n),this._core.select(e,t,n)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r
203
- `,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return j1.get()},set promptLabel(e){j1.set(e)},get tooMuchOutput(){return N1.get()},set tooMuchOutput(e){N1.set(e)}}}_verifyIntegers(...e){for(g7 of e)if(g7===1/0||isNaN(g7)||g7%1!=0)throw Error(`This API only accepts integers`)}_verifyPositiveIntegers(...e){for(g7 of e)if(g7&&(g7===1/0||isNaN(g7)||g7%1!=0||g7<0))throw Error(`This API only accepts positive integers`)}},v7=40,y7=12,b7=120,x7=36,S7=60;function C7(e,t,n){let r=window.location.protocol===`https:`?`wss`:`ws`,i=new URL(`/api/sessions/${encodeURIComponent(e)}/terminal/ws`,`${r}://${window.location.host}`);return i.searchParams.set(`cols`,String(t)),i.searchParams.set(`rows`,String(n)),i.toString()}var w7=[{label:`esc`,data:`\x1B`},{label:`tab`,data:` `},{label:`◀`,data:`\x1B[D`},{label:`▲`,data:`\x1B[A`},{label:`▼`,data:`\x1B[B`},{label:`▶`,data:`\x1B[C`}];function T7({session:e}){let t=_.useRef(null),n=_.useRef(null),r=_.useRef(null),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!1),u=_.useRef(!1),d=_.useRef(!1);_.useEffect(()=>{u.current=o},[o]),_.useEffect(()=>{d.current=c},[c]);let f=e?.status===`history`;function p(e){let t=n.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:`input`,data:e})),r.current?.focus()}return _.useEffect(()=>{let i=t.current;if(!e||!i||f)return;let o=new _7({convertEol:!0,fontSize:13,cursorBlink:!0,theme:{background:`#09090b`}}),s=new w1;o.loadAddon(s),o.open(i),s.fit(),r.current=o;let c=Math.max(o.cols||b7,v7),l=Math.max(o.rows||x7,y7);a(`连接中...`);let p=new WebSocket(C7(e.name,c,l));n.current=p,p.onmessage=e=>{try{let t=JSON.parse(e.data);t.type===`output`?o.write(t.data):t.type===`status`?t.phase===`ready`?a(`已连接`):t.phase===`closed`&&a(`会话已结束`):t.type===`error`&&o.write(`\r\n[error] ${t.error}\r\n`)}catch{}},p.onclose=()=>a(`连接已断开`),p.onerror=()=>a(`连接出错`);let m=o.onData(e=>{if(!e||p.readyState!==WebSocket.OPEN)return;let t=e;if(u.current&&e.length===1){let n=e.charCodeAt(0);(n>=65&&n<=90||n>=97&&n<=122)&&(t=String.fromCharCode(n&31))}else d.current&&e.length===1&&(t=`\x1B`+e);p.send(JSON.stringify({type:`input`,data:t}))}),h=0,g=new ResizeObserver(()=>{window.clearTimeout(h),h=window.setTimeout(()=>s.fit(),S7)});return g.observe(i),()=>{g.disconnect(),window.clearTimeout(h),m.dispose(),(p.readyState===WebSocket.OPEN||p.readyState===WebSocket.CONNECTING)&&(p.send(JSON.stringify({type:`close`})),p.close()),o.dispose(),n.current=null,r.current=null}},[e,f]),e?f?(0,q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:[(0,q.jsx)(`p`,{className:`font-medium text-zinc-200`,children:`容器不可用`}),(0,q.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器,无法连接终端。`})]}):(0,q.jsxs)(`div`,{className:`flex h-full flex-col bg-zinc-950`,children:[(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-zinc-800 bg-zinc-900 px-2 py-1.5`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 gap-1 overflow-x-auto`,children:[w7.map(e=>(0,q.jsx)(`button`,{type:`button`,onClick:()=>p(e.data),className:`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,children:e.label},e.label)),(0,q.jsx)(`button`,{type:`button`,onClick:()=>{s(e=>!e),r.current?.focus()},className:G(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,o&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`ctrl`}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>{l(e=>!e),r.current?.focus()},className:G(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,c&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`alt`})]}),(0,q.jsx)(`span`,{className:`shrink-0 truncate px-1 text-xs text-zinc-400`,children:i})]}),(0,q.jsx)(`div`,{ref:t,className:`min-h-0 flex-1 p-2`})]}):(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:`请先在左侧选择一个容器 / AGENT`})}var E7=_.createContext(void 0);function D7(e){let t=_.useContext(E7);if(t===void 0&&!e)throw Error(en(47));return t}var O7={...wl,disabled:e=>e.disabled,instantType:e=>e.instantType,openMethod:e=>e.openMethod,openChangeReason:e=>e.openChangeReason,modal:e=>e.modal,focusManagerModal:e=>e.focusManagerModal,stickIfOpen:e=>e.stickIfOpen,titleElementId:e=>e.titleElementId,descriptionElementId:e=>e.descriptionElementId,openOnHover:e=>e.openOnHover,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},k7=class extends Yc{constructor(e,t,n){let r=new hl;super(A7(e,r,t,n),j7(r),O7)}setOpen=(e,t)=>{let n=t.reason===Wr,r=t.reason===`trigger-press`&&t.event.detail===0,i=!e&&(t.reason===`escape-key`||t.reason==null),a=cl(t),o=this.select(`activeTriggerId`);if(!e&&t.reason===`close-press`&&t.trigger==null&&o!=null&&(t.trigger=this.context.triggerElements.getById(o)??this.select(`activeTriggerElement`)??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let s=()=>{let n={open:e,openChangeReason:t.reason};sl(n,e,t.trigger,a()),this.update(n)};n?(this.set(`stickIfOpen`,!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set(`stickIfOpen`,!1)}),Yo.flushSync(s)):s();let c;r?c=`click`:i?c=`dismiss`:t.reason===`focus-out`&&(c=`focus`),this.set(`instantType`,c)}};function A7(e,t,n,r=!1){let i={..._l(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...e};return i.open&&e?.mounted===void 0&&(i.mounted=!0),i.floatingRootContext=vl(t,n,r),i}function j7(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),stickIfOpenTimeout:new hi,triggerElements:e}}function M7({props:e}){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,modal:o=!1,handle:s,triggerId:c,defaultTriggerId:l=null}=e,u=P7(s,{modal:o,open:r,openProp:n,activeTriggerId:l,triggerIdProp:c});u.useControlledProp(`openProp`,n),u.useControlledProp(`triggerIdProp`,c);let d=u.useState(`open`),f=u.useState(`mounted`),p=u.useState(`payload`);u.useContextCallback(`onOpenChange`,i),u.useContextCallback(`onOpenChangeComplete`,a),ml(u,d),dl(u);let{forceUnmount:m}=fl(d,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:o}),_.useEffect(()=>{d||u.context.stickIfOpenTimeout.clear()},[u,d]),_.useImperativeHandle(e.actionsRef,()=>({unmount:m,close:()=>u.setOpen(!1,ai(ri))}),[m,u]);let h=d||f;return(0,q.jsxs)(E7.Provider,{value:u,children:[s&&(0,q.jsx)(al,{handle:s,store:u}),h&&(0,q.jsx)(F7,{store:u,modal:o}),typeof t==`function`?t({payload:p}):t]})}function N7(e){return D7(!0)?(0,q.jsx)(M7,{props:e}):(0,q.jsx)(ls,{children:(0,q.jsx)(M7,{props:e})})}function P7(e,t){let n=il((e,n)=>new k7(t,e,n));return _.useEffect(()=>n.context.stickIfOpenTimeout.disposeEffect(),[n]),n}function F7({store:e,modal:t}){let n=Es(e.useState(`floatingRootContext`),{outsidePressEvent:{mouse:t===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}}),r=n.reference,i=n.floating;return pl(e,{activeTriggerProps:r,inactiveTriggerProps:r,popupProps:i}),null}var I7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:s,payload:c,openOnHover:l=!1,delay:u=300,closeDelay:d=0,id:f,...p}=e,m=D7(!0),h=Tl(s)??m;if(!h)throw Error(en(74));let g=di(f),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),{registerTrigger:C,isMountedByThisTrigger:w}=ul(g,S,h,{payload:c,disabled:a,openOnHover:l,closeDelay:d}),T=h.useState(`openChangeReason`),E=h.useState(`stickIfOpen`),D=h.useState(`openMethod`),O=h.useState(`focusManagerModal`),k=Rl(y,{enabled:!a&&l&&(D!==`touch`||T!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:tu(),restMs:u,delay:{close:d},triggerElementRef:S,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),A=bs(y,{stickIfOpen:E}),j=Vu(()=>h.select(`open`),e=>{h.set(`openMethod`,e)}),M=h.useState(`triggerProps`,w),{getButtonProps:N,buttonRef:P}=zr({disabled:a,native:o}),F={open(e){return e&&T===`trigger-press`?$n.open(e):Qn.open(e)}},{preFocusGuardRef:I,handlePreFocusGuardFocus:L,handleFocusTargetFocus:R}=yY(h,S),z=Ln(`button`,e,{state:{disabled:a,open:b},ref:[P,t,C,S],props:[A.reference,k,M,j,{[Go]:``,id:g,"aria-haspopup":`dialog`,"aria-expanded":b,"aria-controls":x},p,N],stateAttributesMapping:F}),ee=(0,q.jsx)(_.Fragment,{children:z},g);return w&&!O?(0,q.jsxs)(_.Fragment,{children:[(0,q.jsx)(ba,{ref:I,onFocus:L}),ee,(0,q.jsx)(ba,{ref:h.context.triggerFocusTargetRef,onFocus:R})]}):ee}),L7=_.createContext(void 0);function R7(){let e=_.useContext(L7);if(e===void 0)throw Error(en(45));return e}var z7=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return D7().useState(`mounted`)||n?(0,q.jsx)(L7.Provider,{value:n,children:(0,q.jsx)(es,{ref:t,...r})}):null}),B7=_.createContext(void 0);function V7(){let e=_.useContext(B7);if(!e)throw Error(en(46));return e}var H7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,anchor:a,positionMethod:o,side:s,align:c,sideOffset:l,alignOffset:u,collisionBoundary:d=`clipping-ancestors`,collisionPadding:f,arrowPadding:p,sticky:m,disableAnchorTracking:h=!1,collisionAvoidance:g=qo,...v}=e,y=D7(),b=R7(),x=ss(),S=y.useState(`floatingRootContext`),C=y.useState(`mounted`),w=y.useState(`open`),T=y.useState(`openChangeReason`),E=y.useState(`activeTriggerElement`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`positionerElement`),A=y.useState(`instantType`),j=y.useState(`transitionStatus`),M=y.useState(`adaptiveOrigin`),N=_.useRef(null),P=el(k),F=Rf({anchor:a,floatingRootContext:S,positionMethod:o,mounted:C,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:p,collisionBoundary:d,collisionPadding:f,sticky:m,disableAnchorTracking:h,keepMounted:b,nodeId:x,collisionAvoidance:g,adaptiveOrigin:M}),I=S.useState(`domReferenceElement`);K(()=>{let e=I,t=N.current;if(e&&(N.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return P(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[I,P,y]);let L=D===!0&&T!==`trigger-hover`;Jf(w&&L,O===`touch`,k,E);let R=y.useStateSetter(`positionerElement`),z=Kf(e,{open:w,side:F.side,align:F.align,anchorHidden:F.anchorHidden,instant:A},{styles:F.positionerStyles,transitionStatus:j,props:v,refs:[t,R],hidden:!C,inert:!w});return(0,q.jsxs)(B7.Provider,{value:F,children:[C&&L&&(0,q.jsx)(vu,{inert:_u(!w),cutout:E}),(0,q.jsx)(cs,{id:x,children:z})]})}),U7=_.createContext(void 0);function W7(){let[e,t]=_.useState(0),n=jr(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:_.useMemo(()=>({register:n}),[n]),hasClosePart:e>0}}var G7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=D7(),l=V7(),u=ep(!0)!=null,{context:d,hasClosePart:f}=W7(),p=c.useState(`open`),m=c.useState(`openMethod`),h=c.useState(`instantType`),g=c.useState(`transitionStatus`),_=c.useState(`popupProps`),v=c.useState(`titleElementId`),y=c.useState(`descriptionElementId`),b=c.useState(`modal`),x=c.useState(`mounted`),S=c.useState(`openChangeReason`),C=c.useState(`activeTriggerElement`),w=c.useState(`floatingRootContext`),T=w.useState(`floatingId`),E=c.useState(`disabled`),D=c.useState(`openOnHover`),O=c.useState(`closeDelay`);tl({open:p,ref:c.context.popupRef,onComplete(){p&&c.context.onOpenChangeComplete?.(!0)}}),Il(w,{enabled:D&&!E,closeDelay:O});let k=a===void 0?rl(c.context.popupRef):a,A=b!==!1&&f;c.useSyncedValue(`focusManagerModal`,A);let j=c.useStateSetter(`popupElement`),M=Ln(`div`,e,{state:{open:p,side:l.side,align:l.align,instant:h,transitionStatus:g},ref:[t,c.context.popupRef,j],props:[_,{id:T,role:`dialog`,...nl,"aria-labelledby":v,"aria-describedby":y,onKeyDown(e){u&&cu.has(e.key)&&e.stopPropagation()}},Gf(g),s],stateAttributesMapping:tr});return(0,q.jsx)(ys,{context:w,openInteractionType:m,modal:A,disabled:!x||S===`trigger-hover`,initialFocus:k,returnFocus:o,restoreFocus:`popup`,previousFocusableElement:lr(C)?C:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,q.jsx)(U7.Provider,{value:d,children:M})})});function K7({...e}){return(0,q.jsx)(N7,{"data-slot":`popover`,...e})}function q7({...e}){return(0,q.jsx)(I7,{"data-slot":`popover-trigger`,...e})}function J7({className:e,align:t=`center`,alignOffset:n=0,side:r=`bottom`,sideOffset:i=4,...a}){return(0,q.jsx)(z7,{children:(0,q.jsx)(H7,{align:t,alignOffset:n,side:r,sideOffset:i,className:`isolate z-50`,children:(0,q.jsx)(G7,{"data-slot":`popover-content`,className:G(`z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...a})})})}function Y7(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,[a,o]=Nd({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:s,setMounted:c,transitionStatus:l}=$c(a,!0,!0),u=di(),[d,f]=_.useState(),p=d===null?void 0:d??u,m=jr(e=>{let t=!a,n=ai(Ur,e.nativeEvent);r(t,n),!n.isCanceled&&o(t)});return _.useMemo(()=>({defaultPanelId:u,disabled:i,handleTrigger:m,mounted:s,open:a,panelId:p,setMounted:c,setOpen:o,setPanelIdState:f,transitionStatus:l}),[u,i,m,s,a,p,c,o,f,l])}var X7=_.createContext(void 0);function Z7(){let e=_.useContext(X7);if(e===void 0)throw Error(en(15));return e}var Q7=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=Un.startingStyle]=`startingStyle`,e[e.endingStyle=Un.endingStyle]=`endingStyle`,e}({}),$7=function(e){return e.panelOpen=`data-panel-open`,e}({}),e9={[Q7.open]:``},t9={[Q7.closed]:``},n9={open(e){return e?{[$7.panelOpen]:``}:null}},r9={open(e){return e?e9:t9},...Kn},i9=_.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,style:c,...l}=e,u=jr(o),d=Y7({open:s,defaultOpen:i,onOpenChange:u,disabled:a}),f=_.useMemo(()=>({open:d.open,disabled:d.disabled,transitionStatus:d.transitionStatus}),[d.open,d.disabled,d.transitionStatus]),p=_.useMemo(()=>({...d,onOpenChange:u,state:f}),[d,u,f]),m=Ln(`div`,e,{state:f,ref:t,props:l,stateAttributesMapping:r9});return(0,q.jsx)(X7.Provider,{value:p,children:m})}),a9={...n9,...Kn},o9=_.forwardRef(function(e,t){let{panelId:n,open:r,handleTrigger:i,state:a,disabled:o}=Z7(),{className:s,disabled:c=o,render:l,nativeButton:u=!0,style:d,...f}=e,{getButtonProps:p,buttonRef:m}=zr({disabled:c,focusableWhenDisabled:!0,native:u});return Ln(`button`,e,{state:a,ref:[t,m],props:[{"aria-controls":r?n:void 0,"aria-expanded":r,onClick:i},f,p],stateAttributesMapping:a9})}),s9={height:void 0,width:void 0};function c9(e){let{externalRef:t,hiddenUntilFound:n,id:r,keepMounted:i,mounted:a,onOpenChange:o,open:s,setMounted:c,setOpen:l,transitionStatus:u}=e,d=_.useRef(null),f=_.useRef(null),[p,m]=_.useState(s9),h=_.useRef(s9),g=_.useRef(!1),v=_.useRef(s),y=_.useRef(!1),[b,x]=_.useState(!1),S=_.useRef(null),C=on(t,d),w=da(s),T=el(d),E=!s&&!a,D=b?`idle`:u,O=s&&(v.current||y.current),k=!s&&a&&f.current===`css-animation`&&p.height===void 0&&p.width===void 0?h.current:p,A=n&&E&&f.current!==`css-animation`,j=jr((e,t=!0)=>{t&&(h.current=e),m(e)}),M=jr(()=>{S.current?.(),S.current=null}),N=jr(e=>{M(),S.current=()=>{S.current=null,e()}}),P=jr(()=>{s&&a&&f.current===`css-animation`&&(y.current=!0)});K(()=>{!b||u===`starting`||x(!1)},[b,u]),_.useEffect(()=>()=>{P(),M()},[P,M]),K(()=>{let e=d.current;if(!e)return;!s&&S.current&&M();let t=u9(e,O);if(f.current=t,s&&u===`idle`&&v.current&&t===`css-animation`){h.current=l9(e);return}if(s&&u===`starting`){let n=g.current;if(g.current=!1,t===`none`){j(l9(e)),x(!0);return}if(t===`css-transition`){let t=p9(e);if(j(l9(e)),!n)return t;let r=f9(e,`transition-duration`,`0s`);return N(r),x(!0),t}j(l9(e));let r=f9(e,`animation-name`,`none`);if(!n){r();return}let i=f9(e,`animation-duration`,`0s`);r(),N(i),x(!0);return}if(!s&&a&&(u===`idle`||u===`starting`)){if(v.current=!1,y.current=!1,t===`none`){j(s9,!1),c(!1);return}j(l9(e));return}if(u!==`ending`)return;if(t===`none`){c(!1);return}let n=l9(e);if(!(n.height>0||n.width>0)){c(!1);return}j(n),t===`css-animation`&&f9(e,`animation-name`,`none`)()},[a,s,M,j,c,N,O,u]),tl({enabled:s&&a&&D===`idle`,open:!0,ref:d,onComplete(){s&&j(s9,!1)}}),_.useEffect(()=>{if(s||!a||D!==`ending`||!d.current)return;let e=new AbortController,t=-1;function n(){w.current||(c(!1),j(s9,!1))}return t=ha.request(()=>{T(n,e.signal)}),()=>{ha.cancel(t),e.abort()}},[w,a,s,D,T,j,c]),K(()=>{let e=d.current;!e||!n||!E||e.setAttribute(`hidden`,`until-found`)},[E,n]),_.useEffect(function(){let e=d.current;if(!e)return;function t(e){let t=ai(Hr,e);o(!0,t),!t.isCanceled&&(g.current=!0,l(!0))}return la(e,`beforematch`,t)},[o,l]);let F=i||n||a||s;return{height:k.height,props:{...A?{[Q7.startingStyle]:``}:void 0,hidden:E,id:r},ref:C,shouldPreventOpenAnimation:O,shouldRender:F,transitionStatus:D,width:k.width}}function l9(e){return{height:e.scrollHeight,width:e.scrollWidth}}function u9(e,t){let n=ar(e).getComputedStyle(e),r=(n.animationName.split(`,`).map(e=>e.trim()).some(e=>e!==``&&e!==`none`)||t)&&d9(n.animationDuration),i=d9(n.transitionDuration);return r&&i||i?`css-transition`:r?`css-animation`:`none`}function d9(e){return e.split(`,`).map(e=>e.trim()).some(e=>e!==``&&Number.parseFloat(e)>0)}function f9(e,t,n){let r=e.style.getPropertyValue(t),i=e.style.getPropertyPriority(t);return e.style.setProperty(t,n),()=>{if(r===``){e.style.removeProperty(t);return}e.style.setProperty(t,r,i)}}function p9(e){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)});function n(){Object.entries(t).forEach(([t,n])=>{if(n===``){e.style.removeProperty(t);return}e.style.setProperty(t,n)})}let r=ha.request(n);return()=>{ha.cancel(r),n()}}var m9=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),h9=_.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,style:s,...c}=e,{defaultPanelId:l,mounted:u,onOpenChange:d,open:f,setMounted:p,setPanelIdState:m,setOpen:h,state:g,transitionStatus:_}=Z7(),v=r??!1,y=i??!1,b=o||void 0,x=b??l;K(()=>(m(e=>b??(e===null?void 0:e)),()=>{m(e=>e===b?null:e)}),[b,m]);let{height:S,props:C,ref:w,shouldPreventOpenAnimation:T,shouldRender:E,transitionStatus:D,width:O}=c9({externalRef:t,hiddenUntilFound:v,id:x,keepMounted:y,mounted:u,onOpenChange:d,open:f,setMounted:p,setOpen:h,transitionStatus:_}),k={...g,transitionStatus:D},A=xn(s,k),j=Ln(`div`,{...e,style:void 0},{state:k,ref:w,props:[C,{style:{[m9.collapsiblePanelHeight]:S===void 0?`auto`:`${S}px`,[m9.collapsiblePanelWidth]:O===void 0?`auto`:`${O}px`}},c,A?{style:A}:void 0,T?{style:{animationName:`none`}}:void 0],stateAttributesMapping:r9});return E?j:null});function g9({...e}){return(0,q.jsx)(i9,{"data-slot":`collapsible`,...e})}function _9({...e}){return(0,q.jsx)(o9,{"data-slot":`collapsible-trigger`,...e})}function v9({...e}){return(0,q.jsx)(h9,{"data-slot":`collapsible-content`,...e})}var y9={tool:pe,command:fe,mcp:oe,agent_message:re,error:ie};function b9(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function x9(e){let t=[],n=(e,n)=>{let r=b9(n).trim();r&&t.push({label:e,value:r})};return e.kind===`command`&&(n(`命令`,e.command),typeof e.exitCode==`number`?n(`退出码`,String(e.exitCode)):n(`状态`,e.status),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`mcp`&&(n(`工具`,[e.server,e.toolName].filter(Boolean).join(`.`)),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`tool`&&(n(`工具`,e.toolName),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),(e.kind===`agent_message`||e.kind===`status`||e.kind===`error`)&&e.detail&&n(`详情`,e.detail),t}function S9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,q.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,q.jsx)(N,{className:`size-3`}):(0,q.jsx)(L,{className:`size-3`})})}function C9({part:e}){let t=e.label===`结果`;return(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:e.label}),t?(0,q.jsx)(S9,{text:e.value}):null]}),(0,q.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs whitespace-pre-wrap text-foreground`,children:e.value})]})}function w9({event:e}){let[t,n]=_.useState(!1),r=y9[e.kind]||re,i=e.kind===`agent_message`,a=_.useMemo(()=>x9(e),[e]);return i||a.length>0?(0,q.jsxs)(g9,{open:t,onOpenChange:n,children:[(0,q.jsxs)(_9,{className:`flex w-full items-center gap-1.5 rounded-md px-1.5 py-1 text-left text-sm hover:bg-muted`,children:[(0,q.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,q.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:i?`说明`:e.text}),(0,q.jsx)(F,{className:G(`size-3.5 shrink-0 text-muted-foreground transition-transform`,t&&`rotate-90`)})]}),(0,q.jsx)(v9,{className:`flex flex-col gap-2 px-1.5 pt-1 pb-1.5 pl-6`,children:i&&!a.length?(0,q.jsx)(`p`,{className:`text-sm whitespace-pre-wrap text-foreground`,children:e.detail||e.text}):a.map(e=>(0,q.jsx)(C9,{part:e},e.label))})]}):(0,q.jsxs)(`div`,{className:`flex items-start gap-1.5 px-1.5 py-1 text-sm`,children:[(0,q.jsx)(r,{className:`mt-0.5 size-3.5 shrink-0 text-muted-foreground`}),(0,q.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:e.text})]})}function T9({trace:e}){let[t,n]=_.useState(!1),r=_.useMemo(()=>Gt(e.traceEvents||[]),[e.traceEvents]);if(!r.length)return null;let i=Kt(r,e.pending===!0);return(0,q.jsxs)(g9,{open:t,onOpenChange:n,className:`w-full max-w-[75%]`,children:[(0,q.jsxs)(_9,{className:`flex w-full items-center gap-1.5 rounded-lg border bg-muted/40 px-2.5 py-1.5 text-left text-xs text-muted-foreground hover:bg-muted`,children:[(0,q.jsx)(F,{className:G(`size-3.5 shrink-0 transition-transform`,t&&`rotate-90`)}),(0,q.jsxs)(`span`,{className:`flex-1`,children:[`执行过程 · `,i]})]}),(0,q.jsx)(v9,{className:`mt-1 flex flex-col gap-0.5 rounded-lg border bg-muted/20 p-1.5`,children:r.map((e,t)=>(0,q.jsx)(w9,{event:e},`${e.kind}-${t}`))})]})}var E9={activity:`聊天`,terminal:`终端`,files:`文件`,detail:`详情`,config:`配置`,check:`检查`},D9=[`activity`,`files`],O9=Object.keys(E9).filter(e=>!D9.includes(e)),k9=`__streaming__`,A9=`__streaming_trace__`,j9=/^(\d+\.\d+\.\d+)-([A-Za-z0-9][A-Za-z0-9_.-]*)$/,M9={ok:`secondary`,warn:`outline`,danger:`destructive`,info:`outline`},N9={agent:`当前 AGENT 覆盖`,container:`容器默认模板`,inferred:`从启动命令推导`,none:`未配置`},P9={user:`用户`,assistant:`AGENT`,system:`系统`};function F9(e){return e===`history`?{label:`仅历史`,tone:`warn`}:e.toLowerCase().includes(`up`)?{label:`运行中`,tone:`ok`}:{label:`已停止`,tone:`danger`}}function I9(e){let t=e.lastResumeAt?R9(e.lastResumeAt):`暂无记录`;return e.lastResumeOk===!0?{value:`最近成功`,tone:`ok`,detail:`最近一次 resume 成功,时间:${t}。`}:e.lastResumeOk===!1?{value:`最近失败`,tone:`danger`,detail:e.lastResumeError?`最近一次 resume 失败:${e.lastResumeError}`:`最近一次 resume 失败,时间:${t}。`}:e.resumeSupported?{value:`未执行`,tone:`warn`,detail:`支持 resume,但当前会话还没有最近一次执行记录。`}:{value:`不支持`,tone:`warn`,detail:`当前 Agent 程序或模板不支持 resume。`}}function L9({title:e,rows:t}){return(0,q.jsxs)(UX,{children:[(0,q.jsx)(WX,{children:(0,q.jsx)(GX,{className:`text-sm`,children:e})}),(0,q.jsx)(KX,{className:`flex flex-col divide-y`,children:t.map(e=>(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-2 first:pt-0 last:pb-0`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.label}),e.tone?(0,q.jsx)(id,{variant:M9[e.tone],children:e.value}):(0,q.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.value})]}),e.detail?(0,q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.detail}):null]},e.label))})]})}function R9(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function z9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,q.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,q.jsx)(N,{className:`size-3`}):(0,q.jsx)(L,{className:`size-3`})})}function B9({session:e,messages:t,mode:n,onPreviewHtml:r}){let i=_.useMemo(()=>Ut(t),[t]),a=_.useRef(null),o=_.useRef(!0);function s(){let e=a.current;e&&(o.current=e.scrollHeight-e.scrollTop-e.clientHeight<48)}return _.useEffect(()=>{let e=a.current;!e||!o.current||(e.scrollTop=e.scrollHeight)},[i]),e?i.length?(0,q.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-x-hidden overflow-y-auto overscroll-y-contain`,children:(0,q.jsx)(`div`,{className:`flex flex-col gap-3 p-4`,children:i.map(e=>{let t=e.mode===`agent`||e.mode===`command`?e.mode:``,i=t!==``&&t!==n,a=e.streamTrace===!0&&!e.pairedTrace;return(0,q.jsxs)(`div`,{className:G(`flex flex-col gap-1 transition-opacity`,e.role===`user`?`items-end`:`items-start`,i&&`opacity-25`),children:[e.pairedTrace?(0,q.jsx)(T9,{trace:e.pairedTrace}):null,a?(0,q.jsx)(T9,{trace:e}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:G(`max-w-full rounded-xl px-3 py-2 text-sm sm:max-w-[75%]`,e.role===`user`?`max-w-[88%] bg-muted/80 text-foreground whitespace-pre-wrap sm:max-w-[75%]`:e.mode===`command`?`bg-muted/40 whitespace-pre-wrap text-foreground`:e.role===`system`?`bg-transparent whitespace-pre-wrap text-muted-foreground italic`:`bg-muted/40 text-foreground`,e.pending&&`opacity-70`),children:e.role===`assistant`?(0,q.jsx)(u1,{content:e.content||(e.pending?`…`:``),onPreviewHtml:e=>r(`聊天中的 HTML 代码块`,e)}):e.content||(e.pending?`…`:``)}),(0,q.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-xs text-muted-foreground`,children:[R9(e.timestamp),e.interrupted?` · 已停止`:``,e.content&&!e.pending?(0,q.jsx)(z9,{text:e.content}):null]})]})]},e.id)})})}):(0,q.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,q.jsx)(`p`,{children:`还没有对话记录,在下方输入内容开始与 AGENT 交流。`})}):(0,q.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,q.jsx)(`p`,{children:`请选择左侧的容器 / AGENT,或点击「新建容器」创建一个新会话。`})})}function V9({text:e}){return(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:e})}function H9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=F9(e.status),n=I9(e),r=j9.test(e.applied.imageVersion||``),i=!!(e.applied.hostPath&&e.applied.containerPath);return(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`运行检查`,rows:[{label:`容器状态`,value:t.label,tone:t.tone,detail:t.tone===`ok`?`容器处于可交互状态。`:`当前不是活跃运行态,部分功能可能受限。`},{label:`Agent 输入`,value:e.agentEnabled?`已配置`:`未配置`,tone:e.agentEnabled?`ok`:`warn`,detail:e.agentEnabled?`活动页可直接发送 Agent 提示词。`:`当前会话不支持 Agent 模式。`},{label:`Resume 健康`,value:n.value,tone:n.tone,detail:n.detail},{label:`镜像版本`,value:r?`格式正常`:`格式异常`,tone:r?`ok`:`danger`,detail:e.applied.imageVersion?`当前值:${e.applied.imageVersion}。建议保持 x.y.z-后缀 格式,便于 manyoyo 的版本校验。`:`缺少 imageVersion,manyoyo 的版本校验会失效。`},{label:`工作目录映射`,value:i?`已配置`:`缺失`,tone:i?`ok`:`danger`,detail:i?`宿主目录与容器目录都已配置。`:`hostPath / containerPath 是容器会话最关键的上下文。`}]}),e.lastResumeError?(0,q.jsx)(L9,{title:`最近问题`,rows:[{label:`Resume 错误`,value:`有错误输出`,tone:`danger`,detail:e.lastResumeError}]}):null]})}function U9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=e.applied,n=N9[e.agentPromptSource]||`未配置`,r=[];return t.shellPrefix&&r.push({label:`shellPrefix`,value:t.shellPrefix}),t.shell&&r.push({label:`shell`,value:t.shell}),t.shellSuffix&&r.push({label:`shellSuffix`,value:t.shellSuffix}),t.defaultCommand&&t.defaultCommand!==t.shell?r.push({label:`启动命令`,value:t.defaultCommand}):t.shell||r.push({label:`启动命令`,value:t.defaultCommand||`—`}),r.push({label:`Agent 模板`,value:e.agentPromptCommand||`—`}),r.push({label:`模板来源`,value:n}),r.push({label:`yolo`,value:t.yolo||`—`}),(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`基础配置`,rows:[{label:`AGENT`,value:e.agentName||e.name||`—`},{label:`containerName`,value:t.containerName||e.containerName||`—`},{label:`imageName`,value:t.imageName||e.image||`—`},{label:`imageVersion`,value:t.imageVersion||`—`},{label:`containerMode`,value:t.containerMode||`default`}]}),(0,q.jsx)(L9,{title:`路径与资源`,rows:[{label:`hostPath`,value:t.hostPath||`—`},{label:`containerPath`,value:t.containerPath||`—`},{label:`env 数量`,value:String(t.envCount||0)},{label:`volume 数量`,value:String(t.volumeCount||0)},{label:`port 数量`,value:String(t.portCount||0)}]}),(0,q.jsx)(L9,{title:`命令与 Agent`,rows:r})]})}function W9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=F9(e.status),n=I9(e),r=N9[e.agentPromptSource]||`未配置`,i=P9[e.latestRole]||`暂无`,a=e.latestTimestamp?R9(e.latestTimestamp):`暂无`;return(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`会话概览`,rows:[{label:`AGENT`,value:e.agentName||e.name},{label:`容器`,value:e.containerName||`—`},{label:`状态`,value:t.label,tone:t.tone},{label:`镜像`,value:e.image||e.applied.imageName||`—`},{label:`最近更新`,value:e.updatedAt?R9(e.updatedAt):`—`},{label:`消息数`,value:String(e.messageCount||0)}]}),(0,q.jsx)(L9,{title:`Agent 运行`,rows:[{label:`已启用`,value:e.agentEnabled?`是`:`否`,tone:e.agentEnabled?`ok`:`warn`},{label:`程序`,value:e.agentProgram||`—`},{label:`模板来源`,value:r},{label:`支持 resume`,value:e.resumeSupported?`是`:`否`,tone:e.resumeSupported?`ok`:`warn`},{label:`最近 resume`,value:e.lastResumeAt?R9(e.lastResumeAt):`暂无`},{label:`最近结果`,value:e.lastResumeOk==null?`暂无`:e.lastResumeOk?`成功`:`失败`,tone:e.lastResumeOk==null?`info`:e.lastResumeOk?`ok`:`danger`}]}),(0,q.jsx)(L9,{title:`用量统计`,rows:e.usageTotal?[{label:`累计输入 tokens`,value:String(e.usageTotal.inputTokens)},{label:`累计输出 tokens`,value:String(e.usageTotal.outputTokens)},{label:`累计花费`,value:typeof e.usageTotal.costUsd==`number`?`$${e.usageTotal.costUsd.toFixed(4)}`:`暂不支持`}]:[{label:`状态`,value:`暂无数据`,tone:`info`,detail:`当前 Agent 程序不支持用量统计,或还未执行过对话。`}]}),(0,q.jsx)(L9,{title:`最近活动`,rows:[{label:`最近角色`,value:i},{label:`最近时间`,value:a},{label:`resume 状态`,value:n.value,tone:n.tone}]})]})}function G9({draft:e,onDraftChange:t,onSend:n,onStop:r,mode:i,onModeChange:a,disabled:o,sending:s,session:c,onOpenCliTemplate:l,onOpenModel:u}){let d=AY(),[f,p]=_.useState(!1),m=i===`agent`&&!!c&&!c?.agentEnabled,h=!!c?.archived,g=o||m||h;return(0,q.jsxs)(`div`,{className:`border-t p-3`,children:[(0,q.jsx)(Fp,{placeholder:o?`请先在左侧选择一个容器 / AGENT`:h?`该 AGENT 已被删除,仅可查看历史消息`:m?`当前会话不支持 Agent 模式`:i===`command`?`输入容器命令,例如: ls -la`:`输入要发给 AGENT 的内容`,className:`min-h-16 resize-none`,value:e,disabled:g,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||d||e.shiftKey||e.altKey||(e.preventDefault(),!s&&!g&&n())}}),(0,q.jsxs)(`div`,{className:`mt-2 flex items-center justify-between gap-2`,children:[(0,q.jsxs)(K7,{open:f,onOpenChange:p,children:[(0,q.jsx)(q7,{render:(0,q.jsx)(J,{variant:`outline`,className:`px-4`,disabled:o}),children:`选项`}),(0,q.jsx)(J7,{align:`start`,className:`w-44 p-1`,children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(J,{variant:i===`agent`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`agent`),p(!1)},children:`Agent对话`}),(0,q.jsx)(J,{variant:i===`command`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`command`),p(!1)},children:`系统命令`}),(0,q.jsx)(dd,{className:`my-1`}),(0,q.jsxs)(J,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{l(),p(!1)},children:[`CLI · `,c?.agentProgram||`未设置`]}),(0,q.jsxs)(J,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{u(),p(!1)},children:[`模型 · `,c?.model||`跟随默认`]})]})})]}),s?(0,q.jsx)(J,{variant:`destructive`,className:`px-4`,onClick:r,children:`停止`}):(0,q.jsxs)(J,{className:`px-4`,onClick:n,disabled:g,children:[(0,q.jsx)(ue,{"data-icon":`inline-start`}),`发送`]})]})]})}function K9({activeSession:e,onAfterSend:t,filesEditorRef:n,confirmLeaveIfDirty:r,creatingAgent:i}){let[a,o]=_.useState(`activity`),[s,c]=_.useState([]),[l,u]=_.useState(!1),[d,f]=_.useState(``),[p,m]=_.useState(`agent`),[h,g]=_.useState(!1),[v,y]=_.useState(()=>new Set),[b,x]=_.useState(``),[S,C]=_.useState(!1),[w,T]=_.useState(!1),[E,D]=_.useState(null),[O,k]=_.useState(null),A=_.useRef(e?.name??null);_.useEffect(()=>{A.current=e?.name??null},[e?.name]);let j=e?v.has(e.name):!1;async function M(e){a!==e&&(a===`files`&&!await r()||o(e))}function N(e,t){y(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})}let P=_.useCallback(t=>e?(t||(x(``),u(!0)),Jt(`/api/sessions/${encodeURIComponent(e.name)}/messages`).then(e=>{c(Array.isArray(e.messages)?e.messages:[])}).catch(e=>{t||x(e instanceof Error?e.message:`加载消息失败`)}).finally(()=>{t||u(!1)})):(c([]),u(!1),Promise.resolve()),[e?.name]),F=_.useCallback(()=>e?Jt(`/api/sessions/${encodeURIComponent(e.name)}/detail`).then(e=>D(e.detail||null)).catch(()=>{}):(D(null),Promise.resolve()),[e?.name]);_.useEffect(()=>{P(),F()},[P,F]),RX(e,s,_.useCallback(async()=>{await Promise.all([P(!0),F()])},[P,F]),j);async function I(){let n=d.trim();if(!n||!e||v.has(e.name))return;let r=e.name,i=()=>A.current===r;if(f(``),x(``),c(e=>[...e,{id:`local-${Date.now()}`,role:`user`,content:n,timestamp:new Date().toISOString(),mode:p}]),p===`command`){N(r,!0);try{let e=await Yt(`/api/sessions/${encodeURIComponent(r)}/run`,{command:n});i()&&c(t=>[...t,{id:`result-${Date.now()}`,role:`system`,content:String(e.output||``),timestamp:new Date().toISOString(),mode:`command`,exitCode:e.exitCode}])}catch(e){i()&&x(e instanceof Error?e.message:`命令执行失败`)}finally{N(r,!1),t(),i()&&F()}return}N(r,!0);let a=[];c(e=>[...e,{id:A9,role:`assistant`,content:`[执行过程]`,timestamp:new Date().toISOString(),streamTrace:!0,traceEvents:[],pending:!0,mode:`agent`},{id:k9,role:`assistant`,content:``,timestamp:new Date().toISOString(),pending:!0,mode:`agent`}]);try{await Zt(`/api/sessions/${encodeURIComponent(r)}/agent/stream`,{prompt:n},e=>{i()&&(e.type===`trace`?(e.traceEvent&&a.push(e.traceEvent),c(e=>e.map(e=>e.id===A9?{...e,traceEvents:a.slice()}:e))):e.type===`content_delta`?c(t=>t.map(t=>t.id===k9?{...t,content:e.content}:t)):e.type===`result`?c(t=>t.map(e=>e.id===A9?{...e,pending:!1}:e).map(t=>t.id===k9?{...t,content:e.output,pending:!1,interrupted:e.interrupted,exitCode:e.exitCode}:t)):e.type===`error`&&(x(e.error),c(e=>e.filter(e=>e.id!==k9&&e.id!==A9))))})}catch(e){i()&&(x(e instanceof Error?e.message:`发送失败`),c(e=>e.filter(e=>e.id!==k9&&e.id!==A9)))}finally{N(r,!1),t(),i()&&F()}}async function L(){if(e)try{await Yt(`/api/sessions/${encodeURIComponent(e.name)}/agent/stop`,{})}catch(e){x(e instanceof Error?e.message:`停止失败`)}}return(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[(0,q.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b px-3`,children:[(0,q.jsx)(bX,{}),(0,q.jsx)(dd,{orientation:`vertical`,className:`h-4!`}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(J,{variant:a===`activity`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`activity`,onClick:()=>M(`activity`),children:`聊天`}),(0,q.jsx)(J,{variant:a===`files`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`files`,onClick:()=>M(`files`),children:`文件`}),(0,q.jsxs)(K7,{open:h,onOpenChange:g,children:[(0,q.jsx)(q7,{render:(0,q.jsx)(J,{variant:`ghost`,size:`icon-sm`,title:`更多标签页`}),children:(0,q.jsx)(R,{})}),(0,q.jsx)(J7,{align:`start`,className:`w-36 p-1`,children:(0,q.jsx)(`div`,{className:`flex flex-col gap-1`,children:O9.map(e=>(0,q.jsx)(J,{variant:a===e?`secondary`:`ghost`,size:`sm`,className:`justify-start`,"aria-current":a===e,onClick:()=>{M(e),g(!1)},children:E9[e]},e))})})]})]}),(0,q.jsx)(dd,{orientation:`vertical`,className:`h-4! shrink-0`}),(0,q.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1.5 truncate text-sm font-medium`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e?`${e.containerRemark||e.containerName} · ${e.agentRemark||e.agentName}`:`选择左侧的容器 / AGENT 开始`}),e?.archived?(0,q.jsx)(id,{variant:`outline`,className:`shrink-0`,children:`已停止`}):null]})]}),(0,q.jsxs)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-x-hidden`,children:[i?(0,q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2`,children:[(0,q.jsx)(ad,{className:`size-6`}),(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在创建 AGENT...`})]}):a===`activity`?l?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,q.jsx)(ad,{className:`size-6`})}):(0,q.jsx)(B9,{session:e,messages:s,mode:p,onPreviewHtml:(e,t)=>k({title:e,code:t})},e?.name??`none`):null,a===`terminal`?(0,q.jsx)(T7,{session:e}):null,a===`files`?(0,q.jsx)(_1,{activeSession:e,editorStateRef:n,confirmLeaveIfDirty:r,onPreviewHtml:(e,t)=>k({title:e,code:t})}):null,a===`detail`?(0,q.jsx)(W9,{detail:E}):null,a===`config`?(0,q.jsx)(U9,{detail:E}):null,a===`check`?(0,q.jsx)(H9,{detail:E}):null]}),a===`activity`&&b?(0,q.jsx)(sd,{variant:`destructive`,className:`mx-3 mb-2`,children:(0,q.jsx)(cd,{children:b})}):null,a===`activity`?(0,q.jsx)(G9,{draft:d,onDraftChange:f,onSend:I,onStop:L,mode:p,onModeChange:m,disabled:!e||l,sending:j,session:e,onOpenCliTemplate:()=>C(!0),onOpenModel:()=>T(!0)}):null,(0,q.jsx)(HX,{open:S,onOpenChange:C,session:e,onSaved:()=>{t(),F()}}),(0,q.jsx)(x1,{open:w,onOpenChange:T,session:e,onSaved:()=>{t(),F()}}),(0,q.jsx)(v1,{state:O,onOpenChange:e=>{e||k(null)}})]})}function q9(){let[e,t]=_.useState([]),[n,r]=_.useState(!0),[i,a]=_.useState(``),o=_.useCallback(async()=>{a(``);try{let e=await Jt(`/api/sessions`),n=Array.isArray(e.sessions)?e.sessions:[];return t(n),n}catch(e){return a(e instanceof Error?e.message:`加载会话列表失败`),[]}finally{r(!1)}},[]);return _.useEffect(()=>{o()},[o]),{sessions:e,containers:_.useMemo(()=>Qt(e),[e]),loading:n,error:i,refresh:o}}function J9(){let[e,t]=_.useState(null),[n,r]=_.useState(!1),i=_.useCallback((e,n)=>new Promise(r=>{t({fileName:e,save:n,resolve:r})}),[]);function a(e){t(t=>(t?.resolve(e),null))}async function o(){if(!e||n)return;r(!0);let t=await e.save();r(!1),a(t?`proceed`:`cancel`)}return{ask:i,dialog:(0,q.jsx)(Ju,{open:e!==null,onOpenChange:e=>{!e&&!n&&a(`cancel`)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{className:`sr-only`,children:`有未保存的修改`}),(0,q.jsxs)(td,{className:`text-foreground`,children:[`是否要保存对 `,e?.fileName,` 的更改?`,(0,q.jsx)(`br`,{}),`如果不保存,你的更改将丢失。`]}),(0,q.jsxs)($u,{children:[(0,q.jsxs)(J,{disabled:n,onClick:o,children:[n?(0,q.jsx)(ad,{"data-icon":`inline-start`}):null,`保存`]}),(0,q.jsx)(J,{variant:`outline`,disabled:n,onClick:()=>a(`proceed`),children:`不保存`}),(0,q.jsx)(J,{variant:`outline`,disabled:n,onClick:()=>a(`cancel`),children:`取消`})]})]})})}}function Y9({width:e,dragging:t,onPointerDown:n}){let{isMobile:r,state:i}=_X();return r||i===`collapsed`?null:(0,q.jsx)(FX,{onPointerDown:n,dragging:t,className:`absolute inset-y-0 z-20 -ml-1`,style:{left:e}})}function X9(){let{sessions:e,containers:t,loading:n,error:r,refresh:i}=q9(),{width:a,dragging:o,onHandlePointerDown:s}=ZX({storageKey:`manyoyo:sidebar-width`,defaultWidth:288,min:224,max:512}),[c,l]=_.useState(null),[u,d]=_.useState(null),f=_.useMemo(()=>e.find(e=>e.name===c)??null,[e,c]),p=_.useRef(null),{ask:m,dialog:h}=J9(),g=_.useCallback(async()=>{let e=p.current;return!e||await m(e.fileName,e.save)===`proceed`},[m]);function v(e){l(e?e.name:null)}return(0,q.jsxs)(vX,{className:`relative h-svh overflow-hidden`,style:{"--sidebar-width":`${a}px`},children:[(0,q.jsx)(PX,{containers:t,loading:n,error:r,activeSessionName:c,onSelectSession:v,onRefresh:i,confirmLeaveIfDirty:g,creatingAgentContainer:u,onCreatingAgentContainerChange:d}),(0,q.jsx)(Y9,{width:a,dragging:o,onPointerDown:s}),(0,q.jsx)(xX,{className:`min-h-0 min-w-0`,children:(0,q.jsx)(K9,{activeSession:f,onAfterSend:i,filesEditorRef:p,confirmLeaveIfDirty:g,creatingAgent:u!==null})}),h]})}var Z9=`/shadcn`;function Q9(){let[e,t]=_.useState(``),[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!0);_.useEffect(()=>{let e=!1;return fetch(`/api/sessions`,{headers:{"X-Requested-With":`XMLHttpRequest`}}).then(t=>{if(!e&&t.ok){window.location.href=Z9;return}e||l(!1)}).catch(()=>{e||l(!1)}),()=>{e=!0}},[]);async function u(t){if(t.preventDefault(),!o){a(``),s(!0);try{let t=await fetch(`/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({username:e.trim(),password:n})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r.error||`登录失败`);window.location.href=Z9}catch(e){a(e instanceof Error?e.message:`登录失败`),s(!1)}}}return c?(0,q.jsx)(`div`,{className:`flex min-h-svh items-center justify-center`}):(0,q.jsxs)(`div`,{className:`relative flex min-h-svh items-center justify-center overflow-hidden p-6`,children:[(0,q.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-40 [background-image:linear-gradient(to_right,var(--border)_1px,transparent_1px),linear-gradient(to_bottom,var(--border)_1px,transparent_1px)] [background-size:32px_32px] [mask-image:radial-gradient(ellipse_60%_50%_at_50%_0%,black,transparent)]`,"aria-hidden":!0}),(0,q.jsx)(`div`,{className:`pointer-events-none absolute top-1/4 left-1/2 -z-10 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary/10 blur-3xl`,"aria-hidden":!0}),(0,q.jsxs)(`div`,{className:`relative w-full max-w-sm`,children:[(0,q.jsxs)(`div`,{className:`absolute inset-x-0 bottom-full mb-6 flex flex-col items-center gap-1.5 text-center`,children:[(0,q.jsx)(`span`,{className:`font-mono text-xs tracking-[0.2em] text-muted-foreground uppercase`,children:`Agent Sandbox Console`}),(0,q.jsx)(`h1`,{className:`font-mono text-4xl font-semibold tracking-tight text-foreground`,children:`MANYOYO`}),(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`AI Agent 容器安全沙箱 · 安全隔离运行`})]}),(0,q.jsxs)(UX,{className:`w-full gap-0 py-0 shadow-lg`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5 border-b px-4 py-2.5`,children:[(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-destructive/70`}),(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-amber-500/70`}),(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-emerald-500/70`})]}),(0,q.jsx)(KX,{className:`px-6 py-6`,children:(0,q.jsx)(`form`,{onSubmit:u,children:(0,q.jsxs)(md,{children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`login-username`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`用户名`}),(0,q.jsx)(Ld,{id:`login-username`,autoFocus:!0,autoComplete:`username`,value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),document.getElementById(`login-password`)?.focus())}})]}),(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`login-password`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`密码`}),(0,q.jsx)(Ld,{id:`login-password`,type:`password`,autoComplete:`current-password`,value:n,onChange:e=>r(e.target.value)})]}),i?(0,q.jsx)(sd,{variant:`destructive`,children:(0,q.jsx)(cd,{children:i})}):null,(0,q.jsxs)(J,{type:`submit`,size:`lg`,className:`w-full`,disabled:o,children:[o?`登录中...`:`登录`,o?null:(0,q.jsx)(F,{"data-icon":`inline-end`})]})]})})})]})]})]})}var $9=window.location.pathname===`/shadcn/auth/login`;(0,v.createRoot)(document.getElementById(`root`)).render((0,q.jsx)(_.StrictMode,{children:(0,q.jsx)(Kq,{children:$9?(0,q.jsx)(Q9,{}):(0,q.jsx)(X9,{})})}));</script>
203
+ `,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return j1.get()},set promptLabel(e){j1.set(e)},get tooMuchOutput(){return N1.get()},set tooMuchOutput(e){N1.set(e)}}}_verifyIntegers(...e){for(g7 of e)if(g7===1/0||isNaN(g7)||g7%1!=0)throw Error(`This API only accepts integers`)}_verifyPositiveIntegers(...e){for(g7 of e)if(g7&&(g7===1/0||isNaN(g7)||g7%1!=0||g7<0))throw Error(`This API only accepts positive integers`)}},v7=40,y7=12,b7=120,x7=36,S7=60;function C7(e,t,n){let r=window.location.protocol===`https:`?`wss`:`ws`,i=new URL(`/api/sessions/${encodeURIComponent(e)}/terminal/ws`,`${r}://${window.location.host}`);return i.searchParams.set(`cols`,String(t)),i.searchParams.set(`rows`,String(n)),i.toString()}var w7=[{label:`esc`,data:`\x1B`},{label:`tab`,data:` `},{label:`◀`,data:`\x1B[D`},{label:`▲`,data:`\x1B[A`},{label:`▼`,data:`\x1B[B`},{label:`▶`,data:`\x1B[C`}];function T7({session:e}){let t=_.useRef(null),n=_.useRef(null),r=_.useRef(null),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!1),u=_.useRef(!1),d=_.useRef(!1);_.useEffect(()=>{u.current=o},[o]),_.useEffect(()=>{d.current=c},[c]);let f=e?.status===`history`;function p(e){let t=n.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:`input`,data:e})),r.current?.focus()}return _.useEffect(()=>{let i=t.current;if(!e||!i||f)return;let o=new _7({convertEol:!0,fontSize:13,cursorBlink:!0,theme:{background:`#09090b`}}),s=new w1;o.loadAddon(s),o.open(i),s.fit(),r.current=o;let c=Math.max(o.cols||b7,v7),l=Math.max(o.rows||x7,y7);a(`连接中...`);let p=new WebSocket(C7(e.name,c,l));n.current=p,p.onmessage=e=>{try{let t=JSON.parse(e.data);t.type===`output`?o.write(t.data):t.type===`status`?t.phase===`ready`?a(`已连接`):t.phase===`closed`&&a(`会话已结束`):t.type===`error`&&o.write(`\r\n[error] ${t.error}\r\n`)}catch{}},p.onclose=()=>a(`连接已断开`),p.onerror=()=>a(`连接出错`);let m=o.onData(e=>{if(!e||p.readyState!==WebSocket.OPEN)return;let t=e;if(u.current&&e.length===1){let n=e.charCodeAt(0);(n>=65&&n<=90||n>=97&&n<=122)&&(t=String.fromCharCode(n&31))}else d.current&&e.length===1&&(t=`\x1B`+e);p.send(JSON.stringify({type:`input`,data:t}))}),h=0,g=new ResizeObserver(()=>{window.clearTimeout(h),h=window.setTimeout(()=>s.fit(),S7)});return g.observe(i),()=>{g.disconnect(),window.clearTimeout(h),m.dispose(),(p.readyState===WebSocket.OPEN||p.readyState===WebSocket.CONNECTING)&&(p.send(JSON.stringify({type:`close`})),p.close()),o.dispose(),n.current=null,r.current=null}},[e,f]),e?f?(0,q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:[(0,q.jsx)(`p`,{className:`font-medium text-zinc-200`,children:`容器不可用`}),(0,q.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器,无法连接终端。`})]}):(0,q.jsxs)(`div`,{className:`flex h-full flex-col bg-zinc-950`,children:[(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-zinc-800 bg-zinc-900 px-2 py-1.5`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 gap-1 overflow-x-auto`,children:[w7.map(e=>(0,q.jsx)(`button`,{type:`button`,onClick:()=>p(e.data),className:`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,children:e.label},e.label)),(0,q.jsx)(`button`,{type:`button`,onClick:()=>{s(e=>!e),r.current?.focus()},className:G(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,o&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`ctrl`}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>{l(e=>!e),r.current?.focus()},className:G(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,c&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`alt`})]}),(0,q.jsx)(`span`,{className:`shrink-0 truncate px-1 text-xs text-zinc-400`,children:i})]}),(0,q.jsx)(`div`,{ref:t,className:`min-h-0 flex-1 p-2`})]}):(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:`请先在左侧选择一个容器 / AGENT`})}var E7=_.createContext(void 0);function D7(e){let t=_.useContext(E7);if(t===void 0&&!e)throw Error(en(47));return t}var O7={...wl,disabled:e=>e.disabled,instantType:e=>e.instantType,openMethod:e=>e.openMethod,openChangeReason:e=>e.openChangeReason,modal:e=>e.modal,focusManagerModal:e=>e.focusManagerModal,stickIfOpen:e=>e.stickIfOpen,titleElementId:e=>e.titleElementId,descriptionElementId:e=>e.descriptionElementId,openOnHover:e=>e.openOnHover,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},k7=class extends Yc{constructor(e,t,n){let r=new hl;super(A7(e,r,t,n),j7(r),O7)}setOpen=(e,t)=>{let n=t.reason===Wr,r=t.reason===`trigger-press`&&t.event.detail===0,i=!e&&(t.reason===`escape-key`||t.reason==null),a=cl(t),o=this.select(`activeTriggerId`);if(!e&&t.reason===`close-press`&&t.trigger==null&&o!=null&&(t.trigger=this.context.triggerElements.getById(o)??this.select(`activeTriggerElement`)??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let s=()=>{let n={open:e,openChangeReason:t.reason};sl(n,e,t.trigger,a()),this.update(n)};n?(this.set(`stickIfOpen`,!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set(`stickIfOpen`,!1)}),Yo.flushSync(s)):s();let c;r?c=`click`:i?c=`dismiss`:t.reason===`focus-out`&&(c=`focus`),this.set(`instantType`,c)}};function A7(e,t,n,r=!1){let i={..._l(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...e};return i.open&&e?.mounted===void 0&&(i.mounted=!0),i.floatingRootContext=vl(t,n,r),i}function j7(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),stickIfOpenTimeout:new hi,triggerElements:e}}function M7({props:e}){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,modal:o=!1,handle:s,triggerId:c,defaultTriggerId:l=null}=e,u=P7(s,{modal:o,open:r,openProp:n,activeTriggerId:l,triggerIdProp:c});u.useControlledProp(`openProp`,n),u.useControlledProp(`triggerIdProp`,c);let d=u.useState(`open`),f=u.useState(`mounted`),p=u.useState(`payload`);u.useContextCallback(`onOpenChange`,i),u.useContextCallback(`onOpenChangeComplete`,a),ml(u,d),dl(u);let{forceUnmount:m}=fl(d,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:o}),_.useEffect(()=>{d||u.context.stickIfOpenTimeout.clear()},[u,d]),_.useImperativeHandle(e.actionsRef,()=>({unmount:m,close:()=>u.setOpen(!1,ai(ri))}),[m,u]);let h=d||f;return(0,q.jsxs)(E7.Provider,{value:u,children:[s&&(0,q.jsx)(al,{handle:s,store:u}),h&&(0,q.jsx)(F7,{store:u,modal:o}),typeof t==`function`?t({payload:p}):t]})}function N7(e){return D7(!0)?(0,q.jsx)(M7,{props:e}):(0,q.jsx)(ls,{children:(0,q.jsx)(M7,{props:e})})}function P7(e,t){let n=il((e,n)=>new k7(t,e,n));return _.useEffect(()=>n.context.stickIfOpenTimeout.disposeEffect(),[n]),n}function F7({store:e,modal:t}){let n=Es(e.useState(`floatingRootContext`),{outsidePressEvent:{mouse:t===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}}),r=n.reference,i=n.floating;return pl(e,{activeTriggerProps:r,inactiveTriggerProps:r,popupProps:i}),null}var I7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:s,payload:c,openOnHover:l=!1,delay:u=300,closeDelay:d=0,id:f,...p}=e,m=D7(!0),h=Tl(s)??m;if(!h)throw Error(en(74));let g=di(f),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),{registerTrigger:C,isMountedByThisTrigger:w}=ul(g,S,h,{payload:c,disabled:a,openOnHover:l,closeDelay:d}),T=h.useState(`openChangeReason`),E=h.useState(`stickIfOpen`),D=h.useState(`openMethod`),O=h.useState(`focusManagerModal`),k=Rl(y,{enabled:!a&&l&&(D!==`touch`||T!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:tu(),restMs:u,delay:{close:d},triggerElementRef:S,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),A=bs(y,{stickIfOpen:E}),j=Vu(()=>h.select(`open`),e=>{h.set(`openMethod`,e)}),M=h.useState(`triggerProps`,w),{getButtonProps:N,buttonRef:P}=zr({disabled:a,native:o}),F={open(e){return e&&T===`trigger-press`?$n.open(e):Qn.open(e)}},{preFocusGuardRef:I,handlePreFocusGuardFocus:L,handleFocusTargetFocus:R}=yY(h,S),z=Ln(`button`,e,{state:{disabled:a,open:b},ref:[P,t,C,S],props:[A.reference,k,M,j,{[Go]:``,id:g,"aria-haspopup":`dialog`,"aria-expanded":b,"aria-controls":x},p,N],stateAttributesMapping:F}),ee=(0,q.jsx)(_.Fragment,{children:z},g);return w&&!O?(0,q.jsxs)(_.Fragment,{children:[(0,q.jsx)(ba,{ref:I,onFocus:L}),ee,(0,q.jsx)(ba,{ref:h.context.triggerFocusTargetRef,onFocus:R})]}):ee}),L7=_.createContext(void 0);function R7(){let e=_.useContext(L7);if(e===void 0)throw Error(en(45));return e}var z7=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return D7().useState(`mounted`)||n?(0,q.jsx)(L7.Provider,{value:n,children:(0,q.jsx)(es,{ref:t,...r})}):null}),B7=_.createContext(void 0);function V7(){let e=_.useContext(B7);if(!e)throw Error(en(46));return e}var H7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,anchor:a,positionMethod:o,side:s,align:c,sideOffset:l,alignOffset:u,collisionBoundary:d=`clipping-ancestors`,collisionPadding:f,arrowPadding:p,sticky:m,disableAnchorTracking:h=!1,collisionAvoidance:g=qo,...v}=e,y=D7(),b=R7(),x=ss(),S=y.useState(`floatingRootContext`),C=y.useState(`mounted`),w=y.useState(`open`),T=y.useState(`openChangeReason`),E=y.useState(`activeTriggerElement`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`positionerElement`),A=y.useState(`instantType`),j=y.useState(`transitionStatus`),M=y.useState(`adaptiveOrigin`),N=_.useRef(null),P=el(k),F=Rf({anchor:a,floatingRootContext:S,positionMethod:o,mounted:C,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:p,collisionBoundary:d,collisionPadding:f,sticky:m,disableAnchorTracking:h,keepMounted:b,nodeId:x,collisionAvoidance:g,adaptiveOrigin:M}),I=S.useState(`domReferenceElement`);K(()=>{let e=I,t=N.current;if(e&&(N.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return P(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[I,P,y]);let L=D===!0&&T!==`trigger-hover`;Jf(w&&L,O===`touch`,k,E);let R=y.useStateSetter(`positionerElement`),z=Kf(e,{open:w,side:F.side,align:F.align,anchorHidden:F.anchorHidden,instant:A},{styles:F.positionerStyles,transitionStatus:j,props:v,refs:[t,R],hidden:!C,inert:!w});return(0,q.jsxs)(B7.Provider,{value:F,children:[C&&L&&(0,q.jsx)(vu,{inert:_u(!w),cutout:E}),(0,q.jsx)(cs,{id:x,children:z})]})}),U7=_.createContext(void 0);function W7(){let[e,t]=_.useState(0),n=jr(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:_.useMemo(()=>({register:n}),[n]),hasClosePart:e>0}}var G7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=D7(),l=V7(),u=ep(!0)!=null,{context:d,hasClosePart:f}=W7(),p=c.useState(`open`),m=c.useState(`openMethod`),h=c.useState(`instantType`),g=c.useState(`transitionStatus`),_=c.useState(`popupProps`),v=c.useState(`titleElementId`),y=c.useState(`descriptionElementId`),b=c.useState(`modal`),x=c.useState(`mounted`),S=c.useState(`openChangeReason`),C=c.useState(`activeTriggerElement`),w=c.useState(`floatingRootContext`),T=w.useState(`floatingId`),E=c.useState(`disabled`),D=c.useState(`openOnHover`),O=c.useState(`closeDelay`);tl({open:p,ref:c.context.popupRef,onComplete(){p&&c.context.onOpenChangeComplete?.(!0)}}),Il(w,{enabled:D&&!E,closeDelay:O});let k=a===void 0?rl(c.context.popupRef):a,A=b!==!1&&f;c.useSyncedValue(`focusManagerModal`,A);let j=c.useStateSetter(`popupElement`),M=Ln(`div`,e,{state:{open:p,side:l.side,align:l.align,instant:h,transitionStatus:g},ref:[t,c.context.popupRef,j],props:[_,{id:T,role:`dialog`,...nl,"aria-labelledby":v,"aria-describedby":y,onKeyDown(e){u&&cu.has(e.key)&&e.stopPropagation()}},Gf(g),s],stateAttributesMapping:tr});return(0,q.jsx)(ys,{context:w,openInteractionType:m,modal:A,disabled:!x||S===`trigger-hover`,initialFocus:k,returnFocus:o,restoreFocus:`popup`,previousFocusableElement:lr(C)?C:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,q.jsx)(U7.Provider,{value:d,children:M})})});function K7({...e}){return(0,q.jsx)(N7,{"data-slot":`popover`,...e})}function q7({...e}){return(0,q.jsx)(I7,{"data-slot":`popover-trigger`,...e})}function J7({className:e,align:t=`center`,alignOffset:n=0,side:r=`bottom`,sideOffset:i=4,...a}){return(0,q.jsx)(z7,{children:(0,q.jsx)(H7,{align:t,alignOffset:n,side:r,sideOffset:i,className:`isolate z-50`,children:(0,q.jsx)(G7,{"data-slot":`popover-content`,className:G(`z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...a})})})}function Y7(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,[a,o]=Nd({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:s,setMounted:c,transitionStatus:l}=$c(a,!0,!0),u=di(),[d,f]=_.useState(),p=d===null?void 0:d??u,m=jr(e=>{let t=!a,n=ai(Ur,e.nativeEvent);r(t,n),!n.isCanceled&&o(t)});return _.useMemo(()=>({defaultPanelId:u,disabled:i,handleTrigger:m,mounted:s,open:a,panelId:p,setMounted:c,setOpen:o,setPanelIdState:f,transitionStatus:l}),[u,i,m,s,a,p,c,o,f,l])}var X7=_.createContext(void 0);function Z7(){let e=_.useContext(X7);if(e===void 0)throw Error(en(15));return e}var Q7=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=Un.startingStyle]=`startingStyle`,e[e.endingStyle=Un.endingStyle]=`endingStyle`,e}({}),$7=function(e){return e.panelOpen=`data-panel-open`,e}({}),e9={[Q7.open]:``},t9={[Q7.closed]:``},n9={open(e){return e?{[$7.panelOpen]:``}:null}},r9={open(e){return e?e9:t9},...Kn},i9=_.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,style:c,...l}=e,u=jr(o),d=Y7({open:s,defaultOpen:i,onOpenChange:u,disabled:a}),f=_.useMemo(()=>({open:d.open,disabled:d.disabled,transitionStatus:d.transitionStatus}),[d.open,d.disabled,d.transitionStatus]),p=_.useMemo(()=>({...d,onOpenChange:u,state:f}),[d,u,f]),m=Ln(`div`,e,{state:f,ref:t,props:l,stateAttributesMapping:r9});return(0,q.jsx)(X7.Provider,{value:p,children:m})}),a9={...n9,...Kn},o9=_.forwardRef(function(e,t){let{panelId:n,open:r,handleTrigger:i,state:a,disabled:o}=Z7(),{className:s,disabled:c=o,render:l,nativeButton:u=!0,style:d,...f}=e,{getButtonProps:p,buttonRef:m}=zr({disabled:c,focusableWhenDisabled:!0,native:u});return Ln(`button`,e,{state:a,ref:[t,m],props:[{"aria-controls":r?n:void 0,"aria-expanded":r,onClick:i},f,p],stateAttributesMapping:a9})}),s9={height:void 0,width:void 0};function c9(e){let{externalRef:t,hiddenUntilFound:n,id:r,keepMounted:i,mounted:a,onOpenChange:o,open:s,setMounted:c,setOpen:l,transitionStatus:u}=e,d=_.useRef(null),f=_.useRef(null),[p,m]=_.useState(s9),h=_.useRef(s9),g=_.useRef(!1),v=_.useRef(s),y=_.useRef(!1),[b,x]=_.useState(!1),S=_.useRef(null),C=on(t,d),w=da(s),T=el(d),E=!s&&!a,D=b?`idle`:u,O=s&&(v.current||y.current),k=!s&&a&&f.current===`css-animation`&&p.height===void 0&&p.width===void 0?h.current:p,A=n&&E&&f.current!==`css-animation`,j=jr((e,t=!0)=>{t&&(h.current=e),m(e)}),M=jr(()=>{S.current?.(),S.current=null}),N=jr(e=>{M(),S.current=()=>{S.current=null,e()}}),P=jr(()=>{s&&a&&f.current===`css-animation`&&(y.current=!0)});K(()=>{!b||u===`starting`||x(!1)},[b,u]),_.useEffect(()=>()=>{P(),M()},[P,M]),K(()=>{let e=d.current;if(!e)return;!s&&S.current&&M();let t=u9(e,O);if(f.current=t,s&&u===`idle`&&v.current&&t===`css-animation`){h.current=l9(e);return}if(s&&u===`starting`){let n=g.current;if(g.current=!1,t===`none`){j(l9(e)),x(!0);return}if(t===`css-transition`){let t=p9(e);if(j(l9(e)),!n)return t;let r=f9(e,`transition-duration`,`0s`);return N(r),x(!0),t}j(l9(e));let r=f9(e,`animation-name`,`none`);if(!n){r();return}let i=f9(e,`animation-duration`,`0s`);r(),N(i),x(!0);return}if(!s&&a&&(u===`idle`||u===`starting`)){if(v.current=!1,y.current=!1,t===`none`){j(s9,!1),c(!1);return}j(l9(e));return}if(u!==`ending`)return;if(t===`none`){c(!1);return}let n=l9(e);if(!(n.height>0||n.width>0)){c(!1);return}j(n),t===`css-animation`&&f9(e,`animation-name`,`none`)()},[a,s,M,j,c,N,O,u]),tl({enabled:s&&a&&D===`idle`,open:!0,ref:d,onComplete(){s&&j(s9,!1)}}),_.useEffect(()=>{if(s||!a||D!==`ending`||!d.current)return;let e=new AbortController,t=-1;function n(){w.current||(c(!1),j(s9,!1))}return t=ha.request(()=>{T(n,e.signal)}),()=>{ha.cancel(t),e.abort()}},[w,a,s,D,T,j,c]),K(()=>{let e=d.current;!e||!n||!E||e.setAttribute(`hidden`,`until-found`)},[E,n]),_.useEffect(function(){let e=d.current;if(!e)return;function t(e){let t=ai(Hr,e);o(!0,t),!t.isCanceled&&(g.current=!0,l(!0))}return la(e,`beforematch`,t)},[o,l]);let F=i||n||a||s;return{height:k.height,props:{...A?{[Q7.startingStyle]:``}:void 0,hidden:E,id:r},ref:C,shouldPreventOpenAnimation:O,shouldRender:F,transitionStatus:D,width:k.width}}function l9(e){return{height:e.scrollHeight,width:e.scrollWidth}}function u9(e,t){let n=ar(e).getComputedStyle(e),r=(n.animationName.split(`,`).map(e=>e.trim()).some(e=>e!==``&&e!==`none`)||t)&&d9(n.animationDuration),i=d9(n.transitionDuration);return r&&i||i?`css-transition`:r?`css-animation`:`none`}function d9(e){return e.split(`,`).map(e=>e.trim()).some(e=>e!==``&&Number.parseFloat(e)>0)}function f9(e,t,n){let r=e.style.getPropertyValue(t),i=e.style.getPropertyPriority(t);return e.style.setProperty(t,n),()=>{if(r===``){e.style.removeProperty(t);return}e.style.setProperty(t,r,i)}}function p9(e){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)});function n(){Object.entries(t).forEach(([t,n])=>{if(n===``){e.style.removeProperty(t);return}e.style.setProperty(t,n)})}let r=ha.request(n);return()=>{ha.cancel(r),n()}}var m9=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),h9=_.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,style:s,...c}=e,{defaultPanelId:l,mounted:u,onOpenChange:d,open:f,setMounted:p,setPanelIdState:m,setOpen:h,state:g,transitionStatus:_}=Z7(),v=r??!1,y=i??!1,b=o||void 0,x=b??l;K(()=>(m(e=>b??(e===null?void 0:e)),()=>{m(e=>e===b?null:e)}),[b,m]);let{height:S,props:C,ref:w,shouldPreventOpenAnimation:T,shouldRender:E,transitionStatus:D,width:O}=c9({externalRef:t,hiddenUntilFound:v,id:x,keepMounted:y,mounted:u,onOpenChange:d,open:f,setMounted:p,setOpen:h,transitionStatus:_}),k={...g,transitionStatus:D},A=xn(s,k),j=Ln(`div`,{...e,style:void 0},{state:k,ref:w,props:[C,{style:{[m9.collapsiblePanelHeight]:S===void 0?`auto`:`${S}px`,[m9.collapsiblePanelWidth]:O===void 0?`auto`:`${O}px`}},c,A?{style:A}:void 0,T?{style:{animationName:`none`}}:void 0],stateAttributesMapping:r9});return E?j:null});function g9({...e}){return(0,q.jsx)(i9,{"data-slot":`collapsible`,...e})}function _9({...e}){return(0,q.jsx)(o9,{"data-slot":`collapsible-trigger`,...e})}function v9({...e}){return(0,q.jsx)(h9,{"data-slot":`collapsible-content`,...e})}var y9={tool:pe,command:fe,mcp:oe,agent_message:re,error:ie};function b9(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function x9(e){let t=[],n=(e,n)=>{let r=b9(n).trim();r&&t.push({label:e,value:r})};return e.kind===`command`&&(n(`命令`,e.command),typeof e.exitCode==`number`?n(`退出码`,String(e.exitCode)):n(`状态`,e.status),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`mcp`&&(n(`工具`,[e.server,e.toolName].filter(Boolean).join(`.`)),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`tool`&&(n(`工具`,e.toolName),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),(e.kind===`agent_message`||e.kind===`status`||e.kind===`error`)&&e.detail&&n(`详情`,e.detail),t}function S9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,q.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,q.jsx)(N,{className:`size-3`}):(0,q.jsx)(L,{className:`size-3`})})}function C9({part:e}){let t=e.label===`结果`;return(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:e.label}),t?(0,q.jsx)(S9,{text:e.value}):null]}),(0,q.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs whitespace-pre-wrap text-foreground`,children:e.value})]})}function w9({event:e}){let[t,n]=_.useState(!1),r=y9[e.kind]||re,i=e.kind===`agent_message`,a=_.useMemo(()=>x9(e),[e]);return i||a.length>0?(0,q.jsxs)(g9,{open:t,onOpenChange:n,children:[(0,q.jsxs)(_9,{className:`flex w-full items-center gap-1.5 rounded-md px-1.5 py-1 text-left text-sm hover:bg-muted`,children:[(0,q.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,q.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:i?`说明`:e.text}),(0,q.jsx)(F,{className:G(`size-3.5 shrink-0 text-muted-foreground transition-transform`,t&&`rotate-90`)})]}),(0,q.jsx)(v9,{className:`flex flex-col gap-2 px-1.5 pt-1 pb-1.5 pl-6`,children:i&&!a.length?(0,q.jsx)(`p`,{className:`text-sm whitespace-pre-wrap text-foreground`,children:e.detail||e.text}):a.map(e=>(0,q.jsx)(C9,{part:e},e.label))})]}):(0,q.jsxs)(`div`,{className:`flex items-start gap-1.5 px-1.5 py-1 text-sm`,children:[(0,q.jsx)(r,{className:`mt-0.5 size-3.5 shrink-0 text-muted-foreground`}),(0,q.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:e.text})]})}function T9({trace:e}){let[t,n]=_.useState(!1),r=_.useMemo(()=>Gt(e.traceEvents||[]),[e.traceEvents]);if(!r.length)return null;let i=Kt(r,e.pending===!0);return(0,q.jsxs)(g9,{open:t,onOpenChange:n,className:`w-full max-w-[75%]`,children:[(0,q.jsxs)(_9,{className:`flex w-full items-center gap-1.5 rounded-lg border bg-muted/40 px-2.5 py-1.5 text-left text-xs text-muted-foreground hover:bg-muted`,children:[(0,q.jsx)(F,{className:G(`size-3.5 shrink-0 transition-transform`,t&&`rotate-90`)}),(0,q.jsxs)(`span`,{className:`flex-1`,children:[`执行过程 · `,i]})]}),(0,q.jsx)(v9,{className:`mt-1 flex flex-col gap-0.5 rounded-lg border bg-muted/20 p-1.5`,children:r.map((e,t)=>(0,q.jsx)(w9,{event:e},`${e.kind}-${t}`))})]})}var E9={activity:`聊天`,terminal:`终端`,files:`文件`,detail:`详情`,config:`配置`,check:`检查`},D9=[`activity`,`files`],O9=Object.keys(E9).filter(e=>!D9.includes(e)),k9=`__streaming__`,A9=`__streaming_trace__`,j9=/^(\d+\.\d+\.\d+)-([A-Za-z0-9][A-Za-z0-9_.-]*)$/,M9={ok:`secondary`,warn:`outline`,danger:`destructive`,info:`outline`},N9={agent:`当前 AGENT 覆盖`,container:`容器默认模板`,inferred:`从启动命令推导`,none:`未配置`},P9={user:`用户`,assistant:`AGENT`,system:`系统`};function F9(e){return e===`history`?{label:`仅历史`,tone:`warn`}:e.toLowerCase().includes(`up`)?{label:`运行中`,tone:`ok`}:{label:`已停止`,tone:`danger`}}function I9(e){let t=e.lastResumeAt?R9(e.lastResumeAt):`暂无记录`;return e.lastResumeOk===!0?{value:`最近成功`,tone:`ok`,detail:`最近一次 resume 成功,时间:${t}。`}:e.lastResumeOk===!1?{value:`最近失败`,tone:`danger`,detail:e.lastResumeError?`最近一次 resume 失败:${e.lastResumeError}`:`最近一次 resume 失败,时间:${t}。`}:e.resumeSupported?{value:`未执行`,tone:`warn`,detail:`支持 resume,但当前会话还没有最近一次执行记录。`}:{value:`不支持`,tone:`warn`,detail:`当前 Agent 程序或模板不支持 resume。`}}function L9({title:e,rows:t}){return(0,q.jsxs)(UX,{children:[(0,q.jsx)(WX,{children:(0,q.jsx)(GX,{className:`text-sm`,children:e})}),(0,q.jsx)(KX,{className:`flex flex-col divide-y`,children:t.map(e=>(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-2 first:pt-0 last:pb-0`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.label}),e.tone?(0,q.jsx)(id,{variant:M9[e.tone],children:e.value}):(0,q.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.value})]}),e.detail?(0,q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.detail}):null]},e.label))})]})}function R9(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function z9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,q.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,q.jsx)(N,{className:`size-3`}):(0,q.jsx)(L,{className:`size-3`})})}function B9({session:e,messages:t,mode:n,onPreviewHtml:r}){let i=_.useMemo(()=>Ut(t),[t]),a=_.useRef(null),o=_.useRef(!0);function s(){let e=a.current;e&&(o.current=e.scrollHeight-e.scrollTop-e.clientHeight<48)}return _.useEffect(()=>{let e=a.current;!e||!o.current||(e.scrollTop=e.scrollHeight)},[i]),e?i.length?(0,q.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-x-hidden overflow-y-auto overscroll-y-contain`,children:(0,q.jsx)(`div`,{className:`flex flex-col gap-3 p-4`,children:i.map(e=>{let t=e.mode===`agent`||e.mode===`command`?e.mode:``,i=t!==``&&t!==n,a=e.streamTrace===!0&&!e.pairedTrace;return(0,q.jsxs)(`div`,{className:G(`flex flex-col gap-1 transition-opacity`,e.role===`user`?`items-end`:`items-start`,i&&`opacity-25`),children:[e.pairedTrace?(0,q.jsx)(T9,{trace:e.pairedTrace}):null,a?(0,q.jsx)(T9,{trace:e}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:G(`max-w-full rounded-xl px-3 py-2 text-sm sm:max-w-[75%]`,e.role===`user`?`max-w-[88%] bg-muted/80 text-foreground whitespace-pre-wrap sm:max-w-[75%]`:e.mode===`command`?`bg-muted/40 whitespace-pre-wrap text-foreground`:e.role===`system`?`bg-transparent whitespace-pre-wrap text-muted-foreground italic`:`bg-muted/40 text-foreground`,e.pending&&`opacity-70`),children:e.role===`assistant`?(0,q.jsx)(u1,{content:e.content||(e.pending?`…`:``),onPreviewHtml:e=>r(`聊天中的 HTML 代码块`,e)}):e.content||(e.pending?`…`:``)}),(0,q.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-xs text-muted-foreground`,children:[R9(e.timestamp),e.interrupted?` · 已停止`:``,e.content&&!e.pending?(0,q.jsx)(z9,{text:e.content}):null]})]})]},e.id)})})}):(0,q.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,q.jsx)(`p`,{children:`还没有对话记录,在下方输入内容开始与 AGENT 交流。`})}):(0,q.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,q.jsx)(`p`,{children:`请选择左侧的容器 / AGENT,或点击「新建容器」创建一个新会话。`})})}function V9({text:e}){return(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:e})}function H9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=F9(e.status),n=I9(e),r=j9.test(e.applied.imageVersion||``),i=!!(e.applied.hostPath&&e.applied.containerPath);return(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`运行检查`,rows:[{label:`容器状态`,value:t.label,tone:t.tone,detail:t.tone===`ok`?`容器处于可交互状态。`:`当前不是活跃运行态,部分功能可能受限。`},{label:`Agent 输入`,value:e.agentEnabled?`已配置`:`未配置`,tone:e.agentEnabled?`ok`:`warn`,detail:e.agentEnabled?`活动页可直接发送 Agent 提示词。`:`当前会话不支持 Agent 模式。`},{label:`Resume 健康`,value:n.value,tone:n.tone,detail:n.detail},{label:`镜像版本`,value:r?`格式正常`:`格式异常`,tone:r?`ok`:`danger`,detail:e.applied.imageVersion?`当前值:${e.applied.imageVersion}。建议保持 x.y.z-后缀 格式,便于 manyoyo 的版本校验。`:`缺少 imageVersion,manyoyo 的版本校验会失效。`},{label:`工作目录映射`,value:i?`已配置`:`缺失`,tone:i?`ok`:`danger`,detail:i?`宿主目录与容器目录都已配置。`:`hostPath / containerPath 是容器会话最关键的上下文。`}]}),e.lastResumeError?(0,q.jsx)(L9,{title:`最近问题`,rows:[{label:`Resume 错误`,value:`有错误输出`,tone:`danger`,detail:e.lastResumeError}]}):null]})}function U9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=e.applied,n=N9[e.agentPromptSource]||`未配置`,r=[];return t.shellPrefix&&r.push({label:`shellPrefix`,value:t.shellPrefix}),t.shell&&r.push({label:`shell`,value:t.shell}),t.shellSuffix&&r.push({label:`shellSuffix`,value:t.shellSuffix}),t.defaultCommand&&t.defaultCommand!==t.shell?r.push({label:`启动命令`,value:t.defaultCommand}):t.shell||r.push({label:`启动命令`,value:t.defaultCommand||`—`}),r.push({label:`Agent 模板`,value:e.agentPromptCommand||`—`}),r.push({label:`模板来源`,value:n}),r.push({label:`yolo`,value:t.yolo||`—`}),(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`基础配置`,rows:[{label:`AGENT`,value:e.agentName||e.name||`—`},{label:`containerName`,value:t.containerName||e.containerName||`—`},{label:`imageName`,value:t.imageName||e.image||`—`},{label:`imageVersion`,value:t.imageVersion||`—`},{label:`containerMode`,value:t.containerMode||`default`}]}),(0,q.jsx)(L9,{title:`路径与资源`,rows:[{label:`hostPath`,value:t.hostPath||`—`},{label:`containerPath`,value:t.containerPath||`—`},{label:`env 数量`,value:String(t.envCount||0)},{label:`volume 数量`,value:String(t.volumeCount||0)},{label:`port 数量`,value:String(t.portCount||0)}]}),(0,q.jsx)(L9,{title:`命令与 Agent`,rows:r})]})}function W9({detail:e}){if(!e)return(0,q.jsx)(V9,{text:`请先选择左侧的容器 / AGENT`});let t=F9(e.status),n=I9(e),r=N9[e.agentPromptSource]||`未配置`,i=P9[e.latestRole]||`暂无`,a=e.latestTimestamp?R9(e.latestTimestamp):`暂无`;return(0,q.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,q.jsx)(L9,{title:`会话概览`,rows:[{label:`AGENT`,value:e.agentName||e.name},{label:`容器`,value:e.containerName||`—`},{label:`状态`,value:t.label,tone:t.tone},{label:`镜像`,value:e.image||e.applied.imageName||`—`},{label:`最近更新`,value:e.updatedAt?R9(e.updatedAt):`—`},{label:`消息数`,value:String(e.messageCount||0)}]}),(0,q.jsx)(L9,{title:`Agent 运行`,rows:[{label:`已启用`,value:e.agentEnabled?`是`:`否`,tone:e.agentEnabled?`ok`:`warn`},{label:`程序`,value:e.agentProgram||`—`},{label:`模板来源`,value:r},{label:`支持 resume`,value:e.resumeSupported?`是`:`否`,tone:e.resumeSupported?`ok`:`warn`},{label:`最近 resume`,value:e.lastResumeAt?R9(e.lastResumeAt):`暂无`},{label:`最近结果`,value:e.lastResumeOk==null?`暂无`:e.lastResumeOk?`成功`:`失败`,tone:e.lastResumeOk==null?`info`:e.lastResumeOk?`ok`:`danger`}]}),(0,q.jsx)(L9,{title:`用量统计`,rows:e.usageTotal?[{label:`累计输入 tokens`,value:String(e.usageTotal.inputTokens)},{label:`累计输出 tokens`,value:String(e.usageTotal.outputTokens)},{label:`累计花费`,value:typeof e.usageTotal.costUsd==`number`?`$${e.usageTotal.costUsd.toFixed(4)}`:`暂不支持`}]:[{label:`状态`,value:`暂无数据`,tone:`info`,detail:`当前 Agent 程序不支持用量统计,或还未执行过对话。`}]}),(0,q.jsx)(L9,{title:`最近活动`,rows:[{label:`最近角色`,value:i},{label:`最近时间`,value:a},{label:`resume 状态`,value:n.value,tone:n.tone}]})]})}function G9({draft:e,onDraftChange:t,onSend:n,onStop:r,mode:i,onModeChange:a,disabled:o,sending:s,session:c,onOpenCliTemplate:l,onOpenModel:u}){let d=AY(),[f,p]=_.useState(!1),m=i===`agent`&&!!c&&!c?.agentEnabled,h=!!c?.archived,g=o||m||h;return(0,q.jsxs)(`div`,{className:`border-t p-3`,children:[(0,q.jsx)(Fp,{placeholder:o?`请先在左侧选择一个容器 / AGENT`:h?`该 AGENT 已被删除,仅可查看历史消息`:m?`当前会话不支持 Agent 模式`:i===`command`?`输入容器命令,例如: ls -la`:`输入要发给 AGENT 的内容`,className:`min-h-16 resize-none`,value:e,disabled:g,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||d||e.shiftKey||e.altKey||(e.preventDefault(),!s&&!g&&n())}}),(0,q.jsxs)(`div`,{className:`mt-2 flex items-center justify-between gap-2`,children:[(0,q.jsxs)(K7,{open:f,onOpenChange:p,children:[(0,q.jsx)(q7,{render:(0,q.jsx)(J,{variant:`outline`,className:`px-4`,disabled:o}),children:`选项`}),(0,q.jsx)(J7,{align:`start`,className:`w-44 p-1`,children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(J,{variant:i===`agent`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`agent`),p(!1)},children:`Agent对话`}),(0,q.jsx)(J,{variant:i===`command`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`command`),p(!1)},children:`系统命令`}),(0,q.jsx)(dd,{className:`my-1`}),(0,q.jsxs)(J,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{l(),p(!1)},children:[`CLI · `,c?.agentProgram||`未设置`]}),(0,q.jsxs)(J,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{u(),p(!1)},children:[`模型 · `,c?.model||`跟随默认`]})]})})]}),s?(0,q.jsx)(J,{variant:`destructive`,className:`px-4`,onClick:r,children:`停止`}):(0,q.jsxs)(J,{className:`px-4`,onClick:n,disabled:g,children:[(0,q.jsx)(ue,{"data-icon":`inline-start`}),`发送`]})]})]})}function K9({activeSession:e,onAfterSend:t,filesEditorRef:n,confirmLeaveIfDirty:r,creatingAgent:i}){let[a,o]=_.useState(`activity`),[s,c]=_.useState([]),[l,u]=_.useState(!1),[d,f]=_.useState(``),[p,m]=_.useState(`agent`),[h,g]=_.useState(!1),[v,y]=_.useState(()=>new Set),[b,x]=_.useState(``),[S,C]=_.useState(!1),[w,T]=_.useState(!1),[E,D]=_.useState(null),[O,k]=_.useState(null),A=_.useRef(e?.name??null);_.useEffect(()=>{A.current=e?.name??null},[e?.name]);let j=e?v.has(e.name):!1;async function M(e){a!==e&&(a===`files`&&!await r()||o(e))}function N(e,t){y(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})}let P=_.useCallback(t=>e?(t||(x(``),u(!0)),Jt(`/api/sessions/${encodeURIComponent(e.name)}/messages`).then(e=>{c(Array.isArray(e.messages)?e.messages:[])}).catch(e=>{t||x(e instanceof Error?e.message:`加载消息失败`)}).finally(()=>{t||u(!1)})):(c([]),u(!1),Promise.resolve()),[e?.name]),F=_.useCallback(()=>e?Jt(`/api/sessions/${encodeURIComponent(e.name)}/detail`).then(e=>D(e.detail||null)).catch(()=>{}):(D(null),Promise.resolve()),[e?.name]);_.useEffect(()=>{P(),F()},[P,F]),RX(e,s,_.useCallback(async()=>{await Promise.all([P(!0),F()])},[P,F]),j);async function I(){let n=d.trim();if(!n||!e||v.has(e.name))return;let r=e.name,i=()=>A.current===r;if(f(``),x(``),c(e=>[...e,{id:`local-${Date.now()}`,role:`user`,content:n,timestamp:new Date().toISOString(),mode:p}]),p===`command`){N(r,!0);try{let e=await Yt(`/api/sessions/${encodeURIComponent(r)}/run`,{command:n});i()&&c(t=>[...t,{id:`result-${Date.now()}`,role:`system`,content:String(e.output||``),timestamp:new Date().toISOString(),mode:`command`,exitCode:e.exitCode}])}catch(e){i()&&x(e instanceof Error?e.message:`命令执行失败`)}finally{N(r,!1),t(),i()&&F()}return}N(r,!0);let a=[];c(e=>[...e,{id:A9,role:`assistant`,content:`[执行过程]`,timestamp:new Date().toISOString(),streamTrace:!0,traceEvents:[],pending:!0,mode:`agent`},{id:k9,role:`assistant`,content:``,timestamp:new Date().toISOString(),pending:!0,mode:`agent`}]);try{await Zt(`/api/sessions/${encodeURIComponent(r)}/agent/stream`,{prompt:n},e=>{i()&&(e.type===`trace`?(e.traceEvent&&a.push(e.traceEvent),c(e=>e.map(e=>e.id===A9?{...e,traceEvents:a.slice()}:e))):e.type===`content_delta`?c(t=>t.map(t=>t.id===k9?{...t,content:e.content}:t)):e.type===`result`?c(t=>t.map(e=>e.id===A9?{...e,pending:!1}:e).map(t=>t.id===k9?{...t,content:e.output,pending:!1,interrupted:e.interrupted,exitCode:e.exitCode}:t)):e.type===`error`&&(x(e.error),c(e=>e.filter(e=>e.id!==k9&&e.id!==A9))))})}catch(e){i()&&(x(e instanceof Error?e.message:`发送失败`),c(e=>e.filter(e=>e.id!==k9&&e.id!==A9)))}finally{N(r,!1),t(),i()&&F()}}async function L(){if(e)try{await Yt(`/api/sessions/${encodeURIComponent(e.name)}/agent/stop`,{})}catch(e){x(e instanceof Error?e.message:`停止失败`)}}return(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[(0,q.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b px-3`,children:[(0,q.jsx)(bX,{}),(0,q.jsx)(dd,{orientation:`vertical`,className:`h-4!`}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(J,{variant:a===`activity`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`activity`,onClick:()=>M(`activity`),children:`聊天`}),(0,q.jsx)(J,{variant:a===`files`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`files`,onClick:()=>M(`files`),children:`文件`}),(0,q.jsxs)(K7,{open:h,onOpenChange:g,children:[(0,q.jsx)(q7,{render:(0,q.jsx)(J,{variant:`ghost`,size:`icon-sm`,title:`更多标签页`}),children:(0,q.jsx)(R,{})}),(0,q.jsx)(J7,{align:`start`,className:`w-36 p-1`,children:(0,q.jsx)(`div`,{className:`flex flex-col gap-1`,children:O9.map(e=>(0,q.jsx)(J,{variant:a===e?`secondary`:`ghost`,size:`sm`,className:`justify-start`,"aria-current":a===e,onClick:()=>{M(e),g(!1)},children:E9[e]},e))})})]})]}),(0,q.jsx)(dd,{orientation:`vertical`,className:`h-4! shrink-0`}),(0,q.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1.5 truncate text-sm font-medium`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e?`${e.containerRemark||e.containerName} · ${e.agentRemark||e.agentName}`:`选择左侧的容器 / AGENT 开始`}),e?.archived?(0,q.jsx)(id,{variant:`outline`,className:`shrink-0`,children:`已停止`}):null]})]}),(0,q.jsxs)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-x-hidden`,children:[i?(0,q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2`,children:[(0,q.jsx)(ad,{className:`size-6`}),(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在创建 AGENT...`})]}):a===`activity`?l?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,q.jsx)(ad,{className:`size-6`})}):(0,q.jsx)(B9,{session:e,messages:s,mode:p,onPreviewHtml:(e,t)=>k({title:e,code:t})},e?.name??`none`):null,a===`terminal`?(0,q.jsx)(T7,{session:e}):null,a===`files`?(0,q.jsx)(_1,{activeSession:e,editorStateRef:n,confirmLeaveIfDirty:r,onPreviewHtml:(e,t)=>k({title:e,code:t})}):null,a===`detail`?(0,q.jsx)(W9,{detail:E}):null,a===`config`?(0,q.jsx)(U9,{detail:E}):null,a===`check`?(0,q.jsx)(H9,{detail:E}):null]}),a===`activity`&&b?(0,q.jsx)(sd,{variant:`destructive`,className:`mx-3 mb-2`,children:(0,q.jsx)(cd,{children:b})}):null,a===`activity`?(0,q.jsx)(G9,{draft:d,onDraftChange:f,onSend:I,onStop:L,mode:p,onModeChange:m,disabled:!e||l,sending:j,session:e,onOpenCliTemplate:()=>C(!0),onOpenModel:()=>T(!0)}):null,(0,q.jsx)(HX,{open:S,onOpenChange:C,session:e,onSaved:()=>{t(),F()}}),(0,q.jsx)(x1,{open:w,onOpenChange:T,session:e,onSaved:()=>{t(),F()}}),(0,q.jsx)(v1,{state:O,onOpenChange:e=>{e||k(null)}})]})}function q9(){let[e,t]=_.useState([]),[n,r]=_.useState(!0),[i,a]=_.useState(``),o=_.useCallback(async()=>{a(``);try{let e=await Jt(`/api/sessions`),n=Array.isArray(e.sessions)?e.sessions:[];return t(n),n}catch(e){return a(e instanceof Error?e.message:`加载会话列表失败`),[]}finally{r(!1)}},[]);return _.useEffect(()=>{o()},[o]),{sessions:e,containers:_.useMemo(()=>Qt(e),[e]),loading:n,error:i,refresh:o}}function J9(){let[e,t]=_.useState(null),[n,r]=_.useState(!1),i=_.useCallback((e,n)=>new Promise(r=>{t({fileName:e,save:n,resolve:r})}),[]);function a(e){t(t=>(t?.resolve(e),null))}async function o(){if(!e||n)return;r(!0);let t=await e.save();r(!1),a(t?`proceed`:`cancel`)}return{ask:i,dialog:(0,q.jsx)(Ju,{open:e!==null,onOpenChange:e=>{!e&&!n&&a(`cancel`)},children:(0,q.jsxs)(Zu,{className:`sm:max-w-sm`,children:[(0,q.jsx)(ed,{className:`sr-only`,children:`有未保存的修改`}),(0,q.jsxs)(td,{className:`text-foreground`,children:[`是否要保存对 `,e?.fileName,` 的更改?`,(0,q.jsx)(`br`,{}),`如果不保存,你的更改将丢失。`]}),(0,q.jsxs)($u,{children:[(0,q.jsxs)(J,{disabled:n,onClick:o,children:[n?(0,q.jsx)(ad,{"data-icon":`inline-start`}):null,`保存`]}),(0,q.jsx)(J,{variant:`outline`,disabled:n,onClick:()=>a(`proceed`),children:`不保存`}),(0,q.jsx)(J,{variant:`outline`,disabled:n,onClick:()=>a(`cancel`),children:`取消`})]})]})})}}function Y9({width:e,dragging:t,onPointerDown:n}){let{isMobile:r,state:i}=_X();return r||i===`collapsed`?null:(0,q.jsx)(FX,{onPointerDown:n,dragging:t,className:`absolute inset-y-0 z-20 -ml-1`,style:{left:e}})}function X9(){let{sessions:e,containers:t,loading:n,error:r,refresh:i}=q9(),{width:a,dragging:o,onHandlePointerDown:s}=ZX({storageKey:`manyoyo:sidebar-width`,defaultWidth:288,min:224,max:512}),[c,l]=_.useState(null),[u,d]=_.useState(null),f=_.useMemo(()=>e.find(e=>e.name===c)??null,[e,c]),p=_.useRef(null),{ask:m,dialog:h}=J9(),g=_.useCallback(async()=>{let e=p.current;return!e||await m(e.fileName,e.save)===`proceed`},[m]);function v(e){l(e?e.name:null)}return(0,q.jsxs)(vX,{className:`relative h-svh overflow-hidden`,style:{"--sidebar-width":`${a}px`},children:[(0,q.jsx)(PX,{containers:t,loading:n,error:r,activeSessionName:c,onSelectSession:v,onRefresh:i,confirmLeaveIfDirty:g,creatingAgentContainer:u,onCreatingAgentContainerChange:d}),(0,q.jsx)(Y9,{width:a,dragging:o,onPointerDown:s}),(0,q.jsx)(xX,{className:`min-h-0 min-w-0`,children:(0,q.jsx)(K9,{activeSession:f,onAfterSend:i,filesEditorRef:p,confirmLeaveIfDirty:g,creatingAgent:u!==null})}),h]})}var Z9=`/shadcn`;function Q9(){let[e,t]=_.useState(``),[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!0);_.useEffect(()=>{let e=!1;return fetch(`/api/sessions`,{headers:{"X-Requested-With":`XMLHttpRequest`}}).then(t=>{if(!e&&t.ok){window.location.href=Z9;return}e||l(!1)}).catch(()=>{e||l(!1)}),()=>{e=!0}},[]);async function u(t){if(t.preventDefault(),!o){a(``),s(!0);try{let t=await fetch(`/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({username:e.trim(),password:n})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r.error||`登录失败`);window.location.href=Z9}catch(e){a(e instanceof Error?e.message:`登录失败`),s(!1)}}}return c?(0,q.jsx)(`div`,{className:`flex min-h-svh items-center justify-center`}):(0,q.jsxs)(`div`,{className:`relative flex min-h-svh items-center justify-center overflow-hidden p-6`,children:[(0,q.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-40 [background-image:linear-gradient(to_right,var(--border)_1px,transparent_1px),linear-gradient(to_bottom,var(--border)_1px,transparent_1px)] [background-size:32px_32px] [mask-image:radial-gradient(ellipse_60%_50%_at_50%_0%,black,transparent)]`,"aria-hidden":!0}),(0,q.jsx)(`div`,{className:`pointer-events-none absolute top-1/4 left-1/2 -z-10 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary/10 blur-3xl`,"aria-hidden":!0}),(0,q.jsxs)(`div`,{className:`relative w-full max-w-sm`,children:[(0,q.jsxs)(`div`,{className:`absolute inset-x-0 bottom-full mb-6 flex flex-col items-center gap-1.5 text-center`,children:[(0,q.jsx)(`span`,{className:`font-mono text-xs tracking-[0.2em] text-muted-foreground uppercase`,children:`Agent Sandbox Console`}),(0,q.jsx)(`h1`,{className:`font-mono text-4xl font-semibold tracking-tight text-foreground`,children:`MANYOYO`}),(0,q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`AI Agent 容器安全沙箱 · 安全隔离运行`})]}),(0,q.jsxs)(UX,{className:`w-full gap-0 py-0 shadow-lg`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5 border-b px-4 py-2.5`,children:[(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-destructive/70`}),(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-amber-500/70`}),(0,q.jsx)(`span`,{className:`size-2.5 rounded-full bg-emerald-500/70`})]}),(0,q.jsx)(KX,{className:`px-6 py-6`,children:(0,q.jsx)(`form`,{onSubmit:u,children:(0,q.jsxs)(md,{children:[(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`login-username`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`用户名`}),(0,q.jsx)(Ld,{id:`login-username`,autoFocus:!0,autoComplete:`username`,value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||e.keyCode===229||(e.preventDefault(),document.getElementById(`login-password`)?.focus())}})]}),(0,q.jsxs)(gd,{children:[(0,q.jsx)(_d,{htmlFor:`login-password`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`密码`}),(0,q.jsx)(Ld,{id:`login-password`,type:`password`,autoComplete:`current-password`,value:n,onChange:e=>r(e.target.value)})]}),i?(0,q.jsx)(sd,{variant:`destructive`,children:(0,q.jsx)(cd,{children:i})}):null,(0,q.jsxs)(J,{type:`submit`,size:`lg`,className:`w-full`,disabled:o,children:[o?`登录中...`:`登录`,o?null:(0,q.jsx)(F,{"data-icon":`inline-end`})]})]})})})]})]})]})}var $9=window.location.pathname===`/shadcn/auth/login`;(0,v.createRoot)(document.getElementById(`root`)).render((0,q.jsx)(_.StrictMode,{children:(0,q.jsx)(Kq,{children:$9?(0,q.jsx)(Q9,{}):(0,q.jsx)(X9,{})})}));</script>
204
204
  <style rel="stylesheet" crossorigin>/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
205
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--radius-md:calc(var(--radius) * .8);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-xs:4px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}html,body{overscroll-behavior:none}.prose table{max-width:100%;display:block;overflow-x:auto}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-1\/4{top:25%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-1\/2{left:50%}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-1{margin-block:var(--spacing)}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-72{width:calc(var(--spacing) * 72);height:calc(var(--spacing) * 72)}.size-full{width:100%;height:100%}.h-4{height:calc(var(--spacing) * 4)}.h-4\!{height:calc(var(--spacing) * 4)!important}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-72{height:calc(var(--spacing) * 72)}.h-\[80vh\]{height:80vh}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--available-height\){max-height:var(--available-height)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-svh{min-height:100svh}.w-\(--anchor-width\){width:var(--anchor-width)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-36{width:calc(var(--spacing) * 36)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[75\%\]{max-width:75%}.max-w-\[88\%\]{max-width:88%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-7{min-width:calc(var(--spacing) * 7)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\[96px\]{min-width:96px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[--spacing\(var\(--gap\)\)\]{gap:calc(var(--spacing) * var(--gap))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[2px\]{border-radius:2px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-800{border-color:var(--color-zinc-800)}.bg-amber-500\/70{background-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/70{background-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab, red, red)){.bg-black\/45{background-color:color-mix(in oklab, var(--color-black) 45%, transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/70{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/70{background-color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.bg-emerald-500\/70{background-color:#00bb7fb3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/70{background-color:color-mix(in oklab, var(--color-emerald-500) 70%, transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-foreground,.bg-foreground\/12{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/12{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.bg-muted,.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/80{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/80{background-color:color-mix(in oklab, var(--muted) 80%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-950{background-color:var(--color-zinc-950)}.\[background-image\:linear-gradient\(to_right\,var\(--border\)_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,var\(--border\)_1px\,transparent_1px\)\]{background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px)}.\[mask-image\:radial-gradient\(ellipse_60\%_50\%_at_50\%_0\%\,black\,transparent\)\]{-webkit-mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000)}.\[background-size\:32px_32px\]{background-size:32px 32px}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-1{padding-left:var(--spacing)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, var(--sidebar-foreground) 70%, transparent)}}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-900{color:var(--color-zinc-900)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[2px\]{--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}:is(.\*\:w-full>*){width:100%}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--primary) 60%, transparent)}}.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-focus\/dropdown-menu-item\:text-accent-foreground:is(:where(.group\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-data-horizontal\/field\:text-balance:is(:where(.group\/field):has(:where([data-orientation=horizontal])) *){text-wrap:balance}.group-has-\[\:focus-visible\]\/field-label\:border-transparent:is(:where(.group\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\[\:focus-visible\]\/field-label\:ring-0:is(:where(.group\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\>svg\]\/alert\:col-start-2:is(:where(.group\/alert):has(>svg) *){grid-column-start:2}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *){border-radius:0}.group-data-\[spacing\=0\]\/toggle-group\:px-2:is(:where(.group\/toggle-group)[data-spacing="0"] *){padding-inline:calc(var(--spacing) * 2)}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-1:is(:where(.group)[data-variant=floating] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-sidebar-border:is(:where(.group)[data-variant=floating] *){--tw-ring-color:var(--sidebar-border)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-horizontal\/tabs\:h-8:is(:where(.group\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.peer-data-active\/menu-button\:text-sidebar-accent-foreground:is(:is(:where(.peer\/menu-button):where([data-state=active]),:where(.peer\/menu-button):where([data-active]:not([data-active=false])))~*){color:var(--sidebar-accent-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:start-1\/2:after{content:var(--tw-content);inset-inline-start:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:pt-0:first-child{padding-top:0}.last\:mt-0:last-child{margin-top:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus,:is(.focus\:\*\*\:text-accent-foreground:focus *),:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-end\]\:pr-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-start\]\:pl-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[slot\=alert-action\]\:relative:has([data-slot=alert-action]){position:relative}.has-data-\[slot\=alert-action\]\:pr-18:has([data-slot=alert-action]){padding-right:calc(var(--spacing) * 18)}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-4:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 4)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}@media (hover:hover){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:border-ring:has(>[data-slot=field]):has(:focus-visible){border-color:var(--ring)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-3:has(>[data-slot=field]):has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.has-\[\>svg\]\:grid-cols-\[auto_1fr\]:has(>svg){grid-template-columns:auto 1fr}.has-\[\>svg\]\:gap-x-2:has(>svg){column-gap:calc(var(--spacing) * 2)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-expanded\:text-sidebar-accent-foreground[aria-expanded=true]{color:var(--sidebar-accent-foreground)}.aria-expanded\:opacity-100[aria-expanded=true]{opacity:1}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-ending-style\:opacity-0[data-ending-style]{opacity:0}.data-inset\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-popup-open\:bg-accent[data-popup-open]{background-color:var(--accent)}.data-popup-open\:text-accent-foreground[data-popup-open]{color:var(--accent-foreground)}.data-starting-style\:opacity-0[data-starting-style]{opacity:0}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:0}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style],.data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style]{--tw-translate-y:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:0}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:left-0[data-side=left]{left:0}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=left]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style],.data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style]{--tw-translate-x:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:0}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:right-0[data-side=right]{right:0}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=right]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style],.data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style]{--tw-translate-x:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:0}.data-\[side\=top\]\:top-0[data-side=top]{top:0}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style],.data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style]{--tw-translate-y:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=default\]\:h-\[18\.4px\][data-size=default]{height:18.4px}.data-\[size\=default\]\:w-\[32px\][data-size=default]{width:32px}.data-\[size\=default\]\:max-w-xs[data-size=default]{max-width:var(--container-xs)}.data-\[size\=md\]\:text-sm[data-size=md]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:h-\[14px\][data-size=sm]{height:14px}.data-\[size\=sm\]\:w-\[24px\][data-size=sm]{width:24px}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}.data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}.data-\[size\=sm\]\:text-xs[data-size=sm]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\:data-\[slot\=field\]\:p-2\.5>*)[data-slot=field]{padding:calc(var(--spacing) * 2.5)}:is(.\*\:data-\[slot\=field-group\]\:gap-4>*)[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:is(.\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:calc(var(--radius) * .6)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-l-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-t-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-r-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-b-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[state\=on\]\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-t-0:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-t:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (width>=40rem){.sm\:flex{display:flex}.sm\:w-auto{width:auto}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-4xl{max-width:var(--container-4xl)}.sm\:max-w-\[75\%\]{max-width:75%}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left],.data-\[side\=right\]\:sm\:max-w-sm[data-side=right],.data-\[size\=default\]\:sm\:max-w-sm[data-size=default]{max-width:var(--container-sm)}}@media (width>=48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-pretty{text-wrap:pretty}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) * 1.4)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (width>=64rem){.lg\:max-w-2xl{max-width:var(--container-2xl)}}@container field-group (width>=28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}:is(.\@md\/field-group\:\*\:w-auto>*){width:auto}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}}.ltr\:-translate-x-1\/2:where(:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=ltr],[dir=ltr] *),.rtl\:-translate-x-1\/2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.prose-code\:text-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-pre\:text-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-pre\:text-foreground :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--foreground)}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:bg-accent:where([data-state=open]),.data-open\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\:text-accent-foreground:where([data-state=open]),.data-open\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}@media (hover:hover){:is(.data-open\:hover\:bg-sidebar-accent:where([data-state=open]),.data-open\:hover\:bg-sidebar-accent:where([data-open]:not([data-open=false]))):hover{background-color:var(--sidebar-accent)}:is(.data-open\:hover\:text-sidebar-accent-foreground:where([data-state=open]),.data-open\:hover\:text-sidebar-accent-foreground:where([data-open]:not([data-open=false]))):hover{color:var(--sidebar-accent-foreground)}}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:overflow-hidden:where([data-state=closed]),.data-closed\:overflow-hidden:where([data-closed]:not([data-closed=false])){overflow:hidden}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\:bg-primary:where([data-state=checked]),.data-checked\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-state=checked]),.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\:bg-input:where([data-state=unchecked]),.data-unchecked\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\:pointer-events-none:where([data-disabled=true]),.data-disabled\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\:opacity-50:where([data-disabled=true]),.data-disabled\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 8%)}}.data-active\:bg-background:where([data-state=active]),.data-active\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\:bg-sidebar-accent:where([data-state=active]),.data-active\:bg-sidebar-accent:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}.data-active\:font-medium:where([data-state=active]),.data-active\:font-medium:where([data-active]:not([data-active=false])){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-active\:text-foreground:where([data-state=active]),.data-active\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.data-active\:text-sidebar-accent-foreground:where([data-state=active]),.data-active\:text-sidebar-accent-foreground:where([data-active]:not([data-active=false])){color:var(--sidebar-accent-foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\:data-active\:border-input:is(.dark *):where([data-state=active]),.dark\:data-active\:border-input:is(.dark *):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:data-active\:text-foreground:is(.dark *):where([data-state=active]),.dark\:data-active\:text-foreground:is(.dark *):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\:h-px:where([data-orientation=horizontal]){height:1px}.data-horizontal\:w-full:where([data-orientation=horizontal]){width:100%}.data-horizontal\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.data-vertical\:w-px:where([data-orientation=vertical]){width:1px}.data-vertical\:flex-col:where([data-orientation=vertical]){flex-direction:column}.data-vertical\:items-stretch:where([data-orientation=vertical]){align-items:stretch}.data-vertical\:self-stretch:where([data-orientation=vertical]){align-self:stretch}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-3 a{text-underline-offset:3px}@media (hover:hover){.\[\&_a\]\:hover\:text-foreground a:hover{color:var(--foreground)}}.\[\&_p\:not\(\:last-child\)\]\:mb-4 p:not(:last-child){margin-bottom:calc(var(--spacing) * 4)}.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)!important}}.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)!important}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_table\]\:block table{display:block}.\[\&_table\]\:\[scrollbar-width\:thin\] table{scrollbar-width:thin}.\[\&_table\]\:overflow-x-auto table{overflow-x:auto}.\[\&_table\:\:-webkit-scrollbar\]\:h-1\.5 table::-webkit-scrollbar{height:calc(var(--spacing) * 1.5)}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:rounded-full table::-webkit-scrollbar-thumb{border-radius:2147483647px}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:color-mix(in oklab, var(--foreground) 25%, transparent)}}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.\*\:\[svg\]\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\*\:\[svg\]\:translate-y-0\.5>*):is(svg){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\*\:\[svg\]\:text-current>*):is(svg){color:currentColor}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}:is(.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=28rem){:is(.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}.thin-scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-ring) transparent}.thin-scrollbar::-webkit-scrollbar{width:8px;height:8px}.thin-scrollbar::-webkit-scrollbar-track{background:0 0}.thin-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-ring);border-radius:9999px}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(97.5% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(93% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(93% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(93% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(94% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(90% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(34% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
205
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--radius-md:calc(var(--radius) * .8);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-xs:4px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}html,body{overscroll-behavior:none}.prose table{max-width:100%;display:block;overflow-x:auto}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-1\/4{top:25%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-1\/2{left:50%}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-1{margin-block:var(--spacing)}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-72{width:calc(var(--spacing) * 72);height:calc(var(--spacing) * 72)}.size-full{width:100%;height:100%}.h-4{height:calc(var(--spacing) * 4)}.h-4\!{height:calc(var(--spacing) * 4)!important}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-72{height:calc(var(--spacing) * 72)}.h-\[80vh\]{height:80vh}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--available-height\){max-height:var(--available-height)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-svh{min-height:100svh}.w-\(--anchor-width\){width:var(--anchor-width)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-36{width:calc(var(--spacing) * 36)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[75\%\]{max-width:75%}.max-w-\[88\%\]{max-width:88%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-7{min-width:calc(var(--spacing) * 7)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\[96px\]{min-width:96px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[--spacing\(var\(--gap\)\)\]{gap:calc(var(--spacing) * var(--gap))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[2px\]{border-radius:2px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-800{border-color:var(--color-zinc-800)}.bg-amber-500\/70{background-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/70{background-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab, red, red)){.bg-black\/45{background-color:color-mix(in oklab, var(--color-black) 45%, transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/70{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/70{background-color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.bg-emerald-500\/70{background-color:#00bb7fb3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/70{background-color:color-mix(in oklab, var(--color-emerald-500) 70%, transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-foreground,.bg-foreground\/12{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/12{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.bg-muted,.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/80{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/80{background-color:color-mix(in oklab, var(--muted) 80%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-950{background-color:var(--color-zinc-950)}.\[background-image\:linear-gradient\(to_right\,var\(--border\)_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,var\(--border\)_1px\,transparent_1px\)\]{background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px)}.\[mask-image\:radial-gradient\(ellipse_60\%_50\%_at_50\%_0\%\,black\,transparent\)\]{-webkit-mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000)}.\[background-size\:32px_32px\]{background-size:32px 32px}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-1{padding-left:var(--spacing)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, var(--sidebar-foreground) 70%, transparent)}}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-900{color:var(--color-zinc-900)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[2px\]{--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}:is(.\*\:w-full>*){width:100%}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--primary) 60%, transparent)}}.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-focus\/dropdown-menu-item\:text-accent-foreground:is(:where(.group\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-data-horizontal\/field\:text-balance:is(:where(.group\/field):has(:where([data-orientation=horizontal])) *){text-wrap:balance}.group-has-\[\:focus-visible\]\/field-label\:border-transparent:is(:where(.group\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\[\:focus-visible\]\/field-label\:ring-0:is(:where(.group\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\>svg\]\/alert\:col-start-2:is(:where(.group\/alert):has(>svg) *){grid-column-start:2}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *){border-radius:0}.group-data-\[spacing\=0\]\/toggle-group\:px-2:is(:where(.group\/toggle-group)[data-spacing="0"] *){padding-inline:calc(var(--spacing) * 2)}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-1:is(:where(.group)[data-variant=floating] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-sidebar-border:is(:where(.group)[data-variant=floating] *){--tw-ring-color:var(--sidebar-border)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-horizontal\/tabs\:h-8:is(:where(.group\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.peer-data-active\/menu-button\:text-sidebar-accent-foreground:is(:is(:where(.peer\/menu-button):where([data-state=active]),:where(.peer\/menu-button):where([data-active]:not([data-active=false])))~*){color:var(--sidebar-accent-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:start-1\/2:after{content:var(--tw-content);inset-inline-start:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:pt-0:first-child{padding-top:0}.last\:mt-0:last-child{margin-top:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus,:is(.focus\:\*\*\:text-accent-foreground:focus *),:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-end\]\:pr-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-start\]\:pl-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[slot\=alert-action\]\:relative:has([data-slot=alert-action]){position:relative}.has-data-\[slot\=alert-action\]\:pr-18:has([data-slot=alert-action]){padding-right:calc(var(--spacing) * 18)}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-4:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 4)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}@media (hover:hover){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:border-ring:has(>[data-slot=field]):has(:focus-visible){border-color:var(--ring)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-3:has(>[data-slot=field]):has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.has-\[\>svg\]\:grid-cols-\[auto_1fr\]:has(>svg){grid-template-columns:auto 1fr}.has-\[\>svg\]\:gap-x-2:has(>svg){column-gap:calc(var(--spacing) * 2)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-expanded\:text-sidebar-accent-foreground[aria-expanded=true]{color:var(--sidebar-accent-foreground)}.aria-expanded\:opacity-100[aria-expanded=true]{opacity:1}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-ending-style\:opacity-0[data-ending-style]{opacity:0}.data-inset\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-popup-open\:bg-accent[data-popup-open]{background-color:var(--accent)}.data-popup-open\:text-accent-foreground[data-popup-open]{color:var(--accent-foreground)}.data-starting-style\:opacity-0[data-starting-style]{opacity:0}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:0}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style],.data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style]{--tw-translate-y:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:0}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:left-0[data-side=left]{left:0}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=left]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style],.data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style]{--tw-translate-x:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:0}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:right-0[data-side=right]{right:0}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=right]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style],.data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style]{--tw-translate-x:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:0}.data-\[side\=top\]\:top-0[data-side=top]{top:0}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style],.data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style]{--tw-translate-y:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=default\]\:h-\[18\.4px\][data-size=default]{height:18.4px}.data-\[size\=default\]\:w-\[32px\][data-size=default]{width:32px}.data-\[size\=default\]\:max-w-xs[data-size=default]{max-width:var(--container-xs)}.data-\[size\=md\]\:text-sm[data-size=md]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:h-\[14px\][data-size=sm]{height:14px}.data-\[size\=sm\]\:w-\[24px\][data-size=sm]{width:24px}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}.data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}.data-\[size\=sm\]\:text-xs[data-size=sm]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\:data-\[slot\=field\]\:p-2\.5>*)[data-slot=field]{padding:calc(var(--spacing) * 2.5)}:is(.\*\:data-\[slot\=field-group\]\:gap-4>*)[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:is(.\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:calc(var(--radius) * .6)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-l-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-t-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-r-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-b-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[state\=on\]\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-t-0:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-t:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (width>=40rem){.sm\:flex{display:flex}.sm\:w-auto{width:auto}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-4xl{max-width:var(--container-4xl)}.sm\:max-w-\[75\%\]{max-width:75%}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left],.data-\[side\=right\]\:sm\:max-w-sm[data-side=right],.data-\[size\=default\]\:sm\:max-w-sm[data-size=default]{max-width:var(--container-sm)}}@media (width>=48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-pretty{text-wrap:pretty}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) * 1.4)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (width>=64rem){.lg\:max-w-2xl{max-width:var(--container-2xl)}}@container field-group (width>=28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}:is(.\@md\/field-group\:\*\:w-auto>*){width:auto}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}}.ltr\:-translate-x-1\/2:where(:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=ltr],[dir=ltr] *),.rtl\:-translate-x-1\/2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.prose-code\:text-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-pre\:text-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-pre\:text-foreground :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--foreground)}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:bg-accent:where([data-state=open]),.data-open\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\:text-accent-foreground:where([data-state=open]),.data-open\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}@media (hover:hover){:is(.data-open\:hover\:bg-sidebar-accent:where([data-state=open]),.data-open\:hover\:bg-sidebar-accent:where([data-open]:not([data-open=false]))):hover{background-color:var(--sidebar-accent)}:is(.data-open\:hover\:text-sidebar-accent-foreground:where([data-state=open]),.data-open\:hover\:text-sidebar-accent-foreground:where([data-open]:not([data-open=false]))):hover{color:var(--sidebar-accent-foreground)}}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:overflow-hidden:where([data-state=closed]),.data-closed\:overflow-hidden:where([data-closed]:not([data-closed=false])){overflow:hidden}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\:bg-primary:where([data-state=checked]),.data-checked\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-state=checked]),.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\:bg-input:where([data-state=unchecked]),.data-unchecked\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\:pointer-events-none:where([data-disabled=true]),.data-disabled\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\:opacity-50:where([data-disabled=true]),.data-disabled\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 8%)}}.data-active\:bg-background:where([data-state=active]),.data-active\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\:bg-sidebar-accent:where([data-state=active]),.data-active\:bg-sidebar-accent:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}.data-active\:font-medium:where([data-state=active]),.data-active\:font-medium:where([data-active]:not([data-active=false])){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-active\:text-foreground:where([data-state=active]),.data-active\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.data-active\:text-sidebar-accent-foreground:where([data-state=active]),.data-active\:text-sidebar-accent-foreground:where([data-active]:not([data-active=false])){color:var(--sidebar-accent-foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\:data-active\:border-input:is(.dark *):where([data-state=active]),.dark\:data-active\:border-input:is(.dark *):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:data-active\:text-foreground:is(.dark *):where([data-state=active]),.dark\:data-active\:text-foreground:is(.dark *):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\:h-px:where([data-orientation=horizontal]){height:1px}.data-horizontal\:w-full:where([data-orientation=horizontal]){width:100%}.data-horizontal\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.data-vertical\:w-px:where([data-orientation=vertical]){width:1px}.data-vertical\:flex-col:where([data-orientation=vertical]){flex-direction:column}.data-vertical\:items-stretch:where([data-orientation=vertical]){align-items:stretch}.data-vertical\:self-stretch:where([data-orientation=vertical]){align-self:stretch}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-3 a{text-underline-offset:3px}@media (hover:hover){.\[\&_a\]\:hover\:text-foreground a:hover{color:var(--foreground)}}.\[\&_p\:not\(\:last-child\)\]\:mb-4 p:not(:last-child){margin-bottom:calc(var(--spacing) * 4)}.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)!important}}.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)!important}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_table\]\:block table{display:block}.\[\&_table\]\:\[scrollbar-width\:thin\] table{scrollbar-width:thin}.\[\&_table\]\:overflow-x-auto table{overflow-x:auto}.\[\&_table\:\:-webkit-scrollbar\]\:h-1\.5 table::-webkit-scrollbar{height:calc(var(--spacing) * 1.5)}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:rounded-full table::-webkit-scrollbar-thumb{border-radius:2147483647px}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:color-mix(in oklab, var(--foreground) 25%, transparent)}}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.\*\:\[svg\]\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\*\:\[svg\]\:translate-y-0\.5>*):is(svg){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\*\:\[svg\]\:text-current>*):is(svg){color:currentColor}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}:is(.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=28rem){:is(.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}.thin-scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-ring) transparent}.thin-scrollbar::-webkit-scrollbar{width:8px;height:8px}.thin-scrollbar::-webkit-scrollbar-track{background:0 0}.thin-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-ring);border-radius:9999px}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(97.5% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(93% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(93% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(93% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(94% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(90% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(34% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
206
206
  /*$vite$:1*/</style>
207
207
  </head>
208
208
  <body>