@ranger-testing/ranger-cli 3.1.5-alpha.9b89f77-48 → 3.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4bac8e=_0x24ab;(function(_0x3cefb7,_0xb08a73){const _0xdb78b=_0x24ab,_0x1f311c=_0x3cefb7();while(!![]){try{const _0x2215df=-parseInt(_0xdb78b(0x1e1))/0x1*(parseInt(_0xdb78b(0x1b2))/0x2)+-parseInt(_0xdb78b(0x1ea))/0x3*(parseInt(_0xdb78b(0x1e4))/0x4)+parseInt(_0xdb78b(0x191))/0x5+parseInt(_0xdb78b(0x196))/0x6+parseInt(_0xdb78b(0x178))/0x7+-parseInt(_0xdb78b(0x1a4))/0x8+parseInt(_0xdb78b(0x195))/0x9;if(_0x2215df===_0xb08a73)break;else _0x1f311c['push'](_0x1f311c['shift']());}catch(_0x59cfa0){_0x1f311c['push'](_0x1f311c['shift']());}}}(_0x34c4,0x74eba));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x25107d from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isCachedSessionLive,isInteractive,needsTunnel,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x4a6003){const _0xc96b23=_0x24ab,_0x3b83f6={'yWUQK':'invalid-url'};try{return new URL(_0x4a6003)[_0xc96b23(0x17a)];}catch{return _0x3b83f6[_0xc96b23(0x1ac)];}}function errorMessageForTelemetry(_0x179eab){const _0x52e210={'TUFyg':function(_0x4e1e8a,_0x2c14db){return _0x4e1e8a instanceof _0x2c14db;}};return _0x52e210['TUFyg'](_0x179eab,Error)?_0x179eab['message']:undefined;}function trackBridgeEvent(_0x215f30,_0x581bac){const _0x20e872=_0x24ab,_0x42c35f={'gPEZo':function(_0x575a9d,_0x4a6a95){return _0x575a9d===_0x4a6a95;},'SDnvr':'local_ws_error','xnpeW':'tunnel_bridge'};if(!_0x215f30)return;const _0x19ce99={'tunnelSessionId':_0x581bac[_0x20e872(0x15f)],'tunnelEventType':_0x581bac['type'],'connectionId':_0x581bac[_0x20e872(0x15d)],'code':_0x581bac['code'],'reason':_0x581bac['reason'],'error':_0x581bac[_0x20e872(0x1e3)],'elapsedMs':_0x581bac[_0x20e872(0x18a)],'activeLocalConnections':_0x581bac[_0x20e872(0x17d)],'pendingLocalConnections':_0x581bac['pendingLocalConnections']};_0x215f30[_0x20e872(0x1d4)]('tunnel_bridge_event',_0x19ce99),(_0x42c35f[_0x20e872(0x1ef)](_0x581bac[_0x20e872(0x1b5)],_0x20e872(0x162))||_0x42c35f['gPEZo'](_0x581bac[_0x20e872(0x1b5)],_0x42c35f['SDnvr']))&&void _0x215f30[_0x20e872(0x1e8)](_0x42c35f[_0x20e872(0x1a0)],new Error(_0x581bac['error']??_0x581bac['type']),_0x19ce99);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x4d103c=_0x24ab,_0x359024={'jhBjS':_0x4d103c(0x1f8)},_0x2de857=await getToken();if(!_0x2de857)throw new Error(_0x359024['jhBjS']);return _0x2de857;}function _0x34c4(){const _0x530407=['utf-8','ambiguous','\x20\x20forceLogin\x20enabled\x20for\x20\x22','prompt','Auth\x20environment\x20\x22','4726449fSrmFH','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','host','/api/v1/tunnel/sessions/','confirm','activeLocalConnections','GrmOq','\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.','tunnel_login_request','JUpIu','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','statusText','join','RCVPe','not_configured','storageState','newPage','ukAoe','elapsedMs','\x20\x20No\x20live\x20session\x20for\x20\x22','goto','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','catch','you\x27re\x20now\x20at\x20\x22','trim','2392265dtaQjI','VbCNt','string','oDGNs','5826528FyXuRY','4154766WEmCFI','tKnjN','log','\x22\x20failed\x20validation\x20—\x20refreshing...','RANGER_TUNNEL_LOGIN_HEADED','test_output','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','settings','YFLYX','\x22\x20matched\x20by\x20host\x20for\x20','xnpeW','sessionState','CwJlE','\x20\x20Cloud\x20session\x20for\x20\x22','5353200TkzmPb','BDsBV','\x22.\x0a','clientIp','):\x20','code','tzuVy','password','yWUQK','rUnTn','fBcfq','FaOjJ','isArray','environmentKey','42EjGzBJ','NBrNy','status','type','ehaaD','Iojya','TIliU','defaultEnvironmentKey','WWNhd','username','invalidateOn','trackPhaseStart','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','env','POST','JbsfZ','auth','/api/v1/profiles/','gywRK','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','length','/login','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','storageStatePath','session_state','zITYm','\x20\x20Login\x20successful.\x20Session\x20cached.','TEjIF','/session','browserOptions','RVWzM','profiles','wsEndpoint','AbXym','trackPhaseEnd','userAgent','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','detail','airpa','application/json','force',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','setupHeaders','parse','sessionCheckPath','forceLogin','Cloud\x20profile\x20\x22','25131cLrkNi','replace','error','188UdWRty','telemetry','yfxIj','EUtLH','trackPhaseError','/api/v1/profiles','52194pkyJrC','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','tunnel_login_setup','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','RANGER_TEST_USERNAME','gPEZo','glEgc','xElKP','\x22\x20on\x20profile\x20\x22','obLFB','domains','\x22,\x20refreshing\x20session...','IwzfU','RANGER_TEST_PASSWORD','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','agent','environments','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','/api/v1/tunnel/sessions','aDFiA','iUJJr','\x22;\x20using\x20\x22','dLDnj','jGlTJ','\x20\x20Options:\x0a','WrmhS','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','EuwXC','TDuxI','success','connectionId','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','sessionId','name','true','tunnel_error','cookies','launch','organizationId','loginInstructions','\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','tunnel','raw','stringify','close','key','effectiveBaseUrl','ApiError','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','Browser\x20login\x20timed\x20out\x20after\x20','json','targetUrl'];_0x34c4=function(){return _0x530407;};return _0x34c4();}async function apiRequest(_0x318ca3,_0x17cd40={}){const _0x26eb7e=_0x24ab,_0x5362e8={'RVWzM':function(_0x37a73f){return _0x37a73f();},'TIliU':function(_0x144200,_0x3bb011,_0x5e6b89){return _0x144200(_0x3bb011,_0x5e6b89);},'QOykO':function(_0xae88ab,_0x13feb0){return _0xae88ab===_0x13feb0;},'dLDnj':_0x26eb7e(0x193),'yfxIj':function(_0x563fa1,_0x744b6e){return _0x563fa1===_0x744b6e;}},_0x5c0eef=await _0x5362e8[_0x26eb7e(0x1d0)](requireToken),_0x5e3e6f=_0x5362e8['RVWzM'](getApiBaseUrl),_0x4c3e0c=await _0x5362e8[_0x26eb7e(0x1b8)](fetch,''+_0x5e3e6f+_0x318ca3,{..._0x17cd40,'headers':{'Authorization':'Bearer\x20'+_0x5c0eef,'Content-Type':_0x26eb7e(0x1d9),..._0x17cd40['headers']??{}}});if(!_0x4c3e0c['ok']){let _0x302983='',_0x180197;try{const _0x413609=await _0x4c3e0c[_0x26eb7e(0x171)](),_0x29963b=(_0x5362e8['QOykO'](typeof _0x413609[_0x26eb7e(0x1e3)],'string')?_0x413609['error']:undefined)??JSON[_0x26eb7e(0x16a)](_0x413609);_0x302983=_0x29963b;typeof _0x413609['test_output']===_0x5362e8[_0x26eb7e(0x155)]&&_0x413609[_0x26eb7e(0x19b)]&&(_0x302983=_0x302983+'\x0a'+_0x413609[_0x26eb7e(0x19b)]);if(typeof _0x413609[_0x26eb7e(0x1a9)]===_0x5362e8[_0x26eb7e(0x155)])_0x180197=_0x413609[_0x26eb7e(0x1a9)];}catch{_0x302983=_0x4c3e0c[_0x26eb7e(0x183)];}throw new ApiError('API\x20request\x20'+_0x318ca3+'\x20failed\x20('+_0x4c3e0c[_0x26eb7e(0x1b4)]+_0x26eb7e(0x1a8)+_0x302983,_0x4c3e0c[_0x26eb7e(0x1b4)],_0x302983,_0x180197);}if(_0x5362e8[_0x26eb7e(0x1e6)](_0x4c3e0c['status'],0xcc))return undefined;return _0x4c3e0c[_0x26eb7e(0x171)]();}export class ApiError extends Error{[_0x4bac8e(0x1b4)];['detail'];[_0x4bac8e(0x1a9)];constructor(_0x593625,_0x50ecec,_0x4a31da,_0x4bd011){const _0x425495=_0x4bac8e,_0x32be43={'qGmCu':_0x425495(0x16e)};super(_0x593625),this[_0x425495(0x1b4)]=_0x50ecec,this[_0x425495(0x1d7)]=_0x4a31da,this['code']=_0x4bd011,this['name']=_0x32be43['qGmCu'];}}export async function fetchCloudProfile(_0x57bc9a){const _0x113e53=_0x4bac8e,_0x59776e={'WrmhS':function(_0x422354,_0x464e23){return _0x422354(_0x464e23);},'IYsXf':function(_0x375114,_0x153df){return _0x375114(_0x153df);},'rNNTA':function(_0x35920f,_0x272db9){return _0x35920f instanceof _0x272db9;}};try{return await _0x59776e[_0x113e53(0x158)](apiRequest,_0x113e53(0x1c3)+_0x59776e['IYsXf'](encodeURIComponent,_0x57bc9a));}catch(_0x50543c){if(_0x59776e['rNNTA'](_0x50543c,ApiError)&&_0x50543c[_0x113e53(0x1b4)]===0x194)return null;throw _0x50543c;}}export async function listCloudProfiles(){const _0x92e9ee=_0x4bac8e,_0x1f8436={'oDGNs':_0x92e9ee(0x1e9)},_0x5688b6=await apiRequest(_0x1f8436[_0x92e9ee(0x194)]);return _0x5688b6[_0x92e9ee(0x1d1)];}export async function deleteCloudProfile(_0x111084){const _0xc808a4=_0x4bac8e,_0x25af54={'sAOSI':function(_0x5424b2,_0x196c79,_0x26f620){return _0x5424b2(_0x196c79,_0x26f620);},'TDuxI':function(_0x5a456d,_0x3a05a0){return _0x5a456d===_0x3a05a0;}};try{await _0x25af54['sAOSI'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x111084),{'method':'DELETE'});}catch(_0x3a3e6d){if(_0x3a3e6d instanceof ApiError&&_0x25af54[_0xc808a4(0x15b)](_0x3a3e6d[_0xc808a4(0x1b4)],0x194))throw new Error(_0xc808a4(0x1e0)+_0x111084+'\x22\x20not\x20found.');throw _0x3a3e6d;}}function _0x24ab(_0x10993a,_0x4c2f4a){_0x10993a=_0x10993a-0x155;const _0x34c435=_0x34c4();let _0x24ab02=_0x34c435[_0x10993a];return _0x24ab02;}export async function createCloudProfile(_0x30bed3,_0x5a84ab,_0x2b13e9={}){const _0x9e19cf=_0x4bac8e,_0x46b475={'pHyyi':function(_0x3889ed,_0x1ad666){return _0x3889ed>_0x1ad666;},'CwJlE':function(_0x468684,_0x3b5b48,_0xad5980){return _0x468684(_0x3b5b48,_0xad5980);},'CPhIC':_0x9e19cf(0x1c0)},_0x37135a={'name':_0x30bed3};if(_0x5a84ab)_0x37135a['environment_key']=_0x5a84ab;_0x2b13e9[_0x9e19cf(0x19d)]&&_0x46b475['pHyyi'](Object['keys'](_0x2b13e9[_0x9e19cf(0x19d)])['length'],0x0)&&(_0x37135a[_0x9e19cf(0x19d)]=_0x2b13e9['settings']);if(_0x2b13e9[_0x9e19cf(0x1bb)])_0x37135a['username']=_0x2b13e9[_0x9e19cf(0x1bb)];if(_0x2b13e9[_0x9e19cf(0x1ab)])_0x37135a['password']=_0x2b13e9[_0x9e19cf(0x1ab)];return await _0x46b475[_0x9e19cf(0x1a2)](apiRequest,'/api/v1/profiles',{'method':_0x46b475['CPhIC'],'body':JSON[_0x9e19cf(0x16a)](_0x37135a)});}export async function uploadCloudProfileSession(_0x32a4b1,_0x3596be){const _0x119e72=_0x4bac8e,_0x3c543a={'tmOTI':function(_0x82c93f,_0x2ad552,_0x14faaa){return _0x82c93f(_0x2ad552,_0x14faaa);}};return await _0x3c543a['tmOTI'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x32a4b1)+_0x119e72(0x1ce),{'method':'POST','body':JSON['stringify']({'session_state':_0x3596be})});}export async function saveCloudProfileCredentials(_0x274aa6,_0x2033da,_0x39dd60){const _0x5d211e=_0x4bac8e,_0x11e566={'sYDRR':'PUT'};await apiRequest(_0x5d211e(0x1c3)+encodeURIComponent(_0x274aa6),{'method':_0x11e566['sYDRR'],'body':JSON[_0x5d211e(0x16a)]({'username':_0x2033da,'password':_0x39dd60})});}export async function fetchAuthConfig(){const _0x5badf7=_0x4bac8e;try{const _0x27a2be=await apiRequest('/api/v1/profiles/auth-config');return _0x27a2be['auth_config'];}catch(_0x3399d8){return _0x3399d8 instanceof ApiError&&_0x3399d8['status']!==0x194&&console[_0x5badf7(0x1e3)](_0x5badf7(0x16f)+_0x3399d8['message']),null;}}async function createTunnelSession(_0x529c22){const _0x1b9c82=_0x4bac8e;return await apiRequest(_0x1b9c82(0x1fc),{'method':'POST','body':JSON['stringify']({'targetUrl':_0x529c22,'mode':_0x1b9c82(0x1f9)})});}async function deleteTunnelSession(_0x14bea9){const _0x157009=_0x4bac8e,_0x20dad2={'JUpIu':'DELETE'};await apiRequest(_0x157009(0x17b)+_0x14bea9,{'method':_0x20dad2[_0x157009(0x181)]});}export function pickAdHocEnvKey(_0x1ed67e,_0x53ffd8,_0x5cc9ee){const _0x4d07fe=_0x4bac8e,_0x54a498={'MOFvV':function(_0xabcf8c,_0x21ff8d,_0x4ce2e9){return _0xabcf8c(_0x21ff8d,_0x4ce2e9);},'TEjIF':function(_0x1beef4,_0x151397){return _0x1beef4 in _0x151397;},'Iojya':_0x4d07fe(0x16c),'EuwXC':function(_0x4033fc,_0x52ad05){return _0x4033fc(_0x52ad05);},'glEgc':function(_0x3124ba,_0x21d6a3){return _0x3124ba+_0x21d6a3;},'aDFiA':function(_0x3f38c3,_0x4c2585){return _0x3f38c3+_0x4c2585;}};if(_0x5cc9ee){if(!_0x1ed67e?.['environments']?.[_0x5cc9ee]){const _0x592360=Object['keys'](_0x1ed67e?.[_0x4d07fe(0x1fa)]??{});throw new Error(_0x4d07fe(0x177)+_0x5cc9ee+'\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.'+(_0x592360[_0x4d07fe(0x1c6)]?'\x20Available:\x20'+_0x592360[_0x4d07fe(0x184)](',\x20')+'.':_0x4d07fe(0x167))+'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)');}return _0x5cc9ee;}if(!_0x1ed67e)return null;if(_0x53ffd8){const _0x48d736=_0x54a498['MOFvV'](matchAuthEnvironmentExact,_0x53ffd8,_0x1ed67e);if(_0x48d736)return _0x48d736;const _0x37ba3b=matchAuthEnvironmentByHost(_0x53ffd8,_0x1ed67e);if(_0x37ba3b&&_0x54a498[_0x4d07fe(0x1cd)](_0x54a498[_0x4d07fe(0x1b7)],_0x37ba3b))return console[_0x4d07fe(0x198)]('\x20\x20Auth\x20env\x20\x22'+_0x37ba3b['key']+_0x4d07fe(0x19f)+_0x53ffd8+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x37ba3b['key'];if(_0x37ba3b&&_0x4d07fe(0x174)in _0x37ba3b)throw new Error(_0x4d07fe(0x1be)+_0x37ba3b[_0x4d07fe(0x174)][_0x4d07fe(0x184)](',\x20')+_0x4d07fe(0x1db));if(_0x54a498[_0x4d07fe(0x15a)](needsTunnel,_0x53ffd8))throw new Error(_0x54a498['glEgc'](_0x54a498[_0x4d07fe(0x1f0)](_0x54a498['glEgc']('No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22'+_0x53ffd8+_0x4d07fe(0x1a6)+'\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a',_0x4d07fe(0x157)),'\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'+_0x53ffd8[_0x4d07fe(0x1e2)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a')+('\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20'+_0x53ffd8+_0x4d07fe(0x17f)));}if(_0x1ed67e['defaultEnvironmentKey'])return _0x1ed67e['defaultEnvironmentKey'];const _0x156e0f=Object['keys'](_0x1ed67e[_0x4d07fe(0x1fa)]??{});if(_0x156e0f[_0x4d07fe(0x1c6)]===0x1)return _0x156e0f[0x0];if(_0x156e0f['length']===0x0)return null;throw new Error(_0x54a498[_0x4d07fe(0x1fd)]('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x156e0f['join'](',\x20')+').\x20','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(_0x3380e2,_0x48b488,_0x3f3d92){if(!_0x48b488||_0x48b488===_0x3f3d92)return _0x3380e2;return _0x3380e2+':'+_0x48b488;}export async function resolveAdHocProfile(_0x4854e9={},_0x117e51=process[_0x4bac8e(0x1bf)]){const _0xb8c278=_0x4bac8e,_0x26a616={'RouDM':'none','IwzfU':function(_0x3035b7,_0x57aa5c){return _0x3035b7(_0x57aa5c);},'WWNhd':function(_0x29a87b,_0x65f629,_0x4acbfc,_0x3460f6){return _0x29a87b(_0x65f629,_0x4acbfc,_0x3460f6);}},_0x5d4d2e=_0x117e51['RANGER_TEST_USERNAME'];if(!_0x5d4d2e)return null;const _0x3c5f7e=await fetchAuthConfig(),_0x230721=pickAdHocEnvKey(_0x3c5f7e,_0x4854e9[_0xb8c278(0x172)],_0x4854e9['envKey']);let _0x1c45cc=adHocProfileName(_0x5d4d2e,_0x230721,_0x3c5f7e?.[_0xb8c278(0x1b9)]),_0x1c4e96=await fetchCloudProfile(_0x1c45cc);_0x1c4e96&&_0x230721&&_0x1c4e96[_0xb8c278(0x1b1)]!==_0x230721&&(console['log']('\x20\x20Cloud\x20profile\x20\x22'+_0x1c45cc+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x1c4e96['environmentKey']??_0x26a616['RouDM'])+_0xb8c278(0x1eb)+_0x230721+_0xb8c278(0x1ff)+_0x5d4d2e+':'+_0x230721+'\x22\x20instead.'),_0x1c45cc=_0x5d4d2e+':'+_0x230721,_0x1c4e96=await _0x26a616[_0xb8c278(0x1f6)](fetchCloudProfile,_0x1c45cc));if(_0x1c4e96)return{'name':_0x1c4e96['name'],'profile':_0x1c4e96};const _0x455ccd=_0x117e51[_0xb8c278(0x1f7)],_0x5ad473=await _0x26a616[_0xb8c278(0x1ba)](createCloudProfile,_0x1c45cc,_0x230721??undefined,{'username':_0x5d4d2e,'password':_0x455ccd});return console[_0xb8c278(0x198)]('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x5ad473['name']+'\x22\x20for\x20'+_0x5d4d2e+(_0x230721?'\x20(auth\x20env:\x20'+_0x230721+')':'')),{'name':_0x5ad473[_0xb8c278(0x160)],'profile':_0x5ad473};}export async function writeSessionToLocalCache(_0x1a9fcc,_0xf19486,_0x2b0e4c,_0x40e459,_0x138a5f,_0x2ac039,_0x25b3c4){const _0x4b4407=_0x4bac8e,_0x481457={'TRuqH':function(_0x49729d){return _0x49729d();},'xoBUd':_0x4b4407(0x1c2),'xElKP':function(_0x5bf479,_0x359553,_0xcb6db8){return _0x5bf479(_0x359553,_0xcb6db8);},'vUxiH':function(_0x54f1d3,_0x4c48d8,_0x413b7e){return _0x54f1d3(_0x4c48d8,_0x413b7e);},'XCGNn':function(_0x1a4b05,_0x2279be,_0x4b8cf6){return _0x1a4b05(_0x2279be,_0x4b8cf6);},'WGxny':function(_0x5f4b57,_0x214d99){return _0x5f4b57(_0x214d99);}},_0xced09e=sessionCacheHash({'orgId':_0xf19486,'profileName':_0x1a9fcc,'effectiveBaseUrl':_0x2b0e4c,'setupHeaders':_0x40e459,'invalidateOn':_0x25b3c4?.['invalidateOn'],'userAgent':_0x25b3c4?.[_0x4b4407(0x1d5)],'clientIp':_0x25b3c4?.['clientIp']}),_0x4b669f=getSessionCachePath(_0xced09e,_0x1a9fcc),_0x1913ea=join(_0x481457['TRuqH'](getRangerHomeDir),_0x481457['xoBUd']);!existsSync(_0x1913ea)&&await _0x481457[_0x4b4407(0x1f1)](mkdir,_0x1913ea,{'recursive':!![]});const _0x4ac7aa={..._0x138a5f};_0x2ac039&&_0x2ac039['length']>0x0&&Array[_0x4b4407(0x1b0)](_0x4ac7aa['cookies'])&&(_0x4ac7aa['cookies']=_0x481457['vUxiH'](duplicateCookiesForDomains,_0x4ac7aa[_0x4b4407(0x163)],_0x2ac039));const _0xf9c022={'cached_at':new Date()['toISOString'](),'session_state':_0x4ac7aa};await _0x481457['XCGNn'](writeFile,_0x4b669f,JSON['stringify'](_0xf9c022,null,0x2));const _0x2909da=_0x481457['WGxny'](getStorageStatePath,_0x4b669f);return await writeFile(_0x2909da,JSON['stringify'](_0x4ac7aa,null,0x2)),_0x2909da;}export async function checkLocalCache(_0x5edfe5,_0x1a3a95,_0xac23d9,_0x46f20c,_0x2b0ca2){const _0x524ad2=_0x4bac8e,_0x10bf1b={'FZoxY':function(_0x1df707,_0x196f9f,_0x4e5b02){return _0x1df707(_0x196f9f,_0x4e5b02);},'nEVdD':function(_0xae44d6,_0x14b03f){return _0xae44d6(_0x14b03f);},'iUJJr':function(_0x2f6fdf,_0x58cb52,_0x3ed551){return _0x2f6fdf(_0x58cb52,_0x3ed551);}},_0x518f91=sessionCacheHash({'orgId':_0x1a3a95,'profileName':_0x5edfe5,'effectiveBaseUrl':_0xac23d9,'setupHeaders':_0x46f20c,'invalidateOn':_0x2b0ca2?.[_0x524ad2(0x1bc)],'userAgent':_0x2b0ca2?.[_0x524ad2(0x1d5)],'clientIp':_0x2b0ca2?.[_0x524ad2(0x1a7)]}),_0x4ba44a=_0x10bf1b['FZoxY'](getSessionCachePath,_0x518f91,_0x5edfe5),_0x569139=getStorageStatePath(_0x4ba44a);if(!existsSync(_0x4ba44a)||!_0x10bf1b['nEVdD'](existsSync,_0x569139))return null;try{const _0x25b567=await _0x10bf1b[_0x524ad2(0x1fe)](readFile,_0x4ba44a,_0x524ad2(0x173));return JSON[_0x524ad2(0x1dd)](_0x25b567),{'storageStatePath':_0x569139};}catch{return null;}}function launchRealBrowser(){const _0x8f7cc4=_0x4bac8e;return chromium[_0x8f7cc4(0x164)]({'headless':!![]});}function emitSessionValidationHint(_0x54de2f,_0x4f5542){const _0x17f3e3=_0x4bac8e;if(!_0x4f5542||!_0x4f5542[_0x17f3e3(0x1f4)]?.[_0x17f3e3(0x1c6)])return;let _0x52c08a;try{_0x52c08a=new URL(_0x54de2f);}catch{return;}const _0x5b577e=[];for(const _0xf24fb2 of _0x4f5542[_0x17f3e3(0x1f4)]){try{_0x5b577e['push']({'raw':_0xf24fb2,'url':new URL(_0xf24fb2)});}catch{}}if(_0x5b577e['length']===0x0)return;if(_0x5b577e['some'](_0x5090f5=>_0x5090f5['url']['origin']===_0x52c08a['origin']))return;const _0x4a2d08=_0x5b577e['map'](_0x26e81b=>'\x22'+_0x26e81b[_0x17f3e3(0x169)]+'\x22')[_0x17f3e3(0x184)](',\x20');console[_0x17f3e3(0x198)](_0x17f3e3(0x19c)+_0x4a2d08+';\x20'+(_0x17f3e3(0x18f)+_0x54de2f+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20')+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x2c6eb5,_0x110e49){const _0x3ac140=_0x4bac8e,_0x2f4e29={'zITYm':'POST','SVpwh':function(_0x3f17dd,_0x1aca25){return _0x3f17dd===_0x1aca25;},'rUnTn':_0x3ac140(0x186)},_0x5af870=process[_0x3ac140(0x1bf)][_0x3ac140(0x1ee)],_0x32fb79=process['env'][_0x3ac140(0x1f7)],_0x50e0dc={};if(_0x5af870)_0x50e0dc[_0x3ac140(0x1bb)]=_0x5af870;if(_0x32fb79)_0x50e0dc[_0x3ac140(0x1ab)]=_0x32fb79;if(_0x110e49?.['force'])_0x50e0dc[_0x3ac140(0x1da)]=!![];if(_0x110e49?.[_0x3ac140(0x172)])_0x50e0dc['target_url']=_0x110e49[_0x3ac140(0x172)];_0x110e49?.[_0x3ac140(0x168)]&&(_0x50e0dc['tunnel_session_id']=_0x110e49['tunnel'][_0x3ac140(0x15f)],_0x50e0dc['pw_endpoint']=_0x110e49['tunnel']['pwEndpoint']);try{return await apiRequest(_0x3ac140(0x1c3)+encodeURIComponent(_0x2c6eb5)+_0x3ac140(0x1c7),{'method':_0x2f4e29[_0x3ac140(0x1cb)],'body':JSON['stringify'](_0x50e0dc)});}catch(_0x595c9b){if(_0x595c9b instanceof ApiError&&_0x595c9b[_0x3ac140(0x1b4)]===0x190&&_0x2f4e29['SVpwh'](_0x595c9b[_0x3ac140(0x1a9)],'not_configured'))return{'status':_0x2f4e29[_0x3ac140(0x1ad)],'error':_0x595c9b[_0x3ac140(0x1d7)]};throw _0x595c9b;}}async function serverSideLoginWithOptionalTunnel(_0x4df715,_0xe867b,_0x3f038c={}){const _0x4cf0c2=_0x4bac8e,_0xfe303c={'FxnuU':function(_0xc0e38c,_0x37f536){return _0xc0e38c(_0x37f536);},'jGlTJ':function(_0x3b32fb,_0xe97824){return _0x3b32fb===_0xe97824;},'NBrNy':_0x4cf0c2(0x1ec),'ySoso':_0x4cf0c2(0x1ed),'yRkrN':function(_0x59c51f,_0x254ff7){return _0x59c51f(_0x254ff7);},'JbsfZ':_0x4cf0c2(0x180),'pfHMb':function(_0x2904e1,_0x5c0523,_0x126e56){return _0x2904e1(_0x5c0523,_0x126e56);},'dRMDd':function(_0x5cfc68,_0x3d48c2){return _0x5cfc68(_0x3d48c2);},'YFLYX':function(_0x3d0abb,_0x192989){return _0x3d0abb(_0x192989);}};if(!_0xfe303c['FxnuU'](needsTunnel,_0xe867b))return await serverSideLogin(_0x4df715,{'force':_0x3f038c['force']});let _0x412a51=null,_0x37f1c1=null,_0x38e643=null,_0x3a4cbd=null,_0x185ce8=![];const _0x19798b=process['env'][_0x4cf0c2(0x19a)]?.['toLowerCase'](),_0x4df15c=_0x19798b==='1'||_0xfe303c[_0x4cf0c2(0x156)](_0x19798b,_0x4cf0c2(0x161)),_0x1a1a8c={'profileName':_0x4df715,'targetUrlHost':targetHostForTelemetry(_0xe867b),'tunnelRequired':!![],'forceLogin':Boolean(_0x3f038c[_0x4cf0c2(0x1da)]),'localBrowserServerHeaded':_0x4df15c};try{_0x3f038c[_0x4cf0c2(0x1e5)]?.[_0x4cf0c2(0x1bd)](_0xfe303c[_0x4cf0c2(0x1b3)],_0x1a1a8c);_0x4df15c&&console[_0x4cf0c2(0x198)](_0xfe303c['ySoso']);_0x412a51=await launchBrowserServer({'headless':!_0x4df15c}),_0x37f1c1=await createTunnelSession(_0xe867b);const _0x2c3756=await requireToken();_0x38e643=await _0xfe303c['yRkrN'](createTunnelBridge,{'localWsUrl':_0x412a51[_0x4cf0c2(0x1d2)],'tunnelServerUrl':_0x37f1c1['tunnelUrl'],'sessionId':_0x37f1c1[_0x4cf0c2(0x15f)],'apiKey':_0x2c3756,'onError':_0x4916d5=>{_0x3a4cbd=_0x4916d5;},'onClose':()=>{const _0x3c73a5=_0x4cf0c2;_0x3a4cbd??=new Error(_0x3c73a5(0x18d)+_0x4df715);},'onEvent':_0x3c76df=>trackBridgeEvent(_0x3f038c[_0x4cf0c2(0x1e5)],_0x3c76df)}),_0x3f038c[_0x4cf0c2(0x1e5)]?.[_0x4cf0c2(0x1d4)](_0xfe303c[_0x4cf0c2(0x1b3)],{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1[_0x4cf0c2(0x15f)],'localBrowserServer':!![],'localBrowserServerHeaded':_0x4df15c}),_0x185ce8=!![];try{return _0x3f038c['telemetry']?.[_0x4cf0c2(0x1bd)](_0xfe303c[_0x4cf0c2(0x1c1)],{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1['sessionId']}),await _0xfe303c['pfHMb'](serverSideLogin,_0x4df715,{'force':_0x3f038c['force'],'targetUrl':_0xe867b,'tunnel':{'sessionId':_0x37f1c1[_0x4cf0c2(0x15f)],'pwEndpoint':_0x37f1c1['pwEndpoint']}})['then'](_0x185586=>{const _0x44bf01=_0x4cf0c2;return _0x3f038c['telemetry']?.[_0x44bf01(0x1d4)](_0x44bf01(0x180),{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1?.[_0x44bf01(0x15f)],'loginStatus':_0x185586[_0x44bf01(0x1b4)],'hasSessionState':_0xfe303c['FxnuU'](Boolean,_0x185586[_0x44bf01(0x1ca)]),'hasTestOutput':Boolean(_0x185586[_0x44bf01(0x19b)]),'bridgeError':_0xfe303c['FxnuU'](errorMessageForTelemetry,_0x3a4cbd)}),_0x185586;});}catch(_0x420eec){await _0x3f038c['telemetry']?.[_0x4cf0c2(0x1e8)](_0xfe303c['JbsfZ'],_0x3a4cbd??_0x420eec,{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1['sessionId'],'bridgeError':_0xfe303c['dRMDd'](errorMessageForTelemetry,_0x3a4cbd)});throw _0x3a4cbd??_0x420eec;}}catch(_0x5f38f2){!_0x185ce8&&await _0x3f038c[_0x4cf0c2(0x1e5)]?.[_0x4cf0c2(0x1e8)](_0x4cf0c2(0x1ec),_0x5f38f2,{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1?.[_0x4cf0c2(0x15f)]});throw _0x5f38f2;}finally{(_0x37f1c1||_0x412a51||_0x38e643)&&(_0x3f038c['telemetry']?.[_0x4cf0c2(0x1bd)]('tunnel_login_cleanup',{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1?.[_0x4cf0c2(0x15f)]}),_0x38e643?.[_0x4cf0c2(0x16b)](),_0x412a51&&await _0x412a51[_0x4cf0c2(0x16b)]()['catch'](()=>{}),_0x37f1c1&&await _0xfe303c[_0x4cf0c2(0x19e)](deleteTunnelSession,_0x37f1c1['sessionId'])[_0x4cf0c2(0x18e)](()=>{}),_0x3f038c[_0x4cf0c2(0x1e5)]?.[_0x4cf0c2(0x1d4)]('tunnel_login_cleanup',{..._0x1a1a8c,'tunnelSessionId':_0x37f1c1?.[_0x4cf0c2(0x15f)]}));}}export async function manualBrowserLogin(_0xfdd2f7,_0x11e038,_0xcb9f00={}){const _0x217c5f=_0x4bac8e,_0x4ff482={'ukAoe':function(_0x68c206){return _0x68c206();},'EUtLH':function(_0x2adf3b,_0x1845f5,_0x31c07a){return _0x2adf3b(_0x1845f5,_0x31c07a);},'tKnjN':function(_0x5ec392){return _0x5ec392();},'tzuVy':function(_0x1e59dd,_0x164b1b){return _0x1e59dd+_0x164b1b;},'AbXym':'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','FaOjJ':'about:blank','aYoIo':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.'};if(!_0x4ff482[_0x217c5f(0x197)](isInteractive))throw new Error(_0x4ff482[_0x217c5f(0x1aa)](_0x4ff482[_0x217c5f(0x1aa)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0xfdd2f7['name']+_0x217c5f(0x1a6),'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'),_0x4ff482[_0x217c5f(0x1d3)]));const _0x22502b=_0x11e038&&_0x11e038[_0x217c5f(0x1f4)][_0x217c5f(0x1c6)]>0x0?_0x11e038[_0x217c5f(0x1f4)][0x0]:_0x4ff482[_0x217c5f(0x1af)];console[_0x217c5f(0x198)]('\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.'),console['log']('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x10f889=>setTimeout(_0x10f889,0x7d0));const _0x4486d3=await chromium[_0x217c5f(0x164)]({'headless':![]});let _0x225cd9=null;try{const _0x1479ae={'ignoreHTTPSErrors':!![]};_0x11e038?.['setupHeaders']&&(_0x1479ae['extraHTTPHeaders']=_0x11e038['setupHeaders']);const _0x15d372=await _0x4486d3['newContext'](_0x1479ae);await addProfileSetupBanner(_0x15d372);const _0x187a4d=await _0x15d372[_0x217c5f(0x188)]();await _0x187a4d[_0x217c5f(0x18c)](_0x22502b);let _0x24d02b=![];await new Promise(_0x4d8059=>{const _0x21d1c4=_0x217c5f,_0xfa511b=_0x4ff482[_0x21d1c4(0x1e7)](setTimeout,()=>{const _0x2a9ac1=_0x21d1c4;_0x24d02b=!![],console['error'](_0x2a9ac1(0x170)+MANUAL_LOGIN_TIMEOUT_MS/0xea60+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x4ff482['ukAoe'](_0x4d8059);},MANUAL_LOGIN_TIMEOUT_MS);_0x187a4d['on']('close',async()=>{const _0x2bac68=_0x21d1c4;clearTimeout(_0xfa511b);try{const _0x58901c=await _0x15d372[_0x2bac68(0x187)]();_0x225cd9=_0x58901c;}catch{}_0x4ff482[_0x2bac68(0x189)](_0x4d8059);});});if(_0x24d02b&&!_0x225cd9)throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x4486d3[_0x217c5f(0x16b)]()[_0x217c5f(0x18e)](()=>{});}if(!_0x225cd9)throw new Error(_0x4ff482['aYoIo']);return _0xcb9f00['persistSessionState']!==![]&&await _0x4ff482['EUtLH'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0xfdd2f7['name'])+'/session',{'method':_0x217c5f(0x1c0),'body':JSON['stringify']({'session_state':_0x225cd9,'updated_by':'cli:manual-login'})}),{'sessionState':_0x225cd9};}export async function promptSaveCredentials(_0x59d87e){const _0x4ac7a1=_0x4bac8e,_0x3f3550={'ehaaD':function(_0x20efb,_0x2f9d7e){return _0x20efb||_0x2f9d7e;},'VbCNt':_0x4ac7a1(0x182),'isGYn':function(_0x42fd8e,_0x5533f1,_0x45255c){return _0x42fd8e(_0x5533f1,_0x45255c);},'fBcfq':'PUT'},_0x519c3a=process['env'][_0x4ac7a1(0x1ee)],_0x4650cd=process[_0x4ac7a1(0x1bf)]['RANGER_TEST_PASSWORD'];if(_0x3f3550[_0x4ac7a1(0x1b6)](!_0x519c3a,!_0x4650cd))return;if(!isInteractive())return;const {save:_0x9b5fa5}=await _0x25107d[_0x4ac7a1(0x176)]([{'type':_0x4ac7a1(0x17c),'name':'save','message':_0x3f3550[_0x4ac7a1(0x192)],'default':![]}]);if(!_0x9b5fa5)return;await _0x3f3550['isGYn'](apiRequest,_0x4ac7a1(0x1c3)+encodeURIComponent(_0x59d87e),{'method':_0x3f3550[_0x4ac7a1(0x1ae)],'body':JSON['stringify']({'username':_0x519c3a,'password':_0x4650cd})}),console['log'](_0x4ac7a1(0x179));}export async function resolveCloudProfileSession(_0x672803,_0x38409d={}){const _0x4afa7c=_0x4bac8e,_0xc182a={'GjEZc':function(_0x449374){return _0x449374();},'TGKSy':function(_0x270fd5,_0x2f06cc,_0x54fe52){return _0x270fd5(_0x2f06cc,_0x54fe52);},'BDsBV':function(_0x3d77c6,_0x583c22){return _0x3d77c6===_0x583c22;},'airpa':_0x4afa7c(0x193),'PUAyj':function(_0x2cfd62,_0x47198d){return _0x2cfd62(_0x47198d);},'MDRja':function(_0x40de80,_0x24129d,_0x4880c7,_0x3e3f15,_0x5098b3,_0x6033ba){return _0x40de80(_0x24129d,_0x4880c7,_0x3e3f15,_0x5098b3,_0x6033ba);},'obLFB':function(_0x3b84b7,_0x359cc7){return _0x3b84b7&&_0x359cc7;},'uKDzV':function(_0x4c4a6f,_0x4e7df7,_0xd6bd43){return _0x4c4a6f(_0x4e7df7,_0xd6bd43);},'gcFnY':function(_0x2b40f4,_0x545531,_0x5d27c4,_0x482ad1,_0x38aaec){return _0x2b40f4(_0x545531,_0x5d27c4,_0x482ad1,_0x38aaec);},'vusBl':function(_0x49338f,_0x12afaa,_0xe4c00f){return _0x49338f(_0x12afaa,_0xe4c00f);},'zKkpy':function(_0x402845,_0x208f45){return _0x402845(_0x208f45);},'wXKFP':function(_0xf88672,_0x5e789b){return _0xf88672||_0x5e789b;},'SbQgm':function(_0x5c9c62,_0x160a78,_0x41e7b4,_0x31a4de){return _0x5c9c62(_0x160a78,_0x41e7b4,_0x31a4de);},'WBpHT':_0x4afa7c(0x186),'gywRK':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','RCVPe':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','ATBGN':function(_0x265262,_0x3b9c03){return _0x265262 instanceof _0x3b9c03;},'PvroN':function(_0x1f1f8e,_0x5cc158){return _0x1f1f8e(_0x5cc158);},'GrmOq':function(_0x1f2141,_0x199cb2,_0x2a2005,_0x392c9c,_0x58893e,_0x3be7f6,_0x44262c,_0x42c55a){return _0x1f2141(_0x199cb2,_0x2a2005,_0x392c9c,_0x58893e,_0x3be7f6,_0x44262c,_0x42c55a);}},_0x3a4d07=_0x672803[_0x4afa7c(0x19d)]??{},_0x385bb4=await _0xc182a['GjEZc'](fetchAuthConfig),_0x2b5569=_0x385bb4?_0xc182a['TGKSy'](resolveAuthEnvironmentLocally,_0x385bb4,_0x672803[_0x4afa7c(0x1b1)]):null,_0xc56582=typeof _0x2b5569?.['loginInstructions']==='string'&&_0x2b5569['loginInstructions']['trim']()?_0x2b5569[_0x4afa7c(0x166)]:undefined,_0x57abea=_0xc182a[_0x4afa7c(0x1a5)](typeof _0x3a4d07[_0x4afa7c(0x166)],_0xc182a[_0x4afa7c(0x1d8)])&&_0x3a4d07['loginInstructions'][_0x4afa7c(0x190)]()?_0x3a4d07['loginInstructions']:undefined,_0x462dc5=_0x57abea||!_0xc56582?_0x3a4d07:{..._0x3a4d07,'loginInstructions':_0xc56582},_0x282aa3=_0xc182a['PUAyj'](Boolean,_0x462dc5['loginInstructions']?.['trim']()),_0x13bbc8=_0xc182a['PUAyj'](Boolean,_0x3a4d07[_0x4afa7c(0x1df)]||_0x2b5569?.[_0x4afa7c(0x1df)]),_0x2cea7e=_0x2b5569?.['domains'],_0x53073e=_0x3a4d07['setupHeaders'],_0x1a0971=_0x53073e??_0x2b5569?.[_0x4afa7c(0x1dc)],_0xc3b665=_0x38409d[_0x4afa7c(0x16d)]??_0x3a4d07['baseUrl']??(_0x2cea7e&&_0x2cea7e[_0x4afa7c(0x1c6)]>0x0?_0x2cea7e[0x0]:''),_0x49183f=_0xc3b665?_0xc182a['PUAyj'](needsTunnel,_0xc3b665):![],_0x29faaf={'invalidateOn':_0x2b5569?.['invalidateOn'],'userAgent':_0x2b5569?.[_0x4afa7c(0x1cf)]?.[_0x4afa7c(0x1d5)]??_0x3a4d07['userAgent']};_0x13bbc8&&console[_0x4afa7c(0x198)](_0x4afa7c(0x175)+_0x672803['name']+_0x4afa7c(0x1f5));if(!_0x13bbc8){const _0x428aac=await _0xc182a['MDRja'](checkLocalCache,_0x672803[_0x4afa7c(0x160)],_0x672803[_0x4afa7c(0x165)],_0xc3b665,_0x1a0971,_0x29faaf);if(_0x428aac){if(_0xc182a[_0x4afa7c(0x1f3)](_0xc3b665,!_0x49183f)){const _0xf3f3bc=await isCachedSessionLive(_0x428aac[_0x4afa7c(0x1c9)],_0xc3b665,{'sessionCheckPath':_0x2b5569?.['sessionCheckPath'],'setupHeaders':_0x1a0971},{'launchBrowser':launchRealBrowser});if(_0xf3f3bc)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x672803[_0x4afa7c(0x160)]+'\x22'),{'authPath':_0x428aac['storageStatePath'],'settings':_0x462dc5,'resolvedEnv':_0x2b5569};console['log']('\x20\x20Cached\x20session\x20for\x20\x22'+_0x672803[_0x4afa7c(0x160)]+_0x4afa7c(0x199)),_0xc182a['uKDzV'](emitSessionValidationHint,_0xc3b665,_0x2b5569);}else return _0x49183f&&console[_0x4afa7c(0x198)](_0x4afa7c(0x1c5)+_0x672803['name']+'\x22'),{'authPath':_0x428aac['storageStatePath'],'settings':_0x462dc5,'resolvedEnv':_0x2b5569};}}if(!_0x13bbc8&&_0x672803['sessionState']){if(_0x49183f)console[_0x4afa7c(0x198)](_0x4afa7c(0x1fb)+_0xc3b665+_0x4afa7c(0x1f2)+_0x672803['name']+'\x22');else{const _0x13181a=await writeSessionToLocalCache(_0x672803[_0x4afa7c(0x160)],_0x672803[_0x4afa7c(0x165)],_0xc3b665,_0x1a0971,_0x672803[_0x4afa7c(0x1a1)],_0x2cea7e,_0x29faaf);if(_0xc3b665){const _0x41e47a=await _0xc182a['gcFnY'](isCachedSessionLive,_0x13181a,_0xc3b665,{'sessionCheckPath':_0x2b5569?.[_0x4afa7c(0x1de)],'setupHeaders':_0x1a0971},{'launchBrowser':launchRealBrowser});if(_0x41e47a)return console[_0x4afa7c(0x198)](_0x4afa7c(0x1c8)+_0x672803['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x13181a,'settings':_0x462dc5,'resolvedEnv':_0x2b5569};console['log'](_0x4afa7c(0x1a3)+_0x672803[_0x4afa7c(0x160)]+_0x4afa7c(0x1d6)),_0xc182a['vusBl'](emitSessionValidationHint,_0xc3b665,_0x2b5569);}else return{'authPath':_0x13181a,'settings':_0x462dc5,'resolvedEnv':_0x2b5569};}}if(_0x282aa3)return console['log'](_0x4afa7c(0x18b)+_0x672803[_0x4afa7c(0x160)]+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x462dc5,'resolvedEnv':_0x2b5569};console[_0x4afa7c(0x198)](_0x4afa7c(0x18b)+_0x672803['name']+'\x22,\x20attempting\x20login...');const _0x1d48a9=Boolean(process['env']['RANGER_TEST_USERNAME'])&&_0xc182a['zKkpy'](Boolean,process[_0x4afa7c(0x1bf)]['RANGER_TEST_PASSWORD']),_0x41038a=Boolean(_0x672803[_0x4afa7c(0x1bb)]);if(_0xc182a['wXKFP'](_0x1d48a9,_0x41038a))try{const _0x2f806c=_0xc3b665?await _0xc182a['SbQgm'](serverSideLoginWithOptionalTunnel,_0x672803['name'],_0xc3b665,{'force':_0x13bbc8,'telemetry':_0x38409d['telemetry']}):await serverSideLogin(_0x672803[_0x4afa7c(0x160)],{'force':_0x13bbc8});if(_0x2f806c[_0x4afa7c(0x1b4)]===_0xc182a['WBpHT'])console[_0x4afa7c(0x198)](_0xc182a[_0x4afa7c(0x1c4)]);else{if(_0x2f806c[_0x4afa7c(0x1b4)]===_0x4afa7c(0x15c)&&_0x2f806c[_0x4afa7c(0x1ca)]){console[_0x4afa7c(0x198)](_0x4afa7c(0x1cc));const _0x489096=await writeSessionToLocalCache(_0x672803['name'],_0x672803['organizationId'],_0xc3b665,_0x1a0971,_0x2f806c['session_state'],_0x2cea7e,_0x29faaf);return _0x1d48a9&&!_0x41038a&&await promptSaveCredentials(_0x672803[_0x4afa7c(0x160)]),{'authPath':_0x489096,'settings':_0x462dc5,'resolvedEnv':_0x2b5569};}else _0x2f806c[_0x4afa7c(0x19b)]&&(console[_0x4afa7c(0x198)](_0x4afa7c(0x15e)),console[_0x4afa7c(0x198)](_0x2f806c[_0x4afa7c(0x19b)])),console[_0x4afa7c(0x198)](_0xc182a[_0x4afa7c(0x185)]);}}catch(_0x5a186e){console[_0x4afa7c(0x198)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0xc182a['ATBGN'](_0x5a186e,Error)?_0x5a186e['message']:_0xc182a['PvroN'](String,_0x5a186e))),console['log'](_0x4afa7c(0x159));}const _0x448177=_0x2b5569?{..._0x2b5569,'setupHeaders':_0x1a0971}:_0xc3b665?{'key':_0x672803['environmentKey']??'','domains':[_0xc3b665],'setupHeaders':_0x1a0971}:null,{sessionState:_0x21b24c}=await manualBrowserLogin(_0x672803,_0x448177,{'persistSessionState':!_0x49183f}),_0x2d730d=await _0xc182a[_0x4afa7c(0x17e)](writeSessionToLocalCache,_0x672803[_0x4afa7c(0x160)],_0x672803['organizationId'],_0xc3b665,_0x1a0971,_0x21b24c,_0x2cea7e,_0x29faaf);return{'authPath':_0x2d730d,'settings':_0x462dc5,'resolvedEnv':_0x2b5569};}
|
|
1
|
+
const _0xa12d9=_0x4050;(function(_0x6b1b8b,_0x4fcb78){const _0x72fbe4=_0x4050,_0x18891a=_0x6b1b8b();while(!![]){try{const _0x3350e7=-parseInt(_0x72fbe4(0xdf))/0x1+-parseInt(_0x72fbe4(0x127))/0x2*(-parseInt(_0x72fbe4(0x10d))/0x3)+parseInt(_0x72fbe4(0x142))/0x4*(parseInt(_0x72fbe4(0xd9))/0x5)+parseInt(_0x72fbe4(0xc7))/0x6*(-parseInt(_0x72fbe4(0x114))/0x7)+-parseInt(_0x72fbe4(0x128))/0x8*(parseInt(_0x72fbe4(0x12a))/0x9)+parseInt(_0x72fbe4(0x130))/0xa*(parseInt(_0x72fbe4(0x149))/0xb)+parseInt(_0x72fbe4(0x147))/0xc;if(_0x3350e7===_0x4fcb78)break;else _0x18891a['push'](_0x18891a['shift']());}catch(_0x30fad2){_0x18891a['push'](_0x18891a['shift']());}}}(_0x495a,0x93571));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x20e70b from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isCachedSessionLive,isInteractive,needsTunnel,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';import{matchAuthEnvironmentByHost,matchAuthEnvironmentExact}from'./matchAuthEnvironment.js';import{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';function targetHostForTelemetry(_0x1b4b18){try{return new URL(_0x1b4b18)['host'];}catch{return'invalid-url';}}function errorMessageForTelemetry(_0x17b9fd){const _0x21f059=_0x4050,_0x37a14d={'FhRjF':function(_0x5b5ed,_0x240ce5){return _0x5b5ed instanceof _0x240ce5;}};return _0x37a14d[_0x21f059(0xe2)](_0x17b9fd,Error)?_0x17b9fd[_0x21f059(0x108)]:undefined;}function trackBridgeEvent(_0x341580,_0x19e4ea){const _0x12a387=_0x4050,_0x8c308a={'KTohZ':_0x12a387(0x14b),'omDoi':'tunnel_error','nMuef':function(_0x2474d4,_0x459cbb){return _0x2474d4===_0x459cbb;},'TNaZo':_0x12a387(0x154)};if(!_0x341580)return;const _0x186424={'tunnelSessionId':_0x19e4ea[_0x12a387(0x12e)],'tunnelEventType':_0x19e4ea['type'],'connectionId':_0x19e4ea['connectionId'],'code':_0x19e4ea[_0x12a387(0xca)],'reason':_0x19e4ea['reason'],'error':_0x19e4ea['error'],'elapsedMs':_0x19e4ea['elapsedMs'],'activeLocalConnections':_0x19e4ea[_0x12a387(0xd4)],'pendingLocalConnections':_0x19e4ea['pendingLocalConnections']};_0x341580['trackPhaseEnd'](_0x8c308a['KTohZ'],_0x186424),(_0x19e4ea[_0x12a387(0x126)]===_0x8c308a[_0x12a387(0xc3)]||_0x8c308a[_0x12a387(0xc2)](_0x19e4ea['type'],_0x8c308a['TNaZo']))&&void _0x341580['trackPhaseError'](_0x12a387(0x164),new Error(_0x19e4ea['error']??_0x19e4ea['type']),_0x186424);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x3b4c9b=_0x4050,_0x407cbc={'jiiqi':function(_0x591019){return _0x591019();}},_0x337669=await _0x407cbc['jiiqi'](getToken);if(!_0x337669)throw new Error(_0x3b4c9b(0xcb));return _0x337669;}async function apiRequest(_0x1467f1,_0x28a4e5={}){const _0xff2741=_0x4050,_0x3a5289={'AQPeO':function(_0x73ad09){return _0x73ad09();},'eKYxB':function(_0x1ec1d3,_0x430e31){return _0x1ec1d3===_0x430e31;},'OxujY':'string','ZySmn':function(_0x1cf93d,_0x8fcc7b){return _0x1cf93d===_0x8fcc7b;}},_0x542420=await _0x3a5289[_0xff2741(0xd0)](requireToken),_0x73314a=getApiBaseUrl(),_0x1c53fe=await fetch(''+_0x73314a+_0x1467f1,{..._0x28a4e5,'headers':{'Authorization':_0xff2741(0xea)+_0x542420,'Content-Type':_0xff2741(0x14a),..._0x28a4e5['headers']??{}}});if(!_0x1c53fe['ok']){let _0x82d994='',_0x4a9440;try{const _0x110e13=await _0x1c53fe[_0xff2741(0x129)](),_0x1559d8=(_0x3a5289['eKYxB'](typeof _0x110e13['error'],_0x3a5289['OxujY'])?_0x110e13[_0xff2741(0x10e)]:undefined)??JSON[_0xff2741(0x11d)](_0x110e13);_0x82d994=_0x1559d8;typeof _0x110e13[_0xff2741(0xfe)]==='string'&&_0x110e13['test_output']&&(_0x82d994=_0x82d994+'\x0a'+_0x110e13[_0xff2741(0xfe)]);if(typeof _0x110e13[_0xff2741(0xca)]==='string')_0x4a9440=_0x110e13[_0xff2741(0xca)];}catch{_0x82d994=_0x1c53fe['statusText'];}throw new ApiError(_0xff2741(0x159)+_0x1467f1+'\x20failed\x20('+_0x1c53fe['status']+_0xff2741(0x13c)+_0x82d994,_0x1c53fe['status'],_0x82d994,_0x4a9440);}if(_0x3a5289['ZySmn'](_0x1c53fe['status'],0xcc))return undefined;return _0x1c53fe[_0xff2741(0x129)]();}export class ApiError extends Error{[_0xa12d9(0x107)];['detail'];['code'];constructor(_0x3c429a,_0x3bf267,_0x40344b,_0x4fc915){const _0x58bb8d=_0xa12d9,_0x652de7=_0x58bb8d(0xd2)['split']('|');let _0x658295=0x0;while(!![]){switch(_0x652de7[_0x658295++]){case'0':this['code']=_0x4fc915;continue;case'1':this['detail']=_0x40344b;continue;case'2':super(_0x3c429a);continue;case'3':this[_0x58bb8d(0x11f)]='ApiError';continue;case'4':this[_0x58bb8d(0x107)]=_0x3bf267;continue;}break;}}}export async function fetchCloudProfile(_0x508ef1){const _0x1eedfb=_0xa12d9,_0x5a3dac={'QWzOI':function(_0x448dab,_0x2036ac){return _0x448dab(_0x2036ac);},'vUnZP':function(_0x2cc009,_0xf85d5b){return _0x2cc009 instanceof _0xf85d5b;}};try{return await _0x5a3dac[_0x1eedfb(0x103)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x508ef1));}catch(_0x5cdf00){if(_0x5a3dac['vUnZP'](_0x5cdf00,ApiError)&&_0x5cdf00[_0x1eedfb(0x107)]===0x194)return null;throw _0x5cdf00;}}function _0x4050(_0xf5c122,_0x102741){_0xf5c122=_0xf5c122-0xc0;const _0x495a93=_0x495a();let _0x405092=_0x495a93[_0xf5c122];return _0x405092;}export async function listCloudProfiles(){const _0x32539a=await apiRequest('/api/v1/profiles');return _0x32539a['profiles'];}export async function deleteCloudProfile(_0x1ae1a6){const _0x42b27c=_0xa12d9,_0x4445b7={'XbTWJ':function(_0x42125a,_0x2f35d4,_0x4a4330){return _0x42125a(_0x2f35d4,_0x4a4330);},'lEaVj':function(_0x2e54c8,_0xa67cb3){return _0x2e54c8(_0xa67cb3);},'ffVST':function(_0x1e0199,_0x4f932f){return _0x1e0199===_0x4f932f;}};try{await _0x4445b7['XbTWJ'](apiRequest,'/api/v1/profiles/'+_0x4445b7['lEaVj'](encodeURIComponent,_0x1ae1a6),{'method':_0x42b27c(0x134)});}catch(_0x3b6cfd){if(_0x3b6cfd instanceof ApiError&&_0x4445b7[_0x42b27c(0xdd)](_0x3b6cfd[_0x42b27c(0x107)],0x194))throw new Error('Cloud\x20profile\x20\x22'+_0x1ae1a6+_0x42b27c(0xff));throw _0x3b6cfd;}}export async function createCloudProfile(_0x233436,_0x53ed7d,_0x126fa0={}){const _0x29ce40=_0xa12d9,_0x31722e={'name':_0x233436};if(_0x53ed7d)_0x31722e['environment_key']=_0x53ed7d;_0x126fa0[_0x29ce40(0xdb)]&&Object['keys'](_0x126fa0[_0x29ce40(0xdb)])['length']>0x0&&(_0x31722e[_0x29ce40(0xdb)]=_0x126fa0[_0x29ce40(0xdb)]);if(_0x126fa0['username'])_0x31722e['username']=_0x126fa0[_0x29ce40(0x16b)];if(_0x126fa0['password'])_0x31722e['password']=_0x126fa0['password'];return await apiRequest(_0x29ce40(0xfd),{'method':'POST','body':JSON[_0x29ce40(0x11d)](_0x31722e)});}export async function uploadCloudProfileSession(_0x2be5e6,_0x14a838){const _0x28717e=_0xa12d9,_0xf7b0ef={'IxyTK':_0x28717e(0xf6)};return await apiRequest(_0x28717e(0x104)+encodeURIComponent(_0x2be5e6)+_0x28717e(0x122),{'method':_0xf7b0ef[_0x28717e(0x155)],'body':JSON['stringify']({'session_state':_0x14a838})});}export async function saveCloudProfileCredentials(_0x16e26a,_0x5d1d70,_0x642e0a){const _0x4b88a1=_0xa12d9,_0x3ad0b8={'IOyOk':function(_0x5357bf,_0x18e335,_0xd9ccb2){return _0x5357bf(_0x18e335,_0xd9ccb2);},'gIFwo':_0x4b88a1(0xf2)};await _0x3ad0b8[_0x4b88a1(0xf0)](apiRequest,_0x4b88a1(0x104)+encodeURIComponent(_0x16e26a),{'method':_0x3ad0b8['gIFwo'],'body':JSON[_0x4b88a1(0x11d)]({'username':_0x5d1d70,'password':_0x642e0a})});}export async function fetchAuthConfig(){const _0x13764f=_0xa12d9,_0xc9d31={'zVFrD':'/api/v1/profiles/auth-config','hbVwI':function(_0x5201b6,_0x364aa8){return _0x5201b6!==_0x364aa8;}};try{const _0x44ae20=await apiRequest(_0xc9d31['zVFrD']);return _0x44ae20['auth_config'];}catch(_0x20dfab){return _0x20dfab instanceof ApiError&&_0xc9d31['hbVwI'](_0x20dfab['status'],0x194)&&console[_0x13764f(0x10e)](_0x13764f(0xf9)+_0x20dfab[_0x13764f(0x108)]),null;}}async function createTunnelSession(_0x25f0c1){const _0x3d6a04=_0xa12d9,_0x5a54e5={'BeLDb':function(_0x406265,_0x2a2837,_0x1e360a){return _0x406265(_0x2a2837,_0x1e360a);},'QXnyL':'/api/v1/tunnel/sessions'};return await _0x5a54e5[_0x3d6a04(0x132)](apiRequest,_0x5a54e5['QXnyL'],{'method':'POST','body':JSON[_0x3d6a04(0x11d)]({'targetUrl':_0x25f0c1,'mode':_0x3d6a04(0x13f)})});}async function deleteTunnelSession(_0xbce425){const _0x444fe5=_0xa12d9,_0x44cb62={'QnEqm':function(_0x312591,_0x3b6e3f,_0x4365b6){return _0x312591(_0x3b6e3f,_0x4365b6);},'bSnvI':'DELETE'};await _0x44cb62['QnEqm'](apiRequest,_0x444fe5(0x10c)+_0xbce425,{'method':_0x44cb62[_0x444fe5(0x13d)]});}export function pickAdHocEnvKey(_0x1e13c2,_0x2725a6,_0x3d3670){const _0x6acc73=_0xa12d9,_0x489a17={'GFUAc':function(_0x47cecb,_0x5d1360){return _0x47cecb+_0x5d1360;},'BzWsn':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','XyjEM':function(_0x4600f2,_0x84afc6,_0x55248f){return _0x4600f2(_0x84afc6,_0x55248f);},'jxMax':function(_0x52b630,_0x3050e5,_0x4546fd){return _0x52b630(_0x3050e5,_0x4546fd);},'MfcvQ':function(_0x14bb1d,_0x1f742a){return _0x14bb1d in _0x1f742a;},'xkPDG':_0x6acc73(0xce),'VUOOI':_0x6acc73(0xf5),'Sgxuh':function(_0x4f6c04,_0x1f4bec){return _0x4f6c04(_0x1f4bec);},'dTrVm':function(_0x488e15,_0x4d99fe){return _0x488e15+_0x4d99fe;},'HpxaC':function(_0x569ea0,_0x310f25){return _0x569ea0+_0x310f25;},'qecKg':function(_0x462478,_0x8b323c){return _0x462478===_0x8b323c;}};if(_0x3d3670){if(!_0x1e13c2?.['environments']?.[_0x3d3670]){const _0x4e9945=Object[_0x6acc73(0x14f)](_0x1e13c2?.[_0x6acc73(0xf7)]??{});throw new Error(_0x489a17[_0x6acc73(0xe4)](_0x489a17['GFUAc']('Auth\x20environment\x20\x22'+_0x3d3670+_0x6acc73(0x124),_0x4e9945[_0x6acc73(0x10f)]?'\x20Available:\x20'+_0x4e9945[_0x6acc73(0xe8)](',\x20')+'.':_0x489a17[_0x6acc73(0x15a)]),'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)'));}return _0x3d3670;}if(!_0x1e13c2)return null;if(_0x2725a6){const _0x4e8a15=_0x489a17['XyjEM'](matchAuthEnvironmentExact,_0x2725a6,_0x1e13c2);if(_0x4e8a15)return _0x4e8a15;const _0x3738aa=_0x489a17['jxMax'](matchAuthEnvironmentByHost,_0x2725a6,_0x1e13c2);if(_0x3738aa&&_0x489a17[_0x6acc73(0x144)](_0x489a17[_0x6acc73(0x14e)],_0x3738aa))return console[_0x6acc73(0x151)](_0x6acc73(0xeb)+_0x3738aa[_0x6acc73(0xce)]+_0x6acc73(0xd7)+_0x2725a6+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x3738aa['key'];if(_0x3738aa&&_0x489a17['VUOOI']in _0x3738aa)throw new Error('Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20('+_0x3738aa[_0x6acc73(0xf5)]['join'](',\x20')+');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.');if(_0x489a17['Sgxuh'](needsTunnel,_0x2725a6))throw new Error(_0x489a17[_0x6acc73(0xc6)](_0x489a17['GFUAc'](_0x489a17['HpxaC']('No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22'+_0x2725a6+_0x6acc73(0xee),_0x6acc73(0x111))+_0x6acc73(0xef)+'\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a',_0x6acc73(0xcf)+_0x2725a6[_0x6acc73(0x13b)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),'\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20'+_0x2725a6+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x1e13c2[_0x6acc73(0x16a)])return _0x1e13c2['defaultEnvironmentKey'];const _0x1b76bb=Object['keys'](_0x1e13c2[_0x6acc73(0xf7)]??{});if(_0x1b76bb[_0x6acc73(0x10f)]===0x1)return _0x1b76bb[0x0];if(_0x489a17['qecKg'](_0x1b76bb[_0x6acc73(0x10f)],0x0))return null;throw new Error(_0x6acc73(0x119)+_0x1b76bb['join'](',\x20')+_0x6acc73(0x121)+_0x6acc73(0x16c));}export function adHocProfileName(_0x1c1ef0,_0xe48dec,_0x4ddbab){const _0x15a9f3=_0xa12d9,_0x5ecf00={'grxCf':function(_0x54db70,_0x51be77){return _0x54db70===_0x51be77;}};if(!_0xe48dec||_0x5ecf00[_0x15a9f3(0xf3)](_0xe48dec,_0x4ddbab))return _0x1c1ef0;return _0x1c1ef0+':'+_0xe48dec;}export async function resolveAdHocProfile(_0x143c45={},_0x14eeea=process[_0xa12d9(0x112)]){const _0x973eb5=_0xa12d9,_0x4841cc={'GxdnQ':function(_0x440d50){return _0x440d50();},'llHjN':function(_0x3bfeef,_0x13d0e2,_0x224d9b,_0xf6edec){return _0x3bfeef(_0x13d0e2,_0x224d9b,_0xf6edec);},'paIxo':function(_0x35ab05,_0x44495d){return _0x35ab05(_0x44495d);},'tOQqG':function(_0x23dae3,_0x9d0f9d){return _0x23dae3!==_0x9d0f9d;},'ACKKq':function(_0x371b24,_0x34d4bc){return _0x371b24??_0x34d4bc;}},_0x3d9bd3=_0x14eeea['RANGER_TEST_USERNAME'];if(!_0x3d9bd3)return null;const _0xf86ea0=await _0x4841cc['GxdnQ'](fetchAuthConfig),_0x1f40ec=_0x4841cc['llHjN'](pickAdHocEnvKey,_0xf86ea0,_0x143c45[_0x973eb5(0xd6)],_0x143c45['envKey']);let _0x57f8f5=adHocProfileName(_0x3d9bd3,_0x1f40ec,_0xf86ea0?.[_0x973eb5(0x16a)]),_0x2ed321=await _0x4841cc['paIxo'](fetchCloudProfile,_0x57f8f5);_0x2ed321&&_0x1f40ec&&_0x4841cc['tOQqG'](_0x2ed321['environmentKey'],_0x1f40ec)&&(console['log']('\x20\x20Cloud\x20profile\x20\x22'+_0x57f8f5+_0x973eb5(0xe9)+(_0x2ed321['environmentKey']??_0x973eb5(0xfb))+_0x973eb5(0x101)+_0x1f40ec+_0x973eb5(0xcd)+_0x3d9bd3+':'+_0x1f40ec+_0x973eb5(0x143)),_0x57f8f5=_0x3d9bd3+':'+_0x1f40ec,_0x2ed321=await fetchCloudProfile(_0x57f8f5));if(_0x2ed321)return{'name':_0x2ed321['name'],'profile':_0x2ed321};const _0x23286f=_0x14eeea[_0x973eb5(0x16f)],_0x4963c0=await createCloudProfile(_0x57f8f5,_0x4841cc['ACKKq'](_0x1f40ec,undefined),{'username':_0x3d9bd3,'password':_0x23286f});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x4963c0['name']+'\x22\x20for\x20'+_0x3d9bd3+(_0x1f40ec?_0x973eb5(0x14c)+_0x1f40ec+')':'')),{'name':_0x4963c0['name'],'profile':_0x4963c0};}export async function writeSessionToLocalCache(_0x2c0ec9,_0x439f61,_0x74d922,_0x34a49a,_0x50b1b1,_0xa17d1e,_0x585924){const _0x1ceefd=_0xa12d9,_0x1c714c={'gbMpl':function(_0x47e3e7,_0x623a94){return _0x47e3e7(_0x623a94);},'EzxBF':function(_0x3ec815,_0x2ad541,_0x27113f){return _0x3ec815(_0x2ad541,_0x27113f);},'afwfD':function(_0x27b78d){return _0x27b78d();},'hlXuU':function(_0x38e4c3,_0x400dd3,_0x51164f){return _0x38e4c3(_0x400dd3,_0x51164f);}},_0x49b383=_0x1c714c['gbMpl'](sessionCacheHash,{'orgId':_0x439f61,'profileName':_0x2c0ec9,'effectiveBaseUrl':_0x74d922,'setupHeaders':_0x34a49a,'invalidateOn':_0x585924?.[_0x1ceefd(0x13a)],'userAgent':_0x585924?.['userAgent'],'clientIp':_0x585924?.['clientIp']}),_0xd03d25=_0x1c714c['EzxBF'](getSessionCachePath,_0x49b383,_0x2c0ec9),_0x5c4752=join(_0x1c714c[_0x1ceefd(0x137)](getRangerHomeDir),_0x1ceefd(0x138));!existsSync(_0x5c4752)&&await _0x1c714c[_0x1ceefd(0xd1)](mkdir,_0x5c4752,{'recursive':!![]});const _0x2a5ccd={..._0x50b1b1};_0xa17d1e&&_0xa17d1e[_0x1ceefd(0x10f)]>0x0&&Array['isArray'](_0x2a5ccd[_0x1ceefd(0x131)])&&(_0x2a5ccd['cookies']=_0x1c714c[_0x1ceefd(0xd1)](duplicateCookiesForDomains,_0x2a5ccd[_0x1ceefd(0x131)],_0xa17d1e));const _0x216b1c={'cached_at':new Date()[_0x1ceefd(0x160)](),'session_state':_0x2a5ccd};await _0x1c714c[_0x1ceefd(0xd1)](writeFile,_0xd03d25,JSON[_0x1ceefd(0x11d)](_0x216b1c,null,0x2));const _0x3be973=getStorageStatePath(_0xd03d25);return await _0x1c714c['EzxBF'](writeFile,_0x3be973,JSON['stringify'](_0x2a5ccd,null,0x2)),_0x3be973;}export async function checkLocalCache(_0x34bafc,_0x110686,_0x25f125,_0x4f2f3f,_0x258cd8){const _0x343971=_0xa12d9,_0x363d97={'uuZKf':function(_0xccb8c2,_0x29adc4){return _0xccb8c2(_0x29adc4);},'HDVqG':function(_0xf45ced,_0x2f2e82){return _0xf45ced(_0x2f2e82);},'GDiSG':function(_0x10290a,_0x475d8f,_0x12e244){return _0x10290a(_0x475d8f,_0x12e244);},'qirnz':_0x343971(0x152)},_0x15fdbb=_0x363d97[_0x343971(0x133)](sessionCacheHash,{'orgId':_0x110686,'profileName':_0x34bafc,'effectiveBaseUrl':_0x25f125,'setupHeaders':_0x4f2f3f,'invalidateOn':_0x258cd8?.[_0x343971(0x13a)],'userAgent':_0x258cd8?.[_0x343971(0x12b)],'clientIp':_0x258cd8?.[_0x343971(0x168)]}),_0x12be9b=getSessionCachePath(_0x15fdbb,_0x34bafc),_0x346751=_0x363d97['HDVqG'](getStorageStatePath,_0x12be9b);if(!existsSync(_0x12be9b)||!_0x363d97['HDVqG'](existsSync,_0x346751))return null;try{const _0x3b1024=await _0x363d97[_0x343971(0x167)](readFile,_0x12be9b,_0x363d97['qirnz']);return JSON['parse'](_0x3b1024),{'storageStatePath':_0x346751};}catch{return null;}}function launchRealBrowser(){const _0x10ee2f=_0xa12d9;return chromium[_0x10ee2f(0x165)]({'headless':!![]});}function _0x495a(){const _0x4d0512=['Rnxib','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','tunnel_session_id','telemetry','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','setupHeaders','SuLIJ','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','stringify','CsBvI','name','sessionCheckPath',').\x20','/session','RANGER_TEST_USERNAME','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','tunnel_login_setup','type','2XGLYWK','50536Bmoxwe','json','1629GaqFlV','userAgent','split','baseUrl','sessionId','sessionState','783690VtUaWB','cookies','BeLDb','uuZKf','DELETE','zbCWT','storageStatePath','afwfD','auth','CfhMR','invalidateOn','replace','):\x20','bSnvI','keQif','agent','target_url','OcloR','148eewNkr','\x22\x20instead.','MfcvQ','catch','not_configured','8817876zxxfSN','forceLogin','33YvqmgV','application/json','tunnel_bridge_event','\x20(auth\x20env:\x20','Xbjzh','xkPDG','keys','\x20\x20Cloud\x20session\x20for\x20\x22','log','utf-8','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','local_ws_error','IxyTK','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','YwRYD','close','API\x20request\x20','BzWsn','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','save','\x22,\x20attempting\x20login...','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','pNXeC','toISOString','tunnel_login_cleanup','tunnel','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','tunnel_bridge','launch','\x22,\x20refreshing\x20session...','GDiSG','clientIp','HlQsE','defaultEnvironmentKey','username','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>`.','pwEndpoint','confirm','RANGER_TEST_PASSWORD','rBztm','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','nMuef','omDoi','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','dTrVm','2641182lISLFr','url','loginInstructions','code','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','trim','\x22;\x20using\x20\x22','key','\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22','AQPeO','hlXuU','2|4|1|0|3','newContext','activeLocalConnections','BwHHZ','targetUrl','\x22\x20matched\x20by\x20host\x20for\x20','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','117255hyBIAS','domains','settings','CBFRc','ffVST','persistSessionState','627697cbMxRR','session_state','tunnel_login_request','FhRjF','extraHTTPHeaders','GFUAc','\x22,\x20cached\x20locally','organizationId','dlWMp','join','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','Bearer\x20','\x20\x20Auth\x20env\x20\x22','EHvZm','tunnelUrl','\x22.\x0a','\x20\x20Options:\x0a','IOyOk','password','PUT','grxCf','bngEP','ambiguous','POST','environments','/login','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','Browser\x20login\x20timed\x20out\x20before\x20completion.','none','trackPhaseError','/api/v1/profiles','test_output','\x22\x20not\x20found.','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','map','QWzOI','/api/v1/profiles/','uNOZJ','newPage','status','message','\x22;\x20proceeding\x20with\x20loginInstructions.','toLowerCase','trackPhaseEnd','/api/v1/tunnel/sessions/','2931477IPncBm','error','length','force','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','env','\x20\x20No\x20live\x20session\x20for\x20\x22','7nSWpHu'];_0x495a=function(){return _0x4d0512;};return _0x495a();}function emitSessionValidationHint(_0x5bffd9,_0x4ae211){const _0x4a7309=_0xa12d9,_0x1d416a={'WNhpY':function(_0x55b166,_0x500cc5){return _0x55b166===_0x500cc5;},'CBFRc':function(_0x244cd7,_0x43ae2e){return _0x244cd7+_0x43ae2e;}};if(!_0x4ae211||!_0x4ae211['domains']?.[_0x4a7309(0x10f)])return;let _0x3ea602;try{_0x3ea602=new URL(_0x5bffd9);}catch{return;}const _0x268ec5=[];for(const _0x34cad9 of _0x4ae211[_0x4a7309(0xda)]){try{_0x268ec5['push']({'raw':_0x34cad9,'url':new URL(_0x34cad9)});}catch{}}if(_0x1d416a['WNhpY'](_0x268ec5['length'],0x0))return;if(_0x268ec5['some'](_0x1410c4=>_0x1410c4[_0x4a7309(0xc8)]['origin']===_0x3ea602['origin']))return;const _0x45e7c7=_0x268ec5[_0x4a7309(0x102)](_0x4fc2db=>'\x22'+_0x4fc2db['raw']+'\x22')[_0x4a7309(0xe8)](',\x20');console[_0x4a7309(0x151)](_0x1d416a[_0x4a7309(0xdc)]('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x45e7c7+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x5bffd9+_0x4a7309(0xd8))+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x535f53,_0x5c1953){const _0x3945ab=_0xa12d9,_0x44355d={'aDfqp':function(_0x3710fd,_0x68603c){return _0x3710fd===_0x68603c;},'YAJRv':_0x3945ab(0x146)},_0x50c443=process['env'][_0x3945ab(0x123)],_0x44a2af=process['env'][_0x3945ab(0x16f)],_0x10e7f0={};if(_0x50c443)_0x10e7f0[_0x3945ab(0x16b)]=_0x50c443;if(_0x44a2af)_0x10e7f0[_0x3945ab(0xf1)]=_0x44a2af;if(_0x5c1953?.[_0x3945ab(0x110)])_0x10e7f0[_0x3945ab(0x110)]=!![];if(_0x5c1953?.['targetUrl'])_0x10e7f0[_0x3945ab(0x140)]=_0x5c1953[_0x3945ab(0xd6)];_0x5c1953?.[_0x3945ab(0x162)]&&(_0x10e7f0[_0x3945ab(0x117)]=_0x5c1953[_0x3945ab(0x162)][_0x3945ab(0x12e)],_0x10e7f0['pw_endpoint']=_0x5c1953['tunnel']['pwEndpoint']);try{return await apiRequest(_0x3945ab(0x104)+encodeURIComponent(_0x535f53)+_0x3945ab(0xf8),{'method':'POST','body':JSON['stringify'](_0x10e7f0)});}catch(_0x15af3d){if(_0x15af3d instanceof ApiError&&_0x15af3d[_0x3945ab(0x107)]===0x190&&_0x44355d['aDfqp'](_0x15af3d['code'],'not_configured'))return{'status':_0x44355d['YAJRv'],'error':_0x15af3d['detail']};throw _0x15af3d;}}async function serverSideLoginWithOptionalTunnel(_0x46b5f4,_0x4291eb,_0x3977c8={}){const _0x44649d=_0xa12d9,_0x1e68eb={'slnWf':function(_0x40567d,_0x288475){return _0x40567d(_0x288475);},'DCRhd':function(_0x533c06,_0x4d0144){return _0x533c06(_0x4d0144);},'uNOZJ':function(_0x376962,_0x5d25ed,_0x3c501a){return _0x376962(_0x5d25ed,_0x3c501a);},'zbCWT':function(_0x1c5016,_0x53439b){return _0x1c5016===_0x53439b;},'CfhMR':function(_0x1929b4,_0x12bdd8){return _0x1929b4(_0x12bdd8);},'rBztm':'tunnel_login_setup','dlWMp':function(_0x2a81a2,_0x12279b){return _0x2a81a2(_0x12279b);},'yNQql':function(_0x53b940,_0x10e283){return _0x53b940(_0x10e283);}};if(!_0x1e68eb['DCRhd'](needsTunnel,_0x4291eb))return await _0x1e68eb['uNOZJ'](serverSideLogin,_0x46b5f4,{'force':_0x3977c8['force']});let _0x1ebb21=null,_0x51e130=null,_0x3eeb8b=null,_0x3f6a48=null,_0x33fb46=![];const _0x2544e3=process[_0x44649d(0x112)]['RANGER_TUNNEL_LOGIN_HEADED']?.[_0x44649d(0x10a)](),_0x1599d9=_0x1e68eb[_0x44649d(0x135)](_0x2544e3,'1')||_0x1e68eb['zbCWT'](_0x2544e3,'true'),_0x397359={'profileName':_0x46b5f4,'targetUrlHost':targetHostForTelemetry(_0x4291eb),'tunnelRequired':!![],'forceLogin':_0x1e68eb[_0x44649d(0x139)](Boolean,_0x3977c8[_0x44649d(0x110)]),'localBrowserServerHeaded':_0x1599d9};try{_0x3977c8[_0x44649d(0x118)]?.['trackPhaseStart'](_0x1e68eb[_0x44649d(0xc0)],_0x397359);_0x1599d9&&console[_0x44649d(0x151)](_0x44649d(0x15b));_0x1ebb21=await _0x1e68eb['DCRhd'](launchBrowserServer,{'headless':!_0x1599d9}),_0x51e130=await _0x1e68eb[_0x44649d(0xe7)](createTunnelSession,_0x4291eb);const _0x59345e=await requireToken();_0x3eeb8b=await createTunnelBridge({'localWsUrl':_0x1ebb21['wsEndpoint'],'tunnelServerUrl':_0x51e130[_0x44649d(0xed)],'sessionId':_0x51e130['sessionId'],'apiKey':_0x59345e,'onError':_0x1d0ec9=>{_0x3f6a48=_0x1d0ec9;},'onClose':()=>{const _0x34f107=_0x44649d;_0x3f6a48??=new Error(_0x34f107(0x11c)+_0x46b5f4);},'onEvent':_0x177892=>trackBridgeEvent(_0x3977c8[_0x44649d(0x118)],_0x177892)}),_0x3977c8['telemetry']?.[_0x44649d(0x10b)](_0x44649d(0x125),{..._0x397359,'tunnelSessionId':_0x51e130['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x1599d9}),_0x33fb46=!![];try{return _0x3977c8[_0x44649d(0x118)]?.['trackPhaseStart']('tunnel_login_request',{..._0x397359,'tunnelSessionId':_0x51e130['sessionId']}),await _0x1e68eb[_0x44649d(0x105)](serverSideLogin,_0x46b5f4,{'force':_0x3977c8['force'],'targetUrl':_0x4291eb,'tunnel':{'sessionId':_0x51e130['sessionId'],'pwEndpoint':_0x51e130[_0x44649d(0x16d)]}})['then'](_0x33ebf2=>{const _0x3d1427=_0x44649d;return _0x3977c8['telemetry']?.['trackPhaseEnd'](_0x3d1427(0xe1),{..._0x397359,'tunnelSessionId':_0x51e130?.[_0x3d1427(0x12e)],'loginStatus':_0x33ebf2['status'],'hasSessionState':Boolean(_0x33ebf2[_0x3d1427(0xe0)]),'hasTestOutput':_0x1e68eb['slnWf'](Boolean,_0x33ebf2[_0x3d1427(0xfe)]),'bridgeError':errorMessageForTelemetry(_0x3f6a48)}),_0x33ebf2;});}catch(_0x3103ea){await _0x3977c8[_0x44649d(0x118)]?.['trackPhaseError'](_0x44649d(0xe1),_0x3f6a48??_0x3103ea,{..._0x397359,'tunnelSessionId':_0x51e130[_0x44649d(0x12e)],'bridgeError':_0x1e68eb['yNQql'](errorMessageForTelemetry,_0x3f6a48)});throw _0x3f6a48??_0x3103ea;}}catch(_0xd8af53){!_0x33fb46&&await _0x3977c8[_0x44649d(0x118)]?.[_0x44649d(0xfc)](_0x1e68eb['rBztm'],_0xd8af53,{..._0x397359,'tunnelSessionId':_0x51e130?.['sessionId']});throw _0xd8af53;}finally{if(_0x51e130||_0x1ebb21||_0x3eeb8b){const _0x319d67='3|2|0|1|4'[_0x44649d(0x12c)]('|');let _0x557ef8=0x0;while(!![]){switch(_0x319d67[_0x557ef8++]){case'0':_0x1ebb21&&await _0x1ebb21[_0x44649d(0x158)]()[_0x44649d(0x145)](()=>{});continue;case'1':_0x51e130&&await deleteTunnelSession(_0x51e130[_0x44649d(0x12e)])['catch'](()=>{});continue;case'2':_0x3eeb8b?.['close']();continue;case'3':_0x3977c8['telemetry']?.['trackPhaseStart']('tunnel_login_cleanup',{..._0x397359,'tunnelSessionId':_0x51e130?.[_0x44649d(0x12e)]});continue;case'4':_0x3977c8[_0x44649d(0x118)]?.[_0x44649d(0x10b)](_0x44649d(0x161),{..._0x397359,'tunnelSessionId':_0x51e130?.[_0x44649d(0x12e)]});continue;}break;}}}}export async function manualBrowserLogin(_0x5c9953,_0x23741e,_0x31aeee={}){const _0x5c26a3=_0xa12d9,_0x4dc1d3={'RCCHj':function(_0x5d3f17,_0x31f5f0){return _0x5d3f17(_0x31f5f0);},'TNIws':function(_0xe4d7d3,_0xc8040a){return _0xe4d7d3+_0xc8040a;},'qJlIV':function(_0x1a2e9c,_0x3396b7){return _0x1a2e9c>_0x3396b7;},'XUIfF':_0x5c26a3(0x116),'VKIuj':'\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','Xbjzh':function(_0xf87c28,_0xb672ab){return _0xf87c28&&_0xb672ab;},'Rnxib':_0x5c26a3(0xfa),'fMokn':function(_0x232354,_0x20b5ee){return _0x232354(_0x20b5ee);}};if(!isInteractive())throw new Error(_0x4dc1d3['TNIws'](_0x5c26a3(0x163)+_0x5c9953['name']+_0x5c26a3(0xee),'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20')+_0x5c26a3(0x156));const _0x5e8d96=_0x23741e&&_0x4dc1d3['qJlIV'](_0x23741e['domains']['length'],0x0)?_0x23741e['domains'][0x0]:'about:blank';console[_0x5c26a3(0x151)](_0x4dc1d3['XUIfF']),console[_0x5c26a3(0x151)](_0x4dc1d3['VKIuj']),await new Promise(_0x36a9e6=>setTimeout(_0x36a9e6,0x7d0));const _0x14d63b=await chromium['launch']({'headless':![]});let _0x52ce62=null;try{const _0x2106d0={'ignoreHTTPSErrors':!![]};_0x23741e?.['setupHeaders']&&(_0x2106d0[_0x5c26a3(0xe3)]=_0x23741e[_0x5c26a3(0x11a)]);const _0x57d014=await _0x14d63b[_0x5c26a3(0xd3)](_0x2106d0);await addProfileSetupBanner(_0x57d014);const _0x36e3c4=await _0x57d014[_0x5c26a3(0x106)]();await _0x36e3c4['goto'](_0x5e8d96);let _0x2a4cee=![];await new Promise(_0x394a05=>{const _0x437d10=_0x5c26a3,_0x31ec93={'tmiKh':function(_0x27336a,_0x377b8c){return _0x4dc1d3['RCCHj'](_0x27336a,_0x377b8c);}},_0x12edd6=setTimeout(()=>{const _0x4f40e9=_0x4050;_0x2a4cee=!![],console['error']('Browser\x20login\x20timed\x20out\x20after\x20'+MANUAL_LOGIN_TIMEOUT_MS/0xea60+_0x4f40e9(0x100)),_0x394a05();},MANUAL_LOGIN_TIMEOUT_MS);_0x36e3c4['on'](_0x437d10(0x158),async()=>{_0x31ec93['tmiKh'](clearTimeout,_0x12edd6);try{const _0x896fcd=await _0x57d014['storageState']();_0x52ce62=_0x896fcd;}catch{}_0x394a05();});});if(_0x4dc1d3[_0x5c26a3(0x14d)](_0x2a4cee,!_0x52ce62))throw new Error(_0x4dc1d3[_0x5c26a3(0x115)]);}finally{await _0x14d63b['close']()[_0x5c26a3(0x145)](()=>{});}if(!_0x52ce62)throw new Error(_0x5c26a3(0xc5));return _0x31aeee[_0x5c26a3(0xde)]!==![]&&await apiRequest('/api/v1/profiles/'+_0x4dc1d3['fMokn'](encodeURIComponent,_0x5c9953[_0x5c26a3(0x11f)])+_0x5c26a3(0x122),{'method':'POST','body':JSON[_0x5c26a3(0x11d)]({'session_state':_0x52ce62,'updated_by':'cli:manual-login'})}),{'sessionState':_0x52ce62};}export async function promptSaveCredentials(_0x28dffb){const _0x556611=_0xa12d9,_0x32f69b={'autvJ':function(_0x1d9b1d,_0x42d6b1){return _0x1d9b1d||_0x42d6b1;},'bngEP':_0x556611(0x16e),'rRnvS':_0x556611(0x15c),'CsBvI':function(_0x172114,_0x33f62d,_0x4dbf0e){return _0x172114(_0x33f62d,_0x4dbf0e);},'WRAQt':'PUT'},_0x3ebee4=process['env'][_0x556611(0x123)],_0x23b6a4=process['env'][_0x556611(0x16f)];if(_0x32f69b['autvJ'](!_0x3ebee4,!_0x23b6a4))return;if(!isInteractive())return;const {save:_0x56e8e8}=await _0x20e70b['prompt']([{'type':_0x32f69b[_0x556611(0xf4)],'name':_0x32f69b['rRnvS'],'message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0x56e8e8)return;await _0x32f69b[_0x556611(0x11e)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x28dffb),{'method':_0x32f69b['WRAQt'],'body':JSON['stringify']({'username':_0x3ebee4,'password':_0x23b6a4})}),console['log'](_0x556611(0xc1));}export async function resolveCloudProfileSession(_0x567d7e,_0x35613d={}){const _0x53a1e5=_0xa12d9,_0x3a3a0d={'keQif':function(_0x3df067){return _0x3df067();},'YwRYD':function(_0x11273a,_0x113673){return _0x11273a===_0x113673;},'EHvZm':function(_0x3c0ecd,_0x29aed3){return _0x3c0ecd(_0x29aed3);},'PFjlc':function(_0x5a9de7,_0x598333){return _0x5a9de7>_0x598333;},'ZjWRY':function(_0x52aaae,_0x385e29,_0x14779c,_0x37c6fc,_0x56d0da){return _0x52aaae(_0x385e29,_0x14779c,_0x37c6fc,_0x56d0da);},'HlQsE':function(_0x100902,_0x3d204f,_0x50a73b){return _0x100902(_0x3d204f,_0x50a73b);},'BwHHZ':function(_0x1ea508,_0x15cb3c){return _0x1ea508||_0x15cb3c;},'OcloR':function(_0x5e6b38,_0x7bedce,_0x12db43){return _0x5e6b38(_0x7bedce,_0x12db43);},'MiejP':'success','pNXeC':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','fxpwA':function(_0x4b22e3,_0xa7477){return _0x4b22e3 instanceof _0xa7477;},'JKTqK':function(_0x38b456,_0x1da4ed){return _0x38b456(_0x1da4ed);},'KRExO':_0x53a1e5(0xc4),'xPHOc':function(_0x2103df,_0x9f2d77,_0x20fb3f,_0x63034d){return _0x2103df(_0x9f2d77,_0x20fb3f,_0x63034d);},'SuLIJ':function(_0x550592,_0x1c0c22,_0x5b243f,_0x3754e7,_0x3a80e3,_0x1a961b,_0x2fa122,_0xf3742b){return _0x550592(_0x1c0c22,_0x5b243f,_0x3754e7,_0x3a80e3,_0x1a961b,_0x2fa122,_0xf3742b);}},_0x5742ec=_0x567d7e['settings']??{},_0x29369f=await _0x3a3a0d[_0x53a1e5(0x13e)](fetchAuthConfig),_0x277497=_0x29369f?resolveAuthEnvironmentLocally(_0x29369f,_0x567d7e['environmentKey']):null,_0x4a63d8=_0x3a3a0d[_0x53a1e5(0x157)](typeof _0x277497?.[_0x53a1e5(0xc9)],'string')&&_0x277497[_0x53a1e5(0xc9)][_0x53a1e5(0xcc)]()?_0x277497['loginInstructions']:undefined,_0x37ebef=typeof _0x5742ec['loginInstructions']==='string'&&_0x5742ec[_0x53a1e5(0xc9)][_0x53a1e5(0xcc)]()?_0x5742ec[_0x53a1e5(0xc9)]:undefined,_0x5a79d7=_0x37ebef||!_0x4a63d8?_0x5742ec:{..._0x5742ec,'loginInstructions':_0x4a63d8},_0x4cbab1=_0x3a3a0d[_0x53a1e5(0xec)](Boolean,_0x5a79d7['loginInstructions']?.['trim']()),_0x3d9079=Boolean(_0x5742ec[_0x53a1e5(0x148)]||_0x277497?.['forceLogin']),_0x4474ed=_0x277497?.[_0x53a1e5(0xda)],_0x54c25f=_0x5742ec['setupHeaders'],_0x2c1ada=_0x54c25f??_0x277497?.['setupHeaders'],_0x1fc8b6=_0x35613d['effectiveBaseUrl']??_0x5742ec[_0x53a1e5(0x12d)]??(_0x4474ed&&_0x3a3a0d['PFjlc'](_0x4474ed['length'],0x0)?_0x4474ed[0x0]:''),_0x20efb8=_0x1fc8b6?_0x3a3a0d['EHvZm'](needsTunnel,_0x1fc8b6):![],_0x36caff={'invalidateOn':_0x277497?.['invalidateOn'],'userAgent':_0x277497?.['browserOptions']?.['userAgent']??_0x5742ec['userAgent']};_0x3d9079&&console[_0x53a1e5(0x151)]('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x567d7e['name']+_0x53a1e5(0x166));if(!_0x3d9079){const _0x33ddc4=await checkLocalCache(_0x567d7e[_0x53a1e5(0x11f)],_0x567d7e[_0x53a1e5(0xe6)],_0x1fc8b6,_0x2c1ada,_0x36caff);if(_0x33ddc4){if(_0x1fc8b6&&!_0x20efb8){const _0x1983ed=await _0x3a3a0d['ZjWRY'](isCachedSessionLive,_0x33ddc4['storageStatePath'],_0x1fc8b6,{'sessionCheckPath':_0x277497?.[_0x53a1e5(0x120)],'setupHeaders':_0x2c1ada},{'launchBrowser':launchRealBrowser});if(_0x1983ed)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x567d7e['name']+'\x22'),{'authPath':_0x33ddc4['storageStatePath'],'settings':_0x5a79d7,'resolvedEnv':_0x277497};console[_0x53a1e5(0x151)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x567d7e['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),emitSessionValidationHint(_0x1fc8b6,_0x277497);}else return _0x20efb8&&console['log'](_0x53a1e5(0x15e)+_0x567d7e[_0x53a1e5(0x11f)]+'\x22'),{'authPath':_0x33ddc4[_0x53a1e5(0x136)],'settings':_0x5a79d7,'resolvedEnv':_0x277497};}}if(!_0x3d9079&&_0x567d7e['sessionState']){if(_0x20efb8)console['log']('\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22'+_0x1fc8b6+'\x22\x20on\x20profile\x20\x22'+_0x567d7e['name']+'\x22');else{const _0x4dc7b8=await writeSessionToLocalCache(_0x567d7e[_0x53a1e5(0x11f)],_0x567d7e['organizationId'],_0x1fc8b6,_0x2c1ada,_0x567d7e[_0x53a1e5(0x12f)],_0x4474ed,_0x36caff);if(_0x1fc8b6){const _0x49536e=await isCachedSessionLive(_0x4dc7b8,_0x1fc8b6,{'sessionCheckPath':_0x277497?.['sessionCheckPath'],'setupHeaders':_0x2c1ada},{'launchBrowser':launchRealBrowser});if(_0x49536e)return console[_0x53a1e5(0x151)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x567d7e['name']+_0x53a1e5(0xe5)),{'authPath':_0x4dc7b8,'settings':_0x5a79d7,'resolvedEnv':_0x277497};console['log'](_0x53a1e5(0x150)+_0x567d7e['name']+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x3a3a0d[_0x53a1e5(0x169)](emitSessionValidationHint,_0x1fc8b6,_0x277497);}else return{'authPath':_0x4dc7b8,'settings':_0x5a79d7,'resolvedEnv':_0x277497};}}if(_0x4cbab1)return console[_0x53a1e5(0x151)](_0x53a1e5(0x113)+_0x567d7e['name']+_0x53a1e5(0x109)),{'authPath':undefined,'settings':_0x5a79d7,'resolvedEnv':_0x277497};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x567d7e[_0x53a1e5(0x11f)]+_0x53a1e5(0x15d));const _0x2c6cec=Boolean(process[_0x53a1e5(0x112)]['RANGER_TEST_USERNAME'])&&_0x3a3a0d['EHvZm'](Boolean,process[_0x53a1e5(0x112)]['RANGER_TEST_PASSWORD']),_0x200263=_0x3a3a0d['EHvZm'](Boolean,_0x567d7e[_0x53a1e5(0x16b)]);if(_0x3a3a0d[_0x53a1e5(0xd5)](_0x2c6cec,_0x200263))try{const _0x4c6067=_0x1fc8b6?await serverSideLoginWithOptionalTunnel(_0x567d7e['name'],_0x1fc8b6,{'force':_0x3d9079,'telemetry':_0x35613d[_0x53a1e5(0x118)]}):await _0x3a3a0d[_0x53a1e5(0x141)](serverSideLogin,_0x567d7e[_0x53a1e5(0x11f)],{'force':_0x3d9079});if(_0x4c6067['status']===_0x53a1e5(0x146))console['log'](_0x53a1e5(0x153));else{if(_0x4c6067['status']===_0x3a3a0d['MiejP']&&_0x4c6067[_0x53a1e5(0xe0)]){console['log']('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x5080e3=await writeSessionToLocalCache(_0x567d7e['name'],_0x567d7e[_0x53a1e5(0xe6)],_0x1fc8b6,_0x2c1ada,_0x4c6067[_0x53a1e5(0xe0)],_0x4474ed,_0x36caff);return _0x2c6cec&&!_0x200263&&await promptSaveCredentials(_0x567d7e['name']),{'authPath':_0x5080e3,'settings':_0x5a79d7,'resolvedEnv':_0x277497};}else _0x4c6067['test_output']&&(console['log'](_0x3a3a0d[_0x53a1e5(0x15f)]),console['log'](_0x4c6067['test_output'])),console[_0x53a1e5(0x151)](_0x53a1e5(0xc4));}}catch(_0x237990){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x3a3a0d['fxpwA'](_0x237990,Error)?_0x237990['message']:_0x3a3a0d['JKTqK'](String,_0x237990))),console['log'](_0x3a3a0d['KRExO']);}const _0x544acc=_0x277497?{..._0x277497,'setupHeaders':_0x2c1ada}:_0x1fc8b6?{'key':_0x567d7e['environmentKey']??'','domains':[_0x1fc8b6],'setupHeaders':_0x2c1ada}:null,{sessionState:_0x3e3f79}=await _0x3a3a0d['xPHOc'](manualBrowserLogin,_0x567d7e,_0x544acc,{'persistSessionState':!_0x20efb8}),_0x1095bd=await _0x3a3a0d[_0x53a1e5(0x11b)](writeSessionToLocalCache,_0x567d7e[_0x53a1e5(0x11f)],_0x567d7e['organizationId'],_0x1fc8b6,_0x2c1ada,_0x3e3f79,_0x4474ed,_0x36caff);return{'authPath':_0x1095bd,'settings':_0x5a79d7,'resolvedEnv':_0x277497};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const _0x18a565=_0x1eb7;(function(_0x244fec,_0x3c605b){const _0x3a7f75=_0x1eb7,_0x228d30=_0x244fec();while(!![]){try{const _0x14b56e=parseInt(_0x3a7f75(0xef))/0x1*(parseInt(_0x3a7f75(0xf6))/0x2)+-parseInt(_0x3a7f75(0xe7))/0x3*(parseInt(_0x3a7f75(0xe6))/0x4)+parseInt(_0x3a7f75(0x104))/0x5+parseInt(_0x3a7f75(0x103))/0x6*(parseInt(_0x3a7f75(0xff))/0x7)+-parseInt(_0x3a7f75(0xe3))/0x8+parseInt(_0x3a7f75(0xe8))/0x9+parseInt(_0x3a7f75(0xed))/0xa;if(_0x14b56e===_0x3c605b)break;else _0x228d30['push'](_0x228d30['shift']());}catch(_0x4eb440){_0x228d30['push'](_0x228d30['shift']());}}}(_0x244d,0xbc547));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';function _0x244d(){const _0x593c3a=['428420PmWXLw','.storageState.json','clientIp','length','userAgent','lQESF','test','toString','stdout','RhWBp','slice','replace','auth','setupHeaders','stringify','has','newPage','5615400XhHjOg','hostname','endsWith','232CrWbiu','23223SRnKkL','898803GTXlMz','PoFDv','orgId','localhost','profileName','8532360rQgXqp','.localhost','3219hUupFG','MvliS','baseUrl','add','launchBrowser','sort','defaultEnvironmentKey','338VzUBuj','close','effectiveBaseUrl','newContext','isTTY','port','frppQ','startsWith','map','21SklLVj','localhost.','PDyNt','gZVHO','679008mLbNfI'];_0x244d=function(){return _0x593c3a;};return _0x244d();}export function isInteractive(_0x1139f1=process['env'],_0x3bda76={'stdin':process['stdin'],'stdout':process[_0x18a565(0x10c)]}){const _0x36bc68=_0x18a565,_0x25ccbf={'PDyNt':function(_0x1828c2,_0x1a3a2a){return _0x1828c2(_0x1a3a2a);}};if(_0x1139f1['CI'])return![];return _0x25ccbf['PDyNt'](Boolean,_0x3bda76['stdin'][_0x36bc68(0xfa)])&&_0x25ccbf[_0x36bc68(0x101)](Boolean,_0x3bda76['stdout'][_0x36bc68(0xfa)]);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x22dffd){const _0x70f885=_0x18a565,_0xb221c3={'KbRLo':function(_0x56f3d1,_0x4f2777){return _0x56f3d1(_0x4f2777);},'frppQ':_0x70f885(0xf1),'ozwoQ':_0x70f885(0x108),'RhWBp':_0x70f885(0x106),'PoFDv':'sha256','MvliS':'hex'},_0x3e30e5=new Set(_0x22dffd['invalidateOn']??DEFAULT_INVALIDATE_ON);_0x22dffd[_0x70f885(0xf8)]&&_0xb221c3['KbRLo'](needsTunnel,_0x22dffd['effectiveBaseUrl'])&&_0x3e30e5[_0x70f885(0xf2)](_0x70f885(0xf1));const _0x2bdc2a={'orgId':_0x22dffd[_0x70f885(0xea)],'profileName':_0x22dffd[_0x70f885(0xec)]};return _0x3e30e5['has'](_0xb221c3[_0x70f885(0xfc)])&&(_0x2bdc2a[_0x70f885(0xf8)]=_0x22dffd['effectiveBaseUrl']),_0x3e30e5[_0x70f885(0x113)](_0x70f885(0x111))&&(_0x2bdc2a['setupHeaders']=_0x22dffd['setupHeaders']?sortObjectKeys(_0x22dffd[_0x70f885(0x111)]):_0x22dffd[_0x70f885(0x111)]),_0x3e30e5['has'](_0x70f885(0xfb))&&(_0x2bdc2a[_0x70f885(0xfb)]=extractPort(_0x22dffd[_0x70f885(0xf8)])),_0x3e30e5[_0x70f885(0x113)](_0xb221c3['ozwoQ'])&&_0x22dffd[_0x70f885(0x108)]!==undefined&&(_0x2bdc2a[_0x70f885(0x108)]=_0x22dffd[_0x70f885(0x108)]),_0x3e30e5[_0x70f885(0x113)](_0xb221c3[_0x70f885(0x10d)])&&_0x22dffd['clientIp']!==undefined&&(_0x2bdc2a['clientIp']=_0x22dffd['clientIp']),createHash(_0xb221c3[_0x70f885(0xe9)])['update'](JSON[_0x70f885(0x112)](_0x2bdc2a))['digest'](_0xb221c3[_0x70f885(0xf0)])[_0x70f885(0x10e)](0x0,0xc);}function extractPort(_0x267823){try{return new URL(_0x267823)['port'];}catch{return'';}}function sortObjectKeys(_0x61ac36){const _0x2b2a5d=_0x18a565,_0x495409={};for(const _0x3f7cd3 of Object['keys'](_0x61ac36)[_0x2b2a5d(0xf4)]()){_0x495409[_0x3f7cd3]=_0x61ac36[_0x3f7cd3];}return _0x495409;}export function getSessionCachePath(_0x58899c,_0x508651){const _0xc760ab=_0x18a565,_0x4d001a={'zHwNq':function(_0x50f3b2,_0x2a599a,_0x42c708,_0x40a9b2){return _0x50f3b2(_0x2a599a,_0x42c708,_0x40a9b2);},'DdNdS':function(_0x3ffd8f){return _0x3ffd8f();},'gNNoW':_0xc760ab(0x110)};return _0x4d001a['zHwNq'](join,_0x4d001a['DdNdS'](getRangerHomeDir),_0x4d001a['gNNoW'],_0x58899c+'-'+_0x508651+'.json');}function _0x1eb7(_0x46220f,_0x15c962){_0x46220f=_0x46220f-0xe2;const _0x244d9e=_0x244d();let _0x1eb722=_0x244d9e[_0x46220f];return _0x1eb722;}export function getStorageStatePath(_0x5ea2cc){const _0x188548=_0x18a565,_0x57d256={'gZVHO':_0x188548(0x105)};return _0x5ea2cc[_0x188548(0x10f)](/\.json$/,_0x57d256[_0x188548(0x102)]);}export function needsTunnel(_0x1e7d57){const _0x43da1c=_0x18a565,_0x5edf15={'lQESF':function(_0x1f374f,_0x3f2edb){return _0x1f374f===_0x3f2edb;},'ebgDH':'127.0.0.1','KsvvY':_0x43da1c(0xee)};let _0x3853a1;try{_0x3853a1=new URL(_0x1e7d57)['hostname'];}catch{return![];}if(_0x5edf15[_0x43da1c(0x109)](_0x3853a1,_0x43da1c(0xeb))||_0x5edf15[_0x43da1c(0x109)](_0x3853a1,_0x5edf15['ebgDH']))return!![];if(_0x3853a1[_0x43da1c(0xe5)](_0x5edf15['KsvvY']))return!![];if(_0x3853a1['includes'](_0x43da1c(0x100)))return!![];return![];}export function hostnameOf(_0x3d82f6){const _0x483340=_0x18a565;return new URL(_0x3d82f6)[_0x483340(0xe4)];}export function duplicateCookiesForDomains(_0x523b0b,_0x75b6a6){const _0x574f3d=_0x18a565,_0x3ae9ff=[..._0x523b0b],_0x4d6659=new Set(_0x523b0b[_0x574f3d(0xfe)](_0x4becda=>_0x4becda['domain']));for(const _0x3216da of _0x75b6a6){let _0x4f3751;try{_0x4f3751=hostnameOf(_0x3216da);}catch{continue;}if(!_0x4f3751)continue;const _0x380958=_0x4f3751[_0x574f3d(0xfd)]('.')?_0x4f3751:'.'+_0x4f3751;if(_0x4d6659['has'](_0x4f3751)||_0x4d6659[_0x574f3d(0x113)](_0x380958))continue;for(const _0x412a0c of _0x523b0b){_0x3ae9ff['push']({..._0x412a0c,'domain':_0x380958});}_0x4d6659['add'](_0x380958);}return _0x3ae9ff;}export function resolveAuthEnvironmentLocally(_0x3c8166,_0x3d33af){const _0x19f008=_0x18a565,_0x2b32a3=_0x3c8166['environments'];if(_0x3d33af){const _0x399a4e=_0x2b32a3[_0x3d33af];if(!_0x399a4e)return null;return{'key':_0x3d33af,..._0x399a4e};}if(_0x3c8166[_0x19f008(0xf5)]){const _0x168e10=_0x2b32a3[_0x3c8166[_0x19f008(0xf5)]];if(!_0x168e10)return null;return{'key':_0x3c8166['defaultEnvironmentKey'],..._0x168e10};}const _0x201dde=Object['keys'](_0x2b32a3);if(_0x201dde[_0x19f008(0x107)]===0x1){const _0x4d9374=_0x201dde[0x0];return{'key':_0x4d9374,..._0x2b32a3[_0x4d9374]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x1865b5,_0x4033d7){const _0x352f42=_0x18a565;try{if(_0x4033d7)return new URL(_0x4033d7,_0x1865b5)[_0x352f42(0x10b)]();return new URL(_0x1865b5)[_0x352f42(0x10b)]();}catch{return null;}}export function looksLikeLoginUrl(_0x185f27){const _0x1da561=_0x18a565;try{const _0x4a45d5=new URL(_0x185f27);return LOGIN_URL_PATTERN['test'](_0x4a45d5['pathname']);}catch{return LOGIN_URL_PATTERN[_0x1da561(0x10a)](_0x185f27);}}export async function isCachedSessionLive(_0x1abe19,_0x677a88,_0x37ca11={},_0x205741={}){const _0x6f7be2=_0x18a565,_0x3961cd={'neFYt':'domcontentloaded','KYAZh':function(_0x53b7de,_0x517b65){return _0x53b7de===_0x517b65;}},_0x3ac27d=buildSessionCheckUrl(_0x677a88,_0x37ca11['sessionCheckPath']);if(!_0x3ac27d)return!![];if(!_0x205741[_0x6f7be2(0xf3)])return!![];let _0x4875f3=null;try{_0x4875f3=await _0x205741[_0x6f7be2(0xf3)]();const _0x27cb15=await _0x4875f3[_0x6f7be2(0xf9)]({'storageState':_0x1abe19,'ignoreHTTPSErrors':!![],..._0x37ca11['setupHeaders']?{'extraHTTPHeaders':_0x37ca11['setupHeaders']}:{}}),_0x438c1b=await _0x27cb15[_0x6f7be2(0xe2)](),_0x5669da=await _0x438c1b['goto'](_0x3ac27d,{'waitUntil':_0x3961cd['neFYt'],'timeout':0x3a98}),_0x4cc5d6=_0x5669da?.['status']();if(_0x3961cd['KYAZh'](_0x4cc5d6,0x191)||_0x4cc5d6===0x193)return![];const _0x1bbf64=_0x438c1b['url']();if(looksLikeLoginUrl(_0x1bbf64))return![];return!![];}catch{return![];}finally{if(_0x4875f3)await _0x4875f3[_0x6f7be2(0xf7)]()['catch'](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x5412(){const _0x3854ba=['121214PSlUam','utf8','6vDSbjg','750qfwdda','AdUrR','getAuthTag','50553UmcfJt','mzRvO','933999gvxQwK','3089640EIhKNp','final','19625PmoPya','uCxqF','aes-256-gcm','2lWxBds','1094513tTkGsa','6913687KuxrXo','92MJmgoH'];_0x5412=function(){return _0x3854ba;};return _0x5412();}const _0x5481b1=_0x2200;(function(_0x4f4fd7,_0x29e810){const _0x34c914=_0x2200,_0xf04870=_0x4f4fd7();while(!![]){try{const _0x1953ee=-parseInt(_0x34c914(0x175))/0x1*(-parseInt(_0x34c914(0x179))/0x2)+parseInt(_0x34c914(0x181))/0x3+parseInt(_0x34c914(0x178))/0x4*(-parseInt(_0x34c914(0x172))/0x5)+parseInt(_0x34c914(0x17b))/0x6*(parseInt(_0x34c914(0x176))/0x7)+-parseInt(_0x34c914(0x182))/0x8+parseInt(_0x34c914(0x17f))/0x9*(-parseInt(_0x34c914(0x17c))/0xa)+parseInt(_0x34c914(0x177))/0xb;if(_0x1953ee===_0x29e810)break;else _0xf04870['push'](_0xf04870['shift']());}catch(_0x53629a){_0xf04870['push'](_0xf04870['shift']());}}}(_0x5412,0x4e0b4));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x5481b1(0x174),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x5c3427){return pbkdf2Sync(_0x5c3427,SALT,0x186a0,KEY_LENGTH,'sha256');}export function encrypt(_0x38019c,_0x545b3f){const _0x66bfa7=_0x5481b1,_0x13756f={'bJNFY':function(_0x3c39b7,_0x59bc5b,_0x2bed35,_0x10bff0){return _0x3c39b7(_0x59bc5b,_0x2bed35,_0x10bff0);},'uCxqF':_0x66bfa7(0x17a)},_0x4af6f0=deriveKey(_0x545b3f),_0x5905f8=randomBytes(IV_LENGTH),_0x36003a=_0x13756f['bJNFY'](createCipheriv,ALGORITHM,_0x4af6f0,_0x5905f8),_0x16925e=Buffer['concat']([_0x36003a['update'](_0x38019c,_0x13756f[_0x66bfa7(0x173)]),_0x36003a['final']()]),_0x3545c3=_0x36003a[_0x66bfa7(0x17e)]();return Buffer['concat']([_0x5905f8,_0x3545c3,_0x16925e]);}function _0x2200(_0x16d2d3,_0x5c0c90){_0x16d2d3=_0x16d2d3-0x172;const _0x541255=_0x5412();let _0x2200a6=_0x541255[_0x16d2d3];return _0x2200a6;}export function decrypt(_0x1fe0d4,_0x11ad2b){const _0x1055d0=_0x5481b1,_0x210096={'edFeV':function(_0x190b4d,_0xa9607f){return _0x190b4d(_0xa9607f);},'mzRvO':function(_0x50b8fe,_0x5c5b72){return _0x50b8fe+_0x5c5b72;},'zxWNe':function(_0x54014e,_0x4828b1,_0x950cb6,_0x13e7cf){return _0x54014e(_0x4828b1,_0x950cb6,_0x13e7cf);},'AdUrR':'utf8'},_0x2433aa=_0x210096['edFeV'](deriveKey,_0x11ad2b),_0x2d5e64=_0x1fe0d4['subarray'](0x0,IV_LENGTH),_0x2630bc=_0x1fe0d4['subarray'](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x252885=_0x1fe0d4['subarray'](_0x210096[_0x1055d0(0x180)](IV_LENGTH,TAG_LENGTH)),_0x4a5376=_0x210096['zxWNe'](createDecipheriv,ALGORITHM,_0x2433aa,_0x2d5e64);return _0x4a5376['setAuthTag'](_0x2630bc),_0x4a5376['update'](_0x252885)+_0x4a5376[_0x1055d0(0x183)](_0x210096[_0x1055d0(0x17d)]);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x14626b=_0x1cde;(function(_0x1353cd,_0x3a93c9){const _0x123309=_0x1cde,_0x376594=_0x1353cd();while(!![]){try{const _0x510a14=parseInt(_0x123309(0x108))/0x1+parseInt(_0x123309(0xf9))/0x2*(parseInt(_0x123309(0xf6))/0x3)+-parseInt(_0x123309(0xff))/0x4+-parseInt(_0x123309(0xea))/0x5+-parseInt(_0x123309(0xe5))/0x6*(parseInt(_0x123309(0xf2))/0x7)+parseInt(_0x123309(0xf7))/0x8*(-parseInt(_0x123309(0xda))/0x9)+parseInt(_0x123309(0x107))/0xa*(parseInt(_0x123309(0xfe))/0xb);if(_0x510a14===_0x3a93c9)break;else _0x376594['push'](_0x376594['shift']());}catch(_0x275e9d){_0x376594['push'](_0x376594['shift']());}}}(_0x526c,0x441a9));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';function _0x1cde(_0x56f20f,_0x514bde){_0x56f20f=_0x56f20f-0xd5;const _0x526c7f=_0x526c();let _0x1cde3f=_0x526c7f[_0x56f20f];return _0x1cde3f;}import{getCurrentVersion}from'./version.js';function _0x526c(){const _0x443df0=['DEBUG','83802ttmemt','ZOnEP','vVoSU','--secret','missing_option','662890dKnOge','/api/v1/mcp/desire-path-logs','errorMessage','BCaiZ','Missing\x20required\x20argument','test','runtime_error','--header','7ArEHaf','--authorization','application/json','error','18288EoTfBf','3408152eDxFSe','missing_required_argument','140SUWAaf','includes','BuAbh','Authorization','kZtQk','110IEfGfI','1855012nGLJzZ','GIRtV','invalid_option_value','unknown_argument','errorType','sessionId','indexOf','has','860110PabOJc','28440Yrawkn','syntax_error','push','[REDACTED]','no_token','slice','[desire-path]\x20Payload:\x20','9kdMlCk','GhWEF','--credentials','=[REDACTED]','stringify','isTTY','stdout','HthaQ','--apikey','--key'];_0x526c=function(){return _0x443df0;};return _0x526c();}const SENSITIVE_FLAGS=new Set(['--token','-t',_0x14626b(0xe8),'--api-key',_0x14626b(0xe2),_0x14626b(0xe3),'--password','--pass','--auth',_0x14626b(0xf3),_0x14626b(0xf1),'--cookie',_0x14626b(0xdc)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x35dfce){const _0x195336=_0x14626b;return TOKEN_PATTERNS['some'](_0x5e0dc1=>_0x5e0dc1[_0x195336(0xef)](_0x35dfce));}export function sanitizeArgs(_0x1d2106){const _0x333b29=_0x14626b,_0x1320b9={'kZtQk':function(_0x15c19b,_0x4d6d09){return _0x15c19b(_0x4d6d09);},'mOrBo':_0x333b29(0xd6)},_0x467c90=[];let _0x473980=![];for(let _0xfc3a4c=0x0;_0xfc3a4c<_0x1d2106['length'];_0xfc3a4c++){const _0x5ab652=_0x1d2106[_0xfc3a4c];if(_0x473980){_0x467c90['push']('[REDACTED]'),_0x473980=![];continue;}if(_0x5ab652['startsWith']('--')||_0x5ab652['startsWith']('-')){const _0x1ab2aa=_0x5ab652[_0x333b29(0x105)]('=');if(_0x1ab2aa!==-0x1){const _0x42c6d7=_0x5ab652[_0x333b29(0xd8)](0x0,_0x1ab2aa)['toLowerCase']();if(SENSITIVE_FLAGS[_0x333b29(0x106)](_0x42c6d7)){_0x467c90['push'](_0x5ab652[_0x333b29(0xd8)](0x0,_0x1ab2aa)+_0x333b29(0xdd));continue;}}else{const _0x43a31e=_0x5ab652['toLowerCase']();SENSITIVE_FLAGS['has'](_0x43a31e)&&(_0x473980=!![]);}_0x467c90[_0x333b29(0xd5)](_0x5ab652);}else _0x1320b9[_0x333b29(0xfd)](looksLikeToken,_0x5ab652)?_0x467c90['push'](_0x1320b9['mOrBo']):_0x467c90['push'](_0x5ab652);}return _0x467c90['join']('\x20');}export async function logDesirePath(_0x7d3d75){const _0x2f9ddb=_0x14626b,_0x3bb966={'BCaiZ':function(_0x3cbc00){return _0x3cbc00();},'vVoSU':_0x2f9ddb(0xd7),'oiPHk':_0x2f9ddb(0xfc),'xRHZv':function(_0x3ebdef,_0x10896c,_0x502823){return _0x3ebdef(_0x10896c,_0x502823);},'VUcxT':'POST'};try{const _0x2a15c2=await _0x3bb966[_0x2f9ddb(0xed)](getToken)['catch'](()=>null),_0x532b01=getApiBaseUrl(),_0x4aa76c=getCurrentVersion(),_0xcc2d60=_0x2a15c2?'has_token':_0x3bb966[_0x2f9ddb(0xe7)],_0x23c106={..._0x7d3d75['metadata'],'authStatus':_0xcc2d60,'isTty':process[_0x2f9ddb(0xe0)][_0x2f9ddb(0xdf)]??![]},_0x3a8061={'Content-Type':_0x2f9ddb(0xf4)};_0x2a15c2&&(_0x3a8061[_0x3bb966['oiPHk']]='Bearer\x20'+_0x2a15c2);const _0x282f9f={'rawCommand':_0x7d3d75['rawCommand'],'errorMessage':_0x7d3d75[_0x2f9ddb(0xec)],'errorType':_0x7d3d75[_0x2f9ddb(0x103)],'featureId':_0x7d3d75['featureId'],'sessionId':_0x7d3d75[_0x2f9ddb(0x104)],'metadata':_0x23c106,'cliVersion':_0x4aa76c};process['env'][_0x2f9ddb(0xe4)]&&(console['error']('[desire-path]\x20Sending\x20log\x20to\x20'+_0x532b01+_0x2f9ddb(0xeb)),console[_0x2f9ddb(0xf5)](_0x2f9ddb(0xd9)+JSON[_0x2f9ddb(0xde)](_0x282f9f,null,0x2))),await _0x3bb966['xRHZv'](fetch,_0x532b01+'/api/v1/mcp/desire-path-logs',{'method':_0x3bb966['VUcxT'],'headers':_0x3a8061,'body':JSON['stringify'](_0x282f9f)});}catch(_0x20077a){process['env']['DEBUG']&&console[_0x2f9ddb(0xf5)]('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x20077a);}}export function getErrorType(_0x7aa000,_0x1f17e0){const _0x552a4b=_0x14626b,_0x362047={'GIRtV':_0x552a4b(0xf0),'tmlkX':'unknown','ZOnEP':'Unknown\x20command','ZHkLr':'Unknown\x20argument','EkuhR':'Not\x20enough\x20non-option\x20arguments','BuAbh':_0x552a4b(0x101),'HthaQ':_0x552a4b(0xe9),'GhWEF':_0x552a4b(0x109)};if(_0x1f17e0)return _0x362047[_0x552a4b(0x100)];if(!_0x7aa000)return _0x362047['tmlkX'];if(_0x7aa000[_0x552a4b(0xfa)](_0x362047[_0x552a4b(0xe6)]))return'unknown_command';if(_0x7aa000[_0x552a4b(0xfa)](_0x362047['ZHkLr']))return _0x552a4b(0x102);if(_0x7aa000[_0x552a4b(0xfa)](_0x362047['EkuhR']))return _0x552a4b(0xf8);if(_0x7aa000['includes']('Invalid\x20values'))return _0x362047[_0x552a4b(0xfb)];if(_0x7aa000['includes'](_0x552a4b(0xee)))return _0x362047[_0x552a4b(0xe1)];return _0x362047[_0x552a4b(0xdb)];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function _0xdb17(_0x2732ca,_0xcdd564){_0x2732ca=_0x2732ca-0x163;const _0x32e180=_0x32e1();let _0xdb17c2=_0x32e180[_0x2732ca];return _0xdb17c2;}const _0x40f7de=_0xdb17;(function(_0x3df51f,_0x170a7c){const _0x14fb33=_0xdb17,_0x3284e4=_0x3df51f();while(!![]){try{const _0x1cfe5c=parseInt(_0x14fb33(0x190))/0x1+parseInt(_0x14fb33(0x1a5))/0x2+parseInt(_0x14fb33(0x1ad))/0x3*(-parseInt(_0x14fb33(0x172))/0x4)+-parseInt(_0x14fb33(0x19a))/0x5+-parseInt(_0x14fb33(0x184))/0x6+-parseInt(_0x14fb33(0x195))/0x7+parseInt(_0x14fb33(0x199))/0x8;if(_0x1cfe5c===_0x170a7c)break;else _0x3284e4['push'](_0x3284e4['shift']());}catch(_0x2b0183){_0x3284e4['push'](_0x3284e4['shift']());}}}(_0x32e1,0xc85b4));import{spawn}from'child_process';import _0xbc9f05 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x40f7de(0x1a8),WORKOS_TOKEN_URL=_0x40f7de(0x163);export async function requestDeviceCode(_0x9befa2){const _0x100687=_0x40f7de,_0x1b9fd9={'FjcEC':function(_0x466c9,_0x2665d5,_0x3fb63e){return _0x466c9(_0x2665d5,_0x3fb63e);},'ReWAi':'application/x-www-form-urlencoded'},_0x4a5bd2=await _0x1b9fd9[_0x100687(0x175)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':'POST','headers':{'Content-Type':_0x1b9fd9['ReWAi']},'body':new URLSearchParams({'client_id':_0x9befa2})});if(!_0x4a5bd2['ok']){const _0x4137c3=await _0x4a5bd2['text']();throw new Error(_0x100687(0x1aa)+_0x4a5bd2[_0x100687(0x182)]+'\x20'+_0x4137c3);}return _0x4a5bd2[_0x100687(0x197)]();}export async function pollForTokens(_0x1cab0,_0x18d416,_0x49a897,_0x4f0937){const _0x30009f=_0x40f7de,_0x3c75ca={'qKdpq':function(_0x55f831,_0x41907a){return _0x55f831*_0x41907a;},'QlBJf':function(_0x51d398,_0x271f78){return _0x51d398(_0x271f78);},'xiptc':function(_0x43d94a,_0x5f518b,_0x3cf50a){return _0x43d94a(_0x5f518b,_0x3cf50a);},'sfGqU':function(_0x181e4f,_0x51b5a1){return _0x181e4f===_0x51b5a1;}},_0x1b3dc0=Date['now']()+_0x4f0937*0x3e8;let _0x4268e2=_0x3c75ca[_0x30009f(0x18f)](_0x49a897,0x3e8);while(Date['now']()<_0x1b3dc0){await _0x3c75ca['QlBJf'](sleep,_0x4268e2);const _0x1094f7=await _0x3c75ca['xiptc'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x30009f(0x1ab)},'body':new URLSearchParams({'client_id':_0x1cab0,'device_code':_0x18d416,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x1094f7['ok'])return _0x1094f7[_0x30009f(0x197)]();const _0x35f9ff=await _0x1094f7[_0x30009f(0x197)]();if(_0x3c75ca[_0x30009f(0x1ac)](_0x35f9ff[_0x30009f(0x178)],_0x30009f(0x192)))continue;if(_0x35f9ff['error']==='slow_down'){_0x4268e2+=0x3e8;continue;}throw new Error(_0x35f9ff['error_description']||_0x35f9ff['error']||'Authentication\x20failed');}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x4a9502){const _0x1f3a94=_0x40f7de,_0xd2d7dd={'VSOSQ':function(_0x4c427f){return _0x4c427f();},'kOCgx':function(_0x7df561,_0x4f5edf,_0x29d24){return _0x7df561(_0x4f5edf,_0x29d24);}},_0x2d93b5=_0xd2d7dd[_0x1f3a94(0x174)](getApiBaseUrl);try{const _0x2b6279=await _0xd2d7dd['kOCgx'](fetch,_0x2d93b5+_0x1f3a94(0x1b1),{'method':'GET','headers':{'workos-token':_0x4a9502}});if(_0x2b6279['ok'])return _0x2b6279[_0x1f3a94(0x197)]();}catch{}return null;}function buildKeyName(_0x3e3d57,_0x2bc998){const _0x141358=_0x40f7de,_0x17b972={'VrqbF':function(_0x51c869,_0x59b78a){return _0x51c869===_0x59b78a;},'cVPgz':function(_0x33a46b,_0x2b02eb){return _0x33a46b+_0x2b02eb;}},_0x7f7d53=_0x2bc998[_0x141358(0x189)](_0x4aed93=>_0x4aed93[_0x141358(0x19f)]===_0x3e3d57||_0x4aed93[_0x141358(0x19f)]['startsWith'](_0x3e3d57+'\x20('));if(_0x17b972['VrqbF'](_0x7f7d53['length'],0x0))return _0x3e3d57;return _0x3e3d57+'\x20('+_0x17b972[_0x141358(0x169)](_0x7f7d53['length'],0x1)+')';}export async function provisionApiKey(_0x57de90){const _0x412eae=_0x40f7de,_0x5080c7={'jDCvJ':function(_0x1e5361){return _0x1e5361();},'XoRhK':_0x412eae(0x18e),'DLbmL':function(_0x57e6a3,_0x4f5464){return _0x57e6a3(_0x4f5464);},'VJWuQ':function(_0x3c1848,_0x418d67,_0x33b26b){return _0x3c1848(_0x418d67,_0x33b26b);},'aFluE':function(_0x4a3cc2,_0x4d70d5,_0x4d43fc){return _0x4a3cc2(_0x4d70d5,_0x4d43fc);},'KAhdm':'POST','lWwgA':_0x412eae(0x16c)},_0x27dcd9=_0x5080c7['jDCvJ'](getApiBaseUrl),_0x34f607={'Content-Type':_0x5080c7['XoRhK'],'workos-token':_0x57de90},_0x2e68e3=await _0x5080c7[_0x412eae(0x1a6)](fetchUserProfile,_0x57de90),_0x528111=_0x2e68e3?.[_0x412eae(0x164)]||_0x2e68e3?.['email']?.[_0x412eae(0x16d)]('@')[0x0],_0x31a0d8=_0x528111?_0x528111+'\x27s\x20CLI\x20Key':_0x412eae(0x193);let _0x59d278=[];try{const _0xb4da6e=await _0x5080c7[_0x412eae(0x1ae)](fetch,_0x27dcd9+'/api-keys',{'method':_0x412eae(0x16a),'headers':_0x34f607});if(_0xb4da6e['ok']){const _0x3620f1=await _0xb4da6e['json']();_0x59d278=_0x3620f1['apiKeys'];}}catch{}const _0x2f699a=_0x5080c7[_0x412eae(0x1ae)](buildKeyName,_0x31a0d8,_0x59d278),_0x47a827=await _0x5080c7['aFluE'](fetch,_0x27dcd9+_0x412eae(0x17a),{'method':_0x5080c7[_0x412eae(0x1a7)],'headers':_0x34f607,'body':JSON['stringify']({'name':_0x2f699a,'scope':_0x5080c7['lWwgA']})});if(!_0x47a827['ok']){const _0x2ba160=await _0x47a827[_0x412eae(0x16f)]();throw new Error(_0x412eae(0x196)+_0x47a827['status']+'\x20'+_0x2ba160);}const _0x29f462=await _0x47a827['json']();return _0x29f462[_0x412eae(0x1a3)]['token'];}export function openBrowser(_0x221517){const _0x2bb075=_0x40f7de,_0x57e72d={'dAbHv':_0x2bb075(0x17f),'uaXdU':function(_0x363201,_0x4bed17){return _0x363201===_0x4bed17;},'blDvT':'open','EOAtk':function(_0x18075e,_0x2e72cf,_0x102901,_0x3a7ec4){return _0x18075e(_0x2e72cf,_0x102901,_0x3a7ec4);}};try{if(process['platform']===_0x2bb075(0x183)){const _0x4b69a3=spawn(_0x2bb075(0x165),['/c','start','',_0x221517],{'detached':!![],'stdio':_0x57e72d['dAbHv'],'windowsHide':!![]});_0x4b69a3['unref']();return;}const _0x5316c4=_0x57e72d['uaXdU'](process['platform'],_0x2bb075(0x1b2))?_0x57e72d['blDvT']:'xdg-open',_0x40d2cc=_0x57e72d[_0x2bb075(0x185)](spawn,_0x5316c4,[_0x221517],{'detached':!![],'stdio':_0x57e72d[_0x2bb075(0x198)]});_0x40d2cc[_0x2bb075(0x179)]();}catch{}}function decodeJwtPayload(_0x359b0a){const _0x4548a4=_0x40f7de,_0x4c14af={'iUghE':'Invalid\x20JWT\x20format'},_0x15d622=_0x359b0a[_0x4548a4(0x16d)]('.');if(_0x15d622[_0x4548a4(0x173)]!==0x3)throw new Error(_0x4c14af['iUghE']);const _0x29fe3d=Buffer[_0x4548a4(0x18b)](_0x15d622[0x1],_0x4548a4(0x1a9))[_0x4548a4(0x170)]('utf-8');return JSON['parse'](_0x29fe3d);}async function selfServeSignup(_0x2105a4){const _0x539454=_0x40f7de,_0x2d15de={'yamQJ':function(_0x1a3e64){return _0x1a3e64();},'VfWxw':'POST'},_0x41314a=_0x2d15de['yamQJ'](getApiBaseUrl),_0x105299=await fetch(_0x41314a+_0x539454(0x181),{'method':_0x2d15de['VfWxw'],'headers':{'Content-Type':'application/json','workos-token':_0x2105a4}});if(!_0x105299['ok']){const _0x2c98e5=await _0x105299[_0x539454(0x16f)]();throw new Error(_0x539454(0x19e)+_0x105299['status']+'\x20'+_0x2c98e5);}return _0x105299[_0x539454(0x197)]();}async function fetchMyMemberships(_0x32f2f8){const _0x227065=_0x40f7de,_0x5eb70e={'oboxE':function(_0x31756d,_0x1a1e39,_0x568d92){return _0x31756d(_0x1a1e39,_0x568d92);},'QONOo':'GET'},_0x5890cd=getApiBaseUrl(),_0x309423=await _0x5eb70e[_0x227065(0x17e)](fetch,_0x5890cd+'/organization/my-memberships',{'method':_0x5eb70e[_0x227065(0x180)],'headers':{'workos-token':_0x32f2f8}});if(!_0x309423['ok']){const _0x28acb2=await _0x309423['text']();throw new Error(_0x227065(0x18d)+_0x309423[_0x227065(0x182)]+'\x20'+_0x28acb2);}const _0x4cb85d=await _0x309423['json']();return _0x4cb85d['memberships'];}async function refreshTokenWithOrg(_0x58fbaf,_0x23ca22,_0x3c6a0e){const _0x295c3f=_0x40f7de,_0xc8d408={'bSHHB':_0x295c3f(0x17d),'MKkqQ':'application/x-www-form-urlencoded'},_0x582148=await fetch(WORKOS_TOKEN_URL,{'method':_0xc8d408[_0x295c3f(0x19b)],'headers':{'Content-Type':_0xc8d408['MKkqQ']},'body':new URLSearchParams({'client_id':_0x58fbaf,'grant_type':_0x295c3f(0x177),'refresh_token':_0x23ca22,'organization_id':_0x3c6a0e})});if(!_0x582148['ok']){const _0x49cd71=await _0x582148[_0x295c3f(0x16f)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x582148['status']+'\x20'+_0x49cd71);}return _0x582148[_0x295c3f(0x197)]();}async function provisionCliToken(_0x162261){const _0x1cf133=_0x40f7de,_0x585ad6={'CCUxq':function(_0x3faa51,_0xd75dba,_0x378ba1){return _0x3faa51(_0xd75dba,_0x378ba1);},'WDOer':'POST'},_0x4a7446=getApiBaseUrl(),_0x56c37a=await _0x585ad6['CCUxq'](fetch,_0x4a7446+_0x1cf133(0x188),{'method':_0x585ad6['WDOer'],'headers':{'Content-Type':_0x1cf133(0x18e),'workos-token':_0x162261}});if(!_0x56c37a['ok']){const _0x514016=await _0x56c37a['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x56c37a['status']+'\x20'+_0x514016);}return _0x56c37a[_0x1cf133(0x197)]();}export async function runDeviceAuthFlow(){const _0x55e484=_0x40f7de,_0x432363={'CNJAz':function(_0x5f14a0){return _0x5f14a0();},'XKzsp':'\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','GKnGz':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','TDyAT':function(_0x1ea595,_0x3e4702,_0x2dca9e,_0x1c056d,_0x51e9f8){return _0x1ea595(_0x3e4702,_0x2dca9e,_0x1c056d,_0x51e9f8);},'zZgUO':function(_0x5624e0,_0x53f526){return _0x5624e0(_0x53f526);},'UaTgS':'Setting\x20up\x20your\x20organization...','aQFYs':function(_0x14512a,_0x4dc955){return _0x14512a(_0x4dc955);},'jvgFq':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','YSUbg':'list','HVtgU':'selected','prJhW':function(_0x17fcf5,_0x52a233,_0x21e901,_0x14f3d0){return _0x17fcf5(_0x52a233,_0x21e901,_0x14f3d0);},'fzyjH':_0x55e484(0x1a2),'osiKz':function(_0x2867f6,_0x563fe7){return _0x2867f6(_0x563fe7);}},_0x2034a5=_0x432363['CNJAz'](getCurrentEnvironment),_0x4654c5=ENVIRONMENT_CONFIGS[_0x2034a5]['workosClientId'],_0x22d2e5=await requestDeviceCode(_0x4654c5);console[_0x55e484(0x186)](_0x432363[_0x55e484(0x167)]),console['log'](_0x432363['GKnGz']),openBrowser(_0x22d2e5['verification_uri_complete']),console[_0x55e484(0x186)](_0x55e484(0x1af)+_0x22d2e5[_0x55e484(0x1a1)]),console[_0x55e484(0x186)]('Code:\x20'+_0x22d2e5['user_code']+'\x0a'),process[_0x55e484(0x18c)][_0x55e484(0x1a4)](_0x55e484(0x17c));let _0x1c5f49=await _0x432363[_0x55e484(0x194)](pollForTokens,_0x4654c5,_0x22d2e5['device_code'],_0x22d2e5[_0x55e484(0x16b)],_0x22d2e5['expires_in']);console['log']('\x20✓');const _0x2612b5=_0x432363['zZgUO'](decodeJwtPayload,_0x1c5f49[_0x55e484(0x171)]);if(!_0x2612b5[_0x55e484(0x19d)]){const _0x3ea38f=await fetchMyMemberships(_0x1c5f49['access_token']);let _0x4249ac;if(_0x3ea38f[_0x55e484(0x173)]===0x0){process[_0x55e484(0x18c)][_0x55e484(0x1a4)](_0x432363[_0x55e484(0x1b3)]);const _0x4cc2f6=await _0x432363[_0x55e484(0x168)](selfServeSignup,_0x1c5f49[_0x55e484(0x171)]);_0x4249ac=_0x4cc2f6[_0x55e484(0x166)],console['log']('\x20✓');}else{if(_0x3ea38f[_0x55e484(0x173)]===0x1)_0x4249ac=_0x3ea38f[0x0][_0x55e484(0x166)],console['log'](_0x55e484(0x176)+_0x3ea38f[0x0][_0x55e484(0x19f)]);else{const _0x445e1e=process['stdin']['isTTY']&&process['stdout'][_0x55e484(0x191)];if(!_0x445e1e)throw new Error(_0x432363['jvgFq']+_0x55e484(0x187));const {selected:_0x3e7ec8}=await _0xbc9f05['prompt']([{'type':_0x432363[_0x55e484(0x1b0)],'name':_0x432363[_0x55e484(0x18a)],'message':'Select\x20an\x20organization:','choices':_0x3ea38f[_0x55e484(0x1a0)](_0x4d62ee=>({'name':_0x4d62ee[_0x55e484(0x19f)],'value':_0x4d62ee[_0x55e484(0x166)]}))}]);_0x4249ac=_0x3e7ec8;}}_0x1c5f49=await _0x432363['prJhW'](refreshTokenWithOrg,_0x4654c5,_0x1c5f49[_0x55e484(0x177)],_0x4249ac);}process[_0x55e484(0x18c)][_0x55e484(0x1a4)](_0x432363[_0x55e484(0x17b)]);const _0x3aad9d=await _0x432363[_0x55e484(0x168)](provisionCliToken,_0x1c5f49['access_token']);return console[_0x55e484(0x186)]('\x20✓'),await _0x432363[_0x55e484(0x16e)](storeToken,_0x3aad9d['token']),_0x1c5f49['refresh_token']&&await storeRefreshToken(_0x1c5f49[_0x55e484(0x177)]),_0x3aad9d[_0x55e484(0x19c)];}function sleep(_0x187638){return new Promise(_0x42c42a=>setTimeout(_0x42c42a,_0x187638));}function _0x32e1(){const _0x39f029=['POST','oboxE','ignore','QONOo','/organization/self-serve-signup','status','win32','368922GMUOtj','EOAtk','log','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','/cli-auth/token','filter','HVtgU','from','stdout','Failed\x20to\x20fetch\x20memberships:\x20','application/json','qKdpq','103858QXXrnB','isTTY','authorization_pending','CLI\x20Key','TDyAT','11485992BmXSpV','Failed\x20to\x20provision\x20API\x20key:\x20','json','dAbHv','14015992vhKfER','809210wYfmMt','bSHHB','token','org_id','Failed\x20to\x20create\x20organization:\x20','name','map','verification_uri_complete','Provisioning\x20CLI\x20token...','apiKey','write','2870880RCauhZ','DLbmL','KAhdm','https://api.workos.com/user_management/authorize/device','base64url','Failed\x20to\x20request\x20device\x20code:\x20','application/x-www-form-urlencoded','sfGqU','165396oLoOqd','VJWuQ','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','YSUbg','/organization/me','darwin','UaTgS','https://api.workos.com/user_management/authenticate','firstName','cmd','organizationId','XKzsp','aQFYs','cVPgz','GET','interval','mcp:write','split','osiKz','text','toString','access_token','44jFlgef','length','VSOSQ','FjcEC','Using\x20organization:\x20','refresh_token','error','unref','/api-keys','fzyjH','Waiting\x20for\x20authentication...'];_0x32e1=function(){return _0x39f029;};return _0x32e1();}
|
|
1
|
+
const _0x55b5d9=_0x5940;(function(_0x75c7,_0xc352ad){const _0x4c34d7=_0x5940,_0x46e4eb=_0x75c7();while(!![]){try{const _0x15fa4b=parseInt(_0x4c34d7(0x1e2))/0x1*(-parseInt(_0x4c34d7(0x22d))/0x2)+-parseInt(_0x4c34d7(0x1e7))/0x3*(-parseInt(_0x4c34d7(0x1fb))/0x4)+parseInt(_0x4c34d7(0x226))/0x5*(parseInt(_0x4c34d7(0x21e))/0x6)+-parseInt(_0x4c34d7(0x1de))/0x7*(-parseInt(_0x4c34d7(0x213))/0x8)+parseInt(_0x4c34d7(0x209))/0x9*(parseInt(_0x4c34d7(0x1fc))/0xa)+-parseInt(_0x4c34d7(0x1dc))/0xb*(-parseInt(_0x4c34d7(0x215))/0xc)+parseInt(_0x4c34d7(0x1fd))/0xd;if(_0x15fa4b===_0xc352ad)break;else _0x46e4eb['push'](_0x46e4eb['shift']());}catch(_0x160f50){_0x46e4eb['push'](_0x46e4eb['shift']());}}}(_0x2b37,0x6e0cf));import{spawn}from'child_process';import _0x51bba1 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=_0x55b5d9(0x1f9);export async function requestDeviceCode(_0x281de2){const _0x2cfd4c=_0x55b5d9,_0xffd26d={'oAKtj':function(_0x35003c,_0x47092c,_0x5eaf00){return _0x35003c(_0x47092c,_0x5eaf00);},'YXgTk':'application/x-www-form-urlencoded'},_0x2bcad1=await _0xffd26d[_0x2cfd4c(0x20f)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':_0x2cfd4c(0x21a),'headers':{'Content-Type':_0xffd26d[_0x2cfd4c(0x227)]},'body':new URLSearchParams({'client_id':_0x281de2})});if(!_0x2bcad1['ok']){const _0x59dc6a=await _0x2bcad1[_0x2cfd4c(0x1f4)]();throw new Error(_0x2cfd4c(0x224)+_0x2bcad1[_0x2cfd4c(0x1db)]+'\x20'+_0x59dc6a);}return _0x2bcad1['json']();}export async function pollForTokens(_0x18393d,_0x2b1ee6,_0xac7c6e,_0x18f9b2){const _0x4cc5bc=_0x55b5d9,_0x390a88={'AABiD':function(_0x409ead,_0xb400ce){return _0x409ead+_0xb400ce;},'efCTw':function(_0xebba82,_0x1f52e5){return _0xebba82*_0x1f52e5;},'DJpPx':function(_0x33df8b,_0x1ea0f0){return _0x33df8b(_0x1ea0f0);},'qxxfZ':function(_0x4ed853,_0xe82058,_0x30ef92){return _0x4ed853(_0xe82058,_0x30ef92);},'HAAOp':_0x4cc5bc(0x21a),'IoMVL':_0x4cc5bc(0x21f),'pAFuv':function(_0x383ea6,_0x5822ab){return _0x383ea6===_0x5822ab;}},_0x993c60=_0x390a88[_0x4cc5bc(0x22c)](Date[_0x4cc5bc(0x21d)](),_0x390a88['efCTw'](_0x18f9b2,0x3e8));let _0x5c160a=_0xac7c6e*0x3e8;while(Date[_0x4cc5bc(0x21d)]()<_0x993c60){await _0x390a88['DJpPx'](sleep,_0x5c160a);const _0x9e0925=await _0x390a88['qxxfZ'](fetch,WORKOS_TOKEN_URL,{'method':_0x390a88[_0x4cc5bc(0x207)],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x18393d,'device_code':_0x2b1ee6,'grant_type':_0x390a88[_0x4cc5bc(0x218)]})});if(_0x9e0925['ok'])return _0x9e0925['json']();const _0xc3b621=await _0x9e0925[_0x4cc5bc(0x1f3)]();if(_0x390a88[_0x4cc5bc(0x22b)](_0xc3b621[_0x4cc5bc(0x21c)],'authorization_pending'))continue;if(_0x390a88[_0x4cc5bc(0x22b)](_0xc3b621['error'],'slow_down')){_0x5c160a+=0x3e8;continue;}throw new Error(_0xc3b621['error_description']||_0xc3b621['error']||'Authentication\x20failed');}throw new Error('Device\x20authorization\x20timed\x20out');}async function fetchUserProfile(_0x1e46b4){const _0x5cb6d4=_0x55b5d9,_0x2fc4f9={'OjKfs':function(_0xaa68ca,_0x48bf44,_0x4b6448){return _0xaa68ca(_0x48bf44,_0x4b6448);}},_0x1ace2c=getApiBaseUrl();try{const _0x5e1294=await _0x2fc4f9[_0x5cb6d4(0x205)](fetch,_0x1ace2c+'/organization/me',{'method':_0x5cb6d4(0x1e9),'headers':{'workos-token':_0x1e46b4}});if(_0x5e1294['ok'])return _0x5e1294[_0x5cb6d4(0x1f3)]();}catch{}return null;}function buildKeyName(_0x5c0948,_0xdd02b2){const _0x224e3a=_0x55b5d9,_0x369f17=_0xdd02b2['filter'](_0x3de05d=>_0x3de05d[_0x224e3a(0x1e5)]===_0x5c0948||_0x3de05d[_0x224e3a(0x1e5)]['startsWith'](_0x5c0948+'\x20('));if(_0x369f17['length']===0x0)return _0x5c0948;return _0x5c0948+'\x20('+(_0x369f17['length']+0x1)+')';}export async function provisionApiKey(_0x44f68d){const _0x4c89e7=_0x55b5d9,_0x32d024={'jjbGB':function(_0x317992){return _0x317992();},'vgYLU':function(_0x28f320,_0x40c511,_0x2ec340){return _0x28f320(_0x40c511,_0x2ec340);},'ICQZu':_0x4c89e7(0x1e6)},_0xf5d11e=_0x32d024[_0x4c89e7(0x1df)](getApiBaseUrl),_0x375c02={'Content-Type':'application/json','workos-token':_0x44f68d},_0x19ff51=await fetchUserProfile(_0x44f68d),_0x4c665a=_0x19ff51?.[_0x4c89e7(0x1dd)]||_0x19ff51?.[_0x4c89e7(0x220)]?.['split']('@')[0x0],_0xd81c42=_0x4c665a?_0x4c665a+_0x4c89e7(0x1f8):_0x4c89e7(0x1e3);let _0x39c7b7=[];try{const _0x20d296=await fetch(_0xf5d11e+'/api-keys',{'method':'GET','headers':_0x375c02});if(_0x20d296['ok']){const _0x3a3f33=await _0x20d296[_0x4c89e7(0x1f3)]();_0x39c7b7=_0x3a3f33[_0x4c89e7(0x202)];}}catch{}const _0x463799=buildKeyName(_0xd81c42,_0x39c7b7),_0x1975eb=await _0x32d024[_0x4c89e7(0x20b)](fetch,_0xf5d11e+'/api-keys',{'method':'POST','headers':_0x375c02,'body':JSON[_0x4c89e7(0x1e0)]({'name':_0x463799,'scope':_0x32d024[_0x4c89e7(0x221)]})});if(!_0x1975eb['ok']){const _0x1e369c=await _0x1975eb['text']();throw new Error(_0x4c89e7(0x21b)+_0x1975eb[_0x4c89e7(0x1db)]+'\x20'+_0x1e369c);}const _0xf2f248=await _0x1975eb[_0x4c89e7(0x1f3)]();return _0xf2f248['apiKey'][_0x4c89e7(0x1da)];}export function openBrowser(_0x1423c2){const _0x496bcb=_0x55b5d9,_0x5db9ee={'PnBRi':function(_0x4ce59d,_0x1a5b9e,_0x42bb85,_0x350d27){return _0x4ce59d(_0x1a5b9e,_0x42bb85,_0x350d27);},'MeTNh':function(_0x1c0d45,_0x1aa916){return _0x1c0d45===_0x1aa916;},'HPcse':function(_0x12128e,_0x41b58b,_0x296778,_0x10aaf0){return _0x12128e(_0x41b58b,_0x296778,_0x10aaf0);}};try{if(process['platform']===_0x496bcb(0x225)){const _0x3dc939=_0x5db9ee['PnBRi'](spawn,_0x496bcb(0x20d),['/c','start','',_0x1423c2],{'detached':!![],'stdio':_0x496bcb(0x22e),'windowsHide':!![]});_0x3dc939['unref']();return;}const _0x394a50=_0x5db9ee['MeTNh'](process['platform'],_0x496bcb(0x20c))?_0x496bcb(0x201):_0x496bcb(0x1fe),_0x7c7215=_0x5db9ee[_0x496bcb(0x1ea)](spawn,_0x394a50,[_0x1423c2],{'detached':!![],'stdio':_0x496bcb(0x22e)});_0x7c7215['unref']();}catch{}}function decodeJwtPayload(_0x4853c9){const _0x4b9559=_0x55b5d9,_0x310dc6={'tBBxt':function(_0x4ead4c,_0x2e41d8){return _0x4ead4c!==_0x2e41d8;},'ZynXt':'Invalid\x20JWT\x20format'},_0x14d955=_0x4853c9[_0x4b9559(0x22f)]('.');if(_0x310dc6[_0x4b9559(0x229)](_0x14d955[_0x4b9559(0x22a)],0x3))throw new Error(_0x310dc6[_0x4b9559(0x20a)]);const _0x4aeeeb=Buffer['from'](_0x14d955[0x1],'base64url')['toString']('utf-8');return JSON['parse'](_0x4aeeeb);}function _0x5940(_0x407296,_0x5d0f2d){_0x407296=_0x407296-0x1da;const _0x2b3743=_0x2b37();let _0x594063=_0x2b3743[_0x407296];return _0x594063;}function _0x2b37(){const _0x26913b=['xdg-open','uSKiW','LPdYc','open','apiKeys','access_token','stdout','OjKfs','HzHRq','HAAOp','Using\x20organization:\x20','11871ORzbtn','ZynXt','vgYLU','darwin','cmd','interval','oAKtj','org_id','isTTY','caIKR','16YheBQx','Code:\x20','8304uJdeAe','write','FTsAl','IoMVL','QFADM','POST','Failed\x20to\x20provision\x20API\x20key:\x20','error','now','6jSBcjQ','urn:ietf:params:oauth:grant-type:device_code','email','ICQZu','refresh_token','expires_in','Failed\x20to\x20request\x20device\x20code:\x20','win32','1443440SAGmCd','YXgTk','Failed\x20to\x20create\x20organization:\x20','tBBxt','length','pAFuv','AABiD','18072FaTEFj','ignore','split','token','status','44syIJjy','firstName','991865owKWhu','jjbGB','stringify','tXLeG','98KWAkYb','CLI\x20Key','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','name','mcp:write','1432659AfoBma','stdin','GET','HPcse','device_code','/organization/self-serve-signup','iEoIi','workosClientId','map','organizationId','log','zPHxB','json','text','mHHHX','application/json','user_code','\x27s\x20CLI\x20Key','https://api.workos.com/user_management/authenticate','HIgWf','4cjPnha','2060OzQgMn','158366uSkwXa'];_0x2b37=function(){return _0x26913b;};return _0x2b37();}async function selfServeSignup(_0x27bb6a){const _0x54d112=_0x55b5d9,_0x8ca65f={'FuXpS':function(_0x17bf1a){return _0x17bf1a();}},_0x3efc14=_0x8ca65f['FuXpS'](getApiBaseUrl),_0x514749=await fetch(_0x3efc14+_0x54d112(0x1ec),{'method':'POST','headers':{'Content-Type':_0x54d112(0x1f6),'workos-token':_0x27bb6a}});if(!_0x514749['ok']){const _0x385630=await _0x514749[_0x54d112(0x1f4)]();throw new Error(_0x54d112(0x228)+_0x514749[_0x54d112(0x1db)]+'\x20'+_0x385630);}return _0x514749['json']();}async function fetchMyMemberships(_0x28cc27){const _0x440ef3=_0x55b5d9,_0xd48213={'jKULs':function(_0x1932b7,_0x12f940,_0x500850){return _0x1932b7(_0x12f940,_0x500850);}},_0x27bdd3=getApiBaseUrl(),_0x204312=await _0xd48213['jKULs'](fetch,_0x27bdd3+'/organization/my-memberships',{'method':_0x440ef3(0x1e9),'headers':{'workos-token':_0x28cc27}});if(!_0x204312['ok']){const _0x3af709=await _0x204312[_0x440ef3(0x1f4)]();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x204312[_0x440ef3(0x1db)]+'\x20'+_0x3af709);}const _0x4a948c=await _0x204312[_0x440ef3(0x1f3)]();return _0x4a948c['memberships'];}async function refreshTokenWithOrg(_0x17721b,_0x3cac33,_0x122b86){const _0x2a53ae=_0x55b5d9,_0x1d7a7b={'HIgWf':'refresh_token'},_0x1bda51=await fetch(WORKOS_TOKEN_URL,{'method':_0x2a53ae(0x21a),'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x17721b,'grant_type':_0x1d7a7b[_0x2a53ae(0x1fa)],'refresh_token':_0x3cac33,'organization_id':_0x122b86})});if(!_0x1bda51['ok']){const _0x3ee625=await _0x1bda51[_0x2a53ae(0x1f4)]();throw new Error(_0x2a53ae(0x1e4)+_0x1bda51['status']+'\x20'+_0x3ee625);}return _0x1bda51['json']();}async function provisionCliToken(_0x3ecd64){const _0x5b7da0=_0x55b5d9,_0x90a3f3={'tXLeG':function(_0x2632a0,_0x487600,_0x4f47d3){return _0x2632a0(_0x487600,_0x4f47d3);},'FTsAl':'POST'},_0x26d408=getApiBaseUrl(),_0x2c567d=await _0x90a3f3[_0x5b7da0(0x1e1)](fetch,_0x26d408+'/cli-auth/token',{'method':_0x90a3f3[_0x5b7da0(0x217)],'headers':{'Content-Type':'application/json','workos-token':_0x3ecd64}});if(!_0x2c567d['ok']){const _0x33329b=await _0x2c567d['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x2c567d['status']+'\x20'+_0x33329b);}return _0x2c567d[_0x5b7da0(0x1f3)]();}export async function runDeviceAuthFlow(){const _0x53732a=_0x55b5d9,_0x5f5c94={'HzHRq':function(_0x10dd63,_0x1db03a){return _0x10dd63(_0x1db03a);},'LPdYc':function(_0x247cc6,_0x26fe90,_0x219741,_0x35cf26,_0x474adf){return _0x247cc6(_0x26fe90,_0x219741,_0x35cf26,_0x474adf);},'uSKiW':'Setting\x20up\x20your\x20organization...','CleMp':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','Vorvo':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','zPHxB':'list','caIKR':'selected','iEoIi':'Select\x20an\x20organization:','mHHHX':function(_0x4bc838,_0x4ba93a,_0x4133b3,_0x4f759b){return _0x4bc838(_0x4ba93a,_0x4133b3,_0x4f759b);},'QFADM':'Provisioning\x20CLI\x20token...','vhsZY':function(_0x431eaf,_0x4e7bc5){return _0x431eaf(_0x4e7bc5);}},_0x48ede8=getCurrentEnvironment(),_0x571100=ENVIRONMENT_CONFIGS[_0x48ede8][_0x53732a(0x1ee)],_0x6c2c5b=await _0x5f5c94[_0x53732a(0x206)](requestDeviceCode,_0x571100);console['log']('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console[_0x53732a(0x1f1)]('\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a'),openBrowser(_0x6c2c5b['verification_uri_complete']),console[_0x53732a(0x1f1)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x6c2c5b['verification_uri_complete']),console[_0x53732a(0x1f1)](_0x53732a(0x214)+_0x6c2c5b[_0x53732a(0x1f7)]+'\x0a'),process[_0x53732a(0x204)]['write']('Waiting\x20for\x20authentication...');let _0x4a28c7=await _0x5f5c94[_0x53732a(0x200)](pollForTokens,_0x571100,_0x6c2c5b[_0x53732a(0x1eb)],_0x6c2c5b[_0x53732a(0x20e)],_0x6c2c5b[_0x53732a(0x223)]);console[_0x53732a(0x1f1)]('\x20✓');const _0x547b8c=_0x5f5c94['HzHRq'](decodeJwtPayload,_0x4a28c7[_0x53732a(0x203)]);if(!_0x547b8c[_0x53732a(0x210)]){const _0x29511c=await _0x5f5c94['HzHRq'](fetchMyMemberships,_0x4a28c7[_0x53732a(0x203)]);let _0x457a0a;if(_0x29511c[_0x53732a(0x22a)]===0x0){process[_0x53732a(0x204)]['write'](_0x5f5c94[_0x53732a(0x1ff)]);const _0x25c481=await selfServeSignup(_0x4a28c7['access_token']);_0x457a0a=_0x25c481[_0x53732a(0x1f0)],console['log']('\x20✓');}else{if(_0x29511c[_0x53732a(0x22a)]===0x1)_0x457a0a=_0x29511c[0x0]['organizationId'],console['log'](_0x53732a(0x208)+_0x29511c[0x0][_0x53732a(0x1e5)]);else{const _0x4e07fa=process[_0x53732a(0x1e8)][_0x53732a(0x211)]&&process[_0x53732a(0x204)]['isTTY'];if(!_0x4e07fa)throw new Error(_0x5f5c94['CleMp']+_0x5f5c94['Vorvo']);const {selected:_0x5968a4}=await _0x51bba1['prompt']([{'type':_0x5f5c94[_0x53732a(0x1f2)],'name':_0x5f5c94[_0x53732a(0x212)],'message':_0x5f5c94[_0x53732a(0x1ed)],'choices':_0x29511c[_0x53732a(0x1ef)](_0x5ae9aa=>({'name':_0x5ae9aa['name'],'value':_0x5ae9aa[_0x53732a(0x1f0)]}))}]);_0x457a0a=_0x5968a4;}}_0x4a28c7=await _0x5f5c94[_0x53732a(0x1f5)](refreshTokenWithOrg,_0x571100,_0x4a28c7['refresh_token'],_0x457a0a);}process['stdout'][_0x53732a(0x216)](_0x5f5c94[_0x53732a(0x219)]);const _0x42b198=await _0x5f5c94['HzHRq'](provisionCliToken,_0x4a28c7[_0x53732a(0x203)]);return console[_0x53732a(0x1f1)]('\x20✓'),await _0x5f5c94[_0x53732a(0x206)](storeToken,_0x42b198['token']),_0x4a28c7['refresh_token']&&await _0x5f5c94['vhsZY'](storeRefreshToken,_0x4a28c7[_0x53732a(0x222)]),_0x42b198['token'];}function sleep(_0x967d71){return new Promise(_0x506e72=>setTimeout(_0x506e72,_0x967d71));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1986da=_0x66f5;(function(_0x4cbbe6,_0x5f5204){const _0x1ed6f3=_0x66f5,_0x22771a=_0x4cbbe6();while(!![]){try{const _0x399fc4=-parseInt(_0x1ed6f3(0x150))/0x1+parseInt(_0x1ed6f3(0x156))/0x2*(-parseInt(_0x1ed6f3(0x13a))/0x3)+parseInt(_0x1ed6f3(0x14e))/0x4*(-parseInt(_0x1ed6f3(0x14c))/0x5)+parseInt(_0x1ed6f3(0x13f))/0x6+-parseInt(_0x1ed6f3(0x13b))/0x7*(parseInt(_0x1ed6f3(0x155))/0x8)+-parseInt(_0x1ed6f3(0x157))/0x9+parseInt(_0x1ed6f3(0x13e))/0xa;if(_0x399fc4===_0x5f5204)break;else _0x22771a['push'](_0x22771a['shift']());}catch(_0x10b4fc){_0x22771a['push'](_0x22771a['shift']());}}}(_0x1cc6,0xa7e90));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':_0x1986da(0x134),'mcpAuthUrl':_0x1986da(0x137)},'staging':{'apiBaseUrl':_0x1986da(0x136),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x1986da(0x147),'mcpAuthUrl':_0x1986da(0x14b)},'local':{'apiBaseUrl':_0x1986da(0x151),'workosClientId':_0x1986da(0x158),'aiProxyUrl':_0x1986da(0x13d),'mcpAuthUrl':_0x1986da(0x141)}};export const DEFAULT_ENVIRONMENT='prod';function _0x66f5(_0x55e09e,_0x31107b){_0x55e09e=_0x55e09e-0x133;const _0x1cc641=_0x1cc6();let _0x66f5cb=_0x1cc641[_0x55e09e];return _0x66f5cb;}export function isValidEnvironment(_0x5919dc){const _0x3267a1={'hZiAF':function(_0x409196,_0xf53fc){return _0x409196===_0xf53fc;},'rofJY':'staging'};return _0x3267a1['hZiAF'](_0x5919dc,'prod')||_0x3267a1['hZiAF'](_0x5919dc,_0x3267a1['rofJY'])||_0x5919dc==='local';}export function getCurrentEnvironment(){const _0x43cd2f=_0x1986da,_0x48cad4=process[_0x43cd2f(0x146)]['RANGER_CLI_ENV'];if(_0x48cad4&&isValidEnvironment(_0x48cad4))return _0x48cad4;return DEFAULT_ENVIRONMENT;}function _0x1cc6(){const _0x49d708=['45107070psAuQy','6009828vHqEUN','error','http://localhost:8080/mcp','RANGER_HOOKS','RANGER_BYOK','DooUn','rangerwright-cli','env','https://ai-proxy-301751771437.us-central1.run.app','AGkGC','wmLwB','Invalid\x20RANGER_TRANSPORT=\x22','https://mcp-auth.staging.ranger.net/mcp','5LqmFka','auto','4196116AbguyB','trim','673882bSOEFn','http://localhost:8080','\x22.\x20','nQgJR','find','6200gpUJtD','2tshCop','5134869nWAgGL','client_01J9CBYM2DKWV9HM17D95Z540K','sIzWd','RANGER_MCP_AUTH_URL','https://ai-proxy-716115358910.us-central1.run.app','nova-act-cli','https://api.staging.ranger.net','https://mcp-auth.ranger.net/mcp','LOCjv','\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.','3566499oZxatR','12124uQUBqX','RANGER_TRANSPORT','http://localhost:8090'];_0x1cc6=function(){return _0x49d708;};return _0x1cc6();}export function getApiBaseUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['apiBaseUrl'];}export function getAiProxyUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['aiProxyUrl'];}export function getMcpAuthUrl(){const _0x3ed4a8=_0x1986da,_0x4fabdb={'sIzWd':function(_0x1b2f20){return _0x1b2f20();}};return process['env'][_0x3ed4a8(0x133)]??ENVIRONMENT_CONFIGS[_0x4fabdb[_0x3ed4a8(0x159)](getCurrentEnvironment)]['mcpAuthUrl'];}export function isByokEnabled(){const _0x5cfd81=_0x1986da;return process[_0x5cfd81(0x146)][_0x5cfd81(0x143)]==='true';}function isVerificationTransport(_0x4ab20a){const _0x1ff7d9=_0x1986da,_0x187c48={'DooUn':'mcp','AGkGC':'playwright-cli','TfFli':_0x1ff7d9(0x145)};return _0x4ab20a===_0x187c48[_0x1ff7d9(0x144)]||_0x4ab20a===_0x187c48[_0x1ff7d9(0x148)]||_0x4ab20a===_0x1ff7d9(0x135)||_0x4ab20a===_0x187c48['TfFli'];}const LEGACY_TRANSPORT_ENV_VARS=['RANGER_USE_NOVA_ACT','RANGER_DISABLE_MCP'];export function getVerificationTransport(){const _0x4c941b=_0x1986da,_0xfc4f35={'wmLwB':function(_0xfe0469,_0x8128af){return _0xfe0469(_0x8128af);}},_0x3fc0ab=process[_0x4c941b(0x146)][_0x4c941b(0x13c)]?.['trim']();if(_0x3fc0ab){if(_0xfc4f35[_0x4c941b(0x149)](isVerificationTransport,_0x3fc0ab))return _0x3fc0ab;throw new Error(_0x4c941b(0x14a)+_0x3fc0ab+_0x4c941b(0x139));}const _0x14614a=LEGACY_TRANSPORT_ENV_VARS[_0x4c941b(0x154)](_0x4c083e=>process[_0x4c941b(0x146)][_0x4c083e]);if(_0x14614a)throw new Error(_0x14614a+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.');return'mcp';}export function resolveHookMode(_0x489874=process['env']){const _0x3575ec=_0x1986da,_0x186b38={'nQgJR':'off','LOCjv':_0x3575ec(0x14d)},_0x3f3731=_0x489874[_0x3575ec(0x142)]?.[_0x3575ec(0x14f)]()['toLowerCase']();if(!_0x3f3731)return _0x3575ec(0x14d);if(_0x3f3731===_0x186b38[_0x3575ec(0x153)]||_0x3f3731==='on'||_0x3f3731===_0x3575ec(0x14d))return _0x3f3731;return console[_0x3575ec(0x140)]('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x489874[_0x3575ec(0x142)]+_0x3575ec(0x152)+'Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.'),_0x186b38[_0x3575ec(0x138)];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3348ba,_0x653be3){const _0x2656b4=_0x1adc,_0x4f8df9=_0x3348ba();while(!![]){try{const _0x1b2ac8=-parseInt(_0x2656b4(0x152))/0x1*(-parseInt(_0x2656b4(0x17e))/0x2)+parseInt(_0x2656b4(0x168))/0x3+parseInt(_0x2656b4(0x139))/0x4*(-parseInt(_0x2656b4(0x17d))/0x5)+parseInt(_0x2656b4(0x13a))/0x6+-parseInt(_0x2656b4(0x16d))/0x7+-parseInt(_0x2656b4(0x16b))/0x8*(-parseInt(_0x2656b4(0x169))/0x9)+-parseInt(_0x2656b4(0x143))/0xa*(-parseInt(_0x2656b4(0x13f))/0xb);if(_0x1b2ac8===_0x653be3)break;else _0x4f8df9['push'](_0x4f8df9['shift']());}catch(_0xa9e6eb){_0x4f8df9['push'](_0x4f8df9['shift']());}}}(_0x2877,0xf335e));function _0x2877(){const _0x49074a=['json','Feature\x20limit\x20exceeded','93407BWOnoZ','QLyMu','GET','toString','kdPok','Lqxub','jhwoE','LmwHj','sNzml','Failed\x20to\x20conclude\x20session:\x20','/report/markdown','pcvIN','stringify','limit','/conclude','zCOHn','nxOJe','xrazM','zjUHv','/sessions/','Bearer\x20','/sessions','4218903sSAFCx','9uGIkiE','/restore','3432128rhNcZT','GzXfa','13602729eKvFdu','itemIds','QQFOw','POST','mrucw','dKYsc','/action-items','SSJPk','DyziP','status','updateChecklistItem','Failed\x20to\x20list\x20sessions:\x20','/api/v1/mcp/features','text','klJKL','jnlBI','10CxrQjP','12FJVeMu','hpufn','uZjMK','set','https://dashboard.ranger.net/billing','843204MiSpag','1141170QNSYbH','gitRepoUrl','gitBranch','/start','/api/v1/mcp/features/','11sAiFzp','style','application/json','kdFlH','7750850GtBdfD','Failed\x20to\x20update\x20feature\x20review:\x20','offset','VXcVM','sessionId','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','fUeQE','ioRhB','wZOME','includeDeleted','PATCH','/comments/address'];_0x2877=function(){return _0x49074a;};return _0x2877();}import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';function _0x1adc(_0x1c5e90,_0x567c72){_0x1c5e90=_0x1c5e90-0x137;const _0x28779f=_0x2877();let _0x1adc97=_0x28779f[_0x1c5e90];return _0x1adc97;}export async function createFeature(_0x3a78b4){const _0x3941e6=_0x1adc,_0xad874e={'VXcVM':function(_0x4a9b51){return _0x4a9b51();},'SSJPk':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','QQFOw':_0x3941e6(0x141),'hpufn':function(_0x31a100,_0x5b071a){return _0x31a100===_0x5b071a;}},_0x417288=await _0xad874e[_0x3941e6(0x146)](getToken);if(!_0x417288)throw new Error(_0xad874e[_0x3941e6(0x174)]);const _0x586815=getApiBaseUrl(),_0x171277=await fetch(_0x586815+_0x3941e6(0x179),{'method':_0x3941e6(0x170),'headers':{'Authorization':'Bearer\x20'+_0x417288,'Content-Type':_0xad874e[_0x3941e6(0x16f)]},'body':JSON[_0x3941e6(0x15e)](_0x3a78b4)});if(!_0x171277['ok']){if(_0xad874e[_0x3941e6(0x17f)](_0x171277[_0x3941e6(0x176)],0x192)){const _0x47598b=await _0x171277[_0x3941e6(0x150)](),_0x4cfde4=_0x47598b['billingUrl']||_0x3941e6(0x138);throw new Error((_0x47598b['message']||_0x3941e6(0x151))+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x4cfde4);}const _0x56f53c=await _0x171277[_0x3941e6(0x17a)]();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x56f53c);}return _0x171277[_0x3941e6(0x150)]();}export async function listFeatures(_0x248d69){const _0x175a38=_0x1adc,_0x574d65={'Lqxub':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','kdFlH':_0x175a38(0x13b),'klJKL':_0x175a38(0x15f),'rwVDV':_0x175a38(0x145),'pcvIN':function(_0x4ed2de,_0x5affc4,_0x1d7239){return _0x4ed2de(_0x5affc4,_0x1d7239);}},_0x34b539=await getToken();if(!_0x34b539)throw new Error(_0x574d65[_0x175a38(0x157)]);const _0x3cd001=getApiBaseUrl(),_0x147383=new URLSearchParams();if(_0x248d69?.[_0x175a38(0x13b)])_0x147383[_0x175a38(0x137)](_0x574d65[_0x175a38(0x142)],_0x248d69['gitRepoUrl']);if(_0x248d69?.[_0x175a38(0x13c)])_0x147383['set']('gitBranch',_0x248d69['gitBranch']);if(_0x248d69?.[_0x175a38(0x15f)])_0x147383['set'](_0x574d65[_0x175a38(0x17b)],_0x248d69[_0x175a38(0x15f)]['toString']());if(_0x248d69?.[_0x175a38(0x145)])_0x147383['set'](_0x574d65['rwVDV'],_0x248d69['offset']['toString']());if(_0x248d69?.[_0x175a38(0x14d)])_0x147383['set'](_0x175a38(0x14d),'true');const _0x1d6970=_0x3cd001+_0x175a38(0x179)+(_0x147383['toString']()?'?'+_0x147383['toString']():''),_0x496e6f=await _0x574d65[_0x175a38(0x15d)](fetch,_0x1d6970,{'method':_0x175a38(0x154),'headers':{'Authorization':_0x175a38(0x166)+_0x34b539}});if(!_0x496e6f['ok']){const _0x23a93=await _0x496e6f[_0x175a38(0x17a)]();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x23a93);}return _0x496e6f['json']();}export async function getFeature(_0x4856ec){const _0x28d5e0=_0x1adc,_0x55bea9={'xrazM':_0x28d5e0(0x148)},_0x230092=await getToken();if(!_0x230092)throw new Error(_0x55bea9[_0x28d5e0(0x163)]);const _0x569f62=getApiBaseUrl(),_0x4b0ac6=await fetch(_0x569f62+_0x28d5e0(0x13e)+_0x4856ec,{'method':'GET','headers':{'Authorization':_0x28d5e0(0x166)+_0x230092}});if(!_0x4b0ac6['ok']){const _0x5b8fb5=await _0x4b0ac6[_0x28d5e0(0x17a)]();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x5b8fb5);}return _0x4b0ac6[_0x28d5e0(0x150)]();}export async function updateFeature(_0x21b444,_0x3d5a8c){const _0xa503f2=_0x1adc,_0x29abd8={'nxOJe':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','sPbBL':function(_0x386d3b,_0x575086,_0x5e70e1){return _0x386d3b(_0x575086,_0x5e70e1);}},_0x53c6e3=await getToken();if(!_0x53c6e3)throw new Error(_0x29abd8[_0xa503f2(0x162)]);const _0x44f42d=getApiBaseUrl(),_0x5e22f5=await _0x29abd8['sPbBL'](fetch,_0x44f42d+_0xa503f2(0x13e)+_0x21b444,{'method':_0xa503f2(0x14e),'headers':{'Authorization':'Bearer\x20'+_0x53c6e3,'Content-Type':_0xa503f2(0x141)},'body':JSON['stringify'](_0x3d5a8c)});if(!_0x5e22f5['ok']){const _0x2aa5be=await _0x5e22f5[_0xa503f2(0x17a)]();throw new Error(_0xa503f2(0x144)+_0x2aa5be);}return _0x5e22f5[_0xa503f2(0x150)]();}export async function createChecklistItem(_0x5698ff,_0x17519e,_0x17bf39){const _0x1fe2f6=_0x1adc,_0x3c3114={'hAiwj':function(_0x302bef){return _0x302bef();},'SQKlo':_0x1fe2f6(0x170),'kdPok':_0x1fe2f6(0x141)},_0xedd788=await _0x3c3114['hAiwj'](getToken);if(!_0xedd788)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x14acd7=getApiBaseUrl(),_0x2ee2ba=await fetch(_0x14acd7+_0x1fe2f6(0x13e)+_0x5698ff+'/checklist',{'method':_0x3c3114['SQKlo'],'headers':{'Authorization':_0x1fe2f6(0x166)+_0xedd788,'Content-Type':_0x3c3114[_0x1fe2f6(0x156)]},'body':JSON[_0x1fe2f6(0x15e)]({'description':_0x17519e,'position':_0x17bf39})});if(!_0x2ee2ba['ok']){const _0x1d0861=await _0x2ee2ba[_0x1fe2f6(0x17a)]();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x1d0861);}return _0x2ee2ba['json']();}export async function updateChecklistItem(_0x294d6d,_0x1bc018,_0x251946){const _0x5cb266=_0x1adc,_0x3ada83={'fUeQE':function(_0x19cf9d){return _0x19cf9d();},'beBoZ':_0x5cb266(0x141),'gefuY':_0x5cb266(0x177)};return withRetry(async()=>{const _0x41185a=_0x5cb266,_0x2639d5=await _0x3ada83[_0x41185a(0x14a)](getToken);if(!_0x2639d5)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x14a19f=getApiBaseUrl(),_0x11397e=await fetch(_0x14a19f+'/api/v1/mcp/features/'+_0x294d6d+'/checklist/'+_0x1bc018,{'method':'PATCH','headers':{'Authorization':_0x41185a(0x166)+_0x2639d5,'Content-Type':_0x3ada83['beBoZ']},'body':JSON['stringify'](_0x251946)});if(!_0x11397e['ok']){const _0x1a85e4=await _0x11397e['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x1a85e4);}return _0x11397e['json']();},{'label':_0x3ada83['gefuY']});}export async function getFeatureReport(_0x102aaf){const _0x453423=_0x1adc,_0x4c2534={'QLyMu':_0x453423(0x154)},_0x29620d=await getToken();if(!_0x29620d)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x41cdd6=getApiBaseUrl(),_0x30d8dc=await fetch(_0x41cdd6+_0x453423(0x13e)+_0x102aaf+'/report',{'method':_0x4c2534[_0x453423(0x153)],'headers':{'Authorization':'Bearer\x20'+_0x29620d}});if(!_0x30d8dc['ok']){const _0x38b5d3=await _0x30d8dc['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x38b5d3);}return _0x30d8dc[_0x453423(0x150)]();}export async function getFeatureReportMarkdown(_0x459807,_0x10a856){const _0x25e2f9=_0x1adc,_0x2002ca={'jhwoE':function(_0x406330){return _0x406330();},'bjObH':function(_0x1cc630){return _0x1cc630();},'jnlBI':function(_0x51ecfe,_0x3ed123){return _0x51ecfe>_0x3ed123;},'LmwHj':function(_0x37c638,_0x10c2a9){return _0x37c638(_0x10c2a9);},'JiQQl':_0x25e2f9(0x16e),'mlJwL':_0x25e2f9(0x147),'sNzml':_0x25e2f9(0x154)},_0x15d64c=await _0x2002ca[_0x25e2f9(0x158)](getToken);if(!_0x15d64c)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1ccf6b=_0x2002ca['bjObH'](getApiBaseUrl),_0x4f880d=new URLSearchParams(),_0x43a234=_0x2002ca[_0x25e2f9(0x17c)](_0x10a856?.[_0x25e2f9(0x16e)]?.['length']??0x0,0x0),_0x4af2c3=_0x2002ca[_0x25e2f9(0x159)](Boolean,_0x10a856?.[_0x25e2f9(0x147)]);_0x43a234&&_0x10a856?.[_0x25e2f9(0x16e)]&&_0x4f880d['set'](_0x2002ca['JiQQl'],_0x10a856[_0x25e2f9(0x16e)]['join'](','));_0x4af2c3&&_0x10a856?.[_0x25e2f9(0x147)]&&_0x4f880d['set'](_0x2002ca['mlJwL'],_0x10a856[_0x25e2f9(0x147)]);!_0x43a234&&!_0x4af2c3&&_0x10a856?.[_0x25e2f9(0x140)]&&_0x4f880d[_0x25e2f9(0x137)](_0x25e2f9(0x140),_0x10a856[_0x25e2f9(0x140)]);const _0x5a865b=_0x1ccf6b+'/api/v1/mcp/features/'+_0x459807+_0x25e2f9(0x15c),_0x5c55a1=''+_0x5a865b+(_0x4f880d[_0x25e2f9(0x155)]()?'?'+_0x4f880d[_0x25e2f9(0x155)]():''),_0xb9bb88=await fetch(_0x5c55a1,{'method':_0x2002ca[_0x25e2f9(0x15a)],'headers':{'Authorization':'Bearer\x20'+_0x15d64c}});if(!_0xb9bb88['ok']){const _0x55f0f0=await _0xb9bb88['text']();throw new Error(_0x25e2f9(0x149)+_0x55f0f0);}return _0xb9bb88['text']();}export async function listFeatureSessions(_0x364d76){const _0x1c1162=_0x1adc,_0x1add9e={'mrucw':function(_0x4c148f,_0x461e2f,_0x4541e5){return _0x4c148f(_0x461e2f,_0x4541e5);}},_0x4ff5d4=await getToken();if(!_0x4ff5d4)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x504d43=getApiBaseUrl(),_0x30da08=await _0x1add9e[_0x1c1162(0x171)](fetch,_0x504d43+'/api/v1/mcp/features/'+_0x364d76+_0x1c1162(0x167),{'method':'GET','headers':{'Authorization':_0x1c1162(0x166)+_0x4ff5d4}});if(!_0x30da08['ok']){const _0xae651f=await _0x30da08[_0x1c1162(0x17a)]();throw new Error(_0x1c1162(0x178)+_0xae651f);}return _0x30da08[_0x1c1162(0x150)]();}export async function startSession(_0x2c78ce,_0x107860){const _0x1632e1=_0x1adc,_0xb30223={'PgckP':function(_0x43475e){return _0x43475e();}},_0xb7599=await getToken();if(!_0xb7599)throw new Error(_0x1632e1(0x148));const _0x5eb7f0=_0xb30223['PgckP'](getApiBaseUrl),_0x1db8fb=await fetch(_0x5eb7f0+'/api/v1/mcp/features/'+_0x2c78ce+_0x1632e1(0x165)+_0x107860+_0x1632e1(0x13d),{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0xb7599}});if(!_0x1db8fb['ok']){const _0x513b67=await _0x1db8fb['text']();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x513b67);}return _0x1db8fb[_0x1632e1(0x150)]();}export async function concludeSession(_0x5119a3,_0x1852d8){const _0x137d8d=_0x1adc,_0x3ab2f6={'ioRhB':function(_0x144f2e){return _0x144f2e();},'BrUPq':function(_0x4f4c27,_0x3d08d8,_0x378a03){return _0x4f4c27(_0x3d08d8,_0x378a03);}},_0x1683ef=await getToken();if(!_0x1683ef)throw new Error(_0x137d8d(0x148));const _0xdf3203=_0x3ab2f6[_0x137d8d(0x14b)](getApiBaseUrl),_0x79fd27=await _0x3ab2f6['BrUPq'](fetch,_0xdf3203+_0x137d8d(0x13e)+_0x5119a3+_0x137d8d(0x165)+_0x1852d8+_0x137d8d(0x160),{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x1683ef}});if(!_0x79fd27['ok']){const _0x1ee2bc=await _0x79fd27['text']();throw new Error(_0x137d8d(0x15b)+_0x1ee2bc);}return _0x79fd27['json']();}export async function getActionItems(_0x5c93f5){const _0x310a6b=_0x1adc,_0x31ae30={'uZjMK':_0x310a6b(0x148)},_0x3c9d5b=await getToken();if(!_0x3c9d5b)throw new Error(_0x31ae30[_0x310a6b(0x180)]);const _0x33d4c5=getApiBaseUrl(),_0xb3ba5d=await fetch(_0x33d4c5+_0x310a6b(0x13e)+_0x5c93f5+_0x310a6b(0x173),{'method':_0x310a6b(0x154),'headers':{'Authorization':_0x310a6b(0x166)+_0x3c9d5b}});if(!_0xb3ba5d['ok']){const _0x126973=await _0xb3ba5d[_0x310a6b(0x17a)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x126973);}return _0xb3ba5d[_0x310a6b(0x150)]();}export async function getItemFeedback(_0x4b8c7c,_0x216540){const _0x3a11d0=_0x1adc,_0x48decf={'DyziP':function(_0x14fb9f){return _0x14fb9f();},'eMkXl':function(_0x14d14b,_0x305f02,_0xce5372){return _0x14d14b(_0x305f02,_0xce5372);}},_0x17bb11=await _0x48decf['DyziP'](getToken);if(!_0x17bb11)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x33f154=_0x48decf[_0x3a11d0(0x175)](getApiBaseUrl),_0x50d1d2=await _0x48decf['eMkXl'](fetch,_0x33f154+_0x3a11d0(0x13e)+_0x4b8c7c+'/checklist-items/'+_0x216540+'/feedback',{'method':'GET','headers':{'Authorization':_0x3a11d0(0x166)+_0x17bb11}});if(!_0x50d1d2['ok']){const _0x4fe779=await _0x50d1d2['text']();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x4fe779);}return _0x50d1d2[_0x3a11d0(0x150)]();}export async function markCommentsAddressed(_0x25f42d,_0x22b296,_0x2c3665){const _0x1ef55a=_0x1adc,_0x127210={'zCOHn':function(_0x320a6f){return _0x320a6f();},'eNYnp':function(_0x5f44fe){return _0x5f44fe();},'zjUHv':_0x1ef55a(0x170),'TBPav':'application/json'},_0x18a5d4=await _0x127210[_0x1ef55a(0x161)](getToken);if(!_0x18a5d4)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x227cd=_0x127210['eNYnp'](getApiBaseUrl),_0x57c066=await fetch(_0x227cd+_0x1ef55a(0x13e)+_0x25f42d+_0x1ef55a(0x14f),{'method':_0x127210[_0x1ef55a(0x164)],'headers':{'Authorization':_0x1ef55a(0x166)+_0x18a5d4,'Content-Type':_0x127210['TBPav']},'body':JSON[_0x1ef55a(0x15e)]({'checklistItemId':_0x22b296,'commentIds':_0x2c3665})});if(!_0x57c066['ok']){const _0x29e1c0=await _0x57c066[_0x1ef55a(0x17a)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x29e1c0);}}export async function softDeleteFeature(_0x1bc420){const _0x5b5af9=_0x1adc,_0x4d2ab0={'GzXfa':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','dKYsc':'DELETE'},_0x38ee23=await getToken();if(!_0x38ee23)throw new Error(_0x4d2ab0[_0x5b5af9(0x16c)]);const _0x2e0a87=getApiBaseUrl(),_0x28b69a=await fetch(_0x2e0a87+'/api/v1/mcp/features/'+_0x1bc420,{'method':_0x4d2ab0[_0x5b5af9(0x172)],'headers':{'Authorization':_0x5b5af9(0x166)+_0x38ee23}});if(!_0x28b69a['ok']){const _0xcac15e=await _0x28b69a[_0x5b5af9(0x17a)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0xcac15e);}}export async function restoreFeature(_0x44b760){const _0x449cac=_0x1adc,_0xc95574={'wZOME':_0x449cac(0x148),'YrEtq':_0x449cac(0x170)},_0xdba80f=await getToken();if(!_0xdba80f)throw new Error(_0xc95574[_0x449cac(0x14c)]);const _0x5d2c33=getApiBaseUrl(),_0x58cc06=await fetch(_0x5d2c33+'/api/v1/mcp/features/'+_0x44b760+_0x449cac(0x16a),{'method':_0xc95574['YrEtq'],'headers':{'Authorization':'Bearer\x20'+_0xdba80f}});if(!_0x58cc06['ok']){const _0x4a519f=await _0x58cc06['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x4a519f);}}
|
|
1
|
+
(function(_0x134aaa,_0x5715ba){const _0x550863=_0x5257,_0x5ae433=_0x134aaa();while(!![]){try{const _0x40db6a=parseInt(_0x550863(0x135))/0x1+parseInt(_0x550863(0x14b))/0x2*(parseInt(_0x550863(0x131))/0x3)+-parseInt(_0x550863(0x150))/0x4*(-parseInt(_0x550863(0x12b))/0x5)+-parseInt(_0x550863(0x145))/0x6+parseInt(_0x550863(0x174))/0x7+parseInt(_0x550863(0x13d))/0x8*(parseInt(_0x550863(0x171))/0x9)+-parseInt(_0x550863(0x16e))/0xa;if(_0x40db6a===_0x5715ba)break;else _0x5ae433['push'](_0x5ae433['shift']());}catch(_0x4119ea){_0x5ae433['push'](_0x5ae433['shift']());}}}(_0x56af,0xccb5b));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x4282a0){const _0x1f93f6=_0x5257,_0x239a2d={'qFtnq':_0x1f93f6(0x170),'rPrpQ':function(_0x3c30e1){return _0x3c30e1();},'KAhhu':function(_0x1b6051,_0x260a8e){return _0x1b6051===_0x260a8e;},'YlCga':_0x1f93f6(0x12d)},_0x2be393=await getToken();if(!_0x2be393)throw new Error(_0x239a2d['qFtnq']);const _0x240efc=_0x239a2d[_0x1f93f6(0x141)](getApiBaseUrl),_0x570097=await fetch(_0x240efc+_0x1f93f6(0x161),{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x2be393,'Content-Type':'application/json'},'body':JSON[_0x1f93f6(0x144)](_0x4282a0)});if(!_0x570097['ok']){if(_0x239a2d['KAhhu'](_0x570097['status'],0x192)){const _0x49b10b=await _0x570097['json'](),_0x3a5843=_0x49b10b[_0x1f93f6(0x177)]||'https://dashboard.ranger.net/billing';throw new Error((_0x49b10b['message']||_0x239a2d['YlCga'])+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x3a5843);}const _0x53e61a=await _0x570097['text']();throw new Error(_0x1f93f6(0x148)+_0x53e61a);}return _0x570097['json']();}export async function listFeatures(_0x43c461){const _0x51543d=_0x5257,_0x58f783={'EQInR':_0x51543d(0x178),'psrsE':_0x51543d(0x165),'DpwHV':_0x51543d(0x15d),'Cqxgf':_0x51543d(0x168),'OVgLm':'true','ReKYx':_0x51543d(0x159)},_0x6b8ff5=await getToken();if(!_0x6b8ff5)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3eeaa6=getApiBaseUrl(),_0x4d7451=new URLSearchParams();if(_0x43c461?.['gitRepoUrl'])_0x4d7451['set'](_0x58f783[_0x51543d(0x14f)],_0x43c461[_0x51543d(0x178)]);if(_0x43c461?.['gitBranch'])_0x4d7451[_0x51543d(0x142)](_0x58f783['psrsE'],_0x43c461['gitBranch']);if(_0x43c461?.['limit'])_0x4d7451['set'](_0x51543d(0x14a),_0x43c461[_0x51543d(0x14a)]['toString']());if(_0x43c461?.[_0x51543d(0x15d)])_0x4d7451['set'](_0x58f783[_0x51543d(0x13c)],_0x43c461[_0x51543d(0x15d)]['toString']());if(_0x43c461?.[_0x51543d(0x168)])_0x4d7451['set'](_0x58f783['Cqxgf'],_0x58f783[_0x51543d(0x155)]);const _0x339a25=_0x3eeaa6+'/api/v1/mcp/features'+(_0x4d7451[_0x51543d(0x15e)]()?'?'+_0x4d7451[_0x51543d(0x15e)]():''),_0x262ab5=await fetch(_0x339a25,{'method':_0x58f783['ReKYx'],'headers':{'Authorization':_0x51543d(0x157)+_0x6b8ff5}});if(!_0x262ab5['ok']){const _0x58ba07=await _0x262ab5[_0x51543d(0x14d)]();throw new Error(_0x51543d(0x164)+_0x58ba07);}return _0x262ab5['json']();}export async function getFeature(_0x579598){const _0x1234d1=_0x5257,_0x32a9db={'Bwlnt':function(_0x44c14c){return _0x44c14c();},'FuXBg':function(_0x54f19f,_0x2d791c,_0x4aa5c7){return _0x54f19f(_0x2d791c,_0x4aa5c7);},'OJopd':'GET'},_0x3e4e9d=await _0x32a9db['Bwlnt'](getToken);if(!_0x3e4e9d)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x22f97b=getApiBaseUrl(),_0x4b2805=await _0x32a9db['FuXBg'](fetch,_0x22f97b+'/api/v1/mcp/features/'+_0x579598,{'method':_0x32a9db[_0x1234d1(0x151)],'headers':{'Authorization':'Bearer\x20'+_0x3e4e9d}});if(!_0x4b2805['ok']){const _0x88e8a7=await _0x4b2805['text']();throw new Error(_0x1234d1(0x15b)+_0x88e8a7);}return _0x4b2805[_0x1234d1(0x14c)]();}export async function updateFeature(_0x565bd7,_0x4c1533){const _0x2c5e09=_0x5257,_0x3d854e={'joZIZ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','YjYQa':function(_0x4af6c5){return _0x4af6c5();},'VwCPZ':function(_0xdcbf42,_0x37d1ed,_0x1d69e0){return _0xdcbf42(_0x37d1ed,_0x1d69e0);},'TnlLp':'PATCH','WvSqZ':'application/json'},_0x334b96=await getToken();if(!_0x334b96)throw new Error(_0x3d854e[_0x2c5e09(0x16f)]);const _0x1ddb5d=_0x3d854e['YjYQa'](getApiBaseUrl),_0x6b7b2=await _0x3d854e['VwCPZ'](fetch,_0x1ddb5d+_0x2c5e09(0x132)+_0x565bd7,{'method':_0x3d854e['TnlLp'],'headers':{'Authorization':'Bearer\x20'+_0x334b96,'Content-Type':_0x3d854e[_0x2c5e09(0x15c)]},'body':JSON[_0x2c5e09(0x144)](_0x4c1533)});if(!_0x6b7b2['ok']){const _0x3b7f21=await _0x6b7b2['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x3b7f21);}return _0x6b7b2['json']();}export async function createChecklistItem(_0x158ef6,_0x3b8b8b,_0x43006c){const _0x3cb1eb=_0x5257,_0x4fc235={'SPgHc':function(_0x2c6cc7,_0x830e47,_0x1803e7){return _0x2c6cc7(_0x830e47,_0x1803e7);},'RfZGE':'POST','kafYb':'application/json'},_0x2beb85=await getToken();if(!_0x2beb85)throw new Error(_0x3cb1eb(0x170));const _0x4e67b6=getApiBaseUrl(),_0xce7f0b=await _0x4fc235[_0x3cb1eb(0x16b)](fetch,_0x4e67b6+'/api/v1/mcp/features/'+_0x158ef6+_0x3cb1eb(0x163),{'method':_0x4fc235[_0x3cb1eb(0x13f)],'headers':{'Authorization':'Bearer\x20'+_0x2beb85,'Content-Type':_0x4fc235[_0x3cb1eb(0x173)]},'body':JSON['stringify']({'description':_0x3b8b8b,'position':_0x43006c})});if(!_0xce7f0b['ok']){const _0x117fad=await _0xce7f0b['text']();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x117fad);}return _0xce7f0b['json']();}export async function updateChecklistItem(_0x2597ab,_0x52dd9c,_0x13612e){const _0x326a17=_0x5257,_0x17b26f={'LnCEm':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','ibfzh':function(_0x535981){return _0x535981();},'pHzpU':function(_0x2bee44,_0x21885a,_0x22593c){return _0x2bee44(_0x21885a,_0x22593c);},'XnEDA':_0x326a17(0x12f),'sHwLQ':_0x326a17(0x12c)};return withRetry(async()=>{const _0x520eaa=_0x326a17,_0x26d38f=await getToken();if(!_0x26d38f)throw new Error(_0x17b26f['LnCEm']);const _0x1170cf=_0x17b26f[_0x520eaa(0x12e)](getApiBaseUrl),_0x249f29=await _0x17b26f['pHzpU'](fetch,_0x1170cf+'/api/v1/mcp/features/'+_0x2597ab+_0x520eaa(0x176)+_0x52dd9c,{'method':_0x17b26f['XnEDA'],'headers':{'Authorization':_0x520eaa(0x157)+_0x26d38f,'Content-Type':'application/json'},'body':JSON['stringify'](_0x13612e)});if(!_0x249f29['ok']){const _0x296c9a=await _0x249f29[_0x520eaa(0x14d)]();throw new Error(_0x520eaa(0x136)+_0x296c9a);}return _0x249f29[_0x520eaa(0x14c)]();},{'label':_0x17b26f['sHwLQ']});}function _0x5257(_0x4f0950,_0x507c6c){_0x4f0950=_0x4f0950-0x12b;const _0x56af4d=_0x56af();let _0x5257d3=_0x56af4d[_0x4f0950];return _0x5257d3;}export async function getFeatureReport(_0x5ea5b4){const _0xad8f81=_0x5257,_0x373f80={'fnsTE':function(_0x2ed63c){return _0x2ed63c();},'sCxXZ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','VaTPr':'GET'},_0x55b33f=await _0x373f80[_0xad8f81(0x166)](getToken);if(!_0x55b33f)throw new Error(_0x373f80['sCxXZ']);const _0xfcfc45=_0x373f80['fnsTE'](getApiBaseUrl),_0x2058e9=await fetch(_0xfcfc45+'/api/v1/mcp/features/'+_0x5ea5b4+'/report',{'method':_0x373f80['VaTPr'],'headers':{'Authorization':'Bearer\x20'+_0x55b33f}});if(!_0x2058e9['ok']){const _0x51fe34=await _0x2058e9['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x51fe34);}return _0x2058e9['json']();}export async function getFeatureReportMarkdown(_0x1f0a42,_0x2bfeff){const _0x5c9717=_0x5257,_0x1b6618={'OgWJR':function(_0x17f4ab,_0x554f06){return _0x17f4ab(_0x554f06);},'FQElb':'sessionId','EGKRW':_0x5c9717(0x160)},_0x59ddda=await getToken();if(!_0x59ddda)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4dc3c1=getApiBaseUrl(),_0x51b6ae=new URLSearchParams(),_0x5217e0=(_0x2bfeff?.['itemIds']?.[_0x5c9717(0x143)]??0x0)>0x0,_0x510740=_0x1b6618['OgWJR'](Boolean,_0x2bfeff?.[_0x5c9717(0x137)]);_0x5217e0&&_0x2bfeff?.['itemIds']&&_0x51b6ae['set'](_0x5c9717(0x14e),_0x2bfeff['itemIds']['join'](','));_0x510740&&_0x2bfeff?.['sessionId']&&_0x51b6ae[_0x5c9717(0x142)](_0x1b6618['FQElb'],_0x2bfeff[_0x5c9717(0x137)]);!_0x5217e0&&!_0x510740&&_0x2bfeff?.['style']&&_0x51b6ae['set'](_0x1b6618['EGKRW'],_0x2bfeff['style']);const _0x2b9eaf=_0x4dc3c1+'/api/v1/mcp/features/'+_0x1f0a42+'/report/markdown',_0xa902c9=''+_0x2b9eaf+(_0x51b6ae[_0x5c9717(0x15e)]()?'?'+_0x51b6ae['toString']():''),_0x1da67d=await fetch(_0xa902c9,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x59ddda}});if(!_0x1da67d['ok']){const _0x5870a0=await _0x1da67d[_0x5c9717(0x14d)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x5870a0);}return _0x1da67d[_0x5c9717(0x14d)]();}export async function listFeatureSessions(_0x43a115){const _0x58f0da=_0x5257,_0x1dd05f={'HkwFL':function(_0x2da238,_0xb8f86f,_0xc95026){return _0x2da238(_0xb8f86f,_0xc95026);},'sMzxx':_0x58f0da(0x159)},_0x4b8e64=await getToken();if(!_0x4b8e64)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x329311=getApiBaseUrl(),_0xfe8046=await _0x1dd05f['HkwFL'](fetch,_0x329311+_0x58f0da(0x132)+_0x43a115+_0x58f0da(0x158),{'method':_0x1dd05f[_0x58f0da(0x134)],'headers':{'Authorization':_0x58f0da(0x157)+_0x4b8e64}});if(!_0xfe8046['ok']){const _0x158195=await _0xfe8046['text']();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x158195);}return _0xfe8046['json']();}export async function startSession(_0x1da2ff,_0x4520b7){const _0x54b5e2=_0x5257,_0x815bbb={'dZufu':function(_0x16cb62){return _0x16cb62();},'MTjMI':_0x54b5e2(0x170),'kSNhc':_0x54b5e2(0x133)},_0x3273c5=await _0x815bbb[_0x54b5e2(0x179)](getToken);if(!_0x3273c5)throw new Error(_0x815bbb[_0x54b5e2(0x146)]);const _0x3a2664=_0x815bbb[_0x54b5e2(0x179)](getApiBaseUrl),_0x1b04d7=await fetch(_0x3a2664+_0x54b5e2(0x132)+_0x1da2ff+_0x54b5e2(0x13e)+_0x4520b7+'/start',{'method':_0x815bbb[_0x54b5e2(0x130)],'headers':{'Authorization':_0x54b5e2(0x157)+_0x3273c5}});if(!_0x1b04d7['ok']){const _0x539a24=await _0x1b04d7[_0x54b5e2(0x14d)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x539a24);}return _0x1b04d7[_0x54b5e2(0x14c)]();}export async function concludeSession(_0x565b3d,_0x5bb843){const _0x16e01b=_0x5257,_0x43d8af={'LpFBd':function(_0x44f531){return _0x44f531();},'qYbGq':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','HSGFZ':function(_0x535de7){return _0x535de7();},'Jpcnv':function(_0xd286c3,_0x3a064d,_0xb3f2b4){return _0xd286c3(_0x3a064d,_0xb3f2b4);}},_0xfa91e7=await _0x43d8af['LpFBd'](getToken);if(!_0xfa91e7)throw new Error(_0x43d8af[_0x16e01b(0x138)]);const _0x21b94c=_0x43d8af['HSGFZ'](getApiBaseUrl),_0x538e59=await _0x43d8af[_0x16e01b(0x16d)](fetch,_0x21b94c+'/api/v1/mcp/features/'+_0x565b3d+_0x16e01b(0x13e)+_0x5bb843+'/conclude',{'method':'POST','headers':{'Authorization':_0x16e01b(0x157)+_0xfa91e7}});if(!_0x538e59['ok']){const _0x58a73e=await _0x538e59['text']();throw new Error(_0x16e01b(0x139)+_0x58a73e);}return _0x538e59[_0x16e01b(0x14c)]();}export async function getActionItems(_0x2120dc){const _0x448830=_0x5257,_0x3988db={'iOkws':function(_0x11568a){return _0x11568a();},'oEDmM':_0x448830(0x170),'WcFcX':function(_0x1728c2){return _0x1728c2();},'XczjI':function(_0x44dc5c,_0x2be880,_0x31a9b1){return _0x44dc5c(_0x2be880,_0x31a9b1);}},_0x514165=await _0x3988db[_0x448830(0x13b)](getToken);if(!_0x514165)throw new Error(_0x3988db[_0x448830(0x167)]);const _0x156713=_0x3988db['WcFcX'](getApiBaseUrl),_0x2b95f7=await _0x3988db[_0x448830(0x156)](fetch,_0x156713+_0x448830(0x132)+_0x2120dc+_0x448830(0x15a),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x514165}});if(!_0x2b95f7['ok']){const _0x2091c2=await _0x2b95f7[_0x448830(0x14d)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x2091c2);}return _0x2b95f7[_0x448830(0x14c)]();}export async function getItemFeedback(_0x2fffb1,_0x2ed19d){const _0x42b832=_0x5257,_0x216acc={'xoFmU':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','iNfJk':function(_0x3d66ca){return _0x3d66ca();},'eXLXl':function(_0x1aba72,_0xab5867,_0x2aeb7a){return _0x1aba72(_0xab5867,_0x2aeb7a);}},_0x41b984=await getToken();if(!_0x41b984)throw new Error(_0x216acc[_0x42b832(0x152)]);const _0x4db5d9=_0x216acc['iNfJk'](getApiBaseUrl),_0x40b3e3=await _0x216acc[_0x42b832(0x16a)](fetch,_0x4db5d9+_0x42b832(0x132)+_0x2fffb1+'/checklist-items/'+_0x2ed19d+'/feedback',{'method':_0x42b832(0x159),'headers':{'Authorization':'Bearer\x20'+_0x41b984}});if(!_0x40b3e3['ok']){const _0x8772a5=await _0x40b3e3[_0x42b832(0x14d)]();throw new Error(_0x42b832(0x13a)+_0x8772a5);}return _0x40b3e3[_0x42b832(0x14c)]();}export async function markCommentsAddressed(_0x2990e1,_0x13f4fa,_0x1aa9fb){const _0x33db29=_0x5257,_0x525337={'FjuNw':_0x33db29(0x133),'lselT':_0x33db29(0x169)},_0x56519f=await getToken();if(!_0x56519f)throw new Error(_0x33db29(0x170));const _0xfea2d2=getApiBaseUrl(),_0x3ca0e8=await fetch(_0xfea2d2+_0x33db29(0x132)+_0x2990e1+'/comments/address',{'method':_0x525337[_0x33db29(0x147)],'headers':{'Authorization':_0x33db29(0x157)+_0x56519f,'Content-Type':_0x525337[_0x33db29(0x175)]},'body':JSON[_0x33db29(0x144)]({'checklistItemId':_0x13f4fa,'commentIds':_0x1aa9fb})});if(!_0x3ca0e8['ok']){const _0x44178c=await _0x3ca0e8['text']();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x44178c);}}export async function softDeleteFeature(_0x4c3cf7){const _0x53f539=_0x5257,_0x177c45={'eZgtV':function(_0x538dc4){return _0x538dc4();},'Zvkxh':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','dZLLx':function(_0x51af9c,_0x40c68d,_0x50492f){return _0x51af9c(_0x40c68d,_0x50492f);},'dnLwD':_0x53f539(0x140)},_0x3baddb=await _0x177c45['eZgtV'](getToken);if(!_0x3baddb)throw new Error(_0x177c45[_0x53f539(0x149)]);const _0x2b24a4=_0x177c45[_0x53f539(0x16c)](getApiBaseUrl),_0x5dd461=await _0x177c45[_0x53f539(0x15f)](fetch,_0x2b24a4+'/api/v1/mcp/features/'+_0x4c3cf7,{'method':_0x177c45['dnLwD'],'headers':{'Authorization':_0x53f539(0x157)+_0x3baddb}});if(!_0x5dd461['ok']){const _0x4acb52=await _0x5dd461['text']();throw new Error(_0x53f539(0x153)+_0x4acb52);}}export async function restoreFeature(_0x563ca8){const _0xdd3951=_0x5257,_0x5b3f08={'QSkjg':function(_0x5828fe){return _0x5828fe();},'NHvLw':_0xdd3951(0x133)},_0x18d10b=await getToken();if(!_0x18d10b)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3a320f=_0x5b3f08['QSkjg'](getApiBaseUrl),_0x195914=await fetch(_0x3a320f+_0xdd3951(0x132)+_0x563ca8+_0xdd3951(0x154),{'method':_0x5b3f08[_0xdd3951(0x172)],'headers':{'Authorization':'Bearer\x20'+_0x18d10b}});if(!_0x195914['ok']){const _0x3fdc90=await _0x195914['text']();throw new Error(_0xdd3951(0x162)+_0x3fdc90);}}function _0x56af(){const _0x3aa73c=['Bearer\x20','/sessions','GET','/action-items','Failed\x20to\x20get\x20feature\x20review:\x20','WvSqZ','offset','toString','dZLLx','style','/api/v1/mcp/features','Failed\x20to\x20restore\x20feature\x20review:\x20','/checklist','Failed\x20to\x20list\x20feature\x20reviews:\x20','gitBranch','fnsTE','oEDmM','includeDeleted','application/json','eXLXl','SPgHc','eZgtV','Jpcnv','16710920UjDPmE','joZIZ','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','908649pLHoSr','NHvLw','kafYb','9758623QRAMsh','lselT','/checklist/','billingUrl','gitRepoUrl','dZufu','265420Pbkyzg','updateChecklistItem','Feature\x20limit\x20exceeded','ibfzh','PATCH','kSNhc','510mpIndw','/api/v1/mcp/features/','POST','sMzxx','346053edIEDt','Failed\x20to\x20update\x20scenario:\x20','sessionId','qYbGq','Failed\x20to\x20conclude\x20session:\x20','Failed\x20to\x20get\x20item\x20feedback:\x20','iOkws','DpwHV','40FWmsir','/sessions/','RfZGE','DELETE','rPrpQ','set','length','stringify','3716820pCbpVz','MTjMI','FjuNw','Failed\x20to\x20create\x20feature\x20review:\x20','Zvkxh','limit','1658veLHcJ','json','text','itemIds','EQInR','56HozUgH','OJopd','xoFmU','Failed\x20to\x20delete\x20feature\x20review:\x20','/restore','OVgLm','XczjI'];_0x56af=function(){return _0x3aa73c;};return _0x56af();}
|