@ranger-testing/ranger-cli 3.1.6-alpha.aca5f9c-53 → 3.1.6-alpha.cbf7608-55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +14 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5559ee=_0xa37e;(function(_0x5d200d,_0x24cc73){const _0x530bca=_0xa37e,_0x3bc326=_0x5d200d();while(!![]){try{const _0x338cf7=parseInt(_0x530bca(0x12c))/0x1*(parseInt(_0x530bca(0x182))/0x2)+-parseInt(_0x530bca(0xf0))/0x3+parseInt(_0x530bca(0x166))/0x4*(-parseInt(_0x530bca(0x10e))/0x5)+-parseInt(_0x530bca(0x184))/0x6+-parseInt(_0x530bca(0x175))/0x7*(-parseInt(_0x530bca(0x16b))/0x8)+-parseInt(_0x530bca(0x130))/0x9*(parseInt(_0x530bca(0x181))/0xa)+parseInt(_0x530bca(0x16d))/0xb;if(_0x338cf7===_0x24cc73)break;else _0x3bc326['push'](_0x3bc326['shift']());}catch(_0x5db4be){_0x3bc326['push'](_0x3bc326['shift']());}}}(_0x58f3,0xaa7ce));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x1bca08 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(_0x1bce2f){const _0x4116ce=_0xa37e,_0x5a303c={'jDgQq':'invalid-url'};try{return new URL(_0x1bce2f)['host'];}catch{return _0x5a303c[_0x4116ce(0x1a2)];}}function errorMessageForTelemetry(_0x6f7619){const _0x4292e7=_0xa37e;return _0x6f7619 instanceof Error?_0x6f7619[_0x4292e7(0x187)]:undefined;}function trackBridgeEvent(_0x3368a6,_0x3e914d){const _0x8c5cb0=_0xa37e,_0xf7db55={'urFBf':function(_0x427679,_0x25c360){return _0x427679===_0x25c360;},'qRFpR':'local_ws_error'};if(!_0x3368a6)return;const _0x45175d={'tunnelSessionId':_0x3e914d['sessionId'],'tunnelEventType':_0x3e914d['type'],'connectionId':_0x3e914d[_0x8c5cb0(0xde)],'code':_0x3e914d['code'],'reason':_0x3e914d['reason'],'error':_0x3e914d[_0x8c5cb0(0x11a)],'elapsedMs':_0x3e914d['elapsedMs'],'activeLocalConnections':_0x3e914d[_0x8c5cb0(0x197)],'pendingLocalConnections':_0x3e914d[_0x8c5cb0(0x167)]};_0x3368a6['trackPhaseEnd']('tunnel_bridge_event',_0x45175d),(_0x3e914d['type']===_0x8c5cb0(0x13c)||_0xf7db55[_0x8c5cb0(0x19c)](_0x3e914d[_0x8c5cb0(0x133)],_0xf7db55[_0x8c5cb0(0x153)]))&&void _0x3368a6['trackPhaseError'](_0x8c5cb0(0x1a1),new Error(_0x3e914d['error']??_0x3e914d[_0x8c5cb0(0x133)]),_0x45175d);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x1a8cfd=_0xa37e,_0x3133c1={'cbVGT':_0x1a8cfd(0xec)},_0x296e77=await getToken();if(!_0x296e77)throw new Error(_0x3133c1['cbVGT']);return _0x296e77;}async function apiRequest(_0x1053e7,_0xb30e8={}){const _0x226df7=_0xa37e,_0x6c0ee2={'opgFC':function(_0x384637){return _0x384637();},'INCAC':function(_0x45a2b8,_0x429042,_0x109b99){return _0x45a2b8(_0x429042,_0x109b99);},'vAIOF':function(_0x4b6a06,_0x1c80e8){return _0x4b6a06===_0x1c80e8;},'xNaiu':_0x226df7(0x198),'qjxyi':function(_0x2acbfa,_0x379af3){return _0x2acbfa===_0x379af3;},'BAVbq':function(_0xc5ca34,_0x3b0127){return _0xc5ca34===_0x3b0127;}},_0x3936b3=await _0x6c0ee2['opgFC'](requireToken),_0x5aa1c5=_0x6c0ee2[_0x226df7(0x100)](getApiBaseUrl),_0x55e1b9=await _0x6c0ee2['INCAC'](fetch,''+_0x5aa1c5+_0x1053e7,{..._0xb30e8,'headers':{'Authorization':'Bearer\x20'+_0x3936b3,'Content-Type':_0x226df7(0xe2),..._0xb30e8[_0x226df7(0x154)]??{}}});if(!_0x55e1b9['ok']){let _0x60e17='',_0xefd817;try{const _0x2c67e5=await _0x55e1b9[_0x226df7(0xfe)](),_0x51548b=(_0x6c0ee2[_0x226df7(0x190)](typeof _0x2c67e5['error'],_0x6c0ee2['xNaiu'])?_0x2c67e5['error']:undefined)??JSON['stringify'](_0x2c67e5);_0x60e17=_0x51548b;_0x6c0ee2[_0x226df7(0x183)](typeof _0x2c67e5[_0x226df7(0xfd)],_0x6c0ee2[_0x226df7(0x146)])&&_0x2c67e5['test_output']&&(_0x60e17=_0x60e17+'\x0a'+_0x2c67e5[_0x226df7(0xfd)]);if(_0x6c0ee2['BAVbq'](typeof _0x2c67e5['code'],_0x226df7(0x198)))_0xefd817=_0x2c67e5['code'];}catch{_0x60e17=_0x55e1b9[_0x226df7(0x15d)];}throw new ApiError(_0x226df7(0xe1)+_0x1053e7+'\x20failed\x20('+_0x55e1b9[_0x226df7(0x189)]+'):\x20'+_0x60e17,_0x55e1b9['status'],_0x60e17,_0xefd817);}if(_0x55e1b9['status']===0xcc)return undefined;return _0x55e1b9['json']();}export class ApiError extends Error{['status'];['detail'];[_0x5559ee(0x134)];constructor(_0x18b078,_0x5a33fd,_0xc9cd97,_0x3fb5fd){const _0x4f5476=_0x5559ee,_0x3791a9={'pRnJJ':'2|0|1|4|3'},_0x31ce1=_0x3791a9['pRnJJ'][_0x4f5476(0x160)]('|');let _0xf92c1=0x0;while(!![]){switch(_0x31ce1[_0xf92c1++]){case'0':this[_0x4f5476(0x189)]=_0x5a33fd;continue;case'1':this[_0x4f5476(0x12b)]=_0xc9cd97;continue;case'2':super(_0x18b078);continue;case'3':this[_0x4f5476(0xf5)]='ApiError';continue;case'4':this['code']=_0x3fb5fd;continue;}break;}}}export async function fetchCloudProfile(_0xfa4160){const _0x170e89=_0x5559ee,_0x4dfdac={'sNAfs':function(_0x552909,_0x111e89){return _0x552909(_0x111e89);},'jKahi':function(_0x42487c,_0x18946e){return _0x42487c(_0x18946e);},'ptboS':function(_0x40d048,_0x59d964){return _0x40d048 instanceof _0x59d964;},'VHCKH':function(_0x6b9b3e,_0x36a713){return _0x6b9b3e===_0x36a713;}};try{return await _0x4dfdac['sNAfs'](apiRequest,_0x170e89(0x18a)+_0x4dfdac['jKahi'](encodeURIComponent,_0xfa4160));}catch(_0x364632){if(_0x4dfdac['ptboS'](_0x364632,ApiError)&&_0x4dfdac['VHCKH'](_0x364632[_0x170e89(0x189)],0x194))return null;throw _0x364632;}}export async function listCloudProfiles(){const _0xf927d9=_0x5559ee,_0x35e0fc={'ZKiMR':function(_0x2d207a,_0x36e031){return _0x2d207a(_0x36e031);}},_0x3d3260=await _0x35e0fc['ZKiMR'](apiRequest,_0xf927d9(0x180));return _0x3d3260['profiles'];}export async function deleteCloudProfile(_0x1fe563){const _0x453d14=_0x5559ee,_0x492844={'CWUKI':function(_0x60f24f,_0x3db467){return _0x60f24f(_0x3db467);},'JOeGo':function(_0x11e94c,_0x3ccd61){return _0x11e94c instanceof _0x3ccd61;}};try{await apiRequest(_0x453d14(0x18a)+_0x492844[_0x453d14(0x172)](encodeURIComponent,_0x1fe563),{'method':_0x453d14(0x104)});}catch(_0x32db0c){if(_0x492844[_0x453d14(0xfa)](_0x32db0c,ApiError)&&_0x32db0c[_0x453d14(0x189)]===0x194)throw new Error(_0x453d14(0x17e)+_0x1fe563+'\x22\x20not\x20found.');throw _0x32db0c;}}export async function createCloudProfile(_0x12c1f7,_0xcfc95a,_0x3403bd={}){const _0x20774f=_0x5559ee,_0x52c57e={'pdXJs':function(_0x293d8a,_0x49ff22,_0x120941){return _0x293d8a(_0x49ff22,_0x120941);},'zcJFi':'POST'},_0x48b381={'name':_0x12c1f7};if(_0xcfc95a)_0x48b381['environment_key']=_0xcfc95a;_0x3403bd['settings']&&Object[_0x20774f(0xee)](_0x3403bd[_0x20774f(0x16a)])[_0x20774f(0x129)]>0x0&&(_0x48b381['settings']=_0x3403bd[_0x20774f(0x16a)]);if(_0x3403bd[_0x20774f(0x137)])_0x48b381['username']=_0x3403bd['username'];if(_0x3403bd[_0x20774f(0x17d)])_0x48b381[_0x20774f(0x17d)]=_0x3403bd['password'];return await _0x52c57e['pdXJs'](apiRequest,_0x20774f(0x180),{'method':_0x52c57e['zcJFi'],'body':JSON['stringify'](_0x48b381)});}export async function uploadCloudProfileSession(_0x22a258,_0x4e9a6e){const _0x330f84=_0x5559ee,_0x10a34f={'fzuUw':_0x330f84(0x152)};return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x22a258)+_0x330f84(0xf8),{'method':_0x10a34f['fzuUw'],'body':JSON[_0x330f84(0x148)]({'session_state':_0x4e9a6e})});}export async function saveCloudProfileCredentials(_0x44790a,_0x43cf60,_0x4293e5){const _0x4cd9b4=_0x5559ee,_0x4e3181={'HyLoo':function(_0x49ce71,_0x48ba35){return _0x49ce71(_0x48ba35);}};await apiRequest(_0x4cd9b4(0x18a)+_0x4e3181[_0x4cd9b4(0x12f)](encodeURIComponent,_0x44790a),{'method':'PUT','body':JSON['stringify']({'username':_0x43cf60,'password':_0x4293e5})});}export async function fetchAuthConfig(){const _0x364eff=_0x5559ee,_0x4d5193={'ofPME':function(_0x28ae50,_0xf95a0d){return _0x28ae50(_0xf95a0d);},'WEJAS':_0x364eff(0x115),'RWrrs':function(_0x377ca9,_0x1cdb40){return _0x377ca9 instanceof _0x1cdb40;}};try{const _0x4c2bef=await _0x4d5193['ofPME'](apiRequest,_0x4d5193[_0x364eff(0x17f)]);return _0x4c2bef[_0x364eff(0x19f)];}catch(_0xae01b5){return _0x4d5193['RWrrs'](_0xae01b5,ApiError)&&_0xae01b5['status']!==0x194&&console[_0x364eff(0x11a)](_0x364eff(0x19e)+_0xae01b5[_0x364eff(0x187)]),null;}}function _0x58f3(){const _0x3cf68b=[');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','detail','1210937dLqxHp','organizationId','trackPhaseEnd','HyLoo','9EOCGCF','setupHeaders','rSMRg','type','code','xdcZL','trackPhaseStart','username','HFVHF','PjxSb','env','newPage','tunnel_error','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','ueMiw','pBlqI','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>`.','ZamGh','prompt','EXeuU','tunnel_login_request','xNaiu','goto','stringify','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','sQwrT','\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)','loginInstructions','storageStatePath','domains','qHKbE','targetUrl','\x22\x20for\x20','POST','qRFpR','headers','\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a','\x20\x20Cloud\x20profile\x20\x22','RANGER_TEST_USERNAME','close','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','ZopbW','smewc','environments','statusText','Puukj','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','split','\x20\x20Login\x20successful.\x20Session\x20cached.','pw_endpoint','XAsxS','force','\x20\x20forceLogin\x20enabled\x20for\x20\x22','1239940DScTKw','pendingLocalConnections','beSYF','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','settings','56lcyFiM','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','17586184pfzrbp','sPLEo','zePGR','clientIp','tunnel','CWUKI','mDmWg','ANbhs','174013oKoWAP','\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.','RANGER_TUNNEL_LOGIN_HEADED','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','KcrvR','defaultEnvironmentKey','WxIaN','sessionId','password','Cloud\x20profile\x20\x22','WEJAS','/api/v1/profiles','3346630qBvKLt','2doNThf','qjxyi','4344678gCOkxJ','utf-8','tunnelUrl','message','environmentKey','status','/api/v1/profiles/','replace','uioKG','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','tunnel_login_setup','success','vAIOF','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a','RANGER_TEST_PASSWORD','LdbgX','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','CaGdn','activeLocalConnections','string','not_configured','\x20\x20Cached\x20session\x20for\x20\x22','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','urFBf','telemetry','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','auth_config','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','tunnel_bridge','jDgQq','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','raw','connectionId','persistSessionState','Gdxcc','API\x20request\x20','application/json','kphaU','tunnel_login_cleanup','cli:manual-login','XSgff','toLowerCase','vkecR','Bqozt','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','\x20\x20Server-side\x20login\x20error:\x20','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','newContext','keys','1|2|4|3|0','1819890XtWbFI','wAJvN','\x20--url\x20','isArray','IehaO','name','\x20\x20Created\x20cloud\x20profile\x20\x22','\x20\x20Cloud\x20session\x20for\x20\x22','/session','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','JOeGo','HzCvy','\x22.\x0a','test_output','json','Auth\x20environment\x20\x22','opgFC','\x20\x20No\x20live\x20session\x20for\x20\x22','No\x20saved\x20session\x20for\x20\x22','vFIdR','DELETE','mjBGa','\x22;\x20proceeding\x20with\x20loginInstructions.','vxUCF','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','/api/v1/tunnel/sessions','gRfat','ambiguous','zbuNS','assertedEnv','10afDxNI','session_state','PKAKV','forceLogin','push','sessionCheckPath','TEEgV','/api/v1/profiles/auth-config','\x20(auth\x20env:\x20','join','log','OZJjE','error','some','launch','toISOString','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','invalidateOn','PtHqW','userAgent','OHpNp','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','catch','ulzPT','pwEndpoint','trim','origin','length'];_0x58f3=function(){return _0x3cf68b;};return _0x58f3();}async function createTunnelSession(_0x5d993d){const _0x17adfa=_0x5559ee,_0x11f004={'Teqrz':_0x17adfa(0x109),'uioKG':'agent'};return await apiRequest(_0x11f004['Teqrz'],{'method':_0x17adfa(0x152),'body':JSON['stringify']({'targetUrl':_0x5d993d,'mode':_0x11f004[_0x17adfa(0x18c)]})});}async function deleteTunnelSession(_0x271610){const _0x457044=_0x5559ee;await apiRequest('/api/v1/tunnel/sessions/'+_0x271610,{'method':_0x457044(0x104)});}export function pickAdHocEnvKey(_0x55171d,_0x3e4cda,_0x26d5a4){const _0x22db04=_0x5559ee,_0x46a957={'LdbgX':function(_0x3a2ce4,_0x1440b2){return _0x3a2ce4+_0x1440b2;},'HFVHF':function(_0x19b63f,_0xabbb85,_0x16b673){return _0x19b63f(_0xabbb85,_0x16b673);},'XSgff':function(_0x39dd18,_0x306416,_0x3fdd03){return _0x39dd18(_0x306416,_0x3fdd03);},'ZopbW':function(_0x1d8dc6,_0x56be80){return _0x1d8dc6 in _0x56be80;},'vxUCF':_0x22db04(0x10b),'fVJtS':function(_0x278651,_0x213561){return _0x278651(_0x213561);},'saCgY':function(_0x53a464,_0x277349){return _0x53a464+_0x277349;},'Bqozt':function(_0x5c6df3,_0x884d85){return _0x5c6df3+_0x884d85;},'TEEgV':function(_0x25951e,_0x575913){return _0x25951e===_0x575913;},'ESjkS':function(_0xfeefd0,_0x1741e0){return _0xfeefd0===_0x1741e0;}};if(_0x26d5a4){if(!_0x55171d?.[_0x22db04(0x15c)]?.[_0x26d5a4]){const _0x37911b=Object['keys'](_0x55171d?.[_0x22db04(0x15c)]??{});throw new Error(_0x46a957[_0x22db04(0x194)](_0x22db04(0xff)+_0x26d5a4+_0x22db04(0x123),_0x37911b[_0x22db04(0x129)]?'\x20Available:\x20'+_0x37911b[_0x22db04(0x117)](',\x20')+'.':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.')+_0x22db04(0x14b));}return _0x26d5a4;}if(!_0x55171d)return null;if(_0x3e4cda){const _0x5a300f=_0x46a957[_0x22db04(0x138)](matchAuthEnvironmentExact,_0x3e4cda,_0x55171d);if(_0x5a300f)return _0x5a300f;const _0x12dc1e=_0x46a957[_0x22db04(0xe6)](matchAuthEnvironmentByHost,_0x3e4cda,_0x55171d);if(_0x12dc1e&&'key'in _0x12dc1e)return console['log']('\x20\x20Auth\x20env\x20\x22'+_0x12dc1e['key']+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x3e4cda+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x12dc1e['key'];if(_0x12dc1e&&_0x46a957[_0x22db04(0x15a)](_0x46a957[_0x22db04(0x107)],_0x12dc1e))throw new Error(_0x22db04(0x108)+_0x12dc1e[_0x22db04(0x10b)]['join'](',\x20')+_0x22db04(0x12a));if(_0x46a957['fVJtS'](needsTunnel,_0x3e4cda))throw new Error(_0x46a957['LdbgX'](_0x46a957['saCgY'](_0x46a957[_0x22db04(0xe9)](_0x22db04(0x13d)+_0x3e4cda+_0x22db04(0xfc)+'\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a'+'\x20\x20Options:\x0a',_0x22db04(0x192)),'\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x3e4cda[_0x22db04(0x18b)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),'\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20'+_0x3e4cda+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x55171d['defaultEnvironmentKey'])return _0x55171d[_0x22db04(0x17a)];const _0x5bb8f8=Object['keys'](_0x55171d[_0x22db04(0x15c)]??{});if(_0x46a957[_0x22db04(0x114)](_0x5bb8f8['length'],0x1))return _0x5bb8f8[0x0];if(_0x46a957['ESjkS'](_0x5bb8f8[_0x22db04(0x129)],0x0))return null;throw new Error(_0x22db04(0x16c)+_0x5bb8f8['join'](',\x20')+').\x20'+_0x22db04(0x141));}export function adHocProfileName(_0xa812b4,_0x15ace7,_0x404505){const _0x3eed7e={'ztQKr':function(_0x58be4b,_0x357e78){return _0x58be4b===_0x357e78;}};if(!_0x15ace7||_0x3eed7e['ztQKr'](_0x15ace7,_0x404505))return _0xa812b4;return _0xa812b4+':'+_0x15ace7;}export async function resolveAdHocProfile(_0x10bbd8={},_0x225132=process[_0x5559ee(0x13a)]){const _0x64d92d=_0x5559ee,_0x323641={'mjBGa':function(_0x5bfa6f,_0x2d5d8e,_0x5354f7,_0x538558){return _0x5bfa6f(_0x2d5d8e,_0x5354f7,_0x538558);},'KWaqL':function(_0x32040f,_0x3d31a5){return _0x32040f&&_0x3d31a5;},'qHKbE':function(_0x579f11,_0x57c30e){return _0x579f11!==_0x57c30e;},'FIRov':'none'},_0x554c52=_0x225132[_0x64d92d(0x157)];if(!_0x554c52)return null;const _0x65daed=await fetchAuthConfig(),_0x5025ce=pickAdHocEnvKey(_0x65daed,_0x10bbd8['targetUrl'],_0x10bbd8['envKey']);let _0x5154bd=_0x323641[_0x64d92d(0x105)](adHocProfileName,_0x554c52,_0x5025ce,_0x65daed?.[_0x64d92d(0x17a)]),_0x5bec82=await fetchCloudProfile(_0x5154bd);_0x323641['KWaqL'](_0x5bec82,_0x5025ce)&&_0x323641[_0x64d92d(0x14f)](_0x5bec82[_0x64d92d(0x188)],_0x5025ce)&&(console[_0x64d92d(0x118)](_0x64d92d(0x156)+_0x5154bd+_0x64d92d(0x169)+(_0x5bec82['environmentKey']??_0x323641['FIRov'])+_0x64d92d(0xea)+_0x5025ce+'\x22;\x20using\x20\x22'+_0x554c52+':'+_0x5025ce+'\x22\x20instead.'),_0x5154bd=_0x554c52+':'+_0x5025ce,_0x5bec82=await fetchCloudProfile(_0x5154bd));if(_0x5bec82)return{'name':_0x5bec82['name'],'profile':_0x5bec82};const _0x35596e=_0x225132[_0x64d92d(0x193)],_0x1d1f14=await createCloudProfile(_0x5154bd,_0x5025ce??undefined,{'username':_0x554c52,'password':_0x35596e});return console['log'](_0x64d92d(0xf6)+_0x1d1f14[_0x64d92d(0xf5)]+_0x64d92d(0x151)+_0x554c52+(_0x5025ce?_0x64d92d(0x116)+_0x5025ce+')':'')),{'name':_0x1d1f14['name'],'profile':_0x1d1f14};}export async function writeSessionToLocalCache(_0x2d7ece,_0x2ff446,_0x2b9a7d,_0x3215e6,_0xc538dd,_0x21ad3a,_0x1406e8){const _0x26073d=_0x5559ee,_0x3a2ec3={'wikWL':function(_0x2c4ed7,_0x17585f,_0x4254d3){return _0x2c4ed7(_0x17585f,_0x4254d3);},'CaGdn':function(_0x4a1be6){return _0x4a1be6();},'smewc':'auth','WxIaN':function(_0x65eded,_0x3a714f){return _0x65eded>_0x3a714f;},'sTkqO':function(_0x271896,_0x1325a1,_0x192e21){return _0x271896(_0x1325a1,_0x192e21);}},_0xd05117=sessionCacheHash({'orgId':_0x2ff446,'profileName':_0x2d7ece,'effectiveBaseUrl':_0x2b9a7d,'setupHeaders':_0x3215e6,'invalidateOn':_0x1406e8?.['invalidateOn'],'userAgent':_0x1406e8?.['userAgent'],'clientIp':_0x1406e8?.['clientIp']}),_0x1e9518=_0x3a2ec3['wikWL'](getSessionCachePath,_0xd05117,_0x2d7ece),_0x95a1b3=join(_0x3a2ec3[_0x26073d(0x196)](getRangerHomeDir),_0x3a2ec3[_0x26073d(0x15b)]);!existsSync(_0x95a1b3)&&await mkdir(_0x95a1b3,{'recursive':!![]});const _0x163561={..._0xc538dd};_0x21ad3a&&_0x3a2ec3[_0x26073d(0x17b)](_0x21ad3a[_0x26073d(0x129)],0x0)&&Array[_0x26073d(0xf3)](_0x163561['cookies'])&&(_0x163561['cookies']=_0x3a2ec3['sTkqO'](duplicateCookiesForDomains,_0x163561['cookies'],_0x21ad3a));const _0x125ba2={'cached_at':new Date()[_0x26073d(0x11d)](),'session_state':_0x163561};await writeFile(_0x1e9518,JSON['stringify'](_0x125ba2,null,0x2));const _0x571599=getStorageStatePath(_0x1e9518);return await writeFile(_0x571599,JSON[_0x26073d(0x148)](_0x163561,null,0x2)),_0x571599;}export async function checkLocalCache(_0x5b8d86,_0x3ebb1d,_0x119e76,_0x23c23c,_0x23666f){const _0x220560=_0x5559ee,_0xd1c576={'KHgGl':function(_0x2f1038,_0x2377e6){return _0x2f1038(_0x2377e6);},'fucXS':function(_0x5c831b,_0x4f741e){return _0x5c831b(_0x4f741e);},'HzCvy':function(_0x55b17b,_0x374fb9,_0xe46aeb){return _0x55b17b(_0x374fb9,_0xe46aeb);}},_0x4d2131=_0xd1c576['KHgGl'](sessionCacheHash,{'orgId':_0x3ebb1d,'profileName':_0x5b8d86,'effectiveBaseUrl':_0x119e76,'setupHeaders':_0x23c23c,'invalidateOn':_0x23666f?.[_0x220560(0x11f)],'userAgent':_0x23666f?.['userAgent'],'clientIp':_0x23666f?.[_0x220560(0x170)]}),_0xef29e8=getSessionCachePath(_0x4d2131,_0x5b8d86),_0x498b42=getStorageStatePath(_0xef29e8);if(!existsSync(_0xef29e8)||!_0xd1c576['fucXS'](existsSync,_0x498b42))return null;try{const _0x3f1f1d=await _0xd1c576[_0x220560(0xfb)](readFile,_0xef29e8,_0x220560(0x185));return JSON['parse'](_0x3f1f1d),{'storageStatePath':_0x498b42};}catch{return null;}}function launchRealBrowser(){const _0x35a1f3=_0x5559ee;return chromium[_0x35a1f3(0x11c)]({'headless':!![]});}function emitSessionValidationHint(_0xef48d,_0x571ba9){const _0x5b5db1=_0x5559ee,_0x33981f={'kphaU':function(_0x2c4376,_0x480de7){return _0x2c4376===_0x480de7;},'zePGR':function(_0x194f0f,_0x5484c2){return _0x194f0f+_0x5484c2;}};if(!_0x571ba9||!_0x571ba9['domains']?.[_0x5b5db1(0x129)])return;let _0x1adc56;try{_0x1adc56=new URL(_0xef48d);}catch{return;}const _0x349f27=[];for(const _0x428eea of _0x571ba9[_0x5b5db1(0x14e)]){try{_0x349f27[_0x5b5db1(0x112)]({'raw':_0x428eea,'url':new URL(_0x428eea)});}catch{}}if(_0x33981f[_0x5b5db1(0xe3)](_0x349f27[_0x5b5db1(0x129)],0x0))return;if(_0x349f27[_0x5b5db1(0x11b)](_0x4dc7cd=>_0x4dc7cd['url'][_0x5b5db1(0x128)]===_0x1adc56[_0x5b5db1(0x128)]))return;const _0x4c37b6=_0x349f27['map'](_0x23b4d5=>'\x22'+_0x23b4d5[_0x5b5db1(0xdd)]+'\x22')[_0x5b5db1(0x117)](',\x20');console[_0x5b5db1(0x118)](_0x33981f[_0x5b5db1(0x16f)](_0x5b5db1(0x195)+_0x4c37b6+';\x20'+('you\x27re\x20now\x20at\x20\x22'+_0xef48d+_0x5b5db1(0x178)),'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.'));}export async function serverSideLogin(_0x50da25,_0x51878c){const _0x2d50ea=_0x5559ee,_0x8d217a={'RAdyq':function(_0x2116e7,_0x3abdda){return _0x2116e7 instanceof _0x3abdda;},'Vbjce':function(_0x5e1cf6,_0x587b59){return _0x5e1cf6===_0x587b59;}},_0x2c8ed5=process['env'][_0x2d50ea(0x157)],_0x585f34=process[_0x2d50ea(0x13a)]['RANGER_TEST_PASSWORD'],_0xfeff5a={};if(_0x2c8ed5)_0xfeff5a[_0x2d50ea(0x137)]=_0x2c8ed5;if(_0x585f34)_0xfeff5a[_0x2d50ea(0x17d)]=_0x585f34;if(_0x51878c?.['force'])_0xfeff5a[_0x2d50ea(0x164)]=!![];if(_0x51878c?.['targetUrl'])_0xfeff5a['target_url']=_0x51878c[_0x2d50ea(0x150)];if(_0x51878c?.['env'])_0xfeff5a['env']=_0x51878c['env'];_0x51878c?.[_0x2d50ea(0x171)]&&(_0xfeff5a['tunnel_session_id']=_0x51878c[_0x2d50ea(0x171)]['sessionId'],_0xfeff5a[_0x2d50ea(0x162)]=_0x51878c['tunnel']['pwEndpoint']);try{return await apiRequest(_0x2d50ea(0x18a)+encodeURIComponent(_0x50da25)+'/login',{'method':'POST','body':JSON['stringify'](_0xfeff5a)});}catch(_0x4d8341){if(_0x8d217a['RAdyq'](_0x4d8341,ApiError)&&_0x8d217a['Vbjce'](_0x4d8341['status'],0x190)&&_0x4d8341[_0x2d50ea(0x134)]===_0x2d50ea(0x199))return{'status':_0x2d50ea(0x199),'error':_0x4d8341[_0x2d50ea(0x12b)]};throw _0x4d8341;}}async function serverSideLoginWithOptionalTunnel(_0x190e70,_0x1ea45c,_0x50fbe7={}){const _0x25cfa5=_0x5559ee,_0x367bb3={'QauNC':function(_0x2e5462,_0x30e26f){return _0x2e5462(_0x30e26f);},'ueMiw':function(_0xc8466f,_0x468407){return _0xc8466f(_0x468407);},'rSMRg':function(_0x4d1961,_0x52f706){return _0x4d1961(_0x52f706);},'KcrvR':_0x25cfa5(0x13e),'beSYF':'tunnel_login_setup','XAsxS':_0x25cfa5(0x145),'IehaO':function(_0x4cb43b,_0x5ec8b3){return _0x4cb43b??_0x5ec8b3;},'OZJjE':function(_0x48bbd5,_0x30bf7c){return _0x48bbd5||_0x30bf7c;},'mDmWg':_0x25cfa5(0xef),'vFIdR':function(_0x3c50e0,_0x41f15f){return _0x3c50e0(_0x41f15f);}};if(!_0x367bb3[_0x25cfa5(0x13f)](needsTunnel,_0x1ea45c))return await serverSideLogin(_0x190e70,{'force':_0x50fbe7['force'],'env':_0x50fbe7[_0x25cfa5(0x13a)]});let _0x44e7dc=null,_0x5cc2da=null,_0x5e9f00=null,_0x118709=null,_0x5bf4e0=![];const _0x3cfc1a=process['env'][_0x25cfa5(0x177)]?.[_0x25cfa5(0xe7)](),_0x3ac0d2=_0x3cfc1a==='1'||_0x3cfc1a==='true',_0x401a80={'profileName':_0x190e70,'targetUrlHost':targetHostForTelemetry(_0x1ea45c),'tunnelRequired':!![],'forceLogin':_0x367bb3[_0x25cfa5(0x132)](Boolean,_0x50fbe7['force']),'localBrowserServerHeaded':_0x3ac0d2};try{_0x50fbe7['telemetry']?.[_0x25cfa5(0x136)](_0x25cfa5(0x18e),_0x401a80);_0x3ac0d2&&console['log'](_0x367bb3[_0x25cfa5(0x179)]);_0x44e7dc=await launchBrowserServer({'headless':!_0x3ac0d2}),_0x5cc2da=await createTunnelSession(_0x1ea45c);const _0x1cf270=await requireToken();_0x5e9f00=await _0x367bb3['rSMRg'](createTunnelBridge,{'localWsUrl':_0x44e7dc['wsEndpoint'],'tunnelServerUrl':_0x5cc2da[_0x25cfa5(0x186)],'sessionId':_0x5cc2da[_0x25cfa5(0x17c)],'apiKey':_0x1cf270,'onError':_0x21da8b=>{_0x118709=_0x21da8b;},'onClose':()=>{const _0x421ad4=_0x25cfa5;_0x118709??=new Error(_0x421ad4(0x1a0)+_0x190e70);},'onEvent':_0x3ad3fb=>trackBridgeEvent(_0x50fbe7['telemetry'],_0x3ad3fb)}),_0x50fbe7[_0x25cfa5(0x19d)]?.[_0x25cfa5(0x12e)](_0x367bb3[_0x25cfa5(0x168)],{..._0x401a80,'tunnelSessionId':_0x5cc2da[_0x25cfa5(0x17c)],'localBrowserServer':!![],'localBrowserServerHeaded':_0x3ac0d2}),_0x5bf4e0=!![];try{return _0x50fbe7['telemetry']?.[_0x25cfa5(0x136)](_0x367bb3[_0x25cfa5(0x163)],{..._0x401a80,'tunnelSessionId':_0x5cc2da[_0x25cfa5(0x17c)]}),await serverSideLogin(_0x190e70,{'force':_0x50fbe7[_0x25cfa5(0x164)],'targetUrl':_0x1ea45c,'env':_0x50fbe7[_0x25cfa5(0x13a)],'tunnel':{'sessionId':_0x5cc2da[_0x25cfa5(0x17c)],'pwEndpoint':_0x5cc2da[_0x25cfa5(0x126)]}})['then'](_0x514575=>{const _0x524eb5=_0x25cfa5;return _0x50fbe7[_0x524eb5(0x19d)]?.['trackPhaseEnd'](_0x524eb5(0x145),{..._0x401a80,'tunnelSessionId':_0x5cc2da?.[_0x524eb5(0x17c)],'loginStatus':_0x514575['status'],'hasSessionState':Boolean(_0x514575['session_state']),'hasTestOutput':Boolean(_0x514575['test_output']),'bridgeError':_0x367bb3['QauNC'](errorMessageForTelemetry,_0x118709)}),_0x514575;});}catch(_0x53980d){await _0x50fbe7[_0x25cfa5(0x19d)]?.['trackPhaseError'](_0x367bb3[_0x25cfa5(0x163)],_0x367bb3[_0x25cfa5(0xf4)](_0x118709,_0x53980d),{..._0x401a80,'tunnelSessionId':_0x5cc2da['sessionId'],'bridgeError':errorMessageForTelemetry(_0x118709)});throw _0x118709??_0x53980d;}}catch(_0x59227e){!_0x5bf4e0&&await _0x50fbe7[_0x25cfa5(0x19d)]?.['trackPhaseError'](_0x367bb3[_0x25cfa5(0x168)],_0x59227e,{..._0x401a80,'tunnelSessionId':_0x5cc2da?.['sessionId']});throw _0x59227e;}finally{if(_0x367bb3[_0x25cfa5(0x119)](_0x5cc2da,_0x44e7dc)||_0x5e9f00){const _0x27309a=_0x367bb3[_0x25cfa5(0x173)]['split']('|');let _0x303dff=0x0;while(!![]){switch(_0x27309a[_0x303dff++]){case'0':_0x50fbe7['telemetry']?.['trackPhaseEnd'](_0x25cfa5(0xe4),{..._0x401a80,'tunnelSessionId':_0x5cc2da?.[_0x25cfa5(0x17c)]});continue;case'1':_0x50fbe7['telemetry']?.[_0x25cfa5(0x136)]('tunnel_login_cleanup',{..._0x401a80,'tunnelSessionId':_0x5cc2da?.['sessionId']});continue;case'2':_0x5e9f00?.[_0x25cfa5(0x158)]();continue;case'3':_0x5cc2da&&await _0x367bb3[_0x25cfa5(0x103)](deleteTunnelSession,_0x5cc2da['sessionId'])[_0x25cfa5(0x124)](()=>{});continue;case'4':_0x44e7dc&&await _0x44e7dc['close']()[_0x25cfa5(0x124)](()=>{});continue;}break;}}}}function _0xa37e(_0x14b89c,_0x5e5394){_0x14b89c=_0x14b89c-0xdc;const _0x58f312=_0x58f3();let _0xa37e27=_0x58f312[_0x14b89c];return _0xa37e27;}export async function manualBrowserLogin(_0x21fc7a,_0x50dff2,_0x10f291={}){const _0x1f752f=_0x5559ee,_0x5cd8dd={'PKAKV':function(_0x4fd2a8,_0x16610a){return _0x4fd2a8(_0x16610a);},'OHpNp':function(_0x196ffa,_0x539d9b,_0x4be43d){return _0x196ffa(_0x539d9b,_0x4be43d);},'vkecR':function(_0x22e1c7,_0x411113){return _0x22e1c7+_0x411113;},'ltEsv':'about:blank','Gdxcc':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','Ugflz':_0x1f752f(0x149),'PjxSb':'Browser\x20login\x20timed\x20out\x20before\x20completion.','GMcta':'POST','PtHqW':_0x1f752f(0xe5)};if(!isInteractive())throw new Error(_0x5cd8dd[_0x1f752f(0xe8)](_0x5cd8dd['vkecR']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x21fc7a[_0x1f752f(0xf5)]+_0x1f752f(0xfc),'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'),_0x1f752f(0xf9)));const _0xd2fd86=_0x50dff2&&_0x50dff2[_0x1f752f(0x14e)]['length']>0x0?_0x50dff2[_0x1f752f(0x14e)][0x0]:_0x5cd8dd['ltEsv'];console['log'](_0x5cd8dd[_0x1f752f(0xe0)]),console['log'](_0x5cd8dd['Ugflz']),await new Promise(_0x50194a=>setTimeout(_0x50194a,0x7d0));const _0xe6b897=await chromium['launch']({'headless':![]});let _0x48cc24=null;try{const _0xd0f4dc={'ignoreHTTPSErrors':!![]};_0x50dff2?.['setupHeaders']&&(_0xd0f4dc['extraHTTPHeaders']=_0x50dff2['setupHeaders']);const _0x2cdeb1=await _0xe6b897[_0x1f752f(0xed)](_0xd0f4dc);await addProfileSetupBanner(_0x2cdeb1);const _0x319016=await _0x2cdeb1[_0x1f752f(0x13b)]();await _0x319016[_0x1f752f(0x147)](_0xd2fd86);let _0x3084b9=![];await new Promise(_0x4085a9=>{const _0x377ebf={'gRfat':function(_0x491d19,_0x4e2f37){const _0x3f8e2e=_0xa37e;return _0x5cd8dd[_0x3f8e2e(0x110)](_0x491d19,_0x4e2f37);}},_0x3e9e51=_0x5cd8dd['OHpNp'](setTimeout,()=>{const _0xb48c68=_0xa37e;_0x3084b9=!![],console['error']('Browser\x20login\x20timed\x20out\x20after\x20'+MANUAL_LOGIN_TIMEOUT_MS/0xea60+_0xb48c68(0x11e)),_0x4085a9();},MANUAL_LOGIN_TIMEOUT_MS);_0x319016['on']('close',async()=>{const _0x1dc1a9=_0xa37e;_0x377ebf[_0x1dc1a9(0x10a)](clearTimeout,_0x3e9e51);try{const _0x22f904=await _0x2cdeb1['storageState']();_0x48cc24=_0x22f904;}catch{}_0x4085a9();});});if(_0x3084b9&&!_0x48cc24)throw new Error(_0x5cd8dd[_0x1f752f(0x139)]);}finally{await _0xe6b897['close']()[_0x1f752f(0x124)](()=>{});}if(!_0x48cc24)throw new Error('Browser\x20closed\x20before\x20authentication\x20was\x20saved.');return _0x10f291[_0x1f752f(0xdf)]!==![]&&await _0x5cd8dd[_0x1f752f(0x122)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x21fc7a['name'])+_0x1f752f(0xf8),{'method':_0x5cd8dd['GMcta'],'body':JSON['stringify']({'session_state':_0x48cc24,'updated_by':_0x5cd8dd[_0x1f752f(0x120)]})}),{'sessionState':_0x48cc24};}export async function promptSaveCredentials(_0x408fa9){const _0x47d7e5=_0x5559ee,_0x365c2b={'yaRfW':function(_0x261332,_0x2a4730){return _0x261332||_0x2a4730;},'sQwrT':'confirm','PLQuB':_0x47d7e5(0xdc),'BkHOH':function(_0xae8abe,_0x100e8d,_0xbbde92){return _0xae8abe(_0x100e8d,_0xbbde92);}},_0x42bdd2=process[_0x47d7e5(0x13a)][_0x47d7e5(0x157)],_0xfa5470=process[_0x47d7e5(0x13a)]['RANGER_TEST_PASSWORD'];if(_0x365c2b['yaRfW'](!_0x42bdd2,!_0xfa5470))return;if(!isInteractive())return;const {save:_0x2cf52a}=await _0x1bca08[_0x47d7e5(0x143)]([{'type':_0x365c2b[_0x47d7e5(0x14a)],'name':'save','message':_0x365c2b['PLQuB'],'default':![]}]);if(!_0x2cf52a)return;await _0x365c2b['BkHOH'](apiRequest,_0x47d7e5(0x18a)+encodeURIComponent(_0x408fa9),{'method':'PUT','body':JSON['stringify']({'username':_0x42bdd2,'password':_0xfa5470})}),console['log'](_0x47d7e5(0x18d));}export async function resolveCloudProfileSession(_0x23042f,_0x6e9bb0={}){const _0x505300=_0x5559ee,_0x571b87={'kzoQY':function(_0x44bbcb,_0x1fc708){return _0x44bbcb===_0x1fc708;},'Puukj':'string','ZamGh':function(_0x5785c5,_0x5089d2){return _0x5785c5===_0x5089d2;},'ulzPT':function(_0x12a0fd,_0xc47f3c){return _0x12a0fd(_0xc47f3c);},'xdcZL':function(_0x1eebf9,_0x2b7497,_0x5a2f5d,_0x20156d,_0x192f95,_0x4e0a46){return _0x1eebf9(_0x2b7497,_0x5a2f5d,_0x20156d,_0x192f95,_0x4e0a46);},'LPEnT':function(_0x44df95,_0x3f63aa,_0xf418bf,_0x3b603b,_0x390385){return _0x44df95(_0x3f63aa,_0xf418bf,_0x3b603b,_0x390385);},'WJYfr':function(_0x55cbbc,_0x13b18d,_0x8ee172){return _0x55cbbc(_0x13b18d,_0x8ee172);},'wAJvN':function(_0x1cf751,_0x2275a3,_0x466386,_0x244feb,_0x4d90bc,_0x12849e,_0x18ff78,_0x339b53){return _0x1cf751(_0x2275a3,_0x466386,_0x244feb,_0x4d90bc,_0x12849e,_0x18ff78,_0x339b53);},'weFxq':function(_0x1e8354,_0x6351bc,_0x2f94e2){return _0x1e8354(_0x6351bc,_0x2f94e2);},'pNitv':function(_0x292f1d,_0x5264f3){return _0x292f1d(_0x5264f3);},'pBlqI':function(_0x110e2d,_0x5cece2){return _0x110e2d(_0x5cece2);},'cbZpr':function(_0x4066ec,_0x303d08){return _0x4066ec||_0x303d08;},'CBUXf':function(_0x2731f8,_0x3a2c45){return _0x2731f8||_0x3a2c45;},'zbuNS':function(_0x306770,_0x3a10c9){return _0x306770===_0x3a10c9;},'EXeuU':_0x505300(0x18f),'CHvOA':function(_0x1072dd,_0x36c02b){return _0x1072dd&&_0x36c02b;},'jpilV':_0x505300(0x159),'mOfem':function(_0x2aeefd,_0x522d80){return _0x2aeefd instanceof _0x522d80;},'fHrPt':function(_0x15a12a,_0x3b4b5c){return _0x15a12a(_0x3b4b5c);},'ySnUj':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','ANbhs':function(_0x2146b6,_0x4e2d5c){return _0x2146b6+_0x4e2d5c;},'sPLEo':_0x505300(0x176),'Aobuk':function(_0xb03823,_0x11c566,_0x499494){return _0xb03823(_0x11c566,_0x499494);}},_0x50d572=_0x23042f[_0x505300(0x16a)]??{},_0x10a005=await fetchAuthConfig(),_0x554a6d=_0x10a005?resolveAuthEnvironmentLocally(_0x10a005,_0x6e9bb0['assertedEnv']??_0x23042f['environmentKey']):null,_0x524412=_0x571b87['kzoQY'](typeof _0x554a6d?.['loginInstructions'],_0x571b87[_0x505300(0x15e)])&&_0x554a6d[_0x505300(0x14c)][_0x505300(0x127)]()?_0x554a6d['loginInstructions']:undefined,_0x20ec8a=_0x571b87[_0x505300(0x142)](typeof _0x50d572['loginInstructions'],_0x571b87['Puukj'])&&_0x50d572[_0x505300(0x14c)][_0x505300(0x127)]()?_0x50d572['loginInstructions']:undefined,_0x62cbb7=_0x20ec8a||!_0x524412?_0x50d572:{..._0x50d572,'loginInstructions':_0x524412},_0x55e1f9=_0x571b87['ulzPT'](Boolean,_0x62cbb7['loginInstructions']?.['trim']()),_0x45b924=Boolean(_0x50d572[_0x505300(0x111)]||_0x554a6d?.[_0x505300(0x111)]),_0x5e4f26=_0x554a6d?.['domains'],_0x545c3a=_0x50d572['setupHeaders'],_0x3b4d79=_0x545c3a??_0x554a6d?.[_0x505300(0x131)],_0x372252=_0x6e9bb0['effectiveBaseUrl']??_0x50d572['baseUrl']??(_0x5e4f26&&_0x5e4f26['length']>0x0?_0x5e4f26[0x0]:''),_0x1f6d93=_0x372252?needsTunnel(_0x372252):![],_0xd8c048={'invalidateOn':_0x554a6d?.[_0x505300(0x11f)],'userAgent':_0x554a6d?.['browserOptions']?.[_0x505300(0x121)]??_0x50d572[_0x505300(0x121)]};_0x45b924&&console[_0x505300(0x118)](_0x505300(0x165)+_0x23042f[_0x505300(0xf5)]+'\x22,\x20refreshing\x20session...');if(!_0x45b924){const _0x9fb2ed=await _0x571b87[_0x505300(0x135)](checkLocalCache,_0x23042f[_0x505300(0xf5)],_0x23042f['organizationId'],_0x372252,_0x3b4d79,_0xd8c048);if(_0x9fb2ed){if(_0x372252&&!_0x1f6d93){const _0x2f1676=await _0x571b87['LPEnT'](isCachedSessionLive,_0x9fb2ed[_0x505300(0x14d)],_0x372252,{'sessionCheckPath':_0x554a6d?.[_0x505300(0x113)],'setupHeaders':_0x3b4d79},{'launchBrowser':launchRealBrowser});if(_0x2f1676)return console['log'](_0x505300(0x191)+_0x23042f['name']+'\x22'),{'authPath':_0x9fb2ed[_0x505300(0x14d)],'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};console[_0x505300(0x118)](_0x505300(0x19a)+_0x23042f[_0x505300(0xf5)]+'\x22\x20failed\x20validation\x20—\x20refreshing...'),_0x571b87['WJYfr'](emitSessionValidationHint,_0x372252,_0x554a6d);}else return _0x1f6d93&&console[_0x505300(0x118)]('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x23042f['name']+'\x22'),{'authPath':_0x9fb2ed[_0x505300(0x14d)],'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};}}if(!_0x45b924&&_0x23042f['sessionState']){const _0x577927=await _0x571b87['wAJvN'](writeSessionToLocalCache,_0x23042f['name'],_0x23042f['organizationId'],_0x372252,_0x3b4d79,_0x23042f['sessionState'],_0x5e4f26,_0xd8c048);if(_0x372252){const _0x211792=await isCachedSessionLive(_0x577927,_0x372252,{'sessionCheckPath':_0x554a6d?.['sessionCheckPath'],'setupHeaders':_0x3b4d79},{'launchBrowser':launchRealBrowser});if(_0x211792)return console['log'](_0x505300(0x19b)+_0x23042f['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x577927,'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};console['log'](_0x505300(0xf7)+_0x23042f[_0x505300(0xf5)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x571b87['weFxq'](emitSessionValidationHint,_0x372252,_0x554a6d);}else return{'authPath':_0x577927,'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};}if(_0x55e1f9)return console['log'](_0x505300(0x101)+_0x23042f[_0x505300(0xf5)]+_0x505300(0x106)),{'authPath':undefined,'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x23042f['name']+'\x22,\x20attempting\x20login...');const _0x10c63c=_0x571b87['ulzPT'](Boolean,process['env'][_0x505300(0x157)])&&_0x571b87['pNitv'](Boolean,process['env'][_0x505300(0x193)]),_0x262f8a=_0x571b87['pNitv'](Boolean,_0x23042f['username']),_0x4c7d68=_0x571b87[_0x505300(0x140)](Boolean,_0x6e9bb0[_0x505300(0x10d)]),_0x533df7=_0x372252?isBareLocalhost(_0x372252):![],_0x1b8fb7=_0x571b87['cbZpr'](_0x10c63c,_0x262f8a)&&_0x571b87['CBUXf'](!_0x533df7,_0x4c7d68);if(_0x1b8fb7)try{const _0x40435d=_0x372252?await serverSideLoginWithOptionalTunnel(_0x23042f['name'],_0x372252,{'force':_0x45b924,'telemetry':_0x6e9bb0['telemetry'],'env':_0x6e9bb0['assertedEnv']}):await serverSideLogin(_0x23042f[_0x505300(0xf5)],{'force':_0x45b924,'env':_0x6e9bb0['assertedEnv']});if(_0x571b87[_0x505300(0x10c)](_0x40435d['status'],_0x505300(0x199)))console[_0x505300(0x118)](_0x505300(0x15f));else{if(_0x40435d[_0x505300(0x189)]===_0x571b87[_0x505300(0x144)]&&_0x40435d[_0x505300(0x10f)]){console[_0x505300(0x118)](_0x505300(0x161));const _0x3fce47=await writeSessionToLocalCache(_0x23042f['name'],_0x23042f[_0x505300(0x12d)],_0x372252,_0x3b4d79,_0x40435d[_0x505300(0x10f)],_0x5e4f26,_0xd8c048);return _0x571b87['CHvOA'](_0x10c63c,!_0x262f8a)&&await _0x571b87[_0x505300(0x125)](promptSaveCredentials,_0x23042f[_0x505300(0xf5)]),{'authPath':_0x3fce47,'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};}else _0x40435d['test_output']&&(console[_0x505300(0x118)](_0x571b87['jpilV']),console[_0x505300(0x118)](_0x40435d[_0x505300(0xfd)])),console['log']('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}}catch(_0x49a5e7){console['log'](_0x505300(0xeb)+(_0x571b87['mOfem'](_0x49a5e7,Error)?_0x49a5e7['message']:_0x571b87['fHrPt'](String,_0x49a5e7))),console[_0x505300(0x118)](_0x571b87['ySnUj']);}if(_0x571b87['CHvOA'](_0x533df7,!_0x4c7d68)&&!isInteractive())throw new Error(_0x571b87[_0x505300(0x174)](_0x505300(0x102)+_0x372252+'\x22\x20on\x20profile\x20\x22'+_0x23042f['name']+_0x505300(0x155)+('\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20'+_0x23042f['name']+_0x505300(0xf2)+_0x372252+'\x0a'),_0x571b87[_0x505300(0x16e)]));const _0x447e11=_0x554a6d?{..._0x554a6d,'domains':_0x571b87['Aobuk'](orderLoginDomains,_0x372252,_0x554a6d[_0x505300(0x14e)]),'setupHeaders':_0x3b4d79}:_0x372252?{'key':_0x23042f[_0x505300(0x188)]??'','domains':[_0x372252],'setupHeaders':_0x3b4d79}:null,{sessionState:_0xa2a6e}=await manualBrowserLogin(_0x23042f,_0x447e11,{'persistSessionState':!_0x1f6d93}),_0x355755=await _0x571b87[_0x505300(0xf1)](writeSessionToLocalCache,_0x23042f['name'],_0x23042f['organizationId'],_0x372252,_0x3b4d79,_0xa2a6e,_0x5e4f26,_0xd8c048);return{'authPath':_0x355755,'settings':_0x62cbb7,'resolvedEnv':_0x554a6d};}
|
|
1
|
+
const _0x4e1927=_0x65b3;(function(_0x2f3cfc,_0x4fbc36){const _0x16424d=_0x65b3,_0x29ed5f=_0x2f3cfc();while(!![]){try{const _0x2b42d3=parseInt(_0x16424d(0x16b))/0x1*(parseInt(_0x16424d(0x1a7))/0x2)+-parseInt(_0x16424d(0x19d))/0x3+-parseInt(_0x16424d(0x151))/0x4*(-parseInt(_0x16424d(0x11d))/0x5)+-parseInt(_0x16424d(0x13d))/0x6+-parseInt(_0x16424d(0xfa))/0x7*(-parseInt(_0x16424d(0x108))/0x8)+parseInt(_0x16424d(0x160))/0x9*(-parseInt(_0x16424d(0x14f))/0xa)+parseInt(_0x16424d(0x104))/0xb;if(_0x2b42d3===_0x4fbc36)break;else _0x29ed5f['push'](_0x29ed5f['shift']());}catch(_0x224e01){_0x29ed5f['push'](_0x29ed5f['shift']());}}}(_0x17ab,0xca9a2));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x2b18b3 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(_0x3eb57a){const _0x294f61=_0x65b3;try{return new URL(_0x3eb57a)[_0x294f61(0x111)];}catch{return'invalid-url';}}function _0x65b3(_0x129a07,_0x11e4f8){_0x129a07=_0x129a07-0xf9;const _0x17abf0=_0x17ab();let _0x65b3f0=_0x17abf0[_0x129a07];return _0x65b3f0;}function errorMessageForTelemetry(_0x128b43){const _0x185258=_0x65b3,_0x1979bb={'eSQvX':function(_0x2703a3,_0x4f8960){return _0x2703a3 instanceof _0x4f8960;}};return _0x1979bb[_0x185258(0x1af)](_0x128b43,Error)?_0x128b43['message']:undefined;}function trackBridgeEvent(_0x147a72,_0x3526b4){const _0x8e66f8=_0x65b3,_0x42ecd0={'agbfN':_0x8e66f8(0x120),'BqBdA':function(_0xbb9c31,_0x4c8da1){return _0xbb9c31===_0x4c8da1;},'TVPPe':'tunnel_error'};if(!_0x147a72)return;const _0x28efc8={'tunnelSessionId':_0x3526b4['sessionId'],'tunnelEventType':_0x3526b4['type'],'connectionId':_0x3526b4['connectionId'],'code':_0x3526b4['code'],'reason':_0x3526b4[_0x8e66f8(0x182)],'error':_0x3526b4[_0x8e66f8(0x14a)],'elapsedMs':_0x3526b4[_0x8e66f8(0x192)],'activeLocalConnections':_0x3526b4[_0x8e66f8(0x12e)],'pendingLocalConnections':_0x3526b4[_0x8e66f8(0x186)]};_0x147a72['trackPhaseEnd'](_0x42ecd0['agbfN'],_0x28efc8),(_0x42ecd0['BqBdA'](_0x3526b4['type'],_0x42ecd0['TVPPe'])||_0x42ecd0[_0x8e66f8(0x129)](_0x3526b4['type'],_0x8e66f8(0x11c)))&&void _0x147a72[_0x8e66f8(0x197)]('tunnel_bridge',new Error(_0x3526b4['error']??_0x3526b4[_0x8e66f8(0x14d)]),_0x28efc8);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0xe086f7=_0x65b3,_0x2373d2=await getToken();if(!_0x2373d2)throw new Error(_0xe086f7(0x107));return _0x2373d2;}async function apiRequest(_0x1f6fbf,_0x8ccac={}){const _0x169311=_0x65b3,_0x2d3463={'aaOty':function(_0x410bf1){return _0x410bf1();},'qNhgP':function(_0x26ab6a,_0x18de96,_0x13dfcb){return _0x26ab6a(_0x18de96,_0x13dfcb);},'qPBGp':'application/json','zcYHg':function(_0x1ba85a,_0x2f0156){return _0x1ba85a===_0x2f0156;},'ogGEh':_0x169311(0x148),'RzmoQ':function(_0x51a2e9,_0x46f06c){return _0x51a2e9===_0x46f06c;}},_0x77809=await _0x2d3463['aaOty'](requireToken),_0x105bbf=_0x2d3463[_0x169311(0x12f)](getApiBaseUrl),_0x187cfd=await _0x2d3463['qNhgP'](fetch,''+_0x105bbf+_0x1f6fbf,{..._0x8ccac,'headers':{'Authorization':'Bearer\x20'+_0x77809,'Content-Type':_0x2d3463['qPBGp'],..._0x8ccac[_0x169311(0x138)]??{}}});if(!_0x187cfd['ok']){let _0x2ae066='',_0x216529;try{const _0x27afc1=await _0x187cfd[_0x169311(0x195)](),_0x56cf2b=(_0x2d3463[_0x169311(0x190)](typeof _0x27afc1[_0x169311(0x14a)],'string')?_0x27afc1[_0x169311(0x14a)]:undefined)??JSON[_0x169311(0xff)](_0x27afc1);_0x2ae066=_0x56cf2b;typeof _0x27afc1[_0x169311(0x17a)]===_0x2d3463['ogGEh']&&_0x27afc1[_0x169311(0x17a)]&&(_0x2ae066=_0x2ae066+'\x0a'+_0x27afc1['test_output']);if(_0x2d3463[_0x169311(0x181)](typeof _0x27afc1['code'],_0x2d3463['ogGEh']))_0x216529=_0x27afc1['code'];}catch{_0x2ae066=_0x187cfd[_0x169311(0x1ab)];}throw new ApiError(_0x169311(0x10e)+_0x1f6fbf+_0x169311(0x17d)+_0x187cfd['status']+_0x169311(0x1ae)+_0x2ae066,_0x187cfd['status'],_0x2ae066,_0x216529);}if(_0x187cfd['status']===0xcc)return undefined;return _0x187cfd[_0x169311(0x195)]();}export class ApiError extends Error{[_0x4e1927(0x189)];[_0x4e1927(0x1ac)];['code'];constructor(_0x54b497,_0x5c647b,_0x5d09a5,_0x292ce4){const _0x3ecc81=_0x4e1927,_0x134794={'YmlFm':_0x3ecc81(0x11e)},_0x35b767=_0x3ecc81(0x128)['split']('|');let _0x27e9aa=0x0;while(!![]){switch(_0x35b767[_0x27e9aa++]){case'0':this[_0x3ecc81(0x1a6)]=_0x292ce4;continue;case'1':this[_0x3ecc81(0x19b)]=_0x134794['YmlFm'];continue;case'2':this[_0x3ecc81(0x189)]=_0x5c647b;continue;case'3':super(_0x54b497);continue;case'4':this[_0x3ecc81(0x1ac)]=_0x5d09a5;continue;}break;}}}export async function fetchCloudProfile(_0x4463f7){const _0x550aec={'uddWt':function(_0x49a81b,_0x5729d7){return _0x49a81b instanceof _0x5729d7;},'DiQjN':function(_0x5a9f8a,_0x4b7db8){return _0x5a9f8a===_0x4b7db8;}};try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x4463f7));}catch(_0x5b6b70){if(_0x550aec['uddWt'](_0x5b6b70,ApiError)&&_0x550aec['DiQjN'](_0x5b6b70['status'],0x194))return null;throw _0x5b6b70;}}export async function listCloudProfiles(){const _0x379c3b=_0x4e1927,_0x5b7349={'zVNWN':function(_0x152542,_0x17ad51){return _0x152542(_0x17ad51);}},_0x11e40e=await _0x5b7349[_0x379c3b(0x170)](apiRequest,'/api/v1/profiles');return _0x11e40e[_0x379c3b(0x15f)];}export async function deleteCloudProfile(_0x36c78d){const _0x3c46a5=_0x4e1927,_0x3495e4={'yFBuU':function(_0x4776b0,_0x2291ed){return _0x4776b0(_0x2291ed);},'Cfmbd':function(_0x2d8993,_0x29a5da){return _0x2d8993 instanceof _0x29a5da;},'lEGoF':function(_0x373966,_0x6cfb01){return _0x373966===_0x6cfb01;}};try{await apiRequest(_0x3c46a5(0x17f)+_0x3495e4[_0x3c46a5(0x12a)](encodeURIComponent,_0x36c78d),{'method':'DELETE'});}catch(_0x48f7fd){if(_0x3495e4[_0x3c46a5(0x19c)](_0x48f7fd,ApiError)&&_0x3495e4['lEGoF'](_0x48f7fd[_0x3c46a5(0x189)],0x194))throw new Error(_0x3c46a5(0x173)+_0x36c78d+_0x3c46a5(0x132));throw _0x48f7fd;}}export async function createCloudProfile(_0x7d9bc5,_0x31a453,_0x51ef3d={}){const _0xf710db=_0x4e1927,_0x481ac9={'twQNF':function(_0x5c8c20,_0x475c3e,_0x250bb8){return _0x5c8c20(_0x475c3e,_0x250bb8);},'XkrnL':_0xf710db(0x184)},_0x55fe41={'name':_0x7d9bc5};if(_0x31a453)_0x55fe41['environment_key']=_0x31a453;_0x51ef3d[_0xf710db(0x101)]&&Object[_0xf710db(0x135)](_0x51ef3d['settings'])['length']>0x0&&(_0x55fe41['settings']=_0x51ef3d[_0xf710db(0x101)]);if(_0x51ef3d['username'])_0x55fe41['username']=_0x51ef3d['username'];if(_0x51ef3d['password'])_0x55fe41[_0xf710db(0x121)]=_0x51ef3d['password'];return await _0x481ac9['twQNF'](apiRequest,'/api/v1/profiles',{'method':_0x481ac9['XkrnL'],'body':JSON[_0xf710db(0xff)](_0x55fe41)});}export async function uploadCloudProfileSession(_0x3ad893,_0x375984){const _0x54d356=_0x4e1927,_0x565287={'taNWL':function(_0x741374,_0x268e71){return _0x741374(_0x268e71);}};return await apiRequest('/api/v1/profiles/'+_0x565287['taNWL'](encodeURIComponent,_0x3ad893)+_0x54d356(0x191),{'method':'POST','body':JSON['stringify']({'session_state':_0x375984})});}export async function saveCloudProfileCredentials(_0x87bdb,_0x304bac,_0x481770){const _0x262e4d=_0x4e1927,_0x429709={'kjvTF':function(_0x182c5a,_0x42f1a5,_0x5ad3ac){return _0x182c5a(_0x42f1a5,_0x5ad3ac);}};await _0x429709[_0x262e4d(0x17e)](apiRequest,_0x262e4d(0x17f)+encodeURIComponent(_0x87bdb),{'method':_0x262e4d(0x158),'body':JSON[_0x262e4d(0xff)]({'username':_0x304bac,'password':_0x481770})});}export async function fetchAuthConfig(){const _0x34029c=_0x4e1927;try{const _0x4c3fc5=await apiRequest('/api/v1/profiles/auth-config');return _0x4c3fc5['auth_config'];}catch(_0x85349d){return _0x85349d instanceof ApiError&&_0x85349d['status']!==0x194&&console[_0x34029c(0x14a)](_0x34029c(0x12d)+_0x85349d['message']),null;}}async function createTunnelSession(_0x2393b2){const _0x37b955=_0x4e1927,_0x11f3b8={'quSwz':function(_0x35a6e9,_0x1e6ffa,_0x546671){return _0x35a6e9(_0x1e6ffa,_0x546671);},'lwkRB':'/api/v1/tunnel/sessions','hJGtW':'POST'};return await _0x11f3b8['quSwz'](apiRequest,_0x11f3b8['lwkRB'],{'method':_0x11f3b8[_0x37b955(0x11a)],'body':JSON[_0x37b955(0xff)]({'targetUrl':_0x2393b2,'mode':_0x37b955(0x1aa)})});}async function deleteTunnelSession(_0x4881b4){await apiRequest('/api/v1/tunnel/sessions/'+_0x4881b4,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x27ec45,_0x1a301a,_0x18b58c){const _0x5b5d5d=_0x4e1927,_0xe00e16={'uOjLP':function(_0x2b9ac9,_0x83adf8){return _0x2b9ac9+_0x83adf8;},'euznm':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','scpnz':function(_0x7aa4cc,_0x188621,_0x386a42){return _0x7aa4cc(_0x188621,_0x386a42);},'qJsAM':function(_0x37a9a6,_0xd78f1f,_0x5d43){return _0x37a9a6(_0xd78f1f,_0x5d43);},'PnFyW':'key','MqHyJ':function(_0x1fd6b4,_0x5ef4c8){return _0x1fd6b4(_0x5ef4c8);},'iJjai':function(_0x13a22d,_0x4f41d4){return _0x13a22d+_0x4f41d4;},'mmwNc':function(_0x175d96,_0x3d07ba){return _0x175d96+_0x3d07ba;},'oMtjN':function(_0x2fa277,_0x5531af){return _0x2fa277+_0x5531af;},'xTzgV':function(_0x19f111,_0x30a784){return _0x19f111+_0x30a784;}};if(_0x18b58c){if(!_0x27ec45?.['environments']?.[_0x18b58c]){const _0x49859e=Object['keys'](_0x27ec45?.['environments']??{});throw new Error(_0xe00e16['uOjLP'](_0xe00e16[_0x5b5d5d(0x10b)](_0x5b5d5d(0x13b)+_0x18b58c+_0x5b5d5d(0x15c),_0x49859e[_0x5b5d5d(0x179)]?'\x20Available:\x20'+_0x49859e[_0x5b5d5d(0x143)](',\x20')+'.':_0xe00e16[_0x5b5d5d(0x17b)]),_0x5b5d5d(0x136)));}return _0x18b58c;}if(!_0x27ec45)return null;if(_0x1a301a){const _0x1d8215=_0xe00e16['scpnz'](matchAuthEnvironmentExact,_0x1a301a,_0x27ec45);if(_0x1d8215)return _0x1d8215;const _0x4e5224=_0xe00e16['qJsAM'](matchAuthEnvironmentByHost,_0x1a301a,_0x27ec45);if(_0x4e5224&&_0xe00e16['PnFyW']in _0x4e5224)return console[_0x5b5d5d(0x161)]('\x20\x20Auth\x20env\x20\x22'+_0x4e5224['key']+_0x5b5d5d(0x172)+_0x1a301a+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x4e5224['key'];if(_0x4e5224&&_0x5b5d5d(0x13a)in _0x4e5224)throw new Error(_0x5b5d5d(0x168)+_0x4e5224['ambiguous'][_0x5b5d5d(0x143)](',\x20')+_0x5b5d5d(0x164));if(_0xe00e16[_0x5b5d5d(0x196)](needsTunnel,_0x1a301a))throw new Error(_0xe00e16[_0x5b5d5d(0x15b)](_0xe00e16[_0x5b5d5d(0x15e)](_0xe00e16[_0x5b5d5d(0x15b)](_0xe00e16['oMtjN'](_0x5b5d5d(0x118)+_0x1a301a+'\x22.\x0a',_0x5b5d5d(0x102)),'\x20\x20Options:\x0a'),'\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a'),'\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x1a301a[_0x5b5d5d(0x163)](/\/+$/,'')+_0x5b5d5d(0x180))+(_0x5b5d5d(0x125)+_0x1a301a+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x27ec45['defaultEnvironmentKey'])return _0x27ec45[_0x5b5d5d(0x165)];const _0x2902d3=Object[_0x5b5d5d(0x135)](_0x27ec45['environments']??{});if(_0x2902d3['length']===0x1)return _0x2902d3[0x0];if(_0x2902d3['length']===0x0)return null;throw new Error(_0xe00e16['xTzgV']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x2902d3['join'](',\x20')+_0x5b5d5d(0x1a3),'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>`.'));}export function adHocProfileName(_0x56137a,_0x2ad752,_0x4f3208){const _0x4185b6={'pYQnZ':function(_0x3c49d0,_0x5abda6){return _0x3c49d0===_0x5abda6;}};if(!_0x2ad752||_0x4185b6['pYQnZ'](_0x2ad752,_0x4f3208))return _0x56137a;return _0x56137a+':'+_0x2ad752;}export async function resolveAdHocProfile(_0x19108a={},_0x2564d4=process[_0x4e1927(0x156)]){const _0x25ce99=_0x4e1927,_0x1aeca1={'HQuqG':function(_0xcef6cf){return _0xcef6cf();},'NmcvO':function(_0x1ad65e,_0x239774,_0x1b7214,_0x572934){return _0x1ad65e(_0x239774,_0x1b7214,_0x572934);},'LoGtl':function(_0x179402,_0x591f46){return _0x179402&&_0x591f46;},'ytPkp':function(_0x2a1c0a,_0x451ec4){return _0x2a1c0a!==_0x451ec4;},'FmOpC':_0x25ce99(0x12b),'zbcCQ':function(_0x327152,_0x2b07a3){return _0x327152(_0x2b07a3);},'TtuNh':function(_0x4d0e83,_0x3640ea,_0x332cee,_0x50e543){return _0x4d0e83(_0x3640ea,_0x332cee,_0x50e543);},'eUitD':function(_0x3a882c,_0x5b4000){return _0x3a882c??_0x5b4000;}},_0x307d6d=_0x2564d4[_0x25ce99(0x171)];if(!_0x307d6d)return null;const _0x5902f0=await _0x1aeca1[_0x25ce99(0x113)](fetchAuthConfig),_0x5e7a07=pickAdHocEnvKey(_0x5902f0,_0x19108a[_0x25ce99(0x122)],_0x19108a[_0x25ce99(0x153)]);let _0x5abb6f=_0x1aeca1['NmcvO'](adHocProfileName,_0x307d6d,_0x5e7a07,_0x5902f0?.['defaultEnvironmentKey']),_0x19bdfa=await fetchCloudProfile(_0x5abb6f);_0x1aeca1[_0x25ce99(0x176)](_0x19bdfa,_0x5e7a07)&&_0x1aeca1[_0x25ce99(0x13e)](_0x19bdfa[_0x25ce99(0x16c)],_0x5e7a07)&&(console['log']('\x20\x20Cloud\x20profile\x20\x22'+_0x5abb6f+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x19bdfa['environmentKey']??_0x1aeca1['FmOpC'])+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x5e7a07+'\x22;\x20using\x20\x22'+_0x307d6d+':'+_0x5e7a07+'\x22\x20instead.'),_0x5abb6f=_0x307d6d+':'+_0x5e7a07,_0x19bdfa=await _0x1aeca1['zbcCQ'](fetchCloudProfile,_0x5abb6f));if(_0x19bdfa)return{'name':_0x19bdfa['name'],'profile':_0x19bdfa};const _0x5cffef=_0x2564d4[_0x25ce99(0x198)],_0x4fa7f3=await _0x1aeca1['TtuNh'](createCloudProfile,_0x5abb6f,_0x1aeca1['eUitD'](_0x5e7a07,undefined),{'username':_0x307d6d,'password':_0x5cffef});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x4fa7f3[_0x25ce99(0x19b)]+_0x25ce99(0x124)+_0x307d6d+(_0x5e7a07?'\x20(auth\x20env:\x20'+_0x5e7a07+')':'')),{'name':_0x4fa7f3['name'],'profile':_0x4fa7f3};}export async function writeSessionToLocalCache(_0xfe0919,_0x5aca9e,_0x26f191,_0x10f4dd,_0x26c8a6,_0x32f5c2,_0x351963){const _0x32588f=_0x4e1927,_0x4c7976={'LIXSe':function(_0x19e9b9,_0x12c390,_0x1ae3cb){return _0x19e9b9(_0x12c390,_0x1ae3cb);},'fpWEj':'auth','nWDwT':function(_0x4ab3a9,_0x161200){return _0x4ab3a9>_0x161200;},'KoQkb':function(_0x440d1f,_0xd31f49,_0x295657){return _0x440d1f(_0xd31f49,_0x295657);}},_0x2aef62=sessionCacheHash({'orgId':_0x5aca9e,'profileName':_0xfe0919,'effectiveBaseUrl':_0x26f191,'setupHeaders':_0x10f4dd,'invalidateOn':_0x351963?.[_0x32588f(0x149)],'userAgent':_0x351963?.['userAgent'],'clientIp':_0x351963?.[_0x32588f(0x18e)]}),_0x38be82=_0x4c7976[_0x32588f(0x112)](getSessionCachePath,_0x2aef62,_0xfe0919),_0x285b0e=_0x4c7976['LIXSe'](join,getRangerHomeDir(),_0x4c7976[_0x32588f(0x1a4)]);!existsSync(_0x285b0e)&&await _0x4c7976['LIXSe'](mkdir,_0x285b0e,{'recursive':!![]});const _0x5734a2={..._0x26c8a6};_0x32f5c2&&_0x4c7976['nWDwT'](_0x32f5c2['length'],0x0)&&Array[_0x32588f(0x137)](_0x5734a2[_0x32588f(0x114)])&&(_0x5734a2[_0x32588f(0x114)]=duplicateCookiesForDomains(_0x5734a2[_0x32588f(0x114)],_0x32f5c2));const _0x26013c={'cached_at':new Date()[_0x32588f(0x18f)](),'session_state':_0x5734a2};await writeFile(_0x38be82,JSON[_0x32588f(0xff)](_0x26013c,null,0x2));const _0xb4528=getStorageStatePath(_0x38be82);return await _0x4c7976['KoQkb'](writeFile,_0xb4528,JSON['stringify'](_0x5734a2,null,0x2)),_0xb4528;}function _0x17ab(){const _0x471466=['feeOy','close','FEbRD','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','storageStatePath','hJGtW','dhjpC','local_ws_error','45fftHCl','ApiError','ZJHTU','tunnel_bridge_event','password','targetUrl','aSbQG','\x22\x20for\x20','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','cli:manual-login','3|2|4|0|1','BqBdA','yFBuU','none','loginInstructions','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','activeLocalConnections','aaOty','sessionId','CHKtT','\x22\x20not\x20found.','tunnel_login_setup','baseUrl','keys','\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)','isArray','headers','FsmEz','ambiguous','Auth\x20environment\x20\x22','\x20\x20Server-side\x20login\x20error:\x20','2217918GYACXR','ytPkp','success','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','newPage','join','No\x20saved\x20session\x20for\x20\x22','hMWpB','telemetry','Browser\x20login\x20timed\x20out\x20after\x20','string','invalidateOn','error','\x22,\x20cached\x20locally','VyHXn','type','\x20\x20Login\x20successful.\x20Session\x20cached.','978280TkAukD','jvVZE','27688OIQSBV','trim','envKey','\x22,\x20refreshing\x20session...','utf-8','env','EYvuR','PUT','yslpe','Tpeju','iJjai','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','wsEndpoint','mmwNc','profiles','144zVSdbJ','log','\x20\x20Cached\x20session\x20for\x20\x22','replace',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','defaultEnvironmentKey','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','session_state','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','confirm','1220587RMichb','environmentKey','setupHeaders','forceLogin','\x20\x20No\x20live\x20session\x20for\x20\x22','zVNWN','RANGER_TEST_USERNAME','\x22\x20matched\x20by\x20host\x20for\x20','Cloud\x20profile\x20\x22','/login','trackPhaseEnd','LoGtl','domains','pwEndpoint','length','test_output','euznm','XboUe','\x20failed\x20(','kjvTF','/api/v1/profiles/','\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a','RzmoQ','reason','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','POST','split','pendingLocalConnections','tunnel_login_request','rUGkb','status','DEjyA','sessionCheckPath','trackPhaseStart','username','clientIp','toISOString','zcYHg','/session','elapsedMs','not_configured','gwGDC','json','MqHyJ','trackPhaseError','RANGER_TEST_PASSWORD','origin','HoiFI','name','Cfmbd','103398mdarzF','tunnel','map','\x22\x20failed\x20validation\x20—\x20refreshing...','save','zajXu',').\x20','fpWEj','organizationId','code','2GpBOPs','NEupp','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','agent','statusText','detail','fZkGT','):\x20','eSQvX','LuTad','browserOptions','SCQAV','77PdyVqs','UoITO','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','PpuZL','stringify','prompt','settings','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','message','2410573qKvoky','assertedEnv','WEhLN','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','943416XSzaAQ','force','\x20\x20•\x20capture\x20one\x20(a\x20browser\x20opens):\x20ranger\x20profile\x20add\x20','uOjLP','parse','you\x27re\x20now\x20at\x20\x22','API\x20request\x20','catch','mZPSt','host','LIXSe','HQuqG','cookies'];_0x17ab=function(){return _0x471466;};return _0x17ab();}export async function checkLocalCache(_0x50fcd7,_0x2c226e,_0x9f5b3,_0x2cf22e,_0x54bd43){const _0x48cd99=_0x4e1927,_0x4c3e96={'zajXu':function(_0x16eff5,_0x4066c0){return _0x16eff5(_0x4066c0);},'DKkQY':function(_0x490527,_0x3faa30){return _0x490527(_0x3faa30);},'aSbQG':function(_0x3aab84,_0x5b6fd8){return _0x3aab84(_0x5b6fd8);},'SVJsT':_0x48cd99(0x155)},_0xc7c3e1=_0x4c3e96[_0x48cd99(0x1a2)](sessionCacheHash,{'orgId':_0x2c226e,'profileName':_0x50fcd7,'effectiveBaseUrl':_0x9f5b3,'setupHeaders':_0x2cf22e,'invalidateOn':_0x54bd43?.[_0x48cd99(0x149)],'userAgent':_0x54bd43?.['userAgent'],'clientIp':_0x54bd43?.[_0x48cd99(0x18e)]}),_0x3bc19e=getSessionCachePath(_0xc7c3e1,_0x50fcd7),_0x57156e=_0x4c3e96['DKkQY'](getStorageStatePath,_0x3bc19e);if(!existsSync(_0x3bc19e)||!_0x4c3e96[_0x48cd99(0x123)](existsSync,_0x57156e))return null;try{const _0x4f1b9a=await readFile(_0x3bc19e,_0x4c3e96['SVJsT']);return JSON[_0x48cd99(0x10c)](_0x4f1b9a),{'storageStatePath':_0x57156e};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x59a6fc,_0x527087){const _0x1927bd=_0x4e1927,_0x582bc3={'UqBqP':function(_0x24c9bf,_0x429ce9){return _0x24c9bf===_0x429ce9;},'fKUdG':function(_0x3bd154,_0x363dda){return _0x3bd154+_0x363dda;},'dhjpC':function(_0x2c94a0,_0x334bcb){return _0x2c94a0+_0x334bcb;}};if(!_0x527087||!_0x527087['domains']?.['length'])return;let _0x2916e6;try{_0x2916e6=new URL(_0x59a6fc);}catch{return;}const _0x1ae75d=[];for(const _0x16f5e0 of _0x527087[_0x1927bd(0x177)]){try{_0x1ae75d['push']({'raw':_0x16f5e0,'url':new URL(_0x16f5e0)});}catch{}}if(_0x582bc3['UqBqP'](_0x1ae75d['length'],0x0))return;if(_0x1ae75d['some'](_0x3a415e=>_0x3a415e['url']['origin']===_0x2916e6[_0x1927bd(0x199)]))return;const _0x189197=_0x1ae75d[_0x1927bd(0x19f)](_0x49b73f=>'\x22'+_0x49b73f['raw']+'\x22')[_0x1927bd(0x143)](',\x20');console[_0x1927bd(0x161)](_0x582bc3['fKUdG'](_0x582bc3[_0x1927bd(0x11b)](_0x1927bd(0x140)+_0x189197+';\x20',_0x1927bd(0x10d)+_0x59a6fc+_0x1927bd(0x183)),_0x1927bd(0x166)));}export async function serverSideLogin(_0x511cd7,_0x4de2df){const _0x1a166a=_0x4e1927,_0x3d6501={'MlRoe':_0x1a166a(0x184),'Knbkz':function(_0x3ac812,_0x14e609){return _0x3ac812===_0x14e609;},'JUfqV':'not_configured'},_0x575747=process['env']['RANGER_TEST_USERNAME'],_0x3c51c5=process['env'][_0x1a166a(0x198)],_0x312dd3={};if(_0x575747)_0x312dd3['username']=_0x575747;if(_0x3c51c5)_0x312dd3[_0x1a166a(0x121)]=_0x3c51c5;if(_0x4de2df?.[_0x1a166a(0x109)])_0x312dd3[_0x1a166a(0x109)]=!![];if(_0x4de2df?.['targetUrl'])_0x312dd3['target_url']=_0x4de2df[_0x1a166a(0x122)];if(_0x4de2df?.[_0x1a166a(0x156)])_0x312dd3[_0x1a166a(0x156)]=_0x4de2df['env'];_0x4de2df?.[_0x1a166a(0x19e)]&&(_0x312dd3['tunnel_session_id']=_0x4de2df[_0x1a166a(0x19e)][_0x1a166a(0x130)],_0x312dd3['pw_endpoint']=_0x4de2df[_0x1a166a(0x19e)][_0x1a166a(0x178)]);try{return await apiRequest(_0x1a166a(0x17f)+encodeURIComponent(_0x511cd7)+_0x1a166a(0x174),{'method':_0x3d6501['MlRoe'],'body':JSON[_0x1a166a(0xff)](_0x312dd3)});}catch(_0x660db4){if(_0x660db4 instanceof ApiError&&_0x660db4[_0x1a166a(0x189)]===0x190&&_0x3d6501['Knbkz'](_0x660db4['code'],_0x1a166a(0x193)))return{'status':_0x3d6501['JUfqV'],'error':_0x660db4[_0x1a166a(0x1ac)]};throw _0x660db4;}}async function serverSideLoginWithOptionalTunnel(_0x252041,_0x2e4740,_0x1cbe60={}){const _0x70542d=_0x4e1927,_0x4263a1={'EYvuR':_0x70542d(0x187),'ZJHTU':function(_0x8573a5,_0x2d612b){return _0x8573a5(_0x2d612b);},'rUGkb':function(_0x47a61f,_0x50c414,_0x1daa2c){return _0x47a61f(_0x50c414,_0x1daa2c);},'UoITO':function(_0x208a55,_0xe30990){return _0x208a55===_0xe30990;},'DEjyA':_0x70542d(0x133),'aHfnM':'\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','ryWSp':function(_0x5bbcf3,_0x5df892){return _0x5bbcf3(_0x5df892);},'XHFxL':function(_0x10a5bb,_0x872c0b,_0x526726){return _0x10a5bb(_0x872c0b,_0x526726);},'QlOYG':function(_0x2c94ae,_0x1044e8){return _0x2c94ae||_0x1044e8;},'VyHXn':'3|0|2|4|1','Rdydu':'tunnel_login_cleanup'};if(!_0x4263a1['ZJHTU'](needsTunnel,_0x2e4740))return await _0x4263a1[_0x70542d(0x188)](serverSideLogin,_0x252041,{'force':_0x1cbe60['force'],'env':_0x1cbe60['env']});let _0x2be7d0=null,_0x6c6b09=null,_0x5a7fba=null,_0x522221=null,_0x453c28=![];const _0x4580cc=process['env']['RANGER_TUNNEL_LOGIN_HEADED']?.['toLowerCase'](),_0x12fef2=_0x4263a1[_0x70542d(0xfb)](_0x4580cc,'1')||_0x4580cc==='true',_0x3aaa90={'profileName':_0x252041,'targetUrlHost':_0x4263a1[_0x70542d(0x11f)](targetHostForTelemetry,_0x2e4740),'tunnelRequired':!![],'forceLogin':_0x4263a1['ZJHTU'](Boolean,_0x1cbe60['force']),'localBrowserServerHeaded':_0x12fef2};try{_0x1cbe60[_0x70542d(0x146)]?.['trackPhaseStart'](_0x4263a1[_0x70542d(0x18a)],_0x3aaa90);_0x12fef2&&console[_0x70542d(0x161)](_0x4263a1['aHfnM']);_0x2be7d0=await _0x4263a1['ryWSp'](launchBrowserServer,{'headless':!_0x12fef2}),_0x6c6b09=await _0x4263a1['ZJHTU'](createTunnelSession,_0x2e4740);const _0x2f6a56=await requireToken();_0x5a7fba=await _0x4263a1[_0x70542d(0x11f)](createTunnelBridge,{'localWsUrl':_0x2be7d0[_0x70542d(0x15d)],'tunnelServerUrl':_0x6c6b09['tunnelUrl'],'sessionId':_0x6c6b09['sessionId'],'apiKey':_0x2f6a56,'onError':_0x4cae92=>{_0x522221=_0x4cae92;},'onClose':()=>{_0x522221??=new Error('Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20'+_0x252041);},'onEvent':_0x3605dd=>trackBridgeEvent(_0x1cbe60[_0x70542d(0x146)],_0x3605dd)}),_0x1cbe60['telemetry']?.[_0x70542d(0x175)]('tunnel_login_setup',{..._0x3aaa90,'tunnelSessionId':_0x6c6b09['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x12fef2}),_0x453c28=!![];try{return _0x1cbe60['telemetry']?.[_0x70542d(0x18c)](_0x4263a1['EYvuR'],{..._0x3aaa90,'tunnelSessionId':_0x6c6b09['sessionId']}),await _0x4263a1['XHFxL'](serverSideLogin,_0x252041,{'force':_0x1cbe60['force'],'targetUrl':_0x2e4740,'env':_0x1cbe60[_0x70542d(0x156)],'tunnel':{'sessionId':_0x6c6b09[_0x70542d(0x130)],'pwEndpoint':_0x6c6b09[_0x70542d(0x178)]}})['then'](_0x2dfa94=>{const _0x4ed046=_0x70542d;return _0x1cbe60[_0x4ed046(0x146)]?.['trackPhaseEnd'](_0x4263a1['EYvuR'],{..._0x3aaa90,'tunnelSessionId':_0x6c6b09?.[_0x4ed046(0x130)],'loginStatus':_0x2dfa94[_0x4ed046(0x189)],'hasSessionState':_0x4263a1['ZJHTU'](Boolean,_0x2dfa94['session_state']),'hasTestOutput':Boolean(_0x2dfa94['test_output']),'bridgeError':errorMessageForTelemetry(_0x522221)}),_0x2dfa94;});}catch(_0x27ef48){await _0x1cbe60['telemetry']?.[_0x70542d(0x197)](_0x4263a1[_0x70542d(0x157)],_0x522221??_0x27ef48,{..._0x3aaa90,'tunnelSessionId':_0x6c6b09[_0x70542d(0x130)],'bridgeError':_0x4263a1['ZJHTU'](errorMessageForTelemetry,_0x522221)});throw _0x522221??_0x27ef48;}}catch(_0x4de90f){!_0x453c28&&await _0x1cbe60['telemetry']?.[_0x70542d(0x197)](_0x4263a1['DEjyA'],_0x4de90f,{..._0x3aaa90,'tunnelSessionId':_0x6c6b09?.[_0x70542d(0x130)]});throw _0x4de90f;}finally{if(_0x4263a1['QlOYG'](_0x6c6b09,_0x2be7d0)||_0x5a7fba){const _0x2bf0d8=_0x4263a1[_0x70542d(0x14c)][_0x70542d(0x185)]('|');let _0x2c1e41=0x0;while(!![]){switch(_0x2bf0d8[_0x2c1e41++]){case'0':_0x5a7fba?.[_0x70542d(0x116)]();continue;case'1':_0x1cbe60[_0x70542d(0x146)]?.['trackPhaseEnd'](_0x4263a1['Rdydu'],{..._0x3aaa90,'tunnelSessionId':_0x6c6b09?.['sessionId']});continue;case'2':_0x2be7d0&&await _0x2be7d0[_0x70542d(0x116)]()[_0x70542d(0x10f)](()=>{});continue;case'3':_0x1cbe60[_0x70542d(0x146)]?.[_0x70542d(0x18c)]('tunnel_login_cleanup',{..._0x3aaa90,'tunnelSessionId':_0x6c6b09?.[_0x70542d(0x130)]});continue;case'4':_0x6c6b09&&await deleteTunnelSession(_0x6c6b09[_0x70542d(0x130)])['catch'](()=>{});continue;}break;}}}}export async function manualBrowserLogin(_0x2dacff,_0x118ee2,_0x21b2e4={}){const _0x33dfd0=_0x4e1927,_0x9f0ecc={'fZkGT':function(_0x1afe0f,_0x486242){return _0x1afe0f/_0x486242;},'scfcH':function(_0x2e2654,_0x5bae34){return _0x2e2654+_0x5bae34;},'mZPSt':_0x33dfd0(0x169),'cbgmI':'about:blank','ryiEx':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','aUXsX':_0x33dfd0(0xfc),'KSWAq':function(_0x5513eb,_0x57901f){return _0x5513eb(_0x57901f);},'OqaoZ':function(_0x159244,_0x3f61a5){return _0x159244&&_0x3f61a5;},'feeOy':_0x33dfd0(0x184),'NEupp':_0x33dfd0(0x127)};if(!isInteractive())throw new Error(_0x9f0ecc['scfcH']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x2dacff['name']+'\x22.\x0a'+'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20',_0x9f0ecc[_0x33dfd0(0x110)]));const _0x5c64b5=_0x118ee2&&_0x118ee2['domains']['length']>0x0?_0x118ee2['domains'][0x0]:_0x9f0ecc['cbgmI'];console['log'](_0x9f0ecc['ryiEx']),console[_0x33dfd0(0x161)](_0x9f0ecc['aUXsX']),await new Promise(_0x5d38cc=>setTimeout(_0x5d38cc,0x7d0));const _0x43486d=await chromium['launch']({'headless':![]});let _0x4716c=null;try{const _0x51f60d={'ignoreHTTPSErrors':!![]};_0x118ee2?.[_0x33dfd0(0x16d)]&&(_0x51f60d['extraHTTPHeaders']=_0x118ee2['setupHeaders']);const _0x38ec4c=await _0x43486d['newContext'](_0x51f60d);await _0x9f0ecc['KSWAq'](addProfileSetupBanner,_0x38ec4c);const _0x15b175=await _0x38ec4c[_0x33dfd0(0x142)]();await _0x15b175['goto'](_0x5c64b5);let _0x11a712=![];await new Promise(_0x46b0a5=>{const _0x5340c1=_0x33dfd0,_0x2539d3={'RlOZJ':function(_0x3665f,_0x12f8b1){const _0x34b184=_0x65b3;return _0x9f0ecc[_0x34b184(0x1ad)](_0x3665f,_0x12f8b1);},'HoiFI':function(_0x34c8fa){return _0x34c8fa();}},_0x4fe872=setTimeout(()=>{const _0x3307dc=_0x65b3;_0x11a712=!![],console[_0x3307dc(0x14a)](_0x3307dc(0x147)+_0x2539d3['RlOZJ'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x3307dc(0x141)),_0x2539d3[_0x3307dc(0x19a)](_0x46b0a5);},MANUAL_LOGIN_TIMEOUT_MS);_0x15b175['on'](_0x5340c1(0x116),async()=>{clearTimeout(_0x4fe872);try{const _0xccdf5e=await _0x38ec4c['storageState']();_0x4716c=_0xccdf5e;}catch{}_0x46b0a5();});});if(_0x9f0ecc['OqaoZ'](_0x11a712,!_0x4716c))throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x43486d[_0x33dfd0(0x116)]()['catch'](()=>{});}if(!_0x4716c)throw new Error('Browser\x20closed\x20before\x20authentication\x20was\x20saved.');return _0x21b2e4['persistSessionState']!==![]&&await apiRequest(_0x33dfd0(0x17f)+encodeURIComponent(_0x2dacff[_0x33dfd0(0x19b)])+'/session',{'method':_0x9f0ecc[_0x33dfd0(0x115)],'body':JSON[_0x33dfd0(0xff)]({'session_state':_0x4716c,'updated_by':_0x9f0ecc[_0x33dfd0(0x1a8)]})}),{'sessionState':_0x4716c};}export async function promptSaveCredentials(_0x1d1f00){const _0x4f71ff=_0x4e1927,_0x16b98a={'UrkBl':function(_0x1090b4,_0x87d621){return _0x1090b4||_0x87d621;},'lcaKG':_0x4f71ff(0x16a),'PpuZL':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','qomsq':function(_0x127f87,_0x105438){return _0x127f87(_0x105438);}},_0x59fa84=process['env']['RANGER_TEST_USERNAME'],_0x481b56=process[_0x4f71ff(0x156)]['RANGER_TEST_PASSWORD'];if(_0x16b98a['UrkBl'](!_0x59fa84,!_0x481b56))return;if(!isInteractive())return;const {save:_0x39b258}=await _0x2b18b3[_0x4f71ff(0x100)]([{'type':_0x16b98a['lcaKG'],'name':_0x4f71ff(0x1a1),'message':_0x16b98a[_0x4f71ff(0xfe)],'default':![]}]);if(!_0x39b258)return;await apiRequest(_0x4f71ff(0x17f)+_0x16b98a['qomsq'](encodeURIComponent,_0x1d1f00),{'method':'PUT','body':JSON[_0x4f71ff(0xff)]({'username':_0x59fa84,'password':_0x481b56})}),console['log']('\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.');}export async function resolveCloudProfileSession(_0xa8ea06,_0x4e8713={}){const _0x377a85=_0x4e1927,_0xb934a4={'SCQAV':function(_0x113876){return _0x113876();},'yslpe':function(_0x5262ea,_0x2aecaf){return _0x5262ea===_0x2aecaf;},'CHKtT':'string','XboUe':function(_0x4fddb6,_0x16af3e){return _0x4fddb6||_0x16af3e;},'WEhLN':function(_0x4b8cef,_0x4055db){return _0x4b8cef(_0x4055db);},'FyKKj':function(_0x5bb3ed,_0x58cdaf){return _0x5bb3ed(_0x58cdaf);},'LuTad':function(_0x1e013f,_0x16dff0){return _0x1e013f>_0x16dff0;},'FEbRD':function(_0x3a71cd,_0x2bae09,_0x6d73c1,_0x4dd589,_0x416d14,_0x1e7da0){return _0x3a71cd(_0x2bae09,_0x6d73c1,_0x4dd589,_0x416d14,_0x1e7da0);},'TAjMe':function(_0x4ca5c2,_0x413bf5){return _0x4ca5c2&&_0x413bf5;},'YNBZt':function(_0x51b38e,_0x31df23,_0x4ac788){return _0x51b38e(_0x31df23,_0x4ac788);},'FsmEz':function(_0x1e54da,_0x5ab6e8,_0x3c9ed9,_0x562ca3,_0x122d5d,_0x1a60d0,_0x5b50da,_0x38e12c){return _0x1e54da(_0x5ab6e8,_0x3c9ed9,_0x562ca3,_0x122d5d,_0x1a60d0,_0x5b50da,_0x38e12c);},'cdeVD':function(_0x11bd50,_0x18cb8f,_0x5bbad6,_0x1f938b,_0x298b2d){return _0x11bd50(_0x18cb8f,_0x5bbad6,_0x1f938b,_0x298b2d);},'tGsZc':function(_0x179f70,_0x269af0){return _0x179f70(_0x269af0);},'Tpeju':function(_0x35d4a2,_0x407895,_0x5ed9a2,_0x169956){return _0x35d4a2(_0x407895,_0x5ed9a2,_0x169956);},'jvVZE':_0x377a85(0x193),'hroMW':function(_0x5f005a,_0x8b2085,_0x105644,_0x9121ab,_0xb1e4d2,_0x1f349b,_0x1aec88,_0x512d16){return _0x5f005a(_0x8b2085,_0x105644,_0x9121ab,_0xb1e4d2,_0x1f349b,_0x1aec88,_0x512d16);},'hMWpB':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','UzaEF':_0x377a85(0x126),'gwGDC':function(_0x37ad40,_0x100af5){return _0x37ad40&&_0x100af5;},'YlrGf':function(_0x4d4c3d,_0x22b901){return _0x4d4c3d+_0x22b901;}},_0x33cc8d=_0xa8ea06['settings']??{},_0x5c518e=await _0xb934a4[_0x377a85(0xf9)](fetchAuthConfig),_0x71d6e1=_0x5c518e?resolveAuthEnvironmentLocally(_0x5c518e,_0x4e8713['assertedEnv']??_0xa8ea06['environmentKey']):null,_0x2cfa8a=_0xb934a4[_0x377a85(0x159)](typeof _0x71d6e1?.['loginInstructions'],_0xb934a4[_0x377a85(0x131)])&&_0x71d6e1['loginInstructions'][_0x377a85(0x152)]()?_0x71d6e1['loginInstructions']:undefined,_0x30b076=typeof _0x33cc8d[_0x377a85(0x12c)]==='string'&&_0x33cc8d['loginInstructions']['trim']()?_0x33cc8d[_0x377a85(0x12c)]:undefined,_0x2a973a=_0xb934a4[_0x377a85(0x17c)](_0x30b076,!_0x2cfa8a)?_0x33cc8d:{..._0x33cc8d,'loginInstructions':_0x2cfa8a},_0x2a44ae=_0xb934a4[_0x377a85(0x106)](Boolean,_0x2a973a['loginInstructions']?.[_0x377a85(0x152)]()),_0x5930f8=_0xb934a4['FyKKj'](Boolean,_0x33cc8d['forceLogin']||_0x71d6e1?.[_0x377a85(0x16e)]),_0x537051=_0x71d6e1?.['domains'],_0x58f8ae=_0x33cc8d[_0x377a85(0x16d)],_0x43b2b8=_0x58f8ae??_0x71d6e1?.[_0x377a85(0x16d)],_0x14ba5a=_0x4e8713['effectiveBaseUrl']??_0x33cc8d[_0x377a85(0x134)]??(_0x537051&&_0xb934a4[_0x377a85(0x1b0)](_0x537051['length'],0x0)?_0x537051[0x0]:''),_0x51be82=_0x14ba5a?_0xb934a4['FyKKj'](needsTunnel,_0x14ba5a):![],_0x52339={'invalidateOn':_0x71d6e1?.['invalidateOn'],'userAgent':_0x71d6e1?.[_0x377a85(0x1b1)]?.['userAgent']??_0x33cc8d['userAgent']};_0x5930f8&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0xa8ea06['name']+_0x377a85(0x154));if(!_0x5930f8){const _0x20c1b3=await _0xb934a4[_0x377a85(0x117)](checkLocalCache,_0xa8ea06['name'],_0xa8ea06[_0x377a85(0x1a5)],_0x14ba5a,_0x43b2b8,_0x52339);if(_0x20c1b3){if(_0xb934a4['TAjMe'](_0x14ba5a,!_0x51be82)){const _0xe09ede=await isCachedSessionLive(_0x20c1b3[_0x377a85(0x119)],_0x14ba5a,{'sessionCheckPath':_0x71d6e1?.[_0x377a85(0x18b)],'setupHeaders':_0x43b2b8},{'launchBrowser':launchRealBrowser});if(_0xe09ede)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0xa8ea06['name']+'\x22'),{'authPath':_0x20c1b3[_0x377a85(0x119)],'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};console['log'](_0x377a85(0x162)+_0xa8ea06[_0x377a85(0x19b)]+_0x377a85(0x1a0)),_0xb934a4['YNBZt'](emitSessionValidationHint,_0x14ba5a,_0x71d6e1);}else return _0x51be82&&console['log']('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0xa8ea06[_0x377a85(0x19b)]+'\x22'),{'authPath':_0x20c1b3[_0x377a85(0x119)],'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};}}if(!_0x5930f8&&_0xa8ea06['sessionState']){const _0x24f612=await _0xb934a4[_0x377a85(0x139)](writeSessionToLocalCache,_0xa8ea06[_0x377a85(0x19b)],_0xa8ea06['organizationId'],_0x14ba5a,_0x43b2b8,_0xa8ea06['sessionState'],_0x537051,_0x52339);if(_0x14ba5a){const _0x45b422=await _0xb934a4['cdeVD'](isCachedSessionLive,_0x24f612,_0x14ba5a,{'sessionCheckPath':_0x71d6e1?.[_0x377a85(0x18b)],'setupHeaders':_0x43b2b8},{'launchBrowser':launchRealBrowser});if(_0x45b422)return console['log']('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0xa8ea06[_0x377a85(0x19b)]+_0x377a85(0x14b)),{'authPath':_0x24f612,'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};console[_0x377a85(0x161)]('\x20\x20Cloud\x20session\x20for\x20\x22'+_0xa8ea06['name']+_0x377a85(0xfd)),emitSessionValidationHint(_0x14ba5a,_0x71d6e1);}else return{'authPath':_0x24f612,'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};}if(_0x2a44ae)return console['log'](_0x377a85(0x16f)+_0xa8ea06[_0x377a85(0x19b)]+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0xa8ea06['name']+'\x22,\x20attempting\x20login...');const _0x60e41=Boolean(process['env']['RANGER_TEST_USERNAME'])&&Boolean(process['env']['RANGER_TEST_PASSWORD']),_0x291acd=Boolean(_0xa8ea06[_0x377a85(0x18d)]),_0x255677=_0xb934a4['tGsZc'](Boolean,_0x4e8713['assertedEnv']),_0x5d35f5=_0x14ba5a?_0xb934a4['tGsZc'](isBareLocalhost,_0x14ba5a):![],_0xe7a340=(_0x60e41||_0x291acd)&&(!_0x5d35f5||_0x255677);if(_0xe7a340)try{const _0x4ae197=_0x14ba5a?await _0xb934a4[_0x377a85(0x15a)](serverSideLoginWithOptionalTunnel,_0xa8ea06['name'],_0x14ba5a,{'force':_0x5930f8,'telemetry':_0x4e8713[_0x377a85(0x146)],'env':_0x4e8713['assertedEnv']}):await serverSideLogin(_0xa8ea06[_0x377a85(0x19b)],{'force':_0x5930f8,'env':_0x4e8713[_0x377a85(0x105)]});if(_0xb934a4[_0x377a85(0x159)](_0x4ae197['status'],_0xb934a4[_0x377a85(0x150)]))console[_0x377a85(0x161)](_0x377a85(0x1a9));else{if(_0x4ae197[_0x377a85(0x189)]===_0x377a85(0x13f)&&_0x4ae197[_0x377a85(0x167)]){console[_0x377a85(0x161)](_0x377a85(0x14e));const _0xe1d90c=await _0xb934a4['hroMW'](writeSessionToLocalCache,_0xa8ea06[_0x377a85(0x19b)],_0xa8ea06['organizationId'],_0x14ba5a,_0x43b2b8,_0x4ae197['session_state'],_0x537051,_0x52339);return _0x60e41&&!_0x291acd&&await promptSaveCredentials(_0xa8ea06[_0x377a85(0x19b)]),{'authPath':_0xe1d90c,'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};}else _0x4ae197[_0x377a85(0x17a)]&&(console['log'](_0xb934a4[_0x377a85(0x145)]),console['log'](_0x4ae197['test_output'])),console['log'](_0x377a85(0x126));}}catch(_0x29072b){console['log'](_0x377a85(0x13c)+(_0x29072b instanceof Error?_0x29072b[_0x377a85(0x103)]:String(_0x29072b))),console[_0x377a85(0x161)](_0xb934a4['UzaEF']);}if(_0xb934a4[_0x377a85(0x194)](_0x5d35f5,!_0x255677)&&!isInteractive())throw new Error(_0xb934a4['YlrGf'](_0x377a85(0x144)+_0x14ba5a+'\x22\x20on\x20profile\x20\x22'+_0xa8ea06[_0x377a85(0x19b)]+'\x22,\x20and\x20cloud\x20sessions\x20don\x27t\x20apply\x20to\x20localhost.\x0a'+(_0x377a85(0x10a)+_0xa8ea06[_0x377a85(0x19b)]+'\x20--url\x20'+_0x14ba5a+'\x0a'),'\x20\x20•\x20or\x20pass\x20--env\x20<key>\x20to\x20run\x20an\x20automated\x20login\x20for\x20this\x20target.'));const _0x41e2b5=_0x71d6e1?{..._0x71d6e1,'domains':orderLoginDomains(_0x14ba5a,_0x71d6e1[_0x377a85(0x177)]),'setupHeaders':_0x43b2b8}:_0x14ba5a?{'key':_0xa8ea06['environmentKey']??'','domains':[_0x14ba5a],'setupHeaders':_0x43b2b8}:null,{sessionState:_0x5db135}=await manualBrowserLogin(_0xa8ea06,_0x41e2b5,{'persistSessionState':!_0x51be82}),_0x27c3a0=await writeSessionToLocalCache(_0xa8ea06['name'],_0xa8ea06['organizationId'],_0x14ba5a,_0x43b2b8,_0x5db135,_0x537051,_0x52339);return{'authPath':_0x27c3a0,'settings':_0x2a973a,'resolvedEnv':_0x71d6e1};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x45c919=_0x596b;(function(_0x72321c,_0xd0649e){const _0xf0b8fd=_0x596b,_0x3db11d=_0x72321c();while(!![]){try{const _0x1879ed=parseInt(_0xf0b8fd(0x12d))/0x1*(-parseInt(_0xf0b8fd(0x134))/0x2)+parseInt(_0xf0b8fd(0x12b))/0x3*(parseInt(_0xf0b8fd(0x127))/0x4)+-parseInt(_0xf0b8fd(0x139))/0x5*(parseInt(_0xf0b8fd(0x135))/0x6)+parseInt(_0xf0b8fd(0x118))/0x7*(parseInt(_0xf0b8fd(0x10f))/0x8)+parseInt(_0xf0b8fd(0x10b))/0x9*(parseInt(_0xf0b8fd(0x100))/0xa)+-parseInt(_0xf0b8fd(0x120))/0xb+parseInt(_0xf0b8fd(0x108))/0xc*(parseInt(_0xf0b8fd(0x129))/0xd);if(_0x1879ed===_0xd0649e)break;else _0x3db11d['push'](_0x3db11d['shift']());}catch(_0x562238){_0x3db11d['push'](_0x3db11d['shift']());}}}(_0x27b1,0x317b5));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x2ca4f2=process['env'],_0x230bc4={'stdin':process[_0x45c919(0x11a)],'stdout':process[_0x45c919(0x106)]}){const _0x1197e7=_0x45c919,_0x579bb1={'wKozh':function(_0x5a23be,_0x256dc8){return _0x5a23be(_0x256dc8);}};if(_0x2ca4f2['CI'])return![];return Boolean(_0x230bc4['stdin']['isTTY'])&&_0x579bb1['wKozh'](Boolean,_0x230bc4[_0x1197e7(0x106)][_0x1197e7(0x10e)]);}export const DEFAULT_INVALIDATE_ON=[];function _0x27b1(){const _0x2116b2=['wGviV','1333927SZLkwt','add','stdin','keys','replace','status','push','toString','3371313jBNppb','sessionCheckPath','MRuLT','test','VccTW','userAgent','setupHeaders','119484HHxpGh','baseUrl','351LAUpUc','SMbYg','9YkMrXJ','includes','52GoAwhT','.localhost','url','clientIp','qfnRx','gxyAe','DkCCD','3062ZKNzIZ','34308KdRpss','update','defaultEnvironmentKey','newPage','140iaXvQY','slice','jjNIR','.json','10LnWVmp','profileName','has','launchBrowser','goto','gPPeg','stdout','hostname','80724kEDXyI','port','127.0.0.1','2583657TGESPJ','endsWith','effectiveBaseUrl','isTTY','8QHOYak','zEubh','ypbkv','length','mamIc','hOTmo','qunIN','.storageState.json'];_0x27b1=function(){return _0x2116b2;};return _0x27b1();}export function sessionCacheHash(_0x26c841){const _0x25e714=_0x45c919,_0x60cf5={'mamIc':function(_0x4c16bb,_0x9fa894){return _0x4c16bb(_0x9fa894);},'qfnRx':'setupHeaders','SMbYg':function(_0x456ff3,_0x298dea){return _0x456ff3(_0x298dea);},'PQOsB':'clientIp','gPPeg':function(_0x411a0a,_0x15d724){return _0x411a0a!==_0x15d724;},'GqaBd':function(_0x4f5cce,_0x4b1575){return _0x4f5cce(_0x4b1575);},'pjhsN':'sha256','ypbkv':'hex'},_0x2ee9d3=new Set(_0x26c841['invalidateOn']??DEFAULT_INVALIDATE_ON);_0x26c841[_0x25e714(0x10d)]&&_0x60cf5[_0x25e714(0x113)](needsTunnel,_0x26c841[_0x25e714(0x10d)])&&_0x2ee9d3[_0x25e714(0x119)](_0x25e714(0x128));const _0x4580c4={'orgId':_0x26c841['orgId'],'profileName':_0x26c841[_0x25e714(0x101)]};return _0x2ee9d3[_0x25e714(0x102)](_0x25e714(0x128))&&(_0x4580c4['effectiveBaseUrl']=_0x26c841[_0x25e714(0x10d)]),_0x2ee9d3[_0x25e714(0x102)](_0x60cf5[_0x25e714(0x131)])&&(_0x4580c4['setupHeaders']=_0x26c841[_0x25e714(0x126)]?sortObjectKeys(_0x26c841[_0x25e714(0x126)]):_0x26c841[_0x25e714(0x126)]),_0x2ee9d3['has']('port')&&(_0x4580c4['port']=_0x60cf5[_0x25e714(0x12a)](extractPort,_0x26c841[_0x25e714(0x10d)])),_0x2ee9d3[_0x25e714(0x102)](_0x25e714(0x125))&&_0x26c841[_0x25e714(0x125)]!==undefined&&(_0x4580c4[_0x25e714(0x125)]=_0x26c841['userAgent']),_0x2ee9d3['has'](_0x60cf5['PQOsB'])&&_0x60cf5[_0x25e714(0x105)](_0x26c841[_0x25e714(0x130)],undefined)&&(_0x4580c4['clientIp']=_0x26c841[_0x25e714(0x130)]),_0x60cf5['GqaBd'](createHash,_0x60cf5['pjhsN'])[_0x25e714(0x136)](JSON['stringify'](_0x4580c4))['digest'](_0x60cf5[_0x25e714(0x111)])[_0x25e714(0x13a)](0x0,0xc);}function extractPort(_0x658a5b){const _0x8a542b=_0x45c919;try{return new URL(_0x658a5b)[_0x8a542b(0x109)];}catch{return'';}}function sortObjectKeys(_0x1bd46d){const _0x362886={};for(const _0x3131ee of Object['keys'](_0x1bd46d)['sort']()){_0x362886[_0x3131ee]=_0x1bd46d[_0x3131ee];}return _0x362886;}export function getSessionCachePath(_0x377301,_0x54baa8){const _0x1e2c2c=_0x45c919,_0x14e711={'hOTmo':function(_0x17221c,_0x4968b9,_0x1fd937,_0x58564d){return _0x17221c(_0x4968b9,_0x1fd937,_0x58564d);},'qunIN':function(_0x460ccb){return _0x460ccb();},'MRuLT':'auth'};return _0x14e711[_0x1e2c2c(0x114)](join,_0x14e711[_0x1e2c2c(0x115)](getRangerHomeDir),_0x14e711[_0x1e2c2c(0x122)],_0x377301+'-'+_0x54baa8+_0x1e2c2c(0xff));}export function getStorageStatePath(_0x19ce41){const _0x144907=_0x45c919,_0x5ea373={'mTTCw':_0x144907(0x116)};return _0x19ce41[_0x144907(0x11c)](/\.json$/,_0x5ea373['mTTCw']);}export function needsTunnel(_0x4a8506){const _0x509576=_0x45c919,_0x207621={'UdRCr':'localhost','DkCCD':_0x509576(0x12e),'zEubh':'localhost.'};let _0x3bfb5b;try{_0x3bfb5b=new URL(_0x4a8506)[_0x509576(0x107)];}catch{return![];}if(_0x3bfb5b===_0x207621['UdRCr']||_0x3bfb5b===_0x509576(0x10a))return!![];if(_0x3bfb5b[_0x509576(0x10c)](_0x207621[_0x509576(0x133)]))return!![];if(_0x3bfb5b[_0x509576(0x12c)](_0x207621[_0x509576(0x110)]))return!![];return![];}export function isBareLocalhost(_0x4a9e5d){const _0x3ae52b=_0x45c919,_0x142ccb={'XwzOg':function(_0x5d907c,_0x1348f0){return _0x5d907c===_0x1348f0;},'ztuSS':'::1','jjNIR':'[::1]'};let _0x1dc5a1;try{_0x1dc5a1=new URL(_0x4a9e5d)['hostname'];}catch{return![];}return _0x1dc5a1==='localhost'||_0x1dc5a1===_0x3ae52b(0x10a)||_0x142ccb['XwzOg'](_0x1dc5a1,_0x142ccb['ztuSS'])||_0x1dc5a1===_0x142ccb[_0x3ae52b(0x13b)];}function _0x596b(_0x3686da,_0x10b562){_0x3686da=_0x3686da-0xff;const _0x27b134=_0x27b1();let _0x596b66=_0x27b134[_0x3686da];return _0x596b66;}export function orderLoginDomains(_0x11f252,_0xfa8b73){const _0x4a20f6=_0xfa8b73??[];if(!_0x11f252)return _0x4a20f6;return[_0x11f252,..._0x4a20f6['filter'](_0x31e7a6=>_0x31e7a6!==_0x11f252)];}export function hostnameOf(_0x3404be){const _0x26d00f=_0x45c919;return new URL(_0x3404be)[_0x26d00f(0x107)];}export function duplicateCookiesForDomains(_0x5c3613,_0x3622c7){const _0x11ad2b=_0x45c919,_0x4e0a30={'wGviV':function(_0x396fd7,_0x21cc5e){return _0x396fd7(_0x21cc5e);}},_0x155711=[..._0x5c3613],_0xdb975c=new Set(_0x5c3613['map'](_0x1a7ae3=>_0x1a7ae3['domain']));for(const _0x15ff72 of _0x3622c7){let _0x24db42;try{_0x24db42=_0x4e0a30[_0x11ad2b(0x117)](hostnameOf,_0x15ff72);}catch{continue;}if(!_0x24db42)continue;const _0x175656=_0x24db42['startsWith']('.')?_0x24db42:'.'+_0x24db42;if(_0xdb975c['has'](_0x24db42)||_0xdb975c[_0x11ad2b(0x102)](_0x175656))continue;for(const _0xd60cdd of _0x5c3613){_0x155711[_0x11ad2b(0x11e)]({..._0xd60cdd,'domain':_0x175656});}_0xdb975c[_0x11ad2b(0x119)](_0x175656);}return _0x155711;}export function resolveAuthEnvironmentLocally(_0x44f0eb,_0x115df9){const _0x198f86=_0x45c919,_0x4ccbdc={'exbmf':function(_0x409ca3,_0x1a8713){return _0x409ca3===_0x1a8713;}},_0x59c974=_0x44f0eb['environments'];if(_0x115df9){const _0x35995e=_0x59c974[_0x115df9];if(!_0x35995e)return null;return{'key':_0x115df9,..._0x35995e};}if(_0x44f0eb['defaultEnvironmentKey']){const _0x521299=_0x59c974[_0x44f0eb[_0x198f86(0x137)]];if(!_0x521299)return null;return{'key':_0x44f0eb['defaultEnvironmentKey'],..._0x521299};}const _0x1885fc=Object[_0x198f86(0x11b)](_0x59c974);if(_0x4ccbdc['exbmf'](_0x1885fc[_0x198f86(0x112)],0x1)){const _0xbd1f9e=_0x1885fc[0x0];return{'key':_0xbd1f9e,..._0x59c974[_0xbd1f9e]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x4c79fa,_0x343f65){const _0x5d5230=_0x45c919;try{if(_0x343f65)return new URL(_0x343f65,_0x4c79fa)[_0x5d5230(0x11f)]();return new URL(_0x4c79fa)[_0x5d5230(0x11f)]();}catch{return null;}}export function looksLikeLoginUrl(_0x6761eb){const _0xf89e16=_0x45c919;try{const _0x46b0d0=new URL(_0x6761eb);return LOGIN_URL_PATTERN[_0xf89e16(0x123)](_0x46b0d0['pathname']);}catch{return LOGIN_URL_PATTERN['test'](_0x6761eb);}}export async function isCachedSessionLive(_0x8d77b6,_0x4a3a4e,_0x5e88d6={},_0x4c48da={}){const _0x30a982=_0x45c919,_0x48aaf1={'ZlBto':function(_0x2fa41f,_0x32e324,_0x430002){return _0x2fa41f(_0x32e324,_0x430002);},'VccTW':'domcontentloaded','gxyAe':function(_0x559c39,_0x41e1cb){return _0x559c39(_0x41e1cb);}},_0x4d87be=_0x48aaf1['ZlBto'](buildSessionCheckUrl,_0x4a3a4e,_0x5e88d6[_0x30a982(0x121)]);if(!_0x4d87be)return!![];if(!_0x4c48da[_0x30a982(0x103)])return!![];let _0x37dab5=null;try{_0x37dab5=await _0x4c48da[_0x30a982(0x103)]();const _0x28ba2e=await _0x37dab5['newContext']({'storageState':_0x8d77b6,'ignoreHTTPSErrors':!![],..._0x5e88d6[_0x30a982(0x126)]?{'extraHTTPHeaders':_0x5e88d6['setupHeaders']}:{}}),_0x5efaca=await _0x28ba2e[_0x30a982(0x138)](),_0xf2e00e=await _0x5efaca[_0x30a982(0x104)](_0x4d87be,{'waitUntil':_0x48aaf1[_0x30a982(0x124)],'timeout':0x3a98}),_0x1b56a1=_0xf2e00e?.[_0x30a982(0x11d)]();if(_0x1b56a1===0x191||_0x1b56a1===0x193)return![];const _0x205193=_0x5efaca[_0x30a982(0x12f)]();if(_0x48aaf1[_0x30a982(0x132)](looksLikeLoginUrl,_0x205193))return![];return!![];}catch{return![];}finally{if(_0x37dab5)await _0x37dab5['close']()['catch'](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const _0x11379c=_0x457e;function _0x457e(_0x4ec6ce,_0x427f7e){_0x4ec6ce=_0x4ec6ce-0xde;const _0x6e3f5=_0x6e3f();let _0x457e63=_0x6e3f5[_0x4ec6ce];return _0x457e63;}(function(_0x440d4d,_0x332d7f){const _0x20b50a=_0x457e,_0x49128a=_0x440d4d();while(!![]){try{const _0x596e7c=parseInt(_0x20b50a(0xeb))/0x1*(-parseInt(_0x20b50a(0xea))/0x2)+parseInt(_0x20b50a(0xde))/0x3*(-parseInt(_0x20b50a(0xe2))/0x4)+-parseInt(_0x20b50a(0xf0))/0x5+-parseInt(_0x20b50a(0xe0))/0x6+-parseInt(_0x20b50a(0xdf))/0x7+-parseInt(_0x20b50a(0xe1))/0x8*(parseInt(_0x20b50a(0xee))/0x9)+parseInt(_0x20b50a(0xe3))/0xa;if(_0x596e7c===_0x332d7f)break;else _0x49128a['push'](_0x49128a['shift']());}catch(_0x4bc892){_0x49128a['push'](_0x49128a['shift']());}}}(_0x6e3f,0x8cd11));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x11379c(0xe6),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x12fa2f){const _0x4fa607=_0x11379c;return pbkdf2Sync(_0x12fa2f,SALT,0x186a0,KEY_LENGTH,_0x4fa607(0xf1));}export function encrypt(_0x3c6649,_0x4fd66a){const _0xce4402=_0x11379c,_0x1b8f8f={'tRPAk':function(_0x58b80b,_0x44179d){return _0x58b80b(_0x44179d);},'OFSxZ':function(_0x13fe33,_0x8d457e){return _0x13fe33(_0x8d457e);},'tlnXD':function(_0x9b37f3,_0x1e97c,_0x5a6fa0,_0x383f14){return _0x9b37f3(_0x1e97c,_0x5a6fa0,_0x383f14);}},_0x39870c=_0x1b8f8f[_0xce4402(0xe9)](deriveKey,_0x4fd66a),_0x401591=_0x1b8f8f['OFSxZ'](randomBytes,IV_LENGTH),_0xfe7efa=_0x1b8f8f[_0xce4402(0xe7)](createCipheriv,ALGORITHM,_0x39870c,_0x401591),_0x36b869=Buffer[_0xce4402(0xe8)]([_0xfe7efa['update'](_0x3c6649,'utf8'),_0xfe7efa[_0xce4402(0xed)]()]),_0x432f0e=_0xfe7efa['getAuthTag']();return Buffer[_0xce4402(0xe8)]([_0x401591,_0x432f0e,_0x36b869]);}function _0x6e3f(){const _0x1160e4=['concat','tRPAk','2jCFgyv','1004077gHvkmB','izggD','final','22230hGhrnR','utf8','3084905wJeYeN','sha256','3NGAuSa','5041757bAkYsJ','5846832pgRJIj','3568LPTWwx','2742072jhRSfN','56797040EDSEKL','setAuthTag','subarray','aes-256-gcm','tlnXD'];_0x6e3f=function(){return _0x1160e4;};return _0x6e3f();}export function decrypt(_0x27d074,_0x431328){const _0x1b71ce=_0x11379c,_0x3c4ec0={'aBjkq':function(_0x4e7971,_0x174249,_0x58f707,_0xf4158d){return _0x4e7971(_0x174249,_0x58f707,_0xf4158d);},'izggD':function(_0x347dfb,_0xa2e172){return _0x347dfb+_0xa2e172;}},_0x36e689=deriveKey(_0x431328),_0x1f34a9=_0x27d074[_0x1b71ce(0xe5)](0x0,IV_LENGTH),_0x97f2ab=_0x27d074[_0x1b71ce(0xe5)](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x28b4b1=_0x27d074['subarray'](IV_LENGTH+TAG_LENGTH),_0x3cb9e1=_0x3c4ec0['aBjkq'](createDecipheriv,ALGORITHM,_0x36e689,_0x1f34a9);return _0x3cb9e1[_0x1b71ce(0xe4)](_0x97f2ab),_0x3c4ec0[_0x1b71ce(0xec)](_0x3cb9e1['update'](_0x28b4b1),_0x3cb9e1[_0x1b71ce(0xed)](_0x1b71ce(0xef)));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x2a743d=_0x1f1d;(function(_0x5411da,_0x4db961){const _0x299e9e=_0x1f1d,_0x33dc5b=_0x5411da();while(!![]){try{const _0x336ace=parseInt(_0x299e9e(0x1a9))/0x1+parseInt(_0x299e9e(0x19b))/0x2*(parseInt(_0x299e9e(0x1a1))/0x3)+parseInt(_0x299e9e(0x19d))/0x4+-parseInt(_0x299e9e(0x1c5))/0x5+parseInt(_0x299e9e(0x1aa))/0x6+-parseInt(_0x299e9e(0x1bf))/0x7+parseInt(_0x299e9e(0x1bb))/0x8*(-parseInt(_0x299e9e(0x1c2))/0x9);if(_0x336ace===_0x4db961)break;else _0x33dc5b['push'](_0x33dc5b['shift']());}catch(_0x4d58fb){_0x33dc5b['push'](_0x33dc5b['shift']());}}}(_0x16b6,0x75585));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set([_0x2a743d(0x1a0),'-t','--secret','--api-key',_0x2a743d(0x1c8),'--key','--password','--pass',_0x2a743d(0x1b7),'--authorization',_0x2a743d(0x1a2),'--cookie',_0x2a743d(0x1c7)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function _0x1f1d(_0x455996,_0x10fd2a){_0x455996=_0x455996-0x198;const _0x16b6ae=_0x16b6();let _0x1f1d41=_0x16b6ae[_0x455996];return _0x1f1d41;}function looksLikeToken(_0x11b5bc){const _0x4c6c0c=_0x2a743d;return TOKEN_PATTERNS[_0x4c6c0c(0x1a3)](_0x3c26b7=>_0x3c26b7['test'](_0x11b5bc));}export function sanitizeArgs(_0x2df1c6){const _0x263a3b=_0x2a743d,_0xa820f5={'yxLCQ':function(_0x909b14,_0x49f1ba){return _0x909b14<_0x49f1ba;},'MXluD':_0x263a3b(0x1c0)},_0x1f10b1=[];let _0x31976d=![];for(let _0x58c7b2=0x0;_0xa820f5['yxLCQ'](_0x58c7b2,_0x2df1c6['length']);_0x58c7b2++){const _0x2e2303=_0x2df1c6[_0x58c7b2];if(_0x31976d){_0x1f10b1[_0x263a3b(0x1c6)]('[REDACTED]'),_0x31976d=![];continue;}if(_0x2e2303[_0x263a3b(0x1be)]('--')||_0x2e2303['startsWith']('-')){const _0x5bfe78=_0x2e2303[_0x263a3b(0x1b3)]('=');if(_0x5bfe78!==-0x1){const _0x349183=_0x2e2303['slice'](0x0,_0x5bfe78)[_0x263a3b(0x199)]();if(SENSITIVE_FLAGS[_0x263a3b(0x1a5)](_0x349183)){_0x1f10b1['push'](_0x2e2303['slice'](0x0,_0x5bfe78)+'=[REDACTED]');continue;}}else{const _0x53eab1=_0x2e2303['toLowerCase']();SENSITIVE_FLAGS['has'](_0x53eab1)&&(_0x31976d=!![]);}_0x1f10b1['push'](_0x2e2303);}else looksLikeToken(_0x2e2303)?_0x1f10b1[_0x263a3b(0x1c6)](_0xa820f5[_0x263a3b(0x1ac)]):_0x1f10b1['push'](_0x2e2303);}return _0x1f10b1['join']('\x20');}function _0x16b6(){const _0xf22400=['--auth','Unknown\x20argument','isTTY','has_token','66832WFoZDL','error','Not\x20enough\x20non-option\x20arguments','startsWith','5855430kJveeh','[REDACTED]','MjgwR','27ZAJQUJ','unknown','includes','1029260kwhIpJ','push','--credentials','--apikey','IprbL','unknown_command','unknown_argument','missing_option','toLowerCase','errorType','70GfyajH','env','1343352CIDAch','rQsqw','PRcAS','--token','8124cFmAiG','--header','some','/api/v1/mcp/desire-path-logs','has','Authorization','metadata','syntax_error','670717BfSrQo','2680284FROQva','featureId','MXluD','application/json','Unknown\x20command','[desire-path]\x20Payload:\x20','rawCommand','DEBUG','runtime_error','indexOf','Invalid\x20values','sessionId','missing_required_argument'];_0x16b6=function(){return _0xf22400;};return _0x16b6();}export async function logDesirePath(_0x570c6a){const _0x3f953e=_0x2a743d,_0x4fed8f={'uMJDS':function(_0xc5b200){return _0xc5b200();},'PRcAS':function(_0x30926f){return _0x30926f();},'IprbL':_0x3f953e(0x1ba),'rQsqw':'POST'};try{const _0x2dc171=await getToken()['catch'](()=>null),_0x2c276e=_0x4fed8f['uMJDS'](getApiBaseUrl),_0x235ed0=_0x4fed8f[_0x3f953e(0x19f)](getCurrentVersion),_0x704987=_0x2dc171?_0x4fed8f[_0x3f953e(0x1c9)]:'no_token',_0x22e39f={..._0x570c6a[_0x3f953e(0x1a7)],'authStatus':_0x704987,'isTty':process['stdout'][_0x3f953e(0x1b9)]??![]},_0x198e72={'Content-Type':_0x3f953e(0x1ad)};_0x2dc171&&(_0x198e72[_0x3f953e(0x1a6)]='Bearer\x20'+_0x2dc171);const _0x3e2f8c={'rawCommand':_0x570c6a[_0x3f953e(0x1b0)],'errorMessage':_0x570c6a['errorMessage'],'errorType':_0x570c6a[_0x3f953e(0x19a)],'featureId':_0x570c6a[_0x3f953e(0x1ab)],'sessionId':_0x570c6a[_0x3f953e(0x1b5)],'metadata':_0x22e39f,'cliVersion':_0x235ed0};process['env'][_0x3f953e(0x1b1)]&&(console['error']('[desire-path]\x20Sending\x20log\x20to\x20'+_0x2c276e+_0x3f953e(0x1a4)),console[_0x3f953e(0x1bc)](_0x3f953e(0x1af)+JSON['stringify'](_0x3e2f8c,null,0x2))),await fetch(_0x2c276e+'/api/v1/mcp/desire-path-logs',{'method':_0x4fed8f[_0x3f953e(0x19e)],'headers':_0x198e72,'body':JSON['stringify'](_0x3e2f8c)});}catch(_0x227cd9){process[_0x3f953e(0x19c)][_0x3f953e(0x1b1)]&&console['error']('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x227cd9);}}export function getErrorType(_0x15dce0,_0x2c9d79){const _0x557945=_0x2a743d,_0x53f8ac={'WtTlU':_0x557945(0x1bd),'nmDKU':_0x557945(0x1ca),'MjgwR':'Missing\x20required\x20argument'},_0x3ccfc0='6|3|5|2|0|4|7|1'['split']('|');let _0x52b626=0x0;while(!![]){switch(_0x3ccfc0[_0x52b626++]){case'0':if(_0x15dce0[_0x557945(0x1c4)](_0x53f8ac['WtTlU']))return _0x557945(0x1b6);continue;case'1':return _0x557945(0x1a8);case'2':if(_0x15dce0['includes'](_0x557945(0x1b8)))return _0x557945(0x1cb);continue;case'3':if(!_0x15dce0)return _0x557945(0x1c3);continue;case'4':if(_0x15dce0[_0x557945(0x1c4)](_0x557945(0x1b4)))return'invalid_option_value';continue;case'5':if(_0x15dce0['includes'](_0x557945(0x1ae)))return _0x53f8ac['nmDKU'];continue;case'6':if(_0x2c9d79)return _0x557945(0x1b2);continue;case'7':if(_0x15dce0[_0x557945(0x1c4)](_0x53f8ac[_0x557945(0x1c1)]))return _0x557945(0x198);continue;}break;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x20afed,_0x2201f9){const _0x30c8d1=_0x4c88,_0x2f1a25=_0x20afed();while(!![]){try{const _0x118961=-parseInt(_0x30c8d1(0x14f))/0x1+parseInt(_0x30c8d1(0x13c))/0x2+-parseInt(_0x30c8d1(0x13d))/0x3*(-parseInt(_0x30c8d1(0x120))/0x4)+parseInt(_0x30c8d1(0x13f))/0x5*(parseInt(_0x30c8d1(0x12e))/0x6)+parseInt(_0x30c8d1(0x144))/0x7*(parseInt(_0x30c8d1(0x133))/0x8)+-parseInt(_0x30c8d1(0x115))/0x9+-parseInt(_0x30c8d1(0x149))/0xa;if(_0x118961===_0x2201f9)break;else _0x2f1a25['push'](_0x2f1a25['shift']());}catch(_0x4e5431){_0x2f1a25['push'](_0x2f1a25['shift']());}}}(_0x1130,0xbcc3f));import{spawn}from'child_process';import _0x380f8c from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL='https://api.workos.com/user_management/authorize/device',WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x3f60ab){const _0x51e08c=_0x4c88,_0x47cf73={'TelWo':function(_0x14857c,_0x1486e7,_0x3211ed){return _0x14857c(_0x1486e7,_0x3211ed);}},_0xe00d1d=await _0x47cf73['TelWo'](fetch,WORKOS_DEVICE_AUTH_URL,{'method':'POST','headers':{'Content-Type':_0x51e08c(0x111)},'body':new URLSearchParams({'client_id':_0x3f60ab})});if(!_0xe00d1d['ok']){const _0xd6d6c1=await _0xe00d1d[_0x51e08c(0x14d)]();throw new Error(_0x51e08c(0x13b)+_0xe00d1d[_0x51e08c(0x14c)]+'\x20'+_0xd6d6c1);}return _0xe00d1d['json']();}export async function pollForTokens(_0x4ddd8d,_0x4d9eca,_0x55d66f,_0x5a91e6){const _0x1094c7=_0x4c88,_0x355c7d={'mQbNq':function(_0x21aa1d,_0x1cc808){return _0x21aa1d+_0x1cc808;},'cdpZb':function(_0x1c5b0f,_0x1699d){return _0x1c5b0f*_0x1699d;},'arGMt':function(_0xccf4e4,_0x1aa008){return _0xccf4e4(_0x1aa008);},'RDXCe':'application/x-www-form-urlencoded','qvRAR':function(_0x1f42b0,_0x5d9571){return _0x1f42b0===_0x5d9571;},'iximI':function(_0x3be95f,_0x47c8ad){return _0x3be95f===_0x47c8ad;},'uuqud':_0x1094c7(0x107),'bZOKB':_0x1094c7(0x13a)},_0x525589=_0x355c7d['mQbNq'](Date[_0x1094c7(0x12b)](),_0x355c7d[_0x1094c7(0x125)](_0x5a91e6,0x3e8));let _0x3ed9ac=_0x355c7d[_0x1094c7(0x125)](_0x55d66f,0x3e8);while(Date['now']()<_0x525589){await _0x355c7d['arGMt'](sleep,_0x3ed9ac);const _0x376ab0=await fetch(WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x355c7d[_0x1094c7(0x11e)]},'body':new URLSearchParams({'client_id':_0x4ddd8d,'device_code':_0x4d9eca,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x376ab0['ok'])return _0x376ab0[_0x1094c7(0x122)]();const _0x1a0ab6=await _0x376ab0[_0x1094c7(0x122)]();if(_0x355c7d[_0x1094c7(0x150)](_0x1a0ab6['error'],_0x1094c7(0x118)))continue;if(_0x355c7d[_0x1094c7(0x109)](_0x1a0ab6['error'],_0x355c7d['uuqud'])){_0x3ed9ac+=0x3e8;continue;}throw new Error(_0x1a0ab6['error_description']||_0x1a0ab6[_0x1094c7(0x143)]||_0x1094c7(0x134));}throw new Error(_0x355c7d[_0x1094c7(0x147)]);}function _0x4c88(_0x4eafe7,_0x35ff87){_0x4eafe7=_0x4eafe7-0x105;const _0x1130b9=_0x1130();let _0x4c88e8=_0x1130b9[_0x4eafe7];return _0x4c88e8;}async function fetchUserProfile(_0x4e0124){const _0x10557f=_0x4c88,_0x54c285={'mYxVO':_0x10557f(0x14a)},_0x109de7=getApiBaseUrl();try{const _0x2a0f11=await fetch(_0x109de7+'/organization/me',{'method':_0x54c285[_0x10557f(0x131)],'headers':{'workos-token':_0x4e0124}});if(_0x2a0f11['ok'])return _0x2a0f11['json']();}catch{}return null;}function buildKeyName(_0x5eaae8,_0x6e508b){const _0x35787b=_0x4c88,_0x24c1cd={'Nokvf':function(_0x3c6e50,_0x317809){return _0x3c6e50+_0x317809;}},_0x2519ff=_0x6e508b['filter'](_0x50618d=>_0x50618d[_0x35787b(0x148)]===_0x5eaae8||_0x50618d[_0x35787b(0x148)]['startsWith'](_0x5eaae8+'\x20('));if(_0x2519ff[_0x35787b(0x13e)]===0x0)return _0x5eaae8;return _0x5eaae8+'\x20('+_0x24c1cd[_0x35787b(0x141)](_0x2519ff[_0x35787b(0x13e)],0x1)+')';}function _0x1130(){const _0x3e4793=['POST','Nokvf','ignore','error','1904wMVjfB','WTPUM','refresh_token','bZOKB','name','8034750VzoRec','GET','Failed\x20to\x20provision\x20CLI\x20token:\x20','status','text','MgQEq','1368698uzjPDt','qvRAR','verification_uri_complete','log','FXKGB','slow_down','NemvW','iximI','Invalid\x20JWT\x20format','kmEIt','Provisioning\x20CLI\x20token...','stdout','Failed\x20to\x20create\x20organization:\x20','expires_in','xdg-open','application/x-www-form-urlencoded','list','organizationId','application/json','1007622HVPznu','base64url','token','authorization_pending','toString','split','device_code','stringify','utf-8','RDXCe','iLncK','36FhKCHb','BoVcX','json','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','XkkKs','cdpZb','apiKeys','HbdlF','bGNfS','/organization/my-memberships','bHBNS','now','stdin','VbdrP','18ksVYDN','access_token','/api-keys','mYxVO','tTaMR','39128nISWQJ','Authentication\x20failed','win32','XGyLK','Waiting\x20for\x20authentication...','write','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','Device\x20authorization\x20timed\x20out','Failed\x20to\x20request\x20device\x20code:\x20','624852mRQhbU','23313MPYKFX','length','2240995ZSUpFk'];_0x1130=function(){return _0x3e4793;};return _0x1130();}export async function provisionApiKey(_0x40f1df){const _0x20667b=_0x4c88,_0x1efd6b={'eCUcN':function(_0x4bb6a9){return _0x4bb6a9();},'iLncK':'application/json','FXKGB':function(_0x562c57,_0x1f3770){return _0x562c57(_0x1f3770);},'HbdlF':function(_0x271857,_0x1b2bc5,_0x1d68c9){return _0x271857(_0x1b2bc5,_0x1d68c9);}},_0x45a58b=_0x1efd6b['eCUcN'](getApiBaseUrl),_0x4c12ed={'Content-Type':_0x1efd6b[_0x20667b(0x11f)],'workos-token':_0x40f1df},_0x183ba1=await _0x1efd6b[_0x20667b(0x106)](fetchUserProfile,_0x40f1df),_0x1f71b9=_0x183ba1?.['firstName']||_0x183ba1?.['email']?.['split']('@')[0x0],_0x3dfb77=_0x1f71b9?_0x1f71b9+'\x27s\x20CLI\x20Key':'CLI\x20Key';let _0x1c335e=[];try{const _0x954cb=await _0x1efd6b['HbdlF'](fetch,_0x45a58b+'/api-keys',{'method':'GET','headers':_0x4c12ed});if(_0x954cb['ok']){const _0x3bbf1e=await _0x954cb[_0x20667b(0x122)]();_0x1c335e=_0x3bbf1e[_0x20667b(0x126)];}}catch{}const _0x1e3523=_0x1efd6b[_0x20667b(0x127)](buildKeyName,_0x3dfb77,_0x1c335e),_0x4b1a8c=await fetch(_0x45a58b+_0x20667b(0x130),{'method':'POST','headers':_0x4c12ed,'body':JSON[_0x20667b(0x11c)]({'name':_0x1e3523,'scope':'mcp:write'})});if(!_0x4b1a8c['ok']){const _0x908b7f=await _0x4b1a8c[_0x20667b(0x14d)]();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x4b1a8c['status']+'\x20'+_0x908b7f);}const _0x2d44ee=await _0x4b1a8c[_0x20667b(0x122)]();return _0x2d44ee['apiKey']['token'];}export function openBrowser(_0x5b19cd){const _0x18cfaf=_0x4c88,_0x299d65={'cjdfh':_0x18cfaf(0x135),'zfnCn':function(_0xe60c83,_0x85381d,_0x1a8ef4,_0x4365e2){return _0xe60c83(_0x85381d,_0x1a8ef4,_0x4365e2);},'OwJzX':_0x18cfaf(0x142)};try{if(process['platform']===_0x299d65['cjdfh']){const _0x39380e=_0x299d65['zfnCn'](spawn,'cmd',['/c','start','',_0x5b19cd],{'detached':!![],'stdio':_0x299d65['OwJzX'],'windowsHide':!![]});_0x39380e['unref']();return;}const _0x252021=process['platform']==='darwin'?'open':_0x18cfaf(0x110),_0x3cf149=spawn(_0x252021,[_0x5b19cd],{'detached':!![],'stdio':_0x299d65['OwJzX']});_0x3cf149['unref']();}catch{}}function decodeJwtPayload(_0x269a97){const _0x5df136=_0x4c88,_0x23c783={'sHHYx':_0x5df136(0x10a),'kmEIt':_0x5df136(0x116)},_0x1b1be2=_0x269a97[_0x5df136(0x11a)]('.');if(_0x1b1be2[_0x5df136(0x13e)]!==0x3)throw new Error(_0x23c783['sHHYx']);const _0x1b6ed2=Buffer['from'](_0x1b1be2[0x1],_0x23c783[_0x5df136(0x10b)])[_0x5df136(0x119)](_0x5df136(0x11d));return JSON['parse'](_0x1b6ed2);}async function selfServeSignup(_0x24d78b){const _0x3d5a73=_0x4c88,_0x27e52a={'NemvW':function(_0x488bc6){return _0x488bc6();},'PXfGT':function(_0x120c4f,_0x3c8002,_0x342381){return _0x120c4f(_0x3c8002,_0x342381);},'QeFST':_0x3d5a73(0x114)},_0xe47dbd=_0x27e52a[_0x3d5a73(0x108)](getApiBaseUrl),_0xb6001a=await _0x27e52a['PXfGT'](fetch,_0xe47dbd+'/organization/self-serve-signup',{'method':'POST','headers':{'Content-Type':_0x27e52a['QeFST'],'workos-token':_0x24d78b}});if(!_0xb6001a['ok']){const _0x5dfaab=await _0xb6001a[_0x3d5a73(0x14d)]();throw new Error(_0x3d5a73(0x10e)+_0xb6001a[_0x3d5a73(0x14c)]+'\x20'+_0x5dfaab);}return _0xb6001a[_0x3d5a73(0x122)]();}async function fetchMyMemberships(_0x33118d){const _0x178c3e=_0x4c88,_0x19b772={'EdfXd':function(_0x1e3fa0){return _0x1e3fa0();},'gHuCt':function(_0x1c7931,_0x207ba6,_0x29627b){return _0x1c7931(_0x207ba6,_0x29627b);}},_0x145cad=_0x19b772['EdfXd'](getApiBaseUrl),_0x14db75=await _0x19b772['gHuCt'](fetch,_0x145cad+_0x178c3e(0x129),{'method':'GET','headers':{'workos-token':_0x33118d}});if(!_0x14db75['ok']){const _0x2d0666=await _0x14db75['text']();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x14db75[_0x178c3e(0x14c)]+'\x20'+_0x2d0666);}const _0x400ee0=await _0x14db75['json']();return _0x400ee0['memberships'];}async function refreshTokenWithOrg(_0x5de801,_0x19e80f,_0x57650b){const _0x1ca0b0=_0x4c88,_0x591857={'WTPUM':_0x1ca0b0(0x140),'XkkKs':_0x1ca0b0(0x146)},_0x1d7b40=await fetch(WORKOS_TOKEN_URL,{'method':_0x591857[_0x1ca0b0(0x145)],'headers':{'Content-Type':_0x1ca0b0(0x111)},'body':new URLSearchParams({'client_id':_0x5de801,'grant_type':_0x591857[_0x1ca0b0(0x124)],'refresh_token':_0x19e80f,'organization_id':_0x57650b})});if(!_0x1d7b40['ok']){const _0x38bc1f=await _0x1d7b40['text']();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x1d7b40[_0x1ca0b0(0x14c)]+'\x20'+_0x38bc1f);}return _0x1d7b40['json']();}async function provisionCliToken(_0x470f31){const _0x528d7b=_0x4c88,_0x21ea36={'VbdrP':function(_0x5cca77){return _0x5cca77();},'woUnz':function(_0x139028,_0x2b1882,_0x4732f0){return _0x139028(_0x2b1882,_0x4732f0);},'IdQAp':_0x528d7b(0x140)},_0x229153=_0x21ea36[_0x528d7b(0x12d)](getApiBaseUrl),_0x1c8d22=await _0x21ea36['woUnz'](fetch,_0x229153+'/cli-auth/token',{'method':_0x21ea36['IdQAp'],'headers':{'Content-Type':'application/json','workos-token':_0x470f31}});if(!_0x1c8d22['ok']){const _0x9e452d=await _0x1c8d22['text']();throw new Error(_0x528d7b(0x14b)+_0x1c8d22['status']+'\x20'+_0x9e452d);}return _0x1c8d22['json']();}export async function runDeviceAuthFlow(){const _0x36467d=_0x4c88,_0x2e6cde={'oikJO':function(_0x116ee3){return _0x116ee3();},'xumls':function(_0x2cfc46,_0x16b8f6){return _0x2cfc46(_0x16b8f6);},'lBzhw':_0x36467d(0x139),'bHBNS':'Setting\x20up\x20your\x20organization...','nPlah':function(_0xed6544,_0x10984d){return _0xed6544+_0x10984d;},'MgQEq':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','BoVcX':_0x36467d(0x112),'tTaMR':function(_0x42881f,_0x3ec80,_0x26c873,_0x33596d){return _0x42881f(_0x3ec80,_0x26c873,_0x33596d);},'bGNfS':_0x36467d(0x10c),'XGyLK':function(_0x24c245,_0xe205c2){return _0x24c245(_0xe205c2);}},_0x2d3a82=_0x2e6cde['oikJO'](getCurrentEnvironment),_0x47542c=ENVIRONMENT_CONFIGS[_0x2d3a82]['workosClientId'],_0x2ec476=await _0x2e6cde['xumls'](requestDeviceCode,_0x47542c);console['log'](_0x2e6cde['lBzhw']),console[_0x36467d(0x105)]('\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a'),openBrowser(_0x2ec476[_0x36467d(0x151)]),console[_0x36467d(0x105)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x2ec476[_0x36467d(0x151)]),console[_0x36467d(0x105)]('Code:\x20'+_0x2ec476['user_code']+'\x0a'),process[_0x36467d(0x10d)]['write'](_0x36467d(0x137));let _0x1435ad=await pollForTokens(_0x47542c,_0x2ec476[_0x36467d(0x11b)],_0x2ec476['interval'],_0x2ec476[_0x36467d(0x10f)]);console['log']('\x20✓');const _0x3f1dcf=decodeJwtPayload(_0x1435ad['access_token']);if(!_0x3f1dcf['org_id']){const _0x29166e=await fetchMyMemberships(_0x1435ad['access_token']);let _0x2d7ce1;if(_0x29166e['length']===0x0){process[_0x36467d(0x10d)][_0x36467d(0x138)](_0x2e6cde[_0x36467d(0x12a)]);const _0x2b09ab=await selfServeSignup(_0x1435ad['access_token']);_0x2d7ce1=_0x2b09ab[_0x36467d(0x113)],console['log']('\x20✓');}else{if(_0x29166e[_0x36467d(0x13e)]===0x1)_0x2d7ce1=_0x29166e[0x0]['organizationId'],console['log']('Using\x20organization:\x20'+_0x29166e[0x0][_0x36467d(0x148)]);else{const _0x5cf4e1=process[_0x36467d(0x12c)]['isTTY']&&process['stdout']['isTTY'];if(!_0x5cf4e1)throw new Error(_0x2e6cde['nPlah'](_0x36467d(0x123),_0x2e6cde[_0x36467d(0x14e)]));const {selected:_0x1a2943}=await _0x380f8c['prompt']([{'type':_0x2e6cde[_0x36467d(0x121)],'name':'selected','message':'Select\x20an\x20organization:','choices':_0x29166e['map'](_0x23787b=>({'name':_0x23787b[_0x36467d(0x148)],'value':_0x23787b['organizationId']}))}]);_0x2d7ce1=_0x1a2943;}}_0x1435ad=await _0x2e6cde[_0x36467d(0x132)](refreshTokenWithOrg,_0x47542c,_0x1435ad[_0x36467d(0x146)],_0x2d7ce1);}process[_0x36467d(0x10d)]['write'](_0x2e6cde[_0x36467d(0x128)]);const _0xb0e6c9=await _0x2e6cde['xumls'](provisionCliToken,_0x1435ad[_0x36467d(0x12f)]);return console[_0x36467d(0x105)]('\x20✓'),await storeToken(_0xb0e6c9[_0x36467d(0x117)]),_0x1435ad[_0x36467d(0x146)]&&await _0x2e6cde[_0x36467d(0x136)](storeRefreshToken,_0x1435ad['refresh_token']),_0xb0e6c9['token'];}function sleep(_0x4d68e0){return new Promise(_0x1de97d=>setTimeout(_0x1de97d,_0x4d68e0));}
|
|
1
|
+
const _0x122f6c=_0x4c5c;(function(_0x30d2b4,_0x59c87c){const _0x29d427=_0x4c5c,_0x3f9527=_0x30d2b4();while(!![]){try{const _0x7482d5=parseInt(_0x29d427(0x200))/0x1+parseInt(_0x29d427(0x1e8))/0x2*(-parseInt(_0x29d427(0x1f0))/0x3)+-parseInt(_0x29d427(0x1ed))/0x4+-parseInt(_0x29d427(0x1d3))/0x5+-parseInt(_0x29d427(0x226))/0x6+parseInt(_0x29d427(0x1de))/0x7+-parseInt(_0x29d427(0x229))/0x8;if(_0x7482d5===_0x59c87c)break;else _0x3f9527['push'](_0x3f9527['shift']());}catch(_0x3925b2){_0x3f9527['push'](_0x3f9527['shift']());}}}(_0x23c9,0x5bb41));import{spawn}from'child_process';function _0x4c5c(_0x185add,_0x16a525){_0x185add=_0x185add-0x1d3;const _0x23c93a=_0x23c9();let _0x4c5c2b=_0x23c93a[_0x185add];return _0x4c5c2b;}import _0x2d0201 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x122f6c(0x1e6),WORKOS_TOKEN_URL=_0x122f6c(0x207);export async function requestDeviceCode(_0x41ff5b){const _0x5f583c=_0x122f6c,_0x4f8896=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x41ff5b})});if(!_0x4f8896['ok']){const _0x194b3a=await _0x4f8896[_0x5f583c(0x225)]();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x4f8896[_0x5f583c(0x211)]+'\x20'+_0x194b3a);}return _0x4f8896[_0x5f583c(0x1d8)]();}export async function pollForTokens(_0x5e77f4,_0xfda12a,_0x8b94b2,_0x3eeec8){const _0x1d83ef=_0x122f6c,_0x46ac77={'QEXjF':function(_0x116e96,_0x24d389){return _0x116e96+_0x24d389;},'IdfYE':function(_0x3dd006,_0x296cfb){return _0x3dd006*_0x296cfb;},'YBpGm':function(_0x17434a,_0x271818,_0x4b0024){return _0x17434a(_0x271818,_0x4b0024);},'peGvL':'urn:ietf:params:oauth:grant-type:device_code','ERtPQ':function(_0x4b29ac,_0x20d40a){return _0x4b29ac===_0x20d40a;},'Ielbe':_0x1d83ef(0x1ef),'YzsyU':_0x1d83ef(0x1fb)},_0x1554cd=_0x46ac77[_0x1d83ef(0x222)](Date['now'](),_0x46ac77[_0x1d83ef(0x1db)](_0x3eeec8,0x3e8));let _0x4a00d5=_0x8b94b2*0x3e8;while(Date['now']()<_0x1554cd){await sleep(_0x4a00d5);const _0x5f5c30=await _0x46ac77['YBpGm'](fetch,WORKOS_TOKEN_URL,{'method':_0x1d83ef(0x1ea),'headers':{'Content-Type':_0x1d83ef(0x1f9)},'body':new URLSearchParams({'client_id':_0x5e77f4,'device_code':_0xfda12a,'grant_type':_0x46ac77[_0x1d83ef(0x1da)]})});if(_0x5f5c30['ok'])return _0x5f5c30['json']();const _0x5c17ee=await _0x5f5c30['json']();if(_0x46ac77[_0x1d83ef(0x1e1)](_0x5c17ee['error'],_0x46ac77[_0x1d83ef(0x203)]))continue;if(_0x5c17ee['error']===_0x1d83ef(0x1e2)){_0x4a00d5+=0x3e8;continue;}throw new Error(_0x5c17ee[_0x1d83ef(0x1e4)]||_0x5c17ee[_0x1d83ef(0x1fd)]||_0x46ac77['YzsyU']);}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x495e41){const _0x515b45=_0x122f6c,_0x492a35={'RIXej':function(_0x404b3b){return _0x404b3b();},'yWmXk':function(_0x21b3bf,_0xdbff5,_0x5e68bb){return _0x21b3bf(_0xdbff5,_0x5e68bb);}},_0x1a7ce1=_0x492a35[_0x515b45(0x1fc)](getApiBaseUrl);try{const _0x5b11ec=await _0x492a35[_0x515b45(0x1f6)](fetch,_0x1a7ce1+'/organization/me',{'method':'GET','headers':{'workos-token':_0x495e41}});if(_0x5b11ec['ok'])return _0x5b11ec['json']();}catch{}return null;}function buildKeyName(_0x41de43,_0x8588da){const _0x49a0dd=_0x122f6c,_0x10bb59=_0x8588da['filter'](_0x47cd30=>_0x47cd30[_0x49a0dd(0x1e5)]===_0x41de43||_0x47cd30[_0x49a0dd(0x1e5)]['startsWith'](_0x41de43+'\x20('));if(_0x10bb59['length']===0x0)return _0x41de43;return _0x41de43+'\x20('+(_0x10bb59['length']+0x1)+')';}export async function provisionApiKey(_0x25d5a6){const _0x2ff20c=_0x122f6c,_0x5920b1={'kMQgm':'application/json','wDJTc':function(_0x379715,_0x1cc680){return _0x379715(_0x1cc680);},'ZlMZM':_0x2ff20c(0x228),'yIQAY':function(_0x2889f9,_0x59aa26,_0x4ba4a9){return _0x2889f9(_0x59aa26,_0x4ba4a9);}},_0x117716=getApiBaseUrl(),_0x4ea9a6={'Content-Type':_0x5920b1[_0x2ff20c(0x202)],'workos-token':_0x25d5a6},_0x2a7d65=await _0x5920b1[_0x2ff20c(0x215)](fetchUserProfile,_0x25d5a6),_0x36fb5a=_0x2a7d65?.['firstName']||_0x2a7d65?.[_0x2ff20c(0x21d)]?.[_0x2ff20c(0x1ec)]('@')[0x0],_0x1b0175=_0x36fb5a?_0x36fb5a+_0x2ff20c(0x218):_0x5920b1[_0x2ff20c(0x1e3)];let _0x49667d=[];try{const _0x462912=await fetch(_0x117716+_0x2ff20c(0x21f),{'method':'GET','headers':_0x4ea9a6});if(_0x462912['ok']){const _0x436135=await _0x462912[_0x2ff20c(0x1d8)]();_0x49667d=_0x436135[_0x2ff20c(0x1e9)];}}catch{}const _0x3752ed=buildKeyName(_0x1b0175,_0x49667d),_0x11577d=await _0x5920b1['yIQAY'](fetch,_0x117716+'/api-keys',{'method':_0x2ff20c(0x1ea),'headers':_0x4ea9a6,'body':JSON['stringify']({'name':_0x3752ed,'scope':_0x2ff20c(0x1eb)})});if(!_0x11577d['ok']){const _0x9db6fb=await _0x11577d['text']();throw new Error(_0x2ff20c(0x1f2)+_0x11577d['status']+'\x20'+_0x9db6fb);}const _0x26d221=await _0x11577d['json']();return _0x26d221['apiKey']['token'];}export function openBrowser(_0x3cca08){const _0x34af7c=_0x122f6c,_0x3b5dfd={'EElhW':function(_0x11a98a,_0x195bc3){return _0x11a98a===_0x195bc3;},'aRibd':'win32','NhtBH':'start','PuBQv':_0x34af7c(0x21b),'mQnZX':function(_0x19e357,_0x388c80){return _0x19e357===_0x388c80;},'EWgIk':'xdg-open','reOTS':function(_0x42cb6c,_0x4ea3b4,_0x45cc0c,_0x1dedab){return _0x42cb6c(_0x4ea3b4,_0x45cc0c,_0x1dedab);}};try{if(_0x3b5dfd[_0x34af7c(0x1e7)](process['platform'],_0x3b5dfd['aRibd'])){const _0x23769c=spawn('cmd',['/c',_0x3b5dfd[_0x34af7c(0x1d9)],'',_0x3cca08],{'detached':!![],'stdio':_0x3b5dfd[_0x34af7c(0x212)],'windowsHide':!![]});_0x23769c['unref']();return;}const _0x216301=_0x3b5dfd['mQnZX'](process[_0x34af7c(0x1f7)],'darwin')?'open':_0x3b5dfd[_0x34af7c(0x1fe)],_0x3c44cf=_0x3b5dfd[_0x34af7c(0x1dd)](spawn,_0x216301,[_0x3cca08],{'detached':!![],'stdio':'ignore'});_0x3c44cf[_0x34af7c(0x1d5)]();}catch{}}function decodeJwtPayload(_0x50bc2d){const _0x8f8e16=_0x122f6c,_0x3c903e={'rjiXI':_0x8f8e16(0x1f3),'wyvGp':'utf-8'},_0x26975e=_0x50bc2d[_0x8f8e16(0x1ec)]('.');if(_0x26975e[_0x8f8e16(0x201)]!==0x3)throw new Error(_0x3c903e[_0x8f8e16(0x208)]);const _0x41cefc=Buffer[_0x8f8e16(0x1df)](_0x26975e[0x1],_0x8f8e16(0x205))['toString'](_0x3c903e['wyvGp']);return JSON[_0x8f8e16(0x210)](_0x41cefc);}function _0x23c9(){const _0x2e807d=['from','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','ERtPQ','slow_down','ZlMZM','error_description','name','https://api.workos.com/user_management/authorize/device','EElhW','2IazcLF','apiKeys','POST','mcp:write','split','452296hugdsW','Using\x20organization:\x20','authorization_pending','24729OtBHWZ','ycHmr','Failed\x20to\x20provision\x20API\x20key:\x20','Invalid\x20JWT\x20format','WKeve','Failed\x20to\x20fetch\x20memberships:\x20','yWmXk','platform','stdout','application/x-www-form-urlencoded','token','Authentication\x20failed','RIXej','error','EWgIk','Select\x20an\x20organization:','708391gyEvTK','length','kMQgm','Ielbe','/organization/self-serve-signup','base64url','Provisioning\x20CLI\x20token...','https://api.workos.com/user_management/authenticate','rjiXI','org_id','map','memberships','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','oMwxW','prompt','Failed\x20to\x20provision\x20CLI\x20token:\x20','parse','status','PuBQv','write','organizationId','wDJTc','Waiting\x20for\x20authentication...','expires_in','\x27s\x20CLI\x20Key','gwXzc','access_token','ignore','refresh_token','email','XopOB','/api-keys','user_code','verification_uri_complete','QEXjF','/organization/my-memberships','bNxcV','text','648024rXujil','log','CLI\x20Key','2178616mLosFU','745270wQIqjn','XfBpS','unref','device_code','interval','json','NhtBH','peGvL','IdfYE','Setting\x20up\x20your\x20organization...','reOTS','2225496PbFgYp'];_0x23c9=function(){return _0x2e807d;};return _0x23c9();}async function selfServeSignup(_0x377838){const _0x348e0c=_0x122f6c,_0x5909a8={'qJEII':'application/json'},_0x40fdc8=getApiBaseUrl(),_0x276eeb=await fetch(_0x40fdc8+_0x348e0c(0x204),{'method':_0x348e0c(0x1ea),'headers':{'Content-Type':_0x5909a8['qJEII'],'workos-token':_0x377838}});if(!_0x276eeb['ok']){const _0x61f1d2=await _0x276eeb['text']();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x276eeb[_0x348e0c(0x211)]+'\x20'+_0x61f1d2);}return _0x276eeb[_0x348e0c(0x1d8)]();}async function fetchMyMemberships(_0x35d7fc){const _0x56d99d=_0x122f6c,_0x48bffa={'bNxcV':function(_0x252d96){return _0x252d96();},'oMwxW':function(_0x371b2c,_0x312301,_0x1a9e3e){return _0x371b2c(_0x312301,_0x1a9e3e);}},_0x1e8c69=_0x48bffa[_0x56d99d(0x224)](getApiBaseUrl),_0x3ab593=await _0x48bffa[_0x56d99d(0x20d)](fetch,_0x1e8c69+_0x56d99d(0x223),{'method':'GET','headers':{'workos-token':_0x35d7fc}});if(!_0x3ab593['ok']){const _0x3d4ee9=await _0x3ab593[_0x56d99d(0x225)]();throw new Error(_0x56d99d(0x1f5)+_0x3ab593[_0x56d99d(0x211)]+'\x20'+_0x3d4ee9);}const _0x34b022=await _0x3ab593['json']();return _0x34b022[_0x56d99d(0x20b)];}async function refreshTokenWithOrg(_0x27706b,_0x35cc3e,_0x2ba7ed){const _0x575073=_0x122f6c,_0x29254e={'GXdDm':_0x575073(0x1ea),'WKeve':_0x575073(0x1f9)},_0x19509b=await fetch(WORKOS_TOKEN_URL,{'method':_0x29254e['GXdDm'],'headers':{'Content-Type':_0x29254e[_0x575073(0x1f4)]},'body':new URLSearchParams({'client_id':_0x27706b,'grant_type':'refresh_token','refresh_token':_0x35cc3e,'organization_id':_0x2ba7ed})});if(!_0x19509b['ok']){const _0x2fa69f=await _0x19509b[_0x575073(0x225)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x19509b[_0x575073(0x211)]+'\x20'+_0x2fa69f);}return _0x19509b['json']();}async function provisionCliToken(_0x402b93){const _0x47d586=_0x122f6c,_0x21bd98={'ycHmr':_0x47d586(0x1ea),'XopOB':'application/json'},_0x4b4cef=getApiBaseUrl(),_0x56f1b1=await fetch(_0x4b4cef+'/cli-auth/token',{'method':_0x21bd98[_0x47d586(0x1f1)],'headers':{'Content-Type':_0x21bd98[_0x47d586(0x21e)],'workos-token':_0x402b93}});if(!_0x56f1b1['ok']){const _0x1de018=await _0x56f1b1['text']();throw new Error(_0x47d586(0x20f)+_0x56f1b1['status']+'\x20'+_0x1de018);}return _0x56f1b1[_0x47d586(0x1d8)]();}export async function runDeviceAuthFlow(){const _0x5952da=_0x122f6c,_0x125060={'Pdbhp':function(_0x50d00b){return _0x50d00b();},'wIUIq':function(_0x537403,_0x4d1f05){return _0x537403(_0x4d1f05);},'GYRoN':_0x5952da(0x1e0),'SUbvY':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','zRhyS':function(_0x5a0b5c,_0x4c4087){return _0x5a0b5c+_0x4c4087;},'gwXzc':_0x5952da(0x20c),'XfBpS':'list','PyhLJ':'selected','GwCUh':function(_0x18e31f,_0x5a898c,_0x2359f8,_0x29da54){return _0x18e31f(_0x5a898c,_0x2359f8,_0x29da54);}},_0x5cd003=_0x125060['Pdbhp'](getCurrentEnvironment),_0x2b0aad=ENVIRONMENT_CONFIGS[_0x5cd003]['workosClientId'],_0x56106e=await _0x125060['wIUIq'](requestDeviceCode,_0x2b0aad);console['log'](_0x125060['GYRoN']),console['log'](_0x125060['SUbvY']),openBrowser(_0x56106e[_0x5952da(0x221)]),console[_0x5952da(0x227)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x56106e[_0x5952da(0x221)]),console['log']('Code:\x20'+_0x56106e[_0x5952da(0x220)]+'\x0a'),process['stdout']['write'](_0x5952da(0x216));let _0x29df44=await pollForTokens(_0x2b0aad,_0x56106e[_0x5952da(0x1d6)],_0x56106e[_0x5952da(0x1d7)],_0x56106e[_0x5952da(0x217)]);console[_0x5952da(0x227)]('\x20✓');const _0x222021=decodeJwtPayload(_0x29df44['access_token']);if(!_0x222021[_0x5952da(0x209)]){const _0x53c6f4=await fetchMyMemberships(_0x29df44[_0x5952da(0x21a)]);let _0x2a57ff;if(_0x53c6f4['length']===0x0){process['stdout'][_0x5952da(0x213)](_0x5952da(0x1dc));const _0x303175=await selfServeSignup(_0x29df44[_0x5952da(0x21a)]);_0x2a57ff=_0x303175['organizationId'],console[_0x5952da(0x227)]('\x20✓');}else{if(_0x53c6f4[_0x5952da(0x201)]===0x1)_0x2a57ff=_0x53c6f4[0x0][_0x5952da(0x214)],console[_0x5952da(0x227)](_0x5952da(0x1ee)+_0x53c6f4[0x0]['name']);else{const _0x26d11d=process['stdin']['isTTY']&&process['stdout']['isTTY'];if(!_0x26d11d)throw new Error(_0x125060['zRhyS']('Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a',_0x125060[_0x5952da(0x219)]));const {selected:_0x5581e0}=await _0x2d0201[_0x5952da(0x20e)]([{'type':_0x125060[_0x5952da(0x1d4)],'name':_0x125060['PyhLJ'],'message':_0x5952da(0x1ff),'choices':_0x53c6f4[_0x5952da(0x20a)](_0x1a6206=>({'name':_0x1a6206['name'],'value':_0x1a6206[_0x5952da(0x214)]}))}]);_0x2a57ff=_0x5581e0;}}_0x29df44=await _0x125060['GwCUh'](refreshTokenWithOrg,_0x2b0aad,_0x29df44['refresh_token'],_0x2a57ff);}process[_0x5952da(0x1f8)][_0x5952da(0x213)](_0x5952da(0x206));const _0x16e314=await provisionCliToken(_0x29df44['access_token']);return console['log']('\x20✓'),await storeToken(_0x16e314[_0x5952da(0x1fa)]),_0x29df44['refresh_token']&&await storeRefreshToken(_0x29df44[_0x5952da(0x21c)]),_0x16e314['token'];}function sleep(_0x2de812){return new Promise(_0xa62def=>setTimeout(_0xa62def,_0x2de812));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1d938f=_0x303e;(function(_0x101071,_0x4b044a){const _0x1c1f7d=_0x303e,_0x320ef7=_0x101071();while(!![]){try{const _0x56ca03=parseInt(_0x1c1f7d(0x1eb))/0x1*(-parseInt(_0x1c1f7d(0x1ef))/0x2)+parseInt(_0x1c1f7d(0x1da))/0x3*(parseInt(_0x1c1f7d(0x1f5))/0x4)+-parseInt(_0x1c1f7d(0x1e3))/0x5*(parseInt(_0x1c1f7d(0x1d4))/0x6)+-parseInt(_0x1c1f7d(0x1ed))/0x7+-parseInt(_0x1c1f7d(0x1e8))/0x8+parseInt(_0x1c1f7d(0x1de))/0x9+parseInt(_0x1c1f7d(0x1ee))/0xa;if(_0x56ca03===_0x4b044a)break;else _0x320ef7['push'](_0x320ef7['shift']());}catch(_0x48944c){_0x320ef7['push'](_0x320ef7['shift']());}}}(_0x2793,0x56130));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x1d938f(0x1f7),'workosClientId':_0x1d938f(0x1d8),'aiProxyUrl':_0x1d938f(0x1f0),'mcpAuthUrl':_0x1d938f(0x1df)},'staging':{'apiBaseUrl':_0x1d938f(0x1d6),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x1d938f(0x1f2),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT=_0x1d938f(0x1e7);function _0x2793(){const _0x156548=['891978gJPlRr','\x22.\x20','DBkjq','EFetn','6214230BGEqkZ','https://mcp-auth.ranger.net/mcp','KNENB','trim','daooF','45ZvvTGA','nova-act-cli','tpPOR','RANGER_DISABLE_MCP','prod','3596984JHEqcw','true','cQONJ','9lRgbHN','playwright-cli','2598820uhYleN','8285170LLcwuZ','69544Kygaod','https://ai-proxy-716115358910.us-central1.run.app','toLowerCase','http://localhost:8080','RANGER_HOOKS','auto','4ekkBAo','env','https://api.ranger.net','error','staging','219948DLNIAd','apiBaseUrl','https://api.staging.ranger.net','local','client_01J9CBYM7M5ZETCF7G6614DXR2','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.'];_0x2793=function(){return _0x156548;};return _0x2793();}export function isValidEnvironment(_0xc34b80){const _0x22371f=_0x1d938f,_0x3d50ed={'EFetn':_0x22371f(0x1d7)};return _0xc34b80==='prod'||_0xc34b80===_0x22371f(0x1d3)||_0xc34b80===_0x3d50ed[_0x22371f(0x1dd)];}export function getCurrentEnvironment(){const _0x1a04f3=_0x1d938f,_0x26bd59=process[_0x1a04f3(0x1f6)]['RANGER_CLI_ENV'];if(_0x26bd59&&isValidEnvironment(_0x26bd59))return _0x26bd59;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x830862=_0x1d938f,_0x513394={'rlJGl':function(_0x2c7fac){return _0x2c7fac();}};return ENVIRONMENT_CONFIGS[_0x513394['rlJGl'](getCurrentEnvironment)][_0x830862(0x1d5)];}export function getAiProxyUrl(){const _0x5334f7=_0x1d938f,_0x21905d={'KNENB':function(_0x2e4027){return _0x2e4027();}};return ENVIRONMENT_CONFIGS[_0x21905d[_0x5334f7(0x1e0)](getCurrentEnvironment)]['aiProxyUrl'];}function _0x303e(_0xb56f90,_0x5ad367){_0xb56f90=_0xb56f90-0x1d2;const _0x2793a6=_0x2793();let _0x303e9f=_0x2793a6[_0xb56f90];return _0x303e9f;}export function getMcpAuthUrl(){return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['mcpAuthUrl'];}export function isByokEnabled(){const _0x3f93aa=_0x1d938f,_0xec1cff={'tpPOR':_0x3f93aa(0x1e9)};return process[_0x3f93aa(0x1f6)]['RANGER_BYOK']===_0xec1cff[_0x3f93aa(0x1e5)];}function isVerificationTransport(_0x24e9a3){const _0x1c52ff=_0x1d938f,_0x5189d7={'VfvTX':_0x1c52ff(0x1e4),'iZzxd':function(_0x2b9776,_0x261a0e){return _0x2b9776===_0x261a0e;}};return _0x24e9a3==='mcp'||_0x24e9a3===_0x1c52ff(0x1ec)||_0x24e9a3===_0x5189d7['VfvTX']||_0x5189d7['iZzxd'](_0x24e9a3,'rangerwright-cli');}const LEGACY_TRANSPORT_ENV_VARS=['RANGER_USE_NOVA_ACT',_0x1d938f(0x1e6)];export function getVerificationTransport(){const _0x4fd067=_0x1d938f,_0x51827c={'DBkjq':'mcp'},_0x30662c=process[_0x4fd067(0x1f6)]['RANGER_TRANSPORT']?.[_0x4fd067(0x1e1)]();if(_0x30662c){if(isVerificationTransport(_0x30662c))return _0x30662c;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x30662c+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x2f678b=LEGACY_TRANSPORT_ENV_VARS['find'](_0x343597=>process[_0x4fd067(0x1f6)][_0x343597]);if(_0x2f678b)throw new Error(_0x2f678b+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.');return _0x51827c[_0x4fd067(0x1dc)];}export function resolveHookMode(_0x3b9f5c=process['env']){const _0x1d32ec=_0x1d938f,_0x1138c1={'daooF':_0x1d32ec(0x1f4),'YfxBS':'off','HFkuz':function(_0x50a38f,_0x30f0db){return _0x50a38f===_0x30f0db;},'cQONJ':function(_0x315922,_0x44ac1b){return _0x315922===_0x44ac1b;},'wYpEK':function(_0x488bdd,_0x56b030){return _0x488bdd+_0x56b030;}},_0x2008b5=_0x3b9f5c[_0x1d32ec(0x1f3)]?.[_0x1d32ec(0x1e1)]()[_0x1d32ec(0x1f1)]();if(!_0x2008b5)return _0x1138c1[_0x1d32ec(0x1e2)];if(_0x2008b5===_0x1138c1['YfxBS']||_0x1138c1['HFkuz'](_0x2008b5,'on')||_0x1138c1[_0x1d32ec(0x1ea)](_0x2008b5,_0x1138c1[_0x1d32ec(0x1e2)]))return _0x2008b5;return console[_0x1d32ec(0x1d2)](_0x1138c1['wYpEK']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x3b9f5c[_0x1d32ec(0x1f3)]+_0x1d32ec(0x1db),_0x1d32ec(0x1d9))),'auto';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3b2ba8,_0x3a37f6){const _0x11897b=_0x16b3,_0x434d38=_0x3b2ba8();while(!![]){try{const _0x3204aa=-parseInt(_0x11897b(0x1c2))/0x1*(-parseInt(_0x11897b(0x1de))/0x2)+parseInt(_0x11897b(0x1c8))/0x3+parseInt(_0x11897b(0x1f9))/0x4+-parseInt(_0x11897b(0x1d2))/0x5+-parseInt(_0x11897b(0x1bf))/0x6*(-parseInt(_0x11897b(0x1f2))/0x7)+parseInt(_0x11897b(0x1e0))/0x8*(parseInt(_0x11897b(0x1f7))/0x9)+parseInt(_0x11897b(0x1fc))/0xa*(-parseInt(_0x11897b(0x1c9))/0xb);if(_0x3204aa===_0x3a37f6)break;else _0x434d38['push'](_0x434d38['shift']());}catch(_0x1df9ad){_0x434d38['push'](_0x434d38['shift']());}}}(_0x2790,0xe95d0));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x3b2dfd){const _0x2d1258=_0x16b3,_0x26056a={'UFZXb':function(_0x3fb19f){return _0x3fb19f();},'mdgfD':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','Znhsk':function(_0x20c0a0){return _0x20c0a0();},'OvLpe':'POST','tVgwa':_0x2d1258(0x1d4)},_0x21173b=await _0x26056a['UFZXb'](getToken);if(!_0x21173b)throw new Error(_0x26056a[_0x2d1258(0x1e8)]);const _0x199dcc=_0x26056a['Znhsk'](getApiBaseUrl),_0x142442=await fetch(_0x199dcc+'/api/v1/mcp/features',{'method':_0x26056a[_0x2d1258(0x1e2)],'headers':{'Authorization':'Bearer\x20'+_0x21173b,'Content-Type':_0x2d1258(0x1e6)},'body':JSON['stringify'](_0x3b2dfd)});if(!_0x142442['ok']){if(_0x142442[_0x2d1258(0x1f1)]===0x192){const _0x23930b=await _0x142442['json'](),_0x31e0f9=_0x23930b[_0x2d1258(0x1e5)]||'https://dashboard.ranger.net/billing';throw new Error((_0x23930b[_0x2d1258(0x1ec)]||_0x26056a['tVgwa'])+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x31e0f9);}const _0x17cf9=await _0x142442['text']();throw new Error(_0x2d1258(0x1eb)+_0x17cf9);}return _0x142442[_0x2d1258(0x1ea)]();}function _0x16b3(_0x438e64,_0x18746e){_0x438e64=_0x438e64-0x1be;const _0x2790d3=_0x2790();let _0x16b3a3=_0x2790d3[_0x438e64];return _0x16b3a3;}export async function listFeatures(_0x3bd727){const _0x3d0b56=_0x16b3,_0x41c613={'ZjTjp':function(_0x2c7f34){return _0x2c7f34();},'lWXkt':function(_0x56deb3){return _0x56deb3();},'cMQMN':_0x3d0b56(0x1d3),'WvFOY':'gitBranch','XqmwF':'includeDeleted'},_0x51a6ff=await _0x41c613['ZjTjp'](getToken);if(!_0x51a6ff)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x859ca=_0x41c613[_0x3d0b56(0x1fa)](getApiBaseUrl),_0x425718=new URLSearchParams();if(_0x3bd727?.[_0x3d0b56(0x1d3)])_0x425718[_0x3d0b56(0x1d1)](_0x41c613[_0x3d0b56(0x200)],_0x3bd727['gitRepoUrl']);if(_0x3bd727?.['gitBranch'])_0x425718['set'](_0x41c613[_0x3d0b56(0x1fb)],_0x3bd727['gitBranch']);if(_0x3bd727?.['limit'])_0x425718[_0x3d0b56(0x1d1)]('limit',_0x3bd727['limit']['toString']());if(_0x3bd727?.[_0x3d0b56(0x1cd)])_0x425718['set']('offset',_0x3bd727[_0x3d0b56(0x1cd)][_0x3d0b56(0x1f3)]());if(_0x3bd727?.['includeDeleted'])_0x425718[_0x3d0b56(0x1d1)](_0x41c613[_0x3d0b56(0x1ff)],'true');const _0x96f309=_0x859ca+'/api/v1/mcp/features'+(_0x425718[_0x3d0b56(0x1f3)]()?'?'+_0x425718['toString']():''),_0x2a0fe6=await fetch(_0x96f309,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x51a6ff}});if(!_0x2a0fe6['ok']){const _0x48de79=await _0x2a0fe6[_0x3d0b56(0x1e9)]();throw new Error(_0x3d0b56(0x1ce)+_0x48de79);}return _0x2a0fe6['json']();}export async function getFeature(_0xb7f8b2){const _0xaa69e3=_0x16b3,_0x499b79={'jDZQQ':_0xaa69e3(0x1f8),'iSXtM':function(_0x287122,_0x5b7e91,_0x118902){return _0x287122(_0x5b7e91,_0x118902);},'xlXIv':_0xaa69e3(0x1cf)},_0x535a0b=await getToken();if(!_0x535a0b)throw new Error(_0x499b79[_0xaa69e3(0x1cb)]);const _0x271c28=getApiBaseUrl(),_0x36b965=await _0x499b79['iSXtM'](fetch,_0x271c28+'/api/v1/mcp/features/'+_0xb7f8b2,{'method':_0x499b79['xlXIv'],'headers':{'Authorization':'Bearer\x20'+_0x535a0b}});if(!_0x36b965['ok']){const _0x62f89d=await _0x36b965['text']();throw new Error(_0xaa69e3(0x201)+_0x62f89d);}return _0x36b965['json']();}export async function updateFeature(_0x5bb4c5,_0x50591d){const _0x4c966c=_0x16b3,_0x264be3={'yBUWj':function(_0x596bca){return _0x596bca();}},_0x35bac0=await _0x264be3['yBUWj'](getToken);if(!_0x35bac0)throw new Error(_0x4c966c(0x1f8));const _0x54c872=getApiBaseUrl(),_0x308d85=await fetch(_0x54c872+_0x4c966c(0x203)+_0x5bb4c5,{'method':_0x4c966c(0x1fe),'headers':{'Authorization':'Bearer\x20'+_0x35bac0,'Content-Type':'application/json'},'body':JSON[_0x4c966c(0x1dd)](_0x50591d)});if(!_0x308d85['ok']){const _0x2213e9=await _0x308d85[_0x4c966c(0x1e9)]();throw new Error(_0x4c966c(0x1c5)+_0x2213e9);}return _0x308d85['json']();}export async function createChecklistItem(_0x581ecf,_0x12862b,_0x5d243f){const _0x465440=_0x16b3,_0x8af448={'aFHDo':function(_0x33388e){return _0x33388e();},'AqijT':'POST'},_0x4b5108=await getToken();if(!_0x4b5108)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3155a5=_0x8af448[_0x465440(0x1c7)](getApiBaseUrl),_0xa0b614=await fetch(_0x3155a5+_0x465440(0x203)+_0x581ecf+_0x465440(0x1fd),{'method':_0x8af448['AqijT'],'headers':{'Authorization':_0x465440(0x1cc)+_0x4b5108,'Content-Type':_0x465440(0x1e6)},'body':JSON[_0x465440(0x1dd)]({'description':_0x12862b,'position':_0x5d243f})});if(!_0xa0b614['ok']){const _0x32ec24=await _0xa0b614['text']();throw new Error(_0x465440(0x1c0)+_0x32ec24);}return _0xa0b614[_0x465440(0x1ea)]();}export async function updateChecklistItem(_0x1b4908,_0x307407,_0x51af50){const _0x2b10a6=_0x16b3,_0x29f69f={'dVXGp':function(_0x3c7d53,_0x3807ff,_0x4644f3){return _0x3c7d53(_0x3807ff,_0x4644f3);},'GAwWG':_0x2b10a6(0x1e6),'NJYVl':'updateChecklistItem'};return withRetry(async()=>{const _0x4e20e9=_0x2b10a6,_0x2086c4=await getToken();if(!_0x2086c4)throw new Error(_0x4e20e9(0x1f8));const _0x23a4a3=getApiBaseUrl(),_0x962278=await _0x29f69f[_0x4e20e9(0x1e3)](fetch,_0x23a4a3+'/api/v1/mcp/features/'+_0x1b4908+'/checklist/'+_0x307407,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x2086c4,'Content-Type':_0x29f69f['GAwWG']},'body':JSON['stringify'](_0x51af50)});if(!_0x962278['ok']){const _0x5c3fe2=await _0x962278[_0x4e20e9(0x1e9)]();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x5c3fe2);}return _0x962278[_0x4e20e9(0x1ea)]();},{'label':_0x29f69f[_0x2b10a6(0x1d6)]});}export async function getFeatureReport(_0x1fdbcb){const _0x48fa87=_0x16b3,_0x74c5d5={'SCLzn':_0x48fa87(0x1f8),'aQwZa':function(_0x15a6cd){return _0x15a6cd();},'HjzKU':function(_0x365781,_0x53572b,_0x12d7c4){return _0x365781(_0x53572b,_0x12d7c4);}},_0xf8af11=await getToken();if(!_0xf8af11)throw new Error(_0x74c5d5['SCLzn']);const _0x43d626=_0x74c5d5[_0x48fa87(0x1f6)](getApiBaseUrl),_0x3d1873=await _0x74c5d5['HjzKU'](fetch,_0x43d626+_0x48fa87(0x203)+_0x1fdbcb+_0x48fa87(0x1d5),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0xf8af11}});if(!_0x3d1873['ok']){const _0xbdae43=await _0x3d1873[_0x48fa87(0x1e9)]();throw new Error(_0x48fa87(0x1d9)+_0xbdae43);}return _0x3d1873['json']();}export async function getFeatureReportMarkdown(_0x2fea23,_0x4a7c6b){const _0x3492f1=_0x16b3,_0x2ec19a={'mIgcm':_0x3492f1(0x1dc),'NbYGn':_0x3492f1(0x1d7),'xlgTO':'style','ndUad':function(_0x4f42a2,_0x26ca83,_0x4582e9){return _0x4f42a2(_0x26ca83,_0x4582e9);},'yknBA':'GET'},_0x154edf=await getToken();if(!_0x154edf)throw new Error(_0x3492f1(0x1f8));const _0x463dad=getApiBaseUrl(),_0x4ccffa=new URLSearchParams(),_0x2b3548=(_0x4a7c6b?.[_0x3492f1(0x1dc)]?.[_0x3492f1(0x1ed)]??0x0)>0x0,_0x11b52f=Boolean(_0x4a7c6b?.[_0x3492f1(0x1d7)]);_0x2b3548&&_0x4a7c6b?.['itemIds']&&_0x4ccffa['set'](_0x2ec19a['mIgcm'],_0x4a7c6b[_0x3492f1(0x1dc)]['join'](','));_0x11b52f&&_0x4a7c6b?.[_0x3492f1(0x1d7)]&&_0x4ccffa['set'](_0x2ec19a['NbYGn'],_0x4a7c6b['sessionId']);!_0x2b3548&&!_0x11b52f&&_0x4a7c6b?.[_0x3492f1(0x1d8)]&&_0x4ccffa['set'](_0x2ec19a['xlgTO'],_0x4a7c6b[_0x3492f1(0x1d8)]);const _0x3c0298=_0x463dad+_0x3492f1(0x203)+_0x2fea23+_0x3492f1(0x1e7),_0x41cb7e=''+_0x3c0298+(_0x4ccffa['toString']()?'?'+_0x4ccffa[_0x3492f1(0x1f3)]():''),_0x2562d2=await _0x2ec19a[_0x3492f1(0x1be)](fetch,_0x41cb7e,{'method':_0x2ec19a['yknBA'],'headers':{'Authorization':_0x3492f1(0x1cc)+_0x154edf}});if(!_0x2562d2['ok']){const _0x5e869b=await _0x2562d2['text']();throw new Error(_0x3492f1(0x1c6)+_0x5e869b);}return _0x2562d2[_0x3492f1(0x1e9)]();}export async function listFeatureSessions(_0x3cbcff){const _0x3fcf0b=_0x16b3,_0x3c7154={'CXbkP':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','wjTwA':function(_0x381540,_0x41c200,_0x383e56){return _0x381540(_0x41c200,_0x383e56);},'qUMby':_0x3fcf0b(0x1cf)},_0x3c5087=await getToken();if(!_0x3c5087)throw new Error(_0x3c7154['CXbkP']);const _0x22ca55=getApiBaseUrl(),_0x2b5b42=await _0x3c7154['wjTwA'](fetch,_0x22ca55+'/api/v1/mcp/features/'+_0x3cbcff+_0x3fcf0b(0x1ca),{'method':_0x3c7154['qUMby'],'headers':{'Authorization':_0x3fcf0b(0x1cc)+_0x3c5087}});if(!_0x2b5b42['ok']){const _0x1895ff=await _0x2b5b42['text']();throw new Error(_0x3fcf0b(0x1c1)+_0x1895ff);}return _0x2b5b42['json']();}export async function startSession(_0x4ca254,_0x2a6734){const _0x54444e=_0x16b3,_0x206def={'TNiHU':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','DqMAd':function(_0x550f18){return _0x550f18();},'BMtPV':function(_0x3d2401,_0x37320b,_0x3f7f88){return _0x3d2401(_0x37320b,_0x3f7f88);}},_0x301e5f=await getToken();if(!_0x301e5f)throw new Error(_0x206def['TNiHU']);const _0x1b9799=_0x206def['DqMAd'](getApiBaseUrl),_0x3ada97=await _0x206def[_0x54444e(0x1db)](fetch,_0x1b9799+'/api/v1/mcp/features/'+_0x4ca254+_0x54444e(0x1d0)+_0x2a6734+_0x54444e(0x1ee),{'method':_0x54444e(0x1c4),'headers':{'Authorization':'Bearer\x20'+_0x301e5f}});if(!_0x3ada97['ok']){const _0xd418fc=await _0x3ada97['text']();throw new Error(_0x54444e(0x1f0)+_0xd418fc);}return _0x3ada97['json']();}export async function concludeSession(_0x47ede5,_0x10402b){const _0x4c1fa9=_0x16b3,_0x5bf624={'KjxFY':function(_0x220334){return _0x220334();},'plbHU':'POST'},_0x3f4e1f=await getToken();if(!_0x3f4e1f)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x574b37=_0x5bf624['KjxFY'](getApiBaseUrl),_0x329f93=await fetch(_0x574b37+_0x4c1fa9(0x203)+_0x47ede5+'/sessions/'+_0x10402b+'/conclude',{'method':_0x5bf624[_0x4c1fa9(0x1df)],'headers':{'Authorization':'Bearer\x20'+_0x3f4e1f}});if(!_0x329f93['ok']){const _0x31f312=await _0x329f93['text']();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x31f312);}return _0x329f93[_0x4c1fa9(0x1ea)]();}export async function getActionItems(_0x1378f0){const _0x4b48a4=_0x16b3,_0x476389={'CKwFb':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','ruKht':function(_0x4c2dc4){return _0x4c2dc4();},'vxMDn':'GET'},_0x212b61=await getToken();if(!_0x212b61)throw new Error(_0x476389['CKwFb']);const _0x428ac8=_0x476389[_0x4b48a4(0x202)](getApiBaseUrl),_0x10afd2=await fetch(_0x428ac8+_0x4b48a4(0x203)+_0x1378f0+'/action-items',{'method':_0x476389['vxMDn'],'headers':{'Authorization':'Bearer\x20'+_0x212b61}});if(!_0x10afd2['ok']){const _0x24f7d0=await _0x10afd2['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x24f7d0);}return _0x10afd2[_0x4b48a4(0x1ea)]();}function _0x2790(){const _0x20ff48=['message','length','/start','Failed\x20to\x20delete\x20feature\x20review:\x20','Failed\x20to\x20start\x20session:\x20','status','546119yXPFCx','toString','/restore','msZuB','aQwZa','9MznIVC','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','2643992LnsaII','lWXkt','WvFOY','17065660DrOmLy','/checklist','PATCH','XqmwF','cMQMN','Failed\x20to\x20get\x20feature\x20review:\x20','ruKht','/api/v1/mcp/features/','ndUad','126QsHrYm','Failed\x20to\x20create\x20scenario:\x20','Failed\x20to\x20list\x20sessions:\x20','17477DaPOdo','Failed\x20to\x20restore\x20feature\x20review:\x20','POST','Failed\x20to\x20update\x20feature\x20review:\x20','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','aFHDo','880563QiTmga','22VrtcYg','/sessions','jDZQQ','Bearer\x20','offset','Failed\x20to\x20list\x20feature\x20reviews:\x20','GET','/sessions/','set','4381265nYKicq','gitRepoUrl','Feature\x20limit\x20exceeded','/report','NJYVl','sessionId','style','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','/feedback','BMtPV','itemIds','stringify','154OLOvqm','plbHU','10453088NiXxyc','AUjEM','OvLpe','dVXGp','irOuk','billingUrl','application/json','/report/markdown','mdgfD','text','json','Failed\x20to\x20create\x20feature\x20review:\x20'];_0x2790=function(){return _0x20ff48;};return _0x2790();}export async function getItemFeedback(_0x245983,_0x1ddd47){const _0x8306b4=_0x16b3,_0x5b63e7={'irOuk':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','nAZWc':function(_0x38f937){return _0x38f937();},'dzYPE':function(_0x5a3bfa,_0x11e93d,_0x1cb304){return _0x5a3bfa(_0x11e93d,_0x1cb304);}},_0x4369d0=await getToken();if(!_0x4369d0)throw new Error(_0x5b63e7[_0x8306b4(0x1e4)]);const _0xc921f5=_0x5b63e7['nAZWc'](getApiBaseUrl),_0x7c91e7=await _0x5b63e7['dzYPE'](fetch,_0xc921f5+_0x8306b4(0x203)+_0x245983+'/checklist-items/'+_0x1ddd47+_0x8306b4(0x1da),{'method':_0x8306b4(0x1cf),'headers':{'Authorization':'Bearer\x20'+_0x4369d0}});if(!_0x7c91e7['ok']){const _0x1eff2a=await _0x7c91e7['text']();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x1eff2a);}return _0x7c91e7['json']();}export async function markCommentsAddressed(_0x3808b1,_0x1c1616,_0x446fd7){const _0xb52f07=_0x16b3,_0x193e86={'uKSQn':function(_0x393de5){return _0x393de5();},'KdEuK':_0xb52f07(0x1f8),'msZuB':function(_0x227efe,_0x3ebac7,_0x351d9f){return _0x227efe(_0x3ebac7,_0x351d9f);}},_0x2e4a69=await _0x193e86['uKSQn'](getToken);if(!_0x2e4a69)throw new Error(_0x193e86['KdEuK']);const _0x37fc18=getApiBaseUrl(),_0x3a5fb9=await _0x193e86[_0xb52f07(0x1f5)](fetch,_0x37fc18+'/api/v1/mcp/features/'+_0x3808b1+'/comments/address',{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x2e4a69,'Content-Type':'application/json'},'body':JSON[_0xb52f07(0x1dd)]({'checklistItemId':_0x1c1616,'commentIds':_0x446fd7})});if(!_0x3a5fb9['ok']){const _0x196487=await _0x3a5fb9[_0xb52f07(0x1e9)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x196487);}}export async function softDeleteFeature(_0xce716){const _0x52e54d=_0x16b3,_0x3eceac={'WNwrA':function(_0x30b492){return _0x30b492();},'AUjEM':function(_0x470c17,_0x3dec0a,_0x30c555){return _0x470c17(_0x3dec0a,_0x30c555);},'Qsymn':'DELETE'},_0x592152=await _0x3eceac['WNwrA'](getToken);if(!_0x592152)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3af8e3=getApiBaseUrl(),_0x355fb2=await _0x3eceac[_0x52e54d(0x1e1)](fetch,_0x3af8e3+'/api/v1/mcp/features/'+_0xce716,{'method':_0x3eceac['Qsymn'],'headers':{'Authorization':_0x52e54d(0x1cc)+_0x592152}});if(!_0x355fb2['ok']){const _0x107945=await _0x355fb2[_0x52e54d(0x1e9)]();throw new Error(_0x52e54d(0x1ef)+_0x107945);}}export async function restoreFeature(_0xbcab53){const _0x385538=_0x16b3,_0x31f49b={'XGwJt':function(_0x45e0a3){return _0x45e0a3();},'JgXnA':function(_0x169e4e,_0x1e4c13,_0x27a38f){return _0x169e4e(_0x1e4c13,_0x27a38f);},'jJmxp':'POST'},_0x9afdb1=await _0x31f49b['XGwJt'](getToken);if(!_0x9afdb1)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3f449c=getApiBaseUrl(),_0x4b94ac=await _0x31f49b['JgXnA'](fetch,_0x3f449c+'/api/v1/mcp/features/'+_0xbcab53+_0x385538(0x1f4),{'method':_0x31f49b['jJmxp'],'headers':{'Authorization':'Bearer\x20'+_0x9afdb1}});if(!_0x4b94ac['ok']){const _0x12cb7d=await _0x4b94ac['text']();throw new Error(_0x385538(0x1c3)+_0x12cb7d);}}
|
|
1
|
+
(function(_0x2281eb,_0xda0928){const _0x568e56=_0x1625,_0x16c7f3=_0x2281eb();while(!![]){try{const _0x358080=-parseInt(_0x568e56(0xcb))/0x1+parseInt(_0x568e56(0x9e))/0x2*(parseInt(_0x568e56(0xd5))/0x3)+parseInt(_0x568e56(0xdc))/0x4*(-parseInt(_0x568e56(0xb9))/0x5)+parseInt(_0x568e56(0xe6))/0x6*(-parseInt(_0x568e56(0x9a))/0x7)+parseInt(_0x568e56(0xd6))/0x8+parseInt(_0x568e56(0xc9))/0x9+parseInt(_0x568e56(0xbd))/0xa;if(_0x358080===_0xda0928)break;else _0x16c7f3['push'](_0x16c7f3['shift']());}catch(_0x4b85d9){_0x16c7f3['push'](_0x16c7f3['shift']());}}}(_0x13f2,0x2f14a));function _0x13f2(){const _0x239765=['Zbusq','Failed\x20to\x20delete\x20feature\x20review:\x20','rJrcq','AqliY','PGbMq','TWcrD','lemjJ','/sessions','cECHS','RnYjb','rsqiw','stringify','/report/markdown','hewKm','style','WYOPR','DELETE','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','87560edRAWL','EMdOO','Failed\x20to\x20start\x20session:\x20','/start','4023160iXHagu','YFrQe','QlcLj','ZPgiY','Failed\x20to\x20get\x20feature\x20review:\x20','HLkzC','hxHBP','POST','application/json','json','IxNiV','/checklist-items/','3237714hRJQhH','CeJCc','379904UdtzcX','true','/conclude','message','text','JkVqf','ufwuU','Failed\x20to\x20list\x20feature\x20reviews:\x20','gitRepoUrl','kytLw','12EQHYRm','1170432TMdbAZ','updateChecklistItem','ieyGO','/comments/address','https://dashboard.ranger.net/billing','GET','72CiBpHA','pUjvY','vbYrm','Failed\x20to\x20create\x20scenario:\x20','zoicg','eGSJZ','xfZAp','nTJVd','/restore','\x0a\x0aUpgrade\x20your\x20plan:\x20','312FuxkNN','sessionId','/sessions/','/api/v1/mcp/features','oQLoG','itemIds','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','MVpuZ','join','6944pVnxKh','/checklist','/checklist/','set','15590CcnWcv','offset','NkJdO','Bearer\x20','/api/v1/mcp/features/','includeDeleted','gitBranch','FYJkC','PoODA'];_0x13f2=function(){return _0x239765;};return _0x13f2();}import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x20fcac){const _0x33d185=_0x1625,_0x21b836={'ieyGO':_0x33d185(0xb8),'YFrQe':function(_0x354cff,_0x4bf10e,_0x27fe63){return _0x354cff(_0x4bf10e,_0x27fe63);},'ZPgiY':_0x33d185(0xc5),'PGbMq':_0x33d185(0xda),'CoLto':'Feature\x20limit\x20exceeded'},_0x5c3ab2=await getToken();if(!_0x5c3ab2)throw new Error(_0x21b836[_0x33d185(0xd8)]);const _0x18cca1=getApiBaseUrl(),_0x441868=await _0x21b836[_0x33d185(0xbe)](fetch,_0x18cca1+_0x33d185(0x94),{'method':_0x33d185(0xc4),'headers':{'Authorization':'Bearer\x20'+_0x5c3ab2,'Content-Type':_0x21b836[_0x33d185(0xc0)]},'body':JSON[_0x33d185(0xb2)](_0x20fcac)});if(!_0x441868['ok']){if(_0x441868['status']===0x192){const _0x477f41=await _0x441868[_0x33d185(0xc6)](),_0x217086=_0x477f41['billingUrl']||_0x21b836[_0x33d185(0xab)];throw new Error((_0x477f41[_0x33d185(0xce)]||_0x21b836['CoLto'])+_0x33d185(0xe5)+_0x217086);}const _0x858da9=await _0x441868['text']();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x858da9);}return _0x441868['json']();}export async function listFeatures(_0x49bc5f){const _0x6538d2=_0x1625,_0x46cece={'lemjJ':function(_0x2c3698){return _0x2c3698();},'pUjvY':_0x6538d2(0xb8),'eBWXd':'gitRepoUrl','GAYXl':'gitBranch','LRNYw':'limit','dzvXa':_0x6538d2(0xa3)},_0x4b505e=await _0x46cece[_0x6538d2(0xad)](getToken);if(!_0x4b505e)throw new Error(_0x46cece[_0x6538d2(0xdd)]);const _0x9a1c3a=_0x46cece['lemjJ'](getApiBaseUrl),_0x17d70f=new URLSearchParams();if(_0x49bc5f?.[_0x6538d2(0xd3)])_0x17d70f['set'](_0x46cece['eBWXd'],_0x49bc5f['gitRepoUrl']);if(_0x49bc5f?.['gitBranch'])_0x17d70f[_0x6538d2(0x9d)](_0x46cece['GAYXl'],_0x49bc5f[_0x6538d2(0xa4)]);if(_0x49bc5f?.['limit'])_0x17d70f[_0x6538d2(0x9d)](_0x46cece['LRNYw'],_0x49bc5f['limit']['toString']());if(_0x49bc5f?.[_0x6538d2(0x9f)])_0x17d70f['set'](_0x6538d2(0x9f),_0x49bc5f['offset']['toString']());if(_0x49bc5f?.[_0x6538d2(0xa3)])_0x17d70f[_0x6538d2(0x9d)](_0x46cece['dzvXa'],_0x6538d2(0xcc));const _0x3e20af=_0x9a1c3a+'/api/v1/mcp/features'+(_0x17d70f['toString']()?'?'+_0x17d70f['toString']():''),_0x59bb4e=await fetch(_0x3e20af,{'method':_0x6538d2(0xdb),'headers':{'Authorization':_0x6538d2(0xa1)+_0x4b505e}});if(!_0x59bb4e['ok']){const _0x617c65=await _0x59bb4e[_0x6538d2(0xcf)]();throw new Error(_0x6538d2(0xd2)+_0x617c65);}return _0x59bb4e[_0x6538d2(0xc6)]();}export async function getFeature(_0x1803dd){const _0xdeb9b9=_0x1625,_0x3c13cd={'FYJkC':function(_0x58ad15){return _0x58ad15();},'vbYrm':'GET'},_0x1d8f0e=await getToken();if(!_0x1d8f0e)throw new Error(_0xdeb9b9(0xb8));const _0x30289a=_0x3c13cd[_0xdeb9b9(0xa5)](getApiBaseUrl),_0x247964=await fetch(_0x30289a+_0xdeb9b9(0xa2)+_0x1803dd,{'method':_0x3c13cd[_0xdeb9b9(0xde)],'headers':{'Authorization':_0xdeb9b9(0xa1)+_0x1d8f0e}});if(!_0x247964['ok']){const _0x2da556=await _0x247964[_0xdeb9b9(0xcf)]();throw new Error(_0xdeb9b9(0xc1)+_0x2da556);}return _0x247964['json']();}export async function updateFeature(_0x577c82,_0xd14673){const _0xdfe06a=_0x1625,_0xd8cdf2={'EMdOO':function(_0x3c060b){return _0x3c060b();},'adlPa':function(_0x4d12f0,_0x158cf6,_0x5dfc47){return _0x4d12f0(_0x158cf6,_0x5dfc47);}},_0x5609ca=await _0xd8cdf2[_0xdfe06a(0xba)](getToken);if(!_0x5609ca)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x17503d=getApiBaseUrl(),_0x27bfcb=await _0xd8cdf2['adlPa'](fetch,_0x17503d+_0xdfe06a(0xa2)+_0x577c82,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x5609ca,'Content-Type':_0xdfe06a(0xc5)},'body':JSON[_0xdfe06a(0xb2)](_0xd14673)});if(!_0x27bfcb['ok']){const _0x1a072b=await _0x27bfcb['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x1a072b);}return _0x27bfcb['json']();}export async function createChecklistItem(_0x4a90e6,_0x16b711,_0xc8201d){const _0x225e10=_0x1625,_0x3eca8e={'Xirgq':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','AqliY':function(_0x2e9a8e){return _0x2e9a8e();},'CeJCc':_0x225e10(0xc4)},_0xceb48c=await getToken();if(!_0xceb48c)throw new Error(_0x3eca8e['Xirgq']);const _0x338744=_0x3eca8e[_0x225e10(0xaa)](getApiBaseUrl),_0x125885=await fetch(_0x338744+_0x225e10(0xa2)+_0x4a90e6+_0x225e10(0x9b),{'method':_0x3eca8e[_0x225e10(0xca)],'headers':{'Authorization':'Bearer\x20'+_0xceb48c,'Content-Type':'application/json'},'body':JSON['stringify']({'description':_0x16b711,'position':_0xc8201d})});if(!_0x125885['ok']){const _0x499c2b=await _0x125885[_0x225e10(0xcf)]();throw new Error(_0x225e10(0xdf)+_0x499c2b);}return _0x125885['json']();}export async function updateChecklistItem(_0x4bf147,_0x173e78,_0x430937){const _0x20cea4=_0x1625,_0xb68917={'PoODA':function(_0x444295){return _0x444295();},'JkVqf':function(_0x9762e0,_0x407213,_0x3b1526){return _0x9762e0(_0x407213,_0x3b1526);},'glPkA':'PATCH','nTJVd':_0x20cea4(0xd7)};return _0xb68917['JkVqf'](withRetry,async()=>{const _0x324d5f=_0x20cea4,_0x2aa510=await getToken();if(!_0x2aa510)throw new Error(_0x324d5f(0xb8));const _0x12ae1a=_0xb68917[_0x324d5f(0xa6)](getApiBaseUrl),_0x180a6e=await _0xb68917[_0x324d5f(0xd0)](fetch,_0x12ae1a+'/api/v1/mcp/features/'+_0x4bf147+_0x324d5f(0x9c)+_0x173e78,{'method':_0xb68917['glPkA'],'headers':{'Authorization':'Bearer\x20'+_0x2aa510,'Content-Type':_0x324d5f(0xc5)},'body':JSON[_0x324d5f(0xb2)](_0x430937)});if(!_0x180a6e['ok']){const _0x55008b=await _0x180a6e['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x55008b);}return _0x180a6e['json']();},{'label':_0xb68917[_0x20cea4(0xe3)]});}export async function getFeatureReport(_0x25033a){const _0x2c1379=_0x1625,_0x3876c7={'eGSJZ':_0x2c1379(0xb8),'WYOPR':function(_0x23bcab){return _0x23bcab();}},_0x79f0f7=await getToken();if(!_0x79f0f7)throw new Error(_0x3876c7[_0x2c1379(0xe1)]);const _0x472751=_0x3876c7[_0x2c1379(0xb6)](getApiBaseUrl),_0x5e3a28=await fetch(_0x472751+'/api/v1/mcp/features/'+_0x25033a+'/report',{'method':_0x2c1379(0xdb),'headers':{'Authorization':'Bearer\x20'+_0x79f0f7}});if(!_0x5e3a28['ok']){const _0x827e51=await _0x5e3a28[_0x2c1379(0xcf)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x827e51);}return _0x5e3a28[_0x2c1379(0xc6)]();}export async function getFeatureReportMarkdown(_0x19f703,_0x2b7f08){const _0x18b30a=_0x1625,_0x239add={'Zbusq':function(_0x1270d9){return _0x1270d9();},'QlcLj':function(_0xb97280){return _0xb97280();},'JocYr':_0x18b30a(0x96),'hewKm':_0x18b30a(0xb5),'zoicg':function(_0x2780f0,_0x28c83e,_0x36e500){return _0x2780f0(_0x28c83e,_0x36e500);}},_0x356f29=await _0x239add[_0x18b30a(0xa7)](getToken);if(!_0x356f29)throw new Error(_0x18b30a(0xb8));const _0x4cdb2c=_0x239add[_0x18b30a(0xbf)](getApiBaseUrl),_0x3fbb34=new URLSearchParams(),_0x1832b0=(_0x2b7f08?.['itemIds']?.['length']??0x0)>0x0,_0x5366d0=Boolean(_0x2b7f08?.['sessionId']);_0x1832b0&&_0x2b7f08?.['itemIds']&&_0x3fbb34[_0x18b30a(0x9d)](_0x239add['JocYr'],_0x2b7f08['itemIds'][_0x18b30a(0x99)](','));_0x5366d0&&_0x2b7f08?.['sessionId']&&_0x3fbb34['set'](_0x18b30a(0xe7),_0x2b7f08[_0x18b30a(0xe7)]);!_0x1832b0&&!_0x5366d0&&_0x2b7f08?.[_0x18b30a(0xb5)]&&_0x3fbb34['set'](_0x239add[_0x18b30a(0xb4)],_0x2b7f08['style']);const _0x3a55a6=_0x4cdb2c+_0x18b30a(0xa2)+_0x19f703+_0x18b30a(0xb3),_0x39f1de=''+_0x3a55a6+(_0x3fbb34['toString']()?'?'+_0x3fbb34['toString']():''),_0x28a263=await _0x239add[_0x18b30a(0xe0)](fetch,_0x39f1de,{'method':'GET','headers':{'Authorization':_0x18b30a(0xa1)+_0x356f29}});if(!_0x28a263['ok']){const _0x477d84=await _0x28a263['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x477d84);}return _0x28a263['text']();}export async function listFeatureSessions(_0x413cd4){const _0x29d74b=_0x1625,_0x535526={'UFBKh':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','TWcrD':function(_0x15ada4){return _0x15ada4();},'RnYjb':function(_0xcef3b9,_0x360c9f,_0x5cf5ab){return _0xcef3b9(_0x360c9f,_0x5cf5ab);},'JDACe':'GET'},_0x3ed65b=await getToken();if(!_0x3ed65b)throw new Error(_0x535526['UFBKh']);const _0x101123=_0x535526[_0x29d74b(0xac)](getApiBaseUrl),_0x2ef984=await _0x535526[_0x29d74b(0xb0)](fetch,_0x101123+_0x29d74b(0xa2)+_0x413cd4+_0x29d74b(0xae),{'method':_0x535526['JDACe'],'headers':{'Authorization':_0x29d74b(0xa1)+_0x3ed65b}});if(!_0x2ef984['ok']){const _0x12de51=await _0x2ef984['text']();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x12de51);}return _0x2ef984['json']();}export async function startSession(_0x286207,_0x4c2340){const _0x59d295=_0x1625,_0x338e61=await getToken();if(!_0x338e61)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x35221f=getApiBaseUrl(),_0x2fcf40=await fetch(_0x35221f+'/api/v1/mcp/features/'+_0x286207+'/sessions/'+_0x4c2340+_0x59d295(0xbc),{'method':_0x59d295(0xc4),'headers':{'Authorization':'Bearer\x20'+_0x338e61}});if(!_0x2fcf40['ok']){const _0x3116bd=await _0x2fcf40['text']();throw new Error(_0x59d295(0xbb)+_0x3116bd);}return _0x2fcf40[_0x59d295(0xc6)]();}export async function concludeSession(_0x5e1f5e,_0x283a24){const _0x484f12=_0x1625,_0x39dbb={'NkJdO':function(_0x19e1ae){return _0x19e1ae();},'kTHYf':function(_0x41b950,_0x4b8d53,_0x3877b8){return _0x41b950(_0x4b8d53,_0x3877b8);}},_0x4c5784=await getToken();if(!_0x4c5784)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x40963c=_0x39dbb[_0x484f12(0xa0)](getApiBaseUrl),_0x26d8ac=await _0x39dbb['kTHYf'](fetch,_0x40963c+'/api/v1/mcp/features/'+_0x5e1f5e+_0x484f12(0xe8)+_0x283a24+_0x484f12(0xcd),{'method':'POST','headers':{'Authorization':_0x484f12(0xa1)+_0x4c5784}});if(!_0x26d8ac['ok']){const _0x2aa6fe=await _0x26d8ac[_0x484f12(0xcf)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x2aa6fe);}return _0x26d8ac['json']();}export async function getActionItems(_0x3e93a7){const _0x26e6e9=_0x1625,_0x11b927={'jvywA':function(_0x1b2c3f){return _0x1b2c3f();},'oQLoG':_0x26e6e9(0xb8)},_0x43f212=await _0x11b927['jvywA'](getToken);if(!_0x43f212)throw new Error(_0x11b927[_0x26e6e9(0x95)]);const _0x45533b=getApiBaseUrl(),_0x54ecc5=await fetch(_0x45533b+'/api/v1/mcp/features/'+_0x3e93a7+'/action-items',{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x43f212}});if(!_0x54ecc5['ok']){const _0x5bc593=await _0x54ecc5[_0x26e6e9(0xcf)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x5bc593);}return _0x54ecc5['json']();}export async function getItemFeedback(_0x1b664c,_0x3607b1){const _0x25c631=_0x1625,_0x553336={'mtmvc':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','rsqiw':function(_0x3788bb,_0x5bb32b,_0x170f49){return _0x3788bb(_0x5bb32b,_0x170f49);}},_0x2a1487=await getToken();if(!_0x2a1487)throw new Error(_0x553336['mtmvc']);const _0xc46f32=getApiBaseUrl(),_0x1974ac=await _0x553336[_0x25c631(0xb1)](fetch,_0xc46f32+'/api/v1/mcp/features/'+_0x1b664c+_0x25c631(0xc8)+_0x3607b1+'/feedback',{'method':_0x25c631(0xdb),'headers':{'Authorization':'Bearer\x20'+_0x2a1487}});if(!_0x1974ac['ok']){const _0x36059a=await _0x1974ac[_0x25c631(0xcf)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x36059a);}return _0x1974ac['json']();}export async function markCommentsAddressed(_0x36d72d,_0x2d0dc0,_0xcb681f){const _0x13b8cd=_0x1625,_0x3e71f1={'rJrcq':function(_0x29d554){return _0x29d554();},'kytLw':_0x13b8cd(0xb8),'MVpuZ':function(_0x19eee5){return _0x19eee5();},'cECHS':function(_0x49e9e1,_0xb59464,_0x136543){return _0x49e9e1(_0xb59464,_0x136543);},'qDMnz':'POST','HLkzC':'application/json'},_0x15abfc=await _0x3e71f1[_0x13b8cd(0xa9)](getToken);if(!_0x15abfc)throw new Error(_0x3e71f1[_0x13b8cd(0xd4)]);const _0x584f94=_0x3e71f1[_0x13b8cd(0x98)](getApiBaseUrl),_0x64bd9b=await _0x3e71f1[_0x13b8cd(0xaf)](fetch,_0x584f94+_0x13b8cd(0xa2)+_0x36d72d+_0x13b8cd(0xd9),{'method':_0x3e71f1['qDMnz'],'headers':{'Authorization':'Bearer\x20'+_0x15abfc,'Content-Type':_0x3e71f1[_0x13b8cd(0xc2)]},'body':JSON['stringify']({'checklistItemId':_0x2d0dc0,'commentIds':_0xcb681f})});if(!_0x64bd9b['ok']){const _0x271ce4=await _0x64bd9b['text']();throw new Error(_0x13b8cd(0x97)+_0x271ce4);}}export async function softDeleteFeature(_0x445955){const _0x43e509=_0x1625,_0xd5d2d3={'enUDh':_0x43e509(0xb8),'IxNiV':function(_0x56934f){return _0x56934f();},'hxHBP':function(_0xd75781,_0x499a96,_0x3382e2){return _0xd75781(_0x499a96,_0x3382e2);}},_0x69a768=await getToken();if(!_0x69a768)throw new Error(_0xd5d2d3['enUDh']);const _0x2f0ced=_0xd5d2d3[_0x43e509(0xc7)](getApiBaseUrl),_0x400870=await _0xd5d2d3[_0x43e509(0xc3)](fetch,_0x2f0ced+'/api/v1/mcp/features/'+_0x445955,{'method':_0x43e509(0xb7),'headers':{'Authorization':'Bearer\x20'+_0x69a768}});if(!_0x400870['ok']){const _0x5cfdb1=await _0x400870['text']();throw new Error(_0x43e509(0xa8)+_0x5cfdb1);}}function _0x1625(_0x198721,_0x4dfd4a){_0x198721=_0x198721-0x94;const _0x13f288=_0x13f2();let _0x162571=_0x13f288[_0x198721];return _0x162571;}export async function restoreFeature(_0x2c7dcf){const _0x2bd784=_0x1625,_0x2f82d9={'ufwuU':function(_0xaf76c){return _0xaf76c();},'QheGD':function(_0x10cd67,_0x346f0a,_0x3b3efb){return _0x10cd67(_0x346f0a,_0x3b3efb);},'xfZAp':'POST'},_0x330876=await _0x2f82d9[_0x2bd784(0xd1)](getToken);if(!_0x330876)throw new Error(_0x2bd784(0xb8));const _0xcf63cc=getApiBaseUrl(),_0x5b49b5=await _0x2f82d9['QheGD'](fetch,_0xcf63cc+'/api/v1/mcp/features/'+_0x2c7dcf+_0x2bd784(0xe4),{'method':_0x2f82d9[_0x2bd784(0xe2)],'headers':{'Authorization':_0x2bd784(0xa1)+_0x330876}});if(!_0x5b49b5['ok']){const _0x3448b2=await _0x5b49b5[_0x2bd784(0xcf)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x3448b2);}}
|