@ranger-testing/ranger-cli 3.1.6 → 3.1.7-alpha.387730d-58
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 +2 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2bae3a=_0x1947;(function(_0x500238,_0x4633c1){const _0x3173d9=_0x1947,_0x4551ce=_0x500238();while(!![]){try{const _0x579f02=-parseInt(_0x3173d9(0x1f7))/0x1*(-parseInt(_0x3173d9(0x14e))/0x2)+-parseInt(_0x3173d9(0x200))/0x3+-parseInt(_0x3173d9(0x1bf))/0x4*(-parseInt(_0x3173d9(0x196))/0x5)+-parseInt(_0x3173d9(0x1f0))/0x6*(parseInt(_0x3173d9(0x1d3))/0x7)+-parseInt(_0x3173d9(0x170))/0x8*(parseInt(_0x3173d9(0x172))/0x9)+-parseInt(_0x3173d9(0x1a8))/0xa*(-parseInt(_0x3173d9(0x1a1))/0xb)+parseInt(_0x3173d9(0x146))/0xc;if(_0x579f02===_0x4633c1)break;else _0x4551ce['push'](_0x4551ce['shift']());}catch(_0x169fe2){_0x4551ce['push'](_0x4551ce['shift']());}}}(_0x320f,0x96b2f));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x4e34ea from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';function _0x320f(){const _0x210ddf=['uFWsi','No\x20saved\x20session\x20for\x20\x22','launch','forceLogin','205475fgmXLi','tunnel_login_cleanup','tunnel_login_setup','API\x20request\x20','rpJBl','cli:manual-login','reason','split','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','status','yStzg','11WAFUtQ','RIhmL','RhiPT','\x22\x20on\x20profile\x20\x22',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','WRQKB','agent','7193930WVvHHB','sessionId','absWR','xRYjC','password','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','setupHeaders','):\x20','about:blank','pw_endpoint','\x22\x20failed\x20validation\x20—\x20refreshing...','\x22\x20for\x20','QVkel','tuCMO','PUT','elapsedMs','FFThf','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','environmentKey','\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a','activeLocalConnections','effectiveBaseUrl','loginInstructions','100ojqEHd','error','NwQXb','userAgent','confirm','kDKSh','settings','tunnel_session_id','username','clientIp','HBHfw','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','Mknwo','you\x27re\x20now\x20at\x20\x22','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','Auth\x20environment\x20\x22','Tyqts','length','pendingLocalConnections','kSGoH','7yiNfXc','string','Pass\x20--base-url\x20<your-app-url>\x20so\x20Ranger\x20can\x20match\x20the\x20right\x20one,\x20or\x20create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`.','aVMzA','oSUmi','some','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','cookies','POST','wcyNn','WAios','\x22\x20not\x20found.','assertedEnv','\x22,\x20attempting\x20login...','trackPhaseError','FUejt','invalidateOn','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','Browser\x20login\x20timed\x20out\x20after\x20','\x20\x20Options:\x0a','catch','pwgux','environments','ugPqO','jngPP','trackPhaseEnd','uFbef','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','RWGGR','3697932GLrRrR','env','/session','wDSbL','ambiguous','\x20failed\x20(','RANGER_TUNNEL_LOGIN_HEADED','5901cvDHLM','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','CbbZM','/api/v1/profiles','headers','xTwoD','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','log','code','2816991JLLpPO','\x22\x20matched\x20by\x20host\x20for\x20','ApiError','qIISM','telemetry','wyxWI','domains','\x20\x20No\x20live\x20session\x20for\x20\x22','invalid-url','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','sMqxp','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','10740816jXIlqH','not_configured','lzMjM','newPage','defaultEnvironmentKey','DWIAe','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','iqena','140UBnubd','stringify','WOVpH','/api/v1/profiles/','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','persistSessionState','message','WymHJ','force','organizationId','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','join','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','browserOptions','DELETE','szyTS','test_output','RANGER_TEST_PASSWORD','TjuLX','trackPhaseStart','akZYr','Bearer\x20','tunnel_login_request','moAIF','sessionState','GcfCL','hqTJi','auth','\x22,\x20refreshing\x20session...','KBWFs','auth_config','\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.','iEHUW','targetUrl','8oLyUZH','whPuH','7940916NDiAiM','key','local_ws_error','close','LhtAg','WPYsC','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.','4|1|3|0|2','type','detail','origin','parse','\x20\x20forceLogin\x20enabled\x20for\x20\x22','pGGWg','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','sessionCheckPath','name','tunnelUrl','GJMaU','storageStatePath','url','tunnel','RANGER_TEST_USERNAME','pwEndpoint','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a','session_state','\x22.\x0a','HfnJY','keys','lKKms'];_0x320f=function(){return _0x210ddf;};return _0x320f();}import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isBareLocalhost,isCachedSessionLive,isInteractive,needsTunnel,orderLoginDomains,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';function _0x1947(_0x2615ed,_0x407aed){_0x2615ed=_0x2615ed-0x143;const _0x320f8e=_0x320f();let _0x194730=_0x320f8e[_0x2615ed];return _0x194730;}import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0xc5dd64){const _0x51e106=_0x1947,_0x3dba22={'YFmht':_0x51e106(0x208)};try{return new URL(_0xc5dd64)['host'];}catch{return _0x3dba22['YFmht'];}}function errorMessageForTelemetry(_0x10b199){return _0x10b199 instanceof Error?_0x10b199['message']:undefined;}function trackBridgeEvent(_0x4c0660,_0x473d42){const _0x580155=_0x1947,_0x56ed76={'mRSKI':'tunnel_error','xBLki':_0x580155(0x174)};if(!_0x4c0660)return;const _0x5f22bd={'tunnelSessionId':_0x473d42[_0x580155(0x1a9)],'tunnelEventType':_0x473d42['type'],'connectionId':_0x473d42['connectionId'],'code':_0x473d42['code'],'reason':_0x473d42[_0x580155(0x19c)],'error':_0x473d42['error'],'elapsedMs':_0x473d42[_0x580155(0x1b7)],'activeLocalConnections':_0x473d42[_0x580155(0x1bc)],'pendingLocalConnections':_0x473d42[_0x580155(0x1d1)]};_0x4c0660[_0x580155(0x1ec)]('tunnel_bridge_event',_0x5f22bd),(_0x473d42[_0x580155(0x17b)]===_0x56ed76['mRSKI']||_0x473d42['type']===_0x56ed76['xBLki'])&&void _0x4c0660['trackPhaseError']('tunnel_bridge',new Error(_0x473d42['error']??_0x473d42['type']),_0x5f22bd);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x51a174=_0x1947,_0x5c5d41={'akZYr':function(_0x3fcdc4){return _0x3fcdc4();},'ZVeHa':_0x51a174(0x152)},_0x3ddf57=await _0x5c5d41[_0x51a174(0x162)](getToken);if(!_0x3ddf57)throw new Error(_0x5c5d41['ZVeHa']);return _0x3ddf57;}async function apiRequest(_0x23527b,_0x1fdebb={}){const _0x3dba36=_0x1947,_0x102222={'moAIF':function(_0x1c4ebf){return _0x1c4ebf();},'qWriF':'application/json','xEoHC':function(_0x4aa4ed,_0x2ceebe){return _0x4aa4ed===_0x2ceebe;},'uFbef':'string','wyxWI':function(_0x143984,_0xdb9a79){return _0x143984===_0xdb9a79;}},_0x320800=await requireToken(),_0x1223cd=_0x102222[_0x3dba36(0x165)](getApiBaseUrl),_0xed8ef7=await fetch(''+_0x1223cd+_0x23527b,{..._0x1fdebb,'headers':{'Authorization':_0x3dba36(0x163)+_0x320800,'Content-Type':_0x102222['qWriF'],..._0x1fdebb[_0x3dba36(0x1fb)]??{}}});if(!_0xed8ef7['ok']){let _0x3281e8='',_0x105d9a;try{const _0x59d0de=await _0xed8ef7['json'](),_0x51c140=(_0x102222['xEoHC'](typeof _0x59d0de[_0x3dba36(0x1c0)],_0x102222[_0x3dba36(0x1ed)])?_0x59d0de['error']:undefined)??JSON['stringify'](_0x59d0de);_0x3281e8=_0x51c140;_0x102222['xEoHC'](typeof _0x59d0de['test_output'],'string')&&_0x59d0de[_0x3dba36(0x15e)]&&(_0x3281e8=_0x3281e8+'\x0a'+_0x59d0de[_0x3dba36(0x15e)]);if(typeof _0x59d0de['code']===_0x3dba36(0x1d4))_0x105d9a=_0x59d0de[_0x3dba36(0x1ff)];}catch{_0x3281e8=_0xed8ef7['statusText'];}throw new ApiError(_0x3dba36(0x199)+_0x23527b+_0x3dba36(0x1f5)+_0xed8ef7['status']+_0x3dba36(0x1af)+_0x3281e8,_0xed8ef7[_0x3dba36(0x19f)],_0x3281e8,_0x105d9a);}if(_0x102222[_0x3dba36(0x205)](_0xed8ef7[_0x3dba36(0x19f)],0xcc))return undefined;return _0xed8ef7['json']();}export class ApiError extends Error{[_0x2bae3a(0x19f)];[_0x2bae3a(0x17c)];['code'];constructor(_0x53f737,_0x4c8a62,_0x3b1d76,_0x3683e8){const _0x1df507=_0x2bae3a,_0x49edcd={'RhiPT':_0x1df507(0x17a),'DNoGb':_0x1df507(0x202)},_0x18cb74=_0x49edcd[_0x1df507(0x1a3)][_0x1df507(0x19d)]('|');let _0xd2e4e0=0x0;while(!![]){switch(_0x18cb74[_0xd2e4e0++]){case'0':this['code']=_0x3683e8;continue;case'1':this['status']=_0x4c8a62;continue;case'2':this['name']=_0x49edcd['DNoGb'];continue;case'3':this[_0x1df507(0x17c)]=_0x3b1d76;continue;case'4':super(_0x53f737);continue;}break;}}}export async function fetchCloudProfile(_0x209744){const _0x14d30f=_0x2bae3a,_0x4eeddc={'WRQKB':function(_0x4749d9,_0x35d93b){return _0x4749d9(_0x35d93b);},'gHdeE':function(_0x129d21,_0x34a7b2){return _0x129d21 instanceof _0x34a7b2;}};try{return await _0x4eeddc[_0x14d30f(0x1a6)](apiRequest,_0x14d30f(0x151)+encodeURIComponent(_0x209744));}catch(_0x58f525){if(_0x4eeddc['gHdeE'](_0x58f525,ApiError)&&_0x58f525['status']===0x194)return null;throw _0x58f525;}}export async function listCloudProfiles(){const _0x133813=_0x2bae3a,_0x86e8f5={'WymHJ':function(_0x40c17b,_0x452901){return _0x40c17b(_0x452901);}},_0x5a31d5=await _0x86e8f5[_0x133813(0x155)](apiRequest,'/api/v1/profiles');return _0x5a31d5['profiles'];}export async function deleteCloudProfile(_0x429c7c){const _0x2238ec=_0x2bae3a,_0x8f4971={'GcfCL':_0x2238ec(0x15c),'uGjsA':function(_0x18d42e,_0x1a5b2f){return _0x18d42e instanceof _0x1a5b2f;},'zaDZS':function(_0x3de6f5,_0x27f23c){return _0x3de6f5===_0x27f23c;}};try{await apiRequest(_0x2238ec(0x151)+encodeURIComponent(_0x429c7c),{'method':_0x8f4971[_0x2238ec(0x167)]});}catch(_0x192f48){if(_0x8f4971['uGjsA'](_0x192f48,ApiError)&&_0x8f4971['zaDZS'](_0x192f48['status'],0x194))throw new Error('Cloud\x20profile\x20\x22'+_0x429c7c+_0x2238ec(0x1de));throw _0x192f48;}}export async function createCloudProfile(_0x4c2221,_0x48587d,_0x4048ff={}){const _0x2b061d=_0x2bae3a,_0x1fb732={'cyYec':function(_0x553fdf,_0x49783c){return _0x553fdf>_0x49783c;},'vgYsH':function(_0x2a1529,_0x117d92,_0x279f14){return _0x2a1529(_0x117d92,_0x279f14);}},_0x4906c5={'name':_0x4c2221};if(_0x48587d)_0x4906c5['environment_key']=_0x48587d;_0x4048ff[_0x2b061d(0x1c5)]&&_0x1fb732['cyYec'](Object[_0x2b061d(0x190)](_0x4048ff[_0x2b061d(0x1c5)])[_0x2b061d(0x1d0)],0x0)&&(_0x4906c5['settings']=_0x4048ff['settings']);if(_0x4048ff['username'])_0x4906c5[_0x2b061d(0x1c7)]=_0x4048ff[_0x2b061d(0x1c7)];if(_0x4048ff['password'])_0x4906c5['password']=_0x4048ff['password'];return await _0x1fb732['vgYsH'](apiRequest,_0x2b061d(0x1fa),{'method':'POST','body':JSON['stringify'](_0x4906c5)});}export async function uploadCloudProfileSession(_0x8572b4,_0x1e05d2){const _0x304007=_0x2bae3a,_0x5136bb={'KkZLb':function(_0x461228,_0x45e777,_0x58f7c6){return _0x461228(_0x45e777,_0x58f7c6);},'Jefhg':function(_0x82c697,_0x51988c){return _0x82c697(_0x51988c);}};return await _0x5136bb['KkZLb'](apiRequest,_0x304007(0x151)+_0x5136bb['Jefhg'](encodeURIComponent,_0x8572b4)+_0x304007(0x1f2),{'method':_0x304007(0x1db),'body':JSON['stringify']({'session_state':_0x1e05d2})});}export async function saveCloudProfileCredentials(_0x32eb80,_0x4e7a64,_0x4d1e83){const _0x2e78a1=_0x2bae3a,_0x459b64={'oLWBo':function(_0xe4d3c1,_0x7620b2,_0x3ad755){return _0xe4d3c1(_0x7620b2,_0x3ad755);},'ooFHe':function(_0x2a3349,_0x5c317){return _0x2a3349(_0x5c317);},'QVkel':_0x2e78a1(0x1b6)};await _0x459b64['oLWBo'](apiRequest,_0x2e78a1(0x151)+_0x459b64['ooFHe'](encodeURIComponent,_0x32eb80),{'method':_0x459b64[_0x2e78a1(0x1b4)],'body':JSON[_0x2e78a1(0x14f)]({'username':_0x4e7a64,'password':_0x4d1e83})});}export async function fetchAuthConfig(){const _0x543d4d=_0x2bae3a,_0xa4c5cd={'RIhmL':function(_0x3357fd,_0x4287b3){return _0x3357fd(_0x4287b3);},'SPvSd':function(_0x18caea,_0x22c0dd){return _0x18caea instanceof _0x22c0dd;}};try{const _0x2b4419=await _0xa4c5cd[_0x543d4d(0x1a2)](apiRequest,'/api/v1/profiles/auth-config');return _0x2b4419[_0x543d4d(0x16c)];}catch(_0x1dfbd6){return _0xa4c5cd['SPvSd'](_0x1dfbd6,ApiError)&&_0x1dfbd6[_0x543d4d(0x19f)]!==0x194&&console[_0x543d4d(0x1c0)]('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x1dfbd6['message']),null;}}async function createTunnelSession(_0x26605e){const _0x491c2a=_0x2bae3a,_0x50efa9={'KBWFs':_0x491c2a(0x1a7)};return await apiRequest('/api/v1/tunnel/sessions',{'method':'POST','body':JSON['stringify']({'targetUrl':_0x26605e,'mode':_0x50efa9[_0x491c2a(0x16b)]})});}async function deleteTunnelSession(_0x47a426){const _0x2c9144=_0x2bae3a,_0x5f2155={'CfsXO':function(_0x3bac8b,_0x4d7101,_0x288b53){return _0x3bac8b(_0x4d7101,_0x288b53);}};await _0x5f2155['CfsXO'](apiRequest,'/api/v1/tunnel/sessions/'+_0x47a426,{'method':_0x2c9144(0x15c)});}export function pickAdHocEnvKey(_0x43807b,_0x525c3e,_0x3b16aa){const _0x134816=_0x2bae3a,_0x1c37d={'kDKSh':function(_0x2496c5,_0xe31abc){return _0x2496c5+_0xe31abc;},'IAFuZ':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','pGGWg':function(_0x3f281d,_0x44f542){return _0x3f281d in _0x44f542;},'ixLPN':_0x134816(0x173),'YIRld':'ambiguous','rvpSG':function(_0x463c6f,_0x27be8c){return _0x463c6f(_0x27be8c);},'CbbZM':function(_0xb0a5de,_0x4c7b50){return _0xb0a5de+_0x4c7b50;},'WAios':function(_0x56de11,_0x190637){return _0x56de11===_0x190637;}};if(_0x3b16aa){if(!_0x43807b?.[_0x134816(0x1e9)]?.[_0x3b16aa]){const _0x145928=Object['keys'](_0x43807b?.[_0x134816(0x1e9)]??{});throw new Error(_0x1c37d['kDKSh'](_0x134816(0x1ce)+_0x3b16aa+_0x134816(0x1ca),_0x145928['length']?'\x20Available:\x20'+_0x145928[_0x134816(0x159)](',\x20')+'.':_0x1c37d['IAFuZ'])+'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)');}return _0x3b16aa;}if(!_0x43807b)return null;if(_0x525c3e){const _0x312599=matchAuthEnvironmentExact(_0x525c3e,_0x43807b);if(_0x312599)return _0x312599;const _0x9695c5=matchAuthEnvironmentByHost(_0x525c3e,_0x43807b);if(_0x9695c5&&_0x1c37d[_0x134816(0x180)](_0x1c37d['ixLPN'],_0x9695c5))return console[_0x134816(0x1fe)]('\x20\x20Auth\x20env\x20\x22'+_0x9695c5['key']+_0x134816(0x201)+_0x525c3e+_0x134816(0x1fd)),_0x9695c5[_0x134816(0x173)];if(_0x9695c5&&_0x1c37d['YIRld']in _0x9695c5)throw new Error('Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20('+_0x9695c5[_0x134816(0x1f4)][_0x134816(0x159)](',\x20')+_0x134816(0x1a5));if(_0x1c37d['rvpSG'](needsTunnel,_0x525c3e))throw new Error(_0x1c37d[_0x134816(0x1c4)](_0x1c37d['kDKSh'](_0x1c37d[_0x134816(0x1f9)](_0x134816(0x1b9)+_0x525c3e+_0x134816(0x18e),_0x134816(0x143)),_0x134816(0x1e6))+_0x134816(0x18c)+('\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x525c3e['replace'](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),'\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20'+_0x525c3e+_0x134816(0x16d)));}if(_0x43807b[_0x134816(0x14a)])return _0x43807b[_0x134816(0x14a)];const _0x2b1c5d=Object[_0x134816(0x190)](_0x43807b[_0x134816(0x1e9)]??{});if(_0x1c37d[_0x134816(0x1dd)](_0x2b1c5d[_0x134816(0x1d0)],0x1))return _0x2b1c5d[0x0];if(_0x2b1c5d[_0x134816(0x1d0)]===0x0)return null;throw new Error('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x2b1c5d[_0x134816(0x159)](',\x20')+').\x20'+_0x134816(0x1d5));}export function adHocProfileName(_0x40ee52,_0x212c16,_0xb400f0){const _0x38c8b9=_0x2bae3a,_0x207416={'RWGGR':function(_0x46e8bc,_0x3b6781){return _0x46e8bc===_0x3b6781;}};if(!_0x212c16||_0x207416[_0x38c8b9(0x1ef)](_0x212c16,_0xb400f0))return _0x40ee52;return _0x40ee52+':'+_0x212c16;}export async function resolveAdHocProfile(_0x4dc94c={},_0x25300c=process[_0x2bae3a(0x1f1)]){const _0x2b9bc0=_0x2bae3a,_0x18894f={'DWIAe':function(_0x5b1824){return _0x5b1824();},'fKZzk':function(_0x1d02e3,_0x434bcb){return _0x1d02e3(_0x434bcb);},'LhtAg':function(_0x49c660,_0x46953c){return _0x49c660&&_0x46953c;},'cUUlh':'none','xRYjC':function(_0x3a1c08,_0x24af4b){return _0x3a1c08??_0x24af4b;}},_0x2f0c5c=_0x25300c['RANGER_TEST_USERNAME'];if(!_0x2f0c5c)return null;const _0x35fa27=await _0x18894f[_0x2b9bc0(0x14b)](fetchAuthConfig),_0x23f966=pickAdHocEnvKey(_0x35fa27,_0x4dc94c[_0x2b9bc0(0x16f)],_0x4dc94c['envKey']);let _0x44ce02=adHocProfileName(_0x2f0c5c,_0x23f966,_0x35fa27?.['defaultEnvironmentKey']),_0x35414c=await _0x18894f['fKZzk'](fetchCloudProfile,_0x44ce02);_0x18894f[_0x2b9bc0(0x176)](_0x35414c,_0x23f966)&&_0x35414c['environmentKey']!==_0x23f966&&(console[_0x2b9bc0(0x1fe)]('\x20\x20Cloud\x20profile\x20\x22'+_0x44ce02+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x35414c[_0x2b9bc0(0x1ba)]??_0x18894f['cUUlh'])+_0x2b9bc0(0x1ee)+_0x23f966+'\x22;\x20using\x20\x22'+_0x2f0c5c+':'+_0x23f966+'\x22\x20instead.'),_0x44ce02=_0x2f0c5c+':'+_0x23f966,_0x35414c=await fetchCloudProfile(_0x44ce02));if(_0x35414c)return{'name':_0x35414c[_0x2b9bc0(0x183)],'profile':_0x35414c};const _0x5175f4=_0x25300c[_0x2b9bc0(0x15f)],_0x4b7dcd=await createCloudProfile(_0x44ce02,_0x18894f[_0x2b9bc0(0x1ab)](_0x23f966,undefined),{'username':_0x2f0c5c,'password':_0x5175f4});return console[_0x2b9bc0(0x1fe)]('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x4b7dcd['name']+_0x2b9bc0(0x1b3)+_0x2f0c5c+(_0x23f966?'\x20(auth\x20env:\x20'+_0x23f966+')':'')),{'name':_0x4b7dcd['name'],'profile':_0x4b7dcd};}export async function writeSessionToLocalCache(_0x1ecba9,_0x18c096,_0x206f03,_0x27fe32,_0x3cc13a,_0x2b513d,_0x2c322a){const _0x3f33ea=_0x2bae3a,_0x3baa73={'SEdvC':function(_0x33893d,_0x22ed40,_0x225989){return _0x33893d(_0x22ed40,_0x225989);},'lKKms':_0x3f33ea(0x169),'qHRrM':function(_0x49eaba,_0x8e1a1b){return _0x49eaba(_0x8e1a1b);},'uFWsi':function(_0x5e5fad,_0x24b49d,_0xbe0053){return _0x5e5fad(_0x24b49d,_0xbe0053);},'qWxAN':function(_0x20ebea,_0x2efbbc,_0x24e622){return _0x20ebea(_0x2efbbc,_0x24e622);},'HSVyu':function(_0x492847,_0x19dfc7){return _0x492847(_0x19dfc7);}},_0x3565b1=sessionCacheHash({'orgId':_0x18c096,'profileName':_0x1ecba9,'effectiveBaseUrl':_0x206f03,'setupHeaders':_0x27fe32,'invalidateOn':_0x2c322a?.[_0x3f33ea(0x1e3)],'userAgent':_0x2c322a?.['userAgent'],'clientIp':_0x2c322a?.[_0x3f33ea(0x1c8)]}),_0x5d2ede=getSessionCachePath(_0x3565b1,_0x1ecba9),_0x11a808=_0x3baa73['SEdvC'](join,getRangerHomeDir(),_0x3baa73[_0x3f33ea(0x191)]);!_0x3baa73['qHRrM'](existsSync,_0x11a808)&&await _0x3baa73[_0x3f33ea(0x192)](mkdir,_0x11a808,{'recursive':!![]});const _0x499c81={..._0x3cc13a};_0x2b513d&&_0x2b513d['length']>0x0&&Array['isArray'](_0x499c81[_0x3f33ea(0x1da)])&&(_0x499c81['cookies']=duplicateCookiesForDomains(_0x499c81['cookies'],_0x2b513d));const _0xd4a5b3={'cached_at':new Date()['toISOString'](),'session_state':_0x499c81};await _0x3baa73['qWxAN'](writeFile,_0x5d2ede,JSON['stringify'](_0xd4a5b3,null,0x2));const _0x41bc72=_0x3baa73['HSVyu'](getStorageStatePath,_0x5d2ede);return await writeFile(_0x41bc72,JSON['stringify'](_0x499c81,null,0x2)),_0x41bc72;}export async function checkLocalCache(_0x30b101,_0x587f30,_0x5c5270,_0x2c0d04,_0x22c79d){const _0x2f7128=_0x2bae3a,_0x49f32e={'lzMjM':function(_0x45d469,_0x305f97){return _0x45d469(_0x305f97);},'uVNNy':function(_0xcb257b,_0x391cd6,_0x69beea){return _0xcb257b(_0x391cd6,_0x69beea);},'aVMzA':function(_0x7bfb6e,_0x41ded9){return _0x7bfb6e(_0x41ded9);},'kSGoH':function(_0x58721f,_0x3851e2){return _0x58721f(_0x3851e2);},'ezupd':function(_0x196ff8,_0x3f1dce,_0x6f71bb){return _0x196ff8(_0x3f1dce,_0x6f71bb);},'iqena':'utf-8'},_0x287385=_0x49f32e[_0x2f7128(0x148)](sessionCacheHash,{'orgId':_0x587f30,'profileName':_0x30b101,'effectiveBaseUrl':_0x5c5270,'setupHeaders':_0x2c0d04,'invalidateOn':_0x22c79d?.['invalidateOn'],'userAgent':_0x22c79d?.[_0x2f7128(0x1c2)],'clientIp':_0x22c79d?.[_0x2f7128(0x1c8)]}),_0x148f7a=_0x49f32e['uVNNy'](getSessionCachePath,_0x287385,_0x30b101),_0x99fcf7=_0x49f32e[_0x2f7128(0x1d6)](getStorageStatePath,_0x148f7a);if(!_0x49f32e[_0x2f7128(0x1d2)](existsSync,_0x148f7a)||!existsSync(_0x99fcf7))return null;try{const _0x331668=await _0x49f32e['ezupd'](readFile,_0x148f7a,_0x49f32e[_0x2f7128(0x14d)]);return JSON[_0x2f7128(0x17e)](_0x331668),{'storageStatePath':_0x99fcf7};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x1ed773,_0x51e2dd){const _0x53a1d2=_0x2bae3a,_0x29ba72={'rpJBl':function(_0xb16418,_0x41d3ee){return _0xb16418+_0x41d3ee;}};if(!_0x51e2dd||!_0x51e2dd['domains']?.['length'])return;let _0x34e31b;try{_0x34e31b=new URL(_0x1ed773);}catch{return;}const _0xc3246e=[];for(const _0x529867 of _0x51e2dd[_0x53a1d2(0x206)]){try{_0xc3246e['push']({'raw':_0x529867,'url':new URL(_0x529867)});}catch{}}if(_0xc3246e['length']===0x0)return;if(_0xc3246e[_0x53a1d2(0x1d8)](_0x52ab83=>_0x52ab83[_0x53a1d2(0x187)][_0x53a1d2(0x17d)]===_0x34e31b[_0x53a1d2(0x17d)]))return;const _0x21664a=_0xc3246e['map'](_0x238aaf=>'\x22'+_0x238aaf['raw']+'\x22')['join'](',\x20');console[_0x53a1d2(0x1fe)](_0x29ba72[_0x53a1d2(0x19a)]('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x21664a+';\x20',_0x53a1d2(0x1cc)+_0x1ed773+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20')+_0x53a1d2(0x145));}export async function serverSideLogin(_0x56b84e,_0x3208e3){const _0x4d476a=_0x2bae3a,_0x26622d={'xTwoD':function(_0x42572a,_0x314b6c){return _0x42572a(_0x314b6c);},'stuxo':'POST','DVJae':function(_0x280d8d,_0x563b85){return _0x280d8d instanceof _0x563b85;},'hqTJi':function(_0x105180,_0x42c503){return _0x105180===_0x42c503;},'szyTS':_0x4d476a(0x147)},_0xcb445d=process['env'][_0x4d476a(0x189)],_0x396ef6=process[_0x4d476a(0x1f1)]['RANGER_TEST_PASSWORD'],_0xf32314={};if(_0xcb445d)_0xf32314['username']=_0xcb445d;if(_0x396ef6)_0xf32314[_0x4d476a(0x1ac)]=_0x396ef6;if(_0x3208e3?.['force'])_0xf32314['force']=!![];if(_0x3208e3?.['targetUrl'])_0xf32314['target_url']=_0x3208e3['targetUrl'];if(_0x3208e3?.[_0x4d476a(0x1f1)])_0xf32314['env']=_0x3208e3['env'];_0x3208e3?.['tunnel']&&(_0xf32314[_0x4d476a(0x1c6)]=_0x3208e3[_0x4d476a(0x188)]['sessionId'],_0xf32314[_0x4d476a(0x1b1)]=_0x3208e3['tunnel'][_0x4d476a(0x18a)]);try{return await apiRequest('/api/v1/profiles/'+_0x26622d[_0x4d476a(0x1fc)](encodeURIComponent,_0x56b84e)+'/login',{'method':_0x26622d['stuxo'],'body':JSON[_0x4d476a(0x14f)](_0xf32314)});}catch(_0x2c6800){if(_0x26622d['DVJae'](_0x2c6800,ApiError)&&_0x26622d[_0x4d476a(0x168)](_0x2c6800['status'],0x190)&&_0x2c6800['code']===_0x26622d['szyTS'])return{'status':_0x26622d[_0x4d476a(0x15d)],'error':_0x2c6800[_0x4d476a(0x17c)]};throw _0x2c6800;}}async function serverSideLoginWithOptionalTunnel(_0x2f81fb,_0x5c38f3,_0x43d799={}){const _0x3c88b3=_0x2bae3a,_0x170f9a={'RBzFX':_0x3c88b3(0x164),'XUqvD':function(_0x4fdb79,_0x1250a0){return _0x4fdb79(_0x1250a0);},'HBHfw':function(_0x345d9b,_0x4f05e1){return _0x345d9b(_0x4f05e1);},'RBkch':function(_0x56ff63,_0x3897af){return _0x56ff63(_0x3897af);},'Mknwo':function(_0x51d9d1,_0x449175){return _0x51d9d1===_0x449175;},'FMvjt':function(_0x1c2afa,_0x2c0991){return _0x1c2afa(_0x2c0991);},'UbWYG':function(_0x312744,_0xc7ce12){return _0x312744(_0xc7ce12);},'ugPqO':function(_0x52cf04,_0x198998){return _0x52cf04??_0x198998;},'sMqxp':function(_0x364fe9,_0x26ae5c){return _0x364fe9||_0x26ae5c;}};if(!_0x170f9a['RBkch'](needsTunnel,_0x5c38f3))return await serverSideLogin(_0x2f81fb,{'force':_0x43d799[_0x3c88b3(0x156)],'env':_0x43d799['env']});let _0x4eae84=null,_0x215ee3=null,_0x4b76c5=null,_0xf5a4bf=null,_0x18e125=![];const _0x223b28=process[_0x3c88b3(0x1f1)][_0x3c88b3(0x1f6)]?.['toLowerCase'](),_0x2c6fb2=_0x223b28==='1'||_0x170f9a[_0x3c88b3(0x1cb)](_0x223b28,'true'),_0x3b68c6={'profileName':_0x2f81fb,'targetUrlHost':_0x170f9a['FMvjt'](targetHostForTelemetry,_0x5c38f3),'tunnelRequired':!![],'forceLogin':_0x170f9a['UbWYG'](Boolean,_0x43d799['force']),'localBrowserServerHeaded':_0x2c6fb2};try{_0x43d799['telemetry']?.['trackPhaseStart']('tunnel_login_setup',_0x3b68c6);_0x2c6fb2&&console['log']('\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...');_0x4eae84=await launchBrowserServer({'headless':!_0x2c6fb2}),_0x215ee3=await _0x170f9a[_0x3c88b3(0x1c9)](createTunnelSession,_0x5c38f3);const _0x4bfb68=await requireToken();_0x4b76c5=await createTunnelBridge({'localWsUrl':_0x4eae84['wsEndpoint'],'tunnelServerUrl':_0x215ee3[_0x3c88b3(0x184)],'sessionId':_0x215ee3[_0x3c88b3(0x1a9)],'apiKey':_0x4bfb68,'onError':_0x35d8e2=>{_0xf5a4bf=_0x35d8e2;},'onClose':()=>{const _0x436c8e=_0x3c88b3;_0xf5a4bf??=new Error(_0x436c8e(0x1ad)+_0x2f81fb);},'onEvent':_0x57a9dc=>trackBridgeEvent(_0x43d799[_0x3c88b3(0x204)],_0x57a9dc)}),_0x43d799['telemetry']?.[_0x3c88b3(0x1ec)]('tunnel_login_setup',{..._0x3b68c6,'tunnelSessionId':_0x215ee3[_0x3c88b3(0x1a9)],'localBrowserServer':!![],'localBrowserServerHeaded':_0x2c6fb2}),_0x18e125=!![];try{return _0x43d799['telemetry']?.['trackPhaseStart'](_0x170f9a['RBzFX'],{..._0x3b68c6,'tunnelSessionId':_0x215ee3[_0x3c88b3(0x1a9)]}),await serverSideLogin(_0x2f81fb,{'force':_0x43d799['force'],'targetUrl':_0x5c38f3,'env':_0x43d799[_0x3c88b3(0x1f1)],'tunnel':{'sessionId':_0x215ee3['sessionId'],'pwEndpoint':_0x215ee3[_0x3c88b3(0x18a)]}})['then'](_0x5ab59b=>{const _0x188f88=_0x3c88b3;return _0x43d799[_0x188f88(0x204)]?.['trackPhaseEnd'](_0x170f9a['RBzFX'],{..._0x3b68c6,'tunnelSessionId':_0x215ee3?.[_0x188f88(0x1a9)],'loginStatus':_0x5ab59b['status'],'hasSessionState':Boolean(_0x5ab59b[_0x188f88(0x18d)]),'hasTestOutput':_0x170f9a['XUqvD'](Boolean,_0x5ab59b[_0x188f88(0x15e)]),'bridgeError':_0x170f9a[_0x188f88(0x1c9)](errorMessageForTelemetry,_0xf5a4bf)}),_0x5ab59b;});}catch(_0xa00ef3){await _0x43d799['telemetry']?.[_0x3c88b3(0x1e1)](_0x3c88b3(0x164),_0xf5a4bf??_0xa00ef3,{..._0x3b68c6,'tunnelSessionId':_0x215ee3[_0x3c88b3(0x1a9)],'bridgeError':errorMessageForTelemetry(_0xf5a4bf)});throw _0x170f9a[_0x3c88b3(0x1ea)](_0xf5a4bf,_0xa00ef3);}}catch(_0x25053d){!_0x18e125&&await _0x43d799[_0x3c88b3(0x204)]?.[_0x3c88b3(0x1e1)](_0x3c88b3(0x198),_0x25053d,{..._0x3b68c6,'tunnelSessionId':_0x215ee3?.[_0x3c88b3(0x1a9)]});throw _0x25053d;}finally{(_0x170f9a[_0x3c88b3(0x144)](_0x215ee3,_0x4eae84)||_0x4b76c5)&&(_0x43d799[_0x3c88b3(0x204)]?.[_0x3c88b3(0x161)](_0x3c88b3(0x197),{..._0x3b68c6,'tunnelSessionId':_0x215ee3?.['sessionId']}),_0x4b76c5?.['close'](),_0x4eae84&&await _0x4eae84[_0x3c88b3(0x175)]()[_0x3c88b3(0x1e7)](()=>{}),_0x215ee3&&await deleteTunnelSession(_0x215ee3['sessionId'])[_0x3c88b3(0x1e7)](()=>{}),_0x43d799['telemetry']?.[_0x3c88b3(0x1ec)](_0x3c88b3(0x197),{..._0x3b68c6,'tunnelSessionId':_0x215ee3?.[_0x3c88b3(0x1a9)]}));}}export async function manualBrowserLogin(_0x5a82ca,_0x4169ef,_0xaa7d84={}){const _0x4df16=_0x2bae3a,_0x1ca7ae={'NwQXb':function(_0x4a1ed7,_0x118c23,_0x41859b){return _0x4a1ed7(_0x118c23,_0x41859b);},'vOjhL':_0x4df16(0x175),'jngPP':function(_0x2bb0f7){return _0x2bb0f7();},'WOVpH':function(_0x3e82cf,_0x265671){return _0x3e82cf+_0x265671;},'BkFaR':function(_0xa681a7,_0x2e7d93){return _0xa681a7+_0x2e7d93;},'cczrt':_0x4df16(0x1b0),'VczwK':_0x4df16(0x1f8),'GeDDs':function(_0x17f636,_0x2460d8){return _0x17f636(_0x2460d8);},'Tyqts':function(_0x3638fe,_0x1eff05){return _0x3638fe&&_0x1eff05;},'hMctJ':'Browser\x20login\x20timed\x20out\x20before\x20completion.','CyzKd':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','pwgux':function(_0x2f8540,_0x8b81ec){return _0x2f8540!==_0x8b81ec;},'NPJjw':'POST'};if(!_0x1ca7ae[_0x4df16(0x1eb)](isInteractive))throw new Error(_0x1ca7ae[_0x4df16(0x150)](_0x1ca7ae['BkFaR'](_0x4df16(0x158)+_0x5a82ca['name']+'\x22.\x0a','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'),_0x4df16(0x1d9)));const _0x4fca90=_0x4169ef&&_0x4169ef[_0x4df16(0x206)]['length']>0x0?_0x4169ef[_0x4df16(0x206)][0x0]:_0x1ca7ae['cczrt'];console['log'](_0x1ca7ae['VczwK']),console[_0x4df16(0x1fe)](_0x4df16(0x1e4)),await new Promise(_0x441e18=>setTimeout(_0x441e18,0x7d0));const _0x48bdef=await chromium[_0x4df16(0x194)]({'headless':![]});let _0x15b53f=null;try{const _0x3dc2ac={'ignoreHTTPSErrors':!![]};_0x4169ef?.['setupHeaders']&&(_0x3dc2ac['extraHTTPHeaders']=_0x4169ef[_0x4df16(0x1ae)]);const _0xe8c999=await _0x48bdef['newContext'](_0x3dc2ac);await _0x1ca7ae['GeDDs'](addProfileSetupBanner,_0xe8c999);const _0x424cae=await _0xe8c999[_0x4df16(0x149)]();await _0x424cae['goto'](_0x4fca90);let _0x3f5173=![];await new Promise(_0x33c620=>{const _0x53d505=_0x4df16,_0x5c65cf={'verZF':function(_0x2151c0,_0x2a9185){return _0x2151c0/_0x2a9185;}},_0x271c27=_0x1ca7ae[_0x53d505(0x1c1)](setTimeout,()=>{const _0x1d3395=_0x53d505;_0x3f5173=!![],console['error'](_0x1d3395(0x1e5)+_0x5c65cf['verZF'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x33c620();},MANUAL_LOGIN_TIMEOUT_MS);_0x424cae['on'](_0x1ca7ae['vOjhL'],async()=>{clearTimeout(_0x271c27);try{const _0x26826f=await _0xe8c999['storageState']();_0x15b53f=_0x26826f;}catch{}_0x33c620();});});if(_0x1ca7ae[_0x4df16(0x1cf)](_0x3f5173,!_0x15b53f))throw new Error(_0x1ca7ae['hMctJ']);}finally{await _0x48bdef[_0x4df16(0x175)]()[_0x4df16(0x1e7)](()=>{});}if(!_0x15b53f)throw new Error(_0x1ca7ae['CyzKd']);return _0x1ca7ae[_0x4df16(0x1e8)](_0xaa7d84[_0x4df16(0x153)],![])&&await _0x1ca7ae['NwQXb'](apiRequest,_0x4df16(0x151)+encodeURIComponent(_0x5a82ca[_0x4df16(0x183)])+'/session',{'method':_0x1ca7ae['NPJjw'],'body':JSON[_0x4df16(0x14f)]({'session_state':_0x15b53f,'updated_by':_0x4df16(0x19b)})}),{'sessionState':_0x15b53f};}export async function promptSaveCredentials(_0x10f4bf){const _0x5a7854=_0x2bae3a,_0x2a5e90={'zFNfI':function(_0x48a923,_0x1442d0){return _0x48a923||_0x1442d0;},'haXfY':_0x5a7854(0x1c3),'vPKuR':_0x5a7854(0x178),'GJMaU':function(_0x538824,_0x2d9158,_0xdf589){return _0x538824(_0x2d9158,_0xdf589);},'Yuovk':_0x5a7854(0x1b6)},_0x212c43=process[_0x5a7854(0x1f1)]['RANGER_TEST_USERNAME'],_0x4443db=process[_0x5a7854(0x1f1)][_0x5a7854(0x15f)];if(_0x2a5e90['zFNfI'](!_0x212c43,!_0x4443db))return;if(!isInteractive())return;const {save:_0x54552b}=await _0x4e34ea['prompt']([{'type':_0x2a5e90['haXfY'],'name':'save','message':_0x2a5e90['vPKuR'],'default':![]}]);if(!_0x54552b)return;await _0x2a5e90[_0x5a7854(0x185)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x10f4bf),{'method':_0x2a5e90['Yuovk'],'body':JSON['stringify']({'username':_0x212c43,'password':_0x4443db})}),console['log'](_0x5a7854(0x18b));}export async function resolveCloudProfileSession(_0x4b2f89,_0x3b47d4={}){const _0x231d5e=_0x2bae3a,_0x547a37={'SYFlL':function(_0x158f82){return _0x158f82();},'TjuLX':function(_0x1f8bc9,_0x25f7ea,_0xd5506d){return _0x1f8bc9(_0x25f7ea,_0xd5506d);},'HfnJY':_0x231d5e(0x1d4),'wDSbL':function(_0x5dc49e,_0x3a52cf){return _0x5dc49e||_0x3a52cf;},'absWR':function(_0x4b5458,_0x3222ae){return _0x4b5458(_0x3222ae);},'tuCMO':function(_0x264fb8,_0x4fd32f){return _0x264fb8>_0x4fd32f;},'WPYsC':function(_0x215b9d,_0x57e022,_0x302c0b,_0x360f63,_0x2f2235,_0x28d632){return _0x215b9d(_0x57e022,_0x302c0b,_0x360f63,_0x2f2235,_0x28d632);},'wcyNn':function(_0x1b04aa,_0x26290d,_0x30a334,_0x7bc9ad,_0x4535cc){return _0x1b04aa(_0x26290d,_0x30a334,_0x7bc9ad,_0x4535cc);},'pDAjr':function(_0x23e2ef,_0x5b688a,_0x440232){return _0x23e2ef(_0x5b688a,_0x440232);},'RtsRm':function(_0x48279b,_0x1ebdd4){return _0x48279b(_0x1ebdd4);},'yStzg':function(_0x82129b,_0x34f3da){return _0x82129b(_0x34f3da);},'iEHUW':function(_0xa543d8,_0x29c4a0,_0xca9e13){return _0xa543d8(_0x29c4a0,_0xca9e13);},'FUejt':_0x231d5e(0x147),'mBwqj':'success','GSnPA':'\x20\x20Login\x20successful.\x20Session\x20cached.','JGbrf':function(_0x24386f,_0x512046,_0x5944c4,_0x388031,_0x2a45bc,_0x441a0c,_0x58562c,_0x3753f8){return _0x24386f(_0x512046,_0x5944c4,_0x388031,_0x2a45bc,_0x441a0c,_0x58562c,_0x3753f8);},'boZrj':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','qIISM':function(_0x253870,_0x4c4b74){return _0x253870 instanceof _0x4c4b74;},'VZGUe':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','vRdoP':function(_0x518131,_0x5f0715){return _0x518131&&_0x5f0715;},'nrZKw':function(_0x6f8afc){return _0x6f8afc();},'whPuH':function(_0x173a6f,_0x257979){return _0x173a6f+_0x257979;},'UtPUq':_0x231d5e(0x179),'FFThf':function(_0x4f8613,_0x8317e1,_0x489d0e){return _0x4f8613(_0x8317e1,_0x489d0e);},'oSUmi':function(_0x1449a3,_0x14f504,_0x42e0fc,_0x3dd579,_0x42467d,_0x522a74,_0x1a7774,_0x12f4bf){return _0x1449a3(_0x14f504,_0x42e0fc,_0x3dd579,_0x42467d,_0x522a74,_0x1a7774,_0x12f4bf);}},_0x4adb67=_0x4b2f89[_0x231d5e(0x1c5)]??{},_0xadf20a=await _0x547a37['SYFlL'](fetchAuthConfig),_0x22d822=_0xadf20a?_0x547a37[_0x231d5e(0x160)](resolveAuthEnvironmentLocally,_0xadf20a,_0x3b47d4[_0x231d5e(0x1df)]??_0x4b2f89[_0x231d5e(0x1ba)]):null,_0x3ba38e=typeof _0x22d822?.['loginInstructions']===_0x547a37['HfnJY']&&_0x22d822[_0x231d5e(0x1be)]['trim']()?_0x22d822['loginInstructions']:undefined,_0x1b6358=typeof _0x4adb67[_0x231d5e(0x1be)]===_0x547a37[_0x231d5e(0x18f)]&&_0x4adb67[_0x231d5e(0x1be)]['trim']()?_0x4adb67[_0x231d5e(0x1be)]:undefined,_0x4c8770=_0x547a37[_0x231d5e(0x1f3)](_0x1b6358,!_0x3ba38e)?_0x4adb67:{..._0x4adb67,'loginInstructions':_0x3ba38e},_0xafd180=_0x547a37[_0x231d5e(0x1aa)](Boolean,_0x4c8770['loginInstructions']?.['trim']()),_0x6f3775=Boolean(_0x4adb67[_0x231d5e(0x195)]||_0x22d822?.[_0x231d5e(0x195)]),_0x3c8e1a=_0x22d822?.[_0x231d5e(0x206)],_0x5960fa=_0x4adb67['setupHeaders'],_0x513d15=_0x5960fa??_0x22d822?.[_0x231d5e(0x1ae)],_0x462bc3=_0x3b47d4[_0x231d5e(0x1bd)]??_0x4adb67['baseUrl']??(_0x3c8e1a&&_0x547a37[_0x231d5e(0x1b5)](_0x3c8e1a['length'],0x0)?_0x3c8e1a[0x0]:''),_0x2e4451=_0x462bc3?needsTunnel(_0x462bc3):![],_0x405eec={'invalidateOn':_0x22d822?.['invalidateOn'],'userAgent':_0x22d822?.[_0x231d5e(0x15b)]?.[_0x231d5e(0x1c2)]??_0x4adb67['userAgent']};_0x6f3775&&console['log'](_0x231d5e(0x17f)+_0x4b2f89['name']+_0x231d5e(0x16a));if(!_0x6f3775){const _0x2d21ec=await _0x547a37[_0x231d5e(0x177)](checkLocalCache,_0x4b2f89['name'],_0x4b2f89['organizationId'],_0x462bc3,_0x513d15,_0x405eec);if(_0x2d21ec){if(_0x462bc3&&!_0x2e4451){const _0x114055=await isCachedSessionLive(_0x2d21ec['storageStatePath'],_0x462bc3,{'sessionCheckPath':_0x22d822?.[_0x231d5e(0x182)],'setupHeaders':_0x513d15},{'launchBrowser':launchRealBrowser});if(_0x114055)return console['log'](_0x231d5e(0x19e)+_0x4b2f89['name']+'\x22'),{'authPath':_0x2d21ec[_0x231d5e(0x186)],'settings':_0x4c8770,'resolvedEnv':_0x22d822};console['log']('\x20\x20Cached\x20session\x20for\x20\x22'+_0x4b2f89[_0x231d5e(0x183)]+_0x231d5e(0x1b2)),_0x547a37['TjuLX'](emitSessionValidationHint,_0x462bc3,_0x22d822);}else return _0x2e4451&&console[_0x231d5e(0x1fe)](_0x231d5e(0x14c)+_0x4b2f89[_0x231d5e(0x183)]+'\x22'),{'authPath':_0x2d21ec[_0x231d5e(0x186)],'settings':_0x4c8770,'resolvedEnv':_0x22d822};}}if(!_0x6f3775&&_0x4b2f89[_0x231d5e(0x166)]){const _0x37aad9=await writeSessionToLocalCache(_0x4b2f89['name'],_0x4b2f89[_0x231d5e(0x157)],_0x462bc3,_0x513d15,_0x4b2f89['sessionState'],_0x3c8e1a,_0x405eec);if(_0x462bc3){const _0x34f2d0=await _0x547a37[_0x231d5e(0x1dc)](isCachedSessionLive,_0x37aad9,_0x462bc3,{'sessionCheckPath':_0x22d822?.[_0x231d5e(0x182)],'setupHeaders':_0x513d15},{'launchBrowser':launchRealBrowser});if(_0x34f2d0)return console['log']('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x4b2f89['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x37aad9,'settings':_0x4c8770,'resolvedEnv':_0x22d822};console['log']('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x4b2f89['name']+_0x231d5e(0x15a)),_0x547a37['pDAjr'](emitSessionValidationHint,_0x462bc3,_0x22d822);}else return{'authPath':_0x37aad9,'settings':_0x4c8770,'resolvedEnv':_0x22d822};}if(_0xafd180)return console[_0x231d5e(0x1fe)](_0x231d5e(0x207)+_0x4b2f89['name']+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x4c8770,'resolvedEnv':_0x22d822};console[_0x231d5e(0x1fe)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x4b2f89['name']+_0x231d5e(0x1e0));const _0x2088d5=_0x547a37['RtsRm'](Boolean,process['env']['RANGER_TEST_USERNAME'])&&_0x547a37['yStzg'](Boolean,process[_0x231d5e(0x1f1)][_0x231d5e(0x15f)]),_0x3ecc2d=Boolean(_0x4b2f89['username']),_0x54b0b4=Boolean(_0x3b47d4['assertedEnv']),_0x1a6cad=_0x462bc3?_0x547a37[_0x231d5e(0x1a0)](isBareLocalhost,_0x462bc3):![],_0x491d6b=(_0x2088d5||_0x3ecc2d)&&_0x547a37[_0x231d5e(0x1f3)](!_0x1a6cad,_0x54b0b4);if(_0x491d6b)try{const _0x2b9e5e=_0x462bc3?await serverSideLoginWithOptionalTunnel(_0x4b2f89[_0x231d5e(0x183)],_0x462bc3,{'force':_0x6f3775,'telemetry':_0x3b47d4['telemetry'],'env':_0x3b47d4['assertedEnv']}):await _0x547a37[_0x231d5e(0x16e)](serverSideLogin,_0x4b2f89[_0x231d5e(0x183)],{'force':_0x6f3775,'env':_0x3b47d4[_0x231d5e(0x1df)]});if(_0x2b9e5e['status']===_0x547a37[_0x231d5e(0x1e2)])console[_0x231d5e(0x1fe)](_0x231d5e(0x181));else{if(_0x2b9e5e[_0x231d5e(0x19f)]===_0x547a37['mBwqj']&&_0x2b9e5e[_0x231d5e(0x18d)]){console['log'](_0x547a37['GSnPA']);const _0x3d2da1=await _0x547a37['JGbrf'](writeSessionToLocalCache,_0x4b2f89['name'],_0x4b2f89[_0x231d5e(0x157)],_0x462bc3,_0x513d15,_0x2b9e5e['session_state'],_0x3c8e1a,_0x405eec);return _0x2088d5&&!_0x3ecc2d&&await promptSaveCredentials(_0x4b2f89[_0x231d5e(0x183)]),{'authPath':_0x3d2da1,'settings':_0x4c8770,'resolvedEnv':_0x22d822};}else _0x2b9e5e[_0x231d5e(0x15e)]&&(console[_0x231d5e(0x1fe)](_0x547a37['boZrj']),console[_0x231d5e(0x1fe)](_0x2b9e5e['test_output'])),console['log'](_0x231d5e(0x1cd));}}catch(_0xdacff3){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x547a37[_0x231d5e(0x203)](_0xdacff3,Error)?_0xdacff3[_0x231d5e(0x154)]:_0x547a37['absWR'](String,_0xdacff3))),console['log'](_0x547a37['VZGUe']);}if(_0x547a37['vRdoP'](_0x1a6cad,!_0x54b0b4)&&!_0x547a37['nrZKw'](isInteractive))throw new Error(_0x547a37[_0x231d5e(0x171)](_0x231d5e(0x193)+_0x462bc3+_0x231d5e(0x1a4)+_0x4b2f89['name']+_0x231d5e(0x1bb)+('\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20'+_0x4b2f89[_0x231d5e(0x183)]+'\x20--url\x20'+_0x462bc3+'\x0a'),_0x547a37['UtPUq']));const _0x41a86d=_0x22d822?{..._0x22d822,'domains':_0x547a37[_0x231d5e(0x1b8)](orderLoginDomains,_0x462bc3,_0x22d822['domains']),'setupHeaders':_0x513d15}:_0x462bc3?{'key':_0x4b2f89['environmentKey']??'','domains':[_0x462bc3],'setupHeaders':_0x513d15}:null,{sessionState:_0x38021d}=await manualBrowserLogin(_0x4b2f89,_0x41a86d,{'persistSessionState':!_0x2e4451}),_0x1c7272=await _0x547a37[_0x231d5e(0x1d7)](writeSessionToLocalCache,_0x4b2f89['name'],_0x4b2f89['organizationId'],_0x462bc3,_0x513d15,_0x38021d,_0x3c8e1a,_0x405eec);return{'authPath':_0x1c7272,'settings':_0x4c8770,'resolvedEnv':_0x22d822};}
|
|
1
|
+
const _0x1e8167=_0x486f;(function(_0x5cbe39,_0x2bda8a){const _0x3c40ec=_0x486f,_0x35f071=_0x5cbe39();while(!![]){try{const _0x17c738=-parseInt(_0x3c40ec(0xf1))/0x1+-parseInt(_0x3c40ec(0x18c))/0x2*(parseInt(_0x3c40ec(0x129))/0x3)+parseInt(_0x3c40ec(0xfc))/0x4+parseInt(_0x3c40ec(0x14d))/0x5+-parseInt(_0x3c40ec(0x13e))/0x6+parseInt(_0x3c40ec(0x17c))/0x7+-parseInt(_0x3c40ec(0x162))/0x8;if(_0x17c738===_0x2bda8a)break;else _0x35f071['push'](_0x35f071['shift']());}catch(_0x2369a6){_0x35f071['push'](_0x35f071['shift']());}}}(_0x4747,0xb0c44));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x3f7ac0 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isBareLocalhost,isCachedSessionLive,isInteractive,needsTunnel,orderLoginDomains,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x333db3){const _0x1bbdaf=_0x486f,_0x1f954c={'iBdMe':_0x1bbdaf(0x14c)};try{return new URL(_0x333db3)['host'];}catch{return _0x1f954c['iBdMe'];}}function errorMessageForTelemetry(_0x137c79){const _0xccbae7=_0x486f,_0x5233fb={'zcTEQ':function(_0xfd933b,_0x3c0466){return _0xfd933b instanceof _0x3c0466;}};return _0x5233fb[_0xccbae7(0xff)](_0x137c79,Error)?_0x137c79[_0xccbae7(0x141)]:undefined;}function trackBridgeEvent(_0xf3eacf,_0x409686){const _0x1307b3=_0x486f,_0x48a4f0={'kDQmy':'tunnel_bridge_event','mWlCU':function(_0x4413d7,_0x446fdb){return _0x4413d7===_0x446fdb;},'YlMJM':'local_ws_error','iNeIo':'tunnel_bridge'};if(!_0xf3eacf)return;const _0x2ff472={'tunnelSessionId':_0x409686[_0x1307b3(0x198)],'tunnelEventType':_0x409686[_0x1307b3(0x14e)],'connectionId':_0x409686['connectionId'],'code':_0x409686[_0x1307b3(0x12f)],'reason':_0x409686['reason'],'error':_0x409686[_0x1307b3(0x195)],'elapsedMs':_0x409686[_0x1307b3(0x116)],'activeLocalConnections':_0x409686[_0x1307b3(0x100)],'pendingLocalConnections':_0x409686[_0x1307b3(0x13a)]};_0xf3eacf[_0x1307b3(0x17e)](_0x48a4f0[_0x1307b3(0xef)],_0x2ff472),(_0x409686[_0x1307b3(0x14e)]===_0x1307b3(0x13f)||_0x48a4f0[_0x1307b3(0x187)](_0x409686['type'],_0x48a4f0[_0x1307b3(0x18a)]))&&void _0xf3eacf[_0x1307b3(0x11b)](_0x48a4f0[_0x1307b3(0x160)],new Error(_0x409686['error']??_0x409686['type']),_0x2ff472);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;function _0x486f(_0x427f2a,_0x4e2a15){_0x427f2a=_0x427f2a-0xef;const _0x4747b5=_0x4747();let _0x486ff9=_0x4747b5[_0x427f2a];return _0x486ff9;}async function requireToken(){const _0x57a6fd=_0x486f,_0x4c580f={'XzFou':function(_0x5ca5ca){return _0x5ca5ca();},'zFzpT':_0x57a6fd(0x14f)},_0x2a6a76=await _0x4c580f[_0x57a6fd(0x10d)](getToken);if(!_0x2a6a76)throw new Error(_0x4c580f[_0x57a6fd(0x17b)]);return _0x2a6a76;}async function apiRequest(_0x33c57a,_0x2fb471={}){const _0x14932f=_0x486f,_0x2f3fd9={'aqEgF':function(_0x29dcd4){return _0x29dcd4();},'IgqtT':function(_0x2a589a,_0x626845){return _0x2a589a===_0x626845;},'FTAzj':function(_0x4a1e5e,_0x5ec938){return _0x4a1e5e===_0x5ec938;},'KijSG':function(_0x5bab1b,_0x5cd3ea){return _0x5bab1b===_0x5cd3ea;}},_0x525f7d=await requireToken(),_0x3507d3=_0x2f3fd9['aqEgF'](getApiBaseUrl),_0x27ce55=await fetch(''+_0x3507d3+_0x33c57a,{..._0x2fb471,'headers':{'Authorization':_0x14932f(0xf2)+_0x525f7d,'Content-Type':_0x14932f(0x139),..._0x2fb471['headers']??{}}});if(!_0x27ce55['ok']){let _0x4eb135='',_0x2adf7d;try{const _0x27fba9=await _0x27ce55['json'](),_0x2ae4d0=(_0x2f3fd9['IgqtT'](typeof _0x27fba9['error'],'string')?_0x27fba9['error']:undefined)??JSON['stringify'](_0x27fba9);_0x4eb135=_0x2ae4d0;_0x2f3fd9['FTAzj'](typeof _0x27fba9['test_output'],_0x14932f(0x102))&&_0x27fba9[_0x14932f(0x173)]&&(_0x4eb135=_0x4eb135+'\x0a'+_0x27fba9['test_output']);if(typeof _0x27fba9['code']===_0x14932f(0x102))_0x2adf7d=_0x27fba9[_0x14932f(0x12f)];}catch{_0x4eb135=_0x27ce55[_0x14932f(0x184)];}throw new ApiError(_0x14932f(0x18e)+_0x33c57a+'\x20failed\x20('+_0x27ce55[_0x14932f(0x108)]+'):\x20'+_0x4eb135,_0x27ce55['status'],_0x4eb135,_0x2adf7d);}if(_0x2f3fd9['KijSG'](_0x27ce55[_0x14932f(0x108)],0xcc))return undefined;return _0x27ce55['json']();}export class ApiError extends Error{[_0x1e8167(0x108)];[_0x1e8167(0x12a)];['code'];constructor(_0x2ab18d,_0x340379,_0x2b788b,_0x3e107a){const _0x51c810=_0x1e8167;super(_0x2ab18d),this['status']=_0x340379,this[_0x51c810(0x12a)]=_0x2b788b,this['code']=_0x3e107a,this[_0x51c810(0x164)]='ApiError';}}export async function fetchCloudProfile(_0x5a1820){const _0x4d8c75=_0x1e8167,_0x465169={'nzArF':function(_0x17851e,_0x45a970){return _0x17851e(_0x45a970);}};try{return await _0x465169[_0x4d8c75(0x167)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x5a1820));}catch(_0x530c6f){if(_0x530c6f instanceof ApiError&&_0x530c6f['status']===0x194)return null;throw _0x530c6f;}}function _0x4747(){const _0x4822a0=['gGPMO','true','catch','AUGkX','\x20\x20Cloud\x20profile\x20\x22','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','error','stringify','PCEiO','sessionId','ecITR','invalidateOn','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','session_state','/api/v1/profiles/','\x22,\x20attempting\x20login...','cCjDx','cookies','QhJTY','profiles','domains','tunnelUrl','kDQmy','FNILG','930613hmawvB','Bearer\x20','/login','environmentKey','sJbhg','\x20--url\x20','MhpGe','url','\x22\x20for\x20','env','close','5197868YWGmaM','forceLogin','huYbw','zcTEQ','activeLocalConnections','tjmKo','string','fDZTR','/api/v1/profiles','tunnel_session_id','RIQwj','storageStatePath','status','uXSNb','settings','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','CHVAL','XzFou',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','telemetry','loginInstructions','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','\x22.\x0a','save','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','elapsedMs','KIrWk','lQQux','\x22,\x20cached\x20locally','auth','trackPhaseError','HWUmQ','auth_config','tunnel','\x22;\x20using\x20\x22','cykUc','pBezm','kmcgw','utf-8','confirm','agent','2|0|4|3|1','\x22\x20not\x20found.','username','3515331RwGWdO','detail','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','toLowerCase','wuYBN','\x20\x20Created\x20cloud\x20profile\x20\x22','code','VHNma','RANGER_TEST_USERNAME','force','WXthL','iyenm','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','persistSessionState','keys','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','application/json','pendingLocalConnections','raw','HcpxC','/api/v1/tunnel/sessions/','822270kAhUTU','tunnel_error','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','message','pwEndpoint','password','effectiveBaseUrl','pw_endpoint','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','\x22,\x20refreshing\x20session...','key','launch','sessionState','\x20Available:\x20','invalid-url','4189120ZhPIFl','type','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','browserOptions','tunnel_login_request','xvRZb','bFZuU','prompt','No\x20saved\x20session\x20for\x20\x22','ambiguous','defaultEnvironmentKey','tunnel_login_setup','tunnel_login_cleanup','EmPby','assertedEnv','nnRas','fxWkX','PUT','iNeIo','organizationId','2177808LsZoyA','RANGER_TEST_PASSWORD','name','\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','nzArF','userAgent','Pass\x20--base-url\x20<your-app-url>\x20so\x20Ranger\x20can\x20match\x20the\x20right\x20one,\x20or\x20create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`.','QuPUF','setupHeaders','\x22\x20instead.','XiANy','log','isArray','jrKTL','then','clientIp','test_output','origin','\x22;\x20proceeding\x20with\x20loginInstructions.','\x20\x20Cloud\x20session\x20for\x20\x22','about:blank','\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','join','zFzpT','7688842cNxjoB','replace','trackPhaseEnd','sessionCheckPath','vkFqq','decui','cEKtl','length','statusText','not_configured',').\x20','mWlCU','environments','POST','YlMJM','yqqYc','2sSayve','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','API\x20request\x20'];_0x4747=function(){return _0x4822a0;};return _0x4747();}export async function listCloudProfiles(){const _0x4cda4b=_0x1e8167,_0x47dbbf={'emyho':function(_0x4aaa2d,_0x3f58a0){return _0x4aaa2d(_0x3f58a0);},'kmcgw':_0x4cda4b(0x104)},_0x35fe4c=await _0x47dbbf['emyho'](apiRequest,_0x47dbbf[_0x4cda4b(0x122)]);return _0x35fe4c[_0x4cda4b(0x1a2)];}export async function deleteCloudProfile(_0x5858f4){const _0xda29ff=_0x1e8167;try{await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x5858f4),{'method':'DELETE'});}catch(_0x113259){if(_0x113259 instanceof ApiError&&_0x113259['status']===0x194)throw new Error('Cloud\x20profile\x20\x22'+_0x5858f4+_0xda29ff(0x127));throw _0x113259;}}export async function createCloudProfile(_0x3db164,_0x25517e,_0x559a44={}){const _0xd0abd9=_0x1e8167,_0x230b1c={'yLDSk':function(_0x2dbad5,_0x34b5dd,_0x494324){return _0x2dbad5(_0x34b5dd,_0x494324);},'pBezm':'/api/v1/profiles','bGEMB':_0xd0abd9(0x189)},_0x55b95f={'name':_0x3db164};if(_0x25517e)_0x55b95f['environment_key']=_0x25517e;_0x559a44['settings']&&Object['keys'](_0x559a44['settings'])['length']>0x0&&(_0x55b95f[_0xd0abd9(0x10a)]=_0x559a44[_0xd0abd9(0x10a)]);if(_0x559a44[_0xd0abd9(0x128)])_0x55b95f['username']=_0x559a44['username'];if(_0x559a44['password'])_0x55b95f[_0xd0abd9(0x143)]=_0x559a44['password'];return await _0x230b1c['yLDSk'](apiRequest,_0x230b1c[_0xd0abd9(0x121)],{'method':_0x230b1c['bGEMB'],'body':JSON[_0xd0abd9(0x196)](_0x55b95f)});}export async function uploadCloudProfileSession(_0x36ef13,_0x28e85d){const _0x2b460b=_0x1e8167,_0x2d697a={'kZWVr':function(_0x409ad7,_0x2b60a5){return _0x409ad7(_0x2b60a5);}};return await apiRequest(_0x2b460b(0x19d)+_0x2d697a['kZWVr'](encodeURIComponent,_0x36ef13)+'/session',{'method':_0x2b460b(0x189),'body':JSON[_0x2b460b(0x196)]({'session_state':_0x28e85d})});}export async function saveCloudProfileCredentials(_0x4c3be2,_0x340af6,_0x4cf3d9){const _0x1d4a38=_0x1e8167,_0x5d0691={'NuFeV':function(_0xfe57af,_0x15acdd,_0x1f878e){return _0xfe57af(_0x15acdd,_0x1f878e);}};await _0x5d0691['NuFeV'](apiRequest,_0x1d4a38(0x19d)+encodeURIComponent(_0x4c3be2),{'method':_0x1d4a38(0x15f),'body':JSON[_0x1d4a38(0x196)]({'username':_0x340af6,'password':_0x4cf3d9})});}export async function fetchAuthConfig(){const _0x472402=_0x1e8167,_0x256d89={'nnRas':function(_0x433e34,_0x5aae0f){return _0x433e34(_0x5aae0f);},'kyutR':function(_0x3658eb,_0x9b102c){return _0x3658eb instanceof _0x9b102c;}};try{const _0x58f192=await _0x256d89[_0x472402(0x15d)](apiRequest,'/api/v1/profiles/auth-config');return _0x58f192[_0x472402(0x11d)];}catch(_0x24508b){return _0x256d89['kyutR'](_0x24508b,ApiError)&&_0x24508b['status']!==0x194&&console[_0x472402(0x195)](_0x472402(0x135)+_0x24508b[_0x472402(0x141)]),null;}}async function createTunnelSession(_0x59487f){const _0x1db2f4=_0x1e8167,_0x19e7fe={'FNILG':function(_0xbb948f,_0x1bfcda,_0x4cb216){return _0xbb948f(_0x1bfcda,_0x4cb216);},'yqqYc':'/api/v1/tunnel/sessions'};return await _0x19e7fe[_0x1db2f4(0xf0)](apiRequest,_0x19e7fe[_0x1db2f4(0x18b)],{'method':'POST','body':JSON[_0x1db2f4(0x196)]({'targetUrl':_0x59487f,'mode':_0x1db2f4(0x125)})});}async function deleteTunnelSession(_0x2f1e5b){const _0x10b474=_0x1e8167,_0x4d935e={'PCEiO':'DELETE'};await apiRequest(_0x10b474(0x13d)+_0x2f1e5b,{'method':_0x4d935e[_0x10b474(0x197)]});}export function pickAdHocEnvKey(_0x41e138,_0x2f6311,_0x206e1a){const _0x36ef32=_0x1e8167,_0x47371e={'zrYwS':function(_0x34cfef,_0x2a7400){return _0x34cfef+_0x2a7400;},'WXthL':function(_0x1a8f46,_0x249cec){return _0x1a8f46+_0x249cec;},'HBJIR':function(_0x5cb153,_0x49455b){return _0x5cb153 in _0x49455b;},'SFSQs':'key','bFZuU':function(_0x57f6da,_0x3b8f39){return _0x57f6da+_0x3b8f39;},'NzANO':function(_0x5d60be,_0x594f35){return _0x5d60be===_0x594f35;},'RIQwj':function(_0x1c58a6,_0x15ac45){return _0x1c58a6===_0x15ac45;},'gMWVP':function(_0x4ed64b,_0x2dada8){return _0x4ed64b+_0x2dada8;}};if(_0x206e1a){if(!_0x41e138?.['environments']?.[_0x206e1a]){const _0x2e9651=Object[_0x36ef32(0x137)](_0x41e138?.[_0x36ef32(0x188)]??{});throw new Error(_0x47371e['zrYwS'](_0x47371e[_0x36ef32(0x133)]('Auth\x20environment\x20\x22'+_0x206e1a+_0x36ef32(0x179),_0x2e9651[_0x36ef32(0x183)]?_0x36ef32(0x14b)+_0x2e9651['join'](',\x20')+'.':_0x36ef32(0x165)),'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)'));}return _0x206e1a;}if(!_0x41e138)return null;if(_0x2f6311){const _0x1a1833=matchAuthEnvironmentExact(_0x2f6311,_0x41e138);if(_0x1a1833)return _0x1a1833;const _0x39a50a=matchAuthEnvironmentByHost(_0x2f6311,_0x41e138);if(_0x39a50a&&_0x47371e['HBJIR'](_0x47371e['SFSQs'],_0x39a50a))return console['log']('\x20\x20Auth\x20env\x20\x22'+_0x39a50a[_0x36ef32(0x148)]+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x2f6311+_0x36ef32(0x19b)),_0x39a50a['key'];if(_0x39a50a&&_0x47371e['HBJIR'](_0x36ef32(0x157),_0x39a50a))throw new Error(_0x36ef32(0x146)+_0x39a50a[_0x36ef32(0x157)][_0x36ef32(0x17a)](',\x20')+_0x36ef32(0x10e));if(needsTunnel(_0x2f6311))throw new Error(_0x47371e[_0x36ef32(0x154)](_0x36ef32(0x194)+_0x2f6311+_0x36ef32(0x113)+_0x36ef32(0x140)+'\x20\x20Options:\x0a'+'\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a',_0x36ef32(0x178)+_0x2f6311[_0x36ef32(0x17d)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a')+(_0x36ef32(0x111)+_0x2f6311+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x41e138['defaultEnvironmentKey'])return _0x41e138[_0x36ef32(0x158)];const _0x441e41=Object[_0x36ef32(0x137)](_0x41e138['environments']??{});if(_0x47371e['NzANO'](_0x441e41['length'],0x1))return _0x441e41[0x0];if(_0x47371e[_0x36ef32(0x106)](_0x441e41[_0x36ef32(0x183)],0x0))return null;throw new Error(_0x47371e['gMWVP']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x441e41[_0x36ef32(0x17a)](',\x20')+_0x36ef32(0x186),_0x36ef32(0x169)));}export function adHocProfileName(_0x29e7cf,_0x1b9a65,_0x4fcb32){const _0x177cad={'DPpUU':function(_0x3111e3,_0xae3adc){return _0x3111e3===_0xae3adc;}};if(!_0x1b9a65||_0x177cad['DPpUU'](_0x1b9a65,_0x4fcb32))return _0x29e7cf;return _0x29e7cf+':'+_0x1b9a65;}export async function resolveAdHocProfile(_0x215c3b={},_0x5565e5=process['env']){const _0x36d3e3=_0x1e8167,_0x315893={'kXXqU':function(_0x72bc18,_0x3b921d,_0x126bf,_0x457f64){return _0x72bc18(_0x3b921d,_0x126bf,_0x457f64);},'iSpKA':function(_0x3d4137,_0x16775b){return _0x3d4137(_0x16775b);},'decui':function(_0xfef454,_0x4350e6){return _0xfef454&&_0x4350e6;},'oWIfo':function(_0x221338,_0x28a796){return _0x221338(_0x28a796);},'LbrIg':function(_0x495888,_0x476eda){return _0x495888??_0x476eda;}},_0x545258=_0x5565e5['RANGER_TEST_USERNAME'];if(!_0x545258)return null;const _0x59c9a7=await fetchAuthConfig(),_0x16ea31=pickAdHocEnvKey(_0x59c9a7,_0x215c3b['targetUrl'],_0x215c3b['envKey']);let _0x2768e6=_0x315893['kXXqU'](adHocProfileName,_0x545258,_0x16ea31,_0x59c9a7?.['defaultEnvironmentKey']),_0x565a3f=await _0x315893['iSpKA'](fetchCloudProfile,_0x2768e6);_0x315893[_0x36d3e3(0x181)](_0x565a3f,_0x16ea31)&&_0x565a3f[_0x36d3e3(0xf4)]!==_0x16ea31&&(console[_0x36d3e3(0x16e)](_0x36d3e3(0x193)+_0x2768e6+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x565a3f['environmentKey']??'none')+_0x36d3e3(0x166)+_0x16ea31+_0x36d3e3(0x11f)+_0x545258+':'+_0x16ea31+_0x36d3e3(0x16c)),_0x2768e6=_0x545258+':'+_0x16ea31,_0x565a3f=await _0x315893['oWIfo'](fetchCloudProfile,_0x2768e6));if(_0x565a3f)return{'name':_0x565a3f['name'],'profile':_0x565a3f};const _0x25893b=_0x5565e5[_0x36d3e3(0x163)],_0x29d2a7=await _0x315893['kXXqU'](createCloudProfile,_0x2768e6,_0x315893['LbrIg'](_0x16ea31,undefined),{'username':_0x545258,'password':_0x25893b});return console[_0x36d3e3(0x16e)](_0x36d3e3(0x12e)+_0x29d2a7['name']+_0x36d3e3(0xf9)+_0x545258+(_0x16ea31?'\x20(auth\x20env:\x20'+_0x16ea31+')':'')),{'name':_0x29d2a7[_0x36d3e3(0x164)],'profile':_0x29d2a7};}export async function writeSessionToLocalCache(_0x327b34,_0x3f6743,_0x1504ea,_0x152b53,_0x4418d9,_0x1ae7fa,_0x2a93f0){const _0x2f21cd=_0x1e8167,_0x1b30f9={'zNaIy':function(_0x1cf559,_0x478024){return _0x1cf559(_0x478024);},'vraVQ':function(_0x4155b8,_0x8bcce4,_0x1a08d2){return _0x4155b8(_0x8bcce4,_0x1a08d2);},'zekoO':_0x2f21cd(0x11a),'iaOsz':function(_0x949b8b,_0x5f48ec,_0x1f351b){return _0x949b8b(_0x5f48ec,_0x1f351b);},'XiANy':function(_0xe1e556,_0x5c96ac,_0x28d716){return _0xe1e556(_0x5c96ac,_0x28d716);}},_0x29385e=_0x1b30f9['zNaIy'](sessionCacheHash,{'orgId':_0x3f6743,'profileName':_0x327b34,'effectiveBaseUrl':_0x1504ea,'setupHeaders':_0x152b53,'invalidateOn':_0x2a93f0?.[_0x2f21cd(0x19a)],'userAgent':_0x2a93f0?.['userAgent'],'clientIp':_0x2a93f0?.[_0x2f21cd(0x172)]}),_0xa1af20=getSessionCachePath(_0x29385e,_0x327b34),_0x349ac4=_0x1b30f9['vraVQ'](join,getRangerHomeDir(),_0x1b30f9['zekoO']);!existsSync(_0x349ac4)&&await _0x1b30f9['vraVQ'](mkdir,_0x349ac4,{'recursive':!![]});const _0x8316f6={..._0x4418d9};_0x1ae7fa&&_0x1ae7fa['length']>0x0&&Array[_0x2f21cd(0x16f)](_0x8316f6[_0x2f21cd(0x1a0)])&&(_0x8316f6[_0x2f21cd(0x1a0)]=_0x1b30f9['vraVQ'](duplicateCookiesForDomains,_0x8316f6[_0x2f21cd(0x1a0)],_0x1ae7fa));const _0x251525={'cached_at':new Date()['toISOString'](),'session_state':_0x8316f6};await _0x1b30f9['iaOsz'](writeFile,_0xa1af20,JSON['stringify'](_0x251525,null,0x2));const _0x1fdeef=_0x1b30f9['zNaIy'](getStorageStatePath,_0xa1af20);return await _0x1b30f9[_0x2f21cd(0x16d)](writeFile,_0x1fdeef,JSON[_0x2f21cd(0x196)](_0x8316f6,null,0x2)),_0x1fdeef;}export async function checkLocalCache(_0x5172dc,_0x4f55e2,_0x662055,_0x17f87d,_0x508ca5){const _0x3e1442=_0x1e8167,_0x2544dd={'WSSFV':function(_0x19e2e8,_0x314087){return _0x19e2e8(_0x314087);},'BRFEE':_0x3e1442(0x123)},_0x3986e0=sessionCacheHash({'orgId':_0x4f55e2,'profileName':_0x5172dc,'effectiveBaseUrl':_0x662055,'setupHeaders':_0x17f87d,'invalidateOn':_0x508ca5?.[_0x3e1442(0x19a)],'userAgent':_0x508ca5?.[_0x3e1442(0x168)],'clientIp':_0x508ca5?.[_0x3e1442(0x172)]}),_0x4eaf93=getSessionCachePath(_0x3986e0,_0x5172dc),_0x1f0dfb=_0x2544dd['WSSFV'](getStorageStatePath,_0x4eaf93);if(!existsSync(_0x4eaf93)||!existsSync(_0x1f0dfb))return null;try{const _0x3f2441=await readFile(_0x4eaf93,_0x2544dd['BRFEE']);return JSON['parse'](_0x3f2441),{'storageStatePath':_0x1f0dfb};}catch{return null;}}function launchRealBrowser(){const _0x208363=_0x1e8167;return chromium[_0x208363(0x149)]({'headless':!![]});}function emitSessionValidationHint(_0x3d5134,_0x2c72ba){const _0x522633=_0x1e8167,_0x22db1f={'kodIe':function(_0x250482,_0x187aac){return _0x250482===_0x187aac;},'gkJaa':function(_0x5ed630,_0x2181af){return _0x5ed630+_0x2181af;},'VHNma':function(_0x4aa351,_0x248380){return _0x4aa351+_0x248380;}};if(!_0x2c72ba||!_0x2c72ba[_0x522633(0x1a3)]?.[_0x522633(0x183)])return;let _0x27803e;try{_0x27803e=new URL(_0x3d5134);}catch{return;}const _0x5012b9=[];for(const _0x7d2fc8 of _0x2c72ba['domains']){try{_0x5012b9['push']({'raw':_0x7d2fc8,'url':new URL(_0x7d2fc8)});}catch{}}if(_0x22db1f['kodIe'](_0x5012b9[_0x522633(0x183)],0x0))return;if(_0x5012b9['some'](_0x28a6a8=>_0x28a6a8[_0x522633(0xf8)]['origin']===_0x27803e[_0x522633(0x174)]))return;const _0x105a7b=_0x5012b9['map'](_0x3d5329=>'\x22'+_0x3d5329[_0x522633(0x13b)]+'\x22')[_0x522633(0x17a)](',\x20');console[_0x522633(0x16e)](_0x22db1f['gkJaa'](_0x22db1f[_0x522633(0x130)]('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x105a7b+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x3d5134+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20'),'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.'));}export async function serverSideLogin(_0x476e91,_0x3afdd3){const _0x45702b=_0x1e8167,_0x53efda={'WVNCK':function(_0x192a4f,_0x499919){return _0x192a4f(_0x499919);},'MhpGe':_0x45702b(0x189),'jrKTL':function(_0x4061f6,_0x3b1202){return _0x4061f6===_0x3b1202;}},_0x16fa5e=process['env']['RANGER_TEST_USERNAME'],_0x361643=process[_0x45702b(0xfa)][_0x45702b(0x163)],_0x230931={};if(_0x16fa5e)_0x230931[_0x45702b(0x128)]=_0x16fa5e;if(_0x361643)_0x230931['password']=_0x361643;if(_0x3afdd3?.['force'])_0x230931['force']=!![];if(_0x3afdd3?.['targetUrl'])_0x230931['target_url']=_0x3afdd3['targetUrl'];if(_0x3afdd3?.[_0x45702b(0xfa)])_0x230931['env']=_0x3afdd3[_0x45702b(0xfa)];_0x3afdd3?.[_0x45702b(0x11e)]&&(_0x230931[_0x45702b(0x105)]=_0x3afdd3['tunnel']['sessionId'],_0x230931[_0x45702b(0x145)]=_0x3afdd3[_0x45702b(0x11e)][_0x45702b(0x142)]);try{return await apiRequest(_0x45702b(0x19d)+_0x53efda['WVNCK'](encodeURIComponent,_0x476e91)+_0x45702b(0xf3),{'method':_0x53efda[_0x45702b(0xf7)],'body':JSON['stringify'](_0x230931)});}catch(_0x41caf6){if(_0x41caf6 instanceof ApiError&&_0x53efda[_0x45702b(0x170)](_0x41caf6['status'],0x190)&&_0x53efda['jrKTL'](_0x41caf6['code'],_0x45702b(0x185)))return{'status':'not_configured','error':_0x41caf6[_0x45702b(0x12a)]};throw _0x41caf6;}}async function serverSideLoginWithOptionalTunnel(_0x270c85,_0x14f7a3,_0xf0d3ba={}){const _0x315326=_0x1e8167,_0x1afc59={'SrJOb':'tunnel_login_request','gGPMO':function(_0x3b09fd,_0x1620d7){return _0x3b09fd(_0x1620d7);},'uAJgM':function(_0x4c9171,_0x595e9f){return _0x4c9171===_0x595e9f;},'xvRZb':function(_0x2ad9f8,_0x2b5610){return _0x2ad9f8(_0x2b5610);},'fDZTR':'tunnel_login_setup','OrBrY':_0x315326(0x115),'sJbhg':function(_0xfd41f2){return _0xfd41f2();},'Wiout':function(_0x2211c4,_0x1e6c54){return _0x2211c4(_0x1e6c54);},'fxWkX':function(_0x282f47,_0x27de25){return _0x282f47(_0x27de25);}};if(!needsTunnel(_0x14f7a3))return await serverSideLogin(_0x270c85,{'force':_0xf0d3ba['force'],'env':_0xf0d3ba['env']});let _0x36de87=null,_0x5c4093=null,_0x5a7547=null,_0x1c09a2=null,_0x26873f=![];const _0x4ea1a6=process['env']['RANGER_TUNNEL_LOGIN_HEADED']?.[_0x315326(0x12c)](),_0x4e5f25=_0x1afc59['uAJgM'](_0x4ea1a6,'1')||_0x1afc59['uAJgM'](_0x4ea1a6,_0x315326(0x190)),_0x2b23c2={'profileName':_0x270c85,'targetUrlHost':_0x1afc59[_0x315326(0x153)](targetHostForTelemetry,_0x14f7a3),'tunnelRequired':!![],'forceLogin':Boolean(_0xf0d3ba['force']),'localBrowserServerHeaded':_0x4e5f25};try{_0xf0d3ba[_0x315326(0x10f)]?.['trackPhaseStart'](_0x1afc59[_0x315326(0x103)],_0x2b23c2);_0x4e5f25&&console['log'](_0x1afc59['OrBrY']);_0x36de87=await launchBrowserServer({'headless':!_0x4e5f25}),_0x5c4093=await createTunnelSession(_0x14f7a3);const _0x247147=await _0x1afc59[_0x315326(0xf5)](requireToken);_0x5a7547=await _0x1afc59['Wiout'](createTunnelBridge,{'localWsUrl':_0x36de87['wsEndpoint'],'tunnelServerUrl':_0x5c4093[_0x315326(0x1a4)],'sessionId':_0x5c4093['sessionId'],'apiKey':_0x247147,'onError':_0x2509b3=>{_0x1c09a2=_0x2509b3;},'onClose':()=>{const _0x276c19=_0x315326;_0x1c09a2??=new Error(_0x276c19(0x10b)+_0x270c85);},'onEvent':_0x368873=>trackBridgeEvent(_0xf0d3ba[_0x315326(0x10f)],_0x368873)}),_0xf0d3ba[_0x315326(0x10f)]?.['trackPhaseEnd'](_0x315326(0x159),{..._0x2b23c2,'tunnelSessionId':_0x5c4093['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x4e5f25}),_0x26873f=!![];try{return _0xf0d3ba[_0x315326(0x10f)]?.['trackPhaseStart'](_0x1afc59['SrJOb'],{..._0x2b23c2,'tunnelSessionId':_0x5c4093[_0x315326(0x198)]}),await serverSideLogin(_0x270c85,{'force':_0xf0d3ba[_0x315326(0x132)],'targetUrl':_0x14f7a3,'env':_0xf0d3ba['env'],'tunnel':{'sessionId':_0x5c4093['sessionId'],'pwEndpoint':_0x5c4093['pwEndpoint']}})[_0x315326(0x171)](_0x1143e1=>{const _0x6e788b=_0x315326;return _0xf0d3ba['telemetry']?.[_0x6e788b(0x17e)](_0x1afc59['SrJOb'],{..._0x2b23c2,'tunnelSessionId':_0x5c4093?.[_0x6e788b(0x198)],'loginStatus':_0x1143e1[_0x6e788b(0x108)],'hasSessionState':Boolean(_0x1143e1['session_state']),'hasTestOutput':_0x1afc59[_0x6e788b(0x18f)](Boolean,_0x1143e1['test_output']),'bridgeError':errorMessageForTelemetry(_0x1c09a2)}),_0x1143e1;});}catch(_0x67c87b){await _0xf0d3ba['telemetry']?.[_0x315326(0x11b)](_0x315326(0x152),_0x1c09a2??_0x67c87b,{..._0x2b23c2,'tunnelSessionId':_0x5c4093['sessionId'],'bridgeError':errorMessageForTelemetry(_0x1c09a2)});throw _0x1c09a2??_0x67c87b;}}catch(_0x15bb28){!_0x26873f&&await _0xf0d3ba['telemetry']?.['trackPhaseError'](_0x1afc59['fDZTR'],_0x15bb28,{..._0x2b23c2,'tunnelSessionId':_0x5c4093?.['sessionId']});throw _0x15bb28;}finally{if(_0x5c4093||_0x36de87||_0x5a7547){const _0x4f8160=_0x315326(0x126)['split']('|');let _0x8e162c=0x0;while(!![]){switch(_0x4f8160[_0x8e162c++]){case'0':_0x5a7547?.['close']();continue;case'1':_0xf0d3ba[_0x315326(0x10f)]?.[_0x315326(0x17e)]('tunnel_login_cleanup',{..._0x2b23c2,'tunnelSessionId':_0x5c4093?.[_0x315326(0x198)]});continue;case'2':_0xf0d3ba[_0x315326(0x10f)]?.['trackPhaseStart'](_0x315326(0x15a),{..._0x2b23c2,'tunnelSessionId':_0x5c4093?.['sessionId']});continue;case'3':_0x5c4093&&await _0x1afc59[_0x315326(0x15e)](deleteTunnelSession,_0x5c4093['sessionId'])[_0x315326(0x191)](()=>{});continue;case'4':_0x36de87&&await _0x36de87[_0x315326(0xfb)]()['catch'](()=>{});continue;}break;}}}}export async function manualBrowserLogin(_0xf58daf,_0x582076,_0x4ce478={}){const _0x43edeb=_0x1e8167,_0x529827={'HWUmQ':function(_0x43798e,_0x394bd0){return _0x43798e+_0x394bd0;},'eAZga':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','QuPUF':'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','wuYBN':function(_0x26281f,_0x54fc6f){return _0x26281f>_0x54fc6f;},'huYbw':_0x43edeb(0x177),'HcpxC':_0x43edeb(0x12b),'vzmOJ':'Browser\x20login\x20timed\x20out\x20before\x20completion.','VhULg':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','UlENl':function(_0x1e8e42,_0x525f39){return _0x1e8e42!==_0x525f39;},'cykUc':function(_0x4354d4,_0x4c4b51){return _0x4354d4(_0x4c4b51);},'AUGkX':'cli:manual-login'};if(!isInteractive())throw new Error(_0x529827[_0x43edeb(0x11c)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0xf58daf[_0x43edeb(0x164)]+'\x22.\x0a'+_0x529827['eAZga'],_0x529827[_0x43edeb(0x16a)]));const _0x592dc2=_0x582076&&_0x529827[_0x43edeb(0x12d)](_0x582076[_0x43edeb(0x1a3)]['length'],0x0)?_0x582076['domains'][0x0]:_0x529827[_0x43edeb(0xfe)];console[_0x43edeb(0x16e)](_0x529827[_0x43edeb(0x13c)]),console[_0x43edeb(0x16e)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x2da01d=>setTimeout(_0x2da01d,0x7d0));const _0x2d4277=await chromium['launch']({'headless':![]});let _0x5a5df9=null;try{const _0x47403d={'ignoreHTTPSErrors':!![]};_0x582076?.[_0x43edeb(0x16b)]&&(_0x47403d['extraHTTPHeaders']=_0x582076['setupHeaders']);const _0x106ac0=await _0x2d4277['newContext'](_0x47403d);await addProfileSetupBanner(_0x106ac0);const _0x2972e1=await _0x106ac0['newPage']();await _0x2972e1['goto'](_0x592dc2);let _0x16f79f=![];await new Promise(_0x55a9ce=>{const _0x26bb76=setTimeout(()=>{const _0x4cf1d1=_0x486f;_0x16f79f=!![],console['error']('Browser\x20login\x20timed\x20out\x20after\x20'+MANUAL_LOGIN_TIMEOUT_MS/0xea60+_0x4cf1d1(0x138)),_0x55a9ce();},MANUAL_LOGIN_TIMEOUT_MS);_0x2972e1['on']('close',async()=>{clearTimeout(_0x26bb76);try{const _0x45354b=await _0x106ac0['storageState']();_0x5a5df9=_0x45354b;}catch{}_0x55a9ce();});});if(_0x16f79f&&!_0x5a5df9)throw new Error(_0x529827['vzmOJ']);}finally{await _0x2d4277['close']()['catch'](()=>{});}if(!_0x5a5df9)throw new Error(_0x529827['VhULg']);return _0x529827['UlENl'](_0x4ce478[_0x43edeb(0x136)],![])&&await apiRequest(_0x43edeb(0x19d)+_0x529827[_0x43edeb(0x120)](encodeURIComponent,_0xf58daf['name'])+'/session',{'method':_0x43edeb(0x189),'body':JSON['stringify']({'session_state':_0x5a5df9,'updated_by':_0x529827[_0x43edeb(0x192)]})}),{'sessionState':_0x5a5df9};}export async function promptSaveCredentials(_0x3aefc9){const _0x3ecedb=_0x1e8167,_0x1a2d9e={'sGLQM':_0x3ecedb(0x15f)},_0x3fdd74=process['env'][_0x3ecedb(0x131)],_0x17b42e=process[_0x3ecedb(0xfa)]['RANGER_TEST_PASSWORD'];if(!_0x3fdd74||!_0x17b42e)return;if(!isInteractive())return;const {save:_0x27ff08}=await _0x3f7ac0[_0x3ecedb(0x155)]([{'type':_0x3ecedb(0x124),'name':_0x3ecedb(0x114),'message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0x27ff08)return;await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x3aefc9),{'method':_0x1a2d9e['sGLQM'],'body':JSON[_0x3ecedb(0x196)]({'username':_0x3fdd74,'password':_0x17b42e})}),console['log'](_0x3ecedb(0x18d));}export async function resolveCloudProfileSession(_0x39fc5a,_0xc8894a={}){const _0x4bd20c=_0x1e8167,_0x2a1420={'lQQux':function(_0x4e7754,_0x58008){return _0x4e7754===_0x58008;},'CHVAL':'string','xnZkl':function(_0x1bf846,_0xd4e7c0){return _0x1bf846||_0xd4e7c0;},'iyenm':function(_0x4937ae,_0xf2471c){return _0x4937ae(_0xf2471c);},'tjmKo':function(_0x43c841,_0x24c42b){return _0x43c841(_0x24c42b);},'hxnrz':function(_0x3fb6ba,_0x5825be){return _0x3fb6ba(_0x5825be);},'uXSNb':function(_0x2f0f5b,_0x34be2a,_0x3cfaac,_0xeca6bf,_0x565b2e,_0x479627){return _0x2f0f5b(_0x34be2a,_0x3cfaac,_0xeca6bf,_0x565b2e,_0x479627);},'vkFqq':function(_0x5f28fc,_0x9b162e,_0x1c9f41,_0x3546e2,_0x3ef288,_0x322717,_0x10c062,_0x3c6493){return _0x5f28fc(_0x9b162e,_0x1c9f41,_0x3546e2,_0x3ef288,_0x322717,_0x10c062,_0x3c6493);},'cEKtl':function(_0x2bd4f5,_0x27ced3,_0x40c06c,_0x3dde20,_0xe19e42){return _0x2bd4f5(_0x27ced3,_0x40c06c,_0x3dde20,_0xe19e42);},'ruFIA':function(_0x4cde79,_0x8491eb,_0x214538){return _0x4cde79(_0x8491eb,_0x214538);},'WivxF':function(_0x490f44,_0xe00292){return _0x490f44||_0xe00292;},'KIrWk':function(_0x308844,_0x24090e,_0x42ed0a,_0x1fea9e){return _0x308844(_0x24090e,_0x42ed0a,_0x1fea9e);},'RwNyk':function(_0x109dd2,_0x2b73a1,_0x4f0b4f){return _0x109dd2(_0x2b73a1,_0x4f0b4f);},'EmPby':'\x20\x20Login\x20successful.\x20Session\x20cached.','PWJAN':function(_0x21a73d,_0x28e049,_0x5c15ef,_0x90ac0d,_0x57d542,_0x187389,_0x41a570,_0x4c7d6b){return _0x21a73d(_0x28e049,_0x5c15ef,_0x90ac0d,_0x57d542,_0x187389,_0x41a570,_0x4c7d6b);},'ecITR':function(_0x309758,_0x3fe641){return _0x309758&&_0x3fe641;},'QwYwx':function(_0xad28a0,_0x3094b9){return _0xad28a0(_0x3094b9);},'QhJTY':_0x4bd20c(0x150),'cCjDx':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...'},_0x3c661f=_0x39fc5a[_0x4bd20c(0x10a)]??{},_0x3cc820=await fetchAuthConfig(),_0x5db732=_0x3cc820?resolveAuthEnvironmentLocally(_0x3cc820,_0xc8894a['assertedEnv']??_0x39fc5a[_0x4bd20c(0xf4)]):null,_0x50a92b=typeof _0x5db732?.['loginInstructions']===_0x4bd20c(0x102)&&_0x5db732[_0x4bd20c(0x110)]['trim']()?_0x5db732['loginInstructions']:undefined,_0x1a7f9c=_0x2a1420['lQQux'](typeof _0x3c661f[_0x4bd20c(0x110)],_0x2a1420[_0x4bd20c(0x10c)])&&_0x3c661f[_0x4bd20c(0x110)]['trim']()?_0x3c661f['loginInstructions']:undefined,_0x200e8c=_0x2a1420['xnZkl'](_0x1a7f9c,!_0x50a92b)?_0x3c661f:{..._0x3c661f,'loginInstructions':_0x50a92b},_0x2c65d6=_0x2a1420['iyenm'](Boolean,_0x200e8c[_0x4bd20c(0x110)]?.['trim']()),_0x24b2de=_0x2a1420[_0x4bd20c(0x101)](Boolean,_0x3c661f[_0x4bd20c(0xfd)]||_0x5db732?.[_0x4bd20c(0xfd)]),_0x2b45a6=_0x5db732?.['domains'],_0x363d1f=_0x3c661f[_0x4bd20c(0x16b)],_0x522c5b=_0x363d1f??_0x5db732?.['setupHeaders'],_0xb960df=_0xc8894a[_0x4bd20c(0x144)]??_0x3c661f['baseUrl']??(_0x2b45a6&&_0x2b45a6['length']>0x0?_0x2b45a6[0x0]:''),_0x390b5d=_0xb960df?_0x2a1420['hxnrz'](needsTunnel,_0xb960df):![],_0x3163d5={'invalidateOn':_0x5db732?.['invalidateOn'],'userAgent':_0x5db732?.[_0x4bd20c(0x151)]?.['userAgent']??_0x3c661f[_0x4bd20c(0x168)]};_0x24b2de&&console[_0x4bd20c(0x16e)]('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x39fc5a[_0x4bd20c(0x164)]+_0x4bd20c(0x147));if(!_0x24b2de){const _0x58d45a=await _0x2a1420[_0x4bd20c(0x109)](checkLocalCache,_0x39fc5a[_0x4bd20c(0x164)],_0x39fc5a['organizationId'],_0xb960df,_0x522c5b,_0x3163d5);if(_0x58d45a){if(_0xb960df&&!_0x390b5d){const _0x1e5395=await isCachedSessionLive(_0x58d45a[_0x4bd20c(0x107)],_0xb960df,{'sessionCheckPath':_0x5db732?.['sessionCheckPath'],'setupHeaders':_0x522c5b},{'launchBrowser':launchRealBrowser});if(_0x1e5395)return console[_0x4bd20c(0x16e)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x39fc5a['name']+'\x22'),{'authPath':_0x58d45a[_0x4bd20c(0x107)],'settings':_0x200e8c,'resolvedEnv':_0x5db732};console[_0x4bd20c(0x16e)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x39fc5a['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),emitSessionValidationHint(_0xb960df,_0x5db732);}else return _0x390b5d&&console['log']('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x39fc5a['name']+'\x22'),{'authPath':_0x58d45a[_0x4bd20c(0x107)],'settings':_0x200e8c,'resolvedEnv':_0x5db732};}}if(!_0x24b2de&&_0x39fc5a[_0x4bd20c(0x14a)]){const _0x1a7ea1=await _0x2a1420[_0x4bd20c(0x180)](writeSessionToLocalCache,_0x39fc5a['name'],_0x39fc5a[_0x4bd20c(0x161)],_0xb960df,_0x522c5b,_0x39fc5a['sessionState'],_0x2b45a6,_0x3163d5);if(_0xb960df){const _0x455b88=await _0x2a1420[_0x4bd20c(0x182)](isCachedSessionLive,_0x1a7ea1,_0xb960df,{'sessionCheckPath':_0x5db732?.[_0x4bd20c(0x17f)],'setupHeaders':_0x522c5b},{'launchBrowser':launchRealBrowser});if(_0x455b88)return console['log']('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x39fc5a['name']+_0x4bd20c(0x119)),{'authPath':_0x1a7ea1,'settings':_0x200e8c,'resolvedEnv':_0x5db732};console[_0x4bd20c(0x16e)](_0x4bd20c(0x176)+_0x39fc5a[_0x4bd20c(0x164)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x2a1420['ruFIA'](emitSessionValidationHint,_0xb960df,_0x5db732);}else return{'authPath':_0x1a7ea1,'settings':_0x200e8c,'resolvedEnv':_0x5db732};}if(_0x2c65d6)return console[_0x4bd20c(0x16e)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x39fc5a[_0x4bd20c(0x164)]+_0x4bd20c(0x175)),{'authPath':undefined,'settings':_0x200e8c,'resolvedEnv':_0x5db732};console[_0x4bd20c(0x16e)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x39fc5a['name']+_0x4bd20c(0x19e));const _0x31c70e=Boolean(process['env'][_0x4bd20c(0x131)])&&_0x2a1420['iyenm'](Boolean,process['env']['RANGER_TEST_PASSWORD']),_0x574eae=_0x2a1420['hxnrz'](Boolean,_0x39fc5a[_0x4bd20c(0x128)]),_0x191a70=Boolean(_0xc8894a['assertedEnv']),_0x326afb=_0xb960df?_0x2a1420[_0x4bd20c(0x134)](isBareLocalhost,_0xb960df):![],_0x8ab3df=(_0x31c70e||_0x574eae)&&_0x2a1420['WivxF'](!_0x326afb,_0x191a70);if(_0x8ab3df)try{const _0x1eb325=_0xb960df?await _0x2a1420[_0x4bd20c(0x117)](serverSideLoginWithOptionalTunnel,_0x39fc5a['name'],_0xb960df,{'force':_0x24b2de,'telemetry':_0xc8894a[_0x4bd20c(0x10f)],'env':_0xc8894a[_0x4bd20c(0x15c)]}):await _0x2a1420['RwNyk'](serverSideLogin,_0x39fc5a[_0x4bd20c(0x164)],{'force':_0x24b2de,'env':_0xc8894a['assertedEnv']});if(_0x2a1420[_0x4bd20c(0x118)](_0x1eb325['status'],_0x4bd20c(0x185)))console['log'](_0x4bd20c(0x112));else{if(_0x2a1420[_0x4bd20c(0x118)](_0x1eb325['status'],'success')&&_0x1eb325['session_state']){console['log'](_0x2a1420[_0x4bd20c(0x15b)]);const _0x37f1e2=await _0x2a1420['PWJAN'](writeSessionToLocalCache,_0x39fc5a[_0x4bd20c(0x164)],_0x39fc5a[_0x4bd20c(0x161)],_0xb960df,_0x522c5b,_0x1eb325[_0x4bd20c(0x19c)],_0x2b45a6,_0x3163d5);return _0x2a1420[_0x4bd20c(0x199)](_0x31c70e,!_0x574eae)&&await _0x2a1420['QwYwx'](promptSaveCredentials,_0x39fc5a[_0x4bd20c(0x164)]),{'authPath':_0x37f1e2,'settings':_0x200e8c,'resolvedEnv':_0x5db732};}else _0x1eb325['test_output']&&(console[_0x4bd20c(0x16e)](_0x2a1420[_0x4bd20c(0x1a1)]),console['log'](_0x1eb325[_0x4bd20c(0x173)])),console[_0x4bd20c(0x16e)](_0x2a1420[_0x4bd20c(0x19f)]);}}catch(_0xa293d){console[_0x4bd20c(0x16e)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0xa293d instanceof Error?_0xa293d['message']:String(_0xa293d))),console[_0x4bd20c(0x16e)](_0x2a1420[_0x4bd20c(0x19f)]);}if(_0x326afb&&!_0x191a70&&!isInteractive())throw new Error(_0x4bd20c(0x156)+_0xb960df+'\x22\x20on\x20profile\x20\x22'+_0x39fc5a[_0x4bd20c(0x164)]+'\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a'+('\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20'+_0x39fc5a[_0x4bd20c(0x164)]+_0x4bd20c(0xf6)+_0xb960df+'\x0a')+'\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.');const _0x21202d=_0x5db732?{..._0x5db732,'domains':orderLoginDomains(_0xb960df,_0x5db732['domains']),'setupHeaders':_0x522c5b}:_0xb960df?{'key':_0x39fc5a['environmentKey']??'','domains':[_0xb960df],'setupHeaders':_0x522c5b}:null,{sessionState:_0x3b14ba}=await _0x2a1420[_0x4bd20c(0x117)](manualBrowserLogin,_0x39fc5a,_0x21202d,{'persistSessionState':!_0x390b5d}),_0x20a9f9=await writeSessionToLocalCache(_0x39fc5a[_0x4bd20c(0x164)],_0x39fc5a['organizationId'],_0xb960df,_0x522c5b,_0x3b14ba,_0x2b45a6,_0x3163d5);return{'authPath':_0x20a9f9,'settings':_0x200e8c,'resolvedEnv':_0x5db732};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x362610=_0x5ac8;(function(_0x430e75,_0x55d21c){const _0x289016=_0x5ac8,_0x22e6d9=_0x430e75();while(!![]){try{const _0x1fff5d=parseInt(_0x289016(0x16d))/0x1+parseInt(_0x289016(0x155))/0x2+parseInt(_0x289016(0x17c))/0x3*(parseInt(_0x289016(0x176))/0x4)+parseInt(_0x289016(0x17f))/0x5+-parseInt(_0x289016(0x151))/0x6*(-parseInt(_0x289016(0x170))/0x7)+-parseInt(_0x289016(0x17a))/0x8*(-parseInt(_0x289016(0x146))/0x9)+-parseInt(_0x289016(0x14b))/0xa*(parseInt(_0x289016(0x163))/0xb);if(_0x1fff5d===_0x55d21c)break;else _0x22e6d9['push'](_0x22e6d9['shift']());}catch(_0x2c4481){_0x22e6d9['push'](_0x22e6d9['shift']());}}}(_0x5d1b,0x96b9e));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x4558d1=process[_0x362610(0x174)],_0x2bbdf4={'stdin':process[_0x362610(0x148)],'stdout':process[_0x362610(0x15a)]}){const _0x3770e7=_0x362610,_0x225313={'QYRXn':function(_0x26fed2,_0xb88df4){return _0x26fed2(_0xb88df4);},'fyHIw':function(_0x2a47a8,_0xd8a169){return _0x2a47a8(_0xd8a169);}};if(_0x4558d1['CI'])return![];return _0x225313['QYRXn'](Boolean,_0x2bbdf4['stdin'][_0x3770e7(0x164)])&&_0x225313[_0x3770e7(0x177)](Boolean,_0x2bbdf4[_0x3770e7(0x15a)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x354255){const _0x27f0b4=_0x362610,_0x531b12={'PGShd':function(_0xf26da5,_0x48875b){return _0xf26da5(_0x48875b);},'kpioY':_0x27f0b4(0x172),'Ozvot':'port','YeEHD':function(_0xf37373,_0x298afd){return _0xf37373(_0x298afd);},'dHluu':function(_0x1948b6,_0x151d58){return _0x1948b6!==_0x151d58;},'gcSce':'hex'},_0xe7ba1f=new Set(_0x354255[_0x27f0b4(0x169)]??DEFAULT_INVALIDATE_ON);_0x354255['effectiveBaseUrl']&&_0x531b12['PGShd'](needsTunnel,_0x354255[_0x27f0b4(0x15b)])&&_0xe7ba1f['add'](_0x531b12['kpioY']);const _0x22316b={'orgId':_0x354255[_0x27f0b4(0x14f)],'profileName':_0x354255[_0x27f0b4(0x15e)]};return _0xe7ba1f['has'](_0x27f0b4(0x172))&&(_0x22316b[_0x27f0b4(0x15b)]=_0x354255['effectiveBaseUrl']),_0xe7ba1f[_0x27f0b4(0x14c)]('setupHeaders')&&(_0x22316b['setupHeaders']=_0x354255['setupHeaders']?sortObjectKeys(_0x354255['setupHeaders']):_0x354255[_0x27f0b4(0x159)]),_0xe7ba1f['has'](_0x531b12[_0x27f0b4(0x181)])&&(_0x22316b['port']=_0x531b12[_0x27f0b4(0x147)](extractPort,_0x354255[_0x27f0b4(0x15b)])),_0xe7ba1f['has'](_0x27f0b4(0x161))&&_0x531b12[_0x27f0b4(0x150)](_0x354255[_0x27f0b4(0x161)],undefined)&&(_0x22316b['userAgent']=_0x354255['userAgent']),_0xe7ba1f[_0x27f0b4(0x14c)]('clientIp')&&_0x354255[_0x27f0b4(0x14e)]!==undefined&&(_0x22316b['clientIp']=_0x354255[_0x27f0b4(0x14e)]),_0x531b12[_0x27f0b4(0x152)](createHash,_0x27f0b4(0x179))['update'](JSON[_0x27f0b4(0x17d)](_0x22316b))['digest'](_0x531b12['gcSce'])['slice'](0x0,0xc);}function extractPort(_0x269106){try{return new URL(_0x269106)['port'];}catch{return'';}}function sortObjectKeys(_0x34147a){const _0xeacb6d={};for(const _0x219189 of Object['keys'](_0x34147a)['sort']()){_0xeacb6d[_0x219189]=_0x34147a[_0x219189];}return _0xeacb6d;}function _0x5ac8(_0x18fe1b,_0x539da9){_0x18fe1b=_0x18fe1b-0x146;const _0x5d1b2c=_0x5d1b();let _0x5ac840=_0x5d1b2c[_0x18fe1b];return _0x5ac840;}export function getSessionCachePath(_0xda8548,_0x5768d9){const _0x45671f=_0x362610,_0xb3851f={'NNXmG':function(_0x90b89,_0x1c3452,_0x6b82c2,_0x41b7ae){return _0x90b89(_0x1c3452,_0x6b82c2,_0x41b7ae);}};return _0xb3851f['NNXmG'](join,getRangerHomeDir(),_0x45671f(0x154),_0xda8548+'-'+_0x5768d9+_0x45671f(0x153));}export function getStorageStatePath(_0x2115a9){const _0x4e355c=_0x362610;return _0x2115a9[_0x4e355c(0x16f)](/\.json$/,'.storageState.json');}export function needsTunnel(_0x4dfd5e){const _0x3becc5=_0x362610,_0x625b90={'ihdVN':function(_0x4e592f,_0x21e69b){return _0x4e592f===_0x21e69b;},'bAupU':'localhost','fIqUk':function(_0x262b4f,_0x201336){return _0x262b4f===_0x201336;},'lfNCE':'127.0.0.1'};let _0x377ef7;try{_0x377ef7=new URL(_0x4dfd5e)['hostname'];}catch{return![];}if(_0x625b90[_0x3becc5(0x14a)](_0x377ef7,_0x625b90[_0x3becc5(0x173)])||_0x625b90[_0x3becc5(0x158)](_0x377ef7,_0x625b90['lfNCE']))return!![];if(_0x377ef7[_0x3becc5(0x15c)](_0x3becc5(0x15f)))return!![];if(_0x377ef7[_0x3becc5(0x157)](_0x3becc5(0x160)))return!![];return![];}export function isBareLocalhost(_0x566552){const _0xf127b9=_0x362610,_0x103dea={'aSvoa':'localhost','FLBhQ':'::1','UXIdW':function(_0x5e8b49,_0x4b3df0){return _0x5e8b49===_0x4b3df0;}};let _0x362188;try{_0x362188=new URL(_0x566552)['hostname'];}catch{return![];}return _0x362188===_0x103dea['aSvoa']||_0x362188==='127.0.0.1'||_0x362188===_0x103dea[_0xf127b9(0x167)]||_0x103dea['UXIdW'](_0x362188,_0xf127b9(0x162));}export function orderLoginDomains(_0x2d6d46,_0x221a0d){const _0x5632b8=_0x362610,_0x5b868d=_0x221a0d??[];if(!_0x2d6d46)return _0x5b868d;return[_0x2d6d46,..._0x5b868d[_0x5632b8(0x168)](_0xfd4b3e=>_0xfd4b3e!==_0x2d6d46)];}function _0x5d1b(){const _0x38c042=['Ozvot','catch','27684ADuIIL','YeEHD','stdin','status','ihdVN','891370YzMvqx','has','defaultEnvironmentKey','clientIp','orgId','dHluu','18COSlrZ','PGShd','.json','auth','2027212nHpsNe','cHlwB','includes','fIqUk','setupHeaders','stdout','effectiveBaseUrl','endsWith','push','profileName','.localhost','localhost.','userAgent','[::1]','253fYNmUe','isTTY','launchBrowser','close','FLBhQ','filter','invalidateOn','newContext','sessionCheckPath','hostname','7974FKTMVA','pathname','replace','1142386yYjuGd','test','baseUrl','bAupU','env','length','4svDoNA','fyHIw','url','sha256','56EkXtuR','environments','2407041OQDFdB','stringify','newPage','1662360LrgNjm','domcontentloaded'];_0x5d1b=function(){return _0x38c042;};return _0x5d1b();}export function hostnameOf(_0x2d0516){const _0x4d102c=_0x362610;return new URL(_0x2d0516)[_0x4d102c(0x16c)];}export function duplicateCookiesForDomains(_0x282f10,_0x530fd1){const _0x52d677=_0x362610,_0x3b76b1={'pSdtp':function(_0x13e7d5,_0x4adab0){return _0x13e7d5(_0x4adab0);}},_0x45b744=[..._0x282f10],_0x1f2a8e=new Set(_0x282f10['map'](_0x5de225=>_0x5de225['domain']));for(const _0x451847 of _0x530fd1){let _0x519554;try{_0x519554=_0x3b76b1['pSdtp'](hostnameOf,_0x451847);}catch{continue;}if(!_0x519554)continue;const _0xe2efd8=_0x519554['startsWith']('.')?_0x519554:'.'+_0x519554;if(_0x1f2a8e[_0x52d677(0x14c)](_0x519554)||_0x1f2a8e[_0x52d677(0x14c)](_0xe2efd8))continue;for(const _0x44a2eb of _0x282f10){_0x45b744[_0x52d677(0x15d)]({..._0x44a2eb,'domain':_0xe2efd8});}_0x1f2a8e['add'](_0xe2efd8);}return _0x45b744;}export function resolveAuthEnvironmentLocally(_0xe1c2ce,_0x44b0d5){const _0x29ddab=_0x362610,_0x24eb7e=_0xe1c2ce[_0x29ddab(0x17b)];if(_0x44b0d5){const _0x5f6680=_0x24eb7e[_0x44b0d5];if(!_0x5f6680)return null;return{'key':_0x44b0d5,..._0x5f6680};}if(_0xe1c2ce['defaultEnvironmentKey']){const _0x5bb2e2=_0x24eb7e[_0xe1c2ce['defaultEnvironmentKey']];if(!_0x5bb2e2)return null;return{'key':_0xe1c2ce[_0x29ddab(0x14d)],..._0x5bb2e2};}const _0x1a01dd=Object['keys'](_0x24eb7e);if(_0x1a01dd[_0x29ddab(0x175)]===0x1){const _0x11d42e=_0x1a01dd[0x0];return{'key':_0x11d42e,..._0x24eb7e[_0x11d42e]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x56b937,_0x5d4359){try{if(_0x5d4359)return new URL(_0x5d4359,_0x56b937)['toString']();return new URL(_0x56b937)['toString']();}catch{return null;}}export function looksLikeLoginUrl(_0x4c8477){const _0x528530=_0x362610;try{const _0xec40de=new URL(_0x4c8477);return LOGIN_URL_PATTERN[_0x528530(0x171)](_0xec40de[_0x528530(0x16e)]);}catch{return LOGIN_URL_PATTERN['test'](_0x4c8477);}}export async function isCachedSessionLive(_0x2e60d9,_0x5eb263,_0x178fc6={},_0x54384c={}){const _0x1b85aa=_0x362610,_0x42ff2a={'cHlwB':function(_0x48e592,_0x32557b,_0x3e1b8d){return _0x48e592(_0x32557b,_0x3e1b8d);},'DfEWW':_0x1b85aa(0x180),'DqUJb':function(_0xaa8c52,_0x2ea860){return _0xaa8c52(_0x2ea860);}},_0x2de7b1=_0x42ff2a[_0x1b85aa(0x156)](buildSessionCheckUrl,_0x5eb263,_0x178fc6[_0x1b85aa(0x16b)]);if(!_0x2de7b1)return!![];if(!_0x54384c[_0x1b85aa(0x165)])return!![];let _0x422183=null;try{_0x422183=await _0x54384c['launchBrowser']();const _0x15885d=await _0x422183[_0x1b85aa(0x16a)]({'storageState':_0x2e60d9,'ignoreHTTPSErrors':!![],..._0x178fc6['setupHeaders']?{'extraHTTPHeaders':_0x178fc6[_0x1b85aa(0x159)]}:{}}),_0x361f1c=await _0x15885d[_0x1b85aa(0x17e)](),_0x278a39=await _0x361f1c['goto'](_0x2de7b1,{'waitUntil':_0x42ff2a['DfEWW'],'timeout':0x3a98}),_0x5083db=_0x278a39?.[_0x1b85aa(0x149)]();if(_0x5083db===0x191||_0x5083db===0x193)return![];const _0x5d84ab=_0x361f1c[_0x1b85aa(0x178)]();if(_0x42ff2a['DqUJb'](looksLikeLoginUrl,_0x5d84ab))return![];return!![];}catch{return![];}finally{if(_0x422183)await _0x422183[_0x1b85aa(0x166)]()[_0x1b85aa(0x182)](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x39824f=_0x5b97;(function(_0x446207,_0x1b8201){const _0x450740=_0x5b97,_0x110d37=_0x446207();while(!![]){try{const _0x101890=-parseInt(_0x450740(0x8d))/0x1*(-parseInt(_0x450740(0x87))/0x2)+-parseInt(_0x450740(0x7d))/0x3*(-parseInt(_0x450740(0x8f))/0x4)+-parseInt(_0x450740(0x86))/0x5*(-parseInt(_0x450740(0x83))/0x6)+-parseInt(_0x450740(0x92))/0x7+-parseInt(_0x450740(0x7e))/0x8*(parseInt(_0x450740(0x8e))/0x9)+parseInt(_0x450740(0x81))/0xa*(parseInt(_0x450740(0x91))/0xb)+-parseInt(_0x450740(0x7b))/0xc*(parseInt(_0x450740(0x8a))/0xd);if(_0x101890===_0x1b8201)break;else _0x110d37['push'](_0x110d37['shift']());}catch(_0x32c2fd){_0x110d37['push'](_0x110d37['shift']());}}}(_0x4f47,0x58b89));function _0x4f47(){const _0x17a42a=['802399ySnIUP','rHCZH','sha256','5721nkGCUG','2259XvaTCL','404EvjhVq','VpTQJ','81026Zlzcoa','4402937Kgswwv','60tsvikG','getAuthTag','14691otfURB','18592hRYOGN','utf8','subarray','860SVMcWz','mmGvA','306DrhrZm','xJPLM','final','30955mOlyeJ','154CvElSd','concat','aes-256-gcm'];_0x4f47=function(){return _0x17a42a;};return _0x4f47();}function _0x5b97(_0xe76b1,_0xa2ecf4){_0xe76b1=_0xe76b1-0x7b;const _0x4f4760=_0x4f47();let _0x5b975f=_0x4f4760[_0xe76b1];return _0x5b975f;}import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x39824f(0x89),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x41f1f4){const _0x3b0f68=_0x39824f,_0x167867={'mmGvA':function(_0x4ca09a,_0x3b93cc,_0x57144a,_0x507e4a,_0x4214fa,_0x3c6cf3){return _0x4ca09a(_0x3b93cc,_0x57144a,_0x507e4a,_0x4214fa,_0x3c6cf3);},'SOTys':_0x3b0f68(0x8c)};return _0x167867[_0x3b0f68(0x82)](pbkdf2Sync,_0x41f1f4,SALT,0x186a0,KEY_LENGTH,_0x167867['SOTys']);}export function encrypt(_0x20f512,_0x37e5af){const _0x1e37e5=_0x39824f,_0x54815a={'VpTQJ':function(_0x394e55,_0x56e158){return _0x394e55(_0x56e158);},'rHCZH':function(_0xe6799d,_0x2ba4c8){return _0xe6799d(_0x2ba4c8);}},_0x335cf2=_0x54815a[_0x1e37e5(0x90)](deriveKey,_0x37e5af),_0x3a8a20=_0x54815a[_0x1e37e5(0x8b)](randomBytes,IV_LENGTH),_0xef084=createCipheriv(ALGORITHM,_0x335cf2,_0x3a8a20),_0x2997c7=Buffer['concat']([_0xef084['update'](_0x20f512,'utf8'),_0xef084[_0x1e37e5(0x85)]()]),_0x3cd15b=_0xef084[_0x1e37e5(0x7c)]();return Buffer[_0x1e37e5(0x88)]([_0x3a8a20,_0x3cd15b,_0x2997c7]);}export function decrypt(_0xb8028f,_0x2cd8d5){const _0xf50041=_0x39824f,_0x1e4dae={'xJPLM':function(_0x2ba12a,_0x2692cf){return _0x2ba12a+_0x2692cf;},'HwrdF':function(_0x206dbd,_0x46eefb){return _0x206dbd+_0x46eefb;},'QRtyb':_0xf50041(0x7f)},_0x2bb402=deriveKey(_0x2cd8d5),_0x873398=_0xb8028f[_0xf50041(0x80)](0x0,IV_LENGTH),_0x1e5642=_0xb8028f[_0xf50041(0x80)](IV_LENGTH,_0x1e4dae['xJPLM'](IV_LENGTH,TAG_LENGTH)),_0x425750=_0xb8028f['subarray'](_0x1e4dae['HwrdF'](IV_LENGTH,TAG_LENGTH)),_0x491d4b=createDecipheriv(ALGORITHM,_0x2bb402,_0x873398);return _0x491d4b['setAuthTag'](_0x1e5642),_0x1e4dae[_0xf50041(0x84)](_0x491d4b['update'](_0x425750),_0x491d4b['final'](_0x1e4dae['QRtyb']));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4d43fe=_0x52b0;(function(_0x273e0e,_0xbbebe2){const _0x51077c=_0x52b0,_0x16b743=_0x273e0e();while(!![]){try{const _0x2b0377=-parseInt(_0x51077c(0x14b))/0x1+parseInt(_0x51077c(0x158))/0x2*(parseInt(_0x51077c(0x16b))/0x3)+parseInt(_0x51077c(0x151))/0x4+-parseInt(_0x51077c(0x16a))/0x5*(parseInt(_0x51077c(0x160))/0x6)+-parseInt(_0x51077c(0x15d))/0x7*(-parseInt(_0x51077c(0x146))/0x8)+parseInt(_0x51077c(0x157))/0x9+-parseInt(_0x51077c(0x177))/0xa;if(_0x2b0377===_0xbbebe2)break;else _0x16b743['push'](_0x16b743['shift']());}catch(_0x421092){_0x16b743['push'](_0x16b743['shift']());}}}(_0xaeef,0x21f67));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t',_0x4d43fe(0x16d),'--api-key',_0x4d43fe(0x165),_0x4d43fe(0x14e),_0x4d43fe(0x15b),_0x4d43fe(0x15f),_0x4d43fe(0x153),'--authorization',_0x4d43fe(0x178),_0x4d43fe(0x167),_0x4d43fe(0x154)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x2569f6){const _0x33cc20=_0x4d43fe;return TOKEN_PATTERNS[_0x33cc20(0x16c)](_0x38bb77=>_0x38bb77[_0x33cc20(0x152)](_0x2569f6));}function _0xaeef(){const _0x2356d2=['join','[desire-path]\x20Failed\x20to\x20send:\x20','--password','ILCug','157087sHCnGT','NIKGu','--pass','27030BIYssA','startsWith','POST','NREaC','slice','--apikey','LvbJr','--cookie','split','includes','205WXsfAK','12UIggeZ','some','--secret','catch','QSSvt','application/json','toLowerCase','ICxub','has','syntax_error','mPmDz','DEBUG','210500yzYrFd','--header','error','env','48WvPQXz','6|2|7|0|4|1|3|5','missing_required_argument','invalid_option_value','[REDACTED]','78146MttQGq','push','LnKWw','--key','runtime_error','Unknown\x20command','270636LbAeyC','test','--auth','--credentials','[desire-path]\x20Payload:\x20','Unknown\x20argument','269343zWSxKX','95390dSXbmU'];_0xaeef=function(){return _0x2356d2;};return _0xaeef();}export function sanitizeArgs(_0xa1a0f8){const _0x48ccab=_0x4d43fe,_0x1b8c08={'hMvWr':function(_0x3eefb0,_0x317de8){return _0x3eefb0<_0x317de8;},'Wlaoa':function(_0x4ffb6e,_0x39b0f7){return _0x4ffb6e(_0x39b0f7);},'LvbJr':_0x48ccab(0x14a)},_0x42c7e5=[];let _0xde67e8=![];for(let _0x28a029=0x0;_0x1b8c08['hMvWr'](_0x28a029,_0xa1a0f8['length']);_0x28a029++){const _0x704b14=_0xa1a0f8[_0x28a029];if(_0xde67e8){_0x42c7e5['push'](_0x48ccab(0x14a)),_0xde67e8=![];continue;}if(_0x704b14[_0x48ccab(0x161)]('--')||_0x704b14[_0x48ccab(0x161)]('-')){const _0x5e1d7d=_0x704b14['indexOf']('=');if(_0x5e1d7d!==-0x1){const _0x1c121e=_0x704b14['slice'](0x0,_0x5e1d7d)[_0x48ccab(0x171)]();if(SENSITIVE_FLAGS[_0x48ccab(0x173)](_0x1c121e)){_0x42c7e5[_0x48ccab(0x14c)](_0x704b14[_0x48ccab(0x164)](0x0,_0x5e1d7d)+'=[REDACTED]');continue;}}else{const _0x49741d=_0x704b14['toLowerCase']();SENSITIVE_FLAGS[_0x48ccab(0x173)](_0x49741d)&&(_0xde67e8=!![]);}_0x42c7e5[_0x48ccab(0x14c)](_0x704b14);}else _0x1b8c08['Wlaoa'](looksLikeToken,_0x704b14)?_0x42c7e5[_0x48ccab(0x14c)](_0x1b8c08[_0x48ccab(0x166)]):_0x42c7e5[_0x48ccab(0x14c)](_0x704b14);}return _0x42c7e5[_0x48ccab(0x159)]('\x20');}export async function logDesirePath(_0x36e917){const _0x2a36a9=_0x4d43fe,_0x40fc63={'iTAbu':function(_0x2f02be){return _0x2f02be();},'UuBoK':function(_0x1f03f0){return _0x1f03f0();},'ICxub':_0x2a36a9(0x170),'ILCug':'Authorization','NREaC':_0x2a36a9(0x162)};try{const _0x37d853=await _0x40fc63['iTAbu'](getToken)[_0x2a36a9(0x16e)](()=>null),_0x51a89e=getApiBaseUrl(),_0xd1449a=_0x40fc63['UuBoK'](getCurrentVersion),_0x473c9f=_0x37d853?'has_token':'no_token',_0x5e06a5={..._0x36e917['metadata'],'authStatus':_0x473c9f,'isTty':process['stdout']['isTTY']??![]},_0x2acef7={'Content-Type':_0x40fc63[_0x2a36a9(0x172)]};_0x37d853&&(_0x2acef7[_0x40fc63[_0x2a36a9(0x15c)]]='Bearer\x20'+_0x37d853);const _0x5de19a={'rawCommand':_0x36e917['rawCommand'],'errorMessage':_0x36e917['errorMessage'],'errorType':_0x36e917['errorType'],'featureId':_0x36e917['featureId'],'sessionId':_0x36e917['sessionId'],'metadata':_0x5e06a5,'cliVersion':_0xd1449a};process[_0x2a36a9(0x145)][_0x2a36a9(0x176)]&&(console[_0x2a36a9(0x179)]('[desire-path]\x20Sending\x20log\x20to\x20'+_0x51a89e+'/api/v1/mcp/desire-path-logs'),console['error'](_0x2a36a9(0x155)+JSON['stringify'](_0x5de19a,null,0x2))),await fetch(_0x51a89e+'/api/v1/mcp/desire-path-logs',{'method':_0x40fc63[_0x2a36a9(0x163)],'headers':_0x2acef7,'body':JSON['stringify'](_0x5de19a)});}catch(_0x1c8f2a){process[_0x2a36a9(0x145)]['DEBUG']&&console[_0x2a36a9(0x179)](_0x2a36a9(0x15a)+_0x1c8f2a);}}function _0x52b0(_0x4b2d65,_0x19f6bf){_0x4b2d65=_0x4b2d65-0x145;const _0xaeefa2=_0xaeef();let _0x52b068=_0xaeefa2[_0x4b2d65];return _0x52b068;}export function getErrorType(_0x41086f,_0x40165e){const _0x9f8093=_0x4d43fe,_0x371709={'pGznx':_0x9f8093(0x156),'MAyLV':'unknown','LnKWw':'Missing\x20required\x20argument','QSSvt':'missing_option','sOqkq':'Not\x20enough\x20non-option\x20arguments','mPmDz':_0x9f8093(0x174),'NdhRI':_0x9f8093(0x14f),'NIKGu':'unknown_command'},_0x328b41=_0x9f8093(0x147)[_0x9f8093(0x168)]('|');let _0x4ef3ce=0x0;while(!![]){switch(_0x328b41[_0x4ef3ce++]){case'0':if(_0x41086f[_0x9f8093(0x169)](_0x371709['pGznx']))return'unknown_argument';continue;case'1':if(_0x41086f[_0x9f8093(0x169)]('Invalid\x20values'))return _0x9f8093(0x149);continue;case'2':if(!_0x41086f)return _0x371709['MAyLV'];continue;case'3':if(_0x41086f['includes'](_0x371709[_0x9f8093(0x14d)]))return _0x371709[_0x9f8093(0x16f)];continue;case'4':if(_0x41086f['includes'](_0x371709['sOqkq']))return _0x9f8093(0x148);continue;case'5':return _0x371709[_0x9f8093(0x175)];case'6':if(_0x40165e)return _0x371709['NdhRI'];continue;case'7':if(_0x41086f['includes'](_0x9f8093(0x150)))return _0x371709[_0x9f8093(0x15e)];continue;}break;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x568548=_0x2e9d;(function(_0x13b141,_0x572245){const _0x4f1086=_0x2e9d,_0xaefc99=_0x13b141();while(!![]){try{const _0x352505=parseInt(_0x4f1086(0xe9))/0x1+parseInt(_0x4f1086(0xc7))/0x2*(parseInt(_0x4f1086(0xfa))/0x3)+parseInt(_0x4f1086(0xe6))/0x4+parseInt(_0x4f1086(0xb2))/0x5*(-parseInt(_0x4f1086(0xb0))/0x6)+-parseInt(_0x4f1086(0xec))/0x7*(-parseInt(_0x4f1086(0xe1))/0x8)+-parseInt(_0x4f1086(0xf2))/0x9+-parseInt(_0x4f1086(0xd0))/0xa;if(_0x352505===_0x572245)break;else _0xaefc99['push'](_0xaefc99['shift']());}catch(_0x567701){_0xaefc99['push'](_0xaefc99['shift']());}}}(_0x3a6f,0x3ddf7));import{spawn}from'child_process';import _0x53bce5 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';function _0x3a6f(){const _0x901f6e=['refresh_token','selected','authorization_pending','write','vKTHV','mcp:write','https://api.workos.com/user_management/authenticate','Failed\x20to\x20request\x20device\x20code:\x20','JTdOL','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','expires_in','ZXoZN','GET','264386raSIAi','thqZe','kXUaO','AZAOL','RPLej','Failed\x20to\x20create\x20organization:\x20','aJudY','aMUyZ','utf-8','6885770phtEbI','bPkwr','stdin','organizationId','workosClientId','list','Failed\x20to\x20fetch\x20memberships:\x20','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','SrdLZ','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','Select\x20an\x20organization:','xdg-open','json','Code:\x20','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','access_token','32JZtkWt','text','verification_uri_complete','POST','Setting\x20up\x20your\x20organization...','1969560LHwmei','/api-keys','/organization/self-serve-signup','238298mmOWLG','unref','lsmQa','576597wtufqW','/cli-auth/token','Hsoaj','ERcAE','stringify','log','2397987ioZtNv','bPYlA','length','base64url','Authentication\x20failed','JyqXW','status','Provisioning\x20CLI\x20token...','6uSqZsM','sfNCD','token','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','YYOek','application/x-www-form-urlencoded','yLzqY','error_description','BJylm','696642psXolC','name','5fjQrjJ','prompt','QZWKk','platform','memberships','JONFu','Using\x20organization:\x20','\x27s\x20CLI\x20Key'];_0x3a6f=function(){return _0x901f6e;};return _0x3a6f();}import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL='https://api.workos.com/user_management/authorize/device',WORKOS_TOKEN_URL=_0x568548(0xc0);export async function requestDeviceCode(_0x3bab6f){const _0xb02d70=_0x568548,_0x3163fb={'aMUyZ':_0xb02d70(0xe4),'thqZe':_0xb02d70(0xff)},_0x10b79b=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x3163fb[_0xb02d70(0xce)],'headers':{'Content-Type':_0x3163fb[_0xb02d70(0xc8)]},'body':new URLSearchParams({'client_id':_0x3bab6f})});if(!_0x10b79b['ok']){const _0x49f751=await _0x10b79b[_0xb02d70(0xe2)]();throw new Error(_0xb02d70(0xc1)+_0x10b79b['status']+'\x20'+_0x49f751);}return _0x10b79b[_0xb02d70(0xdd)]();}export async function pollForTokens(_0x2d1155,_0x3ce9ae,_0xef25b0,_0x5bec49){const _0x44e8a6=_0x568548,_0x3ad099={'kcQvv':function(_0x23a381,_0x27282e){return _0x23a381*_0x27282e;},'HNvCa':function(_0x443e5f,_0x2bd509){return _0x443e5f*_0x2bd509;},'RPLej':function(_0x28fd4a,_0x2671d3,_0x4bc6cb){return _0x28fd4a(_0x2671d3,_0x4bc6cb);},'AZAOL':_0x44e8a6(0xe4),'bPkwr':'application/x-www-form-urlencoded','jpczy':'urn:ietf:params:oauth:grant-type:device_code','ERcAE':_0x44e8a6(0xbc),'QZWKk':function(_0x10f3d1,_0x18daa8){return _0x10f3d1===_0x18daa8;},'kXUaO':'slow_down','nSPqO':_0x44e8a6(0xf6)},_0x5ca702=Date['now']()+_0x3ad099['kcQvv'](_0x5bec49,0x3e8);let _0x1e9597=_0x3ad099['HNvCa'](_0xef25b0,0x3e8);while(Date['now']()<_0x5ca702){await sleep(_0x1e9597);const _0x357245=await _0x3ad099[_0x44e8a6(0xcb)](fetch,WORKOS_TOKEN_URL,{'method':_0x3ad099[_0x44e8a6(0xca)],'headers':{'Content-Type':_0x3ad099[_0x44e8a6(0xd1)]},'body':new URLSearchParams({'client_id':_0x2d1155,'device_code':_0x3ce9ae,'grant_type':_0x3ad099['jpczy']})});if(_0x357245['ok'])return _0x357245[_0x44e8a6(0xdd)]();const _0x5da898=await _0x357245[_0x44e8a6(0xdd)]();if(_0x5da898['error']===_0x3ad099[_0x44e8a6(0xef)])continue;if(_0x3ad099[_0x44e8a6(0xb4)](_0x5da898['error'],_0x3ad099[_0x44e8a6(0xc9)])){_0x1e9597+=0x3e8;continue;}throw new Error(_0x5da898[_0x44e8a6(0xae)]||_0x5da898['error']||_0x3ad099['nSPqO']);}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x191860){const _0x5478c8=_0x568548,_0x41e137={'gURrb':'GET'},_0x380236=getApiBaseUrl();try{const _0x5d9064=await fetch(_0x380236+'/organization/me',{'method':_0x41e137['gURrb'],'headers':{'workos-token':_0x191860}});if(_0x5d9064['ok'])return _0x5d9064[_0x5478c8(0xdd)]();}catch{}return null;}function buildKeyName(_0xda7a07,_0x1e6096){const _0x20c470=_0x568548,_0x563880=_0x1e6096['filter'](_0x441467=>_0x441467[_0x20c470(0xb1)]===_0xda7a07||_0x441467[_0x20c470(0xb1)]['startsWith'](_0xda7a07+'\x20('));if(_0x563880['length']===0x0)return _0xda7a07;return _0xda7a07+'\x20('+(_0x563880[_0x20c470(0xf4)]+0x1)+')';}export async function provisionApiKey(_0x472b25){const _0x4d7583=_0x568548,_0x3da8a0={'BJylm':function(_0x39cc58){return _0x39cc58();},'JONFu':'CLI\x20Key','SrdLZ':function(_0x26e73b,_0x34e0c9,_0x3b7076){return _0x26e73b(_0x34e0c9,_0x3b7076);},'Hsoaj':_0x4d7583(0xbf)},_0x48965b=_0x3da8a0[_0x4d7583(0xaf)](getApiBaseUrl),_0x2fdde6={'Content-Type':'application/json','workos-token':_0x472b25},_0xdfabfc=await fetchUserProfile(_0x472b25),_0x5ad52b=_0xdfabfc?.['firstName']||_0xdfabfc?.['email']?.['split']('@')[0x0],_0x30934f=_0x5ad52b?_0x5ad52b+_0x4d7583(0xb9):_0x3da8a0[_0x4d7583(0xb7)];let _0x5ee91e=[];try{const _0x3f4a77=await _0x3da8a0[_0x4d7583(0xd9)](fetch,_0x48965b+'/api-keys',{'method':'GET','headers':_0x2fdde6});if(_0x3f4a77['ok']){const _0x1e8ee8=await _0x3f4a77[_0x4d7583(0xdd)]();_0x5ee91e=_0x1e8ee8['apiKeys'];}}catch{}const _0x19173c=buildKeyName(_0x30934f,_0x5ee91e),_0x1daffc=await fetch(_0x48965b+_0x4d7583(0xe7),{'method':_0x4d7583(0xe4),'headers':_0x2fdde6,'body':JSON[_0x4d7583(0xf0)]({'name':_0x19173c,'scope':_0x3da8a0[_0x4d7583(0xee)]})});if(!_0x1daffc['ok']){const _0x25eaea=await _0x1daffc[_0x4d7583(0xe2)]();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x1daffc['status']+'\x20'+_0x25eaea);}const _0x51951b=await _0x1daffc['json']();return _0x51951b['apiKey'][_0x4d7583(0xfc)];}export function openBrowser(_0x2bcc45){const _0x14af6c=_0x568548,_0x50031a={'bkPdt':function(_0x57d7a8,_0x315d6b){return _0x57d7a8===_0x315d6b;},'vKTHV':'win32','nLHJj':'cmd','yLzqY':'start','IrwVJ':'ignore','iNYva':function(_0x585d01,_0x4e6dd5){return _0x585d01===_0x4e6dd5;},'fuaVU':'darwin','PvHLN':function(_0x25d39e,_0x23b930,_0x5e2ca8,_0x138222){return _0x25d39e(_0x23b930,_0x5e2ca8,_0x138222);}};try{if(_0x50031a['bkPdt'](process[_0x14af6c(0xb5)],_0x50031a[_0x14af6c(0xbe)])){const _0x5bdb50=spawn(_0x50031a['nLHJj'],['/c',_0x50031a[_0x14af6c(0xad)],'',_0x2bcc45],{'detached':!![],'stdio':_0x50031a['IrwVJ'],'windowsHide':!![]});_0x5bdb50['unref']();return;}const _0x335aa0=_0x50031a['iNYva'](process[_0x14af6c(0xb5)],_0x50031a['fuaVU'])?'open':_0x14af6c(0xdc),_0xc96e93=_0x50031a['PvHLN'](spawn,_0x335aa0,[_0x2bcc45],{'detached':!![],'stdio':_0x50031a['IrwVJ']});_0xc96e93[_0x14af6c(0xea)]();}catch{}}function _0x2e9d(_0x30d13f,_0x303fc6){_0x30d13f=_0x30d13f-0xad;const _0x3a6f00=_0x3a6f();let _0x2e9d97=_0x3a6f00[_0x30d13f];return _0x2e9d97;}function decodeJwtPayload(_0x3ffaad){const _0x2cdf19=_0x568548,_0x1d1649={'sfNCD':'Invalid\x20JWT\x20format'},_0xe63259=_0x3ffaad['split']('.');if(_0xe63259[_0x2cdf19(0xf4)]!==0x3)throw new Error(_0x1d1649[_0x2cdf19(0xfb)]);const _0x43848c=Buffer['from'](_0xe63259[0x1],_0x2cdf19(0xf5))['toString'](_0x2cdf19(0xcf));return JSON['parse'](_0x43848c);}async function selfServeSignup(_0x2e059a){const _0x1cba2e=_0x568548,_0x111d85={'JARca':function(_0x4ef805,_0x1d00c9,_0x5514ef){return _0x4ef805(_0x1d00c9,_0x5514ef);},'JTdOL':'application/json'},_0x27f4e5=getApiBaseUrl(),_0x2efd93=await _0x111d85['JARca'](fetch,_0x27f4e5+_0x1cba2e(0xe8),{'method':_0x1cba2e(0xe4),'headers':{'Content-Type':_0x111d85[_0x1cba2e(0xc2)],'workos-token':_0x2e059a}});if(!_0x2efd93['ok']){const _0x40ef2d=await _0x2efd93['text']();throw new Error(_0x1cba2e(0xcc)+_0x2efd93['status']+'\x20'+_0x40ef2d);}return _0x2efd93['json']();}async function fetchMyMemberships(_0x494a54){const _0x3a51d9=_0x568548,_0x52a144={'bPYlA':function(_0x1ff00c){return _0x1ff00c();},'UiJCC':function(_0x43d24d,_0x5d7246,_0x1f6ee5){return _0x43d24d(_0x5d7246,_0x1f6ee5);}},_0x1b1142=_0x52a144[_0x3a51d9(0xf3)](getApiBaseUrl),_0x5196a7=await _0x52a144['UiJCC'](fetch,_0x1b1142+'/organization/my-memberships',{'method':_0x3a51d9(0xc6),'headers':{'workos-token':_0x494a54}});if(!_0x5196a7['ok']){const _0x1ee5b6=await _0x5196a7['text']();throw new Error(_0x3a51d9(0xd6)+_0x5196a7[_0x3a51d9(0xf8)]+'\x20'+_0x1ee5b6);}const _0x5c484a=await _0x5196a7[_0x3a51d9(0xdd)]();return _0x5c484a[_0x3a51d9(0xb6)];}async function refreshTokenWithOrg(_0x136047,_0x236977,_0x558106){const _0x448842=_0x568548,_0xa01bc5={'bVawm':function(_0x26a063,_0x2532de,_0x4a6f1d){return _0x26a063(_0x2532de,_0x4a6f1d);},'BgUOm':'POST'},_0x539641=await _0xa01bc5['bVawm'](fetch,WORKOS_TOKEN_URL,{'method':_0xa01bc5['BgUOm'],'headers':{'Content-Type':_0x448842(0xff)},'body':new URLSearchParams({'client_id':_0x136047,'grant_type':_0x448842(0xba),'refresh_token':_0x236977,'organization_id':_0x558106})});if(!_0x539641['ok']){const _0x395d1d=await _0x539641[_0x448842(0xe2)]();throw new Error(_0x448842(0xda)+_0x539641['status']+'\x20'+_0x395d1d);}return _0x539641[_0x448842(0xdd)]();}async function provisionCliToken(_0x41e278){const _0x5936b6=_0x568548,_0x484363={'JyqXW':'application/json'},_0x1ec298=getApiBaseUrl(),_0x4b18e1=await fetch(_0x1ec298+_0x5936b6(0xed),{'method':'POST','headers':{'Content-Type':_0x484363[_0x5936b6(0xf7)],'workos-token':_0x41e278}});if(!_0x4b18e1['ok']){const _0x47f293=await _0x4b18e1['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x4b18e1[_0x5936b6(0xf8)]+'\x20'+_0x47f293);}return _0x4b18e1['json']();}export async function runDeviceAuthFlow(){const _0x47a0d6=_0x568548,_0x1e5204={'ZXoZN':_0x47a0d6(0xd7),'YYOek':function(_0xebc354,_0x587058){return _0xebc354(_0x587058);},'HLyPa':'Waiting\x20for\x20authentication...','wiSWk':function(_0x11d993,_0x231ac0,_0x3253c6,_0x14f1a5,_0x48d73f){return _0x11d993(_0x231ac0,_0x3253c6,_0x14f1a5,_0x48d73f);},'aJudY':function(_0x42119f,_0x518f28){return _0x42119f===_0x518f28;},'bWHRS':_0x47a0d6(0xfd),'LITcY':_0x47a0d6(0xd5),'lsmQa':_0x47a0d6(0xdb),'sgBsv':function(_0x469c86,_0x490027){return _0x469c86(_0x490027);}},_0x172a11=getCurrentEnvironment(),_0x3fa1ec=ENVIRONMENT_CONFIGS[_0x172a11][_0x47a0d6(0xd4)],_0x7584d3=await requestDeviceCode(_0x3fa1ec);console[_0x47a0d6(0xf1)](_0x1e5204[_0x47a0d6(0xc5)]),console['log'](_0x47a0d6(0xd8)),_0x1e5204['YYOek'](openBrowser,_0x7584d3[_0x47a0d6(0xe3)]),console[_0x47a0d6(0xf1)](_0x47a0d6(0xc3)+_0x7584d3[_0x47a0d6(0xe3)]),console['log'](_0x47a0d6(0xde)+_0x7584d3['user_code']+'\x0a'),process['stdout'][_0x47a0d6(0xbd)](_0x1e5204['HLyPa']);let _0x3a48df=await _0x1e5204['wiSWk'](pollForTokens,_0x3fa1ec,_0x7584d3['device_code'],_0x7584d3['interval'],_0x7584d3[_0x47a0d6(0xc4)]);console[_0x47a0d6(0xf1)]('\x20✓');const _0x11e182=_0x1e5204[_0x47a0d6(0xfe)](decodeJwtPayload,_0x3a48df[_0x47a0d6(0xe0)]);if(!_0x11e182['org_id']){const _0x56b12b=await fetchMyMemberships(_0x3a48df['access_token']);let _0x29833a;if(_0x56b12b[_0x47a0d6(0xf4)]===0x0){process['stdout'][_0x47a0d6(0xbd)](_0x47a0d6(0xe5));const _0x25f656=await _0x1e5204['YYOek'](selfServeSignup,_0x3a48df['access_token']);_0x29833a=_0x25f656['organizationId'],console[_0x47a0d6(0xf1)]('\x20✓');}else{if(_0x1e5204[_0x47a0d6(0xcd)](_0x56b12b['length'],0x1))_0x29833a=_0x56b12b[0x0][_0x47a0d6(0xd3)],console[_0x47a0d6(0xf1)](_0x47a0d6(0xb8)+_0x56b12b[0x0]['name']);else{const _0x387c43=process[_0x47a0d6(0xd2)]['isTTY']&&process['stdout']['isTTY'];if(!_0x387c43)throw new Error(_0x47a0d6(0xdf)+_0x1e5204['bWHRS']);const {selected:_0x587e99}=await _0x53bce5[_0x47a0d6(0xb3)]([{'type':_0x1e5204['LITcY'],'name':_0x47a0d6(0xbb),'message':_0x1e5204[_0x47a0d6(0xeb)],'choices':_0x56b12b['map'](_0x215fe2=>({'name':_0x215fe2[_0x47a0d6(0xb1)],'value':_0x215fe2['organizationId']}))}]);_0x29833a=_0x587e99;}}_0x3a48df=await refreshTokenWithOrg(_0x3fa1ec,_0x3a48df[_0x47a0d6(0xba)],_0x29833a);}process['stdout'][_0x47a0d6(0xbd)](_0x47a0d6(0xf9));const _0x3dd610=await _0x1e5204[_0x47a0d6(0xfe)](provisionCliToken,_0x3a48df[_0x47a0d6(0xe0)]);return console['log']('\x20✓'),await storeToken(_0x3dd610['token']),_0x3a48df['refresh_token']&&await _0x1e5204['sgBsv'](storeRefreshToken,_0x3a48df['refresh_token']),_0x3dd610[_0x47a0d6(0xfc)];}function sleep(_0x3561fd){return new Promise(_0x236a08=>setTimeout(_0x236a08,_0x3561fd));}
|
|
1
|
+
const _0xe04653=_0x1bfd;function _0x1bfd(_0x525b64,_0x1aa7f9){_0x525b64=_0x525b64-0x16a;const _0x46d49e=_0x46d4();let _0x1bfdbf=_0x46d49e[_0x525b64];return _0x1bfdbf;}(function(_0x482101,_0x44109a){const _0x24deca=_0x1bfd,_0x3126e5=_0x482101();while(!![]){try{const _0x119115=parseInt(_0x24deca(0x189))/0x1*(-parseInt(_0x24deca(0x1ba))/0x2)+-parseInt(_0x24deca(0x17e))/0x3*(parseInt(_0x24deca(0x19d))/0x4)+parseInt(_0x24deca(0x1b1))/0x5*(-parseInt(_0x24deca(0x174))/0x6)+-parseInt(_0x24deca(0x19f))/0x7+-parseInt(_0x24deca(0x18d))/0x8*(-parseInt(_0x24deca(0x16d))/0x9)+parseInt(_0x24deca(0x1a5))/0xa*(-parseInt(_0x24deca(0x1bf))/0xb)+parseInt(_0x24deca(0x1c0))/0xc*(parseInt(_0x24deca(0x1ac))/0xd);if(_0x119115===_0x44109a)break;else _0x3126e5['push'](_0x3126e5['shift']());}catch(_0x29a13e){_0x3126e5['push'](_0x3126e5['shift']());}}}(_0x46d4,0xebb75));import{spawn}from'child_process';import _0x324845 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';function _0x46d4(){const _0x544202=['access_token','stringify','CleVW','Failed\x20to\x20provision\x20CLI\x20token:\x20','log','list','258jFDhuf','Failed\x20to\x20create\x20organization:\x20','Invalid\x20JWT\x20format','email','workosClientId','NcUBm','prompt','sKwBh','EedNs','LdRWs','108HhBUtm','YDjgo','Setting\x20up\x20your\x20organization...','etUeb','slow_down','token','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','map','oudBj','selected','/organization/me','2JnzmyB','https://api.workos.com/user_management/authorize/device','DQxJS','/organization/my-memberships','12374880NyJHzC','text','base64url','mcp:write','json','status','device_code','organizationId','/api-keys','platform','from','darwin','etxUS','startsWith','refresh_token','parse','114484eLXImJ','isTTY','177387fZxeIS','error','dpfvS','FLjTn','apiKey','GET','47810MDUUPw','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','pAPPN','Failed\x20to\x20request\x20device\x20code:\x20','memberships','name','POST','7189ibUzDQ','foVkX','error_description','HQZSy','EQjnl','9430DwFcmk','now','length','application/json','split','wsodQ','user_code','application/x-www-form-urlencoded','eVBAy','940136TbEPxB','open','ITaDJ','Authentication\x20failed','sZfao','2497XXilzZ','56004hDoOvb','Waiting\x20for\x20authentication...','stdout','write','uVioG','9Ngcctv'];_0x46d4=function(){return _0x544202;};return _0x46d4();}const WORKOS_DEVICE_AUTH_URL=_0xe04653(0x18a),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x1b3920){const _0x3a9dfd=_0xe04653,_0x305832={'rgaqj':function(_0x3d9535,_0x1bddde,_0x5e3a5e){return _0x3d9535(_0x1bddde,_0x5e3a5e);},'NcUBm':'application/x-www-form-urlencoded'},_0x18bc28=await _0x305832['rgaqj'](fetch,WORKOS_DEVICE_AUTH_URL,{'method':'POST','headers':{'Content-Type':_0x305832[_0x3a9dfd(0x179)]},'body':new URLSearchParams({'client_id':_0x1b3920})});if(!_0x18bc28['ok']){const _0xf27a52=await _0x18bc28['text']();throw new Error(_0x3a9dfd(0x1a8)+_0x18bc28['status']+'\x20'+_0xf27a52);}return _0x18bc28[_0x3a9dfd(0x191)]();}export async function pollForTokens(_0x5a2b18,_0x1df7f5,_0x163793,_0x2ab949){const _0x3003d5=_0xe04653,_0x43537e={'EedNs':function(_0x5bd6b7,_0x58e1a8){return _0x5bd6b7*_0x58e1a8;},'CleVW':function(_0x205d97,_0x45e360,_0x3c94dd){return _0x205d97(_0x45e360,_0x3c94dd);},'etxUS':_0x3003d5(0x1ab),'xWwNd':'urn:ietf:params:oauth:grant-type:device_code','etUeb':function(_0x49df73,_0x24bb4c){return _0x49df73===_0x24bb4c;},'zfpMy':_0x3003d5(0x182)},_0x584a51=Date['now']()+_0x43537e[_0x3003d5(0x17c)](_0x2ab949,0x3e8);let _0x2a8383=_0x43537e['EedNs'](_0x163793,0x3e8);while(Date[_0x3003d5(0x1b2)]()<_0x584a51){await sleep(_0x2a8383);const _0x151233=await _0x43537e[_0x3003d5(0x170)](fetch,WORKOS_TOKEN_URL,{'method':_0x43537e[_0x3003d5(0x199)],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x5a2b18,'device_code':_0x1df7f5,'grant_type':_0x43537e['xWwNd']})});if(_0x151233['ok'])return _0x151233['json']();const _0x3e59e7=await _0x151233['json']();if(_0x43537e[_0x3003d5(0x181)](_0x3e59e7[_0x3003d5(0x1a0)],'authorization_pending'))continue;if(_0x3e59e7[_0x3003d5(0x1a0)]===_0x43537e['zfpMy']){_0x2a8383+=0x3e8;continue;}throw new Error(_0x3e59e7[_0x3003d5(0x1ae)]||_0x3e59e7[_0x3003d5(0x1a0)]||_0x3003d5(0x1bd));}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x15095d){const _0x2872f8=_0xe04653,_0x2a17cd={'dpfvS':function(_0x2dda11){return _0x2dda11();},'uVioG':function(_0xa4b97e,_0x5a399f,_0x211e40){return _0xa4b97e(_0x5a399f,_0x211e40);},'OuLxQ':_0x2872f8(0x1a4)},_0x3a1e99=_0x2a17cd[_0x2872f8(0x1a1)](getApiBaseUrl);try{const _0x121c46=await _0x2a17cd[_0x2872f8(0x16c)](fetch,_0x3a1e99+_0x2872f8(0x188),{'method':_0x2a17cd['OuLxQ'],'headers':{'workos-token':_0x15095d}});if(_0x121c46['ok'])return _0x121c46['json']();}catch{}return null;}function buildKeyName(_0x56e0c8,_0x5c73b4){const _0x2c1f0f=_0xe04653,_0x316673={'BVsLv':function(_0x409eb1,_0x2bbae8){return _0x409eb1===_0x2bbae8;}},_0x4cfa9d=_0x5c73b4['filter'](_0x30ae3f=>_0x30ae3f[_0x2c1f0f(0x1aa)]===_0x56e0c8||_0x30ae3f[_0x2c1f0f(0x1aa)][_0x2c1f0f(0x19a)](_0x56e0c8+'\x20('));if(_0x316673['BVsLv'](_0x4cfa9d['length'],0x0))return _0x56e0c8;return _0x56e0c8+'\x20('+(_0x4cfa9d['length']+0x1)+')';}export async function provisionApiKey(_0x2e17a8){const _0x693823=_0xe04653,_0x4a13c4={'lnlQQ':'application/json','FTqyx':'CLI\x20Key','pAPPN':function(_0x4563ee,_0x46fb61,_0x29a33b){return _0x4563ee(_0x46fb61,_0x29a33b);},'VYhQO':_0x693823(0x1ab),'ITaDJ':_0x693823(0x190)},_0x4b729e=getApiBaseUrl(),_0x3f3d18={'Content-Type':_0x4a13c4['lnlQQ'],'workos-token':_0x2e17a8},_0x5ea4df=await fetchUserProfile(_0x2e17a8),_0x5352d6=_0x5ea4df?.['firstName']||_0x5ea4df?.[_0x693823(0x177)]?.[_0x693823(0x1b5)]('@')[0x0],_0x563da2=_0x5352d6?_0x5352d6+'\x27s\x20CLI\x20Key':_0x4a13c4['FTqyx'];let _0x16bd8f=[];try{const _0x24601a=await _0x4a13c4['pAPPN'](fetch,_0x4b729e+_0x693823(0x195),{'method':'GET','headers':_0x3f3d18});if(_0x24601a['ok']){const _0x3bddcc=await _0x24601a[_0x693823(0x191)]();_0x16bd8f=_0x3bddcc['apiKeys'];}}catch{}const _0x3813ab=_0x4a13c4[_0x693823(0x1a7)](buildKeyName,_0x563da2,_0x16bd8f),_0xb390e6=await fetch(_0x4b729e+_0x693823(0x195),{'method':_0x4a13c4['VYhQO'],'headers':_0x3f3d18,'body':JSON[_0x693823(0x16f)]({'name':_0x3813ab,'scope':_0x4a13c4[_0x693823(0x1bc)]})});if(!_0xb390e6['ok']){const _0x4db28f=await _0xb390e6['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0xb390e6['status']+'\x20'+_0x4db28f);}const _0x2ef476=await _0xb390e6[_0x693823(0x191)]();return _0x2ef476[_0x693823(0x1a3)][_0x693823(0x183)];}export function openBrowser(_0x1ba138){const _0x307368=_0xe04653,_0x3099fd={'YDjgo':function(_0x55af9d,_0x1cb53b){return _0x55af9d===_0x1cb53b;},'LdRWs':function(_0x20c530,_0x51aaf2,_0x2f39c1,_0xd54ab7){return _0x20c530(_0x51aaf2,_0x2f39c1,_0xd54ab7);},'sKwBh':'ignore'};try{if(_0x3099fd[_0x307368(0x17f)](process[_0x307368(0x196)],'win32')){const _0x3aeaae=_0x3099fd['LdRWs'](spawn,'cmd',['/c','start','',_0x1ba138],{'detached':!![],'stdio':_0x3099fd[_0x307368(0x17b)],'windowsHide':!![]});_0x3aeaae['unref']();return;}const _0x5d55c7=process[_0x307368(0x196)]===_0x307368(0x198)?_0x307368(0x1bb):'xdg-open',_0x16dcb8=_0x3099fd[_0x307368(0x17d)](spawn,_0x5d55c7,[_0x1ba138],{'detached':!![],'stdio':_0x3099fd['sKwBh']});_0x16dcb8['unref']();}catch{}}function decodeJwtPayload(_0x33906a){const _0x495e46=_0xe04653,_0x38a27d={'wsodQ':_0x495e46(0x18f),'DQxJS':'utf-8'},_0x134607=_0x33906a['split']('.');if(_0x134607[_0x495e46(0x1b3)]!==0x3)throw new Error(_0x495e46(0x176));const _0x440578=Buffer[_0x495e46(0x197)](_0x134607[0x1],_0x38a27d[_0x495e46(0x1b6)])['toString'](_0x38a27d[_0x495e46(0x18b)]);return JSON[_0x495e46(0x19c)](_0x440578);}async function selfServeSignup(_0xdf20d1){const _0x34465d=_0xe04653,_0x333ff5={'lDHjf':function(_0x2c4370){return _0x2c4370();},'NjYCc':'POST','PGuDH':'application/json'},_0xfa4b6f=_0x333ff5['lDHjf'](getApiBaseUrl),_0x1dba41=await fetch(_0xfa4b6f+'/organization/self-serve-signup',{'method':_0x333ff5['NjYCc'],'headers':{'Content-Type':_0x333ff5['PGuDH'],'workos-token':_0xdf20d1}});if(!_0x1dba41['ok']){const _0x4a746c=await _0x1dba41[_0x34465d(0x18e)]();throw new Error(_0x34465d(0x175)+_0x1dba41['status']+'\x20'+_0x4a746c);}return _0x1dba41['json']();}async function fetchMyMemberships(_0x5ed369){const _0x2db417=_0xe04653,_0x47bb2c={'FLjTn':'GET'},_0x459d52=getApiBaseUrl(),_0x442692=await fetch(_0x459d52+_0x2db417(0x18c),{'method':_0x47bb2c[_0x2db417(0x1a2)],'headers':{'workos-token':_0x5ed369}});if(!_0x442692['ok']){const _0x405dac=await _0x442692[_0x2db417(0x18e)]();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x442692[_0x2db417(0x192)]+'\x20'+_0x405dac);}const _0x9004ff=await _0x442692[_0x2db417(0x191)]();return _0x9004ff[_0x2db417(0x1a9)];}async function refreshTokenWithOrg(_0x4442aa,_0x586e9f,_0x5afc15){const _0x482d70=_0xe04653,_0x5bef0d={'JvyXD':_0x482d70(0x1b8),'foVkX':_0x482d70(0x19b)},_0x36d09e=await fetch(WORKOS_TOKEN_URL,{'method':_0x482d70(0x1ab),'headers':{'Content-Type':_0x5bef0d['JvyXD']},'body':new URLSearchParams({'client_id':_0x4442aa,'grant_type':_0x5bef0d[_0x482d70(0x1ad)],'refresh_token':_0x586e9f,'organization_id':_0x5afc15})});if(!_0x36d09e['ok']){const _0x310f04=await _0x36d09e['text']();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x36d09e['status']+'\x20'+_0x310f04);}return _0x36d09e['json']();}async function provisionCliToken(_0x3571c6){const _0x1c3729=_0xe04653,_0x395fab={'DsAPm':'POST','HQZSy':_0x1c3729(0x1b4)},_0x10440f=getApiBaseUrl(),_0x1c0bdd=await fetch(_0x10440f+'/cli-auth/token',{'method':_0x395fab['DsAPm'],'headers':{'Content-Type':_0x395fab[_0x1c3729(0x1af)],'workos-token':_0x3571c6}});if(!_0x1c0bdd['ok']){const _0x3cb6da=await _0x1c0bdd[_0x1c3729(0x18e)]();throw new Error(_0x1c3729(0x171)+_0x1c0bdd['status']+'\x20'+_0x3cb6da);}return _0x1c0bdd['json']();}export async function runDeviceAuthFlow(){const _0x4f96e9=_0xe04653,_0x2313d6={'eVBAy':function(_0xb82d0e,_0x2bd791){return _0xb82d0e(_0x2bd791);},'JuYcC':_0x4f96e9(0x1c1),'wXruX':function(_0x14fd18,_0x527ed6,_0x4d7995,_0xcac159,_0x18c671){return _0x14fd18(_0x527ed6,_0x4d7995,_0xcac159,_0x18c671);},'YURfm':function(_0x2c3e3d,_0x5c5f13){return _0x2c3e3d===_0x5c5f13;},'EQjnl':_0x4f96e9(0x180),'Yvxed':function(_0x5073c7,_0x2a83e8){return _0x5073c7(_0x2a83e8);},'SFRnk':function(_0x209832,_0x2654a){return _0x209832+_0x2654a;},'oudBj':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','sZfao':_0x4f96e9(0x1a6),'XZezP':_0x4f96e9(0x173),'aoJaQ':_0x4f96e9(0x187)},_0x1059c9=getCurrentEnvironment(),_0x417261=ENVIRONMENT_CONFIGS[_0x1059c9][_0x4f96e9(0x178)],_0x2d73e3=await requestDeviceCode(_0x417261);console['log']('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console['log'](_0x4f96e9(0x184)),_0x2313d6['eVBAy'](openBrowser,_0x2d73e3['verification_uri_complete']),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x2d73e3['verification_uri_complete']),console['log']('Code:\x20'+_0x2d73e3[_0x4f96e9(0x1b7)]+'\x0a'),process[_0x4f96e9(0x16a)]['write'](_0x2313d6['JuYcC']);let _0x301bd7=await _0x2313d6['wXruX'](pollForTokens,_0x417261,_0x2d73e3[_0x4f96e9(0x193)],_0x2d73e3['interval'],_0x2d73e3['expires_in']);console['log']('\x20✓');const _0x256416=decodeJwtPayload(_0x301bd7['access_token']);if(!_0x256416['org_id']){const _0x1a5b1c=await _0x2313d6[_0x4f96e9(0x1b9)](fetchMyMemberships,_0x301bd7['access_token']);let _0x3a68ad;if(_0x2313d6['YURfm'](_0x1a5b1c['length'],0x0)){process['stdout']['write'](_0x2313d6[_0x4f96e9(0x1b0)]);const _0x16e7cb=await _0x2313d6['Yvxed'](selfServeSignup,_0x301bd7[_0x4f96e9(0x16e)]);_0x3a68ad=_0x16e7cb[_0x4f96e9(0x194)],console[_0x4f96e9(0x172)]('\x20✓');}else{if(_0x1a5b1c['length']===0x1)_0x3a68ad=_0x1a5b1c[0x0]['organizationId'],console['log']('Using\x20organization:\x20'+_0x1a5b1c[0x0]['name']);else{const _0x26ae80=process['stdin']['isTTY']&&process['stdout'][_0x4f96e9(0x19e)];if(!_0x26ae80)throw new Error(_0x2313d6['SFRnk'](_0x2313d6[_0x4f96e9(0x186)],_0x2313d6[_0x4f96e9(0x1be)]));const {selected:_0x136084}=await _0x324845[_0x4f96e9(0x17a)]([{'type':_0x2313d6['XZezP'],'name':_0x2313d6['aoJaQ'],'message':'Select\x20an\x20organization:','choices':_0x1a5b1c[_0x4f96e9(0x185)](_0x59a89c=>({'name':_0x59a89c['name'],'value':_0x59a89c[_0x4f96e9(0x194)]}))}]);_0x3a68ad=_0x136084;}}_0x301bd7=await refreshTokenWithOrg(_0x417261,_0x301bd7[_0x4f96e9(0x19b)],_0x3a68ad);}process['stdout'][_0x4f96e9(0x16b)]('Provisioning\x20CLI\x20token...');const _0x3cfc6b=await provisionCliToken(_0x301bd7['access_token']);return console[_0x4f96e9(0x172)]('\x20✓'),await storeToken(_0x3cfc6b['token']),_0x301bd7['refresh_token']&&await storeRefreshToken(_0x301bd7[_0x4f96e9(0x19b)]),_0x3cfc6b['token'];}function sleep(_0x158576){return new Promise(_0x4bc3b2=>setTimeout(_0x4bc3b2,_0x158576));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1eb046=_0x43a6;(function(_0x3b8139,_0x50b8e8){const _0x578f89=_0x43a6,_0x1d834b=_0x3b8139();while(!![]){try{const _0x2f2e86=parseInt(_0x578f89(0xa7))/0x1+parseInt(_0x578f89(0x8b))/0x2+parseInt(_0x578f89(0x9b))/0x3*(parseInt(_0x578f89(0x92))/0x4)+parseInt(_0x578f89(0xb1))/0x5+parseInt(_0x578f89(0xa1))/0x6+parseInt(_0x578f89(0x95))/0x7*(-parseInt(_0x578f89(0x96))/0x8)+-parseInt(_0x578f89(0x8c))/0x9*(parseInt(_0x578f89(0x8d))/0xa);if(_0x2f2e86===_0x50b8e8)break;else _0x1d834b['push'](_0x1d834b['shift']());}catch(_0x4ff44d){_0x1d834b['push'](_0x1d834b['shift']());}}}(_0x4d8d,0x2669c));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x1eb046(0x94),'workosClientId':_0x1eb046(0x8a),'aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.ranger.net/mcp'},'staging':{'apiBaseUrl':_0x1eb046(0x9d),'workosClientId':_0x1eb046(0xa0),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':_0x1eb046(0x9f)},'local':{'apiBaseUrl':'http://localhost:8080','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x1eb046(0x8e),'mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT=_0x1eb046(0xab);export function isValidEnvironment(_0x519f7a){const _0x112ee9=_0x1eb046,_0x1c441b={'aDQXk':function(_0x4d4602,_0x643f3f){return _0x4d4602===_0x643f3f;},'CEyid':_0x112ee9(0x9a),'MDIJi':_0x112ee9(0xa3)};return _0x1c441b[_0x112ee9(0xa8)](_0x519f7a,'prod')||_0x1c441b['aDQXk'](_0x519f7a,_0x1c441b['CEyid'])||_0x519f7a===_0x1c441b['MDIJi'];}export function getCurrentEnvironment(){const _0xa67d5=_0x1eb046,_0xe74688=process[_0xa67d5(0x9e)][_0xa67d5(0x8f)];if(_0xe74688&&isValidEnvironment(_0xe74688))return _0xe74688;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x896044=_0x1eb046;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x896044(0xaa)];}export function getAiProxyUrl(){const _0xe617da=_0x1eb046;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0xe617da(0x89)];}export function getMcpAuthUrl(){return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['mcpAuthUrl'];}export function isByokEnabled(){const _0x54ff72=_0x1eb046,_0x27e712={'bFsUN':function(_0x38443f,_0x337171){return _0x38443f===_0x337171;},'SHYPC':'true'};return _0x27e712[_0x54ff72(0xac)](process['env']['RANGER_BYOK'],_0x27e712['SHYPC']);}function isVerificationTransport(_0x589344){const _0x467a77=_0x1eb046,_0x30bb4c={'vNNuo':function(_0x58af21,_0x41bd2c){return _0x58af21===_0x41bd2c;},'Ulsxn':'playwright-cli','PHLNW':function(_0x40d195,_0xed63b4){return _0x40d195===_0xed63b4;},'hdALD':_0x467a77(0xa2),'ggEAe':'rangerwright-cli'};return _0x30bb4c[_0x467a77(0x99)](_0x589344,'mcp')||_0x30bb4c['vNNuo'](_0x589344,_0x30bb4c[_0x467a77(0xa6)])||_0x30bb4c['PHLNW'](_0x589344,_0x30bb4c['hdALD'])||_0x589344===_0x30bb4c['ggEAe'];}const LEGACY_TRANSPORT_ENV_VARS=[_0x1eb046(0xae),_0x1eb046(0x98)];function _0x4d8d(){const _0x3cdb2f=['nova-act-cli','local','zRndM','\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.','Ulsxn','181099olnoWF','aDQXk','TQNkP','apiBaseUrl','prod','bFsUN','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','RANGER_USE_NOVA_ACT','Invalid\x20RANGER_TRANSPORT=\x22','BkqRD','519360BLfVBB','aiProxyUrl','client_01J9CBYM7M5ZETCF7G6614DXR2','195072Lwmdha','27okTBAN','1474750QWyzOI','http://localhost:8090','RANGER_CLI_ENV','find','xpBUB','236jsbCYQ','trim','https://api.ranger.net','15449mcpijR','8GsVmiN','auto','RANGER_DISABLE_MCP','vNNuo','staging','9684povDIt','\x22.\x20','https://api.staging.ranger.net','env','https://mcp-auth.staging.ranger.net/mcp','client_01J9CBYM2DKWV9HM17D95Z540K','174078jMBeya'];_0x4d8d=function(){return _0x3cdb2f;};return _0x4d8d();}export function getVerificationTransport(){const _0x232f4a=_0x1eb046,_0x50acaf={'KStKT':function(_0x17e6ff,_0x58ecd2){return _0x17e6ff(_0x58ecd2);},'zRndM':'mcp'},_0x205195=process['env']['RANGER_TRANSPORT']?.[_0x232f4a(0x93)]();if(_0x205195){if(_0x50acaf['KStKT'](isVerificationTransport,_0x205195))return _0x205195;throw new Error(_0x232f4a(0xaf)+_0x205195+_0x232f4a(0xa5));}const _0xb5c5b6=LEGACY_TRANSPORT_ENV_VARS[_0x232f4a(0x90)](_0x351af8=>process['env'][_0x351af8]);if(_0xb5c5b6)throw new Error(_0xb5c5b6+_0x232f4a(0xad));return _0x50acaf[_0x232f4a(0xa4)];}function _0x43a6(_0x1d65db,_0x595d77){_0x1d65db=_0x1d65db-0x89;const _0x4d8d60=_0x4d8d();let _0x43a64d=_0x4d8d60[_0x1d65db];return _0x43a64d;}export function resolveHookMode(_0x4294bf=process['env']){const _0x417818=_0x1eb046,_0x764d34={'xpBUB':'auto','TQNkP':function(_0x381707,_0x761825){return _0x381707===_0x761825;},'BkqRD':function(_0x19c754,_0x33ca87){return _0x19c754===_0x33ca87;},'gKRXj':function(_0xdfd174,_0xd538a6){return _0xdfd174+_0xd538a6;}},_0xcc6012=_0x4294bf['RANGER_HOOKS']?.[_0x417818(0x93)]()['toLowerCase']();if(!_0xcc6012)return _0x764d34[_0x417818(0x91)];if(_0x764d34[_0x417818(0xa9)](_0xcc6012,'off')||_0xcc6012==='on'||_0x764d34[_0x417818(0xb0)](_0xcc6012,_0x417818(0x97)))return _0xcc6012;return console['error'](_0x764d34['gKRXj']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x4294bf['RANGER_HOOKS']+_0x417818(0x9c),'Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.')),_0x764d34['xpBUB'];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x402791,_0x33a22f){const _0x537ea4=_0x21e5,_0x218deb=_0x402791();while(!![]){try{const _0x353fa9=-parseInt(_0x537ea4(0x1e0))/0x1*(-parseInt(_0x537ea4(0x1cc))/0x2)+parseInt(_0x537ea4(0x1ad))/0x3*(-parseInt(_0x537ea4(0x1ae))/0x4)+-parseInt(_0x537ea4(0x1bd))/0x5+-parseInt(_0x537ea4(0x1a8))/0x6*(-parseInt(_0x537ea4(0x1e5))/0x7)+parseInt(_0x537ea4(0x1df))/0x8*(-parseInt(_0x537ea4(0x1d3))/0x9)+parseInt(_0x537ea4(0x1ba))/0xa+-parseInt(_0x537ea4(0x1db))/0xb*(-parseInt(_0x537ea4(0x1d8))/0xc);if(_0x353fa9===_0x33a22f)break;else _0x218deb['push'](_0x218deb['shift']());}catch(_0x5d5c07){_0x218deb['push'](_0x218deb['shift']());}}}(_0x1c07,0xbbfa8));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';function _0x1c07(){const _0x37d6d7=['itemIds','510235GoEcMf','/report','/checklist-items/','/comments/address','164928HMlJGL','158VezSwF','Bearer\x20','toString','stringify','Failed\x20to\x20create\x20feature\x20review:\x20','7dJBfeZ','bXKSZ','limit','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','nAIdo','xGMLj','TTjXr','SJrLG','length','application/json','Failed\x20to\x20delete\x20feature\x20review:\x20','/api/v1/mcp/features','billingUrl','updateChecklistItem','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','yxTOp','message','5662218QKmaFl','json','\x0a\x0aUpgrade\x20your\x20plan:\x20','POST','set','43389GxnNwH','240UieFVq','offset','airBq','gitBranch','GET','/action-items','https://dashboard.ranger.net/billing','KThxK','/api/v1/mcp/features/','MAweg','TIEnx','true','5531530xRjsTJ','Failed\x20to\x20get\x20item\x20feedback:\x20','style','3116665gPLChE','sQJcT','zRRsG','/checklist','rzlYr','hjppk','Uskoy','ajpPC','uPLuT','Failed\x20to\x20update\x20scenario:\x20','ivgGT','/conclude','dIbfN','COoPP','text','6216hNohDE','Failed\x20to\x20update\x20feature\x20review:\x20','kriKF','tGmNt','/sessions/','/feedback','includeDeleted','63RJEHMX','ZrUAi','BGTPv','xjRWb','sessionId','108TANlGO','PATCH'];_0x1c07=function(){return _0x37d6d7;};return _0x1c07();}import{withRetry}from'./retry.js';export async function createFeature(_0x1a33f4){const _0x155f62=_0x21e5,_0x4b302c={'Uskoy':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','FXquW':_0x155f62(0x1ee),'TIEnx':'Feature\x20limit\x20exceeded'},_0x1c1fb3=await getToken();if(!_0x1c1fb3)throw new Error(_0x4b302c[_0x155f62(0x1c3)]);const _0x28ea26=getApiBaseUrl(),_0x53dd53=await fetch(_0x28ea26+_0x155f62(0x1f0),{'method':'POST','headers':{'Authorization':_0x155f62(0x1e1)+_0x1c1fb3,'Content-Type':_0x4b302c['FXquW']},'body':JSON[_0x155f62(0x1e3)](_0x1a33f4)});if(!_0x53dd53['ok']){if(_0x53dd53['status']===0x192){const _0x539747=await _0x53dd53['json'](),_0x160034=_0x539747[_0x155f62(0x1f1)]||_0x155f62(0x1b4);throw new Error((_0x539747[_0x155f62(0x1a7)]||_0x4b302c[_0x155f62(0x1b8)])+_0x155f62(0x1aa)+_0x160034);}const _0x2c453e=await _0x53dd53[_0x155f62(0x1cb)]();throw new Error(_0x155f62(0x1e4)+_0x2c453e);}return _0x53dd53['json']();}export async function listFeatures(_0x46be68){const _0x5e0ea3=_0x21e5,_0x4a2446={'dIbfN':function(_0x314564){return _0x314564();},'wGfSU':_0x5e0ea3(0x1b2)},_0x22b09c=await getToken();if(!_0x22b09c)throw new Error(_0x5e0ea3(0x1e8));const _0x3e1215=_0x4a2446[_0x5e0ea3(0x1c9)](getApiBaseUrl),_0x1b5c3d=new URLSearchParams();if(_0x46be68?.['gitRepoUrl'])_0x1b5c3d[_0x5e0ea3(0x1ac)]('gitRepoUrl',_0x46be68['gitRepoUrl']);if(_0x46be68?.[_0x5e0ea3(0x1b1)])_0x1b5c3d['set'](_0x5e0ea3(0x1b1),_0x46be68[_0x5e0ea3(0x1b1)]);if(_0x46be68?.[_0x5e0ea3(0x1e7)])_0x1b5c3d['set']('limit',_0x46be68['limit']['toString']());if(_0x46be68?.['offset'])_0x1b5c3d['set'](_0x5e0ea3(0x1af),_0x46be68[_0x5e0ea3(0x1af)][_0x5e0ea3(0x1e2)]());if(_0x46be68?.['includeDeleted'])_0x1b5c3d[_0x5e0ea3(0x1ac)](_0x5e0ea3(0x1d2),_0x5e0ea3(0x1b9));const _0x4647a2=_0x3e1215+'/api/v1/mcp/features'+(_0x1b5c3d['toString']()?'?'+_0x1b5c3d['toString']():''),_0x15f971=await fetch(_0x4647a2,{'method':_0x4a2446['wGfSU'],'headers':{'Authorization':_0x5e0ea3(0x1e1)+_0x22b09c}});if(!_0x15f971['ok']){const _0x319e18=await _0x15f971['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x319e18);}return _0x15f971[_0x5e0ea3(0x1a9)]();}export async function getFeature(_0x5e42db){const _0x9189e2=_0x21e5,_0x2a49ec={'xGMLj':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','mfvEu':_0x9189e2(0x1b2)},_0x159af6=await getToken();if(!_0x159af6)throw new Error(_0x2a49ec[_0x9189e2(0x1ea)]);const _0x44c4a0=getApiBaseUrl(),_0x42493f=await fetch(_0x44c4a0+_0x9189e2(0x1b6)+_0x5e42db,{'method':_0x2a49ec['mfvEu'],'headers':{'Authorization':_0x9189e2(0x1e1)+_0x159af6}});if(!_0x42493f['ok']){const _0x4463a0=await _0x42493f['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x4463a0);}return _0x42493f['json']();}export async function updateFeature(_0x526e11,_0x545b69){const _0x2ca925=_0x21e5,_0x482838={'pImdc':function(_0x23b9d4){return _0x23b9d4();},'uPLuT':_0x2ca925(0x1e8),'ZrUAi':'PATCH'},_0x8284b7=await _0x482838['pImdc'](getToken);if(!_0x8284b7)throw new Error(_0x482838[_0x2ca925(0x1c5)]);const _0x58b12e=getApiBaseUrl(),_0x38a7cf=await fetch(_0x58b12e+_0x2ca925(0x1b6)+_0x526e11,{'method':_0x482838[_0x2ca925(0x1d4)],'headers':{'Authorization':_0x2ca925(0x1e1)+_0x8284b7,'Content-Type':_0x2ca925(0x1ee)},'body':JSON['stringify'](_0x545b69)});if(!_0x38a7cf['ok']){const _0x4f7fcc=await _0x38a7cf['text']();throw new Error(_0x2ca925(0x1cd)+_0x4f7fcc);}return _0x38a7cf['json']();}export async function createChecklistItem(_0x5d34e3,_0x134e9f,_0x2810ae){const _0x15ae4c=_0x21e5,_0x595208={'MAweg':_0x15ae4c(0x1e8),'OrVGB':function(_0x1f0acc){return _0x1f0acc();},'oMwYe':function(_0x3e7503,_0x5bcdbf,_0x15d03c){return _0x3e7503(_0x5bcdbf,_0x15d03c);},'yxTOp':_0x15ae4c(0x1ee)},_0xb6c9f5=await getToken();if(!_0xb6c9f5)throw new Error(_0x595208[_0x15ae4c(0x1b7)]);const _0x349d59=_0x595208['OrVGB'](getApiBaseUrl),_0x39c361=await _0x595208['oMwYe'](fetch,_0x349d59+'/api/v1/mcp/features/'+_0x5d34e3+_0x15ae4c(0x1c0),{'method':_0x15ae4c(0x1ab),'headers':{'Authorization':'Bearer\x20'+_0xb6c9f5,'Content-Type':_0x595208[_0x15ae4c(0x1a6)]},'body':JSON['stringify']({'description':_0x134e9f,'position':_0x2810ae})});if(!_0x39c361['ok']){const _0x4eb906=await _0x39c361[_0x15ae4c(0x1cb)]();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x4eb906);}return _0x39c361[_0x15ae4c(0x1a9)]();}export async function updateChecklistItem(_0x56475c,_0x5d1cde,_0x157f64){const _0xc8bc42=_0x21e5,_0x40b190={'oScZI':function(_0x5bb0c5){return _0x5bb0c5();},'ajpPC':_0xc8bc42(0x1d9)};return withRetry(async()=>{const _0x1fec3f=_0xc8bc42,_0x7da169=await _0x40b190['oScZI'](getToken);if(!_0x7da169)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xa26da4=getApiBaseUrl(),_0x23efb7=await fetch(_0xa26da4+'/api/v1/mcp/features/'+_0x56475c+'/checklist/'+_0x5d1cde,{'method':_0x40b190[_0x1fec3f(0x1c4)],'headers':{'Authorization':_0x1fec3f(0x1e1)+_0x7da169,'Content-Type':'application/json'},'body':JSON[_0x1fec3f(0x1e3)](_0x157f64)});if(!_0x23efb7['ok']){const _0x2af0ec=await _0x23efb7[_0x1fec3f(0x1cb)]();throw new Error(_0x1fec3f(0x1c6)+_0x2af0ec);}return _0x23efb7[_0x1fec3f(0x1a9)]();},{'label':_0xc8bc42(0x1a4)});}export async function getFeatureReport(_0x2b654f){const _0x57081a=_0x21e5,_0x1dc6ff={'VunZc':function(_0x19fe3d){return _0x19fe3d();},'rzlYr':function(_0x5bc6ea,_0x577aee,_0x20f4ad){return _0x5bc6ea(_0x577aee,_0x20f4ad);}},_0x30401e=await _0x1dc6ff['VunZc'](getToken);if(!_0x30401e)throw new Error(_0x57081a(0x1e8));const _0x48bcff=getApiBaseUrl(),_0x2a820e=await _0x1dc6ff[_0x57081a(0x1c1)](fetch,_0x48bcff+_0x57081a(0x1b6)+_0x2b654f+_0x57081a(0x1dc),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x30401e}});if(!_0x2a820e['ok']){const _0x34347f=await _0x2a820e['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x34347f);}return _0x2a820e[_0x57081a(0x1a9)]();}export async function getFeatureReportMarkdown(_0x35e4fd,_0x254745){const _0x2b782b=_0x21e5,_0x3ba3f6={'EIniC':function(_0x3e7a69){return _0x3e7a69();},'kriKF':function(_0x547ff2,_0x430919){return _0x547ff2>_0x430919;},'KThxK':function(_0x461636,_0x785081){return _0x461636&&_0x785081;},'xjRWb':_0x2b782b(0x1bc),'nXXNC':_0x2b782b(0x1b2)},_0x565714=await getToken();if(!_0x565714)throw new Error(_0x2b782b(0x1e8));const _0x593518=_0x3ba3f6['EIniC'](getApiBaseUrl),_0x48ab32=new URLSearchParams(),_0x2872b8=_0x3ba3f6[_0x2b782b(0x1ce)](_0x254745?.['itemIds']?.[_0x2b782b(0x1ed)]??0x0,0x0),_0x49755c=Boolean(_0x254745?.['sessionId']);_0x2872b8&&_0x254745?.[_0x2b782b(0x1da)]&&_0x48ab32['set']('itemIds',_0x254745['itemIds']['join'](','));_0x49755c&&_0x254745?.[_0x2b782b(0x1d7)]&&_0x48ab32[_0x2b782b(0x1ac)]('sessionId',_0x254745[_0x2b782b(0x1d7)]);_0x3ba3f6[_0x2b782b(0x1b5)](!_0x2872b8,!_0x49755c)&&_0x254745?.[_0x2b782b(0x1bc)]&&_0x48ab32['set'](_0x3ba3f6[_0x2b782b(0x1d6)],_0x254745['style']);const _0x2caa10=_0x593518+'/api/v1/mcp/features/'+_0x35e4fd+'/report/markdown',_0x12c21e=''+_0x2caa10+(_0x48ab32[_0x2b782b(0x1e2)]()?'?'+_0x48ab32['toString']():''),_0xd282f7=await fetch(_0x12c21e,{'method':_0x3ba3f6['nXXNC'],'headers':{'Authorization':'Bearer\x20'+_0x565714}});if(!_0xd282f7['ok']){const _0x4e0cfb=await _0xd282f7['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x4e0cfb);}return _0xd282f7[_0x2b782b(0x1cb)]();}export async function listFeatureSessions(_0x51ab2a){const _0x4793ed=_0x21e5,_0x30e5a4={'Yolrq':_0x4793ed(0x1e8),'btLTu':_0x4793ed(0x1b2)},_0x5be41e=await getToken();if(!_0x5be41e)throw new Error(_0x30e5a4['Yolrq']);const _0x2c1ea1=getApiBaseUrl(),_0x1a2f49=await fetch(_0x2c1ea1+'/api/v1/mcp/features/'+_0x51ab2a+'/sessions',{'method':_0x30e5a4['btLTu'],'headers':{'Authorization':_0x4793ed(0x1e1)+_0x5be41e}});if(!_0x1a2f49['ok']){const _0x9fe8f=await _0x1a2f49[_0x4793ed(0x1cb)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x9fe8f);}return _0x1a2f49['json']();}function _0x21e5(_0x268a9f,_0xf9c07f){_0x268a9f=_0x268a9f-0x1a4;const _0x1c0777=_0x1c07();let _0x21e5fe=_0x1c0777[_0x268a9f];return _0x21e5fe;}export async function startSession(_0x15433b,_0xd1d2dc){const _0x2caa00=_0x21e5,_0x436a2b={'COoPP':function(_0x563fbe){return _0x563fbe();},'jvqAA':function(_0x38ef48,_0x3ee2e4,_0x354610){return _0x38ef48(_0x3ee2e4,_0x354610);}},_0x4b9638=await getToken();if(!_0x4b9638)throw new Error(_0x2caa00(0x1e8));const _0x4f10c0=_0x436a2b[_0x2caa00(0x1ca)](getApiBaseUrl),_0x1b8ed9=await _0x436a2b['jvqAA'](fetch,_0x4f10c0+_0x2caa00(0x1b6)+_0x15433b+_0x2caa00(0x1d0)+_0xd1d2dc+'/start',{'method':'POST','headers':{'Authorization':_0x2caa00(0x1e1)+_0x4b9638}});if(!_0x1b8ed9['ok']){const _0x498aa0=await _0x1b8ed9[_0x2caa00(0x1cb)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x498aa0);}return _0x1b8ed9['json']();}export async function concludeSession(_0x239401,_0x2aeb00){const _0x5ab0a5=_0x21e5,_0x39d7a2={'Lblqg':function(_0x2dc33c){return _0x2dc33c();},'SSgYq':_0x5ab0a5(0x1e8),'dibzC':_0x5ab0a5(0x1ab)},_0x1bf6dc=await _0x39d7a2['Lblqg'](getToken);if(!_0x1bf6dc)throw new Error(_0x39d7a2['SSgYq']);const _0x37b0a4=getApiBaseUrl(),_0x1989bf=await fetch(_0x37b0a4+'/api/v1/mcp/features/'+_0x239401+'/sessions/'+_0x2aeb00+_0x5ab0a5(0x1c8),{'method':_0x39d7a2['dibzC'],'headers':{'Authorization':'Bearer\x20'+_0x1bf6dc}});if(!_0x1989bf['ok']){const _0x4d16a9=await _0x1989bf[_0x5ab0a5(0x1cb)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x4d16a9);}return _0x1989bf[_0x5ab0a5(0x1a9)]();}export async function getActionItems(_0x197fd5){const _0x5c5180=_0x21e5,_0xd94748={'PeUQT':_0x5c5180(0x1e8),'SJrLG':function(_0x33a985,_0x317412,_0xea7800){return _0x33a985(_0x317412,_0xea7800);},'SdHQe':_0x5c5180(0x1b2)},_0x3d0941=await getToken();if(!_0x3d0941)throw new Error(_0xd94748['PeUQT']);const _0x4cec78=getApiBaseUrl(),_0xb4bb3d=await _0xd94748[_0x5c5180(0x1ec)](fetch,_0x4cec78+'/api/v1/mcp/features/'+_0x197fd5+_0x5c5180(0x1b3),{'method':_0xd94748['SdHQe'],'headers':{'Authorization':'Bearer\x20'+_0x3d0941}});if(!_0xb4bb3d['ok']){const _0x2afe8a=await _0xb4bb3d[_0x5c5180(0x1cb)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x2afe8a);}return _0xb4bb3d['json']();}export async function getItemFeedback(_0x2629cf,_0x4d48fa){const _0x31aab9=_0x21e5,_0x130438={'airBq':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','sQJcT':function(_0x29cd98,_0x3b2e57,_0x4a23b8){return _0x29cd98(_0x3b2e57,_0x4a23b8);},'zAcFI':_0x31aab9(0x1b2)},_0x2e34c0=await getToken();if(!_0x2e34c0)throw new Error(_0x130438[_0x31aab9(0x1b0)]);const _0x4a195c=getApiBaseUrl(),_0x333fd0=await _0x130438[_0x31aab9(0x1be)](fetch,_0x4a195c+_0x31aab9(0x1b6)+_0x2629cf+_0x31aab9(0x1dd)+_0x4d48fa+_0x31aab9(0x1d1),{'method':_0x130438['zAcFI'],'headers':{'Authorization':_0x31aab9(0x1e1)+_0x2e34c0}});if(!_0x333fd0['ok']){const _0x436dfe=await _0x333fd0[_0x31aab9(0x1cb)]();throw new Error(_0x31aab9(0x1bb)+_0x436dfe);}return _0x333fd0['json']();}export async function markCommentsAddressed(_0x30e9a5,_0x20601a,_0x577c70){const _0x7be8e0=_0x21e5,_0x367f2d={'TTjXr':function(_0x3e7145){return _0x3e7145();},'zRRsG':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','wysVa':function(_0x36cf16){return _0x36cf16();},'tGmNt':_0x7be8e0(0x1ab),'bXKSZ':'application/json'},_0x1e2f8d=await _0x367f2d[_0x7be8e0(0x1eb)](getToken);if(!_0x1e2f8d)throw new Error(_0x367f2d[_0x7be8e0(0x1bf)]);const _0x527590=_0x367f2d['wysVa'](getApiBaseUrl),_0x5632a7=await fetch(_0x527590+_0x7be8e0(0x1b6)+_0x30e9a5+_0x7be8e0(0x1de),{'method':_0x367f2d[_0x7be8e0(0x1cf)],'headers':{'Authorization':_0x7be8e0(0x1e1)+_0x1e2f8d,'Content-Type':_0x367f2d[_0x7be8e0(0x1e6)]},'body':JSON['stringify']({'checklistItemId':_0x20601a,'commentIds':_0x577c70})});if(!_0x5632a7['ok']){const _0x269af8=await _0x5632a7[_0x7be8e0(0x1cb)]();throw new Error(_0x7be8e0(0x1a5)+_0x269af8);}}export async function softDeleteFeature(_0x1f27b2){const _0x490f79=_0x21e5,_0x2ec70a={'hjppk':function(_0x29967e){return _0x29967e();},'BGTPv':_0x490f79(0x1e8),'ZDMlg':function(_0x2fc43e,_0x2a70d1,_0x3b016b){return _0x2fc43e(_0x2a70d1,_0x3b016b);}},_0x34c023=await _0x2ec70a['hjppk'](getToken);if(!_0x34c023)throw new Error(_0x2ec70a[_0x490f79(0x1d5)]);const _0x1f913e=_0x2ec70a[_0x490f79(0x1c2)](getApiBaseUrl),_0x806b25=await _0x2ec70a['ZDMlg'](fetch,_0x1f913e+_0x490f79(0x1b6)+_0x1f27b2,{'method':'DELETE','headers':{'Authorization':'Bearer\x20'+_0x34c023}});if(!_0x806b25['ok']){const _0x75b251=await _0x806b25['text']();throw new Error(_0x490f79(0x1ef)+_0x75b251);}}export async function restoreFeature(_0x54988b){const _0x508c52=_0x21e5,_0x4e678e={'nAIdo':function(_0x4d51eb){return _0x4d51eb();},'ivgGT':'POST'},_0x98ab12=await _0x4e678e[_0x508c52(0x1e9)](getToken);if(!_0x98ab12)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x198c80=_0x4e678e['nAIdo'](getApiBaseUrl),_0x134f4a=await fetch(_0x198c80+'/api/v1/mcp/features/'+_0x54988b+'/restore',{'method':_0x4e678e[_0x508c52(0x1c7)],'headers':{'Authorization':'Bearer\x20'+_0x98ab12}});if(!_0x134f4a['ok']){const _0x388d0f=await _0x134f4a[_0x508c52(0x1cb)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x388d0f);}}
|
|
1
|
+
(function(_0x1c22bd,_0x30722b){const _0x37a3bd=_0x1a9a,_0x589e1e=_0x1c22bd();while(!![]){try{const _0xd55e7d=parseInt(_0x37a3bd(0xb5))/0x1+parseInt(_0x37a3bd(0xd2))/0x2+-parseInt(_0x37a3bd(0xdc))/0x3+-parseInt(_0x37a3bd(0xe1))/0x4+parseInt(_0x37a3bd(0xb6))/0x5+parseInt(_0x37a3bd(0xb8))/0x6+parseInt(_0x37a3bd(0xd9))/0x7;if(_0xd55e7d===_0x30722b)break;else _0x589e1e['push'](_0x589e1e['shift']());}catch(_0x24bc5f){_0x589e1e['push'](_0x589e1e['shift']());}}}(_0x1132,0x98c8a));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x16f2dd){const _0x2c4447=_0x1a9a,_0x4423f3={'kDnuv':function(_0x150681){return _0x150681();},'LXaFU':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','LEdSF':'POST','puvIS':function(_0x31308e,_0x48499f){return _0x31308e===_0x48499f;},'gKUsP':'https://dashboard.ranger.net/billing','uICWs':'Feature\x20limit\x20exceeded'},_0x2ba699=await _0x4423f3['kDnuv'](getToken);if(!_0x2ba699)throw new Error(_0x4423f3[_0x2c4447(0xb1)]);const _0x4f799d=getApiBaseUrl(),_0x67dd26=await fetch(_0x4f799d+_0x2c4447(0xd4),{'method':_0x4423f3['LEdSF'],'headers':{'Authorization':'Bearer\x20'+_0x2ba699,'Content-Type':'application/json'},'body':JSON[_0x2c4447(0xb9)](_0x16f2dd)});if(!_0x67dd26['ok']){if(_0x4423f3['puvIS'](_0x67dd26['status'],0x192)){const _0x3b82e5=await _0x67dd26[_0x2c4447(0xd6)](),_0x10eaf0=_0x3b82e5['billingUrl']||_0x4423f3['gKUsP'];throw new Error((_0x3b82e5[_0x2c4447(0xd5)]||_0x4423f3[_0x2c4447(0xce)])+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x10eaf0);}const _0x117cd9=await _0x67dd26['text']();throw new Error(_0x2c4447(0xe8)+_0x117cd9);}return _0x67dd26[_0x2c4447(0xd6)]();}export async function listFeatures(_0x29897b){const _0x2c2aee=_0x1a9a,_0x53fd6f={'pCjbn':function(_0x16c8e2){return _0x16c8e2();},'ApaNQ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','AOtZM':'gitBranch','LgPbw':'offset','ghqjS':function(_0x3f1192,_0x4414cd,_0x43f5c7){return _0x3f1192(_0x4414cd,_0x43f5c7);},'NZGii':_0x2c2aee(0xd1)},_0x2065c5=await _0x53fd6f[_0x2c2aee(0xea)](getToken);if(!_0x2065c5)throw new Error(_0x53fd6f[_0x2c2aee(0xb7)]);const _0x37322c=_0x53fd6f['pCjbn'](getApiBaseUrl),_0x56d9f2=new URLSearchParams();if(_0x29897b?.[_0x2c2aee(0xe0)])_0x56d9f2[_0x2c2aee(0xbe)]('gitRepoUrl',_0x29897b[_0x2c2aee(0xe0)]);if(_0x29897b?.[_0x2c2aee(0xe7)])_0x56d9f2['set'](_0x53fd6f[_0x2c2aee(0xdd)],_0x29897b['gitBranch']);if(_0x29897b?.['limit'])_0x56d9f2[_0x2c2aee(0xbe)]('limit',_0x29897b[_0x2c2aee(0xe5)]['toString']());if(_0x29897b?.[_0x2c2aee(0xc0)])_0x56d9f2[_0x2c2aee(0xbe)](_0x53fd6f['LgPbw'],_0x29897b['offset'][_0x2c2aee(0xec)]());if(_0x29897b?.[_0x2c2aee(0xd0)])_0x56d9f2[_0x2c2aee(0xbe)](_0x2c2aee(0xd0),_0x2c2aee(0xed));const _0x2f737c=_0x37322c+_0x2c2aee(0xd4)+(_0x56d9f2['toString']()?'?'+_0x56d9f2['toString']():''),_0x1b6453=await _0x53fd6f['ghqjS'](fetch,_0x2f737c,{'method':_0x53fd6f[_0x2c2aee(0xe6)],'headers':{'Authorization':_0x2c2aee(0xf2)+_0x2065c5}});if(!_0x1b6453['ok']){const _0x2264af=await _0x1b6453['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x2264af);}return _0x1b6453[_0x2c2aee(0xd6)]();}export async function getFeature(_0x3a7b3c){const _0x3e10ff=_0x1a9a,_0x572e08={'YzSQu':function(_0x42aa77){return _0x42aa77();},'PdtNM':_0x3e10ff(0xd1)},_0x4cf469=await getToken();if(!_0x4cf469)throw new Error(_0x3e10ff(0xdf));const _0x1aca1e=_0x572e08[_0x3e10ff(0xd3)](getApiBaseUrl),_0x5ada41=await fetch(_0x1aca1e+'/api/v1/mcp/features/'+_0x3a7b3c,{'method':_0x572e08['PdtNM'],'headers':{'Authorization':'Bearer\x20'+_0x4cf469}});if(!_0x5ada41['ok']){const _0x27662f=await _0x5ada41['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x27662f);}return _0x5ada41['json']();}export async function updateFeature(_0x366603,_0x9fbcc){const _0x2182dc=_0x1a9a,_0x1397c6={'VhTag':_0x2182dc(0xdf),'KIPjj':function(_0x291071){return _0x291071();},'pzBvt':function(_0x190ffd,_0x2427cd,_0x3c081c){return _0x190ffd(_0x2427cd,_0x3c081c);},'RYYdu':'PATCH','NguxB':_0x2182dc(0xc8)},_0x214d9f=await getToken();if(!_0x214d9f)throw new Error(_0x1397c6['VhTag']);const _0x3a5698=_0x1397c6[_0x2182dc(0xca)](getApiBaseUrl),_0x2a6a5f=await _0x1397c6[_0x2182dc(0xb3)](fetch,_0x3a5698+_0x2182dc(0xb2)+_0x366603,{'method':_0x1397c6['RYYdu'],'headers':{'Authorization':'Bearer\x20'+_0x214d9f,'Content-Type':_0x1397c6['NguxB']},'body':JSON['stringify'](_0x9fbcc)});if(!_0x2a6a5f['ok']){const _0x45bdf9=await _0x2a6a5f['text']();throw new Error(_0x2182dc(0xcf)+_0x45bdf9);}return _0x2a6a5f['json']();}export async function createChecklistItem(_0x519027,_0x39a6e9,_0x47f36a){const _0x1dd747=_0x1a9a,_0x4063bb={'iUcnt':function(_0x24e5ce){return _0x24e5ce();},'cdLtK':function(_0x3bae45,_0x44fbe0,_0x42c688){return _0x3bae45(_0x44fbe0,_0x42c688);},'GkCnF':_0x1dd747(0xc9)},_0x47ea77=await getToken();if(!_0x47ea77)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x542806=_0x4063bb['iUcnt'](getApiBaseUrl),_0x517699=await _0x4063bb['cdLtK'](fetch,_0x542806+_0x1dd747(0xb2)+_0x519027+_0x1dd747(0xc6),{'method':_0x4063bb['GkCnF'],'headers':{'Authorization':'Bearer\x20'+_0x47ea77,'Content-Type':_0x1dd747(0xc8)},'body':JSON[_0x1dd747(0xb9)]({'description':_0x39a6e9,'position':_0x47f36a})});if(!_0x517699['ok']){const _0x35645a=await _0x517699[_0x1dd747(0xf0)]();throw new Error(_0x1dd747(0xdb)+_0x35645a);}return _0x517699['json']();}function _0x1132(){const _0x14c098=['/checklist','sessionId','application/json','POST','KIPjj','/report','PXbin','FHJri','uICWs','Failed\x20to\x20update\x20feature\x20review:\x20','includeDeleted','GET','606638boncFo','YzSQu','/api/v1/mcp/features','message','json','OLGtr','Failed\x20to\x20update\x20scenario:\x20','3608402wnfZbY','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','Failed\x20to\x20create\x20scenario:\x20','899634UzZGAA','AOtZM','Failed\x20to\x20get\x20item\x20feedback:\x20','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','gitRepoUrl','4421160EHqeTT','/feedback','aFudQ','UgQOb','limit','NZGii','gitBranch','Failed\x20to\x20create\x20feature\x20review:\x20','WGxBg','pCjbn','/sessions','toString','true','/sessions/','bPprx','text','Owhwx','Bearer\x20','itemIds','LXaFU','/api/v1/mcp/features/','pzBvt','Failed\x20to\x20start\x20session:\x20','80076wiZMBJ','5399225GFscbP','ApaNQ','313464spcPrZ','stringify','length','ZMohD','EElbp','/report/markdown','set','PmjMU','offset','CEeOW','/conclude','TkjWd','/restore','jJXBj'];_0x1132=function(){return _0x14c098;};return _0x1132();}export async function updateChecklistItem(_0x363332,_0x58bd69,_0x5659a4){const _0x3278dc={'aFudQ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','WGxBg':'application/json'};return withRetry(async()=>{const _0x122510=_0x1a9a,_0x42d43d=await getToken();if(!_0x42d43d)throw new Error(_0x3278dc[_0x122510(0xe3)]);const _0x1c6fda=getApiBaseUrl(),_0x47d54e=await fetch(_0x1c6fda+'/api/v1/mcp/features/'+_0x363332+'/checklist/'+_0x58bd69,{'method':'PATCH','headers':{'Authorization':_0x122510(0xf2)+_0x42d43d,'Content-Type':_0x3278dc[_0x122510(0xe9)]},'body':JSON['stringify'](_0x5659a4)});if(!_0x47d54e['ok']){const _0x154db=await _0x47d54e['text']();throw new Error(_0x122510(0xd8)+_0x154db);}return _0x47d54e[_0x122510(0xd6)]();},{'label':'updateChecklistItem'});}export async function getFeatureReport(_0x5161a6){const _0x213cdc=_0x1a9a,_0x22cf23={'RbuAH':function(_0xd7a93){return _0xd7a93();},'jJXBj':function(_0x5c0e18,_0x47c1c0,_0x3a584b){return _0x5c0e18(_0x47c1c0,_0x3a584b);}},_0x40ecde=await _0x22cf23['RbuAH'](getToken);if(!_0x40ecde)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x411871=getApiBaseUrl(),_0x1ad0a8=await _0x22cf23[_0x213cdc(0xc5)](fetch,_0x411871+'/api/v1/mcp/features/'+_0x5161a6+_0x213cdc(0xcb),{'method':_0x213cdc(0xd1),'headers':{'Authorization':_0x213cdc(0xf2)+_0x40ecde}});if(!_0x1ad0a8['ok']){const _0x4f0c3c=await _0x1ad0a8['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x4f0c3c);}return _0x1ad0a8[_0x213cdc(0xd6)]();}function _0x1a9a(_0x3a1a9c,_0x2b0903){_0x3a1a9c=_0x3a1a9c-0xb1;const _0x1132e2=_0x1132();let _0x1a9a69=_0x1132e2[_0x3a1a9c];return _0x1a9a69;}export async function getFeatureReportMarkdown(_0x6618b6,_0x4a4aa6){const _0x31266a=_0x1a9a,_0x17a5db={'XDQAN':function(_0x2e8865){return _0x2e8865();},'ZFCAf':_0x31266a(0xdf),'PXbin':function(_0x144b7a){return _0x144b7a();},'bPprx':function(_0x212519,_0x5dcfd7){return _0x212519>_0x5dcfd7;},'PmjMU':_0x31266a(0xf3),'BDmRe':function(_0x2afb36,_0x5ddea4){return _0x2afb36&&_0x5ddea4;},'WwlIA':function(_0x73f52e,_0x3090df,_0x3955b5){return _0x73f52e(_0x3090df,_0x3955b5);}},_0x3b1c63=await _0x17a5db['XDQAN'](getToken);if(!_0x3b1c63)throw new Error(_0x17a5db['ZFCAf']);const _0x3deb39=_0x17a5db[_0x31266a(0xcc)](getApiBaseUrl),_0x8ff13f=new URLSearchParams(),_0x14daf5=_0x17a5db[_0x31266a(0xef)](_0x4a4aa6?.['itemIds']?.[_0x31266a(0xba)]??0x0,0x0),_0x20bd85=Boolean(_0x4a4aa6?.['sessionId']);_0x14daf5&&_0x4a4aa6?.[_0x31266a(0xf3)]&&_0x8ff13f[_0x31266a(0xbe)](_0x17a5db[_0x31266a(0xbf)],_0x4a4aa6[_0x31266a(0xf3)]['join'](','));_0x20bd85&&_0x4a4aa6?.[_0x31266a(0xc7)]&&_0x8ff13f[_0x31266a(0xbe)](_0x31266a(0xc7),_0x4a4aa6[_0x31266a(0xc7)]);_0x17a5db['BDmRe'](!_0x14daf5,!_0x20bd85)&&_0x4a4aa6?.['style']&&_0x8ff13f['set']('style',_0x4a4aa6['style']);const _0x4c88f7=_0x3deb39+'/api/v1/mcp/features/'+_0x6618b6+_0x31266a(0xbd),_0x52dfc6=''+_0x4c88f7+(_0x8ff13f['toString']()?'?'+_0x8ff13f['toString']():''),_0x572a18=await _0x17a5db['WwlIA'](fetch,_0x52dfc6,{'method':_0x31266a(0xd1),'headers':{'Authorization':_0x31266a(0xf2)+_0x3b1c63}});if(!_0x572a18['ok']){const _0x3a1f10=await _0x572a18['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x3a1f10);}return _0x572a18['text']();}export async function listFeatureSessions(_0x244301){const _0x5b934b=_0x1a9a,_0x448b33={'UgQOb':function(_0x26518d){return _0x26518d();},'TkjWd':function(_0x4da942,_0x5b8edf,_0x2f7208){return _0x4da942(_0x5b8edf,_0x2f7208);},'tbPbX':_0x5b934b(0xd1)},_0x41d282=await getToken();if(!_0x41d282)throw new Error(_0x5b934b(0xdf));const _0x4c4d04=_0x448b33[_0x5b934b(0xe4)](getApiBaseUrl),_0x5bd62a=await _0x448b33[_0x5b934b(0xc3)](fetch,_0x4c4d04+'/api/v1/mcp/features/'+_0x244301+_0x5b934b(0xeb),{'method':_0x448b33['tbPbX'],'headers':{'Authorization':'Bearer\x20'+_0x41d282}});if(!_0x5bd62a['ok']){const _0x4240e0=await _0x5bd62a['text']();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x4240e0);}return _0x5bd62a[_0x5b934b(0xd6)]();}export async function startSession(_0x85d647,_0xbaa00){const _0x19d70d=_0x1a9a,_0x193fbd={'EElbp':function(_0x526da9){return _0x526da9();},'qFMJQ':function(_0x22391f){return _0x22391f();}},_0x2cf909=await _0x193fbd[_0x19d70d(0xbc)](getToken);if(!_0x2cf909)throw new Error(_0x19d70d(0xdf));const _0x2c41d5=_0x193fbd['qFMJQ'](getApiBaseUrl),_0x2ce9ab=await fetch(_0x2c41d5+'/api/v1/mcp/features/'+_0x85d647+'/sessions/'+_0xbaa00+'/start',{'method':'POST','headers':{'Authorization':_0x19d70d(0xf2)+_0x2cf909}});if(!_0x2ce9ab['ok']){const _0x30a5ff=await _0x2ce9ab['text']();throw new Error(_0x19d70d(0xb4)+_0x30a5ff);}return _0x2ce9ab[_0x19d70d(0xd6)]();}export async function concludeSession(_0x36a644,_0x147a30){const _0x14a1cd=_0x1a9a,_0x3f3580={'FHJri':_0x14a1cd(0xdf)},_0x4ab84b=await getToken();if(!_0x4ab84b)throw new Error(_0x3f3580[_0x14a1cd(0xcd)]);const _0x302c09=getApiBaseUrl(),_0x534d43=await fetch(_0x302c09+'/api/v1/mcp/features/'+_0x36a644+_0x14a1cd(0xee)+_0x147a30+_0x14a1cd(0xc2),{'method':_0x14a1cd(0xc9),'headers':{'Authorization':'Bearer\x20'+_0x4ab84b}});if(!_0x534d43['ok']){const _0x5ad6e8=await _0x534d43[_0x14a1cd(0xf0)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x5ad6e8);}return _0x534d43[_0x14a1cd(0xd6)]();}export async function getActionItems(_0x4c258d){const _0x12616c=_0x1a9a,_0x380a2e={'pkyuK':function(_0x429804){return _0x429804();},'CEeOW':_0x12616c(0xd1)},_0xdf3c00=await getToken();if(!_0xdf3c00)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x32b0de=_0x380a2e['pkyuK'](getApiBaseUrl),_0x500b35=await fetch(_0x32b0de+'/api/v1/mcp/features/'+_0x4c258d+'/action-items',{'method':_0x380a2e[_0x12616c(0xc1)],'headers':{'Authorization':_0x12616c(0xf2)+_0xdf3c00}});if(!_0x500b35['ok']){const _0x2feb2a=await _0x500b35['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x2feb2a);}return _0x500b35['json']();}export async function getItemFeedback(_0x4976b4,_0x2a11c1){const _0x2b2304=_0x1a9a,_0x5f12a7={'BSGlW':function(_0x3617cb){return _0x3617cb();},'sWWZT':_0x2b2304(0xdf),'NTkNh':function(_0x2b3722){return _0x2b3722();},'huMJe':function(_0x5070bb,_0x12f9de,_0x39172c){return _0x5070bb(_0x12f9de,_0x39172c);},'ZMohD':'GET'},_0x4e09d9=await _0x5f12a7['BSGlW'](getToken);if(!_0x4e09d9)throw new Error(_0x5f12a7['sWWZT']);const _0x4e9679=_0x5f12a7['NTkNh'](getApiBaseUrl),_0x3534a5=await _0x5f12a7['huMJe'](fetch,_0x4e9679+'/api/v1/mcp/features/'+_0x4976b4+'/checklist-items/'+_0x2a11c1+_0x2b2304(0xe2),{'method':_0x5f12a7[_0x2b2304(0xbb)],'headers':{'Authorization':_0x2b2304(0xf2)+_0x4e09d9}});if(!_0x3534a5['ok']){const _0x36d2cb=await _0x3534a5[_0x2b2304(0xf0)]();throw new Error(_0x2b2304(0xde)+_0x36d2cb);}return _0x3534a5['json']();}export async function markCommentsAddressed(_0x5b55a7,_0x2b0b6c,_0x401ed2){const _0x348eca=_0x1a9a,_0x40cf9e={'OLGtr':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','voNfb':function(_0x3c6247){return _0x3c6247();},'Owhwx':function(_0x2dda1,_0x4d654e,_0x4edb80){return _0x2dda1(_0x4d654e,_0x4edb80);},'skAnC':'POST','KGsGy':_0x348eca(0xc8)},_0x59f2d8=await getToken();if(!_0x59f2d8)throw new Error(_0x40cf9e[_0x348eca(0xd7)]);const _0x5667ca=_0x40cf9e['voNfb'](getApiBaseUrl),_0x23273f=await _0x40cf9e[_0x348eca(0xf1)](fetch,_0x5667ca+_0x348eca(0xb2)+_0x5b55a7+'/comments/address',{'method':_0x40cf9e['skAnC'],'headers':{'Authorization':_0x348eca(0xf2)+_0x59f2d8,'Content-Type':_0x40cf9e['KGsGy']},'body':JSON['stringify']({'checklistItemId':_0x2b0b6c,'commentIds':_0x401ed2})});if(!_0x23273f['ok']){const _0x2d4c1c=await _0x23273f[_0x348eca(0xf0)]();throw new Error(_0x348eca(0xda)+_0x2d4c1c);}}export async function softDeleteFeature(_0x23c404){const _0x94daa9=_0x1a9a,_0x42dc78={'myDgf':_0x94daa9(0xdf)},_0x45f27e=await getToken();if(!_0x45f27e)throw new Error(_0x42dc78['myDgf']);const _0x3d1ce8=getApiBaseUrl(),_0x3eb3ab=await fetch(_0x3d1ce8+_0x94daa9(0xb2)+_0x23c404,{'method':'DELETE','headers':{'Authorization':'Bearer\x20'+_0x45f27e}});if(!_0x3eb3ab['ok']){const _0x48c418=await _0x3eb3ab[_0x94daa9(0xf0)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x48c418);}}export async function restoreFeature(_0x4e72c8){const _0x2f9332=_0x1a9a,_0x5ddb6d={'kugtu':_0x2f9332(0xdf),'TMgOu':function(_0x2f2eed){return _0x2f2eed();},'mkGDX':_0x2f9332(0xc9)},_0x416002=await getToken();if(!_0x416002)throw new Error(_0x5ddb6d['kugtu']);const _0x39696f=_0x5ddb6d['TMgOu'](getApiBaseUrl),_0x4cd12f=await fetch(_0x39696f+_0x2f9332(0xb2)+_0x4e72c8+_0x2f9332(0xc4),{'method':_0x5ddb6d['mkGDX'],'headers':{'Authorization':_0x2f9332(0xf2)+_0x416002}});if(!_0x4cd12f['ok']){const _0x3eef39=await _0x4cd12f[_0x2f9332(0xf0)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x3eef39);}}
|