@ranger-testing/ranger-cli 3.1.4 → 3.1.5-alpha.aebd071-49
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 +5 -2
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2ea9eb,_0x543a03){const _0x4cf616=_0x3984,_0x6649c8=_0x2ea9eb();while(!![]){try{const _0x10543d=parseInt(_0x4cf616(0x80))/0x1*(-parseInt(_0x4cf616(0x7f))/0x2)+parseInt(_0x4cf616(0x7a))/0x3*(parseInt(_0x4cf616(0x89))/0x4)+-parseInt(_0x4cf616(0x86))/0x5+parseInt(_0x4cf616(0x85))/0x6*(parseInt(_0x4cf616(0x7c))/0x7)+parseInt(_0x4cf616(0x87))/0x8*(parseInt(_0x4cf616(0x7e))/0x9)+parseInt(_0x4cf616(0x84))/0xa+-parseInt(_0x4cf616(0x8a))/0xb;if(_0x10543d===_0x543a03)break;else _0x6649c8['push'](_0x6649c8['shift']());}catch(_0x315ed5){_0x6649c8['push'](_0x6649c8['shift']());}}}(_0x37aa,0xc533b));function _0x3984(_0x43fe4c,_0x2fec5d){_0x43fe4c=_0x43fe4c-0x7a;const _0x37aa3d=_0x37aa();let _0x398428=_0x37aa3d[_0x43fe4c];return _0x398428;}import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x37aa(){const _0x113704=['18LsVeDN','18GTMnDU','123257rcwGrX','log','\x0a✅\x20API\x20key\x20stored\x20successfully','Login\x20failed:\x20','4778950jEfvtQ','599838UmgTju','406265WsGyjA','2591192xDnNYA','message','84CmjwRS','5414695tSArRD','52161FCyBaX','EemTO','70TzFqWp','BDhAp'];_0x37aa=function(){return _0x113704;};return _0x37aa();}import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x131895=_0x3984,_0x40f39b={'iGIKr':function(_0x5cf634){return _0x5cf634();},'BDhAp':'Re-authenticating\x20via\x20MCP\x20bootstrap...','jtiiW':'Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','EemTO':_0x131895(0x82),'hsoRn':function(_0x5c86f1,_0xc3a3b2){return _0x5c86f1 instanceof _0xc3a3b2;}},_0x43ff91=await _0x40f39b['iGIKr'](getMcpAuthOrigin);if(_0x43ff91){console[_0x131895(0x81)](_0x40f39b[_0x131895(0x7d)]),await mcpBootstrap();return;}if(!isInteractive())throw new Error(_0x40f39b['jtiiW']);try{const _0x59ed0c=await runDeviceAuthFlow(),_0x2e9603=await getCurrentUser(_0x59ed0c);_0x2e9603['success']?console['log']('\x0a✅\x20Logged\x20in\x20to\x20'+_0x2e9603['user']['organizationName']):console['log'](_0x40f39b[_0x131895(0x7b)]);}catch(_0x2b7ab5){throw new Error(_0x131895(0x83)+(_0x40f39b['hsoRn'](_0x2b7ab5,Error)?_0x2b7ab5[_0x131895(0x88)]:_0x2b7ab5));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2462a9=_0x2883;(function(_0x3b9d71,_0x4012f6){const _0x5ba73d=_0x2883,_0x5ed297=_0x3b9d71();while(!![]){try{const _0x35e3df=-parseInt(_0x5ba73d(0x210))/0x1+parseInt(_0x5ba73d(0x228))/0x2*(-parseInt(_0x5ba73d(0x227))/0x3)+-parseInt(_0x5ba73d(0x257))/0x4+parseInt(_0x5ba73d(0x1ed))/0x5+parseInt(_0x5ba73d(0x1e0))/0x6*(-parseInt(_0x5ba73d(0x1d5))/0x7)+parseInt(_0x5ba73d(0x222))/0x8+-parseInt(_0x5ba73d(0x20d))/0x9*(-parseInt(_0x5ba73d(0x1e4))/0xa);if(_0x35e3df===_0x4012f6)break;else _0x5ed297['push'](_0x5ed297['shift']());}catch(_0x21300a){_0x5ed297['push'](_0x5ed297['shift']());}}}(_0x36c9,0xc1ab1));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(),_0x2462a9(0x220),'mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger',_0x2462a9(0x1dc));function _0x2883(_0x4b7d00,_0x11b843){_0x4b7d00=_0x4b7d00-0x1c9;const _0x36c951=_0x36c9();let _0x288381=_0x36c951[_0x4b7d00];return _0x288381;}export async function getMcpAuthOrigin(){const _0x1b04e5=_0x2462a9,_0x40a407={'JVPeD':'utf-8','vzXLq':function(_0xa4e625,_0x1c42cf){return _0xa4e625||_0x1c42cf;}};try{const _0xa1243e=(await readFile(AUTH_ORIGIN_PATH,_0x40a407['JVPeD']))['trim']();return _0x40a407[_0x1b04e5(0x23e)](_0xa1243e,null);}catch{return null;}}export async function mcpBootstrap(){const _0x22c573=_0x2462a9,_0xd797ef={'qRysI':function(_0x1324f5){return _0x1324f5();},'uBqdg':function(_0xdc53a7,_0x40b38c){return _0xdc53a7+_0x40b38c;},'wWpFz':'MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','xcwjd':'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','viRQJ':function(_0x10fd73,_0x302066){return _0x10fd73(_0x302066);}},_0x15fd0b=_0xd797ef['qRysI'](getMcpAuthUrl);currentOrigin=_0x15fd0b;const _0x253040=process[_0x22c573(0x211)][_0x22c573(0x1d3)]??![];console['log'](_0x22c573(0x1d6)+_0x15fd0b+'\x0a');const _0x255bae=await tryUnauthenticated(_0x15fd0b);let _0x31d040=null;if(_0x255bae===_0x22c573(0x22a))_0x31d040='';else{_0x31d040=await loadCachedToken();if(!_0x31d040){if(!_0x253040)throw new Error(_0xd797ef[_0x22c573(0x1f4)](_0xd797ef['wWpFz'],_0xd797ef[_0x22c573(0x1fb)]));_0x31d040=await _0xd797ef['viRQJ'](oauthFlow,_0x15fd0b);}}await callGetCliToken(_0x15fd0b,_0x31d040);}async function tryUnauthenticated(_0x6a065c){const _0x3e5c81=_0x2462a9,_0x1bb4c5={'zjBpx':_0x3e5c81(0x241),'NNucH':_0x3e5c81(0x1f1),'fiJyl':'initialize','zkMuw':_0x3e5c81(0x24d),'sPPDl':_0x3e5c81(0x1f8),'wKnsr':_0x3e5c81(0x22a)},_0x3419a7=await fetch(_0x6a065c,{'method':_0x1bb4c5[_0x3e5c81(0x1d7)],'headers':{'Content-Type':_0x3e5c81(0x1e1),'Accept':_0x1bb4c5[_0x3e5c81(0x23d)]},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':_0x1bb4c5['fiJyl'],'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x1bb4c5[_0x3e5c81(0x1f7)],'version':_0x1bb4c5['sPPDl']}}})});if(_0x3419a7['ok'])return await _0x3419a7[_0x3e5c81(0x1e2)](),_0x1bb4c5['wKnsr'];if(_0x3419a7[_0x3e5c81(0x207)]===0x191)return await _0x3419a7[_0x3e5c81(0x1e2)](),_0x3e5c81(0x242);const _0x4dfeca=await _0x3419a7[_0x3e5c81(0x1e2)]();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x3419a7[_0x3e5c81(0x207)]+':\x20'+_0x4dfeca);}class OAuthTimeoutError extends Error{constructor(_0x4cbc0b){const _0x5ba445=_0x2462a9;super(_0x4cbc0b),this[_0x5ba445(0x219)]=_0x5ba445(0x218);}}async function oauthFlow(_0x217f7c){const _0x4dffa2=_0x2462a9,_0x20d3f5={'oRgGb':function(_0xa88388,_0x1694d0){return _0xa88388(_0x1694d0);},'uyPps':function(_0x135fd0,_0x1ed773){return _0x135fd0 instanceof _0x1ed773;},'GAzgU':function(_0x462f7d){return _0x462f7d();},'DExuU':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'};try{return await _0x20d3f5['oRgGb'](oauthFlowAttempt,_0x217f7c);}catch(_0x53801a){if(_0x20d3f5[_0x4dffa2(0x244)](_0x53801a,OAuthTimeoutError)&&await _0x20d3f5['GAzgU'](loadCachedClient))return console['log'](_0x20d3f5[_0x4dffa2(0x1ee)]),await clearCachedClient(),await oauthFlowAttempt(_0x217f7c);throw _0x53801a;}}async function oauthFlowAttempt(_0x1c29cf){const _0x3904a3=_0x2462a9,_0x5e39b6={'xOcWL':'Discovering\x20authorization\x20server...','PYNcX':function(_0x5ca52e,_0x731df4){return _0x5ca52e(_0x731df4);},'dECTr':function(_0x4c1375){return _0x4c1375();},'iBPRB':_0x3904a3(0x255),'zxseW':'authorization_code','eFRqv':_0x3904a3(0x21e),'IKsyd':'Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','mUamP':function(_0x53d102,_0x3e9e84){return _0x53d102(_0x3e9e84);},'AkYaD':_0x3904a3(0x23b),'OoMpi':'sha256','kOzvG':_0x3904a3(0x1e6),'VYVXm':'response_type','BAbLg':_0x3904a3(0x1e8),'HormO':'code_challenge','zeugw':'S256','MLnJV':'state','LNTbe':'resource','grKjp':'\x0aOpening\x20browser\x20for\x20authentication...','oPLfr':function(_0x17aa1e,_0x1a6922){return _0x17aa1e(_0x1a6922);},'LCEmr':'Exchanging\x20authorization\x20code...','tKHLt':function(_0x23e37b,_0x5eb72b,_0x508f89){return _0x23e37b(_0x5eb72b,_0x508f89);},'VeiQh':'POST','vkEAH':'application/x-www-form-urlencoded','eEBRG':'\x20done','UOtBk':function(_0x5815cf,_0x3254e6,_0x11b2e7,_0x215581){return _0x5815cf(_0x3254e6,_0x11b2e7,_0x215581);}},_0x5cbd0c=_0x1c29cf[_0x3904a3(0x24f)](/\/mcp$/,'');process['stdout'][_0x3904a3(0x1ec)](_0x5e39b6['xOcWL']);const _0x5dc01e=await _0x5e39b6['PYNcX'](fetch,_0x5cbd0c+_0x3904a3(0x247));if(!_0x5dc01e['ok'])throw new Error(_0x3904a3(0x208));const _0x256184=await _0x5dc01e[_0x3904a3(0x20e)](),_0x46363f=_0x256184['authorization_servers']?.[0x0];if(!_0x46363f)throw new Error('No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata');console['log']('\x20'+_0x46363f);const _0x248220=await fetchAuthServerMetadata(_0x46363f);let _0x1113ab,_0x109e07;const _0x26504d=await _0x5e39b6[_0x3904a3(0x226)](loadCachedClient);if(_0x26504d)_0x1113ab=_0x26504d[_0x3904a3(0x1df)],_0x109e07=_0x26504d['clientSecret'];else{if(_0x248220['registration_endpoint']){process['stdout'][_0x3904a3(0x1ec)]('Registering\x20OAuth\x20client...');const _0x352be2=await fetch(_0x248220[_0x3904a3(0x1db)],{'method':_0x3904a3(0x241),'headers':{'Content-Type':_0x3904a3(0x1e1)},'body':JSON['stringify']({'client_name':_0x5e39b6[_0x3904a3(0x1cf)],'redirect_uris':[_0x3904a3(0x20c)+CALLBACK_PORT+'/callback'],'grant_types':[_0x5e39b6['zxseW'],_0x3904a3(0x223)],'response_types':[_0x5e39b6['eFRqv']],'token_endpoint_auth_method':'none'})});if(!_0x352be2['ok']){const _0x5e1173=await _0x352be2['text']();throw new Error('Client\x20registration\x20failed:\x20'+_0x5e1173);}const _0x580d1b=await _0x352be2[_0x3904a3(0x20e)]();_0x1113ab=_0x580d1b['client_id'],_0x109e07=_0x580d1b['client_secret'],await saveCachedClient(_0x1113ab,_0x109e07),console[_0x3904a3(0x1dd)]('\x20done');}else throw new Error(_0x5e39b6['IKsyd']);}const _0x2b8e7c=_0x5e39b6[_0x3904a3(0x209)](randomBytes,0x20)[_0x3904a3(0x22f)](_0x5e39b6['AkYaD']),_0x451956=_0x5e39b6[_0x3904a3(0x209)](createHash,_0x5e39b6['OoMpi'])['update'](_0x2b8e7c)['digest'](_0x5e39b6['AkYaD']),_0x5a51e8=_0x5e39b6[_0x3904a3(0x212)](randomBytes,0x10)['toString'](_0x5e39b6['kOzvG']),_0x186c3b=new URL(_0x248220['authorization_endpoint']);_0x186c3b['searchParams']['set'](_0x5e39b6[_0x3904a3(0x239)],'code'),_0x186c3b[_0x3904a3(0x1fc)]['set'](_0x3904a3(0x1fa),_0x1113ab),_0x186c3b['searchParams']['set'](_0x5e39b6[_0x3904a3(0x1ef)],'http://localhost:'+CALLBACK_PORT+_0x3904a3(0x202)),_0x186c3b[_0x3904a3(0x1fc)]['set'](_0x5e39b6[_0x3904a3(0x1f3)],_0x451956),_0x186c3b[_0x3904a3(0x1fc)][_0x3904a3(0x22c)](_0x3904a3(0x1d0),_0x5e39b6['zeugw']),_0x186c3b['searchParams']['set'](_0x5e39b6[_0x3904a3(0x216)],_0x5a51e8);_0x256184[_0x3904a3(0x23c)]&&_0x186c3b[_0x3904a3(0x1fc)]['set'](_0x5e39b6['LNTbe'],_0x256184[_0x3904a3(0x23c)]);console['log'](_0x5e39b6[_0x3904a3(0x23f)]),console['log'](_0x3904a3(0x1cc)+_0x186c3b['toString']()+'\x0a'),await _0x5e39b6[_0x3904a3(0x221)](openBrowser,_0x186c3b['toString']());const _0x3bf7c9=await _0x5e39b6['mUamP'](waitForCallback,_0x5a51e8);process['stdout']['write'](_0x5e39b6['LCEmr']);const _0x1cd623=new URLSearchParams({'grant_type':'authorization_code','code':_0x3bf7c9,'redirect_uri':_0x3904a3(0x20c)+CALLBACK_PORT+'/callback','client_id':_0x1113ab,'code_verifier':_0x2b8e7c});_0x109e07&&_0x1cd623['set'](_0x3904a3(0x229),_0x109e07);_0x256184['resource']&&_0x1cd623['set'](_0x3904a3(0x23c),_0x256184[_0x3904a3(0x23c)]);const _0x1b0180=await _0x5e39b6[_0x3904a3(0x1ce)](fetch,_0x248220['token_endpoint'],{'method':_0x5e39b6['VeiQh'],'headers':{'Content-Type':_0x5e39b6['vkEAH']},'body':_0x1cd623});if(!_0x1b0180['ok']){const _0x1bdc0a=await _0x1b0180[_0x3904a3(0x1e2)]();throw new Error('Token\x20exchange\x20failed:\x20'+_0x1bdc0a);}const _0x4e00ff=await _0x1b0180[_0x3904a3(0x20e)]();return console['log'](_0x5e39b6['eEBRG']),await _0x5e39b6['UOtBk'](saveCachedToken,_0x4e00ff[_0x3904a3(0x200)],_0x4e00ff[_0x3904a3(0x223)],_0x4e00ff['expires_in']),_0x4e00ff['access_token'];}async function callGetCliToken(_0x22148b,_0x50e225){const _0x33b489=_0x2462a9,_0x1e3dec={'BQJST':'POST','EhhOJ':'Authorization','NcjHd':'Initializing\x20MCP\x20session...','lgwCk':function(_0xf76ae5,_0xa44f19){return _0xf76ae5(_0xa44f19);},'bPsjN':'initialize','dJjHa':'2025-03-26','UpJjA':'ranger-cli','cxQma':'\x20done','fydCM':_0x33b489(0x24c),'qKgfN':_0x33b489(0x1d9),'PjlBa':'2.0','jIesM':_0x33b489(0x250),'mWYsc':'\x0aUnexpected\x20response\x20structure:','oHBbo':_0x33b489(0x1e7),'WWHBW':function(_0x59fe3d,_0x2aeb49,_0x5d3097,_0xc12547){return _0x59fe3d(_0x2aeb49,_0x5d3097,_0xc12547);},'tNhgy':_0x33b489(0x1dc),'jIUuB':_0x33b489(0x206)},_0x2216fc={'Content-Type':_0x33b489(0x1e1),'Accept':_0x33b489(0x1f1)};_0x50e225&&(_0x2216fc[_0x1e3dec[_0x33b489(0x225)]]='Bearer\x20'+_0x50e225);const _0x3bf971=async _0x23b6b9=>{const _0x39eedc=_0x33b489,_0x145f34=await fetch(_0x22148b,{'method':_0x1e3dec[_0x39eedc(0x20a)],'headers':_0x2216fc,'body':JSON['stringify'](_0x23b6b9)});if(!_0x145f34['ok']){const _0x209a87=await _0x145f34[_0x39eedc(0x1e2)]();throw new Error(_0x39eedc(0x236)+_0x145f34['status']+':\x20'+_0x209a87);}return parseResponse(_0x145f34);};process['stdout'][_0x33b489(0x1ec)](_0x1e3dec[_0x33b489(0x1ca)]);const _0x255be3=await _0x1e3dec['lgwCk'](_0x3bf971,{'jsonrpc':'2.0','id':0x1,'method':_0x1e3dec['bPsjN'],'params':{'protocolVersion':_0x1e3dec['dJjHa'],'capabilities':{},'clientInfo':{'name':_0x1e3dec['UpJjA'],'version':'1.0.0'}}});if(_0x255be3[_0x33b489(0x234)])throw new Error(_0x33b489(0x248)+(_0x255be3[_0x33b489(0x234)][_0x33b489(0x256)]??JSON['stringify'](_0x255be3['error'])));console[_0x33b489(0x1dd)](_0x1e3dec['cxQma']),await fetch(_0x22148b,{'method':_0x1e3dec[_0x33b489(0x20a)],'headers':_0x2216fc,'body':JSON['stringify']({'jsonrpc':_0x33b489(0x1e9),'method':_0x1e3dec['fydCM']})})['then'](_0x14d59d=>_0x14d59d[_0x33b489(0x1e2)]()),process[_0x33b489(0x211)][_0x33b489(0x1ec)](_0x1e3dec[_0x33b489(0x213)]);const _0x2366df=await _0x3bf971({'jsonrpc':_0x1e3dec[_0x33b489(0x21d)],'id':0x2,'method':_0x33b489(0x1da),'params':{'name':_0x1e3dec[_0x33b489(0x1e3)],'arguments':{}}});if(_0x2366df[_0x33b489(0x234)])throw new Error(_0x33b489(0x1de)+(_0x2366df[_0x33b489(0x234)][_0x33b489(0x256)]??JSON['stringify'](_0x2366df[_0x33b489(0x234)])));console['log'](_0x33b489(0x204));const _0x27c111=_0x1e3dec[_0x33b489(0x205)](extractToken,_0x2366df['result']);if(!_0x27c111){console['error'](_0x1e3dec['mWYsc']),console[_0x33b489(0x234)](JSON[_0x33b489(0x217)](_0x2366df['result'],null,0x2));throw new Error('Could\x20not\x20extract\x20token\x20from\x20MCP\x20response');}const _0x237617=join(homedir(),_0x33b489(0x220)),_0x890699=join(_0x237617,_0x1e3dec['oHBbo']);await mkdir(_0x237617,{'recursive':!![]}),await _0x1e3dec[_0x33b489(0x214)](writeFile,_0x890699,_0x27c111,{'mode':0x180}),await writeFile(join(_0x237617,_0x1e3dec[_0x33b489(0x24b)]),_0x22148b,{'mode':0x180}),console['log'](_0x33b489(0x231)+_0x890699),console[_0x33b489(0x1dd)](_0x1e3dec[_0x33b489(0x252)]);}async function fetchAuthServerMetadata(_0x503d94){const _0x1341c4=_0x2462a9,_0x1f7351=_0x503d94+_0x1341c4(0x235),_0x36b741=await fetch(_0x1f7351);if(!_0x36b741['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x1f7351+':\x20'+_0x36b741['status']);return _0x36b741['json']();}function waitForCallback(_0x639ab7){const _0x395372=_0x2462a9,_0x134d8a={'IFMSZ':'/callback','DqVaZ':_0x395372(0x21e),'AFdVZ':_0x395372(0x251),'PRwjZ':function(_0x3acfbf,_0x30de35){return _0x3acfbf(_0x30de35);},'zSgaV':function(_0x1ac77e,_0x8e21ee){return _0x1ac77e(_0x8e21ee);},'QlisK':'127.0.0.1'};return new Promise((_0x348bf6,_0x59a0fc)=>{const _0x2aead1=_0x395372,_0xc526b9={'JLLsV':_0x134d8a['IFMSZ'],'VKOFc':_0x134d8a[_0x2aead1(0x1f2)],'WEkIT':_0x134d8a['AFdVZ'],'fxBXD':_0x2aead1(0x234),'Gcxqe':function(_0x5a79d6){return _0x5a79d6();},'LnUUF':function(_0x1abd9e,_0x47d683){return _0x134d8a['PRwjZ'](_0x1abd9e,_0x47d683);},'YPKkS':'<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>'},_0x50b2cc=()=>{_0x3c031f['closeAllConnections'](),_0x3c031f['close']();},_0x32c2fc=setTimeout(()=>{const _0x251f39=_0x2aead1;_0x50b2cc(),_0x59a0fc(new OAuthTimeoutError(_0x251f39(0x1c9)));},0x1d4c0),_0x3c031f=_0x134d8a['zSgaV'](createServer,(_0xce1ada,_0x2cb97e)=>{const _0x37bd88=_0x2aead1,_0x25d683=new URL(_0xce1ada['url']??'/',_0x37bd88(0x20c)+CALLBACK_PORT);if(_0x25d683['pathname']!==_0xc526b9[_0x37bd88(0x230)]){_0x2cb97e['writeHead'](0x194),_0x2cb97e['end'](_0x37bd88(0x1fe));return;}const _0x51c349=_0x25d683['searchParams'][_0x37bd88(0x233)](_0xc526b9[_0x37bd88(0x1ff)]),_0xf28484=_0x25d683['searchParams']['get'](_0xc526b9['WEkIT']),_0x23e400=_0x25d683[_0x37bd88(0x1fc)]['get'](_0xc526b9[_0x37bd88(0x245)]);if(_0x23e400){const _0x3b917c=_0x25d683['searchParams'][_0x37bd88(0x233)](_0x37bd88(0x224))??_0x23e400;_0x2cb97e[_0x37bd88(0x201)](0xc8,{'Content-Type':_0x37bd88(0x21a)}),_0x2cb97e['end'](_0x37bd88(0x237)+_0x3b917c+_0x37bd88(0x1eb)),clearTimeout(_0x32c2fc),_0xc526b9['Gcxqe'](_0x50b2cc),_0xc526b9['LnUUF'](_0x59a0fc,new Error('OAuth\x20error:\x20'+_0x3b917c));return;}if(!_0x51c349||_0xf28484!==_0x639ab7){_0x2cb97e['writeHead'](0x190,{'Content-Type':'text/html'}),_0x2cb97e['end'](_0xc526b9['YPKkS']);return;}_0x2cb97e[_0x37bd88(0x201)](0xc8,{'Content-Type':_0x37bd88(0x21a)}),_0x2cb97e[_0x37bd88(0x238)](_0x37bd88(0x22b)),clearTimeout(_0x32c2fc),_0x50b2cc(),_0xc526b9['LnUUF'](_0x348bf6,_0x51c349);});_0x3c031f[_0x2aead1(0x22e)](CALLBACK_PORT,_0x134d8a[_0x2aead1(0x240)]);});}async function openBrowser(_0x32ca42){const _0x5b1ca9=_0x2462a9,_0x1ebf5c={'pTBhf':_0x5b1ca9(0x1f5),'hRoDv':function(_0x4aaeaf,_0x161e07){return _0x4aaeaf(_0x161e07);}},_0x22af4a=process[_0x5b1ca9(0x243)]==='darwin'?'open':process[_0x5b1ca9(0x243)]==='win32'?_0x1ebf5c['pTBhf']:_0x5b1ca9(0x1d4);_0x1ebf5c[_0x5b1ca9(0x1fd)](exec,_0x22af4a+'\x20\x22'+_0x32ca42+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x2507c7=_0x2462a9,_0x26a735={'ugygn':function(_0xfe3472,_0x4b824b,_0x1a529d){return _0xfe3472(_0x4b824b,_0x1a529d);},'NsysF':_0x2507c7(0x24e)};try{const _0x134556=JSON['parse'](await _0x26a735[_0x2507c7(0x20b)](readFile,TOKEN_CACHE_PATH,_0x26a735[_0x2507c7(0x249)]));if(_0x134556[_0x2507c7(0x21c)]&&_0x134556['origin']!==currentOrigin)return null;if(_0x134556[_0x2507c7(0x1ea)]&&Date[_0x2507c7(0x1f9)]()>_0x134556[_0x2507c7(0x1ea)])return null;return _0x134556['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x40b274,_0x7e613,_0x2c7ac5){const _0x428ae2=_0x2462a9,_0x136fc2={'vAeCf':function(_0x2dcf5c){return _0x2dcf5c();},'NVhDC':function(_0x26bcfa,_0xe4f529){return _0x26bcfa*_0xe4f529;},'BVWID':_0x428ae2(0x220)},_0x4e98eb=await _0x136fc2[_0x428ae2(0x1d8)](loadCachedData),_0x16e171={..._0x4e98eb,'origin':currentOrigin,'accessToken':_0x40b274,'refreshToken':_0x7e613??_0x4e98eb?.['refreshToken'],'expiresAt':_0x2c7ac5?Date[_0x428ae2(0x1f9)]()+_0x136fc2[_0x428ae2(0x232)](_0x2c7ac5,0x3e8):undefined};await mkdir(join(_0x136fc2[_0x428ae2(0x1d8)](homedir),_0x136fc2[_0x428ae2(0x215)]),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x16e171),{'mode':0x180});}async function loadCachedClient(){const _0x20ef02=_0x2462a9,_0x753e79={'YdMpB':function(_0x3fa349){return _0x3fa349();},'frtWg':function(_0x10b3de,_0x3b95a7){return _0x10b3de!==_0x3b95a7;}},_0x20c397=await _0x753e79[_0x20ef02(0x1e5)](loadCachedData);if(_0x20c397?.[_0x20ef02(0x21c)]&&_0x753e79['frtWg'](_0x20c397[_0x20ef02(0x21c)],currentOrigin))return null;return _0x20c397?.[_0x20ef02(0x1df)]?{'clientId':_0x20c397['clientId'],'clientSecret':_0x20c397[_0x20ef02(0x21f)]}:null;}async function clearCachedClient(){const _0x113f33=_0x2462a9,_0xf2eafe={'vkmKu':function(_0x5c93cc,_0x1b4cde,_0x19e2bc,_0x3e6659){return _0x5c93cc(_0x1b4cde,_0x19e2bc,_0x3e6659);}},_0x4a6c3c=await loadCachedData();if(!_0x4a6c3c)return;const {clientId:_0x18dc6,clientSecret:_0x26c213,..._0x279eb2}=_0x4a6c3c;await _0xf2eafe[_0x113f33(0x254)](writeFile,TOKEN_CACHE_PATH,JSON[_0x113f33(0x217)](_0x279eb2),{'mode':0x180});}function _0x36c9(){const _0x45e083=['message','389024CgqQOj','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','NcjHd','headers','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','text/event-stream','tKHLt','iBPRB','code_challenge_method','hzYhE','structuredContent','isTTY','xdg-open','7YdDjbF','\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20','zjBpx','vAeCf','Requesting\x20CLI\x20token...','tools/call','registration_endpoint','auth-origin.txt','log','get_cli_token\x20failed:\x20','clientId','946800EZajjv','application/json','text','jIesM','14660BhDFsL','YdMpB','hex','refresh.txt','redirect_uri','2.0','expiresAt','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','write','2973005Cuhyvb','DExuU','BAbLg','data:','application/json,\x20text/event-stream','DqVaZ','HormO','uBqdg','start','accessToken','zkMuw','1.0.0','now','client_id','xcwjd','searchParams','hRoDv','Not\x20found','VKOFc','access_token','writeHead','/callback','token','\x20done','lgwCk','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','status','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','mUamP','BQJST','ugygn','http://localhost:','16110hKGWHv','json','Server\x20returned\x20error:\x20','1495993EHaFXT','stdout','PYNcX','qKgfN','WWHBW','BVWID','MLnJV','stringify','OAuthTimeoutError','name','text/html','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','origin','PjlBa','code','clientSecret','.ranger','oPLfr','6565128EXIIFn','refresh_token','error_description','EhhOJ','dECTr','2242602xVMpAJ','4FFnSFJ','client_secret','proxied','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','set','length','listen','toString','JLLsV','\x0aToken\x20written\x20to\x20','NVhDC','get','error','/.well-known/oauth-authorization-server','HTTP\x20','<html><body><h2>Authentication\x20failed</h2><p>','end','VYVXm','trim','base64url','resource','NNucH','vzXLq','grKjp','QlisK','POST','needs-oauth','platform','uyPps','fxBXD','type','/.well-known/oauth-protected-resource','MCP\x20initialize\x20failed:\x20','NsysF','includes','tNhgy','notifications/initialized','ranger-cli','utf-8','replace','get_cli_token','state','jIUuB','slice','vkmKu','Ranger\x20CLI'];_0x36c9=function(){return _0x45e083;};return _0x36c9();}async function saveCachedClient(_0x23882c,_0x35c42d){const _0x3ba67b=_0x2462a9,_0xab1f39={'QdHMM':function(_0x232295){return _0x232295();},'rXmyK':function(_0x31969e,_0x2fd2db,_0x2b443a,_0xa4920a){return _0x31969e(_0x2fd2db,_0x2b443a,_0xa4920a);}},_0x139dd0=await loadCachedData(),_0x2d420f={..._0x139dd0,'origin':currentOrigin,'accessToken':_0x139dd0?.[_0x3ba67b(0x1f6)]??'','clientId':_0x23882c,'clientSecret':_0x35c42d};await mkdir(join(_0xab1f39['QdHMM'](homedir),'.ranger'),{'recursive':!![]}),await _0xab1f39['rXmyK'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x2d420f),{'mode':0x180});}async function loadCachedData(){const _0x5b6a62=_0x2462a9,_0x3d107b={'hzYhE':_0x5b6a62(0x24e)};try{return JSON['parse'](await readFile(TOKEN_CACHE_PATH,_0x3d107b[_0x5b6a62(0x1d1)]));}catch{return null;}}async function parseResponse(_0x2f1083){const _0x3f50b2=_0x2462a9,_0x5874ef={'wPeAx':'content-type','KUAwY':_0x3f50b2(0x1cd),'jxcAm':_0x3f50b2(0x21b)},_0x26de29=_0x2f1083[_0x3f50b2(0x1cb)]['get'](_0x5874ef['wPeAx'])??'';if(_0x26de29[_0x3f50b2(0x24a)](_0x5874ef['KUAwY'])){const _0x4b430d=await _0x2f1083[_0x3f50b2(0x1e2)]();for(const _0x28af01 of _0x4b430d['split']('\x0a')){const _0x4813e8=_0x28af01['trim']();if(_0x4813e8['startsWith']('data:')){const _0x3a84d3=_0x4813e8[_0x3f50b2(0x253)](_0x3f50b2(0x1f0)[_0x3f50b2(0x22d)])[_0x3f50b2(0x23a)]();if(!_0x3a84d3)continue;try{const _0x2f047b=JSON['parse'](_0x3a84d3);if(_0x2f047b['id']!==undefined||_0x2f047b['error'])return _0x2f047b;}catch{}}}throw new Error(_0x5874ef['jxcAm']);}return _0x2f1083['json']();}function extractToken(_0x4f4e3a){const _0x117a07=_0x2462a9,_0x542459={'CnKCd':function(_0x5ce2a6,_0x3f42a9){return _0x5ce2a6===_0x3f42a9;},'oCGzv':'Unknown\x20error','TIMVu':_0x117a07(0x1e2)};if(!_0x4f4e3a)return null;const _0x57c97b=_0x4f4e3a[_0x117a07(0x1d2)];if(_0x57c97b?.['token']&&_0x542459['CnKCd'](typeof _0x57c97b[_0x117a07(0x203)],'string'))return _0x57c97b['token'];if(_0x4f4e3a['isError']){const _0x700234=_0x4f4e3a['content'];throw new Error(_0x117a07(0x20f)+(_0x700234?.[0x0]?.[_0x117a07(0x1e2)]??_0x542459['oCGzv']));}const _0x521555=_0x4f4e3a['content'];if(_0x521555)for(const _0x4758a5 of _0x521555){if(_0x542459['CnKCd'](_0x4758a5[_0x117a07(0x246)],_0x542459['TIMVu'])&&_0x4758a5[_0x117a07(0x1e2)]){try{const _0x288b5d=JSON['parse'](_0x4758a5['text']);if(_0x542459['CnKCd'](typeof _0x288b5d?.['token'],'string'))return _0x288b5d['token'];}catch{}const _0x47b666=_0x4758a5[_0x117a07(0x1e2)]['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x47b666)return _0x47b666[0x1];}}return null;}
|
|
1
|
+
function _0x4af4(){const _0x5902dd=['UPMvO','isTTY','client_id','none','application/x-www-form-urlencoded','282UzIkho','MgOfy','token','code_challenge','WnSdc','prVrt','toString','listen','error','update','http://localhost:','lpAHq','stringify','jzQHz','get','oaEoD','write','DckUU','type','end','IPrWb','clientId','YfNOM','Qwhnv','open','xdg-open','application/json,\x20text/event-stream','hUicL','trim','QKjcj','rzNpI','UxrzQ','hfqpd','OPKyJ','688ImEyVV','origin','now','digest','isError','initialize','Token\x20exchange\x20failed:\x20','150206ejxDiC','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','nlPZh','Rajcc','application/json','Unknown\x20error','registration_endpoint','1934106MMePZV','structuredContent','tools/call','parse','MCP\x20server\x20returned\x20HTTP\x20','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','1110708plvYRW','OAuthTimeoutError','GwYKY','ziKTV','ysuvY','CNEaM','redirect_uri','EtyZA','\x20done','WYxav','\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20','Initializing\x20MCP\x20session...','vAHjO','uzyCW','sha256','tuWff','match','trAwA','Not\x20found','2.0','proxied','includes','content-type','311170DWFXnA','Registering\x20OAuth\x20client...','expires_in','needs-oauth','close','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','akBcU','response_type','writeHead','lZCFA','auth-origin.txt','data:','BNwAy','pBQoe','replace','searchParams','refresh_token','.ranger','code','\x0aOpening\x20browser\x20for\x20authentication...','text','get_cli_token\x20failed:\x20','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','591520eXRzaK','text/html','1.0.0','88NrlpRE','darwin','message','MCP\x20initialize\x20failed:\x20','EQACP','gsCYT','Bearer\x20','ByzrU','refresh.txt','EJrGh','QmyAY','status','start','4Ulpkzi','ACjRr','set','lhcUi','client_secret','result','hLPLK','stdout','Authorization','131751riqfNh','utf-8','Discovering\x20authorization\x20server...','tbDJo','json','pathname','TixVA','POST','url','log','resource','MBSpC','accessToken','2OsaQxl','2166415rfuRXF','platform','jCWTO','access_token','TBFVb','state','Xdmoj','RHivM','clientSecret','length','AslMB','authorization_code','notifications/initialized','VeeAr','fEYKi','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','/callback','WyQLx','name'];_0x4af4=function(){return _0x5902dd;};return _0x4af4();}const _0x1062a6=_0x4710;(function(_0x66d401,_0x46048b){const _0x4936ed=_0x4710,_0x504960=_0x66d401();while(!![]){try{const _0xc8fbd9=-parseInt(_0x4936ed(0x137))/0x1+parseInt(_0x4936ed(0x15d))/0x2*(-parseInt(_0x4936ed(0x103))/0x3)+parseInt(_0x4936ed(0x147))/0x4*(-parseInt(_0x4936ed(0x15e))/0x5)+parseInt(_0x4936ed(0xd3))/0x6*(parseInt(_0x4936ed(0xfc))/0x7)+-parseInt(_0x4936ed(0xf5))/0x8*(-parseInt(_0x4936ed(0x150))/0x9)+-parseInt(_0x4936ed(0x120))/0xa*(-parseInt(_0x4936ed(0x13a))/0xb)+-parseInt(_0x4936ed(0x109))/0xc;if(_0xc8fbd9===_0x46048b)break;else _0x504960['push'](_0x504960['shift']());}catch(_0x23fc47){_0x504960['push'](_0x504960['shift']());}}}(_0x4af4,0xb82b0));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(),'.ranger','mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),_0x1062a6(0x131),_0x1062a6(0x12a));export async function getMcpAuthOrigin(){const _0x54ce82=_0x1062a6,_0x5e0460={'AslMB':function(_0x5728fe,_0x70ddb7,_0x2aa371){return _0x5728fe(_0x70ddb7,_0x2aa371);},'EWmuP':_0x54ce82(0x151),'ARxJl':function(_0x4990e1,_0x4899dc){return _0x4990e1||_0x4899dc;}};try{const _0x9430bb=(await _0x5e0460[_0x54ce82(0xc5)](readFile,AUTH_ORIGIN_PATH,_0x5e0460['EWmuP']))['trim']();return _0x5e0460['ARxJl'](_0x9430bb,null);}catch{return null;}}export async function mcpBootstrap(){const _0x45283a=_0x1062a6,_0x3cad18={'JNJrQ':function(_0x26a2a9,_0x4052cc){return _0x26a2a9(_0x4052cc);},'mHHKN':'proxied','DDsyI':function(_0x1021dc){return _0x1021dc();},'hUicL':function(_0x7a12dc,_0x1db07f){return _0x7a12dc+_0x1db07f;},'fThzU':'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','aJeUz':function(_0x3a13fa,_0x27e2af,_0x34fa17){return _0x3a13fa(_0x27e2af,_0x34fa17);}},_0x1cc4a9=getMcpAuthUrl();currentOrigin=_0x1cc4a9;const _0x5b7c3d=process[_0x45283a(0x14e)][_0x45283a(0xcf)]??![];console['log'](_0x45283a(0x113)+_0x1cc4a9+'\x0a');const _0x473f4b=await _0x3cad18['JNJrQ'](tryUnauthenticated,_0x1cc4a9);let _0x53104f=null;if(_0x473f4b===_0x3cad18['mHHKN'])_0x53104f='';else{_0x53104f=await _0x3cad18['DDsyI'](loadCachedToken);if(!_0x53104f){if(!_0x5b7c3d)throw new Error(_0x3cad18[_0x45283a(0xee)]('MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a',_0x3cad18['fThzU']));_0x53104f=await oauthFlow(_0x1cc4a9);}}await _0x3cad18['aJeUz'](callGetCliToken,_0x1cc4a9,_0x53104f);}async function tryUnauthenticated(_0x31a950){const _0x5843ce=_0x1062a6,_0x325e25={'ziKTV':_0x5843ce(0x100),'lhcUi':_0x5843ce(0x11c),'Zgvns':_0x5843ce(0xfa),'WyQLx':function(_0x3f998a,_0x38e8dc){return _0x3f998a===_0x38e8dc;},'QKjcj':_0x5843ce(0x123)},_0x2e1a6d=await fetch(_0x31a950,{'method':_0x5843ce(0x157),'headers':{'Content-Type':_0x325e25[_0x5843ce(0x10c)],'Accept':'application/json,\x20text/event-stream'},'body':JSON['stringify']({'jsonrpc':_0x325e25[_0x5843ce(0x14a)],'id':0x1,'method':_0x325e25['Zgvns'],'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'ranger-cli','version':'1.0.0'}}})});if(_0x2e1a6d['ok'])return await _0x2e1a6d[_0x5843ce(0x134)](),_0x5843ce(0x11d);if(_0x325e25[_0x5843ce(0xcc)](_0x2e1a6d['status'],0x191))return await _0x2e1a6d['text'](),_0x325e25[_0x5843ce(0xf0)];const _0x1c4ac8=await _0x2e1a6d['text']();throw new Error(_0x5843ce(0x107)+_0x2e1a6d['status']+':\x20'+_0x1c4ac8);}class OAuthTimeoutError extends Error{constructor(_0x4a529b){const _0x1f19e1=_0x1062a6;super(_0x4a529b),this[_0x1f19e1(0xcd)]=_0x1f19e1(0x10a);}}async function oauthFlow(_0x22de21){const _0x1d9e22=_0x1062a6,_0x1cfa2c={'OPKyJ':function(_0x2658b4,_0x4b4881){return _0x2658b4 instanceof _0x4b4881;},'jCWTO':function(_0x5c2de5){return _0x5c2de5();}};try{return await oauthFlowAttempt(_0x22de21);}catch(_0xac4506){if(_0x1cfa2c[_0x1d9e22(0xf4)](_0xac4506,OAuthTimeoutError)&&await loadCachedClient())return console[_0x1d9e22(0x159)]('\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'),await _0x1cfa2c[_0x1d9e22(0x160)](clearCachedClient),await oauthFlowAttempt(_0x22de21);throw _0xac4506;}}async function oauthFlowAttempt(_0x164c5c){const _0x145d9d=_0x1062a6,_0x298496={'TBFVb':'No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','ByzrU':_0x145d9d(0x121),'MocyI':function(_0x5f18d1,_0x464424,_0x485326){return _0x5f18d1(_0x464424,_0x485326);},'gsCYT':'POST','Xdmoj':'Ranger\x20CLI','tbDJo':'authorization_code','DckUU':'\x20done','EtyZA':function(_0x14fce0,_0x20ad8){return _0x14fce0(_0x20ad8);},'CNEaM':'base64url','IPrWb':function(_0x4d9fda,_0x52fca6){return _0x4d9fda(_0x52fca6);},'EPETQ':'hex','VxzZJ':_0x145d9d(0xd0),'tUaOH':_0x145d9d(0x10f),'SFiri':_0x145d9d(0xd6),'QDOfN':'S256','pmLeg':_0x145d9d(0x15a),'Rajcc':function(_0x4ec011,_0x5521de,_0x1a9181,_0x2419b8){return _0x4ec011(_0x5521de,_0x1a9181,_0x2419b8);}},_0x4170a8=_0x164c5c[_0x145d9d(0x12e)](/\/mcp$/,'');process['stdout'][_0x145d9d(0xe3)](_0x145d9d(0x152));const _0x44126a=await fetch(_0x4170a8+'/.well-known/oauth-protected-resource');if(!_0x44126a['ok'])throw new Error('Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server');const _0x47d038=await _0x44126a[_0x145d9d(0x154)](),_0x16cc82=_0x47d038['authorization_servers']?.[0x0];if(!_0x16cc82)throw new Error(_0x298496[_0x145d9d(0xbf)]);console[_0x145d9d(0x159)]('\x20'+_0x16cc82);const _0x427813=await fetchAuthServerMetadata(_0x16cc82);let _0x5a2f03,_0xeadb2f;const _0x588dbd=await loadCachedClient();if(_0x588dbd)_0x5a2f03=_0x588dbd[_0x145d9d(0xe8)],_0xeadb2f=_0x588dbd['clientSecret'];else{if(_0x427813[_0x145d9d(0x102)]){process[_0x145d9d(0x14e)]['write'](_0x298496[_0x145d9d(0x141)]);const _0x393e4b=await _0x298496['MocyI'](fetch,_0x427813[_0x145d9d(0x102)],{'method':_0x298496['gsCYT'],'headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'client_name':_0x298496[_0x145d9d(0xc1)],'redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x145d9d(0xcb)],'grant_types':[_0x298496[_0x145d9d(0x153)],_0x145d9d(0x130)],'response_types':[_0x145d9d(0x132)],'token_endpoint_auth_method':_0x145d9d(0xd1)})});if(!_0x393e4b['ok']){const _0x327d02=await _0x393e4b[_0x145d9d(0x134)]();throw new Error('Client\x20registration\x20failed:\x20'+_0x327d02);}const _0x51ff0c=await _0x393e4b['json']();_0x5a2f03=_0x51ff0c[_0x145d9d(0xd0)],_0xeadb2f=_0x51ff0c['client_secret'],await saveCachedClient(_0x5a2f03,_0xeadb2f),console['log'](_0x298496[_0x145d9d(0xe4)]);}else throw new Error('Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found');}const _0x4b83fa=_0x298496['EtyZA'](randomBytes,0x20)[_0x145d9d(0xd9)](_0x298496['CNEaM']),_0x31a12c=_0x298496[_0x145d9d(0xe7)](createHash,_0x145d9d(0x117))[_0x145d9d(0xdc)](_0x4b83fa)[_0x145d9d(0xf8)](_0x298496[_0x145d9d(0x10e)]),_0x30047d=_0x298496['IPrWb'](randomBytes,0x10)['toString'](_0x298496['EPETQ']),_0x2e19d7=new URL(_0x427813['authorization_endpoint']);_0x2e19d7[_0x145d9d(0x12f)][_0x145d9d(0x149)](_0x145d9d(0x127),'code'),_0x2e19d7[_0x145d9d(0x12f)]['set'](_0x298496['VxzZJ'],_0x5a2f03),_0x2e19d7['searchParams'][_0x145d9d(0x149)](_0x298496['tUaOH'],_0x145d9d(0xdd)+CALLBACK_PORT+'/callback'),_0x2e19d7[_0x145d9d(0x12f)][_0x145d9d(0x149)](_0x298496['SFiri'],_0x31a12c),_0x2e19d7[_0x145d9d(0x12f)]['set']('code_challenge_method',_0x298496['QDOfN']),_0x2e19d7['searchParams'][_0x145d9d(0x149)](_0x145d9d(0xc0),_0x30047d);_0x47d038['resource']&&_0x2e19d7[_0x145d9d(0x12f)]['set']('resource',_0x47d038['resource']);console[_0x145d9d(0x159)](_0x145d9d(0x133)),console['log'](_0x145d9d(0xca)+_0x2e19d7[_0x145d9d(0xd9)]()+'\x0a'),await openBrowser(_0x2e19d7[_0x145d9d(0xd9)]());const _0x754eab=await _0x298496[_0x145d9d(0x110)](waitForCallback,_0x30047d);process['stdout']['write']('Exchanging\x20authorization\x20code...');const _0x37fd95=new URLSearchParams({'grant_type':_0x145d9d(0xc6),'code':_0x754eab,'redirect_uri':'http://localhost:'+CALLBACK_PORT+_0x145d9d(0xcb),'client_id':_0x5a2f03,'code_verifier':_0x4b83fa});_0xeadb2f&&_0x37fd95['set'](_0x145d9d(0x14b),_0xeadb2f);_0x47d038['resource']&&_0x37fd95['set'](_0x298496['pmLeg'],_0x47d038[_0x145d9d(0x15a)]);const _0xb3f1c1=await fetch(_0x427813['token_endpoint'],{'method':_0x298496[_0x145d9d(0x13f)],'headers':{'Content-Type':_0x145d9d(0xd2)},'body':_0x37fd95});if(!_0xb3f1c1['ok']){const _0x36cfc5=await _0xb3f1c1[_0x145d9d(0x134)]();throw new Error(_0x145d9d(0xfb)+_0x36cfc5);}const _0x2bc26d=await _0xb3f1c1[_0x145d9d(0x154)]();return console['log'](_0x298496['DckUU']),await _0x298496[_0x145d9d(0xff)](saveCachedToken,_0x2bc26d['access_token'],_0x2bc26d['refresh_token'],_0x2bc26d[_0x145d9d(0x122)]),_0x2bc26d[_0x145d9d(0xbe)];}async function callGetCliToken(_0x3463c3,_0x321c6f){const _0x28a054=_0x1062a6,_0x3070e5={'RHivM':function(_0x4007d5,_0x12f183,_0x3f9b2c){return _0x4007d5(_0x12f183,_0x3f9b2c);},'qaMEV':_0x28a054(0x100),'eXkAL':_0x28a054(0x14f),'dhrfb':_0x28a054(0x114),'oaEoD':function(_0x3ead66,_0x47dfc9){return _0x3ead66(_0x47dfc9);},'GwYKY':_0x28a054(0x139),'DjdNf':'\x20done','MgOfy':function(_0x1cdb4b,_0xba6264,_0x54f3a7){return _0x1cdb4b(_0xba6264,_0x54f3a7);},'iFBpg':'POST','EJrGh':'Requesting\x20CLI\x20token...','nlPZh':'2.0','trAwA':'\x0aUnexpected\x20response\x20structure:','plLDe':_0x28a054(0x125),'YfNOM':_0x28a054(0x131),'lZCFA':function(_0x33421c,_0x34dc6c,_0x1272a1){return _0x33421c(_0x34dc6c,_0x1272a1);},'hLPLK':_0x28a054(0x12a),'QmyAY':_0x28a054(0xfd)},_0x38332e={'Content-Type':_0x3070e5['qaMEV'],'Accept':_0x28a054(0xed)};_0x321c6f&&(_0x38332e[_0x3070e5['eXkAL']]=_0x28a054(0x140)+_0x321c6f);const _0x2a2c43=async _0x4af292=>{const _0x30fbc0=_0x28a054,_0x2b7cef=await _0x3070e5[_0x30fbc0(0xc2)](fetch,_0x3463c3,{'method':'POST','headers':_0x38332e,'body':JSON[_0x30fbc0(0xdf)](_0x4af292)});if(!_0x2b7cef['ok']){const _0x411fb4=await _0x2b7cef[_0x30fbc0(0x134)]();throw new Error('HTTP\x20'+_0x2b7cef[_0x30fbc0(0x145)]+':\x20'+_0x411fb4);}return parseResponse(_0x2b7cef);};process['stdout'][_0x28a054(0xe3)](_0x3070e5['dhrfb']);const _0x15d972=await _0x3070e5[_0x28a054(0xe2)](_0x2a2c43,{'jsonrpc':_0x28a054(0x11c),'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x3070e5[_0x28a054(0x10b)]}}});if(_0x15d972[_0x28a054(0xdb)])throw new Error(_0x28a054(0x13d)+(_0x15d972['error'][_0x28a054(0x13c)]??JSON[_0x28a054(0xdf)](_0x15d972['error'])));console['log'](_0x3070e5['DjdNf']),await _0x3070e5[_0x28a054(0xd4)](fetch,_0x3463c3,{'method':_0x3070e5['iFBpg'],'headers':_0x38332e,'body':JSON[_0x28a054(0xdf)]({'jsonrpc':'2.0','method':_0x28a054(0xc7)})})['then'](_0x4fe4ce=>_0x4fe4ce[_0x28a054(0x134)]()),process[_0x28a054(0x14e)]['write'](_0x3070e5[_0x28a054(0x143)]);const _0x1db742=await _0x2a2c43({'jsonrpc':_0x3070e5[_0x28a054(0xfe)],'id':0x2,'method':_0x28a054(0x105),'params':{'name':'get_cli_token','arguments':{}}});if(_0x1db742[_0x28a054(0xdb)])throw new Error(_0x28a054(0x135)+(_0x1db742[_0x28a054(0xdb)][_0x28a054(0x13c)]??JSON[_0x28a054(0xdf)](_0x1db742['error'])));console['log'](_0x28a054(0x111));const _0xcb04da=extractToken(_0x1db742[_0x28a054(0x14c)]);if(!_0xcb04da){console[_0x28a054(0xdb)](_0x3070e5[_0x28a054(0x11a)]),console['error'](JSON[_0x28a054(0xdf)](_0x1db742[_0x28a054(0x14c)],null,0x2));throw new Error(_0x3070e5['plLDe']);}const _0x5f298f=_0x3070e5[_0x28a054(0xd4)](join,homedir(),_0x3070e5[_0x28a054(0xe9)]),_0x1ea3c2=join(_0x5f298f,_0x28a054(0x142));await mkdir(_0x5f298f,{'recursive':!![]}),await writeFile(_0x1ea3c2,_0xcb04da,{'mode':0x180}),await writeFile(_0x3070e5[_0x28a054(0x129)](join,_0x5f298f,_0x3070e5[_0x28a054(0x14d)]),_0x3463c3,{'mode':0x180}),console[_0x28a054(0x159)]('\x0aToken\x20written\x20to\x20'+_0x1ea3c2),console[_0x28a054(0x159)](_0x3070e5[_0x28a054(0x144)]);}async function fetchAuthServerMetadata(_0xe9c903){const _0x7db6a0=_0x1062a6,_0x4743e0={'AKnRw':function(_0xc1aa66,_0x560bfd){return _0xc1aa66(_0x560bfd);}},_0x1640d2=_0xe9c903+'/.well-known/oauth-authorization-server',_0x51eace=await _0x4743e0['AKnRw'](fetch,_0x1640d2);if(!_0x51eace['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x1640d2+':\x20'+_0x51eace[_0x7db6a0(0x145)]);return _0x51eace[_0x7db6a0(0x154)]();}function waitForCallback(_0x555ecb){const _0x4a36b6=_0x1062a6,_0x4444d1={'tuWff':function(_0x1b9526,_0x4cb111){return _0x1b9526!==_0x4cb111;},'ysuvY':_0x4a36b6(0xcb),'EQACP':'code','hfqpd':function(_0x2cdaa9,_0x5ee427){return _0x2cdaa9(_0x5ee427);},'Qwhnv':'<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','IPVGU':'text/html','jzQHz':_0x4a36b6(0x136),'vAHjO':function(_0x37afaa){return _0x37afaa();},'MBSpC':function(_0x52ee8d,_0x3853b5,_0x2a69ee){return _0x52ee8d(_0x3853b5,_0x2a69ee);},'UPMvO':'127.0.0.1'};return new Promise((_0x57c29c,_0x2750b6)=>{const _0x306158=_0x4a36b6,_0xa7a998={'fEYKi':function(_0x3b78a4,_0xe307ff){return _0x3b78a4(_0xe307ff);}},_0x2cb839=()=>{const _0x2b8ba0=_0x4710;_0x523d4e['closeAllConnections'](),_0x523d4e[_0x2b8ba0(0x124)]();},_0x2e0d52=_0x4444d1[_0x306158(0x15b)](setTimeout,()=>{const _0x558751=_0x306158;_0x2cb839(),_0xa7a998[_0x558751(0xc9)](_0x2750b6,new OAuthTimeoutError('OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes'));},0x1d4c0),_0x523d4e=createServer((_0x480bbe,_0x3d7ceb)=>{const _0x997762=_0x306158,_0x18c418=new URL(_0x480bbe[_0x997762(0x158)]??'/',_0x997762(0xdd)+CALLBACK_PORT);if(_0x4444d1[_0x997762(0x118)](_0x18c418[_0x997762(0x155)],_0x4444d1[_0x997762(0x10d)])){_0x3d7ceb[_0x997762(0x128)](0x194),_0x3d7ceb[_0x997762(0xe6)](_0x997762(0x11b));return;}const _0x53a147=_0x18c418[_0x997762(0x12f)][_0x997762(0xe1)](_0x4444d1[_0x997762(0x13e)]),_0x5d0e5d=_0x18c418[_0x997762(0x12f)]['get'](_0x997762(0xc0)),_0x25b177=_0x18c418['searchParams']['get']('error');if(_0x25b177){const _0x3571ee=_0x18c418['searchParams']['get']('error_description')??_0x25b177;_0x3d7ceb['writeHead'](0xc8,{'Content-Type':_0x997762(0x138)}),_0x3d7ceb[_0x997762(0xe6)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x3571ee+_0x997762(0x108)),clearTimeout(_0x2e0d52),_0x2cb839(),_0x4444d1['hfqpd'](_0x2750b6,new Error('OAuth\x20error:\x20'+_0x3571ee));return;}if(!_0x53a147||_0x4444d1[_0x997762(0x118)](_0x5d0e5d,_0x555ecb)){_0x3d7ceb['writeHead'](0x190,{'Content-Type':_0x997762(0x138)}),_0x3d7ceb['end'](_0x4444d1[_0x997762(0xea)]);return;}_0x3d7ceb[_0x997762(0x128)](0xc8,{'Content-Type':_0x4444d1['IPVGU']}),_0x3d7ceb['end'](_0x4444d1[_0x997762(0xe0)]),clearTimeout(_0x2e0d52),_0x4444d1[_0x997762(0x115)](_0x2cb839),_0x4444d1[_0x997762(0xf3)](_0x57c29c,_0x53a147);});_0x523d4e[_0x306158(0xda)](CALLBACK_PORT,_0x4444d1[_0x306158(0xce)]);});}async function openBrowser(_0xe77537){const _0x398790=_0x1062a6,_0x3c6fe1={'rzNpI':function(_0x5cfd40,_0x2ab5ff){return _0x5cfd40===_0x2ab5ff;},'lpAHq':_0x398790(0x13b),'uzyCW':_0x398790(0x146),'LjMTl':_0x398790(0xec),'akBcU':function(_0x57d1a4,_0x342162){return _0x57d1a4(_0x342162);}},_0x25441b=_0x3c6fe1[_0x398790(0xf1)](process['platform'],_0x3c6fe1[_0x398790(0xde)])?_0x398790(0xeb):_0x3c6fe1[_0x398790(0xf1)](process[_0x398790(0x15f)],'win32')?_0x3c6fe1[_0x398790(0x116)]:_0x3c6fe1['LjMTl'];_0x3c6fe1[_0x398790(0x126)](exec,_0x25441b+'\x20\x22'+_0xe77537+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x4ebd1e=_0x1062a6;try{const _0x381062=JSON[_0x4ebd1e(0x106)](await readFile(TOKEN_CACHE_PATH,_0x4ebd1e(0x151)));if(_0x381062[_0x4ebd1e(0xf6)]&&_0x381062[_0x4ebd1e(0xf6)]!==currentOrigin)return null;if(_0x381062['expiresAt']&&Date[_0x4ebd1e(0xf7)]()>_0x381062['expiresAt'])return null;return _0x381062['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x23f1e3,_0x39fa75,_0x1a8057){const _0x4fa532=_0x1062a6,_0x3934a3={'pBQoe':function(_0x3f8746){return _0x3f8746();},'ueGsD':function(_0x1ba196,_0x4f5288){return _0x1ba196*_0x4f5288;},'BNwAy':function(_0x9515f0,_0x2a5bab,_0x4764ff){return _0x9515f0(_0x2a5bab,_0x4764ff);},'KAKhK':function(_0x2b88b3,_0x3be585,_0xcd2ba8,_0x399581){return _0x2b88b3(_0x3be585,_0xcd2ba8,_0x399581);}},_0x55f63c=await _0x3934a3[_0x4fa532(0x12d)](loadCachedData),_0x3a9521={..._0x55f63c,'origin':currentOrigin,'accessToken':_0x23f1e3,'refreshToken':_0x39fa75??_0x55f63c?.['refreshToken'],'expiresAt':_0x1a8057?Date['now']()+_0x3934a3['ueGsD'](_0x1a8057,0x3e8):undefined};await _0x3934a3[_0x4fa532(0x12c)](mkdir,join(_0x3934a3['pBQoe'](homedir),'.ranger'),{'recursive':!![]}),await _0x3934a3['KAKhK'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x3a9521),{'mode':0x180});}async function loadCachedClient(){const _0x45721f=_0x1062a6,_0x488e92={'VClld':function(_0x3d3412){return _0x3d3412();},'gpWmR':function(_0x5bbd28,_0x50b275){return _0x5bbd28!==_0x50b275;}},_0x59e25c=await _0x488e92['VClld'](loadCachedData);if(_0x59e25c?.['origin']&&_0x488e92['gpWmR'](_0x59e25c['origin'],currentOrigin))return null;return _0x59e25c?.['clientId']?{'clientId':_0x59e25c['clientId'],'clientSecret':_0x59e25c[_0x45721f(0xc3)]}:null;}function _0x4710(_0x2b6555,_0xeb52a1){_0x2b6555=_0x2b6555-0xbe;const _0x4af47d=_0x4af4();let _0x4710ea=_0x4af47d[_0x2b6555];return _0x4710ea;}async function clearCachedClient(){const _0xf551a6=_0x1062a6,_0x47fcec=await loadCachedData();if(!_0x47fcec)return;const {clientId:_0xd95fdd,clientSecret:_0x1ea73e,..._0x2ce0c8}=_0x47fcec;await writeFile(TOKEN_CACHE_PATH,JSON[_0xf551a6(0xdf)](_0x2ce0c8),{'mode':0x180});}async function saveCachedClient(_0x20b9e9,_0x4449ad){const _0x125497=_0x1062a6,_0x4df23b={'prVrt':function(_0x2652fc,_0x3b34c5,_0x4bce48){return _0x2652fc(_0x3b34c5,_0x4bce48);},'WnSdc':function(_0x550e94){return _0x550e94();},'TixVA':function(_0x3dd53f,_0x4daa9f,_0x3653cc,_0x431a4e){return _0x3dd53f(_0x4daa9f,_0x3653cc,_0x431a4e);}},_0x319325=await loadCachedData(),_0x5c405b={..._0x319325,'origin':currentOrigin,'accessToken':_0x319325?.[_0x125497(0x15c)]??'','clientId':_0x20b9e9,'clientSecret':_0x4449ad};await _0x4df23b[_0x125497(0xd8)](mkdir,join(_0x4df23b[_0x125497(0xd7)](homedir),'.ranger'),{'recursive':!![]}),await _0x4df23b[_0x125497(0x156)](writeFile,TOKEN_CACHE_PATH,JSON[_0x125497(0xdf)](_0x5c405b),{'mode':0x180});}async function loadCachedData(){const _0x69981d=_0x1062a6,_0x3ed205={'VeeAr':function(_0x2a3848,_0x5c9cc7,_0x468988){return _0x2a3848(_0x5c9cc7,_0x468988);}};try{return JSON[_0x69981d(0x106)](await _0x3ed205[_0x69981d(0xc8)](readFile,TOKEN_CACHE_PATH,_0x69981d(0x151)));}catch{return null;}}async function parseResponse(_0x12c97a){const _0x1182fb=_0x1062a6,_0xb0d42b={'lSGJj':'text/event-stream','UxrzQ':_0x1182fb(0x12b)},_0x13c0f8=_0x12c97a['headers'][_0x1182fb(0xe1)](_0x1182fb(0x11f))??'';if(_0x13c0f8[_0x1182fb(0x11e)](_0xb0d42b['lSGJj'])){const _0x5730af=await _0x12c97a['text']();for(const _0x4887f8 of _0x5730af['split']('\x0a')){const _0x39268c=_0x4887f8[_0x1182fb(0xef)]();if(_0x39268c['startsWith'](_0x1182fb(0x12b))){const _0x2b1d54=_0x39268c['slice'](_0xb0d42b[_0x1182fb(0xf2)][_0x1182fb(0xc4)])[_0x1182fb(0xef)]();if(!_0x2b1d54)continue;try{const _0x1ff33b=JSON['parse'](_0x2b1d54);if(_0x1ff33b['id']!==undefined||_0x1ff33b['error'])return _0x1ff33b;}catch{}}}throw new Error('No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream');}return _0x12c97a[_0x1182fb(0x154)]();}function extractToken(_0x2d4dc6){const _0x10b79a=_0x1062a6,_0x480d32={'ACjRr':function(_0x4c5599,_0x2113d3){return _0x4c5599===_0x2113d3;},'WYxav':_0x10b79a(0x134)};if(!_0x2d4dc6)return null;const _0x2376eb=_0x2d4dc6[_0x10b79a(0x104)];if(_0x2376eb?.['token']&&_0x480d32[_0x10b79a(0x148)](typeof _0x2376eb['token'],'string'))return _0x2376eb[_0x10b79a(0xd5)];if(_0x2d4dc6[_0x10b79a(0xf9)]){const _0x22a2e9=_0x2d4dc6['content'];throw new Error('Server\x20returned\x20error:\x20'+(_0x22a2e9?.[0x0]?.[_0x10b79a(0x134)]??_0x10b79a(0x101)));}const _0x11e8c3=_0x2d4dc6['content'];if(_0x11e8c3)for(const _0x1c66af of _0x11e8c3){if(_0x1c66af[_0x10b79a(0xe5)]===_0x480d32[_0x10b79a(0x112)]&&_0x1c66af[_0x10b79a(0x134)]){try{const _0x5aca94=JSON[_0x10b79a(0x106)](_0x1c66af['text']);if(typeof _0x5aca94?.['token']==='string')return _0x5aca94[_0x10b79a(0xd5)];}catch{}const _0x128b19=_0x1c66af[_0x10b79a(0x134)][_0x10b79a(0x119)](/(rngr_[A-Za-z0-9_-]+)/);if(_0x128b19)return _0x128b19[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x5c89(_0x386599,_0x523dcd){_0x386599=_0x386599-0x1e0;var _0x2038e0=_0x2038();var _0x5c891e=_0x2038e0[_0x386599];return _0x5c891e;}(function(_0x3d417b,_0x95c047){var _0x45084d=_0x5c89,_0x3066ac=_0x3d417b();while(!![]){try{var _0xf72646=-parseInt(_0x45084d(0x1e4))/0x1*(parseInt(_0x45084d(0x1e8))/0x2)+parseInt(_0x45084d(0x1e2))/0x3*(-parseInt(_0x45084d(0x1f0))/0x4)+-parseInt(_0x45084d(0x1f1))/0x5+-parseInt(_0x45084d(0x1ea))/0x6*(-parseInt(_0x45084d(0x1f2))/0x7)+-parseInt(_0x45084d(0x1e1))/0x8+parseInt(_0x45084d(0x1ec))/0x9+parseInt(_0x45084d(0x1ef))/0xa*(parseInt(_0x45084d(0x1eb))/0xb);if(_0xf72646===_0x95c047)break;else _0x3066ac['push'](_0x3066ac['shift']());}catch(_0x2af4d4){_0x3066ac['push'](_0x3066ac['shift']());}}}(_0x2038,0x39ae5));function _0x2038(){var _0x1aee13=['fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.','MqPZq','204880VDCASI','exit','12FFamMf','1984477vZxMAo','1307367GFrVTq','error','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','50JpwaRr','68qGDBnA','1895040cHfvip','412349DKpiOT','TEroq','392080NACExz','52227LiiGaJ','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','2UEbsOL','\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a'];_0x2038=function(){return _0x1aee13;};return _0x2038();}export async function migrateProfile(_0x299c57,_0x483f6d){var _0x47b6eb=_0x5c89,_0x38e752={'TEroq':function(_0xe2bb66,_0xe19ff7){return _0xe2bb66+_0xe19ff7;},'CSsdE':function(_0x548a45,_0x5b9261){return _0x548a45+_0x5b9261;},'MqPZq':_0x47b6eb(0x1e3)};console[_0x47b6eb(0x1ed)](_0x38e752[_0x47b6eb(0x1e0)](_0x38e752['CSsdE']('ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a'+'\x0a'+_0x47b6eb(0x1ee)+_0x38e752[_0x47b6eb(0x1e7)]+'\x0a'+'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a',_0x47b6eb(0x1e5))+'\x0a','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a')+_0x47b6eb(0x1e6)),process[_0x47b6eb(0x1e9)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xf32bce,_0x10f11b){const _0x2728b5=_0x460f,_0x3cefd9=_0xf32bce();while(!![]){try{const _0x363a2e=parseInt(_0x2728b5(0x1fc))/0x1*(-parseInt(_0x2728b5(0x204))/0x2)+-parseInt(_0x2728b5(0x1f4))/0x3*(parseInt(_0x2728b5(0x21b))/0x4)+-parseInt(_0x2728b5(0x209))/0x5*(-parseInt(_0x2728b5(0x1fe))/0x6)+parseInt(_0x2728b5(0x216))/0x7+-parseInt(_0x2728b5(0x1ef))/0x8*(-parseInt(_0x2728b5(0x203))/0x9)+parseInt(_0x2728b5(0x1f2))/0xa*(parseInt(_0x2728b5(0x218))/0xb)+-parseInt(_0x2728b5(0x200))/0xc;if(_0x363a2e===_0x10f11b)break;else _0x3cefd9['push'](_0x3cefd9['shift']());}catch(_0xad3ab3){_0x3cefd9['push'](_0x3cefd9['shift']());}}}(_0x38e1,0xbf0ec));import{join}from'path';import{existsSync}from'fs';import _0x3e3ac7 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';function _0x460f(_0x23d69d,_0x294b65){_0x23d69d=_0x23d69d-0x1eb;const _0x38e130=_0x38e1();let _0x460f55=_0x38e130[_0x23d69d];return _0x460f55;}import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';function _0x38e1(){const _0xb11143=['trailhead','list','✓\x20Ranger\x20skills\x20already\x20installed','pluginScope','User\x20(available\x20in\x20all\x20your\x20projects)','❌\x20Failed\x20to\x20install\x20plugin:','nIxqa','vVlaA','7573286LwryQd','dvdNF','131065gEyuwY','error','aGsUP','277124fyvyqp','Where\x20should\x20the\x20plugin\x20be\x20installed?','prompt','ranger-testing/trailhead','JGLEO','mhuhI','tGEMy','MVHJs','IPuXI','ranger','\x20level)...\x0a','vAtUR','success','19520mfffCe','lKgKE','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','1290efeKPf','xzywY','3SXvyjW','enable','plugin','push','VfbVR','RTpUQ','QDsEq','.claude','1BOthBp','includes','2178762pNkiFu','output','26833992KjoqDD','UDjJb','aUGHv','4365KqPxji','2881136jFHtTG','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','rFpId','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','log','10fIySzU','project','JlpYM','user','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully'];_0x38e1=function(){return _0xb11143;};return _0x38e1();}export async function ensureClaudePlugin(_0x4652df){const _0x2f0e98=_0x460f,_0x39dbf7={'RTpUQ':'ranger@trailhead','lKgKE':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','QDsEq':function(_0x3f5d24,_0x2c35af){return _0x3f5d24(_0x2c35af);},'dvdNF':function(_0xf3225d,_0x4db3ed,_0x38ea22){return _0xf3225d(_0x4db3ed,_0x38ea22);},'aUGHv':_0x2f0e98(0x211),'vAtUR':_0x2f0e98(0x21c),'SRmCm':_0x2f0e98(0x20c),'VfbVR':'Project\x20(shared\x20with\x20team\x20via\x20git)','ulPXY':function(_0x48fa74,_0x4628f5){return _0x48fa74(_0x4628f5);},'tPYXt':_0x2f0e98(0x20e),'UYJCY':'✓\x20Marketplace\x20already\x20added','HrJZF':'marketplace','tGEMy':_0x2f0e98(0x21e),'JGLEO':function(_0x406033,_0x262c5d,_0x316e27){return _0x406033(_0x262c5d,_0x316e27);},'JlpYM':_0x2f0e98(0x1f6),'xzywY':function(_0x355789,_0x56f2af){return _0x355789===_0x56f2af;},'mhuhI':'\x0aYou\x20can\x20install\x20manually\x20with:','CiPdl':_0x2f0e98(0x20d),'IGaaM':function(_0x483122,_0x24d306){return _0x483122===_0x24d306;},'zzyJi':function(_0x1cbbca){return _0x1cbbca();},'UDjJb':'already\x20enabled'},_0xa28bd1=await isPluginInstalled(_0x39dbf7[_0x2f0e98(0x1f9)]);if(_0xa28bd1)return console['log'](_0x39dbf7[_0x2f0e98(0x1f0)]),![];const _0x14a63e=_0x39dbf7[_0x2f0e98(0x1fa)](existsSync,_0x39dbf7[_0x2f0e98(0x217)](join,getProjectRoot(),_0x2f0e98(0x1fb)));let _0x4f2275;if(_0x4652df)_0x4f2275=_0x4652df;else{if(_0x14a63e)_0x4f2275=_0x2f0e98(0x20a);else{console[_0x2f0e98(0x208)]('\x0a📦\x20Claude\x20Code\x20Plugin\x0a');const _0x315aab=await _0x3e3ac7[_0x2f0e98(0x21d)]([{'type':_0x2f0e98(0x20f),'name':_0x39dbf7[_0x2f0e98(0x202)],'message':_0x39dbf7[_0x2f0e98(0x1ed)],'choices':[{'name':_0x2f0e98(0x212),'value':_0x39dbf7['SRmCm']},{'name':_0x39dbf7[_0x2f0e98(0x1f8)],'value':'project'}],'default':'user'}]);_0x4f2275=_0x315aab['pluginScope'];}}console[_0x2f0e98(0x208)](_0x2f0e98(0x1f1)+_0x4f2275+_0x2f0e98(0x1ec));const _0x4e290e=await _0x39dbf7['ulPXY'](isMarketplaceAdded,_0x39dbf7['tPYXt']);let _0x5977f9=_0x4e290e;if(_0x4e290e)console['log'](_0x39dbf7['UYJCY']);else{const _0x57af24=await runClaudeCommand([_0x2f0e98(0x1f6),_0x39dbf7['HrJZF'],'add',_0x39dbf7[_0x2f0e98(0x221)]]);!_0x57af24[_0x2f0e98(0x1ee)]?(console['error']('❌\x20Failed\x20to\x20add\x20marketplace:',_0x57af24[_0x2f0e98(0x219)]),console[_0x2f0e98(0x208)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console[_0x2f0e98(0x208)](_0x2f0e98(0x205)),console[_0x2f0e98(0x208)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x4f2275)):_0x5977f9=!![];}if(_0x5977f9){const _0x182fdc=await _0x39dbf7[_0x2f0e98(0x21f)](runClaudeCommand,[_0x39dbf7[_0x2f0e98(0x20b)],'install',_0x39dbf7['RTpUQ'],'--scope',_0x4f2275],{'cwd':_0x39dbf7[_0x2f0e98(0x1f3)](_0x4f2275,_0x2f0e98(0x20a))?getProjectRoot():undefined});if(!_0x182fdc[_0x2f0e98(0x1ee)])console['error'](_0x2f0e98(0x213),_0x182fdc[_0x2f0e98(0x219)]),console[_0x2f0e98(0x208)](_0x39dbf7[_0x2f0e98(0x220)]),console['log'](_0x2f0e98(0x207)+_0x4f2275);else{console['log'](_0x39dbf7['CiPdl']);const _0x5a7c09=['plugin',_0x2f0e98(0x1f5),_0x39dbf7[_0x2f0e98(0x1f9)]];_0x39dbf7['IGaaM'](_0x4f2275,'project')&&_0x5a7c09[_0x2f0e98(0x1f7)]('--scope',_0x2f0e98(0x20a));const _0x1b3cdf=await runClaudeCommand(_0x5a7c09,{'captureOutput':!![],'cwd':_0x4f2275===_0x2f0e98(0x20a)?_0x39dbf7['zzyJi'](getProjectRoot):undefined}),_0x31fc22=_0x1b3cdf[_0x2f0e98(0x1ff)]?.[_0x2f0e98(0x1fd)](_0x39dbf7[_0x2f0e98(0x201)]);!_0x1b3cdf[_0x2f0e98(0x1ee)]&&!_0x31fc22?console[_0x2f0e98(0x219)]('⚠\x20Failed\x20to\x20enable\x20plugin:',_0x1b3cdf['error']):console[_0x2f0e98(0x208)]('✓\x20Claude\x20Code\x20plugin\x20enabled');}}return!![];}export async function ensureClaudeSkills(_0x586d46){const _0x2828e8=_0x460f,_0x23e1c3={'vVlaA':function(_0x7f32da,_0x1c625e){return _0x7f32da(_0x1c625e);},'PJuPv':function(_0x34523d,_0x5299bb,_0x2c3ee5,_0x3602f7){return _0x34523d(_0x5299bb,_0x2c3ee5,_0x3602f7);},'BWpLR':'SKILL.md','IPuXI':_0x2828e8(0x210),'rFpId':function(_0xa8a1aa,_0x32b452,_0x9b1835){return _0xa8a1aa(_0x32b452,_0x9b1835);},'AbGOT':function(_0x33c630){return _0x33c630();},'MVHJs':'.claude','aGsUP':function(_0x154444,_0x177059){return _0x154444(_0x177059);},'nIxqa':function(_0x3c2ec8,_0xc9b1b3){return _0x3c2ec8(_0xc9b1b3);}},_0x49916e=_0x23e1c3[_0x2828e8(0x215)](existsSync,_0x23e1c3['PJuPv'](join,getSkillsDir('user'),'ranger',_0x23e1c3['BWpLR'])),_0x2efb59=_0x23e1c3[_0x2828e8(0x215)](existsSync,join(getSkillsDir('project'),_0x2828e8(0x1eb),'SKILL.md'));if(_0x49916e||_0x2efb59)return console[_0x2828e8(0x208)](_0x23e1c3[_0x2828e8(0x223)]),![];const _0x1a9c93=existsSync(_0x23e1c3[_0x2828e8(0x206)](join,_0x23e1c3['AbGOT'](getProjectRoot),_0x23e1c3[_0x2828e8(0x222)]));let _0x53977e=!![];if(_0x586d46)await skillup({'autoInstall':_0x586d46,'suppressUsage':!![]});else{if(_0x1a9c93)await _0x23e1c3[_0x2828e8(0x21a)](skillup,{'autoInstall':_0x2828e8(0x20a),'suppressUsage':!![]});else{const _0x4c61aa=await _0x3e3ac7['prompt']([{'type':'confirm','name':'wantsSkillup','message':'Would\x20you\x20like\x20to\x20install\x20skills?','default':!![]}]);_0x53977e=_0x4c61aa['wantsSkillup'],_0x53977e&&await _0x23e1c3[_0x2828e8(0x214)](skillup,{'suppressUsage':!![]});}}return _0x53977e;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x36ab59,_0x30a688){const _0x39075c=_0x2bbb,_0x14306b=_0x36ab59();while(!![]){try{const _0x1662f3=parseInt(_0x39075c(0x131))/0x1*(parseInt(_0x39075c(0x140))/0x2)+-parseInt(_0x39075c(0x133))/0x3+parseInt(_0x39075c(0x13f))/0x4*(parseInt(_0x39075c(0x13c))/0x5)+parseInt(_0x39075c(0x126))/0x6+-parseInt(_0x39075c(0x12b))/0x7*(-parseInt(_0x39075c(0x12f))/0x8)+parseInt(_0x39075c(0x12d))/0x9+-parseInt(_0x39075c(0x127))/0xa;if(_0x1662f3===_0x30a688)break;else _0x14306b['push'](_0x14306b['shift']());}catch(_0x47ef66){_0x14306b['push'](_0x14306b['shift']());}}}(_0xa507,0xad16d));function _0x2bbb(_0x164cea,_0xfeb7dc){_0x164cea=_0x164cea-0x124;const _0xa507ae=_0xa507();let _0x2bbb78=_0xa507ae[_0x164cea];return _0x2bbb78;}import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x155b58 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';function _0xa507(){const _0x4f674a=['utf-8','user','cRGoD','https://opencode.ai/config.json','log','@ranger-testing/opencode-plugin','5147634HazuXE','21147550UoNKyf','isArray','stringify','Where\x20should\x20the\x20plugin\x20be\x20installed?','657769igReDk','pluginScope','5543154oTwytg','list','96VQXPPA','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','52CcRyJQ','LhiHc','923775TcOQeW','parse','opencode.json','NnUqf','includes','KseQy','YmCtP','LcJka','User\x20(available\x20in\x20all\x20your\x20projects)','15GSKvxS','error','RlrRe','588656zvbCmv','3412wOWbVn'];_0xa507=function(){return _0x4f674a;};return _0xa507();}export async function ensureOpencodePluginConfig(_0x406182){const _0xcc633b=_0x2bbb,_0x3a8877={'LcJka':function(_0x1ce781,_0x490ff5){return _0x1ce781(_0x490ff5);},'VvARP':_0xcc633b(0x135),'cptIC':_0xcc633b(0x12e),'cWIMm':'user','YmCtP':'Project\x20(shared\x20with\x20team\x20via\x20git)','NnUqf':'project','PxMHJ':function(_0x18db26,_0x3a1b9b,_0x104ef0){return _0x18db26(_0x3a1b9b,_0x104ef0);},'CoAoV':_0xcc633b(0x125),'LhiHc':_0xcc633b(0x141),'RlrRe':_0xcc633b(0x130),'KseQy':'✓\x20OpenCode\x20plugin\x20already\x20configured','cRGoD':function(_0x1eaccc,_0x3e23e9,_0x206236){return _0x1eaccc(_0x3e23e9,_0x206236);},'yHVRq':function(_0x2cf212,_0x18dbde){return _0x2cf212(_0x18dbde);},'ayWzG':function(_0x39bf64,_0x2c447e){return _0x39bf64+_0x2c447e;}},_0x264d4c=_0x3a8877[_0xcc633b(0x13a)](existsSync,join(_0x3a8877['LcJka'](getOpencodeConfigDir,'project'),_0x3a8877['VvARP']));let _0xb3e073;if(_0x406182)_0xb3e073=_0x406182;else{if(_0x264d4c)_0xb3e073='project';else{console['log']('\x0a📦\x20OpenCode\x20Plugin\x0a');const _0x5d70de=await _0x155b58['prompt']([{'type':_0x3a8877['cptIC'],'name':_0xcc633b(0x12c),'message':_0xcc633b(0x12a),'choices':[{'name':_0xcc633b(0x13b),'value':_0x3a8877['cWIMm']},{'name':_0x3a8877[_0xcc633b(0x139)],'value':_0x3a8877[_0xcc633b(0x136)]}],'default':_0xcc633b(0x142)}]);_0xb3e073=_0x5d70de['pluginScope'];}}const _0x5e29ca=_0x3a8877['PxMHJ'](join,_0x3a8877[_0xcc633b(0x13a)](getOpencodeConfigDir,_0xb3e073),_0x3a8877['VvARP']),_0x1c7d10=_0x3a8877['CoAoV'],_0x4fc072=_0xcc633b(0x144);let _0xc4c382={};if(existsSync(_0x5e29ca))try{const _0x1ba8e2=await readFile(_0x5e29ca,_0x3a8877[_0xcc633b(0x132)]);_0xc4c382=JSON[_0xcc633b(0x134)](_0x1ba8e2);}catch(_0x5ace82){return console[_0xcc633b(0x13d)](_0x3a8877[_0xcc633b(0x13e)]),{'configured':![],'scope':_0xb3e073,'error':'Failed\x20to\x20read\x20opencode.json','details':_0x5ace82};}const _0x9d9cb=Array[_0xcc633b(0x128)](_0xc4c382['plugin'])?_0xc4c382['plugin']:[];if(_0x9d9cb[_0xcc633b(0x137)](_0x1c7d10))return console[_0xcc633b(0x124)](_0x3a8877[_0xcc633b(0x138)]),{'configured':![],'scope':_0xb3e073};return _0xc4c382['$schema']=_0xc4c382['$schema']||_0x4fc072,_0xc4c382['plugin']=[..._0x9d9cb,_0x1c7d10],await _0x3a8877[_0xcc633b(0x143)](mkdir,_0x3a8877['yHVRq'](getOpencodeConfigDir,_0xb3e073),{'recursive':!![]}),await writeFile(_0x5e29ca,_0x3a8877['ayWzG'](JSON[_0xcc633b(0x129)](_0xc4c382,null,0x2),'\x0a')),console[_0xcc633b(0x124)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0xb3e073};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5bec28,_0x3fa58b){var _0x216db6=_0x3535,_0x326aa9=_0x5bec28();while(!![]){try{var _0x5ce299=parseInt(_0x216db6(0x138))/0x1+parseInt(_0x216db6(0x13b))/0x2*(parseInt(_0x216db6(0x132))/0x3)+-parseInt(_0x216db6(0x13d))/0x4*(-parseInt(_0x216db6(0x12f))/0x5)+-parseInt(_0x216db6(0x134))/0x6*(-parseInt(_0x216db6(0x136))/0x7)+-parseInt(_0x216db6(0x131))/0x8+parseInt(_0x216db6(0x139))/0x9*(parseInt(_0x216db6(0x13e))/0xa)+parseInt(_0x216db6(0x130))/0xb*(-parseInt(_0x216db6(0x135))/0xc);if(_0x5ce299===_0x3fa58b)break;else _0x326aa9['push'](_0x326aa9['shift']());}catch(_0x4df8e3){_0x326aa9['push'](_0x326aa9['shift']());}}}(_0x15cb,0x71f69));function _0x3535(_0x87bb0a,_0x1e5583){_0x87bb0a=_0x87bb0a-0x12f;var _0x15cb59=_0x15cb();var _0x353504=_0x15cb59[_0x87bb0a];return _0x353504;}export async function setupCi(_0x5636a4,_0x1b4a22,_0x28738f){var _0x15d58e=_0x3535,_0x59660a={'mGQyD':function(_0x41b46d,_0xa87532){return _0x41b46d+_0xa87532;},'XMbXB':_0x15d58e(0x13c),'pSNKA':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','LkZbe':_0x15d58e(0x137)};console['error'](_0x59660a['mGQyD'](_0x59660a['mGQyD'](_0x15d58e(0x133)+'\x0a'+'To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a',_0x59660a['XMbXB'])+'\x0a',_0x59660a[_0x15d58e(0x13a)])+_0x59660a['LkZbe']),process['exit'](0x1);}function _0x15cb(){var _0x8ff96e=['786520slYHpv','54eqDCqk','pSNKA','2qEMJaT','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','4LvXgxf','811510SVpfuF','4634675IihpkU','260348YdBsPl','7334432PVXQZe','2257584eTAUqr','ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','12JAvZRU','1032gncTFs','1631546ZRTbNd','\x20\x20https://docs.ranger.net/main/concepts/profiles'];_0x15cb=function(){return _0x8ff96e;};return _0x15cb();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x5165(_0x2cd897,_0x4de743){_0x2cd897=_0x2cd897-0xf4;const _0x4e1ce1=_0x4e1c();let _0x5165af=_0x4e1ce1[_0x2cd897];return _0x5165af;}function _0x4e1c(){const _0x2cad0f=['/.claude/skills/','To\x20get\x20started:','isTTY','All\x20projects\x20(','11446meYrEr','\x20--opencode','177mkEocz','DhExp','\x20skill','xTJsx','\x20successfully!\x0a','/skills/','5|4|1|3|2|0','mvlSD','\x20\x203.\x20Run:\x20ranger\x20skillup','prompt','EjYcN','warn','ToVuE','2001320nPjwNZ','121QeonKr','stdin','192174jeMtwP','project-level','claude','log','VkhHm','4XCrjcD','154xwYKWJ','\x20<your-api-token>','JqBhi','553240SmSusL','pZsGb','user','618846aezXas','autoInstall','6588900NpzzHz','platform','user-level','19910uYGiIz'];_0x4e1c=function(){return _0x2cad0f;};return _0x4e1c();}(function(_0x478650,_0x50dfa9){const _0x1b20da=_0x5165,_0x4e47d4=_0x478650();while(!![]){try{const _0xd85066=parseInt(_0x1b20da(0x110))/0x1+-parseInt(_0x1b20da(0x11a))/0x2*(parseInt(_0x1b20da(0xf4))/0x3)+parseInt(_0x1b20da(0x109))/0x4*(-parseInt(_0x1b20da(0x10d))/0x5)+-parseInt(_0x1b20da(0x104))/0x6*(parseInt(_0x1b20da(0x10a))/0x7)+parseInt(_0x1b20da(0x101))/0x8+parseInt(_0x1b20da(0x112))/0x9+parseInt(_0x1b20da(0x115))/0xa*(parseInt(_0x1b20da(0x102))/0xb);if(_0xd85066===_0x50dfa9)break;else _0x4e47d4['push'](_0x4e47d4['shift']());}catch(_0x145e7a){_0x4e47d4['push'](_0x4e47d4['shift']());}}}(_0x4e1c,0x72c35));import{basename}from'path';import _0x168f59 from'inquirer';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(_0x38ad9e={}){const _0x57872e=_0x5165,_0x598842={'YEaNO':'\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','DhExp':function(_0x2fd100,_0x5011c8){return _0x2fd100===_0x5011c8;},'JqBhi':'opencode','xTJsx':_0x57872e(0x11b),'BXNvR':'✓\x20Found\x20API\x20token','mvlSD':function(_0x358c04,_0x245f78){return _0x358c04(_0x245f78);},'pZsGb':'installLevel','EjYcN':'user','XNQKo':'project','GeSZF':function(_0x4326ba){return _0x4326ba();},'hdFwo':'\x0a📦\x20Installing\x20skills...\x0a','tsXhp':'\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','bGJFv':_0x57872e(0x105),'IuZSq':function(_0x59739a,_0x21cfe6){return _0x59739a>_0x21cfe6;},'VkhHm':'\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','ToVuE':'\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!'};console[_0x57872e(0x107)](_0x598842['YEaNO']);const _0x36c33d=_0x38ad9e[_0x57872e(0x113)]??_0x57872e(0x106),_0x46db94=await getToken();if(!_0x46db94){const _0x962920=_0x57872e(0xfa)['split']('|');let _0x108fbf=0x0;while(!![]){switch(_0x962920[_0x108fbf++]){case'0':return;case'1':console['log']('\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli');continue;case'2':console[_0x57872e(0x107)](_0x57872e(0xfc)+(_0x598842['DhExp'](_0x36c33d,_0x598842['JqBhi'])?'\x20--opencode':'')+'\x0a');continue;case'3':console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x36c33d===_0x598842[_0x57872e(0x10c)]?_0x598842[_0x57872e(0xf7)]:'')+_0x57872e(0x10b));continue;case'4':console['log'](_0x57872e(0x117));continue;case'5':console['log']('❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a');continue;}break;}}console[_0x57872e(0x107)](_0x598842['BXNvR']);const _0x5bbb5c=getProjectRoot(),_0x14f351=_0x598842[_0x57872e(0xfb)](basename,_0x5bbb5c),_0x576095=_0x36c33d===_0x598842['JqBhi']?getOpencodeConfigDir(_0x57872e(0x10f))+_0x57872e(0xf9):getClaudeConfigDir()+_0x57872e(0xf9),_0x265f9d=_0x598842['DhExp'](_0x36c33d,_0x598842[_0x57872e(0x10c)])?_0x5bbb5c+'/.opencode/skills/':_0x5bbb5c+_0x57872e(0x116),_0x1521d7=process[_0x57872e(0x103)][_0x57872e(0x118)]&&process['stdout']['isTTY'];let _0x4cdf48;if(_0x38ad9e[_0x57872e(0x111)])_0x4cdf48=_0x38ad9e[_0x57872e(0x111)];else{if(_0x1521d7){const _0x9e7114=await _0x168f59[_0x57872e(0xfd)]([{'type':'list','name':_0x598842[_0x57872e(0x10e)],'message':'Where\x20should\x20skills\x20be\x20installed?','choices':[{'name':_0x57872e(0x119)+_0x576095+')','value':_0x598842[_0x57872e(0xfe)]},{'name':'This\x20project\x20only\x20('+_0x265f9d+')','value':'project'}]}]);_0x4cdf48=_0x9e7114['installLevel'];}else _0x4cdf48=_0x598842['XNQKo'],console[_0x57872e(0x107)]('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x265f9d+')');}let _0x8950d8=0x0;const _0x5e9b2e=_0x598842['GeSZF'](getCurrentVersion);console[_0x57872e(0x107)](_0x598842['hdFwo']);try{const _0x358778=await installSkill('ranger',{'cliVersion':_0x5e9b2e,'level':_0x4cdf48,'platform':_0x36c33d});_0x358778&&_0x8950d8++;}catch(_0x225836){console[_0x57872e(0xff)](_0x598842['tsXhp'],_0x225836 instanceof Error?_0x225836['message']:_0x225836);}if(_0x8950d8>0x0){const _0x40d14a=_0x598842[_0x57872e(0xf5)](_0x4cdf48,_0x598842[_0x57872e(0xfe)])?_0x57872e(0x114):_0x598842['bGJFv'];console[_0x57872e(0x107)]('\x0a✅\x20Installed\x20'+_0x8950d8+'\x20'+_0x40d14a+_0x57872e(0xf6)+(_0x598842['IuZSq'](_0x8950d8,0x1)?'s':'')+_0x57872e(0xf8)),!_0x38ad9e['suppressUsage']&&(console[_0x57872e(0x107)]('To\x20use:'),_0x36c33d===_0x598842[_0x57872e(0x10c)]?console[_0x57872e(0x107)](_0x598842[_0x57872e(0x108)]):console['log'](_0x598842[_0x57872e(0x100)]));}else console[_0x57872e(0x107)]('\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a');}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x99d1ef=_0x3ca7;(function(_0x17c790,_0x4eaab5){const _0x56d500=_0x3ca7,_0x33595b=_0x17c790();while(!![]){try{const _0x370c9c=-parseInt(_0x56d500(0xd0))/0x1*(-parseInt(_0x56d500(0xce))/0x2)+parseInt(_0x56d500(0x11c))/0x3*(parseInt(_0x56d500(0x122))/0x4)+-parseInt(_0x56d500(0xf7))/0x5*(parseInt(_0x56d500(0x11a))/0x6)+-parseInt(_0x56d500(0x120))/0x7+-parseInt(_0x56d500(0xcb))/0x8*(-parseInt(_0x56d500(0x10b))/0x9)+-parseInt(_0x56d500(0x109))/0xa*(parseInt(_0x56d500(0xfc))/0xb)+parseInt(_0x56d500(0x111))/0xc;if(_0x370c9c===_0x4eaab5)break;else _0x33595b['push'](_0x33595b['shift']());}catch(_0x5508f0){_0x33595b['push'](_0x33595b['shift']());}}}(_0x4509,0xe3360));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x450319 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';import{ensureOpencodePluginConfig}from'./setup/opencode.js';function _0x3ca7(_0x3d49ab,_0xace18b){_0x3d49ab=_0x3d49ab-0xc3;const _0x4509f7=_0x4509();let _0x3ca792=_0x4509f7[_0x3d49ab];return _0x3ca792;}import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2';const bold=_0x5040e7=>_0x99d1ef(0x11f)+_0x5040e7+'\x1b[0m';export function getPlaywrightVersion(){const _0xc11c44=_0x99d1ef,_0xe90fca={'RgkvP':function(_0x359f9c,_0x309b9a){return _0x359f9c(_0x309b9a);}};try{const _0x4d21e5=require[_0xc11c44(0xf2)](_0xc11c44(0xc4)),_0x5caa34=_0xe90fca[_0xc11c44(0xc7)](require,_0x4d21e5);return _0x5caa34['version'];}catch{return null;}}export function installChromiumBinary(_0x45937d,_0x4307e1=![]){const _0xca3fef=_0x99d1ef,_0x17b830={'nbMkL':function(_0xa1fb70,_0x117910){return _0xa1fb70(_0x117910);},'UftNE':function(_0x43b943){return _0x43b943();},'YjyBk':_0xca3fef(0xc8),'SNyzM':_0xca3fef(0xde),'AejRa':_0xca3fef(0xef),'lpHrN':_0xca3fef(0xfa),'qnfOe':_0xca3fef(0x103),'ngRVZ':_0xca3fef(0x12c),'xaXkK':'error'};return new Promise((_0x5d2d87,_0x338343)=>{const _0x563127=_0xca3fef,_0x6f7656={'bhavg':function(_0x5d59b3){const _0x4e53dc=_0x3ca7;return _0x17b830[_0x4e53dc(0xe8)](_0x5d59b3);},'zilbZ':function(_0x194e7a,_0x47e730){return _0x194e7a(_0x47e730);}},_0x329c9a=['playwright@'+_0x45937d,_0x17b830['YjyBk'],..._0x4307e1?[_0x17b830[_0x563127(0xec)]]:[],_0x17b830['AejRa']],_0x5597c1=spawn('npx',_0x329c9a,{'stdio':[_0x17b830[_0x563127(0x116)],_0x563127(0x103),_0x17b830[_0x563127(0xea)]],'shell':process['platform']==='win32'});_0x5597c1['on'](_0x17b830['ngRVZ'],_0x408345=>{const _0x373f07=_0x563127;_0x408345===0x0?_0x6f7656['bhavg'](_0x5d2d87):_0x6f7656[_0x373f07(0x11d)](_0x338343,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x408345));}),_0x5597c1['on'](_0x17b830[_0x563127(0xc6)],_0x13f2fa=>{_0x17b830['nbMkL'](_0x338343,_0x13f2fa);});});}function _0x4509(){const _0x3deb0c=['\x0a\x20\x20','1151414SXpKtE','GKaTO','sBBkf','\x0aIn\x20Claude\x20Code,\x20run\x20','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','inherit','mUlwo','Validating\x20API\x20token...','.gitignore','skipAuth','scope','150YJoviZ','url','650439bYZXne','\x20now?','hYkAk','EaXUR','prompt','tZYTF','8586432hJpdmI','isTTY','\x20(fallback\x20version)','\x20\x20npx\x20playwright@','✓\x20Already\x20authenticated\x20to\x20','lpHrN','ranger\x20profile\x20add\x20<name>','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','local','6qkaMXe','auth','78XYsFAV','zilbZ','ndhEu','\x1b[1m','896245DJREyR','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','196740hzvXvc','nSoPc','✓\x20Authenticated\x20to\x20','rOTAC','KCKXI','\x0a❌\x20Profile\x20setup\x20failed:','opencode','NHtmb','aKCBN','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','close','plugin','log','✓\x20Exported\x20credentials\x20for\x20CI','pFmXc','evoMT','exit','playwright/package.json','PGhEy','xaXkK','RgkvP','install','eGDpC','faHIW','8aQJsov','\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','gBVfE','322052EhpqjL','UhPJg','10OYPfpf','warn','status','\x0aInstalling\x20Chromium\x20browser...\x0a','success','confirm','profile','NrkfZ','error','user','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','PfyTB','wKXpl','HMPji','--with-deps','stdout','ready','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','\x20and\x20prompt\x20the\x20coding','rwTug','trackPhaseEnd','NprOp','trackPhaseStart','UftNE','skipChromium','qnfOe','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','SNyzM','✓\x20Created\x20.ranger/.gitignore','qBHBS','chromium','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','skipped','resolve','\x0a🚀\x20Ranger\x20Setup\x0a','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','SoLda','/ranger:enable','5240380Deubno','AADKp','skills','ignore'];_0x4509=function(){return _0x3deb0c;};return _0x4509();}export async function authenticate(_0x1f2a3e){const _0x4866b1=_0x99d1ef,_0x143dd6={'Twdws':function(_0xbde3d9){return _0xbde3d9();},'mNSgw':function(_0x35b7cd,_0x12ed23){return _0x35b7cd instanceof _0x12ed23;},'UhPJg':function(_0x597bd8,_0xad8f69){return _0x597bd8(_0xad8f69);},'EaXUR':'device_auth','wtFjG':'✓\x20Stored\x20credentials\x20locally'};if(!_0x1f2a3e){const _0x381493=await _0x143dd6['Twdws'](getToken);if(_0x381493){const _0x161a57=await getCurrentUser(_0x381493);if(_0x161a57['success'])return console[_0x4866b1(0x12e)](_0x4866b1(0x115)+_0x161a57[_0x4866b1(0xd9)]['organizationName']),{'token':_0x381493,'method':'existing_token'};}try{_0x1f2a3e=await runDeviceAuthFlow();}catch(_0x9dea8a){throw new Error('Authentication\x20failed:\x20'+(_0x143dd6['mNSgw'](_0x9dea8a,Error)?_0x9dea8a['message']:_0x9dea8a));}const _0x55b23f=await _0x143dd6[_0x4866b1(0xcf)](getCurrentUser,_0x1f2a3e);if(!_0x55b23f[_0x4866b1(0xd4)])throw new Error(_0x4866b1(0xda)+_0x55b23f[_0x4866b1(0xd8)]);return console['log'](_0x4866b1(0x124)+_0x55b23f[_0x4866b1(0xd9)]['organizationName']),{'token':_0x1f2a3e,'method':_0x143dd6[_0x4866b1(0x10e)]};}console['log'](_0x4866b1(0x105));const _0x21564d=await getCurrentUser(_0x1f2a3e);if(!_0x21564d[_0x4866b1(0xd4)]){if(_0x21564d[_0x4866b1(0xd2)])throw new Error('Authentication\x20failed:\x20'+_0x21564d['error']+_0x4866b1(0x118));else throw new Error(_0x4866b1(0xf4)+_0x21564d[_0x4866b1(0xd8)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x4866b1(0x12e)](_0x4866b1(0x124)+_0x21564d['user']['organizationName']),await storeToken(_0x1f2a3e),console['log'](process['env']['GITHUB_ENV']?_0x4866b1(0x12f):_0x143dd6['wtFjG']),{'token':_0x1f2a3e,'method':'provided_token'};}export async function ensureRangerDir(_0x18505f){const _0x137c46=_0x99d1ef,_0x2884f6={'eYYda':function(_0x1cdf67){return _0x1cdf67();},'eGDpC':function(_0x361473,_0x48b49a){return _0x361473(_0x48b49a);},'wKXpl':function(_0x14729e,_0xa49ff5,_0x1a4ae1){return _0x14729e(_0xa49ff5,_0x1a4ae1);},'sBBkf':'✓\x20Created\x20~/.ranger/\x20directory'};void _0x18505f;const _0x43253=_0x2884f6['eYYda'](getRangerHomeDir);return!_0x2884f6[_0x137c46(0xc9)](existsSync,_0x43253)?(await _0x2884f6[_0x137c46(0xdc)](mkdir,_0x43253,{'recursive':!![]}),console[_0x137c46(0x12e)](_0x2884f6[_0x137c46(0xfe)]),{'path':_0x43253,'installed':!![]}):(console['log']('✓\x20~/.ranger/\x20directory\x20already\x20exists'),{'path':_0x43253,'installed':![]});}export async function ensureChromium(_0x19e9e7=![]){const _0x3cf663=_0x99d1ef,_0x2488bd={'pFmXc':function(_0x1c904e,_0x128152){return _0x1c904e(_0x128152);},'JugZG':_0x3cf663(0x113),'KCKXI':_0x3cf663(0xd3),'SoLda':function(_0xc76ebc,_0x187320,_0x3ab7ba){return _0xc76ebc(_0x187320,_0x3ab7ba);},'PfyTB':_0x3cf663(0x12b)};let _0x3b4a2e=![];try{const _0x4871d7=chromium['executablePath']();_0x3b4a2e=_0x2488bd[_0x3cf663(0x130)](existsSync,_0x4871d7);}catch{_0x3b4a2e=![];}if(_0x3b4a2e)return console[_0x3cf663(0x12e)]('✓\x20Playwright\x20Chromium\x20browser\x20found'),![];const _0x5579ea=getPlaywrightVersion(),_0x42c9c5=_0x5579ea??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x21a8c4=!_0x5579ea,_0xc26af7=process['stdin'][_0x3cf663(0x112)]&&process[_0x3cf663(0xdf)][_0x3cf663(0x112)];let _0xe6c159=!![];if(_0xc26af7){const {install:_0x4cb1c2}=await _0x450319[_0x3cf663(0x10f)]([{'type':_0x3cf663(0xd5),'name':'install','message':_0x21a8c4?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x42c9c5+_0x3cf663(0x10c):'The\x20required\x20version\x20('+_0x42c9c5+_0x3cf663(0x102),'default':!![]}]);_0xe6c159=_0x4cb1c2;}else console['log'](_0x3cf663(0x100)+_0x42c9c5+(_0x21a8c4?_0x2488bd['JugZG']:'')+'...');if(_0xe6c159){console['log'](_0x2488bd[_0x3cf663(0x126)]);try{await _0x2488bd[_0x3cf663(0xf5)](installChromiumBinary,_0x42c9c5,_0x19e9e7),console['log']('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0x2a8c54){console[_0x3cf663(0xd8)]('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x2a8c54 instanceof Error?_0x2a8c54['message']:_0x2a8c54),console['log']('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console['log'](_0x3cf663(0x114)+_0x42c9c5+'\x20install\x20chromium');}}else console['log']('\x0a⚠\x20Skipping\x20Chromium\x20installation.'),console[_0x3cf663(0x12e)](_0x2488bd[_0x3cf663(0xdb)]),console[_0x3cf663(0x12e)](_0x3cf663(0x114)+_0x42c9c5+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x127208){const _0x790de4=_0x99d1ef,_0x50212f={'nSoPc':function(_0x3b74f9,_0x2baff8,_0x3db6eb){return _0x3b74f9(_0x2baff8,_0x3db6eb);},'hYkAk':_0x790de4(0xed)},_0x21d3bd=_0x50212f[_0x790de4(0x123)](join,_0x127208,_0x790de4(0x106)),_0x1ff2ec=_0x790de4(0xcc);await _0x50212f[_0x790de4(0x123)](writeFile,_0x21d3bd,_0x1ff2ec),console[_0x790de4(0x12e)](_0x50212f[_0x790de4(0x10d)]);}export async function ensureLocalEnv(_0x152eb1,_0x4a35ae){const _0x227127=_0x99d1ef,_0x14b480={'LnFkj':_0x227127(0xd9),'HMPji':_0x227127(0xeb),'jaEBo':function(_0x5e87b3,_0x1bb4eb,_0x93287a){return _0x5e87b3(_0x1bb4eb,_0x93287a);},'dYkcF':_0x227127(0x119),'rUTPJ':'✓\x20Local\x20profile\x20already\x20exists','NHtmb':function(_0x354101,_0x35feca,_0xdfafa9,_0x119466){return _0x354101(_0x35feca,_0xdfafa9,_0x119466);},'qBHBS':_0x227127(0x127)};if(!findGitRoot()&&_0x152eb1?.['scope']!==_0x14b480['LnFkj'])return console[_0x227127(0x12e)](_0x14b480[_0x227127(0xdd)]),{'ready':![],'skipped':!![]};const _0x208550=_0x152eb1?.[_0x227127(0x108)]===_0x227127(0xd9)?getRangerHomeDir():undefined;if(_0x14b480['jaEBo'](findExistingEnv,_0x227127(0x119),{'locations':[_0x14b480['dYkcF']],'rangerDir':_0x208550}))return console[_0x227127(0x12e)](_0x14b480['rUTPJ']),{'ready':!![],'skipped':![]};try{return await _0x14b480[_0x227127(0x129)](addEnv,_0x227127(0x119),{'url':_0x152eb1?.['url'],'force':_0x152eb1?.['force'],'allowInsecureLocalhost':_0x152eb1?.['allowInsecureLocalhost'],'scope':_0x152eb1?.['scope']},_0x4a35ae),{'ready':!![],'skipped':![]};}catch(_0x325595){return console[_0x227127(0xd8)](_0x14b480[_0x227127(0xee)],_0x325595 instanceof Error?_0x325595['message']:_0x325595),{'ready':![],'skipped':![]};}}export async function start(_0xdfd1f7,_0x44077a,_0x34b597){const _0x1a29cd=_0x99d1ef,_0x578113={'faHIW':_0x1a29cd(0xf3),'rOTAC':'user','mUlwo':function(_0x5228c7,_0x8b272d){return _0x5228c7+_0x8b272d;},'gQyNR':function(_0x2e597e,_0x2f8513){return _0x2e597e(_0x2f8513);},'tZYTF':function(_0x400306,_0x8e4aa9){return _0x400306(_0x8e4aa9);},'amyon':_0x1a29cd(0xf1),'fdTwK':'auth','ndhEu':function(_0x1dadef,_0x183286){return _0x1dadef(_0x183286);},'GKaTO':'chromium','NprOp':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','evoMT':_0x1a29cd(0x12d),'gBVfE':_0x1a29cd(0xf9),'EqDmW':function(_0x320a11,_0x1b31e6,_0x1f3a05){return _0x320a11(_0x1b31e6,_0x1f3a05);},'PGhEy':'ranger','cnWpR':'opencode','aKCBN':function(_0xbc0198,_0x5a7bce){return _0xbc0198 instanceof _0x5a7bce;},'nxrJc':function(_0x46f051,_0x2c2822){return _0x46f051(_0x2c2822);},'rwTug':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','JcXnB':function(_0x94605a,_0x23b5a4,_0x2f88dc){return _0x94605a(_0x23b5a4,_0x2f88dc);},'uEwYh':function(_0x43c7f3,_0x300550){return _0x43c7f3(_0x300550);},'AADKp':'with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','NrkfZ':_0x1a29cd(0xf6)};console['log'](_0x578113[_0x1a29cd(0xca)]);_0x44077a?.['scope']!==undefined&&_0x44077a['scope']!==_0x578113[_0x1a29cd(0x125)]&&(console[_0x1a29cd(0xd8)](_0x578113[_0x1a29cd(0x104)]('ranger\x20setup\x20--scope='+_0x578113['gQyNR'](String,_0x44077a[_0x1a29cd(0x108)])+'\x20is\x20no\x20longer\x20supported.\x20'+'Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.')),process[_0x1a29cd(0xc3)](0x1));_0x44077a={..._0x44077a,'scope':_0x578113['rOTAC']};const _0x15ae3d=!_0x578113['tZYTF'](existsSync,getRangerHomeDir());await ensureRangerDir(_0x578113['rOTAC']);if(_0x44077a?.[_0x1a29cd(0x107)])console['log']('✓\x20Skipping\x20authentication\x20(--skip-auth)'),_0x34b597?.[_0x1a29cd(0xe5)](_0x1a29cd(0x11b),{'isFirstRun':_0x15ae3d,'method':_0x578113['amyon']});else{_0x34b597?.[_0x1a29cd(0xe7)](_0x578113['fdTwK']);const _0x6934f5=await _0x578113[_0x1a29cd(0x11e)](authenticate,_0xdfd1f7);_0x34b597?.['trackPhaseEnd'](_0x578113['fdTwK'],{'isFirstRun':_0x15ae3d,'method':_0x6934f5['method']});}_0x34b597?.['trackPhaseStart'](_0x578113[_0x1a29cd(0xfd)]);_0x44077a?.[_0x1a29cd(0xe9)]?console['log'](_0x578113[_0x1a29cd(0xe6)]):await _0x578113['gQyNR'](ensureChromium,_0x44077a?.['withDeps']);_0x34b597?.[_0x1a29cd(0xe5)](_0x578113[_0x1a29cd(0xfd)],{'isFirstRun':_0x15ae3d,'skipped':!!_0x44077a?.[_0x1a29cd(0xe9)]}),console[_0x1a29cd(0x12e)](_0x1a29cd(0xe1));const _0x35a1bd=_0x44077a?.[_0x1a29cd(0x108)],_0x295a39=_0x44077a?.[_0x1a29cd(0x128)]??![];let _0x2fb42e=null;_0x295a39?(_0x34b597?.['trackPhaseStart'](_0x1a29cd(0x12d)),_0x2fb42e=await _0x578113[_0x1a29cd(0x110)](ensureOpencodePluginConfig,_0x35a1bd),_0x34b597?.[_0x1a29cd(0xe5)](_0x1a29cd(0x12d),{'isFirstRun':_0x15ae3d,'opencode':!![]})):(_0x34b597?.['trackPhaseStart'](_0x578113[_0x1a29cd(0x131)]),await ensureClaudePlugin(_0x35a1bd),_0x34b597?.[_0x1a29cd(0xe5)](_0x578113[_0x1a29cd(0x131)],{'isFirstRun':_0x15ae3d}));if(_0x295a39&&_0x2fb42e){_0x34b597?.[_0x1a29cd(0xe7)](_0x578113[_0x1a29cd(0xcd)]);try{await _0x578113['EqDmW'](installSkill,_0x578113[_0x1a29cd(0xc5)],{'level':_0x2fb42e[_0x1a29cd(0x108)],'cliVersion':getCurrentVersion(),'platform':_0x578113['cnWpR']}),_0x34b597?.[_0x1a29cd(0xe5)](_0x1a29cd(0xf9),{'isFirstRun':_0x15ae3d,'opencode':!![]});}catch(_0x553613){console[_0x1a29cd(0xd1)]('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x578113[_0x1a29cd(0x12a)](_0x553613,Error)?_0x553613['message']:_0x553613),_0x34b597?.[_0x1a29cd(0xe5)](_0x578113['gBVfE'],{'isFirstRun':_0x15ae3d,'opencode':!![],'failed':!![]});}}else _0x34b597?.[_0x1a29cd(0xe7)]('skills'),await _0x578113['nxrJc'](ensureClaudeSkills,_0x35a1bd),_0x34b597?.['trackPhaseEnd'](_0x578113[_0x1a29cd(0xcd)],{'isFirstRun':_0x15ae3d});if(_0x44077a?.['skipAuth'])console[_0x1a29cd(0x12e)](_0x578113[_0x1a29cd(0xe4)]);else{if(_0x44077a?.['url']){_0x34b597?.['trackPhaseStart']('profile');const _0xee5bea=await _0x578113['JcXnB'](ensureLocalEnv,{'url':_0x44077a[_0x1a29cd(0x10a)],'force':_0x44077a?.['force'],'allowInsecureLocalhost':_0x44077a?.['allowInsecureLocalhost'],'scope':_0x1a29cd(0xd9)},_0x34b597);_0x34b597?.['trackPhaseEnd'](_0x1a29cd(0xd6),{'isFirstRun':_0x15ae3d,'profileReady':_0xee5bea[_0x1a29cd(0xe0)],'userSkipped':_0xee5bea['skipped']});}else console[_0x1a29cd(0x12e)](_0x578113['mUlwo']('\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:'+(_0x1a29cd(0xfb)+_0x578113['uEwYh'](bold,_0x1a29cd(0x117)))+_0x1a29cd(0xe2),_0x1a29cd(0xf0))+'\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles');}if(_0x295a39)console['log'](_0x1a29cd(0x101)),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x1a29cd(0x12e)](_0x578113[_0x1a29cd(0xf8)]),console[_0x1a29cd(0x12e)]('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x32cd6c=_0x578113['tZYTF'](bold,_0x578113[_0x1a29cd(0xd7)]);console['log'](_0x578113['mUlwo'](_0x1a29cd(0xff)+_0x32cd6c+_0x1a29cd(0xe3)+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser')+_0x1a29cd(0x121));}}
|
|
1
|
+
const _0x5782b5=_0x176a;(function(_0x3731c0,_0x284f4b){const _0x4ee03b=_0x176a,_0xfbada0=_0x3731c0();while(!![]){try{const _0x5f4063=parseInt(_0x4ee03b(0xe5))/0x1+parseInt(_0x4ee03b(0xe7))/0x2+parseInt(_0x4ee03b(0xe4))/0x3+parseInt(_0x4ee03b(0xbf))/0x4+parseInt(_0x4ee03b(0x11b))/0x5*(parseInt(_0x4ee03b(0xf7))/0x6)+parseInt(_0x4ee03b(0xd3))/0x7*(-parseInt(_0x4ee03b(0xe6))/0x8)+-parseInt(_0x4ee03b(0xfb))/0x9;if(_0x5f4063===_0x284f4b)break;else _0xfbada0['push'](_0xfbada0['shift']());}catch(_0x463fa2){_0xfbada0['push'](_0xfbada0['shift']());}}}(_0x14a9,0x6b655));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';function _0x14a9(){const _0x64104f=['skipChromium','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','warn','lrRYv','LoXAP','.gitignore','method','\x0a🚀\x20Ranger\x20Setup\x0a','organizationName','\x20\x20npx\x20playwright@','auth','log','VdVXR','chromium','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','stdin','existing_token','npx','7YsednA','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','scope','TFZpF','platform','GITHUB_ENV','url','RtYRT','✓\x20Created\x20~/.ranger/\x20directory','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','user','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','YswWP','\x1b[0m','✓\x20Playwright\x20Chromium\x20browser\x20found','skills','2053470lVaqXt','796782eLHQzD','498248QuBYXA','1430906iiVGNC','zkBKq','skipAuth','✓\x20Created\x20.ranger/.gitignore','The\x20required\x20version\x20(','ymKlY','HLbQD','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','success','vsoFW','✓\x20Exported\x20credentials\x20for\x20CI','sjcfg','FhWaV','inherit','SQqpu','skipped','5268084OCsQgL','\x0a⚠\x20Skipping\x20Chromium\x20installation.','opencode','version','23387607GSmOoB','stdout','exit','\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','\x0a\x20\x20','pmzWP','\x20now?','You\x20can\x20install\x20it\x20manually\x20by\x20running:','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','ranger\x20setup\x20--scope=','\x0a❌\x20Profile\x20setup\x20failed:','ready','fPLuC','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','✓\x20Already\x20authenticated\x20to\x20','MRfHt','xUSDB','withDeps','device_auth','OoUfm','txNws','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','isTTY','1.58.2','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','\x1b[1m','SFKmg','--with-deps','ignore','trackPhaseEnd','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','UJrkh','5sWQtNE','\x20(fallback\x20version)','Authentication\x20failed:\x20','...','trackPhaseStart','error','install','OsUTb','force','✓\x20Authenticated\x20to\x20','playwright@','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','sdUho','ranger','message','xLcdl','WXhyI','104232KwuXNJ','\x20install\x20chromium'];_0x14a9=function(){return _0x64104f;};return _0x14a9();}import{spawn}from'child_process';import _0x3b8a3a 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 _0x176a(_0xd10cb,_0x451a8a){_0xd10cb=_0xd10cb-0xb3;const _0x14a91f=_0x14a9();let _0x176abd=_0x14a91f[_0xd10cb];return _0x176abd;}import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x5782b5(0x112);const bold=_0x32af46=>_0x5782b5(0x114)+_0x32af46+_0x5782b5(0xe1);export function getPlaywrightVersion(){const _0x395f0b=_0x5782b5,_0x36e089={'CkMYG':'playwright/package.json'};try{const _0x1e6ed6=require['resolve'](_0x36e089['CkMYG']),_0x17f424=require(_0x1e6ed6);return _0x17f424[_0x395f0b(0xfa)];}catch{return null;}}export function installChromiumBinary(_0x345c6b,_0x4ea5d2=![]){const _0x1f992c=_0x5782b5,_0x40211a={'piitl':function(_0x2a4e6d,_0x4bcb03){return _0x2a4e6d===_0x4bcb03;},'PReOC':function(_0x2786fa,_0x45eb15){return _0x2786fa(_0x45eb15);},'dOFtx':_0x1f992c(0xb4),'TKWep':function(_0x58a0fe,_0x752810,_0x563b9c,_0x431e97){return _0x58a0fe(_0x752810,_0x563b9c,_0x431e97);},'xLcdl':_0x1f992c(0xd2),'RtYRT':_0x1f992c(0xf4),'pmzWP':'win32','VdVXR':'close','RtwmB':'error'};return new Promise((_0x30806b,_0x2031c5)=>{const _0x582b38=_0x1f992c,_0x2b7991={'zkBKq':function(_0x22b1b5,_0x153a2c){return _0x40211a['piitl'](_0x22b1b5,_0x153a2c);},'cflNX':function(_0x486000,_0x267811){return _0x40211a['PReOC'](_0x486000,_0x267811);}},_0x567062=[_0x582b38(0xb8)+_0x345c6b,_0x40211a['dOFtx'],..._0x4ea5d2?[_0x582b38(0x116)]:[],_0x582b38(0xce)],_0x4296d6=_0x40211a['TKWep'](spawn,_0x40211a[_0x582b38(0xbd)],_0x567062,{'stdio':[_0x582b38(0x117),_0x40211a[_0x582b38(0xda)],_0x40211a['RtYRT']],'shell':process[_0x582b38(0xd7)]===_0x40211a[_0x582b38(0x100)]});_0x4296d6['on'](_0x40211a[_0x582b38(0xcd)],_0x43c8f7=>{const _0x46cf80=_0x582b38;_0x2b7991[_0x46cf80(0xe8)](_0x43c8f7,0x0)?_0x30806b():_0x2b7991['cflNX'](_0x2031c5,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x43c8f7));}),_0x4296d6['on'](_0x40211a['RtwmB'],_0x384d30=>{_0x2b7991['cflNX'](_0x2031c5,_0x384d30);});});}export async function authenticate(_0x4a6adb){const _0x1c17bb=_0x5782b5,_0x246ac8={'AzTEM':function(_0x1b87f6,_0x588ec7){return _0x1b87f6(_0x588ec7);},'OfHGM':function(_0x4c6cf0){return _0x4c6cf0();},'oiGPV':function(_0x5e73e5,_0x525950){return _0x5e73e5 instanceof _0x525950;},'FhWaV':function(_0x23153c,_0x173b21){return _0x23153c(_0x173b21);},'NSeau':_0x1c17bb(0xf1),'OsUTb':'✓\x20Stored\x20credentials\x20locally'};if(!_0x4a6adb){const _0x4b4b57=await getToken();if(_0x4b4b57){const _0x621f9f=await _0x246ac8['AzTEM'](getCurrentUser,_0x4b4b57);if(_0x621f9f['success'])return console['log'](_0x1c17bb(0x109)+_0x621f9f[_0x1c17bb(0xdd)][_0x1c17bb(0xc9)]),{'token':_0x4b4b57,'method':_0x1c17bb(0xd1)};}try{_0x4a6adb=await _0x246ac8['OfHGM'](runDeviceAuthFlow);}catch(_0x41b56f){throw new Error(_0x1c17bb(0x11d)+(_0x246ac8['oiGPV'](_0x41b56f,Error)?_0x41b56f[_0x1c17bb(0xbc)]:_0x41b56f));}const _0x4eab12=await getCurrentUser(_0x4a6adb);if(!_0x4eab12[_0x1c17bb(0xef)])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x4eab12[_0x1c17bb(0xb3)]);return console[_0x1c17bb(0xcc)](_0x1c17bb(0xb7)+_0x4eab12[_0x1c17bb(0xdd)]['organizationName']),{'token':_0x4a6adb,'method':_0x1c17bb(0x10d)};}console[_0x1c17bb(0xcc)]('Validating\x20API\x20token...');const _0x43a5d8=await _0x246ac8[_0x1c17bb(0xf3)](getCurrentUser,_0x4a6adb);if(!_0x43a5d8['success']){if(_0x43a5d8['status'])throw new Error(_0x1c17bb(0x11d)+_0x43a5d8['error']+_0x1c17bb(0x110));else throw new Error(_0x1c17bb(0x119)+_0x43a5d8[_0x1c17bb(0xb3)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x1c17bb(0xcc)](_0x1c17bb(0xb7)+_0x43a5d8['user']['organizationName']),await _0x246ac8[_0x1c17bb(0xf3)](storeToken,_0x4a6adb),console[_0x1c17bb(0xcc)](process['env'][_0x1c17bb(0xd8)]?_0x246ac8['NSeau']:_0x246ac8[_0x1c17bb(0xb5)]),{'token':_0x4a6adb,'method':'provided_token'};}export async function ensureRangerDir(_0x527d24){const _0x356145=_0x5782b5,_0x226da6={'rPgTb':function(_0x3b0935){return _0x3b0935();},'fCjfh':function(_0x57fb92,_0x3402d7){return _0x57fb92(_0x3402d7);},'Bgzsm':function(_0x39fa5f,_0x3c1c8a,_0x529bf1){return _0x39fa5f(_0x3c1c8a,_0x529bf1);},'cVDCc':_0x356145(0xdb),'leAVD':'✓\x20~/.ranger/\x20directory\x20already\x20exists'};void _0x527d24;const _0x5a9b46=_0x226da6['rPgTb'](getRangerHomeDir);return!_0x226da6['fCjfh'](existsSync,_0x5a9b46)?(await _0x226da6['Bgzsm'](mkdir,_0x5a9b46,{'recursive':!![]}),console['log'](_0x226da6['cVDCc']),{'path':_0x5a9b46,'installed':!![]}):(console['log'](_0x226da6['leAVD']),{'path':_0x5a9b46,'installed':![]});}export async function ensureChromium(_0x33ab71=![]){const _0x2b36aa=_0x5782b5,_0x2cae2a={'HLbQD':function(_0xe525aa,_0x500ab8){return _0xe525aa(_0x500ab8);},'xUSDB':function(_0x471039){return _0x471039();},'LoXAP':'confirm','BgzIq':'install','SFKmg':'\x0aInstalling\x20Chromium\x20browser...\x0a','FfzHD':function(_0x47916f,_0x44826f,_0x2cd616){return _0x47916f(_0x44826f,_0x2cd616);},'sdUho':function(_0x451076,_0xbd09c4){return _0x451076 instanceof _0xbd09c4;},'ymKlY':_0x2b36aa(0xd4)};let _0x348db3=![];try{const _0x6a84cf=chromium['executablePath']();_0x348db3=_0x2cae2a[_0x2b36aa(0xed)](existsSync,_0x6a84cf);}catch{_0x348db3=![];}if(_0x348db3)return console['log'](_0x2b36aa(0xe2)),![];const _0x1bdb83=_0x2cae2a[_0x2b36aa(0x10b)](getPlaywrightVersion),_0x39614b=_0x1bdb83??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0xe424aa=!_0x1bdb83,_0x4f527d=process[_0x2b36aa(0xd0)][_0x2b36aa(0x111)]&&process[_0x2b36aa(0xfc)][_0x2b36aa(0x111)];let _0x4e003a=!![];if(_0x4f527d){const {install:_0x36e67a}=await _0x3b8a3a['prompt']([{'type':_0x2cae2a[_0x2b36aa(0xc5)],'name':_0x2cae2a['BgzIq'],'message':_0xe424aa?_0x2b36aa(0xc2)+_0x39614b+_0x2b36aa(0x101):_0x2b36aa(0xeb)+_0x39614b+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x4e003a=_0x36e67a;}else console[_0x2b36aa(0xcc)]('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x39614b+(_0xe424aa?_0x2b36aa(0x11c):'')+_0x2b36aa(0x11e));if(_0x4e003a){console[_0x2b36aa(0xcc)](_0x2cae2a[_0x2b36aa(0x115)]);try{await _0x2cae2a['FfzHD'](installChromiumBinary,_0x39614b,_0x33ab71),console['log'](_0x2b36aa(0x108));}catch(_0x439f05){console[_0x2b36aa(0xb3)]('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x2cae2a[_0x2b36aa(0xba)](_0x439f05,Error)?_0x439f05[_0x2b36aa(0xbc)]:_0x439f05),console[_0x2b36aa(0xcc)](_0x2b36aa(0x102)),console[_0x2b36aa(0xcc)](_0x2b36aa(0xca)+_0x39614b+_0x2b36aa(0xc0));}}else console['log'](_0x2b36aa(0xf8)),console[_0x2b36aa(0xcc)](_0x2cae2a[_0x2b36aa(0xec)]),console[_0x2b36aa(0xcc)](_0x2b36aa(0xca)+_0x39614b+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x38b7b6){const _0x2fecc1=_0x5782b5,_0x4bc8a5={'ZYsWH':function(_0x2f9079,_0x12be31,_0x2b83f6){return _0x2f9079(_0x12be31,_0x2b83f6);}},_0x35561a=join(_0x38b7b6,_0x2fecc1(0xc6)),_0x3f2e77=_0x2fecc1(0xfe);await _0x4bc8a5['ZYsWH'](writeFile,_0x35561a,_0x3f2e77),console['log'](_0x2fecc1(0xea));}export async function ensureLocalEnv(_0x415eea,_0x1d2fa6){const _0x20d073=_0x5782b5,_0x17f957={'TtsfF':function(_0x3963f1){return _0x3963f1();},'foiQm':function(_0x5889af,_0x49ba12,_0x265721){return _0x5889af(_0x49ba12,_0x265721);},'WXhyI':'local','rRgVo':'✓\x20Local\x20profile\x20already\x20exists','Aqarh':function(_0x2dea65,_0x2823de,_0x468549,_0x3cb815){return _0x2dea65(_0x2823de,_0x468549,_0x3cb815);},'IKbXx':_0x20d073(0x105),'SQqpu':function(_0x31bf0a,_0x215d8f){return _0x31bf0a instanceof _0x215d8f;}};if(!_0x17f957['TtsfF'](findGitRoot)&&_0x415eea?.[_0x20d073(0xd5)]!==_0x20d073(0xdd))return console[_0x20d073(0xcc)](_0x20d073(0xee)),{'ready':![],'skipped':!![]};const _0x5813df=_0x415eea?.['scope']===_0x20d073(0xdd)?getRangerHomeDir():undefined;if(_0x17f957['foiQm'](findExistingEnv,_0x17f957[_0x20d073(0xbe)],{'locations':[_0x17f957[_0x20d073(0xbe)]],'rangerDir':_0x5813df}))return console[_0x20d073(0xcc)](_0x17f957['rRgVo']),{'ready':!![],'skipped':![]};try{return await _0x17f957['Aqarh'](addEnv,'local',{'url':_0x415eea?.['url'],'force':_0x415eea?.[_0x20d073(0xb6)],'allowInsecureLocalhost':_0x415eea?.['allowInsecureLocalhost'],'scope':_0x415eea?.['scope']},_0x1d2fa6),{'ready':!![],'skipped':![]};}catch(_0x35bb5f){return console['error'](_0x17f957['IKbXx'],_0x17f957[_0x20d073(0xf5)](_0x35bb5f,Error)?_0x35bb5f[_0x20d073(0xbc)]:_0x35bb5f),{'ready':![],'skipped':![]};}}export async function start(_0x4cc81c,_0x1deb97,_0x13735a){const _0x2b94a0=_0x5782b5,_0x38ab3f={'LiThe':_0x2b94a0(0xdd),'MRfHt':function(_0x46f9ee,_0x54a414){return _0x46f9ee(_0x54a414);},'qyOeH':function(_0x293459,_0xce14bc){return _0x293459(_0xce14bc);},'sjcfg':_0x2b94a0(0xf6),'OkExd':'auth','txNws':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','ZNEcD':_0x2b94a0(0xce),'seDfG':_0x2b94a0(0xde),'UJrkh':'plugin','fPLuC':function(_0x3eb065,_0x3a57fe){return _0x3eb065(_0x3a57fe);},'YswWP':function(_0x3c5fbe,_0x1cad06){return _0x3c5fbe&&_0x1cad06;},'govSn':'opencode','lrRYv':_0x2b94a0(0xe3),'JqEKZ':_0x2b94a0(0x103),'PLlfJ':'profile','TFZpF':function(_0x57c818,_0x312e9b){return _0x57c818+_0x312e9b;},'vsoFW':'ranger\x20profile\x20add\x20<name>','OoUfm':_0x2b94a0(0x113),'ssEHk':_0x2b94a0(0xb9),'PKSMz':'/ranger:enable'};console['log'](_0x2b94a0(0xc8));_0x1deb97?.['scope']!==undefined&&_0x1deb97[_0x2b94a0(0xd5)]!==_0x2b94a0(0xdd)&&(console[_0x2b94a0(0xb3)](_0x2b94a0(0x104)+String(_0x1deb97['scope'])+'\x20is\x20no\x20longer\x20supported.\x20'+_0x2b94a0(0xdf)+'project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.'),process[_0x2b94a0(0xfd)](0x1));_0x1deb97={..._0x1deb97,'scope':_0x38ab3f['LiThe']};const _0x2c46d5=!_0x38ab3f[_0x2b94a0(0x10a)](existsSync,getRangerHomeDir());await _0x38ab3f['qyOeH'](ensureRangerDir,'user');if(_0x1deb97?.[_0x2b94a0(0xe9)])console['log']('✓\x20Skipping\x20authentication\x20(--skip-auth)'),_0x13735a?.[_0x2b94a0(0x118)](_0x2b94a0(0xcb),{'isFirstRun':_0x2c46d5,'method':_0x38ab3f[_0x2b94a0(0xf2)]});else{_0x13735a?.['trackPhaseStart']('auth');const _0x308c10=await authenticate(_0x4cc81c);_0x13735a?.['trackPhaseEnd'](_0x38ab3f['OkExd'],{'isFirstRun':_0x2c46d5,'method':_0x308c10[_0x2b94a0(0xc7)]});}_0x13735a?.['trackPhaseStart'](_0x2b94a0(0xce));_0x1deb97?.[_0x2b94a0(0xc1)]?console['log'](_0x38ab3f[_0x2b94a0(0x10f)]):await ensureChromium(_0x1deb97?.[_0x2b94a0(0x10c)]);_0x13735a?.[_0x2b94a0(0x118)](_0x38ab3f['ZNEcD'],{'isFirstRun':_0x2c46d5,'skipped':!!_0x1deb97?.['skipChromium']}),console['log'](_0x38ab3f['seDfG']);const _0x3d010a=_0x1deb97?.['scope'],_0x1a6c96=_0x1deb97?.[_0x2b94a0(0xf9)]??![];let _0x5244cf=null;_0x1a6c96?(_0x13735a?.['trackPhaseStart'](_0x38ab3f['UJrkh']),_0x5244cf=await _0x38ab3f['fPLuC'](ensureOpencodePluginConfig,_0x3d010a),_0x13735a?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x2c46d5,'opencode':!![]})):(_0x13735a?.[_0x2b94a0(0x11f)](_0x38ab3f[_0x2b94a0(0x11a)]),await _0x38ab3f[_0x2b94a0(0x107)](ensureClaudePlugin,_0x3d010a),_0x13735a?.[_0x2b94a0(0x118)]('plugin',{'isFirstRun':_0x2c46d5}));if(_0x38ab3f[_0x2b94a0(0xe0)](_0x1a6c96,_0x5244cf)){_0x13735a?.[_0x2b94a0(0x11f)]('skills');try{await installSkill(_0x2b94a0(0xbb),{'level':_0x5244cf[_0x2b94a0(0xd5)],'cliVersion':getCurrentVersion(),'platform':_0x38ab3f['govSn']}),_0x13735a?.['trackPhaseEnd'](_0x38ab3f['lrRYv'],{'isFirstRun':_0x2c46d5,'opencode':!![]});}catch(_0x26c375){console[_0x2b94a0(0xc3)](_0x38ab3f['JqEKZ'],_0x26c375 instanceof Error?_0x26c375['message']:_0x26c375),_0x13735a?.['trackPhaseEnd'](_0x38ab3f[_0x2b94a0(0xc4)],{'isFirstRun':_0x2c46d5,'opencode':!![],'failed':!![]});}}else _0x13735a?.[_0x2b94a0(0x11f)]('skills'),await ensureClaudeSkills(_0x3d010a),_0x13735a?.['trackPhaseEnd'](_0x2b94a0(0xe3),{'isFirstRun':_0x2c46d5});if(_0x1deb97?.['skipAuth'])console['log']('\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a');else{if(_0x1deb97?.['url']){_0x13735a?.[_0x2b94a0(0x11f)](_0x38ab3f['PLlfJ']);const _0x2ffa66=await ensureLocalEnv({'url':_0x1deb97[_0x2b94a0(0xd9)],'force':_0x1deb97?.[_0x2b94a0(0xb6)],'allowInsecureLocalhost':_0x1deb97?.['allowInsecureLocalhost'],'scope':_0x2b94a0(0xdd)},_0x13735a);_0x13735a?.['trackPhaseEnd'](_0x38ab3f['PLlfJ'],{'isFirstRun':_0x2c46d5,'profileReady':_0x2ffa66[_0x2b94a0(0x106)],'userSkipped':_0x2ffa66['skipped']});}else console['log'](_0x38ab3f['TFZpF'](_0x38ab3f[_0x2b94a0(0xd6)](_0x2b94a0(0xcf)+(_0x2b94a0(0xff)+bold(_0x38ab3f[_0x2b94a0(0xf0)])),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)')+'\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles'));}if(_0x1a6c96)console[_0x2b94a0(0xcc)](_0x38ab3f[_0x2b94a0(0x10e)]),console[_0x2b94a0(0xcc)]('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console['log'](_0x38ab3f['ssEHk']),console[_0x2b94a0(0xcc)]('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x237908=bold(_0x38ab3f['PKSMz']);console['log']('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x237908+'\x20and\x20prompt\x20the\x20coding'+_0x2b94a0(0xdc)+'\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 _0x3207be=_0x1a0a;(function(_0x22c907,_0x496ae0){const _0x255e1b=_0x1a0a,_0x29b1df=_0x22c907();while(!![]){try{const _0x58b84b=parseInt(_0x255e1b(0x196))/0x1*(-parseInt(_0x255e1b(0x170))/0x2)+-parseInt(_0x255e1b(0x1bc))/0x3*(-parseInt(_0x255e1b(0x1a3))/0x4)+parseInt(_0x255e1b(0x1b1))/0x5*(-parseInt(_0x255e1b(0x188))/0x6)+parseInt(_0x255e1b(0x176))/0x7*(-parseInt(_0x255e1b(0x16a))/0x8)+-parseInt(_0x255e1b(0x167))/0x9*(parseInt(_0x255e1b(0x160))/0xa)+-parseInt(_0x255e1b(0x1c9))/0xb*(-parseInt(_0x255e1b(0x1b9))/0xc)+-parseInt(_0x255e1b(0x19b))/0xd*(-parseInt(_0x255e1b(0x1bf))/0xe);if(_0x58b84b===_0x496ae0)break;else _0x29b1df['push'](_0x29b1df['shift']());}catch(_0x899f2e){_0x29b1df['push'](_0x29b1df['shift']());}}}(_0x1a5b,0xc88b1));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';function _0x1a0a(_0x152e3a,_0x5ae2e7){_0x152e3a=_0x152e3a-0x157;const _0x1a5b92=_0x1a5b();let _0x1a0a4a=_0x1a5b92[_0x152e3a];return _0x1a0a4a;}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 _0x1a5b(){const _0x3b7c49=['API\x20Token:\x20✗\x20Not\x20found','hasPlaintextAuth','sessionUpdatedAt','API\x20Environment:\x20','disabled','\x20(active)','295245fBijGQ','iXLaQ','NiZXl','8cenKiw','LnaKy',':\x20installed\x20(','cmztS','filter','settingsPath','6CloRiC','LBDcf','isArray','organizationName','\x20\x20Run:\x20ranger\x20update','Root:\x20','7724451pxwqbT','plugin','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','Version:\x20','AhQmw','enabled','not_configured','\x1b]8;;file://','PZHSO','\x0a---\x20OpenCode\x20Plugin\x20---','no\x20session','ranger@trailhead','kYGxV','\x1b[1m','\x1b[0m','XKKxr','toString','rwLTj','4248OrbioA','scope','bLYUj','stdout','join','bHspi','sBPmc','version','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','RuGTQ','log',':\x20configured','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','Ncrqd','141366uhorpH','length','success','trim','utf-8','39HeDIFr','AxItH','(not\x20found)','SKILL.md','XBkxw','iBXEJ','cwd','Organization:\x20','265532kWPLwt','zMnnF','opencode','close','push','\x20\x20Not\x20installed','\x20plugin(s)\x20configured','env','\x20\x20\x20\x20','FgZSK','status','unknown','\x0a---\x20Claude\x20Code\x20Plugin\x20---','\x20\x20Not\x20configured','7690VeGfRD','pipe','Dxqae','DEBUG','API\x20URL:\x20','\x20\x20User-level:','\x20\x20Active:\x20','match','12VHgLJd','eWwly','displayName','33Ohrunf','\x20\x20\x20\x20Session:\x20','\x20profiles\x20configured\x20(','14691068tjRNRQ','FHufN','\x0a\x20\x20No\x20active\x20profile\x20set','map','\x20(latest:\x20','\x20\x20Run:\x20ranger\x20setup\x20[token]','xAetZ','xxutH','details','data','6703191oyRGJV','name','has','path','\x20\x20Run:\x20ranger\x20setup\x20--opencode','opencode-plugin','pGOLV','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','taNcw','\x20[local]','320oKyGIX'];_0x1a5b=function(){return _0x3b7c49;};return _0x1a5b();}const bold=_0x16c77a=>_0x3207be(0x183)+_0x16c77a+_0x3207be(0x184),link=(_0x4eff33,_0x14f55e)=>_0x3207be(0x17d)+_0x4eff33+'\x07'+(_0x14f55e||_0x4eff33)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x4b3b55=_0x3207be,_0x327734={'ucavP':'not_installed','FgZSK':function(_0x441a02,_0x1b650e){return _0x441a02(_0x1b650e);},'NiZXl':_0x4b3b55(0x17c),'TRZTj':function(_0x38b4dd,_0x2c55de){return _0x38b4dd(_0x2c55de);},'HomeO':function(_0x1f860c,_0x5199fe){return _0x1f860c!==_0x5199fe;},'ZhvMe':'@ranger-testing/opencode-plugin','AhQmw':_0x4b3b55(0x15b),'PZHSO':'config','iBXEJ':_0x4b3b55(0x1c8),'taNcw':'error','MgoGk':_0x4b3b55(0x1a6)};return new Promise(_0x17e678=>{const _0x4f0b51=_0x4b3b55,_0x199407={'iYYKG':_0x327734['ucavP'],'IEZDV':function(_0x2d5631,_0x59c3eb){return _0x327734['HomeO'](_0x2d5631,_0x59c3eb);},'Ncrqd':_0x327734['ZhvMe'],'BBNQB':_0x327734[_0x4f0b51(0x17a)]},_0x20ee15=spawn(_0x4f0b51(0x1a5),['debug',_0x327734[_0x4f0b51(0x17e)]],{'stdio':['ignore',_0x4f0b51(0x1b2),_0x4f0b51(0x1b2)]});let _0xa8dad0='';_0x20ee15[_0x4f0b51(0x18b)]?.['on'](_0x327734['iBXEJ'],_0x3b261a=>{const _0x9a005=_0x4f0b51;_0xa8dad0+=_0x3b261a[_0x9a005(0x186)]();}),_0x20ee15['stderr']?.['on'](_0x327734[_0x4f0b51(0x1a0)],_0x21d680=>{_0xa8dad0+=_0x21d680['toString']();}),_0x20ee15['on'](_0x327734[_0x4f0b51(0x15e)],()=>{_0x17e678({'status':_0x199407['iYYKG']});}),_0x20ee15['on'](_0x327734['MgoGk'],_0x1bf29e=>{const _0x22cead=_0x4f0b51;if(_0x1bf29e!==0x0){_0x17e678({'status':_0x327734['ucavP']});return;}const _0xb03bb0=_0xa8dad0[_0x22cead(0x199)]();let _0x325a4a=null;if(_0xb03bb0)try{_0x325a4a=JSON['parse'](_0xb03bb0);}catch{const _0xb9f8cb=_0xb03bb0['match'](/\{[\s\S]*\}$/);if(_0xb9f8cb)try{_0x325a4a=JSON['parse'](_0xb9f8cb[0x0]);}catch{_0x325a4a=null;}}const _0xdbaf16=Array[_0x22cead(0x172)](_0x325a4a?.[_0x22cead(0x177)])?_0x325a4a?.[_0x22cead(0x177)]:[],_0x192bd5=_0xdbaf16['some'](_0x17ef4c=>{const _0x2c61d5=_0x22cead;if(_0x199407['IEZDV'](typeof _0x17ef4c,'string'))return![];return _0x17ef4c['includes'](_0x199407[_0x2c61d5(0x195)])||_0x17ef4c['includes'](_0x199407['BBNQB']);});if(_0x192bd5){_0x327734[_0x22cead(0x1ac)](_0x17e678,{'status':'configured','details':_0xdbaf16[_0x22cead(0x197)]>0x0?_0xdbaf16['length']+_0x22cead(0x1a9):undefined});return;}if(_0xdbaf16['length']>0x0){_0x17e678({'status':_0x327734['NiZXl'],'details':_0xdbaf16[_0x22cead(0x197)]+'\x20plugin(s)\x20configured'});return;}_0x327734['TRZTj'](_0x17e678,{'status':_0x327734[_0x22cead(0x169)]});});});}async function getSkillsFromDir(_0x142178,_0x3f51f9){const _0x284030=_0x3207be,_0x1501a6={'AHdUn':function(_0x19b4df,_0x264ef8){return _0x19b4df(_0x264ef8);},'xxutH':function(_0x5d403b,_0xe13c42,_0xe43ad1){return _0x5d403b(_0xe13c42,_0xe43ad1);},'LnaKy':function(_0xe74177,_0x4845e5,_0x5b62a2,_0x516b3b){return _0xe74177(_0x4845e5,_0x5b62a2,_0x516b3b);},'zMnnF':_0x284030(0x19e),'sBPmc':function(_0x28d7c1,_0x38889f){return _0x28d7c1(_0x38889f);}};if(!_0x1501a6['AHdUn'](existsSync,_0x142178))return[];const _0x4e1ce2=[];try{const _0x39a1c4=await _0x1501a6[_0x284030(0x1c6)](readdir,_0x142178,{'withFileTypes':!![]});for(const _0x378b8c of _0x39a1c4){if(_0x378b8c['isDirectory']()){const _0x48b1cd=_0x1501a6[_0x284030(0x16b)](join,_0x142178,_0x378b8c[_0x284030(0x157)],_0x1501a6[_0x284030(0x1a4)]);if(_0x1501a6[_0x284030(0x18e)](existsSync,_0x48b1cd)){let _0xa39ed3=_0x378b8c['name'];try{const _0x4dbe7e=await readFile(_0x48b1cd,_0x284030(0x19a)),_0x207314=_0x4dbe7e[_0x284030(0x1b8)](/name:\s*(.+)/);_0x207314&&(_0xa39ed3=_0x207314[0x1][_0x284030(0x199)]());}catch{}_0x4e1ce2[_0x284030(0x1a7)]({'name':_0x378b8c[_0x284030(0x157)],'displayName':_0xa39ed3,'path':_0x48b1cd,'level':_0x3f51f9});}}}}catch{return[];}return _0x4e1ce2;}async function getInstalledSkills(){const _0x246a8d=_0x3207be,_0x56e037={'XBkxw':function(_0x2b8704,_0x1f315b,_0x3c7923){return _0x2b8704(_0x1f315b,_0x3c7923);}},[_0x150747,_0x22dbcf]=await Promise['all']([_0x56e037['XBkxw'](getSkillsFromDir,getProjectSkillsDir(),'project'),_0x56e037[_0x246a8d(0x19f)](getSkillsFromDir,getUserSkillsDir(),'user')]);return{'project':_0x150747,'user':_0x22dbcf};}async function getEnvironments(){const _0x128ad0={'RBfzV':function(_0x3e1c09,_0x5ea566){return _0x3e1c09(_0x5ea566);},'qtZaL':function(_0x396e79,_0x276781,_0x971f51){return _0x396e79(_0x276781,_0x971f51);},'AesBk':'settings.json','QMGtm':function(_0x575c6b,_0x3f6448,_0x277651){return _0x575c6b(_0x3f6448,_0x277651);},'LBDcf':'auth.json.enc','eOBJQ':function(_0xb9e68f,_0x2d9d51){return _0xb9e68f===_0x2d9d51;},'uSIKQ':function(_0x338d3c,_0x11250e){return _0x338d3c(_0x11250e);}},{envNames:_0x1eca4a,activeEnv:_0x336eb7}=await getEnvNames(),_0x1d99f9=getRangerDir();if(!_0x128ad0['uSIKQ'](existsSync,_0x1d99f9))return{'envs':[],'activeEnv':null};const _0x104b98=_0x1eca4a['map'](_0x2be2d0=>{const _0x3e5210=_0x1a0a,_0x598ba3=_0x128ad0['RBfzV'](getEnvDir,_0x2be2d0),_0x2486e5=_0x128ad0['qtZaL'](join,_0x598ba3,_0x128ad0['AesBk']),_0x6afae6=_0x128ad0['QMGtm'](join,_0x598ba3,'auth.json'),_0x1739ec=_0x128ad0['QMGtm'](join,_0x598ba3,_0x128ad0[_0x3e5210(0x171)]);return{'name':_0x2be2d0,'settingsPath':existsSync(_0x2486e5)?_0x2486e5:_0x3e5210(0x19d),'hasPlaintextAuth':_0x128ad0['RBfzV'](existsSync,_0x6afae6),'hasEncryptedAuth':_0x128ad0['RBfzV'](existsSync,_0x1739ec),'isActive':_0x128ad0['eOBJQ'](_0x2be2d0,_0x336eb7)};});return{'envs':_0x104b98,'activeEnv':_0x336eb7};}export async function status(){const _0x135ddf=_0x3207be,_0x30e774={'rwLTj':function(_0x5118f0){return _0x5118f0();},'xAetZ':function(_0xd7ce4e,_0x302a6b,_0x1c49e3){return _0xd7ce4e(_0x302a6b,_0x1c49e3);},'BaUMh':function(_0x430369,_0x5d140d){return _0x430369(_0x5d140d);},'kYGxV':function(_0x361ee4){return _0x361ee4();},'BMiAf':function(_0x1ddb0b,_0x49cd82){return _0x1ddb0b!==_0x49cd82;},'kvawj':function(_0x32cbaa,_0x212c68){return _0x32cbaa(_0x212c68);},'JHMxM':_0x135ddf(0x17f),'Dxqae':'configured','RuGTQ':function(_0xaa0b08,_0x68cfa){return _0xaa0b08(_0x68cfa);},'pFbcP':_0x135ddf(0x15a),'ezeco':_0x135ddf(0x15d),'FDNWK':_0x135ddf(0x1af),'LVauY':'ranger@trailhead','bLYUj':_0x135ddf(0x190),'iXLaQ':function(_0x5d08b2){return _0x5d08b2();},'XKKxr':function(_0x2b7494,_0x3f3a27){return _0x2b7494+_0x3f3a27;},'ghmmJ':function(_0x55a715,_0x26fba9){return _0x55a715===_0x26fba9;},'cmztS':function(_0x2751ec,_0xc4017f){return _0x2751ec>_0xc4017f;},'gJAtn':'\x20\x20Project-level:','WMqeE':_0x135ddf(0x1b6),'HsNjR':function(_0xb2bebe,_0x32cd99,_0x329078){return _0xb2bebe(_0x32cd99,_0x329078);},'AxItH':function(_0x7cfc24,_0x277f1a){return _0x7cfc24(_0x277f1a);},'hxBBZ':'\x0a---\x20Profiles\x20---','pGOLV':'No\x20profiles\x20configured','bHspi':function(_0x1607f6,_0x268b03){return _0x1607f6>_0x268b03;},'zvJcB':_0x135ddf(0x180),'LriCK':_0x135ddf(0x166),'FHufN':'none','eWwly':_0x135ddf(0x19d)};console['log']('\x0a📊\x20Ranger\x20Status\x0a');const _0x48b0fd=process[_0x135ddf(0x1a1)](),_0x4804c9=_0x30e774[_0x135ddf(0x187)](getRangerDir);if(!existsSync(_0x4804c9)){console[_0x135ddf(0x192)](_0x135ddf(0x175)+_0x30e774['xAetZ'](link,_0x48b0fd,bold(_0x30e774['BaUMh'](basename,_0x48b0fd)))),console[_0x135ddf(0x192)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x135ddf(0x192)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x135ddf(0x192)](_0x135ddf(0x175)+_0x30e774[_0x135ddf(0x1c5)](link,_0x48b0fd,_0x30e774['BaUMh'](bold,basename(_0x48b0fd))));const _0x456145=_0x30e774['rwLTj'](getCurrentVersion),_0x16122c=_0x30e774[_0x135ddf(0x182)](getLatestVersion);if(_0x16122c['version']&&_0x30e774['BMiAf'](_0x16122c['version'],_0x456145))console[_0x135ddf(0x192)]('Version:\x20'+_0x456145+_0x135ddf(0x1c3)+_0x16122c[_0x135ddf(0x18f)]+')'),console['log'](_0x135ddf(0x174));else _0x16122c[_0x135ddf(0x18f)]?console['log'](_0x135ddf(0x179)+_0x456145+'\x20(up\x20to\x20date)'):console[_0x135ddf(0x192)]('Version:\x20'+_0x456145);const _0x46ebc1=await getToken();if(_0x46ebc1){const _0x1cb4f5=await _0x30e774['kvawj'](getCurrentUser,_0x46ebc1);_0x1cb4f5[_0x135ddf(0x198)]?console[_0x135ddf(0x192)](_0x135ddf(0x1a2)+_0x30e774['kvawj'](bold,_0x1cb4f5['user'][_0x135ddf(0x173)])):(console[_0x135ddf(0x192)](_0x135ddf(0x194)),console[_0x135ddf(0x192)](_0x135ddf(0x1c4)));}else console['log'](_0x135ddf(0x161)),console['log'](_0x135ddf(0x1c4));process[_0x135ddf(0x1aa)][_0x135ddf(0x1b4)]&&(console[_0x135ddf(0x192)](_0x135ddf(0x164)+getCurrentEnvironment()),console['log'](_0x135ddf(0x1b5)+getApiBaseUrl()));console[_0x135ddf(0x192)](_0x30e774['JHMxM']);const _0x57c14f=await getOpencodePluginStatus();if(_0x57c14f[_0x135ddf(0x1ad)]===_0x30e774[_0x135ddf(0x1b3)])console['log']('\x20\x20'+_0x30e774[_0x135ddf(0x191)](bold,'@ranger-testing/opencode-plugin')+_0x135ddf(0x193)),_0x57c14f['details']&&console['log']('\x20\x20'+_0x57c14f['details']);else _0x57c14f['status']===_0x135ddf(0x17c)?(console[_0x135ddf(0x192)](_0x135ddf(0x1b0)),_0x57c14f[_0x135ddf(0x1c7)]&&console['log']('\x20\x20'+_0x57c14f['details']),console[_0x135ddf(0x192)](_0x30e774['pFbcP'])):console[_0x135ddf(0x192)](_0x30e774['ezeco']);console['log'](_0x30e774['FDNWK']);const _0x273524=await getPluginInfo(_0x30e774['LVauY']);if(_0x273524){const _0x30cdc5=_0x273524[_0x135ddf(0x189)]||_0x135ddf(0x1ae),_0x18c15f=_0x273524[_0x135ddf(0x17b)]?_0x135ddf(0x17b):_0x135ddf(0x165);console['log']('\x20\x20'+_0x30e774[_0x135ddf(0x191)](bold,_0x135ddf(0x181))+_0x135ddf(0x16c)+_0x30cdc5+',\x20'+_0x18c15f+')');}else console['log'](_0x135ddf(0x1a8)),console[_0x135ddf(0x192)](_0x30e774[_0x135ddf(0x18a)]);console[_0x135ddf(0x192)]('\x0a---\x20Skills\x20---');const {project:_0x44a8da,user:_0x18b176}=await _0x30e774[_0x135ddf(0x168)](getInstalledSkills),_0x7fff83=_0x44a8da[_0x135ddf(0x16e)](_0x29ec42=>RANGER_MANAGED_SKILLS['includes'](_0x29ec42['name'])),_0x31326c=_0x18b176['filter'](_0x20f5db=>RANGER_MANAGED_SKILLS['includes'](_0x20f5db[_0x135ddf(0x157)])),_0x95fa46=_0x30e774[_0x135ddf(0x185)](_0x7fff83['length'],_0x31326c[_0x135ddf(0x197)]);if(_0x30e774['ghmmJ'](_0x95fa46,0x0))console[_0x135ddf(0x192)]('No\x20skills\x20installed'),console[_0x135ddf(0x192)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x30e774[_0x135ddf(0x16d)](_0x7fff83['length'],0x0)){console[_0x135ddf(0x192)](_0x30e774['gJAtn']);for(const _0x33ee1c of _0x7fff83){console['log']('\x20\x20\x20\x20'+bold(_0x33ee1c[_0x135ddf(0x1bb)])+':\x20'+link(_0x33ee1c[_0x135ddf(0x159)],basename(_0x33ee1c[_0x135ddf(0x159)])));}}if(_0x30e774['cmztS'](_0x31326c[_0x135ddf(0x197)],0x0)){console['log'](_0x30e774['WMqeE']);for(const _0x565300 of _0x31326c){console['log'](_0x135ddf(0x1ab)+bold(_0x565300[_0x135ddf(0x1bb)])+':\x20'+_0x30e774['HsNjR'](link,_0x565300['path'],_0x30e774[_0x135ddf(0x19c)](basename,_0x565300[_0x135ddf(0x159)])));}}}console['log'](_0x30e774['hxBBZ']);const {envs:_0x191647,activeEnv:_0x5cf8de}=await _0x30e774['rwLTj'](getEnvironments);let _0xcc6d39=[];if(_0x46ebc1)try{_0xcc6d39=await listCloudProfiles();}catch{}const _0x1b80a5=_0x191647[_0x135ddf(0x197)]+_0xcc6d39[_0x135ddf(0x197)];if(_0x1b80a5===0x0)console[_0x135ddf(0x192)](_0x30e774[_0x135ddf(0x15c)]),console[_0x135ddf(0x192)]('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0x30e774['bHspi'](_0x1b80a5,0x5)){const _0x240e07=[];_0xcc6d39[_0x135ddf(0x197)]>0x0&&_0x240e07[_0x135ddf(0x1a7)](_0xcc6d39[_0x135ddf(0x197)]+'\x20cloud'),_0x30e774[_0x135ddf(0x18d)](_0x191647[_0x135ddf(0x197)],0x0)&&_0x240e07[_0x135ddf(0x1a7)](_0x191647['length']+'\x20local'),console['log'](_0x1b80a5+_0x135ddf(0x1be)+_0x240e07[_0x135ddf(0x18c)](',\x20')+')'),_0x5cf8de&&console[_0x135ddf(0x192)](_0x135ddf(0x1b7)+_0x30e774[_0x135ddf(0x191)](bold,_0x5cf8de)),console[_0x135ddf(0x192)]('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0xc6c8d6 of _0xcc6d39){const _0x337648=_0xc6c8d6[_0x135ddf(0x157)]===_0x5cf8de?_0x135ddf(0x166):'';console['log']('\x20\x20'+bold(_0xc6c8d6['name'])+'\x20[cloud]'+_0x337648);const _0x427a43=_0xc6c8d6[_0x135ddf(0x163)]?'cached\x20(updated\x20'+_0xc6c8d6[_0x135ddf(0x163)]+')':_0x30e774['zvJcB'];console[_0x135ddf(0x192)](_0x135ddf(0x1bd)+_0x427a43);}const _0x588ee9=new Set(_0xcc6d39[_0x135ddf(0x1c2)](_0x890d3d=>_0x890d3d['name']));for(const _0x2a723c of _0x191647){if(_0x588ee9[_0x135ddf(0x158)](_0x2a723c[_0x135ddf(0x157)]))continue;const _0x53d9d3=_0x2a723c['isActive']?_0x30e774['LriCK']:'',_0x42f611=_0x2a723c['hasEncryptedAuth']?'encrypted':_0x2a723c[_0x135ddf(0x162)]?'plaintext':_0x30e774[_0x135ddf(0x1c0)];console['log']('\x20\x20'+bold(_0x2a723c[_0x135ddf(0x157)])+_0x135ddf(0x15f)+_0x53d9d3),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x42f611),_0x2a723c['settingsPath']!==_0x30e774[_0x135ddf(0x1ba)]&&console['log']('\x20\x20\x20\x20Settings:\x20'+link(_0x2a723c['settingsPath'],basename(_0x2a723c[_0x135ddf(0x16f)])));}if(!_0x5cf8de){console['log'](_0x135ddf(0x1c1));const _0x2c5b11=[..._0xcc6d39[_0x135ddf(0x1c2)](_0x515204=>_0x515204[_0x135ddf(0x157)]),..._0x191647[_0x135ddf(0x16e)](_0x400596=>!_0x588ee9['has'](_0x400596['name']))['map'](_0x15d1a9=>_0x15d1a9[_0x135ddf(0x157)])];console['log'](_0x135ddf(0x178)+_0x2c5b11['join'](',\x20')+')');}}}console['log']('');}
|
|
1
|
+
const _0x52b416=_0x3ba0;(function(_0x51a743,_0xdd6946){const _0x13a06b=_0x3ba0,_0x1e9262=_0x51a743();while(!![]){try{const _0x19f947=-parseInt(_0x13a06b(0xb5))/0x1*(-parseInt(_0x13a06b(0xd8))/0x2)+-parseInt(_0x13a06b(0x10c))/0x3+-parseInt(_0x13a06b(0xb8))/0x4+-parseInt(_0x13a06b(0xe3))/0x5*(-parseInt(_0x13a06b(0x114))/0x6)+-parseInt(_0x13a06b(0xc9))/0x7*(parseInt(_0x13a06b(0x100))/0x8)+-parseInt(_0x13a06b(0xae))/0x9+parseInt(_0x13a06b(0xb9))/0xa;if(_0x19f947===_0xdd6946)break;else _0x1e9262['push'](_0x1e9262['shift']());}catch(_0x485d33){_0x1e9262['push'](_0x1e9262['shift']());}}}(_0x18d7,0x55ca3));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';function _0x18d7(){const _0x1659d9=['API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','\x20\x20Active:\x20','name','MogDP','user','close','stderr','6fgPVho','Mwtqj',':\x20installed\x20(','path','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','none','has','\x20\x20\x20\x20Settings:\x20','XxFKB','length','5233248DYGsLF','\x20plugin(s)\x20configured','Version:\x20','vnoXn','ranger@trailhead','configured','CTQus','1VtEdIt','\x0a---\x20Claude\x20Code\x20Plugin\x20---','AsIIY','300792lUTiEx','10888100EtkLIp','VRXIG','success','version','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','Fsrjf','(not\x20found)','isArray','Organization:\x20','ReVDY','displayName','pipe','cvjJS','ZYhFw','ruDaF','details','4066867IAqhEb','filter','ignore','BuVOl','\x0a---\x20Profiles\x20---','status','stdout','disabled','enabled','encrypted','eQEPI','XuuSx','\x20cloud','\x0a📊\x20Ranger\x20Status\x0a','organizationName','21932nQFrqg','PBnyg','opencode-plugin','DnNRu','push','OARQZ','\x20[local]','string','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','settingsPath','parse','3419795aSnQMx','\x20\x20Run:\x20ranger\x20skillup','\x20(latest:\x20','Root:\x20','Waqtx','\x20profiles\x20configured\x20(','env','iDtlv','includes','log','join',':\x20configured','\x20\x20User-level:','\x20local','scope','utf-8','hfcJh','rrLce','pCAcN','not_installed','config','API\x20URL:\x20','API\x20Token:\x20✗\x20Not\x20found','IeDJt','auth.json.enc','not_configured','settings.json','map','project','8haFwkr','\x1b[0m','\x20\x20\x20\x20Session:\x20','WZuoV','\x20\x20Run:\x20ranger\x20setup\x20[token]','\x1b]8;;\x07','trim','No\x20profiles\x20configured','\x20\x20\x20\x20','error','xGBeX','IzDoE','584067twAAgT'];_0x18d7=function(){return _0x1659d9;};return _0x18d7();}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';const bold=_0x255caa=>'\x1b[1m'+_0x255caa+_0x52b416(0x101),link=(_0x1a4fdd,_0x1b9fab)=>'\x1b]8;;file://'+_0x1a4fdd+'\x07'+(_0x1b9fab||_0x1a4fdd)+_0x52b416(0x105);async function getOpencodePluginStatus(){const _0x25523e=_0x52b416,_0xf0e01e={'XuuSx':function(_0x388641,_0x3095bb){return _0x388641(_0x3095bb);},'xkwVk':_0x25523e(0xdf),'DnNRu':'@ranger-testing/opencode-plugin','CJNwd':function(_0x15ed78,_0x178bf9){return _0x15ed78!==_0x178bf9;},'AsIIY':_0x25523e(0xb3),'QDeFv':function(_0x3d9c03,_0x2e1ffc){return _0x3d9c03>_0x2e1ffc;},'BSIZy':_0x25523e(0xfc),'Fsrjf':'opencode','MPjPS':_0x25523e(0xf7),'giCku':_0x25523e(0xcb),'ItvRJ':_0x25523e(0xc4),'czllF':'data','jcbAA':_0x25523e(0x109),'fezfL':_0x25523e(0x112)};return new Promise(_0x494da0=>{const _0x53e2a6=_0x25523e,_0x35f278=spawn(_0xf0e01e[_0x53e2a6(0xbe)],['debug',_0xf0e01e['MPjPS']],{'stdio':[_0xf0e01e['giCku'],_0xf0e01e['ItvRJ'],'pipe']});let _0x14f863='';_0x35f278[_0x53e2a6(0xcf)]?.['on'](_0xf0e01e['czllF'],_0x2f5b9d=>{_0x14f863+=_0x2f5b9d['toString']();}),_0x35f278[_0x53e2a6(0x113)]?.['on']('data',_0x44529c=>{_0x14f863+=_0x44529c['toString']();}),_0x35f278['on'](_0xf0e01e['jcbAA'],()=>{const _0x3f1a1d=_0x53e2a6;_0xf0e01e[_0x3f1a1d(0xd4)](_0x494da0,{'status':_0x3f1a1d(0xf6)});}),_0x35f278['on'](_0xf0e01e['fezfL'],_0x4cddff=>{const _0x415e2f=_0x53e2a6,_0xdc2636={'BuVOl':_0xf0e01e['xkwVk'],'tPdtZ':_0xf0e01e[_0x415e2f(0xdb)]};if(_0xf0e01e['CJNwd'](_0x4cddff,0x0)){_0x494da0({'status':'not_installed'});return;}const _0x6dae2d=_0x14f863[_0x415e2f(0x106)]();let _0x4bbf15=null;if(_0x6dae2d)try{_0x4bbf15=JSON[_0x415e2f(0xe2)](_0x6dae2d);}catch{const _0xee3e31=_0x6dae2d['match'](/\{[\s\S]*\}$/);if(_0xee3e31)try{_0x4bbf15=JSON['parse'](_0xee3e31[0x0]);}catch{_0x4bbf15=null;}}const _0x3d1e3b=Array[_0x415e2f(0xc0)](_0x4bbf15?.['plugin'])?_0x4bbf15?.['plugin']:[],_0x4922dd=_0x3d1e3b['some'](_0x2520ad=>{const _0x342f6a=_0x415e2f;if(typeof _0x2520ad!==_0xdc2636[_0x342f6a(0xcc)])return![];return _0x2520ad['includes'](_0xdc2636['tPdtZ'])||_0x2520ad[_0x342f6a(0xeb)](_0x342f6a(0xda));});if(_0x4922dd){_0x494da0({'status':_0xf0e01e[_0x415e2f(0xb7)],'details':_0xf0e01e['QDeFv'](_0x3d1e3b['length'],0x0)?_0x3d1e3b['length']+'\x20plugin(s)\x20configured':undefined});return;}if(_0x3d1e3b['length']>0x0){_0x494da0({'status':_0xf0e01e['BSIZy'],'details':_0x3d1e3b['length']+_0x415e2f(0xaf)});return;}_0xf0e01e['XuuSx'](_0x494da0,{'status':_0x415e2f(0xfc)});});});}async function getSkillsFromDir(_0x412a52,_0x1e5360){const _0x9b89c6=_0x52b416,_0x43379c={'vnoXn':function(_0x4c659f,_0x2cdcae){return _0x4c659f(_0x2cdcae);},'cvjJS':function(_0x4b6978,_0x296cbb,_0x4cd3a4){return _0x4b6978(_0x296cbb,_0x4cd3a4);},'JxtGq':function(_0x428edd,_0x2588cd,_0x17ec0f){return _0x428edd(_0x2588cd,_0x17ec0f);}};if(!_0x43379c[_0x9b89c6(0xb1)](existsSync,_0x412a52))return[];const _0x599c0c=[];try{const _0x42f35d=await _0x43379c[_0x9b89c6(0xc5)](readdir,_0x412a52,{'withFileTypes':!![]});for(const _0x3a3c9a of _0x42f35d){if(_0x3a3c9a['isDirectory']()){const _0x39e3dd=join(_0x412a52,_0x3a3c9a[_0x9b89c6(0x10f)],'SKILL.md');if(existsSync(_0x39e3dd)){let _0x568be1=_0x3a3c9a['name'];try{const _0x5c83ef=await _0x43379c['JxtGq'](readFile,_0x39e3dd,_0x9b89c6(0xf2)),_0x5460e1=_0x5c83ef['match'](/name:\s*(.+)/);_0x5460e1&&(_0x568be1=_0x5460e1[0x1][_0x9b89c6(0x106)]());}catch{}_0x599c0c[_0x9b89c6(0xdc)]({'name':_0x3a3c9a[_0x9b89c6(0x10f)],'displayName':_0x568be1,'path':_0x39e3dd,'level':_0x1e5360});}}}}catch{return[];}return _0x599c0c;}async function getInstalledSkills(){const _0x3d5b0d=_0x52b416,_0x33bd4b={'iDtlv':function(_0x25485f,_0x34bcd3,_0x1f416a){return _0x25485f(_0x34bcd3,_0x1f416a);},'ZYhFw':function(_0x3d3d78){return _0x3d3d78();}},[_0x1ea474,_0x55e969]=await Promise['all']([_0x33bd4b['iDtlv'](getSkillsFromDir,_0x33bd4b[_0x3d5b0d(0xc6)](getProjectSkillsDir),_0x3d5b0d(0xff)),_0x33bd4b[_0x3d5b0d(0xea)](getSkillsFromDir,_0x33bd4b['ZYhFw'](getUserSkillsDir),_0x3d5b0d(0x111))]);return{'project':_0x1ea474,'user':_0x55e969};}async function getEnvironments(){const _0x39d0a9=_0x52b416,_0x5a4621={'Mwtqj':_0x39d0a9(0xfd),'CTQus':function(_0xfeba8c,_0x149c7c,_0xed602b){return _0xfeba8c(_0x149c7c,_0xed602b);},'WZuoV':'auth.json','xGBeX':_0x39d0a9(0xfb),'hfcJh':function(_0x524e26,_0x246ea2){return _0x524e26(_0x246ea2);},'JjJMM':_0x39d0a9(0xbf),'XxFKB':function(_0x5af87d,_0x3b5970){return _0x5af87d(_0x3b5970);},'vFJOu':function(_0x1538c9,_0x3035c3){return _0x1538c9===_0x3035c3;},'IeDJt':function(_0x1110c1){return _0x1110c1();}},{envNames:_0x99738,activeEnv:_0x11bce2}=await getEnvNames(),_0x48684f=_0x5a4621[_0x39d0a9(0xfa)](getRangerDir);if(!_0x5a4621['hfcJh'](existsSync,_0x48684f))return{'envs':[],'activeEnv':null};const _0x5448e3=_0x99738[_0x39d0a9(0xfe)](_0x540d8f=>{const _0x27bdc1=_0x39d0a9,_0x12409f=getEnvDir(_0x540d8f),_0x35a305=join(_0x12409f,_0x5a4621[_0x27bdc1(0x115)]),_0x37ac21=_0x5a4621[_0x27bdc1(0xb4)](join,_0x12409f,_0x5a4621[_0x27bdc1(0x103)]),_0x57bf21=_0x5a4621['CTQus'](join,_0x12409f,_0x5a4621[_0x27bdc1(0x10a)]);return{'name':_0x540d8f,'settingsPath':_0x5a4621[_0x27bdc1(0xf3)](existsSync,_0x35a305)?_0x35a305:_0x5a4621['JjJMM'],'hasPlaintextAuth':existsSync(_0x37ac21),'hasEncryptedAuth':_0x5a4621[_0x27bdc1(0xac)](existsSync,_0x57bf21),'isActive':_0x5a4621['vFJOu'](_0x540d8f,_0x11bce2)};});return{'envs':_0x5448e3,'activeEnv':_0x11bce2};}function _0x3ba0(_0x4adc56,_0x265c2d){_0x4adc56=_0x4adc56-0xab;const _0x18d70c=_0x18d7();let _0x3ba0e4=_0x18d70c[_0x4adc56];return _0x3ba0e4;}export async function status(){const _0x4c68d4=_0x52b416,_0x2add21={'RLCdw':_0x4c68d4(0xd6),'rrLce':function(_0x379fa9){return _0x379fa9();},'ruDaF':function(_0x369a29,_0x40e048){return _0x369a29(_0x40e048);},'MogDP':function(_0x47200b,_0x59f71e,_0x893ff1){return _0x47200b(_0x59f71e,_0x893ff1);},'iAArR':function(_0x4151e9){return _0x4151e9();},'yxBXl':function(_0x3ba306){return _0x3ba306();},'mxHyi':function(_0x28125b){return _0x28125b();},'vFRhQ':'configured','sSSGR':'@ranger-testing/opencode-plugin','lNruB':_0x4c68d4(0xfc),'OARQZ':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','Waqtx':function(_0xa37965,_0x48ec84){return _0xa37965(_0x48ec84);},'mnzdT':'ranger@trailhead','cETcb':'unknown','pCAcN':_0x4c68d4(0xd1),'bPoCp':'\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','eXCMd':'\x0a---\x20Skills\x20---','VsFVd':function(_0x187ba5,_0x1e3bf6){return _0x187ba5===_0x1e3bf6;},'ReVDY':'No\x20skills\x20installed','iAatM':'\x20\x20Project-level:','VRXIG':function(_0x85454d,_0x5a7f95){return _0x85454d(_0x5a7f95);},'QlPBq':_0x4c68d4(0xef),'ubREo':_0x4c68d4(0xcd),'PBnyg':function(_0x2ba97a){return _0x2ba97a();},'uMXxG':function(_0x420275,_0x598230){return _0x420275+_0x598230;},'CMDcV':_0x4c68d4(0x107),'wJPmp':function(_0x4dd9e2,_0x4a662c){return _0x4dd9e2>_0x4a662c;},'IzDoE':'\x20(active)','eUpAc':_0x4c68d4(0xd2),'eQEPI':_0x4c68d4(0x119),'bkdLW':function(_0x21b1c7,_0x5dbb56){return _0x21b1c7(_0x5dbb56);},'uiNqW':function(_0x34aca2,_0x530bc4){return _0x34aca2!==_0x530bc4;}};console['log'](_0x2add21['RLCdw']);const _0x3338a7=process['cwd'](),_0x37b3a5=_0x2add21['rrLce'](getRangerDir);if(!_0x2add21['ruDaF'](existsSync,_0x37b3a5)){console['log']('Root:\x20'+link(_0x3338a7,bold(basename(_0x3338a7)))),console[_0x4c68d4(0xec)](_0x4c68d4(0xe0)),console[_0x4c68d4(0xec)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x4c68d4(0xec)](_0x4c68d4(0xe6)+_0x2add21[_0x4c68d4(0x110)](link,_0x3338a7,bold(_0x2add21['ruDaF'](basename,_0x3338a7))));const _0x4a769c=_0x2add21['iAArR'](getCurrentVersion),_0x4becbc=getLatestVersion();if(_0x4becbc[_0x4c68d4(0xbc)]&&_0x4becbc['version']!==_0x4a769c)console['log']('Version:\x20'+_0x4a769c+_0x4c68d4(0xe5)+_0x4becbc['version']+')'),console[_0x4c68d4(0xec)]('\x20\x20Run:\x20ranger\x20update');else _0x4becbc[_0x4c68d4(0xbc)]?console['log'](_0x4c68d4(0xb0)+_0x4a769c+'\x20(up\x20to\x20date)'):console['log'](_0x4c68d4(0xb0)+_0x4a769c);const _0x1f582b=await _0x2add21['yxBXl'](getToken);if(_0x1f582b){const _0x65494e=await _0x2add21['ruDaF'](getCurrentUser,_0x1f582b);_0x65494e[_0x4c68d4(0xbb)]?console[_0x4c68d4(0xec)](_0x4c68d4(0xc1)+bold(_0x65494e[_0x4c68d4(0x111)][_0x4c68d4(0xd7)])):(console[_0x4c68d4(0xec)](_0x4c68d4(0x10d)),console[_0x4c68d4(0xec)](_0x4c68d4(0x104)));}else console[_0x4c68d4(0xec)](_0x4c68d4(0xf9)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0x4c68d4(0xe9)]['DEBUG']&&(console[_0x4c68d4(0xec)]('API\x20Environment:\x20'+getCurrentEnvironment()),console[_0x4c68d4(0xec)](_0x4c68d4(0xf8)+_0x2add21[_0x4c68d4(0xf4)](getApiBaseUrl)));console['log']('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x311581=await _0x2add21['mxHyi'](getOpencodePluginStatus);if(_0x311581[_0x4c68d4(0xce)]===_0x2add21['vFRhQ'])console[_0x4c68d4(0xec)]('\x20\x20'+_0x2add21[_0x4c68d4(0xc7)](bold,_0x2add21['sSSGR'])+_0x4c68d4(0xee)),_0x311581[_0x4c68d4(0xc8)]&&console[_0x4c68d4(0xec)]('\x20\x20'+_0x311581['details']);else _0x311581[_0x4c68d4(0xce)]===_0x2add21['lNruB']?(console['log']('\x20\x20Not\x20configured'),_0x311581['details']&&console['log']('\x20\x20'+_0x311581['details']),console['log'](_0x2add21[_0x4c68d4(0xdd)])):console[_0x4c68d4(0xec)](_0x4c68d4(0xbd));console['log'](_0x4c68d4(0xb6));const _0x1037c3=await _0x2add21[_0x4c68d4(0xe7)](getPluginInfo,_0x2add21['mnzdT']);if(_0x1037c3){const _0x27d6e4=_0x1037c3[_0x4c68d4(0xf1)]||_0x2add21['cETcb'],_0x573ddd=_0x1037c3['enabled']?_0x2add21[_0x4c68d4(0xf5)]:_0x4c68d4(0xd0);console[_0x4c68d4(0xec)]('\x20\x20'+bold(_0x4c68d4(0xb2))+_0x4c68d4(0x116)+_0x27d6e4+',\x20'+_0x573ddd+')');}else console[_0x4c68d4(0xec)]('\x20\x20Not\x20installed'),console['log'](_0x2add21['bPoCp']);console['log'](_0x2add21['eXCMd']);const {project:_0x32a1bc,user:_0x2c9fc5}=await _0x2add21['yxBXl'](getInstalledSkills),_0x293695=_0x32a1bc['filter'](_0x8fd36f=>RANGER_MANAGED_SKILLS[_0x4c68d4(0xeb)](_0x8fd36f['name'])),_0x240843=_0x2c9fc5[_0x4c68d4(0xca)](_0x28454b=>RANGER_MANAGED_SKILLS[_0x4c68d4(0xeb)](_0x28454b[_0x4c68d4(0x10f)])),_0x21824c=_0x293695[_0x4c68d4(0xad)]+_0x240843['length'];if(_0x2add21['VsFVd'](_0x21824c,0x0))console[_0x4c68d4(0xec)](_0x2add21[_0x4c68d4(0xc2)]),console['log'](_0x4c68d4(0xe4));else{if(_0x293695[_0x4c68d4(0xad)]>0x0){console['log'](_0x2add21['iAatM']);for(const _0x294e0d of _0x293695){console[_0x4c68d4(0xec)](_0x4c68d4(0x108)+bold(_0x294e0d[_0x4c68d4(0xc3)])+':\x20'+link(_0x294e0d['path'],_0x2add21[_0x4c68d4(0xba)](basename,_0x294e0d['path'])));}}if(_0x240843[_0x4c68d4(0xad)]>0x0){console[_0x4c68d4(0xec)](_0x2add21['QlPBq']);for(const _0x4c1ba7 of _0x240843){console['log']('\x20\x20\x20\x20'+bold(_0x4c1ba7[_0x4c68d4(0xc3)])+':\x20'+link(_0x4c1ba7['path'],_0x2add21['ruDaF'](basename,_0x4c1ba7[_0x4c68d4(0x117)])));}}}console['log'](_0x2add21['ubREo']);const {envs:_0x445ee4,activeEnv:_0x5b1179}=await _0x2add21[_0x4c68d4(0xd9)](getEnvironments);let _0x49637b=[];if(_0x1f582b)try{_0x49637b=await listCloudProfiles();}catch{}const _0x4d3502=_0x2add21['uMXxG'](_0x445ee4[_0x4c68d4(0xad)],_0x49637b['length']);if(_0x4d3502===0x0)console[_0x4c68d4(0xec)](_0x2add21['CMDcV']),console[_0x4c68d4(0xec)](_0x4c68d4(0x118));else{if(_0x2add21['wJPmp'](_0x4d3502,0x5)){const _0x3d5297=[];_0x49637b[_0x4c68d4(0xad)]>0x0&&_0x3d5297['push'](_0x49637b[_0x4c68d4(0xad)]+_0x4c68d4(0xd5)),_0x445ee4['length']>0x0&&_0x3d5297[_0x4c68d4(0xdc)](_0x445ee4['length']+_0x4c68d4(0xf0)),console[_0x4c68d4(0xec)](_0x4d3502+_0x4c68d4(0xe8)+_0x3d5297['join'](',\x20')+')'),_0x5b1179&&console['log'](_0x4c68d4(0x10e)+bold(_0x5b1179)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0x117ae0 of _0x49637b){const _0x522e7e=_0x117ae0[_0x4c68d4(0x10f)]===_0x5b1179?_0x2add21[_0x4c68d4(0x10b)]:'';console[_0x4c68d4(0xec)]('\x20\x20'+bold(_0x117ae0['name'])+'\x20[cloud]'+_0x522e7e);const _0x53c870=_0x117ae0['sessionUpdatedAt']?'cached\x20(updated\x20'+_0x117ae0['sessionUpdatedAt']+')':'no\x20session';console[_0x4c68d4(0xec)](_0x4c68d4(0x102)+_0x53c870);}const _0x5638bf=new Set(_0x49637b['map'](_0x18fcf3=>_0x18fcf3[_0x4c68d4(0x10f)]));for(const _0x4f400f of _0x445ee4){if(_0x5638bf['has'](_0x4f400f['name']))continue;const _0x2dec19=_0x4f400f['isActive']?'\x20(active)':'',_0x5c9b81=_0x4f400f['hasEncryptedAuth']?_0x2add21['eUpAc']:_0x4f400f['hasPlaintextAuth']?'plaintext':_0x2add21[_0x4c68d4(0xd3)];console[_0x4c68d4(0xec)]('\x20\x20'+_0x2add21['bkdLW'](bold,_0x4f400f[_0x4c68d4(0x10f)])+_0x4c68d4(0xde)+_0x2dec19),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x5c9b81),_0x2add21['uiNqW'](_0x4f400f[_0x4c68d4(0xe1)],_0x4c68d4(0xbf))&&console[_0x4c68d4(0xec)](_0x4c68d4(0xab)+link(_0x4f400f[_0x4c68d4(0xe1)],basename(_0x4f400f['settingsPath'])));}if(!_0x5b1179){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x341181=[..._0x49637b[_0x4c68d4(0xfe)](_0xf382b7=>_0xf382b7['name']),..._0x445ee4[_0x4c68d4(0xca)](_0x2d923b=>!_0x5638bf[_0x4c68d4(0x11a)](_0x2d923b[_0x4c68d4(0x10f)]))[_0x4c68d4(0xfe)](_0x3b7b09=>_0x3b7b09[_0x4c68d4(0x10f)])];console[_0x4c68d4(0xec)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x341181[_0x4c68d4(0xed)](',\x20')+')');}}}console[_0x4c68d4(0xec)]('');}
|