@ranger-testing/ranger-cli 3.0.1-alpha.ffffb5b-28 → 3.1.1-alpha.b22d278-38
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 -0
- 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 -0
- 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/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 -0
- 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 -0
- package/package.json +4 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3f30ba=_0x4b7a;(function(_0x3a8a08,_0x2f6ee3){const _0x343175=_0x4b7a,_0x3ee366=_0x3a8a08();while(!![]){try{const _0x3735ee=-parseInt(_0x343175(0x1fa))/0x1*(-parseInt(_0x343175(0x1e8))/0x2)+-parseInt(_0x343175(0x1d7))/0x3*(-parseInt(_0x343175(0x1a4))/0x4)+parseInt(_0x343175(0x195))/0x5*(-parseInt(_0x343175(0x1bc))/0x6)+parseInt(_0x343175(0x1f8))/0x7+-parseInt(_0x343175(0x1fd))/0x8+parseInt(_0x343175(0x19b))/0x9+-parseInt(_0x343175(0x19e))/0xa;if(_0x3735ee===_0x2f6ee3)break;else _0x3ee366['push'](_0x3ee366['shift']());}catch(_0x4004ee){_0x3ee366['push'](_0x3ee366['shift']());}}}(_0x5358,0xe9a44));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x175a33 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,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x243729=_0x4b7a,_0x498194={'kzewl':function(_0x447093){return _0x447093();}},_0x1cc09d=await _0x498194[_0x243729(0x1cf)](getToken);if(!_0x1cc09d)throw new Error(_0x243729(0x1d9));return _0x1cc09d;}async function apiRequest(_0xfdd7c4,_0x548e53={}){const _0x5b0f3e=_0x4b7a,_0x245c3f={'OAevO':function(_0x5d453c){return _0x5d453c();},'ALwVf':function(_0xf6a140){return _0xf6a140();},'PlLbc':function(_0x33301f,_0x4721d6){return _0x33301f===_0x4721d6;},'uzsIz':function(_0xf3bb27,_0x2472d3){return _0xf3bb27===_0x2472d3;},'hvksU':_0x5b0f3e(0x1e3),'IudKW':function(_0x38a975,_0x34153e){return _0x38a975===_0x34153e;}},_0x441faa=await _0x245c3f['OAevO'](requireToken),_0x447f1a=_0x245c3f['ALwVf'](getApiBaseUrl),_0x5588f7=await fetch(''+_0x447f1a+_0xfdd7c4,{..._0x548e53,'headers':{'Authorization':'Bearer\x20'+_0x441faa,'Content-Type':'application/json',..._0x548e53['headers']??{}}});if(!_0x5588f7['ok']){let _0x2b1363='',_0x2b1d0f;try{const _0x3f025e=await _0x5588f7[_0x5b0f3e(0x199)]();_0x2b1363=(_0x245c3f[_0x5b0f3e(0x1c2)](typeof _0x3f025e['error'],'string')?_0x3f025e['error']:undefined)??JSON[_0x5b0f3e(0x1da)](_0x3f025e);if(_0x245c3f['uzsIz'](typeof _0x3f025e[_0x5b0f3e(0x1c3)],_0x245c3f['hvksU']))_0x2b1d0f=_0x3f025e['code'];}catch{_0x2b1363=_0x5588f7[_0x5b0f3e(0x198)];}throw new ApiError(_0x5b0f3e(0x1c9)+_0xfdd7c4+_0x5b0f3e(0x1b0)+_0x5588f7[_0x5b0f3e(0x19c)]+_0x5b0f3e(0x1f5)+_0x2b1363,_0x5588f7[_0x5b0f3e(0x19c)],_0x2b1363,_0x2b1d0f);}if(_0x245c3f['IudKW'](_0x5588f7['status'],0xcc))return undefined;return _0x5588f7[_0x5b0f3e(0x199)]();}export class ApiError extends Error{[_0x3f30ba(0x19c)];['detail'];[_0x3f30ba(0x1c3)];constructor(_0x3aab56,_0x4e796c,_0xe6f051,_0x1706a9){const _0x181068=_0x3f30ba,_0x17417f={'mWkFg':_0x181068(0x19d)};super(_0x3aab56),this['status']=_0x4e796c,this['detail']=_0xe6f051,this[_0x181068(0x1c3)]=_0x1706a9,this[_0x181068(0x1ff)]=_0x17417f['mWkFg'];}}export async function fetchCloudProfile(_0x2df3bd){const _0x473dac=_0x3f30ba,_0x30db36={'jCpNG':function(_0x557dbe,_0x1093d2){return _0x557dbe===_0x1093d2;}};try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x2df3bd));}catch(_0x263388){if(_0x263388 instanceof ApiError&&_0x30db36[_0x473dac(0x1be)](_0x263388[_0x473dac(0x19c)],0x194))return null;throw _0x263388;}}export async function listCloudProfiles(){const _0x17f88e=_0x3f30ba,_0x464b47={'LpRTD':function(_0x4492e3,_0x35c7dc){return _0x4492e3(_0x35c7dc);}},_0x39b150=await _0x464b47['LpRTD'](apiRequest,_0x17f88e(0x1db));return _0x39b150[_0x17f88e(0x1dc)];}export async function deleteCloudProfile(_0x13d414){const _0x4e7bab=_0x3f30ba,_0x1d4663={'tNkVd':function(_0xe5c1e8,_0x5de568,_0x527951){return _0xe5c1e8(_0x5de568,_0x527951);},'hHaFb':function(_0x24f6e4,_0x16a0d4){return _0x24f6e4(_0x16a0d4);},'zCXCX':'DELETE','EFrPl':function(_0x14b86a,_0x6ede1d){return _0x14b86a===_0x6ede1d;}};try{await _0x1d4663['tNkVd'](apiRequest,_0x4e7bab(0x1e4)+_0x1d4663['hHaFb'](encodeURIComponent,_0x13d414),{'method':_0x1d4663['zCXCX']});}catch(_0x461d17){if(_0x461d17 instanceof ApiError&&_0x1d4663[_0x4e7bab(0x1f9)](_0x461d17['status'],0x194))throw new Error(_0x4e7bab(0x1f0)+_0x13d414+_0x4e7bab(0x1ea));throw _0x461d17;}}export async function createCloudProfile(_0xfe11ef,_0xf2b09b,_0x3e21d9={}){const _0x117d8e=_0x3f30ba,_0x5d8230={'FWILA':function(_0x4919ba,_0x4d3a50,_0x2834ee){return _0x4919ba(_0x4d3a50,_0x2834ee);}},_0x1c6ce1={'name':_0xfe11ef};if(_0xf2b09b)_0x1c6ce1['environment_key']=_0xf2b09b;_0x3e21d9[_0x117d8e(0x1e9)]&&Object[_0x117d8e(0x1a2)](_0x3e21d9[_0x117d8e(0x1e9)])['length']>0x0&&(_0x1c6ce1['settings']=_0x3e21d9['settings']);if(_0x3e21d9['username'])_0x1c6ce1['username']=_0x3e21d9['username'];if(_0x3e21d9['password'])_0x1c6ce1['password']=_0x3e21d9[_0x117d8e(0x1b6)];return await _0x5d8230['FWILA'](apiRequest,'/api/v1/profiles',{'method':'POST','body':JSON[_0x117d8e(0x1da)](_0x1c6ce1)});}export async function uploadCloudProfileSession(_0x36ede5,_0xae8a2c){const _0x1926d4=_0x3f30ba;return await apiRequest(_0x1926d4(0x1e4)+encodeURIComponent(_0x36ede5)+_0x1926d4(0x1bb),{'method':_0x1926d4(0x1d3),'body':JSON['stringify']({'session_state':_0xae8a2c})});}export async function saveCloudProfileCredentials(_0x4170f5,_0x467d16,_0x584102){const _0xe3aeba=_0x3f30ba,_0x411b79={'qzuBb':function(_0x552eda,_0x1a8050,_0x438793){return _0x552eda(_0x1a8050,_0x438793);},'rivgF':function(_0x593026,_0x429b7b){return _0x593026(_0x429b7b);}};await _0x411b79[_0xe3aeba(0x1f3)](apiRequest,'/api/v1/profiles/'+_0x411b79[_0xe3aeba(0x1aa)](encodeURIComponent,_0x4170f5),{'method':_0xe3aeba(0x1b3),'body':JSON['stringify']({'username':_0x467d16,'password':_0x584102})});}export async function fetchAuthConfig(){const _0x7911fe=_0x3f30ba,_0x56317d={'PEuEh':function(_0xf12b40,_0x13b5b0){return _0xf12b40(_0x13b5b0);},'NzZfr':'/api/v1/profiles/auth-config','QcOUF':function(_0x4b8022,_0x29f4bf){return _0x4b8022 instanceof _0x29f4bf;}};try{const _0x4d5639=await _0x56317d['PEuEh'](apiRequest,_0x56317d['NzZfr']);return _0x4d5639['auth_config'];}catch(_0x39c4aa){return _0x56317d[_0x7911fe(0x1c4)](_0x39c4aa,ApiError)&&_0x39c4aa[_0x7911fe(0x19c)]!==0x194&&console[_0x7911fe(0x196)](_0x7911fe(0x1c8)+_0x39c4aa['message']),null;}}export function pickAdHocEnvKey(_0x3f328b){const _0x16598f=_0x3f30ba,_0x261abb={'rmXMO':function(_0x40e3fc,_0x526057){return _0x40e3fc===_0x526057;},'xlGkQ':function(_0x322ddb,_0x5a5280){return _0x322ddb+_0x5a5280;}};if(!_0x3f328b)return null;if(_0x3f328b['defaultEnvironmentKey'])return _0x3f328b[_0x16598f(0x1c1)];const _0x215dce=Object[_0x16598f(0x1a2)](_0x3f328b['environments']??{});if(_0x261abb['rmXMO'](_0x215dce[_0x16598f(0x1a9)],0x1))return _0x215dce[0x0];if(_0x215dce['length']===0x0)return null;throw new Error(_0x261abb['xlGkQ'](_0x16598f(0x1ee)+_0x215dce['join'](',\x20')+_0x16598f(0x1df),'Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.'));}export async function resolveAdHocProfile(_0x24f117=process[_0x3f30ba(0x1a6)]){const _0x5c14b1=_0x3f30ba,_0xead83e={'IEkjT':function(_0x53b3ed,_0xee2e49){return _0x53b3ed(_0xee2e49);}},_0x335480=_0x24f117[_0x5c14b1(0x1ef)];if(!_0x335480)return null;const _0x3aee73=await _0xead83e['IEkjT'](fetchCloudProfile,_0x335480);if(_0x3aee73)return{'name':_0x3aee73['name'],'profile':_0x3aee73};const _0x57b0e6=await fetchAuthConfig(),_0xc8091e=pickAdHocEnvKey(_0x57b0e6),_0x3bc425=_0x24f117[_0x5c14b1(0x1b1)],_0x486e90=await createCloudProfile(_0x335480,_0xc8091e??undefined,{'username':_0x335480,'password':_0x3bc425});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x486e90[_0x5c14b1(0x1ff)]+'\x22\x20for\x20'+_0x335480),{'name':_0x486e90[_0x5c14b1(0x1ff)],'profile':_0x486e90};}export async function writeSessionToLocalCache(_0x3bad2c,_0xe61fd,_0x4877d0,_0x41149d,_0x2f7e47,_0x8d042a,_0x40520b){const _0x3f83a7=_0x3f30ba,_0x53c4df={'nVJVG':function(_0x5926e9,_0x326622,_0x4f8594){return _0x5926e9(_0x326622,_0x4f8594);},'oNrsv':function(_0xec005b){return _0xec005b();},'EfLYv':function(_0x44c9f3,_0x176c01,_0x1aba82){return _0x44c9f3(_0x176c01,_0x1aba82);},'EGPNB':function(_0x508864,_0x35d714){return _0x508864>_0x35d714;},'vDEZx':function(_0x5b6ca5,_0x26073b,_0x35eab8){return _0x5b6ca5(_0x26073b,_0x35eab8);}},_0x119c47=sessionCacheHash({'orgId':_0xe61fd,'profileName':_0x3bad2c,'effectiveBaseUrl':_0x4877d0,'setupHeaders':_0x41149d,'invalidateOn':_0x40520b?.[_0x3f83a7(0x1e7)],'userAgent':_0x40520b?.[_0x3f83a7(0x1e5)],'clientIp':_0x40520b?.[_0x3f83a7(0x1ec)]}),_0x3a8bd9=_0x53c4df['nVJVG'](getSessionCachePath,_0x119c47,_0x3bad2c),_0x1936e0=join(_0x53c4df[_0x3f83a7(0x1ac)](getRangerHomeDir),_0x3f83a7(0x1a0));!existsSync(_0x1936e0)&&await _0x53c4df[_0x3f83a7(0x1c6)](mkdir,_0x1936e0,{'recursive':!![]});const _0x4c04f1={..._0x2f7e47};_0x8d042a&&_0x53c4df[_0x3f83a7(0x200)](_0x8d042a['length'],0x0)&&Array['isArray'](_0x4c04f1[_0x3f83a7(0x1ed)])&&(_0x4c04f1['cookies']=duplicateCookiesForDomains(_0x4c04f1[_0x3f83a7(0x1ed)],_0x8d042a));const _0x2695d4={'cached_at':new Date()[_0x3f83a7(0x1bf)](),'session_state':_0x4c04f1};await _0x53c4df['vDEZx'](writeFile,_0x3a8bd9,JSON['stringify'](_0x2695d4,null,0x2));const _0x38bc3f=getStorageStatePath(_0x3a8bd9);return await _0x53c4df['vDEZx'](writeFile,_0x38bc3f,JSON[_0x3f83a7(0x1da)](_0x4c04f1,null,0x2)),_0x38bc3f;}export async function checkLocalCache(_0x19aa1d,_0x351ec7,_0x5746f6,_0x3cf955,_0xd4979d){const _0x4b679a=_0x3f30ba,_0x7d54d7={'YxhWq':function(_0x44fd83,_0x362524,_0x175f70){return _0x44fd83(_0x362524,_0x175f70);},'lKgwX':function(_0x46dd4a,_0x1ccf5c){return _0x46dd4a(_0x1ccf5c);},'IVODL':function(_0x5c8100,_0x1d44ec){return _0x5c8100(_0x1d44ec);}},_0x267681=sessionCacheHash({'orgId':_0x351ec7,'profileName':_0x19aa1d,'effectiveBaseUrl':_0x5746f6,'setupHeaders':_0x3cf955,'invalidateOn':_0xd4979d?.['invalidateOn'],'userAgent':_0xd4979d?.['userAgent'],'clientIp':_0xd4979d?.[_0x4b679a(0x1ec)]}),_0x4773c7=_0x7d54d7[_0x4b679a(0x1ad)](getSessionCachePath,_0x267681,_0x19aa1d),_0x513b44=_0x7d54d7[_0x4b679a(0x197)](getStorageStatePath,_0x4773c7);if(!existsSync(_0x4773c7)||!_0x7d54d7[_0x4b679a(0x1d6)](existsSync,_0x513b44))return null;try{const _0x346198=await readFile(_0x4773c7,_0x4b679a(0x1b7));return JSON['parse'](_0x346198),{'storageStatePath':_0x513b44};}catch{return null;}}function launchRealBrowser(){const _0x5781bd=_0x3f30ba;return chromium[_0x5781bd(0x1f6)]({'headless':!![]});}function _0x4b7a(_0x369d44,_0x4ce63b){_0x369d44=_0x369d44-0x18e;const _0x5358f3=_0x5358();let _0x4b7ab9=_0x5358f3[_0x369d44];return _0x4b7ab9;}function emitSessionValidationHint(_0x5cb8f6,_0x189d4e){const _0x216bcb=_0x3f30ba,_0x5a6653={'TFAhW':function(_0xd60ccf,_0x14f05f){return _0xd60ccf===_0x14f05f;},'LuZNe':function(_0x2c25f6,_0x5b8e83){return _0x2c25f6+_0x5b8e83;}};if(!_0x189d4e||!_0x189d4e[_0x216bcb(0x1cb)]?.[_0x216bcb(0x1a9)])return;let _0x3f48e6;try{_0x3f48e6=new URL(_0x5cb8f6);}catch{return;}const _0xc1bf20=[];for(const _0x3686a7 of _0x189d4e[_0x216bcb(0x1cb)]){try{_0xc1bf20['push']({'raw':_0x3686a7,'url':new URL(_0x3686a7)});}catch{}}if(_0x5a6653[_0x216bcb(0x1b2)](_0xc1bf20[_0x216bcb(0x1a9)],0x0))return;if(_0xc1bf20['some'](_0x18b520=>_0x18b520['url']['origin']===_0x3f48e6[_0x216bcb(0x193)]))return;const _0x2dd77c=_0xc1bf20['map'](_0x3dfd14=>'\x22'+_0x3dfd14[_0x216bcb(0x1f2)]+'\x22')['join'](',\x20');console['log'](_0x5a6653['LuZNe'](_0x5a6653['LuZNe']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x2dd77c+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x5cb8f6+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20'),'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.'));}export async function serverSideLogin(_0x30a982,_0x237dff){const _0xeb0d22=_0x3f30ba,_0x1ba0b9={'cFXJr':function(_0x2d5701,_0x11bbee){return _0x2d5701 instanceof _0x11bbee;},'kSgKO':function(_0x49c076,_0x2a5fad){return _0x49c076===_0x2a5fad;},'rkhxC':'not_configured'},_0x1925c6=process['env']['RANGER_TEST_USERNAME'],_0x284fac=process[_0xeb0d22(0x1a6)]['RANGER_TEST_PASSWORD'],_0x5c3c95={};if(_0x1925c6)_0x5c3c95[_0xeb0d22(0x1fb)]=_0x1925c6;if(_0x284fac)_0x5c3c95[_0xeb0d22(0x1b6)]=_0x284fac;if(_0x237dff?.[_0xeb0d22(0x19a)])_0x5c3c95[_0xeb0d22(0x19a)]=!![];try{return await apiRequest(_0xeb0d22(0x1e4)+encodeURIComponent(_0x30a982)+_0xeb0d22(0x19f),{'method':'POST','body':JSON[_0xeb0d22(0x1da)](_0x5c3c95)});}catch(_0x3d6d7c){if(_0x1ba0b9[_0xeb0d22(0x1de)](_0x3d6d7c,ApiError)&&_0x3d6d7c[_0xeb0d22(0x19c)]===0x190&&_0x1ba0b9['kSgKO'](_0x3d6d7c[_0xeb0d22(0x1c3)],_0x1ba0b9['rkhxC']))return{'status':_0x1ba0b9['rkhxC'],'error':_0x3d6d7c['detail']};throw _0x3d6d7c;}}export async function manualBrowserLogin(_0x598b67,_0x4273b3){const _0x42969e=_0x3f30ba,_0x1f630c={'XdcBu':function(_0x1030a2,_0x6abb6c){return _0x1030a2/_0x6abb6c;},'HGgAn':function(_0x2ae01c){return _0x2ae01c();},'HzgBa':'close','NfwLF':function(_0x5bb040,_0x49346d){return _0x5bb040+_0x49346d;},'tfISX':function(_0x3ef091,_0xdaf476){return _0x3ef091>_0xdaf476;},'PpcpA':function(_0x3079dc,_0x41f274){return _0x3079dc(_0x41f274);},'gigiM':function(_0xc8cb96,_0xdd346d){return _0xc8cb96&&_0xdd346d;},'UPLBz':_0x42969e(0x1cd),'OzyJA':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','VSYOY':function(_0x1d545a,_0x2a950b,_0x38f2c8){return _0x1d545a(_0x2a950b,_0x38f2c8);},'GhKSS':'POST','cvMPR':'cli:manual-login'};if(!isInteractive())throw new Error(_0x1f630c[_0x42969e(0x1e6)](_0x42969e(0x1d2)+_0x598b67[_0x42969e(0x1ff)]+'\x22.\x0a',_0x42969e(0x1a8))+'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.');const _0x43dbbb=_0x4273b3&&_0x1f630c[_0x42969e(0x18f)](_0x4273b3['domains']['length'],0x0)?_0x4273b3['domains'][0x0]:_0x42969e(0x194);console['log']('\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.'),console['log'](_0x42969e(0x1a1)),await new Promise(_0x13bdf5=>setTimeout(_0x13bdf5,0x7d0));const _0x27d2a5=await chromium[_0x42969e(0x1f6)]({'headless':![]});let _0x2781ea=null;try{const _0x3a9ba8={'ignoreHTTPSErrors':!![]};_0x4273b3?.[_0x42969e(0x1f7)]&&(_0x3a9ba8['extraHTTPHeaders']=_0x4273b3['setupHeaders']);const _0xbc5a01=await _0x27d2a5[_0x42969e(0x1b9)](_0x3a9ba8);await _0x1f630c[_0x42969e(0x1b8)](addProfileSetupBanner,_0xbc5a01);const _0x46128f=await _0xbc5a01['newPage']();await _0x46128f['goto'](_0x43dbbb);let _0x3d735c=![];await new Promise(_0x4ce4d7=>{const _0x51e074={'LcQpo':function(_0x23fe7b,_0x49cd5d){return _0x1f630c['XdcBu'](_0x23fe7b,_0x49cd5d);},'dtubV':function(_0x301ad9){return _0x1f630c['HGgAn'](_0x301ad9);},'JiNrH':function(_0x5e1777,_0x42fb11){return _0x5e1777(_0x42fb11);}},_0x26dd42=setTimeout(()=>{const _0x1ec9d1=_0x4b7a;_0x3d735c=!![],console['error']('Browser\x20login\x20timed\x20out\x20after\x20'+_0x51e074[_0x1ec9d1(0x1ba)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x1ec9d1(0x1c7)),_0x51e074[_0x1ec9d1(0x1b5)](_0x4ce4d7);},MANUAL_LOGIN_TIMEOUT_MS);_0x46128f['on'](_0x1f630c['HzgBa'],async()=>{const _0x5c5012=_0x4b7a;_0x51e074[_0x5c5012(0x1a5)](clearTimeout,_0x26dd42);try{const _0x1e2830=await _0xbc5a01[_0x5c5012(0x1d0)]();_0x2781ea=_0x1e2830;}catch{}_0x4ce4d7();});});if(_0x1f630c[_0x42969e(0x1e2)](_0x3d735c,!_0x2781ea))throw new Error(_0x1f630c[_0x42969e(0x1e1)]);}finally{await _0x27d2a5['close']()['catch'](()=>{});}if(!_0x2781ea)throw new Error(_0x1f630c[_0x42969e(0x1d4)]);return await _0x1f630c[_0x42969e(0x1d8)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x598b67['name'])+'/session',{'method':_0x1f630c['GhKSS'],'body':JSON['stringify']({'session_state':_0x2781ea,'updated_by':_0x1f630c[_0x42969e(0x1e0)]})}),{'sessionState':_0x2781ea};}export async function promptSaveCredentials(_0x1761cb){const _0x4407d0=_0x3f30ba,_0x566b65={'ovnIe':function(_0x29360e,_0x50b3c7){return _0x29360e||_0x50b3c7;},'CLLdh':function(_0x1f6207){return _0x1f6207();},'qUAzn':_0x4407d0(0x1a7),'zsNFN':_0x4407d0(0x1b4),'EElsA':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','WaUUW':function(_0x57b8e7,_0xe9fb6f,_0x54be8a){return _0x57b8e7(_0xe9fb6f,_0x54be8a);},'RtNmE':_0x4407d0(0x1b3),'GyuOI':_0x4407d0(0x1bd)},_0x1db193=process['env']['RANGER_TEST_USERNAME'],_0x1fb443=process[_0x4407d0(0x1a6)][_0x4407d0(0x1b1)];if(_0x566b65['ovnIe'](!_0x1db193,!_0x1fb443))return;if(!_0x566b65[_0x4407d0(0x1ca)](isInteractive))return;const {save:_0xda8558}=await _0x175a33['prompt']([{'type':_0x566b65['qUAzn'],'name':_0x566b65[_0x4407d0(0x18e)],'message':_0x566b65['EElsA'],'default':![]}]);if(!_0xda8558)return;await _0x566b65[_0x4407d0(0x1fe)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x1761cb),{'method':_0x566b65['RtNmE'],'body':JSON[_0x4407d0(0x1da)]({'username':_0x1db193,'password':_0x1fb443})}),console['log'](_0x566b65['GyuOI']);}export async function resolveCloudProfileSession(_0x33792d,_0x1cea13={}){const _0x292dbd=_0x3f30ba,_0x5408c4={'BKFtC':function(_0x2b69c5,_0x53cf96,_0x296c9a){return _0x2b69c5(_0x53cf96,_0x296c9a);},'torFx':function(_0x59fd9d,_0x104c11,_0x22db4f){return _0x59fd9d(_0x104c11,_0x22db4f);},'rkAdj':function(_0x2f8a25,_0xd3a890,_0x577634,_0x498aa0,_0x266094){return _0x2f8a25(_0xd3a890,_0x577634,_0x498aa0,_0x266094);},'DGDkJ':function(_0xb1601e,_0x2aad3e){return _0xb1601e(_0x2aad3e);},'TfvwS':'\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','TzTYi':function(_0x5c99f3,_0x4e39df){return _0x5c99f3===_0x4e39df;},'BoZsf':function(_0x22d660,_0x32a080,_0x251907,_0x1071a4,_0x26de75,_0x4e7c66,_0x2dfd7e,_0x2a1b0f){return _0x22d660(_0x32a080,_0x251907,_0x1071a4,_0x26de75,_0x4e7c66,_0x2dfd7e,_0x2a1b0f);},'AQcAk':function(_0x3f5e2c,_0x151731){return _0x3f5e2c(_0x151731);},'VSoZY':_0x292dbd(0x191),'bQTDY':function(_0x3d152e,_0x239429,_0xf39f3a,_0x5d0402,_0x4f279e,_0x35b0a1,_0x2192df,_0x419e75){return _0x3d152e(_0x239429,_0xf39f3a,_0x5d0402,_0x4f279e,_0x35b0a1,_0x2192df,_0x419e75);}},_0x217973=_0x33792d['settings']??{},_0x568ef8=await fetchAuthConfig(),_0x46da20=_0x568ef8?_0x5408c4['BKFtC'](resolveAuthEnvironmentLocally,_0x568ef8,_0x33792d[_0x292dbd(0x1ab)]):null,_0x79e351=_0x46da20?.[_0x292dbd(0x1cb)],_0x27d1ef=_0x217973['setupHeaders'],_0x4de620=_0x27d1ef??_0x46da20?.['setupHeaders'],_0x4fc736=_0x1cea13['effectiveBaseUrl']??_0x217973[_0x292dbd(0x190)]??(_0x79e351&&_0x79e351[_0x292dbd(0x1a9)]>0x0?_0x79e351[0x0]:''),_0x47d357={'invalidateOn':_0x46da20?.['invalidateOn'],'userAgent':_0x46da20?.[_0x292dbd(0x1af)]?.['userAgent']??_0x217973['userAgent']},_0x21bae0=await checkLocalCache(_0x33792d[_0x292dbd(0x1ff)],_0x33792d[_0x292dbd(0x1fc)],_0x4fc736,_0x4de620,_0x47d357);if(_0x21bae0){if(_0x4fc736){const _0x523873=await isCachedSessionLive(_0x21bae0['storageStatePath'],_0x4fc736,{'sessionCheckPath':_0x46da20?.['sessionCheckPath'],'setupHeaders':_0x4de620},{'launchBrowser':launchRealBrowser});if(_0x523873)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x33792d[_0x292dbd(0x1ff)]+'\x22'),{'authPath':_0x21bae0['storageStatePath'],'settings':_0x217973,'resolvedEnv':_0x46da20};console[_0x292dbd(0x1c5)](_0x292dbd(0x192)+_0x33792d['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),_0x5408c4['torFx'](emitSessionValidationHint,_0x4fc736,_0x46da20);}else return{'authPath':_0x21bae0['storageStatePath'],'settings':_0x217973,'resolvedEnv':_0x46da20};}if(_0x33792d['sessionState']){const _0x207542=await writeSessionToLocalCache(_0x33792d['name'],_0x33792d[_0x292dbd(0x1fc)],_0x4fc736,_0x4de620,_0x33792d['sessionState'],_0x79e351,_0x47d357);if(_0x4fc736){const _0x3f4f2f=await _0x5408c4['rkAdj'](isCachedSessionLive,_0x207542,_0x4fc736,{'sessionCheckPath':_0x46da20?.['sessionCheckPath'],'setupHeaders':_0x4de620},{'launchBrowser':launchRealBrowser});if(_0x3f4f2f)return console['log']('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x33792d[_0x292dbd(0x1ff)]+'\x22,\x20cached\x20locally'),{'authPath':_0x207542,'settings':_0x217973,'resolvedEnv':_0x46da20};console['log'](_0x292dbd(0x1cc)+_0x33792d['name']+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),emitSessionValidationHint(_0x4fc736,_0x46da20);}else return{'authPath':_0x207542,'settings':_0x217973,'resolvedEnv':_0x46da20};}console['log'](_0x292dbd(0x1ae)+_0x33792d['name']+'\x22,\x20attempting\x20login...');const _0x2963d4=_0x5408c4[_0x292dbd(0x1ce)](Boolean,process[_0x292dbd(0x1a6)][_0x292dbd(0x1ef)])&&Boolean(process['env'][_0x292dbd(0x1b1)]),_0x3acff7=_0x5408c4[_0x292dbd(0x1ce)](Boolean,_0x33792d[_0x292dbd(0x1fb)]);if(_0x2963d4||_0x3acff7)try{const _0x3e4eb4=await _0x5408c4['DGDkJ'](serverSideLogin,_0x33792d['name']);if(_0x3e4eb4['status']===_0x292dbd(0x1eb))console['log'](_0x5408c4[_0x292dbd(0x1c0)]);else{if(_0x5408c4[_0x292dbd(0x1d1)](_0x3e4eb4[_0x292dbd(0x19c)],'success')&&_0x3e4eb4['session_state']){console['log'](_0x292dbd(0x1dd));const _0x5445ae=await _0x5408c4[_0x292dbd(0x1f4)](writeSessionToLocalCache,_0x33792d[_0x292dbd(0x1ff)],_0x33792d[_0x292dbd(0x1fc)],_0x4fc736,_0x4de620,_0x3e4eb4[_0x292dbd(0x1d5)],_0x79e351,_0x47d357);return _0x2963d4&&!_0x3acff7&&await _0x5408c4['AQcAk'](promptSaveCredentials,_0x33792d[_0x292dbd(0x1ff)]),{'authPath':_0x5445ae,'settings':_0x217973,'resolvedEnv':_0x46da20};}else _0x3e4eb4['test_output']&&(console[_0x292dbd(0x1c5)](_0x5408c4['VSoZY']),console[_0x292dbd(0x1c5)](_0x3e4eb4['test_output'])),console['log']('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}}catch(_0x28bce9){console[_0x292dbd(0x1c5)](_0x292dbd(0x1a3)+(_0x28bce9 instanceof Error?_0x28bce9['message']:String(_0x28bce9))),console[_0x292dbd(0x1c5)](_0x292dbd(0x1f1));}const {sessionState:_0x4c9027}=await manualBrowserLogin(_0x33792d,_0x46da20),_0x18c0da=await _0x5408c4['bQTDY'](writeSessionToLocalCache,_0x33792d[_0x292dbd(0x1ff)],_0x33792d[_0x292dbd(0x1fc)],_0x4fc736,_0x4de620,_0x4c9027,_0x79e351,_0x47d357);return{'authPath':_0x18c0da,'settings':_0x217973,'resolvedEnv':_0x46da20};}function _0x5358(){const _0x3dff4a=['stringify','/api/v1/profiles','profiles','\x20\x20Login\x20successful.\x20Session\x20cached.','cFXJr',').\x20','cvMPR','UPLBz','gigiM','string','/api/v1/profiles/','userAgent','NfwLF','invalidateOn','92VpveOv','settings','\x22\x20not\x20found.','not_configured','clientIp','cookies','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','RANGER_TEST_USERNAME','Cloud\x20profile\x20\x22','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','raw','qzuBb','BoZsf','):\x20','launch','setupHeaders','12478998zUPLuP','EFrPl','32559rkUSfd','username','organizationId','9721896OnZxFJ','WaUUW','name','EGPNB','zsNFN','tfISX','baseUrl','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','\x20\x20Cached\x20session\x20for\x20\x22','origin','about:blank','5qSIfOd','error','lKgwX','statusText','json','force','16255197OSDvLS','status','ApiError','30594220pzSNfB','/login','auth','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','keys','\x20\x20Server-side\x20login\x20error:\x20','996gqOtpn','JiNrH','env','confirm','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','length','rivgF','environmentKey','oNrsv','YxhWq','\x20\x20No\x20live\x20session\x20for\x20\x22','browserOptions','\x20failed\x20(','RANGER_TEST_PASSWORD','TFAhW','PUT','save','dtubV','password','utf-8','PpcpA','newContext','LcQpo','/session','7386774fkGsZz','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','jCpNG','toISOString','TfvwS','defaultEnvironmentKey','PlLbc','code','QcOUF','log','EfLYv','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','API\x20request\x20','CLLdh','domains','\x20\x20Cloud\x20session\x20for\x20\x22','Browser\x20login\x20timed\x20out\x20before\x20completion.','DGDkJ','kzewl','storageState','TzTYi','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','POST','OzyJA','session_state','IVODL','16581dYszYv','VSYOY','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'];_0x5358=function(){return _0x3dff4a;};return _0x5358();}
|
|
1
|
+
const _0x267a7c=_0x5d69;(function(_0xace33e,_0x196374){const _0x47cc26=_0x5d69,_0x2bf79f=_0xace33e();while(!![]){try{const _0x3e09fe=parseInt(_0x47cc26(0x19c))/0x1*(parseInt(_0x47cc26(0x144))/0x2)+-parseInt(_0x47cc26(0x170))/0x3*(parseInt(_0x47cc26(0x165))/0x4)+-parseInt(_0x47cc26(0x1ab))/0x5*(parseInt(_0x47cc26(0x175))/0x6)+parseInt(_0x47cc26(0x164))/0x7*(-parseInt(_0x47cc26(0x17f))/0x8)+parseInt(_0x47cc26(0x17a))/0x9+-parseInt(_0x47cc26(0x159))/0xa+parseInt(_0x47cc26(0x1a8))/0xb*(parseInt(_0x47cc26(0x1ad))/0xc);if(_0x3e09fe===_0x196374)break;else _0x2bf79f['push'](_0x2bf79f['shift']());}catch(_0x45f647){_0x2bf79f['push'](_0x2bf79f['shift']());}}}(_0xfa94,0xf2324));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x3cdd1a 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{createTunnelBridge,launchBrowserServer}from'./tunnelClient.js';const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x469649=await getToken();if(!_0x469649)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');return _0x469649;}async function apiRequest(_0x3ec3e5,_0xbffa8c={}){const _0x180d55=_0x5d69,_0x3c82aa={'Heyze':function(_0x51c318,_0x389db5){return _0x51c318===_0x389db5;},'ezdus':_0x180d55(0x169)},_0x26309f=await requireToken(),_0x365590=getApiBaseUrl(),_0x560f4f=await fetch(''+_0x365590+_0x3ec3e5,{..._0xbffa8c,'headers':{'Authorization':'Bearer\x20'+_0x26309f,'Content-Type':'application/json',..._0xbffa8c['headers']??{}}});if(!_0x560f4f['ok']){let _0xb2b4f='',_0x57eb0a;try{const _0x43b49c=await _0x560f4f[_0x180d55(0x1bc)]();_0xb2b4f=(_0x3c82aa['Heyze'](typeof _0x43b49c['error'],_0x3c82aa[_0x180d55(0x174)])?_0x43b49c['error']:undefined)??JSON['stringify'](_0x43b49c);if(typeof _0x43b49c[_0x180d55(0x15f)]===_0x3c82aa[_0x180d55(0x174)])_0x57eb0a=_0x43b49c[_0x180d55(0x15f)];}catch{_0xb2b4f=_0x560f4f[_0x180d55(0x1c6)];}throw new ApiError('API\x20request\x20'+_0x3ec3e5+'\x20failed\x20('+_0x560f4f['status']+_0x180d55(0x177)+_0xb2b4f,_0x560f4f['status'],_0xb2b4f,_0x57eb0a);}if(_0x3c82aa['Heyze'](_0x560f4f['status'],0xcc))return undefined;return _0x560f4f['json']();}export class ApiError extends Error{['status'];[_0x267a7c(0x19b)];[_0x267a7c(0x15f)];constructor(_0x4898bd,_0x3f712d,_0x3a5717,_0x176262){const _0x2fcc6c=_0x267a7c,_0x52c747={'NkGiV':_0x2fcc6c(0x162)};super(_0x4898bd),this[_0x2fcc6c(0x151)]=_0x3f712d,this['detail']=_0x3a5717,this[_0x2fcc6c(0x15f)]=_0x176262,this['name']=_0x52c747['NkGiV'];}}export async function fetchCloudProfile(_0x2ddb2a){const _0x40905c=_0x267a7c,_0x263908={'NVvnr':function(_0x278a46,_0x28c657){return _0x278a46(_0x28c657);},'qmewB':function(_0x5ee238,_0x22b4b3){return _0x5ee238(_0x22b4b3);},'GZvJl':function(_0x3504c7,_0x3fabd0){return _0x3504c7 instanceof _0x3fabd0;}};try{return await _0x263908['NVvnr'](apiRequest,_0x40905c(0x1c4)+_0x263908[_0x40905c(0x16c)](encodeURIComponent,_0x2ddb2a));}catch(_0x4079ea){if(_0x263908['GZvJl'](_0x4079ea,ApiError)&&_0x4079ea[_0x40905c(0x151)]===0x194)return null;throw _0x4079ea;}}export async function listCloudProfiles(){const _0xed4776=_0x267a7c,_0x547be8={'xsWTj':_0xed4776(0x18c)},_0x4357d9=await apiRequest(_0x547be8[_0xed4776(0x191)]);return _0x4357d9[_0xed4776(0x16d)];}export async function deleteCloudProfile(_0xd67576){const _0x5644e2=_0x267a7c,_0x5956db={'XGiCY':function(_0x2163e6,_0x3b28a4,_0x30c805){return _0x2163e6(_0x3b28a4,_0x30c805);},'CwzeG':'DELETE'};try{await _0x5956db['XGiCY'](apiRequest,_0x5644e2(0x1c4)+encodeURIComponent(_0xd67576),{'method':_0x5956db['CwzeG']});}catch(_0x507c16){if(_0x507c16 instanceof ApiError&&_0x507c16[_0x5644e2(0x151)]===0x194)throw new Error('Cloud\x20profile\x20\x22'+_0xd67576+_0x5644e2(0x194));throw _0x507c16;}}export async function createCloudProfile(_0x2401fc,_0xd848e3,_0x123018={}){const _0x724e73=_0x267a7c,_0x585746={'lKyDC':function(_0x3ba6b5,_0x298d3e){return _0x3ba6b5>_0x298d3e;},'ILFTz':function(_0x21b623,_0x36212d,_0x2ef8be){return _0x21b623(_0x36212d,_0x2ef8be);},'MpuOs':_0x724e73(0x18c),'ILjVn':'POST'},_0x6f93eb={'name':_0x2401fc};if(_0xd848e3)_0x6f93eb['environment_key']=_0xd848e3;_0x123018[_0x724e73(0x18d)]&&_0x585746[_0x724e73(0x161)](Object['keys'](_0x123018[_0x724e73(0x18d)])['length'],0x0)&&(_0x6f93eb[_0x724e73(0x18d)]=_0x123018['settings']);if(_0x123018[_0x724e73(0x14d)])_0x6f93eb[_0x724e73(0x14d)]=_0x123018[_0x724e73(0x14d)];if(_0x123018[_0x724e73(0x1b8)])_0x6f93eb['password']=_0x123018[_0x724e73(0x1b8)];return await _0x585746['ILFTz'](apiRequest,_0x585746['MpuOs'],{'method':_0x585746[_0x724e73(0x190)],'body':JSON[_0x724e73(0x1a3)](_0x6f93eb)});}function _0xfa94(){const _0x2daae8=['error','tunnelUrl','origin','ezdus','496938NZQolg','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','):\x20','forceLogin','catch','461394VHiRTx','ILQuo','XyfLZ','domains','nBuht','50392dvMSzm','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','xYNuN','map','isArray','cCZJi','utf-8','/api/v1/profiles/auth-config','clientIp','lCYSe','ZFKEg','\x20\x20No\x20live\x20session\x20for\x20\x22','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','/api/v1/profiles','settings','wsEndpoint','AmZiq','ILjVn','xsWTj','RANGER_TEST_USERNAME','newContext','\x22\x20not\x20found.','log','auth','\x22,\x20refreshing\x20session...','effectiveBaseUrl','environmentKey','nMFkg','detail','1WnFPUC','niMeh','OXqWQ','organizationId','ZdEVr','storageStatePath','toISOString','stringify','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','userAgent','session_state','bwqlq','36760999nWgFyo','HFHdg','POST','10WeyHlL','close','12Krhbjv','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','invalidateOn','raw','save','trim','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','Browser\x20login\x20timed\x20out\x20before\x20completion.','confirm','target_url',').\x20','password','not_configured','name','prompt','json','EtdBY','\x22\x20on\x20profile\x20\x22','you\x27re\x20now\x20at\x20\x22','loginInstructions','length','hHpmx','xGeAn','/api/v1/profiles/','BZIMK','statusText','setupHeaders','164690gfHATM','RANGER_TEST_PASSWORD','sessionCheckPath','Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.','dvvKc','\x20\x20Cloud\x20session\x20for\x20\x22','bEjrx','pwEndpoint','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','username','test_output','Gtcke','Browser\x20login\x20timed\x20out\x20after\x20','status','sessionId','force','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','tunnel','\x22,\x20cached\x20locally','targetUrl','5806520nHixcB','gRkmu','\x22;\x20proceeding\x20with\x20loginInstructions.','env','/api/v1/tunnel/sessions','parse','code','\x20\x20forceLogin\x20enabled\x20for\x20\x22','lKyDC','ApiError','launch','994uYCwsb','32DYHYDd','RFCqC','join','\x22\x20failed\x20validation\x20—\x20refreshing...','string','OCwQZ','zwsKE','qmewB','profiles','qgpYE','message','316023fakDdT'];_0xfa94=function(){return _0x2daae8;};return _0xfa94();}export async function uploadCloudProfileSession(_0x4c67f7,_0x571296){const _0x2b6a90=_0x267a7c;return await apiRequest(_0x2b6a90(0x1c4)+encodeURIComponent(_0x4c67f7)+'/session',{'method':'POST','body':JSON[_0x2b6a90(0x1a3)]({'session_state':_0x571296})});}export async function saveCloudProfileCredentials(_0x1290cc,_0x3509f5,_0x500d3f){await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x1290cc),{'method':'PUT','body':JSON['stringify']({'username':_0x3509f5,'password':_0x500d3f})});}export async function fetchAuthConfig(){const _0x5783ee=_0x267a7c,_0x1eca38={'xYNuN':function(_0x1117ec,_0x1d865a){return _0x1117ec(_0x1d865a);}};try{const _0x5ae3d9=await _0x1eca38[_0x5783ee(0x181)](apiRequest,_0x5783ee(0x186));return _0x5ae3d9['auth_config'];}catch(_0x44be34){return _0x44be34 instanceof ApiError&&_0x44be34[_0x5783ee(0x151)]!==0x194&&console['error']('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x44be34[_0x5783ee(0x16f)]),null;}}async function createTunnelSession(_0x5a198d){const _0x16cd50=_0x267a7c,_0x2b335e={'XyfLZ':function(_0xc7b812,_0x3a27e4,_0x2029b7){return _0xc7b812(_0x3a27e4,_0x2029b7);},'fsnMc':_0x16cd50(0x15d),'JUZwJ':_0x16cd50(0x1aa),'OCwQZ':'agent'};return await _0x2b335e[_0x16cd50(0x17c)](apiRequest,_0x2b335e['fsnMc'],{'method':_0x2b335e['JUZwJ'],'body':JSON['stringify']({'targetUrl':_0x5a198d,'mode':_0x2b335e[_0x16cd50(0x16a)]})});}async function deleteTunnelSession(_0x21e329){await apiRequest('/api/v1/tunnel/sessions/'+_0x21e329,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x1e6874){const _0x2f2885=_0x267a7c,_0x192455={'fDPEC':function(_0x265cd3,_0x39fa34){return _0x265cd3+_0x39fa34;}};if(!_0x1e6874)return null;if(_0x1e6874['defaultEnvironmentKey'])return _0x1e6874['defaultEnvironmentKey'];const _0x3195dd=Object['keys'](_0x1e6874['environments']??{});if(_0x3195dd['length']===0x1)return _0x3195dd[0x0];if(_0x3195dd[_0x2f2885(0x1c1)]===0x0)return null;throw new Error(_0x192455['fDPEC']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x3195dd['join'](',\x20')+_0x2f2885(0x1b7),_0x2f2885(0x147)));}export async function resolveAdHocProfile(_0x126ed9=process[_0x267a7c(0x15c)]){const _0x3f81a3=_0x267a7c,_0x456e8c={'OXqWQ':function(_0x10a185,_0x5e15d2){return _0x10a185(_0x5e15d2);},'aAEKN':function(_0x4dd669){return _0x4dd669();},'yOLBI':function(_0x251a3f,_0x2e5bf7){return _0x251a3f(_0x2e5bf7);},'hHpmx':function(_0x1d96b6,_0x2dbbda,_0x5b0e23,_0x4429d2){return _0x1d96b6(_0x2dbbda,_0x5b0e23,_0x4429d2);},'iAtyU':function(_0xbbe4dc,_0x1b3f2d){return _0xbbe4dc??_0x1b3f2d;}},_0x42624c=_0x126ed9[_0x3f81a3(0x192)];if(!_0x42624c)return null;const _0x4e0895=await _0x456e8c[_0x3f81a3(0x19e)](fetchCloudProfile,_0x42624c);if(_0x4e0895)return{'name':_0x4e0895['name'],'profile':_0x4e0895};const _0x240e00=await _0x456e8c['aAEKN'](fetchAuthConfig),_0x57493b=_0x456e8c['yOLBI'](pickAdHocEnvKey,_0x240e00),_0x1d9686=_0x126ed9['RANGER_TEST_PASSWORD'],_0x2a4bdf=await _0x456e8c[_0x3f81a3(0x1c2)](createCloudProfile,_0x42624c,_0x456e8c['iAtyU'](_0x57493b,undefined),{'username':_0x42624c,'password':_0x1d9686});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x2a4bdf['name']+'\x22\x20for\x20'+_0x42624c),{'name':_0x2a4bdf['name'],'profile':_0x2a4bdf};}export async function writeSessionToLocalCache(_0x3ab5e4,_0x4a2dc5,_0x24500d,_0xfda121,_0x5c79a0,_0x241c95,_0x24f4d5){const _0x3fbdf7=_0x267a7c,_0x557bb5={'IHSHk':function(_0xa862e6,_0x1006d1){return _0xa862e6(_0x1006d1);},'IiQzG':function(_0x559d53,_0x10f3d7,_0x40433d){return _0x559d53(_0x10f3d7,_0x40433d);},'HgIMz':function(_0xe1c492){return _0xe1c492();},'xGeAn':_0x3fbdf7(0x196),'XaAAg':function(_0x3b5b08,_0x57b101){return _0x3b5b08>_0x57b101;},'NLKSv':function(_0x15f0db,_0x3b9344,_0x3cd408){return _0x15f0db(_0x3b9344,_0x3cd408);},'FSooH':function(_0x13201d,_0x4b1d8b,_0x27487b){return _0x13201d(_0x4b1d8b,_0x27487b);},'fRerm':function(_0x153db5,_0x1c1242,_0x10f573){return _0x153db5(_0x1c1242,_0x10f573);}},_0x5b8e92=_0x557bb5['IHSHk'](sessionCacheHash,{'orgId':_0x4a2dc5,'profileName':_0x3ab5e4,'effectiveBaseUrl':_0x24500d,'setupHeaders':_0xfda121,'invalidateOn':_0x24f4d5?.[_0x3fbdf7(0x1af)],'userAgent':_0x24f4d5?.['userAgent'],'clientIp':_0x24f4d5?.[_0x3fbdf7(0x187)]}),_0x3cd23b=_0x557bb5['IiQzG'](getSessionCachePath,_0x5b8e92,_0x3ab5e4),_0x1d1a3c=join(_0x557bb5['HgIMz'](getRangerHomeDir),_0x557bb5[_0x3fbdf7(0x1c3)]);!_0x557bb5['IHSHk'](existsSync,_0x1d1a3c)&&await mkdir(_0x1d1a3c,{'recursive':!![]});const _0x3f0c76={..._0x5c79a0};_0x241c95&&_0x557bb5['XaAAg'](_0x241c95['length'],0x0)&&Array[_0x3fbdf7(0x183)](_0x3f0c76['cookies'])&&(_0x3f0c76['cookies']=_0x557bb5['NLKSv'](duplicateCookiesForDomains,_0x3f0c76['cookies'],_0x241c95));const _0x900f4={'cached_at':new Date()[_0x3fbdf7(0x1a2)](),'session_state':_0x3f0c76};await _0x557bb5['FSooH'](writeFile,_0x3cd23b,JSON['stringify'](_0x900f4,null,0x2));const _0x1797b2=getStorageStatePath(_0x3cd23b);return await _0x557bb5['fRerm'](writeFile,_0x1797b2,JSON[_0x3fbdf7(0x1a3)](_0x3f0c76,null,0x2)),_0x1797b2;}export async function checkLocalCache(_0xfd2b89,_0x4eae7e,_0x11b39b,_0x3251eb,_0x2ce630){const _0x511c08=_0x267a7c,_0x54cd82={'EtdBY':function(_0x164c8f,_0x188713){return _0x164c8f(_0x188713);},'oOsiz':function(_0x5d29f3,_0x54bec5,_0x440fb8){return _0x5d29f3(_0x54bec5,_0x440fb8);},'ycBcv':function(_0x397f66,_0x277888){return _0x397f66(_0x277888);},'FgQMo':function(_0x3b6e45,_0x83308b){return _0x3b6e45(_0x83308b);}},_0x458db6=_0x54cd82[_0x511c08(0x1bd)](sessionCacheHash,{'orgId':_0x4eae7e,'profileName':_0xfd2b89,'effectiveBaseUrl':_0x11b39b,'setupHeaders':_0x3251eb,'invalidateOn':_0x2ce630?.[_0x511c08(0x1af)],'userAgent':_0x2ce630?.['userAgent'],'clientIp':_0x2ce630?.[_0x511c08(0x187)]}),_0x3de158=_0x54cd82['oOsiz'](getSessionCachePath,_0x458db6,_0xfd2b89),_0x3ca207=_0x54cd82['EtdBY'](getStorageStatePath,_0x3de158);if(!_0x54cd82['ycBcv'](existsSync,_0x3de158)||!_0x54cd82['FgQMo'](existsSync,_0x3ca207))return null;try{const _0xfd994b=await _0x54cd82['oOsiz'](readFile,_0x3de158,_0x511c08(0x185));return JSON[_0x511c08(0x15e)](_0xfd994b),{'storageStatePath':_0x3ca207};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x1eec42,_0xdb4f8c){const _0x4ce480=_0x267a7c,_0x489fc6={'TiUzc':function(_0x3ca35b,_0xb81b73){return _0x3ca35b===_0xb81b73;},'dEZoj':function(_0x3495ff,_0x8da2be){return _0x3495ff+_0x8da2be;}};if(!_0xdb4f8c||!_0xdb4f8c['domains']?.['length'])return;let _0x51e155;try{_0x51e155=new URL(_0x1eec42);}catch{return;}const _0x1d6724=[];for(const _0xa3d34c of _0xdb4f8c[_0x4ce480(0x17d)]){try{_0x1d6724['push']({'raw':_0xa3d34c,'url':new URL(_0xa3d34c)});}catch{}}if(_0x489fc6['TiUzc'](_0x1d6724['length'],0x0))return;if(_0x1d6724['some'](_0x220c4c=>_0x220c4c['url'][_0x4ce480(0x173)]===_0x51e155['origin']))return;const _0x3b9df8=_0x1d6724[_0x4ce480(0x182)](_0x5c5571=>'\x22'+_0x5c5571[_0x4ce480(0x1b0)]+'\x22')[_0x4ce480(0x167)](',\x20');console['log'](_0x489fc6['dEZoj']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x3b9df8+';\x20',_0x4ce480(0x1bf)+_0x1eec42+_0x4ce480(0x14c))+_0x4ce480(0x1ae));}export async function serverSideLogin(_0x17ca33,_0x1c8b7b){const _0x342c45=_0x267a7c,_0x2ee7ae={'zwsKE':function(_0x4a4805,_0x3e7b34,_0x129a8f){return _0x4a4805(_0x3e7b34,_0x129a8f);},'WXWgP':function(_0x934022,_0xfdc4c2){return _0x934022(_0xfdc4c2);},'vbONL':function(_0x37428f,_0x513152){return _0x37428f instanceof _0x513152;}},_0x29815a=process['env']['RANGER_TEST_USERNAME'],_0x3acbc9=process['env'][_0x342c45(0x145)],_0x2134b4={};if(_0x29815a)_0x2134b4[_0x342c45(0x14d)]=_0x29815a;if(_0x3acbc9)_0x2134b4['password']=_0x3acbc9;if(_0x1c8b7b?.[_0x342c45(0x153)])_0x2134b4[_0x342c45(0x153)]=!![];if(_0x1c8b7b?.['targetUrl'])_0x2134b4[_0x342c45(0x1b6)]=_0x1c8b7b[_0x342c45(0x158)];_0x1c8b7b?.['tunnel']&&(_0x2134b4['tunnel_session_id']=_0x1c8b7b[_0x342c45(0x156)]['sessionId'],_0x2134b4['pw_endpoint']=_0x1c8b7b['tunnel'][_0x342c45(0x14b)]);try{return await _0x2ee7ae[_0x342c45(0x16b)](apiRequest,'/api/v1/profiles/'+_0x2ee7ae['WXWgP'](encodeURIComponent,_0x17ca33)+'/login',{'method':'POST','body':JSON['stringify'](_0x2134b4)});}catch(_0x38063b){if(_0x2ee7ae['vbONL'](_0x38063b,ApiError)&&_0x38063b[_0x342c45(0x151)]===0x190&&_0x38063b['code']===_0x342c45(0x1b9))return{'status':'not_configured','error':_0x38063b[_0x342c45(0x19b)]};throw _0x38063b;}}function _0x5d69(_0x3527e6,_0x4b6ef2){_0x3527e6=_0x3527e6-0x143;const _0xfa949=_0xfa94();let _0x5d69d5=_0xfa949[_0x3527e6];return _0x5d69d5;}async function serverSideLoginWithOptionalTunnel(_0x2c918a,_0x3e5eb2,_0x6f4af1={}){const _0x2b67f4=_0x267a7c,_0x26746e={'HFHdg':function(_0x1b7665,_0x2eb00f){return _0x1b7665(_0x2eb00f);},'ILQuo':function(_0x26ca1e,_0x232283,_0x193690){return _0x26ca1e(_0x232283,_0x193690);},'KAdgx':function(_0x320d8a,_0x4027ee){return _0x320d8a(_0x4027ee);}};if(!_0x26746e['HFHdg'](needsTunnel,_0x3e5eb2))return await _0x26746e['ILQuo'](serverSideLogin,_0x2c918a,{'force':_0x6f4af1['force']});let _0xe96b9d=null,_0x548026=null,_0x3dbfed=null;try{_0xe96b9d=await _0x26746e['HFHdg'](launchBrowserServer,{'headless':!![]}),_0x548026=await _0x26746e['KAdgx'](createTunnelSession,_0x3e5eb2);const _0x2b32fa=await requireToken();return _0x3dbfed=await _0x26746e[_0x2b67f4(0x1a9)](createTunnelBridge,{'localWsUrl':_0xe96b9d[_0x2b67f4(0x18e)],'tunnelServerUrl':_0x548026[_0x2b67f4(0x172)],'sessionId':_0x548026[_0x2b67f4(0x152)],'apiKey':_0x2b32fa}),await _0x26746e[_0x2b67f4(0x17b)](serverSideLogin,_0x2c918a,{'force':_0x6f4af1[_0x2b67f4(0x153)],'targetUrl':_0x3e5eb2,'tunnel':{'sessionId':_0x548026['sessionId'],'pwEndpoint':_0x548026['pwEndpoint']}});}finally{_0x3dbfed?.[_0x2b67f4(0x1ac)](),_0xe96b9d&&await _0xe96b9d[_0x2b67f4(0x1ac)]()[_0x2b67f4(0x179)](()=>{}),_0x548026&&await deleteTunnelSession(_0x548026[_0x2b67f4(0x152)])[_0x2b67f4(0x179)](()=>{});}}export async function manualBrowserLogin(_0x563d67,_0x2561da,_0x2f73d5={}){const _0x589517=_0x267a7c,_0x2767f5={'zKNMT':function(_0x238de0,_0x50e12f){return _0x238de0/_0x50e12f;},'qgpYE':function(_0x4b4635,_0x47d23c,_0x37e6b1){return _0x4b4635(_0x47d23c,_0x37e6b1);},'vBTfJ':function(_0x1b2c81){return _0x1b2c81();},'hHapX':'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','gRkmu':function(_0xc9c5f3,_0x2f6d65){return _0xc9c5f3>_0x2f6d65;},'nMFkg':'about:blank','dvvKc':_0x589517(0x18b),'cCZJi':function(_0x2cecaa,_0x3e4f2b){return _0x2cecaa(_0x3e4f2b);}};if(!_0x2767f5['vBTfJ'](isInteractive))throw new Error('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x563d67[_0x589517(0x1ba)]+'\x22.\x0a'+'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'+_0x2767f5['hHapX']);const _0x42f6f7=_0x2561da&&_0x2767f5[_0x589517(0x15a)](_0x2561da['domains']['length'],0x0)?_0x2561da['domains'][0x0]:_0x2767f5[_0x589517(0x19a)];console['log'](_0x2767f5[_0x589517(0x148)]),console[_0x589517(0x195)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0xdbd52f=>setTimeout(_0xdbd52f,0x7d0));const _0x5e95c6=await chromium[_0x589517(0x163)]({'headless':![]});let _0x47bacf=null;try{const _0x4bc88c={'ignoreHTTPSErrors':!![]};_0x2561da?.[_0x589517(0x143)]&&(_0x4bc88c['extraHTTPHeaders']=_0x2561da[_0x589517(0x143)]);const _0x56ea67=await _0x5e95c6[_0x589517(0x193)](_0x4bc88c);await _0x2767f5[_0x589517(0x184)](addProfileSetupBanner,_0x56ea67);const _0x55e338=await _0x56ea67['newPage']();await _0x55e338['goto'](_0x42f6f7);let _0x25b843=![];await new Promise(_0x1a3a25=>{const _0x31dac1=_0x589517,_0x57c86={'lCYSe':function(_0x2a0e94,_0x3cc25b){return _0x2767f5['zKNMT'](_0x2a0e94,_0x3cc25b);},'RFCqC':function(_0x227c4c){return _0x227c4c();}},_0x59efce=_0x2767f5[_0x31dac1(0x16e)](setTimeout,()=>{const _0x1e85d0=_0x31dac1;_0x25b843=!![],console[_0x1e85d0(0x171)](_0x1e85d0(0x150)+_0x57c86[_0x1e85d0(0x188)](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x57c86[_0x1e85d0(0x166)](_0x1a3a25);},MANUAL_LOGIN_TIMEOUT_MS);_0x55e338['on']('close',async()=>{clearTimeout(_0x59efce);try{const _0x53d4de=await _0x56ea67['storageState']();_0x47bacf=_0x53d4de;}catch{}_0x1a3a25();});});if(_0x25b843&&!_0x47bacf)throw new Error(_0x589517(0x1b4));}finally{await _0x5e95c6[_0x589517(0x1ac)]()['catch'](()=>{});}if(!_0x47bacf)throw new Error('Browser\x20closed\x20before\x20authentication\x20was\x20saved.');return _0x2f73d5['persistSessionState']!==![]&&await _0x2767f5['qgpYE'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x563d67[_0x589517(0x1ba)])+'/session',{'method':'POST','body':JSON['stringify']({'session_state':_0x47bacf,'updated_by':'cli:manual-login'})}),{'sessionState':_0x47bacf};}export async function promptSaveCredentials(_0x4e2bdf){const _0x41c882=_0x267a7c,_0x208133={'vskYL':function(_0x5b00ea,_0x155cb3){return _0x5b00ea||_0x155cb3;},'bwqlq':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','UQlxZ':function(_0x50c86a,_0x2ec96e,_0x1dde79){return _0x50c86a(_0x2ec96e,_0x1dde79);},'Gtcke':function(_0x130316,_0x586347){return _0x130316(_0x586347);}},_0x1ce4d5=process[_0x41c882(0x15c)][_0x41c882(0x192)],_0x56007b=process[_0x41c882(0x15c)]['RANGER_TEST_PASSWORD'];if(_0x208133['vskYL'](!_0x1ce4d5,!_0x56007b))return;if(!isInteractive())return;const {save:_0x57d5fe}=await _0x3cdd1a[_0x41c882(0x1bb)]([{'type':_0x41c882(0x1b5),'name':_0x41c882(0x1b1),'message':_0x208133[_0x41c882(0x1a7)],'default':![]}]);if(!_0x57d5fe)return;await _0x208133['UQlxZ'](apiRequest,_0x41c882(0x1c4)+_0x208133[_0x41c882(0x14f)](encodeURIComponent,_0x4e2bdf),{'method':'PUT','body':JSON['stringify']({'username':_0x1ce4d5,'password':_0x56007b})}),console[_0x41c882(0x195)](_0x41c882(0x1b3));}export async function resolveCloudProfileSession(_0x1aa68f,_0x3160f8={}){const _0x2aaa34=_0x267a7c,_0x2c7698={'ZFKEg':function(_0x14e6df,_0x2e39af){return _0x14e6df===_0x2e39af;},'niMeh':function(_0x56d736,_0x44e3e8){return _0x56d736(_0x44e3e8);},'nBuht':function(_0x373c4f,_0x139eb2){return _0x373c4f>_0x139eb2;},'SugkM':function(_0xbedfa9,_0x30980e,_0x4e26a6,_0x2cb200,_0xaf18bc){return _0xbedfa9(_0x30980e,_0x4e26a6,_0x2cb200,_0xaf18bc);},'ZdEVr':function(_0x285255,_0x4a1cd3,_0x408308){return _0x285255(_0x4a1cd3,_0x408308);},'RqDTN':function(_0x3e6fdd,_0x3ab4d6,_0x556920,_0x2a1cb9,_0x90cd1c){return _0x3e6fdd(_0x3ab4d6,_0x556920,_0x2a1cb9,_0x90cd1c);},'BZIMK':'not_configured','oCAKY':'\x20\x20Login\x20successful.\x20Session\x20cached.','AmZiq':_0x2aaa34(0x1a4),'ipIWv':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','bEjrx':function(_0x26aaac,_0x39c0f6){return _0x26aaac(_0x39c0f6);},'wXxle':function(_0x3b1cbd,_0x75f85,_0x304231,_0x579f97){return _0x3b1cbd(_0x75f85,_0x304231,_0x579f97);},'rfCRl':function(_0xa3ce58,_0x134323,_0x56dcac,_0x56ae8a,_0x4f8ff6,_0x1babbe,_0x2fb848,_0x192603){return _0xa3ce58(_0x134323,_0x56dcac,_0x56ae8a,_0x4f8ff6,_0x1babbe,_0x2fb848,_0x192603);}},_0x59efb1=_0x1aa68f[_0x2aaa34(0x18d)]??{},_0x3b82f5=await fetchAuthConfig(),_0x27a108=_0x3b82f5?resolveAuthEnvironmentLocally(_0x3b82f5,_0x1aa68f['environmentKey']):null,_0x5f405a=typeof _0x27a108?.[_0x2aaa34(0x1c0)]===_0x2aaa34(0x169)&&_0x27a108['loginInstructions'][_0x2aaa34(0x1b2)]()?_0x27a108['loginInstructions']:undefined,_0x444f9a=_0x2c7698[_0x2aaa34(0x189)](typeof _0x59efb1[_0x2aaa34(0x1c0)],'string')&&_0x59efb1['loginInstructions']['trim']()?_0x59efb1[_0x2aaa34(0x1c0)]:undefined,_0x1f13c9=_0x444f9a||!_0x5f405a?_0x59efb1:{..._0x59efb1,'loginInstructions':_0x5f405a},_0x4cad8b=_0x2c7698[_0x2aaa34(0x19d)](Boolean,_0x1f13c9[_0x2aaa34(0x1c0)]?.['trim']()),_0x39943b=Boolean(_0x59efb1['forceLogin']||_0x27a108?.[_0x2aaa34(0x178)]),_0x4f6494=_0x27a108?.['domains'],_0x3db2f9=_0x59efb1[_0x2aaa34(0x143)],_0x343c01=_0x3db2f9??_0x27a108?.[_0x2aaa34(0x143)],_0x2fc98e=_0x3160f8[_0x2aaa34(0x198)]??_0x59efb1['baseUrl']??(_0x4f6494&&_0x2c7698[_0x2aaa34(0x17e)](_0x4f6494[_0x2aaa34(0x1c1)],0x0)?_0x4f6494[0x0]:''),_0x411186=_0x2fc98e?needsTunnel(_0x2fc98e):![],_0x4b188e={'invalidateOn':_0x27a108?.[_0x2aaa34(0x1af)],'userAgent':_0x27a108?.['browserOptions']?.['userAgent']??_0x59efb1[_0x2aaa34(0x1a5)]};_0x39943b&&console[_0x2aaa34(0x195)](_0x2aaa34(0x160)+_0x1aa68f[_0x2aaa34(0x1ba)]+_0x2aaa34(0x197));if(!_0x39943b){const _0x5c5389=await checkLocalCache(_0x1aa68f['name'],_0x1aa68f[_0x2aaa34(0x19f)],_0x2fc98e,_0x343c01,_0x4b188e);if(_0x5c5389){if(_0x2fc98e&&!_0x411186){const _0x599d57=await _0x2c7698['SugkM'](isCachedSessionLive,_0x5c5389[_0x2aaa34(0x1a1)],_0x2fc98e,{'sessionCheckPath':_0x27a108?.[_0x2aaa34(0x146)],'setupHeaders':_0x343c01},{'launchBrowser':launchRealBrowser});if(_0x599d57)return console['log']('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x1aa68f['name']+'\x22'),{'authPath':_0x5c5389[_0x2aaa34(0x1a1)],'settings':_0x1f13c9,'resolvedEnv':_0x27a108};console[_0x2aaa34(0x195)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x1aa68f['name']+_0x2aaa34(0x168)),_0x2c7698[_0x2aaa34(0x1a0)](emitSessionValidationHint,_0x2fc98e,_0x27a108);}else return _0x411186&&console['log'](_0x2aaa34(0x180)+_0x1aa68f[_0x2aaa34(0x1ba)]+'\x22'),{'authPath':_0x5c5389['storageStatePath'],'settings':_0x1f13c9,'resolvedEnv':_0x27a108};}}if(!_0x39943b&&_0x1aa68f['sessionState']){if(_0x411186)console[_0x2aaa34(0x195)](_0x2aaa34(0x176)+_0x2fc98e+_0x2aaa34(0x1be)+_0x1aa68f[_0x2aaa34(0x1ba)]+'\x22');else{const _0xa57f5a=await writeSessionToLocalCache(_0x1aa68f[_0x2aaa34(0x1ba)],_0x1aa68f['organizationId'],_0x2fc98e,_0x343c01,_0x1aa68f['sessionState'],_0x4f6494,_0x4b188e);if(_0x2fc98e){const _0x30c268=await _0x2c7698['RqDTN'](isCachedSessionLive,_0xa57f5a,_0x2fc98e,{'sessionCheckPath':_0x27a108?.['sessionCheckPath'],'setupHeaders':_0x343c01},{'launchBrowser':launchRealBrowser});if(_0x30c268)return console['log'](_0x2aaa34(0x155)+_0x1aa68f['name']+_0x2aaa34(0x157)),{'authPath':_0xa57f5a,'settings':_0x1f13c9,'resolvedEnv':_0x27a108};console['log'](_0x2aaa34(0x149)+_0x1aa68f[_0x2aaa34(0x1ba)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x2c7698['ZdEVr'](emitSessionValidationHint,_0x2fc98e,_0x27a108);}else return{'authPath':_0xa57f5a,'settings':_0x1f13c9,'resolvedEnv':_0x27a108};}}if(_0x4cad8b)return console['log'](_0x2aaa34(0x18a)+_0x1aa68f[_0x2aaa34(0x1ba)]+_0x2aaa34(0x15b)),{'authPath':undefined,'settings':_0x1f13c9,'resolvedEnv':_0x27a108};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x1aa68f['name']+'\x22,\x20attempting\x20login...');const _0x4d9927=_0x2c7698[_0x2aaa34(0x19d)](Boolean,process['env']['RANGER_TEST_USERNAME'])&&Boolean(process['env'][_0x2aaa34(0x145)]),_0x2c12c2=_0x2c7698[_0x2aaa34(0x19d)](Boolean,_0x1aa68f['username']);if(_0x4d9927||_0x2c12c2)try{const _0x4ba832=_0x2fc98e?await serverSideLoginWithOptionalTunnel(_0x1aa68f['name'],_0x2fc98e,{'force':_0x39943b}):await _0x2c7698['ZdEVr'](serverSideLogin,_0x1aa68f[_0x2aaa34(0x1ba)],{'force':_0x39943b});if(_0x4ba832[_0x2aaa34(0x151)]===_0x2c7698[_0x2aaa34(0x1c5)])console['log'](_0x2aaa34(0x154));else{if(_0x4ba832['status']==='success'&&_0x4ba832[_0x2aaa34(0x1a6)]){console['log'](_0x2c7698['oCAKY']);const _0x39599d=await writeSessionToLocalCache(_0x1aa68f[_0x2aaa34(0x1ba)],_0x1aa68f[_0x2aaa34(0x19f)],_0x2fc98e,_0x343c01,_0x4ba832[_0x2aaa34(0x1a6)],_0x4f6494,_0x4b188e);return _0x4d9927&&!_0x2c12c2&&await _0x2c7698['niMeh'](promptSaveCredentials,_0x1aa68f[_0x2aaa34(0x1ba)]),{'authPath':_0x39599d,'settings':_0x1f13c9,'resolvedEnv':_0x27a108};}else _0x4ba832['test_output']&&(console[_0x2aaa34(0x195)](_0x2c7698[_0x2aaa34(0x18f)]),console[_0x2aaa34(0x195)](_0x4ba832[_0x2aaa34(0x14e)])),console[_0x2aaa34(0x195)](_0x2c7698['ipIWv']);}}catch(_0x30a033){console[_0x2aaa34(0x195)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0x30a033 instanceof Error?_0x30a033[_0x2aaa34(0x16f)]:_0x2c7698[_0x2aaa34(0x14a)](String,_0x30a033))),console[_0x2aaa34(0x195)](_0x2c7698['ipIWv']);}const _0x1622f7=_0x27a108?{..._0x27a108,'setupHeaders':_0x343c01}:_0x2fc98e?{'key':_0x1aa68f[_0x2aaa34(0x199)]??'','domains':[_0x2fc98e],'setupHeaders':_0x343c01}:null,{sessionState:_0x128ca2}=await _0x2c7698['wXxle'](manualBrowserLogin,_0x1aa68f,_0x1622f7,{'persistSessionState':!_0x411186}),_0x207c0a=await _0x2c7698['rfCRl'](writeSessionToLocalCache,_0x1aa68f[_0x2aaa34(0x1ba)],_0x1aa68f[_0x2aaa34(0x19f)],_0x2fc98e,_0x343c01,_0x128ca2,_0x4f6494,_0x4b188e);return{'authPath':_0x207c0a,'settings':_0x1f13c9,'resolvedEnv':_0x27a108};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x3b66(_0x4b615b,_0x44a362){_0x4b615b=_0x4b615b-0xa6;const _0x15f107=_0x15f1();let _0x3b6670=_0x15f107[_0x4b615b];return _0x3b6670;}const _0x2c6ce9=_0x3b66;(function(_0x219b6a,_0x2c4f25){const _0x44c7b1=_0x3b66,_0xa54d40=_0x219b6a();while(!![]){try{const _0x36194a=parseInt(_0x44c7b1(0xc8))/0x1+-parseInt(_0x44c7b1(0xac))/0x2*(parseInt(_0x44c7b1(0xd8))/0x3)+-parseInt(_0x44c7b1(0xbd))/0x4*(-parseInt(_0x44c7b1(0xc4))/0x5)+parseInt(_0x44c7b1(0xcc))/0x6+-parseInt(_0x44c7b1(0xb4))/0x7+parseInt(_0x44c7b1(0xd1))/0x8*(-parseInt(_0x44c7b1(0xb7))/0x9)+parseInt(_0x44c7b1(0xb0))/0xa;if(_0x36194a===_0x2c4f25)break;else _0xa54d40['push'](_0xa54d40['shift']());}catch(_0x5a92fd){_0xa54d40['push'](_0xa54d40['shift']());}}}(_0x15f1,0x489f6));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x11767d=process['env'],_0x2b07d3={'stdin':process['stdin'],'stdout':process[_0x2c6ce9(0xb1)]}){const _0x45c56b=_0x2c6ce9,_0x174ef2={'xdcfq':function(_0x4a6ed8,_0x3a6aed){return _0x4a6ed8(_0x3a6aed);},'GlcOP':function(_0x9e09aa,_0x52a338){return _0x9e09aa(_0x52a338);}};if(_0x11767d['CI'])return![];return _0x174ef2[_0x45c56b(0xae)](Boolean,_0x2b07d3[_0x45c56b(0xc9)][_0x45c56b(0xb8)])&&_0x174ef2['GlcOP'](Boolean,_0x2b07d3[_0x45c56b(0xb1)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x1d6210){const _0x9d712f=_0x2c6ce9,_0x1b81fa={'zKxcR':'baseUrl','pgBJD':_0x9d712f(0xd7),'JEdqt':function(_0x12358d,_0x464fba){return _0x12358d(_0x464fba);},'YRsrY':'userAgent','gDdYC':_0x9d712f(0xd4),'sBsAx':'sha256'},_0x55b730=new Set(_0x1d6210[_0x9d712f(0xd5)]??DEFAULT_INVALIDATE_ON),_0xc3f943={'orgId':_0x1d6210['orgId'],'profileName':_0x1d6210['profileName']};return _0x55b730['has'](_0x1b81fa[_0x9d712f(0xc7)])&&(_0xc3f943['effectiveBaseUrl']=_0x1d6210['effectiveBaseUrl']),_0x55b730['has'](_0x1b81fa[_0x9d712f(0xcf)])&&(_0xc3f943[_0x9d712f(0xd7)]=_0x1d6210[_0x9d712f(0xd7)]?_0x1b81fa['JEdqt'](sortObjectKeys,_0x1d6210['setupHeaders']):_0x1d6210['setupHeaders']),_0x55b730[_0x9d712f(0xad)](_0x9d712f(0xc1))&&(_0xc3f943[_0x9d712f(0xc1)]=extractPort(_0x1d6210['effectiveBaseUrl'])),_0x55b730['has'](_0x1b81fa['YRsrY'])&&_0x1d6210[_0x9d712f(0xa9)]!==undefined&&(_0xc3f943['userAgent']=_0x1d6210[_0x9d712f(0xa9)]),_0x55b730[_0x9d712f(0xad)](_0x1b81fa[_0x9d712f(0xba)])&&_0x1d6210[_0x9d712f(0xd4)]!==undefined&&(_0xc3f943[_0x9d712f(0xd4)]=_0x1d6210['clientIp']),createHash(_0x1b81fa[_0x9d712f(0xca)])[_0x9d712f(0xd3)](JSON[_0x9d712f(0xbe)](_0xc3f943))['digest']('hex')[_0x9d712f(0xcb)](0x0,0xc);}function extractPort(_0x201a03){try{return new URL(_0x201a03)['port'];}catch{return'';}}function sortObjectKeys(_0x811e43){const _0x244077=_0x2c6ce9,_0x3aec69={};for(const _0x22d319 of Object['keys'](_0x811e43)[_0x244077(0xa6)]()){_0x3aec69[_0x22d319]=_0x811e43[_0x22d319];}return _0x3aec69;}export function getSessionCachePath(_0x157175,_0x19ae53){const _0x5d4ffd=_0x2c6ce9,_0x34e9aa={'AhTOK':_0x5d4ffd(0xb2)};return join(getRangerHomeDir(),_0x34e9aa['AhTOK'],_0x157175+'-'+_0x19ae53+_0x5d4ffd(0xc2));}function _0x15f1(){const _0x37e196=['gDdYC','toString','JERSJ','903568JEkipP','stringify','status','goto','port','.json','YUGdf','5aXSGlk','keys','includes','zKxcR','173266IXdeoQ','stdin','sBsAx','slice','2620062hvKpdM','VhxML','NpQHz','pgBJD','sessionCheckPath','319528IlAMuM','launchBrowser','update','clientIp','invalidateOn','defaultEnvironmentKey','setupHeaders','22953rqKhaL','sort','hostname','push','userAgent','test','catch','50DIlKUw','has','xdcfq','url','831650MzbWeY','stdout','auth','startsWith','2452667dUVCkP','map','localhost.','18vMuuRw','isTTY','domcontentloaded'];_0x15f1=function(){return _0x37e196;};return _0x15f1();}export function getStorageStatePath(_0x10e349){return _0x10e349['replace'](/\.json$/,'.storageState.json');}export function needsTunnel(_0x25ae02){const _0x52d790=_0x2c6ce9,_0x345a80={'JERSJ':'127.0.0.1'};let _0x100214;try{_0x100214=new URL(_0x25ae02)['hostname'];}catch{return![];}if(_0x100214==='localhost'||_0x100214===_0x345a80[_0x52d790(0xbc)])return!![];if(_0x100214['endsWith']('.localhost'))return!![];if(_0x100214[_0x52d790(0xc6)](_0x52d790(0xb6)))return!![];return![];}export function hostnameOf(_0x332e3a){const _0x579507=_0x2c6ce9;return new URL(_0x332e3a)[_0x579507(0xa7)];}export function duplicateCookiesForDomains(_0x343970,_0x3b6cbb){const _0x5dbbc7=_0x2c6ce9,_0x55c7fa={'NpQHz':function(_0x31e6c8,_0x4cd6af){return _0x31e6c8(_0x4cd6af);}},_0x2e89f0=[..._0x343970],_0x28b6a4=new Set(_0x343970[_0x5dbbc7(0xb5)](_0x529579=>_0x529579['domain']));for(const _0x17b388 of _0x3b6cbb){let _0x3d9ff5;try{_0x3d9ff5=_0x55c7fa[_0x5dbbc7(0xce)](hostnameOf,_0x17b388);}catch{continue;}if(!_0x3d9ff5)continue;const _0x4b5c14=_0x3d9ff5[_0x5dbbc7(0xb3)]('.')?_0x3d9ff5:'.'+_0x3d9ff5;if(_0x28b6a4['has'](_0x3d9ff5)||_0x28b6a4['has'](_0x4b5c14))continue;for(const _0x488bf8 of _0x343970){_0x2e89f0[_0x5dbbc7(0xa8)]({..._0x488bf8,'domain':_0x4b5c14});}_0x28b6a4['add'](_0x4b5c14);}return _0x2e89f0;}export function resolveAuthEnvironmentLocally(_0x48791a,_0x227583){const _0x1b4839=_0x2c6ce9,_0x401a1d=_0x48791a['environments'];if(_0x227583){const _0x46c14e=_0x401a1d[_0x227583];if(!_0x46c14e)return null;return{'key':_0x227583,..._0x46c14e};}if(_0x48791a[_0x1b4839(0xd6)]){const _0x16de2c=_0x401a1d[_0x48791a[_0x1b4839(0xd6)]];if(!_0x16de2c)return null;return{'key':_0x48791a[_0x1b4839(0xd6)],..._0x16de2c};}const _0x1dc561=Object[_0x1b4839(0xc5)](_0x401a1d);if(_0x1dc561['length']===0x1){const _0x6a5f13=_0x1dc561[0x0];return{'key':_0x6a5f13,..._0x401a1d[_0x6a5f13]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x5409b6,_0x3597f8){const _0x224fe2=_0x2c6ce9;try{if(_0x3597f8)return new URL(_0x3597f8,_0x5409b6)[_0x224fe2(0xbb)]();return new URL(_0x5409b6)['toString']();}catch{return null;}}export function looksLikeLoginUrl(_0x58493d){const _0x118d07=_0x2c6ce9;try{const _0x7fe267=new URL(_0x58493d);return LOGIN_URL_PATTERN[_0x118d07(0xaa)](_0x7fe267['pathname']);}catch{return LOGIN_URL_PATTERN['test'](_0x58493d);}}export async function isCachedSessionLive(_0x462988,_0x25b0d4,_0x2c58d2={},_0x75f2c1={}){const _0xe9d531=_0x2c6ce9,_0x18a3bf={'VhxML':function(_0x15e592,_0x4a1704,_0x527b0d){return _0x15e592(_0x4a1704,_0x527b0d);},'YUGdf':function(_0x5b60a1,_0x57bd18){return _0x5b60a1===_0x57bd18;},'UnyWt':function(_0x2d3fd1,_0x800f05){return _0x2d3fd1(_0x800f05);}},_0xebcb10=_0x18a3bf[_0xe9d531(0xcd)](buildSessionCheckUrl,_0x25b0d4,_0x2c58d2[_0xe9d531(0xd0)]);if(!_0xebcb10)return!![];if(!_0x75f2c1['launchBrowser'])return!![];let _0xf9d1d9=null;try{_0xf9d1d9=await _0x75f2c1[_0xe9d531(0xd2)]();const _0x56aef7=await _0xf9d1d9['newContext']({'storageState':_0x462988,'ignoreHTTPSErrors':!![],..._0x2c58d2['setupHeaders']?{'extraHTTPHeaders':_0x2c58d2[_0xe9d531(0xd7)]}:{}}),_0x383667=await _0x56aef7['newPage'](),_0x418b4f=await _0x383667[_0xe9d531(0xc0)](_0xebcb10,{'waitUntil':_0xe9d531(0xb9),'timeout':0x3a98}),_0x5adf74=_0x418b4f?.[_0xe9d531(0xbf)]();if(_0x18a3bf[_0xe9d531(0xc3)](_0x5adf74,0x191)||_0x5adf74===0x193)return![];const _0x4f524d=_0x383667[_0xe9d531(0xaf)]();if(_0x18a3bf['UnyWt'](looksLikeLoginUrl,_0x4f524d))return![];return!![];}catch{return![];}finally{if(_0xf9d1d9)await _0xf9d1d9['close']()[_0xe9d531(0xab)](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x271ee0,_0x16480b){const _0x3782f8=_0x584e,_0x1b71be=_0x271ee0();while(!![]){try{const _0x41292d=-parseInt(_0x3782f8(0xab))/0x1*(-parseInt(_0x3782f8(0xb9))/0x2)+-parseInt(_0x3782f8(0xb8))/0x3*(parseInt(_0x3782f8(0xac))/0x4)+-parseInt(_0x3782f8(0xb1))/0x5+-parseInt(_0x3782f8(0xba))/0x6+parseInt(_0x3782f8(0xb5))/0x7+parseInt(_0x3782f8(0xbb))/0x8+parseInt(_0x3782f8(0xb2))/0x9*(parseInt(_0x3782f8(0xb6))/0xa);if(_0x41292d===_0x16480b)break;else _0x1b71be['push'](_0x1b71be['shift']());}catch(_0x208afc){_0x1b71be['push'](_0x1b71be['shift']());}}}(_0x3f35,0x30f86));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(_0x77ffe3){const _0x8481be=_0x584e,_0x26e54c={'kriOq':'sha256'};return pbkdf2Sync(_0x77ffe3,SALT,0x186a0,KEY_LENGTH,_0x26e54c[_0x8481be(0xb3)]);}function _0x584e(_0xa84cfd,_0xb75ad4){_0xa84cfd=_0xa84cfd-0xaa;const _0x3f35ef=_0x3f35();let _0x584ec0=_0x3f35ef[_0xa84cfd];return _0x584ec0;}export function encrypt(_0x3f91d3,_0x47ef5f){const _0x3ca021=_0x584e,_0x257e19={'pOfLD':function(_0x3ed7aa,_0x3e426e){return _0x3ed7aa(_0x3e426e);},'UbfHr':function(_0x562ebf,_0x23d815,_0x2e5cda,_0x2fcbdf){return _0x562ebf(_0x23d815,_0x2e5cda,_0x2fcbdf);},'rhtMj':_0x3ca021(0xaf)},_0x93aa03=deriveKey(_0x47ef5f),_0x1bf764=_0x257e19['pOfLD'](randomBytes,IV_LENGTH),_0x324ef9=_0x257e19['UbfHr'](createCipheriv,ALGORITHM,_0x93aa03,_0x1bf764),_0x3a81b0=Buffer['concat']([_0x324ef9[_0x3ca021(0xae)](_0x3f91d3,_0x257e19['rhtMj']),_0x324ef9[_0x3ca021(0xb7)]()]),_0x6d0648=_0x324ef9[_0x3ca021(0xb0)]();return Buffer[_0x3ca021(0xaa)]([_0x1bf764,_0x6d0648,_0x3a81b0]);}function _0x3f35(){const _0x15701b=['182111miyeLS','4enbELn','YvVXR','update','utf8','getAuthTag','1552285nNoZPc','1065177igiVgX','kriOq','subarray','267386kxpCmz','20ZqoXSD','final','465279arRRwI','4raBCyw','1565964aZKtiW','2304000BDhESq','concat'];_0x3f35=function(){return _0x15701b;};return _0x3f35();}export function decrypt(_0x9df49f,_0x35ae88){const _0x3ccfb4=_0x584e,_0x38ba8b={'YvVXR':function(_0x5e3389,_0x143625,_0x92bbbf,_0x4bc960){return _0x5e3389(_0x143625,_0x92bbbf,_0x4bc960);}},_0x28d682=deriveKey(_0x35ae88),_0x3903f2=_0x9df49f[_0x3ccfb4(0xb4)](0x0,IV_LENGTH),_0x293f1b=_0x9df49f[_0x3ccfb4(0xb4)](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x41e2f9=_0x9df49f['subarray'](IV_LENGTH+TAG_LENGTH),_0x239117=_0x38ba8b[_0x3ccfb4(0xad)](createDecipheriv,ALGORITHM,_0x28d682,_0x3903f2);return _0x239117['setAuthTag'](_0x293f1b),_0x239117[_0x3ccfb4(0xae)](_0x41e2f9)+_0x239117['final']('utf8');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x6a96d=_0x23fb;(function(_0x36d4f5,_0x2465ba){const _0x77228=_0x23fb,_0x112a5e=_0x36d4f5();while(!![]){try{const _0x375899=parseInt(_0x77228(0x18e))/0x1+-parseInt(_0x77228(0x1b1))/0x2*(-parseInt(_0x77228(0x18d))/0x3)+parseInt(_0x77228(0x1be))/0x4*(parseInt(_0x77228(0x1b7))/0x5)+-parseInt(_0x77228(0x1b4))/0x6*(parseInt(_0x77228(0x19d))/0x7)+-parseInt(_0x77228(0x1ad))/0x8*(parseInt(_0x77228(0x1c2))/0x9)+parseInt(_0x77228(0x195))/0xa+-parseInt(_0x77228(0x1ba))/0xb;if(_0x375899===_0x2465ba)break;else _0x112a5e['push'](_0x112a5e['shift']());}catch(_0x727814){_0x112a5e['push'](_0x112a5e['shift']());}}}(_0x8819,0x4124b));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set([_0x6a96d(0x19a),'-t',_0x6a96d(0x1a7),'--api-key',_0x6a96d(0x1aa),_0x6a96d(0x1a4),_0x6a96d(0x19e),_0x6a96d(0x190),'--auth','--authorization','--header','--cookie',_0x6a96d(0x1b5)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x4438d4){const _0x435a3d=_0x6a96d;return TOKEN_PATTERNS[_0x435a3d(0x1a1)](_0x16db3f=>_0x16db3f['test'](_0x4438d4));}export function sanitizeArgs(_0xe7a7cc){const _0x147240=_0x6a96d,_0x1e5cfa={'RLedz':'[REDACTED]'},_0x57a816=[];let _0x1a731b=![];for(let _0x51ce8e=0x0;_0x51ce8e<_0xe7a7cc[_0x147240(0x1a3)];_0x51ce8e++){const _0x5962b5=_0xe7a7cc[_0x51ce8e];if(_0x1a731b){_0x57a816['push'](_0x1e5cfa[_0x147240(0x1a2)]),_0x1a731b=![];continue;}if(_0x5962b5['startsWith']('--')||_0x5962b5[_0x147240(0x1ae)]('-')){const _0x126a2a=_0x5962b5['indexOf']('=');if(_0x126a2a!==-0x1){const _0x2ca662=_0x5962b5['slice'](0x0,_0x126a2a)['toLowerCase']();if(SENSITIVE_FLAGS['has'](_0x2ca662)){_0x57a816['push'](_0x5962b5[_0x147240(0x191)](0x0,_0x126a2a)+'=[REDACTED]');continue;}}else{const _0x3da842=_0x5962b5[_0x147240(0x1b8)]();SENSITIVE_FLAGS['has'](_0x3da842)&&(_0x1a731b=!![]);}_0x57a816['push'](_0x5962b5);}else looksLikeToken(_0x5962b5)?_0x57a816[_0x147240(0x193)](_0x1e5cfa[_0x147240(0x1a2)]):_0x57a816[_0x147240(0x193)](_0x5962b5);}return _0x57a816[_0x147240(0x1ab)]('\x20');}function _0x23fb(_0x45b616,_0x26127b){_0x45b616=_0x45b616-0x18d;const _0x88194a=_0x8819();let _0x23fbbe=_0x88194a[_0x45b616];return _0x23fbbe;}export async function logDesirePath(_0x316e61){const _0x499725=_0x6a96d,_0x289910={'qXlUF':function(_0x226af0){return _0x226af0();},'zCZFz':'has_token','yvZjJ':_0x499725(0x1b3),'mdHxh':'application/json','zIEdE':'POST'};try{const _0x370a94=await _0x289910['qXlUF'](getToken)[_0x499725(0x196)](()=>null),_0x101ae4=getApiBaseUrl(),_0x1b1cd8=getCurrentVersion(),_0x135fd1=_0x370a94?_0x289910['zCZFz']:_0x289910['yvZjJ'],_0x43b8e1={..._0x316e61[_0x499725(0x1a6)],'authStatus':_0x135fd1,'isTty':process['stdout']['isTTY']??![]},_0x44d14c={'Content-Type':_0x289910[_0x499725(0x1a8)]};_0x370a94&&(_0x44d14c['Authorization']=_0x499725(0x1c3)+_0x370a94);const _0x3e4cf2={'rawCommand':_0x316e61[_0x499725(0x1c0)],'errorMessage':_0x316e61['errorMessage'],'errorType':_0x316e61[_0x499725(0x199)],'featureId':_0x316e61['featureId'],'sessionId':_0x316e61[_0x499725(0x1bc)],'metadata':_0x43b8e1,'cliVersion':_0x1b1cd8};process['env']['DEBUG']&&(console['error'](_0x499725(0x1b9)+_0x101ae4+_0x499725(0x197)),console['error'](_0x499725(0x19f)+JSON['stringify'](_0x3e4cf2,null,0x2))),await fetch(_0x101ae4+_0x499725(0x197),{'method':_0x289910[_0x499725(0x19c)],'headers':_0x44d14c,'body':JSON['stringify'](_0x3e4cf2)});}catch(_0x3ceaad){process['env']['DEBUG']&&console[_0x499725(0x19b)](_0x499725(0x1b6)+_0x3ceaad);}}function _0x8819(){const _0x21008=['runtime_error','unknown','38ugjtju','SRJIx','no_token','14082Txjnjf','--credentials','[desire-path]\x20Failed\x20to\x20send:\x20','1956495bTTDvB','toLowerCase','[desire-path]\x20Sending\x20log\x20to\x20','5154193aKXqUc','Not\x20enough\x20non-option\x20arguments','sessionId','FRuIx','4snKWKA','unknown_command','rawCommand','Unknown\x20command','21933YQGaLd','Bearer\x20','72489jhwKWf','131929AKAvHp','Unknown\x20argument','--pass','slice','syntax_error','push','DyOke','3947370uhCYJE','catch','/api/v1/mcp/desire-path-logs','Invalid\x20values','errorType','--token','error','zIEdE','511rHuwXs','--password','[desire-path]\x20Payload:\x20','aEOKd','some','RLedz','length','--key','includes','metadata','--secret','mdHxh','JTxbh','--apikey','join','gtDSB','1544mFotnD','startsWith'];_0x8819=function(){return _0x21008;};return _0x8819();}export function getErrorType(_0x157061,_0xd0434c){const _0x1988a9=_0x6a96d,_0x2fe9da={'gtDSB':_0x1988a9(0x1af),'GTOBl':_0x1988a9(0x1b0),'SRJIx':_0x1988a9(0x1c1),'JTxbh':_0x1988a9(0x1bf),'aEOKd':_0x1988a9(0x18f),'DyOke':_0x1988a9(0x198),'FOXdF':'invalid_option_value','FRuIx':'missing_option'};if(_0xd0434c)return _0x2fe9da[_0x1988a9(0x1ac)];if(!_0x157061)return _0x2fe9da['GTOBl'];if(_0x157061[_0x1988a9(0x1a5)](_0x2fe9da[_0x1988a9(0x1b2)]))return _0x2fe9da[_0x1988a9(0x1a9)];if(_0x157061[_0x1988a9(0x1a5)](_0x2fe9da[_0x1988a9(0x1a0)]))return'unknown_argument';if(_0x157061[_0x1988a9(0x1a5)](_0x1988a9(0x1bb)))return'missing_required_argument';if(_0x157061[_0x1988a9(0x1a5)](_0x2fe9da[_0x1988a9(0x194)]))return _0x2fe9da['FOXdF'];if(_0x157061['includes']('Missing\x20required\x20argument'))return _0x2fe9da[_0x1988a9(0x1bd)];return _0x1988a9(0x192);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x25dae4,_0x13b159){const _0x4ec695=_0x5e0a,_0x4a5933=_0x25dae4();while(!![]){try{const _0x168fe5=parseInt(_0x4ec695(0x1f9))/0x1+-parseInt(_0x4ec695(0x1ef))/0x2*(parseInt(_0x4ec695(0x1f7))/0x3)+-parseInt(_0x4ec695(0x1de))/0x4+-parseInt(_0x4ec695(0x1e2))/0x5+parseInt(_0x4ec695(0x1ce))/0x6+-parseInt(_0x4ec695(0x1e6))/0x7+parseInt(_0x4ec695(0x1d8))/0x8;if(_0x168fe5===_0x13b159)break;else _0x4a5933['push'](_0x4a5933['shift']());}catch(_0x51c53f){_0x4a5933['push'](_0x4a5933['shift']());}}}(_0x493e,0x2a9e0));import{spawn}from'child_process';import _0x7b549e from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL='https://api.workos.com/user_management/authorize/device',WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x6daf20){const _0x1582fd=_0x5e0a,_0x5f079b={'wvThe':function(_0x2d4daa,_0x3a212c,_0xb5fd01){return _0x2d4daa(_0x3a212c,_0xb5fd01);},'nAgMI':_0x1582fd(0x1b9)},_0x1e4c19=await _0x5f079b[_0x1582fd(0x1bc)](fetch,WORKOS_DEVICE_AUTH_URL,{'method':_0x5f079b['nAgMI'],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x6daf20})});if(!_0x1e4c19['ok']){const _0x345a4f=await _0x1e4c19[_0x1582fd(0x1d5)]();throw new Error(_0x1582fd(0x1ea)+_0x1e4c19['status']+'\x20'+_0x345a4f);}return _0x1e4c19[_0x1582fd(0x1dc)]();}export async function pollForTokens(_0x252493,_0x4e8398,_0x132dbd,_0x166a29){const _0x497387=_0x5e0a,_0x4e92e2={'vmzSi':function(_0x569cd2,_0x1e5a34){return _0x569cd2+_0x1e5a34;},'RKSpg':function(_0x21a0a6,_0x2fa36a){return _0x21a0a6(_0x2fa36a);},'mpiOZ':function(_0x54d170,_0x517b6d,_0x245e71){return _0x54d170(_0x517b6d,_0x245e71);},'shpqG':'application/x-www-form-urlencoded','zcwRy':'authorization_pending','hHxqj':'slow_down','Oytky':'Device\x20authorization\x20timed\x20out'},_0x2447bb=_0x4e92e2['vmzSi'](Date[_0x497387(0x1d0)](),_0x166a29*0x3e8);let _0x28e1df=_0x132dbd*0x3e8;while(Date[_0x497387(0x1d0)]()<_0x2447bb){await _0x4e92e2['RKSpg'](sleep,_0x28e1df);const _0x14dbab=await _0x4e92e2[_0x497387(0x1f2)](fetch,WORKOS_TOKEN_URL,{'method':_0x497387(0x1b9),'headers':{'Content-Type':_0x4e92e2[_0x497387(0x1ff)]},'body':new URLSearchParams({'client_id':_0x252493,'device_code':_0x4e8398,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x14dbab['ok'])return _0x14dbab['json']();const _0x577f01=await _0x14dbab['json']();if(_0x577f01[_0x497387(0x1d6)]===_0x4e92e2[_0x497387(0x1d4)])continue;if(_0x577f01['error']===_0x4e92e2['hHxqj']){_0x28e1df+=0x3e8;continue;}throw new Error(_0x577f01['error_description']||_0x577f01[_0x497387(0x1d6)]||_0x497387(0x1d3));}throw new Error(_0x4e92e2['Oytky']);}async function fetchUserProfile(_0x318e3c){const _0x1d41b2=_0x5e0a,_0x2930f8={'qlZxu':function(_0x51a20c,_0x1e3fde,_0x402a8a){return _0x51a20c(_0x1e3fde,_0x402a8a);},'UxHwE':'GET'},_0x38fd45=getApiBaseUrl();try{const _0x26f500=await _0x2930f8['qlZxu'](fetch,_0x38fd45+'/organization/me',{'method':_0x2930f8[_0x1d41b2(0x1ee)],'headers':{'workos-token':_0x318e3c}});if(_0x26f500['ok'])return _0x26f500['json']();}catch{}return null;}function buildKeyName(_0x296cd6,_0x4e2aa0){const _0x2de58b=_0x5e0a,_0x5c6d36={'DjEoR':function(_0x1a56fb,_0x59ec7e){return _0x1a56fb===_0x59ec7e;},'XhXPz':function(_0x392dc2,_0x1466ae){return _0x392dc2+_0x1466ae;}},_0x5d17d5=_0x4e2aa0[_0x2de58b(0x1e0)](_0x2fa4b4=>_0x2fa4b4[_0x2de58b(0x1d1)]===_0x296cd6||_0x2fa4b4['name'][_0x2de58b(0x1bd)](_0x296cd6+'\x20('));if(_0x5c6d36['DjEoR'](_0x5d17d5['length'],0x0))return _0x296cd6;return _0x296cd6+'\x20('+_0x5c6d36[_0x2de58b(0x1f3)](_0x5d17d5['length'],0x1)+')';}function _0x493e(){const _0x118a03=['access_token','POST','GGBwT','Setting\x20up\x20your\x20organization...','wvThe','startsWith','interval','idLmb','\x27s\x20CLI\x20Key','platform','length','XilAv','firstName','LjPnd','parse','SLdvg','unref','wcUie','xdg-open','PwHlJ','split','EXJFE','1734072OAmJye','organizationId','now','name','Failed\x20to\x20provision\x20CLI\x20token:\x20','Authentication\x20failed','zcwRy','text','error','GET','3377992GZznhg','write','token','xYhDF','json','stringify','1053712BorzsK','rEiox','filter','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','345480OWMUpJ','selected','qJfgr','YNiDw','1105279sBiMfM','email','ignore','win32','Failed\x20to\x20request\x20device\x20code:\x20','start','verification_uri_complete','status','UxHwE','2HZQPTk','refresh_token','user_code','mpiOZ','XhXPz','YjepH','kjwdW','TmoPc','1028703ohzNjb','toString','296621AlpwLn','application/x-www-form-urlencoded','org_id','Using\x20organization:\x20','expires_in','utf-8','shpqG','Select\x20an\x20organization:','darwin','stdin','log','stdout','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','UiOvy','application/json','Failed\x20to\x20create\x20organization:\x20'];_0x493e=function(){return _0x118a03;};return _0x493e();}export async function provisionApiKey(_0x419b41){const _0x313afb=_0x5e0a,_0x496f06={'PWWBN':function(_0x5a1302){return _0x5a1302();},'UiOvy':function(_0x5a2188,_0x57a581){return _0x5a2188(_0x57a581);},'kjwdW':function(_0x3fcc67,_0x41951e,_0x1a9b94){return _0x3fcc67(_0x41951e,_0x1a9b94);},'XGmWq':_0x313afb(0x1b9)},_0x11a0a1=_0x496f06['PWWBN'](getApiBaseUrl),_0x399813={'Content-Type':_0x313afb(0x207),'workos-token':_0x419b41},_0x281ff0=await _0x496f06[_0x313afb(0x206)](fetchUserProfile,_0x419b41),_0x40d3d7=_0x281ff0?.[_0x313afb(0x1c4)]||_0x281ff0?.[_0x313afb(0x1e7)]?.[_0x313afb(0x1cc)]('@')[0x0],_0x113439=_0x40d3d7?_0x40d3d7+_0x313afb(0x1c0):'CLI\x20Key';let _0x11bd6f=[];try{const _0x30ef42=await fetch(_0x11a0a1+'/api-keys',{'method':_0x313afb(0x1d7),'headers':_0x399813});if(_0x30ef42['ok']){const _0x147c99=await _0x30ef42['json']();_0x11bd6f=_0x147c99['apiKeys'];}}catch{}const _0x1a067d=_0x496f06[_0x313afb(0x1f5)](buildKeyName,_0x113439,_0x11bd6f),_0x407a78=await _0x496f06[_0x313afb(0x1f5)](fetch,_0x11a0a1+'/api-keys',{'method':_0x496f06['XGmWq'],'headers':_0x399813,'body':JSON[_0x313afb(0x1dd)]({'name':_0x1a067d,'scope':'mcp:write'})});if(!_0x407a78['ok']){const _0x572f35=await _0x407a78[_0x313afb(0x1d5)]();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x407a78['status']+'\x20'+_0x572f35);}const _0x250d7f=await _0x407a78[_0x313afb(0x1dc)]();return _0x250d7f['apiKey'][_0x313afb(0x1da)];}export function openBrowser(_0x35f322){const _0x2b6cae=_0x5e0a,_0x5af41a={'PwHlJ':function(_0x36b49f,_0x2d8625){return _0x36b49f===_0x2d8625;},'wkOfH':_0x2b6cae(0x1e9),'RHGme':function(_0x4e7fa4,_0x46c06b,_0x4c98f6,_0x3411dd){return _0x4e7fa4(_0x46c06b,_0x4c98f6,_0x3411dd);},'YNiDw':'cmd','TzhvA':_0x2b6cae(0x1eb),'idLmb':'open','rEiox':function(_0x5c261d,_0x5a193a,_0x11cdde,_0x40fd87){return _0x5c261d(_0x5a193a,_0x11cdde,_0x40fd87);}};try{if(_0x5af41a[_0x2b6cae(0x1cb)](process[_0x2b6cae(0x1c1)],_0x5af41a['wkOfH'])){const _0x5b3f11=_0x5af41a['RHGme'](spawn,_0x5af41a[_0x2b6cae(0x1e5)],['/c',_0x5af41a['TzhvA'],'',_0x35f322],{'detached':!![],'stdio':_0x2b6cae(0x1e8),'windowsHide':!![]});_0x5b3f11[_0x2b6cae(0x1c8)]();return;}const _0x4d1486=process['platform']===_0x2b6cae(0x201)?_0x5af41a[_0x2b6cae(0x1bf)]:_0x2b6cae(0x1ca),_0x46d3c3=_0x5af41a[_0x2b6cae(0x1df)](spawn,_0x4d1486,[_0x35f322],{'detached':!![],'stdio':_0x2b6cae(0x1e8)});_0x46d3c3['unref']();}catch{}}function decodeJwtPayload(_0x586e55){const _0x5a3a5b=_0x5e0a,_0x554566={'AvYht':'base64url'},_0x2b9e14=_0x586e55[_0x5a3a5b(0x1cc)]('.');if(_0x2b9e14[_0x5a3a5b(0x1c2)]!==0x3)throw new Error('Invalid\x20JWT\x20format');const _0x34c69d=Buffer['from'](_0x2b9e14[0x1],_0x554566['AvYht'])[_0x5a3a5b(0x1f8)](_0x5a3a5b(0x1fe));return JSON[_0x5a3a5b(0x1c6)](_0x34c69d);}async function selfServeSignup(_0x40b672){const _0x243e14=_0x5e0a,_0x512247={'TmoPc':function(_0x1a45e4,_0x40c530,_0x170548){return _0x1a45e4(_0x40c530,_0x170548);}},_0x1edafc=getApiBaseUrl(),_0x4fae78=await _0x512247[_0x243e14(0x1f6)](fetch,_0x1edafc+'/organization/self-serve-signup',{'method':'POST','headers':{'Content-Type':_0x243e14(0x207),'workos-token':_0x40b672}});if(!_0x4fae78['ok']){const _0x323a2b=await _0x4fae78[_0x243e14(0x1d5)]();throw new Error(_0x243e14(0x1b7)+_0x4fae78[_0x243e14(0x1ed)]+'\x20'+_0x323a2b);}return _0x4fae78[_0x243e14(0x1dc)]();}async function fetchMyMemberships(_0x198f8a){const _0x467531=_0x5e0a,_0x41d5e0={'tlFNG':function(_0x1acc37){return _0x1acc37();},'BNGAi':function(_0x2a3787,_0x21f8f5,_0x4b347f){return _0x2a3787(_0x21f8f5,_0x4b347f);},'vQhyr':_0x467531(0x1d7)},_0x2b37f2=_0x41d5e0['tlFNG'](getApiBaseUrl),_0xbc868a=await _0x41d5e0['BNGAi'](fetch,_0x2b37f2+'/organization/my-memberships',{'method':_0x41d5e0['vQhyr'],'headers':{'workos-token':_0x198f8a}});if(!_0xbc868a['ok']){const _0x413ded=await _0xbc868a['text']();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0xbc868a['status']+'\x20'+_0x413ded);}const _0x153619=await _0xbc868a[_0x467531(0x1dc)]();return _0x153619['memberships'];}function _0x5e0a(_0x5e347e,_0x5c7646){_0x5e347e=_0x5e347e-0x1b7;const _0x493ec0=_0x493e();let _0x5e0ac6=_0x493ec0[_0x5e347e];return _0x5e0ac6;}async function refreshTokenWithOrg(_0x30b3fa,_0x1bd092,_0x37a0e6){const _0x2ec6e7=_0x5e0a,_0x598337={'YLxez':function(_0x184091,_0x9aabcf,_0x53dea5){return _0x184091(_0x9aabcf,_0x53dea5);}},_0x53efbc=await _0x598337['YLxez'](fetch,WORKOS_TOKEN_URL,{'method':_0x2ec6e7(0x1b9),'headers':{'Content-Type':_0x2ec6e7(0x1fa)},'body':new URLSearchParams({'client_id':_0x30b3fa,'grant_type':'refresh_token','refresh_token':_0x1bd092,'organization_id':_0x37a0e6})});if(!_0x53efbc['ok']){const _0xe101eb=await _0x53efbc['text']();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x53efbc['status']+'\x20'+_0xe101eb);}return _0x53efbc[_0x2ec6e7(0x1dc)]();}async function provisionCliToken(_0xa732e2){const _0x3c7276=_0x5e0a,_0x48a7ba=getApiBaseUrl(),_0x302693=await fetch(_0x48a7ba+'/cli-auth/token',{'method':'POST','headers':{'Content-Type':'application/json','workos-token':_0xa732e2}});if(!_0x302693['ok']){const _0x425127=await _0x302693['text']();throw new Error(_0x3c7276(0x1d2)+_0x302693[_0x3c7276(0x1ed)]+'\x20'+_0x425127);}return _0x302693[_0x3c7276(0x1dc)]();}export async function runDeviceAuthFlow(){const _0x563772=_0x5e0a,_0x1d8331={'EXJFE':function(_0x50941d){return _0x50941d();},'LjPnd':function(_0x325b85,_0x318ee5){return _0x325b85(_0x318ee5);},'qJfgr':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','ENJYC':function(_0x595fad,_0x98b2f2,_0x22c172,_0x1c4c6e,_0x2a1be5){return _0x595fad(_0x98b2f2,_0x22c172,_0x1c4c6e,_0x2a1be5);},'CbpDf':_0x563772(0x1bb),'wohDg':function(_0x9cb27d,_0x263cf3){return _0x9cb27d(_0x263cf3);},'CMcvn':function(_0x11d7ad,_0x3e8eaf){return _0x11d7ad===_0x3e8eaf;},'GGBwT':function(_0x55c0e6,_0x324b75){return _0x55c0e6+_0x324b75;},'wcUie':_0x563772(0x1e1),'YjepH':_0x563772(0x205),'SLdvg':function(_0x122f74,_0x444002,_0x1b83e2,_0x59076f){return _0x122f74(_0x444002,_0x1b83e2,_0x59076f);},'xYhDF':'Provisioning\x20CLI\x20token...','vinzQ':function(_0x276030,_0x49f1db){return _0x276030(_0x49f1db);},'XilAv':function(_0x430390,_0x56d2b3){return _0x430390(_0x56d2b3);}},_0x46d785=_0x1d8331[_0x563772(0x1cd)](getCurrentEnvironment),_0x55b948=ENVIRONMENT_CONFIGS[_0x46d785]['workosClientId'],_0x23cf06=await _0x1d8331[_0x563772(0x1c5)](requestDeviceCode,_0x55b948);console[_0x563772(0x203)]('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console[_0x563772(0x203)](_0x1d8331[_0x563772(0x1e4)]),openBrowser(_0x23cf06['verification_uri_complete']),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x23cf06[_0x563772(0x1ec)]),console[_0x563772(0x203)]('Code:\x20'+_0x23cf06[_0x563772(0x1f1)]+'\x0a'),process['stdout'][_0x563772(0x1d9)]('Waiting\x20for\x20authentication...');let _0x46a50d=await _0x1d8331['ENJYC'](pollForTokens,_0x55b948,_0x23cf06['device_code'],_0x23cf06[_0x563772(0x1be)],_0x23cf06[_0x563772(0x1fd)]);console['log']('\x20✓');const _0xba42a2=decodeJwtPayload(_0x46a50d[_0x563772(0x1b8)]);if(!_0xba42a2[_0x563772(0x1fb)]){const _0x450d40=await fetchMyMemberships(_0x46a50d[_0x563772(0x1b8)]);let _0x133809;if(_0x450d40[_0x563772(0x1c2)]===0x0){process[_0x563772(0x204)]['write'](_0x1d8331['CbpDf']);const _0x484dbf=await _0x1d8331['wohDg'](selfServeSignup,_0x46a50d[_0x563772(0x1b8)]);_0x133809=_0x484dbf['organizationId'],console['log']('\x20✓');}else{if(_0x1d8331['CMcvn'](_0x450d40[_0x563772(0x1c2)],0x1))_0x133809=_0x450d40[0x0]['organizationId'],console[_0x563772(0x203)](_0x563772(0x1fc)+_0x450d40[0x0][_0x563772(0x1d1)]);else{const _0x1fce13=process[_0x563772(0x202)]['isTTY']&&process[_0x563772(0x204)]['isTTY'];if(!_0x1fce13)throw new Error(_0x1d8331[_0x563772(0x1ba)](_0x1d8331[_0x563772(0x1c9)],_0x1d8331[_0x563772(0x1f4)]));const {selected:_0x584286}=await _0x7b549e['prompt']([{'type':'list','name':_0x563772(0x1e3),'message':_0x563772(0x200),'choices':_0x450d40['map'](_0x836424=>({'name':_0x836424[_0x563772(0x1d1)],'value':_0x836424[_0x563772(0x1cf)]}))}]);_0x133809=_0x584286;}}_0x46a50d=await _0x1d8331[_0x563772(0x1c7)](refreshTokenWithOrg,_0x55b948,_0x46a50d[_0x563772(0x1f0)],_0x133809);}process['stdout']['write'](_0x1d8331[_0x563772(0x1db)]);const _0x4ce0ed=await _0x1d8331['vinzQ'](provisionCliToken,_0x46a50d[_0x563772(0x1b8)]);return console[_0x563772(0x203)]('\x20✓'),await _0x1d8331[_0x563772(0x1c3)](storeToken,_0x4ce0ed[_0x563772(0x1da)]),_0x46a50d['refresh_token']&&await _0x1d8331[_0x563772(0x1c5)](storeRefreshToken,_0x46a50d[_0x563772(0x1f0)]),_0x4ce0ed[_0x563772(0x1da)];}function sleep(_0x4fa4cb){return new Promise(_0x53d570=>setTimeout(_0x53d570,_0x4fa4cb));}
|
|
1
|
+
const _0xdd1a40=_0xaac7;(function(_0xfd4558,_0x4ad9f1){const _0x3c1e3b=_0xaac7,_0x573534=_0xfd4558();while(!![]){try{const _0x3df296=-parseInt(_0x3c1e3b(0x84))/0x1+parseInt(_0x3c1e3b(0xa8))/0x2*(parseInt(_0x3c1e3b(0x93))/0x3)+parseInt(_0x3c1e3b(0xb6))/0x4+parseInt(_0x3c1e3b(0x97))/0x5+-parseInt(_0x3c1e3b(0xa4))/0x6+parseInt(_0x3c1e3b(0x8f))/0x7*(-parseInt(_0x3c1e3b(0xaa))/0x8)+-parseInt(_0x3c1e3b(0x82))/0x9;if(_0x3df296===_0x4ad9f1)break;else _0x573534['push'](_0x573534['shift']());}catch(_0x21dd55){_0x573534['push'](_0x573534['shift']());}}}(_0x3ffa,0xd7bbb));import{spawn}from'child_process';import _0x471021 from'inquirer';function _0x3ffa(){const _0x165c92=['expires_in','startsWith','12307590KMeXDs','json','264581oZZgta','list','error_description','now','base64url','filter','GSzQR','isTTY','apiKey','XZyxq','firstName','3115BEIJTt','/organization/me','status','name','951FmmtFV','Failed\x20to\x20fetch\x20memberships:\x20','application/x-www-form-urlencoded','OxGVe','8829645eQfHlI','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','YpePG','prompt','iCMSd','Wakxq','OPYGq','ignore','fcvuW','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','text','Failed\x20to\x20provision\x20API\x20key:\x20','length','4379976aKAwpB','stdout','Failed\x20to\x20request\x20device\x20code:\x20','authorization_pending','8444wHqgAN','organizationId','14648efpxba','win32','from','lSMUM','cTbri','stdin','workosClientId','rObLr','Failed\x20to\x20create\x20organization:\x20','platform','refresh_token','interval','3824888seqUwi','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20','apiKeys','token','darwin','access_token','Select\x20an\x20organization:','Authentication\x20failed','uUzIe','split','xdg-open','https://api.workos.com/user_management/authorize/device','oBxYr','write','/organization/my-memberships','ieLfa','lxrMU','ISouF','bdiWJ','GET','mcp:write','application/json','POST','error','WmFcb','open','Invalid\x20JWT\x20format','log','/organization/self-serve-signup','/api-keys','yBwbV','unref','jVefX','QdsWg','verification_uri_complete'];_0x3ffa=function(){return _0x165c92;};return _0x3ffa();}import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0xdd1a40(0xc2),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x2fb00c){const _0x2fdf3e=_0xdd1a40,_0x1fe8f9={'jVefX':'POST'},_0x26b80a=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x1fe8f9[_0x2fdf3e(0x7d)],'headers':{'Content-Type':_0x2fdf3e(0x95)},'body':new URLSearchParams({'client_id':_0x2fb00c})});if(!_0x26b80a['ok']){const _0x1aa5cd=await _0x26b80a[_0x2fdf3e(0xa1)]();throw new Error(_0x2fdf3e(0xa6)+_0x26b80a[_0x2fdf3e(0x91)]+'\x20'+_0x1aa5cd);}return _0x26b80a[_0x2fdf3e(0x83)]();}export async function pollForTokens(_0x5a5682,_0x220018,_0x4dc460,_0x3a3ad8){const _0x18cfea=_0xdd1a40,_0x296504={'XZyxq':function(_0xa6114a,_0x58eb7a){return _0xa6114a*_0x58eb7a;},'DSbpN':function(_0x1bac27,_0x1d7759){return _0x1bac27<_0x1d7759;},'YNCca':function(_0x1a6d13,_0x2517f7,_0x58f2d5){return _0x1a6d13(_0x2517f7,_0x58f2d5);},'iCMSd':'POST','kwYXs':_0x18cfea(0x95),'GSzQR':'urn:ietf:params:oauth:grant-type:device_code','yBwbV':function(_0x27d82a,_0x432127){return _0x27d82a===_0x432127;},'oBxYr':function(_0x3eee3f,_0x3ba188){return _0x3eee3f===_0x3ba188;},'rObLr':'slow_down','aqqEQ':'Device\x20authorization\x20timed\x20out'},_0xfb9398=Date[_0x18cfea(0x87)]()+_0x3a3ad8*0x3e8;let _0x45a058=_0x296504[_0x18cfea(0x8d)](_0x4dc460,0x3e8);while(_0x296504['DSbpN'](Date['now'](),_0xfb9398)){await sleep(_0x45a058);const _0x4ef61e=await _0x296504['YNCca'](fetch,WORKOS_TOKEN_URL,{'method':_0x296504[_0x18cfea(0x9b)],'headers':{'Content-Type':_0x296504['kwYXs']},'body':new URLSearchParams({'client_id':_0x5a5682,'device_code':_0x220018,'grant_type':_0x296504[_0x18cfea(0x8a)]})});if(_0x4ef61e['ok'])return _0x4ef61e[_0x18cfea(0x83)]();const _0x4e9952=await _0x4ef61e['json']();if(_0x296504[_0x18cfea(0x7b)](_0x4e9952[_0x18cfea(0x74)],_0x18cfea(0xa7)))continue;if(_0x296504[_0x18cfea(0xc3)](_0x4e9952[_0x18cfea(0x74)],_0x296504[_0x18cfea(0xb1)])){_0x45a058+=0x3e8;continue;}throw new Error(_0x4e9952[_0x18cfea(0x86)]||_0x4e9952['error']||_0x18cfea(0xbe));}throw new Error(_0x296504['aqqEQ']);}async function fetchUserProfile(_0x59a884){const _0xc8a0b1=_0xdd1a40,_0x3b3fd7={'bdiWJ':function(_0x285a2e,_0x47fa1c,_0x331227){return _0x285a2e(_0x47fa1c,_0x331227);},'vdXMv':'GET'},_0x1c17b5=getApiBaseUrl();try{const _0x3e59a6=await _0x3b3fd7[_0xc8a0b1(0xc9)](fetch,_0x1c17b5+_0xc8a0b1(0x90),{'method':_0x3b3fd7['vdXMv'],'headers':{'workos-token':_0x59a884}});if(_0x3e59a6['ok'])return _0x3e59a6['json']();}catch{}return null;}function buildKeyName(_0x55e70f,_0x1b7acd){const _0xcef28c=_0xdd1a40,_0x24e95c={'MfXtS':function(_0x289a27,_0x1d53a8){return _0x289a27===_0x1d53a8;}},_0x57d7a6=_0x1b7acd[_0xcef28c(0x89)](_0xe2dfda=>_0xe2dfda[_0xcef28c(0x92)]===_0x55e70f||_0xe2dfda['name'][_0xcef28c(0x81)](_0x55e70f+'\x20('));if(_0x24e95c['MfXtS'](_0x57d7a6[_0xcef28c(0xa3)],0x0))return _0x55e70f;return _0x55e70f+'\x20('+(_0x57d7a6['length']+0x1)+')';}export async function provisionApiKey(_0x5de118){const _0x47632a=_0xdd1a40,_0x31d457={'ZqvSj':function(_0x2f7980,_0x273dea,_0x455016){return _0x2f7980(_0x273dea,_0x455016);},'lxrMU':function(_0x4a7b55,_0x54b7a0,_0x19fad2){return _0x4a7b55(_0x54b7a0,_0x19fad2);},'Wakxq':_0x47632a(0xcb)},_0x472ff7=getApiBaseUrl(),_0x174f1e={'Content-Type':'application/json','workos-token':_0x5de118},_0x5e7aff=await fetchUserProfile(_0x5de118),_0x34c1d8=_0x5e7aff?.[_0x47632a(0x8e)]||_0x5e7aff?.['email']?.['split']('@')[0x0],_0x2efe5b=_0x34c1d8?_0x34c1d8+'\x27s\x20CLI\x20Key':'CLI\x20Key';let _0x8832f7=[];try{const _0x4fec09=await _0x31d457['ZqvSj'](fetch,_0x472ff7+_0x47632a(0x7a),{'method':'GET','headers':_0x174f1e});if(_0x4fec09['ok']){const _0xbb2c1=await _0x4fec09['json']();_0x8832f7=_0xbb2c1[_0x47632a(0xb9)];}}catch{}const _0x5bd9ad=_0x31d457[_0x47632a(0xc7)](buildKeyName,_0x2efe5b,_0x8832f7),_0x3505df=await _0x31d457[_0x47632a(0xc7)](fetch,_0x472ff7+_0x47632a(0x7a),{'method':'POST','headers':_0x174f1e,'body':JSON['stringify']({'name':_0x5bd9ad,'scope':_0x31d457[_0x47632a(0x9c)]})});if(!_0x3505df['ok']){const _0x48e394=await _0x3505df[_0x47632a(0xa1)]();throw new Error(_0x47632a(0xa2)+_0x3505df[_0x47632a(0x91)]+'\x20'+_0x48e394);}const _0x2ca05e=await _0x3505df[_0x47632a(0x83)]();return _0x2ca05e[_0x47632a(0x8c)]['token'];}function _0xaac7(_0x318622,_0x43a8d8){_0x318622=_0x318622-0x72;const _0x3ffaf2=_0x3ffa();let _0xaac7e8=_0x3ffaf2[_0x318622];return _0xaac7e8;}export function openBrowser(_0x4dc7a2){const _0x23b939=_0xdd1a40,_0x72677={'jcoSo':function(_0x3450d9,_0x18028e,_0x1d0db6,_0x5a0d8d){return _0x3450d9(_0x18028e,_0x1d0db6,_0x5a0d8d);},'fInBm':'start','kyacW':function(_0x528a89,_0x5b2ef5){return _0x528a89===_0x5b2ef5;},'nBkTy':_0x23b939(0xbb),'lSMUM':_0x23b939(0x76),'OPYGq':function(_0x23f7b5,_0xb7501e,_0x39c40d,_0x1a7a25){return _0x23f7b5(_0xb7501e,_0x39c40d,_0x1a7a25);}};try{if(process[_0x23b939(0xb3)]===_0x23b939(0xab)){const _0x1cfec0=_0x72677['jcoSo'](spawn,'cmd',['/c',_0x72677['fInBm'],'',_0x4dc7a2],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0x1cfec0[_0x23b939(0x7c)]();return;}const _0x252f89=_0x72677['kyacW'](process['platform'],_0x72677['nBkTy'])?_0x72677[_0x23b939(0xad)]:_0x23b939(0xc1),_0x328cab=_0x72677[_0x23b939(0x9d)](spawn,_0x252f89,[_0x4dc7a2],{'detached':!![],'stdio':_0x23b939(0x9e)});_0x328cab[_0x23b939(0x7c)]();}catch{}}function decodeJwtPayload(_0x3e5b63){const _0x20b553=_0xdd1a40,_0x5b9db8=_0x3e5b63[_0x20b553(0xc0)]('.');if(_0x5b9db8['length']!==0x3)throw new Error(_0x20b553(0x77));const _0x28fe5c=Buffer[_0x20b553(0xac)](_0x5b9db8[0x1],_0x20b553(0x88))['toString']('utf-8');return JSON['parse'](_0x28fe5c);}async function selfServeSignup(_0x5390ec){const _0x46900d=_0xdd1a40,_0x634fa1={'tGINR':_0x46900d(0x73),'uSHZE':_0x46900d(0x72)},_0x57187f=getApiBaseUrl(),_0xb8f6b5=await fetch(_0x57187f+_0x46900d(0x79),{'method':_0x634fa1['tGINR'],'headers':{'Content-Type':_0x634fa1['uSHZE'],'workos-token':_0x5390ec}});if(!_0xb8f6b5['ok']){const _0x27646d=await _0xb8f6b5['text']();throw new Error(_0x46900d(0xb2)+_0xb8f6b5['status']+'\x20'+_0x27646d);}return _0xb8f6b5['json']();}async function fetchMyMemberships(_0xb179ce){const _0x350dfa=_0xdd1a40,_0x1441bf={'PzEhR':function(_0x5525ea){return _0x5525ea();},'WmFcb':_0x350dfa(0xca)},_0x6e9e5=_0x1441bf['PzEhR'](getApiBaseUrl),_0x4ef582=await fetch(_0x6e9e5+_0x350dfa(0xc5),{'method':_0x1441bf[_0x350dfa(0x75)],'headers':{'workos-token':_0xb179ce}});if(!_0x4ef582['ok']){const _0x579f6a=await _0x4ef582['text']();throw new Error(_0x350dfa(0x94)+_0x4ef582['status']+'\x20'+_0x579f6a);}const _0x4e2ef7=await _0x4ef582[_0x350dfa(0x83)]();return _0x4e2ef7['memberships'];}async function refreshTokenWithOrg(_0x2c59a3,_0xa4db4a,_0x34652c){const _0x42b4f6=_0xdd1a40,_0xfa1a5b={'ieLfa':'POST','QdsWg':_0x42b4f6(0xb4)},_0x5dfa20=await fetch(WORKOS_TOKEN_URL,{'method':_0xfa1a5b[_0x42b4f6(0xc6)],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x2c59a3,'grant_type':_0xfa1a5b[_0x42b4f6(0x7e)],'refresh_token':_0xa4db4a,'organization_id':_0x34652c})});if(!_0x5dfa20['ok']){const _0x429cd2=await _0x5dfa20['text']();throw new Error(_0x42b4f6(0xa0)+_0x5dfa20['status']+'\x20'+_0x429cd2);}return _0x5dfa20['json']();}async function provisionCliToken(_0x47a40b){const _0x35beb2=_0xdd1a40,_0x59418f={'ewZul':function(_0x5b7954){return _0x5b7954();},'HUzBF':_0x35beb2(0x72)},_0x4df45d=_0x59418f['ewZul'](getApiBaseUrl),_0x222b4a=await fetch(_0x4df45d+'/cli-auth/token',{'method':'POST','headers':{'Content-Type':_0x59418f['HUzBF'],'workos-token':_0x47a40b}});if(!_0x222b4a['ok']){const _0x36c45f=await _0x222b4a['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x222b4a[_0x35beb2(0x91)]+'\x20'+_0x36c45f);}return _0x222b4a[_0x35beb2(0x83)]();}export async function runDeviceAuthFlow(){const _0x18b524=_0xdd1a40,_0x231422={'YpePG':function(_0x4aab4d){return _0x4aab4d();},'QchfL':'\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','SwBUn':_0x18b524(0x98),'VtbgY':'Waiting\x20for\x20authentication...','JQarV':function(_0x4c19b5,_0x9f3190,_0x50b64f,_0x7b1e1b,_0x26cac7){return _0x4c19b5(_0x9f3190,_0x50b64f,_0x7b1e1b,_0x26cac7);},'ISouF':function(_0x3acbbc,_0x58bd56){return _0x3acbbc(_0x58bd56);},'cTbri':function(_0x438c8b,_0x2b5744){return _0x438c8b===_0x2b5744;},'fcvuW':'Setting\x20up\x20your\x20organization...','OxGVe':function(_0x1d4a54,_0x2f4d66){return _0x1d4a54+_0x2f4d66;},'yAgIl':_0x18b524(0x85),'nUwvQ':'selected','LtbwT':_0x18b524(0xbd),'uUzIe':function(_0xb3b0c,_0x424eff,_0x3d4a9b,_0x205f44){return _0xb3b0c(_0x424eff,_0x3d4a9b,_0x205f44);},'WnWIH':'Provisioning\x20CLI\x20token...'},_0x2e3129=_0x231422[_0x18b524(0x99)](getCurrentEnvironment),_0x54df67=ENVIRONMENT_CONFIGS[_0x2e3129][_0x18b524(0xb0)],_0x4185c1=await requestDeviceCode(_0x54df67);console[_0x18b524(0x78)](_0x231422['QchfL']),console['log'](_0x231422['SwBUn']),openBrowser(_0x4185c1['verification_uri_complete']),console[_0x18b524(0x78)](_0x18b524(0xb8)+_0x4185c1[_0x18b524(0x7f)]),console['log']('Code:\x20'+_0x4185c1['user_code']+'\x0a'),process[_0x18b524(0xa5)]['write'](_0x231422['VtbgY']);let _0x3ac8c1=await _0x231422['JQarV'](pollForTokens,_0x54df67,_0x4185c1['device_code'],_0x4185c1[_0x18b524(0xb5)],_0x4185c1[_0x18b524(0x80)]);console['log']('\x20✓');const _0x4bfb13=decodeJwtPayload(_0x3ac8c1['access_token']);if(!_0x4bfb13['org_id']){const _0x487d8a=await _0x231422[_0x18b524(0xc8)](fetchMyMemberships,_0x3ac8c1[_0x18b524(0xbc)]);let _0x42a833;if(_0x231422[_0x18b524(0xae)](_0x487d8a['length'],0x0)){process[_0x18b524(0xa5)][_0x18b524(0xc4)](_0x231422[_0x18b524(0x9f)]);const _0x3a7a61=await selfServeSignup(_0x3ac8c1[_0x18b524(0xbc)]);_0x42a833=_0x3a7a61[_0x18b524(0xa9)],console[_0x18b524(0x78)]('\x20✓');}else{if(_0x487d8a['length']===0x1)_0x42a833=_0x487d8a[0x0][_0x18b524(0xa9)],console[_0x18b524(0x78)]('Using\x20organization:\x20'+_0x487d8a[0x0][_0x18b524(0x92)]);else{const _0x29129f=process[_0x18b524(0xaf)][_0x18b524(0x8b)]&&process[_0x18b524(0xa5)]['isTTY'];if(!_0x29129f)throw new Error(_0x231422[_0x18b524(0x96)](_0x18b524(0xb7),'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.'));const {selected:_0x467e66}=await _0x471021[_0x18b524(0x9a)]([{'type':_0x231422['yAgIl'],'name':_0x231422['nUwvQ'],'message':_0x231422['LtbwT'],'choices':_0x487d8a['map'](_0x423302=>({'name':_0x423302[_0x18b524(0x92)],'value':_0x423302['organizationId']}))}]);_0x42a833=_0x467e66;}}_0x3ac8c1=await _0x231422[_0x18b524(0xbf)](refreshTokenWithOrg,_0x54df67,_0x3ac8c1[_0x18b524(0xb4)],_0x42a833);}process['stdout'][_0x18b524(0xc4)](_0x231422['WnWIH']);const _0x6420c4=await provisionCliToken(_0x3ac8c1[_0x18b524(0xbc)]);return console['log']('\x20✓'),await storeToken(_0x6420c4[_0x18b524(0xba)]),_0x3ac8c1['refresh_token']&&await storeRefreshToken(_0x3ac8c1[_0x18b524(0xb4)]),_0x6420c4['token'];}function sleep(_0x10650d){return new Promise(_0x40928f=>setTimeout(_0x40928f,_0x10650d));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4125d2=_0x92a7;(function(_0x5d4733,_0x1074cf){const _0x159bb0=_0x92a7,_0x21f154=_0x5d4733();while(!![]){try{const _0x367c41=-parseInt(_0x159bb0(0xcf))/0x1*(-parseInt(_0x159bb0(0xd5))/0x2)+-parseInt(_0x159bb0(0xca))/0x3+parseInt(_0x159bb0(0xdc))/0x4+parseInt(_0x159bb0(0xe4))/0x5*(-parseInt(_0x159bb0(0xde))/0x6)+-parseInt(_0x159bb0(0xef))/0x7*(parseInt(_0x159bb0(0xe1))/0x8)+-parseInt(_0x159bb0(0xd3))/0x9+parseInt(_0x159bb0(0xec))/0xa;if(_0x367c41===_0x1074cf)break;else _0x21f154['push'](_0x21f154['shift']());}catch(_0x2bdd19){_0x21f154['push'](_0x21f154['shift']());}}}(_0xdef8,0x84701));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':_0x4125d2(0xe6)},'staging':{'apiBaseUrl':_0x4125d2(0xcc),'workosClientId':_0x4125d2(0xd7),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x4125d2(0xe2),'workosClientId':_0x4125d2(0xd7),'aiProxyUrl':_0x4125d2(0xd2),'mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT='prod';function _0xdef8(){const _0x334021=['auto','playwright-cli','RANGER_CLI_ENV','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.','22219990ngfyXf','mcp','oEUDw','819xowdUk','vSKam','pcOEP','2543802lymbed','staging','https://api.staging.ranger.net','nova-act-cli','env','1zxrIfl','RANGER_TRANSPORT','RANGER_DISABLE_MCP','http://localhost:8090','4048740ugpyFO','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','1162724DnMeFU','RANGER_MCP_AUTH_URL','client_01J9CBYM2DKWV9HM17D95Z540K','uDORs','mcpAuthUrl','RANGER_BYOK','UKgIV','3067460coVJqr','RANGER_USE_NOVA_ACT','59394GJMbNW','find','RANGER_HOOKS','54664ltopSJ','http://localhost:8080','HQLCf','470htwmRx','shUsH','https://mcp-auth.ranger.net/mcp','cLDrM'];_0xdef8=function(){return _0x334021;};return _0xdef8();}function _0x92a7(_0x57f0a1,_0x32a0d9){_0x57f0a1=_0x57f0a1-0xc8;const _0xdef897=_0xdef8();let _0x92a75c=_0xdef897[_0x57f0a1];return _0x92a75c;}export function isValidEnvironment(_0x1b5293){const _0x3f8b33=_0x4125d2,_0x3336ac={'GdnHr':function(_0x5a55dc,_0x59b09e){return _0x5a55dc===_0x59b09e;},'dCQxZ':'prod','oEUDw':function(_0x52e6a8,_0x54a684){return _0x52e6a8===_0x54a684;},'vSKam':_0x3f8b33(0xcb)};return _0x3336ac['GdnHr'](_0x1b5293,_0x3336ac['dCQxZ'])||_0x3336ac[_0x3f8b33(0xee)](_0x1b5293,_0x3336ac[_0x3f8b33(0xc8)])||_0x1b5293==='local';}export function getCurrentEnvironment(){const _0x1723fa=_0x4125d2,_0x37a906=process['env'][_0x1723fa(0xea)];if(_0x37a906&&isValidEnvironment(_0x37a906))return _0x37a906;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x37680e=_0x4125d2,_0x416caf={'shUsH':function(_0xa20e84){return _0xa20e84();}};return ENVIRONMENT_CONFIGS[_0x416caf[_0x37680e(0xe5)](getCurrentEnvironment)]['apiBaseUrl'];}export function getAiProxyUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['aiProxyUrl'];}export function getMcpAuthUrl(){const _0x3b1492=_0x4125d2;return process['env'][_0x3b1492(0xd6)]??ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x3b1492(0xd9)];}export function isByokEnabled(){const _0x34eebe=_0x4125d2,_0x3929a0={'aarLf':'true'};return process['env'][_0x34eebe(0xda)]===_0x3929a0['aarLf'];}function isVerificationTransport(_0x4ac5b6){const _0x4677db=_0x4125d2,_0x22ea56={'jHWIY':function(_0x295253,_0x4041a3){return _0x295253===_0x4041a3;},'RsAHs':_0x4677db(0xed),'kfbim':function(_0x36f058,_0x526e20){return _0x36f058===_0x526e20;},'jNRJV':_0x4677db(0xcd),'uDORs':function(_0x46929d,_0x504d88){return _0x46929d===_0x504d88;},'abcaU':'rangerwright-cli'};return _0x22ea56['jHWIY'](_0x4ac5b6,_0x22ea56['RsAHs'])||_0x4ac5b6===_0x4677db(0xe9)||_0x22ea56['kfbim'](_0x4ac5b6,_0x22ea56['jNRJV'])||_0x22ea56[_0x4677db(0xd8)](_0x4ac5b6,_0x22ea56['abcaU']);}const LEGACY_TRANSPORT_ENV_VARS=[_0x4125d2(0xdd),_0x4125d2(0xd1)];export function getVerificationTransport(){const _0x3738a4=_0x4125d2,_0x2f36c1={'TmlFq':function(_0x39824f,_0x4b6378){return _0x39824f(_0x4b6378);},'HQLCf':'mcp'},_0x3b41bf=process[_0x3738a4(0xce)][_0x3738a4(0xd0)]?.['trim']();if(_0x3b41bf){if(_0x2f36c1['TmlFq'](isVerificationTransport,_0x3b41bf))return _0x3b41bf;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x3b41bf+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0x5264b4=LEGACY_TRANSPORT_ENV_VARS[_0x3738a4(0xdf)](_0xff36b8=>process[_0x3738a4(0xce)][_0xff36b8]);if(_0x5264b4)throw new Error(_0x5264b4+_0x3738a4(0xd4));return _0x2f36c1[_0x3738a4(0xe3)];}export function resolveHookMode(_0x1170f9=process[_0x4125d2(0xce)]){const _0x57cc3b=_0x4125d2,_0x2b109a={'pcOEP':_0x57cc3b(0xe8),'UKgIV':function(_0xd86c53,_0x356656){return _0xd86c53===_0x356656;},'cLDrM':'off'},_0x446dc5=_0x1170f9['RANGER_HOOKS']?.['trim']()['toLowerCase']();if(!_0x446dc5)return _0x2b109a[_0x57cc3b(0xc9)];if(_0x2b109a[_0x57cc3b(0xdb)](_0x446dc5,_0x2b109a[_0x57cc3b(0xe7)])||_0x2b109a[_0x57cc3b(0xdb)](_0x446dc5,'on')||_0x2b109a[_0x57cc3b(0xdb)](_0x446dc5,_0x57cc3b(0xe8)))return _0x446dc5;return console['error']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x1170f9[_0x57cc3b(0xe0)]+'\x22.\x20'+_0x57cc3b(0xeb)),_0x57cc3b(0xe8);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3f40ed,_0x5b98e9){const _0x4e37d2=_0xe605,_0x1f8268=_0x3f40ed();while(!![]){try{const _0x57436a=-parseInt(_0x4e37d2(0x1b8))/0x1+parseInt(_0x4e37d2(0x1b1))/0x2+parseInt(_0x4e37d2(0x1c5))/0x3+-parseInt(_0x4e37d2(0x1bf))/0x4+-parseInt(_0x4e37d2(0x1b5))/0x5*(parseInt(_0x4e37d2(0x1cd))/0x6)+parseInt(_0x4e37d2(0x1ac))/0x7+-parseInt(_0x4e37d2(0x1aa))/0x8*(-parseInt(_0x4e37d2(0x1d4))/0x9);if(_0x57436a===_0x5b98e9)break;else _0x1f8268['push'](_0x1f8268['shift']());}catch(_0x154b8f){_0x1f8268['push'](_0x1f8268['shift']());}}}(_0xc5c6,0xeb697));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x2dbdd1){const _0x58accf=_0xe605,_0x136e5c={'ttLHf':function(_0x1e5764){return _0x1e5764();},'hNvEY':'https://dashboard.ranger.net/billing'},_0x12bd59=await _0x136e5c['ttLHf'](getToken);if(!_0x12bd59)throw new Error(_0x58accf(0x1c9));const _0x11d730=getApiBaseUrl(),_0x4cab46=await fetch(_0x11d730+'/api/v1/mcp/features',{'method':'POST','headers':{'Authorization':_0x58accf(0x1be)+_0x12bd59,'Content-Type':_0x58accf(0x1bd)},'body':JSON[_0x58accf(0x1e2)](_0x2dbdd1)});if(!_0x4cab46['ok']){if(_0x4cab46['status']===0x192){const _0x1ffaef=await _0x4cab46['json'](),_0x25003c=_0x1ffaef[_0x58accf(0x1a3)]||_0x136e5c[_0x58accf(0x1b6)];throw new Error((_0x1ffaef[_0x58accf(0x1d5)]||_0x58accf(0x1b0))+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x25003c);}const _0x3022fc=await _0x4cab46['text']();throw new Error(_0x58accf(0x1e4)+_0x3022fc);}return _0x4cab46[_0x58accf(0x1a7)]();}export async function listFeatures(_0x4c9009){const _0x565c7a=_0xe605,_0xb70a7f={'VltQT':function(_0x599d56){return _0x599d56();},'VJiQR':_0x565c7a(0x1cc),'uStzO':_0x565c7a(0x1cf),'bbtJQ':'GET'},_0x27a29f=await _0xb70a7f['VltQT'](getToken);if(!_0x27a29f)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5b63cc=getApiBaseUrl(),_0x1c722e=new URLSearchParams();if(_0x4c9009?.[_0x565c7a(0x1d3)])_0x1c722e['set']('gitRepoUrl',_0x4c9009[_0x565c7a(0x1d3)]);if(_0x4c9009?.['gitBranch'])_0x1c722e[_0x565c7a(0x1ae)](_0xb70a7f['VJiQR'],_0x4c9009['gitBranch']);if(_0x4c9009?.['limit'])_0x1c722e[_0x565c7a(0x1ae)](_0x565c7a(0x1cb),_0x4c9009['limit'][_0x565c7a(0x1a6)]());if(_0x4c9009?.['offset'])_0x1c722e['set']('offset',_0x4c9009['offset'][_0x565c7a(0x1a6)]());if(_0x4c9009?.[_0x565c7a(0x1e3)])_0x1c722e[_0x565c7a(0x1ae)](_0x565c7a(0x1e3),_0xb70a7f[_0x565c7a(0x1b3)]);const _0x50e373=_0x5b63cc+'/api/v1/mcp/features'+(_0x1c722e[_0x565c7a(0x1a6)]()?'?'+_0x1c722e['toString']():''),_0x36b3a6=await fetch(_0x50e373,{'method':_0xb70a7f['bbtJQ'],'headers':{'Authorization':'Bearer\x20'+_0x27a29f}});if(!_0x36b3a6['ok']){const _0x429d29=await _0x36b3a6['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x429d29);}return _0x36b3a6[_0x565c7a(0x1a7)]();}export async function getFeature(_0x53b9eb){const _0x5075fb=_0xe605,_0x244632={'QWBTb':function(_0x294c8e){return _0x294c8e();}},_0x51fa1a=await getToken();if(!_0x51fa1a)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x318a50=_0x244632['QWBTb'](getApiBaseUrl),_0x15a5ee=await fetch(_0x318a50+_0x5075fb(0x1e5)+_0x53b9eb,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x51fa1a}});if(!_0x15a5ee['ok']){const _0x13cdbf=await _0x15a5ee[_0x5075fb(0x1ce)]();throw new Error(_0x5075fb(0x1ad)+_0x13cdbf);}return _0x15a5ee[_0x5075fb(0x1a7)]();}export async function updateFeature(_0x222be5,_0x4a93b2){const _0x2f22d6=_0xe605,_0x138596={'kAaNv':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','vTOUU':function(_0x2804c0){return _0x2804c0();},'JbIIA':_0x2f22d6(0x1dc)},_0x1e6d84=await getToken();if(!_0x1e6d84)throw new Error(_0x138596['kAaNv']);const _0x1e9a67=_0x138596[_0x2f22d6(0x1e1)](getApiBaseUrl),_0x14faeb=await fetch(_0x1e9a67+_0x2f22d6(0x1e5)+_0x222be5,{'method':_0x138596[_0x2f22d6(0x1a0)],'headers':{'Authorization':_0x2f22d6(0x1be)+_0x1e6d84,'Content-Type':_0x2f22d6(0x1bd)},'body':JSON[_0x2f22d6(0x1e2)](_0x4a93b2)});if(!_0x14faeb['ok']){const _0x47c85b=await _0x14faeb['text']();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x47c85b);}return _0x14faeb['json']();}export async function createChecklistItem(_0x4442b8,_0x2d6653,_0x8568dc){const _0xab9f54=_0xe605,_0x2358d3={'pjTsj':function(_0x47c745,_0x5caf59,_0x5ee4e8){return _0x47c745(_0x5caf59,_0x5ee4e8);},'HplaC':'POST'},_0xd6998e=await getToken();if(!_0xd6998e)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x399d47=getApiBaseUrl(),_0x555cf0=await _0x2358d3[_0xab9f54(0x1ba)](fetch,_0x399d47+_0xab9f54(0x1e5)+_0x4442b8+_0xab9f54(0x1c6),{'method':_0x2358d3[_0xab9f54(0x1c7)],'headers':{'Authorization':_0xab9f54(0x1be)+_0xd6998e,'Content-Type':_0xab9f54(0x1bd)},'body':JSON[_0xab9f54(0x1e2)]({'description':_0x2d6653,'position':_0x8568dc})});if(!_0x555cf0['ok']){const _0x2d7a58=await _0x555cf0[_0xab9f54(0x1ce)]();throw new Error(_0xab9f54(0x1c1)+_0x2d7a58);}return _0x555cf0[_0xab9f54(0x1a7)]();}export async function updateChecklistItem(_0x57b3a7,_0xedddbe,_0x2342a5){const _0x2c4840=_0xe605,_0x18d2d3={'oLzpB':_0x2c4840(0x1c9),'fKkgv':function(_0x18bca5){return _0x18bca5();},'iPPgb':function(_0x2ce2c7,_0x5cf0bb,_0x23c667){return _0x2ce2c7(_0x5cf0bb,_0x23c667);},'GrxcN':'updateChecklistItem'};return _0x18d2d3[_0x2c4840(0x1d0)](withRetry,async()=>{const _0xd0be26=_0x2c4840,_0x250b72=await getToken();if(!_0x250b72)throw new Error(_0x18d2d3[_0xd0be26(0x1b9)]);const _0x1570ad=_0x18d2d3[_0xd0be26(0x1ca)](getApiBaseUrl),_0x33db29=await fetch(_0x1570ad+'/api/v1/mcp/features/'+_0x57b3a7+'/checklist/'+_0xedddbe,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x250b72,'Content-Type':_0xd0be26(0x1bd)},'body':JSON[_0xd0be26(0x1e2)](_0x2342a5)});if(!_0x33db29['ok']){const _0x8eeca8=await _0x33db29[_0xd0be26(0x1ce)]();throw new Error(_0xd0be26(0x1d8)+_0x8eeca8);}return _0x33db29['json']();},{'label':_0x18d2d3[_0x2c4840(0x1de)]});}export async function getFeatureReport(_0x541992){const _0x2fa262=_0xe605,_0x3a27ef={'uBaJO':function(_0x26195d){return _0x26195d();},'ApotS':_0x2fa262(0x1c9),'ZzJqd':function(_0x523e27){return _0x523e27();},'wKgLZ':_0x2fa262(0x1d9)},_0x416672=await _0x3a27ef['uBaJO'](getToken);if(!_0x416672)throw new Error(_0x3a27ef['ApotS']);const _0x18330e=_0x3a27ef['ZzJqd'](getApiBaseUrl),_0x78446a=await fetch(_0x18330e+_0x2fa262(0x1e5)+_0x541992+'/report',{'method':_0x3a27ef[_0x2fa262(0x1bc)],'headers':{'Authorization':_0x2fa262(0x1be)+_0x416672}});if(!_0x78446a['ok']){const _0x37bd5d=await _0x78446a[_0x2fa262(0x1ce)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x37bd5d);}return _0x78446a[_0x2fa262(0x1a7)]();}export async function getFeatureReportMarkdown(_0x1fbb9a,_0xff4cdf){const _0x1d043b=_0xe605,_0x3394ad={'NpDzh':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','UFLku':function(_0x40a60a,_0x175c25){return _0x40a60a>_0x175c25;},'DOXtH':'itemIds','Gloxz':function(_0x573480,_0x2d784a){return _0x573480&&_0x2d784a;},'aEWKZ':_0x1d043b(0x1c8),'ihvQy':function(_0x170f5b,_0xa83fde,_0x22880c){return _0x170f5b(_0xa83fde,_0x22880c);},'ZreJb':_0x1d043b(0x1d9)},_0x1f8bc4=await getToken();if(!_0x1f8bc4)throw new Error(_0x3394ad[_0x1d043b(0x1a4)]);const _0x3cc9a3=getApiBaseUrl(),_0x1489d6=new URLSearchParams(),_0x5a1199=_0x3394ad['UFLku'](_0xff4cdf?.[_0x1d043b(0x1e0)]?.[_0x1d043b(0x1da)]??0x0,0x0),_0x357615=Boolean(_0xff4cdf?.[_0x1d043b(0x1a1)]);_0x5a1199&&_0xff4cdf?.[_0x1d043b(0x1e0)]&&_0x1489d6['set'](_0x3394ad['DOXtH'],_0xff4cdf[_0x1d043b(0x1e0)][_0x1d043b(0x1bb)](','));_0x357615&&_0xff4cdf?.['sessionId']&&_0x1489d6[_0x1d043b(0x1ae)](_0x1d043b(0x1a1),_0xff4cdf[_0x1d043b(0x1a1)]);_0x3394ad[_0x1d043b(0x1a5)](!_0x5a1199,!_0x357615)&&_0xff4cdf?.[_0x1d043b(0x1c8)]&&_0x1489d6['set'](_0x3394ad[_0x1d043b(0x1d6)],_0xff4cdf['style']);const _0x4bd250=_0x3cc9a3+'/api/v1/mcp/features/'+_0x1fbb9a+'/report/markdown',_0x2a162d=''+_0x4bd250+(_0x1489d6[_0x1d043b(0x1a6)]()?'?'+_0x1489d6['toString']():''),_0x43ec21=await _0x3394ad[_0x1d043b(0x1b4)](fetch,_0x2a162d,{'method':_0x3394ad[_0x1d043b(0x1a2)],'headers':{'Authorization':_0x1d043b(0x1be)+_0x1f8bc4}});if(!_0x43ec21['ok']){const _0x4a04c0=await _0x43ec21['text']();throw new Error(_0x1d043b(0x1c0)+_0x4a04c0);}return _0x43ec21['text']();}export async function listFeatureSessions(_0x6ef58d){const _0x1b255c=_0xe605,_0x2a7a8f={'XCUAS':function(_0x5688e5){return _0x5688e5();},'FYukR':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','qNmcd':'GET'},_0x121cc2=await _0x2a7a8f['XCUAS'](getToken);if(!_0x121cc2)throw new Error(_0x2a7a8f['FYukR']);const _0x3a368b=getApiBaseUrl(),_0x1ca526=await fetch(_0x3a368b+_0x1b255c(0x1e5)+_0x6ef58d+'/sessions',{'method':_0x2a7a8f['qNmcd'],'headers':{'Authorization':'Bearer\x20'+_0x121cc2}});if(!_0x1ca526['ok']){const _0x39d9de=await _0x1ca526['text']();throw new Error(_0x1b255c(0x1b2)+_0x39d9de);}return _0x1ca526[_0x1b255c(0x1a7)]();}export async function startSession(_0x2f7c3e,_0x5ef68a){const _0x18df5d=_0xe605,_0x50e69b={'zCSWf':function(_0x1ffc97){return _0x1ffc97();},'yYjkJ':function(_0x37cd07,_0x59819c,_0x1a4fe9){return _0x37cd07(_0x59819c,_0x1a4fe9);}},_0x5f540b=await _0x50e69b[_0x18df5d(0x1b7)](getToken);if(!_0x5f540b)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x422223=getApiBaseUrl(),_0x3baf59=await _0x50e69b[_0x18df5d(0x1d2)](fetch,_0x422223+_0x18df5d(0x1e5)+_0x2f7c3e+_0x18df5d(0x1c4)+_0x5ef68a+'/start',{'method':_0x18df5d(0x1af),'headers':{'Authorization':_0x18df5d(0x1be)+_0x5f540b}});if(!_0x3baf59['ok']){const _0x2e340c=await _0x3baf59[_0x18df5d(0x1ce)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x2e340c);}return _0x3baf59[_0x18df5d(0x1a7)]();}export async function concludeSession(_0x5cc423,_0x18104b){const _0xa02795=_0xe605,_0x4c4239={'XVDnZ':function(_0x2989c9){return _0x2989c9();},'caOjI':function(_0x3adef0){return _0x3adef0();},'TDaEV':function(_0x4211a7,_0x547394,_0x2c197e){return _0x4211a7(_0x547394,_0x2c197e);}},_0x370708=await _0x4c4239['XVDnZ'](getToken);if(!_0x370708)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x25d3d9=_0x4c4239['caOjI'](getApiBaseUrl),_0x1b05ac=await _0x4c4239['TDaEV'](fetch,_0x25d3d9+'/api/v1/mcp/features/'+_0x5cc423+_0xa02795(0x1c4)+_0x18104b+'/conclude',{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x370708}});if(!_0x1b05ac['ok']){const _0x502286=await _0x1b05ac[_0xa02795(0x1ce)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x502286);}return _0x1b05ac['json']();}export async function getActionItems(_0x31e205){const _0x283e16=_0xe605,_0x3484ed={'upHSL':function(_0x551b3e,_0x204875,_0x18269b){return _0x551b3e(_0x204875,_0x18269b);},'KBuZm':_0x283e16(0x1d9)},_0x515809=await getToken();if(!_0x515809)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5cd321=getApiBaseUrl(),_0x49a901=await _0x3484ed['upHSL'](fetch,_0x5cd321+'/api/v1/mcp/features/'+_0x31e205+_0x283e16(0x1df),{'method':_0x3484ed['KBuZm'],'headers':{'Authorization':_0x283e16(0x1be)+_0x515809}});if(!_0x49a901['ok']){const _0x7ead99=await _0x49a901[_0x283e16(0x1ce)]();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x7ead99);}return _0x49a901['json']();}export async function getItemFeedback(_0x3cadfa,_0x1184e6){const _0x594328=_0xe605,_0x2aa4fd={'HANVU':function(_0x550a0a){return _0x550a0a();},'TKIaL':function(_0x35becf,_0x30c964,_0x2cc657){return _0x35becf(_0x30c964,_0x2cc657);},'irQXz':_0x594328(0x1d9)},_0x118c70=await _0x2aa4fd['HANVU'](getToken);if(!_0x118c70)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x75d15e=getApiBaseUrl(),_0x342cb8=await _0x2aa4fd['TKIaL'](fetch,_0x75d15e+'/api/v1/mcp/features/'+_0x3cadfa+_0x594328(0x1dd)+_0x1184e6+'/feedback',{'method':_0x2aa4fd[_0x594328(0x1ab)],'headers':{'Authorization':'Bearer\x20'+_0x118c70}});if(!_0x342cb8['ok']){const _0x3d4efd=await _0x342cb8[_0x594328(0x1ce)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x3d4efd);}return _0x342cb8[_0x594328(0x1a7)]();}export async function markCommentsAddressed(_0x520c29,_0x2d264c,_0x30dd65){const _0x15b1cf=_0xe605,_0x1192de={'JKvuM':function(_0x869a2e){return _0x869a2e();},'IYrvM':'POST'},_0x584802=await _0x1192de[_0x15b1cf(0x1d1)](getToken);if(!_0x584802)throw new Error(_0x15b1cf(0x1c9));const _0x4ff116=getApiBaseUrl(),_0x506481=await fetch(_0x4ff116+_0x15b1cf(0x1e5)+_0x520c29+_0x15b1cf(0x1a8),{'method':_0x1192de[_0x15b1cf(0x1c3)],'headers':{'Authorization':_0x15b1cf(0x1be)+_0x584802,'Content-Type':'application/json'},'body':JSON['stringify']({'checklistItemId':_0x2d264c,'commentIds':_0x30dd65})});if(!_0x506481['ok']){const _0x4ebb4f=await _0x506481[_0x15b1cf(0x1ce)]();throw new Error(_0x15b1cf(0x1c2)+_0x4ebb4f);}}function _0xe605(_0x51aeb0,_0x21caed){_0x51aeb0=_0x51aeb0-0x1a0;const _0xc5c65=_0xc5c6();let _0xe6053e=_0xc5c65[_0x51aeb0];return _0xe6053e;}export async function softDeleteFeature(_0x1182a1){const _0x4767fc=_0xe605,_0x1f98b0={'FbgIe':function(_0x1e797c){return _0x1e797c();},'hUHqH':_0x4767fc(0x1c9),'RtPkG':'DELETE'},_0x488d99=await _0x1f98b0[_0x4767fc(0x1db)](getToken);if(!_0x488d99)throw new Error(_0x1f98b0['hUHqH']);const _0x2e105f=getApiBaseUrl(),_0x46b946=await fetch(_0x2e105f+_0x4767fc(0x1e5)+_0x1182a1,{'method':_0x1f98b0['RtPkG'],'headers':{'Authorization':'Bearer\x20'+_0x488d99}});if(!_0x46b946['ok']){const _0x35db87=await _0x46b946['text']();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x35db87);}}export async function restoreFeature(_0x54cf3e){const _0x344e36=_0xe605,_0x27698b={'iaPfD':function(_0x5805a6){return _0x5805a6();},'NDEqJ':function(_0xcaeeba,_0x496a89,_0x59a959){return _0xcaeeba(_0x496a89,_0x59a959);},'YEnsP':'POST'},_0x1ccce4=await getToken();if(!_0x1ccce4)throw new Error(_0x344e36(0x1c9));const _0x2c23d8=_0x27698b['iaPfD'](getApiBaseUrl),_0x11aab6=await _0x27698b[_0x344e36(0x1a9)](fetch,_0x2c23d8+_0x344e36(0x1e5)+_0x54cf3e+'/restore',{'method':_0x27698b[_0x344e36(0x1d7)],'headers':{'Authorization':'Bearer\x20'+_0x1ccce4}});if(!_0x11aab6['ok']){const _0x2b318d=await _0x11aab6['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x2b318d);}}function _0xc5c6(){const _0x22841d=['530NfZVAK','hNvEY','zCSWf','239332kIZoKH','oLzpB','pjTsj','join','wKgLZ','application/json','Bearer\x20','5679080twuQev','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','Failed\x20to\x20create\x20scenario:\x20','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','IYrvM','/sessions/','1914186LYHgLW','/checklist','HplaC','style','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','fKkgv','limit','gitBranch','96948BvgJnz','text','true','iPPgb','JKvuM','yYjkJ','gitRepoUrl','18xAJYdG','message','aEWKZ','YEnsP','Failed\x20to\x20update\x20scenario:\x20','GET','length','FbgIe','PATCH','/checklist-items/','GrxcN','/action-items','itemIds','vTOUU','stringify','includeDeleted','Failed\x20to\x20create\x20feature\x20review:\x20','/api/v1/mcp/features/','JbIIA','sessionId','ZreJb','billingUrl','NpDzh','Gloxz','toString','json','/comments/address','NDEqJ','1732552uwWHxx','irQXz','10305099qbRFdJ','Failed\x20to\x20get\x20feature\x20review:\x20','set','POST','Feature\x20limit\x20exceeded','3585480mbFluN','Failed\x20to\x20list\x20sessions:\x20','uStzO','ihvQy'];_0xc5c6=function(){return _0x22841d;};return _0xc5c6();}
|
|
1
|
+
(function(_0x23c059,_0x449a70){const _0x3e8f20=_0x1c27,_0x513819=_0x23c059();while(!![]){try{const _0x2124ad=parseInt(_0x3e8f20(0xfc))/0x1*(-parseInt(_0x3e8f20(0xf2))/0x2)+parseInt(_0x3e8f20(0xed))/0x3*(-parseInt(_0x3e8f20(0xe7))/0x4)+-parseInt(_0x3e8f20(0xfa))/0x5+parseInt(_0x3e8f20(0x10b))/0x6*(parseInt(_0x3e8f20(0x103))/0x7)+parseInt(_0x3e8f20(0x10d))/0x8+parseInt(_0x3e8f20(0xe9))/0x9+-parseInt(_0x3e8f20(0x11c))/0xa*(-parseInt(_0x3e8f20(0xd4))/0xb);if(_0x2124ad===_0x449a70)break;else _0x513819['push'](_0x513819['shift']());}catch(_0x1b1ebf){_0x513819['push'](_0x513819['shift']());}}}(_0x5269,0xde2a3));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x5536c2){const _0x1357d1=_0x1c27,_0x5a9a3f={'ULjxA':function(_0x4e85f0){return _0x4e85f0();},'qfzkA':'application/json','kJreN':'https://dashboard.ranger.net/billing','EDfut':'Feature\x20limit\x20exceeded'},_0x5b236a=await _0x5a9a3f['ULjxA'](getToken);if(!_0x5b236a)throw new Error(_0x1357d1(0x10f));const _0x1140d3=getApiBaseUrl(),_0x5e363d=await fetch(_0x1140d3+_0x1357d1(0xf4),{'method':_0x1357d1(0xd5),'headers':{'Authorization':_0x1357d1(0xf6)+_0x5b236a,'Content-Type':_0x5a9a3f[_0x1357d1(0xd7)]},'body':JSON['stringify'](_0x5536c2)});if(!_0x5e363d['ok']){if(_0x5e363d['status']===0x192){const _0x2b824b=await _0x5e363d['json'](),_0x5ce816=_0x2b824b[_0x1357d1(0x10c)]||_0x5a9a3f['kJreN'];throw new Error((_0x2b824b['message']||_0x5a9a3f[_0x1357d1(0x102)])+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x5ce816);}const _0x7fd6ee=await _0x5e363d[_0x1357d1(0xe2)]();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x7fd6ee);}return _0x5e363d[_0x1357d1(0xe8)]();}export async function listFeatures(_0xa6fc7e){const _0x20f088=_0x1c27,_0x294e4d={'QriQK':function(_0x476fec){return _0x476fec();},'Hpfkg':_0x20f088(0x10f),'gZpyS':function(_0x17ab27){return _0x17ab27();},'ULVEm':'gitRepoUrl','LYwOJ':_0x20f088(0x107),'nTWbz':'includeDeleted'},_0x5a74ab=await _0x294e4d[_0x20f088(0x11b)](getToken);if(!_0x5a74ab)throw new Error(_0x294e4d['Hpfkg']);const _0x523196=_0x294e4d['gZpyS'](getApiBaseUrl),_0x2a5b39=new URLSearchParams();if(_0xa6fc7e?.['gitRepoUrl'])_0x2a5b39[_0x20f088(0xec)](_0x294e4d[_0x20f088(0x113)],_0xa6fc7e['gitRepoUrl']);if(_0xa6fc7e?.['gitBranch'])_0x2a5b39['set']('gitBranch',_0xa6fc7e['gitBranch']);if(_0xa6fc7e?.[_0x20f088(0x116)])_0x2a5b39[_0x20f088(0xec)]('limit',_0xa6fc7e[_0x20f088(0x116)]['toString']());if(_0xa6fc7e?.['offset'])_0x2a5b39[_0x20f088(0xec)](_0x294e4d[_0x20f088(0xf7)],_0xa6fc7e['offset']['toString']());if(_0xa6fc7e?.[_0x20f088(0xeb)])_0x2a5b39[_0x20f088(0xec)](_0x294e4d['nTWbz'],_0x20f088(0x114));const _0x54c626=_0x523196+'/api/v1/mcp/features'+(_0x2a5b39[_0x20f088(0x10a)]()?'?'+_0x2a5b39['toString']():''),_0x5e822a=await fetch(_0x54c626,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x5a74ab}});if(!_0x5e822a['ok']){const _0x514007=await _0x5e822a['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x514007);}return _0x5e822a[_0x20f088(0xe8)]();}export async function getFeature(_0x32360e){const _0x4407f3=_0x1c27,_0x4ea55a={'eLzJJ':function(_0x56f492){return _0x56f492();},'Trsbf':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x1843ac=await _0x4ea55a['eLzJJ'](getToken);if(!_0x1843ac)throw new Error(_0x4ea55a['Trsbf']);const _0x371e58=_0x4ea55a['eLzJJ'](getApiBaseUrl),_0x4373e1=await fetch(_0x371e58+_0x4407f3(0xf1)+_0x32360e,{'method':'GET','headers':{'Authorization':_0x4407f3(0xf6)+_0x1843ac}});if(!_0x4373e1['ok']){const _0x19b99c=await _0x4373e1[_0x4407f3(0xe2)]();throw new Error('Failed\x20to\x20get\x20feature\x20review:\x20'+_0x19b99c);}return _0x4373e1[_0x4407f3(0xe8)]();}export async function updateFeature(_0x24295a,_0x37d9d6){const _0x34d567=_0x1c27,_0x1421b4={'qYAOK':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','TUEEV':function(_0x20b16c){return _0x20b16c();},'cRoLO':_0x34d567(0xe0)},_0x8e9ad7=await getToken();if(!_0x8e9ad7)throw new Error(_0x1421b4[_0x34d567(0xfd)]);const _0x30ac32=_0x1421b4['TUEEV'](getApiBaseUrl),_0x2492b7=await fetch(_0x30ac32+'/api/v1/mcp/features/'+_0x24295a,{'method':_0x34d567(0xe4),'headers':{'Authorization':'Bearer\x20'+_0x8e9ad7,'Content-Type':_0x1421b4['cRoLO']},'body':JSON['stringify'](_0x37d9d6)});if(!_0x2492b7['ok']){const _0x4297a1=await _0x2492b7['text']();throw new Error(_0x34d567(0xe5)+_0x4297a1);}return _0x2492b7['json']();}export async function createChecklistItem(_0x1c8a6,_0x35a4c3,_0x579b75){const _0x521bd6=_0x1c27,_0x11a55e={'xaMrl':function(_0x296a31){return _0x296a31();},'mgRZu':function(_0x2f0a74){return _0x2f0a74();},'ZTWMi':function(_0x1e5b1c,_0x1d343b,_0x1b0e8b){return _0x1e5b1c(_0x1d343b,_0x1b0e8b);},'omyWZ':_0x521bd6(0xd5),'SkXCE':'application/json'},_0x23f9fa=await _0x11a55e[_0x521bd6(0x110)](getToken);if(!_0x23f9fa)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x223416=_0x11a55e[_0x521bd6(0xda)](getApiBaseUrl),_0x1d61b5=await _0x11a55e['ZTWMi'](fetch,_0x223416+'/api/v1/mcp/features/'+_0x1c8a6+_0x521bd6(0x104),{'method':_0x11a55e['omyWZ'],'headers':{'Authorization':_0x521bd6(0xf6)+_0x23f9fa,'Content-Type':_0x11a55e['SkXCE']},'body':JSON[_0x521bd6(0x112)]({'description':_0x35a4c3,'position':_0x579b75})});if(!_0x1d61b5['ok']){const _0x36f761=await _0x1d61b5[_0x521bd6(0xe2)]();throw new Error(_0x521bd6(0xd6)+_0x36f761);}return _0x1d61b5[_0x521bd6(0xe8)]();}export async function updateChecklistItem(_0x49c108,_0x42bb91,_0x88940b){const _0x288f23=_0x1c27,_0x3be7fd={'fgHGi':function(_0x17259e){return _0x17259e();},'cooav':'PATCH','BsJUd':_0x288f23(0xdc)};return withRetry(async()=>{const _0x2ca676=_0x288f23,_0x4039df=await getToken();if(!_0x4039df)throw new Error(_0x2ca676(0x10f));const _0x51e769=_0x3be7fd['fgHGi'](getApiBaseUrl),_0x5e6436=await fetch(_0x51e769+'/api/v1/mcp/features/'+_0x49c108+'/checklist/'+_0x42bb91,{'method':_0x3be7fd['cooav'],'headers':{'Authorization':_0x2ca676(0xf6)+_0x4039df,'Content-Type':_0x2ca676(0xe0)},'body':JSON['stringify'](_0x88940b)});if(!_0x5e6436['ok']){const _0x498991=await _0x5e6436['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x498991);}return _0x5e6436[_0x2ca676(0xe8)]();},{'label':_0x3be7fd[_0x288f23(0xe6)]});}export async function getFeatureReport(_0x3da8f2){const _0x2efe92=_0x1c27,_0x1cc739={'MpNtH':function(_0x3a6b25){return _0x3a6b25();},'Nkjzm':function(_0x283dfb,_0x57bea3,_0x1ad2b5){return _0x283dfb(_0x57bea3,_0x1ad2b5);}},_0x161c53=await getToken();if(!_0x161c53)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x534fa2=_0x1cc739[_0x2efe92(0xcf)](getApiBaseUrl),_0x247adb=await _0x1cc739['Nkjzm'](fetch,_0x534fa2+'/api/v1/mcp/features/'+_0x3da8f2+'/report',{'method':_0x2efe92(0xd3),'headers':{'Authorization':_0x2efe92(0xf6)+_0x161c53}});if(!_0x247adb['ok']){const _0x278b63=await _0x247adb['text']();throw new Error(_0x2efe92(0xef)+_0x278b63);}return _0x247adb[_0x2efe92(0xe8)]();}function _0x5269(){const _0x318067=['No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','xaMrl','itemIds','stringify','ULVEm','true','vzxez','limit','joHiR','UuKUv','sessionId','KcXTs','QriQK','1484650TYBaYg','/action-items','MpNtH','/start','YnhEB','Failed\x20to\x20get\x20action\x20items:\x20','GET','11JzJZGC','POST','Failed\x20to\x20create\x20scenario:\x20','qfzkA','FfZnQ','/conclude','mgRZu','sJnLT','updateChecklistItem','AhHKR','style','Failed\x20to\x20get\x20item\x20feedback:\x20','application/json','/checklist-items/','text','truKK','PATCH','Failed\x20to\x20update\x20feature\x20review:\x20','BsJUd','1510408pSvxpr','json','11232135MXpuLj','RaEhZ','includeDeleted','set','6OfoEwA','gqcxw','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','Failed\x20to\x20start\x20session:\x20','/api/v1/mcp/features/','6862RXTYBR','DELETE','/api/v1/mcp/features','BTLWb','Bearer\x20','LYwOJ','/report/markdown','qklNP','5011970NDgcAJ','/sessions','284ERiWnF','qYAOK','PvdKd','SkwKn','/restore','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','EDfut','3904019ALgUux','/checklist','lrNIC','BJmVy','offset','fSfsw','QyhXo','toString','18gjJVeB','billingUrl','4578864xPhiRl','Failed\x20to\x20restore\x20feature\x20review:\x20'];_0x5269=function(){return _0x318067;};return _0x5269();}export async function getFeatureReportMarkdown(_0x6a1a6b,_0x46cf0e){const _0x5e03ce=_0x1c27,_0x408198={'NIciL':function(_0x29aecc){return _0x29aecc();},'gqcxw':_0x5e03ce(0x10f),'KcXTs':function(_0x537fd0,_0x2d91e7){return _0x537fd0>_0x2d91e7;},'jLbUg':function(_0x33f472,_0x13dd42){return _0x33f472(_0x13dd42);},'nKHnQ':_0x5e03ce(0x111),'BJmVy':_0x5e03ce(0xde),'BTLWb':function(_0x11c43c,_0x103e75,_0x4af2aa){return _0x11c43c(_0x103e75,_0x4af2aa);},'fSfsw':_0x5e03ce(0xd3)},_0x149d20=await _0x408198['NIciL'](getToken);if(!_0x149d20)throw new Error(_0x408198[_0x5e03ce(0xee)]);const _0x380432=getApiBaseUrl(),_0x4aa865=new URLSearchParams(),_0x288ef8=_0x408198[_0x5e03ce(0x11a)](_0x46cf0e?.['itemIds']?.['length']??0x0,0x0),_0x135d09=_0x408198['jLbUg'](Boolean,_0x46cf0e?.[_0x5e03ce(0x119)]);_0x288ef8&&_0x46cf0e?.[_0x5e03ce(0x111)]&&_0x4aa865[_0x5e03ce(0xec)](_0x408198['nKHnQ'],_0x46cf0e[_0x5e03ce(0x111)]['join'](','));_0x135d09&&_0x46cf0e?.['sessionId']&&_0x4aa865[_0x5e03ce(0xec)]('sessionId',_0x46cf0e[_0x5e03ce(0x119)]);!_0x288ef8&&!_0x135d09&&_0x46cf0e?.['style']&&_0x4aa865['set'](_0x408198[_0x5e03ce(0x106)],_0x46cf0e['style']);const _0x9f9e77=_0x380432+'/api/v1/mcp/features/'+_0x6a1a6b+_0x5e03ce(0xf8),_0x3ecfe3=''+_0x9f9e77+(_0x4aa865['toString']()?'?'+_0x4aa865['toString']():''),_0x4fca6a=await _0x408198[_0x5e03ce(0xf5)](fetch,_0x3ecfe3,{'method':_0x408198[_0x5e03ce(0x108)],'headers':{'Authorization':'Bearer\x20'+_0x149d20}});if(!_0x4fca6a['ok']){const _0x4cd501=await _0x4fca6a['text']();throw new Error(_0x5e03ce(0x101)+_0x4cd501);}return _0x4fca6a['text']();}function _0x1c27(_0xf0815c,_0x2d47e7){_0xf0815c=_0xf0815c-0xce;const _0x52690a=_0x5269();let _0x1c273d=_0x52690a[_0xf0815c];return _0x1c273d;}export async function listFeatureSessions(_0x331318){const _0x49ac7c=_0x1c27,_0x56b44d={'vzxez':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','FfZnQ':function(_0x3eaac3,_0x3f18d5,_0x48a221){return _0x3eaac3(_0x3f18d5,_0x48a221);},'guAOD':_0x49ac7c(0xd3)},_0x5ce7e2=await getToken();if(!_0x5ce7e2)throw new Error(_0x56b44d[_0x49ac7c(0x115)]);const _0x12a1e7=getApiBaseUrl(),_0x17a57c=await _0x56b44d[_0x49ac7c(0xd8)](fetch,_0x12a1e7+_0x49ac7c(0xf1)+_0x331318+_0x49ac7c(0xfb),{'method':_0x56b44d['guAOD'],'headers':{'Authorization':'Bearer\x20'+_0x5ce7e2}});if(!_0x17a57c['ok']){const _0x467dee=await _0x17a57c[_0x49ac7c(0xe2)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x467dee);}return _0x17a57c[_0x49ac7c(0xe8)]();}export async function startSession(_0x87ba96,_0x1481a2){const _0x26047a=_0x1c27,_0x2bb1c6={'uBuHA':function(_0x279d18){return _0x279d18();},'qklNP':_0x26047a(0x10f),'mvswS':function(_0x2afecb,_0x2240ce,_0x4b3368){return _0x2afecb(_0x2240ce,_0x4b3368);},'FypVS':_0x26047a(0xd5)},_0x8a2824=await _0x2bb1c6['uBuHA'](getToken);if(!_0x8a2824)throw new Error(_0x2bb1c6[_0x26047a(0xf9)]);const _0xf414d9=getApiBaseUrl(),_0x259ed4=await _0x2bb1c6['mvswS'](fetch,_0xf414d9+'/api/v1/mcp/features/'+_0x87ba96+'/sessions/'+_0x1481a2+_0x26047a(0xd0),{'method':_0x2bb1c6['FypVS'],'headers':{'Authorization':_0x26047a(0xf6)+_0x8a2824}});if(!_0x259ed4['ok']){const _0x15c03e=await _0x259ed4[_0x26047a(0xe2)]();throw new Error(_0x26047a(0xf0)+_0x15c03e);}return _0x259ed4[_0x26047a(0xe8)]();}export async function concludeSession(_0x1ae2c4,_0x2c6468){const _0x368097=_0x1c27,_0x37a72c={'AhHKR':function(_0x5e859f){return _0x5e859f();},'GSkCQ':function(_0x37a8ee,_0x50dfb4,_0x49c733){return _0x37a8ee(_0x50dfb4,_0x49c733);},'RaEhZ':_0x368097(0xd5)},_0x870d59=await _0x37a72c['AhHKR'](getToken);if(!_0x870d59)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x58420b=_0x37a72c[_0x368097(0xdd)](getApiBaseUrl),_0x3506ab=await _0x37a72c['GSkCQ'](fetch,_0x58420b+'/api/v1/mcp/features/'+_0x1ae2c4+'/sessions/'+_0x2c6468+_0x368097(0xd9),{'method':_0x37a72c[_0x368097(0xea)],'headers':{'Authorization':'Bearer\x20'+_0x870d59}});if(!_0x3506ab['ok']){const _0x4334e1=await _0x3506ab[_0x368097(0xe2)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x4334e1);}return _0x3506ab['json']();}export async function getActionItems(_0x16fe8d){const _0x572e5d=_0x1c27,_0x1fe402={'sJnLT':function(_0x49a893){return _0x49a893();},'UuKUv':function(_0x574f6d){return _0x574f6d();}},_0x41d339=await _0x1fe402[_0x572e5d(0xdb)](getToken);if(!_0x41d339)throw new Error(_0x572e5d(0x10f));const _0x565e70=_0x1fe402[_0x572e5d(0x118)](getApiBaseUrl),_0x40d002=await fetch(_0x565e70+_0x572e5d(0xf1)+_0x16fe8d+_0x572e5d(0xce),{'method':'GET','headers':{'Authorization':_0x572e5d(0xf6)+_0x41d339}});if(!_0x40d002['ok']){const _0x3c0258=await _0x40d002['text']();throw new Error(_0x572e5d(0xd2)+_0x3c0258);}return _0x40d002['json']();}export async function getItemFeedback(_0x2a5426,_0x480d4f){const _0x4514b8=_0x1c27,_0x1c8bf8={'pjUdH':function(_0x152655){return _0x152655();}},_0xf28238=await getToken();if(!_0xf28238)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x7f797d=_0x1c8bf8['pjUdH'](getApiBaseUrl),_0x3ba76b=await fetch(_0x7f797d+'/api/v1/mcp/features/'+_0x2a5426+_0x4514b8(0xe1)+_0x480d4f+'/feedback',{'method':_0x4514b8(0xd3),'headers':{'Authorization':_0x4514b8(0xf6)+_0xf28238}});if(!_0x3ba76b['ok']){const _0x3b88ce=await _0x3ba76b[_0x4514b8(0xe2)]();throw new Error(_0x4514b8(0xdf)+_0x3b88ce);}return _0x3ba76b['json']();}export async function markCommentsAddressed(_0x43734d,_0x2fa730,_0x130981){const _0x336606=_0x1c27,_0x56c51f={'YnhEB':function(_0x1e87ea){return _0x1e87ea();},'QyhXo':function(_0x12b350){return _0x12b350();},'joHiR':function(_0x31ba53,_0x31c0a4,_0x5b112e){return _0x31ba53(_0x31c0a4,_0x5b112e);}},_0x9c359b=await _0x56c51f[_0x336606(0xd1)](getToken);if(!_0x9c359b)throw new Error(_0x336606(0x10f));const _0x44bd6a=_0x56c51f[_0x336606(0x109)](getApiBaseUrl),_0xa945f0=await _0x56c51f[_0x336606(0x117)](fetch,_0x44bd6a+'/api/v1/mcp/features/'+_0x43734d+'/comments/address',{'method':'POST','headers':{'Authorization':_0x336606(0xf6)+_0x9c359b,'Content-Type':_0x336606(0xe0)},'body':JSON['stringify']({'checklistItemId':_0x2fa730,'commentIds':_0x130981})});if(!_0xa945f0['ok']){const _0xc88197=await _0xa945f0[_0x336606(0xe2)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0xc88197);}}export async function softDeleteFeature(_0x2ba5de){const _0x4a44af=_0x1c27,_0x51f249={'lrNIC':function(_0x5ed7c6){return _0x5ed7c6();},'PvdKd':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','xIYRs':_0x4a44af(0xf3)},_0x319cd3=await _0x51f249['lrNIC'](getToken);if(!_0x319cd3)throw new Error(_0x51f249[_0x4a44af(0xfe)]);const _0x5f4dab=_0x51f249[_0x4a44af(0x105)](getApiBaseUrl),_0x24be9d=await fetch(_0x5f4dab+_0x4a44af(0xf1)+_0x2ba5de,{'method':_0x51f249['xIYRs'],'headers':{'Authorization':_0x4a44af(0xf6)+_0x319cd3}});if(!_0x24be9d['ok']){const _0x49ef40=await _0x24be9d[_0x4a44af(0xe2)]();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x49ef40);}}export async function restoreFeature(_0x403d68){const _0x52e23a=_0x1c27,_0x5c286c={'SkwKn':_0x52e23a(0x10f),'truKK':function(_0x1ef145,_0x57e8e2,_0x7bb12d){return _0x1ef145(_0x57e8e2,_0x7bb12d);},'rmBiY':'POST'},_0x362000=await getToken();if(!_0x362000)throw new Error(_0x5c286c[_0x52e23a(0xff)]);const _0x3c82ba=getApiBaseUrl(),_0x502cbe=await _0x5c286c[_0x52e23a(0xe3)](fetch,_0x3c82ba+'/api/v1/mcp/features/'+_0x403d68+_0x52e23a(0x100),{'method':_0x5c286c['rmBiY'],'headers':{'Authorization':_0x52e23a(0xf6)+_0x362000}});if(!_0x502cbe['ok']){const _0x480a4c=await _0x502cbe[_0x52e23a(0xe2)]();throw new Error(_0x52e23a(0x10e)+_0x480a4c);}}
|