MCPcopy Index your code
hub / github.com/ChinaSiro/claude-code-sourcemap / componentDidCatch

Method componentDidCatch

package/cli.js:576–576  ·  view source on GitHub ↗
(q)

Source from the content-addressed store, hash-verified

574`).join("")}captureString(q,K=this.captureString){if(typeof q==="function")K=q,q=1/0;let{stackTraceLimit:_}=Error;if(q)Error.stackTraceLimit=q;let z={};Error.captureStackTrace(z,K);let{stack:Y}=z;return Error.stackTraceLimit=_,this.clean(Y)}capture(q,K=this.capture){if(typeof q==="function")K=q,q=1/0;let{prepareStackTrace:_,stackTraceLimit:z}=Error;if(Error.prepareStackTrace=(A,O)=>{if(this._wrapCallSite)return O.map(this._wrapCallSite);return O},q)Error.stackTraceLimit=q;let Y={};Error.captureStackTrace(Y,K);let{stack:$}=Y;return Object.assign(Error,{prepareStackTrace:_,stackTraceLimit:z}),$}at(q=this.at){let[K]=this.capture(1,q);if(!K)return{};let _={line:K.getLineNumber(),column:K.getColumnNumber()};if(l64(_,K.getFileName(),this._cwd),K.isConstructor())Object.defineProperty(_,"constructor",{value:!0,configurable:!0});if(K.isEval())_.evalOrigin=K.getEvalOrigin();if(K.isNative())_.native=!0;let z;try{z=K.getTypeName()}catch(A){}if(z&&z!=="Object"&&z!=="[object Object]")_.type=z;let Y=K.getFunctionName();if(Y)_.function=Y;let $=K.getMethodName();if($&&Y!==$)_.method=$;return _}parseLine(q){let K=q&&q.match(N0_);if(!K)return null;let _=K[1]==="new",z=K[2],Y=K[3],$=K[4],A=Number(K[5]),O=Number(K[6]),w=K[7],j=K[8],H=K[9],J=K[10]==="native",M=K[11]===")",X,P={};if(j)P.line=Number(j);if(H)P.column=Number(H);if(M&&w){let W=0;for(let D=w.length-1;D>0;D--)if(w.charAt(D)===")")W++;else if(w.charAt(D)==="("&&w.charAt(D-1)===" "){if(W--,W===-1&&w.charAt(D-1)===" "){let f=w.slice(0,D-1);w=w.slice(D+1),z+=` (${f}`;break}}}if(z){let W=z.match(y0_);if(W)z=W[1],X=W[2]}if(l64(P,w,this._cwd),_)Object.defineProperty(P,"constructor",{value:!0,configurable:!0});if(Y)P.evalOrigin=Y,P.evalLine=A,P.evalColumn=O,P.evalFile=$&&$.replace(/\\/g,"/");if(J)P.native=!0;if(z)P.function=z;if(X&&z!==X)P.method=X;return P}}function l64(q,K,_){if(K){if(K=K.replace(/\\/g,"/"),K.startsWith(`${_}/`))K=K.slice(_.length+1);q.file=K}}function V0_(q){if(q.length===0)return[];let K=q.map((_)=>v0_(_));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${K.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var N0_=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),y0_=/^(.*?) \[as (.*?)\]$/;i64.exports=BE1});function E0_(q){let K=z6(42),_,z,Y,$,A,O,w,j,H,J,M,X,P,W,D,f,G,Z;if(K[0]!==q){let{children:S,flexWrap:R,flexDirection:x,flexGrow:I,flexShrink:B,ref:p,tabIndex:C,autoFocus:g,onClick:F,onFocus:U,onFocusCapture:c,onBlur:K6,onBlurCapture:t,onMouseEnter:q6,onMouseLeave:e,onKeyDown:i,onKeyDownCapture:$6,...M6}=q;z=S,f=p,Z=C,_=g,H=F,J=U,M=c,w=K6,j=t,W=q6,D=e,X=i,P=$6,G=M6,O=R===void 0?"nowrap":R,Y=x===void 0?"row":x,$=I===void 0?0:I,A=B===void 0?1:B,TH(G.margin,"margin"),TH(G.marginX,"marginX"),TH(G.marginY,"marginY"),TH(G.marginTop,"marginTop"),TH(G.marginBottom,"marginBottom"),TH(G.marginLeft,"marginLeft"),TH(G.marginRight,"marginRight"),TH(G.padding,"padding"),TH(G.paddingX,"paddingX"),TH(G.paddingY,"paddingY"),TH(G.paddingTop,"paddingTop"),TH(G.paddingBottom,"paddingBottom"),TH(G.paddingLeft,"paddingLeft"),TH(G.paddingRight,"paddingRight"),TH(G.gap,"gap"),TH(G.columnGap,"columnGap"),TH(G.rowGap,"rowGap"),K[0]=q,K[1]=_,K[2]=z,K[3]=Y,K[4]=$,K[5]=A,K[6]=O,K[7]=w,K[8]=j,K[9]=H,K[10]=J,K[11]=M,K[12]=X,K[13]=P,K[14]=W,K[15]=D,K[16]=f,K[17]=G,K[18]=Z}else _=K[1],z=K[2],Y=K[3],$=K[4],A=K[5],O=K[6],w=K[7],j=K[8],H=K[9],J=K[10],M=K[11],X=K[12],P=K[13],W=K[14],D=K[15],f=K[16],G=K[17],Z=K[18];let T=G.overflowX??G.overflow??"visible",v=G.overflowY??G.overflow??"visible",V;if(K[19]!==Y||K[20]!==$||K[21]!==A||K[22]!==O||K[23]!==G||K[24]!==T||K[25]!==v)V={flexWrap:O,flexDirection:Y,flexGrow:$,flexShrink:A,...G,overflowX:T,overflowY:v},K[19]=Y,K[20]=$,K[21]=A,K[22]=O,K[23]=G,K[24]=T,K[25]=v,K[26]=V;else V=K[26];let E;if(K[27]!==_||K[28]!==z||K[29]!==w||K[30]!==j||K[31]!==H||K[32]!==J||K[33]!==M||K[34]!==X||K[35]!==P||K[36]!==W||K[37]!==D||K[38]!==f||K[39]!==V||K[40]!==Z)E=o64.default.createElement("ink-box",{ref:f,tabIndex:Z,autoFocus:_,onClick:H,onFocus:J,onFocusCapture:M,onBlur:w,onBlurCapture:j,onMouseEnter:W,onMouseLeave:D,onKeyDown:X,onKeyDownCapture:P,style:V},z),K[27]=_,K[28]=z,K[29]=w,K[30]=j,K[31]=H,K[32]=J,K[33]=M,K[34]=X,K[35]=P,K[36]=W,K[37]=D,K[38]=f,K[39]=V,K[40]=Z,K[41]=E;else E=K[41];return E}var o64,Lj;var gi=y(()=>{q8();ty1();o64=O6(D6(),1);Lj=E0_});function q$(q){let K=z6(29),{color:_,backgroundColor:z,bold:Y,dim:$,italic:A,underline:O,strikethrough:w,inverse:j,wrap:H,children:J}=q,M=A===void 0?!1:A,X=O===void 0?!1:O,P=w===void 0?!1:w,W=j===void 0?!1:j,D=H===void 0?"wrap":H;if(J===void 0||J===null)return null;let f;if(K[0]!==_)f=_&&{color:_},K[0]=_,K[1]=f;else f=K[1];let G;if(K[2]!==z)G=z&&{backgroundColor:z},K[2]=z,K[3]=G;else G=K[3];let Z;if(K[4]!==$)Z=$&&{dim:$},K[4]=$,K[5]=Z;else Z=K[5];let T;if(K[6]!==Y)T=Y&&{bold:Y},K[6]=Y,K[7]=T;else T=K[7];let v;if(K[8]!==M)v=M&&{italic:M},K[8]=M,K[9]=v;else v=K[9];let V;if(K[10]!==X)V=X&&{underline:X},K[10]=X,K[11]=V;else V=K[11];let E;if(K[12]!==P)E=P&&{strikethrough:P},K[12]=P,K[13]=E;else E=K[13];let S;if(K[14]!==W)S=W&&{inverse:W},K[14]=W,K[15]=S;else S=K[15];let R;if(K[16]!==v||K[17]!==V||K[18]!==E||K[19]!==S||K[20]!==f||K[21]!==G||K[22]!==Z||K[23]!==T)R={...f,...G,...Z,...T,...v,...V,...E,...S},K[16]=v,K[17]=V,K[18]=E,K[19]=S,K[20]=f,K[21]=G,K[22]=Z,K[23]=T,K[24]=R;else R=K[24];let x=R,I=L0_[D],B;if(K[25]!==J||K[26]!==I||K[27]!==x)B=a64.default.createElement("ink-text",{style:I,textStyles:x},J),K[25]=J,K[26]=I,K[27]=x,K[28]=B;else B=K[28];return B}var a64,L0_;var DA6=y(()=>{q8();a64=O6(D6(),1),L0_={wrap:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"wrap"},"wrap-trim":{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"wrap-trim"},end:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"end"},middle:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"middle"},"truncate-end":{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"truncate-end"},truncate:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"truncate"},"truncate-middle":{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"truncate-middle"},"truncate-start":{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:"truncate-start"}}});import{readFileSync as R0_}from"fs";function t64(){return h0_??=new gE1.default({cwd:process.cwd(),internals:gE1.default.nodeInternals()})}function FE1({error:q}){let K=q.stack?q.stack.split(`
575`).slice(1):void 0,_=K?t64().parseLine(K[0]):void 0,z=s64(_?.file),Y,$=0;if(z&&_?.line)try{let A=R0_(z,"utf8");if(Y=U64(A,_.line),Y)for(let{line:O}of Y)$=Math.max($,String(O).length)}catch{}return PX.default.createElement(Lj,{flexDirection:"column",padding:1},PX.default.createElement(Lj,null,PX.default.createElement(q$,{backgroundColor:"ansi:red",color:"ansi:white"}," ","ERROR"," "),PX.default.createElement(q$,null," ",q.message)),_&&z&&PX.default.createElement(Lj,{marginTop:1},PX.default.createElement(q$,{dim:!0},z,":",_.line,":",_.column)),_&&Y&&PX.default.createElement(Lj,{marginTop:1,flexDirection:"column"},Y.map(({line:A,value:O})=>PX.default.createElement(Lj,{key:A},PX.default.createElement(Lj,{width:$+1},PX.default.createElement(q$,{dim:A!==_.line,backgroundColor:A===_.line?"ansi:red":void 0,color:A===_.line?"ansi:white":void 0},String(A).padStart($," "),":")),PX.default.createElement(q$,{key:A,backgroundColor:A===_.line?"ansi:red":void 0,color:A===_.line?"ansi:white":void 0}," "+O)))),q.stack&&PX.default.createElement(Lj,{marginTop:1,flexDirection:"column"},q.stack.split(`
576`).slice(1).map((A)=>{let O=t64().parseLine(A);if(!O)return PX.default.createElement(Lj,{key:A},PX.default.createElement(q$,{dim:!0},"- "),PX.default.createElement(q$,{bold:!0},A));return PX.default.createElement(Lj,{key:A},PX.default.createElement(q$,{dim:!0},"- "),PX.default.createElement(q$,{bold:!0},O.function),PX.default.createElement(q$,{dim:!0}," ","(",s64(O.file)??"",":",O.line,":",O.column,")"))})))}var PX,gE1,s64=(q)=>{return q?.replace(`file://${process.cwd()}/`,"")},h0_;var e64=y(()=>{Q64();gi();DA6();PX=O6(D6(),1),gE1=O6(r64(),1)});var q84,g16;var Sl6=y(()=>{q84=O6(D6(),1),g16=q84.createContext(null)});function b0_(q,K,_,z){if(K.some((Y)=>Y.kind==="key"||Y.kind==="mouse"&&!((Y.button&32)!==0&&(Y.button&3)===3)))c36();for(let Y of K){if(Y.kind==="response"){q.querier.onResponse(Y.response);continue}if(Y.kind==="mouse"){x0_(q,Y);continue}let $=Y.sequence;if($===paq){q.handleTerminalFocus(!0);let O=new XT6("terminalfocus");q.internal_eventEmitter.emit("terminalfocus",O);continue}if($===Baq){if(q.handleTerminalFocus(!1),q.props.selection.isDragging)yT6(q.props.selection),q.props.onSelectionChange();let O=new XT6("terminalblur");q.internal_eventEmitter.emit("terminalblur",O);continue}if(!XZ8())CE1(!0);if(Y.name==="z"&&Y.ctrl&&S0_){q.handleSuspend();continue}q.handleInput($);let A=new rc6(Y);q.internal_eventEmitter.emit("input",A),q.props.dispatchKeyboardEvent(Y)}}function x0_(q,K){if(kaq())return;let _=q.props.selection,z=K.col-1,Y=K.row-1,$=K.button&3;if(K.action==="press"){if((K.button&32)!==0&&$===3){if(_.isDragging)yT6(_),q.props.onSelectionChange();if(z===q.lastHoverCol&&Y===q.lastHoverRow)return;q.lastHoverCol=z,q.lastHoverRow=Y,q.props.onHoverAt(z,Y);return}if($!==0){q.clickCount=0;return}if((K.button&32)!==0){q.props.onSelectionDrag(z,Y);return}if(_.isDragging)yT6(_),q.props.onSelectionChange();let A=Date.now(),O=A-q.lastClickTime<K84&&Math.abs(z-q.lastClickCol)<=_84&&Math.abs(Y-q.lastClickRow)<=_84;if(q.clickCount=O?q.clickCount+1:1,q.lastClickTime=A,q.lastClickCol=z,q.lastClickRow=Y,q.clickCount>=2){if(q.pendingHyperlinkTimer)clearTimeout(q.pendingHyperlinkTimer),q.pendingHyperlinkTimer=null;let w=q.clickCount===2?2:3;q.props.onMultiClick(z,Y,w);return}n08(_,z,Y),_.lastPressHadAlt=(K.button&8)!==0,q.props.onSelectionChange();return}if($!==0){if(!_.isDragging)return;yT6(_),q.props.onSelectionChange();return}if(yT6(_),!iS(_)&&_.anchor){if(!q.props.onClickAt(z,Y)){let A=q.props.getHyperlinkAt(z,Y);if(A&&process.env.TERM_PROGRAM!=="vscode"&&!pi()){if(q.pendingHyperlinkTimer)clearTimeout(q.pendingHyperlinkTimer);q.pendingHyperlinkTimer=setTimeout((O,w)=>{O.pendingHyperlinkTimer=null,O.props.onOpenHyperlink(w)},K84,q,A)}}}q.props.onSelectionChange()}var fF,S0_,C0_=5000,K84=500,_84=1,ZZ8;var z84=y(()=>{v8();_8();cc6();m8();_M();E8();nf8();tN1();eN1();sN1();jl6();o08();Bi();Rl6();C64();dS();p16();IE1();DZ8();pE1();e64();pc6();mE1();Sl6();fF=O6(D6(),1),S0_=process.platform!=="win32";ZZ8=class ZZ8 extends fF.PureComponent{static displayName="InternalApp";static getDerivedStateFromError(q){return{error:q}}state={error:void 0};rawModeEnabledCount=0;internal_eventEmitter=new r$6;keyParseState=naq;incompleteEscapeTimer=null;NORMAL_TIMEOUT=50;PASTE_TIMEOUT=500;querier=new xE1(this.props.stdout);lastClickTime=0;lastClickCol=-1;lastClickRow=-1;clickCount=0;pendingHyperlinkTimer=null;lastHoverCol=-1;lastHoverRow=-1;lastStdinTime=Date.now();isRawModeSupported(){return this.props.stdin.isTTY}render(){return fF.default.createElement(g16.Provider,{value:{columns:this.props.terminalColumns,rows:this.props.terminalRows}},fF.default.createElement(WZ8.Provider,{value:{exit:this.handleExit}},fF.default.createElement(Zi.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC,internal_eventEmitter:this.internal_eventEmitter,internal_querier:this.querier}},fF.default.createElement(I64,null,fF.default.createElement(p64,null,fF.default.createElement(fZ8.Provider,{value:this.props.onCursorDeclaration??(()=>{})},this.state.error?fF.default.createElement(FE1,{error:this.state.error}):this.props.children))))))}componentDidMount(){if(this.props.stdout.isTTY&&!i6(process.env.CLAUDE_CODE_ACCESSIBILITY))this.props.stdout.write(yl6)}componentWillUnmount(){if(this.props.stdout.isTTY)this.props.stdout.write(Gu);if(this.incompleteEscapeTimer)clearTimeout(this.incompleteEscapeTimer),this.incompleteEscapeTimer=null;if(this.pendingHyperlinkTimer)clearTimeout(this.pendingHyperlinkTimer),this.pendingHyperlinkTimer=null;if(this.isRawModeSupported())this.handleSetRawMode(!1)}componentDidCatch(q){this.handleExit(q)}handleSetRawMode=(q)=>{let{stdin:K}=this.props;if(!this.isRawModeSupported())if(K===process.stdin)throw Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.
577Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);else throw Error(`Raw mode is not supported on the stdin provided to Ink.
578Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(K.setEncoding("utf8"),q){if(this.rawModeEnabledCount===0){if(L16(),K.ref(),K.setRawMode(!0),K.addListener("readable",this.handleReadable),this.props.stdout.write(Z64),this.props.stdout.write(VE1),Ll6())this.props.stdout.write(nc6),this.props.stdout.write(ic6);setImmediate(()=>{Promise.all([this.querier.send(S64()),this.querier.flush()]).then(([_])=>{if(_)L64(_.name),N(`XTVERSION: terminal identified as "${_.name}"`);else N("XTVERSION: no reply (terminal ignored query)")})})}this.rawModeEnabledCount++;return}if(--this.rawModeEnabledCount===0)this.props.stdout.write(e$6),this.props.stdout.write(yi),this.props.stdout.write(jA6),this.props.stdout.write(hT6),K.setRawMode(!1),K.removeListener("readable",this.handleReadable),K.unref()};flushIncomplete=()=>{if(this.incompleteEscapeTimer=null,!this.keyParseState.incomplete)return;if(this.props.stdin.readableLength>0){this.incompleteEscapeTimer=setTimeout(this.flushIncomplete,this.NORMAL_TIMEOUT);return}this.processInput(null)};processInput=(q)=>{let[K,_]=iaq(this.keyParseState,q);if(this.keyParseState=_,K.length>0)WF.discreteUpdates(b0_,this,K,void 0,void 0);if(this.keyParseState.incomplete){if(this.incompleteEscapeTimer)clearTimeout(this.incompleteEscapeTimer);this.incompleteEscapeTimer=setTimeout(this.flushIncomplete,this.keyParseState.mode==="IN_PASTE"?this.PASTE_TIMEOUT:this.NORMAL_TIMEOUT)}};handleReadable=()=>{let q=Date.now();if(q-this.lastStdinTime>C0_)this.props.onStdinResume?.();this.lastStdinTime=q;try{let K;while((K=this.props.stdin.read())!==null)this.processInput(K)}catch(K){H6(K);let{stdin:_}=this.props;if(this.rawModeEnabledCount>0&&!_.listeners("readable").includes(this.handleReadable))N("handleReadable: re-attaching stdin readable listener after error recovery",{level:"warn"}),_.addListener("readable",this.handleReadable)}};handleInput=(q)=>{if(q==="\x03"&&this.props.exitOnCtrlC)this.handleExit()};handleExit=(q)=>{if(this.isRawModeSupported())this.handleSetRawMode(!1);this.props.onExit(q)};handleTerminalFocus=(q)=>{CE1(q)};handleSuspend=()=>{if(!this.isRawModeSupported())return;let q=this.rawModeEnabledCount;while(this.rawModeEnabledCount>0)this.handleSetRawMode(!1);if(this.props.stdout.isTTY)this.props.stdout.write(Gu+jA6+ui);this.internal_eventEmitter.emit("suspend");let K=()=>{for(let _=0;_<q;_++)if(this.isRawModeSupported())this.handleSetRawMode(!0);if(this.props.stdout.isTTY){if(!i6(process.env.CLAUDE_CODE_ACCESSIBILITY))this.props.stdout.write(yl6);this.props.stdout.write(VE1)}this.internal_eventEmitter.emit("resume"),process.removeListener("SIGCONT",K)};process.on("SIGCONT",K),process.kill(process.pid,"SIGSTOP")}}});function I0_(q){let K=q.sequence??"",_=q.name??"";if(q.ctrl)return _;if(K.length===1){let z=K.charCodeAt(0);if(z>=32&&z!==127)return K}return _||K}var JL;var fA6=y(()=>{gy1();JL=class JL extends Al6{key;ctrl;shift;meta;superKey;fn;constructor(q){super("keydown",{bubbles:!0,cancelable:!0});this.key=I0_(q),this.ctrl=q.ctrl,this.shift=q.shift,this.meta=q.meta||q.option,this.superKey=q.super,this.fn=q.fn}}});function F16(q,K,_,z,Y){return{screen:hi(0,0,_,z,Y),viewport:{width:K,height:q},cursor:{x:0,y:0,visible:!0}}}var Y84=y(()=>{Ci()});var Cl6;var UE1=y(()=>{Cl6=class Cl6 extends AL{col;row;localCol=0;localRow=0;cellIsBlank;constructor(q,K,_){super();this.col=q,this.row=K,this.cellIsBlank=_}}});function QE1(q,K,_){let z=zM.get(q);if(!z)return null;if(K<z.x||K>=z.x+z.width||_<z.y||_>=z.y+z.height)return null;for(let Y=q.childNodes.length-1;Y>=0;Y--){let $=q.childNodes[Y];if($.nodeName==="#text")continue;let A=QE1($,K,_);if(A)return A}return q}function $84(q,K,_,z=!1){let Y=QE1(q,K,_)??void 0;if(!Y)return!1;if(q.focusManager){let O=Y;while(O){if(typeof O.attributes.tabIndex==="number"){q.focusManager.handleClickFocus(O);break}O=O.parentNode}}let $=new Cl6(K,_,z),A=!1;while(Y){let O=Y._eventHandlers?.onClick;if(O){A=!0;let w=zM.get(Y);if(w)$.localCol=K-w.x,$.localRow=_-w.y;if(O($),$.didStopImmediatePropagation())return!0}Y=Y.parentNode}return A}function A84(q,K,_,z){let Y=new Set,$=QE1(q,K,_)??void 0;while($){let A=$._eventHandlers;if(A?.onMouseEnter||A?.onMouseLeave)Y.add($);$=$.parentNode}for(let A of z)if(!Y.has(A)){if(z.delete(A),A.parentNode)A._eventHandlers?.onMouseLeave?.()}for(let A of Y)if(!z.has(A))z.add(A),A._eventHandlers?.onMouseEnter?.()}var O84=y(()=>{UE1();fT6()});var u0_,VA;var QV=y(()=>{u0_=new Map,VA=u0_});class cE1{options;state;constructor(q){this.options=q;this.state={previousOutput:""}}renderPreviousOutput_DEPRECATED(q){if(!this.options.isTTY)return[TZ8];return this.getRenderOpsForDone(q)}reset(){this.state.previousOutput=""}renderFullFrame(q){let{screen:K}=q,_=[],z=[],Y=void 0;for(let $=0;$<K.height;$++){let A="";for(let w=0;w<K.width;w++){let j=af(K,w,$);if(j&&j.width!==2){if(j.hyperlink!==Y){if(Y!==void 0)A+=JZ8;if(j.hyperlink!==void 0)A+=HZ8(j.hyperlink);Y=j.hyperlink}let H=this.options.stylePool.get(j.styleId),J=YA6(z,H);if(J.length>0)A+=HL(J),z=H;A+=j.char}}if(Y!==void 0)A+=JZ8,Y=void 0;let O=YA6(z,[]);if(O.length>0)A+=HL(O),z=[];_.push(A.trimEnd())}if(_.length===0)return[];return[{type:"stdout",content:_.join(`
579`)}]}getRenderOpsForDone(q){if(this.state.previousOutput="",!q.cursor.visible)return[{type:"cursorShow"}];return[]}render(q,K,_=!1,z=!0){if(!this.options.isTTY)return this.renderFullFrame(K);let Y=performance.now(),$=this.options.stylePool;if(K.viewport.height<q.viewport.height||q.viewport.width!==0&&K.viewport.width!==q.viewport.width)return bl6(K,"resize",$);let A=[];if(_&&K.scrollHint&&z){let{top:E,bottom:S,delta:R}=K.scrollHint;if(E>=0&&S<q.screen.height&&S<K.screen.height)c08(q.screen,E,S,R),A=[{type:"stdout",content:xaq(E+1,S+1)+(R>0?Caq(R):baq(-R))+Iaq+MF}]}let O=q.cursor.y>=q.screen.height,w=K.screen.height>q.screen.height,j=O&&q.screen.height>=q.viewport.height,H=K.screen.height<q.screen.height,J=K.screen.height<=q.viewport.height;if(j&&J&&H)return N(`Full reset (shrink->below): prevHeight=${q.screen.height}, nextHeight=${K.screen.height}, viewport=${q.viewport.height}`),bl6(K,"offscreen",$);if(q.screen.height>=q.viewport.height&&q.screen.height>0&&O&&!w){let S=q.screen.height-q.viewport.height+1,R=-1;if(KE1(q.screen,K.screen,(x,I)=>{if(I<S)return R=I,!0}),R>=0){let x=GZ8(q.screen,R),I=GZ8(K.screen,R);return bl6(K,"offscreen",$,{triggerY:R,prevLine:x,nextLine:I})}}let M=new lE1(q.cursor,K.viewport.width),X=Math.max(K.screen.height,1)-Math.max(q.screen.height,1),P=X<0,W=X>0;if(P){let E=q.screen.height-K.screen.height;if(E>q.viewport.height)return bl6(K,"offscreen",this.options.stylePool);M.txn((S)=>[[{type:"clear",count:E},{type:"cursorMove",x:0,y:-1}],{dx:-S.x,dy:-E}])}let D=j?1:0,f=W?Math.max(0,q.screen.height-q.viewport.height+D):Math.max(q.screen.height,K.screen.height)-K.viewport.height+D,G=$.none,Z=void 0,T=!1,v=-1;if(KE1(q.screen,K.screen,(E,S,R,x)=>{if(W&&S>=q.screen.height)return;if(x&&(x.width===2||x.width===3))return;if(R&&(R.width===2||R.width===3)&&!x)return;if(x&&Q08(K.screen,E,S)&&!R)return;if(S<f)return T=!0,v=S,!0;if(dE1(M,E,S),x){let I=x.hyperlink;Z=xT6(M.diff,Z,I);let B=$.transition(G,x.styleId);if(j84(M,x,B))G=x.styleId}else if(R){let I=G,B=Z;G=$.none,Z=void 0,M.txn(()=>{let p=[];return vZ8(p,$,I,$.none),xT6(p,B,void 0),p.push({type:"stdout",content:" "}),[p,{dx:1,dy:0}]})}}),T)return bl6(K,"offscreen",$,{triggerY:v,prevLine:GZ8(q.screen,v),nextLine:GZ8(K.screen,v)});if(G=vZ8(M.diff,$,G,$.none),Z=xT6(M.diff,Z,void 0),W)w84(M,K,q.screen.height,K.screen.height,$);if(_);else if(K.cursor.y>=K.screen.height)M.txn((E)=>{let S=K.cursor.y-E.y;if(S>0){let x=Array(1+S);x[0]=IT6;for(let I=0;I<S;I++)x[1+I]=TZ8;return[x,{dx:-E.x,dy:S}]}let R=K.cursor.y-E.y;if(R!==0||E.x!==K.cursor.x){let x=[IT6];return x.push({type:"cursorMove",x:K.cursor.x,y:R}),[x,{dx:K.cursor.x-E.x,dy:R}]}return[[],{dx:0,dy:0}]});else dE1(M,K.cursor.x,K.cursor.y);let V=performance.now()-Y;if(V>50){let E=K.screen.damage,S=E?`${E.width}x${E.height} at (${E.x},${E.y})`:"none";N(`Slow render: ${V.toFixed(1)}ms, screen: ${K.screen.height}x${K.screen.width}, damage: ${S}, changes: ${M.diff.length}`)}return A.length>0?[...A,...M.diff]:M.diff}}function xT6(q,K,_){if(K!==_)return q.push({type:"hyperlink",uri:_??""}),_;return K}function vZ8(q,K,_,z){let Y=K.transition(_,z);if(Y.length>0)q.push({type:"styleStr",str:Y});return z}function GZ8(q,K){let _="";for(let z=0;z<q.width;z++)_+=wtq(q,z,K)??" ";return _.trimEnd()}function bl6(q,K,_,z){let Y=new lE1({x:0,y:0},q.viewport.width);return m0_(Y,q,_),[{type:"clearTerminal",reason:K,debug:z},...Y.diff]}function m0_(q,K,_){w84(q,K,0,K.screen.height,_)}function w84(q,K,_,z,Y){let $=Y.none,A=void 0,O=-1,{width:w,cells:j,charPool:H,hyperlinkPool:J}=K.screen,M=_*w;for(let X=_;X<z;X+=1){if(q.cursor.y<X){let P=X-q.cursor.y;q.txn((W)=>{let D=Array(1+P);D[0]=IT6;for(let f=0;f<P;f++)D[1+f]=TZ8;return[D,{dx:-W.x,dy:P}]})}O=-1;for(let P=0;P<w;P+=1,M+=1){let W=Otq(j,H,J,M,O);if(!W)continue;dE1(q,P,X);let D=W.hyperlink;A=xT6(q.diff,A,D);let f=Y.transition($,W.styleId);if(j84(q,W,f))$=W.styleId,O=W.styleId}$=vZ8(q.diff,Y,$,Y.none),A=xT6(q.diff,A,void 0),q.txn((P)=>[[IT6,TZ8],{dx:-P.x,dy:1}])}return vZ8(q.diff,Y,$,Y.none),xT6(q.diff,A,void 0),q}function j84(q,K,_){let z=K.width===1?2:1,Y=q.cursor.x,$=q.viewportWidth;if(z===2&&Y<$){let w=K.char.length>2?$:$+1;if(Y+2>=w)return!1}let A=q.diff;if(_.length>0)A.push({type:"styleStr",str:_});let O=z===2&&p0_(K.char);if(O&&Y+1<$)A.push({type:"cursorTo",col:Y+2}),A.push({type:"stdout",content:" "}),A.push({type:"cursorTo",col:Y+1});if(A.push({type:"stdout",content:K.char}),O)A.push({type:"cursorTo",col:Y+z+1});if(Y>=$)q.cursor.x=z,q.cursor.y++;else q.cursor.x=Y+z;return!0}function dE1(q,K,_){q.txn((z)=>{let Y=K-z.x,$=_-z.y;if(z.x>=q.viewportWidth)return[[IT6,{type:"cursorMove",x:K,y:$}],{dx:Y,dy:$}];if($!==0)return[[IT6,{type:"cursorMove",x:K,y:$}],{dx:Y,dy:$}];return[[{type:"cursorMove",x:Y,y:$}],{dx:Y,dy:$}]})}function p0_(q){let K=q.codePointAt(0);if(K===void 0)return!1;if(K>=129648&&K<=129791||K>=129792&&K<=130047)return!0;if(q.length>=2){for(let _=0;_<q.length;_++)if(q.charCodeAt(_)===65039)return!0}return!1}class lE1{viewportWidth;cursor;diff=[];constructor(q,K){this.viewportWidth=K;this.cursor={...q}}txn(q){let[K,_]=q(this.cursor);for(let z of K)this.diff.push(z);this.cursor.x+=_.dx,this.cursor.y+=_.dy}}var IT6,TZ8;var H84=y(()=>{GT6();_8();Ci();dS();YM();IT6={type:"carriageReturn"},TZ8={type:"stdout",content:`

Callers 1

IpFunction · 0.45

Calls

no outgoing calls

Tested by

no test coverage detected