| 6071 | `;function gVK(q){let K=z6(55),{existingApiKey:_,apiKeyOrOAuthToken:z,onApiKeyChange:Y,onSubmit:$,onToggleUseExistingKey:A,onCreateOAuthToken:O,selectedOption:w,onSelectOption:j}=q,H=w===void 0?_?"existing":O?"oauth":"new":w,[J,M]=dD.useState(0),X=t1(),[P]=Aq(),W;if(K[0]!==_||K[1]!==O||K[2]!==j||K[3]!==A||K[4]!==H)W=()=>{if(H==="new"&&O)j?.("oauth");else if(H==="oauth"&&_)j?.("existing"),A(!0)},K[0]=_,K[1]=O,K[2]=j,K[3]=A,K[4]=H,K[5]=W;else W=K[5];let D=W,f;if(K[6]!==O||K[7]!==j||K[8]!==A||K[9]!==H)f=()=>{if(H==="existing")j?.(O?"oauth":"new"),A(!1);else if(H==="oauth")j?.("new")},K[6]=O,K[7]=j,K[8]=A,K[9]=H,K[10]=f;else f=K[10];let G=f,Z;if(K[11]!==O||K[12]!==$||K[13]!==H)Z=()=>{if(H==="oauth"&&O)O();else $()},K[11]=O,K[12]=$,K[13]=H,K[14]=Z;else Z=K[14];let T=Z,v=H==="new",V;if(K[15]!==T||K[16]!==G||K[17]!==D)V={"confirm:previous":D,"confirm:next":G,"confirm:yes":T},K[15]=T,K[16]=G,K[17]=D,K[18]=V;else V=K[18];let E=!v,S;if(K[19]!==E)S={context:"Confirmation",isActive:E},K[19]=E,K[20]=S;else S=K[20];o7(V,S);let R;if(K[21]!==G||K[22]!==D)R={"confirm:previous":D,"confirm:next":G},K[21]=G,K[22]=D,K[23]=R;else R=K[23];let x;if(K[24]!==v)x={context:"Confirmation",isActive:v},K[24]=v,K[25]=x;else x=K[25];o7(R,x);let I;if(K[26]===Symbol.for("react.memo_cache_sentinel"))I=dD.default.createElement(u,{flexDirection:"column",marginBottom:1},dD.default.createElement(k,{bold:!0},"Install GitHub App"),dD.default.createElement(k,{dimColor:!0},"Choose API key")),K[26]=I;else I=K[26];let B;if(K[27]!==_||K[28]!==H||K[29]!==P)B=_&&dD.default.createElement(u,{marginBottom:1},dD.default.createElement(k,null,H==="existing"?h7("success",P)("> "):" ","Use your existing Claude Code API key")),K[27]=_,K[28]=H,K[29]=P,K[30]=B;else B=K[30];let p;if(K[31]!==O||K[32]!==H||K[33]!==P)p=O&&dD.default.createElement(u,{marginBottom:1},dD.default.createElement(k,null,H==="oauth"?h7("success",P)("> "):" ","Create a long-lived token with your Claude subscription")),K[31]=O,K[32]=H,K[33]=P,K[34]=p;else p=K[34];let C;if(K[35]!==H||K[36]!==P)C=H==="new"?h7("success",P)("> "):" ",K[35]=H,K[36]=P,K[37]=C;else C=K[37];let g;if(K[38]!==C)g=dD.default.createElement(u,{marginBottom:1},dD.default.createElement(k,null,C,"Enter a new API key")),K[38]=C,K[39]=g;else g=K[39];let F;if(K[40]!==z||K[41]!==J||K[42]!==Y||K[43]!==$||K[44]!==H||K[45]!==X)F=H==="new"&&dD.default.createElement(r3,{value:z,onChange:Y,onSubmit:$,onPaste:Y,focus:!0,placeholder:"sk-ant… (Create a new key at https://platform.claude.com/settings/keys)",mask:"*",columns:X.columns,cursorOffset:J,onChangeCursorOffset:M,showCursor:!0}),K[40]=z,K[41]=J,K[42]=Y,K[43]=$,K[44]=H,K[45]=X,K[46]=F;else F=K[46];let U;if(K[47]!==B||K[48]!==p||K[49]!==g||K[50]!==F)U=dD.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},I,B,p,g,F),K[47]=B,K[48]=p,K[49]=g,K[50]=F,K[51]=U;else U=K[51];let c;if(K[52]===Symbol.for("react.memo_cache_sentinel"))c=dD.default.createElement(u,{marginLeft:3},dD.default.createElement(k,{dimColor:!0},"↑/↓ to select · Enter to continue")),K[52]=c;else c=K[52];let K6;if(K[53]!==U)K6=dD.default.createElement(dD.default.Fragment,null,U,c),K[53]=U,K[54]=K6;else K6=K[54];return K6}var dD;var FVK=y(()=>{q8();CH();t4();s6();Oq();dD=O6(D6(),1)});function UVK(q){let K=z6(42),{useExistingSecret:_,secretName:z,onToggleUseExistingSecret:Y,onSecretNameChange:$,onSubmit:A}=q,[O,w]=cj.useState(0),j=t1(),[H]=Aq(),J;if(K[0]!==Y)J=()=>Y(!0),K[0]=Y,K[1]=J;else J=K[1];let M=J,X;if(K[2]!==Y)X=()=>Y(!1),K[2]=Y,K[3]=X;else X=K[3];let P=X,W;if(K[4]!==P||K[5]!==M||K[6]!==A)W={"confirm:previous":M,"confirm:next":P,"confirm:yes":A},K[4]=P,K[5]=M,K[6]=A,K[7]=W;else W=K[7];let D;if(K[8]!==_)D={context:"Confirmation",isActive:_},K[8]=_,K[9]=D;else D=K[9];o7(W,D);let f;if(K[10]!==P||K[11]!==M)f={"confirm:previous":M,"confirm:next":P},K[10]=P,K[11]=M,K[12]=f;else f=K[12];let G=!_,Z;if(K[13]!==G)Z={context:"Confirmation",isActive:G},K[13]=G,K[14]=Z;else Z=K[14];o7(f,Z);let T;if(K[15]===Symbol.for("react.memo_cache_sentinel"))T=cj.default.createElement(u,{flexDirection:"column",marginBottom:1},cj.default.createElement(k,{bold:!0},"Install GitHub App"),cj.default.createElement(k,{dimColor:!0},"Setup API key secret")),K[15]=T;else T=K[15];let v;if(K[16]===Symbol.for("react.memo_cache_sentinel"))v=cj.default.createElement(u,{marginBottom:1},cj.default.createElement(k,{color:"warning"},"ANTHROPIC_API_KEY already exists in repository secrets!")),K[16]=v;else v=K[16];let V;if(K[17]===Symbol.for("react.memo_cache_sentinel"))V=cj.default.createElement(u,{marginBottom:1},cj.default.createElement(k,null,"Would you like to:")),K[17]=V;else V=K[17];let E;if(K[18]!==H||K[19]!==_)E=_?h7("success",H)("> "):" ",K[18]=H,K[19]=_,K[20]=E;else E=K[20];let S;if(K[21]!==E)S=cj.default.createElement(u,{marginBottom:1},cj.default.createElement(k,null,E,"Use the existing API key")),K[21]=E,K[22]=S;else S=K[22];let R;if(K[23]!==H||K[24]!==_)R=!_?h7("success",H)("> "):" ",K[23]=H,K[24]=_,K[25]=R;else R=K[25];let x;if(K[26]!==R)x=cj.default.createElement(u,{marginBottom:1},cj.default.createElement(k,null,R,"Create a new secret with a different name")),K[26]=R,K[27]=x;else x=K[27];let I;if(K[28]!==O||K[29]!==$||K[30]!==A||K[31]!==z||K[32]!==j||K[33]!==_)I=!_&&cj.default.createElement(cj.default.Fragment,null,cj.default.createElement(u,{marginBottom:1},cj.default.createElement(k,null,"Enter new secret name (alphanumeric with underscores):")),cj.default.createElement(r3,{value:z,onChange:$,onSubmit:A,focus:!0,placeholder:"e.g., CLAUDE_API_KEY",columns:j.columns,cursorOffset:O,onChangeCursorOffset:w,showCursor:!0})),K[28]=O,K[29]=$,K[30]=A,K[31]=z,K[32]=j,K[33]=_,K[34]=I;else I=K[34];let B;if(K[35]!==S||K[36]!==x||K[37]!==I)B=cj.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},T,v,V,S,x,I),K[35]=S,K[36]=x,K[37]=I,K[38]=B;else B=K[38];let p;if(K[39]===Symbol.for("react.memo_cache_sentinel"))p=cj.default.createElement(u,{marginLeft:3},cj.default.createElement(k,{dimColor:!0},"↑/↓ to select · Enter to continue")),K[39]=p;else p=K[39];let C;if(K[40]!==B)C=cj.default.createElement(cj.default.Fragment,null,B,p),K[40]=B,K[41]=C;else C=K[41];return C}var cj;var QVK=y(()=>{q8();CH();t4();s6();Oq();cj=O6(D6(),1)});function cVK(){let q=z6(1),K;if(q[0]===Symbol.for("react.memo_cache_sentinel"))K=dVK.default.createElement(k,null,"Checking GitHub CLI installation…"),q[0]=K;else K=q[0];return K}var dVK;var lVK=y(()=>{q8();s6();dVK=O6(D6(),1)});function nVK(q){let K=z6(49),{currentRepo:_,useCurrentRepo:z,repoUrl:Y,onRepoUrlChange:$,onSubmit:A,onToggleUseCurrentRepo:O}=q,[w,j]=nX.useState(0),[H,J]=nX.useState(!1),X=t1().columns,P;if(K[0]!==_||K[1]!==A||K[2]!==Y||K[3]!==z)P=()=>{if(!(z?_:Y)?.trim()){J(!0);return}A()},K[0]=_,K[1]=A,K[2]=Y,K[3]=z,K[4]=P;else P=K[4];let W=P,D=!z||!_,f;if(K[5]!==O)f=()=>{O(!0),J(!1)},K[5]=O,K[6]=f;else f=K[6];let G=f,Z;if(K[7]!==O)Z=()=>{O(!1),J(!1)},K[7]=O,K[8]=Z;else Z=K[8];let T=Z,v;if(K[9]!==T||K[10]!==G||K[11]!==W)v={"confirm:previous":G,"confirm:next":T,"confirm:yes":W},K[9]=T,K[10]=G,K[11]=W,K[12]=v;else v=K[12];let V=!D,E;if(K[13]!==V)E={context:"Confirmation",isActive:V},K[13]=V,K[14]=E;else E=K[14];o7(v,E);let S;if(K[15]!==T||K[16]!==G)S={"confirm:previous":G,"confirm:next":T},K[15]=T,K[16]=G,K[17]=S;else S=K[17];let R;if(K[18]!==D)R={context:"Confirmation",isActive:D},K[18]=D,K[19]=R;else R=K[19];o7(S,R);let x;if(K[20]===Symbol.for("react.memo_cache_sentinel"))x=nX.default.createElement(u,{flexDirection:"column",marginBottom:1},nX.default.createElement(k,{bold:!0},"Install GitHub App"),nX.default.createElement(k,{dimColor:!0},"Select GitHub repository")),K[20]=x;else x=K[20];let I;if(K[21]!==_||K[22]!==z)I=_&&nX.default.createElement(u,{marginBottom:1},nX.default.createElement(k,{bold:z,color:z?"permission":void 0},z?"> ":" ","Use current repository: ",_)),K[21]=_,K[22]=z,K[23]=I;else I=K[23];let B=!z||!_,p=!z||!_?"permission":void 0,C=!z||!_?"> ":" ",g=_?"Enter a different repository":"Enter repository",F;if(K[24]!==B||K[25]!==p||K[26]!==C||K[27]!==g)F=nX.default.createElement(u,{marginBottom:1},nX.default.createElement(k,{bold:B,color:p},C,g)),K[24]=B,K[25]=p,K[26]=C,K[27]=g,K[28]=F;else F=K[28];let U;if(K[29]!==_||K[30]!==w||K[31]!==W||K[32]!==$||K[33]!==Y||K[34]!==X||K[35]!==z)U=(!z||!_)&&nX.default.createElement(u,{marginLeft:2,marginBottom:1},nX.default.createElement(r3,{value:Y,onChange:(i)=>{$(i),J(!1)},onSubmit:W,focus:!0,placeholder:"Enter a repo as owner/repo or https://github.com/owner/repo…",columns:X,cursorOffset:w,onChangeCursorOffset:j,showCursor:!0})),K[29]=_,K[30]=w,K[31]=W,K[32]=$,K[33]=Y,K[34]=X,K[35]=z,K[36]=U;else U=K[36];let c;if(K[37]!==I||K[38]!==F||K[39]!==U)c=nX.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},x,I,F,U),K[37]=I,K[38]=F,K[39]=U,K[40]=c;else c=K[40];let K6;if(K[41]!==H)K6=H&&nX.default.createElement(u,{marginLeft:3,marginBottom:1},nX.default.createElement(k,{color:"error"},"Please enter a repository name to continue")),K[41]=H,K[42]=K6;else K6=K[42];let t=_?"↑/↓ to select · ":"",q6;if(K[43]!==t)q6=nX.default.createElement(u,{marginLeft:3},nX.default.createElement(k,{dimColor:!0},t,"Enter to continue")),K[43]=t,K[44]=q6;else q6=K[44];let e;if(K[45]!==c||K[46]!==K6||K[47]!==q6)e=nX.default.createElement(nX.default.Fragment,null,c,K6,q6),K[45]=c,K[46]=K6,K[47]=q6,K[48]=e;else e=K[48];return e}var nX;var iVK=y(()=>{q8();CH();t4();s6();Oq();nX=O6(D6(),1)});function rVK(q){let K=z6(10),{currentWorkflowInstallStep:_,secretExists:z,useExistingSecret:Y,secretName:$,skipWorkflow:A,selectedWorkflows:O}=q,w=A===void 0?!1:A,j;if(K[0]!==z||K[1]!==$||K[2]!==O||K[3]!==w||K[4]!==Y)j=w?["Getting repository information",z&&Y?"Using existing API key secret":`Setting up ${$} secret`]:["Getting repository information","Creating branch",O.length>1?"Creating workflow files":"Creating workflow file",z&&Y?"Using existing API key secret":`Setting up ${$} secret`,"Opening pull request page"],K[0]=z,K[1]=$,K[2]=O,K[3]=w,K[4]=Y,K[5]=j;else j=K[5];let H=j,J;if(K[6]===Symbol.for("react.memo_cache_sentinel"))J=qs.default.createElement(u,{flexDirection:"column",marginBottom:1},qs.default.createElement(k,{bold:!0},"Install GitHub App"),qs.default.createElement(k,{dimColor:!0},"Create GitHub Actions workflow")),K[6]=J;else J=K[6];let M;if(K[7]!==_||K[8]!==H)M=qs.default.createElement(qs.default.Fragment,null,qs.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},J,H.map((X,P)=>{let W="pending";if(P<_)W="completed";else if(P===_)W="in-progress";return qs.default.createElement(u,{key:P},qs.default.createElement(k,{color:W==="completed"?"success":W==="in-progress"?"warning":void 0},W==="completed"?"✓ ":"",X,W==="in-progress"?"…":""))}))),K[7]=_,K[8]=H,K[9]=M;else M=K[9];return M}var qs;var oVK=y(()=>{q8();s6();qs=O6(D6(),1)});function aVK(q){let K=z6(15),{error:_,errorReason:z,errorInstructions:Y}=q,$;if(K[0]===Symbol.for("react.memo_cache_sentinel"))$=KW.default.createElement(u,{flexDirection:"column",marginBottom:1},KW.default.createElement(k,{bold:!0},"Install GitHub App")),K[0]=$;else $=K[0];let A;if(K[1]!==_)A=KW.default.createElement(k,{color:"error"},"Error: ",_),K[1]=_,K[2]=A;else A=K[2];let O;if(K[3]!==z)O=z&&KW.default.createElement(u,{marginTop:1},KW.default.createElement(k,{dimColor:!0},"Reason: ",z)),K[3]=z,K[4]=O;else O=K[4];let w;if(K[5]!==Y)w=Y&&Y.length>0&&KW.default.createElement(u,{flexDirection:"column",marginTop:1},KW.default.createElement(k,{dimColor:!0},"How to fix:"),Y.map(fJY)),K[5]=Y,K[6]=w;else w=K[6];let j;if(K[7]===Symbol.for("react.memo_cache_sentinel"))j=KW.default.createElement(u,{marginTop:1},KW.default.createElement(k,{dimColor:!0},"For manual setup instructions, see:"," ",KW.default.createElement(k,{color:"claude"},fd))),K[7]=j;else j=K[7];let H;if(K[8]!==A||K[9]!==O||K[10]!==w)H=KW.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},$,A,O,w,j),K[8]=A,K[9]=O,K[10]=w,K[11]=H;else H=K[11];let J;if(K[12]===Symbol.for("react.memo_cache_sentinel"))J=KW.default.createElement(u,{marginLeft:3},KW.default.createElement(k,{dimColor:!0},"Press any key to exit")),K[12]=J;else J=K[12];let M;if(K[13]!==H)M=KW.default.createElement(KW.default.Fragment,null,H,J),K[13]=H,K[14]=M;else M=K[14];return M}function fJY(q,K){return KW.default.createElement(u,{key:K,marginLeft:2},KW.default.createElement(k,{dimColor:!0},"• "),KW.default.createElement(k,null,q))}var KW;var sVK=y(()=>{q8();s6();KW=O6(D6(),1)});function tVK(q){let K=z6(16),{repoName:_,onSelectAction:z}=q,Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y=[{label:"Update workflow file with latest version",value:"update"},{label:"Skip workflow update (configure secrets only)",value:"skip"},{label:"Exit without making changes",value:"exit"}],K[0]=Y;else Y=K[0];let $=Y,A;if(K[1]!==z)A=(D)=>{z(D)},K[1]=z,K[2]=A;else A=K[2];let O=A,w;if(K[3]!==z)w=()=>{z("exit")},K[3]=z,K[4]=w;else w=K[4];let j=w,H;if(K[5]===Symbol.for("react.memo_cache_sentinel"))H=Dy.default.createElement(k,{bold:!0},"Existing Workflow Found"),K[5]=H;else H=K[5];let J;if(K[6]!==_)J=Dy.default.createElement(u,{flexDirection:"column",marginBottom:1},H,Dy.default.createElement(k,{dimColor:!0},"Repository: ",_)),K[6]=_,K[7]=J;else J=K[7];let M;if(K[8]===Symbol.for("react.memo_cache_sentinel"))M=Dy.default.createElement(u,{flexDirection:"column",marginBottom:1},Dy.default.createElement(k,null,"A Claude workflow file already exists at"," ",Dy.default.createElement(k,{color:"claude"},".github/workflows/claude.yml")),Dy.default.createElement(k,{dimColor:!0},"What would you like to do?")),K[8]=M;else M=K[8];let X;if(K[9]!==j||K[10]!==O)X=Dy.default.createElement(u,{flexDirection:"column"},Dy.default.createElement(H1,{options:$,onChange:O,onCancel:j})),K[9]=j,K[10]=O,K[11]=X;else X=K[11];let P;if(K[12]===Symbol.for("react.memo_cache_sentinel"))P=Dy.default.createElement(u,{marginTop:1},Dy.default.createElement(k,{dimColor:!0},"View the latest workflow template at:"," ",Dy.default.createElement(k,{color:"claude"},"https://github.com/anthropics/claude-code-action/blob/main/examples/claude.yml"))),K[12]=P;else P=K[12];let W;if(K[13]!==J||K[14]!==X)W=Dy.default.createElement(u,{flexDirection:"column",borderStyle:"round",borderDimColor:!0,paddingX:1},J,M,X,P),K[13]=J,K[14]=X,K[15]=W;else W=K[15];return W}var Dy;var eVK=y(()=>{q8();d_();s6();Dy=O6(D6(),1)});function qNK(q){let K=z6(12),{repoUrl:_,onSubmit:z}=q,Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y={context:"Confirmation"},K[0]=Y;else Y=K[0];P1("confirm:yes",z,Y);let $;if(K[1]===Symbol.for("react.memo_cache_sentinel"))$=iX.default.createElement(u,{flexDirection:"column",marginBottom:1},iX.default.createElement(k,{bold:!0},"Install the Claude GitHub App")),K[1]=$;else $=K[1];let A;if(K[2]===Symbol.for("react.memo_cache_sentinel"))A=iX.default.createElement(u,{marginBottom:1},iX.default.createElement(k,null,"Opening browser to install the Claude GitHub App…")),K[2]=A;else A=K[2];let O;if(K[3]===Symbol.for("react.memo_cache_sentinel"))O=iX.default.createElement(u,{marginBottom:1},iX.default.createElement(k,null,"If your browser doesn't open automatically, visit:")),K[3]=O;else O=K[3];let w;if(K[4]===Symbol.for("react.memo_cache_sentinel"))w=iX.default.createElement(u,{marginBottom:1},iX.default.createElement(k,{underline:!0},"https://github.com/apps/claude")),K[4]=w;else w=K[4];let j;if(K[5]!==_)j=iX.default.createElement(u,{marginBottom:1},iX.default.createElement(k,null,"Please install the app for repository: ",iX.default.createElement(k,{bold:!0},_))),K[5]=_,K[6]=j;else j=K[6];let H;if(K[7]===Symbol.for("react.memo_cache_sentinel"))H=iX.default.createElement(u,{marginBottom:1},iX.default.createElement(k,{dimColor:!0},"Important: Make sure to grant access to this specific repository")),K[7]=H;else H=K[7];let J;if(K[8]===Symbol.for("react.memo_cache_sentinel"))J=iX.default.createElement(u,null,iX.default.createElement(k,{bold:!0,color:"permission"},"Press Enter once you've installed the app",t6.ellipsis)),K[8]=J;else J=K[8];let M;if(K[9]===Symbol.for("react.memo_cache_sentinel"))M=iX.default.createElement(u,{marginTop:1},iX.default.createElement(k,{dimColor:!0},"Having trouble? See manual setup instructions at:"," ",iX.default.createElement(k,{color:"claude"},fd))),K[9]=M;else M=K[9];let X;if(K[10]!==j)X=iX.default.createElement(u,{flexDirection:"column",borderStyle:"round",borderDimColor:!0,paddingX:1},$,A,O,w,j,H,J,M),K[10]=j,K[11]=X;else X=K[11];return X}var iX;var KNK=y(()=>{q8();bq();s6();Oq();iX=O6(D6(),1)});function zNK({onSuccess:q,onCancel:K}){let[_,z]=q5.useState({state:"starting"}),[Y]=q5.useState(()=>new Eo),[$,A]=q5.useState(""),[O,w]=q5.useState(0),[j,H]=q5.useState(!1),[J,M]=q5.useState(!1),X=q5.useRef(new Set),P=q5.useRef(void 0),W=t1(),D=Math.max(50,W.columns-_NK.length-4);function f(v){if(_.state!=="error")return;if(v.preventDefault(),v.key==="return"&&_.toRetry)A(""),w(0),z({state:"about_to_retry",nextState:_.toRetry});else K()}async function G(v,V){try{let[E,S]=v.split("#");if(!E||!S){z({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:V}});return}d("tengu_oauth_manual_entry",{}),Y.handleManualAuthCodeInput({authorizationCode:E,state:S})}catch(E){H6(E),z({state:"error",message:E.message,toRetry:{state:"waiting_for_login",url:V}})}}let Z=q5.useCallback(async()=>{X.current.forEach((v)=>clearTimeout(v)),X.current.clear();try{let v=await Y.startOAuthFlow(async(E)=>{z({state:"waiting_for_login",url:E});let S=setTimeout(H,3000,!0);X.current.add(S)},{loginWithClaudeAi:!0,inferenceOnly:!0,expiresIn:31536000});z({state:"processing"}),yG6(v);let V=setTimeout((E,S,R,x)=>{E({state:"success",token:S});let I=setTimeout(R,1000,S);x.current.add(I)},100,z,v.accessToken,q,X);X.current.add(V)}catch(v){let V=v.message;z({state:"error",message:V,toRetry:{state:"starting"}}),H6(v),d("tengu_oauth_error",{error:V})}},[Y,q]);q5.useEffect(()=>{if(_.state==="starting")Z()},[_.state,Z]),q5.useEffect(()=>{if(_.state==="about_to_retry"){let v=setTimeout((V,E,S)=>{E(V.state==="waiting_for_login"),S(V)},500,_.nextState,H,z);X.current.add(v)}},[_]),q5.useEffect(()=>{if($==="c"&&_.state==="waiting_for_login"&&j&&!J)XX(_.url).then((v)=>{if(v)process.stdout.write(v);M(!0),clearTimeout(P.current),P.current=setTimeout(M,2000,!1)}),A("")},[$,_,j,J]),q5.useEffect(()=>{let v=X.current;return()=>{Y.cleanup(),v.forEach((V)=>clearTimeout(V)),v.clear(),clearTimeout(P.current)}},[Y]);function T(){switch(_.state){case"starting":return q5.default.createElement(u,null,q5.default.createElement(IK,null),q5.default.createElement(k,null,"Starting authentication…"));case"waiting_for_login":return q5.default.createElement(u,{flexDirection:"column",gap:1},!j&&q5.default.createElement(u,null,q5.default.createElement(IK,null),q5.default.createElement(k,null,"Opening browser to sign in with your Claude account…")),j&&q5.default.createElement(u,null,q5.default.createElement(k,null,_NK),q5.default.createElement(r3,{value:$,onChange:A,onSubmit:(v)=>G(v,_.url),cursorOffset:O,onChangeCursorOffset:w,columns:D})));case"processing":return q5.default.createElement(u,null,q5.default.createElement(IK,null),q5.default.createElement(k,null,"Processing authentication…"));case"success":return q5.default.createElement(u,{flexDirection:"column",gap:1},q5.default.createElement(k,{color:"success"},"✓ Authentication token created successfully!"),q5.default.createElement(k,{dimColor:!0},"Using token for GitHub Actions setup…"));case"error":return q5.default.createElement(u,{flexDirection:"column",gap:1},q5.default.createElement(k,{color:"error"},"OAuth error: ",_.message),_.toRetry?q5.default.createElement(k,{dimColor:!0},"Press Enter to try again, or any other key to cancel"):q5.default.createElement(k,{dimColor:!0},"Press any key to return to API key selection"));case"about_to_retry":return q5.default.createElement(u,{flexDirection:"column",gap:1},q5.default.createElement(k,{color:"permission"},"Retrying…"));default:return null}}return q5.default.createElement(u,{flexDirection:"column",gap:1,tabIndex:0,autoFocus:!0,onKeyDown:f},_.state==="starting"&&q5.default.createElement(u,{flexDirection:"column",gap:1,paddingBottom:1},q5.default.createElement(k,{bold:!0},"Create Authentication Token"),q5.default.createElement(k,{dimColor:!0},"Creating a long-lived token for GitHub Actions")),_.state!=="success"&&_.state!=="starting"&&_.state!=="processing"&&q5.default.createElement(u,{key:"header",flexDirection:"column",gap:1,paddingBottom:1},q5.default.createElement(k,{bold:!0},"Create Authentication Token"),q5.default.createElement(k,{dimColor:!0},"Creating a long-lived token for GitHub Actions")),_.state==="waiting_for_login"&&j&&q5.default.createElement(u,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},q5.default.createElement(u,{paddingX:1},q5.default.createElement(k,{dimColor:!0},"Browser didn't open? Use the url below to sign in"," "),J?q5.default.createElement(k,{color:"success"},"(Copied!)"):q5.default.createElement(k,{dimColor:!0},q5.default.createElement(t8,{shortcut:"c",action:"copy",parens:!0}))),q5.default.createElement(hq,{url:_.url},q5.default.createElement(k,{dimColor:!0},_.url))),q5.default.createElement(u,{paddingLeft:1,flexDirection:"column",gap:1},T()))}var q5,_NK="Paste code here if prompted > ";var YNK=y(()=>{k8();rK();Q2();CH();t4();YM();s6();Et6();G7();E8();q5=O6(D6(),1)});function $NK(q){let K=z6(21),{secretExists:_,useExistingSecret:z,secretName:Y,skipWorkflow:$}=q,A=$===void 0?!1:$,O;if(K[0]===Symbol.for("react.memo_cache_sentinel"))O=A2.default.createElement(u,{flexDirection:"column",marginBottom:1},A2.default.createElement(k,{bold:!0},"Install GitHub App"),A2.default.createElement(k,{dimColor:!0},"Success")),K[0]=O;else O=K[0];let w;if(K[1]!==A)w=!A&&A2.default.createElement(k,{color:"success"},"✓ GitHub Actions workflow created!"),K[1]=A,K[2]=w;else w=K[2];let j;if(K[3]!==_||K[4]!==z)j=_&&z&&A2.default.createElement(u,{marginTop:1},A2.default.createElement(k,{color:"success"},"✓ Using existing ANTHROPIC_API_KEY secret")),K[3]=_,K[4]=z,K[5]=j;else j=K[5];let H;if(K[6]!==_||K[7]!==Y||K[8]!==z)H=(!_||!z)&&A2.default.createElement(u,{marginTop:1},A2.default.createElement(k,{color:"success"},"✓ API key saved as ",Y," secret")),K[6]=_,K[7]=Y,K[8]=z,K[9]=H;else H=K[9];let J;if(K[10]===Symbol.for("react.memo_cache_sentinel"))J=A2.default.createElement(u,{marginTop:1},A2.default.createElement(k,null,"Next steps:")),K[10]=J;else J=K[10];let M;if(K[11]!==A)M=A?A2.default.createElement(A2.default.Fragment,null,A2.default.createElement(k,null,"1. Install the Claude GitHub App if you haven't already"),A2.default.createElement(k,null,"2. Your workflow file was kept unchanged"),A2.default.createElement(k,null,"3. API key is configured and ready to use")):A2.default.createElement(A2.default.Fragment,null,A2.default.createElement(k,null,"1. A pre-filled PR page has been created"),A2.default.createElement(k,null,"2. Install the Claude GitHub App if you haven't already"),A2.default.createElement(k,null,"3. Merge the PR to enable Claude PR assistance")),K[11]=A,K[12]=M;else M=K[12];let X;if(K[13]!==w||K[14]!==j||K[15]!==H||K[16]!==M)X=A2.default.createElement(u,{flexDirection:"column",borderStyle:"round",paddingX:1},O,w,j,H,J,M),K[13]=w,K[14]=j,K[15]=H,K[16]=M,K[17]=X;else X=K[17];let P;if(K[18]===Symbol.for("react.memo_cache_sentinel"))P=A2.default.createElement(u,{marginLeft:3},A2.default.createElement(k,{dimColor:!0},"Press any key to exit")),K[18]=P;else P=K[18];let W;if(K[19]!==X)W=A2.default.createElement(A2.default.Fragment,null,X,P),K[19]=X,K[20]=W;else W=K[20];return W}var A2;var ANK=y(()=>{q8();s6();A2=O6(D6(),1)});async function ZJY(q,K,_,z,Y,$,A){let O=await a8("gh",["api",`repos/${q}/contents/${_}`,"--jq",".sha"]),w=null;if(O.code===0)w=O.stdout.trim();let j=z;if(Y==="CLAUDE_CODE_OAUTH_TOKEN")j=z.replace(/anthropic_api_key: \$\{\{ secrets\.ANTHROPIC_API_KEY \}\}/g,"claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}");else if(Y!=="ANTHROPIC_API_KEY")j=z.replace(/anthropic_api_key: \$\{\{ secrets\.ANTHROPIC_API_KEY \}\}/g,`anthropic_api_key: \${{ secrets.${Y} }}`);let H=Buffer.from(j).toString("base64"),J=["api","--method","PUT",`repos/${q}/contents/${_}`,"-f",`message=${w?`"Update ${$}"`:`"${$}"`}`,"-f",`content=${H}`,"-f",`branch=${K}`];if(w)J.push("-f",`sha=${w}`);let M=await a8("gh",J);if(M.code!==0){if(M.stderr.includes("422")&&M.stderr.includes("sha"))throw d("tengu_setup_github_actions_failed",{reason:"failed_to_create_workflow_file",exit_code:M.code,...A}),Error(`Failed to create workflow file ${_}: A Claude workflow file already exists in this repository. Please remove it first or update it manually.`);d("tengu_setup_github_actions_failed",{reason:"failed_to_create_workflow_file",exit_code:M.code,...A});let X=` |