@ranger-testing/ranger-cli 3.1.4-alpha.ffeeafe-46 → 3.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0xcb6e39,_0x1d39af){const _0x156924=_0x5e39,_0x82153c=_0xcb6e39();while(!![]){try{const _0x9dba55=-parseInt(_0x156924(0x8f))/0x1+parseInt(_0x156924(0xda))/0x2*(parseInt(_0x156924(0xb2))/0x3)+parseInt(_0x156924(0xbb))/0x4+-parseInt(_0x156924(0x11c))/0x5*(parseInt(_0x156924(0x88))/0x6)+-parseInt(_0x156924(0x70))/0x7+parseInt(_0x156924(0xb7))/0x8+parseInt(_0x156924(0x11a))/0x9*(-parseInt(_0x156924(0x12f))/0xa);if(_0x9dba55===_0x1d39af)break;else _0x82153c['push'](_0x82153c['shift']());}catch(_0x107296){_0x82153c['push'](_0x82153c['shift']());}}}(_0x4aa6,0x63d82));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0xa77b1d 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(_0x3db3ad){try{return new URL(_0x3db3ad)['host'];}catch{return'invalid-url';}}function errorMessageForTelemetry(_0x1a68cd){const _0x2d193d=_0x5e39;return _0x1a68cd instanceof Error?_0x1a68cd[_0x2d193d(0xd6)]:undefined;}function trackBridgeEvent(_0x22df12,_0x1fbbf7){const _0x4aa949=_0x5e39,_0x23b63f={'WMFOs':_0x4aa949(0xa5),'bUoIQ':function(_0x51b632,_0x532845){return _0x51b632===_0x532845;},'ouuCt':_0x4aa949(0x104)};if(!_0x22df12)return;const _0x4973df={'tunnelSessionId':_0x1fbbf7['sessionId'],'tunnelEventType':_0x1fbbf7['type'],'connectionId':_0x1fbbf7['connectionId'],'code':_0x1fbbf7['code'],'reason':_0x1fbbf7[_0x4aa949(0x10a)],'error':_0x1fbbf7['error'],'elapsedMs':_0x1fbbf7[_0x4aa949(0xbd)],'activeLocalConnections':_0x1fbbf7['activeLocalConnections'],'pendingLocalConnections':_0x1fbbf7[_0x4aa949(0x97)]};_0x22df12['trackPhaseEnd'](_0x23b63f['WMFOs'],_0x4973df),(_0x23b63f['bUoIQ'](_0x1fbbf7[_0x4aa949(0x11e)],_0x23b63f['ouuCt'])||_0x1fbbf7[_0x4aa949(0x11e)]==='local_ws_error')&&void _0x22df12[_0x4aa949(0x87)](_0x4aa949(0x85),new Error(_0x1fbbf7['error']??_0x1fbbf7[_0x4aa949(0x11e)]),_0x4973df);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x2e55d3=_0x5e39,_0x42e1b0={'ChDnc':_0x2e55d3(0xbe)},_0x403909=await getToken();if(!_0x403909)throw new Error(_0x42e1b0['ChDnc']);return _0x403909;}async function apiRequest(_0x5a647a,_0x2aac06={}){const _0x49db50=_0x5e39,_0x343b9a={'JLuNU':function(_0x219270){return _0x219270();},'SmTju':function(_0x18b1c8){return _0x18b1c8();},'qrzge':_0x49db50(0x71),'QrzlY':_0x49db50(0x89)},_0x64d018=await _0x343b9a[_0x49db50(0x6b)](requireToken),_0x429278=_0x343b9a[_0x49db50(0x11b)](getApiBaseUrl),_0x2256dd=await fetch(''+_0x429278+_0x5a647a,{..._0x2aac06,'headers':{'Authorization':'Bearer\x20'+_0x64d018,'Content-Type':_0x343b9a[_0x49db50(0x6d)],..._0x2aac06[_0x49db50(0xce)]??{}}});if(!_0x2256dd['ok']){let _0x580712='',_0x2a07b4;try{const _0x59d7d7=await _0x2256dd['json'](),_0x8b0b1b=(typeof _0x59d7d7['error']===_0x343b9a[_0x49db50(0x86)]?_0x59d7d7[_0x49db50(0xe1)]:undefined)??JSON['stringify'](_0x59d7d7);_0x580712=_0x8b0b1b;typeof _0x59d7d7['test_output']===_0x343b9a['QrzlY']&&_0x59d7d7['test_output']&&(_0x580712=_0x580712+'\x0a'+_0x59d7d7['test_output']);if(typeof _0x59d7d7[_0x49db50(0x78)]==='string')_0x2a07b4=_0x59d7d7[_0x49db50(0x78)];}catch{_0x580712=_0x2256dd['statusText'];}throw new ApiError('API\x20request\x20'+_0x5a647a+'\x20failed\x20('+_0x2256dd[_0x49db50(0xb5)]+'):\x20'+_0x580712,_0x2256dd[_0x49db50(0xb5)],_0x580712,_0x2a07b4);}if(_0x2256dd[_0x49db50(0xb5)]===0xcc)return undefined;return _0x2256dd['json']();}export class ApiError extends Error{['status'];['detail'];['code'];constructor(_0x3cb275,_0x1fc7a8,_0x1b6837,_0x17213f){const _0x4f4c23=_0x5e39,_0x290237={'wXPrU':'ApiError'};super(_0x3cb275),this[_0x4f4c23(0xb5)]=_0x1fc7a8,this['detail']=_0x1b6837,this['code']=_0x17213f,this[_0x4f4c23(0xae)]=_0x290237['wXPrU'];}}export async function fetchCloudProfile(_0xcad205){const _0x2ec4c5=_0x5e39,_0x505ae8={'PunrT':function(_0x86820,_0x5a8414){return _0x86820(_0x5a8414);},'ywuJK':function(_0x4b0214,_0x580485){return _0x4b0214 instanceof _0x580485;},'OvmGv':function(_0x1e4279,_0x3030bd){return _0x1e4279===_0x3030bd;}};try{return await _0x505ae8['PunrT'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0xcad205));}catch(_0xe85ba4){if(_0x505ae8['ywuJK'](_0xe85ba4,ApiError)&&_0x505ae8[_0x2ec4c5(0xcb)](_0xe85ba4[_0x2ec4c5(0xb5)],0x194))return null;throw _0xe85ba4;}}export async function listCloudProfiles(){const _0x17f9a9=_0x5e39,_0x18bcd0={'PDtBI':function(_0x2378c8,_0x4a5eb9){return _0x2378c8(_0x4a5eb9);}},_0x4a637e=await _0x18bcd0['PDtBI'](apiRequest,'/api/v1/profiles');return _0x4a637e[_0x17f9a9(0x93)];}export async function deleteCloudProfile(_0x97175){const _0x4fb4d3=_0x5e39,_0x4badf5={'JoDmT':_0x4fb4d3(0xfb),'GLQzB':function(_0x3b71b5,_0x789fae){return _0x3b71b5===_0x789fae;}};try{await apiRequest(_0x4fb4d3(0x105)+encodeURIComponent(_0x97175),{'method':_0x4badf5['JoDmT']});}catch(_0x3ef29b){if(_0x3ef29b instanceof ApiError&&_0x4badf5['GLQzB'](_0x3ef29b['status'],0x194))throw new Error('Cloud\x20profile\x20\x22'+_0x97175+'\x22\x20not\x20found.');throw _0x3ef29b;}}function _0x5e39(_0x45e873,_0x2dddb3){_0x45e873=_0x45e873-0x6b;const _0x4aa665=_0x4aa6();let _0x5e39cb=_0x4aa665[_0x45e873];return _0x5e39cb;}export async function createCloudProfile(_0x27b05c,_0x2a0b34,_0x158c0f={}){const _0x33ac43=_0x5e39,_0x5b9bb9={'AZUlm':_0x33ac43(0xe0)},_0x2f4294={'name':_0x27b05c};if(_0x2a0b34)_0x2f4294[_0x33ac43(0x6f)]=_0x2a0b34;_0x158c0f[_0x33ac43(0x6e)]&&Object['keys'](_0x158c0f[_0x33ac43(0x6e)])['length']>0x0&&(_0x2f4294[_0x33ac43(0x6e)]=_0x158c0f['settings']);if(_0x158c0f[_0x33ac43(0x102)])_0x2f4294[_0x33ac43(0x102)]=_0x158c0f['username'];if(_0x158c0f[_0x33ac43(0x74)])_0x2f4294[_0x33ac43(0x74)]=_0x158c0f[_0x33ac43(0x74)];return await apiRequest('/api/v1/profiles',{'method':_0x5b9bb9['AZUlm'],'body':JSON[_0x33ac43(0xc4)](_0x2f4294)});}export async function uploadCloudProfileSession(_0x183446,_0x824a89){const _0x5f468e=_0x5e39,_0x51c33b={'TqBpZ':function(_0x3ccfb4,_0x95236c,_0x3a4207){return _0x3ccfb4(_0x95236c,_0x3a4207);},'etGQy':function(_0x4d78df,_0x5a9384){return _0x4d78df(_0x5a9384);},'HGdqs':_0x5f468e(0xe0)};return await _0x51c33b[_0x5f468e(0xfa)](apiRequest,'/api/v1/profiles/'+_0x51c33b['etGQy'](encodeURIComponent,_0x183446)+'/session',{'method':_0x51c33b['HGdqs'],'body':JSON['stringify']({'session_state':_0x824a89})});}export async function saveCloudProfileCredentials(_0x34ff82,_0x4a5362,_0x4a50d1){const _0x371f5e=_0x5e39,_0x292a02={'nNJRJ':function(_0x24ec57,_0x4d3c67,_0x2869b8){return _0x24ec57(_0x4d3c67,_0x2869b8);}};await _0x292a02['nNJRJ'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x34ff82),{'method':_0x371f5e(0xd4),'body':JSON[_0x371f5e(0xc4)]({'username':_0x4a5362,'password':_0x4a50d1})});}export async function fetchAuthConfig(){const _0x47b122=_0x5e39,_0x32abb7={'fFrQC':function(_0x12b08e,_0x475937){return _0x12b08e(_0x475937);},'wEIce':'/api/v1/profiles/auth-config','TKGRj':function(_0xff2046,_0x2695eb){return _0xff2046!==_0x2695eb;}};try{const _0x296185=await _0x32abb7['fFrQC'](apiRequest,_0x32abb7['wEIce']);return _0x296185[_0x47b122(0x10c)];}catch(_0x297a69){return _0x297a69 instanceof ApiError&&_0x32abb7['TKGRj'](_0x297a69[_0x47b122(0xb5)],0x194)&&console[_0x47b122(0xe1)](_0x47b122(0xa8)+_0x297a69[_0x47b122(0xd6)]),null;}}async function createTunnelSession(_0x5dadb1){const _0x5b641e=_0x5e39,_0xd3a3bc={'EpxLF':function(_0x20dae1,_0x10c744,_0x5589b7){return _0x20dae1(_0x10c744,_0x5589b7);},'VBDST':_0x5b641e(0x118),'DfexE':'agent'};return await _0xd3a3bc[_0x5b641e(0xde)](apiRequest,_0xd3a3bc['VBDST'],{'method':_0x5b641e(0xe0),'body':JSON[_0x5b641e(0xc4)]({'targetUrl':_0x5dadb1,'mode':_0xd3a3bc['DfexE']})});}async function deleteTunnelSession(_0x40b00a){const _0x527677={'dYpVM':function(_0x42d88a,_0x4249de,_0x44a50c){return _0x42d88a(_0x4249de,_0x44a50c);},'AfmaJ':'DELETE'};await _0x527677['dYpVM'](apiRequest,'/api/v1/tunnel/sessions/'+_0x40b00a,{'method':_0x527677['AfmaJ']});}export function pickAdHocEnvKey(_0x379863,_0x46f9d9,_0x2e51d3){const _0x42f4d3=_0x5e39,_0xc1146e={'rlIpO':function(_0xc84634,_0x111abd){return _0xc84634+_0x111abd;},'IcvjN':function(_0x1cd204,_0x5023c3){return _0x1cd204+_0x5023c3;},'OpURh':function(_0x4b5eda,_0x2ebec2){return _0x4b5eda in _0x2ebec2;},'HnxFr':_0x42f4d3(0xe6),'hMBsQ':function(_0x34f56e,_0x126e82){return _0x34f56e+_0x126e82;}};if(_0x2e51d3){if(!_0x379863?.[_0x42f4d3(0x10f)]?.[_0x2e51d3]){const _0x4a110d=Object[_0x42f4d3(0x123)](_0x379863?.['environments']??{});throw new Error(_0xc1146e[_0x42f4d3(0xaa)](_0xc1146e[_0x42f4d3(0x110)](_0x42f4d3(0xf9)+_0x2e51d3+_0x42f4d3(0x100),_0x4a110d['length']?_0x42f4d3(0x76)+_0x4a110d[_0x42f4d3(0x114)](',\x20')+'.':'\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.'),'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)'));}return _0x2e51d3;}if(!_0x379863)return null;if(_0x46f9d9){const _0x2d88ac=matchAuthEnvironmentExact(_0x46f9d9,_0x379863);if(_0x2d88ac)return _0x2d88ac;const _0x14b235=matchAuthEnvironmentByHost(_0x46f9d9,_0x379863);if(_0x14b235&&_0xc1146e['OpURh'](_0x42f4d3(0xa1),_0x14b235))return console['log']('\x20\x20Auth\x20env\x20\x22'+_0x14b235['key']+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x46f9d9+_0x42f4d3(0xf1)),_0x14b235[_0x42f4d3(0xa1)];if(_0x14b235&&_0xc1146e[_0x42f4d3(0x101)](_0xc1146e['HnxFr'],_0x14b235))throw new Error(_0x42f4d3(0x80)+_0x14b235['ambiguous']['join'](',\x20')+_0x42f4d3(0xb0));if(needsTunnel(_0x46f9d9))throw new Error(_0xc1146e['hMBsQ'](_0x42f4d3(0xac)+_0x46f9d9+_0x42f4d3(0xd2)+_0x42f4d3(0x9b)+_0x42f4d3(0xfd)+_0x42f4d3(0xf5)+('\x20\x20-\x20ask\x20your\x20Ranger\x20admin\x20to\x20add\x20\x22'+_0x46f9d9[_0x42f4d3(0x82)](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),_0x42f4d3(0xec)+_0x46f9d9+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x379863['defaultEnvironmentKey'])return _0x379863[_0x42f4d3(0xa0)];const _0x32edb3=Object[_0x42f4d3(0x123)](_0x379863['environments']??{});if(_0x32edb3['length']===0x1)return _0x32edb3[0x0];if(_0x32edb3['length']===0x0)return null;throw new Error(_0xc1146e[_0x42f4d3(0x110)]('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x32edb3['join'](',\x20')+_0x42f4d3(0x11d),_0x42f4d3(0xe4)));}export function adHocProfileName(_0x26429d,_0x5bc9ec,_0xc2dc8b){if(!_0x5bc9ec||_0x5bc9ec===_0xc2dc8b)return _0x26429d;return _0x26429d+':'+_0x5bc9ec;}export async function resolveAdHocProfile(_0x356e1e={},_0x3137f3=process['env']){const _0x4218bb=_0x5e39,_0x222361={'EtwHT':function(_0xbd7e85,_0x137109,_0x1fff8c,_0x52c61c){return _0xbd7e85(_0x137109,_0x1fff8c,_0x52c61c);},'cGQVo':function(_0x333c91,_0x2364df){return _0x333c91(_0x2364df);},'jrxuO':function(_0x446fb6,_0x1752e3){return _0x446fb6!==_0x1752e3;},'jKYCc':function(_0x1d4479,_0x478751,_0x36dae4,_0x11c726){return _0x1d4479(_0x478751,_0x36dae4,_0x11c726);}},_0x4df839=_0x3137f3['RANGER_TEST_USERNAME'];if(!_0x4df839)return null;const _0x583736=await fetchAuthConfig(),_0x16d0e8=pickAdHocEnvKey(_0x583736,_0x356e1e[_0x4218bb(0xf0)],_0x356e1e['envKey']);let _0x4047db=_0x222361[_0x4218bb(0xc3)](adHocProfileName,_0x4df839,_0x16d0e8,_0x583736?.['defaultEnvironmentKey']),_0x9ba88d=await _0x222361[_0x4218bb(0xd1)](fetchCloudProfile,_0x4047db);_0x9ba88d&&_0x16d0e8&&_0x222361['jrxuO'](_0x9ba88d['environmentKey'],_0x16d0e8)&&(console[_0x4218bb(0x128)]('\x20\x20Cloud\x20profile\x20\x22'+_0x4047db+'\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22'+(_0x9ba88d[_0x4218bb(0x9a)]??_0x4218bb(0x113))+'\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22'+_0x16d0e8+'\x22;\x20using\x20\x22'+_0x4df839+':'+_0x16d0e8+'\x22\x20instead.'),_0x4047db=_0x4df839+':'+_0x16d0e8,_0x9ba88d=await fetchCloudProfile(_0x4047db));if(_0x9ba88d)return{'name':_0x9ba88d[_0x4218bb(0xae)],'profile':_0x9ba88d};const _0x5a468b=_0x3137f3['RANGER_TEST_PASSWORD'],_0x48ab94=await _0x222361[_0x4218bb(0xfc)](createCloudProfile,_0x4047db,_0x16d0e8??undefined,{'username':_0x4df839,'password':_0x5a468b});return console[_0x4218bb(0x128)](_0x4218bb(0x7a)+_0x48ab94[_0x4218bb(0xae)]+'\x22\x20for\x20'+_0x4df839+(_0x16d0e8?_0x4218bb(0xb6)+_0x16d0e8+')':'')),{'name':_0x48ab94[_0x4218bb(0xae)],'profile':_0x48ab94};}export async function writeSessionToLocalCache(_0x41fcbf,_0x39139c,_0x58f19d,_0x519838,_0xd6ec46,_0x111c53,_0x947688){const _0x1a822a=_0x5e39,_0x15fc6b={'JWWDz':function(_0x5273a5,_0x5dc06c){return _0x5273a5(_0x5dc06c);},'Mcnyk':function(_0x4a678a,_0x513b5a,_0x345643){return _0x4a678a(_0x513b5a,_0x345643);},'YkDkJ':function(_0x5188d7,_0x3a7cc0,_0x34a66f){return _0x5188d7(_0x3a7cc0,_0x34a66f);},'qUAjn':function(_0x5717c0,_0x259c09){return _0x5717c0>_0x259c09;},'RyVWl':function(_0xcb36ce,_0x429512,_0x2d66ac){return _0xcb36ce(_0x429512,_0x2d66ac);}},_0x295e70=_0x15fc6b['JWWDz'](sessionCacheHash,{'orgId':_0x39139c,'profileName':_0x41fcbf,'effectiveBaseUrl':_0x58f19d,'setupHeaders':_0x519838,'invalidateOn':_0x947688?.[_0x1a822a(0x77)],'userAgent':_0x947688?.[_0x1a822a(0xeb)],'clientIp':_0x947688?.['clientIp']}),_0x2ff5fd=_0x15fc6b[_0x1a822a(0x130)](getSessionCachePath,_0x295e70,_0x41fcbf),_0x5692f7=_0x15fc6b['YkDkJ'](join,getRangerHomeDir(),'auth');!_0x15fc6b['JWWDz'](existsSync,_0x5692f7)&&await mkdir(_0x5692f7,{'recursive':!![]});const _0x50547a={..._0xd6ec46};_0x111c53&&_0x15fc6b[_0x1a822a(0xe7)](_0x111c53[_0x1a822a(0xf8)],0x0)&&Array[_0x1a822a(0xd7)](_0x50547a[_0x1a822a(0xd9)])&&(_0x50547a['cookies']=duplicateCookiesForDomains(_0x50547a[_0x1a822a(0xd9)],_0x111c53));const _0xbac083={'cached_at':new Date()[_0x1a822a(0x107)](),'session_state':_0x50547a};await _0x15fc6b[_0x1a822a(0x130)](writeFile,_0x2ff5fd,JSON[_0x1a822a(0xc4)](_0xbac083,null,0x2));const _0x473e04=getStorageStatePath(_0x2ff5fd);return await _0x15fc6b['RyVWl'](writeFile,_0x473e04,JSON[_0x1a822a(0xc4)](_0x50547a,null,0x2)),_0x473e04;}export async function checkLocalCache(_0x398eba,_0x3f4ca2,_0xfdc4a0,_0x5e589b,_0x15d9ea){const _0x1696e3=_0x5e39,_0x47681e={'EfCfX':function(_0x2b1012,_0x29c7bb,_0x127d01){return _0x2b1012(_0x29c7bb,_0x127d01);},'qzfiK':function(_0x59eabe,_0x112e7a){return _0x59eabe(_0x112e7a);}},_0x5a02a4=sessionCacheHash({'orgId':_0x3f4ca2,'profileName':_0x398eba,'effectiveBaseUrl':_0xfdc4a0,'setupHeaders':_0x5e589b,'invalidateOn':_0x15d9ea?.['invalidateOn'],'userAgent':_0x15d9ea?.[_0x1696e3(0xeb)],'clientIp':_0x15d9ea?.[_0x1696e3(0xcd)]}),_0x192f95=_0x47681e[_0x1696e3(0xd3)](getSessionCachePath,_0x5a02a4,_0x398eba),_0x253dcd=_0x47681e['qzfiK'](getStorageStatePath,_0x192f95);if(!existsSync(_0x192f95)||!existsSync(_0x253dcd))return null;try{const _0x72cd2e=await readFile(_0x192f95,'utf-8');return JSON[_0x1696e3(0xf6)](_0x72cd2e),{'storageStatePath':_0x253dcd};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x228c7e,_0x10c3dc){const _0x2468d1=_0x5e39,_0x5b3aea={'kXpSb':function(_0x314b17,_0x470605){return _0x314b17+_0x470605;}};if(!_0x10c3dc||!_0x10c3dc[_0x2468d1(0x12b)]?.[_0x2468d1(0xf8)])return;let _0x3fc580;try{_0x3fc580=new URL(_0x228c7e);}catch{return;}const _0x3da8f6=[];for(const _0x368a33 of _0x10c3dc['domains']){try{_0x3da8f6[_0x2468d1(0xa7)]({'raw':_0x368a33,'url':new URL(_0x368a33)});}catch{}}if(_0x3da8f6['length']===0x0)return;if(_0x3da8f6[_0x2468d1(0xdb)](_0x82e29e=>_0x82e29e[_0x2468d1(0xb1)]['origin']===_0x3fc580[_0x2468d1(0x7e)]))return;const _0x3e790c=_0x3da8f6['map'](_0x435276=>'\x22'+_0x435276[_0x2468d1(0x9c)]+'\x22')['join'](',\x20');console[_0x2468d1(0x128)](_0x5b3aea['kXpSb']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x3e790c+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x228c7e+_0x2468d1(0xb8))+_0x2468d1(0xba));}export async function serverSideLogin(_0x37b6a3,_0x14ffc7){const _0x5a0535=_0x5e39,_0x358bcb={'ydgzf':function(_0xe65352,_0x4b007c,_0x1303d9){return _0xe65352(_0x4b007c,_0x1303d9);},'fdRuZ':function(_0x30e56f,_0x2d8c5a){return _0x30e56f instanceof _0x2d8c5a;},'HWUls':function(_0x32b786,_0x15e299){return _0x32b786===_0x15e299;},'JbCET':'not_configured'},_0x374a02=process[_0x5a0535(0x7f)]['RANGER_TEST_USERNAME'],_0xa1f864=process['env'][_0x5a0535(0x92)],_0x39dbd0={};if(_0x374a02)_0x39dbd0[_0x5a0535(0x102)]=_0x374a02;if(_0xa1f864)_0x39dbd0['password']=_0xa1f864;if(_0x14ffc7?.[_0x5a0535(0x124)])_0x39dbd0['force']=!![];if(_0x14ffc7?.['targetUrl'])_0x39dbd0[_0x5a0535(0xa3)]=_0x14ffc7['targetUrl'];_0x14ffc7?.['tunnel']&&(_0x39dbd0[_0x5a0535(0xe5)]=_0x14ffc7[_0x5a0535(0xc0)]['sessionId'],_0x39dbd0[_0x5a0535(0xf4)]=_0x14ffc7['tunnel'][_0x5a0535(0xca)]);try{return await _0x358bcb['ydgzf'](apiRequest,_0x5a0535(0x105)+encodeURIComponent(_0x37b6a3)+'/login',{'method':_0x5a0535(0xe0),'body':JSON['stringify'](_0x39dbd0)});}catch(_0x1a035e){if(_0x358bcb['fdRuZ'](_0x1a035e,ApiError)&&_0x358bcb[_0x5a0535(0x117)](_0x1a035e[_0x5a0535(0xb5)],0x190)&&_0x358bcb[_0x5a0535(0x117)](_0x1a035e[_0x5a0535(0x78)],_0x5a0535(0xed)))return{'status':_0x358bcb['JbCET'],'error':_0x1a035e['detail']};throw _0x1a035e;}}async function serverSideLoginWithOptionalTunnel(_0x5483e5,_0x18dc30,_0x4707ad={}){const _0x56ae57=_0x5e39,_0x3e13e7={'AyoyS':_0x56ae57(0x12a),'SYMCA':function(_0x1e0268,_0xdcdd9c){return _0x1e0268(_0xdcdd9c);},'OPUmh':function(_0x43eb28,_0x4852b6){return _0x43eb28(_0x4852b6);},'ZIQge':function(_0x1db7dc,_0x145f11,_0x5bdfb5){return _0x1db7dc(_0x145f11,_0x5bdfb5);},'hOFTD':function(_0x48802d,_0x5b64a2){return _0x48802d===_0x5b64a2;},'XWroZ':'true','VgBNL':function(_0x1c2965,_0x5dedbe){return _0x1c2965(_0x5dedbe);},'biIKq':'tunnel_login_setup','kUxKV':function(_0x38f124,_0x94806d){return _0x38f124(_0x94806d);},'WtLFy':function(_0x28972f,_0x314ce5,_0x3a6647){return _0x28972f(_0x314ce5,_0x3a6647);},'HOnKl':function(_0x3de128,_0x311788){return _0x3de128??_0x311788;},'mWEqH':function(_0x2e4561,_0x48085a){return _0x2e4561||_0x48085a;},'IsbDL':function(_0x3b5230,_0x42ac8b){return _0x3b5230(_0x42ac8b);}};if(!_0x3e13e7['OPUmh'](needsTunnel,_0x18dc30))return await _0x3e13e7[_0x56ae57(0x129)](serverSideLogin,_0x5483e5,{'force':_0x4707ad['force']});let _0x23e364=null,_0xca1c2e=null,_0x5283cd=null,_0x5ce314=null,_0x1ea505=![];const _0x17bd94=process['env'][_0x56ae57(0xc5)]?.[_0x56ae57(0x12e)](),_0x1cc15f=_0x3e13e7[_0x56ae57(0x7c)](_0x17bd94,'1')||_0x17bd94===_0x3e13e7[_0x56ae57(0xa9)],_0x1d1b34={'profileName':_0x5483e5,'targetUrlHost':targetHostForTelemetry(_0x18dc30),'tunnelRequired':!![],'forceLogin':_0x3e13e7[_0x56ae57(0x98)](Boolean,_0x4707ad['force']),'localBrowserServerHeaded':_0x1cc15f};try{_0x4707ad['telemetry']?.['trackPhaseStart'](_0x3e13e7[_0x56ae57(0x83)],_0x1d1b34);_0x1cc15f&&console['log'](_0x56ae57(0xcf));_0x23e364=await _0x3e13e7[_0x56ae57(0x106)](launchBrowserServer,{'headless':!_0x1cc15f}),_0xca1c2e=await createTunnelSession(_0x18dc30);const _0x24f09f=await requireToken();_0x5283cd=await _0x3e13e7[_0x56ae57(0x106)](createTunnelBridge,{'localWsUrl':_0x23e364['wsEndpoint'],'tunnelServerUrl':_0xca1c2e['tunnelUrl'],'sessionId':_0xca1c2e[_0x56ae57(0x119)],'apiKey':_0x24f09f,'onError':_0x557b5c=>{_0x5ce314=_0x557b5c;},'onClose':()=>{_0x5ce314??=new Error('Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20'+_0x5483e5);},'onEvent':_0x2d42ee=>trackBridgeEvent(_0x4707ad[_0x56ae57(0x96)],_0x2d42ee)}),_0x4707ad[_0x56ae57(0x96)]?.[_0x56ae57(0x120)]('tunnel_login_setup',{..._0x1d1b34,'tunnelSessionId':_0xca1c2e['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x1cc15f}),_0x1ea505=!![];try{return _0x4707ad[_0x56ae57(0x96)]?.[_0x56ae57(0xf3)](_0x56ae57(0x12a),{..._0x1d1b34,'tunnelSessionId':_0xca1c2e['sessionId']}),await _0x3e13e7[_0x56ae57(0x125)](serverSideLogin,_0x5483e5,{'force':_0x4707ad[_0x56ae57(0x124)],'targetUrl':_0x18dc30,'tunnel':{'sessionId':_0xca1c2e['sessionId'],'pwEndpoint':_0xca1c2e[_0x56ae57(0xca)]}})[_0x56ae57(0x121)](_0x34e6b5=>{const _0x187e72=_0x56ae57;return _0x4707ad[_0x187e72(0x96)]?.['trackPhaseEnd'](_0x3e13e7[_0x187e72(0xbf)],{..._0x1d1b34,'tunnelSessionId':_0xca1c2e?.['sessionId'],'loginStatus':_0x34e6b5[_0x187e72(0xb5)],'hasSessionState':Boolean(_0x34e6b5['session_state']),'hasTestOutput':Boolean(_0x34e6b5[_0x187e72(0x7b)]),'bridgeError':_0x3e13e7[_0x187e72(0x10d)](errorMessageForTelemetry,_0x5ce314)}),_0x34e6b5;});}catch(_0xe1d685){await _0x4707ad[_0x56ae57(0x96)]?.['trackPhaseError']('tunnel_login_request',_0x3e13e7['HOnKl'](_0x5ce314,_0xe1d685),{..._0x1d1b34,'tunnelSessionId':_0xca1c2e['sessionId'],'bridgeError':errorMessageForTelemetry(_0x5ce314)});throw _0x3e13e7['HOnKl'](_0x5ce314,_0xe1d685);}}catch(_0x304bb1){!_0x1ea505&&await _0x4707ad[_0x56ae57(0x96)]?.['trackPhaseError']('tunnel_login_setup',_0x304bb1,{..._0x1d1b34,'tunnelSessionId':_0xca1c2e?.['sessionId']});throw _0x304bb1;}finally{(_0x3e13e7[_0x56ae57(0xb9)](_0xca1c2e,_0x23e364)||_0x5283cd)&&(_0x4707ad[_0x56ae57(0x96)]?.['trackPhaseStart'](_0x56ae57(0x126),{..._0x1d1b34,'tunnelSessionId':_0xca1c2e?.['sessionId']}),_0x5283cd?.[_0x56ae57(0x99)](),_0x23e364&&await _0x23e364['close']()[_0x56ae57(0x103)](()=>{}),_0xca1c2e&&await _0x3e13e7[_0x56ae57(0x115)](deleteTunnelSession,_0xca1c2e[_0x56ae57(0x119)])['catch'](()=>{}),_0x4707ad[_0x56ae57(0x96)]?.['trackPhaseEnd']('tunnel_login_cleanup',{..._0x1d1b34,'tunnelSessionId':_0xca1c2e?.[_0x56ae57(0x119)]}));}}export async function manualBrowserLogin(_0x2a91ce,_0x5017fa,_0x5ae4fa={}){const _0x37092d=_0x5e39,_0x11f31e={'vOUdP':function(_0x109f06,_0x2a0fcc){return _0x109f06/_0x2a0fcc;},'rRmha':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','xFImJ':function(_0x5580b7,_0x29b8d5){return _0x5580b7>_0x29b8d5;},'nWKSh':_0x37092d(0x111),'sFVVR':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','yPQJY':function(_0x3b4712,_0x3e9287){return _0x3b4712(_0x3e9287);},'vRFxh':function(_0x3925a3,_0x524886){return _0x3925a3&&_0x524886;},'jPHVZ':_0x37092d(0x95),'EZYln':_0x37092d(0x10b),'Ioryw':function(_0x1825f6,_0x4ef879){return _0x1825f6!==_0x4ef879;},'UWybw':_0x37092d(0xe0)};if(!isInteractive())throw new Error(_0x37092d(0x84)+_0x2a91ce['name']+_0x37092d(0xd2)+_0x11f31e[_0x37092d(0xdc)]+_0x37092d(0x72));const _0x12d634=_0x5017fa&&_0x11f31e[_0x37092d(0xee)](_0x5017fa['domains'][_0x37092d(0xf8)],0x0)?_0x5017fa[_0x37092d(0x12b)][0x0]:_0x11f31e[_0x37092d(0x12c)];console[_0x37092d(0x128)](_0x11f31e[_0x37092d(0x73)]),console[_0x37092d(0x128)](_0x37092d(0xf2)),await new Promise(_0xdc4f52=>setTimeout(_0xdc4f52,0x7d0));const _0x362e94=await chromium['launch']({'headless':![]});let _0x467b6b=null;try{const _0x143352={'ignoreHTTPSErrors':!![]};_0x5017fa?.['setupHeaders']&&(_0x143352[_0x37092d(0xaf)]=_0x5017fa[_0x37092d(0xa4)]);const _0x2b8dfb=await _0x362e94['newContext'](_0x143352);await _0x11f31e[_0x37092d(0x94)](addProfileSetupBanner,_0x2b8dfb);const _0x4afc09=await _0x2b8dfb['newPage']();await _0x4afc09['goto'](_0x12d634);let _0x1b0d72=![];await new Promise(_0x891998=>{const _0x576a49={'Rbkwq':function(_0x536cce,_0x266f30){return _0x11f31e['vOUdP'](_0x536cce,_0x266f30);},'bPlBg':function(_0x33bd79){return _0x33bd79();}},_0x3349c8=setTimeout(()=>{const _0x19893d=_0x5e39;_0x1b0d72=!![],console[_0x19893d(0xe1)]('Browser\x20login\x20timed\x20out\x20after\x20'+_0x576a49[_0x19893d(0xd8)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x19893d(0xea)),_0x576a49['bPlBg'](_0x891998);},MANUAL_LOGIN_TIMEOUT_MS);_0x4afc09['on']('close',async()=>{const _0x20de87=_0x5e39;clearTimeout(_0x3349c8);try{const _0x19169c=await _0x2b8dfb[_0x20de87(0xd0)]();_0x467b6b=_0x19169c;}catch{}_0x891998();});});if(_0x11f31e[_0x37092d(0x6c)](_0x1b0d72,!_0x467b6b))throw new Error(_0x11f31e[_0x37092d(0x79)]);}finally{await _0x362e94['close']()[_0x37092d(0x103)](()=>{});}if(!_0x467b6b)throw new Error(_0x11f31e[_0x37092d(0xe9)]);return _0x11f31e['Ioryw'](_0x5ae4fa[_0x37092d(0x8c)],![])&&await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x2a91ce[_0x37092d(0xae)])+_0x37092d(0x8a),{'method':_0x11f31e['UWybw'],'body':JSON['stringify']({'session_state':_0x467b6b,'updated_by':_0x37092d(0x8b)})}),{'sessionState':_0x467b6b};}function _0x4aa6(){const _0x69afdd=['\x20Available:\x20','invalidateOn','code','jPHVZ','\x20\x20Created\x20cloud\x20profile\x20\x22','test_output','hOFTD','forceLogin','origin','env','Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20(','\x22,\x20refreshing\x20session...','replace','biIKq','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','tunnel_bridge','QrzlY','trackPhaseError','122730SstPyH','string','/session','cli:manual-login','persistSessionState','browserOptions','loginInstructions','262710uHISns','aiZZZ','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','RANGER_TEST_PASSWORD','profiles','yPQJY','Browser\x20login\x20timed\x20out\x20before\x20completion.','telemetry','pendingLocalConnections','VgBNL','close','environmentKey','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','raw','\x20\x20No\x20live\x20session\x20for\x20\x22','\x20\x20forceLogin\x20enabled\x20for\x20\x22','NyqWR','defaultEnvironmentKey','key','\x22;\x20proceeding\x20with\x20loginInstructions.','target_url','setupHeaders','tunnel_bridge_event','baseUrl','push','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','XWroZ','rlIpO','\x22\x20failed\x20validation\x20—\x20refreshing...','No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22','hiAjp','name','extraHTTPHeaders',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','url','12NRCqfw','success','tnknl','status','\x20(auth\x20env:\x20','5715808evKWCe','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','mWEqH','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','748276eVBcqt','sessionState','elapsedMs','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','AyoyS','tunnel','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','IDUqT','EtwHT','stringify','RANGER_TUNNEL_LOGIN_HEADED','ZXOem','NzsmI','organizationId','PWmVz','pwEndpoint','OvmGv','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','clientIp','headers','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','storageState','cGQVo','\x22.\x0a','EfCfX','PUT','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','message','isArray','Rbkwq','cookies','143608ojZzia','some','rRmha','\x20\x20Server-side\x20login\x20error:\x20','EpxLF','RANGER_TEST_USERNAME','POST','error','sessionCheckPath','storageStatePath','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>`.','tunnel_session_id','ambiguous','qUAjn','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','EZYln','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','userAgent','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','not_configured','xFImJ','kjZpB','targetUrl','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','trackPhaseStart','pw_endpoint','\x20\x20-\x20pass\x20`--env\x20<key>`\x20to\x20pick\x20the\x20auth\x20environment\x20by\x20name,\x20or\x0a','parse','ZJuWs','length','Auth\x20environment\x20\x22','TqBpZ','DELETE','jKYCc','\x20\x20Options:\x0a','\x20\x20Cloud\x20session\x20for\x20\x22','effectiveBaseUrl','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','OpURh','username','catch','tunnel_error','/api/v1/profiles/','kUxKV','toISOString','YZoFq','dAPxy','reason','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','auth_config','SYMCA','hVVIl','environments','IcvjN','about:blank','UqQMj','none','join','IsbDL','doFSU','HWUls','/api/v1/tunnel/sessions','sessionId','981AZzYPk','SmTju','5PXsKkf',').\x20','type','CzVqK','trackPhaseEnd','then','yMdSn','keys','force','WtLFy','tunnel_login_cleanup','session_state','log','ZIQge','tunnel_login_request','domains','nWKSh','ltzwh','toLowerCase','21160SuFEaC','Mcnyk','JLuNU','vRFxh','qrzge','settings','environment_key','1861930qeGiYC','application/json','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','sFVVR','password','prompt'];_0x4aa6=function(){return _0x69afdd;};return _0x4aa6();}export async function promptSaveCredentials(_0xaa74d8){const _0x1ab18e=_0x5e39,_0x3903e0={'IDUqT':function(_0x2c8dc6,_0x3edb74){return _0x2c8dc6||_0x3edb74;},'kjZpB':function(_0x5aa3ad){return _0x5aa3ad();},'ZJuWs':_0x1ab18e(0xcc),'dAPxy':function(_0x1e9eb8,_0x4c4749){return _0x1e9eb8(_0x4c4749);},'UqQMj':'PUT','CyRLA':_0x1ab18e(0x91)},_0x3755d2=process['env'][_0x1ab18e(0xdf)],_0x3b845a=process[_0x1ab18e(0x7f)][_0x1ab18e(0x92)];if(_0x3903e0[_0x1ab18e(0xc2)](!_0x3755d2,!_0x3b845a))return;if(!_0x3903e0[_0x1ab18e(0xef)](isInteractive))return;const {save:_0x4a973e}=await _0xa77b1d[_0x1ab18e(0x75)]([{'type':'confirm','name':'save','message':_0x3903e0[_0x1ab18e(0xf7)],'default':![]}]);if(!_0x4a973e)return;await apiRequest('/api/v1/profiles/'+_0x3903e0[_0x1ab18e(0x109)](encodeURIComponent,_0xaa74d8),{'method':_0x3903e0[_0x1ab18e(0x112)],'body':JSON['stringify']({'username':_0x3755d2,'password':_0x3b845a})}),console[_0x1ab18e(0x128)](_0x3903e0['CyRLA']);}export async function resolveCloudProfileSession(_0x3df886,_0x26793e={}){const _0x40580e=_0x5e39,_0x4c1894={'ZXOem':function(_0x41f399,_0x5276b3){return _0x41f399===_0x5276b3;},'hiAjp':function(_0x448619,_0x50047e){return _0x448619===_0x50047e;},'xmlqA':_0x40580e(0x89),'PWmVz':function(_0x2c4ef8,_0x1f5475){return _0x2c4ef8(_0x1f5475);},'aiZZZ':function(_0x952a8a,_0x1b93b0){return _0x952a8a>_0x1b93b0;},'NzsmI':function(_0x4cc080,_0x47ef86){return _0x4cc080(_0x47ef86);},'NyqWR':function(_0x225bc4,_0x136355,_0xc14ea,_0x556eb6,_0x450ef2,_0x18ef10){return _0x225bc4(_0x136355,_0xc14ea,_0x556eb6,_0x450ef2,_0x18ef10);},'tnknl':function(_0x12d5fd,_0x7cdb76,_0x10914d){return _0x12d5fd(_0x7cdb76,_0x10914d);},'ltzwh':function(_0x3a84f5,_0x37b450,_0x23998c,_0x57a29e,_0x5bca8e){return _0x3a84f5(_0x37b450,_0x23998c,_0x57a29e,_0x5bca8e);},'IhnUR':function(_0x87679e,_0x502899){return _0x87679e(_0x502899);},'CzVqK':function(_0x28bfb4,_0x290afd){return _0x28bfb4(_0x290afd);},'TXLbU':function(_0x389ed8,_0x5f43ee){return _0x389ed8||_0x5f43ee;},'YZoFq':function(_0x96ece0,_0x5d8f8e,_0x2bd052){return _0x96ece0(_0x5d8f8e,_0x2bd052);},'doFSU':_0x40580e(0xb3),'yMdSn':function(_0xc3b873,_0x11fa60,_0x3e8d06,_0x534693,_0x373e6a,_0x279d34,_0x27fdc7,_0x26253d){return _0xc3b873(_0x11fa60,_0x3e8d06,_0x534693,_0x373e6a,_0x279d34,_0x27fdc7,_0x26253d);},'hVVIl':function(_0x5a43bd,_0x3c6845){return _0x5a43bd(_0x3c6845);},'wkeal':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','ECIHZ':function(_0x345f6e,_0x3e7cb6){return _0x345f6e instanceof _0x3e7cb6;},'QZiwC':function(_0x5ed72a,_0x310c87,_0x392e07,_0x4d4fcb,_0x527be0,_0x36c8d5,_0x5d4149,_0x122e9c){return _0x5ed72a(_0x310c87,_0x392e07,_0x4d4fcb,_0x527be0,_0x36c8d5,_0x5d4149,_0x122e9c);}},_0x30f654=_0x3df886['settings']??{},_0x3463f8=await fetchAuthConfig(),_0x446466=_0x3463f8?resolveAuthEnvironmentLocally(_0x3463f8,_0x3df886[_0x40580e(0x9a)]):null,_0x10aa12=_0x4c1894[_0x40580e(0xc6)](typeof _0x446466?.[_0x40580e(0x8e)],_0x40580e(0x89))&&_0x446466[_0x40580e(0x8e)]['trim']()?_0x446466['loginInstructions']:undefined,_0x30be97=_0x4c1894[_0x40580e(0xad)](typeof _0x30f654['loginInstructions'],_0x4c1894['xmlqA'])&&_0x30f654['loginInstructions']['trim']()?_0x30f654[_0x40580e(0x8e)]:undefined,_0x5dac30=_0x30be97||!_0x10aa12?_0x30f654:{..._0x30f654,'loginInstructions':_0x10aa12},_0x4a7524=_0x4c1894[_0x40580e(0xc9)](Boolean,_0x5dac30['loginInstructions']?.['trim']()),_0x21c704=Boolean(_0x30f654['forceLogin']||_0x446466?.[_0x40580e(0x7d)]),_0x3dfa73=_0x446466?.['domains'],_0x18b2b8=_0x30f654['setupHeaders'],_0x2ff870=_0x18b2b8??_0x446466?.['setupHeaders'],_0x48e1dd=_0x26793e[_0x40580e(0xff)]??_0x30f654[_0x40580e(0xa6)]??(_0x3dfa73&&_0x4c1894[_0x40580e(0x90)](_0x3dfa73[_0x40580e(0xf8)],0x0)?_0x3dfa73[0x0]:''),_0x595e70=_0x48e1dd?_0x4c1894[_0x40580e(0xc7)](needsTunnel,_0x48e1dd):![],_0x40251d={'invalidateOn':_0x446466?.['invalidateOn'],'userAgent':_0x446466?.[_0x40580e(0x8d)]?.['userAgent']??_0x30f654['userAgent']};_0x21c704&&console[_0x40580e(0x128)](_0x40580e(0x9e)+_0x3df886['name']+_0x40580e(0x81));if(!_0x21c704){const _0x1fd21e=await _0x4c1894[_0x40580e(0x9f)](checkLocalCache,_0x3df886['name'],_0x3df886[_0x40580e(0xc8)],_0x48e1dd,_0x2ff870,_0x40251d);if(_0x1fd21e){if(_0x48e1dd&&!_0x595e70){const _0x434ae4=await isCachedSessionLive(_0x1fd21e[_0x40580e(0xe3)],_0x48e1dd,{'sessionCheckPath':_0x446466?.[_0x40580e(0xe2)],'setupHeaders':_0x2ff870},{'launchBrowser':launchRealBrowser});if(_0x434ae4)return console[_0x40580e(0x128)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x3df886[_0x40580e(0xae)]+'\x22'),{'authPath':_0x1fd21e[_0x40580e(0xe3)],'settings':_0x5dac30,'resolvedEnv':_0x446466};console[_0x40580e(0x128)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x3df886['name']+_0x40580e(0xab)),_0x4c1894[_0x40580e(0xb4)](emitSessionValidationHint,_0x48e1dd,_0x446466);}else return _0x595e70&&console['log'](_0x40580e(0xe8)+_0x3df886['name']+'\x22'),{'authPath':_0x1fd21e[_0x40580e(0xe3)],'settings':_0x5dac30,'resolvedEnv':_0x446466};}}if(!_0x21c704&&_0x3df886[_0x40580e(0xbc)]){if(_0x595e70)console['log']('\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22'+_0x48e1dd+'\x22\x20on\x20profile\x20\x22'+_0x3df886[_0x40580e(0xae)]+'\x22');else{const _0xfacf0f=await writeSessionToLocalCache(_0x3df886['name'],_0x3df886['organizationId'],_0x48e1dd,_0x2ff870,_0x3df886['sessionState'],_0x3dfa73,_0x40251d);if(_0x48e1dd){const _0x1e8c70=await _0x4c1894[_0x40580e(0x12d)](isCachedSessionLive,_0xfacf0f,_0x48e1dd,{'sessionCheckPath':_0x446466?.['sessionCheckPath'],'setupHeaders':_0x2ff870},{'launchBrowser':launchRealBrowser});if(_0x1e8c70)return console[_0x40580e(0x128)](_0x40580e(0xd5)+_0x3df886['name']+'\x22,\x20cached\x20locally'),{'authPath':_0xfacf0f,'settings':_0x5dac30,'resolvedEnv':_0x446466};console['log'](_0x40580e(0xfe)+_0x3df886[_0x40580e(0xae)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),emitSessionValidationHint(_0x48e1dd,_0x446466);}else return{'authPath':_0xfacf0f,'settings':_0x5dac30,'resolvedEnv':_0x446466};}}if(_0x4a7524)return console[_0x40580e(0x128)](_0x40580e(0x9d)+_0x3df886[_0x40580e(0xae)]+_0x40580e(0xa2)),{'authPath':undefined,'settings':_0x5dac30,'resolvedEnv':_0x446466};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x3df886[_0x40580e(0xae)]+'\x22,\x20attempting\x20login...');const _0x3c5ffa=Boolean(process['env'][_0x40580e(0xdf)])&&_0x4c1894['IhnUR'](Boolean,process['env']['RANGER_TEST_PASSWORD']),_0x5cfeb8=_0x4c1894[_0x40580e(0x11f)](Boolean,_0x3df886['username']);if(_0x4c1894['TXLbU'](_0x3c5ffa,_0x5cfeb8))try{const _0x20d374=_0x48e1dd?await serverSideLoginWithOptionalTunnel(_0x3df886[_0x40580e(0xae)],_0x48e1dd,{'force':_0x21c704,'telemetry':_0x26793e['telemetry']}):await _0x4c1894[_0x40580e(0x108)](serverSideLogin,_0x3df886[_0x40580e(0xae)],{'force':_0x21c704});if(_0x20d374[_0x40580e(0xb5)]===_0x40580e(0xed))console[_0x40580e(0x128)]('\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...');else{if(_0x20d374[_0x40580e(0xb5)]===_0x4c1894[_0x40580e(0x116)]&&_0x20d374[_0x40580e(0x127)]){console['log']('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x298855=await _0x4c1894[_0x40580e(0x122)](writeSessionToLocalCache,_0x3df886['name'],_0x3df886['organizationId'],_0x48e1dd,_0x2ff870,_0x20d374['session_state'],_0x3dfa73,_0x40251d);return _0x3c5ffa&&!_0x5cfeb8&&await _0x4c1894[_0x40580e(0x10e)](promptSaveCredentials,_0x3df886[_0x40580e(0xae)]),{'authPath':_0x298855,'settings':_0x5dac30,'resolvedEnv':_0x446466};}else _0x20d374[_0x40580e(0x7b)]&&(console[_0x40580e(0x128)](_0x40580e(0xc1)),console[_0x40580e(0x128)](_0x20d374['test_output'])),console[_0x40580e(0x128)](_0x4c1894['wkeal']);}}catch(_0x57b130){console['log'](_0x40580e(0xdd)+(_0x4c1894['ECIHZ'](_0x57b130,Error)?_0x57b130['message']:_0x4c1894[_0x40580e(0x11f)](String,_0x57b130))),console[_0x40580e(0x128)](_0x4c1894['wkeal']);}const _0x3c0a9c=_0x446466?{..._0x446466,'setupHeaders':_0x2ff870}:_0x48e1dd?{'key':_0x3df886[_0x40580e(0x9a)]??'','domains':[_0x48e1dd],'setupHeaders':_0x2ff870}:null,{sessionState:_0x5504f1}=await manualBrowserLogin(_0x3df886,_0x3c0a9c,{'persistSessionState':!_0x595e70}),_0x475cb3=await _0x4c1894['QZiwC'](writeSessionToLocalCache,_0x3df886[_0x40580e(0xae)],_0x3df886[_0x40580e(0xc8)],_0x48e1dd,_0x2ff870,_0x5504f1,_0x3dfa73,_0x40251d);return{'authPath':_0x475cb3,'settings':_0x5dac30,'resolvedEnv':_0x446466};}
|
|
1
|
+
const _0x34624b=_0x21a5;(function(_0xe61449,_0x432dd3){const _0x96b5f=_0x21a5,_0x47b6f1=_0xe61449();while(!![]){try{const _0x50193=parseInt(_0x96b5f(0x188))/0x1+parseInt(_0x96b5f(0x1a5))/0x2*(parseInt(_0x96b5f(0x22e))/0x3)+-parseInt(_0x96b5f(0x1f6))/0x4*(parseInt(_0x96b5f(0x184))/0x5)+parseInt(_0x96b5f(0x1e5))/0x6*(parseInt(_0x96b5f(0x1f2))/0x7)+-parseInt(_0x96b5f(0x205))/0x8+-parseInt(_0x96b5f(0x237))/0x9+parseInt(_0x96b5f(0x211))/0xa;if(_0x50193===_0x432dd3)break;else _0x47b6f1['push'](_0x47b6f1['shift']());}catch(_0x31d51d){_0x47b6f1['push'](_0x47b6f1['shift']());}}}(_0x105c,0x8c75c));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x16a05a from'inquirer';import{chromium}from'playwright';function _0x105c(){const _0x37a34d=['stGhI','session_state','2053478thQNpr',');\x20pass\x20--env\x20<key>\x20to\x20pick\x20one.','trackPhaseError','Bearer\x20','4xIqLwm','RANGER_TEST_PASSWORD','Browser\x20login\x20timed\x20out\x20before\x20completion.','LfXIs','IYZeq','json','FdvNT','txluT','\x22,\x20attempting\x20login...','EtZoP','trackPhaseStart','cookies','\x20Available:\x20','organizationId','some','5629024CQlZvG','VUTAp','type','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','\x22\x20is\x20bound\x20to\x20auth\x20env\x20\x22','\x20\x20-\x20run\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20','jGNzc','EFfcF','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','trackPhaseEnd','invalidateOn','361580QBJRtt','trim','\x22.\x0a','tunnel_bridge','uBWoU','\x20Your\x20org\x20has\x20no\x20auth\x20environments\x20configured.','nnIZY','/api/v1/tunnel/sessions','userAgent','\x22\x20but\x20this\x20run\x20resolved\x20env\x20\x22','storageStatePath','hLFYp','password','uAPYf','catch','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','storageState','XCDDe','close','QuTfy','detail','not_configured','pNdIf','sLNKF','yREfQ','test_output','Cloud\x20profile\x20\x22','/login','sessionId','3327SLEUKx','TqbTp','OSMuo','mWjZi','jZdcE','prompt','hMPeX','\x20\x20Options:\x0a','kyhcs','389601QrwKHN','origin','wsEndpoint','ilVui','cpSwT','\x20\x20Login\x20successful.\x20Session\x20cached.','3627055LXUlkV','SNOTw','pttcT','nysiT','671244SZSHks','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','env','\x20\x20Auth\x20env\x20\x22','\x20\x20Ranger\x20can\x27t\x20assume\x20your\x20org\x27s\x20default\x20login\x20flow\x20applies\x20to\x20an\x20arbitrary\x20local\x20app.\x0a','YfdZm','FVLsd','keys','/api/v1/profiles/','vZcwc','error','length','elapsedMs','API\x20request\x20','agent','NtIst','EDrvh','Browser\x20login\x20timed\x20out\x20after\x20','ambiguous','log','cli:manual-login','Pxifv','environments','goto','domains','gcPRM','status','url','1888MXusng','ZcjcX','\x22\x20failed\x20validation\x20—\x20refreshing...','OVxVi','/api/v1/profiles','SpaWU','GzFBy','code','bPCYy','eSXan','wVMsD','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','about:blank','ZCoyc','RwmUA','\x20\x20Cloud\x20profile\x20\x22','telemetry','join','duqtY','force','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','local_ws_error','sessionState','DXgUf','\x20\x20No\x20live\x20session\x20for\x20\x22','sqZJF','\x22\x20not\x20found\x20in\x20your\x20org\x27s\x20config.','headers','/session','targetUrl','ApiError','auth','clientIp','\x22;\x20proceeding\x20with\x20loginInstructions.','name','tunnel','string','isArray','hIkRd','push','HbkON','loginInstructions','RTnwM','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','JadLZ','envKey','RANGER_TEST_USERNAME','stringify','tunnel_login_cleanup','Kflwb','sessionCheckPath','pw_endpoint','\x20\x20Created\x20cloud\x20profile\x20\x22','tunnel_login_setup','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','ZZQnb','\x20(declared\x20port\x20differs;\x20pass\x20--env\x20to\x20override).','ZgrgQ','environment_key','wVoUN','\x22,\x20refreshing\x20session...','POST','/api/v1/profiles/auth-config','tunnelUrl','6gAJQur','parse','DONxv','setupHeaders','wYGmx','key','DELETE','eBCVD','none','settings','environmentKey'];_0x105c=function(){return _0x37a34d;};return _0x105c();}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(_0x5172ee){const _0x3d7339={'dfqBt':'invalid-url'};try{return new URL(_0x5172ee)['host'];}catch{return _0x3d7339['dfqBt'];}}function errorMessageForTelemetry(_0x198fc4){return _0x198fc4 instanceof Error?_0x198fc4['message']:undefined;}function trackBridgeEvent(_0x387a96,_0x174396){const _0x541ed8=_0x21a5,_0x9356ee={'inazp':'tunnel_bridge_event','kyhcs':function(_0x2ef5fa,_0x40a7da){return _0x2ef5fa===_0x40a7da;},'ChPzD':'tunnel_error','stGhI':_0x541ed8(0x1ba),'HxKhf':_0x541ed8(0x214)};if(!_0x387a96)return;const _0x416f89={'tunnelSessionId':_0x174396['sessionId'],'tunnelEventType':_0x174396[_0x541ed8(0x207)],'connectionId':_0x174396['connectionId'],'code':_0x174396[_0x541ed8(0x1ac)],'reason':_0x174396['reason'],'error':_0x174396['error'],'elapsedMs':_0x174396[_0x541ed8(0x195)],'activeLocalConnections':_0x174396['activeLocalConnections'],'pendingLocalConnections':_0x174396['pendingLocalConnections']};_0x387a96[_0x541ed8(0x20f)](_0x9356ee['inazp'],_0x416f89),(_0x9356ee[_0x541ed8(0x236)](_0x174396['type'],_0x9356ee['ChPzD'])||_0x174396[_0x541ed8(0x207)]===_0x9356ee[_0x541ed8(0x1f0)])&&void _0x387a96[_0x541ed8(0x1f4)](_0x9356ee['HxKhf'],new Error(_0x174396[_0x541ed8(0x193)]??_0x174396[_0x541ed8(0x207)]),_0x416f89);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x31125d=_0x21a5,_0x4255da=await getToken();if(!_0x4255da)throw new Error(_0x31125d(0x189));return _0x4255da;}async function apiRequest(_0x3473eb,_0x1c7605={}){const _0x2e5971=_0x21a5,_0x3760b0={'EtZoP':'string','VUTAp':function(_0x2d738d,_0x3adad2){return _0x2d738d===_0x3adad2;}},_0x1cc977=await requireToken(),_0x3b5fe4=getApiBaseUrl(),_0x590266=await fetch(''+_0x3b5fe4+_0x3473eb,{..._0x1c7605,'headers':{'Authorization':_0x2e5971(0x1f5)+_0x1cc977,'Content-Type':'application/json',..._0x1c7605[_0x2e5971(0x1c0)]??{}}});if(!_0x590266['ok']){let _0x12d7b8='',_0x37a2e8;try{const _0x4d2100=await _0x590266[_0x2e5971(0x1fb)](),_0x38effb=(typeof _0x4d2100['error']===_0x3760b0['EtZoP']?_0x4d2100['error']:undefined)??JSON['stringify'](_0x4d2100);_0x12d7b8=_0x38effb;typeof _0x4d2100['test_output']===_0x3760b0[_0x2e5971(0x1ff)]&&_0x4d2100[_0x2e5971(0x22a)]&&(_0x12d7b8=_0x12d7b8+'\x0a'+_0x4d2100[_0x2e5971(0x22a)]);if(_0x3760b0[_0x2e5971(0x206)](typeof _0x4d2100['code'],_0x2e5971(0x1c9)))_0x37a2e8=_0x4d2100['code'];}catch{_0x12d7b8=_0x590266['statusText'];}throw new ApiError(_0x2e5971(0x196)+_0x3473eb+'\x20failed\x20('+_0x590266['status']+'):\x20'+_0x12d7b8,_0x590266[_0x2e5971(0x1a3)],_0x12d7b8,_0x37a2e8);}if(_0x590266[_0x2e5971(0x1a3)]===0xcc)return undefined;return _0x590266[_0x2e5971(0x1fb)]();}export class ApiError extends Error{['status'];[_0x34624b(0x225)];[_0x34624b(0x1ac)];constructor(_0x1e1509,_0x250690,_0x5ad460,_0x4ac475){const _0x246695=_0x34624b,_0x54b06a={'QuTfy':_0x246695(0x1c3)},_0x2f4ff8='4|3|0|2|1'['split']('|');let _0x1df8d4=0x0;while(!![]){switch(_0x2f4ff8[_0x1df8d4++]){case'0':this[_0x246695(0x225)]=_0x5ad460;continue;case'1':this[_0x246695(0x1c7)]=_0x54b06a[_0x246695(0x224)];continue;case'2':this[_0x246695(0x1ac)]=_0x4ac475;continue;case'3':this['status']=_0x250690;continue;case'4':super(_0x1e1509);continue;}break;}}}export async function fetchCloudProfile(_0x5d1262){const _0x184c82=_0x34624b,_0x199883={'nysiT':function(_0xabbc6c,_0x4e5090){return _0xabbc6c(_0x4e5090);},'Kflwb':function(_0x389f95,_0x2c823d){return _0x389f95 instanceof _0x2c823d;}};try{return await _0x199883[_0x184c82(0x187)](apiRequest,'/api/v1/profiles/'+_0x199883[_0x184c82(0x187)](encodeURIComponent,_0x5d1262));}catch(_0x93df6){if(_0x199883[_0x184c82(0x1d6)](_0x93df6,ApiError)&&_0x93df6['status']===0x194)return null;throw _0x93df6;}}export async function listCloudProfiles(){const _0x505c42={'vIacv':function(_0x30ae4d,_0x2678fc){return _0x30ae4d(_0x2678fc);}},_0x9652e8=await _0x505c42['vIacv'](apiRequest,'/api/v1/profiles');return _0x9652e8['profiles'];}export async function deleteCloudProfile(_0x2521bd){const _0x11d150=_0x34624b,_0xfdc224={'DCMXy':function(_0x33d83c,_0x36714c){return _0x33d83c(_0x36714c);}};try{await apiRequest(_0x11d150(0x191)+_0xfdc224['DCMXy'](encodeURIComponent,_0x2521bd),{'method':_0x11d150(0x1eb)});}catch(_0x446378){if(_0x446378 instanceof ApiError&&_0x446378['status']===0x194)throw new Error(_0x11d150(0x22b)+_0x2521bd+'\x22\x20not\x20found.');throw _0x446378;}}export async function createCloudProfile(_0x2a9c21,_0x2aaa9a,_0x4391a3={}){const _0x3457ec=_0x34624b,_0x1474e1={'wYGmx':function(_0x508b48,_0x56da8f,_0x2e0a77){return _0x508b48(_0x56da8f,_0x2e0a77);},'YovvO':_0x3457ec(0x1e2)},_0x3d11b5={'name':_0x2a9c21};if(_0x2aaa9a)_0x3d11b5[_0x3457ec(0x1df)]=_0x2aaa9a;_0x4391a3[_0x3457ec(0x1ee)]&&Object[_0x3457ec(0x190)](_0x4391a3[_0x3457ec(0x1ee)])['length']>0x0&&(_0x3d11b5[_0x3457ec(0x1ee)]=_0x4391a3[_0x3457ec(0x1ee)]);if(_0x4391a3['username'])_0x3d11b5['username']=_0x4391a3['username'];if(_0x4391a3[_0x3457ec(0x21d)])_0x3d11b5['password']=_0x4391a3['password'];return await _0x1474e1[_0x3457ec(0x1e9)](apiRequest,_0x3457ec(0x1a9),{'method':_0x1474e1['YovvO'],'body':JSON[_0x3457ec(0x1d4)](_0x3d11b5)});}export async function uploadCloudProfileSession(_0x4b02c8,_0x4f4a3f){const _0x5d06e7=_0x34624b,_0x2877e7={'QOtSe':function(_0x58ae70,_0xf17c8f,_0x5b8819){return _0x58ae70(_0xf17c8f,_0x5b8819);},'vaZOB':function(_0x3c5575,_0x2eda0b){return _0x3c5575(_0x2eda0b);}};return await _0x2877e7['QOtSe'](apiRequest,_0x5d06e7(0x191)+_0x2877e7['vaZOB'](encodeURIComponent,_0x4b02c8)+_0x5d06e7(0x1c1),{'method':_0x5d06e7(0x1e2),'body':JSON['stringify']({'session_state':_0x4f4a3f})});}export async function saveCloudProfileCredentials(_0x58e9ae,_0x1484fb,_0x25d945){const _0x459118=_0x34624b,_0x5cd2c4={'lHeJR':function(_0x1447ec,_0x34ff3c,_0x1b4457){return _0x1447ec(_0x34ff3c,_0x1b4457);},'NtIst':function(_0x42e248,_0x4eb1c4){return _0x42e248(_0x4eb1c4);}};await _0x5cd2c4['lHeJR'](apiRequest,_0x459118(0x191)+_0x5cd2c4[_0x459118(0x198)](encodeURIComponent,_0x58e9ae),{'method':'PUT','body':JSON['stringify']({'username':_0x1484fb,'password':_0x25d945})});}export async function fetchAuthConfig(){const _0x42b21b=_0x34624b,_0x26bf1d={'EFfcF':function(_0x496ff8,_0x593b7d){return _0x496ff8 instanceof _0x593b7d;},'RTnwM':function(_0x4ee341,_0x1b6b1c){return _0x4ee341!==_0x1b6b1c;}};try{const _0x50b141=await apiRequest(_0x42b21b(0x1e3));return _0x50b141['auth_config'];}catch(_0x21b27d){return _0x26bf1d[_0x42b21b(0x20c)](_0x21b27d,ApiError)&&_0x26bf1d[_0x42b21b(0x1cf)](_0x21b27d[_0x42b21b(0x1a3)],0x194)&&console['error']('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x21b27d['message']),null;}}async function createTunnelSession(_0x23eef7){const _0x251fd3=_0x34624b,_0x144e1e={'gcPRM':function(_0x5ba87b,_0x3f3fed,_0xa501c){return _0x5ba87b(_0x3f3fed,_0xa501c);},'txluT':_0x251fd3(0x218)};return await _0x144e1e[_0x251fd3(0x1a2)](apiRequest,_0x144e1e[_0x251fd3(0x1fd)],{'method':_0x251fd3(0x1e2),'body':JSON[_0x251fd3(0x1d4)]({'targetUrl':_0x23eef7,'mode':_0x251fd3(0x197)})});}async function deleteTunnelSession(_0x356276){const _0x3e7601=_0x34624b,_0x47f6d4={'OSMuo':function(_0x22b0a0,_0x4735a9,_0x52fdd){return _0x22b0a0(_0x4735a9,_0x52fdd);}};await _0x47f6d4[_0x3e7601(0x230)](apiRequest,'/api/v1/tunnel/sessions/'+_0x356276,{'method':_0x3e7601(0x1eb)});}export function pickAdHocEnvKey(_0x2d3019,_0x857b5b,_0x5940f5){const _0x12ce70=_0x34624b,_0x386e69={'XCDDe':function(_0x4752cb,_0x2823ef,_0x3b6d40){return _0x4752cb(_0x2823ef,_0x3b6d40);},'SNOTw':function(_0x16c104,_0x42a1a0){return _0x16c104 in _0x42a1a0;},'SpaWU':_0x12ce70(0x19b),'jGNzc':function(_0x1e78f3,_0x10ff23){return _0x1e78f3+_0x10ff23;},'dTwqc':function(_0x1175c8,_0x28c162){return _0x1175c8===_0x28c162;},'zKaue':function(_0x4068ae,_0x4daf47){return _0x4068ae===_0x4daf47;}};if(_0x5940f5){if(!_0x2d3019?.[_0x12ce70(0x19f)]?.[_0x5940f5]){const _0x1bb1bb=Object['keys'](_0x2d3019?.[_0x12ce70(0x19f)]??{});throw new Error('Auth\x20environment\x20\x22'+_0x5940f5+_0x12ce70(0x1bf)+(_0x1bb1bb[_0x12ce70(0x194)]?_0x12ce70(0x202)+_0x1bb1bb['join'](',\x20')+'.':_0x12ce70(0x216))+'\x20(If\x20you\x20meant\x20a\x20profile,\x20use\x20--profile.)');}return _0x5940f5;}if(!_0x2d3019)return null;if(_0x857b5b){const _0x8ddab=_0x386e69[_0x12ce70(0x222)](matchAuthEnvironmentExact,_0x857b5b,_0x2d3019);if(_0x8ddab)return _0x8ddab;const _0x39506c=_0x386e69['XCDDe'](matchAuthEnvironmentByHost,_0x857b5b,_0x2d3019);if(_0x39506c&&'key'in _0x39506c)return console[_0x12ce70(0x19c)](_0x12ce70(0x18c)+_0x39506c['key']+'\x22\x20matched\x20by\x20host\x20for\x20'+_0x857b5b+_0x12ce70(0x1dd)),_0x39506c[_0x12ce70(0x1ea)];if(_0x39506c&&_0x386e69[_0x12ce70(0x185)](_0x386e69[_0x12ce70(0x1aa)],_0x39506c))throw new Error('Multiple\x20auth\x20environments\x20declare\x20this\x20host\x20('+_0x39506c['ambiguous'][_0x12ce70(0x1b6)](',\x20')+_0x12ce70(0x1f3));if(needsTunnel(_0x857b5b))throw new Error(_0x386e69['jGNzc'](_0x386e69[_0x12ce70(0x20b)]('No\x20auth\x20environment\x20matches\x20the\x20local\x20target\x20\x22'+_0x857b5b+_0x12ce70(0x213)+_0x12ce70(0x18d),_0x12ce70(0x235))+'\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'+_0x857b5b['replace'](/\/+$/,'')+'\x22\x20to\x20the\x20matching\x20auth\x20environment\x27s\x20domains,\x20or\x0a'),_0x12ce70(0x20a)+_0x857b5b+'\x20--skip-auth`\x20for\x20an\x20unauthenticated\x20profile.'));}if(_0x2d3019['defaultEnvironmentKey'])return _0x2d3019['defaultEnvironmentKey'];const _0x2f33f5=Object[_0x12ce70(0x190)](_0x2d3019['environments']??{});if(_0x386e69['dTwqc'](_0x2f33f5['length'],0x1))return _0x2f33f5[0x0];if(_0x386e69['zKaue'](_0x2f33f5[_0x12ce70(0x194)],0x0))return null;throw new Error(_0x386e69['jGNzc']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x2f33f5[_0x12ce70(0x1b6)](',\x20')+').\x20','Pass\x20--base-url\x20<your-app-url>\x20so\x20Ranger\x20can\x20match\x20the\x20right\x20one,\x20or\x20create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`.'));}export function adHocProfileName(_0x247abe,_0x549263,_0x7cfdb3){if(!_0x549263||_0x549263===_0x7cfdb3)return _0x247abe;return _0x247abe+':'+_0x549263;}export async function resolveAdHocProfile(_0x3f7370={},_0x20b223=process['env']){const _0x480a08=_0x34624b,_0x12498f={'ZcjcX':function(_0x56fd3a){return _0x56fd3a();},'DXgUf':function(_0x1f7302,_0x3aadae,_0x28d56c,_0x4dcf3a){return _0x1f7302(_0x3aadae,_0x28d56c,_0x4dcf3a);},'ilVui':function(_0x388599,_0x56d71b){return _0x388599(_0x56d71b);},'Pxifv':function(_0x4506a4,_0x34cd34){return _0x4506a4??_0x34cd34;}},_0x39adf6=_0x20b223[_0x480a08(0x1d3)];if(!_0x39adf6)return null;const _0x151bf8=await _0x12498f[_0x480a08(0x1a6)](fetchAuthConfig),_0x3edb86=_0x12498f[_0x480a08(0x1bc)](pickAdHocEnvKey,_0x151bf8,_0x3f7370['targetUrl'],_0x3f7370[_0x480a08(0x1d2)]);let _0x46236a=adHocProfileName(_0x39adf6,_0x3edb86,_0x151bf8?.['defaultEnvironmentKey']),_0x427e6e=await _0x12498f['ilVui'](fetchCloudProfile,_0x46236a);_0x427e6e&&_0x3edb86&&_0x427e6e['environmentKey']!==_0x3edb86&&(console['log'](_0x480a08(0x1b4)+_0x46236a+_0x480a08(0x209)+(_0x427e6e['environmentKey']??_0x480a08(0x1ed))+_0x480a08(0x21a)+_0x3edb86+'\x22;\x20using\x20\x22'+_0x39adf6+':'+_0x3edb86+'\x22\x20instead.'),_0x46236a=_0x39adf6+':'+_0x3edb86,_0x427e6e=await _0x12498f[_0x480a08(0x181)](fetchCloudProfile,_0x46236a));if(_0x427e6e)return{'name':_0x427e6e[_0x480a08(0x1c7)],'profile':_0x427e6e};const _0x1dd6de=_0x20b223['RANGER_TEST_PASSWORD'],_0x2a5b82=await createCloudProfile(_0x46236a,_0x12498f[_0x480a08(0x19e)](_0x3edb86,undefined),{'username':_0x39adf6,'password':_0x1dd6de});return console['log'](_0x480a08(0x1d9)+_0x2a5b82[_0x480a08(0x1c7)]+'\x22\x20for\x20'+_0x39adf6+(_0x3edb86?'\x20(auth\x20env:\x20'+_0x3edb86+')':'')),{'name':_0x2a5b82['name'],'profile':_0x2a5b82};}export async function writeSessionToLocalCache(_0x7b9367,_0x2b6466,_0x5590b3,_0x3c6638,_0x4abd32,_0x335aec,_0x3c8f15){const _0x5b15b3=_0x34624b,_0x148640={'LfXIs':function(_0x1867be,_0x1d8e95){return _0x1867be(_0x1d8e95);},'YfdZm':function(_0x2ab28b,_0x538e3c,_0x17987f){return _0x2ab28b(_0x538e3c,_0x17987f);},'koDKP':function(_0x1186c4,_0x4c009f,_0x1ca8b9){return _0x1186c4(_0x4c009f,_0x1ca8b9);}},_0x2b384f=_0x148640[_0x5b15b3(0x1f9)](sessionCacheHash,{'orgId':_0x2b6466,'profileName':_0x7b9367,'effectiveBaseUrl':_0x5590b3,'setupHeaders':_0x3c6638,'invalidateOn':_0x3c8f15?.['invalidateOn'],'userAgent':_0x3c8f15?.['userAgent'],'clientIp':_0x3c8f15?.[_0x5b15b3(0x1c5)]}),_0x32b62b=getSessionCachePath(_0x2b384f,_0x7b9367),_0x320dbf=join(getRangerHomeDir(),_0x5b15b3(0x1c4));!_0x148640['LfXIs'](existsSync,_0x320dbf)&&await mkdir(_0x320dbf,{'recursive':!![]});const _0x8ca26d={..._0x4abd32};_0x335aec&&_0x335aec[_0x5b15b3(0x194)]>0x0&&Array[_0x5b15b3(0x1ca)](_0x8ca26d[_0x5b15b3(0x201)])&&(_0x8ca26d['cookies']=_0x148640['YfdZm'](duplicateCookiesForDomains,_0x8ca26d[_0x5b15b3(0x201)],_0x335aec));const _0x489e7e={'cached_at':new Date()['toISOString'](),'session_state':_0x8ca26d};await _0x148640[_0x5b15b3(0x18e)](writeFile,_0x32b62b,JSON[_0x5b15b3(0x1d4)](_0x489e7e,null,0x2));const _0x216cf2=_0x148640[_0x5b15b3(0x1f9)](getStorageStatePath,_0x32b62b);return await _0x148640['koDKP'](writeFile,_0x216cf2,JSON[_0x5b15b3(0x1d4)](_0x8ca26d,null,0x2)),_0x216cf2;}export async function checkLocalCache(_0x53941b,_0x1fa9e3,_0x3a2397,_0x16de63,_0x43855f){const _0x288899=_0x34624b,_0x24a01c={'gkrWZ':function(_0x51e110,_0xe76c02){return _0x51e110(_0xe76c02);},'yREfQ':function(_0x2c1d21,_0x49726b){return _0x2c1d21(_0x49726b);},'TqbTp':function(_0x3fba4c,_0x169bfe,_0x283c43){return _0x3fba4c(_0x169bfe,_0x283c43);}},_0x53442b=sessionCacheHash({'orgId':_0x1fa9e3,'profileName':_0x53941b,'effectiveBaseUrl':_0x3a2397,'setupHeaders':_0x16de63,'invalidateOn':_0x43855f?.['invalidateOn'],'userAgent':_0x43855f?.[_0x288899(0x219)],'clientIp':_0x43855f?.[_0x288899(0x1c5)]}),_0x2fef11=getSessionCachePath(_0x53442b,_0x53941b),_0x1c3cec=getStorageStatePath(_0x2fef11);if(!_0x24a01c['gkrWZ'](existsSync,_0x2fef11)||!_0x24a01c[_0x288899(0x229)](existsSync,_0x1c3cec))return null;try{const _0xfcf701=await _0x24a01c[_0x288899(0x22f)](readFile,_0x2fef11,'utf-8');return JSON[_0x288899(0x1e6)](_0xfcf701),{'storageStatePath':_0x1c3cec};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x31c133,_0x56f22d){const _0x4051ba=_0x34624b,_0x419a6b={'cpSwT':function(_0x1a35c1,_0x38704e){return _0x1a35c1+_0x38704e;}};if(!_0x56f22d||!_0x56f22d[_0x4051ba(0x1a1)]?.[_0x4051ba(0x194)])return;let _0x253359;try{_0x253359=new URL(_0x31c133);}catch{return;}const _0x22b453=[];for(const _0x13977c of _0x56f22d[_0x4051ba(0x1a1)]){try{_0x22b453[_0x4051ba(0x1cc)]({'raw':_0x13977c,'url':new URL(_0x13977c)});}catch{}}if(_0x22b453['length']===0x0)return;if(_0x22b453[_0x4051ba(0x204)](_0x47f13b=>_0x47f13b[_0x4051ba(0x1a4)][_0x4051ba(0x238)]===_0x253359['origin']))return;const _0x45f97d=_0x22b453['map'](_0x1cb4c1=>'\x22'+_0x1cb4c1['raw']+'\x22')['join'](',\x20');console['log'](_0x419a6b[_0x4051ba(0x182)](_0x4051ba(0x1db)+_0x45f97d+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x31c133+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20')+_0x4051ba(0x20d));}export async function serverSideLogin(_0x3c60bd,_0x457bee){const _0x38238b=_0x34624b,_0x5da04c={'nGNjQ':function(_0x17275c,_0x303b70){return _0x17275c(_0x303b70);},'nTDrd':_0x38238b(0x1e2),'jZdcE':function(_0x940321,_0x3dd72e){return _0x940321===_0x3dd72e;},'bkEEY':_0x38238b(0x226)},_0x4088d3=process[_0x38238b(0x18b)][_0x38238b(0x1d3)],_0x410879=process['env'][_0x38238b(0x1f7)],_0x4fb899={};if(_0x4088d3)_0x4fb899['username']=_0x4088d3;if(_0x410879)_0x4fb899[_0x38238b(0x21d)]=_0x410879;if(_0x457bee?.[_0x38238b(0x1b8)])_0x4fb899[_0x38238b(0x1b8)]=!![];if(_0x457bee?.['targetUrl'])_0x4fb899['target_url']=_0x457bee[_0x38238b(0x1c2)];_0x457bee?.['tunnel']&&(_0x4fb899['tunnel_session_id']=_0x457bee[_0x38238b(0x1c8)]['sessionId'],_0x4fb899[_0x38238b(0x1d8)]=_0x457bee['tunnel']['pwEndpoint']);try{return await apiRequest('/api/v1/profiles/'+_0x5da04c['nGNjQ'](encodeURIComponent,_0x3c60bd)+_0x38238b(0x22c),{'method':_0x5da04c['nTDrd'],'body':JSON[_0x38238b(0x1d4)](_0x4fb899)});}catch(_0x309a54){if(_0x309a54 instanceof ApiError&&_0x309a54['status']===0x190&&_0x5da04c[_0x38238b(0x232)](_0x309a54[_0x38238b(0x1ac)],'not_configured'))return{'status':_0x5da04c['bkEEY'],'error':_0x309a54[_0x38238b(0x225)]};throw _0x309a54;}}function _0x21a5(_0xaf58a0,_0x4d09a3){_0xaf58a0=_0xaf58a0-0x181;const _0x105ca5=_0x105c();let _0x21a595=_0x105ca5[_0xaf58a0];return _0x21a595;}async function serverSideLoginWithOptionalTunnel(_0x533f00,_0x12c7ec,_0x439250={}){const _0xb9a559=_0x34624b,_0x431242={'EDrvh':function(_0x45b413,_0x406260){return _0x45b413(_0x406260);},'GzFBy':function(_0x290414,_0x527338){return _0x290414(_0x527338);},'FdvNT':function(_0x3c5ac0,_0x51063b){return _0x3c5ac0(_0x51063b);},'RwmUA':function(_0x4011a5,_0x551137){return _0x4011a5===_0x551137;},'hMPeX':'true','WwoQz':'\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','IYZeq':function(_0x5880cb){return _0x5880cb();},'KIITv':'tunnel_login_request','hIkRd':function(_0x29880e,_0x4b0f6c,_0x347d05){return _0x29880e(_0x4b0f6c,_0x347d05);},'HbkON':function(_0x59e529,_0x13418b){return _0x59e529??_0x13418b;},'JdaLZ':'tunnel_login_cleanup'};if(!_0x431242[_0xb9a559(0x1fc)](needsTunnel,_0x12c7ec))return await serverSideLogin(_0x533f00,{'force':_0x439250['force']});let _0x1bfc81=null,_0x5bf0af=null,_0x23b952=null,_0x375b22=null,_0x3341c6=![];const _0x51979b=process[_0xb9a559(0x18b)]['RANGER_TUNNEL_LOGIN_HEADED']?.['toLowerCase'](),_0x369872=_0x431242[_0xb9a559(0x1b3)](_0x51979b,'1')||_0x51979b===_0x431242[_0xb9a559(0x234)],_0x46bbcd={'profileName':_0x533f00,'targetUrlHost':targetHostForTelemetry(_0x12c7ec),'tunnelRequired':!![],'forceLogin':_0x431242[_0xb9a559(0x199)](Boolean,_0x439250[_0xb9a559(0x1b8)]),'localBrowserServerHeaded':_0x369872};try{_0x439250[_0xb9a559(0x1b5)]?.[_0xb9a559(0x200)]('tunnel_login_setup',_0x46bbcd);_0x369872&&console[_0xb9a559(0x19c)](_0x431242['WwoQz']);_0x1bfc81=await launchBrowserServer({'headless':!_0x369872}),_0x5bf0af=await createTunnelSession(_0x12c7ec);const _0x48524c=await _0x431242[_0xb9a559(0x1fa)](requireToken);_0x23b952=await createTunnelBridge({'localWsUrl':_0x1bfc81[_0xb9a559(0x239)],'tunnelServerUrl':_0x5bf0af[_0xb9a559(0x1e4)],'sessionId':_0x5bf0af['sessionId'],'apiKey':_0x48524c,'onError':_0x2e81c9=>{_0x375b22=_0x2e81c9;},'onClose':()=>{_0x375b22??=new Error('Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20'+_0x533f00);},'onEvent':_0xb71e77=>trackBridgeEvent(_0x439250[_0xb9a559(0x1b5)],_0xb71e77)}),_0x439250['telemetry']?.[_0xb9a559(0x20f)](_0xb9a559(0x1da),{..._0x46bbcd,'tunnelSessionId':_0x5bf0af['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x369872}),_0x3341c6=!![];try{return _0x439250[_0xb9a559(0x1b5)]?.[_0xb9a559(0x200)](_0x431242['KIITv'],{..._0x46bbcd,'tunnelSessionId':_0x5bf0af[_0xb9a559(0x22d)]}),await _0x431242[_0xb9a559(0x1cb)](serverSideLogin,_0x533f00,{'force':_0x439250['force'],'targetUrl':_0x12c7ec,'tunnel':{'sessionId':_0x5bf0af[_0xb9a559(0x22d)],'pwEndpoint':_0x5bf0af['pwEndpoint']}})['then'](_0x3b1398=>{const _0x1f698e=_0xb9a559;return _0x439250['telemetry']?.[_0x1f698e(0x20f)]('tunnel_login_request',{..._0x46bbcd,'tunnelSessionId':_0x5bf0af?.['sessionId'],'loginStatus':_0x3b1398[_0x1f698e(0x1a3)],'hasSessionState':_0x431242['EDrvh'](Boolean,_0x3b1398[_0x1f698e(0x1f1)]),'hasTestOutput':_0x431242[_0x1f698e(0x1ab)](Boolean,_0x3b1398[_0x1f698e(0x22a)]),'bridgeError':_0x431242['EDrvh'](errorMessageForTelemetry,_0x375b22)}),_0x3b1398;});}catch(_0x4ee46c){await _0x439250['telemetry']?.['trackPhaseError'](_0x431242['KIITv'],_0x375b22??_0x4ee46c,{..._0x46bbcd,'tunnelSessionId':_0x5bf0af[_0xb9a559(0x22d)],'bridgeError':errorMessageForTelemetry(_0x375b22)});throw _0x431242[_0xb9a559(0x1cd)](_0x375b22,_0x4ee46c);}}catch(_0x343546){!_0x3341c6&&await _0x439250['telemetry']?.[_0xb9a559(0x1f4)](_0xb9a559(0x1da),_0x343546,{..._0x46bbcd,'tunnelSessionId':_0x5bf0af?.['sessionId']});throw _0x343546;}finally{(_0x5bf0af||_0x1bfc81||_0x23b952)&&(_0x439250[_0xb9a559(0x1b5)]?.['trackPhaseStart'](_0x431242['JdaLZ'],{..._0x46bbcd,'tunnelSessionId':_0x5bf0af?.[_0xb9a559(0x22d)]}),_0x23b952?.[_0xb9a559(0x223)](),_0x1bfc81&&await _0x1bfc81['close']()[_0xb9a559(0x21f)](()=>{}),_0x5bf0af&&await deleteTunnelSession(_0x5bf0af['sessionId'])[_0xb9a559(0x21f)](()=>{}),_0x439250['telemetry']?.[_0xb9a559(0x20f)](_0xb9a559(0x1d5),{..._0x46bbcd,'tunnelSessionId':_0x5bf0af?.['sessionId']}));}}export async function manualBrowserLogin(_0x3df7ff,_0x22d07a,_0x5108b7={}){const _0x2a13d2=_0x34624b,_0x511f88={'wVoUN':function(_0x160130,_0x4ef26c){return _0x160130/_0x4ef26c;},'eSXan':function(_0xee7ae7,_0x4d72cd){return _0xee7ae7(_0x4d72cd);},'ZZQnb':'close','nnIZY':function(_0x97243){return _0x97243();},'wVMsD':function(_0x4c9ed8,_0x56ca21){return _0x4c9ed8+_0x56ca21;},'fLPou':function(_0x2e8caa,_0x43c692){return _0x2e8caa+_0x43c692;},'uAPYf':'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','BcMOU':function(_0x24ccdd,_0x30b951){return _0x24ccdd>_0x30b951;},'APgox':_0x2a13d2(0x1b1),'JadLZ':_0x2a13d2(0x208),'qtbrP':function(_0x4b6c1d,_0x26624f){return _0x4b6c1d(_0x26624f);},'AbDAJ':_0x2a13d2(0x18a),'sqZJF':function(_0x56c86b,_0x1bac3e){return _0x56c86b!==_0x1bac3e;},'Ndyph':'POST','ZgrgQ':_0x2a13d2(0x19d)};if(!_0x511f88[_0x2a13d2(0x217)](isInteractive))throw new Error(_0x511f88[_0x2a13d2(0x1af)](_0x511f88['fLPou']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x3df7ff[_0x2a13d2(0x1c7)]+'\x22.\x0a','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'),_0x511f88[_0x2a13d2(0x21e)]));const _0x4c045f=_0x22d07a&&_0x511f88['BcMOU'](_0x22d07a['domains']['length'],0x0)?_0x22d07a[_0x2a13d2(0x1a1)][0x0]:_0x511f88['APgox'];console['log'](_0x511f88[_0x2a13d2(0x1d1)]),console[_0x2a13d2(0x19c)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x386f97=>setTimeout(_0x386f97,0x7d0));const _0x35bcb8=await chromium['launch']({'headless':![]});let _0x21c4ad=null;try{const _0x20abf8={'ignoreHTTPSErrors':!![]};_0x22d07a?.[_0x2a13d2(0x1e8)]&&(_0x20abf8['extraHTTPHeaders']=_0x22d07a[_0x2a13d2(0x1e8)]);const _0x2d4389=await _0x35bcb8['newContext'](_0x20abf8);await _0x511f88['qtbrP'](addProfileSetupBanner,_0x2d4389);const _0x3466fe=await _0x2d4389['newPage']();await _0x3466fe[_0x2a13d2(0x1a0)](_0x4c045f);let _0x571f13=![];await new Promise(_0x19f492=>{const _0x208af4=_0x2a13d2,_0x333dd6=setTimeout(()=>{const _0x4523cd=_0x21a5;_0x571f13=!![],console[_0x4523cd(0x193)](_0x4523cd(0x19a)+_0x511f88[_0x4523cd(0x1e0)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x19f492();},MANUAL_LOGIN_TIMEOUT_MS);_0x3466fe['on'](_0x511f88[_0x208af4(0x1dc)],async()=>{const _0x58e730=_0x208af4;_0x511f88[_0x58e730(0x1ae)](clearTimeout,_0x333dd6);try{const _0x117f08=await _0x2d4389[_0x58e730(0x221)]();_0x21c4ad=_0x117f08;}catch{}_0x19f492();});});if(_0x571f13&&!_0x21c4ad)throw new Error(_0x2a13d2(0x1f8));}finally{await _0x35bcb8[_0x2a13d2(0x223)]()['catch'](()=>{});}if(!_0x21c4ad)throw new Error(_0x511f88['AbDAJ']);return _0x511f88[_0x2a13d2(0x1be)](_0x5108b7['persistSessionState'],![])&&await apiRequest(_0x2a13d2(0x191)+_0x511f88['eSXan'](encodeURIComponent,_0x3df7ff['name'])+'/session',{'method':_0x511f88['Ndyph'],'body':JSON['stringify']({'session_state':_0x21c4ad,'updated_by':_0x511f88[_0x2a13d2(0x1de)]})}),{'sessionState':_0x21c4ad};}export async function promptSaveCredentials(_0x239622){const _0xcea68e=_0x34624b,_0x36ffb5={'IpNen':function(_0x415daf){return _0x415daf();},'UTpPT':function(_0x27ebff,_0x59d510,_0x50bf36){return _0x27ebff(_0x59d510,_0x50bf36);},'pNdIf':'PUT','hLFYp':_0xcea68e(0x20e)},_0x3c79ec=process[_0xcea68e(0x18b)]['RANGER_TEST_USERNAME'],_0x105f41=process['env']['RANGER_TEST_PASSWORD'];if(!_0x3c79ec||!_0x105f41)return;if(!_0x36ffb5['IpNen'](isInteractive))return;const {save:_0x4ea4e0}=await _0x16a05a[_0xcea68e(0x233)]([{'type':'confirm','name':'save','message':_0xcea68e(0x220),'default':![]}]);if(!_0x4ea4e0)return;await _0x36ffb5['UTpPT'](apiRequest,_0xcea68e(0x191)+encodeURIComponent(_0x239622),{'method':_0x36ffb5[_0xcea68e(0x227)],'body':JSON[_0xcea68e(0x1d4)]({'username':_0x3c79ec,'password':_0x105f41})}),console[_0xcea68e(0x19c)](_0x36ffb5[_0xcea68e(0x21c)]);}export async function resolveCloudProfileSession(_0x33ffcf,_0x4c22a9={}){const _0x55a4c1=_0x34624b,_0x30fb05={'duqtY':function(_0xeda9b5){return _0xeda9b5();},'kKHkz':function(_0x5e6aaa,_0x3ab3d6){return _0x5e6aaa===_0x3ab3d6;},'eBCVD':'string','vZcwc':function(_0x175033,_0x273b0a){return _0x175033(_0x273b0a);},'EAuIo':function(_0x41fc10,_0x121458){return _0x41fc10>_0x121458;},'OVxVi':function(_0x4b82d7,_0x2a8e17,_0x5a7b99,_0x4f3c7e,_0xd4d53b,_0x4ff2b8){return _0x4b82d7(_0x2a8e17,_0x5a7b99,_0x4f3c7e,_0xd4d53b,_0x4ff2b8);},'inkHy':function(_0x8b1e83,_0xdb64df,_0x2fd15c,_0x495605,_0x48229b){return _0x8b1e83(_0xdb64df,_0x2fd15c,_0x495605,_0x48229b);},'DONxv':function(_0x2cfe5a,_0x35812c,_0x589d96){return _0x2cfe5a(_0x35812c,_0x589d96);},'TzHHw':function(_0x1c8593,_0x104b48,_0x39cb1c,_0x5f4187,_0x4a462a,_0x19c28d,_0x2993fd,_0x597530){return _0x1c8593(_0x104b48,_0x39cb1c,_0x5f4187,_0x4a462a,_0x19c28d,_0x2993fd,_0x597530);},'UMLvM':function(_0x21ec4f,_0x12d062){return _0x21ec4f||_0x12d062;},'FVLsd':function(_0x3daff5,_0x305aba){return _0x3daff5===_0x305aba;},'bPCYy':'not_configured','sLNKF':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','bujyx':_0x55a4c1(0x183),'uBWoU':_0x55a4c1(0x1d0),'pttcT':_0x55a4c1(0x1b9),'mWjZi':function(_0x3e4aca,_0x4b7933){return _0x3e4aca instanceof _0x4b7933;},'ZCoyc':function(_0x203d6d,_0x50da4c){return _0x203d6d(_0x50da4c);}},_0x4c0c32=_0x33ffcf['settings']??{},_0x202c0b=await _0x30fb05[_0x55a4c1(0x1b7)](fetchAuthConfig),_0x36ff25=_0x202c0b?resolveAuthEnvironmentLocally(_0x202c0b,_0x33ffcf['environmentKey']):null,_0x7f37be=typeof _0x36ff25?.[_0x55a4c1(0x1ce)]===_0x55a4c1(0x1c9)&&_0x36ff25['loginInstructions']['trim']()?_0x36ff25['loginInstructions']:undefined,_0x1d6bd8=_0x30fb05['kKHkz'](typeof _0x4c0c32[_0x55a4c1(0x1ce)],_0x30fb05[_0x55a4c1(0x1ec)])&&_0x4c0c32['loginInstructions'][_0x55a4c1(0x212)]()?_0x4c0c32[_0x55a4c1(0x1ce)]:undefined,_0x27a766=_0x1d6bd8||!_0x7f37be?_0x4c0c32:{..._0x4c0c32,'loginInstructions':_0x7f37be},_0x38b44d=_0x30fb05[_0x55a4c1(0x192)](Boolean,_0x27a766[_0x55a4c1(0x1ce)]?.[_0x55a4c1(0x212)]()),_0x40f36b=Boolean(_0x4c0c32['forceLogin']||_0x36ff25?.['forceLogin']),_0xb5fea1=_0x36ff25?.['domains'],_0x5261cc=_0x4c0c32['setupHeaders'],_0x5c58be=_0x5261cc??_0x36ff25?.['setupHeaders'],_0x2a0aaa=_0x4c22a9['effectiveBaseUrl']??_0x4c0c32['baseUrl']??(_0xb5fea1&&_0x30fb05['EAuIo'](_0xb5fea1['length'],0x0)?_0xb5fea1[0x0]:''),_0x3ca004=_0x2a0aaa?needsTunnel(_0x2a0aaa):![],_0x1dc633={'invalidateOn':_0x36ff25?.[_0x55a4c1(0x210)],'userAgent':_0x36ff25?.['browserOptions']?.['userAgent']??_0x4c0c32['userAgent']};_0x40f36b&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+_0x55a4c1(0x1e1));if(!_0x40f36b){const _0x1fe7b2=await _0x30fb05[_0x55a4c1(0x1a8)](checkLocalCache,_0x33ffcf['name'],_0x33ffcf[_0x55a4c1(0x203)],_0x2a0aaa,_0x5c58be,_0x1dc633);if(_0x1fe7b2){if(_0x2a0aaa&&!_0x3ca004){const _0x13208a=await _0x30fb05['inkHy'](isCachedSessionLive,_0x1fe7b2['storageStatePath'],_0x2a0aaa,{'sessionCheckPath':_0x36ff25?.['sessionCheckPath'],'setupHeaders':_0x5c58be},{'launchBrowser':launchRealBrowser});if(_0x13208a)return console[_0x55a4c1(0x19c)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x33ffcf['name']+'\x22'),{'authPath':_0x1fe7b2[_0x55a4c1(0x21b)],'settings':_0x27a766,'resolvedEnv':_0x36ff25};console[_0x55a4c1(0x19c)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+_0x55a4c1(0x1a7)),_0x30fb05['DONxv'](emitSessionValidationHint,_0x2a0aaa,_0x36ff25);}else return _0x3ca004&&console['log']('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+'\x22'),{'authPath':_0x1fe7b2[_0x55a4c1(0x21b)],'settings':_0x27a766,'resolvedEnv':_0x36ff25};}}if(!_0x40f36b&&_0x33ffcf[_0x55a4c1(0x1bb)]){if(_0x3ca004)console[_0x55a4c1(0x19c)](_0x55a4c1(0x1b0)+_0x2a0aaa+'\x22\x20on\x20profile\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+'\x22');else{const _0x138626=await _0x30fb05['TzHHw'](writeSessionToLocalCache,_0x33ffcf['name'],_0x33ffcf['organizationId'],_0x2a0aaa,_0x5c58be,_0x33ffcf[_0x55a4c1(0x1bb)],_0xb5fea1,_0x1dc633);if(_0x2a0aaa){const _0x531a3b=await isCachedSessionLive(_0x138626,_0x2a0aaa,{'sessionCheckPath':_0x36ff25?.[_0x55a4c1(0x1d7)],'setupHeaders':_0x5c58be},{'launchBrowser':launchRealBrowser});if(_0x531a3b)return console[_0x55a4c1(0x19c)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+'\x22,\x20cached\x20locally'),{'authPath':_0x138626,'settings':_0x27a766,'resolvedEnv':_0x36ff25};console[_0x55a4c1(0x19c)]('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x30fb05[_0x55a4c1(0x1e7)](emitSessionValidationHint,_0x2a0aaa,_0x36ff25);}else return{'authPath':_0x138626,'settings':_0x27a766,'resolvedEnv':_0x36ff25};}}if(_0x38b44d)return console['log'](_0x55a4c1(0x1bd)+_0x33ffcf['name']+_0x55a4c1(0x1c6)),{'authPath':undefined,'settings':_0x27a766,'resolvedEnv':_0x36ff25};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x33ffcf[_0x55a4c1(0x1c7)]+_0x55a4c1(0x1fe));const _0x4db9d6=Boolean(process['env'][_0x55a4c1(0x1d3)])&&_0x30fb05['vZcwc'](Boolean,process[_0x55a4c1(0x18b)][_0x55a4c1(0x1f7)]),_0x5f56a7=Boolean(_0x33ffcf['username']);if(_0x30fb05['UMLvM'](_0x4db9d6,_0x5f56a7))try{const _0x1d8e5b=_0x2a0aaa?await serverSideLoginWithOptionalTunnel(_0x33ffcf['name'],_0x2a0aaa,{'force':_0x40f36b,'telemetry':_0x4c22a9['telemetry']}):await _0x30fb05[_0x55a4c1(0x1e7)](serverSideLogin,_0x33ffcf[_0x55a4c1(0x1c7)],{'force':_0x40f36b});if(_0x30fb05[_0x55a4c1(0x18f)](_0x1d8e5b['status'],_0x30fb05[_0x55a4c1(0x1ad)]))console[_0x55a4c1(0x19c)](_0x30fb05[_0x55a4c1(0x228)]);else{if(_0x30fb05[_0x55a4c1(0x18f)](_0x1d8e5b['status'],'success')&&_0x1d8e5b[_0x55a4c1(0x1f1)]){console['log'](_0x30fb05['bujyx']);const _0x2ec836=await _0x30fb05['TzHHw'](writeSessionToLocalCache,_0x33ffcf['name'],_0x33ffcf['organizationId'],_0x2a0aaa,_0x5c58be,_0x1d8e5b[_0x55a4c1(0x1f1)],_0xb5fea1,_0x1dc633);return _0x4db9d6&&!_0x5f56a7&&await promptSaveCredentials(_0x33ffcf[_0x55a4c1(0x1c7)]),{'authPath':_0x2ec836,'settings':_0x27a766,'resolvedEnv':_0x36ff25};}else _0x1d8e5b['test_output']&&(console['log'](_0x30fb05[_0x55a4c1(0x215)]),console[_0x55a4c1(0x19c)](_0x1d8e5b[_0x55a4c1(0x22a)])),console['log'](_0x30fb05['pttcT']);}}catch(_0xc72078){console[_0x55a4c1(0x19c)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0x30fb05[_0x55a4c1(0x231)](_0xc72078,Error)?_0xc72078['message']:_0x30fb05[_0x55a4c1(0x1b2)](String,_0xc72078))),console['log'](_0x30fb05[_0x55a4c1(0x186)]);}const _0x2cdd25=_0x36ff25?{..._0x36ff25,'setupHeaders':_0x5c58be}:_0x2a0aaa?{'key':_0x33ffcf[_0x55a4c1(0x1ef)]??'','domains':[_0x2a0aaa],'setupHeaders':_0x5c58be}:null,{sessionState:_0x2cc045}=await manualBrowserLogin(_0x33ffcf,_0x2cdd25,{'persistSessionState':!_0x3ca004}),_0x3675c6=await writeSessionToLocalCache(_0x33ffcf['name'],_0x33ffcf['organizationId'],_0x2a0aaa,_0x5c58be,_0x2cc045,_0xb5fea1,_0x1dc633);return{'authPath':_0x3675c6,'settings':_0x27a766,'resolvedEnv':_0x36ff25};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x3d1c3a=_0x518d;(function(_0x2c0f0d,_0x4985b7){const _0x5873b7=_0x518d,_0x45cf91=_0x2c0f0d();while(!![]){try{const _0x1aae8b=-parseInt(_0x5873b7(0x171))/0x1*(parseInt(_0x5873b7(0x17f))/0x2)+parseInt(_0x5873b7(0x17b))/0x3*(parseInt(_0x5873b7(0x169))/0x4)+parseInt(_0x5873b7(0x18e))/0x5+parseInt(_0x5873b7(0x191))/0x6*(-parseInt(_0x5873b7(0x190))/0x7)+-parseInt(_0x5873b7(0x19b))/0x8*(-parseInt(_0x5873b7(0x197))/0x9)+-parseInt(_0x5873b7(0x178))/0xa+parseInt(_0x5873b7(0x18d))/0xb;if(_0x1aae8b===_0x4985b7)break;else _0x45cf91['push'](_0x45cf91['shift']());}catch(_0x10c822){_0x45cf91['push'](_0x45cf91['shift']());}}}(_0x1039,0x23efc));function _0x518d(_0x1d0205,_0x53e42f){_0x1d0205=_0x1d0205-0x166;const _0x10390c=_0x1039();let _0x518d9f=_0x10390c[_0x1d0205];return _0x518d9f;}import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x5913da=process['env'],_0x2dae63={'stdin':process['stdin'],'stdout':process[_0x3d1c3a(0x166)]}){const _0x47c759=_0x3d1c3a,_0x28f132={'zgWej':function(_0x35c98f,_0x25af3b){return _0x35c98f(_0x25af3b);},'YxxvI':function(_0x379c82,_0x14c254){return _0x379c82(_0x14c254);}};if(_0x5913da['CI'])return![];return _0x28f132['zgWej'](Boolean,_0x2dae63['stdin'][_0x47c759(0x18c)])&&_0x28f132['YxxvI'](Boolean,_0x2dae63[_0x47c759(0x166)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x4b8a89){const _0x1f401b=_0x3d1c3a,_0x16165a={'ePcVK':function(_0x2f4cf8,_0x566054){return _0x2f4cf8(_0x566054);},'FANhh':'baseUrl','kVmHa':function(_0xbc56f2,_0x1e9c71){return _0xbc56f2(_0x1e9c71);},'iGEyW':'userAgent','ygbqt':'clientIp','VsXUK':_0x1f401b(0x19a)},_0x14d6bd=new Set(_0x4b8a89[_0x1f401b(0x177)]??DEFAULT_INVALIDATE_ON);_0x4b8a89[_0x1f401b(0x16b)]&&_0x16165a['ePcVK'](needsTunnel,_0x4b8a89[_0x1f401b(0x16b)])&&_0x14d6bd[_0x1f401b(0x167)](_0x16165a['FANhh']);const _0x1334ca={'orgId':_0x4b8a89[_0x1f401b(0x18b)],'profileName':_0x4b8a89[_0x1f401b(0x19c)]};return _0x14d6bd[_0x1f401b(0x17a)](_0x16165a['FANhh'])&&(_0x1334ca['effectiveBaseUrl']=_0x4b8a89['effectiveBaseUrl']),_0x14d6bd[_0x1f401b(0x17a)](_0x1f401b(0x173))&&(_0x1334ca[_0x1f401b(0x173)]=_0x4b8a89[_0x1f401b(0x173)]?_0x16165a[_0x1f401b(0x180)](sortObjectKeys,_0x4b8a89['setupHeaders']):_0x4b8a89[_0x1f401b(0x173)]),_0x14d6bd['has'](_0x1f401b(0x18f))&&(_0x1334ca[_0x1f401b(0x18f)]=extractPort(_0x4b8a89['effectiveBaseUrl'])),_0x14d6bd[_0x1f401b(0x17a)](_0x16165a[_0x1f401b(0x168)])&&_0x4b8a89['userAgent']!==undefined&&(_0x1334ca[_0x1f401b(0x174)]=_0x4b8a89[_0x1f401b(0x174)]),_0x14d6bd['has'](_0x16165a[_0x1f401b(0x183)])&&_0x4b8a89[_0x1f401b(0x193)]!==undefined&&(_0x1334ca[_0x1f401b(0x193)]=_0x4b8a89[_0x1f401b(0x193)]),_0x16165a[_0x1f401b(0x16d)](createHash,_0x16165a[_0x1f401b(0x184)])[_0x1f401b(0x199)](JSON[_0x1f401b(0x186)](_0x1334ca))[_0x1f401b(0x181)](_0x1f401b(0x17e))['slice'](0x0,0xc);}function extractPort(_0x4d4480){const _0x316509=_0x3d1c3a;try{return new URL(_0x4d4480)[_0x316509(0x18f)];}catch{return'';}}function sortObjectKeys(_0x11fce1){const _0x54f1f1={};for(const _0x4fa481 of Object['keys'](_0x11fce1)['sort']()){_0x54f1f1[_0x4fa481]=_0x11fce1[_0x4fa481];}return _0x54f1f1;}export function getSessionCachePath(_0x3b5760,_0x58a44a){const _0x33cc9d=_0x3d1c3a,_0x562869={'nqGVX':_0x33cc9d(0x16f)};return join(getRangerHomeDir(),_0x562869['nqGVX'],_0x3b5760+'-'+_0x58a44a+'.json');}export function getStorageStatePath(_0x3d2a66){const _0x5aa6f6=_0x3d1c3a;return _0x3d2a66['replace'](/\.json$/,_0x5aa6f6(0x179));}export function needsTunnel(_0x15df1f){const _0x3a9922=_0x3d1c3a,_0x4b3b7a={'XlzvI':function(_0x364ed0,_0x248306){return _0x364ed0===_0x248306;},'yhWXU':'localhost','PjGZw':_0x3a9922(0x17c)};let _0x1a0118;try{_0x1a0118=new URL(_0x15df1f)['hostname'];}catch{return![];}if(_0x4b3b7a['XlzvI'](_0x1a0118,_0x4b3b7a[_0x3a9922(0x189)])||_0x1a0118===_0x4b3b7a['PjGZw'])return!![];if(_0x1a0118[_0x3a9922(0x185)]('.localhost'))return!![];if(_0x1a0118[_0x3a9922(0x188)]('localhost.'))return!![];return![];}export function hostnameOf(_0x1b2cd4){return new URL(_0x1b2cd4)['hostname'];}export function duplicateCookiesForDomains(_0x3a5b7f,_0x4016da){const _0x4ba27e=_0x3d1c3a,_0x172b65=[..._0x3a5b7f],_0x50f8f6=new Set(_0x3a5b7f[_0x4ba27e(0x198)](_0x1ceb58=>_0x1ceb58[_0x4ba27e(0x194)]));for(const _0xe60996 of _0x4016da){let _0x3d4992;try{_0x3d4992=hostnameOf(_0xe60996);}catch{continue;}if(!_0x3d4992)continue;const _0x40b030=_0x3d4992[_0x4ba27e(0x175)]('.')?_0x3d4992:'.'+_0x3d4992;if(_0x50f8f6[_0x4ba27e(0x17a)](_0x3d4992)||_0x50f8f6['has'](_0x40b030))continue;for(const _0x4ae363 of _0x3a5b7f){_0x172b65['push']({..._0x4ae363,'domain':_0x40b030});}_0x50f8f6['add'](_0x40b030);}return _0x172b65;}export function resolveAuthEnvironmentLocally(_0x5de3b4,_0xc7583f){const _0x55d84a=_0x3d1c3a,_0x165936=_0x5de3b4[_0x55d84a(0x18a)];if(_0xc7583f){const _0x6d05e4=_0x165936[_0xc7583f];if(!_0x6d05e4)return null;return{'key':_0xc7583f,..._0x6d05e4};}if(_0x5de3b4[_0x55d84a(0x16e)]){const _0x31acd6=_0x165936[_0x5de3b4[_0x55d84a(0x16e)]];if(!_0x31acd6)return null;return{'key':_0x5de3b4['defaultEnvironmentKey'],..._0x31acd6};}const _0x41390a=Object[_0x55d84a(0x187)](_0x165936);if(_0x41390a['length']===0x1){const _0x29f38a=_0x41390a[0x0];return{'key':_0x29f38a,..._0x165936[_0x29f38a]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x79894b,_0x433ad9){const _0x42e222=_0x3d1c3a;try{if(_0x433ad9)return new URL(_0x433ad9,_0x79894b)[_0x42e222(0x196)]();return new URL(_0x79894b)['toString']();}catch{return null;}}export function looksLikeLoginUrl(_0x588e70){const _0x1b6020=_0x3d1c3a;try{const _0x4b890c=new URL(_0x588e70);return LOGIN_URL_PATTERN['test'](_0x4b890c[_0x1b6020(0x172)]);}catch{return LOGIN_URL_PATTERN[_0x1b6020(0x182)](_0x588e70);}}export async function isCachedSessionLive(_0x2a67f2,_0x1c0fe8,_0x148948={},_0x577151={}){const _0x4a6d82=_0x3d1c3a,_0xe9d822={'yoQrn':function(_0x50c584,_0x2021d1){return _0x50c584===_0x2021d1;},'qOwEq':function(_0x5db7e7,_0x43a6ef){return _0x5db7e7===_0x43a6ef;}},_0x1115f1=buildSessionCheckUrl(_0x1c0fe8,_0x148948[_0x4a6d82(0x16a)]);if(!_0x1115f1)return!![];if(!_0x577151[_0x4a6d82(0x176)])return!![];let _0x582f77=null;try{_0x582f77=await _0x577151['launchBrowser']();const _0x1cfe3f=await _0x582f77[_0x4a6d82(0x17d)]({'storageState':_0x2a67f2,'ignoreHTTPSErrors':!![],..._0x148948['setupHeaders']?{'extraHTTPHeaders':_0x148948[_0x4a6d82(0x173)]}:{}}),_0x10c148=await _0x1cfe3f[_0x4a6d82(0x16c)](),_0x491ae7=await _0x10c148[_0x4a6d82(0x192)](_0x1115f1,{'waitUntil':'domcontentloaded','timeout':0x3a98}),_0xb8305c=_0x491ae7?.[_0x4a6d82(0x170)]();if(_0xe9d822[_0x4a6d82(0x195)](_0xb8305c,0x191)||_0xe9d822['qOwEq'](_0xb8305c,0x193))return![];const _0x197245=_0x10c148['url']();if(looksLikeLoginUrl(_0x197245))return![];return!![];}catch{return![];}finally{if(_0x582f77)await _0x582f77['close']()['catch'](()=>{});}}function _0x1039(){const _0x213570=['1004lMzBzz','sessionCheckPath','effectiveBaseUrl','newPage','ePcVK','defaultEnvironmentKey','auth','status','1tSnclG','pathname','setupHeaders','userAgent','startsWith','launchBrowser','invalidateOn','2721410RTtBzX','.storageState.json','has','501GQjXGP','127.0.0.1','newContext','hex','223912RmwiGT','kVmHa','digest','test','ygbqt','VsXUK','endsWith','stringify','keys','includes','yhWXU','environments','orgId','isTTY','3461447tKMfnk','1173640TtaWFr','port','21hSMpiR','237054eWjOQU','goto','clientIp','domain','yoQrn','toString','526482bwzDzP','map','update','sha256','8TPXoHf','profileName','stdout','add','iGEyW'];_0x1039=function(){return _0x213570;};return _0x1039();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3175(_0x2c3359,_0x36d8d7){_0x2c3359=_0x2c3359-0x158;const _0x127272=_0x1272();let _0x3175d2=_0x127272[_0x2c3359];return _0x3175d2;}(function(_0x54204f,_0x570a15){const _0x24ea9a=_0x3175,_0x7d4f3=_0x54204f();while(!![]){try{const _0x48965e=-parseInt(_0x24ea9a(0x164))/0x1+parseInt(_0x24ea9a(0x168))/0x2*(parseInt(_0x24ea9a(0x15c))/0x3)+parseInt(_0x24ea9a(0x15f))/0x4+parseInt(_0x24ea9a(0x167))/0x5*(-parseInt(_0x24ea9a(0x16a))/0x6)+parseInt(_0x24ea9a(0x166))/0x7*(-parseInt(_0x24ea9a(0x169))/0x8)+-parseInt(_0x24ea9a(0x163))/0x9+parseInt(_0x24ea9a(0x158))/0xa;if(_0x48965e===_0x570a15)break;else _0x7d4f3['push'](_0x7d4f3['shift']());}catch(_0x11081e){_0x7d4f3['push'](_0x7d4f3['shift']());}}}(_0x1272,0x82d5d));function _0x1272(){const _0x569f5d=['4210440bPljVx','utf8','subarray','qpoOK','2323359KJWSel','696789iDtvUk','sha256','7367234rGJQOQ','34165sNuAkJ','694ulOJif','8qjinKF','222JpuojC','14766710dmhOSB','OCBJX','setAuthTag','WYshr','2307UuQkIa','xOniA','concat'];_0x1272=function(){return _0x569f5d;};return _0x1272();}import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM='aes-256-gcm',SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x5710ee){const _0x484c0a=_0x3175,_0x568da6={'evkAM':function(_0x18ed89,_0x196d7e,_0x558886,_0x4b4bff,_0x1d5363,_0x2cf716){return _0x18ed89(_0x196d7e,_0x558886,_0x4b4bff,_0x1d5363,_0x2cf716);}};return _0x568da6['evkAM'](pbkdf2Sync,_0x5710ee,SALT,0x186a0,KEY_LENGTH,_0x484c0a(0x165));}export function encrypt(_0x3a7842,_0x42957e){const _0x54b147=_0x3175,_0x140d8b={'WYshr':function(_0x579dd5,_0xb1564f){return _0x579dd5(_0xb1564f);},'xOniA':function(_0x5efdeb,_0x30e932){return _0x5efdeb(_0x30e932);}},_0x30923f=_0x140d8b[_0x54b147(0x15b)](deriveKey,_0x42957e),_0x28024d=_0x140d8b[_0x54b147(0x15d)](randomBytes,IV_LENGTH),_0x1ae0b5=createCipheriv(ALGORITHM,_0x30923f,_0x28024d),_0x26f4fe=Buffer['concat']([_0x1ae0b5['update'](_0x3a7842,_0x54b147(0x160)),_0x1ae0b5['final']()]),_0x57b85d=_0x1ae0b5['getAuthTag']();return Buffer[_0x54b147(0x15e)]([_0x28024d,_0x57b85d,_0x26f4fe]);}export function decrypt(_0x578864,_0x1260c0){const _0x551576=_0x3175,_0x39b4a6={'fzPtp':function(_0x4d77b0,_0x457ff2){return _0x4d77b0(_0x457ff2);},'OCBJX':function(_0x35c254,_0x415e15,_0x1b974a,_0x294792){return _0x35c254(_0x415e15,_0x1b974a,_0x294792);},'qpoOK':function(_0xc19aa5,_0x40105c){return _0xc19aa5+_0x40105c;}},_0x2d7c47=_0x39b4a6['fzPtp'](deriveKey,_0x1260c0),_0x27727e=_0x578864[_0x551576(0x161)](0x0,IV_LENGTH),_0x3b1229=_0x578864[_0x551576(0x161)](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x8c7035=_0x578864[_0x551576(0x161)](IV_LENGTH+TAG_LENGTH),_0x488529=_0x39b4a6[_0x551576(0x159)](createDecipheriv,ALGORITHM,_0x2d7c47,_0x27727e);return _0x488529[_0x551576(0x15a)](_0x3b1229),_0x39b4a6[_0x551576(0x162)](_0x488529['update'](_0x8c7035),_0x488529['final'](_0x551576(0x160)));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x3d0e1a=_0xeb77;(function(_0x202363,_0x1c861f){const _0x2add51=_0xeb77,_0x2cae74=_0x202363();while(!![]){try{const _0x89b0fd=-parseInt(_0x2add51(0x130))/0x1*(-parseInt(_0x2add51(0x156))/0x2)+parseInt(_0x2add51(0x141))/0x3*(-parseInt(_0x2add51(0x145))/0x4)+parseInt(_0x2add51(0x132))/0x5*(-parseInt(_0x2add51(0x154))/0x6)+parseInt(_0x2add51(0x12b))/0x7+parseInt(_0x2add51(0x150))/0x8+-parseInt(_0x2add51(0x155))/0x9*(parseInt(_0x2add51(0x14c))/0xa)+-parseInt(_0x2add51(0x159))/0xb*(-parseInt(_0x2add51(0x129))/0xc);if(_0x89b0fd===_0x1c861f)break;else _0x2cae74['push'](_0x2cae74['shift']());}catch(_0x240647){_0x2cae74['push'](_0x2cae74['shift']());}}}(_0x81d0,0xbc690));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';function _0xeb77(_0x13aa23,_0x4301a0){_0x13aa23=_0x13aa23-0x129;const _0x81d002=_0x81d0();let _0xeb7702=_0x81d002[_0x13aa23];return _0xeb7702;}const SENSITIVE_FLAGS=new Set([_0x3d0e1a(0x153),'-t',_0x3d0e1a(0x14b),_0x3d0e1a(0x12f),'--apikey',_0x3d0e1a(0x13b),'--password',_0x3d0e1a(0x12d),'--auth','--authorization','--header',_0x3d0e1a(0x147),_0x3d0e1a(0x137)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x1d1aae){return TOKEN_PATTERNS['some'](_0x194b4f=>_0x194b4f['test'](_0x1d1aae));}export function sanitizeArgs(_0x5f478c){const _0x39dc57=_0x3d0e1a,_0x287834={'CsTIt':function(_0x4f484c,_0x4ec59e){return _0x4f484c<_0x4ec59e;},'xAmXp':function(_0x18bec7,_0x2595d4){return _0x18bec7!==_0x2595d4;}},_0x3d1d9a=[];let _0xbe9ffd=![];for(let _0x54da61=0x0;_0x287834['CsTIt'](_0x54da61,_0x5f478c[_0x39dc57(0x142)]);_0x54da61++){const _0x14cf10=_0x5f478c[_0x54da61];if(_0xbe9ffd){_0x3d1d9a['push']('[REDACTED]'),_0xbe9ffd=![];continue;}if(_0x14cf10['startsWith']('--')||_0x14cf10['startsWith']('-')){const _0x3a7229=_0x14cf10['indexOf']('=');if(_0x287834['xAmXp'](_0x3a7229,-0x1)){const _0x23672a=_0x14cf10[_0x39dc57(0x149)](0x0,_0x3a7229)[_0x39dc57(0x135)]();if(SENSITIVE_FLAGS['has'](_0x23672a)){_0x3d1d9a[_0x39dc57(0x157)](_0x14cf10[_0x39dc57(0x149)](0x0,_0x3a7229)+'=[REDACTED]');continue;}}else{const _0x80f033=_0x14cf10['toLowerCase']();SENSITIVE_FLAGS['has'](_0x80f033)&&(_0xbe9ffd=!![]);}_0x3d1d9a['push'](_0x14cf10);}else looksLikeToken(_0x14cf10)?_0x3d1d9a['push'](_0x39dc57(0x151)):_0x3d1d9a[_0x39dc57(0x157)](_0x14cf10);}return _0x3d1d9a[_0x39dc57(0x148)]('\x20');}function _0x81d0(){const _0x57a348=['unknown_argument','725QjBANe','YVJaY','isTTY','toLowerCase','Invalid\x20values','--credentials','Not\x20enough\x20non-option\x20arguments','Authorization','errorMessage','--key','[desire-path]\x20Payload:\x20','CbKeO','Missing\x20required\x20argument','errorType','syntax_error','60129NFvMta','length','yOiBb','includes','12uucQKT','error','--cookie','join','slice','missing_required_argument','--secret','17680CDyGse','0|1|7|5|4|6|3|2','waaAB','env','4900704taBWog','[REDACTED]','ObqJl','--token','58074YsDltu','7551npGZph','7034vTkEOQ','push','unknown_command','11KheQyZ','ONusp','sessionId','DEBUG','33597708AtKHUW','has_token','1602251yhlpBe','/api/v1/mcp/desire-path-logs','--pass','Bearer\x20','--api-key','22mIufJv'];_0x81d0=function(){return _0x57a348;};return _0x81d0();}export async function logDesirePath(_0x4a98b5){const _0x11ab3e=_0x3d0e1a,_0x33c926={'YVJaY':function(_0x556c1c){return _0x556c1c();},'waaAB':'application/json','adcpV':_0x11ab3e(0x139),'ONusp':'POST'};try{const _0x575110=await getToken()['catch'](()=>null),_0x36ebf8=getApiBaseUrl(),_0x54f5cf=_0x33c926[_0x11ab3e(0x133)](getCurrentVersion),_0x15415c=_0x575110?_0x11ab3e(0x12a):'no_token',_0x190a3e={..._0x4a98b5['metadata'],'authStatus':_0x15415c,'isTty':process['stdout'][_0x11ab3e(0x134)]??![]},_0x349cad={'Content-Type':_0x33c926[_0x11ab3e(0x14e)]};_0x575110&&(_0x349cad[_0x33c926['adcpV']]=_0x11ab3e(0x12e)+_0x575110);const _0x4ac41d={'rawCommand':_0x4a98b5['rawCommand'],'errorMessage':_0x4a98b5[_0x11ab3e(0x13a)],'errorType':_0x4a98b5[_0x11ab3e(0x13f)],'featureId':_0x4a98b5['featureId'],'sessionId':_0x4a98b5[_0x11ab3e(0x15b)],'metadata':_0x190a3e,'cliVersion':_0x54f5cf};process['env'][_0x11ab3e(0x15c)]&&(console['error']('[desire-path]\x20Sending\x20log\x20to\x20'+_0x36ebf8+_0x11ab3e(0x12c)),console['error'](_0x11ab3e(0x13c)+JSON['stringify'](_0x4ac41d,null,0x2))),await fetch(_0x36ebf8+_0x11ab3e(0x12c),{'method':_0x33c926[_0x11ab3e(0x15a)],'headers':_0x349cad,'body':JSON['stringify'](_0x4ac41d)});}catch(_0x2619f5){process[_0x11ab3e(0x14f)][_0x11ab3e(0x15c)]&&console[_0x11ab3e(0x146)]('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x2619f5);}}export function getErrorType(_0x4f965e,_0x4530cf){const _0x4e8e58=_0x3d0e1a,_0x56ba31={'Ujppk':_0x4e8e58(0x14d),'mkGPN':'unknown','nfYEz':'missing_option','Fkohk':_0x4e8e58(0x138),'yOiBb':'invalid_option_value','CbKeO':'Unknown\x20command','ObqJl':_0x4e8e58(0x158)},_0x205483=_0x56ba31['Ujppk']['split']('|');let _0x2f6ffc=0x0;while(!![]){switch(_0x205483[_0x2f6ffc++]){case'0':if(_0x4530cf)return'runtime_error';continue;case'1':if(!_0x4f965e)return _0x56ba31['mkGPN'];continue;case'2':return _0x4e8e58(0x140);case'3':if(_0x4f965e[_0x4e8e58(0x144)](_0x4e8e58(0x13e)))return _0x56ba31['nfYEz'];continue;case'4':if(_0x4f965e['includes'](_0x56ba31['Fkohk']))return _0x4e8e58(0x14a);continue;case'5':if(_0x4f965e['includes']('Unknown\x20argument'))return _0x4e8e58(0x131);continue;case'6':if(_0x4f965e[_0x4e8e58(0x144)](_0x4e8e58(0x136)))return _0x56ba31[_0x4e8e58(0x143)];continue;case'7':if(_0x4f965e[_0x4e8e58(0x144)](_0x56ba31[_0x4e8e58(0x13d)]))return _0x56ba31[_0x4e8e58(0x152)];continue;}break;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x521274=_0x32de;(function(_0x332042,_0x29e178){const _0x217d1f=_0x32de,_0x3c51a2=_0x332042();while(!![]){try{const _0x177deb=parseInt(_0x217d1f(0x10f))/0x1*(parseInt(_0x217d1f(0x12d))/0x2)+parseInt(_0x217d1f(0x153))/0x3+parseInt(_0x217d1f(0x123))/0x4*(-parseInt(_0x217d1f(0x154))/0x5)+-parseInt(_0x217d1f(0x134))/0x6*(parseInt(_0x217d1f(0x14a))/0x7)+-parseInt(_0x217d1f(0x117))/0x8+parseInt(_0x217d1f(0x125))/0x9*(parseInt(_0x217d1f(0x143))/0xa)+-parseInt(_0x217d1f(0x110))/0xb*(parseInt(_0x217d1f(0x132))/0xc);if(_0x177deb===_0x29e178)break;else _0x3c51a2['push'](_0x3c51a2['shift']());}catch(_0x21c05d){_0x3c51a2['push'](_0x3c51a2['shift']());}}}(_0xa06f,0x6c712));import{spawn}from'child_process';import _0x438c56 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';function _0xa06f(){const _0xfa0c4b=['1918080KiIgcz','202880CPJGDN','https://api.workos.com/user_management/authenticate','text','utf-8','POST','urn:ietf:params:oauth:grant-type:device_code','win32','now','Failed\x20to\x20request\x20device\x20code:\x20','stdout','selected','ensGk','fQPMf','Device\x20authorization\x20timed\x20out','verification_uri_complete','Waiting\x20for\x20authentication...','69XZfESA','7172duALLq','gZWVC','icFni','hwICf','/cli-auth/token','token','json','3458632EPUavM','filter','isTTY','split','write','lOshv','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','org_id','mcp:write','/organization/my-memberships','bYFxb','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','36MbsfUA','https://api.workos.com/user_management/authorize/device','25929OgheUK','length','GET','access_token','Failed\x20to\x20fetch\x20memberships:\x20','/organization/me','log','Authentication\x20failed','14846skKsml','wNoSb','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','kbsWZ','firstName','2904shDMWx','application/x-www-form-urlencoded','2022MkhPFV','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','ignore','FiXYs','rsRdI','organizationId','xdg-open','name','/api-keys','from','wEvHg','error','tpAeT','tCtSm','refresh_token','2490THFGkr','Provisioning\x20CLI\x20token...','status','IOSgC','Invalid\x20JWT\x20format','workosClientId','xpxEN','9751qBGAiQ','ZGzwL','memberships','application/json','parse','Xfrkh','Code:\x20','slow_down','HaaYj'];_0xa06f=function(){return _0xfa0c4b;};return _0xa06f();}const WORKOS_DEVICE_AUTH_URL=_0x521274(0x124),WORKOS_TOKEN_URL=_0x521274(0x155);export async function requestDeviceCode(_0x1991da){const _0x44ddfe=_0x521274,_0x1cbe85={'ensGk':function(_0x4f5cbf,_0x3b75be,_0x148ec2){return _0x4f5cbf(_0x3b75be,_0x148ec2);}},_0x340859=await _0x1cbe85[_0x44ddfe(0x10a)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':_0x44ddfe(0x103),'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x1991da})});if(!_0x340859['ok']){const _0x49e73b=await _0x340859['text']();throw new Error(_0x44ddfe(0x107)+_0x340859['status']+'\x20'+_0x49e73b);}return _0x340859[_0x44ddfe(0x116)]();}export async function pollForTokens(_0x51a34a,_0x5e0fae,_0x286f7b,_0x3f3110){const _0x13e889=_0x521274,_0x3d7418={'DGtAk':function(_0xa39d97,_0x1d372f){return _0xa39d97+_0x1d372f;},'fQPMf':function(_0x4da554,_0xf2cb4c){return _0x4da554*_0xf2cb4c;},'FiXYs':function(_0x3df23b,_0x26bf8b){return _0x3df23b*_0x26bf8b;},'arXVg':function(_0x3caac5,_0x99d558){return _0x3caac5<_0x99d558;},'kbsWZ':function(_0x10bd59,_0x443abf){return _0x10bd59(_0x443abf);},'hwICf':function(_0x581c29,_0x1a262f,_0x301eb1){return _0x581c29(_0x1a262f,_0x301eb1);},'hOvAe':'authorization_pending','BsEaH':_0x13e889(0x12c),'xpxEN':_0x13e889(0x10c)},_0x58b367=_0x3d7418['DGtAk'](Date['now'](),_0x3d7418[_0x13e889(0x10b)](_0x3f3110,0x3e8));let _0x43504f=_0x3d7418[_0x13e889(0x137)](_0x286f7b,0x3e8);while(_0x3d7418['arXVg'](Date[_0x13e889(0x106)](),_0x58b367)){await _0x3d7418[_0x13e889(0x130)](sleep,_0x43504f);const _0x4a5be5=await _0x3d7418[_0x13e889(0x113)](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x51a34a,'device_code':_0x5e0fae,'grant_type':_0x13e889(0x104)})});if(_0x4a5be5['ok'])return _0x4a5be5[_0x13e889(0x116)]();const _0x4c33f1=await _0x4a5be5[_0x13e889(0x116)]();if(_0x4c33f1['error']===_0x3d7418['hOvAe'])continue;if(_0x4c33f1[_0x13e889(0x13f)]===_0x13e889(0x151)){_0x43504f+=0x3e8;continue;}throw new Error(_0x4c33f1['error_description']||_0x4c33f1[_0x13e889(0x13f)]||_0x3d7418['BsEaH']);}throw new Error(_0x3d7418[_0x13e889(0x149)]);}async function fetchUserProfile(_0xc8c8b6){const _0x55f439=_0x521274,_0xe09eaf={'bmnaq':_0x55f439(0x127)},_0x4ac5fa=getApiBaseUrl();try{const _0x43b48c=await fetch(_0x4ac5fa+_0x55f439(0x12a),{'method':_0xe09eaf['bmnaq'],'headers':{'workos-token':_0xc8c8b6}});if(_0x43b48c['ok'])return _0x43b48c['json']();}catch{}return null;}function buildKeyName(_0x2ce6cd,_0x4a0a44){const _0x142710=_0x521274,_0x2a8d96={'rZFTY':function(_0x6d7cdd,_0x3c7d0a){return _0x6d7cdd===_0x3c7d0a;}},_0xab7722=_0x4a0a44[_0x142710(0x118)](_0x48e181=>_0x48e181[_0x142710(0x13b)]===_0x2ce6cd||_0x48e181[_0x142710(0x13b)]['startsWith'](_0x2ce6cd+'\x20('));if(_0x2a8d96['rZFTY'](_0xab7722['length'],0x0))return _0x2ce6cd;return _0x2ce6cd+'\x20('+(_0xab7722['length']+0x1)+')';}export async function provisionApiKey(_0x2bf262){const _0xe8bf9=_0x521274,_0x4a710b={'pXNKN':function(_0x3f739b){return _0x3f739b();},'pdciR':function(_0x5702a3,_0x3d00f7,_0xdc7338){return _0x5702a3(_0x3d00f7,_0xdc7338);},'Xfrkh':_0xe8bf9(0x127)},_0x19d348=_0x4a710b['pXNKN'](getApiBaseUrl),_0x5cc869={'Content-Type':'application/json','workos-token':_0x2bf262},_0x37fe6b=await fetchUserProfile(_0x2bf262),_0x3f4baf=_0x37fe6b?.[_0xe8bf9(0x131)]||_0x37fe6b?.['email']?.[_0xe8bf9(0x11a)]('@')[0x0],_0x52887d=_0x3f4baf?_0x3f4baf+'\x27s\x20CLI\x20Key':'CLI\x20Key';let _0x71ce8f=[];try{const _0x873b34=await _0x4a710b['pdciR'](fetch,_0x19d348+'/api-keys',{'method':_0x4a710b[_0xe8bf9(0x14f)],'headers':_0x5cc869});if(_0x873b34['ok']){const _0x239c19=await _0x873b34[_0xe8bf9(0x116)]();_0x71ce8f=_0x239c19['apiKeys'];}}catch{}const _0x59221d=buildKeyName(_0x52887d,_0x71ce8f),_0x33f2be=await fetch(_0x19d348+_0xe8bf9(0x13c),{'method':'POST','headers':_0x5cc869,'body':JSON['stringify']({'name':_0x59221d,'scope':_0xe8bf9(0x11f)})});if(!_0x33f2be['ok']){const _0x429cce=await _0x33f2be[_0xe8bf9(0x101)]();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x33f2be['status']+'\x20'+_0x429cce);}const _0x2f86dd=await _0x33f2be[_0xe8bf9(0x116)]();return _0x2f86dd['apiKey']['token'];}export function openBrowser(_0x53d4ab){const _0xe54aa6=_0x521274,_0xc324ef={'HaaYj':function(_0x3d6810,_0x2c29c5){return _0x3d6810===_0x2c29c5;},'tpAeT':'start','gZWVC':'ignore','wEvHg':'open'};try{if(_0xc324ef[_0xe54aa6(0x152)](process['platform'],_0xe54aa6(0x105))){const _0x82e0c2=spawn('cmd',['/c',_0xc324ef[_0xe54aa6(0x140)],'',_0x53d4ab],{'detached':!![],'stdio':_0xc324ef[_0xe54aa6(0x111)],'windowsHide':!![]});_0x82e0c2['unref']();return;}const _0x42be23=process['platform']==='darwin'?_0xc324ef[_0xe54aa6(0x13e)]:_0xe54aa6(0x13a),_0x2756da=spawn(_0x42be23,[_0x53d4ab],{'detached':!![],'stdio':_0xe54aa6(0x136)});_0x2756da['unref']();}catch{}}function decodeJwtPayload(_0x5b8701){const _0x5eea45=_0x521274,_0xadccb8={'tCtSm':_0x5eea45(0x147),'lwcHY':'base64url'},_0x5988b5=_0x5b8701['split']('.');if(_0x5988b5[_0x5eea45(0x126)]!==0x3)throw new Error(_0xadccb8[_0x5eea45(0x141)]);const _0x48739e=Buffer[_0x5eea45(0x13d)](_0x5988b5[0x1],_0xadccb8['lwcHY'])['toString'](_0x5eea45(0x102));return JSON[_0x5eea45(0x14e)](_0x48739e);}async function selfServeSignup(_0x309cc1){const _0x40ebfb=_0x521274,_0x2571c2={'wNoSb':function(_0x270d60,_0x356b8f,_0xfb2e84){return _0x270d60(_0x356b8f,_0xfb2e84);},'IOSgC':'POST','icFni':_0x40ebfb(0x14d)},_0x57e46e=getApiBaseUrl(),_0x421aae=await _0x2571c2[_0x40ebfb(0x12e)](fetch,_0x57e46e+'/organization/self-serve-signup',{'method':_0x2571c2[_0x40ebfb(0x146)],'headers':{'Content-Type':_0x2571c2[_0x40ebfb(0x112)],'workos-token':_0x309cc1}});if(!_0x421aae['ok']){const _0x19c44c=await _0x421aae['text']();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x421aae[_0x40ebfb(0x145)]+'\x20'+_0x19c44c);}return _0x421aae['json']();}async function fetchMyMemberships(_0x2a66bb){const _0x21f010=_0x521274,_0x12a131={'QZznD':function(_0x41aa85,_0x41e19c,_0x4fa674){return _0x41aa85(_0x41e19c,_0x4fa674);}},_0x26e5e1=getApiBaseUrl(),_0x58edd8=await _0x12a131['QZznD'](fetch,_0x26e5e1+_0x21f010(0x120),{'method':'GET','headers':{'workos-token':_0x2a66bb}});if(!_0x58edd8['ok']){const _0x46cecd=await _0x58edd8[_0x21f010(0x101)]();throw new Error(_0x21f010(0x129)+_0x58edd8[_0x21f010(0x145)]+'\x20'+_0x46cecd);}const _0x101431=await _0x58edd8[_0x21f010(0x116)]();return _0x101431[_0x21f010(0x14c)];}async function refreshTokenWithOrg(_0x3ccba4,_0x34ec6e,_0x5c8f79){const _0x152e91=_0x521274,_0x211b63={'rTuFz':function(_0x55d6bf,_0x3cfaeb,_0x4b4af9){return _0x55d6bf(_0x3cfaeb,_0x4b4af9);},'iPorE':_0x152e91(0x133),'hplpC':'refresh_token'},_0x22a93e=await _0x211b63['rTuFz'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0x211b63['iPorE']},'body':new URLSearchParams({'client_id':_0x3ccba4,'grant_type':_0x211b63['hplpC'],'refresh_token':_0x34ec6e,'organization_id':_0x5c8f79})});if(!_0x22a93e['ok']){const _0xc10671=await _0x22a93e['text']();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x22a93e[_0x152e91(0x145)]+'\x20'+_0xc10671);}return _0x22a93e['json']();}async function provisionCliToken(_0x2830af){const _0x59b58=_0x521274,_0x28013e={'ezmUe':function(_0x8b623f){return _0x8b623f();},'iEACv':'application/json'},_0x2083c5=_0x28013e['ezmUe'](getApiBaseUrl),_0x5dc83b=await fetch(_0x2083c5+_0x59b58(0x114),{'method':_0x59b58(0x103),'headers':{'Content-Type':_0x28013e['iEACv'],'workos-token':_0x2830af}});if(!_0x5dc83b['ok']){const _0x121b72=await _0x5dc83b[_0x59b58(0x101)]();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x5dc83b[_0x59b58(0x145)]+'\x20'+_0x121b72);}return _0x5dc83b['json']();}export async function runDeviceAuthFlow(){const _0xd167d9=_0x521274,_0x37b0e1={'ctmJo':_0xd167d9(0x135),'SOvGK':function(_0x2a9c8b,_0x37f70f){return _0x2a9c8b(_0x37f70f);},'ZGzwL':function(_0x549de0,_0x420382,_0x5827b2,_0x22f803,_0x1efae1){return _0x549de0(_0x420382,_0x5827b2,_0x22f803,_0x1efae1);},'bYFxb':function(_0x541380,_0x4bdfac){return _0x541380(_0x4bdfac);},'lOshv':function(_0x299fdb,_0x2431b4){return _0x299fdb===_0x2431b4;},'KGCbp':'Setting\x20up\x20your\x20organization...','NLbwx':function(_0x4674e1,_0x3830ed){return _0x4674e1(_0x3830ed);},'jjoEr':_0xd167d9(0x12f),'pjgdB':'Select\x20an\x20organization:','rsRdI':function(_0x16b27c,_0x26e925,_0x1ea85e,_0x3f2079){return _0x16b27c(_0x26e925,_0x1ea85e,_0x3f2079);},'zeQAi':_0xd167d9(0x144)},_0x385328=getCurrentEnvironment(),_0x24b30c=ENVIRONMENT_CONFIGS[_0x385328][_0xd167d9(0x148)],_0x560573=await requestDeviceCode(_0x24b30c);console[_0xd167d9(0x12b)](_0x37b0e1['ctmJo']),console['log'](_0xd167d9(0x122)),_0x37b0e1['SOvGK'](openBrowser,_0x560573[_0xd167d9(0x10d)]),console[_0xd167d9(0x12b)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x560573[_0xd167d9(0x10d)]),console[_0xd167d9(0x12b)](_0xd167d9(0x150)+_0x560573['user_code']+'\x0a'),process[_0xd167d9(0x108)][_0xd167d9(0x11b)](_0xd167d9(0x10e));let _0x8646de=await _0x37b0e1[_0xd167d9(0x14b)](pollForTokens,_0x24b30c,_0x560573['device_code'],_0x560573['interval'],_0x560573['expires_in']);console[_0xd167d9(0x12b)]('\x20✓');const _0x30219e=_0x37b0e1['bYFxb'](decodeJwtPayload,_0x8646de[_0xd167d9(0x128)]);if(!_0x30219e[_0xd167d9(0x11e)]){const _0x1b7f6d=await fetchMyMemberships(_0x8646de[_0xd167d9(0x128)]);let _0x1d9bb2;if(_0x37b0e1[_0xd167d9(0x11c)](_0x1b7f6d['length'],0x0)){process[_0xd167d9(0x108)]['write'](_0x37b0e1['KGCbp']);const _0x5d9d94=await _0x37b0e1['NLbwx'](selfServeSignup,_0x8646de['access_token']);_0x1d9bb2=_0x5d9d94['organizationId'],console[_0xd167d9(0x12b)]('\x20✓');}else{if(_0x1b7f6d[_0xd167d9(0x126)]===0x1)_0x1d9bb2=_0x1b7f6d[0x0][_0xd167d9(0x139)],console[_0xd167d9(0x12b)]('Using\x20organization:\x20'+_0x1b7f6d[0x0][_0xd167d9(0x13b)]);else{const _0x2370e3=process['stdin']['isTTY']&&process[_0xd167d9(0x108)][_0xd167d9(0x119)];if(!_0x2370e3)throw new Error(_0xd167d9(0x11d)+_0x37b0e1['jjoEr']);const {selected:_0x507435}=await _0x438c56['prompt']([{'type':'list','name':_0xd167d9(0x109),'message':_0x37b0e1['pjgdB'],'choices':_0x1b7f6d['map'](_0x29ea5=>({'name':_0x29ea5['name'],'value':_0x29ea5['organizationId']}))}]);_0x1d9bb2=_0x507435;}}_0x8646de=await _0x37b0e1[_0xd167d9(0x138)](refreshTokenWithOrg,_0x24b30c,_0x8646de['refresh_token'],_0x1d9bb2);}process['stdout'][_0xd167d9(0x11b)](_0x37b0e1['zeQAi']);const _0x3797a9=await _0x37b0e1['SOvGK'](provisionCliToken,_0x8646de[_0xd167d9(0x128)]);return console['log']('\x20✓'),await storeToken(_0x3797a9[_0xd167d9(0x115)]),_0x8646de['refresh_token']&&await _0x37b0e1[_0xd167d9(0x121)](storeRefreshToken,_0x8646de[_0xd167d9(0x142)]),_0x3797a9['token'];}function _0x32de(_0x1c067b,_0x3d23bd){_0x1c067b=_0x1c067b-0x101;const _0xa06f98=_0xa06f();let _0x32defb=_0xa06f98[_0x1c067b];return _0x32defb;}function sleep(_0x303c64){return new Promise(_0x1d1289=>setTimeout(_0x1d1289,_0x303c64));}
|
|
1
|
+
const _0x2de186=_0x4bde;(function(_0x14a4c6,_0x2f974a){const _0x3bb80d=_0x4bde,_0x5a74fc=_0x14a4c6();while(!![]){try{const _0x436128=parseInt(_0x3bb80d(0x1dd))/0x1*(-parseInt(_0x3bb80d(0x1c4))/0x2)+-parseInt(_0x3bb80d(0x1c3))/0x3+-parseInt(_0x3bb80d(0x1ee))/0x4*(-parseInt(_0x3bb80d(0x1a8))/0x5)+-parseInt(_0x3bb80d(0x1af))/0x6+parseInt(_0x3bb80d(0x1bc))/0x7*(-parseInt(_0x3bb80d(0x1e7))/0x8)+parseInt(_0x3bb80d(0x1d9))/0x9+parseInt(_0x3bb80d(0x1eb))/0xa;if(_0x436128===_0x2f974a)break;else _0x5a74fc['push'](_0x5a74fc['shift']());}catch(_0x24ab2a){_0x5a74fc['push'](_0x5a74fc['shift']());}}}(_0x1933,0xbb762));import{spawn}from'child_process';import _0x5e647c from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';function _0x4bde(_0x578ee5,_0x379dcd){_0x578ee5=_0x578ee5-0x1a8;const _0x1933e2=_0x1933();let _0x4bde69=_0x1933e2[_0x578ee5];return _0x4bde69;}import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x2de186(0x1cc),WORKOS_TOKEN_URL=_0x2de186(0x1d2);function _0x1933(){const _0x5dc692=['toString','7hAOgGZ','GET','gglhy','MTqTV','filter','startsWith','sLQYv','4267212HZOljH','2754AJZzoK','length','esAoC','hSOiO','start','isTTY','json','RKIOd','https://api.workos.com/user_management/authorize/device','DPLFU','selected','win32','HOtgi','workosClientId','https://api.workos.com/user_management/authenticate','org_id','platform','memberships','vUewV','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','/api-keys','1752615XhAcYN','KIijc','sYqel','log','459VpRqDq','apiKeys','Select\x20an\x20organization:','split','qRGdx','application/x-www-form-urlencoded','kXQNk','VOyWZ','open','unref','9974744XyAqil','Invalid\x20JWT\x20format','RUcfR','firstName','41733750uaTJBh','token','name','8QTAbnQ','refresh_token','utf-8','list','error_description','write','POST','stringify','mcp:write','ignore','error','status','application/json','20005kvzkhL','device_code','tqKyW','Failed\x20to\x20fetch\x20memberships:\x20','mPlHX','deucM','kDLLY','1841880rwoBCx','text','expires_in','from','SgwtS','XAsgn','/organization/self-serve-signup','stdout','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','/organization/my-memberships','verification_uri_complete','OHwUq'];_0x1933=function(){return _0x5dc692;};return _0x1933();}export async function requestDeviceCode(_0x36bfc0){const _0x54fd7d=_0x2de186,_0x46feba={'mPlHX':_0x54fd7d(0x1f4),'deucM':_0x54fd7d(0x1e2)},_0x57496b=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x46feba[_0x54fd7d(0x1ac)],'headers':{'Content-Type':_0x46feba[_0x54fd7d(0x1ad)]},'body':new URLSearchParams({'client_id':_0x36bfc0})});if(!_0x57496b['ok']){const _0x170197=await _0x57496b['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x57496b[_0x54fd7d(0x1f9)]+'\x20'+_0x170197);}return _0x57496b[_0x54fd7d(0x1ca)]();}export async function pollForTokens(_0x1b4b2e,_0x1f4a53,_0x5a22d3,_0x57dcac){const _0x41dc62=_0x2de186,_0x2aa9b3={'RUcfR':function(_0x45c3de,_0x55752a){return _0x45c3de*_0x55752a;},'VOyWZ':function(_0x3cf3a1,_0x128fdb){return _0x3cf3a1(_0x128fdb);},'qRGdx':'POST','SgwtS':'application/x-www-form-urlencoded','DPLFU':'Authentication\x20failed','oucNT':'Device\x20authorization\x20timed\x20out'},_0x23d484=Date['now']()+_0x2aa9b3[_0x41dc62(0x1e9)](_0x57dcac,0x3e8);let _0x2c1805=_0x5a22d3*0x3e8;while(Date['now']()<_0x23d484){await _0x2aa9b3[_0x41dc62(0x1e4)](sleep,_0x2c1805);const _0x5b3833=await fetch(WORKOS_TOKEN_URL,{'method':_0x2aa9b3[_0x41dc62(0x1e1)],'headers':{'Content-Type':_0x2aa9b3[_0x41dc62(0x1b3)]},'body':new URLSearchParams({'client_id':_0x1b4b2e,'device_code':_0x1f4a53,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x5b3833['ok'])return _0x5b3833['json']();const _0x42e251=await _0x5b3833['json']();if(_0x42e251[_0x41dc62(0x1f8)]==='authorization_pending')continue;if(_0x42e251['error']==='slow_down'){_0x2c1805+=0x3e8;continue;}throw new Error(_0x42e251[_0x41dc62(0x1f2)]||_0x42e251['error']||_0x2aa9b3[_0x41dc62(0x1cd)]);}throw new Error(_0x2aa9b3['oucNT']);}async function fetchUserProfile(_0x58186a){const _0x566671=_0x2de186,_0x57d9f4={'trvHK':function(_0x3c29c1){return _0x3c29c1();},'baJcr':function(_0x4ce806,_0x4fcd2e,_0x2a6ec3){return _0x4ce806(_0x4fcd2e,_0x2a6ec3);}},_0x566896=_0x57d9f4['trvHK'](getApiBaseUrl);try{const _0x1f4de4=await _0x57d9f4['baJcr'](fetch,_0x566896+'/organization/me',{'method':'GET','headers':{'workos-token':_0x58186a}});if(_0x1f4de4['ok'])return _0x1f4de4[_0x566671(0x1ca)]();}catch{}return null;}function buildKeyName(_0x1e67df,_0x5dc61e){const _0x23ac67=_0x2de186,_0x633e67={'XAsgn':function(_0x226874,_0x4af354){return _0x226874===_0x4af354;}},_0x29e2dc=_0x5dc61e[_0x23ac67(0x1c0)](_0x16749d=>_0x16749d['name']===_0x1e67df||_0x16749d[_0x23ac67(0x1ed)][_0x23ac67(0x1c1)](_0x1e67df+'\x20('));if(_0x633e67[_0x23ac67(0x1b4)](_0x29e2dc[_0x23ac67(0x1c5)],0x0))return _0x1e67df;return _0x1e67df+'\x20('+(_0x29e2dc[_0x23ac67(0x1c5)]+0x1)+')';}export async function provisionApiKey(_0x39e9f6){const _0x3de3b2=_0x2de186,_0x157a19={'EpeCG':function(_0xe17ff5){return _0xe17ff5();},'sLQYv':'CLI\x20Key','dYfzH':function(_0x304ea5,_0xeb856b,_0x3ac792){return _0x304ea5(_0xeb856b,_0x3ac792);},'CPUyO':_0x3de3b2(0x1f6)},_0x284966=_0x157a19['EpeCG'](getApiBaseUrl),_0x1d88a4={'Content-Type':_0x3de3b2(0x1fa),'workos-token':_0x39e9f6},_0x95d670=await fetchUserProfile(_0x39e9f6),_0x45d012=_0x95d670?.[_0x3de3b2(0x1ea)]||_0x95d670?.['email']?.[_0x3de3b2(0x1e0)]('@')[0x0],_0x2bf1e0=_0x45d012?_0x45d012+'\x27s\x20CLI\x20Key':_0x157a19[_0x3de3b2(0x1c2)];let _0x1853c1=[];try{const _0x4dd5e9=await fetch(_0x284966+_0x3de3b2(0x1d8),{'method':_0x3de3b2(0x1bd),'headers':_0x1d88a4});if(_0x4dd5e9['ok']){const _0x38885a=await _0x4dd5e9[_0x3de3b2(0x1ca)]();_0x1853c1=_0x38885a[_0x3de3b2(0x1de)];}}catch{}const _0x3c788c=_0x157a19['dYfzH'](buildKeyName,_0x2bf1e0,_0x1853c1),_0x16732f=await fetch(_0x284966+_0x3de3b2(0x1d8),{'method':'POST','headers':_0x1d88a4,'body':JSON[_0x3de3b2(0x1f5)]({'name':_0x3c788c,'scope':_0x157a19['CPUyO']})});if(!_0x16732f['ok']){const _0x4895a1=await _0x16732f['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x16732f[_0x3de3b2(0x1f9)]+'\x20'+_0x4895a1);}const _0x2b6470=await _0x16732f['json']();return _0x2b6470['apiKey'][_0x3de3b2(0x1ec)];}export function openBrowser(_0x1e26ac){const _0x23df28=_0x2de186,_0x309c65={'HTMZa':_0x23df28(0x1c8),'lzPkv':'darwin','xysvF':function(_0x5483f6,_0x119824,_0x3bc40d,_0x41f339){return _0x5483f6(_0x119824,_0x3bc40d,_0x41f339);},'KIijc':_0x23df28(0x1f7)};try{if(process[_0x23df28(0x1d4)]===_0x23df28(0x1cf)){const _0xc8f92c=spawn('cmd',['/c',_0x309c65['HTMZa'],'',_0x1e26ac],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0xc8f92c[_0x23df28(0x1e6)]();return;}const _0x11f8dc=process[_0x23df28(0x1d4)]===_0x309c65['lzPkv']?_0x23df28(0x1e5):'xdg-open',_0x465ba1=_0x309c65['xysvF'](spawn,_0x11f8dc,[_0x1e26ac],{'detached':!![],'stdio':_0x309c65[_0x23df28(0x1da)]});_0x465ba1['unref']();}catch{}}function decodeJwtPayload(_0x5b6ff0){const _0x40a901=_0x2de186,_0x5a78d9={'LrPZx':_0x40a901(0x1e8),'vUewV':'base64url','vGclB':_0x40a901(0x1f0)},_0x23ee6e=_0x5b6ff0[_0x40a901(0x1e0)]('.');if(_0x23ee6e[_0x40a901(0x1c5)]!==0x3)throw new Error(_0x5a78d9['LrPZx']);const _0x527e8c=Buffer[_0x40a901(0x1b2)](_0x23ee6e[0x1],_0x5a78d9[_0x40a901(0x1d6)])[_0x40a901(0x1bb)](_0x5a78d9['vGclB']);return JSON['parse'](_0x527e8c);}async function selfServeSignup(_0x1e544d){const _0x7d41e1=_0x2de186,_0x297489={'sYqel':function(_0x322687){return _0x322687();},'nyBoL':function(_0x2a9d52,_0x59f4f1,_0x1c86ff){return _0x2a9d52(_0x59f4f1,_0x1c86ff);},'MTqTV':_0x7d41e1(0x1f4)},_0x2151a6=_0x297489[_0x7d41e1(0x1db)](getApiBaseUrl),_0x32e0ba=await _0x297489['nyBoL'](fetch,_0x2151a6+_0x7d41e1(0x1b5),{'method':_0x297489[_0x7d41e1(0x1bf)],'headers':{'Content-Type':'application/json','workos-token':_0x1e544d}});if(!_0x32e0ba['ok']){const _0x507be=await _0x32e0ba[_0x7d41e1(0x1b0)]();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x32e0ba[_0x7d41e1(0x1f9)]+'\x20'+_0x507be);}return _0x32e0ba['json']();}async function fetchMyMemberships(_0x28aea9){const _0x18dae3=_0x2de186,_0x49b134={'gglhy':function(_0x263a66){return _0x263a66();},'kXQNk':function(_0x2dab7c,_0x2d167e,_0x59127b){return _0x2dab7c(_0x2d167e,_0x59127b);}},_0x46d25a=_0x49b134[_0x18dae3(0x1be)](getApiBaseUrl),_0x417cd6=await _0x49b134[_0x18dae3(0x1e3)](fetch,_0x46d25a+_0x18dae3(0x1b8),{'method':_0x18dae3(0x1bd),'headers':{'workos-token':_0x28aea9}});if(!_0x417cd6['ok']){const _0x3794b5=await _0x417cd6['text']();throw new Error(_0x18dae3(0x1ab)+_0x417cd6['status']+'\x20'+_0x3794b5);}const _0x4e2814=await _0x417cd6[_0x18dae3(0x1ca)]();return _0x4e2814[_0x18dae3(0x1d5)];}async function refreshTokenWithOrg(_0x252907,_0x3a2db6,_0x5d65f3){const _0x3eaa31=_0x2de186,_0x5f29f9={'yaaEi':_0x3eaa31(0x1f4),'LcJnl':'refresh_token'},_0x52581d=await fetch(WORKOS_TOKEN_URL,{'method':_0x5f29f9['yaaEi'],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x252907,'grant_type':_0x5f29f9['LcJnl'],'refresh_token':_0x3a2db6,'organization_id':_0x5d65f3})});if(!_0x52581d['ok']){const _0x27ead5=await _0x52581d[_0x3eaa31(0x1b0)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x52581d[_0x3eaa31(0x1f9)]+'\x20'+_0x27ead5);}return _0x52581d[_0x3eaa31(0x1ca)]();}async function provisionCliToken(_0x43b4a0){const _0x42f28f=_0x2de186,_0x118feb={'uFHQi':function(_0x535862,_0x2969ae,_0x4695d6){return _0x535862(_0x2969ae,_0x4695d6);},'hSOiO':'POST','esAoC':_0x42f28f(0x1fa)},_0x15191f=getApiBaseUrl(),_0x2d0053=await _0x118feb['uFHQi'](fetch,_0x15191f+'/cli-auth/token',{'method':_0x118feb[_0x42f28f(0x1c7)],'headers':{'Content-Type':_0x118feb[_0x42f28f(0x1c6)],'workos-token':_0x43b4a0}});if(!_0x2d0053['ok']){const _0x765039=await _0x2d0053['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x2d0053['status']+'\x20'+_0x765039);}return _0x2d0053[_0x42f28f(0x1ca)]();}export async function runDeviceAuthFlow(){const _0x173723=_0x2de186,_0x39e9c5={'KSGgR':_0x173723(0x1d7),'HOtgi':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','JgEmy':function(_0x329100,_0x417e39){return _0x329100(_0x417e39);},'kDLLY':'Waiting\x20for\x20authentication...','OHwUq':'Setting\x20up\x20your\x20organization...','dvlnE':function(_0x2d1b36,_0x533792){return _0x2d1b36+_0x533792;},'tqKyW':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','RKIOd':_0x173723(0x1df),'xLDYN':function(_0x448064,_0x7674d7,_0x14b736,_0x93adae){return _0x448064(_0x7674d7,_0x14b736,_0x93adae);},'WQSFn':'Provisioning\x20CLI\x20token...'},_0xf5b0=getCurrentEnvironment(),_0x47dc19=ENVIRONMENT_CONFIGS[_0xf5b0][_0x173723(0x1d1)],_0x5a7260=await requestDeviceCode(_0x47dc19);console['log'](_0x39e9c5['KSGgR']),console['log'](_0x39e9c5[_0x173723(0x1d0)]),_0x39e9c5['JgEmy'](openBrowser,_0x5a7260[_0x173723(0x1b9)]),console[_0x173723(0x1dc)](_0x173723(0x1b7)+_0x5a7260['verification_uri_complete']),console[_0x173723(0x1dc)]('Code:\x20'+_0x5a7260['user_code']+'\x0a'),process[_0x173723(0x1b6)][_0x173723(0x1f3)](_0x39e9c5[_0x173723(0x1ae)]);let _0x586ea8=await pollForTokens(_0x47dc19,_0x5a7260[_0x173723(0x1a9)],_0x5a7260['interval'],_0x5a7260[_0x173723(0x1b1)]);console['log']('\x20✓');const _0x737ad0=decodeJwtPayload(_0x586ea8['access_token']);if(!_0x737ad0[_0x173723(0x1d3)]){const _0x135266=await fetchMyMemberships(_0x586ea8['access_token']);let _0x305cb1;if(_0x135266['length']===0x0){process[_0x173723(0x1b6)][_0x173723(0x1f3)](_0x39e9c5[_0x173723(0x1ba)]);const _0x1f00ef=await selfServeSignup(_0x586ea8['access_token']);_0x305cb1=_0x1f00ef['organizationId'],console[_0x173723(0x1dc)]('\x20✓');}else{if(_0x135266[_0x173723(0x1c5)]===0x1)_0x305cb1=_0x135266[0x0]['organizationId'],console['log']('Using\x20organization:\x20'+_0x135266[0x0]['name']);else{const _0x11bf37=process['stdin']['isTTY']&&process['stdout'][_0x173723(0x1c9)];if(!_0x11bf37)throw new Error(_0x39e9c5['dvlnE'](_0x39e9c5[_0x173723(0x1aa)],'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.'));const {selected:_0x127468}=await _0x5e647c['prompt']([{'type':_0x173723(0x1f1),'name':_0x173723(0x1ce),'message':_0x39e9c5[_0x173723(0x1cb)],'choices':_0x135266['map'](_0x4cd7d0=>({'name':_0x4cd7d0['name'],'value':_0x4cd7d0['organizationId']}))}]);_0x305cb1=_0x127468;}}_0x586ea8=await _0x39e9c5['xLDYN'](refreshTokenWithOrg,_0x47dc19,_0x586ea8['refresh_token'],_0x305cb1);}process['stdout'][_0x173723(0x1f3)](_0x39e9c5['WQSFn']);const _0x275072=await provisionCliToken(_0x586ea8['access_token']);return console['log']('\x20✓'),await _0x39e9c5['JgEmy'](storeToken,_0x275072[_0x173723(0x1ec)]),_0x586ea8[_0x173723(0x1ef)]&&await storeRefreshToken(_0x586ea8['refresh_token']),_0x275072[_0x173723(0x1ec)];}function sleep(_0x8ce0b1){return new Promise(_0x751d65=>setTimeout(_0x751d65,_0x8ce0b1));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x3b07cd=_0x36d3;(function(_0xada356,_0x58db96){const _0x2dda56=_0x36d3,_0x5e22d5=_0xada356();while(!![]){try{const _0x9bec4=parseInt(_0x2dda56(0x164))/0x1+parseInt(_0x2dda56(0x178))/0x2*(-parseInt(_0x2dda56(0x176))/0x3)+-parseInt(_0x2dda56(0x16d))/0x4+-parseInt(_0x2dda56(0x158))/0x5*(parseInt(_0x2dda56(0x16c))/0x6)+parseInt(_0x2dda56(0x16e))/0x7*(parseInt(_0x2dda56(0x16b))/0x8)+-parseInt(_0x2dda56(0x168))/0x9*(-parseInt(_0x2dda56(0x179))/0xa)+parseInt(_0x2dda56(0x162))/0xb;if(_0x9bec4===_0x58db96)break;else _0x5e22d5['push'](_0x5e22d5['shift']());}catch(_0x370400){_0x5e22d5['push'](_0x5e22d5['shift']());}}}(_0x2063,0xbf20c));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':_0x3b07cd(0x181)},'staging':{'apiBaseUrl':_0x3b07cd(0x16f),'workosClientId':_0x3b07cd(0x170),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':'http://localhost:8080','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT=_0x3b07cd(0x171);export function isValidEnvironment(_0x23e573){const _0x1953fc=_0x3b07cd,_0x12caf9={'zCqXQ':'prod','DqFDl':function(_0x31396f,_0x483ce4){return _0x31396f===_0x483ce4;},'ZmlHA':_0x1953fc(0x15e),'zqWzz':function(_0x3c6413,_0x4bcf5f){return _0x3c6413===_0x4bcf5f;},'OoHpQ':_0x1953fc(0x167)};return _0x23e573===_0x12caf9[_0x1953fc(0x177)]||_0x12caf9[_0x1953fc(0x180)](_0x23e573,_0x12caf9['ZmlHA'])||_0x12caf9[_0x1953fc(0x17a)](_0x23e573,_0x12caf9[_0x1953fc(0x17d)]);}export function getCurrentEnvironment(){const _0xc36143=_0x3b07cd,_0x5e1e14={'ZADYU':function(_0x7782d5,_0xd7842e){return _0x7782d5(_0xd7842e);}},_0x491596=process[_0xc36143(0x166)]['RANGER_CLI_ENV'];if(_0x491596&&_0x5e1e14['ZADYU'](isValidEnvironment,_0x491596))return _0x491596;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['apiBaseUrl'];}function _0x36d3(_0x1084e4,_0x23c1e0){_0x1084e4=_0x1084e4-0x158;const _0x20637f=_0x2063();let _0x36d3b7=_0x20637f[_0x1084e4];return _0x36d3b7;}export function getAiProxyUrl(){const _0xc41314=_0x3b07cd,_0x273c24={'vypGR':function(_0x3ce3ab){return _0x3ce3ab();}};return ENVIRONMENT_CONFIGS[_0x273c24[_0xc41314(0x160)](getCurrentEnvironment)]['aiProxyUrl'];}export function getMcpAuthUrl(){return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['mcpAuthUrl'];}export function isByokEnabled(){const _0x21a5b0=_0x3b07cd,_0xecbf89={'jFzWv':function(_0x15a3f8,_0x5121e3){return _0x15a3f8===_0x5121e3;},'uknBk':'true'};return _0xecbf89['jFzWv'](process[_0x21a5b0(0x166)]['RANGER_BYOK'],_0xecbf89[_0x21a5b0(0x16a)]);}function _0x2063(){const _0x41c7d1=['Invalid\x20RANGER_TRANSPORT=\x22','trim','RANGER_TRANSPORT','87YwBbBU','zCqXQ','92804PjyqYU','968010RoSgDt','zqWzz','EYsze','[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22','OoHpQ','toLowerCase','\x22.\x20','DqFDl','https://mcp-auth.ranger.net/mcp','1352050PdjSey','nova-act-cli','SbFLE','playwright-cli','rangerwright-cli','RANGER_DISABLE_MCP','staging','RANGER_HOOKS','vypGR','RANGER_USE_NOVA_ACT','23503469BiqARw','auto','796827MDfAKi','mcp','env','local','9cRbUJa','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','uknBk','29864vpOdgR','18scXnxe','4797040clVqqi','2079fqSHKe','https://api.staging.ranger.net','client_01J9CBYM2DKWV9HM17D95Z540K','prod','AeFmK'];_0x2063=function(){return _0x41c7d1;};return _0x2063();}function isVerificationTransport(_0xb58a72){const _0xc1f55=_0x3b07cd,_0x1ed569={'IuTMM':function(_0xd065b7,_0x583ed0){return _0xd065b7===_0x583ed0;},'AeFmK':_0xc1f55(0x165),'NrwrH':_0xc1f55(0x15b),'EYsze':function(_0x2921da,_0x329a03){return _0x2921da===_0x329a03;},'newdL':_0xc1f55(0x15c)};return _0x1ed569['IuTMM'](_0xb58a72,_0x1ed569[_0xc1f55(0x172)])||_0xb58a72===_0x1ed569['NrwrH']||_0x1ed569[_0xc1f55(0x17b)](_0xb58a72,_0xc1f55(0x159))||_0xb58a72===_0x1ed569['newdL'];}const LEGACY_TRANSPORT_ENV_VARS=[_0x3b07cd(0x161),_0x3b07cd(0x15d)];export function getVerificationTransport(){const _0x679939=_0x3b07cd,_0x2afd5e={'QqoLq':function(_0x45cf55,_0x3c67c2){return _0x45cf55(_0x3c67c2);}},_0x2906c0=process['env'][_0x679939(0x175)]?.[_0x679939(0x174)]();if(_0x2906c0){if(_0x2afd5e['QqoLq'](isVerificationTransport,_0x2906c0))return _0x2906c0;throw new Error(_0x679939(0x173)+_0x2906c0+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x2d39f3=LEGACY_TRANSPORT_ENV_VARS['find'](_0x1fd0d3=>process[_0x679939(0x166)][_0x1fd0d3]);if(_0x2d39f3)throw new Error(_0x2d39f3+_0x679939(0x169));return _0x679939(0x165);}export function resolveHookMode(_0x2ac668=process['env']){const _0x35b873=_0x3b07cd,_0x55b012={'SbFLE':function(_0x494b2e,_0x363138){return _0x494b2e===_0x363138;},'PizQr':function(_0x51e35f,_0x5edc5e){return _0x51e35f+_0x5edc5e;}},_0x258e4d=_0x2ac668[_0x35b873(0x15f)]?.['trim']()[_0x35b873(0x17e)]();if(!_0x258e4d)return _0x35b873(0x163);if(_0x55b012[_0x35b873(0x15a)](_0x258e4d,'off')||_0x258e4d==='on'||_0x258e4d==='auto')return _0x258e4d;return console['error'](_0x55b012['PizQr'](_0x35b873(0x17c)+_0x2ac668['RANGER_HOOKS']+_0x35b873(0x17f),'Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.')),'auto';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x25cd29,_0x1b6d88){const _0x2c32b1=_0x5158,_0x195c4d=_0x25cd29();while(!![]){try{const _0x4fac79=parseInt(_0x2c32b1(0xfb))/0x1*(parseInt(_0x2c32b1(0x11b))/0x2)+-parseInt(_0x2c32b1(0xf4))/0x3*(parseInt(_0x2c32b1(0x107))/0x4)+-parseInt(_0x2c32b1(0x10d))/0x5+parseInt(_0x2c32b1(0x10c))/0x6+parseInt(_0x2c32b1(0x109))/0x7+-parseInt(_0x2c32b1(0x104))/0x8+parseInt(_0x2c32b1(0x115))/0x9*(parseInt(_0x2c32b1(0xf0))/0xa);if(_0x4fac79===_0x1b6d88)break;else _0x195c4d['push'](_0x195c4d['shift']());}catch(_0x256dc3){_0x195c4d['push'](_0x195c4d['shift']());}}}(_0x3e7b,0x481f0));function _0x3e7b(){const _0x4006f7=['style','AcpYF','KysCN','SgbaK','EfPvC','aapxO','3889744fVXLUC','HjSPs','OMFWK','14684jzNEyz','DIhmq','630679tnEkpa','\x0a\x0aUpgrade\x20your\x20plan:\x20','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','3016350WNcwxl','1282805OMFifo','cfQmd','text','Failed\x20to\x20restore\x20feature\x20review:\x20','sessionId','https://dashboard.ranger.net/billing','stringify','POST','9qXLocN','NRvHq','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','ZnAhg','gitBranch','aFNNe','409918UTFkqe','Bearer\x20','HzDQa','/comments/address','status','Failed\x20to\x20create\x20scenario:\x20','join','itemIds','message','/report/markdown','xIxIo','DmGtA','/feedback','Failed\x20to\x20update\x20scenario:\x20','json','/checklist/','/conclude','Failed\x20to\x20get\x20feature\x20review:\x20','/api/v1/mcp/features','bNqHc','GET','RIlrX','/api/v1/mcp/features/','limit','toString','billingUrl','sEGXp','JpSvA','application/json','set','4129430fuugES','agiaq','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','DELETE','141oYfHNm','/checklist-items/','NOEvg','/report','PATCH','/action-items','Cuumc','1tVGHEn','/sessions/','gitRepoUrl'];_0x3e7b=function(){return _0x4006f7;};return _0x3e7b();}import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x2a1c4b){const _0x553bba=_0x5158,_0x57b978={'UcVhe':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','TIPJI':'POST','SgbaK':_0x553bba(0xee),'jWsBW':function(_0x4078aa,_0x24a3d9){return _0x4078aa===_0x24a3d9;},'DmGtA':_0x553bba(0x112),'XfbOc':'Feature\x20limit\x20exceeded'},_0x1eab62=await getToken();if(!_0x1eab62)throw new Error(_0x57b978['UcVhe']);const _0xae492d=getApiBaseUrl(),_0x1cae9b=await fetch(_0xae492d+_0x553bba(0x12d),{'method':_0x57b978['TIPJI'],'headers':{'Authorization':_0x553bba(0x11c)+_0x1eab62,'Content-Type':_0x57b978[_0x553bba(0x101)]},'body':JSON['stringify'](_0x2a1c4b)});if(!_0x1cae9b['ok']){if(_0x57b978['jWsBW'](_0x1cae9b[_0x553bba(0x11f)],0x192)){const _0xbf29c9=await _0x1cae9b['json'](),_0x4f5a8c=_0xbf29c9[_0x553bba(0xeb)]||_0x57b978[_0x553bba(0x126)];throw new Error((_0xbf29c9[_0x553bba(0x123)]||_0x57b978['XfbOc'])+_0x553bba(0x10a)+_0x4f5a8c);}const _0x3ecf11=await _0x1cae9b['text']();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x3ecf11);}return _0x1cae9b['json']();}export async function listFeatures(_0x2ef00d){const _0x3b6a67=_0x5158,_0x1a8e08={'NRvHq':_0x3b6a67(0x10b),'cfQmd':'gitBranch','gGZzF':'true','AtGwt':'GET'},_0x487f8d=await getToken();if(!_0x487f8d)throw new Error(_0x1a8e08[_0x3b6a67(0x116)]);const _0xdcadf7=getApiBaseUrl(),_0x2760f6=new URLSearchParams();if(_0x2ef00d?.[_0x3b6a67(0xfd)])_0x2760f6[_0x3b6a67(0xef)]('gitRepoUrl',_0x2ef00d['gitRepoUrl']);if(_0x2ef00d?.['gitBranch'])_0x2760f6[_0x3b6a67(0xef)](_0x1a8e08[_0x3b6a67(0x10e)],_0x2ef00d[_0x3b6a67(0x119)]);if(_0x2ef00d?.['limit'])_0x2760f6['set']('limit',_0x2ef00d[_0x3b6a67(0x132)][_0x3b6a67(0x133)]());if(_0x2ef00d?.['offset'])_0x2760f6['set']('offset',_0x2ef00d['offset']['toString']());if(_0x2ef00d?.['includeDeleted'])_0x2760f6[_0x3b6a67(0xef)]('includeDeleted',_0x1a8e08['gGZzF']);const _0x353b90=_0xdcadf7+'/api/v1/mcp/features'+(_0x2760f6[_0x3b6a67(0x133)]()?'?'+_0x2760f6['toString']():''),_0x17f235=await fetch(_0x353b90,{'method':_0x1a8e08['AtGwt'],'headers':{'Authorization':_0x3b6a67(0x11c)+_0x487f8d}});if(!_0x17f235['ok']){const _0x81ea80=await _0x17f235['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x81ea80);}return _0x17f235[_0x3b6a67(0x129)]();}export async function getFeature(_0x1f43e0){const _0x5f207f=_0x5158,_0x22313d={'dRoIa':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','sEGXp':function(_0x4a6f6a,_0x1d61b9,_0x3f06d4){return _0x4a6f6a(_0x1d61b9,_0x3f06d4);}},_0xaf74df=await getToken();if(!_0xaf74df)throw new Error(_0x22313d['dRoIa']);const _0x2df858=getApiBaseUrl(),_0x4188b6=await _0x22313d[_0x5f207f(0xec)](fetch,_0x2df858+'/api/v1/mcp/features/'+_0x1f43e0,{'method':_0x5f207f(0x12f),'headers':{'Authorization':'Bearer\x20'+_0xaf74df}});if(!_0x4188b6['ok']){const _0x1e92ff=await _0x4188b6[_0x5f207f(0x10f)]();throw new Error(_0x5f207f(0x12c)+_0x1e92ff);}return _0x4188b6['json']();}export async function updateFeature(_0xa084dc,_0x14534b){const _0x2a56cb=_0x5158,_0x58f042={'qqEcj':function(_0x224c3f,_0x154b50,_0x383042){return _0x224c3f(_0x154b50,_0x383042);},'AcpYF':_0x2a56cb(0xf8),'BWlVj':_0x2a56cb(0xee)},_0x24cacc=await getToken();if(!_0x24cacc)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x30b022=getApiBaseUrl(),_0x33d407=await _0x58f042['qqEcj'](fetch,_0x30b022+'/api/v1/mcp/features/'+_0xa084dc,{'method':_0x58f042[_0x2a56cb(0xff)],'headers':{'Authorization':_0x2a56cb(0x11c)+_0x24cacc,'Content-Type':_0x58f042['BWlVj']},'body':JSON[_0x2a56cb(0x113)](_0x14534b)});if(!_0x33d407['ok']){const _0x1c8fd5=await _0x33d407['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x1c8fd5);}return _0x33d407[_0x2a56cb(0x129)]();}export async function createChecklistItem(_0x1d50d9,_0x59cf14,_0x5c2678){const _0x4467a5=_0x5158,_0x5ac4aa={'bNqHc':function(_0x380781){return _0x380781();},'KysCN':'POST'},_0x1579ef=await _0x5ac4aa[_0x4467a5(0x12e)](getToken);if(!_0x1579ef)throw new Error(_0x4467a5(0x10b));const _0x306c55=getApiBaseUrl(),_0x468465=await fetch(_0x306c55+'/api/v1/mcp/features/'+_0x1d50d9+'/checklist',{'method':_0x5ac4aa[_0x4467a5(0x100)],'headers':{'Authorization':_0x4467a5(0x11c)+_0x1579ef,'Content-Type':'application/json'},'body':JSON['stringify']({'description':_0x59cf14,'position':_0x5c2678})});if(!_0x468465['ok']){const _0x42014e=await _0x468465['text']();throw new Error(_0x4467a5(0x120)+_0x42014e);}return _0x468465['json']();}export async function updateChecklistItem(_0x2bea41,_0x10f327,_0x7087ff){const _0x49712f={'QtpOn':function(_0x12871f){return _0x12871f();},'HjSPs':function(_0x52555e){return _0x52555e();},'WaiTU':'updateChecklistItem'};return withRetry(async()=>{const _0x39ad6c=_0x5158,_0x4474d9=await _0x49712f['QtpOn'](getToken);if(!_0x4474d9)throw new Error(_0x39ad6c(0x10b));const _0x15287d=_0x49712f[_0x39ad6c(0x105)](getApiBaseUrl),_0x528f0b=await fetch(_0x15287d+_0x39ad6c(0x131)+_0x2bea41+_0x39ad6c(0x12a)+_0x10f327,{'method':_0x39ad6c(0xf8),'headers':{'Authorization':_0x39ad6c(0x11c)+_0x4474d9,'Content-Type':_0x39ad6c(0xee)},'body':JSON['stringify'](_0x7087ff)});if(!_0x528f0b['ok']){const _0x54bb9d=await _0x528f0b[_0x39ad6c(0x10f)]();throw new Error(_0x39ad6c(0x128)+_0x54bb9d);}return _0x528f0b[_0x39ad6c(0x129)]();},{'label':_0x49712f['WaiTU']});}export async function getFeatureReport(_0x30ffd5){const _0xef6a9d=_0x5158,_0x2080ca={'HzDQa':function(_0x5a6e8d,_0x4811fb,_0x2b6f09){return _0x5a6e8d(_0x4811fb,_0x2b6f09);}},_0x3f4a35=await getToken();if(!_0x3f4a35)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x536f0c=getApiBaseUrl(),_0x4fd873=await _0x2080ca[_0xef6a9d(0x11d)](fetch,_0x536f0c+'/api/v1/mcp/features/'+_0x30ffd5+_0xef6a9d(0xf7),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x3f4a35}});if(!_0x4fd873['ok']){const _0x30acf6=await _0x4fd873[_0xef6a9d(0x10f)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x30acf6);}return _0x4fd873[_0xef6a9d(0x129)]();}export async function getFeatureReportMarkdown(_0x224d5d,_0x287f92){const _0x145ad2=_0x5158,_0x16f7ec={'OMFWK':function(_0x1bd5b8){return _0x1bd5b8();},'NOEvg':_0x145ad2(0x10b),'EfPvC':function(_0x5e63df,_0x24da4d){return _0x5e63df>_0x24da4d;},'KbGak':function(_0x3da565,_0x239c0c){return _0x3da565(_0x239c0c);},'Cuumc':'itemIds','VNPat':function(_0x2a2a4a,_0x3ee5a0){return _0x2a2a4a&&_0x3ee5a0;}},_0x2fe274=await _0x16f7ec[_0x145ad2(0x106)](getToken);if(!_0x2fe274)throw new Error(_0x16f7ec[_0x145ad2(0xf6)]);const _0x2d1a8b=_0x16f7ec[_0x145ad2(0x106)](getApiBaseUrl),_0x2fe3af=new URLSearchParams(),_0x5acd92=_0x16f7ec[_0x145ad2(0x102)](_0x287f92?.['itemIds']?.['length']??0x0,0x0),_0x4014fa=_0x16f7ec['KbGak'](Boolean,_0x287f92?.['sessionId']);_0x5acd92&&_0x287f92?.['itemIds']&&_0x2fe3af[_0x145ad2(0xef)](_0x16f7ec[_0x145ad2(0xfa)],_0x287f92[_0x145ad2(0x122)][_0x145ad2(0x121)](','));_0x4014fa&&_0x287f92?.[_0x145ad2(0x111)]&&_0x2fe3af['set']('sessionId',_0x287f92[_0x145ad2(0x111)]);_0x16f7ec['VNPat'](!_0x5acd92,!_0x4014fa)&&_0x287f92?.[_0x145ad2(0xfe)]&&_0x2fe3af[_0x145ad2(0xef)]('style',_0x287f92['style']);const _0x47493d=_0x2d1a8b+_0x145ad2(0x131)+_0x224d5d+_0x145ad2(0x124),_0x1e2129=''+_0x47493d+(_0x2fe3af[_0x145ad2(0x133)]()?'?'+_0x2fe3af[_0x145ad2(0x133)]():''),_0x2df1f7=await fetch(_0x1e2129,{'method':_0x145ad2(0x12f),'headers':{'Authorization':_0x145ad2(0x11c)+_0x2fe274}});if(!_0x2df1f7['ok']){const _0x48a413=await _0x2df1f7[_0x145ad2(0x10f)]();throw new Error(_0x145ad2(0x117)+_0x48a413);}return _0x2df1f7[_0x145ad2(0x10f)]();}export async function listFeatureSessions(_0x2fa566){const _0x27ad50=_0x5158,_0x2407cd={'UHHYW':_0x27ad50(0x10b),'UkVBC':function(_0x11209d,_0x196b90,_0x54a6b4){return _0x11209d(_0x196b90,_0x54a6b4);},'aapxO':'GET'},_0x2ba27b=await getToken();if(!_0x2ba27b)throw new Error(_0x2407cd['UHHYW']);const _0x97722=getApiBaseUrl(),_0x5ae5f0=await _0x2407cd['UkVBC'](fetch,_0x97722+_0x27ad50(0x131)+_0x2fa566+'/sessions',{'method':_0x2407cd[_0x27ad50(0x103)],'headers':{'Authorization':'Bearer\x20'+_0x2ba27b}});if(!_0x5ae5f0['ok']){const _0x24980c=await _0x5ae5f0[_0x27ad50(0x10f)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x24980c);}return _0x5ae5f0[_0x27ad50(0x129)]();}export async function startSession(_0x2f84b3,_0x3335c3){const _0x351795=_0x5158,_0x55e1a6={'xIxIo':function(_0x4d1350){return _0x4d1350();},'thXgy':_0x351795(0x114)},_0x25971d=await _0x55e1a6[_0x351795(0x125)](getToken);if(!_0x25971d)throw new Error(_0x351795(0x10b));const _0x3ca030=getApiBaseUrl(),_0x34b020=await fetch(_0x3ca030+_0x351795(0x131)+_0x2f84b3+'/sessions/'+_0x3335c3+'/start',{'method':_0x55e1a6['thXgy'],'headers':{'Authorization':_0x351795(0x11c)+_0x25971d}});if(!_0x34b020['ok']){const _0x25a472=await _0x34b020['text']();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x25a472);}return _0x34b020[_0x351795(0x129)]();}export async function concludeSession(_0x404233,_0x2f03bc){const _0x3b3b20=_0x5158,_0x51c203={'CLcyB':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x10e8db=await getToken();if(!_0x10e8db)throw new Error(_0x51c203['CLcyB']);const _0x5a2066=getApiBaseUrl(),_0x5ab550=await fetch(_0x5a2066+'/api/v1/mcp/features/'+_0x404233+_0x3b3b20(0xfc)+_0x2f03bc+_0x3b3b20(0x12b),{'method':_0x3b3b20(0x114),'headers':{'Authorization':'Bearer\x20'+_0x10e8db}});if(!_0x5ab550['ok']){const _0x689fe2=await _0x5ab550['text']();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x689fe2);}return _0x5ab550[_0x3b3b20(0x129)]();}export async function getActionItems(_0x5f0ee0){const _0x139827=_0x5158,_0x5b1e5d={'HfwUJ':function(_0x5a1e56){return _0x5a1e56();},'kdvgJ':function(_0x4d6059,_0x420b86,_0x492b4e){return _0x4d6059(_0x420b86,_0x492b4e);},'JpSvA':'GET'},_0x2ac7e5=await _0x5b1e5d['HfwUJ'](getToken);if(!_0x2ac7e5)throw new Error(_0x139827(0x10b));const _0x335399=_0x5b1e5d['HfwUJ'](getApiBaseUrl),_0x44b596=await _0x5b1e5d['kdvgJ'](fetch,_0x335399+_0x139827(0x131)+_0x5f0ee0+_0x139827(0xf9),{'method':_0x5b1e5d[_0x139827(0xed)],'headers':{'Authorization':'Bearer\x20'+_0x2ac7e5}});if(!_0x44b596['ok']){const _0x30caab=await _0x44b596['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x30caab);}return _0x44b596[_0x139827(0x129)]();}export async function getItemFeedback(_0x38b885,_0x4c9428){const _0x31ae34=_0x5158,_0x1afd4b={'agiaq':function(_0x11e9cc){return _0x11e9cc();},'PorSa':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','DIhmq':function(_0x587032,_0x422fd8,_0x2aca7d){return _0x587032(_0x422fd8,_0x2aca7d);}},_0x1ad160=await _0x1afd4b[_0x31ae34(0xf1)](getToken);if(!_0x1ad160)throw new Error(_0x1afd4b['PorSa']);const _0x2883cf=getApiBaseUrl(),_0x2a1aae=await _0x1afd4b[_0x31ae34(0x108)](fetch,_0x2883cf+_0x31ae34(0x131)+_0x38b885+_0x31ae34(0xf5)+_0x4c9428+_0x31ae34(0x127),{'method':_0x31ae34(0x12f),'headers':{'Authorization':_0x31ae34(0x11c)+_0x1ad160}});if(!_0x2a1aae['ok']){const _0x2ef9c1=await _0x2a1aae[_0x31ae34(0x10f)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x2ef9c1);}return _0x2a1aae[_0x31ae34(0x129)]();}export async function markCommentsAddressed(_0x3d3329,_0x2042cb,_0x40aeb7){const _0x4e626f=_0x5158,_0x12b80f={'EdJBH':function(_0x124759){return _0x124759();},'aFNNe':function(_0x4af153,_0x22be60,_0x448ad1){return _0x4af153(_0x22be60,_0x448ad1);},'EzNax':'POST'},_0x222738=await getToken();if(!_0x222738)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x38d0c3=_0x12b80f['EdJBH'](getApiBaseUrl),_0xee4cba=await _0x12b80f[_0x4e626f(0x11a)](fetch,_0x38d0c3+'/api/v1/mcp/features/'+_0x3d3329+_0x4e626f(0x11e),{'method':_0x12b80f['EzNax'],'headers':{'Authorization':_0x4e626f(0x11c)+_0x222738,'Content-Type':'application/json'},'body':JSON['stringify']({'checklistItemId':_0x2042cb,'commentIds':_0x40aeb7})});if(!_0xee4cba['ok']){const _0x336965=await _0xee4cba['text']();throw new Error(_0x4e626f(0xf2)+_0x336965);}}export async function softDeleteFeature(_0xc10e62){const _0x308a4b=_0x5158,_0x21f2d9={'RIlrX':_0x308a4b(0x10b)},_0x33d987=await getToken();if(!_0x33d987)throw new Error(_0x21f2d9[_0x308a4b(0x130)]);const _0x562eca=getApiBaseUrl(),_0x2ac351=await fetch(_0x562eca+'/api/v1/mcp/features/'+_0xc10e62,{'method':_0x308a4b(0xf3),'headers':{'Authorization':_0x308a4b(0x11c)+_0x33d987}});if(!_0x2ac351['ok']){const _0x32e579=await _0x2ac351[_0x308a4b(0x10f)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x32e579);}}function _0x5158(_0xbdfbe2,_0x263d2f){_0xbdfbe2=_0xbdfbe2-0xeb;const _0x3e7b1b=_0x3e7b();let _0x51582f=_0x3e7b1b[_0xbdfbe2];return _0x51582f;}export async function restoreFeature(_0x40c51b){const _0x18a624=_0x5158,_0x1d3048={'ZnAhg':function(_0x58d3b0,_0x308d23,_0x4614a1){return _0x58d3b0(_0x308d23,_0x4614a1);}},_0x26aea4=await getToken();if(!_0x26aea4)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x11f377=getApiBaseUrl(),_0x3d1702=await _0x1d3048[_0x18a624(0x118)](fetch,_0x11f377+_0x18a624(0x131)+_0x40c51b+'/restore',{'method':_0x18a624(0x114),'headers':{'Authorization':'Bearer\x20'+_0x26aea4}});if(!_0x3d1702['ok']){const _0xf0d55b=await _0x3d1702[_0x18a624(0x10f)]();throw new Error(_0x18a624(0x110)+_0xf0d55b);}}
|
|
1
|
+
(function(_0xf9f2f9,_0x512f49){const _0x2b17fd=_0x3ffc,_0x474412=_0xf9f2f9();while(!![]){try{const _0x5195ba=-parseInt(_0x2b17fd(0x1b0))/0x1*(parseInt(_0x2b17fd(0x1cb))/0x2)+parseInt(_0x2b17fd(0x1c0))/0x3+parseInt(_0x2b17fd(0x1dd))/0x4*(-parseInt(_0x2b17fd(0x1bd))/0x5)+parseInt(_0x2b17fd(0x1ce))/0x6+parseInt(_0x2b17fd(0x1d0))/0x7+parseInt(_0x2b17fd(0x1e4))/0x8+-parseInt(_0x2b17fd(0x1c6))/0x9;if(_0x5195ba===_0x512f49)break;else _0x474412['push'](_0x474412['shift']());}catch(_0x40cee9){_0x474412['push'](_0x474412['shift']());}}}(_0x5148,0xd51f1));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x3e3626){const _0x26be7e=_0x3ffc,_0x1f03dc={'dcztR':function(_0x317b2f){return _0x317b2f();},'ijMnK':function(_0x2a86b1,_0x34c5fb,_0x65eec4){return _0x2a86b1(_0x34c5fb,_0x65eec4);},'HkxpF':'application/json','JYsOA':_0x26be7e(0x1d7)},_0x23e46f=await getToken();if(!_0x23e46f)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x4dc44a=_0x1f03dc[_0x26be7e(0x1db)](getApiBaseUrl),_0x40daa6=await _0x1f03dc['ijMnK'](fetch,_0x4dc44a+_0x26be7e(0x1a8),{'method':_0x26be7e(0x1bc),'headers':{'Authorization':'Bearer\x20'+_0x23e46f,'Content-Type':_0x1f03dc['HkxpF']},'body':JSON[_0x26be7e(0x1b2)](_0x3e3626)});if(!_0x40daa6['ok']){if(_0x40daa6[_0x26be7e(0x1de)]===0x192){const _0x42bec3=await _0x40daa6['json'](),_0x2ce50f=_0x42bec3[_0x26be7e(0x1d1)]||'https://dashboard.ranger.net/billing';throw new Error((_0x42bec3['message']||_0x1f03dc[_0x26be7e(0x1c1)])+_0x26be7e(0x1e2)+_0x2ce50f);}const _0x9a9aca=await _0x40daa6[_0x26be7e(0x1c5)]();throw new Error(_0x26be7e(0x1ba)+_0x9a9aca);}return _0x40daa6[_0x26be7e(0x1c3)]();}export async function listFeatures(_0x5b5f41){const _0x5d39ce=_0x3ffc,_0x23ffe9={'FHBrB':function(_0x51e2d3){return _0x51e2d3();},'kddGA':_0x5d39ce(0x1b9),'GUTWJ':'gitBranch','zAceA':'offset','ZvAyJ':'includeDeleted','oATLr':function(_0x5e9e40,_0x542908,_0x3cfe2d){return _0x5e9e40(_0x542908,_0x3cfe2d);}},_0x4d429d=await _0x23ffe9['FHBrB'](getToken);if(!_0x4d429d)throw new Error(_0x23ffe9['kddGA']);const _0x5f8f8f=getApiBaseUrl(),_0x51a404=new URLSearchParams();if(_0x5b5f41?.[_0x5d39ce(0x1ec)])_0x51a404[_0x5d39ce(0x1d4)](_0x5d39ce(0x1ec),_0x5b5f41['gitRepoUrl']);if(_0x5b5f41?.['gitBranch'])_0x51a404['set'](_0x23ffe9[_0x5d39ce(0x1e0)],_0x5b5f41['gitBranch']);if(_0x5b5f41?.[_0x5d39ce(0x1bb)])_0x51a404['set'](_0x5d39ce(0x1bb),_0x5b5f41[_0x5d39ce(0x1bb)][_0x5d39ce(0x1d3)]());if(_0x5b5f41?.[_0x5d39ce(0x1a7)])_0x51a404['set'](_0x23ffe9['zAceA'],_0x5b5f41[_0x5d39ce(0x1a7)][_0x5d39ce(0x1d3)]());if(_0x5b5f41?.[_0x5d39ce(0x1ae)])_0x51a404['set'](_0x23ffe9[_0x5d39ce(0x1a3)],_0x5d39ce(0x1e3));const _0x53144a=_0x5f8f8f+_0x5d39ce(0x1a8)+(_0x51a404[_0x5d39ce(0x1d3)]()?'?'+_0x51a404[_0x5d39ce(0x1d3)]():''),_0x718c23=await _0x23ffe9['oATLr'](fetch,_0x53144a,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x4d429d}});if(!_0x718c23['ok']){const _0x384a3e=await _0x718c23['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x384a3e);}return _0x718c23[_0x5d39ce(0x1c3)]();}export async function getFeature(_0x5ee3f3){const _0x5efca7=_0x3ffc,_0x692c5a={'ksVSj':_0x5efca7(0x1b9),'kyvve':function(_0x43c15c){return _0x43c15c();}},_0x3010c5=await getToken();if(!_0x3010c5)throw new Error(_0x692c5a[_0x5efca7(0x1b4)]);const _0x540acf=_0x692c5a[_0x5efca7(0x1ab)](getApiBaseUrl),_0x10271f=await fetch(_0x540acf+'/api/v1/mcp/features/'+_0x5ee3f3,{'method':_0x5efca7(0x1b8),'headers':{'Authorization':_0x5efca7(0x1ad)+_0x3010c5}});if(!_0x10271f['ok']){const _0x3eb2ba=await _0x10271f[_0x5efca7(0x1c5)]();throw new Error(_0x5efca7(0x1bf)+_0x3eb2ba);}return _0x10271f['json']();}export async function updateFeature(_0x40fbc9,_0x5e0e87){const _0x4bbedb=_0x3ffc,_0x55eff1={'yipOc':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','CtaOm':function(_0x31edde,_0x3d644e,_0x26c9fd){return _0x31edde(_0x3d644e,_0x26c9fd);},'hHBCZ':_0x4bbedb(0x1c4)},_0x12dd3e=await getToken();if(!_0x12dd3e)throw new Error(_0x55eff1[_0x4bbedb(0x1ef)]);const _0x19a050=getApiBaseUrl(),_0x535f51=await _0x55eff1[_0x4bbedb(0x1e9)](fetch,_0x19a050+_0x4bbedb(0x1e8)+_0x40fbc9,{'method':_0x4bbedb(0x1aa),'headers':{'Authorization':'Bearer\x20'+_0x12dd3e,'Content-Type':_0x55eff1['hHBCZ']},'body':JSON[_0x4bbedb(0x1b2)](_0x5e0e87)});if(!_0x535f51['ok']){const _0x33b0d7=await _0x535f51['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x33b0d7);}return _0x535f51[_0x4bbedb(0x1c3)]();}function _0x3ffc(_0x399447,_0x22eeef){_0x399447=_0x399447-0x1a3;const _0x51482d=_0x5148();let _0x3ffc35=_0x51482d[_0x399447];return _0x3ffc35;}export async function createChecklistItem(_0x3eb94e,_0x2dd6f5,_0x13b416){const _0x3daa2d=_0x3ffc,_0x8cc73={'NPMGu':function(_0x3f3920,_0x4464b8,_0x30950e){return _0x3f3920(_0x4464b8,_0x30950e);},'mLgRv':'POST','wgbwL':'application/json'},_0x31a7ad=await getToken();if(!_0x31a7ad)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x239473=getApiBaseUrl(),_0x5142dc=await _0x8cc73[_0x3daa2d(0x1d9)](fetch,_0x239473+_0x3daa2d(0x1e8)+_0x3eb94e+'/checklist',{'method':_0x8cc73[_0x3daa2d(0x1c7)],'headers':{'Authorization':_0x3daa2d(0x1ad)+_0x31a7ad,'Content-Type':_0x8cc73[_0x3daa2d(0x1b3)]},'body':JSON['stringify']({'description':_0x2dd6f5,'position':_0x13b416})});if(!_0x5142dc['ok']){const _0xde8930=await _0x5142dc['text']();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0xde8930);}return _0x5142dc['json']();}export async function updateChecklistItem(_0x3b8871,_0x33efd9,_0x1a7fcc){const _0x2683fa=_0x3ffc,_0x26b99c={'kfnTD':function(_0x324a5e,_0x1faedf,_0x208d10){return _0x324a5e(_0x1faedf,_0x208d10);},'UTUxv':'PATCH','wPjcM':'application/json','rNgkE':function(_0x25212a,_0x36bda7,_0x3b7c81){return _0x25212a(_0x36bda7,_0x3b7c81);}};return _0x26b99c[_0x2683fa(0x1d8)](withRetry,async()=>{const _0x163b6c=_0x2683fa,_0x5443c0=await getToken();if(!_0x5443c0)throw new Error(_0x163b6c(0x1b9));const _0x168fdb=getApiBaseUrl(),_0x349107=await _0x26b99c[_0x163b6c(0x1a9)](fetch,_0x168fdb+'/api/v1/mcp/features/'+_0x3b8871+'/checklist/'+_0x33efd9,{'method':_0x26b99c[_0x163b6c(0x1b6)],'headers':{'Authorization':_0x163b6c(0x1ad)+_0x5443c0,'Content-Type':_0x26b99c['wPjcM']},'body':JSON[_0x163b6c(0x1b2)](_0x1a7fcc)});if(!_0x349107['ok']){const _0x384658=await _0x349107['text']();throw new Error(_0x163b6c(0x1cd)+_0x384658);}return _0x349107[_0x163b6c(0x1c3)]();},{'label':_0x2683fa(0x1e6)});}function _0x5148(){const _0x6d3ef9=['219057uqPuvm','/comments/address','stringify','wgbwL','ksVSj','ktmcs','UTUxv','/sessions','GET','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','Failed\x20to\x20create\x20feature\x20review:\x20','limit','POST','7245860vbtqZh','style','Failed\x20to\x20get\x20feature\x20review:\x20','4759818yijgjt','JYsOA','mXVtM','json','application/json','text','5256540EdysJO','mLgRv','sessionId','UYOWf','/report','14LRRBLt','DELETE','Failed\x20to\x20update\x20scenario:\x20','9909132XZAAqB','/sessions/','541583otgkgi','billingUrl','nLgPc','toString','set','wtTIV','Failed\x20to\x20start\x20session:\x20','Feature\x20limit\x20exceeded','rNgkE','NPMGu','eGEkw','dcztR','itemIds','4ZxosaQ','status','QspSa','GUTWJ','/restore','\x0a\x0aUpgrade\x20your\x20plan:\x20','true','8992632KeSHnq','Failed\x20to\x20get\x20item\x20feedback:\x20','updateChecklistItem','jaZJF','/api/v1/mcp/features/','CtaOm','/feedback','JeqSc','gitRepoUrl','ewnjF','gXOGd','yipOc','Failed\x20to\x20conclude\x20session:\x20','ZvAyJ','pcBwI','GZeKy','rfTgj','offset','/api/v1/mcp/features','kfnTD','PATCH','kyvve','fuIUN','Bearer\x20','includeDeleted','length'];_0x5148=function(){return _0x6d3ef9;};return _0x5148();}export async function getFeatureReport(_0x1ec72d){const _0x530792=_0x3ffc,_0x1afc10={'gXOGd':_0x530792(0x1b9),'QemOf':function(_0x3b8f3f){return _0x3b8f3f();},'QspSa':function(_0x2be0ed,_0x3f97b7,_0x58cd9a){return _0x2be0ed(_0x3f97b7,_0x58cd9a);}},_0xc0674b=await getToken();if(!_0xc0674b)throw new Error(_0x1afc10[_0x530792(0x1ee)]);const _0x3f8166=_0x1afc10['QemOf'](getApiBaseUrl),_0x5afc1d=await _0x1afc10[_0x530792(0x1df)](fetch,_0x3f8166+_0x530792(0x1e8)+_0x1ec72d+_0x530792(0x1ca),{'method':_0x530792(0x1b8),'headers':{'Authorization':_0x530792(0x1ad)+_0xc0674b}});if(!_0x5afc1d['ok']){const _0x3106a6=await _0x5afc1d['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x3106a6);}return _0x5afc1d[_0x530792(0x1c3)]();}export async function getFeatureReportMarkdown(_0x113b67,_0x3521c7){const _0xac9d7b=_0x3ffc,_0xe02b2e={'tCAtO':_0xac9d7b(0x1b9),'ewnjF':function(_0xf2a20,_0xb342ff){return _0xf2a20>_0xb342ff;},'txHjy':'itemIds','ktmcs':'sessionId','fuIUN':function(_0x2c00fd,_0x158474){return _0x2c00fd&&_0x158474;},'tSSOO':_0xac9d7b(0x1b8)},_0x43d5b9=await getToken();if(!_0x43d5b9)throw new Error(_0xe02b2e['tCAtO']);const _0x347880=getApiBaseUrl(),_0x4823b6=new URLSearchParams(),_0xef9d22=_0xe02b2e[_0xac9d7b(0x1ed)](_0x3521c7?.['itemIds']?.[_0xac9d7b(0x1af)]??0x0,0x0),_0x103a9b=Boolean(_0x3521c7?.['sessionId']);_0xef9d22&&_0x3521c7?.[_0xac9d7b(0x1dc)]&&_0x4823b6['set'](_0xe02b2e['txHjy'],_0x3521c7['itemIds']['join'](','));_0x103a9b&&_0x3521c7?.['sessionId']&&_0x4823b6['set'](_0xe02b2e[_0xac9d7b(0x1b5)],_0x3521c7[_0xac9d7b(0x1c8)]);_0xe02b2e[_0xac9d7b(0x1ac)](!_0xef9d22,!_0x103a9b)&&_0x3521c7?.[_0xac9d7b(0x1be)]&&_0x4823b6[_0xac9d7b(0x1d4)]('style',_0x3521c7['style']);const _0x2e61b8=_0x347880+'/api/v1/mcp/features/'+_0x113b67+'/report/markdown',_0x342d9e=''+_0x2e61b8+(_0x4823b6['toString']()?'?'+_0x4823b6[_0xac9d7b(0x1d3)]():''),_0x25a537=await fetch(_0x342d9e,{'method':_0xe02b2e['tSSOO'],'headers':{'Authorization':_0xac9d7b(0x1ad)+_0x43d5b9}});if(!_0x25a537['ok']){const _0x397869=await _0x25a537[_0xac9d7b(0x1c5)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x397869);}return _0x25a537['text']();}export async function listFeatureSessions(_0x2b0db5){const _0x7dffc1=_0x3ffc,_0x40a8d1={'yDlHP':function(_0x5693c8){return _0x5693c8();},'BSXtN':function(_0x470be9,_0x1223cb,_0x1455a6){return _0x470be9(_0x1223cb,_0x1455a6);},'GZeKy':'GET'},_0x3b6f2c=await _0x40a8d1['yDlHP'](getToken);if(!_0x3b6f2c)throw new Error(_0x7dffc1(0x1b9));const _0x3ea8ec=getApiBaseUrl(),_0x4d6ad1=await _0x40a8d1['BSXtN'](fetch,_0x3ea8ec+'/api/v1/mcp/features/'+_0x2b0db5+_0x7dffc1(0x1b7),{'method':_0x40a8d1[_0x7dffc1(0x1a5)],'headers':{'Authorization':_0x7dffc1(0x1ad)+_0x3b6f2c}});if(!_0x4d6ad1['ok']){const _0x4b604f=await _0x4d6ad1[_0x7dffc1(0x1c5)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x4b604f);}return _0x4d6ad1['json']();}export async function startSession(_0x4b6492,_0x3b677d){const _0x2de3c7=_0x3ffc,_0x5ab986={'tlXoD':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','mVpwJ':'POST'},_0x3e41ea=await getToken();if(!_0x3e41ea)throw new Error(_0x5ab986['tlXoD']);const _0x58f695=getApiBaseUrl(),_0x15d475=await fetch(_0x58f695+'/api/v1/mcp/features/'+_0x4b6492+_0x2de3c7(0x1cf)+_0x3b677d+'/start',{'method':_0x5ab986['mVpwJ'],'headers':{'Authorization':_0x2de3c7(0x1ad)+_0x3e41ea}});if(!_0x15d475['ok']){const _0x1e6a88=await _0x15d475['text']();throw new Error(_0x2de3c7(0x1d6)+_0x1e6a88);}return _0x15d475['json']();}export async function concludeSession(_0x21d813,_0x45bc30){const _0x550b58=_0x3ffc,_0x3e635b={'htSTq':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x75d72e=await getToken();if(!_0x75d72e)throw new Error(_0x3e635b['htSTq']);const _0xf08a4c=getApiBaseUrl(),_0x10b2fa=await fetch(_0xf08a4c+_0x550b58(0x1e8)+_0x21d813+_0x550b58(0x1cf)+_0x45bc30+'/conclude',{'method':'POST','headers':{'Authorization':_0x550b58(0x1ad)+_0x75d72e}});if(!_0x10b2fa['ok']){const _0x3d61ea=await _0x10b2fa['text']();throw new Error(_0x550b58(0x1f0)+_0x3d61ea);}return _0x10b2fa[_0x550b58(0x1c3)]();}export async function getActionItems(_0x108420){const _0x427ac5=_0x3ffc,_0x26f4df={'rfTgj':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','SeghE':function(_0x7654d2){return _0x7654d2();}},_0x243bae=await getToken();if(!_0x243bae)throw new Error(_0x26f4df[_0x427ac5(0x1a6)]);const _0x29b3b3=_0x26f4df['SeghE'](getApiBaseUrl),_0x23397b=await fetch(_0x29b3b3+_0x427ac5(0x1e8)+_0x108420+'/action-items',{'method':'GET','headers':{'Authorization':_0x427ac5(0x1ad)+_0x243bae}});if(!_0x23397b['ok']){const _0xedf262=await _0x23397b[_0x427ac5(0x1c5)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0xedf262);}return _0x23397b['json']();}export async function getItemFeedback(_0x268e65,_0x5a056b){const _0xd902f4=_0x3ffc,_0x5077eb={'eGEkw':function(_0x4edcc6){return _0x4edcc6();},'pcBwI':function(_0x74a85,_0x2e4ad7,_0x59d101){return _0x74a85(_0x2e4ad7,_0x59d101);},'nLgPc':'GET'},_0x5b1994=await _0x5077eb[_0xd902f4(0x1da)](getToken);if(!_0x5b1994)throw new Error(_0xd902f4(0x1b9));const _0x448928=getApiBaseUrl(),_0x5eb19d=await _0x5077eb[_0xd902f4(0x1a4)](fetch,_0x448928+'/api/v1/mcp/features/'+_0x268e65+'/checklist-items/'+_0x5a056b+_0xd902f4(0x1ea),{'method':_0x5077eb[_0xd902f4(0x1d2)],'headers':{'Authorization':_0xd902f4(0x1ad)+_0x5b1994}});if(!_0x5eb19d['ok']){const _0x5a5f32=await _0x5eb19d[_0xd902f4(0x1c5)]();throw new Error(_0xd902f4(0x1e5)+_0x5a5f32);}return _0x5eb19d[_0xd902f4(0x1c3)]();}export async function markCommentsAddressed(_0x3516b9,_0xd0d343,_0x20d91f){const _0x12b788=_0x3ffc,_0x132d4e={'JeqSc':function(_0xe9ffa){return _0xe9ffa();},'mXVtM':'application/json'},_0x44cd35=await _0x132d4e[_0x12b788(0x1eb)](getToken);if(!_0x44cd35)throw new Error(_0x12b788(0x1b9));const _0x504e06=getApiBaseUrl(),_0x3c6f28=await fetch(_0x504e06+'/api/v1/mcp/features/'+_0x3516b9+_0x12b788(0x1b1),{'method':_0x12b788(0x1bc),'headers':{'Authorization':'Bearer\x20'+_0x44cd35,'Content-Type':_0x132d4e[_0x12b788(0x1c2)]},'body':JSON[_0x12b788(0x1b2)]({'checklistItemId':_0xd0d343,'commentIds':_0x20d91f})});if(!_0x3c6f28['ok']){const _0x1b1b34=await _0x3c6f28[_0x12b788(0x1c5)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x1b1b34);}}export async function softDeleteFeature(_0x75a112){const _0x250785=_0x3ffc,_0x28602e={'uLprJ':function(_0xd26093){return _0xd26093();},'UYOWf':_0x250785(0x1b9),'pjmok':function(_0xa98c30){return _0xa98c30();},'tPppQ':function(_0x194606,_0x2c619d,_0x352fe4){return _0x194606(_0x2c619d,_0x352fe4);},'wtTIV':_0x250785(0x1cc)},_0x48f08e=await _0x28602e['uLprJ'](getToken);if(!_0x48f08e)throw new Error(_0x28602e[_0x250785(0x1c9)]);const _0xfbd090=_0x28602e['pjmok'](getApiBaseUrl),_0x4cb67e=await _0x28602e['tPppQ'](fetch,_0xfbd090+'/api/v1/mcp/features/'+_0x75a112,{'method':_0x28602e[_0x250785(0x1d5)],'headers':{'Authorization':_0x250785(0x1ad)+_0x48f08e}});if(!_0x4cb67e['ok']){const _0x1ffe6d=await _0x4cb67e['text']();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x1ffe6d);}}export async function restoreFeature(_0x451579){const _0x24573e=_0x3ffc,_0x5eafff={'jaZJF':function(_0x2a1d4a,_0xa9d315,_0x615399){return _0x2a1d4a(_0xa9d315,_0x615399);}},_0xafb1fa=await getToken();if(!_0xafb1fa)throw new Error(_0x24573e(0x1b9));const _0x4d1d54=getApiBaseUrl(),_0x41f569=await _0x5eafff[_0x24573e(0x1e7)](fetch,_0x4d1d54+'/api/v1/mcp/features/'+_0x451579+_0x24573e(0x1e1),{'method':_0x24573e(0x1bc),'headers':{'Authorization':_0x24573e(0x1ad)+_0xafb1fa}});if(!_0x41f569['ok']){const _0xfad5fd=await _0x41f569['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0xfad5fd);}}
|