@ranger-testing/ranger-cli 3.1.3-alpha.e1ca941-42 → 3.1.4-alpha.96fdd81-47
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 -0
- 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 +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x184572=_0x4cf0;(function(_0x4ab5d1,_0x5a7055){const _0x3c31b7=_0x4cf0,_0x49a013=_0x4ab5d1();while(!![]){try{const _0x17475f=-parseInt(_0x3c31b7(0x253))/0x1*(-parseInt(_0x3c31b7(0x24e))/0x2)+-parseInt(_0x3c31b7(0x203))/0x3+parseInt(_0x3c31b7(0x273))/0x4*(parseInt(_0x3c31b7(0x265))/0x5)+parseInt(_0x3c31b7(0x1e3))/0x6*(-parseInt(_0x3c31b7(0x21f))/0x7)+parseInt(_0x3c31b7(0x1f8))/0x8+-parseInt(_0x3c31b7(0x22f))/0x9+parseInt(_0x3c31b7(0x27b))/0xa;if(_0x17475f===_0x5a7055)break;else _0x49a013['push'](_0x49a013['shift']());}catch(_0x2f2af1){_0x49a013['push'](_0x49a013['shift']());}}}(_0x2911,0x41d30));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x2911(){const _0x444831=['aIYTW','EnDwU','tunnel_session_id','GsQxl','environmentKey','fPFbs','/api/v1/profiles','agent','XCfdM','VofsB','wsEndpoint','nooqj','not_configured','host','YmYUi','2282144mDfuLR','upmVj','\x20\x20forceLogin\x20enabled\x20for\x20\x22','\x22\x20failed\x20validation\x20—\x20refreshing...','setupHeaders','JALmf','cwhpo','json','status','WMJjh','xDmVZ','1090851nAokft','Cloud\x20profile\x20\x22','trackPhaseStart','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','browserOptions','password','close','PUT','tunnel_bridge_event','GumKD','some','launch','profiles','username','storageStatePath','\x20failed\x20(','DIxCv','RANGER_TEST_PASSWORD','tunnel_login_setup','map','trim','):\x20','POST','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','AxJrt','log','error','headers','21hArvFp','VHHSl','lvhoe','vqKGW','invalid-url','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','RANGER_TEST_USERNAME','eVRwr','\x20\x20Cloud\x20session\x20for\x20\x22','/api/v1/tunnel/sessions','invalidateOn','storageState','stringify','WEznm','\x20\x20No\x20live\x20session\x20for\x20\x22','test_output','4741164rbhzqD','QFJiu','confirm','Browser\x20login\x20timed\x20out\x20after\x20','dQSHX','pPxZh','split','Bearer\x20','zuVXS','message','save','\x22;\x20proceeding\x20with\x20loginInstructions.','Browser\x20login\x20timed\x20out\x20before\x20completion.','uQUNL','kqlhl',').\x20','NphHD','then','sessionId','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','MLnda','fmtWV','MMUlt','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','auth','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','ZECEP','targetUrl','extraHTTPHeaders','join','sessionState','34hhgQnZ','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','ziSAZ','you\x27re\x20now\x20at\x20\x22','IqEqE','12585bBNcol','code','vUSPj','env','pendingLocalConnections','loginInstructions','\x22\x20not\x20found.','\x22\x20on\x20profile\x20\x22','settings','tGNEd','origin','parse','type','newPage','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','cookies','TXAXx','\x22,\x20refreshing\x20session...','1280225qSTAEc','/api/v1/profiles/','userAgent','telemetry','string','pwEndpoint','activeLocalConnections','force','\x20\x20Cached\x20session\x20for\x20\x22','tunnel_login_request','uqYlq','GLsYf','keys','QheIp','4wYrVFv','forceLogin','baseUrl','name','XOhAe','pw_endpoint','length','trackPhaseEnd','6167930LXTuDq','domains','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','/session','organizationId','newContext','tunnel_login_cleanup','bypMb','utf-8','tunnel','catch','aeibO','kTWnS','jAsnj','OiJhf','424044WBYkPJ','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','\x22,\x20cached\x20locally','persistSessionState','OvVCC','trackPhaseError'];_0x2911=function(){return _0x444831;};return _0x2911();}import _0x4e7ffc 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,isCachedSessionLive,isInteractive,needsTunnel,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x10020f){const _0x4bf5a4=_0x4cf0;try{return new URL(_0x10020f)[_0x4bf5a4(0x1f6)];}catch{return _0x4bf5a4(0x223);}}function _0x4cf0(_0x35c324,_0x4706fb){_0x35c324=_0x35c324-0x1dc;const _0x29112b=_0x2911();let _0x4cf093=_0x29112b[_0x35c324];return _0x4cf093;}function errorMessageForTelemetry(_0x53d88a){const _0x568b82={'AugqC':function(_0x1d886e,_0x152abd){return _0x1d886e instanceof _0x152abd;}};return _0x568b82['AugqC'](_0x53d88a,Error)?_0x53d88a['message']:undefined;}function trackBridgeEvent(_0x558cdd,_0x44d57e){const _0x546450=_0x4cf0,_0x571793={'sJHSZ':_0x546450(0x20b),'HzXqk':'tunnel_error'};if(!_0x558cdd)return;const _0x41ec57={'tunnelSessionId':_0x44d57e['sessionId'],'tunnelEventType':_0x44d57e[_0x546450(0x25f)],'connectionId':_0x44d57e['connectionId'],'code':_0x44d57e[_0x546450(0x254)],'reason':_0x44d57e['reason'],'error':_0x44d57e['error'],'elapsedMs':_0x44d57e['elapsedMs'],'activeLocalConnections':_0x44d57e[_0x546450(0x26b)],'pendingLocalConnections':_0x44d57e[_0x546450(0x257)]};_0x558cdd[_0x546450(0x27a)](_0x571793['sJHSZ'],_0x41ec57),(_0x44d57e['type']===_0x571793['HzXqk']||_0x44d57e['type']==='local_ws_error')&&void _0x558cdd[_0x546450(0x1e8)]('tunnel_bridge',new Error(_0x44d57e['error']??_0x44d57e[_0x546450(0x25f)]),_0x41ec57);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x356d6f={'TyZMw':function(_0x2aa18c){return _0x2aa18c();}},_0xe4b917=await _0x356d6f['TyZMw'](getToken);if(!_0xe4b917)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');return _0xe4b917;}async function apiRequest(_0x328aeb,_0x4aea38={}){const _0x14622a=_0x4cf0,_0x5a4484={'fmtWV':function(_0xb6558d,_0x5a089a,_0x5a0b58){return _0xb6558d(_0x5a089a,_0x5a0b58);},'bypMb':'application/json','ovKwz':function(_0x5390b5,_0x4144fc){return _0x5390b5===_0x4144fc;},'EjJCR':_0x14622a(0x269)},_0x729535=await requireToken(),_0x16a6e6=getApiBaseUrl(),_0x6b2e3=await _0x5a4484[_0x14622a(0x244)](fetch,''+_0x16a6e6+_0x328aeb,{..._0x4aea38,'headers':{'Authorization':_0x14622a(0x236)+_0x729535,'Content-Type':_0x5a4484[_0x14622a(0x282)],..._0x4aea38[_0x14622a(0x21e)]??{}}});if(!_0x6b2e3['ok']){let _0x29f75f='',_0x35640f;try{const _0x308550=await _0x6b2e3[_0x14622a(0x1ff)]();_0x29f75f=(_0x5a4484['ovKwz'](typeof _0x308550['error'],_0x14622a(0x269))?_0x308550[_0x14622a(0x21d)]:undefined)??JSON['stringify'](_0x308550);if(_0x5a4484['ovKwz'](typeof _0x308550[_0x14622a(0x254)],_0x5a4484['EjJCR']))_0x35640f=_0x308550['code'];}catch{_0x29f75f=_0x6b2e3['statusText'];}throw new ApiError('API\x20request\x20'+_0x328aeb+_0x14622a(0x212)+_0x6b2e3[_0x14622a(0x200)]+_0x14622a(0x218)+_0x29f75f,_0x6b2e3[_0x14622a(0x200)],_0x29f75f,_0x35640f);}if(_0x6b2e3[_0x14622a(0x200)]===0xcc)return undefined;return _0x6b2e3[_0x14622a(0x1ff)]();}export class ApiError extends Error{[_0x184572(0x200)];['detail'];['code'];constructor(_0x23374b,_0x1839e6,_0x405e62,_0x199314){const _0x2f7ba6=_0x184572,_0x569763={'zvame':'0|1|3|2|4','QqOnK':'ApiError'},_0x372156=_0x569763['zvame'][_0x2f7ba6(0x235)]('|');let _0x268002=0x0;while(!![]){switch(_0x372156[_0x268002++]){case'0':super(_0x23374b);continue;case'1':this[_0x2f7ba6(0x200)]=_0x1839e6;continue;case'2':this[_0x2f7ba6(0x254)]=_0x199314;continue;case'3':this['detail']=_0x405e62;continue;case'4':this['name']=_0x569763['QqOnK'];continue;}break;}}}export async function fetchCloudProfile(_0x177840){const _0x2cb38d=_0x184572,_0x2355cb={'xDmVZ':function(_0x4db74b,_0x3b7b52){return _0x4db74b(_0x3b7b52);},'fZwGk':function(_0x322b98,_0x1930ea){return _0x322b98===_0x1930ea;}};try{return await apiRequest(_0x2cb38d(0x266)+_0x2355cb[_0x2cb38d(0x202)](encodeURIComponent,_0x177840));}catch(_0x1c5494){if(_0x1c5494 instanceof ApiError&&_0x2355cb['fZwGk'](_0x1c5494['status'],0x194))return null;throw _0x1c5494;}}export async function listCloudProfiles(){const _0x1fa798=_0x184572,_0x513bf8=await apiRequest('/api/v1/profiles');return _0x513bf8[_0x1fa798(0x20f)];}export async function deleteCloudProfile(_0x40f240){const _0x4c8c25=_0x184572,_0x41fbf7={'EnDwU':function(_0x251031,_0x3de119,_0x943ce6){return _0x251031(_0x3de119,_0x943ce6);},'TXAXx':function(_0x48b25d,_0x396cd8){return _0x48b25d(_0x396cd8);},'xhpvD':function(_0x211bc3,_0x27d8af){return _0x211bc3 instanceof _0x27d8af;},'fPFbs':function(_0x8a7451,_0x55f50e){return _0x8a7451===_0x55f50e;}};try{await _0x41fbf7[_0x4c8c25(0x1ea)](apiRequest,_0x4c8c25(0x266)+_0x41fbf7[_0x4c8c25(0x263)](encodeURIComponent,_0x40f240),{'method':'DELETE'});}catch(_0x2d037a){if(_0x41fbf7['xhpvD'](_0x2d037a,ApiError)&&_0x41fbf7[_0x4c8c25(0x1ee)](_0x2d037a['status'],0x194))throw new Error(_0x4c8c25(0x204)+_0x40f240+_0x4c8c25(0x259));throw _0x2d037a;}}export async function createCloudProfile(_0x3b25a6,_0x5cc87d,_0x51bf46={}){const _0x2fd2d6=_0x184572,_0xbe2650={'eVRwr':_0x2fd2d6(0x1ef),'QzYUd':'POST'},_0x25399b={'name':_0x3b25a6};if(_0x5cc87d)_0x25399b['environment_key']=_0x5cc87d;_0x51bf46[_0x2fd2d6(0x25b)]&&Object[_0x2fd2d6(0x271)](_0x51bf46[_0x2fd2d6(0x25b)])[_0x2fd2d6(0x279)]>0x0&&(_0x25399b['settings']=_0x51bf46[_0x2fd2d6(0x25b)]);if(_0x51bf46[_0x2fd2d6(0x210)])_0x25399b['username']=_0x51bf46[_0x2fd2d6(0x210)];if(_0x51bf46[_0x2fd2d6(0x208)])_0x25399b[_0x2fd2d6(0x208)]=_0x51bf46[_0x2fd2d6(0x208)];return await apiRequest(_0xbe2650[_0x2fd2d6(0x226)],{'method':_0xbe2650['QzYUd'],'body':JSON[_0x2fd2d6(0x22b)](_0x25399b)});}export async function uploadCloudProfileSession(_0x2ea8f1,_0x25c583){const _0x1e6a31=_0x184572,_0x1ad1d6={'DtwqD':function(_0x123e51,_0x3b9707,_0x3a9c6e){return _0x123e51(_0x3b9707,_0x3a9c6e);}};return await _0x1ad1d6['DtwqD'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x2ea8f1)+_0x1e6a31(0x27e),{'method':'POST','body':JSON[_0x1e6a31(0x22b)]({'session_state':_0x25c583})});}export async function saveCloudProfileCredentials(_0x28bb50,_0x550c25,_0x7acf38){const _0x5dac92=_0x184572,_0x5705a9={'wXysQ':function(_0x3d64bf,_0x1cdd18,_0x2eeb35){return _0x3d64bf(_0x1cdd18,_0x2eeb35);},'ziSAZ':function(_0x4153e6,_0x2d4711){return _0x4153e6(_0x2d4711);},'npsaQ':_0x5dac92(0x20a)};await _0x5705a9['wXysQ'](apiRequest,'/api/v1/profiles/'+_0x5705a9[_0x5dac92(0x250)](encodeURIComponent,_0x28bb50),{'method':_0x5705a9['npsaQ'],'body':JSON[_0x5dac92(0x22b)]({'username':_0x550c25,'password':_0x7acf38})});}export async function fetchAuthConfig(){const _0x5b2c68=_0x184572,_0x385b5c={'AWWtL':function(_0x57c2b5,_0x73c3f1){return _0x57c2b5(_0x73c3f1);}};try{const _0x2ecfd1=await _0x385b5c['AWWtL'](apiRequest,'/api/v1/profiles/auth-config');return _0x2ecfd1['auth_config'];}catch(_0x1bca34){return _0x1bca34 instanceof ApiError&&_0x1bca34['status']!==0x194&&console['error'](_0x5b2c68(0x21a)+_0x1bca34[_0x5b2c68(0x238)]),null;}}async function createTunnelSession(_0x19dc30){const _0x2510a3=_0x184572,_0x1f946f={'XsMIM':function(_0x59d51d,_0x1a6d82,_0xb8b51a){return _0x59d51d(_0x1a6d82,_0xb8b51a);},'YawRi':_0x2510a3(0x228)};return await _0x1f946f['XsMIM'](apiRequest,_0x1f946f['YawRi'],{'method':_0x2510a3(0x219),'body':JSON[_0x2510a3(0x22b)]({'targetUrl':_0x19dc30,'mode':_0x2510a3(0x1f0)})});}async function deleteTunnelSession(_0x789413){const _0x32c3c9=_0x184572,_0x598e17={'YmYUi':function(_0xb74327,_0x43c5ac,_0x3cbd36){return _0xb74327(_0x43c5ac,_0x3cbd36);},'QheIp':'DELETE'};await _0x598e17[_0x32c3c9(0x1f7)](apiRequest,'/api/v1/tunnel/sessions/'+_0x789413,{'method':_0x598e17[_0x32c3c9(0x272)]});}export function pickAdHocEnvKey(_0x5cd0f7){const _0x161c72=_0x184572,_0x24edcc={'blAiZ':function(_0x5c4d81,_0xfb6a02){return _0x5c4d81===_0xfb6a02;},'AxJrt':function(_0xacf9c,_0x3bc7a2){return _0xacf9c+_0x3bc7a2;}};if(!_0x5cd0f7)return null;if(_0x5cd0f7['defaultEnvironmentKey'])return _0x5cd0f7['defaultEnvironmentKey'];const _0x507057=Object[_0x161c72(0x271)](_0x5cd0f7['environments']??{});if(_0x24edcc['blAiZ'](_0x507057['length'],0x1))return _0x507057[0x0];if(_0x507057['length']===0x0)return null;throw new Error(_0x24edcc[_0x161c72(0x21b)]('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x507057[_0x161c72(0x24c)](',\x20')+_0x161c72(0x23e),'Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.'));}export async function resolveAdHocProfile(_0xea6e79=process['env']){const _0x4a3de3=_0x184572,_0x14c596={'uVocd':function(_0x4322d5,_0x363e07){return _0x4322d5(_0x363e07);},'tvuPJ':function(_0x1444d4){return _0x1444d4();},'OiJhf':function(_0x21c9d1,_0x36a53f,_0x55c7c2,_0x189565){return _0x21c9d1(_0x36a53f,_0x55c7c2,_0x189565);}},_0xca43c0=_0xea6e79[_0x4a3de3(0x225)];if(!_0xca43c0)return null;const _0x2cb927=await _0x14c596['uVocd'](fetchCloudProfile,_0xca43c0);if(_0x2cb927)return{'name':_0x2cb927[_0x4a3de3(0x276)],'profile':_0x2cb927};const _0x2deb0e=await _0x14c596['tvuPJ'](fetchAuthConfig),_0x2db4af=pickAdHocEnvKey(_0x2deb0e),_0x4a7089=_0xea6e79[_0x4a3de3(0x214)],_0x470c6e=await _0x14c596[_0x4a3de3(0x1e2)](createCloudProfile,_0xca43c0,_0x2db4af??undefined,{'username':_0xca43c0,'password':_0x4a7089});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x470c6e[_0x4a3de3(0x276)]+'\x22\x20for\x20'+_0xca43c0),{'name':_0x470c6e['name'],'profile':_0x470c6e};}export async function writeSessionToLocalCache(_0x58c2d5,_0x7a27e8,_0x203828,_0x6bfa8e,_0x549fae,_0x2975d9,_0x5a2689){const _0x2a301b=_0x184572,_0x1a25a0={'AxbIn':function(_0x3d96d9,_0x475fe6){return _0x3d96d9(_0x475fe6);},'OvVCC':function(_0x3612c5,_0x13ca0f,_0x4087ca){return _0x3612c5(_0x13ca0f,_0x4087ca);},'xtLDn':function(_0x5c3634,_0x9d0300,_0x389057){return _0x5c3634(_0x9d0300,_0x389057);},'GLsYf':function(_0xe2041d,_0x148baf,_0x4949db){return _0xe2041d(_0x148baf,_0x4949db);}},_0x3d281d=_0x1a25a0['AxbIn'](sessionCacheHash,{'orgId':_0x7a27e8,'profileName':_0x58c2d5,'effectiveBaseUrl':_0x203828,'setupHeaders':_0x6bfa8e,'invalidateOn':_0x5a2689?.['invalidateOn'],'userAgent':_0x5a2689?.['userAgent'],'clientIp':_0x5a2689?.['clientIp']}),_0x5e4c7d=_0x1a25a0[_0x2a301b(0x1e7)](getSessionCachePath,_0x3d281d,_0x58c2d5),_0x4fa36e=join(getRangerHomeDir(),_0x2a301b(0x247));!existsSync(_0x4fa36e)&&await _0x1a25a0[_0x2a301b(0x1e7)](mkdir,_0x4fa36e,{'recursive':!![]});const _0x2a8c7e={..._0x549fae};_0x2975d9&&_0x2975d9[_0x2a301b(0x279)]>0x0&&Array['isArray'](_0x2a8c7e[_0x2a301b(0x262)])&&(_0x2a8c7e['cookies']=_0x1a25a0['xtLDn'](duplicateCookiesForDomains,_0x2a8c7e[_0x2a301b(0x262)],_0x2975d9));const _0xe4cc54={'cached_at':new Date()['toISOString'](),'session_state':_0x2a8c7e};await _0x1a25a0[_0x2a301b(0x270)](writeFile,_0x5e4c7d,JSON[_0x2a301b(0x22b)](_0xe4cc54,null,0x2));const _0x50c85a=getStorageStatePath(_0x5e4c7d);return await writeFile(_0x50c85a,JSON[_0x2a301b(0x22b)](_0x2a8c7e,null,0x2)),_0x50c85a;}export async function checkLocalCache(_0x21eccb,_0x1c020c,_0x2d4854,_0x22a2b6,_0xface6a){const _0x35ef35=_0x184572,_0x3e4c17={'zuVXS':function(_0x11b0a9,_0x5d13e2){return _0x11b0a9(_0x5d13e2);},'aIYTW':function(_0x2539de,_0x434268,_0x496248){return _0x2539de(_0x434268,_0x496248);},'MMUlt':function(_0x35592e,_0x52057b,_0xa04d96){return _0x35592e(_0x52057b,_0xa04d96);},'WGrZB':_0x35ef35(0x1dc)},_0x1741f5=_0x3e4c17[_0x35ef35(0x237)](sessionCacheHash,{'orgId':_0x1c020c,'profileName':_0x21eccb,'effectiveBaseUrl':_0x2d4854,'setupHeaders':_0x22a2b6,'invalidateOn':_0xface6a?.['invalidateOn'],'userAgent':_0xface6a?.[_0x35ef35(0x267)],'clientIp':_0xface6a?.['clientIp']}),_0x5f5396=_0x3e4c17[_0x35ef35(0x1e9)](getSessionCachePath,_0x1741f5,_0x21eccb),_0x29e538=_0x3e4c17['zuVXS'](getStorageStatePath,_0x5f5396);if(!existsSync(_0x5f5396)||!_0x3e4c17['zuVXS'](existsSync,_0x29e538))return null;try{const _0x2e0d7c=await _0x3e4c17[_0x35ef35(0x245)](readFile,_0x5f5396,_0x3e4c17['WGrZB']);return JSON[_0x35ef35(0x25e)](_0x2e0d7c),{'storageStatePath':_0x29e538};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x1e1c3f,_0x258144){const _0x1287ae=_0x184572,_0x565ecf={'GumKD':function(_0x2f7635,_0x29a152){return _0x2f7635===_0x29a152;},'cdPWZ':function(_0x1d59d9,_0x46be8b){return _0x1d59d9+_0x46be8b;}};if(!_0x258144||!_0x258144['domains']?.['length'])return;let _0x485dc3;try{_0x485dc3=new URL(_0x1e1c3f);}catch{return;}const _0x46449d=[];for(const _0x3db1df of _0x258144['domains']){try{_0x46449d['push']({'raw':_0x3db1df,'url':new URL(_0x3db1df)});}catch{}}if(_0x565ecf[_0x1287ae(0x20c)](_0x46449d['length'],0x0))return;if(_0x46449d[_0x1287ae(0x20d)](_0x42ad7f=>_0x42ad7f['url']['origin']===_0x485dc3[_0x1287ae(0x25d)]))return;const _0xfaedd0=_0x46449d[_0x1287ae(0x216)](_0x992e29=>'\x22'+_0x992e29['raw']+'\x22')['join'](',\x20');console['log'](_0x565ecf['cdPWZ']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0xfaedd0+';\x20'+(_0x1287ae(0x251)+_0x1e1c3f+_0x1287ae(0x1e4)),'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.'));}export async function serverSideLogin(_0x373bde,_0x780bb1){const _0x16e93c=_0x184572,_0x5331ba={'kqlhl':function(_0x5c4b69,_0x2c8ab8){return _0x5c4b69(_0x2c8ab8);},'NphHD':function(_0x2a93df,_0x3f05e2){return _0x2a93df===_0x3f05e2;},'iFalo':'not_configured'},_0x2f578c=process['env']['RANGER_TEST_USERNAME'],_0x3e5bfc=process['env']['RANGER_TEST_PASSWORD'],_0x234b24={};if(_0x2f578c)_0x234b24['username']=_0x2f578c;if(_0x3e5bfc)_0x234b24[_0x16e93c(0x208)]=_0x3e5bfc;if(_0x780bb1?.[_0x16e93c(0x26c)])_0x234b24['force']=!![];if(_0x780bb1?.[_0x16e93c(0x24a)])_0x234b24['target_url']=_0x780bb1[_0x16e93c(0x24a)];_0x780bb1?.['tunnel']&&(_0x234b24[_0x16e93c(0x1eb)]=_0x780bb1[_0x16e93c(0x1dd)][_0x16e93c(0x241)],_0x234b24[_0x16e93c(0x278)]=_0x780bb1['tunnel'][_0x16e93c(0x26a)]);try{return await apiRequest(_0x16e93c(0x266)+_0x5331ba[_0x16e93c(0x23d)](encodeURIComponent,_0x373bde)+'/login',{'method':'POST','body':JSON[_0x16e93c(0x22b)](_0x234b24)});}catch(_0x305ee2){if(_0x305ee2 instanceof ApiError&&_0x5331ba[_0x16e93c(0x23f)](_0x305ee2[_0x16e93c(0x200)],0x190)&&_0x305ee2[_0x16e93c(0x254)]===_0x5331ba['iFalo'])return{'status':_0x16e93c(0x1f5),'error':_0x305ee2['detail']};throw _0x305ee2;}}async function serverSideLoginWithOptionalTunnel(_0x20dc38,_0x3e4e16,_0x25d862={}){const _0x2aa7d7=_0x184572,_0x3f3335={'QFJiu':_0x2aa7d7(0x26e),'ydIgn':function(_0x1faf0a,_0x8e3933){return _0x1faf0a(_0x8e3933);},'lvhoe':function(_0x34d396,_0x4fed3f){return _0x34d396(_0x4fed3f);},'JALmf':function(_0x88fa5,_0x2fed19){return _0x88fa5(_0x2fed19);},'uiwhx':function(_0x3dde8e,_0xe7b830,_0x58f23e){return _0x3dde8e(_0xe7b830,_0x58f23e);},'ZECEP':function(_0x2285e2,_0x1ee221){return _0x2285e2??_0x1ee221;},'IqEqE':_0x2aa7d7(0x215),'zJKwR':function(_0x5f5146,_0xc83c27){return _0x5f5146||_0xc83c27;},'ArAlq':'3|1|0|4|2'};if(!_0x3f3335['ydIgn'](needsTunnel,_0x3e4e16))return await serverSideLogin(_0x20dc38,{'force':_0x25d862[_0x2aa7d7(0x26c)]});let _0x503dc1=null,_0x1e31b5=null,_0x42947b=null,_0x51e926=null,_0x4f0a33=![];const _0x1c4a65={'profileName':_0x20dc38,'targetUrlHost':targetHostForTelemetry(_0x3e4e16),'tunnelRequired':!![],'forceLogin':Boolean(_0x25d862[_0x2aa7d7(0x26c)])};try{_0x25d862[_0x2aa7d7(0x268)]?.[_0x2aa7d7(0x205)]('tunnel_login_setup',_0x1c4a65),_0x503dc1=await _0x3f3335[_0x2aa7d7(0x221)](launchBrowserServer,{'headless':!![]}),_0x1e31b5=await _0x3f3335[_0x2aa7d7(0x1fd)](createTunnelSession,_0x3e4e16);const _0x50d6e1=await requireToken();_0x42947b=await _0x3f3335['lvhoe'](createTunnelBridge,{'localWsUrl':_0x503dc1[_0x2aa7d7(0x1f3)],'tunnelServerUrl':_0x1e31b5['tunnelUrl'],'sessionId':_0x1e31b5['sessionId'],'apiKey':_0x50d6e1,'onError':_0x23b084=>{_0x51e926=_0x23b084;},'onClose':()=>{const _0x151dfa=_0x2aa7d7;_0x51e926??=new Error(_0x151dfa(0x242)+_0x20dc38);},'onEvent':_0x2592e4=>trackBridgeEvent(_0x25d862['telemetry'],_0x2592e4)}),_0x25d862[_0x2aa7d7(0x268)]?.['trackPhaseEnd'](_0x2aa7d7(0x215),{..._0x1c4a65,'tunnelSessionId':_0x1e31b5['sessionId'],'localBrowserServer':!![]}),_0x4f0a33=!![];try{return _0x25d862[_0x2aa7d7(0x268)]?.['trackPhaseStart'](_0x3f3335[_0x2aa7d7(0x230)],{..._0x1c4a65,'tunnelSessionId':_0x1e31b5['sessionId']}),await _0x3f3335['uiwhx'](serverSideLogin,_0x20dc38,{'force':_0x25d862[_0x2aa7d7(0x26c)],'targetUrl':_0x3e4e16,'tunnel':{'sessionId':_0x1e31b5['sessionId'],'pwEndpoint':_0x1e31b5[_0x2aa7d7(0x26a)]}})[_0x2aa7d7(0x240)](_0x2800c1=>{const _0x1cb40d=_0x2aa7d7;return _0x25d862['telemetry']?.[_0x1cb40d(0x27a)](_0x3f3335[_0x1cb40d(0x230)],{..._0x1c4a65,'tunnelSessionId':_0x1e31b5?.[_0x1cb40d(0x241)],'loginStatus':_0x2800c1['status'],'hasSessionState':Boolean(_0x2800c1['session_state']),'hasTestOutput':Boolean(_0x2800c1['test_output']),'bridgeError':errorMessageForTelemetry(_0x51e926)}),_0x2800c1;});}catch(_0x4d10b4){await _0x25d862['telemetry']?.[_0x2aa7d7(0x1e8)]('tunnel_login_request',_0x51e926??_0x4d10b4,{..._0x1c4a65,'tunnelSessionId':_0x1e31b5[_0x2aa7d7(0x241)],'bridgeError':errorMessageForTelemetry(_0x51e926)});throw _0x3f3335[_0x2aa7d7(0x249)](_0x51e926,_0x4d10b4);}}catch(_0x1f18be){!_0x4f0a33&&await _0x25d862['telemetry']?.['trackPhaseError'](_0x3f3335[_0x2aa7d7(0x252)],_0x1f18be,{..._0x1c4a65,'tunnelSessionId':_0x1e31b5?.[_0x2aa7d7(0x241)]});throw _0x1f18be;}finally{if(_0x3f3335['zJKwR'](_0x1e31b5,_0x503dc1)||_0x42947b){const _0x593045=_0x3f3335['ArAlq']['split']('|');let _0x3efc96=0x0;while(!![]){switch(_0x593045[_0x3efc96++]){case'0':_0x503dc1&&await _0x503dc1[_0x2aa7d7(0x209)]()[_0x2aa7d7(0x1de)](()=>{});continue;case'1':_0x42947b?.[_0x2aa7d7(0x209)]();continue;case'2':_0x25d862['telemetry']?.[_0x2aa7d7(0x27a)](_0x2aa7d7(0x281),{..._0x1c4a65,'tunnelSessionId':_0x1e31b5?.[_0x2aa7d7(0x241)]});continue;case'3':_0x25d862['telemetry']?.[_0x2aa7d7(0x205)]('tunnel_login_cleanup',{..._0x1c4a65,'tunnelSessionId':_0x1e31b5?.['sessionId']});continue;case'4':_0x1e31b5&&await deleteTunnelSession(_0x1e31b5[_0x2aa7d7(0x241)])[_0x2aa7d7(0x1de)](()=>{});continue;}break;}}}}export async function manualBrowserLogin(_0x17a0f4,_0xe7f444,_0x13edd8={}){const _0x2310aa=_0x184572,_0x1fd2cc={'uqYlq':function(_0x3d46f9,_0x3d0a85){return _0x3d46f9/_0x3d0a85;},'tGNEd':function(_0x2d9e9c,_0x27c34b){return _0x2d9e9c(_0x27c34b);},'dHCuO':function(_0x3ab88a,_0x9af3c4,_0x511c2e){return _0x3ab88a(_0x9af3c4,_0x511c2e);},'nooqj':_0x2310aa(0x209),'jAsnj':function(_0x5e625a){return _0x5e625a();},'XCfdM':function(_0x51559c,_0x1ab37b){return _0x51559c+_0x1ab37b;},'Dqazz':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','pPxZh':function(_0x25a471,_0x3a04ef){return _0x25a471>_0x3a04ef;},'koUSH':_0x2310aa(0x246),'uQUNL':function(_0x4d5443,_0x55c337){return _0x4d5443&&_0x55c337;},'dQSHX':_0x2310aa(0x23b),'vqKGW':function(_0x468c99,_0x478e1b){return _0x468c99!==_0x478e1b;},'MLnda':function(_0xfede26,_0x544303,_0x408562){return _0xfede26(_0x544303,_0x408562);},'cwhpo':'POST'};if(!_0x1fd2cc[_0x2310aa(0x1e1)](isInteractive))throw new Error(_0x1fd2cc[_0x2310aa(0x1f1)](_0x2310aa(0x224)+_0x17a0f4['name']+'\x22.\x0a',_0x1fd2cc['Dqazz'])+'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.');const _0x3fa24a=_0xe7f444&&_0x1fd2cc[_0x2310aa(0x234)](_0xe7f444['domains']['length'],0x0)?_0xe7f444[_0x2310aa(0x27c)][0x0]:'about:blank';console['log'](_0x1fd2cc['koUSH']),console[_0x2310aa(0x21c)](_0x2310aa(0x206)),await new Promise(_0x71aeb0=>setTimeout(_0x71aeb0,0x7d0));const _0x280009=await chromium[_0x2310aa(0x20e)]({'headless':![]});let _0x564497=null;try{const _0x499f56={'ignoreHTTPSErrors':!![]};_0xe7f444?.[_0x2310aa(0x1fc)]&&(_0x499f56[_0x2310aa(0x24b)]=_0xe7f444['setupHeaders']);const _0x4d48d4=await _0x280009[_0x2310aa(0x280)](_0x499f56);await addProfileSetupBanner(_0x4d48d4);const _0x195784=await _0x4d48d4[_0x2310aa(0x260)]();await _0x195784['goto'](_0x3fa24a);let _0x35f0b9=![];await new Promise(_0x378141=>{const _0x3e4788=_0x2310aa,_0x20b17e={'IHusB':function(_0x54c477,_0x4b666a){const _0x16f49f=_0x4cf0;return _0x1fd2cc[_0x16f49f(0x26f)](_0x54c477,_0x4b666a);},'WMJjh':function(_0xbf9069,_0x6b6ce4){const _0x2c5517=_0x4cf0;return _0x1fd2cc[_0x2c5517(0x25c)](_0xbf9069,_0x6b6ce4);},'pxwQo':function(_0x24ddc9){return _0x24ddc9();}},_0x225747=_0x1fd2cc['dHCuO'](setTimeout,()=>{const _0x59a223=_0x4cf0;_0x35f0b9=!![],console[_0x59a223(0x21d)](_0x59a223(0x232)+_0x20b17e['IHusB'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x378141();},MANUAL_LOGIN_TIMEOUT_MS);_0x195784['on'](_0x1fd2cc[_0x3e4788(0x1f4)],async()=>{const _0x525ae7=_0x3e4788;_0x20b17e[_0x525ae7(0x201)](clearTimeout,_0x225747);try{const _0x17dd45=await _0x4d48d4[_0x525ae7(0x22a)]();_0x564497=_0x17dd45;}catch{}_0x20b17e['pxwQo'](_0x378141);});});if(_0x1fd2cc[_0x2310aa(0x23c)](_0x35f0b9,!_0x564497))throw new Error(_0x1fd2cc[_0x2310aa(0x233)]);}finally{await _0x280009[_0x2310aa(0x209)]()[_0x2310aa(0x1de)](()=>{});}if(!_0x564497)throw new Error(_0x2310aa(0x248));return _0x1fd2cc[_0x2310aa(0x222)](_0x13edd8[_0x2310aa(0x1e6)],![])&&await _0x1fd2cc[_0x2310aa(0x243)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x17a0f4[_0x2310aa(0x276)])+'/session',{'method':_0x1fd2cc[_0x2310aa(0x1fe)],'body':JSON[_0x2310aa(0x22b)]({'session_state':_0x564497,'updated_by':'cli:manual-login'})}),{'sessionState':_0x564497};}export async function promptSaveCredentials(_0x5da02c){const _0x62fabd=_0x184572,_0x274404={'fRLvv':function(_0x380024,_0x13982e){return _0x380024||_0x13982e;},'ILXmL':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','csuVW':function(_0x2187ff,_0x467df7,_0x11d383){return _0x2187ff(_0x467df7,_0x11d383);},'upmVj':_0x62fabd(0x20a)},_0x5160b1=process[_0x62fabd(0x256)][_0x62fabd(0x225)],_0x437f81=process[_0x62fabd(0x256)]['RANGER_TEST_PASSWORD'];if(_0x274404['fRLvv'](!_0x5160b1,!_0x437f81))return;if(!isInteractive())return;const {save:_0x23c11d}=await _0x4e7ffc['prompt']([{'type':_0x62fabd(0x231),'name':_0x62fabd(0x239),'message':_0x274404['ILXmL'],'default':![]}]);if(!_0x23c11d)return;await _0x274404['csuVW'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x5da02c),{'method':_0x274404[_0x62fabd(0x1f9)],'body':JSON['stringify']({'username':_0x5160b1,'password':_0x437f81})}),console[_0x62fabd(0x21c)]('\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.');}export async function resolveCloudProfileSession(_0x2f0b2b,_0x270413={}){const _0x9a693=_0x184572,_0x5253d9={'XOhAe':function(_0x3d7f8a){return _0x3d7f8a();},'DIxCv':function(_0x326d81,_0x3fba33){return _0x326d81===_0x3fba33;},'VofsB':'string','NYGRV':function(_0x479c65,_0x4b28aa){return _0x479c65||_0x4b28aa;},'kTWnS':function(_0x55bda2,_0x1356b7){return _0x55bda2(_0x1356b7);},'qMBng':function(_0x277b28,_0x2fb315){return _0x277b28>_0x2fb315;},'zNOTc':function(_0x2b8a06,_0x312a1b){return _0x2b8a06(_0x312a1b);},'aeibO':function(_0x394967,_0xf4ef50,_0x4fdce0,_0x5420da,_0x5c8ee4,_0x4a0523){return _0x394967(_0xf4ef50,_0x4fdce0,_0x5420da,_0x5c8ee4,_0x4a0523);},'WxglA':function(_0x21cb25,_0x1cecca,_0x59dfa3){return _0x21cb25(_0x1cecca,_0x59dfa3);},'kPQnv':function(_0x1f1197,_0xd7afef,_0x13e82e){return _0x1f1197(_0xd7afef,_0x13e82e);},'VHHSl':function(_0x1e1c75,_0x57fda2){return _0x1e1c75(_0x57fda2);},'yWREa':function(_0x20299d,_0x228c97,_0x5dd9cc,_0x1e0eb1){return _0x20299d(_0x228c97,_0x5dd9cc,_0x1e0eb1);},'WEznm':function(_0x3ca172,_0x246cca,_0xd29d62){return _0x3ca172(_0x246cca,_0xd29d62);},'amRxQ':'not_configured','HSwQG':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','vUSPj':'\x20\x20Login\x20successful.\x20Session\x20cached.','OJKNW':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','PvcgX':_0x9a693(0x27d),'GsQxl':function(_0x3f7891,_0x3ea6a5,_0x5cd6f0,_0x2eb5b4){return _0x3f7891(_0x3ea6a5,_0x5cd6f0,_0x2eb5b4);}},_0x5acdc3=_0x2f0b2b[_0x9a693(0x25b)]??{},_0x17bfad=await _0x5253d9[_0x9a693(0x277)](fetchAuthConfig),_0x4650bf=_0x17bfad?resolveAuthEnvironmentLocally(_0x17bfad,_0x2f0b2b[_0x9a693(0x1ed)]):null,_0x32c49d=typeof _0x4650bf?.['loginInstructions']==='string'&&_0x4650bf['loginInstructions']['trim']()?_0x4650bf['loginInstructions']:undefined,_0xf9c7df=_0x5253d9['DIxCv'](typeof _0x5acdc3[_0x9a693(0x258)],_0x5253d9[_0x9a693(0x1f2)])&&_0x5acdc3[_0x9a693(0x258)][_0x9a693(0x217)]()?_0x5acdc3[_0x9a693(0x258)]:undefined,_0x4268d2=_0x5253d9['NYGRV'](_0xf9c7df,!_0x32c49d)?_0x5acdc3:{..._0x5acdc3,'loginInstructions':_0x32c49d},_0x1673a9=Boolean(_0x4268d2['loginInstructions']?.['trim']()),_0x45c579=_0x5253d9['kTWnS'](Boolean,_0x5acdc3[_0x9a693(0x274)]||_0x4650bf?.[_0x9a693(0x274)]),_0x11adab=_0x4650bf?.[_0x9a693(0x27c)],_0x297a7e=_0x5acdc3[_0x9a693(0x1fc)],_0x47ee59=_0x297a7e??_0x4650bf?.[_0x9a693(0x1fc)],_0x188d35=_0x270413['effectiveBaseUrl']??_0x5acdc3[_0x9a693(0x275)]??(_0x11adab&&_0x5253d9['qMBng'](_0x11adab[_0x9a693(0x279)],0x0)?_0x11adab[0x0]:''),_0xa0d383=_0x188d35?_0x5253d9['zNOTc'](needsTunnel,_0x188d35):![],_0x387dad={'invalidateOn':_0x4650bf?.[_0x9a693(0x229)],'userAgent':_0x4650bf?.[_0x9a693(0x207)]?.['userAgent']??_0x5acdc3[_0x9a693(0x267)]};_0x45c579&&console[_0x9a693(0x21c)](_0x9a693(0x1fa)+_0x2f0b2b['name']+_0x9a693(0x264));if(!_0x45c579){const _0x16f619=await _0x5253d9[_0x9a693(0x1df)](checkLocalCache,_0x2f0b2b[_0x9a693(0x276)],_0x2f0b2b['organizationId'],_0x188d35,_0x47ee59,_0x387dad);if(_0x16f619){if(_0x188d35&&!_0xa0d383){const _0x163c64=await isCachedSessionLive(_0x16f619[_0x9a693(0x211)],_0x188d35,{'sessionCheckPath':_0x4650bf?.['sessionCheckPath'],'setupHeaders':_0x47ee59},{'launchBrowser':launchRealBrowser});if(_0x163c64)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x2f0b2b[_0x9a693(0x276)]+'\x22'),{'authPath':_0x16f619[_0x9a693(0x211)],'settings':_0x4268d2,'resolvedEnv':_0x4650bf};console['log'](_0x9a693(0x26d)+_0x2f0b2b['name']+_0x9a693(0x1fb)),_0x5253d9['WxglA'](emitSessionValidationHint,_0x188d35,_0x4650bf);}else return _0xa0d383&&console['log']('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x2f0b2b['name']+'\x22'),{'authPath':_0x16f619['storageStatePath'],'settings':_0x4268d2,'resolvedEnv':_0x4650bf};}}if(!_0x45c579&&_0x2f0b2b[_0x9a693(0x24d)]){if(_0xa0d383)console[_0x9a693(0x21c)]('\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22'+_0x188d35+_0x9a693(0x25a)+_0x2f0b2b['name']+'\x22');else{const _0x581f40=await writeSessionToLocalCache(_0x2f0b2b[_0x9a693(0x276)],_0x2f0b2b[_0x9a693(0x27f)],_0x188d35,_0x47ee59,_0x2f0b2b['sessionState'],_0x11adab,_0x387dad);if(_0x188d35){const _0x4df15f=await isCachedSessionLive(_0x581f40,_0x188d35,{'sessionCheckPath':_0x4650bf?.['sessionCheckPath'],'setupHeaders':_0x47ee59},{'launchBrowser':launchRealBrowser});if(_0x4df15f)return console['log'](_0x9a693(0x24f)+_0x2f0b2b[_0x9a693(0x276)]+_0x9a693(0x1e5)),{'authPath':_0x581f40,'settings':_0x4268d2,'resolvedEnv':_0x4650bf};console[_0x9a693(0x21c)](_0x9a693(0x227)+_0x2f0b2b[_0x9a693(0x276)]+_0x9a693(0x261)),_0x5253d9['kPQnv'](emitSessionValidationHint,_0x188d35,_0x4650bf);}else return{'authPath':_0x581f40,'settings':_0x4268d2,'resolvedEnv':_0x4650bf};}}if(_0x1673a9)return console[_0x9a693(0x21c)](_0x9a693(0x22d)+_0x2f0b2b[_0x9a693(0x276)]+_0x9a693(0x23a)),{'authPath':undefined,'settings':_0x4268d2,'resolvedEnv':_0x4650bf};console['log'](_0x9a693(0x22d)+_0x2f0b2b['name']+'\x22,\x20attempting\x20login...');const _0x304ad4=Boolean(process['env'][_0x9a693(0x225)])&&_0x5253d9[_0x9a693(0x220)](Boolean,process[_0x9a693(0x256)]['RANGER_TEST_PASSWORD']),_0x4069c8=_0x5253d9[_0x9a693(0x1e0)](Boolean,_0x2f0b2b['username']);if(_0x304ad4||_0x4069c8)try{const _0x38211d=_0x188d35?await _0x5253d9['yWREa'](serverSideLoginWithOptionalTunnel,_0x2f0b2b[_0x9a693(0x276)],_0x188d35,{'force':_0x45c579,'telemetry':_0x270413['telemetry']}):await _0x5253d9[_0x9a693(0x22c)](serverSideLogin,_0x2f0b2b[_0x9a693(0x276)],{'force':_0x45c579});if(_0x5253d9[_0x9a693(0x213)](_0x38211d['status'],_0x5253d9['amRxQ']))console[_0x9a693(0x21c)](_0x5253d9['HSwQG']);else{if(_0x5253d9[_0x9a693(0x213)](_0x38211d['status'],'success')&&_0x38211d['session_state']){console['log'](_0x5253d9[_0x9a693(0x255)]);const _0x159192=await writeSessionToLocalCache(_0x2f0b2b['name'],_0x2f0b2b[_0x9a693(0x27f)],_0x188d35,_0x47ee59,_0x38211d['session_state'],_0x11adab,_0x387dad);return _0x304ad4&&!_0x4069c8&&await promptSaveCredentials(_0x2f0b2b['name']),{'authPath':_0x159192,'settings':_0x4268d2,'resolvedEnv':_0x4650bf};}else _0x38211d[_0x9a693(0x22e)]&&(console[_0x9a693(0x21c)](_0x5253d9['OJKNW']),console['log'](_0x38211d['test_output'])),console[_0x9a693(0x21c)](_0x5253d9['PvcgX']);}}catch(_0x13cbde){console[_0x9a693(0x21c)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0x13cbde instanceof Error?_0x13cbde[_0x9a693(0x238)]:String(_0x13cbde))),console[_0x9a693(0x21c)](_0x5253d9['PvcgX']);}const _0x399358=_0x4650bf?{..._0x4650bf,'setupHeaders':_0x47ee59}:_0x188d35?{'key':_0x2f0b2b[_0x9a693(0x1ed)]??'','domains':[_0x188d35],'setupHeaders':_0x47ee59}:null,{sessionState:_0x44624a}=await _0x5253d9[_0x9a693(0x1ec)](manualBrowserLogin,_0x2f0b2b,_0x399358,{'persistSessionState':!_0xa0d383}),_0x4b1619=await writeSessionToLocalCache(_0x2f0b2b['name'],_0x2f0b2b['organizationId'],_0x188d35,_0x47ee59,_0x44624a,_0x11adab,_0x387dad);return{'authPath':_0x4b1619,'settings':_0x4268d2,'resolvedEnv':_0x4650bf};}
|
|
1
|
+
const _0x2f6d51=_0x29b1;(function(_0x27c087,_0x3d4855){const _0x50c95d=_0x29b1,_0x236bfe=_0x27c087();while(!![]){try{const _0x4b5c8b=-parseInt(_0x50c95d(0x207))/0x1*(-parseInt(_0x50c95d(0x21b))/0x2)+-parseInt(_0x50c95d(0x1d1))/0x3*(parseInt(_0x50c95d(0x1e6))/0x4)+parseInt(_0x50c95d(0x1bc))/0x5+parseInt(_0x50c95d(0x198))/0x6+-parseInt(_0x50c95d(0x1ea))/0x7+parseInt(_0x50c95d(0x167))/0x8*(parseInt(_0x50c95d(0x1ba))/0x9)+-parseInt(_0x50c95d(0x19c))/0xa*(-parseInt(_0x50c95d(0x1c6))/0xb);if(_0x4b5c8b===_0x3d4855)break;else _0x236bfe['push'](_0x236bfe['shift']());}catch(_0x120181){_0x236bfe['push'](_0x236bfe['shift']());}}}(_0x268b,0xd44a1));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x284cac 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,isCachedSessionLive,isInteractive,needsTunnel,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x5094a9){const _0x1b2109=_0x29b1;try{return new URL(_0x5094a9)[_0x1b2109(0x20c)];}catch{return _0x1b2109(0x1e3);}}function errorMessageForTelemetry(_0x3ff44a){const _0x26cc4d=_0x29b1;return _0x3ff44a instanceof Error?_0x3ff44a[_0x26cc4d(0x169)]:undefined;}function trackBridgeEvent(_0x31ca07,_0x39847f){const _0x2c942a=_0x29b1,_0xe2f2b4={'VSwPP':'tunnel_bridge'};if(!_0x31ca07)return;const _0x27c908={'tunnelSessionId':_0x39847f[_0x2c942a(0x1a1)],'tunnelEventType':_0x39847f[_0x2c942a(0x182)],'connectionId':_0x39847f[_0x2c942a(0x1f0)],'code':_0x39847f['code'],'reason':_0x39847f[_0x2c942a(0x17f)],'error':_0x39847f['error'],'elapsedMs':_0x39847f[_0x2c942a(0x180)],'activeLocalConnections':_0x39847f[_0x2c942a(0x1a4)],'pendingLocalConnections':_0x39847f['pendingLocalConnections']};_0x31ca07[_0x2c942a(0x1a5)](_0x2c942a(0x1e2),_0x27c908),(_0x39847f[_0x2c942a(0x182)]==='tunnel_error'||_0x39847f[_0x2c942a(0x182)]==='local_ws_error')&&void _0x31ca07[_0x2c942a(0x214)](_0xe2f2b4[_0x2c942a(0x183)],new Error(_0x39847f[_0x2c942a(0x187)]??_0x39847f[_0x2c942a(0x182)]),_0x27c908);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x5e1e5c={'UXUkU':function(_0xfb4370){return _0xfb4370();},'zuDWV':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0xbc145e=await _0x5e1e5c['UXUkU'](getToken);if(!_0xbc145e)throw new Error(_0x5e1e5c['zuDWV']);return _0xbc145e;}function _0x268b(){const _0x97ef71=['sessionId','cookies','targetUrl','activeLocalConnections','trackPhaseEnd','/api/v1/profiles','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','dUyrw','\x20failed\x20(','POST','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','statusText','log','\x22\x20failed\x20validation\x20—\x20refreshing...','code','tunnel_session_id','baseUrl','\x20\x20No\x20live\x20session\x20for\x20\x22','headers','toISOString','\x22\x20on\x20profile\x20\x22','ekezx','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','CvNvL','2303379YcapFg','goGPL','1142955UlUrrC','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','none','pwEndpoint','close','forceLogin','ErrGr','/session','hpuFj','invalidateOn','363ciYPnG','loginInstructions','XAKEy','sessionCheckPath','GfXZq','telemetry','YFGck','):\x20','environment_key','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','ApiError','3JGSMMh','Ghznx','session_state','ambiguous','PUT','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>`.','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','tunnel_login_setup','OiLry','tYrhp','length','xkHUt','GIYvM','env','\x20\x20Cloud\x20session\x20for\x20\x22','newPage','\x20\x20Created\x20cloud\x20profile\x20\x22','tunnel_bridge_event','invalid-url','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','tunnel','5912356XwfLpN','UtwVv','aMAez','qsWwn','5504345eLXGts','tfDHs','goto','organizationId','storageState','API\x20request\x20','connectionId','\x22;\x20proceeding\x20with\x20loginInstructions.','RANGER_TEST_PASSWORD','xXXqu','xKfGm','string','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','environments','/api/v1/tunnel/sessions/','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','\x22.\x0a','auth','\x22;\x20using\x20\x22','trackPhaseStart','/api/v1/profiles/','fKKua','heSux','ttbhU','settings','iKwFC',').\x20','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','tunnel_login_request','2868WDMKcw','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','XxDIL','KaAWL','username','host','envKey','domains','force','tEWNL','KNdjg','ZJaBh','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','trackPhaseError','2|0|1|4|3','VPcjx','password','catch','name','json','834tpcZRY','launch','\x20\x20Cached\x20session\x20for\x20\x22','raw','utf-8','wsEndpoint','8QtAMNU','ioTjV','message','cli:manual-login','rTyuc','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','\x20Available:\x20','newContext','AYZfB','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','join','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','status','FPIex','setupHeaders','pw_endpoint','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','keys','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','VqBkh','\x22,\x20refreshing\x20session...','environmentKey','QXmRP','reason','elapsedMs','agent','type','VSwPP','prompt','qxjty','target_url','error','KPWLv','\x20\x20Server-side\x20login\x20error:\x20','RANGER_TEST_USERNAME','userAgent','zDaGD','DELETE','stringify','profiles','browserOptions','VYlmN','yJZtU','JsSlT','not_configured','\x20\x20Login\x20successful.\x20Session\x20cached.','success','test_output','1444794dGGuVN','\x20\x20Auth\x20env\x20\x22','defaultEnvironmentKey','map','367480rqwJRd','tunnelUrl','\x22,\x20attempting\x20login...','save','push'];_0x268b=function(){return _0x97ef71;};return _0x268b();}async function apiRequest(_0x53a59e,_0x4fa337={}){const _0x14714c=_0x29b1,_0x1ddcb7={'DcOQm':'string','KPWLv':function(_0x39da25,_0x9165a0){return _0x39da25===_0x9165a0;},'RrESY':function(_0x256bbc,_0x2f706e){return _0x256bbc===_0x2f706e;}},_0x5c5c38=await requireToken(),_0xfa8859=getApiBaseUrl(),_0xd00ea9=await fetch(''+_0xfa8859+_0x53a59e,{..._0x4fa337,'headers':{'Authorization':'Bearer\x20'+_0x5c5c38,'Content-Type':'application/json',..._0x4fa337[_0x14714c(0x1b3)]??{}}});if(!_0xd00ea9['ok']){let _0x419862='',_0x217d62;try{const _0x577984=await _0xd00ea9[_0x14714c(0x21a)](),_0x20ac42=(typeof _0x577984['error']===_0x1ddcb7['DcOQm']?_0x577984['error']:undefined)??JSON['stringify'](_0x577984);_0x419862=_0x20ac42;_0x1ddcb7['KPWLv'](typeof _0x577984['test_output'],_0x14714c(0x1f5))&&_0x577984[_0x14714c(0x197)]&&(_0x419862=_0x419862+'\x0a'+_0x577984[_0x14714c(0x197)]);if(_0x1ddcb7[_0x14714c(0x188)](typeof _0x577984[_0x14714c(0x1af)],'string'))_0x217d62=_0x577984['code'];}catch{_0x419862=_0xd00ea9[_0x14714c(0x1ac)];}throw new ApiError(_0x14714c(0x1ef)+_0x53a59e+_0x14714c(0x1a9)+_0xd00ea9[_0x14714c(0x173)]+_0x14714c(0x1cd)+_0x419862,_0xd00ea9[_0x14714c(0x173)],_0x419862,_0x217d62);}if(_0x1ddcb7['RrESY'](_0xd00ea9[_0x14714c(0x173)],0xcc))return undefined;return _0xd00ea9['json']();}export class ApiError extends Error{['status'];['detail'];[_0x2f6d51(0x1af)];constructor(_0x421435,_0x3141aa,_0x8b13f7,_0x44ea49){const _0x253289=_0x2f6d51,_0x2199ac={'fKKua':_0x253289(0x1d0)};super(_0x421435),this['status']=_0x3141aa,this['detail']=_0x8b13f7,this[_0x253289(0x1af)]=_0x44ea49,this[_0x253289(0x219)]=_0x2199ac[_0x253289(0x1ff)];}}export async function fetchCloudProfile(_0x5db542){const _0x5af929=_0x2f6d51,_0x4563ff={'ErrGr':function(_0x459c12,_0x3f92dc){return _0x459c12(_0x3f92dc);},'YufOU':function(_0x48a436,_0x3ad6e9){return _0x48a436 instanceof _0x3ad6e9;}};try{return await apiRequest(_0x5af929(0x1fe)+_0x4563ff[_0x5af929(0x1c2)](encodeURIComponent,_0x5db542));}catch(_0x4d86b5){if(_0x4563ff['YufOU'](_0x4d86b5,ApiError)&&_0x4d86b5[_0x5af929(0x173)]===0x194)return null;throw _0x4d86b5;}}export async function listCloudProfiles(){const _0x26361d=_0x2f6d51,_0x2e03e6=await apiRequest(_0x26361d(0x1a6));return _0x2e03e6[_0x26361d(0x18f)];}export async function deleteCloudProfile(_0x21b875){const _0x390da0=_0x2f6d51,_0x1dec4d={'rlBlZ':function(_0x43dca8,_0x254ef7){return _0x43dca8(_0x254ef7);},'ryjaw':'DELETE','zmfJO':function(_0x4ce856,_0xdd81b5){return _0x4ce856 instanceof _0xdd81b5;},'YFGck':function(_0x7a299,_0x470775){return _0x7a299===_0x470775;}};try{await apiRequest('/api/v1/profiles/'+_0x1dec4d['rlBlZ'](encodeURIComponent,_0x21b875),{'method':_0x1dec4d['ryjaw']});}catch(_0x29a917){if(_0x1dec4d['zmfJO'](_0x29a917,ApiError)&&_0x1dec4d[_0x390da0(0x1cc)](_0x29a917[_0x390da0(0x173)],0x194))throw new Error('Cloud\x20profile\x20\x22'+_0x21b875+'\x22\x20not\x20found.');throw _0x29a917;}}export async function createCloudProfile(_0x4286da,_0x8006e0,_0x4feefb={}){const _0x2a77f7=_0x2f6d51,_0x25679b={'umwuQ':function(_0xc614a3,_0x1782d2){return _0xc614a3>_0x1782d2;},'OiLry':'/api/v1/profiles'},_0x462741={'name':_0x4286da};if(_0x8006e0)_0x462741[_0x2a77f7(0x1ce)]=_0x8006e0;_0x4feefb[_0x2a77f7(0x202)]&&_0x25679b['umwuQ'](Object['keys'](_0x4feefb[_0x2a77f7(0x202)])['length'],0x0)&&(_0x462741['settings']=_0x4feefb[_0x2a77f7(0x202)]);if(_0x4feefb[_0x2a77f7(0x20b)])_0x462741['username']=_0x4feefb['username'];if(_0x4feefb[_0x2a77f7(0x217)])_0x462741[_0x2a77f7(0x217)]=_0x4feefb['password'];return await apiRequest(_0x25679b[_0x2a77f7(0x1d9)],{'method':'POST','body':JSON['stringify'](_0x462741)});}export async function uploadCloudProfileSession(_0x1da42d,_0x3bb226){const _0x7a373b=_0x2f6d51;return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x1da42d)+_0x7a373b(0x1c3),{'method':_0x7a373b(0x1aa),'body':JSON['stringify']({'session_state':_0x3bb226})});}export async function saveCloudProfileCredentials(_0x3582aa,_0x54f491,_0x18784f){const _0x5aae4f=_0x2f6d51,_0x186c82={'ioTjV':function(_0x4743ad,_0x349a72,_0x184f64){return _0x4743ad(_0x349a72,_0x184f64);},'BhBDh':function(_0x3eecbf,_0x3edd07){return _0x3eecbf(_0x3edd07);}};await _0x186c82[_0x5aae4f(0x168)](apiRequest,'/api/v1/profiles/'+_0x186c82['BhBDh'](encodeURIComponent,_0x3582aa),{'method':_0x5aae4f(0x1d5),'body':JSON['stringify']({'username':_0x54f491,'password':_0x18784f})});}export async function fetchAuthConfig(){const _0x569fd9=_0x2f6d51,_0x1c36da={'Xdqad':function(_0x4d523e,_0x2b8c1c){return _0x4d523e instanceof _0x2b8c1c;}};try{const _0x3969c2=await apiRequest('/api/v1/profiles/auth-config');return _0x3969c2['auth_config'];}catch(_0x3995b5){return _0x1c36da['Xdqad'](_0x3995b5,ApiError)&&_0x3995b5[_0x569fd9(0x173)]!==0x194&&console['error'](_0x569fd9(0x177)+_0x3995b5['message']),null;}}async function createTunnelSession(_0x4f3a68){const _0x319482=_0x2f6d51,_0x48b3b3={'DNdvv':'/api/v1/tunnel/sessions','IakmE':_0x319482(0x1aa),'kThvw':_0x319482(0x181)};return await apiRequest(_0x48b3b3['DNdvv'],{'method':_0x48b3b3['IakmE'],'body':JSON['stringify']({'targetUrl':_0x4f3a68,'mode':_0x48b3b3['kThvw']})});}async function deleteTunnelSession(_0x3c086f){const _0x3877cc=_0x2f6d51,_0x5b7fed={'zDaGD':_0x3877cc(0x18d)};await apiRequest(_0x3877cc(0x1f8)+_0x3c086f,{'method':_0x5b7fed[_0x3877cc(0x18c)]});}export function pickAdHocEnvKey(_0x295175,_0x33df3d,_0x24404d){const _0x4c075a=_0x2f6d51,_0x53db0d={'qsWwn':function(_0x506743,_0x4c17bf){return _0x506743+_0x4c17bf;},'Hmwqf':function(_0x526933,_0x250397){return _0x526933 in _0x250397;},'heSux':function(_0xdb463e,_0x210220){return _0xdb463e in _0x210220;},'xKfGm':'ambiguous'};if(_0x24404d){if(!_0x295175?.['environments']?.[_0x24404d]){const _0x2315fc=Object[_0x4c075a(0x179)](_0x295175?.[_0x4c075a(0x1f7)]??{});throw new Error(_0x53db0d[_0x4c075a(0x1e9)]('Auth\x20environment\x20\x22'+_0x24404d+_0x4c075a(0x16c),_0x2315fc[_0x4c075a(0x1db)]?_0x4c075a(0x16d)+_0x2315fc[_0x4c075a(0x171)](',\x20')+'.':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.')+'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)');}return _0x24404d;}if(!_0x295175)return null;if(_0x33df3d){const _0x4e0458=matchAuthEnvironmentExact(_0x33df3d,_0x295175);if(_0x4e0458)return _0x4e0458;const _0xfe26ff=matchAuthEnvironmentByHost(_0x33df3d,_0x295175);if(_0xfe26ff&&_0x53db0d['Hmwqf']('key',_0xfe26ff))return console[_0x4c075a(0x1ad)](_0x4c075a(0x199)+_0xfe26ff['key']+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x33df3d+_0x4c075a(0x1f9)),_0xfe26ff['key'];if(_0xfe26ff&&_0x53db0d[_0x4c075a(0x200)](_0x53db0d[_0x4c075a(0x1f4)],_0xfe26ff))throw new Error(_0x4c075a(0x1b8)+_0xfe26ff[_0x4c075a(0x1d4)][_0x4c075a(0x171)](',\x20')+');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.');if(needsTunnel(_0x33df3d))throw new Error(_0x53db0d[_0x4c075a(0x1e9)](_0x53db0d['qsWwn'](_0x53db0d['qsWwn']('No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22'+_0x33df3d+_0x4c075a(0x1fa)+_0x4c075a(0x17a),'\x20\x20Options:\x0a')+'\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a','\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x33df3d['replace'](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),'\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20'+_0x33df3d+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x295175[_0x4c075a(0x19a)])return _0x295175['defaultEnvironmentKey'];const _0x9a14fa=Object['keys'](_0x295175[_0x4c075a(0x1f7)]??{});if(_0x9a14fa[_0x4c075a(0x1db)]===0x1)return _0x9a14fa[0x0];if(_0x9a14fa['length']===0x0)return null;throw new Error(_0x53db0d['qsWwn']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x9a14fa[_0x4c075a(0x171)](',\x20')+_0x4c075a(0x204),_0x4c075a(0x1d6)));}export function adHocProfileName(_0x178354,_0x143e93,_0x4282ee){if(!_0x143e93||_0x143e93===_0x4282ee)return _0x178354;return _0x178354+':'+_0x143e93;}export async function resolveAdHocProfile(_0x2416ad={},_0x4abe92=process['env']){const _0x1abfac=_0x2f6d51,_0x110d4e={'qxjty':function(_0x28dc17,_0x481f4a){return _0x28dc17&&_0x481f4a;},'yJZtU':function(_0x11e06f,_0x20e9ea){return _0x11e06f!==_0x20e9ea;},'RYyhc':_0x1abfac(0x1be),'YIDnD':function(_0x512977,_0x327ce3,_0x5a5445,_0x151d96){return _0x512977(_0x327ce3,_0x5a5445,_0x151d96);}},_0x2e7afc=_0x4abe92['RANGER_TEST_USERNAME'];if(!_0x2e7afc)return null;const _0x4ea078=await fetchAuthConfig(),_0x4005ed=pickAdHocEnvKey(_0x4ea078,_0x2416ad['targetUrl'],_0x2416ad[_0x1abfac(0x20d)]);let _0x3ecd4a=adHocProfileName(_0x2e7afc,_0x4005ed,_0x4ea078?.[_0x1abfac(0x19a)]),_0x1db1b0=await fetchCloudProfile(_0x3ecd4a);_0x110d4e[_0x1abfac(0x185)](_0x1db1b0,_0x4005ed)&&_0x110d4e[_0x1abfac(0x192)](_0x1db1b0[_0x1abfac(0x17d)],_0x4005ed)&&(console[_0x1abfac(0x1ad)]('\x20\x20Cloud\x20profile\x20\x22'+_0x3ecd4a+_0x1abfac(0x1a7)+(_0x1db1b0['environmentKey']??_0x110d4e['RYyhc'])+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x4005ed+_0x1abfac(0x1fc)+_0x2e7afc+':'+_0x4005ed+'\x22\x20instead.'),_0x3ecd4a=_0x2e7afc+':'+_0x4005ed,_0x1db1b0=await fetchCloudProfile(_0x3ecd4a));if(_0x1db1b0)return{'name':_0x1db1b0[_0x1abfac(0x219)],'profile':_0x1db1b0};const _0x543340=_0x4abe92['RANGER_TEST_PASSWORD'],_0x1a8959=await _0x110d4e['YIDnD'](createCloudProfile,_0x3ecd4a,_0x4005ed??undefined,{'username':_0x2e7afc,'password':_0x543340});return console[_0x1abfac(0x1ad)](_0x1abfac(0x1e1)+_0x1a8959[_0x1abfac(0x219)]+'\x22\x20for\x20'+_0x2e7afc+(_0x4005ed?'\x20(auth\x20env:\x20'+_0x4005ed+')':'')),{'name':_0x1a8959['name'],'profile':_0x1a8959};}function _0x29b1(_0x4815a2,_0x5013e9){_0x4815a2=_0x4815a2-0x166;const _0x268b3f=_0x268b();let _0x29b1f2=_0x268b3f[_0x4815a2];return _0x29b1f2;}export async function writeSessionToLocalCache(_0xd7f48f,_0x10427f,_0x5eb489,_0x3c402d,_0x38ed2e,_0x1c1233,_0x461e13){const _0x551707=_0x2f6d51,_0x289a2c={'muayp':function(_0x1b3cd8,_0x5928e4){return _0x1b3cd8(_0x5928e4);},'VqBkh':function(_0x7c2e71,_0x4be7fb,_0x14f6e5){return _0x7c2e71(_0x4be7fb,_0x14f6e5);},'rTyuc':function(_0x5b61ab){return _0x5b61ab();},'GfXZq':_0x551707(0x1fb),'pyXhA':function(_0x40b933,_0x1bb452){return _0x40b933>_0x1bb452;},'VYlmN':function(_0x378510,_0x39ebf3,_0x3e41e7){return _0x378510(_0x39ebf3,_0x3e41e7);}},_0x234c7e=_0x289a2c['muayp'](sessionCacheHash,{'orgId':_0x10427f,'profileName':_0xd7f48f,'effectiveBaseUrl':_0x5eb489,'setupHeaders':_0x3c402d,'invalidateOn':_0x461e13?.[_0x551707(0x1c5)],'userAgent':_0x461e13?.['userAgent'],'clientIp':_0x461e13?.['clientIp']}),_0x27c66a=_0x289a2c[_0x551707(0x17b)](getSessionCachePath,_0x234c7e,_0xd7f48f),_0x50b65e=join(_0x289a2c[_0x551707(0x16b)](getRangerHomeDir),_0x289a2c[_0x551707(0x1ca)]);!existsSync(_0x50b65e)&&await mkdir(_0x50b65e,{'recursive':!![]});const _0xa57f14={..._0x38ed2e};_0x1c1233&&_0x289a2c['pyXhA'](_0x1c1233['length'],0x0)&&Array['isArray'](_0xa57f14[_0x551707(0x1a2)])&&(_0xa57f14['cookies']=duplicateCookiesForDomains(_0xa57f14[_0x551707(0x1a2)],_0x1c1233));const _0x2da243={'cached_at':new Date()[_0x551707(0x1b4)](),'session_state':_0xa57f14};await _0x289a2c['VqBkh'](writeFile,_0x27c66a,JSON['stringify'](_0x2da243,null,0x2));const _0x11f035=getStorageStatePath(_0x27c66a);return await _0x289a2c[_0x551707(0x191)](writeFile,_0x11f035,JSON['stringify'](_0xa57f14,null,0x2)),_0x11f035;}export async function checkLocalCache(_0x57bc85,_0x4b8279,_0x244fb4,_0x1f3f32,_0x516de6){const _0x4d4352=_0x2f6d51,_0x5588a9={'eWxKT':function(_0x299c22,_0x11f695,_0x565deb){return _0x299c22(_0x11f695,_0x565deb);},'KNdjg':function(_0x4441d3,_0x2d06d2){return _0x4441d3(_0x2d06d2);}},_0x3f09fb=sessionCacheHash({'orgId':_0x4b8279,'profileName':_0x57bc85,'effectiveBaseUrl':_0x244fb4,'setupHeaders':_0x1f3f32,'invalidateOn':_0x516de6?.['invalidateOn'],'userAgent':_0x516de6?.['userAgent'],'clientIp':_0x516de6?.['clientIp']}),_0x566ba0=_0x5588a9['eWxKT'](getSessionCachePath,_0x3f09fb,_0x57bc85),_0x34fb31=_0x5588a9[_0x4d4352(0x211)](getStorageStatePath,_0x566ba0);if(!existsSync(_0x566ba0)||!existsSync(_0x34fb31))return null;try{const _0x459371=await _0x5588a9['eWxKT'](readFile,_0x566ba0,_0x4d4352(0x21f));return JSON['parse'](_0x459371),{'storageStatePath':_0x34fb31};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x44a100,_0x165476){const _0x3e1faa=_0x2f6d51,_0x20bb21={'yMKeB':function(_0x1b5cb0,_0x188f14){return _0x1b5cb0+_0x188f14;}};if(!_0x165476||!_0x165476['domains']?.[_0x3e1faa(0x1db)])return;let _0x591372;try{_0x591372=new URL(_0x44a100);}catch{return;}const _0x2c496b=[];for(const _0x4b5282 of _0x165476[_0x3e1faa(0x20e)]){try{_0x2c496b[_0x3e1faa(0x1a0)]({'raw':_0x4b5282,'url':new URL(_0x4b5282)});}catch{}}if(_0x2c496b[_0x3e1faa(0x1db)]===0x0)return;if(_0x2c496b['some'](_0x5c810c=>_0x5c810c['url']['origin']===_0x591372['origin']))return;const _0x506fa8=_0x2c496b[_0x3e1faa(0x19b)](_0xbfcc81=>'\x22'+_0xbfcc81[_0x3e1faa(0x21e)]+'\x22')['join'](',\x20');console['log'](_0x20bb21['yMKeB']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x506fa8+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x44a100+_0x3e1faa(0x1bd))+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x46aa21,_0x3143af){const _0x38fe02=_0x2f6d51,_0x12fb9e={'exUEi':function(_0x90105a,_0x1b0e4a,_0x3faa97){return _0x90105a(_0x1b0e4a,_0x3faa97);},'XgTvz':function(_0x45a195,_0x5991e1){return _0x45a195 instanceof _0x5991e1;},'pZQNK':function(_0xb69f4a,_0x2a7e1c){return _0xb69f4a===_0x2a7e1c;},'QXmRP':'not_configured'},_0x3d732d=process[_0x38fe02(0x1de)]['RANGER_TEST_USERNAME'],_0x2b2a2d=process[_0x38fe02(0x1de)]['RANGER_TEST_PASSWORD'],_0x3d1e9a={};if(_0x3d732d)_0x3d1e9a['username']=_0x3d732d;if(_0x2b2a2d)_0x3d1e9a[_0x38fe02(0x217)]=_0x2b2a2d;if(_0x3143af?.['force'])_0x3d1e9a[_0x38fe02(0x20f)]=!![];if(_0x3143af?.['targetUrl'])_0x3d1e9a[_0x38fe02(0x186)]=_0x3143af[_0x38fe02(0x1a3)];_0x3143af?.[_0x38fe02(0x1e5)]&&(_0x3d1e9a[_0x38fe02(0x1b0)]=_0x3143af[_0x38fe02(0x1e5)]['sessionId'],_0x3d1e9a[_0x38fe02(0x176)]=_0x3143af[_0x38fe02(0x1e5)][_0x38fe02(0x1bf)]);try{return await _0x12fb9e['exUEi'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x46aa21)+'/login',{'method':_0x38fe02(0x1aa),'body':JSON['stringify'](_0x3d1e9a)});}catch(_0x16f248){if(_0x12fb9e['XgTvz'](_0x16f248,ApiError)&&_0x16f248['status']===0x190&&_0x12fb9e['pZQNK'](_0x16f248['code'],_0x12fb9e[_0x38fe02(0x17e)]))return{'status':'not_configured','error':_0x16f248['detail']};throw _0x16f248;}}async function serverSideLoginWithOptionalTunnel(_0x5a76d0,_0x886145,_0x5025ad={}){const _0xf62f00=_0x2f6d51,_0x274b41={'Ghznx':function(_0x14b878,_0x4d3232){return _0x14b878(_0x4d3232);},'tEWNL':function(_0x474ca1,_0x39eec9,_0x4326d5){return _0x474ca1(_0x39eec9,_0x4326d5);},'oJvlO':'true','CBZMl':function(_0x2baff1,_0x1e5d6b){return _0x2baff1(_0x1e5d6b);},'AYZfB':_0xf62f00(0x1d8),'xXXqu':_0xf62f00(0x1cf),'zQUsW':function(_0x2fe6c3,_0x1ff830){return _0x2fe6c3??_0x1ff830;},'GIYvM':function(_0x15a0bd,_0x73f40){return _0x15a0bd(_0x73f40);},'dKLAq':function(_0x49687d,_0x2068f2){return _0x49687d??_0x2068f2;},'xpNMv':function(_0x36b4a1,_0xae96b2){return _0x36b4a1||_0xae96b2;},'goGPL':_0xf62f00(0x215),'FPIex':'tunnel_login_cleanup'};if(!needsTunnel(_0x886145))return await _0x274b41[_0xf62f00(0x210)](serverSideLogin,_0x5a76d0,{'force':_0x5025ad['force']});let _0x2fa03c=null,_0x555afe=null,_0x43eb59=null,_0x13711f=null,_0x3aa9e2=![];const _0x2d38ce=process[_0xf62f00(0x1de)]['RANGER_TUNNEL_LOGIN_HEADED']?.['toLowerCase'](),_0x292a89=_0x2d38ce==='1'||_0x2d38ce===_0x274b41['oJvlO'],_0x14a000={'profileName':_0x5a76d0,'targetUrlHost':_0x274b41['CBZMl'](targetHostForTelemetry,_0x886145),'tunnelRequired':!![],'forceLogin':_0x274b41[_0xf62f00(0x1d2)](Boolean,_0x5025ad['force']),'localBrowserServerHeaded':_0x292a89};try{_0x5025ad['telemetry']?.['trackPhaseStart'](_0x274b41[_0xf62f00(0x16f)],_0x14a000);_0x292a89&&console['log'](_0x274b41[_0xf62f00(0x1f3)]);_0x2fa03c=await _0x274b41['Ghznx'](launchBrowserServer,{'headless':!_0x292a89}),_0x555afe=await _0x274b41['Ghznx'](createTunnelSession,_0x886145);const _0x2674fb=await requireToken();_0x43eb59=await createTunnelBridge({'localWsUrl':_0x2fa03c[_0xf62f00(0x166)],'tunnelServerUrl':_0x555afe[_0xf62f00(0x19d)],'sessionId':_0x555afe['sessionId'],'apiKey':_0x2674fb,'onError':_0x44465e=>{_0x13711f=_0x44465e;},'onClose':()=>{_0x13711f??=new Error('Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20'+_0x5a76d0);},'onEvent':_0x2c454c=>trackBridgeEvent(_0x5025ad[_0xf62f00(0x1cb)],_0x2c454c)}),_0x5025ad['telemetry']?.['trackPhaseEnd'](_0xf62f00(0x1d8),{..._0x14a000,'tunnelSessionId':_0x555afe['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x292a89}),_0x3aa9e2=!![];try{return _0x5025ad['telemetry']?.[_0xf62f00(0x1fd)]('tunnel_login_request',{..._0x14a000,'tunnelSessionId':_0x555afe[_0xf62f00(0x1a1)]}),await _0x274b41[_0xf62f00(0x210)](serverSideLogin,_0x5a76d0,{'force':_0x5025ad['force'],'targetUrl':_0x886145,'tunnel':{'sessionId':_0x555afe[_0xf62f00(0x1a1)],'pwEndpoint':_0x555afe[_0xf62f00(0x1bf)]}})['then'](_0x31b32b=>{const _0x47df4a=_0xf62f00;return _0x5025ad['telemetry']?.[_0x47df4a(0x1a5)]('tunnel_login_request',{..._0x14a000,'tunnelSessionId':_0x555afe?.[_0x47df4a(0x1a1)],'loginStatus':_0x31b32b[_0x47df4a(0x173)],'hasSessionState':Boolean(_0x31b32b[_0x47df4a(0x1d3)]),'hasTestOutput':_0x274b41['Ghznx'](Boolean,_0x31b32b['test_output']),'bridgeError':errorMessageForTelemetry(_0x13711f)}),_0x31b32b;});}catch(_0x5a9a68){await _0x5025ad['telemetry']?.['trackPhaseError'](_0xf62f00(0x206),_0x274b41['zQUsW'](_0x13711f,_0x5a9a68),{..._0x14a000,'tunnelSessionId':_0x555afe[_0xf62f00(0x1a1)],'bridgeError':_0x274b41[_0xf62f00(0x1dd)](errorMessageForTelemetry,_0x13711f)});throw _0x274b41['dKLAq'](_0x13711f,_0x5a9a68);}}catch(_0x5d4a39){!_0x3aa9e2&&await _0x5025ad['telemetry']?.[_0xf62f00(0x214)](_0xf62f00(0x1d8),_0x5d4a39,{..._0x14a000,'tunnelSessionId':_0x555afe?.['sessionId']});throw _0x5d4a39;}finally{if(_0x274b41['xpNMv'](_0x555afe,_0x2fa03c)||_0x43eb59){const _0x553bf3=_0x274b41[_0xf62f00(0x1bb)]['split']('|');let _0x34c796=0x0;while(!![]){switch(_0x553bf3[_0x34c796++]){case'0':_0x43eb59?.['close']();continue;case'1':_0x2fa03c&&await _0x2fa03c[_0xf62f00(0x1c0)]()['catch'](()=>{});continue;case'2':_0x5025ad[_0xf62f00(0x1cb)]?.['trackPhaseStart'](_0x274b41['FPIex'],{..._0x14a000,'tunnelSessionId':_0x555afe?.[_0xf62f00(0x1a1)]});continue;case'3':_0x5025ad[_0xf62f00(0x1cb)]?.[_0xf62f00(0x1a5)](_0x274b41[_0xf62f00(0x174)],{..._0x14a000,'tunnelSessionId':_0x555afe?.['sessionId']});continue;case'4':_0x555afe&&await deleteTunnelSession(_0x555afe[_0xf62f00(0x1a1)])['catch'](()=>{});continue;}break;}}}}export async function manualBrowserLogin(_0x52b62a,_0x58ff67,_0x482fe9={}){const _0x437c2c=_0x2f6d51,_0xd0e57e={'smUqa':function(_0x53b463,_0x451942){return _0x53b463/_0x451942;},'XgSPn':function(_0x56d14b){return _0x56d14b();},'hpuFj':function(_0x2caea0){return _0x2caea0();},'IFQaf':function(_0x54b238,_0x4b335b,_0x288b1a){return _0x54b238(_0x4b335b,_0x288b1a);},'JsSlT':'close','KaAWL':function(_0x1222ae){return _0x1222ae();},'vAguO':function(_0x3d6663,_0x25d240){return _0x3d6663+_0x25d240;},'hSKPn':_0x437c2c(0x205),'owHxG':function(_0xdf2ee2,_0x23342a){return _0xdf2ee2>_0x23342a;},'sGQyD':_0x437c2c(0x170),'rwJZf':function(_0x3f6b5d,_0x1d8282){return _0x3f6b5d&&_0x1d8282;},'JWjmh':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','tfDHs':function(_0x568c7c,_0x4c42d5){return _0x568c7c!==_0x4c42d5;},'MMlZn':function(_0x42bc90,_0x5ab75c){return _0x42bc90(_0x5ab75c);},'AdyTS':_0x437c2c(0x1aa)};if(!_0xd0e57e[_0x437c2c(0x20a)](isInteractive))throw new Error(_0xd0e57e['vAguO'](_0x437c2c(0x1d7)+_0x52b62a['name']+'\x22.\x0a',_0xd0e57e['hSKPn'])+_0x437c2c(0x1e4));const _0x334e2a=_0x58ff67&&_0xd0e57e['owHxG'](_0x58ff67['domains']['length'],0x0)?_0x58ff67['domains'][0x0]:'about:blank';console[_0x437c2c(0x1ad)](_0xd0e57e['sGQyD']),console['log']('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x4af9af=>setTimeout(_0x4af9af,0x7d0));const _0x36a910=await chromium[_0x437c2c(0x21c)]({'headless':![]});let _0x5664=null;try{const _0x9ea69a={'ignoreHTTPSErrors':!![]};_0x58ff67?.['setupHeaders']&&(_0x9ea69a['extraHTTPHeaders']=_0x58ff67[_0x437c2c(0x175)]);const _0x55a6e8=await _0x36a910[_0x437c2c(0x16e)](_0x9ea69a);await addProfileSetupBanner(_0x55a6e8);const _0x2a942a=await _0x55a6e8[_0x437c2c(0x1e0)]();await _0x2a942a[_0x437c2c(0x1ec)](_0x334e2a);let _0x8cee65=![];await new Promise(_0x31969d=>{const _0x291d24=_0x437c2c,_0x54700d={'xkHUt':function(_0x26725c){const _0x2bd007=_0x29b1;return _0xd0e57e[_0x2bd007(0x1c4)](_0x26725c);}},_0x118cfe=_0xd0e57e['IFQaf'](setTimeout,()=>{const _0x222bcd=_0x29b1;_0x8cee65=!![],console['error']('Browser\x20login\x20timed\x20out\x20after\x20'+_0xd0e57e['smUqa'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x222bcd(0x1f6)),_0xd0e57e['XgSPn'](_0x31969d);},MANUAL_LOGIN_TIMEOUT_MS);_0x2a942a['on'](_0xd0e57e[_0x291d24(0x193)],async()=>{const _0x2aa800=_0x291d24;clearTimeout(_0x118cfe);try{const _0x26932c=await _0x55a6e8[_0x2aa800(0x1ee)]();_0x5664=_0x26932c;}catch{}_0x54700d[_0x2aa800(0x1dc)](_0x31969d);});});if(_0xd0e57e['rwJZf'](_0x8cee65,!_0x5664))throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x36a910['close']()[_0x437c2c(0x218)](()=>{});}if(!_0x5664)throw new Error(_0xd0e57e['JWjmh']);return _0xd0e57e[_0x437c2c(0x1eb)](_0x482fe9['persistSessionState'],![])&&await apiRequest('/api/v1/profiles/'+_0xd0e57e['MMlZn'](encodeURIComponent,_0x52b62a[_0x437c2c(0x219)])+_0x437c2c(0x1c3),{'method':_0xd0e57e['AdyTS'],'body':JSON[_0x437c2c(0x18e)]({'session_state':_0x5664,'updated_by':_0x437c2c(0x16a)})}),{'sessionState':_0x5664};}export async function promptSaveCredentials(_0x4f3f94){const _0x2dccef=_0x2f6d51,_0x1f723c={'ytgWZ':function(_0x2b814b,_0x346959){return _0x2b814b||_0x346959;}},_0xaba71f=process[_0x2dccef(0x1de)]['RANGER_TEST_USERNAME'],_0x388b2e=process['env']['RANGER_TEST_PASSWORD'];if(_0x1f723c['ytgWZ'](!_0xaba71f,!_0x388b2e))return;if(!isInteractive())return;const {save:_0x408f1f}=await _0x284cac[_0x2dccef(0x184)]([{'type':'confirm','name':_0x2dccef(0x19f),'message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0x408f1f)return;await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x4f3f94),{'method':'PUT','body':JSON[_0x2dccef(0x18e)]({'username':_0xaba71f,'password':_0x388b2e})}),console[_0x2dccef(0x1ad)](_0x2dccef(0x1b7));}export async function resolveCloudProfileSession(_0x4038c1,_0x13fba2={}){const _0x46a2eb=_0x2f6d51,_0x42abd7={'KduDO':function(_0x1c7e37){return _0x1c7e37();},'ttbhU':function(_0x21727a,_0x5d3789){return _0x21727a===_0x5d3789;},'GHAuo':function(_0x196b9b,_0x306b8e){return _0x196b9b===_0x306b8e;},'dUyrw':'string','XxDIL':function(_0x1e7979,_0x25648a){return _0x1e7979||_0x25648a;},'CvNvL':function(_0x5f5610,_0x92ca0b){return _0x5f5610(_0x92ca0b);},'XAKEy':function(_0x5ee54f,_0x25323e){return _0x5ee54f>_0x25323e;},'aMAez':function(_0x3f9aa6,_0x53fdfe){return _0x3f9aa6(_0x53fdfe);},'baRfR':function(_0x189c6b,_0x11207a,_0x2c8633,_0x1be328,_0x474c48){return _0x189c6b(_0x11207a,_0x2c8633,_0x1be328,_0x474c48);},'iKwFC':function(_0x119e57,_0x3e0185,_0x156b88,_0x1139a5,_0x4d32fd,_0x58680f,_0x1eb06d,_0x4726c2){return _0x119e57(_0x3e0185,_0x156b88,_0x1139a5,_0x4d32fd,_0x58680f,_0x1eb06d,_0x4726c2);},'ekezx':function(_0x3f5350,_0xcf3ac4,_0x381c95,_0x48b43d,_0x13007f){return _0x3f5350(_0xcf3ac4,_0x381c95,_0x48b43d,_0x13007f);},'GEdhr':function(_0x374c24,_0x5b5627){return _0x374c24(_0x5b5627);},'tYrhp':_0x46a2eb(0x194),'VPcjx':_0x46a2eb(0x196),'UtwVv':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','ZJaBh':_0x46a2eb(0x172)},_0x563efa=_0x4038c1[_0x46a2eb(0x202)]??{},_0x103028=await _0x42abd7['KduDO'](fetchAuthConfig),_0x17b0fc=_0x103028?resolveAuthEnvironmentLocally(_0x103028,_0x4038c1[_0x46a2eb(0x17d)]):null,_0x15daea=_0x42abd7[_0x46a2eb(0x201)](typeof _0x17b0fc?.['loginInstructions'],'string')&&_0x17b0fc['loginInstructions']['trim']()?_0x17b0fc['loginInstructions']:undefined,_0x3996a1=_0x42abd7['GHAuo'](typeof _0x563efa['loginInstructions'],_0x42abd7[_0x46a2eb(0x1a8)])&&_0x563efa['loginInstructions']['trim']()?_0x563efa['loginInstructions']:undefined,_0x306ea0=_0x42abd7[_0x46a2eb(0x209)](_0x3996a1,!_0x15daea)?_0x563efa:{..._0x563efa,'loginInstructions':_0x15daea},_0x39e61b=_0x42abd7[_0x46a2eb(0x1b9)](Boolean,_0x306ea0[_0x46a2eb(0x1c7)]?.['trim']()),_0xecc1dc=Boolean(_0x563efa[_0x46a2eb(0x1c1)]||_0x17b0fc?.[_0x46a2eb(0x1c1)]),_0x31a769=_0x17b0fc?.['domains'],_0x2ee94f=_0x563efa['setupHeaders'],_0x31797b=_0x2ee94f??_0x17b0fc?.[_0x46a2eb(0x175)],_0x206c17=_0x13fba2['effectiveBaseUrl']??_0x563efa[_0x46a2eb(0x1b1)]??(_0x31a769&&_0x42abd7[_0x46a2eb(0x1c8)](_0x31a769[_0x46a2eb(0x1db)],0x0)?_0x31a769[0x0]:''),_0x5c9752=_0x206c17?_0x42abd7['aMAez'](needsTunnel,_0x206c17):![],_0xcc59eb={'invalidateOn':_0x17b0fc?.['invalidateOn'],'userAgent':_0x17b0fc?.[_0x46a2eb(0x190)]?.[_0x46a2eb(0x18b)]??_0x563efa['userAgent']};_0xecc1dc&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x4038c1[_0x46a2eb(0x219)]+_0x46a2eb(0x17c));if(!_0xecc1dc){const _0x43ee2b=await checkLocalCache(_0x4038c1['name'],_0x4038c1[_0x46a2eb(0x1ed)],_0x206c17,_0x31797b,_0xcc59eb);if(_0x43ee2b){if(_0x206c17&&!_0x5c9752){const _0xe5910e=await _0x42abd7['baRfR'](isCachedSessionLive,_0x43ee2b['storageStatePath'],_0x206c17,{'sessionCheckPath':_0x17b0fc?.[_0x46a2eb(0x1c9)],'setupHeaders':_0x31797b},{'launchBrowser':launchRealBrowser});if(_0xe5910e)return console['log'](_0x46a2eb(0x1ab)+_0x4038c1['name']+'\x22'),{'authPath':_0x43ee2b['storageStatePath'],'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};console['log'](_0x46a2eb(0x21d)+_0x4038c1[_0x46a2eb(0x219)]+_0x46a2eb(0x1ae)),emitSessionValidationHint(_0x206c17,_0x17b0fc);}else return _0x5c9752&&console[_0x46a2eb(0x1ad)]('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x4038c1[_0x46a2eb(0x219)]+'\x22'),{'authPath':_0x43ee2b['storageStatePath'],'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};}}if(!_0xecc1dc&&_0x4038c1['sessionState']){if(_0x5c9752)console[_0x46a2eb(0x1ad)](_0x46a2eb(0x208)+_0x206c17+_0x46a2eb(0x1b5)+_0x4038c1['name']+'\x22');else{const _0x55d32e=await _0x42abd7[_0x46a2eb(0x203)](writeSessionToLocalCache,_0x4038c1['name'],_0x4038c1[_0x46a2eb(0x1ed)],_0x206c17,_0x31797b,_0x4038c1['sessionState'],_0x31a769,_0xcc59eb);if(_0x206c17){const _0x188ecf=await _0x42abd7[_0x46a2eb(0x1b6)](isCachedSessionLive,_0x55d32e,_0x206c17,{'sessionCheckPath':_0x17b0fc?.[_0x46a2eb(0x1c9)],'setupHeaders':_0x31797b},{'launchBrowser':launchRealBrowser});if(_0x188ecf)return console[_0x46a2eb(0x1ad)](_0x46a2eb(0x213)+_0x4038c1[_0x46a2eb(0x219)]+'\x22,\x20cached\x20locally'),{'authPath':_0x55d32e,'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};console[_0x46a2eb(0x1ad)](_0x46a2eb(0x1df)+_0x4038c1['name']+_0x46a2eb(0x178)),emitSessionValidationHint(_0x206c17,_0x17b0fc);}else return{'authPath':_0x55d32e,'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};}}if(_0x39e61b)return console['log'](_0x46a2eb(0x1b2)+_0x4038c1[_0x46a2eb(0x219)]+_0x46a2eb(0x1f1)),{'authPath':undefined,'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};console[_0x46a2eb(0x1ad)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x4038c1[_0x46a2eb(0x219)]+_0x46a2eb(0x19e));const _0x5382f4=_0x42abd7[_0x46a2eb(0x1e8)](Boolean,process[_0x46a2eb(0x1de)][_0x46a2eb(0x18a)])&&_0x42abd7[_0x46a2eb(0x1b9)](Boolean,process[_0x46a2eb(0x1de)][_0x46a2eb(0x1f2)]),_0x4be202=_0x42abd7['GEdhr'](Boolean,_0x4038c1[_0x46a2eb(0x20b)]);if(_0x42abd7['XxDIL'](_0x5382f4,_0x4be202))try{const _0x2030ee=_0x206c17?await serverSideLoginWithOptionalTunnel(_0x4038c1[_0x46a2eb(0x219)],_0x206c17,{'force':_0xecc1dc,'telemetry':_0x13fba2[_0x46a2eb(0x1cb)]}):await serverSideLogin(_0x4038c1[_0x46a2eb(0x219)],{'force':_0xecc1dc});if(_0x2030ee['status']===_0x42abd7[_0x46a2eb(0x1da)])console['log']('\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...');else{if(_0x42abd7['GHAuo'](_0x2030ee['status'],_0x42abd7[_0x46a2eb(0x216)])&&_0x2030ee[_0x46a2eb(0x1d3)]){console['log'](_0x46a2eb(0x195));const _0x46bdc4=await _0x42abd7[_0x46a2eb(0x203)](writeSessionToLocalCache,_0x4038c1[_0x46a2eb(0x219)],_0x4038c1[_0x46a2eb(0x1ed)],_0x206c17,_0x31797b,_0x2030ee['session_state'],_0x31a769,_0xcc59eb);return _0x5382f4&&!_0x4be202&&await promptSaveCredentials(_0x4038c1['name']),{'authPath':_0x46bdc4,'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};}else _0x2030ee[_0x46a2eb(0x197)]&&(console[_0x46a2eb(0x1ad)](_0x42abd7[_0x46a2eb(0x1e7)]),console['log'](_0x2030ee['test_output'])),console[_0x46a2eb(0x1ad)](_0x42abd7[_0x46a2eb(0x212)]);}}catch(_0x37ee4f){console[_0x46a2eb(0x1ad)](_0x46a2eb(0x189)+(_0x37ee4f instanceof Error?_0x37ee4f['message']:String(_0x37ee4f))),console[_0x46a2eb(0x1ad)](_0x46a2eb(0x172));}const _0x542b75=_0x17b0fc?{..._0x17b0fc,'setupHeaders':_0x31797b}:_0x206c17?{'key':_0x4038c1['environmentKey']??'','domains':[_0x206c17],'setupHeaders':_0x31797b}:null,{sessionState:_0x612dd6}=await manualBrowserLogin(_0x4038c1,_0x542b75,{'persistSessionState':!_0x5c9752}),_0x1e48b1=await _0x42abd7[_0x46a2eb(0x203)](writeSessionToLocalCache,_0x4038c1[_0x46a2eb(0x219)],_0x4038c1['organizationId'],_0x206c17,_0x31797b,_0x612dd6,_0x31a769,_0xcc59eb);return{'authPath':_0x1e48b1,'settings':_0x306ea0,'resolvedEnv':_0x17b0fc};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x352e7d=_0x5794;(function(_0x37bf09,_0xe0353c){const _0x5eb491=_0x5794,_0x41262f=_0x37bf09();while(!![]){try{const _0x45e633=-parseInt(_0x5eb491(0xba))/0x1+-parseInt(_0x5eb491(0xa9))/0x2*(parseInt(_0x5eb491(0xc8))/0x3)+-parseInt(_0x5eb491(0xc3))/0x4*(parseInt(_0x5eb491(0xaf))/0x5)+-parseInt(_0x5eb491(0xb8))/0x6*(parseInt(_0x5eb491(0xbf))/0x7)+-parseInt(_0x5eb491(0xc7))/0x8+parseInt(_0x5eb491(0xb5))/0x9*(-parseInt(_0x5eb491(0x95))/0xa)+parseInt(_0x5eb491(0xc1))/0xb*(parseInt(_0x5eb491(0x9f))/0xc);if(_0x45e633===_0xe0353c)break;else _0x41262f['push'](_0x41262f['shift']());}catch(_0xd2490c){_0x41262f['push'](_0x41262f['shift']());}}}(_0x1946,0xe1376));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x14e2ad=process['env'],_0x1b883a={'stdin':process[_0x352e7d(0xb4)],'stdout':process[_0x352e7d(0xc6)]}){const _0x254558=_0x352e7d;if(_0x14e2ad['CI'])return![];return Boolean(_0x1b883a[_0x254558(0xb4)][_0x254558(0xa0)])&&Boolean(_0x1b883a['stdout']['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x501bad){const _0x2ca751=_0x352e7d,_0x3739f7={'twlLB':function(_0x5ef7f3,_0x1fc7fd){return _0x5ef7f3(_0x1fc7fd);},'kZNxz':_0x2ca751(0xb7),'TznTs':_0x2ca751(0xb6),'LbkNJ':'port','TgCIt':function(_0x44b066,_0x539993){return _0x44b066!==_0x539993;},'itiiP':'clientIp','FMQSw':'sha256'},_0x550cf1=new Set(_0x501bad['invalidateOn']??DEFAULT_INVALIDATE_ON);_0x501bad['effectiveBaseUrl']&&_0x3739f7['twlLB'](needsTunnel,_0x501bad[_0x2ca751(0xa1)])&&_0x550cf1[_0x2ca751(0xa2)](_0x3739f7['kZNxz']);const _0x29d4dc={'orgId':_0x501bad[_0x2ca751(0x9c)],'profileName':_0x501bad[_0x2ca751(0xa7)]};return _0x550cf1['has'](_0x3739f7[_0x2ca751(0xb9)])&&(_0x29d4dc[_0x2ca751(0xa1)]=_0x501bad[_0x2ca751(0xa1)]),_0x550cf1[_0x2ca751(0xa3)](_0x3739f7['TznTs'])&&(_0x29d4dc[_0x2ca751(0xb6)]=_0x501bad['setupHeaders']?sortObjectKeys(_0x501bad['setupHeaders']):_0x501bad['setupHeaders']),_0x550cf1[_0x2ca751(0xa3)](_0x3739f7['LbkNJ'])&&(_0x29d4dc[_0x2ca751(0xb2)]=extractPort(_0x501bad[_0x2ca751(0xa1)])),_0x550cf1['has']('userAgent')&&_0x3739f7[_0x2ca751(0xa5)](_0x501bad['userAgent'],undefined)&&(_0x29d4dc[_0x2ca751(0xa8)]=_0x501bad[_0x2ca751(0xa8)]),_0x550cf1['has'](_0x3739f7['itiiP'])&&_0x501bad[_0x2ca751(0xc5)]!==undefined&&(_0x29d4dc[_0x2ca751(0xc5)]=_0x501bad[_0x2ca751(0xc5)]),createHash(_0x3739f7['FMQSw'])['update'](JSON['stringify'](_0x29d4dc))['digest'](_0x2ca751(0xac))[_0x2ca751(0xab)](0x0,0xc);}function extractPort(_0x357941){try{return new URL(_0x357941)['port'];}catch{return'';}}function sortObjectKeys(_0x29e034){const _0x9731ab=_0x352e7d,_0x58bdd7={};for(const _0x22d60e of Object['keys'](_0x29e034)[_0x9731ab(0xc2)]()){_0x58bdd7[_0x22d60e]=_0x29e034[_0x22d60e];}return _0x58bdd7;}function _0x1946(){const _0x49f174=['launchBrowser','.localhost','sdJxJ','localhost.','test','orgId','KCHmi','environments','4779240XytAeM','isTTY','effectiveBaseUrl','add','has','sessionCheckPath','TgCIt','defaultEnvironmentKey','profileName','userAgent','16urtwVw','startsWith','slice','hex','endsWith','.storageState.json','6903115Xxplqo','.json','url','port','wjTrJ','stdin','9738FRzfig','setupHeaders','baseUrl','5963124fjVDqO','kZNxz','74841lqeWFZ','XxkXK','includes','hostname','map','7KsOtqg','length','187GjsiCI','sort','4TQdsRI','localhost','clientIp','stdout','7205344RIYlDB','333444srfuli','14870nCUVqC','pathname'];_0x1946=function(){return _0x49f174;};return _0x1946();}export function getSessionCachePath(_0x45c731,_0x1081c0){const _0x5e1dde=_0x352e7d;return join(getRangerHomeDir(),'auth',_0x45c731+'-'+_0x1081c0+_0x5e1dde(0xb0));}export function getStorageStatePath(_0x17c27f){const _0x369f52=_0x352e7d,_0x511777={'jzAXT':_0x369f52(0xae)};return _0x17c27f['replace'](/\.json$/,_0x511777['jzAXT']);}export function needsTunnel(_0x48b23f){const _0x531b26=_0x352e7d,_0x5e3d88={'wjTrJ':_0x531b26(0xc4),'KCHmi':function(_0x1652ad,_0x1aad38){return _0x1652ad===_0x1aad38;},'HzthN':_0x531b26(0x98)};let _0x443411;try{_0x443411=new URL(_0x48b23f)[_0x531b26(0xbd)];}catch{return![];}if(_0x443411===_0x5e3d88[_0x531b26(0xb3)]||_0x5e3d88[_0x531b26(0x9d)](_0x443411,'127.0.0.1'))return!![];if(_0x443411[_0x531b26(0xad)](_0x5e3d88['HzthN']))return!![];if(_0x443411[_0x531b26(0xbc)](_0x531b26(0x9a)))return!![];return![];}function _0x5794(_0x2af878,_0x17a0ba){_0x2af878=_0x2af878-0x95;const _0x194685=_0x1946();let _0x57943b=_0x194685[_0x2af878];return _0x57943b;}export function hostnameOf(_0x19203b){const _0x53af76=_0x352e7d;return new URL(_0x19203b)[_0x53af76(0xbd)];}export function duplicateCookiesForDomains(_0x5da90f,_0x1eb29b){const _0x3f9c4f=_0x352e7d,_0x1e5911=[..._0x5da90f],_0x35f62f=new Set(_0x5da90f[_0x3f9c4f(0xbe)](_0x5ef881=>_0x5ef881['domain']));for(const _0x421fdf of _0x1eb29b){let _0x24dbc4;try{_0x24dbc4=hostnameOf(_0x421fdf);}catch{continue;}if(!_0x24dbc4)continue;const _0x338156=_0x24dbc4[_0x3f9c4f(0xaa)]('.')?_0x24dbc4:'.'+_0x24dbc4;if(_0x35f62f['has'](_0x24dbc4)||_0x35f62f[_0x3f9c4f(0xa3)](_0x338156))continue;for(const _0x5a85d1 of _0x5da90f){_0x1e5911['push']({..._0x5a85d1,'domain':_0x338156});}_0x35f62f[_0x3f9c4f(0xa2)](_0x338156);}return _0x1e5911;}export function resolveAuthEnvironmentLocally(_0x3ce830,_0x3a8666){const _0x2e2623=_0x352e7d,_0x1b9543={'sIcKm':function(_0x4a0250,_0x4f057d){return _0x4a0250===_0x4f057d;}},_0x41bd3c=_0x3ce830[_0x2e2623(0x9e)];if(_0x3a8666){const _0x5b1f5f=_0x41bd3c[_0x3a8666];if(!_0x5b1f5f)return null;return{'key':_0x3a8666,..._0x5b1f5f};}if(_0x3ce830['defaultEnvironmentKey']){const _0x21dd5b=_0x41bd3c[_0x3ce830[_0x2e2623(0xa6)]];if(!_0x21dd5b)return null;return{'key':_0x3ce830[_0x2e2623(0xa6)],..._0x21dd5b};}const _0x5df305=Object['keys'](_0x41bd3c);if(_0x1b9543['sIcKm'](_0x5df305[_0x2e2623(0xc0)],0x1)){const _0x4a5cd8=_0x5df305[0x0];return{'key':_0x4a5cd8,..._0x41bd3c[_0x4a5cd8]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x4b1961,_0x1c5cb9){try{if(_0x1c5cb9)return new URL(_0x1c5cb9,_0x4b1961)['toString']();return new URL(_0x4b1961)['toString']();}catch{return null;}}export function looksLikeLoginUrl(_0x40d229){const _0x189326=_0x352e7d;try{const _0x563035=new URL(_0x40d229);return LOGIN_URL_PATTERN[_0x189326(0x9b)](_0x563035[_0x189326(0x96)]);}catch{return LOGIN_URL_PATTERN[_0x189326(0x9b)](_0x40d229);}}export async function isCachedSessionLive(_0x3906b4,_0x32206b,_0x109647={},_0x3d31aa={}){const _0x10d6e7=_0x352e7d,_0xabea0d={'FwLlU':function(_0x4850fc,_0x4b2215,_0x5c3139){return _0x4850fc(_0x4b2215,_0x5c3139);},'sdJxJ':'domcontentloaded','XxkXK':function(_0x1b1cb1,_0x54964d){return _0x1b1cb1(_0x54964d);}},_0x4642c6=_0xabea0d['FwLlU'](buildSessionCheckUrl,_0x32206b,_0x109647[_0x10d6e7(0xa4)]);if(!_0x4642c6)return!![];if(!_0x3d31aa[_0x10d6e7(0x97)])return!![];let _0x4b92ae=null;try{_0x4b92ae=await _0x3d31aa[_0x10d6e7(0x97)]();const _0x2077f5=await _0x4b92ae['newContext']({'storageState':_0x3906b4,'ignoreHTTPSErrors':!![],..._0x109647['setupHeaders']?{'extraHTTPHeaders':_0x109647['setupHeaders']}:{}}),_0x28aa30=await _0x2077f5['newPage'](),_0x4b497b=await _0x28aa30['goto'](_0x4642c6,{'waitUntil':_0xabea0d[_0x10d6e7(0x99)],'timeout':0x3a98}),_0x214754=_0x4b497b?.['status']();if(_0x214754===0x191||_0x214754===0x193)return![];const _0x190ac8=_0x28aa30[_0x10d6e7(0xb1)]();if(_0xabea0d[_0x10d6e7(0xbb)](looksLikeLoginUrl,_0x190ac8))return![];return!![];}catch{return![];}finally{if(_0x4b92ae)await _0x4b92ae['close']()['catch'](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3c8a1e,_0x209cad){const _0xbbc9c8=_0x5299,_0x37d5f5=_0x3c8a1e();while(!![]){try{const _0x56e0ee=parseInt(_0xbbc9c8(0xdf))/0x1*(parseInt(_0xbbc9c8(0xeb))/0x2)+-parseInt(_0xbbc9c8(0xec))/0x3*(parseInt(_0xbbc9c8(0xe2))/0x4)+parseInt(_0xbbc9c8(0xe0))/0x5+-parseInt(_0xbbc9c8(0xe5))/0x6+-parseInt(_0xbbc9c8(0xdd))/0x7*(-parseInt(_0xbbc9c8(0xee))/0x8)+-parseInt(_0xbbc9c8(0xea))/0x9*(parseInt(_0xbbc9c8(0xe8))/0xa)+parseInt(_0xbbc9c8(0xe4))/0xb*(-parseInt(_0xbbc9c8(0xe1))/0xc);if(_0x56e0ee===_0x209cad)break;else _0x37d5f5['push'](_0x37d5f5['shift']());}catch(_0x398ea6){_0x37d5f5['push'](_0x37d5f5['shift']());}}}(_0x4644,0x59c1a));function _0x4644(){const _0x2ddc2c=['oOQSA','14IJPZeN','sha256','33QYNjqF','3060460MMhnTq','1907700EQJllv','2960yTirqm','NfumF','11nlcLfV','247188dyPOyM','RUVzE','concat','500830LWBpPk','final','108IyEOoF','29398smBuZb','1098CuchkJ','rFZmJ','1369968GjXYcu','subarray','getAuthTag','setAuthTag'];_0x4644=function(){return _0x2ddc2c;};return _0x4644();}import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM='aes-256-gcm',SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x20ac12){const _0x369556=_0x5299,_0x3acd5c={'rFZmJ':function(_0x4249eb,_0x172a12,_0x3caf0c,_0x2a0445,_0x46366c,_0x4b6d1d){return _0x4249eb(_0x172a12,_0x3caf0c,_0x2a0445,_0x46366c,_0x4b6d1d);},'aFhel':_0x369556(0xde)};return _0x3acd5c[_0x369556(0xed)](pbkdf2Sync,_0x20ac12,SALT,0x186a0,KEY_LENGTH,_0x3acd5c['aFhel']);}export function encrypt(_0x268628,_0x311a39){const _0x302d15=_0x5299,_0x4f4fb0={'QHVzR':function(_0x31e4ba,_0x4b631f){return _0x31e4ba(_0x4b631f);},'NfumF':function(_0x21d3b6,_0x9a2cbe,_0x1df4d0,_0x229ac7){return _0x21d3b6(_0x9a2cbe,_0x1df4d0,_0x229ac7);},'RUVzE':'utf8'},_0x354fc5=deriveKey(_0x311a39),_0x3e7240=_0x4f4fb0['QHVzR'](randomBytes,IV_LENGTH),_0x136bcc=_0x4f4fb0[_0x302d15(0xe3)](createCipheriv,ALGORITHM,_0x354fc5,_0x3e7240),_0x5deca7=Buffer['concat']([_0x136bcc['update'](_0x268628,_0x4f4fb0[_0x302d15(0xe6)]),_0x136bcc[_0x302d15(0xe9)]()]),_0x333952=_0x136bcc[_0x302d15(0xda)]();return Buffer[_0x302d15(0xe7)]([_0x3e7240,_0x333952,_0x5deca7]);}function _0x5299(_0xb27865,_0x23ec32){_0xb27865=_0xb27865-0xd9;const _0x46446f=_0x4644();let _0x529996=_0x46446f[_0xb27865];return _0x529996;}export function decrypt(_0x15e573,_0x56b0ec){const _0x3a0b0c=_0x5299,_0x34cc92={'oOQSA':function(_0x525b25,_0x3e4fb7){return _0x525b25(_0x3e4fb7);},'rgKKx':function(_0x50ceab,_0xb6800d){return _0x50ceab+_0xb6800d;}},_0x17339b=_0x34cc92[_0x3a0b0c(0xdc)](deriveKey,_0x56b0ec),_0x2b1fff=_0x15e573[_0x3a0b0c(0xd9)](0x0,IV_LENGTH),_0x39bf2b=_0x15e573[_0x3a0b0c(0xd9)](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x4a9312=_0x15e573['subarray'](_0x34cc92['rgKKx'](IV_LENGTH,TAG_LENGTH)),_0x5cc676=createDecipheriv(ALGORITHM,_0x17339b,_0x2b1fff);return _0x5cc676[_0x3a0b0c(0xdb)](_0x39bf2b),_0x5cc676['update'](_0x4a9312)+_0x5cc676['final']('utf8');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x518c2b=_0x51d9;(function(_0x593781,_0x5c2c0c){const _0x1bf5fd=_0x51d9,_0x2e83bd=_0x593781();while(!![]){try{const _0xf20c70=parseInt(_0x1bf5fd(0x1c7))/0x1+parseInt(_0x1bf5fd(0x1c9))/0x2*(-parseInt(_0x1bf5fd(0x1d6))/0x3)+parseInt(_0x1bf5fd(0x1e5))/0x4+-parseInt(_0x1bf5fd(0x1d2))/0x5*(parseInt(_0x1bf5fd(0x1c3))/0x6)+parseInt(_0x1bf5fd(0x1cb))/0x7+parseInt(_0x1bf5fd(0x1e3))/0x8+parseInt(_0x1bf5fd(0x1b6))/0x9*(-parseInt(_0x1bf5fd(0x1e1))/0xa);if(_0xf20c70===_0x5c2c0c)break;else _0x2e83bd['push'](_0x2e83bd['shift']());}catch(_0xd19551){_0x2e83bd['push'](_0x2e83bd['shift']());}}}(_0x28e7,0x81217));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t',_0x518c2b(0x1d5),'--api-key','--apikey',_0x518c2b(0x1c5),_0x518c2b(0x1d3),_0x518c2b(0x1db),_0x518c2b(0x1c1),'--authorization','--header',_0x518c2b(0x1e2),'--credentials']),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function _0x51d9(_0x224cbc,_0x4c27ca){_0x224cbc=_0x224cbc-0x1b6;const _0x28e7be=_0x28e7();let _0x51d995=_0x28e7be[_0x224cbc];return _0x51d995;}function looksLikeToken(_0x46c634){const _0x1c3d0b=_0x518c2b;return TOKEN_PATTERNS['some'](_0x2492e3=>_0x2492e3[_0x1c3d0b(0x1e7)](_0x46c634));}function _0x28e7(){const _0x36bf61=['isTTY','1224JhXjkT','env','luUxc','WxWpF','XgEXr','Missing\x20required\x20argument','unknown_argument','stringify','join','BoDkq','error','--auth','has','6CVfiPM','split','--key','Bearer\x20','306648BoXTnQ','DxCPR','334nohgmt','missing_required_argument','323981lVaxIw','Unknown\x20argument','uEkjY','startsWith','[desire-path]\x20Failed\x20to\x20send:\x20','4|5|1|7|2|3|6|0','invalid_option_value','3627385FStdQK','--password','yXqZR','--secret','51OVICvg','DEBUG','[desire-path]\x20Sending\x20log\x20to\x20','stdout','includes','--pass','rawCommand','Invalid\x20values','jpAZa','toLowerCase','Not\x20enough\x20non-option\x20arguments','57410OIPihc','--cookie','6058304PEkFMh','lnYfn','3711168nHCoiS','EOOht','test','push','missing_option'];_0x28e7=function(){return _0x36bf61;};return _0x28e7();}export function sanitizeArgs(_0x261bcf){const _0x3686ea=_0x518c2b,_0x50f7ec={'DxCPR':'[REDACTED]','FKWVG':function(_0x4e52bf,_0x193bbe){return _0x4e52bf(_0x193bbe);}},_0x27eb7d=[];let _0x9f73c2=![];for(let _0x2d86d0=0x0;_0x2d86d0<_0x261bcf['length'];_0x2d86d0++){const _0x961259=_0x261bcf[_0x2d86d0];if(_0x9f73c2){_0x27eb7d[_0x3686ea(0x1e8)](_0x50f7ec['DxCPR']),_0x9f73c2=![];continue;}if(_0x961259['startsWith']('--')||_0x961259[_0x3686ea(0x1ce)]('-')){const _0xceba67=_0x961259['indexOf']('=');if(_0xceba67!==-0x1){const _0x3efb6b=_0x961259['slice'](0x0,_0xceba67)[_0x3686ea(0x1df)]();if(SENSITIVE_FLAGS[_0x3686ea(0x1c2)](_0x3efb6b)){_0x27eb7d[_0x3686ea(0x1e8)](_0x961259['slice'](0x0,_0xceba67)+'=[REDACTED]');continue;}}else{const _0x2711c4=_0x961259[_0x3686ea(0x1df)]();SENSITIVE_FLAGS['has'](_0x2711c4)&&(_0x9f73c2=!![]);}_0x27eb7d['push'](_0x961259);}else _0x50f7ec['FKWVG'](looksLikeToken,_0x961259)?_0x27eb7d[_0x3686ea(0x1e8)](_0x50f7ec[_0x3686ea(0x1c8)]):_0x27eb7d['push'](_0x961259);}return _0x27eb7d[_0x3686ea(0x1be)]('\x20');}export async function logDesirePath(_0x42f95d){const _0x1fc622=_0x518c2b,_0x56768d={'EOOht':function(_0x5f5415){return _0x5f5415();},'yXqZR':'no_token','uEkjY':'application/json','lnYfn':'Authorization','WxWpF':function(_0x3f0fab,_0x3da245,_0x19e51b){return _0x3f0fab(_0x3da245,_0x19e51b);},'lLSAR':'POST'};try{const _0x21a039=await getToken()['catch'](()=>null),_0x1909eb=_0x56768d['EOOht'](getApiBaseUrl),_0x5491eb=_0x56768d[_0x1fc622(0x1e6)](getCurrentVersion),_0x4f332d=_0x21a039?'has_token':_0x56768d[_0x1fc622(0x1d4)],_0x41961e={..._0x42f95d['metadata'],'authStatus':_0x4f332d,'isTty':process[_0x1fc622(0x1d9)][_0x1fc622(0x1ea)]??![]},_0x7faa9f={'Content-Type':_0x56768d[_0x1fc622(0x1cd)]};_0x21a039&&(_0x7faa9f[_0x56768d[_0x1fc622(0x1e4)]]=_0x1fc622(0x1c6)+_0x21a039);const _0x19464b={'rawCommand':_0x42f95d[_0x1fc622(0x1dc)],'errorMessage':_0x42f95d['errorMessage'],'errorType':_0x42f95d['errorType'],'featureId':_0x42f95d['featureId'],'sessionId':_0x42f95d['sessionId'],'metadata':_0x41961e,'cliVersion':_0x5491eb};process['env']['DEBUG']&&(console['error'](_0x1fc622(0x1d8)+_0x1909eb+'/api/v1/mcp/desire-path-logs'),console[_0x1fc622(0x1c0)]('[desire-path]\x20Payload:\x20'+JSON[_0x1fc622(0x1bd)](_0x19464b,null,0x2))),await _0x56768d[_0x1fc622(0x1b9)](fetch,_0x1909eb+'/api/v1/mcp/desire-path-logs',{'method':_0x56768d['lLSAR'],'headers':_0x7faa9f,'body':JSON[_0x1fc622(0x1bd)](_0x19464b)});}catch(_0x36d1c3){process[_0x1fc622(0x1b7)][_0x1fc622(0x1d7)]&&console[_0x1fc622(0x1c0)](_0x1fc622(0x1cf)+_0x36d1c3);}}export function getErrorType(_0x2b2cf0,_0x57580d){const _0x23de1a=_0x518c2b,_0xaea66c={'pHyBq':_0x23de1a(0x1d0),'QWvEu':'Unknown\x20command','BoDkq':_0x23de1a(0x1e0),'luUxc':_0x23de1a(0x1dd),'jpAZa':_0x23de1a(0x1d1),'UaKnS':_0x23de1a(0x1e9),'XgEXr':_0x23de1a(0x1cc),'SBOll':_0x23de1a(0x1bc)},_0x9313db=_0xaea66c['pHyBq'][_0x23de1a(0x1c4)]('|');let _0x8ca0c5=0x0;while(!![]){switch(_0x9313db[_0x8ca0c5++]){case'0':return'syntax_error';case'1':if(_0x2b2cf0['includes'](_0xaea66c['QWvEu']))return'unknown_command';continue;case'2':if(_0x2b2cf0['includes'](_0xaea66c[_0x23de1a(0x1bf)]))return _0x23de1a(0x1ca);continue;case'3':if(_0x2b2cf0[_0x23de1a(0x1da)](_0xaea66c[_0x23de1a(0x1b8)]))return _0xaea66c[_0x23de1a(0x1de)];continue;case'4':if(_0x57580d)return'runtime_error';continue;case'5':if(!_0x2b2cf0)return'unknown';continue;case'6':if(_0x2b2cf0[_0x23de1a(0x1da)](_0x23de1a(0x1bb)))return _0xaea66c['UaKnS'];continue;case'7':if(_0x2b2cf0[_0x23de1a(0x1da)](_0xaea66c[_0x23de1a(0x1ba)]))return _0xaea66c['SBOll'];continue;}break;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x450d74,_0x4e8913){const _0x506cb1=_0x3073,_0x3744ae=_0x450d74();while(!![]){try{const _0x3a1e08=parseInt(_0x506cb1(0x1cc))/0x1+-parseInt(_0x506cb1(0x1d7))/0x2*(parseInt(_0x506cb1(0x1c2))/0x3)+-parseInt(_0x506cb1(0x1fd))/0x4+parseInt(_0x506cb1(0x1e3))/0x5*(-parseInt(_0x506cb1(0x211))/0x6)+parseInt(_0x506cb1(0x1fe))/0x7*(-parseInt(_0x506cb1(0x1dc))/0x8)+-parseInt(_0x506cb1(0x215))/0x9*(parseInt(_0x506cb1(0x1fb))/0xa)+parseInt(_0x506cb1(0x1cd))/0xb;if(_0x3a1e08===_0x4e8913)break;else _0x3744ae['push'](_0x3744ae['shift']());}catch(_0x3e919c){_0x3744ae['push'](_0x3744ae['shift']());}}}(_0x397a,0x9cbe6));import{spawn}from'child_process';import _0x44a19d from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';function _0x397a(){const _0x4e1256=['from','POST','413577yvUqCA','zJujk','MyFYF','KounT','application/x-www-form-urlencoded','unref','Authentication\x20failed','length','xdg-open','5553zMYGKd','split','org_id','/api-keys','OkKuh','map','name','list','RPHhB','ryntH','912107XxhBTM','38332954rpcKBm','fNjOu','Using\x20organization:\x20','uVxdA','DzWol','nUOdx','knoWS','selected','FaGqk','log','1142jflNUb','Failed\x20to\x20request\x20device\x20code:\x20','yKbYU','PDkhv','expires_in','5216856CnjcsJ','firstName','token','json','SkvBw','Setting\x20up\x20your\x20organization...','error_description','41920AvAyBd','NnRzs','device_code','verification_uri_complete','startsWith','Code:\x20','xTnFn','Invalid\x20JWT\x20format','status','application/json','memberships','jqdYv','start','ignore','now','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','isTTY','GET','write','Failed\x20to\x20fetch\x20memberships:\x20','workosClientId','base64url','stdout','130cxoTHa','/organization/self-serve-signup','4787848bnxJse','7vpxEbD','Failed\x20to\x20provision\x20CLI\x20token:\x20','error','filter','miZEz','Sonrb','jjqtu','Select\x20an\x20organization:','interval','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','open','access_token','organizationId','vSUwJ','email','EMRxb','text','vWksx','refresh_token','180wkZrbK','platform'];_0x397a=function(){return _0x4e1256;};return _0x397a();}import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL='https://api.workos.com/user_management/authorize/device',WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x464ad3){const _0x19a8c2=_0x3073,_0x2e71d7={'ryntH':'POST','jjqtu':'application/x-www-form-urlencoded'},_0x4b7bac=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x2e71d7[_0x19a8c2(0x1cb)],'headers':{'Content-Type':_0x2e71d7[_0x19a8c2(0x204)]},'body':new URLSearchParams({'client_id':_0x464ad3})});if(!_0x4b7bac['ok']){const _0x46c87a=await _0x4b7bac['text']();throw new Error(_0x19a8c2(0x1d8)+_0x4b7bac['status']+'\x20'+_0x46c87a);}return _0x4b7bac[_0x19a8c2(0x1df)]();}export async function pollForTokens(_0x4e1904,_0xfcd7dd,_0x98c61e,_0x3962b6){const _0x509cff=_0x3073,_0x1b6968={'nlNtW':function(_0x16f583,_0x52d81b){return _0x16f583+_0x52d81b;},'PDkhv':function(_0x4793c7,_0x560ad0){return _0x4793c7<_0x560ad0;},'yjaNh':function(_0x5ed402,_0x179ee4){return _0x5ed402(_0x179ee4);},'LrKHW':_0x509cff(0x1bd),'ldWpv':'authorization_pending','uVxdA':function(_0x2a6fcc,_0x4e52bb){return _0x2a6fcc===_0x4e52bb;},'IOSvU':'slow_down','vWksx':_0x509cff(0x1bf),'KounT':'Device\x20authorization\x20timed\x20out'},_0x52b181=_0x1b6968['nlNtW'](Date[_0x509cff(0x1f1)](),_0x3962b6*0x3e8);let _0x4cbdf1=_0x98c61e*0x3e8;while(_0x1b6968[_0x509cff(0x1da)](Date['now'](),_0x52b181)){await _0x1b6968['yjaNh'](sleep,_0x4cbdf1);const _0x4cb9de=await fetch(WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x1b6968['LrKHW']},'body':new URLSearchParams({'client_id':_0x4e1904,'device_code':_0xfcd7dd,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x4cb9de['ok'])return _0x4cb9de[_0x509cff(0x1df)]();const _0x4c5834=await _0x4cb9de[_0x509cff(0x1df)]();if(_0x4c5834['error']===_0x1b6968['ldWpv'])continue;if(_0x1b6968[_0x509cff(0x1d0)](_0x4c5834[_0x509cff(0x200)],_0x1b6968['IOSvU'])){_0x4cbdf1+=0x3e8;continue;}throw new Error(_0x4c5834[_0x509cff(0x1e2)]||_0x4c5834[_0x509cff(0x200)]||_0x1b6968[_0x509cff(0x20f)]);}throw new Error(_0x1b6968[_0x509cff(0x1bc)]);}async function fetchUserProfile(_0x53d1e4){const _0x5bf3ef=_0x3073,_0x526f67={'BSLMX':function(_0x2a328d){return _0x2a328d();},'jqdYv':function(_0x67858e,_0x408c4b,_0x23c08a){return _0x67858e(_0x408c4b,_0x23c08a);},'bVQrb':'GET'},_0x25a7ee=_0x526f67['BSLMX'](getApiBaseUrl);try{const _0x583295=await _0x526f67[_0x5bf3ef(0x1ee)](fetch,_0x25a7ee+'/organization/me',{'method':_0x526f67['bVQrb'],'headers':{'workos-token':_0x53d1e4}});if(_0x583295['ok'])return _0x583295[_0x5bf3ef(0x1df)]();}catch{}return null;}function buildKeyName(_0x4babf0,_0x510c33){const _0x5a0e14=_0x3073,_0x451bd5={'FaGqk':function(_0x4d38a8,_0x594e52){return _0x4d38a8===_0x594e52;},'nUOdx':function(_0x1b4fa7,_0x253c90){return _0x1b4fa7+_0x253c90;}},_0x51ca26=_0x510c33[_0x5a0e14(0x201)](_0x1499d3=>_0x1499d3[_0x5a0e14(0x1c8)]===_0x4babf0||_0x1499d3['name'][_0x5a0e14(0x1e7)](_0x4babf0+'\x20('));if(_0x451bd5[_0x5a0e14(0x1d5)](_0x51ca26['length'],0x0))return _0x4babf0;return _0x4babf0+'\x20('+_0x451bd5[_0x5a0e14(0x1d2)](_0x51ca26[_0x5a0e14(0x1c0)],0x1)+')';}export async function provisionApiKey(_0x54b47d){const _0x2d23a2=_0x3073,_0x1577d6={'xTnFn':function(_0x59e125,_0x5ef56b,_0x38abf4){return _0x59e125(_0x5ef56b,_0x38abf4);},'Mgbzq':'GET','QCtfD':function(_0x309b5f,_0x5c49d8,_0x261563){return _0x309b5f(_0x5c49d8,_0x261563);},'vAoWU':'POST'},_0x4ff00c=getApiBaseUrl(),_0x13b5ba={'Content-Type':'application/json','workos-token':_0x54b47d},_0x2a552f=await fetchUserProfile(_0x54b47d),_0x10c241=_0x2a552f?.[_0x2d23a2(0x1dd)]||_0x2a552f?.[_0x2d23a2(0x20c)]?.[_0x2d23a2(0x1c3)]('@')[0x0],_0x3f7f41=_0x10c241?_0x10c241+'\x27s\x20CLI\x20Key':'CLI\x20Key';let _0x3875e2=[];try{const _0x5a6fcf=await _0x1577d6[_0x2d23a2(0x1e9)](fetch,_0x4ff00c+_0x2d23a2(0x1c5),{'method':_0x1577d6['Mgbzq'],'headers':_0x13b5ba});if(_0x5a6fcf['ok']){const _0x1de3ee=await _0x5a6fcf[_0x2d23a2(0x1df)]();_0x3875e2=_0x1de3ee['apiKeys'];}}catch{}const _0x47c0a4=buildKeyName(_0x3f7f41,_0x3875e2),_0x357d4f=await _0x1577d6['QCtfD'](fetch,_0x4ff00c+'/api-keys',{'method':_0x1577d6['vAoWU'],'headers':_0x13b5ba,'body':JSON['stringify']({'name':_0x47c0a4,'scope':'mcp:write'})});if(!_0x357d4f['ok']){const _0x24518c=await _0x357d4f['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x357d4f['status']+'\x20'+_0x24518c);}const _0x5bd19c=await _0x357d4f[_0x2d23a2(0x1df)]();return _0x5bd19c['apiKey'][_0x2d23a2(0x1de)];}export function openBrowser(_0x47763b){const _0x591ed2=_0x3073,_0x502499={'MyFYF':function(_0x8e2f1c,_0x4e0682){return _0x8e2f1c===_0x4e0682;},'vWSyR':'win32','DzWol':function(_0x27a8db,_0x225dae,_0x1c926e,_0x9eb08d){return _0x27a8db(_0x225dae,_0x1c926e,_0x9eb08d);},'knoWS':'cmd','XYelx':_0x591ed2(0x1ef),'zJujk':function(_0x1fcb9d,_0x3af1dc){return _0x1fcb9d===_0x3af1dc;},'OkKuh':'darwin','NnRzs':_0x591ed2(0x1c1),'Sonrb':function(_0x4432d0,_0xd3065f,_0x53bd81,_0x2ac095){return _0x4432d0(_0xd3065f,_0x53bd81,_0x2ac095);},'ZbHYk':_0x591ed2(0x1f0)};try{if(_0x502499[_0x591ed2(0x1bb)](process[_0x591ed2(0x212)],_0x502499['vWSyR'])){const _0x45e507=_0x502499[_0x591ed2(0x1d1)](spawn,_0x502499[_0x591ed2(0x1d3)],['/c',_0x502499['XYelx'],'',_0x47763b],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0x45e507[_0x591ed2(0x1be)]();return;}const _0xbf57d2=_0x502499[_0x591ed2(0x1ba)](process[_0x591ed2(0x212)],_0x502499[_0x591ed2(0x1c6)])?_0x591ed2(0x208):_0x502499[_0x591ed2(0x1e4)],_0x4975f7=_0x502499[_0x591ed2(0x203)](spawn,_0xbf57d2,[_0x47763b],{'detached':!![],'stdio':_0x502499['ZbHYk']});_0x4975f7[_0x591ed2(0x1be)]();}catch{}}function decodeJwtPayload(_0x337205){const _0x30b18a=_0x3073,_0x5c889e={'RPHhB':'utf-8'},_0x2c1131=_0x337205[_0x30b18a(0x1c3)]('.');if(_0x2c1131[_0x30b18a(0x1c0)]!==0x3)throw new Error(_0x30b18a(0x1ea));const _0x479f72=Buffer[_0x30b18a(0x213)](_0x2c1131[0x1],_0x30b18a(0x1f9))['toString'](_0x5c889e[_0x30b18a(0x1ca)]);return JSON['parse'](_0x479f72);}async function selfServeSignup(_0x50a024){const _0x31646e=_0x3073,_0x597d23={'esHcy':function(_0x44681a,_0x2bfcb3,_0x4266e9){return _0x44681a(_0x2bfcb3,_0x4266e9);}},_0x138df5=getApiBaseUrl(),_0x3413ff=await _0x597d23['esHcy'](fetch,_0x138df5+_0x31646e(0x1fc),{'method':'POST','headers':{'Content-Type':_0x31646e(0x1ec),'workos-token':_0x50a024}});if(!_0x3413ff['ok']){const _0x28c31e=await _0x3413ff['text']();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x3413ff[_0x31646e(0x1eb)]+'\x20'+_0x28c31e);}return _0x3413ff[_0x31646e(0x1df)]();}async function fetchMyMemberships(_0x100841){const _0x2b2d8f=_0x3073,_0x2cf071={'miZEz':function(_0x1b54d2,_0x2fc8aa,_0x302ca5){return _0x1b54d2(_0x2fc8aa,_0x302ca5);},'SCzAl':_0x2b2d8f(0x1f5)},_0xa86d7=getApiBaseUrl(),_0x28e13c=await _0x2cf071[_0x2b2d8f(0x202)](fetch,_0xa86d7+'/organization/my-memberships',{'method':_0x2cf071['SCzAl'],'headers':{'workos-token':_0x100841}});if(!_0x28e13c['ok']){const _0x5e7f36=await _0x28e13c[_0x2b2d8f(0x20e)]();throw new Error(_0x2b2d8f(0x1f7)+_0x28e13c[_0x2b2d8f(0x1eb)]+'\x20'+_0x5e7f36);}const _0x47e58f=await _0x28e13c[_0x2b2d8f(0x1df)]();return _0x47e58f[_0x2b2d8f(0x1ed)];}async function refreshTokenWithOrg(_0x21e954,_0x2aff13,_0x1cc25c){const _0x362957=_0x3073,_0x4c9c09={'XffkZ':function(_0x32140e,_0x353418,_0x40e162){return _0x32140e(_0x353418,_0x40e162);},'opOVy':_0x362957(0x1bd),'iGwes':_0x362957(0x210)},_0x50bd93=await _0x4c9c09['XffkZ'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x4c9c09['opOVy']},'body':new URLSearchParams({'client_id':_0x21e954,'grant_type':_0x4c9c09['iGwes'],'refresh_token':_0x2aff13,'organization_id':_0x1cc25c})});if(!_0x50bd93['ok']){const _0x3d8eee=await _0x50bd93[_0x362957(0x20e)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x50bd93['status']+'\x20'+_0x3d8eee);}return _0x50bd93[_0x362957(0x1df)]();}function _0x3073(_0x10b433,_0x68ff86){_0x10b433=_0x10b433-0x1ba;const _0x397aa8=_0x397a();let _0x3073a2=_0x397aa8[_0x10b433];return _0x3073a2;}async function provisionCliToken(_0x2a8bfa){const _0x1cfa99=_0x3073,_0x319d5c={'xHahA':function(_0x20f250){return _0x20f250();},'yKbYU':function(_0x4de1a8,_0x39b2bc,_0x2a8ae3){return _0x4de1a8(_0x39b2bc,_0x2a8ae3);},'QslWG':_0x1cfa99(0x214),'WAoTf':_0x1cfa99(0x1ec)},_0x6758=_0x319d5c['xHahA'](getApiBaseUrl),_0x3475c3=await _0x319d5c[_0x1cfa99(0x1d9)](fetch,_0x6758+'/cli-auth/token',{'method':_0x319d5c['QslWG'],'headers':{'Content-Type':_0x319d5c['WAoTf'],'workos-token':_0x2a8bfa}});if(!_0x3475c3['ok']){const _0x5cb047=await _0x3475c3[_0x1cfa99(0x20e)]();throw new Error(_0x1cfa99(0x1ff)+_0x3475c3['status']+'\x20'+_0x5cb047);}return _0x3475c3[_0x1cfa99(0x1df)]();}export async function runDeviceAuthFlow(){const _0x3130d6=_0x3073,_0x5211df={'wBXgh':function(_0x4c4b61){return _0x4c4b61();},'fNjOu':function(_0x524d77,_0x283e13){return _0x524d77(_0x283e13);},'ZdTMi':_0x3130d6(0x1f3),'SkvBw':function(_0x1b7c50,_0xc87001){return _0x1b7c50(_0xc87001);},'iyIBN':_0x3130d6(0x207),'vSUwJ':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','auUTZ':_0x3130d6(0x1d4),'nXpff':function(_0xeccfbe,_0xc122eb,_0x551fd8,_0x4b7af9){return _0xeccfbe(_0xc122eb,_0x551fd8,_0x4b7af9);},'EMRxb':'Provisioning\x20CLI\x20token...'},_0xaec1a3=_0x5211df['wBXgh'](getCurrentEnvironment),_0x33e6d7=ENVIRONMENT_CONFIGS[_0xaec1a3][_0x3130d6(0x1f8)],_0x2d48b5=await _0x5211df[_0x3130d6(0x1ce)](requestDeviceCode,_0x33e6d7);console['log'](_0x5211df['ZdTMi']),console[_0x3130d6(0x1d6)](_0x3130d6(0x1f2)),_0x5211df[_0x3130d6(0x1e0)](openBrowser,_0x2d48b5[_0x3130d6(0x1e6)]),console[_0x3130d6(0x1d6)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x2d48b5[_0x3130d6(0x1e6)]),console[_0x3130d6(0x1d6)](_0x3130d6(0x1e8)+_0x2d48b5['user_code']+'\x0a'),process['stdout'][_0x3130d6(0x1f6)]('Waiting\x20for\x20authentication...');let _0x79c713=await pollForTokens(_0x33e6d7,_0x2d48b5[_0x3130d6(0x1e5)],_0x2d48b5[_0x3130d6(0x206)],_0x2d48b5[_0x3130d6(0x1db)]);console[_0x3130d6(0x1d6)]('\x20✓');const _0x45fff1=decodeJwtPayload(_0x79c713[_0x3130d6(0x209)]);if(!_0x45fff1[_0x3130d6(0x1c4)]){const _0x50e3ad=await fetchMyMemberships(_0x79c713[_0x3130d6(0x209)]);let _0x2da1d6;if(_0x50e3ad[_0x3130d6(0x1c0)]===0x0){process['stdout'][_0x3130d6(0x1f6)](_0x3130d6(0x1e1));const _0x11d6f8=await _0x5211df[_0x3130d6(0x1e0)](selfServeSignup,_0x79c713[_0x3130d6(0x209)]);_0x2da1d6=_0x11d6f8[_0x3130d6(0x20a)],console[_0x3130d6(0x1d6)]('\x20✓');}else{if(_0x50e3ad['length']===0x1)_0x2da1d6=_0x50e3ad[0x0][_0x3130d6(0x20a)],console[_0x3130d6(0x1d6)](_0x3130d6(0x1cf)+_0x50e3ad[0x0]['name']);else{const _0x36397e=process['stdin'][_0x3130d6(0x1f4)]&&process[_0x3130d6(0x1fa)]['isTTY'];if(!_0x36397e)throw new Error(_0x5211df['iyIBN']+_0x5211df[_0x3130d6(0x20b)]);const {selected:_0x3872c4}=await _0x44a19d['prompt']([{'type':_0x3130d6(0x1c9),'name':_0x5211df['auUTZ'],'message':_0x3130d6(0x205),'choices':_0x50e3ad[_0x3130d6(0x1c7)](_0xcbbcc2=>({'name':_0xcbbcc2['name'],'value':_0xcbbcc2[_0x3130d6(0x20a)]}))}]);_0x2da1d6=_0x3872c4;}}_0x79c713=await _0x5211df['nXpff'](refreshTokenWithOrg,_0x33e6d7,_0x79c713['refresh_token'],_0x2da1d6);}process[_0x3130d6(0x1fa)][_0x3130d6(0x1f6)](_0x5211df[_0x3130d6(0x20d)]);const _0x3ebcb8=await provisionCliToken(_0x79c713['access_token']);return console['log']('\x20✓'),await _0x5211df['fNjOu'](storeToken,_0x3ebcb8['token']),_0x79c713['refresh_token']&&await storeRefreshToken(_0x79c713['refresh_token']),_0x3ebcb8['token'];}function sleep(_0x6b1c1){return new Promise(_0x5d1232=>setTimeout(_0x5d1232,_0x6b1c1));}
|
|
1
|
+
const _0x224128=_0x2aa6;(function(_0x5cd0ab,_0x2c6882){const _0x48c6e0=_0x2aa6,_0x560d01=_0x5cd0ab();while(!![]){try{const _0xa2865f=-parseInt(_0x48c6e0(0x108))/0x1*(parseInt(_0x48c6e0(0x102))/0x2)+parseInt(_0x48c6e0(0x110))/0x3*(-parseInt(_0x48c6e0(0x14c))/0x4)+parseInt(_0x48c6e0(0x118))/0x5+-parseInt(_0x48c6e0(0x14f))/0x6*(parseInt(_0x48c6e0(0x120))/0x7)+-parseInt(_0x48c6e0(0x145))/0x8+-parseInt(_0x48c6e0(0x11e))/0x9*(-parseInt(_0x48c6e0(0x13e))/0xa)+parseInt(_0x48c6e0(0x104))/0xb;if(_0xa2865f===_0x2c6882)break;else _0x560d01['push'](_0x560d01['shift']());}catch(_0x55417a){_0x560d01['push'](_0x560d01['shift']());}}}(_0x337e,0xf3e43));import{spawn}from'child_process';import _0x54a5f5 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x224128(0x131),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x5c8295){const _0x4fb8bf=_0x224128,_0x3a6997={'IqXxU':_0x4fb8bf(0x14e)},_0x4fb4dc=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x4fb8bf(0x114),'headers':{'Content-Type':_0x3a6997[_0x4fb8bf(0x138)]},'body':new URLSearchParams({'client_id':_0x5c8295})});if(!_0x4fb4dc['ok']){const _0x1ac76b=await _0x4fb4dc['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x4fb4dc[_0x4fb8bf(0x125)]+'\x20'+_0x1ac76b);}return _0x4fb4dc[_0x4fb8bf(0x103)]();}export async function pollForTokens(_0x51aaac,_0x332836,_0x49cf2,_0xade676){const _0x3aad99=_0x224128,_0x3bf8d8={'exDkY':function(_0x1144ee,_0x272e45){return _0x1144ee+_0x272e45;},'lEqLY':function(_0x22626b,_0x12a591){return _0x22626b<_0x12a591;}},_0x97c315=_0x3bf8d8[_0x3aad99(0x127)](Date[_0x3aad99(0x136)](),_0xade676*0x3e8);let _0x5c38f2=_0x49cf2*0x3e8;while(_0x3bf8d8[_0x3aad99(0x128)](Date[_0x3aad99(0x136)](),_0x97c315)){await sleep(_0x5c38f2);const _0x3af192=await fetch(WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x3aad99(0x14e)},'body':new URLSearchParams({'client_id':_0x51aaac,'device_code':_0x332836,'grant_type':_0x3aad99(0x141)})});if(_0x3af192['ok'])return _0x3af192[_0x3aad99(0x103)]();const _0x5b3aeb=await _0x3af192[_0x3aad99(0x103)]();if(_0x5b3aeb[_0x3aad99(0x150)]==='authorization_pending')continue;if(_0x5b3aeb[_0x3aad99(0x150)]===_0x3aad99(0x11c)){_0x5c38f2+=0x3e8;continue;}throw new Error(_0x5b3aeb['error_description']||_0x5b3aeb['error']||'Authentication\x20failed');}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x11e591){const _0x5068f0=_0x224128,_0x3671d3={'OxJMZ':function(_0x3c2c3c){return _0x3c2c3c();},'HxpFE':_0x5068f0(0x10b)},_0x4992a4=_0x3671d3[_0x5068f0(0x143)](getApiBaseUrl);try{const _0x3a1808=await fetch(_0x4992a4+_0x5068f0(0x134),{'method':_0x3671d3['HxpFE'],'headers':{'workos-token':_0x11e591}});if(_0x3a1808['ok'])return _0x3a1808[_0x5068f0(0x103)]();}catch{}return null;}function buildKeyName(_0x2ee2d9,_0x33ab12){const _0x4798f9=_0x224128,_0xae1865={'pmHJz':function(_0x280cbb,_0x1b54c5){return _0x280cbb===_0x1b54c5;}},_0x4fa6b0=_0x33ab12['filter'](_0x174550=>_0x174550['name']===_0x2ee2d9||_0x174550[_0x4798f9(0x14d)][_0x4798f9(0x121)](_0x2ee2d9+'\x20('));if(_0xae1865[_0x4798f9(0x14b)](_0x4fa6b0[_0x4798f9(0x12d)],0x0))return _0x2ee2d9;return _0x2ee2d9+'\x20('+(_0x4fa6b0['length']+0x1)+')';}export async function provisionApiKey(_0x3240df){const _0x25ecee=_0x224128,_0x3fe841={'YjPfo':function(_0x3c27cb){return _0x3c27cb();},'qwaCi':_0x25ecee(0x100),'qtjZi':'GET','JpCTV':function(_0x28a93b,_0x56e73d,_0x57c2d9){return _0x28a93b(_0x56e73d,_0x57c2d9);},'fItxL':_0x25ecee(0x114)},_0x329083=_0x3fe841[_0x25ecee(0x123)](getApiBaseUrl),_0x2df7e9={'Content-Type':_0x25ecee(0x10e),'workos-token':_0x3240df},_0x46e2a4=await fetchUserProfile(_0x3240df),_0x5c4c39=_0x46e2a4?.['firstName']||_0x46e2a4?.[_0x25ecee(0x12c)]?.[_0x25ecee(0x111)]('@')[0x0],_0x360ec2=_0x5c4c39?_0x5c4c39+'\x27s\x20CLI\x20Key':_0x3fe841['qwaCi'];let _0x100b74=[];try{const _0x2d45f7=await fetch(_0x329083+_0x25ecee(0x140),{'method':_0x3fe841['qtjZi'],'headers':_0x2df7e9});if(_0x2d45f7['ok']){const _0x532535=await _0x2d45f7['json']();_0x100b74=_0x532535['apiKeys'];}}catch{}const _0x381c55=_0x3fe841[_0x25ecee(0x144)](buildKeyName,_0x360ec2,_0x100b74),_0x349a12=await fetch(_0x329083+_0x25ecee(0x140),{'method':_0x3fe841['fItxL'],'headers':_0x2df7e9,'body':JSON[_0x25ecee(0x13d)]({'name':_0x381c55,'scope':'mcp:write'})});if(!_0x349a12['ok']){const _0x1c46cb=await _0x349a12[_0x25ecee(0x13a)]();throw new Error(_0x25ecee(0x129)+_0x349a12[_0x25ecee(0x125)]+'\x20'+_0x1c46cb);}const _0x37ab39=await _0x349a12['json']();return _0x37ab39[_0x25ecee(0x101)]['token'];}export function openBrowser(_0x27d222){const _0x11fc43=_0x224128,_0x56a8d4={'InBdY':_0x11fc43(0x149),'RJZof':'cmd','sUMRE':'ignore','VFmYn':_0x11fc43(0x11a),'wwTyv':_0x11fc43(0x133),'BdFwq':function(_0x22b8fb,_0x33baa0,_0x41db7d,_0x5a4b8e){return _0x22b8fb(_0x33baa0,_0x41db7d,_0x5a4b8e);}};try{if(process['platform']===_0x56a8d4[_0x11fc43(0x12b)]){const _0x1b48ae=spawn(_0x56a8d4['RJZof'],['/c','start','',_0x27d222],{'detached':!![],'stdio':_0x56a8d4[_0x11fc43(0x130)],'windowsHide':!![]});_0x1b48ae['unref']();return;}const _0x59422e=process[_0x11fc43(0x14a)]===_0x56a8d4[_0x11fc43(0x13c)]?_0x11fc43(0x12f):_0x56a8d4[_0x11fc43(0x109)],_0xbbfa75=_0x56a8d4['BdFwq'](spawn,_0x59422e,[_0x27d222],{'detached':!![],'stdio':'ignore'});_0xbbfa75['unref']();}catch{}}function decodeJwtPayload(_0x5f32ba){const _0x5d2254=_0x224128,_0x578679={'LeFJx':function(_0x1b5634,_0x5cc20e){return _0x1b5634!==_0x5cc20e;},'WZjYv':_0x5d2254(0x137)},_0x5e2f5b=_0x5f32ba['split']('.');if(_0x578679[_0x5d2254(0xff)](_0x5e2f5b['length'],0x3))throw new Error('Invalid\x20JWT\x20format');const _0x3490c4=Buffer[_0x5d2254(0x122)](_0x5e2f5b[0x1],_0x578679[_0x5d2254(0x11f)])['toString']('utf-8');return JSON[_0x5d2254(0x135)](_0x3490c4);}async function selfServeSignup(_0x523c60){const _0x1fdb7d=_0x224128,_0xc986d8={'TmKFI':'POST'},_0x529f42=getApiBaseUrl(),_0x2d927b=await fetch(_0x529f42+'/organization/self-serve-signup',{'method':_0xc986d8['TmKFI'],'headers':{'Content-Type':_0x1fdb7d(0x10e),'workos-token':_0x523c60}});if(!_0x2d927b['ok']){const _0x2094cd=await _0x2d927b['text']();throw new Error(_0x1fdb7d(0x11d)+_0x2d927b[_0x1fdb7d(0x125)]+'\x20'+_0x2094cd);}return _0x2d927b['json']();}async function fetchMyMemberships(_0x2bed5b){const _0x50269b=_0x224128,_0x366aa9={'wDsPC':function(_0x2e4843){return _0x2e4843();},'sWTLg':function(_0x2b91eb,_0x112228,_0x4c2671){return _0x2b91eb(_0x112228,_0x4c2671);}},_0x312d87=_0x366aa9[_0x50269b(0x107)](getApiBaseUrl),_0x157f4e=await _0x366aa9[_0x50269b(0x10f)](fetch,_0x312d87+_0x50269b(0x12e),{'method':'GET','headers':{'workos-token':_0x2bed5b}});if(!_0x157f4e['ok']){const _0x799753=await _0x157f4e['text']();throw new Error(_0x50269b(0x117)+_0x157f4e['status']+'\x20'+_0x799753);}const _0x5e5e6d=await _0x157f4e['json']();return _0x5e5e6d['memberships'];}async function refreshTokenWithOrg(_0x35460b,_0x2f14a2,_0x28a23f){const _0x1259f9=_0x224128,_0x5f2f4e={'prjVj':function(_0x2e1d76,_0x3963b4,_0x126705){return _0x2e1d76(_0x3963b4,_0x126705);},'yBAUk':'application/x-www-form-urlencoded'},_0x317420=await _0x5f2f4e['prjVj'](fetch,WORKOS_TOKEN_URL,{'method':_0x1259f9(0x114),'headers':{'Content-Type':_0x5f2f4e['yBAUk']},'body':new URLSearchParams({'client_id':_0x35460b,'grant_type':_0x1259f9(0x106),'refresh_token':_0x2f14a2,'organization_id':_0x28a23f})});if(!_0x317420['ok']){const _0x35a68e=await _0x317420['text']();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x317420[_0x1259f9(0x125)]+'\x20'+_0x35a68e);}return _0x317420['json']();}async function provisionCliToken(_0x3d9d99){const _0x1c6a55=_0x224128,_0x251e57={'cObns':function(_0x5b7fd3){return _0x5b7fd3();},'MFKFs':_0x1c6a55(0x10e)},_0x201e00=_0x251e57[_0x1c6a55(0x146)](getApiBaseUrl),_0x26021c=await fetch(_0x201e00+_0x1c6a55(0x112),{'method':_0x1c6a55(0x114),'headers':{'Content-Type':_0x251e57['MFKFs'],'workos-token':_0x3d9d99}});if(!_0x26021c['ok']){const _0x130f27=await _0x26021c['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x26021c[_0x1c6a55(0x125)]+'\x20'+_0x130f27);}return _0x26021c[_0x1c6a55(0x103)]();}function _0x337e(){const _0x163acd=['wDsPC','139EQdfpL','wwTyv','FpOay','GET','token','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','application/json','sWTLg','531BHnuyk','split','/cli-auth/token','stdout','POST','yqFYX','LmbdB','Failed\x20to\x20fetch\x20memberships:\x20','1784740jnPBeX','write','darwin','access_token','slow_down','Failed\x20to\x20create\x20organization:\x20','9lKgoqG','WZjYv','1555295wEOuMz','startsWith','from','YjPfo','device_code','status','organizationId','exDkY','lEqLY','Failed\x20to\x20provision\x20API\x20key:\x20','list','InBdY','email','length','/organization/my-memberships','open','sUMRE','https://api.workos.com/user_management/authorize/device','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','xdg-open','/organization/me','parse','now','base64url','IqXxU','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','text','expires_in','VFmYn','stringify','4022810giHLbs','Select\x20an\x20organization:','/api-keys','urn:ietf:params:oauth:grant-type:device_code','log','OxJMZ','JpCTV','2478960vHUJHz','cObns','fMePw','uUeEM','win32','platform','pmHJz','13332KOsiwq','name','application/x-www-form-urlencoded','6bbLEes','error','selected','rtqQe','LeFJx','CLI\x20Key','apiKey','21232jSGWcu','json','31211070IJMlaD','Setting\x20up\x20your\x20organization...','refresh_token'];_0x337e=function(){return _0x163acd;};return _0x337e();}function _0x2aa6(_0x105924,_0x5aa9e8){_0x105924=_0x105924-0xfd;const _0x337ec8=_0x337e();let _0x2aa65e=_0x337ec8[_0x105924];return _0x2aa65e;}export async function runDeviceAuthFlow(){const _0x132120=_0x224128,_0x26e1af={'LmbdB':function(_0x1f8a7d,_0x2f8e93){return _0x1f8a7d(_0x2f8e93);},'uUeEM':_0x132120(0x10d),'yqFYX':_0x132120(0x132),'rtqQe':function(_0x56e7c8,_0x50f068,_0x357d2d,_0x87d49a,_0x553d4c){return _0x56e7c8(_0x50f068,_0x357d2d,_0x87d49a,_0x553d4c);},'efbvh':function(_0x1e8c45,_0x126a6b){return _0x1e8c45===_0x126a6b;},'tbJLc':function(_0x433f72,_0x24b60b){return _0x433f72+_0x24b60b;},'fMePw':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','TwVQK':_0x132120(0xfd),'BfNZR':_0x132120(0x13f),'FpOay':function(_0x1573c4,_0x3d799c){return _0x1573c4(_0x3d799c);}},_0x11fe35=getCurrentEnvironment(),_0xb35f40=ENVIRONMENT_CONFIGS[_0x11fe35]['workosClientId'],_0x427aa1=await _0x26e1af[_0x132120(0x116)](requestDeviceCode,_0xb35f40);console[_0x132120(0x142)](_0x26e1af[_0x132120(0x148)]),console[_0x132120(0x142)](_0x26e1af[_0x132120(0x115)]),openBrowser(_0x427aa1['verification_uri_complete']),console[_0x132120(0x142)](_0x132120(0x139)+_0x427aa1['verification_uri_complete']),console['log']('Code:\x20'+_0x427aa1['user_code']+'\x0a'),process['stdout'][_0x132120(0x119)]('Waiting\x20for\x20authentication...');let _0x440481=await _0x26e1af[_0x132120(0xfe)](pollForTokens,_0xb35f40,_0x427aa1[_0x132120(0x124)],_0x427aa1['interval'],_0x427aa1[_0x132120(0x13b)]);console['log']('\x20✓');const _0x196b1f=_0x26e1af['LmbdB'](decodeJwtPayload,_0x440481['access_token']);if(!_0x196b1f['org_id']){const _0x5d25f9=await fetchMyMemberships(_0x440481[_0x132120(0x11b)]);let _0x249f44;if(_0x5d25f9['length']===0x0){process[_0x132120(0x113)]['write'](_0x132120(0x105));const _0x21fb8e=await selfServeSignup(_0x440481['access_token']);_0x249f44=_0x21fb8e['organizationId'],console[_0x132120(0x142)]('\x20✓');}else{if(_0x26e1af['efbvh'](_0x5d25f9[_0x132120(0x12d)],0x1))_0x249f44=_0x5d25f9[0x0][_0x132120(0x126)],console[_0x132120(0x142)]('Using\x20organization:\x20'+_0x5d25f9[0x0]['name']);else{const _0x1b5d5a=process['stdin']['isTTY']&&process['stdout']['isTTY'];if(!_0x1b5d5a)throw new Error(_0x26e1af['tbJLc'](_0x26e1af[_0x132120(0x147)],'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.'));const {selected:_0x5bd021}=await _0x54a5f5['prompt']([{'type':_0x132120(0x12a),'name':_0x26e1af['TwVQK'],'message':_0x26e1af['BfNZR'],'choices':_0x5d25f9['map'](_0x51c956=>({'name':_0x51c956['name'],'value':_0x51c956[_0x132120(0x126)]}))}]);_0x249f44=_0x5bd021;}}_0x440481=await refreshTokenWithOrg(_0xb35f40,_0x440481['refresh_token'],_0x249f44);}process[_0x132120(0x113)][_0x132120(0x119)]('Provisioning\x20CLI\x20token...');const _0x43f314=await provisionCliToken(_0x440481['access_token']);return console[_0x132120(0x142)]('\x20✓'),await storeToken(_0x43f314['token']),_0x440481[_0x132120(0x106)]&&await _0x26e1af[_0x132120(0x10a)](storeRefreshToken,_0x440481['refresh_token']),_0x43f314[_0x132120(0x10c)];}function sleep(_0x12aa1b){return new Promise(_0x4007d6=>setTimeout(_0x4007d6,_0x12aa1b));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x544583=_0x1b5d;(function(_0x49ae4a,_0x2231bc){const _0x5196d1=_0x1b5d,_0x5a2975=_0x49ae4a();while(!![]){try{const _0x196b1f=parseInt(_0x5196d1(0xa8))/0x1*(-parseInt(_0x5196d1(0xbf))/0x2)+-parseInt(_0x5196d1(0xbd))/0x3*(parseInt(_0x5196d1(0xc7))/0x4)+-parseInt(_0x5196d1(0xc3))/0x5+-parseInt(_0x5196d1(0xc6))/0x6+-parseInt(_0x5196d1(0xa7))/0x7*(parseInt(_0x5196d1(0xb4))/0x8)+parseInt(_0x5196d1(0xba))/0x9*(parseInt(_0x5196d1(0xa9))/0xa)+parseInt(_0x5196d1(0xc4))/0xb;if(_0x196b1f===_0x2231bc)break;else _0x5a2975['push'](_0x5a2975['shift']());}catch(_0x509f86){_0x5a2975['push'](_0x5a2975['shift']());}}}(_0x561e,0xb5023));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':_0x544583(0xb3),'mcpAuthUrl':'https://mcp-auth.ranger.net/mcp'},'staging':{'apiBaseUrl':_0x544583(0xc2),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x544583(0xbb),'mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':'http://localhost:8080','workosClientId':_0x544583(0xc1),'aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT='prod';function _0x561e(){const _0xf2f1db=['staging','KBESS','trim','https://ai-proxy-716115358910.us-central1.run.app','40gTgXwZ','RANGER_MCP_AUTH_URL','local','RANGER_TRANSPORT','mcjBn','mcp','42678DpSsym','https://ai-proxy-301751771437.us-central1.run.app','fpypM','1671897XhzXHL','RANGER_DISABLE_MCP','1050DfBiVq','rangerwright-cli','client_01J9CBYM2DKWV9HM17D95Z540K','https://api.staging.ranger.net','7203510OgMYiB','40519908BesCiO','find','4319856FACOPO','4FWcCLU','env','147308XKRehe','588NTnPAt','400odlLJQ','[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22','RANGER_HOOKS','auto','prod','RANGER_USE_NOVA_ACT','wvXir'];_0x561e=function(){return _0xf2f1db;};return _0x561e();}export function isValidEnvironment(_0x14356f){const _0x13d876=_0x544583;return _0x14356f===_0x13d876(0xad)||_0x14356f===_0x13d876(0xb0)||_0x14356f===_0x13d876(0xb6);}function _0x1b5d(_0x1c623f,_0x11df81){_0x1c623f=_0x1c623f-0xa7;const _0x561e58=_0x561e();let _0x1b5dd5=_0x561e58[_0x1c623f];return _0x1b5dd5;}export function getCurrentEnvironment(){const _0x3fa925=_0x544583,_0x299acf=process[_0x3fa925(0xc8)]['RANGER_CLI_ENV'];if(_0x299acf&&isValidEnvironment(_0x299acf))return _0x299acf;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x4d476c={'pWyqm':function(_0xa4314e){return _0xa4314e();}};return ENVIRONMENT_CONFIGS[_0x4d476c['pWyqm'](getCurrentEnvironment)]['apiBaseUrl'];}export function getAiProxyUrl(){const _0x4ea06c=_0x544583,_0x17a2be={'fpypM':function(_0x3a5079){return _0x3a5079();}};return ENVIRONMENT_CONFIGS[_0x17a2be[_0x4ea06c(0xbc)](getCurrentEnvironment)]['aiProxyUrl'];}export function getMcpAuthUrl(){const _0x34d00=_0x544583,_0x437c5d={'SXhYa':function(_0x4bed94){return _0x4bed94();}};return process[_0x34d00(0xc8)][_0x34d00(0xb5)]??ENVIRONMENT_CONFIGS[_0x437c5d['SXhYa'](getCurrentEnvironment)]['mcpAuthUrl'];}export function isByokEnabled(){return process['env']['RANGER_BYOK']==='true';}function isVerificationTransport(_0x87ebde){const _0x553930=_0x544583,_0xd8275f={'KBESS':function(_0x354820,_0x31b9d9){return _0x354820===_0x31b9d9;},'vmlMc':_0x553930(0xb9),'FkDMV':function(_0x536b0f,_0x25d10f){return _0x536b0f===_0x25d10f;},'wvXir':_0x553930(0xc0)};return _0xd8275f[_0x553930(0xb1)](_0x87ebde,_0xd8275f['vmlMc'])||_0x87ebde==='playwright-cli'||_0x87ebde==='nova-act-cli'||_0xd8275f['FkDMV'](_0x87ebde,_0xd8275f[_0x553930(0xaf)]);}const LEGACY_TRANSPORT_ENV_VARS=[_0x544583(0xae),_0x544583(0xbe)];export function getVerificationTransport(){const _0x408fc1=_0x544583,_0x209791={'mcjBn':'mcp'},_0x1553fa=process['env'][_0x408fc1(0xb7)]?.[_0x408fc1(0xb2)]();if(_0x1553fa){if(isVerificationTransport(_0x1553fa))return _0x1553fa;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x1553fa+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x4eb708=LEGACY_TRANSPORT_ENV_VARS[_0x408fc1(0xc5)](_0x29ba1e=>process[_0x408fc1(0xc8)][_0x29ba1e]);if(_0x4eb708)throw new Error(_0x4eb708+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.');return _0x209791[_0x408fc1(0xb8)];}export function resolveHookMode(_0x28d6b8=process['env']){const _0x309ef9=_0x544583,_0x3cca1c={'cbLoV':_0x309ef9(0xac)},_0x406342=_0x28d6b8['RANGER_HOOKS']?.[_0x309ef9(0xb2)]()['toLowerCase']();if(!_0x406342)return _0x309ef9(0xac);if(_0x406342==='off'||_0x406342==='on'||_0x406342===_0x3cca1c['cbLoV'])return _0x406342;return console['error'](_0x309ef9(0xaa)+_0x28d6b8[_0x309ef9(0xab)]+'\x22.\x20'+'Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.'),_0x309ef9(0xac);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x571d66,_0x1bee4d){const _0x4569a0=_0x4b33,_0x200c6f=_0x571d66();while(!![]){try{const _0x51dba5=-parseInt(_0x4569a0(0x1ad))/0x1*(parseInt(_0x4569a0(0x1ca))/0x2)+-parseInt(_0x4569a0(0x1b7))/0x3+parseInt(_0x4569a0(0x1c4))/0x4*(-parseInt(_0x4569a0(0x1b8))/0x5)+parseInt(_0x4569a0(0x1ab))/0x6*(parseInt(_0x4569a0(0x1a3))/0x7)+-parseInt(_0x4569a0(0x1b0))/0x8+-parseInt(_0x4569a0(0x1b9))/0x9*(parseInt(_0x4569a0(0x1d2))/0xa)+parseInt(_0x4569a0(0x1e6))/0xb;if(_0x51dba5===_0x1bee4d)break;else _0x200c6f['push'](_0x200c6f['shift']());}catch(_0x4afe91){_0x200c6f['push'](_0x200c6f['shift']());}}}(_0x399d,0x44522));function _0x4b33(_0x6ba84e,_0x4a2007){_0x6ba84e=_0x6ba84e-0x19f;const _0x399d22=_0x399d();let _0x4b3349=_0x399d22[_0x6ba84e];return _0x4b3349;}import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0xcb2026){const _0x3f811c=_0x4b33,_0x59ad7e={'ZUkjf':function(_0x63a202){return _0x63a202();},'EcXvu':_0x3f811c(0x1a2),'NyHaK':function(_0x153505,_0x2d2295){return _0x153505===_0x2d2295;},'KlBax':'Feature\x20limit\x20exceeded'},_0x1de6ac=await _0x59ad7e['ZUkjf'](getToken);if(!_0x1de6ac)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4d38f7=_0x59ad7e['ZUkjf'](getApiBaseUrl),_0x14c80b=await fetch(_0x4d38f7+_0x3f811c(0x1da),{'method':'POST','headers':{'Authorization':_0x3f811c(0x1c0)+_0x1de6ac,'Content-Type':_0x59ad7e['EcXvu']},'body':JSON['stringify'](_0xcb2026)});if(!_0x14c80b['ok']){if(_0x59ad7e['NyHaK'](_0x14c80b[_0x3f811c(0x1cb)],0x192)){const _0x13a0b3=await _0x14c80b[_0x3f811c(0x1b5)](),_0x57e787=_0x13a0b3['billingUrl']||'https://dashboard.ranger.net/billing';throw new Error((_0x13a0b3['message']||_0x59ad7e[_0x3f811c(0x1d1)])+_0x3f811c(0x1e3)+_0x57e787);}const _0x2b2958=await _0x14c80b['text']();throw new Error(_0x3f811c(0x1c6)+_0x2b2958);}return _0x14c80b['json']();}export async function listFeatures(_0x565803){const _0x17dae0=_0x4b33,_0x123b22={'nOhYE':function(_0x3f08e4){return _0x3f08e4();},'XHnLX':_0x17dae0(0x1d5),'hpiRD':'gitRepoUrl','MftEP':'gitBranch','aEuuk':_0x17dae0(0x1a5)},_0x3002f2=await _0x123b22[_0x17dae0(0x1cc)](getToken);if(!_0x3002f2)throw new Error(_0x123b22['XHnLX']);const _0x45105c=_0x123b22['nOhYE'](getApiBaseUrl),_0x34a120=new URLSearchParams();if(_0x565803?.['gitRepoUrl'])_0x34a120['set'](_0x123b22['hpiRD'],_0x565803[_0x17dae0(0x1e8)]);if(_0x565803?.['gitBranch'])_0x34a120['set'](_0x123b22['MftEP'],_0x565803[_0x17dae0(0x1dd)]);if(_0x565803?.[_0x17dae0(0x1af)])_0x34a120['set']('limit',_0x565803[_0x17dae0(0x1af)][_0x17dae0(0x1a6)]());if(_0x565803?.[_0x17dae0(0x1a5)])_0x34a120['set'](_0x123b22['aEuuk'],_0x565803[_0x17dae0(0x1a5)]['toString']());if(_0x565803?.[_0x17dae0(0x1aa)])_0x34a120[_0x17dae0(0x1b6)]('includeDeleted','true');const _0x114c3a=_0x45105c+'/api/v1/mcp/features'+(_0x34a120[_0x17dae0(0x1a6)]()?'?'+_0x34a120[_0x17dae0(0x1a6)]():''),_0xa41d28=await fetch(_0x114c3a,{'method':'GET','headers':{'Authorization':_0x17dae0(0x1c0)+_0x3002f2}});if(!_0xa41d28['ok']){const _0x1f2615=await _0xa41d28[_0x17dae0(0x1a8)]();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x1f2615);}return _0xa41d28['json']();}export async function getFeature(_0x31b8f4){const _0x2a9170=_0x4b33,_0x30263d={'uurMZ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','nwJZg':function(_0x22a33c){return _0x22a33c();},'jhNzO':function(_0x39e843,_0x12d16c,_0x4e326b){return _0x39e843(_0x12d16c,_0x4e326b);},'pJDMu':_0x2a9170(0x1b1)},_0x1c7e4c=await getToken();if(!_0x1c7e4c)throw new Error(_0x30263d['uurMZ']);const _0x100c73=_0x30263d['nwJZg'](getApiBaseUrl),_0x132d87=await _0x30263d['jhNzO'](fetch,_0x100c73+_0x2a9170(0x1e4)+_0x31b8f4,{'method':_0x30263d[_0x2a9170(0x1d4)],'headers':{'Authorization':_0x2a9170(0x1c0)+_0x1c7e4c}});if(!_0x132d87['ok']){const _0x31be78=await _0x132d87[_0x2a9170(0x1a8)]();throw new Error(_0x2a9170(0x1e7)+_0x31be78);}return _0x132d87[_0x2a9170(0x1b5)]();}export async function updateFeature(_0x93d28e,_0x22f3b9){const _0x4c98c9=_0x4b33,_0x1dc718={'RSqXs':function(_0x38324a){return _0x38324a();},'LETfR':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x4b329d=await _0x1dc718[_0x4c98c9(0x1b4)](getToken);if(!_0x4b329d)throw new Error(_0x1dc718[_0x4c98c9(0x1d7)]);const _0xc49946=getApiBaseUrl(),_0x33888b=await fetch(_0xc49946+_0x4c98c9(0x1e4)+_0x93d28e,{'method':'PATCH','headers':{'Authorization':_0x4c98c9(0x1c0)+_0x4b329d,'Content-Type':_0x4c98c9(0x1a2)},'body':JSON[_0x4c98c9(0x1e1)](_0x22f3b9)});if(!_0x33888b['ok']){const _0x184023=await _0x33888b[_0x4c98c9(0x1a8)]();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x184023);}return _0x33888b['json']();}export async function createChecklistItem(_0x13f52b,_0x4063a1,_0x5e169b){const _0x505846=_0x4b33,_0x44e3cf={'MxgNQ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','fNBXf':function(_0x3d3cae){return _0x3d3cae();}},_0x2c6518=await getToken();if(!_0x2c6518)throw new Error(_0x44e3cf['MxgNQ']);const _0x30b3cf=_0x44e3cf[_0x505846(0x1a9)](getApiBaseUrl),_0x238766=await fetch(_0x30b3cf+'/api/v1/mcp/features/'+_0x13f52b+'/checklist',{'method':_0x505846(0x1e9),'headers':{'Authorization':_0x505846(0x1c0)+_0x2c6518,'Content-Type':_0x505846(0x1a2)},'body':JSON['stringify']({'description':_0x4063a1,'position':_0x5e169b})});if(!_0x238766['ok']){const _0x2230b8=await _0x238766['text']();throw new Error(_0x505846(0x1e2)+_0x2230b8);}return _0x238766[_0x505846(0x1b5)]();}export async function updateChecklistItem(_0x2c7983,_0x2b27e5,_0x287fc6){const _0x5a1f15=_0x4b33,_0x55e736={'xvKMy':_0x5a1f15(0x1d5),'nOmEE':function(_0x270f02,_0x4575b5,_0x4bc969){return _0x270f02(_0x4575b5,_0x4bc969);},'rtFGj':'PATCH'};return withRetry(async()=>{const _0x5a91a4=_0x5a1f15,_0x198efa=await getToken();if(!_0x198efa)throw new Error(_0x55e736[_0x5a91a4(0x1cf)]);const _0x1f8fd8=getApiBaseUrl(),_0x4f7bcd=await _0x55e736['nOmEE'](fetch,_0x1f8fd8+_0x5a91a4(0x1e4)+_0x2c7983+'/checklist/'+_0x2b27e5,{'method':_0x55e736['rtFGj'],'headers':{'Authorization':_0x5a91a4(0x1c0)+_0x198efa,'Content-Type':'application/json'},'body':JSON[_0x5a91a4(0x1e1)](_0x287fc6)});if(!_0x4f7bcd['ok']){const _0x3ea0de=await _0x4f7bcd[_0x5a91a4(0x1a8)]();throw new Error(_0x5a91a4(0x1df)+_0x3ea0de);}return _0x4f7bcd[_0x5a91a4(0x1b5)]();},{'label':_0x5a1f15(0x1c1)});}export async function getFeatureReport(_0x416ad8){const _0x482d83=_0x4b33,_0x196b05={'GfnpA':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','BozNe':function(_0x44dfbb){return _0x44dfbb();},'sZLRX':function(_0xc29932,_0x15d59d,_0x4b1f7d){return _0xc29932(_0x15d59d,_0x4b1f7d);}},_0x27aa7e=await getToken();if(!_0x27aa7e)throw new Error(_0x196b05['GfnpA']);const _0x349760=_0x196b05[_0x482d83(0x1bc)](getApiBaseUrl),_0x44f121=await _0x196b05['sZLRX'](fetch,_0x349760+_0x482d83(0x1e4)+_0x416ad8+_0x482d83(0x1db),{'method':_0x482d83(0x1b1),'headers':{'Authorization':'Bearer\x20'+_0x27aa7e}});if(!_0x44f121['ok']){const _0x16a036=await _0x44f121[_0x482d83(0x1a8)]();throw new Error(_0x482d83(0x1ba)+_0x16a036);}return _0x44f121['json']();}export async function getFeatureReportMarkdown(_0x564d80,_0x30920a){const _0x129cd3=_0x4b33,_0x3de0c7={'XVxYB':function(_0x339784){return _0x339784();},'lZpet':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','yNXag':function(_0x528bbe,_0x1f7686){return _0x528bbe>_0x1f7686;},'KmTsr':function(_0x83051f,_0x3b0a44){return _0x83051f(_0x3b0a44);},'oYZbL':function(_0x18d1a8,_0x4590c6){return _0x18d1a8&&_0x4590c6;}},_0x15e53c=await _0x3de0c7[_0x129cd3(0x1d3)](getToken);if(!_0x15e53c)throw new Error(_0x3de0c7[_0x129cd3(0x1cd)]);const _0xe6f395=getApiBaseUrl(),_0x500f1d=new URLSearchParams(),_0x500eed=_0x3de0c7[_0x129cd3(0x1a7)](_0x30920a?.['itemIds']?.[_0x129cd3(0x1b2)]??0x0,0x0),_0x4c1056=_0x3de0c7['KmTsr'](Boolean,_0x30920a?.['sessionId']);_0x500eed&&_0x30920a?.[_0x129cd3(0x1c5)]&&_0x500f1d[_0x129cd3(0x1b6)]('itemIds',_0x30920a[_0x129cd3(0x1c5)][_0x129cd3(0x1b3)](','));_0x4c1056&&_0x30920a?.[_0x129cd3(0x1bd)]&&_0x500f1d['set']('sessionId',_0x30920a[_0x129cd3(0x1bd)]);_0x3de0c7[_0x129cd3(0x1ce)](!_0x500eed,!_0x4c1056)&&_0x30920a?.['style']&&_0x500f1d['set'](_0x129cd3(0x1c8),_0x30920a[_0x129cd3(0x1c8)]);const _0x1637b0=_0xe6f395+'/api/v1/mcp/features/'+_0x564d80+'/report/markdown',_0x273308=''+_0x1637b0+(_0x500f1d[_0x129cd3(0x1a6)]()?'?'+_0x500f1d[_0x129cd3(0x1a6)]():''),_0x4b009f=await fetch(_0x273308,{'method':_0x129cd3(0x1b1),'headers':{'Authorization':_0x129cd3(0x1c0)+_0x15e53c}});if(!_0x4b009f['ok']){const _0x17d58e=await _0x4b009f[_0x129cd3(0x1a8)]();throw new Error(_0x129cd3(0x1dc)+_0x17d58e);}return _0x4b009f[_0x129cd3(0x1a8)]();}export async function listFeatureSessions(_0x5cc977){const _0xe2684a=_0x4b33,_0x2a5478={'bXeqY':function(_0x2fbb59){return _0x2fbb59();}},_0x274732=await getToken();if(!_0x274732)throw new Error(_0xe2684a(0x1d5));const _0x13aeef=_0x2a5478['bXeqY'](getApiBaseUrl),_0x15790d=await fetch(_0x13aeef+_0xe2684a(0x1e4)+_0x5cc977+_0xe2684a(0x1de),{'method':_0xe2684a(0x1b1),'headers':{'Authorization':'Bearer\x20'+_0x274732}});if(!_0x15790d['ok']){const _0x1e14cc=await _0x15790d[_0xe2684a(0x1a8)]();throw new Error(_0xe2684a(0x1e0)+_0x1e14cc);}return _0x15790d['json']();}export async function startSession(_0x433418,_0x55e4c9){const _0x3abb65=_0x4b33,_0x13e018={'BdsBk':function(_0x501eb1){return _0x501eb1();},'tMzfF':function(_0x2d8318,_0x438823,_0x234706){return _0x2d8318(_0x438823,_0x234706);}},_0xadb8ab=await _0x13e018[_0x3abb65(0x1c3)](getToken);if(!_0xadb8ab)throw new Error(_0x3abb65(0x1d5));const _0x28aa89=getApiBaseUrl(),_0x20ce7b=await _0x13e018['tMzfF'](fetch,_0x28aa89+_0x3abb65(0x1e4)+_0x433418+'/sessions/'+_0x55e4c9+_0x3abb65(0x1e5),{'method':_0x3abb65(0x1e9),'headers':{'Authorization':'Bearer\x20'+_0xadb8ab}});if(!_0x20ce7b['ok']){const _0x1f524f=await _0x20ce7b['text']();throw new Error(_0x3abb65(0x1d8)+_0x1f524f);}return _0x20ce7b['json']();}export async function concludeSession(_0x35bcdc,_0x10a791){const _0x3ce610=_0x4b33,_0x10669f={'lyhfO':function(_0x43dd44){return _0x43dd44();},'yQSbi':function(_0x57ab15,_0x312856,_0x26511f){return _0x57ab15(_0x312856,_0x26511f);},'dTGal':_0x3ce610(0x1e9)},_0x18b71a=await _0x10669f[_0x3ce610(0x1ea)](getToken);if(!_0x18b71a)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1ab73b=_0x10669f['lyhfO'](getApiBaseUrl),_0x4962f7=await _0x10669f['yQSbi'](fetch,_0x1ab73b+'/api/v1/mcp/features/'+_0x35bcdc+_0x3ce610(0x1ac)+_0x10a791+_0x3ce610(0x1d6),{'method':_0x10669f[_0x3ce610(0x1ae)],'headers':{'Authorization':_0x3ce610(0x1c0)+_0x18b71a}});if(!_0x4962f7['ok']){const _0x37d415=await _0x4962f7[_0x3ce610(0x1a8)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x37d415);}return _0x4962f7['json']();}export async function getActionItems(_0x5edf6a){const _0x5d5764=_0x4b33,_0x32c44b={'RjSUY':_0x5d5764(0x1d5),'CbMaQ':'GET'},_0x1b93c1=await getToken();if(!_0x1b93c1)throw new Error(_0x32c44b['RjSUY']);const _0x1a1c91=getApiBaseUrl(),_0x5d5b7d=await fetch(_0x1a1c91+_0x5d5764(0x1e4)+_0x5edf6a+'/action-items',{'method':_0x32c44b[_0x5d5764(0x1a0)],'headers':{'Authorization':'Bearer\x20'+_0x1b93c1}});if(!_0x5d5b7d['ok']){const _0x4d090a=await _0x5d5b7d[_0x5d5764(0x1a8)]();throw new Error(_0x5d5764(0x1c7)+_0x4d090a);}return _0x5d5b7d[_0x5d5764(0x1b5)]();}export async function getItemFeedback(_0x54ed7d,_0xf4cd4a){const _0x6ee0ff=_0x4b33,_0x1dbf12={'PSfBr':function(_0x2770d9){return _0x2770d9();},'TskUU':function(_0x3c076b,_0x81baf9,_0x1c2dc3){return _0x3c076b(_0x81baf9,_0x1c2dc3);},'aVmFU':_0x6ee0ff(0x1b1)},_0x17a8d9=await _0x1dbf12['PSfBr'](getToken);if(!_0x17a8d9)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x23b20d=_0x1dbf12['PSfBr'](getApiBaseUrl),_0x4c205e=await _0x1dbf12['TskUU'](fetch,_0x23b20d+_0x6ee0ff(0x1e4)+_0x54ed7d+'/checklist-items/'+_0xf4cd4a+_0x6ee0ff(0x1a1),{'method':_0x1dbf12['aVmFU'],'headers':{'Authorization':_0x6ee0ff(0x1c0)+_0x17a8d9}});if(!_0x4c205e['ok']){const _0x4ad4bd=await _0x4c205e[_0x6ee0ff(0x1a8)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x4ad4bd);}return _0x4c205e[_0x6ee0ff(0x1b5)]();}export async function markCommentsAddressed(_0x1a96a1,_0x3039db,_0x104d9b){const _0x2ee252=_0x4b33,_0xd1d68={'aHjjl':function(_0x1f2ad5){return _0x1f2ad5();},'vkYJE':function(_0x202c01){return _0x202c01();}},_0x292f50=await _0xd1d68['aHjjl'](getToken);if(!_0x292f50)throw new Error(_0x2ee252(0x1d5));const _0x2a7188=_0xd1d68['vkYJE'](getApiBaseUrl),_0x109c6a=await fetch(_0x2a7188+'/api/v1/mcp/features/'+_0x1a96a1+'/comments/address',{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x292f50,'Content-Type':'application/json'},'body':JSON['stringify']({'checklistItemId':_0x3039db,'commentIds':_0x104d9b})});if(!_0x109c6a['ok']){const _0x1933ec=await _0x109c6a[_0x2ee252(0x1a8)]();throw new Error(_0x2ee252(0x1d0)+_0x1933ec);}}export async function softDeleteFeature(_0x4ba749){const _0x12b1bf=_0x4b33,_0x56f974={'KaAfF':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','KoIcl':function(_0x269361){return _0x269361();},'usLwv':function(_0x689f3f,_0x2945d8,_0x47c3b3){return _0x689f3f(_0x2945d8,_0x47c3b3);},'okOJd':'DELETE'},_0x3c7c02=await getToken();if(!_0x3c7c02)throw new Error(_0x56f974[_0x12b1bf(0x1c2)]);const _0x16de5d=_0x56f974[_0x12b1bf(0x1bb)](getApiBaseUrl),_0xc2754c=await _0x56f974[_0x12b1bf(0x1d9)](fetch,_0x16de5d+'/api/v1/mcp/features/'+_0x4ba749,{'method':_0x56f974[_0x12b1bf(0x1bf)],'headers':{'Authorization':'Bearer\x20'+_0x3c7c02}});if(!_0xc2754c['ok']){const _0x5bda56=await _0xc2754c['text']();throw new Error(_0x12b1bf(0x19f)+_0x5bda56);}}function _0x399d(){const _0x4b654b=['14XrNxuz','jnJnB','offset','toString','yNXag','text','fNBXf','includeDeleted','981528ZBVByP','/sessions/','19212QRKmAq','dTGal','limit','724280opSbWW','GET','length','join','RSqXs','json','set','641727FIlioR','271985VgrIao','18GaWUYM','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','KoIcl','BozNe','sessionId','VCXad','okOJd','Bearer\x20','updateChecklistItem','KaAfF','BdsBk','16vVzpdz','itemIds','Failed\x20to\x20create\x20feature\x20review:\x20','Failed\x20to\x20get\x20action\x20items:\x20','style','/restore','22lHWhwJ','status','nOhYE','lZpet','oYZbL','xvKMy','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','KlBax','194530KizlbG','XVxYB','pJDMu','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','/conclude','LETfR','Failed\x20to\x20start\x20session:\x20','usLwv','/api/v1/mcp/features','/report','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','gitBranch','/sessions','Failed\x20to\x20update\x20scenario:\x20','Failed\x20to\x20list\x20sessions:\x20','stringify','Failed\x20to\x20create\x20scenario:\x20','\x0a\x0aUpgrade\x20your\x20plan:\x20','/api/v1/mcp/features/','/start','7974296kXMCPl','Failed\x20to\x20get\x20feature\x20review:\x20','gitRepoUrl','POST','lyhfO','Failed\x20to\x20delete\x20feature\x20review:\x20','CbMaQ','/feedback','application/json'];_0x399d=function(){return _0x4b654b;};return _0x399d();}export async function restoreFeature(_0xb1cfd4){const _0x27c4e6=_0x4b33,_0x11d071={'VCXad':function(_0x27f722){return _0x27f722();},'jnJnB':_0x27c4e6(0x1e9)},_0x171326=await _0x11d071[_0x27c4e6(0x1be)](getToken);if(!_0x171326)throw new Error(_0x27c4e6(0x1d5));const _0x21a007=getApiBaseUrl(),_0x2c3b65=await fetch(_0x21a007+_0x27c4e6(0x1e4)+_0xb1cfd4+_0x27c4e6(0x1c9),{'method':_0x11d071[_0x27c4e6(0x1a4)],'headers':{'Authorization':_0x27c4e6(0x1c0)+_0x171326}});if(!_0x2c3b65['ok']){const _0x5f0bac=await _0x2c3b65['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x5f0bac);}}
|
|
1
|
+
(function(_0x240a70,_0x134386){const _0x241af3=_0x3644,_0x331dc2=_0x240a70();while(!![]){try{const _0x3aaaa0=-parseInt(_0x241af3(0x12c))/0x1*(parseInt(_0x241af3(0x13d))/0x2)+-parseInt(_0x241af3(0x112))/0x3+parseInt(_0x241af3(0x14c))/0x4+parseInt(_0x241af3(0x10a))/0x5+-parseInt(_0x241af3(0x144))/0x6+-parseInt(_0x241af3(0x149))/0x7+parseInt(_0x241af3(0x134))/0x8*(parseInt(_0x241af3(0x13b))/0x9);if(_0x3aaaa0===_0x134386)break;else _0x331dc2['push'](_0x331dc2['shift']());}catch(_0x3a2005){_0x331dc2['push'](_0x331dc2['shift']());}}}(_0xa016,0x86f59));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';function _0xa016(){const _0x68a4c0=['json','gitRepoUrl','fztVF','RaPET','Failed\x20to\x20start\x20session:\x20','/start','CesIc','true','join','100431cMOyyI','/api/v1/mcp/features/','BLiap','mqXJu','GET','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','iHCjS','AOIgF','104haLIuX','style','Hxvnr','message','wVFIb','limit','JcaiZ','588906VrBTdW','stringify','2KAiCzZ','updateChecklistItem','aVqDm','/api/v1/mcp/features','mfhuM','POST','sessionId','1832346STrfLH','sjDBF','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','/report','itemIds','1000867KmSFaX','set','IMaBW','418956edKDyU','Feature\x20limit\x20exceeded','MPNoh','text','toString','1220990avjGUk','Bearer\x20','bNakw','application/json','VNLqz','/checklist','yFCqv','szGPC','293949EhGGau','Failed\x20to\x20get\x20item\x20feedback:\x20','includeDeleted','Failed\x20to\x20list\x20sessions:\x20','TthPN','https://dashboard.ranger.net/billing','PATCH','/sessions/','VTQov','gitBranch','WhZDB','QGmoC','/checklist-items/','TYeYO','csqeR','billingUrl','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'];_0xa016=function(){return _0x68a4c0;};return _0xa016();}export async function createFeature(_0x2332a7){const _0x421291=_0x3644,_0x5cefe5={'KJaCw':function(_0x3071dd){return _0x3071dd();},'csqeR':'POST','WhZDB':_0x421291(0x14d)},_0x3d186a=await getToken();if(!_0x3d186a)throw new Error(_0x421291(0x146));const _0x3fd77e=_0x5cefe5['KJaCw'](getApiBaseUrl),_0x35d101=await fetch(_0x3fd77e+_0x421291(0x140),{'method':_0x5cefe5[_0x421291(0x120)],'headers':{'Authorization':_0x421291(0x10b)+_0x3d186a,'Content-Type':_0x421291(0x10d)},'body':JSON[_0x421291(0x13c)](_0x2332a7)});if(!_0x35d101['ok']){if(_0x35d101['status']===0x192){const _0x2f601b=await _0x35d101['json'](),_0x21016c=_0x2f601b[_0x421291(0x121)]||_0x421291(0x117);throw new Error((_0x2f601b[_0x421291(0x137)]||_0x5cefe5[_0x421291(0x11c)])+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x21016c);}const _0xdb2cfe=await _0x35d101['text']();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0xdb2cfe);}return _0x35d101[_0x421291(0x123)]();}export async function listFeatures(_0x7404d6){const _0x327522=_0x3644,_0xc05eff={'fztVF':_0x327522(0x146),'bAxJC':function(_0x82c3e3){return _0x82c3e3();},'TYeYO':_0x327522(0x11b),'Hxvnr':'limit','vpMVq':'offset','lEyfg':function(_0x471ab1,_0x33ff1e,_0x3edbb1){return _0x471ab1(_0x33ff1e,_0x3edbb1);},'LVvlt':'GET'},_0x38c671=await getToken();if(!_0x38c671)throw new Error(_0xc05eff[_0x327522(0x125)]);const _0x112412=_0xc05eff['bAxJC'](getApiBaseUrl),_0x4c2a85=new URLSearchParams();if(_0x7404d6?.[_0x327522(0x124)])_0x4c2a85['set']('gitRepoUrl',_0x7404d6[_0x327522(0x124)]);if(_0x7404d6?.[_0x327522(0x11b)])_0x4c2a85[_0x327522(0x14a)](_0xc05eff[_0x327522(0x11f)],_0x7404d6[_0x327522(0x11b)]);if(_0x7404d6?.[_0x327522(0x139)])_0x4c2a85[_0x327522(0x14a)](_0xc05eff[_0x327522(0x136)],_0x7404d6[_0x327522(0x139)]['toString']());if(_0x7404d6?.['offset'])_0x4c2a85[_0x327522(0x14a)](_0xc05eff['vpMVq'],_0x7404d6['offset'][_0x327522(0x109)]());if(_0x7404d6?.[_0x327522(0x114)])_0x4c2a85[_0x327522(0x14a)](_0x327522(0x114),_0x327522(0x12a));const _0x1a45f4=_0x112412+'/api/v1/mcp/features'+(_0x4c2a85['toString']()?'?'+_0x4c2a85['toString']():''),_0x1ccac5=await _0xc05eff['lEyfg'](fetch,_0x1a45f4,{'method':_0xc05eff['LVvlt'],'headers':{'Authorization':'Bearer\x20'+_0x38c671}});if(!_0x1ccac5['ok']){const _0x44cd38=await _0x1ccac5[_0x327522(0x14f)]();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x44cd38);}return _0x1ccac5[_0x327522(0x123)]();}export async function getFeature(_0x345c5e){const _0x240568=_0x3644,_0x1a22b5={'eNDcg':function(_0x1145f5){return _0x1145f5();}},_0x28a811=await getToken();if(!_0x28a811)throw new Error(_0x240568(0x146));const _0x474475=_0x1a22b5['eNDcg'](getApiBaseUrl),_0x18690c=await fetch(_0x474475+'/api/v1/mcp/features/'+_0x345c5e,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x28a811}});if(!_0x18690c['ok']){const _0x27f402=await _0x18690c[_0x240568(0x14f)]();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x27f402);}return _0x18690c['json']();}export async function updateFeature(_0x492ef4,_0x5a63f8){const _0x3cf137=_0x3644,_0x419c86={'AOIgF':function(_0x33d105){return _0x33d105();},'wVFIb':function(_0x4ec28b,_0x51b787,_0x4bf429){return _0x4ec28b(_0x51b787,_0x4bf429);},'JcaiZ':_0x3cf137(0x118),'fBDge':'application/json'},_0x597ef9=await getToken();if(!_0x597ef9)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3a949a=_0x419c86[_0x3cf137(0x133)](getApiBaseUrl),_0x4cf1ff=await _0x419c86[_0x3cf137(0x138)](fetch,_0x3a949a+_0x3cf137(0x12d)+_0x492ef4,{'method':_0x419c86[_0x3cf137(0x13a)],'headers':{'Authorization':'Bearer\x20'+_0x597ef9,'Content-Type':_0x419c86['fBDge']},'body':JSON['stringify'](_0x5a63f8)});if(!_0x4cf1ff['ok']){const _0x3efaae=await _0x4cf1ff['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x3efaae);}return _0x4cf1ff['json']();}export async function createChecklistItem(_0x344993,_0x3bfac8,_0x4c8654){const _0x27e3bb=_0x3644,_0x418fea={'OoweJ':function(_0x49c84c){return _0x49c84c();},'yFCqv':'POST','jTsVv':_0x27e3bb(0x10d)},_0xb5feb9=await getToken();if(!_0xb5feb9)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xeda704=_0x418fea['OoweJ'](getApiBaseUrl),_0x55ae98=await fetch(_0xeda704+_0x27e3bb(0x12d)+_0x344993+_0x27e3bb(0x10f),{'method':_0x418fea[_0x27e3bb(0x110)],'headers':{'Authorization':'Bearer\x20'+_0xb5feb9,'Content-Type':_0x418fea['jTsVv']},'body':JSON[_0x27e3bb(0x13c)]({'description':_0x3bfac8,'position':_0x4c8654})});if(!_0x55ae98['ok']){const _0xb17ae8=await _0x55ae98['text']();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0xb17ae8);}return _0x55ae98['json']();}export async function updateChecklistItem(_0x26f759,_0x345bb5,_0x5b20f3){const _0x3c0657=_0x3644,_0x3a58d0={'aVqDm':function(_0x22ad94){return _0x22ad94();},'BLiap':_0x3c0657(0x146),'NUKcf':'application/json','szGPC':function(_0x51591c,_0x35abf9,_0x45acda){return _0x51591c(_0x35abf9,_0x45acda);}};return _0x3a58d0[_0x3c0657(0x111)](withRetry,async()=>{const _0x452c96=_0x3c0657,_0x29c01d=await _0x3a58d0['aVqDm'](getToken);if(!_0x29c01d)throw new Error(_0x3a58d0[_0x452c96(0x12e)]);const _0x33b411=_0x3a58d0[_0x452c96(0x13f)](getApiBaseUrl),_0x2341de=await fetch(_0x33b411+'/api/v1/mcp/features/'+_0x26f759+'/checklist/'+_0x345bb5,{'method':'PATCH','headers':{'Authorization':_0x452c96(0x10b)+_0x29c01d,'Content-Type':_0x3a58d0['NUKcf']},'body':JSON[_0x452c96(0x13c)](_0x5b20f3)});if(!_0x2341de['ok']){const _0x1b0b86=await _0x2341de['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x1b0b86);}return _0x2341de['json']();},{'label':_0x3c0657(0x13e)});}export async function getFeatureReport(_0x443477){const _0x3ccd1f=_0x3644,_0x668776={'sjDBF':function(_0x7ed73e){return _0x7ed73e();},'VTQov':function(_0xffa805,_0x21092c,_0x2b417e){return _0xffa805(_0x21092c,_0x2b417e);}},_0x361c58=await getToken();if(!_0x361c58)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1324cb=_0x668776[_0x3ccd1f(0x145)](getApiBaseUrl),_0x4c2f75=await _0x668776[_0x3ccd1f(0x11a)](fetch,_0x1324cb+_0x3ccd1f(0x12d)+_0x443477+_0x3ccd1f(0x147),{'method':_0x3ccd1f(0x130),'headers':{'Authorization':'Bearer\x20'+_0x361c58}});if(!_0x4c2f75['ok']){const _0x4db777=await _0x4c2f75[_0x3ccd1f(0x14f)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x4db777);}return _0x4c2f75['json']();}export async function getFeatureReportMarkdown(_0x41e031,_0x28f7db){const _0x13a289=_0x3644,_0x20c6dc={'IMaBW':function(_0x35f187){return _0x35f187();},'bNakw':function(_0x442d2c,_0x462c70){return _0x442d2c>_0x462c70;},'MPNoh':function(_0x277ffd,_0x41aa7f){return _0x277ffd(_0x41aa7f);},'CesIc':'itemIds','TthPN':_0x13a289(0x143),'arisc':function(_0xf2f7e1,_0x2d9650){return _0xf2f7e1&&_0x2d9650;},'VNLqz':'style','MpBzB':function(_0x332626,_0xb07c69,_0x4c587f){return _0x332626(_0xb07c69,_0x4c587f);}},_0x12c2be=await getToken();if(!_0x12c2be)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2c3f8e=_0x20c6dc[_0x13a289(0x14b)](getApiBaseUrl),_0x4a9840=new URLSearchParams(),_0x390dcc=_0x20c6dc[_0x13a289(0x10c)](_0x28f7db?.[_0x13a289(0x148)]?.['length']??0x0,0x0),_0x1fd076=_0x20c6dc[_0x13a289(0x14e)](Boolean,_0x28f7db?.['sessionId']);_0x390dcc&&_0x28f7db?.[_0x13a289(0x148)]&&_0x4a9840[_0x13a289(0x14a)](_0x20c6dc[_0x13a289(0x129)],_0x28f7db['itemIds'][_0x13a289(0x12b)](','));_0x1fd076&&_0x28f7db?.['sessionId']&&_0x4a9840[_0x13a289(0x14a)](_0x20c6dc[_0x13a289(0x116)],_0x28f7db[_0x13a289(0x143)]);_0x20c6dc['arisc'](!_0x390dcc,!_0x1fd076)&&_0x28f7db?.['style']&&_0x4a9840['set'](_0x20c6dc[_0x13a289(0x10e)],_0x28f7db[_0x13a289(0x135)]);const _0xe0d173=_0x2c3f8e+_0x13a289(0x12d)+_0x41e031+'/report/markdown',_0x15a320=''+_0xe0d173+(_0x4a9840[_0x13a289(0x109)]()?'?'+_0x4a9840['toString']():''),_0x7b69be=await _0x20c6dc['MpBzB'](fetch,_0x15a320,{'method':_0x13a289(0x130),'headers':{'Authorization':'Bearer\x20'+_0x12c2be}});if(!_0x7b69be['ok']){const _0x51aea3=await _0x7b69be['text']();throw new Error(_0x13a289(0x122)+_0x51aea3);}return _0x7b69be['text']();}export async function listFeatureSessions(_0x3cf303){const _0x474f75=_0x3644,_0x232f32={'QGmoC':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x184f79=await getToken();if(!_0x184f79)throw new Error(_0x232f32[_0x474f75(0x11d)]);const _0x5beff5=getApiBaseUrl(),_0x50a197=await fetch(_0x5beff5+'/api/v1/mcp/features/'+_0x3cf303+'/sessions',{'method':'GET','headers':{'Authorization':_0x474f75(0x10b)+_0x184f79}});if(!_0x50a197['ok']){const _0x1676a9=await _0x50a197[_0x474f75(0x14f)]();throw new Error(_0x474f75(0x115)+_0x1676a9);}return _0x50a197[_0x474f75(0x123)]();}function _0x3644(_0x44287e,_0xf8a9a1){_0x44287e=_0x44287e-0x109;const _0xa01612=_0xa016();let _0x3644dc=_0xa01612[_0x44287e];return _0x3644dc;}export async function startSession(_0x2d0468,_0x2ecad9){const _0x21541d=_0x3644,_0x3773c4={'mLuLP':function(_0x439a58,_0x1f02f1,_0x5bb9c2){return _0x439a58(_0x1f02f1,_0x5bb9c2);}},_0x47a3b3=await getToken();if(!_0x47a3b3)throw new Error(_0x21541d(0x146));const _0x42650e=getApiBaseUrl(),_0x3a73d7=await _0x3773c4['mLuLP'](fetch,_0x42650e+'/api/v1/mcp/features/'+_0x2d0468+_0x21541d(0x119)+_0x2ecad9+_0x21541d(0x128),{'method':_0x21541d(0x142),'headers':{'Authorization':'Bearer\x20'+_0x47a3b3}});if(!_0x3a73d7['ok']){const _0x190473=await _0x3a73d7[_0x21541d(0x14f)]();throw new Error(_0x21541d(0x127)+_0x190473);}return _0x3a73d7[_0x21541d(0x123)]();}export async function concludeSession(_0x4a7fa3,_0x562053){const _0xdfae1b=_0x3644,_0x9715d7={'TslbN':function(_0x86a8aa){return _0x86a8aa();},'pSodq':function(_0x566bec){return _0x566bec();}},_0x3379d6=await _0x9715d7['TslbN'](getToken);if(!_0x3379d6)throw new Error(_0xdfae1b(0x146));const _0x5d09aa=_0x9715d7['pSodq'](getApiBaseUrl),_0x13b17d=await fetch(_0x5d09aa+_0xdfae1b(0x12d)+_0x4a7fa3+_0xdfae1b(0x119)+_0x562053+'/conclude',{'method':_0xdfae1b(0x142),'headers':{'Authorization':'Bearer\x20'+_0x3379d6}});if(!_0x13b17d['ok']){const _0x21a892=await _0x13b17d['text']();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x21a892);}return _0x13b17d['json']();}export async function getActionItems(_0x5d7cd8){const _0x181ccd=_0x3644,_0x23dfe4={'CDgFP':function(_0x1465ed){return _0x1465ed();},'RaPET':function(_0x466387,_0x266a8e,_0x493350){return _0x466387(_0x266a8e,_0x493350);},'YzTMN':_0x181ccd(0x130)},_0x38474e=await _0x23dfe4['CDgFP'](getToken);if(!_0x38474e)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xd1b2b1=getApiBaseUrl(),_0x40826a=await _0x23dfe4[_0x181ccd(0x126)](fetch,_0xd1b2b1+'/api/v1/mcp/features/'+_0x5d7cd8+'/action-items',{'method':_0x23dfe4['YzTMN'],'headers':{'Authorization':'Bearer\x20'+_0x38474e}});if(!_0x40826a['ok']){const _0x4d756f=await _0x40826a['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x4d756f);}return _0x40826a[_0x181ccd(0x123)]();}export async function getItemFeedback(_0x13badd,_0x5cad66){const _0x2a54bd=_0x3644,_0x5243ba={'iHCjS':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','mfhuM':function(_0x564dcb,_0x60b16e,_0x1834e2){return _0x564dcb(_0x60b16e,_0x1834e2);}},_0x28840a=await getToken();if(!_0x28840a)throw new Error(_0x5243ba[_0x2a54bd(0x132)]);const _0x1f991c=getApiBaseUrl(),_0x59d76e=await _0x5243ba[_0x2a54bd(0x141)](fetch,_0x1f991c+_0x2a54bd(0x12d)+_0x13badd+_0x2a54bd(0x11e)+_0x5cad66+'/feedback',{'method':_0x2a54bd(0x130),'headers':{'Authorization':'Bearer\x20'+_0x28840a}});if(!_0x59d76e['ok']){const _0x5c6794=await _0x59d76e['text']();throw new Error(_0x2a54bd(0x113)+_0x5c6794);}return _0x59d76e['json']();}export async function markCommentsAddressed(_0x22cb1b,_0xafbc74,_0x2b0c6b){const _0x4bd2a5=_0x3644,_0x28e58e={'mqXJu':function(_0x5714ca){return _0x5714ca();},'frlJZ':'application/json'},_0x55496b=await getToken();if(!_0x55496b)throw new Error(_0x4bd2a5(0x146));const _0x4bd4b8=_0x28e58e[_0x4bd2a5(0x12f)](getApiBaseUrl),_0x2b6616=await fetch(_0x4bd4b8+'/api/v1/mcp/features/'+_0x22cb1b+'/comments/address',{'method':_0x4bd2a5(0x142),'headers':{'Authorization':_0x4bd2a5(0x10b)+_0x55496b,'Content-Type':_0x28e58e['frlJZ']},'body':JSON[_0x4bd2a5(0x13c)]({'checklistItemId':_0xafbc74,'commentIds':_0x2b0c6b})});if(!_0x2b6616['ok']){const _0x19db9a=await _0x2b6616[_0x4bd2a5(0x14f)]();throw new Error(_0x4bd2a5(0x131)+_0x19db9a);}}export async function softDeleteFeature(_0x3ec56e){const _0x36607a=_0x3644,_0x285400=await getToken();if(!_0x285400)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x44424c=getApiBaseUrl(),_0x1f34ca=await fetch(_0x44424c+'/api/v1/mcp/features/'+_0x3ec56e,{'method':'DELETE','headers':{'Authorization':'Bearer\x20'+_0x285400}});if(!_0x1f34ca['ok']){const _0xf566d2=await _0x1f34ca[_0x36607a(0x14f)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0xf566d2);}}export async function restoreFeature(_0x1d6253){const _0x4b3718=_0x3644,_0x2b307a={'hTXxa':function(_0x4d9182){return _0x4d9182();},'pFyfL':function(_0x1c9aa8,_0x19e57c,_0x1c4e28){return _0x1c9aa8(_0x19e57c,_0x1c4e28);}},_0x4f7d7d=await getToken();if(!_0x4f7d7d)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2288ef=_0x2b307a['hTXxa'](getApiBaseUrl),_0x44402a=await _0x2b307a['pFyfL'](fetch,_0x2288ef+'/api/v1/mcp/features/'+_0x1d6253+'/restore',{'method':_0x4b3718(0x142),'headers':{'Authorization':'Bearer\x20'+_0x4f7d7d}});if(!_0x44402a['ok']){const _0x364f6a=await _0x44402a['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x364f6a);}}
|