@ranger-testing/ranger-cli 3.0.1-alpha.55b593b-29 → 3.0.1-alpha.bb18058-34

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 (84) 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 -0
  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 -0
  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/userApi.js +1 -1
  79. package/build/commands/utils/version.js +1 -1
  80. package/build/commands/verifyFeature.js +1 -1
  81. package/build/commands/verifyFeatureCli.js +1 -1
  82. package/build/commands/verifyFeatureNovaCli.js +1 -1
  83. package/build/commands/verifyFeatureRangerwrightCli.js +1 -0
  84. package/package.json +2 -1
@@ -1 +1 @@
1
- const _0xbda037=_0x5b06;function _0x5b06(_0x5eb139,_0x7d65ec){_0x5eb139=_0x5eb139-0x7a;const _0x1fc13d=_0x1fc1();let _0x5b06ec=_0x1fc13d[_0x5eb139];return _0x5b06ec;}(function(_0x3b3a42,_0xc28d7c){const _0x570900=_0x5b06,_0x23187d=_0x3b3a42();while(!![]){try{const _0x336756=-parseInt(_0x570900(0xe9))/0x1+parseInt(_0x570900(0x96))/0x2+parseInt(_0x570900(0x99))/0x3*(parseInt(_0x570900(0xdc))/0x4)+-parseInt(_0x570900(0xa8))/0x5+parseInt(_0x570900(0xa4))/0x6*(parseInt(_0x570900(0xb7))/0x7)+parseInt(_0x570900(0xbf))/0x8+-parseInt(_0x570900(0xd9))/0x9;if(_0x336756===_0xc28d7c)break;else _0x23187d['push'](_0x23187d['shift']());}catch(_0x2841eb){_0x23187d['push'](_0x23187d['shift']());}}}(_0x1fc1,0xd6d47));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x9d4c28 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isCachedSessionLive,isInteractive,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;function _0x1fc1(){const _0xdffbd7=['cli:manual-login','/api/v1/profiles/auth-config','auKxQ','Btabz','detail','you\x27re\x20now\x20at\x20\x22','userAgent','utf-8','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20','\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','clientIp','error','\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','RANGER_TEST_USERNAME','environments','msLpl','\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','Cloud\x20profile\x20\x22','RANGER_TEST_PASSWORD','launch','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','/session','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','/login','mLtLo','force','ApiError','loginInstructions','test_output','log','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','QUIlP','some','BpkBM','2779044uWVKCJ','password','settings','6267yoaema','isArray','keys','DELETE','sessionState','SvdnM','headers','or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.','status','storageState','browserOptions','12nhnyKd','rosOA','KuOtr','length','151990OmohpZ','cookies','toISOString','QOOkZ','message','HrQOU','QRKHe','sessionCheckPath','join','CeQoe','newContext','fQbBq','tWrKF','stringify','env','4167373UNDYYF','vtaeH','newPage','MkCGy','invalidateOn','\x20\x20Login\x20successful.\x20Session\x20cached.','fLnwi','not_configured','1753752xjHibn','/api/v1/profiles','session_state','prompt','xFQlV','wLJmK','baseUrl','\x22,\x20cached\x20locally','PUT','organizationId','application/json','JpFfc','RsQAS','PTzmo','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','\x22\x20failed\x20validation\x20—\x20refreshing...','username','Zzwob','NwZwP','rkCfv','\x22.\x0a','Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.','qcxQM','kgPfc','lTMuj','name','28852371lHdyit','defaultEnvironmentKey','crIKG','2840UMjbOj','goto','environment_key','domains','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','json','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','FtHkv','csDOb','\x20\x20Cloud\x20session\x20for\x20\x22','/api/v1/profiles/','\x20\x20No\x20live\x20session\x20for\x20\x22','trim','166449wFezTt','string'];_0x1fc1=function(){return _0xdffbd7;};return _0x1fc1();}async function requireToken(){const _0x93f42a=_0x5b06,_0x1aa0d6={'IBdnc':function(_0x2bc72b){return _0x2bc72b();},'sDrUV':_0x93f42a(0x87)},_0xdf4912=await _0x1aa0d6['IBdnc'](getToken);if(!_0xdf4912)throw new Error(_0x1aa0d6['sDrUV']);return _0xdf4912;}async function apiRequest(_0x12027b,_0x11287a={}){const _0x36383b=_0x5b06,_0x45796c={'crIKG':function(_0x4a8643,_0x15e1ed){return _0x4a8643===_0x15e1ed;}},_0x5e0012=await requireToken(),_0x2ae9a8=getApiBaseUrl(),_0x56737b=await fetch(''+_0x2ae9a8+_0x12027b,{..._0x11287a,'headers':{'Authorization':'Bearer\x20'+_0x5e0012,'Content-Type':_0x36383b(0xc9),..._0x11287a[_0x36383b(0x9f)]??{}}});if(!_0x56737b['ok']){let _0x120500='',_0x613777;try{const _0x43d237=await _0x56737b['json']();_0x120500=(_0x45796c[_0x36383b(0xdb)](typeof _0x43d237['error'],'string')?_0x43d237[_0x36383b(0x7e)]:undefined)??JSON[_0x36383b(0xb5)](_0x43d237);if(typeof _0x43d237['code']===_0x36383b(0xea))_0x613777=_0x43d237['code'];}catch{_0x120500=_0x56737b['statusText'];}throw new ApiError('API\x20request\x20'+_0x12027b+'\x20failed\x20('+_0x56737b[_0x36383b(0xa1)]+'):\x20'+_0x120500,_0x56737b['status'],_0x120500,_0x613777);}if(_0x45796c[_0x36383b(0xdb)](_0x56737b[_0x36383b(0xa1)],0xcc))return undefined;return _0x56737b[_0x36383b(0xe1)]();}export class ApiError extends Error{['status'];['detail'];['code'];constructor(_0xc60082,_0x15fca7,_0x4d7d2a,_0x17f758){const _0x58efe7=_0x5b06;super(_0xc60082),this[_0x58efe7(0xa1)]=_0x15fca7,this[_0x58efe7(0xef)]=_0x4d7d2a,this['code']=_0x17f758,this[_0x58efe7(0xd8)]=_0x58efe7(0x8e);}}export async function fetchCloudProfile(_0x21e5fc){const _0x46c574=_0x5b06,_0x2c36c7={'fQbBq':function(_0x483035,_0x35b0ae){return _0x483035(_0x35b0ae);}};try{return await _0x2c36c7[_0x46c574(0xb3)](apiRequest,_0x46c574(0xe6)+encodeURIComponent(_0x21e5fc));}catch(_0x42d6bc){if(_0x42d6bc instanceof ApiError&&_0x42d6bc[_0x46c574(0xa1)]===0x194)return null;throw _0x42d6bc;}}export async function listCloudProfiles(){const _0x44f0b5=_0x5b06,_0x58cb02=await apiRequest(_0x44f0b5(0xc0));return _0x58cb02['profiles'];}export async function deleteCloudProfile(_0x32de60){const _0xc880ec=_0x5b06,_0x247b34={'JpFfc':function(_0x3b72c4,_0x135b56){return _0x3b72c4(_0x135b56);},'vtaeH':_0xc880ec(0x9c)};try{await apiRequest('/api/v1/profiles/'+_0x247b34[_0xc880ec(0xca)](encodeURIComponent,_0x32de60),{'method':_0x247b34[_0xc880ec(0xb8)]});}catch(_0xd398e0){if(_0xd398e0 instanceof ApiError&&_0xd398e0['status']===0x194)throw new Error(_0xc880ec(0x84)+_0x32de60+'\x22\x20not\x20found.');throw _0xd398e0;}}export async function createCloudProfile(_0x4d5bd8,_0x4d04b4,_0x40586d={}){const _0x42e9da=_0x5b06,_0x5723ae={'NIqKX':function(_0x58579a,_0x526469){return _0x58579a>_0x526469;},'HrQOU':_0x42e9da(0xc0)},_0x394c96={'name':_0x4d5bd8};if(_0x4d04b4)_0x394c96[_0x42e9da(0xde)]=_0x4d04b4;_0x40586d['settings']&&_0x5723ae['NIqKX'](Object['keys'](_0x40586d[_0x42e9da(0x98)])[_0x42e9da(0xa7)],0x0)&&(_0x394c96['settings']=_0x40586d[_0x42e9da(0x98)]);if(_0x40586d['username'])_0x394c96[_0x42e9da(0xcf)]=_0x40586d[_0x42e9da(0xcf)];if(_0x40586d['password'])_0x394c96[_0x42e9da(0x97)]=_0x40586d[_0x42e9da(0x97)];return await apiRequest(_0x5723ae[_0x42e9da(0xad)],{'method':'POST','body':JSON[_0x42e9da(0xb5)](_0x394c96)});}export async function uploadCloudProfileSession(_0x583dcc,_0x4d4f9c){const _0x3506ac=_0x5b06,_0x4d631d={'rosOA':function(_0x3e51a8,_0x1f9c20,_0x196bbd){return _0x3e51a8(_0x1f9c20,_0x196bbd);},'FtHkv':function(_0x51d3c6,_0x1ae3b7){return _0x51d3c6(_0x1ae3b7);},'aPekz':'POST'};return await _0x4d631d[_0x3506ac(0xa5)](apiRequest,_0x3506ac(0xe6)+_0x4d631d[_0x3506ac(0xe3)](encodeURIComponent,_0x583dcc)+_0x3506ac(0x88),{'method':_0x4d631d['aPekz'],'body':JSON[_0x3506ac(0xb5)]({'session_state':_0x4d4f9c})});}export async function saveCloudProfileCredentials(_0x4bc183,_0x277516,_0x167e22){const _0x5bec5e=_0x5b06,_0x2e5baa={'csDOb':function(_0x469b52,_0x325f3b,_0x2d3c5d){return _0x469b52(_0x325f3b,_0x2d3c5d);},'oJXEB':function(_0x14486a,_0x5a1280){return _0x14486a(_0x5a1280);},'PTzmo':'PUT'};await _0x2e5baa[_0x5bec5e(0xe4)](apiRequest,_0x5bec5e(0xe6)+_0x2e5baa['oJXEB'](encodeURIComponent,_0x4bc183),{'method':_0x2e5baa[_0x5bec5e(0xcc)],'body':JSON['stringify']({'username':_0x277516,'password':_0x167e22})});}export async function fetchAuthConfig(){const _0xc240aa=_0x5b06;try{const _0x1ee170=await apiRequest(_0xc240aa(0xec));return _0x1ee170['auth_config'];}catch(_0x5c74b1){return _0x5c74b1 instanceof ApiError&&_0x5c74b1[_0xc240aa(0xa1)]!==0x194&&console['error'](_0xc240aa(0xe0)+_0x5c74b1['message']),null;}}export function pickAdHocEnvKey(_0x49521f){const _0x599b91=_0x5b06,_0x1536d5={'CeQoe':function(_0x33ca91,_0x3e7389){return _0x33ca91===_0x3e7389;}};if(!_0x49521f)return null;if(_0x49521f[_0x599b91(0xda)])return _0x49521f[_0x599b91(0xda)];const _0x5c1788=Object[_0x599b91(0x9b)](_0x49521f[_0x599b91(0x81)]??{});if(_0x1536d5[_0x599b91(0xb1)](_0x5c1788['length'],0x1))return _0x5c1788[0x0];if(_0x1536d5[_0x599b91(0xb1)](_0x5c1788[_0x599b91(0xa7)],0x0))return null;throw new Error('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x5c1788['join'](',\x20')+').\x20'+_0x599b91(0xd4));}export async function resolveAdHocProfile(_0x56bc19=process[_0xbda037(0xb6)]){const _0xc6b7d3=_0xbda037,_0x5e19a1={'NwZwP':function(_0xac0d1d,_0xfa003e){return _0xac0d1d(_0xfa003e);},'zcgzV':function(_0x2bfd08){return _0x2bfd08();},'wExjZ':function(_0xcfcd44,_0x12dd8d,_0x44d8b8,_0x1e88c9){return _0xcfcd44(_0x12dd8d,_0x44d8b8,_0x1e88c9);},'xTBcA':function(_0x3e9d1c,_0x3f33cb){return _0x3e9d1c??_0x3f33cb;}},_0x3febdf=_0x56bc19['RANGER_TEST_USERNAME'];if(!_0x3febdf)return null;const _0x13c111=await _0x5e19a1[_0xc6b7d3(0xd1)](fetchCloudProfile,_0x3febdf);if(_0x13c111)return{'name':_0x13c111['name'],'profile':_0x13c111};const _0x2958fd=await _0x5e19a1['zcgzV'](fetchAuthConfig),_0x54ddb2=pickAdHocEnvKey(_0x2958fd),_0x1a54c9=_0x56bc19['RANGER_TEST_PASSWORD'],_0x437efc=await _0x5e19a1['wExjZ'](createCloudProfile,_0x3febdf,_0x5e19a1['xTBcA'](_0x54ddb2,undefined),{'username':_0x3febdf,'password':_0x1a54c9});return console[_0xc6b7d3(0x91)]('\x20\x20Created\x20cloud\x20profile\x20\x22'+_0x437efc['name']+'\x22\x20for\x20'+_0x3febdf),{'name':_0x437efc[_0xc6b7d3(0xd8)],'profile':_0x437efc};}export async function writeSessionToLocalCache(_0x61ceb0,_0x712389,_0x4c7a94,_0x4af51a,_0x120256,_0x27f464,_0x2f406b){const _0x119f95=_0xbda037,_0xf7a03={'yEEXX':function(_0x2c1155,_0x111e04,_0x173fae){return _0x2c1155(_0x111e04,_0x173fae);},'DHPSM':function(_0x36098a){return _0x36098a();},'YGhSO':function(_0x3cf4cd,_0x2b7051){return _0x3cf4cd(_0x2b7051);},'FcMJc':function(_0x181672,_0x4a29c5,_0x480bb8){return _0x181672(_0x4a29c5,_0x480bb8);},'rkCfv':function(_0x4c7426,_0x134621){return _0x4c7426(_0x134621);}},_0x238513=sessionCacheHash({'orgId':_0x712389,'profileName':_0x61ceb0,'effectiveBaseUrl':_0x4c7a94,'setupHeaders':_0x4af51a,'invalidateOn':_0x2f406b?.[_0x119f95(0xbb)],'userAgent':_0x2f406b?.['userAgent'],'clientIp':_0x2f406b?.['clientIp']}),_0x1f884c=_0xf7a03['yEEXX'](getSessionCachePath,_0x238513,_0x61ceb0),_0x2befe7=join(_0xf7a03['DHPSM'](getRangerHomeDir),'auth');!_0xf7a03['YGhSO'](existsSync,_0x2befe7)&&await mkdir(_0x2befe7,{'recursive':!![]});const _0x89a4b3={..._0x120256};_0x27f464&&_0x27f464[_0x119f95(0xa7)]>0x0&&Array[_0x119f95(0x9a)](_0x89a4b3['cookies'])&&(_0x89a4b3[_0x119f95(0xa9)]=_0xf7a03['FcMJc'](duplicateCookiesForDomains,_0x89a4b3[_0x119f95(0xa9)],_0x27f464));const _0x444cb9={'cached_at':new Date()[_0x119f95(0xaa)](),'session_state':_0x89a4b3};await writeFile(_0x1f884c,JSON[_0x119f95(0xb5)](_0x444cb9,null,0x2));const _0x494ca2=_0xf7a03[_0x119f95(0xd2)](getStorageStatePath,_0x1f884c);return await writeFile(_0x494ca2,JSON[_0x119f95(0xb5)](_0x89a4b3,null,0x2)),_0x494ca2;}export async function checkLocalCache(_0x33d4fa,_0x3d0255,_0x1f9c94,_0x15ddf3,_0x45ebfb){const _0x1d759c=_0xbda037,_0x293561={'dpGIW':function(_0x376db1,_0x280a86){return _0x376db1(_0x280a86);},'HskCy':function(_0x21a1b4,_0x4296ce,_0x45245a){return _0x21a1b4(_0x4296ce,_0x45245a);},'wLJmK':function(_0x4422c4,_0x5e52f9){return _0x4422c4(_0x5e52f9);}},_0x40eda5=_0x293561['dpGIW'](sessionCacheHash,{'orgId':_0x3d0255,'profileName':_0x33d4fa,'effectiveBaseUrl':_0x1f9c94,'setupHeaders':_0x15ddf3,'invalidateOn':_0x45ebfb?.['invalidateOn'],'userAgent':_0x45ebfb?.[_0x1d759c(0xf1)],'clientIp':_0x45ebfb?.[_0x1d759c(0x7d)]}),_0x420464=_0x293561['HskCy'](getSessionCachePath,_0x40eda5,_0x33d4fa),_0x302559=getStorageStatePath(_0x420464);if(!_0x293561[_0x1d759c(0xc4)](existsSync,_0x420464)||!existsSync(_0x302559))return null;try{const _0x42fc82=await _0x293561['HskCy'](readFile,_0x420464,_0x1d759c(0xf2));return JSON['parse'](_0x42fc82),{'storageStatePath':_0x302559};}catch{return null;}}function launchRealBrowser(){const _0x351502=_0xbda037;return chromium[_0x351502(0x86)]({'headless':!![]});}function emitSessionValidationHint(_0x1ba1f2,_0x50a782){const _0x462a15=_0xbda037,_0x3dadcb={'fLnwi':function(_0x46e82f,_0x8bd10d){return _0x46e82f===_0x8bd10d;},'eCNrE':function(_0x3616ba,_0x785274){return _0x3616ba+_0x785274;}};if(!_0x50a782||!_0x50a782['domains']?.[_0x462a15(0xa7)])return;let _0x5b2d7b;try{_0x5b2d7b=new URL(_0x1ba1f2);}catch{return;}const _0x5cb680=[];for(const _0x52fed9 of _0x50a782['domains']){try{_0x5cb680['push']({'raw':_0x52fed9,'url':new URL(_0x52fed9)});}catch{}}if(_0x3dadcb[_0x462a15(0xbd)](_0x5cb680['length'],0x0))return;if(_0x5cb680[_0x462a15(0x94)](_0x3cb634=>_0x3cb634['url']['origin']===_0x5b2d7b['origin']))return;const _0x2dafef=_0x5cb680['map'](_0xf3581a=>'\x22'+_0xf3581a['raw']+'\x22')[_0x462a15(0xb0)](',\x20');console['log'](_0x3dadcb['eCNrE'](_0x462a15(0x89)+_0x2dafef+';\x20',_0x462a15(0xf0)+_0x1ba1f2+'\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(_0x2cc15c,_0x245b73){const _0x5dc8ed=_0xbda037,_0x4ecfa2={'hEjGo':function(_0x35dfbe,_0x33b8e7,_0x181a2f){return _0x35dfbe(_0x33b8e7,_0x181a2f);},'XVpAX':'POST','SvdnM':function(_0x3ea83d,_0x2b8a72){return _0x3ea83d instanceof _0x2b8a72;},'QRKHe':function(_0xe5a52b,_0xc9a739){return _0xe5a52b===_0xc9a739;}},_0x6d30a3=process[_0x5dc8ed(0xb6)]['RANGER_TEST_USERNAME'],_0x3cdd2a=process['env'][_0x5dc8ed(0x85)],_0x38039d={};if(_0x6d30a3)_0x38039d['username']=_0x6d30a3;if(_0x3cdd2a)_0x38039d[_0x5dc8ed(0x97)]=_0x3cdd2a;if(_0x245b73?.[_0x5dc8ed(0x8d)])_0x38039d[_0x5dc8ed(0x8d)]=!![];try{return await _0x4ecfa2['hEjGo'](apiRequest,'/api/v1/profiles/'+encodeURIComponent(_0x2cc15c)+_0x5dc8ed(0x8b),{'method':_0x4ecfa2['XVpAX'],'body':JSON[_0x5dc8ed(0xb5)](_0x38039d)});}catch(_0x21be22){if(_0x4ecfa2[_0x5dc8ed(0x9e)](_0x21be22,ApiError)&&_0x4ecfa2[_0x5dc8ed(0xae)](_0x21be22[_0x5dc8ed(0xa1)],0x190)&&_0x21be22['code']==='not_configured')return{'status':'not_configured','error':_0x21be22['detail']};throw _0x21be22;}}export async function manualBrowserLogin(_0x4436e2,_0x33bc4c){const _0x2eaf3e=_0xbda037,_0x159d36={'MkCGy':function(_0x4249d9){return _0x4249d9();},'riPEd':function(_0x5595bf,_0x1e8eef,_0x5214ea){return _0x5595bf(_0x1e8eef,_0x5214ea);},'NsLRn':function(_0x13f066){return _0x13f066();},'QOOkZ':function(_0x383c8c,_0x91dca2){return _0x383c8c+_0x91dca2;},'SfYpV':_0x2eaf3e(0x7a),'Zzwob':'about:blank','gHYJX':_0x2eaf3e(0xe2),'Btabz':_0x2eaf3e(0x7f),'brFay':function(_0x8bc166,_0x2e757a){return _0x8bc166(_0x2e757a);},'qcxQM':function(_0x5c90b9,_0x263fa5){return _0x5c90b9&&_0x263fa5;},'OSLEp':'Browser\x20login\x20timed\x20out\x20before\x20completion.','KuOtr':_0x2eaf3e(0xf3),'xhjjD':_0x2eaf3e(0xeb)};if(!_0x159d36['NsLRn'](isInteractive))throw new Error(_0x159d36[_0x2eaf3e(0xab)]('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x4436e2[_0x2eaf3e(0xd8)]+_0x2eaf3e(0xd3)+_0x159d36['SfYpV'],_0x2eaf3e(0xa0)));const _0x51f7d1=_0x33bc4c&&_0x33bc4c['domains'][_0x2eaf3e(0xa7)]>0x0?_0x33bc4c[_0x2eaf3e(0xdf)][0x0]:_0x159d36[_0x2eaf3e(0xd0)];console[_0x2eaf3e(0x91)](_0x159d36['gHYJX']),console['log'](_0x159d36[_0x2eaf3e(0xee)]),await new Promise(_0x416a63=>setTimeout(_0x416a63,0x7d0));const _0x59d1ae=await chromium[_0x2eaf3e(0x86)]({'headless':![]});let _0x61a82d=null;try{const _0x24ab2d={'ignoreHTTPSErrors':!![]};_0x33bc4c?.['setupHeaders']&&(_0x24ab2d['extraHTTPHeaders']=_0x33bc4c['setupHeaders']);const _0x59bfcf=await _0x59d1ae[_0x2eaf3e(0xb2)](_0x24ab2d);await _0x159d36['brFay'](addProfileSetupBanner,_0x59bfcf);const _0x11b631=await _0x59bfcf[_0x2eaf3e(0xb9)]();await _0x11b631[_0x2eaf3e(0xdd)](_0x51f7d1);let _0x4b5be9=![];await new Promise(_0x1b88e1=>{const _0x42bdef={'xFQlV':function(_0x100138){return _0x100138();}},_0x4cdaf3=_0x159d36['riPEd'](setTimeout,()=>{const _0x4a7eae=_0x5b06;_0x4b5be9=!![],console[_0x4a7eae(0x7e)]('Browser\x20login\x20timed\x20out\x20after\x20'+MANUAL_LOGIN_TIMEOUT_MS/0xea60+_0x4a7eae(0x8a)),_0x42bdef[_0x4a7eae(0xc3)](_0x1b88e1);},MANUAL_LOGIN_TIMEOUT_MS);_0x11b631['on']('close',async()=>{const _0x2704cf=_0x5b06;clearTimeout(_0x4cdaf3);try{const _0xcae9ca=await _0x59bfcf[_0x2704cf(0xa2)]();_0x61a82d=_0xcae9ca;}catch{}_0x159d36[_0x2704cf(0xba)](_0x1b88e1);});});if(_0x159d36[_0x2eaf3e(0xd5)](_0x4b5be9,!_0x61a82d))throw new Error(_0x159d36['OSLEp']);}finally{await _0x59d1ae['close']()['catch'](()=>{});}if(!_0x61a82d)throw new Error(_0x159d36[_0x2eaf3e(0xa6)]);return await apiRequest('/api/v1/profiles/'+encodeURIComponent(_0x4436e2['name'])+'/session',{'method':'POST','body':JSON['stringify']({'session_state':_0x61a82d,'updated_by':_0x159d36['xhjjD']})}),{'sessionState':_0x61a82d};}export async function promptSaveCredentials(_0x224a3e){const _0x46db23=_0xbda037,_0xf397cd={'nDxdk':function(_0x33f905,_0x6c1bbf){return _0x33f905||_0x6c1bbf;},'kgPfc':'confirm','fYHUV':'save','EHaqW':function(_0x1c04bf,_0x4f968b,_0x4d3610){return _0x1c04bf(_0x4f968b,_0x4d3610);},'QUIlP':'\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.'},_0x4c72b2=process['env']['RANGER_TEST_USERNAME'],_0x2db333=process[_0x46db23(0xb6)]['RANGER_TEST_PASSWORD'];if(_0xf397cd['nDxdk'](!_0x4c72b2,!_0x2db333))return;if(!isInteractive())return;const {save:_0xfe31c9}=await _0x9d4c28[_0x46db23(0xc2)]([{'type':_0xf397cd[_0x46db23(0xd6)],'name':_0xf397cd['fYHUV'],'message':'Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','default':![]}]);if(!_0xfe31c9)return;await _0xf397cd['EHaqW'](apiRequest,_0x46db23(0xe6)+encodeURIComponent(_0x224a3e),{'method':_0x46db23(0xc7),'body':JSON['stringify']({'username':_0x4c72b2,'password':_0x2db333})}),console['log'](_0xf397cd[_0x46db23(0x93)]);}export async function resolveCloudProfileSession(_0x1e281b,_0x48c479={}){const _0xc84dae=_0xbda037,_0x1b80f4={'lTMuj':function(_0x266744){return _0x266744();},'sYmkh':function(_0xba91f3,_0x187e47,_0x407501){return _0xba91f3(_0x187e47,_0x407501);},'JCeCU':function(_0x3adecf,_0x1a600b){return _0x3adecf===_0x1a600b;},'tWrKF':'string','yJBuf':function(_0x55e57c,_0x5316d2){return _0x55e57c>_0x5316d2;},'BpkBM':function(_0x470683,_0x4543d6,_0x3e1c87,_0x59cbf4,_0x171091,_0x4c303b){return _0x470683(_0x4543d6,_0x3e1c87,_0x59cbf4,_0x171091,_0x4c303b);},'AZjaz':function(_0x2ffb32,_0x184a5e,_0x5788f2){return _0x2ffb32(_0x184a5e,_0x5788f2);},'FbfGw':function(_0x5acc54,_0x28ead8,_0x5ed4b0,_0x552b91,_0xb7fbee,_0x498b80,_0x136607,_0x56d5c9){return _0x5acc54(_0x28ead8,_0x5ed4b0,_0x552b91,_0xb7fbee,_0x498b80,_0x136607,_0x56d5c9);},'RsQAS':function(_0x8f18eb,_0x22a1e3,_0x19e803,_0x1f6082,_0x5314e5){return _0x8f18eb(_0x22a1e3,_0x19e803,_0x1f6082,_0x5314e5);},'mLtLo':function(_0x1f518d,_0x2a68b1){return _0x1f518d(_0x2a68b1);},'pXtDt':_0xc84dae(0xcd),'auKxQ':'success','msLpl':function(_0x5649fb,_0x158531){return _0x5649fb&&_0x158531;},'LvSpn':_0xc84dae(0x83),'rMbMP':function(_0x1826fa,_0x5cf4f4){return _0x1826fa instanceof _0x5cf4f4;}},_0x2b0358=_0x1e281b['settings']??{},_0x31aa64=await _0x1b80f4[_0xc84dae(0xd7)](fetchAuthConfig),_0x146b24=_0x31aa64?_0x1b80f4['sYmkh'](resolveAuthEnvironmentLocally,_0x31aa64,_0x1e281b['environmentKey']):null,_0x412825=_0x1b80f4['JCeCU'](typeof _0x146b24?.[_0xc84dae(0x8f)],'string')&&_0x146b24[_0xc84dae(0x8f)]['trim']()?_0x146b24['loginInstructions']:undefined,_0x128cf5=_0x1b80f4['JCeCU'](typeof _0x2b0358['loginInstructions'],_0x1b80f4[_0xc84dae(0xb4)])&&_0x2b0358[_0xc84dae(0x8f)][_0xc84dae(0xe8)]()?_0x2b0358['loginInstructions']:undefined,_0x4b66ed=_0x128cf5||!_0x412825?_0x2b0358:{..._0x2b0358,'loginInstructions':_0x412825},_0x341c4e=Boolean(_0x4b66ed['loginInstructions']?.[_0xc84dae(0xe8)]()),_0x36cda4=_0x146b24?.['domains'],_0x579083=_0x2b0358['setupHeaders'],_0x5d678a=_0x579083??_0x146b24?.['setupHeaders'],_0x238b01=_0x48c479['effectiveBaseUrl']??_0x2b0358[_0xc84dae(0xc5)]??(_0x36cda4&&_0x1b80f4['yJBuf'](_0x36cda4['length'],0x0)?_0x36cda4[0x0]:''),_0x2d4b46={'invalidateOn':_0x146b24?.['invalidateOn'],'userAgent':_0x146b24?.[_0xc84dae(0xa3)]?.['userAgent']??_0x2b0358[_0xc84dae(0xf1)]},_0x71e77e=await _0x1b80f4[_0xc84dae(0x95)](checkLocalCache,_0x1e281b['name'],_0x1e281b['organizationId'],_0x238b01,_0x5d678a,_0x2d4b46);if(_0x71e77e){if(_0x238b01){const _0xc3b88c=await isCachedSessionLive(_0x71e77e['storageStatePath'],_0x238b01,{'sessionCheckPath':_0x146b24?.['sessionCheckPath'],'setupHeaders':_0x5d678a},{'launchBrowser':launchRealBrowser});if(_0xc3b88c)return console['log'](_0xc84dae(0x7b)+_0x1e281b['name']+'\x22'),{'authPath':_0x71e77e['storageStatePath'],'settings':_0x4b66ed,'resolvedEnv':_0x146b24};console[_0xc84dae(0x91)]('\x20\x20Cached\x20session\x20for\x20\x22'+_0x1e281b['name']+_0xc84dae(0xce)),_0x1b80f4['AZjaz'](emitSessionValidationHint,_0x238b01,_0x146b24);}else return{'authPath':_0x71e77e['storageStatePath'],'settings':_0x4b66ed,'resolvedEnv':_0x146b24};}if(_0x1e281b[_0xc84dae(0x9d)]){const _0x3cb40a=await _0x1b80f4['FbfGw'](writeSessionToLocalCache,_0x1e281b['name'],_0x1e281b['organizationId'],_0x238b01,_0x5d678a,_0x1e281b['sessionState'],_0x36cda4,_0x2d4b46);if(_0x238b01){const _0x1f2e49=await _0x1b80f4[_0xc84dae(0xcb)](isCachedSessionLive,_0x3cb40a,_0x238b01,{'sessionCheckPath':_0x146b24?.[_0xc84dae(0xaf)],'setupHeaders':_0x5d678a},{'launchBrowser':launchRealBrowser});if(_0x1f2e49)return console[_0xc84dae(0x91)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x1e281b['name']+_0xc84dae(0xc6)),{'authPath':_0x3cb40a,'settings':_0x4b66ed,'resolvedEnv':_0x146b24};console['log'](_0xc84dae(0xe5)+_0x1e281b[_0xc84dae(0xd8)]+_0xc84dae(0x7c)),_0x1b80f4['sYmkh'](emitSessionValidationHint,_0x238b01,_0x146b24);}else return{'authPath':_0x3cb40a,'settings':_0x4b66ed,'resolvedEnv':_0x146b24};}if(_0x341c4e)return console[_0xc84dae(0x91)](_0xc84dae(0xe7)+_0x1e281b['name']+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x4b66ed,'resolvedEnv':_0x146b24};console[_0xc84dae(0x91)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x1e281b[_0xc84dae(0xd8)]+'\x22,\x20attempting\x20login...');const _0x45e75f=_0x1b80f4[_0xc84dae(0x8c)](Boolean,process['env'][_0xc84dae(0x80)])&&Boolean(process[_0xc84dae(0xb6)]['RANGER_TEST_PASSWORD']),_0x52bbdd=Boolean(_0x1e281b[_0xc84dae(0xcf)]);if(_0x45e75f||_0x52bbdd)try{const _0x28134d=await serverSideLogin(_0x1e281b[_0xc84dae(0xd8)]);if(_0x1b80f4['JCeCU'](_0x28134d['status'],_0xc84dae(0xbe)))console['log'](_0x1b80f4['pXtDt']);else{if(_0x28134d['status']===_0x1b80f4[_0xc84dae(0xed)]&&_0x28134d['session_state']){console['log'](_0xc84dae(0xbc));const _0x5d5f45=await writeSessionToLocalCache(_0x1e281b[_0xc84dae(0xd8)],_0x1e281b['organizationId'],_0x238b01,_0x5d678a,_0x28134d[_0xc84dae(0xc1)],_0x36cda4,_0x2d4b46);return _0x1b80f4[_0xc84dae(0x82)](_0x45e75f,!_0x52bbdd)&&await promptSaveCredentials(_0x1e281b[_0xc84dae(0xd8)]),{'authPath':_0x5d5f45,'settings':_0x4b66ed,'resolvedEnv':_0x146b24};}else _0x28134d['test_output']&&(console['log'](_0xc84dae(0x92)),console['log'](_0x28134d[_0xc84dae(0x90)])),console['log'](_0x1b80f4['LvSpn']);}}catch(_0x1dd8a6){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x1b80f4['rMbMP'](_0x1dd8a6,Error)?_0x1dd8a6[_0xc84dae(0xac)]:String(_0x1dd8a6))),console[_0xc84dae(0x91)]('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}const {sessionState:_0x216dd7}=await manualBrowserLogin(_0x1e281b,_0x146b24),_0x10bbca=await writeSessionToLocalCache(_0x1e281b['name'],_0x1e281b[_0xc84dae(0xc8)],_0x238b01,_0x5d678a,_0x216dd7,_0x36cda4,_0x2d4b46);return{'authPath':_0x10bbca,'settings':_0x4b66ed,'resolvedEnv':_0x146b24};}
1
+ function _0x4d38(){const _0x47db2f=['GHRep','keys','extraHTTPHeaders','newContext','storageState','environmentKey','\x20minutes\x20—\x20close\x20the\x20browser\x20to\x20retry.','string','mvZrn','dtOwE','API\x20request\x20','2224BSYdgU','password','join','toISOString','length','loginInstructions','json','TFVbV','test_output','settings','parse','\x0aWarning:\x20could\x20not\x20fetch\x20org\x20auth\x20config:\x20','\x0a\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20manually.','Save\x20credentials\x20to\x20profile\x20for\x20automatic\x20session\x20refresh?','vEgvg','\x22,\x20which\x20doesn\x27t\x20match\x20any\x20of\x20them.\x20','name','zIwaz','\x20\x20Server-side\x20login\x20not\x20configured\x20for\x20this\x20org.\x20Falling\x20back\x20to\x20manual\x20login...','1240030zNfEaS','some','xXAcl','dZLOD','trim','statusText','xAWmR','tkmoy','defaultEnvironmentKey','63414HNFIWU','hTwYx','5418728bXTJPq','newPage','xpbCK','\x20\x20Credentials\x20saved\x20to\x20cloud\x20profile.','HVmTJ','6XldEcd','auth','launch','username','origin','FofMl','auth_config','cookies','570354uduilh','\x20\x20Cloud\x20session\x20for\x20\x22','\x22\x20failed\x20validation\x20—\x20re-login\x20needed...','BXbIB','pQMeF','/session','\x20\x20(hint)\x20Cached\x20session\x20was\x20captured\x20against\x20one\x20of\x20','goto','detail','invalidateOn','error','fRfiz','IDLpY','storageStatePath','\x22\x20for\x20','you\x27re\x20now\x20at\x20\x22','If\x20logins\x20keep\x20failing\x20here,\x20ask\x20your\x20Ranger\x20admin\x20to\x20tighten\x20session\x20reuse\x20for\x20this\x20environment.','POST','userAgent','domains','status','\x20\x20Cached\x20session\x20for\x20\x22','621135cGllcc','jEAbM','/api/v1/profiles/','not_configured','ngvYt','UqIVB','QhmvS','organizationId','map','nfCSa','sessionCheckPath','log','praic','EHVUH','\x0a\x20\x20Server-side\x20login\x20failed.\x20Test\x20output:','close','\x20failed\x20(','WOqZE','NhMAx','2323328octgkF','env','\x22,\x20attempting\x20login...','stringify','cqSla','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','isArray','push','baseUrl','url','260613mgUmuT','about:blank','PHPZq','/login','RANGER_TEST_USERNAME','save','code','RANGER_TEST_PASSWORD','gBDTo','Bearer\x20','ApiError','\x20\x20Created\x20cloud\x20profile\x20\x22','force'];_0x4d38=function(){return _0x47db2f;};return _0x4d38();}const _0xc45c82=_0x365e;(function(_0x56898d,_0x415c1c){const _0x20ab3d=_0x365e,_0x4441ba=_0x56898d();while(!![]){try{const _0x297063=parseInt(_0x20ab3d(0x1d8))/0x1*(-parseInt(_0x20ab3d(0x213))/0x2)+-parseInt(_0x20ab3d(0x231))/0x3+parseInt(_0x20ab3d(0x1ce))/0x4+-parseInt(_0x20ab3d(0x203))/0x5+-parseInt(_0x20ab3d(0x21b))/0x6+-parseInt(_0x20ab3d(0x20e))/0x7+parseInt(_0x20ab3d(0x1f0))/0x8*(parseInt(_0x20ab3d(0x20c))/0x9);if(_0x297063===_0x415c1c)break;else _0x4441ba['push'](_0x4441ba['shift']());}catch(_0xf9dd22){_0x4441ba['push'](_0x4441ba['shift']());}}}(_0x4d38,0x69d9f));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x310049 from'inquirer';import{chromium}from'playwright';import{getApiBaseUrl}from'./environment.js';import{getToken}from'./keychain.js';import{getRangerHomeDir}from'./rangerRoot.js';import{addProfileSetupBanner}from'./profileSetupBanner.js';import{duplicateCookiesForDomains,getSessionCachePath,getStorageStatePath,isCachedSessionLive,isInteractive,resolveAuthEnvironmentLocally,sessionCacheHash}from'./cloudProfileSession.js';const MANUAL_LOGIN_TIMEOUT_MS=0xa*0x3c*0x3e8;async function requireToken(){const _0x2f9441={'eDSaP':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]'},_0x1c7852=await getToken();if(!_0x1c7852)throw new Error(_0x2f9441['eDSaP']);return _0x1c7852;}async function apiRequest(_0x851cb3,_0x22f750={}){const _0x389f07=_0x365e,_0x2f91e9={'cqSla':function(_0x525baf){return _0x525baf();},'jEAbM':function(_0xc53e40){return _0xc53e40();},'TFVbV':function(_0x5df92b,_0x498902){return _0x5df92b===_0x498902;}},_0x517354=await _0x2f91e9[_0x389f07(0x1d2)](requireToken),_0x4310bc=_0x2f91e9[_0x389f07(0x232)](getApiBaseUrl),_0x5a6b9b=await fetch(''+_0x4310bc+_0x851cb3,{..._0x22f750,'headers':{'Authorization':_0x389f07(0x1e1)+_0x517354,'Content-Type':'application/json',..._0x22f750['headers']??{}}});if(!_0x5a6b9b['ok']){let _0x22abcb='',_0xa6118f;try{const _0x2099a9=await _0x5a6b9b[_0x389f07(0x1f6)]();_0x22abcb=(typeof _0x2099a9['error']==='string'?_0x2099a9['error']:undefined)??JSON['stringify'](_0x2099a9);if(_0x2f91e9['TFVbV'](typeof _0x2099a9[_0x389f07(0x1de)],'string'))_0xa6118f=_0x2099a9[_0x389f07(0x1de)];}catch{_0x22abcb=_0x5a6b9b[_0x389f07(0x208)];}throw new ApiError(_0x389f07(0x1ef)+_0x851cb3+_0x389f07(0x1cb)+_0x5a6b9b[_0x389f07(0x22f)]+'):\x20'+_0x22abcb,_0x5a6b9b[_0x389f07(0x22f)],_0x22abcb,_0xa6118f);}if(_0x2f91e9[_0x389f07(0x1f7)](_0x5a6b9b['status'],0xcc))return undefined;return _0x5a6b9b['json']();}export class ApiError extends Error{[_0xc45c82(0x22f)];['detail'];[_0xc45c82(0x1de)];constructor(_0x386e2b,_0x5259ce,_0x5be22b,_0x1ab39a){const _0x27a655=_0xc45c82;super(_0x386e2b),this['status']=_0x5259ce,this[_0x27a655(0x223)]=_0x5be22b,this[_0x27a655(0x1de)]=_0x1ab39a,this[_0x27a655(0x200)]=_0x27a655(0x1e2);}}export async function fetchCloudProfile(_0x4e2c13){const _0x3300ad=_0xc45c82,_0x2ac0be={'HVmTJ':function(_0x126ae5,_0x591f76){return _0x126ae5(_0x591f76);}};try{return await _0x2ac0be[_0x3300ad(0x212)](apiRequest,_0x3300ad(0x233)+encodeURIComponent(_0x4e2c13));}catch(_0x24e609){if(_0x24e609 instanceof ApiError&&_0x24e609[_0x3300ad(0x22f)]===0x194)return null;throw _0x24e609;}}export async function listCloudProfiles(){const _0xcc7869={'WSMmk':function(_0x10d10d,_0x3d9493){return _0x10d10d(_0x3d9493);}},_0x178545=await _0xcc7869['WSMmk'](apiRequest,'/api/v1/profiles');return _0x178545['profiles'];}export async function deleteCloudProfile(_0x4fff04){const _0x233130=_0xc45c82,_0x355ce0={'UckjZ':function(_0x38e267,_0x24a161){return _0x38e267 instanceof _0x24a161;},'mYbYK':function(_0x37a191,_0x11a444){return _0x37a191===_0x11a444;}};try{await apiRequest(_0x233130(0x233)+encodeURIComponent(_0x4fff04),{'method':'DELETE'});}catch(_0x3bc350){if(_0x355ce0['UckjZ'](_0x3bc350,ApiError)&&_0x355ce0['mYbYK'](_0x3bc350['status'],0x194))throw new Error('Cloud\x20profile\x20\x22'+_0x4fff04+'\x22\x20not\x20found.');throw _0x3bc350;}}export async function createCloudProfile(_0x58248e,_0x4c93d2,_0x48640d={}){const _0x301ddd=_0xc45c82,_0x40d2bb={'xshsR':function(_0x49c6bd,_0x22133f){return _0x49c6bd>_0x22133f;},'UsoLH':function(_0x17d78e,_0x4537e1,_0x1c8a6a){return _0x17d78e(_0x4537e1,_0x1c8a6a);}},_0xb1170a={'name':_0x58248e};if(_0x4c93d2)_0xb1170a['environment_key']=_0x4c93d2;_0x48640d['settings']&&_0x40d2bb['xshsR'](Object[_0x301ddd(0x1e6)](_0x48640d['settings'])[_0x301ddd(0x1f4)],0x0)&&(_0xb1170a['settings']=_0x48640d[_0x301ddd(0x1f9)]);if(_0x48640d[_0x301ddd(0x216)])_0xb1170a[_0x301ddd(0x216)]=_0x48640d[_0x301ddd(0x216)];if(_0x48640d['password'])_0xb1170a[_0x301ddd(0x1f1)]=_0x48640d[_0x301ddd(0x1f1)];return await _0x40d2bb['UsoLH'](apiRequest,'/api/v1/profiles',{'method':'POST','body':JSON[_0x301ddd(0x1d1)](_0xb1170a)});}function _0x365e(_0x2b2ff1,_0xb71f30){_0x2b2ff1=_0x2b2ff1-0x1cb;const _0x4d38d0=_0x4d38();let _0x365e81=_0x4d38d0[_0x2b2ff1];return _0x365e81;}export async function uploadCloudProfileSession(_0x27fce0,_0x1efe2e){const _0x56bbcd=_0xc45c82,_0x192c58={'oBHkl':function(_0x4786e8,_0xfa1a83){return _0x4786e8(_0xfa1a83);}};return await apiRequest('/api/v1/profiles/'+_0x192c58['oBHkl'](encodeURIComponent,_0x27fce0)+_0x56bbcd(0x220),{'method':_0x56bbcd(0x22c),'body':JSON[_0x56bbcd(0x1d1)]({'session_state':_0x1efe2e})});}export async function saveCloudProfileCredentials(_0x3a5f2e,_0x4f777e,_0x54c55b){const _0x5866c9=_0xc45c82,_0x230e89={'XNRXP':function(_0x596ae7,_0x2bc163){return _0x596ae7(_0x2bc163);},'FmMSw':'PUT'};await apiRequest(_0x5866c9(0x233)+_0x230e89['XNRXP'](encodeURIComponent,_0x3a5f2e),{'method':_0x230e89['FmMSw'],'body':JSON['stringify']({'username':_0x4f777e,'password':_0x54c55b})});}export async function fetchAuthConfig(){const _0x4a6a5a=_0xc45c82,_0x58654f={'hTwYx':function(_0x5d1c5e,_0x282703){return _0x5d1c5e(_0x282703);},'GcVau':function(_0x596aef,_0x402459){return _0x596aef!==_0x402459;}};try{const _0x3f9599=await _0x58654f[_0x4a6a5a(0x20d)](apiRequest,'/api/v1/profiles/auth-config');return _0x3f9599[_0x4a6a5a(0x219)];}catch(_0x156a80){return _0x156a80 instanceof ApiError&&_0x58654f['GcVau'](_0x156a80[_0x4a6a5a(0x22f)],0x194)&&console['error'](_0x4a6a5a(0x1fb)+_0x156a80['message']),null;}}export function pickAdHocEnvKey(_0x543f1a){const _0x41d4a6=_0xc45c82,_0x5d81f3={'zIwaz':function(_0x5156a1,_0x1044de){return _0x5156a1===_0x1044de;}};if(!_0x543f1a)return null;if(_0x543f1a['defaultEnvironmentKey'])return _0x543f1a[_0x41d4a6(0x20b)];const _0x1fc3b8=Object['keys'](_0x543f1a['environments']??{});if(_0x5d81f3[_0x41d4a6(0x201)](_0x1fc3b8[_0x41d4a6(0x1f4)],0x1))return _0x1fc3b8[0x0];if(_0x1fc3b8['length']===0x0)return null;throw new Error('Your\x20org\x20has\x20more\x20than\x20one\x20environment\x20configured\x20('+_0x1fc3b8['join'](',\x20')+').\x20'+'Create\x20the\x20profile\x20explicitly\x20with\x20`ranger\x20profile\x20add\x20<name>\x20--url\x20<your-app-url>`\x20so\x20Ranger\x20can\x20pick\x20the\x20right\x20one.');}export async function resolveAdHocProfile(_0xfbd497=process[_0xc45c82(0x1cf)]){const _0x4e181d=_0xc45c82,_0x3d622f={'icyfO':function(_0xda19e5,_0x3c1f03){return _0xda19e5(_0x3c1f03);},'agfJZ':function(_0x16d39a,_0x5531c4,_0x19eec3,_0x38d536){return _0x16d39a(_0x5531c4,_0x19eec3,_0x38d536);}},_0x5d59f6=_0xfbd497['RANGER_TEST_USERNAME'];if(!_0x5d59f6)return null;const _0x1b81ef=await _0x3d622f['icyfO'](fetchCloudProfile,_0x5d59f6);if(_0x1b81ef)return{'name':_0x1b81ef['name'],'profile':_0x1b81ef};const _0x5a6f1c=await fetchAuthConfig(),_0x546f51=_0x3d622f['icyfO'](pickAdHocEnvKey,_0x5a6f1c),_0xa960b7=_0xfbd497[_0x4e181d(0x1df)],_0x39c91f=await _0x3d622f['agfJZ'](createCloudProfile,_0x5d59f6,_0x546f51??undefined,{'username':_0x5d59f6,'password':_0xa960b7});return console[_0x4e181d(0x23c)](_0x4e181d(0x1e3)+_0x39c91f['name']+_0x4e181d(0x229)+_0x5d59f6),{'name':_0x39c91f[_0x4e181d(0x200)],'profile':_0x39c91f};}export async function writeSessionToLocalCache(_0x471c46,_0x290066,_0x406aa9,_0x249c3c,_0x2c0fa5,_0x4f1375,_0x420448){const _0x477178=_0xc45c82,_0x69d210={'QhmvS':function(_0x52567d,_0x39f009,_0x38df97){return _0x52567d(_0x39f009,_0x38df97);},'dZLOD':function(_0x316234,_0x2068e5,_0x577473){return _0x316234(_0x2068e5,_0x577473);},'cqsoK':function(_0x3579ff){return _0x3579ff();},'Kteez':_0x477178(0x214),'KMhmH':function(_0x4f1f09,_0x3c3de8){return _0x4f1f09>_0x3c3de8;},'BKXkl':function(_0x11dd00,_0x185823){return _0x11dd00(_0x185823);}},_0x1f09d2=sessionCacheHash({'orgId':_0x290066,'profileName':_0x471c46,'effectiveBaseUrl':_0x406aa9,'setupHeaders':_0x249c3c,'invalidateOn':_0x420448?.[_0x477178(0x224)],'userAgent':_0x420448?.[_0x477178(0x22d)],'clientIp':_0x420448?.['clientIp']}),_0x318c13=_0x69d210[_0x477178(0x237)](getSessionCachePath,_0x1f09d2,_0x471c46),_0x2bf032=_0x69d210[_0x477178(0x206)](join,_0x69d210['cqsoK'](getRangerHomeDir),_0x69d210['Kteez']);!existsSync(_0x2bf032)&&await mkdir(_0x2bf032,{'recursive':!![]});const _0x23fe17={..._0x2c0fa5};_0x4f1375&&_0x69d210['KMhmH'](_0x4f1375[_0x477178(0x1f4)],0x0)&&Array[_0x477178(0x1d4)](_0x23fe17[_0x477178(0x21a)])&&(_0x23fe17['cookies']=_0x69d210['QhmvS'](duplicateCookiesForDomains,_0x23fe17['cookies'],_0x4f1375));const _0x36a5b0={'cached_at':new Date()[_0x477178(0x1f3)](),'session_state':_0x23fe17};await _0x69d210[_0x477178(0x206)](writeFile,_0x318c13,JSON['stringify'](_0x36a5b0,null,0x2));const _0x15b7c9=_0x69d210['BKXkl'](getStorageStatePath,_0x318c13);return await writeFile(_0x15b7c9,JSON['stringify'](_0x23fe17,null,0x2)),_0x15b7c9;}export async function checkLocalCache(_0x53c6d1,_0x3818e2,_0x1a55a1,_0x4801e0,_0x31d205){const _0x122604=_0xc45c82,_0x183a39={'NhMAx':function(_0x41d204,_0x3e889c,_0x1153e2){return _0x41d204(_0x3e889c,_0x1153e2);},'fRfiz':function(_0x338429,_0x17f034){return _0x338429(_0x17f034);}},_0xf12b3e=sessionCacheHash({'orgId':_0x3818e2,'profileName':_0x53c6d1,'effectiveBaseUrl':_0x1a55a1,'setupHeaders':_0x4801e0,'invalidateOn':_0x31d205?.[_0x122604(0x224)],'userAgent':_0x31d205?.[_0x122604(0x22d)],'clientIp':_0x31d205?.['clientIp']}),_0x54f56d=_0x183a39['NhMAx'](getSessionCachePath,_0xf12b3e,_0x53c6d1),_0x468a98=_0x183a39[_0x122604(0x226)](getStorageStatePath,_0x54f56d);if(!existsSync(_0x54f56d)||!existsSync(_0x468a98))return null;try{const _0x53b60c=await _0x183a39[_0x122604(0x1cd)](readFile,_0x54f56d,'utf-8');return JSON[_0x122604(0x1fa)](_0x53b60c),{'storageStatePath':_0x468a98};}catch{return null;}}function launchRealBrowser(){return chromium['launch']({'headless':!![]});}function emitSessionValidationHint(_0x260b74,_0x4e774a){const _0xf3bc4d=_0xc45c82,_0x489215={'EHVUH':function(_0x6ea0bb,_0x101834){return _0x6ea0bb+_0x101834;}};if(!_0x4e774a||!_0x4e774a['domains']?.['length'])return;let _0xfecb16;try{_0xfecb16=new URL(_0x260b74);}catch{return;}const _0x2032dc=[];for(const _0x34f0fa of _0x4e774a['domains']){try{_0x2032dc[_0xf3bc4d(0x1d5)]({'raw':_0x34f0fa,'url':new URL(_0x34f0fa)});}catch{}}if(_0x2032dc['length']===0x0)return;if(_0x2032dc[_0xf3bc4d(0x204)](_0x2b867b=>_0x2b867b[_0xf3bc4d(0x1d7)][_0xf3bc4d(0x217)]===_0xfecb16['origin']))return;const _0x5dccee=_0x2032dc[_0xf3bc4d(0x239)](_0x15b61e=>'\x22'+_0x15b61e['raw']+'\x22')[_0xf3bc4d(0x1f2)](',\x20');console[_0xf3bc4d(0x23c)](_0x489215[_0xf3bc4d(0x23e)](_0x489215['EHVUH'](_0xf3bc4d(0x221)+_0x5dccee+';\x20',_0xf3bc4d(0x22a)+_0x260b74+_0xf3bc4d(0x1ff)),_0xf3bc4d(0x22b)));}export async function serverSideLogin(_0x128d02,_0x2784af){const _0x1559b2=_0xc45c82,_0x120039={'WOqZE':function(_0x3a65a7,_0x5a9b05,_0x44dd61){return _0x3a65a7(_0x5a9b05,_0x44dd61);},'xAWmR':function(_0x276a69,_0x53e238){return _0x276a69===_0x53e238;},'dtOwE':_0x1559b2(0x234)},_0x3c27bf=process[_0x1559b2(0x1cf)]['RANGER_TEST_USERNAME'],_0x2cdbfe=process[_0x1559b2(0x1cf)][_0x1559b2(0x1df)],_0x592210={};if(_0x3c27bf)_0x592210['username']=_0x3c27bf;if(_0x2cdbfe)_0x592210[_0x1559b2(0x1f1)]=_0x2cdbfe;if(_0x2784af?.[_0x1559b2(0x1e4)])_0x592210[_0x1559b2(0x1e4)]=!![];try{return await _0x120039[_0x1559b2(0x1cc)](apiRequest,_0x1559b2(0x233)+encodeURIComponent(_0x128d02)+_0x1559b2(0x1db),{'method':_0x1559b2(0x22c),'body':JSON[_0x1559b2(0x1d1)](_0x592210)});}catch(_0x9dc608){if(_0x9dc608 instanceof ApiError&&_0x120039[_0x1559b2(0x209)](_0x9dc608[_0x1559b2(0x22f)],0x190)&&_0x9dc608['code']===_0x120039[_0x1559b2(0x1ee)])return{'status':'not_configured','error':_0x9dc608['detail']};throw _0x9dc608;}}export async function manualBrowserLogin(_0x119d88,_0x7b182c){const _0x521a74=_0xc45c82,_0x3590b5={'fnGFs':function(_0x39c7d1,_0xf5c841){return _0x39c7d1/_0xf5c841;},'BXbIB':function(_0x137a37){return _0x137a37();},'FJXPj':function(_0x3d3b58,_0x2a0736,_0x26265f){return _0x3d3b58(_0x2a0736,_0x26265f);},'xXAcl':_0x521a74(0x1d9),'hZkqR':_0x521a74(0x1fc),'jNqKK':'\x20\x20When\x20done,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','FofMl':'Browser\x20login\x20timed\x20out\x20before\x20completion.','nfCSa':function(_0x3900fb,_0x2a61ff,_0xb512be){return _0x3900fb(_0x2a61ff,_0xb512be);},'enrwd':function(_0x1d9f90,_0x5b74f7){return _0x1d9f90(_0x5b74f7);}};if(!_0x3590b5[_0x521a74(0x21e)](isInteractive))throw new Error('No\x20automatic\x20login\x20available\x20for\x20profile\x20\x22'+_0x119d88['name']+'\x22.\x0a'+'\x20\x20Set\x20RANGER_TEST_USERNAME/RANGER_TEST_PASSWORD\x20so\x20Ranger\x20can\x20log\x20in\x20for\x20you,\x20'+'or\x20run\x20this\x20command\x20from\x20an\x20interactive\x20terminal\x20so\x20a\x20browser\x20can\x20open.');const _0x15f90a=_0x7b182c&&_0x7b182c['domains'][_0x521a74(0x1f4)]>0x0?_0x7b182c['domains'][0x0]:_0x3590b5[_0x521a74(0x205)];console[_0x521a74(0x23c)](_0x3590b5['hZkqR']),console['log'](_0x3590b5['jNqKK']),await new Promise(_0x1163e1=>setTimeout(_0x1163e1,0x7d0));const _0x21fbec=await chromium[_0x521a74(0x215)]({'headless':![]});let _0x551826=null;try{const _0x3c98ab={'ignoreHTTPSErrors':!![]};_0x7b182c?.['setupHeaders']&&(_0x3c98ab[_0x521a74(0x1e7)]=_0x7b182c['setupHeaders']);const _0x2a2298=await _0x21fbec[_0x521a74(0x1e8)](_0x3c98ab);await addProfileSetupBanner(_0x2a2298);const _0x140334=await _0x2a2298[_0x521a74(0x20f)]();await _0x140334[_0x521a74(0x222)](_0x15f90a);let _0x5b26ec=![];await new Promise(_0x13ea7e=>{const _0x5308e6=_0x521a74,_0x2ac322={'gBDTo':function(_0x155c4e){return _0x155c4e();}},_0x1a03a2=_0x3590b5['FJXPj'](setTimeout,()=>{const _0x109002=_0x365e;_0x5b26ec=!![],console[_0x109002(0x225)]('Browser\x20login\x20timed\x20out\x20after\x20'+_0x3590b5['fnGFs'](MANUAL_LOGIN_TIMEOUT_MS,0xea60)+_0x109002(0x1eb)),_0x3590b5['BXbIB'](_0x13ea7e);},MANUAL_LOGIN_TIMEOUT_MS);_0x140334['on'](_0x5308e6(0x240),async()=>{const _0x1f0631=_0x5308e6;clearTimeout(_0x1a03a2);try{const _0x550091=await _0x2a2298[_0x1f0631(0x1e9)]();_0x551826=_0x550091;}catch{}_0x2ac322[_0x1f0631(0x1e0)](_0x13ea7e);});});if(_0x5b26ec&&!_0x551826)throw new Error(_0x3590b5[_0x521a74(0x218)]);}finally{await _0x21fbec[_0x521a74(0x240)]()['catch'](()=>{});}if(!_0x551826)throw new Error(_0x521a74(0x1d3));return await _0x3590b5[_0x521a74(0x23a)](apiRequest,_0x521a74(0x233)+_0x3590b5['enrwd'](encodeURIComponent,_0x119d88[_0x521a74(0x200)])+'/session',{'method':'POST','body':JSON['stringify']({'session_state':_0x551826,'updated_by':'cli:manual-login'})}),{'sessionState':_0x551826};}export async function promptSaveCredentials(_0x1fa8e1){const _0x3df326=_0xc45c82,_0x2c245f={'tkmoy':function(_0x2af4a6,_0xb4aa82){return _0x2af4a6||_0xb4aa82;},'QZSxZ':function(_0x36a65b){return _0x36a65b();},'pQMeF':'confirm','sxZIT':_0x3df326(0x1dd),'mvZrn':_0x3df326(0x1fd),'iyeWV':function(_0x582f2f,_0xa64789){return _0x582f2f(_0xa64789);},'IDLpY':_0x3df326(0x211)},_0x23c2e9=process[_0x3df326(0x1cf)][_0x3df326(0x1dc)],_0x2d0302=process[_0x3df326(0x1cf)]['RANGER_TEST_PASSWORD'];if(_0x2c245f[_0x3df326(0x20a)](!_0x23c2e9,!_0x2d0302))return;if(!_0x2c245f['QZSxZ'](isInteractive))return;const {save:_0x4c7526}=await _0x310049['prompt']([{'type':_0x2c245f[_0x3df326(0x21f)],'name':_0x2c245f['sxZIT'],'message':_0x2c245f[_0x3df326(0x1ed)],'default':![]}]);if(!_0x4c7526)return;await apiRequest('/api/v1/profiles/'+_0x2c245f['iyeWV'](encodeURIComponent,_0x1fa8e1),{'method':'PUT','body':JSON['stringify']({'username':_0x23c2e9,'password':_0x2d0302})}),console['log'](_0x2c245f[_0x3df326(0x227)]);}export async function resolveCloudProfileSession(_0x3f2033,_0x48f007={}){const _0x25c627=_0xc45c82,_0x3da30b={'GHRep':function(_0x55ed52){return _0x55ed52();},'PHPZq':_0x25c627(0x1ec),'UqIVB':function(_0x438baa,_0x4f51d3){return _0x438baa(_0x4f51d3);},'dVBVT':function(_0x15e9d5,_0x3525c2,_0x538ccd,_0x51d7d9,_0x2d486a,_0x4b4281){return _0x15e9d5(_0x3525c2,_0x538ccd,_0x51d7d9,_0x2d486a,_0x4b4281);},'ngvYt':function(_0x3e379,_0x50ae97,_0x247c3e,_0x4c0156,_0x363576){return _0x3e379(_0x50ae97,_0x247c3e,_0x4c0156,_0x363576);},'tlzlU':function(_0x5c99b1,_0x23a069,_0x44a9de,_0x4e489d,_0xceac00){return _0x5c99b1(_0x23a069,_0x44a9de,_0x4e489d,_0xceac00);},'PePSg':function(_0xcd4b81,_0x8f674d){return _0xcd4b81(_0x8f674d);},'rbVTZ':function(_0x312d19,_0x31c0e8){return _0x312d19||_0x31c0e8;},'LUCSi':_0x25c627(0x202),'vEgvg':function(_0x2e9cdc,_0x26aa04){return _0x2e9cdc===_0x26aa04;},'fdMRa':'success','FygLO':'\x20\x20Login\x20successful.\x20Session\x20cached.','cAkey':_0x25c627(0x23f),'xpbCK':'\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...','xciaz':function(_0x4e4007,_0x75a0a4){return _0x4e4007 instanceof _0x75a0a4;},'praic':function(_0x46475e,_0x4556df){return _0x46475e(_0x4556df);},'JoyXg':function(_0x3cbb98,_0x1fbca8,_0xed60e4,_0x598ebf,_0x35246c,_0x14b6be,_0x522c40,_0x158f2d){return _0x3cbb98(_0x1fbca8,_0xed60e4,_0x598ebf,_0x35246c,_0x14b6be,_0x522c40,_0x158f2d);}},_0x1bff43=_0x3f2033['settings']??{},_0x1717fa=await _0x3da30b[_0x25c627(0x1e5)](fetchAuthConfig),_0x53a380=_0x1717fa?resolveAuthEnvironmentLocally(_0x1717fa,_0x3f2033[_0x25c627(0x1ea)]):null,_0x43c63a=typeof _0x53a380?.[_0x25c627(0x1f5)]===_0x3da30b[_0x25c627(0x1da)]&&_0x53a380[_0x25c627(0x1f5)]['trim']()?_0x53a380[_0x25c627(0x1f5)]:undefined,_0x2d763e=typeof _0x1bff43[_0x25c627(0x1f5)]===_0x3da30b[_0x25c627(0x1da)]&&_0x1bff43['loginInstructions'][_0x25c627(0x207)]()?_0x1bff43[_0x25c627(0x1f5)]:undefined,_0x4e8e31=_0x2d763e||!_0x43c63a?_0x1bff43:{..._0x1bff43,'loginInstructions':_0x43c63a},_0x3d878c=_0x3da30b['UqIVB'](Boolean,_0x4e8e31['loginInstructions']?.['trim']()),_0xecf803=_0x53a380?.[_0x25c627(0x22e)],_0x10e55d=_0x1bff43['setupHeaders'],_0x422a18=_0x10e55d??_0x53a380?.['setupHeaders'],_0x3308fa=_0x48f007['effectiveBaseUrl']??_0x1bff43[_0x25c627(0x1d6)]??(_0xecf803&&_0xecf803[_0x25c627(0x1f4)]>0x0?_0xecf803[0x0]:''),_0x38cc16={'invalidateOn':_0x53a380?.[_0x25c627(0x224)],'userAgent':_0x53a380?.['browserOptions']?.['userAgent']??_0x1bff43['userAgent']},_0x5c0e20=await _0x3da30b['dVBVT'](checkLocalCache,_0x3f2033[_0x25c627(0x200)],_0x3f2033[_0x25c627(0x238)],_0x3308fa,_0x422a18,_0x38cc16);if(_0x5c0e20){if(_0x3308fa){const _0x4901f7=await _0x3da30b[_0x25c627(0x235)](isCachedSessionLive,_0x5c0e20[_0x25c627(0x228)],_0x3308fa,{'sessionCheckPath':_0x53a380?.[_0x25c627(0x23b)],'setupHeaders':_0x422a18},{'launchBrowser':launchRealBrowser});if(_0x4901f7)return console[_0x25c627(0x23c)]('\x20\x20Using\x20cached\x20session\x20for\x20cloud\x20profile\x20\x22'+_0x3f2033[_0x25c627(0x200)]+'\x22'),{'authPath':_0x5c0e20[_0x25c627(0x228)],'settings':_0x4e8e31,'resolvedEnv':_0x53a380};console[_0x25c627(0x23c)](_0x25c627(0x230)+_0x3f2033['name']+'\x22\x20failed\x20validation\x20—\x20refreshing...'),emitSessionValidationHint(_0x3308fa,_0x53a380);}else return{'authPath':_0x5c0e20['storageStatePath'],'settings':_0x4e8e31,'resolvedEnv':_0x53a380};}if(_0x3f2033['sessionState']){const _0x47f449=await writeSessionToLocalCache(_0x3f2033['name'],_0x3f2033[_0x25c627(0x238)],_0x3308fa,_0x422a18,_0x3f2033['sessionState'],_0xecf803,_0x38cc16);if(_0x3308fa){const _0x596e84=await _0x3da30b['tlzlU'](isCachedSessionLive,_0x47f449,_0x3308fa,{'sessionCheckPath':_0x53a380?.['sessionCheckPath'],'setupHeaders':_0x422a18},{'launchBrowser':launchRealBrowser});if(_0x596e84)return console[_0x25c627(0x23c)]('\x20\x20Cloud\x20session\x20is\x20live\x20for\x20\x22'+_0x3f2033['name']+'\x22,\x20cached\x20locally'),{'authPath':_0x47f449,'settings':_0x4e8e31,'resolvedEnv':_0x53a380};console[_0x25c627(0x23c)](_0x25c627(0x21c)+_0x3f2033[_0x25c627(0x200)]+_0x25c627(0x21d)),emitSessionValidationHint(_0x3308fa,_0x53a380);}else return{'authPath':_0x47f449,'settings':_0x4e8e31,'resolvedEnv':_0x53a380};}if(_0x3d878c)return console[_0x25c627(0x23c)]('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x3f2033['name']+'\x22;\x20proceeding\x20with\x20loginInstructions.'),{'authPath':undefined,'settings':_0x4e8e31,'resolvedEnv':_0x53a380};console['log']('\x20\x20No\x20live\x20session\x20for\x20\x22'+_0x3f2033[_0x25c627(0x200)]+_0x25c627(0x1d0));const _0x250d8b=Boolean(process[_0x25c627(0x1cf)][_0x25c627(0x1dc)])&&Boolean(process['env']['RANGER_TEST_PASSWORD']),_0xfd7243=_0x3da30b['PePSg'](Boolean,_0x3f2033[_0x25c627(0x216)]);if(_0x3da30b['rbVTZ'](_0x250d8b,_0xfd7243))try{const _0xe194cb=await _0x3da30b[_0x25c627(0x236)](serverSideLogin,_0x3f2033[_0x25c627(0x200)]);if(_0xe194cb[_0x25c627(0x22f)]===_0x25c627(0x234))console[_0x25c627(0x23c)](_0x3da30b['LUCSi']);else{if(_0x3da30b[_0x25c627(0x1fe)](_0xe194cb['status'],_0x3da30b['fdMRa'])&&_0xe194cb['session_state']){console[_0x25c627(0x23c)](_0x3da30b['FygLO']);const _0x1cf35d=await writeSessionToLocalCache(_0x3f2033['name'],_0x3f2033[_0x25c627(0x238)],_0x3308fa,_0x422a18,_0xe194cb['session_state'],_0xecf803,_0x38cc16);return _0x250d8b&&!_0xfd7243&&await promptSaveCredentials(_0x3f2033['name']),{'authPath':_0x1cf35d,'settings':_0x4e8e31,'resolvedEnv':_0x53a380};}else _0xe194cb[_0x25c627(0x1f8)]&&(console[_0x25c627(0x23c)](_0x3da30b['cAkey']),console['log'](_0xe194cb[_0x25c627(0x1f8)])),console['log'](_0x3da30b[_0x25c627(0x210)]);}}catch(_0x566921){console['log']('\x20\x20Server-side\x20login\x20error:\x20'+(_0x3da30b['xciaz'](_0x566921,Error)?_0x566921['message']:_0x3da30b[_0x25c627(0x23d)](String,_0x566921))),console[_0x25c627(0x23c)]('\x20\x20Falling\x20back\x20to\x20manual\x20browser\x20login...');}const {sessionState:_0x43b63d}=await manualBrowserLogin(_0x3f2033,_0x53a380),_0x24cb3f=await _0x3da30b['JoyXg'](writeSessionToLocalCache,_0x3f2033['name'],_0x3f2033['organizationId'],_0x3308fa,_0x422a18,_0x43b63d,_0xecf803,_0x38cc16);return{'authPath':_0x24cb3f,'settings':_0x4e8e31,'resolvedEnv':_0x53a380};}
@@ -1 +1 @@
1
- function _0x2294(_0x134467,_0x4b7f71){_0x134467=_0x134467-0x1f2;const _0x26d696=_0x26d6();let _0x2294d2=_0x26d696[_0x134467];return _0x2294d2;}(function(_0x18d5f0,_0x5f3750){const _0x3bcbf5=_0x2294,_0x253351=_0x18d5f0();while(!![]){try{const _0x52507a=parseInt(_0x3bcbf5(0x218))/0x1+parseInt(_0x3bcbf5(0x1ff))/0x2+-parseInt(_0x3bcbf5(0x221))/0x3*(parseInt(_0x3bcbf5(0x20d))/0x4)+parseInt(_0x3bcbf5(0x1f3))/0x5*(parseInt(_0x3bcbf5(0x20e))/0x6)+-parseInt(_0x3bcbf5(0x203))/0x7+-parseInt(_0x3bcbf5(0x205))/0x8*(parseInt(_0x3bcbf5(0x217))/0x9)+-parseInt(_0x3bcbf5(0x20c))/0xa*(parseInt(_0x3bcbf5(0x209))/0xb);if(_0x52507a===_0x5f3750)break;else _0x253351['push'](_0x253351['shift']());}catch(_0xd6591a){_0x253351['push'](_0x253351['shift']());}}}(_0x26d6,0x5500e));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';function _0x26d6(){const _0x52747a=['KkEaQ','kxFgd','add','toString','setupHeaders','673443zOuQDW','388539jkCDiv','hex','kgWzR','url','keys','ZdIuL','effectiveBaseUrl','port','endsWith','662298TKtOtT','has','246550bCesWL','newPage','invalidateOn','etzHj','.storageState.json','digest','clientIp','slice','test','YAIBG','userAgent','.localhost','1330336NoGaWD','stringify','profileName','isTTY','4425904XJHroi','zuSZs','32DIcWeM','launchBrowser','defaultEnvironmentKey','sha256','1051567uUTvrM','pfdRL','rrGgF','10Lnymzb','4eJRTfz','66ohttxt','replace','okSMC','stdout'];_0x26d6=function(){return _0x52747a;};return _0x26d6();}export function isInteractive(_0x44472f=process['env'],_0x2f46cb={'stdin':process['stdin'],'stdout':process['stdout']}){const _0x32f4aa=_0x2294,_0x295659={'ZdIuL':function(_0x491702,_0x4c3501){return _0x491702(_0x4c3501);}};if(_0x44472f['CI'])return![];return _0x295659[_0x32f4aa(0x21d)](Boolean,_0x2f46cb['stdin'][_0x32f4aa(0x202)])&&Boolean(_0x2f46cb[_0x32f4aa(0x211)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x4860fe){const _0x341fa1=_0x2294,_0x3c7c2c={'kgWzR':'setupHeaders','YAIBG':function(_0x2ccf8f,_0x4f0c76){return _0x2ccf8f(_0x4f0c76);},'rrGgF':function(_0x2c2119,_0x11086b){return _0x2c2119!==_0x11086b;},'pUBHS':_0x341fa1(0x208),'pfdRL':_0x341fa1(0x219)},_0x573140=new Set(_0x4860fe[_0x341fa1(0x1f5)]??DEFAULT_INVALIDATE_ON),_0x48e69b={'orgId':_0x4860fe['orgId'],'profileName':_0x4860fe[_0x341fa1(0x201)]};return _0x573140[_0x341fa1(0x1f2)]('baseUrl')&&(_0x48e69b[_0x341fa1(0x21e)]=_0x4860fe['effectiveBaseUrl']),_0x573140[_0x341fa1(0x1f2)](_0x3c7c2c[_0x341fa1(0x21a)])&&(_0x48e69b['setupHeaders']=_0x4860fe['setupHeaders']?_0x3c7c2c[_0x341fa1(0x1fc)](sortObjectKeys,_0x4860fe['setupHeaders']):_0x4860fe['setupHeaders']),_0x573140[_0x341fa1(0x1f2)]('port')&&(_0x48e69b['port']=extractPort(_0x4860fe[_0x341fa1(0x21e)])),_0x573140['has']('userAgent')&&_0x3c7c2c[_0x341fa1(0x20b)](_0x4860fe[_0x341fa1(0x1fd)],undefined)&&(_0x48e69b['userAgent']=_0x4860fe['userAgent']),_0x573140[_0x341fa1(0x1f2)]('clientIp')&&_0x4860fe[_0x341fa1(0x1f9)]!==undefined&&(_0x48e69b[_0x341fa1(0x1f9)]=_0x4860fe['clientIp']),createHash(_0x3c7c2c['pUBHS'])['update'](JSON[_0x341fa1(0x200)](_0x48e69b))[_0x341fa1(0x1f8)](_0x3c7c2c[_0x341fa1(0x20a)])[_0x341fa1(0x1fa)](0x0,0xc);}function extractPort(_0x39a21b){const _0x6337be=_0x2294;try{return new URL(_0x39a21b)[_0x6337be(0x21f)];}catch{return'';}}function sortObjectKeys(_0xc4afc4){const _0xac7482={};for(const _0xb3c4a5 of Object['keys'](_0xc4afc4)['sort']()){_0xac7482[_0xb3c4a5]=_0xc4afc4[_0xb3c4a5];}return _0xac7482;}export function getSessionCachePath(_0xded5e1,_0x2f0f8c){const _0x2d950f=_0x2294,_0x4d699a={'YWiDb':function(_0x388f9e){return _0x388f9e();},'etzHj':'auth'};return join(_0x4d699a['YWiDb'](getRangerHomeDir),_0x4d699a[_0x2d950f(0x1f6)],_0xded5e1+'-'+_0x2f0f8c+'.json');}export function getStorageStatePath(_0xe192bb){const _0xa1f9f=_0x2294;return _0xe192bb[_0xa1f9f(0x20f)](/\.json$/,_0xa1f9f(0x1f7));}export function needsTunnel(_0x18c085){const _0x360d53=_0x2294,_0x5088d0={'KkEaQ':function(_0x8988b6,_0x2ccb7e){return _0x8988b6===_0x2ccb7e;},'zuSZs':'127.0.0.1','kxFgd':'localhost.'};let _0x242d18;try{_0x242d18=new URL(_0x18c085)['hostname'];}catch{return![];}if(_0x5088d0[_0x360d53(0x212)](_0x242d18,'localhost')||_0x242d18===_0x5088d0[_0x360d53(0x204)])return!![];if(_0x242d18[_0x360d53(0x220)](_0x360d53(0x1fe)))return!![];if(_0x242d18['includes'](_0x5088d0[_0x360d53(0x213)]))return!![];return![];}export function hostnameOf(_0x3b167f){return new URL(_0x3b167f)['hostname'];}export function duplicateCookiesForDomains(_0x2650c8,_0x47e61d){const _0x239439=_0x2294,_0x22b371={'vEEoC':function(_0x55dd26,_0x42d03d){return _0x55dd26(_0x42d03d);}},_0xe92aab=[..._0x2650c8],_0x8470b0=new Set(_0x2650c8['map'](_0x258f69=>_0x258f69['domain']));for(const _0x300d69 of _0x47e61d){let _0x3820c3;try{_0x3820c3=_0x22b371['vEEoC'](hostnameOf,_0x300d69);}catch{continue;}if(!_0x3820c3)continue;const _0xaa05c5=_0x3820c3['startsWith']('.')?_0x3820c3:'.'+_0x3820c3;if(_0x8470b0[_0x239439(0x1f2)](_0x3820c3)||_0x8470b0[_0x239439(0x1f2)](_0xaa05c5))continue;for(const _0x187943 of _0x2650c8){_0xe92aab['push']({..._0x187943,'domain':_0xaa05c5});}_0x8470b0[_0x239439(0x214)](_0xaa05c5);}return _0xe92aab;}export function resolveAuthEnvironmentLocally(_0x55c72d,_0x543a5e){const _0x1272b2=_0x2294,_0x442fbe={'vJufG':function(_0x18ad67,_0x27dc6f){return _0x18ad67===_0x27dc6f;}},_0x3de7c0=_0x55c72d['environments'];if(_0x543a5e){const _0xd5cc64=_0x3de7c0[_0x543a5e];if(!_0xd5cc64)return null;return{'key':_0x543a5e,..._0xd5cc64};}if(_0x55c72d['defaultEnvironmentKey']){const _0x5e352c=_0x3de7c0[_0x55c72d['defaultEnvironmentKey']];if(!_0x5e352c)return null;return{'key':_0x55c72d[_0x1272b2(0x207)],..._0x5e352c};}const _0x4f873a=Object[_0x1272b2(0x21c)](_0x3de7c0);if(_0x442fbe['vJufG'](_0x4f873a['length'],0x1)){const _0x32749b=_0x4f873a[0x0];return{'key':_0x32749b,..._0x3de7c0[_0x32749b]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x456da2,_0x40f3da){const _0x35155b=_0x2294;try{if(_0x40f3da)return new URL(_0x40f3da,_0x456da2)[_0x35155b(0x215)]();return new URL(_0x456da2)[_0x35155b(0x215)]();}catch{return null;}}export function looksLikeLoginUrl(_0x1919ff){const _0x447239=_0x2294;try{const _0x2d19f2=new URL(_0x1919ff);return LOGIN_URL_PATTERN[_0x447239(0x1fb)](_0x2d19f2['pathname']);}catch{return LOGIN_URL_PATTERN[_0x447239(0x1fb)](_0x1919ff);}}export async function isCachedSessionLive(_0x1ea739,_0x20d6b5,_0x2e692d={},_0x1679a5={}){const _0x5ab423=_0x2294,_0x4dfdc8={'bigVE':function(_0x379c0b,_0x15dce5,_0x544ac1){return _0x379c0b(_0x15dce5,_0x544ac1);},'wchlz':'domcontentloaded','okSMC':function(_0x41599e,_0x459fe9){return _0x41599e===_0x459fe9;}},_0x545b4f=_0x4dfdc8['bigVE'](buildSessionCheckUrl,_0x20d6b5,_0x2e692d['sessionCheckPath']);if(!_0x545b4f)return!![];if(!_0x1679a5[_0x5ab423(0x206)])return!![];let _0x29fad2=null;try{_0x29fad2=await _0x1679a5[_0x5ab423(0x206)]();const _0x476244=await _0x29fad2['newContext']({'storageState':_0x1ea739,'ignoreHTTPSErrors':!![],..._0x2e692d[_0x5ab423(0x216)]?{'extraHTTPHeaders':_0x2e692d['setupHeaders']}:{}}),_0x131e24=await _0x476244[_0x5ab423(0x1f4)](),_0x29eb6c=await _0x131e24['goto'](_0x545b4f,{'waitUntil':_0x4dfdc8['wchlz'],'timeout':0x3a98}),_0x1ecdce=_0x29eb6c?.['status']();if(_0x4dfdc8[_0x5ab423(0x210)](_0x1ecdce,0x191)||_0x4dfdc8[_0x5ab423(0x210)](_0x1ecdce,0x193))return![];const _0x33d5bf=_0x131e24[_0x5ab423(0x21b)]();if(looksLikeLoginUrl(_0x33d5bf))return![];return!![];}catch{return![];}finally{if(_0x29fad2)await _0x29fad2['close']()['catch'](()=>{});}}
1
+ const _0x57338f=_0x4806;(function(_0x5202a3,_0x295e4d){const _0x352c26=_0x4806,_0x66605f=_0x5202a3();while(!![]){try{const _0x22fd46=-parseInt(_0x352c26(0xff))/0x1+-parseInt(_0x352c26(0x119))/0x2*(-parseInt(_0x352c26(0x107))/0x3)+parseInt(_0x352c26(0xf9))/0x4*(parseInt(_0x352c26(0x104))/0x5)+-parseInt(_0x352c26(0x109))/0x6+-parseInt(_0x352c26(0x115))/0x7+-parseInt(_0x352c26(0x10c))/0x8+parseInt(_0x352c26(0x111))/0x9;if(_0x22fd46===_0x295e4d)break;else _0x66605f['push'](_0x66605f['shift']());}catch(_0x2a86f3){_0x66605f['push'](_0x66605f['shift']());}}}(_0x2e3e,0xa248c));import{createHash}from'crypto';import{join}from'path';import{getRangerHomeDir}from'./rangerRoot.js';export function isInteractive(_0x277cef=process['env'],_0x177652={'stdin':process[_0x57338f(0x113)],'stdout':process['stdout']}){const _0xf47ea7=_0x57338f,_0x54d960={'DibOE':function(_0x53ecf4,_0x42465d){return _0x53ecf4(_0x42465d);}};if(_0x277cef['CI'])return![];return _0x54d960['DibOE'](Boolean,_0x177652['stdin']['isTTY'])&&Boolean(_0x177652[_0xf47ea7(0x124)]['isTTY']);}export const DEFAULT_INVALIDATE_ON=[];export function sessionCacheHash(_0x3b2779){const _0x34abb1=_0x57338f,_0x19df4e={'myaHg':'baseUrl','aiwas':function(_0x5772ce,_0x2fa559){return _0x5772ce(_0x2fa559);},'zXXfP':function(_0x5e72e6,_0x1f04a8){return _0x5e72e6(_0x1f04a8);},'VbhpD':'userAgent','PzoBt':function(_0x2b2956,_0x4eb6c1){return _0x2b2956!==_0x4eb6c1;},'MsDdm':function(_0x3f5e61,_0x50fbfe){return _0x3f5e61(_0x50fbfe);},'EkFqE':_0x34abb1(0x10f),'FJzgI':'hex'},_0x11d84a=new Set(_0x3b2779['invalidateOn']??DEFAULT_INVALIDATE_ON),_0x41c3bd={'orgId':_0x3b2779['orgId'],'profileName':_0x3b2779['profileName']};return _0x11d84a['has'](_0x19df4e[_0x34abb1(0x11e)])&&(_0x41c3bd['effectiveBaseUrl']=_0x3b2779['effectiveBaseUrl']),_0x11d84a[_0x34abb1(0xfd)](_0x34abb1(0x10a))&&(_0x41c3bd['setupHeaders']=_0x3b2779['setupHeaders']?_0x19df4e[_0x34abb1(0x127)](sortObjectKeys,_0x3b2779['setupHeaders']):_0x3b2779[_0x34abb1(0x10a)]),_0x11d84a['has']('port')&&(_0x41c3bd['port']=_0x19df4e['zXXfP'](extractPort,_0x3b2779[_0x34abb1(0x102)])),_0x11d84a['has'](_0x19df4e[_0x34abb1(0x100)])&&_0x19df4e['PzoBt'](_0x3b2779[_0x34abb1(0x101)],undefined)&&(_0x41c3bd[_0x34abb1(0x101)]=_0x3b2779[_0x34abb1(0x101)]),_0x11d84a['has'](_0x34abb1(0x103))&&_0x3b2779[_0x34abb1(0x103)]!==undefined&&(_0x41c3bd[_0x34abb1(0x103)]=_0x3b2779[_0x34abb1(0x103)]),_0x19df4e['MsDdm'](createHash,_0x19df4e['EkFqE'])['update'](JSON[_0x34abb1(0xfc)](_0x41c3bd))['digest'](_0x19df4e[_0x34abb1(0xfe)])[_0x34abb1(0x118)](0x0,0xc);}function extractPort(_0x185f01){try{return new URL(_0x185f01)['port'];}catch{return'';}}function sortObjectKeys(_0x35767c){const _0x4e149e=_0x57338f,_0x49d00={};for(const _0x300ccf of Object[_0x4e149e(0x11b)](_0x35767c)['sort']()){_0x49d00[_0x300ccf]=_0x35767c[_0x300ccf];}return _0x49d00;}export function getSessionCachePath(_0x6c33a9,_0x4a76fe){const _0x46e058=_0x57338f,_0x21e37e={'TmrlK':function(_0x1b9893,_0x2b6982,_0x328887,_0x30af37){return _0x1b9893(_0x2b6982,_0x328887,_0x30af37);}};return _0x21e37e[_0x46e058(0x123)](join,getRangerHomeDir(),_0x46e058(0x10e),_0x6c33a9+'-'+_0x4a76fe+'.json');}function _0x2e3e(){const _0x30529c=['928264pauJGl','VbhpD','userAgent','effectiveBaseUrl','clientIp','5505185BoeLde','close','bUuLE','4173QkuhlZ','goto','7680054kKdiTI','setupHeaders','sessionCheckPath','4214808ktVkRd','toString','auth','sha256','wHpez','20636145DYqYhY','push','stdin','catch','7465941lPNykY','launchBrowser','test','slice','1542WceHuh','sXVXm','keys','endsWith','domcontentloaded','myaHg','replace','MPzfs','newPage','status','TmrlK','stdout','defaultEnvironmentKey','127.0.0.1','aiwas','4Lqtmon','.storageState.json','length','stringify','has','FJzgI'];_0x2e3e=function(){return _0x30529c;};return _0x2e3e();}export function getStorageStatePath(_0x12e5b2){const _0x2b3606=_0x57338f,_0x31e9ca={'CvxmB':_0x2b3606(0xfa)};return _0x12e5b2[_0x2b3606(0x11f)](/\.json$/,_0x31e9ca['CvxmB']);}export function needsTunnel(_0x4eb4e5){const _0x27752d=_0x57338f,_0x3ca05e={'BBmKb':function(_0x3ce744,_0x345acc){return _0x3ce744===_0x345acc;},'WVQxO':'localhost','bUuLE':'.localhost','sXVXm':'localhost.'};let _0x25b0ef;try{_0x25b0ef=new URL(_0x4eb4e5)['hostname'];}catch{return![];}if(_0x3ca05e['BBmKb'](_0x25b0ef,_0x3ca05e['WVQxO'])||_0x25b0ef===_0x27752d(0x126))return!![];if(_0x25b0ef[_0x27752d(0x11c)](_0x3ca05e[_0x27752d(0x106)]))return!![];if(_0x25b0ef['includes'](_0x3ca05e[_0x27752d(0x11a)]))return!![];return![];}export function hostnameOf(_0x47853a){return new URL(_0x47853a)['hostname'];}export function duplicateCookiesForDomains(_0x28a61d,_0x236e5b){const _0x23f6a0=_0x57338f,_0x45f385={'MPzfs':function(_0x5e3ff1,_0xf97ca5){return _0x5e3ff1(_0xf97ca5);}},_0x400fa5=[..._0x28a61d],_0x30cfe3=new Set(_0x28a61d['map'](_0xfd5eb8=>_0xfd5eb8['domain']));for(const _0x217d9e of _0x236e5b){let _0x507904;try{_0x507904=_0x45f385[_0x23f6a0(0x120)](hostnameOf,_0x217d9e);}catch{continue;}if(!_0x507904)continue;const _0x2365d1=_0x507904['startsWith']('.')?_0x507904:'.'+_0x507904;if(_0x30cfe3['has'](_0x507904)||_0x30cfe3[_0x23f6a0(0xfd)](_0x2365d1))continue;for(const _0x28b104 of _0x28a61d){_0x400fa5[_0x23f6a0(0x112)]({..._0x28b104,'domain':_0x2365d1});}_0x30cfe3['add'](_0x2365d1);}return _0x400fa5;}function _0x4806(_0x490418,_0x8b88e4){_0x490418=_0x490418-0xf9;const _0x2e3e66=_0x2e3e();let _0x4806d1=_0x2e3e66[_0x490418];return _0x4806d1;}export function resolveAuthEnvironmentLocally(_0x5d2854,_0xf7f050){const _0x103a31=_0x57338f,_0x213ff3={'wHpez':function(_0x58d11d,_0x107519){return _0x58d11d===_0x107519;}},_0x201126=_0x5d2854['environments'];if(_0xf7f050){const _0x13ca26=_0x201126[_0xf7f050];if(!_0x13ca26)return null;return{'key':_0xf7f050,..._0x13ca26};}if(_0x5d2854[_0x103a31(0x125)]){const _0x196e46=_0x201126[_0x5d2854[_0x103a31(0x125)]];if(!_0x196e46)return null;return{'key':_0x5d2854[_0x103a31(0x125)],..._0x196e46};}const _0xfbec90=Object[_0x103a31(0x11b)](_0x201126);if(_0x213ff3[_0x103a31(0x110)](_0xfbec90[_0x103a31(0xfb)],0x1)){const _0x528c04=_0xfbec90[0x0];return{'key':_0x528c04,..._0x201126[_0x528c04]};}return null;}const LOGIN_URL_PATTERN=/(?:^|\/)(login|signin|sign-in|sso|auth\/login)(?:[/?#]|$)/i;export function buildSessionCheckUrl(_0x46fd3c,_0x3905aa){const _0x252c21=_0x57338f;try{if(_0x3905aa)return new URL(_0x3905aa,_0x46fd3c)['toString']();return new URL(_0x46fd3c)[_0x252c21(0x10d)]();}catch{return null;}}export function looksLikeLoginUrl(_0x4b2054){const _0x5ec71a=_0x57338f;try{const _0x1039d5=new URL(_0x4b2054);return LOGIN_URL_PATTERN['test'](_0x1039d5['pathname']);}catch{return LOGIN_URL_PATTERN[_0x5ec71a(0x117)](_0x4b2054);}}export async function isCachedSessionLive(_0x2fd021,_0x4f8d6d,_0x4a7ae5={},_0x5c5a80={}){const _0x510ba9=_0x57338f,_0x301007=buildSessionCheckUrl(_0x4f8d6d,_0x4a7ae5[_0x510ba9(0x10b)]);if(!_0x301007)return!![];if(!_0x5c5a80[_0x510ba9(0x116)])return!![];let _0x4ca197=null;try{_0x4ca197=await _0x5c5a80[_0x510ba9(0x116)]();const _0x2b8082=await _0x4ca197['newContext']({'storageState':_0x2fd021,'ignoreHTTPSErrors':!![],..._0x4a7ae5['setupHeaders']?{'extraHTTPHeaders':_0x4a7ae5['setupHeaders']}:{}}),_0x55fddb=await _0x2b8082[_0x510ba9(0x121)](),_0x334c61=await _0x55fddb[_0x510ba9(0x108)](_0x301007,{'waitUntil':_0x510ba9(0x11d),'timeout':0x3a98}),_0x29ecb7=_0x334c61?.[_0x510ba9(0x122)]();if(_0x29ecb7===0x191||_0x29ecb7===0x193)return![];const _0x22d4ef=_0x55fddb['url']();if(looksLikeLoginUrl(_0x22d4ef))return![];return!![];}catch{return![];}finally{if(_0x4ca197)await _0x4ca197[_0x510ba9(0x105)]()[_0x510ba9(0x114)](()=>{});}}
@@ -1 +1 @@
1
- const _0x4d3f5b=_0x3bfe;(function(_0x3f757d,_0x14dc5f){const _0x1539a1=_0x3bfe,_0x6127f5=_0x3f757d();while(!![]){try{const _0x4bbd50=-parseInt(_0x1539a1(0x16b))/0x1+parseInt(_0x1539a1(0x176))/0x2*(-parseInt(_0x1539a1(0x174))/0x3)+-parseInt(_0x1539a1(0x175))/0x4+-parseInt(_0x1539a1(0x16c))/0x5+-parseInt(_0x1539a1(0x171))/0x6*(-parseInt(_0x1539a1(0x179))/0x7)+-parseInt(_0x1539a1(0x17a))/0x8+parseInt(_0x1539a1(0x170))/0x9;if(_0x4bbd50===_0x14dc5f)break;else _0x6127f5['push'](_0x6127f5['shift']());}catch(_0x5bb670){_0x6127f5['push'](_0x6127f5['shift']());}}}(_0x591a,0xeac19));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';function _0x591a(){const _0x351762=['concat','lthOO','55174878HffFVY','98052tvKvYz','aes-256-gcm','hcvra','3465102DXjdHR','3445216NZDnyV','2VkZvrk','sha256','getAuthTag','154wvwfTZ','11955968SsQToc','final','utf8','update','1074202GRyYCw','4717345QclAxk','OEtoI'];_0x591a=function(){return _0x351762;};return _0x591a();}const ALGORITHM=_0x4d3f5b(0x172),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;export function deriveKey(_0x350c19){const _0x9b368e=_0x4d3f5b,_0x2c5dda={'hcvra':function(_0x59b408,_0x54c6b6,_0x667074,_0x372cc0,_0x2cecf7,_0x2753e1){return _0x59b408(_0x54c6b6,_0x667074,_0x372cc0,_0x2cecf7,_0x2753e1);}};return _0x2c5dda[_0x9b368e(0x173)](pbkdf2Sync,_0x350c19,SALT,0x186a0,KEY_LENGTH,_0x9b368e(0x177));}export function encrypt(_0x7ecf56,_0x227c72){const _0x37b731=_0x4d3f5b,_0xb757ef={'OEtoI':function(_0x42a503,_0x5d9836){return _0x42a503(_0x5d9836);},'lthOO':function(_0x24de71,_0x29bfd1,_0xa482e9,_0x275032){return _0x24de71(_0x29bfd1,_0xa482e9,_0x275032);}},_0x422787=_0xb757ef[_0x37b731(0x16d)](deriveKey,_0x227c72),_0x1911f3=randomBytes(IV_LENGTH),_0x141918=_0xb757ef[_0x37b731(0x16f)](createCipheriv,ALGORITHM,_0x422787,_0x1911f3),_0x123c7a=Buffer[_0x37b731(0x16e)]([_0x141918[_0x37b731(0x16a)](_0x7ecf56,'utf8'),_0x141918[_0x37b731(0x17b)]()]),_0x489fcb=_0x141918[_0x37b731(0x178)]();return Buffer['concat']([_0x1911f3,_0x489fcb,_0x123c7a]);}function _0x3bfe(_0x3e5356,_0x159ee5){_0x3e5356=_0x3e5356-0x169;const _0x591a07=_0x591a();let _0x3bfef9=_0x591a07[_0x3e5356];return _0x3bfef9;}export function decrypt(_0x518918,_0x1ff6b9){const _0xf742e7=_0x4d3f5b,_0x5a34ab={'NhyrX':function(_0x30db8b,_0x478710){return _0x30db8b+_0x478710;}},_0x1d5d47=deriveKey(_0x1ff6b9),_0x1549f4=_0x518918['subarray'](0x0,IV_LENGTH),_0x10b2b4=_0x518918['subarray'](IV_LENGTH,IV_LENGTH+TAG_LENGTH),_0x45e28c=_0x518918['subarray'](_0x5a34ab['NhyrX'](IV_LENGTH,TAG_LENGTH)),_0x3c2219=createDecipheriv(ALGORITHM,_0x1d5d47,_0x1549f4);return _0x3c2219['setAuthTag'](_0x10b2b4),_0x3c2219[_0xf742e7(0x16a)](_0x45e28c)+_0x3c2219[_0xf742e7(0x17b)](_0xf742e7(0x169));}
1
+ const _0x3236b5=_0x3f23;(function(_0x117d27,_0x347fbb){const _0x2a9bfa=_0x3f23,_0xd03a6f=_0x117d27();while(!![]){try{const _0x1e1a18=-parseInt(_0x2a9bfa(0x92))/0x1+parseInt(_0x2a9bfa(0x8b))/0x2+parseInt(_0x2a9bfa(0x93))/0x3*(-parseInt(_0x2a9bfa(0x91))/0x4)+parseInt(_0x2a9bfa(0x9c))/0x5*(parseInt(_0x2a9bfa(0x99))/0x6)+-parseInt(_0x2a9bfa(0x8c))/0x7+-parseInt(_0x2a9bfa(0x94))/0x8*(-parseInt(_0x2a9bfa(0x8a))/0x9)+-parseInt(_0x2a9bfa(0x96))/0xa*(parseInt(_0x2a9bfa(0x98))/0xb);if(_0x1e1a18===_0x347fbb)break;else _0xd03a6f['push'](_0xd03a6f['shift']());}catch(_0x2562b8){_0xd03a6f['push'](_0xd03a6f['shift']());}}}(_0x3a4a,0xb3d94));import{createCipheriv,createDecipheriv,randomBytes,pbkdf2Sync}from'crypto';const ALGORITHM=_0x3236b5(0x9a),SALT='ranger-auth-encryption',KEY_LENGTH=0x20,IV_LENGTH=0x10,TAG_LENGTH=0x10;function _0x3f23(_0xc4080,_0x5b96a4){_0xc4080=_0xc4080-0x88;const _0x3a4afd=_0x3a4a();let _0x3f2376=_0x3a4afd[_0xc4080];return _0x3f2376;}export function deriveKey(_0x57c947){const _0x406c2b=_0x3236b5,_0x262936={'mffUb':function(_0x1908ec,_0x187234,_0x3550fe,_0x49c693,_0x175893,_0x49b7ae){return _0x1908ec(_0x187234,_0x3550fe,_0x49c693,_0x175893,_0x49b7ae);}};return _0x262936['mffUb'](pbkdf2Sync,_0x57c947,SALT,0x186a0,KEY_LENGTH,_0x406c2b(0x97));}export function encrypt(_0x4353dc,_0x443372){const _0x126c20=_0x3236b5,_0x35d1cc={'sBKwq':function(_0x42cfa7,_0x5b5919,_0xb9820c,_0x160ec0){return _0x42cfa7(_0x5b5919,_0xb9820c,_0x160ec0);}},_0x4c1e73=deriveKey(_0x443372),_0x22d637=randomBytes(IV_LENGTH),_0x3a92a4=_0x35d1cc[_0x126c20(0x8d)](createCipheriv,ALGORITHM,_0x4c1e73,_0x22d637),_0x5e4180=Buffer['concat']([_0x3a92a4[_0x126c20(0x8f)](_0x4353dc,'utf8'),_0x3a92a4[_0x126c20(0x89)]()]),_0x5cbe0f=_0x3a92a4[_0x126c20(0x95)]();return Buffer[_0x126c20(0x8e)]([_0x22d637,_0x5cbe0f,_0x5e4180]);}function _0x3a4a(){const _0x53a1ff=['utf8','sySiB','final','12307689LFEoPe','1807312pRnqgZ','4876102QdnEOM','sBKwq','concat','update','setAuthTag','916396ccTuvU','392182mMNtmK','3GRhZCV','8mRhuki','getAuthTag','90PakCUJ','sha256','1386143ylbbmU','13866MJVrbw','aes-256-gcm','jKDYC','1985NoCpwT','subarray'];_0x3a4a=function(){return _0x53a1ff;};return _0x3a4a();}export function decrypt(_0x47b7bf,_0x315b33){const _0x3104d4=_0x3236b5,_0x582aa9={'zcCah':function(_0x2b08fd,_0x44e06b){return _0x2b08fd(_0x44e06b);},'NuwiM':function(_0x15f404,_0x2e34d1){return _0x15f404+_0x2e34d1;},'jKDYC':function(_0x1bde05,_0x1993fe){return _0x1bde05+_0x1993fe;},'cSlnf':function(_0x478ca6,_0x3c2381,_0x4f81ba,_0x112f36){return _0x478ca6(_0x3c2381,_0x4f81ba,_0x112f36);},'sySiB':_0x3104d4(0x9e)},_0x5749bc=_0x582aa9['zcCah'](deriveKey,_0x315b33),_0x364778=_0x47b7bf[_0x3104d4(0x9d)](0x0,IV_LENGTH),_0x333fc1=_0x47b7bf['subarray'](IV_LENGTH,_0x582aa9['NuwiM'](IV_LENGTH,TAG_LENGTH)),_0x5a2158=_0x47b7bf[_0x3104d4(0x9d)](_0x582aa9[_0x3104d4(0x9b)](IV_LENGTH,TAG_LENGTH)),_0x55043f=_0x582aa9['cSlnf'](createDecipheriv,ALGORITHM,_0x5749bc,_0x364778);return _0x55043f[_0x3104d4(0x90)](_0x333fc1),_0x55043f[_0x3104d4(0x8f)](_0x5a2158)+_0x55043f['final'](_0x582aa9[_0x3104d4(0x88)]);}
@@ -1 +1 @@
1
- const _0x420798=_0x1a5c;(function(_0x295f84,_0x412e76){const _0x18930b=_0x1a5c,_0x1da6b7=_0x295f84();while(!![]){try{const _0x2e4f50=parseInt(_0x18930b(0x207))/0x1+-parseInt(_0x18930b(0x1ee))/0x2*(parseInt(_0x18930b(0x20b))/0x3)+parseInt(_0x18930b(0x1fc))/0x4+-parseInt(_0x18930b(0x1e5))/0x5*(-parseInt(_0x18930b(0x211))/0x6)+-parseInt(_0x18930b(0x1e0))/0x7+parseInt(_0x18930b(0x1f2))/0x8+parseInt(_0x18930b(0x1e9))/0x9*(parseInt(_0x18930b(0x205))/0xa);if(_0x2e4f50===_0x412e76)break;else _0x1da6b7['push'](_0x1da6b7['shift']());}catch(_0x3d08fa){_0x1da6b7['push'](_0x1da6b7['shift']());}}}(_0x607a,0xbecb0));function _0x1a5c(_0x2c50e8,_0xcb9a9b){_0x2c50e8=_0x2c50e8-0x1df;const _0x607a65=_0x607a();let _0x1a5cb6=_0x607a65[_0x2c50e8];return _0x1a5cb6;}import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set(['--token','-t',_0x420798(0x204),_0x420798(0x1f8),_0x420798(0x1f1),'--key',_0x420798(0x1df),'--pass',_0x420798(0x203),_0x420798(0x1fa),'--header','--cookie','--credentials']),TOKEN_PATTERNS=[/^(ranger_|rngr_|sk-|pk-|api[_-]?)/i,/^[a-zA-Z0-9_-]{32,}$/,/^eyJ[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+/];function _0x607a(){const _0x574b57=['stringify','Authorization','Not\x20enough\x20non-option\x20arguments','--password','10843798VZzdDJ','unknown_argument','slice','startsWith','lFhSY','135lOzERR','no_token','push','JMtye','2801025prIpOe','cYVZG','=[REDACTED]','gjFrA','sessionId','163550GJrSLG','DEBUG','toLowerCase','--apikey','12065344qqNrxj','includes','LqVJm','metadata','missing_required_argument','[desire-path]\x20Sending\x20log\x20to\x20','--api-key','has_token','--authorization','[desire-path]\x20Failed\x20to\x20send:\x20','3340992WfwgRn','featureId','lBgoG','Bearer\x20','lEiyw','bPUFg','rawCommand','--auth','--secret','10HFZlSd','PBcdu','252593QGoqwd','[REDACTED]','error','missing_option','33gCuFoj','has','length','Missing\x20required\x20argument','split','syntax_error','71754HZJvQB'];_0x607a=function(){return _0x574b57;};return _0x607a();}function looksLikeToken(_0x31e37c){return TOKEN_PATTERNS['some'](_0x42c1fb=>_0x42c1fb['test'](_0x31e37c));}export function sanitizeArgs(_0x34198c){const _0x4770b4=_0x420798,_0x5c63a8={'SIoXq':'[REDACTED]','jaGPj':function(_0x4c4284,_0x4e37c4){return _0x4c4284(_0x4e37c4);}},_0x3ed665=[];let _0x53bdf4=![];for(let _0x1a686f=0x0;_0x1a686f<_0x34198c[_0x4770b4(0x20d)];_0x1a686f++){const _0x1d75bd=_0x34198c[_0x1a686f];if(_0x53bdf4){_0x3ed665[_0x4770b4(0x1e7)](_0x5c63a8['SIoXq']),_0x53bdf4=![];continue;}if(_0x1d75bd[_0x4770b4(0x1e3)]('--')||_0x1d75bd['startsWith']('-')){const _0x205c39=_0x1d75bd['indexOf']('=');if(_0x205c39!==-0x1){const _0xe7fa4b=_0x1d75bd[_0x4770b4(0x1e2)](0x0,_0x205c39)['toLowerCase']();if(SENSITIVE_FLAGS[_0x4770b4(0x20c)](_0xe7fa4b)){_0x3ed665['push'](_0x1d75bd[_0x4770b4(0x1e2)](0x0,_0x205c39)+_0x4770b4(0x1eb));continue;}}else{const _0x8521c7=_0x1d75bd[_0x4770b4(0x1f0)]();SENSITIVE_FLAGS[_0x4770b4(0x20c)](_0x8521c7)&&(_0x53bdf4=!![]);}_0x3ed665[_0x4770b4(0x1e7)](_0x1d75bd);}else _0x5c63a8['jaGPj'](looksLikeToken,_0x1d75bd)?_0x3ed665[_0x4770b4(0x1e7)](_0x4770b4(0x208)):_0x3ed665['push'](_0x1d75bd);}return _0x3ed665['join']('\x20');}export async function logDesirePath(_0xe7e1d9){const _0x1ed285=_0x420798,_0x22ac0d={'lEiyw':function(_0x4d5b6d){return _0x4d5b6d();},'bPUFg':function(_0x27fd1d){return _0x27fd1d();},'oknYG':_0x1ed285(0x1e6),'PBcdu':'application/json','lFhSY':function(_0x22de74,_0x23a33a,_0x5e693f){return _0x22de74(_0x23a33a,_0x5e693f);}};try{const _0xa8000b=await _0x22ac0d[_0x1ed285(0x200)](getToken)['catch'](()=>null),_0x1b126c=_0x22ac0d['bPUFg'](getApiBaseUrl),_0x4ac5a9=_0x22ac0d[_0x1ed285(0x201)](getCurrentVersion),_0x20984a=_0xa8000b?_0x1ed285(0x1f9):_0x22ac0d['oknYG'],_0x25aecf={..._0xe7e1d9[_0x1ed285(0x1f5)],'authStatus':_0x20984a,'isTty':process['stdout']['isTTY']??![]},_0x2a8812={'Content-Type':_0x22ac0d[_0x1ed285(0x206)]};_0xa8000b&&(_0x2a8812[_0x1ed285(0x213)]=_0x1ed285(0x1ff)+_0xa8000b);const _0x4a025b={'rawCommand':_0xe7e1d9[_0x1ed285(0x202)],'errorMessage':_0xe7e1d9['errorMessage'],'errorType':_0xe7e1d9['errorType'],'featureId':_0xe7e1d9[_0x1ed285(0x1fd)],'sessionId':_0xe7e1d9[_0x1ed285(0x1ed)],'metadata':_0x25aecf,'cliVersion':_0x4ac5a9};process['env'][_0x1ed285(0x1ef)]&&(console['error'](_0x1ed285(0x1f7)+_0x1b126c+'/api/v1/mcp/desire-path-logs'),console['error']('[desire-path]\x20Payload:\x20'+JSON['stringify'](_0x4a025b,null,0x2))),await _0x22ac0d[_0x1ed285(0x1e4)](fetch,_0x1b126c+'/api/v1/mcp/desire-path-logs',{'method':'POST','headers':_0x2a8812,'body':JSON[_0x1ed285(0x212)](_0x4a025b)});}catch(_0x13db65){process['env'][_0x1ed285(0x1ef)]&&console[_0x1ed285(0x209)](_0x1ed285(0x1fb)+_0x13db65);}}export function getErrorType(_0x421043,_0x2afd58){const _0x164d32=_0x420798,_0x3c19b6={'DqSJX':'unknown_command','JMtye':_0x164d32(0x20a),'ixfyk':'unknown','gjFrA':'Unknown\x20argument','lBgoG':'Invalid\x20values','VHZpM':'runtime_error','LqVJm':_0x164d32(0x214),'cYVZG':_0x164d32(0x1f6)},_0x72b295='6|3|0|4|7|5|2|1'[_0x164d32(0x20f)]('|');let _0x4fa097=0x0;while(!![]){switch(_0x72b295[_0x4fa097++]){case'0':if(_0x421043['includes']('Unknown\x20command'))return _0x3c19b6['DqSJX'];continue;case'1':return _0x164d32(0x210);case'2':if(_0x421043[_0x164d32(0x1f3)](_0x164d32(0x20e)))return _0x3c19b6[_0x164d32(0x1e8)];continue;case'3':if(!_0x421043)return _0x3c19b6['ixfyk'];continue;case'4':if(_0x421043['includes'](_0x3c19b6[_0x164d32(0x1ec)]))return _0x164d32(0x1e1);continue;case'5':if(_0x421043[_0x164d32(0x1f3)](_0x3c19b6[_0x164d32(0x1fe)]))return'invalid_option_value';continue;case'6':if(_0x2afd58)return _0x3c19b6['VHZpM'];continue;case'7':if(_0x421043[_0x164d32(0x1f3)](_0x3c19b6[_0x164d32(0x1f4)]))return _0x3c19b6[_0x164d32(0x1ea)];continue;}break;}}
1
+ const _0x89c315=_0x39e0;(function(_0x3c4957,_0x1113b4){const _0x2eebb7=_0x39e0,_0x1a2ab1=_0x3c4957();while(!![]){try{const _0x41c2e6=parseInt(_0x2eebb7(0x1e0))/0x1+-parseInt(_0x2eebb7(0x1ee))/0x2*(parseInt(_0x2eebb7(0x1e1))/0x3)+parseInt(_0x2eebb7(0x1ea))/0x4*(-parseInt(_0x2eebb7(0x1f6))/0x5)+-parseInt(_0x2eebb7(0x1e2))/0x6*(parseInt(_0x2eebb7(0x1c9))/0x7)+parseInt(_0x2eebb7(0x1f7))/0x8+parseInt(_0x2eebb7(0x1e9))/0x9*(parseInt(_0x2eebb7(0x1d9))/0xa)+parseInt(_0x2eebb7(0x1f4))/0xb;if(_0x41c2e6===_0x1113b4)break;else _0x1a2ab1['push'](_0x1a2ab1['shift']());}catch(_0x54f970){_0x1a2ab1['push'](_0x1a2ab1['shift']());}}}(_0x158a,0x6be8a));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{getCurrentVersion}from'./version.js';const SENSITIVE_FLAGS=new Set([_0x89c315(0x1e4),'-t',_0x89c315(0x1f3),_0x89c315(0x1f9),'--apikey',_0x89c315(0x1cf),_0x89c315(0x1d5),'--pass','--auth','--authorization',_0x89c315(0x1cc),'--cookie','--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(_0x530edf){const _0x4caa1a=_0x89c315;return TOKEN_PATTERNS['some'](_0x2aa1bf=>_0x2aa1bf[_0x4caa1a(0x1ed)](_0x530edf));}export function sanitizeArgs(_0xc82e12){const _0x3ac26f=_0x89c315,_0x598824={'QvKCh':_0x3ac26f(0x1d2),'xjuEb':function(_0x16c971,_0x4d5f63){return _0x16c971!==_0x4d5f63;}},_0xbddad7=[];let _0x2603ee=![];for(let _0x384a3d=0x0;_0x384a3d<_0xc82e12['length'];_0x384a3d++){const _0x13e72b=_0xc82e12[_0x384a3d];if(_0x2603ee){_0xbddad7['push'](_0x598824[_0x3ac26f(0x1e6)]),_0x2603ee=![];continue;}if(_0x13e72b[_0x3ac26f(0x1cd)]('--')||_0x13e72b[_0x3ac26f(0x1cd)]('-')){const _0x24e108=_0x13e72b[_0x3ac26f(0x1fb)]('=');if(_0x598824['xjuEb'](_0x24e108,-0x1)){const _0x2dbca1=_0x13e72b['slice'](0x0,_0x24e108)[_0x3ac26f(0x1fc)]();if(SENSITIVE_FLAGS[_0x3ac26f(0x1d1)](_0x2dbca1)){_0xbddad7[_0x3ac26f(0x1d7)](_0x13e72b[_0x3ac26f(0x1d8)](0x0,_0x24e108)+_0x3ac26f(0x1f8));continue;}}else{const _0x845262=_0x13e72b[_0x3ac26f(0x1fc)]();SENSITIVE_FLAGS[_0x3ac26f(0x1d1)](_0x845262)&&(_0x2603ee=!![]);}_0xbddad7['push'](_0x13e72b);}else looksLikeToken(_0x13e72b)?_0xbddad7['push'](_0x598824['QvKCh']):_0xbddad7[_0x3ac26f(0x1d7)](_0x13e72b);}return _0xbddad7[_0x3ac26f(0x1ce)]('\x20');}function _0x39e0(_0x2baf07,_0x4ed163){_0x2baf07=_0x2baf07-0x1c7;const _0x158ad7=_0x158a();let _0x39e06b=_0x158ad7[_0x2baf07];return _0x39e06b;}export async function logDesirePath(_0x42d26e){const _0x25f658=_0x89c315,_0x1d8d4f={'jIPJK':function(_0x5bf200){return _0x5bf200();},'YCghx':_0x25f658(0x1ca),'VrWiC':'application/json'};try{const _0x5b75ad=await _0x1d8d4f[_0x25f658(0x1f2)](getToken)['catch'](()=>null),_0x305ca6=getApiBaseUrl(),_0x341a31=getCurrentVersion(),_0x1febb8=_0x5b75ad?_0x1d8d4f['YCghx']:_0x25f658(0x1f1),_0x38c738={..._0x42d26e[_0x25f658(0x1dc)],'authStatus':_0x1febb8,'isTty':process['stdout']['isTTY']??![]},_0x5c2956={'Content-Type':_0x1d8d4f['VrWiC']};_0x5b75ad&&(_0x5c2956[_0x25f658(0x1d4)]='Bearer\x20'+_0x5b75ad);const _0x3239d3={'rawCommand':_0x42d26e['rawCommand'],'errorMessage':_0x42d26e['errorMessage'],'errorType':_0x42d26e[_0x25f658(0x1cb)],'featureId':_0x42d26e['featureId'],'sessionId':_0x42d26e[_0x25f658(0x1ec)],'metadata':_0x38c738,'cliVersion':_0x341a31};process[_0x25f658(0x1fd)][_0x25f658(0x1d6)]&&(console[_0x25f658(0x1e7)](_0x25f658(0x1df)+_0x305ca6+'/api/v1/mcp/desire-path-logs'),console[_0x25f658(0x1e7)]('[desire-path]\x20Payload:\x20'+JSON[_0x25f658(0x1fa)](_0x3239d3,null,0x2))),await fetch(_0x305ca6+'/api/v1/mcp/desire-path-logs',{'method':_0x25f658(0x1e3),'headers':_0x5c2956,'body':JSON[_0x25f658(0x1fa)](_0x3239d3)});}catch(_0x2bed4a){process[_0x25f658(0x1fd)]['DEBUG']&&console[_0x25f658(0x1e7)](_0x25f658(0x1eb)+_0x2bed4a);}}function _0x158a(){const _0x13f723=['Unknown\x20argument','no_token','jIPJK','--secret','13908884NPCIIe','split','5NgIPFd','2696488GqyqeL','=[REDACTED]','--api-key','stringify','indexOf','toLowerCase','env','Unknown\x20command','IQOKk','missing_required_argument','2935667WlmYmJ','has_token','errorType','--header','startsWith','join','--key','Not\x20enough\x20non-option\x20arguments','has','[REDACTED]','xMhDd','Authorization','--password','DEBUG','push','slice','580NNzhcL','unknown_command','includes','metadata','invalid_option_value','mtwKi','[desire-path]\x20Sending\x20log\x20to\x20','671899NGiDpz','1125582STpDpm','6yXPobD','POST','--token','Invalid\x20values','QvKCh','error','Missing\x20required\x20argument','20574DlbaOS','3176916zhpYja','[desire-path]\x20Failed\x20to\x20send:\x20','sessionId','test','4FUNPkw','SkmMR'];_0x158a=function(){return _0x13f723;};return _0x158a();}export function getErrorType(_0x3363fa,_0x54592d){const _0x399fee=_0x89c315,_0x5b7688={'IQOKk':_0x399fee(0x1d0),'SkmMR':_0x399fee(0x1c8),'xMhDd':'unknown_argument','mtwKi':_0x399fee(0x1dd)},_0x48b657='6|0|1|4|2|5|7|3'[_0x399fee(0x1f5)]('|');let _0x48b9e9=0x0;while(!![]){switch(_0x48b657[_0x48b9e9++]){case'0':if(!_0x3363fa)return'unknown';continue;case'1':if(_0x3363fa[_0x399fee(0x1db)](_0x399fee(0x1fe)))return _0x399fee(0x1da);continue;case'2':if(_0x3363fa['includes'](_0x5b7688[_0x399fee(0x1c7)]))return _0x5b7688[_0x399fee(0x1ef)];continue;case'3':return'syntax_error';case'4':if(_0x3363fa['includes'](_0x399fee(0x1f0)))return _0x5b7688[_0x399fee(0x1d3)];continue;case'5':if(_0x3363fa['includes'](_0x399fee(0x1e5)))return _0x5b7688[_0x399fee(0x1de)];continue;case'6':if(_0x54592d)return'runtime_error';continue;case'7':if(_0x3363fa['includes'](_0x399fee(0x1e8)))return'missing_option';continue;}break;}}
@@ -1 +1 @@
1
- const _0x504652=_0x24b4;(function(_0x2dd6e2,_0x4da488){const _0x3bd6df=_0x24b4,_0x3ad2c2=_0x2dd6e2();while(!![]){try{const _0x494c58=parseInt(_0x3bd6df(0x148))/0x1*(-parseInt(_0x3bd6df(0x168))/0x2)+-parseInt(_0x3bd6df(0x17c))/0x3*(parseInt(_0x3bd6df(0x181))/0x4)+-parseInt(_0x3bd6df(0x178))/0x5+-parseInt(_0x3bd6df(0x164))/0x6*(parseInt(_0x3bd6df(0x14d))/0x7)+parseInt(_0x3bd6df(0x15c))/0x8+-parseInt(_0x3bd6df(0x17d))/0x9*(-parseInt(_0x3bd6df(0x156))/0xa)+parseInt(_0x3bd6df(0x151))/0xb;if(_0x494c58===_0x4da488)break;else _0x3ad2c2['push'](_0x3ad2c2['shift']());}catch(_0x381324){_0x3ad2c2['push'](_0x3ad2c2['shift']());}}}(_0x45a8,0x8c390));import{spawn}from'child_process';import _0x4ef494 from'inquirer';function _0x24b4(_0x644cfa,_0x46d741){_0x644cfa=_0x644cfa-0x129;const _0x45a8bf=_0x45a8();let _0x24b42a=_0x45a8bf[_0x644cfa];return _0x24b42a;}import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL=_0x504652(0x146),WORKOS_TOKEN_URL=_0x504652(0x13c);export async function requestDeviceCode(_0x3899c1){const _0x8e5bbd=_0x504652,_0x34a0d9={'BdxkN':_0x8e5bbd(0x163),'oVlxF':'application/x-www-form-urlencoded'},_0x35e925=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x34a0d9['BdxkN'],'headers':{'Content-Type':_0x34a0d9['oVlxF']},'body':new URLSearchParams({'client_id':_0x3899c1})});if(!_0x35e925['ok']){const _0x14bbed=await _0x35e925[_0x8e5bbd(0x187)]();throw new Error(_0x8e5bbd(0x149)+_0x35e925['status']+'\x20'+_0x14bbed);}return _0x35e925[_0x8e5bbd(0x12c)]();}export async function pollForTokens(_0x116b62,_0x527b89,_0x585dd8,_0x5322d5){const _0x3ddac=_0x504652,_0x3b004c={'kmSKi':function(_0x4d77f5,_0x33bf8d){return _0x4d77f5*_0x33bf8d;},'nDhUr':function(_0xd1f806,_0x1e8460,_0x5e4e05){return _0xd1f806(_0x1e8460,_0x5e4e05);},'sChLO':_0x3ddac(0x163),'fugFl':_0x3ddac(0x176),'GacdL':_0x3ddac(0x13d)},_0x298f1c=Date[_0x3ddac(0x133)]()+_0x5322d5*0x3e8;let _0x2a4548=_0x3b004c[_0x3ddac(0x13a)](_0x585dd8,0x3e8);while(Date['now']()<_0x298f1c){await sleep(_0x2a4548);const _0x469949=await _0x3b004c[_0x3ddac(0x132)](fetch,WORKOS_TOKEN_URL,{'method':_0x3b004c[_0x3ddac(0x170)],'headers':{'Content-Type':_0x3ddac(0x180)},'body':new URLSearchParams({'client_id':_0x116b62,'device_code':_0x527b89,'grant_type':'urn:ietf:params:oauth:grant-type:device_code'})});if(_0x469949['ok'])return _0x469949['json']();const _0x54b9fe=await _0x469949[_0x3ddac(0x12c)]();if(_0x54b9fe['error']===_0x3b004c[_0x3ddac(0x141)])continue;if(_0x54b9fe[_0x3ddac(0x143)]==='slow_down'){_0x2a4548+=0x3e8;continue;}throw new Error(_0x54b9fe[_0x3ddac(0x16a)]||_0x54b9fe['error']||_0x3ddac(0x160));}throw new Error(_0x3b004c['GacdL']);}async function fetchUserProfile(_0x4b69f6){const _0x33d6cd=_0x504652,_0x242a30={'AxorI':_0x33d6cd(0x16d)},_0x3af4e5=getApiBaseUrl();try{const _0x51dade=await fetch(_0x3af4e5+_0x33d6cd(0x16b),{'method':_0x242a30[_0x33d6cd(0x12b)],'headers':{'workos-token':_0x4b69f6}});if(_0x51dade['ok'])return _0x51dade['json']();}catch{}return null;}function buildKeyName(_0x447521,_0x1d599a){const _0x5a0b8d=_0x504652,_0x4608a4={'gKzcl':function(_0x5cc015,_0x27c3d1){return _0x5cc015===_0x27c3d1;}},_0x5266aa=_0x1d599a[_0x5a0b8d(0x14e)](_0x3949c2=>_0x3949c2[_0x5a0b8d(0x12e)]===_0x447521||_0x3949c2['name']['startsWith'](_0x447521+'\x20('));if(_0x4608a4['gKzcl'](_0x5266aa['length'],0x0))return _0x447521;return _0x447521+'\x20('+(_0x5266aa[_0x5a0b8d(0x166)]+0x1)+')';}export async function provisionApiKey(_0x374906){const _0x5e5316=_0x504652,_0x513ef={'uzMMM':'application/json','nVJBP':_0x5e5316(0x15f),'IdNtE':function(_0x33efbc,_0x4fd8f7,_0x43bcb8){return _0x33efbc(_0x4fd8f7,_0x43bcb8);},'fdKLV':_0x5e5316(0x163)},_0x39c86f=getApiBaseUrl(),_0x16339a={'Content-Type':_0x513ef[_0x5e5316(0x17f)],'workos-token':_0x374906},_0x503932=await fetchUserProfile(_0x374906),_0x149853=_0x503932?.['firstName']||_0x503932?.[_0x5e5316(0x16c)]?.[_0x5e5316(0x131)]('@')[0x0],_0xa02d88=_0x149853?_0x149853+'\x27s\x20CLI\x20Key':_0x513ef[_0x5e5316(0x152)];let _0x400387=[];try{const _0x7893f5=await _0x513ef['IdNtE'](fetch,_0x39c86f+_0x5e5316(0x150),{'method':_0x5e5316(0x16d),'headers':_0x16339a});if(_0x7893f5['ok']){const _0x599fb1=await _0x7893f5['json']();_0x400387=_0x599fb1['apiKeys'];}}catch{}const _0x16c7e0=_0x513ef[_0x5e5316(0x134)](buildKeyName,_0xa02d88,_0x400387),_0xa0af46=await _0x513ef['IdNtE'](fetch,_0x39c86f+_0x5e5316(0x150),{'method':_0x513ef[_0x5e5316(0x155)],'headers':_0x16339a,'body':JSON[_0x5e5316(0x15d)]({'name':_0x16c7e0,'scope':_0x5e5316(0x179)})});if(!_0xa0af46['ok']){const _0x3aa711=await _0xa0af46['text']();throw new Error(_0x5e5316(0x12d)+_0xa0af46[_0x5e5316(0x167)]+'\x20'+_0x3aa711);}const _0x5d4f61=await _0xa0af46[_0x5e5316(0x12c)]();return _0x5d4f61[_0x5e5316(0x12f)]['token'];}export function openBrowser(_0x34a16c){const _0x148b1a=_0x504652,_0x35bb88={'BRmqH':function(_0x5aa200,_0x1e83b3){return _0x5aa200===_0x1e83b3;},'WyrjJ':'win32','kfYIO':function(_0x5920e6,_0xc5a1e5,_0x489172,_0x1e9ec3){return _0x5920e6(_0xc5a1e5,_0x489172,_0x1e9ec3);},'vKmYh':'cmd','OQFPl':_0x148b1a(0x17e),'zLeIz':function(_0x2d7210,_0x497cf3){return _0x2d7210===_0x497cf3;},'Wbcmx':_0x148b1a(0x14c),'KTMWH':_0x148b1a(0x16e),'SRxAM':'xdg-open','jGrUQ':function(_0x668e5e,_0x2b9d74,_0x9495a0,_0x390ff5){return _0x668e5e(_0x2b9d74,_0x9495a0,_0x390ff5);},'dnBZp':_0x148b1a(0x14f)};try{if(_0x35bb88['BRmqH'](process[_0x148b1a(0x14a)],_0x35bb88['WyrjJ'])){const _0x550a22=_0x35bb88['kfYIO'](spawn,_0x35bb88['vKmYh'],['/c',_0x35bb88['OQFPl'],'',_0x34a16c],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0x550a22['unref']();return;}const _0x1b27c5=_0x35bb88['zLeIz'](process['platform'],_0x35bb88[_0x148b1a(0x157)])?_0x35bb88[_0x148b1a(0x183)]:_0x35bb88[_0x148b1a(0x140)],_0x339162=_0x35bb88[_0x148b1a(0x159)](spawn,_0x1b27c5,[_0x34a16c],{'detached':!![],'stdio':_0x35bb88['dnBZp']});_0x339162['unref']();}catch{}}function decodeJwtPayload(_0x5be993){const _0x580aae=_0x504652,_0x11223={'GOAUF':function(_0x4bdb21,_0x5cbd43){return _0x4bdb21!==_0x5cbd43;},'DOvMD':_0x580aae(0x171)},_0x2d2506=_0x5be993['split']('.');if(_0x11223['GOAUF'](_0x2d2506[_0x580aae(0x166)],0x3))throw new Error(_0x580aae(0x174));const _0x9aab60=Buffer[_0x580aae(0x139)](_0x2d2506[0x1],'base64url')['toString'](_0x11223['DOvMD']);return JSON[_0x580aae(0x154)](_0x9aab60);}async function selfServeSignup(_0x5efa44){const _0x170650=_0x504652,_0x46a45e={'ULOkT':function(_0x204a5c,_0x42f8c5,_0x5d9870){return _0x204a5c(_0x42f8c5,_0x5d9870);}},_0x6f6e85=getApiBaseUrl(),_0x954472=await _0x46a45e[_0x170650(0x184)](fetch,_0x6f6e85+'/organization/self-serve-signup',{'method':_0x170650(0x163),'headers':{'Content-Type':'application/json','workos-token':_0x5efa44}});if(!_0x954472['ok']){const _0xc2ed3b=await _0x954472[_0x170650(0x187)]();throw new Error('Failed\x20to\x20create\x20organization:\x20'+_0x954472[_0x170650(0x167)]+'\x20'+_0xc2ed3b);}return _0x954472[_0x170650(0x12c)]();}async function fetchMyMemberships(_0x19dca3){const _0x232aa4=_0x504652,_0x421cba={'ErpIP':function(_0x4bad04,_0x2b68ff,_0x3ea716){return _0x4bad04(_0x2b68ff,_0x3ea716);},'ZRkGW':'GET'},_0x4a331f=getApiBaseUrl(),_0x43a683=await _0x421cba[_0x232aa4(0x173)](fetch,_0x4a331f+_0x232aa4(0x153),{'method':_0x421cba[_0x232aa4(0x13e)],'headers':{'workos-token':_0x19dca3}});if(!_0x43a683['ok']){const _0x17b102=await _0x43a683['text']();throw new Error(_0x232aa4(0x145)+_0x43a683['status']+'\x20'+_0x17b102);}const _0x4140b4=await _0x43a683['json']();return _0x4140b4['memberships'];}async function refreshTokenWithOrg(_0x1769b2,_0x3810bc,_0x30fd1c){const _0x266166=_0x504652,_0x4bb6e5={'HyXDB':function(_0x560824,_0x2a0180,_0x227290){return _0x560824(_0x2a0180,_0x227290);},'NKfyn':'POST','Yuwlz':_0x266166(0x180),'NIPHa':_0x266166(0x142)},_0x22ea2e=await _0x4bb6e5[_0x266166(0x17a)](fetch,WORKOS_TOKEN_URL,{'method':_0x4bb6e5[_0x266166(0x161)],'headers':{'Content-Type':_0x4bb6e5['Yuwlz']},'body':new URLSearchParams({'client_id':_0x1769b2,'grant_type':_0x4bb6e5['NIPHa'],'refresh_token':_0x3810bc,'organization_id':_0x30fd1c})});if(!_0x22ea2e['ok']){const _0x3b37de=await _0x22ea2e[_0x266166(0x187)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x22ea2e[_0x266166(0x167)]+'\x20'+_0x3b37de);}return _0x22ea2e['json']();}async function provisionCliToken(_0x132762){const _0x4e8665=_0x504652,_0x5ccf91={'kqKiH':_0x4e8665(0x163),'Solht':'application/json'},_0x526aa2=getApiBaseUrl(),_0x1f226e=await fetch(_0x526aa2+'/cli-auth/token',{'method':_0x5ccf91[_0x4e8665(0x16f)],'headers':{'Content-Type':_0x5ccf91[_0x4e8665(0x172)],'workos-token':_0x132762}});if(!_0x1f226e['ok']){const _0x1bd637=await _0x1f226e[_0x4e8665(0x187)]();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0x1f226e[_0x4e8665(0x167)]+'\x20'+_0x1bd637);}return _0x1f226e['json']();}export async function runDeviceAuthFlow(){const _0x559892=_0x504652,_0x5d8b98={'DVvoW':function(_0xe8fa9d){return _0xe8fa9d();},'JfBMo':function(_0x596604,_0x5900a7){return _0x596604(_0x5900a7);},'RfIaj':'Waiting\x20for\x20authentication...','XEKoU':function(_0x458467,_0x90c054){return _0x458467===_0x90c054;},'wbNaP':_0x559892(0x137),'xlosZ':_0x559892(0x188),'ePpLQ':'selected','sLDgV':function(_0x54886d,_0x16ea10,_0x3be01,_0x397c40){return _0x54886d(_0x16ea10,_0x3be01,_0x397c40);},'IFDnh':'Provisioning\x20CLI\x20token...'},_0x7c3216=_0x5d8b98[_0x559892(0x135)](getCurrentEnvironment),_0x246e6d=ENVIRONMENT_CONFIGS[_0x7c3216]['workosClientId'],_0x198288=await _0x5d8b98['JfBMo'](requestDeviceCode,_0x246e6d);console[_0x559892(0x169)](_0x559892(0x15e)),console['log'](_0x559892(0x165)),_0x5d8b98[_0x559892(0x17b)](openBrowser,_0x198288[_0x559892(0x138)]),console[_0x559892(0x169)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x198288['verification_uri_complete']),console['log'](_0x559892(0x162)+_0x198288[_0x559892(0x130)]+'\x0a'),process[_0x559892(0x147)]['write'](_0x5d8b98['RfIaj']);let _0x124197=await pollForTokens(_0x246e6d,_0x198288['device_code'],_0x198288['interval'],_0x198288['expires_in']);console[_0x559892(0x169)]('\x20✓');const _0x4d2be8=decodeJwtPayload(_0x124197[_0x559892(0x185)]);if(!_0x4d2be8['org_id']){const _0x1ac854=await _0x5d8b98['JfBMo'](fetchMyMemberships,_0x124197[_0x559892(0x185)]);let _0x24760c;if(_0x5d8b98[_0x559892(0x136)](_0x1ac854['length'],0x0)){process['stdout'][_0x559892(0x182)](_0x5d8b98['wbNaP']);const _0x481fbc=await selfServeSignup(_0x124197[_0x559892(0x185)]);_0x24760c=_0x481fbc['organizationId'],console[_0x559892(0x169)]('\x20✓');}else{if(_0x1ac854['length']===0x1)_0x24760c=_0x1ac854[0x0]['organizationId'],console[_0x559892(0x169)]('Using\x20organization:\x20'+_0x1ac854[0x0]['name']);else{const _0x141108=process[_0x559892(0x15a)][_0x559892(0x13f)]&&process['stdout'][_0x559892(0x13f)];if(!_0x141108)throw new Error(_0x5d8b98[_0x559892(0x15b)]+_0x559892(0x144));const {selected:_0x1d03a8}=await _0x4ef494[_0x559892(0x186)]([{'type':_0x559892(0x13b),'name':_0x5d8b98[_0x559892(0x158)],'message':_0x559892(0x177),'choices':_0x1ac854[_0x559892(0x12a)](_0x497ab3=>({'name':_0x497ab3['name'],'value':_0x497ab3[_0x559892(0x14b)]}))}]);_0x24760c=_0x1d03a8;}}_0x124197=await _0x5d8b98['sLDgV'](refreshTokenWithOrg,_0x246e6d,_0x124197['refresh_token'],_0x24760c);}process[_0x559892(0x147)]['write'](_0x5d8b98[_0x559892(0x175)]);const _0x970469=await provisionCliToken(_0x124197['access_token']);return console[_0x559892(0x169)]('\x20✓'),await storeToken(_0x970469[_0x559892(0x129)]),_0x124197[_0x559892(0x142)]&&await _0x5d8b98[_0x559892(0x17b)](storeRefreshToken,_0x124197[_0x559892(0x142)]),_0x970469[_0x559892(0x129)];}function _0x45a8(){const _0x380a45=['length','status','9012YVeDeu','log','error_description','/organization/me','email','GET','open','kqKiH','sChLO','utf-8','Solht','ErpIP','Invalid\x20JWT\x20format','IFDnh','authorization_pending','Select\x20an\x20organization:','4071295wbMYeO','mcp:write','HyXDB','JfBMo','52341JDJsnB','9wYeCBp','start','uzMMM','application/x-www-form-urlencoded','56qKBQlq','write','KTMWH','ULOkT','access_token','prompt','text','Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','token','map','AxorI','json','Failed\x20to\x20provision\x20API\x20key:\x20','name','apiKey','user_code','split','nDhUr','now','IdNtE','DVvoW','XEKoU','Setting\x20up\x20your\x20organization...','verification_uri_complete','from','kmSKi','list','https://api.workos.com/user_management/authenticate','Device\x20authorization\x20timed\x20out','ZRkGW','isTTY','SRxAM','fugFl','refresh_token','error','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','Failed\x20to\x20fetch\x20memberships:\x20','https://api.workos.com/user_management/authorize/device','stdout','82eHqlrW','Failed\x20to\x20request\x20device\x20code:\x20','platform','organizationId','darwin','7xwMzmd','filter','ignore','/api-keys','19678582ztENyY','nVJBP','/organization/my-memberships','parse','fdKLV','2055770nOwpLJ','Wbcmx','ePpLQ','jGrUQ','stdin','xlosZ','8950696lVAZFr','stringify','\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','CLI\x20Key','Authentication\x20failed','NKfyn','Code:\x20','POST','6666090tRBUZe','\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a'];_0x45a8=function(){return _0x380a45;};return _0x45a8();}function sleep(_0x321773){return new Promise(_0x308b97=>setTimeout(_0x308b97,_0x321773));}
1
+ const _0x37b0e3=_0x55fc;(function(_0x253c1c,_0x3ccdcb){const _0x5a16d9=_0x55fc,_0x38f474=_0x253c1c();while(!![]){try{const _0x21c84f=-parseInt(_0x5a16d9(0x1af))/0x1*(-parseInt(_0x5a16d9(0x1bd))/0x2)+parseInt(_0x5a16d9(0x1ad))/0x3*(parseInt(_0x5a16d9(0x1be))/0x4)+parseInt(_0x5a16d9(0x1ae))/0x5+-parseInt(_0x5a16d9(0x18b))/0x6*(parseInt(_0x5a16d9(0x1c7))/0x7)+-parseInt(_0x5a16d9(0x195))/0x8+-parseInt(_0x5a16d9(0x1a1))/0x9*(-parseInt(_0x5a16d9(0x1aa))/0xa)+-parseInt(_0x5a16d9(0x1a9))/0xb*(parseInt(_0x5a16d9(0x1c1))/0xc);if(_0x21c84f===_0x3ccdcb)break;else _0x38f474['push'](_0x38f474['shift']());}catch(_0x3d6742){_0x38f474['push'](_0x38f474['shift']());}}}(_0x3fc6,0xe250a));import{spawn}from'child_process';import _0x57a2ab from'inquirer';import{getCurrentEnvironment,ENVIRONMENT_CONFIGS,getApiBaseUrl}from'./environment.js';import{storeToken,storeRefreshToken}from'./keychain.js';const WORKOS_DEVICE_AUTH_URL='https://api.workos.com/user_management/authorize/device',WORKOS_TOKEN_URL=_0x37b0e3(0x197);export async function requestDeviceCode(_0x5e2df2){const _0x3c6fe6=_0x37b0e3,_0x49cb76={'ojukG':_0x3c6fe6(0x18c),'hwqev':'application/x-www-form-urlencoded'},_0x39b976=await fetch(WORKOS_DEVICE_AUTH_URL,{'method':_0x49cb76[_0x3c6fe6(0x193)],'headers':{'Content-Type':_0x49cb76['hwqev']},'body':new URLSearchParams({'client_id':_0x5e2df2})});if(!_0x39b976['ok']){const _0x24e350=await _0x39b976['text']();throw new Error(_0x3c6fe6(0x191)+_0x39b976[_0x3c6fe6(0x1cf)]+'\x20'+_0x24e350);}return _0x39b976['json']();}export async function pollForTokens(_0x1c8015,_0x5a4791,_0x83dff8,_0x3c46f1){const _0x55e9cc=_0x37b0e3,_0x15d2a8={'cipUc':function(_0x51f695,_0x4f0f35){return _0x51f695+_0x4f0f35;},'zTgHq':function(_0x2527af,_0x21e07a){return _0x2527af*_0x21e07a;},'AoGed':function(_0x431eea,_0x2d1670,_0x1e73cc){return _0x431eea(_0x2d1670,_0x1e73cc);},'FFsdq':_0x55e9cc(0x1b8),'UcQrt':_0x55e9cc(0x1a3),'nKdSe':_0x55e9cc(0x184)},_0x3f26d0=_0x15d2a8['cipUc'](Date['now'](),_0x3c46f1*0x3e8);let _0x1fad2b=_0x15d2a8[_0x55e9cc(0x1c9)](_0x83dff8,0x3e8);while(Date[_0x55e9cc(0x18a)]()<_0x3f26d0){await sleep(_0x1fad2b);const _0x487a5f=await _0x15d2a8[_0x55e9cc(0x1ab)](fetch,WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x1c8015,'device_code':_0x5a4791,'grant_type':_0x15d2a8['FFsdq']})});if(_0x487a5f['ok'])return _0x487a5f[_0x55e9cc(0x1b6)]();const _0x4206aa=await _0x487a5f[_0x55e9cc(0x1b6)]();if(_0x4206aa['error']==='authorization_pending')continue;if(_0x4206aa[_0x55e9cc(0x1a5)]===_0x15d2a8[_0x55e9cc(0x1bf)]){_0x1fad2b+=0x3e8;continue;}throw new Error(_0x4206aa[_0x55e9cc(0x1a7)]||_0x4206aa['error']||_0x55e9cc(0x199));}throw new Error(_0x15d2a8[_0x55e9cc(0x192)]);}async function fetchUserProfile(_0x56fb34){const _0x2c0eeb=_0x37b0e3,_0x29e279={'vWkXT':function(_0x31b152,_0x3cf5b5,_0x2aac28){return _0x31b152(_0x3cf5b5,_0x2aac28);},'WvIRY':_0x2c0eeb(0x19f)},_0x4cebc0=getApiBaseUrl();try{const _0x429fcc=await _0x29e279['vWkXT'](fetch,_0x4cebc0+_0x2c0eeb(0x1ca),{'method':_0x29e279['WvIRY'],'headers':{'workos-token':_0x56fb34}});if(_0x429fcc['ok'])return _0x429fcc['json']();}catch{}return null;}function buildKeyName(_0x19950d,_0x3b891c){const _0x15780a=_0x37b0e3,_0x2b19ab={'yWmcW':function(_0x28b6c4,_0x23c1ed){return _0x28b6c4+_0x23c1ed;}},_0x2fa81f=_0x3b891c[_0x15780a(0x186)](_0x9840b4=>_0x9840b4[_0x15780a(0x19a)]===_0x19950d||_0x9840b4['name'][_0x15780a(0x198)](_0x19950d+'\x20('));if(_0x2fa81f[_0x15780a(0x1ac)]===0x0)return _0x19950d;return _0x19950d+'\x20('+_0x2b19ab[_0x15780a(0x1cc)](_0x2fa81f['length'],0x1)+')';}export async function provisionApiKey(_0x3e6c93){const _0x4fdd0b=_0x37b0e3,_0x548afb={'oxhYT':'application/json','aSQZK':_0x4fdd0b(0x1a6),'zlrAU':function(_0x189b37,_0x10b5b8,_0x3ea7e5){return _0x189b37(_0x10b5b8,_0x3ea7e5);},'HvCyD':_0x4fdd0b(0x19f),'zFBoo':function(_0x15a13b,_0x579ba9,_0x215358){return _0x15a13b(_0x579ba9,_0x215358);},'VxYHK':'mcp:write'},_0x35ace2=getApiBaseUrl(),_0x12fd7a={'Content-Type':_0x548afb[_0x4fdd0b(0x1b2)],'workos-token':_0x3e6c93},_0x534962=await fetchUserProfile(_0x3e6c93),_0x5a0846=_0x534962?.[_0x4fdd0b(0x19d)]||_0x534962?.['email']?.['split']('@')[0x0],_0x23c806=_0x5a0846?_0x5a0846+'\x27s\x20CLI\x20Key':_0x548afb['aSQZK'];let _0x1e8644=[];try{const _0x4a86f1=await _0x548afb[_0x4fdd0b(0x180)](fetch,_0x35ace2+'/api-keys',{'method':_0x548afb[_0x4fdd0b(0x1c8)],'headers':_0x12fd7a});if(_0x4a86f1['ok']){const _0x730d5=await _0x4a86f1[_0x4fdd0b(0x1b6)]();_0x1e8644=_0x730d5['apiKeys'];}}catch{}const _0xa535cf=buildKeyName(_0x23c806,_0x1e8644),_0x13f223=await _0x548afb[_0x4fdd0b(0x17f)](fetch,_0x35ace2+'/api-keys',{'method':_0x4fdd0b(0x18c),'headers':_0x12fd7a,'body':JSON[_0x4fdd0b(0x194)]({'name':_0xa535cf,'scope':_0x548afb[_0x4fdd0b(0x1a8)]})});if(!_0x13f223['ok']){const _0x23222d=await _0x13f223['text']();throw new Error('Failed\x20to\x20provision\x20API\x20key:\x20'+_0x13f223[_0x4fdd0b(0x1cf)]+'\x20'+_0x23222d);}const _0x3311bc=await _0x13f223[_0x4fdd0b(0x1b6)]();return _0x3311bc['apiKey']['token'];}export function openBrowser(_0x4a6c86){const _0x3deec0=_0x37b0e3,_0x3ac3f6={'SaNlq':function(_0xb88ac5,_0x526ac0){return _0xb88ac5===_0x526ac0;},'MHcVr':'cmd','LwpQo':'darwin','dsHWl':'open','QMpBD':'xdg-open','YNvYh':function(_0x59d5b2,_0x1419e6,_0x4d2ffc,_0x4d08b1){return _0x59d5b2(_0x1419e6,_0x4d2ffc,_0x4d08b1);},'RKYiV':_0x3deec0(0x188)};try{if(_0x3ac3f6['SaNlq'](process['platform'],'win32')){const _0x3b8bb7=spawn(_0x3ac3f6['MHcVr'],['/c','start','',_0x4a6c86],{'detached':!![],'stdio':'ignore','windowsHide':!![]});_0x3b8bb7[_0x3deec0(0x187)]();return;}const _0x39f95b=process['platform']===_0x3ac3f6['LwpQo']?_0x3ac3f6[_0x3deec0(0x1a2)]:_0x3ac3f6[_0x3deec0(0x1c0)],_0x1dcb92=_0x3ac3f6['YNvYh'](spawn,_0x39f95b,[_0x4a6c86],{'detached':!![],'stdio':_0x3ac3f6[_0x3deec0(0x182)]});_0x1dcb92[_0x3deec0(0x187)]();}catch{}}function _0x55fc(_0x12a5c7,_0x4ebe67){_0x12a5c7=_0x12a5c7-0x17f;const _0x3fc63e=_0x3fc6();let _0x55fc30=_0x3fc63e[_0x12a5c7];return _0x55fc30;}function decodeJwtPayload(_0x581901){const _0x472a84=_0x37b0e3,_0x5e9a07={'fKZCK':function(_0x1e9519,_0x9a5109){return _0x1e9519!==_0x9a5109;},'MpWEY':'Invalid\x20JWT\x20format','BUjOg':'base64url','AaJzp':_0x472a84(0x1c2)},_0x57ca9d=_0x581901[_0x472a84(0x18f)]('.');if(_0x5e9a07['fKZCK'](_0x57ca9d[_0x472a84(0x1ac)],0x3))throw new Error(_0x5e9a07['MpWEY']);const _0x555c71=Buffer['from'](_0x57ca9d[0x1],_0x5e9a07['BUjOg'])['toString'](_0x5e9a07[_0x472a84(0x1ba)]);return JSON['parse'](_0x555c71);}async function selfServeSignup(_0x222d7d){const _0xc8a329=_0x37b0e3,_0x3706ff={'eSfGV':function(_0x2ca3cd){return _0x2ca3cd();},'qWXtB':'application/json'},_0x35a53b=_0x3706ff[_0xc8a329(0x1cd)](getApiBaseUrl),_0xc66676=await fetch(_0x35a53b+_0xc8a329(0x1a0),{'method':_0xc8a329(0x18c),'headers':{'Content-Type':_0x3706ff['qWXtB'],'workos-token':_0x222d7d}});if(!_0xc66676['ok']){const _0x2ff8bd=await _0xc66676[_0xc8a329(0x1cb)]();throw new Error(_0xc8a329(0x185)+_0xc66676[_0xc8a329(0x1cf)]+'\x20'+_0x2ff8bd);}return _0xc66676[_0xc8a329(0x1b6)]();}async function fetchMyMemberships(_0x299169){const _0x3d1a1a=_0x37b0e3,_0x1cf9fd={'UBMuX':function(_0x240bbd){return _0x240bbd();}},_0x4c4642=_0x1cf9fd['UBMuX'](getApiBaseUrl),_0x5a8d25=await fetch(_0x4c4642+'/organization/my-memberships',{'method':_0x3d1a1a(0x19f),'headers':{'workos-token':_0x299169}});if(!_0x5a8d25['ok']){const _0x1d9d44=await _0x5a8d25['text']();throw new Error(_0x3d1a1a(0x1c4)+_0x5a8d25[_0x3d1a1a(0x1cf)]+'\x20'+_0x1d9d44);}const _0x13642c=await _0x5a8d25[_0x3d1a1a(0x1b6)]();return _0x13642c['memberships'];}async function refreshTokenWithOrg(_0x4163aa,_0x8b971b,_0x330249){const _0x4d79ce=_0x37b0e3,_0xe616b1={'EKqUt':'refresh_token'},_0x4ee28f=await fetch(WORKOS_TOKEN_URL,{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':new URLSearchParams({'client_id':_0x4163aa,'grant_type':_0xe616b1['EKqUt'],'refresh_token':_0x8b971b,'organization_id':_0x330249})});if(!_0x4ee28f['ok']){const _0x16f09c=await _0x4ee28f[_0x4d79ce(0x1cb)]();throw new Error('Failed\x20to\x20refresh\x20token\x20with\x20org:\x20'+_0x4ee28f['status']+'\x20'+_0x16f09c);}return _0x4ee28f['json']();}async function provisionCliToken(_0x5ebd5c){const _0x3c0817=_0x37b0e3,_0x163951={'sJpbu':function(_0x30aa73){return _0x30aa73();},'IlkvR':function(_0x391402,_0x31cdfd,_0x2d4b78){return _0x391402(_0x31cdfd,_0x2d4b78);}},_0x5adddd=_0x163951[_0x3c0817(0x1b7)](getApiBaseUrl),_0xe775ea=await _0x163951['IlkvR'](fetch,_0x5adddd+_0x3c0817(0x1b0),{'method':_0x3c0817(0x18c),'headers':{'Content-Type':'application/json','workos-token':_0x5ebd5c}});if(!_0xe775ea['ok']){const _0x39415e=await _0xe775ea['text']();throw new Error('Failed\x20to\x20provision\x20CLI\x20token:\x20'+_0xe775ea['status']+'\x20'+_0x39415e);}return _0xe775ea['json']();}function _0x3fc6(){const _0xfa8d4c=['9RKGCEL','dsHWl','slow_down','EXpvT','error','CLI\x20Key','error_description','VxYHK','363EzCudz','12299030WxWyWS','AoGed','length','3YXgpEU','3051945VBadbE','460961lyXxVu','/cli-auth/token','Using\x20organization:\x20','oxhYT','stdout','Provisioning\x20CLI\x20token...','organizationId','json','sJpbu','urn:ietf:params:oauth:grant-type:device_code','expires_in','AaJzp','JSQoZ','token','2wwajSw','3878060jCHeHE','UcQrt','QMpBD','466056BKneJa','utf-8','device_code','Failed\x20to\x20fetch\x20memberships:\x20','write','HNUYH','7FQvRLf','HvCyD','zTgHq','/organization/me','text','yWmcW','eSfGV','rxrtM','status','zFBoo','zlrAU','Use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','RKYiV','verification_uri_complete','Device\x20authorization\x20timed\x20out','Failed\x20to\x20create\x20organization:\x20','filter','unref','ignore','Setting\x20up\x20your\x20organization...','now','4884294KDSdlG','POST','refresh_token','EKrIU','split','user_code','Failed\x20to\x20request\x20device\x20code:\x20','nKdSe','ojukG','stringify','1984632UYXKqI','log','https://api.workos.com/user_management/authenticate','startsWith','Authentication\x20failed','name','map','access_token','firstName','interval','GET','/organization/self-serve-signup'];_0x3fc6=function(){return _0xfa8d4c;};return _0x3fc6();}export async function runDeviceAuthFlow(){const _0x43af07=_0x37b0e3,_0x3df906={'HNUYH':function(_0xc2a8c5){return _0xc2a8c5();},'VcROk':function(_0xee4b28,_0x249602){return _0xee4b28(_0x249602);},'EXpvT':'\x0a🔐\x20Opening\x20browser\x20to\x20log\x20in...','EDZcL':'\x20\x20\x20A\x20human\x20needs\x20to\x20complete\x20authentication\x20in\x20the\x20browser.\x0a','rxrtM':function(_0x14a05e,_0x468c3c){return _0x14a05e===_0x468c3c;},'JSQoZ':'Multiple\x20organizations\x20available\x20but\x20cannot\x20prompt\x20for\x20selection\x20in\x20non-interactive\x20mode.\x0a','hwhVl':_0x43af07(0x181),'EKrIU':'selected','Xeztn':'Select\x20an\x20organization:'},_0x2b97d3=_0x3df906[_0x43af07(0x1c6)](getCurrentEnvironment),_0x377122=ENVIRONMENT_CONFIGS[_0x2b97d3]['workosClientId'],_0x25e889=await _0x3df906['VcROk'](requestDeviceCode,_0x377122);console[_0x43af07(0x196)](_0x3df906[_0x43af07(0x1a4)]),console['log'](_0x3df906['EDZcL']),openBrowser(_0x25e889[_0x43af07(0x183)]),console[_0x43af07(0x196)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x20'+_0x25e889[_0x43af07(0x183)]),console[_0x43af07(0x196)]('Code:\x20'+_0x25e889[_0x43af07(0x190)]+'\x0a'),process[_0x43af07(0x1b3)]['write']('Waiting\x20for\x20authentication...');let _0x3df2ed=await pollForTokens(_0x377122,_0x25e889[_0x43af07(0x1c3)],_0x25e889[_0x43af07(0x19e)],_0x25e889[_0x43af07(0x1b9)]);console['log']('\x20✓');const _0x23205d=_0x3df906['VcROk'](decodeJwtPayload,_0x3df2ed[_0x43af07(0x19c)]);if(!_0x23205d['org_id']){const _0x3e02fb=await fetchMyMemberships(_0x3df2ed['access_token']);let _0x5c5b24;if(_0x3df906[_0x43af07(0x1ce)](_0x3e02fb[_0x43af07(0x1ac)],0x0)){process['stdout'][_0x43af07(0x1c5)](_0x43af07(0x189));const _0x12eabf=await _0x3df906['VcROk'](selfServeSignup,_0x3df2ed['access_token']);_0x5c5b24=_0x12eabf[_0x43af07(0x1b5)],console[_0x43af07(0x196)]('\x20✓');}else{if(_0x3df906['rxrtM'](_0x3e02fb['length'],0x1))_0x5c5b24=_0x3e02fb[0x0]['organizationId'],console[_0x43af07(0x196)](_0x43af07(0x1b1)+_0x3e02fb[0x0]['name']);else{const _0x5ac2a3=process['stdin']['isTTY']&&process['stdout']['isTTY'];if(!_0x5ac2a3)throw new Error(_0x3df906[_0x43af07(0x1bb)]+_0x3df906['hwhVl']);const {selected:_0x3329db}=await _0x57a2ab['prompt']([{'type':'list','name':_0x3df906[_0x43af07(0x18e)],'message':_0x3df906['Xeztn'],'choices':_0x3e02fb[_0x43af07(0x19b)](_0x232e7c=>({'name':_0x232e7c[_0x43af07(0x19a)],'value':_0x232e7c['organizationId']}))}]);_0x5c5b24=_0x3329db;}}_0x3df2ed=await refreshTokenWithOrg(_0x377122,_0x3df2ed[_0x43af07(0x18d)],_0x5c5b24);}process['stdout'][_0x43af07(0x1c5)](_0x43af07(0x1b4));const _0x218bfd=await _0x3df906['VcROk'](provisionCliToken,_0x3df2ed['access_token']);return console['log']('\x20✓'),await storeToken(_0x218bfd['token']),_0x3df2ed['refresh_token']&&await storeRefreshToken(_0x3df2ed[_0x43af07(0x18d)]),_0x218bfd[_0x43af07(0x1bc)];}function sleep(_0x33045b){return new Promise(_0x5e6019=>setTimeout(_0x5e6019,_0x33045b));}
@@ -1 +1 @@
1
- const _0x2bba70=_0x4204;(function(_0x2f6cbe,_0x538e54){const _0x49bfb3=_0x4204,_0x4e0c68=_0x2f6cbe();while(!![]){try{const _0x5311d4=parseInt(_0x49bfb3(0x187))/0x1*(-parseInt(_0x49bfb3(0x18b))/0x2)+-parseInt(_0x49bfb3(0x18d))/0x3*(parseInt(_0x49bfb3(0x18e))/0x4)+parseInt(_0x49bfb3(0x17f))/0x5+parseInt(_0x49bfb3(0x18c))/0x6*(-parseInt(_0x49bfb3(0x19c))/0x7)+-parseInt(_0x49bfb3(0x180))/0x8+parseInt(_0x49bfb3(0x18f))/0x9+parseInt(_0x49bfb3(0x19a))/0xa*(parseInt(_0x49bfb3(0x181))/0xb);if(_0x5311d4===_0x538e54)break;else _0x4e0c68['push'](_0x4e0c68['shift']());}catch(_0x327f3b){_0x4e0c68['push'](_0x4e0c68['shift']());}}}(_0x1c7c,0xd13a6));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':'https://api.ranger.net','workosClientId':_0x2bba70(0x17d),'aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':_0x2bba70(0x192)},'staging':{'apiBaseUrl':_0x2bba70(0x17c),'workosClientId':_0x2bba70(0x191),'aiProxyUrl':'https://ai-proxy-301751771437.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x2bba70(0x198),'workosClientId':'client_01J9CBYM2DKWV9HM17D95Z540K','aiProxyUrl':_0x2bba70(0x189),'mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT=_0x2bba70(0x199);export function isValidEnvironment(_0x2694d9){const _0x4b3271=_0x2bba70,_0x1a8c4f={'lEfEl':'prod','GnkhJ':'staging','FeQnf':_0x4b3271(0x182)};return _0x2694d9===_0x1a8c4f[_0x4b3271(0x190)]||_0x2694d9===_0x1a8c4f[_0x4b3271(0x196)]||_0x2694d9===_0x1a8c4f[_0x4b3271(0x185)];}export function getCurrentEnvironment(){const _0x1d7d20=_0x2bba70,_0x1ffad5=process[_0x1d7d20(0x19d)]['RANGER_CLI_ENV'];if(_0x1ffad5&&isValidEnvironment(_0x1ffad5))return _0x1ffad5;return DEFAULT_ENVIRONMENT;}function _0x1c7c(){const _0x29d012=['9YuVigq','998204skejaX','528570crDBlQ','lEfEl','client_01J9CBYM2DKWV9HM17D95Z540K','https://mcp-auth.ranger.net/mcp','Invalid\x20RANGER_TRANSPORT=\x22','NJIBi','find','GnkhJ','RANGER_DISABLE_MCP','http://localhost:8080','prod','10UOUgtK','mYUMD','567231KJhObl','env','mcp','https://api.staging.ranger.net','client_01J9CBYM7M5ZETCF7G6614DXR2','LERSv','7364450gilvHi','4842360avuUJO','15742771FmrPKc','local','playwright-cli','RANGER_USE_NOVA_ACT','FeQnf','mcpAuthUrl','19TrVpWg','RANGER_BYOK','http://localhost:8090','kFaNl','19432HuxgDN','42YsmqpR'];_0x1c7c=function(){return _0x29d012;};return _0x1c7c();}export function getApiBaseUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['apiBaseUrl'];}export function getAiProxyUrl(){const _0x4e8dfc={'zHqum':function(_0xfe8c63){return _0xfe8c63();}};return ENVIRONMENT_CONFIGS[_0x4e8dfc['zHqum'](getCurrentEnvironment)]['aiProxyUrl'];}export function getMcpAuthUrl(){const _0x6b0ec=_0x2bba70,_0x54e8f0={'lDBMh':function(_0x59b991){return _0x59b991();}};return process['env']['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[_0x54e8f0['lDBMh'](getCurrentEnvironment)][_0x6b0ec(0x186)];}function _0x4204(_0x5245b6,_0x5badf3){_0x5245b6=_0x5245b6-0x17c;const _0x1c7c30=_0x1c7c();let _0x420437=_0x1c7c30[_0x5245b6];return _0x420437;}export function isByokEnabled(){const _0x5b0b90=_0x2bba70,_0x46a7a0={'nuWkS':function(_0x4128ac,_0xe9b170){return _0x4128ac===_0xe9b170;}};return _0x46a7a0['nuWkS'](process['env'][_0x5b0b90(0x188)],'true');}function isVerificationTransport(_0x3a5a6c){const _0x3e4005=_0x2bba70,_0x516558={'LERSv':function(_0xa8dc2a,_0x16ac7e){return _0xa8dc2a===_0x16ac7e;},'mYUMD':'mcp','kFaNl':_0x3e4005(0x183),'NJIBi':function(_0x3d1274,_0x3e506c){return _0x3d1274===_0x3e506c;}};return _0x516558['LERSv'](_0x3a5a6c,_0x516558[_0x3e4005(0x19b)])||_0x516558[_0x3e4005(0x17e)](_0x3a5a6c,_0x516558[_0x3e4005(0x18a)])||_0x516558[_0x3e4005(0x194)](_0x3a5a6c,'nova-act-cli');}const LEGACY_TRANSPORT_ENV_VARS=[_0x2bba70(0x184),_0x2bba70(0x197)];export function getVerificationTransport(){const _0x481d0a=_0x2bba70,_0x336ba2=process[_0x481d0a(0x19d)]['RANGER_TRANSPORT']?.['trim']();if(_0x336ba2){if(isVerificationTransport(_0x336ba2))return _0x336ba2;throw new Error(_0x481d0a(0x193)+_0x336ba2+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli.');}const _0x5091ae=LEGACY_TRANSPORT_ENV_VARS[_0x481d0a(0x195)](_0x3a6d30=>process['env'][_0x3a6d30]);if(_0x5091ae)throw new Error(_0x5091ae+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20or\x20RANGER_TRANSPORT=nova-act-cli.');return _0x481d0a(0x19e);}
1
+ const _0x297480=_0x1d97;(function(_0x1c2456,_0x25bc89){const _0x7daca1=_0x1d97,_0x4dd4c9=_0x1c2456();while(!![]){try{const _0x1ceb09=-parseInt(_0x7daca1(0xbb))/0x1*(parseInt(_0x7daca1(0xb1))/0x2)+-parseInt(_0x7daca1(0xc0))/0x3*(parseInt(_0x7daca1(0xce))/0x4)+-parseInt(_0x7daca1(0xbf))/0x5*(-parseInt(_0x7daca1(0xc1))/0x6)+parseInt(_0x7daca1(0xc5))/0x7*(parseInt(_0x7daca1(0xc7))/0x8)+-parseInt(_0x7daca1(0xcb))/0x9+-parseInt(_0x7daca1(0xd1))/0xa*(parseInt(_0x7daca1(0xd2))/0xb)+parseInt(_0x7daca1(0xbe))/0xc;if(_0x1ceb09===_0x25bc89)break;else _0x4dd4c9['push'](_0x4dd4c9['shift']());}catch(_0xca6e40){_0x4dd4c9['push'](_0x4dd4c9['shift']());}}}(_0x1646,0x513b6));export const ENVIRONMENT_CONFIGS={'prod':{'apiBaseUrl':_0x297480(0xcc),'workosClientId':'client_01J9CBYM7M5ZETCF7G6614DXR2','aiProxyUrl':'https://ai-proxy-716115358910.us-central1.run.app','mcpAuthUrl':'https://mcp-auth.ranger.net/mcp'},'staging':{'apiBaseUrl':_0x297480(0xc4),'workosClientId':_0x297480(0xb4),'aiProxyUrl':_0x297480(0xca),'mcpAuthUrl':'https://mcp-auth.staging.ranger.net/mcp'},'local':{'apiBaseUrl':_0x297480(0xaf),'workosClientId':_0x297480(0xb4),'aiProxyUrl':'http://localhost:8090','mcpAuthUrl':'http://localhost:8080/mcp'}};export const DEFAULT_ENVIRONMENT='prod';export function isValidEnvironment(_0xe2e33d){const _0x4d2870=_0x297480,_0x434a38={'TfjjF':_0x4d2870(0xd4),'eEcsR':function(_0x20d52c,_0x12aeed){return _0x20d52c===_0x12aeed;},'GIrlZ':'local'};return _0xe2e33d===_0x434a38[_0x4d2870(0xc6)]||_0xe2e33d==='staging'||_0x434a38[_0x4d2870(0xcf)](_0xe2e33d,_0x434a38['GIrlZ']);}export function getCurrentEnvironment(){const _0xed5900=_0x297480,_0x2a52b4={'EMMun':function(_0x13c97f,_0x390fae){return _0x13c97f(_0x390fae);}},_0x34a426=process[_0xed5900(0xc2)][_0xed5900(0xb9)];if(_0x34a426&&_0x2a52b4[_0xed5900(0xb0)](isValidEnvironment,_0x34a426))return _0x34a426;return DEFAULT_ENVIRONMENT;}export function getApiBaseUrl(){return ENVIRONMENT_CONFIGS[getCurrentEnvironment()]['apiBaseUrl'];}export function getAiProxyUrl(){const _0x4eed29=_0x297480;return ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x4eed29(0xbd)];}export function getMcpAuthUrl(){const _0x143c9f=_0x297480;return process[_0x143c9f(0xc2)]['RANGER_MCP_AUTH_URL']??ENVIRONMENT_CONFIGS[getCurrentEnvironment()][_0x143c9f(0xc3)];}export function isByokEnabled(){const _0x1a459f=_0x297480,_0x250e9e={'yuzHH':function(_0x45cb17,_0x245ffe){return _0x45cb17===_0x245ffe;},'annQY':'true'};return _0x250e9e[_0x1a459f(0xb3)](process['env'][_0x1a459f(0xd0)],_0x250e9e['annQY']);}function isVerificationTransport(_0x2602f6){const _0x1c0a7e=_0x297480,_0x5387b4={'AOmFG':'mcp','oCebI':function(_0x19082e,_0x42be70){return _0x19082e===_0x42be70;},'pppHQ':function(_0x399524,_0x5b1353){return _0x399524===_0x5b1353;},'EYHrI':_0x1c0a7e(0xb5)};return _0x2602f6===_0x5387b4['AOmFG']||_0x5387b4['oCebI'](_0x2602f6,'playwright-cli')||_0x5387b4['pppHQ'](_0x2602f6,_0x5387b4['EYHrI'])||_0x2602f6===_0x1c0a7e(0xd3);}const LEGACY_TRANSPORT_ENV_VARS=[_0x297480(0xba),_0x297480(0xb6)];function _0x1d97(_0x4b2729,_0x33578c){_0x4b2729=_0x4b2729-0xaf;const _0x16465e=_0x1646();let _0x1d9785=_0x16465e[_0x4b2729];return _0x1d9785;}export function getVerificationTransport(){const _0x5a1944=_0x297480,_0x110fcd={'ELfPU':'mcp'},_0x3e3f46=process[_0x5a1944(0xc2)]['RANGER_TRANSPORT']?.[_0x5a1944(0xb7)]();if(_0x3e3f46){if(isVerificationTransport(_0x3e3f46))return _0x3e3f46;throw new Error('Invalid\x20RANGER_TRANSPORT=\x22'+_0x3e3f46+'\x22.\x20Expected\x20one\x20of:\x20mcp,\x20playwright-cli,\x20nova-act-cli,\x20rangerwright-cli.');}const _0xe5392d=LEGACY_TRANSPORT_ENV_VARS['find'](_0x508ac6=>process[_0x5a1944(0xc2)][_0x508ac6]);if(_0xe5392d)throw new Error(_0xe5392d+'\x20is\x20no\x20longer\x20supported.\x20Use\x20RANGER_TRANSPORT=mcp,\x20RANGER_TRANSPORT=playwright-cli,\x20RANGER_TRANSPORT=nova-act-cli,\x20or\x20RANGER_TRANSPORT=rangerwright-cli.');return _0x110fcd['ELfPU'];}function _0x1646(){const _0xd6262b=['7647rmxKVM','wLRET','aiProxyUrl','9504804vrPeyH','65oxIUtd','111PsRoYd','256380UmFUDd','env','mcpAuthUrl','https://api.staging.ranger.net','1568VDeYNR','TfjjF','12192cIpDzT','Expected\x20one\x20of:\x20off,\x20on,\x20auto.\x20Defaulting\x20to\x20auto.','toLowerCase','https://ai-proxy-301751771437.us-central1.run.app','5473944FFDvsN','https://api.ranger.net','RANGER_HOOKS','44332gtXkcb','eEcsR','RANGER_BYOK','410LwplIn','14751Stcsuk','rangerwright-cli','prod','http://localhost:8080','EMMun','74CskAew','pHFiF','yuzHH','client_01J9CBYM2DKWV9HM17D95Z540K','nova-act-cli','RANGER_DISABLE_MCP','trim','sBABY','RANGER_CLI_ENV','RANGER_USE_NOVA_ACT'];_0x1646=function(){return _0xd6262b;};return _0x1646();}export function resolveHookMode(_0x454026=process['env']){const _0x500141=_0x297480,_0xf6b0e1={'wLRET':'auto','QPiGx':function(_0x4b2fad,_0x236cd6){return _0x4b2fad===_0x236cd6;},'pHFiF':'off','sBABY':function(_0x287904,_0x5cf580){return _0x287904+_0x5cf580;}},_0xb427c=_0x454026['RANGER_HOOKS']?.['trim']()[_0x500141(0xc9)]();if(!_0xb427c)return _0xf6b0e1['wLRET'];if(_0xf6b0e1['QPiGx'](_0xb427c,_0xf6b0e1[_0x500141(0xb2)])||_0xb427c==='on'||_0xb427c===_0xf6b0e1[_0x500141(0xbc)])return _0xb427c;return console['error'](_0xf6b0e1[_0x500141(0xb8)]('[ranger]\x20Ignoring\x20invalid\x20RANGER_HOOKS=\x22'+_0x454026[_0x500141(0xcd)]+'\x22.\x20',_0x500141(0xc8))),'auto';}
@@ -1 +1 @@
1
- (function(_0x4d5de6,_0x3e411){const _0x16bac6=_0x55a1,_0xeaa905=_0x4d5de6();while(!![]){try{const _0x205ecd=parseInt(_0x16bac6(0x10e))/0x1*(-parseInt(_0x16bac6(0x13a))/0x2)+-parseInt(_0x16bac6(0xf5))/0x3+-parseInt(_0x16bac6(0xff))/0x4+parseInt(_0x16bac6(0x137))/0x5+-parseInt(_0x16bac6(0x11d))/0x6+-parseInt(_0x16bac6(0x129))/0x7*(parseInt(_0x16bac6(0x12b))/0x8)+parseInt(_0x16bac6(0x131))/0x9*(parseInt(_0x16bac6(0x119))/0xa);if(_0x205ecd===_0x3e411)break;else _0xeaa905['push'](_0xeaa905['shift']());}catch(_0xe7cfb0){_0xeaa905['push'](_0xeaa905['shift']());}}}(_0x2a80,0x61887));import{getToken}from'./keychain.js';import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x3213f6){const _0x237ec2=_0x55a1,_0x43ce1c={'laisE':function(_0x376953,_0x261fe4,_0x3605c7){return _0x376953(_0x261fe4,_0x3605c7);},'UziJz':_0x237ec2(0x124),'POWAi':_0x237ec2(0x122)},_0x1cbac9=await getToken();if(!_0x1cbac9)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x92b1b5=getApiBaseUrl(),_0x579ad5=await _0x43ce1c['laisE'](fetch,_0x92b1b5+_0x237ec2(0xf7),{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x1cbac9,'Content-Type':_0x237ec2(0xfb)},'body':JSON[_0x237ec2(0x114)](_0x3213f6)});if(!_0x579ad5['ok']){if(_0x579ad5['status']===0x192){const _0x3b080a=await _0x579ad5[_0x237ec2(0x13c)](),_0xc9cbe5=_0x3b080a[_0x237ec2(0x121)]||_0x43ce1c['UziJz'];throw new Error((_0x3b080a[_0x237ec2(0x101)]||_0x43ce1c[_0x237ec2(0x136)])+_0x237ec2(0x105)+_0xc9cbe5);}const _0x5b4843=await _0x579ad5[_0x237ec2(0x10b)]();throw new Error('Failed\x20to\x20create\x20feature\x20review:\x20'+_0x5b4843);}return _0x579ad5[_0x237ec2(0x13c)]();}function _0x55a1(_0x3acd32,_0x4fded5){_0x3acd32=_0x3acd32-0xf5;const _0x2a8073=_0x2a80();let _0x55a1db=_0x2a8073[_0x3acd32];return _0x55a1db;}export async function listFeatures(_0x459843){const _0x446712=_0x55a1,_0x19a7e1={'poSaI':function(_0x51c3cc){return _0x51c3cc();},'KwfRP':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','UpTqi':'gitRepoUrl','TRFHi':_0x446712(0x13b)},_0x2e38bb=await _0x19a7e1[_0x446712(0x106)](getToken);if(!_0x2e38bb)throw new Error(_0x19a7e1['KwfRP']);const _0x5e3af6=getApiBaseUrl(),_0x4d4850=new URLSearchParams();if(_0x459843?.['gitRepoUrl'])_0x4d4850[_0x446712(0x133)](_0x19a7e1['UpTqi'],_0x459843['gitRepoUrl']);if(_0x459843?.[_0x446712(0xf9)])_0x4d4850[_0x446712(0x133)](_0x446712(0xf9),_0x459843[_0x446712(0xf9)]);if(_0x459843?.['limit'])_0x4d4850['set']('limit',_0x459843[_0x446712(0x120)]['toString']());if(_0x459843?.['offset'])_0x4d4850['set'](_0x446712(0xfa),_0x459843['offset'][_0x446712(0x111)]());if(_0x459843?.['includeDeleted'])_0x4d4850['set'](_0x19a7e1[_0x446712(0xfd)],'true');const _0x35b4a9=_0x5e3af6+'/api/v1/mcp/features'+(_0x4d4850[_0x446712(0x111)]()?'?'+_0x4d4850['toString']():''),_0x590f5d=await fetch(_0x35b4a9,{'method':_0x446712(0x112),'headers':{'Authorization':_0x446712(0x11b)+_0x2e38bb}});if(!_0x590f5d['ok']){const _0x3b971c=await _0x590f5d['text']();throw new Error('Failed\x20to\x20list\x20feature\x20reviews:\x20'+_0x3b971c);}return _0x590f5d['json']();}export async function getFeature(_0x76a498){const _0x48237e=_0x55a1,_0x48ffd9={'JWRhX':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','zmXoq':function(_0x250cf0){return _0x250cf0();},'ZpZNi':function(_0x42e668,_0x4194a4,_0x2c9e00){return _0x42e668(_0x4194a4,_0x2c9e00);},'wHWeK':_0x48237e(0x112)},_0x55db23=await getToken();if(!_0x55db23)throw new Error(_0x48ffd9[_0x48237e(0x12e)]);const _0xb05ff0=_0x48ffd9[_0x48237e(0x128)](getApiBaseUrl),_0x5222d8=await _0x48ffd9['ZpZNi'](fetch,_0xb05ff0+'/api/v1/mcp/features/'+_0x76a498,{'method':_0x48ffd9[_0x48237e(0xfe)],'headers':{'Authorization':_0x48237e(0x11b)+_0x55db23}});if(!_0x5222d8['ok']){const _0x18de89=await _0x5222d8[_0x48237e(0x10b)]();throw new Error(_0x48237e(0x13d)+_0x18de89);}return _0x5222d8['json']();}export async function updateFeature(_0x2b4f1b,_0x48121c){const _0x22f629=_0x55a1,_0x2eba0b={'QKXxb':function(_0x202784){return _0x202784();},'geOrq':function(_0x1f9389){return _0x1f9389();},'KnfJs':'application/json'},_0x24ffcb=await _0x2eba0b['QKXxb'](getToken);if(!_0x24ffcb)throw new Error(_0x22f629(0x12a));const _0x737957=_0x2eba0b['geOrq'](getApiBaseUrl),_0x4b17d1=await fetch(_0x737957+_0x22f629(0x13f)+_0x2b4f1b,{'method':'PATCH','headers':{'Authorization':'Bearer\x20'+_0x24ffcb,'Content-Type':_0x2eba0b['KnfJs']},'body':JSON['stringify'](_0x48121c)});if(!_0x4b17d1['ok']){const _0x2fd057=await _0x4b17d1[_0x22f629(0x10b)]();throw new Error(_0x22f629(0x11a)+_0x2fd057);}return _0x4b17d1['json']();}export async function createChecklistItem(_0x3d5afa,_0x35aaee,_0x13d548){const _0x5101d6=_0x55a1,_0x166605={'gbDop':function(_0x42bb33){return _0x42bb33();},'AnRGh':_0x5101d6(0x12a),'ZNHeg':function(_0x282060){return _0x282060();},'HYIKa':function(_0x532bca,_0x5af7a4,_0x73eb8){return _0x532bca(_0x5af7a4,_0x73eb8);},'epeyy':'POST'},_0x37284b=await _0x166605[_0x5101d6(0x11e)](getToken);if(!_0x37284b)throw new Error(_0x166605['AnRGh']);const _0x12409b=_0x166605['ZNHeg'](getApiBaseUrl),_0x3b0d59=await _0x166605['HYIKa'](fetch,_0x12409b+'/api/v1/mcp/features/'+_0x3d5afa+_0x5101d6(0x138),{'method':_0x166605[_0x5101d6(0x13e)],'headers':{'Authorization':'Bearer\x20'+_0x37284b,'Content-Type':'application/json'},'body':JSON[_0x5101d6(0x114)]({'description':_0x35aaee,'position':_0x13d548})});if(!_0x3b0d59['ok']){const _0x4318c5=await _0x3b0d59['text']();throw new Error(_0x5101d6(0x126)+_0x4318c5);}return _0x3b0d59['json']();}export async function updateChecklistItem(_0x35c9ac,_0xc6d6d2,_0x1e3d07){const _0x5beae5=_0x55a1,_0x30b08d={'KZSdh':function(_0x24457b){return _0x24457b();},'PEGiq':function(_0x260d65){return _0x260d65();},'bXirq':_0x5beae5(0xfb),'SJxcN':function(_0xb52c03,_0x509b61,_0x163961){return _0xb52c03(_0x509b61,_0x163961);}};return _0x30b08d[_0x5beae5(0x134)](withRetry,async()=>{const _0x195fb2=_0x5beae5,_0x22eb92=await _0x30b08d['KZSdh'](getToken);if(!_0x22eb92)throw new Error(_0x195fb2(0x12a));const _0x5ece4f=_0x30b08d['PEGiq'](getApiBaseUrl),_0x2919db=await fetch(_0x5ece4f+_0x195fb2(0x13f)+_0x35c9ac+_0x195fb2(0x117)+_0xc6d6d2,{'method':'PATCH','headers':{'Authorization':_0x195fb2(0x11b)+_0x22eb92,'Content-Type':_0x30b08d['bXirq']},'body':JSON[_0x195fb2(0x114)](_0x1e3d07)});if(!_0x2919db['ok']){const _0x5d9aa4=await _0x2919db['text']();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x5d9aa4);}return _0x2919db['json']();},{'label':_0x5beae5(0xf6)});}export async function getFeatureReport(_0x5631ea){const _0x1638ab=_0x55a1,_0x59785f={'BooJH':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','ahvvh':function(_0x2bccb,_0x191968,_0x140a9a){return _0x2bccb(_0x191968,_0x140a9a);}},_0x1f514c=await getToken();if(!_0x1f514c)throw new Error(_0x59785f['BooJH']);const _0x4b64f7=getApiBaseUrl(),_0x2a5a3c=await _0x59785f[_0x1638ab(0x139)](fetch,_0x4b64f7+'/api/v1/mcp/features/'+_0x5631ea+_0x1638ab(0x132),{'method':_0x1638ab(0x112),'headers':{'Authorization':'Bearer\x20'+_0x1f514c}});if(!_0x2a5a3c['ok']){const _0x58c443=await _0x2a5a3c['text']();throw new Error(_0x1638ab(0x10d)+_0x58c443);}return _0x2a5a3c['json']();}export async function getFeatureReportMarkdown(_0x226645,_0x4f4da6){const _0x3b1f36=_0x55a1,_0x53d245={'NVCqr':function(_0x3c2074){return _0x3c2074();},'iklVR':_0x3b1f36(0x12a),'ZHEBV':function(_0x50d1cd){return _0x50d1cd();},'rnyJh':function(_0x871dbe,_0x1e2359){return _0x871dbe>_0x1e2359;},'fkgVS':function(_0x5caff6,_0x1f8bf1){return _0x5caff6(_0x1f8bf1);},'VuCrp':'itemIds','WAJig':'sessionId','mvitE':'style','oXzTF':_0x3b1f36(0x112)},_0x7cb246=await _0x53d245['NVCqr'](getToken);if(!_0x7cb246)throw new Error(_0x53d245[_0x3b1f36(0x100)]);const _0x2b2b5b=_0x53d245[_0x3b1f36(0x110)](getApiBaseUrl),_0x5277b0=new URLSearchParams(),_0x136a87=_0x53d245['rnyJh'](_0x4f4da6?.[_0x3b1f36(0xf8)]?.['length']??0x0,0x0),_0x1ce29b=_0x53d245['fkgVS'](Boolean,_0x4f4da6?.['sessionId']);_0x136a87&&_0x4f4da6?.['itemIds']&&_0x5277b0['set'](_0x53d245[_0x3b1f36(0x108)],_0x4f4da6['itemIds']['join'](','));_0x1ce29b&&_0x4f4da6?.[_0x3b1f36(0x109)]&&_0x5277b0[_0x3b1f36(0x133)](_0x53d245[_0x3b1f36(0xfc)],_0x4f4da6['sessionId']);!_0x136a87&&!_0x1ce29b&&_0x4f4da6?.[_0x3b1f36(0x135)]&&_0x5277b0[_0x3b1f36(0x133)](_0x53d245[_0x3b1f36(0x123)],_0x4f4da6['style']);const _0x351f7c=_0x2b2b5b+'/api/v1/mcp/features/'+_0x226645+'/report/markdown',_0x3007c6=''+_0x351f7c+(_0x5277b0['toString']()?'?'+_0x5277b0['toString']():''),_0x364610=await fetch(_0x3007c6,{'method':_0x53d245[_0x3b1f36(0x118)],'headers':{'Authorization':_0x3b1f36(0x11b)+_0x7cb246}});if(!_0x364610['ok']){const _0x47228c=await _0x364610['text']();throw new Error(_0x3b1f36(0x107)+_0x47228c);}return _0x364610[_0x3b1f36(0x10b)]();}export async function listFeatureSessions(_0x261e31){const _0x3697b7=_0x55a1,_0x18b77b={'KKgJu':function(_0x4df28c){return _0x4df28c();},'AwUIF':function(_0x41db8a){return _0x41db8a();},'exhCO':function(_0x1828fc,_0x4c718b,_0x5aa143){return _0x1828fc(_0x4c718b,_0x5aa143);}},_0x5e7549=await _0x18b77b[_0x3697b7(0x10a)](getToken);if(!_0x5e7549)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x8db085=_0x18b77b[_0x3697b7(0x113)](getApiBaseUrl),_0x5104cf=await _0x18b77b['exhCO'](fetch,_0x8db085+'/api/v1/mcp/features/'+_0x261e31+'/sessions',{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x5e7549}});if(!_0x5104cf['ok']){const _0xe978d8=await _0x5104cf[_0x3697b7(0x10b)]();throw new Error(_0x3697b7(0x103)+_0xe978d8);}return _0x5104cf['json']();}export async function startSession(_0x587c01,_0x22c4a9){const _0x368aea=_0x55a1,_0x4febf6={'ScKue':function(_0x13ec6e){return _0x13ec6e();}},_0x40f21e=await getToken();if(!_0x40f21e)throw new Error(_0x368aea(0x12a));const _0x3822b4=_0x4febf6['ScKue'](getApiBaseUrl),_0x3a1ae3=await fetch(_0x3822b4+'/api/v1/mcp/features/'+_0x587c01+_0x368aea(0x12d)+_0x22c4a9+'/start',{'method':_0x368aea(0x10c),'headers':{'Authorization':_0x368aea(0x11b)+_0x40f21e}});if(!_0x3a1ae3['ok']){const _0x897b6f=await _0x3a1ae3['text']();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x897b6f);}return _0x3a1ae3['json']();}function _0x2a80(){const _0x316424=['updateChecklistItem','/api/v1/mcp/features','itemIds','gitBranch','offset','application/json','WAJig','TRFHi','wHWeK','1418852VjYmBA','iklVR','message','xCEmb','Failed\x20to\x20list\x20sessions:\x20','Failed\x20to\x20conclude\x20session:\x20','\x0a\x0aUpgrade\x20your\x20plan:\x20','poSaI','Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20','VuCrp','sessionId','KKgJu','text','POST','Failed\x20to\x20get\x20feature\x20review\x20report:\x20','1EOgxMk','Failed\x20to\x20delete\x20feature\x20review:\x20','ZHEBV','toString','GET','AwUIF','stringify','QobCh','Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20','/checklist/','oXzTF','10uYaUmG','Failed\x20to\x20update\x20feature\x20review:\x20','Bearer\x20','/feedback','627924ekdacS','gbDop','Failed\x20to\x20get\x20action\x20items:\x20','limit','billingUrl','Feature\x20limit\x20exceeded','mvitE','https://dashboard.ranger.net/billing','BWzKf','Failed\x20to\x20create\x20scenario:\x20','xrkxX','zmXoq','11767MADxiQ','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','2736TudeeT','/comments/address','/sessions/','JWRhX','Fnvht','bfulc','10172142yhTByr','/report','set','SJxcN','style','POWAi','2278785zmIrjt','/checklist','ahvvh','76490CzGcRG','includeDeleted','json','Failed\x20to\x20get\x20feature\x20review:\x20','epeyy','/api/v1/mcp/features/','341958KBJPPo'];_0x2a80=function(){return _0x316424;};return _0x2a80();}export async function concludeSession(_0x44da11,_0x133a7e){const _0x14ad61=_0x55a1,_0x59ccd4={'QobCh':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','GdmCh':function(_0x3c5241,_0x226ab3,_0x3112a7){return _0x3c5241(_0x226ab3,_0x3112a7);},'DRfyX':_0x14ad61(0x10c)},_0x106daa=await getToken();if(!_0x106daa)throw new Error(_0x59ccd4[_0x14ad61(0x115)]);const _0x2509f3=getApiBaseUrl(),_0x257423=await _0x59ccd4['GdmCh'](fetch,_0x2509f3+_0x14ad61(0x13f)+_0x44da11+'/sessions/'+_0x133a7e+'/conclude',{'method':_0x59ccd4['DRfyX'],'headers':{'Authorization':'Bearer\x20'+_0x106daa}});if(!_0x257423['ok']){const _0x47d68b=await _0x257423['text']();throw new Error(_0x14ad61(0x104)+_0x47d68b);}return _0x257423[_0x14ad61(0x13c)]();}export async function getActionItems(_0x32b5d0){const _0x25a06a=_0x55a1,_0x442b80={'xrkxX':_0x25a06a(0x12a),'VSILt':function(_0x449e1e){return _0x449e1e();},'AESFN':_0x25a06a(0x112)},_0x3ebd7f=await getToken();if(!_0x3ebd7f)throw new Error(_0x442b80[_0x25a06a(0x127)]);const _0x41aae6=_0x442b80['VSILt'](getApiBaseUrl),_0x2f97cd=await fetch(_0x41aae6+'/api/v1/mcp/features/'+_0x32b5d0+'/action-items',{'method':_0x442b80['AESFN'],'headers':{'Authorization':'Bearer\x20'+_0x3ebd7f}});if(!_0x2f97cd['ok']){const _0x73ced4=await _0x2f97cd[_0x25a06a(0x10b)]();throw new Error(_0x25a06a(0x11f)+_0x73ced4);}return _0x2f97cd['json']();}export async function getItemFeedback(_0x5196ec,_0x2e1695){const _0x4f9df4=_0x55a1,_0x347b58={'Fnvht':_0x4f9df4(0x12a),'BWzKf':function(_0x1ee4ca,_0x44b394,_0x253454){return _0x1ee4ca(_0x44b394,_0x253454);}},_0x2073e4=await getToken();if(!_0x2073e4)throw new Error(_0x347b58[_0x4f9df4(0x12f)]);const _0x31d335=getApiBaseUrl(),_0x201fdc=await _0x347b58[_0x4f9df4(0x125)](fetch,_0x31d335+_0x4f9df4(0x13f)+_0x5196ec+'/checklist-items/'+_0x2e1695+_0x4f9df4(0x11c),{'method':_0x4f9df4(0x112),'headers':{'Authorization':'Bearer\x20'+_0x2073e4}});if(!_0x201fdc['ok']){const _0x154a1f=await _0x201fdc[_0x4f9df4(0x10b)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x154a1f);}return _0x201fdc[_0x4f9df4(0x13c)]();}export async function markCommentsAddressed(_0x423996,_0x1466de,_0xf196bf){const _0x54644e=_0x55a1,_0x17141e={'btlZf':function(_0x35c530){return _0x35c530();},'KnIZa':'application/json'},_0x5734b1=await _0x17141e['btlZf'](getToken);if(!_0x5734b1)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0xefdc16=getApiBaseUrl(),_0x2ba632=await fetch(_0xefdc16+_0x54644e(0x13f)+_0x423996+_0x54644e(0x12c),{'method':_0x54644e(0x10c),'headers':{'Authorization':_0x54644e(0x11b)+_0x5734b1,'Content-Type':_0x17141e['KnIZa']},'body':JSON[_0x54644e(0x114)]({'checklistItemId':_0x1466de,'commentIds':_0xf196bf})});if(!_0x2ba632['ok']){const _0x4b89cd=await _0x2ba632[_0x54644e(0x10b)]();throw new Error(_0x54644e(0x116)+_0x4b89cd);}}export async function softDeleteFeature(_0x375a51){const _0x34ae46=_0x55a1,_0x2f57d4={'xCEmb':function(_0x559d63){return _0x559d63();},'fnqHz':function(_0x4db0dc,_0x208be5,_0x58e2ae){return _0x4db0dc(_0x208be5,_0x58e2ae);}},_0x4d5bf7=await _0x2f57d4['xCEmb'](getToken);if(!_0x4d5bf7)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x5a20d2=_0x2f57d4[_0x34ae46(0x102)](getApiBaseUrl),_0x3d22f8=await _0x2f57d4['fnqHz'](fetch,_0x5a20d2+_0x34ae46(0x13f)+_0x375a51,{'method':'DELETE','headers':{'Authorization':_0x34ae46(0x11b)+_0x4d5bf7}});if(!_0x3d22f8['ok']){const _0x3ca88a=await _0x3d22f8[_0x34ae46(0x10b)]();throw new Error(_0x34ae46(0x10f)+_0x3ca88a);}}export async function restoreFeature(_0x1d38fa){const _0x4c3d0b=_0x55a1,_0x1d79c7={'FuvZv':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','bfulc':function(_0x58af5a,_0x5a3719,_0xbc259f){return _0x58af5a(_0x5a3719,_0xbc259f);}},_0x1edc3f=await getToken();if(!_0x1edc3f)throw new Error(_0x1d79c7['FuvZv']);const _0xa990e5=getApiBaseUrl(),_0x63edac=await _0x1d79c7[_0x4c3d0b(0x130)](fetch,_0xa990e5+_0x4c3d0b(0x13f)+_0x1d38fa+'/restore',{'method':_0x4c3d0b(0x10c),'headers':{'Authorization':_0x4c3d0b(0x11b)+_0x1edc3f}});if(!_0x63edac['ok']){const _0x3fcff2=await _0x63edac['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x3fcff2);}}
1
+ (function(_0x2c6006,_0x46afac){const _0x3f4c03=_0x4fb1,_0xe24554=_0x2c6006();while(!![]){try{const _0x341408=-parseInt(_0x3f4c03(0x134))/0x1*(-parseInt(_0x3f4c03(0x168))/0x2)+-parseInt(_0x3f4c03(0x172))/0x3+parseInt(_0x3f4c03(0x163))/0x4+-parseInt(_0x3f4c03(0x138))/0x5*(-parseInt(_0x3f4c03(0x16b))/0x6)+parseInt(_0x3f4c03(0x15a))/0x7+parseInt(_0x3f4c03(0x160))/0x8+parseInt(_0x3f4c03(0x153))/0x9*(parseInt(_0x3f4c03(0x144))/0xa);if(_0x341408===_0x46afac)break;else _0xe24554['push'](_0xe24554['shift']());}catch(_0x270333){_0xe24554['push'](_0xe24554['shift']());}}}(_0xf96b,0x93699));import{getToken}from'./keychain.js';function _0x4fb1(_0x1b62ff,_0x4c95e2){_0x1b62ff=_0x1b62ff-0x131;const _0xf96b10=_0xf96b();let _0x4fb131=_0xf96b10[_0x1b62ff];return _0x4fb131;}import{getApiBaseUrl}from'./environment.js';import{withRetry}from'./retry.js';export async function createFeature(_0x1f2dc3){const _0x4f527a=_0x4fb1,_0x30656d={'suzRP':function(_0x1252b4){return _0x1252b4();},'ulQgo':function(_0x264be7,_0x53c043,_0x59c5c8){return _0x264be7(_0x53c043,_0x59c5c8);},'fMDGk':function(_0xe3ac56,_0x3afcc9){return _0xe3ac56===_0x3afcc9;}},_0xaf034b=await _0x30656d[_0x4f527a(0x164)](getToken);if(!_0xaf034b)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x42b5c5=_0x30656d[_0x4f527a(0x164)](getApiBaseUrl),_0x229552=await _0x30656d['ulQgo'](fetch,_0x42b5c5+_0x4f527a(0x141),{'method':_0x4f527a(0x133),'headers':{'Authorization':_0x4f527a(0x167)+_0xaf034b,'Content-Type':'application/json'},'body':JSON[_0x4f527a(0x17c)](_0x1f2dc3)});if(!_0x229552['ok']){if(_0x30656d['fMDGk'](_0x229552[_0x4f527a(0x16e)],0x192)){const _0x422c88=await _0x229552['json'](),_0x34eaac=_0x422c88[_0x4f527a(0x169)]||'https://dashboard.ranger.net/billing';throw new Error((_0x422c88['message']||_0x4f527a(0x17b))+_0x4f527a(0x161)+_0x34eaac);}const _0x2a3a32=await _0x229552['text']();throw new Error(_0x4f527a(0x174)+_0x2a3a32);}return _0x229552[_0x4f527a(0x135)]();}export async function listFeatures(_0x1ccc48){const _0x5ede73=_0x4fb1,_0x526424={'TBnNj':_0x5ede73(0x14d),'BQfDY':function(_0xa45e14){return _0xa45e14();},'pFAvo':'gitRepoUrl','UJzOC':'gitBranch','dSvbU':'limit','oUsJD':'offset','WHQkv':_0x5ede73(0x15f),'TzrHD':_0x5ede73(0x14a)},_0x149742=await getToken();if(!_0x149742)throw new Error(_0x526424['TBnNj']);const _0x9c2942=_0x526424['BQfDY'](getApiBaseUrl),_0x1b8393=new URLSearchParams();if(_0x1ccc48?.[_0x5ede73(0x171)])_0x1b8393[_0x5ede73(0x178)](_0x526424['pFAvo'],_0x1ccc48[_0x5ede73(0x171)]);if(_0x1ccc48?.[_0x5ede73(0x173)])_0x1b8393[_0x5ede73(0x178)](_0x526424['UJzOC'],_0x1ccc48[_0x5ede73(0x173)]);if(_0x1ccc48?.[_0x5ede73(0x150)])_0x1b8393[_0x5ede73(0x178)](_0x526424['dSvbU'],_0x1ccc48[_0x5ede73(0x150)]['toString']());if(_0x1ccc48?.[_0x5ede73(0x157)])_0x1b8393[_0x5ede73(0x178)](_0x526424['oUsJD'],_0x1ccc48[_0x5ede73(0x157)][_0x5ede73(0x13d)]());if(_0x1ccc48?.[_0x5ede73(0x15f)])_0x1b8393[_0x5ede73(0x178)](_0x526424[_0x5ede73(0x13f)],_0x526424[_0x5ede73(0x166)]);const _0x295344=_0x9c2942+'/api/v1/mcp/features'+(_0x1b8393[_0x5ede73(0x13d)]()?'?'+_0x1b8393['toString']():''),_0x22fbfd=await fetch(_0x295344,{'method':_0x5ede73(0x170),'headers':{'Authorization':_0x5ede73(0x167)+_0x149742}});if(!_0x22fbfd['ok']){const _0xf17fde=await _0x22fbfd[_0x5ede73(0x13e)]();throw new Error(_0x5ede73(0x140)+_0xf17fde);}return _0x22fbfd['json']();}export async function getFeature(_0x29e4bf){const _0x3e3f98=_0x4fb1,_0x2bc1e4={'lophn':function(_0x38b165){return _0x38b165();},'syZbu':_0x3e3f98(0x14d),'Sjbll':'GET'},_0x339705=await _0x2bc1e4[_0x3e3f98(0x145)](getToken);if(!_0x339705)throw new Error(_0x2bc1e4[_0x3e3f98(0x179)]);const _0x38df11=getApiBaseUrl(),_0x2e92df=await fetch(_0x38df11+_0x3e3f98(0x14c)+_0x29e4bf,{'method':_0x2bc1e4[_0x3e3f98(0x151)],'headers':{'Authorization':'Bearer\x20'+_0x339705}});if(!_0x2e92df['ok']){const _0x4f9563=await _0x2e92df['text']();throw new Error(_0x3e3f98(0x152)+_0x4f9563);}return _0x2e92df[_0x3e3f98(0x135)]();}export async function updateFeature(_0x21ebb0,_0x3c7166){const _0x1f0cee=_0x4fb1,_0x1203ff={'uovla':function(_0x3f4b88){return _0x3f4b88();},'Fblcd':_0x1f0cee(0x14d),'OPxnl':_0x1f0cee(0x154)},_0x2e0461=await _0x1203ff[_0x1f0cee(0x16d)](getToken);if(!_0x2e0461)throw new Error(_0x1203ff[_0x1f0cee(0x175)]);const _0x38ca97=getApiBaseUrl(),_0x62308=await fetch(_0x38ca97+_0x1f0cee(0x14c)+_0x21ebb0,{'method':_0x1203ff['OPxnl'],'headers':{'Authorization':_0x1f0cee(0x167)+_0x2e0461,'Content-Type':'application/json'},'body':JSON[_0x1f0cee(0x17c)](_0x3c7166)});if(!_0x62308['ok']){const _0x3a46f3=await _0x62308[_0x1f0cee(0x13e)]();throw new Error(_0x1f0cee(0x143)+_0x3a46f3);}return _0x62308[_0x1f0cee(0x135)]();}export async function createChecklistItem(_0x54eb00,_0xfe60f4,_0x34e8a0){const _0x1fe635=_0x4fb1,_0x279764={'VRloW':_0x1fe635(0x14d),'rSBHL':function(_0x4cbc77){return _0x4cbc77();},'MJuis':function(_0x482ef3,_0x50dac4,_0x2a1674){return _0x482ef3(_0x50dac4,_0x2a1674);},'cuoeH':'application/json'},_0x34583f=await getToken();if(!_0x34583f)throw new Error(_0x279764[_0x1fe635(0x146)]);const _0x4b2590=_0x279764[_0x1fe635(0x148)](getApiBaseUrl),_0x1a0608=await _0x279764[_0x1fe635(0x13b)](fetch,_0x4b2590+_0x1fe635(0x14c)+_0x54eb00+'/checklist',{'method':'POST','headers':{'Authorization':_0x1fe635(0x167)+_0x34583f,'Content-Type':_0x279764['cuoeH']},'body':JSON['stringify']({'description':_0xfe60f4,'position':_0x34e8a0})});if(!_0x1a0608['ok']){const _0x40713a=await _0x1a0608[_0x1fe635(0x13e)]();throw new Error(_0x1fe635(0x155)+_0x40713a);}return _0x1a0608['json']();}function _0xf96b(){const _0x549c63=['GET','gitRepoUrl','2623146gjYwOb','gitBranch','Failed\x20to\x20create\x20feature\x20review:\x20','Fblcd','qnzMf','syeqb','set','syZbu','kAUtE','Feature\x20limit\x20exceeded','stringify','Failed\x20to\x20delete\x20feature\x20review:\x20','oJBfo','iuzpK','POST','1234WlOCzL','json','QNefO','OWetC','10ztzDUh','/sessions','EpBYQ','MJuis','sessionId','toString','text','WHQkv','Failed\x20to\x20list\x20feature\x20reviews:\x20','/api/v1/mcp/features','WqRTT','Failed\x20to\x20update\x20feature\x20review:\x20','10rfgswN','lophn','VRloW','RVUQO','rSBHL','style','true','PmXcJ','/api/v1/mcp/features/','No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','MaUdl','Failed\x20to\x20conclude\x20session:\x20','limit','Sjbll','Failed\x20to\x20get\x20feature\x20review:\x20','3091167qEAuoM','PATCH','Failed\x20to\x20create\x20scenario:\x20','/report','offset','seoCJ','/action-items','4151756EKnPYz','updateChecklistItem','vSQCw','/sessions/','KjjMf','includeDeleted','58160UIUFqy','\x0a\x0aUpgrade\x20your\x20plan:\x20','itemIds','1708104yfRhUs','suzRP','length','TzrHD','Bearer\x20','32vSSTRR','billingUrl','/report/markdown','262716wcxmZv','/checklist-items/','uovla','status','ImLIO'];_0xf96b=function(){return _0x549c63;};return _0xf96b();}export async function updateChecklistItem(_0x2bd583,_0x2f3a51,_0x30ce36){const _0x3fe058=_0x4fb1,_0x855bdc={'EpBYQ':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','MpVwv':function(_0x1931bb){return _0x1931bb();},'qnzMf':'application/json','thqLd':function(_0x1062f9,_0x5518ce,_0x4ea990){return _0x1062f9(_0x5518ce,_0x4ea990);}};return _0x855bdc['thqLd'](withRetry,async()=>{const _0x1d9097=_0x4fb1,_0x4e179a=await getToken();if(!_0x4e179a)throw new Error(_0x855bdc[_0x1d9097(0x13a)]);const _0x1da62f=_0x855bdc['MpVwv'](getApiBaseUrl),_0x4562a8=await fetch(_0x1da62f+'/api/v1/mcp/features/'+_0x2bd583+'/checklist/'+_0x2f3a51,{'method':'PATCH','headers':{'Authorization':_0x1d9097(0x167)+_0x4e179a,'Content-Type':_0x855bdc[_0x1d9097(0x176)]},'body':JSON[_0x1d9097(0x17c)](_0x30ce36)});if(!_0x4562a8['ok']){const _0x241b54=await _0x4562a8[_0x1d9097(0x13e)]();throw new Error('Failed\x20to\x20update\x20scenario:\x20'+_0x241b54);}return _0x4562a8['json']();},{'label':_0x3fe058(0x15b)});}export async function getFeatureReport(_0x1f4c2){const _0x308bd2=_0x4fb1,_0x49b97f={'WqRTT':function(_0xf89aee){return _0xf89aee();}},_0x670ac8=await _0x49b97f[_0x308bd2(0x142)](getToken);if(!_0x670ac8)throw new Error(_0x308bd2(0x14d));const _0x4855ee=getApiBaseUrl(),_0x4b65e1=await fetch(_0x4855ee+_0x308bd2(0x14c)+_0x1f4c2+_0x308bd2(0x156),{'method':_0x308bd2(0x170),'headers':{'Authorization':_0x308bd2(0x167)+_0x670ac8}});if(!_0x4b65e1['ok']){const _0xe473c1=await _0x4b65e1['text']();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report:\x20'+_0xe473c1);}return _0x4b65e1[_0x308bd2(0x135)]();}export async function getFeatureReportMarkdown(_0x2f488f,_0x3c3a76){const _0x2008c5=_0x4fb1,_0x442741={'seoCJ':function(_0x5d5e07){return _0x5d5e07();},'OWetC':'sessionId','oJBfo':function(_0x2410f0,_0x5519fb){return _0x2410f0&&_0x5519fb;}},_0x4890c0=await getToken();if(!_0x4890c0)throw new Error(_0x2008c5(0x14d));const _0x407fdf=_0x442741[_0x2008c5(0x158)](getApiBaseUrl),_0xcfd340=new URLSearchParams(),_0x37af6c=(_0x3c3a76?.['itemIds']?.[_0x2008c5(0x165)]??0x0)>0x0,_0x265c18=Boolean(_0x3c3a76?.['sessionId']);_0x37af6c&&_0x3c3a76?.['itemIds']&&_0xcfd340[_0x2008c5(0x178)](_0x2008c5(0x162),_0x3c3a76[_0x2008c5(0x162)]['join'](','));_0x265c18&&_0x3c3a76?.[_0x2008c5(0x13c)]&&_0xcfd340[_0x2008c5(0x178)](_0x442741[_0x2008c5(0x137)],_0x3c3a76['sessionId']);_0x442741[_0x2008c5(0x131)](!_0x37af6c,!_0x265c18)&&_0x3c3a76?.['style']&&_0xcfd340[_0x2008c5(0x178)](_0x2008c5(0x149),_0x3c3a76[_0x2008c5(0x149)]);const _0x347998=_0x407fdf+'/api/v1/mcp/features/'+_0x2f488f+_0x2008c5(0x16a),_0x40e915=''+_0x347998+(_0xcfd340[_0x2008c5(0x13d)]()?'?'+_0xcfd340['toString']():''),_0x280aab=await fetch(_0x40e915,{'method':_0x2008c5(0x170),'headers':{'Authorization':'Bearer\x20'+_0x4890c0}});if(!_0x280aab['ok']){const _0xad6ebd=await _0x280aab[_0x2008c5(0x13e)]();throw new Error('Failed\x20to\x20get\x20feature\x20review\x20report\x20markdown:\x20'+_0xad6ebd);}return _0x280aab['text']();}export async function listFeatureSessions(_0x2cf825){const _0x20e4fa=_0x4fb1,_0x574cfc={'MaUdl':function(_0x292299){return _0x292299();},'KjjMf':function(_0x1c0e09){return _0x1c0e09();},'PWWjt':function(_0x56224c,_0x5e085c,_0xdf18ba){return _0x56224c(_0x5e085c,_0xdf18ba);},'kOYXz':_0x20e4fa(0x170)},_0x235949=await _0x574cfc[_0x20e4fa(0x14e)](getToken);if(!_0x235949)throw new Error(_0x20e4fa(0x14d));const _0xa644dd=_0x574cfc[_0x20e4fa(0x15e)](getApiBaseUrl),_0x4c10ae=await _0x574cfc['PWWjt'](fetch,_0xa644dd+_0x20e4fa(0x14c)+_0x2cf825+_0x20e4fa(0x139),{'method':_0x574cfc['kOYXz'],'headers':{'Authorization':_0x20e4fa(0x167)+_0x235949}});if(!_0x4c10ae['ok']){const _0x1ae6a1=await _0x4c10ae[_0x20e4fa(0x13e)]();throw new Error('Failed\x20to\x20list\x20sessions:\x20'+_0x1ae6a1);}return _0x4c10ae[_0x20e4fa(0x135)]();}export async function startSession(_0x67b15f,_0x398a2c){const _0x6ec37c=_0x4fb1,_0x421971={'wjYTy':function(_0x572e5f){return _0x572e5f();},'yMCHZ':_0x6ec37c(0x14d),'NwwHi':function(_0xa9c59b,_0x405bb0,_0x131f44){return _0xa9c59b(_0x405bb0,_0x131f44);}},_0x1d65f2=await _0x421971['wjYTy'](getToken);if(!_0x1d65f2)throw new Error(_0x421971['yMCHZ']);const _0x39139c=getApiBaseUrl(),_0x14a0e6=await _0x421971['NwwHi'](fetch,_0x39139c+_0x6ec37c(0x14c)+_0x67b15f+_0x6ec37c(0x15d)+_0x398a2c+'/start',{'method':_0x6ec37c(0x133),'headers':{'Authorization':'Bearer\x20'+_0x1d65f2}});if(!_0x14a0e6['ok']){const _0x4eb0d8=await _0x14a0e6[_0x6ec37c(0x13e)]();throw new Error('Failed\x20to\x20start\x20session:\x20'+_0x4eb0d8);}return _0x14a0e6['json']();}export async function concludeSession(_0x3db640,_0xa73a34){const _0x44ed52=_0x4fb1,_0x473d4f={'pXdEo':function(_0x3bc67b){return _0x3bc67b();},'zVWqI':_0x44ed52(0x14d),'PmXcJ':function(_0x3096ee){return _0x3096ee();},'QNefO':function(_0x4bd51f,_0x253341,_0x3ac54e){return _0x4bd51f(_0x253341,_0x3ac54e);}},_0x8938bb=await _0x473d4f['pXdEo'](getToken);if(!_0x8938bb)throw new Error(_0x473d4f['zVWqI']);const _0x1f0a9c=_0x473d4f[_0x44ed52(0x14b)](getApiBaseUrl),_0x3a5a72=await _0x473d4f[_0x44ed52(0x136)](fetch,_0x1f0a9c+'/api/v1/mcp/features/'+_0x3db640+'/sessions/'+_0xa73a34+'/conclude',{'method':_0x44ed52(0x133),'headers':{'Authorization':_0x44ed52(0x167)+_0x8938bb}});if(!_0x3a5a72['ok']){const _0x30cc3c=await _0x3a5a72['text']();throw new Error(_0x44ed52(0x14f)+_0x30cc3c);}return _0x3a5a72['json']();}export async function getActionItems(_0x22f849){const _0x8aadfe=_0x4fb1,_0x19f60a={'SSteG':'No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]','vSQCw':_0x8aadfe(0x170)},_0x3fdda5=await getToken();if(!_0x3fdda5)throw new Error(_0x19f60a['SSteG']);const _0x3b322f=getApiBaseUrl(),_0x44df69=await fetch(_0x3b322f+'/api/v1/mcp/features/'+_0x22f849+_0x8aadfe(0x159),{'method':_0x19f60a[_0x8aadfe(0x15c)],'headers':{'Authorization':_0x8aadfe(0x167)+_0x3fdda5}});if(!_0x44df69['ok']){const _0x178151=await _0x44df69['text']();throw new Error('Failed\x20to\x20get\x20action\x20items:\x20'+_0x178151);}return _0x44df69['json']();}export async function getItemFeedback(_0x515d12,_0x292db1){const _0x4cce58=_0x4fb1,_0x2bf773={'dTxbc':function(_0x104e64){return _0x104e64();},'iuzpK':function(_0x4d54ee){return _0x4d54ee();},'RVUQO':_0x4cce58(0x170)},_0x3eedf7=await _0x2bf773['dTxbc'](getToken);if(!_0x3eedf7)throw new Error(_0x4cce58(0x14d));const _0xe6d86a=_0x2bf773[_0x4cce58(0x132)](getApiBaseUrl),_0x2699cb=await fetch(_0xe6d86a+_0x4cce58(0x14c)+_0x515d12+_0x4cce58(0x16c)+_0x292db1+'/feedback',{'method':_0x2bf773[_0x4cce58(0x147)],'headers':{'Authorization':_0x4cce58(0x167)+_0x3eedf7}});if(!_0x2699cb['ok']){const _0x4a4c7d=await _0x2699cb[_0x4cce58(0x13e)]();throw new Error('Failed\x20to\x20get\x20item\x20feedback:\x20'+_0x4a4c7d);}return _0x2699cb['json']();}export async function markCommentsAddressed(_0x50a7e5,_0x36836e,_0x5d54ba){const _0x5351ce=_0x4fb1,_0xa2ea7={'RslGL':function(_0x34f5e6){return _0x34f5e6();},'syeqb':function(_0x224c5b){return _0x224c5b();},'ImLIO':'application/json'},_0x292534=await _0xa2ea7['RslGL'](getToken);if(!_0x292534)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x2e3f3e=_0xa2ea7[_0x5351ce(0x177)](getApiBaseUrl),_0x2b3684=await fetch(_0x2e3f3e+_0x5351ce(0x14c)+_0x50a7e5+'/comments/address',{'method':'POST','headers':{'Authorization':_0x5351ce(0x167)+_0x292534,'Content-Type':_0xa2ea7[_0x5351ce(0x16f)]},'body':JSON[_0x5351ce(0x17c)]({'checklistItemId':_0x36836e,'commentIds':_0x5d54ba})});if(!_0x2b3684['ok']){const _0xe3ae5e=await _0x2b3684['text']();throw new Error('Failed\x20to\x20mark\x20comments\x20as\x20addressed:\x20'+_0xe3ae5e);}}export async function softDeleteFeature(_0x39bfb1){const _0x1c8583=_0x4fb1,_0x3df761={'eHoDp':function(_0x49ead2){return _0x49ead2();},'kAUtE':'DELETE'},_0x462e83=await getToken();if(!_0x462e83)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x3cab10=_0x3df761['eHoDp'](getApiBaseUrl),_0x226cde=await fetch(_0x3cab10+'/api/v1/mcp/features/'+_0x39bfb1,{'method':_0x3df761[_0x1c8583(0x17a)],'headers':{'Authorization':_0x1c8583(0x167)+_0x462e83}});if(!_0x226cde['ok']){const _0x510b7e=await _0x226cde[_0x1c8583(0x13e)]();throw new Error(_0x1c8583(0x17d)+_0x510b7e);}}export async function restoreFeature(_0x3ea715){const _0x105aa2=_0x4fb1,_0x15b6ec={'kqGQF':function(_0x583dd5){return _0x583dd5();}},_0x3f7531=await _0x15b6ec['kqGQF'](getToken);if(!_0x3f7531)throw new Error('No\x20API\x20token\x20configured.\x20Run:\x20ranger\x20setup\x20[token]');const _0x20ca55=_0x15b6ec['kqGQF'](getApiBaseUrl),_0x1a2935=await fetch(_0x20ca55+_0x105aa2(0x14c)+_0x3ea715+'/restore',{'method':'POST','headers':{'Authorization':'Bearer\x20'+_0x3f7531}});if(!_0x1a2935['ok']){const _0x17ea44=await _0x1a2935['text']();throw new Error('Failed\x20to\x20restore\x20feature\x20review:\x20'+_0x17ea44);}}