@ranger-testing/ranger-cli 3.1.5 → 3.1.6-alpha.4287155-52

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.
Files changed (86) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/scenarioOriginCheck.js +1 -1
  71. package/build/commands/utils/sessionCache.js +1 -1
  72. package/build/commands/utils/settings.js +1 -1
  73. package/build/commands/utils/skillContent.js +1 -1
  74. package/build/commands/utils/skills.js +1 -1
  75. package/build/commands/utils/stitchWebmFiles.js +1 -1
  76. package/build/commands/utils/telemetry.js +1 -1
  77. package/build/commands/utils/tokenRefresh.js +1 -1
  78. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  79. package/build/commands/utils/tunnelClient.js +1 -1
  80. package/build/commands/utils/userApi.js +1 -1
  81. package/build/commands/utils/version.js +1 -1
  82. package/build/commands/verifyFeature.js +1 -1
  83. package/build/commands/verifyFeatureCli.js +1 -1
  84. package/build/commands/verifyFeatureNovaCli.js +1 -1
  85. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  86. package/package.json +1 -1
@@ -1 +1 @@
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
+ const _0x565d18=_0x5bca;(function(_0x20e7f8,_0x39e7bc){const _0x2f44ea=_0x5bca,_0x31dc35=_0x20e7f8();while(!![]){try{const _0x2c773e=-parseInt(_0x2f44ea(0x18c))/0x1*(-parseInt(_0x2f44ea(0x12f))/0x2)+parseInt(_0x2f44ea(0x12a))/0x3+parseInt(_0x2f44ea(0x169))/0x4*(parseInt(_0x2f44ea(0x15a))/0x5)+parseInt(_0x2f44ea(0x14a))/0x6*(parseInt(_0x2f44ea(0x19f))/0x7)+-parseInt(_0x2f44ea(0x1b6))/0x8+-parseInt(_0x2f44ea(0x155))/0x9*(parseInt(_0x2f44ea(0x132))/0xa)+parseInt(_0x2f44ea(0x17a))/0xb*(-parseInt(_0x2f44ea(0x170))/0xc);if(_0x2c773e===_0x39e7bc)break;else _0x31dc35['push'](_0x31dc35['shift']());}catch(_0x24908c){_0x31dc35['push'](_0x31dc35['shift']());}}}(_0x5c2e,0x787d7));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x4e7c15 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(_0x51d1bc){const _0x5b9542=_0x5bca;try{return new URL(_0x51d1bc)[_0x5b9542(0x1a3)];}catch{return _0x5b9542(0x148);}}function errorMessageForTelemetry(_0x4d837){const _0x15f58b=_0x5bca,_0x1d95aa={'AKRCX':function(_0x3499ce,_0x448998){return _0x3499ce instanceof _0x448998;}};return _0x1d95aa[_0x15f58b(0x141)](_0x4d837,Error)?_0x4d837[_0x15f58b(0x192)]:undefined;}function trackBridgeEvent(_0x4c6952,_0x48287b){const _0x25e78d=_0x5bca,_0x3f175c={'nByeH':_0x25e78d(0x18a),'ltqSh':function(_0x22370e,_0x104a9d){return _0x22370e===_0x104a9d;},'PVhME':'local_ws_error'};if(!_0x4c6952)return;const _0x3f18e1={'tunnelSessionId':_0x48287b[_0x25e78d(0x179)],'tunnelEventType':_0x48287b['type'],'connectionId':_0x48287b['connectionId'],'code':_0x48287b[_0x25e78d(0x193)],'reason':_0x48287b[_0x25e78d(0x1cd)],'error':_0x48287b['error'],'elapsedMs':_0x48287b['elapsedMs'],'activeLocalConnections':_0x48287b['activeLocalConnections'],'pendingLocalConnections':_0x48287b['pendingLocalConnections']};_0x4c6952[_0x25e78d(0x13e)]('tunnel_bridge_event',_0x3f18e1),(_0x48287b['type']===_0x3f175c['nByeH']||_0x3f175c[_0x25e78d(0x1cb)](_0x48287b[_0x25e78d(0x197)],_0x3f175c['PVhME']))&&void _0x4c6952[_0x25e78d(0x1cf)]('tunnel_bridge',new Error(_0x48287b['error']??_0x48287b[_0x25e78d(0x197)]),_0x3f18e1);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x5b5e9d=_0x5bca,_0x2ec817={'dEbue':function(_0x81f524){return _0x81f524();},'vbkbC':_0x5b5e9d(0x157)},_0x54fb62=await _0x2ec817['dEbue'](getToken);if(!_0x54fb62)throw new Error(_0x2ec817[_0x5b5e9d(0x17f)]);return _0x54fb62;}async function apiRequest(_0x339e9a,_0x1defee={}){const _0x5a5158=_0x5bca,_0x2dba09={'PjRth':function(_0x363543){return _0x363543();},'MVKJV':function(_0x10927e,_0x1a8c93){return _0x10927e===_0x1a8c93;},'UmQoN':_0x5a5158(0x14b)},_0x37587e=await requireToken(),_0x5aab1f=_0x2dba09['PjRth'](getApiBaseUrl),_0xebbf8b=await fetch(''+_0x5aab1f+_0x339e9a,{..._0x1defee,'headers':{'Authorization':_0x5a5158(0x195)+_0x37587e,'Content-Type':_0x5a5158(0x183),..._0x1defee[_0x5a5158(0x159)]??{}}});if(!_0xebbf8b['ok']){let _0x297e9a='',_0x324e8d;try{const _0x446232=await _0xebbf8b['json'](),_0x21829d=(_0x2dba09[_0x5a5158(0x14d)](typeof _0x446232[_0x5a5158(0x15d)],'string')?_0x446232[_0x5a5158(0x15d)]:undefined)??JSON['stringify'](_0x446232);_0x297e9a=_0x21829d;typeof _0x446232['test_output']===_0x2dba09['UmQoN']&&_0x446232['test_output']&&(_0x297e9a=_0x297e9a+'\x0a'+_0x446232[_0x5a5158(0x15e)]);if(_0x2dba09['MVKJV'](typeof _0x446232['code'],_0x2dba09[_0x5a5158(0x1d3)]))_0x324e8d=_0x446232['code'];}catch{_0x297e9a=_0xebbf8b[_0x5a5158(0x190)];}throw new ApiError('API\x20request\x20'+_0x339e9a+_0x5a5158(0x177)+_0xebbf8b['status']+'):\x20'+_0x297e9a,_0xebbf8b['status'],_0x297e9a,_0x324e8d);}if(_0x2dba09[_0x5a5158(0x14d)](_0xebbf8b[_0x5a5158(0x17d)],0xcc))return undefined;return _0xebbf8b['json']();}export class ApiError extends Error{['status'];[_0x565d18(0x1bb)];[_0x565d18(0x193)];constructor(_0x44c329,_0x319601,_0x12ad4e,_0x28a8f1){const _0xcdee69=_0x565d18;super(_0x44c329),this[_0xcdee69(0x17d)]=_0x319601,this['detail']=_0x12ad4e,this['code']=_0x28a8f1,this['name']=_0xcdee69(0x180);}}export async function fetchCloudProfile(_0x58da57){const _0x3a1c2a={'BlRIX':function(_0x6fe2a7,_0x4ee0fe){return _0x6fe2a7===_0x4ee0fe;}};try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x58da57));}catch(_0x3bb5b8){if(_0x3bb5b8 instanceof ApiError&&_0x3a1c2a['BlRIX'](_0x3bb5b8['status'],0x194))return null;throw _0x3bb5b8;}}export async function listCloudProfiles(){const _0x4eb234=_0x565d18,_0x2b9aec={'prVMq':function(_0x5f2478,_0x5e8c34){return _0x5f2478(_0x5e8c34);},'RYPJM':_0x4eb234(0x15f)},_0x1256fc=await _0x2b9aec[_0x4eb234(0x1c7)](apiRequest,_0x2b9aec['RYPJM']);return _0x1256fc['profiles'];}export async function deleteCloudProfile(_0xea9889){const _0x32cb60=_0x565d18,_0x1723f9={'yCvdS':function(_0x5f0617,_0x3c8216,_0x2034ad){return _0x5f0617(_0x3c8216,_0x2034ad);},'lQAPk':'DELETE','ssfKE':function(_0x2d586b,_0x13a562){return _0x2d586b instanceof _0x13a562;}};try{await _0x1723f9[_0x32cb60(0x1bf)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0xea9889),{'method':_0x1723f9[_0x32cb60(0x18f)]});}catch(_0x40de25){if(_0x1723f9[_0x32cb60(0x1c1)](_0x40de25,ApiError)&&_0x40de25['status']===0x194)throw new Error(_0x32cb60(0x1d2)+_0xea9889+_0x32cb60(0x147));throw _0x40de25;}}export async function createCloudProfile(_0x5ed048,_0x3b69ed,_0x1449e6={}){const _0x336e02=_0x565d18,_0x430d4f={'owXCT':'/api/v1/profiles','TsXiP':_0x336e02(0x13f)},_0x4591f1={'name':_0x5ed048};if(_0x3b69ed)_0x4591f1['environment_key']=_0x3b69ed;_0x1449e6[_0x336e02(0x1af)]&&Object[_0x336e02(0x1b3)](_0x1449e6[_0x336e02(0x1af)])['length']>0x0&&(_0x4591f1['settings']=_0x1449e6[_0x336e02(0x1af)]);if(_0x1449e6['username'])_0x4591f1[_0x336e02(0x1b2)]=_0x1449e6['username'];if(_0x1449e6[_0x336e02(0x130)])_0x4591f1[_0x336e02(0x130)]=_0x1449e6['password'];return await apiRequest(_0x430d4f['owXCT'],{'method':_0x430d4f['TsXiP'],'body':JSON[_0x336e02(0x1d1)](_0x4591f1)});}export async function uploadCloudProfileSession(_0x5e369d,_0x1bb4ff){const _0x17a087=_0x565d18,_0x18f43d={'GsWMC':function(_0xc808dd,_0x368cc2){return _0xc808dd(_0x368cc2);},'nCKNC':'POST'};return await apiRequest(_0x17a087(0x1c6)+_0x18f43d['GsWMC'](encodeURIComponent,_0x5e369d)+'/session',{'method':_0x18f43d['nCKNC'],'body':JSON[_0x17a087(0x1d1)]({'session_state':_0x1bb4ff})});}export async function saveCloudProfileCredentials(_0x285923,_0x12be00,_0x168c09){const _0x27d6ac=_0x565d18,_0x395abf={'iUVgM':function(_0x449054,_0x898fac){return _0x449054(_0x898fac);}};await apiRequest(_0x27d6ac(0x1c6)+_0x395abf['iUVgM'](encodeURIComponent,_0x285923),{'method':'PUT','body':JSON[_0x27d6ac(0x1d1)]({'username':_0x12be00,'password':_0x168c09})});}export async function fetchAuthConfig(){const _0x26a4de=_0x565d18,_0x386465={'HciFP':function(_0x4b5d68,_0x424637){return _0x4b5d68(_0x424637);},'WsZcz':'/api/v1/profiles/auth-config','cknqL':function(_0x24d2c,_0x497482){return _0x24d2c instanceof _0x497482;},'SKVRB':function(_0x2d7e6d,_0x4f4b32){return _0x2d7e6d!==_0x4f4b32;}};try{const _0x272a7a=await _0x386465[_0x26a4de(0x154)](apiRequest,_0x386465[_0x26a4de(0x131)]);return _0x272a7a['auth_config'];}catch(_0x263ffe){return _0x386465[_0x26a4de(0x13c)](_0x263ffe,ApiError)&&_0x386465[_0x26a4de(0x13b)](_0x263ffe[_0x26a4de(0x17d)],0x194)&&console['error'](_0x26a4de(0x149)+_0x263ffe['message']),null;}}async function createTunnelSession(_0x58b9fc){const _0x5b6950=_0x565d18;return await apiRequest('/api/v1/tunnel/sessions',{'method':'POST','body':JSON[_0x5b6950(0x1d1)]({'targetUrl':_0x58b9fc,'mode':_0x5b6950(0x146)})});}async function deleteTunnelSession(_0x4a84ee){const _0x7355a5=_0x565d18,_0x1a5e90={'zpeMD':function(_0x1cf899,_0x221403,_0x5309ad){return _0x1cf899(_0x221403,_0x5309ad);}};await _0x1a5e90['zpeMD'](apiRequest,_0x7355a5(0x198)+_0x4a84ee,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x282775,_0x8bce93,_0x42cfa2){const _0x213438=_0x565d18,_0x61635={'pIZQi':function(_0x65b697,_0x56e958){return _0x65b697+_0x56e958;},'MDlMt':function(_0x39c2fe,_0x2b29a5,_0x243dd1){return _0x39c2fe(_0x2b29a5,_0x243dd1);},'oxdYp':function(_0x2cd63b,_0x286b25){return _0x2cd63b in _0x286b25;},'EARUN':'ambiguous','QsgUT':function(_0x7d4a0a,_0x2b3f87){return _0x7d4a0a+_0x2b3f87;}};if(_0x42cfa2){if(!_0x282775?.['environments']?.[_0x42cfa2]){const _0x2f80c5=Object['keys'](_0x282775?.[_0x213438(0x196)]??{});throw new Error(_0x61635[_0x213438(0x173)]('Auth\x20environment\x20\x22'+_0x42cfa2+_0x213438(0x12b),_0x2f80c5[_0x213438(0x19c)]?'\x20Available:\x20'+_0x2f80c5[_0x213438(0x133)](',\x20')+'.':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.')+'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)');}return _0x42cfa2;}if(!_0x282775)return null;if(_0x8bce93){const _0xdb103d=_0x61635['MDlMt'](matchAuthEnvironmentExact,_0x8bce93,_0x282775);if(_0xdb103d)return _0xdb103d;const _0x46a948=matchAuthEnvironmentByHost(_0x8bce93,_0x282775);if(_0x46a948&&_0x61635['oxdYp']('key',_0x46a948))return console['log']('\x20\x20Auth\x20env\x20\x22'+_0x46a948['key']+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x8bce93+'\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).'),_0x46a948[_0x213438(0x144)];if(_0x46a948&&_0x61635[_0x213438(0x163)]in _0x46a948)throw new Error(_0x213438(0x175)+_0x46a948['ambiguous'][_0x213438(0x133)](',\x20')+');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.');if(needsTunnel(_0x8bce93))throw new Error(_0x61635[_0x213438(0x173)](_0x61635['pIZQi'](_0x61635[_0x213438(0x136)]('No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22'+_0x8bce93+'\x22.\x0a',_0x213438(0x1ab))+'\x20\x20Options:\x0a','\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a')+('\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x8bce93['replace'](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),_0x213438(0x1a2)+_0x8bce93+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x282775['defaultEnvironmentKey'])return _0x282775[_0x213438(0x171)];const _0x3c2045=Object[_0x213438(0x1b3)](_0x282775['environments']??{});if(_0x3c2045[_0x213438(0x19c)]===0x1)return _0x3c2045[0x0];if(_0x3c2045[_0x213438(0x19c)]===0x0)return null;throw new Error('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x3c2045['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>`.');}function _0x5bca(_0x2c490d,_0x577a01){_0x2c490d=_0x2c490d-0x127;const _0x5c2eb2=_0x5c2e();let _0x5bcac4=_0x5c2eb2[_0x2c490d];return _0x5bcac4;}export function adHocProfileName(_0x3146ec,_0x3d234b,_0x4c0c68){const _0xff9b33=_0x565d18,_0xcee47b={'bMjCf':function(_0x12abac,_0x11e64f){return _0x12abac===_0x11e64f;}};if(!_0x3d234b||_0xcee47b[_0xff9b33(0x1a8)](_0x3d234b,_0x4c0c68))return _0x3146ec;return _0x3146ec+':'+_0x3d234b;}function _0x5c2e(){const _0x58a4c2=['1340368qXsdTI','FQYNh','Browser\x20login\x20timed\x20out\x20after\x20','tunnel_session_id','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','detail','cookies','rrlnQ','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','yCvdS','\x20\x20No\x20live\x20session\x20for\x20\x22','ssfKE','mgGDx','trackPhaseStart','RANGER_TEST_USERNAME','aVaSX','/api/v1/profiles/','prVMq','tunnel_login_setup','yViLs','xrvRH','ltqSh','RANGER_TEST_PASSWORD','reason','\x22\x20failed\x20validation\x20—\x20refreshing...','trackPhaseError','forceLogin','stringify','Cloud\x20profile\x20\x22','UmQoN','log','ERNZu','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','1000707gYMJgO','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','catch','\x22;\x20proceeding\x20with\x20loginInstructions.','tunnel_login_request','264HNDIKI','password','WsZcz','30asMKTn','join','fFFHD','aIMVE','QsgUT','DuwOP','pw_endpoint','hBmbS','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','SKVRB','cknqL','AtNAd','trackPhaseEnd','POST','lBWLK','AKRCX','VHYfR','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','key','clientIp','agent','\x22\x20not\x20found.','invalid-url','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','396174AwYgrX','string','cLhLH','MVKJV','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','KMNLp','force','organizationId','trim','HciFP','2259729XgJyHT','close','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','Browser\x20login\x20timed\x20out\x20before\x20completion.','headers','5NhEWnU','name','origin','error','test_output','/api/v1/profiles','session_state','\x22;\x20using\x20\x22','MWjyz','EARUN','BvXeu','telemetry','targetUrl','wsEndpoint','persistSessionState','3438980WcFnSo','Fhaie','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','JrCBb','pwEndpoint','ZUbeq','btarV','60icdJoJ','defaultEnvironmentKey','cxruS','pIZQi','setupHeaders','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','loginInstructions','\x20failed\x20(','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','sessionId','717596aWupxd','environmentKey','push','status','not_configured','vbkbC','ApiError','YIKsg','newContext','application/json','LinOA','IPRSL','tunnel_login_cleanup','raw','/session','fiUFI','tunnel_error','PUT','1144PWgDfd','userAgent','QwCsI','lQAPk','statusText','DqCkK','message','code','ctEjW','Bearer\x20','environments','type','/api/v1/tunnel/sessions/','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','iARQV','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','length','prompt','isArray','42NHXfke','env','url','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','host','storageState','invalidateOn','baseUrl','UZUnz','bMjCf','dHyUE','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','\x22,\x20cached\x20locally','CDkDr','\x22\x20for\x20','settings','mPlBZ','pKGan','username','keys','Ttmks','yzuTm'];_0x5c2e=function(){return _0x58a4c2;};return _0x5c2e();}export async function resolveAdHocProfile(_0x52543c={},_0x7b769c=process[_0x565d18(0x1a0)]){const _0x53cb5c=_0x565d18,_0x6e4dc8={'Ttmks':function(_0x46237d){return _0x46237d();},'KMNLp':function(_0x1b15c7,_0x1cc8ce){return _0x1b15c7!==_0x1cc8ce;},'iLczx':'none','aVaSX':function(_0x44a168,_0x339970,_0x5db45d,_0x2c0170){return _0x44a168(_0x339970,_0x5db45d,_0x2c0170);},'jQhEZ':function(_0x4e4bdd,_0x5a9a2d){return _0x4e4bdd??_0x5a9a2d;}},_0xad5e63=_0x7b769c[_0x53cb5c(0x1c4)];if(!_0xad5e63)return null;const _0x1718c8=await _0x6e4dc8[_0x53cb5c(0x1b4)](fetchAuthConfig),_0x5655c7=pickAdHocEnvKey(_0x1718c8,_0x52543c[_0x53cb5c(0x166)],_0x52543c['envKey']);let _0x21e6df=adHocProfileName(_0xad5e63,_0x5655c7,_0x1718c8?.[_0x53cb5c(0x171)]),_0x45037b=await fetchCloudProfile(_0x21e6df);_0x45037b&&_0x5655c7&&_0x6e4dc8[_0x53cb5c(0x150)](_0x45037b['environmentKey'],_0x5655c7)&&(console[_0x53cb5c(0x127)]('\x20\x20Cloud\x20profile\x20\x22'+_0x21e6df+_0x53cb5c(0x129)+(_0x45037b[_0x53cb5c(0x17b)]??_0x6e4dc8['iLczx'])+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x5655c7+_0x53cb5c(0x161)+_0xad5e63+':'+_0x5655c7+'\x22\x20instead.'),_0x21e6df=_0xad5e63+':'+_0x5655c7,_0x45037b=await fetchCloudProfile(_0x21e6df));if(_0x45037b)return{'name':_0x45037b[_0x53cb5c(0x15b)],'profile':_0x45037b};const _0x31534d=_0x7b769c[_0x53cb5c(0x1cc)],_0x2ec85d=await _0x6e4dc8[_0x53cb5c(0x1c5)](createCloudProfile,_0x21e6df,_0x6e4dc8['jQhEZ'](_0x5655c7,undefined),{'username':_0xad5e63,'password':_0x31534d});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x2ec85d[_0x53cb5c(0x15b)]+_0x53cb5c(0x1ae)+_0xad5e63+(_0x5655c7?'\x20(auth\x20env:\x20'+_0x5655c7+')':'')),{'name':_0x2ec85d['name'],'profile':_0x2ec85d};}export async function writeSessionToLocalCache(_0x56d46d,_0x4fc95b,_0x24534d,_0x37c289,_0x10b4ce,_0x1f98f3,_0x312447){const _0x9f54cd=_0x565d18,_0x3f2cd0={'mowGW':function(_0x50a3ab,_0x286ba5,_0x58c0cc){return _0x50a3ab(_0x286ba5,_0x58c0cc);},'aIMVE':function(_0x4c0011,_0x4ae1fa,_0x3f547d){return _0x4c0011(_0x4ae1fa,_0x3f547d);},'HGDMq':function(_0x332d16){return _0x332d16();},'IPRSL':'auth','jvwon':function(_0x44b172,_0x34a2c9){return _0x44b172(_0x34a2c9);},'AglUY':function(_0x520e97,_0x5f5651,_0x5252ae){return _0x520e97(_0x5f5651,_0x5252ae);}},_0x330ac4=sessionCacheHash({'orgId':_0x4fc95b,'profileName':_0x56d46d,'effectiveBaseUrl':_0x24534d,'setupHeaders':_0x37c289,'invalidateOn':_0x312447?.['invalidateOn'],'userAgent':_0x312447?.['userAgent'],'clientIp':_0x312447?.[_0x9f54cd(0x145)]}),_0x4f3aad=_0x3f2cd0['mowGW'](getSessionCachePath,_0x330ac4,_0x56d46d),_0x2aad7f=_0x3f2cd0[_0x9f54cd(0x135)](join,_0x3f2cd0['HGDMq'](getRangerHomeDir),_0x3f2cd0[_0x9f54cd(0x185)]);!_0x3f2cd0['jvwon'](existsSync,_0x2aad7f)&&await _0x3f2cd0['AglUY'](mkdir,_0x2aad7f,{'recursive':!![]});const _0x1ad516={..._0x10b4ce};_0x1f98f3&&_0x1f98f3[_0x9f54cd(0x19c)]>0x0&&Array[_0x9f54cd(0x19e)](_0x1ad516['cookies'])&&(_0x1ad516[_0x9f54cd(0x1bc)]=duplicateCookiesForDomains(_0x1ad516['cookies'],_0x1f98f3));const _0x2660bb={'cached_at':new Date()['toISOString'](),'session_state':_0x1ad516};await writeFile(_0x4f3aad,JSON[_0x9f54cd(0x1d1)](_0x2660bb,null,0x2));const _0x1b4c8a=getStorageStatePath(_0x4f3aad);return await writeFile(_0x1b4c8a,JSON['stringify'](_0x1ad516,null,0x2)),_0x1b4c8a;}export async function checkLocalCache(_0x46b074,_0x2a2ce7,_0x5b6060,_0x2d18d3,_0xa137e7){const _0x55345c=_0x565d18,_0x4e8365={'fXACA':function(_0x45d65f,_0x5e0e58){return _0x45d65f(_0x5e0e58);},'xrvRH':function(_0x45ab20,_0xf4e510){return _0x45ab20(_0xf4e510);},'rrlnQ':'utf-8'},_0x4f3c81=_0x4e8365['fXACA'](sessionCacheHash,{'orgId':_0x2a2ce7,'profileName':_0x46b074,'effectiveBaseUrl':_0x5b6060,'setupHeaders':_0x2d18d3,'invalidateOn':_0xa137e7?.[_0x55345c(0x1a5)],'userAgent':_0xa137e7?.['userAgent'],'clientIp':_0xa137e7?.[_0x55345c(0x145)]}),_0xb62019=getSessionCachePath(_0x4f3c81,_0x46b074),_0x1ba8db=getStorageStatePath(_0xb62019);if(!existsSync(_0xb62019)||!_0x4e8365[_0x55345c(0x1ca)](existsSync,_0x1ba8db))return null;try{const _0x4cb02c=await readFile(_0xb62019,_0x4e8365[_0x55345c(0x1bd)]);return JSON['parse'](_0x4cb02c),{'storageStatePath':_0x1ba8db};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x431189,_0x504a24){const _0x5b3d18=_0x565d18,_0x2574a8={'hBmbS':function(_0x285448,_0xc777b4){return _0x285448+_0xc777b4;}};if(!_0x504a24||!_0x504a24['domains']?.['length'])return;let _0x192ad0;try{_0x192ad0=new URL(_0x431189);}catch{return;}const _0x454451=[];for(const _0x5cee39 of _0x504a24['domains']){try{_0x454451[_0x5b3d18(0x17c)]({'raw':_0x5cee39,'url':new URL(_0x5cee39)});}catch{}}if(_0x454451[_0x5b3d18(0x19c)]===0x0)return;if(_0x454451['some'](_0x38053e=>_0x38053e[_0x5b3d18(0x1a1)][_0x5b3d18(0x15c)]===_0x192ad0[_0x5b3d18(0x15c)]))return;const _0x42d828=_0x454451['map'](_0x2453d2=>'\x22'+_0x2453d2[_0x5b3d18(0x187)]+'\x22')[_0x5b3d18(0x133)](',\x20');console[_0x5b3d18(0x127)](_0x2574a8[_0x5b3d18(0x139)](_0x5b3d18(0x19b)+_0x42d828+';\x20'+('you\x27re\x20now\x20at\x20\x22'+_0x431189+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20'),_0x5b3d18(0x1ba)));}export async function serverSideLogin(_0x3456f8,_0x2dd443){const _0x228160=_0x565d18,_0x2f9f61={'gjNLx':function(_0x344762,_0xcf6ed9,_0x4b5168){return _0x344762(_0xcf6ed9,_0x4b5168);},'QwCsI':function(_0x1ff178,_0x5f2315){return _0x1ff178(_0x5f2315);},'yViLs':'POST','pXUaO':function(_0x17d648,_0x157880){return _0x17d648 instanceof _0x157880;},'QzSaq':function(_0x5cfaf4,_0x3772c4){return _0x5cfaf4===_0x3772c4;},'kkreN':_0x228160(0x17e)},_0x5beb82=process[_0x228160(0x1a0)][_0x228160(0x1c4)],_0x4db707=process['env'][_0x228160(0x1cc)],_0x416c6e={};if(_0x5beb82)_0x416c6e['username']=_0x5beb82;if(_0x4db707)_0x416c6e[_0x228160(0x130)]=_0x4db707;if(_0x2dd443?.[_0x228160(0x151)])_0x416c6e[_0x228160(0x151)]=!![];if(_0x2dd443?.[_0x228160(0x166)])_0x416c6e['target_url']=_0x2dd443['targetUrl'];_0x2dd443?.['tunnel']&&(_0x416c6e[_0x228160(0x1b9)]=_0x2dd443['tunnel'][_0x228160(0x179)],_0x416c6e[_0x228160(0x138)]=_0x2dd443['tunnel']['pwEndpoint']);try{return await _0x2f9f61['gjNLx'](apiRequest,'/api/v1/profiles/'+_0x2f9f61[_0x228160(0x18e)](encodeURIComponent,_0x3456f8)+'/login',{'method':_0x2f9f61[_0x228160(0x1c9)],'body':JSON['stringify'](_0x416c6e)});}catch(_0x1fd888){if(_0x2f9f61['pXUaO'](_0x1fd888,ApiError)&&_0x1fd888[_0x228160(0x17d)]===0x190&&_0x2f9f61['QzSaq'](_0x1fd888[_0x228160(0x193)],'not_configured'))return{'status':_0x2f9f61['kkreN'],'error':_0x1fd888[_0x228160(0x1bb)]};throw _0x1fd888;}}async function serverSideLoginWithOptionalTunnel(_0xf51ff,_0x38ebc2,_0x2310a5={}){const _0x345a6b=_0x565d18,_0x4367c8={'mPlBZ':function(_0x21b658,_0x1947d7){return _0x21b658(_0x1947d7);},'yzuTm':function(_0x4e50a1,_0xedf8e6,_0x2ba5a0){return _0x4e50a1(_0xedf8e6,_0x2ba5a0);},'dHyUE':'true','FQYNh':function(_0x449139,_0x564366){return _0x449139(_0x564366);},'wKoVG':function(_0x175b9c,_0x21c128){return _0x175b9c(_0x21c128);},'ctEjW':function(_0xf9a54d){return _0xf9a54d();},'njeUF':_0x345a6b(0x1c8),'ZUbeq':_0x345a6b(0x12e),'VxGil':_0x345a6b(0x186)};if(!needsTunnel(_0x38ebc2))return await _0x4367c8[_0x345a6b(0x1b5)](serverSideLogin,_0xf51ff,{'force':_0x2310a5[_0x345a6b(0x151)]});let _0x444436=null,_0x21c6fb=null,_0x3f9af5=null,_0x4220e3=null,_0x192d2e=![];const _0x48a640=process[_0x345a6b(0x1a0)]['RANGER_TUNNEL_LOGIN_HEADED']?.['toLowerCase'](),_0x572b73=_0x48a640==='1'||_0x48a640===_0x4367c8[_0x345a6b(0x1a9)],_0x4b5ff8={'profileName':_0xf51ff,'targetUrlHost':_0x4367c8[_0x345a6b(0x1b7)](targetHostForTelemetry,_0x38ebc2),'tunnelRequired':!![],'forceLogin':_0x4367c8[_0x345a6b(0x1b0)](Boolean,_0x2310a5[_0x345a6b(0x151)]),'localBrowserServerHeaded':_0x572b73};try{_0x2310a5[_0x345a6b(0x165)]?.[_0x345a6b(0x1c3)](_0x345a6b(0x1c8),_0x4b5ff8);_0x572b73&&console['log'](_0x345a6b(0x1be));_0x444436=await _0x4367c8['wKoVG'](launchBrowserServer,{'headless':!_0x572b73}),_0x21c6fb=await createTunnelSession(_0x38ebc2);const _0x56c5ef=await _0x4367c8[_0x345a6b(0x194)](requireToken);_0x3f9af5=await createTunnelBridge({'localWsUrl':_0x444436[_0x345a6b(0x167)],'tunnelServerUrl':_0x21c6fb['tunnelUrl'],'sessionId':_0x21c6fb[_0x345a6b(0x179)],'apiKey':_0x56c5ef,'onError':_0x67531=>{_0x4220e3=_0x67531;},'onClose':()=>{const _0x95122d=_0x345a6b;_0x4220e3??=new Error(_0x95122d(0x13a)+_0xf51ff);},'onEvent':_0x391efe=>trackBridgeEvent(_0x2310a5['telemetry'],_0x391efe)}),_0x2310a5['telemetry']?.['trackPhaseEnd'](_0x4367c8['njeUF'],{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x572b73}),_0x192d2e=!![];try{return _0x2310a5[_0x345a6b(0x165)]?.['trackPhaseStart'](_0x4367c8[_0x345a6b(0x16e)],{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb[_0x345a6b(0x179)]}),await serverSideLogin(_0xf51ff,{'force':_0x2310a5[_0x345a6b(0x151)],'targetUrl':_0x38ebc2,'tunnel':{'sessionId':_0x21c6fb[_0x345a6b(0x179)],'pwEndpoint':_0x21c6fb[_0x345a6b(0x16d)]}})['then'](_0xc93bbe=>{const _0x50b34c=_0x345a6b;return _0x2310a5[_0x50b34c(0x165)]?.[_0x50b34c(0x13e)]('tunnel_login_request',{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb?.['sessionId'],'loginStatus':_0xc93bbe[_0x50b34c(0x17d)],'hasSessionState':Boolean(_0xc93bbe[_0x50b34c(0x160)]),'hasTestOutput':_0x4367c8['mPlBZ'](Boolean,_0xc93bbe[_0x50b34c(0x15e)]),'bridgeError':_0x4367c8['mPlBZ'](errorMessageForTelemetry,_0x4220e3)}),_0xc93bbe;});}catch(_0x4c3575){await _0x2310a5['telemetry']?.[_0x345a6b(0x1cf)](_0x345a6b(0x12e),_0x4220e3??_0x4c3575,{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb['sessionId'],'bridgeError':errorMessageForTelemetry(_0x4220e3)});throw _0x4220e3??_0x4c3575;}}catch(_0x4ce1ff){!_0x192d2e&&await _0x2310a5[_0x345a6b(0x165)]?.[_0x345a6b(0x1cf)](_0x4367c8['njeUF'],_0x4ce1ff,{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb?.[_0x345a6b(0x179)]});throw _0x4ce1ff;}finally{(_0x21c6fb||_0x444436||_0x3f9af5)&&(_0x2310a5['telemetry']?.[_0x345a6b(0x1c3)](_0x345a6b(0x186),{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb?.[_0x345a6b(0x179)]}),_0x3f9af5?.['close'](),_0x444436&&await _0x444436['close']()[_0x345a6b(0x12c)](()=>{}),_0x21c6fb&&await _0x4367c8[_0x345a6b(0x1b0)](deleteTunnelSession,_0x21c6fb['sessionId'])['catch'](()=>{}),_0x2310a5['telemetry']?.[_0x345a6b(0x13e)](_0x4367c8['VxGil'],{..._0x4b5ff8,'tunnelSessionId':_0x21c6fb?.[_0x345a6b(0x179)]}));}}export async function manualBrowserLogin(_0x162595,_0x3efa6b,_0x5978ba={}){const _0x361a02=_0x565d18,_0x1bc38b={'lBWLK':function(_0x332247,_0x147e50){return _0x332247/_0x147e50;},'fFFHD':function(_0x2d4aeb){return _0x2d4aeb();},'keNeu':function(_0x16c41e,_0x4b660e,_0x9d22d0){return _0x16c41e(_0x4b660e,_0x9d22d0);},'waeEZ':_0x361a02(0x156),'hhfCp':function(_0x28058c,_0x8280e3){return _0x28058c+_0x8280e3;},'YIKsg':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','XlaIW':'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','SRIqn':'about:blank','MWjyz':'\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','NGzvz':function(_0x127290,_0x4ffef7){return _0x127290(_0x4ffef7);},'eMNRT':function(_0x381cb1,_0x5b432a){return _0x381cb1&&_0x5b432a;},'PxEio':function(_0x130fcb,_0x59c732){return _0x130fcb!==_0x59c732;},'iARQV':function(_0x279386,_0x16dcd3,_0x5eb159){return _0x279386(_0x16dcd3,_0x5eb159);},'AtNAd':'POST','LinOA':'cli:manual-login'};if(!_0x1bc38b['fFFHD'](isInteractive))throw new Error(_0x1bc38b['hhfCp']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x162595[_0x361a02(0x15b)]+'\x22.\x0a'+_0x1bc38b[_0x361a02(0x181)],_0x1bc38b['XlaIW']));const _0x10e104=_0x3efa6b&&_0x3efa6b['domains']['length']>0x0?_0x3efa6b['domains'][0x0]:_0x1bc38b['SRIqn'];console[_0x361a02(0x127)](_0x361a02(0x178)),console['log'](_0x1bc38b[_0x361a02(0x162)]),await new Promise(_0x22c299=>setTimeout(_0x22c299,0x7d0));const _0x32714e=await chromium['launch']({'headless':![]});let _0x2b8d2a=null;try{const _0x42de8c={'ignoreHTTPSErrors':!![]};_0x3efa6b?.[_0x361a02(0x174)]&&(_0x42de8c['extraHTTPHeaders']=_0x3efa6b['setupHeaders']);const _0x22fdb3=await _0x32714e[_0x361a02(0x182)](_0x42de8c);await _0x1bc38b['NGzvz'](addProfileSetupBanner,_0x22fdb3);const _0x18ca9a=await _0x22fdb3['newPage']();await _0x18ca9a['goto'](_0x10e104);let _0x53f9e6=![];await new Promise(_0x4180f6=>{const _0x23134a={'jZPil':function(_0x23d52c,_0x32504a){return _0x23d52c(_0x32504a);},'IziSN':function(_0x3819fc){return _0x1bc38b['fFFHD'](_0x3819fc);}},_0x2e41d5=_0x1bc38b['keNeu'](setTimeout,()=>{const _0x54f340=_0x5bca;_0x53f9e6=!![],console[_0x54f340(0x15d)](_0x54f340(0x1b8)+_0x1bc38b[_0x54f340(0x140)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x54f340(0x14f)),_0x1bc38b[_0x54f340(0x134)](_0x4180f6);},MANUAL_LOGIN_TIMEOUT_MS);_0x18ca9a['on'](_0x1bc38b['waeEZ'],async()=>{const _0x29e717=_0x5bca;_0x23134a['jZPil'](clearTimeout,_0x2e41d5);try{const _0x594f50=await _0x22fdb3[_0x29e717(0x1a4)]();_0x2b8d2a=_0x594f50;}catch{}_0x23134a['IziSN'](_0x4180f6);});});if(_0x1bc38b['eMNRT'](_0x53f9e6,!_0x2b8d2a))throw new Error(_0x361a02(0x158));}finally{await _0x32714e[_0x361a02(0x156)]()['catch'](()=>{});}if(!_0x2b8d2a)throw new Error(_0x361a02(0x16b));return _0x1bc38b['PxEio'](_0x5978ba[_0x361a02(0x168)],![])&&await _0x1bc38b[_0x361a02(0x19a)](apiRequest,_0x361a02(0x1c6)+encodeURIComponent(_0x162595['name'])+_0x361a02(0x188),{'method':_0x1bc38b[_0x361a02(0x13d)],'body':JSON[_0x361a02(0x1d1)]({'session_state':_0x2b8d2a,'updated_by':_0x1bc38b[_0x361a02(0x184)]})}),{'sessionState':_0x2b8d2a};}export async function promptSaveCredentials(_0xfec496){const _0x56ee93=_0x565d18,_0x4e4e2b={'DuwOP':function(_0x263b61){return _0x263b61();},'DZPGV':function(_0x5f269d,_0x4491de){return _0x5f269d(_0x4491de);},'lgSzw':'\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.'},_0x4f89a6=process['env']['RANGER_TEST_USERNAME'],_0xe40909=process['env'][_0x56ee93(0x1cc)];if(!_0x4f89a6||!_0xe40909)return;if(!_0x4e4e2b[_0x56ee93(0x137)](isInteractive))return;const {save:_0x3dfd40}=await _0x4e7c15[_0x56ee93(0x19d)]([{'type':'confirm','name':'save','message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0x3dfd40)return;await apiRequest(_0x56ee93(0x1c6)+_0x4e4e2b['DZPGV'](encodeURIComponent,_0xfec496),{'method':_0x56ee93(0x18b),'body':JSON['stringify']({'username':_0x4f89a6,'password':_0xe40909})}),console['log'](_0x4e4e2b['lgSzw']);}export async function resolveCloudProfileSession(_0x2b14df,_0x581a66={}){const _0x1027e8=_0x565d18,_0x31f28e={'btarV':function(_0x2ba4ac,_0x170401,_0x21f771){return _0x2ba4ac(_0x170401,_0x21f771);},'CDkDr':function(_0x3fdf4d,_0x5bdb7b){return _0x3fdf4d===_0x5bdb7b;},'BvXeu':function(_0x380231,_0x180be7){return _0x380231||_0x180be7;},'HHgJg':function(_0x4c5271,_0x322fb0){return _0x4c5271(_0x322fb0);},'DqCkK':function(_0x50cc47,_0x18ef12){return _0x50cc47>_0x18ef12;},'oRaEz':function(_0x38d6b5,_0x356917){return _0x38d6b5(_0x356917);},'mgGDx':function(_0x251f84,_0x5006d7){return _0x251f84&&_0x5006d7;},'pKGan':function(_0x105ace,_0x3a9f13,_0x4ebda3,_0x5a4570,_0x5bf19e,_0x5ce025,_0x79433a,_0x53e5af){return _0x105ace(_0x3a9f13,_0x4ebda3,_0x5a4570,_0x5bf19e,_0x5ce025,_0x79433a,_0x53e5af);},'VHYfR':function(_0x52b98a,_0x1701bd,_0x4d6aa1,_0x53a080,_0x2cceb4){return _0x52b98a(_0x1701bd,_0x4d6aa1,_0x53a080,_0x2cceb4);},'MJvEX':function(_0x39c279,_0x4590ff,_0x56c026){return _0x39c279(_0x4590ff,_0x56c026);},'Fhaie':function(_0x5ad758,_0x5008ad){return _0x5ad758(_0x5008ad);},'jaojp':function(_0x54040c,_0x18c4a3,_0x43991e,_0xa6dc0c){return _0x54040c(_0x18c4a3,_0x43991e,_0xa6dc0c);},'cxruS':_0x1027e8(0x17e),'ERNZu':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','JrCBb':'success','fiUFI':function(_0x18e0f4,_0x2bb7e1){return _0x18e0f4&&_0x2bb7e1;},'cLhLH':function(_0x4ce03e,_0x47dfb6){return _0x4ce03e instanceof _0x47dfb6;},'bDlVK':_0x1027e8(0x199),'UZUnz':function(_0x2ae75b,_0x42f618,_0x691ba1,_0x1f5098){return _0x2ae75b(_0x42f618,_0x691ba1,_0x1f5098);}},_0x53239a=_0x2b14df[_0x1027e8(0x1af)]??{},_0x45b384=await fetchAuthConfig(),_0x471493=_0x45b384?_0x31f28e[_0x1027e8(0x16f)](resolveAuthEnvironmentLocally,_0x45b384,_0x2b14df['environmentKey']):null,_0x2c4b13=_0x31f28e[_0x1027e8(0x1ad)](typeof _0x471493?.['loginInstructions'],_0x1027e8(0x14b))&&_0x471493['loginInstructions']['trim']()?_0x471493[_0x1027e8(0x176)]:undefined,_0x45ccc7=typeof _0x53239a[_0x1027e8(0x176)]==='string'&&_0x53239a[_0x1027e8(0x176)][_0x1027e8(0x153)]()?_0x53239a[_0x1027e8(0x176)]:undefined,_0x20fb36=_0x31f28e[_0x1027e8(0x164)](_0x45ccc7,!_0x2c4b13)?_0x53239a:{..._0x53239a,'loginInstructions':_0x2c4b13},_0x5801c5=_0x31f28e['HHgJg'](Boolean,_0x20fb36[_0x1027e8(0x176)]?.[_0x1027e8(0x153)]()),_0xff5694=Boolean(_0x53239a[_0x1027e8(0x1d0)]||_0x471493?.['forceLogin']),_0x314722=_0x471493?.['domains'],_0x1fced1=_0x53239a['setupHeaders'],_0x57a9a0=_0x1fced1??_0x471493?.['setupHeaders'],_0x119a9a=_0x581a66['effectiveBaseUrl']??_0x53239a[_0x1027e8(0x1a6)]??(_0x314722&&_0x31f28e[_0x1027e8(0x191)](_0x314722['length'],0x0)?_0x314722[0x0]:''),_0xe0d79c=_0x119a9a?_0x31f28e['oRaEz'](needsTunnel,_0x119a9a):![],_0x2b845f={'invalidateOn':_0x471493?.[_0x1027e8(0x1a5)],'userAgent':_0x471493?.['browserOptions']?.['userAgent']??_0x53239a[_0x1027e8(0x18d)]};_0xff5694&&console[_0x1027e8(0x127)]('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x2b14df['name']+'\x22,\x20refreshing\x20session...');if(!_0xff5694){const _0x40a355=await checkLocalCache(_0x2b14df['name'],_0x2b14df[_0x1027e8(0x152)],_0x119a9a,_0x57a9a0,_0x2b845f);if(_0x40a355){if(_0x31f28e[_0x1027e8(0x1c2)](_0x119a9a,!_0xe0d79c)){const _0x36e68e=await isCachedSessionLive(_0x40a355['storageStatePath'],_0x119a9a,{'sessionCheckPath':_0x471493?.['sessionCheckPath'],'setupHeaders':_0x57a9a0},{'launchBrowser':launchRealBrowser});if(_0x36e68e)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x2b14df['name']+'\x22'),{'authPath':_0x40a355['storageStatePath'],'settings':_0x20fb36,'resolvedEnv':_0x471493};console['log']('\x20\x20Cached\x20session\x20for\x20\x22'+_0x2b14df[_0x1027e8(0x15b)]+_0x1027e8(0x1ce)),_0x31f28e['btarV'](emitSessionValidationHint,_0x119a9a,_0x471493);}else return _0xe0d79c&&console['log']('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x2b14df[_0x1027e8(0x15b)]+'\x22'),{'authPath':_0x40a355['storageStatePath'],'settings':_0x20fb36,'resolvedEnv':_0x471493};}}if(!_0xff5694&&_0x2b14df['sessionState']){if(_0xe0d79c)console['log'](_0x1027e8(0x14e)+_0x119a9a+'\x22\x20on\x20profile\x20\x22'+_0x2b14df[_0x1027e8(0x15b)]+'\x22');else{const _0x967f37=await _0x31f28e[_0x1027e8(0x1b1)](writeSessionToLocalCache,_0x2b14df['name'],_0x2b14df[_0x1027e8(0x152)],_0x119a9a,_0x57a9a0,_0x2b14df['sessionState'],_0x314722,_0x2b845f);if(_0x119a9a){const _0xc07362=await _0x31f28e[_0x1027e8(0x142)](isCachedSessionLive,_0x967f37,_0x119a9a,{'sessionCheckPath':_0x471493?.['sessionCheckPath'],'setupHeaders':_0x57a9a0},{'launchBrowser':launchRealBrowser});if(_0xc07362)return console['log']('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x2b14df[_0x1027e8(0x15b)]+_0x1027e8(0x1ac)),{'authPath':_0x967f37,'settings':_0x20fb36,'resolvedEnv':_0x471493};console[_0x1027e8(0x127)]('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x2b14df['name']+_0x1027e8(0x143)),_0x31f28e['MJvEX'](emitSessionValidationHint,_0x119a9a,_0x471493);}else return{'authPath':_0x967f37,'settings':_0x20fb36,'resolvedEnv':_0x471493};}}if(_0x5801c5)return console['log'](_0x1027e8(0x1c0)+_0x2b14df['name']+_0x1027e8(0x12d)),{'authPath':undefined,'settings':_0x20fb36,'resolvedEnv':_0x471493};console[_0x1027e8(0x127)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x2b14df[_0x1027e8(0x15b)]+'\x22,\x20attempting\x20login...');const _0x399210=Boolean(process[_0x1027e8(0x1a0)]['RANGER_TEST_USERNAME'])&&_0x31f28e[_0x1027e8(0x16a)](Boolean,process[_0x1027e8(0x1a0)][_0x1027e8(0x1cc)]),_0x1914a8=_0x31f28e['HHgJg'](Boolean,_0x2b14df[_0x1027e8(0x1b2)]);if(_0x31f28e['BvXeu'](_0x399210,_0x1914a8))try{const _0x4d624d=_0x119a9a?await _0x31f28e['jaojp'](serverSideLoginWithOptionalTunnel,_0x2b14df['name'],_0x119a9a,{'force':_0xff5694,'telemetry':_0x581a66[_0x1027e8(0x165)]}):await _0x31f28e[_0x1027e8(0x16f)](serverSideLogin,_0x2b14df[_0x1027e8(0x15b)],{'force':_0xff5694});if(_0x4d624d['status']===_0x31f28e[_0x1027e8(0x172)])console['log'](_0x31f28e[_0x1027e8(0x128)]);else{if(_0x4d624d['status']===_0x31f28e[_0x1027e8(0x16c)]&&_0x4d624d[_0x1027e8(0x160)]){console['log']('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x14b177=await writeSessionToLocalCache(_0x2b14df[_0x1027e8(0x15b)],_0x2b14df[_0x1027e8(0x152)],_0x119a9a,_0x57a9a0,_0x4d624d['session_state'],_0x314722,_0x2b845f);return _0x31f28e[_0x1027e8(0x189)](_0x399210,!_0x1914a8)&&await promptSaveCredentials(_0x2b14df['name']),{'authPath':_0x14b177,'settings':_0x20fb36,'resolvedEnv':_0x471493};}else _0x4d624d[_0x1027e8(0x15e)]&&(console['log'](_0x1027e8(0x1aa)),console[_0x1027e8(0x127)](_0x4d624d[_0x1027e8(0x15e)])),console[_0x1027e8(0x127)](_0x1027e8(0x199));}}catch(_0x3c090d){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x31f28e[_0x1027e8(0x14c)](_0x3c090d,Error)?_0x3c090d[_0x1027e8(0x192)]:String(_0x3c090d))),console[_0x1027e8(0x127)](_0x31f28e['bDlVK']);}const _0x4f256b=_0x471493?{..._0x471493,'setupHeaders':_0x57a9a0}:_0x119a9a?{'key':_0x2b14df['environmentKey']??'','domains':[_0x119a9a],'setupHeaders':_0x57a9a0}:null,{sessionState:_0x3d3e7c}=await _0x31f28e[_0x1027e8(0x1a7)](manualBrowserLogin,_0x2b14df,_0x4f256b,{'persistSessionState':!_0xe0d79c}),_0xafb26f=await _0x31f28e['pKGan'](writeSessionToLocalCache,_0x2b14df[_0x1027e8(0x15b)],_0x2b14df[_0x1027e8(0x152)],_0x119a9a,_0x57a9a0,_0x3d3e7c,_0x314722,_0x2b845f);return{'authPath':_0xafb26f,'settings':_0x20fb36,'resolvedEnv':_0x471493};}
@@ -1 +1 @@
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
+ const _0x4eab5a=_0x174a;(function(_0x57006a,_0x2e9e44){const _0xcfca48=_0x174a,_0x2f64cb=_0x57006a();while(!![]){try{const _0x2be16e=parseInt(_0xcfca48(0x166))/0x1+parseInt(_0xcfca48(0x15f))/0x2+-parseInt(_0xcfca48(0x17e))/0x3*(parseInt(_0xcfca48(0x15d))/0x4)+-parseInt(_0xcfca48(0x183))/0x5+parseInt(_0xcfca48(0x161))/0x6*(parseInt(_0xcfca48(0x180))/0x7)+-parseInt(_0xcfca48(0x15a))/0x8+-parseInt(_0xcfca48(0x169))/0x9;if(_0x2be16e===_0x2e9e44)break;else _0x2f64cb['push'](_0x2f64cb['shift']());}catch(_0x185c0e){_0x2f64cb['push'](_0x2f64cb['shift']());}}}(_0x41b8,0x94b62));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x3965ac=process[_0x4eab5a(0x18b)],_0x352318={'stdin':process['stdin'],'stdout':process[_0x4eab5a(0x163)]}){const _0x3f76f1=_0x4eab5a,_0xe41650={'xBOOu':function(_0x16e466,_0x479fef){return _0x16e466(_0x479fef);}};if(_0x3965ac['CI'])return![];return Boolean(_0x352318['stdin'][_0x3f76f1(0x17a)])&&_0xe41650['xBOOu'](Boolean,_0x352318[_0x3f76f1(0x163)][_0x3f76f1(0x17a)]);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x42d8aa){const _0x4de99b=_0x4eab5a,_0x41f2e6={'vSkfn':'baseUrl','TzRUy':_0x4de99b(0x172),'ffLLG':function(_0x38b6a6,_0x55b10b){return _0x38b6a6(_0x55b10b);},'sYaVo':_0x4de99b(0x16f),'fBUcG':'clientIp','idrdG':_0x4de99b(0x16c),'ANSVr':'hex'},_0x55ca7c=new Set(_0x42d8aa['invalidateOn']??DEFAULT_INVALIDATE_ON);_0x42d8aa[_0x4de99b(0x16b)]&&needsTunnel(_0x42d8aa['effectiveBaseUrl'])&&_0x55ca7c[_0x4de99b(0x167)](_0x41f2e6[_0x4de99b(0x162)]);const _0x42755b={'orgId':_0x42d8aa[_0x4de99b(0x16a)],'profileName':_0x42d8aa[_0x4de99b(0x17f)]};return _0x55ca7c['has']('baseUrl')&&(_0x42755b['effectiveBaseUrl']=_0x42d8aa['effectiveBaseUrl']),_0x55ca7c[_0x4de99b(0x177)](_0x41f2e6['TzRUy'])&&(_0x42755b[_0x4de99b(0x172)]=_0x42d8aa['setupHeaders']?_0x41f2e6[_0x4de99b(0x179)](sortObjectKeys,_0x42d8aa['setupHeaders']):_0x42d8aa[_0x4de99b(0x172)]),_0x55ca7c[_0x4de99b(0x177)](_0x4de99b(0x164))&&(_0x42755b[_0x4de99b(0x164)]=extractPort(_0x42d8aa['effectiveBaseUrl'])),_0x55ca7c[_0x4de99b(0x177)](_0x41f2e6['sYaVo'])&&_0x42d8aa[_0x4de99b(0x16f)]!==undefined&&(_0x42755b[_0x4de99b(0x16f)]=_0x42d8aa[_0x4de99b(0x16f)]),_0x55ca7c[_0x4de99b(0x177)](_0x41f2e6['fBUcG'])&&_0x42d8aa[_0x4de99b(0x181)]!==undefined&&(_0x42755b['clientIp']=_0x42d8aa['clientIp']),createHash(_0x41f2e6[_0x4de99b(0x186)])[_0x4de99b(0x17b)](JSON[_0x4de99b(0x15e)](_0x42755b))['digest'](_0x41f2e6['ANSVr'])['slice'](0x0,0xc);}function extractPort(_0x19abde){try{return new URL(_0x19abde)['port'];}catch{return'';}}function sortObjectKeys(_0x11edd1){const _0x5782cc=_0x4eab5a,_0x2a8133={};for(const _0x3256be of Object['keys'](_0x11edd1)[_0x5782cc(0x176)]()){_0x2a8133[_0x3256be]=_0x11edd1[_0x3256be];}return _0x2a8133;}export function getSessionCachePath(_0x30251b,_0x4f777){const _0x3364d0=_0x4eab5a,_0xe880ce={'rlwFg':function(_0x3fac18){return _0x3fac18();},'WpALv':'auth'};return join(_0xe880ce[_0x3364d0(0x18a)](getRangerHomeDir),_0xe880ce['WpALv'],_0x30251b+'-'+_0x4f777+'.json');}export function getStorageStatePath(_0x18f547){const _0x2c98ca=_0x4eab5a,_0x22a7e0={'qXkwi':_0x2c98ca(0x168)};return _0x18f547[_0x2c98ca(0x15c)](/\.json$/,_0x22a7e0[_0x2c98ca(0x182)]);}export function needsTunnel(_0x598932){const _0x3cbcd1=_0x4eab5a,_0x21a431={'YBcYc':'127.0.0.1'};let _0x1d8e06;try{_0x1d8e06=new URL(_0x598932)[_0x3cbcd1(0x165)];}catch{return![];}if(_0x1d8e06==='localhost'||_0x1d8e06===_0x21a431['YBcYc'])return!![];if(_0x1d8e06['endsWith']('.localhost'))return!![];if(_0x1d8e06[_0x3cbcd1(0x16e)]('localhost.'))return!![];return![];}export function hostnameOf(_0x129579){const _0x5b674b=_0x4eab5a;return new URL(_0x129579)[_0x5b674b(0x165)];}export function duplicateCookiesForDomains(_0x4aad45,_0x102b01){const _0x5f418e=_0x4eab5a,_0x4c8adf={'WvWNu':function(_0x35ed3a,_0x49db98){return _0x35ed3a(_0x49db98);}},_0x7621d4=[..._0x4aad45],_0x14d4fa=new Set(_0x4aad45['map'](_0xaa622a=>_0xaa622a['domain']));for(const _0x14d6e0 of _0x102b01){let _0x330de1;try{_0x330de1=_0x4c8adf[_0x5f418e(0x187)](hostnameOf,_0x14d6e0);}catch{continue;}if(!_0x330de1)continue;const _0x1db614=_0x330de1['startsWith']('.')?_0x330de1:'.'+_0x330de1;if(_0x14d4fa[_0x5f418e(0x177)](_0x330de1)||_0x14d4fa['has'](_0x1db614))continue;for(const _0x4fa872 of _0x4aad45){_0x7621d4[_0x5f418e(0x174)]({..._0x4fa872,'domain':_0x1db614});}_0x14d4fa[_0x5f418e(0x167)](_0x1db614);}return _0x7621d4;}export function resolveAuthEnvironmentLocally(_0x379d48,_0x45b374){const _0x3a72bd=_0x4eab5a,_0x428667=_0x379d48[_0x3a72bd(0x160)];if(_0x45b374){const _0x169919=_0x428667[_0x45b374];if(!_0x169919)return null;return{'key':_0x45b374,..._0x169919};}if(_0x379d48[_0x3a72bd(0x189)]){const _0x394a98=_0x428667[_0x379d48['defaultEnvironmentKey']];if(!_0x394a98)return null;return{'key':_0x379d48[_0x3a72bd(0x189)],..._0x394a98};}const _0x256f71=Object['keys'](_0x428667);if(_0x256f71[_0x3a72bd(0x178)]===0x1){const _0x2e02bf=_0x256f71[0x0];return{'key':_0x2e02bf,..._0x428667[_0x2e02bf]};}return null;}function _0x174a(_0x351bbf,_0x2693cc){_0x351bbf=_0x351bbf-0x15a;const _0x41b81b=_0x41b8();let _0x174ac2=_0x41b81b[_0x351bbf];return _0x174ac2;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x339a7a,_0x34a608){const _0x23914c=_0x4eab5a;try{if(_0x34a608)return new URL(_0x34a608,_0x339a7a)[_0x23914c(0x170)]();return new URL(_0x339a7a)['toString']();}catch{return null;}}export function looksLikeLoginUrl(_0x2f357d){const _0x5aac04=_0x4eab5a;try{const _0x12c2d0=new URL(_0x2f357d);return LOGIN_URL_PATTERN[_0x5aac04(0x185)](_0x12c2d0[_0x5aac04(0x175)]);}catch{return LOGIN_URL_PATTERN[_0x5aac04(0x185)](_0x2f357d);}}export async function isCachedSessionLive(_0x35f009,_0x45f337,_0x201868={},_0x478894={}){const _0x16a263=_0x4eab5a,_0x30fbd7={'ufWrq':function(_0x4a4369,_0x2eff66){return _0x4a4369===_0x2eff66;},'OkNEM':function(_0x2db82b,_0x3701a3){return _0x2db82b(_0x3701a3);}},_0x5030d8=buildSessionCheckUrl(_0x45f337,_0x201868[_0x16a263(0x171)]);if(!_0x5030d8)return!![];if(!_0x478894[_0x16a263(0x16d)])return!![];let _0x54af48=null;try{_0x54af48=await _0x478894['launchBrowser']();const _0x4f2df9=await _0x54af48['newContext']({'storageState':_0x35f009,'ignoreHTTPSErrors':!![],..._0x201868['setupHeaders']?{'extraHTTPHeaders':_0x201868['setupHeaders']}:{}}),_0x35bb77=await _0x4f2df9['newPage'](),_0x2beef9=await _0x35bb77['goto'](_0x5030d8,{'waitUntil':_0x16a263(0x17d),'timeout':0x3a98}),_0x428817=_0x2beef9?.['status']();if(_0x428817===0x191||_0x30fbd7[_0x16a263(0x15b)](_0x428817,0x193))return![];const _0x2285d8=_0x35bb77[_0x16a263(0x17c)]();if(_0x30fbd7[_0x16a263(0x184)](looksLikeLoginUrl,_0x2285d8))return![];return!![];}catch{return![];}finally{if(_0x54af48)await _0x54af48[_0x16a263(0x188)]()[_0x16a263(0x173)](()=>{});}}function _0x41b8(){const _0x5f2316=['stringify','2340830cgvWNN','environments','1974vCxEIG','vSkfn','stdout','port','hostname','351853ZTrorP','add','.storageState.json','13437036UwtleA','orgId','effectiveBaseUrl','sha256','launchBrowser','includes','userAgent','toString','sessionCheckPath','setupHeaders','catch','push','pathname','sort','has','length','ffLLG','isTTY','update','url','domcontentloaded','13389eFCAbK','profileName','19649GnFsZE','clientIp','qXkwi','219060JSURzH','OkNEM','test','idrdG','WvWNu','close','defaultEnvironmentKey','rlwFg','env','1006208ZaQMJK','ufWrq','replace','156QVSVfI'];_0x41b8=function(){return _0x5f2316;};return _0x41b8();}
@@ -1 +1 @@
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
+ (function(_0x1945fe,_0x2b0d93){const _0x3b9328=_0x1fa1,_0x4fc9ff=_0x1945fe();while(!![]){try{const _0x19ef86=parseInt(_0x3b9328(0x8f))/0x1+parseInt(_0x3b9328(0x8e))/0x2*(parseInt(_0x3b9328(0x93))/0x3)+-parseInt(_0x3b9328(0x9a))/0x4*(-parseInt(_0x3b9328(0x9b))/0x5)+-parseInt(_0x3b9328(0x9d))/0x6*(parseInt(_0x3b9328(0x97))/0x7)+-parseInt(_0x3b9328(0x92))/0x8+-parseInt(_0x3b9328(0x91))/0x9*(parseInt(_0x3b9328(0xa3))/0xa)+parseInt(_0x3b9328(0x9c))/0xb;if(_0x19ef86===_0x2b0d93)break;else _0x4fc9ff['push'](_0x4fc9ff['shift']());}catch(_0x1b06af){_0x4fc9ff['push'](_0x4fc9ff['shift']());}}}(_0x33f0,0x9ca39));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM='aes-256-gcm',SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;function _0x33f0(){const _0x485b28=['getAuthTag','LFRTQ','4qhSVEg','4783445GVjfTq','5850570dxaQnm','138660mHPOLN','update','utf8','sha256','subarray','SSxWm','11122160ZheXch','APEgI','final','862ufJuzT','510326ugBDmE','PXBWc','9nualnB','363512PjFgPW','219nvVjJh','jwQqc','concat','anKPL','70UQEdRD'];_0x33f0=function(){return _0x485b28;};return _0x33f0();}export function deriveKey(_0x3e3f4d){const _0x137003=_0x1fa1,_0x243484={'QmgBx':function(_0x20c458,_0x3d2c8f,_0x3030fd,_0x95a19a,_0x11626f,_0x413e26){return _0x20c458(_0x3d2c8f,_0x3030fd,_0x95a19a,_0x11626f,_0x413e26);}};return _0x243484['QmgBx'](pbkdf2Sync,_0x3e3f4d,SALT,0x186a0,KEY_LENGTH,_0x137003(0xa0));}export function encrypt(_0x1f1c9d,_0xedccbb){const _0x5a1b77=_0x1fa1,_0x316468={'APEgI':function(_0x5d2e7f,_0x36a18c){return _0x5d2e7f(_0x36a18c);},'anKPL':_0x5a1b77(0x9f)},_0x5d9072=_0x316468[_0x5a1b77(0xa4)](deriveKey,_0xedccbb),_0x3a81bc=_0x316468[_0x5a1b77(0xa4)](randomBytes,IV_LENGTH),_0x179fce=createCipheriv(ALGORITHM,_0x5d9072,_0x3a81bc),_0x48a31c=Buffer[_0x5a1b77(0x95)]([_0x179fce[_0x5a1b77(0x9e)](_0x1f1c9d,_0x316468[_0x5a1b77(0x96)]),_0x179fce[_0x5a1b77(0xa5)]()]),_0x47c021=_0x179fce[_0x5a1b77(0x98)]();return Buffer[_0x5a1b77(0x95)]([_0x3a81bc,_0x47c021,_0x48a31c]);}function _0x1fa1(_0x386c38,_0x13efa5){_0x386c38=_0x386c38-0x8e;const _0x33f0ea=_0x33f0();let _0x1fa111=_0x33f0ea[_0x386c38];return _0x1fa111;}export function decrypt(_0x35fe09,_0x389710){const _0x2093ec=_0x1fa1,_0x53467f={'PXBWc':function(_0x1c1251,_0x404b85){return _0x1c1251(_0x404b85);},'jwQqc':function(_0xafbf86,_0x9c2fb7){return _0xafbf86+_0x9c2fb7;},'LFRTQ':function(_0x38572c,_0xa2cbca){return _0x38572c+_0xa2cbca;},'SSxWm':function(_0x35b947,_0x4feca8){return _0x35b947+_0x4feca8;},'aZnQC':'utf8'},_0x85376f=_0x53467f[_0x2093ec(0x90)](deriveKey,_0x389710),_0x5e0bf1=_0x35fe09[_0x2093ec(0xa1)](0x0,IV_LENGTH),_0x539a24=_0x35fe09[_0x2093ec(0xa1)](IV_LENGTH,_0x53467f[_0x2093ec(0x94)](IV_LENGTH,TAG_LENGTH)),_0x14329c=_0x35fe09['subarray'](_0x53467f[_0x2093ec(0x99)](IV_LENGTH,TAG_LENGTH)),_0x2a2764=createDecipheriv(ALGORITHM,_0x85376f,_0x5e0bf1);return _0x2a2764['setAuthTag'](_0x539a24),_0x53467f[_0x2093ec(0xa2)](_0x2a2764[_0x2093ec(0x9e)](_0x14329c),_0x2a2764['final'](_0x53467f['aZnQC']));}
@@ -1 +1 @@
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
+ const _0x52596d=_0x20b4;(function(_0x1f08f8,_0x54d4e8){const _0x2de430=_0x20b4,_0x3d277d=_0x1f08f8();while(!![]){try{const _0x24cd84=-parseInt(_0x2de430(0xe2))/0x1*(parseInt(_0x2de430(0xce))/0x2)+-parseInt(_0x2de430(0xe6))/0x3+-parseInt(_0x2de430(0xd6))/0x4+parseInt(_0x2de430(0xd7))/0x5*(-parseInt(_0x2de430(0xc9))/0x6)+-parseInt(_0x2de430(0xdd))/0x7+parseInt(_0x2de430(0xcc))/0x8+-parseInt(_0x2de430(0xc7))/0x9*(-parseInt(_0x2de430(0xdc))/0xa);if(_0x24cd84===_0x54d4e8)break;else _0x3d277d['push'](_0x3d277d['shift']());}catch(_0x372705){_0x3d277d['push'](_0x3d277d['shift']());}}}(_0x1b87,0xb8959));import{getToken}from'./keychain.js';function _0x1b87(){const _0x145087=['Yazns','3045088sZPYxS','[desire-path]\x20Payload:\x20','22KMKVCf','some','aJqud','--cookie','toLowerCase','AZpIP','Invalid\x20values','bqioN','1212296DdWLSa','14825cyaZon','stdout','--token','Bearer\x20','[desire-path]\x20Sending\x20log\x20to\x20','40dtunsT','1530480IwdtJf','Authorization','indexOf','length','includes','132977UihukA','--key','test','Not\x20enough\x20non-option\x20arguments','2945229NNwskb','vNXkU','error','stringify','join','Missing\x20required\x20argument','has','geLav','errorType','8926290PwLxOi','Unknown\x20command','1266wACzwF','push'];_0x1b87=function(){return _0x145087;};return _0x1b87();}import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set([_0x52596d(0xd9),'-t','--secret','--api-key','--apikey',_0x52596d(0xe3),'--password','--pass','--auth','--authorization','--header',_0x52596d(0xd1),'--credentials']),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x58dedc){const _0x264400=_0x52596d;return TOKEN_PATTERNS[_0x264400(0xcf)](_0x3f5316=>_0x3f5316[_0x264400(0xe4)](_0x58dedc));}export function sanitizeArgs(_0x504db4){const _0x5b277e=_0x52596d,_0x1a8f4a={'Yazns':'[REDACTED]','YacLj':function(_0x5b8dfe,_0x4959cb){return _0x5b8dfe!==_0x4959cb;},'geLav':function(_0x7043d4,_0x3074c6){return _0x7043d4(_0x3074c6);}},_0x429782=[];let _0x40fade=![];for(let _0x50caa9=0x0;_0x50caa9<_0x504db4[_0x5b277e(0xe0)];_0x50caa9++){const _0x3b377a=_0x504db4[_0x50caa9];if(_0x40fade){_0x429782[_0x5b277e(0xca)](_0x1a8f4a[_0x5b277e(0xcb)]),_0x40fade=![];continue;}if(_0x3b377a['startsWith']('--')||_0x3b377a['startsWith']('-')){const _0x3deb84=_0x3b377a[_0x5b277e(0xdf)]('=');if(_0x1a8f4a['YacLj'](_0x3deb84,-0x1)){const _0x2b7b96=_0x3b377a['slice'](0x0,_0x3deb84)['toLowerCase']();if(SENSITIVE_FLAGS[_0x5b277e(0xc4)](_0x2b7b96)){_0x429782[_0x5b277e(0xca)](_0x3b377a['slice'](0x0,_0x3deb84)+'=[REDACTED]');continue;}}else{const _0x26b2ba=_0x3b377a[_0x5b277e(0xd2)]();SENSITIVE_FLAGS['has'](_0x26b2ba)&&(_0x40fade=!![]);}_0x429782['push'](_0x3b377a);}else _0x1a8f4a[_0x5b277e(0xc5)](looksLikeToken,_0x3b377a)?_0x429782['push'](_0x1a8f4a[_0x5b277e(0xcb)]):_0x429782['push'](_0x3b377a);}return _0x429782[_0x5b277e(0xea)]('\x20');}export async function logDesirePath(_0x1a2310){const _0x3d3d34=_0x52596d,_0x2b7271={'CjmTn':function(_0x120a27){return _0x120a27();},'aJqud':function(_0x5e6673){return _0x5e6673();},'bqioN':'has_token','AZpIP':_0x3d3d34(0xde)};try{const _0x43bc81=await _0x2b7271['CjmTn'](getToken)['catch'](()=>null),_0x472050=getApiBaseUrl(),_0x5b8f18=_0x2b7271[_0x3d3d34(0xd0)](getCurrentVersion),_0x23a87c=_0x43bc81?_0x2b7271[_0x3d3d34(0xd5)]:'no_token',_0x5f1f4b={..._0x1a2310['metadata'],'authStatus':_0x23a87c,'isTty':process[_0x3d3d34(0xd8)]['isTTY']??![]},_0x28d50f={'Content-Type':'application/json'};_0x43bc81&&(_0x28d50f[_0x2b7271[_0x3d3d34(0xd3)]]=_0x3d3d34(0xda)+_0x43bc81);const _0x36755d={'rawCommand':_0x1a2310['rawCommand'],'errorMessage':_0x1a2310['errorMessage'],'errorType':_0x1a2310[_0x3d3d34(0xc6)],'featureId':_0x1a2310['featureId'],'sessionId':_0x1a2310['sessionId'],'metadata':_0x5f1f4b,'cliVersion':_0x5b8f18};process['env']['DEBUG']&&(console['error'](_0x3d3d34(0xdb)+_0x472050+'/api/v1/mcp/desire-path-logs'),console[_0x3d3d34(0xe8)](_0x3d3d34(0xcd)+JSON[_0x3d3d34(0xe9)](_0x36755d,null,0x2))),await fetch(_0x472050+'/api/v1/mcp/desire-path-logs',{'method':'POST','headers':_0x28d50f,'body':JSON[_0x3d3d34(0xe9)](_0x36755d)});}catch(_0x213bab){process['env']['DEBUG']&&console['error']('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x213bab);}}function _0x20b4(_0xd8bc14,_0xb45f53){_0xd8bc14=_0xd8bc14-0xc4;const _0x1b878b=_0x1b87();let _0x20b4c4=_0x1b878b[_0xd8bc14];return _0x20b4c4;}export function getErrorType(_0x477835,_0x4582d2){const _0x578617=_0x52596d,_0x16b894={'iMuqx':'unknown','EFKsc':'unknown_argument','eLzST':_0x578617(0xe5),'gqWhd':'missing_required_argument','vNXkU':'missing_option'};if(_0x4582d2)return'runtime_error';if(!_0x477835)return _0x16b894['iMuqx'];if(_0x477835['includes'](_0x578617(0xc8)))return'unknown_command';if(_0x477835['includes']('Unknown\x20argument'))return _0x16b894['EFKsc'];if(_0x477835[_0x578617(0xe1)](_0x16b894['eLzST']))return _0x16b894['gqWhd'];if(_0x477835[_0x578617(0xe1)](_0x578617(0xd4)))return'invalid_option_value';if(_0x477835[_0x578617(0xe1)](_0x578617(0xeb)))return _0x16b894[_0x578617(0xe7)];return'syntax_error';}
@@ -1 +1 @@
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
+ const _0x919fda=_0x36da;(function(_0x51b415,_0x45bf3f){const _0x53ebee=_0x36da,_0x51a3c7=_0x51b415();while(!![]){try{const _0x2c60b1=-parseInt(_0x53ebee(0x1ff))/0x1+parseInt(_0x53ebee(0x231))/0x2*(parseInt(_0x53ebee(0x22d))/0x3)+parseInt(_0x53ebee(0x240))/0x4*(-parseInt(_0x53ebee(0x207))/0x5)+-parseInt(_0x53ebee(0x232))/0x6*(parseInt(_0x53ebee(0x228))/0x7)+-parseInt(_0x53ebee(0x1f1))/0x8+-parseInt(_0x53ebee(0x22c))/0x9+parseInt(_0x53ebee(0x21a))/0xa;if(_0x2c60b1===_0x45bf3f)break;else _0x51a3c7['push'](_0x51a3c7['shift']());}catch(_0x171e5a){_0x51a3c7['push'](_0x51a3c7['shift']());}}}(_0x5173,0xce594));import{spawn}from'child_process';import _0xd17246 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=_0x919fda(0x216);export async function requestDeviceCode(_0x17b78f){const _0x4c9704=_0x919fda,_0x5063e7={'mpffi':function(_0x9fcf8f,_0x34d704,_0x3c1582){return _0x9fcf8f(_0x34d704,_0x3c1582);},'FOsec':'application/x-www-form-urlencoded'},_0x2e0c8b=await _0x5063e7[_0x4c9704(0x1f2)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':_0x4c9704(0x223),'headers':{'Content-Type':_0x5063e7['FOsec']},'body':new URLSearchParams({'client_id':_0x17b78f})});if(!_0x2e0c8b['ok']){const _0x4720bc=await _0x2e0c8b['text']();throw new Error(_0x4c9704(0x1fa)+_0x2e0c8b[_0x4c9704(0x21d)]+'\x20'+_0x4720bc);}return _0x2e0c8b['json']();}export async function pollForTokens(_0x84351c,_0x390037,_0x5a2b06,_0x31280e){const _0x3ee406=_0x919fda,_0x16e233={'OAgOx':function(_0x4b5d57,_0x4c23ad){return _0x4b5d57+_0x4c23ad;},'iUAip':function(_0x543168,_0x3767d5){return _0x543168*_0x3767d5;},'tePyT':function(_0x147306,_0x45a774){return _0x147306<_0x45a774;},'ENXWV':function(_0x163af6,_0x4e5c6e,_0x1184f9){return _0x163af6(_0x4e5c6e,_0x1184f9);},'leycp':_0x3ee406(0x1f8),'RtsJn':'urn:ietf:params:oauth:grant-type:device_code','vOipC':function(_0x2fc710,_0x1c3865){return _0x2fc710===_0x1c3865;},'wQqib':_0x3ee406(0x1f6),'xIRTJ':_0x3ee406(0x227),'qYnxF':'Device\x20authorization\x20timed\x20out'},_0x140972=_0x16e233[_0x3ee406(0x23b)](Date['now'](),_0x16e233[_0x3ee406(0x202)](_0x31280e,0x3e8));let _0x2f953d=_0x5a2b06*0x3e8;while(_0x16e233['tePyT'](Date['now'](),_0x140972)){await sleep(_0x2f953d);const _0x488557=await _0x16e233['ENXWV'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x16e233[_0x3ee406(0x22a)]},'body':new URLSearchParams({'client_id':_0x84351c,'device_code':_0x390037,'grant_type':_0x16e233['RtsJn']})});if(_0x488557['ok'])return _0x488557[_0x3ee406(0x20a)]();const _0x295434=await _0x488557[_0x3ee406(0x20a)]();if(_0x16e233[_0x3ee406(0x1f9)](_0x295434[_0x3ee406(0x209)],_0x16e233['wQqib']))continue;if(_0x295434['error']===_0x16e233[_0x3ee406(0x23c)]){_0x2f953d+=0x3e8;continue;}throw new Error(_0x295434[_0x3ee406(0x23f)]||_0x295434[_0x3ee406(0x209)]||'Authentication\x20failed');}throw new Error(_0x16e233['qYnxF']);}async function fetchUserProfile(_0x5cb9c1){const _0x41e208=_0x919fda,_0xcae20f={'MkWlD':function(_0x75dced){return _0x75dced();}},_0x593a3e=_0xcae20f[_0x41e208(0x1f3)](getApiBaseUrl);try{const _0x2fd792=await fetch(_0x593a3e+'/organization/me',{'method':'GET','headers':{'workos-token':_0x5cb9c1}});if(_0x2fd792['ok'])return _0x2fd792['json']();}catch{}return null;}function buildKeyName(_0x39b6cd,_0x57c7f3){const _0xf7c278=_0x919fda,_0x33fbaf=_0x57c7f3[_0xf7c278(0x22e)](_0x15a22d=>_0x15a22d[_0xf7c278(0x1f7)]===_0x39b6cd||_0x15a22d[_0xf7c278(0x1f7)]['startsWith'](_0x39b6cd+'\x20('));if(_0x33fbaf[_0xf7c278(0x211)]===0x0)return _0x39b6cd;return _0x39b6cd+'\x20('+(_0x33fbaf['length']+0x1)+')';}export async function provisionApiKey(_0x18a06b){const _0xa5c177=_0x919fda,_0x1e9a37={'bLqmD':function(_0x183154){return _0x183154();},'unFIH':function(_0x8b482a,_0x4de0d8,_0x6c31b8){return _0x8b482a(_0x4de0d8,_0x6c31b8);},'jTchD':'GET'},_0x42e351=_0x1e9a37[_0xa5c177(0x200)](getApiBaseUrl),_0x1db362={'Content-Type':_0xa5c177(0x236),'workos-token':_0x18a06b},_0x210262=await fetchUserProfile(_0x18a06b),_0x28b08c=_0x210262?.[_0xa5c177(0x219)]||_0x210262?.['email']?.[_0xa5c177(0x235)]('@')[0x0],_0x566a27=_0x28b08c?_0x28b08c+_0xa5c177(0x214):'CLI\x20Key';let _0xf1e307=[];try{const _0x3fda33=await _0x1e9a37['unFIH'](fetch,_0x42e351+'/api-keys',{'method':_0x1e9a37['jTchD'],'headers':_0x1db362});if(_0x3fda33['ok']){const _0x412ef3=await _0x3fda33[_0xa5c177(0x20a)]();_0xf1e307=_0x412ef3['apiKeys'];}}catch{}const _0x3068f3=buildKeyName(_0x566a27,_0xf1e307),_0x341b03=await _0x1e9a37['unFIH'](fetch,_0x42e351+_0xa5c177(0x220),{'method':_0xa5c177(0x223),'headers':_0x1db362,'body':JSON['stringify']({'name':_0x3068f3,'scope':_0xa5c177(0x237)})});if(!_0x341b03['ok']){const _0x30379c=await _0x341b03['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x341b03['status']+'\x20'+_0x30379c);}const _0x31618d=await _0x341b03['json']();return _0x31618d['apiKey']['token'];}export function openBrowser(_0x4ccabf){const _0x34c9c1=_0x919fda,_0x56ed2e={'nVydg':function(_0x17f165,_0x4a3c77){return _0x17f165===_0x4a3c77;},'VZfKO':_0x34c9c1(0x1fc),'WnEZc':'open','hXmwA':_0x34c9c1(0x22f),'igygZ':function(_0xeab00d,_0x86c481,_0x4a2276,_0x4f833a){return _0xeab00d(_0x86c481,_0x4a2276,_0x4f833a);},'JelDs':'ignore'};try{if(_0x56ed2e['nVydg'](process['platform'],_0x56ed2e['VZfKO'])){const _0xf2fda8=spawn('cmd',['/c',_0x34c9c1(0x210),'',_0x4ccabf],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0xf2fda8['unref']();return;}const _0x635adf=_0x56ed2e[_0x34c9c1(0x23a)](process[_0x34c9c1(0x205)],_0x34c9c1(0x217))?_0x56ed2e[_0x34c9c1(0x1fb)]:_0x56ed2e['hXmwA'],_0x1e6be5=_0x56ed2e[_0x34c9c1(0x1f5)](spawn,_0x635adf,[_0x4ccabf],{'detached':!![],'stdio':_0x56ed2e['JelDs']});_0x1e6be5['unref']();}catch{}}function decodeJwtPayload(_0x3192be){const _0x10e0a7=_0x919fda,_0x51c500={'JCycZ':_0x10e0a7(0x23e),'ewQZx':'base64url'},_0x101863=_0x3192be[_0x10e0a7(0x235)]('.');if(_0x101863[_0x10e0a7(0x211)]!==0x3)throw new Error(_0x51c500[_0x10e0a7(0x22b)]);const _0x5a564f=Buffer[_0x10e0a7(0x21f)](_0x101863[0x1],_0x51c500[_0x10e0a7(0x239)])['toString']('utf-8');return JSON[_0x10e0a7(0x201)](_0x5a564f);}async function selfServeSignup(_0x117f20){const _0xa12592=_0x919fda,_0x1599c8={'wDubH':function(_0x222139){return _0x222139();},'jzdQQ':function(_0x32fde5,_0x1edc3b,_0x32742d){return _0x32fde5(_0x1edc3b,_0x32742d);},'MSaGP':'POST','sLDBx':'application/json'},_0x516eed=_0x1599c8[_0xa12592(0x222)](getApiBaseUrl),_0x4f6d60=await _0x1599c8['jzdQQ'](fetch,_0x516eed+_0xa12592(0x230),{'method':_0x1599c8['MSaGP'],'headers':{'Content-Type':_0x1599c8[_0xa12592(0x234)],'workos-token':_0x117f20}});if(!_0x4f6d60['ok']){const _0x3bf159=await _0x4f6d60[_0xa12592(0x1fd)]();throw new Error(_0xa12592(0x221)+_0x4f6d60[_0xa12592(0x21d)]+'\x20'+_0x3bf159);}return _0x4f6d60[_0xa12592(0x20a)]();}function _0x36da(_0x1d6049,_0x2978bc){_0x1d6049=_0x1d6049-0x1f0;const _0x51732e=_0x5173();let _0x36da8e=_0x51732e[_0x1d6049];return _0x36da8e;}async function fetchMyMemberships(_0x5a2a76){const _0x474694=_0x919fda,_0x259d12={'adtky':function(_0x53c5df){return _0x53c5df();},'IbxMx':function(_0x172570,_0x1da2b2,_0x2c01fa){return _0x172570(_0x1da2b2,_0x2c01fa);},'IYylH':'GET'},_0x44d925=_0x259d12['adtky'](getApiBaseUrl),_0x50a98d=await _0x259d12['IbxMx'](fetch,_0x44d925+'/organization/my-memberships',{'method':_0x259d12['IYylH'],'headers':{'workos-token':_0x5a2a76}});if(!_0x50a98d['ok']){const _0x17a130=await _0x50a98d[_0x474694(0x1fd)]();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x50a98d['status']+'\x20'+_0x17a130);}const _0x5d5329=await _0x50a98d[_0x474694(0x20a)]();return _0x5d5329[_0x474694(0x218)];}async function refreshTokenWithOrg(_0x15e7e7,_0x240369,_0xf8a503){const _0xc141a5=_0x919fda,_0x5cc104={'fUezT':function(_0x10fd81,_0x2470cc,_0x3f9af5){return _0x10fd81(_0x2470cc,_0x3f9af5);},'vaGZE':_0xc141a5(0x215)},_0xc13f81=await _0x5cc104[_0xc141a5(0x21c)](fetch,WORKOS_TOKEN_URL,{'method':_0xc141a5(0x223),'headers':{'Content-Type':_0xc141a5(0x1f8)},'body':new URLSearchParams({'client_id':_0x15e7e7,'grant_type':_0x5cc104[_0xc141a5(0x1f0)],'refresh_token':_0x240369,'organization_id':_0xf8a503})});if(!_0xc13f81['ok']){const _0x15e839=await _0xc13f81[_0xc141a5(0x1fd)]();throw new Error(_0xc141a5(0x20d)+_0xc13f81['status']+'\x20'+_0x15e839);}return _0xc13f81[_0xc141a5(0x20a)]();}function _0x5173(){const _0x4af5ee=['OAgOx','xIRTJ','stdin','Invalid\x20JWT\x20format','error_description','4gifgKU','Using\x20organization:\x20','write','log','iTzMn','vaGZE','7914112nefcUx','mpffi','MkWlD','Code:\x20','igygZ','authorization_pending','name','application/x-www-form-urlencoded','vOipC','Failed\x20to\x20request\x20device\x20code:\x20','WnEZc','win32','text','isTTY','86834OtFnfE','bLqmD','parse','iUAip','org_id','ZKTSW','platform','token','4217485IJKrxb','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','error','json','prompt','verification_uri_complete','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','tWrKf','start','length','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','CVfQq','\x27s\x20CLI\x20Key','refresh_token','https://api.workos.com/user_management/authenticate','darwin','memberships','firstName','34161160eGxvvg','XFatz','fUezT','status','/cli-auth/token','from','/api-keys','Failed\x20to\x20create\x20organization:\x20','wDubH','POST','interval','device_code','stdout','slow_down','7gfpofq','Waiting\x20for\x20authentication...','leycp','JCycZ','217854NduBvy','381237AgNoXQ','filter','xdg-open','/organization/self-serve-signup','12RmTzjN','8337510KspTjl','RpfLs','sLDBx','split','application/json','mcp:write','access_token','ewQZx','nVydg'];_0x5173=function(){return _0x4af5ee;};return _0x5173();}async function provisionCliToken(_0x24d526){const _0x2454f6=_0x919fda,_0x42b536={'zaUSK':function(_0x38f884,_0x1276f1,_0x4f4db8){return _0x38f884(_0x1276f1,_0x4f4db8);}},_0x2974c6=getApiBaseUrl(),_0x31db8d=await _0x42b536['zaUSK'](fetch,_0x2974c6+_0x2454f6(0x21e),{'method':_0x2454f6(0x223),'headers':{'Content-Type':_0x2454f6(0x236),'workos-token':_0x24d526}});if(!_0x31db8d['ok']){const _0x5c313c=await _0x31db8d['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x31db8d[_0x2454f6(0x21d)]+'\x20'+_0x5c313c);}return _0x31db8d['json']();}export async function runDeviceAuthFlow(){const _0x5e475c=_0x919fda,_0x3e16c1={'iTzMn':function(_0x2e4444,_0x4fa2af){return _0x2e4444(_0x4fa2af);},'XFatz':_0x5e475c(0x229),'xQwCS':function(_0x504f72,_0x53522d,_0x4cddbe,_0x4dfe50,_0x4649e0){return _0x504f72(_0x53522d,_0x4cddbe,_0x4dfe50,_0x4649e0);},'sLYQG':function(_0x5a7dbe,_0x2eac3b){return _0x5a7dbe===_0x2eac3b;},'RpfLs':function(_0x536c9b,_0x210cb3){return _0x536c9b(_0x210cb3);},'CVfQq':function(_0x2ee43a,_0x3fb989){return _0x2ee43a===_0x3fb989;},'sfBEv':function(_0x6539df,_0x2ce303){return _0x6539df+_0x2ce303;},'ZKTSW':'list','xQIsC':'Select\x20an\x20organization:','tWrKf':function(_0x530b21,_0x2b9272,_0x56d329,_0x5e4d30){return _0x530b21(_0x2b9272,_0x56d329,_0x5e4d30);},'JOZjd':'Provisioning\x20CLI\x20token...','xBCOw':function(_0x5ce23b,_0x552f1f){return _0x5ce23b(_0x552f1f);}},_0x1f53f5=getCurrentEnvironment(),_0x502831=ENVIRONMENT_CONFIGS[_0x1f53f5]['workosClientId'],_0x2013ee=await requestDeviceCode(_0x502831);console[_0x5e475c(0x243)]('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console[_0x5e475c(0x243)](_0x5e475c(0x208)),_0x3e16c1[_0x5e475c(0x244)](openBrowser,_0x2013ee[_0x5e475c(0x20c)]),console[_0x5e475c(0x243)](_0x5e475c(0x20e)+_0x2013ee['verification_uri_complete']),console['log'](_0x5e475c(0x1f4)+_0x2013ee['user_code']+'\x0a'),process[_0x5e475c(0x226)]['write'](_0x3e16c1[_0x5e475c(0x21b)]);let _0x36b671=await _0x3e16c1['xQwCS'](pollForTokens,_0x502831,_0x2013ee[_0x5e475c(0x225)],_0x2013ee[_0x5e475c(0x224)],_0x2013ee['expires_in']);console['log']('\x20✓');const _0x35faf2=decodeJwtPayload(_0x36b671['access_token']);if(!_0x35faf2[_0x5e475c(0x203)]){const _0x3770f3=await fetchMyMemberships(_0x36b671['access_token']);let _0x3205d3;if(_0x3e16c1['sLYQG'](_0x3770f3[_0x5e475c(0x211)],0x0)){process[_0x5e475c(0x226)][_0x5e475c(0x242)]('Setting\x20up\x20your\x20organization...');const _0x20e98d=await _0x3e16c1['RpfLs'](selfServeSignup,_0x36b671[_0x5e475c(0x238)]);_0x3205d3=_0x20e98d['organizationId'],console[_0x5e475c(0x243)]('\x20✓');}else{if(_0x3e16c1[_0x5e475c(0x213)](_0x3770f3[_0x5e475c(0x211)],0x1))_0x3205d3=_0x3770f3[0x0]['organizationId'],console['log'](_0x5e475c(0x241)+_0x3770f3[0x0][_0x5e475c(0x1f7)]);else{const _0x1258bc=process[_0x5e475c(0x23d)]['isTTY']&&process['stdout'][_0x5e475c(0x1fe)];if(!_0x1258bc)throw new Error(_0x3e16c1['sfBEv']('Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a',_0x5e475c(0x212)));const {selected:_0x28806a}=await _0xd17246[_0x5e475c(0x20b)]([{'type':_0x3e16c1[_0x5e475c(0x204)],'name':'selected','message':_0x3e16c1['xQIsC'],'choices':_0x3770f3['map'](_0x1fc1aa=>({'name':_0x1fc1aa['name'],'value':_0x1fc1aa['organizationId']}))}]);_0x3205d3=_0x28806a;}}_0x36b671=await _0x3e16c1[_0x5e475c(0x20f)](refreshTokenWithOrg,_0x502831,_0x36b671[_0x5e475c(0x215)],_0x3205d3);}process[_0x5e475c(0x226)][_0x5e475c(0x242)](_0x3e16c1['JOZjd']);const _0x4507e8=await _0x3e16c1[_0x5e475c(0x233)](provisionCliToken,_0x36b671[_0x5e475c(0x238)]);return console[_0x5e475c(0x243)]('\x20✓'),await storeToken(_0x4507e8[_0x5e475c(0x206)]),_0x36b671['refresh_token']&&await _0x3e16c1['xBCOw'](storeRefreshToken,_0x36b671['refresh_token']),_0x4507e8['token'];}function sleep(_0x18777b){return new Promise(_0x4f9caa=>setTimeout(_0x4f9caa,_0x18777b));}
@@ -1 +1 @@
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
+ const _0x19be72=_0x4184;function _0xd888(){const _0x5e66a9=['YrrQF','https://ai-proxy-716115358910.us-central1.run.app','kQKtw','staging','error','pBxkW','Invalid\x20RANGER_TRANSPORT=\x22','RANGER_DISABLE_MCP','rangerwright-cli','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','576261pMcFzl','wpeyU','RANGER_TRANSPORT','204696ZovzML','SqteU','445608LUJciL','8AOtQCY','aiProxyUrl','44osWGzE','auto','https://api.staging.ranger.net','mcpAuthUrl','find','rigJK','true','7179Uqpkom','mcp','http://localhost:8080/mcp','env','JhkFz','1520876jFNeBY','600390xSVvAQ','RANGER_HOOKS','apiBaseUrl','180oHFstW','RANGER_USE_NOVA_ACT','45138xuhmRo','https://api.ranger.net','local','1aGBWGS','http://localhost:8080','client_01J9CBYM2DKWV9HM17D95Z540K','125AzOjuJ'];_0xd888=function(){return _0x5e66a9;};return _0xd888();}(function(_0x3a74a1,_0x354e12){const _0x4bd1b6=_0x4184,_0x53619b=_0x3a74a1();while(!![]){try{const _0x570055=-parseInt(_0x4bd1b6(0x86))/0x1*(parseInt(_0x4bd1b6(0x99))/0x2)+parseInt(_0x4bd1b6(0x78))/0x3*(-parseInt(_0x4bd1b6(0x81))/0x4)+-parseInt(_0x4bd1b6(0x89))/0x5*(-parseInt(_0x4bd1b6(0x83))/0x6)+parseInt(_0x4bd1b6(0x7d))/0x7*(parseInt(_0x4bd1b6(0x9a))/0x8)+parseInt(_0x4bd1b6(0x94))/0x9+parseInt(_0x4bd1b6(0x7e))/0xa+-parseInt(_0x4bd1b6(0x9c))/0xb*(parseInt(_0x4bd1b6(0x97))/0xc);if(_0x570055===_0x354e12)break;else _0x53619b['push'](_0x53619b['shift']());}catch(_0x11cf62){_0x53619b['push'](_0x53619b['shift']());}}}(_0xd888,0x1fe82));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x19be72(0x84),'workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':_0x19be72(0x8b),'mcpAuthUrl':'https://mcp-auth.ranger.net/mcp'},'staging':{'apiBaseUrl':_0x19be72(0x9e),'workosClientId':_0x19be72(0x88),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x19be72(0x87),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':_0x19be72(0x7a)}};export const DEFAULT_ENVIRONMENT='prod';export function isValidEnvironment(_0x11b2b9){const _0x458858=_0x19be72,_0x604ff7={'oxURw':function(_0x26a27d,_0x2e1523){return _0x26a27d===_0x2e1523;},'rigJK':'prod','FfgjK':_0x458858(0x8d),'wpeyU':_0x458858(0x85)};return _0x604ff7['oxURw'](_0x11b2b9,_0x604ff7[_0x458858(0xa1)])||_0x604ff7['oxURw'](_0x11b2b9,_0x604ff7['FfgjK'])||_0x11b2b9===_0x604ff7[_0x458858(0x95)];}export function getCurrentEnvironment(){const _0xdf30fa=_0x19be72,_0x23d4e2={'YrrQF':function(_0x530256,_0x3c6fd3){return _0x530256(_0x3c6fd3);}},_0x4aba56=process[_0xdf30fa(0x7b)]['RANGER_CLI_ENV'];if(_0x4aba56&&_0x23d4e2[_0xdf30fa(0x8a)](isValidEnvironment,_0x4aba56))return _0x4aba56;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x1b5833=_0x19be72;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x1b5833(0x80)];}export function getAiProxyUrl(){const _0x2f516b=_0x19be72;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x2f516b(0x9b)];}export function getMcpAuthUrl(){const _0xea0931=_0x19be72;return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0xea0931(0x9f)];}export function isByokEnabled(){const _0x165301=_0x19be72,_0x462870={'kQKtw':_0x165301(0x77)};return process['env']['RANGER_BYOK']===_0x462870[_0x165301(0x8c)];}function isVerificationTransport(_0x431230){const _0x2747b6=_0x19be72,_0x3d8a26={'pBxkW':_0x2747b6(0x79),'jxxYA':function(_0xc3e164,_0x11adb7){return _0xc3e164===_0x11adb7;},'dYgYE':'playwright-cli','uqBti':'nova-act-cli','SqteU':function(_0x119912,_0x5ae27e){return _0x119912===_0x5ae27e;},'JhkFz':_0x2747b6(0x92)};return _0x431230===_0x3d8a26[_0x2747b6(0x8f)]||_0x3d8a26['jxxYA'](_0x431230,_0x3d8a26['dYgYE'])||_0x3d8a26['jxxYA'](_0x431230,_0x3d8a26['uqBti'])||_0x3d8a26[_0x2747b6(0x98)](_0x431230,_0x3d8a26[_0x2747b6(0x7c)]);}const LEGACY_TRANSPORT_ENV_VARS=[_0x19be72(0x82),_0x19be72(0x91)];export function getVerificationTransport(){const _0x34f660=_0x19be72,_0x4c1a6e=process['env'][_0x34f660(0x96)]?.['trim']();if(_0x4c1a6e){if(isVerificationTransport(_0x4c1a6e))return _0x4c1a6e;throw new Error(_0x34f660(0x90)+_0x4c1a6e+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x4dc484=LEGACY_TRANSPORT_ENV_VARS[_0x34f660(0xa0)](_0x24925e=>process[_0x34f660(0x7b)][_0x24925e]);if(_0x4dc484)throw new Error(_0x4dc484+_0x34f660(0x93));return'mcp';}function _0x4184(_0x2b4a89,_0x1f4720){_0x2b4a89=_0x2b4a89-0x77;const _0xd8886b=_0xd888();let _0x418439=_0xd8886b[_0x2b4a89];return _0x418439;}export function resolveHookMode(_0x208b51=process[_0x19be72(0x7b)]){const _0x544a2d=_0x19be72,_0x236494={'GnWpM':function(_0x3e31c3,_0x39ed13){return _0x3e31c3===_0x39ed13;}},_0x1b6b95=_0x208b51['RANGER_HOOKS']?.['trim']()['toLowerCase']();if(!_0x1b6b95)return _0x544a2d(0x9d);if(_0x1b6b95==='off'||_0x236494['GnWpM'](_0x1b6b95,'on')||_0x1b6b95==='auto')return _0x1b6b95;return console[_0x544a2d(0x8e)]('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x208b51[_0x544a2d(0x7f)]+'\x22.\x20'+'Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.'),'auto';}
@@ -1 +1 @@
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();}
1
+ (function(_0x774224,_0x418f6c){const _0x2dfb8b=_0x42ef,_0x449cf7=_0x774224();while(!![]){try{const _0x4de8a6=parseInt(_0x2dfb8b(0x12f))/0x1+-parseInt(_0x2dfb8b(0x119))/0x2+parseInt(_0x2dfb8b(0x13d))/0x3+parseInt(_0x2dfb8b(0x141))/0x4+-parseInt(_0x2dfb8b(0x124))/0x5+-parseInt(_0x2dfb8b(0x143))/0x6*(-parseInt(_0x2dfb8b(0x10c))/0x7)+-parseInt(_0x2dfb8b(0x115))/0x8*(parseInt(_0x2dfb8b(0x11a))/0x9);if(_0x4de8a6===_0x418f6c)break;else _0x449cf7['push'](_0x449cf7['shift']());}catch(_0x318e04){_0x449cf7['push'](_0x449cf7['shift']());}}}(_0x4626,0xc56b2));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';function _0x4626(){const _0x24166d=['8vCGWBV','HxTfu','dZORJ','style','772520ObYxXT','6187608bJDkIM','Failed\x20to\x20list\x20feature\x20reviews:\x20','WpsBQ','/report/markdown','YFusM','/sessions/','GET','join','UlIvl','CHWrH','4824285KHEEPg','aJrhR','pZsiw','https://dashboard.ranger.net/billing','Failed\x20to\x20start\x20session:\x20','limit','/api/v1/mcp/features','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','eLgJH','offset','gitBranch','91877fyNYGT','PnVNz','billingUrl','/checklist/','sessionId','/report','Failed\x20to\x20get\x20item\x20feedback:\x20','/sessions','\x0a\x0aUpgrade\x20your\x20plan:\x20','includeDeleted','text','Failed\x20to\x20update\x20feature\x20review:\x20','stringify','zzvJe','681600cKJfwM','itemIds','uBDLx','Fyire','4282140kKwozF','length','8745858pMEcDn','application/json','hXqFF','NyotR','zjAbx','json','dprIb','set','HuRRL','POST','Qlwgd','CQaoO','Bearer\x20','dIQiY','gitRepoUrl','toString','/start','TVjfN','GBzti','/api/v1/mcp/features/','/checklist-items/','7LbYiiS','IwqMK','/checklist','true','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','Failed\x20to\x20conclude\x20session:\x20','/conclude','/restore','FuejX'];_0x4626=function(){return _0x24166d;};return _0x4626();}export async function createFeature(_0x15f58c){const _0x17dc9f=_0x42ef,_0x555bd4={'wzFby':function(_0x55fbe1){return _0x55fbe1();},'zzvJe':function(_0x328a58,_0x29d0c3,_0x31415b){return _0x328a58(_0x29d0c3,_0x31415b);},'QvLMR':_0x17dc9f(0x100),'FuejX':_0x17dc9f(0x144),'MHbxe':function(_0xae946b,_0x1d8445){return _0xae946b===_0x1d8445;},'LdYfy':_0x17dc9f(0x127),'hWnKV':'Feature\x20limit\x20exceeded'},_0x1ffd58=await getToken();if(!_0x1ffd58)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4c900c=_0x555bd4['wzFby'](getApiBaseUrl),_0x1a236c=await _0x555bd4[_0x17dc9f(0x13c)](fetch,_0x4c900c+'/api/v1/mcp/features',{'method':_0x555bd4['QvLMR'],'headers':{'Authorization':_0x17dc9f(0x103)+_0x1ffd58,'Content-Type':_0x555bd4[_0x17dc9f(0x114)]},'body':JSON['stringify'](_0x15f58c)});if(!_0x1a236c['ok']){if(_0x555bd4['MHbxe'](_0x1a236c['status'],0x192)){const _0x27eb7b=await _0x1a236c[_0x17dc9f(0xfc)](),_0x124e64=_0x27eb7b[_0x17dc9f(0x131)]||_0x555bd4['LdYfy'];throw new Error((_0x27eb7b['message']||_0x555bd4['hWnKV'])+_0x17dc9f(0x137)+_0x124e64);}const _0x1dfe66=await _0x1a236c[_0x17dc9f(0x139)]();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x1dfe66);}return _0x1a236c['json']();}export async function listFeatures(_0x42715a){const _0x34d7b3=_0x42ef,_0x3d6216={'TVjfN':function(_0x407ea4){return _0x407ea4();},'coApc':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','uBDLx':'gitRepoUrl','GBzti':_0x34d7b3(0x129),'eLgJH':_0x34d7b3(0x12d),'IwqMK':_0x34d7b3(0x138),'GIkXA':_0x34d7b3(0x10f)},_0x37abf1=await _0x3d6216[_0x34d7b3(0x108)](getToken);if(!_0x37abf1)throw new Error(_0x3d6216['coApc']);const _0x44d7d4=getApiBaseUrl(),_0x22e1d4=new URLSearchParams();if(_0x42715a?.[_0x34d7b3(0x105)])_0x22e1d4[_0x34d7b3(0xfe)](_0x3d6216[_0x34d7b3(0x13f)],_0x42715a[_0x34d7b3(0x105)]);if(_0x42715a?.[_0x34d7b3(0x12e)])_0x22e1d4[_0x34d7b3(0xfe)](_0x34d7b3(0x12e),_0x42715a[_0x34d7b3(0x12e)]);if(_0x42715a?.[_0x34d7b3(0x129)])_0x22e1d4['set'](_0x3d6216[_0x34d7b3(0x109)],_0x42715a[_0x34d7b3(0x129)]['toString']());if(_0x42715a?.['offset'])_0x22e1d4[_0x34d7b3(0xfe)](_0x3d6216[_0x34d7b3(0x12c)],_0x42715a['offset']['toString']());if(_0x42715a?.['includeDeleted'])_0x22e1d4[_0x34d7b3(0xfe)](_0x3d6216[_0x34d7b3(0x10d)],_0x3d6216['GIkXA']);const _0x5c9854=_0x44d7d4+_0x34d7b3(0x12a)+(_0x22e1d4['toString']()?'?'+_0x22e1d4['toString']():''),_0x5e59c4=await fetch(_0x5c9854,{'method':'GET','headers':{'Authorization':_0x34d7b3(0x103)+_0x37abf1}});if(!_0x5e59c4['ok']){const _0x452ef4=await _0x5e59c4['text']();throw new Error(_0x34d7b3(0x11b)+_0x452ef4);}return _0x5e59c4[_0x34d7b3(0xfc)]();}export async function getFeature(_0x476919){const _0x523dec=_0x42ef,_0x2b4563={'vsUHN':function(_0x3eb740){return _0x3eb740();},'HxTfu':_0x523dec(0x12b),'gDBZV':'GET'},_0x329565=await _0x2b4563['vsUHN'](getToken);if(!_0x329565)throw new Error(_0x2b4563[_0x523dec(0x116)]);const _0x21c3ee=getApiBaseUrl(),_0x1fd761=await fetch(_0x21c3ee+'/api/v1/mcp/features/'+_0x476919,{'method':_0x2b4563['gDBZV'],'headers':{'Authorization':_0x523dec(0x103)+_0x329565}});if(!_0x1fd761['ok']){const _0x509b9e=await _0x1fd761[_0x523dec(0x139)]();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x509b9e);}return _0x1fd761[_0x523dec(0xfc)]();}export async function updateFeature(_0x5b8e30,_0x3aa1ef){const _0x33d241=_0x42ef,_0x4187b6={'PnVNz':function(_0x2706fe,_0x32fc80,_0x11de45){return _0x2706fe(_0x32fc80,_0x11de45);},'Qigxc':'PATCH'},_0x104b8a=await getToken();if(!_0x104b8a)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x46ba34=getApiBaseUrl(),_0xa7769b=await _0x4187b6[_0x33d241(0x130)](fetch,_0x46ba34+'/api/v1/mcp/features/'+_0x5b8e30,{'method':_0x4187b6['Qigxc'],'headers':{'Authorization':'Bearer\x20'+_0x104b8a,'Content-Type':_0x33d241(0x144)},'body':JSON['stringify'](_0x3aa1ef)});if(!_0xa7769b['ok']){const _0x3d06c9=await _0xa7769b['text']();throw new Error(_0x33d241(0x13a)+_0x3d06c9);}return _0xa7769b[_0x33d241(0xfc)]();}export async function createChecklistItem(_0x9c9df4,_0x8e4ec8,_0x1b9053){const _0x249596=_0x42ef,_0x30aca7={'gKZJB':function(_0x576593){return _0x576593();},'nNpWw':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','OJVxB':function(_0x2df569,_0x299e61,_0xa08818){return _0x2df569(_0x299e61,_0xa08818);},'ggEsc':'POST'},_0x20c64e=await _0x30aca7['gKZJB'](getToken);if(!_0x20c64e)throw new Error(_0x30aca7['nNpWw']);const _0x575401=getApiBaseUrl(),_0xa44c45=await _0x30aca7['OJVxB'](fetch,_0x575401+'/api/v1/mcp/features/'+_0x9c9df4+_0x249596(0x10e),{'method':_0x30aca7['ggEsc'],'headers':{'Authorization':_0x249596(0x103)+_0x20c64e,'Content-Type':'application/json'},'body':JSON['stringify']({'description':_0x8e4ec8,'position':_0x1b9053})});if(!_0xa44c45['ok']){const _0x1f6e0d=await _0xa44c45[_0x249596(0x139)]();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x1f6e0d);}return _0xa44c45['json']();}export async function updateChecklistItem(_0x2ee2b2,_0x4392ab,_0x3dadf5){const _0x4277d0={'bowiz':function(_0x1eecb8){return _0x1eecb8();},'YFusM':'application/json'};return withRetry(async()=>{const _0x836f4=_0x42ef,_0x5543e7=await getToken();if(!_0x5543e7)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x59b591=_0x4277d0['bowiz'](getApiBaseUrl),_0x171600=await fetch(_0x59b591+_0x836f4(0x10a)+_0x2ee2b2+_0x836f4(0x132)+_0x4392ab,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x5543e7,'Content-Type':_0x4277d0[_0x836f4(0x11e)]},'body':JSON[_0x836f4(0x13b)](_0x3dadf5)});if(!_0x171600['ok']){const _0x5131bd=await _0x171600['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x5131bd);}return _0x171600[_0x836f4(0xfc)]();},{'label':'updateChecklistItem'});}export async function getFeatureReport(_0x5b77b1){const _0x90be42=_0x42ef,_0x678d8d={'dZORJ':function(_0x228b21){return _0x228b21();},'nwPUX':function(_0x104eba,_0x235bab,_0x348578){return _0x104eba(_0x235bab,_0x348578);}},_0x5b48c5=await getToken();if(!_0x5b48c5)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4c6e1a=_0x678d8d[_0x90be42(0x117)](getApiBaseUrl),_0x16b0a3=await _0x678d8d['nwPUX'](fetch,_0x4c6e1a+'/api/v1/mcp/features/'+_0x5b77b1+_0x90be42(0x134),{'method':_0x90be42(0x120),'headers':{'Authorization':_0x90be42(0x103)+_0x5b48c5}});if(!_0x16b0a3['ok']){const _0x49e4ea=await _0x16b0a3['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x49e4ea);}return _0x16b0a3[_0x90be42(0xfc)]();}export async function getFeatureReportMarkdown(_0x2e6c17,_0x26d10a){const _0x392b15=_0x42ef,_0xbe4fe1={'Qlwgd':function(_0x411d91){return _0x411d91();},'NKPLY':function(_0x3ff823,_0x1d0d1e){return _0x3ff823>_0x1d0d1e;},'aJrhR':function(_0x135f0e,_0x2d3983){return _0x135f0e(_0x2d3983);},'zjAbx':_0x392b15(0x13e),'CHWrH':_0x392b15(0x118),'pZsiw':'GET'},_0x4bb1f0=await getToken();if(!_0x4bb1f0)throw new Error(_0x392b15(0x12b));const _0x4fd5ae=_0xbe4fe1[_0x392b15(0x101)](getApiBaseUrl),_0x300575=new URLSearchParams(),_0x2ee696=_0xbe4fe1['NKPLY'](_0x26d10a?.['itemIds']?.[_0x392b15(0x142)]??0x0,0x0),_0xda7c2f=_0xbe4fe1[_0x392b15(0x125)](Boolean,_0x26d10a?.['sessionId']);_0x2ee696&&_0x26d10a?.[_0x392b15(0x13e)]&&_0x300575[_0x392b15(0xfe)](_0xbe4fe1[_0x392b15(0x147)],_0x26d10a[_0x392b15(0x13e)][_0x392b15(0x121)](','));_0xda7c2f&&_0x26d10a?.[_0x392b15(0x133)]&&_0x300575['set']('sessionId',_0x26d10a['sessionId']);!_0x2ee696&&!_0xda7c2f&&_0x26d10a?.[_0x392b15(0x118)]&&_0x300575['set'](_0xbe4fe1[_0x392b15(0x123)],_0x26d10a[_0x392b15(0x118)]);const _0x5aaaaf=_0x4fd5ae+_0x392b15(0x10a)+_0x2e6c17+_0x392b15(0x11d),_0x3d91be=''+_0x5aaaaf+(_0x300575['toString']()?'?'+_0x300575[_0x392b15(0x106)]():''),_0x39e513=await fetch(_0x3d91be,{'method':_0xbe4fe1[_0x392b15(0x126)],'headers':{'Authorization':_0x392b15(0x103)+_0x4bb1f0}});if(!_0x39e513['ok']){const _0x1e9b56=await _0x39e513[_0x392b15(0x139)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x1e9b56);}return _0x39e513[_0x392b15(0x139)]();}export async function listFeatureSessions(_0x24ea20){const _0x7e591=_0x42ef,_0x9b3ed={'LFXCV':function(_0xcf76c2){return _0xcf76c2();},'hXqFF':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0xf7ae06=await _0x9b3ed['LFXCV'](getToken);if(!_0xf7ae06)throw new Error(_0x9b3ed[_0x7e591(0x145)]);const _0x52b767=_0x9b3ed['LFXCV'](getApiBaseUrl),_0x821dd9=await fetch(_0x52b767+_0x7e591(0x10a)+_0x24ea20+_0x7e591(0x136),{'method':'GET','headers':{'Authorization':_0x7e591(0x103)+_0xf7ae06}});if(!_0x821dd9['ok']){const _0x4d686f=await _0x821dd9[_0x7e591(0x139)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x4d686f);}return _0x821dd9[_0x7e591(0xfc)]();}export async function startSession(_0x37579c,_0xf3c14b){const _0x57826a=_0x42ef,_0x5f0f58={'NyotR':_0x57826a(0x12b),'Fyire':function(_0x3fee7c,_0x56038c,_0x1132e2){return _0x3fee7c(_0x56038c,_0x1132e2);}},_0x1b5727=await getToken();if(!_0x1b5727)throw new Error(_0x5f0f58[_0x57826a(0x146)]);const _0x5b5a7a=getApiBaseUrl(),_0x3aa914=await _0x5f0f58[_0x57826a(0x140)](fetch,_0x5b5a7a+'/api/v1/mcp/features/'+_0x37579c+_0x57826a(0x11f)+_0xf3c14b+_0x57826a(0x107),{'method':_0x57826a(0x100),'headers':{'Authorization':_0x57826a(0x103)+_0x1b5727}});if(!_0x3aa914['ok']){const _0x479e3b=await _0x3aa914[_0x57826a(0x139)]();throw new Error(_0x57826a(0x128)+_0x479e3b);}return _0x3aa914['json']();}export async function concludeSession(_0x150544,_0x27bb1c){const _0x4551ad=_0x42ef,_0x1a4faa={'UlIvl':_0x4551ad(0x12b),'dprIb':function(_0x12878d){return _0x12878d();},'cSOHX':function(_0x560689,_0xa99048,_0x7344d0){return _0x560689(_0xa99048,_0x7344d0);}},_0x35a41a=await getToken();if(!_0x35a41a)throw new Error(_0x1a4faa[_0x4551ad(0x122)]);const _0x7b9008=_0x1a4faa[_0x4551ad(0xfd)](getApiBaseUrl),_0x11354d=await _0x1a4faa['cSOHX'](fetch,_0x7b9008+_0x4551ad(0x10a)+_0x150544+'/sessions/'+_0x27bb1c+_0x4551ad(0x112),{'method':'POST','headers':{'Authorization':_0x4551ad(0x103)+_0x35a41a}});if(!_0x11354d['ok']){const _0x304f25=await _0x11354d['text']();throw new Error(_0x4551ad(0x111)+_0x304f25);}return _0x11354d['json']();}export async function getActionItems(_0x2f6507){const _0x1495c0=_0x42ef,_0x13d30f={'HuRRL':function(_0x267cc5,_0xde5473,_0x11fae9){return _0x267cc5(_0xde5473,_0x11fae9);},'kMUMO':'GET'},_0x132a8e=await getToken();if(!_0x132a8e)throw new Error(_0x1495c0(0x12b));const _0x3da615=getApiBaseUrl(),_0x5147a4=await _0x13d30f[_0x1495c0(0xff)](fetch,_0x3da615+_0x1495c0(0x10a)+_0x2f6507+'/action-items',{'method':_0x13d30f['kMUMO'],'headers':{'Authorization':_0x1495c0(0x103)+_0x132a8e}});if(!_0x5147a4['ok']){const _0xbde0a8=await _0x5147a4['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0xbde0a8);}return _0x5147a4['json']();}export async function getItemFeedback(_0x4f124e,_0x269197){const _0x456938=_0x42ef,_0x14eadf={'VRdSq':function(_0x5baf2a){return _0x5baf2a();},'cDbfj':function(_0xf1a03f,_0x246b32,_0x278d89){return _0xf1a03f(_0x246b32,_0x278d89);}},_0x381ac0=await _0x14eadf['VRdSq'](getToken);if(!_0x381ac0)throw new Error(_0x456938(0x12b));const _0x10342d=getApiBaseUrl(),_0x415eb5=await _0x14eadf['cDbfj'](fetch,_0x10342d+_0x456938(0x10a)+_0x4f124e+_0x456938(0x10b)+_0x269197+'/feedback',{'method':_0x456938(0x120),'headers':{'Authorization':_0x456938(0x103)+_0x381ac0}});if(!_0x415eb5['ok']){const _0x17f93=await _0x415eb5['text']();throw new Error(_0x456938(0x135)+_0x17f93);}return _0x415eb5[_0x456938(0xfc)]();}function _0x42ef(_0x386e47,_0x111c65){_0x386e47=_0x386e47-0xfc;const _0x4626f8=_0x4626();let _0x42ef74=_0x4626f8[_0x386e47];return _0x42ef74;}export async function markCommentsAddressed(_0x31c337,_0x23768d,_0x135ffe){const _0x460492=_0x42ef,_0x312478={'moqRB':function(_0x2c0187){return _0x2c0187();},'CmtVl':function(_0x5dc068,_0x49edc8,_0x5decb3){return _0x5dc068(_0x49edc8,_0x5decb3);}},_0x493912=await _0x312478['moqRB'](getToken);if(!_0x493912)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xaa0a16=getApiBaseUrl(),_0x7806d6=await _0x312478['CmtVl'](fetch,_0xaa0a16+'/api/v1/mcp/features/'+_0x31c337+'/comments/address',{'method':_0x460492(0x100),'headers':{'Authorization':_0x460492(0x103)+_0x493912,'Content-Type':_0x460492(0x144)},'body':JSON[_0x460492(0x13b)]({'checklistItemId':_0x23768d,'commentIds':_0x135ffe})});if(!_0x7806d6['ok']){const _0x15686f=await _0x7806d6['text']();throw new Error(_0x460492(0x110)+_0x15686f);}}export async function softDeleteFeature(_0x30801a){const _0x957e09=_0x42ef,_0x5b558a={'CQaoO':'DELETE'},_0x285ee5=await getToken();if(!_0x285ee5)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x386588=getApiBaseUrl(),_0x45ac70=await fetch(_0x386588+_0x957e09(0x10a)+_0x30801a,{'method':_0x5b558a[_0x957e09(0x102)],'headers':{'Authorization':_0x957e09(0x103)+_0x285ee5}});if(!_0x45ac70['ok']){const _0x4bc551=await _0x45ac70[_0x957e09(0x139)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x4bc551);}}export async function restoreFeature(_0x5ae846){const _0x462f5b=_0x42ef,_0x2aac33={'WpsBQ':function(_0x3b6a33,_0xf03091,_0x231ab4){return _0x3b6a33(_0xf03091,_0x231ab4);},'dIQiY':_0x462f5b(0x100)},_0x2a6445=await getToken();if(!_0x2a6445)throw new Error(_0x462f5b(0x12b));const _0x12d542=getApiBaseUrl(),_0x619a68=await _0x2aac33[_0x462f5b(0x11c)](fetch,_0x12d542+_0x462f5b(0x10a)+_0x5ae846+_0x462f5b(0x113),{'method':_0x2aac33[_0x462f5b(0x104)],'headers':{'Authorization':'Bearer\x20'+_0x2a6445}});if(!_0x619a68['ok']){const _0x32f79a=await _0x619a68['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x32f79a);}}