@ranger-testing/ranger-cli 3.0.1-alpha.aab0a1c-26 → 3.0.1-alpha.c0b290b-36
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 +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x497ea4=_0x2db1;(function(_0x2f9389,_0x24f5ae){const _0x14d2ee=_0x2db1,_0x109009=_0x2f9389();while(!![]){try{const _0x207970=parseInt(_0x14d2ee(0x1d8))/0x1*(parseInt(_0x14d2ee(0x1eb))/0x2)+-parseInt(_0x14d2ee(0x1e4))/0x3+parseInt(_0x14d2ee(0x1f5))/0x4*(-parseInt(_0x14d2ee(0x1a1))/0x5)+-parseInt(_0x14d2ee(0x218))/0x6+parseInt(_0x14d2ee(0x203))/0x7*(parseInt(_0x14d2ee(0x1a6))/0x8)+-parseInt(_0x14d2ee(0x1d0))/0x9*(parseInt(_0x14d2ee(0x1e8))/0xa)+parseInt(_0x14d2ee(0x1a4))/0xb;if(_0x207970===_0x24f5ae)break;else _0x109009['push'](_0x109009['shift']());}catch(_0x17cae6){_0x109009['push'](_0x109009['shift']());}}}(_0x4030,0x875a5));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x4030(){const _0x736175=['CUEzC','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','HmEdd','Cloud\x20profile\x20\x22','name','24164LiOPql','code','clientIp','string','RANGER_TEST_PASSWORD','/api/v1/profiles/','\x22,\x20cached\x20locally','/login','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','SQjuM','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','env','\x22,\x20attempting\x20login...','JFJAD','eLsDC','close','Browser\x20login\x20timed\x20out\x20before\x20completion.','session_state','qRxHS','No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22','5770254KOZikQ','application/json','save','CEQlx','not_configured','5OaigRL','environment_key','userAgent','26320393JxEsbt','username','688eLoCxO','browserOptions','/api/v1/profiles','password','\x22\x20not\x20found.','shfFK','about:blank','ALuNh','HmohA','HovPY','error','RANGER_TEST_USERNAME','POST','settings','fdKTw','iDLJL','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','\x20\x20Cached\x20session\x20for\x20\x22','PUT','Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.','/session','ptehg','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','):\x20','json','setupHeaders','confirm','isArray','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','DELETE','environmentKey','ATuXS','message','launch','defaultEnvironmentKey','stringify','success','join','wpnRU','jNWbj','bDXHh','sessionState','81gMEXeF','xpMvi','prompt','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','YrWQT','Browser\x20login\x20timed\x20out\x20after\x20','test_output','status','13PJyLuC','toISOString','rDnXG','auth_config','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','length','\x22.\x0a','push','domains','/api/v1/profiles/auth-config','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','gJSZv','3115473VOcfao','organizationId','LqKYR','WFYOg','105080wWwTnN','\x20\x20No\x20live\x20session\x20for\x20\x22','profiles','152952HVUrNv','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','cookies','zBsHV','log','sXFAp','catch','GXliM','snHdV','4138584TncdCB','xPsyI','\x20\x20Cloud\x20session\x20for\x20\x22','gOjfK','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','ruaaS','storageStatePath','etIoV','QgvbA'];_0x4030=function(){return _0x736175;};return _0x4030();}import _0x15ca36 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 _0x2323c5=_0x2db1,_0x56774d=await getToken();if(!_0x56774d)throw new Error(_0x2323c5(0x1f9));return _0x56774d;}async function apiRequest(_0xe683,_0x22add2={}){const _0xd64ff=_0x2db1,_0x253061={'XCPpd':function(_0x1a9d6f,_0x2093fd,_0x5074cb){return _0x1a9d6f(_0x2093fd,_0x5074cb);},'xpMvi':_0xd64ff(0x19d),'jJAxR':function(_0x39f573,_0x4f2882){return _0x39f573===_0x4f2882;},'bDXHh':_0xd64ff(0x206),'etIoV':function(_0x5c4d87,_0x416036){return _0x5c4d87===_0x416036;}},_0x4b3562=await requireToken(),_0x1797c9=getApiBaseUrl(),_0x17060c=await _0x253061['XCPpd'](fetch,''+_0x1797c9+_0xe683,{..._0x22add2,'headers':{'Authorization':'Bearer\x20'+_0x4b3562,'Content-Type':_0x253061[_0xd64ff(0x1d1)],..._0x22add2['headers']??{}}});if(!_0x17060c['ok']){let _0x22dfd3='',_0x4789c2;try{const _0x4e3564=await _0x17060c[_0xd64ff(0x1be)]();_0x22dfd3=(_0x253061['jJAxR'](typeof _0x4e3564[_0xd64ff(0x1b0)],_0x253061[_0xd64ff(0x1ce)])?_0x4e3564[_0xd64ff(0x1b0)]:undefined)??JSON['stringify'](_0x4e3564);if(typeof _0x4e3564['code']===_0xd64ff(0x206))_0x4789c2=_0x4e3564[_0xd64ff(0x204)];}catch{_0x22dfd3=_0x17060c['statusText'];}throw new ApiError('API\x20request\x20'+_0xe683+'\x20failed\x20('+_0x17060c[_0xd64ff(0x1d7)]+_0xd64ff(0x1bd)+_0x22dfd3,_0x17060c[_0xd64ff(0x1d7)],_0x22dfd3,_0x4789c2);}if(_0x253061[_0xd64ff(0x1fc)](_0x17060c['status'],0xcc))return undefined;return _0x17060c[_0xd64ff(0x1be)]();}export class ApiError extends Error{[_0x497ea4(0x1d7)];['detail'];[_0x497ea4(0x204)];constructor(_0x26eb56,_0x5811a6,_0x261a1e,_0x5e765a){const _0x5629e6=_0x497ea4,_0x1a68ec={'gOjfK':'ApiError'};super(_0x26eb56),this[_0x5629e6(0x1d7)]=_0x5811a6,this['detail']=_0x261a1e,this['code']=_0x5e765a,this[_0x5629e6(0x202)]=_0x1a68ec[_0x5629e6(0x1f8)];}}export async function fetchCloudProfile(_0xed9172){const _0x52ff52=_0x497ea4,_0x5a709f={'xPsyI':function(_0x3d6991,_0x5220f9){return _0x3d6991 instanceof _0x5220f9;},'ptehg':function(_0x4ff37c,_0x21978a){return _0x4ff37c===_0x21978a;}};try{return await apiRequest(_0x52ff52(0x208)+encodeURIComponent(_0xed9172));}catch(_0x27c123){if(_0x5a709f[_0x52ff52(0x1f6)](_0x27c123,ApiError)&&_0x5a709f[_0x52ff52(0x1bb)](_0x27c123['status'],0x194))return null;throw _0x27c123;}}export async function listCloudProfiles(){const _0x2ecf57=_0x497ea4,_0x3691e5={'CUEzC':'/api/v1/profiles'},_0x137665=await apiRequest(_0x3691e5[_0x2ecf57(0x1fe)]);return _0x137665[_0x2ecf57(0x1ea)];}export async function deleteCloudProfile(_0x38c159){const _0x4ceed0=_0x497ea4,_0x4e5345={'ZdMvU':function(_0x5a4419,_0x5bd2d4,_0x39d1ee){return _0x5a4419(_0x5bd2d4,_0x39d1ee);},'qRxHS':function(_0x5bd22d,_0x1d3440){return _0x5bd22d===_0x1d3440;}};try{await _0x4e5345['ZdMvU'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x38c159),{'method':_0x4ceed0(0x1c3)});}catch(_0x122993){if(_0x122993 instanceof ApiError&&_0x4e5345[_0x4ceed0(0x216)](_0x122993[_0x4ceed0(0x1d7)],0x194))throw new Error(_0x4ceed0(0x201)+_0x38c159+_0x4ceed0(0x1aa));throw _0x122993;}}export async function createCloudProfile(_0x2a10ac,_0x739060,_0x2e3c94={}){const _0x14dd80=_0x497ea4,_0x2de2b3={'QQIdy':function(_0x183c7f,_0x8f8f35,_0x28e2ed){return _0x183c7f(_0x8f8f35,_0x28e2ed);}},_0x1d09c8={'name':_0x2a10ac};if(_0x739060)_0x1d09c8[_0x14dd80(0x1a2)]=_0x739060;_0x2e3c94['settings']&&Object['keys'](_0x2e3c94['settings'])['length']>0x0&&(_0x1d09c8['settings']=_0x2e3c94[_0x14dd80(0x1b3)]);if(_0x2e3c94['username'])_0x1d09c8['username']=_0x2e3c94['username'];if(_0x2e3c94[_0x14dd80(0x1a9)])_0x1d09c8[_0x14dd80(0x1a9)]=_0x2e3c94[_0x14dd80(0x1a9)];return await _0x2de2b3['QQIdy'](apiRequest,_0x14dd80(0x1a8),{'method':'POST','body':JSON['stringify'](_0x1d09c8)});}export async function uploadCloudProfileSession(_0x22e63d,_0x221f7d){const _0x1dca20=_0x497ea4;return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x22e63d)+_0x1dca20(0x1ba),{'method':'POST','body':JSON['stringify']({'session_state':_0x221f7d})});}function _0x2db1(_0x127f5d,_0x5ee485){_0x127f5d=_0x127f5d-0x19d;const _0x40301b=_0x4030();let _0x2db118=_0x40301b[_0x127f5d];return _0x2db118;}export async function saveCloudProfileCredentials(_0x3de776,_0x5c26a0,_0x2b52bd){const _0x5b9f4e=_0x497ea4,_0x19de56={'wpnRU':function(_0x396a96,_0x576027){return _0x396a96(_0x576027);},'uqsOp':'PUT'};await apiRequest('/api/v1/profiles/'+_0x19de56[_0x5b9f4e(0x1cc)](encodeURIComponent,_0x3de776),{'method':_0x19de56['uqsOp'],'body':JSON['stringify']({'username':_0x5c26a0,'password':_0x2b52bd})});}export async function fetchAuthConfig(){const _0x53a7f2=_0x497ea4;try{const _0xe79fec=await apiRequest(_0x53a7f2(0x1e1));return _0xe79fec[_0x53a7f2(0x1db)];}catch(_0x79cbf7){return _0x79cbf7 instanceof ApiError&&_0x79cbf7[_0x53a7f2(0x1d7)]!==0x194&&console[_0x53a7f2(0x1b0)]('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x79cbf7['message']),null;}}export function pickAdHocEnvKey(_0x4cf0d9){const _0x35f290=_0x497ea4,_0x366bc0={'jNWbj':function(_0x277946,_0x182040){return _0x277946===_0x182040;}};if(!_0x4cf0d9)return null;if(_0x4cf0d9['defaultEnvironmentKey'])return _0x4cf0d9[_0x35f290(0x1c8)];const _0xe3ce32=Object['keys'](_0x4cf0d9['environments']??{});if(_0x366bc0[_0x35f290(0x1cd)](_0xe3ce32['length'],0x1))return _0xe3ce32[0x0];if(_0x366bc0['jNWbj'](_0xe3ce32[_0x35f290(0x1dd)],0x0))return null;throw new Error(_0x35f290(0x1ed)+_0xe3ce32[_0x35f290(0x1cb)](',\x20')+').\x20'+_0x35f290(0x1b9));}export async function resolveAdHocProfile(_0x30c18c=process[_0x497ea4(0x20f)]){const _0xa3411=_0x497ea4,_0x27afc2={'CEQlx':function(_0x565d11){return _0x565d11();}},_0x1868dc=_0x30c18c[_0xa3411(0x1b1)];if(!_0x1868dc)return null;const _0x4a62ad=await fetchCloudProfile(_0x1868dc);if(_0x4a62ad)return{'name':_0x4a62ad[_0xa3411(0x202)],'profile':_0x4a62ad};const _0x30c03d=await _0x27afc2[_0xa3411(0x19f)](fetchAuthConfig),_0x323ec6=pickAdHocEnvKey(_0x30c03d),_0x5d4a60=_0x30c18c[_0xa3411(0x207)],_0x436ba8=await createCloudProfile(_0x1868dc,_0x323ec6??undefined,{'username':_0x1868dc,'password':_0x5d4a60});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x436ba8['name']+'\x22\x20for\x20'+_0x1868dc),{'name':_0x436ba8['name'],'profile':_0x436ba8};}export async function writeSessionToLocalCache(_0x1868c0,_0xd6b627,_0x59e2c3,_0x35445e,_0x41df1f,_0x4ec363,_0xd22db9){const _0x22001f=_0x497ea4,_0x4ebaa6={'ATuXS':function(_0x574317,_0x31c991,_0x38a58c){return _0x574317(_0x31c991,_0x38a58c);},'zBsHV':function(_0x3c9359){return _0x3c9359();},'rNxEm':'auth','udJpM':function(_0x52656c,_0x4b361f,_0x2e48df){return _0x52656c(_0x4b361f,_0x2e48df);},'HmEdd':function(_0xcc7404,_0x369cf5){return _0xcc7404>_0x369cf5;},'bisgh':function(_0x3b973a,_0x536144,_0x27a17f){return _0x3b973a(_0x536144,_0x27a17f);},'eLsDC':function(_0x5898f3,_0x2ab9c5){return _0x5898f3(_0x2ab9c5);}},_0x26400e=sessionCacheHash({'orgId':_0xd6b627,'profileName':_0x1868c0,'effectiveBaseUrl':_0x59e2c3,'setupHeaders':_0x35445e,'invalidateOn':_0xd22db9?.['invalidateOn'],'userAgent':_0xd22db9?.['userAgent'],'clientIp':_0xd22db9?.['clientIp']}),_0x3c4f66=_0x4ebaa6[_0x22001f(0x1c5)](getSessionCachePath,_0x26400e,_0x1868c0),_0x5d154c=_0x4ebaa6['ATuXS'](join,_0x4ebaa6[_0x22001f(0x1ef)](getRangerHomeDir),_0x4ebaa6['rNxEm']);!existsSync(_0x5d154c)&&await _0x4ebaa6['udJpM'](mkdir,_0x5d154c,{'recursive':!![]});const _0xb9f13f={..._0x41df1f};_0x4ec363&&_0x4ebaa6[_0x22001f(0x200)](_0x4ec363[_0x22001f(0x1dd)],0x0)&&Array[_0x22001f(0x1c1)](_0xb9f13f[_0x22001f(0x1ee)])&&(_0xb9f13f[_0x22001f(0x1ee)]=_0x4ebaa6['bisgh'](duplicateCookiesForDomains,_0xb9f13f[_0x22001f(0x1ee)],_0x4ec363));const _0x4db359={'cached_at':new Date()[_0x22001f(0x1d9)](),'session_state':_0xb9f13f};await _0x4ebaa6['ATuXS'](writeFile,_0x3c4f66,JSON['stringify'](_0x4db359,null,0x2));const _0x550ed8=_0x4ebaa6[_0x22001f(0x212)](getStorageStatePath,_0x3c4f66);return await _0x4ebaa6['udJpM'](writeFile,_0x550ed8,JSON[_0x22001f(0x1c9)](_0xb9f13f,null,0x2)),_0x550ed8;}export async function checkLocalCache(_0x5e934a,_0x1bd1d4,_0x57f2e8,_0xc9198f,_0x5f540c){const _0x47719c=_0x497ea4,_0x2bcd02={'HmohA':function(_0x3333f2,_0x46ff16){return _0x3333f2(_0x46ff16);},'TkyNn':function(_0x4cd1b7,_0x5cc3cb){return _0x4cd1b7(_0x5cc3cb);},'CSaAh':function(_0x465ea6,_0x57e9c8){return _0x465ea6(_0x57e9c8);}},_0x353807=_0x2bcd02[_0x47719c(0x1ae)](sessionCacheHash,{'orgId':_0x1bd1d4,'profileName':_0x5e934a,'effectiveBaseUrl':_0x57f2e8,'setupHeaders':_0xc9198f,'invalidateOn':_0x5f540c?.['invalidateOn'],'userAgent':_0x5f540c?.[_0x47719c(0x1a3)],'clientIp':_0x5f540c?.[_0x47719c(0x205)]}),_0x814f30=getSessionCachePath(_0x353807,_0x5e934a),_0x16b350=_0x2bcd02['TkyNn'](getStorageStatePath,_0x814f30);if(!existsSync(_0x814f30)||!_0x2bcd02['CSaAh'](existsSync,_0x16b350))return null;try{const _0x4c5ffb=await readFile(_0x814f30,'utf-8');return JSON['parse'](_0x4c5ffb),{'storageStatePath':_0x16b350};}catch{return null;}}function launchRealBrowser(){const _0x3b7d85=_0x497ea4;return chromium[_0x3b7d85(0x1c7)]({'headless':!![]});}function emitSessionValidationHint(_0x4e125d,_0x11150a){const _0x52e9b2=_0x497ea4,_0x4c7b4e={'SQjuM':function(_0x4995c2,_0x342002){return _0x4995c2===_0x342002;},'xBrfL':function(_0x6200d2,_0x1be783){return _0x6200d2+_0x1be783;}};if(!_0x11150a||!_0x11150a[_0x52e9b2(0x1e0)]?.[_0x52e9b2(0x1dd)])return;let _0x1d115b;try{_0x1d115b=new URL(_0x4e125d);}catch{return;}const _0x3da4f0=[];for(const _0x1dec39 of _0x11150a[_0x52e9b2(0x1e0)]){try{_0x3da4f0[_0x52e9b2(0x1df)]({'raw':_0x1dec39,'url':new URL(_0x1dec39)});}catch{}}if(_0x4c7b4e[_0x52e9b2(0x20c)](_0x3da4f0['length'],0x0))return;if(_0x3da4f0['some'](_0x57470c=>_0x57470c['url']['origin']===_0x1d115b['origin']))return;const _0x15919b=_0x3da4f0['map'](_0x363cec=>'\x22'+_0x363cec['raw']+'\x22')[_0x52e9b2(0x1cb)](',\x20');console['log'](_0x4c7b4e['xBrfL'](_0x52e9b2(0x20b)+_0x15919b+';\x20','you\x27re\x20now\x20at\x20\x22'+_0x4e125d+_0x52e9b2(0x1ec))+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x2faf37,_0x2501ab){const _0xccb569=_0x497ea4,_0x1783d3={'WRDrz':function(_0x4c9139,_0x422daf,_0x37595a){return _0x4c9139(_0x422daf,_0x37595a);},'ruaaS':function(_0x4c12f8,_0x18d372){return _0x4c12f8===_0x18d372;},'WFYOg':_0xccb569(0x1a0)},_0x48bb9e=process[_0xccb569(0x20f)]['RANGER_TEST_USERNAME'],_0x46673b=process[_0xccb569(0x20f)][_0xccb569(0x207)],_0x5bb4ef={};if(_0x48bb9e)_0x5bb4ef['username']=_0x48bb9e;if(_0x46673b)_0x5bb4ef[_0xccb569(0x1a9)]=_0x46673b;if(_0x2501ab?.['force'])_0x5bb4ef['force']=!![];try{return await _0x1783d3['WRDrz'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x2faf37)+_0xccb569(0x20a),{'method':'POST','body':JSON[_0xccb569(0x1c9)](_0x5bb4ef)});}catch(_0xf5ee12){if(_0xf5ee12 instanceof ApiError&&_0x1783d3[_0xccb569(0x1fa)](_0xf5ee12['status'],0x190)&&_0x1783d3[_0xccb569(0x1fa)](_0xf5ee12[_0xccb569(0x204)],_0x1783d3[_0xccb569(0x1e7)]))return{'status':_0xccb569(0x1a0),'error':_0xf5ee12['detail']};throw _0xf5ee12;}}export async function manualBrowserLogin(_0xe14c39,_0x3bf0a4){const _0x12e951=_0x497ea4,_0x189cbe={'eUorV':function(_0x30c5b6,_0x332553){return _0x30c5b6/_0x332553;},'snHdV':function(_0x2b7cc0){return _0x2b7cc0();},'MFTMp':function(_0x396910,_0x7deb97){return _0x396910(_0x7deb97);},'YrWQT':function(_0x24a2a2,_0x426f8e,_0x25dbc3){return _0x24a2a2(_0x426f8e,_0x25dbc3);},'WOYby':_0x12e951(0x213),'LqKYR':function(_0x4d6911){return _0x4d6911();},'ALuNh':function(_0x16dd89,_0x11f1ae){return _0x16dd89+_0x11f1ae;},'iAjaV':function(_0x436cdb,_0x58e2ac){return _0x436cdb+_0x58e2ac;},'bCDel':_0x12e951(0x1ac),'vTRXt':_0x12e951(0x1e2),'HovPY':_0x12e951(0x1ff),'wTVzX':function(_0x461944,_0x55976f){return _0x461944&&_0x55976f;},'rDnXG':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','iDLJL':_0x12e951(0x1b2),'sXFAp':'cli:manual-login'};if(!_0x189cbe[_0x12e951(0x1e6)](isInteractive))throw new Error(_0x189cbe[_0x12e951(0x1ad)](_0x189cbe['iAjaV'](_0x12e951(0x217)+_0xe14c39[_0x12e951(0x202)]+_0x12e951(0x1de),'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'),_0x12e951(0x1dc)));const _0x32f32d=_0x3bf0a4&&_0x3bf0a4['domains'][_0x12e951(0x1dd)]>0x0?_0x3bf0a4['domains'][0x0]:_0x189cbe['bCDel'];console[_0x12e951(0x1f0)](_0x189cbe['vTRXt']),console['log'](_0x189cbe[_0x12e951(0x1af)]),await new Promise(_0x541fac=>setTimeout(_0x541fac,0x7d0));const _0x4103e6=await chromium[_0x12e951(0x1c7)]({'headless':![]});let _0x28b7dc=null;try{const _0x223ac4={'ignoreHTTPSErrors':!![]};_0x3bf0a4?.[_0x12e951(0x1bf)]&&(_0x223ac4['extraHTTPHeaders']=_0x3bf0a4['setupHeaders']);const _0x21838a=await _0x4103e6['newContext'](_0x223ac4);await addProfileSetupBanner(_0x21838a);const _0x3630b3=await _0x21838a['newPage']();await _0x3630b3['goto'](_0x32f32d);let _0x3abeb8=![];await new Promise(_0x38e090=>{const _0x545455=_0x12e951,_0xb5206b={'xfoRR':function(_0x4cb40e,_0x141ffb){return _0x189cbe['MFTMp'](_0x4cb40e,_0x141ffb);}},_0x1caddc=_0x189cbe[_0x545455(0x1d4)](setTimeout,()=>{const _0x30157f=_0x545455;_0x3abeb8=!![],console['error'](_0x30157f(0x1d5)+_0x189cbe['eUorV'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x189cbe[_0x30157f(0x1f4)](_0x38e090);},MANUAL_LOGIN_TIMEOUT_MS);_0x3630b3['on'](_0x189cbe['WOYby'],async()=>{_0xb5206b['xfoRR'](clearTimeout,_0x1caddc);try{const _0x57341a=await _0x21838a['storageState']();_0x28b7dc=_0x57341a;}catch{}_0x38e090();});});if(_0x189cbe['wTVzX'](_0x3abeb8,!_0x28b7dc))throw new Error(_0x12e951(0x214));}finally{await _0x4103e6[_0x12e951(0x213)]()[_0x12e951(0x1f2)](()=>{});}if(!_0x28b7dc)throw new Error(_0x189cbe[_0x12e951(0x1da)]);return await _0x189cbe[_0x12e951(0x1d4)](apiRequest,'/api/v1/profiles/'+_0x189cbe['MFTMp'](encodeURIComponent,_0xe14c39['name'])+'/session',{'method':_0x189cbe[_0x12e951(0x1b5)],'body':JSON[_0x12e951(0x1c9)]({'session_state':_0x28b7dc,'updated_by':_0x189cbe[_0x12e951(0x1f1)]})}),{'sessionState':_0x28b7dc};}export async function promptSaveCredentials(_0x468db2){const _0x13a285=_0x497ea4,_0x3fc9f4={'MDYDC':function(_0x5c2a8a,_0x68f22b){return _0x5c2a8a||_0x68f22b;},'tNgJh':function(_0x59de7f){return _0x59de7f();},'JFJAD':_0x13a285(0x20e),'FKjAC':function(_0x29d552,_0x1e33fa,_0x198e84){return _0x29d552(_0x1e33fa,_0x198e84);},'rvCGL':function(_0xbe48b4,_0x5c0208){return _0xbe48b4(_0x5c0208);}},_0x4f0758=process['env']['RANGER_TEST_USERNAME'],_0x572b22=process['env']['RANGER_TEST_PASSWORD'];if(_0x3fc9f4['MDYDC'](!_0x4f0758,!_0x572b22))return;if(!_0x3fc9f4['tNgJh'](isInteractive))return;const {save:_0x21f8d0}=await _0x15ca36[_0x13a285(0x1d2)]([{'type':_0x13a285(0x1c0),'name':_0x13a285(0x19e),'message':_0x3fc9f4[_0x13a285(0x211)],'default':![]}]);if(!_0x21f8d0)return;await _0x3fc9f4['FKjAC'](apiRequest,'/api/v1/profiles/'+_0x3fc9f4['rvCGL'](encodeURIComponent,_0x468db2),{'method':_0x13a285(0x1b8),'body':JSON['stringify']({'username':_0x4f0758,'password':_0x572b22})}),console[_0x13a285(0x1f0)](_0x13a285(0x1b6));}export async function resolveCloudProfileSession(_0x37c830,_0x596ffb={}){const _0x526c8d=_0x497ea4,_0xa6b18e={'jyJhw':function(_0xe0b77b,_0x47e555,_0x36908d,_0x3d5b59,_0x420735,_0x57a508){return _0xe0b77b(_0x47e555,_0x36908d,_0x3d5b59,_0x420735,_0x57a508);},'ZROpC':function(_0x52b937,_0x2f82ce,_0x12f08e){return _0x52b937(_0x2f82ce,_0x12f08e);},'shfFK':function(_0x14e53c,_0x4390ae,_0x334c71,_0x84db87,_0x4949df,_0x45b135,_0x5c3abb,_0x1da124){return _0x14e53c(_0x4390ae,_0x334c71,_0x84db87,_0x4949df,_0x45b135,_0x5c3abb,_0x1da124);},'SsJsq':function(_0x329af5,_0x341a2a,_0x4ad216,_0x2f9621,_0x59cf03){return _0x329af5(_0x341a2a,_0x4ad216,_0x2f9621,_0x59cf03);},'GXliM':function(_0x43cc51,_0x524b4a,_0x2a7753){return _0x43cc51(_0x524b4a,_0x2a7753);},'gJSZv':function(_0x2ca79b,_0x2159b7){return _0x2ca79b(_0x2159b7);},'QLaSy':function(_0x1dc120,_0x9fabb0){return _0x1dc120(_0x9fabb0);},'QgvbA':function(_0x415054,_0x443a74){return _0x415054||_0x443a74;},'JiypU':'not_configured','fdKTw':function(_0x28a273,_0x57a82e){return _0x28a273===_0x57a82e;},'nKQur':_0x526c8d(0x1ca),'sqtsk':'\x20\x20Login\x20successful.\x20Session\x20cached.','aebxx':'\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','JxwtI':_0x526c8d(0x1bc)},_0x5e76fd=_0x37c830['settings']??{},_0x4e5651=await fetchAuthConfig(),_0x5538af=_0x4e5651?resolveAuthEnvironmentLocally(_0x4e5651,_0x37c830[_0x526c8d(0x1c4)]):null,_0x5bbe1f=_0x5538af?.['domains'],_0x13df7f=_0x5e76fd['setupHeaders'],_0x56ea55=_0x13df7f??_0x5538af?.[_0x526c8d(0x1bf)],_0x17c2a2=_0x596ffb['effectiveBaseUrl']??_0x5e76fd['baseUrl']??(_0x5bbe1f&&_0x5bbe1f[_0x526c8d(0x1dd)]>0x0?_0x5bbe1f[0x0]:''),_0x5020e0={'invalidateOn':_0x5538af?.['invalidateOn'],'userAgent':_0x5538af?.[_0x526c8d(0x1a7)]?.[_0x526c8d(0x1a3)]??_0x5e76fd['userAgent']},_0x5d92a9=await _0xa6b18e['jyJhw'](checkLocalCache,_0x37c830['name'],_0x37c830[_0x526c8d(0x1e5)],_0x17c2a2,_0x56ea55,_0x5020e0);if(_0x5d92a9){if(_0x17c2a2){const _0x41ce79=await isCachedSessionLive(_0x5d92a9[_0x526c8d(0x1fb)],_0x17c2a2,{'sessionCheckPath':_0x5538af?.['sessionCheckPath'],'setupHeaders':_0x56ea55},{'launchBrowser':launchRealBrowser});if(_0x41ce79)return console[_0x526c8d(0x1f0)](_0x526c8d(0x1d3)+_0x37c830[_0x526c8d(0x202)]+'\x22'),{'authPath':_0x5d92a9[_0x526c8d(0x1fb)],'settings':_0x5e76fd,'resolvedEnv':_0x5538af};console['log'](_0x526c8d(0x1b7)+_0x37c830['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),_0xa6b18e['ZROpC'](emitSessionValidationHint,_0x17c2a2,_0x5538af);}else return{'authPath':_0x5d92a9[_0x526c8d(0x1fb)],'settings':_0x5e76fd,'resolvedEnv':_0x5538af};}if(_0x37c830[_0x526c8d(0x1cf)]){const _0x28d99f=await _0xa6b18e[_0x526c8d(0x1ab)](writeSessionToLocalCache,_0x37c830['name'],_0x37c830[_0x526c8d(0x1e5)],_0x17c2a2,_0x56ea55,_0x37c830['sessionState'],_0x5bbe1f,_0x5020e0);if(_0x17c2a2){const _0x62d852=await _0xa6b18e['SsJsq'](isCachedSessionLive,_0x28d99f,_0x17c2a2,{'sessionCheckPath':_0x5538af?.['sessionCheckPath'],'setupHeaders':_0x56ea55},{'launchBrowser':launchRealBrowser});if(_0x62d852)return console['log'](_0x526c8d(0x1c2)+_0x37c830[_0x526c8d(0x202)]+_0x526c8d(0x209)),{'authPath':_0x28d99f,'settings':_0x5e76fd,'resolvedEnv':_0x5538af};console['log'](_0x526c8d(0x1f7)+_0x37c830['name']+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0xa6b18e[_0x526c8d(0x1f3)](emitSessionValidationHint,_0x17c2a2,_0x5538af);}else return{'authPath':_0x28d99f,'settings':_0x5e76fd,'resolvedEnv':_0x5538af};}console['log'](_0x526c8d(0x1e9)+_0x37c830['name']+_0x526c8d(0x210));const _0x18775e=_0xa6b18e['gJSZv'](Boolean,process['env'][_0x526c8d(0x1b1)])&&Boolean(process[_0x526c8d(0x20f)][_0x526c8d(0x207)]),_0x41072c=_0xa6b18e['QLaSy'](Boolean,_0x37c830[_0x526c8d(0x1a5)]);if(_0xa6b18e[_0x526c8d(0x1fd)](_0x18775e,_0x41072c))try{const _0x317c06=await _0xa6b18e[_0x526c8d(0x1e3)](serverSideLogin,_0x37c830['name']);if(_0x317c06[_0x526c8d(0x1d7)]===_0xa6b18e['JiypU'])console[_0x526c8d(0x1f0)](_0x526c8d(0x20d));else{if(_0xa6b18e[_0x526c8d(0x1b4)](_0x317c06[_0x526c8d(0x1d7)],_0xa6b18e['nKQur'])&&_0x317c06[_0x526c8d(0x215)]){console['log'](_0xa6b18e['sqtsk']);const _0x51ac90=await writeSessionToLocalCache(_0x37c830[_0x526c8d(0x202)],_0x37c830[_0x526c8d(0x1e5)],_0x17c2a2,_0x56ea55,_0x317c06[_0x526c8d(0x215)],_0x5bbe1f,_0x5020e0);return _0x18775e&&!_0x41072c&&await promptSaveCredentials(_0x37c830['name']),{'authPath':_0x51ac90,'settings':_0x5e76fd,'resolvedEnv':_0x5538af};}else _0x317c06['test_output']&&(console['log'](_0xa6b18e['aebxx']),console['log'](_0x317c06[_0x526c8d(0x1d6)])),console['log'](_0xa6b18e['JxwtI']);}}catch(_0x48649a){console[_0x526c8d(0x1f0)]('\x20\x20Server-side\x20login\x20error:\x20'+(_0x48649a instanceof Error?_0x48649a[_0x526c8d(0x1c6)]:String(_0x48649a))),console[_0x526c8d(0x1f0)](_0xa6b18e['JxwtI']);}const {sessionState:_0xf5ab54}=await manualBrowserLogin(_0x37c830,_0x5538af),_0x1632ff=await writeSessionToLocalCache(_0x37c830['name'],_0x37c830['organizationId'],_0x17c2a2,_0x56ea55,_0xf5ab54,_0x5bbe1f,_0x5020e0);return{'authPath':_0x1632ff,'settings':_0x5e76fd,'resolvedEnv':_0x5538af};}
|
|
1
|
+
const _0x210f40=_0xd99f;(function(_0x93cad9,_0x3fd774){const _0x2d55d4=_0xd99f,_0x251423=_0x93cad9();while(!![]){try{const _0xc7db00=parseInt(_0x2d55d4(0xe0))/0x1+-parseInt(_0x2d55d4(0xef))/0x2+parseInt(_0x2d55d4(0x103))/0x3+-parseInt(_0x2d55d4(0xe5))/0x4*(parseInt(_0x2d55d4(0xf9))/0x5)+-parseInt(_0x2d55d4(0x15e))/0x6+-parseInt(_0x2d55d4(0x157))/0x7*(-parseInt(_0x2d55d4(0xf0))/0x8)+parseInt(_0x2d55d4(0xea))/0x9;if(_0xc7db00===_0x3fd774)break;else _0x251423['push'](_0x251423['shift']());}catch(_0x2e732a){_0x251423['push'](_0x251423['shift']());}}}(_0x539c,0x6acf9));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x572fab 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 _0x542a2d=_0xd99f,_0x37c6d2={'YJTmR':_0x542a2d(0x109)},_0x527854=await getToken();if(!_0x527854)throw new Error(_0x37c6d2['YJTmR']);return _0x527854;}async function apiRequest(_0x2dcb2a,_0x5cdf7a={}){const _0x5deb07=_0xd99f,_0x4324ab={'tZYOv':function(_0x43fd19){return _0x43fd19();},'acbso':function(_0x28ffb5,_0x20837b){return _0x28ffb5===_0x20837b;},'YmfCJ':'string','SDULT':function(_0x3b4252,_0x17a22c){return _0x3b4252===_0x17a22c;}},_0x4fd596=await _0x4324ab[_0x5deb07(0x141)](requireToken),_0x26add1=getApiBaseUrl(),_0x28d1ac=await fetch(''+_0x26add1+_0x2dcb2a,{..._0x5cdf7a,'headers':{'Authorization':'Bearer\x20'+_0x4fd596,'Content-Type':'application/json',..._0x5cdf7a['headers']??{}}});if(!_0x28d1ac['ok']){let _0x574046='',_0x1314c3;try{const _0x4563a3=await _0x28d1ac[_0x5deb07(0x162)]();_0x574046=(_0x4324ab[_0x5deb07(0x10b)](typeof _0x4563a3['error'],_0x4324ab['YmfCJ'])?_0x4563a3[_0x5deb07(0xd9)]:undefined)??JSON[_0x5deb07(0x149)](_0x4563a3);if(_0x4324ab[_0x5deb07(0xf5)](typeof _0x4563a3[_0x5deb07(0x11d)],_0x4324ab[_0x5deb07(0x102)]))_0x1314c3=_0x4563a3['code'];}catch{_0x574046=_0x28d1ac['statusText'];}throw new ApiError('API\x20request\x20'+_0x2dcb2a+'\x20failed\x20('+_0x28d1ac['status']+'):\x20'+_0x574046,_0x28d1ac['status'],_0x574046,_0x1314c3);}if(_0x28d1ac[_0x5deb07(0x117)]===0xcc)return undefined;return _0x28d1ac['json']();}export class ApiError extends Error{['status'];[_0x210f40(0x11c)];[_0x210f40(0x11d)];constructor(_0x3d3fb1,_0x5186c1,_0x383947,_0x28c3e4){const _0x56f5e5=_0x210f40,_0x19391a={'zWVop':_0x56f5e5(0x144)};super(_0x3d3fb1),this['status']=_0x5186c1,this['detail']=_0x383947,this[_0x56f5e5(0x11d)]=_0x28c3e4,this['name']=_0x19391a['zWVop'];}}export async function fetchCloudProfile(_0x2f5a19){const _0x57ec6e={'uohTS':function(_0x23fd3b,_0x529078){return _0x23fd3b(_0x529078);},'VDKfM':function(_0x5be85c,_0x17d4e9){return _0x5be85c instanceof _0x17d4e9;}};try{return await _0x57ec6e['uohTS'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x2f5a19));}catch(_0x480e13){if(_0x57ec6e['VDKfM'](_0x480e13,ApiError)&&_0x480e13['status']===0x194)return null;throw _0x480e13;}}export async function listCloudProfiles(){const _0x2bcc24=_0x210f40,_0x2c8d99={'SEjMU':_0x2bcc24(0x15f)},_0x33513d=await apiRequest(_0x2c8d99['SEjMU']);return _0x33513d[_0x2bcc24(0x14b)];}function _0x539c(){const _0x442a68=['storageState','mQJfB','RANGER_TEST_PASSWORD','hHJyU','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','goto','wWQXK','password','env','sessionId','lXHdD','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','mvLxs','message','nxLFX','name','username','qWAsQ','gLdWw','OHgsZ','effectiveBaseUrl','toISOString','sessionState','cRbEc','isArray','cwpJJ','\x20\x20Server-side\x20login\x20error:\x20','tZYOv','\x22\x20failed\x20validation\x20—\x20refreshing...','FhFlJ','ApiError','NPyVJ','test_output','close','RANGER_TEST_USERNAME','stringify','GqZQT','profiles','/api/v1/profiles/','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','Browser\x20login\x20timed\x20out\x20after\x20','/api/v1/tunnel/sessions/','domains','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','cli:manual-login','newContext','usLLd','join','storageStatePath','290570ObpBaT','JAvGh','sessionCheckPath','RhHoU','log','auth_config','VKzMB','956274oDoWja','/api/v1/profiles','setupHeaders','\x20\x20Cached\x20session\x20for\x20\x22','json','length','Ttbva','error','/api/v1/profiles/auth-config','loginInstructions','not_configured','settings','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','zdQUv','345580LbUtlr','environments','force','mORSB','syuQC','248pRKxcP','cookies','tunnel','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','utf-8','949590TXmelx','Cloud\x20profile\x20\x22','IvrBD','catch','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','45008TYNCeH','32igBFBj','\x22\x20for\x20','baseUrl','confirm','nPIxZ','SDULT','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','\x20\x20Created\x20cloud\x20profile\x20\x22','38755hmlsav','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','POST','some','QLtls','pwEndpoint','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','yNGRU','YmfCJ','1448436laCJZj','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','keys','extraHTTPHeaders','PPSZO','session_state','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','you\x27re\x20now\x20at\x20\x22','acbso','\x22;\x20proceeding\x20with\x20loginInstructions.','\x20\x20Cloud\x20session\x20for\x20\x22','dUGgN','organizationId','wsEndpoint','origin','pBmkC','biNrQ','invalidateOn','eNJNj','\x20\x20No\x20live\x20session\x20for\x20\x22','status','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','tUuxf','\x22\x20without\x20local-target\x20validation','targetUrl','detail','code','environmentKey','newPage','/api/v1/tunnel/sessions','\x20\x20Login\x20successful.\x20Session\x20cached.','string','DELETE','/session','\x22\x20not\x20found.'];_0x539c=function(){return _0x442a68;};return _0x539c();}export async function deleteCloudProfile(_0x4f6a94){const _0x4891aa=_0x210f40,_0x539ebe={'NIgAP':function(_0x4c305c,_0x199918,_0x20e96f){return _0x4c305c(_0x199918,_0x20e96f);},'iOQGj':function(_0x126d08,_0x34320b){return _0x126d08 instanceof _0x34320b;}};try{await _0x539ebe['NIgAP'](apiRequest,_0x4891aa(0x14c)+encodeURIComponent(_0x4f6a94),{'method':_0x4891aa(0x123)});}catch(_0x23d67f){if(_0x539ebe['iOQGj'](_0x23d67f,ApiError)&&_0x23d67f['status']===0x194)throw new Error(_0x4891aa(0xeb)+_0x4f6a94+_0x4891aa(0x125));throw _0x23d67f;}}export async function createCloudProfile(_0x5e51b1,_0x32d961,_0x5810d7={}){const _0x336bb2=_0x210f40,_0x1055cf={'lXHdD':_0x336bb2(0xfc)},_0xa1421a={'name':_0x5e51b1};if(_0x32d961)_0xa1421a['environment_key']=_0x32d961;_0x5810d7[_0x336bb2(0xdd)]&&Object[_0x336bb2(0x105)](_0x5810d7[_0x336bb2(0xdd)])['length']>0x0&&(_0xa1421a['settings']=_0x5810d7['settings']);if(_0x5810d7[_0x336bb2(0x136)])_0xa1421a['username']=_0x5810d7['username'];if(_0x5810d7['password'])_0xa1421a['password']=_0x5810d7[_0x336bb2(0x12d)];return await apiRequest('/api/v1/profiles',{'method':_0x1055cf[_0x336bb2(0x130)],'body':JSON['stringify'](_0xa1421a)});}export async function uploadCloudProfileSession(_0x586b82,_0x27b35c){const _0xc339e9=_0x210f40,_0x5ea13f={'WBoVO':function(_0x5b355a,_0x129986){return _0x5b355a(_0x129986);},'wWQXK':_0xc339e9(0xfc)};return await apiRequest(_0xc339e9(0x14c)+_0x5ea13f['WBoVO'](encodeURIComponent,_0x586b82)+'/session',{'method':_0x5ea13f[_0xc339e9(0x12c)],'body':JSON[_0xc339e9(0x149)]({'session_state':_0x27b35c})});}export async function saveCloudProfileCredentials(_0x13b0b7,_0x173f23,_0x408e80){const _0x43ae3f=_0x210f40,_0xd4bc4f={'QLtls':function(_0x338188,_0x9b1155){return _0x338188(_0x9b1155);},'gLdWw':'PUT'};await apiRequest('/api/v1/profiles/'+_0xd4bc4f[_0x43ae3f(0xfe)](encodeURIComponent,_0x13b0b7),{'method':_0xd4bc4f[_0x43ae3f(0x138)],'body':JSON[_0x43ae3f(0x149)]({'username':_0x173f23,'password':_0x408e80})});}export async function fetchAuthConfig(){const _0x2d48d0=_0x210f40,_0x1bdfed={'lQZiY':_0x2d48d0(0xda),'FhFlJ':function(_0x20621b,_0x3ec406){return _0x20621b instanceof _0x3ec406;}};try{const _0x4fdfed=await apiRequest(_0x1bdfed['lQZiY']);return _0x4fdfed[_0x2d48d0(0x15c)];}catch(_0x2c51a3){return _0x1bdfed[_0x2d48d0(0x143)](_0x2c51a3,ApiError)&&_0x2c51a3[_0x2d48d0(0x117)]!==0x194&&console[_0x2d48d0(0xd9)]('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x2c51a3['message']),null;}}async function createTunnelSession(_0x3a6022){const _0x603975=_0x210f40,_0x46d3c9={'uLqeV':function(_0x2713ab,_0x5239e4,_0x215cc6){return _0x2713ab(_0x5239e4,_0x215cc6);},'usLLd':'POST'};return await _0x46d3c9['uLqeV'](apiRequest,_0x603975(0x120),{'method':_0x46d3c9[_0x603975(0x154)],'body':JSON[_0x603975(0x149)]({'targetUrl':_0x3a6022,'mode':'agent'})});}async function deleteTunnelSession(_0x46e63e){const _0x49148d=_0x210f40;await apiRequest(_0x49148d(0x14f)+_0x46e63e,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x7dd61e){const _0x3e9c45=_0x210f40,_0x50c85d={'NPyVJ':function(_0x36243a,_0x1c86e3){return _0x36243a===_0x1c86e3;}};if(!_0x7dd61e)return null;if(_0x7dd61e['defaultEnvironmentKey'])return _0x7dd61e['defaultEnvironmentKey'];const _0xdf3b5b=Object['keys'](_0x7dd61e[_0x3e9c45(0xe1)]??{});if(_0x50c85d[_0x3e9c45(0x145)](_0xdf3b5b[_0x3e9c45(0x163)],0x1))return _0xdf3b5b[0x0];if(_0xdf3b5b[_0x3e9c45(0x163)]===0x0)return null;throw new Error(_0x3e9c45(0x12a)+_0xdf3b5b[_0x3e9c45(0x155)](',\x20')+').\x20'+'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(_0x238e67=process[_0x210f40(0x12e)]){const _0xc80afd=_0x210f40,_0x2b6cd7={'mvLxs':function(_0x4881da,_0x48318){return _0x4881da(_0x48318);},'hHJyU':function(_0x1b6bac,_0x5b5250){return _0x1b6bac(_0x5b5250);},'ANEPO':function(_0x2e9d30,_0x35470f,_0x2a62aa,_0x32ad6c){return _0x2e9d30(_0x35470f,_0x2a62aa,_0x32ad6c);},'cwpJJ':function(_0x5bdc84,_0x15e661){return _0x5bdc84??_0x15e661;}},_0x47f2f8=_0x238e67[_0xc80afd(0x148)];if(!_0x47f2f8)return null;const _0x132f9d=await _0x2b6cd7[_0xc80afd(0x132)](fetchCloudProfile,_0x47f2f8);if(_0x132f9d)return{'name':_0x132f9d[_0xc80afd(0x135)],'profile':_0x132f9d};const _0x4c1dcb=await fetchAuthConfig(),_0x4e5b5e=_0x2b6cd7[_0xc80afd(0x129)](pickAdHocEnvKey,_0x4c1dcb),_0x490349=_0x238e67['RANGER_TEST_PASSWORD'],_0x387514=await _0x2b6cd7['ANEPO'](createCloudProfile,_0x47f2f8,_0x2b6cd7[_0xc80afd(0x13f)](_0x4e5b5e,undefined),{'username':_0x47f2f8,'password':_0x490349});return console['log'](_0xc80afd(0xf8)+_0x387514[_0xc80afd(0x135)]+_0xc80afd(0xf1)+_0x47f2f8),{'name':_0x387514[_0xc80afd(0x135)],'profile':_0x387514};}export async function writeSessionToLocalCache(_0x17d1c0,_0x524a56,_0x47a8bd,_0x4685ea,_0x18e673,_0x1fae51,_0x2430c8){const _0x92bed=_0x210f40,_0x317997={'IvrBD':function(_0xd73997,_0x594196,_0x1de9fd){return _0xd73997(_0x594196,_0x1de9fd);},'KtrXu':function(_0x2385c6,_0x287146){return _0x2385c6(_0x287146);},'Rgwet':function(_0xbbe8e4,_0x458e8a){return _0xbbe8e4>_0x458e8a;},'hTItA':function(_0x58447f,_0x360ed6,_0x17af23){return _0x58447f(_0x360ed6,_0x17af23);}},_0x1ac504=sessionCacheHash({'orgId':_0x524a56,'profileName':_0x17d1c0,'effectiveBaseUrl':_0x47a8bd,'setupHeaders':_0x4685ea,'invalidateOn':_0x2430c8?.['invalidateOn'],'userAgent':_0x2430c8?.['userAgent'],'clientIp':_0x2430c8?.['clientIp']}),_0x3620d6=getSessionCachePath(_0x1ac504,_0x17d1c0),_0x4ad8f2=_0x317997[_0x92bed(0xec)](join,getRangerHomeDir(),'auth');!_0x317997['KtrXu'](existsSync,_0x4ad8f2)&&await mkdir(_0x4ad8f2,{'recursive':!![]});const _0x384a1a={..._0x18e673};_0x1fae51&&_0x317997['Rgwet'](_0x1fae51[_0x92bed(0x163)],0x0)&&Array[_0x92bed(0x13e)](_0x384a1a['cookies'])&&(_0x384a1a[_0x92bed(0xe6)]=_0x317997['IvrBD'](duplicateCookiesForDomains,_0x384a1a[_0x92bed(0xe6)],_0x1fae51));const _0x122c2e={'cached_at':new Date()[_0x92bed(0x13b)](),'session_state':_0x384a1a};await _0x317997[_0x92bed(0xec)](writeFile,_0x3620d6,JSON[_0x92bed(0x149)](_0x122c2e,null,0x2));const _0x3bd742=getStorageStatePath(_0x3620d6);return await _0x317997['hTItA'](writeFile,_0x3bd742,JSON['stringify'](_0x384a1a,null,0x2)),_0x3bd742;}export async function checkLocalCache(_0x51d0ac,_0x742ffe,_0x146c01,_0x6d42e8,_0x3fc31c){const _0x10cc9d=_0x210f40,_0x386dd1={'vluBE':function(_0xbc5fbc,_0x186905){return _0xbc5fbc(_0x186905);}},_0x361618=_0x386dd1['vluBE'](sessionCacheHash,{'orgId':_0x742ffe,'profileName':_0x51d0ac,'effectiveBaseUrl':_0x146c01,'setupHeaders':_0x6d42e8,'invalidateOn':_0x3fc31c?.['invalidateOn'],'userAgent':_0x3fc31c?.['userAgent'],'clientIp':_0x3fc31c?.['clientIp']}),_0x5dd9cd=getSessionCachePath(_0x361618,_0x51d0ac),_0x328a26=_0x386dd1['vluBE'](getStorageStatePath,_0x5dd9cd);if(!existsSync(_0x5dd9cd)||!existsSync(_0x328a26))return null;try{const _0x375fcd=await readFile(_0x5dd9cd,_0x10cc9d(0xe9));return JSON['parse'](_0x375fcd),{'storageStatePath':_0x328a26};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function _0xd99f(_0x3268bb,_0x151461){_0x3268bb=_0x3268bb-0xd8;const _0x539cce=_0x539c();let _0xd99f99=_0x539cce[_0x3268bb];return _0xd99f99;}function emitSessionValidationHint(_0x180fd1,_0x4a02b4){const _0x195b58=_0x210f40,_0x46651a={'RctYH':function(_0x2f57f9,_0x56cd0f){return _0x2f57f9===_0x56cd0f;},'eNJNj':function(_0x3d1c0e,_0x51561d){return _0x3d1c0e+_0x51561d;},'AylXh':function(_0x4753a6,_0x1370e7){return _0x4753a6+_0x1370e7;}};if(!_0x4a02b4||!_0x4a02b4['domains']?.[_0x195b58(0x163)])return;let _0x19c98a;try{_0x19c98a=new URL(_0x180fd1);}catch{return;}const _0x5e7f22=[];for(const _0x44186a of _0x4a02b4['domains']){try{_0x5e7f22['push']({'raw':_0x44186a,'url':new URL(_0x44186a)});}catch{}}if(_0x46651a['RctYH'](_0x5e7f22[_0x195b58(0x163)],0x0))return;if(_0x5e7f22[_0x195b58(0xfd)](_0x3424ba=>_0x3424ba['url']['origin']===_0x19c98a[_0x195b58(0x111)]))return;const _0x303ade=_0x5e7f22['map'](_0x1c2d00=>'\x22'+_0x1c2d00['raw']+'\x22')[_0x195b58(0x155)](',\x20');console['log'](_0x46651a[_0x195b58(0x115)](_0x46651a['AylXh']('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x303ade+';\x20',_0x195b58(0x10a)+_0x180fd1+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20'),_0x195b58(0x100)));}export async function serverSideLogin(_0x31da03,_0x46e02e){const _0x2f76c8=_0x210f40,_0x551b2d={'tRCGB':_0x2f76c8(0xdc)},_0x4c23e4=process[_0x2f76c8(0x12e)]['RANGER_TEST_USERNAME'],_0x5a3deb=process['env']['RANGER_TEST_PASSWORD'],_0x32d002={};if(_0x4c23e4)_0x32d002[_0x2f76c8(0x136)]=_0x4c23e4;if(_0x5a3deb)_0x32d002['password']=_0x5a3deb;if(_0x46e02e?.[_0x2f76c8(0xe2)])_0x32d002[_0x2f76c8(0xe2)]=!![];if(_0x46e02e?.[_0x2f76c8(0x11b)])_0x32d002['target_url']=_0x46e02e[_0x2f76c8(0x11b)];_0x46e02e?.[_0x2f76c8(0xe7)]&&(_0x32d002['tunnel_session_id']=_0x46e02e[_0x2f76c8(0xe7)][_0x2f76c8(0x12f)],_0x32d002['pw_endpoint']=_0x46e02e['tunnel'][_0x2f76c8(0xff)]);try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x31da03)+'/login',{'method':'POST','body':JSON[_0x2f76c8(0x149)](_0x32d002)});}catch(_0x1b3856){if(_0x1b3856 instanceof ApiError&&_0x1b3856['status']===0x190&&_0x1b3856[_0x2f76c8(0x11d)]===_0x2f76c8(0xdc))return{'status':_0x551b2d['tRCGB'],'error':_0x1b3856['detail']};throw _0x1b3856;}}async function serverSideLoginWithOptionalTunnel(_0x173d81,_0x51433a){const _0x43a4a7=_0x210f40,_0x112dbf={'cRbEc':function(_0x338d5a,_0x1eb34a){return _0x338d5a(_0x1eb34a);},'pBmkC':function(_0x28f873){return _0x28f873();}};if(!needsTunnel(_0x51433a))return await serverSideLogin(_0x173d81);let _0x3be77a=null,_0x44076d=null,_0x4294be=null;try{_0x3be77a=await _0x112dbf[_0x43a4a7(0x13d)](launchBrowserServer,{'headless':!![]}),_0x44076d=await createTunnelSession(_0x51433a);const _0x29da4d=await _0x112dbf[_0x43a4a7(0x112)](requireToken);return _0x4294be=await _0x112dbf['cRbEc'](createTunnelBridge,{'localWsUrl':_0x3be77a[_0x43a4a7(0x110)],'tunnelServerUrl':_0x44076d['tunnelUrl'],'sessionId':_0x44076d['sessionId'],'apiKey':_0x29da4d}),await serverSideLogin(_0x173d81,{'targetUrl':_0x51433a,'tunnel':{'sessionId':_0x44076d['sessionId'],'pwEndpoint':_0x44076d[_0x43a4a7(0xff)]}});}finally{_0x4294be?.['close'](),_0x3be77a&&await _0x3be77a['close']()[_0x43a4a7(0xed)](()=>{}),_0x44076d&&await _0x112dbf[_0x43a4a7(0x13d)](deleteTunnelSession,_0x44076d['sessionId'])['catch'](()=>{});}}export async function manualBrowserLogin(_0x7cdb7,_0x519602){const _0x33712b=_0x210f40,_0x2f1faa={'wvRyK':function(_0x46df67,_0x1f9b29,_0x3cdf05){return _0x46df67(_0x1f9b29,_0x3cdf05);},'gveFe':_0x33712b(0x147),'qWAsQ':function(_0x1e22c7){return _0x1e22c7();},'syuQC':function(_0x28db6a,_0x2d0572){return _0x28db6a+_0x2d0572;},'exmGV':_0x33712b(0xde),'pdnVv':_0x33712b(0x151),'sdOay':function(_0x365038,_0x49f80b){return _0x365038>_0x49f80b;},'tUuxf':function(_0xecc5b4,_0x33c39b){return _0xecc5b4&&_0x33c39b;},'mAeiP':_0x33712b(0xf7),'RiHoF':_0x33712b(0x152)};if(!_0x2f1faa[_0x33712b(0x137)](isInteractive))throw new Error(_0x2f1faa[_0x33712b(0xe4)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x7cdb7['name']+'\x22.\x0a',_0x2f1faa['exmGV'])+_0x2f1faa['pdnVv']);const _0x814bfd=_0x519602&&_0x2f1faa['sdOay'](_0x519602[_0x33712b(0x150)][_0x33712b(0x163)],0x0)?_0x519602[_0x33712b(0x150)][0x0]:'about:blank';console[_0x33712b(0x15b)](_0x33712b(0x131)),console[_0x33712b(0x15b)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x5aa1bc=>setTimeout(_0x5aa1bc,0x7d0));const _0x4974f1=await chromium['launch']({'headless':![]});let _0x366237=null;try{const _0x54d532={'ignoreHTTPSErrors':!![]};_0x519602?.['setupHeaders']&&(_0x54d532[_0x33712b(0x106)]=_0x519602['setupHeaders']);const _0x21d09e=await _0x4974f1[_0x33712b(0x153)](_0x54d532);await addProfileSetupBanner(_0x21d09e);const _0x3c19a0=await _0x21d09e[_0x33712b(0x11f)]();await _0x3c19a0[_0x33712b(0x12b)](_0x814bfd);let _0x576542=![];await new Promise(_0x51f84f=>{const _0x43e387={'zdyCm':function(_0x945a71){return _0x945a71();}},_0x244fea=_0x2f1faa['wvRyK'](setTimeout,()=>{const _0x1a42ad=_0xd99f;_0x576542=!![],console['error'](_0x1a42ad(0x14e)+MANUAL_LOGIN_TIMEOUT_MS/0xea60+_0x1a42ad(0xf6)),_0x43e387['zdyCm'](_0x51f84f);},MANUAL_LOGIN_TIMEOUT_MS);_0x3c19a0['on'](_0x2f1faa['gveFe'],async()=>{const _0x5cf315=_0xd99f;clearTimeout(_0x244fea);try{const _0x31ffab=await _0x21d09e[_0x5cf315(0x126)]();_0x366237=_0x31ffab;}catch{}_0x51f84f();});});if(_0x2f1faa[_0x33712b(0x119)](_0x576542,!_0x366237))throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0x4974f1[_0x33712b(0x147)]()['catch'](()=>{});}if(!_0x366237)throw new Error(_0x2f1faa['mAeiP']);return await apiRequest(_0x33712b(0x14c)+encodeURIComponent(_0x7cdb7['name'])+_0x33712b(0x124),{'method':_0x33712b(0xfc),'body':JSON[_0x33712b(0x149)]({'session_state':_0x366237,'updated_by':_0x2f1faa['RiHoF']})}),{'sessionState':_0x366237};}export async function promptSaveCredentials(_0x2a2f3a){const _0x1e070e=_0x210f40,_0x25e709={'nxLFX':function(_0x39ba50,_0x47df09){return _0x39ba50||_0x47df09;},'mQJfB':function(_0x4efa08){return _0x4efa08();},'VKzMB':_0x1e070e(0xf3),'PPSZO':_0x1e070e(0xfa),'nPewu':function(_0x4d8f0b,_0x3f7821){return _0x4d8f0b(_0x3f7821);},'yNGRU':'\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.'},_0x27d788=process[_0x1e070e(0x12e)][_0x1e070e(0x148)],_0x52ba93=process['env']['RANGER_TEST_PASSWORD'];if(_0x25e709[_0x1e070e(0x134)](!_0x27d788,!_0x52ba93))return;if(!_0x25e709[_0x1e070e(0x127)](isInteractive))return;const {save:_0x57af76}=await _0x572fab['prompt']([{'type':_0x25e709[_0x1e070e(0x15d)],'name':'save','message':_0x25e709[_0x1e070e(0x107)],'default':![]}]);if(!_0x57af76)return;await apiRequest('/api/v1/profiles/'+_0x25e709['nPewu'](encodeURIComponent,_0x2a2f3a),{'method':'PUT','body':JSON['stringify']({'username':_0x27d788,'password':_0x52ba93})}),console[_0x1e070e(0x15b)](_0x25e709[_0x1e070e(0x101)]);}export async function resolveCloudProfileSession(_0x36ebf1,_0x43c607={}){const _0x589f44=_0x210f40,_0x4cda1b={'RhHoU':function(_0x184852,_0x164b12,_0x4a258a){return _0x184852(_0x164b12,_0x4a258a);},'SONRZ':_0x589f44(0x122),'biNrQ':function(_0x57bde8,_0x25161c){return _0x57bde8===_0x25161c;},'mORSB':function(_0x3da114,_0x31035a){return _0x3da114||_0x31035a;},'Ttbva':function(_0x1a10f6,_0x493b21){return _0x1a10f6(_0x493b21);},'GqZQT':function(_0x3d795a,_0xccb6cf){return _0x3d795a&&_0xccb6cf;},'NOlBA':function(_0x1aca7e,_0x50a85f,_0x449022,_0x2e380a,_0x9a120e){return _0x1aca7e(_0x50a85f,_0x449022,_0x2e380a,_0x9a120e);},'dUGgN':function(_0x4fcf74,_0xcb94de,_0x5064ea,_0x2266b3,_0xd80dcc,_0x314e2d,_0x4e383c,_0x564a6f){return _0x4fcf74(_0xcb94de,_0x5064ea,_0x2266b3,_0xd80dcc,_0x314e2d,_0x4e383c,_0x564a6f);},'JAvGh':function(_0x297940,_0x4cb44c){return _0x297940&&_0x4cb44c;},'FFmZJ':function(_0x51e17d,_0x4958e9,_0x43ef1e){return _0x51e17d(_0x4958e9,_0x43ef1e);},'zdQUv':function(_0x995f94,_0x526bdf){return _0x995f94(_0x526bdf);},'OHgsZ':function(_0x4de17e,_0x17fabd){return _0x4de17e||_0x17fabd;},'wMCGB':_0x589f44(0xdc),'cVXut':_0x589f44(0x121),'mHkGV':function(_0x25bb9e,_0x572c5f,_0x317690,_0x4f5f02,_0x4872fa,_0x3058b2,_0x37227e,_0x52cb09){return _0x25bb9e(_0x572c5f,_0x317690,_0x4f5f02,_0x4872fa,_0x3058b2,_0x37227e,_0x52cb09);},'EIsSh':function(_0x43ea03,_0x54be28){return _0x43ea03(_0x54be28);},'nPIxZ':_0x589f44(0x14d)},_0x56abb9=_0x36ebf1[_0x589f44(0xdd)]??{},_0x13c900=await fetchAuthConfig(),_0x597d5e=_0x13c900?_0x4cda1b[_0x589f44(0x15a)](resolveAuthEnvironmentLocally,_0x13c900,_0x36ebf1[_0x589f44(0x11e)]):null,_0x400e6a=typeof _0x597d5e?.[_0x589f44(0xdb)]===_0x4cda1b['SONRZ']&&_0x597d5e['loginInstructions']['trim']()?_0x597d5e[_0x589f44(0xdb)]:undefined,_0x212cf5=_0x4cda1b[_0x589f44(0x113)](typeof _0x56abb9[_0x589f44(0xdb)],_0x4cda1b['SONRZ'])&&_0x56abb9[_0x589f44(0xdb)]['trim']()?_0x56abb9['loginInstructions']:undefined,_0x40d876=_0x4cda1b[_0x589f44(0xe3)](_0x212cf5,!_0x400e6a)?_0x56abb9:{..._0x56abb9,'loginInstructions':_0x400e6a},_0xf9708e=Boolean(_0x40d876[_0x589f44(0xdb)]?.['trim']()),_0x4ddac4=_0x597d5e?.[_0x589f44(0x150)],_0x48b5cc=_0x56abb9['setupHeaders'],_0x561aa9=_0x48b5cc??_0x597d5e?.[_0x589f44(0x160)],_0x3703b1=_0x43c607[_0x589f44(0x13a)]??_0x56abb9[_0x589f44(0xf2)]??(_0x4ddac4&&_0x4ddac4['length']>0x0?_0x4ddac4[0x0]:''),_0x2161a1=_0x3703b1?_0x4cda1b[_0x589f44(0xd8)](needsTunnel,_0x3703b1):![],_0x276534={'invalidateOn':_0x597d5e?.[_0x589f44(0x114)],'userAgent':_0x597d5e?.['browserOptions']?.['userAgent']??_0x56abb9['userAgent']},_0x230aed=await checkLocalCache(_0x36ebf1['name'],_0x36ebf1[_0x589f44(0x10f)],_0x3703b1,_0x561aa9,_0x276534);if(_0x230aed){if(_0x4cda1b[_0x589f44(0x14a)](_0x3703b1,!_0x2161a1)){const _0x505085=await _0x4cda1b['NOlBA'](isCachedSessionLive,_0x230aed[_0x589f44(0x156)],_0x3703b1,{'sessionCheckPath':_0x597d5e?.['sessionCheckPath'],'setupHeaders':_0x561aa9},{'launchBrowser':launchRealBrowser});if(_0x505085)return console[_0x589f44(0x15b)](_0x589f44(0xee)+_0x36ebf1['name']+'\x22'),{'authPath':_0x230aed[_0x589f44(0x156)],'settings':_0x40d876,'resolvedEnv':_0x597d5e};console['log'](_0x589f44(0x161)+_0x36ebf1[_0x589f44(0x135)]+_0x589f44(0x142)),emitSessionValidationHint(_0x3703b1,_0x597d5e);}else return _0x2161a1&&console[_0x589f44(0x15b)](_0x589f44(0x118)+_0x36ebf1[_0x589f44(0x135)]+'\x22'),{'authPath':_0x230aed[_0x589f44(0x156)],'settings':_0x40d876,'resolvedEnv':_0x597d5e};}if(_0x36ebf1[_0x589f44(0x13c)]){const _0x502678=await _0x4cda1b[_0x589f44(0x10e)](writeSessionToLocalCache,_0x36ebf1[_0x589f44(0x135)],_0x36ebf1[_0x589f44(0x10f)],_0x3703b1,_0x561aa9,_0x36ebf1['sessionState'],_0x4ddac4,_0x276534);if(_0x4cda1b[_0x589f44(0x158)](_0x3703b1,!_0x2161a1)){const _0x396a5f=await isCachedSessionLive(_0x502678,_0x3703b1,{'sessionCheckPath':_0x597d5e?.[_0x589f44(0x159)],'setupHeaders':_0x561aa9},{'launchBrowser':launchRealBrowser});if(_0x396a5f)return console[_0x589f44(0x15b)](_0x589f44(0x104)+_0x36ebf1['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x502678,'settings':_0x40d876,'resolvedEnv':_0x597d5e};console['log'](_0x589f44(0x10d)+_0x36ebf1[_0x589f44(0x135)]+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x4cda1b['FFmZJ'](emitSessionValidationHint,_0x3703b1,_0x597d5e);}else return _0x2161a1&&console['log']('\x20\x20Cloud\x20session\x20copied\x20to\x20local\x20cache\x20for\x20\x22'+_0x36ebf1['name']+_0x589f44(0x11a)),{'authPath':_0x502678,'settings':_0x40d876,'resolvedEnv':_0x597d5e};}if(_0xf9708e)return console[_0x589f44(0x15b)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x36ebf1['name']+_0x589f44(0x10c)),{'authPath':undefined,'settings':_0x40d876,'resolvedEnv':_0x597d5e};console[_0x589f44(0x15b)](_0x589f44(0x116)+_0x36ebf1[_0x589f44(0x135)]+'\x22,\x20attempting\x20login...');const _0x32adc5=_0x4cda1b[_0x589f44(0xd8)](Boolean,process['env'][_0x589f44(0x148)])&&Boolean(process['env'][_0x589f44(0x128)]),_0x1d8e2b=_0x4cda1b['zdQUv'](Boolean,_0x36ebf1[_0x589f44(0x136)]);if(_0x4cda1b[_0x589f44(0x139)](_0x32adc5,_0x1d8e2b))try{const _0x1c4f4b=_0x3703b1?await serverSideLoginWithOptionalTunnel(_0x36ebf1[_0x589f44(0x135)],_0x3703b1):await _0x4cda1b[_0x589f44(0xdf)](serverSideLogin,_0x36ebf1[_0x589f44(0x135)]);if(_0x1c4f4b[_0x589f44(0x117)]===_0x4cda1b['wMCGB'])console[_0x589f44(0x15b)](_0x589f44(0xfb));else{if(_0x1c4f4b['status']==='success'&&_0x1c4f4b[_0x589f44(0x108)]){console[_0x589f44(0x15b)](_0x4cda1b['cVXut']);const _0x5f3a6a=await _0x4cda1b['mHkGV'](writeSessionToLocalCache,_0x36ebf1[_0x589f44(0x135)],_0x36ebf1[_0x589f44(0x10f)],_0x3703b1,_0x561aa9,_0x1c4f4b[_0x589f44(0x108)],_0x4ddac4,_0x276534);return _0x32adc5&&!_0x1d8e2b&&await _0x4cda1b['EIsSh'](promptSaveCredentials,_0x36ebf1['name']),{'authPath':_0x5f3a6a,'settings':_0x40d876,'resolvedEnv':_0x597d5e};}else _0x1c4f4b[_0x589f44(0x146)]&&(console[_0x589f44(0x15b)](_0x4cda1b[_0x589f44(0xf4)]),console['log'](_0x1c4f4b['test_output'])),console[_0x589f44(0x15b)](_0x589f44(0xe8));}}catch(_0x5cca89){console[_0x589f44(0x15b)](_0x589f44(0x140)+(_0x5cca89 instanceof Error?_0x5cca89[_0x589f44(0x133)]:String(_0x5cca89))),console[_0x589f44(0x15b)](_0x589f44(0xe8));}const _0x256f27=_0x597d5e?{..._0x597d5e,'setupHeaders':_0x561aa9}:_0x3703b1?{'key':_0x36ebf1[_0x589f44(0x11e)]??'','domains':[_0x3703b1],'setupHeaders':_0x561aa9}:null,{sessionState:_0x2c8642}=await manualBrowserLogin(_0x36ebf1,_0x256f27),_0x561d42=await writeSessionToLocalCache(_0x36ebf1[_0x589f44(0x135)],_0x36ebf1[_0x589f44(0x10f)],_0x3703b1,_0x561aa9,_0x2c8642,_0x4ddac4,_0x276534);return{'authPath':_0x561d42,'settings':_0x40d876,'resolvedEnv':_0x597d5e};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x487731=_0x4ee2;(function(_0x134683,_0x592118){const _0x4def3c=_0x4ee2,_0x5f4365=_0x134683();while(!![]){try{const _0x5bfb5a=-parseInt(_0x4def3c(0x13e))/0x1*(parseInt(_0x4def3c(0x11d))/0x2)+-parseInt(_0x4def3c(0x133))/0x3+parseInt(_0x4def3c(0x11b))/0x4*(parseInt(_0x4def3c(0x126))/0x5)+-parseInt(_0x4def3c(0x123))/0x6*(-parseInt(_0x4def3c(0x11f))/0x7)+-parseInt(_0x4def3c(0x12a))/0x8+parseInt(_0x4def3c(0x12e))/0x9*(-parseInt(_0x4def3c(0x13f))/0xa)+parseInt(_0x4def3c(0x11e))/0xb;if(_0x5bfb5a===_0x592118)break;else _0x5f4365['push'](_0x5f4365['shift']());}catch(_0x5f2228){_0x5f4365['push'](_0x5f4365['shift']());}}}(_0x9a80,0xecd18));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x39b7d9=process[_0x487731(0x12b)],_0xfd2242={'stdin':process[_0x487731(0x136)],'stdout':process[_0x487731(0x139)]}){const _0x546982=_0x487731,_0x4e8068={'joaTl':function(_0x22f45b,_0x49a7b5){return _0x22f45b(_0x49a7b5);}};if(_0x39b7d9['CI'])return![];return Boolean(_0xfd2242[_0x546982(0x136)][_0x546982(0x129)])&&_0x4e8068['joaTl'](Boolean,_0xfd2242[_0x546982(0x139)][_0x546982(0x129)]);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x55cc6e){const _0x2aab3e=_0x487731,_0x5a602c={'JAeUM':'baseUrl','bvngj':_0x2aab3e(0x118),'JJxnG':function(_0x14b3e4,_0xef68c9){return _0x14b3e4(_0xef68c9);},'rfPTZ':function(_0x205178,_0x1e1a30){return _0x205178!==_0x1e1a30;},'wqYsB':_0x2aab3e(0x116),'PWvww':function(_0x58cce1,_0x257b5c){return _0x58cce1(_0x257b5c);}},_0x3663ff=new Set(_0x55cc6e['invalidateOn']??DEFAULT_INVALIDATE_ON),_0x13edaa={'orgId':_0x55cc6e['orgId'],'profileName':_0x55cc6e[_0x2aab3e(0x137)]};return _0x3663ff[_0x2aab3e(0x113)](_0x5a602c[_0x2aab3e(0x122)])&&(_0x13edaa[_0x2aab3e(0x127)]=_0x55cc6e[_0x2aab3e(0x127)]),_0x3663ff['has'](_0x5a602c['bvngj'])&&(_0x13edaa['setupHeaders']=_0x55cc6e['setupHeaders']?_0x5a602c['JJxnG'](sortObjectKeys,_0x55cc6e[_0x2aab3e(0x118)]):_0x55cc6e['setupHeaders']),_0x3663ff['has'](_0x2aab3e(0x121))&&(_0x13edaa[_0x2aab3e(0x121)]=extractPort(_0x55cc6e['effectiveBaseUrl'])),_0x3663ff['has'](_0x2aab3e(0x12c))&&_0x5a602c['rfPTZ'](_0x55cc6e[_0x2aab3e(0x12c)],undefined)&&(_0x13edaa[_0x2aab3e(0x12c)]=_0x55cc6e[_0x2aab3e(0x12c)]),_0x3663ff[_0x2aab3e(0x113)](_0x5a602c[_0x2aab3e(0x13a)])&&_0x5a602c[_0x2aab3e(0x135)](_0x55cc6e[_0x2aab3e(0x116)],undefined)&&(_0x13edaa[_0x2aab3e(0x116)]=_0x55cc6e[_0x2aab3e(0x116)]),_0x5a602c['PWvww'](createHash,'sha256')['update'](JSON[_0x2aab3e(0x11a)](_0x13edaa))['digest'](_0x2aab3e(0x131))['slice'](0x0,0xc);}function extractPort(_0x34731e){try{return new URL(_0x34731e)['port'];}catch{return'';}}function sortObjectKeys(_0x207c4d){const _0x33be5d=_0x487731,_0x46b07d={};for(const _0x53ea22 of Object[_0x33be5d(0x132)](_0x207c4d)['sort']()){_0x46b07d[_0x53ea22]=_0x207c4d[_0x53ea22];}return _0x46b07d;}export function getSessionCachePath(_0x46daf6,_0x42cb23){const _0x4114db=_0x487731,_0x4ef049={'CYSSR':function(_0x48fa15,_0x47ecb6,_0x89ccaa,_0x59205b){return _0x48fa15(_0x47ecb6,_0x89ccaa,_0x59205b);}};return _0x4ef049[_0x4114db(0x130)](join,getRangerHomeDir(),'auth',_0x46daf6+'-'+_0x42cb23+_0x4114db(0x125));}export function getStorageStatePath(_0x555174){const _0x33adc1=_0x487731;return _0x555174['replace'](/\.json$/,_0x33adc1(0x12d));}export function needsTunnel(_0xc5ed2f){const _0x1f55f0=_0x487731,_0x320089={'cBXgw':'localhost','ZPkzr':function(_0xa4ce9c,_0x43591e){return _0xa4ce9c===_0x43591e;},'nxJup':_0x1f55f0(0x13d),'RrKvC':_0x1f55f0(0x11c)};let _0x1dd86a;try{_0x1dd86a=new URL(_0xc5ed2f)['hostname'];}catch{return![];}if(_0x1dd86a===_0x320089[_0x1f55f0(0x13b)]||_0x320089['ZPkzr'](_0x1dd86a,_0x1f55f0(0x117)))return!![];if(_0x1dd86a['endsWith'](_0x320089[_0x1f55f0(0x119)]))return!![];if(_0x1dd86a['includes'](_0x320089['RrKvC']))return!![];return![];}function _0x9a80(){const _0x7c363f=['1971474DAKpCI','close','rfPTZ','stdin','profileName','toString','stdout','wqYsB','cBXgw','add','.localhost','1dPRQnP','171280qMStwj','has','url','test','clientIp','127.0.0.1','setupHeaders','nxJup','stringify','765972fYWMcw','localhost.','2391202MHTdUE','35805902iNlgsa','217bhEuHc','defaultEnvironmentKey','port','JAeUM','237678FKhlxB','hostname','.json','5wFTunz','effectiveBaseUrl','map','isTTY','8374360YjxDLI','env','userAgent','.storageState.json','423SvvwCi','newPage','CYSSR','hex','keys'];_0x9a80=function(){return _0x7c363f;};return _0x9a80();}function _0x4ee2(_0x162ad6,_0x2967cb){_0x162ad6=_0x162ad6-0x113;const _0x9a80d0=_0x9a80();let _0x4ee2f0=_0x9a80d0[_0x162ad6];return _0x4ee2f0;}export function hostnameOf(_0x1e7be5){const _0x55b26b=_0x487731;return new URL(_0x1e7be5)[_0x55b26b(0x124)];}export function duplicateCookiesForDomains(_0x3f248b,_0x3a218c){const _0x3e042f=_0x487731,_0x268b45=[..._0x3f248b],_0x4e4ede=new Set(_0x3f248b[_0x3e042f(0x128)](_0x5858a0=>_0x5858a0['domain']));for(const _0x25f366 of _0x3a218c){let _0x3515ad;try{_0x3515ad=hostnameOf(_0x25f366);}catch{continue;}if(!_0x3515ad)continue;const _0x3b25d0=_0x3515ad['startsWith']('.')?_0x3515ad:'.'+_0x3515ad;if(_0x4e4ede[_0x3e042f(0x113)](_0x3515ad)||_0x4e4ede[_0x3e042f(0x113)](_0x3b25d0))continue;for(const _0x2f6d48 of _0x3f248b){_0x268b45['push']({..._0x2f6d48,'domain':_0x3b25d0});}_0x4e4ede[_0x3e042f(0x13c)](_0x3b25d0);}return _0x268b45;}export function resolveAuthEnvironmentLocally(_0x1c57fb,_0x74f2a5){const _0x26251a=_0x487731,_0x1b7ad0=_0x1c57fb['environments'];if(_0x74f2a5){const _0x240a40=_0x1b7ad0[_0x74f2a5];if(!_0x240a40)return null;return{'key':_0x74f2a5,..._0x240a40};}if(_0x1c57fb[_0x26251a(0x120)]){const _0x32e869=_0x1b7ad0[_0x1c57fb['defaultEnvironmentKey']];if(!_0x32e869)return null;return{'key':_0x1c57fb['defaultEnvironmentKey'],..._0x32e869};}const _0x258d51=Object[_0x26251a(0x132)](_0x1b7ad0);if(_0x258d51['length']===0x1){const _0xcab15f=_0x258d51[0x0];return{'key':_0xcab15f,..._0x1b7ad0[_0xcab15f]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x1ae651,_0x34363c){const _0x5160a8=_0x487731;try{if(_0x34363c)return new URL(_0x34363c,_0x1ae651)['toString']();return new URL(_0x1ae651)[_0x5160a8(0x138)]();}catch{return null;}}export function looksLikeLoginUrl(_0x17d70f){const _0x3616a1=_0x487731;try{const _0x2dfe0b=new URL(_0x17d70f);return LOGIN_URL_PATTERN[_0x3616a1(0x115)](_0x2dfe0b['pathname']);}catch{return LOGIN_URL_PATTERN['test'](_0x17d70f);}}export async function isCachedSessionLive(_0x353955,_0x57e499,_0x34b19d={},_0x1db430={}){const _0x4a4f29=_0x487731,_0x362f0e={'wPbMR':'domcontentloaded','TUVJW':function(_0x52b88b,_0x3f4395){return _0x52b88b===_0x3f4395;}},_0x1117b0=buildSessionCheckUrl(_0x57e499,_0x34b19d['sessionCheckPath']);if(!_0x1117b0)return!![];if(!_0x1db430['launchBrowser'])return!![];let _0x3b7a78=null;try{_0x3b7a78=await _0x1db430['launchBrowser']();const _0x3aeeb2=await _0x3b7a78['newContext']({'storageState':_0x353955,'ignoreHTTPSErrors':!![],..._0x34b19d[_0x4a4f29(0x118)]?{'extraHTTPHeaders':_0x34b19d['setupHeaders']}:{}}),_0x5305f7=await _0x3aeeb2[_0x4a4f29(0x12f)](),_0x5d9463=await _0x5305f7['goto'](_0x1117b0,{'waitUntil':_0x362f0e['wPbMR'],'timeout':0x3a98}),_0x43948d=_0x5d9463?.['status']();if(_0x43948d===0x191||_0x362f0e['TUVJW'](_0x43948d,0x193))return![];const _0x4bdedc=_0x5305f7[_0x4a4f29(0x114)]();if(looksLikeLoginUrl(_0x4bdedc))return![];return!![];}catch{return![];}finally{if(_0x3b7a78)await _0x3b7a78[_0x4a4f29(0x134)]()['catch'](()=>{});}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0xdfba(_0x1af902,_0x3e4396){_0x1af902=_0x1af902-0x195;const _0x3b6f81=_0x3b6f();let _0xdfba07=_0x3b6f81[_0x1af902];return _0xdfba07;}const _0x50000c=_0xdfba;(function(_0x2cc586,_0x24ed95){const _0x482dc2=_0xdfba,_0x1d5b96=_0x2cc586();while(!![]){try{const _0x2ea8a8=parseInt(_0x482dc2(0x1a1))/0x1+-parseInt(_0x482dc2(0x197))/0x2+parseInt(_0x482dc2(0x19a))/0x3*(-parseInt(_0x482dc2(0x1a7))/0x4)+-parseInt(_0x482dc2(0x1a6))/0x5*(parseInt(_0x482dc2(0x195))/0x6)+-parseInt(_0x482dc2(0x19d))/0x7+-parseInt(_0x482dc2(0x19b))/0x8+parseInt(_0x482dc2(0x1a3))/0x9;if(_0x2ea8a8===_0x24ed95)break;else _0x1d5b96['push'](_0x1d5b96['shift']());}catch(_0xc21522){_0x1d5b96['push'](_0x1d5b96['shift']());}}}(_0x3b6f,0xf3a6f));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x50000c(0x1a0),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0xa696a4){const _0x105b91=_0x50000c,_0x30cd7a={'zDtep':function(_0x2a0c05,_0xde6ca7,_0x3f7710,_0x528be8,_0x28667f,_0x1c8ae8){return _0x2a0c05(_0xde6ca7,_0x3f7710,_0x528be8,_0x28667f,_0x1c8ae8);},'MxxOi':'sha256'};return _0x30cd7a[_0x105b91(0x1a2)](pbkdf2Sync,_0xa696a4,SALT,0x186a0,KEY_LENGTH,_0x30cd7a[_0x105b91(0x198)]);}export function encrypt(_0x4c3ef4,_0x2fbff6){const _0x4d3f26=_0x50000c,_0x429ec4={'GsmOS':function(_0x5355b5,_0x3bd437){return _0x5355b5(_0x3bd437);},'xSFdL':function(_0x3803bf,_0x4f4355,_0x4e732d,_0xabb139){return _0x3803bf(_0x4f4355,_0x4e732d,_0xabb139);},'ovyVn':'utf8'},_0x373c4d=deriveKey(_0x2fbff6),_0x7d6645=_0x429ec4['GsmOS'](randomBytes,IV_LENGTH),_0x183729=_0x429ec4[_0x4d3f26(0x1a5)](createCipheriv,ALGORITHM,_0x373c4d,_0x7d6645),_0x513327=Buffer['concat']([_0x183729['update'](_0x4c3ef4,_0x429ec4[_0x4d3f26(0x1a4)]),_0x183729['final']()]),_0x3ff8eb=_0x183729[_0x4d3f26(0x196)]();return Buffer[_0x4d3f26(0x199)]([_0x7d6645,_0x3ff8eb,_0x513327]);}export function decrypt(_0x4de9dc,_0x5b3af8){const _0x10b5d4=_0x50000c,_0x23824e={'EREWd':function(_0x1df355,_0x311b57){return _0x1df355(_0x311b57);},'xGwFP':function(_0x39b15b,_0x1c39a8){return _0x39b15b+_0x1c39a8;},'JmpPy':'utf8'},_0x3c3147=_0x23824e['EREWd'](deriveKey,_0x5b3af8),_0x4c36a4=_0x4de9dc['subarray'](0x0,IV_LENGTH),_0x4fc318=_0x4de9dc['subarray'](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x10ca9b=_0x4de9dc['subarray'](IV_LENGTH+TAG_LENGTH),_0x2d65e0=createDecipheriv(ALGORITHM,_0x3c3147,_0x4c36a4);return _0x2d65e0[_0x10b5d4(0x19c)](_0x4fc318),_0x23824e['xGwFP'](_0x2d65e0[_0x10b5d4(0x19f)](_0x10ca9b),_0x2d65e0['final'](_0x23824e[_0x10b5d4(0x19e)]));}function _0x3b6f(){const _0x5a5349=['concat','17007vgGlCd','3648232PIiceR','setAuthTag','7035126YPaWsH','JmpPy','update','aes-256-gcm','1561717SWcRtP','zDtep','39121740jNGgxl','ovyVn','xSFdL','7294215vBgEIa','772qUnmnJ','6NLXmxA','getAuthTag','1793142MFJflU','MxxOi'];_0x3b6f=function(){return _0x5a5349;};return _0x3b6f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4f346f=_0x1608;(function(_0x20384e,_0x45e260){const _0x18db98=_0x1608,_0x37a7a2=_0x20384e();while(!![]){try{const _0x16c6fb=parseInt(_0x18db98(0x115))/0x1*(parseInt(_0x18db98(0xf5))/0x2)+-parseInt(_0x18db98(0x101))/0x3+-parseInt(_0x18db98(0xf8))/0x4+-parseInt(_0x18db98(0x100))/0x5*(-parseInt(_0x18db98(0xfc))/0x6)+parseInt(_0x18db98(0x10e))/0x7+parseInt(_0x18db98(0xe7))/0x8+parseInt(_0x18db98(0x103))/0x9*(-parseInt(_0x18db98(0xfe))/0xa);if(_0x16c6fb===_0x45e260)break;else _0x37a7a2['push'](_0x37a7a2['shift']());}catch(_0x19303d){_0x37a7a2['push'](_0x37a7a2['shift']());}}}(_0x5eea,0x7b707));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';function _0x5eea(){const _0x510cfe=['325130MkozGk','zotwN','includes','823444ZSKDZI','WSSKv','--key','--header','14826McbCtY','--authorization','20AjqLJg','has_token','365FNINMQ','738987PEQJBq','stringify','2920869LbpzUw','runtime_error','error','toLowerCase','rnLPB','=[REDACTED]','no_token','vRNPd','missing_option','--password','pdCIB','5508426lDquaH','DFyJZ','indexOf','join','--api-key','env','featureId','2yhGOLy','errorType','2515584aDbrIL','startsWith','unknown_command','slice','--apikey','sessionId','--token','--cookie','length','--credentials','Authorization','has','/api/v1/mcp/desire-path-logs','missing_required_argument'];_0x5eea=function(){return _0x510cfe;};return _0x5eea();}import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set([_0x4f346f(0xed),'-t','--secret',_0x4f346f(0x112),_0x4f346f(0xeb),_0x4f346f(0xfa),_0x4f346f(0x10c),'--pass','--auth',_0x4f346f(0xfd),_0x4f346f(0xfb),_0x4f346f(0xee),_0x4f346f(0xf0)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function _0x1608(_0x34339b,_0x50f9f2){_0x34339b=_0x34339b-0xe7;const _0x5eea9e=_0x5eea();let _0x16084d=_0x5eea9e[_0x34339b];return _0x16084d;}function looksLikeToken(_0x5386ed){return TOKEN_PATTERNS['some'](_0x5ec4df=>_0x5ec4df['test'](_0x5386ed));}export function sanitizeArgs(_0x40fbd5){const _0x36af10=_0x4f346f,_0x1bd5af={'rnLPB':function(_0x5a07ef,_0x5cbb13){return _0x5a07ef<_0x5cbb13;},'jYvIe':'[REDACTED]','WSSKv':function(_0x439e18,_0x2620fc){return _0x439e18(_0x2620fc);}},_0x1372f5=[];let _0x4119f1=![];for(let _0x5261c6=0x0;_0x1bd5af[_0x36af10(0x107)](_0x5261c6,_0x40fbd5[_0x36af10(0xef)]);_0x5261c6++){const _0x3a43a3=_0x40fbd5[_0x5261c6];if(_0x4119f1){_0x1372f5['push'](_0x1bd5af['jYvIe']),_0x4119f1=![];continue;}if(_0x3a43a3['startsWith']('--')||_0x3a43a3[_0x36af10(0xe8)]('-')){const _0x10d5d3=_0x3a43a3[_0x36af10(0x110)]('=');if(_0x10d5d3!==-0x1){const _0x44d26c=_0x3a43a3['slice'](0x0,_0x10d5d3)[_0x36af10(0x106)]();if(SENSITIVE_FLAGS[_0x36af10(0xf2)](_0x44d26c)){_0x1372f5['push'](_0x3a43a3[_0x36af10(0xea)](0x0,_0x10d5d3)+_0x36af10(0x108));continue;}}else{const _0x43b696=_0x3a43a3[_0x36af10(0x106)]();SENSITIVE_FLAGS['has'](_0x43b696)&&(_0x4119f1=!![]);}_0x1372f5['push'](_0x3a43a3);}else _0x1bd5af[_0x36af10(0xf9)](looksLikeToken,_0x3a43a3)?_0x1372f5['push'](_0x1bd5af['jYvIe']):_0x1372f5['push'](_0x3a43a3);}return _0x1372f5[_0x36af10(0x111)]('\x20');}export async function logDesirePath(_0xc45dc2){const _0x338e00=_0x4f346f,_0x1b52c6={'iDTaO':function(_0x62db00){return _0x62db00();},'WLmUQ':function(_0x2c791f){return _0x2c791f();},'JWtTC':_0x338e00(0xff),'GkopW':'application/json','vRNPd':_0x338e00(0xf1),'DFyJZ':function(_0x320cfe,_0x4aeecc,_0x2c0cbc){return _0x320cfe(_0x4aeecc,_0x2c0cbc);},'zotwN':'POST'};try{const _0x2df36c=await getToken()['catch'](()=>null),_0x77d86e=_0x1b52c6['iDTaO'](getApiBaseUrl),_0x383a8a=_0x1b52c6['WLmUQ'](getCurrentVersion),_0x5d5538=_0x2df36c?_0x1b52c6['JWtTC']:_0x338e00(0x109),_0x3460ee={..._0xc45dc2['metadata'],'authStatus':_0x5d5538,'isTty':process['stdout']['isTTY']??![]},_0x3f1660={'Content-Type':_0x1b52c6['GkopW']};_0x2df36c&&(_0x3f1660[_0x1b52c6[_0x338e00(0x10a)]]='Bearer\x20'+_0x2df36c);const _0xce1fe1={'rawCommand':_0xc45dc2['rawCommand'],'errorMessage':_0xc45dc2['errorMessage'],'errorType':_0xc45dc2[_0x338e00(0x116)],'featureId':_0xc45dc2[_0x338e00(0x114)],'sessionId':_0xc45dc2[_0x338e00(0xec)],'metadata':_0x3460ee,'cliVersion':_0x383a8a};process['env']['DEBUG']&&(console['error']('[desire-path]\x20Sending\x20log\x20to\x20'+_0x77d86e+_0x338e00(0xf3)),console[_0x338e00(0x105)]('[desire-path]\x20Payload:\x20'+JSON[_0x338e00(0x102)](_0xce1fe1,null,0x2))),await _0x1b52c6[_0x338e00(0x10f)](fetch,_0x77d86e+_0x338e00(0xf3),{'method':_0x1b52c6[_0x338e00(0xf6)],'headers':_0x3f1660,'body':JSON['stringify'](_0xce1fe1)});}catch(_0x929407){process[_0x338e00(0x113)]['DEBUG']&&console[_0x338e00(0x105)]('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x929407);}}export function getErrorType(_0x154917,_0x182774){const _0x11a013=_0x4f346f,_0x481783={'QBvMF':_0x11a013(0xe9),'LTiao':'Unknown\x20argument','pdCIB':'Not\x20enough\x20non-option\x20arguments','oVlXP':'Invalid\x20values','essNX':_0x11a013(0x10b)};if(_0x182774)return _0x11a013(0x104);if(!_0x154917)return'unknown';if(_0x154917['includes']('Unknown\x20command'))return _0x481783['QBvMF'];if(_0x154917[_0x11a013(0xf7)](_0x481783['LTiao']))return'unknown_argument';if(_0x154917['includes'](_0x481783[_0x11a013(0x10d)]))return _0x11a013(0xf4);if(_0x154917['includes'](_0x481783['oVlXP']))return'invalid_option_value';if(_0x154917[_0x11a013(0xf7)]('Missing\x20required\x20argument'))return _0x481783['essNX'];return'syntax_error';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x37ffa5=_0x3966;(function(_0x1c629e,_0x57f3b8){const _0x4274ba=_0x3966,_0x2fc414=_0x1c629e();while(!![]){try{const _0x166245=parseInt(_0x4274ba(0x1b0))/0x1*(parseInt(_0x4274ba(0x1bc))/0x2)+parseInt(_0x4274ba(0x1ac))/0x3+-parseInt(_0x4274ba(0x1af))/0x4*(-parseInt(_0x4274ba(0x1ae))/0x5)+-parseInt(_0x4274ba(0x1c6))/0x6*(parseInt(_0x4274ba(0x1a7))/0x7)+-parseInt(_0x4274ba(0x1dd))/0x8+parseInt(_0x4274ba(0x1c4))/0x9*(parseInt(_0x4274ba(0x1d6))/0xa)+parseInt(_0x4274ba(0x1cd))/0xb;if(_0x166245===_0x57f3b8)break;else _0x2fc414['push'](_0x2fc414['shift']());}catch(_0x2e705a){_0x2fc414['push'](_0x2fc414['shift']());}}}(_0x33c4,0x66eb0));import{spawn}from'child_process';import _0x4a770f 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=_0x37ffa5(0x1bf);export async function requestDeviceCode(_0x47f5e){const _0x5c182b=_0x37ffa5,_0x911c85={'hNYHH':'POST'},_0x1922c6=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x911c85[_0x5c182b(0x196)],'headers':{'Content-Type':_0x5c182b(0x18f)},'body':new URLSearchParams({'client_id':_0x47f5e})});if(!_0x1922c6['ok']){const _0x2c8b6f=await _0x1922c6['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x1922c6['status']+'\x20'+_0x2c8b6f);}return _0x1922c6[_0x5c182b(0x1d4)]();}export async function pollForTokens(_0xf14de1,_0x373f79,_0x5e599e,_0x2c9425){const _0x20d8ca=_0x37ffa5,_0x6e5418={'czpgy':function(_0x1d3a5e,_0x17374a){return _0x1d3a5e<_0x17374a;},'KTyjq':function(_0x16c073,_0x57b670,_0x372d42){return _0x16c073(_0x57b670,_0x372d42);},'rZBJN':'POST','JXWTs':'authorization_pending','CXwDH':function(_0x43170e,_0x3bc7f9){return _0x43170e===_0x3bc7f9;},'cCnLo':_0x20d8ca(0x19b),'mHDPN':'Device\x20authorization\x20timed\x20out'},_0x589f9a=Date[_0x20d8ca(0x19d)]()+_0x2c9425*0x3e8;let _0x1df2a2=_0x5e599e*0x3e8;while(_0x6e5418['czpgy'](Date[_0x20d8ca(0x19d)](),_0x589f9a)){await sleep(_0x1df2a2);const _0xa2db0b=await _0x6e5418[_0x20d8ca(0x1be)](fetch,WORKOS_TOKEN_URL,{'method':_0x6e5418['rZBJN'],'headers':{'Content-Type':_0x20d8ca(0x18f)},'body':new URLSearchParams({'client_id':_0xf14de1,'device_code':_0x373f79,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0xa2db0b['ok'])return _0xa2db0b[_0x20d8ca(0x1d4)]();const _0x1cda44=await _0xa2db0b[_0x20d8ca(0x1d4)]();if(_0x1cda44[_0x20d8ca(0x195)]===_0x6e5418[_0x20d8ca(0x19f)])continue;if(_0x6e5418[_0x20d8ca(0x1a3)](_0x1cda44[_0x20d8ca(0x195)],_0x6e5418['cCnLo'])){_0x1df2a2+=0x3e8;continue;}throw new Error(_0x1cda44['error_description']||_0x1cda44['error']||'Authentication\x20failed');}throw new Error(_0x6e5418[_0x20d8ca(0x1cf)]);}async function fetchUserProfile(_0x1f7b5d){const _0x348109=_0x37ffa5,_0x53e8a7={'qHWMr':'GET'},_0x327ad4=getApiBaseUrl();try{const _0x310d7e=await fetch(_0x327ad4+_0x348109(0x1e3),{'method':_0x53e8a7[_0x348109(0x1e1)],'headers':{'workos-token':_0x1f7b5d}});if(_0x310d7e['ok'])return _0x310d7e[_0x348109(0x1d4)]();}catch{}return null;}function buildKeyName(_0x2f6e31,_0x3c136e){const _0x1d1a0f=_0x37ffa5,_0x41758d={'rUMee':function(_0x25954c,_0x21abb0){return _0x25954c===_0x21abb0;}},_0x3fef5d=_0x3c136e['filter'](_0x440b30=>_0x440b30[_0x1d1a0f(0x1cb)]===_0x2f6e31||_0x440b30[_0x1d1a0f(0x1cb)]['startsWith'](_0x2f6e31+'\x20('));if(_0x41758d[_0x1d1a0f(0x1e6)](_0x3fef5d['length'],0x0))return _0x2f6e31;return _0x2f6e31+'\x20('+(_0x3fef5d['length']+0x1)+')';}export async function provisionApiKey(_0x40bd5f){const _0x3f2a7b=_0x37ffa5,_0x4c0a19={'CvXMM':function(_0xbab9ba){return _0xbab9ba();},'IEUpI':_0x3f2a7b(0x1b8),'enVNZ':function(_0xabc4ab,_0x2c779f){return _0xabc4ab(_0x2c779f);},'ytYps':function(_0x1f6690,_0x1efa98,_0x22ebd8){return _0x1f6690(_0x1efa98,_0x22ebd8);},'uBpMh':_0x3f2a7b(0x1c9)},_0x18d6b7=_0x4c0a19['CvXMM'](getApiBaseUrl),_0x1a711b={'Content-Type':_0x4c0a19['IEUpI'],'workos-token':_0x40bd5f},_0x520711=await _0x4c0a19[_0x3f2a7b(0x1ca)](fetchUserProfile,_0x40bd5f),_0x4ca189=_0x520711?.[_0x3f2a7b(0x1cc)]||_0x520711?.[_0x3f2a7b(0x190)]?.['split']('@')[0x0],_0x4fdf29=_0x4ca189?_0x4ca189+_0x3f2a7b(0x1ad):'CLI\x20Key';let _0x3ca531=[];try{const _0x4d07ac=await _0x4c0a19[_0x3f2a7b(0x1b6)](fetch,_0x18d6b7+'/api-keys',{'method':'GET','headers':_0x1a711b});if(_0x4d07ac['ok']){const _0x35afcd=await _0x4d07ac['json']();_0x3ca531=_0x35afcd[_0x3f2a7b(0x1ce)];}}catch{}const _0x509d88=buildKeyName(_0x4fdf29,_0x3ca531),_0x55380d=await _0x4c0a19[_0x3f2a7b(0x1b6)](fetch,_0x18d6b7+'/api-keys',{'method':_0x4c0a19[_0x3f2a7b(0x1a0)],'headers':_0x1a711b,'body':JSON['stringify']({'name':_0x509d88,'scope':_0x3f2a7b(0x1c5)})});if(!_0x55380d['ok']){const _0x366443=await _0x55380d['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x55380d['status']+'\x20'+_0x366443);}const _0x155bbe=await _0x55380d['json']();return _0x155bbe[_0x3f2a7b(0x1e8)]['token'];}export function openBrowser(_0x2ec5cc){const _0xc5a93b=_0x37ffa5,_0x54ed7d={'bKZmq':_0xc5a93b(0x1a4),'RMGWL':_0xc5a93b(0x1e7),'sldgn':'open'};try{if(process[_0xc5a93b(0x1a2)]==='win32'){const _0x394f1f=spawn(_0xc5a93b(0x194),['/c',_0x54ed7d[_0xc5a93b(0x1d1)],'',_0x2ec5cc],{'detached':!![],'stdio':_0xc5a93b(0x198),'windowsHide':!![]});_0x394f1f[_0xc5a93b(0x1d5)]();return;}const _0x3d6667=process[_0xc5a93b(0x1a2)]===_0x54ed7d[_0xc5a93b(0x1a5)]?_0x54ed7d[_0xc5a93b(0x1d2)]:'xdg-open',_0x2d89d1=spawn(_0x3d6667,[_0x2ec5cc],{'detached':!![],'stdio':'ignore'});_0x2d89d1[_0xc5a93b(0x1d5)]();}catch{}}function _0x33c4(){const _0x22197c=['list','cmd','error','hNYHH','xsGwo','ignore','Digzj','Using\x20organization:\x20','slow_down','/cli-auth/token','now','/organization/self-serve-signup','JXWTs','uBpMh','pLFPd','platform','CXwDH','start','RMGWL','zXwgb','7tpbzqa','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','WKCmR','org_id','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','1295172OVUQbC','\x27s\x20CLI\x20Key','607345VYgXJc','4Qukfvr','17233QwpoKE','XYxRU','length','isTTY','bWZBs','Failed\x20to\x20create\x20organization:\x20','ytYps','user_code','application/json','EQmXS','organizationId','fLAxg','42MreXre','Invalid\x20JWT\x20format','KTyjq','https://api.workos.com/user_management/authenticate','Select\x20an\x20organization:','write','Code:\x20','/organization/my-memberships','82269iulxzn','mcp:write','4077180anzNtC','stdout','Failed\x20to\x20provision\x20CLI\x20token:\x20','POST','enVNZ','name','firstName','2278430CdJIKf','apiKeys','mHDPN','split','bKZmq','sldgn','MPmpg','json','unref','490xckXqp','Setting\x20up\x20your\x20organization...','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','toString','device_code','Waiting\x20for\x20authentication...','wdTlp','3752344MKNQzx','map','log','access_token','qHWMr','ufVge','/organization/me','base64url','text','rUMee','darwin','apiKey','application/x-www-form-urlencoded','email','status','token'];_0x33c4=function(){return _0x22197c;};return _0x33c4();}function decodeJwtPayload(_0x48c130){const _0xdfefd2=_0x37ffa5,_0x3396fe={'TRJzQ':_0xdfefd2(0x1bd),'xsGwo':_0xdfefd2(0x1e4),'cqQBv':'utf-8'},_0x559f11=_0x48c130[_0xdfefd2(0x1d0)]('.');if(_0x559f11[_0xdfefd2(0x1b2)]!==0x3)throw new Error(_0x3396fe['TRJzQ']);const _0x1e3420=Buffer['from'](_0x559f11[0x1],_0x3396fe[_0xdfefd2(0x197)])[_0xdfefd2(0x1d9)](_0x3396fe['cqQBv']);return JSON['parse'](_0x1e3420);}function _0x3966(_0x26be31,_0x54253e){_0x26be31=_0x26be31-0x18f;const _0x33c4e5=_0x33c4();let _0x396611=_0x33c4e5[_0x26be31];return _0x396611;}async function selfServeSignup(_0x249204){const _0x2ce64b=_0x37ffa5,_0x26dadc={'fLAxg':'POST'},_0x34da7e=getApiBaseUrl(),_0x1cf316=await fetch(_0x34da7e+_0x2ce64b(0x19e),{'method':_0x26dadc[_0x2ce64b(0x1bb)],'headers':{'Content-Type':_0x2ce64b(0x1b8),'workos-token':_0x249204}});if(!_0x1cf316['ok']){const _0x1a4bac=await _0x1cf316[_0x2ce64b(0x1e5)]();throw new Error(_0x2ce64b(0x1b5)+_0x1cf316['status']+'\x20'+_0x1a4bac);}return _0x1cf316[_0x2ce64b(0x1d4)]();}async function fetchMyMemberships(_0x2efb6a){const _0x110eee=_0x37ffa5,_0x4f9b1a={'MDWdA':function(_0x586317,_0x2ce2d3,_0x1f2da2){return _0x586317(_0x2ce2d3,_0x1f2da2);},'wdTlp':'GET'},_0x2dbd10=getApiBaseUrl(),_0x4b1645=await _0x4f9b1a['MDWdA'](fetch,_0x2dbd10+_0x110eee(0x1c3),{'method':_0x4f9b1a[_0x110eee(0x1dc)],'headers':{'workos-token':_0x2efb6a}});if(!_0x4b1645['ok']){const _0x41621c=await _0x4b1645['text']();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x4b1645[_0x110eee(0x191)]+'\x20'+_0x41621c);}const _0x242778=await _0x4b1645['json']();return _0x242778['memberships'];}async function refreshTokenWithOrg(_0x2511f3,_0x477826,_0x272c7f){const _0x35e7bb=_0x37ffa5,_0x30296b={'TCvWL':function(_0x146c95,_0xdb4a83,_0x8ebfdd){return _0x146c95(_0xdb4a83,_0x8ebfdd);},'zXwgb':_0x35e7bb(0x1c9)},_0xf7286a=await _0x30296b['TCvWL'](fetch,WORKOS_TOKEN_URL,{'method':_0x30296b[_0x35e7bb(0x1a6)],'headers':{'Content-Type':_0x35e7bb(0x18f)},'body':new URLSearchParams({'client_id':_0x2511f3,'grant_type':'refresh_token','refresh_token':_0x477826,'organization_id':_0x272c7f})});if(!_0xf7286a['ok']){const _0x432b7b=await _0xf7286a['text']();throw new Error(_0x35e7bb(0x1d8)+_0xf7286a[_0x35e7bb(0x191)]+'\x20'+_0x432b7b);}return _0xf7286a['json']();}async function provisionCliToken(_0x37d435){const _0xd74130=_0x37ffa5,_0x1243ef={'bWZBs':function(_0x1bed05,_0x2d4e3d,_0x6389ac){return _0x1bed05(_0x2d4e3d,_0x6389ac);},'pLFPd':_0xd74130(0x1c9)},_0x637fa9=getApiBaseUrl(),_0x1ae829=await _0x1243ef[_0xd74130(0x1b4)](fetch,_0x637fa9+_0xd74130(0x19c),{'method':_0x1243ef[_0xd74130(0x1a1)],'headers':{'Content-Type':_0xd74130(0x1b8),'workos-token':_0x37d435}});if(!_0x1ae829['ok']){const _0x19b4bc=await _0x1ae829['text']();throw new Error(_0xd74130(0x1c8)+_0x1ae829[_0xd74130(0x191)]+'\x20'+_0x19b4bc);}return _0x1ae829['json']();}export async function runDeviceAuthFlow(){const _0x452587=_0x37ffa5,_0x35de7c={'XYxRU':function(_0x4fdf44,_0x751ad5){return _0x4fdf44(_0x751ad5);},'EQmXS':_0x452587(0x1ab),'Digzj':_0x452587(0x1a8),'MPmpg':function(_0x2851d9,_0x76689d){return _0x2851d9===_0x76689d;},'ufVge':_0x452587(0x1d7),'GsSJg':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','STROv':_0x452587(0x193),'WKCmR':'Provisioning\x20CLI\x20token...'},_0x4bf7ab=getCurrentEnvironment(),_0x565060=ENVIRONMENT_CONFIGS[_0x4bf7ab]['workosClientId'],_0x4f7277=await _0x35de7c[_0x452587(0x1b1)](requestDeviceCode,_0x565060);console['log'](_0x35de7c[_0x452587(0x1b9)]),console['log'](_0x35de7c[_0x452587(0x199)]),openBrowser(_0x4f7277['verification_uri_complete']),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x4f7277['verification_uri_complete']),console['log'](_0x452587(0x1c2)+_0x4f7277[_0x452587(0x1b7)]+'\x0a'),process[_0x452587(0x1c7)]['write'](_0x452587(0x1db));let _0x1d0e21=await pollForTokens(_0x565060,_0x4f7277[_0x452587(0x1da)],_0x4f7277['interval'],_0x4f7277['expires_in']);console['log']('\x20✓');const _0x40ae23=_0x35de7c[_0x452587(0x1b1)](decodeJwtPayload,_0x1d0e21[_0x452587(0x1e0)]);if(!_0x40ae23[_0x452587(0x1aa)]){const _0x3e159d=await fetchMyMemberships(_0x1d0e21['access_token']);let _0x50f4ef;if(_0x35de7c[_0x452587(0x1d3)](_0x3e159d['length'],0x0)){process[_0x452587(0x1c7)][_0x452587(0x1c1)](_0x35de7c[_0x452587(0x1e2)]);const _0x2a3919=await _0x35de7c[_0x452587(0x1b1)](selfServeSignup,_0x1d0e21['access_token']);_0x50f4ef=_0x2a3919['organizationId'],console[_0x452587(0x1df)]('\x20✓');}else{if(_0x3e159d[_0x452587(0x1b2)]===0x1)_0x50f4ef=_0x3e159d[0x0][_0x452587(0x1ba)],console[_0x452587(0x1df)](_0x452587(0x19a)+_0x3e159d[0x0]['name']);else{const _0xa0440d=process['stdin'][_0x452587(0x1b3)]&&process['stdout']['isTTY'];if(!_0xa0440d)throw new Error('Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a'+_0x35de7c['GsSJg']);const {selected:_0x43c907}=await _0x4a770f['prompt']([{'type':_0x35de7c['STROv'],'name':'selected','message':_0x452587(0x1c0),'choices':_0x3e159d[_0x452587(0x1de)](_0x4b11a3=>({'name':_0x4b11a3[_0x452587(0x1cb)],'value':_0x4b11a3['organizationId']}))}]);_0x50f4ef=_0x43c907;}}_0x1d0e21=await refreshTokenWithOrg(_0x565060,_0x1d0e21['refresh_token'],_0x50f4ef);}process[_0x452587(0x1c7)][_0x452587(0x1c1)](_0x35de7c[_0x452587(0x1a9)]);const _0x18832=await provisionCliToken(_0x1d0e21[_0x452587(0x1e0)]);return console['log']('\x20✓'),await _0x35de7c['XYxRU'](storeToken,_0x18832[_0x452587(0x192)]),_0x1d0e21['refresh_token']&&await storeRefreshToken(_0x1d0e21['refresh_token']),_0x18832[_0x452587(0x192)];}function sleep(_0xcb4b86){return new Promise(_0x4a516c=>setTimeout(_0x4a516c,_0xcb4b86));}
|
|
1
|
+
const _0x10b416=_0x59df;(function(_0x4f63b1,_0x282f4c){const _0x2addf9=_0x59df,_0x47caeb=_0x4f63b1();while(!![]){try{const _0x143b5b=parseInt(_0x2addf9(0xd1))/0x1+-parseInt(_0x2addf9(0xd8))/0x2+parseInt(_0x2addf9(0xc7))/0x3*(parseInt(_0x2addf9(0xd7))/0x4)+parseInt(_0x2addf9(0xe1))/0x5*(parseInt(_0x2addf9(0x100))/0x6)+parseInt(_0x2addf9(0xba))/0x7+-parseInt(_0x2addf9(0xe7))/0x8*(-parseInt(_0x2addf9(0xd6))/0x9)+-parseInt(_0x2addf9(0xd5))/0xa;if(_0x143b5b===_0x282f4c)break;else _0x47caeb['push'](_0x47caeb['shift']());}catch(_0x49212b){_0x47caeb['push'](_0x47caeb['shift']());}}}(_0x1155,0x26168));import{spawn}from'child_process';import _0x2cf217 from'inquirer';function _0x59df(_0x22355d,_0x16a28b){_0x22355d=_0x22355d-0xb1;const _0x115573=_0x1155();let _0x59df84=_0x115573[_0x22355d];return _0x59df84;}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=_0x10b416(0xef);export async function requestDeviceCode(_0xdc497c){const _0x84248f=_0x10b416,_0x1f72f3=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':'POST','headers':{'Content-Type':_0x84248f(0xcf)},'body':new URLSearchParams({'client_id':_0xdc497c})});if(!_0x1f72f3['ok']){const _0x43b4cc=await _0x1f72f3['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x1f72f3['status']+'\x20'+_0x43b4cc);}return _0x1f72f3[_0x84248f(0xb1)]();}export async function pollForTokens(_0x3c0cea,_0xeaf784,_0x2ec476,_0xd0f56d){const _0x48d5a3=_0x10b416,_0x9846fc={'RSWdw':function(_0x5c9c6d,_0x33a3b0){return _0x5c9c6d*_0x33a3b0;},'YRXub':function(_0x29beff,_0x1cefe1){return _0x29beff<_0x1cefe1;},'ngnvp':function(_0x561123,_0x3e1a2f,_0x256127){return _0x561123(_0x3e1a2f,_0x256127);},'ZcGwI':'POST','kUxbm':function(_0x4eda07,_0xd34c33){return _0x4eda07===_0xd34c33;},'pJvxe':'authorization_pending','lVTax':'slow_down'},_0x5ebde2=Date[_0x48d5a3(0xdb)]()+_0x9846fc['RSWdw'](_0xd0f56d,0x3e8);let _0x42634b=_0x9846fc['RSWdw'](_0x2ec476,0x3e8);while(_0x9846fc[_0x48d5a3(0xb6)](Date['now'](),_0x5ebde2)){await sleep(_0x42634b);const _0x5a16d6=await _0x9846fc['ngnvp'](fetch,WORKOS_TOKEN_URL,{'method':_0x9846fc['ZcGwI'],'headers':{'Content-Type':_0x48d5a3(0xcf)},'body':new URLSearchParams({'client_id':_0x3c0cea,'device_code':_0xeaf784,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x5a16d6['ok'])return _0x5a16d6['json']();const _0x39052c=await _0x5a16d6[_0x48d5a3(0xb1)]();if(_0x9846fc['kUxbm'](_0x39052c['error'],_0x9846fc[_0x48d5a3(0xda)]))continue;if(_0x39052c[_0x48d5a3(0xf7)]===_0x9846fc[_0x48d5a3(0xfd)]){_0x42634b+=0x3e8;continue;}throw new Error(_0x39052c[_0x48d5a3(0xd2)]||_0x39052c[_0x48d5a3(0xf7)]||_0x48d5a3(0xfa));}throw new Error(_0x48d5a3(0xce));}async function fetchUserProfile(_0x3eef5d){const _0x1853f8=_0x10b416,_0x24bb2d={'MPhRu':_0x1853f8(0xd9)},_0x4b2d9e=getApiBaseUrl();try{const _0x298a02=await fetch(_0x4b2d9e+_0x1853f8(0xc5),{'method':_0x24bb2d[_0x1853f8(0xe0)],'headers':{'workos-token':_0x3eef5d}});if(_0x298a02['ok'])return _0x298a02['json']();}catch{}return null;}function buildKeyName(_0x47ff19,_0x145d54){const _0x58e17d=_0x10b416,_0x53c785={'UGKvk':function(_0xb5063a,_0x190506){return _0xb5063a===_0x190506;},'FAbNg':function(_0x3670b3,_0x41ccf9){return _0x3670b3+_0x41ccf9;}},_0x5b8cf6=_0x145d54[_0x58e17d(0xb4)](_0x22600f=>_0x22600f['name']===_0x47ff19||_0x22600f['name'][_0x58e17d(0xfe)](_0x47ff19+'\x20('));if(_0x53c785['UGKvk'](_0x5b8cf6['length'],0x0))return _0x47ff19;return _0x47ff19+'\x20('+_0x53c785[_0x58e17d(0xeb)](_0x5b8cf6['length'],0x1)+')';}export async function provisionApiKey(_0x30c60b){const _0x285d4b=_0x10b416,_0x21439e={'ImtCt':function(_0x31232e){return _0x31232e();},'OLkpl':function(_0x218ea0,_0x2c9460){return _0x218ea0(_0x2c9460);},'WJxsI':'CLI\x20Key','oVoFF':function(_0x223b1d,_0x1463ab,_0x76f927){return _0x223b1d(_0x1463ab,_0x76f927);},'Nwzrn':function(_0x8b5173,_0x44b483,_0x427e1d){return _0x8b5173(_0x44b483,_0x427e1d);},'fRVUz':'POST'},_0x199d03=_0x21439e['ImtCt'](getApiBaseUrl),_0x492b88={'Content-Type':_0x285d4b(0xb5),'workos-token':_0x30c60b},_0x25d0b1=await _0x21439e['OLkpl'](fetchUserProfile,_0x30c60b),_0x4930a3=_0x25d0b1?.[_0x285d4b(0xc8)]||_0x25d0b1?.[_0x285d4b(0xb9)]?.['split']('@')[0x0],_0x496a17=_0x4930a3?_0x4930a3+_0x285d4b(0xfb):_0x21439e['WJxsI'];let _0x4fd484=[];try{const _0x1c8d4a=await _0x21439e[_0x285d4b(0xe2)](fetch,_0x199d03+'/api-keys',{'method':_0x285d4b(0xd9),'headers':_0x492b88});if(_0x1c8d4a['ok']){const _0x38bf48=await _0x1c8d4a['json']();_0x4fd484=_0x38bf48[_0x285d4b(0xf2)];}}catch{}const _0x318250=_0x21439e['Nwzrn'](buildKeyName,_0x496a17,_0x4fd484),_0x52a846=await fetch(_0x199d03+_0x285d4b(0xca),{'method':_0x21439e['fRVUz'],'headers':_0x492b88,'body':JSON[_0x285d4b(0xc4)]({'name':_0x318250,'scope':'mcp:write'})});if(!_0x52a846['ok']){const _0x2e5358=await _0x52a846[_0x285d4b(0xb2)]();throw new Error(_0x285d4b(0xbd)+_0x52a846[_0x285d4b(0xc3)]+'\x20'+_0x2e5358);}const _0x4c096f=await _0x52a846[_0x285d4b(0xb1)]();return _0x4c096f[_0x285d4b(0x101)]['token'];}export function openBrowser(_0x2ccb76){const _0x560b92=_0x10b416,_0x1782ef={'oRKHY':'win32','tcCiZ':'ignore','LbTrp':function(_0x2ad1a5,_0x52ba0){return _0x2ad1a5===_0x52ba0;},'dLvsh':'open','gQGHb':_0x560b92(0xfc)};try{if(process['platform']===_0x1782ef['oRKHY']){const _0x591c3c=spawn(_0x560b92(0xd0),['/c',_0x560b92(0xdc),'',_0x2ccb76],{'detached':!![],'stdio':_0x1782ef[_0x560b92(0xdf)],'windowsHide':!![]});_0x591c3c[_0x560b92(0xed)]();return;}const _0x241ff7=_0x1782ef[_0x560b92(0xc9)](process[_0x560b92(0xbc)],'darwin')?_0x1782ef['dLvsh']:_0x1782ef[_0x560b92(0xb3)],_0x11f76c=spawn(_0x241ff7,[_0x2ccb76],{'detached':!![],'stdio':_0x560b92(0x105)});_0x11f76c['unref']();}catch{}}function decodeJwtPayload(_0x2c21a6){const _0x54d9e1=_0x10b416,_0x510bc5={'EFKul':function(_0x407eae,_0x385ba6){return _0x407eae!==_0x385ba6;},'uFzxm':_0x54d9e1(0x102)},_0x492ebf=_0x2c21a6[_0x54d9e1(0xea)]('.');if(_0x510bc5[_0x54d9e1(0xe8)](_0x492ebf['length'],0x3))throw new Error(_0x54d9e1(0xf0));const _0xc3b131=Buffer[_0x54d9e1(0xde)](_0x492ebf[0x1],_0x54d9e1(0xcb))['toString'](_0x510bc5[_0x54d9e1(0xf3)]);return JSON['parse'](_0xc3b131);}async function selfServeSignup(_0x17ea4a){const _0x1badd4=_0x10b416,_0x123aa8={'kvGej':function(_0x1c7254){return _0x1c7254();},'oWZVg':'application/json'},_0x5bdbfa=_0x123aa8[_0x1badd4(0xf5)](getApiBaseUrl),_0x13665c=await fetch(_0x5bdbfa+'/organization/self-serve-signup',{'method':_0x1badd4(0xd4),'headers':{'Content-Type':_0x123aa8[_0x1badd4(0xbf)],'workos-token':_0x17ea4a}});if(!_0x13665c['ok']){const _0x19d65f=await _0x13665c['text']();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x13665c[_0x1badd4(0xc3)]+'\x20'+_0x19d65f);}return _0x13665c[_0x1badd4(0xb1)]();}async function fetchMyMemberships(_0x23eb2e){const _0x54764a=_0x10b416,_0x516488={'ArOtq':function(_0x2d1c6a,_0x384214,_0x5d5e53){return _0x2d1c6a(_0x384214,_0x5d5e53);}},_0x127a5c=getApiBaseUrl(),_0x3dfaf9=await _0x516488[_0x54764a(0xff)](fetch,_0x127a5c+'/organization/my-memberships',{'method':_0x54764a(0xd9),'headers':{'workos-token':_0x23eb2e}});if(!_0x3dfaf9['ok']){const _0x192cea=await _0x3dfaf9[_0x54764a(0xb2)]();throw new Error('Failed\x20to\x20fetch\x20memberships:\x20'+_0x3dfaf9[_0x54764a(0xc3)]+'\x20'+_0x192cea);}const _0x248c87=await _0x3dfaf9[_0x54764a(0xb1)]();return _0x248c87['memberships'];}function _0x1155(){const _0x316f7b=['YWhLY','408ZQlOKD','EFKul','organizationId','split','FAbNg','Using\x20organization:\x20','unref','map','https://api.workos.com/user_management/authenticate','Invalid\x20JWT\x20format','wmxeQ','apiKeys','uFzxm','workosClientId','kvGej','Waiting\x20for\x20authentication...','error','Failed\x20to\x20provision\x20CLI\x20token:\x20','length','Authentication\x20failed','\x27s\x20CLI\x20Key','xdg-open','lVTax','startsWith','ArOtq','17778dlOOTk','apiKey','utf-8','Setting\x20up\x20your\x20organization...','expires_in','ignore','json','text','gQGHb','filter','application/json','YRXub','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','access_token','email','2063460aJPrHp','user_code','platform','Failed\x20to\x20provision\x20API\x20key:\x20','ImzTq','oWZVg','dhQYS','yhqFX','interval','status','stringify','/organization/me','device_code','29217ZVeDND','firstName','LbTrp','/api-keys','base64url','paDAU','token','Device\x20authorization\x20timed\x20out','application/x-www-form-urlencoded','cmd','75087rmeRpo','error_description','log','POST','1479160PRJfBU','15003NeuEKp','20KRCwBi','464496UurvKw','GET','pJvxe','now','start','pnTZH','from','tcCiZ','MPhRu','55OhKctE','oVoFF','isTTY','stdout','name'];_0x1155=function(){return _0x316f7b;};return _0x1155();}async function refreshTokenWithOrg(_0x4188b9,_0x1cfe1c,_0x2dd398){const _0x1f66a0=_0x10b416,_0x262883={'kYdMc':function(_0x4c9fcf,_0x482fbb,_0x238cd3){return _0x4c9fcf(_0x482fbb,_0x238cd3);},'VBgna':_0x1f66a0(0xd4)},_0x360339=await _0x262883['kYdMc'](fetch,WORKOS_TOKEN_URL,{'method':_0x262883['VBgna'],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x4188b9,'grant_type':'refresh_token','refresh_token':_0x1cfe1c,'organization_id':_0x2dd398})});if(!_0x360339['ok']){const _0x54a079=await _0x360339[_0x1f66a0(0xb2)]();throw new Error(_0x1f66a0(0xb7)+_0x360339[_0x1f66a0(0xc3)]+'\x20'+_0x54a079);}return _0x360339[_0x1f66a0(0xb1)]();}async function provisionCliToken(_0x266ca1){const _0x52e7d1=_0x10b416,_0x2e232d={'XAxym':function(_0x50da62){return _0x50da62();},'yQjER':function(_0x2c8ffe,_0x43b58e,_0x1b9dda){return _0x2c8ffe(_0x43b58e,_0x1b9dda);},'DeIQX':_0x52e7d1(0xd4)},_0x4120d5=_0x2e232d['XAxym'](getApiBaseUrl),_0x29a3c4=await _0x2e232d['yQjER'](fetch,_0x4120d5+'/cli-auth/token',{'method':_0x2e232d['DeIQX'],'headers':{'Content-Type':'application/json','workos-token':_0x266ca1}});if(!_0x29a3c4['ok']){const _0x4fba81=await _0x29a3c4[_0x52e7d1(0xb2)]();throw new Error(_0x52e7d1(0xf8)+_0x29a3c4[_0x52e7d1(0xc3)]+'\x20'+_0x4fba81);}return _0x29a3c4[_0x52e7d1(0xb1)]();}export async function runDeviceAuthFlow(){const _0xd9f213=_0x10b416,_0x428e9f={'paDAU':function(_0x2d6e34,_0x36b97a){return _0x2d6e34(_0x36b97a);},'YWhLY':function(_0x3d5880,_0x1b2978,_0x2fe30c,_0x3438a1,_0x1ac186){return _0x3d5880(_0x1b2978,_0x2fe30c,_0x3438a1,_0x1ac186);},'mAitc':_0xd9f213(0x103),'yhqFX':function(_0x591683,_0x38e43a){return _0x591683===_0x38e43a;},'wmxeQ':function(_0x5d9aed,_0x5d59e1){return _0x5d9aed+_0x5d59e1;},'dhQYS':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','QXGyi':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','KtsAj':'selected','ImzTq':'Select\x20an\x20organization:','dwnuB':'Provisioning\x20CLI\x20token...','pnTZH':function(_0x269ce6,_0x2698a6){return _0x269ce6(_0x2698a6);}},_0x1f3c46=getCurrentEnvironment(),_0x512c21=ENVIRONMENT_CONFIGS[_0x1f3c46][_0xd9f213(0xf4)],_0x288dfc=await _0x428e9f[_0xd9f213(0xcc)](requestDeviceCode,_0x512c21);console[_0xd9f213(0xd3)]('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console[_0xd9f213(0xd3)]('\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a'),openBrowser(_0x288dfc['verification_uri_complete']),console[_0xd9f213(0xd3)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x288dfc['verification_uri_complete']),console['log']('Code:\x20'+_0x288dfc[_0xd9f213(0xbb)]+'\x0a'),process['stdout']['write'](_0xd9f213(0xf6));let _0x1b85b8=await _0x428e9f[_0xd9f213(0xe6)](pollForTokens,_0x512c21,_0x288dfc[_0xd9f213(0xc6)],_0x288dfc[_0xd9f213(0xc2)],_0x288dfc[_0xd9f213(0x104)]);console[_0xd9f213(0xd3)]('\x20✓');const _0xfce92e=decodeJwtPayload(_0x1b85b8[_0xd9f213(0xb8)]);if(!_0xfce92e['org_id']){const _0x3963f6=await _0x428e9f[_0xd9f213(0xcc)](fetchMyMemberships,_0x1b85b8['access_token']);let _0x332100;if(_0x3963f6[_0xd9f213(0xf9)]===0x0){process[_0xd9f213(0xe4)]['write'](_0x428e9f['mAitc']);const _0x3f87aa=await _0x428e9f['paDAU'](selfServeSignup,_0x1b85b8[_0xd9f213(0xb8)]);_0x332100=_0x3f87aa['organizationId'],console['log']('\x20✓');}else{if(_0x428e9f[_0xd9f213(0xc1)](_0x3963f6['length'],0x1))_0x332100=_0x3963f6[0x0][_0xd9f213(0xe9)],console['log'](_0xd9f213(0xec)+_0x3963f6[0x0][_0xd9f213(0xe5)]);else{const _0x203d04=process['stdin'][_0xd9f213(0xe3)]&&process[_0xd9f213(0xe4)]['isTTY'];if(!_0x203d04)throw new Error(_0x428e9f[_0xd9f213(0xf1)](_0x428e9f[_0xd9f213(0xc0)],_0x428e9f['QXGyi']));const {selected:_0x289df9}=await _0x2cf217['prompt']([{'type':'list','name':_0x428e9f['KtsAj'],'message':_0x428e9f[_0xd9f213(0xbe)],'choices':_0x3963f6[_0xd9f213(0xee)](_0x2ca845=>({'name':_0x2ca845[_0xd9f213(0xe5)],'value':_0x2ca845[_0xd9f213(0xe9)]}))}]);_0x332100=_0x289df9;}}_0x1b85b8=await refreshTokenWithOrg(_0x512c21,_0x1b85b8['refresh_token'],_0x332100);}process['stdout']['write'](_0x428e9f['dwnuB']);const _0x43b110=await _0x428e9f[_0xd9f213(0xdd)](provisionCliToken,_0x1b85b8[_0xd9f213(0xb8)]);return console[_0xd9f213(0xd3)]('\x20✓'),await _0x428e9f['pnTZH'](storeToken,_0x43b110[_0xd9f213(0xcd)]),_0x1b85b8['refresh_token']&&await storeRefreshToken(_0x1b85b8['refresh_token']),_0x43b110[_0xd9f213(0xcd)];}function sleep(_0x58b2d0){return new Promise(_0x5abdd7=>setTimeout(_0x5abdd7,_0x58b2d0));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x2dde(){const _0x355054=['gQNSH','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','RANGER_CLI_ENV','trim','client_01J9CBYM2DKWV9HM17D95Z540K','[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22','8275850xFZGGE','xyOTs','https://mcp-auth.staging.ranger.net/mcp','RANGER_USE_NOVA_ACT','env','DMqxr','449486ACHqup','https://ai-proxy-716115358910.us-central1.run.app','error','6956739AoZXpB','\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.','4125yGoAld','712pSmnuq','playwright-cli','mrHml','1066544aivOgL','https://mcp-auth.ranger.net/mcp','RANGER_DISABLE_MCP','find','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.','VJiHv','staging','RiUbs','778602GIEjhQ','65amPKTC','RANGER_TRANSPORT','toLowerCase','apiBaseUrl','mcp','aiProxyUrl','1NDUMlK','rangerwright-cli','Zzsnd','LTnmD','XafOd','RANGER_MCP_AUTH_URL','2895025ybDRrk','HqlyR','client_01J9CBYM7M5ZETCF7G6614DXR2','prod'];_0x2dde=function(){return _0x355054;};return _0x2dde();}const _0x3f46c7=_0x26af;(function(_0x284018,_0x25a249){const _0x1ed21a=_0x26af,_0x29d2c1=_0x284018();while(!![]){try{const _0x19413f=-parseInt(_0x1ed21a(0x147))/0x1*(parseInt(_0x1ed21a(0x15d))/0x2)+parseInt(_0x1ed21a(0x134))/0x3*(-parseInt(_0x1ed21a(0x135))/0x4)+-parseInt(_0x1ed21a(0x141))/0x5*(-parseInt(_0x1ed21a(0x140))/0x6)+-parseInt(_0x1ed21a(0x14d))/0x7+parseInt(_0x1ed21a(0x138))/0x8+parseInt(_0x1ed21a(0x132))/0x9+-parseInt(_0x1ed21a(0x157))/0xa;if(_0x19413f===_0x25a249)break;else _0x29d2c1['push'](_0x29d2c1['shift']());}catch(_0x17b3fb){_0x29d2c1['push'](_0x29d2c1['shift']());}}}(_0x2dde,0xd77af));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':_0x3f46c7(0x14f),'aiProxyUrl':_0x3f46c7(0x15e),'mcpAuthUrl':_0x3f46c7(0x139)},'staging':{'apiBaseUrl':'https://api.staging.ranger.net','workosClientId':_0x3f46c7(0x155),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':_0x3f46c7(0x159)},'local':{'apiBaseUrl':'http://localhost:8080','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT='prod';export function isValidEnvironment(_0x4e9f75){const _0x5b29f7=_0x3f46c7,_0x53e542={'VJiHv':function(_0x902b23,_0x3740aa){return _0x902b23===_0x3740aa;},'HqlyR':function(_0x4b3cf7,_0x37af88){return _0x4b3cf7===_0x37af88;},'rQaAq':_0x5b29f7(0x13e),'XNlvJ':'local'};return _0x53e542[_0x5b29f7(0x13d)](_0x4e9f75,_0x5b29f7(0x150))||_0x53e542[_0x5b29f7(0x14e)](_0x4e9f75,_0x53e542['rQaAq'])||_0x4e9f75===_0x53e542['XNlvJ'];}export function getCurrentEnvironment(){const _0x4740fc=_0x3f46c7,_0x1466be=process[_0x4740fc(0x15b)][_0x4740fc(0x153)];if(_0x1466be&&isValidEnvironment(_0x1466be))return _0x1466be;return DEFAULT_ENVIRONMENT;}function _0x26af(_0x2f379c,_0x50bdf0){_0x2f379c=_0x2f379c-0x132;const _0x2dde98=_0x2dde();let _0x26af58=_0x2dde98[_0x2f379c];return _0x26af58;}export function getApiBaseUrl(){const _0x4e905e=_0x3f46c7;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x4e905e(0x144)];}export function getAiProxyUrl(){const _0xa13128=_0x3f46c7,_0x370248={'YcsIg':function(_0x16fcde){return _0x16fcde();}};return ENVIRONMENT_CONFIGS[_0x370248['YcsIg'](getCurrentEnvironment)][_0xa13128(0x146)];}export function getMcpAuthUrl(){const _0x113c29=_0x3f46c7,_0x571cb9={'Zzsnd':function(_0x1701d3){return _0x1701d3();}};return process['env'][_0x113c29(0x14c)]??ENVIRONMENT_CONFIGS[_0x571cb9[_0x113c29(0x149)](getCurrentEnvironment)]['mcpAuthUrl'];}export function isByokEnabled(){const _0x44a3c1=_0x3f46c7,_0x201248={'RiUbs':function(_0x13a0e0,_0x4f52f3){return _0x13a0e0===_0x4f52f3;},'hnvez':'true'};return _0x201248[_0x44a3c1(0x13f)](process['env']['RANGER_BYOK'],_0x201248['hnvez']);}function isVerificationTransport(_0x1ef6c2){const _0x3bbf59=_0x3f46c7,_0x15db03={'XafOd':function(_0x563f06,_0x3919be){return _0x563f06===_0x3919be;},'xyOTs':_0x3bbf59(0x136),'DMqxr':function(_0x2c9216,_0x14ace2){return _0x2c9216===_0x14ace2;},'LTnmD':'nova-act-cli'};return _0x15db03[_0x3bbf59(0x14b)](_0x1ef6c2,'mcp')||_0x1ef6c2===_0x15db03[_0x3bbf59(0x158)]||_0x15db03[_0x3bbf59(0x15c)](_0x1ef6c2,_0x15db03[_0x3bbf59(0x14a)])||_0x1ef6c2===_0x3bbf59(0x148);}const LEGACY_TRANSPORT_ENV_VARS=[_0x3f46c7(0x15a),_0x3f46c7(0x13a)];export function getVerificationTransport(){const _0x469a9b=_0x3f46c7,_0x486344={'mrHml':function(_0x4aa6e0,_0x54ee98){return _0x4aa6e0(_0x54ee98);}},_0x4376be=process['env'][_0x469a9b(0x142)]?.[_0x469a9b(0x154)]();if(_0x4376be){if(_0x486344[_0x469a9b(0x137)](isVerificationTransport,_0x4376be))return _0x4376be;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x4376be+_0x469a9b(0x133));}const _0x13ea0e=LEGACY_TRANSPORT_ENV_VARS[_0x469a9b(0x13b)](_0x93b618=>process[_0x469a9b(0x15b)][_0x93b618]);if(_0x13ea0e)throw new Error(_0x13ea0e+_0x469a9b(0x152));return _0x469a9b(0x145);}export function resolveHookMode(_0x453946=process['env']){const _0x466ebb=_0x3f46c7,_0x48c474={'gQNSH':'auto'},_0x2c8238=_0x453946['RANGER_HOOKS']?.['trim']()[_0x466ebb(0x143)]();if(!_0x2c8238)return'auto';if(_0x2c8238==='off'||_0x2c8238==='on'||_0x2c8238===_0x48c474[_0x466ebb(0x151)])return _0x2c8238;return console[_0x466ebb(0x15f)](_0x466ebb(0x156)+_0x453946['RANGER_HOOKS']+'\x22.\x20'+_0x466ebb(0x13c)),_0x48c474[_0x466ebb(0x151)];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x3a19c3,_0x4e291){const _0x1ecb33=_0x5437,_0x3df7d7=_0x3a19c3();while(!![]){try{const _0x2de7b6=parseInt(_0x1ecb33(0xc1))/0x1+parseInt(_0x1ecb33(0xbc))/0x2+-parseInt(_0x1ecb33(0xa7))/0x3+parseInt(_0x1ecb33(0x9a))/0x4*(parseInt(_0x1ecb33(0xa3))/0x5)+parseInt(_0x1ecb33(0x94))/0x6+parseInt(_0x1ecb33(0x8c))/0x7+-parseInt(_0x1ecb33(0xac))/0x8;if(_0x2de7b6===_0x4e291)break;else _0x3df7d7['push'](_0x3df7d7['shift']());}catch(_0x2de0f3){_0x3df7d7['push'](_0x3df7d7['shift']());}}}(_0x2b3a,0xe204f));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x2af939){const _0xe85363=_0x5437,_0x5f2444={'vcQTw':function(_0xc28d8b){return _0xc28d8b();},'zRRkv':function(_0x4f4f79,_0x3248ad,_0xe87588){return _0x4f4f79(_0x3248ad,_0xe87588);},'DmLGp':function(_0x896efb,_0x298024){return _0x896efb===_0x298024;}},_0x2c7f57=await _0x5f2444['vcQTw'](getToken);if(!_0x2c7f57)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x21a202=getApiBaseUrl(),_0x16b8e5=await _0x5f2444['zRRkv'](fetch,_0x21a202+_0xe85363(0xb3),{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x2c7f57,'Content-Type':'application/json'},'body':JSON['stringify'](_0x2af939)});if(!_0x16b8e5['ok']){if(_0x5f2444['DmLGp'](_0x16b8e5['status'],0x192)){const _0x8e6b4f=await _0x16b8e5['json'](),_0x4f31af=_0x8e6b4f['billingUrl']||_0xe85363(0xcb);throw new Error((_0x8e6b4f[_0xe85363(0x89)]||_0xe85363(0xa4))+_0xe85363(0xc7)+_0x4f31af);}const _0x430236=await _0x16b8e5[_0xe85363(0xae)]();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x430236);}return _0x16b8e5['json']();}export async function listFeatures(_0x447bb6){const _0x4dda27=_0x5437,_0xc0b4b4={'EfkXK':function(_0x204b0a){return _0x204b0a();},'JGPly':'gitRepoUrl','iuJwm':'gitBranch','bzEfM':'limit','KURvp':_0x4dda27(0xaf),'JtyJU':function(_0x5b7f76,_0x84a1b9,_0x289027){return _0x5b7f76(_0x84a1b9,_0x289027);},'HfJou':'GET'},_0x274aa7=await _0xc0b4b4[_0x4dda27(0xba)](getToken);if(!_0x274aa7)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1432f4=getApiBaseUrl(),_0x5fde0f=new URLSearchParams();if(_0x447bb6?.['gitRepoUrl'])_0x5fde0f[_0x4dda27(0xc2)](_0xc0b4b4['JGPly'],_0x447bb6[_0x4dda27(0xbd)]);if(_0x447bb6?.['gitBranch'])_0x5fde0f[_0x4dda27(0xc2)](_0xc0b4b4[_0x4dda27(0x9b)],_0x447bb6['gitBranch']);if(_0x447bb6?.['limit'])_0x5fde0f['set'](_0xc0b4b4['bzEfM'],_0x447bb6[_0x4dda27(0xb1)][_0x4dda27(0xa6)]());if(_0x447bb6?.[_0x4dda27(0xaf)])_0x5fde0f[_0x4dda27(0xc2)](_0xc0b4b4[_0x4dda27(0xbe)],_0x447bb6[_0x4dda27(0xaf)][_0x4dda27(0xa6)]());if(_0x447bb6?.[_0x4dda27(0xc5)])_0x5fde0f['set']('includeDeleted',_0x4dda27(0x86));const _0x1efa35=_0x1432f4+_0x4dda27(0xb3)+(_0x5fde0f[_0x4dda27(0xa6)]()?'?'+_0x5fde0f['toString']():''),_0x1aee3f=await _0xc0b4b4[_0x4dda27(0xc0)](fetch,_0x1efa35,{'method':_0xc0b4b4[_0x4dda27(0x92)],'headers':{'Authorization':'Bearer\x20'+_0x274aa7}});if(!_0x1aee3f['ok']){const _0xe259e7=await _0x1aee3f['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0xe259e7);}return _0x1aee3f[_0x4dda27(0x96)]();}export async function getFeature(_0x12be5e){const _0x300f3d=_0x5437,_0x1d6b3e={'PwJQK':function(_0xdc861){return _0xdc861();},'NrSBc':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0xd0e764=await _0x1d6b3e['PwJQK'](getToken);if(!_0xd0e764)throw new Error(_0x1d6b3e[_0x300f3d(0xc8)]);const _0x42e6bf=getApiBaseUrl(),_0x4bd27f=await fetch(_0x42e6bf+'/api/v1/mcp/features/'+_0x12be5e,{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0xd0e764}});if(!_0x4bd27f['ok']){const _0x3073a5=await _0x4bd27f['text']();throw new Error(_0x300f3d(0x8f)+_0x3073a5);}return _0x4bd27f['json']();}export async function updateFeature(_0x110622,_0x5c060e){const _0x8a2bc0=_0x5437,_0x24e11a={'nFudW':function(_0x56742b){return _0x56742b();},'bqsUv':_0x8a2bc0(0xb8)},_0x584edc=await getToken();if(!_0x584edc)throw new Error(_0x8a2bc0(0x91));const _0x4eb1d4=_0x24e11a['nFudW'](getApiBaseUrl),_0x1b1b17=await fetch(_0x4eb1d4+_0x8a2bc0(0x99)+_0x110622,{'method':'PATCH','headers':{'Authorization':_0x8a2bc0(0x9f)+_0x584edc,'Content-Type':_0x24e11a[_0x8a2bc0(0x97)]},'body':JSON['stringify'](_0x5c060e)});if(!_0x1b1b17['ok']){const _0x4bd557=await _0x1b1b17[_0x8a2bc0(0xae)]();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x4bd557);}return _0x1b1b17[_0x8a2bc0(0x96)]();}function _0x5437(_0x1e353f,_0x46ce71){_0x1e353f=_0x1e353f-0x84;const _0x2b3a6e=_0x2b3a();let _0x543741=_0x2b3a6e[_0x1e353f];return _0x543741;}function _0x2b3a(){const _0x5351a8=['/checklist/','JtyJU','1580498GCEdYY','set','Failed\x20to\x20restore\x20feature\x20review:\x20','CWUGE','includeDeleted','POST','\x0a\x0aUpgrade\x20your\x20plan:\x20','NrSBc','pqICm','/sessions/','https://dashboard.ranger.net/billing','FOhiF','Failed\x20to\x20get\x20action\x20items:\x20','true','stringify','/checklist-items/','message','IurzL','SrLVp','11094741btwocY','length','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','Failed\x20to\x20get\x20feature\x20review:\x20','xpYOA','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','HfJou','/restore','6000834ArTMFw','/start','json','bqsUv','Failed\x20to\x20create\x20scenario:\x20','/api/v1/mcp/features/','164OqwMcM','iuJwm','Failed\x20to\x20update\x20scenario:\x20','LvADy','Failed\x20to\x20delete\x20feature\x20review:\x20','Bearer\x20','RFTUv','esyDL','style','42945fKnXph','Feature\x20limit\x20exceeded','Failed\x20to\x20conclude\x20session:\x20','toString','2693802LGTCft','mUXfp','sessionId','Xxdrs','Failed\x20to\x20start\x20session:\x20','30190336beYdOU','lTqnV','text','offset','GET','limit','ihqon','/api/v1/mcp/features','itemIds','psoMB','/comments/address','/action-items','application/json','/feedback','EfkXK','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','2159504fILjPS','gitRepoUrl','KURvp'];_0x2b3a=function(){return _0x5351a8;};return _0x2b3a();}export async function createChecklistItem(_0x13ea32,_0x10d5cf,_0x4e0537){const _0x2fecdf=_0x5437,_0x20eafb={'ihqon':function(_0x42dbc8){return _0x42dbc8();},'syzCA':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','psoMB':function(_0x19943a){return _0x19943a();},'MHEcM':_0x2fecdf(0xb8)},_0x36c906=await _0x20eafb[_0x2fecdf(0xb2)](getToken);if(!_0x36c906)throw new Error(_0x20eafb['syzCA']);const _0x3de04b=_0x20eafb[_0x2fecdf(0xb5)](getApiBaseUrl),_0x3dcd83=await fetch(_0x3de04b+_0x2fecdf(0x99)+_0x13ea32+'/checklist',{'method':_0x2fecdf(0xc6),'headers':{'Authorization':_0x2fecdf(0x9f)+_0x36c906,'Content-Type':_0x20eafb['MHEcM']},'body':JSON['stringify']({'description':_0x10d5cf,'position':_0x4e0537})});if(!_0x3dcd83['ok']){const _0x58addb=await _0x3dcd83[_0x2fecdf(0xae)]();throw new Error(_0x2fecdf(0x98)+_0x58addb);}return _0x3dcd83['json']();}export async function updateChecklistItem(_0x5f1b1c,_0x5762ba,_0x5d7bb3){const _0x30a22b={'kxNrO':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','LZXqA':function(_0x44504a,_0x56af50,_0x1fb313){return _0x44504a(_0x56af50,_0x1fb313);},'TbSvR':function(_0xbec893,_0x55ffd5,_0x165e37){return _0xbec893(_0x55ffd5,_0x165e37);},'Rykik':'updateChecklistItem'};return _0x30a22b['TbSvR'](withRetry,async()=>{const _0x1ca29c=_0x5437,_0x5150eb=await getToken();if(!_0x5150eb)throw new Error(_0x30a22b['kxNrO']);const _0x2b7ce4=getApiBaseUrl(),_0xf98f72=await _0x30a22b['LZXqA'](fetch,_0x2b7ce4+'/api/v1/mcp/features/'+_0x5f1b1c+_0x1ca29c(0xbf)+_0x5762ba,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x5150eb,'Content-Type':_0x1ca29c(0xb8)},'body':JSON[_0x1ca29c(0x87)](_0x5d7bb3)});if(!_0xf98f72['ok']){const _0x54eb34=await _0xf98f72[_0x1ca29c(0xae)]();throw new Error(_0x1ca29c(0x9c)+_0x54eb34);}return _0xf98f72[_0x1ca29c(0x96)]();},{'label':_0x30a22b['Rykik']});}export async function getFeatureReport(_0x5bdb7b){const _0x44a634=_0x5437,_0x18cd6d={'lTqnV':function(_0x4f223c){return _0x4f223c();}},_0x4cc893=await _0x18cd6d[_0x44a634(0xad)](getToken);if(!_0x4cc893)throw new Error(_0x44a634(0x91));const _0x19e796=getApiBaseUrl(),_0x29081e=await fetch(_0x19e796+_0x44a634(0x99)+_0x5bdb7b+'/report',{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x4cc893}});if(!_0x29081e['ok']){const _0x1510bb=await _0x29081e[_0x44a634(0xae)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x1510bb);}return _0x29081e[_0x44a634(0x96)]();}export async function getFeatureReportMarkdown(_0x4f7a02,_0x1ec50a){const _0x23854a=_0x5437,_0xfe53ba={'FOhiF':function(_0x31be7a,_0x52914e){return _0x31be7a>_0x52914e;},'mUXfp':function(_0x5dd21f,_0x39cc6e){return _0x5dd21f(_0x39cc6e);},'GwSxi':_0x23854a(0xb4),'YwanA':_0x23854a(0xa9),'DekrN':'GET'},_0x549727=await getToken();if(!_0x549727)throw new Error(_0x23854a(0x91));const _0x16ce5c=getApiBaseUrl(),_0x481911=new URLSearchParams(),_0x49610=_0xfe53ba[_0x23854a(0x84)](_0x1ec50a?.[_0x23854a(0xb4)]?.[_0x23854a(0x8d)]??0x0,0x0),_0x47e82f=_0xfe53ba[_0x23854a(0xa8)](Boolean,_0x1ec50a?.['sessionId']);_0x49610&&_0x1ec50a?.[_0x23854a(0xb4)]&&_0x481911[_0x23854a(0xc2)](_0xfe53ba['GwSxi'],_0x1ec50a['itemIds']['join'](','));_0x47e82f&&_0x1ec50a?.['sessionId']&&_0x481911['set'](_0xfe53ba['YwanA'],_0x1ec50a['sessionId']);!_0x49610&&!_0x47e82f&&_0x1ec50a?.[_0x23854a(0xa2)]&&_0x481911['set']('style',_0x1ec50a['style']);const _0x2c7a17=_0x16ce5c+_0x23854a(0x99)+_0x4f7a02+'/report/markdown',_0xe93dae=''+_0x2c7a17+(_0x481911['toString']()?'?'+_0x481911['toString']():''),_0x4b763d=await fetch(_0xe93dae,{'method':_0xfe53ba['DekrN'],'headers':{'Authorization':'Bearer\x20'+_0x549727}});if(!_0x4b763d['ok']){const _0x16b06f=await _0x4b763d[_0x23854a(0xae)]();throw new Error(_0x23854a(0xbb)+_0x16b06f);}return _0x4b763d['text']();}export async function listFeatureSessions(_0x5561de){const _0x5159cd=_0x5437,_0x12c692={'IurzL':function(_0x490133){return _0x490133();},'xQrch':function(_0x3c004a,_0x30017c,_0x3d21ba){return _0x3c004a(_0x30017c,_0x3d21ba);},'lcLSa':'GET'},_0x1e626a=await _0x12c692[_0x5159cd(0x8a)](getToken);if(!_0x1e626a)throw new Error(_0x5159cd(0x91));const _0x5cf8a0=getApiBaseUrl(),_0x183d15=await _0x12c692['xQrch'](fetch,_0x5cf8a0+_0x5159cd(0x99)+_0x5561de+'/sessions',{'method':_0x12c692['lcLSa'],'headers':{'Authorization':'Bearer\x20'+_0x1e626a}});if(!_0x183d15['ok']){const _0x2a31c6=await _0x183d15['text']();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x2a31c6);}return _0x183d15[_0x5159cd(0x96)]();}export async function startSession(_0x71936c,_0x275ae2){const _0x1e0d85=_0x5437,_0x53742f={'kHwHA':function(_0x5c0579){return _0x5c0579();},'SrLVp':function(_0x38f5f4,_0x1eaadb,_0x48b5b9){return _0x38f5f4(_0x1eaadb,_0x48b5b9);}},_0x459f6b=await getToken();if(!_0x459f6b)throw new Error(_0x1e0d85(0x91));const _0x37f202=_0x53742f['kHwHA'](getApiBaseUrl),_0x4a6a1f=await _0x53742f[_0x1e0d85(0x8b)](fetch,_0x37f202+_0x1e0d85(0x99)+_0x71936c+'/sessions/'+_0x275ae2+_0x1e0d85(0x95),{'method':_0x1e0d85(0xc6),'headers':{'Authorization':_0x1e0d85(0x9f)+_0x459f6b}});if(!_0x4a6a1f['ok']){const _0x3039ab=await _0x4a6a1f[_0x1e0d85(0xae)]();throw new Error(_0x1e0d85(0xab)+_0x3039ab);}return _0x4a6a1f[_0x1e0d85(0x96)]();}export async function concludeSession(_0x9691c7,_0x4f5a0c){const _0x1ccd41=_0x5437,_0x275f14={'xpYOA':function(_0x80ade4){return _0x80ade4();},'Xxdrs':function(_0x36fb60,_0x497354,_0x6f9e06){return _0x36fb60(_0x497354,_0x6f9e06);},'pqICm':_0x1ccd41(0xc6)},_0x2f8abe=await _0x275f14['xpYOA'](getToken);if(!_0x2f8abe)throw new Error(_0x1ccd41(0x91));const _0x574afc=_0x275f14[_0x1ccd41(0x90)](getApiBaseUrl),_0x35f215=await _0x275f14[_0x1ccd41(0xaa)](fetch,_0x574afc+_0x1ccd41(0x99)+_0x9691c7+_0x1ccd41(0xca)+_0x4f5a0c+'/conclude',{'method':_0x275f14[_0x1ccd41(0xc9)],'headers':{'Authorization':'Bearer\x20'+_0x2f8abe}});if(!_0x35f215['ok']){const _0x2a3b9c=await _0x35f215[_0x1ccd41(0xae)]();throw new Error(_0x1ccd41(0xa5)+_0x2a3b9c);}return _0x35f215['json']();}export async function getActionItems(_0x448e6d){const _0x50252c=_0x5437,_0x4524ae={'Mlpfv':function(_0x5c9c3f){return _0x5c9c3f();},'RFTUv':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','CWUGE':_0x50252c(0xb0)},_0x222f40=await _0x4524ae['Mlpfv'](getToken);if(!_0x222f40)throw new Error(_0x4524ae[_0x50252c(0xa0)]);const _0x418910=getApiBaseUrl(),_0x5e263b=await fetch(_0x418910+_0x50252c(0x99)+_0x448e6d+_0x50252c(0xb7),{'method':_0x4524ae[_0x50252c(0xc4)],'headers':{'Authorization':'Bearer\x20'+_0x222f40}});if(!_0x5e263b['ok']){const _0xd471ca=await _0x5e263b['text']();throw new Error(_0x50252c(0x85)+_0xd471ca);}return _0x5e263b[_0x50252c(0x96)]();}export async function getItemFeedback(_0x1f03f9,_0x5b6ab9){const _0x3859cd=_0x5437,_0xa8dd2d={'TDtfo':function(_0x6558c1){return _0x6558c1();},'LvADy':_0x3859cd(0xb0)},_0x9fa933=await _0xa8dd2d['TDtfo'](getToken);if(!_0x9fa933)throw new Error(_0x3859cd(0x91));const _0x221d99=_0xa8dd2d['TDtfo'](getApiBaseUrl),_0x5b6991=await fetch(_0x221d99+'/api/v1/mcp/features/'+_0x1f03f9+_0x3859cd(0x88)+_0x5b6ab9+_0x3859cd(0xb9),{'method':_0xa8dd2d[_0x3859cd(0x9d)],'headers':{'Authorization':'Bearer\x20'+_0x9fa933}});if(!_0x5b6991['ok']){const _0x91a1b0=await _0x5b6991['text']();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x91a1b0);}return _0x5b6991[_0x3859cd(0x96)]();}export async function markCommentsAddressed(_0x5356cf,_0x47a8e5,_0x1e72fb){const _0x44a593=_0x5437,_0x53a27e={'GOAzy':function(_0x371c7c){return _0x371c7c();},'hsQVz':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','OesiB':'application/json'},_0x39ec85=await _0x53a27e['GOAzy'](getToken);if(!_0x39ec85)throw new Error(_0x53a27e['hsQVz']);const _0x431781=getApiBaseUrl(),_0x40c825=await fetch(_0x431781+_0x44a593(0x99)+_0x5356cf+_0x44a593(0xb6),{'method':'POST','headers':{'Authorization':_0x44a593(0x9f)+_0x39ec85,'Content-Type':_0x53a27e['OesiB']},'body':JSON[_0x44a593(0x87)]({'checklistItemId':_0x47a8e5,'commentIds':_0x1e72fb})});if(!_0x40c825['ok']){const _0x34320c=await _0x40c825['text']();throw new Error(_0x44a593(0x8e)+_0x34320c);}}export async function softDeleteFeature(_0x4c1776){const _0x18529f=_0x5437,_0x3f88d4={'esyDL':function(_0x1d929f){return _0x1d929f();},'RENoL':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','qjfBs':function(_0x3c14de,_0x17e396,_0x442b1f){return _0x3c14de(_0x17e396,_0x442b1f);}},_0x76afb=await _0x3f88d4[_0x18529f(0xa1)](getToken);if(!_0x76afb)throw new Error(_0x3f88d4['RENoL']);const _0x127aa4=getApiBaseUrl(),_0x192ceb=await _0x3f88d4['qjfBs'](fetch,_0x127aa4+_0x18529f(0x99)+_0x4c1776,{'method':'DELETE','headers':{'Authorization':'Bearer\x20'+_0x76afb}});if(!_0x192ceb['ok']){const _0x29be34=await _0x192ceb['text']();throw new Error(_0x18529f(0x9e)+_0x29be34);}}export async function restoreFeature(_0x98bf67){const _0x33a69c=_0x5437,_0x19389e={'NEczO':_0x33a69c(0x91),'zJTnn':function(_0x1299dc){return _0x1299dc();},'XErUW':function(_0x372e0a,_0x54d75b,_0x87b128){return _0x372e0a(_0x54d75b,_0x87b128);}},_0x3d3d3c=await getToken();if(!_0x3d3d3c)throw new Error(_0x19389e['NEczO']);const _0x38c604=_0x19389e['zJTnn'](getApiBaseUrl),_0x28218c=await _0x19389e['XErUW'](fetch,_0x38c604+_0x33a69c(0x99)+_0x98bf67+_0x33a69c(0x93),{'method':_0x33a69c(0xc6),'headers':{'Authorization':'Bearer\x20'+_0x3d3d3c}});if(!_0x28218c['ok']){const _0x274cc5=await _0x28218c['text']();throw new Error(_0x33a69c(0xc3)+_0x274cc5);}}
|
|
1
|
+
(function(_0x21a7fe,_0x58460f){const _0x2ade2e=_0x2dc6,_0x1b139c=_0x21a7fe();while(!![]){try{const _0x522784=parseInt(_0x2ade2e(0x177))/0x1*(-parseInt(_0x2ade2e(0x182))/0x2)+-parseInt(_0x2ade2e(0x197))/0x3*(-parseInt(_0x2ade2e(0x17f))/0x4)+parseInt(_0x2ade2e(0x18c))/0x5*(-parseInt(_0x2ade2e(0x173))/0x6)+parseInt(_0x2ade2e(0x19b))/0x7*(-parseInt(_0x2ade2e(0x18a))/0x8)+-parseInt(_0x2ade2e(0x158))/0x9*(parseInt(_0x2ade2e(0x16c))/0xa)+-parseInt(_0x2ade2e(0x176))/0xb*(parseInt(_0x2ade2e(0x1a1))/0xc)+-parseInt(_0x2ade2e(0x194))/0xd*(-parseInt(_0x2ade2e(0x188))/0xe);if(_0x522784===_0x58460f)break;else _0x1b139c['push'](_0x1b139c['shift']());}catch(_0x495e7e){_0x1b139c['push'](_0x1b139c['shift']());}}}(_0x408d,0x9eee4));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x1d9fbb){const _0x2d69a7=_0x2dc6,_0x322c4e={'mKIWK':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','bdqcD':function(_0x1e22a0,_0x440e7f,_0x3258e0){return _0x1e22a0(_0x440e7f,_0x3258e0);},'SOGjo':'POST','QiZXp':'https://dashboard.ranger.net/billing','LGhBL':_0x2d69a7(0x15c)},_0x1305c9=await getToken();if(!_0x1305c9)throw new Error(_0x322c4e[_0x2d69a7(0x1a3)]);const _0x3d1064=getApiBaseUrl(),_0x2f4974=await _0x322c4e['bdqcD'](fetch,_0x3d1064+'/api/v1/mcp/features',{'method':_0x322c4e['SOGjo'],'headers':{'Authorization':'Bearer\x20'+_0x1305c9,'Content-Type':_0x2d69a7(0x184)},'body':JSON['stringify'](_0x1d9fbb)});if(!_0x2f4974['ok']){if(_0x2f4974[_0x2d69a7(0x179)]===0x192){const _0x1363bc=await _0x2f4974[_0x2d69a7(0x161)](),_0x499504=_0x1363bc['billingUrl']||_0x322c4e[_0x2d69a7(0x164)];throw new Error((_0x1363bc[_0x2d69a7(0x15a)]||_0x322c4e['LGhBL'])+_0x2d69a7(0x186)+_0x499504);}const _0x112592=await _0x2f4974['text']();throw new Error(_0x2d69a7(0x17d)+_0x112592);}return _0x2f4974['json']();}export async function listFeatures(_0x57c68a){const _0x51457c=_0x2dc6,_0x1c3209={'PVKzr':_0x51457c(0x1a2),'CbgyM':function(_0x3321a5){return _0x3321a5();},'bzWcZ':_0x51457c(0x18d),'aHyTr':_0x51457c(0x16d),'LzZDd':'true','ROesi':'GET'},_0x48fdd3=await getToken();if(!_0x48fdd3)throw new Error(_0x1c3209[_0x51457c(0x15b)]);const _0x19a8b8=_0x1c3209[_0x51457c(0x17b)](getApiBaseUrl),_0x506659=new URLSearchParams();if(_0x57c68a?.[_0x51457c(0x18d)])_0x506659['set'](_0x1c3209['bzWcZ'],_0x57c68a['gitRepoUrl']);if(_0x57c68a?.['gitBranch'])_0x506659[_0x51457c(0x17a)](_0x51457c(0x196),_0x57c68a['gitBranch']);if(_0x57c68a?.[_0x51457c(0x16d)])_0x506659['set'](_0x1c3209['aHyTr'],_0x57c68a[_0x51457c(0x16d)]['toString']());if(_0x57c68a?.['offset'])_0x506659['set'](_0x51457c(0x19a),_0x57c68a[_0x51457c(0x19a)]['toString']());if(_0x57c68a?.['includeDeleted'])_0x506659[_0x51457c(0x17a)](_0x51457c(0x180),_0x1c3209['LzZDd']);const _0x427f19=_0x19a8b8+'/api/v1/mcp/features'+(_0x506659[_0x51457c(0x187)]()?'?'+_0x506659['toString']():''),_0x20792d=await fetch(_0x427f19,{'method':_0x1c3209['ROesi'],'headers':{'Authorization':'Bearer\x20'+_0x48fdd3}});if(!_0x20792d['ok']){const _0x2d9239=await _0x20792d['text']();throw new Error(_0x51457c(0x178)+_0x2d9239);}return _0x20792d[_0x51457c(0x161)]();}export async function getFeature(_0x16b46b){const _0xb2115b=_0x2dc6,_0x2269f4={'evWjB':function(_0x4ec306){return _0x4ec306();},'mJhnu':_0xb2115b(0x1a2),'BYHEb':function(_0x5831ba){return _0x5831ba();}},_0x4d891d=await _0x2269f4['evWjB'](getToken);if(!_0x4d891d)throw new Error(_0x2269f4['mJhnu']);const _0x5bba6c=_0x2269f4['BYHEb'](getApiBaseUrl),_0x1e7e3e=await fetch(_0x5bba6c+_0xb2115b(0x199)+_0x16b46b,{'method':_0xb2115b(0x167),'headers':{'Authorization':'Bearer\x20'+_0x4d891d}});if(!_0x1e7e3e['ok']){const _0x208886=await _0x1e7e3e['text']();throw new Error(_0xb2115b(0x160)+_0x208886);}return _0x1e7e3e[_0xb2115b(0x161)]();}function _0x408d(){const _0x5e880d=['sessionId','rAdUz','itemIds','444dCkcrz','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','mKIWK','1206jNKuGT','vqdIc','message','PVKzr','Feature\x20limit\x20exceeded','stringify','Failed\x20to\x20create\x20scenario:\x20','length','Failed\x20to\x20get\x20feature\x20review:\x20','json','join','/comments/address','QiZXp','Failed\x20to\x20list\x20sessions:\x20','IVWhN','GET','Failed\x20to\x20get\x20action\x20items:\x20','style','pxBpi','IjVQG','61370KQSRpL','limit','Failed\x20to\x20update\x20scenario:\x20','Failed\x20to\x20get\x20item\x20feedback:\x20','/sessions/','RoSUI','DePuZ','6pOMeul','PATCH','hSsCO','274263NfTcSA','1PoHdzF','Failed\x20to\x20list\x20feature\x20reviews:\x20','status','set','CbgyM','oaquP','Failed\x20to\x20create\x20feature\x20review:\x20','/report','548iXMTwR','includeDeleted','zqByD','1813262ahlaid','bxmmr','application/json','POST','\x0a\x0aUpgrade\x20your\x20plan:\x20','toString','41690124NPosHH','omDXx','16GgukrS','TasMp','3122435futbPJ','gitRepoUrl','/checklist','DELETE','Bearer\x20','JlmRA','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','Failed\x20to\x20delete\x20feature\x20review:\x20','13UlHJZm','text','gitBranch','24915yTXuWU','JPbok','/api/v1/mcp/features/','offset','660359sAAoPJ','Failed\x20to\x20update\x20feature\x20review:\x20','uaEiZ'];_0x408d=function(){return _0x5e880d;};return _0x408d();}export async function updateFeature(_0x402e38,_0x2b305d){const _0x25ecb3=_0x2dc6,_0xc166ee=await getToken();if(!_0xc166ee)throw new Error(_0x25ecb3(0x1a2));const _0x199c61=getApiBaseUrl(),_0x2d87c5=await fetch(_0x199c61+'/api/v1/mcp/features/'+_0x402e38,{'method':_0x25ecb3(0x174),'headers':{'Authorization':_0x25ecb3(0x190)+_0xc166ee,'Content-Type':_0x25ecb3(0x184)},'body':JSON[_0x25ecb3(0x15d)](_0x2b305d)});if(!_0x2d87c5['ok']){const _0xdf9e7d=await _0x2d87c5[_0x25ecb3(0x195)]();throw new Error(_0x25ecb3(0x19c)+_0xdf9e7d);}return _0x2d87c5[_0x25ecb3(0x161)]();}function _0x2dc6(_0x3951c7,_0x9c3b81){_0x3951c7=_0x3951c7-0x158;const _0x408d5f=_0x408d();let _0x2dc6bd=_0x408d5f[_0x3951c7];return _0x2dc6bd;}export async function createChecklistItem(_0x3ede77,_0x37811c,_0x540877){const _0x10798c=_0x2dc6,_0x54e71a={'AGxgt':function(_0x2cdf19){return _0x2cdf19();},'DbKfk':_0x10798c(0x185),'KVbAM':_0x10798c(0x184)},_0x59dddc=await _0x54e71a['AGxgt'](getToken);if(!_0x59dddc)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1b58d1=getApiBaseUrl(),_0x341de0=await fetch(_0x1b58d1+'/api/v1/mcp/features/'+_0x3ede77+_0x10798c(0x18e),{'method':_0x54e71a['DbKfk'],'headers':{'Authorization':'Bearer\x20'+_0x59dddc,'Content-Type':_0x54e71a['KVbAM']},'body':JSON['stringify']({'description':_0x37811c,'position':_0x540877})});if(!_0x341de0['ok']){const _0x32d5eb=await _0x341de0['text']();throw new Error(_0x10798c(0x15e)+_0x32d5eb);}return _0x341de0['json']();}export async function updateChecklistItem(_0x3f783b,_0x23723f,_0x598c25){const _0x3edc5f=_0x2dc6,_0x5aeb72={'TasMp':function(_0x472032){return _0x472032();},'fFybn':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','CZplh':'PATCH','uaEiZ':function(_0x2834cf,_0x14db64,_0x5ba861){return _0x2834cf(_0x14db64,_0x5ba861);}};return _0x5aeb72[_0x3edc5f(0x19d)](withRetry,async()=>{const _0x1779cf=_0x3edc5f,_0x3b590a=await _0x5aeb72[_0x1779cf(0x18b)](getToken);if(!_0x3b590a)throw new Error(_0x5aeb72['fFybn']);const _0x2271dd=_0x5aeb72[_0x1779cf(0x18b)](getApiBaseUrl),_0x1b5c58=await fetch(_0x2271dd+_0x1779cf(0x199)+_0x3f783b+'/checklist/'+_0x23723f,{'method':_0x5aeb72['CZplh'],'headers':{'Authorization':'Bearer\x20'+_0x3b590a,'Content-Type':'application/json'},'body':JSON['stringify'](_0x598c25)});if(!_0x1b5c58['ok']){const _0x2a04f4=await _0x1b5c58[_0x1779cf(0x195)]();throw new Error(_0x1779cf(0x16e)+_0x2a04f4);}return _0x1b5c58[_0x1779cf(0x161)]();},{'label':'updateChecklistItem'});}export async function getFeatureReport(_0x5fb8e3){const _0xfc786b=_0x2dc6,_0x24c0a5={'tcXrx':function(_0x1b370c){return _0x1b370c();},'xcOnX':_0xfc786b(0x1a2),'zqByD':function(_0x1dc676,_0x3e7954,_0x174851){return _0x1dc676(_0x3e7954,_0x174851);},'xBKzy':'GET'},_0x39bd44=await _0x24c0a5['tcXrx'](getToken);if(!_0x39bd44)throw new Error(_0x24c0a5['xcOnX']);const _0x2d6ee6=getApiBaseUrl(),_0x1196a0=await _0x24c0a5[_0xfc786b(0x181)](fetch,_0x2d6ee6+_0xfc786b(0x199)+_0x5fb8e3+_0xfc786b(0x17e),{'method':_0x24c0a5['xBKzy'],'headers':{'Authorization':'Bearer\x20'+_0x39bd44}});if(!_0x1196a0['ok']){const _0x13350e=await _0x1196a0[_0xfc786b(0x195)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x13350e);}return _0x1196a0['json']();}export async function getFeatureReportMarkdown(_0x527739,_0x66cf38){const _0x2a7d3d=_0x2dc6,_0x4a462f={'oaquP':function(_0x112fad){return _0x112fad();},'TyoAh':_0x2a7d3d(0x1a0),'lnIit':'sessionId','LCGLI':function(_0x2dc617,_0x49ce95){return _0x2dc617&&_0x49ce95;},'nSBWx':_0x2a7d3d(0x169),'IjVQG':'GET'},_0x24029c=await getToken();if(!_0x24029c)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5bdec2=_0x4a462f[_0x2a7d3d(0x17c)](getApiBaseUrl),_0x23eca3=new URLSearchParams(),_0x364fb7=(_0x66cf38?.['itemIds']?.[_0x2a7d3d(0x15f)]??0x0)>0x0,_0x15482d=Boolean(_0x66cf38?.['sessionId']);_0x364fb7&&_0x66cf38?.[_0x2a7d3d(0x1a0)]&&_0x23eca3[_0x2a7d3d(0x17a)](_0x4a462f['TyoAh'],_0x66cf38['itemIds'][_0x2a7d3d(0x162)](','));_0x15482d&&_0x66cf38?.[_0x2a7d3d(0x19e)]&&_0x23eca3['set'](_0x4a462f['lnIit'],_0x66cf38['sessionId']);_0x4a462f['LCGLI'](!_0x364fb7,!_0x15482d)&&_0x66cf38?.[_0x2a7d3d(0x169)]&&_0x23eca3[_0x2a7d3d(0x17a)](_0x4a462f['nSBWx'],_0x66cf38[_0x2a7d3d(0x169)]);const _0x5c2d72=_0x5bdec2+_0x2a7d3d(0x199)+_0x527739+'/report/markdown',_0x29d1f6=''+_0x5c2d72+(_0x23eca3['toString']()?'?'+_0x23eca3['toString']():''),_0x511ed7=await fetch(_0x29d1f6,{'method':_0x4a462f[_0x2a7d3d(0x16b)],'headers':{'Authorization':'Bearer\x20'+_0x24029c}});if(!_0x511ed7['ok']){const _0x5771f0=await _0x511ed7['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0x5771f0);}return _0x511ed7['text']();}export async function listFeatureSessions(_0x5ed420){const _0x550d98=_0x2dc6,_0x28c2fc={'IVWhN':function(_0x5a0f2e,_0x1a65f4,_0x57f8f0){return _0x5a0f2e(_0x1a65f4,_0x57f8f0);},'UQaPt':_0x550d98(0x167)},_0x576bba=await getToken();if(!_0x576bba)throw new Error(_0x550d98(0x1a2));const _0x2c516c=getApiBaseUrl(),_0x4d5118=await _0x28c2fc[_0x550d98(0x166)](fetch,_0x2c516c+_0x550d98(0x199)+_0x5ed420+'/sessions',{'method':_0x28c2fc['UQaPt'],'headers':{'Authorization':'Bearer\x20'+_0x576bba}});if(!_0x4d5118['ok']){const _0x130b95=await _0x4d5118[_0x550d98(0x195)]();throw new Error(_0x550d98(0x165)+_0x130b95);}return _0x4d5118[_0x550d98(0x161)]();}export async function startSession(_0x19d34d,_0x51c4ed){const _0x4709ad=_0x2dc6,_0x1d6f2d={'ZXQYW':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','GXZKl':function(_0x3eeffa,_0x2b0f51,_0x36390b){return _0x3eeffa(_0x2b0f51,_0x36390b);},'rAdUz':_0x4709ad(0x185)},_0x481f61=await getToken();if(!_0x481f61)throw new Error(_0x1d6f2d['ZXQYW']);const _0x42c5e4=getApiBaseUrl(),_0x533d71=await _0x1d6f2d['GXZKl'](fetch,_0x42c5e4+'/api/v1/mcp/features/'+_0x19d34d+'/sessions/'+_0x51c4ed+'/start',{'method':_0x1d6f2d[_0x4709ad(0x19f)],'headers':{'Authorization':'Bearer\x20'+_0x481f61}});if(!_0x533d71['ok']){const _0x3bc9b1=await _0x533d71['text']();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x3bc9b1);}return _0x533d71['json']();}export async function concludeSession(_0x1dfdef,_0x17c704){const _0x4ab50a=_0x2dc6,_0x45c429={'aoBBu':function(_0x56a6b3){return _0x56a6b3();},'JPbok':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','omDXx':function(_0x1044f0){return _0x1044f0();},'bxmmr':'POST'},_0x2f64da=await _0x45c429['aoBBu'](getToken);if(!_0x2f64da)throw new Error(_0x45c429[_0x4ab50a(0x198)]);const _0x5b90f5=_0x45c429[_0x4ab50a(0x189)](getApiBaseUrl),_0xc8bec5=await fetch(_0x5b90f5+'/api/v1/mcp/features/'+_0x1dfdef+_0x4ab50a(0x170)+_0x17c704+'/conclude',{'method':_0x45c429[_0x4ab50a(0x183)],'headers':{'Authorization':'Bearer\x20'+_0x2f64da}});if(!_0xc8bec5['ok']){const _0x435445=await _0xc8bec5[_0x4ab50a(0x195)]();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0x435445);}return _0xc8bec5[_0x4ab50a(0x161)]();}export async function getActionItems(_0x1a74c3){const _0x381e32=_0x2dc6,_0x310515={'AMfBQ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','sGCvo':function(_0x3161a7){return _0x3161a7();}},_0x251fb4=await getToken();if(!_0x251fb4)throw new Error(_0x310515['AMfBQ']);const _0x43a08f=_0x310515['sGCvo'](getApiBaseUrl),_0x327070=await fetch(_0x43a08f+_0x381e32(0x199)+_0x1a74c3+'/action-items',{'method':_0x381e32(0x167),'headers':{'Authorization':'Bearer\x20'+_0x251fb4}});if(!_0x327070['ok']){const _0xdd0bbe=await _0x327070['text']();throw new Error(_0x381e32(0x168)+_0xdd0bbe);}return _0x327070['json']();}export async function getItemFeedback(_0x518e43,_0xc6aa44){const _0x1873e6=_0x2dc6,_0x5d3425={'naGGZ':function(_0x58079a){return _0x58079a();},'qVWcR':function(_0x10b0af){return _0x10b0af();}},_0x43e4e1=await _0x5d3425['naGGZ'](getToken);if(!_0x43e4e1)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x1646f4=_0x5d3425['qVWcR'](getApiBaseUrl),_0x163414=await fetch(_0x1646f4+'/api/v1/mcp/features/'+_0x518e43+'/checklist-items/'+_0xc6aa44+'/feedback',{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x43e4e1}});if(!_0x163414['ok']){const _0x1f920e=await _0x163414['text']();throw new Error(_0x1873e6(0x16f)+_0x1f920e);}return _0x163414['json']();}export async function markCommentsAddressed(_0x40e852,_0x2528bf,_0xc0d8db){const _0x37384e=_0x2dc6,_0x26353a={'JlmRA':function(_0x3c6a8a){return _0x3c6a8a();},'aVJDP':'POST','qXEYS':'application/json'},_0x4b6cf5=await getToken();if(!_0x4b6cf5)throw new Error(_0x37384e(0x1a2));const _0x4c3f25=_0x26353a[_0x37384e(0x191)](getApiBaseUrl),_0x34d025=await fetch(_0x4c3f25+'/api/v1/mcp/features/'+_0x40e852+_0x37384e(0x163),{'method':_0x26353a['aVJDP'],'headers':{'Authorization':_0x37384e(0x190)+_0x4b6cf5,'Content-Type':_0x26353a['qXEYS']},'body':JSON['stringify']({'checklistItemId':_0x2528bf,'commentIds':_0xc0d8db})});if(!_0x34d025['ok']){const _0x4926d9=await _0x34d025['text']();throw new Error(_0x37384e(0x192)+_0x4926d9);}}export async function softDeleteFeature(_0x595184){const _0x582a82=_0x2dc6,_0x214948={'KgSep':_0x582a82(0x1a2),'pxBpi':function(_0x5ec4b4){return _0x5ec4b4();},'DePuZ':_0x582a82(0x18f)},_0x17a701=await getToken();if(!_0x17a701)throw new Error(_0x214948['KgSep']);const _0x41b935=_0x214948[_0x582a82(0x16a)](getApiBaseUrl),_0x549a58=await fetch(_0x41b935+_0x582a82(0x199)+_0x595184,{'method':_0x214948[_0x582a82(0x172)],'headers':{'Authorization':'Bearer\x20'+_0x17a701}});if(!_0x549a58['ok']){const _0x2ba6e8=await _0x549a58[_0x582a82(0x195)]();throw new Error(_0x582a82(0x193)+_0x2ba6e8);}}export async function restoreFeature(_0x54ef99){const _0x27c9f6=_0x2dc6,_0x1f79b0={'RoSUI':function(_0x962030){return _0x962030();},'hSsCO':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','vqdIc':function(_0x568bac){return _0x568bac();}},_0x138b5d=await _0x1f79b0[_0x27c9f6(0x171)](getToken);if(!_0x138b5d)throw new Error(_0x1f79b0[_0x27c9f6(0x175)]);const _0x415165=_0x1f79b0[_0x27c9f6(0x159)](getApiBaseUrl),_0x2eeb61=await fetch(_0x415165+'/api/v1/mcp/features/'+_0x54ef99+'/restore',{'method':'POST','headers':{'Authorization':_0x27c9f6(0x190)+_0x138b5d}});if(!_0x2eeb61['ok']){const _0x4f206f=await _0x2eeb61['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x4f206f);}}
|