@ranger-testing/ranger-cli 2.5.4-alpha.a98f848-6 → 2.5.4-alpha.b28d3b1-14

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 (81) 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/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/mcpBootstrap.js +1 -1
  25. package/build/commands/migrateProfile.js +1 -1
  26. package/build/commands/setup/claude.js +1 -1
  27. package/build/commands/setup/opencode.js +1 -1
  28. package/build/commands/setupCi.js +1 -1
  29. package/build/commands/skillup.js +1 -1
  30. package/build/commands/start.js +1 -1
  31. package/build/commands/status.js +1 -1
  32. package/build/commands/update.js +1 -1
  33. package/build/commands/updateEnv.js +1 -1
  34. package/build/commands/useEnv.js +1 -1
  35. package/build/commands/utils/activeProfile.js +1 -1
  36. package/build/commands/utils/agentEnv.js +1 -1
  37. package/build/commands/utils/browserSessionsApi.js +1 -1
  38. package/build/commands/utils/claudeConfig.js +1 -1
  39. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  40. package/build/commands/utils/claudePlugin.js +1 -1
  41. package/build/commands/utils/cloudProfile.js +1 -1
  42. package/build/commands/utils/cloudProfileSession.js +1 -1
  43. package/build/commands/utils/crypto.js +1 -1
  44. package/build/commands/utils/desirePathLog.js +1 -1
  45. package/build/commands/utils/deviceAuth.js +1 -1
  46. package/build/commands/utils/environment.js +1 -1
  47. package/build/commands/utils/featureApi.js +1 -1
  48. package/build/commands/utils/fixWebmDuration.js +1 -1
  49. package/build/commands/utils/gitTracked.js +1 -1
  50. package/build/commands/utils/keychain.js +1 -1
  51. package/build/commands/utils/legacyWarning.js +1 -0
  52. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  53. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  54. package/build/commands/utils/mcpImageBase64.js +1 -1
  55. package/build/commands/utils/model.js +1 -1
  56. package/build/commands/utils/opencodeConfig.js +1 -1
  57. package/build/commands/utils/playwrightCli.js +1 -1
  58. package/build/commands/utils/profileMessages.js +1 -1
  59. package/build/commands/utils/profileSetupBanner.js +1 -1
  60. package/build/commands/utils/projectsConfig.js +1 -1
  61. package/build/commands/utils/rangerConfig.js +1 -1
  62. package/build/commands/utils/rangerRoot.js +1 -1
  63. package/build/commands/utils/resolveProfileContext.js +1 -1
  64. package/build/commands/utils/resolveProfileUrl.js +1 -1
  65. package/build/commands/utils/retry.js +1 -1
  66. package/build/commands/utils/sessionCache.js +1 -1
  67. package/build/commands/utils/settings.js +1 -1
  68. package/build/commands/utils/skillContent.js +1 -1
  69. package/build/commands/utils/skills.js +1 -1
  70. package/build/commands/utils/stitchWebmFiles.js +1 -1
  71. package/build/commands/utils/telemetry.js +1 -1
  72. package/build/commands/utils/tokenRefresh.js +1 -1
  73. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  74. package/build/commands/utils/userApi.js +1 -1
  75. package/build/commands/utils/version.js +1 -1
  76. package/build/commands/verifyFeature.js +1 -1
  77. package/build/commands/verifyFeatureCli.js +1 -1
  78. package/build/skills/ranger/SKILL.md +13 -7
  79. package/build/skills/ranger/create.md +16 -3
  80. package/build/skills/ranger/verify.md +25 -18
  81. package/package.json +3 -2
@@ -1 +1 @@
1
- (function(_0x581fe7,_0x696521){const _0x3849b8=_0x21f5,_0x2e2a20=_0x581fe7();while(!![]){try{const _0x468d4b=-parseInt(_0x3849b8(0x145))/0x1+parseInt(_0x3849b8(0x128))/0x2*(parseInt(_0x3849b8(0x1a7))/0x3)+parseInt(_0x3849b8(0x173))/0x4*(-parseInt(_0x3849b8(0x157))/0x5)+-parseInt(_0x3849b8(0x13f))/0x6*(parseInt(_0x3849b8(0x1ad))/0x7)+-parseInt(_0x3849b8(0x166))/0x8*(-parseInt(_0x3849b8(0x172))/0x9)+-parseInt(_0x3849b8(0x12d))/0xa*(-parseInt(_0x3849b8(0x1b4))/0xb)+parseInt(_0x3849b8(0x140))/0xc*(parseInt(_0x3849b8(0x12a))/0xd);if(_0x468d4b===_0x696521)break;else _0x2e2a20['push'](_0x2e2a20['shift']());}catch(_0x52d22e){_0x2e2a20['push'](_0x2e2a20['shift']());}}}(_0x511f,0xb7804));import{mkdir,writeFile,readFile,readdir,unlink,rm,mkdtemp,rename}from'fs/promises';import{join}from'path';function _0x511f(){const _0x41d664=['isTTY','saveToCloud','keys','\x20\x20Next:\x20RANGER_TEST_USERNAME=...\x20RANGER_TEST_PASSWORD=...\x20ranger\x20go\x20--profile\x20','\x20\x20Make\x20sure\x20your\x20Electron\x20app\x20(or\x20browser)\x20is\x20running\x20with\x20remote\x20debugging\x20enabled.\x0a','profile.add.autoRouteSkipped','✓\x20Encrypted\x20auth\x20saved\x20to:\x20','zLPfT','RxwYR','log','546TLllEV','12PphWwg','path','iQdEO','\x20would\x20shadow\x20the\x20existing\x20profile.','finally','367261hpzgqN','You\x20can\x20try\x20again\x20with\x20one\x20of:','Aborted.','Enter\x20a\x20different\x20URL','http://localhost:3000','input','wdwSB','QPufW','safeMode','dZNna','tkIcF','isProtocolError','signal','slice','\x0aMake\x20sure\x20your\x20app\x20is\x20running,\x20then\x20try\x20again.\x20To\x20skip\x20this\x20check,\x20pass\x20--force.','\x20\x20Note:\x20found\x20git-tracked\x20local\x20profile\x20at\x20','dMMAc','abort','1790qcpSZT','\x20\x20Cleaned\x20up\x20orphan\x20local\x20profile\x20at\x20','QvkdX','setupHeader','EWkvv','--cdp-endpoint\x20must\x20not\x20be\x20empty.\x20Provide\x20the\x20CDP\x20URL,\x20e.g.\x20--cdp-endpoint\x20http://localhost:9222','off','fUrII','test','about:blank','use_suggestion','local','Enter\x20a\x20new\x20URL\x20(or\x20press\x20enter\x20to\x20keep\x20current):','\x20\x20Make\x20sure\x20your\x20app\x20is\x20running\x20locally\x20before\x20continuing.','cdpEndpoint','80024DqvXyr','join','\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.','KANEQ','utf-8','\x0a📋\x20Authentication\x20Setup','\x20--skip-auth\x20\x20\x20\x20(skip\x20browser\x20auth\x20entirely)\x0a','root\x20(.ranger/)','Khocr','\x22\x20configured','EXxHd','hfrEd','954tBKUaC','16532wbsmzj','OGBdd','environments','owYrX','Saving\x20authentication\x20state...','Invalid\x20--setup-header\x20format:\x20\x22','oIRXk','auth.json','.tmp-','BNCsq','Warning:\x20Profile\x20created,\x20but\x20failed\x20to\x20mark\x20it\x20as\x20active.','newContext','CKdAf','kayHf','\x20\x20ranger\x20profile\x20add\x20','oPPGL','env','length','now','browser_auth','\x22\x20already\x20exists.\x20Overwrite?','⚠\x20Could\x20not\x20reach\x20','vukMo','Warning:\x20Could\x20not\x20remove\x20old\x20profile\x20backup\x20at\x20','SIGINT','XMgdW','confirm','message','\x20\x20Did\x20you\x20mean\x20','\x20--safe-mode\x20\x20\x20\x20(disables\x20browser\x20features\x20that\x20can\x20cause\x20crashes)','stdout','origin','includes','\x22\x20already\x20exists\x20in\x20','ZXzMn','\x0a🌐\x20Profile\x20Setup\x0a','storageState','no_auth_config','\x27\x20to\x20the\x20cloud?','once','eOAwR','catch','allowInsecureLocalhost','upODT','push','trackPhaseEnd','\x22.\x20Expected\x20\x22Name:\x20Value\x22.','shouldReplace','close','baseUrl','launch','cXYGG','72SxlCHu','zphxL','iAKOu','status','skipAuth','\x20\x20Could\x20not\x20encrypt:\x20No\x20API\x20token\x20found.\x20Run:\x20ranger\x20setup\x20[token]','42798VgyKcn','prompt','elvAA','trim','qIqnq','retry','\x20\x20Run\x20ranger\x20setup\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.','31196GjOjUy','stringify','error','\x0a\x20\x20(domains:\x20','ySgFJ','NODE_TLS_REJECT_UNAUTHORIZED','force','aVimf','mEXvw','RzGXZ','fetch\x20failed','Rfitf','url',')\x0a\x20\x20Save\x20\x27','TypeError','user_declined','setupHeaders','37342AxVOKJ','SYbfk','12666095BtVEJn','\x0a⚠️\x20\x20Profile\x20\x22','--url\x20and\x20--cdp-endpoint\x20are\x20mutually\x20exclusive.\x20Use\x20--url\x20for\x20web\x20apps\x20or\x20--cdp-endpoint\x20for\x20Electron/CDP\x20apps,\x20not\x20both.','2370aPQaYX','http://','location','cVsAC','BbPlv','iPpCx','goto','\x20\x20Set\x20active\x20profile:\x20'];_0x511f=function(){return _0x41d664;};return _0x511f();}import{existsSync}from'fs';import _0x5cff3e from'inquirer';import{chromium}from'playwright';import{findExistingEnv,loadSettings}from'./utils/settings.js';import{encrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';import{getRangerDir,getRangerHomeDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{addProfileSetupBanner}from'./utils/profileSetupBanner.js';import{fetchAuthConfig,createCloudProfile,ApiError}from'./utils/cloudProfile.js';import{matchAuthEnvironment}from'./utils/matchAuthEnvironment.js';function _0x21f5(_0x455420,_0x21b2a0){_0x455420=_0x455420-0x121;const _0x511f50=_0x511f();let _0x21f5bf=_0x511f50[_0x455420];return _0x21f5bf;}import{isPathGitTracked}from'./utils/gitTracked.js';async function checkUrlReachability(_0x312952){const _0x2932d6=_0x21f5,_0x5eca62={'wMhTL':'manual','oPPGL':function(_0x596a5a,_0x5e92d9,_0x14d672){return _0x596a5a(_0x5e92d9,_0x14d672);},'Ownib':function(_0x4028b2,_0x36a14c){return _0x4028b2<_0x36a14c;}};try{const _0x5a2d2d=new AbortController(),_0x1571ec=setTimeout(()=>_0x5a2d2d[_0x2932d6(0x156)](),0x1388),_0x2188eb={'method':'HEAD','signal':_0x5a2d2d[_0x2932d6(0x151)],'redirect':_0x5eca62['wMhTL']};/^https:\/\/localhost(:\d+)?/i['test'](_0x312952)&&(process[_0x2932d6(0x183)][_0x2932d6(0x1b9)]='0');const _0x278bb5=await _0x5eca62[_0x2932d6(0x182)](fetch,_0x312952,_0x2188eb);delete process[_0x2932d6(0x183)]['NODE_TLS_REJECT_UNAUTHORIZED'],clearTimeout(_0x1571ec);if(_0x5eca62['Ownib'](_0x278bb5['status'],0x190))return{'ok':!![]};return{'ok':![],'error':'HTTP\x20'+_0x278bb5[_0x2932d6(0x1aa)]};}catch(_0x4171ae){delete process['env'][_0x2932d6(0x1b9)];const _0x4b7030=_0x4171ae,_0x495dc3=_0x4b7030['message']||String(_0x4171ae),_0x3fef92=_0x495dc3[_0x2932d6(0x193)]('Invalid\x20URL')||_0x4b7030['name']===_0x2932d6(0x125)||_0x495dc3['includes'](_0x2932d6(0x121));return{'ok':![],'error':_0x495dc3,'isProtocolError':_0x3fef92};}}async function sweepOrphanLocalProfile(_0x525d75,_0xb948db,_0x320d13){const _0x2b656d=_0x21f5,_0x48c07f={'wdwSB':function(_0x11f37b,_0x4a3e55,_0x3a1048){return _0x11f37b(_0x4a3e55,_0x3a1048);},'cXYGG':function(_0x39dda1,_0x334904){return _0x39dda1(_0x334904);}},_0x591365=join(_0xb948db,_0x2b656d(0x162)),_0x49fd3b=join(_0x591365,_0x525d75);existsSync(_0x49fd3b)&&(_0x320d13&&await isPathGitTracked(_0x49fd3b)?console[_0x2b656d(0x13e)](_0x2b656d(0x154)+_0x49fd3b+'\x20—\x20not\x20removing.\x20Delete\x20manually\x20if\x20you\x20want\x20it\x20gone.'):(await _0x48c07f[_0x2b656d(0x14b)](rm,_0x49fd3b,{'recursive':!![],'force':!![]}),console[_0x2b656d(0x13e)](_0x2b656d(0x158)+_0x49fd3b)));if(_0x48c07f[_0x2b656d(0x1a6)](existsSync,_0x591365)){let _0x26e374=[];try{_0x26e374=await _0x48c07f['cXYGG'](readdir,_0x591365);}catch{return;}const _0x4c29c1='.tmp-'+_0x525d75+'-';for(const _0x223558 of _0x26e374){if(!_0x223558['startsWith'](_0x4c29c1))continue;const _0xd4e48f=join(_0x591365,_0x223558);await rm(_0xd4e48f,{'recursive':!![],'force':!![]}),console['log'](_0x2b656d(0x158)+_0xd4e48f);}}}async function tryAutoRouteCloudProfile(_0x4fd8f0,_0xd66dd7,_0x3259bd,_0x19e0cc,_0x43f74f){const _0x547090=_0x21f5,_0x2fb39b={'ZXzMn':function(_0x2b5c8d,_0x48ab5d){return _0x2b5c8d===_0x48ab5d;},'KANEQ':function(_0x72c516){return _0x72c516();},'dZNna':_0x547090(0x13a),'qIqnq':'No\x20auth\x20env\x20matches\x20this\x20URL.\x20Creating\x20local\x20profile.','mwEFO':'no_match','XMgdW':'confirm','RzGXZ':_0x547090(0x136),'tkIcF':function(_0xb7581e,_0x5be027,_0x1c85c4,_0x27fad5){return _0xb7581e(_0x5be027,_0x1c85c4,_0x27fad5);},'aVimf':function(_0x4462f1,_0x5a8470){return _0x4462f1===_0x5a8470;},'elvAA':function(_0x3a0412,_0x119c66){return _0x3a0412 instanceof _0x119c66;},'SZggs':function(_0x17025f,_0x2d05a6){return _0x17025f(_0x2d05a6);},'YqxjQ':function(_0x1ec179,_0x3db05f){return _0x1ec179+_0x3db05f;},'QvkdX':function(_0x7c7a19){return _0x7c7a19();}};let _0x3ffbd3;try{_0x3ffbd3=await _0x2fb39b[_0x547090(0x169)](fetchAuthConfig);}catch{return _0x43f74f?.[_0x547090(0x1a0)]('profile.add.autoRouteSkipped',{'reason':'no_auth_config','profileName':_0x4fd8f0}),![];}if(!_0x3ffbd3||!_0x3ffbd3['environments']||Object[_0x547090(0x137)](_0x3ffbd3['environments'])['length']===0x0)return _0x43f74f?.[_0x547090(0x1a0)](_0x2fb39b[_0x547090(0x14e)],{'reason':_0x547090(0x198),'profileName':_0x4fd8f0}),![];const _0x1e08d7=matchAuthEnvironment(_0xd66dd7,_0x3ffbd3);if(!_0x1e08d7)return console[_0x547090(0x13e)](_0x2fb39b[_0x547090(0x1b1)]),_0x43f74f?.[_0x547090(0x1a0)](_0x547090(0x13a),{'reason':_0x2fb39b['mwEFO'],'profileName':_0x4fd8f0}),![];const _0x2155ad=_0x3ffbd3[_0x547090(0x175)][_0x1e08d7],_0xccde33=_0x2155ad?.['domains']??[];if(_0x19e0cc&&!_0x3259bd['yes']){const {saveToCloud:_0x5d31e3}=await _0x5cff3e['prompt']([{'type':_0x2fb39b[_0x547090(0x18c)],'name':_0x2fb39b[_0x547090(0x1bd)],'message':'Found\x20auth\x20environment\x20\x27'+_0x1e08d7+'\x27\x20matching\x20'+_0xd66dd7+_0x547090(0x1b7)+_0xccde33[_0x547090(0x167)](',\x20')+_0x547090(0x124)+_0x4fd8f0+_0x547090(0x199),'default':!![]}]);if(!_0x5d31e3)return _0x43f74f?.['trackPhaseEnd']('profile.add.autoRouteSkipped',{'reason':_0x547090(0x126),'profileName':_0x4fd8f0}),![];}const _0x44fbde=_0xccde33['some'](_0x4fa2ee=>{const _0x15b653=_0x547090;try{return _0x2fb39b[_0x15b653(0x195)](new URL(_0x4fa2ee)[_0x15b653(0x192)],new URL(_0xd66dd7)['origin']);}catch{return![];}}),_0x4b50fb={};!_0x44fbde&&(_0x4b50fb[_0x547090(0x1a4)]=_0xd66dd7);try{await _0x2fb39b[_0x547090(0x14f)](createCloudProfile,_0x4fd8f0,_0x1e08d7,{'settings':_0x4b50fb});}catch(_0x2e6806){if(_0x2e6806 instanceof ApiError&&_0x2fb39b[_0x547090(0x1bb)](_0x2e6806[_0x547090(0x1aa)],0x199)){console['error']('\x0a\x20\x20A\x20cloud\x20profile\x20named\x20\x22'+_0x4fd8f0+'\x22\x20already\x20exists.\x20Choose\x20a\x20different\x20name\x20or\x20delete\x20the\x20existing\x20profile\x20first.');throw _0x2e6806;}return console[_0x547090(0x13e)]('\x20\x20Could\x20not\x20reach\x20Ranger\x20API\x20to\x20create\x20a\x20cloud\x20profile\x20('+(_0x2fb39b['elvAA'](_0x2e6806,Error)?_0x2e6806[_0x547090(0x18e)]:_0x2fb39b['SZggs'](String,_0x2e6806))+').\x20Falling\x20back\x20to\x20local\x20profile.'),_0x43f74f?.[_0x547090(0x1a0)](_0x2fb39b['dZNna'],{'reason':'no_auth_config','profileName':_0x4fd8f0}),![];}console[_0x547090(0x13e)](_0x2fb39b['YqxjQ']('✓\x20Cloud\x20profile\x20\x27'+_0x4fd8f0+'\x27\x20created,\x20linked\x20to\x20env\x20\x27'+_0x1e08d7+'\x27.\x0a',_0x547090(0x138)+_0x4fd8f0));try{await _0x2fb39b[_0x547090(0x14f)](sweepOrphanLocalProfile,_0x4fd8f0,_0x2fb39b[_0x547090(0x159)](getRangerHomeDir),![]);const _0x47d551=getRangerDir();_0x47d551!==getRangerHomeDir()&&await sweepOrphanLocalProfile(_0x4fd8f0,_0x47d551,!![]);}catch(_0x51fb9c){console[_0x547090(0x13e)]('\x20\x20Note:\x20cloud\x20profile\x20created,\x20but\x20failed\x20to\x20sweep\x20orphan\x20local\x20dirs\x20('+(_0x2fb39b[_0x547090(0x1af)](_0x51fb9c,Error)?_0x51fb9c[_0x547090(0x18e)]:String(_0x51fb9c))+').');}return _0x43f74f?.[_0x547090(0x1a0)]('profile.add.autoRouted',{'envKey':_0x1e08d7,'profileName':_0x4fd8f0}),!![];}export async function addEnv(_0x1d0c00,_0x4e861b={},_0x59a55d){const _0x1261e9=_0x21f5,_0x3fcabb={'RxwYR':function(_0x17e31,_0x595c9b,_0x4c2b6a){return _0x17e31(_0x595c9b,_0x4c2b6a);},'flSKa':'close','BNCsq':function(_0x3724e7){return _0x3724e7();},'eOAwR':function(_0x219560,_0x1ba91c,_0x2697ce,_0x59f81c){return _0x219560(_0x1ba91c,_0x2697ce,_0x59f81c);},'nKeht':function(_0x2572f6,_0xa8598){return _0x2572f6===_0xa8598;},'kyxtc':function(_0x543d6f,_0x24ce46){return _0x543d6f+_0x24ce46;},'GyvsV':_0x1261e9(0x15c),'NyNIa':_0x1261e9(0x12c),'QPufW':'--ci\x20and\x20--cdp-endpoint\x20cannot\x20be\x20used\x20together.\x20Electron/CDP\x20profiles\x20only\x20work\x20with\x20a\x20locally\x20running\x20app\x20and\x20are\x20not\x20supported\x20in\x20CI.','hfrEd':function(_0x57ca4e,_0x20347f){return _0x57ca4e(_0x20347f);},'BbPlv':'Please\x20provide\x20--url\x20when\x20running\x20in\x20non-interactive\x20mode.\x0aMake\x20sure\x20the\x20service\x20is\x20running\x20on\x20that\x20port\x20before\x20retrying.\x0aExample:\x20ranger\x20profile\x20add\x20local\x20--url\x20http://localhost:3000','iQdEO':function(_0x53fad5,_0x43c7ee,_0x115749){return _0x53fad5(_0x43c7ee,_0x115749);},'CKdAf':_0x1261e9(0x18d),'EXxHd':'overwrite','ZFVit':'Aborted.','SYbfk':function(_0x1959fc,_0x1ba881){return _0x1959fc===_0x1ba881;},'KugnA':_0x1261e9(0x16d),'cVsAC':'url_setup','DQYIo':'\x0a🔌\x20CDP\x20Profile\x20Setup\x0a','zYxzJ':'baseUrl','wzoRi':'What\x20is\x20the\x20URL\x20of\x20your\x20running\x20app?','znQuK':'list','EWkvv':'action','iPpCx':_0x1261e9(0x161),'dMMAc':_0x1261e9(0x148),'OGBdd':'continue','NJVhr':function(_0x195a12,_0x3c3221,_0x20850e){return _0x195a12(_0x3c3221,_0x20850e);},'ySgFJ':_0x1261e9(0x17a),'zphxL':_0x1261e9(0x186),'upODT':_0x1261e9(0x16b),'oIRXk':'\x20\x20\x20When\x20done\x20logging\x20in,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.','dJcTf':'--allow-insecure-localhost','SwNHS':function(_0x1b4474,_0x591e20){return _0x1b4474>_0x591e20;},'VaKLZ':function(_0x30bbbf,_0x988e3c){return _0x30bbbf||_0x988e3c;},'yhTJX':'\x0aThe\x20browser\x20closed\x20unexpectedly\x20before\x20authentication\x20could\x20be\x20saved.','vBNfs':_0x1261e9(0x146),'fUrII':'Browser\x20closed\x20before\x20authentication\x20was\x20saved.','kayHf':_0x1261e9(0x16a),'owYrX':_0x1261e9(0x1ac),'Khocr':function(_0x32c87e,_0x54432b){return _0x32c87e(_0x54432b);},'mEXvw':'Missing\x20API\x20token;\x20aborting\x20CI\x20profile\x20creation.','vukMo':'.enc','gsZnl':_0x1261e9(0x1b3),'sRylC':'config_write','PKzMc':function(_0x3915cf,_0x31f51e,_0xac9282){return _0x3915cf(_0x31f51e,_0xac9282);},'Rfitf':'settings.json','GpBVR':function(_0x31cce0,_0xc0af2f){return _0x31cce0===_0xc0af2f;},'IOVCw':function(_0x2a5e8e,_0x32e4da,_0x48d896){return _0x2a5e8e(_0x32e4da,_0x48d896);},'iAKOu':function(_0x17b3ea,_0x44d623,_0x512d6e){return _0x17b3ea(_0x44d623,_0x512d6e);},'SIySV':_0x1261e9(0x17d),'zLPfT':function(_0x3ace7d,_0x9d81e8,_0x388d84){return _0x3ace7d(_0x9d81e8,_0x388d84);}},_0xd2adb0=_0x4e861b['ci']??![],_0x117b06=_0xd2adb0?'ci':_0x1261e9(0x162),_0x4dc7d7=_0x4e861b['scope']==='user'?getRangerHomeDir():_0x3fcabb['BNCsq'](getRangerDir),_0x13cd06=_0x3fcabb[_0x1261e9(0x19b)](join,_0x4dc7d7,_0x117b06,_0x1d0c00),_0x321fc4={};if(_0x4e861b['setupHeader'])for(const _0x52c449 of _0x4e861b[_0x1261e9(0x15a)]){const _0x3c2218=_0x52c449['indexOf'](':');if(_0x3fcabb['nKeht'](_0x3c2218,-0x1))throw new Error(_0x1261e9(0x178)+_0x52c449+_0x1261e9(0x1a1));const _0x5d7444=_0x52c449[_0x1261e9(0x152)](0x0,_0x3c2218)[_0x1261e9(0x1b0)](),_0x1c3bce=_0x52c449['slice'](_0x3fcabb['kyxtc'](_0x3c2218,0x1))[_0x1261e9(0x1b0)]();_0x321fc4[_0x5d7444]=_0x1c3bce;}const _0x4edf11=join(_0x4dc7d7,_0x117b06);if(_0x4e861b['cdpEndpoint']!==undefined&&_0x4e861b['cdpEndpoint']['trim']()==='')throw new Error(_0x3fcabb['GyvsV']);if(_0x4e861b[_0x1261e9(0x165)]&&_0x4e861b[_0x1261e9(0x123)])throw new Error(_0x3fcabb['NyNIa']);if(_0x4e861b['cdpEndpoint']&&_0x4e861b['ci'])throw new Error(_0x3fcabb[_0x1261e9(0x14c)]);const _0x2077c4=_0x3fcabb[_0x1261e9(0x171)](Boolean,_0x4e861b['cdpEndpoint']),_0x3b536b=!_0x4e861b[_0x1261e9(0x1ab)]&&!_0x2077c4,_0xd63831=process['stdin']['isTTY']&&process[_0x1261e9(0x191)][_0x1261e9(0x135)];if(!_0xd63831&&!_0x4e861b[_0x1261e9(0x123)]&&!_0x2077c4)throw new Error(_0x3fcabb[_0x1261e9(0x131)]);if(!_0xd2adb0&&!_0x4e861b['skipAuth']&&!_0x2077c4&&_0x4e861b['url']){const _0x1afc16=await tryAutoRouteCloudProfile(_0x1d0c00,_0x4e861b[_0x1261e9(0x123)],_0x4e861b,_0xd63831,_0x59a55d);if(_0x1afc16)return;}const _0x54a16e=_0x3fcabb[_0x1261e9(0x142)](findExistingEnv,_0x1d0c00,{'rangerDir':_0x4dc7d7});let _0x17907d=null;if(_0x54a16e){if(!_0xd63831)_0x17907d=_0x54a16e;else{if(_0x54a16e['location']===_0x117b06){const {overwrite:_0x2417c3}=await _0x5cff3e[_0x1261e9(0x1ae)]([{'type':_0x3fcabb[_0x1261e9(0x17f)],'name':_0x3fcabb[_0x1261e9(0x170)],'message':'Profile\x20\x22'+_0x1d0c00+_0x1261e9(0x187),'default':![]}]);if(!_0x2417c3){console['log'](_0x3fcabb['ZFVit']);return;}_0x17907d=_0x54a16e;}else{const _0x30e16a=_0x3fcabb[_0x1261e9(0x129)](_0x54a16e[_0x1261e9(0x12f)],'legacy')?_0x3fcabb['KugnA']:_0x54a16e['location'];console[_0x1261e9(0x1b6)](_0x1261e9(0x12b)+_0x1d0c00+_0x1261e9(0x194)+_0x30e16a+':\x20'+_0x54a16e[_0x1261e9(0x141)]),console[_0x1261e9(0x1b6)]('\x20\x20\x20Creating\x20it\x20in\x20'+_0x117b06+_0x1261e9(0x143));const {shouldReplace:_0x5d84c7}=await _0x5cff3e['prompt']([{'type':_0x1261e9(0x18d),'name':_0x1261e9(0x1a2),'message':'Delete\x20existing\x20and\x20create\x20new\x20in\x20'+_0x117b06+'?','default':![]}]);if(!_0x5d84c7){console['log'](_0x1261e9(0x147));return;}_0x17907d=_0x54a16e;}}}_0x59a55d?.['trackPhaseStart'](_0x3fcabb[_0x1261e9(0x130)]);let _0x2695ff='';if(_0x2077c4)console['log'](_0x3fcabb['DQYIo']),console['log']('\x20\x20Configuring\x20Ranger\x20to\x20connect\x20to:\x20'+_0x4e861b[_0x1261e9(0x165)]),console['log'](_0x1261e9(0x139));else{if(_0x4e861b['url']){_0x2695ff=_0x4e861b[_0x1261e9(0x123)];const _0x1aa1d0=await checkUrlReachability(_0x2695ff);if(!_0x1aa1d0['ok']&&!_0x4e861b[_0x1261e9(0x1ba)])throw new Error('Could\x20not\x20reach\x20'+_0x2695ff+':\x20'+_0x1aa1d0['error']+_0x1261e9(0x153));!_0x1aa1d0['ok']&&_0x4e861b['force']&&console['log'](_0x1261e9(0x188)+_0x2695ff+':\x20'+_0x1aa1d0[_0x1261e9(0x1b6)]+'\x20(continuing\x20with\x20--force)');}else{console['log'](_0x1261e9(0x196)),console[_0x1261e9(0x13e)](_0x1261e9(0x164)),console['log']('\x20\x20Ranger\x20will\x20open\x20it\x20in\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20and\x20save\x20your\x20session.\x0a');let _0x3b4ca7=![];while(!![]){const _0x58712e=await _0x5cff3e['prompt']([{'type':_0x1261e9(0x14a),'name':_0x3fcabb['zYxzJ'],'message':_0x3b4ca7?_0x1261e9(0x163):_0x3fcabb['wzoRi'],'default':_0x2695ff||_0x1261e9(0x149)}]);_0x2695ff=_0x58712e[_0x1261e9(0x1a4)];const _0xca2f75=await checkUrlReachability(_0x2695ff);if(_0xca2f75['ok'])break;const _0x55c561=/^[a-zA-Z][\w+.-]*:\/\//[_0x1261e9(0x15f)](_0x2695ff),_0x19bbfe=_0xca2f75[_0x1261e9(0x150)]&&!_0x55c561,_0x367007=_0x19bbfe?_0x1261e9(0x12e)+_0x2695ff:null;_0x3b4ca7=!![],console['log']('\x0a\x20\x20Could\x20not\x20reach\x20'+_0x2695ff+':\x20'+_0xca2f75[_0x1261e9(0x1b6)]);_0x367007&&console['log'](_0x1261e9(0x18f)+_0x367007+'?');const {action:_0x46c5e4}=await _0x5cff3e['prompt']([{'type':_0x3fcabb['znQuK'],'name':_0x3fcabb[_0x1261e9(0x15b)],'message':'What\x20would\x20you\x20like\x20to\x20do?','choices':[..._0x367007?[{'name':'Use\x20'+_0x367007,'value':_0x3fcabb[_0x1261e9(0x132)]}]:[],{'name':_0x3fcabb[_0x1261e9(0x155)],'value':_0x1261e9(0x1b2)},{'name':'Continue\x20anyway','value':_0x3fcabb[_0x1261e9(0x174)]}]}]);if(_0x3fcabb['nKeht'](_0x46c5e4,_0x3fcabb[_0x1261e9(0x132)])&&_0x367007){_0x2695ff=_0x367007;const _0xda6b07=await _0x3fcabb['hfrEd'](checkUrlReachability,_0x2695ff);if(_0xda6b07['ok'])break;console[_0x1261e9(0x13e)]('\x0a\x20\x20Still\x20could\x20not\x20reach\x20'+_0x2695ff+':\x20'+_0xda6b07['error']);}else{if(_0x46c5e4==='continue')break;}}}}_0x59a55d?.['trackPhaseEnd']('url_setup');const _0x552090={};if(_0x17907d){const _0x42c12f=await loadSettings(_0x1d0c00);Object['assign'](_0x552090,_0x42c12f['setupHeaders']);}Object['assign'](_0x552090,_0x321fc4),await mkdir(_0x4edf11,{'recursive':!![]});try{const _0x3906c8=await _0x3fcabb['hfrEd'](readdir,_0x4edf11),_0x55c987=_0x1261e9(0x17b)+_0x1d0c00+'-';for(const _0x42cdfa of _0x3906c8){_0x42cdfa['startsWith'](_0x55c987)&&await _0x3fcabb['NJVhr'](rm,_0x3fcabb[_0x1261e9(0x142)](join,_0x4edf11,_0x42cdfa),{'recursive':!![],'force':!![]});}}catch{}const _0x4e845d=await mkdtemp(join(_0x4edf11,_0x1261e9(0x17b)+_0x1d0c00+'-')),_0x306f06=join(_0x4e845d,_0x3fcabb[_0x1261e9(0x1b8)]),_0x45197c=()=>{const _0x1ac7c7=_0x1261e9;_0x3fcabb['RxwYR'](rm,_0x4e845d,{'recursive':!![],'force':!![]})[_0x1ac7c7(0x19c)](()=>{})[_0x1ac7c7(0x144)](()=>{process['exit'](0x82);});};process[_0x1261e9(0x19a)](_0x1261e9(0x18b),_0x45197c);const _0x54c705=_0x3fcabb['hfrEd'](Boolean,_0x2695ff)&&/^https:\/\/localhost(:\d+)?/i[_0x1261e9(0x15f)](_0x2695ff);try{if(_0x3b536b){_0x59a55d?.['trackPhaseStart'](_0x3fcabb['zphxL']),console[_0x1261e9(0x13e)](_0x3fcabb[_0x1261e9(0x19e)]),console['log']('\x20\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20to\x20the\x20profile\x20you\x20want\x20to\x20test\x20so\x20Ranger\x20can\x20access\x20it.'),console['log'](_0x3fcabb[_0x1261e9(0x179)]);!_0xd63831?(console[_0x1261e9(0x13e)]('\x0a\x20\x20\x20⚠\x20This\x20step\x20requires\x20human\x20interaction\x20in\x20a\x20browser.'),console['log']('\x20\x20\x20If\x20you\x20are\x20an\x20agent,\x20background\x20this\x20process\x20and\x20let\x20your\x20user\x20know\x20they\x20need\x20to\x20complete\x20browser\x20authentication.\x0a')):console['log']('');await new Promise(_0x20bec6=>setTimeout(_0x20bec6,0xbb8));const _0x55ef4e=[];_0x4e861b['safeMode']&&_0x55ef4e[_0x1261e9(0x19f)]('--disable-features=WebBluetooth');const _0x502788=_0x4e861b[_0x1261e9(0x19d)]||_0x54c705;_0x502788&&_0x55ef4e[_0x1261e9(0x19f)](_0x3fcabb['dJcTf']);const _0x27477c=await chromium[_0x1261e9(0x1a5)]({'headless':![],..._0x3fcabb['SwNHS'](_0x55ef4e[_0x1261e9(0x184)],0x0)?{'args':_0x55ef4e}:{}});try{const _0x4ee97c=Object['keys'](_0x552090)[_0x1261e9(0x184)]>0x0,_0x2a6fa0={'ignoreHTTPSErrors':!![]};_0x4ee97c&&(_0x2a6fa0['extraHTTPHeaders']=_0x552090);const _0x201e5a=await _0x27477c[_0x1261e9(0x17e)](_0x2a6fa0);await addProfileSetupBanner(_0x201e5a);const _0x173da1=await _0x201e5a['newPage']();await _0x173da1[_0x1261e9(0x133)](_0x3fcabb['VaKLZ'](_0x2695ff,_0x1261e9(0x160)));let _0x359ef7=![];await new Promise(_0xc26126=>{const _0x45349b=_0x1261e9,_0x466642={'aVwoc':_0x45349b(0x177)};_0x173da1['on'](_0x3fcabb['flSKa'],async()=>{const _0x571dbd=_0x45349b;try{console[_0x571dbd(0x13e)](_0x466642['aVwoc']),await _0x201e5a[_0x571dbd(0x197)]({'path':_0x306f06}),_0x359ef7=!![];}catch{}_0xc26126();});});if(!_0x359ef7){console['log'](_0x3fcabb['yhTJX']);!_0x4e861b[_0x1261e9(0x14d)]&&(console[_0x1261e9(0x13e)]('This\x20can\x20happen\x20due\x20to\x20a\x20browser\x20compatibility\x20issue\x20on\x20some\x20systems.\x0a'),console[_0x1261e9(0x13e)](_0x3fcabb['vBNfs']),console['log'](_0x1261e9(0x181)+_0x1d0c00+_0x1261e9(0x190)),console[_0x1261e9(0x13e)]('\x20\x20ranger\x20profile\x20add\x20'+_0x1d0c00+_0x1261e9(0x16c)));throw new Error(_0x3fcabb[_0x1261e9(0x15e)]);}}finally{await _0x27477c[_0x1261e9(0x1a3)]()['catch'](()=>{});}if(_0xd2adb0){const _0x2d3f51=await _0x3fcabb[_0x1261e9(0x13d)](readFile,_0x306f06,_0x3fcabb[_0x1261e9(0x180)]),_0x56fe1f=await _0x3fcabb[_0x1261e9(0x17c)](getToken);if(!_0x56fe1f){console[_0x1261e9(0x1b6)](_0x3fcabb[_0x1261e9(0x176)]),await _0x3fcabb['Khocr'](unlink,_0x306f06)[_0x1261e9(0x19c)](()=>{});throw new Error(_0x3fcabb[_0x1261e9(0x1bc)]);}else{const _0x766aff=encrypt(_0x2d3f51,_0x56fe1f);await _0x3fcabb['iQdEO'](writeFile,_0x306f06+_0x3fcabb[_0x1261e9(0x189)],_0x766aff),await _0x3fcabb['hfrEd'](unlink,_0x306f06),console[_0x1261e9(0x13e)](_0x1261e9(0x13b)+_0x306f06+'.enc'),console[_0x1261e9(0x13e)](_0x1261e9(0x168)),console[_0x1261e9(0x13e)](_0x3fcabb['gsZnl']);}}else console['log']('✓\x20Auth\x20state\x20saved\x20to:\x20'+_0x306f06);_0x59a55d?.[_0x1261e9(0x1a0)](_0x3fcabb[_0x1261e9(0x1a8)]);}_0x59a55d?.['trackPhaseStart'](_0x3fcabb['sRylC']);const _0x169aab={};_0x2695ff&&(_0x169aab['baseUrl']=_0x2695ff);_0x4e861b['cdpEndpoint']&&(_0x169aab['cdpEndpoint']=_0x4e861b['cdpEndpoint'],_0x169aab['isElectron']=!![]);(_0x4e861b[_0x1261e9(0x19d)]||_0x54c705)&&(_0x169aab['allowInsecureLocalhost']=!![]);_0x4e861b[_0x1261e9(0x14d)]&&(_0x169aab[_0x1261e9(0x14d)]=!![]);Object[_0x1261e9(0x137)](_0x552090)['length']>0x0&&(_0x169aab[_0x1261e9(0x127)]=_0x552090);await _0x3fcabb['PKzMc'](writeFile,join(_0x4e845d,_0x3fcabb[_0x1261e9(0x122)]),JSON[_0x1261e9(0x1b5)](_0x169aab,null,0x2)),console['log']('✓\x20Created\x20settings:\x20'+join(_0x13cd06,_0x3fcabb['Rfitf']));if(_0x3fcabb['GpBVR'](_0x17907d?.['location'],_0x117b06)){const _0x470d46=_0x17907d['path']+'.backup-'+Date[_0x1261e9(0x185)]();await rename(_0x17907d[_0x1261e9(0x141)],_0x470d46);try{await rename(_0x4e845d,_0x13cd06);}catch(_0x182a05){await _0x3fcabb['IOVCw'](rename,_0x470d46,_0x17907d['path']);throw _0x182a05;}try{await _0x3fcabb[_0x1261e9(0x13d)](rm,_0x470d46,{'recursive':!![]});}catch{console[_0x1261e9(0x13e)](_0x1261e9(0x18a)+_0x470d46);}}else{await _0x3fcabb[_0x1261e9(0x1a9)](rename,_0x4e845d,_0x13cd06);if(_0x17907d)try{await rm(_0x17907d[_0x1261e9(0x141)],{'recursive':!![]}),console[_0x1261e9(0x13e)]('Removed\x20existing\x20profile\x20at\x20'+_0x17907d['path']);}catch{console[_0x1261e9(0x13e)]('Warning:\x20Could\x20not\x20remove\x20old\x20profile\x20at\x20'+_0x17907d[_0x1261e9(0x141)]);}}try{await _0x3fcabb[_0x1261e9(0x16e)](writeActiveProfileName,_0x1d0c00),console['log'](_0x1261e9(0x134)+_0x1d0c00);}catch{console['log'](_0x3fcabb['SIySV']);}_0x59a55d?.['trackPhaseEnd'](_0x3fcabb['sRylC']),console['log']('\x0a\x20\x20Profile\x20\x22'+_0x1d0c00+_0x1261e9(0x16f));}catch(_0x53231e){await _0x3fcabb[_0x1261e9(0x13c)](rm,_0x4e845d,{'recursive':!![],'force':!![]});throw _0x53231e;}finally{process[_0x1261e9(0x15d)](_0x1261e9(0x18b),_0x45197c);}}
1
+ (function(_0x34bd36,_0x1607c2){const _0x380f96=_0x45f1,_0x4cd214=_0x34bd36();while(!![]){try{const _0x404193=-parseInt(_0x380f96(0x1ed))/0x1+-parseInt(_0x380f96(0x1eb))/0x2+-parseInt(_0x380f96(0x1ae))/0x3+parseInt(_0x380f96(0x1d8))/0x4+-parseInt(_0x380f96(0x1f5))/0x5*(-parseInt(_0x380f96(0x1b4))/0x6)+parseInt(_0x380f96(0x1b5))/0x7*(-parseInt(_0x380f96(0x1e2))/0x8)+parseInt(_0x380f96(0x1a3))/0x9*(parseInt(_0x380f96(0x1f2))/0xa);if(_0x404193===_0x1607c2)break;else _0x4cd214['push'](_0x4cd214['shift']());}catch(_0x2801d3){_0x4cd214['push'](_0x4cd214['shift']());}}}(_0x5b4d,0xb7f0a));import{readdir,rm}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x52d1d1 from'inquirer';import{getRangerDir,getRangerHomeDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{fetchAuthConfig,createCloudProfile,ApiError}from'./utils/cloudProfile.js';import{matchAuthEnvironment}from'./utils/matchAuthEnvironment.js';function _0x5b4d(){const _0x263f3c=['keys','baseUrl','rjLhV','Invalid\x20--setup-header\x20format:\x20\x22','1169454weDMDr','qLLub','1037653RptqXu','yudco','What\x20would\x20you\x20like\x20to\x20do?','length','slice','1876720DGmrjX','list','env','5425sqTFIF','join','trim','\x0a\x20\x20Cloud\x20profile\x20created,\x20but\x20failed\x20to\x20write\x20per-cwd\x20CDP\x20override\x20to\x20projects.json:\x20','\x0a\x20\x20This\x20org\x20has\x20no\x20cloud-profile\x20auth\x20config\x20configured.\x20Ask\x20an\x20admin\x20to\x20set\x20one\x20up,\x20or\x20pass\x20--skip-auth\x20to\x20create\x20a\x20profile\x20without\x20a\x20session.','QlXjG','cdpEndpoint','includes','cggSY','trackPhaseEnd','Continue\x20anyway','ntmdD','mfcbW','.\x20Configured\x20envs:\x20','\x27\x20to\x20the\x20cloud?','\x20\x20Next:\x20RANGER_TEST_USERNAME=...\x20RANGER_TEST_PASSWORD=...\x20ranger\x20go\x20--profile\x20','Found\x20auth\x20environment\x20\x27','log','message','url','no_auth_config','test','72tRjjIp','environments','\x20\x20Did\x20you\x20mean\x20','NODE_TLS_REJECT_UNAUTHORIZED','\x20\x20Note:\x20found\x20git-tracked\x20local\x20profile\x20at\x20','KHEUT','HEAD','RnzgR','\x20—\x20not\x20removing.\x20Delete\x20manually\x20if\x20you\x20want\x20it\x20gone.','Invalid\x20URL','\x20\x20Cleaned\x20up\x20orphan\x20local\x20profile\x20at\x20','1280265CHGMCe','Use\x20','prompt','YZePV','profile.add.autoRouteSkipped','XMIvm','8160DuqumA','553VivaJO','BEfcN','jtppS','✓\x20Cloud\x20profile\x20\x27','umrFe','\x27\x20matching\x20','LjMNm','--cdp-endpoint\x20must\x20not\x20be\x20empty.\x20Provide\x20the\x20CDP\x20URL,\x20e.g.\x20--cdp-endpoint\x20http://localhost:9222','sdrMw','continue','--url\x20and\x20--cdp-endpoint\x20are\x20mutually\x20exclusive.\x20Use\x20--url\x20for\x20web\x20apps\x20or\x20--cdp-endpoint\x20for\x20Electron/CDP\x20apps,\x20not\x20both.','\x27\x20created\x20with\x20no\x20session.\x0a','NJYbn','indexOf','HTTP\x20','SyWZD','error','ranger\x20profile\x20add\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','udwQP','See:\x20docs/feature/cloud-profiles-old-vs-new-structure.md','.tmp-','retry','CHpJs','isTTY','setupHeaders','\x0a\x20\x20No\x20auth\x20env\x20matches\x20','cwd','What\x20is\x20the\x20URL\x20of\x20your\x20running\x20app?','\x20\x20\x20\x20\x20\x20\x20\x20to\x20materialize\x20a\x20session\x20via\x20server-side\x20login.','origin','PAQeI','\x0a\x20\x20Could\x20not\x20reach\x20','status','vRtOw','use_suggestion','3911484XElAqU','exit','FdbNy','Please\x20provide\x20--url\x20when\x20running\x20in\x20non-interactive\x20mode.\x0aMake\x20sure\x20the\x20service\x20is\x20running\x20on\x20that\x20port\x20before\x20retrying.\x0aExample:\x20ranger\x20profile\x20add\x20local\x20--url\x20http://localhost:3000','force','iAiUY','saveToCloud','manual','stdin','no_match','116688cCcMXM','\x20\x20\x20\x20\x20\x20\x20\x20`ranger\x20go\x20--profile\x20','OVboi',')\x0a\x20\x20Save\x20\x27','stdout'];_0x5b4d=function(){return _0x263f3c;};return _0x5b4d();}import{isPathGitTracked}from'./utils/gitTracked.js';import{setProfileOverride}from'./utils/projectsConfig.js';async function checkUrlReachability(_0x20677a){const _0x30dffa=_0x45f1,_0x549f2f={'IYaxu':function(_0x26a658,_0x4bd78b,_0x5c24db){return _0x26a658(_0x4bd78b,_0x5c24db);},'lcMQI':function(_0x5fdd4f,_0x4a03fb){return _0x5fdd4f<_0x4a03fb;},'QlXjG':function(_0x513055,_0x242475){return _0x513055(_0x242475);},'jxnKP':function(_0x392dae,_0x11edc2){return _0x392dae===_0x11edc2;},'FdbNy':'TypeError','wmlPG':'fetch\x20failed'};try{const _0x5df856=new AbortController(),_0x369102=setTimeout(()=>_0x5df856['abort'](),0x1388),_0x30fc4b={'method':_0x30dffa(0x1a9),'signal':_0x5df856['signal'],'redirect':_0x30dffa(0x1df)};/^https:\/\/localhost(:\d+)?/i['test'](_0x20677a)&&(process['env'][_0x30dffa(0x1a6)]='0');const _0x18f16c=await _0x549f2f['IYaxu'](fetch,_0x20677a,_0x30fc4b);delete process[_0x30dffa(0x1f4)][_0x30dffa(0x1a6)],clearTimeout(_0x369102);if(_0x549f2f['lcMQI'](_0x18f16c['status'],0x190))return{'ok':!![]};return{'ok':![],'error':_0x30dffa(0x1c3)+_0x18f16c[_0x30dffa(0x1d5)]};}catch(_0x2fc65a){delete process['env'][_0x30dffa(0x1a6)];const _0x2a8907=_0x2fc65a,_0x4005f0=_0x2a8907['message']||_0x549f2f[_0x30dffa(0x192)](String,_0x2fc65a),_0x171725=_0x4005f0[_0x30dffa(0x194)](_0x30dffa(0x1ac))||_0x549f2f['jxnKP'](_0x2a8907['name'],_0x549f2f[_0x30dffa(0x1da)])||_0x4005f0[_0x30dffa(0x194)](_0x549f2f['wmlPG']);return{'ok':![],'error':_0x4005f0,'isProtocolError':_0x171725};}}function _0x45f1(_0x3026b8,_0x29a56a){_0x3026b8=_0x3026b8-0x190;const _0x5b4d8a=_0x5b4d();let _0x45f15e=_0x5b4d8a[_0x3026b8];return _0x45f15e;}async function sweepOrphanLocalProfile(_0x388f3a,_0x3f2196,_0x2e33bf){const _0x30d289=_0x45f1,_0x483b31={'KHEUT':'local','vRtOw':function(_0x5c9129,_0x1b79a7){return _0x5c9129(_0x1b79a7);},'MGqYi':function(_0x419c16,_0x411a73){return _0x419c16(_0x411a73);},'ukvVo':function(_0x48bed6,_0x47c6f9,_0x22470d){return _0x48bed6(_0x47c6f9,_0x22470d);}},_0x30cb36=join(_0x3f2196,_0x483b31[_0x30d289(0x1a8)]),_0x463681=join(_0x30cb36,_0x388f3a);existsSync(_0x463681)&&(_0x2e33bf&&await _0x483b31['vRtOw'](isPathGitTracked,_0x463681)?console['log'](_0x30d289(0x1a7)+_0x463681+_0x30d289(0x1ab)):(await rm(_0x463681,{'recursive':!![],'force':!![]}),console['log'](_0x30d289(0x1ad)+_0x463681)));if(_0x483b31['MGqYi'](existsSync,_0x30cb36)){let _0x2c1078=[];try{_0x2c1078=await _0x483b31[_0x30d289(0x1d6)](readdir,_0x30cb36);}catch{return;}const _0x4cba1c=_0x30d289(0x1c9)+_0x388f3a+'-';for(const _0x3ba938 of _0x2c1078){if(!_0x3ba938['startsWith'](_0x4cba1c))continue;const _0x3e43d7=_0x483b31['ukvVo'](join,_0x30cb36,_0x3ba938);await rm(_0x3e43d7,{'recursive':!![],'force':!![]}),console['log'](_0x30d289(0x1ad)+_0x3e43d7);}}}async function sweepOrphansBestEffort(_0x22f1da){const _0x5c8254=_0x45f1,_0x2191d3={'iXnUy':function(_0x53ac7e,_0x5c54bd,_0x2f7017,_0xe2df5f){return _0x53ac7e(_0x5c54bd,_0x2f7017,_0xe2df5f);},'NmPdt':function(_0x475f61){return _0x475f61();},'MmuYT':function(_0x102073){return _0x102073();},'qLLub':function(_0x1f214b,_0x2f9b9c){return _0x1f214b instanceof _0x2f9b9c;}};try{await _0x2191d3['iXnUy'](sweepOrphanLocalProfile,_0x22f1da,_0x2191d3['NmPdt'](getRangerHomeDir),![]);const _0x560fe1=_0x2191d3['NmPdt'](getRangerDir);_0x560fe1!==_0x2191d3['MmuYT'](getRangerHomeDir)&&await sweepOrphanLocalProfile(_0x22f1da,_0x560fe1,!![]);}catch(_0x26e04d){console['log']('\x20\x20Note:\x20cloud\x20profile\x20created,\x20but\x20failed\x20to\x20sweep\x20orphan\x20local\x20dirs\x20('+(_0x2191d3[_0x5c8254(0x1ec)](_0x26e04d,Error)?_0x26e04d[_0x5c8254(0x19f)]:String(_0x26e04d))+').');}}async function markActive(_0x4d86a9){const _0xe7d7df=_0x45f1;try{await writeActiveProfileName(_0x4d86a9),console['log']('\x20\x20Set\x20active\x20profile:\x20'+_0x4d86a9);}catch{console[_0xe7d7df(0x19e)]('Warning:\x20Profile\x20created,\x20but\x20failed\x20to\x20mark\x20it\x20as\x20active.');}}async function tryAutoRouteCloudProfile(_0x103ca3,_0x3446af,_0x14b8a4,_0x9199d7,_0x4e0463){const _0x3d98bd=_0x45f1,_0x5d8057={'XMIvm':function(_0xa380af,_0x412a97){return _0xa380af===_0x412a97;},'udwQP':_0x3d98bd(0x1a1),'RnzgR':function(_0x3e14ee,_0x21c732){return _0x3e14ee instanceof _0x21c732;},'iAiUY':function(_0xab1332,_0x317abf){return _0xab1332(_0x317abf);},'sdrMw':_0x3d98bd(0x191),'eOZOn':function(_0x16c26a,_0x1c90a5,_0x146cc9){return _0x16c26a(_0x1c90a5,_0x146cc9);},'zqpUt':_0x3d98bd(0x1b2),'Tyaxi':'confirm','ZTeSp':'\x0a\x20\x20Declined.\x20Re-run\x20with\x20--skip-auth\x20to\x20create\x20a\x20profile\x20without\x20a\x20cloud-managed\x20session.','yiIfI':function(_0x2a6310,_0x495081,_0xdd4771,_0x23030b){return _0x2a6310(_0x495081,_0xdd4771,_0x23030b);},'zlRtn':function(_0xd46053,_0x599924){return _0xd46053===_0x599924;},'etniu':function(_0x21e8bd,_0x52a36f){return _0x21e8bd+_0x52a36f;},'IpBaT':function(_0x14441a,_0xbff376){return _0x14441a(_0xbff376);},'WJQOh':'profile.add.autoRouted'};let _0xef8bb1;try{_0xef8bb1=await fetchAuthConfig();}catch(_0x590238){return _0x4e0463?.['trackPhaseEnd']('profile.add.autoRouteSkipped',{'reason':_0x5d8057['udwQP'],'profileName':_0x103ca3}),console['error']('\x0a\x20\x20Could\x20not\x20fetch\x20this\x20org\x27s\x20auth\x20config:\x20'+(_0x5d8057['RnzgR'](_0x590238,Error)?_0x590238[_0x3d98bd(0x19f)]:_0x5d8057[_0x3d98bd(0x1dd)](String,_0x590238))),![];}if(!_0xef8bb1||!_0xef8bb1[_0x3d98bd(0x1a4)]||Object['keys'](_0xef8bb1['environments'])[_0x3d98bd(0x1f0)]===0x0)return _0x4e0463?.['trackPhaseEnd'](_0x3d98bd(0x1b2),{'reason':_0x5d8057[_0x3d98bd(0x1c7)],'profileName':_0x103ca3}),console['error'](_0x5d8057[_0x3d98bd(0x1bd)]),![];const _0x23a9cc=_0x5d8057['eOZOn'](matchAuthEnvironment,_0x3446af,_0xef8bb1);if(!_0x23a9cc)return _0x4e0463?.['trackPhaseEnd'](_0x5d8057['zqpUt'],{'reason':_0x3d98bd(0x1e1),'profileName':_0x103ca3}),console[_0x3d98bd(0x1c5)](_0x3d98bd(0x1ce)+_0x3446af+_0x3d98bd(0x19a)+Object['keys'](_0xef8bb1[_0x3d98bd(0x1a4)])[_0x3d98bd(0x1f6)](',\x20')+'.'),![];const _0x3795a6=_0xef8bb1['environments'][_0x23a9cc],_0x13c650=_0x3795a6?.['domains']??[];if(_0x9199d7&&!_0x14b8a4['yes']){const {saveToCloud:_0x2cb35f}=await _0x52d1d1['prompt']([{'type':_0x5d8057['Tyaxi'],'name':_0x3d98bd(0x1de),'message':_0x3d98bd(0x19d)+_0x23a9cc+_0x3d98bd(0x1ba)+_0x3446af+'\x0a\x20\x20(domains:\x20'+_0x13c650[_0x3d98bd(0x1f6)](',\x20')+_0x3d98bd(0x1e5)+_0x103ca3+_0x3d98bd(0x19b),'default':!![]}]);if(!_0x2cb35f)return _0x4e0463?.[_0x3d98bd(0x196)](_0x3d98bd(0x1b2),{'reason':'user_declined','profileName':_0x103ca3}),console[_0x3d98bd(0x1c5)](_0x5d8057['ZTeSp']),![];}const _0x4fff3e=_0x13c650['some'](_0x3e59a0=>{const _0x38da62=_0x3d98bd;try{return _0x5d8057[_0x38da62(0x1b3)](new URL(_0x3e59a0)['origin'],new URL(_0x3446af)[_0x38da62(0x1d2)]);}catch{return![];}}),_0x28e09a={};!_0x4fff3e&&(_0x28e09a['baseUrl']=_0x3446af);try{await _0x5d8057['yiIfI'](createCloudProfile,_0x103ca3,_0x23a9cc,{'settings':_0x28e09a});}catch(_0x39953f){if(_0x5d8057[_0x3d98bd(0x1aa)](_0x39953f,ApiError)&&_0x5d8057['zlRtn'](_0x39953f['status'],0x199)){console['error']('\x0a\x20\x20A\x20cloud\x20profile\x20named\x20\x22'+_0x103ca3+'\x22\x20already\x20exists.\x20Choose\x20a\x20different\x20name\x20or\x20delete\x20the\x20existing\x20profile\x20first.');throw _0x39953f;}throw _0x39953f;}return console['log'](_0x5d8057['etniu']('✓\x20Cloud\x20profile\x20\x27'+_0x103ca3+'\x27\x20created,\x20linked\x20to\x20env\x20\x27'+_0x23a9cc+'\x27.\x0a',_0x3d98bd(0x19c)+_0x103ca3)),await _0x5d8057['IpBaT'](sweepOrphansBestEffort,_0x103ca3),_0x4e0463?.['trackPhaseEnd'](_0x5d8057['WJQOh'],{'envKey':_0x23a9cc,'profileName':_0x103ca3}),!![];}async function createUnconfiguredCloudProfile(_0x44548d,_0x4092ab){const _0x45fd45=_0x45f1,_0x55479c={'yVjux':function(_0x3d9d9c,_0x9e3281){return _0x3d9d9c instanceof _0x9e3281;}};try{await createCloudProfile(_0x44548d,undefined,{'settings':_0x4092ab});}catch(_0x3c5964){_0x55479c['yVjux'](_0x3c5964,ApiError)&&_0x3c5964[_0x45fd45(0x1d5)]===0x199&&console['error']('\x0a\x20\x20A\x20cloud\x20profile\x20named\x20\x22'+_0x44548d+'\x22\x20already\x20exists.\x20Choose\x20a\x20different\x20name\x20or\x20delete\x20the\x20existing\x20profile\x20first.');throw _0x3c5964;}}export async function addEnv(_0x4366ba,_0x1f160d={},_0x1e729b){const _0x2f243c=_0x45f1,_0x1ff968={'PAQeI':function(_0x497ef3,_0x223f90){return _0x497ef3+_0x223f90;},'WGdbf':_0x2f243c(0x1c6),'YZePV':'Cloud\x20profiles\x20store\x20session\x20state\x20server-side;\x20the\x20--ci\x20flag\x20is\x20gone.\x0a','esoWM':'\x20\x20RANGER_TEST_USERNAME=...\x20RANGER_TEST_PASSWORD=...\x20ranger\x20go\x20--base-url\x20<url>\x0a','LjMNm':'For\x20a\x20shared\x20cloud\x20profile:\x20ranger\x20profile\x20add\x20<account-email>\x0a','xwfUB':_0x2f243c(0x1c8),'cggSY':function(_0x807bcb,_0x454f72){return _0x807bcb===_0x454f72;},'yudco':function(_0x2b31bf,_0x512589){return _0x2b31bf+_0x512589;},'fFvTB':_0x2f243c(0x1db),'WtTUo':'\x0a🔌\x20CDP\x20Profile\x20Setup\x0a','OVboi':function(_0x9be1f,_0x2c7133){return _0x9be1f>_0x2c7133;},'CHpJs':function(_0x121146,_0x2b124b,_0x286d2d){return _0x121146(_0x2b124b,_0x286d2d);},'uSDfI':function(_0x53528d,_0x17a4a5,_0x350a45,_0x54b3c4,_0x453edf){return _0x53528d(_0x17a4a5,_0x350a45,_0x54b3c4,_0x453edf);},'dDLtf':'cdpEndpoint','SyWZD':'isElectron','wdNBm':function(_0x419f35,_0x44e5a8){return _0x419f35(_0x44e5a8);},'NCGKP':'input','jtppS':'baseUrl','VwVgn':_0x2f243c(0x1d0),'ijiPh':'http://localhost:3000','umrFe':function(_0x2c2042,_0x515cff){return _0x2c2042(_0x515cff);},'BEfcN':_0x2f243c(0x1d7),'aBBAx':'Enter\x20a\x20different\x20URL','dXGGo':_0x2f243c(0x1ca),'SlTih':_0x2f243c(0x197),'rjLhV':function(_0x5d6897,_0x33cf36){return _0x5d6897(_0x33cf36);},'NJYbn':function(_0x33df70,_0xbd7e1c){return _0x33df70===_0xbd7e1c;},'vLeWX':_0x2f243c(0x1be),'ntmdD':function(_0x3a0f86,_0x1ab8b0){return _0x3a0f86 instanceof _0x1ab8b0;},'mfcbW':function(_0x7381f8,_0x1b1f7b){return _0x7381f8(_0x1b1f7b);}};_0x1f160d['ci']&&(console[_0x2f243c(0x1c5)](_0x1ff968['PAQeI'](_0x1ff968[_0x2f243c(0x1d3)](_0x1ff968['WGdbf']+_0x1ff968[_0x2f243c(0x1b1)],'Use\x20the\x20new\x20flow:\x0a')+_0x1ff968['esoWM']+_0x1ff968[_0x2f243c(0x1bb)],_0x1ff968['xwfUB'])),process['exit'](0x1));const _0xd3ff29={};if(_0x1f160d['setupHeader'])for(const _0x511170 of _0x1f160d['setupHeader']){const _0x3f23a8=_0x511170[_0x2f243c(0x1c2)](':');if(_0x1ff968[_0x2f243c(0x195)](_0x3f23a8,-0x1))throw new Error(_0x2f243c(0x1ea)+_0x511170+'\x22.\x20Expected\x20\x22Name:\x20Value\x22.');const _0x334813=_0x511170[_0x2f243c(0x1f1)](0x0,_0x3f23a8)[_0x2f243c(0x1f7)](),_0x3e6478=_0x511170[_0x2f243c(0x1f1)](_0x1ff968[_0x2f243c(0x1ee)](_0x3f23a8,0x1))[_0x2f243c(0x1f7)]();_0xd3ff29[_0x334813]=_0x3e6478;}if(_0x1f160d[_0x2f243c(0x193)]!==undefined&&_0x1f160d['cdpEndpoint']['trim']()==='')throw new Error(_0x2f243c(0x1bc));if(_0x1f160d[_0x2f243c(0x193)]&&_0x1f160d[_0x2f243c(0x1a0)])throw new Error(_0x2f243c(0x1bf));const _0x2fbd4b=Boolean(_0x1f160d[_0x2f243c(0x193)]),_0x4d7466=process[_0x2f243c(0x1e0)][_0x2f243c(0x1cc)]&&process[_0x2f243c(0x1e6)][_0x2f243c(0x1cc)];if(!_0x4d7466&&!_0x1f160d['url']&&!_0x2fbd4b&&!_0x1f160d['skipAuth'])throw new Error(_0x1ff968['fFvTB']);if(_0x2fbd4b){const _0x342833=_0x1f160d['cdpEndpoint'];console['log'](_0x1ff968['WtTUo']),console[_0x2f243c(0x19e)]('\x20\x20Configuring\x20Ranger\x20to\x20connect\x20to:\x20'+_0x342833);const _0x11008e={'cdpEndpoint':_0x342833,'isElectron':!![]};_0x1ff968[_0x2f243c(0x1e4)](Object['keys'](_0xd3ff29)[_0x2f243c(0x1f0)],0x0)&&(_0x11008e['setupHeaders']=_0xd3ff29);await _0x1ff968[_0x2f243c(0x1cb)](createUnconfiguredCloudProfile,_0x4366ba,_0x11008e);try{_0x1ff968['uSDfI'](setProfileOverride,process['cwd'](),_0x4366ba,_0x1ff968['dDLtf'],_0x342833),setProfileOverride(process[_0x2f243c(0x1cf)](),_0x4366ba,_0x1ff968[_0x2f243c(0x1c4)],!![]);}catch(_0x37516a){console['error'](_0x2f243c(0x190)+(_0x37516a instanceof Error?_0x37516a['message']:_0x1ff968['wdNBm'](String,_0x37516a)));}console[_0x2f243c(0x19e)]('✓\x20Cloud\x20profile\x20\x27'+_0x4366ba+'\x27\x20created\x20(CDP).'),await sweepOrphansBestEffort(_0x4366ba),await markActive(_0x4366ba);return;}if(_0x1f160d['skipAuth']){const _0x125e94={};_0x1f160d[_0x2f243c(0x1a0)]&&(_0x125e94[_0x2f243c(0x1e8)]=_0x1f160d[_0x2f243c(0x1a0)]);Object[_0x2f243c(0x1e7)](_0xd3ff29)[_0x2f243c(0x1f0)]>0x0&&(_0x125e94[_0x2f243c(0x1cd)]=_0xd3ff29);await _0x1ff968[_0x2f243c(0x1cb)](createUnconfiguredCloudProfile,_0x4366ba,_0x125e94),console['log'](_0x2f243c(0x1b8)+_0x4366ba+_0x2f243c(0x1c0)+'\x20\x20Next:\x20set\x20RANGER_TEST_USERNAME\x20/\x20RANGER_TEST_PASSWORD\x20and\x20run\x0a'+(_0x2f243c(0x1e3)+_0x4366ba+'`\x0a')+_0x2f243c(0x1d1)),await sweepOrphansBestEffort(_0x4366ba),await markActive(_0x4366ba);return;}if(_0x1f160d[_0x2f243c(0x1a0)]){const _0x16771c=_0x1f160d['url'],_0x394aa1=await checkUrlReachability(_0x16771c);if(!_0x394aa1['ok']&&!_0x1f160d[_0x2f243c(0x1dc)])throw new Error('Could\x20not\x20reach\x20'+_0x16771c+':\x20'+_0x394aa1[_0x2f243c(0x1c5)]+'\x0aMake\x20sure\x20your\x20app\x20is\x20running,\x20then\x20try\x20again.\x20To\x20skip\x20this\x20check,\x20pass\x20--force.');!_0x394aa1['ok']&&_0x1f160d[_0x2f243c(0x1dc)]&&console['log']('⚠\x20Could\x20not\x20reach\x20'+_0x16771c+':\x20'+_0x394aa1[_0x2f243c(0x1c5)]+'\x20(continuing\x20with\x20--force)');}else{console[_0x2f243c(0x19e)]('\x0a🌐\x20Profile\x20Setup\x0a'),console[_0x2f243c(0x19e)]('\x20\x20Make\x20sure\x20your\x20app\x20is\x20running\x20locally\x20before\x20continuing.'),console['log']('\x20\x20Ranger\x20will\x20use\x20it\x20to\x20look\x20up\x20the\x20right\x20cloud\x20auth\x20env\x20to\x20attach.\x0a');let _0x4d8a91='',_0x973161=![];while(!![]){const _0x3e95fb=await _0x52d1d1['prompt']([{'type':_0x1ff968['NCGKP'],'name':_0x1ff968[_0x2f243c(0x1b7)],'message':_0x973161?'Enter\x20a\x20new\x20URL\x20(or\x20press\x20enter\x20to\x20keep\x20current):':_0x1ff968['VwVgn'],'default':_0x4d8a91||_0x1ff968['ijiPh']}]);_0x4d8a91=_0x3e95fb['baseUrl'];const _0x43b56d=await _0x1ff968[_0x2f243c(0x1b9)](checkUrlReachability,_0x4d8a91);if(_0x43b56d['ok'])break;const _0x2cbda1=/^[a-zA-Z][\w+.-]*:\/\//[_0x2f243c(0x1a2)](_0x4d8a91),_0x54067e=_0x43b56d['isProtocolError']&&!_0x2cbda1,_0x4aec9b=_0x54067e?'http://'+_0x4d8a91:null;_0x973161=!![],console['log'](_0x2f243c(0x1d4)+_0x4d8a91+':\x20'+_0x43b56d['error']);_0x4aec9b&&console['log'](_0x2f243c(0x1a5)+_0x4aec9b+'?');const {action:_0xf1b88d}=await _0x52d1d1[_0x2f243c(0x1b0)]([{'type':_0x2f243c(0x1f3),'name':'action','message':_0x2f243c(0x1ef),'choices':[..._0x4aec9b?[{'name':_0x2f243c(0x1af)+_0x4aec9b,'value':_0x1ff968[_0x2f243c(0x1b6)]}]:[],{'name':_0x1ff968['aBBAx'],'value':_0x1ff968['dXGGo']},{'name':_0x1ff968['SlTih'],'value':_0x2f243c(0x1be)}]}]);if(_0xf1b88d===_0x2f243c(0x1d7)&&_0x4aec9b){_0x4d8a91=_0x4aec9b;const _0x7e89f=await _0x1ff968[_0x2f243c(0x1e9)](checkUrlReachability,_0x4d8a91);if(_0x7e89f['ok'])break;console['log']('\x0a\x20\x20Still\x20could\x20not\x20reach\x20'+_0x4d8a91+':\x20'+_0x7e89f['error']);}else{if(_0x1ff968[_0x2f243c(0x1c1)](_0xf1b88d,_0x1ff968['vLeWX']))break;}}_0x1f160d={..._0x1f160d,'url':_0x4d8a91};}let _0x540dbc=![];try{_0x540dbc=await tryAutoRouteCloudProfile(_0x4366ba,_0x1f160d['url'],_0x1f160d,_0x4d7466,_0x1e729b);}catch(_0x43ffc3){console['error']('\x0a\x20\x20Failed\x20to\x20create\x20cloud\x20profile\x20\x22'+_0x4366ba+'\x22:\x20'+(_0x1ff968[_0x2f243c(0x198)](_0x43ffc3,Error)?_0x43ffc3[_0x2f243c(0x19f)]:_0x1ff968[_0x2f243c(0x199)](String,_0x43ffc3))),process[_0x2f243c(0x1d9)](0x1);}!_0x540dbc&&process[_0x2f243c(0x1d9)](0x1),await _0x1ff968['wdNBm'](markActive,_0x4366ba);}
@@ -1 +1 @@
1
- (function(_0x537cda,_0x19cbd6){const _0x108636=_0xa98f,_0xc252a7=_0x537cda();while(!![]){try{const _0x1c8c11=-parseInt(_0x108636(0x175))/0x1+-parseInt(_0x108636(0x169))/0x2+-parseInt(_0x108636(0x174))/0x3+parseInt(_0x108636(0x171))/0x4+parseInt(_0x108636(0x16e))/0x5+-parseInt(_0x108636(0x16a))/0x6*(parseInt(_0x108636(0x164))/0x7)+parseInt(_0x108636(0x173))/0x8*(parseInt(_0x108636(0x16f))/0x9);if(_0x1c8c11===_0x19cbd6)break;else _0xc252a7['push'](_0xc252a7['shift']());}catch(_0x5d18ef){_0xc252a7['push'](_0xc252a7['shift']());}}}(_0x1ed1,0xf0f18));import{readFile,writeFile}from'fs/promises';import{join}from'path';function _0x1ed1(){const _0x135d54=['qBHCx','No\x20API\x20token\x20found.\x20Run:\x20ranger\x20setup\x20[token]','No\x20auth.json\x20found\x20at\x20','\x20\x20Run\x20ranger\x20setup\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.','3157228RinYFL','42690gAmZKd','ghzmM','XelSa','ULiYd','704550TBlesf','18OKJjNh','log','7642248qKYUCm','AQzNs','11185904NNMckC','405456mGovrF','1087143QfxhXf','\x0a\x20\x20The\x20plaintext\x20auth.json\x20is\x20gitignored\x20for\x20security.','\x0a✓\x20Encrypted\x20auth\x20saved\x20to:\x20','1043ImTVFS'];_0x1ed1=function(){return _0x135d54;};return _0x1ed1();}import{existsSync}from'fs';import{encrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';function _0xa98f(_0x2ffc3d,_0xf33f2a){_0x2ffc3d=_0x2ffc3d-0x164;const _0x1ed1d1=_0x1ed1();let _0xa98fde=_0x1ed1d1[_0x2ffc3d];return _0xa98fde;}import{getEnvDir}from'./utils/settings.js';export async function authEncrypt(_0x48ad75){const _0x568226=_0xa98f,_0x574bf8={'OJIdT':function(_0x1651eb,_0x48cfc9){return _0x1651eb(_0x48cfc9);},'ULiYd':function(_0x4d7fe5,_0x3153fb,_0x3b4fa2){return _0x4d7fe5(_0x3153fb,_0x3b4fa2);},'iUQmT':'auth.json','qBHCx':function(_0x2df826,_0x3a8e43){return _0x2df826+_0x3a8e43;},'AQzNs':'.enc','XelSa':_0x568226(0x166),'rszkP':function(_0x231390,_0x2d5f7e,_0x1ebc6f){return _0x231390(_0x2d5f7e,_0x1ebc6f);},'ghzmM':function(_0x162fc4,_0x59141f){return _0x162fc4(_0x59141f);}},_0x4d0085=_0x574bf8['OJIdT'](getEnvDir,_0x48ad75),_0x288f70=_0x574bf8[_0x568226(0x16d)](join,_0x4d0085,_0x574bf8['iUQmT']),_0x34dc09=_0x574bf8[_0x568226(0x165)](_0x288f70,_0x574bf8[_0x568226(0x172)]);if(!existsSync(_0x4d0085))throw new Error('Profile\x20\x22'+_0x48ad75+'\x22\x20not\x20found.\x20Run\x20first:\x20ranger\x20profile\x20add\x20'+_0x48ad75);if(!existsSync(_0x288f70))throw new Error(_0x568226(0x167)+_0x288f70+'.\x20Run\x20first:\x20ranger\x20profile\x20add\x20with\x20authentication,\x20or\x20ranger\x20profile\x20update');const _0x284b46=await getToken();if(!_0x284b46)throw new Error(_0x574bf8[_0x568226(0x16c)]);const _0x53fc8a=await _0x574bf8['rszkP'](readFile,_0x288f70,'utf-8'),_0x476f72=encrypt(_0x53fc8a,_0x284b46);await writeFile(_0x34dc09,_0x476f72),console[_0x568226(0x170)](_0x568226(0x177)+_0x34dc09),console['log']('\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.'),console[_0x568226(0x170)](_0x568226(0x168)),_0x574bf8[_0x568226(0x16b)](existsSync,_0x34dc09)&&(console['log'](_0x568226(0x176)),console[_0x568226(0x170)]('\x20\x20The\x20encrypted\x20auth.json.enc\x20can\x20be\x20committed.'));}
1
+ function _0x12cb(_0x242691,_0x556460){_0x242691=_0x242691-0x1ca;var _0x17e23d=_0x17e2();var _0x12cb88=_0x17e23d[_0x242691];return _0x12cb88;}(function(_0x272052,_0x3036c0){var _0x1c03f6=_0x12cb,_0xba0678=_0x272052();while(!![]){try{var _0x113014=-parseInt(_0x1c03f6(0x1d3))/0x1*(-parseInt(_0x1c03f6(0x1d6))/0x2)+-parseInt(_0x1c03f6(0x1d8))/0x3*(parseInt(_0x1c03f6(0x1d9))/0x4)+parseInt(_0x1c03f6(0x1cc))/0x5*(-parseInt(_0x1c03f6(0x1cd))/0x6)+-parseInt(_0x1c03f6(0x1d4))/0x7+-parseInt(_0x1c03f6(0x1d1))/0x8*(-parseInt(_0x1c03f6(0x1ca))/0x9)+-parseInt(_0x1c03f6(0x1da))/0xa+parseInt(_0x1c03f6(0x1d7))/0xb;if(_0x113014===_0x3036c0)break;else _0xba0678['push'](_0xba0678['shift']());}catch(_0x63962){_0xba0678['push'](_0xba0678['shift']());}}}(_0x17e2,0xba1e4));function _0x17e2(){var _0x2120d8=['gcMwy','XaVrJ','8vkTpNB','Cloud\x20profiles\x20store\x20session\x20state\x20server-side;\x20encrypted\x20on-disk\x20auth\x20is\x20gone.\x0a','26Lauhsb','8465184Eatcpe','NWtvu','58564tFJmdw','24634698uKDyVR','148641PNsEon','4SdpcJz','3175110GzRMjP','4253589IACZcq','For\x20SSO/headed\x20login:\x20ranger\x20profile\x20add\x20<account-email>\x0a','5Ulgkwh','6808566UgVElC','\x20\x20RANGER_TEST_USERNAME=...\x20RANGER_TEST_PASSWORD=...\x20ranger\x20go\x20--base-url\x20<url>\x0a'];_0x17e2=function(){return _0x2120d8;};return _0x17e2();}export async function authEncrypt(_0x481478){var _0x2170e6=_0x12cb,_0x349791={'NWtvu':function(_0x5d2dd9,_0x4ab767){return _0x5d2dd9+_0x4ab767;},'gcMwy':function(_0x1d0e66,_0x4b2461){return _0x1d0e66+_0x4b2461;},'XaVrJ':'ranger\x20profile\x20encrypt-auth\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a'};console['error'](_0x349791[_0x2170e6(0x1d5)](_0x349791[_0x2170e6(0x1d5)](_0x349791[_0x2170e6(0x1cf)](_0x349791[_0x2170e6(0x1d0)]+_0x2170e6(0x1d2),'Use\x20the\x20new\x20flow:\x0a'),_0x2170e6(0x1ce))+_0x2170e6(0x1cb),'See:\x20docs/feature/cloud-profiles-old-vs-new-structure.md')),process['exit'](0x1);}
@@ -1 +1 @@
1
- const _0x1d2c4e=_0x4975;function _0x4975(_0x421b86,_0x127814){_0x421b86=_0x421b86-0xa1;const _0x4d99b2=_0x4d99();let _0x497582=_0x4d99b2[_0x421b86];return _0x497582;}(function(_0x23b7f9,_0x2cfe73){const _0x4472ca=_0x4975,_0x5261ac=_0x23b7f9();while(!![]){try{const _0x1044f4=parseInt(_0x4472ca(0xd2))/0x1*(parseInt(_0x4472ca(0xd7))/0x2)+-parseInt(_0x4472ca(0xae))/0x3*(parseInt(_0x4472ca(0xb3))/0x4)+-parseInt(_0x4472ca(0xb2))/0x5+-parseInt(_0x4472ca(0xca))/0x6*(parseInt(_0x4472ca(0xb6))/0x7)+-parseInt(_0x4472ca(0xc7))/0x8+parseInt(_0x4472ca(0xa1))/0x9*(-parseInt(_0x4472ca(0xd9))/0xa)+parseInt(_0x4472ca(0xb0))/0xb*(parseInt(_0x4472ca(0xaa))/0xc);if(_0x1044f4===_0x2cfe73)break;else _0x5261ac['push'](_0x5261ac['shift']());}catch(_0x5d66dc){_0x5261ac['push'](_0x5261ac['shift']());}}}(_0x4d99,0xcaa12));import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{spawn}from'child_process';import{deleteAllCredentials}from'./utils/keychain.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getCacheFile}from'./utils/sessionCache.js';import{getOpencodeConfigDir,getOpencodeSkillsDir}from'./utils/opencodeConfig.js';const skillsToRemove=[_0x1d2c4e(0xbf),_0x1d2c4e(0xc8),'bug-bash','e2e-test-recommender'],opencodePluginName=_0x1d2c4e(0xcd);function parseJsonc(_0x26ce9d){const _0x446972=_0x1d2c4e,_0x1733f6=_0x26ce9d['replace'](/\/\*[\s\S]*?\*\//g,''),_0x3554b9=_0x1733f6['replace'](/^\s*\/\/.*$/gm,''),_0xe3d1d9=_0x3554b9['replace'](/,\s*([}\]])/g,'$1');return JSON[_0x446972(0xda)](_0xe3d1d9);}async function removeOpencodePluginConfig(_0xab5d60){const _0x1bfcc1=_0x1d2c4e,_0x434faf={'dcemf':function(_0x58d86e,_0x14d5a8){return _0x58d86e!==_0x14d5a8;},'iTttO':'string','Iwjby':function(_0x304d82,_0x3191a4){return _0x304d82(_0x3191a4);},'IjQwJ':function(_0x33d0e6,_0x5ae8f2,_0x11260a){return _0x33d0e6(_0x5ae8f2,_0x11260a);},'VGnek':function(_0x58e767,_0x511c75){return _0x58e767===_0x511c75;},'ttJMM':function(_0x3abfd4,_0x1b1a46){return _0x3abfd4+_0x1b1a46;}};if(!_0x434faf[_0x1bfcc1(0xa9)](existsSync,_0xab5d60))return![];let _0x4ebf23;try{const _0xfad3ae=await _0x434faf[_0x1bfcc1(0xb1)](readFile,_0xab5d60,_0x1bfcc1(0xa3));_0x4ebf23=parseJsonc(_0xfad3ae);}catch{return![];}const _0x366326=Array[_0x1bfcc1(0xd6)](_0x4ebf23['plugin'])?_0x4ebf23['plugin']:[];if(_0x366326['length']===0x0)return![];const _0x19968a=_0x366326[_0x1bfcc1(0xc6)](_0x2b7a1d=>{const _0x3232e8=_0x1bfcc1;if(_0x434faf['dcemf'](typeof _0x2b7a1d,_0x434faf[_0x3232e8(0xc1)]))return!![];return _0x434faf['dcemf'](_0x2b7a1d,opencodePluginName);});if(_0x19968a[_0x1bfcc1(0xc0)]===_0x366326[_0x1bfcc1(0xc0)])return![];return _0x434faf[_0x1bfcc1(0xa8)](_0x19968a['length'],0x0)?delete _0x4ebf23['plugin']:_0x4ebf23[_0x1bfcc1(0xbc)]=_0x19968a,await _0x434faf['IjQwJ'](writeFile,_0xab5d60,_0x434faf['ttJMM'](JSON[_0x1bfcc1(0xd5)](_0x4ebf23,null,0x2),'\x0a')),!![];}async function uninstallClaudePlugin(_0x39e6bf){const _0x2e39f3=_0x1d2c4e,_0x3c9e86={'uMDQg':function(_0x118469,_0x57ba6a){return _0x118469(_0x57ba6a);},'QCuri':function(_0x27aeec,_0x4d9ebf){return _0x27aeec===_0x4d9ebf;},'iAGyq':'plugin','JgBHV':'ranger@trailhead','TDUBF':'pipe','HisBy':function(_0x2dd26d,_0x549de0){return _0x2dd26d===_0x549de0;},'iPJgY':'win32','tNYXF':_0x2e39f3(0xa2)};return new Promise(_0x30ef26=>{const _0x40f762=_0x2e39f3,_0x28fd4f={'ZocMI':function(_0x511d3b,_0x594eec){return _0x3c9e86['uMDQg'](_0x511d3b,_0x594eec);},'tDGuG':function(_0x44cf81,_0x16e078){return _0x3c9e86['QCuri'](_0x44cf81,_0x16e078);}},_0x4ecf8e=[_0x3c9e86[_0x40f762(0xc2)],_0x40f762(0xb7),_0x3c9e86[_0x40f762(0xc4)]];_0x39e6bf&&_0x4ecf8e[_0x40f762(0xc5)]('--scope',_0x39e6bf);const _0x244590=spawn(_0x40f762(0xab),_0x4ecf8e,{'stdio':_0x3c9e86['TDUBF'],'shell':_0x3c9e86[_0x40f762(0xb5)](process['platform'],_0x3c9e86['iPJgY'])});_0x244590['on'](_0x3c9e86['tNYXF'],_0xd3ab1b=>{const _0x47a277=_0x40f762;_0x28fd4f['ZocMI'](_0x30ef26,_0x28fd4f[_0x47a277(0xbb)](_0xd3ab1b,0x0));}),_0x244590['on'](_0x40f762(0xad),()=>{_0x3c9e86['uMDQg'](_0x30ef26,![]);});});}async function removeMarketplace(){const _0x1dc53c=_0x1d2c4e,_0x2c82c5={'Ehdho':function(_0xca698f,_0x3a8821){return _0xca698f===_0x3a8821;},'Pgnjj':_0x1dc53c(0xcc),'rKSPV':'trailhead','ysIuT':_0x1dc53c(0xa5),'BnwmQ':_0x1dc53c(0xa2),'SCGMA':'error'};return new Promise(_0x668b9a=>{const _0x54787b=_0x1dc53c,_0x19af59=spawn('claude',[_0x54787b(0xbc),_0x2c82c5[_0x54787b(0xd3)],_0x54787b(0xbd),_0x2c82c5[_0x54787b(0xb9)]],{'stdio':'pipe','shell':process['platform']===_0x2c82c5['ysIuT']});_0x19af59['on'](_0x2c82c5[_0x54787b(0xc9)],_0x3e5b58=>{const _0x395c2c=_0x54787b;_0x668b9a(_0x2c82c5[_0x395c2c(0xa7)](_0x3e5b58,0x0));}),_0x19af59['on'](_0x2c82c5[_0x54787b(0xc3)],()=>{_0x668b9a(![]);});});}function _0x4d99(){const _0x896100=['parse','17523ZhAnMG','close','utf-8','UwbFV','win32','log','Ehdho','VGnek','Iwjby','36VqUJLR','claude','HYXHU','error','32286pvAflA','opencode.json','16139761YDOklb','IjQwJ','7665625CNJADN','316wTYabU','KXLuL','HisBy','35KHERRE','uninstall','✓\x20Removed\x20OpenCode\x20plugin\x20(project\x20config)','rKSPV','RnqhG','tDGuG','plugin','remove','jrFpu','ranger','length','iTttO','iAGyq','SCGMA','JgBHV','push','filter','674256irkciO','feature-tracker','BnwmQ','629868YuDivF','XLxrF','marketplace','@ranger-testing/opencode-plugin','Gfhkb','✓\x20Removed\x20project\x20skill:\x20','VaMiP','user','19127pWQgAV','Pgnjj','\x0a🧹\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','stringify','isArray','6eBHWEN','✓\x20Removed\x20stored\x20credentials','3270iSKCxT'];_0x4d99=function(){return _0x896100;};return _0x4d99();}export async function clean(){const _0x31b716=_0x1d2c4e,_0x57b0e9={'uSHLG':_0x31b716(0xd8),'VaMiP':function(_0x435c2c){return _0x435c2c();},'XLxrF':function(_0x6c4746,_0x371633){return _0x6c4746(_0x371633);},'vRUZQ':function(_0x274cab,_0x405376,_0x1a3ebc){return _0x274cab(_0x405376,_0x1a3ebc);},'RnqhG':function(_0x564bb0,_0x2cb091){return _0x564bb0(_0x2cb091);},'HNaBf':_0x31b716(0xd1),'UwbFV':function(_0x208e67,_0x4a3300,_0x298bd4){return _0x208e67(_0x4a3300,_0x298bd4);},'LuVVN':function(_0x4bfd62,_0x412ca9){return _0x4bfd62(_0x412ca9);},'Gfhkb':'project','GdvNS':_0x31b716(0xaf),'tliUu':_0x31b716(0xb8),'ZHiCp':function(_0xd0a02,_0x457cbb,_0x5afee3){return _0xd0a02(_0x457cbb,_0x5afee3);},'SCkwa':function(_0x1a93d9,_0x5adce7){return _0x1a93d9(_0x5adce7);},'quBFP':function(_0xacbf03,_0x38531c){return _0xacbf03(_0x38531c);},'VAEKI':function(_0x1d3718){return _0x1d3718();},'KXLuL':'✓\x20Uninstalled\x20Claude\x20plugin\x20(user\x20scope)','HYXHU':'✓\x20Uninstalled\x20Claude\x20plugin\x20(project\x20scope)','jrFpu':'\x0a✅\x20Cleanup\x20complete!\x0a','BcOOW':'Nothing\x20to\x20clean\x20up.\x0a'};console['log'](_0x31b716(0xd4));let _0x518909=![];try{await deleteAllCredentials(),console[_0x31b716(0xa6)](_0x57b0e9['uSHLG']),_0x518909=!![];}catch{}const _0x4ba873=_0x57b0e9[_0x31b716(0xd0)](getCacheFile);_0x57b0e9['XLxrF'](existsSync,_0x4ba873)&&(await _0x57b0e9['XLxrF'](rm,_0x4ba873),_0x518909=!![]);const _0xe92163=_0x57b0e9[_0x31b716(0xd0)](getRangerDir);_0x57b0e9[_0x31b716(0xcb)](existsSync,_0xe92163)&&(await rm(_0xe92163,{'recursive':!![]}),console[_0x31b716(0xa6)]('✓\x20Removed\x20.ranger/\x20directory'),_0x518909=!![]);const _0xca154d=_0x57b0e9[_0x31b716(0xd0)](getProjectSkillsDir);for(const _0xc91f1e of skillsToRemove){const _0x45ff16=_0x57b0e9['vRUZQ'](join,_0xca154d,_0xc91f1e);_0x57b0e9['RnqhG'](existsSync,_0x45ff16)&&(await rm(_0x45ff16,{'recursive':!![]}),console['log'](_0x31b716(0xcf)+_0xc91f1e),_0x518909=!![]);}const _0x5d3e86=_0x57b0e9['VaMiP'](getUserSkillsDir);for(const _0x49644f of skillsToRemove){const _0x233d7e=_0x57b0e9['vRUZQ'](join,_0x5d3e86,_0x49644f);_0x57b0e9[_0x31b716(0xba)](existsSync,_0x233d7e)&&(await rm(_0x233d7e,{'recursive':!![]}),console['log']('✓\x20Removed\x20user\x20skill:\x20'+_0x49644f),_0x518909=!![]);}const _0x299166=getOpencodeSkillsDir('project');for(const _0x50e9c7 of skillsToRemove){const _0x259759=join(_0x299166,_0x50e9c7);existsSync(_0x259759)&&(await rm(_0x259759,{'recursive':!![]}),console[_0x31b716(0xa6)]('✓\x20Removed\x20OpenCode\x20project\x20skill:\x20'+_0x50e9c7),_0x518909=!![]);}const _0x2470a8=_0x57b0e9[_0x31b716(0xba)](getOpencodeSkillsDir,_0x57b0e9['HNaBf']);for(const _0x119f1e of skillsToRemove){const _0x12d6db=join(_0x2470a8,_0x119f1e);existsSync(_0x12d6db)&&(await rm(_0x12d6db,{'recursive':!![]}),console['log']('✓\x20Removed\x20OpenCode\x20user\x20skill:\x20'+_0x119f1e),_0x518909=!![]);}const _0x4c28a4=_0x57b0e9[_0x31b716(0xa4)](join,_0x57b0e9['LuVVN'](getOpencodeConfigDir,_0x57b0e9[_0x31b716(0xce)]),_0x57b0e9['GdvNS']);await removeOpencodePluginConfig(_0x4c28a4)&&(console[_0x31b716(0xa6)](_0x57b0e9['tliUu']),_0x518909=!![]);const _0x2d26cf=_0x57b0e9['ZHiCp'](join,_0x57b0e9['SCkwa'](getOpencodeConfigDir,'user'),'opencode.json');await _0x57b0e9['quBFP'](removeOpencodePluginConfig,_0x2d26cf)&&(console[_0x31b716(0xa6)]('✓\x20Removed\x20OpenCode\x20plugin\x20(user\x20config)'),_0x518909=!![]);const _0x47b630=await _0x57b0e9['VAEKI'](uninstallClaudePlugin);_0x47b630&&(console[_0x31b716(0xa6)](_0x57b0e9[_0x31b716(0xb4)]),_0x518909=!![]);const _0x4fe6cf=await uninstallClaudePlugin(_0x57b0e9[_0x31b716(0xce)]);_0x4fe6cf&&(console['log'](_0x57b0e9[_0x31b716(0xac)]),_0x518909=!![]);const _0x5ba8f6=await removeMarketplace();_0x5ba8f6&&(console['log']('✓\x20Removed\x20trailhead\x20marketplace'),_0x518909=!![]),_0x518909?console['log'](_0x57b0e9[_0x31b716(0xbe)]):console[_0x31b716(0xa6)](_0x57b0e9['BcOOW']);}
1
+ const _0x51f476=_0x1694;(function(_0x262133,_0x3b4dde){const _0x194ddd=_0x1694,_0x2100a0=_0x262133();while(!![]){try{const _0x5ea123=parseInt(_0x194ddd(0xfa))/0x1*(parseInt(_0x194ddd(0x102))/0x2)+-parseInt(_0x194ddd(0xe9))/0x3*(parseInt(_0x194ddd(0x115))/0x4)+parseInt(_0x194ddd(0xf3))/0x5+-parseInt(_0x194ddd(0xfe))/0x6+-parseInt(_0x194ddd(0x105))/0x7*(parseInt(_0x194ddd(0xf8))/0x8)+parseInt(_0x194ddd(0x104))/0x9+-parseInt(_0x194ddd(0x116))/0xa*(-parseInt(_0x194ddd(0x120))/0xb);if(_0x5ea123===_0x3b4dde)break;else _0x2100a0['push'](_0x2100a0['shift']());}catch(_0x79da41){_0x2100a0['push'](_0x2100a0['shift']());}}}(_0x2d05,0xd8170));import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{spawn}from'child_process';import{deleteAllCredentials}from'./utils/keychain.js';import{getProjectRoot,getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getCacheFile}from'./utils/sessionCache.js';import{getOpencodeConfigDir,getOpencodeSkillsDir}from'./utils/opencodeConfig.js';const skillsToRemove=['ranger','feature-tracker','bug-bash',_0x51f476(0xfb)],opencodePluginName=_0x51f476(0x111);function _0x2d05(){const _0x4d3a7a=['WDndd','cGAnk','iFgyG','Xwcwq','✓\x20Uninstalled\x20Claude\x20plugin\x20(project\x20scope)','3729CYURDp','stringify','isArray','1093644tfMsQy','CwsYe','afeAu','project','ignore','plugin','win32','qPrRp','Vvbyv','claude','7543805DAFOEL','QbuRG','✓\x20Removed\x20stored\x20credentials','✓\x20Removed\x20OpenCode\x20plugin\x20(project\x20config)','length','2539912FOHbQy','tNkuH','127433nGSQiC','e2e-test-recommender','✓\x20Uninstalled\x20Claude\x20plugin\x20(user\x20scope)','platform','5177484BpMjRW','string','✓\x20Removed\x20trailhead\x20marketplace','oitEZ','2srgzvg','filter','11085255rMZzkP','35RTcnHl','trailhead','opencode.json','bLiuG','error','log','wvrPr','replace','✓\x20Removed\x20OpenCode\x20plugin\x20(user\x20config)','KvfHV','--scope','MRxkm','@ranger-testing/opencode-plugin','moBAt','hLdog','✓\x20Removed\x20project\x20skill:\x20','8ZSqHOH','35300pbUNRt','\x0a✅\x20Cleanup\x20complete!\x0a','qxoqW','aBjtF','dtPLI'];_0x2d05=function(){return _0x4d3a7a;};return _0x2d05();}function _0x1694(_0x571b4f,_0x2e7df1){_0x571b4f=_0x571b4f-0xe7;const _0x2d051d=_0x2d05();let _0x16948f=_0x2d051d[_0x571b4f];return _0x16948f;}function parseJsonc(_0x26ae19){const _0x340a49=_0x51f476,_0x10bfb9=_0x26ae19[_0x340a49(0x10c)](/\/\*[\s\S]*?\*\//g,''),_0x58408d=_0x10bfb9[_0x340a49(0x10c)](/^\s*\/\/.*$/gm,''),_0x5c0081=_0x58408d[_0x340a49(0x10c)](/,\s*([}\]])/g,'$1');return JSON['parse'](_0x5c0081);}async function removeOpencodePluginConfig(_0x364004){const _0x41f930=_0x51f476,_0x1efb90={'WDndd':_0x41f930(0xff),'tNkuH':function(_0x9f1d88,_0x100ea3){return _0x9f1d88(_0x100ea3);},'Vvbyv':function(_0x342937,_0x2da2d7,_0x546452){return _0x342937(_0x2da2d7,_0x546452);},'QbuRG':'utf-8','NnHUP':function(_0x19ae49,_0x9af746){return _0x19ae49(_0x9af746);},'KvfHV':function(_0x35cb7f,_0x5998df){return _0x35cb7f===_0x5998df;},'VmuQl':function(_0x468bc7,_0x5a2f42){return _0x468bc7===_0x5a2f42;}};if(!_0x1efb90[_0x41f930(0xf9)](existsSync,_0x364004))return![];let _0x5e610f;try{const _0x56f4d5=await _0x1efb90[_0x41f930(0xf1)](readFile,_0x364004,_0x1efb90[_0x41f930(0xf4)]);_0x5e610f=_0x1efb90['NnHUP'](parseJsonc,_0x56f4d5);}catch{return![];}const _0x3cb883=Array[_0x41f930(0xe8)](_0x5e610f[_0x41f930(0xee)])?_0x5e610f['plugin']:[];if(_0x1efb90['KvfHV'](_0x3cb883['length'],0x0))return![];const _0x16f312=_0x3cb883[_0x41f930(0x103)](_0x56de3a=>{const _0xe338d8=_0x41f930;if(typeof _0x56de3a!==_0x1efb90[_0xe338d8(0x11b)])return!![];return _0x56de3a!==opencodePluginName;});if(_0x1efb90[_0x41f930(0x10e)](_0x16f312['length'],_0x3cb883[_0x41f930(0xf7)]))return![];return _0x1efb90['VmuQl'](_0x16f312[_0x41f930(0xf7)],0x0)?delete _0x5e610f[_0x41f930(0xee)]:_0x5e610f[_0x41f930(0xee)]=_0x16f312,await _0x1efb90['Vvbyv'](writeFile,_0x364004,JSON[_0x41f930(0xe7)](_0x5e610f,null,0x2)+'\x0a'),!![];}async function uninstallClaudePlugin(_0x512d10){const _0x33d8cf=_0x51f476,_0x440feb={'yixvM':function(_0x18e565,_0x22315c){return _0x18e565(_0x22315c);},'qxoqW':'ranger@trailhead','kEtyQ':_0x33d8cf(0x10f),'kjPhs':_0x33d8cf(0xf2),'aBjtF':'ignore'};return new Promise(_0x13e28a=>{const _0x343a1e=_0x33d8cf,_0x41229f=[_0x343a1e(0xee),'uninstall',_0x440feb[_0x343a1e(0x118)]];_0x512d10&&_0x41229f['push'](_0x440feb['kEtyQ'],_0x512d10);const _0x45e596=spawn(_0x440feb['kjPhs'],_0x41229f,{'stdio':[_0x440feb[_0x343a1e(0x119)],_0x343a1e(0xed),'ignore'],'cwd':_0x512d10?getProjectRoot():undefined,'shell':process[_0x343a1e(0xfd)]===_0x343a1e(0xef)});_0x45e596['on']('close',_0x25a34c=>{_0x440feb['yixvM'](_0x13e28a,_0x25a34c===0x0);}),_0x45e596['on'](_0x343a1e(0x109),()=>{_0x13e28a(![]);});});}async function removeMarketplace(){const _0x313b55=_0x51f476,_0x33e72e={'afeAu':function(_0x62b16a,_0x35d06d){return _0x62b16a===_0x35d06d;},'qPrRp':'plugin','wvrPr':'remove','meGEN':_0x313b55(0x106),'oitEZ':'ignore','moBAt':function(_0x260960,_0x287bf9){return _0x260960===_0x287bf9;},'yvbsv':'close','jNUff':_0x313b55(0x109)};return new Promise(_0x186588=>{const _0x10e9b7=_0x313b55,_0x118264=spawn('claude',[_0x33e72e[_0x10e9b7(0xf0)],'marketplace',_0x33e72e[_0x10e9b7(0x10b)],_0x33e72e['meGEN']],{'stdio':[_0x33e72e[_0x10e9b7(0x101)],_0x33e72e[_0x10e9b7(0x101)],_0x33e72e['oitEZ']],'shell':_0x33e72e[_0x10e9b7(0x112)](process[_0x10e9b7(0xfd)],_0x10e9b7(0xef))});_0x118264['on'](_0x33e72e['yvbsv'],_0xcbe7c9=>{const _0x1ed387=_0x10e9b7;_0x186588(_0x33e72e[_0x1ed387(0xeb)](_0xcbe7c9,0x0));}),_0x118264['on'](_0x33e72e['jNUff'],()=>{_0x186588(![]);});});}export async function clean(){const _0x24e1e6=_0x51f476,_0x334a64={'NLTHd':'\x0a🧹\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','wkcmV':function(_0x5133bb){return _0x5133bb();},'rzyrN':_0x24e1e6(0xf5),'dtPLI':function(_0x56a0bf,_0x538a93){return _0x56a0bf(_0x538a93);},'cEITL':function(_0x509614){return _0x509614();},'hLdog':function(_0x1c06f5,_0x1df421,_0x3940fc){return _0x1c06f5(_0x1df421,_0x3940fc);},'ndZTT':function(_0x463865,_0x2b2878,_0x3119ec){return _0x463865(_0x2b2878,_0x3119ec);},'CwsYe':function(_0x1b8f54,_0x3ac11d){return _0x1b8f54(_0x3ac11d);},'MRxkm':'user','VtImY':_0x24e1e6(0xf6),'bLiuG':function(_0x1294b9,_0x3445fe,_0xbd6834){return _0x1294b9(_0x3445fe,_0xbd6834);},'rUvjN':_0x24e1e6(0x107),'qZNdN':function(_0x443ff3,_0x26bed3){return _0x443ff3(_0x26bed3);},'Xwcwq':_0x24e1e6(0x10d),'cGAnk':_0x24e1e6(0xec),'uvJeM':function(_0xd759dc){return _0xd759dc();},'UkMzx':_0x24e1e6(0x117),'iFgyG':'Nothing\x20to\x20clean\x20up.\x0a'};console['log'](_0x334a64['NLTHd']);let _0x4123ae=![];try{await _0x334a64['wkcmV'](deleteAllCredentials),console[_0x24e1e6(0x10a)](_0x334a64['rzyrN']),_0x4123ae=!![];}catch{}const _0x2c4947=getCacheFile();existsSync(_0x2c4947)&&(await _0x334a64['dtPLI'](rm,_0x2c4947),_0x4123ae=!![]);const _0x30d8d2=_0x334a64['cEITL'](getRangerDir);existsSync(_0x30d8d2)&&(await rm(_0x30d8d2,{'recursive':!![]}),console['log']('✓\x20Removed\x20.ranger/\x20directory'),_0x4123ae=!![]);const _0xebd0ff=getProjectSkillsDir();for(const _0x42d10e of skillsToRemove){const _0x75f46f=join(_0xebd0ff,_0x42d10e);existsSync(_0x75f46f)&&(await rm(_0x75f46f,{'recursive':!![]}),console[_0x24e1e6(0x10a)](_0x24e1e6(0x114)+_0x42d10e),_0x4123ae=!![]);}const _0x5c1bc1=getUserSkillsDir();for(const _0x3f7573 of skillsToRemove){const _0x8a3d10=_0x334a64[_0x24e1e6(0x113)](join,_0x5c1bc1,_0x3f7573);_0x334a64[_0x24e1e6(0x11a)](existsSync,_0x8a3d10)&&(await rm(_0x8a3d10,{'recursive':!![]}),console['log']('✓\x20Removed\x20user\x20skill:\x20'+_0x3f7573),_0x4123ae=!![]);}const _0x30fc5b=_0x334a64['dtPLI'](getOpencodeSkillsDir,'project');for(const _0x63a091 of skillsToRemove){const _0x59af2c=_0x334a64['ndZTT'](join,_0x30fc5b,_0x63a091);_0x334a64['dtPLI'](existsSync,_0x59af2c)&&(await rm(_0x59af2c,{'recursive':!![]}),console['log']('✓\x20Removed\x20OpenCode\x20project\x20skill:\x20'+_0x63a091),_0x4123ae=!![]);}const _0x10ec15=_0x334a64[_0x24e1e6(0xea)](getOpencodeSkillsDir,_0x334a64[_0x24e1e6(0x110)]);for(const _0x260518 of skillsToRemove){const _0x199282=join(_0x10ec15,_0x260518);_0x334a64['CwsYe'](existsSync,_0x199282)&&(await rm(_0x199282,{'recursive':!![]}),console[_0x24e1e6(0x10a)]('✓\x20Removed\x20OpenCode\x20user\x20skill:\x20'+_0x260518),_0x4123ae=!![]);}const _0x325028=join(getOpencodeConfigDir(_0x24e1e6(0xec)),_0x24e1e6(0x107));await removeOpencodePluginConfig(_0x325028)&&(console['log'](_0x334a64['VtImY']),_0x4123ae=!![]);const _0x57789c=_0x334a64[_0x24e1e6(0x108)](join,_0x334a64[_0x24e1e6(0x11a)](getOpencodeConfigDir,_0x334a64[_0x24e1e6(0x110)]),_0x334a64['rUvjN']);await _0x334a64['qZNdN'](removeOpencodePluginConfig,_0x57789c)&&(console['log'](_0x334a64[_0x24e1e6(0x11e)]),_0x4123ae=!![]);const _0x25b703=await _0x334a64['cEITL'](uninstallClaudePlugin);_0x25b703&&(console['log'](_0x24e1e6(0xfc)),_0x4123ae=!![]);const _0x2a3733=await uninstallClaudePlugin(_0x334a64[_0x24e1e6(0x11c)]);_0x2a3733&&(console[_0x24e1e6(0x10a)](_0x24e1e6(0x11f)),_0x4123ae=!![]);const _0x4f3681=await _0x334a64['uvJeM'](removeMarketplace);_0x4f3681&&(console['log'](_0x24e1e6(0x100)),_0x4123ae=!![]),_0x4123ae?console[_0x24e1e6(0x10a)](_0x334a64['UkMzx']):console['log'](_0x334a64[_0x24e1e6(0x11d)]);}
@@ -1 +1 @@
1
- const _0x578d6c=_0xaa66;(function(_0x41e7d9,_0x1a387b){const _0x5996ff=_0xaa66,_0x3d4101=_0x41e7d9();while(!![]){try{const _0x1cf915=-parseInt(_0x5996ff(0xdf))/0x1+-parseInt(_0x5996ff(0xe3))/0x2*(parseInt(_0x5996ff(0x107))/0x3)+parseInt(_0x5996ff(0xd5))/0x4*(-parseInt(_0x5996ff(0xe6))/0x5)+parseInt(_0x5996ff(0xd3))/0x6+-parseInt(_0x5996ff(0xed))/0x7+parseInt(_0x5996ff(0xff))/0x8*(parseInt(_0x5996ff(0xdd))/0x9)+-parseInt(_0x5996ff(0xe8))/0xa*(-parseInt(_0x5996ff(0xe9))/0xb);if(_0x1cf915===_0x1a387b)break;else _0x3d4101['push'](_0x3d4101['shift']());}catch(_0x1d5287){_0x3d4101['push'](_0x3d4101['shift']());}}}(_0x18e3,0xbfbd8));function _0x18e3(){const _0x139ed9=['bCIYA','jRoWH','csejK','alsoExistsElsewhere','allowInsecureLocalhost','lVktw','yDVst','null','632WUBfnR','headless','tIzbT','length','hlsaM','cloud','false','isSafeInteger','2208186SLSJzx','bUxCH','trim','log','IQeDq','startsWith','3340302bhAOdF',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','8JDvSDC','true','local','Key\x20\x22','\x20for\x20\x22','ynone','(not\x20set)','jNbUN','174672VhWwJB','Invalid\x20value\x20for\x20','893585sBcLFy','object','\x20<key>\x22\x20to\x20remove\x20individual\x20values.','\x20\x20Note:\x20\x22','4ZQqUqr','test','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','326690cdymrI','Removed\x20','700270IQTIZj','253nSEOkB','includes','stringify','settings','2931719fBqFcc','kind','njZAh','parse','EtRHu','cwd','tCEFR','IOsdf','fpYrs','\x20=\x20'];_0x18e3=function(){return _0x139ed9;};return _0x18e3();}import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';import{fetchCloudProfile}from'./utils/cloudProfile.js';function _0xaa66(_0x3503b0,_0x32f8ef){_0x3503b0=_0x3503b0-0xd2;const _0x18e370=_0x18e3();let _0xaa66f1=_0x18e370[_0x3503b0];return _0xaa66f1;}import{mergeCloudProfileSettings,readProfileOverrides,resetProfileOverrides,setProfileOverride,unsetProfileOverride}from'./utils/projectsConfig.js';const BOOLEAN_KEYS=[_0x578d6c(0x100),_0x578d6c(0xfb)];function parseLocalValue(_0x5f419d,_0x5a6196){const _0x2ba7c5=_0x578d6c,_0x3d7f3b={'bUxCH':'true','IQeDq':function(_0x918b08,_0x5efeaf){return _0x918b08===_0x5efeaf;},'tCEFR':_0x2ba7c5(0x105)};if(BOOLEAN_KEYS[_0x2ba7c5(0xea)](_0x5f419d)){if(_0x5a6196===_0x3d7f3b[_0x2ba7c5(0x108)])return!![];if(_0x3d7f3b[_0x2ba7c5(0x10b)](_0x5a6196,_0x3d7f3b[_0x2ba7c5(0xf3)]))return![];throw new Error(_0x2ba7c5(0xde)+_0x5f419d+_0x2ba7c5(0xd4));}return _0x5a6196;}function parseOverrideValue(_0x22ea86){const _0x1e7f83=_0x578d6c,_0x19e776={'yDVst':function(_0x3b07b7,_0xd56863){return _0x3b07b7===_0xd56863;},'hlsaM':_0x1e7f83(0xd6),'lVktw':function(_0x387098,_0x278fda){return _0x387098===_0x278fda;},'EtRHu':'undefined','XGvtA':function(_0x2a0ec7,_0x3098a1){return _0x2a0ec7(_0x3098a1);}};if(_0x19e776[_0x1e7f83(0xfd)](_0x22ea86,_0x19e776[_0x1e7f83(0x103)]))return!![];if(_0x19e776[_0x1e7f83(0xfc)](_0x22ea86,'false'))return![];if(_0x22ea86===_0x1e7f83(0xfe))return null;if(_0x22ea86===_0x19e776[_0x1e7f83(0xf1)])return undefined;if(/^-?\d+$/[_0x1e7f83(0xe4)](_0x22ea86)){const _0xb18d=_0x19e776['XGvtA'](Number,_0x22ea86);if(Number[_0x1e7f83(0x106)](_0xb18d))return _0xb18d;}if(/^-?\d+\.\d+$/['test'](_0x22ea86)){const _0x7263e7=Number(_0x22ea86);if(!Number['isNaN'](_0x7263e7))return _0x7263e7;}const _0x5896b0=_0x22ea86[_0x1e7f83(0x109)]();if(_0x5896b0['startsWith']('{')&&_0x5896b0['endsWith']('}')||_0x5896b0[_0x1e7f83(0xd2)]('[')&&_0x5896b0['endsWith'](']'))try{return JSON[_0x1e7f83(0xf0)](_0x5896b0);}catch{}return _0x22ea86;}async function resolveProfileTarget(_0x4083a1){const _0x21c4df=_0x578d6c,_0x48be47={'tIzbT':function(_0x12372f,_0x4055e5){return _0x12372f(_0x4055e5);}},_0x755101=existsSync(_0x48be47[_0x21c4df(0x101)](getEnvDir,_0x4083a1));let _0x51c84e=![];try{const _0x5946ca=await fetchCloudProfile(_0x4083a1);_0x51c84e=_0x48be47[_0x21c4df(0x101)](Boolean,_0x5946ca);}catch{}if(_0x51c84e)return{'kind':'cloud','alsoExistsElsewhere':_0x755101};if(_0x755101)return{'kind':_0x21c4df(0xd7),'alsoExistsElsewhere':![]};throw new Error('Profile\x20\x22'+_0x4083a1+_0x21c4df(0xe5)+_0x4083a1);}function printDualExistsHint(_0x3b0eff){const _0x29c9b1=_0x578d6c;console[_0x29c9b1(0x10a)](_0x29c9b1(0xe2)+_0x3b0eff+'\x22\x20also\x20exists\x20as\x20a\x20local\x20profile;\x20editing\x20the\x20cloud\x20profile.');}function getProjectPath(){const _0x55965d=_0x578d6c;return process[_0x55965d(0xf2)]();}async function loadEffectiveCloudSettings(_0x14d007){const _0x53a94c=_0x578d6c,_0x1973ed={'uhsQN':function(_0x1c8dd0,_0x1b0aea){return _0x1c8dd0(_0x1b0aea);},'bCIYA':function(_0xd537b2){return _0xd537b2();},'jRoWH':function(_0x32d979,_0x4167e3,_0x30feb4){return _0x32d979(_0x4167e3,_0x30feb4);}},_0x35f10c=await _0x1973ed['uhsQN'](fetchCloudProfile,_0x14d007),_0x142097=readProfileOverrides(_0x1973ed[_0x53a94c(0xf7)](getProjectPath),_0x14d007);return _0x1973ed[_0x53a94c(0xf8)](mergeCloudProfileSettings,_0x35f10c?.[_0x53a94c(0xec)]??{},_0x142097??undefined);}export async function configSet(_0x20355d,_0xcaaf78,_0x4c5cc5){const _0x5c2029=_0x578d6c,_0x24146c={'csejK':function(_0xc2bf31,_0x37f714){return _0xc2bf31(_0x37f714);},'BkKEq':function(_0x3e832,_0x97eab0){return _0x3e832(_0x97eab0);},'JXacL':function(_0xa5f583){return _0xa5f583();},'jNbUN':function(_0x24323f,_0x54d510,_0x160ff0){return _0x24323f(_0x54d510,_0x160ff0);}},_0x1676c4=await resolveProfileTarget(_0x20355d);if(_0x1676c4[_0x5c2029(0xee)]===_0x5c2029(0x104)){if(_0x1676c4[_0x5c2029(0xfa)])_0x24146c[_0x5c2029(0xf9)](printDualExistsHint,_0x20355d);const _0x40e865=_0x24146c['BkKEq'](parseOverrideValue,_0x4c5cc5);setProfileOverride(_0x24146c['JXacL'](getProjectPath),_0x20355d,_0xcaaf78,_0x40e865),console['log']('Set\x20'+_0xcaaf78+_0x5c2029(0xf6)+JSON['stringify'](_0x40e865)+_0x5c2029(0xd9)+_0x20355d+'\x22');return;}const _0x464cea=await loadSettings(_0x20355d),_0x3ca842=_0x24146c[_0x5c2029(0xdc)](parseLocalValue,_0xcaaf78,_0x4c5cc5);setNestedValue(_0x464cea,_0xcaaf78,_0x3ca842),await saveSettings(_0x20355d,_0x464cea),console['log']('Set\x20'+_0xcaaf78+_0x5c2029(0xf6)+_0x3ca842+_0x5c2029(0xd9)+_0x20355d+'\x22');}export async function configGet(_0x5ea412,_0x27e7f5){const _0x155cfc=_0x578d6c,_0x9f698a={'rBbQt':'cloud','IOsdf':function(_0x49482f,_0x5e286b){return _0x49482f===_0x5e286b;},'dJreu':function(_0x3a117c,_0x49efb2){return _0x3a117c(_0x49efb2);},'cFhAC':function(_0x55bafd,_0x2e4795,_0xfccb24){return _0x55bafd(_0x2e4795,_0xfccb24);},'CwvcA':_0x155cfc(0xe0)},_0x1d12ff=await resolveProfileTarget(_0x5ea412);if(_0x1d12ff[_0x155cfc(0xee)]===_0x9f698a['rBbQt']){const _0x25a606=await loadEffectiveCloudSettings(_0x5ea412),_0x9587c5=getNestedValue(_0x25a606,_0x27e7f5);if(_0x9f698a[_0x155cfc(0xf4)](_0x9587c5,undefined))console['log']('(not\x20set)');else typeof _0x9587c5==='object'?console['log'](JSON[_0x155cfc(0xeb)](_0x9587c5,null,0x2)):console[_0x155cfc(0x10a)](_0x9587c5);return;}const _0x56305f=await _0x9f698a['dJreu'](loadSettings,_0x5ea412),_0x3ca94e=_0x9f698a['cFhAC'](getNestedValue,_0x56305f,_0x27e7f5);if(_0x3ca94e===undefined)console['log'](_0x155cfc(0xdb));else _0x9f698a['IOsdf'](typeof _0x3ca94e,_0x9f698a['CwvcA'])?console[_0x155cfc(0x10a)](JSON['stringify'](_0x3ca94e,null,0x2)):console[_0x155cfc(0x10a)](_0x3ca94e);}export async function configList(_0x4a05e6){const _0x3c8894=_0x578d6c,_0x42235f={'ynone':function(_0x32ef04,_0x5cbc33){return _0x32ef04(_0x5cbc33);}},_0x40605d=await _0x42235f['ynone'](resolveProfileTarget,_0x4a05e6);if(_0x40605d['kind']==='cloud'){const _0x5edbb5=await loadEffectiveCloudSettings(_0x4a05e6);if(!_0x5edbb5||Object['keys'](_0x5edbb5)[_0x3c8894(0x102)]===0x0){console[_0x3c8894(0x10a)]('No\x20configuration\x20set\x20for\x20\x22'+_0x4a05e6+'\x22');return;}console['log'](JSON[_0x3c8894(0xeb)](_0x5edbb5,null,0x2));return;}const _0x520ded=_0x42235f[_0x3c8894(0xda)](getSettingsPath,_0x4a05e6);if(!existsSync(_0x520ded)){console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x4a05e6+'\x22');return;}const _0x2dde2c=await _0x42235f[_0x3c8894(0xda)](loadSettings,_0x4a05e6),_0x32da5=formatSettings(_0x2dde2c);!_0x32da5?console[_0x3c8894(0x10a)]('No\x20configuration\x20set\x20for\x20\x22'+_0x4a05e6+'\x22'):console[_0x3c8894(0x10a)](_0x32da5);}export async function configUnset(_0x2b781b,_0x4ad4df){const _0x17567b=_0x578d6c,_0x4970de={'fpYrs':function(_0x3bf67e,_0x2c93e8){return _0x3bf67e(_0x2c93e8);},'VuRkD':function(_0x326efe,_0x3eab5e){return _0x326efe===_0x3eab5e;},'njZAh':function(_0x24d308,_0x5eba35,_0x462865,_0xe8c017){return _0x24d308(_0x5eba35,_0x462865,_0xe8c017);}},_0x697f4=await _0x4970de[_0x17567b(0xf5)](resolveProfileTarget,_0x2b781b);if(_0x4970de['VuRkD'](_0x697f4[_0x17567b(0xee)],'cloud')){if(_0x697f4[_0x17567b(0xfa)])_0x4970de['fpYrs'](printDualExistsHint,_0x2b781b);const _0x21f52e=_0x4970de[_0x17567b(0xef)](unsetProfileOverride,getProjectPath(),_0x2b781b,_0x4ad4df);_0x21f52e?console['log'](_0x17567b(0xe7)+_0x4ad4df+_0x17567b(0xd9)+_0x2b781b+'\x22'):console['log'](_0x17567b(0xd8)+_0x4ad4df+'\x22\x20not\x20found');return;}const _0x2eee57=await loadSettings(_0x2b781b),_0x4c435f=deleteNestedValue(_0x2eee57,_0x4ad4df);_0x4c435f?(await saveSettings(_0x2b781b,_0x2eee57),console[_0x17567b(0x10a)](_0x17567b(0xe7)+_0x4ad4df)):console[_0x17567b(0x10a)]('Key\x20\x22'+_0x4ad4df+'\x22\x20not\x20found');}export async function configReset(_0x5e1825){const _0x5a8b69=_0x578d6c,_0x40d7af={'XcHOO':function(_0xda00f8,_0x46100a){return _0xda00f8(_0x46100a);},'PZnVH':function(_0x2f857a,_0x4cf8d3){return _0x2f857a===_0x4cf8d3;},'COfyn':_0x5a8b69(0x104)},_0x893cd9=await _0x40d7af['XcHOO'](resolveProfileTarget,_0x5e1825);if(_0x40d7af['PZnVH'](_0x893cd9['kind'],_0x40d7af['COfyn'])){resetProfileOverrides(getProjectPath(),_0x5e1825),console['log']('Cleared\x20local\x20overrides\x20for\x20\x22'+_0x5e1825+'\x22');return;}console[_0x5a8b69(0x10a)]('\x22'+_0x5e1825+'\x22\x20is\x20a\x20local\x20profile.\x20Use\x20\x22ranger\x20profile\x20config\x20unset\x20'+_0x5e1825+_0x5a8b69(0xe1));}
1
+ (function(_0x38b42a,_0x3386a9){const _0x2edff9=_0x3a63,_0x460947=_0x38b42a();while(!![]){try{const _0x5aa21a=parseInt(_0x2edff9(0x204))/0x1*(-parseInt(_0x2edff9(0x227))/0x2)+parseInt(_0x2edff9(0x21c))/0x3+-parseInt(_0x2edff9(0x219))/0x4+-parseInt(_0x2edff9(0x1eb))/0x5+-parseInt(_0x2edff9(0x1fc))/0x6+-parseInt(_0x2edff9(0x200))/0x7*(-parseInt(_0x2edff9(0x203))/0x8)+parseInt(_0x2edff9(0x218))/0x9;if(_0x5aa21a===_0x3386a9)break;else _0x460947['push'](_0x460947['shift']());}catch(_0x11ed3f){_0x460947['push'](_0x460947['shift']());}}}(_0x4926,0xc008e));function _0x4926(){const _0x458170=['Profile\x20\x22','undefined','bWJxk','dCJlJ','UgwnP','BaPbO','\x20\x20Note:\x20\x22','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','64yGvPtt','ypzWS','6648420iFBjBV','\x20=\x20','bHzEP','\x22\x20and\x20cannot\x20be\x20unset;\x20the\x20legacy\x20tree\x20is\x20read-only\x20under\x20cloud\x20profiles.','\x22\x20lives\x20in\x20the\x20legacy\x20settings\x20file\x20for\x20\x22','(not\x20set)','object','isNaN','yyCtY','cloud','htPDw','gMQYB','\x20for\x20\x22','LoUUZ','Removed\x20','RuFNL','YvXFp','5323416JhvXog','parse',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','Cleared\x20local\x20overrides\x20for\x20\x22','35OwXnWH','nEEYq','kind','1231368IqrdjY','12511xYuXIm','gAcAJ','Invalid\x20value\x20for\x20','Key\x20\x22','log','local','GFxyP','false','\x22\x20is\x20a\x20local\x20profile.\x20Use\x20\x22ranger\x20profile\x20config\x20unset\x20','trim','vmazP','hTTFt','stringify','test','cwd','vkRRm','bopvH','tARVc','startsWith','No\x20configuration\x20set\x20for\x20\x22','22018635Fhrouf','4470736YXChBB','alsoExistsElsewhere','TtriJ','3916230WYTQev','Set\x20','includes'];_0x4926=function(){return _0x458170;};return _0x4926();}import{existsSync}from'fs';import{loadSettings,getNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';import{fetchCloudProfile}from'./utils/cloudProfile.js';import{mergeCloudProfileSettings,readProfileOverrides,resetProfileOverrides,setProfileOverride,unsetProfileOverride}from'./utils/projectsConfig.js';const BOOLEAN_KEYS=['headless','allowInsecureLocalhost'];function parseLocalValue(_0x5a4e4b,_0x4c9d78){const _0x2a252a=_0x3a63,_0x3de940={'bopvH':'true','nEEYq':function(_0x1e6eb9,_0x5dc358){return _0x1e6eb9===_0x5dc358;},'RuFNL':_0x2a252a(0x20b)};if(BOOLEAN_KEYS[_0x2a252a(0x21e)](_0x5a4e4b)){if(_0x4c9d78===_0x3de940[_0x2a252a(0x214)])return!![];if(_0x3de940[_0x2a252a(0x201)](_0x4c9d78,_0x3de940[_0x2a252a(0x1fa)]))return![];throw new Error(_0x2a252a(0x206)+_0x5a4e4b+_0x2a252a(0x1fe));}return _0x4c9d78;}function _0x3a63(_0x3c2b75,_0x49c286){_0x3c2b75=_0x3c2b75-0x1eb;const _0x4926d1=_0x4926();let _0x3a63c8=_0x4926d1[_0x3c2b75];return _0x3a63c8;}function parseOverrideValue(_0x2d0185){const _0x5884c4=_0x3a63,_0x59d2ac={'UgwnP':function(_0x5683a5,_0x288e4e){return _0x5683a5===_0x288e4e;},'YPhkw':'true','bWJxk':_0x5884c4(0x20b),'yISYR':'null','YqTcZ':_0x5884c4(0x220),'xnSIv':function(_0x235cb0,_0x551b83){return _0x235cb0(_0x551b83);}};if(_0x59d2ac[_0x5884c4(0x223)](_0x2d0185,_0x59d2ac['YPhkw']))return!![];if(_0x59d2ac[_0x5884c4(0x223)](_0x2d0185,_0x59d2ac[_0x5884c4(0x221)]))return![];if(_0x59d2ac['UgwnP'](_0x2d0185,_0x59d2ac['yISYR']))return null;if(_0x2d0185===_0x59d2ac['YqTcZ'])return undefined;if(/^-?\d+$/[_0x5884c4(0x211)](_0x2d0185)){const _0xa6a622=Number(_0x2d0185);if(Number['isSafeInteger'](_0xa6a622))return _0xa6a622;}if(/^-?\d+\.\d+$/['test'](_0x2d0185)){const _0x1d0f82=_0x59d2ac['xnSIv'](Number,_0x2d0185);if(!Number[_0x5884c4(0x1f2)](_0x1d0f82))return _0x1d0f82;}const _0x4a085b=_0x2d0185[_0x5884c4(0x20d)]();if(_0x4a085b[_0x5884c4(0x216)]('{')&&_0x4a085b['endsWith']('}')||_0x4a085b[_0x5884c4(0x216)]('[')&&_0x4a085b['endsWith'](']'))try{return JSON[_0x5884c4(0x1fd)](_0x4a085b);}catch{}return _0x2d0185;}async function resolveProfileTarget(_0x1291ff){const _0x178762=_0x3a63,_0x2dfc29={'hTTFt':function(_0x3b644e,_0x3883a8){return _0x3b644e(_0x3883a8);},'yEEyf':_0x178762(0x209)},_0x2113e9=existsSync(_0x2dfc29[_0x178762(0x20f)](getEnvDir,_0x1291ff));let _0x3e910e=![];try{const _0xd5cd4f=await fetchCloudProfile(_0x1291ff);_0x3e910e=Boolean(_0xd5cd4f);}catch{}if(_0x3e910e)return{'kind':_0x178762(0x1f4),'alsoExistsElsewhere':_0x2113e9};if(_0x2113e9)return{'kind':_0x2dfc29['yEEyf'],'alsoExistsElsewhere':![]};throw new Error(_0x178762(0x21f)+_0x1291ff+_0x178762(0x226)+_0x1291ff);}function printDualExistsHint(_0x234885){const _0x5007ce=_0x3a63;console['log'](_0x5007ce(0x225)+_0x234885+'\x22\x20also\x20exists\x20as\x20a\x20local\x20profile;\x20editing\x20the\x20cloud\x20profile.');}function getProjectPath(){const _0x58fa38=_0x3a63;return process[_0x58fa38(0x212)]();}async function loadEffectiveCloudSettings(_0x2f806c){const _0x12ee0f=_0x3a63,_0x124d8d={'jlWpa':function(_0x4b9da2){return _0x4b9da2();},'BaPbO':function(_0x255313,_0x558385,_0x1280ad){return _0x255313(_0x558385,_0x1280ad);},'rJMxF':function(_0x15c189,_0x4587ea){return _0x15c189??_0x4587ea;}},_0x1da1dd=await fetchCloudProfile(_0x2f806c),_0x4d9788=readProfileOverrides(_0x124d8d['jlWpa'](getProjectPath),_0x2f806c);return _0x124d8d[_0x12ee0f(0x224)](mergeCloudProfileSettings,_0x1da1dd?.['settings']??{},_0x124d8d['rJMxF'](_0x4d9788,undefined));}export async function configSet(_0x1ee03f,_0x4cd88e,_0x4665a5){const _0x848ccd=_0x3a63,_0x1a6c25={'xxfvl':function(_0x21d0bc,_0x374498){return _0x21d0bc(_0x374498);},'HRrdZ':function(_0x135b26,_0x1dc1aa){return _0x135b26===_0x1dc1aa;},'XiCWB':'cloud','vkRRm':function(_0x5c489f,_0x26ac99){return _0x5c489f(_0x26ac99);},'yyCtY':function(_0x2a9b0d,_0x4d5ce0){return _0x2a9b0d(_0x4d5ce0);},'vPOHh':function(_0x18e048){return _0x18e048();},'fpxkl':function(_0x3a8d50,_0xe3483e,_0x418d4c){return _0x3a8d50(_0xe3483e,_0x418d4c);},'FIHwe':function(_0x319fc9,_0x287a60,_0x19494b,_0x50c659,_0x2b45f3){return _0x319fc9(_0x287a60,_0x19494b,_0x50c659,_0x2b45f3);}},_0x920056=await _0x1a6c25['xxfvl'](resolveProfileTarget,_0x1ee03f);if(_0x1a6c25['HRrdZ'](_0x920056['kind'],_0x1a6c25['XiCWB'])){if(_0x920056[_0x848ccd(0x21a)])_0x1a6c25[_0x848ccd(0x213)](printDualExistsHint,_0x1ee03f);const _0x31c63f=_0x1a6c25[_0x848ccd(0x1f3)](parseOverrideValue,_0x4665a5);setProfileOverride(_0x1a6c25['vPOHh'](getProjectPath),_0x1ee03f,_0x4cd88e,_0x31c63f),console['log'](_0x848ccd(0x21d)+_0x4cd88e+_0x848ccd(0x1ec)+JSON[_0x848ccd(0x210)](_0x31c63f)+_0x848ccd(0x1f7)+_0x1ee03f+'\x22');return;}const _0x188a95=_0x1a6c25['fpxkl'](parseLocalValue,_0x4cd88e,_0x4665a5);_0x1a6c25['FIHwe'](setProfileOverride,getProjectPath(),_0x1ee03f,_0x4cd88e,_0x188a95),console[_0x848ccd(0x208)]('Set\x20'+_0x4cd88e+'\x20=\x20'+_0x188a95+'\x20for\x20\x22'+_0x1ee03f+'\x22');}export async function configGet(_0x21bf89,_0x58597b){const _0x1b5ec0=_0x3a63,_0x207d16={'tARVc':function(_0x5cd581,_0x234bba){return _0x5cd581===_0x234bba;},'gAcAJ':'cloud','XfVml':function(_0x2a9186,_0x4cca7e){return _0x2a9186(_0x4cca7e);},'FQWbY':function(_0x46fc92,_0x4cb70e){return _0x46fc92===_0x4cb70e;},'GFxyP':'object','tlTzt':function(_0x3fd9a2,_0x32d9b8,_0x4c1161){return _0x3fd9a2(_0x32d9b8,_0x4c1161);}},_0x2ce3f6=await resolveProfileTarget(_0x21bf89);if(_0x207d16['tARVc'](_0x2ce3f6[_0x1b5ec0(0x202)],_0x207d16[_0x1b5ec0(0x205)])){const _0x2ea9fd=await _0x207d16['XfVml'](loadEffectiveCloudSettings,_0x21bf89),_0x16b60e=getNestedValue(_0x2ea9fd,_0x58597b);if(_0x207d16['FQWbY'](_0x16b60e,undefined))console['log'](_0x1b5ec0(0x1f0));else _0x207d16[_0x1b5ec0(0x215)](typeof _0x16b60e,_0x207d16[_0x1b5ec0(0x20a)])?console[_0x1b5ec0(0x208)](JSON['stringify'](_0x16b60e,null,0x2)):console['log'](_0x16b60e);return;}const _0x162e90=await loadSettings(_0x21bf89),_0x41f4df=_0x207d16['tlTzt'](getNestedValue,_0x162e90,_0x58597b);if(_0x41f4df===undefined)console['log'](_0x1b5ec0(0x1f0));else _0x207d16['tARVc'](typeof _0x41f4df,_0x1b5ec0(0x1f1))?console[_0x1b5ec0(0x208)](JSON['stringify'](_0x41f4df,null,0x2)):console[_0x1b5ec0(0x208)](_0x41f4df);}export async function configList(_0x4b97d3){const _0x4f7f23=_0x3a63,_0x4053d4={'TtriJ':function(_0x14142f,_0x2be4ac){return _0x14142f(_0x2be4ac);},'ypzWS':function(_0x2e2cc7,_0x1e633c){return _0x2e2cc7===_0x1e633c;},'htPDw':_0x4f7f23(0x1f4),'BfrKL':function(_0x21b0f6,_0x22a539){return _0x21b0f6===_0x22a539;},'LoUUZ':function(_0x59c4b0,_0x3618fc){return _0x59c4b0(_0x3618fc);}},_0x28b3c1=await _0x4053d4[_0x4f7f23(0x21b)](resolveProfileTarget,_0x4b97d3);if(_0x4053d4[_0x4f7f23(0x228)](_0x28b3c1['kind'],_0x4053d4[_0x4f7f23(0x1f5)])){const _0x1265b7=await _0x4053d4['TtriJ'](loadEffectiveCloudSettings,_0x4b97d3);if(!_0x1265b7||_0x4053d4['BfrKL'](Object['keys'](_0x1265b7)['length'],0x0)){console['log'](_0x4f7f23(0x217)+_0x4b97d3+'\x22');return;}console[_0x4f7f23(0x208)](JSON[_0x4f7f23(0x210)](_0x1265b7,null,0x2));return;}const _0x1400e7=_0x4053d4[_0x4f7f23(0x1f8)](getSettingsPath,_0x4b97d3);if(!_0x4053d4['LoUUZ'](existsSync,_0x1400e7)){console[_0x4f7f23(0x208)](_0x4f7f23(0x217)+_0x4b97d3+'\x22');return;}const _0x1baf93=await loadSettings(_0x4b97d3),_0x22679b=formatSettings(_0x1baf93);!_0x22679b?console[_0x4f7f23(0x208)](_0x4f7f23(0x217)+_0x4b97d3+'\x22'):console['log'](_0x22679b);}export async function configUnset(_0x30608f,_0x358ca4){const _0x21ad1a=_0x3a63,_0x77879e={'vmazP':function(_0x35dd27,_0x18ba2f){return _0x35dd27(_0x18ba2f);},'PULRO':function(_0x1fa4c6,_0x530176){return _0x1fa4c6===_0x530176;},'Aqrtu':function(_0x1f859c,_0x4b236f,_0x3f7164,_0x365942){return _0x1f859c(_0x4b236f,_0x3f7164,_0x365942);},'gMQYB':function(_0x3bcd5e){return _0x3bcd5e();},'bHzEP':function(_0x1bd385,_0x377b23){return _0x1bd385(_0x377b23);}},_0x387701=await _0x77879e['vmazP'](resolveProfileTarget,_0x30608f);if(_0x77879e['PULRO'](_0x387701['kind'],_0x21ad1a(0x1f4))){if(_0x387701[_0x21ad1a(0x21a)])_0x77879e[_0x21ad1a(0x20e)](printDualExistsHint,_0x30608f);const _0x11fb8b=unsetProfileOverride(getProjectPath(),_0x30608f,_0x358ca4);_0x11fb8b?console['log'](_0x21ad1a(0x1f9)+_0x358ca4+_0x21ad1a(0x1f7)+_0x30608f+'\x22'):console[_0x21ad1a(0x208)](_0x21ad1a(0x207)+_0x358ca4+'\x22\x20not\x20found');return;}const _0x344e86=_0x77879e['Aqrtu'](unsetProfileOverride,_0x77879e[_0x21ad1a(0x1f6)](getProjectPath),_0x30608f,_0x358ca4);if(_0x344e86){console['log']('Removed\x20'+_0x358ca4);return;}const _0x2cc99e=await _0x77879e[_0x21ad1a(0x1ed)](loadSettings,_0x30608f),_0x2f1e37=deleteNestedValue(_0x2cc99e,_0x358ca4);_0x2f1e37?console[_0x21ad1a(0x208)]('Key\x20\x22'+_0x358ca4+_0x21ad1a(0x1ef)+_0x30608f+_0x21ad1a(0x1ee)):console[_0x21ad1a(0x208)]('Key\x20\x22'+_0x358ca4+'\x22\x20not\x20found');}export async function configReset(_0x1d1782){const _0x32128f=_0x3a63,_0x2a09c1={'YvXFp':function(_0x410771,_0xab6876){return _0x410771===_0xab6876;},'BMIPv':_0x32128f(0x1f4),'dCJlJ':function(_0x285386,_0x556ff4,_0x1a0183){return _0x285386(_0x556ff4,_0x1a0183);}},_0x439214=await resolveProfileTarget(_0x1d1782);if(_0x2a09c1[_0x32128f(0x1fb)](_0x439214[_0x32128f(0x202)],_0x2a09c1['BMIPv'])){_0x2a09c1[_0x32128f(0x222)](resetProfileOverrides,getProjectPath(),_0x1d1782),console[_0x32128f(0x208)](_0x32128f(0x1ff)+_0x1d1782+'\x22');return;}console[_0x32128f(0x208)]('\x22'+_0x1d1782+_0x32128f(0x20c)+_0x1d1782+'\x20<key>\x22\x20to\x20remove\x20individual\x20values.');}
@@ -1 +1 @@
1
- const _0x4a724d=_0x410d;(function(_0x1f2fe9,_0x5003a6){const _0x55b0a1=_0x410d,_0x5b1925=_0x1f2fe9();while(!![]){try{const _0x37b336=-parseInt(_0x55b0a1(0x151))/0x1+-parseInt(_0x55b0a1(0x160))/0x2*(-parseInt(_0x55b0a1(0x159))/0x3)+parseInt(_0x55b0a1(0x153))/0x4+-parseInt(_0x55b0a1(0x16b))/0x5+-parseInt(_0x55b0a1(0x15b))/0x6*(parseInt(_0x55b0a1(0x164))/0x7)+-parseInt(_0x55b0a1(0x156))/0x8+parseInt(_0x55b0a1(0x150))/0x9;if(_0x37b336===_0x5003a6)break;else _0x5b1925['push'](_0x5b1925['shift']());}catch(_0x3e6008){_0x5b1925['push'](_0x5b1925['shift']());}}}(_0x48a8,0xbb35e));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x48a8(){const _0x530259=['1121673VlmULy','baseUrl','\x20\x20\x20\x20\x20\x20URL:\x20','sDZHC','environmentKey','FZpXJ','\x0aNo\x20profiles\x20found.','1232260cXFKSd','yUNLo','includes','local','length','sort','AwqBa','25661205zXAxuu','1173305THGhEk','log','1466976JznIgn','sessions','bug-bashes','4355808iUhwCc','reports','gmXmP','314253ELxAbu','SEWca','30VEHsGQ','push','\x20[cloud]','IPOdP','name','6CeVdZz','sessionUpdatedAt','map','isDirectory'];_0x48a8=function(){return _0x530259;};return _0x48a8();}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const NON_ENV_DIRS=[_0x4a724d(0x154),_0x4a724d(0x155),_0x4a724d(0x157),'local','ci'];export async function getEnvNames(){const _0x4975ee=_0x4a724d,_0x599976={'FZpXJ':function(_0x2d8bc8,_0x5df786){return _0x2d8bc8(_0x5df786);},'Kxobd':function(_0x5d61fc){return _0x5d61fc();},'uUUfY':'local','Eabls':function(_0x30b51b,_0x8c2fd9,_0x224621){return _0x30b51b(_0x8c2fd9,_0x224621);},'JUBDt':function(_0x59884b,_0x55a62b,_0x485386){return _0x59884b(_0x55a62b,_0x485386);},'gmXmP':'.txt','JSFdG':function(_0x3efd94,_0x49a0d4){return _0x3efd94(_0x49a0d4);},'oQyRI':function(_0x5ed2e0,_0x212b85,_0x318b22){return _0x5ed2e0(_0x212b85,_0x318b22);},'IPOdP':'legacy'},_0x4a26e2=getRangerDir();if(!_0x599976[_0x4975ee(0x169)](existsSync,_0x4a26e2))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x32ae3f=await _0x599976['Kxobd'](readActiveProfileName),_0x27edf0=[],_0x2d003b={},_0x5dc310=join(_0x4a26e2,'local');if(existsSync(_0x5dc310)){const _0x3f25cb=await readdir(_0x5dc310);for(const _0x3a26f0 of _0x3f25cb){const _0x12269=join(_0x5dc310,_0x3a26f0),_0x2645d3=await stat(_0x12269);_0x2645d3['isDirectory']()&&(_0x27edf0[_0x4975ee(0x15c)](_0x3a26f0),_0x2d003b[_0x3a26f0]=_0x599976['uUUfY']);}}const _0x5ccb3c=_0x599976['Eabls'](join,_0x4a26e2,'ci');if(existsSync(_0x5ccb3c)){const _0x2edc7c=await readdir(_0x5ccb3c);for(const _0x55f874 of _0x2edc7c){const _0x215f53=_0x599976['JUBDt'](join,_0x5ccb3c,_0x55f874),_0x25b740=await stat(_0x215f53);_0x25b740[_0x4975ee(0x163)]()&&(_0x27edf0[_0x4975ee(0x15c)](_0x55f874),_0x2d003b[_0x55f874]='ci');}}const _0x2bace8=await readdir(_0x4a26e2);for(const _0x53b02c of _0x2bace8){if(NON_ENV_DIRS[_0x4975ee(0x14b)](_0x53b02c))continue;if(_0x53b02c['startsWith']('.'))continue;if(_0x53b02c['endsWith'](_0x599976[_0x4975ee(0x158)]))continue;const _0x5163f7=_0x599976['JUBDt'](join,_0x4a26e2,_0x53b02c),_0x17cdfb=await _0x599976['JSFdG'](stat,_0x5163f7);_0x17cdfb[_0x4975ee(0x163)]()&&existsSync(_0x599976['oQyRI'](join,_0x5163f7,'settings.json'))&&(!_0x27edf0[_0x4975ee(0x14b)](_0x53b02c)&&(_0x27edf0['push'](_0x53b02c),_0x2d003b[_0x53b02c]=_0x599976[_0x4975ee(0x15e)]));}return{'envNames':_0x27edf0,'activeEnv':_0x32ae3f,'envTypes':_0x2d003b};}function _0x410d(_0x7ce182,_0x2e2d3f){_0x7ce182=_0x7ce182-0x14a;const _0x48a8e8=_0x48a8();let _0x410d5f=_0x48a8e8[_0x7ce182];return _0x410d5f;}export async function envList(){const _0x3cde0c=_0x4a724d,_0x549fed={'SEWca':function(_0x217a1e){return _0x217a1e();},'tFWrU':function(_0x263c10,_0x2fd042){return _0x263c10===_0x2fd042;},'uELSy':_0x3cde0c(0x16a),'sDZHC':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','yUNLo':function(_0x34a0d3,_0x59f8c4){return _0x34a0d3(_0x59f8c4);},'AwqBa':'legacy','jOfxW':function(_0x149d15,_0x333e90){return _0x149d15>_0x333e90;},'gewYe':'\x0aCloud\x20Profiles:'},{envNames:_0x260b96,activeEnv:_0x173e61,envTypes:_0x5e00e8}=await getEnvNames();let _0x83e211=[];try{_0x83e211=await _0x549fed[_0x3cde0c(0x15a)](listCloudProfiles);}catch{}if(_0x260b96['length']===0x0&&_0x549fed['tFWrU'](_0x83e211['length'],0x0)){console['log'](_0x549fed['uELSy']),console['log'](_0x549fed[_0x3cde0c(0x167)]);return;}const _0x22a8cd=new Set(_0x83e211[_0x3cde0c(0x162)](_0x553a64=>_0x553a64[_0x3cde0c(0x15f)]));if(_0x260b96['length']>0x0){console['log']('\x0aLocal\x20Profiles:');for(const _0x1e38f6 of _0x260b96[_0x3cde0c(0x14e)]()){const _0x5a73fe=_0x1e38f6===_0x173e61&&!_0x22a8cd['has'](_0x1e38f6),_0x1d189e=_0x5e00e8[_0x1e38f6]||_0x3cde0c(0x14c),_0x4542cf=await _0x549fed[_0x3cde0c(0x14a)](loadSettings,_0x1e38f6),_0x27483c=_0x549fed['tFWrU'](_0x1d189e,_0x549fed[_0x3cde0c(0x14f)])?'':'\x20['+_0x1d189e+']';console['log']('\x20\x20'+(_0x5a73fe?'*\x20':'\x20\x20')+_0x1e38f6+_0x27483c),_0x4542cf['baseUrl']&&console['log'](_0x3cde0c(0x166)+_0x4542cf[_0x3cde0c(0x165)]),_0x4542cf['environmentDetails']&&console[_0x3cde0c(0x152)]('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x4542cf['environmentDetails']);}}if(_0x549fed['jOfxW'](_0x83e211[_0x3cde0c(0x14d)],0x0)){console[_0x3cde0c(0x152)](_0x549fed['gewYe']);for(const _0x1e1a4d of _0x83e211['sort']((_0x5ed522,_0x4d10af)=>_0x5ed522[_0x3cde0c(0x15f)]['localeCompare'](_0x4d10af['name']))){const _0x4a04b2=_0x549fed['tFWrU'](_0x1e1a4d[_0x3cde0c(0x15f)],_0x173e61),_0x4b4628=_0x1e1a4d['environmentKey']?'\x20('+_0x1e1a4d[_0x3cde0c(0x168)]+')':'',_0x259088=_0x1e1a4d[_0x3cde0c(0x161)]?'cached\x20(updated\x20'+_0x1e1a4d[_0x3cde0c(0x161)]+')':'no\x20session';console[_0x3cde0c(0x152)]('\x20\x20'+(_0x4a04b2?'*\x20':'\x20\x20')+_0x1e1a4d[_0x3cde0c(0x15f)]+_0x3cde0c(0x15d)+_0x4b4628),console['log']('\x20\x20\x20\x20\x20\x20Session:\x20'+_0x259088);}}_0x173e61&&console['log']('\x0a*\x20=\x20active\x20profile');}
1
+ const _0x1f4b20=_0x1434;function _0x447d(){const _0x488389=['\x0aCloud\x20Profiles:','9OHaUwU','\x20\x20\x20\x20\x20\x20URL:\x20','7oLvQIs','sort','sessionUpdatedAt','isDirectory','name','has','8544486WOcrBm','includes','Run:\x20ranger\x20profile\x20add\x20<profile-name>','nuBVp','length','210294nNAlWL','1960306xeiSaP','legacy','log','reports','6433040CrDRbt','5407140CpgKuQ','1073096czHvaF','vEGrJ','\x0aNo\x20profiles\x20found.','push','TykFA','bug-bashes','.txt','environmentKey','mQSBC','1kRlWgt','34282440OKQXvw','\x20\x20\x20\x20\x20\x20Details:\x20'];_0x447d=function(){return _0x488389;};return _0x447d();}(function(_0x151f7c,_0x31945c){const _0x16a188=_0x1434,_0x2e78b1=_0x151f7c();while(!![]){try{const _0x2b3c2a=-parseInt(_0x16a188(0x8b))/0x1*(-parseInt(_0x16a188(0x9d))/0x2)+-parseInt(_0x16a188(0x9c))/0x3+-parseInt(_0x16a188(0x82))/0x4+-parseInt(_0x16a188(0x81))/0x5+-parseInt(_0x16a188(0x97))/0x6+parseInt(_0x16a188(0x91))/0x7*(-parseInt(_0x16a188(0x80))/0x8)+parseInt(_0x16a188(0x8f))/0x9*(parseInt(_0x16a188(0x8c))/0xa);if(_0x2b3c2a===_0x31945c)break;else _0x2e78b1['push'](_0x2e78b1['shift']());}catch(_0x4b42e8){_0x2e78b1['push'](_0x2e78b1['shift']());}}}(_0x447d,0xb9a42));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';function _0x1434(_0x2082c8,_0x2cacab){_0x2082c8=_0x2082c8-0x80;const _0x447dbc=_0x447d();let _0x143450=_0x447dbc[_0x2082c8];return _0x143450;}import{listCloudProfiles}from'./utils/cloudProfile.js';const NON_ENV_DIRS=['sessions',_0x1f4b20(0x87),_0x1f4b20(0xa0),'local','ci'];export async function getEnvNames(){const _0x2ef36d=_0x1f4b20,_0xbe6381={'WvOTz':'local','mQSBC':function(_0x1ff99a,_0x47d6a2){return _0x1ff99a(_0x47d6a2);},'vEGrJ':function(_0x5e3b97,_0x246bf9,_0x3509ee){return _0x5e3b97(_0x246bf9,_0x3509ee);},'TykFA':'settings.json'},_0x1a0bfa=getRangerDir();if(!existsSync(_0x1a0bfa))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x556fe5=await readActiveProfileName(),_0x3aef1d=[],_0x397237={},_0x1ae99e=join(_0x1a0bfa,_0xbe6381['WvOTz']);if(existsSync(_0x1ae99e)){const _0x559145=await _0xbe6381[_0x2ef36d(0x8a)](readdir,_0x1ae99e);for(const _0x80443b of _0x559145){const _0x95b010=join(_0x1ae99e,_0x80443b),_0x566428=await stat(_0x95b010);_0x566428[_0x2ef36d(0x94)]()&&(_0x3aef1d['push'](_0x80443b),_0x397237[_0x80443b]='local');}}const _0x17ae7f=join(_0x1a0bfa,'ci');if(existsSync(_0x17ae7f)){const _0x4bc9bb=await _0xbe6381[_0x2ef36d(0x8a)](readdir,_0x17ae7f);for(const _0x75f8b2 of _0x4bc9bb){const _0xf8c213=join(_0x17ae7f,_0x75f8b2),_0x4deb7e=await stat(_0xf8c213);_0x4deb7e[_0x2ef36d(0x94)]()&&(_0x3aef1d[_0x2ef36d(0x85)](_0x75f8b2),_0x397237[_0x75f8b2]='ci');}}const _0x4c8bf5=await readdir(_0x1a0bfa);for(const _0xd0df64 of _0x4c8bf5){if(NON_ENV_DIRS[_0x2ef36d(0x98)](_0xd0df64))continue;if(_0xd0df64['startsWith']('.'))continue;if(_0xd0df64['endsWith'](_0x2ef36d(0x88)))continue;const _0x39c582=join(_0x1a0bfa,_0xd0df64),_0x20b344=await stat(_0x39c582);_0x20b344[_0x2ef36d(0x94)]()&&existsSync(_0xbe6381[_0x2ef36d(0x83)](join,_0x39c582,_0xbe6381[_0x2ef36d(0x86)]))&&(!_0x3aef1d['includes'](_0xd0df64)&&(_0x3aef1d[_0x2ef36d(0x85)](_0xd0df64),_0x397237[_0xd0df64]=_0x2ef36d(0x9e)));}return{'envNames':_0x3aef1d,'activeEnv':_0x556fe5,'envTypes':_0x397237};}export async function envList(){const _0x2f596d=_0x1f4b20,_0x3f9c02={'HNGKN':function(_0x4037b9,_0x3c1099){return _0x4037b9===_0x3c1099;},'zOECt':_0x2f596d(0x84),'nuBVp':_0x2f596d(0x99),'qIwCx':'\x0aLocal\x20Profiles:','kMthu':function(_0x386589,_0x42049f){return _0x386589(_0x42049f);},'BkyfV':function(_0x312472,_0x139799){return _0x312472>_0x139799;},'qcrZq':function(_0x11ae32,_0x3d1e9c){return _0x11ae32===_0x3d1e9c;}},{envNames:_0xc4e7ca,activeEnv:_0x2b4ab6,envTypes:_0x42355d}=await getEnvNames();let _0x315db1=[];try{_0x315db1=await listCloudProfiles();}catch{}if(_0xc4e7ca[_0x2f596d(0x9b)]===0x0&&_0x3f9c02['HNGKN'](_0x315db1[_0x2f596d(0x9b)],0x0)){console[_0x2f596d(0x9f)](_0x3f9c02['zOECt']),console['log'](_0x3f9c02[_0x2f596d(0x9a)]);return;}const _0x1890f1=new Set(_0x315db1['map'](_0x3dda2f=>_0x3dda2f[_0x2f596d(0x95)]));if(_0xc4e7ca['length']>0x0){console[_0x2f596d(0x9f)](_0x3f9c02['qIwCx']);for(const _0xd583f5 of _0xc4e7ca[_0x2f596d(0x92)]()){const _0x514b6c=_0x3f9c02['HNGKN'](_0xd583f5,_0x2b4ab6)&&!_0x1890f1[_0x2f596d(0x96)](_0xd583f5),_0x3c255d=_0x42355d[_0xd583f5]||'local',_0x14a623=await _0x3f9c02['kMthu'](loadSettings,_0xd583f5),_0x4e5edc=_0x3c255d===_0x2f596d(0x9e)?'':'\x20['+_0x3c255d+']';console['log']('\x20\x20'+(_0x514b6c?'*\x20':'\x20\x20')+_0xd583f5+_0x4e5edc),_0x14a623['baseUrl']&&console['log'](_0x2f596d(0x90)+_0x14a623['baseUrl']),_0x14a623['environmentDetails']&&console[_0x2f596d(0x9f)](_0x2f596d(0x8d)+_0x14a623['environmentDetails']);}}if(_0x3f9c02['BkyfV'](_0x315db1[_0x2f596d(0x9b)],0x0)){console[_0x2f596d(0x9f)](_0x2f596d(0x8e));for(const _0x2b9234 of _0x315db1[_0x2f596d(0x92)]((_0x3455c7,_0x2d3430)=>_0x3455c7['name']['localeCompare'](_0x2d3430[_0x2f596d(0x95)]))){const _0x3636b3=_0x3f9c02['qcrZq'](_0x2b9234[_0x2f596d(0x95)],_0x2b4ab6),_0x14b622=_0x2b9234[_0x2f596d(0x89)]?'\x20('+_0x2b9234['environmentKey']+')':'',_0x48a2c8=_0x2b9234[_0x2f596d(0x93)]?'cached\x20(updated\x20'+_0x2b9234['sessionUpdatedAt']+')':'no\x20session';console['log']('\x20\x20'+(_0x3636b3?'*\x20':'\x20\x20')+_0x2b9234['name']+'\x20[cloud]'+_0x14b622),console[_0x2f596d(0x9f)]('\x20\x20\x20\x20\x20\x20Session:\x20'+_0x48a2c8);}}_0x2b4ab6&&console[_0x2f596d(0x9f)]('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0x24dcdd=_0x31ff;(function(_0xece8db,_0x52a0b0){const _0x194af8=_0x31ff,_0x383ce3=_0xece8db();while(!![]){try{const _0x5ca270=parseInt(_0x194af8(0xd6))/0x1*(-parseInt(_0x194af8(0x97))/0x2)+parseInt(_0x194af8(0xa9))/0x3+parseInt(_0x194af8(0x154))/0x4+parseInt(_0x194af8(0x147))/0x5*(parseInt(_0x194af8(0xf3))/0x6)+parseInt(_0x194af8(0x13d))/0x7+parseInt(_0x194af8(0xbe))/0x8*(-parseInt(_0x194af8(0x126))/0x9)+-parseInt(_0x194af8(0x98))/0xa*(parseInt(_0x194af8(0x82))/0xb);if(_0x5ca270===_0x52a0b0)break;else _0x383ce3['push'](_0x383ce3['shift']());}catch(_0x203187){_0x383ce3['push'](_0x383ce3['shift']());}}}(_0x5202,0xaa79d));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x5202(){const _0x425791=['BaEFi','hlykk','items','OwMve','assetUrl','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','blockedItems','warn','1|5|2|0|3|4','yCwlM','stats','tIhGi','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','dashboardUrl','DQmra','verification_in_progress','SMUtc','\x20\x20\x20\x20\x20\x20Approved','BgXSt','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','textContent','env','timing','Next\x20page:\x20ranger\x20list\x20--offset\x20','github.com/','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','map','scenarios','wsjHR','sessionId','canceledReason','authorEmail','SgTtO','153cemxne','position','checklistItems','sAdDq','\x0a✅\x20Scenario\x20added','RJtzK','\x20[has\x20reviewer\x20feedback]','createdAt','element','CLAUDE_SESSION_ID','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20\x20\x20ID:\x20','style','yQHgK','unaddressedComments','\x20—\x20no\x20comments','length','ztWUg','afmul','Step\x20','lMFDI','iteration','ZZZjP','6835374zciZbI','currentSessionId','QDDQA','vSrFu','onIMr','closed','\x20>\x20','RANGER_TEST_USERNAME','status','\x20--limit\x20','2125UNUbzL','\x20(v','\x20\x20✅\x20No\x20feedback\x20to\x20address','toLocaleString','\x20\x20\x20ID:\x20','.md','trim','HIWbc','canonicalFlow','\x0aAvailable\x20scenarios:','latestReview','aLQAw','\x20\x20\x20Description:\x20','2238632YVlDxq','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x0a❌\x20Invalid\x20scenario\x20index:\x20','kInUg','pWxvk','active-feature.txt','verified','ready','\x20\x20\x20','ulwBY','en-US','\x20\x20\x20Created:\x20','EPfSb','MBAbo','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','\x0a📋\x20Feedback\x20for:\x20','\x20\x20\x20Status:\x20','domRef','.\x20Feature\x20review\x20has\x20','repeat','WKxle','totalCount','dHgzs','type','toFixed','\x20\x20\x20\x20\x20\x20Incomplete:\x20','push','blocked','gitRepoUrl','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','21992091FfZoor','storage','EoUwA','ujkRm','selector','Scenario\x20','json','offset','\x0a✅\x20Feature\x20review\x20created:\x20',':\x20\x22','VxRoC','version','get','ncTGn','\x20\x20\x20Completed:\x20','replace','EhhcR','authorName','\x20of\x20','excludeScenarios','join','2zKTEvO','10Sjwink','name','SswyM','content','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','completed','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','in_progress','\x0a✅\x20Session\x20','QBCQl','\x20verified','spatial','isInteger','LUENb','find','npJMx','bAqOU','1818003MldciP','qnOjJ','browserSessionId','pendingItems','coordinates','\x20--current-branch','includeDeleted','xdOMB','agentResponse','split','zsoyv','PsPTw','stepName','\x20scenarios.','isTTY','screenshotUrls','iChog','pop','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','362504GFpDzf','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','location','exit','VMFgB','OitDC','\x20\x20\x20\x20\x20\x20Blocked:\x20','description','incompleteReason','completedAt','VUfIN','\x20Session\x20','PwIpk','kDaRC','...','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','screenshot','lZZJP','stdout','Cannot\x20conclude\x20session\x20with\x20status:\x20','filter','utf-8','assets','66145YRzPnZ','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x0aNo\x20feature\x20reviews\x20found.','No\x20sessions\x20found.','write','\x20--include-deleted','daWEJ','oAqXd','scenario','Please\x20finish\x20your\x20review\x20first:','lkdGz','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20\x20\x20📋\x20Selector:\x20','stdin','tbDiU','arrayBuffer','log','FceAE','round','\x20\x20\x20\x20','slAtW','selected','feedback-images','\x0a✅\x20Scenario\x20updated','\x20\x20\x20Branch:\x20','submittedAt','piDDO','hoyjm','BDnOf','19650rCLkdI','lVaUJ','notes','verifiedItems','error','gitBranch','incomplete','Screenshot\x20','\x20scenario(s).','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','pipe','approved','FPvyt','assetType','WJZRS','limit','blockedReason','\x20concluded.'];_0x5202=function(){return _0x425791;};return _0x5202();}import{execSync}from'child_process';import _0x148d44 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';function _0x31ff(_0xec2dc1,_0x3fe610){_0xec2dc1=_0xec2dc1-0x81;const _0x5202c4=_0x5202();let _0x31ff90=_0x5202c4[_0xec2dc1];return _0x31ff90;}import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE=_0x24dcdd(0x159),bold=_0x51802d=>'\x1b[1m'+_0x51802d+'\x1b[0m';function getGitRepoUrl(){const _0x5f0143=_0x24dcdd,_0x3c6a2e={'SMUtc':function(_0x133617,_0x537fd4,_0x5231f5){return _0x133617(_0x537fd4,_0x5231f5);},'SZQNU':'git\x20remote\x20get-url\x20origin','afmul':_0x5f0143(0xfd)};try{const _0x3b40fe=_0x3c6a2e[_0x5f0143(0x115)](execSync,_0x3c6a2e['SZQNU'],{'encoding':_0x5f0143(0xd4),'stdio':[_0x5f0143(0xfd),_0x3c6a2e[_0x5f0143(0x138)],'pipe']})[_0x5f0143(0x14d)]();return _0x3b40fe[_0x5f0143(0x91)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x5f0143(0x11d))[_0x5f0143(0x91)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0xdca80b=_0x24dcdd,_0x2a5054={'WJZRS':_0xdca80b(0xfd)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0xdca80b(0xd4),'stdio':['pipe',_0x2a5054[_0xdca80b(0x101)],_0xdca80b(0xfd)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x4a831e=_0x24dcdd,_0x2cebe4={'WGweY':function(_0xc18d6b){return _0xc18d6b();}},_0x12bee0=join(_0x2cebe4['WGweY'](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x12bee0))return null;try{const _0x19c844=await readFile(_0x12bee0,_0x4a831e(0xd4));return _0x19c844['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x1ac24d){const _0x4656ad=_0x24dcdd,_0x370c6a={'EPfSb':function(_0x19d36d,_0x1c6eb2,_0x17a1f3){return _0x19d36d(_0x1c6eb2,_0x17a1f3);},'QDDQA':function(_0x4bbf50,_0x1c2d7c){return _0x4bbf50(_0x1c2d7c);},'qdJnm':function(_0x44341f,_0x748550,_0x3ca433,_0x58bccf){return _0x44341f(_0x748550,_0x3ca433,_0x58bccf);}},_0x2f1f45=getRangerDir(),_0x4d78d8=_0x370c6a[_0x4656ad(0x160)](join,_0x2f1f45,ACTIVE_FEATURE_FILE);!_0x370c6a[_0x4656ad(0x13f)](existsSync,_0x2f1f45)&&await mkdir(_0x2f1f45,{'recursive':!![]}),await _0x370c6a['qdJnm'](writeFile,_0x4d78d8,_0x1ac24d,'utf-8');}function getProgressDisplay(_0x8af4bc){const _0x216eb6=_0x24dcdd,_0x452260={'hlykk':function(_0x35d2fb,_0x98db4e){return _0x35d2fb+_0x98db4e;},'BJkaz':function(_0x5b239c,_0x6008d3){return _0x5b239c+_0x6008d3;},'lZZJP':function(_0x4fef85,_0x3876a7){return _0x4fef85-_0x3876a7;},'piDDO':function(_0x1d48c2,_0x4804b2){return _0x1d48c2>_0x4804b2;},'FPvyt':function(_0x45c160,_0x51c6ce){return _0x45c160>_0x51c6ce;}},_0x4d97d1=_0x8af4bc[_0x216eb6(0xf6)]||0x0,_0xbbd094=_0x8af4bc['verificationInProgressItems']||0x0,_0x26a18b=_0x8af4bc[_0x216eb6(0x10b)]||0x0,_0x21f469=_0x8af4bc['incompleteItems']||0x0,_0x4634f5=_0x8af4bc[_0x216eb6(0xac)]||0x0,_0x478c1a=_0x452260[_0x216eb6(0x106)](_0x452260[_0x216eb6(0x106)](_0x4d97d1,_0xbbd094)+_0x26a18b+_0x21f469,_0x4634f5);if(_0x478c1a===0x0)return'-';const _0x2776c6=0xa,_0x2b1cc5=Math[_0x216eb6(0xe8)](_0x4d97d1/_0x478c1a*_0x2776c6),_0x61b2bd=_0x452260['BJkaz']('█'['repeat'](_0x2b1cc5),'░'[_0x216eb6(0x167)](_0x452260[_0x216eb6(0xd0)](_0x2776c6,_0x2b1cc5))),_0x2e3761=[];if(_0x452260['piDDO'](_0x26a18b,0x0))_0x2e3761[_0x216eb6(0x16e)](_0x26a18b+'\x20blocked');if(_0x452260[_0x216eb6(0xf0)](_0x21f469,0x0))_0x2e3761['push'](_0x21f469+'\x20incomplete');if(_0xbbd094>0x0)_0x2e3761[_0x216eb6(0x16e)](_0xbbd094+'\x20in\x20progress');const _0x2c17dd=_0x452260[_0x216eb6(0xff)](_0x2e3761['length'],0x0)?'\x20('+_0x2e3761['join'](',\x20')+')':'';return _0x61b2bd+'\x20'+_0x4d97d1+'/'+_0x478c1a+_0x216eb6(0xa2)+_0x2c17dd;}function getCurrentSessionItems(_0x37985d,_0x493209){const _0x11bc6e=_0x24dcdd;if(!_0x37985d['currentSessionId'])return _0x493209[_0x11bc6e(0xd3)](_0x4cdc6b=>!_0x4cdc6b[_0x11bc6e(0x122)]);return _0x493209['filter'](_0x3b27fb=>_0x3b27fb[_0x11bc6e(0x122)]===_0x37985d['currentSessionId']||!_0x3b27fb[_0x11bc6e(0x122)]);}function displayFeature(_0x7ccdeb,_0x38e956){const _0x2d86d9=_0x24dcdd,_0x4dee53={'ekcqg':function(_0x5de072,_0x4ddaee){return _0x5de072(_0x4ddaee);},'MBAbo':'\x0a\x20\x20\x20Scenarios:','ncTGn':function(_0x2c3d5f,_0xe5b553){return _0x2c3d5f<_0xe5b553;},'ztWUg':_0x2d86d9(0xfe),'aLQAw':function(_0x26ab3c,_0x4c7a23){return _0x26ab3c===_0x4c7a23;},'ebXGf':function(_0x25d0b4,_0x4f6007){return _0x25d0b4===_0x4f6007;},'SswyM':_0x2d86d9(0x114),'JWPRY':function(_0x5cf6af,_0x1a1afc){return _0x5cf6af>_0x1a1afc;},'FWHmD':function(_0x26760a,_0x34138a){return _0x26760a!==_0x34138a;},'EoUwA':_0x2d86d9(0x15a),'kaXIg':_0x2d86d9(0x12c),'PwIpk':function(_0x69cc8e,_0x1892cc){return _0x69cc8e+_0x1892cc;},'dHgzs':'blocked','LGwxd':function(_0x5123fb,_0x2559f2){return _0x5123fb===_0x2559f2;},'qnOjJ':_0x2d86d9(0xf9),'pWxvk':_0x2d86d9(0x142)};console['log']('\x0a'+_0x7ccdeb[_0x2d86d9(0x99)]+'\x20('+_0x7ccdeb['dashboardUrl']+')');_0x7ccdeb[_0x2d86d9(0x10f)]&&console['log']('\x20\x20\x20Progress:\x20'+_0x4dee53['ekcqg'](getProgressDisplay,_0x7ccdeb[_0x2d86d9(0x10f)]));_0x7ccdeb['description']&&console[_0x2d86d9(0xe6)](_0x2d86d9(0x153)+_0x7ccdeb[_0x2d86d9(0xc5)]);_0x7ccdeb[_0x2d86d9(0x170)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x7ccdeb['gitRepoUrl']);_0x7ccdeb[_0x2d86d9(0xf8)]&&console[_0x2d86d9(0xe6)](_0x2d86d9(0xee)+_0x7ccdeb[_0x2d86d9(0xf8)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x7ccdeb['createdAt'])[_0x2d86d9(0x14a)]());_0x7ccdeb[_0x2d86d9(0xc7)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x7ccdeb[_0x2d86d9(0xc7)])[_0x2d86d9(0x14a)]());if(_0x38e956&&_0x38e956['length']>0x0){console[_0x2d86d9(0xe6)](_0x4dee53[_0x2d86d9(0x161)]);for(let _0x10a599=0x0;_0x4dee53[_0x2d86d9(0x8f)](_0x10a599,_0x38e956[_0x2d86d9(0x136)]);_0x10a599++){const _0x1a80c4=_0x38e956[_0x10a599];let _0x348ae6;if(_0x1a80c4['status']===_0x2d86d9(0x142)&&_0x1a80c4['terminalReason']===_0x4dee53['ztWUg'])_0x348ae6='✅';else{if(_0x4dee53[_0x2d86d9(0x152)](_0x1a80c4['status'],_0x2d86d9(0x15a)))_0x348ae6='🟢';else{if(_0x1a80c4['status']===_0x2d86d9(0xf9))_0x348ae6='🟠';else{if(_0x4dee53['aLQAw'](_0x1a80c4['status'],_0x2d86d9(0x16f)))_0x348ae6='🛑';else{if(_0x4dee53['ebXGf'](_0x1a80c4[_0x2d86d9(0x145)],'closed'))_0x348ae6='⛔';else _0x1a80c4[_0x2d86d9(0x145)]===_0x4dee53[_0x2d86d9(0x9a)]?_0x348ae6='⏳':_0x348ae6='⬜';}}}}const _0x45b607=_0x1a80c4['version']>0x1?'\x20(v'+_0x1a80c4[_0x2d86d9(0x8d)]+')':'',_0x323cc9=_0x4dee53['JWPRY'](_0x1a80c4['version'],0x1)&&_0x1a80c4['parentItemId']&&_0x1a80c4[_0x2d86d9(0x145)]!=='closed'&&_0x4dee53['FWHmD'](_0x1a80c4['status'],_0x4dee53[_0x2d86d9(0x84)])?_0x4dee53['kaXIg']:'';console['log'](_0x2d86d9(0x15c)+_0x4dee53[_0x2d86d9(0xca)](_0x10a599,0x1)+'.\x20'+_0x348ae6+'\x20'+_0x1a80c4['description']+_0x45b607+_0x323cc9);_0x1a80c4['status']===_0x4dee53[_0x2d86d9(0x16a)]&&_0x1a80c4[_0x2d86d9(0x103)]&&console[_0x2d86d9(0xe6)](_0x2d86d9(0xc4)+_0x1a80c4['blockedReason']);_0x4dee53['LGwxd'](_0x1a80c4['status'],_0x4dee53[_0x2d86d9(0xaa)])&&_0x1a80c4['incompleteReason']&&console['log'](_0x2d86d9(0x16d)+_0x1a80c4[_0x2d86d9(0xc6)]);if(_0x4dee53['LGwxd'](_0x1a80c4[_0x2d86d9(0x145)],_0x4dee53[_0x2d86d9(0x158)])&&_0x4dee53['aLQAw'](_0x1a80c4['terminalReason'],_0x4dee53[_0x2d86d9(0x137)]))console['log'](_0x2d86d9(0x116));else _0x4dee53['aLQAw'](_0x1a80c4[_0x2d86d9(0x145)],_0x4dee53[_0x2d86d9(0x158)])&&_0x1a80c4[_0x2d86d9(0x123)]&&console[_0x2d86d9(0xe6)](_0x2d86d9(0xd7)+_0x1a80c4[_0x2d86d9(0x123)]);}}}export async function featureCreate(_0x36debc,_0x153d88){const _0x5eebbe=_0x24dcdd,_0xfa8509={'npJMx':function(_0xd69db,_0x526d70){return _0xd69db===_0x526d70;},'bOjfU':function(_0x2ecb0b,_0x3091d6){return _0x2ecb0b(_0x3091d6);},'BaEFi':function(_0x410812){return _0x410812();},'lMFDI':function(_0x2d814c){return _0x2d814c();}},{envNames:_0x50ba60}=await getEnvNames();if(_0xfa8509[_0x5eebbe(0xa7)](_0x50ba60[_0x5eebbe(0x136)],0x0)&&!process[_0x5eebbe(0x11a)][_0x5eebbe(0x144)]){let _0x5985bb=0x0;try{_0x5985bb=(await listCloudProfiles())[_0x5eebbe(0x136)];}catch{_0x5985bb=0x1;}_0xfa8509[_0x5eebbe(0xa7)](_0x5985bb,0x0)&&console[_0x5eebbe(0x10c)]('\x0a'+_0xfa8509['bOjfU'](formatProfileRequiredMessage,_0x54412b=>bold(_0x54412b)));}const _0xea6abf=_0x153d88[_0x5eebbe(0x120)]?_0x153d88[_0x5eebbe(0x120)][_0x5eebbe(0x11f)](_0xdd1155=>_0xdd1155['trim']()):[],_0x1d722d=_0xfa8509[_0x5eebbe(0x105)](getGitRepoUrl),_0x5b4c07=_0xfa8509[_0x5eebbe(0x13a)](getGitBranch);console[_0x5eebbe(0xe6)]('\x0aCreating\x20feature\x20review...');const _0x21f60e=await createFeature({'name':_0x36debc,'description':_0x153d88[_0x5eebbe(0xc5)],'checklist':_0xea6abf,'gitRepoUrl':_0x1d722d,'gitBranch':_0x5b4c07});await setActiveFeatureId(_0x21f60e['id']),await tryStartCurrentSession(_0x21f60e['id']);const _0x55049b=process['env']['CLAUDE_SESSION_ID'];_0x55049b&&registerSession(_0x55049b,_0x21f60e['id']),console['log'](_0x5eebbe(0x8a)+_0x21f60e['id']),displayFeature(_0x21f60e,_0x21f60e['checklistItems']),console[_0x5eebbe(0xe6)](_0x5eebbe(0xbd));}export async function featureList(_0x2c9e6b){const _0xc249be=_0x24dcdd,_0x47edf1={'DQmra':function(_0x44360e){return _0x44360e();},'GRSaI':function(_0x1090fb,_0xb3bd24){return _0x1090fb(_0xb3bd24);},'OHIHN':function(_0x439ef7,_0x390feb){return _0x439ef7===_0x390feb;},'zsoyv':_0xc249be(0xd8),'VxRoC':function(_0x3074d,_0x3f9de4){return _0x3074d>_0x3f9de4;},'yCwlM':function(_0x7aaf16,_0x70d1f7){return _0x7aaf16+_0x70d1f7;},'Ndror':function(_0xa8913c,_0x2fd960){return _0xa8913c<_0x2fd960;}},_0x3b478f={'limit':_0x2c9e6b['limit']??0xa,'offset':_0x2c9e6b['offset']??0x0,'includeDeleted':_0x2c9e6b[_0xc249be(0xaf)]};_0x2c9e6b['currentBranch']&&(_0x3b478f['gitRepoUrl']=_0x47edf1['DQmra'](getGitRepoUrl),_0x3b478f[_0xc249be(0xf8)]=_0x47edf1[_0xc249be(0x113)](getGitBranch));const _0xf38442=await _0x47edf1['GRSaI'](listFeatures,_0x3b478f);if(_0x47edf1['OHIHN'](_0xf38442['items'][_0xc249be(0x136)],0x0)){console['log'](_0x47edf1[_0xc249be(0xb3)]);return;}const _0x1ac0e0=_0x47edf1[_0xc249be(0x8c)](_0xf38442['totalCount'],_0xf38442[_0xc249be(0x107)]['length'])?'Showing\x20'+_0xf38442['items'][_0xc249be(0x136)]+_0xc249be(0x94)+_0xf38442[_0xc249be(0x169)]:_0xf38442[_0xc249be(0x169)]+'\x20feature\x20review(s)\x20found';console[_0xc249be(0xe6)]('\x0a'+_0x1ac0e0+':\x0a');for(const _0x507f73 of _0xf38442['items']){const _0x260b8c='3|2|0|4|5|1'[_0xc249be(0xb2)]('|');let _0x230feb=0x0;while(!![]){switch(_0x260b8c[_0x230feb++]){case'0':_0x507f73[_0xc249be(0x10f)]&&console[_0xc249be(0xe6)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x507f73['stats']));continue;case'1':console[_0xc249be(0xe6)]('');continue;case'2':console['log'](_0xc249be(0x14b)+_0x507f73['id']);continue;case'3':console['log'](''+_0x507f73[_0xc249be(0x99)]);continue;case'4':_0x507f73[_0xc249be(0xf8)]&&console[_0xc249be(0xe6)]('\x20\x20\x20Branch:\x20'+_0x507f73[_0xc249be(0xf8)]);continue;case'5':console['log'](_0xc249be(0x15f)+new Date(_0x507f73['createdAt'])['toLocaleDateString']());continue;}break;}}const _0x176b55=_0x3b478f[_0xc249be(0x102)]??0xa,_0x6373f2=_0x47edf1[_0xc249be(0x10e)](_0x3b478f[_0xc249be(0x89)]??0x0,_0xf38442[_0xc249be(0x107)][_0xc249be(0x136)]);if(_0x47edf1['Ndror'](_0x6373f2,_0xf38442[_0xc249be(0x169)])){const _0x321c6f=_0x176b55!==0xa?_0xc249be(0x146)+_0x176b55:'',_0x14fc20=_0x2c9e6b['currentBranch']?_0xc249be(0xae):'',_0x4b6d1b=_0x2c9e6b[_0xc249be(0xaf)]?_0xc249be(0xdb):'';console[_0xc249be(0xe6)](_0xc249be(0x11c)+_0x6373f2+_0x321c6f+_0x14fc20+_0x4b6d1b);}}export async function featureShow(_0x5f03d){const _0x3a7f96=_0x24dcdd,_0x5159ad={'CDHUp':function(_0x294b91){return _0x294b91();},'eHEuI':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Xxbci':function(_0x1436e3,_0xbc98f4){return _0x1436e3(_0xbc98f4);}},_0xe9ab05=_0x5f03d||await _0x5159ad['CDHUp'](getActiveFeatureId);if(!_0xe9ab05)throw new Error(_0x5159ad['eHEuI']);const _0x5f1e69=await _0x5159ad['Xxbci'](getFeature,_0xe9ab05);displayFeature(_0x5f1e69,_0x5f1e69[_0x3a7f96(0x128)]);}export async function featureResume(_0x53ad01){const _0x46b26b=_0x24dcdd,_0x295b0d={'nOJzQ':function(_0x4ecf94,_0x47afd3){return _0x4ecf94(_0x47afd3);},'slizv':function(_0x2f8c0a){return _0x2f8c0a();},'WOkcO':function(_0x3eb9a3,_0xb2324d,_0x2b99b4){return _0x3eb9a3(_0xb2324d,_0x2b99b4);},'sAdDq':function(_0x5c5665,_0x4e1a51){return _0x5c5665(_0x4e1a51);},'FxsGp':function(_0x198480){return _0x198480();},'AMOLI':'Not\x20in\x20a\x20git\x20repository.','BgXSt':function(_0x4e45e9,_0x1f45c4){return _0x4e45e9||_0x1f45c4;},'FceAE':'any','MpeRQ':_0x46b26b(0x118),'TzyAL':'list','CWxFt':function(_0x1f4d9e,_0x3d462b){return _0x1f4d9e!==_0x3d462b;}};if(_0x53ad01){const _0xed8c50=await _0x295b0d['nOJzQ'](getFeature,_0x53ad01);await setActiveFeatureId(_0xed8c50['id']);const _0x528ef3=_0x295b0d['slizv'](getGitBranch);_0x528ef3&&_0x528ef3!==_0xed8c50[_0x46b26b(0xf8)]&&(await updateFeature(_0xed8c50['id'],{'gitBranch':_0x528ef3}),console['log'](_0x46b26b(0xbc)+_0x528ef3));console['log'](_0x46b26b(0x155)+_0xed8c50['name']+'\x20('+_0xed8c50['id']+')'),await tryStartCurrentSession(_0xed8c50['id']);const _0x2469f9=process[_0x46b26b(0x11a)]['CLAUDE_SESSION_ID'];_0x2469f9&&registerSession(_0x2469f9,_0xed8c50['id']);_0x295b0d['WOkcO'](displayFeature,_0xed8c50,_0xed8c50[_0x46b26b(0x128)]),await _0x295b0d[_0x46b26b(0x129)](printFeedbackNudge,_0xed8c50['id']);return;}const _0x4975b4=getGitRepoUrl(),_0x220981=_0x295b0d['FxsGp'](getGitBranch);if(!_0x4975b4&&!_0x220981)throw new Error(_0x295b0d['AMOLI']);console['log'](_0x46b26b(0xfc)+_0x295b0d[_0x46b26b(0x117)](_0x4975b4,_0x295b0d[_0x46b26b(0xe7)])+'\x20/\x20'+(_0x220981||_0x295b0d[_0x46b26b(0xe7)])+_0x46b26b(0xcc));const _0x285d76=await listFeatures({'gitRepoUrl':_0x4975b4,'gitBranch':_0x220981}),_0x455045=_0x285d76[_0x46b26b(0x107)][_0x46b26b(0xd3)](_0xd7a1b5=>_0xd7a1b5['status']?_0xd7a1b5[_0x46b26b(0x145)]!==_0x46b26b(0x15a):!_0xd7a1b5['completedAt']);if(_0x455045['length']===0x0){console[_0x46b26b(0xe6)](_0x46b26b(0x9e)),console['log'](_0x46b26b(0x130));return;}let _0x38ade1;if(_0x455045['length']===0x1)_0x38ade1=_0x455045[0x0];else{const _0x171c8f=process[_0x46b26b(0xe3)][_0x46b26b(0xb7)]&&process[_0x46b26b(0xd1)]['isTTY'];if(!_0x171c8f){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x569a55 of _0x455045){console[_0x46b26b(0xe6)]('\x20\x20'+_0x569a55[_0x46b26b(0x99)]),console['log'](_0x46b26b(0x131)+_0x569a55['id']),_0x569a55['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x569a55[_0x46b26b(0x10f)])),_0x569a55['gitBranch']&&console[_0x46b26b(0xe6)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x569a55['gitBranch']);}throw new Error(_0x295b0d['MpeRQ']);}const {selected:_0x39e913}=await _0x148d44['prompt']([{'type':_0x295b0d['TzyAL'],'name':_0x46b26b(0xeb),'message':_0x46b26b(0xcd),'choices':_0x455045[_0x46b26b(0x11f)](_0x3449ea=>({'name':_0x3449ea['name']+'\x20('+_0x3449ea['id']+')','value':_0x3449ea['id']}))}]);_0x38ade1=_0x455045[_0x46b26b(0xa6)](_0x3a96a5=>_0x3a96a5['id']===_0x39e913);}await _0x295b0d['nOJzQ'](setActiveFeatureId,_0x38ade1['id']);_0x220981&&_0x295b0d['CWxFt'](_0x220981,_0x38ade1['gitBranch'])&&(await updateFeature(_0x38ade1['id'],{'gitBranch':_0x220981}),console[_0x46b26b(0xe6)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x220981));console['log'](_0x46b26b(0x155)+_0x38ade1[_0x46b26b(0x99)]+'\x20('+_0x38ade1['id']+')'),await tryStartCurrentSession(_0x38ade1['id']);const _0x412e15=await getFeature(_0x38ade1['id']),_0x3f0111=process['env'][_0x46b26b(0x12f)];_0x3f0111&&registerSession(_0x3f0111,_0x412e15['id']),displayFeature(_0x412e15,_0x412e15[_0x46b26b(0x128)]),await printFeedbackNudge(_0x412e15['id']);}async function printFeedbackNudge(_0x4ecd35){const _0x333557=_0x24dcdd,_0xfb62cc={'CZoXh':function(_0x35e931,_0x4109df){return _0x35e931(_0x4109df);},'RJtzK':function(_0x26daed,_0x355383,_0xf4569d){return _0x26daed(_0x355383,_0xf4569d);},'WKxle':function(_0x463e68,_0x7db708){return _0x463e68>_0x7db708;}};try{const {items:_0x3c409b}=await _0xfb62cc['CZoXh'](getActionItems,_0x4ecd35);let _0x26b853=0x0,_0x4345bf=0x0;for(const _0x54c578 of _0x3c409b){const _0x11c16a=await _0xfb62cc[_0x333557(0x12b)](getItemFeedback,_0x4ecd35,_0x54c578['id']);_0xfb62cc[_0x333557(0x168)](_0x11c16a['unaddressedComments']['length'],0x0)&&(_0x26b853+=_0x11c16a['unaddressedComments']['length'],_0x4345bf++);}_0x26b853>0x0&&(console[_0x333557(0xe6)]('\x0a⚠️\x20\x20'+_0x26b853+_0x333557(0xbf)+_0x4345bf+_0x333557(0xfb)),console['log'](_0x333557(0x10a)));}catch{}}async function tryStartCurrentSession(_0x1006d6){const _0x372da0=_0x24dcdd;try{const {sessions:_0x54375d}=await listFeatureSessions(_0x1006d6),_0xaad3b2=_0x54375d['find'](_0x385e29=>_0x385e29['status']===_0x372da0(0x15b));_0xaad3b2&&(await startSession(_0x1006d6,_0xaad3b2['id']),console[_0x372da0(0xe6)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0xaad3b2[_0x372da0(0x13b)]));}catch{}}export async function featureReport(_0x324ee1,_0x4dbd7f){const _0x74bc03=_0x24dcdd,_0x4ab2bb={'OwMve':function(_0x36bd81){return _0x36bd81();},'RIyUC':function(_0x579e44){return _0x579e44();},'kInUg':'reports','lVHEI':function(_0xb68131,_0x5e3634,_0x518f4f){return _0xb68131(_0x5e3634,_0x518f4f);},'onInw':'utf-8'},_0x4f7c60=_0x324ee1||await _0x4ab2bb[_0x74bc03(0x108)](getActiveFeatureId);if(!_0x4f7c60)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x74bc03(0xe6)]('\x0aGenerating\x20report...');const _0x35600c=await getFeatureReportMarkdown(_0x4f7c60,{'style':_0x4dbd7f[_0x74bc03(0x132)]}),_0x1479a2=_0x4dbd7f['output']||join(_0x4ab2bb['RIyUC'](getRangerDir),_0x4ab2bb[_0x74bc03(0x157)],_0x4f7c60+_0x74bc03(0x14c)),_0x38e4ef=join(_0x1479a2,'..');!existsSync(_0x38e4ef)&&await _0x4ab2bb['lVHEI'](mkdir,_0x38e4ef,{'recursive':!![]}),await writeFile(_0x1479a2,_0x35600c,_0x4ab2bb['onInw']),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x1479a2);}function getScenarioResult(_0x4a3f19){const _0x4ee7b5=_0x24dcdd,_0x514c7c={'xdOMB':function(_0x5ed76b,_0x48d54c){return _0x5ed76b===_0x48d54c;},'HenNd':_0x4ee7b5(0x114)};if(_0x514c7c[_0x4ee7b5(0xb0)](_0x4a3f19[_0x4ee7b5(0x145)],_0x4ee7b5(0x142)))return _0x4a3f19['terminalReason']??_0x4ee7b5(0x142);if(_0x4a3f19[_0x4ee7b5(0x145)]===_0x514c7c['HenNd'])return _0x4ee7b5(0x9f);return _0x4a3f19['status'];}function getScenarioRationale(_0xb0e6c8,_0x4f78bb){const _0x158915=_0x24dcdd,_0x2dfd6e=_0x158915(0x10d)[_0x158915(0xb2)]('|');let _0xca3456=0x0;while(!![]){switch(_0x2dfd6e[_0xca3456++]){case'0':if(_0xb0e6c8['canceledReason'])return _0xb0e6c8['canceledReason'];continue;case'1':if(_0x4f78bb)return _0x4f78bb;continue;case'2':if(_0xb0e6c8[_0x158915(0xc6)])return _0xb0e6c8['incompleteReason'];continue;case'3':if(_0xb0e6c8[_0x158915(0xf5)])return _0xb0e6c8['notes'];continue;case'4':return null;case'5':if(_0xb0e6c8['blockedReason'])return _0xb0e6c8[_0x158915(0x103)];continue;}break;}}export async function featureReportPrDescription(_0x239005,_0xe322db){const _0x27f743=_0x24dcdd,_0x5c5d7d={'Hbzig':_0x27f743(0xe1),'BDnOf':function(_0x368e5c,_0x25a1ec){return _0x368e5c(_0x25a1ec);},'LUENb':function(_0x33b0e5,_0x16014c){return _0x33b0e5+_0x16014c;},'EhhcR':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x522fda=_0x239005||await getActiveFeatureId();if(!_0x522fda)throw new Error(_0x5c5d7d['Hbzig']);const _0x54eba7=await _0x5c5d7d[_0x27f743(0xf2)](getFeature,_0x522fda),_0x315583=_0x54eba7['checklistItems']||[],_0x379d43=getCurrentSessionItems(_0x54eba7,_0x315583);_0x379d43[_0x27f743(0x136)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x5bf227=_0xe322db[_0x27f743(0x95)]??[],_0x374eeb=_0x5bf227[_0x27f743(0xd3)](_0x46be5b=>!Number[_0x27f743(0xa4)](_0x46be5b)||_0x46be5b<0x1||_0x46be5b>_0x379d43[_0x27f743(0x136)]);if(_0x374eeb['length']>0x0){console['error'](_0x27f743(0x81)+_0x374eeb[_0x27f743(0x96)](',\x20')),console[_0x27f743(0xe6)]('\x0aAvailable\x20scenarios:');for(let _0xba5848=0x0;_0xba5848<_0x379d43['length'];_0xba5848++){console['log']('\x20\x20'+_0x5c5d7d[_0x27f743(0xa5)](_0xba5848,0x1)+'.\x20'+_0x379d43[_0xba5848][_0x27f743(0xc5)]);}process['exit'](0x1);}const _0x55ece3=new Set(_0x5bf227[_0x27f743(0x11f)](_0xd31fb8=>_0xd31fb8-0x1)),_0x5267b9=_0x379d43[_0x27f743(0xd3)]((_0x1e8a48,_0x3b6585)=>!_0x55ece3['has'](_0x3b6585));_0x5267b9['length']===0x0&&(console['error'](_0x5c5d7d[_0x27f743(0x92)]),process['exit'](0x1));if(_0xe322db[_0x27f743(0x88)])await outputJsonReport(_0x522fda,_0x54eba7,_0x5267b9);else{const _0x3df7b0=await getFeatureReportMarkdown(_0x522fda,{'itemIds':_0x5267b9[_0x27f743(0x11f)](_0x59eaa0=>_0x59eaa0['id'])});process[_0x27f743(0xd1)][_0x27f743(0xda)](_0x3df7b0['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x1de496,_0x54d1bd,_0x3fef54){const _0x542763=_0x24dcdd,_0x7c7f03={'VMFgB':function(_0x4eaa0a,_0x3a3f31){return _0x4eaa0a(_0x3a3f31);},'TcLRg':function(_0x7e0419,_0x3dcaa5,_0x4a41e1){return _0x7e0419(_0x3dcaa5,_0x4a41e1);},'PsPTw':function(_0x459aa2){return _0x459aa2();},'bAqOU':function(_0x322372,_0x37df44){return _0x322372(_0x37df44);},'HIWbc':function(_0x55d468,_0x1b2f91){return _0x55d468+_0x1b2f91;}},_0xdbf7d8=_0x7c7f03[_0x542763(0xb4)](getApiBaseUrl),_0x2de9e0=await _0x7c7f03[_0x542763(0xa8)](getFeatureReport,_0x1de496),_0x2a0148=new Map(_0x2de9e0[_0x542763(0x128)]['map'](_0x180acd=>[_0x180acd['id'],_0x180acd])),_0x524006=await Promise['all'](_0x3fef54[_0x542763(0x11f)](async _0x1cedf8=>{const _0x27216b=_0x542763,_0x20c21e=_0x2a0148[_0x27216b(0x8e)](_0x1cedf8['id']),_0x1051a3=_0x20c21e?.['linkedSession']??null;let _0x1c8ef0=[];if(_0x1cedf8[_0x27216b(0xab)])try{const {steps:_0x311be1}=await _0x7c7f03[_0x27216b(0xc2)](getBrowserSessionSteps,_0x1cedf8['browserSessionId']);_0x311be1['length']>0x0&&(_0x1c8ef0=_0x311be1['map'](_0x29a0ff=>{const _0x4b9319=_0x27216b,_0x196d63=_0x29a0ff[_0x4b9319(0xd5)]['find'](_0x2f382b=>_0x2f382b[_0x4b9319(0x100)]===_0x4b9319(0xcf)&&_0x2f382b[_0x4b9319(0x11b)]==='after')??_0x29a0ff[_0x4b9319(0xd5)][_0x4b9319(0xa6)](_0x5828e9=>_0x5828e9['assetType']==='screenshot');let _0x215c33=null,_0x4d444a=null;if(_0x196d63){const _0x52201b=_0x196d63[_0x4b9319(0x83)][_0x4b9319(0xc0)]['split']('/')['pop']();_0x215c33=_0xdbf7d8+'/api/v1/mcp/browser-sessions/'+_0x1cedf8['browserSessionId']+'/artifacts/'+_0x52201b,_0x52201b&&(_0x4d444a=_0x52201b['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x4b9319(0x91)](/[-_]/g,'\x20'));}return{'description':_0x4d444a||_0x29a0ff['description']||_0x29a0ff[_0x4b9319(0xb5)]||_0x4b9319(0x139)+_0x29a0ff[_0x4b9319(0x127)],'screenshot':_0x215c33,'is_key_step':_0x29a0ff['isKeyStep']};}));}catch{}return _0x1c8ef0[_0x27216b(0x136)]===0x0&&_0x1051a3?.[_0x27216b(0xb8)]&&(_0x1c8ef0=_0x1051a3[_0x27216b(0xb8)][_0x27216b(0x11f)]((_0x2f98e1,_0x2519d0)=>({'description':_0x27216b(0xfa)+(_0x2519d0+0x1),'screenshot':_0x2f98e1,'is_key_step':![]}))),{'description':_0x1cedf8[_0x27216b(0xc5)],'result':getScenarioResult(_0x1cedf8),'rationale':_0x7c7f03['TcLRg'](getScenarioRationale,_0x1cedf8,_0x1051a3?.[_0x27216b(0xb1)]),'steps':_0x1c8ef0};})),_0x166ffc={'url':_0x54d1bd['dashboardUrl'],'scenarios':_0x524006};process[_0x542763(0xd1)][_0x542763(0xda)](_0x7c7f03[_0x542763(0x14e)](JSON['stringify'](_0x166ffc,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x4459c0){const _0x148154=_0x24dcdd,_0x214f79={'VhNmK':function(_0x55e246){return _0x55e246();},'wsjHR':_0x148154(0x9c),'tbDiU':function(_0x4eb659,_0x396aec){return _0x4eb659(_0x396aec);},'oAqXd':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','PYsZn':function(_0x38c63a,_0x368a3e){return _0x38c63a===_0x368a3e;},'ulwBY':'completed','ZZZjP':'\x0a✅\x20Session\x20is\x20already\x20completed.'},_0x40fda6=_0x4459c0||await _0x214f79['VhNmK'](getActiveFeatureId);if(!_0x40fda6)throw new Error(_0x214f79[_0x148154(0x121)]);const _0x1cb1fd=await _0x214f79[_0x148154(0xe4)](getFeature,_0x40fda6);if(!_0x1cb1fd[_0x148154(0x13e)])throw new Error(_0x214f79[_0x148154(0xdd)]);const {sessions:_0x1fc0c9}=await listFeatureSessions(_0x40fda6),_0x3af666=_0x1fc0c9[_0x148154(0xa6)](_0x556461=>_0x556461['id']===_0x1cb1fd[_0x148154(0x13e)]);if(!_0x3af666)throw new Error('Current\x20session\x20not\x20found.');if(_0x214f79['PYsZn'](_0x3af666['status'],_0x214f79[_0x148154(0x15d)])){console[_0x148154(0xe6)](_0x214f79[_0x148154(0x13c)]);return;}if(_0x3af666['status']!=='in_progress')throw new Error(_0x148154(0xd2)+_0x3af666[_0x148154(0x145)]);console[_0x148154(0xe6)]('\x0aConcluding\x20session...'),await concludeSession(_0x40fda6,_0x1cb1fd['currentSessionId']),console[_0x148154(0xe6)](_0x148154(0xa0)+_0x3af666[_0x148154(0x13b)]+_0x148154(0x104)),console[_0x148154(0xe6)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x30c119){const _0x2de708=_0x24dcdd,_0x1e50a1={'OitDC':function(_0x2e99da){return _0x2e99da();},'hoyjm':function(_0x74fde4,_0xc00f3e){return _0x74fde4===_0xc00f3e;}},_0x307dfd=_0x30c119||await _0x1e50a1[_0x2de708(0xc3)](getActiveFeatureId);if(!_0x307dfd)throw new Error(_0x2de708(0xe1));const _0x351b82=await getFeature(_0x307dfd);console[_0x2de708(0xe6)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x351b82[_0x2de708(0x99)]+'\x0a');const {sessions:_0x301522}=await listFeatureSessions(_0x307dfd);if(_0x301522[_0x2de708(0x136)]===0x0){console[_0x2de708(0xe6)](_0x2de708(0xd9));return;}for(const _0x1dfc12 of _0x301522){const _0x5c5dbf=_0x1dfc12['status']===_0x2de708(0x9d)?'✅':_0x1e50a1[_0x2de708(0xf1)](_0x1dfc12['status'],_0x2de708(0x9f))?'🔄':'▶️';console['log'](_0x5c5dbf+_0x2de708(0xc9)+_0x1dfc12['iteration']+'\x20('+_0x1dfc12['id']+')'),console['log'](_0x2de708(0x164)+_0x1dfc12['status']),console['log'](_0x2de708(0x15f)+new Date(_0x1dfc12[_0x2de708(0x12d)])['toLocaleString']()),_0x1dfc12['completedAt']&&console['log'](_0x2de708(0x90)+new Date(_0x1dfc12['completedAt'])['toLocaleString']()),console[_0x2de708(0xe6)]('');}}export async function featureAddScenario(_0xa6be61,_0x2c20ad){const _0x1194d1=_0x24dcdd,_0x163a75={'slAtW':function(_0x48eb9a,_0x285bd3){return _0x48eb9a(_0x285bd3);}},_0xe20d5a=_0x2c20ad||await getActiveFeatureId();if(!_0xe20d5a)throw new Error(_0x1194d1(0x9c));const _0x2cb5a3=await _0x163a75[_0x1194d1(0xea)](getFeature,_0xe20d5a);if(_0x2cb5a3[_0x1194d1(0x151)]&&!_0x2cb5a3[_0x1194d1(0x151)][_0x1194d1(0xef)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x2cb5a3['dashboardUrl']);await createChecklistItem(_0xe20d5a,_0xa6be61);const _0x26989c=await getFeature(_0xe20d5a);console[_0x1194d1(0xe6)](_0x1194d1(0x12a)),displayFeature(_0x26989c,_0x26989c[_0x1194d1(0x128)]);}export async function featureEditScenario(_0x33ceef,_0x2a1d29){const _0x5dab0d=_0x24dcdd,_0x5e6675={'pWxwP':function(_0x2c4639){return _0x2c4639();},'SgTtO':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','yQHgK':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ruLLS':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','QBCQl':_0x5dab0d(0xdf),'kDaRC':function(_0x19b074,_0x4534ae){return _0x19b074===_0x4534ae;},'iChog':function(_0x5a50bb,_0x2d8795){return _0x5a50bb===_0x2d8795;},'lVaUJ':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','gHYXm':_0x5dab0d(0x150),'VeWxn':function(_0x275074,_0x65504b){return _0x275074<_0x65504b;},'VUfIN':function(_0x5126bc,_0x3515d6){return _0x5126bc-_0x3515d6;},'ZueFJ':function(_0x302cd1,_0xb34942){return _0x302cd1>=_0xb34942;},'lkdGz':function(_0x56499b,_0x295682,_0x8d802e,_0x3f39cc){return _0x56499b(_0x295682,_0x8d802e,_0x3f39cc);}},_0x5ea266=_0x2a1d29['id']||await _0x5e6675['pWxwP'](getActiveFeatureId);!_0x5ea266&&(console['error'](_0x5e6675[_0x5dab0d(0x125)]),console[_0x5dab0d(0xf7)](_0x5e6675[_0x5dab0d(0x133)]),process[_0x5dab0d(0xc1)](0x1));const _0x39e54f=await getFeature(_0x5ea266);_0x39e54f['latestReview']&&!_0x39e54f[_0x5dab0d(0x151)][_0x5dab0d(0xef)]&&(console['error'](_0x5e6675['ruLLS']),console[_0x5dab0d(0xf7)](_0x5e6675[_0x5dab0d(0xa1)]),console[_0x5dab0d(0xf7)]('\x20\x20'+_0x39e54f[_0x5dab0d(0x112)]),process['exit'](0x1));const _0x295584=_0x39e54f[_0x5dab0d(0x128)]||[];_0x5e6675[_0x5dab0d(0xcb)](_0x295584[_0x5dab0d(0x136)],0x0)&&(console[_0x5dab0d(0xf7)](_0x5dab0d(0x111)),process[_0x5dab0d(0xc1)](0x1));if(_0x5e6675[_0x5dab0d(0xb9)](_0x2a1d29['scenario'],undefined)){console[_0x5dab0d(0xf7)](_0x5e6675[_0x5dab0d(0xf4)]),console['log'](_0x5e6675['gHYXm']);for(let _0x107b9d=0x0;_0x5e6675['VeWxn'](_0x107b9d,_0x295584[_0x5dab0d(0x136)]);_0x107b9d++){console['log']('\x20\x20'+(_0x107b9d+0x1)+'.\x20'+_0x295584[_0x107b9d]['description']);}process['exit'](0x1);}const _0x1fe136=_0x5e6675[_0x5dab0d(0xc8)](_0x2a1d29['scenario'],0x1);if(_0x1fe136<0x0||_0x5e6675['ZueFJ'](_0x1fe136,_0x295584['length'])){console['error'](_0x5dab0d(0x156)+_0x2a1d29[_0x5dab0d(0xde)]+_0x5dab0d(0x166)+_0x295584[_0x5dab0d(0x136)]+_0x5dab0d(0xb6)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x32ec73=0x0;_0x32ec73<_0x295584['length'];_0x32ec73++){console['log']('\x20\x20'+(_0x32ec73+0x1)+'.\x20'+_0x295584[_0x32ec73]['description']);}process['exit'](0x1);}const _0x2e72b1=_0x295584[_0x1fe136];await _0x5e6675[_0x5dab0d(0xe0)](updateChecklistItem,_0x5ea266,_0x2e72b1['id'],{'description':_0x33ceef});const _0x3be4a0=await getFeature(_0x5ea266);console['log'](_0x5dab0d(0xed)),displayFeature(_0x3be4a0,_0x3be4a0[_0x5dab0d(0x128)]);}async function downloadFeedbackImage(_0x20358f,_0x11a5c5){const _0x2b7d88=_0x24dcdd,_0x435391={'tIhGi':function(_0x22eeed,_0x3a96ea,_0x5c1007){return _0x22eeed(_0x3a96ea,_0x5c1007);},'pufkA':function(_0x3debc7,_0x2f9b5a){return _0x3debc7(_0x2f9b5a);}};try{const _0x1ad6d3=_0x435391[_0x2b7d88(0x110)](join,getRangerDir(),_0x2b7d88(0xec));await mkdir(_0x1ad6d3,{'recursive':!![]});const _0x3d59b3=_0x435391[_0x2b7d88(0x110)](join,_0x1ad6d3,'comment_'+_0x11a5c5+'.png'),_0x2aa887=await _0x435391['pufkA'](fetch,_0x20358f);if(!_0x2aa887['ok'])return null;const _0x48da6f=Buffer['from'](await _0x2aa887[_0x2b7d88(0xe5)]());return await writeFile(_0x3d59b3,_0x48da6f),_0x3d59b3;}catch{return null;}}export async function featureGetReview(_0x58b2e6){const _0x13a1c0=_0x24dcdd,_0x2b75a0={'ujkRm':function(_0x8c4c9d){return _0x8c4c9d();},'RwZPN':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','eMBMM':function(_0x2eeb5f,_0x52254b){return _0x2eeb5f(_0x52254b);},'eFQRQ':function(_0x50f028,_0x1f771e){return _0x50f028(_0x1f771e);},'onIMr':function(_0x4acd2d,_0x2dc34d){return _0x4acd2d===_0x2dc34d;},'iGqGL':'No\x20scenarios\x20found.','daWEJ':function(_0x3b58ca,_0x53dac5){return _0x3b58ca<_0x53dac5;},'tkcuc':'numeric','OwrmP':_0x13a1c0(0x12e)},_0x40d90b=_0x58b2e6||await _0x2b75a0[_0x13a1c0(0x85)](getActiveFeatureId);if(!_0x40d90b)throw new Error(_0x2b75a0['RwZPN']);const _0x4c13a5=await _0x2b75a0['eMBMM'](getFeature,_0x40d90b),{items:_0x26b442}=await _0x2b75a0['eFQRQ'](getActionItems,_0x40d90b);console['log'](_0x13a1c0(0x163)+_0x4c13a5[_0x13a1c0(0x99)]+'\x20('+_0x4c13a5['id']+')\x0a');if(_0x2b75a0[_0x13a1c0(0x141)](_0x26b442['length'],0x0)){console['log'](_0x2b75a0['iGqGL']);return;}for(let _0x784037=0x0;_0x2b75a0[_0x13a1c0(0xdc)](_0x784037,_0x26b442[_0x13a1c0(0x136)]);_0x784037++){const _0xa04b17=_0x26b442[_0x784037],_0x2b832e=_0xa04b17['version']>0x1?_0x13a1c0(0x148)+_0xa04b17[_0x13a1c0(0x8d)]+')':'',_0xb0952e=await getItemFeedback(_0x40d90b,_0xa04b17['id']);if(_0xb0952e[_0x13a1c0(0x134)]['length']>0x0){console[_0x13a1c0(0xe6)](_0x13a1c0(0x87)+(_0x784037+0x1)+_0x13a1c0(0x8b)+_0xa04b17['description']+'\x22'+_0x2b832e+'\x20—\x20'+_0xb0952e['unaddressedComments']['length']+'\x20unaddressed\x20comment(s)');for(const _0x277b28 of _0xb0952e[_0x13a1c0(0x134)]){const _0x373701=new Date(_0x277b28[_0x13a1c0(0x12d)])['toLocaleDateString'](_0x13a1c0(0x15e),{'month':'short','day':_0x2b75a0['tkcuc']}),_0x405983=_0x277b28[_0x13a1c0(0x93)]||_0x277b28[_0x13a1c0(0x124)]||'Unknown';console[_0x13a1c0(0xe6)]('\x20\x20💬\x20'+_0x405983+'\x20('+_0x373701+'):\x20\x22'+_0x277b28[_0x13a1c0(0x9b)]+'\x22');if(_0x277b28[_0x13a1c0(0x109)]){const _0x98a9de=await downloadFeedbackImage(_0x277b28['assetUrl'],_0x277b28['id']);_0x98a9de&&console[_0x13a1c0(0xe6)](_0x13a1c0(0xbb)+_0x98a9de);}if(_0x277b28['domRef']){const _0x4f73b2=_0x277b28['domRef'][_0x13a1c0(0x86)]['split'](_0x13a1c0(0x143))[_0x13a1c0(0xba)]()?.[_0x13a1c0(0xb2)](':')[0x0]||_0x2b75a0['OwrmP'],_0x16e81e=_0x277b28[_0x13a1c0(0x165)][_0x13a1c0(0x119)]?'\x20\x22'+_0x277b28['domRef'][_0x13a1c0(0x119)]['slice'](0x0,0x3c)+'\x22':'';console[_0x13a1c0(0xe6)](_0x13a1c0(0xce)+_0x4f73b2+'>'+_0x16e81e),console[_0x13a1c0(0xe6)](_0x13a1c0(0xe2)+_0x277b28[_0x13a1c0(0x165)]['selector']);}else{if(_0x277b28['spatial']){const _0xf12c24=_0x277b28[_0x13a1c0(0xa3)][_0x13a1c0(0xad)];_0x2b75a0[_0x13a1c0(0x141)](_0x277b28['spatial'][_0x13a1c0(0x16b)],'point')&&_0xf12c24[_0x13a1c0(0x136)]>=0x2?console[_0x13a1c0(0xe6)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0xf12c24[0x0][_0x13a1c0(0x16c)](0x2)+',\x20'+_0xf12c24[0x1]['toFixed'](0x2)+')'):console['log'](_0x13a1c0(0x11e)+_0x277b28[_0x13a1c0(0xa3)][_0x13a1c0(0x16b)]+'\x20at\x20['+_0xf12c24['map'](_0x4b9ba9=>_0x4b9ba9['toFixed'](0x2))[_0x13a1c0(0x96)](',\x20')+']');}}}if(_0xb0952e['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x11488b of _0xb0952e[_0x13a1c0(0x14f)][_0x13a1c0(0xb2)]('\x0a')){console[_0x13a1c0(0xe6)](_0x13a1c0(0xe9)+_0x11488b);}}}else console[_0x13a1c0(0xe6)](_0x13a1c0(0x87)+(_0x784037+0x1)+_0x13a1c0(0x8b)+_0xa04b17['description']+'\x22'+_0x2b832e+_0x13a1c0(0x135)),console[_0x13a1c0(0xe6)](_0x13a1c0(0x149));console[_0x13a1c0(0xe6)]('');}}export async function featureDelete(_0x2eb7ac){const _0x35549f=_0x24dcdd,_0x244025={'Qbwyv':_0x35549f(0x9c),'BOelf':function(_0x1a2389,_0x37a4b6){return _0x1a2389(_0x37a4b6);},'caKvG':function(_0x5b0347,_0x529f8f){return _0x5b0347+_0x529f8f;},'qCIwa':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x5cb0d2=_0x2eb7ac||await getActiveFeatureId();if(!_0x5cb0d2)throw new Error(_0x244025['Qbwyv']);const _0x43d430=await _0x244025['BOelf'](getFeature,_0x5cb0d2);await softDeleteFeature(_0x5cb0d2),console[_0x35549f(0xe6)](_0x35549f(0x162)+_0x43d430[_0x35549f(0x99)]+'\x20('+_0x5cb0d2+')'),console['log'](_0x244025['caKvG'](_0x244025['qCIwa'],_0x5cb0d2));}export async function featureRestore(_0x27daf9){const _0x31f2f6=_0x24dcdd,_0x39a65a={'vSrFu':function(_0x249ee1,_0x2bbb55){return _0x249ee1(_0x2bbb55);},'IXyuM':function(_0x292ca8,_0x5e83cf){return _0x292ca8(_0x5e83cf);}};await _0x39a65a[_0x31f2f6(0x140)](restoreFeature,_0x27daf9);const _0x176473=await _0x39a65a['IXyuM'](getFeature,_0x27daf9);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x176473['name']+'\x20('+_0x27daf9+')'),displayFeature(_0x176473,_0x176473[_0x31f2f6(0x128)]);}
1
+ const _0x1f563c=_0x19b7;function _0x47ce(){const _0x83861f=['YwdTp','ipIpc','LUgvn','createdAt','No\x20scenarios\x20found.','offset','scenarios','toFixed','stepName','comment_','\x20\x20\x20Branch:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','style','kIbkv','.md','terminalReason','SxzOK','name','incompleteItems','\x0aConcluding\x20session...','stdout','checklistItems','361784KQPdUm','completedAt','mcqZZ','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','blockedItems','OGJxk','gitRepoUrl','\x0a✅\x20Scenario\x20added','FRune','round','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','pipe','nqzpZ','bDEon','\x20\x20✅\x20No\x20feedback\x20to\x20address','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20Completed:\x20','\x0a✅\x20Scenario\x20updated','trim','16292ngrGfc','\x0a✅\x20Resumed\x20feature\x20review:\x20','isKeyStep','status','MKMXP','1NfAftf','\x20\x20\x20\x20\x20📋\x20Selector:\x20','xsDgn','PWLaG','\x0a⚠️\x20\x20','canonicalFlow','sessionId','from','56322ZULBfA','element','UXHte','\x20\x20\x20\x20\x20\x20Cancelled:\x20','version','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','type','closed','description','reports','canceledReason','noIJa','pvXCe','length','assetType','env','NnaXn','\x20\x20\x20\x20\x20\x20Blocked:\x20','92411DZuJKt','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','git\x20remote\x20get-url\x20origin','BpBQR','OQPPM','dLwCo','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','447957EjjxmG','\x20\x20\x20Progress:\x20','dFQyb','find','includeDeleted','authorName','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','storage','OoygP','105bQSMsa','\x0aCreating\x20feature\x20review...','\x20concluded.','ySzKl','map','qRRoD','en-US','push','EQefm','aBGjT','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','\x20\x20\x20\x20\x20Branch:\x20','filter','\x0aAvailable\x20scenarios:','\x20\x20\x20Created:\x20','GEoHf','get','jLPri','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','XSjjS','gitBranch','incompleteReason','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','linkedSession','screenshot','\x20of\x20','YeYgP','content','\x0aNo\x20feature\x20reviews\x20found.','MwudO','ErxPD','219778KwzAIN','pmbhc','Zvayl','889250YeKrWG','incomplete','DFYro','bRywo','lZpeD','Ksszx','yzevW','currentSessionId','fTKhK','kEJjN','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','14nVpvgn','excludeScenarios','\x20blocked','browserSessionId','scenario','warn','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','spatial','LaHRF','Showing\x20','bipVF','latestReview','\x0a✅\x20Feature\x20review\x20created:\x20','RANGER_TEST_USERNAME','point','feedback-images','HdYMg','No\x20active\x20session\x20for\x20this\x20feature\x20review.','ubtji','exit','\x20\x20\x20Repository:\x20','.png','\x0a✅\x20Session\x20','parentItemId','KTIqC','\x1b[1m','trimEnd','currentBranch','location','57XRQCHa','\x20—\x20no\x20comments','isTTY','in_progress','Fmjzd','short','\x20unaddressed\x20comment(s)','split','Ksbno','replace','CLAUDE_SESSION_ID','error','\x20scenario(s).','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','numeric','position','notes','XZMRd','VpUzs','\x0a✅\x20Restored\x20feature\x20review:\x20','HkWDY','coordinates','\x20(v','domRef','vsIja','submittedAt','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','items','unaddressedComments','toLocaleString','totalCount','LkcAA','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','FsKGe','toLocaleDateString','timing','giHVh','Current\x20session\x20not\x20found.','nQcXq','pop',':\x20\x22','iteration','assetUrl','MXuJW','github.com/','Screenshot\x20','log','YGMXm','\x20\x20\x20Updated\x20branch\x20to:\x20','vQaLZ','VYStQ','hyseE','utf-8','\x20>\x20','\x20feature\x20review(s)\x20found','Please\x20finish\x20your\x20review\x20first:','approved','assets','limit','join','kjEqg','qLEdE','Not\x20in\x20a\x20git\x20repository.','0|4|3|5|2|1'];_0x47ce=function(){return _0x83861f;};return _0x47ce();}(function(_0x1a5d28,_0x5d5285){const _0x1617a6=_0x19b7,_0x43c937=_0x1a5d28();while(!![]){try{const _0x2227fb=parseInt(_0x1617a6(0x1c4))/0x1*(parseInt(_0x1617a6(0x210))/0x2)+parseInt(_0x1617a6(0x23b))/0x3*(parseInt(_0x1617a6(0x1bf))/0x4)+parseInt(_0x1617a6(0x1f0))/0x5*(-parseInt(_0x1617a6(0x1cc))/0x6)+-parseInt(_0x1617a6(0x21e))/0x7*(-parseInt(_0x1617a6(0x1ac))/0x8)+-parseInt(_0x1617a6(0x1e7))/0x9+parseInt(_0x1617a6(0x213))/0xa+-parseInt(_0x1617a6(0x1de))/0xb;if(_0x2227fb===_0x5d5285)break;else _0x43c937['push'](_0x43c937['shift']());}catch(_0x1edad7){_0x43c937['push'](_0x43c937['shift']());}}}(_0x47ce,0x1b2f2));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5b4a2e from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x258a49=>_0x1f563c(0x237)+_0x258a49+'\x1b[0m';function _0x19b7(_0x417e5d,_0x25f808){_0x417e5d=_0x417e5d-0x174;const _0x47ce53=_0x47ce();let _0x19b7ac=_0x47ce53[_0x417e5d];return _0x19b7ac;}function getGitRepoUrl(){const _0x1afdc8=_0x1f563c,_0x26173a={'UjPYx':_0x1afdc8(0x1e2),'GEoHf':_0x1afdc8(0x18a),'BpBQR':'pipe'};try{const _0x282c5f=execSync(_0x26173a['UjPYx'],{'encoding':_0x26173a[_0x1afdc8(0x200)],'stdio':[_0x26173a['BpBQR'],_0x26173a[_0x1afdc8(0x1e3)],_0x26173a[_0x1afdc8(0x1e3)]]})['trim']();return _0x282c5f[_0x1afdc8(0x244)](/\.git$/,'')[_0x1afdc8(0x244)](/^git@github\.com:/,_0x1afdc8(0x182))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0xd196f2=_0x1f563c,_0x23a639={'raWQs':function(_0x4765f3,_0x51ae8d,_0x5b4895){return _0x4765f3(_0x51ae8d,_0x5b4895);},'VwZzq':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','qLEdE':_0xd196f2(0x1b7)};try{return _0x23a639['raWQs'](execSync,_0x23a639['VwZzq'],{'encoding':'utf-8','stdio':[_0x23a639[_0xd196f2(0x193)],_0x23a639[_0xd196f2(0x193)],_0xd196f2(0x1b7)]})[_0xd196f2(0x1be)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x216966={'GEGKJ':function(_0x547109,_0x1ccba4,_0xfb38ab){return _0x547109(_0x1ccba4,_0xfb38ab);},'hNMkm':function(_0x211748,_0xc32490){return _0x211748(_0xc32490);},'YOSuF':function(_0x5121f4,_0x358dd0,_0x50c70b){return _0x5121f4(_0x358dd0,_0x50c70b);}},_0x582cba=_0x216966['GEGKJ'](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x216966['hNMkm'](existsSync,_0x582cba))return null;try{const _0x53b592=await _0x216966['YOSuF'](readFile,_0x582cba,'utf-8');return _0x53b592['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x260dcb){const _0x3f142e={'MbOrp':function(_0x555f95,_0x1f1cfb,_0x22d752){return _0x555f95(_0x1f1cfb,_0x22d752);}},_0x426c09=getRangerDir(),_0x209069=_0x3f142e['MbOrp'](join,_0x426c09,ACTIVE_FEATURE_FILE);!existsSync(_0x426c09)&&await mkdir(_0x426c09,{'recursive':!![]}),await writeFile(_0x209069,_0x260dcb,'utf-8');}function getProgressDisplay(_0x400aca){const _0x4e2b3f=_0x1f563c,_0x4dfdfb={'YeYgP':function(_0x12179f,_0x852ea0){return _0x12179f+_0x852ea0;},'aBGjT':function(_0xdf2b85,_0x494023){return _0xdf2b85*_0x494023;}},_0x2728bc=_0x400aca['verifiedItems']||0x0,_0x44420e=_0x400aca['verificationInProgressItems']||0x0,_0x52f34a=_0x400aca[_0x4e2b3f(0x1b0)]||0x0,_0x1b57b3=_0x400aca[_0x4e2b3f(0x1a8)]||0x0,_0x2245f8=_0x400aca['pendingItems']||0x0,_0x4a50d8=_0x4dfdfb[_0x4e2b3f(0x20b)](_0x4dfdfb[_0x4e2b3f(0x20b)](_0x2728bc,_0x44420e)+_0x52f34a+_0x1b57b3,_0x2245f8);if(_0x4a50d8===0x0)return'-';const _0x37ab15=0xa,_0x5b6f0f=Math[_0x4e2b3f(0x1b5)](_0x4dfdfb[_0x4e2b3f(0x1f9)](_0x2728bc/_0x4a50d8,_0x37ab15)),_0x31283f=_0x4dfdfb[_0x4e2b3f(0x20b)]('█'['repeat'](_0x5b6f0f),'░'['repeat'](_0x37ab15-_0x5b6f0f)),_0x5469b8=[];if(_0x52f34a>0x0)_0x5469b8[_0x4e2b3f(0x1f7)](_0x52f34a+_0x4e2b3f(0x220));if(_0x1b57b3>0x0)_0x5469b8['push'](_0x1b57b3+'\x20incomplete');if(_0x44420e>0x0)_0x5469b8['push'](_0x44420e+'\x20in\x20progress');const _0x1c78c7=_0x5469b8['length']>0x0?'\x20('+_0x5469b8[_0x4e2b3f(0x191)](',\x20')+')':'';return _0x31283f+'\x20'+_0x2728bc+'/'+_0x4a50d8+'\x20verified'+_0x1c78c7;}function getCurrentSessionItems(_0x5221ca,_0x1a5a59){const _0x561a42=_0x1f563c;if(!_0x5221ca[_0x561a42(0x21a)])return _0x1a5a59[_0x561a42(0x1fd)](_0x292969=>!_0x292969['sessionId']);return _0x1a5a59[_0x561a42(0x1fd)](_0x2321c9=>_0x2321c9[_0x561a42(0x1ca)]===_0x5221ca[_0x561a42(0x21a)]||!_0x2321c9[_0x561a42(0x1ca)]);}function displayFeature(_0x4ec1af,_0x3c175d){const _0x3a4351=_0x1f563c,_0x4f8115={'RcVwO':function(_0x431d77,_0x36d1e){return _0x431d77<_0x36d1e;},'bRywo':function(_0x387612,_0xabe230){return _0x387612===_0xabe230;},'NnaXn':_0x3a4351(0x1d3),'KdVWg':'verified','qRRoD':_0x3a4351(0x214),'noIJa':'blocked','hyseE':function(_0x5de9e8,_0x2dbb95){return _0x5de9e8>_0x2dbb95;},'EQefm':function(_0x46d7c2,_0x185fc7){return _0x46d7c2!==_0x185fc7;},'qZnGv':'\x20[has\x20reviewer\x20feedback]','fTKhK':'approved'};console[_0x3a4351(0x184)]('\x0a'+_0x4ec1af['name']+'\x20('+_0x4ec1af['dashboardUrl']+')');_0x4ec1af['stats']&&console['log'](_0x3a4351(0x1e8)+getProgressDisplay(_0x4ec1af['stats']));_0x4ec1af['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x4ec1af['description']);_0x4ec1af[_0x3a4351(0x1b2)]&&console['log'](_0x3a4351(0x232)+_0x4ec1af['gitRepoUrl']);_0x4ec1af['gitBranch']&&console[_0x3a4351(0x184)](_0x3a4351(0x1a0)+_0x4ec1af[_0x3a4351(0x205)]);console[_0x3a4351(0x184)](_0x3a4351(0x1ff)+new Date(_0x4ec1af['createdAt'])[_0x3a4351(0x258)]());_0x4ec1af['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x4ec1af[_0x3a4351(0x1ad)])['toLocaleString']());if(_0x3c175d&&_0x3c175d['length']>0x0){console['log']('\x0a\x20\x20\x20Scenarios:');for(let _0x27f3dc=0x0;_0x4f8115['RcVwO'](_0x27f3dc,_0x3c175d['length']);_0x27f3dc++){const _0x4e7cc7=_0x3c175d[_0x27f3dc];let _0x17c04a;if(_0x4f8115['bRywo'](_0x4e7cc7[_0x3a4351(0x1c2)],_0x4f8115[_0x3a4351(0x1dc)])&&_0x4e7cc7['terminalReason']===_0x3a4351(0x18e))_0x17c04a='✅';else{if(_0x4e7cc7[_0x3a4351(0x1c2)]===_0x4f8115['KdVWg'])_0x17c04a='🟢';else{if(_0x4f8115['bRywo'](_0x4e7cc7['status'],_0x4f8115['qRRoD']))_0x17c04a='🟠';else{if(_0x4e7cc7['status']===_0x4f8115[_0x3a4351(0x1d7)])_0x17c04a='🛑';else{if(_0x4e7cc7[_0x3a4351(0x1c2)]===_0x3a4351(0x1d3))_0x17c04a='⛔';else _0x4e7cc7[_0x3a4351(0x1c2)]==='verification_in_progress'?_0x17c04a='⏳':_0x17c04a='⬜';}}}}const _0x5c01cc=_0x4e7cc7[_0x3a4351(0x1d0)]>0x1?_0x3a4351(0x251)+_0x4e7cc7[_0x3a4351(0x1d0)]+')':'',_0x393e67=_0x4f8115[_0x3a4351(0x189)](_0x4e7cc7[_0x3a4351(0x1d0)],0x1)&&_0x4e7cc7[_0x3a4351(0x235)]&&_0x4e7cc7[_0x3a4351(0x1c2)]!==_0x3a4351(0x1d3)&&_0x4f8115[_0x3a4351(0x1f8)](_0x4e7cc7['status'],'verified')?_0x4f8115['qZnGv']:'';console[_0x3a4351(0x184)]('\x20\x20\x20'+(_0x27f3dc+0x1)+'.\x20'+_0x17c04a+'\x20'+_0x4e7cc7[_0x3a4351(0x1d4)]+_0x5c01cc+_0x393e67);_0x4f8115[_0x3a4351(0x216)](_0x4e7cc7[_0x3a4351(0x1c2)],_0x4f8115[_0x3a4351(0x1d7)])&&_0x4e7cc7['blockedReason']&&console['log'](_0x3a4351(0x1dd)+_0x4e7cc7['blockedReason']);_0x4e7cc7[_0x3a4351(0x1c2)]===_0x4f8115[_0x3a4351(0x1f5)]&&_0x4e7cc7['incompleteReason']&&console[_0x3a4351(0x184)](_0x3a4351(0x1a1)+_0x4e7cc7['incompleteReason']);if(_0x4e7cc7['status']===_0x4f8115['NnaXn']&&_0x4f8115['bRywo'](_0x4e7cc7[_0x3a4351(0x1a5)],_0x4f8115[_0x3a4351(0x21b)]))console[_0x3a4351(0x184)]('\x20\x20\x20\x20\x20\x20Approved');else _0x4e7cc7['status']==='closed'&&_0x4e7cc7['canceledReason']&&console['log'](_0x3a4351(0x1cf)+_0x4e7cc7[_0x3a4351(0x1d6)]);}}}export async function featureCreate(_0x379a0b,_0x12edbb){const _0x3756f3=_0x1f563c,_0x21d74f={'dfjnE':function(_0x33de19,_0x54f7cb){return _0x33de19===_0x54f7cb;},'ntVgf':function(_0x5c6b2c){return _0x5c6b2c();},'Pbjvm':function(_0x7cb6c3,_0x4ff0f5){return _0x7cb6c3(_0x4ff0f5);},'NTxCA':function(_0x7513c9){return _0x7513c9();},'YGgmd':_0x3756f3(0x1f1),'MwudO':function(_0x5681a3,_0x3a857a){return _0x5681a3(_0x3a857a);},'RTbRY':function(_0x577ddb,_0x3f2261){return _0x577ddb(_0x3f2261);},'OQPPM':function(_0x5b5953,_0x39b9d0,_0x202fef){return _0x5b5953(_0x39b9d0,_0x202fef);}},{envNames:_0x521403}=await getEnvNames();if(_0x21d74f['dfjnE'](_0x521403[_0x3756f3(0x1d9)],0x0)&&!process[_0x3756f3(0x1db)][_0x3756f3(0x22b)]){let _0x3cb2c0=0x0;try{_0x3cb2c0=(await _0x21d74f['ntVgf'](listCloudProfiles))[_0x3756f3(0x1d9)];}catch{_0x3cb2c0=0x1;}_0x3cb2c0===0x0&&console[_0x3756f3(0x223)]('\x0a'+_0x21d74f['Pbjvm'](formatProfileRequiredMessage,_0x57c8c3=>bold(_0x57c8c3)));}const _0x5af926=_0x12edbb[_0x3756f3(0x19c)]?_0x12edbb['scenarios'][_0x3756f3(0x1f4)](_0x16223b=>_0x16223b[_0x3756f3(0x1be)]()):[],_0x2da7d2=getGitRepoUrl(),_0x1ab108=_0x21d74f['NTxCA'](getGitBranch);console[_0x3756f3(0x184)](_0x21d74f['YGgmd']);const _0x29945e=await createFeature({'name':_0x379a0b,'description':_0x12edbb[_0x3756f3(0x1d4)],'checklist':_0x5af926,'gitRepoUrl':_0x2da7d2,'gitBranch':_0x1ab108});await _0x21d74f[_0x3756f3(0x20e)](setActiveFeatureId,_0x29945e['id']),await _0x21d74f['RTbRY'](tryStartCurrentSession,_0x29945e['id']);const _0x471620=process[_0x3756f3(0x1db)]['CLAUDE_SESSION_ID'];_0x471620&&registerSession(_0x471620,_0x29945e['id']),console[_0x3756f3(0x184)](_0x3756f3(0x22a)+_0x29945e['id']),_0x21d74f[_0x3756f3(0x1e4)](displayFeature,_0x29945e,_0x29945e[_0x3756f3(0x1ab)]),console['log'](_0x3756f3(0x1fa));}export async function featureList(_0x1fe376){const _0x65ff3f=_0x1f563c,_0x3dcc2a={'kEJjN':function(_0x29828f){return _0x29828f();},'XZMRd':function(_0x605ca8,_0x3db377){return _0x605ca8(_0x3db377);},'bipVF':function(_0x146593,_0x816bf0){return _0x146593===_0x816bf0;},'ySzKl':_0x65ff3f(0x20d),'Jonzb':function(_0x4b29e2,_0x4df706){return _0x4b29e2>_0x4df706;},'FRune':_0x65ff3f(0x195),'bDzVa':function(_0x80c709,_0x1ce216){return _0x80c709<_0x1ce216;},'kturd':function(_0x12b357,_0x6b24cb){return _0x12b357!==_0x6b24cb;},'XSjjS':'\x20--current-branch','vQaLZ':'\x20--include-deleted'},_0x207be8={'limit':_0x1fe376[_0x65ff3f(0x190)]??0xa,'offset':_0x1fe376[_0x65ff3f(0x19b)]??0x0,'includeDeleted':_0x1fe376[_0x65ff3f(0x1eb)]};_0x1fe376[_0x65ff3f(0x239)]&&(_0x207be8[_0x65ff3f(0x1b2)]=_0x3dcc2a[_0x65ff3f(0x21c)](getGitRepoUrl),_0x207be8['gitBranch']=_0x3dcc2a[_0x65ff3f(0x21c)](getGitBranch));const _0x836e00=await _0x3dcc2a[_0x65ff3f(0x24c)](listFeatures,_0x207be8);if(_0x3dcc2a[_0x65ff3f(0x228)](_0x836e00[_0x65ff3f(0x256)][_0x65ff3f(0x1d9)],0x0)){console['log'](_0x3dcc2a[_0x65ff3f(0x1f3)]);return;}const _0x26fde4=_0x3dcc2a['Jonzb'](_0x836e00[_0x65ff3f(0x174)],_0x836e00['items'][_0x65ff3f(0x1d9)])?_0x65ff3f(0x227)+_0x836e00[_0x65ff3f(0x256)]['length']+_0x65ff3f(0x20a)+_0x836e00['totalCount']:_0x836e00[_0x65ff3f(0x174)]+_0x65ff3f(0x18c);console[_0x65ff3f(0x184)]('\x0a'+_0x26fde4+':\x0a');for(const _0x3c4cf1 of _0x836e00['items']){const _0x5ca6bf=_0x3dcc2a[_0x65ff3f(0x1b4)]['split']('|');let _0x4c461e=0x0;while(!![]){switch(_0x5ca6bf[_0x4c461e++]){case'0':console[_0x65ff3f(0x184)](''+_0x3c4cf1[_0x65ff3f(0x1a7)]);continue;case'1':console['log']('');continue;case'2':console[_0x65ff3f(0x184)](_0x65ff3f(0x1ff)+new Date(_0x3c4cf1['createdAt'])['toLocaleDateString']());continue;case'3':_0x3c4cf1['stats']&&console[_0x65ff3f(0x184)]('\x20\x20\x20Progress:\x20'+_0x3dcc2a['XZMRd'](getProgressDisplay,_0x3c4cf1['stats']));continue;case'4':console[_0x65ff3f(0x184)]('\x20\x20\x20ID:\x20'+_0x3c4cf1['id']);continue;case'5':_0x3c4cf1['gitBranch']&&console['log'](_0x65ff3f(0x1a0)+_0x3c4cf1[_0x65ff3f(0x205)]);continue;}break;}}const _0xe73fca=_0x207be8['limit']??0xa,_0x50f464=(_0x207be8[_0x65ff3f(0x19b)]??0x0)+_0x836e00[_0x65ff3f(0x256)][_0x65ff3f(0x1d9)];if(_0x3dcc2a['bDzVa'](_0x50f464,_0x836e00['totalCount'])){const _0x969fae=_0x3dcc2a['kturd'](_0xe73fca,0xa)?'\x20--limit\x20'+_0xe73fca:'',_0x19b3bb=_0x1fe376[_0x65ff3f(0x239)]?_0x3dcc2a[_0x65ff3f(0x204)]:'',_0x3176fe=_0x1fe376['includeDeleted']?_0x3dcc2a[_0x65ff3f(0x187)]:'';console['log'](_0x65ff3f(0x1e0)+_0x50f464+_0x969fae+_0x19b3bb+_0x3176fe);}}export async function featureShow(_0x5825ad){const _0x27c455=_0x1f563c,_0x3bbd54={'Fmjzd':function(_0x2529fb){return _0x2529fb();}},_0x3283d0=_0x5825ad||await _0x3bbd54[_0x27c455(0x23f)](getActiveFeatureId);if(!_0x3283d0)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x5ec2aa=await getFeature(_0x3283d0);displayFeature(_0x5ec2aa,_0x5ec2aa['checklistItems']);}export async function featureResume(_0xc50843){const _0x51a7ef=_0x1f563c,_0x2cd445={'kIbkv':function(_0x443da9,_0x182ad6){return _0x443da9(_0x182ad6);},'ubtji':function(_0x4e622e){return _0x4e622e();},'tEwYV':function(_0x49521d){return _0x49521d();},'bDEon':_0x51a7ef(0x194),'Ksszx':function(_0x307a34,_0x47e1ac){return _0x307a34||_0x47e1ac;},'qcXcL':'any','MKMXP':function(_0x19aabd,_0x43e8c3){return _0x19aabd||_0x43e8c3;},'OGJxk':function(_0x40d951,_0x536db8){return _0x40d951===_0x536db8;},'dFQyb':function(_0x284365,_0x3e2178){return _0x284365===_0x3e2178;},'obmHu':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','jLPri':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','FxYvp':function(_0x2bf564,_0x9d91de){return _0x2bf564(_0x9d91de);},'lzxpy':function(_0x429aff,_0x4cb1ef,_0x473140){return _0x429aff(_0x4cb1ef,_0x473140);},'lWkmG':function(_0x29c054,_0x538b5d){return _0x29c054(_0x538b5d);}};if(_0xc50843){const _0x4f217b=await _0x2cd445[_0x51a7ef(0x1a3)](getFeature,_0xc50843);await setActiveFeatureId(_0x4f217b['id']);const _0xa1072a=_0x2cd445[_0x51a7ef(0x230)](getGitBranch);_0xa1072a&&_0xa1072a!==_0x4f217b['gitBranch']&&(await updateFeature(_0x4f217b['id'],{'gitBranch':_0xa1072a}),console['log'](_0x51a7ef(0x186)+_0xa1072a));console['log'](_0x51a7ef(0x1c0)+_0x4f217b[_0x51a7ef(0x1a7)]+'\x20('+_0x4f217b['id']+')'),await tryStartCurrentSession(_0x4f217b['id']);const _0x4b1376=process[_0x51a7ef(0x1db)][_0x51a7ef(0x245)];_0x4b1376&&registerSession(_0x4b1376,_0x4f217b['id']);displayFeature(_0x4f217b,_0x4f217b['checklistItems']),await printFeedbackNudge(_0x4f217b['id']);return;}const _0xa8693d=getGitRepoUrl(),_0x221c88=_0x2cd445['tEwYV'](getGitBranch);if(!_0xa8693d&&!_0x221c88)throw new Error(_0x2cd445[_0x51a7ef(0x1b9)]);console[_0x51a7ef(0x184)](_0x51a7ef(0x248)+_0x2cd445[_0x51a7ef(0x218)](_0xa8693d,_0x2cd445['qcXcL'])+'\x20/\x20'+_0x2cd445[_0x51a7ef(0x1c3)](_0x221c88,_0x2cd445['qcXcL'])+'...');const _0x18af25=await listFeatures({'gitRepoUrl':_0xa8693d,'gitBranch':_0x221c88}),_0x3fc814=_0x18af25[_0x51a7ef(0x256)][_0x51a7ef(0x1fd)](_0x4c3f38=>_0x4c3f38['status']?_0x4c3f38['status']!=='verified':!_0x4c3f38[_0x51a7ef(0x1ad)]);if(_0x2cd445[_0x51a7ef(0x1b1)](_0x3fc814['length'],0x0)){console['log'](_0x51a7ef(0x203)),console[_0x51a7ef(0x184)](_0x51a7ef(0x1bb));return;}let _0x4f120d;if(_0x2cd445[_0x51a7ef(0x1e9)](_0x3fc814[_0x51a7ef(0x1d9)],0x1))_0x4f120d=_0x3fc814[0x0];else{const _0x398acb=process['stdin']['isTTY']&&process[_0x51a7ef(0x1aa)][_0x51a7ef(0x23d)];if(!_0x398acb){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x5b3187 of _0x3fc814){console[_0x51a7ef(0x184)]('\x20\x20'+_0x5b3187['name']),console[_0x51a7ef(0x184)]('\x20\x20\x20\x20\x20ID:\x20'+_0x5b3187['id']),_0x5b3187['stats']&&console[_0x51a7ef(0x184)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x2cd445['kIbkv'](getProgressDisplay,_0x5b3187['stats'])),_0x5b3187['gitBranch']&&console[_0x51a7ef(0x184)](_0x51a7ef(0x1fc)+_0x5b3187[_0x51a7ef(0x205)]);}throw new Error(_0x2cd445['obmHu']);}const {selected:_0x58c810}=await _0x5b4a2e['prompt']([{'type':'list','name':'selected','message':_0x2cd445[_0x51a7ef(0x202)],'choices':_0x3fc814[_0x51a7ef(0x1f4)](_0x1e5931=>({'name':_0x1e5931['name']+'\x20('+_0x1e5931['id']+')','value':_0x1e5931['id']}))}]);_0x4f120d=_0x3fc814['find'](_0x40e4b3=>_0x40e4b3['id']===_0x58c810);}await _0x2cd445['FxYvp'](setActiveFeatureId,_0x4f120d['id']);_0x221c88&&_0x221c88!==_0x4f120d[_0x51a7ef(0x205)]&&(await updateFeature(_0x4f120d['id'],{'gitBranch':_0x221c88}),console[_0x51a7ef(0x184)](_0x51a7ef(0x186)+_0x221c88));console[_0x51a7ef(0x184)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x4f120d['name']+'\x20('+_0x4f120d['id']+')'),await _0x2cd445['kIbkv'](tryStartCurrentSession,_0x4f120d['id']);const _0x16fa75=await _0x2cd445[_0x51a7ef(0x1a3)](getFeature,_0x4f120d['id']),_0x398693=process[_0x51a7ef(0x1db)]['CLAUDE_SESSION_ID'];_0x398693&&registerSession(_0x398693,_0x16fa75['id']),_0x2cd445['lzxpy'](displayFeature,_0x16fa75,_0x16fa75[_0x51a7ef(0x1ab)]),await _0x2cd445['lWkmG'](printFeedbackNudge,_0x16fa75['id']);}async function printFeedbackNudge(_0x4aec6f){const _0x45486b=_0x1f563c,_0x445a0f={'sOCar':function(_0x31602e,_0x255cdf,_0x217fd3){return _0x31602e(_0x255cdf,_0x217fd3);},'nqzpZ':function(_0x4715ac,_0x5d0a1b){return _0x4715ac>_0x5d0a1b;},'LUgvn':_0x45486b(0x1e6)};try{const {items:_0x5484d6}=await getActionItems(_0x4aec6f);let _0x40ada5=0x0,_0x1662b4=0x0;for(const _0xeae85e of _0x5484d6){const _0x354778=await _0x445a0f['sOCar'](getItemFeedback,_0x4aec6f,_0xeae85e['id']);_0x445a0f[_0x45486b(0x1b8)](_0x354778['unaddressedComments']['length'],0x0)&&(_0x40ada5+=_0x354778[_0x45486b(0x257)]['length'],_0x1662b4++);}_0x445a0f[_0x45486b(0x1b8)](_0x40ada5,0x0)&&(console['log'](_0x45486b(0x1c8)+_0x40ada5+_0x45486b(0x21d)+_0x1662b4+_0x45486b(0x247)),console['log'](_0x445a0f[_0x45486b(0x198)]));}catch{}}async function tryStartCurrentSession(_0x51932e){const _0x41a6cb=_0x1f563c,_0x45bf2a={'SxzOK':function(_0x22e058,_0x1034e3){return _0x22e058(_0x1034e3);},'pDRZs':function(_0x1faf8d,_0x48c61d,_0x5e9783){return _0x1faf8d(_0x48c61d,_0x5e9783);}};try{const {sessions:_0x5feaa6}=await _0x45bf2a[_0x41a6cb(0x1a6)](listFeatureSessions,_0x51932e),_0x320a17=_0x5feaa6['find'](_0x53f8f5=>_0x53f8f5[_0x41a6cb(0x1c2)]==='ready');_0x320a17&&(await _0x45bf2a['pDRZs'](startSession,_0x51932e,_0x320a17['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x320a17[_0x41a6cb(0x17f)]));}catch{}}export async function featureReport(_0x5741f0,_0x4d376c){const _0x408b76=_0x1f563c,_0x47f8fa={'IzACw':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','BhooJ':'\x0aGenerating\x20report...','ipIpc':function(_0x1fc763,_0x3f4db0,_0x456ba7){return _0x1fc763(_0x3f4db0,_0x456ba7);},'kSkwy':function(_0x182425){return _0x182425();},'xwuuG':_0x408b76(0x1d5),'UXHte':function(_0x2f91d1,_0xf5d9c0,_0x2e0dab){return _0x2f91d1(_0xf5d9c0,_0x2e0dab);}},_0x47e49c=_0x5741f0||await getActiveFeatureId();if(!_0x47e49c)throw new Error(_0x47f8fa['IzACw']);console['log'](_0x47f8fa['BhooJ']);const _0x1b06ec=await _0x47f8fa[_0x408b76(0x197)](getFeatureReportMarkdown,_0x47e49c,{'style':_0x4d376c[_0x408b76(0x1a2)]}),_0x242ab5=_0x4d376c['output']||join(_0x47f8fa['kSkwy'](getRangerDir),_0x47f8fa['xwuuG'],_0x47e49c+_0x408b76(0x1a4)),_0x5f294c=_0x47f8fa[_0x408b76(0x1ce)](join,_0x242ab5,'..');!existsSync(_0x5f294c)&&await mkdir(_0x5f294c,{'recursive':!![]}),await writeFile(_0x242ab5,_0x1b06ec,'utf-8'),console[_0x408b76(0x184)]('\x0a✅\x20Report\x20generated:\x20'+_0x242ab5);}function getScenarioResult(_0x3ef920){const _0x54a9a6=_0x1f563c,_0x4867eb={'XNMQw':function(_0x71a8f9,_0x1896f5){return _0x71a8f9===_0x1896f5;},'VYStQ':_0x54a9a6(0x1d3),'YGMXm':'verification_in_progress'};if(_0x4867eb['XNMQw'](_0x3ef920[_0x54a9a6(0x1c2)],_0x4867eb[_0x54a9a6(0x188)]))return _0x3ef920['terminalReason']??_0x4867eb['VYStQ'];if(_0x3ef920['status']===_0x4867eb[_0x54a9a6(0x185)])return _0x54a9a6(0x23e);return _0x3ef920['status'];}function getScenarioRationale(_0x6568ee,_0x350059){const _0xbbf8c1=_0x1f563c;if(_0x350059)return _0x350059;if(_0x6568ee['blockedReason'])return _0x6568ee['blockedReason'];if(_0x6568ee['incompleteReason'])return _0x6568ee[_0xbbf8c1(0x206)];if(_0x6568ee[_0xbbf8c1(0x1d6)])return _0x6568ee[_0xbbf8c1(0x1d6)];if(_0x6568ee[_0xbbf8c1(0x24b)])return _0x6568ee['notes'];return null;}export async function featureReportPrDescription(_0x2ffd55,_0x5731a3){const _0x4d2e25=_0x1f563c,_0x21eb01={'IKbTh':function(_0x50b46b,_0x495304){return _0x50b46b>_0x495304;},'uaTTx':function(_0x52e35b,_0x47b519){return _0x52e35b<_0x47b519;},'nQcXq':function(_0x123b34,_0x5bb45f){return _0x123b34===_0x5bb45f;},'iSmJh':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','HdYMg':function(_0x5e0fff,_0x53732b,_0x436234,_0x1ab677){return _0x5e0fff(_0x53732b,_0x436234,_0x1ab677);},'clNau':function(_0x5d04b7,_0x32f8ad,_0x3a3899){return _0x5d04b7(_0x32f8ad,_0x3a3899);}},_0x1d2ba9=_0x2ffd55||await getActiveFeatureId();if(!_0x1d2ba9)throw new Error(_0x4d2e25(0x1b6));const _0x4ff927=await getFeature(_0x1d2ba9),_0x34f21d=_0x4ff927['checklistItems']||[],_0x5ec462=getCurrentSessionItems(_0x4ff927,_0x34f21d);_0x5ec462[_0x4d2e25(0x1d9)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process[_0x4d2e25(0x231)](0x1));const _0x497e5c=_0x5731a3[_0x4d2e25(0x21f)]??[],_0x449e28=_0x497e5c['filter'](_0x1dc447=>!Number['isInteger'](_0x1dc447)||_0x1dc447<0x1||_0x1dc447>_0x5ec462['length']);if(_0x21eb01['IKbTh'](_0x449e28[_0x4d2e25(0x1d9)],0x0)){console['error'](_0x4d2e25(0x1d1)+_0x449e28[_0x4d2e25(0x191)](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x422dfb=0x0;_0x21eb01['uaTTx'](_0x422dfb,_0x5ec462[_0x4d2e25(0x1d9)]);_0x422dfb++){console['log']('\x20\x20'+(_0x422dfb+0x1)+'.\x20'+_0x5ec462[_0x422dfb]['description']);}process[_0x4d2e25(0x231)](0x1);}const _0x431aff=new Set(_0x497e5c[_0x4d2e25(0x1f4)](_0x707bb5=>_0x707bb5-0x1)),_0xfecc62=_0x5ec462['filter']((_0x559347,_0x30a88d)=>!_0x431aff['has'](_0x30a88d));_0x21eb01[_0x4d2e25(0x17c)](_0xfecc62[_0x4d2e25(0x1d9)],0x0)&&(console[_0x4d2e25(0x246)](_0x21eb01['iSmJh']),process[_0x4d2e25(0x231)](0x1));if(_0x5731a3['json'])await _0x21eb01[_0x4d2e25(0x22e)](outputJsonReport,_0x1d2ba9,_0x4ff927,_0xfecc62);else{const _0x466259=await _0x21eb01['clNau'](getFeatureReportMarkdown,_0x1d2ba9,{'itemIds':_0xfecc62[_0x4d2e25(0x1f4)](_0x74eeff=>_0x74eeff['id'])});process[_0x4d2e25(0x1aa)]['write'](_0x466259[_0x4d2e25(0x238)]()+'\x0a');}}async function outputJsonReport(_0x51716e,_0x82f952,_0x1a1fa0){const _0x452f58=_0x1f563c,_0x26ac09={'xsDgn':function(_0x15d450){return _0x15d450();},'mcqZZ':function(_0x570d6c,_0x314be5){return _0x570d6c(_0x314be5);},'umOzR':function(_0x3bf48c,_0x438ed7){return _0x3bf48c+_0x438ed7;}},_0x20e455=_0x26ac09[_0x452f58(0x1c6)](getApiBaseUrl),_0xd74c9f=await _0x26ac09[_0x452f58(0x1ae)](getFeatureReport,_0x51716e),_0x13b08d=new Map(_0xd74c9f[_0x452f58(0x1ab)][_0x452f58(0x1f4)](_0x4bb6ca=>[_0x4bb6ca['id'],_0x4bb6ca])),_0x1d2952=await Promise['all'](_0x1a1fa0[_0x452f58(0x1f4)](async _0x4049ba=>{const _0x42d466=_0x452f58,_0x485fb4=_0x13b08d[_0x42d466(0x201)](_0x4049ba['id']),_0x13a4fa=_0x485fb4?.[_0x42d466(0x208)]??null;let _0x5ba6a4=[];if(_0x4049ba[_0x42d466(0x221)])try{const {steps:_0x24c91e}=await getBrowserSessionSteps(_0x4049ba['browserSessionId']);_0x24c91e['length']>0x0&&(_0x5ba6a4=_0x24c91e[_0x42d466(0x1f4)](_0x147ad7=>{const _0x342d63=_0x42d466,_0x197698=_0x147ad7[_0x342d63(0x18f)][_0x342d63(0x1ea)](_0x5a70d9=>_0x5a70d9[_0x342d63(0x1da)]===_0x342d63(0x209)&&_0x5a70d9[_0x342d63(0x179)]==='after')??_0x147ad7[_0x342d63(0x18f)]['find'](_0x426360=>_0x426360['assetType']==='screenshot');let _0x4e7bf6=null,_0x59b75a=null;if(_0x197698){const _0x248df4=_0x197698[_0x342d63(0x1ee)][_0x342d63(0x23a)]['split']('/')[_0x342d63(0x17d)]();_0x4e7bf6=_0x20e455+'/api/v1/mcp/browser-sessions/'+_0x4049ba['browserSessionId']+'/artifacts/'+_0x248df4,_0x248df4&&(_0x59b75a=_0x248df4[_0x342d63(0x244)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x342d63(0x244)](/[-_]/g,'\x20'));}return{'description':_0x59b75a||_0x147ad7[_0x342d63(0x1d4)]||_0x147ad7[_0x342d63(0x19e)]||'Step\x20'+_0x147ad7[_0x342d63(0x24a)],'screenshot':_0x4e7bf6,'is_key_step':_0x147ad7[_0x342d63(0x1c1)]};}));}catch{}return _0x5ba6a4['length']===0x0&&_0x13a4fa?.['screenshotUrls']&&(_0x5ba6a4=_0x13a4fa['screenshotUrls'][_0x42d466(0x1f4)]((_0x47e73e,_0x2b0422)=>({'description':_0x42d466(0x183)+(_0x2b0422+0x1),'screenshot':_0x47e73e,'is_key_step':![]}))),{'description':_0x4049ba['description'],'result':getScenarioResult(_0x4049ba),'rationale':getScenarioRationale(_0x4049ba,_0x13a4fa?.['agentResponse']),'steps':_0x5ba6a4};})),_0x24303c={'url':_0x82f952['dashboardUrl'],'scenarios':_0x1d2952};process[_0x452f58(0x1aa)]['write'](_0x26ac09['umOzR'](JSON['stringify'](_0x24303c,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x1f6734){const _0xe458eb=_0x1f563c,_0x181c74={'ErxPD':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','XIUGO':function(_0x1d03a3,_0x51b9d3){return _0x1d03a3(_0x51b9d3);},'IHgqt':_0xe458eb(0x17b),'lZpeD':function(_0x469079,_0x1053aa){return _0x469079!==_0x1053aa;},'nrFsK':_0xe458eb(0x23e),'EHOfn':_0xe458eb(0x1a9)},_0x14dd56=_0x1f6734||await getActiveFeatureId();if(!_0x14dd56)throw new Error(_0x181c74[_0xe458eb(0x20f)]);const _0x229674=await getFeature(_0x14dd56);if(!_0x229674['currentSessionId'])throw new Error(_0xe458eb(0x22f));const {sessions:_0x4a66d4}=await _0x181c74['XIUGO'](listFeatureSessions,_0x14dd56),_0x3921f9=_0x4a66d4['find'](_0x1f8001=>_0x1f8001['id']===_0x229674[_0xe458eb(0x21a)]);if(!_0x3921f9)throw new Error(_0x181c74['IHgqt']);if(_0x3921f9[_0xe458eb(0x1c2)]==='completed'){console[_0xe458eb(0x184)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x181c74[_0xe458eb(0x217)](_0x3921f9[_0xe458eb(0x1c2)],_0x181c74['nrFsK']))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x3921f9[_0xe458eb(0x1c2)]);console['log'](_0x181c74['EHOfn']),await concludeSession(_0x14dd56,_0x229674[_0xe458eb(0x21a)]),console['log'](_0xe458eb(0x234)+_0x3921f9['iteration']+_0xe458eb(0x1f2)),console[_0xe458eb(0x184)](_0xe458eb(0x207));}export async function featureSessions(_0x474f1e){const _0x4fafa0=_0x1f563c,_0x2cb87a={'aXTWN':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','dLwCo':function(_0x1b2fa1,_0x520797){return _0x1b2fa1(_0x520797);},'LaHRF':function(_0x288e63,_0x17acc9){return _0x288e63===_0x17acc9;},'eLLIc':function(_0x438edf,_0x16b0ae){return _0x438edf===_0x16b0ae;},'DjIDl':'completed'},_0x15574e=_0x474f1e||await getActiveFeatureId();if(!_0x15574e)throw new Error(_0x2cb87a['aXTWN']);const _0x563455=await _0x2cb87a[_0x4fafa0(0x1e5)](getFeature,_0x15574e);console['log'](_0x4fafa0(0x1e1)+_0x563455[_0x4fafa0(0x1a7)]+'\x0a');const {sessions:_0x3ffc62}=await listFeatureSessions(_0x15574e);if(_0x2cb87a[_0x4fafa0(0x226)](_0x3ffc62[_0x4fafa0(0x1d9)],0x0)){console['log']('No\x20sessions\x20found.');return;}for(const _0x44aa34 of _0x3ffc62){const _0x52b2df=_0x2cb87a['eLLIc'](_0x44aa34[_0x4fafa0(0x1c2)],_0x2cb87a['DjIDl'])?'✅':_0x44aa34[_0x4fafa0(0x1c2)]==='in_progress'?'🔄':'▶️';console['log'](_0x52b2df+'\x20Session\x20'+_0x44aa34['iteration']+'\x20('+_0x44aa34['id']+')'),console[_0x4fafa0(0x184)]('\x20\x20\x20Status:\x20'+_0x44aa34['status']),console[_0x4fafa0(0x184)](_0x4fafa0(0x1ff)+new Date(_0x44aa34[_0x4fafa0(0x199)])[_0x4fafa0(0x258)]()),_0x44aa34[_0x4fafa0(0x1ad)]&&console[_0x4fafa0(0x184)](_0x4fafa0(0x1bc)+new Date(_0x44aa34[_0x4fafa0(0x1ad)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x27b6bb,_0x1210a8){const _0x1c5717=_0x1f563c,_0x50c13c={'mZHkp':function(_0xf9f646){return _0xf9f646();},'Ksbno':_0x1c5717(0x255),'kjEqg':function(_0x1b07e8,_0x130e56){return _0x1b07e8(_0x130e56);}},_0x89c7f5=_0x1210a8||await _0x50c13c['mZHkp'](getActiveFeatureId);if(!_0x89c7f5)throw new Error(_0x50c13c[_0x1c5717(0x243)]);const _0x281f98=await _0x50c13c[_0x1c5717(0x192)](getFeature,_0x89c7f5);if(_0x281f98[_0x1c5717(0x229)]&&!_0x281f98['latestReview'][_0x1c5717(0x254)])throw new Error(_0x1c5717(0x1ed)+_0x281f98['dashboardUrl']);await createChecklistItem(_0x89c7f5,_0x27b6bb);const _0x5ba2ba=await getFeature(_0x89c7f5);console['log'](_0x1c5717(0x1b3)),displayFeature(_0x5ba2ba,_0x5ba2ba[_0x1c5717(0x1ab)]);}export async function featureEditScenario(_0x1e1e38,_0x195268){const _0x16c718=_0x1f563c,_0x1247ed={'DPGBa':function(_0x1f40d8){return _0x1f40d8();},'eImsy':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','LEkxo':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','LkcAA':function(_0x4cb6a7,_0x2be149){return _0x4cb6a7(_0x2be149);},'KTIqC':_0x16c718(0x18d),'vsIja':function(_0x352a1d,_0x71e1c3){return _0x352a1d===_0x71e1c3;},'giHVh':_0x16c718(0x1fe),'YwdTp':function(_0x3014dd,_0x13692e){return _0x3014dd<_0x13692e;},'KECPU':function(_0x4865c1,_0x9455d9){return _0x4865c1-_0x9455d9;},'qZJzK':function(_0x261e70,_0x2b590f){return _0x261e70(_0x2b590f);},'WWuCM':function(_0x30d532,_0x373450,_0x5c5d6a){return _0x30d532(_0x373450,_0x5c5d6a);}},_0x55a2a3=_0x195268['id']||await _0x1247ed['DPGBa'](getActiveFeatureId);!_0x55a2a3&&(console[_0x16c718(0x246)](_0x1247ed['eImsy']),console[_0x16c718(0x246)](_0x1247ed['LEkxo']),process[_0x16c718(0x231)](0x1));const _0x17a137=await _0x1247ed[_0x16c718(0x175)](getFeature,_0x55a2a3);_0x17a137['latestReview']&&!_0x17a137[_0x16c718(0x229)]['submittedAt']&&(console['error'](_0x16c718(0x1df)),console[_0x16c718(0x246)](_0x1247ed[_0x16c718(0x236)]),console[_0x16c718(0x246)]('\x20\x20'+_0x17a137['dashboardUrl']),process[_0x16c718(0x231)](0x1));const _0x40eca0=_0x17a137['checklistItems']||[];_0x40eca0['length']===0x0&&(console[_0x16c718(0x246)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x1247ed[_0x16c718(0x253)](_0x195268[_0x16c718(0x222)],undefined)){console[_0x16c718(0x246)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x1247ed[_0x16c718(0x17a)]);for(let _0x154049=0x0;_0x1247ed[_0x16c718(0x196)](_0x154049,_0x40eca0[_0x16c718(0x1d9)]);_0x154049++){console['log']('\x20\x20'+(_0x154049+0x1)+'.\x20'+_0x40eca0[_0x154049][_0x16c718(0x1d4)]);}process['exit'](0x1);}const _0xfb3a9c=_0x1247ed['KECPU'](_0x195268['scenario'],0x1);if(_0x1247ed['YwdTp'](_0xfb3a9c,0x0)||_0xfb3a9c>=_0x40eca0[_0x16c718(0x1d9)]){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x195268[_0x16c718(0x222)]+'.\x20Feature\x20review\x20has\x20'+_0x40eca0[_0x16c718(0x1d9)]+'\x20scenarios.'),console[_0x16c718(0x184)](_0x16c718(0x1fe));for(let _0x231fc8=0x0;_0x231fc8<_0x40eca0[_0x16c718(0x1d9)];_0x231fc8++){console['log']('\x20\x20'+(_0x231fc8+0x1)+'.\x20'+_0x40eca0[_0x231fc8][_0x16c718(0x1d4)]);}process['exit'](0x1);}const _0xd592b3=_0x40eca0[_0xfb3a9c];await updateChecklistItem(_0x55a2a3,_0xd592b3['id'],{'description':_0x1e1e38});const _0x31e889=await _0x1247ed['qZJzK'](getFeature,_0x55a2a3);console['log'](_0x16c718(0x1bd)),_0x1247ed['WWuCM'](displayFeature,_0x31e889,_0x31e889[_0x16c718(0x1ab)]);}async function downloadFeedbackImage(_0xef45ce,_0x1c0a28){const _0x3caef9=_0x1f563c,_0xa7a2bd={'VZWiO':function(_0x3715b3,_0x215be2,_0x56b10f){return _0x3715b3(_0x215be2,_0x56b10f);},'TeohU':function(_0x5daa98,_0x2b0d50,_0x3916c3){return _0x5daa98(_0x2b0d50,_0x3916c3);}};try{const _0x46cc71=_0xa7a2bd['VZWiO'](join,getRangerDir(),_0x3caef9(0x22d));await _0xa7a2bd['TeohU'](mkdir,_0x46cc71,{'recursive':!![]});const _0xd0b75f=join(_0x46cc71,_0x3caef9(0x19f)+_0x1c0a28+_0x3caef9(0x233)),_0x5e7572=await fetch(_0xef45ce);if(!_0x5e7572['ok'])return null;const _0x50d9bd=Buffer[_0x3caef9(0x1cb)](await _0x5e7572['arrayBuffer']());return await _0xa7a2bd['VZWiO'](writeFile,_0xd0b75f,_0x50d9bd),_0xd0b75f;}catch{return null;}}export async function featureGetReview(_0x2dd371){const _0x1edd76=_0x1f563c,_0x168f9f={'HFRbp':function(_0x39722a){return _0x39722a();},'EHyrP':_0x1edd76(0x255),'VpUzs':function(_0x218f99,_0x5f2db3){return _0x218f99(_0x5f2db3);},'yzevW':_0x1edd76(0x19a),'PQIrM':function(_0x55181f,_0x46754a){return _0x55181f<_0x46754a;},'rWvzD':function(_0x2ffb74,_0x423112){return _0x2ffb74>_0x423112;},'Zvayl':function(_0x40c0f1,_0x1c77cf){return _0x40c0f1>_0x1c77cf;},'pvXCe':function(_0x13c5f0,_0x18fbfc){return _0x13c5f0+_0x18fbfc;},'MXuJW':_0x1edd76(0x240),'uWjtY':'Unknown','jiTdz':function(_0x14b111,_0x5c2768,_0x3da90f){return _0x14b111(_0x5c2768,_0x3da90f);},'FsKGe':_0x1edd76(0x18b),'pmbhc':_0x1edd76(0x1cd),'DmenW':_0x1edd76(0x22c)},_0x18ecd9=_0x2dd371||await _0x168f9f['HFRbp'](getActiveFeatureId);if(!_0x18ecd9)throw new Error(_0x168f9f['EHyrP']);const _0x2b2308=await getFeature(_0x18ecd9),{items:_0x2fce91}=await _0x168f9f[_0x1edd76(0x24d)](getActionItems,_0x18ecd9);console[_0x1edd76(0x184)]('\x0a📋\x20Feedback\x20for:\x20'+_0x2b2308['name']+'\x20('+_0x2b2308['id']+')\x0a');if(_0x2fce91['length']===0x0){console[_0x1edd76(0x184)](_0x168f9f[_0x1edd76(0x219)]);return;}for(let _0x2a23a0=0x0;_0x168f9f['PQIrM'](_0x2a23a0,_0x2fce91[_0x1edd76(0x1d9)]);_0x2a23a0++){const _0x21f3e8=_0x2fce91[_0x2a23a0],_0x4fba27=_0x168f9f['rWvzD'](_0x21f3e8['version'],0x1)?_0x1edd76(0x251)+_0x21f3e8['version']+')':'',_0x314526=await getItemFeedback(_0x18ecd9,_0x21f3e8['id']);if(_0x168f9f[_0x1edd76(0x212)](_0x314526['unaddressedComments']['length'],0x0)){console[_0x1edd76(0x184)]('Scenario\x20'+_0x168f9f[_0x1edd76(0x1d8)](_0x2a23a0,0x1)+_0x1edd76(0x17e)+_0x21f3e8['description']+'\x22'+_0x4fba27+'\x20—\x20'+_0x314526[_0x1edd76(0x257)]['length']+_0x1edd76(0x241));for(const _0x2e4f01 of _0x314526['unaddressedComments']){const _0x11e167=new Date(_0x2e4f01[_0x1edd76(0x199)])[_0x1edd76(0x178)](_0x1edd76(0x1f6),{'month':_0x168f9f[_0x1edd76(0x181)],'day':_0x1edd76(0x249)}),_0x82056e=_0x2e4f01[_0x1edd76(0x1ec)]||_0x2e4f01['authorEmail']||_0x168f9f['uWjtY'];console['log']('\x20\x20💬\x20'+_0x82056e+'\x20('+_0x11e167+'):\x20\x22'+_0x2e4f01[_0x1edd76(0x20c)]+'\x22');if(_0x2e4f01[_0x1edd76(0x180)]){const _0x53ff25=await _0x168f9f['jiTdz'](downloadFeedbackImage,_0x2e4f01['assetUrl'],_0x2e4f01['id']);_0x53ff25&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x53ff25);}if(_0x2e4f01[_0x1edd76(0x252)]){const _0x4b84eb=_0x2e4f01['domRef']['selector'][_0x1edd76(0x242)](_0x168f9f[_0x1edd76(0x177)])['pop']()?.[_0x1edd76(0x242)](':')[0x0]||_0x168f9f[_0x1edd76(0x211)],_0x277e7b=_0x2e4f01['domRef']['textContent']?'\x20\x22'+_0x2e4f01['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x1edd76(0x184)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x4b84eb+'>'+_0x277e7b),console['log'](_0x1edd76(0x1c5)+_0x2e4f01['domRef']['selector']);}else{if(_0x2e4f01['spatial']){const _0x4d57d8=_0x2e4f01[_0x1edd76(0x225)][_0x1edd76(0x250)];_0x2e4f01['spatial'][_0x1edd76(0x1d2)]===_0x168f9f['DmenW']&&_0x4d57d8[_0x1edd76(0x1d9)]>=0x2?console[_0x1edd76(0x184)](_0x1edd76(0x1af)+_0x4d57d8[0x0]['toFixed'](0x2)+',\x20'+_0x4d57d8[0x1][_0x1edd76(0x19d)](0x2)+')'):console['log'](_0x1edd76(0x224)+_0x2e4f01['spatial']['type']+'\x20at\x20['+_0x4d57d8['map'](_0x166126=>_0x166126[_0x1edd76(0x19d)](0x2))['join'](',\x20')+']');}}}if(_0x314526[_0x1edd76(0x1c9)]){console[_0x1edd76(0x184)]('\x20\x20Expected\x20flow:');for(const _0x482ec2 of _0x314526[_0x1edd76(0x1c9)]['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x482ec2);}}}else console[_0x1edd76(0x184)]('Scenario\x20'+(_0x2a23a0+0x1)+':\x20\x22'+_0x21f3e8[_0x1edd76(0x1d4)]+'\x22'+_0x4fba27+_0x1edd76(0x23c)),console[_0x1edd76(0x184)](_0x1edd76(0x1ba));console[_0x1edd76(0x184)]('');}}export async function featureDelete(_0x174f5b){const _0x86439f=_0x1f563c,_0x2bebea={'HkWDY':function(_0x2d0729){return _0x2d0729();},'DFYro':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','OoygP':function(_0x42ab6f,_0x37d0f6){return _0x42ab6f(_0x37d0f6);},'PWLaG':function(_0x4dd2e3,_0x4ef326){return _0x4dd2e3(_0x4ef326);},'wsIPV':function(_0x422024,_0x10ca91){return _0x422024+_0x10ca91;}},_0x190b3c=_0x174f5b||await _0x2bebea[_0x86439f(0x24f)](getActiveFeatureId);if(!_0x190b3c)throw new Error(_0x2bebea[_0x86439f(0x215)]);const _0xdf53b=await _0x2bebea[_0x86439f(0x1ef)](getFeature,_0x190b3c);await _0x2bebea[_0x86439f(0x1c7)](softDeleteFeature,_0x190b3c),console[_0x86439f(0x184)](_0x86439f(0x1fb)+_0xdf53b[_0x86439f(0x1a7)]+'\x20('+_0x190b3c+')'),console['log'](_0x2bebea['wsIPV'](_0x86439f(0x176),_0x190b3c));}export async function featureRestore(_0x2c8871){const _0x4477eb=_0x1f563c,_0x2d2ec9={'evMJu':function(_0x1bb782,_0x31af90,_0x4fe1da){return _0x1bb782(_0x31af90,_0x4fe1da);}};await restoreFeature(_0x2c8871);const _0x25caa0=await getFeature(_0x2c8871);console[_0x4477eb(0x184)](_0x4477eb(0x24e)+_0x25caa0[_0x4477eb(0x1a7)]+'\x20('+_0x2c8871+')'),_0x2d2ec9['evMJu'](displayFeature,_0x25caa0,_0x25caa0['checklistItems']);}