@ranger-testing/ranger-cli 3.1.2 → 3.1.3-alpha.2c5eb8e-44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/sessionCache.js +1 -1
  71. package/build/commands/utils/settings.js +1 -1
  72. package/build/commands/utils/skillContent.js +1 -1
  73. package/build/commands/utils/skills.js +1 -1
  74. package/build/commands/utils/stitchWebmFiles.js +1 -1
  75. package/build/commands/utils/telemetry.js +1 -1
  76. package/build/commands/utils/tokenRefresh.js +1 -1
  77. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  78. package/build/commands/utils/tunnelClient.js +1 -1
  79. package/build/commands/utils/userApi.js +1 -1
  80. package/build/commands/utils/version.js +1 -1
  81. package/build/commands/verifyFeature.js +1 -1
  82. package/build/commands/verifyFeatureCli.js +1 -1
  83. package/build/commands/verifyFeatureNovaCli.js +1 -1
  84. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  85. package/package.json +2 -2
@@ -1 +1 @@
1
- (function(_0x73f870,_0x3f4311){const _0x3c5b23=_0x359e,_0x48fa94=_0x73f870();while(!![]){try{const _0x16ee63=-parseInt(_0x3c5b23(0xb0))/0x1+parseInt(_0x3c5b23(0xd5))/0x2+-parseInt(_0x3c5b23(0xba))/0x3*(parseInt(_0x3c5b23(0xdb))/0x4)+parseInt(_0x3c5b23(0x8b))/0x5+-parseInt(_0x3c5b23(0xdd))/0x6*(-parseInt(_0x3c5b23(0xd8))/0x7)+parseInt(_0x3c5b23(0xc8))/0x8+parseInt(_0x3c5b23(0x75))/0x9*(-parseInt(_0x3c5b23(0x88))/0xa);if(_0x16ee63===_0x3f4311)break;else _0x48fa94['push'](_0x48fa94['shift']());}catch(_0x1a6d63){_0x48fa94['push'](_0x48fa94['shift']());}}}(_0x46c2,0x795bf));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x1a69e1 from'inquirer';function _0x359e(_0x29d34e,_0x3e95f3){_0x29d34e=_0x29d34e-0x6c;const _0x46c265=_0x46c2();let _0x359ee5=_0x46c265[_0x29d34e];return _0x359ee5;}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';function targetHostForTelemetry(_0x382862){const _0x351a09=_0x359e;try{return new URL(_0x382862)['host'];}catch{return _0x351a09(0xbf);}}function errorMessageForTelemetry(_0x23a3af){const _0x1ac2ee=_0x359e,_0x1c2f76={'cnZje':function(_0xe3f0e1,_0x4aebf1){return _0xe3f0e1 instanceof _0x4aebf1;}};return _0x1c2f76[_0x1ac2ee(0xd3)](_0x23a3af,Error)?_0x23a3af['message']:undefined;}function trackBridgeEvent(_0xbe1402,_0x374204){const _0x5dd73d=_0x359e,_0x2e91e3={'QofAa':_0x5dd73d(0xf7),'RqpFb':function(_0x10d798,_0x464eb5){return _0x10d798===_0x464eb5;},'Wsznc':_0x5dd73d(0x9d)};if(!_0xbe1402)return;const _0x446c38={'tunnelSessionId':_0x374204['sessionId'],'tunnelEventType':_0x374204[_0x5dd73d(0xa6)],'connectionId':_0x374204['connectionId'],'code':_0x374204['code'],'reason':_0x374204['reason'],'error':_0x374204['error'],'elapsedMs':_0x374204[_0x5dd73d(0xcd)],'activeLocalConnections':_0x374204['activeLocalConnections'],'pendingLocalConnections':_0x374204[_0x5dd73d(0x96)]};_0xbe1402[_0x5dd73d(0x89)]('tunnel_bridge_event',_0x446c38),(_0x374204['type']===_0x2e91e3['QofAa']||_0x2e91e3['RqpFb'](_0x374204['type'],_0x5dd73d(0x93)))&&void _0xbe1402[_0x5dd73d(0xf6)](_0x2e91e3['Wsznc'],new Error(_0x374204['error']??_0x374204['type']),_0x446c38);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0xcfbf4b=_0x359e,_0x4f48f1={'wrnul':function(_0x5dcecb){return _0x5dcecb();}},_0x55d518=await _0x4f48f1[_0xcfbf4b(0xe5)](getToken);if(!_0x55d518)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');return _0x55d518;}async function apiRequest(_0x463313,_0x4c4d02={}){const _0x4d9e71=_0x359e,_0x1c7937={'VmGHN':function(_0x42bd55){return _0x42bd55();},'FfbLU':function(_0x5c9612,_0x17a29a){return _0x5c9612===_0x17a29a;},'oPEIy':_0x4d9e71(0xb1)},_0x524366=await _0x1c7937[_0x4d9e71(0xb7)](requireToken),_0xbf8d32=getApiBaseUrl(),_0x25d8b7=await fetch(''+_0xbf8d32+_0x463313,{..._0x4c4d02,'headers':{'Authorization':_0x4d9e71(0x8e)+_0x524366,'Content-Type':'application/json',..._0x4c4d02['headers']??{}}});if(!_0x25d8b7['ok']){let _0x39c644='',_0x40035b;try{const _0x246d48=await _0x25d8b7['json']();_0x39c644=(_0x1c7937[_0x4d9e71(0xf0)](typeof _0x246d48['error'],'string')?_0x246d48[_0x4d9e71(0xc3)]:undefined)??JSON[_0x4d9e71(0xbe)](_0x246d48);if(typeof _0x246d48['code']===_0x1c7937['oPEIy'])_0x40035b=_0x246d48[_0x4d9e71(0x70)];}catch{_0x39c644=_0x25d8b7['statusText'];}throw new ApiError('API\x20request\x20'+_0x463313+'\x20failed\x20('+_0x25d8b7['status']+_0x4d9e71(0xfc)+_0x39c644,_0x25d8b7['status'],_0x39c644,_0x40035b);}if(_0x25d8b7[_0x4d9e71(0x8a)]===0xcc)return undefined;return _0x25d8b7['json']();}export class ApiError extends Error{['status'];['detail'];['code'];constructor(_0x180ee7,_0x229556,_0x326b6f,_0x245f5c){const _0x4cc270=_0x359e,_0x1128b8='2|1|0|3|4'[_0x4cc270(0x84)]('|');let _0x33c561=0x0;while(!![]){switch(_0x1128b8[_0x33c561++]){case'0':this[_0x4cc270(0xa0)]=_0x326b6f;continue;case'1':this['status']=_0x229556;continue;case'2':super(_0x180ee7);continue;case'3':this['code']=_0x245f5c;continue;case'4':this['name']='ApiError';continue;}break;}}}export async function fetchCloudProfile(_0x4c9add){const _0x31105e=_0x359e;try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x4c9add));}catch(_0xa57594){if(_0xa57594 instanceof ApiError&&_0xa57594[_0x31105e(0x8a)]===0x194)return null;throw _0xa57594;}}export async function listCloudProfiles(){const _0x2972e4=_0x359e,_0x5ab2e8={'AwdbE':function(_0x29d135,_0x13c41d){return _0x29d135(_0x13c41d);}},_0x5ec9ae=await _0x5ab2e8[_0x2972e4(0x7a)](apiRequest,'/api/v1/profiles');return _0x5ec9ae['profiles'];}export async function deleteCloudProfile(_0x419207){const _0x4bb39f=_0x359e,_0x1b6715={'WMSBq':function(_0x1753e1,_0x25ff65){return _0x1753e1(_0x25ff65);},'pvZof':_0x4bb39f(0x85)};try{await apiRequest('/api/v1/profiles/'+_0x1b6715['WMSBq'](encodeURIComponent,_0x419207),{'method':_0x1b6715['pvZof']});}catch(_0x50626e){if(_0x50626e instanceof ApiError&&_0x50626e[_0x4bb39f(0x8a)]===0x194)throw new Error('Cloud\x20profile\x20\x22'+_0x419207+_0x4bb39f(0xf9));throw _0x50626e;}}function _0x46c2(){const _0x227ce6=['target_url','mycsM','local_ws_error','\x20\x20Cached\x20session\x20for\x20\x22','toISOString','pendingLocalConnections','auth_config','aReJL','close','WkDVZ','name','log','tunnel_bridge','then','env','detail','domains','targetUrl','/api/v1/profiles/','\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22','success','type','sessionId','prompt','join','organizationId','qayYO','UznxG','gpcBO','rNJXY','telemetry','69581NHqrJK','string','rsscw','username','pwEndpoint','LWtbt','cli:manual-login','VmGHN','extraHTTPHeaders','vsoTE','58413DWkDyG','cookies','tunnel_login_setup','\x22;\x20proceeding\x20with\x20loginInstructions.','stringify','invalid-url','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','trim','uhdse','error','\x22\x20failed\x20validation\x20—\x20refreshing...','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','loginInstructions','aJdkD','2231312hdtvyX','\x20\x20Cloud\x20session\x20for\x20\x22','url','message','auth','elapsedMs','BVtXr','about:blank','\x20\x20No\x20live\x20session\x20for\x20\x22','catch','map','cnZje','Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.','941626euIKCW','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','tunnel_login_request','7sLxfgE','LHwnO','RANGER_TEST_USERNAME','52GYnqwZ','save','570012NbndqW','test_output','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','sessionCheckPath','XJPSl','ReNQt','VSBbB','length','wrnul','session_state','BVLiO','defaultEnvironmentKey','zcLOx','storageState','trackPhaseStart','Browser\x20login\x20timed\x20out\x20before\x20completion.','environment_key','baseUrl','wJQwh','FfbLU','force','launch','\x22,\x20attempting\x20login...','TcQOW','goto','trackPhaseError','tunnel_error','tSZgs','\x22\x20not\x20found.','xxhNP','storageStatePath','):\x20','tIkDZ',').\x20','IYwOJ','/api/v1/profiles/auth-config','tunnelUrl','xJltv','/api/v1/profiles','keys','code','tunnel','jxpZE','browserOptions','settings','259137cpLuht','userAgent','utf-8','some','password','AwdbE','GxRyV','skTRC','rlDTW','clientIp','PUT','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','vQcrv','setupHeaders','environments','split','DELETE','\x22\x20for\x20','RwoqB','270xYLBvx','trackPhaseEnd','status','3762365QTAhze','origin','isArray','Bearer\x20','agent','POST'];_0x46c2=function(){return _0x227ce6;};return _0x46c2();}export async function createCloudProfile(_0x598ba6,_0xd2ce9a,_0x2eca93={}){const _0x5582d6=_0x359e,_0x718f={'VAuxC':function(_0x4f3d08,_0xcb624c){return _0x4f3d08>_0xcb624c;},'nsEnQ':_0x5582d6(0x6e)},_0x5d7cc4={'name':_0x598ba6};if(_0xd2ce9a)_0x5d7cc4[_0x5582d6(0xed)]=_0xd2ce9a;_0x2eca93['settings']&&_0x718f['VAuxC'](Object[_0x5582d6(0x6f)](_0x2eca93['settings'])[_0x5582d6(0xe4)],0x0)&&(_0x5d7cc4[_0x5582d6(0x74)]=_0x2eca93[_0x5582d6(0x74)]);if(_0x2eca93['username'])_0x5d7cc4[_0x5582d6(0xb3)]=_0x2eca93['username'];if(_0x2eca93['password'])_0x5d7cc4['password']=_0x2eca93['password'];return await apiRequest(_0x718f['nsEnQ'],{'method':'POST','body':JSON['stringify'](_0x5d7cc4)});}export async function uploadCloudProfileSession(_0x4f5d7d,_0x1157dd){const _0x45d679=_0x359e,_0x3a2ca2={'XiYut':function(_0x579b75,_0x58e45c,_0x55c43c){return _0x579b75(_0x58e45c,_0x55c43c);},'BHCFC':function(_0x25338f,_0x55bbc4){return _0x25338f(_0x55bbc4);},'TCpjR':'POST'};return await _0x3a2ca2['XiYut'](apiRequest,_0x45d679(0xa3)+_0x3a2ca2['BHCFC'](encodeURIComponent,_0x4f5d7d)+'/session',{'method':_0x3a2ca2['TCpjR'],'body':JSON[_0x45d679(0xbe)]({'session_state':_0x1157dd})});}export async function saveCloudProfileCredentials(_0x73b1a5,_0x4a8b4b,_0x38249d){const _0x369e86=_0x359e,_0x3796a5={'puiAn':function(_0x797e7b,_0x3a2f2d,_0x498ff0){return _0x797e7b(_0x3a2f2d,_0x498ff0);}};await _0x3796a5['puiAn'](apiRequest,_0x369e86(0xa3)+encodeURIComponent(_0x73b1a5),{'method':'PUT','body':JSON[_0x369e86(0xbe)]({'username':_0x4a8b4b,'password':_0x38249d})});}export async function fetchAuthConfig(){const _0x2d64af=_0x359e,_0x313211={'tIkDZ':function(_0x597164,_0x3123d9){return _0x597164(_0x3123d9);},'cKnCc':_0x2d64af(0x100)};try{const _0x107c32=await _0x313211[_0x2d64af(0xfd)](apiRequest,_0x313211['cKnCc']);return _0x107c32[_0x2d64af(0x97)];}catch(_0x572b6b){return _0x572b6b instanceof ApiError&&_0x572b6b['status']!==0x194&&console[_0x2d64af(0xc3)]('\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20'+_0x572b6b[_0x2d64af(0xcb)]),null;}}async function createTunnelSession(_0x5c5315){const _0xc6751f=_0x359e,_0x4da567={'uhdse':function(_0x5259de,_0x26c9e6,_0x142483){return _0x5259de(_0x26c9e6,_0x142483);}};return await _0x4da567[_0xc6751f(0xc2)](apiRequest,'/api/v1/tunnel/sessions',{'method':'POST','body':JSON['stringify']({'targetUrl':_0x5c5315,'mode':_0xc6751f(0x8f)})});}async function deleteTunnelSession(_0x1692f5){const _0x1b4528=_0x359e,_0x2b2238={'TcQOW':function(_0x26c3b0,_0x48b04c,_0x59905f){return _0x26c3b0(_0x48b04c,_0x59905f);}};await _0x2b2238[_0x1b4528(0xf4)](apiRequest,'/api/v1/tunnel/sessions/'+_0x1692f5,{'method':'DELETE'});}export function pickAdHocEnvKey(_0x1cc288){const _0x196693=_0x359e,_0x52b057={'xJltv':function(_0x5c2ea7,_0x338a84){return _0x5c2ea7===_0x338a84;},'WkfoG':function(_0x226f69,_0x2cb17e){return _0x226f69+_0x2cb17e;}};if(!_0x1cc288)return null;if(_0x1cc288[_0x196693(0xe8)])return _0x1cc288[_0x196693(0xe8)];const _0xce473=Object[_0x196693(0x6f)](_0x1cc288[_0x196693(0x83)]??{});if(_0x52b057[_0x196693(0x6d)](_0xce473['length'],0x1))return _0xce473[0x0];if(_0xce473[_0x196693(0xe4)]===0x0)return null;throw new Error(_0x52b057['WkfoG']('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0xce473[_0x196693(0xa9)](',\x20')+_0x196693(0xfe),_0x196693(0xd4)));}export async function resolveAdHocProfile(_0x29f740=process['env']){const _0x3967d5=_0x359e,_0x12afaf={'bVBAW':function(_0x3cdd20){return _0x3cdd20();},'iGdus':function(_0x2a791f,_0x6e3871,_0x2479f8,_0x4a455b){return _0x2a791f(_0x6e3871,_0x2479f8,_0x4a455b);},'ReNQt':function(_0x18f039,_0x2b1021){return _0x18f039??_0x2b1021;}},_0x28b062=_0x29f740['RANGER_TEST_USERNAME'];if(!_0x28b062)return null;const _0x143081=await fetchCloudProfile(_0x28b062);if(_0x143081)return{'name':_0x143081['name'],'profile':_0x143081};const _0x566cea=await _0x12afaf['bVBAW'](fetchAuthConfig),_0x285d36=pickAdHocEnvKey(_0x566cea),_0xa69a5c=_0x29f740['RANGER_TEST_PASSWORD'],_0x6964d3=await _0x12afaf['iGdus'](createCloudProfile,_0x28b062,_0x12afaf[_0x3967d5(0xe2)](_0x285d36,undefined),{'username':_0x28b062,'password':_0xa69a5c});return console['log']('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x6964d3[_0x3967d5(0x9b)]+_0x3967d5(0x86)+_0x28b062),{'name':_0x6964d3['name'],'profile':_0x6964d3};}export async function writeSessionToLocalCache(_0x5bc57e,_0x1a8390,_0x3fca31,_0x31cd1c,_0x5f0779,_0x5a4508,_0x2f3029){const _0x4819ad=_0x359e,_0x20f835={'xxhNP':function(_0x4542fa,_0xa35365){return _0x4542fa(_0xa35365);},'wJQwh':function(_0x5b5b9d,_0x5f2444,_0x543936){return _0x5b5b9d(_0x5f2444,_0x543936);},'RQsgq':function(_0x4a01fd){return _0x4a01fd();},'PFqFi':_0x4819ad(0xcc),'vQcrv':function(_0x1037c3,_0x154ac1){return _0x1037c3>_0x154ac1;},'VSBbB':function(_0x19ba21,_0x5e3f45,_0x4a65f4){return _0x19ba21(_0x5e3f45,_0x4a65f4);},'KfLuq':function(_0x5512c8,_0x170103){return _0x5512c8(_0x170103);},'zxBVL':function(_0x411a32,_0x2486ad,_0x520b5f){return _0x411a32(_0x2486ad,_0x520b5f);}},_0x1b56c7=_0x20f835[_0x4819ad(0xfa)](sessionCacheHash,{'orgId':_0x1a8390,'profileName':_0x5bc57e,'effectiveBaseUrl':_0x3fca31,'setupHeaders':_0x31cd1c,'invalidateOn':_0x2f3029?.['invalidateOn'],'userAgent':_0x2f3029?.[_0x4819ad(0x76)],'clientIp':_0x2f3029?.[_0x4819ad(0x7e)]}),_0x5b78b4=getSessionCachePath(_0x1b56c7,_0x5bc57e),_0x57c3be=_0x20f835[_0x4819ad(0xef)](join,_0x20f835['RQsgq'](getRangerHomeDir),_0x20f835['PFqFi']);!_0x20f835[_0x4819ad(0xfa)](existsSync,_0x57c3be)&&await mkdir(_0x57c3be,{'recursive':!![]});const _0x2adb43={..._0x5f0779};_0x5a4508&&_0x20f835[_0x4819ad(0x81)](_0x5a4508[_0x4819ad(0xe4)],0x0)&&Array[_0x4819ad(0x8d)](_0x2adb43[_0x4819ad(0xbb)])&&(_0x2adb43['cookies']=_0x20f835[_0x4819ad(0xe3)](duplicateCookiesForDomains,_0x2adb43[_0x4819ad(0xbb)],_0x5a4508));const _0x427b77={'cached_at':new Date()[_0x4819ad(0x95)](),'session_state':_0x2adb43};await writeFile(_0x5b78b4,JSON['stringify'](_0x427b77,null,0x2));const _0x5388d9=_0x20f835['KfLuq'](getStorageStatePath,_0x5b78b4);return await _0x20f835['zxBVL'](writeFile,_0x5388d9,JSON['stringify'](_0x2adb43,null,0x2)),_0x5388d9;}export async function checkLocalCache(_0x146ba2,_0x35b578,_0x3808a3,_0x5e4cae,_0x1d2565){const _0x18d97b=_0x359e,_0x51f671={'rNJXY':function(_0x365d12,_0xa6e8bf,_0x190a45){return _0x365d12(_0xa6e8bf,_0x190a45);}},_0x4e34a9=sessionCacheHash({'orgId':_0x35b578,'profileName':_0x146ba2,'effectiveBaseUrl':_0x3808a3,'setupHeaders':_0x5e4cae,'invalidateOn':_0x1d2565?.['invalidateOn'],'userAgent':_0x1d2565?.['userAgent'],'clientIp':_0x1d2565?.['clientIp']}),_0x2dadc7=_0x51f671[_0x18d97b(0xae)](getSessionCachePath,_0x4e34a9,_0x146ba2),_0x343126=getStorageStatePath(_0x2dadc7);if(!existsSync(_0x2dadc7)||!existsSync(_0x343126))return null;try{const _0x1ab461=await readFile(_0x2dadc7,_0x18d97b(0x77));return JSON['parse'](_0x1ab461),{'storageStatePath':_0x343126};}catch{return null;}}function launchRealBrowser(){const _0x4d81ab=_0x359e;return chromium[_0x4d81ab(0xf2)]({'headless':!![]});}function emitSessionValidationHint(_0x3ca5dc,_0x5c8691){const _0x38f4ca=_0x359e;if(!_0x5c8691||!_0x5c8691[_0x38f4ca(0xa1)]?.['length'])return;let _0x5d65f0;try{_0x5d65f0=new URL(_0x3ca5dc);}catch{return;}const _0x4f2eae=[];for(const _0x2eaf22 of _0x5c8691[_0x38f4ca(0xa1)]){try{_0x4f2eae['push']({'raw':_0x2eaf22,'url':new URL(_0x2eaf22)});}catch{}}if(_0x4f2eae[_0x38f4ca(0xe4)]===0x0)return;if(_0x4f2eae[_0x38f4ca(0x78)](_0xf57f56=>_0xf57f56[_0x38f4ca(0xca)][_0x38f4ca(0x8c)]===_0x5d65f0['origin']))return;const _0x1252af=_0x4f2eae[_0x38f4ca(0xd2)](_0x323d5c=>'\x22'+_0x323d5c['raw']+'\x22')[_0x38f4ca(0xa9)](',\x20');console[_0x38f4ca(0x9c)]('\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20'+_0x1252af+';\x20'+('you\x27re\x20now\x20at\x20\x22'+_0x3ca5dc+_0x38f4ca(0xd6))+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x529a1f,_0x5bfdad){const _0x4f730f=_0x359e,_0x53b3a9={'IYwOJ':'POST','xtzMc':function(_0x1ad6a9,_0x5956ac){return _0x1ad6a9 instanceof _0x5956ac;},'GxRyV':function(_0x5090c0,_0x2ce1e4){return _0x5090c0===_0x2ce1e4;},'OvhXz':'not_configured'},_0x5a0152=process['env']['RANGER_TEST_USERNAME'],_0x4c1630=process[_0x4f730f(0x9f)]['RANGER_TEST_PASSWORD'],_0x28ad75={};if(_0x5a0152)_0x28ad75['username']=_0x5a0152;if(_0x4c1630)_0x28ad75[_0x4f730f(0x79)]=_0x4c1630;if(_0x5bfdad?.['force'])_0x28ad75[_0x4f730f(0xf1)]=!![];if(_0x5bfdad?.[_0x4f730f(0xa2)])_0x28ad75[_0x4f730f(0x91)]=_0x5bfdad[_0x4f730f(0xa2)];_0x5bfdad?.['tunnel']&&(_0x28ad75['tunnel_session_id']=_0x5bfdad[_0x4f730f(0x71)][_0x4f730f(0xa7)],_0x28ad75['pw_endpoint']=_0x5bfdad[_0x4f730f(0x71)][_0x4f730f(0xb4)]);try{return await apiRequest(_0x4f730f(0xa3)+encodeURIComponent(_0x529a1f)+'/login',{'method':_0x53b3a9[_0x4f730f(0xff)],'body':JSON[_0x4f730f(0xbe)](_0x28ad75)});}catch(_0x4db9f3){if(_0x53b3a9['xtzMc'](_0x4db9f3,ApiError)&&_0x53b3a9[_0x4f730f(0x7b)](_0x4db9f3[_0x4f730f(0x8a)],0x190)&&_0x4db9f3['code']==='not_configured')return{'status':_0x53b3a9['OvhXz'],'error':_0x4db9f3['detail']};throw _0x4db9f3;}}async function serverSideLoginWithOptionalTunnel(_0x6c95e0,_0x1e215b,_0xea2e51={}){const _0xfc5785=_0x359e,_0x2e841a={'fCzTO':_0xfc5785(0xd7),'XJPSl':function(_0xa67397,_0x49fabb){return _0xa67397(_0x49fabb);},'LHwnO':function(_0x30291f,_0x56b231,_0x80227e){return _0x30291f(_0x56b231,_0x80227e);},'ZmUmo':function(_0x435909,_0x2071b0){return _0x435909??_0x2071b0;},'qayYO':_0xfc5785(0xbc),'skTRC':function(_0x2a6c4d,_0x1dbde2){return _0x2a6c4d||_0x1dbde2;},'RwoqB':'tunnel_login_cleanup'};if(!_0x2e841a[_0xfc5785(0xe1)](needsTunnel,_0x1e215b))return await _0x2e841a[_0xfc5785(0xd9)](serverSideLogin,_0x6c95e0,{'force':_0xea2e51[_0xfc5785(0xf1)]});let _0x57b6ca=null,_0x17ec29=null,_0x1b28c6=null,_0x37ac37=null,_0x5bbc00=![];const _0xa8404={'profileName':_0x6c95e0,'targetUrlHost':_0x2e841a[_0xfc5785(0xe1)](targetHostForTelemetry,_0x1e215b),'tunnelRequired':!![],'forceLogin':Boolean(_0xea2e51['force'])};try{_0xea2e51['telemetry']?.[_0xfc5785(0xeb)](_0xfc5785(0xbc),_0xa8404),_0x57b6ca=await launchBrowserServer({'headless':!![]}),_0x17ec29=await createTunnelSession(_0x1e215b);const _0x2fc8e0=await requireToken();_0x1b28c6=await _0x2e841a['XJPSl'](createTunnelBridge,{'localWsUrl':_0x57b6ca['wsEndpoint'],'tunnelServerUrl':_0x17ec29[_0xfc5785(0x6c)],'sessionId':_0x17ec29[_0xfc5785(0xa7)],'apiKey':_0x2fc8e0,'onError':_0x48ae0d=>{_0x37ac37=_0x48ae0d;},'onClose':()=>{_0x37ac37??=new Error('Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20'+_0x6c95e0);},'onEvent':_0x3b4670=>trackBridgeEvent(_0xea2e51['telemetry'],_0x3b4670)}),_0xea2e51[_0xfc5785(0xaf)]?.['trackPhaseEnd'](_0xfc5785(0xbc),{..._0xa8404,'tunnelSessionId':_0x17ec29[_0xfc5785(0xa7)],'localBrowserServer':!![]}),_0x5bbc00=!![];try{return _0xea2e51['telemetry']?.[_0xfc5785(0xeb)](_0xfc5785(0xd7),{..._0xa8404,'tunnelSessionId':_0x17ec29[_0xfc5785(0xa7)]}),await serverSideLogin(_0x6c95e0,{'force':_0xea2e51['force'],'targetUrl':_0x1e215b,'tunnel':{'sessionId':_0x17ec29[_0xfc5785(0xa7)],'pwEndpoint':_0x17ec29['pwEndpoint']}})[_0xfc5785(0x9e)](_0x11c6b6=>{const _0x2f834e=_0xfc5785;return _0xea2e51['telemetry']?.['trackPhaseEnd'](_0x2e841a['fCzTO'],{..._0xa8404,'tunnelSessionId':_0x17ec29?.['sessionId'],'loginStatus':_0x11c6b6[_0x2f834e(0x8a)],'hasSessionState':Boolean(_0x11c6b6[_0x2f834e(0xe6)]),'hasTestOutput':_0x2e841a['XJPSl'](Boolean,_0x11c6b6['test_output']),'bridgeError':errorMessageForTelemetry(_0x37ac37)}),_0x11c6b6;});}catch(_0x4f494f){await _0xea2e51['telemetry']?.[_0xfc5785(0xf6)]('tunnel_login_request',_0x2e841a['ZmUmo'](_0x37ac37,_0x4f494f),{..._0xa8404,'tunnelSessionId':_0x17ec29[_0xfc5785(0xa7)],'bridgeError':errorMessageForTelemetry(_0x37ac37)});throw _0x37ac37??_0x4f494f;}}catch(_0x2ae533){!_0x5bbc00&&await _0xea2e51['telemetry']?.[_0xfc5785(0xf6)](_0x2e841a[_0xfc5785(0xab)],_0x2ae533,{..._0xa8404,'tunnelSessionId':_0x17ec29?.['sessionId']});throw _0x2ae533;}finally{(_0x2e841a[_0xfc5785(0x7c)](_0x17ec29,_0x57b6ca)||_0x1b28c6)&&(_0xea2e51['telemetry']?.['trackPhaseStart'](_0x2e841a[_0xfc5785(0x87)],{..._0xa8404,'tunnelSessionId':_0x17ec29?.[_0xfc5785(0xa7)]}),_0x1b28c6?.['close'](),_0x57b6ca&&await _0x57b6ca['close']()['catch'](()=>{}),_0x17ec29&&await _0x2e841a['XJPSl'](deleteTunnelSession,_0x17ec29['sessionId'])[_0xfc5785(0xd1)](()=>{}),_0xea2e51[_0xfc5785(0xaf)]?.['trackPhaseEnd'](_0x2e841a[_0xfc5785(0x87)],{..._0xa8404,'tunnelSessionId':_0x17ec29?.[_0xfc5785(0xa7)]}));}}export async function manualBrowserLogin(_0x54736b,_0x1d15cd,_0x227e45={}){const _0x356068=_0x359e,_0x2def={'ObjTo':function(_0x3a1ce7,_0x5f4d1a){return _0x3a1ce7/_0x5f4d1a;},'hMIWM':function(_0x47900b,_0x298e86,_0x18c816){return _0x47900b(_0x298e86,_0x18c816);},'rlDTW':_0x356068(0x99),'gpcBO':function(_0x504100,_0x209695){return _0x504100+_0x209695;},'rsscw':'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','hkoIi':function(_0x354ca8,_0x258623){return _0x354ca8>_0x258623;},'xKVSD':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','zcLOx':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','jxpZE':function(_0x5f4e98,_0x234a22){return _0x5f4e98!==_0x234a22;},'LWtbt':function(_0x54bbce,_0xfcb8c1){return _0x54bbce(_0xfcb8c1);},'vsoTE':_0x356068(0x90)};if(!isInteractive())throw new Error(_0x2def[_0x356068(0xad)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x54736b[_0x356068(0x9b)]+'\x22.\x0a',_0x2def[_0x356068(0xb2)])+_0x356068(0xc5));const _0x4e4a7d=_0x1d15cd&&_0x2def['hkoIi'](_0x1d15cd['domains']['length'],0x0)?_0x1d15cd['domains'][0x0]:_0x356068(0xcf);console[_0x356068(0x9c)](_0x2def['xKVSD']),console[_0x356068(0x9c)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x266b21=>setTimeout(_0x266b21,0x7d0));const _0x5e9a35=await chromium['launch']({'headless':![]});let _0x35cf11=null;try{const _0x2b836c={'ignoreHTTPSErrors':!![]};_0x1d15cd?.['setupHeaders']&&(_0x2b836c[_0x356068(0xb8)]=_0x1d15cd[_0x356068(0x82)]);const _0x16e8b0=await _0x5e9a35['newContext'](_0x2b836c);await addProfileSetupBanner(_0x16e8b0);const _0x42265d=await _0x16e8b0['newPage']();await _0x42265d[_0x356068(0xf5)](_0x4e4a7d);let _0x5a6aa2=![];await new Promise(_0x3f6bc4=>{const _0x62093b=_0x356068,_0x4fc985={'Nqawf':function(_0x4e8034,_0x46375d){return _0x2def['ObjTo'](_0x4e8034,_0x46375d);},'lOfxF':function(_0x2f5db6){return _0x2f5db6();}},_0x37451c=_0x2def['hMIWM'](setTimeout,()=>{const _0x55aed8=_0x359e;_0x5a6aa2=!![],console[_0x55aed8(0xc3)]('Browser\x20login\x20timed\x20out\x20after\x20'+_0x4fc985['Nqawf'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+'\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.'),_0x4fc985['lOfxF'](_0x3f6bc4);},MANUAL_LOGIN_TIMEOUT_MS);_0x42265d['on'](_0x2def[_0x62093b(0x7d)],async()=>{const _0x1084b5=_0x62093b;clearTimeout(_0x37451c);try{const _0x269341=await _0x16e8b0[_0x1084b5(0xea)]();_0x35cf11=_0x269341;}catch{}_0x4fc985['lOfxF'](_0x3f6bc4);});});if(_0x5a6aa2&&!_0x35cf11)throw new Error(_0x356068(0xec));}finally{await _0x5e9a35['close']()[_0x356068(0xd1)](()=>{});}if(!_0x35cf11)throw new Error(_0x2def[_0x356068(0xe9)]);return _0x2def[_0x356068(0x72)](_0x227e45['persistSessionState'],![])&&await apiRequest('/api/v1/profiles/'+_0x2def[_0x356068(0xb5)](encodeURIComponent,_0x54736b['name'])+'/session',{'method':_0x2def[_0x356068(0xb9)],'body':JSON[_0x356068(0xbe)]({'session_state':_0x35cf11,'updated_by':_0x356068(0xb6)})}),{'sessionState':_0x35cf11};}export async function promptSaveCredentials(_0xd3e92a){const _0x4bc4f5=_0x359e,_0x1a2f1d={'SnGbc':function(_0x525ecc,_0xe70cab){return _0x525ecc||_0xe70cab;},'gXKWJ':'confirm','tSZgs':_0x4bc4f5(0xdc),'UznxG':function(_0x169a34,_0x20fa0b,_0x42a88d){return _0x169a34(_0x20fa0b,_0x42a88d);}},_0x372564=process['env']['RANGER_TEST_USERNAME'],_0x5b6872=process[_0x4bc4f5(0x9f)]['RANGER_TEST_PASSWORD'];if(_0x1a2f1d['SnGbc'](!_0x372564,!_0x5b6872))return;if(!isInteractive())return;const {save:_0x6e51bd}=await _0x1a69e1[_0x4bc4f5(0xa8)]([{'type':_0x1a2f1d['gXKWJ'],'name':_0x1a2f1d[_0x4bc4f5(0xf8)],'message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0x6e51bd)return;await _0x1a2f1d[_0x4bc4f5(0xac)](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0xd3e92a),{'method':_0x4bc4f5(0x7f),'body':JSON[_0x4bc4f5(0xbe)]({'username':_0x372564,'password':_0x5b6872})}),console['log']('\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.');}export async function resolveCloudProfileSession(_0x4a5aa0,_0x5c3f30={}){const _0x15ca64=_0x359e,_0x4afb20={'qeHpf':function(_0x535976,_0x2c41ed){return _0x535976===_0x2c41ed;},'NBplG':_0x15ca64(0xb1),'mycsM':function(_0x3839be,_0x6a7b){return _0x3839be(_0x6a7b);},'aReJL':function(_0x59cc4d,_0x120ddf,_0x521936,_0x1f11df,_0x9d24cf){return _0x59cc4d(_0x120ddf,_0x521936,_0x1f11df,_0x9d24cf);},'aJdkD':function(_0x3af435,_0x18e471,_0x1f1abe,_0x1366ca,_0x4fe563,_0x37f167,_0x5646f1,_0x5f069c){return _0x3af435(_0x18e471,_0x1f1abe,_0x1366ca,_0x4fe563,_0x37f167,_0x5646f1,_0x5f069c);},'BVtXr':function(_0x300cb3,_0x2c4dbd,_0x4cd761,_0xf245c,_0x535238){return _0x300cb3(_0x2c4dbd,_0x4cd761,_0xf245c,_0x535238);},'CFtNU':function(_0x1eec2b,_0x40daa4,_0x1ba64d){return _0x1eec2b(_0x40daa4,_0x1ba64d);},'Exayc':function(_0x3280ae,_0x2480f,_0x5b8a01){return _0x3280ae(_0x2480f,_0x5b8a01);},'ZJExx':function(_0x4dcad5,_0x4843ab){return _0x4dcad5===_0x4843ab;},'ZLsKB':function(_0x414bd6,_0x2483c9){return _0x414bd6&&_0x2483c9;},'FNACM':function(_0x374e1a,_0x118f8f){return _0x374e1a(_0x118f8f);},'WkDVZ':_0x15ca64(0xc0),'BVLiO':function(_0x3fd9dd,_0x5ae2c9){return _0x3fd9dd instanceof _0x5ae2c9;},'GDZng':function(_0x1982da,_0x1e03f9){return _0x1982da(_0x1e03f9);}},_0x1ede94=_0x4a5aa0['settings']??{},_0x545374=await fetchAuthConfig(),_0x49bc74=_0x545374?resolveAuthEnvironmentLocally(_0x545374,_0x4a5aa0['environmentKey']):null,_0x335bed=_0x4afb20['qeHpf'](typeof _0x49bc74?.['loginInstructions'],_0x4afb20['NBplG'])&&_0x49bc74[_0x15ca64(0xc6)]['trim']()?_0x49bc74['loginInstructions']:undefined,_0x5bf8fe=typeof _0x1ede94['loginInstructions']===_0x15ca64(0xb1)&&_0x1ede94[_0x15ca64(0xc6)][_0x15ca64(0xc1)]()?_0x1ede94[_0x15ca64(0xc6)]:undefined,_0x32b776=_0x5bf8fe||!_0x335bed?_0x1ede94:{..._0x1ede94,'loginInstructions':_0x335bed},_0x42fd7a=Boolean(_0x32b776['loginInstructions']?.[_0x15ca64(0xc1)]()),_0x54579a=_0x4afb20[_0x15ca64(0x92)](Boolean,_0x1ede94['forceLogin']||_0x49bc74?.['forceLogin']),_0x207dcd=_0x49bc74?.[_0x15ca64(0xa1)],_0xaf4be8=_0x1ede94['setupHeaders'],_0x2b32c5=_0xaf4be8??_0x49bc74?.['setupHeaders'],_0x3f4fb0=_0x5c3f30['effectiveBaseUrl']??_0x1ede94[_0x15ca64(0xee)]??(_0x207dcd&&_0x207dcd[_0x15ca64(0xe4)]>0x0?_0x207dcd[0x0]:''),_0x9d8c8c=_0x3f4fb0?_0x4afb20[_0x15ca64(0x92)](needsTunnel,_0x3f4fb0):![],_0x5f05e1={'invalidateOn':_0x49bc74?.['invalidateOn'],'userAgent':_0x49bc74?.[_0x15ca64(0x73)]?.[_0x15ca64(0x76)]??_0x1ede94[_0x15ca64(0x76)]};_0x54579a&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x4a5aa0['name']+'\x22,\x20refreshing\x20session...');if(!_0x54579a){const _0x14d8d5=await checkLocalCache(_0x4a5aa0['name'],_0x4a5aa0['organizationId'],_0x3f4fb0,_0x2b32c5,_0x5f05e1);if(_0x14d8d5){if(_0x3f4fb0&&!_0x9d8c8c){const _0x1cb184=await _0x4afb20[_0x15ca64(0x98)](isCachedSessionLive,_0x14d8d5[_0x15ca64(0xfb)],_0x3f4fb0,{'sessionCheckPath':_0x49bc74?.[_0x15ca64(0xe0)],'setupHeaders':_0x2b32c5},{'launchBrowser':launchRealBrowser});if(_0x1cb184)return console[_0x15ca64(0x9c)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x4a5aa0['name']+'\x22'),{'authPath':_0x14d8d5['storageStatePath'],'settings':_0x32b776,'resolvedEnv':_0x49bc74};console['log'](_0x15ca64(0x94)+_0x4a5aa0['name']+_0x15ca64(0xc4)),emitSessionValidationHint(_0x3f4fb0,_0x49bc74);}else return _0x9d8c8c&&console[_0x15ca64(0x9c)]('\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x4a5aa0[_0x15ca64(0x9b)]+'\x22'),{'authPath':_0x14d8d5['storageStatePath'],'settings':_0x32b776,'resolvedEnv':_0x49bc74};}}if(!_0x54579a&&_0x4a5aa0['sessionState']){if(_0x9d8c8c)console[_0x15ca64(0x9c)](_0x15ca64(0xa4)+_0x3f4fb0+'\x22\x20on\x20profile\x20\x22'+_0x4a5aa0[_0x15ca64(0x9b)]+'\x22');else{const _0x4db613=await _0x4afb20['aJdkD'](writeSessionToLocalCache,_0x4a5aa0[_0x15ca64(0x9b)],_0x4a5aa0[_0x15ca64(0xaa)],_0x3f4fb0,_0x2b32c5,_0x4a5aa0['sessionState'],_0x207dcd,_0x5f05e1);if(_0x3f4fb0){const _0x22f0ec=await _0x4afb20[_0x15ca64(0xce)](isCachedSessionLive,_0x4db613,_0x3f4fb0,{'sessionCheckPath':_0x49bc74?.['sessionCheckPath'],'setupHeaders':_0x2b32c5},{'launchBrowser':launchRealBrowser});if(_0x22f0ec)return console[_0x15ca64(0x9c)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x4a5aa0['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x4db613,'settings':_0x32b776,'resolvedEnv':_0x49bc74};console['log'](_0x15ca64(0xc9)+_0x4a5aa0['name']+'\x22\x20failed\x20validation\x20—\x20re-login\x20needed...'),_0x4afb20['CFtNU'](emitSessionValidationHint,_0x3f4fb0,_0x49bc74);}else return{'authPath':_0x4db613,'settings':_0x32b776,'resolvedEnv':_0x49bc74};}}if(_0x42fd7a)return console[_0x15ca64(0x9c)](_0x15ca64(0xd0)+_0x4a5aa0['name']+_0x15ca64(0xbd)),{'authPath':undefined,'settings':_0x32b776,'resolvedEnv':_0x49bc74};console[_0x15ca64(0x9c)](_0x15ca64(0xd0)+_0x4a5aa0['name']+_0x15ca64(0xf3));const _0x43e84d=Boolean(process[_0x15ca64(0x9f)][_0x15ca64(0xda)])&&_0x4afb20[_0x15ca64(0x92)](Boolean,process['env']['RANGER_TEST_PASSWORD']),_0x32ed69=_0x4afb20[_0x15ca64(0x92)](Boolean,_0x4a5aa0['username']);if(_0x43e84d||_0x32ed69)try{const _0x52a9b1=_0x3f4fb0?await serverSideLoginWithOptionalTunnel(_0x4a5aa0[_0x15ca64(0x9b)],_0x3f4fb0,{'force':_0x54579a,'telemetry':_0x5c3f30[_0x15ca64(0xaf)]}):await _0x4afb20['Exayc'](serverSideLogin,_0x4a5aa0[_0x15ca64(0x9b)],{'force':_0x54579a});if(_0x4afb20['ZJExx'](_0x52a9b1[_0x15ca64(0x8a)],'not_configured'))console[_0x15ca64(0x9c)](_0x15ca64(0xdf));else{if(_0x52a9b1['status']===_0x15ca64(0xa5)&&_0x52a9b1['session_state']){console[_0x15ca64(0x9c)]('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x396563=await writeSessionToLocalCache(_0x4a5aa0[_0x15ca64(0x9b)],_0x4a5aa0['organizationId'],_0x3f4fb0,_0x2b32c5,_0x52a9b1['session_state'],_0x207dcd,_0x5f05e1);return _0x4afb20['ZLsKB'](_0x43e84d,!_0x32ed69)&&await _0x4afb20['FNACM'](promptSaveCredentials,_0x4a5aa0[_0x15ca64(0x9b)]),{'authPath':_0x396563,'settings':_0x32b776,'resolvedEnv':_0x49bc74};}else _0x52a9b1[_0x15ca64(0xde)]&&(console[_0x15ca64(0x9c)](_0x4afb20[_0x15ca64(0x9a)]),console['log'](_0x52a9b1['test_output'])),console[_0x15ca64(0x9c)]('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}}catch(_0xc7b4ab){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x4afb20[_0x15ca64(0xe7)](_0xc7b4ab,Error)?_0xc7b4ab[_0x15ca64(0xcb)]:_0x4afb20['GDZng'](String,_0xc7b4ab))),console['log'](_0x15ca64(0x80));}const _0x308cb8=_0x49bc74?{..._0x49bc74,'setupHeaders':_0x2b32c5}:_0x3f4fb0?{'key':_0x4a5aa0['environmentKey']??'','domains':[_0x3f4fb0],'setupHeaders':_0x2b32c5}:null,{sessionState:_0xd22fa3}=await manualBrowserLogin(_0x4a5aa0,_0x308cb8,{'persistSessionState':!_0x9d8c8c}),_0x1d5f03=await _0x4afb20[_0x15ca64(0xc7)](writeSessionToLocalCache,_0x4a5aa0[_0x15ca64(0x9b)],_0x4a5aa0['organizationId'],_0x3f4fb0,_0x2b32c5,_0xd22fa3,_0x207dcd,_0x5f05e1);return{'authPath':_0x1d5f03,'settings':_0x32b776,'resolvedEnv':_0x49bc74};}
1
+ const _0x2767ba=_0x475f;(function(_0x45ddae,_0xbb1663){const _0x5dbd01=_0x475f,_0x489a25=_0x45ddae();while(!![]){try{const _0xd8ab67=parseInt(_0x5dbd01(0x265))/0x1*(parseInt(_0x5dbd01(0x26e))/0x2)+parseInt(_0x5dbd01(0x212))/0x3*(parseInt(_0x5dbd01(0x201))/0x4)+parseInt(_0x5dbd01(0x275))/0x5*(parseInt(_0x5dbd01(0x1e9))/0x6)+parseInt(_0x5dbd01(0x1e7))/0x7+parseInt(_0x5dbd01(0x25c))/0x8*(-parseInt(_0x5dbd01(0x21f))/0x9)+parseInt(_0x5dbd01(0x20b))/0xa*(-parseInt(_0x5dbd01(0x238))/0xb)+-parseInt(_0x5dbd01(0x1e8))/0xc;if(_0xd8ab67===_0xbb1663)break;else _0x489a25['push'](_0x489a25['shift']());}catch(_0x3a1db6){_0x489a25['push'](_0x489a25['shift']());}}}(_0x2444,0x2eafc));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x246a00 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';function targetHostForTelemetry(_0x3b8231){const _0xd1b98e=_0x475f,_0x322dfb={'EsuGc':_0xd1b98e(0x1f1)};try{return new URL(_0x3b8231)[_0xd1b98e(0x256)];}catch{return _0x322dfb[_0xd1b98e(0x1df)];}}function errorMessageForTelemetry(_0x593d2f){const _0x32e626=_0x475f,_0x358677={'HAMJm':function(_0x4c9bee,_0xfb5873){return _0x4c9bee instanceof _0xfb5873;}};return _0x358677['HAMJm'](_0x593d2f,Error)?_0x593d2f[_0x32e626(0x229)]:undefined;}function trackBridgeEvent(_0x476a3d,_0x2023d8){const _0x5d8819=_0x475f,_0x5f9b5={'MpaXg':'tunnel_bridge_event','ScIkK':_0x5d8819(0x25b)};if(!_0x476a3d)return;const _0x3cb7c6={'tunnelSessionId':_0x2023d8[_0x5d8819(0x1e5)],'tunnelEventType':_0x2023d8[_0x5d8819(0x233)],'connectionId':_0x2023d8[_0x5d8819(0x24b)],'code':_0x2023d8['code'],'reason':_0x2023d8[_0x5d8819(0x21d)],'error':_0x2023d8['error'],'elapsedMs':_0x2023d8['elapsedMs'],'activeLocalConnections':_0x2023d8[_0x5d8819(0x269)],'pendingLocalConnections':_0x2023d8['pendingLocalConnections']};_0x476a3d[_0x5d8819(0x1fb)](_0x5f9b5['MpaXg'],_0x3cb7c6),(_0x2023d8['type']==='tunnel_error'||_0x2023d8['type']===_0x5d8819(0x20d))&&void _0x476a3d['trackPhaseError'](_0x5f9b5['ScIkK'],new Error(_0x2023d8[_0x5d8819(0x1f2)]??_0x2023d8['type']),_0x3cb7c6);}const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x22e9c8=_0x475f,_0x163194={'kXTXA':function(_0x4f8ea4){return _0x4f8ea4();},'oEKSe':_0x22e9c8(0x252)},_0x11b56d=await _0x163194['kXTXA'](getToken);if(!_0x11b56d)throw new Error(_0x163194['oEKSe']);return _0x11b56d;}async function apiRequest(_0x1741dc,_0x5ba180={}){const _0xf96677=_0x475f,_0x2d07be={'rUjlI':function(_0x3e23f7){return _0x3e23f7();},'JZpoe':_0xf96677(0x236),'Jyagq':function(_0x1e9ab2,_0x926bb1){return _0x1e9ab2===_0x926bb1;},'QYWQZ':_0xf96677(0x23d)},_0x589cb7=await requireToken(),_0x3fbe2f=_0x2d07be['rUjlI'](getApiBaseUrl),_0x1f7893=await fetch(''+_0x3fbe2f+_0x1741dc,{..._0x5ba180,'headers':{'Authorization':'Bearer\x20'+_0x589cb7,'Content-Type':_0x2d07be['JZpoe'],..._0x5ba180[_0xf96677(0x1f3)]??{}}});if(!_0x1f7893['ok']){let _0x6a8ab7='',_0x1afecd;try{const _0x5b22e5=await _0x1f7893[_0xf96677(0x278)](),_0x250b5a=(_0x2d07be['Jyagq'](typeof _0x5b22e5[_0xf96677(0x1f2)],_0x2d07be['QYWQZ'])?_0x5b22e5['error']:undefined)??JSON[_0xf96677(0x273)](_0x5b22e5);_0x6a8ab7=_0x250b5a;_0x2d07be[_0xf96677(0x1f5)](typeof _0x5b22e5['test_output'],_0xf96677(0x23d))&&_0x5b22e5['test_output']&&(_0x6a8ab7=_0x6a8ab7+'\x0a'+_0x5b22e5[_0xf96677(0x270)]);if(_0x2d07be[_0xf96677(0x1f5)](typeof _0x5b22e5['code'],_0x2d07be[_0xf96677(0x1fc)]))_0x1afecd=_0x5b22e5[_0xf96677(0x279)];}catch{_0x6a8ab7=_0x1f7893[_0xf96677(0x21a)];}throw new ApiError(_0xf96677(0x254)+_0x1741dc+_0xf96677(0x205)+_0x1f7893[_0xf96677(0x22d)]+_0xf96677(0x213)+_0x6a8ab7,_0x1f7893['status'],_0x6a8ab7,_0x1afecd);}if(_0x1f7893['status']===0xcc)return undefined;return _0x1f7893[_0xf96677(0x278)]();}export class ApiError extends Error{[_0x2767ba(0x22d)];[_0x2767ba(0x20e)];[_0x2767ba(0x279)];constructor(_0x1abf50,_0x593b83,_0x21ccc2,_0x5a7ac8){const _0x1622a0=_0x2767ba,_0x789ba4={'TIiss':'2|1|3|4|0'},_0x369099=_0x789ba4[_0x1622a0(0x220)][_0x1622a0(0x200)]('|');let _0x24f51a=0x0;while(!![]){switch(_0x369099[_0x24f51a++]){case'0':this['name']='ApiError';continue;case'1':this['status']=_0x593b83;continue;case'2':super(_0x1abf50);continue;case'3':this['detail']=_0x21ccc2;continue;case'4':this['code']=_0x5a7ac8;continue;}break;}}}export async function fetchCloudProfile(_0x57993e){const _0x5c7aeb=_0x2767ba;try{return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x57993e));}catch(_0x1f21d3){if(_0x1f21d3 instanceof ApiError&&_0x1f21d3[_0x5c7aeb(0x22d)]===0x194)return null;throw _0x1f21d3;}}export async function listCloudProfiles(){const _0x42d152=_0x2767ba,_0x62d4c=await apiRequest('/api/v1/profiles');return _0x62d4c[_0x42d152(0x1f0)];}export async function deleteCloudProfile(_0x145380){const _0x1f8df0=_0x2767ba,_0x239b5f={'ZlpTS':function(_0x1d1dc8,_0xcd040f,_0x96b8ca){return _0x1d1dc8(_0xcd040f,_0x96b8ca);},'ZvKcq':function(_0x561ff9,_0x5ab126){return _0x561ff9(_0x5ab126);},'yHPEQ':'DELETE'};try{await _0x239b5f[_0x1f8df0(0x21b)](apiRequest,'/api/v1/profiles/'+_0x239b5f[_0x1f8df0(0x23f)](encodeURIComponent,_0x145380),{'method':_0x239b5f[_0x1f8df0(0x276)]});}catch(_0x9007fc){if(_0x9007fc instanceof ApiError&&_0x9007fc['status']===0x194)throw new Error(_0x1f8df0(0x27b)+_0x145380+_0x1f8df0(0x253));throw _0x9007fc;}}export async function createCloudProfile(_0x3b3833,_0x4a7451,_0x3b1410={}){const _0x351892=_0x2767ba,_0x1df474={'name':_0x3b3833};if(_0x4a7451)_0x1df474[_0x351892(0x230)]=_0x4a7451;_0x3b1410['settings']&&Object['keys'](_0x3b1410[_0x351892(0x23a)])[_0x351892(0x26f)]>0x0&&(_0x1df474['settings']=_0x3b1410[_0x351892(0x23a)]);if(_0x3b1410['username'])_0x1df474['username']=_0x3b1410['username'];if(_0x3b1410['password'])_0x1df474[_0x351892(0x22c)]=_0x3b1410[_0x351892(0x22c)];return await apiRequest(_0x351892(0x239),{'method':'POST','body':JSON['stringify'](_0x1df474)});}export async function uploadCloudProfileSession(_0x1d5042,_0x25d60f){const _0x5a1301=_0x2767ba,_0x3c8978={'PsiOJ':function(_0x1e82bc,_0x13e96d,_0x57bc3f){return _0x1e82bc(_0x13e96d,_0x57bc3f);},'qrEIX':function(_0x3a8b05,_0x233fc0){return _0x3a8b05(_0x233fc0);}};return await _0x3c8978[_0x5a1301(0x27a)](apiRequest,'/api/v1/profiles/'+_0x3c8978['qrEIX'](encodeURIComponent,_0x1d5042)+'/session',{'method':'POST','body':JSON[_0x5a1301(0x273)]({'session_state':_0x25d60f})});}export async function saveCloudProfileCredentials(_0x1b5f3e,_0x5e79f5,_0x540e4d){const _0x279ca2=_0x2767ba,_0x3a581f={'eLYZm':function(_0x188313,_0x56f54e){return _0x188313(_0x56f54e);}};await apiRequest('/api/v1/profiles/'+_0x3a581f[_0x279ca2(0x237)](encodeURIComponent,_0x1b5f3e),{'method':'PUT','body':JSON[_0x279ca2(0x273)]({'username':_0x5e79f5,'password':_0x540e4d})});}export async function fetchAuthConfig(){const _0x3acf9f=_0x2767ba,_0x2063c4={'KiQJd':function(_0x5e4dda,_0x1a1d49){return _0x5e4dda(_0x1a1d49);},'lvTRG':'/api/v1/profiles/auth-config'};try{const _0x18664d=await _0x2063c4['KiQJd'](apiRequest,_0x2063c4[_0x3acf9f(0x1fa)]);return _0x18664d[_0x3acf9f(0x235)];}catch(_0x41039f){return _0x41039f instanceof ApiError&&_0x41039f['status']!==0x194&&console['error'](_0x3acf9f(0x255)+_0x41039f['message']),null;}}async function createTunnelSession(_0x1c63f5){const _0x207eb9=_0x2767ba,_0x52faa6={'ZlYqU':function(_0xa7defb,_0x458ed8,_0x44f849){return _0xa7defb(_0x458ed8,_0x44f849);}};return await _0x52faa6[_0x207eb9(0x271)](apiRequest,_0x207eb9(0x240),{'method':_0x207eb9(0x22a),'body':JSON[_0x207eb9(0x273)]({'targetUrl':_0x1c63f5,'mode':'agent'})});}async function deleteTunnelSession(_0x12fe61){const _0x167467=_0x2767ba,_0x2320a7={'DzNOp':function(_0x31c655,_0x3e89ac,_0x5018c9){return _0x31c655(_0x3e89ac,_0x5018c9);},'gHfSV':'DELETE'};await _0x2320a7['DzNOp'](apiRequest,'/api/v1/tunnel/sessions/'+_0x12fe61,{'method':_0x2320a7[_0x167467(0x259)]});}function _0x2444(){const _0x458c91=['tunnel','environment_key','\x22\x20for\x20','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','type','confirm','auth_config','application/json','eLYZm','868934iCLLOG','/api/v1/profiles','settings','environmentKey','isArray','string','/api/v1/profiles/','ZvKcq','/api/v1/tunnel/sessions','tunnel_login_cleanup','nyAgY','Browser\x20login\x20timed\x20out\x20after\x20','close','MLDqg','organizationId','qBpab','session_state','qfPiB','sessionState','connectionId','hVkQZ','/login','hTaaa','ojdbT','PreBP','invalidateOn','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','\x22\x20not\x20found.','API\x20request\x20','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','host','Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.','tunnel_login_request','gHfSV','forceLogin','tunnel_bridge','8jgRiHM','prompt','trackPhaseError','BIDOb','RANGER_TEST_USERNAME','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','sessionCheckPath','true','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','1cbqrWX','Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20(','push','not_configured','activeLocalConnections','Tunnel\x20bridge\x20closed\x20before\x20login\x20completed\x20for\x20','oyWgi','raw','bGwBx','542584VnIIWX','length','test_output','ZlYqU','rXUOt','stringify','targetUrl','1965hSCNir','yHPEQ','loginInstructions','json','code','PsiOJ','Cloud\x20profile\x20\x22','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','LqDyU','browserOptions','\x20\x20Using\x20cached\x20local\x20session\x20for\x20cloud\x20profile\x20\x22','some','djFay','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','EsuGc','FBWSS','force','mXTJP','domains','url','sessionId','env','2074345Nljywr','4677624drVSUl','3066IsSHMf','cookies','tunnel_session_id','telemetry','ySNpE',').\x20','tunnelUrl','profiles','invalid-url','error','headers','\x20\x20No\x20live\x20session\x20for\x20\x22','Jyagq','\x20\x20Debug:\x20launching\x20tunneled\x20login\x20browser\x20headed...','\x22\x20failed\x20validation\x20—\x20refreshing...','\x20\x20Created\x20cloud\x20profile\x20\x22','\x22.\x0a','lvTRG','trackPhaseEnd','QYWQZ','name','WtFNc','vVJAU','split','128168CnfskI','LnTfT','trackPhaseStart','\x22,\x20attempting\x20login...','\x20failed\x20(','log','\x22,\x20cached\x20locally','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','RANGER_TUNNEL_LOGIN_HEADED','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','10bxwZKM','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','local_ws_error','detail','TwVgx','RANGER_TEST_PASSWORD','YDTaG','9nYOMKx','):\x20','DtwKI','cBDmT','newPage','userAgent','tunnel_login_setup','pwEndpoint','statusText','ZlpTS','PUT','reason','newContext','1840968VKDOkY','TIiss','join','kwrtW','\x20\x20Cached\x20session\x20for\x20\x22','origin','HfxrV','username','\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22','launch','message','POST','then','password','status','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:'];_0x2444=function(){return _0x458c91;};return _0x2444();}export function pickAdHocEnvKey(_0x15732c){const _0x417176=_0x2767ba,_0x56ed8f={'qBpab':function(_0x37fd9d,_0xd4e98f){return _0x37fd9d===_0xd4e98f;}};if(!_0x15732c)return null;if(_0x15732c['defaultEnvironmentKey'])return _0x15732c['defaultEnvironmentKey'];const _0x955179=Object['keys'](_0x15732c['environments']??{});if(_0x56ed8f[_0x417176(0x247)](_0x955179[_0x417176(0x26f)],0x1))return _0x955179[0x0];if(_0x955179[_0x417176(0x26f)]===0x0)return null;throw new Error(_0x417176(0x266)+_0x955179[_0x417176(0x221)](',\x20')+_0x417176(0x1ee)+_0x417176(0x257));}export async function resolveAdHocProfile(_0x1fae8e=process['env']){const _0x50aef4=_0x2767ba,_0x1bb33d={'TwVgx':function(_0x40f41c,_0x255527,_0x32bff8,_0x1ad68d){return _0x40f41c(_0x255527,_0x32bff8,_0x1ad68d);}},_0x8c16cc=_0x1fae8e['RANGER_TEST_USERNAME'];if(!_0x8c16cc)return null;const _0x55be14=await fetchCloudProfile(_0x8c16cc);if(_0x55be14)return{'name':_0x55be14['name'],'profile':_0x55be14};const _0x80d2c2=await fetchAuthConfig(),_0x3eb711=pickAdHocEnvKey(_0x80d2c2),_0x192175=_0x1fae8e['RANGER_TEST_PASSWORD'],_0x7c4f27=await _0x1bb33d[_0x50aef4(0x20f)](createCloudProfile,_0x8c16cc,_0x3eb711??undefined,{'username':_0x8c16cc,'password':_0x192175});return console['log'](_0x50aef4(0x1f8)+_0x7c4f27['name']+_0x50aef4(0x231)+_0x8c16cc),{'name':_0x7c4f27['name'],'profile':_0x7c4f27};}function _0x475f(_0x11a94c,_0x31a040){_0x11a94c=_0x11a94c-0x1dd;const _0x244463=_0x2444();let _0x475f19=_0x244463[_0x11a94c];return _0x475f19;}export async function writeSessionToLocalCache(_0x2a5e46,_0x2c9cef,_0x570fc1,_0x315cd9,_0xa4a97c,_0x5dc51d,_0x28a132){const _0x13e734=_0x2767ba,_0x5d67f8={'YDTaG':function(_0x5af3eb,_0x4e9ca2,_0x462f95){return _0x5af3eb(_0x4e9ca2,_0x462f95);},'TmkDc':function(_0xc1cf0f){return _0xc1cf0f();},'gomCl':function(_0x2ebd8f,_0x58f98c){return _0x2ebd8f(_0x58f98c);},'hVkQZ':function(_0x335a25,_0x28aef4,_0x2823ae){return _0x335a25(_0x28aef4,_0x2823ae);}},_0x57e1cb=sessionCacheHash({'orgId':_0x2c9cef,'profileName':_0x2a5e46,'effectiveBaseUrl':_0x570fc1,'setupHeaders':_0x315cd9,'invalidateOn':_0x28a132?.['invalidateOn'],'userAgent':_0x28a132?.[_0x13e734(0x217)],'clientIp':_0x28a132?.['clientIp']}),_0x354e04=_0x5d67f8[_0x13e734(0x211)](getSessionCachePath,_0x57e1cb,_0x2a5e46),_0x1d4746=join(_0x5d67f8['TmkDc'](getRangerHomeDir),'auth');!_0x5d67f8['gomCl'](existsSync,_0x1d4746)&&await mkdir(_0x1d4746,{'recursive':!![]});const _0x7d12d9={..._0xa4a97c};_0x5dc51d&&_0x5dc51d['length']>0x0&&Array[_0x13e734(0x23c)](_0x7d12d9['cookies'])&&(_0x7d12d9[_0x13e734(0x1ea)]=_0x5d67f8[_0x13e734(0x211)](duplicateCookiesForDomains,_0x7d12d9[_0x13e734(0x1ea)],_0x5dc51d));const _0x22c690={'cached_at':new Date()['toISOString'](),'session_state':_0x7d12d9};await _0x5d67f8[_0x13e734(0x24c)](writeFile,_0x354e04,JSON[_0x13e734(0x273)](_0x22c690,null,0x2));const _0x8f7675=getStorageStatePath(_0x354e04);return await writeFile(_0x8f7675,JSON[_0x13e734(0x273)](_0x7d12d9,null,0x2)),_0x8f7675;}export async function checkLocalCache(_0x50741a,_0x579a98,_0x4d4fde,_0x531be5,_0x5b94f0){const _0x4614e8=_0x2767ba,_0x27d6f6={'FxMVP':function(_0x20494c,_0x473df1){return _0x20494c(_0x473df1);},'KMneh':'utf-8'},_0xf34de6=sessionCacheHash({'orgId':_0x579a98,'profileName':_0x50741a,'effectiveBaseUrl':_0x4d4fde,'setupHeaders':_0x531be5,'invalidateOn':_0x5b94f0?.[_0x4614e8(0x251)],'userAgent':_0x5b94f0?.[_0x4614e8(0x217)],'clientIp':_0x5b94f0?.['clientIp']}),_0x4a7407=getSessionCachePath(_0xf34de6,_0x50741a),_0x397f04=getStorageStatePath(_0x4a7407);if(!existsSync(_0x4a7407)||!_0x27d6f6['FxMVP'](existsSync,_0x397f04))return null;try{const _0x53a7a3=await readFile(_0x4a7407,_0x27d6f6['KMneh']);return JSON['parse'](_0x53a7a3),{'storageStatePath':_0x397f04};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x431586,_0x9296a6){const _0x1da595=_0x2767ba,_0x380476={'VXCDf':function(_0x3ef423,_0x56137e){return _0x3ef423===_0x56137e;}};if(!_0x9296a6||!_0x9296a6['domains']?.['length'])return;let _0x2e7608;try{_0x2e7608=new URL(_0x431586);}catch{return;}const _0x5ba297=[];for(const _0x2e46a2 of _0x9296a6[_0x1da595(0x1e3)]){try{_0x5ba297[_0x1da595(0x267)]({'raw':_0x2e46a2,'url':new URL(_0x2e46a2)});}catch{}}if(_0x380476['VXCDf'](_0x5ba297['length'],0x0))return;if(_0x5ba297[_0x1da595(0x280)](_0x12ffad=>_0x12ffad[_0x1da595(0x1e4)][_0x1da595(0x224)]===_0x2e7608['origin']))return;const _0x5d9202=_0x5ba297['map'](_0x2357b0=>'\x22'+_0x2357b0[_0x1da595(0x26c)]+'\x22')[_0x1da595(0x221)](',\x20');console['log'](_0x1da595(0x264)+_0x5d9202+';\x20'+('you\x27re\x20now\x20at\x20\x22'+_0x431586+'\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20')+'If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.');}export async function serverSideLogin(_0x2bb4d0,_0x3fe8fd){const _0x393008=_0x2767ba,_0x7682e2={'cBDmT':_0x393008(0x22a),'DtwKI':function(_0x31d8e4,_0x20898d){return _0x31d8e4 instanceof _0x20898d;},'WtFNc':function(_0x32da8f,_0x348df0){return _0x32da8f===_0x348df0;},'SQoQI':_0x393008(0x268)},_0x3c41a6=process['env'][_0x393008(0x260)],_0x565b47=process[_0x393008(0x1e6)][_0x393008(0x210)],_0x15d3b5={};if(_0x3c41a6)_0x15d3b5[_0x393008(0x226)]=_0x3c41a6;if(_0x565b47)_0x15d3b5[_0x393008(0x22c)]=_0x565b47;if(_0x3fe8fd?.[_0x393008(0x1e1)])_0x15d3b5['force']=!![];if(_0x3fe8fd?.[_0x393008(0x274)])_0x15d3b5['target_url']=_0x3fe8fd[_0x393008(0x274)];_0x3fe8fd?.[_0x393008(0x22f)]&&(_0x15d3b5[_0x393008(0x1eb)]=_0x3fe8fd[_0x393008(0x22f)][_0x393008(0x1e5)],_0x15d3b5['pw_endpoint']=_0x3fe8fd[_0x393008(0x22f)][_0x393008(0x219)]);try{return await apiRequest(_0x393008(0x23e)+encodeURIComponent(_0x2bb4d0)+_0x393008(0x24d),{'method':_0x7682e2[_0x393008(0x215)],'body':JSON['stringify'](_0x15d3b5)});}catch(_0x44faad){if(_0x7682e2[_0x393008(0x214)](_0x44faad,ApiError)&&_0x44faad['status']===0x190&&_0x7682e2[_0x393008(0x1fe)](_0x44faad[_0x393008(0x279)],_0x7682e2['SQoQI']))return{'status':'not_configured','error':_0x44faad['detail']};throw _0x44faad;}}async function serverSideLoginWithOptionalTunnel(_0x376a33,_0x53838c,_0x5bb62e={}){const _0x3d62c6=_0x2767ba,_0xe9c8ba={'hTaaa':'tunnel_login_request','BIDOb':function(_0x3901fb,_0x666fcb){return _0x3901fb(_0x666fcb);},'ojdbT':function(_0x326f3c,_0x428e90,_0x25a416){return _0x326f3c(_0x428e90,_0x25a416);},'ukalM':function(_0x126cfe,_0x275081){return _0x126cfe===_0x275081;},'yeZNp':function(_0x56ac89,_0x1ddd35){return _0x56ac89===_0x1ddd35;},'PreBP':_0x3d62c6(0x263),'hsIMC':function(_0x30de80,_0x52e44c){return _0x30de80(_0x52e44c);},'SgAks':_0x3d62c6(0x1f6),'HfxrV':function(_0x2e484b,_0x3d25b4){return _0x2e484b(_0x3d25b4);},'nyAgY':function(_0x588944){return _0x588944();},'JuenS':function(_0x3bbb04,_0x3d989f){return _0x3bbb04(_0x3d989f);},'djFay':_0x3d62c6(0x218),'pXVTE':function(_0x263986,_0x5a1c2c){return _0x263986??_0x5a1c2c;},'UqckE':_0x3d62c6(0x241)};if(!_0xe9c8ba['BIDOb'](needsTunnel,_0x53838c))return await _0xe9c8ba[_0x3d62c6(0x24f)](serverSideLogin,_0x376a33,{'force':_0x5bb62e[_0x3d62c6(0x1e1)]});let _0x1bea0a=null,_0x2adf8f=null,_0x3901da=null,_0x287b85=null,_0x2659d8=![];const _0x398584=process['env'][_0x3d62c6(0x209)]?.['toLowerCase'](),_0x478401=_0xe9c8ba['ukalM'](_0x398584,'1')||_0xe9c8ba['yeZNp'](_0x398584,_0xe9c8ba[_0x3d62c6(0x250)]),_0x5bfa7f={'profileName':_0x376a33,'targetUrlHost':_0xe9c8ba[_0x3d62c6(0x25f)](targetHostForTelemetry,_0x53838c),'tunnelRequired':!![],'forceLogin':_0xe9c8ba['hsIMC'](Boolean,_0x5bb62e[_0x3d62c6(0x1e1)]),'localBrowserServerHeaded':_0x478401};try{_0x5bb62e['telemetry']?.[_0x3d62c6(0x203)]('tunnel_login_setup',_0x5bfa7f);_0x478401&&console['log'](_0xe9c8ba['SgAks']);_0x1bea0a=await _0xe9c8ba[_0x3d62c6(0x225)](launchBrowserServer,{'headless':!_0x478401}),_0x2adf8f=await createTunnelSession(_0x53838c);const _0x16ab5d=await _0xe9c8ba[_0x3d62c6(0x242)](requireToken);_0x3901da=await _0xe9c8ba['JuenS'](createTunnelBridge,{'localWsUrl':_0x1bea0a['wsEndpoint'],'tunnelServerUrl':_0x2adf8f[_0x3d62c6(0x1ef)],'sessionId':_0x2adf8f[_0x3d62c6(0x1e5)],'apiKey':_0x16ab5d,'onError':_0x2e90c4=>{_0x287b85=_0x2e90c4;},'onClose':()=>{const _0x562e1a=_0x3d62c6;_0x287b85??=new Error(_0x562e1a(0x26a)+_0x376a33);},'onEvent':_0x5cfa92=>trackBridgeEvent(_0x5bb62e[_0x3d62c6(0x1ec)],_0x5cfa92)}),_0x5bb62e[_0x3d62c6(0x1ec)]?.['trackPhaseEnd'](_0xe9c8ba[_0x3d62c6(0x1dd)],{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f['sessionId'],'localBrowserServer':!![],'localBrowserServerHeaded':_0x478401}),_0x2659d8=!![];try{return _0x5bb62e[_0x3d62c6(0x1ec)]?.['trackPhaseStart'](_0x3d62c6(0x258),{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f[_0x3d62c6(0x1e5)]}),await _0xe9c8ba[_0x3d62c6(0x24f)](serverSideLogin,_0x376a33,{'force':_0x5bb62e['force'],'targetUrl':_0x53838c,'tunnel':{'sessionId':_0x2adf8f['sessionId'],'pwEndpoint':_0x2adf8f[_0x3d62c6(0x219)]}})[_0x3d62c6(0x22b)](_0x374bf3=>{const _0x2f3ee1=_0x3d62c6;return _0x5bb62e[_0x2f3ee1(0x1ec)]?.['trackPhaseEnd'](_0xe9c8ba[_0x2f3ee1(0x24e)],{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f?.[_0x2f3ee1(0x1e5)],'loginStatus':_0x374bf3[_0x2f3ee1(0x22d)],'hasSessionState':Boolean(_0x374bf3['session_state']),'hasTestOutput':Boolean(_0x374bf3['test_output']),'bridgeError':errorMessageForTelemetry(_0x287b85)}),_0x374bf3;});}catch(_0xf2b52c){await _0x5bb62e['telemetry']?.['trackPhaseError'](_0xe9c8ba['hTaaa'],_0xe9c8ba['pXVTE'](_0x287b85,_0xf2b52c),{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f['sessionId'],'bridgeError':errorMessageForTelemetry(_0x287b85)});throw _0x287b85??_0xf2b52c;}}catch(_0x516e84){!_0x2659d8&&await _0x5bb62e['telemetry']?.[_0x3d62c6(0x25e)](_0xe9c8ba[_0x3d62c6(0x1dd)],_0x516e84,{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f?.[_0x3d62c6(0x1e5)]});throw _0x516e84;}finally{(_0x2adf8f||_0x1bea0a||_0x3901da)&&(_0x5bb62e[_0x3d62c6(0x1ec)]?.['trackPhaseStart'](_0xe9c8ba['UqckE'],{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f?.['sessionId']}),_0x3901da?.['close'](),_0x1bea0a&&await _0x1bea0a['close']()['catch'](()=>{}),_0x2adf8f&&await _0xe9c8ba['HfxrV'](deleteTunnelSession,_0x2adf8f['sessionId'])['catch'](()=>{}),_0x5bb62e[_0x3d62c6(0x1ec)]?.[_0x3d62c6(0x1fb)](_0x3d62c6(0x241),{..._0x5bfa7f,'tunnelSessionId':_0x2adf8f?.['sessionId']}));}}export async function manualBrowserLogin(_0x3c96c7,_0x3c209e,_0x16eb75={}){const _0x5177b4=_0x2767ba,_0x383ac9={'BagGd':function(_0x2b606a,_0x297ad3){return _0x2b606a/_0x297ad3;},'LnTfT':function(_0x2ef4c3){return _0x2ef4c3();},'YVQYz':_0x5177b4(0x244),'YRRkG':function(_0x28d674,_0x8e3279){return _0x28d674+_0x8e3279;},'Qpcoj':function(_0x230416,_0x3518a0){return _0x230416+_0x3518a0;},'YVziG':'\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','rXUOt':function(_0x4f1b36,_0xf27ae7){return _0x4f1b36(_0xf27ae7);},'mXTJP':_0x5177b4(0x20a),'kwrtW':function(_0x2de4b5,_0x41842b){return _0x2de4b5!==_0x41842b;}};if(!_0x383ac9['LnTfT'](isInteractive))throw new Error(_0x383ac9['YRRkG'](_0x383ac9['Qpcoj']('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x3c96c7[_0x5177b4(0x1fd)]+_0x5177b4(0x1f9),_0x5177b4(0x27c)),_0x5177b4(0x232)));const _0x5eb5b8=_0x3c209e&&_0x3c209e[_0x5177b4(0x1e3)]['length']>0x0?_0x3c209e[_0x5177b4(0x1e3)][0x0]:'about:blank';console[_0x5177b4(0x206)](_0x383ac9['YVziG']),console[_0x5177b4(0x206)]('\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a'),await new Promise(_0x3bc4c3=>setTimeout(_0x3bc4c3,0x7d0));const _0xc2e8a1=await chromium[_0x5177b4(0x228)]({'headless':![]});let _0x3ad11e=null;try{const _0x2f53e6={'ignoreHTTPSErrors':!![]};_0x3c209e?.['setupHeaders']&&(_0x2f53e6['extraHTTPHeaders']=_0x3c209e['setupHeaders']);const _0x3a4159=await _0xc2e8a1[_0x5177b4(0x21e)](_0x2f53e6);await _0x383ac9[_0x5177b4(0x272)](addProfileSetupBanner,_0x3a4159);const _0x19b6ad=await _0x3a4159[_0x5177b4(0x216)]();await _0x19b6ad['goto'](_0x5eb5b8);let _0x455bc5=![];await new Promise(_0x5e1813=>{const _0x361f91=setTimeout(()=>{const _0xd13a7=_0x475f;_0x455bc5=!![],console[_0xd13a7(0x1f2)](_0xd13a7(0x243)+_0x383ac9['BagGd'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0xd13a7(0x208)),_0x5e1813();},MANUAL_LOGIN_TIMEOUT_MS);_0x19b6ad['on'](_0x383ac9['YVQYz'],async()=>{const _0x5a6e45=_0x475f;clearTimeout(_0x361f91);try{const _0x33f567=await _0x3a4159['storageState']();_0x3ad11e=_0x33f567;}catch{}_0x383ac9[_0x5a6e45(0x202)](_0x5e1813);});});if(_0x455bc5&&!_0x3ad11e)throw new Error('Browser\x20login\x20timed\x20out\x20before\x20completion.');}finally{await _0xc2e8a1['close']()['catch'](()=>{});}if(!_0x3ad11e)throw new Error(_0x383ac9[_0x5177b4(0x1e2)]);return _0x383ac9[_0x5177b4(0x222)](_0x16eb75['persistSessionState'],![])&&await apiRequest(_0x5177b4(0x23e)+_0x383ac9[_0x5177b4(0x272)](encodeURIComponent,_0x3c96c7[_0x5177b4(0x1fd)])+'/session',{'method':_0x5177b4(0x22a),'body':JSON[_0x5177b4(0x273)]({'session_state':_0x3ad11e,'updated_by':'cli:manual-login'})}),{'sessionState':_0x3ad11e};}export async function promptSaveCredentials(_0x9a0f18){const _0x16f2fa=_0x2767ba,_0x15b479={'ySNpE':_0x16f2fa(0x234),'MxoFF':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','MLDqg':function(_0x379ca3,_0x388f36,_0x1df977){return _0x379ca3(_0x388f36,_0x1df977);}},_0x1fda75=process['env'][_0x16f2fa(0x260)],_0x217b0e=process['env'][_0x16f2fa(0x210)];if(!_0x1fda75||!_0x217b0e)return;if(!isInteractive())return;const {save:_0x276210}=await _0x246a00[_0x16f2fa(0x25d)]([{'type':_0x15b479[_0x16f2fa(0x1ed)],'name':'save','message':_0x15b479['MxoFF'],'default':![]}]);if(!_0x276210)return;await _0x15b479[_0x16f2fa(0x245)](apiRequest,_0x16f2fa(0x23e)+encodeURIComponent(_0x9a0f18),{'method':_0x16f2fa(0x21c),'body':JSON['stringify']({'username':_0x1fda75,'password':_0x217b0e})}),console['log']('\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.');}export async function resolveCloudProfileSession(_0x108da2,_0x5df7d4={}){const _0x203514=_0x2767ba,_0x35d7ed={'vVJAU':function(_0x361446){return _0x361446();},'rzeUC':function(_0x6abfde,_0x47fa24,_0x4bab33){return _0x6abfde(_0x47fa24,_0x4bab33);},'FBWSS':_0x203514(0x23d),'bGwBx':function(_0x466ca7,_0x46c6c1){return _0x466ca7||_0x46c6c1;},'oaahu':function(_0x2efa40,_0x2e8f34){return _0x2efa40(_0x2e8f34);},'pWSzE':function(_0x44fb1b,_0x47dba4,_0x524ee6,_0xc6be8e,_0x188ef2,_0x69c8b){return _0x44fb1b(_0x47dba4,_0x524ee6,_0xc6be8e,_0x188ef2,_0x69c8b);},'cIvYj':function(_0x26fdde,_0x5a8594){return _0x26fdde&&_0x5a8594;},'qfPiB':function(_0xdfe326,_0x55402f,_0x17a303,_0x3c068a,_0x31cca1){return _0xdfe326(_0x55402f,_0x17a303,_0x3c068a,_0x31cca1);},'oyWgi':function(_0x138159,_0x11c8f1){return _0x138159(_0x11c8f1);},'kyEHR':function(_0x1297ea,_0x2806b7){return _0x1297ea||_0x2806b7;},'gxCuy':function(_0x5082e1,_0x457010,_0x18c5a5,_0x51f7e5){return _0x5082e1(_0x457010,_0x18c5a5,_0x51f7e5);},'MvbBM':function(_0x3d9b57,_0x45bbb4){return _0x3d9b57===_0x45bbb4;},'FaEZn':'success','sulwK':_0x203514(0x20c),'LiTWc':function(_0x38e5bc,_0xd4266a){return _0x38e5bc(_0xd4266a);},'LqDyU':function(_0x29ae76,_0x2ef58b,_0x40b8cf,_0x11c887){return _0x29ae76(_0x2ef58b,_0x40b8cf,_0x11c887);}},_0x5b0f87=_0x108da2[_0x203514(0x23a)]??{},_0x5cae81=await _0x35d7ed[_0x203514(0x1ff)](fetchAuthConfig),_0x17b695=_0x5cae81?_0x35d7ed['rzeUC'](resolveAuthEnvironmentLocally,_0x5cae81,_0x108da2[_0x203514(0x23b)]):null,_0x5ca9a2=typeof _0x17b695?.[_0x203514(0x277)]===_0x35d7ed['FBWSS']&&_0x17b695['loginInstructions']['trim']()?_0x17b695[_0x203514(0x277)]:undefined,_0x2c6000=typeof _0x5b0f87[_0x203514(0x277)]===_0x35d7ed[_0x203514(0x1e0)]&&_0x5b0f87['loginInstructions']['trim']()?_0x5b0f87['loginInstructions']:undefined,_0x34cc10=_0x35d7ed[_0x203514(0x26d)](_0x2c6000,!_0x5ca9a2)?_0x5b0f87:{..._0x5b0f87,'loginInstructions':_0x5ca9a2},_0x385e31=Boolean(_0x34cc10[_0x203514(0x277)]?.['trim']()),_0x1f8444=Boolean(_0x5b0f87[_0x203514(0x25a)]||_0x17b695?.['forceLogin']),_0x19e3b4=_0x17b695?.['domains'],_0x2c5912=_0x5b0f87['setupHeaders'],_0x318d51=_0x2c5912??_0x17b695?.['setupHeaders'],_0x1cc5fb=_0x5df7d4['effectiveBaseUrl']??_0x5b0f87['baseUrl']??(_0x19e3b4&&_0x19e3b4['length']>0x0?_0x19e3b4[0x0]:''),_0x32f3f3=_0x1cc5fb?_0x35d7ed['oaahu'](needsTunnel,_0x1cc5fb):![],_0x322b4d={'invalidateOn':_0x17b695?.[_0x203514(0x251)],'userAgent':_0x17b695?.[_0x203514(0x27e)]?.['userAgent']??_0x5b0f87[_0x203514(0x217)]};_0x1f8444&&console['log']('\x20\x20forceLogin\x20enabled\x20for\x20\x22'+_0x108da2[_0x203514(0x1fd)]+'\x22,\x20refreshing\x20session...');if(!_0x1f8444){const _0x4977fd=await _0x35d7ed['pWSzE'](checkLocalCache,_0x108da2[_0x203514(0x1fd)],_0x108da2[_0x203514(0x246)],_0x1cc5fb,_0x318d51,_0x322b4d);if(_0x4977fd){if(_0x35d7ed['cIvYj'](_0x1cc5fb,!_0x32f3f3)){const _0x136882=await _0x35d7ed[_0x203514(0x249)](isCachedSessionLive,_0x4977fd['storageStatePath'],_0x1cc5fb,{'sessionCheckPath':_0x17b695?.['sessionCheckPath'],'setupHeaders':_0x318d51},{'launchBrowser':launchRealBrowser});if(_0x136882)return console[_0x203514(0x206)](_0x203514(0x261)+_0x108da2[_0x203514(0x1fd)]+'\x22'),{'authPath':_0x4977fd['storageStatePath'],'settings':_0x34cc10,'resolvedEnv':_0x17b695};console[_0x203514(0x206)](_0x203514(0x223)+_0x108da2['name']+_0x203514(0x1f7)),emitSessionValidationHint(_0x1cc5fb,_0x17b695);}else return _0x32f3f3&&console['log'](_0x203514(0x27f)+_0x108da2[_0x203514(0x1fd)]+'\x22'),{'authPath':_0x4977fd['storageStatePath'],'settings':_0x34cc10,'resolvedEnv':_0x17b695};}}if(!_0x1f8444&&_0x108da2['sessionState']){if(_0x32f3f3)console['log']('\x20\x20Skipping\x20cloud\x20session\x20for\x20local\x20target\x20\x22'+_0x1cc5fb+'\x22\x20on\x20profile\x20\x22'+_0x108da2[_0x203514(0x1fd)]+'\x22');else{const _0x3dc703=await writeSessionToLocalCache(_0x108da2['name'],_0x108da2[_0x203514(0x246)],_0x1cc5fb,_0x318d51,_0x108da2[_0x203514(0x24a)],_0x19e3b4,_0x322b4d);if(_0x1cc5fb){const _0x141263=await isCachedSessionLive(_0x3dc703,_0x1cc5fb,{'sessionCheckPath':_0x17b695?.[_0x203514(0x262)],'setupHeaders':_0x318d51},{'launchBrowser':launchRealBrowser});if(_0x141263)return console[_0x203514(0x206)](_0x203514(0x227)+_0x108da2[_0x203514(0x1fd)]+_0x203514(0x207)),{'authPath':_0x3dc703,'settings':_0x34cc10,'resolvedEnv':_0x17b695};console['log']('\x20\x20Cloud\x20session\x20for\x20\x22'+_0x108da2[_0x203514(0x1fd)]+_0x203514(0x1de)),_0x35d7ed['rzeUC'](emitSessionValidationHint,_0x1cc5fb,_0x17b695);}else return{'authPath':_0x3dc703,'settings':_0x34cc10,'resolvedEnv':_0x17b695};}}if(_0x385e31)return console[_0x203514(0x206)](_0x203514(0x1f4)+_0x108da2[_0x203514(0x1fd)]+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x34cc10,'resolvedEnv':_0x17b695};console[_0x203514(0x206)](_0x203514(0x1f4)+_0x108da2['name']+_0x203514(0x204));const _0x1e607a=_0x35d7ed[_0x203514(0x26b)](Boolean,process[_0x203514(0x1e6)]['RANGER_TEST_USERNAME'])&&Boolean(process['env']['RANGER_TEST_PASSWORD']),_0x1124d0=_0x35d7ed['oyWgi'](Boolean,_0x108da2[_0x203514(0x226)]);if(_0x35d7ed['kyEHR'](_0x1e607a,_0x1124d0))try{const _0x1a3b10=_0x1cc5fb?await _0x35d7ed['gxCuy'](serverSideLoginWithOptionalTunnel,_0x108da2['name'],_0x1cc5fb,{'force':_0x1f8444,'telemetry':_0x5df7d4['telemetry']}):await serverSideLogin(_0x108da2['name'],{'force':_0x1f8444});if(_0x1a3b10[_0x203514(0x22d)]==='not_configured')console[_0x203514(0x206)]('\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...');else{if(_0x35d7ed['MvbBM'](_0x1a3b10['status'],_0x35d7ed['FaEZn'])&&_0x1a3b10[_0x203514(0x248)]){console['log']('\x20\x20Login\x20successful.\x20Session\x20cached.');const _0x73cf38=await writeSessionToLocalCache(_0x108da2['name'],_0x108da2[_0x203514(0x246)],_0x1cc5fb,_0x318d51,_0x1a3b10['session_state'],_0x19e3b4,_0x322b4d);return _0x35d7ed['cIvYj'](_0x1e607a,!_0x1124d0)&&await promptSaveCredentials(_0x108da2[_0x203514(0x1fd)]),{'authPath':_0x73cf38,'settings':_0x34cc10,'resolvedEnv':_0x17b695};}else _0x1a3b10['test_output']&&(console[_0x203514(0x206)](_0x203514(0x22e)),console['log'](_0x1a3b10[_0x203514(0x270)])),console[_0x203514(0x206)](_0x35d7ed['sulwK']);}}catch(_0x32bba0){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x32bba0 instanceof Error?_0x32bba0['message']:_0x35d7ed['LiTWc'](String,_0x32bba0))),console[_0x203514(0x206)]('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}const _0x49703b=_0x17b695?{..._0x17b695,'setupHeaders':_0x318d51}:_0x1cc5fb?{'key':_0x108da2[_0x203514(0x23b)]??'','domains':[_0x1cc5fb],'setupHeaders':_0x318d51}:null,{sessionState:_0x31b289}=await _0x35d7ed[_0x203514(0x27d)](manualBrowserLogin,_0x108da2,_0x49703b,{'persistSessionState':!_0x32f3f3}),_0x4c096d=await writeSessionToLocalCache(_0x108da2[_0x203514(0x1fd)],_0x108da2['organizationId'],_0x1cc5fb,_0x318d51,_0x31b289,_0x19e3b4,_0x322b4d);return{'authPath':_0x4c096d,'settings':_0x34cc10,'resolvedEnv':_0x17b695};}
@@ -1 +1 @@
1
- const _0x376f92=_0x3046;(function(_0x2f0d1f,_0x7603e8){const _0x326c49=_0x3046,_0x363d80=_0x2f0d1f();while(!![]){try{const _0x3f0f72=-parseInt(_0x326c49(0x107))/0x1*(parseInt(_0x326c49(0x127))/0x2)+parseInt(_0x326c49(0x117))/0x3*(parseInt(_0x326c49(0xfb))/0x4)+parseInt(_0x326c49(0x122))/0x5*(-parseInt(_0x326c49(0xfa))/0x6)+-parseInt(_0x326c49(0x128))/0x7*(-parseInt(_0x326c49(0x111))/0x8)+-parseInt(_0x326c49(0x116))/0x9*(-parseInt(_0x326c49(0x109))/0xa)+-parseInt(_0x326c49(0xff))/0xb*(-parseInt(_0x326c49(0x101))/0xc)+-parseInt(_0x326c49(0xf9))/0xd;if(_0x3f0f72===_0x7603e8)break;else _0x363d80['push'](_0x363d80['shift']());}catch(_0x41c6f3){_0x363d80['push'](_0x363d80['shift']());}}}(_0x76a8,0x1a229));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x17c4ea=process[_0x376f92(0x10f)],_0x34ccc2={'stdin':process['stdin'],'stdout':process['stdout']}){const _0x56113f=_0x376f92,_0x1ebbaf={'yTHEt':function(_0x1f854f,_0x4c922c){return _0x1f854f(_0x4c922c);}};if(_0x17c4ea['CI'])return![];return _0x1ebbaf[_0x56113f(0x129)](Boolean,_0x34ccc2[_0x56113f(0x108)]['isTTY'])&&_0x1ebbaf[_0x56113f(0x129)](Boolean,_0x34ccc2[_0x56113f(0x12a)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x31e1cc){const _0xbc96f5=_0x376f92,_0x17daa4={'Tpfgy':'setupHeaders','uFLFZ':'userAgent','LtQmV':function(_0x235337,_0xbb6bc0){return _0x235337!==_0xbb6bc0;},'zisdG':_0xbc96f5(0x125)},_0x2be571=new Set(_0x31e1cc[_0xbc96f5(0x123)]??DEFAULT_INVALIDATE_ON),_0x1a542e={'orgId':_0x31e1cc[_0xbc96f5(0x10c)],'profileName':_0x31e1cc[_0xbc96f5(0x10d)]};return _0x2be571['has']('baseUrl')&&(_0x1a542e['effectiveBaseUrl']=_0x31e1cc[_0xbc96f5(0x103)]),_0x2be571[_0xbc96f5(0x11f)](_0x17daa4[_0xbc96f5(0xf8)])&&(_0x1a542e[_0xbc96f5(0x10b)]=_0x31e1cc[_0xbc96f5(0x10b)]?sortObjectKeys(_0x31e1cc[_0xbc96f5(0x10b)]):_0x31e1cc['setupHeaders']),_0x2be571[_0xbc96f5(0x11f)](_0xbc96f5(0x10a))&&(_0x1a542e[_0xbc96f5(0x10a)]=extractPort(_0x31e1cc[_0xbc96f5(0x103)])),_0x2be571[_0xbc96f5(0x11f)](_0x17daa4[_0xbc96f5(0x106)])&&_0x31e1cc[_0xbc96f5(0x114)]!==undefined&&(_0x1a542e[_0xbc96f5(0x114)]=_0x31e1cc[_0xbc96f5(0x114)]),_0x2be571[_0xbc96f5(0x11f)](_0xbc96f5(0x120))&&_0x17daa4[_0xbc96f5(0x10e)](_0x31e1cc[_0xbc96f5(0x120)],undefined)&&(_0x1a542e[_0xbc96f5(0x120)]=_0x31e1cc['clientIp']),createHash(_0x17daa4[_0xbc96f5(0x119)])['update'](JSON['stringify'](_0x1a542e))['digest'](_0xbc96f5(0x11d))['slice'](0x0,0xc);}function extractPort(_0x4d7527){const _0x5c8260=_0x376f92;try{return new URL(_0x4d7527)[_0x5c8260(0x10a)];}catch{return'';}}function sortObjectKeys(_0x1d6049){const _0x17bcf1=_0x376f92,_0x7c2186={};for(const _0x189498 of Object[_0x17bcf1(0xfc)](_0x1d6049)['sort']()){_0x7c2186[_0x189498]=_0x1d6049[_0x189498];}return _0x7c2186;}export function getSessionCachePath(_0x36bed6,_0xa77ad5){const _0x386c0a=_0x376f92;return join(getRangerHomeDir(),'auth',_0x36bed6+'-'+_0xa77ad5+_0x386c0a(0x110));}export function getStorageStatePath(_0x618d83){const _0x1db25d=_0x376f92;return _0x618d83[_0x1db25d(0x105)](/\.json$/,_0x1db25d(0x100));}function _0x76a8(){const _0x201e42=['newContext','userAgent','launchBrowser','784818EwBGzL','3Xnmjkg','toString','zisdG','environments','GgOGT','sessionCheckPath','hex','.localhost','has','clientIp','length','1415tDwUYV','invalidateOn','test','sha256','defaultEnvironmentKey','31852YjtpZG','329weCXwz','yTHEt','stdout','Tpfgy','1404286wmJNxR','942GiiebK','602036ZoGRfj','keys','domain','domcontentloaded','11wIAaDA','.storageState.json','431736egxHxU','PGsOv','effectiveBaseUrl','newPage','replace','uFLFZ','1kmsvva','stdin','10ZpTJkB','port','setupHeaders','orgId','profileName','LtQmV','env','.json','296pNDWDK','PKqOS'];_0x76a8=function(){return _0x201e42;};return _0x76a8();}function _0x3046(_0x406883,_0x35b521){_0x406883=_0x406883-0xf8;const _0x76a837=_0x76a8();let _0x3046eb=_0x76a837[_0x406883];return _0x3046eb;}export function needsTunnel(_0x2e2062){const _0x300561=_0x376f92,_0x3dbe7={'DeLuu':'localhost','eAgTJ':function(_0xd3b71e,_0x532fbe){return _0xd3b71e===_0x532fbe;},'mByRK':'127.0.0.1','PKqOS':_0x300561(0x11e),'GgOGT':'localhost.'};let _0x562e07;try{_0x562e07=new URL(_0x2e2062)['hostname'];}catch{return![];}if(_0x562e07===_0x3dbe7['DeLuu']||_0x3dbe7['eAgTJ'](_0x562e07,_0x3dbe7['mByRK']))return!![];if(_0x562e07['endsWith'](_0x3dbe7[_0x300561(0x112)]))return!![];if(_0x562e07['includes'](_0x3dbe7[_0x300561(0x11b)]))return!![];return![];}export function hostnameOf(_0x51addc){return new URL(_0x51addc)['hostname'];}export function duplicateCookiesForDomains(_0x106ceb,_0x1471d2){const _0x1f646c=_0x376f92,_0x32c319={'kNkQc':function(_0x5df850,_0x422cab){return _0x5df850(_0x422cab);}},_0x427d90=[..._0x106ceb],_0x5ba39b=new Set(_0x106ceb['map'](_0x50f68e=>_0x50f68e[_0x1f646c(0xfd)]));for(const _0x4f8f34 of _0x1471d2){let _0x37af13;try{_0x37af13=_0x32c319['kNkQc'](hostnameOf,_0x4f8f34);}catch{continue;}if(!_0x37af13)continue;const _0x33a86c=_0x37af13['startsWith']('.')?_0x37af13:'.'+_0x37af13;if(_0x5ba39b['has'](_0x37af13)||_0x5ba39b[_0x1f646c(0x11f)](_0x33a86c))continue;for(const _0x545c65 of _0x106ceb){_0x427d90['push']({..._0x545c65,'domain':_0x33a86c});}_0x5ba39b['add'](_0x33a86c);}return _0x427d90;}export function resolveAuthEnvironmentLocally(_0x3065da,_0xa5b3c1){const _0x3f7286=_0x376f92,_0x2e4458={'PGsOv':function(_0x463670,_0x57e963){return _0x463670===_0x57e963;}},_0x9925c6=_0x3065da[_0x3f7286(0x11a)];if(_0xa5b3c1){const _0x2f2a1f=_0x9925c6[_0xa5b3c1];if(!_0x2f2a1f)return null;return{'key':_0xa5b3c1,..._0x2f2a1f};}if(_0x3065da['defaultEnvironmentKey']){const _0x21f69a=_0x9925c6[_0x3065da[_0x3f7286(0x126)]];if(!_0x21f69a)return null;return{'key':_0x3065da['defaultEnvironmentKey'],..._0x21f69a};}const _0x4790b=Object['keys'](_0x9925c6);if(_0x2e4458[_0x3f7286(0x102)](_0x4790b[_0x3f7286(0x121)],0x1)){const _0x11b270=_0x4790b[0x0];return{'key':_0x11b270,..._0x9925c6[_0x11b270]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x50c7e8,_0x1be41d){const _0x464a68=_0x376f92;try{if(_0x1be41d)return new URL(_0x1be41d,_0x50c7e8)[_0x464a68(0x118)]();return new URL(_0x50c7e8)[_0x464a68(0x118)]();}catch{return null;}}export function looksLikeLoginUrl(_0x318c8f){const _0x41b22c=_0x376f92;try{const _0xe98e6a=new URL(_0x318c8f);return LOGIN_URL_PATTERN[_0x41b22c(0x124)](_0xe98e6a['pathname']);}catch{return LOGIN_URL_PATTERN['test'](_0x318c8f);}}export async function isCachedSessionLive(_0xf2983c,_0x18563b,_0x255dae={},_0x4da016={}){const _0x4689fb=_0x376f92,_0x139736={'KpMmy':_0x4689fb(0xfe),'sqvGW':function(_0x469bb8,_0xf005fc){return _0x469bb8===_0xf005fc;}},_0x56e9f9=buildSessionCheckUrl(_0x18563b,_0x255dae[_0x4689fb(0x11c)]);if(!_0x56e9f9)return!![];if(!_0x4da016[_0x4689fb(0x115)])return!![];let _0x23c482=null;try{_0x23c482=await _0x4da016['launchBrowser']();const _0x5d7ba5=await _0x23c482[_0x4689fb(0x113)]({'storageState':_0xf2983c,'ignoreHTTPSErrors':!![],..._0x255dae[_0x4689fb(0x10b)]?{'extraHTTPHeaders':_0x255dae[_0x4689fb(0x10b)]}:{}}),_0x11c288=await _0x5d7ba5[_0x4689fb(0x104)](),_0x281265=await _0x11c288['goto'](_0x56e9f9,{'waitUntil':_0x139736['KpMmy'],'timeout':0x3a98}),_0x494d1e=_0x281265?.['status']();if(_0x494d1e===0x191||_0x139736['sqvGW'](_0x494d1e,0x193))return![];const _0xe7f25a=_0x11c288['url']();if(looksLikeLoginUrl(_0xe7f25a))return![];return!![];}catch{return![];}finally{if(_0x23c482)await _0x23c482['close']()['catch'](()=>{});}}
1
+ const _0xa097d4=_0xb72a;function _0x3841(){const _0x5d3832=['YCQRn','toString','stdin','status','4251888poYerM','effectiveBaseUrl','pathname','7akAfcy','sha256','add','UclOa','VbWrj','localhost.','IgIwU','has','includes','17929980TqHdET','test','profileName','12XQBGqT','uilog','sessionCheckPath','setupHeaders','1031059RXaKYp','stdout','1928502qNoOyF','defaultEnvironmentKey','endsWith','zaYDH','port','Xvzib','stringify','keys','map','invalidateOn','.localhost','newContext','env','clientIp','userAgent','793074slxMbC','127.0.0.1','.json','7350552vZKVFr','6619835YsYIvi'];_0x3841=function(){return _0x5d3832;};return _0x3841();}(function(_0x36087b,_0x4b3f76){const _0x351ca8=_0xb72a,_0x4904ef=_0x36087b();while(!![]){try{const _0x12ee59=-parseInt(_0x351ca8(0x13e))/0x1+parseInt(_0x351ca8(0x167))/0x2*(-parseInt(_0x351ca8(0x14f))/0x3)+-parseInt(_0x351ca8(0x158))/0x4+parseInt(_0x351ca8(0x153))/0x5+parseInt(_0x351ca8(0x140))/0x6+parseInt(_0x351ca8(0x15b))/0x7*(parseInt(_0x351ca8(0x152))/0x8)+parseInt(_0x351ca8(0x164))/0x9;if(_0x12ee59===_0x4b3f76)break;else _0x4904ef['push'](_0x4904ef['shift']());}catch(_0x599586){_0x4904ef['push'](_0x4904ef['shift']());}}}(_0x3841,0xd5ed4));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x4c231b=process[_0xa097d4(0x14c)],_0xce5e9c={'stdin':process[_0xa097d4(0x156)],'stdout':process['stdout']}){const _0x1c035c=_0xa097d4;if(_0x4c231b['CI'])return![];return Boolean(_0xce5e9c[_0x1c035c(0x156)]['isTTY'])&&Boolean(_0xce5e9c[_0x1c035c(0x13f)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x326c9c){const _0x30edc0=_0xa097d4,_0x3e5215={'zZwQE':'baseUrl','PjuZY':_0x30edc0(0x14e),'UUAZO':function(_0x1e8f25,_0x5a5a2b){return _0x1e8f25(_0x5a5a2b);},'IgIwU':_0x30edc0(0x15c)},_0x211198=new Set(_0x326c9c[_0x30edc0(0x149)]??DEFAULT_INVALIDATE_ON),_0x1e85b8={'orgId':_0x326c9c['orgId'],'profileName':_0x326c9c[_0x30edc0(0x166)]};return _0x211198[_0x30edc0(0x162)](_0x3e5215['zZwQE'])&&(_0x1e85b8[_0x30edc0(0x159)]=_0x326c9c[_0x30edc0(0x159)]),_0x211198[_0x30edc0(0x162)](_0x30edc0(0x13d))&&(_0x1e85b8['setupHeaders']=_0x326c9c[_0x30edc0(0x13d)]?sortObjectKeys(_0x326c9c['setupHeaders']):_0x326c9c['setupHeaders']),_0x211198[_0x30edc0(0x162)]('port')&&(_0x1e85b8[_0x30edc0(0x144)]=extractPort(_0x326c9c[_0x30edc0(0x159)])),_0x211198['has'](_0x3e5215['PjuZY'])&&_0x326c9c[_0x30edc0(0x14e)]!==undefined&&(_0x1e85b8['userAgent']=_0x326c9c['userAgent']),_0x211198[_0x30edc0(0x162)](_0x30edc0(0x14d))&&_0x326c9c[_0x30edc0(0x14d)]!==undefined&&(_0x1e85b8[_0x30edc0(0x14d)]=_0x326c9c['clientIp']),_0x3e5215['UUAZO'](createHash,_0x3e5215[_0x30edc0(0x161)])['update'](JSON[_0x30edc0(0x146)](_0x1e85b8))['digest']('hex')['slice'](0x0,0xc);}function extractPort(_0x1f4e59){try{return new URL(_0x1f4e59)['port'];}catch{return'';}}function sortObjectKeys(_0x3ae0cf){const _0x1a30d3=_0xa097d4,_0x224e7a={};for(const _0x187075 of Object[_0x1a30d3(0x147)](_0x3ae0cf)['sort']()){_0x224e7a[_0x187075]=_0x3ae0cf[_0x187075];}return _0x224e7a;}export function getSessionCachePath(_0x456347,_0x210869){const _0x1a2012=_0xa097d4,_0x24fdeb={'UclOa':function(_0x153d55,_0x22a919,_0x526d50,_0x539cb6){return _0x153d55(_0x22a919,_0x526d50,_0x539cb6);},'pkxTT':function(_0x4184c9){return _0x4184c9();}};return _0x24fdeb[_0x1a2012(0x15e)](join,_0x24fdeb['pkxTT'](getRangerHomeDir),'auth',_0x456347+'-'+_0x210869+_0x1a2012(0x151));}export function getStorageStatePath(_0x36ae61){const _0x1ed014=_0xa097d4,_0x19dca0={'YCQRn':'.storageState.json'};return _0x36ae61['replace'](/\.json$/,_0x19dca0[_0x1ed014(0x154)]);}export function needsTunnel(_0x423b98){const _0x27daf0=_0xa097d4,_0x53605e={'Xvzib':function(_0x4701a4,_0x36bb1e){return _0x4701a4===_0x36bb1e;},'uilog':'localhost'};let _0x382a7d;try{_0x382a7d=new URL(_0x423b98)['hostname'];}catch{return![];}if(_0x53605e[_0x27daf0(0x145)](_0x382a7d,_0x53605e[_0x27daf0(0x13b)])||_0x382a7d===_0x27daf0(0x150))return!![];if(_0x382a7d[_0x27daf0(0x142)](_0x27daf0(0x14a)))return!![];if(_0x382a7d[_0x27daf0(0x163)](_0x27daf0(0x160)))return!![];return![];}export function hostnameOf(_0x4379ef){return new URL(_0x4379ef)['hostname'];}export function duplicateCookiesForDomains(_0x57231b,_0x550777){const _0x54b172=_0xa097d4,_0x35f768={'zaYDH':function(_0xac84a6,_0x3b27aa){return _0xac84a6(_0x3b27aa);}},_0x47db57=[..._0x57231b],_0x44a5bd=new Set(_0x57231b[_0x54b172(0x148)](_0x49b1fd=>_0x49b1fd['domain']));for(const _0x19b23d of _0x550777){let _0x2d0c3d;try{_0x2d0c3d=_0x35f768[_0x54b172(0x143)](hostnameOf,_0x19b23d);}catch{continue;}if(!_0x2d0c3d)continue;const _0x1a2d44=_0x2d0c3d['startsWith']('.')?_0x2d0c3d:'.'+_0x2d0c3d;if(_0x44a5bd[_0x54b172(0x162)](_0x2d0c3d)||_0x44a5bd[_0x54b172(0x162)](_0x1a2d44))continue;for(const _0x4ff768 of _0x57231b){_0x47db57['push']({..._0x4ff768,'domain':_0x1a2d44});}_0x44a5bd[_0x54b172(0x15d)](_0x1a2d44);}return _0x47db57;}export function resolveAuthEnvironmentLocally(_0xdca3eb,_0x234a36){const _0x17471d=_0xa097d4,_0x4d6d98={'CkYhw':function(_0x4ccaf1,_0x3b3cb9){return _0x4ccaf1===_0x3b3cb9;}},_0x174c33=_0xdca3eb['environments'];if(_0x234a36){const _0x41002f=_0x174c33[_0x234a36];if(!_0x41002f)return null;return{'key':_0x234a36,..._0x41002f};}if(_0xdca3eb['defaultEnvironmentKey']){const _0x5e927e=_0x174c33[_0xdca3eb[_0x17471d(0x141)]];if(!_0x5e927e)return null;return{'key':_0xdca3eb[_0x17471d(0x141)],..._0x5e927e};}const _0xab5781=Object[_0x17471d(0x147)](_0x174c33);if(_0x4d6d98['CkYhw'](_0xab5781['length'],0x1)){const _0x1e9556=_0xab5781[0x0];return{'key':_0x1e9556,..._0x174c33[_0x1e9556]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;function _0xb72a(_0x81db43,_0x27b7e7){_0x81db43=_0x81db43-0x13b;const _0x3841b0=_0x3841();let _0xb72a2c=_0x3841b0[_0x81db43];return _0xb72a2c;}export function buildSessionCheckUrl(_0x2b51ea,_0x59e993){const _0x26a351=_0xa097d4;try{if(_0x59e993)return new URL(_0x59e993,_0x2b51ea)[_0x26a351(0x155)]();return new URL(_0x2b51ea)[_0x26a351(0x155)]();}catch{return null;}}export function looksLikeLoginUrl(_0x252b6d){const _0x1cbbdf=_0xa097d4;try{const _0x3f4413=new URL(_0x252b6d);return LOGIN_URL_PATTERN[_0x1cbbdf(0x165)](_0x3f4413[_0x1cbbdf(0x15a)]);}catch{return LOGIN_URL_PATTERN['test'](_0x252b6d);}}export async function isCachedSessionLive(_0x3e5c12,_0x17923b,_0x562294={},_0x56c398={}){const _0x16637a=_0xa097d4,_0x579637={'VbWrj':function(_0x4ff632,_0x1031dc){return _0x4ff632===_0x1031dc;},'gwVue':function(_0x580751,_0x405f44){return _0x580751(_0x405f44);}},_0xd34295=buildSessionCheckUrl(_0x17923b,_0x562294[_0x16637a(0x13c)]);if(!_0xd34295)return!![];if(!_0x56c398['launchBrowser'])return!![];let _0x28b6db=null;try{_0x28b6db=await _0x56c398['launchBrowser']();const _0x1fd8be=await _0x28b6db[_0x16637a(0x14b)]({'storageState':_0x3e5c12,'ignoreHTTPSErrors':!![],..._0x562294['setupHeaders']?{'extraHTTPHeaders':_0x562294['setupHeaders']}:{}}),_0x3a4cda=await _0x1fd8be['newPage'](),_0x167add=await _0x3a4cda['goto'](_0xd34295,{'waitUntil':'domcontentloaded','timeout':0x3a98}),_0x2b913b=_0x167add?.[_0x16637a(0x157)]();if(_0x579637[_0x16637a(0x15f)](_0x2b913b,0x191)||_0x2b913b===0x193)return![];const _0x39ae56=_0x3a4cda['url']();if(_0x579637['gwVue'](looksLikeLoginUrl,_0x39ae56))return![];return!![];}catch{return![];}finally{if(_0x28b6db)await _0x28b6db['close']()['catch'](()=>{});}}
@@ -1 +1 @@
1
- const _0x2b4720=_0x2bbc;(function(_0x487473,_0x2de85e){const _0x5b9aff=_0x2bbc,_0x12151d=_0x487473();while(!![]){try{const _0x4b8fa9=-parseInt(_0x5b9aff(0xfd))/0x1*(-parseInt(_0x5b9aff(0xf4))/0x2)+-parseInt(_0x5b9aff(0xfe))/0x3*(-parseInt(_0x5b9aff(0xfc))/0x4)+parseInt(_0x5b9aff(0xfb))/0x5*(parseInt(_0x5b9aff(0xf7))/0x6)+-parseInt(_0x5b9aff(0x103))/0x7*(-parseInt(_0x5b9aff(0x109))/0x8)+parseInt(_0x5b9aff(0x10b))/0x9*(-parseInt(_0x5b9aff(0x10c))/0xa)+-parseInt(_0x5b9aff(0xfa))/0xb+parseInt(_0x5b9aff(0x105))/0xc*(-parseInt(_0x5b9aff(0x10a))/0xd);if(_0x4b8fa9===_0x2de85e)break;else _0x12151d['push'](_0x12151d['shift']());}catch(_0x3fb9fb){_0x12151d['push'](_0x12151d['shift']());}}}(_0x45da,0xe275d));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x2b4720(0x102),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;function _0x45da(){const _0x3e7bee=['6tUUDEU','subarray','Roxnj','1035782PiMVxQ','8240290HgZXap','160kugJTa','1012289SGdQIJ','88755qaCpPl','getAuthTag','setAuthTag','iFlJY','aes-256-gcm','14ayBEiV','WYdul','28355340HoVRwD','gfpUa','FjFei','SkSlP','2879704qJVMHv','13DVmuPz','135AcMeYL','785990ogXbMR','qpMaM','2wcmjrB','vlzHv','final'];_0x45da=function(){return _0x3e7bee;};return _0x45da();}export function deriveKey(_0x11a6eb){const _0x37e667=_0x2b4720,_0x1cecb1={'iFlJY':'sha256'};return pbkdf2Sync(_0x11a6eb,SALT,0x186a0,KEY_LENGTH,_0x1cecb1[_0x37e667(0x101)]);}export function encrypt(_0x429bb9,_0x13e2c2){const _0x7712e8=_0x2b4720,_0xfbda65={'gfpUa':function(_0x3c8085,_0x48f557){return _0x3c8085(_0x48f557);},'qpMaM':function(_0x5b5502,_0x32e8c0){return _0x5b5502(_0x32e8c0);},'Roxnj':'utf8'},_0x552507=_0xfbda65[_0x7712e8(0x106)](deriveKey,_0x13e2c2),_0x3b2222=_0xfbda65[_0x7712e8(0x10d)](randomBytes,IV_LENGTH),_0x4e831f=createCipheriv(ALGORITHM,_0x552507,_0x3b2222),_0x256fe1=Buffer['concat']([_0x4e831f['update'](_0x429bb9,_0xfbda65[_0x7712e8(0xf9)]),_0x4e831f[_0x7712e8(0xf6)]()]),_0x20233c=_0x4e831f[_0x7712e8(0xff)]();return Buffer['concat']([_0x3b2222,_0x20233c,_0x256fe1]);}function _0x2bbc(_0x301e46,_0x28f303){_0x301e46=_0x301e46-0xf4;const _0x45da81=_0x45da();let _0x2bbcf2=_0x45da81[_0x301e46];return _0x2bbcf2;}export function decrypt(_0x3ef170,_0x7198c1){const _0x6edf01=_0x2b4720,_0x35f2b1={'WYdul':function(_0x4c5637,_0x31f4cc){return _0x4c5637(_0x31f4cc);},'FjFei':function(_0x2c1252,_0x29b855){return _0x2c1252+_0x29b855;},'YmbCx':function(_0x5c3c59,_0xcd9004,_0x79ed6b,_0x577989){return _0x5c3c59(_0xcd9004,_0x79ed6b,_0x577989);},'SkSlP':function(_0x13c314,_0x5728ea){return _0x13c314+_0x5728ea;},'vlzHv':'utf8'},_0x5f358b=_0x35f2b1[_0x6edf01(0x104)](deriveKey,_0x7198c1),_0x51305b=_0x3ef170[_0x6edf01(0xf8)](0x0,IV_LENGTH),_0xc2fba6=_0x3ef170[_0x6edf01(0xf8)](IV_LENGTH,_0x35f2b1[_0x6edf01(0x107)](IV_LENGTH,TAG_LENGTH)),_0x2b8e87=_0x3ef170['subarray'](IV_LENGTH+TAG_LENGTH),_0x118731=_0x35f2b1['YmbCx'](createDecipheriv,ALGORITHM,_0x5f358b,_0x51305b);return _0x118731[_0x6edf01(0x100)](_0xc2fba6),_0x35f2b1[_0x6edf01(0x108)](_0x118731['update'](_0x2b8e87),_0x118731['final'](_0x35f2b1[_0x6edf01(0xf5)]));}
1
+ const _0x34324d=_0x3334;(function(_0x1b486e,_0x381ad7){const _0x464336=_0x3334,_0x54271e=_0x1b486e();while(!![]){try{const _0x14c44c=-parseInt(_0x464336(0x9c))/0x1+-parseInt(_0x464336(0x8c))/0x2*(-parseInt(_0x464336(0x91))/0x3)+-parseInt(_0x464336(0x87))/0x4*(parseInt(_0x464336(0x89))/0x5)+parseInt(_0x464336(0x99))/0x6*(parseInt(_0x464336(0x9b))/0x7)+parseInt(_0x464336(0x94))/0x8+-parseInt(_0x464336(0x92))/0x9*(-parseInt(_0x464336(0x9a))/0xa)+-parseInt(_0x464336(0x8f))/0xb*(parseInt(_0x464336(0x98))/0xc);if(_0x14c44c===_0x381ad7)break;else _0x54271e['push'](_0x54271e['shift']());}catch(_0x1e9cd7){_0x54271e['push'](_0x54271e['shift']());}}}(_0x2a1f,0x36c3e));function _0x3334(_0x73f4f4,_0x18d64d){_0x73f4f4=_0x73f4f4-0x86;const _0x2a1f04=_0x2a1f();let _0x3334e6=_0x2a1f04[_0x73f4f4];return _0x3334e6;}import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';function _0x2a1f(){const _0x2f3f3c=['update','2150048pWRObj','aes-256-gcm','HsANY','ranger-auth-encryption','12624dHKTpU','876uTuuNi','338540PXwRJx','11221cawIId','167497kJRUae','AbCcP','52ONAMjf','gujQE','16355EVaZBQ','final','subarray','416910AWtzcU','TWsng','setAuthTag','8261zgbdqH','djAcQ','6HuCtZF','81ANVqsW'];_0x2a1f=function(){return _0x2f3f3c;};return _0x2a1f();}const ALGORITHM=_0x34324d(0x95),SALT=_0x34324d(0x97),KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0xaeb548){const _0x460fce=_0x34324d,_0x59d6ef={'HsANY':function(_0x20fe14,_0x277362,_0x578d06,_0x2b9db4,_0x21f325,_0x5e6876){return _0x20fe14(_0x277362,_0x578d06,_0x2b9db4,_0x21f325,_0x5e6876);},'gujQE':'sha256'};return _0x59d6ef[_0x460fce(0x96)](pbkdf2Sync,_0xaeb548,SALT,0x186a0,KEY_LENGTH,_0x59d6ef[_0x460fce(0x88)]);}export function encrypt(_0x20af77,_0x455348){const _0x20fa32=_0x34324d,_0x3a12dd={'djAcQ':function(_0x504988,_0x4676ba){return _0x504988(_0x4676ba);}},_0x2310b7=deriveKey(_0x455348),_0x504a3c=_0x3a12dd[_0x20fa32(0x90)](randomBytes,IV_LENGTH),_0x2a8003=createCipheriv(ALGORITHM,_0x2310b7,_0x504a3c),_0x31b7ff=Buffer['concat']([_0x2a8003['update'](_0x20af77,'utf8'),_0x2a8003[_0x20fa32(0x8a)]()]),_0xb50ad2=_0x2a8003['getAuthTag']();return Buffer['concat']([_0x504a3c,_0xb50ad2,_0x31b7ff]);}export function decrypt(_0x319973,_0x4f3eeb){const _0x5e7f31=_0x34324d,_0x697bff={'CATbV':function(_0xa78b36,_0x131956){return _0xa78b36(_0x131956);},'AbCcP':function(_0x1ed2a8,_0x4c5fd8,_0x30a652,_0x4a378e){return _0x1ed2a8(_0x4c5fd8,_0x30a652,_0x4a378e);},'rFXBB':function(_0x5ba15c,_0x4248d9){return _0x5ba15c+_0x4248d9;},'TWsng':'utf8'},_0x407937=_0x697bff['CATbV'](deriveKey,_0x4f3eeb),_0x480ec3=_0x319973[_0x5e7f31(0x8b)](0x0,IV_LENGTH),_0x3a9e05=_0x319973[_0x5e7f31(0x8b)](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x4ddcca=_0x319973[_0x5e7f31(0x8b)](IV_LENGTH+TAG_LENGTH),_0x438d47=_0x697bff[_0x5e7f31(0x86)](createDecipheriv,ALGORITHM,_0x407937,_0x480ec3);return _0x438d47[_0x5e7f31(0x8e)](_0x3a9e05),_0x697bff['rFXBB'](_0x438d47[_0x5e7f31(0x93)](_0x4ddcca),_0x438d47['final'](_0x697bff[_0x5e7f31(0x8d)]));}
@@ -1 +1 @@
1
- const _0x33aa9c=_0x4eca;(function(_0x13112d,_0x148d7d){const _0x2576da=_0x4eca,_0x5823ac=_0x13112d();while(!![]){try{const _0x51d8f4=parseInt(_0x2576da(0x116))/0x1*(parseInt(_0x2576da(0x108))/0x2)+-parseInt(_0x2576da(0x119))/0x3+parseInt(_0x2576da(0x12b))/0x4+-parseInt(_0x2576da(0x12c))/0x5+-parseInt(_0x2576da(0x104))/0x6*(-parseInt(_0x2576da(0x11e))/0x7)+parseInt(_0x2576da(0x107))/0x8*(parseInt(_0x2576da(0x12e))/0x9)+-parseInt(_0x2576da(0x105))/0xa;if(_0x51d8f4===_0x148d7d)break;else _0x5823ac['push'](_0x5823ac['shift']());}catch(_0x19bd5b){_0x5823ac['push'](_0x5823ac['shift']());}}}(_0x5290,0xc74a2));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t','--secret','--api-key',_0x33aa9c(0x123),_0x33aa9c(0x118),'--password','--pass',_0x33aa9c(0x126),'--authorization','--header',_0x33aa9c(0x10e),_0x33aa9c(0x11f)]),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function _0x4eca(_0x14faba,_0x4dd1d2){_0x14faba=_0x14faba-0x103;const _0x52906a=_0x5290();let _0x4ecaa5=_0x52906a[_0x14faba];return _0x4ecaa5;}function looksLikeToken(_0x4f9af6){const _0x5559d3=_0x33aa9c;return TOKEN_PATTERNS['some'](_0x27cd96=>_0x27cd96[_0x5559d3(0x124)](_0x4f9af6));}export function sanitizeArgs(_0x1dab6a){const _0xa1e0af=_0x33aa9c,_0x48f8aa={'vCJlJ':function(_0x4db9f7,_0xb7390f){return _0x4db9f7!==_0xb7390f;},'hEdVP':_0xa1e0af(0x110)},_0x74df51=[];let _0x1b0c37=![];for(let _0xa4dde0=0x0;_0xa4dde0<_0x1dab6a['length'];_0xa4dde0++){const _0x239f66=_0x1dab6a[_0xa4dde0];if(_0x1b0c37){_0x74df51['push']('[REDACTED]'),_0x1b0c37=![];continue;}if(_0x239f66[_0xa1e0af(0x10b)]('--')||_0x239f66['startsWith']('-')){const _0x466695=_0x239f66[_0xa1e0af(0x128)]('=');if(_0x48f8aa[_0xa1e0af(0x114)](_0x466695,-0x1)){const _0x1c2c2b=_0x239f66['slice'](0x0,_0x466695)['toLowerCase']();if(SENSITIVE_FLAGS['has'](_0x1c2c2b)){_0x74df51[_0xa1e0af(0x12f)](_0x239f66['slice'](0x0,_0x466695)+_0xa1e0af(0x11d));continue;}}else{const _0x73761a=_0x239f66[_0xa1e0af(0x12a)]();SENSITIVE_FLAGS[_0xa1e0af(0x112)](_0x73761a)&&(_0x1b0c37=!![]);}_0x74df51['push'](_0x239f66);}else looksLikeToken(_0x239f66)?_0x74df51['push'](_0x48f8aa[_0xa1e0af(0x120)]):_0x74df51['push'](_0x239f66);}return _0x74df51['join']('\x20');}export async function logDesirePath(_0x8cb51f){const _0x4d2eb8=_0x33aa9c,_0x4fdb6f={'lOLLm':function(_0x388d68){return _0x388d68();},'DSqbC':'has_token','YHVcq':_0x4d2eb8(0x10a),'rIRvB':'Authorization'};try{const _0x1e59a2=await getToken()['catch'](()=>null),_0x28214f=getApiBaseUrl(),_0x620abd=_0x4fdb6f['lOLLm'](getCurrentVersion),_0xeb172e=_0x1e59a2?_0x4fdb6f[_0x4d2eb8(0x10c)]:_0x4d2eb8(0x122),_0x2d07c9={..._0x8cb51f['metadata'],'authStatus':_0xeb172e,'isTty':process['stdout']['isTTY']??![]},_0x28a201={'Content-Type':_0x4fdb6f['YHVcq']};_0x1e59a2&&(_0x28a201[_0x4fdb6f['rIRvB']]='Bearer\x20'+_0x1e59a2);const _0x23a7a4={'rawCommand':_0x8cb51f['rawCommand'],'errorMessage':_0x8cb51f['errorMessage'],'errorType':_0x8cb51f[_0x4d2eb8(0x121)],'featureId':_0x8cb51f['featureId'],'sessionId':_0x8cb51f['sessionId'],'metadata':_0x2d07c9,'cliVersion':_0x620abd};process['env'][_0x4d2eb8(0x11c)]&&(console[_0x4d2eb8(0x11b)]('[desire-path]\x20Sending\x20log\x20to\x20'+_0x28214f+_0x4d2eb8(0x125)),console['error']('[desire-path]\x20Payload:\x20'+JSON[_0x4d2eb8(0x130)](_0x23a7a4,null,0x2))),await fetch(_0x28214f+_0x4d2eb8(0x125),{'method':_0x4d2eb8(0x103),'headers':_0x28a201,'body':JSON['stringify'](_0x23a7a4)});}catch(_0x5dac9c){process['env'][_0x4d2eb8(0x11c)]&&console['error']('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x5dac9c);}}export function getErrorType(_0x574fd7,_0xf6df80){const _0x32766d=_0x33aa9c,_0x475f86={'RmUba':'unknown','OzTCv':_0x32766d(0x10f),'Imhwl':_0x32766d(0x127),'loKCJ':'unknown_argument','oTqtx':_0x32766d(0x12d),'CIqTt':_0x32766d(0x106),'uNobU':'missing_option','JZkql':'syntax_error'};if(_0xf6df80)return'runtime_error';if(!_0x574fd7)return _0x475f86[_0x32766d(0x11a)];if(_0x574fd7[_0x32766d(0x115)](_0x32766d(0x111)))return _0x475f86['OzTCv'];if(_0x574fd7['includes'](_0x475f86[_0x32766d(0x117)]))return _0x475f86['loKCJ'];if(_0x574fd7[_0x32766d(0x115)]('Not\x20enough\x20non-option\x20arguments'))return _0x475f86[_0x32766d(0x129)];if(_0x574fd7['includes'](_0x475f86[_0x32766d(0x113)]))return'invalid_option_value';if(_0x574fd7['includes'](_0x32766d(0x10d)))return _0x475f86['uNobU'];return _0x475f86[_0x32766d(0x109)];}function _0x5290(){const _0x396667=['DEBUG','=[REDACTED]','364KDVowG','--credentials','hEdVP','errorType','no_token','--apikey','test','/api/v1/mcp/desire-path-logs','--auth','Unknown\x20argument','indexOf','oTqtx','toLowerCase','567216NKBhjS','2781860ulqYCA','missing_required_argument','8603343PsIaZv','push','stringify','POST','79782vVzJIe','13879270bJSdQo','Invalid\x20values','8wkMGdE','2iyNvOT','JZkql','application/json','startsWith','DSqbC','Missing\x20required\x20argument','--cookie','unknown_command','[REDACTED]','Unknown\x20command','has','CIqTt','vCJlJ','includes','1410122OsWWVd','Imhwl','--key','1316124bzCcpF','RmUba','error'];_0x5290=function(){return _0x396667;};return _0x5290();}
1
+ function _0xe664(_0xd6c6f,_0x720f62){_0xd6c6f=_0xd6c6f-0x1a1;const _0x2309b8=_0x2309();let _0xe6642b=_0x2309b8[_0xd6c6f];return _0xe6642b;}const _0xf9828c=_0xe664;(function(_0x4d33d7,_0x3b541d){const _0x1742f6=_0xe664,_0x1be5f2=_0x4d33d7();while(!![]){try{const _0x3d1b8b=-parseInt(_0x1742f6(0x1b5))/0x1+parseInt(_0x1742f6(0x1ab))/0x2+parseInt(_0x1742f6(0x1a2))/0x3+-parseInt(_0x1742f6(0x1c8))/0x4+-parseInt(_0x1742f6(0x1ad))/0x5+-parseInt(_0x1742f6(0x1ba))/0x6+parseInt(_0x1742f6(0x1be))/0x7;if(_0x3d1b8b===_0x3b541d)break;else _0x1be5f2['push'](_0x1be5f2['shift']());}catch(_0x3d41aa){_0x1be5f2['push'](_0x1be5f2['shift']());}}}(_0x2309,0xbfeae));import{getToken}from'./keychain.js';function _0x2309(){const _0x44c694=['Invalid\x20values','missing_required_argument','3104976pkvRJS','errorType','has','[desire-path]\x20Payload:\x20','length','--auth','PWfKu','slice','env','1779468aksEXo','--cookie','1809850xrBDit','=[REDACTED]','KUhXV','push','Afsno','indexOf','invalid_option_value','POST','1236797wMhfxW','unknown_command','--password','--header','catch','4563996VFJEKZ','Unknown\x20command','Not\x20enough\x20non-option\x20arguments','--pass','10990434hCyfxE','includes','runtime_error','iBIjW','--key','toLowerCase','stdout','--authorization','CRiAW','[REDACTED]','1397044aqzYaa','4|2|3|1|6|7|5|0','[desire-path]\x20Sending\x20log\x20to\x20','join','fBsmu','has_token','Missing\x20required\x20argument','Unknown\x20argument','Authorization','application/json','/api/v1/mcp/desire-path-logs','missing_option','sessionId'];_0x2309=function(){return _0x44c694;};return _0x2309();}import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t','--secret','--api-key','--apikey',_0xf9828c(0x1c2),_0xf9828c(0x1b7),_0xf9828c(0x1bd),_0xf9828c(0x1a7),_0xf9828c(0x1c5),_0xf9828c(0x1b8),_0xf9828c(0x1ac),'--credentials']),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function looksLikeToken(_0x2252e1){return TOKEN_PATTERNS['some'](_0x7df799=>_0x7df799['test'](_0x2252e1));}export function sanitizeArgs(_0xd0b42c){const _0x565585=_0xf9828c,_0x16d47a={'YAXax':function(_0x22fba4,_0x143dda){return _0x22fba4<_0x143dda;},'KUhXV':_0x565585(0x1c7),'iBIjW':function(_0x406e90,_0x542999){return _0x406e90!==_0x542999;}},_0x3ae06f=[];let _0x1d30b8=![];for(let _0x3d08c7=0x0;_0x16d47a['YAXax'](_0x3d08c7,_0xd0b42c[_0x565585(0x1a6)]);_0x3d08c7++){const _0x1ff4af=_0xd0b42c[_0x3d08c7];if(_0x1d30b8){_0x3ae06f['push'](_0x16d47a[_0x565585(0x1af)]),_0x1d30b8=![];continue;}if(_0x1ff4af['startsWith']('--')||_0x1ff4af['startsWith']('-')){const _0x2b8235=_0x1ff4af[_0x565585(0x1b2)]('=');if(_0x16d47a[_0x565585(0x1c1)](_0x2b8235,-0x1)){const _0x3f8d54=_0x1ff4af[_0x565585(0x1a9)](0x0,_0x2b8235)['toLowerCase']();if(SENSITIVE_FLAGS[_0x565585(0x1a4)](_0x3f8d54)){_0x3ae06f[_0x565585(0x1b0)](_0x1ff4af['slice'](0x0,_0x2b8235)+_0x565585(0x1ae));continue;}}else{const _0x1d2588=_0x1ff4af[_0x565585(0x1c3)]();SENSITIVE_FLAGS['has'](_0x1d2588)&&(_0x1d30b8=!![]);}_0x3ae06f[_0x565585(0x1b0)](_0x1ff4af);}else looksLikeToken(_0x1ff4af)?_0x3ae06f[_0x565585(0x1b0)](_0x16d47a[_0x565585(0x1af)]):_0x3ae06f['push'](_0x1ff4af);}return _0x3ae06f[_0x565585(0x1cb)]('\x20');}export async function logDesirePath(_0x4ec2cd){const _0x473f61=_0xf9828c,_0x34f5b5={'SQXwr':'no_token','CRiAW':_0x473f61(0x1d1),'Afsno':_0x473f61(0x1b4)};try{const _0x444f22=await getToken()[_0x473f61(0x1b9)](()=>null),_0x2a58a9=getApiBaseUrl(),_0x310646=getCurrentVersion(),_0x4d746a=_0x444f22?_0x473f61(0x1cd):_0x34f5b5['SQXwr'],_0x3b543c={..._0x4ec2cd['metadata'],'authStatus':_0x4d746a,'isTty':process[_0x473f61(0x1c4)]['isTTY']??![]},_0x25c22c={'Content-Type':_0x34f5b5[_0x473f61(0x1c6)]};_0x444f22&&(_0x25c22c[_0x473f61(0x1d0)]='Bearer\x20'+_0x444f22);const _0x23bc50={'rawCommand':_0x4ec2cd['rawCommand'],'errorMessage':_0x4ec2cd['errorMessage'],'errorType':_0x4ec2cd[_0x473f61(0x1a3)],'featureId':_0x4ec2cd['featureId'],'sessionId':_0x4ec2cd[_0x473f61(0x1d4)],'metadata':_0x3b543c,'cliVersion':_0x310646};process['env']['DEBUG']&&(console['error'](_0x473f61(0x1ca)+_0x2a58a9+'/api/v1/mcp/desire-path-logs'),console['error'](_0x473f61(0x1a5)+JSON['stringify'](_0x23bc50,null,0x2))),await fetch(_0x2a58a9+_0x473f61(0x1d2),{'method':_0x34f5b5[_0x473f61(0x1b1)],'headers':_0x25c22c,'body':JSON['stringify'](_0x23bc50)});}catch(_0x5eb8e5){process[_0x473f61(0x1aa)]['DEBUG']&&console['error']('[desire-path]\x20Failed\x20to\x20send:\x20'+_0x5eb8e5);}}export function getErrorType(_0x2dddbf,_0xb2469f){const _0x21bb08=_0xf9828c,_0x23ecab={'PWfKu':_0x21bb08(0x1c9),'kMZHp':'syntax_error','Xfwhw':_0x21bb08(0x1b6),'fBsmu':_0x21bb08(0x1d3),'AFfFx':_0x21bb08(0x1b3)},_0x17babf=_0x23ecab[_0x21bb08(0x1a8)]['split']('|');let _0x573b7c=0x0;while(!![]){switch(_0x17babf[_0x573b7c++]){case'0':return _0x23ecab['kMZHp'];case'1':if(_0x2dddbf['includes'](_0x21bb08(0x1cf)))return'unknown_argument';continue;case'2':if(!_0x2dddbf)return'unknown';continue;case'3':if(_0x2dddbf[_0x21bb08(0x1bf)](_0x21bb08(0x1bb)))return _0x23ecab['Xfwhw'];continue;case'4':if(_0xb2469f)return _0x21bb08(0x1c0);continue;case'5':if(_0x2dddbf[_0x21bb08(0x1bf)](_0x21bb08(0x1ce)))return _0x23ecab[_0x21bb08(0x1cc)];continue;case'6':if(_0x2dddbf['includes'](_0x21bb08(0x1bc)))return _0x21bb08(0x1a1);continue;case'7':if(_0x2dddbf[_0x21bb08(0x1bf)](_0x21bb08(0x1d5)))return _0x23ecab['AFfFx'];continue;}break;}}
@@ -1 +1 @@
1
- function _0xbfbc(_0x3d9c9a,_0x43174a){_0x3d9c9a=_0x3d9c9a-0x65;const _0x1b93a8=_0x1b93();let _0xbfbc3f=_0x1b93a8[_0x3d9c9a];return _0xbfbc3f;}const _0x40ab9a=_0xbfbc;(function(_0x2c0a02,_0xed5371){const _0x2a32b2=_0xbfbc,_0x181e41=_0x2c0a02();while(!![]){try{const _0x1f22a6=parseInt(_0x2a32b2(0xb0))/0x1+-parseInt(_0x2a32b2(0x91))/0x2+parseInt(_0x2a32b2(0x90))/0x3*(parseInt(_0x2a32b2(0xa8))/0x4)+-parseInt(_0x2a32b2(0x8a))/0x5+-parseInt(_0x2a32b2(0x79))/0x6+parseInt(_0x2a32b2(0x76))/0x7*(parseInt(_0x2a32b2(0xa9))/0x8)+parseInt(_0x2a32b2(0xa2))/0x9;if(_0x1f22a6===_0xed5371)break;else _0x181e41['push'](_0x181e41['shift']());}catch(_0x39a0bb){_0x181e41['push'](_0x181e41['shift']());}}}(_0x1b93,0x2f211));import{spawn}from'child_process';import _0x3a3130 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x40ab9a(0xa5),WORKOS_TOKEN_URL=_0x40ab9a(0x81);function _0x1b93(){const _0x37f722=['hPgHU','jhfWV','Waiting\x20for\x20authentication...','map','MBylf','325906iybtRX','access_token','refresh_token','expires_in','MOZGg','stdin','Provisioning\x20CLI\x20token...','gIZTo','device_code','stringify','email','json','ZCqkH','unref','GET','base64url','xdg-open','gLxdY','now','Code:\x20','239603wcyHoY','nXmio','workosClientId','2283192Qjsqhr','text','CLI\x20Key','zjjbi','Setting\x20up\x20your\x20organization...','xmvvX','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','filter','https://api.workos.com/user_management/authenticate','Invalid\x20JWT\x20format','/cli-auth/token','name','org_id','error','length','POST','Device\x20authorization\x20timed\x20out','1848590oPckiA','EGSXh','Failed\x20to\x20create\x20organization:\x20','Using\x20organization:\x20','Failed\x20to\x20refresh\x20token\x20with\x20org:\x20','token','9jxZdDC','318416cFNuxl','organizationId','application/json','application/x-www-form-urlencoded','log','AzzRI','status','Authentication\x20failed','BLgGn','platform','list','Failed\x20to\x20fetch\x20memberships:\x20','/api-keys','/organization/me','CCuxF','darwin','write','1134135liDMfq','sLbYl','mGsOo','https://api.workos.com/user_management/authorize/device','stdout','/organization/self-serve-signup','365412ftBAWr','88voXxAD','interval'];_0x1b93=function(){return _0x37f722;};return _0x1b93();}export async function requestDeviceCode(_0x452db8){const _0x105711=_0x40ab9a,_0x5003e9={'ChZsm':_0x105711(0x88)},_0x285634=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x5003e9['ChZsm'],'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x452db8})});if(!_0x285634['ok']){const _0x5aad4c=await _0x285634[_0x105711(0x7a)]();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x285634[_0x105711(0x97)]+'\x20'+_0x5aad4c);}return _0x285634['json']();}export async function pollForTokens(_0x2b108a,_0x1b9935,_0x31d645,_0x412861){const _0x237128=_0x40ab9a,_0x1f0d95={'uhfIQ':function(_0x29adb6,_0x104d8b){return _0x29adb6+_0x104d8b;},'kGNyF':function(_0x51bc94,_0x425d44){return _0x51bc94*_0x425d44;},'iEnuY':function(_0x5853d7,_0x1191ff){return _0x5853d7*_0x1191ff;},'eRZKj':function(_0x57573c,_0x83efab){return _0x57573c(_0x83efab);},'USFwN':function(_0x6f516,_0x46c246,_0x3a3f9f){return _0x6f516(_0x46c246,_0x3a3f9f);},'xNnTa':_0x237128(0x94),'nXmio':function(_0x2f50e6,_0x236e28){return _0x2f50e6===_0x236e28;},'BLgGn':'authorization_pending','hfFnq':_0x237128(0x98)},_0x33cffb=_0x1f0d95['uhfIQ'](Date[_0x237128(0x74)](),_0x1f0d95['kGNyF'](_0x412861,0x3e8));let _0x27bc9b=_0x1f0d95['iEnuY'](_0x31d645,0x3e8);while(Date[_0x237128(0x74)]()<_0x33cffb){await _0x1f0d95['eRZKj'](sleep,_0x27bc9b);const _0x22c774=await _0x1f0d95['USFwN'](fetch,WORKOS_TOKEN_URL,{'method':_0x237128(0x88),'headers':{'Content-Type':_0x1f0d95['xNnTa']},'body':new URLSearchParams({'client_id':_0x2b108a,'device_code':_0x1b9935,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x22c774['ok'])return _0x22c774['json']();const _0x534303=await _0x22c774['json']();if(_0x1f0d95['nXmio'](_0x534303[_0x237128(0x86)],_0x1f0d95[_0x237128(0x99)]))continue;if(_0x1f0d95[_0x237128(0x77)](_0x534303['error'],'slow_down')){_0x27bc9b+=0x3e8;continue;}throw new Error(_0x534303['error_description']||_0x534303['error']||_0x1f0d95['hfFnq']);}throw new Error(_0x237128(0x89));}async function fetchUserProfile(_0x1f8c70){const _0x593908=_0x40ab9a,_0x3c3033={'WBEUG':function(_0x44f32c){return _0x44f32c();}},_0x915f8d=_0x3c3033['WBEUG'](getApiBaseUrl);try{const _0x6c6a7e=await fetch(_0x915f8d+_0x593908(0x9e),{'method':'GET','headers':{'workos-token':_0x1f8c70}});if(_0x6c6a7e['ok'])return _0x6c6a7e['json']();}catch{}return null;}function buildKeyName(_0x1890d5,_0x20aa80){const _0x817b51=_0x40ab9a,_0x2f0f2b={'KWvnn':function(_0x110f3f,_0x2547bd){return _0x110f3f===_0x2547bd;},'MXJXm':function(_0x1be983,_0x5df1a3){return _0x1be983+_0x5df1a3;}},_0x12ae08=_0x20aa80[_0x817b51(0x80)](_0x5f13d=>_0x5f13d[_0x817b51(0x84)]===_0x1890d5||_0x5f13d['name']['startsWith'](_0x1890d5+'\x20('));if(_0x2f0f2b['KWvnn'](_0x12ae08['length'],0x0))return _0x1890d5;return _0x1890d5+'\x20('+_0x2f0f2b['MXJXm'](_0x12ae08['length'],0x1)+')';}export async function provisionApiKey(_0x4666f8){const _0x2b9c9c=_0x40ab9a,_0x5be967={'MBylf':_0x2b9c9c(0x93),'liZQn':'GET','xmvvX':function(_0x4b7907,_0x216a12,_0x2fb67a){return _0x4b7907(_0x216a12,_0x2fb67a);},'bSoTx':'mcp:write'},_0xca060=getApiBaseUrl(),_0x1f6bb4={'Content-Type':_0x5be967[_0x2b9c9c(0xaf)],'workos-token':_0x4666f8},_0x338f5d=await fetchUserProfile(_0x4666f8),_0xef2e1b=_0x338f5d?.['firstName']||_0x338f5d?.[_0x2b9c9c(0x6c)]?.['split']('@')[0x0],_0xdc296e=_0xef2e1b?_0xef2e1b+'\x27s\x20CLI\x20Key':_0x2b9c9c(0x7b);let _0xb25aa6=[];try{const _0x23deae=await fetch(_0xca060+'/api-keys',{'method':_0x5be967['liZQn'],'headers':_0x1f6bb4});if(_0x23deae['ok']){const _0x3ac311=await _0x23deae['json']();_0xb25aa6=_0x3ac311['apiKeys'];}}catch{}const _0x4abdae=_0x5be967[_0x2b9c9c(0x7e)](buildKeyName,_0xdc296e,_0xb25aa6),_0xa857b0=await fetch(_0xca060+_0x2b9c9c(0x9d),{'method':_0x2b9c9c(0x88),'headers':_0x1f6bb4,'body':JSON[_0x2b9c9c(0x6b)]({'name':_0x4abdae,'scope':_0x5be967['bSoTx']})});if(!_0xa857b0['ok']){const _0x2e5a1b=await _0xa857b0[_0x2b9c9c(0x7a)]();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0xa857b0['status']+'\x20'+_0x2e5a1b);}const _0x247c4f=await _0xa857b0['json']();return _0x247c4f['apiKey']['token'];}export function openBrowser(_0x505420){const _0x5932c4=_0x40ab9a,_0x46f63e={'zjjbi':function(_0x522485,_0x580d7c){return _0x522485===_0x580d7c;},'gLxdY':'ignore','VeYFW':_0x5932c4(0xa0),'sLbYl':_0x5932c4(0x72)};try{if(_0x46f63e[_0x5932c4(0x7c)](process[_0x5932c4(0x9a)],'win32')){const _0x12ec84=spawn('cmd',['/c','start','',_0x505420],{'detached':!![],'stdio':_0x46f63e['gLxdY'],'windowsHide':!![]});_0x12ec84[_0x5932c4(0x6f)]();return;}const _0x703584=_0x46f63e['zjjbi'](process[_0x5932c4(0x9a)],_0x46f63e['VeYFW'])?'open':_0x46f63e[_0x5932c4(0xa3)],_0x1852a4=spawn(_0x703584,[_0x505420],{'detached':!![],'stdio':_0x46f63e[_0x5932c4(0x73)]});_0x1852a4['unref']();}catch{}}function decodeJwtPayload(_0x3c049a){const _0x50f1a1=_0x40ab9a,_0x301658={'GOXip':function(_0x4ef102,_0x3ec6ed){return _0x4ef102!==_0x3ec6ed;},'hPgHU':_0x50f1a1(0x71),'ZCqkH':'utf-8'},_0x251bcf=_0x3c049a['split']('.');if(_0x301658['GOXip'](_0x251bcf[_0x50f1a1(0x87)],0x3))throw new Error(_0x50f1a1(0x82));const _0x2d959c=Buffer['from'](_0x251bcf[0x1],_0x301658[_0x50f1a1(0xab)])['toString'](_0x301658[_0x50f1a1(0x6e)]);return JSON['parse'](_0x2d959c);}async function selfServeSignup(_0x4832d4){const _0x542066=_0x40ab9a,_0x5b127c={'AzzRI':function(_0x5029d3,_0x8b11e9,_0x315c32){return _0x5029d3(_0x8b11e9,_0x315c32);},'jhfWV':_0x542066(0x88),'gcHSF':'application/json'},_0x441943=getApiBaseUrl(),_0x5d68eb=await _0x5b127c[_0x542066(0x96)](fetch,_0x441943+_0x542066(0xa7),{'method':_0x5b127c[_0x542066(0xac)],'headers':{'Content-Type':_0x5b127c['gcHSF'],'workos-token':_0x4832d4}});if(!_0x5d68eb['ok']){const _0x262cfb=await _0x5d68eb['text']();throw new Error(_0x542066(0x8c)+_0x5d68eb[_0x542066(0x97)]+'\x20'+_0x262cfb);}return _0x5d68eb[_0x542066(0x6d)]();}async function fetchMyMemberships(_0x138dc8){const _0x34c5c1=_0x40ab9a,_0x24ce2b={'vntlt':function(_0x418d24){return _0x418d24();},'GtHFA':function(_0x59fa62,_0xd06ab5,_0x92b1e2){return _0x59fa62(_0xd06ab5,_0x92b1e2);},'mGsOo':_0x34c5c1(0x70)},_0x45e74f=_0x24ce2b['vntlt'](getApiBaseUrl),_0x3a0d8b=await _0x24ce2b['GtHFA'](fetch,_0x45e74f+'/organization/my-memberships',{'method':_0x24ce2b[_0x34c5c1(0xa4)],'headers':{'workos-token':_0x138dc8}});if(!_0x3a0d8b['ok']){const _0x3a9062=await _0x3a0d8b['text']();throw new Error(_0x34c5c1(0x9c)+_0x3a0d8b[_0x34c5c1(0x97)]+'\x20'+_0x3a9062);}const _0x1278a5=await _0x3a0d8b[_0x34c5c1(0x6d)]();return _0x1278a5['memberships'];}async function refreshTokenWithOrg(_0x70b678,_0x22a2ff,_0x92eeb6){const _0x490565=_0x40ab9a,_0xcd0457={'XkhKB':function(_0x403b8e,_0x242aca,_0x1287d4){return _0x403b8e(_0x242aca,_0x1287d4);},'CCuxF':_0x490565(0x94)},_0x4ebf3a=await _0xcd0457['XkhKB'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':_0xcd0457[_0x490565(0x9f)]},'body':new URLSearchParams({'client_id':_0x70b678,'grant_type':_0x490565(0xb2),'refresh_token':_0x22a2ff,'organization_id':_0x92eeb6})});if(!_0x4ebf3a['ok']){const _0x5bf371=await _0x4ebf3a['text']();throw new Error(_0x490565(0x8e)+_0x4ebf3a[_0x490565(0x97)]+'\x20'+_0x5bf371);}return _0x4ebf3a[_0x490565(0x6d)]();}async function provisionCliToken(_0x3eb752){const _0xea5236=_0x40ab9a,_0x2da215={'fbkAu':function(_0x23d9ce){return _0x23d9ce();},'GjkFG':'POST'},_0x5d5057=_0x2da215['fbkAu'](getApiBaseUrl),_0x592cbb=await fetch(_0x5d5057+_0xea5236(0x83),{'method':_0x2da215['GjkFG'],'headers':{'Content-Type':'application/json','workos-token':_0x3eb752}});if(!_0x592cbb['ok']){const _0x859f67=await _0x592cbb['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x592cbb[_0xea5236(0x97)]+'\x20'+_0x859f67);}return _0x592cbb['json']();}export async function runDeviceAuthFlow(){const _0xec8051=_0x40ab9a,_0x204155={'bbKEt':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','cinax':function(_0x511269,_0x13731a){return _0x511269(_0x13731a);},'gIZTo':_0xec8051(0xad),'EGSXh':function(_0x291835,_0x1f8277){return _0x291835(_0x1f8277);},'COgew':function(_0x423871,_0x22df34){return _0x423871===_0x22df34;},'vArrr':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','KAzNe':'selected','HQzpd':function(_0x9ef736,_0x5f08fb,_0x472605,_0x58fc66){return _0x9ef736(_0x5f08fb,_0x472605,_0x58fc66);},'MOZGg':_0xec8051(0x68)},_0xf41345=getCurrentEnvironment(),_0x1fa981=ENVIRONMENT_CONFIGS[_0xf41345][_0xec8051(0x78)],_0x2b6350=await requestDeviceCode(_0x1fa981);console[_0xec8051(0x95)](_0xec8051(0x7f)),console['log'](_0x204155['bbKEt']),_0x204155['cinax'](openBrowser,_0x2b6350['verification_uri_complete']),console[_0xec8051(0x95)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x2b6350['verification_uri_complete']),console['log'](_0xec8051(0x75)+_0x2b6350['user_code']+'\x0a'),process[_0xec8051(0xa6)][_0xec8051(0xa1)](_0x204155[_0xec8051(0x69)]);let _0x35d9e4=await pollForTokens(_0x1fa981,_0x2b6350[_0xec8051(0x6a)],_0x2b6350[_0xec8051(0xaa)],_0x2b6350[_0xec8051(0x65)]);console['log']('\x20✓');const _0x5b8c0f=decodeJwtPayload(_0x35d9e4[_0xec8051(0xb1)]);if(!_0x5b8c0f[_0xec8051(0x85)]){const _0x1c2edf=await _0x204155['EGSXh'](fetchMyMemberships,_0x35d9e4['access_token']);let _0x2ba1e1;if(_0x204155['COgew'](_0x1c2edf[_0xec8051(0x87)],0x0)){process[_0xec8051(0xa6)][_0xec8051(0xa1)](_0xec8051(0x7d));const _0x396756=await _0x204155[_0xec8051(0x8b)](selfServeSignup,_0x35d9e4['access_token']);_0x2ba1e1=_0x396756['organizationId'],console['log']('\x20✓');}else{if(_0x1c2edf[_0xec8051(0x87)]===0x1)_0x2ba1e1=_0x1c2edf[0x0][_0xec8051(0x92)],console[_0xec8051(0x95)](_0xec8051(0x8d)+_0x1c2edf[0x0]['name']);else{const _0xc8a290=process[_0xec8051(0x67)]['isTTY']&&process['stdout']['isTTY'];if(!_0xc8a290)throw new Error(_0x204155['vArrr']+'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.');const {selected:_0x38be6a}=await _0x3a3130['prompt']([{'type':_0xec8051(0x9b),'name':_0x204155['KAzNe'],'message':'Select\x20an\x20organization:','choices':_0x1c2edf[_0xec8051(0xae)](_0x30b512=>({'name':_0x30b512[_0xec8051(0x84)],'value':_0x30b512['organizationId']}))}]);_0x2ba1e1=_0x38be6a;}}_0x35d9e4=await _0x204155['HQzpd'](refreshTokenWithOrg,_0x1fa981,_0x35d9e4['refresh_token'],_0x2ba1e1);}process['stdout'][_0xec8051(0xa1)](_0x204155[_0xec8051(0x66)]);const _0x20a529=await provisionCliToken(_0x35d9e4['access_token']);return console[_0xec8051(0x95)]('\x20✓'),await storeToken(_0x20a529[_0xec8051(0x8f)]),_0x35d9e4[_0xec8051(0xb2)]&&await storeRefreshToken(_0x35d9e4[_0xec8051(0xb2)]),_0x20a529[_0xec8051(0x8f)];}function sleep(_0x53694f){return new Promise(_0xec4ecf=>setTimeout(_0xec4ecf,_0x53694f));}
1
+ const _0x3ed022=_0x341a;(function(_0x5786fc,_0x3171b7){const _0x5479a9=_0x341a,_0x4b5bad=_0x5786fc();while(!![]){try{const _0x3d52a7=parseInt(_0x5479a9(0x1d3))/0x1*(parseInt(_0x5479a9(0x1bc))/0x2)+-parseInt(_0x5479a9(0x1cd))/0x3*(parseInt(_0x5479a9(0x1fa))/0x4)+parseInt(_0x5479a9(0x1e3))/0x5+parseInt(_0x5479a9(0x1f4))/0x6+-parseInt(_0x5479a9(0x1a3))/0x7*(-parseInt(_0x5479a9(0x1c3))/0x8)+parseInt(_0x5479a9(0x1cf))/0x9+-parseInt(_0x5479a9(0x1da))/0xa;if(_0x3d52a7===_0x3171b7)break;else _0x4b5bad['push'](_0x4b5bad['shift']());}catch(_0x11c21e){_0x4b5bad['push'](_0x4b5bad['shift']());}}}(_0x208b,0xef3c5));import{spawn}from'child_process';import _0x177796 from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x3ed022(0x1f1),WORKOS_TOKEN_URL='https://api.workos.com/user_management/authenticate';export async function requestDeviceCode(_0x5e881e){const _0x52aecf=_0x3ed022,_0x4d054d={'pMhwT':_0x52aecf(0x1b4)},_0x16dc99=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x4d054d[_0x52aecf(0x1ea)],'headers':{'Content-Type':_0x52aecf(0x1b3)},'body':new URLSearchParams({'client_id':_0x5e881e})});if(!_0x16dc99['ok']){const _0x3e4f6c=await _0x16dc99['text']();throw new Error('Failed\x20to\x20request\x20device\x20code:\x20'+_0x16dc99['status']+'\x20'+_0x3e4f6c);}return _0x16dc99['json']();}export async function pollForTokens(_0x2348e8,_0x193766,_0x503e60,_0x2adc59){const _0x30283d=_0x3ed022,_0x510411={'sxwMj':function(_0x424e4c,_0x4548a8){return _0x424e4c+_0x4548a8;},'Zxhhp':function(_0x13fe6e,_0x174366){return _0x13fe6e*_0x174366;},'JLZGV':function(_0x3be6b9,_0x44e883){return _0x3be6b9*_0x44e883;},'cdeOv':function(_0x4ae75a,_0x3d42f8,_0x23be05){return _0x4ae75a(_0x3d42f8,_0x23be05);},'fQtTd':_0x30283d(0x1a5),'rXkci':function(_0x43ef06,_0xa54ce0){return _0x43ef06===_0xa54ce0;},'onwtC':'slow_down','HFVYy':_0x30283d(0x1b1),'wssiM':_0x30283d(0x1ec)},_0x3aa080=_0x510411['sxwMj'](Date[_0x30283d(0x1c5)](),_0x510411[_0x30283d(0x1d9)](_0x2adc59,0x3e8));let _0x293217=_0x510411['JLZGV'](_0x503e60,0x3e8);while(Date[_0x30283d(0x1c5)]()<_0x3aa080){await sleep(_0x293217);const _0x469912=await _0x510411['cdeOv'](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x2348e8,'device_code':_0x193766,'grant_type':_0x510411[_0x30283d(0x1e6)]})});if(_0x469912['ok'])return _0x469912['json']();const _0x326c1e=await _0x469912[_0x30283d(0x1d1)]();if(_0x326c1e[_0x30283d(0x1a4)]==='authorization_pending')continue;if(_0x510411[_0x30283d(0x1de)](_0x326c1e[_0x30283d(0x1a4)],_0x510411[_0x30283d(0x1d6)])){_0x293217+=0x3e8;continue;}throw new Error(_0x326c1e[_0x30283d(0x1c0)]||_0x326c1e[_0x30283d(0x1a4)]||_0x510411[_0x30283d(0x1d4)]);}throw new Error(_0x510411['wssiM']);}async function fetchUserProfile(_0x385c00){const _0xcddadb=_0x3ed022,_0x4cff2c=getApiBaseUrl();try{const _0x43a826=await fetch(_0x4cff2c+_0xcddadb(0x1ef),{'method':_0xcddadb(0x1ca),'headers':{'workos-token':_0x385c00}});if(_0x43a826['ok'])return _0x43a826['json']();}catch{}return null;}function _0x341a(_0x2e5059,_0x45efd8){_0x2e5059=_0x2e5059-0x1a0;const _0x208bfc=_0x208b();let _0x341a69=_0x208bfc[_0x2e5059];return _0x341a69;}function buildKeyName(_0x478111,_0x9ab513){const _0x14a31c=_0x3ed022,_0x4bf45d={'OdPaz':function(_0x119b8f,_0x36d3a9){return _0x119b8f===_0x36d3a9;}},_0x5d6915=_0x9ab513[_0x14a31c(0x1fd)](_0x86cf1b=>_0x86cf1b[_0x14a31c(0x1b9)]===_0x478111||_0x86cf1b[_0x14a31c(0x1b9)][_0x14a31c(0x1df)](_0x478111+'\x20('));if(_0x4bf45d[_0x14a31c(0x1b0)](_0x5d6915['length'],0x0))return _0x478111;return _0x478111+'\x20('+(_0x5d6915['length']+0x1)+')';}export async function provisionApiKey(_0x2f1308){const _0x151f16=_0x3ed022,_0x2c0d7c={'fpVBK':'CLI\x20Key','upuLZ':function(_0x4cb039,_0x5bc7b7,_0x4f5a66){return _0x4cb039(_0x5bc7b7,_0x4f5a66);},'TOvwH':'GET','ZnKnD':function(_0x58b8e2,_0x4381f7,_0x2a9a5b){return _0x58b8e2(_0x4381f7,_0x2a9a5b);},'TLVpW':'POST'},_0x7e3456=getApiBaseUrl(),_0x27e804={'Content-Type':'application/json','workos-token':_0x2f1308},_0x596325=await fetchUserProfile(_0x2f1308),_0x1e1483=_0x596325?.['firstName']||_0x596325?.['email']?.[_0x151f16(0x1e8)]('@')[0x0],_0x24c109=_0x1e1483?_0x1e1483+_0x151f16(0x1f5):_0x2c0d7c[_0x151f16(0x1fb)];let _0x3df052=[];try{const _0x26dcc3=await _0x2c0d7c['upuLZ'](fetch,_0x7e3456+_0x151f16(0x1b2),{'method':_0x2c0d7c[_0x151f16(0x1ba)],'headers':_0x27e804});if(_0x26dcc3['ok']){const _0x20a13c=await _0x26dcc3['json']();_0x3df052=_0x20a13c[_0x151f16(0x1f7)];}}catch{}const _0x5d9e67=_0x2c0d7c['ZnKnD'](buildKeyName,_0x24c109,_0x3df052),_0x1b2eb6=await fetch(_0x7e3456+'/api-keys',{'method':_0x2c0d7c['TLVpW'],'headers':_0x27e804,'body':JSON['stringify']({'name':_0x5d9e67,'scope':_0x151f16(0x1f6)})});if(!_0x1b2eb6['ok']){const _0x16fb38=await _0x1b2eb6['text']();throw new Error(_0x151f16(0x1a2)+_0x1b2eb6[_0x151f16(0x1a0)]+'\x20'+_0x16fb38);}const _0x56bf28=await _0x1b2eb6['json']();return _0x56bf28[_0x151f16(0x1f9)][_0x151f16(0x1ce)];}export function openBrowser(_0x335ddd){const _0x531358=_0x3ed022,_0x1757a5={'xBEHW':function(_0xa9aa40,_0x225c8e,_0x16180a,_0x592e1e){return _0xa9aa40(_0x225c8e,_0x16180a,_0x592e1e);},'vuZvw':'start','NHAte':'ignore','sLWCw':function(_0x148b87,_0x2575f2){return _0x148b87===_0x2575f2;},'JzOEF':_0x531358(0x1d2),'UAQDK':_0x531358(0x1f8),'eaMBV':function(_0x2a94c3,_0x2b3dc9,_0x3c27b7,_0x654c5f){return _0x2a94c3(_0x2b3dc9,_0x3c27b7,_0x654c5f);}};try{if(process['platform']==='win32'){const _0x5477b2=_0x1757a5['xBEHW'](spawn,_0x531358(0x1af),['/c',_0x1757a5['vuZvw'],'',_0x335ddd],{'detached':!![],'stdio':_0x1757a5[_0x531358(0x1d8)],'windowsHide':!![]});_0x5477b2[_0x531358(0x1c7)]();return;}const _0x2b9a49=_0x1757a5[_0x531358(0x1c1)](process['platform'],_0x1757a5['JzOEF'])?_0x1757a5['UAQDK']:'xdg-open',_0x5d00ba=_0x1757a5[_0x531358(0x1e9)](spawn,_0x2b9a49,[_0x335ddd],{'detached':!![],'stdio':_0x1757a5[_0x531358(0x1d8)]});_0x5d00ba[_0x531358(0x1c7)]();}catch{}}function decodeJwtPayload(_0xecff6d){const _0xf3135e=_0x3ed022,_0x309904={'nBbhy':function(_0x5a8db3,_0x11e1a1){return _0x5a8db3!==_0x11e1a1;},'HbdTW':_0xf3135e(0x1b5),'rpkdb':_0xf3135e(0x1d7)},_0x33afe8=_0xecff6d['split']('.');if(_0x309904[_0xf3135e(0x1be)](_0x33afe8[_0xf3135e(0x1ad)],0x3))throw new Error(_0x309904[_0xf3135e(0x1c8)]);const _0x8aeb6=Buffer[_0xf3135e(0x1dc)](_0x33afe8[0x1],_0x309904['rpkdb'])[_0xf3135e(0x1f0)](_0xf3135e(0x1e5));return JSON['parse'](_0x8aeb6);}async function selfServeSignup(_0x6ac584){const _0x2d1461=_0x3ed022,_0x5a264a={'vYFwZ':function(_0x14dd74){return _0x14dd74();},'gdnpH':'POST'},_0x29c011=_0x5a264a['vYFwZ'](getApiBaseUrl),_0x449510=await fetch(_0x29c011+'/organization/self-serve-signup',{'method':_0x5a264a['gdnpH'],'headers':{'Content-Type':'application/json','workos-token':_0x6ac584}});if(!_0x449510['ok']){const _0x2942a1=await _0x449510[_0x2d1461(0x1ab)]();throw new Error(_0x2d1461(0x1db)+_0x449510[_0x2d1461(0x1a0)]+'\x20'+_0x2942a1);}return _0x449510[_0x2d1461(0x1d1)]();}async function fetchMyMemberships(_0x385293){const _0x212349=_0x3ed022,_0x575311={'KomAX':function(_0xded6a6){return _0xded6a6();},'TCKQR':_0x212349(0x1ca)},_0x162a5d=_0x575311['KomAX'](getApiBaseUrl),_0x390ce7=await fetch(_0x162a5d+_0x212349(0x1ac),{'method':_0x575311['TCKQR'],'headers':{'workos-token':_0x385293}});if(!_0x390ce7['ok']){const _0x324cb9=await _0x390ce7['text']();throw new Error(_0x212349(0x1ed)+_0x390ce7['status']+'\x20'+_0x324cb9);}const _0x558576=await _0x390ce7['json']();return _0x558576[_0x212349(0x1b8)];}async function refreshTokenWithOrg(_0x5d6314,_0x1f438c,_0x48169c){const _0x4cc50f=_0x3ed022,_0x2d75c2={'ndHIR':_0x4cc50f(0x1b4),'invcM':_0x4cc50f(0x1b3),'Yzxwx':_0x4cc50f(0x1c2)},_0x503c1b=await fetch(WORKOS_TOKEN_URL,{'method':_0x2d75c2['ndHIR'],'headers':{'Content-Type':_0x2d75c2['invcM']},'body':new URLSearchParams({'client_id':_0x5d6314,'grant_type':_0x2d75c2[_0x4cc50f(0x1ee)],'refresh_token':_0x1f438c,'organization_id':_0x48169c})});if(!_0x503c1b['ok']){const _0x52a72e=await _0x503c1b[_0x4cc50f(0x1ab)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x503c1b[_0x4cc50f(0x1a0)]+'\x20'+_0x52a72e);}return _0x503c1b[_0x4cc50f(0x1d1)]();}async function provisionCliToken(_0x2946c8){const _0x2e5914=_0x3ed022,_0x4d2e16={'qIvpw':function(_0x284a31){return _0x284a31();},'EHrwr':function(_0x4388b,_0x47ad4e,_0x9f6ae2){return _0x4388b(_0x47ad4e,_0x9f6ae2);},'NyjrS':_0x2e5914(0x1b4),'votZD':_0x2e5914(0x1c6)},_0x12138e=_0x4d2e16[_0x2e5914(0x1e1)](getApiBaseUrl),_0x11a895=await _0x4d2e16[_0x2e5914(0x1f2)](fetch,_0x12138e+_0x2e5914(0x1cb),{'method':_0x4d2e16[_0x2e5914(0x1aa)],'headers':{'Content-Type':_0x4d2e16['votZD'],'workos-token':_0x2946c8}});if(!_0x11a895['ok']){const _0x2e1809=await _0x11a895[_0x2e5914(0x1ab)]();throw new Error(_0x2e5914(0x1b7)+_0x11a895['status']+'\x20'+_0x2e1809);}return _0x11a895['json']();}export async function runDeviceAuthFlow(){const _0x5646ba=_0x3ed022,_0x5b71c6={'xdzaU':function(_0x39ffca){return _0x39ffca();},'AsAHT':_0x5646ba(0x1bb),'WVCAD':_0x5646ba(0x1a7),'dKAPY':function(_0x8f1ddd,_0x1f84f2,_0x2d20ac,_0x6b1795,_0x11c058){return _0x8f1ddd(_0x1f84f2,_0x2d20ac,_0x6b1795,_0x11c058);},'ECjvZ':function(_0x558ac1,_0x1bdd19){return _0x558ac1(_0x1bdd19);},'BTfdP':function(_0x6401bf,_0x1bb31d){return _0x6401bf===_0x1bb31d;},'wASeR':_0x5646ba(0x1f3),'ZukNy':_0x5646ba(0x1e2),'ETvjs':'Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','halIE':_0x5646ba(0x1a6),'nrWRH':_0x5646ba(0x1e0),'bEIrv':function(_0x3c7429,_0x2671e1,_0x5b126e,_0x55626b){return _0x3c7429(_0x2671e1,_0x5b126e,_0x55626b);},'TVgRb':_0x5646ba(0x1bd),'mzRbS':function(_0x39cb9a,_0x2d646d){return _0x39cb9a(_0x2d646d);}},_0x189060=_0x5b71c6['xdzaU'](getCurrentEnvironment),_0x2b44b9=ENVIRONMENT_CONFIGS[_0x189060][_0x5646ba(0x1fc)],_0x4f7a0f=await requestDeviceCode(_0x2b44b9);console[_0x5646ba(0x1d5)]('\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...'),console['log'](_0x5b71c6['AsAHT']),openBrowser(_0x4f7a0f[_0x5646ba(0x1fe)]),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x4f7a0f[_0x5646ba(0x1fe)]),console['log']('Code:\x20'+_0x4f7a0f['user_code']+'\x0a'),process['stdout']['write'](_0x5b71c6[_0x5646ba(0x1b6)]);let _0x1a742f=await _0x5b71c6[_0x5646ba(0x1e4)](pollForTokens,_0x2b44b9,_0x4f7a0f['device_code'],_0x4f7a0f[_0x5646ba(0x1eb)],_0x4f7a0f['expires_in']);console[_0x5646ba(0x1d5)]('\x20✓');const _0x5d3e80=_0x5b71c6[_0x5646ba(0x1cc)](decodeJwtPayload,_0x1a742f['access_token']);if(!_0x5d3e80['org_id']){const _0x23bdf7=await _0x5b71c6[_0x5646ba(0x1cc)](fetchMyMemberships,_0x1a742f['access_token']);let _0x5d5fe0;if(_0x5b71c6['BTfdP'](_0x23bdf7['length'],0x0)){process[_0x5646ba(0x1ae)][_0x5646ba(0x1a8)](_0x5b71c6[_0x5646ba(0x1e7)]);const _0x400de9=await _0x5b71c6[_0x5646ba(0x1cc)](selfServeSignup,_0x1a742f['access_token']);_0x5d5fe0=_0x400de9[_0x5646ba(0x1d0)],console[_0x5646ba(0x1d5)]('\x20✓');}else{if(_0x23bdf7['length']===0x1)_0x5d5fe0=_0x23bdf7[0x0][_0x5646ba(0x1d0)],console['log']('Using\x20organization:\x20'+_0x23bdf7[0x0]['name']);else{const _0x2a7007=process['stdin']['isTTY']&&process[_0x5646ba(0x1ae)]['isTTY'];if(!_0x2a7007)throw new Error(_0x5b71c6['ZukNy']+_0x5b71c6['ETvjs']);const {selected:_0x152cb5}=await _0x177796[_0x5646ba(0x1a1)]([{'type':_0x5b71c6[_0x5646ba(0x1dd)],'name':_0x5646ba(0x1bf),'message':_0x5b71c6[_0x5646ba(0x1c9)],'choices':_0x23bdf7[_0x5646ba(0x1c4)](_0x34401f=>({'name':_0x34401f[_0x5646ba(0x1b9)],'value':_0x34401f[_0x5646ba(0x1d0)]}))}]);_0x5d5fe0=_0x152cb5;}}_0x1a742f=await _0x5b71c6[_0x5646ba(0x1a9)](refreshTokenWithOrg,_0x2b44b9,_0x1a742f[_0x5646ba(0x1c2)],_0x5d5fe0);}process['stdout']['write'](_0x5b71c6['TVgRb']);const _0x2786bd=await provisionCliToken(_0x1a742f['access_token']);return console[_0x5646ba(0x1d5)]('\x20✓'),await storeToken(_0x2786bd[_0x5646ba(0x1ce)]),_0x1a742f['refresh_token']&&await _0x5b71c6['mzRbS'](storeRefreshToken,_0x1a742f[_0x5646ba(0x1c2)]),_0x2786bd['token'];}function sleep(_0x228bcf){return new Promise(_0x49cdb7=>setTimeout(_0x49cdb7,_0x228bcf));}function _0x208b(){const _0x4f6348=['error_description','sLWCw','refresh_token','8WAHoTQ','map','now','application/json','unref','HbdTW','nrWRH','GET','/cli-auth/token','ECjvZ','21PjDJTN','token','16338780YeHHWp','organizationId','json','darwin','142ZSHvtz','HFVYy','log','onwtC','base64url','NHAte','Zxhhp','45186610bjrHTG','Failed\x20to\x20create\x20organization:\x20','from','halIE','rXkci','startsWith','Select\x20an\x20organization:','qIvpw','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','2386305fofsbJ','dKAPY','utf-8','fQtTd','wASeR','split','eaMBV','pMhwT','interval','Device\x20authorization\x20timed\x20out','Failed\x20to\x20fetch\x20memberships:\x20','Yzxwx','/organization/me','toString','https://api.workos.com/user_management/authorize/device','EHrwr','Setting\x20up\x20your\x20organization...','292230ZCZLWZ','\x27s\x20CLI\x20Key','mcp:write','apiKeys','open','apiKey','101788OOgtNC','fpVBK','workosClientId','filter','verification_uri_complete','status','prompt','Failed\x20to\x20provision\x20API\x20key:\x20','11361539BWlrCK','error','urn:ietf:params:oauth:grant-type:device_code','list','Waiting\x20for\x20authentication...','write','bEIrv','NyjrS','text','/organization/my-memberships','length','stdout','cmd','OdPaz','Authentication\x20failed','/api-keys','application/x-www-form-urlencoded','POST','Invalid\x20JWT\x20format','WVCAD','Failed\x20to\x20provision\x20CLI\x20token:\x20','memberships','name','TOvwH','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','24116BhANuJ','Provisioning\x20CLI\x20token...','nBbhy','selected'];_0x208b=function(){return _0x4f6348;};return _0x208b();}
@@ -1 +1 @@
1
- const _0x13f10c=_0x3ba3;(function(_0x3a51ef,_0x8df186){const _0x51ee22=_0x3ba3,_0x14dc80=_0x3a51ef();while(!![]){try{const _0x2375f6=-parseInt(_0x51ee22(0xa4))/0x1+-parseInt(_0x51ee22(0x94))/0x2*(-parseInt(_0x51ee22(0x8b))/0x3)+parseInt(_0x51ee22(0x9a))/0x4+-parseInt(_0x51ee22(0xa5))/0x5*(parseInt(_0x51ee22(0x87))/0x6)+parseInt(_0x51ee22(0x8e))/0x7*(-parseInt(_0x51ee22(0x93))/0x8)+-parseInt(_0x51ee22(0x7d))/0x9+-parseInt(_0x51ee22(0x7e))/0xa*(-parseInt(_0x51ee22(0x86))/0xb);if(_0x2375f6===_0x8df186)break;else _0x14dc80['push'](_0x14dc80['shift']());}catch(_0x147d1b){_0x14dc80['push'](_0x14dc80['shift']());}}}(_0x1fbb,0x6661e));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':_0x13f10c(0xa3)},'staging':{'apiBaseUrl':'https://api.staging.ranger.net','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x13f10c(0x98),'mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x13f10c(0x9f),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};function _0x1fbb(){const _0x13d6fd=['mcpAuthUrl','vNUTl','RANGER_HOOKS','2026184XJwuLt','26qJoAOT','\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.','aiProxyUrl','NXpJW','https://ai-proxy-301751771437.us-central1.run.app','env','2695364GYBRyc','auto','Invalid\x20RANGER_TRANSPORT=\x22','zNLEj','DjxsQ','http://localhost:8080','RANGER_DISABLE_MCP','RANGER_TRANSPORT','jEEbb','https://mcp-auth.ranger.net/mcp','93063HXtSoo','5clexSd','\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.','7354575wiHDLB','1736940QVPelM','mcp','RANGER_CLI_ENV','true','TvyAj','local','staging','RANGER_BYOK','11idViAv','344670XlJyiq','Qxknn','error','nova-act-cli','182949dNuZmj','bVCBh','apiBaseUrl','7ZafMwF','RANGER_MCP_AUTH_URL'];_0x1fbb=function(){return _0x13d6fd;};return _0x1fbb();}export const DEFAULT_ENVIRONMENT='prod';export function isValidEnvironment(_0xd347c){const _0x4ecbb6=_0x13f10c,_0x14d960={'bVCBh':'prod','Qxknn':function(_0x47014f,_0x3f43d){return _0x47014f===_0x3f43d;},'ijVPg':_0x4ecbb6(0x84)};return _0xd347c===_0x14d960[_0x4ecbb6(0x8c)]||_0x14d960[_0x4ecbb6(0x88)](_0xd347c,_0x14d960['ijVPg'])||_0x14d960['Qxknn'](_0xd347c,_0x4ecbb6(0x83));}export function getCurrentEnvironment(){const _0x4796a7=_0x13f10c,_0x4bfb5f={'tNqAU':function(_0x537a3f,_0x4c3a83){return _0x537a3f(_0x4c3a83);}},_0x36571e=process['env'][_0x4796a7(0x80)];if(_0x36571e&&_0x4bfb5f['tNqAU'](isValidEnvironment,_0x36571e))return _0x36571e;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x22c406=_0x13f10c,_0x3da520={'NXpJW':function(_0x597ddf){return _0x597ddf();}};return ENVIRONMENT_CONFIGS[_0x3da520[_0x22c406(0x97)](getCurrentEnvironment)][_0x22c406(0x8d)];}export function getAiProxyUrl(){const _0x42c2db=_0x13f10c,_0x1312a4={'gkDCT':function(_0x3f0a30){return _0x3f0a30();}};return ENVIRONMENT_CONFIGS[_0x1312a4['gkDCT'](getCurrentEnvironment)][_0x42c2db(0x96)];}export function getMcpAuthUrl(){const _0x81125b=_0x13f10c,_0x101db3={'vNUTl':function(_0x11cc2b){return _0x11cc2b();}};return process['env'][_0x81125b(0x8f)]??ENVIRONMENT_CONFIGS[_0x101db3[_0x81125b(0x91)](getCurrentEnvironment)][_0x81125b(0x90)];}function _0x3ba3(_0x4b5ee2,_0x2e7196){_0x4b5ee2=_0x4b5ee2-0x7c;const _0x1fbb87=_0x1fbb();let _0x3ba352=_0x1fbb87[_0x4b5ee2];return _0x3ba352;}export function isByokEnabled(){const _0x48e306=_0x13f10c,_0xec1682={'hcXrO':function(_0x6dd39b,_0x2fe913){return _0x6dd39b===_0x2fe913;},'TvyAj':_0x48e306(0x81)};return _0xec1682['hcXrO'](process[_0x48e306(0x99)][_0x48e306(0x85)],_0xec1682[_0x48e306(0x82)]);}function isVerificationTransport(_0x4a354e){const _0x30734d=_0x13f10c,_0x18513c={'rGmZB':'playwright-cli','uApPR':function(_0x7f91ea,_0x5226f5){return _0x7f91ea===_0x5226f5;},'QXcaz':_0x30734d(0x8a),'Ghneb':'rangerwright-cli'};return _0x4a354e===_0x30734d(0x7f)||_0x4a354e===_0x18513c['rGmZB']||_0x18513c['uApPR'](_0x4a354e,_0x18513c['QXcaz'])||_0x4a354e===_0x18513c['Ghneb'];}const LEGACY_TRANSPORT_ENV_VARS=['RANGER_USE_NOVA_ACT',_0x13f10c(0xa0)];export function getVerificationTransport(){const _0x3429fd=_0x13f10c,_0x4ea67e={'zNLEj':function(_0x1f52e1,_0x9d03e){return _0x1f52e1(_0x9d03e);}},_0x2ebfe6=process['env'][_0x3429fd(0xa1)]?.['trim']();if(_0x2ebfe6){if(_0x4ea67e[_0x3429fd(0x9d)](isVerificationTransport,_0x2ebfe6))return _0x2ebfe6;throw new Error(_0x3429fd(0x9c)+_0x2ebfe6+_0x3429fd(0x7c));}const _0x52195a=LEGACY_TRANSPORT_ENV_VARS['find'](_0x3e463b=>process['env'][_0x3e463b]);if(_0x52195a)throw new Error(_0x52195a+_0x3429fd(0x95));return'mcp';}export function resolveHookMode(_0x44874f=process[_0x13f10c(0x99)]){const _0x4025b1=_0x13f10c,_0x4a7390={'jEEbb':_0x4025b1(0x9b),'DjxsQ':function(_0x5c66e5,_0x2a61e2){return _0x5c66e5===_0x2a61e2;},'MlSQT':function(_0x42310f,_0x28518d){return _0x42310f+_0x28518d;}},_0x17af81=_0x44874f[_0x4025b1(0x92)]?.['trim']()['toLowerCase']();if(!_0x17af81)return _0x4a7390[_0x4025b1(0xa2)];if(_0x17af81==='off'||_0x4a7390[_0x4025b1(0x9e)](_0x17af81,'on')||_0x4a7390[_0x4025b1(0x9e)](_0x17af81,'auto'))return _0x17af81;return console[_0x4025b1(0x89)](_0x4a7390['MlSQT']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x44874f[_0x4025b1(0x92)]+'\x22.\x20','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.')),_0x4025b1(0x9b);}
1
+ const _0x563031=_0x164b;(function(_0x46ae17,_0x56e5ce){const _0x4186df=_0x164b,_0x5dbe5f=_0x46ae17();while(!![]){try{const _0x119430=parseInt(_0x4186df(0x135))/0x1+parseInt(_0x4186df(0x124))/0x2*(-parseInt(_0x4186df(0x131))/0x3)+parseInt(_0x4186df(0x121))/0x4+parseInt(_0x4186df(0x12d))/0x5*(parseInt(_0x4186df(0x138))/0x6)+-parseInt(_0x4186df(0x129))/0x7+parseInt(_0x4186df(0x12a))/0x8*(parseInt(_0x4186df(0x13f))/0x9)+-parseInt(_0x4186df(0x122))/0xa;if(_0x119430===_0x56e5ce)break;else _0x5dbe5f['push'](_0x5dbe5f['shift']());}catch(_0x2a91e7){_0x5dbe5f['push'](_0x5dbe5f['shift']());}}}(_0x22da,0xdafde));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x563031(0x118),'workosClientId':_0x563031(0x134),'aiProxyUrl':_0x563031(0x13a),'mcpAuthUrl':'https://mcp-auth.ranger.net/mcp'},'staging':{'apiBaseUrl':'https://api.staging.ranger.net','workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x563031(0x126),'mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x563031(0x123),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':'http://localhost:8090','mcpAuthUrl':_0x563031(0x127)}};export const DEFAULT_ENVIRONMENT=_0x563031(0x13c);export function isValidEnvironment(_0x2ce39f){const _0xfb5914=_0x563031,_0xd26078={'EMMkF':_0xfb5914(0x137),'RaCnn':_0xfb5914(0x12f)};return _0x2ce39f==='prod'||_0x2ce39f===_0xd26078[_0xfb5914(0x12e)]||_0x2ce39f===_0xd26078[_0xfb5914(0x11d)];}function _0x164b(_0x23bf41,_0x2943af){_0x23bf41=_0x23bf41-0x116;const _0x22da5f=_0x22da();let _0x164b76=_0x22da5f[_0x23bf41];return _0x164b76;}export function getCurrentEnvironment(){const _0x3be1e0=process['env']['RANGER_CLI_ENV'];if(_0x3be1e0&&isValidEnvironment(_0x3be1e0))return _0x3be1e0;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){const _0x4922cc=_0x563031,_0x474831={'sCCVQ':function(_0x55dc10){return _0x55dc10();}};return ENVIRONMENT_CONFIGS[_0x474831['sCCVQ'](getCurrentEnvironment)][_0x4922cc(0x11a)];}export function getAiProxyUrl(){const _0x517b47=_0x563031,_0xc3ec24={'dxZsa':function(_0xa26f39){return _0xa26f39();}};return ENVIRONMENT_CONFIGS[_0xc3ec24['dxZsa'](getCurrentEnvironment)][_0x517b47(0x11f)];}export function getMcpAuthUrl(){const _0x50d79a=_0x563031;return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x50d79a(0x12c)];}export function isByokEnabled(){const _0x2cd4c0=_0x563031,_0x504079={'OMMcY':'true'};return process['env'][_0x2cd4c0(0x13e)]===_0x504079['OMMcY'];}function isVerificationTransport(_0x5c7a37){const _0x5cdbb4=_0x563031,_0x22b9ed={'Bygcx':function(_0x3056df,_0x550302){return _0x3056df===_0x550302;}};return _0x5c7a37==='mcp'||_0x22b9ed[_0x5cdbb4(0x13b)](_0x5c7a37,_0x5cdbb4(0x117))||_0x5c7a37==='nova-act-cli'||_0x5c7a37==='rangerwright-cli';}const LEGACY_TRANSPORT_ENV_VARS=[_0x563031(0x139),_0x563031(0x136)];export function getVerificationTransport(){const _0x14e2a9=_0x563031,_0x3b5c4b={'iUrLL':function(_0x52f586,_0x31e037){return _0x52f586(_0x31e037);}},_0x494480=process['env']['RANGER_TRANSPORT']?.['trim']();if(_0x494480){if(_0x3b5c4b['iUrLL'](isVerificationTransport,_0x494480))return _0x494480;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x494480+_0x14e2a9(0x11b));}const _0x4f74a3=LEGACY_TRANSPORT_ENV_VARS[_0x14e2a9(0x119)](_0x5f29b5=>process['env'][_0x5f29b5]);if(_0x4f74a3)throw new Error(_0x4f74a3+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.');return _0x14e2a9(0x116);}function _0x22da(){const _0x59df0c=['mcp','playwright-cli','https://api.ranger.net','find','apiBaseUrl','\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.','RANGER_HOOKS','RaCnn','toLowerCase','aiProxyUrl','off','1562756GpeMMS','28988090UFLANa','http://localhost:8080','12wXMbFx','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.','https://ai-proxy-301751771437.us-central1.run.app','http://localhost:8080/mcp','rQYHg','1195467TNftSJ','136JFFiUp','env','mcpAuthUrl','7252970hKNzuB','EMMkF','local','DIRSa','26079wFcxtN','zArMd','\x22.\x20','client_01J9CBYM7M5ZETCF7G6614DXR2','1263977FJRfLc','RANGER_DISABLE_MCP','staging','6FglWXQ','RANGER_USE_NOVA_ACT','https://ai-proxy-716115358910.us-central1.run.app','Bygcx','prod','auto','RANGER_BYOK','483606YerDQs'];_0x22da=function(){return _0x59df0c;};return _0x22da();}export function resolveHookMode(_0x3a7e51=process[_0x563031(0x12b)]){const _0x28bcc7=_0x563031,_0x4e4b2e={'zArMd':_0x28bcc7(0x13d),'DIRSa':function(_0x4783e1,_0x3e18e3){return _0x4783e1===_0x3e18e3;},'rKYMU':function(_0xea6071,_0x3460c7){return _0xea6071===_0x3460c7;},'rQYHg':function(_0x41128d,_0x413e71){return _0x41128d===_0x413e71;}},_0x3a4a2b=_0x3a7e51[_0x28bcc7(0x11c)]?.['trim']()[_0x28bcc7(0x11e)]();if(!_0x3a4a2b)return _0x4e4b2e[_0x28bcc7(0x132)];if(_0x4e4b2e[_0x28bcc7(0x130)](_0x3a4a2b,_0x28bcc7(0x120))||_0x4e4b2e['rKYMU'](_0x3a4a2b,'on')||_0x4e4b2e[_0x28bcc7(0x128)](_0x3a4a2b,'auto'))return _0x3a4a2b;return console['error']('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x3a7e51[_0x28bcc7(0x11c)]+_0x28bcc7(0x133)+_0x28bcc7(0x125)),'auto';}
@@ -1 +1 @@
1
- function _0x13e0(){const _0x36b6bd=['xeAav','weGmj','reXvS','/restore','sessionId','/api/v1/mcp/features','FHVmJ','WaDXI','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','31459088lyuOwQ','jmofH','style','QcYxh','WXhkm','IvNJi','YxXgA','Failed\x20to\x20create\x20scenario:\x20','Bearer\x20','/comments/address','Failed\x20to\x20get\x20feature\x20review:\x20','wXrlU','dgFJf','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','json','GET','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','forPH','Failed\x20to\x20get\x20action\x20items:\x20','uSrsw','Failed\x20to\x20get\x20item\x20feedback:\x20','ZyHwu','csTfA','4008zxszVP','1411226sTQKUk','qlQDy','BFNJP','TEJxO','gitBranch','ZuCAk','toString','/report','txuNN','/sessions/','cSClb','Failed\x20to\x20update\x20scenario:\x20','HdJsA','gitRepoUrl','qgXdm','yzoSK','itemIds','set','\x0a\x0aUpgrade\x20your\x20plan:\x20','limit','3415iXIcFq','DaIfp','3113346UgspZB','Failed\x20to\x20list\x20feature\x20reviews:\x20','tnCib','1317794NEluNy','mdDgV','/checklist','offset','uRldl','KOjPd','9556410toEwbe','/api/v1/mcp/features/','BKgnk','application/json','stringify','PATCH','QDPQw','Failed\x20to\x20conclude\x20session:\x20','TNQry','Failed\x20to\x20start\x20session:\x20','slYdx','https://dashboard.ranger.net/billing','includeDeleted','Failed\x20to\x20create\x20feature\x20review:\x20','mILaH','12046076pHbXDE','text'];_0x13e0=function(){return _0x36b6bd;};return _0x13e0();}(function(_0x42ce02,_0x10fd9b){const _0x23e394=_0xad9f,_0x20b476=_0x42ce02();while(!![]){try{const _0x543b93=parseInt(_0x23e394(0x1b3))/0x1+-parseInt(_0x23e394(0x1eb))/0x2+-parseInt(_0x23e394(0x1b0))/0x3+-parseInt(_0x23e394(0x1ea))/0x4*(-parseInt(_0x23e394(0x1ae))/0x5)+-parseInt(_0x23e394(0x1b9))/0x6+-parseInt(_0x23e394(0x1c8))/0x7+parseInt(_0x23e394(0x1d3))/0x8;if(_0x543b93===_0x10fd9b)break;else _0x20b476['push'](_0x20b476['shift']());}catch(_0x151383){_0x20b476['push'](_0x20b476['shift']());}}}(_0x13e0,0xd63ec));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x5b3177){const _0x5a5b74=_0xad9f,_0x5acb08={'xMZBb':function(_0x2f4939){return _0x2f4939();},'JiAOW':function(_0x36b978,_0x9f6ac4,_0x123120){return _0x36b978(_0x9f6ac4,_0x123120);},'KOjPd':'POST','wXrlU':_0x5a5b74(0x1bc),'tnCib':function(_0x32e533,_0x3d2e8d){return _0x32e533===_0x3d2e8d;},'BFNJP':_0x5a5b74(0x1c4)},_0x5e2daf=await getToken();if(!_0x5e2daf)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2022d1=_0x5acb08['xMZBb'](getApiBaseUrl),_0x173cb9=await _0x5acb08['JiAOW'](fetch,_0x2022d1+_0x5a5b74(0x1cf),{'method':_0x5acb08[_0x5a5b74(0x1b8)],'headers':{'Authorization':'Bearer\x20'+_0x5e2daf,'Content-Type':_0x5acb08[_0x5a5b74(0x1de)]},'body':JSON['stringify'](_0x5b3177)});if(!_0x173cb9['ok']){if(_0x5acb08[_0x5a5b74(0x1b2)](_0x173cb9['status'],0x192)){const _0x520f36=await _0x173cb9[_0x5a5b74(0x1e1)](),_0x358032=_0x520f36['billingUrl']||_0x5acb08[_0x5a5b74(0x1ed)];throw new Error((_0x520f36['message']||'Feature\x20limit\x20exceeded')+_0x5a5b74(0x1ac)+_0x358032);}const _0x300485=await _0x173cb9[_0x5a5b74(0x1c9)]();throw new Error(_0x5a5b74(0x1c6)+_0x300485);}return _0x173cb9['json']();}export async function listFeatures(_0x26086f){const _0x512906=_0xad9f,_0x1b6097={'AlDyn':function(_0x32e8a2){return _0x32e8a2();},'txuNN':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','UNzhn':function(_0x346e1c){return _0x346e1c();},'xeAav':_0x512906(0x1a7),'mILaH':_0x512906(0x19e),'QcYxh':'offset','dgFJf':function(_0x47dcca,_0x121891,_0x2dd0ca){return _0x47dcca(_0x121891,_0x2dd0ca);}},_0x1529b4=await _0x1b6097['AlDyn'](getToken);if(!_0x1529b4)throw new Error(_0x1b6097[_0x512906(0x1a2)]);const _0xf1fd8b=_0x1b6097['UNzhn'](getApiBaseUrl),_0x2a1a32=new URLSearchParams();if(_0x26086f?.[_0x512906(0x1a7)])_0x2a1a32['set'](_0x1b6097[_0x512906(0x1ca)],_0x26086f['gitRepoUrl']);if(_0x26086f?.[_0x512906(0x19e)])_0x2a1a32['set'](_0x1b6097[_0x512906(0x1c7)],_0x26086f['gitBranch']);if(_0x26086f?.[_0x512906(0x1ad)])_0x2a1a32['set']('limit',_0x26086f[_0x512906(0x1ad)]['toString']());if(_0x26086f?.[_0x512906(0x1b6)])_0x2a1a32[_0x512906(0x1ab)](_0x1b6097[_0x512906(0x1d6)],_0x26086f[_0x512906(0x1b6)]['toString']());if(_0x26086f?.[_0x512906(0x1c5)])_0x2a1a32[_0x512906(0x1ab)]('includeDeleted','true');const _0x596bde=_0xf1fd8b+'/api/v1/mcp/features'+(_0x2a1a32[_0x512906(0x1a0)]()?'?'+_0x2a1a32[_0x512906(0x1a0)]():''),_0x3b944e=await _0x1b6097[_0x512906(0x1df)](fetch,_0x596bde,{'method':_0x512906(0x1e2),'headers':{'Authorization':_0x512906(0x1db)+_0x1529b4}});if(!_0x3b944e['ok']){const _0x3422dc=await _0x3b944e[_0x512906(0x1c9)]();throw new Error(_0x512906(0x1b1)+_0x3422dc);}return _0x3b944e['json']();}export async function getFeature(_0x9e3780){const _0x160247=_0xad9f,_0x2fa817={'FHVmJ':_0x160247(0x1e0)},_0x1d3f38=await getToken();if(!_0x1d3f38)throw new Error(_0x2fa817[_0x160247(0x1d0)]);const _0x55b31=getApiBaseUrl(),_0x99df72=await fetch(_0x55b31+'/api/v1/mcp/features/'+_0x9e3780,{'method':_0x160247(0x1e2),'headers':{'Authorization':_0x160247(0x1db)+_0x1d3f38}});if(!_0x99df72['ok']){const _0x458381=await _0x99df72[_0x160247(0x1c9)]();throw new Error(_0x160247(0x1dd)+_0x458381);}return _0x99df72[_0x160247(0x1e1)]();}export async function updateFeature(_0x18d429,_0x10e4c9){const _0x2f7c89=_0xad9f,_0x12c245={'vAKzD':function(_0x49c23f){return _0x49c23f();},'KddPj':_0x2f7c89(0x1e0),'forPH':'PATCH','IvNJi':'application/json'},_0x20fe77=await _0x12c245['vAKzD'](getToken);if(!_0x20fe77)throw new Error(_0x12c245['KddPj']);const _0x37c076=getApiBaseUrl(),_0x443f6d=await fetch(_0x37c076+_0x2f7c89(0x1ba)+_0x18d429,{'method':_0x12c245[_0x2f7c89(0x1e4)],'headers':{'Authorization':_0x2f7c89(0x1db)+_0x20fe77,'Content-Type':_0x12c245[_0x2f7c89(0x1d8)]},'body':JSON['stringify'](_0x10e4c9)});if(!_0x443f6d['ok']){const _0x5e890f=await _0x443f6d[_0x2f7c89(0x1c9)]();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x5e890f);}return _0x443f6d['json']();}export async function createChecklistItem(_0xf69684,_0x5bbdf4,_0x2fe576){const _0x3dc815=_0xad9f,_0x48000e={'slYdx':function(_0x40d88f){return _0x40d88f();},'TEJxO':_0x3dc815(0x1bc)},_0x13138f=await _0x48000e[_0x3dc815(0x1c3)](getToken);if(!_0x13138f)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x6cb53a=_0x48000e['slYdx'](getApiBaseUrl),_0x29c27f=await fetch(_0x6cb53a+'/api/v1/mcp/features/'+_0xf69684+_0x3dc815(0x1b5),{'method':'POST','headers':{'Authorization':_0x3dc815(0x1db)+_0x13138f,'Content-Type':_0x48000e[_0x3dc815(0x19d)]},'body':JSON[_0x3dc815(0x1bd)]({'description':_0x5bbdf4,'position':_0x2fe576})});if(!_0x29c27f['ok']){const _0x4e9ea5=await _0x29c27f['text']();throw new Error(_0x3dc815(0x1da)+_0x4e9ea5);}return _0x29c27f[_0x3dc815(0x1e1)]();}export async function updateChecklistItem(_0x25ffa6,_0x13e8c7,_0x437f10){const _0xf30c2f={'YxXgA':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','weGmj':function(_0x128b74,_0x53bbfe,_0xb1f8dc){return _0x128b74(_0x53bbfe,_0xb1f8dc);},'DaIfp':'application/json'};return withRetry(async()=>{const _0x325b84=_0xad9f,_0xc3c212=await getToken();if(!_0xc3c212)throw new Error(_0xf30c2f[_0x325b84(0x1d9)]);const _0x514a25=getApiBaseUrl(),_0x20e63c=await _0xf30c2f[_0x325b84(0x1cb)](fetch,_0x514a25+'/api/v1/mcp/features/'+_0x25ffa6+'/checklist/'+_0x13e8c7,{'method':_0x325b84(0x1be),'headers':{'Authorization':_0x325b84(0x1db)+_0xc3c212,'Content-Type':_0xf30c2f[_0x325b84(0x1af)]},'body':JSON[_0x325b84(0x1bd)](_0x437f10)});if(!_0x20e63c['ok']){const _0x1b5782=await _0x20e63c[_0x325b84(0x1c9)]();throw new Error(_0x325b84(0x1a5)+_0x1b5782);}return _0x20e63c['json']();},{'label':'updateChecklistItem'});}export async function getFeatureReport(_0x4931bc){const _0x2c55ed=_0xad9f,_0x3cb9c9={'qgXdm':function(_0x16eb3c){return _0x16eb3c();},'piOKn':function(_0x5acf71,_0x2a8ae5,_0x3b8640){return _0x5acf71(_0x2a8ae5,_0x3b8640);}},_0x342f7e=await getToken();if(!_0x342f7e)throw new Error(_0x2c55ed(0x1e0));const _0x1674cc=_0x3cb9c9[_0x2c55ed(0x1a8)](getApiBaseUrl),_0x28c0e0=await _0x3cb9c9['piOKn'](fetch,_0x1674cc+_0x2c55ed(0x1ba)+_0x4931bc+_0x2c55ed(0x1a1),{'method':'GET','headers':{'Authorization':_0x2c55ed(0x1db)+_0x342f7e}});if(!_0x28c0e0['ok']){const _0x52745c=await _0x28c0e0['text']();throw new Error(_0x2c55ed(0x1e3)+_0x52745c);}return _0x28c0e0['json']();}function _0xad9f(_0x5c9727,_0x1fb148){_0x5c9727=_0x5c9727-0x19d;const _0x13e051=_0x13e0();let _0xad9f6d=_0x13e051[_0x5c9727];return _0xad9f6d;}export async function getFeatureReportMarkdown(_0x29beac,_0x38f2a4){const _0x301303=_0xad9f,_0x79b249={'cSClb':_0x301303(0x1e0),'DkZas':function(_0x34c843){return _0x34c843();},'ZyHwu':function(_0x7bc149,_0x573cb9){return _0x7bc149(_0x573cb9);},'WaDXI':function(_0x3aa263,_0x5eaf9f){return _0x3aa263&&_0x5eaf9f;},'WXhkm':_0x301303(0x1e2)},_0x440171=await getToken();if(!_0x440171)throw new Error(_0x79b249[_0x301303(0x1a4)]);const _0x3eaa08=_0x79b249['DkZas'](getApiBaseUrl),_0x362ba1=new URLSearchParams(),_0x111f7f=(_0x38f2a4?.[_0x301303(0x1aa)]?.['length']??0x0)>0x0,_0x1cc5ca=_0x79b249[_0x301303(0x1e8)](Boolean,_0x38f2a4?.['sessionId']);_0x111f7f&&_0x38f2a4?.['itemIds']&&_0x362ba1[_0x301303(0x1ab)](_0x301303(0x1aa),_0x38f2a4['itemIds']['join'](','));_0x1cc5ca&&_0x38f2a4?.['sessionId']&&_0x362ba1[_0x301303(0x1ab)](_0x301303(0x1ce),_0x38f2a4['sessionId']);_0x79b249[_0x301303(0x1d1)](!_0x111f7f,!_0x1cc5ca)&&_0x38f2a4?.[_0x301303(0x1d5)]&&_0x362ba1['set']('style',_0x38f2a4[_0x301303(0x1d5)]);const _0x189f0e=_0x3eaa08+_0x301303(0x1ba)+_0x29beac+'/report/markdown',_0x1d832b=''+_0x189f0e+(_0x362ba1['toString']()?'?'+_0x362ba1[_0x301303(0x1a0)]():''),_0x4f6c3d=await fetch(_0x1d832b,{'method':_0x79b249[_0x301303(0x1d7)],'headers':{'Authorization':'Bearer\x20'+_0x440171}});if(!_0x4f6c3d['ok']){const _0x401363=await _0x4f6c3d['text']();throw new Error(_0x301303(0x1d2)+_0x401363);}return _0x4f6c3d['text']();}export async function listFeatureSessions(_0x521347){const _0x44beb3=_0xad9f,_0x4d04dc={'reXvS':function(_0x1cfbb9){return _0x1cfbb9();},'GLXQA':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0xf27040=await _0x4d04dc[_0x44beb3(0x1cc)](getToken);if(!_0xf27040)throw new Error(_0x4d04dc['GLXQA']);const _0x29709b=_0x4d04dc['reXvS'](getApiBaseUrl),_0x1b1ce0=await fetch(_0x29709b+'/api/v1/mcp/features/'+_0x521347+'/sessions',{'method':_0x44beb3(0x1e2),'headers':{'Authorization':'Bearer\x20'+_0xf27040}});if(!_0x1b1ce0['ok']){const _0x25c6b4=await _0x1b1ce0[_0x44beb3(0x1c9)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x25c6b4);}return _0x1b1ce0[_0x44beb3(0x1e1)]();}export async function startSession(_0x462e56,_0x319a7b){const _0x171e76=_0xad9f,_0x5d9a0e={'zYhLN':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','AGjNU':function(_0x20d92c){return _0x20d92c();},'QDPQw':function(_0x2993ec,_0xb99131,_0x866af7){return _0x2993ec(_0xb99131,_0x866af7);}},_0x35851=await getToken();if(!_0x35851)throw new Error(_0x5d9a0e['zYhLN']);const _0x112143=_0x5d9a0e['AGjNU'](getApiBaseUrl),_0xc669d6=await _0x5d9a0e[_0x171e76(0x1bf)](fetch,_0x112143+'/api/v1/mcp/features/'+_0x462e56+'/sessions/'+_0x319a7b+'/start',{'method':'POST','headers':{'Authorization':_0x171e76(0x1db)+_0x35851}});if(!_0xc669d6['ok']){const _0x5b732b=await _0xc669d6[_0x171e76(0x1c9)]();throw new Error(_0x171e76(0x1c2)+_0x5b732b);}return _0xc669d6['json']();}export async function concludeSession(_0x49036e,_0x4e114e){const _0x305021=_0xad9f,_0xdddbc7={'mdDgV':function(_0x3bc994){return _0x3bc994();},'LvYnm':_0x305021(0x1e0),'csTfA':'POST'},_0x23150c=await _0xdddbc7[_0x305021(0x1b4)](getToken);if(!_0x23150c)throw new Error(_0xdddbc7['LvYnm']);const _0x273170=_0xdddbc7['mdDgV'](getApiBaseUrl),_0x41dfa5=await fetch(_0x273170+'/api/v1/mcp/features/'+_0x49036e+_0x305021(0x1a3)+_0x4e114e+'/conclude',{'method':_0xdddbc7[_0x305021(0x1e9)],'headers':{'Authorization':_0x305021(0x1db)+_0x23150c}});if(!_0x41dfa5['ok']){const _0x4a42c1=await _0x41dfa5['text']();throw new Error(_0x305021(0x1c0)+_0x4a42c1);}return _0x41dfa5['json']();}export async function getActionItems(_0x5749e4){const _0xe67d97=_0xad9f,_0x57aaec={'ZuCAk':function(_0xeece61){return _0xeece61();}},_0xfbff78=await _0x57aaec[_0xe67d97(0x19f)](getToken);if(!_0xfbff78)throw new Error(_0xe67d97(0x1e0));const _0x3f6f2a=getApiBaseUrl(),_0x535470=await fetch(_0x3f6f2a+'/api/v1/mcp/features/'+_0x5749e4+'/action-items',{'method':'GET','headers':{'Authorization':_0xe67d97(0x1db)+_0xfbff78}});if(!_0x535470['ok']){const _0x464e55=await _0x535470[_0xe67d97(0x1c9)]();throw new Error(_0xe67d97(0x1e5)+_0x464e55);}return _0x535470['json']();}export async function getItemFeedback(_0x4b9a7d,_0x895b3c){const _0x5867db=_0xad9f,_0x350d05={'TNQry':function(_0x5072cc){return _0x5072cc();},'jmofH':function(_0x2244ba,_0x483b73,_0x5ed9ce){return _0x2244ba(_0x483b73,_0x5ed9ce);}},_0x29f42c=await getToken();if(!_0x29f42c)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x9e362f=_0x350d05[_0x5867db(0x1c1)](getApiBaseUrl),_0x5df8ee=await _0x350d05[_0x5867db(0x1d4)](fetch,_0x9e362f+'/api/v1/mcp/features/'+_0x4b9a7d+'/checklist-items/'+_0x895b3c+'/feedback',{'method':'GET','headers':{'Authorization':_0x5867db(0x1db)+_0x29f42c}});if(!_0x5df8ee['ok']){const _0x91c57e=await _0x5df8ee['text']();throw new Error(_0x5867db(0x1e7)+_0x91c57e);}return _0x5df8ee['json']();}export async function markCommentsAddressed(_0xa2b65f,_0x1c32b4,_0x43b285){const _0x5bef9e=_0xad9f,_0x462afd={'jkTCY':'POST','BKgnk':'application/json'},_0x762f50=await getToken();if(!_0x762f50)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x28e362=getApiBaseUrl(),_0x5c921c=await fetch(_0x28e362+'/api/v1/mcp/features/'+_0xa2b65f+_0x5bef9e(0x1dc),{'method':_0x462afd['jkTCY'],'headers':{'Authorization':_0x5bef9e(0x1db)+_0x762f50,'Content-Type':_0x462afd[_0x5bef9e(0x1bb)]},'body':JSON['stringify']({'checklistItemId':_0x1c32b4,'commentIds':_0x43b285})});if(!_0x5c921c['ok']){const _0x3054d5=await _0x5c921c[_0x5bef9e(0x1c9)]();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0x3054d5);}}export async function softDeleteFeature(_0x1770ff){const _0x15f519=_0xad9f,_0xe1720={'uSrsw':function(_0x5710b0){return _0x5710b0();},'yzoSK':'DELETE'},_0x5e61c2=await _0xe1720[_0x15f519(0x1e6)](getToken);if(!_0x5e61c2)throw new Error(_0x15f519(0x1e0));const _0x133066=getApiBaseUrl(),_0x4a3ece=await fetch(_0x133066+_0x15f519(0x1ba)+_0x1770ff,{'method':_0xe1720[_0x15f519(0x1a9)],'headers':{'Authorization':'Bearer\x20'+_0x5e61c2}});if(!_0x4a3ece['ok']){const _0x5abdbf=await _0x4a3ece['text']();throw new Error('Failed\x20to\x20delete\x20feature\x20review:\x20'+_0x5abdbf);}}export async function restoreFeature(_0x6f3f60){const _0x4735b0=_0xad9f,_0x54a166={'uRldl':function(_0x2a901c){return _0x2a901c();},'HdJsA':function(_0x5963e4,_0x208c6e,_0x1fad43){return _0x5963e4(_0x208c6e,_0x1fad43);},'qlQDy':'POST'},_0x172026=await getToken();if(!_0x172026)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x17e1b4=_0x54a166[_0x4735b0(0x1b7)](getApiBaseUrl),_0x4d8f09=await _0x54a166[_0x4735b0(0x1a6)](fetch,_0x17e1b4+_0x4735b0(0x1ba)+_0x6f3f60+_0x4735b0(0x1cd),{'method':_0x54a166[_0x4735b0(0x1ec)],'headers':{'Authorization':_0x4735b0(0x1db)+_0x172026}});if(!_0x4d8f09['ok']){const _0x5029cd=await _0x4d8f09[_0x4735b0(0x1c9)]();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x5029cd);}}
1
+ function _0x5eba(_0x263bd2,_0x11f9ee){_0x263bd2=_0x263bd2-0xdb;const _0x20a4fa=_0x20a4();let _0x5eba66=_0x20a4fa[_0x263bd2];return _0x5eba66;}(function(_0x2fa6bf,_0x382c03){const _0xcc2a17=_0x5eba,_0x255f96=_0x2fa6bf();while(!![]){try{const _0x41d3b0=parseInt(_0xcc2a17(0x10f))/0x1+parseInt(_0xcc2a17(0x106))/0x2+-parseInt(_0xcc2a17(0xea))/0x3*(-parseInt(_0xcc2a17(0x114))/0x4)+-parseInt(_0xcc2a17(0x10a))/0x5*(-parseInt(_0xcc2a17(0x10b))/0x6)+-parseInt(_0xcc2a17(0x109))/0x7*(-parseInt(_0xcc2a17(0xec))/0x8)+parseInt(_0xcc2a17(0x110))/0x9*(parseInt(_0xcc2a17(0x11b))/0xa)+-parseInt(_0xcc2a17(0x122))/0xb;if(_0x41d3b0===_0x382c03)break;else _0x255f96['push'](_0x255f96['shift']());}catch(_0x243d78){_0x255f96['push'](_0x255f96['shift']());}}}(_0x20a4,0xc5a61));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';function _0x20a4(){const _0x3818b9=['No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','nEtre','Feature\x20limit\x20exceeded','lwnqj','/sessions/','eiXch','ejwuO','/conclude','xCYSA','message','PATCH','3KziAsm','NjOOv','177712pzSRaN','wSYLf','Failed\x20to\x20get\x20action\x20items:\x20','Bearer\x20','limit','BxVRM','Failed\x20to\x20create\x20feature\x20review:\x20','POST','ruweZ','/checklist/','itemIds','Failed\x20to\x20delete\x20feature\x20review:\x20','QzLSh','Failed\x20to\x20list\x20sessions:\x20','application/json','Failed\x20to\x20list\x20feature\x20reviews:\x20','WVoYf','length','updateChecklistItem','TnsLm','XzGzi','json','uukSv','dqRzm','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','OPPtH','1818658haxxLF','/api/v1/mcp/features/','SDUYf','455eOYDuH','24195YkLIrR','1140DDpKAl','eHMsy','style','gitRepoUrl','1388540TsJSRm','2853BZdzVG','/report','gitBranch','sessionId','4606124oBrvhg','text','otsDs','WCRKe','LNNDQ','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','/api/v1/mcp/features','12940PZqvwt','toString','status','/report/markdown','uCrwk','offset','set','59546839MUPMNU','NCAei','vvjuR','vDABt','GET','Failed\x20to\x20get\x20feature\x20review:\x20'];_0x20a4=function(){return _0x3818b9;};return _0x20a4();}import{withRetry}from'./retry.js';export async function createFeature(_0x592b0){const _0x285ef8=_0x5eba,_0x593f1e={'vvjuR':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','YJTlv':function(_0x22c78f,_0x5b023d,_0x5ea3a5){return _0x22c78f(_0x5b023d,_0x5ea3a5);},'kqXjW':_0x285ef8(0xf3),'eiXch':_0x285ef8(0xfa),'dqRzm':function(_0x2ad782,_0x51d21a){return _0x2ad782===_0x51d21a;}},_0x12ec41=await getToken();if(!_0x12ec41)throw new Error(_0x593f1e[_0x285ef8(0xdb)]);const _0x58e1c9=getApiBaseUrl(),_0x5c6c76=await _0x593f1e['YJTlv'](fetch,_0x58e1c9+'/api/v1/mcp/features',{'method':_0x593f1e['kqXjW'],'headers':{'Authorization':'Bearer\x20'+_0x12ec41,'Content-Type':_0x593f1e[_0x285ef8(0xe4)]},'body':JSON['stringify'](_0x592b0)});if(!_0x5c6c76['ok']){if(_0x593f1e[_0x285ef8(0x103)](_0x5c6c76[_0x285ef8(0x11d)],0x192)){const _0x50979c=await _0x5c6c76['json'](),_0x43b98f=_0x50979c['billingUrl']||'https://dashboard.ranger.net/billing';throw new Error((_0x50979c[_0x285ef8(0xe8)]||_0x285ef8(0xe1))+'\x0a\x0aUpgrade\x20your\x20plan:\x20'+_0x43b98f);}const _0xe302b2=await _0x5c6c76['text']();throw new Error(_0x285ef8(0xf2)+_0xe302b2);}return _0x5c6c76['json']();}export async function listFeatures(_0x35ef8a){const _0x144ab7=_0x5eba,_0x3a2b88={'weaph':_0x144ab7(0xdf),'YhgtE':_0x144ab7(0x112),'TnsLm':_0x144ab7(0xf0),'xCYSA':'offset','ZMSSR':'includeDeleted'},_0x5b8903=await getToken();if(!_0x5b8903)throw new Error(_0x3a2b88['weaph']);const _0x2c528b=getApiBaseUrl(),_0x905782=new URLSearchParams();if(_0x35ef8a?.['gitRepoUrl'])_0x905782['set']('gitRepoUrl',_0x35ef8a[_0x144ab7(0x10e)]);if(_0x35ef8a?.[_0x144ab7(0x112)])_0x905782['set'](_0x3a2b88['YhgtE'],_0x35ef8a[_0x144ab7(0x112)]);if(_0x35ef8a?.[_0x144ab7(0xf0)])_0x905782['set'](_0x3a2b88[_0x144ab7(0xff)],_0x35ef8a[_0x144ab7(0xf0)][_0x144ab7(0x11c)]());if(_0x35ef8a?.[_0x144ab7(0x120)])_0x905782['set'](_0x3a2b88[_0x144ab7(0xe7)],_0x35ef8a[_0x144ab7(0x120)][_0x144ab7(0x11c)]());if(_0x35ef8a?.['includeDeleted'])_0x905782[_0x144ab7(0x121)](_0x3a2b88['ZMSSR'],'true');const _0x155d87=_0x2c528b+_0x144ab7(0x11a)+(_0x905782[_0x144ab7(0x11c)]()?'?'+_0x905782[_0x144ab7(0x11c)]():''),_0x5d6ffa=await fetch(_0x155d87,{'method':'GET','headers':{'Authorization':_0x144ab7(0xef)+_0x5b8903}});if(!_0x5d6ffa['ok']){const _0x2a6a79=await _0x5d6ffa[_0x144ab7(0x115)]();throw new Error(_0x144ab7(0xfb)+_0x2a6a79);}return _0x5d6ffa['json']();}export async function getFeature(_0x269527){const _0x3aa6f5=_0x5eba,_0x4396eb={'VsoVl':function(_0x569e6c){return _0x569e6c();},'hKklU':_0x3aa6f5(0xdf),'MzlKS':function(_0x5cc75e,_0x5b3c3a,_0x2fc67c){return _0x5cc75e(_0x5b3c3a,_0x2fc67c);}},_0x31a070=await _0x4396eb['VsoVl'](getToken);if(!_0x31a070)throw new Error(_0x4396eb['hKklU']);const _0x3430c7=_0x4396eb['VsoVl'](getApiBaseUrl),_0x4b31b1=await _0x4396eb['MzlKS'](fetch,_0x3430c7+_0x3aa6f5(0x107)+_0x269527,{'method':'GET','headers':{'Authorization':_0x3aa6f5(0xef)+_0x31a070}});if(!_0x4b31b1['ok']){const _0x42e620=await _0x4b31b1[_0x3aa6f5(0x115)]();throw new Error(_0x3aa6f5(0xde)+_0x42e620);}return _0x4b31b1[_0x3aa6f5(0x101)]();}export async function updateFeature(_0x181ae8,_0x4c800d){const _0x2ffbdf=_0x5eba,_0x272266={'XWkhx':function(_0x2ee9cc){return _0x2ee9cc();},'tzvMm':function(_0x6d3119,_0x475b69,_0x2ea35f){return _0x6d3119(_0x475b69,_0x2ea35f);},'NmkMl':_0x2ffbdf(0xe9),'oSVZd':_0x2ffbdf(0xfa)},_0x5d453f=await _0x272266['XWkhx'](getToken);if(!_0x5d453f)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xfcac9e=getApiBaseUrl(),_0x49d0b5=await _0x272266['tzvMm'](fetch,_0xfcac9e+'/api/v1/mcp/features/'+_0x181ae8,{'method':_0x272266['NmkMl'],'headers':{'Authorization':'Bearer\x20'+_0x5d453f,'Content-Type':_0x272266['oSVZd']},'body':JSON['stringify'](_0x4c800d)});if(!_0x49d0b5['ok']){const _0x2a3915=await _0x49d0b5[_0x2ffbdf(0x115)]();throw new Error('Failed\x20to\x20update\x20feature\x20review:\x20'+_0x2a3915);}return _0x49d0b5['json']();}export async function createChecklistItem(_0x208ef5,_0x2c58bd,_0x223e82){const _0xb6ed02=_0x5eba,_0x4556ea={'ejwuO':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','OTpai':function(_0xb4a01f,_0x70a9e2,_0x2c9472){return _0xb4a01f(_0x70a9e2,_0x2c9472);},'ViYha':_0xb6ed02(0xfa)},_0x5b157d=await getToken();if(!_0x5b157d)throw new Error(_0x4556ea[_0xb6ed02(0xe5)]);const _0x71b0c4=getApiBaseUrl(),_0x373cc0=await _0x4556ea['OTpai'](fetch,_0x71b0c4+'/api/v1/mcp/features/'+_0x208ef5+'/checklist',{'method':_0xb6ed02(0xf3),'headers':{'Authorization':'Bearer\x20'+_0x5b157d,'Content-Type':_0x4556ea['ViYha']},'body':JSON['stringify']({'description':_0x2c58bd,'position':_0x223e82})});if(!_0x373cc0['ok']){const _0x5a156a=await _0x373cc0[_0xb6ed02(0x115)]();throw new Error('Failed\x20to\x20create\x20scenario:\x20'+_0x5a156a);}return _0x373cc0[_0xb6ed02(0x101)]();}export async function updateChecklistItem(_0x435d67,_0x221042,_0xe1d85f){const _0x2ea7a8=_0x5eba,_0x4eeb80={'AhmZX':function(_0x4ccde7){return _0x4ccde7();},'nEtre':function(_0x24b9ca,_0x10c822,_0x439e13){return _0x24b9ca(_0x10c822,_0x439e13);},'SDUYf':function(_0x192e79,_0x292aaa,_0x35d9c1){return _0x192e79(_0x292aaa,_0x35d9c1);}};return _0x4eeb80[_0x2ea7a8(0x108)](withRetry,async()=>{const _0x5665ca=_0x2ea7a8,_0x1d8a3c=await getToken();if(!_0x1d8a3c)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x131a1a=_0x4eeb80['AhmZX'](getApiBaseUrl),_0x42036a=await _0x4eeb80[_0x5665ca(0xe0)](fetch,_0x131a1a+_0x5665ca(0x107)+_0x435d67+_0x5665ca(0xf5)+_0x221042,{'method':_0x5665ca(0xe9),'headers':{'Authorization':_0x5665ca(0xef)+_0x1d8a3c,'Content-Type':'application/json'},'body':JSON['stringify'](_0xe1d85f)});if(!_0x42036a['ok']){const _0x2b7e27=await _0x42036a['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x2b7e27);}return _0x42036a[_0x5665ca(0x101)]();},{'label':_0x2ea7a8(0xfe)});}export async function getFeatureReport(_0x56afd6){const _0x5d3bd1=_0x5eba,_0x24c555=await getToken();if(!_0x24c555)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x393318=getApiBaseUrl(),_0xc6ab4d=await fetch(_0x393318+'/api/v1/mcp/features/'+_0x56afd6+_0x5d3bd1(0x111),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x24c555}});if(!_0xc6ab4d['ok']){const _0x24fb21=await _0xc6ab4d['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0x24fb21);}return _0xc6ab4d['json']();}export async function getFeatureReportMarkdown(_0x3d7103,_0x20a625){const _0x35d04b=_0x5eba,_0x3f2855={'NjOOv':function(_0x5f070d){return _0x5f070d();},'lwnqj':_0x35d04b(0xdf),'eLyvB':function(_0x43499f,_0x271cc2){return _0x43499f>_0x271cc2;},'jOshc':'sessionId','GlKDx':'style'},_0x4e9817=await _0x3f2855[_0x35d04b(0xeb)](getToken);if(!_0x4e9817)throw new Error(_0x3f2855[_0x35d04b(0xe2)]);const _0x5b847e=getApiBaseUrl(),_0x8a7343=new URLSearchParams(),_0x4cde88=_0x3f2855['eLyvB'](_0x20a625?.['itemIds']?.[_0x35d04b(0xfd)]??0x0,0x0),_0x22a165=Boolean(_0x20a625?.[_0x35d04b(0x113)]);_0x4cde88&&_0x20a625?.['itemIds']&&_0x8a7343[_0x35d04b(0x121)](_0x35d04b(0xf6),_0x20a625[_0x35d04b(0xf6)]['join'](','));_0x22a165&&_0x20a625?.[_0x35d04b(0x113)]&&_0x8a7343['set'](_0x3f2855['jOshc'],_0x20a625[_0x35d04b(0x113)]);!_0x4cde88&&!_0x22a165&&_0x20a625?.[_0x35d04b(0x10d)]&&_0x8a7343[_0x35d04b(0x121)](_0x3f2855['GlKDx'],_0x20a625['style']);const _0x20c844=_0x5b847e+'/api/v1/mcp/features/'+_0x3d7103+_0x35d04b(0x11e),_0x526e30=''+_0x20c844+(_0x8a7343[_0x35d04b(0x11c)]()?'?'+_0x8a7343[_0x35d04b(0x11c)]():''),_0x2c9350=await fetch(_0x526e30,{'method':'GET','headers':{'Authorization':_0x35d04b(0xef)+_0x4e9817}});if(!_0x2c9350['ok']){const _0x2903c8=await _0x2c9350[_0x35d04b(0x115)]();throw new Error(_0x35d04b(0x104)+_0x2903c8);}return _0x2c9350['text']();}export async function listFeatureSessions(_0x3bd5ae){const _0x507ee1=_0x5eba,_0x4a0039={'otsDs':function(_0x419b9c){return _0x419b9c();},'vDABt':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','BxVRM':function(_0x13b442,_0x3b4dbb,_0x2e1fd8){return _0x13b442(_0x3b4dbb,_0x2e1fd8);},'uCrwk':'GET'},_0x4dc4c3=await _0x4a0039[_0x507ee1(0x116)](getToken);if(!_0x4dc4c3)throw new Error(_0x4a0039[_0x507ee1(0xdc)]);const _0x1aff58=_0x4a0039['otsDs'](getApiBaseUrl),_0x41b926=await _0x4a0039[_0x507ee1(0xf1)](fetch,_0x1aff58+'/api/v1/mcp/features/'+_0x3bd5ae+'/sessions',{'method':_0x4a0039[_0x507ee1(0x11f)],'headers':{'Authorization':'Bearer\x20'+_0x4dc4c3}});if(!_0x41b926['ok']){const _0x2bf3ec=await _0x41b926[_0x507ee1(0x115)]();throw new Error(_0x507ee1(0xf9)+_0x2bf3ec);}return _0x41b926['json']();}export async function startSession(_0x1a6a2b,_0x15f071){const _0x377789=_0x5eba,_0x10ef13={'asJIU':function(_0x340100){return _0x340100();},'QzLSh':_0x377789(0xdf),'SKPTE':function(_0x2c51c1){return _0x2c51c1();},'OPPtH':_0x377789(0xf3)},_0x3d3325=await _0x10ef13['asJIU'](getToken);if(!_0x3d3325)throw new Error(_0x10ef13[_0x377789(0xf8)]);const _0x297f72=_0x10ef13['SKPTE'](getApiBaseUrl),_0x407984=await fetch(_0x297f72+'/api/v1/mcp/features/'+_0x1a6a2b+'/sessions/'+_0x15f071+'/start',{'method':_0x10ef13[_0x377789(0x105)],'headers':{'Authorization':_0x377789(0xef)+_0x3d3325}});if(!_0x407984['ok']){const _0x1c0716=await _0x407984[_0x377789(0x115)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x1c0716);}return _0x407984[_0x377789(0x101)]();}export async function concludeSession(_0x24129d,_0x3c06d1){const _0x509183=_0x5eba,_0x1efc02={'OVdcR':function(_0x516e4e){return _0x516e4e();},'xxXjY':_0x509183(0xdf),'ruweZ':function(_0x429472){return _0x429472();},'eHMsy':_0x509183(0xf3)},_0x16424e=await _0x1efc02['OVdcR'](getToken);if(!_0x16424e)throw new Error(_0x1efc02['xxXjY']);const _0x2edd73=_0x1efc02[_0x509183(0xf4)](getApiBaseUrl),_0xcfe7d4=await fetch(_0x2edd73+'/api/v1/mcp/features/'+_0x24129d+_0x509183(0xe3)+_0x3c06d1+_0x509183(0xe6),{'method':_0x1efc02[_0x509183(0x10c)],'headers':{'Authorization':'Bearer\x20'+_0x16424e}});if(!_0xcfe7d4['ok']){const _0xe51ad4=await _0xcfe7d4['text']();throw new Error('Failed\x20to\x20conclude\x20session:\x20'+_0xe51ad4);}return _0xcfe7d4[_0x509183(0x101)]();}export async function getActionItems(_0x4cf915){const _0xb73ec=_0x5eba,_0x4e70cd={'WCRKe':function(_0x264163){return _0x264163();}},_0x1b1b1d=await getToken();if(!_0x1b1b1d)throw new Error(_0xb73ec(0xdf));const _0x556b21=_0x4e70cd[_0xb73ec(0x117)](getApiBaseUrl),_0x3271cd=await fetch(_0x556b21+_0xb73ec(0x107)+_0x4cf915+'/action-items',{'method':'GET','headers':{'Authorization':_0xb73ec(0xef)+_0x1b1b1d}});if(!_0x3271cd['ok']){const _0x2c9cb3=await _0x3271cd[_0xb73ec(0x115)]();throw new Error(_0xb73ec(0xee)+_0x2c9cb3);}return _0x3271cd[_0xb73ec(0x101)]();}export async function getItemFeedback(_0x5f1d6e,_0xc732b8){const _0x1c7733=_0x5eba,_0x48cb52={'XzGzi':function(_0x7078a9){return _0x7078a9();},'nzdys':_0x1c7733(0xdd)},_0x519fe0=await getToken();if(!_0x519fe0)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2517e3=_0x48cb52[_0x1c7733(0x100)](getApiBaseUrl),_0x23f293=await fetch(_0x2517e3+'/api/v1/mcp/features/'+_0x5f1d6e+'/checklist-items/'+_0xc732b8+'/feedback',{'method':_0x48cb52['nzdys'],'headers':{'Authorization':_0x1c7733(0xef)+_0x519fe0}});if(!_0x23f293['ok']){const _0x192d50=await _0x23f293[_0x1c7733(0x115)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x192d50);}return _0x23f293['json']();}export async function markCommentsAddressed(_0x3cce73,_0x1275c8,_0x321b43){const _0x3cc98c=_0x5eba,_0x44dfa5={'xagJw':function(_0x350b5b){return _0x350b5b();},'QeGqL':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','LNNDQ':'POST','LrtTO':'application/json'},_0x30bc5a=await _0x44dfa5['xagJw'](getToken);if(!_0x30bc5a)throw new Error(_0x44dfa5['QeGqL']);const _0x33e892=getApiBaseUrl(),_0x3ee5e4=await fetch(_0x33e892+'/api/v1/mcp/features/'+_0x3cce73+'/comments/address',{'method':_0x44dfa5[_0x3cc98c(0x118)],'headers':{'Authorization':'Bearer\x20'+_0x30bc5a,'Content-Type':_0x44dfa5['LrtTO']},'body':JSON['stringify']({'checklistItemId':_0x1275c8,'commentIds':_0x321b43})});if(!_0x3ee5e4['ok']){const _0x29c5d4=await _0x3ee5e4[_0x3cc98c(0x115)]();throw new Error(_0x3cc98c(0x119)+_0x29c5d4);}}export async function softDeleteFeature(_0x34131d){const _0x1e2506=_0x5eba,_0x48a611={'wSYLf':function(_0x228e24){return _0x228e24();},'uukSv':function(_0x238304,_0x53fb9a,_0x5632da){return _0x238304(_0x53fb9a,_0x5632da);}},_0x543638=await _0x48a611['wSYLf'](getToken);if(!_0x543638)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x55a977=_0x48a611[_0x1e2506(0xed)](getApiBaseUrl),_0x48ba25=await _0x48a611[_0x1e2506(0x102)](fetch,_0x55a977+'/api/v1/mcp/features/'+_0x34131d,{'method':'DELETE','headers':{'Authorization':'Bearer\x20'+_0x543638}});if(!_0x48ba25['ok']){const _0x347fe6=await _0x48ba25['text']();throw new Error(_0x1e2506(0xf7)+_0x347fe6);}}export async function restoreFeature(_0x2acafd){const _0x503f20=_0x5eba,_0xd49c70={'tsoJx':function(_0x2d9de5){return _0x2d9de5();},'WVoYf':_0x503f20(0xdf),'NCAei':function(_0x52ff9a,_0x2a7bc6,_0x8f894e){return _0x52ff9a(_0x2a7bc6,_0x8f894e);}},_0x1e49b3=await _0xd49c70['tsoJx'](getToken);if(!_0x1e49b3)throw new Error(_0xd49c70[_0x503f20(0xfc)]);const _0x4a2cd8=getApiBaseUrl(),_0x4038a8=await _0xd49c70[_0x503f20(0x123)](fetch,_0x4a2cd8+_0x503f20(0x107)+_0x2acafd+'/restore',{'method':'POST','headers':{'Authorization':_0x503f20(0xef)+_0x1e49b3}});if(!_0x4038a8['ok']){const _0x5bdb54=await _0x4038a8['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x5bdb54);}}