@ranger-testing/ranger-cli 3.1.7-alpha.9ed0a8d-59 → 3.1.7-alpha.a5be4ca-60
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.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +14 -5
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4c7cd2,_0x341927){const _0x3db523=_0x4436,_0x1d9bb3=_0x4c7cd2();while(!![]){try{const _0x350f55=-parseInt(_0x3db523(0x163))/0x1+parseInt(_0x3db523(0x15a))/0x2*(parseInt(_0x3db523(0x158))/0x3)+parseInt(_0x3db523(0x15e))/0x4*(-parseInt(_0x3db523(0x16a))/0x5)+parseInt(_0x3db523(0x168))/0x6*(parseInt(_0x3db523(0x164))/0x7)+parseInt(_0x3db523(0x167))/0x8*(parseInt(_0x3db523(0x15c))/0x9)+parseInt(_0x3db523(0x162))/0xa*(parseInt(_0x3db523(0x156))/0xb)+-parseInt(_0x3db523(0x159))/0xc;if(_0x350f55===_0x341927)break;else _0x1d9bb3['push'](_0x1d9bb3['shift']());}catch(_0x500e4f){_0x1d9bb3['push'](_0x1d9bb3['shift']());}}}(_0x5629,0x232ea));function _0x4436(_0x1f18dc,_0x232f53){_0x1f18dc=_0x1f18dc-0x155;const _0x5629e4=_0x5629();let _0x443639=_0x5629e4[_0x1f18dc];return _0x443639;}import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x5629(){const _0x4e7ac9=['10420bDsXeN','success','jHpeI','\x0a✅\x20Logged\x20in\x20to\x20','171620tSOYuE','174210CEJgEs','7CiNJFk','Re-authenticating\x20via\x20MCP\x20bootstrap...','oRUdx','40yQLyYa','580182qzBhqE','message','405quSLLR','log','Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','55NdyMJs','user','3QqaGYS','2020788mJDlPH','574576JTuIoC','WWxHv','410265NYaIYk','XnEDq'];_0x5629=function(){return _0x4e7ac9;};return _0x5629();}import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x456bcc=_0x4436,_0x58390d={'WWxHv':_0x456bcc(0x165),'oRUdx':function(_0x17c59c){return _0x17c59c();},'jHpeI':_0x456bcc(0x155),'XnEDq':function(_0x290a3c,_0x5dab30){return _0x290a3c instanceof _0x5dab30;}},_0x14ed53=await getMcpAuthOrigin();if(_0x14ed53){console[_0x456bcc(0x16b)](_0x58390d[_0x456bcc(0x15b)]),await mcpBootstrap();return;}if(!_0x58390d[_0x456bcc(0x166)](isInteractive))throw new Error(_0x58390d[_0x456bcc(0x160)]);try{const _0x5c1f18=await _0x58390d['oRUdx'](runDeviceAuthFlow),_0x2db546=await getCurrentUser(_0x5c1f18);_0x2db546[_0x456bcc(0x15f)]?console[_0x456bcc(0x16b)](_0x456bcc(0x161)+_0x2db546[_0x456bcc(0x157)]['organizationName']):console['log']('\x0a✅\x20API\x20key\x20stored\x20successfully');}catch(_0x59cfc7){throw new Error('Login\x20failed:\x20'+(_0x58390d[_0x456bcc(0x15d)](_0x59cfc7,Error)?_0x59cfc7[_0x456bcc(0x169)]:_0x59cfc7));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x291dcb=_0x4ce7;function _0x4ce7(_0x322dbb,_0x92173){_0x322dbb=_0x322dbb-0x11f;const _0x3dbddf=_0x3dbd();let _0x4ce73e=_0x3dbddf[_0x322dbb];return _0x4ce73e;}(function(_0x5865c5,_0x199a29){const _0x1584ec=_0x4ce7,_0xe1b987=_0x5865c5();while(!![]){try{const _0x5c9efc=-parseInt(_0x1584ec(0x142))/0x1*(-parseInt(_0x1584ec(0x177))/0x2)+-parseInt(_0x1584ec(0x187))/0x3*(parseInt(_0x1584ec(0x17a))/0x4)+-parseInt(_0x1584ec(0x154))/0x5+parseInt(_0x1584ec(0x134))/0x6*(parseInt(_0x1584ec(0x193))/0x7)+-parseInt(_0x1584ec(0x189))/0x8+-parseInt(_0x1584ec(0x12e))/0x9+-parseInt(_0x1584ec(0x19b))/0xa*(-parseInt(_0x1584ec(0x163))/0xb);if(_0x5c9efc===_0x199a29)break;else _0xe1b987['push'](_0xe1b987['shift']());}catch(_0x11f593){_0xe1b987['push'](_0xe1b987['shift']());}}}(_0x3dbd,0x87f74));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';function _0x3dbd(){const _0x27c715=['stringify','76yrbkio','127.0.0.1','Authorization','needs-oauth','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','isTTY','expiresAt','slice','TzFtI','/callback','end','tools/call','origin','95904mHOgsw','sWQnx','7455784GHoJqc','auth-origin.txt','FiVLH','accessToken','Exchanging\x20authorization\x20code...','QKgNf','Registering\x20OAuth\x20client...','code_challenge_method','startsWith','1.0.0','358981cudXBS','qdmlp','.ranger','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','utf-8','2025-03-26','oRwfC','application/json','17103320pUOFqr','get_cli_token\x20failed:\x20','OZqbU','get','clientSecret','json','MUSqE','update','gVZjg','Ranger\x20CLI','ceOGK','LRwUS','closeAllConnections','fnmaQ','KMdsC','OAuthTimeoutError','yZrnK','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','trim','fOvLL','Oraxl','digest','http://localhost:','then','jPObe','stdout','registration_endpoint','bWrtf','2.0','2129148kMVixx','Token\x20exchange\x20failed:\x20','application/json,\x20text/event-stream','sKeKO','DTXcE','set','42AgggMU','write','lolvk','error_description','code','toString','includes','MxMtc','S256','WywIN','client_id','Not\x20found','platform','status','22eFHanI','POST','log','RatqX','xFZnr','error','initialize','MsBxM','\x0aToken\x20written\x20to\x20','text','parse','sha256','writeHead','client_secret','authorization_servers','clientId','ranger-cli','authorization_code','3996510pIXmuv','base64url','ZRoJB','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','name','MQOkS','length','\x20done','RKFLP','zKYfi','searchParams','url','uVkGk','uoBAK','xdg-open','11oXseLG','nzgdl','FMtgI','resource','result','string','eEtMF','text/html','WxZIj','UPaXc','Server\x20returned\x20error:\x20','headers','DnFGu','application/x-www-form-urlencoded','hex','gxFyW','Initializing\x20MCP\x20session...','start','close','XoPUv','96622cfarnX','hjpmP'];_0x3dbd=function(){return _0x27c715;};return _0x3dbd();}import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),'.ranger','mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),_0x291dcb(0x195),_0x291dcb(0x18a));export async function getMcpAuthOrigin(){const _0x5c5fe5=_0x291dcb,_0x2f3431={'dqYHv':'utf-8'};try{const _0x826ec4=(await readFile(AUTH_ORIGIN_PATH,_0x2f3431['dqYHv']))[_0x5c5fe5(0x123)]();return _0x826ec4||null;}catch{return null;}}export async function mcpBootstrap(){const _0x1b1aed=_0x291dcb,_0x1adf0a={'wukxt':function(_0x4654a4){return _0x4654a4();},'ceOGK':'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','WLeKC':function(_0x3b11c6,_0x15c204){return _0x3b11c6(_0x15c204);}},_0x478344=getMcpAuthUrl();currentOrigin=_0x478344;const _0x5e74a2=process[_0x1b1aed(0x12a)][_0x1b1aed(0x17f)]??![];console[_0x1b1aed(0x144)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x478344+'\x0a');const _0x40943d=await tryUnauthenticated(_0x478344);let _0x54da7f=null;if(_0x40943d==='proxied')_0x54da7f='';else{_0x54da7f=await _0x1adf0a['wukxt'](loadCachedToken);if(!_0x54da7f){if(!_0x5e74a2)throw new Error('MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a'+_0x1adf0a[_0x1b1aed(0x1a5)]);_0x54da7f=await _0x1adf0a['WLeKC'](oauthFlow,_0x478344);}}await callGetCliToken(_0x478344,_0x54da7f);}async function tryUnauthenticated(_0x3bd96b){const _0x47bf2b=_0x291dcb,_0x5689cf={'qdmlp':_0x47bf2b(0x19a),'LRwUS':_0x47bf2b(0x148),'zKYfi':'1.0.0','xTCFj':function(_0x28a5ea,_0x17b7a8){return _0x28a5ea===_0x17b7a8;},'rtHqe':_0x47bf2b(0x17d)},_0x30c17a=await fetch(_0x3bd96b,{'method':_0x47bf2b(0x143),'headers':{'Content-Type':_0x5689cf[_0x47bf2b(0x194)],'Accept':_0x47bf2b(0x130)},'body':JSON[_0x47bf2b(0x179)]({'jsonrpc':'2.0','id':0x1,'method':_0x5689cf[_0x47bf2b(0x1a6)],'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x5689cf[_0x47bf2b(0x15d)]}}})});if(_0x30c17a['ok'])return await _0x30c17a['text'](),'proxied';if(_0x5689cf['xTCFj'](_0x30c17a['status'],0x191))return await _0x30c17a['text'](),_0x5689cf['rtHqe'];const _0x40f414=await _0x30c17a['text']();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x30c17a[_0x47bf2b(0x141)]+':\x20'+_0x40f414);}class OAuthTimeoutError extends Error{constructor(_0x443f19){const _0x4db285=_0x291dcb;super(_0x443f19),this[_0x4db285(0x158)]=_0x4db285(0x120);}}async function oauthFlow(_0x408f12){const _0x5c5468=_0x291dcb,_0x276295={'FiVLH':function(_0x38bea7,_0x271c61){return _0x38bea7 instanceof _0x271c61;},'fnmaQ':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'};try{return await oauthFlowAttempt(_0x408f12);}catch(_0x26d8d7){if(_0x276295[_0x5c5468(0x18b)](_0x26d8d7,OAuthTimeoutError)&&await loadCachedClient())return console['log'](_0x276295[_0x5c5468(0x1a8)]),await clearCachedClient(),await oauthFlowAttempt(_0x408f12);throw _0x26d8d7;}}async function oauthFlowAttempt(_0x4345a8){const _0x481d3a=_0x291dcb,_0x3fd08b={'nnWFd':'Discovering\x20authorization\x20server...','HPRRE':_0x481d3a(0x196),'PHHxK':function(_0x5c1f9,_0x502a56){return _0x5c1f9(_0x502a56);},'mExWf':_0x481d3a(0x18f),'hjpmP':_0x481d3a(0x143),'axCnv':_0x481d3a(0x19a),'gdroG':'authorization_code','dXNZv':function(_0x43b0fa,_0x233bd1,_0x10ffd5){return _0x43b0fa(_0x233bd1,_0x10ffd5);},'XoPUv':_0x481d3a(0x155),'MQOkS':function(_0x4d7bf5,_0x5891a7){return _0x4d7bf5(_0x5891a7);},'INfOt':_0x481d3a(0x14d),'mowts':_0x481d3a(0x171),'zJgfH':'response_type','lolvk':'redirect_uri','zqjIz':'code_challenge','nzgdl':'state','opfSF':_0x481d3a(0x166),'OZqbU':function(_0x20e49d,_0x1b011d){return _0x20e49d(_0x1b011d);},'aTwhh':function(_0x290750,_0x132e3f){return _0x290750(_0x132e3f);},'CHBrk':_0x481d3a(0x18d),'TMlef':function(_0x2e25b6,_0x524483,_0x41c5f9){return _0x2e25b6(_0x524483,_0x41c5f9);},'jPObe':function(_0xf8ce19,_0x2db54,_0x50bf06,_0x5a8903){return _0xf8ce19(_0x2db54,_0x50bf06,_0x5a8903);}},_0x134dd7=_0x4345a8['replace'](/\/mcp$/,'');process['stdout']['write'](_0x3fd08b['nnWFd']);const _0x126198=await fetch(_0x134dd7+'/.well-known/oauth-protected-resource');if(!_0x126198['ok'])throw new Error(_0x3fd08b['HPRRE']);const _0x27a294=await _0x126198['json'](),_0x574543=_0x27a294[_0x481d3a(0x150)]?.[0x0];if(!_0x574543)throw new Error('No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata');console['log']('\x20'+_0x574543);const _0x25ec43=await _0x3fd08b['PHHxK'](fetchAuthServerMetadata,_0x574543);let _0x1c671c,_0x2527bd;const _0x53bd89=await loadCachedClient();if(_0x53bd89)_0x1c671c=_0x53bd89[_0x481d3a(0x151)],_0x2527bd=_0x53bd89[_0x481d3a(0x19f)];else{if(_0x25ec43[_0x481d3a(0x12b)]){process[_0x481d3a(0x12a)][_0x481d3a(0x135)](_0x3fd08b['mExWf']);const _0x4f23c9=await fetch(_0x25ec43['registration_endpoint'],{'method':_0x3fd08b[_0x481d3a(0x178)],'headers':{'Content-Type':_0x3fd08b['axCnv']},'body':JSON['stringify']({'client_name':_0x481d3a(0x1a4),'redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x481d3a(0x183)],'grant_types':[_0x3fd08b['gdroG'],'refresh_token'],'response_types':[_0x481d3a(0x138)],'token_endpoint_auth_method':'none'})});if(!_0x4f23c9['ok']){const _0x4b6d5e=await _0x4f23c9['text']();throw new Error('Client\x20registration\x20failed:\x20'+_0x4b6d5e);}const _0x54f5d2=await _0x4f23c9['json']();_0x1c671c=_0x54f5d2[_0x481d3a(0x13e)],_0x2527bd=_0x54f5d2[_0x481d3a(0x14f)],await _0x3fd08b['dXNZv'](saveCachedClient,_0x1c671c,_0x2527bd),console[_0x481d3a(0x144)]('\x20done');}else throw new Error(_0x481d3a(0x17e));}const _0x591149=randomBytes(0x20)['toString'](_0x3fd08b[_0x481d3a(0x176)]),_0x56e33a=_0x3fd08b[_0x481d3a(0x159)](createHash,_0x3fd08b['INfOt'])[_0x481d3a(0x1a2)](_0x591149)[_0x481d3a(0x126)]('base64url'),_0x3ce628=randomBytes(0x10)[_0x481d3a(0x139)](_0x3fd08b['mowts']),_0x3a77f4=new URL(_0x25ec43['authorization_endpoint']);_0x3a77f4['searchParams'][_0x481d3a(0x133)](_0x3fd08b['zJgfH'],'code'),_0x3a77f4['searchParams']['set'](_0x481d3a(0x13e),_0x1c671c),_0x3a77f4[_0x481d3a(0x15e)]['set'](_0x3fd08b[_0x481d3a(0x136)],_0x481d3a(0x127)+CALLBACK_PORT+_0x481d3a(0x183)),_0x3a77f4[_0x481d3a(0x15e)][_0x481d3a(0x133)](_0x3fd08b['zqjIz'],_0x56e33a),_0x3a77f4[_0x481d3a(0x15e)]['set'](_0x481d3a(0x190),_0x481d3a(0x13c)),_0x3a77f4['searchParams']['set'](_0x3fd08b[_0x481d3a(0x164)],_0x3ce628);_0x27a294[_0x481d3a(0x166)]&&_0x3a77f4[_0x481d3a(0x15e)]['set'](_0x3fd08b['opfSF'],_0x27a294[_0x481d3a(0x166)]);console['log']('\x0aOpening\x20browser\x20for\x20authentication...'),console['log'](_0x481d3a(0x122)+_0x3a77f4['toString']()+'\x0a'),await _0x3fd08b[_0x481d3a(0x19d)](openBrowser,_0x3a77f4['toString']());const _0x263d35=await _0x3fd08b['aTwhh'](waitForCallback,_0x3ce628);process[_0x481d3a(0x12a)][_0x481d3a(0x135)](_0x3fd08b['CHBrk']);const _0x28c44e=new URLSearchParams({'grant_type':_0x481d3a(0x153),'code':_0x263d35,'redirect_uri':'http://localhost:'+CALLBACK_PORT+'/callback','client_id':_0x1c671c,'code_verifier':_0x591149});_0x2527bd&&_0x28c44e['set']('client_secret',_0x2527bd);_0x27a294['resource']&&_0x28c44e[_0x481d3a(0x133)](_0x481d3a(0x166),_0x27a294[_0x481d3a(0x166)]);const _0x23a0bc=await _0x3fd08b['TMlef'](fetch,_0x25ec43['token_endpoint'],{'method':_0x481d3a(0x143),'headers':{'Content-Type':_0x481d3a(0x170)},'body':_0x28c44e});if(!_0x23a0bc['ok']){const _0x48880b=await _0x23a0bc['text']();throw new Error(_0x481d3a(0x12f)+_0x48880b);}const _0x4aebaa=await _0x23a0bc['json']();return console[_0x481d3a(0x144)]('\x20done'),await _0x3fd08b[_0x481d3a(0x129)](saveCachedToken,_0x4aebaa['access_token'],_0x4aebaa['refresh_token'],_0x4aebaa['expires_in']),_0x4aebaa['access_token'];}async function callGetCliToken(_0x2c0c64,_0x40842d){const _0xbd9ba2=_0x291dcb,_0x3229c7={'MUSqE':function(_0x44c5cc,_0xe2c8b7,_0x4fe5cb){return _0x44c5cc(_0xe2c8b7,_0x4fe5cb);},'sMDJz':'application/json','KMdsC':'application/json,\x20text/event-stream','qffTv':_0xbd9ba2(0x17c),'gxFyW':_0xbd9ba2(0x173),'FMtgI':_0xbd9ba2(0x12d),'xeYBw':_0xbd9ba2(0x198),'WxZIj':_0xbd9ba2(0x152),'EOnan':_0xbd9ba2(0x192),'sKeKO':_0xbd9ba2(0x15b),'RatqX':_0xbd9ba2(0x143),'FIifs':'Requesting\x20CLI\x20token...','VkDET':_0xbd9ba2(0x185),'DnFGu':'get_cli_token','MxMtc':'\x0aUnexpected\x20response\x20structure:','ABnpe':function(_0x5a7453){return _0x5a7453();},'nyEdQ':function(_0x48c30e,_0x1da854,_0x536c93,_0x1f6beb){return _0x48c30e(_0x1da854,_0x536c93,_0x1f6beb);}},_0x3826e0={'Content-Type':_0x3229c7['sMDJz'],'Accept':_0x3229c7[_0xbd9ba2(0x11f)]};_0x40842d&&(_0x3826e0[_0x3229c7['qffTv']]='Bearer\x20'+_0x40842d);const _0x362b57=async _0x4e4076=>{const _0xfe9960=_0xbd9ba2,_0x1d4758=await _0x3229c7[_0xfe9960(0x1a1)](fetch,_0x2c0c64,{'method':_0xfe9960(0x143),'headers':_0x3826e0,'body':JSON['stringify'](_0x4e4076)});if(!_0x1d4758['ok']){const _0x270414=await _0x1d4758['text']();throw new Error('HTTP\x20'+_0x1d4758['status']+':\x20'+_0x270414);}return parseResponse(_0x1d4758);};process['stdout']['write'](_0x3229c7[_0xbd9ba2(0x172)]);const _0x3138cd=await _0x362b57({'jsonrpc':_0x3229c7[_0xbd9ba2(0x165)],'id':0x1,'method':'initialize','params':{'protocolVersion':_0x3229c7['xeYBw'],'capabilities':{},'clientInfo':{'name':_0x3229c7[_0xbd9ba2(0x16b)],'version':_0x3229c7['EOnan']}}});if(_0x3138cd[_0xbd9ba2(0x147)])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x3138cd['error']['message']??JSON[_0xbd9ba2(0x179)](_0x3138cd['error'])));console[_0xbd9ba2(0x144)](_0x3229c7[_0xbd9ba2(0x131)]),await fetch(_0x2c0c64,{'method':_0x3229c7[_0xbd9ba2(0x145)],'headers':_0x3826e0,'body':JSON['stringify']({'jsonrpc':_0x3229c7[_0xbd9ba2(0x165)],'method':'notifications/initialized'})})[_0xbd9ba2(0x128)](_0x4e95ce=>_0x4e95ce['text']()),process[_0xbd9ba2(0x12a)]['write'](_0x3229c7['FIifs']);const _0x5917a7=await _0x362b57({'jsonrpc':'2.0','id':0x2,'method':_0x3229c7['VkDET'],'params':{'name':_0x3229c7[_0xbd9ba2(0x16f)],'arguments':{}}});if(_0x5917a7[_0xbd9ba2(0x147)])throw new Error(_0xbd9ba2(0x19c)+(_0x5917a7[_0xbd9ba2(0x147)]['message']??JSON[_0xbd9ba2(0x179)](_0x5917a7[_0xbd9ba2(0x147)])));console[_0xbd9ba2(0x144)](_0x3229c7[_0xbd9ba2(0x131)]);const _0x3a3eb6=extractToken(_0x5917a7[_0xbd9ba2(0x167)]);if(!_0x3a3eb6){console[_0xbd9ba2(0x147)](_0x3229c7[_0xbd9ba2(0x13b)]),console[_0xbd9ba2(0x147)](JSON['stringify'](_0x5917a7[_0xbd9ba2(0x167)],null,0x2));throw new Error(_0xbd9ba2(0x157));}const _0x2417ac=_0x3229c7['MUSqE'](join,_0x3229c7['ABnpe'](homedir),'.ranger'),_0x43cd3d=_0x3229c7['MUSqE'](join,_0x2417ac,'refresh.txt');await mkdir(_0x2417ac,{'recursive':!![]}),await writeFile(_0x43cd3d,_0x3a3eb6,{'mode':0x180}),await _0x3229c7['nyEdQ'](writeFile,join(_0x2417ac,_0xbd9ba2(0x18a)),_0x2c0c64,{'mode':0x180}),console[_0xbd9ba2(0x144)](_0xbd9ba2(0x14a)+_0x43cd3d),console['log']('Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a');}async function fetchAuthServerMetadata(_0x32387d){const _0x35dcfd=_0x32387d+'/.well-known/oauth-authorization-server',_0xd1cf3b=await fetch(_0x35dcfd);if(!_0xd1cf3b['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x35dcfd+':\x20'+_0xd1cf3b['status']);return _0xd1cf3b['json']();}function waitForCallback(_0x4294f7){const _0x4b614f=_0x291dcb,_0x5efce5={'QKgNf':function(_0x51c0db,_0xc913a8){return _0x51c0db(_0xc913a8);},'fOvLL':function(_0x4f3900,_0x21b8a0){return _0x4f3900!==_0x21b8a0;},'zzVsB':'/callback','zKVPW':_0x4b614f(0x138),'MWbzE':'error','SoyOh':'<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','cEgAe':function(_0x3c4752,_0x20207c){return _0x3c4752(_0x20207c);},'yZrnK':_0x4b614f(0x17b)};return new Promise((_0x24cbca,_0x5cff50)=>{const _0x20f6b5=_0x4b614f,_0x526c01={'vXtwx':function(_0x55c77e,_0x20d19f){const _0x4a7492=_0x4ce7;return _0x5efce5[_0x4a7492(0x18e)](_0x55c77e,_0x20d19f);},'sWQnx':function(_0x16b046,_0x104c83){const _0x3cff91=_0x4ce7;return _0x5efce5[_0x3cff91(0x124)](_0x16b046,_0x104c83);},'UPaXc':_0x5efce5['zzVsB'],'AVCep':_0x20f6b5(0x13f),'uoBAK':_0x5efce5['zKVPW'],'wxXmQ':'state','MIKrk':_0x5efce5['MWbzE'],'oYiwO':function(_0x4a2732,_0xd4b1de){return _0x4a2732(_0xd4b1de);},'xFZnr':function(_0x2bc8b6){return _0x2bc8b6();},'DTXcE':function(_0x3bea28,_0x571407){return _0x5efce5['QKgNf'](_0x3bea28,_0x571407);},'elHBL':_0x20f6b5(0x16a),'xIpIX':_0x5efce5['SoyOh'],'gVZjg':function(_0x2a4e12,_0x5ef8b7){return _0x2a4e12(_0x5ef8b7);}},_0x478c6b=()=>{const _0x78d5d8=_0x20f6b5;_0x31a7dc[_0x78d5d8(0x1a7)](),_0x31a7dc[_0x78d5d8(0x175)]();},_0x24f57d=setTimeout(()=>{_0x478c6b(),_0x526c01['vXtwx'](_0x5cff50,new OAuthTimeoutError('OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes'));},0x1d4c0),_0x31a7dc=_0x5efce5['cEgAe'](createServer,(_0x1ab361,_0x34a07f)=>{const _0x286bad=_0x20f6b5,_0x3f5aa8=new URL(_0x1ab361[_0x286bad(0x15f)]??'/','http://localhost:'+CALLBACK_PORT);if(_0x526c01[_0x286bad(0x188)](_0x3f5aa8['pathname'],_0x526c01[_0x286bad(0x16c)])){_0x34a07f[_0x286bad(0x14e)](0x194),_0x34a07f[_0x286bad(0x184)](_0x526c01['AVCep']);return;}const _0x41c273=_0x3f5aa8['searchParams'][_0x286bad(0x19e)](_0x526c01[_0x286bad(0x161)]),_0x2482e0=_0x3f5aa8[_0x286bad(0x15e)]['get'](_0x526c01['wxXmQ']),_0x3fb5cf=_0x3f5aa8['searchParams']['get'](_0x526c01['MIKrk']);if(_0x3fb5cf){const _0x3938a1=_0x3f5aa8['searchParams']['get'](_0x286bad(0x137))??_0x3fb5cf;_0x34a07f[_0x286bad(0x14e)](0xc8,{'Content-Type':'text/html'}),_0x34a07f[_0x286bad(0x184)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x3938a1+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),_0x526c01['oYiwO'](clearTimeout,_0x24f57d),_0x526c01[_0x286bad(0x146)](_0x478c6b),_0x526c01[_0x286bad(0x132)](_0x5cff50,new Error('OAuth\x20error:\x20'+_0x3938a1));return;}if(!_0x41c273||_0x2482e0!==_0x4294f7){_0x34a07f['writeHead'](0x190,{'Content-Type':_0x526c01['elHBL']}),_0x34a07f['end']('<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>');return;}_0x34a07f['writeHead'](0xc8,{'Content-Type':_0x286bad(0x16a)}),_0x34a07f['end'](_0x526c01['xIpIX']),clearTimeout(_0x24f57d),_0x478c6b(),_0x526c01[_0x286bad(0x1a3)](_0x24cbca,_0x41c273);});_0x31a7dc['listen'](CALLBACK_PORT,_0x5efce5[_0x20f6b5(0x121)]);});}async function openBrowser(_0x180c92){const _0x225947=_0x291dcb,_0x33e35e={'TXnuz':function(_0x3cc321,_0x55b00b){return _0x3cc321===_0x55b00b;},'RKFLP':_0x225947(0x174)},_0x38656f=process['platform']==='darwin'?'open':_0x33e35e['TXnuz'](process[_0x225947(0x140)],'win32')?_0x33e35e[_0x225947(0x15c)]:_0x225947(0x162);exec(_0x38656f+'\x20\x22'+_0x180c92+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x3dfd8b=_0x291dcb,_0x31b315={'bAtgo':function(_0x2120fd,_0x491921,_0x50bd24){return _0x2120fd(_0x491921,_0x50bd24);},'lrJQK':_0x3dfd8b(0x197),'udcrf':function(_0x2b0c82,_0x20ab48){return _0x2b0c82>_0x20ab48;}};try{const _0x994db5=JSON['parse'](await _0x31b315['bAtgo'](readFile,TOKEN_CACHE_PATH,_0x31b315['lrJQK']));if(_0x994db5['origin']&&_0x994db5['origin']!==currentOrigin)return null;if(_0x994db5[_0x3dfd8b(0x180)]&&_0x31b315['udcrf'](Date['now'](),_0x994db5[_0x3dfd8b(0x180)]))return null;return _0x994db5['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x3fc59f,_0x58a551,_0x194446){const _0x31440d=_0x291dcb,_0x3a2181={'JzVdO':function(_0x28b263){return _0x28b263();},'nhaLs':function(_0x2548e2,_0xe21a54){return _0x2548e2+_0xe21a54;},'pnWGB':function(_0x445fa8,_0x3b51ab){return _0x445fa8*_0x3b51ab;},'TzFtI':function(_0x158c5c,_0x26b7b7,_0x3f60f2){return _0x158c5c(_0x26b7b7,_0x3f60f2);},'ZlxxM':function(_0x94a3b9){return _0x94a3b9();},'ppwQd':'.ranger'},_0x7c533a=await _0x3a2181['JzVdO'](loadCachedData),_0x1dd403={..._0x7c533a,'origin':currentOrigin,'accessToken':_0x3fc59f,'refreshToken':_0x58a551??_0x7c533a?.['refreshToken'],'expiresAt':_0x194446?_0x3a2181['nhaLs'](Date['now'](),_0x3a2181['pnWGB'](_0x194446,0x3e8)):undefined};await mkdir(_0x3a2181[_0x31440d(0x182)](join,_0x3a2181['ZlxxM'](homedir),_0x3a2181['ppwQd']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x1dd403),{'mode':0x180});}async function loadCachedClient(){const _0x2ba1e2=_0x291dcb,_0x556ea1=await loadCachedData();if(_0x556ea1?.['origin']&&_0x556ea1[_0x2ba1e2(0x186)]!==currentOrigin)return null;return _0x556ea1?.[_0x2ba1e2(0x151)]?{'clientId':_0x556ea1[_0x2ba1e2(0x151)],'clientSecret':_0x556ea1['clientSecret']}:null;}async function clearCachedClient(){const _0x572600={'RIzVe':function(_0x3c8eb2,_0x4d1a77,_0x276a31,_0x22f44e){return _0x3c8eb2(_0x4d1a77,_0x276a31,_0x22f44e);}},_0x42de8f=await loadCachedData();if(!_0x42de8f)return;const {clientId:_0x393c46,clientSecret:_0x29dbd8,..._0x3204b5}=_0x42de8f;await _0x572600['RIzVe'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x3204b5),{'mode':0x180});}async function saveCachedClient(_0x491340,_0x14f9b6){const _0x2a409f=_0x291dcb,_0x1ab923={'oRwfC':function(_0x41bd80){return _0x41bd80();},'MsBxM':'.ranger','eEtMF':function(_0x4e38fb,_0x8a7d47,_0x4cca5c,_0x451433){return _0x4e38fb(_0x8a7d47,_0x4cca5c,_0x451433);}},_0x367ac2=await loadCachedData(),_0xe78391={..._0x367ac2,'origin':currentOrigin,'accessToken':_0x367ac2?.[_0x2a409f(0x18c)]??'','clientId':_0x491340,'clientSecret':_0x14f9b6};await mkdir(join(_0x1ab923[_0x2a409f(0x199)](homedir),_0x1ab923[_0x2a409f(0x149)]),{'recursive':!![]}),await _0x1ab923[_0x2a409f(0x169)](writeFile,TOKEN_CACHE_PATH,JSON[_0x2a409f(0x179)](_0xe78391),{'mode':0x180});}async function loadCachedData(){const _0x4f5577=_0x291dcb,_0x43de00={'bWrtf':'utf-8'};try{return JSON[_0x4f5577(0x14c)](await readFile(TOKEN_CACHE_PATH,_0x43de00[_0x4f5577(0x12c)]));}catch{return null;}}async function parseResponse(_0xc03f44){const _0x320863=_0x291dcb,_0x3123c2={'qKaVH':'content-type','VnNAF':'text/event-stream','Oraxl':'data:','WywIN':function(_0x5663e0,_0x4b7280){return _0x5663e0!==_0x4b7280;}},_0x4195a2=_0xc03f44[_0x320863(0x16e)][_0x320863(0x19e)](_0x3123c2['qKaVH'])??'';if(_0x4195a2[_0x320863(0x13a)](_0x3123c2['VnNAF'])){const _0x380637=await _0xc03f44['text']();for(const _0x27cad5 of _0x380637['split']('\x0a')){const _0x3069a9=_0x27cad5[_0x320863(0x123)]();if(_0x3069a9[_0x320863(0x191)](_0x3123c2[_0x320863(0x125)])){const _0x47039c=_0x3069a9[_0x320863(0x181)](_0x3123c2['Oraxl'][_0x320863(0x15a)])['trim']();if(!_0x47039c)continue;try{const _0xf73edc=JSON['parse'](_0x47039c);if(_0x3123c2[_0x320863(0x13d)](_0xf73edc['id'],undefined)||_0xf73edc['error'])return _0xf73edc;}catch{}}}throw new Error('No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream');}return _0xc03f44[_0x320863(0x1a0)]();}function extractToken(_0x59fdb4){const _0x10aa9a=_0x291dcb,_0x58ad9c={'uVkGk':_0x10aa9a(0x168),'TtsNg':_0x10aa9a(0x14b),'ZRoJB':function(_0x14c26a,_0x5a8edb){return _0x14c26a===_0x5a8edb;}};if(!_0x59fdb4)return null;const _0x4d0569=_0x59fdb4['structuredContent'];if(_0x4d0569?.['token']&&typeof _0x4d0569['token']===_0x58ad9c[_0x10aa9a(0x160)])return _0x4d0569['token'];if(_0x59fdb4['isError']){const _0x1a6f04=_0x59fdb4['content'];throw new Error(_0x10aa9a(0x16d)+(_0x1a6f04?.[0x0]?.[_0x10aa9a(0x14b)]??'Unknown\x20error'));}const _0x4e216f=_0x59fdb4['content'];if(_0x4e216f)for(const _0xdff3af of _0x4e216f){if(_0xdff3af['type']===_0x58ad9c['TtsNg']&&_0xdff3af['text']){try{const _0x57bdbb=JSON[_0x10aa9a(0x14c)](_0xdff3af['text']);if(_0x58ad9c[_0x10aa9a(0x156)](typeof _0x57bdbb?.['token'],'string'))return _0x57bdbb['token'];}catch{}const _0x395e88=_0xdff3af[_0x10aa9a(0x14b)]['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x395e88)return _0x395e88[0x1];}}return null;}
|
|
1
|
+
const _0x8f908f=_0xe2a9;(function(_0x25b098,_0x63d9d1){const _0x12787a=_0xe2a9,_0x120d8a=_0x25b098();while(!![]){try{const _0x5e7faf=-parseInt(_0x12787a(0x1b4))/0x1*(-parseInt(_0x12787a(0x18d))/0x2)+-parseInt(_0x12787a(0x1c6))/0x3+parseInt(_0x12787a(0x173))/0x4+parseInt(_0x12787a(0x16a))/0x5*(-parseInt(_0x12787a(0x199))/0x6)+parseInt(_0x12787a(0x1d2))/0x7+-parseInt(_0x12787a(0x196))/0x8+-parseInt(_0x12787a(0x192))/0x9;if(_0x5e7faf===_0x63d9d1)break;else _0x120d8a['push'](_0x120d8a['shift']());}catch(_0x2cab1b){_0x120d8a['push'](_0x120d8a['shift']());}}}(_0x2d0f,0x5c44a));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),_0x8f908f(0x165),_0x8f908f(0x17c)),AUTH_ORIGIN_PATH=join(homedir(),_0x8f908f(0x165),_0x8f908f(0x195));export async function getMcpAuthOrigin(){const _0x2fed4f=_0x8f908f,_0x6364b4={'cvJkT':function(_0x3c9d90,_0x359790,_0x111a10){return _0x3c9d90(_0x359790,_0x111a10);},'dPGbN':function(_0x49936f,_0x98c553){return _0x49936f||_0x98c553;}};try{const _0x300fef=(await _0x6364b4[_0x2fed4f(0x185)](readFile,AUTH_ORIGIN_PATH,_0x2fed4f(0x19d)))[_0x2fed4f(0x1db)]();return _0x6364b4[_0x2fed4f(0x1a3)](_0x300fef,null);}catch{return null;}}export async function mcpBootstrap(){const _0x400247=_0x8f908f,_0x531756={'heKHZ':function(_0x5eeab3,_0x242902){return _0x5eeab3(_0x242902);},'qBORd':function(_0x573a2b,_0x5953b8){return _0x573a2b===_0x5953b8;},'xYDuf':'proxied','YtCWO':_0x400247(0x181),'ARAVl':function(_0x2c53de,_0x12355d){return _0x2c53de(_0x12355d);}},_0x3c465f=getMcpAuthUrl();currentOrigin=_0x3c465f;const _0x72b7d3=process['stdout'][_0x400247(0x1b2)]??![];console['log'](_0x400247(0x1e3)+_0x3c465f+'\x0a');const _0x298816=await _0x531756['heKHZ'](tryUnauthenticated,_0x3c465f);let _0x586f39=null;if(_0x531756['qBORd'](_0x298816,_0x531756['xYDuf']))_0x586f39='';else{_0x586f39=await loadCachedToken();if(!_0x586f39){if(!_0x72b7d3)throw new Error(_0x531756[_0x400247(0x1a1)]+'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.');_0x586f39=await _0x531756['ARAVl'](oauthFlow,_0x3c465f);}}await callGetCliToken(_0x3c465f,_0x586f39);}async function tryUnauthenticated(_0x2ed40a){const _0x34ed00=_0x8f908f,_0x4a2799={'xPTlO':_0x34ed00(0x1cf),'XOcon':'initialize','bSuDq':'1.0.0','jsahF':'proxied','OLeKD':function(_0x5f044a,_0x2035af){return _0x5f044a===_0x2035af;}},_0x3ed9e0=await fetch(_0x2ed40a,{'method':'POST','headers':{'Content-Type':_0x4a2799[_0x34ed00(0x1ec)],'Accept':_0x34ed00(0x1d8)},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':_0x4a2799[_0x34ed00(0x166)],'params':{'protocolVersion':_0x34ed00(0x1ac),'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x4a2799['bSuDq']}}})});if(_0x3ed9e0['ok'])return await _0x3ed9e0[_0x34ed00(0x16d)](),_0x4a2799[_0x34ed00(0x172)];if(_0x4a2799['OLeKD'](_0x3ed9e0['status'],0x191))return await _0x3ed9e0[_0x34ed00(0x16d)](),'needs-oauth';const _0x3a940e=await _0x3ed9e0[_0x34ed00(0x16d)]();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x3ed9e0[_0x34ed00(0x1bd)]+':\x20'+_0x3a940e);}class OAuthTimeoutError extends Error{constructor(_0x109350){const _0x1fd6ee=_0x8f908f,_0xc65988={'UQVYs':'OAuthTimeoutError'};super(_0x109350),this[_0x1fd6ee(0x19c)]=_0xc65988['UQVYs'];}}async function oauthFlow(_0x4f0c26){const _0x33e67e={'aOBOM':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'};try{return await oauthFlowAttempt(_0x4f0c26);}catch(_0x5bab92){if(_0x5bab92 instanceof OAuthTimeoutError&&await loadCachedClient())return console['log'](_0x33e67e['aOBOM']),await clearCachedClient(),await oauthFlowAttempt(_0x4f0c26);throw _0x5bab92;}}async function oauthFlowAttempt(_0x16e757){const _0x450431=_0x8f908f,_0x31c0a9={'FmvZK':_0x450431(0x18b),'MLpkK':function(_0x2bd944,_0x313135){return _0x2bd944(_0x313135);},'qPqUQ':_0x450431(0x1e6),'jdgfE':function(_0x57a25a,_0xcde350,_0x1dec90){return _0x57a25a(_0xcde350,_0x1dec90);},'kaHzM':_0x450431(0x1c2),'viOPG':'application/json','uLuBB':'authorization_code','boAUe':_0x450431(0x1f0),'gqRbx':_0x450431(0x1a2),'obWaE':_0x450431(0x1c1),'jUljE':'base64url','fRQrK':function(_0x585eaa,_0x50b997){return _0x585eaa(_0x50b997);},'tAVEY':_0x450431(0x1d0),'EOclo':_0x450431(0x171),'uwCUz':'resource','AaJBP':'Exchanging\x20authorization\x20code...','SCbcr':'application/x-www-form-urlencoded'},_0x36541d=_0x16e757[_0x450431(0x16b)](/\/mcp$/,'');process['stdout']['write']('Discovering\x20authorization\x20server...');const _0x49caee=await fetch(_0x36541d+'/.well-known/oauth-protected-resource');if(!_0x49caee['ok'])throw new Error('Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server');const _0x42f225=await _0x49caee[_0x450431(0x1d9)](),_0x475d40=_0x42f225['authorization_servers']?.[0x0];if(!_0x475d40)throw new Error(_0x31c0a9['FmvZK']);console['log']('\x20'+_0x475d40);const _0x33384c=await _0x31c0a9['MLpkK'](fetchAuthServerMetadata,_0x475d40);let _0x240565,_0x445412;const _0x5c7e0e=await loadCachedClient();if(_0x5c7e0e)_0x240565=_0x5c7e0e['clientId'],_0x445412=_0x5c7e0e[_0x450431(0x1c4)];else{if(_0x33384c['registration_endpoint']){process['stdout']['write'](_0x31c0a9['qPqUQ']);const _0x43b6d4=await _0x31c0a9['jdgfE'](fetch,_0x33384c['registration_endpoint'],{'method':_0x31c0a9['kaHzM'],'headers':{'Content-Type':_0x31c0a9[_0x450431(0x1e9)]},'body':JSON[_0x450431(0x168)]({'client_name':'Ranger\x20CLI','redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x450431(0x19f)],'grant_types':[_0x31c0a9['uLuBB'],'refresh_token'],'response_types':[_0x31c0a9[_0x450431(0x176)]],'token_endpoint_auth_method':_0x31c0a9[_0x450431(0x1b9)]})});if(!_0x43b6d4['ok']){const _0x2be979=await _0x43b6d4['text']();throw new Error('Client\x20registration\x20failed:\x20'+_0x2be979);}const _0x5bf598=await _0x43b6d4['json']();_0x240565=_0x5bf598[_0x450431(0x17a)],_0x445412=_0x5bf598['client_secret'],await saveCachedClient(_0x240565,_0x445412),console['log']('\x20done');}else throw new Error(_0x31c0a9[_0x450431(0x1b3)]);}const _0x30ed6b=randomBytes(0x20)['toString'](_0x31c0a9['jUljE']),_0x58c957=createHash(_0x450431(0x1d7))[_0x450431(0x179)](_0x30ed6b)[_0x450431(0x1ce)](_0x450431(0x1dc)),_0x2a52c7=_0x31c0a9['fRQrK'](randomBytes,0x10)[_0x450431(0x190)]('hex'),_0xead34=new URL(_0x33384c['authorization_endpoint']);_0xead34['searchParams']['set'](_0x31c0a9['tAVEY'],_0x450431(0x1f0)),_0xead34[_0x450431(0x187)][_0x450431(0x16f)](_0x450431(0x17a),_0x240565),_0xead34['searchParams'][_0x450431(0x16f)](_0x450431(0x1cc),_0x450431(0x175)+CALLBACK_PORT+_0x450431(0x19f)),_0xead34['searchParams'][_0x450431(0x16f)]('code_challenge',_0x58c957),_0xead34[_0x450431(0x187)]['set'](_0x31c0a9['EOclo'],_0x450431(0x1ba)),_0xead34['searchParams'][_0x450431(0x16f)]('state',_0x2a52c7);_0x42f225[_0x450431(0x1e8)]&&_0xead34[_0x450431(0x187)]['set'](_0x31c0a9[_0x450431(0x1bb)],_0x42f225[_0x450431(0x1e8)]);console['log']('\x0aOpening\x20browser\x20for\x20authentication...'),console[_0x450431(0x1ef)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0xead34[_0x450431(0x190)]()+'\x0a'),await openBrowser(_0xead34['toString']());const _0xf39388=await _0x31c0a9['MLpkK'](waitForCallback,_0x2a52c7);process[_0x450431(0x16c)]['write'](_0x31c0a9[_0x450431(0x191)]);const _0x5d8126=new URLSearchParams({'grant_type':_0x450431(0x1ab),'code':_0xf39388,'redirect_uri':_0x450431(0x175)+CALLBACK_PORT+_0x450431(0x19f),'client_id':_0x240565,'code_verifier':_0x30ed6b});_0x445412&&_0x5d8126['set']('client_secret',_0x445412);_0x42f225['resource']&&_0x5d8126[_0x450431(0x16f)]('resource',_0x42f225[_0x450431(0x1e8)]);const _0xf543d6=await _0x31c0a9[_0x450431(0x1f2)](fetch,_0x33384c['token_endpoint'],{'method':_0x31c0a9['kaHzM'],'headers':{'Content-Type':_0x31c0a9[_0x450431(0x1d3)]},'body':_0x5d8126});if(!_0xf543d6['ok']){const _0x27d1d8=await _0xf543d6[_0x450431(0x16d)]();throw new Error('Token\x20exchange\x20failed:\x20'+_0x27d1d8);}const _0x2f06b8=await _0xf543d6['json']();return console['log']('\x20done'),await saveCachedToken(_0x2f06b8[_0x450431(0x1cd)],_0x2f06b8['refresh_token'],_0x2f06b8[_0x450431(0x1c5)]),_0x2f06b8[_0x450431(0x1cd)];}async function callGetCliToken(_0x38320f,_0x4263c4){const _0x70b135=_0x8f908f,_0x35c12a={'LMLLB':_0x70b135(0x1c2),'cLxlB':function(_0x37251d,_0x5a69d1){return _0x37251d(_0x5a69d1);},'OFnUA':'application/json','wdnvN':_0x70b135(0x1e5),'Ukvbd':function(_0x26e258,_0x243471){return _0x26e258(_0x243471);},'dnxrz':'initialize','qoqfm':'ranger-cli','zvEjk':_0x70b135(0x1ca),'mHdlK':_0x70b135(0x1b6),'kLDxg':_0x70b135(0x1e0),'pjrHR':function(_0x44bab7,_0x160771){return _0x44bab7(_0x160771);},'fYHzB':_0x70b135(0x18c),'tKrTc':function(_0x241b28){return _0x241b28();},'nqFRU':_0x70b135(0x165),'sASrw':function(_0x2dcce5,_0x1656ef,_0x218c97){return _0x2dcce5(_0x1656ef,_0x218c97);},'ROosc':function(_0x3ea921,_0xb39014,_0x4a29ca,_0x26bf9c){return _0x3ea921(_0xb39014,_0x4a29ca,_0x26bf9c);}},_0x1c4a80={'Content-Type':_0x35c12a['OFnUA'],'Accept':_0x70b135(0x1d8)};_0x4263c4&&(_0x1c4a80[_0x70b135(0x182)]='Bearer\x20'+_0x4263c4);const _0x512d89=async _0x1c3a9c=>{const _0x44d38f=_0x70b135,_0x4a9aa1=await fetch(_0x38320f,{'method':_0x35c12a['LMLLB'],'headers':_0x1c4a80,'body':JSON[_0x44d38f(0x168)](_0x1c3a9c)});if(!_0x4a9aa1['ok']){const _0x18454c=await _0x4a9aa1[_0x44d38f(0x16d)]();throw new Error(_0x44d38f(0x18e)+_0x4a9aa1[_0x44d38f(0x1bd)]+':\x20'+_0x18454c);}return _0x35c12a[_0x44d38f(0x1b5)](parseResponse,_0x4a9aa1);};process[_0x70b135(0x16c)]['write'](_0x35c12a[_0x70b135(0x1de)]);const _0xa2cf3a=await _0x35c12a[_0x70b135(0x1eb)](_0x512d89,{'jsonrpc':_0x70b135(0x1e0),'id':0x1,'method':_0x35c12a['dnxrz'],'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x35c12a['qoqfm'],'version':_0x35c12a[_0x70b135(0x18f)]}}});if(_0xa2cf3a['error'])throw new Error(_0x70b135(0x1d5)+(_0xa2cf3a[_0x70b135(0x1bf)][_0x70b135(0x1b8)]??JSON[_0x70b135(0x168)](_0xa2cf3a[_0x70b135(0x1bf)])));console['log'](_0x35c12a[_0x70b135(0x1a4)]),await fetch(_0x38320f,{'method':_0x35c12a[_0x70b135(0x19a)],'headers':_0x1c4a80,'body':JSON['stringify']({'jsonrpc':_0x35c12a['kLDxg'],'method':_0x70b135(0x177)})})[_0x70b135(0x16e)](_0x49d1e5=>_0x49d1e5[_0x70b135(0x16d)]()),process['stdout']['write']('Requesting\x20CLI\x20token...');const _0x589a3a=await _0x512d89({'jsonrpc':'2.0','id':0x2,'method':'tools/call','params':{'name':'get_cli_token','arguments':{}}});if(_0x589a3a[_0x70b135(0x1bf)])throw new Error('get_cli_token\x20failed:\x20'+(_0x589a3a['error'][_0x70b135(0x1b8)]??JSON[_0x70b135(0x168)](_0x589a3a['error'])));console[_0x70b135(0x1ef)](_0x35c12a[_0x70b135(0x1a4)]);const _0x875a8c=_0x35c12a['pjrHR'](extractToken,_0x589a3a[_0x70b135(0x1b1)]);if(!_0x875a8c){console[_0x70b135(0x1bf)](_0x35c12a['fYHzB']),console['error'](JSON['stringify'](_0x589a3a['result'],null,0x2));throw new Error(_0x70b135(0x186));}const _0x5f109f=join(_0x35c12a[_0x70b135(0x174)](homedir),_0x35c12a['nqFRU']),_0x1095d8=join(_0x5f109f,_0x70b135(0x17f));await _0x35c12a[_0x70b135(0x1c8)](mkdir,_0x5f109f,{'recursive':!![]}),await _0x35c12a['ROosc'](writeFile,_0x1095d8,_0x875a8c,{'mode':0x180}),await _0x35c12a['ROosc'](writeFile,join(_0x5f109f,'auth-origin.txt'),_0x38320f,{'mode':0x180}),console[_0x70b135(0x1ef)]('\x0aToken\x20written\x20to\x20'+_0x1095d8),console['log']('Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a');}async function fetchAuthServerMetadata(_0x4fe75f){const _0x3d7fff=_0x8f908f,_0x58681b=_0x4fe75f+'/.well-known/oauth-authorization-server',_0x54c29b=await fetch(_0x58681b);if(!_0x54c29b['ok'])throw new Error(_0x3d7fff(0x1c9)+_0x58681b+':\x20'+_0x54c29b['status']);return _0x54c29b[_0x3d7fff(0x1d9)]();}function _0xe2a9(_0x200ecb,_0x370408){_0x200ecb=_0x200ecb-0x165;const _0x2d0f50=_0x2d0f();let _0xe2a994=_0x2d0f50[_0x200ecb];return _0xe2a994;}function waitForCallback(_0x316a47){const _0x2855c1=_0x8f908f,_0x5828be={'vmgZY':function(_0xa27ce8,_0x493a2c){return _0xa27ce8(_0x493a2c);},'MXeYe':'error','YNsHV':'error_description','EvYMc':function(_0xa330d5){return _0xa330d5();},'abSWj':function(_0x236a98,_0x551adf){return _0x236a98!==_0x551adf;},'rwAWb':'<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','PoNDl':_0x2855c1(0x189),'StlQa':function(_0x20e46c,_0x2c8b30){return _0x20e46c(_0x2c8b30);},'OnmQE':function(_0x5d1aa8){return _0x5d1aa8();}};return new Promise((_0x1286ee,_0x2b0008)=>{const _0x19e14d=_0x2855c1,_0x4b90af=()=>{const _0x2ab27d=_0xe2a9;_0x5ef89f[_0x2ab27d(0x1ea)](),_0x5ef89f['close']();},_0x224bc5=setTimeout(()=>{const _0x3f9beb=_0xe2a9;_0x4b90af(),_0x5828be['vmgZY'](_0x2b0008,new OAuthTimeoutError(_0x3f9beb(0x1c3)));},0x1d4c0),_0x5ef89f=_0x5828be[_0x19e14d(0x1ae)](createServer,(_0x259fc4,_0x29a325)=>{const _0x2dcb74=_0x19e14d,_0x5a8641=new URL(_0x259fc4['url']??'/',_0x2dcb74(0x175)+CALLBACK_PORT);if(_0x5a8641[_0x2dcb74(0x1f1)]!=='/callback'){_0x29a325[_0x2dcb74(0x1da)](0x194),_0x29a325['end']('Not\x20found');return;}const _0x4c1d69=_0x5a8641['searchParams']['get'](_0x2dcb74(0x1f0)),_0x524264=_0x5a8641[_0x2dcb74(0x187)][_0x2dcb74(0x1af)](_0x2dcb74(0x193)),_0x5406e0=_0x5a8641[_0x2dcb74(0x187)][_0x2dcb74(0x1af)](_0x5828be[_0x2dcb74(0x1d4)]);if(_0x5406e0){const _0xd13bc=_0x5a8641['searchParams'][_0x2dcb74(0x1af)](_0x5828be['YNsHV'])??_0x5406e0;_0x29a325['writeHead'](0xc8,{'Content-Type':_0x2dcb74(0x194)}),_0x29a325[_0x2dcb74(0x1dd)](_0x2dcb74(0x1a5)+_0xd13bc+_0x2dcb74(0x1cb)),clearTimeout(_0x224bc5),_0x5828be[_0x2dcb74(0x188)](_0x4b90af),_0x2b0008(new Error('OAuth\x20error:\x20'+_0xd13bc));return;}if(!_0x4c1d69||_0x5828be[_0x2dcb74(0x169)](_0x524264,_0x316a47)){_0x29a325['writeHead'](0x190,{'Content-Type':_0x2dcb74(0x194)}),_0x29a325['end'](_0x5828be['rwAWb']);return;}_0x29a325['writeHead'](0xc8,{'Content-Type':_0x2dcb74(0x194)}),_0x29a325['end'](_0x5828be[_0x2dcb74(0x1a0)]),_0x5828be['StlQa'](clearTimeout,_0x224bc5),_0x5828be[_0x2dcb74(0x1ed)](_0x4b90af),_0x1286ee(_0x4c1d69);});_0x5ef89f[_0x19e14d(0x1e4)](CALLBACK_PORT,'127.0.0.1');});}async function openBrowser(_0xd455ee){const _0xda3d2=_0x8f908f,_0x599035={'xkwCz':'open','dXulO':_0xda3d2(0x180)},_0x1c76c8=process[_0xda3d2(0x1df)]===_0xda3d2(0x17e)?_0x599035[_0xda3d2(0x1e7)]:process['platform']===_0xda3d2(0x1c0)?_0xda3d2(0x183):_0x599035[_0xda3d2(0x1a9)];exec(_0x1c76c8+'\x20\x22'+_0xd455ee+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x4ba171=_0x8f908f,_0x115401={'fVNOZ':function(_0x8e0e0c,_0x1d09d1,_0x2cb903){return _0x8e0e0c(_0x1d09d1,_0x2cb903);},'PgTtq':'utf-8','rOCPH':function(_0x5ec7a8,_0x12ea9d){return _0x5ec7a8!==_0x12ea9d;}};try{const _0x4b6927=JSON['parse'](await _0x115401['fVNOZ'](readFile,TOKEN_CACHE_PATH,_0x115401['PgTtq']));if(_0x4b6927['origin']&&_0x115401['rOCPH'](_0x4b6927[_0x4ba171(0x170)],currentOrigin))return null;if(_0x4b6927['expiresAt']&&Date['now']()>_0x4b6927['expiresAt'])return null;return _0x4b6927['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x1a754e,_0x19f746,_0x1ae59d){const _0x20835b=_0x8f908f,_0x181279={'XfFoJ':function(_0x44166a,_0x41ec57){return _0x44166a*_0x41ec57;},'udYMS':function(_0x24c8fa,_0x17034e,_0x3dda0f){return _0x24c8fa(_0x17034e,_0x3dda0f);},'sErxf':function(_0x4f62e3,_0x5e0ef6,_0x47bffa,_0x3efacf){return _0x4f62e3(_0x5e0ef6,_0x47bffa,_0x3efacf);}},_0x47f2a9=await loadCachedData(),_0x15f526={..._0x47f2a9,'origin':currentOrigin,'accessToken':_0x1a754e,'refreshToken':_0x19f746??_0x47f2a9?.['refreshToken'],'expiresAt':_0x1ae59d?Date[_0x20835b(0x1b0)]()+_0x181279[_0x20835b(0x184)](_0x1ae59d,0x3e8):undefined};await mkdir(_0x181279[_0x20835b(0x1e2)](join,homedir(),_0x20835b(0x165)),{'recursive':!![]}),await _0x181279[_0x20835b(0x19b)](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x15f526),{'mode':0x180});}async function loadCachedClient(){const _0x5ef63c=_0x8f908f,_0x4c1348={'XLwdx':function(_0x46a921){return _0x46a921();},'vItLt':function(_0x53b2d0,_0x9863b2){return _0x53b2d0!==_0x9863b2;}},_0x17418e=await _0x4c1348[_0x5ef63c(0x198)](loadCachedData);if(_0x17418e?.[_0x5ef63c(0x170)]&&_0x4c1348['vItLt'](_0x17418e['origin'],currentOrigin))return null;return _0x17418e?.['clientId']?{'clientId':_0x17418e['clientId'],'clientSecret':_0x17418e[_0x5ef63c(0x1c4)]}:null;}async function clearCachedClient(){const _0x33d060=await loadCachedData();if(!_0x33d060)return;const {clientId:_0x19b939,clientSecret:_0x118c13,..._0xba3fc1}=_0x33d060;await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0xba3fc1),{'mode':0x180});}async function saveCachedClient(_0x43e812,_0x3cb0d4){const _0x30ae78=_0x8f908f,_0xbaacd2={'LSXLI':function(_0x467c49){return _0x467c49();}},_0x4dcddd=await _0xbaacd2[_0x30ae78(0x1a6)](loadCachedData),_0x512873={..._0x4dcddd,'origin':currentOrigin,'accessToken':_0x4dcddd?.[_0x30ae78(0x178)]??'','clientId':_0x43e812,'clientSecret':_0x3cb0d4};await mkdir(join(_0xbaacd2['LSXLI'](homedir),'.ranger'),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x512873),{'mode':0x180});}async function loadCachedData(){const _0x2f0665=_0x8f908f,_0x381427={'pvkys':function(_0x19b222,_0x2ed0ed,_0x26965a){return _0x19b222(_0x2ed0ed,_0x26965a);},'Htfva':_0x2f0665(0x19d)};try{return JSON['parse'](await _0x381427[_0x2f0665(0x1ad)](readFile,TOKEN_CACHE_PATH,_0x381427[_0x2f0665(0x1a8)]));}catch{return null;}}async function parseResponse(_0x15003c){const _0xc571ab=_0x8f908f,_0x58a21f={'FVQpO':_0xc571ab(0x1be),'yzCkU':function(_0x588bb1,_0x26fe3d){return _0x588bb1!==_0x26fe3d;},'ZRGPa':_0xc571ab(0x1aa)},_0x6bc05=_0x15003c[_0xc571ab(0x1e1)][_0xc571ab(0x1af)](_0xc571ab(0x1bc))??'';if(_0x6bc05['includes'](_0x58a21f[_0xc571ab(0x1a7)])){const _0x36166=await _0x15003c['text']();for(const _0x1ba016 of _0x36166[_0xc571ab(0x1f3)]('\x0a')){const _0x243c4b=_0x1ba016['trim']();if(_0x243c4b['startsWith']('data:')){const _0x4a7a1d=_0x243c4b['slice']('data:'[_0xc571ab(0x1ee)])['trim']();if(!_0x4a7a1d)continue;try{const _0x597ce1=JSON[_0xc571ab(0x1d1)](_0x4a7a1d);if(_0x58a21f[_0xc571ab(0x18a)](_0x597ce1['id'],undefined)||_0x597ce1[_0xc571ab(0x1bf)])return _0x597ce1;}catch{}}}throw new Error(_0x58a21f['ZRGPa']);}return _0x15003c['json']();}function _0x2d0f(){const _0x3ba34e=['POST','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','clientSecret','expires_in','54999JtcToI','content','sASrw','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','1.0.0','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','redirect_uri','access_token','digest','application/json','response_type','parse','2649724AYBzsF','SCbcr','MXeYe','MCP\x20initialize\x20failed:\x20','type','sha256','application/json,\x20text/event-stream','json','writeHead','trim','base64url','end','wdnvN','platform','2.0','headers','udYMS','\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20','listen','Initializing\x20MCP\x20session...','Registering\x20OAuth\x20client...','xkwCz','resource','viOPG','closeAllConnections','Ukvbd','xPTlO','OnmQE','length','log','code','pathname','jdgfE','split','.ranger','XOcon','Unknown\x20error','stringify','abSWj','5GHVijs','replace','stdout','text','then','set','origin','code_challenge_method','jsahF','2266532ycqKUe','tKrTc','http://localhost:','boAUe','notifications/initialized','accessToken','update','client_id','token','mcp-oauth-tokens.json','string','darwin','refresh.txt','xdg-open','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','Authorization','start','XfFoJ','cvJkT','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','searchParams','EvYMc','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','yzCkU','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','\x0aUnexpected\x20response\x20structure:','25504VgZjQx','HTTP\x20','zvEjk','toString','AaJBP','1791153QmFLui','state','text/html','auth-origin.txt','2518344rhsUzt','ALUha','XLwdx','1205208rWJikQ','LMLLB','sErxf','name','utf-8','isError','/callback','PoNDl','YtCWO','none','dPGbN','mHdlK','<html><body><h2>Authentication\x20failed</h2><p>','LSXLI','FVQpO','Htfva','dXulO','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','authorization_code','2025-03-26','pvkys','vmgZY','get','now','result','isTTY','obWaE','13osUaOs','cLxlB','\x20done','Server\x20returned\x20error:\x20','message','gqRbx','S256','uwCUz','content-type','status','text/event-stream','error','win32','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found'];_0x2d0f=function(){return _0x3ba34e;};return _0x2d0f();}function extractToken(_0x2ab3dc){const _0x4e78b8=_0x8f908f,_0x1e5be0={'kulDH':function(_0x51b421,_0x5e3cd4){return _0x51b421===_0x5e3cd4;},'ALUha':'text','hBzfQ':function(_0x1cd911,_0x5ae5c9){return _0x1cd911===_0x5ae5c9;},'NjfGP':_0x4e78b8(0x17d)};if(!_0x2ab3dc)return null;const _0x1ea0bd=_0x2ab3dc['structuredContent'];if(_0x1ea0bd?.[_0x4e78b8(0x17b)]&&_0x1e5be0['kulDH'](typeof _0x1ea0bd[_0x4e78b8(0x17b)],'string'))return _0x1ea0bd[_0x4e78b8(0x17b)];if(_0x2ab3dc[_0x4e78b8(0x19e)]){const _0x40ab20=_0x2ab3dc[_0x4e78b8(0x1c7)];throw new Error(_0x4e78b8(0x1b7)+(_0x40ab20?.[0x0]?.[_0x4e78b8(0x16d)]??_0x4e78b8(0x167)));}const _0x1c0a4b=_0x2ab3dc[_0x4e78b8(0x1c7)];if(_0x1c0a4b)for(const _0x34d8e9 of _0x1c0a4b){if(_0x34d8e9[_0x4e78b8(0x1d6)]===_0x1e5be0[_0x4e78b8(0x197)]&&_0x34d8e9['text']){try{const _0x516009=JSON[_0x4e78b8(0x1d1)](_0x34d8e9[_0x4e78b8(0x16d)]);if(_0x1e5be0['hBzfQ'](typeof _0x516009?.[_0x4e78b8(0x17b)],_0x1e5be0['NjfGP']))return _0x516009['token'];}catch{}const _0x133e80=_0x34d8e9[_0x4e78b8(0x16d)]['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x133e80)return _0x133e80[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x2fa5c6,_0x489778){var _0x4fd3ce=_0x502f,_0x573e97=_0x2fa5c6();while(!![]){try{var _0x57d4bf=-parseInt(_0x4fd3ce(0x10e))/0x1*(-parseInt(_0x4fd3ce(0x111))/0x2)+parseInt(_0x4fd3ce(0x100))/0x3*(parseInt(_0x4fd3ce(0x105))/0x4)+-parseInt(_0x4fd3ce(0x104))/0x5*(parseInt(_0x4fd3ce(0x103))/0x6)+-parseInt(_0x4fd3ce(0x110))/0x7+-parseInt(_0x4fd3ce(0x10f))/0x8*(parseInt(_0x4fd3ce(0x10d))/0x9)+parseInt(_0x4fd3ce(0x101))/0xa+-parseInt(_0x4fd3ce(0x108))/0xb;if(_0x57d4bf===_0x489778)break;else _0x573e97['push'](_0x573e97['shift']());}catch(_0x4a04d2){_0x573e97['push'](_0x573e97['shift']());}}}(_0x1e10,0x729b6));function _0x502f(_0x4d4dad,_0x39436e){_0x4d4dad=_0x4d4dad-0xff;var _0x1e1077=_0x1e10();var _0x502f53=_0x1e1077[_0x4d4dad];return _0x502f53;}export async function migrateProfile(_0x114440,_0x3b1223){var _0x4350e9=_0x502f,_0xcf3a53={'MsPCI':function(_0x36a321,_0x2c1875){return _0x36a321+_0x2c1875;},'kAmRw':function(_0x2ae54a,_0x31e8d5){return _0x2ae54a+_0x31e8d5;},'zZZsp':_0x4350e9(0x107),'queTe':'To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','qwoWF':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','FqFrP':'\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','zbcQE':_0x4350e9(0x106)};console['error'](_0xcf3a53[_0x4350e9(0x102)](_0xcf3a53['MsPCI'](_0xcf3a53['kAmRw'](_0xcf3a53[_0x4350e9(0xff)](_0xcf3a53['zZZsp']+'\x0a',_0xcf3a53[_0x4350e9(0x10c)])+'\x20\x20ranger\x20profile\x20add\x20<name>\x0a'+'\x0a',_0xcf3a53['qwoWF']),_0xcf3a53[_0x4350e9(0x10b)])+'\x0a',_0xcf3a53[_0x4350e9(0x10a)])+'fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.'),process[_0x4350e9(0x109)](0x1);}function _0x1e10(){var _0x40cc74=['FqFrP','queTe','112599IkQCgm','230527IJBlVn','352avfsgC','385322VoMsuY','4caBdnh','kAmRw','501hIQKkP','9305450aRVEyY','MsPCI','162GfZTKl','129925Wfurdc','12968lBPLdu','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a','ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a','1721038RbrYqK','exit','zbcQE'];_0x1e10=function(){return _0x40cc74;};return _0x1e10();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4d8d37,_0x405975){const _0x552a06=_0x3b70,_0x4bfcff=_0x4d8d37();while(!![]){try{const _0x459c9a=-parseInt(_0x552a06(0x19d))/0x1*(parseInt(_0x552a06(0x18e))/0x2)+-parseInt(_0x552a06(0x17f))/0x3+parseInt(_0x552a06(0x184))/0x4*(-parseInt(_0x552a06(0x1a7))/0x5)+-parseInt(_0x552a06(0x199))/0x6+parseInt(_0x552a06(0x186))/0x7*(parseInt(_0x552a06(0x187))/0x8)+-parseInt(_0x552a06(0x1a1))/0x9+parseInt(_0x552a06(0x188))/0xa;if(_0x459c9a===_0x405975)break;else _0x4bfcff['push'](_0x4bfcff['shift']());}catch(_0x446f98){_0x4bfcff['push'](_0x4bfcff['shift']());}}}(_0x4885,0x44f03));function _0x4885(){const _0x1fd1aa=['install','.claude','14126DsWFMh','PUJcE','zGXAE','marketplace','lRfHq','prompt','dduPm','mVRPc','--scope','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','rWEYa','3227166shoKbQ','OFpAH','\x0aYou\x20can\x20install\x20manually\x20with:','✓\x20Marketplace\x20already\x20added','19yKTAfK','qGpZe','Would\x20you\x20like\x20to\x20install\x20skills?','list','4934529SPUQBf','gevUA','ranger-testing/trailhead','JuAWf','output','✓\x20Ranger\x20skills\x20already\x20installed','114970GVxoFU','NOGSV','user','pluginScope','log','error','TXsfb','lLRwW','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','HVaEl','YjGKI','✓\x20Claude\x20Code\x20plugin\x20enabled','1205550dwSmja','\x0a📦\x20Claude\x20Code\x20Plugin\x0a','BnWsG','\x20level)...\x0a','ZuETQ','84NPhCll','ranger@trailhead','1141kfLvhi','10376IjJhms','21760230tDswLW','Where\x20should\x20the\x20plugin\x20be\x20installed?','project','BLedL'];_0x4885=function(){return _0x1fd1aa;};return _0x4885();}import{join}from'path';import{existsSync}from'fs';import _0x4ea7c9 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';function _0x3b70(_0x4d348a,_0x17b60f){_0x4d348a=_0x4d348a-0x17f;const _0x488530=_0x4885();let _0x3b7092=_0x488530[_0x4d348a];return _0x3b7092;}import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x14102b){const _0x1696d2=_0x3b70,_0x5df0c7={'dduPm':function(_0x43c364,_0x4a05d6){return _0x43c364(_0x4a05d6);},'lLRwW':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','dvpSV':function(_0x236c17,_0x23b506,_0x49c80c){return _0x236c17(_0x23b506,_0x49c80c);},'OFpAH':function(_0x39729d){return _0x39729d();},'mVRPc':_0x1696d2(0x1a0),'gtTHk':_0x1696d2(0x1aa),'BGsxN':_0x1696d2(0x189),'ZuETQ':'Project\x20(shared\x20with\x20team\x20via\x20git)','TXsfb':'project','gevUA':_0x1696d2(0x1a9),'rWEYa':function(_0x22a94c,_0x2553f2){return _0x22a94c(_0x2553f2);},'YjGKI':'trailhead','HVaEl':_0x1696d2(0x19c),'LRsPg':function(_0xd51ad9,_0x10f053){return _0xd51ad9(_0x10f053);},'zGXAE':'plugin','BLedL':'❌\x20Failed\x20to\x20add\x20marketplace:','QMdjv':_0x1696d2(0x19b),'lRfHq':_0x1696d2(0x1af),'mNlVU':_0x1696d2(0x18c),'oZCuN':_0x1696d2(0x185),'NOGSV':_0x1696d2(0x196),'ZEkFC':function(_0x4a4f0c,_0x5768da){return _0x4a4f0c===_0x5768da;},'xFwNC':function(_0x371938){return _0x371938();},'JuAWf':'✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','nApxl':function(_0x3e3863,_0x184765,_0x2a1037){return _0x3e3863(_0x184765,_0x2a1037);},'RVlzY':_0x1696d2(0x1b2)},_0x47a942=await _0x5df0c7[_0x1696d2(0x194)](isPluginInstalled,_0x1696d2(0x185));if(_0x47a942)return console['log'](_0x5df0c7[_0x1696d2(0x1ae)]),![];const _0x2b2c4f=existsSync(_0x5df0c7['dvpSV'](join,_0x5df0c7['OFpAH'](getProjectRoot),_0x1696d2(0x18d)));let _0x3f051d;if(_0x14102b)_0x3f051d=_0x14102b;else{if(_0x2b2c4f)_0x3f051d=_0x1696d2(0x18a);else{console['log'](_0x1696d2(0x180));const _0x390060=await _0x4ea7c9[_0x1696d2(0x193)]([{'type':_0x5df0c7[_0x1696d2(0x195)],'name':_0x5df0c7['gtTHk'],'message':_0x5df0c7['BGsxN'],'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':'user'},{'name':_0x5df0c7[_0x1696d2(0x183)],'value':_0x5df0c7[_0x1696d2(0x1ad)]}],'default':_0x5df0c7[_0x1696d2(0x1a2)]}]);_0x3f051d=_0x390060[_0x1696d2(0x1aa)];}}console[_0x1696d2(0x1ab)]('\x0aInstalling\x20Claude\x20Code\x20plugin\x20('+_0x3f051d+_0x1696d2(0x182));const _0x4311ed=await _0x5df0c7[_0x1696d2(0x198)](isMarketplaceAdded,_0x5df0c7[_0x1696d2(0x1b1)]);let _0x168df0=_0x4311ed;if(_0x4311ed)console['log'](_0x5df0c7[_0x1696d2(0x1b0)]);else{const _0x56cdab=await _0x5df0c7['LRsPg'](runClaudeCommand,[_0x5df0c7[_0x1696d2(0x190)],_0x1696d2(0x191),'add',_0x1696d2(0x1a3)]);!_0x56cdab['success']?(console[_0x1696d2(0x1ac)](_0x5df0c7[_0x1696d2(0x18b)],_0x56cdab[_0x1696d2(0x1ac)]),console['log'](_0x5df0c7['QMdjv']),console['log'](_0x5df0c7[_0x1696d2(0x192)]),console[_0x1696d2(0x1ab)](_0x1696d2(0x197)+_0x3f051d)):_0x168df0=!![];}if(_0x168df0){const _0xc0b152=await runClaudeCommand([_0x5df0c7['zGXAE'],_0x5df0c7['mNlVU'],_0x5df0c7['oZCuN'],_0x5df0c7['NOGSV'],_0x3f051d],{'cwd':_0x5df0c7['ZEkFC'](_0x3f051d,'project')?_0x5df0c7['xFwNC'](getProjectRoot):undefined});if(!_0xc0b152['success'])console['error']('❌\x20Failed\x20to\x20install\x20plugin:',_0xc0b152[_0x1696d2(0x1ac)]),console[_0x1696d2(0x1ab)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console[_0x1696d2(0x1ab)](_0x1696d2(0x197)+_0x3f051d);else{console['log'](_0x5df0c7[_0x1696d2(0x1a4)]);const _0x1810a5=['plugin','enable',_0x5df0c7['oZCuN']];_0x5df0c7['ZEkFC'](_0x3f051d,'project')&&_0x1810a5['push'](_0x5df0c7[_0x1696d2(0x1a8)],_0x5df0c7['TXsfb']);const _0x33a080=await _0x5df0c7['nApxl'](runClaudeCommand,_0x1810a5,{'captureOutput':!![],'cwd':_0x5df0c7['ZEkFC'](_0x3f051d,_0x1696d2(0x18a))?_0x5df0c7[_0x1696d2(0x19a)](getProjectRoot):undefined}),_0x141aed=_0x33a080[_0x1696d2(0x1a5)]?.['includes']('already\x20enabled');!_0x33a080['success']&&!_0x141aed?console[_0x1696d2(0x1ac)]('⚠\x20Failed\x20to\x20enable\x20plugin:',_0x33a080['error']):console['log'](_0x5df0c7['RVlzY']);}}return!![];}export async function ensureClaudeSkills(_0x521b8e){const _0x579308=_0x3b70,_0x26f7f6={'qGpZe':function(_0x4e6497,_0x134b1b){return _0x4e6497(_0x134b1b);},'oSGBB':function(_0x18a584,_0x52c71a,_0x4c17c9,_0x183d86){return _0x18a584(_0x52c71a,_0x4c17c9,_0x183d86);},'PrhMj':'ranger','PUJcE':_0x579308(0x18a),'UPmKM':function(_0x41b0bb,_0x4186ad){return _0x41b0bb(_0x4186ad);},'BnWsG':function(_0x4e7fde,_0x5210f8){return _0x4e7fde(_0x5210f8);}},_0x1b66bf=_0x26f7f6[_0x579308(0x19e)](existsSync,_0x26f7f6['oSGBB'](join,getSkillsDir(_0x579308(0x1a9)),_0x26f7f6['PrhMj'],'SKILL.md')),_0x3b5515=existsSync(join(_0x26f7f6[_0x579308(0x19e)](getSkillsDir,_0x26f7f6[_0x579308(0x18f)]),_0x26f7f6['PrhMj'],'SKILL.md'));if(_0x1b66bf||_0x3b5515)return console[_0x579308(0x1ab)](_0x579308(0x1a6)),![];const _0x3ba5e1=existsSync(join(getProjectRoot(),'.claude'));let _0x368513=!![];if(_0x521b8e)await _0x26f7f6['UPmKM'](skillup,{'autoInstall':_0x521b8e,'suppressUsage':!![]});else{if(_0x3ba5e1)await _0x26f7f6[_0x579308(0x181)](skillup,{'autoInstall':'project','suppressUsage':!![]});else{const _0x1b1108=await _0x4ea7c9['prompt']([{'type':'confirm','name':'wantsSkillup','message':_0x579308(0x19f),'default':!![]}]);_0x368513=_0x1b1108['wantsSkillup'],_0x368513&&await skillup({'suppressUsage':!![]});}}return _0x368513;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5a2329,_0x2a8827){const _0xdab380=_0x4731,_0x581cb3=_0x5a2329();while(!![]){try{const _0x19bed0=-parseInt(_0xdab380(0xda))/0x1+-parseInt(_0xdab380(0xcf))/0x2*(parseInt(_0xdab380(0xdd))/0x3)+parseInt(_0xdab380(0xdf))/0x4+parseInt(_0xdab380(0xd5))/0x5+parseInt(_0xdab380(0xeb))/0x6+parseInt(_0xdab380(0xde))/0x7*(-parseInt(_0xdab380(0xd8))/0x8)+-parseInt(_0xdab380(0xe4))/0x9;if(_0x19bed0===_0x2a8827)break;else _0x581cb3['push'](_0x581cb3['shift']());}catch(_0x5eb940){_0x581cb3['push'](_0x581cb3['shift']());}}}(_0x46df,0xa0229));import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x51aa62 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';function _0x46df(){const _0x54a860=['log','Where\x20should\x20the\x20plugin\x20be\x20installed?','includes','4170875ngAvMJ','opencode.json','BUwPO','481064mGCIcB','User\x20(available\x20in\x20all\x20your\x20projects)','601877EAiEnz','MrPue','oabgr','3KufOrM','42OusXuP','2467180fJaSeE','@ranger-testing/opencode-plugin','plugin','uONlj','parse','5539203kdLexi','project','CcRpg','DjfYT','ThVhO','pGErx','error','5382288rKwYWD','TxZzD','pluginScope','utf-8','227926DawQGv','lkZcP','CWxBP'];_0x46df=function(){return _0x54a860;};return _0x46df();}function _0x4731(_0x353dd4,_0x4898ab){_0x353dd4=_0x353dd4-0xcd;const _0x46df20=_0x46df();let _0x473165=_0x46df20[_0x353dd4];return _0x473165;}export async function ensureOpencodePluginConfig(_0xb4c0fd){const _0x565a4d=_0x4731,_0x4197b2={'TxZzD':function(_0x1e1a4e,_0x53b782){return _0x1e1a4e(_0x53b782);},'BUwPO':'project','oabgr':_0x565a4d(0xd6),'pGErx':'list','uONlj':'pluginScope','IGXeS':_0x565a4d(0xd3),'NfjmA':_0x565a4d(0xd9),'lkZcP':function(_0x3f8371,_0x45e526,_0x2caddd){return _0x3f8371(_0x45e526,_0x2caddd);},'CcRpg':_0x565a4d(0xe0),'wAXoh':function(_0x510527,_0x7c9545,_0x18e96e){return _0x510527(_0x7c9545,_0x18e96e);},'yZryL':_0x565a4d(0xce),'ThVhO':'✓\x20OpenCode\x20plugin\x20already\x20configured','DjfYT':function(_0x33b981,_0x185f5c){return _0x33b981(_0x185f5c);},'CWxBP':function(_0x125d52,_0x233413){return _0x125d52+_0x233413;},'MrPue':'✓\x20OpenCode\x20plugin\x20configured'},_0xb7e19a=existsSync(join(_0x4197b2[_0x565a4d(0xec)](getOpencodeConfigDir,_0x4197b2[_0x565a4d(0xd7)]),_0x4197b2[_0x565a4d(0xdc)]));let _0x52a75d;if(_0xb4c0fd)_0x52a75d=_0xb4c0fd;else{if(_0xb7e19a)_0x52a75d=_0x4197b2[_0x565a4d(0xd7)];else{console['log']('\x0a📦\x20OpenCode\x20Plugin\x0a');const _0x2cbba6=await _0x51aa62['prompt']([{'type':_0x4197b2[_0x565a4d(0xe9)],'name':_0x4197b2[_0x565a4d(0xe2)],'message':_0x4197b2['IGXeS'],'choices':[{'name':_0x4197b2['NfjmA'],'value':'user'},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x565a4d(0xe5)}],'default':'user'}]);_0x52a75d=_0x2cbba6[_0x565a4d(0xcd)];}}const _0x532833=_0x4197b2[_0x565a4d(0xd0)](join,getOpencodeConfigDir(_0x52a75d),'opencode.json'),_0x5cbf2f=_0x4197b2[_0x565a4d(0xe6)],_0x4af584='https://opencode.ai/config.json';let _0x2cfcb7={};if(existsSync(_0x532833))try{const _0x5dd3d4=await _0x4197b2['wAXoh'](readFile,_0x532833,_0x4197b2['yZryL']);_0x2cfcb7=JSON[_0x565a4d(0xe3)](_0x5dd3d4);}catch(_0x2f03d0){return console[_0x565a4d(0xea)]('⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.'),{'configured':![],'scope':_0x52a75d,'error':'Failed\x20to\x20read\x20opencode.json','details':_0x2f03d0};}const _0x2862cc=Array['isArray'](_0x2cfcb7['plugin'])?_0x2cfcb7['plugin']:[];if(_0x2862cc[_0x565a4d(0xd4)](_0x5cbf2f))return console[_0x565a4d(0xd2)](_0x4197b2[_0x565a4d(0xe8)]),{'configured':![],'scope':_0x52a75d};return _0x2cfcb7['$schema']=_0x2cfcb7['$schema']||_0x4af584,_0x2cfcb7[_0x565a4d(0xe1)]=[..._0x2862cc,_0x5cbf2f],await mkdir(_0x4197b2[_0x565a4d(0xe7)](getOpencodeConfigDir,_0x52a75d),{'recursive':!![]}),await _0x4197b2['wAXoh'](writeFile,_0x532833,_0x4197b2[_0x565a4d(0xd1)](JSON['stringify'](_0x2cfcb7,null,0x2),'\x0a')),console[_0x565a4d(0xd2)](_0x4197b2[_0x565a4d(0xdb)]),{'configured':!![],'scope':_0x52a75d};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x818f(){var _0x2e6f7e=['6741hBLTiq','stxsI','87660KYgbYS','5095026bxBJCp','268932SQgPEI','exit','LSFSD','8824uapuxx','365628qfMUWu','350Eubvlv','8KcZITT','91478KmOPRE','170UnENey','\x20\x20https://docs.ranger.net/main/concepts/profiles','119273Ucivhi','9pLApkZ','1209ADKVut'];_0x818f=function(){return _0x2e6f7e;};return _0x818f();}(function(_0x542fef,_0x407fe7){var _0x1b75d7=_0x2125,_0x380ed2=_0x542fef();while(!![]){try{var _0xc05632=parseInt(_0x1b75d7(0x8f))/0x1*(-parseInt(_0x1b75d7(0x9c))/0x2)+-parseInt(_0x1b75d7(0x99))/0x3*(parseInt(_0x1b75d7(0x9b))/0x4)+-parseInt(_0x1b75d7(0x9a))/0x5*(parseInt(_0x1b75d7(0x93))/0x6)+-parseInt(_0x1b75d7(0x91))/0x7*(-parseInt(_0x1b75d7(0x98))/0x8)+-parseInt(_0x1b75d7(0x94))/0x9+-parseInt(_0x1b75d7(0x8c))/0xa*(parseInt(_0x1b75d7(0x8e))/0xb)+parseInt(_0x1b75d7(0x95))/0xc*(parseInt(_0x1b75d7(0x90))/0xd);if(_0xc05632===_0x407fe7)break;else _0x380ed2['push'](_0x380ed2['shift']());}catch(_0x3798fc){_0x380ed2['push'](_0x380ed2['shift']());}}}(_0x818f,0xaf428));function _0x2125(_0x250126,_0x7e521c){_0x250126=_0x250126-0x8c;var _0x818f76=_0x818f();var _0x212524=_0x818f76[_0x250126];return _0x212524;}export async function setupCi(_0x163361,_0x40e023,_0x3be9f3){var _0x25b6e5=_0x2125,_0x5e22e5={'SHPhv':function(_0x7ce974,_0x22614f){return _0x7ce974+_0x22614f;},'vEDOK':function(_0x10cd05,_0x327b21){return _0x10cd05+_0x327b21;},'LSFSD':'To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','stxsI':'\x20\x20ranger\x20profile\x20add\x20<name>\x0a','BOuPG':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','QaKIA':_0x25b6e5(0x8d)};console['error'](_0x5e22e5['SHPhv'](_0x5e22e5['vEDOK']('ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a'+'\x0a',_0x5e22e5[_0x25b6e5(0x97)])+_0x5e22e5[_0x25b6e5(0x92)]+'\x0a'+_0x5e22e5['BOuPG'],_0x5e22e5['QaKIA'])),process[_0x25b6e5(0x96)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
(function(_0x1e122f,_0x493977){const _0x51c40b=_0xd6de,_0x579831=_0x1e122f();while(!![]){try{const _0x246a26=parseInt(_0x51c40b(0x109))/0x1*(parseInt(_0x51c40b(0x124))/0x2)+parseInt(_0x51c40b(0x115))/0x3*(-parseInt(_0x51c40b(0x11f))/0x4)+parseInt(_0x51c40b(0x113))/0x5*(parseInt(_0x51c40b(0x102))/0x6)+parseInt(_0x51c40b(0x11a))/0x7*(parseInt(_0x51c40b(0x121))/0x8)+-parseInt(_0x51c40b(0x120))/0x9+-parseInt(_0x51c40b(0x11b))/0xa+-parseInt(_0x51c40b(0x123))/0xb*(-parseInt(_0x51c40b(0xfe))/0xc);if(_0x246a26===_0x493977)break;else _0x579831['push'](_0x579831['shift']());}catch(_0x5bccf1){_0x579831['push'](_0x579831['shift']());}}}(_0x5db7,0xb60fd));function _0xd6de(_0x1fdd45,_0x486fcf){_0x1fdd45=_0x1fdd45-0xf9;const _0x5db7e4=_0x5db7();let _0xd6dee5=_0x5db7e4[_0x1fdd45];return _0xd6dee5;}import{basename}from'path';import _0xe1e624 from'inquirer';function _0x5db7(){const _0x16c794=['ckHqu','autoInstall','message','108325DaxyOi','Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20(','114ibDCmU','KEkXZ','\x0a✅\x20Installed\x20','CxwBj','PFZUB','581lkCvfy','3014380duxSvU','platform','\x0a📦\x20Installing\x20skills...\x0a','opencode','70996IvBsYw','12049821lEPEFj','64520QkYQTP','tAEFk','154WMtYDr','54AiwlKw','RttXb','\x20--opencode','lSjvP','Where\x20should\x20skills\x20be\x20installed?','stdin','/skills/','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','This\x20project\x20only\x20(','1045068cVwBdJ','\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','log','\x20skill','294VqOrUN','IHGdq','list','faHhp','\x20<your-api-token>','claude','ThSKB','4084ECojCN','LgAQu','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','pjcOs','isTTY','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','project'];_0x5db7=function(){return _0x16c794;};return _0x5db7();}import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0xc4c9e={}){const _0x1285e7=_0xd6de,_0x488785={'lSjvP':'\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','ThSKB':'❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','QRbAz':_0x1285e7(0x10b),'faHhp':'opencode','KEkXZ':function(_0x15eae7,_0x119557){return _0x15eae7===_0x119557;},'RttXb':_0x1285e7(0x126),'gjcNY':function(_0xd1be74,_0x2a2714){return _0xd1be74(_0x2a2714);},'yzwPr':_0x1285e7(0x104),'tAEFk':'installLevel','IHGdq':'user','CxwBj':'project','ckHqu':_0x1285e7(0xfc),'spZBD':function(_0x582c46,_0x6fe587){return _0x582c46 instanceof _0x6fe587;},'kkBVX':'project-level','pjcOs':function(_0x20dc21,_0x4bd37f){return _0x20dc21===_0x4bd37f;},'KzlPJ':_0x1285e7(0xff),'PFZUB':'\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!','LgAQu':_0x1285e7(0x10e)};console['log'](_0x488785[_0x1285e7(0x127)]);const _0x24a1f8=_0xc4c9e[_0x1285e7(0x11c)]??_0x1285e7(0x107),_0x4486c5=await getToken();if(!_0x4486c5){console[_0x1285e7(0x100)](_0x488785[_0x1285e7(0x108)]),console[_0x1285e7(0x100)]('To\x20get\x20started:'),console['log'](_0x488785['QRbAz']),console[_0x1285e7(0x100)]('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x24a1f8===_0x488785['faHhp']?_0x1285e7(0x126):'')+_0x1285e7(0x106)),console['log']('\x20\x203.\x20Run:\x20ranger\x20skillup'+(_0x488785[_0x1285e7(0x116)](_0x24a1f8,_0x488785[_0x1285e7(0x105)])?_0x488785[_0x1285e7(0x125)]:'')+'\x0a');return;}console['log']('✓\x20Found\x20API\x20token');const _0x331493=getProjectRoot(),_0x1a4d92=basename(_0x331493),_0x421330=_0x24a1f8==='opencode'?_0x488785['gjcNY'](getOpencodeConfigDir,'user')+_0x1285e7(0xfb):getClaudeConfigDir()+'/skills/',_0x269a18=_0x24a1f8===_0x1285e7(0x11e)?_0x331493+'/.opencode/skills/':_0x331493+'/.claude/skills/',_0x134fc2=process[_0x1285e7(0xfa)]['isTTY']&&process['stdout'][_0x1285e7(0x10d)];let _0x3c0a94;if(_0xc4c9e['autoInstall'])_0x3c0a94=_0xc4c9e[_0x1285e7(0x111)];else{if(_0x134fc2){const _0x578362=await _0xe1e624['prompt']([{'type':_0x488785['yzwPr'],'name':_0x488785[_0x1285e7(0x122)],'message':_0x1285e7(0xf9),'choices':[{'name':'All\x20projects\x20('+_0x421330+')','value':_0x488785['IHGdq']},{'name':_0x1285e7(0xfd)+_0x269a18+')','value':_0x488785[_0x1285e7(0x118)]}]}]);_0x3c0a94=_0x578362['installLevel'];}else _0x3c0a94=_0x1285e7(0x10f),console[_0x1285e7(0x100)](_0x1285e7(0x114)+_0x269a18+')');}let _0x5b2566=0x0;const _0x1af127=getCurrentVersion();console['log'](_0x1285e7(0x11d));try{const _0x1fd91c=await installSkill('ranger',{'cliVersion':_0x1af127,'level':_0x3c0a94,'platform':_0x24a1f8});_0x1fd91c&&_0x5b2566++;}catch(_0x1244ba){console['warn'](_0x488785[_0x1285e7(0x110)],_0x488785['spZBD'](_0x1244ba,Error)?_0x1244ba[_0x1285e7(0x112)]:_0x1244ba);}if(_0x5b2566>0x0){const _0x1630c7=_0x3c0a94===_0x488785[_0x1285e7(0x103)]?'user-level':_0x488785['kkBVX'];console['log'](_0x1285e7(0x117)+_0x5b2566+'\x20'+_0x1630c7+_0x1285e7(0x101)+(_0x5b2566>0x1?'s':'')+'\x20successfully!\x0a'),!_0xc4c9e['suppressUsage']&&(console[_0x1285e7(0x100)]('To\x20use:'),_0x488785[_0x1285e7(0x10c)](_0x24a1f8,'opencode')?console['log'](_0x488785['KzlPJ']):console['log'](_0x488785[_0x1285e7(0x119)]));}else console[_0x1285e7(0x100)](_0x488785[_0x1285e7(0x10a)]);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x410d38=_0xcacf;(function(_0x35bb54,_0x2f6da9){const _0x53d3aa=_0xcacf,_0x1b211c=_0x35bb54();while(!![]){try{const _0x168a7d=-parseInt(_0x53d3aa(0xfc))/0x1*(-parseInt(_0x53d3aa(0xeb))/0x2)+parseInt(_0x53d3aa(0x14b))/0x3+-parseInt(_0x53d3aa(0x12b))/0x4+-parseInt(_0x53d3aa(0x119))/0x5*(parseInt(_0x53d3aa(0x111))/0x6)+-parseInt(_0x53d3aa(0x139))/0x7*(parseInt(_0x53d3aa(0x132))/0x8)+parseInt(_0x53d3aa(0xf7))/0x9*(parseInt(_0x53d3aa(0x113))/0xa)+parseInt(_0x53d3aa(0xfa))/0xb;if(_0x168a7d===_0x2f6da9)break;else _0x1b211c['push'](_0x1b211c['shift']());}catch(_0x3961ea){_0x1b211c['push'](_0x1b211c['shift']());}}}(_0x461b,0x66ad4));import{mkdir,writeFile}from'fs/promises';import{join,dirname}from'path';import{existsSync}from'fs';import{createRequire}from'module';import _0x49691f from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';function _0x461b(){const _0x28189a=['LsDCW','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','execPath','tBmem','QWAhU','platform','WeBgW','wffCB','plugin','\x1b[0m','770662rDtiEI','local','Chromium\x20install\x20timed\x20out\x20after\x20','device_auth','organizationName','AoZbe','Installation\x20failed\x20with\x20exit\x20code\x20','ranger','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','✓\x20Created\x20~/.ranger/\x20directory','message','QJoAL','27xZUxOK','\x0a❌\x20Profile\x20setup\x20failed:','npx','4382136ztfHxG','resolve','1RTmEdR','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','\x0a⚠\x20Skipping\x20Chromium\x20installation.','✓\x20Created\x20.ranger/.gitignore','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','trackPhaseEnd','aDtFB','✓\x20Already\x20authenticated\x20to\x20','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','--with-deps','FyPxy','executablePath','log','skipped','VMiOb','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','ready','✓\x20Skipping\x20authentication\x20(--skip-auth)','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','GITHUB_ENV','IJcVl','24yObsiG',');\x20retrying...','2715950gKsxDy','skills','method','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','scope','✓\x20Playwright\x20Chromium\x20browser\x20found','757155RCVZxm','zGDCp','\x20\x20\x20\x20RANGER_CHROMIUM_INSTALL_TIMEOUT_MS=1800000\x20ranger\x20setup\x20deps','HvzrO','error','kill','\x20\x20Chromium\x20install\x20attempt\x20','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','...','1.56.1','inherit','skipChromium','existing_token','force','auth','playwright@','user','profile','2325384udOKaD','reDiq','yFgbY','FkYfS','\x0a\x20\x20Chromium\x20install\x20timed\x20out\x20(limit\x20','install','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','2224JxAUWk','playwright/package.json','tnene','win32','Validating\x20API\x20token...','KVahn','stdout','5257vdwoXh','EojHI','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','success','allowInsecureLocalhost','\x0aIn\x20Claude\x20Code,\x20run\x20','status','chromium','dQZqn','close','✓\x20Stored\x20credentials\x20locally','pqdKN','MPMxI','You\x20can\x20install\x20it\x20manually\x20by\x20running:','confirm','round','opencode','✓\x20Authenticated\x20to\x20','653760EpiynD','env','yTlIK','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','The\x20required\x20version\x20(','skipAuth','✓\x20Exported\x20credentials\x20for\x20CI','PZqmr','stdin','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','trackPhaseStart','bCJPF','FICKe','ranger\x20profile\x20add\x20<name>','url'];_0x461b=function(){return _0x28189a;};return _0x461b();}import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';import{spawn}from'child_process';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x410d38(0x122);const bold=_0x3d896d=>'\x1b[1m'+_0x3d896d+_0x410d38(0xea);export function getPlaywrightVersion(){const _0xb04e50=_0x410d38,_0xfb25f6={'ySaQy':_0xb04e50(0x133),'AoZbe':function(_0x4d778e,_0x315dca){return _0x4d778e(_0x315dca);}};try{const _0x56842b=require[_0xb04e50(0xfb)](_0xfb25f6['ySaQy']),_0x30dff4=_0xfb25f6[_0xb04e50(0xf0)](require,_0x56842b);return _0x30dff4['version'];}catch{return null;}}function resolveBundledPlaywrightCli(){const _0x315987=_0x410d38,_0x25bb81={'FICKe':function(_0x50590e,_0x5b8d1b){return _0x50590e(_0x5b8d1b);},'FkYfS':'cli.js'};try{const _0x4ab1f2=join(_0x25bb81[_0x315987(0x157)](dirname,require['resolve']('playwright/package.json')),_0x25bb81[_0x315987(0x12e)]);return existsSync(_0x4ab1f2)?_0x4ab1f2:null;}catch{return null;}}const CHROMIUM_INSTALL_TIMEOUT_MS=Number(process[_0x410d38(0x14c)]['RANGER_CHROMIUM_INSTALL_TIMEOUT_MS'])||0x927c0;function _0xcacf(_0x551636,_0x1e823e){_0x551636=_0x551636-0xe0;const _0x461b50=_0x461b();let _0xcacf1b=_0x461b50[_0x551636];return _0xcacf1b;}class ChromiumInstallTimeoutError extends Error{}export async function installChromiumBinary(_0x24127,_0x32720b=![]){const _0x5db707=_0x410d38,_0x592b1c={'WWHKO':'chromium','tnene':function(_0x5ad53c,_0x3899c8){return _0x5ad53c instanceof _0x3899c8;},'VsUrL':function(_0x2f0896,_0x3c77b7){return _0x2f0896/_0x3c77b7;},'iRCqg':function(_0x30e119,_0x40df24){return _0x30e119(_0x40df24);}},_0x3137c4=resolveBundledPlaywrightCli(),_0x1be463=_0x3137c4?process[_0x5db707(0xe3)]:_0x5db707(0xf9),_0x8419c3=[_0x3137c4??_0x5db707(0x128)+_0x24127,_0x5db707(0x130),..._0x32720b?[_0x5db707(0x105)]:[],_0x592b1c['WWHKO']];let _0x4d6442=![];for(let _0x25dc77=0x1;;_0x25dc77++){try{await runChromiumInstall(_0x1be463,_0x8419c3);return;}catch(_0x3ee9bc){_0x592b1c[_0x5db707(0x134)](_0x3ee9bc,ChromiumInstallTimeoutError)&&!_0x4d6442&&(_0x4d6442=!![],console['log'](_0x5db707(0x12f)+Math['round'](_0x592b1c['VsUrL'](CHROMIUM_INSTALL_TIMEOUT_MS,0x3e8))+'s).\x20On\x20a\x20slow\x20or\x20proxied\x20connection,\x20raise\x20the\x20limit\x20and\x20retry,\x20e.g.:\x0a'+_0x5db707(0x11b)));if(_0x25dc77>=0x3)throw _0x3ee9bc;const _0x502efe=_0x3ee9bc instanceof Error?_0x3ee9bc['message']:_0x592b1c['iRCqg'](String,_0x3ee9bc);console[_0x5db707(0x108)](_0x5db707(0x11f)+_0x25dc77+'\x20failed\x20('+_0x502efe+_0x5db707(0x112));}}}function runChromiumInstall(_0x4c3883,_0x413ca6){const _0x5747d2=_0x410d38,_0xc290f3={'ksmCn':function(_0x5aacb0,_0x3ebd5d){return _0x5aacb0(_0x3ebd5d);},'OTCDs':function(_0x49eb43,_0x5541a0){return _0x49eb43===_0x5541a0;},'zGDCp':function(_0x3b328a){return _0x3b328a();},'yTlIK':function(_0x20ef01,_0x25ff93,_0x39b0df,_0x3e96d7){return _0x20ef01(_0x25ff93,_0x39b0df,_0x3e96d7);},'nASSc':'ignore','wffCB':_0x5747d2(0x135),'EojHI':_0x5747d2(0x11d)};return new Promise((_0x4fba01,_0x17c563)=>{const _0x556191=_0x5747d2,_0x3e07df=_0xc290f3[_0x556191(0x14d)](spawn,_0x4c3883,_0x413ca6,{'stdio':[_0xc290f3['nASSc'],'inherit',_0x556191(0x123)],'shell':process[_0x556191(0xe6)]===_0xc290f3[_0x556191(0xe8)]}),_0xff45ea=setTimeout(()=>{const _0x22f839=_0x556191;_0x3e07df[_0x22f839(0x11e)]('SIGKILL'),_0xc290f3['ksmCn'](_0x17c563,new ChromiumInstallTimeoutError(_0x22f839(0xed)+Math[_0x22f839(0x148)](CHROMIUM_INSTALL_TIMEOUT_MS/0x3e8)+'s'));},CHROMIUM_INSTALL_TIMEOUT_MS);_0x3e07df['on'](_0x556191(0x142),_0x43bb27=>{const _0x169f52=_0x556191;_0xc290f3['ksmCn'](clearTimeout,_0xff45ea);if(_0xc290f3['OTCDs'](_0x43bb27,0x0))_0xc290f3[_0x169f52(0x11a)](_0x4fba01);else _0x17c563(new Error(_0x169f52(0xf1)+_0x43bb27));}),_0x3e07df['on'](_0xc290f3[_0x556191(0x13a)],_0x25f94e=>{clearTimeout(_0xff45ea),_0x17c563(_0x25f94e);});});}export async function authenticate(_0x4a0267){const _0x399ed3=_0x410d38,_0x472b5f={'KVahn':function(_0x4abdfe){return _0x4abdfe();},'MPMxI':function(_0x28defb,_0x354f8b){return _0x28defb instanceof _0x354f8b;},'Xkjwk':_0x399ed3(0xee),'ASwzH':_0x399ed3(0x136),'WeBgW':_0x399ed3(0x151),'JxYOi':_0x399ed3(0x143)};if(!_0x4a0267){const _0x2ced03=await _0x472b5f[_0x399ed3(0x137)](getToken);if(_0x2ced03){const _0x51734c=await getCurrentUser(_0x2ced03);if(_0x51734c[_0x399ed3(0x13c)])return console['log'](_0x399ed3(0x103)+_0x51734c[_0x399ed3(0x129)][_0x399ed3(0xef)]),{'token':_0x2ced03,'method':_0x399ed3(0x125)};}try{_0x4a0267=await runDeviceAuthFlow();}catch(_0x2bc3fd){throw new Error('Authentication\x20failed:\x20'+(_0x472b5f[_0x399ed3(0x145)](_0x2bc3fd,Error)?_0x2bc3fd[_0x399ed3(0xf5)]:_0x2bc3fd));}const _0xb03d70=await getCurrentUser(_0x4a0267);if(!_0xb03d70[_0x399ed3(0x13c)])throw new Error(_0x399ed3(0xe2)+_0xb03d70[_0x399ed3(0x11d)]);return console['log'](_0x399ed3(0x14a)+_0xb03d70['user']['organizationName']),{'token':_0x4a0267,'method':_0x472b5f['Xkjwk']};}console[_0x399ed3(0x108)](_0x472b5f['ASwzH']);const _0x5c5d3e=await getCurrentUser(_0x4a0267);if(!_0x5c5d3e[_0x399ed3(0x13c)]){if(_0x5c5d3e[_0x399ed3(0x13f)])throw new Error('Authentication\x20failed:\x20'+_0x5c5d3e['error']+_0x399ed3(0x100));else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x5c5d3e[_0x399ed3(0x11d)]+_0x399ed3(0x154));}return console['log'](_0x399ed3(0x14a)+_0x5c5d3e['user'][_0x399ed3(0xef)]),await storeToken(_0x4a0267),console['log'](process['env'][_0x399ed3(0x10f)]?_0x472b5f[_0x399ed3(0xe7)]:_0x472b5f['JxYOi']),{'token':_0x4a0267,'method':'provided_token'};}export async function ensureRangerDir(_0x5d0a32){const _0x5dbd3c=_0x410d38,_0x1d37f9={'rYuEH':function(_0x234b48){return _0x234b48();},'tBmem':function(_0x28b911,_0x32b080){return _0x28b911(_0x32b080);},'LsDCW':function(_0x1d8b05,_0x2ce28e,_0x214026){return _0x1d8b05(_0x2ce28e,_0x214026);},'aDtFB':_0x5dbd3c(0xf4),'HIFeb':'✓\x20~/.ranger/\x20directory\x20already\x20exists'};void _0x5d0a32;const _0x10f6c8=_0x1d37f9['rYuEH'](getRangerHomeDir);return!_0x1d37f9[_0x5dbd3c(0xe4)](existsSync,_0x10f6c8)?(await _0x1d37f9[_0x5dbd3c(0xe1)](mkdir,_0x10f6c8,{'recursive':!![]}),console[_0x5dbd3c(0x108)](_0x1d37f9[_0x5dbd3c(0x102)]),{'path':_0x10f6c8,'installed':!![]}):(console[_0x5dbd3c(0x108)](_0x1d37f9['HIFeb']),{'path':_0x10f6c8,'installed':![]});}export async function ensureChromium(_0x3f68d1=![]){const _0x1c9045=_0x410d38,_0x23457a={'QJoAL':function(_0x348436,_0x3d755b){return _0x348436(_0x3d755b);},'QWAhU':'install','ZFFyX':function(_0x30b009,_0x2ebe17,_0x29a4ba){return _0x30b009(_0x2ebe17,_0x29a4ba);},'XIecn':function(_0x519b41,_0x13ec5c){return _0x519b41 instanceof _0x13ec5c;}};let _0x584955=![];try{const _0xec8a12=chromium[_0x1c9045(0x107)]();_0x584955=_0x23457a[_0x1c9045(0xf6)](existsSync,_0xec8a12);}catch{_0x584955=![];}if(_0x584955)return console[_0x1c9045(0x108)](_0x1c9045(0x118)),![];const _0x10fbfa=getPlaywrightVersion(),_0x2a2127=_0x10fbfa??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x1cb238=!_0x10fbfa,_0x401994=process[_0x1c9045(0x153)]['isTTY']&&process[_0x1c9045(0x138)]['isTTY'];let _0x465fe2=!![];if(_0x401994){const {install:_0xc4a9b8}=await _0x49691f['prompt']([{'type':_0x1c9045(0x147),'name':_0x23457a[_0x1c9045(0xe5)],'message':_0x1cb238?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x2a2127+'\x20now?':_0x1c9045(0x14f)+_0x2a2127+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x465fe2=_0xc4a9b8;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x2a2127+(_0x1cb238?'\x20(fallback\x20version)':'')+_0x1c9045(0x121));if(_0x465fe2){console[_0x1c9045(0x108)]('\x0aInstalling\x20Chromium\x20browser...\x0a');try{await _0x23457a['ZFFyX'](installChromiumBinary,_0x2a2127,_0x3f68d1),console[_0x1c9045(0x108)](_0x1c9045(0x104));}catch(_0x22082a){console['error']('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x23457a['XIecn'](_0x22082a,Error)?_0x22082a['message']:_0x22082a),console['log'](_0x1c9045(0x146)),console[_0x1c9045(0x108)]('\x20\x20npx\x20playwright@'+_0x2a2127+'\x20install\x20chromium');}}else console['log'](_0x1c9045(0xfe)),console['log'](_0x1c9045(0x116)),console[_0x1c9045(0x108)]('\x20\x20npx\x20playwright@'+_0x2a2127+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x22bffa){const _0x3b3da6=_0x410d38,_0x24afbc={'ygKww':function(_0x415527,_0x2d1f38,_0x28919f){return _0x415527(_0x2d1f38,_0x28919f);},'HqrJO':'.gitignore','InvSo':function(_0x438a5c,_0x45eeae,_0x276675){return _0x438a5c(_0x45eeae,_0x276675);}},_0x55864e=_0x24afbc['ygKww'](join,_0x22bffa,_0x24afbc['HqrJO']),_0x3db99e='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a';await _0x24afbc['InvSo'](writeFile,_0x55864e,_0x3db99e),console[_0x3b3da6(0x108)](_0x3b3da6(0xff));}export async function ensureLocalEnv(_0x1e9c5c,_0x2cf0a0){const _0x1e1de8=_0x410d38,_0x24ccfa={'Cjqul':function(_0x82d138){return _0x82d138();},'HvzrO':'user','dQZqn':'⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','zKBuQ':function(_0x54141b,_0x1f1a67){return _0x54141b===_0x1f1a67;},'WDrov':'✓\x20Local\x20profile\x20already\x20exists','ukxDK':function(_0x57d7f0,_0x40cc2c,_0x52b798,_0x396700){return _0x57d7f0(_0x40cc2c,_0x52b798,_0x396700);},'NqVjF':_0x1e1de8(0xf8)};if(!_0x24ccfa['Cjqul'](findGitRoot)&&_0x1e9c5c?.['scope']!==_0x24ccfa[_0x1e1de8(0x11c)])return console[_0x1e1de8(0x108)](_0x24ccfa[_0x1e1de8(0x141)]),{'ready':![],'skipped':!![]};const _0x1d9172=_0x24ccfa['zKBuQ'](_0x1e9c5c?.[_0x1e1de8(0x117)],'user')?getRangerHomeDir():undefined;if(findExistingEnv('local',{'locations':['local'],'rangerDir':_0x1d9172}))return console['log'](_0x24ccfa['WDrov']),{'ready':!![],'skipped':![]};try{return await _0x24ccfa['ukxDK'](addEnv,_0x1e1de8(0xec),{'url':_0x1e9c5c?.[_0x1e1de8(0xe0)],'force':_0x1e9c5c?.['force'],'allowInsecureLocalhost':_0x1e9c5c?.['allowInsecureLocalhost'],'scope':_0x1e9c5c?.[_0x1e1de8(0x117)]},_0x2cf0a0),{'ready':!![],'skipped':![]};}catch(_0x1b7868){return console['error'](_0x24ccfa['NqVjF'],_0x1b7868 instanceof Error?_0x1b7868['message']:_0x1b7868),{'ready':![],'skipped':![]};}}export async function start(_0x2674bb,_0x2accad,_0x191b88){const _0x1ebc24=_0x410d38,_0x12eea9={'ELvUp':'\x0a🚀\x20Ranger\x20Setup\x0a','zwMQJ':function(_0x585aba,_0xbcb955){return _0x585aba!==_0xbcb955;},'reDiq':_0x1ebc24(0x129),'pqdKN':function(_0x3ab7a6,_0x4a9043){return _0x3ab7a6+_0x4a9043;},'bCJPF':function(_0x4912ad,_0x2a2393){return _0x4912ad(_0x2a2393);},'VMiOb':function(_0x3b02f2,_0x3c1875){return _0x3b02f2(_0x3c1875);},'sbFDh':function(_0x278a73){return _0x278a73();},'yFgbY':function(_0x37437d,_0x51ad9e){return _0x37437d(_0x51ad9e);},'TxovO':_0x1ebc24(0x10d),'xisCq':'auth','xrtcY':function(_0x55e14b,_0x3e5c8c){return _0x55e14b(_0x3e5c8c);},'IJcVl':_0x1ebc24(0x140),'RaKjN':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','PZqmr':_0x1ebc24(0xe9),'IiUnG':_0x1ebc24(0xf2),'aAvjn':function(_0x35d6b0){return _0x35d6b0();},'FyPxy':_0x1ebc24(0x114),'iKQQR':function(_0x3e1b9e,_0x18d7aa,_0x2b48e2){return _0x3e1b9e(_0x18d7aa,_0x2b48e2);},'PhDsp':_0x1ebc24(0x12a),'eEcto':_0x1ebc24(0x120),'rEphl':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','pnkML':'/ranger:enable','TocbV':function(_0x2c8ecb,_0x3935e4){return _0x2c8ecb+_0x3935e4;}};console['log'](_0x12eea9['ELvUp']);_0x2accad?.['scope']!==undefined&&_0x12eea9['zwMQJ'](_0x2accad['scope'],_0x12eea9['reDiq'])&&(console['error'](_0x12eea9['pqdKN'](_0x12eea9['pqdKN']('ranger\x20setup\x20--scope='+_0x12eea9['bCJPF'](String,_0x2accad[_0x1ebc24(0x117)])+'\x20is\x20no\x20longer\x20supported.\x20',_0x1ebc24(0x10e)),_0x1ebc24(0xfd))),process['exit'](0x1));_0x2accad={..._0x2accad,'scope':_0x1ebc24(0x129)};const _0x537bdd=!_0x12eea9[_0x1ebc24(0x10a)](existsSync,_0x12eea9['sbFDh'](getRangerHomeDir));await _0x12eea9[_0x1ebc24(0x12d)](ensureRangerDir,_0x12eea9[_0x1ebc24(0x12c)]);if(_0x2accad?.['skipAuth'])console['log'](_0x12eea9['TxovO']),_0x191b88?.['trackPhaseEnd'](_0x12eea9['xisCq'],{'isFirstRun':_0x537bdd,'method':_0x1ebc24(0x109)});else{_0x191b88?.[_0x1ebc24(0x155)](_0x12eea9['xisCq']);const _0x1f5e71=await _0x12eea9[_0x1ebc24(0x10a)](authenticate,_0x2674bb);_0x191b88?.[_0x1ebc24(0x101)](_0x1ebc24(0x127),{'isFirstRun':_0x537bdd,'method':_0x1f5e71[_0x1ebc24(0x115)]});}_0x191b88?.['trackPhaseStart'](_0x1ebc24(0x140));_0x2accad?.[_0x1ebc24(0x124)]?console[_0x1ebc24(0x108)]('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await _0x12eea9['xrtcY'](ensureChromium,_0x2accad?.['withDeps']);_0x191b88?.['trackPhaseEnd'](_0x12eea9[_0x1ebc24(0x110)],{'isFirstRun':_0x537bdd,'skipped':!!_0x2accad?.[_0x1ebc24(0x124)]}),console[_0x1ebc24(0x108)](_0x12eea9['RaKjN']);const _0x446c0f=_0x2accad?.[_0x1ebc24(0x117)],_0x2e4cf9=_0x2accad?.['opencode']??![];let _0x1e63c3=null;_0x2e4cf9?(_0x191b88?.[_0x1ebc24(0x155)](_0x12eea9[_0x1ebc24(0x152)]),_0x1e63c3=await ensureOpencodePluginConfig(_0x446c0f),_0x191b88?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x537bdd,'opencode':!![]})):(_0x191b88?.[_0x1ebc24(0x155)](_0x12eea9['PZqmr']),await _0x12eea9[_0x1ebc24(0x10a)](ensureClaudePlugin,_0x446c0f),_0x191b88?.['trackPhaseEnd'](_0x12eea9[_0x1ebc24(0x152)],{'isFirstRun':_0x537bdd}));if(_0x2e4cf9&&_0x1e63c3){_0x191b88?.[_0x1ebc24(0x155)](_0x1ebc24(0x114));try{await installSkill(_0x12eea9['IiUnG'],{'level':_0x1e63c3['scope'],'cliVersion':_0x12eea9['aAvjn'](getCurrentVersion),'platform':_0x1ebc24(0x149)}),_0x191b88?.['trackPhaseEnd'](_0x1ebc24(0x114),{'isFirstRun':_0x537bdd,'opencode':!![]});}catch(_0x55a18f){console['warn']('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x55a18f instanceof Error?_0x55a18f['message']:_0x55a18f),_0x191b88?.[_0x1ebc24(0x101)]('skills',{'isFirstRun':_0x537bdd,'opencode':!![],'failed':!![]});}}else _0x191b88?.[_0x1ebc24(0x155)]('skills'),await _0x12eea9[_0x1ebc24(0x156)](ensureClaudeSkills,_0x446c0f),_0x191b88?.[_0x1ebc24(0x101)](_0x12eea9[_0x1ebc24(0x106)],{'isFirstRun':_0x537bdd});if(_0x2accad?.[_0x1ebc24(0x150)])console['log']('\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a');else{if(_0x2accad?.['url']){_0x191b88?.[_0x1ebc24(0x155)](_0x1ebc24(0x12a));const _0x4198c6=await _0x12eea9['iKQQR'](ensureLocalEnv,{'url':_0x2accad[_0x1ebc24(0xe0)],'force':_0x2accad?.[_0x1ebc24(0x126)],'allowInsecureLocalhost':_0x2accad?.[_0x1ebc24(0x13d)],'scope':_0x1ebc24(0x129)},_0x191b88);_0x191b88?.['trackPhaseEnd'](_0x12eea9['PhDsp'],{'isFirstRun':_0x537bdd,'profileReady':_0x4198c6[_0x1ebc24(0x10c)],'userSkipped':_0x4198c6['skipped']});}else console['log'](_0x12eea9[_0x1ebc24(0x144)](_0x12eea9['pqdKN'](_0x1ebc24(0x14e),'\x0a\x20\x20'+bold(_0x1ebc24(0x158)))+_0x1ebc24(0x131)+_0x1ebc24(0x10b),'\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles'));}if(_0x2e4cf9)console[_0x1ebc24(0x108)](_0x1ebc24(0xf3)),console[_0x1ebc24(0x108)]('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console['log'](_0x12eea9['eEcto']),console[_0x1ebc24(0x108)](_0x12eea9['rEphl']);else{const _0x154d8c=bold(_0x12eea9['pnkML']);console[_0x1ebc24(0x108)](_0x12eea9['TocbV'](_0x1ebc24(0x13e)+_0x154d8c+'\x20and\x20prompt\x20the\x20coding'+_0x1ebc24(0x13b)+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'));}}
|
|
1
|
+
const _0x4678f2=_0x3d09;(function(_0x4030e8,_0x5b9c97){const _0x23429b=_0x3d09,_0x529940=_0x4030e8();while(!![]){try{const _0x4d716d=-parseInt(_0x23429b(0x1e0))/0x1+parseInt(_0x23429b(0x1a6))/0x2*(-parseInt(_0x23429b(0x1c1))/0x3)+-parseInt(_0x23429b(0x192))/0x4+parseInt(_0x23429b(0x1ef))/0x5+parseInt(_0x23429b(0x1bb))/0x6+parseInt(_0x23429b(0x1da))/0x7+parseInt(_0x23429b(0x1d3))/0x8;if(_0x4d716d===_0x5b9c97)break;else _0x529940['push'](_0x529940['shift']());}catch(_0xff16f2){_0x529940['push'](_0x529940['shift']());}}}(_0x2adb,0x6606c));import{mkdir,writeFile}from'fs/promises';import{join,dirname}from'path';import{existsSync}from'fs';import{createRequire}from'module';import _0x2321e3 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';function _0x2adb(){const _0x15936f=['--with-deps','ynlzQ','force','\x20\x20\x20\x20RANGER_CHROMIUM_INSTALL_TIMEOUT_MS=1800000\x20ranger\x20setup\x20deps','scope','opencode','2947896GAoHEj','XRqDY','WAWJK',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','skipAuth','puzkF','\x20install\x20chromium','FSdgZ','cli.js','trackPhaseEnd','FBsWe','dPgNb','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','NQDel','\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a','skills','zBTak','plugin','trackPhaseStart','organizationName','228AxTSyL','provided_token','vHGws','auth','prompt','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','xLzYH','GITHUB_ENV','exit','YneCu','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','ERTHr','WpqSB','✓\x20Skipping\x20authentication\x20(--skip-auth)','lMZZh','ranger\x20profile\x20add\x20<name>','\x1b[0m','SjqAw','.gitignore','install','mSNdP','2535330RInJbr','ranger\x20setup\x20--scope=','tZQlb','stdout','ignore','UVPnO','159vWCqKz','status','SgzlC','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','ydPcO','log','SIGKILL','platform','\x1b[1m','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','Authentication\x20failed:\x20','gRPkS','execPath','\x20\x20Chromium\x20install\x20attempt\x20','UFAEN','eANjA','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','6432336mUutEi','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','xOkxL','local','success','message','method','1809766SJSwhZ','✓\x20Created\x20~/.ranger/\x20directory','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','nCdCt','vgWcg','Chromium\x20install\x20timed\x20out\x20after\x20','739955pBBaDe','JgxzP','hWfdX','error','skipped','\x20\x20npx\x20playwright@','zEJnk','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','s).\x20On\x20a\x20slow\x20or\x20proxied\x20connection,\x20raise\x20the\x20limit\x20and\x20retry,\x20e.g.:\x0a','kFjPs','TjCZl','gMToO','\x20now?','playwright/package.json','...','2078680fBBlWS','url','executablePath','✓\x20Already\x20authenticated\x20to\x20','JhaDw','\x0aInstalling\x20Chromium\x20browser...\x0a','njWKA','kqzuX','\x20is\x20no\x20longer\x20supported.\x20','OFRbG','bzsCk','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','✓\x20Local\x20profile\x20already\x20exists','user','qnqza','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','npx','niYXb','PfBRW','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','RguQE','vOWdu','env'];_0x2adb=function(){return _0x15936f;};return _0x2adb();}import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';function _0x3d09(_0x33527e,_0x3974aa){_0x33527e=_0x33527e-0x189;const _0x2adbe1=_0x2adb();let _0x3d0943=_0x2adbe1[_0x33527e];return _0x3d0943;}import{spawn}from'child_process';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.60.0';const bold=_0x5e00f6=>_0x4678f2(0x1c9)+_0x5e00f6+_0x4678f2(0x1b6);export function getPlaywrightVersion(){const _0x5936c3=_0x4678f2,_0x307e9d={'xOkxL':function(_0x2918b3,_0x4c720f){return _0x2918b3(_0x4c720f);}};try{const _0x11da78=require['resolve'](_0x5936c3(0x1ed)),_0x1df43c=_0x307e9d[_0x5936c3(0x1d5)](require,_0x11da78);return _0x1df43c['version'];}catch{return null;}}function resolveBundledPlaywrightCli(){const _0x31611f=_0x4678f2,_0x546639={'ZFuAJ':function(_0x18b2bd,_0x47575e,_0x3ca62e){return _0x18b2bd(_0x47575e,_0x3ca62e);},'UFAEN':function(_0x47e9af,_0x1fb0ae){return _0x47e9af(_0x1fb0ae);},'CjVsy':_0x31611f(0x19a),'aTRhA':function(_0x2a4b28,_0x4f505f){return _0x2a4b28(_0x4f505f);}};try{const _0x227b41=_0x546639['ZFuAJ'](join,_0x546639[_0x31611f(0x1cf)](dirname,require['resolve']('playwright/package.json')),_0x546639['CjVsy']);return _0x546639['aTRhA'](existsSync,_0x227b41)?_0x227b41:null;}catch{return null;}}const CHROMIUM_INSTALL_TIMEOUT_MS=Number(process['env']['RANGER_CHROMIUM_INSTALL_TIMEOUT_MS'])||0x927c0;class ChromiumInstallTimeoutError extends Error{}export async function installChromiumBinary(_0x5b8b3a,_0x39041c=![]){const _0x23e43a=_0x4678f2,_0x55eb79={'zLaRi':function(_0xc5b782){return _0xc5b782();},'ydPcO':_0x23e43a(0x1ff),'Njtjg':_0x23e43a(0x18c),'SgzlC':function(_0x376ff7,_0x3bc84c,_0x4a8892){return _0x376ff7(_0x3bc84c,_0x4a8892);}},_0x35b316=_0x55eb79['zLaRi'](resolveBundledPlaywrightCli),_0xaf1668=_0x35b316?process[_0x23e43a(0x1cd)]:_0x55eb79[_0x23e43a(0x1c5)],_0x57992f=[_0x35b316??'playwright@'+_0x5b8b3a,_0x23e43a(0x1b9),..._0x39041c?[_0x55eb79['Njtjg']]:[],'chromium'];let _0x235744=![];for(let _0x9ffda2=0x1;;_0x9ffda2++){try{await _0x55eb79[_0x23e43a(0x1c3)](runChromiumInstall,_0xaf1668,_0x57992f);return;}catch(_0x254214){_0x254214 instanceof ChromiumInstallTimeoutError&&!_0x235744&&(_0x235744=!![],console['log']('\x0a\x20\x20Chromium\x20install\x20timed\x20out\x20(limit\x20'+Math['round'](CHROMIUM_INSTALL_TIMEOUT_MS/0x3e8)+_0x23e43a(0x1e8)+_0x23e43a(0x18f)));if(_0x9ffda2>=0x3)throw _0x254214;const _0x52c023=_0x254214 instanceof Error?_0x254214['message']:String(_0x254214);console[_0x23e43a(0x1c6)](_0x23e43a(0x1ce)+_0x9ffda2+'\x20failed\x20('+_0x52c023+');\x20retrying...');}}}function runChromiumInstall(_0xe8861c,_0xc2fa84){const _0x2fd828=_0x4678f2,_0x3c84b8={'ynlzQ':function(_0x5261e4,_0x425ffc){return _0x5261e4===_0x425ffc;},'QDsgP':function(_0x3bc68d,_0x27d963){return _0x3bc68d(_0x27d963);},'kelGQ':function(_0x53b845,_0x4b6026,_0x291565,_0x7c26e){return _0x53b845(_0x4b6026,_0x291565,_0x7c26e);},'kKQpY':_0x2fd828(0x1bf),'xLzYH':function(_0x4812c0,_0xea6158){return _0x4812c0===_0xea6158;},'eANjA':'win32','kqzuX':_0x2fd828(0x1e3)};return new Promise((_0x54be3c,_0x4c4fce)=>{const _0x517921=_0x2fd828,_0xd56ebe={'JgxzP':function(_0x3a2c68,_0xae86d1){return _0x3c84b8['QDsgP'](_0x3a2c68,_0xae86d1);}},_0x426e9b=_0x3c84b8['kelGQ'](spawn,_0xe8861c,_0xc2fa84,{'stdio':[_0x3c84b8['kKQpY'],'inherit','inherit'],'shell':_0x3c84b8[_0x517921(0x1ac)](process[_0x517921(0x1c8)],_0x3c84b8[_0x517921(0x1d0)])}),_0x4789dc=setTimeout(()=>{const _0x4c29ba=_0x517921;_0x426e9b['kill'](_0x4c29ba(0x1c7)),_0xd56ebe[_0x4c29ba(0x1e1)](_0x4c4fce,new ChromiumInstallTimeoutError(_0x4c29ba(0x1df)+Math['round'](CHROMIUM_INSTALL_TIMEOUT_MS/0x3e8)+'s'));},CHROMIUM_INSTALL_TIMEOUT_MS);_0x426e9b['on']('close',_0x4eb181=>{const _0x288e44=_0x517921;clearTimeout(_0x4789dc);if(_0x3c84b8[_0x288e44(0x18d)](_0x4eb181,0x0))_0x54be3c();else _0x4c4fce(new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x4eb181));}),_0x426e9b['on'](_0x3c84b8[_0x517921(0x1f6)],_0x494dc8=>{clearTimeout(_0x4789dc),_0x4c4fce(_0x494dc8);});});}export async function authenticate(_0x3d3be3){const _0x1d6426=_0x4678f2,_0x1d6194={'puzkF':function(_0x2c4ba7){return _0x2c4ba7();},'zEJnk':function(_0x5125b9,_0x480498){return _0x5125b9(_0x480498);},'niYXb':function(_0x11d3fe){return _0x11d3fe();},'hkPaY':function(_0x5e9f28,_0x486579){return _0x5e9f28 instanceof _0x486579;},'tZQlb':function(_0x371d80,_0x3113dc){return _0x371d80(_0x3113dc);},'dBXun':'✓\x20Exported\x20credentials\x20for\x20CI','vHGws':_0x1d6426(0x1a7)};if(!_0x3d3be3){const _0x763e44=await _0x1d6194[_0x1d6426(0x197)](getToken);if(_0x763e44){const _0x250377=await _0x1d6194[_0x1d6426(0x1e6)](getCurrentUser,_0x763e44);if(_0x250377['success'])return console['log'](_0x1d6426(0x1f2)+_0x250377['user'][_0x1d6426(0x1a5)]),{'token':_0x763e44,'method':'existing_token'};}try{_0x3d3be3=await _0x1d6194[_0x1d6426(0x200)](runDeviceAuthFlow);}catch(_0x250e70){throw new Error('Authentication\x20failed:\x20'+(_0x1d6194['hkPaY'](_0x250e70,Error)?_0x250e70['message']:_0x250e70));}const _0x4f86f4=await getCurrentUser(_0x3d3be3);if(!_0x4f86f4[_0x1d6426(0x1d7)])throw new Error(_0x1d6426(0x1d4)+_0x4f86f4['error']);return console[_0x1d6426(0x1c6)]('✓\x20Authenticated\x20to\x20'+_0x4f86f4['user'][_0x1d6426(0x1a5)]),{'token':_0x3d3be3,'method':'device_auth'};}console[_0x1d6426(0x1c6)]('Validating\x20API\x20token...');const _0x5212e1=await _0x1d6194[_0x1d6426(0x1bd)](getCurrentUser,_0x3d3be3);if(!_0x5212e1[_0x1d6426(0x1d7)]){if(_0x5212e1[_0x1d6426(0x1c2)])throw new Error(_0x1d6426(0x1cb)+_0x5212e1['error']+_0x1d6426(0x1ab));else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x5212e1['error']+_0x1d6426(0x1fa));}return console['log']('✓\x20Authenticated\x20to\x20'+_0x5212e1[_0x1d6426(0x1fc)][_0x1d6426(0x1a5)]),await _0x1d6194['tZQlb'](storeToken,_0x3d3be3),console[_0x1d6426(0x1c6)](process[_0x1d6426(0x18b)][_0x1d6426(0x1ad)]?_0x1d6194['dBXun']:'✓\x20Stored\x20credentials\x20locally'),{'token':_0x3d3be3,'method':_0x1d6194[_0x1d6426(0x1a8)]};}export async function ensureRangerDir(_0x3133ba){const _0xfab363=_0x4678f2,_0x2de163={'VvCfA':function(_0x46cf60,_0x24866b){return _0x46cf60(_0x24866b);},'gRPkS':_0xfab363(0x1db)};void _0x3133ba;const _0x75df78=getRangerHomeDir();return!_0x2de163['VvCfA'](existsSync,_0x75df78)?(await mkdir(_0x75df78,{'recursive':!![]}),console[_0xfab363(0x1c6)](_0x2de163[_0xfab363(0x1cc)]),{'path':_0x75df78,'installed':!![]}):(console[_0xfab363(0x1c6)]('✓\x20~/.ranger/\x20directory\x20already\x20exists'),{'path':_0x75df78,'installed':![]});}export async function ensureChromium(_0x3d1f0b=![]){const _0x103d37=_0x4678f2,_0x230b27={'AhuUl':function(_0x2b4d7e,_0x384701){return _0x2b4d7e(_0x384701);},'gMToO':'✓\x20Playwright\x20Chromium\x20browser\x20found','TCkaE':function(_0xc3bea5,_0x3ff4cc){return _0xc3bea5??_0x3ff4cc;},'FBsWe':'confirm','zBTak':'\x20(fallback\x20version)','vgWcg':'\x0a⚠\x20Skipping\x20Chromium\x20installation.'};let _0x23895e=![];try{const _0x522229=chromium[_0x103d37(0x1f1)]();_0x23895e=_0x230b27['AhuUl'](existsSync,_0x522229);}catch{_0x23895e=![];}if(_0x23895e)return console[_0x103d37(0x1c6)](_0x230b27[_0x103d37(0x1eb)]),![];const _0x4b04f2=getPlaywrightVersion(),_0x4c70fc=_0x230b27['TCkaE'](_0x4b04f2,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x4921e5=!_0x4b04f2,_0x469ef3=process['stdin']['isTTY']&&process[_0x103d37(0x1be)]['isTTY'];let _0x621a2d=!![];if(_0x469ef3){const {install:_0x581183}=await _0x2321e3[_0x103d37(0x1aa)]([{'type':_0x230b27[_0x103d37(0x19c)],'name':_0x103d37(0x1b9),'message':_0x4921e5?_0x103d37(0x202)+_0x4c70fc+_0x103d37(0x1ec):'The\x20required\x20version\x20('+_0x4c70fc+_0x103d37(0x195),'default':!![]}]);_0x621a2d=_0x581183;}else console['log'](_0x103d37(0x1d2)+_0x4c70fc+(_0x4921e5?_0x230b27[_0x103d37(0x1a2)]:'')+_0x103d37(0x1ee));if(_0x621a2d){console['log'](_0x103d37(0x1f4));try{await installChromiumBinary(_0x4c70fc,_0x3d1f0b),console['log']('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0x538fac){console['error']('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x538fac instanceof Error?_0x538fac['message']:_0x538fac),console['log']('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console[_0x103d37(0x1c6)](_0x103d37(0x1e5)+_0x4c70fc+'\x20install\x20chromium');}}else console[_0x103d37(0x1c6)](_0x230b27[_0x103d37(0x1de)]),console[_0x103d37(0x1c6)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console[_0x103d37(0x1c6)]('\x20\x20npx\x20playwright@'+_0x4c70fc+_0x103d37(0x198));return!![];}export async function writeRangerGitignore(_0x2ed1e1){const _0x11d107=_0x4678f2,_0x31c544={'UVPnO':function(_0x129ab1,_0x31a077,_0x5d2e18){return _0x129ab1(_0x31a077,_0x5d2e18);},'ZRmfn':function(_0x1f00cc,_0x574771,_0x3b500b){return _0x1f00cc(_0x574771,_0x3b500b);}},_0x3c0888=_0x31c544[_0x11d107(0x1c0)](join,_0x2ed1e1,_0x11d107(0x1b8)),_0x4bf712=_0x11d107(0x1a0);await _0x31c544['ZRmfn'](writeFile,_0x3c0888,_0x4bf712),console['log']('✓\x20Created\x20.ranger/.gitignore');}export async function ensureLocalEnv(_0x1fbbc1,_0x3a5f79){const _0x2b1040=_0x4678f2,_0x3b8f93={'TjCZl':function(_0x57c944,_0x11ffa3){return _0x57c944!==_0x11ffa3;},'vOWdu':_0x2b1040(0x1fc),'qnqza':function(_0x34a90e){return _0x34a90e();},'nCdCt':'local','WAWJK':function(_0x44fcd8,_0x1b8ade,_0x5756cb,_0x2cf4f6){return _0x44fcd8(_0x1b8ade,_0x5756cb,_0x2cf4f6);},'rIPII':function(_0x2f83ca,_0x41fe71){return _0x2f83ca instanceof _0x41fe71;}};if(!findGitRoot()&&_0x3b8f93[_0x2b1040(0x1ea)](_0x1fbbc1?.[_0x2b1040(0x190)],_0x3b8f93['vOWdu']))return console[_0x2b1040(0x1c6)](_0x2b1040(0x1c4)),{'ready':![],'skipped':!![]};const _0x5ce4be=_0x1fbbc1?.[_0x2b1040(0x190)]===_0x3b8f93[_0x2b1040(0x18a)]?_0x3b8f93[_0x2b1040(0x1fd)](getRangerHomeDir):undefined;if(findExistingEnv(_0x3b8f93['nCdCt'],{'locations':[_0x3b8f93[_0x2b1040(0x1dd)]],'rangerDir':_0x5ce4be}))return console['log'](_0x2b1040(0x1fb)),{'ready':!![],'skipped':![]};try{return await _0x3b8f93[_0x2b1040(0x194)](addEnv,_0x2b1040(0x1d6),{'url':_0x1fbbc1?.[_0x2b1040(0x1f0)],'force':_0x1fbbc1?.['force'],'allowInsecureLocalhost':_0x1fbbc1?.['allowInsecureLocalhost'],'scope':_0x1fbbc1?.[_0x2b1040(0x190)]},_0x3a5f79),{'ready':!![],'skipped':![]};}catch(_0x3f52d8){return console[_0x2b1040(0x1e3)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x3b8f93['rIPII'](_0x3f52d8,Error)?_0x3f52d8[_0x2b1040(0x1d8)]:_0x3f52d8),{'ready':![],'skipped':![]};}}export async function start(_0xb93d2c,_0x4d1975,_0x347d7e){const _0x24b398=_0x4678f2,_0x1ff1d0={'lMZZh':'\x0a🚀\x20Ranger\x20Setup\x0a','kFjPs':_0x24b398(0x1fc),'mSNdP':function(_0x28f48d,_0x14ef66){return _0x28f48d+_0x14ef66;},'bzsCk':function(_0x4bf8ad,_0x468c99){return _0x4bf8ad(_0x468c99);},'upQEl':function(_0x11f008){return _0x11f008();},'XRqDY':function(_0x40ea72,_0x2be9c6){return _0x40ea72(_0x2be9c6);},'JhaDw':_0x24b398(0x1b3),'ZJTXw':'auth','ERTHr':_0x24b398(0x1e4),'oXClF':'chromium','DKGEx':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','NQDel':function(_0x2f10f7,_0x82e808){return _0x2f10f7(_0x82e808);},'RguQE':'plugin','vbSQi':function(_0x34fc6e,_0x3d9107){return _0x34fc6e(_0x3d9107);},'YneCu':_0x24b398(0x1a1),'awhSx':function(_0x49f1bd,_0x57a6ae,_0x2dd7c3){return _0x49f1bd(_0x57a6ae,_0x2dd7c3);},'PfBRW':'ranger','vbtfJ':function(_0x4d5c16){return _0x4d5c16();},'uLnvS':'\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','OFRbG':function(_0x57afbf,_0x290bba){return _0x57afbf instanceof _0x290bba;},'njWKA':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','SjqAw':'profile','hWfdX':function(_0xf21dae,_0x32a847){return _0xf21dae+_0x32a847;},'WpqSB':function(_0x3da192,_0x5a3ff6){return _0x3da192+_0x5a3ff6;},'thbLN':function(_0x2b8178,_0x9ac4ea){return _0x2b8178+_0x9ac4ea;},'dPgNb':_0x24b398(0x1d1),'MnfBL':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','FSdgZ':function(_0x4e76b7,_0x462d5d){return _0x4e76b7+_0x462d5d;}};console['log'](_0x1ff1d0[_0x24b398(0x1b4)]);_0x4d1975?.[_0x24b398(0x190)]!==undefined&&_0x4d1975['scope']!==_0x1ff1d0['kFjPs']&&(console[_0x24b398(0x1e3)](_0x1ff1d0['mSNdP'](_0x24b398(0x1bc)+_0x1ff1d0[_0x24b398(0x1f9)](String,_0x4d1975['scope'])+_0x24b398(0x1f7)+'Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20',_0x24b398(0x1b0))),process[_0x24b398(0x1ae)](0x1));_0x4d1975={..._0x4d1975,'scope':_0x1ff1d0[_0x24b398(0x1e9)]};const _0xcab9aa=!existsSync(_0x1ff1d0['upQEl'](getRangerHomeDir));await _0x1ff1d0[_0x24b398(0x193)](ensureRangerDir,_0x1ff1d0['kFjPs']);if(_0x4d1975?.['skipAuth'])console['log'](_0x1ff1d0[_0x24b398(0x1f3)]),_0x347d7e?.[_0x24b398(0x19b)](_0x1ff1d0['ZJTXw'],{'isFirstRun':_0xcab9aa,'method':_0x1ff1d0[_0x24b398(0x1b1)]});else{_0x347d7e?.['trackPhaseStart'](_0x24b398(0x1a9));const _0x5192ff=await authenticate(_0xb93d2c);_0x347d7e?.['trackPhaseEnd'](_0x24b398(0x1a9),{'isFirstRun':_0xcab9aa,'method':_0x5192ff[_0x24b398(0x1d9)]});}_0x347d7e?.[_0x24b398(0x1a4)](_0x1ff1d0['oXClF']);_0x4d1975?.['skipChromium']?console['log'](_0x1ff1d0['DKGEx']):await _0x1ff1d0[_0x24b398(0x19f)](ensureChromium,_0x4d1975?.['withDeps']);_0x347d7e?.['trackPhaseEnd']('chromium',{'isFirstRun':_0xcab9aa,'skipped':!!_0x4d1975?.['skipChromium']}),console['log']('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x3a6b44=_0x4d1975?.[_0x24b398(0x190)],_0x272e3f=_0x4d1975?.[_0x24b398(0x191)]??![];let _0x39d3e9=null;_0x272e3f?(_0x347d7e?.[_0x24b398(0x1a4)](_0x1ff1d0[_0x24b398(0x189)]),_0x39d3e9=await _0x1ff1d0[_0x24b398(0x193)](ensureOpencodePluginConfig,_0x3a6b44),_0x347d7e?.['trackPhaseEnd'](_0x1ff1d0['RguQE'],{'isFirstRun':_0xcab9aa,'opencode':!![]})):(_0x347d7e?.['trackPhaseStart'](_0x24b398(0x1a3)),await _0x1ff1d0['vbSQi'](ensureClaudePlugin,_0x3a6b44),_0x347d7e?.[_0x24b398(0x19b)](_0x24b398(0x1a3),{'isFirstRun':_0xcab9aa}));if(_0x272e3f&&_0x39d3e9){_0x347d7e?.[_0x24b398(0x1a4)](_0x1ff1d0[_0x24b398(0x1af)]);try{await _0x1ff1d0['awhSx'](installSkill,_0x1ff1d0[_0x24b398(0x201)],{'level':_0x39d3e9[_0x24b398(0x190)],'cliVersion':_0x1ff1d0['vbtfJ'](getCurrentVersion),'platform':_0x24b398(0x191)}),_0x347d7e?.[_0x24b398(0x19b)](_0x1ff1d0[_0x24b398(0x1af)],{'isFirstRun':_0xcab9aa,'opencode':!![]});}catch(_0x25eb35){console['warn'](_0x1ff1d0['uLnvS'],_0x1ff1d0[_0x24b398(0x1f8)](_0x25eb35,Error)?_0x25eb35[_0x24b398(0x1d8)]:_0x25eb35),_0x347d7e?.[_0x24b398(0x19b)](_0x1ff1d0['YneCu'],{'isFirstRun':_0xcab9aa,'opencode':!![],'failed':!![]});}}else _0x347d7e?.['trackPhaseStart'](_0x24b398(0x1a1)),await ensureClaudeSkills(_0x3a6b44),_0x347d7e?.[_0x24b398(0x19b)](_0x24b398(0x1a1),{'isFirstRun':_0xcab9aa});if(_0x4d1975?.[_0x24b398(0x196)])console['log'](_0x1ff1d0[_0x24b398(0x1f5)]);else{if(_0x4d1975?.[_0x24b398(0x1f0)]){_0x347d7e?.[_0x24b398(0x1a4)](_0x1ff1d0[_0x24b398(0x1b7)]);const _0x3f782b=await ensureLocalEnv({'url':_0x4d1975['url'],'force':_0x4d1975?.[_0x24b398(0x18e)],'allowInsecureLocalhost':_0x4d1975?.['allowInsecureLocalhost'],'scope':_0x1ff1d0['kFjPs']},_0x347d7e);_0x347d7e?.[_0x24b398(0x19b)](_0x1ff1d0[_0x24b398(0x1b7)],{'isFirstRun':_0xcab9aa,'profileReady':_0x3f782b['ready'],'userSkipped':_0x3f782b['skipped']});}else console[_0x24b398(0x1c6)](_0x1ff1d0[_0x24b398(0x1e2)](_0x1ff1d0['WpqSB'](_0x1ff1d0[_0x24b398(0x1b2)](_0x1ff1d0['thbLN'](_0x24b398(0x1e7),'\x0a\x20\x20'+bold(_0x24b398(0x1b5))),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)'),_0x24b398(0x1dc)),_0x24b398(0x1fe)));}if(_0x272e3f)console['log'](_0x1ff1d0[_0x24b398(0x19d)]),console[_0x24b398(0x1c6)]('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x24b398(0x1c6)](_0x24b398(0x19e)),console[_0x24b398(0x1c6)](_0x1ff1d0['MnfBL']);else{const _0x145736=bold('/ranger:enable');console['log'](_0x1ff1d0[_0x24b398(0x199)](_0x1ff1d0[_0x24b398(0x1ba)]('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x145736+'\x20and\x20prompt\x20the\x20coding',_0x24b398(0x1ca))+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x149bdb=_0x5c6e;function _0x5c6e(_0x223e49,_0x53dc51){_0x223e49=_0x223e49-0x8f;const _0x21a866=_0x21a8();let _0x5c6e6b=_0x21a866[_0x223e49];return _0x5c6e6b;}(function(_0x3874b8,_0x51a564){const _0x2eb12f=_0x5c6e,_0x195aa8=_0x3874b8();while(!![]){try{const _0x35f555=parseInt(_0x2eb12f(0xaa))/0x1+-parseInt(_0x2eb12f(0xa8))/0x2*(parseInt(_0x2eb12f(0xf3))/0x3)+parseInt(_0x2eb12f(0xe0))/0x4+-parseInt(_0x2eb12f(0xa9))/0x5+-parseInt(_0x2eb12f(0xda))/0x6+-parseInt(_0x2eb12f(0x8f))/0x7+parseInt(_0x2eb12f(0xd4))/0x8;if(_0x35f555===_0x51a564)break;else _0x195aa8['push'](_0x195aa8['shift']());}catch(_0x560a8e){_0x195aa8['push'](_0x195aa8['shift']());}}}(_0x21a8,0x61a62));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';function _0x21a8(){const _0x3ae020=['UNnGI','config','Organization:\x20','No\x20profiles\x20configured','WJhOj','KOxNg','2566375RrELaN','FrIok','user','@ranger-testing/opencode-plugin','details','length','Version:\x20','\x20(up\x20to\x20date)','lOEgq','path','MbtVl','ntpaO','kMtah','CNDwF','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','XBGVk','some','name','NTNrr','BLoMy','\x1b[1m','qraFA','No\x20skills\x20installed','\x20(active)','yEyjM','232346YpcpLN','1464490CWLsmc','707002iQDmxR','auth.json','debug','\x20\x20User-level:','LTvJF','settingsPath','disabled','API\x20Token:\x20✗\x20Not\x20found','has','version','\x20profiles\x20configured\x20(','zWtGH','trim','memCI','auth.json.enc','\x0a---\x20Profiles\x20---','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','includes','utf-8','ycGUE','ranger@trailhead','\x1b[0m','success','\x20local','NvUjP','API\x20Environment:\x20','\x0a---\x20OpenCode\x20Plugin\x20---','VIwpd','\x20plugin(s)\x20configured','\x20\x20Active:\x20','THIKK','\x20\x20Run:\x20ranger\x20setup\x20--opencode','encrypted','baPtl','jBbDx','stderr','Root:\x20','no\x20session','DykmP','YJpbw','\x20[local]','\x20\x20\x20\x20Auth:\x20','6892712bPSYmj','pAbmj','EpXyY','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','string','cwd','2687922qcLbad','jdZqF','displayName','TXSvw','push','gtmzN','1149632DZGRtd','VjPmg','\x20\x20Not\x20configured','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','BnrEt','aJSTe','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','hasPlaintextAuth','map','toString','\x20cloud','not_installed','kvtBy','log','\x20\x20Run:\x20ranger\x20setup\x20[token]','\x20[cloud]','unknown','quoaQ','9OLbwwZ'];_0x21a8=function(){return _0x3ae020;};return _0x21a8();}import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x564bed=>_0x149bdb(0xa3)+_0x564bed+_0x149bdb(0xbf),link=(_0x290f5a,_0x2a6fab)=>'\x1b]8;;file://'+_0x290f5a+'\x07'+(_0x2a6fab||_0x290f5a)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x1f4e0f=_0x149bdb,_0x21573b={'baPtl':_0x1f4e0f(0xd8),'PwJfB':'not_installed','pAbmj':'configured','lhiZj':function(_0x11645e,_0x157037){return _0x11645e(_0x157037);},'jBbDx':_0x1f4e0f(0xac),'JAEdk':'ignore','CNDwF':'pipe','DykmP':'data'};return new Promise(_0x242595=>{const _0x2706a2=_0x1f4e0f,_0x3251b4={'NYsio':function(_0x30f217,_0x234163){return _0x30f217(_0x234163);},'LTvJF':_0x2706a2(0xec)},_0x27b571=spawn('opencode',[_0x21573b[_0x2706a2(0xcc)],_0x2706a2(0xf5)],{'stdio':[_0x21573b['JAEdk'],_0x21573b[_0x2706a2(0x9c)],'pipe']});let _0x35a1fb='';_0x27b571['stdout']?.['on'](_0x21573b[_0x2706a2(0xd0)],_0x32fdf9=>{_0x35a1fb+=_0x32fdf9['toString']();}),_0x27b571[_0x2706a2(0xcd)]?.['on'](_0x21573b[_0x2706a2(0xd0)],_0x28fc50=>{const _0x413d7a=_0x2706a2;_0x35a1fb+=_0x28fc50[_0x413d7a(0xea)]();}),_0x27b571['on']('error',()=>{const _0x21e64c=_0x2706a2;_0x3251b4['NYsio'](_0x242595,{'status':_0x3251b4[_0x21e64c(0xae)]});}),_0x27b571['on']('close',_0x562e75=>{const _0x4f4016=_0x2706a2,_0x175194={'qraFA':_0x21573b[_0x4f4016(0xcb)],'MHGhF':'opencode-plugin'};if(_0x562e75!==0x0){_0x242595({'status':_0x21573b['PwJfB']});return;}const _0x25afab=_0x35a1fb[_0x4f4016(0xb6)]();let _0x4a8bd4=null;if(_0x25afab)try{_0x4a8bd4=JSON['parse'](_0x25afab);}catch{const _0x2579e3=_0x25afab['match'](/\{[\s\S]*\}$/);if(_0x2579e3)try{_0x4a8bd4=JSON['parse'](_0x2579e3[0x0]);}catch{_0x4a8bd4=null;}}const _0x36a6c8=Array['isArray'](_0x4a8bd4?.['plugin'])?_0x4a8bd4?.['plugin']:[],_0x244100=_0x36a6c8[_0x4f4016(0x9f)](_0x2c5e22=>{const _0x2e7613=_0x4f4016;if(typeof _0x2c5e22!==_0x175194[_0x2e7613(0xa4)])return![];return _0x2c5e22['includes']('@ranger-testing/opencode-plugin')||_0x2c5e22['includes'](_0x175194['MHGhF']);});if(_0x244100){_0x242595({'status':_0x21573b[_0x4f4016(0xd5)],'details':_0x36a6c8[_0x4f4016(0x94)]>0x0?_0x36a6c8[_0x4f4016(0x94)]+_0x4f4016(0xc6):undefined});return;}if(_0x36a6c8[_0x4f4016(0x94)]>0x0){_0x21573b['lhiZj'](_0x242595,{'status':'not_configured','details':_0x36a6c8['length']+_0x4f4016(0xc6)});return;}_0x242595({'status':'not_configured'});});});}async function getSkillsFromDir(_0x2712a3,_0x3575de){const _0x160b80=_0x149bdb,_0x4ae51a={'MbtVl':function(_0x448f70,_0x39d5f7,_0x1d9d04,_0x5d37ee){return _0x448f70(_0x39d5f7,_0x1d9d04,_0x5d37ee);},'BLoMy':'SKILL.md','tSxbO':function(_0x74afd2,_0xd0efdf,_0x53ea15){return _0x74afd2(_0xd0efdf,_0x53ea15);}};if(!existsSync(_0x2712a3))return[];const _0x2b7e6c=[];try{const _0x279100=await readdir(_0x2712a3,{'withFileTypes':!![]});for(const _0x1f92d1 of _0x279100){if(_0x1f92d1['isDirectory']()){const _0x44273b=_0x4ae51a[_0x160b80(0x99)](join,_0x2712a3,_0x1f92d1['name'],_0x4ae51a[_0x160b80(0xa2)]);if(existsSync(_0x44273b)){let _0x26decd=_0x1f92d1['name'];try{const _0x2c3d54=await _0x4ae51a['tSxbO'](readFile,_0x44273b,_0x160b80(0xbc)),_0x448d02=_0x2c3d54['match'](/name:\s*(.+)/);_0x448d02&&(_0x26decd=_0x448d02[0x1][_0x160b80(0xb6)]());}catch{}_0x2b7e6c['push']({'name':_0x1f92d1['name'],'displayName':_0x26decd,'path':_0x44273b,'level':_0x3575de});}}}}catch{return[];}return _0x2b7e6c;}async function getInstalledSkills(){const _0x5d7e20=_0x149bdb,_0x3591fb={'NTNrr':function(_0x50f1ad,_0x4badba,_0xc9d644){return _0x50f1ad(_0x4badba,_0xc9d644);}},[_0x434781,_0x546d56]=await Promise['all']([_0x3591fb[_0x5d7e20(0xa1)](getSkillsFromDir,getProjectSkillsDir(),'project'),getSkillsFromDir(getUserSkillsDir(),_0x5d7e20(0x91))]);return{'project':_0x434781,'user':_0x546d56};}async function getEnvironments(){const _0x36510f=_0x149bdb,_0x26fb06={'UNnGI':function(_0x4b521f,_0x2b8c28){return _0x4b521f(_0x2b8c28);},'jdZqF':function(_0x15a67a,_0x4e9d96,_0x4959af){return _0x15a67a(_0x4e9d96,_0x4959af);},'zqsse':'settings.json','MKbWt':_0x36510f(0xab),'YJpbw':_0x36510f(0xb8),'BnrEt':'(not\x20found)','THIKK':function(_0x411bfe,_0x3f2a3f){return _0x411bfe(_0x3f2a3f);},'ycGUE':function(_0x29c290,_0x36edec){return _0x29c290===_0x36edec;},'qJbjP':function(_0x399805){return _0x399805();},'aJSTe':function(_0x334f9c,_0x81f42b){return _0x334f9c(_0x81f42b);}},{envNames:_0x556373,activeEnv:_0x55332b}=await getEnvNames(),_0x546440=_0x26fb06['qJbjP'](getRangerDir);if(!_0x26fb06[_0x36510f(0xe6)](existsSync,_0x546440))return{'envs':[],'activeEnv':null};const _0x277890=_0x556373[_0x36510f(0xe9)](_0x5bfd3b=>{const _0x14b5dc=_0x36510f,_0x5466be=_0x26fb06[_0x14b5dc(0xf4)](getEnvDir,_0x5bfd3b),_0x4cde61=_0x26fb06[_0x14b5dc(0xdb)](join,_0x5466be,_0x26fb06['zqsse']),_0x43707=_0x26fb06[_0x14b5dc(0xdb)](join,_0x5466be,_0x26fb06['MKbWt']),_0x52d3a5=_0x26fb06[_0x14b5dc(0xdb)](join,_0x5466be,_0x26fb06[_0x14b5dc(0xd1)]);return{'name':_0x5bfd3b,'settingsPath':_0x26fb06['UNnGI'](existsSync,_0x4cde61)?_0x4cde61:_0x26fb06[_0x14b5dc(0xe5)],'hasPlaintextAuth':_0x26fb06[_0x14b5dc(0xf4)](existsSync,_0x43707),'hasEncryptedAuth':_0x26fb06[_0x14b5dc(0xc8)](existsSync,_0x52d3a5),'isActive':_0x26fb06[_0x14b5dc(0xbd)](_0x5bfd3b,_0x55332b)};});return{'envs':_0x277890,'activeEnv':_0x55332b};}export async function status(){const _0x4eebe0=_0x149bdb,_0x594cc8={'zWtGH':function(_0x569086,_0x3d3369,_0x242e0e){return _0x569086(_0x3d3369,_0x242e0e);},'WJhOj':function(_0x23e092,_0x2d16e7){return _0x23e092(_0x2d16e7);},'SEdJK':function(_0x415e8b,_0x4b4748){return _0x415e8b(_0x4b4748);},'NvUjP':function(_0x7bc4ed,_0x5f0b83){return _0x7bc4ed(_0x5f0b83);},'MqzuH':function(_0x5be8cf){return _0x5be8cf();},'VIwpd':_0x4eebe0(0xc4),'gkPsy':function(_0x178a5d,_0x313072){return _0x178a5d===_0x313072;},'UrFNH':_0x4eebe0(0x92),'jLUEb':function(_0x283d9b,_0x144386){return _0x283d9b===_0x144386;},'quoaQ':'not_configured','EpXyY':_0x4eebe0(0xd7),'ntpaO':'\x0a---\x20Claude\x20Code\x20Plugin\x20---','gtmzN':_0x4eebe0(0xbe),'memCI':_0x4eebe0(0xf1),'bpyMG':'\x0a---\x20Skills\x20---','osXkZ':_0x4eebe0(0xa5),'TXSvw':'\x20\x20Project-level:','kMtah':function(_0x286ac6,_0x17757f){return _0x286ac6(_0x17757f);},'QEWxW':_0x4eebe0(0xad),'Sixhn':function(_0x29d1ea){return _0x29d1ea();},'Rqqxi':function(_0x455484,_0x2a8557){return _0x455484+_0x2a8557;},'lOEgq':function(_0xd436fa,_0x12a0b2){return _0xd436fa>_0x12a0b2;},'KOxNg':function(_0x99eeca,_0x5120d6){return _0x99eeca>_0x5120d6;},'kmOyh':function(_0x4ac24f,_0xf9f4b3){return _0x4ac24f(_0xf9f4b3);},'yEyjM':_0x4eebe0(0xcf),'XBGVk':_0x4eebe0(0xca),'icvUO':'plaintext','FrIok':function(_0x37a203,_0x4740ef){return _0x37a203(_0x4740ef);},'kvtBy':'(not\x20found)','VjPmg':function(_0x5a686b,_0x4ff993,_0x28e15b){return _0x5a686b(_0x4ff993,_0x28e15b);}};console['log']('\x0a📊\x20Ranger\x20Status\x0a');const _0x2b4e9d=process[_0x4eebe0(0xd9)](),_0x1e9d96=getRangerDir();if(!existsSync(_0x1e9d96)){console[_0x4eebe0(0xee)](_0x4eebe0(0xce)+_0x594cc8[_0x4eebe0(0xb5)](link,_0x2b4e9d,bold(_0x594cc8[_0x4eebe0(0xf8)](basename,_0x2b4e9d)))),console[_0x4eebe0(0xee)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log'](_0x4eebe0(0xe3));return;}console['log']('Root:\x20'+link(_0x2b4e9d,bold(_0x594cc8['SEdJK'](basename,_0x2b4e9d))));const _0xfbf9b9=getCurrentVersion(),_0x24eca3=getLatestVersion();if(_0x24eca3['version']&&_0x24eca3['version']!==_0xfbf9b9)console['log']('Version:\x20'+_0xfbf9b9+'\x20(latest:\x20'+_0x24eca3['version']+')'),console[_0x4eebe0(0xee)]('\x20\x20Run:\x20ranger\x20update');else _0x24eca3[_0x4eebe0(0xb3)]?console['log'](_0x4eebe0(0x95)+_0xfbf9b9+_0x4eebe0(0x96)):console[_0x4eebe0(0xee)](_0x4eebe0(0x95)+_0xfbf9b9);const _0x2e56a3=await getToken();if(_0x2e56a3){const _0x1952a8=await getCurrentUser(_0x2e56a3);_0x1952a8[_0x4eebe0(0xc0)]?console[_0x4eebe0(0xee)](_0x4eebe0(0xf6)+_0x594cc8[_0x4eebe0(0xc2)](bold,_0x1952a8[_0x4eebe0(0x91)]['organizationName'])):(console[_0x4eebe0(0xee)](_0x4eebe0(0xe7)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x4eebe0(0xee)](_0x4eebe0(0xb1)),console['log'](_0x4eebe0(0xef));process['env']['DEBUG']&&(console['log'](_0x4eebe0(0xc3)+_0x594cc8['MqzuH'](getCurrentEnvironment)),console[_0x4eebe0(0xee)]('API\x20URL:\x20'+_0x594cc8['MqzuH'](getApiBaseUrl)));console[_0x4eebe0(0xee)](_0x594cc8[_0x4eebe0(0xc5)]);const _0x1c7898=await getOpencodePluginStatus();if(_0x594cc8['gkPsy'](_0x1c7898['status'],'configured'))console[_0x4eebe0(0xee)]('\x20\x20'+bold(_0x594cc8['UrFNH'])+':\x20configured'),_0x1c7898['details']&&console[_0x4eebe0(0xee)]('\x20\x20'+_0x1c7898[_0x4eebe0(0x93)]);else _0x594cc8['jLUEb'](_0x1c7898['status'],_0x594cc8[_0x4eebe0(0xf2)])?(console['log'](_0x4eebe0(0xe2)),_0x1c7898[_0x4eebe0(0x93)]&&console[_0x4eebe0(0xee)]('\x20\x20'+_0x1c7898[_0x4eebe0(0x93)]),console[_0x4eebe0(0xee)](_0x4eebe0(0xc9))):console['log'](_0x594cc8[_0x4eebe0(0xd6)]);console[_0x4eebe0(0xee)](_0x594cc8[_0x4eebe0(0x9a)]);const _0x43fa66=await getPluginInfo(_0x594cc8[_0x4eebe0(0xdf)]);if(_0x43fa66){const _0x7d9d1f=_0x43fa66['scope']||_0x594cc8[_0x4eebe0(0xb7)],_0x172243=_0x43fa66['enabled']?'enabled':_0x4eebe0(0xb0);console['log']('\x20\x20'+bold(_0x594cc8['gtmzN'])+':\x20installed\x20('+_0x7d9d1f+',\x20'+_0x172243+')');}else console['log']('\x20\x20Not\x20installed'),console['log'](_0x4eebe0(0xba));console[_0x4eebe0(0xee)](_0x594cc8['bpyMG']);const {project:_0x5ccbeb,user:_0x3064cc}=await _0x594cc8['MqzuH'](getInstalledSkills),_0x127483=_0x5ccbeb['filter'](_0x442ccf=>RANGER_MANAGED_SKILLS['includes'](_0x442ccf[_0x4eebe0(0xa0)])),_0x12cae3=_0x3064cc['filter'](_0x588dea=>RANGER_MANAGED_SKILLS[_0x4eebe0(0xbb)](_0x588dea[_0x4eebe0(0xa0)])),_0x4033e5=_0x127483['length']+_0x12cae3['length'];if(_0x594cc8['gkPsy'](_0x4033e5,0x0))console[_0x4eebe0(0xee)](_0x594cc8['osXkZ']),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x127483[_0x4eebe0(0x94)]>0x0){console[_0x4eebe0(0xee)](_0x594cc8[_0x4eebe0(0xdd)]);for(const _0x4624c2 of _0x127483){console['log']('\x20\x20\x20\x20'+bold(_0x4624c2['displayName'])+':\x20'+link(_0x4624c2['path'],_0x594cc8[_0x4eebe0(0x9b)](basename,_0x4624c2[_0x4eebe0(0x98)])));}}if(_0x12cae3[_0x4eebe0(0x94)]>0x0){console['log'](_0x594cc8['QEWxW']);for(const _0x4a4a16 of _0x12cae3){console[_0x4eebe0(0xee)]('\x20\x20\x20\x20'+_0x594cc8[_0x4eebe0(0xc2)](bold,_0x4a4a16[_0x4eebe0(0xdc)])+':\x20'+link(_0x4a4a16['path'],basename(_0x4a4a16[_0x4eebe0(0x98)])));}}}console['log'](_0x4eebe0(0xb9));const {envs:_0x4acac0,activeEnv:_0x576e7f}=await _0x594cc8['Sixhn'](getEnvironments);let _0x5e091a=[];if(_0x2e56a3)try{_0x5e091a=await listCloudProfiles();}catch{}const _0x43ef3b=_0x594cc8['Rqqxi'](_0x4acac0['length'],_0x5e091a['length']);if(_0x43ef3b===0x0)console[_0x4eebe0(0xee)](_0x4eebe0(0xf7)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0x594cc8['lOEgq'](_0x43ef3b,0x5)){const _0xf0d6f4=[];_0x594cc8[_0x4eebe0(0x97)](_0x5e091a[_0x4eebe0(0x94)],0x0)&&_0xf0d6f4[_0x4eebe0(0xde)](_0x5e091a['length']+_0x4eebe0(0xeb)),_0x594cc8[_0x4eebe0(0xf9)](_0x4acac0['length'],0x0)&&_0xf0d6f4[_0x4eebe0(0xde)](_0x4acac0[_0x4eebe0(0x94)]+_0x4eebe0(0xc1)),console['log'](_0x43ef3b+_0x4eebe0(0xb4)+_0xf0d6f4['join'](',\x20')+')'),_0x576e7f&&console['log'](_0x4eebe0(0xc7)+_0x594cc8['kmOyh'](bold,_0x576e7f)),console[_0x4eebe0(0xee)](_0x4eebe0(0xe4));}else{for(const _0x548deb of _0x5e091a){const _0x289cb5=_0x548deb[_0x4eebe0(0xa0)]===_0x576e7f?_0x4eebe0(0xa6):'';console[_0x4eebe0(0xee)]('\x20\x20'+_0x594cc8['kMtah'](bold,_0x548deb[_0x4eebe0(0xa0)])+_0x4eebe0(0xf0)+_0x289cb5);const _0x44e889=_0x548deb['sessionUpdatedAt']?'cached\x20(updated\x20'+_0x548deb['sessionUpdatedAt']+')':_0x594cc8[_0x4eebe0(0xa7)];console['log']('\x20\x20\x20\x20Session:\x20'+_0x44e889);}const _0x3d284e=new Set(_0x5e091a['map'](_0x57ee8b=>_0x57ee8b[_0x4eebe0(0xa0)]));for(const _0x5c5c93 of _0x4acac0){if(_0x3d284e['has'](_0x5c5c93[_0x4eebe0(0xa0)]))continue;const _0x54dab4=_0x5c5c93['isActive']?'\x20(active)':'',_0x2240a8=_0x5c5c93['hasEncryptedAuth']?_0x594cc8[_0x4eebe0(0x9e)]:_0x5c5c93[_0x4eebe0(0xe8)]?_0x594cc8['icvUO']:'none';console['log']('\x20\x20'+_0x594cc8[_0x4eebe0(0x90)](bold,_0x5c5c93['name'])+_0x4eebe0(0xd2)+_0x54dab4),console['log'](_0x4eebe0(0xd3)+_0x2240a8),_0x5c5c93['settingsPath']!==_0x594cc8[_0x4eebe0(0xed)]&&console['log']('\x20\x20\x20\x20Settings:\x20'+_0x594cc8[_0x4eebe0(0xe1)](link,_0x5c5c93[_0x4eebe0(0xaf)],basename(_0x5c5c93['settingsPath'])));}if(!_0x576e7f){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x289d91=[..._0x5e091a[_0x4eebe0(0xe9)](_0x1da9fb=>_0x1da9fb[_0x4eebe0(0xa0)]),..._0x4acac0['filter'](_0x20d640=>!_0x3d284e[_0x4eebe0(0xb2)](_0x20d640['name']))[_0x4eebe0(0xe9)](_0x4d225c=>_0x4d225c[_0x4eebe0(0xa0)])];console['log'](_0x4eebe0(0x9d)+_0x289d91['join'](',\x20')+')');}}}console[_0x4eebe0(0xee)]('');}
|
|
1
|
+
function _0x4304(_0xcafff2,_0x5d8e1b){_0xcafff2=_0xcafff2-0x132;const _0x129839=_0x1298();let _0x43042d=_0x129839[_0xcafff2];return _0x43042d;}const _0xc41c0=_0x4304;(function(_0x47bce4,_0x2f8146){const _0x335b44=_0x4304,_0xda0d72=_0x47bce4();while(!![]){try{const _0x2170db=parseInt(_0x335b44(0x150))/0x1*(-parseInt(_0x335b44(0x19e))/0x2)+parseInt(_0x335b44(0x176))/0x3*(-parseInt(_0x335b44(0x199))/0x4)+parseInt(_0x335b44(0x1a0))/0x5+-parseInt(_0x335b44(0x140))/0x6+parseInt(_0x335b44(0x182))/0x7+-parseInt(_0x335b44(0x172))/0x8+parseInt(_0x335b44(0x17f))/0x9;if(_0x2170db===_0x2f8146)break;else _0xda0d72['push'](_0xda0d72['shift']());}catch(_0x158dc2){_0xda0d72['push'](_0xda0d72['shift']());}}}(_0x1298,0xef523));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';function _0x1298(){const _0x2c5a7f=['\x1b[1m','fcfYu','status','eqMFM','enabled','4742qpWIGl','plugin','stdout','API\x20Token:\x20✗\x20Not\x20found','plaintext','ztddo',':\x20configured','\x20(active)','brDmH','length','EWFGW','ZFtTY','tmgOI','name','no\x20session','sessionUpdatedAt','oLDVQ','unknown','No\x20profiles\x20configured','API\x20URL:\x20','dxvAm','isActive','\x20\x20\x20\x20Settings:\x20','(not\x20found)','\x20\x20Run:\x20ranger\x20setup\x20[token]','\x20\x20Active:\x20','log','XCGkc','HnSJL','includes','\x20profiles\x20configured\x20(','parse','trim','ignore','12126904ODQKqr','string','path','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','2498280AQSPBn','data','details','auth.json','MuPja','\x20\x20User-level:','hasPlaintextAuth','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','\x20(up\x20to\x20date)','18347166ISUsao','\x20\x20\x20\x20','isDirectory','5227852vjGZBL','WfVxU','\x20\x20Run:\x20ranger\x20skillup','ZMuso','configured','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','some','map','stderr','not_installed','\x20plugin(s)\x20configured','Yulfo','\x20\x20Run:\x20ranger\x20setup\x20--opencode','\x0a---\x20Claude\x20Code\x20Plugin\x20---','rFyzK','cached\x20(updated\x20','toString','RMvhD','version','ilmcd','has','vhYHg','gIYNo','4fCLRJG','kdGlO','OweNw','No\x20skills\x20installed','ESKZn','254tLqVAH','organizationName','7418345NWYtuq','settingsPath','\x20\x20Project-level:','\x20(latest:\x20','success','join','jRzfT','\x20\x20Not\x20configured','settings.json','hCIUy','fmdwY','auth.json.enc','DEBUG','\x20\x20\x20\x20Auth:\x20','Srldm','2027778ZUjUdH','user','SFBCv','match','AQNtJ','pipe','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','push','fOwKF','Root:\x20','opencode-plugin'];_0x1298=function(){return _0x2c5a7f;};return _0x1298();}const bold=_0xe09a8e=>_0xc41c0(0x14b)+_0xe09a8e+'\x1b[0m',link=(_0x4b03ac,_0xabdad8)=>'\x1b]8;;file://'+_0x4b03ac+'\x07'+(_0xabdad8||_0x4b03ac)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x5ebb0e=_0xc41c0,_0x342f08={'akbXI':function(_0xddab06,_0x134a3b){return _0xddab06(_0x134a3b);},'bsToI':_0x5ebb0e(0x186),'ZFtTY':function(_0x271497,_0x126175){return _0x271497(_0x126175);},'FYSDz':function(_0x5478ac,_0x523bab,_0xdada2c,_0x3e957c){return _0x5478ac(_0x523bab,_0xdada2c,_0x3e957c);},'pkmaI':'debug','hCIUy':'pipe','ClSiG':_0x5ebb0e(0x177),'fcfYu':'close'};return new Promise(_0x196082=>{const _0x572e29=_0x5ebb0e,_0x94ffe9={'ESKZn':_0x572e29(0x18b),'EWFGW':function(_0x349fb9,_0x2e732b){return _0x349fb9!==_0x2e732b;},'oLDVQ':function(_0x398765,_0x42f390){return _0x342f08['akbXI'](_0x398765,_0x42f390);},'dxvAm':_0x342f08['bsToI'],'AQNtJ':function(_0x4d1a81,_0x5808a4){return _0x4d1a81>_0x5808a4;},'sExLQ':function(_0x3ac7a3,_0x28d9f4){const _0x42273c=_0x572e29;return _0x342f08[_0x42273c(0x15b)](_0x3ac7a3,_0x28d9f4);}},_0x569f00=_0x342f08['FYSDz'](spawn,'opencode',[_0x342f08['pkmaI'],'config'],{'stdio':[_0x572e29(0x171),_0x342f08[_0x572e29(0x13a)],_0x572e29(0x145)]});let _0x5d4ed1='';_0x569f00[_0x572e29(0x152)]?.['on'](_0x342f08['ClSiG'],_0x2b5d2d=>{_0x5d4ed1+=_0x2b5d2d['toString']();}),_0x569f00[_0x572e29(0x18a)]?.['on'](_0x572e29(0x177),_0x24a1b1=>{const _0x1790c7=_0x572e29;_0x5d4ed1+=_0x24a1b1[_0x1790c7(0x192)]();}),_0x569f00['on']('error',()=>{const _0x125328=_0x572e29;_0x196082({'status':_0x94ffe9[_0x125328(0x19d)]});}),_0x569f00['on'](_0x342f08[_0x572e29(0x14c)],_0x25404a=>{const _0x35b447=_0x572e29;if(_0x94ffe9[_0x35b447(0x15a)](_0x25404a,0x0)){_0x94ffe9[_0x35b447(0x160)](_0x196082,{'status':_0x94ffe9[_0x35b447(0x19d)]});return;}const _0x30a48d=_0x5d4ed1['trim']();let _0x1f7692=null;if(_0x30a48d)try{_0x1f7692=JSON[_0x35b447(0x16f)](_0x30a48d);}catch{const _0x2fac9a=_0x30a48d['match'](/\{[\s\S]*\}$/);if(_0x2fac9a)try{_0x1f7692=JSON['parse'](_0x2fac9a[0x0]);}catch{_0x1f7692=null;}}const _0x5aff46=Array['isArray'](_0x1f7692?.['plugin'])?_0x1f7692?.[_0x35b447(0x151)]:[],_0xd2de04=_0x5aff46[_0x35b447(0x188)](_0x33bc5c=>{const _0x34d0d5=_0x35b447;if(typeof _0x33bc5c!==_0x34d0d5(0x173))return![];return _0x33bc5c['includes']('@ranger-testing/opencode-plugin')||_0x33bc5c[_0x34d0d5(0x16d)](_0x34d0d5(0x14a));});if(_0xd2de04){_0x196082({'status':_0x94ffe9[_0x35b447(0x164)],'details':_0x5aff46[_0x35b447(0x159)]>0x0?_0x5aff46['length']+_0x35b447(0x18c):undefined});return;}if(_0x94ffe9[_0x35b447(0x144)](_0x5aff46['length'],0x0)){_0x94ffe9['sExLQ'](_0x196082,{'status':'not_configured','details':_0x5aff46[_0x35b447(0x159)]+_0x35b447(0x18c)});return;}_0x196082({'status':'not_configured'});});});}async function getSkillsFromDir(_0x5900a8,_0x49a95e){const _0x1921d6=_0xc41c0,_0x3fb09f={'WTRSy':function(_0x5f540c,_0x4e2e77){return _0x5f540c(_0x4e2e77);},'KOaDu':function(_0x16c538,_0x1c815b,_0xbfa5ce,_0x504344){return _0x16c538(_0x1c815b,_0xbfa5ce,_0x504344);},'VHibt':function(_0x11a47a,_0x13c4f9,_0xbf8be9){return _0x11a47a(_0x13c4f9,_0xbf8be9);},'OweNw':'utf-8'};if(!_0x3fb09f['WTRSy'](existsSync,_0x5900a8))return[];const _0x8443b7=[];try{const _0x1b3b58=await readdir(_0x5900a8,{'withFileTypes':!![]});for(const _0x3dd47d of _0x1b3b58){if(_0x3dd47d[_0x1921d6(0x181)]()){const _0x276a6a=_0x3fb09f['KOaDu'](join,_0x5900a8,_0x3dd47d[_0x1921d6(0x15d)],'SKILL.md');if(existsSync(_0x276a6a)){let _0x201597=_0x3dd47d['name'];try{const _0x83c7c6=await _0x3fb09f['VHibt'](readFile,_0x276a6a,_0x3fb09f[_0x1921d6(0x19b)]),_0x349544=_0x83c7c6[_0x1921d6(0x143)](/name:\s*(.+)/);_0x349544&&(_0x201597=_0x349544[0x1][_0x1921d6(0x170)]());}catch{}_0x8443b7[_0x1921d6(0x147)]({'name':_0x3dd47d[_0x1921d6(0x15d)],'displayName':_0x201597,'path':_0x276a6a,'level':_0x49a95e});}}}}catch{return[];}return _0x8443b7;}async function getInstalledSkills(){const _0x63d103=_0xc41c0,_0x36b5e3={'gIYNo':'project'},[_0x572e8a,_0x5c6fc4]=await Promise['all']([getSkillsFromDir(getProjectSkillsDir(),_0x36b5e3[_0x63d103(0x198)]),getSkillsFromDir(getUserSkillsDir(),_0x63d103(0x141))]);return{'project':_0x572e8a,'user':_0x5c6fc4};}async function getEnvironments(){const _0x243cb7=_0xc41c0,_0x334e30={'lihKW':_0x243cb7(0x139),'ztddo':function(_0x1a0b4b,_0x2d0057,_0x574102){return _0x1a0b4b(_0x2d0057,_0x574102);},'jRzfT':function(_0x5ece43,_0x5606b2){return _0x5ece43(_0x5606b2);},'Srldm':'(not\x20found)','eqMFM':function(_0x9f7fcc,_0x11f3b2){return _0x9f7fcc(_0x11f3b2);}},{envNames:_0x5dfe46,activeEnv:_0x3ccf54}=await getEnvNames(),_0x19b4c3=getRangerDir();if(!_0x334e30[_0x243cb7(0x14e)](existsSync,_0x19b4c3))return{'envs':[],'activeEnv':null};const _0x1660ef=_0x5dfe46['map'](_0x43e6fb=>{const _0x134d7d=_0x243cb7,_0x5f21da=getEnvDir(_0x43e6fb),_0x5ef797=join(_0x5f21da,_0x334e30['lihKW']),_0xff2afc=join(_0x5f21da,_0x134d7d(0x179)),_0x33f650=_0x334e30[_0x134d7d(0x155)](join,_0x5f21da,_0x134d7d(0x13c));return{'name':_0x43e6fb,'settingsPath':_0x334e30[_0x134d7d(0x137)](existsSync,_0x5ef797)?_0x5ef797:_0x334e30[_0x134d7d(0x13f)],'hasPlaintextAuth':existsSync(_0xff2afc),'hasEncryptedAuth':existsSync(_0x33f650),'isActive':_0x43e6fb===_0x3ccf54};});return{'envs':_0x1660ef,'activeEnv':_0x3ccf54};}export async function status(){const _0xd12cb5=_0xc41c0,_0x8646ab={'QrrcI':'\x0a📊\x20Ranger\x20Status\x0a','tmgOI':function(_0x3623e3){return _0x3623e3();},'EFfMh':function(_0x1a99a1,_0x334dad){return _0x1a99a1(_0x334dad);},'PjliJ':function(_0x57fd91,_0x289072){return _0x57fd91(_0x289072);},'Yulfo':function(_0xa2408f){return _0xa2408f();},'rFyzK':function(_0x3583a5){return _0x3583a5();},'fOwKF':function(_0x3b4a19,_0x57a53b){return _0x3b4a19(_0x57a53b);},'UDQHk':function(_0x1db805){return _0x1db805();},'yOlqd':'\x0a---\x20OpenCode\x20Plugin\x20---','XCGkc':function(_0x233ff5,_0xf8cafc){return _0x233ff5(_0xf8cafc);},'brDmH':function(_0x2c3198,_0x26bfcf){return _0x2c3198===_0x26bfcf;},'PSNot':_0xd12cb5(0x138),'ilmcd':_0xd12cb5(0x18e),'kdGlO':_0xd12cb5(0x18f),'MuPja':'ranger@trailhead','jjaTW':_0xd12cb5(0x161),'PtTil':'disabled','fmdwY':function(_0x5af2b5,_0x1415a6){return _0x5af2b5+_0x1415a6;},'MicIz':_0xd12cb5(0x19c),'QZxkX':_0xd12cb5(0x133),'PGwxb':function(_0x3b1a5f,_0x39c48e,_0x3f9b8e){return _0x3b1a5f(_0x39c48e,_0x3f9b8e);},'uExJs':function(_0x3ddcc4,_0x30637a){return _0x3ddcc4(_0x30637a);},'ZMuso':function(_0xc67c2b,_0x1e18fe){return _0xc67c2b>_0x1e18fe;},'kywBf':function(_0x138c7e,_0x3be351){return _0x138c7e(_0x3be351);},'IMBvy':function(_0x36bce0){return _0x36bce0();},'SFBCv':function(_0x42e901,_0x2a1e2a){return _0x42e901+_0x2a1e2a;},'RVajP':function(_0xb35f5c,_0x939117){return _0xb35f5c(_0x939117);},'WfVxU':function(_0x5990f8,_0x19be7f){return _0x5990f8===_0x19be7f;},'vhYHg':_0xd12cb5(0x157),'RMvhD':'none','OGccY':function(_0x58638e,_0x309195){return _0x58638e!==_0x309195;},'HnSJL':_0xd12cb5(0x167),'JoPPU':function(_0x48835e,_0x3a0cf5){return _0x48835e(_0x3a0cf5);}};console['log'](_0x8646ab['QrrcI']);const _0x3dc3b2=process['cwd'](),_0x3b6cc1=_0x8646ab[_0xd12cb5(0x15c)](getRangerDir);if(!existsSync(_0x3b6cc1)){console['log'](_0xd12cb5(0x149)+link(_0x3dc3b2,bold(basename(_0x3dc3b2)))),console[_0xd12cb5(0x16a)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0xd12cb5(0x16a)](_0xd12cb5(0x149)+link(_0x3dc3b2,_0x8646ab['EFfMh'](bold,_0x8646ab['PjliJ'](basename,_0x3dc3b2))));const _0x39fcea=_0x8646ab[_0xd12cb5(0x18d)](getCurrentVersion),_0x197c6a=getLatestVersion();if(_0x197c6a[_0xd12cb5(0x194)]&&_0x197c6a['version']!==_0x39fcea)console['log']('Version:\x20'+_0x39fcea+_0xd12cb5(0x134)+_0x197c6a[_0xd12cb5(0x194)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x197c6a[_0xd12cb5(0x194)]?console['log']('Version:\x20'+_0x39fcea+_0xd12cb5(0x17e)):console[_0xd12cb5(0x16a)]('Version:\x20'+_0x39fcea);const _0x1b8433=await _0x8646ab[_0xd12cb5(0x190)](getToken);if(_0x1b8433){const _0x313612=await _0x8646ab[_0xd12cb5(0x148)](getCurrentUser,_0x1b8433);_0x313612[_0xd12cb5(0x135)]?console['log']('Organization:\x20'+bold(_0x313612[_0xd12cb5(0x141)][_0xd12cb5(0x19f)])):(console[_0xd12cb5(0x16a)](_0xd12cb5(0x175)),console[_0xd12cb5(0x16a)](_0xd12cb5(0x168)));}else console['log'](_0xd12cb5(0x153)),console['log'](_0xd12cb5(0x168));process['env'][_0xd12cb5(0x13d)]&&(console[_0xd12cb5(0x16a)]('API\x20Environment:\x20'+_0x8646ab['UDQHk'](getCurrentEnvironment)),console[_0xd12cb5(0x16a)](_0xd12cb5(0x163)+_0x8646ab['rFyzK'](getApiBaseUrl)));console['log'](_0x8646ab['yOlqd']);const _0x1d3671=await _0x8646ab[_0xd12cb5(0x18d)](getOpencodePluginStatus);if(_0x1d3671[_0xd12cb5(0x14d)]===_0xd12cb5(0x186))console[_0xd12cb5(0x16a)]('\x20\x20'+_0x8646ab[_0xd12cb5(0x16b)](bold,'@ranger-testing/opencode-plugin')+_0xd12cb5(0x156)),_0x1d3671['details']&&console[_0xd12cb5(0x16a)]('\x20\x20'+_0x1d3671[_0xd12cb5(0x178)]);else _0x8646ab['brDmH'](_0x1d3671['status'],'not_configured')?(console['log'](_0x8646ab['PSNot']),_0x1d3671['details']&&console[_0xd12cb5(0x16a)]('\x20\x20'+_0x1d3671[_0xd12cb5(0x178)]),console[_0xd12cb5(0x16a)](_0x8646ab[_0xd12cb5(0x195)])):console['log']('\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available');console['log'](_0x8646ab[_0xd12cb5(0x19a)]);const _0x3f7c41=await _0x8646ab['EFfMh'](getPluginInfo,_0x8646ab[_0xd12cb5(0x17a)]);if(_0x3f7c41){const _0x4d5118=_0x3f7c41['scope']||_0x8646ab['jjaTW'],_0x2e9ac9=_0x3f7c41[_0xd12cb5(0x14f)]?_0xd12cb5(0x14f):_0x8646ab['PtTil'];console['log']('\x20\x20'+bold(_0x8646ab['MuPja'])+':\x20installed\x20('+_0x4d5118+',\x20'+_0x2e9ac9+')');}else console[_0xd12cb5(0x16a)]('\x20\x20Not\x20installed'),console[_0xd12cb5(0x16a)](_0xd12cb5(0x187));console['log']('\x0a---\x20Skills\x20---');const {project:_0x5edb1b,user:_0x137866}=await getInstalledSkills(),_0xcd6985=_0x5edb1b['filter'](_0x5f4015=>RANGER_MANAGED_SKILLS['includes'](_0x5f4015[_0xd12cb5(0x15d)])),_0x4bc395=_0x137866['filter'](_0x5918b1=>RANGER_MANAGED_SKILLS[_0xd12cb5(0x16d)](_0x5918b1['name'])),_0x369442=_0x8646ab[_0xd12cb5(0x13b)](_0xcd6985[_0xd12cb5(0x159)],_0x4bc395['length']);if(_0x8646ab['brDmH'](_0x369442,0x0))console[_0xd12cb5(0x16a)](_0x8646ab['MicIz']),console['log'](_0xd12cb5(0x184));else{if(_0xcd6985['length']>0x0){console[_0xd12cb5(0x16a)](_0x8646ab['QZxkX']);for(const _0x3c04e5 of _0xcd6985){console[_0xd12cb5(0x16a)]('\x20\x20\x20\x20'+bold(_0x3c04e5['displayName'])+':\x20'+_0x8646ab['PGwxb'](link,_0x3c04e5[_0xd12cb5(0x174)],_0x8646ab['uExJs'](basename,_0x3c04e5['path'])));}}if(_0x8646ab[_0xd12cb5(0x185)](_0x4bc395[_0xd12cb5(0x159)],0x0)){console[_0xd12cb5(0x16a)](_0xd12cb5(0x17b));for(const _0x4963f0 of _0x4bc395){console['log'](_0xd12cb5(0x180)+_0x8646ab['kywBf'](bold,_0x4963f0['displayName'])+':\x20'+link(_0x4963f0[_0xd12cb5(0x174)],basename(_0x4963f0['path'])));}}}console[_0xd12cb5(0x16a)]('\x0a---\x20Profiles\x20---');const {envs:_0x455c03,activeEnv:_0x41960b}=await _0x8646ab['IMBvy'](getEnvironments);let _0x28e267=[];if(_0x1b8433)try{_0x28e267=await listCloudProfiles();}catch{}const _0xece26b=_0x8646ab[_0xd12cb5(0x142)](_0x455c03[_0xd12cb5(0x159)],_0x28e267[_0xd12cb5(0x159)]);if(_0x8646ab[_0xd12cb5(0x158)](_0xece26b,0x0))console[_0xd12cb5(0x16a)](_0xd12cb5(0x162)),console[_0xd12cb5(0x16a)](_0xd12cb5(0x17d));else{if(_0xece26b>0x5){const _0x2cc6cd=[];_0x8646ab[_0xd12cb5(0x185)](_0x28e267['length'],0x0)&&_0x2cc6cd['push'](_0x28e267['length']+'\x20cloud'),_0x8646ab[_0xd12cb5(0x185)](_0x455c03[_0xd12cb5(0x159)],0x0)&&_0x2cc6cd[_0xd12cb5(0x147)](_0x455c03[_0xd12cb5(0x159)]+'\x20local'),console['log'](_0xece26b+_0xd12cb5(0x16e)+_0x2cc6cd[_0xd12cb5(0x136)](',\x20')+')'),_0x41960b&&console['log'](_0xd12cb5(0x169)+_0x8646ab['RVajP'](bold,_0x41960b)),console[_0xd12cb5(0x16a)]('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0x43de5a of _0x28e267){const _0x20037e=_0x8646ab[_0xd12cb5(0x183)](_0x43de5a[_0xd12cb5(0x15d)],_0x41960b)?_0x8646ab[_0xd12cb5(0x197)]:'';console['log']('\x20\x20'+bold(_0x43de5a[_0xd12cb5(0x15d)])+'\x20[cloud]'+_0x20037e);const _0x17d1bb=_0x43de5a[_0xd12cb5(0x15f)]?_0xd12cb5(0x191)+_0x43de5a['sessionUpdatedAt']+')':_0xd12cb5(0x15e);console[_0xd12cb5(0x16a)]('\x20\x20\x20\x20Session:\x20'+_0x17d1bb);}const _0x7f6a2e=new Set(_0x28e267['map'](_0x26531c=>_0x26531c[_0xd12cb5(0x15d)]));for(const _0x2a27ee of _0x455c03){if(_0x7f6a2e['has'](_0x2a27ee['name']))continue;const _0x4a7bc4=_0x2a27ee[_0xd12cb5(0x165)]?_0xd12cb5(0x157):'',_0x2af7a9=_0x2a27ee['hasEncryptedAuth']?'encrypted':_0x2a27ee[_0xd12cb5(0x17c)]?_0xd12cb5(0x154):_0x8646ab[_0xd12cb5(0x193)];console[_0xd12cb5(0x16a)]('\x20\x20'+bold(_0x2a27ee[_0xd12cb5(0x15d)])+'\x20[local]'+_0x4a7bc4),console['log'](_0xd12cb5(0x13e)+_0x2af7a9),_0x8646ab['OGccY'](_0x2a27ee['settingsPath'],_0x8646ab[_0xd12cb5(0x16c)])&&console[_0xd12cb5(0x16a)](_0xd12cb5(0x166)+link(_0x2a27ee[_0xd12cb5(0x132)],_0x8646ab['JoPPU'](basename,_0x2a27ee['settingsPath'])));}if(!_0x41960b){console[_0xd12cb5(0x16a)]('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x29b18d=[..._0x28e267[_0xd12cb5(0x189)](_0x1aca85=>_0x1aca85['name']),..._0x455c03['filter'](_0x4c986e=>!_0x7f6a2e[_0xd12cb5(0x196)](_0x4c986e[_0xd12cb5(0x15d)]))['map'](_0x3296c5=>_0x3296c5['name'])];console[_0xd12cb5(0x16a)](_0xd12cb5(0x146)+_0x29b18d['join'](',\x20')+')');}}}console[_0xd12cb5(0x16a)]('');}
|