@ranger-testing/ranger-cli 3.1.7-alpha.a5be4ca-60 → 3.1.7-alpha.e26cd28-63
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/actors.js +1 -0
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +5 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x25ed96=_0xdb1b;(function(_0x798f6f,_0xbfc016){const _0x1ce422=_0xdb1b,_0x516fc7=_0x798f6f();while(!![]){try{const _0x51b9cc=parseInt(_0x1ce422(0x1bb))/0x1+parseInt(_0x1ce422(0x1ee))/0x2+-parseInt(_0x1ce422(0x188))/0x3*(parseInt(_0x1ce422(0x1fe))/0x4)+-parseInt(_0x1ce422(0x192))/0x5*(-parseInt(_0x1ce422(0x1c6))/0x6)+-parseInt(_0x1ce422(0x1aa))/0x7+parseInt(_0x1ce422(0x1e7))/0x8*(parseInt(_0x1ce422(0x1b8))/0x9)+-parseInt(_0x1ce422(0x1ff))/0xa;if(_0x51b9cc===_0xbfc016)break;else _0x516fc7['push'](_0x516fc7['shift']());}catch(_0xb237cb){_0x516fc7['push'](_0x516fc7['shift']());}}}(_0xa0f0,0xec11d));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x226ce7 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isBareLocalhost,isCachedSessionLive,isInteractive,needsTunnel,orderLoginDomains,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x93010a){const _0x4b7259=_0xdb1b;try{return new URL(_0x93010a)[_0x4b7259(0x184)];}catch{return _0x4b7259(0x1b4);}}function errorMessageForTelemetry(_0x1d16f2){const _0x20037f=_0xdb1b,_0x56855e={'ZgwII':function(_0x319d3c,_0x46d946){return _0x319d3c instanceof _0x46d946;}};return _0x56855e['ZgwII'](_0x1d16f2,Error)?_0x1d16f2[_0x20037f(0x196)]:undefined;}function trackBridgeEvent(_0x22bbbb,_0x3d7ba7){const _0x16d40e=_0xdb1b,_0x4f0b1b={'wonEv':'tunnel_bridge_event','BZihN':function(_0x3be5eb,_0x596592){return _0x3be5eb===_0x596592;},'IrgCD':'tunnel_error','ClgyF':'local_ws_error'};if(!_0x22bbbb)return;const _0x275220={'tunnelSessionId':_0x3d7ba7['sessionId'],'tunnelEventType':_0x3d7ba7['type'],'connectionId':_0x3d7ba7['connectionId'],'code':_0x3d7ba7['code'],'reason':_0x3d7ba7['reason'],'error':_0x3d7ba7[_0x16d40e(0x21a)],'elapsedMs':_0x3d7ba7[_0x16d40e(0x175)],'activeLocalConnections':_0x3d7ba7['activeLocalConnections'],'pendingLocalConnections':_0x3d7ba7[_0x16d40e(0x18e)]};_0x22bbbb[_0x16d40e(0x1da)](_0x4f0b1b['wonEv'],_0x275220),(_0x4f0b1b[_0x16d40e(0x165)](_0x3d7ba7[_0x16d40e(0x17b)],_0x4f0b1b[_0x16d40e(0x16a)])||_0x4f0b1b['BZihN'](_0x3d7ba7[_0x16d40e(0x17b)],_0x4f0b1b[_0x16d40e(0x1e5)]))&&void _0x22bbbb[_0x16d40e(0x214)]('tunnel_bridge',new Error(_0x3d7ba7['error']??_0x3d7ba7[_0x16d40e(0x17b)]),_0x275220);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x59618d=await getToken();if(!_0x59618d)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');return _0x59618d;}async function apiRequest(_0x45924d,_0x18e67e={}){const _0x663edd=_0xdb1b,_0x2a0329={'eRwOL':function(_0x5a6749){return _0x5a6749();},'ozmxI':function(_0x4429e2,_0x3d1fd9,_0x358fed){return _0x4429e2(_0x3d1fd9,_0x358fed);},'chhYe':function(_0x1883d9,_0x3cff81){return _0x1883d9===_0x3cff81;},'URTcs':'string'},_0xb3e008=await _0x2a0329['eRwOL'](requireToken),_0x44e4ce=getApiBaseUrl(),_0x2d5793=await _0x2a0329[_0x663edd(0x1c7)](fetch,''+_0x44e4ce+_0x45924d,{..._0x18e67e,'headers':{'Authorization':_0x663edd(0x166)+_0xb3e008,'Content-Type':_0x663edd(0x16e),..._0x18e67e[_0x663edd(0x19f)]??{}}});if(!_0x2d5793['ok']){let _0x21d069='',_0x49f3ae;try{const _0x4599d6=await _0x2d5793[_0x663edd(0x1f6)](),_0x134a6f=(_0x2a0329[_0x663edd(0x1c5)](typeof _0x4599d6['error'],_0x663edd(0x1ca))?_0x4599d6[_0x663edd(0x21a)]:undefined)??JSON['stringify'](_0x4599d6);_0x21d069=_0x134a6f;typeof _0x4599d6[_0x663edd(0x1c2)]===_0x2a0329['URTcs']&&_0x4599d6[_0x663edd(0x1c2)]&&(_0x21d069=_0x21d069+'\x0a'+_0x4599d6[_0x663edd(0x1c2)]);if(_0x2a0329['chhYe'](typeof _0x4599d6[_0x663edd(0x1b0)],'string'))_0x49f3ae=_0x4599d6[_0x663edd(0x1b0)];}catch{_0x21d069=_0x2d5793[_0x663edd(0x170)];}throw new ApiError('API\x20request\x20'+_0x45924d+_0x663edd(0x190)+_0x2d5793[_0x663edd(0x17a)]+'):\x20'+_0x21d069,_0x2d5793[_0x663edd(0x17a)],_0x21d069,_0x49f3ae);}if(_0x2d5793[_0x663edd(0x17a)]===0xcc)return undefined;return _0x2d5793['json']();}export class ApiError extends Error{['status'];['detail'];[_0x25ed96(0x1b0)];constructor(_0x486244,_0x8239fe,_0xb70317,_0xe93b9b){const _0x5ba6bb=_0x25ed96,_0x1f25ac={'YQtXB':_0x5ba6bb(0x174)};super(_0x486244),this[_0x5ba6bb(0x17a)]=_0x8239fe,this['detail']=_0xb70317,this[_0x5ba6bb(0x1b0)]=_0xe93b9b,this[_0x5ba6bb(0x1a3)]=_0x1f25ac['YQtXB'];}}export async function fetchCloudProfile(_0x330146){const _0x2f869e=_0x25ed96,_0x3527ae={'UnOgg':function(_0x41df68,_0x3c87f3){return _0x41df68 instanceof _0x3c87f3;},'bJmWU':function(_0x5d1ce0,_0x7ac9cf){return _0x5d1ce0===_0x7ac9cf;}};try{return await apiRequest(_0x2f869e(0x1f5)+encodeURIComponent(_0x330146));}catch(_0x5accf9){if(_0x3527ae[_0x2f869e(0x1d9)](_0x5accf9,ApiError)&&_0x3527ae[_0x2f869e(0x168)](_0x5accf9['status'],0x194))return null;throw _0x5accf9;}}export async function listCloudProfiles(){const _0x21631b=_0x25ed96,_0x353219={'bdgnK':'/api/v1/profiles'},_0x24db0a=await apiRequest(_0x353219['bdgnK']);return _0x24db0a[_0x21631b(0x1d6)];}export async function deleteCloudProfile(_0x98610b){const _0x25bf25=_0x25ed96;try{await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x98610b),{'method':'DELETE'});}catch(_0x4900cc){if(_0x4900cc instanceof ApiError&&_0x4900cc[_0x25bf25(0x17a)]===0x194)throw new Error(_0x25bf25(0x221)+_0x98610b+'\x22\x20not\x20found.');throw _0x4900cc;}}function _0xa0f0(){const _0x32d51b=['/login','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>`.','PWPql','storageStatePath','profiles','fHmRX','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','UnOgg','trackPhaseEnd','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','tunnel_login_request','join','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','environment_key','wsEndpoint','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','extraHTTPHeaders','organizationId','jicvZ','ClgyF','\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a','514328PKsSOH','\x22\x20on\x20profile\x20\x22','PNYWV','map','\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a','invalidateOn','envKey','998270FpKTCL','SfPfg','replace','DELETE','loginInstructions','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','QYaWl','/api/v1/profiles/','json','setupHeaders','\x22,\x20attempting\x20login...','sessionId','stringify','\x22,\x20refreshing\x20session...','domains','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','116HoEbra','5796550tUOTLB','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','newPage','close','ZWQlx','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','env','session_state','JfhvB','whskW','kLjxP','\x22\x20matched\x20by\x20host\x20for\x20','ABilH','storageState','YrNqK','browserOptions','success','JKgvX','omPQX','qwEBx','RANGER_TEST_PASSWORD','trackPhaseError','sKsFo','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','wvYVR','tunnel','error','keys','THitF','opfyK','length','xKPoZ','environmentKey','Cloud\x20profile\x20\x22','sessionCheckPath','Edxdi','auth','/api/v1/profiles','forceLogin','vBKqK','BZihN','Bearer\x20','COuTq','bJmWU','tunnel_session_id','IrgCD','FhCUJ','MkTwG','effectiveBaseUrl','application/json','\x20\x20Login\x20successful.\x20Session\x20cached.','statusText','RANGER_TUNNEL_LOGIN_HEADED','log','isArray','ApiError','elapsedMs','Browser\x20login\x20timed\x20out\x20before\x20completion.','RANGER_TEST_USERNAME','YWemU','GFGzp','status','type','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','WRPwW','FvZjx','RxAiB','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','origin','EfVYm','gRknK','host','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','push','force','173427tBpnNG','/api/v1/profiles/auth-config','\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.','\x22\x20instead.','Tvifg','tOFCB','pendingLocalConnections','trim','\x20failed\x20(','mcXry','25dIHWvo','settings','trackPhaseStart','none','message','ambiguous','clientIp','\x20\x20Created\x20cloud\x20profile\x20\x22','/session','WmRxp','\x20\x20Server-side\x20login\x20error:\x20','newContext','Browser\x20login\x20timed\x20out\x20after\x20','headers','maXfT','target_url','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','name','userAgent','pNWWK','cookies','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','assertedEnv','\x22;\x20proceeding\x20with\x20loginInstructions.','9821427hfLGat','true','environments','\x20--url\x20','OtQfG','oXZkv','code','RQMZC','NiXEb','parse','invalid-url','sessionState','SqUbD','\x22.\x0a','72QnppYL','utf-8','POST','1708185hzBrJT','key','\x20\x20Cached\x20session\x20for\x20\x22','telemetry','username','KhAzu','\x20\x20No\x20live\x20session\x20for\x20\x22','test_output','\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)','Auth\x20environment\x20\x22','chhYe','2285364SUdSmt','ozmxI','pw_endpoint','\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22','string','defaultEnvironmentKey','ZElnw','/api/v1/tunnel/sessions/','MTObm','\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','TpHSd','HLGOs'];_0xa0f0=function(){return _0x32d51b;};return _0xa0f0();}export async function createCloudProfile(_0x31293c,_0xbd48f2,_0x59d21d={}){const _0x484f02=_0x25ed96,_0x61197a={'yRphM':function(_0x535625,_0x2e5711,_0x1692e7){return _0x535625(_0x2e5711,_0x1692e7);}},_0x42eb35={'name':_0x31293c};if(_0xbd48f2)_0x42eb35[_0x484f02(0x1df)]=_0xbd48f2;_0x59d21d[_0x484f02(0x193)]&&Object[_0x484f02(0x21b)](_0x59d21d[_0x484f02(0x193)])['length']>0x0&&(_0x42eb35['settings']=_0x59d21d['settings']);if(_0x59d21d['username'])_0x42eb35['username']=_0x59d21d['username'];if(_0x59d21d['password'])_0x42eb35['password']=_0x59d21d['password'];return await _0x61197a['yRphM'](apiRequest,_0x484f02(0x162),{'method':'POST','body':JSON[_0x484f02(0x1fa)](_0x42eb35)});}export async function uploadCloudProfileSession(_0x1f99b9,_0x1a6f6d){const _0x42e3a9=_0x25ed96,_0x3bb642={'QYaWl':function(_0x19ff56,_0xabd062,_0x247e74){return _0x19ff56(_0xabd062,_0x247e74);},'omPQX':function(_0x34b9b5,_0xefcea5){return _0x34b9b5(_0xefcea5);}};return await _0x3bb642[_0x42e3a9(0x1f4)](apiRequest,'/api/v1/profiles/'+_0x3bb642[_0x42e3a9(0x211)](encodeURIComponent,_0x1f99b9)+_0x42e3a9(0x19a),{'method':'POST','body':JSON[_0x42e3a9(0x1fa)]({'session_state':_0x1a6f6d})});}export async function saveCloudProfileCredentials(_0x2fd36d,_0x32c198,_0xb3ac10){const _0x114d60={'cDITo':function(_0x49f149,_0x125a3b,_0x3a0707){return _0x49f149(_0x125a3b,_0x3a0707);},'UaoVV':function(_0x2a59c3,_0x25a720){return _0x2a59c3(_0x25a720);}};await _0x114d60['cDITo'](apiRequest,'/api/v1/profiles/'+_0x114d60['UaoVV'](encodeURIComponent,_0x2fd36d),{'method':'PUT','body':JSON['stringify']({'username':_0x32c198,'password':_0xb3ac10})});}export async function fetchAuthConfig(){const _0x219cc1=_0x25ed96,_0x19c58c={'IdSVf':function(_0x41eb8b,_0x1b53b6){return _0x41eb8b instanceof _0x1b53b6;}};try{const _0x21d146=await apiRequest(_0x219cc1(0x189));return _0x21d146['auth_config'];}catch(_0x49a49b){return _0x19c58c['IdSVf'](_0x49a49b,ApiError)&&_0x49a49b['status']!==0x194&&console['error'](_0x219cc1(0x1de)+_0x49a49b['message']),null;}}function _0xdb1b(_0x441673,_0x15cf64){_0x441673=_0x441673-0x162;const _0xa0f059=_0xa0f0();let _0xdb1b03=_0xa0f059[_0x441673];return _0xdb1b03;}async function createTunnelSession(_0x1c19f9){const _0x4fdff1=_0x25ed96,_0x55595a={'FuVGf':function(_0x194bf6,_0x3a51ee,_0x2bcfd6){return _0x194bf6(_0x3a51ee,_0x2bcfd6);},'MkTwG':'agent'};return await _0x55595a['FuVGf'](apiRequest,'/api/v1/tunnel/sessions',{'method':_0x4fdff1(0x1ba),'body':JSON['stringify']({'targetUrl':_0x1c19f9,'mode':_0x55595a[_0x4fdff1(0x16c)]})});}async function deleteTunnelSession(_0x1b9e61){const _0x3bcd34=_0x25ed96,_0x558b62={'SqUbD':_0x3bcd34(0x1f1)};await apiRequest(_0x3bcd34(0x1cd)+_0x1b9e61,{'method':_0x558b62[_0x3bcd34(0x1b6)]});}export function pickAdHocEnvKey(_0x439fb8,_0x1d3057,_0x1067af){const _0x3419ca=_0x25ed96,_0x18c7bc={'nHRMN':function(_0x229ada,_0x3e10eb){return _0x229ada+_0x3e10eb;},'HLGOs':function(_0x514af3,_0x13a337){return _0x514af3+_0x13a337;},'YWemU':function(_0x4e9320,_0x21185e,_0x62bcad){return _0x4e9320(_0x21185e,_0x62bcad);},'maXfT':function(_0x3ddfd3,_0x39a7f7){return _0x3ddfd3 in _0x39a7f7;},'GVmMt':_0x3419ca(0x197),'EfVYm':function(_0x2e2b41,_0x3a39d5){return _0x2e2b41+_0x3a39d5;},'MTObm':function(_0x532ed3,_0x57923d){return _0x532ed3===_0x57923d;}};if(_0x1067af){if(!_0x439fb8?.[_0x3419ca(0x1ac)]?.[_0x1067af]){const _0x20cf76=Object[_0x3419ca(0x21b)](_0x439fb8?.[_0x3419ca(0x1ac)]??{});throw new Error(_0x18c7bc['nHRMN'](_0x18c7bc['HLGOs'](_0x3419ca(0x1c4)+_0x1067af+'\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.',_0x20cf76[_0x3419ca(0x21e)]?'\x20Available:\x20'+_0x20cf76[_0x3419ca(0x1dd)](',\x20')+'.':_0x3419ca(0x1cf)),_0x3419ca(0x1c3)));}return _0x1067af;}if(!_0x439fb8)return null;if(_0x1d3057){const _0x5971d7=_0x18c7bc[_0x3419ca(0x178)](matchAuthEnvironmentExact,_0x1d3057,_0x439fb8);if(_0x5971d7)return _0x5971d7;const _0x1dfdb8=matchAuthEnvironmentByHost(_0x1d3057,_0x439fb8);if(_0x1dfdb8&&_0x18c7bc[_0x3419ca(0x1a0)](_0x3419ca(0x1bc),_0x1dfdb8))return console[_0x3419ca(0x172)]('\x20\x20Auth\x20env\x20\x22'+_0x1dfdb8[_0x3419ca(0x1bc)]+_0x3419ca(0x20a)+_0x1d3057+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x1dfdb8[_0x3419ca(0x1bc)];if(_0x1dfdb8&&_0x18c7bc[_0x3419ca(0x1a0)](_0x18c7bc['GVmMt'],_0x1dfdb8))throw new Error(_0x3419ca(0x1d8)+_0x1dfdb8[_0x3419ca(0x197)][_0x3419ca(0x1dd)](',\x20')+');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.');if(needsTunnel(_0x1d3057))throw new Error(_0x18c7bc[_0x3419ca(0x1d1)](_0x18c7bc['EfVYm'](_0x18c7bc[_0x3419ca(0x182)](_0x3419ca(0x216)+_0x1d3057+_0x3419ca(0x1b7),_0x3419ca(0x1f3)),'\x20\x20Options:\x0a')+_0x3419ca(0x1e6)+(_0x3419ca(0x1c9)+_0x1d3057[_0x3419ca(0x1f0)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),_0x3419ca(0x1a2)+_0x1d3057+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x439fb8['defaultEnvironmentKey'])return _0x439fb8['defaultEnvironmentKey'];const _0x3368d1=Object[_0x3419ca(0x21b)](_0x439fb8['environments']??{});if(_0x3368d1[_0x3419ca(0x21e)]===0x1)return _0x3368d1[0x0];if(_0x18c7bc[_0x3419ca(0x1ce)](_0x3368d1[_0x3419ca(0x21e)],0x0))return null;throw new Error(_0x3419ca(0x1db)+_0x3368d1['join'](',\x20')+').\x20'+_0x3419ca(0x1d3));}export function adHocProfileName(_0x415cd4,_0x35b491,_0x1d113f){if(!_0x35b491||_0x35b491===_0x1d113f)return _0x415cd4;return _0x415cd4+':'+_0x35b491;}export async function resolveAdHocProfile(_0x55c466={},_0x3d5c20=process['env']){const _0x47cf9a=_0x25ed96,_0xb9ad8e={'xKPoZ':function(_0x21ac91,_0x1faf3c){return _0x21ac91&&_0x1faf3c;},'COuTq':_0x47cf9a(0x195),'kLjxP':function(_0x31579b,_0x4bb5be,_0xb877cf,_0x4dc878){return _0x31579b(_0x4bb5be,_0xb877cf,_0x4dc878);},'opfyK':function(_0x41cff0,_0xc34d9b){return _0x41cff0??_0xc34d9b;}},_0x3240c8=_0x3d5c20['RANGER_TEST_USERNAME'];if(!_0x3240c8)return null;const _0x1be6ec=await fetchAuthConfig(),_0x3b72f5=pickAdHocEnvKey(_0x1be6ec,_0x55c466['targetUrl'],_0x55c466[_0x47cf9a(0x1ed)]);let _0x551a58=adHocProfileName(_0x3240c8,_0x3b72f5,_0x1be6ec?.[_0x47cf9a(0x1cb)]),_0x3f02d8=await fetchCloudProfile(_0x551a58);_0xb9ad8e[_0x47cf9a(0x21f)](_0x3f02d8,_0x3b72f5)&&_0x3f02d8[_0x47cf9a(0x220)]!==_0x3b72f5&&(console[_0x47cf9a(0x172)]('\x20\x20Cloud\x20profile\x20\x22'+_0x551a58+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x3f02d8['environmentKey']??_0xb9ad8e[_0x47cf9a(0x167)])+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x3b72f5+'\x22;\x20using\x20\x22'+_0x3240c8+':'+_0x3b72f5+_0x47cf9a(0x18b)),_0x551a58=_0x3240c8+':'+_0x3b72f5,_0x3f02d8=await fetchCloudProfile(_0x551a58));if(_0x3f02d8)return{'name':_0x3f02d8[_0x47cf9a(0x1a3)],'profile':_0x3f02d8};const _0x3100aa=_0x3d5c20['RANGER_TEST_PASSWORD'],_0x445336=await _0xb9ad8e[_0x47cf9a(0x209)](createCloudProfile,_0x551a58,_0xb9ad8e[_0x47cf9a(0x21d)](_0x3b72f5,undefined),{'username':_0x3240c8,'password':_0x3100aa});return console['log'](_0x47cf9a(0x199)+_0x445336[_0x47cf9a(0x1a3)]+'\x22\x20for\x20'+_0x3240c8+(_0x3b72f5?'\x20(auth\x20env:\x20'+_0x3b72f5+')':'')),{'name':_0x445336[_0x47cf9a(0x1a3)],'profile':_0x445336};}export async function writeSessionToLocalCache(_0x16a46e,_0x471448,_0x1f71dc,_0x580697,_0x5b1387,_0x21f84e,_0x2d2c74){const _0x500b03=_0x25ed96,_0x323b62={'THitF':function(_0x3ac85e,_0x2ecdcc){return _0x3ac85e(_0x2ecdcc);},'FvZjx':function(_0x210b0d,_0x572f00,_0x1e22d6){return _0x210b0d(_0x572f00,_0x1e22d6);},'ZElnw':_0x500b03(0x224),'fHmRX':function(_0xf2bbe1,_0x5dd5c8){return _0xf2bbe1(_0x5dd5c8);},'wvYVR':function(_0x2cdefd,_0x53062a){return _0x2cdefd>_0x53062a;},'vBKqK':function(_0x5c0143,_0x50e8e1,_0x57dd8b){return _0x5c0143(_0x50e8e1,_0x57dd8b);},'lWyIx':function(_0x3fef0d,_0x2c7806){return _0x3fef0d(_0x2c7806);}},_0xad280b=_0x323b62[_0x500b03(0x21c)](sessionCacheHash,{'orgId':_0x471448,'profileName':_0x16a46e,'effectiveBaseUrl':_0x1f71dc,'setupHeaders':_0x580697,'invalidateOn':_0x2d2c74?.[_0x500b03(0x1ec)],'userAgent':_0x2d2c74?.['userAgent'],'clientIp':_0x2d2c74?.['clientIp']}),_0x528444=_0x323b62['FvZjx'](getSessionCachePath,_0xad280b,_0x16a46e),_0x429994=_0x323b62[_0x500b03(0x17e)](join,getRangerHomeDir(),_0x323b62[_0x500b03(0x1cc)]);!_0x323b62[_0x500b03(0x1d7)](existsSync,_0x429994)&&await mkdir(_0x429994,{'recursive':!![]});const _0x33bab1={..._0x5b1387};_0x21f84e&&_0x323b62[_0x500b03(0x218)](_0x21f84e['length'],0x0)&&Array[_0x500b03(0x173)](_0x33bab1[_0x500b03(0x1a6)])&&(_0x33bab1['cookies']=duplicateCookiesForDomains(_0x33bab1[_0x500b03(0x1a6)],_0x21f84e));const _0x4663a3={'cached_at':new Date()['toISOString'](),'session_state':_0x33bab1};await _0x323b62[_0x500b03(0x164)](writeFile,_0x528444,JSON['stringify'](_0x4663a3,null,0x2));const _0x48fdaf=_0x323b62['lWyIx'](getStorageStatePath,_0x528444);return await _0x323b62[_0x500b03(0x17e)](writeFile,_0x48fdaf,JSON['stringify'](_0x33bab1,null,0x2)),_0x48fdaf;}export async function checkLocalCache(_0x28d1b4,_0x4ce679,_0x2a8b49,_0x1757eb,_0x17fc6f){const _0x12cf64=_0x25ed96,_0xd1ab1f={'jicvZ':function(_0x1bd8d5,_0xeda901){return _0x1bd8d5(_0xeda901);},'XOuAR':function(_0x494dd7,_0x383449){return _0x494dd7(_0x383449);},'fUunv':function(_0x4c6927,_0xa3735a,_0x3f219a){return _0x4c6927(_0xa3735a,_0x3f219a);},'DDMko':_0x12cf64(0x1b9)},_0x1f325c=sessionCacheHash({'orgId':_0x4ce679,'profileName':_0x28d1b4,'effectiveBaseUrl':_0x2a8b49,'setupHeaders':_0x1757eb,'invalidateOn':_0x17fc6f?.['invalidateOn'],'userAgent':_0x17fc6f?.[_0x12cf64(0x1a4)],'clientIp':_0x17fc6f?.[_0x12cf64(0x198)]}),_0x4cb9d6=getSessionCachePath(_0x1f325c,_0x28d1b4),_0xc69ef8=_0xd1ab1f[_0x12cf64(0x1e4)](getStorageStatePath,_0x4cb9d6);if(!existsSync(_0x4cb9d6)||!_0xd1ab1f['XOuAR'](existsSync,_0xc69ef8))return null;try{const _0x506666=await _0xd1ab1f['fUunv'](readFile,_0x4cb9d6,_0xd1ab1f['DDMko']);return JSON[_0x12cf64(0x1b3)](_0x506666),{'storageStatePath':_0xc69ef8};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x1eede1,_0x794842){const _0xde914e=_0x25ed96,_0x4ff6aa={'whskW':function(_0x13dc01,_0x5f3dd7){return _0x13dc01===_0x5f3dd7;},'JfhvB':function(_0x5e1cb7,_0x157ce0){return _0x5e1cb7+_0x157ce0;},'cVjGb':function(_0x36b602,_0x1a3fd3){return _0x36b602+_0x1a3fd3;}};if(!_0x794842||!_0x794842['domains']?.['length'])return;let _0x3eada4;try{_0x3eada4=new URL(_0x1eede1);}catch{return;}const _0x3993ed=[];for(const _0x571653 of _0x794842[_0xde914e(0x1fc)]){try{_0x3993ed[_0xde914e(0x186)]({'raw':_0x571653,'url':new URL(_0x571653)});}catch{}}if(_0x4ff6aa[_0xde914e(0x208)](_0x3993ed[_0xde914e(0x21e)],0x0))return;if(_0x3993ed['some'](_0x30748f=>_0x30748f['url']['origin']===_0x3eada4[_0xde914e(0x181)]))return;const _0x2d324a=_0x3993ed[_0xde914e(0x1ea)](_0x55b5a8=>'\x22'+_0x55b5a8['raw']+'\x22')['join'](',\x20');console['log'](_0x4ff6aa[_0xde914e(0x207)](_0x4ff6aa['cVjGb'](_0xde914e(0x204)+_0x2d324a+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x1eede1+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20'),'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.'));}export async function serverSideLogin(_0x41e515,_0x27eedf){const _0x40406d=_0x25ed96,_0x345a8f={'NiXEb':function(_0x3534bd,_0x96bdcd){return _0x3534bd(_0x96bdcd);},'Tvifg':_0x40406d(0x1ba),'WRPwW':function(_0x2d480f,_0x529906){return _0x2d480f===_0x529906;},'FhCUJ':'not_configured'},_0x5a867c=process[_0x40406d(0x205)][_0x40406d(0x177)],_0x3d9700=process['env'][_0x40406d(0x213)],_0x3f5094={};if(_0x5a867c)_0x3f5094[_0x40406d(0x1bf)]=_0x5a867c;if(_0x3d9700)_0x3f5094['password']=_0x3d9700;if(_0x27eedf?.[_0x40406d(0x187)])_0x3f5094[_0x40406d(0x187)]=!![];if(_0x27eedf?.['targetUrl'])_0x3f5094[_0x40406d(0x1a1)]=_0x27eedf['targetUrl'];if(_0x27eedf?.['env'])_0x3f5094[_0x40406d(0x205)]=_0x27eedf['env'];_0x27eedf?.[_0x40406d(0x219)]&&(_0x3f5094[_0x40406d(0x169)]=_0x27eedf[_0x40406d(0x219)]['sessionId'],_0x3f5094[_0x40406d(0x1c8)]=_0x27eedf['tunnel']['pwEndpoint']);try{return await apiRequest('/api/v1/profiles/'+_0x345a8f[_0x40406d(0x1b2)](encodeURIComponent,_0x41e515)+_0x40406d(0x1d2),{'method':_0x345a8f[_0x40406d(0x18c)],'body':JSON['stringify'](_0x3f5094)});}catch(_0x22fcad){if(_0x22fcad instanceof ApiError&&_0x345a8f[_0x40406d(0x17d)](_0x22fcad[_0x40406d(0x17a)],0x190)&&_0x22fcad['code']===_0x345a8f['FhCUJ'])return{'status':_0x345a8f[_0x40406d(0x16b)],'error':_0x22fcad['detail']};throw _0x22fcad;}}async function serverSideLoginWithOptionalTunnel(_0x224ba5,_0x15b9af,_0x59ddf9={}){const _0x7e14b3=_0x25ed96,_0x4c16f7={'SfPfg':_0x7e14b3(0x1dc),'qwEBx':function(_0x340818,_0x57ece2){return _0x340818(_0x57ece2);},'SVvrC':'tunnel_login_setup','oquGp':function(_0x38c806,_0x1e4ccf){return _0x38c806??_0x1e4ccf;},'TiFym':function(_0x47e29d,_0x51f3d9){return _0x47e29d||_0x51f3d9;},'PNYWV':'tunnel_login_cleanup','cSyTD':function(_0x472289,_0x566de7){return _0x472289(_0x566de7);}};if(!_0x4c16f7[_0x7e14b3(0x212)](needsTunnel,_0x15b9af))return await serverSideLogin(_0x224ba5,{'force':_0x59ddf9['force'],'env':_0x59ddf9[_0x7e14b3(0x205)]});let _0x759e41=null,_0x4340d5=null,_0x23023e=null,_0x11b191=null,_0x2fe2d2=![];const _0x506ef3=process['env'][_0x7e14b3(0x171)]?.['toLowerCase'](),_0x55b837=_0x506ef3==='1'||_0x506ef3===_0x7e14b3(0x1ab),_0x4e8b25={'profileName':_0x224ba5,'targetUrlHost':_0x4c16f7[_0x7e14b3(0x212)](targetHostForTelemetry,_0x15b9af),'tunnelRequired':!![],'forceLogin':Boolean(_0x59ddf9[_0x7e14b3(0x187)]),'localBrowserServerHeaded':_0x55b837};try{_0x59ddf9['telemetry']?.['trackPhaseStart'](_0x4c16f7['SVvrC'],_0x4e8b25);_0x55b837&&console['log']('\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...');_0x759e41=await _0x4c16f7[_0x7e14b3(0x212)](launchBrowserServer,{'headless':!_0x55b837}),_0x4340d5=await _0x4c16f7[_0x7e14b3(0x212)](createTunnelSession,_0x15b9af);const _0x79cce7=await requireToken();_0x23023e=await _0x4c16f7['qwEBx'](createTunnelBridge,{'localWsUrl':_0x759e41[_0x7e14b3(0x1e0)],'tunnelServerUrl':_0x4340d5['tunnelUrl'],'sessionId':_0x4340d5[_0x7e14b3(0x1f9)],'apiKey':_0x79cce7,'onError':_0x531794=>{_0x11b191=_0x531794;},'onClose':()=>{const _0x5bea94=_0x7e14b3;_0x11b191??=new Error(_0x5bea94(0x180)+_0x224ba5);},'onEvent':_0xf0652=>trackBridgeEvent(_0x59ddf9[_0x7e14b3(0x1be)],_0xf0652)}),_0x59ddf9['telemetry']?.[_0x7e14b3(0x1da)]('tunnel_login_setup',{..._0x4e8b25,'tunnelSessionId':_0x4340d5['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x55b837}),_0x2fe2d2=!![];try{return _0x59ddf9[_0x7e14b3(0x1be)]?.[_0x7e14b3(0x194)]('tunnel_login_request',{..._0x4e8b25,'tunnelSessionId':_0x4340d5[_0x7e14b3(0x1f9)]}),await serverSideLogin(_0x224ba5,{'force':_0x59ddf9[_0x7e14b3(0x187)],'targetUrl':_0x15b9af,'env':_0x59ddf9['env'],'tunnel':{'sessionId':_0x4340d5['sessionId'],'pwEndpoint':_0x4340d5['pwEndpoint']}})['then'](_0x2a6a04=>{const _0x2074fc=_0x7e14b3;return _0x59ddf9['telemetry']?.['trackPhaseEnd'](_0x4c16f7[_0x2074fc(0x1ef)],{..._0x4e8b25,'tunnelSessionId':_0x4340d5?.[_0x2074fc(0x1f9)],'loginStatus':_0x2a6a04['status'],'hasSessionState':_0x4c16f7['qwEBx'](Boolean,_0x2a6a04[_0x2074fc(0x206)]),'hasTestOutput':Boolean(_0x2a6a04['test_output']),'bridgeError':errorMessageForTelemetry(_0x11b191)}),_0x2a6a04;});}catch(_0x5c5b57){await _0x59ddf9[_0x7e14b3(0x1be)]?.[_0x7e14b3(0x214)](_0x4c16f7['SfPfg'],_0x4c16f7['oquGp'](_0x11b191,_0x5c5b57),{..._0x4e8b25,'tunnelSessionId':_0x4340d5['sessionId'],'bridgeError':errorMessageForTelemetry(_0x11b191)});throw _0x11b191??_0x5c5b57;}}catch(_0x3ccfe1){!_0x2fe2d2&&await _0x59ddf9[_0x7e14b3(0x1be)]?.[_0x7e14b3(0x214)]('tunnel_login_setup',_0x3ccfe1,{..._0x4e8b25,'tunnelSessionId':_0x4340d5?.[_0x7e14b3(0x1f9)]});throw _0x3ccfe1;}finally{if(_0x4c16f7['TiFym'](_0x4340d5,_0x759e41)||_0x23023e){const _0x593ebf='0|2|3|4|1'['split']('|');let _0x335290=0x0;while(!![]){switch(_0x593ebf[_0x335290++]){case'0':_0x59ddf9['telemetry']?.[_0x7e14b3(0x194)](_0x4c16f7[_0x7e14b3(0x1e9)],{..._0x4e8b25,'tunnelSessionId':_0x4340d5?.[_0x7e14b3(0x1f9)]});continue;case'1':_0x59ddf9['telemetry']?.[_0x7e14b3(0x1da)]('tunnel_login_cleanup',{..._0x4e8b25,'tunnelSessionId':_0x4340d5?.[_0x7e14b3(0x1f9)]});continue;case'2':_0x23023e?.['close']();continue;case'3':_0x759e41&&await _0x759e41['close']()['catch'](()=>{});continue;case'4':_0x4340d5&&await _0x4c16f7['cSyTD'](deleteTunnelSession,_0x4340d5[_0x7e14b3(0x1f9)])['catch'](()=>{});continue;}break;}}}}export async function manualBrowserLogin(_0x3acf8c,_0x56bb9d,_0x47e830={}){const _0x34f6de=_0x25ed96,_0x21e962={'mcXry':function(_0x258ab4,_0x56e59a){return _0x258ab4/_0x56e59a;},'XyVFd':_0x34f6de(0x202),'OtQfG':'about:blank','GbfgK':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','GFGzp':_0x34f6de(0x1fd),'LnHPT':function(_0xa1fe4b,_0x4dddd0){return _0xa1fe4b(_0x4dddd0);},'KhAzu':_0x34f6de(0x200),'sKsFo':function(_0x579d20,_0x1c4001){return _0x579d20!==_0x1c4001;},'JDYyW':'cli:manual-login'};if(!isInteractive())throw new Error('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x3acf8c['name']+'\x22.\x0a'+_0x34f6de(0x1a7)+'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.');const _0x532ef3=_0x56bb9d&&_0x56bb9d[_0x34f6de(0x1fc)][_0x34f6de(0x21e)]>0x0?_0x56bb9d['domains'][0x0]:_0x21e962[_0x34f6de(0x1ae)];console['log'](_0x21e962['GbfgK']),console['log'](_0x21e962[_0x34f6de(0x179)]),await new Promise(_0x4b907a=>setTimeout(_0x4b907a,0x7d0));const _0x5a3cc2=await chromium['launch']({'headless':![]});let _0x45796f=null;try{const _0x19b204={'ignoreHTTPSErrors':!![]};_0x56bb9d?.['setupHeaders']&&(_0x19b204[_0x34f6de(0x1e2)]=_0x56bb9d['setupHeaders']);const _0x4193c8=await _0x5a3cc2[_0x34f6de(0x19d)](_0x19b204);await _0x21e962['LnHPT'](addProfileSetupBanner,_0x4193c8);const _0x53edc5=await _0x4193c8[_0x34f6de(0x201)]();await _0x53edc5['goto'](_0x532ef3);let _0x1b395c=![];await new Promise(_0x4e6adc=>{const _0x1a0166=setTimeout(()=>{const _0x426829=_0xdb1b;_0x1b395c=!![],console[_0x426829(0x21a)](_0x426829(0x19e)+_0x21e962[_0x426829(0x191)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x4e6adc();},MANUAL_LOGIN_TIMEOUT_MS);_0x53edc5['on'](_0x21e962['XyVFd'],async()=>{const _0xa16973=_0xdb1b;clearTimeout(_0x1a0166);try{const _0x3efa51=await _0x4193c8[_0xa16973(0x20c)]();_0x45796f=_0x3efa51;}catch{}_0x4e6adc();});});if(_0x1b395c&&!_0x45796f)throw new Error(_0x34f6de(0x176));}finally{await _0x5a3cc2['close']()['catch'](()=>{});}if(!_0x45796f)throw new Error(_0x21e962[_0x34f6de(0x1c0)]);return _0x21e962[_0x34f6de(0x215)](_0x47e830['persistSessionState'],![])&&await apiRequest(_0x34f6de(0x1f5)+_0x21e962['LnHPT'](encodeURIComponent,_0x3acf8c['name'])+'/session',{'method':'POST','body':JSON['stringify']({'session_state':_0x45796f,'updated_by':_0x21e962['JDYyW']})}),{'sessionState':_0x45796f};}export async function promptSaveCredentials(_0x3582c9){const _0x55dd16=_0x25ed96,_0x95d1b9={'UzDCk':function(_0x5e84a5,_0x2c2ffe){return _0x5e84a5||_0x2c2ffe;},'tOFCB':function(_0x4e63d4){return _0x4e63d4();},'oXZkv':'save','NUeqY':function(_0x316922,_0x483ed5,_0x31a2ed){return _0x316922(_0x483ed5,_0x31a2ed);}},_0x1d4792=process['env'][_0x55dd16(0x177)],_0x4312d1=process['env']['RANGER_TEST_PASSWORD'];if(_0x95d1b9['UzDCk'](!_0x1d4792,!_0x4312d1))return;if(!_0x95d1b9[_0x55dd16(0x18d)](isInteractive))return;const {save:_0x3e2c6a}=await _0x226ce7['prompt']([{'type':'confirm','name':_0x95d1b9[_0x55dd16(0x1af)],'message':_0x55dd16(0x217),'default':![]}]);if(!_0x3e2c6a)return;await _0x95d1b9['NUeqY'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x3582c9),{'method':'PUT','body':JSON[_0x55dd16(0x1fa)]({'username':_0x1d4792,'password':_0x4312d1})}),console['log']('\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.');}export async function resolveCloudProfileSession(_0x125d20,_0x1425b8={}){const _0x2002da=_0x25ed96,_0x231c97={'Edxdi':function(_0x4c58fb){return _0x4c58fb();},'fsgrP':function(_0x5bb0cb,_0x2c6278){return _0x5bb0cb===_0x2c6278;},'PWPql':_0x2002da(0x1ca),'ZWQlx':function(_0x3c39be,_0x8ecb8a){return _0x3c39be===_0x8ecb8a;},'gRknK':function(_0x14771f,_0x2860b3){return _0x14771f||_0x2860b3;},'YrNqK':function(_0x59f885,_0x2918a0){return _0x59f885(_0x2918a0);},'egwqC':function(_0x1ac0f9,_0x53c0dc){return _0x1ac0f9(_0x53c0dc);},'pYSXP':function(_0x1dc0b6,_0x103430){return _0x1dc0b6>_0x103430;},'WmRxp':function(_0x8cde5a,_0x57d792,_0xed5bd9,_0x507a99,_0x30a468,_0x368cc7){return _0x8cde5a(_0x57d792,_0xed5bd9,_0x507a99,_0x30a468,_0x368cc7);},'PwpuS':function(_0x4c9034,_0x23fc57,_0x565ad6){return _0x4c9034(_0x23fc57,_0x565ad6);},'RQMZC':function(_0x47ec59,_0x230071,_0x565948){return _0x47ec59(_0x230071,_0x565948);},'RxAiB':function(_0x4709a2,_0x5bd746){return _0x4709a2(_0x5bd746);},'HXdTd':function(_0x358881,_0x583016,_0x511604,_0x5df8f1){return _0x358881(_0x583016,_0x511604,_0x5df8f1);},'IzIAr':function(_0x24db32,_0x40911d,_0x4dd511){return _0x24db32(_0x40911d,_0x4dd511);},'mmTNn':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','ABilH':function(_0x52904a,_0x52f0b8){return _0x52904a===_0x52f0b8;},'JKgvX':_0x2002da(0x20f),'olOxN':function(_0xadff0,_0x1084da,_0x41ac8b,_0x3c8be0,_0x4149a1,_0x1c0807,_0x18fe2d,_0x33bcce){return _0xadff0(_0x1084da,_0x41ac8b,_0x3c8be0,_0x4149a1,_0x1c0807,_0x18fe2d,_0x33bcce);},'TpHSd':function(_0x36d826,_0x12ce7e){return _0x36d826&&_0x12ce7e;},'YbPtz':function(_0x353ee9,_0x3fa475){return _0x353ee9(_0x3fa475);},'pNWWK':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','bNTzM':function(_0x3d4f66,_0x1a5a8c){return _0x3d4f66 instanceof _0x1a5a8c;},'gEzSy':function(_0x563c1d,_0x890838){return _0x563c1d+_0x890838;},'QOQOj':function(_0x45b6bc,_0xc0407c,_0xddbcaf){return _0x45b6bc(_0xc0407c,_0xddbcaf);},'EtVLc':function(_0x530c9c,_0x3d60c5,_0x3a372a,_0x1fb36a,_0x416641,_0x90c4f5,_0x5670cc,_0x22c888){return _0x530c9c(_0x3d60c5,_0x3a372a,_0x1fb36a,_0x416641,_0x90c4f5,_0x5670cc,_0x22c888);}},_0x5d045c=_0x125d20[_0x2002da(0x193)]??{},_0x769213=await _0x231c97[_0x2002da(0x223)](fetchAuthConfig),_0x1901a0=_0x769213?resolveAuthEnvironmentLocally(_0x769213,_0x1425b8['assertedEnv']??_0x125d20['environmentKey']):null,_0x2a7edb=_0x231c97['fsgrP'](typeof _0x1901a0?.[_0x2002da(0x1f2)],_0x231c97[_0x2002da(0x1d4)])&&_0x1901a0['loginInstructions'][_0x2002da(0x18f)]()?_0x1901a0['loginInstructions']:undefined,_0x1dc295=_0x231c97[_0x2002da(0x203)](typeof _0x5d045c[_0x2002da(0x1f2)],'string')&&_0x5d045c[_0x2002da(0x1f2)]['trim']()?_0x5d045c['loginInstructions']:undefined,_0x2f9259=_0x231c97[_0x2002da(0x183)](_0x1dc295,!_0x2a7edb)?_0x5d045c:{..._0x5d045c,'loginInstructions':_0x2a7edb},_0x497e08=_0x231c97[_0x2002da(0x20d)](Boolean,_0x2f9259[_0x2002da(0x1f2)]?.['trim']()),_0x352a3c=_0x231c97['egwqC'](Boolean,_0x5d045c[_0x2002da(0x163)]||_0x1901a0?.['forceLogin']),_0x138242=_0x1901a0?.['domains'],_0x1810f5=_0x5d045c[_0x2002da(0x1f7)],_0x31eca6=_0x1810f5??_0x1901a0?.[_0x2002da(0x1f7)],_0x5e5a68=_0x1425b8[_0x2002da(0x16d)]??_0x5d045c['baseUrl']??(_0x138242&&_0x231c97['pYSXP'](_0x138242['length'],0x0)?_0x138242[0x0]:''),_0x2de6b9=_0x5e5a68?needsTunnel(_0x5e5a68):![],_0x27ec99={'invalidateOn':_0x1901a0?.[_0x2002da(0x1ec)],'userAgent':_0x1901a0?.[_0x2002da(0x20e)]?.['userAgent']??_0x5d045c[_0x2002da(0x1a4)]};_0x352a3c&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x125d20[_0x2002da(0x1a3)]+_0x2002da(0x1fb));if(!_0x352a3c){const _0x2088d6=await _0x231c97[_0x2002da(0x19b)](checkLocalCache,_0x125d20['name'],_0x125d20['organizationId'],_0x5e5a68,_0x31eca6,_0x27ec99);if(_0x2088d6){if(_0x5e5a68&&!_0x2de6b9){const _0x2b2d8f=await isCachedSessionLive(_0x2088d6[_0x2002da(0x1d5)],_0x5e5a68,{'sessionCheckPath':_0x1901a0?.[_0x2002da(0x222)],'setupHeaders':_0x31eca6},{'launchBrowser':launchRealBrowser});if(_0x2b2d8f)return console[_0x2002da(0x172)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x125d20['name']+'\x22'),{'authPath':_0x2088d6['storageStatePath'],'settings':_0x2f9259,'resolvedEnv':_0x1901a0};console[_0x2002da(0x172)](_0x2002da(0x1bd)+_0x125d20['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),_0x231c97['PwpuS'](emitSessionValidationHint,_0x5e5a68,_0x1901a0);}else return _0x2de6b9&&console[_0x2002da(0x172)](_0x2002da(0x1e1)+_0x125d20[_0x2002da(0x1a3)]+'\x22'),{'authPath':_0x2088d6[_0x2002da(0x1d5)],'settings':_0x2f9259,'resolvedEnv':_0x1901a0};}}if(!_0x352a3c&&_0x125d20[_0x2002da(0x1b5)]){const _0x49ff13=await writeSessionToLocalCache(_0x125d20['name'],_0x125d20['organizationId'],_0x5e5a68,_0x31eca6,_0x125d20['sessionState'],_0x138242,_0x27ec99);if(_0x5e5a68){const _0x9efb45=await isCachedSessionLive(_0x49ff13,_0x5e5a68,{'sessionCheckPath':_0x1901a0?.['sessionCheckPath'],'setupHeaders':_0x31eca6},{'launchBrowser':launchRealBrowser});if(_0x9efb45)return console[_0x2002da(0x172)](_0x2002da(0x185)+_0x125d20['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x49ff13,'settings':_0x2f9259,'resolvedEnv':_0x1901a0};console[_0x2002da(0x172)]('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x125d20[_0x2002da(0x1a3)]+_0x2002da(0x17c)),_0x231c97[_0x2002da(0x1b1)](emitSessionValidationHint,_0x5e5a68,_0x1901a0);}else return{'authPath':_0x49ff13,'settings':_0x2f9259,'resolvedEnv':_0x1901a0};}if(_0x497e08)return console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x125d20[_0x2002da(0x1a3)]+_0x2002da(0x1a9)),{'authPath':undefined,'settings':_0x2f9259,'resolvedEnv':_0x1901a0};console['log'](_0x2002da(0x1c1)+_0x125d20['name']+_0x2002da(0x1f8));const _0x4bb471=Boolean(process[_0x2002da(0x205)][_0x2002da(0x177)])&&_0x231c97['YrNqK'](Boolean,process['env'][_0x2002da(0x213)]),_0x3a9ca9=_0x231c97[_0x2002da(0x17f)](Boolean,_0x125d20[_0x2002da(0x1bf)]),_0x255a82=Boolean(_0x1425b8[_0x2002da(0x1a8)]),_0x6c0db5=_0x5e5a68?isBareLocalhost(_0x5e5a68):![],_0x355730=_0x231c97['gRknK'](_0x4bb471,_0x3a9ca9)&&_0x231c97[_0x2002da(0x183)](!_0x6c0db5,_0x255a82);if(_0x355730)try{const _0x3877e2=_0x5e5a68?await _0x231c97['HXdTd'](serverSideLoginWithOptionalTunnel,_0x125d20[_0x2002da(0x1a3)],_0x5e5a68,{'force':_0x352a3c,'telemetry':_0x1425b8[_0x2002da(0x1be)],'env':_0x1425b8['assertedEnv']}):await _0x231c97['IzIAr'](serverSideLogin,_0x125d20[_0x2002da(0x1a3)],{'force':_0x352a3c,'env':_0x1425b8['assertedEnv']});if(_0x3877e2['status']==='not_configured')console['log'](_0x231c97['mmTNn']);else{if(_0x231c97[_0x2002da(0x20b)](_0x3877e2[_0x2002da(0x17a)],_0x231c97[_0x2002da(0x210)])&&_0x3877e2['session_state']){console[_0x2002da(0x172)](_0x2002da(0x16f));const _0x2963d3=await _0x231c97['olOxN'](writeSessionToLocalCache,_0x125d20['name'],_0x125d20[_0x2002da(0x1e3)],_0x5e5a68,_0x31eca6,_0x3877e2[_0x2002da(0x206)],_0x138242,_0x27ec99);return _0x231c97[_0x2002da(0x1d0)](_0x4bb471,!_0x3a9ca9)&&await _0x231c97['YbPtz'](promptSaveCredentials,_0x125d20['name']),{'authPath':_0x2963d3,'settings':_0x2f9259,'resolvedEnv':_0x1901a0};}else _0x3877e2['test_output']&&(console['log']('\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:'),console['log'](_0x3877e2['test_output'])),console['log'](_0x231c97[_0x2002da(0x1a5)]);}}catch(_0x4db916){console[_0x2002da(0x172)](_0x2002da(0x19c)+(_0x231c97['bNTzM'](_0x4db916,Error)?_0x4db916['message']:String(_0x4db916))),console['log'](_0x231c97['pNWWK']);}if(_0x6c0db5&&!_0x255a82&&!isInteractive())throw new Error(_0x231c97['gEzSy']('No\x20saved\x20session\x20for\x20\x22'+_0x5e5a68+_0x2002da(0x1e8)+_0x125d20['name']+_0x2002da(0x1eb),'\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20'+_0x125d20[_0x2002da(0x1a3)]+_0x2002da(0x1ad)+_0x5e5a68+'\x0a')+_0x2002da(0x18a));const _0x19c610=_0x1901a0?{..._0x1901a0,'domains':_0x231c97['QOQOj'](orderLoginDomains,_0x5e5a68,_0x1901a0[_0x2002da(0x1fc)]),'setupHeaders':_0x31eca6}:_0x5e5a68?{'key':_0x125d20['environmentKey']??'','domains':[_0x5e5a68],'setupHeaders':_0x31eca6}:null,{sessionState:_0x23e6a7}=await manualBrowserLogin(_0x125d20,_0x19c610,{'persistSessionState':!_0x2de6b9}),_0x56ea2f=await _0x231c97['EtVLc'](writeSessionToLocalCache,_0x125d20['name'],_0x125d20['organizationId'],_0x5e5a68,_0x31eca6,_0x23e6a7,_0x138242,_0x27ec99);return{'authPath':_0x56ea2f,'settings':_0x2f9259,'resolvedEnv':_0x1901a0};}
|
|
1
|
+
const _0xd1edc9=_0xcfb7;(function(_0x2b8749,_0x3e6986){const _0x29407c=_0xcfb7,_0x131cbe=_0x2b8749();while(!![]){try{const _0x3f233f=-parseInt(_0x29407c(0xf8))/0x1*(parseInt(_0x29407c(0x12a))/0x2)+parseInt(_0x29407c(0x130))/0x3*(-parseInt(_0x29407c(0xfc))/0x4)+-parseInt(_0x29407c(0xe3))/0x5+parseInt(_0x29407c(0xdb))/0x6*(parseInt(_0x29407c(0xb5))/0x7)+parseInt(_0x29407c(0x116))/0x8+parseInt(_0x29407c(0x12d))/0x9+-parseInt(_0x29407c(0x156))/0xa;if(_0x3f233f===_0x3e6986)break;else _0x131cbe['push'](_0x131cbe['shift']());}catch(_0x15814d){_0x131cbe['push'](_0x131cbe['shift']());}}}(_0x4835,0xe4318));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0xcfb7(_0x1b2160,_0x2be2b9){_0x1b2160=_0x1b2160-0xab;const _0x48354f=_0x4835();let _0xcfb71d=_0x48354f[_0x1b2160];return _0xcfb71d;}import _0x564955 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isBareLocalhost,isCachedSessionLive,isInteractive,needsTunnel,orderLoginDomains,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x431efd){const _0x32f82e=_0xcfb7;try{return new URL(_0x431efd)['host'];}catch{return _0x32f82e(0x137);}}function errorMessageForTelemetry(_0x52daa5){return _0x52daa5 instanceof Error?_0x52daa5['message']:undefined;}function trackBridgeEvent(_0x413ecd,_0x411de3){const _0x149a1e=_0xcfb7,_0x2ba0f5={'hjaeH':function(_0x4e6038,_0x4e246b){return _0x4e6038===_0x4e246b;},'azayt':_0x149a1e(0xb3)};if(!_0x413ecd)return;const _0x4010c5={'tunnelSessionId':_0x411de3[_0x149a1e(0x157)],'tunnelEventType':_0x411de3['type'],'connectionId':_0x411de3[_0x149a1e(0x11d)],'code':_0x411de3['code'],'reason':_0x411de3[_0x149a1e(0xad)],'error':_0x411de3['error'],'elapsedMs':_0x411de3['elapsedMs'],'activeLocalConnections':_0x411de3['activeLocalConnections'],'pendingLocalConnections':_0x411de3[_0x149a1e(0x153)]};_0x413ecd['trackPhaseEnd']('tunnel_bridge_event',_0x4010c5),(_0x2ba0f5['hjaeH'](_0x411de3['type'],'tunnel_error')||_0x411de3['type']===_0x2ba0f5['azayt'])&&void _0x413ecd[_0x149a1e(0xca)]('tunnel_bridge',new Error(_0x411de3[_0x149a1e(0x13e)]??_0x411de3['type']),_0x4010c5);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x51362f=_0xcfb7,_0x581c97={'aZmNm':function(_0x139c2f){return _0x139c2f();},'zGbBF':_0x51362f(0xf0)},_0x185566=await _0x581c97[_0x51362f(0xf2)](getToken);if(!_0x185566)throw new Error(_0x581c97['zGbBF']);return _0x185566;}async function apiRequest(_0x28b405,_0xc5c4e={}){const _0x4f1cb4=_0xcfb7,_0x5af022={'dOfpn':function(_0x2f63f1,_0x4a45c2,_0x97dbcf){return _0x2f63f1(_0x4a45c2,_0x97dbcf);},'sxOHo':function(_0x112c7f,_0x3d7c3a){return _0x112c7f===_0x3d7c3a;},'qqTJy':'string'},_0x115d32=await requireToken(),_0x59c16e=getApiBaseUrl(),_0x2bd758=await _0x5af022[_0x4f1cb4(0xf1)](fetch,''+_0x59c16e+_0x28b405,{..._0xc5c4e,'headers':{'Authorization':_0x4f1cb4(0x136)+_0x115d32,'Content-Type':'application/json',..._0xc5c4e['headers']??{}}});if(!_0x2bd758['ok']){let _0x507c75='',_0x5a6489;try{const _0x364ac6=await _0x2bd758['json'](),_0x147984=(typeof _0x364ac6[_0x4f1cb4(0x13e)]==='string'?_0x364ac6[_0x4f1cb4(0x13e)]:undefined)??JSON['stringify'](_0x364ac6);_0x507c75=_0x147984;_0x5af022['sxOHo'](typeof _0x364ac6[_0x4f1cb4(0x14a)],_0x5af022['qqTJy'])&&_0x364ac6['test_output']&&(_0x507c75=_0x507c75+'\x0a'+_0x364ac6['test_output']);if(typeof _0x364ac6['code']===_0x4f1cb4(0xc4))_0x5a6489=_0x364ac6['code'];}catch{_0x507c75=_0x2bd758['statusText'];}throw new ApiError(_0x4f1cb4(0x105)+_0x28b405+_0x4f1cb4(0x12f)+_0x2bd758['status']+_0x4f1cb4(0x133)+_0x507c75,_0x2bd758[_0x4f1cb4(0x13b)],_0x507c75,_0x5a6489);}if(_0x2bd758[_0x4f1cb4(0x13b)]===0xcc)return undefined;return _0x2bd758[_0x4f1cb4(0xd1)]();}export class ApiError extends Error{[_0xd1edc9(0x13b)];[_0xd1edc9(0xdf)];[_0xd1edc9(0xd5)];constructor(_0x52b8c4,_0x29f610,_0x374cb8,_0x50bec4){const _0x43da38=_0xd1edc9,_0x536a48={'sszbF':'4|3|2|0|1'},_0x1f1c42=_0x536a48[_0x43da38(0xb2)]['split']('|');let _0x4cc2d1=0x0;while(!![]){switch(_0x1f1c42[_0x4cc2d1++]){case'0':this['code']=_0x50bec4;continue;case'1':this['name']=_0x43da38(0x132);continue;case'2':this[_0x43da38(0xdf)]=_0x374cb8;continue;case'3':this[_0x43da38(0x13b)]=_0x29f610;continue;case'4':super(_0x52b8c4);continue;}break;}}}export async function fetchCloudProfile(_0x39ea7f){const _0x4e81c6=_0xd1edc9,_0x63289b={'ODaZv':function(_0x53b522,_0x25b90c){return _0x53b522(_0x25b90c);},'RRGhf':function(_0x299f00,_0x3746f6){return _0x299f00 instanceof _0x3746f6;}};try{return await apiRequest(_0x4e81c6(0xf4)+_0x63289b['ODaZv'](encodeURIComponent,_0x39ea7f),{'signal':AbortSignal['timeout'](0x3a98)});}catch(_0x51e87d){if(_0x63289b['RRGhf'](_0x51e87d,ApiError)&&_0x51e87d['status']===0x194)return null;throw _0x51e87d;}}export async function listCloudProfiles(){const _0x452032=_0xd1edc9,_0x3a078e={'wWpoT':function(_0x81bf50,_0x452757){return _0x81bf50(_0x452757);},'WcdYu':_0x452032(0x12b)},_0x599dfc=await _0x3a078e['wWpoT'](apiRequest,_0x3a078e[_0x452032(0xe8)]);return _0x599dfc['profiles'];}export async function deleteCloudProfile(_0x49cf56){const _0x435c68=_0xd1edc9,_0x1a2324={'HGioQ':function(_0x5ec630,_0x2df873,_0x376ff3){return _0x5ec630(_0x2df873,_0x376ff3);},'GpGml':function(_0x3a90e5,_0x128947){return _0x3a90e5===_0x128947;}};try{await _0x1a2324['HGioQ'](apiRequest,_0x435c68(0xf4)+encodeURIComponent(_0x49cf56),{'method':'DELETE'});}catch(_0x19de35){if(_0x19de35 instanceof ApiError&&_0x1a2324[_0x435c68(0x109)](_0x19de35[_0x435c68(0x13b)],0x194))throw new Error(_0x435c68(0xc6)+_0x49cf56+_0x435c68(0xb4));throw _0x19de35;}}export async function createCloudProfile(_0x445dc0,_0x1fe974,_0x417d8a={}){const _0x28f24d=_0xd1edc9,_0x281c0b={'JyzPP':function(_0x117a56,_0x3c15ee){return _0x117a56>_0x3c15ee;},'EqUYK':_0x28f24d(0x12b)},_0x1ea3ff={'name':_0x445dc0};if(_0x1fe974)_0x1ea3ff['environment_key']=_0x1fe974;_0x417d8a['settings']&&_0x281c0b[_0x28f24d(0x14e)](Object['keys'](_0x417d8a[_0x28f24d(0x11e)])['length'],0x0)&&(_0x1ea3ff[_0x28f24d(0x11e)]=_0x417d8a['settings']);if(_0x417d8a[_0x28f24d(0x115)])_0x1ea3ff['username']=_0x417d8a['username'];if(_0x417d8a[_0x28f24d(0xc1)])_0x1ea3ff[_0x28f24d(0xc1)]=_0x417d8a[_0x28f24d(0xc1)];return await apiRequest(_0x281c0b['EqUYK'],{'method':'POST','body':JSON['stringify'](_0x1ea3ff)});}export async function uploadCloudProfileSession(_0x5c3c1e,_0x4dbb34){const _0x1069a3=_0xd1edc9,_0x2efb96={'iuErA':function(_0x2dd09c,_0x4b9337,_0x274c3e){return _0x2dd09c(_0x4b9337,_0x274c3e);},'Waldx':function(_0x1ef928,_0x43eb53){return _0x1ef928(_0x43eb53);}};return await _0x2efb96['iuErA'](apiRequest,_0x1069a3(0xf4)+_0x2efb96['Waldx'](encodeURIComponent,_0x5c3c1e)+_0x1069a3(0xc5),{'method':_0x1069a3(0xb8),'body':JSON[_0x1069a3(0xe5)]({'session_state':_0x4dbb34})});}export async function saveCloudProfileCredentials(_0x1a3fc1,_0x5ad3d2,_0x14f3a3){const _0x2d8074=_0xd1edc9,_0x1c8c77={'jHDbF':function(_0x238af2,_0x1b97bc,_0x278fbe){return _0x238af2(_0x1b97bc,_0x278fbe);}};await _0x1c8c77[_0x2d8074(0xe0)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x1a3fc1),{'method':_0x2d8074(0xf7),'body':JSON[_0x2d8074(0xe5)]({'username':_0x5ad3d2,'password':_0x14f3a3})});}export async function fetchAuthConfig(){const _0x48d005=_0xd1edc9,_0x3374be={'Cjjri':function(_0x2cb91d,_0x2ffd6c){return _0x2cb91d(_0x2ffd6c);}};try{const _0x50dead=await _0x3374be['Cjjri'](apiRequest,'/api/v1/profiles/auth-config');return _0x50dead['auth_config'];}catch(_0x5a04eb){return _0x5a04eb instanceof ApiError&&_0x5a04eb[_0x48d005(0x13b)]!==0x194&&console[_0x48d005(0x13e)]('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x5a04eb[_0x48d005(0xd3)]),null;}}async function createTunnelSession(_0x2490a2){const _0x282456=_0xd1edc9,_0x2da5f1={'UolRO':'/api/v1/tunnel/sessions','DqvmV':_0x282456(0xb8),'XPocL':'agent'};return await apiRequest(_0x2da5f1['UolRO'],{'method':_0x2da5f1[_0x282456(0xeb)],'body':JSON['stringify']({'targetUrl':_0x2490a2,'mode':_0x2da5f1['XPocL']})});}async function deleteTunnelSession(_0x50bdb2){await apiRequest('/api/v1/tunnel/sessions/'+_0x50bdb2,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x21b579,_0x4f8677,_0x1dd982){const _0x5a1eee=_0xd1edc9,_0x3877bf={'PqAzZ':function(_0x869d06,_0x42c9f4){return _0x869d06+_0x42c9f4;},'KDHDp':function(_0x4c7c18,_0x175023,_0xa1b8ad){return _0x4c7c18(_0x175023,_0xa1b8ad);},'rBhQI':function(_0x4071df,_0x2d8a90,_0x3fa3be){return _0x4071df(_0x2d8a90,_0x3fa3be);},'lSzfJ':function(_0x8ee55b,_0x2521d3){return _0x8ee55b in _0x2521d3;},'TztiV':_0x5a1eee(0x107),'wdsLX':function(_0x51afc3,_0x26604e){return _0x51afc3 in _0x26604e;},'UaAyY':'ambiguous','JpNiP':function(_0x4c5488,_0x2591d5){return _0x4c5488(_0x2591d5);},'KwPea':function(_0x107f8a,_0x3b8e06){return _0x107f8a===_0x3b8e06;},'GnWDn':function(_0x23b928,_0xab1058){return _0x23b928===_0xab1058;},'BeLFA':function(_0x74f404,_0x1dddae){return _0x74f404+_0x1dddae;}};if(_0x1dd982){if(!_0x21b579?.['environments']?.[_0x1dd982]){const _0x552663=Object['keys'](_0x21b579?.['environments']??{});throw new Error(_0x3877bf['PqAzZ']('Auth\x20environment\x20\x22'+_0x1dd982+'\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.'+(_0x552663['length']?'\x20Available:\x20'+_0x552663['join'](',\x20')+'.':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.'),'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)'));}return _0x1dd982;}if(!_0x21b579)return null;if(_0x4f8677){const _0x26175c=_0x3877bf[_0x5a1eee(0xbb)](matchAuthEnvironmentExact,_0x4f8677,_0x21b579);if(_0x26175c)return _0x26175c;const _0xcaa131=_0x3877bf['rBhQI'](matchAuthEnvironmentByHost,_0x4f8677,_0x21b579);if(_0xcaa131&&_0x3877bf[_0x5a1eee(0x14f)](_0x3877bf[_0x5a1eee(0x129)],_0xcaa131))return console[_0x5a1eee(0x104)]('\x20\x20Auth\x20env\x20\x22'+_0xcaa131[_0x5a1eee(0x107)]+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x4f8677+_0x5a1eee(0xc3)),_0xcaa131['key'];if(_0xcaa131&&_0x3877bf[_0x5a1eee(0xd4)](_0x3877bf['UaAyY'],_0xcaa131))throw new Error(_0x5a1eee(0x149)+_0xcaa131[_0x5a1eee(0x125)]['join'](',\x20')+');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.');if(_0x3877bf['JpNiP'](needsTunnel,_0x4f8677))throw new Error(_0x3877bf['PqAzZ'](_0x5a1eee(0xbf)+_0x4f8677+'\x22.\x0a'+_0x5a1eee(0x128)+'\x20\x20Options:\x0a'+'\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a',_0x5a1eee(0xc0)+_0x4f8677['replace'](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a')+(_0x5a1eee(0x150)+_0x4f8677+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x21b579[_0x5a1eee(0x113)])return _0x21b579[_0x5a1eee(0x113)];const _0x4f7bf2=Object[_0x5a1eee(0xe9)](_0x21b579[_0x5a1eee(0xef)]??{});if(_0x3877bf['KwPea'](_0x4f7bf2[_0x5a1eee(0x10d)],0x1))return _0x4f7bf2[0x0];if(_0x3877bf['GnWDn'](_0x4f7bf2['length'],0x0))return null;throw new Error(_0x3877bf['BeLFA']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x4f7bf2['join'](',\x20')+_0x5a1eee(0x14b),_0x5a1eee(0x144)));}export function adHocProfileName(_0x2199c4,_0xaf655c,_0x492445){const _0x5b8050={'EAgFc':function(_0x1a572,_0x27a811){return _0x1a572===_0x27a811;}};if(!_0xaf655c||_0x5b8050['EAgFc'](_0xaf655c,_0x492445))return _0x2199c4;return _0x2199c4+':'+_0xaf655c;}export async function resolveAdHocProfile(_0x11dd2d={},_0x4dbbec=process['env']){const _0x3d7651=_0xd1edc9,_0xcdb946={'arAOf':function(_0x55aa46,_0x294980,_0x451316,_0x5795e2){return _0x55aa46(_0x294980,_0x451316,_0x5795e2);},'ZigCk':function(_0x1d6f68,_0x2ca1ea){return _0x1d6f68(_0x2ca1ea);},'yiiqd':_0x3d7651(0x152)},_0x26c1da=_0x4dbbec[_0x3d7651(0x126)];if(!_0x26c1da)return null;const _0x47dc46=await fetchAuthConfig(),_0x436753=_0xcdb946['arAOf'](pickAdHocEnvKey,_0x47dc46,_0x11dd2d['targetUrl'],_0x11dd2d['envKey']);let _0x20369e=_0xcdb946['arAOf'](adHocProfileName,_0x26c1da,_0x436753,_0x47dc46?.[_0x3d7651(0x113)]),_0x14f0b2=await _0xcdb946['ZigCk'](fetchCloudProfile,_0x20369e);_0x14f0b2&&_0x436753&&_0x14f0b2[_0x3d7651(0xed)]!==_0x436753&&(console['log']('\x20\x20Cloud\x20profile\x20\x22'+_0x20369e+_0x3d7651(0x10e)+(_0x14f0b2['environmentKey']??_0xcdb946['yiiqd'])+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x436753+'\x22;\x20using\x20\x22'+_0x26c1da+':'+_0x436753+_0x3d7651(0x139)),_0x20369e=_0x26c1da+':'+_0x436753,_0x14f0b2=await _0xcdb946['ZigCk'](fetchCloudProfile,_0x20369e));if(_0x14f0b2)return{'name':_0x14f0b2[_0x3d7651(0x117)],'profile':_0x14f0b2};const _0x1a9cd4=_0x4dbbec['RANGER_TEST_PASSWORD'],_0xcc0e7e=await createCloudProfile(_0x20369e,_0x436753??undefined,{'username':_0x26c1da,'password':_0x1a9cd4});return console[_0x3d7651(0x104)](_0x3d7651(0xbc)+_0xcc0e7e[_0x3d7651(0x117)]+'\x22\x20for\x20'+_0x26c1da+(_0x436753?'\x20(auth\x20env:\x20'+_0x436753+')':'')),{'name':_0xcc0e7e[_0x3d7651(0x117)],'profile':_0xcc0e7e};}export async function writeSessionToLocalCache(_0x11deb9,_0x9ba19d,_0x452200,_0x5d6c2d,_0x3f67ea,_0x59ad37,_0x42f151){const _0x15fb79=_0xd1edc9,_0x305d56={'BRpId':function(_0x3787dc,_0x4dd38c){return _0x3787dc(_0x4dd38c);},'uHFdb':function(_0x2662cf,_0x51cc96,_0x4aadf6){return _0x2662cf(_0x51cc96,_0x4aadf6);},'ZcUEo':'auth','czTDN':function(_0xd2f782,_0x5a2da0,_0x2f6149){return _0xd2f782(_0x5a2da0,_0x2f6149);},'reXxh':function(_0x347132,_0x5398cc,_0xa6e2a2){return _0x347132(_0x5398cc,_0xa6e2a2);}},_0x3b7da1=_0x305d56['BRpId'](sessionCacheHash,{'orgId':_0x9ba19d,'profileName':_0x11deb9,'effectiveBaseUrl':_0x452200,'setupHeaders':_0x5d6c2d,'invalidateOn':_0x42f151?.[_0x15fb79(0x119)],'userAgent':_0x42f151?.['userAgent'],'clientIp':_0x42f151?.[_0x15fb79(0xae)]}),_0x3366fc=getSessionCachePath(_0x3b7da1,_0x11deb9),_0x2e3181=_0x305d56['uHFdb'](join,getRangerHomeDir(),_0x305d56[_0x15fb79(0x10b)]);!existsSync(_0x2e3181)&&await _0x305d56['czTDN'](mkdir,_0x2e3181,{'recursive':!![]});const _0x134513={..._0x3f67ea};_0x59ad37&&_0x59ad37['length']>0x0&&Array['isArray'](_0x134513[_0x15fb79(0x123)])&&(_0x134513['cookies']=_0x305d56[_0x15fb79(0xd8)](duplicateCookiesForDomains,_0x134513[_0x15fb79(0x123)],_0x59ad37));const _0xc7cab8={'cached_at':new Date()[_0x15fb79(0xcc)](),'session_state':_0x134513};await writeFile(_0x3366fc,JSON['stringify'](_0xc7cab8,null,0x2));const _0xa6c8bf=getStorageStatePath(_0x3366fc);return await _0x305d56[_0x15fb79(0xd8)](writeFile,_0xa6c8bf,JSON['stringify'](_0x134513,null,0x2)),_0xa6c8bf;}function _0x4835(){const _0x1ed4b9=['length','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','GgSkV','cli:manual-login','\x22\x20on\x20profile\x20\x22','VsQod','defaultEnvironmentKey','pOWhE','username','11031040QunaPh','name','deKeQ','invalidateOn','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','storageState','idBKe','connectionId','settings','telemetry','toLowerCase','\x22.\x0a','AfWZf','cookies','OMhGD','ambiguous','RANGER_TEST_USERNAME','origin','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','TztiV','2CZSwLT','/api/v1/profiles','\x22,\x20attempting\x20login...','15408837XgOytZ','IREPO','\x20failed\x20(','131403BGZtow','wZTOl','ApiError','):\x20','success','yrQqC','Bearer\x20','invalid-url','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','\x22\x20instead.','launch','status','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','sNMrR','error','naNKu','UcVTY','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','IpGEq','bSQWi','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>`.','/login','UDzGk','force','DhnfY','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','test_output',').\x20','cuQfh','tunnel','JyzPP','lSzfJ','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','tunnel_login_setup','none','pendingLocalConnections','confirm','domains','14448890iezhWK','sessionId','\x22;\x20proceeding\x20with\x20loginInstructions.','tunnelUrl','reason','clientIp','targetUrl','\x20\x20No\x20live\x20session\x20for\x20\x22','session_state','sszbF','local_ws_error','\x22\x20not\x20found.','7iSFTGN','qNYLv','kMSMS','POST','assertedEnv','about:blank','KDHDp','\x20\x20Created\x20cloud\x20profile\x20\x22','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','true','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22','password','FTdwe','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','string','/session','Cloud\x20profile\x20\x22','not_configured','bCPyq','close','trackPhaseError','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','toISOString','prompt','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','env','esDGx','json','Jevka','message','wdsLX','code','you\x27re\x20now\x20at\x20\x22','itwUj','reXxh','No\x20saved\x20session\x20for\x20\x22','userAgent','1133610OMsdHA','sCCnS','RANGER_TUNNEL_LOGIN_HEADED','browserOptions','detail','jHDbF','setupHeaders','\x20\x20Cloud\x20session\x20for\x20\x22','626970lTVocS','\x22,\x20refreshing\x20session...','stringify','RANGER_TEST_PASSWORD','\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20','WcdYu','keys','url','DqvmV','organizationId','environmentKey','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','environments','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','dOfpn','aZmNm','trackPhaseStart','/api/v1/profiles/','pwEndpoint','catch','PUT','161731pzCZZu','ybpFL','UhNqm','JWQBG','56eCuReD','KdoMf','goto','fZvqJ','forceLogin','loginInstructions','join','sessionCheckPath','log','API\x20request\x20','wsEndpoint','key','LGZvA','GpGml','bZBeK','ZcUEo','\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a'];_0x4835=function(){return _0x1ed4b9;};return _0x4835();}export async function checkLocalCache(_0x1950cd,_0x276cbe,_0xc02cf8,_0x4d2f42,_0xe7984e){const _0x32cdb2=_0xd1edc9,_0x39fba1={'deKeQ':function(_0x43fca0,_0x3d66d0){return _0x43fca0(_0x3d66d0);},'IREPO':function(_0x2b7b7a,_0x33a329,_0x19d0ae){return _0x2b7b7a(_0x33a329,_0x19d0ae);},'HxLWJ':function(_0x1b2fe0,_0x79dee4,_0x38ddbf){return _0x1b2fe0(_0x79dee4,_0x38ddbf);}},_0x17753a=_0x39fba1['deKeQ'](sessionCacheHash,{'orgId':_0x276cbe,'profileName':_0x1950cd,'effectiveBaseUrl':_0xc02cf8,'setupHeaders':_0x4d2f42,'invalidateOn':_0xe7984e?.[_0x32cdb2(0x119)],'userAgent':_0xe7984e?.['userAgent'],'clientIp':_0xe7984e?.['clientIp']}),_0x958874=_0x39fba1[_0x32cdb2(0x12e)](getSessionCachePath,_0x17753a,_0x1950cd),_0x335a5b=_0x39fba1[_0x32cdb2(0x118)](getStorageStatePath,_0x958874);if(!_0x39fba1[_0x32cdb2(0x118)](existsSync,_0x958874)||!existsSync(_0x335a5b))return null;try{const _0xc50223=await _0x39fba1['HxLWJ'](readFile,_0x958874,'utf-8');return JSON['parse'](_0xc50223),{'storageStatePath':_0x335a5b};}catch{return null;}}function launchRealBrowser(){const _0x588194=_0xd1edc9;return chromium[_0x588194(0x13a)]({'headless':!![]});}function emitSessionValidationHint(_0x28f1e5,_0xdfe894){const _0x625043=_0xd1edc9,_0x32829a={'OMhGD':function(_0x2bd381,_0x2b724b){return _0x2bd381===_0x2b724b;},'Jevka':function(_0x990dc0,_0x4c167f){return _0x990dc0+_0x4c167f;}};if(!_0xdfe894||!_0xdfe894['domains']?.[_0x625043(0x10d)])return;let _0x211dd7;try{_0x211dd7=new URL(_0x28f1e5);}catch{return;}const _0xdc58cd=[];for(const _0x365761 of _0xdfe894['domains']){try{_0xdc58cd['push']({'raw':_0x365761,'url':new URL(_0x365761)});}catch{}}if(_0x32829a[_0x625043(0x124)](_0xdc58cd['length'],0x0))return;if(_0xdc58cd['some'](_0x23fb2b=>_0x23fb2b[_0x625043(0xea)]['origin']===_0x211dd7[_0x625043(0x127)]))return;const _0x3ea4b1=_0xdc58cd['map'](_0x231713=>'\x22'+_0x231713['raw']+'\x22')[_0x625043(0x102)](',\x20');console['log'](_0x32829a[_0x625043(0xd2)]('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x3ea4b1+';\x20',_0x625043(0xd6)+_0x28f1e5+_0x625043(0x141))+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x3ce744,_0x1eb53f){const _0x4fcb01=_0xd1edc9,_0x146183={'RyIwF':'POST','sCCnS':function(_0x43c734,_0x2bf734){return _0x43c734===_0x2bf734;},'RHHeK':'not_configured'},_0x587d58=process[_0x4fcb01(0xcf)][_0x4fcb01(0x126)],_0x2e54b4=process[_0x4fcb01(0xcf)][_0x4fcb01(0xe6)],_0x21c9de={};if(_0x587d58)_0x21c9de['username']=_0x587d58;if(_0x2e54b4)_0x21c9de['password']=_0x2e54b4;if(_0x1eb53f?.[_0x4fcb01(0x147)])_0x21c9de['force']=!![];if(_0x1eb53f?.['targetUrl'])_0x21c9de['target_url']=_0x1eb53f[_0x4fcb01(0xaf)];if(_0x1eb53f?.['env'])_0x21c9de[_0x4fcb01(0xcf)]=_0x1eb53f[_0x4fcb01(0xcf)];_0x1eb53f?.[_0x4fcb01(0x14d)]&&(_0x21c9de['tunnel_session_id']=_0x1eb53f['tunnel'][_0x4fcb01(0x157)],_0x21c9de['pw_endpoint']=_0x1eb53f['tunnel'][_0x4fcb01(0xf5)]);try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x3ce744)+_0x4fcb01(0x145),{'method':_0x146183['RyIwF'],'body':JSON['stringify'](_0x21c9de)});}catch(_0x497a64){if(_0x497a64 instanceof ApiError&&_0x497a64[_0x4fcb01(0x13b)]===0x190&&_0x146183[_0x4fcb01(0xdc)](_0x497a64['code'],'not_configured'))return{'status':_0x146183['RHHeK'],'error':_0x497a64['detail']};throw _0x497a64;}}async function serverSideLoginWithOptionalTunnel(_0x53fb5f,_0x596653,_0x201847={}){const _0x58a81d=_0xd1edc9,_0x44d171={'VsQod':'tunnel_login_request','itwUj':function(_0x4b6799,_0x3b89d2){return _0x4b6799(_0x3b89d2);},'cuQfh':function(_0x59ce13,_0x2c0e6a){return _0x59ce13(_0x2c0e6a);},'bSQWi':_0x58a81d(0xbe),'uWNRS':_0x58a81d(0x151),'qNYLv':function(_0x2ab85b,_0x2a802e){return _0x2ab85b??_0x2a802e;},'eAfNw':function(_0xc9a33c,_0xdf37dc){return _0xc9a33c(_0xdf37dc);},'bCPyq':function(_0x5c83d8,_0x1903ea){return _0x5c83d8||_0x1903ea;},'UhNqm':'tunnel_login_cleanup'};if(!_0x44d171[_0x58a81d(0x14c)](needsTunnel,_0x596653))return await serverSideLogin(_0x53fb5f,{'force':_0x201847[_0x58a81d(0x147)],'env':_0x201847['env']});let _0xb5041b=null,_0x3b123e=null,_0x4a70c3=null,_0xd65ac3=null,_0x147301=![];const _0x221dd2=process[_0x58a81d(0xcf)][_0x58a81d(0xdd)]?.[_0x58a81d(0x120)](),_0x9ac7b5=_0x221dd2==='1'||_0x221dd2===_0x44d171[_0x58a81d(0x143)],_0x2c0abd={'profileName':_0x53fb5f,'targetUrlHost':targetHostForTelemetry(_0x596653),'tunnelRequired':!![],'forceLogin':Boolean(_0x201847[_0x58a81d(0x147)]),'localBrowserServerHeaded':_0x9ac7b5};try{_0x201847['telemetry']?.['trackPhaseStart'](_0x44d171['uWNRS'],_0x2c0abd);_0x9ac7b5&&console['log']('\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...');_0xb5041b=await launchBrowserServer({'headless':!_0x9ac7b5}),_0x3b123e=await _0x44d171['cuQfh'](createTunnelSession,_0x596653);const _0x2171f1=await requireToken();_0x4a70c3=await _0x44d171['itwUj'](createTunnelBridge,{'localWsUrl':_0xb5041b[_0x58a81d(0x106)],'tunnelServerUrl':_0x3b123e[_0x58a81d(0xac)],'sessionId':_0x3b123e[_0x58a81d(0x157)],'apiKey':_0x2171f1,'onError':_0x457324=>{_0xd65ac3=_0x457324;},'onClose':()=>{const _0x19c472=_0x58a81d;_0xd65ac3??=new Error(_0x19c472(0xbd)+_0x53fb5f);},'onEvent':_0x5d79a5=>trackBridgeEvent(_0x201847[_0x58a81d(0x11f)],_0x5d79a5)}),_0x201847[_0x58a81d(0x11f)]?.['trackPhaseEnd'](_0x58a81d(0x151),{..._0x2c0abd,'tunnelSessionId':_0x3b123e['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x9ac7b5}),_0x147301=!![];try{return _0x201847['telemetry']?.['trackPhaseStart'](_0x44d171[_0x58a81d(0x112)],{..._0x2c0abd,'tunnelSessionId':_0x3b123e['sessionId']}),await serverSideLogin(_0x53fb5f,{'force':_0x201847[_0x58a81d(0x147)],'targetUrl':_0x596653,'env':_0x201847[_0x58a81d(0xcf)],'tunnel':{'sessionId':_0x3b123e['sessionId'],'pwEndpoint':_0x3b123e['pwEndpoint']}})['then'](_0x4ed122=>{const _0x51d203=_0x58a81d;return _0x201847['telemetry']?.['trackPhaseEnd'](_0x44d171[_0x51d203(0x112)],{..._0x2c0abd,'tunnelSessionId':_0x3b123e?.['sessionId'],'loginStatus':_0x4ed122['status'],'hasSessionState':_0x44d171[_0x51d203(0xd7)](Boolean,_0x4ed122['session_state']),'hasTestOutput':Boolean(_0x4ed122['test_output']),'bridgeError':_0x44d171[_0x51d203(0xd7)](errorMessageForTelemetry,_0xd65ac3)}),_0x4ed122;});}catch(_0x42dd4e){await _0x201847[_0x58a81d(0x11f)]?.[_0x58a81d(0xca)](_0x44d171[_0x58a81d(0x112)],_0x44d171[_0x58a81d(0xb6)](_0xd65ac3,_0x42dd4e),{..._0x2c0abd,'tunnelSessionId':_0x3b123e[_0x58a81d(0x157)],'bridgeError':_0x44d171['eAfNw'](errorMessageForTelemetry,_0xd65ac3)});throw _0xd65ac3??_0x42dd4e;}}catch(_0x451eb6){!_0x147301&&await _0x201847['telemetry']?.[_0x58a81d(0xca)]('tunnel_login_setup',_0x451eb6,{..._0x2c0abd,'tunnelSessionId':_0x3b123e?.['sessionId']});throw _0x451eb6;}finally{(_0x44d171[_0x58a81d(0xc8)](_0x3b123e,_0xb5041b)||_0x4a70c3)&&(_0x201847[_0x58a81d(0x11f)]?.[_0x58a81d(0xf3)](_0x44d171[_0x58a81d(0xfa)],{..._0x2c0abd,'tunnelSessionId':_0x3b123e?.[_0x58a81d(0x157)]}),_0x4a70c3?.[_0x58a81d(0xc9)](),_0xb5041b&&await _0xb5041b[_0x58a81d(0xc9)]()['catch'](()=>{}),_0x3b123e&&await deleteTunnelSession(_0x3b123e['sessionId'])[_0x58a81d(0xf6)](()=>{}),_0x201847[_0x58a81d(0x11f)]?.['trackPhaseEnd'](_0x44d171['UhNqm'],{..._0x2c0abd,'tunnelSessionId':_0x3b123e?.['sessionId']}));}}export async function manualBrowserLogin(_0x382c73,_0x4dc73a,_0x47ed3e={}){const _0x49fb09=_0xd1edc9,_0x30decc={'ZrfXj':function(_0x15c987,_0x23afd4){return _0x15c987/_0x23afd4;},'wZTOl':function(_0x15fde5){return _0x15fde5();},'EaDIh':function(_0x5c9c07,_0x48d02c){return _0x5c9c07+_0x48d02c;},'JWQBG':_0x49fb09(0x11a),'rJMPE':function(_0x1876df,_0x38ce1e){return _0x1876df>_0x38ce1e;},'ybpFL':_0x49fb09(0xba),'hRcXm':'\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','TuZqc':function(_0x5191ab,_0x1294e1){return _0x5191ab(_0x1294e1);},'pOWhE':function(_0x558f6b,_0x1bb9c2){return _0x558f6b&&_0x1bb9c2;},'QmCeB':function(_0xaee09f,_0x2a6070){return _0xaee09f!==_0x2a6070;},'UDzGk':function(_0x34d486,_0x3fb70a,_0x3beea8){return _0x34d486(_0x3fb70a,_0x3beea8);}};if(!_0x30decc['wZTOl'](isInteractive))throw new Error(_0x30decc['EaDIh']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x382c73['name']+_0x49fb09(0x121),_0x49fb09(0xcb))+_0x30decc[_0x49fb09(0xfb)]);const _0x55bf11=_0x4dc73a&&_0x30decc['rJMPE'](_0x4dc73a['domains'][_0x49fb09(0x10d)],0x0)?_0x4dc73a[_0x49fb09(0x155)][0x0]:_0x30decc[_0x49fb09(0xf9)];console['log']('\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.'),console[_0x49fb09(0x104)](_0x30decc['hRcXm']),await new Promise(_0x4440cc=>setTimeout(_0x4440cc,0x7d0));const _0x2fa2fe=await chromium['launch']({'headless':![]});let _0x2c1d8c=null;try{const _0x121f4d={'ignoreHTTPSErrors':!![]};_0x4dc73a?.['setupHeaders']&&(_0x121f4d['extraHTTPHeaders']=_0x4dc73a[_0x49fb09(0xe1)]);const _0x15ed5e=await _0x2fa2fe['newContext'](_0x121f4d);await _0x30decc['TuZqc'](addProfileSetupBanner,_0x15ed5e);const _0x5d87ce=await _0x15ed5e['newPage']();await _0x5d87ce[_0x49fb09(0xfe)](_0x55bf11);let _0x15899e=![];await new Promise(_0x4529af=>{const _0x34061f=_0x49fb09,_0x448374={'FVaQK':function(_0x2163d9,_0x318e6b){return _0x30decc['ZrfXj'](_0x2163d9,_0x318e6b);},'eOaIB':function(_0x32c03c){const _0x746ad=_0xcfb7;return _0x30decc[_0x746ad(0x131)](_0x32c03c);}},_0x5eaed0=setTimeout(()=>{const _0x3e61d4=_0xcfb7;_0x15899e=!![],console[_0x3e61d4(0x13e)]('Browser\x20login\x20timed\x20out\x20after\x20'+_0x448374['FVaQK'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x448374['eOaIB'](_0x4529af);},MANUAL_LOGIN_TIMEOUT_MS);_0x5d87ce['on'](_0x34061f(0xc9),async()=>{const _0x156b98=_0x34061f;clearTimeout(_0x5eaed0);try{const _0x14a858=await _0x15ed5e[_0x156b98(0x11b)]();_0x2c1d8c=_0x14a858;}catch{}_0x4529af();});});if(_0x30decc[_0x49fb09(0x114)](_0x15899e,!_0x2c1d8c))throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x2fa2fe['close']()['catch'](()=>{});}if(!_0x2c1d8c)throw new Error('Browser\x20closed\x20before\x20authentication\x20was\x20saved.');return _0x30decc['QmCeB'](_0x47ed3e['persistSessionState'],![])&&await _0x30decc[_0x49fb09(0x146)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x382c73[_0x49fb09(0x117)])+_0x49fb09(0xc5),{'method':'POST','body':JSON['stringify']({'session_state':_0x2c1d8c,'updated_by':_0x49fb09(0x110)})}),{'sessionState':_0x2c1d8c};}export async function promptSaveCredentials(_0x3cb264){const _0x54833c=_0xd1edc9,_0x42343c={'DhnfY':function(_0xc2f72){return _0xc2f72();},'idBKe':_0x54833c(0x154),'naNKu':function(_0x5ac8b0,_0x4ebc63,_0x1d970d){return _0x5ac8b0(_0x4ebc63,_0x1d970d);},'IpGEq':function(_0x58f433,_0x3475ea){return _0x58f433(_0x3475ea);},'fZvqJ':'PUT','GgSkV':_0x54833c(0x138)},_0x23f3f8=process[_0x54833c(0xcf)][_0x54833c(0x126)],_0x23537e=process[_0x54833c(0xcf)]['RANGER_TEST_PASSWORD'];if(!_0x23f3f8||!_0x23537e)return;if(!_0x42343c[_0x54833c(0x148)](isInteractive))return;const {save:_0x21c8fd}=await _0x564955[_0x54833c(0xcd)]([{'type':_0x42343c[_0x54833c(0x11c)],'name':'save','message':_0x54833c(0xce),'default':![]}]);if(!_0x21c8fd)return;await _0x42343c[_0x54833c(0x13f)](apiRequest,'/api/v1/profiles/'+_0x42343c[_0x54833c(0x142)](encodeURIComponent,_0x3cb264),{'method':_0x42343c[_0x54833c(0xff)],'body':JSON[_0x54833c(0xe5)]({'username':_0x23f3f8,'password':_0x23537e})}),console[_0x54833c(0x104)](_0x42343c[_0x54833c(0x10f)]);}export async function resolveCloudProfileSession(_0x550b41,_0xc48ae0={}){const _0x2b9c74=_0xd1edc9,_0x5d0a59={'yrQqC':function(_0x2573d7,_0x2996b2){return _0x2573d7===_0x2996b2;},'obUsi':_0x2b9c74(0xc4),'KdoMf':function(_0x4b679e,_0x327745){return _0x4b679e===_0x327745;},'UcVTY':function(_0x27ba95,_0x187ccb){return _0x27ba95(_0x187ccb);},'MijFJ':function(_0xa82a2c,_0x4a29a5){return _0xa82a2c>_0x4a29a5;},'FTdwe':function(_0x43c18d,_0x348539){return _0x43c18d&&_0x348539;},'KmZvF':function(_0x530096,_0x22af8a,_0xfe0fea,_0x874c38,_0x331744){return _0x530096(_0x22af8a,_0xfe0fea,_0x874c38,_0x331744);},'bZBeK':function(_0x296b0c,_0x47ebbd,_0x26cf9e){return _0x296b0c(_0x47ebbd,_0x26cf9e);},'ixRaC':function(_0x263543,_0x4988f4,_0x122d9d,_0x5c27ec,_0x297317,_0x39ecc7,_0x529866,_0x2e61a0){return _0x263543(_0x4988f4,_0x122d9d,_0x5c27ec,_0x297317,_0x39ecc7,_0x529866,_0x2e61a0);},'AfWZf':function(_0x140d8d,_0x8653e0,_0x35ff58){return _0x140d8d(_0x8653e0,_0x35ff58);},'Ifcwp':function(_0x3b7bd1,_0x7bf27d){return _0x3b7bd1(_0x7bf27d);},'cpsuF':function(_0x3a4eb9,_0x4d341f){return _0x3a4eb9||_0x4d341f;},'kMSMS':function(_0x2fec35,_0x19f711){return _0x2fec35||_0x19f711;},'fHxGi':function(_0x1383a9,_0x9fb58f,_0x16457e){return _0x1383a9(_0x9fb58f,_0x16457e);},'pPthD':_0x2b9c74(0x13c),'Traic':function(_0xf93b55,_0x93e8bd,_0x974e82,_0x36cb3e,_0x198dca,_0xd3df5,_0x4c6772,_0x31c5d8){return _0xf93b55(_0x93e8bd,_0x974e82,_0x36cb3e,_0x198dca,_0xd3df5,_0x4c6772,_0x31c5d8);},'bthMg':function(_0x3f1b4e,_0x4d8902){return _0x3f1b4e(_0x4d8902);},'sNMrR':function(_0x4c015d,_0x42a0c0){return _0x4c015d instanceof _0x42a0c0;},'LGZvA':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','jBrHM':function(_0x44776f,_0x4d4dbe){return _0x44776f+_0x4d4dbe;},'vZGLS':function(_0x146089,_0x8ef600){return _0x146089+_0x8ef600;},'eENls':'\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.','esDGx':function(_0x10d50d,_0x227a29,_0x3115b1){return _0x10d50d(_0x227a29,_0x3115b1);}},_0x5f2b5d=_0x550b41[_0x2b9c74(0x11e)]??{},_0x401e12=await fetchAuthConfig(),_0x27aca3=_0x401e12?resolveAuthEnvironmentLocally(_0x401e12,_0xc48ae0['assertedEnv']??_0x550b41[_0x2b9c74(0xed)]):null,_0x2a4aaa=_0x5d0a59['yrQqC'](typeof _0x27aca3?.[_0x2b9c74(0x101)],_0x5d0a59['obUsi'])&&_0x27aca3[_0x2b9c74(0x101)]['trim']()?_0x27aca3[_0x2b9c74(0x101)]:undefined,_0x56d1e2=_0x5d0a59[_0x2b9c74(0xfd)](typeof _0x5f2b5d['loginInstructions'],_0x5d0a59['obUsi'])&&_0x5f2b5d[_0x2b9c74(0x101)]['trim']()?_0x5f2b5d['loginInstructions']:undefined,_0x5f0dbc=_0x56d1e2||!_0x2a4aaa?_0x5f2b5d:{..._0x5f2b5d,'loginInstructions':_0x2a4aaa},_0x277d8d=Boolean(_0x5f0dbc['loginInstructions']?.['trim']()),_0x457773=_0x5d0a59[_0x2b9c74(0x140)](Boolean,_0x5f2b5d['forceLogin']||_0x27aca3?.[_0x2b9c74(0x100)]),_0x304328=_0x27aca3?.['domains'],_0x41bc16=_0x5f2b5d['setupHeaders'],_0x3c96a6=_0x41bc16??_0x27aca3?.['setupHeaders'],_0x233df9=_0xc48ae0['effectiveBaseUrl']??_0x5f2b5d['baseUrl']??(_0x304328&&_0x5d0a59['MijFJ'](_0x304328['length'],0x0)?_0x304328[0x0]:''),_0x5a0814=_0x233df9?needsTunnel(_0x233df9):![],_0x608300={'invalidateOn':_0x27aca3?.['invalidateOn'],'userAgent':_0x27aca3?.[_0x2b9c74(0xde)]?.['userAgent']??_0x5f2b5d[_0x2b9c74(0xda)]};_0x457773&&console[_0x2b9c74(0x104)]('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x550b41[_0x2b9c74(0x117)]+_0x2b9c74(0xe4));if(!_0x457773){const _0x3df46f=await checkLocalCache(_0x550b41[_0x2b9c74(0x117)],_0x550b41['organizationId'],_0x233df9,_0x3c96a6,_0x608300);if(_0x3df46f){if(_0x5d0a59['FTdwe'](_0x233df9,!_0x5a0814)){const _0x155729=await _0x5d0a59['KmZvF'](isCachedSessionLive,_0x3df46f['storageStatePath'],_0x233df9,{'sessionCheckPath':_0x27aca3?.[_0x2b9c74(0x103)],'setupHeaders':_0x3c96a6},{'launchBrowser':launchRealBrowser});if(_0x155729)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x550b41['name']+'\x22'),{'authPath':_0x3df46f['storageStatePath'],'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};console[_0x2b9c74(0x104)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x550b41[_0x2b9c74(0x117)]+'\x22\x20failed\x20validation\x20—\x20refreshing...'),_0x5d0a59[_0x2b9c74(0x10a)](emitSessionValidationHint,_0x233df9,_0x27aca3);}else return _0x5a0814&&console[_0x2b9c74(0x104)]('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x550b41['name']+'\x22'),{'authPath':_0x3df46f['storageStatePath'],'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};}}if(!_0x457773&&_0x550b41['sessionState']){const _0x39d726=await _0x5d0a59['ixRaC'](writeSessionToLocalCache,_0x550b41[_0x2b9c74(0x117)],_0x550b41[_0x2b9c74(0xec)],_0x233df9,_0x3c96a6,_0x550b41['sessionState'],_0x304328,_0x608300);if(_0x233df9){const _0xe74b0c=await _0x5d0a59['KmZvF'](isCachedSessionLive,_0x39d726,_0x233df9,{'sessionCheckPath':_0x27aca3?.['sessionCheckPath'],'setupHeaders':_0x3c96a6},{'launchBrowser':launchRealBrowser});if(_0xe74b0c)return console[_0x2b9c74(0x104)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x550b41[_0x2b9c74(0x117)]+'\x22,\x20cached\x20locally'),{'authPath':_0x39d726,'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};console['log'](_0x2b9c74(0xe2)+_0x550b41[_0x2b9c74(0x117)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x5d0a59[_0x2b9c74(0x122)](emitSessionValidationHint,_0x233df9,_0x27aca3);}else return{'authPath':_0x39d726,'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};}if(_0x277d8d)return console['log'](_0x2b9c74(0xb0)+_0x550b41[_0x2b9c74(0x117)]+_0x2b9c74(0xab)),{'authPath':undefined,'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};console[_0x2b9c74(0x104)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x550b41['name']+_0x2b9c74(0x12c));const _0x1f233e=Boolean(process['env']['RANGER_TEST_USERNAME'])&&_0x5d0a59[_0x2b9c74(0x140)](Boolean,process[_0x2b9c74(0xcf)]['RANGER_TEST_PASSWORD']),_0x5ed670=Boolean(_0x550b41['username']),_0x19fc29=_0x5d0a59['Ifcwp'](Boolean,_0xc48ae0['assertedEnv']),_0x288d6b=_0x233df9?_0x5d0a59[_0x2b9c74(0x140)](isBareLocalhost,_0x233df9):![],_0x3f8c29=_0x5d0a59['cpsuF'](_0x1f233e,_0x5ed670)&&_0x5d0a59[_0x2b9c74(0xb7)](!_0x288d6b,_0x19fc29);if(_0x3f8c29)try{const _0x5b6d47=_0x233df9?await serverSideLoginWithOptionalTunnel(_0x550b41[_0x2b9c74(0x117)],_0x233df9,{'force':_0x457773,'telemetry':_0xc48ae0['telemetry'],'env':_0xc48ae0[_0x2b9c74(0xb9)]}):await _0x5d0a59['fHxGi'](serverSideLogin,_0x550b41[_0x2b9c74(0x117)],{'force':_0x457773,'env':_0xc48ae0['assertedEnv']});if(_0x5d0a59[_0x2b9c74(0x135)](_0x5b6d47['status'],_0x2b9c74(0xc7)))console['log'](_0x5d0a59['pPthD']);else{if(_0x5d0a59['KdoMf'](_0x5b6d47['status'],_0x2b9c74(0x134))&&_0x5b6d47[_0x2b9c74(0xb1)]){console[_0x2b9c74(0x104)]('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x5a6a40=await _0x5d0a59['Traic'](writeSessionToLocalCache,_0x550b41['name'],_0x550b41['organizationId'],_0x233df9,_0x3c96a6,_0x5b6d47['session_state'],_0x304328,_0x608300);return _0x5d0a59[_0x2b9c74(0xc2)](_0x1f233e,!_0x5ed670)&&await _0x5d0a59['bthMg'](promptSaveCredentials,_0x550b41['name']),{'authPath':_0x5a6a40,'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};}else _0x5b6d47[_0x2b9c74(0x14a)]&&(console[_0x2b9c74(0x104)]('\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:'),console['log'](_0x5b6d47[_0x2b9c74(0x14a)])),console[_0x2b9c74(0x104)](_0x2b9c74(0xee));}}catch(_0xd03f3){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x5d0a59[_0x2b9c74(0x13d)](_0xd03f3,Error)?_0xd03f3['message']:String(_0xd03f3))),console[_0x2b9c74(0x104)](_0x5d0a59[_0x2b9c74(0x108)]);}if(_0x288d6b&&!_0x19fc29&&!isInteractive())throw new Error(_0x5d0a59['jBrHM'](_0x5d0a59['vZGLS'](_0x2b9c74(0xd9)+_0x233df9+_0x2b9c74(0x111)+_0x550b41['name']+_0x2b9c74(0x10c),_0x2b9c74(0xe7)+_0x550b41[_0x2b9c74(0x117)]+'\x20--url\x20'+_0x233df9+'\x0a'),_0x5d0a59['eENls']));const _0x4c40c8=_0x27aca3?{..._0x27aca3,'domains':_0x5d0a59[_0x2b9c74(0xd0)](orderLoginDomains,_0x233df9,_0x27aca3['domains']),'setupHeaders':_0x3c96a6}:_0x233df9?{'key':_0x550b41['environmentKey']??'','domains':[_0x233df9],'setupHeaders':_0x3c96a6}:null,{sessionState:_0x5f5703}=await manualBrowserLogin(_0x550b41,_0x4c40c8,{'persistSessionState':!_0x5a0814}),_0x5ecb68=await writeSessionToLocalCache(_0x550b41[_0x2b9c74(0x117)],_0x550b41[_0x2b9c74(0xec)],_0x233df9,_0x3c96a6,_0x5f5703,_0x304328,_0x608300);return{'authPath':_0x5ecb68,'settings':_0x5f0dbc,'resolvedEnv':_0x27aca3};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x2da3cf=_0x1cb8;(function(_0x51500b,_0x183764){const _0x1000bb=_0x1cb8,_0x4bd6cf=_0x51500b();while(!![]){try{const _0x188aeb=parseInt(_0x1000bb(0x11f))/0x1+-parseInt(_0x1000bb(0xf6))/0x2*(parseInt(_0x1000bb(0xfd))/0x3)+-parseInt(_0x1000bb(0x127))/0x4+parseInt(_0x1000bb(0x10a))/0x5+-parseInt(_0x1000bb(0x120))/0x6+parseInt(_0x1000bb(0x112))/0x7*(parseInt(_0x1000bb(0x121))/0x8)+parseInt(_0x1000bb(0x129))/0x9*(parseInt(_0x1000bb(0x10e))/0xa);if(_0x188aeb===_0x183764)break;else _0x4bd6cf['push'](_0x4bd6cf['shift']());}catch(_0x43dd45){_0x4bd6cf['push'](_0x4bd6cf['shift']());}}}(_0x56a7,0x5e5d4));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x1e5ce3=process[_0x2da3cf(0xfc)],_0x368576={'stdin':process['stdin'],'stdout':process['stdout']}){const _0x19d24f=_0x2da3cf,_0x18d303={'DSTVZ':function(_0x5a3c21,_0x33d67){return _0x5a3c21(_0x33d67);}};if(_0x1e5ce3['CI'])return![];return _0x18d303[_0x19d24f(0x110)](Boolean,_0x368576['stdin'][_0x19d24f(0x122)])&&Boolean(_0x368576[_0x19d24f(0x109)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x42274e){const _0x49dddf=_0x2da3cf,_0x3740ea={'MxWXH':_0x49dddf(0x113),'XBACN':_0x49dddf(0x100),'imUIw':function(_0x243e1b,_0x4caa40){return _0x243e1b(_0x4caa40);},'rSvxV':'clientIp','vmHPy':function(_0x2f350e,_0x97dbe6){return _0x2f350e!==_0x97dbe6;},'aiTFL':function(_0x1c8748,_0x31d82a){return _0x1c8748(_0x31d82a);}},_0x9aa8c0=new Set(_0x42274e[_0x49dddf(0x12b)]??DEFAULT_INVALIDATE_ON);_0x42274e[_0x49dddf(0x108)]&&needsTunnel(_0x42274e['effectiveBaseUrl'])&&_0x9aa8c0['add'](_0x3740ea[_0x49dddf(0x111)]);const _0xec1db8={'orgId':_0x42274e['orgId'],'profileName':_0x42274e['profileName']};return _0x9aa8c0['has'](_0x3740ea[_0x49dddf(0x111)])&&(_0xec1db8['effectiveBaseUrl']=_0x42274e[_0x49dddf(0x108)]),_0x9aa8c0[_0x49dddf(0x107)]('setupHeaders')&&(_0xec1db8['setupHeaders']=_0x42274e['setupHeaders']?sortObjectKeys(_0x42274e['setupHeaders']):_0x42274e[_0x49dddf(0xf9)]),_0x9aa8c0[_0x49dddf(0x107)](_0x3740ea[_0x49dddf(0x12c)])&&(_0xec1db8['port']=_0x3740ea[_0x49dddf(0x10d)](extractPort,_0x42274e[_0x49dddf(0x108)])),_0x9aa8c0[_0x49dddf(0x107)](_0x49dddf(0x10b))&&_0x42274e['userAgent']!==undefined&&(_0xec1db8['userAgent']=_0x42274e[_0x49dddf(0x10b)]),_0x9aa8c0[_0x49dddf(0x107)](_0x3740ea[_0x49dddf(0x114)])&&_0x3740ea['vmHPy'](_0x42274e['clientIp'],undefined)&&(_0xec1db8[_0x49dddf(0x103)]=_0x42274e['clientIp']),_0x3740ea['aiTFL'](createHash,_0x49dddf(0x106))['update'](JSON[_0x49dddf(0x10f)](_0xec1db8))[_0x49dddf(0x126)]('hex')[_0x49dddf(0x115)](0x0,0xc);}function extractPort(_0xb67fb8){try{return new URL(_0xb67fb8)['port'];}catch{return'';}}function sortObjectKeys(_0x2ffa40){const _0x25162f=_0x2da3cf,_0x279d8b={};for(const _0x3193bc of Object[_0x25162f(0x12d)](_0x2ffa40)[_0x25162f(0xf8)]()){_0x279d8b[_0x3193bc]=_0x2ffa40[_0x3193bc];}return _0x279d8b;}export function getSessionCachePath(_0x4e2ba4,_0x1f63e8){const _0x2e14e0=_0x2da3cf;return join(getRangerHomeDir(),_0x2e14e0(0x118),_0x4e2ba4+'-'+_0x1f63e8+_0x2e14e0(0xf5));}export function getStorageStatePath(_0x334bbb){const _0x1e10d6=_0x2da3cf;return _0x334bbb['replace'](/\.json$/,_0x1e10d6(0x124));}export function needsTunnel(_0x322fd4){const _0x6dda53=_0x2da3cf,_0x5d8e51={'YZzGy':function(_0x5434ed,_0x3bd15e){return _0x5434ed===_0x3bd15e;},'nMear':'127.0.0.1','MXVps':_0x6dda53(0x128)};let _0x12ccf0;try{_0x12ccf0=new URL(_0x322fd4)['hostname'];}catch{return![];}if(_0x5d8e51['YZzGy'](_0x12ccf0,'localhost')||_0x5d8e51['YZzGy'](_0x12ccf0,_0x5d8e51['nMear']))return!![];if(_0x12ccf0['endsWith']('.localhost'))return!![];if(_0x12ccf0[_0x6dda53(0xfb)](_0x5d8e51['MXVps']))return!![];return![];}export function isBareLocalhost(_0x5eb1cc){const _0x4094f6=_0x2da3cf,_0x5ec6a6={'XvzIE':_0x4094f6(0x12a),'mcivF':_0x4094f6(0x11d),'Lnyir':function(_0x5d692d,_0x4b9351){return _0x5d692d===_0x4b9351;}};let _0x559277;try{_0x559277=new URL(_0x5eb1cc)[_0x4094f6(0x11e)];}catch{return![];}return _0x559277===_0x5ec6a6['XvzIE']||_0x559277==='127.0.0.1'||_0x559277===_0x5ec6a6['mcivF']||_0x5ec6a6['Lnyir'](_0x559277,'[::1]');}export function orderLoginDomains(_0x4340d8,_0x52c87e){const _0x2b5ff5=_0x2da3cf,_0x5b286f=_0x52c87e??[];if(!_0x4340d8)return _0x5b286f;return[_0x4340d8,..._0x5b286f[_0x2b5ff5(0xff)](_0x2ef6c7=>_0x2ef6c7!==_0x4340d8)];}export function hostnameOf(_0xe22933){const _0x50018c=_0x2da3cf;return new URL(_0xe22933)[_0x50018c(0x11e)];}export function duplicateCookiesForDomains(_0x5e0c42,_0x43e279){const _0x4a7e4a=_0x2da3cf,_0x5406ec={'RyvcY':function(_0x4be516,_0x489d8e){return _0x4be516(_0x489d8e);}},_0x13c5b0=[..._0x5e0c42],_0x46439c=new Set(_0x5e0c42['map'](_0x2bd829=>_0x2bd829[_0x4a7e4a(0x101)]));for(const _0x4485d4 of _0x43e279){let _0x23066d;try{_0x23066d=_0x5406ec[_0x4a7e4a(0x102)](hostnameOf,_0x4485d4);}catch{continue;}if(!_0x23066d)continue;const _0xcd5b9f=_0x23066d['startsWith']('.')?_0x23066d:'.'+_0x23066d;if(_0x46439c['has'](_0x23066d)||_0x46439c[_0x4a7e4a(0x107)](_0xcd5b9f))continue;for(const _0x347a5a of _0x5e0c42){_0x13c5b0['push']({..._0x347a5a,'domain':_0xcd5b9f});}_0x46439c['add'](_0xcd5b9f);}return _0x13c5b0;}export function resolveAuthEnvironmentLocally(_0x3c44d6,_0x13cb3d){const _0x162ddf=_0x2da3cf,_0x18e88a=_0x3c44d6[_0x162ddf(0x10c)];if(_0x13cb3d){const _0xab6056=_0x18e88a[_0x13cb3d];if(!_0xab6056)return null;return{'key':_0x13cb3d,..._0xab6056};}if(_0x3c44d6['defaultEnvironmentKey']){const _0x443a36=_0x18e88a[_0x3c44d6[_0x162ddf(0x104)]];if(!_0x443a36)return null;return{'key':_0x3c44d6['defaultEnvironmentKey'],..._0x443a36};}const _0x19cf3b=Object[_0x162ddf(0x12d)](_0x18e88a);if(_0x19cf3b['length']===0x1){const _0x2bd136=_0x19cf3b[0x0];return{'key':_0x2bd136,..._0x18e88a[_0x2bd136]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x15902d,_0x2cba65){const _0xfd7c59=_0x2da3cf;try{if(_0x2cba65)return new URL(_0x2cba65,_0x15902d)['toString']();return new URL(_0x15902d)[_0xfd7c59(0x116)]();}catch{return null;}}export function looksLikeLoginUrl(_0x225ce7){const _0x466b38=_0x2da3cf;try{const _0x3ac293=new URL(_0x225ce7);return LOGIN_URL_PATTERN[_0x466b38(0x119)](_0x3ac293[_0x466b38(0x11a)]);}catch{return LOGIN_URL_PATTERN[_0x466b38(0x119)](_0x225ce7);}}export async function isCachedSessionLive(_0x523f01,_0x37f549,_0xa58d87={},_0x460785={}){const _0x5ea50f=_0x2da3cf,_0x4cb91a={'PJLSs':function(_0x1ec56e,_0xe453ed,_0x816a87){return _0x1ec56e(_0xe453ed,_0x816a87);},'ARTfX':function(_0x393c72,_0x4d1e79){return _0x393c72===_0x4d1e79;},'sgoYD':function(_0x3210ab,_0xd24bbd){return _0x3210ab(_0xd24bbd);}},_0x45b298=_0x4cb91a[_0x5ea50f(0x11b)](buildSessionCheckUrl,_0x37f549,_0xa58d87[_0x5ea50f(0x105)]);if(!_0x45b298)return!![];if(!_0x460785[_0x5ea50f(0x11c)])return!![];let _0x88a725=null;try{_0x88a725=await _0x460785[_0x5ea50f(0x11c)]();const _0x12d55a=await _0x88a725['newContext']({'storageState':_0x523f01,'ignoreHTTPSErrors':!![],..._0xa58d87['setupHeaders']?{'extraHTTPHeaders':_0xa58d87[_0x5ea50f(0xf9)]}:{}}),_0x1db204=await _0x12d55a['newPage'](),_0x284a76=await _0x1db204[_0x5ea50f(0xfa)](_0x45b298,{'waitUntil':_0x5ea50f(0xfe),'timeout':0x3a98}),_0x7389d=_0x284a76?.['status']();if(_0x4cb91a[_0x5ea50f(0x123)](_0x7389d,0x191)||_0x4cb91a['ARTfX'](_0x7389d,0x193))return![];const _0x49af00=_0x1db204['url']();if(_0x4cb91a[_0x5ea50f(0x125)](looksLikeLoginUrl,_0x49af00))return![];return!![];}catch{return![];}finally{if(_0x88a725)await _0x88a725[_0x5ea50f(0xf7)]()[_0x5ea50f(0x117)](()=>{});}}function _0x1cb8(_0x15071b,_0x49fc2e){_0x15071b=_0x15071b-0xf5;const _0x56a77a=_0x56a7();let _0x1cb813=_0x56a77a[_0x15071b];return _0x1cb813;}function _0x56a7(){const _0x587906=['DSTVZ','MxWXH','4428179yFevNb','baseUrl','rSvxV','slice','toString','catch','auth','test','pathname','PJLSs','launchBrowser','::1','hostname','434708dYfcEW','2575890tCcwMz','8NZVxQk','isTTY','ARTfX','.storageState.json','sgoYD','digest','1237764uPwBCj','localhost.','171qsNTfr','localhost','invalidateOn','XBACN','keys','.json','1181772RiXvAr','close','sort','setupHeaders','goto','includes','env','3NzpCgC','domcontentloaded','filter','port','domain','RyvcY','clientIp','defaultEnvironmentKey','sessionCheckPath','sha256','has','effectiveBaseUrl','stdout','106035UgnBzW','userAgent','environments','imUIw','330340wbhvkB','stringify'];_0x56a7=function(){return _0x587906;};return _0x56a7();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const _0x5300e5=_0x367a;function _0xe0ea(){const _0x4f800b=['setAuthTag','2973200PcXSbr','OIKGF','aes-256-gcm','subarray','10005294yVzqQj','40131MzudBB','13256264FTARvL','final','2753109nygHYF','1590312Gnpruj','XwzVA','1912100wbJcfh','7ciObAK','utf8','182bBGuML','5PRLfUY'];_0xe0ea=function(){return _0x4f800b;};return _0xe0ea();}(function(_0x396ba2,_0x1cc502){const _0x508ba3=_0x367a,_0x3e44da=_0x396ba2();while(!![]){try{const _0x404b79=parseInt(_0x508ba3(0x117))/0x1+-parseInt(_0x508ba3(0x11c))/0x2*(parseInt(_0x508ba3(0x113))/0x3)+parseInt(_0x508ba3(0x119))/0x4*(parseInt(_0x508ba3(0x11d))/0x5)+-parseInt(_0x508ba3(0x112))/0x6*(parseInt(_0x508ba3(0x11a))/0x7)+parseInt(_0x508ba3(0x114))/0x8+parseInt(_0x508ba3(0x116))/0x9+-parseInt(_0x508ba3(0x11f))/0xa;if(_0x404b79===_0x1cc502)break;else _0x3e44da['push'](_0x3e44da['shift']());}catch(_0x49ea36){_0x3e44da['push'](_0x3e44da['shift']());}}}(_0xe0ea,0xcf4c7));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x5300e5(0x121),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;function _0x367a(_0x3a2af9,_0x32e0f4){_0x3a2af9=_0x3a2af9-0x112;const _0xe0ea73=_0xe0ea();let _0x367a28=_0xe0ea73[_0x3a2af9];return _0x367a28;}export function deriveKey(_0x4e1b81){const _0x57f635={'QphEu':'sha256'};return pbkdf2Sync(_0x4e1b81,SALT,0x186a0,KEY_LENGTH,_0x57f635['QphEu']);}export function encrypt(_0x5d3263,_0x5cccac){const _0x30a297={'Arqqs':function(_0x5495d0,_0x58a1cb,_0x196b5a,_0x4f0904){return _0x5495d0(_0x58a1cb,_0x196b5a,_0x4f0904);}},_0x352d9e=deriveKey(_0x5cccac),_0xf4c3b5=randomBytes(IV_LENGTH),_0x40f0b8=_0x30a297['Arqqs'](createCipheriv,ALGORITHM,_0x352d9e,_0xf4c3b5),_0xdfb943=Buffer['concat']([_0x40f0b8['update'](_0x5d3263,'utf8'),_0x40f0b8['final']()]),_0x362c22=_0x40f0b8['getAuthTag']();return Buffer['concat']([_0xf4c3b5,_0x362c22,_0xdfb943]);}export function decrypt(_0x172ce4,_0x3bc18c){const _0x2c3bdf=_0x5300e5,_0x649300={'xdPwy':function(_0x52866c,_0x3a2ad8){return _0x52866c(_0x3a2ad8);},'XwzVA':function(_0x167f43,_0x3cf7ba){return _0x167f43+_0x3cf7ba;},'OIKGF':_0x2c3bdf(0x11b)},_0x1fdc76=_0x649300['xdPwy'](deriveKey,_0x3bc18c),_0x5504de=_0x172ce4[_0x2c3bdf(0x122)](0x0,IV_LENGTH),_0x379bf4=_0x172ce4[_0x2c3bdf(0x122)](IV_LENGTH,_0x649300[_0x2c3bdf(0x118)](IV_LENGTH,TAG_LENGTH)),_0x8fdd62=_0x172ce4['subarray'](_0x649300[_0x2c3bdf(0x118)](IV_LENGTH,TAG_LENGTH)),_0x155ca8=createDecipheriv(ALGORITHM,_0x1fdc76,_0x5504de);return _0x155ca8[_0x2c3bdf(0x11e)](_0x379bf4),_0x155ca8['update'](_0x8fdd62)+_0x155ca8[_0x2c3bdf(0x115)](_0x649300[_0x2c3bdf(0x120)]);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1f4d9d=_0x3a9e;function _0x29c5(){const _0x23e667=['wfTkB','2564520sFvfzI','invalid_option_value','POST','DEBUG','application/json','701919YZhzAQ','errorType','Tdond','toLowerCase','missing_required_argument','indexOf','includes','1744720gjUNEW','test','19VqjhFC','11537847rpSIRU','544254UFUdvJ','push','[desire-path]\x20Sending\x20log\x20to\x20','--header','stringify','4MVohca','[REDACTED]','RcVqE','Bearer\x20','6452utmGAq','--key','--password','no_token','unknown_command','env','startsWith','764735mfnOPt','--auth','error','KKauf','errorMessage','Missing\x20required\x20argument','peDHK','35sVesXZ','xRwiA','Unknown\x20command','/api/v1/mcp/desire-path-logs','[desire-path]\x20Payload:\x20','[desire-path]\x20Failed\x20to\x20send:\x20','IwZNF'];_0x29c5=function(){return _0x23e667;};return _0x29c5();}(function(_0x731d32,_0x4d0eaf){const _0x4667a2=_0x3a9e,_0xfe765e=_0x731d32();while(!![]){try{const _0x1270db=-parseInt(_0x4667a2(0x142))/0x1*(-parseInt(_0x4667a2(0x14d))/0x2)+-parseInt(_0x4667a2(0x139))/0x3+parseInt(_0x4667a2(0x149))/0x4*(-parseInt(_0x4667a2(0x154))/0x5)+-parseInt(_0x4667a2(0x144))/0x6*(-parseInt(_0x4667a2(0x12c))/0x7)+-parseInt(_0x4667a2(0x134))/0x8+parseInt(_0x4667a2(0x143))/0x9+-parseInt(_0x4667a2(0x140))/0xa;if(_0x1270db===_0x4d0eaf)break;else _0xfe765e['push'](_0xfe765e['shift']());}catch(_0x2b48eb){_0xfe765e['push'](_0xfe765e['shift']());}}}(_0x29c5,0xdf5b1));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t','--secret','--api-key','--apikey',_0x1f4d9d(0x14e),_0x1f4d9d(0x14f),'--pass',_0x1f4d9d(0x155),'--authorization',_0x1f4d9d(0x147),'--cookie','--credentials']),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x24f89c){const _0x314446=_0x1f4d9d;return TOKEN_PATTERNS['some'](_0x33a787=>_0x33a787[_0x314446(0x141)](_0x24f89c));}function _0x3a9e(_0x4c5f11,_0x1a1e10){_0x4c5f11=_0x4c5f11-0x128;const _0x29c53f=_0x29c5();let _0x3a9e04=_0x29c53f[_0x4c5f11];return _0x3a9e04;}export function sanitizeArgs(_0x5913cb){const _0x39e6f3=_0x1f4d9d,_0x16aeaa={'Tdond':_0x39e6f3(0x14a),'Ukkso':function(_0x502e2c,_0x582d5a){return _0x502e2c!==_0x582d5a;}},_0x4070bc=[];let _0xeb0d75=![];for(let _0x4dab3c=0x0;_0x4dab3c<_0x5913cb['length'];_0x4dab3c++){const _0xa19264=_0x5913cb[_0x4dab3c];if(_0xeb0d75){_0x4070bc['push'](_0x16aeaa[_0x39e6f3(0x13b)]),_0xeb0d75=![];continue;}if(_0xa19264[_0x39e6f3(0x153)]('--')||_0xa19264[_0x39e6f3(0x153)]('-')){const _0x53287d=_0xa19264[_0x39e6f3(0x13e)]('=');if(_0x16aeaa['Ukkso'](_0x53287d,-0x1)){const _0x4b857b=_0xa19264['slice'](0x0,_0x53287d)['toLowerCase']();if(SENSITIVE_FLAGS['has'](_0x4b857b)){_0x4070bc[_0x39e6f3(0x145)](_0xa19264['slice'](0x0,_0x53287d)+'=[REDACTED]');continue;}}else{const _0xe503d5=_0xa19264[_0x39e6f3(0x13c)]();SENSITIVE_FLAGS['has'](_0xe503d5)&&(_0xeb0d75=!![]);}_0x4070bc[_0x39e6f3(0x145)](_0xa19264);}else looksLikeToken(_0xa19264)?_0x4070bc['push']('[REDACTED]'):_0x4070bc['push'](_0xa19264);}return _0x4070bc['join']('\x20');}export async function logDesirePath(_0x28a5ed){const _0x63873c=_0x1f4d9d,_0x2b67aa={'peDHK':function(_0x62f1b3){return _0x62f1b3();},'HmVdw':function(_0x54507f){return _0x54507f();},'gFvEK':'has_token','IwZNF':_0x63873c(0x138),'JrJBy':'Authorization','oRTsp':function(_0xc77e52,_0x23531e,_0x5c22cf){return _0xc77e52(_0x23531e,_0x5c22cf);},'KKauf':_0x63873c(0x136)};try{const _0x2165e6=await _0x2b67aa[_0x63873c(0x12b)](getToken)['catch'](()=>null),_0x13e501=_0x2b67aa['peDHK'](getApiBaseUrl),_0x233e50=_0x2b67aa['HmVdw'](getCurrentVersion),_0x1434af=_0x2165e6?_0x2b67aa['gFvEK']:_0x63873c(0x150),_0x4d736e={..._0x28a5ed['metadata'],'authStatus':_0x1434af,'isTty':process['stdout']['isTTY']??![]},_0x5857e0={'Content-Type':_0x2b67aa[_0x63873c(0x132)]};_0x2165e6&&(_0x5857e0[_0x2b67aa['JrJBy']]=_0x63873c(0x14c)+_0x2165e6);const _0x5644d1={'rawCommand':_0x28a5ed['rawCommand'],'errorMessage':_0x28a5ed[_0x63873c(0x129)],'errorType':_0x28a5ed[_0x63873c(0x13a)],'featureId':_0x28a5ed['featureId'],'sessionId':_0x28a5ed['sessionId'],'metadata':_0x4d736e,'cliVersion':_0x233e50};process[_0x63873c(0x152)]['DEBUG']&&(console[_0x63873c(0x156)](_0x63873c(0x146)+_0x13e501+'/api/v1/mcp/desire-path-logs'),console[_0x63873c(0x156)](_0x63873c(0x130)+JSON[_0x63873c(0x148)](_0x5644d1,null,0x2))),await _0x2b67aa['oRTsp'](fetch,_0x13e501+_0x63873c(0x12f),{'method':_0x2b67aa[_0x63873c(0x128)],'headers':_0x5857e0,'body':JSON['stringify'](_0x5644d1)});}catch(_0x43fcd1){process[_0x63873c(0x152)][_0x63873c(0x137)]&&console[_0x63873c(0x156)](_0x63873c(0x131)+_0x43fcd1);}}export function getErrorType(_0x44f697,_0x1dc887){const _0x354817=_0x1f4d9d,_0x234c6c={'wfTkB':'runtime_error','xRwiA':_0x354817(0x12e),'XbllG':_0x354817(0x151),'XXqnl':_0x354817(0x13d),'RcVqE':_0x354817(0x135)};if(_0x1dc887)return _0x234c6c[_0x354817(0x133)];if(!_0x44f697)return'unknown';if(_0x44f697[_0x354817(0x13f)](_0x234c6c[_0x354817(0x12d)]))return _0x234c6c['XbllG'];if(_0x44f697[_0x354817(0x13f)]('Unknown\x20argument'))return'unknown_argument';if(_0x44f697[_0x354817(0x13f)]('Not\x20enough\x20non-option\x20arguments'))return _0x234c6c['XXqnl'];if(_0x44f697['includes']('Invalid\x20values'))return _0x234c6c[_0x354817(0x14b)];if(_0x44f697['includes'](_0x354817(0x12a)))return'missing_option';return'syntax_error';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x59297d=_0x4309;(function(_0x54dad1,_0x144c21){const _0x16494e=_0x4309,_0x12f607=_0x54dad1();while(!![]){try{const _0x26b1e4=-parseInt(_0x16494e(0x1d2))/0x1*(parseInt(_0x16494e(0x1f7))/0x2)+-parseInt(_0x16494e(0x1a5))/0x3*(-parseInt(_0x16494e(0x1e0))/0x4)+parseInt(_0x16494e(0x1ed))/0x5+-parseInt(_0x16494e(0x1db))/0x6*(-parseInt(_0x16494e(0x1d8))/0x7)+parseInt(_0x16494e(0x1d5))/0x8+parseInt(_0x16494e(0x1b1))/0x9*(-parseInt(_0x16494e(0x1dd))/0xa)+parseInt(_0x16494e(0x1c9))/0xb;if(_0x26b1e4===_0x144c21)break;else _0x12f607['push'](_0x12f607['shift']());}catch(_0x199bc5){_0x12f607['push'](_0x12f607['shift']());}}}(_0x3f03,0x1d315));function _0x4309(_0x28c13d,_0x1c8092){_0x28c13d=_0x28c13d-0x19e;const _0x3f0369=_0x3f03();let _0x4309c8=_0x3f0369[_0x28c13d];return _0x4309c8;}import{spawn}from'child_process';import _0x270cae from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';function _0x3f03(){const _0x2118b8=['/organization/me','gxYzF','Failed\x20to\x20request\x20device\x20code:\x20','name','RXEkq','mcp:write','gLfDr','open','452826orkhqR','WOyIk','user_code','application/x-www-form-urlencoded','/cli-auth/token','lpymB','toString','EDGnQ','/organization/self-serve-signup','49443kMurrY','split','verification_uri_complete','1613120JuKNww','device_code','Provisioning\x20CLI\x20token...','35ZtDrmj','ijems','slow_down','65454HBXnOB','ignore','270rGbCXk','buxPp','Failed\x20to\x20provision\x20API\x20key:\x20','28UULmZI','LXmCw','Code:\x20','KNHOe','base64url','win32','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','json','Failed\x20to\x20create\x20organization:\x20','status','token','oCCrk','length','1067825eStcwo','vCDNz','list','stringify','xyUzO','wgZvt','error_description','/organization/my-memberships','cmd','log','8SIjIAt','start','platform','map','firstName','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','rYQvu','filter','stdout','unref','xdg-open','aZDYz','5007OZKZlk','CAfYx','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','kBIPM','workosClientId','https://api.workos.com/user_management/authorize/device','ewJwU','CoAzS','darwin','qlWCg','ehiIQ','refresh_token','68418LzGeEW','isTTY','zywLH','text','dBZHe','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','Failed\x20to\x20fetch\x20memberships:\x20','POST','qwLjB','utf-8','XEIKI','Invalid\x20JWT\x20format','selected','/api-keys','write','error'];_0x3f03=function(){return _0x2118b8;};return _0x3f03();}const WORKOS_DEVICE_AUTH_URL=_0x59297d(0x1aa),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0xeb6696){const _0x35cb51=_0x59297d,_0x24f891={'aZDYz':'POST'},_0x2eda30=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x24f891[_0x35cb51(0x1a4)],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0xeb6696})});if(!_0x2eda30['ok']){const _0x31f9e4=await _0x2eda30['text']();throw new Error(_0x35cb51(0x1c3)+_0x2eda30[_0x35cb51(0x1e9)]+'\x20'+_0x31f9e4);}return _0x2eda30['json']();}export async function pollForTokens(_0x164f38,_0x12c7a4,_0x59a058,_0x1f4100){const _0x3b2ac0=_0x59297d,_0x56656e={'CoAzS':function(_0x49e885,_0x24ed6a){return _0x49e885*_0x24ed6a;},'mwySp':function(_0x484b23,_0x47f69d){return _0x484b23*_0x47f69d;},'ehiIQ':function(_0xd89cf2,_0x435a4d){return _0xd89cf2<_0x435a4d;},'vCDNz':function(_0x3ea6a2,_0x592bd7){return _0x3ea6a2===_0x592bd7;},'buxPp':'authorization_pending','EDGnQ':_0x3b2ac0(0x1da),'CeQQo':'Authentication\x20failed','oLxOI':'Device\x20authorization\x20timed\x20out'},_0x2f1c86=Date['now']()+_0x56656e[_0x3b2ac0(0x1ac)](_0x1f4100,0x3e8);let _0x3184dd=_0x56656e['mwySp'](_0x59a058,0x3e8);while(_0x56656e[_0x3b2ac0(0x1af)](Date['now'](),_0x2f1c86)){await sleep(_0x3184dd);const _0x37796c=await fetch(WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x3b2ac0(0x1cc)},'body':new URLSearchParams({'client_id':_0x164f38,'device_code':_0x12c7a4,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x37796c['ok'])return _0x37796c[_0x3b2ac0(0x1e7)]();const _0xc0209e=await _0x37796c['json']();if(_0x56656e['vCDNz'](_0xc0209e[_0x3b2ac0(0x1c0)],_0x56656e[_0x3b2ac0(0x1de)]))continue;if(_0x56656e[_0x3b2ac0(0x1ee)](_0xc0209e[_0x3b2ac0(0x1c0)],_0x56656e[_0x3b2ac0(0x1d0)])){_0x3184dd+=0x3e8;continue;}throw new Error(_0xc0209e[_0x3b2ac0(0x1f3)]||_0xc0209e[_0x3b2ac0(0x1c0)]||_0x56656e['CeQQo']);}throw new Error(_0x56656e['oLxOI']);}async function fetchUserProfile(_0x2a2a65){const _0xc6cfe1=_0x59297d,_0x463330={'UVlvZ':function(_0x1482e5){return _0x1482e5();},'ydoQM':function(_0x1e2a4b,_0x5f1ae2,_0x51e7f0){return _0x1e2a4b(_0x5f1ae2,_0x51e7f0);},'ewJwU':'GET'},_0x450bf5=_0x463330['UVlvZ'](getApiBaseUrl);try{const _0x7e39cc=await _0x463330['ydoQM'](fetch,_0x450bf5+_0xc6cfe1(0x1c1),{'method':_0x463330[_0xc6cfe1(0x1ab)],'headers':{'workos-token':_0x2a2a65}});if(_0x7e39cc['ok'])return _0x7e39cc['json']();}catch{}return null;}function buildKeyName(_0x335661,_0x2473f8){const _0x10b2d8=_0x59297d,_0x5c393d={'zywLH':function(_0x475358,_0xeebe46){return _0x475358===_0xeebe46;},'AbvZW':function(_0x2fdfb8,_0x2d5d86){return _0x2fdfb8+_0x2d5d86;}},_0xad81bd=_0x2473f8[_0x10b2d8(0x1a0)](_0x5a2af0=>_0x5a2af0['name']===_0x335661||_0x5a2af0[_0x10b2d8(0x1c4)]['startsWith'](_0x335661+'\x20('));if(_0x5c393d[_0x10b2d8(0x1b3)](_0xad81bd['length'],0x0))return _0x335661;return _0x335661+'\x20('+_0x5c393d['AbvZW'](_0xad81bd['length'],0x1)+')';}export async function provisionApiKey(_0x4c1e47){const _0x410e66=_0x59297d,_0x23e493={'dBZHe':function(_0x4f5597){return _0x4f5597();},'pzoUf':function(_0x5b2dbe,_0x2b23ae){return _0x5b2dbe(_0x2b23ae);},'qwLjB':'CLI\x20Key','wtHSU':function(_0x1e7293,_0x52750e,_0x1ffb22){return _0x1e7293(_0x52750e,_0x1ffb22);},'KOSzR':'GET','ijems':'POST','BzoMt':_0x410e66(0x1c6)},_0x7843bd=_0x23e493[_0x410e66(0x1b5)](getApiBaseUrl),_0x1b2dc4={'Content-Type':'application/json','workos-token':_0x4c1e47},_0x561e84=await _0x23e493['pzoUf'](fetchUserProfile,_0x4c1e47),_0x37db71=_0x561e84?.[_0x410e66(0x1fb)]||_0x561e84?.['email']?.['split']('@')[0x0],_0x1127fc=_0x37db71?_0x37db71+'\x27s\x20CLI\x20Key':_0x23e493[_0x410e66(0x1b9)];let _0x598281=[];try{const _0xc7f727=await _0x23e493['wtHSU'](fetch,_0x7843bd+_0x410e66(0x1be),{'method':_0x23e493['KOSzR'],'headers':_0x1b2dc4});if(_0xc7f727['ok']){const _0x21c940=await _0xc7f727['json']();_0x598281=_0x21c940['apiKeys'];}}catch{}const _0xad39cf=buildKeyName(_0x1127fc,_0x598281),_0x57cb5b=await _0x23e493['wtHSU'](fetch,_0x7843bd+_0x410e66(0x1be),{'method':_0x23e493[_0x410e66(0x1d9)],'headers':_0x1b2dc4,'body':JSON[_0x410e66(0x1f0)]({'name':_0xad39cf,'scope':_0x23e493['BzoMt']})});if(!_0x57cb5b['ok']){const _0x57550a=await _0x57cb5b['text']();throw new Error(_0x410e66(0x1df)+_0x57cb5b[_0x410e66(0x1e9)]+'\x20'+_0x57550a);}const _0xc85cbc=await _0x57cb5b[_0x410e66(0x1e7)]();return _0xc85cbc['apiKey'][_0x410e66(0x1ea)];}export function openBrowser(_0x49981e){const _0x44e5ef=_0x59297d,_0x13e5d3={'gLfDr':function(_0x3fb21d,_0x450d54){return _0x3fb21d===_0x450d54;},'xyUzO':_0x44e5ef(0x1e5),'kBIPM':function(_0x380fc7,_0x26aa15,_0x5b3490,_0xeb6fcc){return _0x380fc7(_0x26aa15,_0x5b3490,_0xeb6fcc);},'wgZvt':_0x44e5ef(0x1f8),'xaDQa':_0x44e5ef(0x1ad),'WOyIk':_0x44e5ef(0x1a3),'uxYrh':'ignore'};try{if(_0x13e5d3[_0x44e5ef(0x1c7)](process[_0x44e5ef(0x1f9)],_0x13e5d3[_0x44e5ef(0x1f1)])){const _0x3103c3=_0x13e5d3[_0x44e5ef(0x1a8)](spawn,_0x44e5ef(0x1f5),['/c',_0x13e5d3[_0x44e5ef(0x1f2)],'',_0x49981e],{'detached':!![],'stdio':_0x44e5ef(0x1dc),'windowsHide':!![]});_0x3103c3[_0x44e5ef(0x1a2)]();return;}const _0x41e1f5=process['platform']===_0x13e5d3['xaDQa']?_0x44e5ef(0x1c8):_0x13e5d3[_0x44e5ef(0x1ca)],_0x513fee=_0x13e5d3['kBIPM'](spawn,_0x41e1f5,[_0x49981e],{'detached':!![],'stdio':_0x13e5d3['uxYrh']});_0x513fee['unref']();}catch{}}function decodeJwtPayload(_0x34247a){const _0x27be17=_0x59297d,_0x5a3168=_0x34247a[_0x27be17(0x1d3)]('.');if(_0x5a3168[_0x27be17(0x1ec)]!==0x3)throw new Error(_0x27be17(0x1bc));const _0x3189bc=Buffer['from'](_0x5a3168[0x1],_0x27be17(0x1e4))[_0x27be17(0x1cf)](_0x27be17(0x1ba));return JSON['parse'](_0x3189bc);}async function selfServeSignup(_0x14b269){const _0x4a5d42=_0x59297d,_0x426a31=getApiBaseUrl(),_0x5560ac=await fetch(_0x426a31+_0x4a5d42(0x1d1),{'method':'POST','headers':{'Content-Type':'application/json','workos-token':_0x14b269}});if(!_0x5560ac['ok']){const _0x3de893=await _0x5560ac['text']();throw new Error(_0x4a5d42(0x1e8)+_0x5560ac[_0x4a5d42(0x1e9)]+'\x20'+_0x3de893);}return _0x5560ac[_0x4a5d42(0x1e7)]();}async function fetchMyMemberships(_0x5ff96e){const _0x245ca7=_0x59297d,_0x4797c2={'XEIKI':function(_0x43f60b,_0x338920,_0x47939c){return _0x43f60b(_0x338920,_0x47939c);}},_0x489b61=getApiBaseUrl(),_0x4067d8=await _0x4797c2[_0x245ca7(0x1bb)](fetch,_0x489b61+_0x245ca7(0x1f4),{'method':'GET','headers':{'workos-token':_0x5ff96e}});if(!_0x4067d8['ok']){const _0x45402c=await _0x4067d8[_0x245ca7(0x1b4)]();throw new Error(_0x245ca7(0x1b7)+_0x4067d8[_0x245ca7(0x1e9)]+'\x20'+_0x45402c);}const _0x7a7de7=await _0x4067d8['json']();return _0x7a7de7['memberships'];}async function refreshTokenWithOrg(_0x4a6bf6,_0x58c22d,_0x1cba98){const _0x1a150d=_0x59297d,_0x28767c={'RXEkq':function(_0x3c0dd6,_0x39f716,_0x8198e5){return _0x3c0dd6(_0x39f716,_0x8198e5);},'qlWCg':_0x1a150d(0x1b8),'lpymB':'application/x-www-form-urlencoded','KNHOe':_0x1a150d(0x1b0)},_0x14c2f6=await _0x28767c[_0x1a150d(0x1c5)](fetch,WORKOS_TOKEN_URL,{'method':_0x28767c[_0x1a150d(0x1ae)],'headers':{'Content-Type':_0x28767c[_0x1a150d(0x1ce)]},'body':new URLSearchParams({'client_id':_0x4a6bf6,'grant_type':_0x28767c[_0x1a150d(0x1e3)],'refresh_token':_0x58c22d,'organization_id':_0x1cba98})});if(!_0x14c2f6['ok']){const _0x4be89d=await _0x14c2f6[_0x1a150d(0x1b4)]();throw new Error(_0x1a150d(0x1e6)+_0x14c2f6[_0x1a150d(0x1e9)]+'\x20'+_0x4be89d);}return _0x14c2f6[_0x1a150d(0x1e7)]();}async function provisionCliToken(_0x3a14a4){const _0x56a5aa=_0x59297d,_0x4dbb0f=getApiBaseUrl(),_0x441967=await fetch(_0x4dbb0f+_0x56a5aa(0x1cd),{'method':'POST','headers':{'Content-Type':'application/json','workos-token':_0x3a14a4}});if(!_0x441967['ok']){const _0x10f3be=await _0x441967['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x441967[_0x56a5aa(0x1e9)]+'\x20'+_0x10f3be);}return _0x441967['json']();}export async function runDeviceAuthFlow(){const _0x24fdb9=_0x59297d,_0x547ec0={'gxYzF':function(_0x4bad7e,_0x1dc393){return _0x4bad7e(_0x1dc393);},'YFcML':'\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','GfEdL':function(_0x15e892,_0xfa9781){return _0x15e892(_0xfa9781);},'yjsSb':function(_0x50acff,_0x465446){return _0x50acff(_0x465446);},'CAfYx':function(_0x1f6c75,_0x5122cd){return _0x1f6c75===_0x5122cd;},'jZWsy':'Setting\x20up\x20your\x20organization...','stDRN':function(_0x2cf6e8,_0x18d738){return _0x2cf6e8(_0x18d738);},'rYQvu':function(_0x369715,_0x52736b){return _0x369715===_0x52736b;},'oCCrk':function(_0x6713b6,_0x4b3c09){return _0x6713b6+_0x4b3c09;},'glwJl':_0x24fdb9(0x1b6),'zfzZC':_0x24fdb9(0x1ef),'LXmCw':'Select\x20an\x20organization:','QmGyQ':_0x24fdb9(0x1d7)},_0x38fb10=getCurrentEnvironment(),_0x3bc646=ENVIRONMENT_CONFIGS[_0x38fb10][_0x24fdb9(0x1a9)],_0x4f4a99=await _0x547ec0[_0x24fdb9(0x1c2)](requestDeviceCode,_0x3bc646);console[_0x24fdb9(0x1f6)](_0x547ec0['YFcML']),console['log'](_0x24fdb9(0x1a7)),openBrowser(_0x4f4a99[_0x24fdb9(0x1d4)]),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x4f4a99[_0x24fdb9(0x1d4)]),console[_0x24fdb9(0x1f6)](_0x24fdb9(0x1e2)+_0x4f4a99[_0x24fdb9(0x1cb)]+'\x0a'),process[_0x24fdb9(0x1a1)][_0x24fdb9(0x1bf)]('Waiting\x20for\x20authentication...');let _0x541838=await pollForTokens(_0x3bc646,_0x4f4a99[_0x24fdb9(0x1d6)],_0x4f4a99['interval'],_0x4f4a99['expires_in']);console[_0x24fdb9(0x1f6)]('\x20✓');const _0x199c37=_0x547ec0['GfEdL'](decodeJwtPayload,_0x541838['access_token']);if(!_0x199c37['org_id']){const _0x142a1d=await _0x547ec0['yjsSb'](fetchMyMemberships,_0x541838['access_token']);let _0x21a269;if(_0x547ec0[_0x24fdb9(0x1a6)](_0x142a1d[_0x24fdb9(0x1ec)],0x0)){process[_0x24fdb9(0x1a1)]['write'](_0x547ec0['jZWsy']);const _0x45edac=await _0x547ec0['stDRN'](selfServeSignup,_0x541838['access_token']);_0x21a269=_0x45edac['organizationId'],console[_0x24fdb9(0x1f6)]('\x20✓');}else{if(_0x547ec0[_0x24fdb9(0x19f)](_0x142a1d[_0x24fdb9(0x1ec)],0x1))_0x21a269=_0x142a1d[0x0]['organizationId'],console['log']('Using\x20organization:\x20'+_0x142a1d[0x0][_0x24fdb9(0x1c4)]);else{const _0x62ad19=process['stdin']['isTTY']&&process[_0x24fdb9(0x1a1)][_0x24fdb9(0x1b2)];if(!_0x62ad19)throw new Error(_0x547ec0[_0x24fdb9(0x1eb)](_0x24fdb9(0x19e),_0x547ec0['glwJl']));const {selected:_0x89c613}=await _0x270cae['prompt']([{'type':_0x547ec0['zfzZC'],'name':_0x24fdb9(0x1bd),'message':_0x547ec0[_0x24fdb9(0x1e1)],'choices':_0x142a1d[_0x24fdb9(0x1fa)](_0x4ee0fa=>({'name':_0x4ee0fa['name'],'value':_0x4ee0fa['organizationId']}))}]);_0x21a269=_0x89c613;}}_0x541838=await refreshTokenWithOrg(_0x3bc646,_0x541838['refresh_token'],_0x21a269);}process['stdout'][_0x24fdb9(0x1bf)](_0x547ec0['QmGyQ']);const _0x28fc7f=await _0x547ec0[_0x24fdb9(0x1c2)](provisionCliToken,_0x541838['access_token']);return console['log']('\x20✓'),await storeToken(_0x28fc7f[_0x24fdb9(0x1ea)]),_0x541838['refresh_token']&&await storeRefreshToken(_0x541838['refresh_token']),_0x28fc7f['token'];}function sleep(_0x2e8a44){return new Promise(_0x11cb5f=>setTimeout(_0x11cb5f,_0x2e8a44));}
|
|
1
|
+
const _0x193a1c=_0xecea;(function(_0x30bc9d,_0x1dc690){const _0xe6e4d0=_0xecea,_0x348509=_0x30bc9d();while(!![]){try{const _0x376128=-parseInt(_0xe6e4d0(0xc4))/0x1*(parseInt(_0xe6e4d0(0xd5))/0x2)+parseInt(_0xe6e4d0(0xc1))/0x3+parseInt(_0xe6e4d0(0xb0))/0x4+-parseInt(_0xe6e4d0(0xd4))/0x5+parseInt(_0xe6e4d0(0xcf))/0x6+parseInt(_0xe6e4d0(0xd3))/0x7*(parseInt(_0xe6e4d0(0xbe))/0x8)+-parseInt(_0xe6e4d0(0xe6))/0x9;if(_0x376128===_0x1dc690)break;else _0x348509['push'](_0x348509['shift']());}catch(_0x375750){_0x348509['push'](_0x348509['shift']());}}}(_0x2316,0x75ec3));import{spawn}from'child_process';import _0x3bfa72 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x193a1c(0x99),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x24ee09){const _0x59b45c=_0x193a1c,_0xda62d5={'CAehk':function(_0x4f4813,_0xe66d58,_0x153aef){return _0x4f4813(_0xe66d58,_0x153aef);},'zvdmi':_0x59b45c(0xa7),'ZBgiD':'application/x-www-form-urlencoded'},_0x20b939=await _0xda62d5[_0x59b45c(0x9e)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':_0xda62d5[_0x59b45c(0xa9)],'headers':{'Content-Type':_0xda62d5[_0x59b45c(0xc0)]},'body':new URLSearchParams({'client_id':_0x24ee09})});if(!_0x20b939['ok']){const _0x593af6=await _0x20b939['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x20b939['status']+'\x20'+_0x593af6);}return _0x20b939[_0x59b45c(0xc8)]();}export async function pollForTokens(_0x271828,_0x1a2ce4,_0x1b01c6,_0x18d0e5){const _0x2532da=_0x193a1c,_0x1a2a62={'KNcmD':function(_0x134493,_0x58f043){return _0x134493+_0x58f043;},'zHGqy':function(_0x128094,_0x2653de){return _0x128094(_0x2653de);},'DHUVJ':function(_0x3a2f0e,_0x5e81d9,_0x2e8466){return _0x3a2f0e(_0x5e81d9,_0x2e8466);},'RWxcP':_0x2532da(0xa7),'IQPtj':_0x2532da(0xbc),'fYBYl':function(_0x4ce0ab,_0x1b233d){return _0x4ce0ab===_0x1b233d;},'pZckJ':_0x2532da(0xaa),'IqdHD':_0x2532da(0xd2),'wgzhU':_0x2532da(0x9c)},_0x360716=_0x1a2a62[_0x2532da(0xbd)](Date[_0x2532da(0xdc)](),_0x18d0e5*0x3e8);let _0x1b502c=_0x1b01c6*0x3e8;while(Date[_0x2532da(0xdc)]()<_0x360716){await _0x1a2a62['zHGqy'](sleep,_0x1b502c);const _0xbf7f55=await _0x1a2a62['DHUVJ'](fetch,WORKOS_TOKEN_URL,{'method':_0x1a2a62['RWxcP'],'headers':{'Content-Type':_0x2532da(0x9a)},'body':new URLSearchParams({'client_id':_0x271828,'device_code':_0x1a2ce4,'grant_type':_0x1a2a62['IQPtj']})});if(_0xbf7f55['ok'])return _0xbf7f55['json']();const _0x5279be=await _0xbf7f55[_0x2532da(0xc8)]();if(_0x1a2a62[_0x2532da(0xad)](_0x5279be['error'],_0x1a2a62[_0x2532da(0xc5)]))continue;if(_0x5279be[_0x2532da(0xa3)]===_0x1a2a62[_0x2532da(0x93)]){_0x1b502c+=0x3e8;continue;}throw new Error(_0x5279be['error_description']||_0x5279be['error']||_0x1a2a62['wgzhU']);}throw new Error(_0x2532da(0x92));}async function fetchUserProfile(_0x2b8912){const _0x3a3303=_0x193a1c,_0x53248d={'BNFeH':function(_0x10a323){return _0x10a323();}},_0xbac7f7=_0x53248d['BNFeH'](getApiBaseUrl);try{const _0x43ce35=await fetch(_0xbac7f7+_0x3a3303(0xea),{'method':'GET','headers':{'workos-token':_0x2b8912}});if(_0x43ce35['ok'])return _0x43ce35[_0x3a3303(0xc8)]();}catch{}return null;}function buildKeyName(_0x5eb0df,_0x415fbe){const _0x246026=_0x193a1c,_0x4855a3=_0x415fbe['filter'](_0x3e1f7b=>_0x3e1f7b['name']===_0x5eb0df||_0x3e1f7b[_0x246026(0xe4)][_0x246026(0xae)](_0x5eb0df+'\x20('));if(_0x4855a3[_0x246026(0xd9)]===0x0)return _0x5eb0df;return _0x5eb0df+'\x20('+(_0x4855a3[_0x246026(0xd9)]+0x1)+')';}export async function provisionApiKey(_0xaf2878){const _0x515667=_0x193a1c,_0x4bdbc2={'VARbU':function(_0x3e9921,_0x16c79d){return _0x3e9921(_0x16c79d);},'xtDfc':'GET'},_0x2ebb95=getApiBaseUrl(),_0x3860db={'Content-Type':_0x515667(0x9f),'workos-token':_0xaf2878},_0x47b3a4=await _0x4bdbc2[_0x515667(0xe5)](fetchUserProfile,_0xaf2878),_0x575033=_0x47b3a4?.['firstName']||_0x47b3a4?.['email']?.['split']('@')[0x0],_0x52bac9=_0x575033?_0x575033+'\x27s\x20CLI\x20Key':_0x515667(0xbf);let _0xbfb35b=[];try{const _0x866a9d=await fetch(_0x2ebb95+'/api-keys',{'method':_0x4bdbc2['xtDfc'],'headers':_0x3860db});if(_0x866a9d['ok']){const _0xcc1a67=await _0x866a9d['json']();_0xbfb35b=_0xcc1a67['apiKeys'];}}catch{}const _0x72f7a6=buildKeyName(_0x52bac9,_0xbfb35b),_0x333464=await fetch(_0x2ebb95+_0x515667(0xc9),{'method':_0x515667(0xa7),'headers':_0x3860db,'body':JSON[_0x515667(0xb9)]({'name':_0x72f7a6,'scope':'mcp:write'})});if(!_0x333464['ok']){const _0xb740de=await _0x333464[_0x515667(0xb4)]();throw new Error(_0x515667(0xa1)+_0x333464['status']+'\x20'+_0xb740de);}const _0x3f5188=await _0x333464[_0x515667(0xc8)]();return _0x3f5188[_0x515667(0xa4)][_0x515667(0xcd)];}export function openBrowser(_0xfed64){const _0x422410=_0x193a1c,_0x16148e={'gGOtb':function(_0x202dfc,_0x7ae5d3){return _0x202dfc===_0x7ae5d3;},'czLrd':_0x422410(0xe0),'lrPUC':function(_0x205719,_0x12a0d3){return _0x205719===_0x12a0d3;},'Lbolm':'darwin','iIwPw':_0x422410(0xdd),'fwdUS':'xdg-open','wUrgc':function(_0x3239f9,_0x5e5fc0,_0x248ca5,_0x5abec1){return _0x3239f9(_0x5e5fc0,_0x248ca5,_0x5abec1);}};try{if(_0x16148e['gGOtb'](process[_0x422410(0xc7)],'win32')){const _0x37ae58=spawn(_0x422410(0xe8),['/c','start','',_0xfed64],{'detached':!![],'stdio':_0x16148e[_0x422410(0xe9)],'windowsHide':!![]});_0x37ae58[_0x422410(0xda)]();return;}const _0xb9117b=_0x16148e[_0x422410(0xce)](process['platform'],_0x16148e[_0x422410(0x98)])?_0x16148e[_0x422410(0xcc)]:_0x16148e['fwdUS'],_0x5cad94=_0x16148e[_0x422410(0x9d)](spawn,_0xb9117b,[_0xfed64],{'detached':!![],'stdio':_0x16148e['czLrd']});_0x5cad94['unref']();}catch{}}function decodeJwtPayload(_0x5c1234){const _0x2fc82c=_0x193a1c,_0x234a6d={'YlfGO':function(_0x5b4f7c,_0x25c2e7){return _0x5b4f7c!==_0x25c2e7;},'LJVVT':_0x2fc82c(0xac)},_0x263233=_0x5c1234['split']('.');if(_0x234a6d['YlfGO'](_0x263233['length'],0x3))throw new Error(_0x234a6d[_0x2fc82c(0xe3)]);const _0x5824f0=Buffer[_0x2fc82c(0xa6)](_0x263233[0x1],'base64url')[_0x2fc82c(0xc2)](_0x2fc82c(0xa5));return JSON['parse'](_0x5824f0);}async function selfServeSignup(_0x173286){const _0x4f525d=_0x193a1c,_0x5b2904={'fJAju':function(_0x305b7f,_0x48fca4,_0x21b152){return _0x305b7f(_0x48fca4,_0x21b152);},'CnFRs':_0x4f525d(0x9f)},_0x57f990=getApiBaseUrl(),_0x5d5ad9=await _0x5b2904['fJAju'](fetch,_0x57f990+'/organization/self-serve-signup',{'method':_0x4f525d(0xa7),'headers':{'Content-Type':_0x5b2904[_0x4f525d(0xd8)],'workos-token':_0x173286}});if(!_0x5d5ad9['ok']){const _0x296ff3=await _0x5d5ad9['text']();throw new Error(_0x4f525d(0xe1)+_0x5d5ad9['status']+'\x20'+_0x296ff3);}return _0x5d5ad9[_0x4f525d(0xc8)]();}async function fetchMyMemberships(_0x26405b){const _0x3014c5=_0x193a1c,_0x31c7fa={'EZGZX':function(_0x4693b7,_0x5cbde2,_0x19d60b){return _0x4693b7(_0x5cbde2,_0x19d60b);}},_0x50b3ee=getApiBaseUrl(),_0x4a3ffb=await _0x31c7fa[_0x3014c5(0xc6)](fetch,_0x50b3ee+_0x3014c5(0xde),{'method':'GET','headers':{'workos-token':_0x26405b}});if(!_0x4a3ffb['ok']){const _0xff9692=await _0x4a3ffb['text']();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x4a3ffb[_0x3014c5(0xb5)]+'\x20'+_0xff9692);}const _0x2aec12=await _0x4a3ffb[_0x3014c5(0xc8)]();return _0x2aec12[_0x3014c5(0xd0)];}async function refreshTokenWithOrg(_0x28f38a,_0x10fbe5,_0x77cdcd){const _0x2b3a71=_0x193a1c,_0x2b8969={'SqVyy':'POST','chBkI':_0x2b3a71(0x9a)},_0xf24646=await fetch(WORKOS_TOKEN_URL,{'method':_0x2b8969[_0x2b3a71(0xab)],'headers':{'Content-Type':_0x2b8969['chBkI']},'body':new URLSearchParams({'client_id':_0x28f38a,'grant_type':'refresh_token','refresh_token':_0x10fbe5,'organization_id':_0x77cdcd})});if(!_0xf24646['ok']){const _0x264b54=await _0xf24646[_0x2b3a71(0xb4)]();throw new Error(_0x2b3a71(0xb6)+_0xf24646[_0x2b3a71(0xb5)]+'\x20'+_0x264b54);}return _0xf24646['json']();}async function provisionCliToken(_0x5370ab){const _0x3dfd27=_0x193a1c,_0x3ddd57={'ZZmUO':function(_0x4e3c4a){return _0x4e3c4a();},'RVBQz':function(_0x117c33,_0x603244,_0x135024){return _0x117c33(_0x603244,_0x135024);},'btHZb':'POST','arGZp':_0x3dfd27(0x9f)},_0x414387=_0x3ddd57[_0x3dfd27(0xb7)](getApiBaseUrl),_0x25de0e=await _0x3ddd57[_0x3dfd27(0x97)](fetch,_0x414387+_0x3dfd27(0xa2),{'method':_0x3ddd57[_0x3dfd27(0xcb)],'headers':{'Content-Type':_0x3ddd57['arGZp'],'workos-token':_0x5370ab}});if(!_0x25de0e['ok']){const _0xaa359=await _0x25de0e[_0x3dfd27(0xb4)]();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x25de0e['status']+'\x20'+_0xaa359);}return _0x25de0e['json']();}export async function runDeviceAuthFlow(){const _0x398bdc=_0x193a1c,_0x50b5bb={'pcBHI':function(_0x169ae4,_0x362b07){return _0x169ae4(_0x362b07);},'ALAYI':function(_0x4322fc,_0x2a747a){return _0x4322fc(_0x2a747a);},'izRlr':'Setting\x20up\x20your\x20organization...','jczZn':function(_0x5e87a8,_0x3c71b3){return _0x5e87a8(_0x3c71b3);},'fzeTO':_0x398bdc(0xe7),'DMCJu':'list','pRovy':function(_0x96dd8a,_0x19fbad){return _0x96dd8a(_0x19fbad);}},_0x255fda=getCurrentEnvironment(),_0x33dee3=ENVIRONMENT_CONFIGS[_0x255fda]['workosClientId'],_0x12a917=await _0x50b5bb[_0x398bdc(0x95)](requestDeviceCode,_0x33dee3);console[_0x398bdc(0x94)](_0x398bdc(0xe2)),console['log']('\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a'),_0x50b5bb['ALAYI'](openBrowser,_0x12a917[_0x398bdc(0xc3)]),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x12a917['verification_uri_complete']),console['log']('Code:\x20'+_0x12a917[_0x398bdc(0xd6)]+'\x0a'),process['stdout']['write'](_0x398bdc(0xa8));let _0x43b23d=await pollForTokens(_0x33dee3,_0x12a917[_0x398bdc(0xaf)],_0x12a917['interval'],_0x12a917[_0x398bdc(0xbb)]);console[_0x398bdc(0x94)]('\x20✓');const _0x16191b=decodeJwtPayload(_0x43b23d['access_token']);if(!_0x16191b[_0x398bdc(0xb3)]){const _0x2d06f8=await fetchMyMemberships(_0x43b23d[_0x398bdc(0xba)]);let _0x2ec395;if(_0x2d06f8['length']===0x0){process[_0x398bdc(0xb2)][_0x398bdc(0xa0)](_0x50b5bb[_0x398bdc(0xb1)]);const _0x331faa=await _0x50b5bb['jczZn'](selfServeSignup,_0x43b23d['access_token']);_0x2ec395=_0x331faa[_0x398bdc(0xb8)],console[_0x398bdc(0x94)]('\x20✓');}else{if(_0x2d06f8['length']===0x1)_0x2ec395=_0x2d06f8[0x0][_0x398bdc(0xb8)],console[_0x398bdc(0x94)]('Using\x20organization:\x20'+_0x2d06f8[0x0]['name']);else{const _0x31e660=process['stdin'][_0x398bdc(0x96)]&&process['stdout']['isTTY'];if(!_0x31e660)throw new Error(_0x50b5bb[_0x398bdc(0xdf)]+_0x398bdc(0x9b));const {selected:_0x5827bf}=await _0x3bfa72[_0x398bdc(0xdb)]([{'type':_0x50b5bb['DMCJu'],'name':'selected','message':_0x398bdc(0xd1),'choices':_0x2d06f8[_0x398bdc(0xca)](_0x135b0a=>({'name':_0x135b0a['name'],'value':_0x135b0a['organizationId']}))}]);_0x2ec395=_0x5827bf;}}_0x43b23d=await refreshTokenWithOrg(_0x33dee3,_0x43b23d[_0x398bdc(0xd7)],_0x2ec395);}process['stdout'][_0x398bdc(0xa0)]('Provisioning\x20CLI\x20token...');const _0x51d45f=await provisionCliToken(_0x43b23d['access_token']);return console[_0x398bdc(0x94)]('\x20✓'),await _0x50b5bb['pRovy'](storeToken,_0x51d45f['token']),_0x43b23d[_0x398bdc(0xd7)]&&await storeRefreshToken(_0x43b23d['refresh_token']),_0x51d45f[_0x398bdc(0xcd)];}function _0xecea(_0x3c1f19,_0x76b2ea){_0x3c1f19=_0x3c1f19-0x92;const _0x2316f8=_0x2316();let _0xecea08=_0x2316f8[_0x3c1f19];return _0xecea08;}function sleep(_0xbc53d9){return new Promise(_0x54ece8=>setTimeout(_0x54ece8,_0xbc53d9));}function _0x2316(){const _0x347dac=['pZckJ','EZGZX','platform','json','/api-keys','map','btHZb','iIwPw','token','lrPUC','3351396kKOPUB','memberships','Select\x20an\x20organization:','slow_down','4011GMecKR','160430uiJSId','17452veqvSS','user_code','refresh_token','CnFRs','length','unref','prompt','now','open','/organization/my-memberships','fzeTO','ignore','Failed\x20to\x20create\x20organization:\x20','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','LJVVT','name','VARbU','12376737dqkSgz','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','cmd','czLrd','/organization/me','Device\x20authorization\x20timed\x20out','IqdHD','log','pcBHI','isTTY','RVBQz','Lbolm','https://api.workos.com/user_management/authorize/device','application/x-www-form-urlencoded','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','Authentication\x20failed','wUrgc','CAehk','application/json','write','Failed\x20to\x20provision\x20API\x20key:\x20','/cli-auth/token','error','apiKey','utf-8','from','POST','Waiting\x20for\x20authentication...','zvdmi','authorization_pending','SqVyy','Invalid\x20JWT\x20format','fYBYl','startsWith','device_code','3065248klbISe','izRlr','stdout','org_id','text','status','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','ZZmUO','organizationId','stringify','access_token','expires_in','urn:ietf:params:oauth:grant-type:device_code','KNcmD','9096YamtZB','CLI\x20Key','ZBgiD','500895CjjeGD','toString','verification_uri_complete','29pdXQUA'];_0x2316=function(){return _0x347dac;};return _0x2316();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x171ced=_0x3aad;(function(_0x98e75f,_0x55b90a){const _0x39c9d6=_0x3aad,_0x430dd7=_0x98e75f();while(!![]){try{const _0x4ea819=-parseInt(_0x39c9d6(0xd2))/0x1+parseInt(_0x39c9d6(0xdc))/0x2+-parseInt(_0x39c9d6(0xc0))/0x3*(-parseInt(_0x39c9d6(0xce))/0x4)+-parseInt(_0x39c9d6(0xc5))/0x5+-parseInt(_0x39c9d6(0xd8))/0x6*(-parseInt(_0x39c9d6(0xc4))/0x7)+parseInt(_0x39c9d6(0xdd))/0x8*(-parseInt(_0x39c9d6(0xcd))/0x9)+parseInt(_0x39c9d6(0xd4))/0xa;if(_0x4ea819===_0x55b90a)break;else _0x430dd7['push'](_0x430dd7['shift']());}catch(_0x1f1a26){_0x430dd7['push'](_0x430dd7['shift']());}}}(_0x4739,0xcc884));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x171ced(0xca),'workosClientId':_0x171ced(0xd0),'aiProxyUrl':_0x171ced(0xd5),'mcpAuthUrl':_0x171ced(0xd7)},'staging':{'apiBaseUrl':'https://api.staging.ranger.net','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x171ced(0xdb),'mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':'http://localhost:8080','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT='prod';export function isValidEnvironment(_0x4a4892){const _0x207fe9=_0x171ced,_0x121667={'cHNLx':function(_0x57fca5,_0x26395e){return _0x57fca5===_0x26395e;},'wShLV':'prod','jdrCh':_0x207fe9(0xd1)};return _0x121667['cHNLx'](_0x4a4892,_0x121667['wShLV'])||_0x4a4892===_0x121667['jdrCh']||_0x4a4892==='local';}export function getCurrentEnvironment(){const _0x5552a1=_0x171ced,_0x2776e9=process[_0x5552a1(0xc9)][_0x5552a1(0xcb)];if(_0x2776e9&&isValidEnvironment(_0x2776e9))return _0x2776e9;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x579de3=_0x171ced;return process[_0x579de3(0xc9)]['RANGER_API_URL']||ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x579de3(0xda)];}export function getAiProxyUrl(){const _0x3ad9c7=_0x171ced,_0x3d70e1={'VegWL':function(_0x4a7f40){return _0x4a7f40();}};return process[_0x3ad9c7(0xc9)][_0x3ad9c7(0xd3)]||ENVIRONMENT_CONFIGS[_0x3d70e1['VegWL'](getCurrentEnvironment)]['aiProxyUrl'];}export function getMcpAuthUrl(){const _0x45471d=_0x171ced;return process[_0x45471d(0xc9)][_0x45471d(0xc6)]??ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['mcpAuthUrl'];}function _0x3aad(_0x4318c1,_0x2f9e01){_0x4318c1=_0x4318c1-0xbe;const _0x473968=_0x4739();let _0x3aad58=_0x473968[_0x4318c1];return _0x3aad58;}export function isByokEnabled(){const _0x194be3=_0x171ced,_0x121aec={'sEVPa':function(_0x1b8c32,_0x73c077){return _0x1b8c32===_0x73c077;}};return _0x121aec[_0x194be3(0xc8)](process[_0x194be3(0xc9)]['RANGER_BYOK'],'true');}function isVerificationTransport(_0x2422e6){const _0x271b43=_0x171ced,_0x10c567={'BSjkL':'playwright-cli','ZRNFe':function(_0xbfce23,_0x48e0a8){return _0xbfce23===_0x48e0a8;},'YsFXy':'rangerwright-cli'};return _0x2422e6==='mcp'||_0x2422e6===_0x10c567[_0x271b43(0xd6)]||_0x10c567['ZRNFe'](_0x2422e6,_0x271b43(0xc2))||_0x10c567['ZRNFe'](_0x2422e6,_0x10c567[_0x271b43(0xbe)]);}const LEGACY_TRANSPORT_ENV_VARS=['RANGER_USE_NOVA_ACT','RANGER_DISABLE_MCP'];export function getVerificationTransport(){const _0x2b8684=_0x171ced,_0xdbf03e={'Jnvvj':'mcp'},_0x4c384a=process[_0x2b8684(0xc9)]['RANGER_TRANSPORT']?.[_0x2b8684(0xcc)]();if(_0x4c384a){if(isVerificationTransport(_0x4c384a))return _0x4c384a;throw new Error(_0x2b8684(0xc7)+_0x4c384a+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x33bd1c=LEGACY_TRANSPORT_ENV_VARS['find'](_0x55c014=>process['env'][_0x55c014]);if(_0x33bd1c)throw new Error(_0x33bd1c+_0x2b8684(0xc1));return _0xdbf03e[_0x2b8684(0xc3)];}function _0x4739(){const _0x5ac33e=['Jnvvj','219107mkRxkj','7946945qHNdti','RANGER_MCP_AUTH_URL','Invalid\x20RANGER_TRANSPORT=\x22','sEVPa','env','https://api.ranger.net','RANGER_CLI_ENV','trim','72rLtbex','248YxinuO','RANGER_HOOKS','client_01J9CBYM7M5ZETCF7G6614DXR2','staging','1170399fFRbDF','RANGER_AI_PROXY_URL','29994040dDFNYA','https://ai-proxy-716115358910.us-central1.run.app','BSjkL','https://mcp-auth.ranger.net/mcp','246RFcoBq','auto','apiBaseUrl','https://ai-proxy-301751771437.us-central1.run.app','1564950eoTuyU','1581872RZTjoC','dWCcX','YsFXy','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.','5526hGQEPp','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','nova-act-cli'];_0x4739=function(){return _0x5ac33e;};return _0x4739();}export function resolveHookMode(_0x558118=process['env']){const _0x1dbd18=_0x171ced,_0x51ba4d={'dWCcX':function(_0x1f96a7,_0x41f038){return _0x1f96a7===_0x41f038;},'NqyrD':'off','QkVBC':function(_0x334848,_0x2314dd){return _0x334848===_0x2314dd;},'CfXpK':function(_0x4eb698,_0x5a838a){return _0x4eb698+_0x5a838a;}},_0x131d43=_0x558118[_0x1dbd18(0xcf)]?.[_0x1dbd18(0xcc)]()['toLowerCase']();if(!_0x131d43)return _0x1dbd18(0xd9);if(_0x51ba4d['dWCcX'](_0x131d43,_0x51ba4d['NqyrD'])||_0x51ba4d['QkVBC'](_0x131d43,'on')||_0x51ba4d[_0x1dbd18(0xde)](_0x131d43,_0x1dbd18(0xd9)))return _0x131d43;return console['error'](_0x51ba4d['CfXpK']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x558118['RANGER_HOOKS']+'\x22.\x20',_0x1dbd18(0xbf))),_0x1dbd18(0xd9);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x240d99,_0x3e9137){const _0x509c6f=_0x1469,_0x4b69cb=_0x240d99();while(!![]){try{const _0x3d7206=parseInt(_0x509c6f(0x1cb))/0x1*(-parseInt(_0x509c6f(0x1e8))/0x2)+-parseInt(_0x509c6f(0x1de))/0x3+parseInt(_0x509c6f(0x219))/0x4*(-parseInt(_0x509c6f(0x1ff))/0x5)+-parseInt(_0x509c6f(0x203))/0x6*(parseInt(_0x509c6f(0x1d1))/0x7)+-parseInt(_0x509c6f(0x1cf))/0x8*(parseInt(_0x509c6f(0x1e0))/0x9)+parseInt(_0x509c6f(0x1d3))/0xa+parseInt(_0x509c6f(0x1f5))/0xb*(parseInt(_0x509c6f(0x1e3))/0xc);if(_0x3d7206===_0x3e9137)break;else _0x4b69cb['push'](_0x4b69cb['shift']());}catch(_0xee4140){_0x4b69cb['push'](_0x4b69cb['shift']());}}}(_0x4e18,0x54c41));import{getToken}from'./keychain.js';function _0x4e18(){const _0x203ed6=['aGkaO','/conclude','852942WcrjFL','ofSTS','/sessions','JoIdp','Failed\x20to\x20create\x20feature\x20review:\x20','/report','text','COBQb','message','Kctkh','Qltcm','mPjqt','Failed\x20to\x20start\x20session:\x20','OprUU','QZLvG','SsPBo','JwcTK','json','sessionId','Kragl','includeDeleted','qrTYz','20cpvQgM','eYCnK','POST','/checklist-items/','210rrFEMR','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','Failed\x20to\x20list\x20feature\x20reviews:\x20','style','34872NStqey','hrKWG','7zpQCQt','Failed\x20to\x20get\x20action\x20items:\x20','3891680iqqpyX','Failed\x20to\x20create\x20scenario:\x20','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','set','/action-items','avoOe','gitRepoUrl','CIeAj','billingUrl','GET','/api/v1/mcp/features/','578934KgvRhQ','heNnE','207Dnzfgd','AXENE','toString','708276FOcZMD','stringify','cecvp','gitBranch','limit','2014KvRbvj','PATCH','Failed\x20to\x20conclude\x20session:\x20','Failed\x20to\x20update\x20feature\x20review:\x20','OuztC','DaQIH','Failed\x20to\x20get\x20feature\x20review:\x20','OxfsH','pVURw','/checklist','Failed\x20to\x20list\x20sessions:\x20','updateChecklistItem','njhvq','220gGypeQ','wynga','Bearer\x20','mYwvI','https://dashboard.ranger.net/billing','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','iQrrI','application/json','itemIds','Failed\x20to\x20delete\x20feature\x20review:\x20','575565cNACDA','mJXzg'];_0x4e18=function(){return _0x203ed6;};return _0x4e18();}import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x3e0b02){const _0x5592a2=_0x1469,_0x428e16={'KRaTi':function(_0x451eda){return _0x451eda();},'rlRVk':function(_0xb1d258){return _0xb1d258();},'njhvq':function(_0x386b85,_0xd2caf1,_0x42e9bb){return _0x386b85(_0xd2caf1,_0x42e9bb);},'ofSTS':'POST'},_0x10da72=await _0x428e16['KRaTi'](getToken);if(!_0x10da72)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x55eeb9=_0x428e16['rlRVk'](getApiBaseUrl),_0x30a8d6=await _0x428e16[_0x5592a2(0x1f4)](fetch,_0x55eeb9+'/api/v1/mcp/features',{'method':_0x428e16[_0x5592a2(0x204)],'headers':{'Authorization':'Bearer\x20'+_0x10da72,'Content-Type':_0x5592a2(0x1fc)},'body':JSON[_0x5592a2(0x1e4)](_0x3e0b02)});if(!_0x30a8d6['ok']){if(_0x30a8d6['status']===0x192){const _0x230fb0=await _0x30a8d6['json'](),_0x31349d=_0x230fb0[_0x5592a2(0x1db)]||_0x5592a2(0x1f9);throw new Error((_0x230fb0[_0x5592a2(0x20b)]||'Feature\x20limit\x20exceeded')+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x31349d);}const _0x1da907=await _0x30a8d6[_0x5592a2(0x209)]();throw new Error(_0x5592a2(0x207)+_0x1da907);}return _0x30a8d6[_0x5592a2(0x214)]();}export async function listFeatures(_0x25fb6a){const _0x24e9c6=_0x1469,_0x41a8b8={'OxfsH':'gitRepoUrl','OprUU':'GET'},_0x4cb5e6=await getToken();if(!_0x4cb5e6)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5ce65d=getApiBaseUrl(),_0x4921dc=new URLSearchParams();if(_0x25fb6a?.[_0x24e9c6(0x1d9)])_0x4921dc['set'](_0x41a8b8[_0x24e9c6(0x1ef)],_0x25fb6a[_0x24e9c6(0x1d9)]);if(_0x25fb6a?.['gitBranch'])_0x4921dc['set']('gitBranch',_0x25fb6a[_0x24e9c6(0x1e6)]);if(_0x25fb6a?.[_0x24e9c6(0x1e7)])_0x4921dc['set']('limit',_0x25fb6a[_0x24e9c6(0x1e7)]['toString']());if(_0x25fb6a?.['offset'])_0x4921dc['set']('offset',_0x25fb6a['offset'][_0x24e9c6(0x1e2)]());if(_0x25fb6a?.[_0x24e9c6(0x217)])_0x4921dc['set'](_0x24e9c6(0x217),'true');const _0xbdef09=_0x5ce65d+'/api/v1/mcp/features'+(_0x4921dc[_0x24e9c6(0x1e2)]()?'?'+_0x4921dc[_0x24e9c6(0x1e2)]():''),_0x4d0f54=await fetch(_0xbdef09,{'method':_0x41a8b8[_0x24e9c6(0x210)],'headers':{'Authorization':'Bearer\x20'+_0x4cb5e6}});if(!_0x4d0f54['ok']){const _0x3c204f=await _0x4d0f54['text']();throw new Error(_0x24e9c6(0x1cd)+_0x3c204f);}return _0x4d0f54[_0x24e9c6(0x214)]();}export async function getFeature(_0x47d2c6){const _0x55bfac=_0x1469,_0x4e3540={'SsPBo':function(_0xb4c9d9){return _0xb4c9d9();},'JoIdp':_0x55bfac(0x1d5),'fIRVi':function(_0x30b960){return _0x30b960();},'PYqQF':_0x55bfac(0x1dc)},_0x1fd396=await _0x4e3540[_0x55bfac(0x212)](getToken);if(!_0x1fd396)throw new Error(_0x4e3540[_0x55bfac(0x206)]);const _0x47dd26=_0x4e3540['fIRVi'](getApiBaseUrl),_0x23a3a1=await fetch(_0x47dd26+_0x55bfac(0x1dd)+_0x47d2c6,{'method':_0x4e3540['PYqQF'],'headers':{'Authorization':_0x55bfac(0x1f7)+_0x1fd396}});if(!_0x23a3a1['ok']){const _0x41ffd0=await _0x23a3a1['text']();throw new Error(_0x55bfac(0x1ee)+_0x41ffd0);}return _0x23a3a1[_0x55bfac(0x214)]();}export async function updateFeature(_0x3c4dea,_0x42e7af){const _0x78b706=_0x1469,_0x58aa46={'nhznc':function(_0x408d9f){return _0x408d9f();},'JwcTK':function(_0x1d3f68){return _0x1d3f68();},'ektvF':function(_0xae4b,_0x3e6dbd,_0x42d002){return _0xae4b(_0x3e6dbd,_0x42d002);}},_0x328345=await _0x58aa46['nhznc'](getToken);if(!_0x328345)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x411a97=_0x58aa46[_0x78b706(0x213)](getApiBaseUrl),_0x2b5a2f=await _0x58aa46['ektvF'](fetch,_0x411a97+_0x78b706(0x1dd)+_0x3c4dea,{'method':_0x78b706(0x1e9),'headers':{'Authorization':_0x78b706(0x1f7)+_0x328345,'Content-Type':'application/json'},'body':JSON[_0x78b706(0x1e4)](_0x42e7af)});if(!_0x2b5a2f['ok']){const _0x16dc9c=await _0x2b5a2f['text']();throw new Error(_0x78b706(0x1eb)+_0x16dc9c);}return _0x2b5a2f[_0x78b706(0x214)]();}export async function createChecklistItem(_0x636f89,_0x242505,_0x2f0012){const _0x72d8fa=_0x1469,_0x452fe5={'kESvd':_0x72d8fa(0x1d5),'heNnE':function(_0x2d95e9,_0x5b7099,_0x347468){return _0x2d95e9(_0x5b7099,_0x347468);},'QZLvG':_0x72d8fa(0x1c9),'aGkaO':_0x72d8fa(0x1fc)},_0x3e9443=await getToken();if(!_0x3e9443)throw new Error(_0x452fe5['kESvd']);const _0x328a66=getApiBaseUrl(),_0x3dcb60=await _0x452fe5[_0x72d8fa(0x1df)](fetch,_0x328a66+_0x72d8fa(0x1dd)+_0x636f89+_0x72d8fa(0x1f1),{'method':_0x452fe5[_0x72d8fa(0x211)],'headers':{'Authorization':'Bearer\x20'+_0x3e9443,'Content-Type':_0x452fe5[_0x72d8fa(0x201)]},'body':JSON[_0x72d8fa(0x1e4)]({'description':_0x242505,'position':_0x2f0012})});if(!_0x3dcb60['ok']){const _0x2ef126=await _0x3dcb60[_0x72d8fa(0x209)]();throw new Error(_0x72d8fa(0x1d4)+_0x2ef126);}return _0x3dcb60['json']();}export async function updateChecklistItem(_0x50e540,_0x2e5430,_0x2aca89){const _0x59bacc=_0x1469,_0x5c089e={'SbwoA':function(_0x58893e){return _0x58893e();},'qrTYz':function(_0x41ee50,_0x2488ea,_0x1d9ed7){return _0x41ee50(_0x2488ea,_0x1d9ed7);},'Qltcm':_0x59bacc(0x1e9),'COBQb':_0x59bacc(0x1fc),'HmjqF':_0x59bacc(0x1f3)};return withRetry(async()=>{const _0x315ba2=_0x59bacc,_0x5ad0f0=await _0x5c089e['SbwoA'](getToken);if(!_0x5ad0f0)throw new Error(_0x315ba2(0x1d5));const _0x597800=_0x5c089e['SbwoA'](getApiBaseUrl),_0x3161be=await _0x5c089e[_0x315ba2(0x218)](fetch,_0x597800+_0x315ba2(0x1dd)+_0x50e540+'/checklist/'+_0x2e5430,{'method':_0x5c089e[_0x315ba2(0x20d)],'headers':{'Authorization':'Bearer\x20'+_0x5ad0f0,'Content-Type':_0x5c089e[_0x315ba2(0x20a)]},'body':JSON[_0x315ba2(0x1e4)](_0x2aca89)});if(!_0x3161be['ok']){const _0x44dcfa=await _0x3161be[_0x315ba2(0x209)]();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x44dcfa);}return _0x3161be['json']();},{'label':_0x5c089e['HmjqF']});}export async function getFeatureReport(_0x59559a){const _0x2eb895=_0x1469,_0x181e4e={'buAiU':'GET'},_0x1eafba=await getToken();if(!_0x1eafba)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2a74b3=getApiBaseUrl(),_0x537503=await fetch(_0x2a74b3+'/api/v1/mcp/features/'+_0x59559a+_0x2eb895(0x208),{'method':_0x181e4e['buAiU'],'headers':{'Authorization':'Bearer\x20'+_0x1eafba}});if(!_0x537503['ok']){const _0x1855c4=await _0x537503[_0x2eb895(0x209)]();throw new Error(_0x2eb895(0x1fa)+_0x1855c4);}return _0x537503['json']();}export async function getFeatureReportMarkdown(_0x4a1ac7,_0x3d5b58){const _0x568158=_0x1469,_0x23f092={'cWFCE':_0x568158(0x1d5),'BrQKX':function(_0x2906fd,_0x4bdbb6){return _0x2906fd>_0x4bdbb6;},'OkIcu':_0x568158(0x1fd),'iukQz':function(_0x4f379b,_0x3c557d){return _0x4f379b&&_0x3c557d;},'uTgAv':function(_0xf740e0,_0x2dbfff,_0x4c945f){return _0xf740e0(_0x2dbfff,_0x4c945f);},'qaYSv':_0x568158(0x1dc)},_0x172019=await getToken();if(!_0x172019)throw new Error(_0x23f092['cWFCE']);const _0x111715=getApiBaseUrl(),_0x42abcf=new URLSearchParams(),_0x46ea16=_0x23f092['BrQKX'](_0x3d5b58?.[_0x568158(0x1fd)]?.['length']??0x0,0x0),_0x370fdc=Boolean(_0x3d5b58?.[_0x568158(0x215)]);_0x46ea16&&_0x3d5b58?.[_0x568158(0x1fd)]&&_0x42abcf[_0x568158(0x1d6)](_0x23f092['OkIcu'],_0x3d5b58[_0x568158(0x1fd)]['join'](','));_0x370fdc&&_0x3d5b58?.['sessionId']&&_0x42abcf[_0x568158(0x1d6)](_0x568158(0x215),_0x3d5b58['sessionId']);_0x23f092['iukQz'](!_0x46ea16,!_0x370fdc)&&_0x3d5b58?.['style']&&_0x42abcf[_0x568158(0x1d6)]('style',_0x3d5b58[_0x568158(0x1ce)]);const _0x92799a=_0x111715+_0x568158(0x1dd)+_0x4a1ac7+'/report/markdown',_0x58b2a5=''+_0x92799a+(_0x42abcf[_0x568158(0x1e2)]()?'?'+_0x42abcf[_0x568158(0x1e2)]():''),_0x270632=await _0x23f092['uTgAv'](fetch,_0x58b2a5,{'method':_0x23f092['qaYSv'],'headers':{'Authorization':_0x568158(0x1f7)+_0x172019}});if(!_0x270632['ok']){const _0x2aabd5=await _0x270632['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x2aabd5);}return _0x270632['text']();}export async function listFeatureSessions(_0x345e58){const _0x789cb6=_0x1469,_0x3cba53={'wynga':function(_0xf0ebf3){return _0xf0ebf3();},'pVURw':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','OuztC':'GET'},_0x384a87=await _0x3cba53[_0x789cb6(0x1f6)](getToken);if(!_0x384a87)throw new Error(_0x3cba53[_0x789cb6(0x1f0)]);const _0x3aaf9c=getApiBaseUrl(),_0x224af3=await fetch(_0x3aaf9c+'/api/v1/mcp/features/'+_0x345e58+_0x789cb6(0x205),{'method':_0x3cba53[_0x789cb6(0x1ec)],'headers':{'Authorization':_0x789cb6(0x1f7)+_0x384a87}});if(!_0x224af3['ok']){const _0x30ef8f=await _0x224af3['text']();throw new Error(_0x789cb6(0x1f2)+_0x30ef8f);}return _0x224af3[_0x789cb6(0x214)]();}export async function startSession(_0x6a6f,_0x5f161f){const _0x38f97b=_0x1469,_0x532693={'dSkAF':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','UgjfF':function(_0x445836){return _0x445836();},'CIeAj':function(_0x36b1e6,_0x71677,_0xa18b2){return _0x36b1e6(_0x71677,_0xa18b2);},'hrKWG':_0x38f97b(0x1c9)},_0x13b31e=await getToken();if(!_0x13b31e)throw new Error(_0x532693['dSkAF']);const _0x4743b5=_0x532693['UgjfF'](getApiBaseUrl),_0x21d117=await _0x532693[_0x38f97b(0x1da)](fetch,_0x4743b5+'/api/v1/mcp/features/'+_0x6a6f+'/sessions/'+_0x5f161f+'/start',{'method':_0x532693[_0x38f97b(0x1d0)],'headers':{'Authorization':_0x38f97b(0x1f7)+_0x13b31e}});if(!_0x21d117['ok']){const _0x36d8b4=await _0x21d117['text']();throw new Error(_0x38f97b(0x20f)+_0x36d8b4);}return _0x21d117['json']();}export async function concludeSession(_0x222d1e,_0x2a3b92){const _0x26b03e=_0x1469,_0x1ee649={'mJXzg':function(_0x450c6a){return _0x450c6a();},'YMAbv':_0x26b03e(0x1c9)},_0x2cdeef=await _0x1ee649[_0x26b03e(0x200)](getToken);if(!_0x2cdeef)throw new Error(_0x26b03e(0x1d5));const _0x5ac05c=getApiBaseUrl(),_0x910d94=await fetch(_0x5ac05c+'/api/v1/mcp/features/'+_0x222d1e+'/sessions/'+_0x2a3b92+_0x26b03e(0x202),{'method':_0x1ee649['YMAbv'],'headers':{'Authorization':'Bearer\x20'+_0x2cdeef}});if(!_0x910d94['ok']){const _0x56c63f=await _0x910d94['text']();throw new Error(_0x26b03e(0x1ea)+_0x56c63f);}return _0x910d94['json']();}export async function getActionItems(_0x1721db){const _0x2b1114=_0x1469,_0x180b8a=await getToken();if(!_0x180b8a)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x72583f=getApiBaseUrl(),_0x3a621d=await fetch(_0x72583f+_0x2b1114(0x1dd)+_0x1721db+_0x2b1114(0x1d7),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x180b8a}});if(!_0x3a621d['ok']){const _0x322d11=await _0x3a621d[_0x2b1114(0x209)]();throw new Error(_0x2b1114(0x1d2)+_0x322d11);}return _0x3a621d[_0x2b1114(0x214)]();}export async function getItemFeedback(_0xeb615,_0x3858c0){const _0x1213ea=_0x1469,_0xb56d60={'VdDrO':function(_0x2abaab){return _0x2abaab();},'avoOe':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','iQrrI':function(_0x4a2f53,_0x4b2fb4,_0x3ddb54){return _0x4a2f53(_0x4b2fb4,_0x3ddb54);},'fHepa':'GET'},_0x513d5f=await _0xb56d60['VdDrO'](getToken);if(!_0x513d5f)throw new Error(_0xb56d60[_0x1213ea(0x1d8)]);const _0x104ad0=getApiBaseUrl(),_0x3e5448=await _0xb56d60[_0x1213ea(0x1fb)](fetch,_0x104ad0+'/api/v1/mcp/features/'+_0xeb615+_0x1213ea(0x1ca)+_0x3858c0+'/feedback',{'method':_0xb56d60['fHepa'],'headers':{'Authorization':_0x1213ea(0x1f7)+_0x513d5f}});if(!_0x3e5448['ok']){const _0x3f0141=await _0x3e5448[_0x1213ea(0x209)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x3f0141);}return _0x3e5448[_0x1213ea(0x214)]();}export async function markCommentsAddressed(_0x27fba0,_0x2808a2,_0x2d7381){const _0x283da9=_0x1469,_0x312a13={'DaQIH':function(_0x54454d){return _0x54454d();},'Kragl':function(_0x3b0c29){return _0x3b0c29();},'Kctkh':function(_0x1a43a0,_0x223901,_0x367d98){return _0x1a43a0(_0x223901,_0x367d98);},'JFhBI':'application/json'},_0x46b66d=await _0x312a13[_0x283da9(0x1ed)](getToken);if(!_0x46b66d)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xbd993d=_0x312a13[_0x283da9(0x216)](getApiBaseUrl),_0x5b0324=await _0x312a13[_0x283da9(0x20c)](fetch,_0xbd993d+_0x283da9(0x1dd)+_0x27fba0+'/comments/address',{'method':_0x283da9(0x1c9),'headers':{'Authorization':_0x283da9(0x1f7)+_0x46b66d,'Content-Type':_0x312a13['JFhBI']},'body':JSON[_0x283da9(0x1e4)]({'checklistItemId':_0x2808a2,'commentIds':_0x2d7381})});if(!_0x5b0324['ok']){const _0x3e4a33=await _0x5b0324['text']();throw new Error(_0x283da9(0x1cc)+_0x3e4a33);}}export async function softDeleteFeature(_0x4f7d43){const _0x3e310d=_0x1469,_0x35f5a6=await getToken();if(!_0x35f5a6)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4ad880=getApiBaseUrl(),_0x5bc1e9=await fetch(_0x4ad880+_0x3e310d(0x1dd)+_0x4f7d43,{'method':'DELETE','headers':{'Authorization':_0x3e310d(0x1f7)+_0x35f5a6}});if(!_0x5bc1e9['ok']){const _0x3a938e=await _0x5bc1e9['text']();throw new Error(_0x3e310d(0x1fe)+_0x3a938e);}}function _0x1469(_0x2e040f,_0x116176){_0x2e040f=_0x2e040f-0x1c8;const _0x4e1825=_0x4e18();let _0x146925=_0x4e1825[_0x2e040f];return _0x146925;}export async function restoreFeature(_0x3b2078){const _0x57d5e2=_0x1469,_0x53eb5d={'mPjqt':function(_0x4d18d2){return _0x4d18d2();},'AXENE':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','mYwvI':function(_0x5adf9c){return _0x5adf9c();},'eYCnK':function(_0x5ea1dc,_0x46608b,_0x60e8ae){return _0x5ea1dc(_0x46608b,_0x60e8ae);},'cecvp':_0x57d5e2(0x1c9)},_0x5c0f55=await _0x53eb5d[_0x57d5e2(0x20e)](getToken);if(!_0x5c0f55)throw new Error(_0x53eb5d[_0x57d5e2(0x1e1)]);const _0x37fd49=_0x53eb5d[_0x57d5e2(0x1f8)](getApiBaseUrl),_0x5ebb6f=await _0x53eb5d[_0x57d5e2(0x1c8)](fetch,_0x37fd49+_0x57d5e2(0x1dd)+_0x3b2078+'/restore',{'method':_0x53eb5d[_0x57d5e2(0x1e5)],'headers':{'Authorization':'Bearer\x20'+_0x5c0f55}});if(!_0x5ebb6f['ok']){const _0x2fa535=await _0x5ebb6f[_0x57d5e2(0x209)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x2fa535);}}
|
|
1
|
+
(function(_0x31a151,_0x19ddfd){const _0x16e57c=_0x37fd,_0xb3c94a=_0x31a151();while(!![]){try{const _0x9f8961=-parseInt(_0x16e57c(0x1d8))/0x1*(parseInt(_0x16e57c(0x1ce))/0x2)+-parseInt(_0x16e57c(0x1ed))/0x3+parseInt(_0x16e57c(0x1cb))/0x4+parseInt(_0x16e57c(0x1d7))/0x5*(-parseInt(_0x16e57c(0x1b4))/0x6)+parseInt(_0x16e57c(0x1e0))/0x7*(parseInt(_0x16e57c(0x1e7))/0x8)+-parseInt(_0x16e57c(0x1da))/0x9+-parseInt(_0x16e57c(0x1ec))/0xa*(-parseInt(_0x16e57c(0x1e9))/0xb);if(_0x9f8961===_0x19ddfd)break;else _0xb3c94a['push'](_0xb3c94a['shift']());}catch(_0x3c459f){_0xb3c94a['push'](_0xb3c94a['shift']());}}}(_0x5183,0x539b3));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x4a1603){const _0x57d170=_0x37fd,_0x2538a1={'wNMDG':function(_0x50e577){return _0x50e577();},'uyMaF':function(_0x196af8){return _0x196af8();},'roBQa':function(_0x2be859,_0x3afe69,_0x85a4a7){return _0x2be859(_0x3afe69,_0x85a4a7);},'FnJQy':_0x57d170(0x1f9)},_0x861b58=await _0x2538a1[_0x57d170(0x1c5)](getToken);if(!_0x861b58)throw new Error(_0x57d170(0x1c9));const _0x3c74ef=_0x2538a1['uyMaF'](getApiBaseUrl),_0x30c765=await _0x2538a1[_0x57d170(0x1f8)](fetch,_0x3c74ef+_0x57d170(0x1d6),{'method':_0x57d170(0x1ee),'headers':{'Authorization':_0x57d170(0x1e6)+_0x861b58,'Content-Type':_0x57d170(0x1dc)},'body':JSON[_0x57d170(0x1fb)](_0x4a1603)});if(!_0x30c765['ok']){if(_0x30c765['status']===0x192){const _0x175671=await _0x30c765['json'](),_0x200771=_0x175671[_0x57d170(0x1d1)]||_0x2538a1['FnJQy'];throw new Error((_0x175671[_0x57d170(0x1d0)]||'Feature\x20limit\x20exceeded')+_0x57d170(0x1d2)+_0x200771);}const _0x3b67cc=await _0x30c765[_0x57d170(0x1f5)]();throw new Error(_0x57d170(0x1c3)+_0x3b67cc);}return _0x30c765['json']();}export async function listFeatures(_0x5d5349){const _0x4641ba=_0x37fd,_0x5c336e={'QvKCW':function(_0x1d888f){return _0x1d888f();},'ChIbx':_0x4641ba(0x1bc),'JHBOu':function(_0x34f445,_0x44d2ae,_0x15478f){return _0x34f445(_0x44d2ae,_0x15478f);}},_0x39cbc5=await _0x5c336e[_0x4641ba(0x1d4)](getToken);if(!_0x39cbc5)throw new Error(_0x4641ba(0x1c9));const _0x308764=getApiBaseUrl(),_0x2f82f8=new URLSearchParams();if(_0x5d5349?.[_0x4641ba(0x1be)])_0x2f82f8['set'](_0x4641ba(0x1be),_0x5d5349['gitRepoUrl']);if(_0x5d5349?.['gitBranch'])_0x2f82f8['set'](_0x4641ba(0x1bf),_0x5d5349['gitBranch']);if(_0x5d5349?.[_0x4641ba(0x1b7)])_0x2f82f8[_0x4641ba(0x1c7)]('limit',_0x5d5349[_0x4641ba(0x1b7)]['toString']());if(_0x5d5349?.[_0x4641ba(0x1ef)])_0x2f82f8[_0x4641ba(0x1c7)]('offset',_0x5d5349['offset']['toString']());if(_0x5d5349?.[_0x4641ba(0x1bc)])_0x2f82f8[_0x4641ba(0x1c7)](_0x5c336e[_0x4641ba(0x1b5)],_0x4641ba(0x1ea));const _0x499e8b=_0x308764+_0x4641ba(0x1d6)+(_0x2f82f8[_0x4641ba(0x1fd)]()?'?'+_0x2f82f8[_0x4641ba(0x1fd)]():''),_0x3f51ac=await _0x5c336e[_0x4641ba(0x1eb)](fetch,_0x499e8b,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x39cbc5}});if(!_0x3f51ac['ok']){const _0x226f85=await _0x3f51ac['text']();throw new Error(_0x4641ba(0x1fa)+_0x226f85);}return _0x3f51ac['json']();}export async function getFeature(_0x437325){const _0x400e82=_0x37fd,_0x46ad80={'oFYMo':function(_0x31fdc4){return _0x31fdc4();},'exeRz':function(_0x4f9a42,_0x5e9f49,_0x4e19ce){return _0x4f9a42(_0x5e9f49,_0x4e19ce);},'nOaNY':_0x400e82(0x1b6)},_0x4dfe46=await getToken();if(!_0x4dfe46)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5f13f9=_0x46ad80[_0x400e82(0x1dd)](getApiBaseUrl),_0x19116c=await _0x46ad80['exeRz'](fetch,_0x5f13f9+_0x400e82(0x1f6)+_0x437325,{'method':_0x46ad80['nOaNY'],'headers':{'Authorization':_0x400e82(0x1e6)+_0x4dfe46}});if(!_0x19116c['ok']){const _0x54fdeb=await _0x19116c['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x54fdeb);}return _0x19116c[_0x400e82(0x1f7)]();}export async function updateFeature(_0x33b463,_0x3168de){const _0x4fdc3b=_0x37fd,_0x13c200={'ORhDY':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','EjRas':function(_0xf2103c,_0xa02bf0,_0xbbd354){return _0xf2103c(_0xa02bf0,_0xbbd354);},'gRjBi':_0x4fdc3b(0x1c6),'vhGEd':_0x4fdc3b(0x1dc)},_0x241712=await getToken();if(!_0x241712)throw new Error(_0x13c200['ORhDY']);const _0x57db31=getApiBaseUrl(),_0x4c2d9a=await _0x13c200[_0x4fdc3b(0x1bb)](fetch,_0x57db31+'/api/v1/mcp/features/'+_0x33b463,{'method':_0x13c200['gRjBi'],'headers':{'Authorization':_0x4fdc3b(0x1e6)+_0x241712,'Content-Type':_0x13c200[_0x4fdc3b(0x1b8)]},'body':JSON['stringify'](_0x3168de)});if(!_0x4c2d9a['ok']){const _0x2b956d=await _0x4c2d9a['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x2b956d);}return _0x4c2d9a['json']();}export async function createChecklistItem(_0x65bdb1,_0x574d00,_0x20839d){const _0x19bfa9=_0x37fd,_0x4573e8={'lxPvx':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','XvFLN':_0x19bfa9(0x1ee)},_0x2e179e=await getToken();if(!_0x2e179e)throw new Error(_0x4573e8['lxPvx']);const _0x1876fa=getApiBaseUrl(),_0x3e4128=await fetch(_0x1876fa+'/api/v1/mcp/features/'+_0x65bdb1+_0x19bfa9(0x1e1),{'method':_0x4573e8['XvFLN'],'headers':{'Authorization':_0x19bfa9(0x1e6)+_0x2e179e,'Content-Type':_0x19bfa9(0x1dc)},'body':JSON[_0x19bfa9(0x1fb)]({'description':_0x574d00,'position':_0x20839d})});if(!_0x3e4128['ok']){const _0x15dd18=await _0x3e4128['text']();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x15dd18);}return _0x3e4128['json']();}export async function updateChecklistItem(_0x2a5ae8,_0xdb60c9,_0x33bd68){const _0x39c2e6=_0x37fd,_0x540413={'DqQan':function(_0xe624ff){return _0xe624ff();},'hgUdX':_0x39c2e6(0x1c9),'ClSgv':function(_0x1c0c46,_0x2e15eb,_0x54970d){return _0x1c0c46(_0x2e15eb,_0x54970d);},'WQwJW':'PATCH'};return _0x540413['ClSgv'](withRetry,async()=>{const _0x46daed=_0x39c2e6,_0x8c26a1=await _0x540413[_0x46daed(0x1c8)](getToken);if(!_0x8c26a1)throw new Error(_0x540413['hgUdX']);const _0x47340b=_0x540413['DqQan'](getApiBaseUrl),_0x4f896e=await _0x540413['ClSgv'](fetch,_0x47340b+_0x46daed(0x1f6)+_0x2a5ae8+_0x46daed(0x1d3)+_0xdb60c9,{'method':_0x540413[_0x46daed(0x1c4)],'headers':{'Authorization':_0x46daed(0x1e6)+_0x8c26a1,'Content-Type':'application/json'},'body':JSON['stringify'](_0x33bd68)});if(!_0x4f896e['ok']){const _0x5988fd=await _0x4f896e['text']();throw new Error(_0x46daed(0x1f4)+_0x5988fd);}return _0x4f896e['json']();},{'label':'updateChecklistItem'});}export async function getFeatureReport(_0x4da658){const _0x1f8ae1=_0x37fd,_0x4cb4c0={'RXJYI':function(_0x46ae77){return _0x46ae77();}},_0x5e68cc=await _0x4cb4c0['RXJYI'](getToken);if(!_0x5e68cc)throw new Error(_0x1f8ae1(0x1c9));const _0x3f6876=getApiBaseUrl(),_0x11cb51=await fetch(_0x3f6876+_0x1f8ae1(0x1f6)+_0x4da658+'/report',{'method':'GET','headers':{'Authorization':_0x1f8ae1(0x1e6)+_0x5e68cc}});if(!_0x11cb51['ok']){const _0x23952c=await _0x11cb51['text']();throw new Error(_0x1f8ae1(0x1b3)+_0x23952c);}return _0x11cb51[_0x1f8ae1(0x1f7)]();}export async function getFeatureReportMarkdown(_0x4d9e59,_0x475aaa){const _0x72c30=_0x37fd,_0x3d5cdd={'cyQap':function(_0x5c5ed9){return _0x5c5ed9();},'Biois':function(_0x296a29,_0x2c9df1){return _0x296a29>_0x2c9df1;},'oZQwE':_0x72c30(0x1e3),'ELkzg':'sessionId','sAikL':_0x72c30(0x1e5),'cGsVW':function(_0x17314d,_0x5ec6ad,_0x10d540){return _0x17314d(_0x5ec6ad,_0x10d540);}},_0x54a56c=await getToken();if(!_0x54a56c)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1d57ac=_0x3d5cdd['cyQap'](getApiBaseUrl),_0x54b21d=new URLSearchParams(),_0x13bdd1=_0x3d5cdd[_0x72c30(0x1bd)](_0x475aaa?.[_0x72c30(0x1e3)]?.['length']??0x0,0x0),_0x3062f5=Boolean(_0x475aaa?.[_0x72c30(0x1e2)]);_0x13bdd1&&_0x475aaa?.['itemIds']&&_0x54b21d['set'](_0x3d5cdd['oZQwE'],_0x475aaa['itemIds'][_0x72c30(0x1cf)](','));_0x3062f5&&_0x475aaa?.[_0x72c30(0x1e2)]&&_0x54b21d[_0x72c30(0x1c7)](_0x3d5cdd[_0x72c30(0x1e8)],_0x475aaa['sessionId']);!_0x13bdd1&&!_0x3062f5&&_0x475aaa?.[_0x72c30(0x1e5)]&&_0x54b21d['set'](_0x3d5cdd['sAikL'],_0x475aaa[_0x72c30(0x1e5)]);const _0x48c867=_0x1d57ac+'/api/v1/mcp/features/'+_0x4d9e59+'/report/markdown',_0x20dee5=''+_0x48c867+(_0x54b21d['toString']()?'?'+_0x54b21d[_0x72c30(0x1fd)]():''),_0xfc7f82=await _0x3d5cdd[_0x72c30(0x1d5)](fetch,_0x20dee5,{'method':_0x72c30(0x1b6),'headers':{'Authorization':'Bearer\x20'+_0x54a56c}});if(!_0xfc7f82['ok']){const _0x43ebc7=await _0xfc7f82[_0x72c30(0x1f5)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x43ebc7);}return _0xfc7f82['text']();}export async function listFeatureSessions(_0x2c19e4){const _0x329bd8=_0x37fd,_0x9a615f={'iJAzY':function(_0x47a78d){return _0x47a78d();},'zEuml':'GET'},_0x221941=await getToken();if(!_0x221941)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x40e411=_0x9a615f['iJAzY'](getApiBaseUrl),_0x4132bc=await fetch(_0x40e411+_0x329bd8(0x1f6)+_0x2c19e4+_0x329bd8(0x1ba),{'method':_0x9a615f['zEuml'],'headers':{'Authorization':'Bearer\x20'+_0x221941}});if(!_0x4132bc['ok']){const _0x4093ff=await _0x4132bc['text']();throw new Error(_0x329bd8(0x1e4)+_0x4093ff);}return _0x4132bc['json']();}export async function startSession(_0x16541d,_0x4bc3c3){const _0x3968e3=_0x37fd,_0x5f2155={'zbJfw':function(_0x30d8cb){return _0x30d8cb();},'RKYQf':_0x3968e3(0x1c9),'GvMkH':'POST'},_0x5c338d=await _0x5f2155[_0x3968e3(0x1f0)](getToken);if(!_0x5c338d)throw new Error(_0x5f2155['RKYQf']);const _0x43edf0=_0x5f2155[_0x3968e3(0x1f0)](getApiBaseUrl),_0x587ddf=await fetch(_0x43edf0+_0x3968e3(0x1f6)+_0x16541d+'/sessions/'+_0x4bc3c3+'/start',{'method':_0x5f2155[_0x3968e3(0x1f1)],'headers':{'Authorization':_0x3968e3(0x1e6)+_0x5c338d}});if(!_0x587ddf['ok']){const _0x1f7e9f=await _0x587ddf[_0x3968e3(0x1f5)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x1f7e9f);}return _0x587ddf['json']();}export async function concludeSession(_0x59f68c,_0x714809){const _0x3dc234=_0x37fd,_0x603a5b={'ejtmv':function(_0x17aa91){return _0x17aa91();},'SDPkf':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x3794af=await _0x603a5b[_0x3dc234(0x1d9)](getToken);if(!_0x3794af)throw new Error(_0x603a5b['SDPkf']);const _0x7373fe=_0x603a5b[_0x3dc234(0x1d9)](getApiBaseUrl),_0x55237b=await fetch(_0x7373fe+_0x3dc234(0x1f6)+_0x59f68c+_0x3dc234(0x1c1)+_0x714809+'/conclude',{'method':'POST','headers':{'Authorization':_0x3dc234(0x1e6)+_0x3794af}});if(!_0x55237b['ok']){const _0x50fc39=await _0x55237b[_0x3dc234(0x1f5)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x50fc39);}return _0x55237b[_0x3dc234(0x1f7)]();}export async function getActionItems(_0x2c6a86){const _0x3cfe63=_0x37fd,_0x552985={'sGEpf':function(_0x361269){return _0x361269();},'ivYsq':_0x3cfe63(0x1c9),'TpmCi':function(_0xa1f936,_0x4dd123,_0xf5da5){return _0xa1f936(_0x4dd123,_0xf5da5);},'SELQu':'GET'},_0x476d38=await _0x552985['sGEpf'](getToken);if(!_0x476d38)throw new Error(_0x552985['ivYsq']);const _0x4907c8=getApiBaseUrl(),_0x4902db=await _0x552985[_0x3cfe63(0x1df)](fetch,_0x4907c8+'/api/v1/mcp/features/'+_0x2c6a86+_0x3cfe63(0x1c2),{'method':_0x552985['SELQu'],'headers':{'Authorization':_0x3cfe63(0x1e6)+_0x476d38}});if(!_0x4902db['ok']){const _0x598a77=await _0x4902db[_0x3cfe63(0x1f5)]();throw new Error(_0x3cfe63(0x1fc)+_0x598a77);}return _0x4902db['json']();}function _0x37fd(_0xff743c,_0x43ade0){_0xff743c=_0xff743c-0x1b3;const _0x5183ee=_0x5183();let _0x37fdfd=_0x5183ee[_0xff743c];return _0x37fdfd;}export async function getItemFeedback(_0x271973,_0x23f7c3){const _0x16fd3b=_0x37fd,_0xbb4fc5=await getToken();if(!_0xbb4fc5)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xf81296=getApiBaseUrl(),_0x57c833=await fetch(_0xf81296+_0x16fd3b(0x1f6)+_0x271973+'/checklist-items/'+_0x23f7c3+'/feedback',{'method':_0x16fd3b(0x1b6),'headers':{'Authorization':_0x16fd3b(0x1e6)+_0xbb4fc5}});if(!_0x57c833['ok']){const _0x4b1f85=await _0x57c833['text']();throw new Error(_0x16fd3b(0x1f3)+_0x4b1f85);}return _0x57c833['json']();}function _0x5183(){const _0x160e41=['roBQa','https://dashboard.ranger.net/billing','Failed\x20to\x20list\x20feature\x20reviews:\x20','stringify','Failed\x20to\x20get\x20action\x20items:\x20','toString','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','18ZUMdrP','ChIbx','GET','limit','vhGEd','GDGoC','/sessions','EjRas','includeDeleted','Biois','gitRepoUrl','gitBranch','rzmJW','/sessions/','/action-items','Failed\x20to\x20create\x20feature\x20review:\x20','WQwJW','wNMDG','PATCH','set','DqQan','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','/comments/address','172164upJOlK','DELETE','PsHSf','475844eZlKxl','join','message','billingUrl','\x0a\x0aUpgrade\x20your\x20plan:\x20','/checklist/','QvKCW','cGsVW','/api/v1/mcp/features','45025rKcTQW','2XWzPNy','ejtmv','316044Aamoal','XwYug','application/json','oFYMo','Failed\x20to\x20delete\x20feature\x20review:\x20','TpmCi','973phXZgO','/checklist','sessionId','itemIds','Failed\x20to\x20list\x20sessions:\x20','style','Bearer\x20','31528zywSCD','ELkzg','39193tmXzza','true','JHBOu','1070KrXifn','274965VghnNz','POST','offset','zbJfw','GvMkH','Rutpc','Failed\x20to\x20get\x20item\x20feedback:\x20','Failed\x20to\x20update\x20scenario:\x20','text','/api/v1/mcp/features/','json'];_0x5183=function(){return _0x160e41;};return _0x5183();}export async function markCommentsAddressed(_0x2c7d3b,_0x962443,_0x2f6e55){const _0x29d0e0=_0x37fd,_0x27aadb={'dcPEE':function(_0x22f555){return _0x22f555();},'PWrld':function(_0x30ae4d){return _0x30ae4d();},'IxYRh':function(_0x42f23a,_0x914e81,_0xfe300d){return _0x42f23a(_0x914e81,_0xfe300d);},'Rutpc':_0x29d0e0(0x1ee)},_0x4eda93=await _0x27aadb['dcPEE'](getToken);if(!_0x4eda93)throw new Error(_0x29d0e0(0x1c9));const _0x118acd=_0x27aadb['PWrld'](getApiBaseUrl),_0x23c70b=await _0x27aadb['IxYRh'](fetch,_0x118acd+_0x29d0e0(0x1f6)+_0x2c7d3b+_0x29d0e0(0x1ca),{'method':_0x27aadb[_0x29d0e0(0x1f2)],'headers':{'Authorization':_0x29d0e0(0x1e6)+_0x4eda93,'Content-Type':'application/json'},'body':JSON['stringify']({'checklistItemId':_0x962443,'commentIds':_0x2f6e55})});if(!_0x23c70b['ok']){const _0x5609f1=await _0x23c70b[_0x29d0e0(0x1f5)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x5609f1);}}export async function softDeleteFeature(_0x11904c){const _0x437c56=_0x37fd,_0x4f2ac7={'GDGoC':_0x437c56(0x1c9),'rzmJW':function(_0x273468){return _0x273468();},'AIHZP':function(_0xe13843,_0x4dda02,_0x2d142b){return _0xe13843(_0x4dda02,_0x2d142b);}},_0x15ec9a=await getToken();if(!_0x15ec9a)throw new Error(_0x4f2ac7[_0x437c56(0x1b9)]);const _0x26a770=_0x4f2ac7[_0x437c56(0x1c0)](getApiBaseUrl),_0x32fbe3=await _0x4f2ac7['AIHZP'](fetch,_0x26a770+_0x437c56(0x1f6)+_0x11904c,{'method':_0x437c56(0x1cc),'headers':{'Authorization':'Bearer\x20'+_0x15ec9a}});if(!_0x32fbe3['ok']){const _0x3fd7cd=await _0x32fbe3['text']();throw new Error(_0x437c56(0x1de)+_0x3fd7cd);}}export async function restoreFeature(_0x4e339e){const _0x2a23f8=_0x37fd,_0x4229c0={'PsHSf':function(_0x3bad4b){return _0x3bad4b();},'XwYug':_0x2a23f8(0x1ee)},_0x5b2ca1=await _0x4229c0[_0x2a23f8(0x1cd)](getToken);if(!_0x5b2ca1)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1d6a33=getApiBaseUrl(),_0x39a0fb=await fetch(_0x1d6a33+'/api/v1/mcp/features/'+_0x4e339e+'/restore',{'method':_0x4229c0[_0x2a23f8(0x1db)],'headers':{'Authorization':_0x2a23f8(0x1e6)+_0x5b2ca1}});if(!_0x39a0fb['ok']){const _0x616a83=await _0x39a0fb[_0x2a23f8(0x1f5)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x616a83);}}
|