@ranger-testing/ranger-cli 2.3.2 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/featureReportGenerator.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/git.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/reportGenerator.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyInBrowser.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1c29df,_0x235345){const _0xd775a7=_0x5009,_0x13b8c1=_0x1c29df();while(!![]){try{const _0x119494=-parseInt(_0xd775a7(0xa5))/0x1*(parseInt(_0xd775a7(0xa3))/0x2)+parseInt(_0xd775a7(0xab))/0x3*(parseInt(_0xd775a7(0x9a))/0x4)+parseInt(_0xd775a7(0xa6))/0x5+parseInt(_0xd775a7(0xac))/0x6+parseInt(_0xd775a7(0xa2))/0x7+parseInt(_0xd775a7(0xa7))/0x8+-parseInt(_0xd775a7(0x99))/0x9;if(_0x119494===_0x235345)break;else _0x13b8c1['push'](_0x13b8c1['shift']());}catch(_0x3313da){_0x13b8c1['push'](_0x13b8c1['shift']());}}}(_0xb3f2,0x910d5));function _0x5009(_0x591a8f,_0x55f538){_0x591a8f=_0x591a8f-0x99;const _0xb3f2b8=_0xb3f2();let _0x500973=_0xb3f2b8[_0x591a8f];return _0x500973;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';function _0xb3f2(){const _0x3974a9=['xGGMy','663153NwPOjY','5880594nCZawk','export\x20CLAUDE_SESSION_ID=\x22','17281620OxiGkW','4lAeMDM','DvQSD','log','CLAUDE_ENV_FILE','master','LUdqL','rxale','parse','6080585AyuxQm','10JExPlM','stringify','29762SoMVoP','2754290DyKkPM','339680fzRSdS','session_id','trackCommandEnd'];_0xb3f2=function(){return _0x3974a9;};return _0xb3f2();}const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0x2cdda6){const _0x4d9104=_0x5009,_0x1e207d={'rxale':function(_0x2768a0,_0x91c118){return _0x2768a0||_0x91c118;},'xGGMy':function(_0x4d0046,_0x4e5082){return _0x4d0046(_0x4e5082);},'mpGSj':function(_0x171560,_0x3aeab2){return _0x171560(_0x3aeab2);},'KwNez':'hook:session-start','GBdjr':'success','DvQSD':function(_0x2d28a9,_0x4af8f9){return _0x2d28a9!==_0x4af8f9;},'LUdqL':_0x4d9104(0x9e),'ejOkl':function(_0x33a3d4,_0x260b79){return _0x33a3d4+_0x260b79;}};let _0x45caf6=_0x1e207d[_0x4d9104(0xa0)](_0x2cdda6,''),_0x1af103;if(!_0x2cdda6){let _0x51449e='';for await(const _0x5bd04a of process['stdin']){_0x51449e+=_0x5bd04a;}try{const _0x3adf4e=JSON[_0x4d9104(0xa1)](_0x51449e);_0x45caf6=_0x3adf4e[_0x4d9104(0xa8)]||'',_0x1af103=_0x3adf4e['source'];}catch{}const _0x23ba64=process['env'][_0x4d9104(0x9d)];if(_0x23ba64&&_0x45caf6)try{await appendFile(_0x23ba64,_0x4d9104(0xad)+_0x45caf6+'\x22\x0a');}catch{}}if(_0x45caf6){_0x1e207d['xGGMy'](shouldAutoEnableAfterClear,_0x1af103)&&_0x1e207d[_0x4d9104(0xaa)](autoEnableAfterClear,_0x45caf6);initBranchTracking(_0x45caf6);const _0x134658=_0x1e207d['mpGSj'](isSessionEnabled,_0x45caf6);try{const _0x4ef27f=_0x1e207d[_0x4d9104(0xaa)](createTelemetryCollector,_0x1e207d['KwNez']);await _0x4ef27f['trackCommandStart']({'sessionId':_0x45caf6,'hooksEnabled':_0x134658}),await _0x4ef27f[_0x4d9104(0xa9)](_0x1e207d['GBdjr']);}catch{}if(_0x134658){const _0x21dde5=getCurrentBranch(),_0x4dbbab=_0x21dde5&&_0x21dde5!=='main'&&_0x1e207d[_0x4d9104(0x9b)](_0x21dde5,_0x1e207d[_0x4d9104(0x9f)])?'\x20(Branch:\x20'+_0x21dde5+')':'',_0x57976a={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x1e207d['ejOkl'](RANGER_AUTO_ENABLED_PROMPT,_0x4dbbab)}};console[_0x4d9104(0x9c)](JSON[_0x4d9104(0xa4)](_0x57976a));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x383564,_0x36fe81){const _0x3f6de4=_0x9af1,_0x22a766=_0x383564();while(!![]){try{const _0xf1b38b=-parseInt(_0x3f6de4(0x1f5))/0x1*(-parseInt(_0x3f6de4(0x1f6))/0x2)+-parseInt(_0x3f6de4(0x1f0))/0x3+-parseInt(_0x3f6de4(0x204))/0x4+-parseInt(_0x3f6de4(0x201))/0x5*(-parseInt(_0x3f6de4(0x1fe))/0x6)+parseInt(_0x3f6de4(0x1f1))/0x7+parseInt(_0x3f6de4(0x200))/0x8*(parseInt(_0x3f6de4(0x1ff))/0x9)+parseInt(_0x3f6de4(0x1f2))/0xa*(-parseInt(_0x3f6de4(0x1f3))/0xb);if(_0xf1b38b===_0x36fe81)break;else _0x22a766['push'](_0x22a766['shift']());}catch(_0x1a8b3d){_0x22a766['push'](_0x22a766['shift']());}}}(_0x5e27,0x97ec3));function _0x9af1(_0x3f5682,_0x5191cc){_0x3f5682=_0x3f5682-0x1ed;const _0x5e27bb=_0x5e27();let _0x9af114=_0x5e27bb[_0x3f5682];return _0x9af114;}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';function _0x5e27(){const _0x224378=['stringify','731784qsVhhN','TDFKK','status','blocked','Stop','3536427cXqnjH','943054xebqmu','120LqxeIB','215105yftaOA','checklistItems','31526KuXWIA','68jDWMyi','qUlyb','success','some','sessionId','featureId','CJeWQ','https://dashboard.ranger.net/features/','3977070WGgLjj','5013aAbBRb','5016UUjndw','5SzOMSJ','cgpCH'];_0x5e27=function(){return _0x224378;};return _0x5e27();}import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x72d33b){const _0x49f659=_0x9af1,_0xe3259a={'cgpCH':function(_0x30d1a6,_0x572afe){return _0x30d1a6(_0x572afe);},'CJeWQ':function(_0x2b9de5,_0x16377c){return _0x2b9de5(_0x16377c);},'zpTDt':function(_0x3cfc0b){return _0x3cfc0b();},'qUlyb':function(_0x3aff86,_0x1c7571){return _0x3aff86&&_0x1c7571;},'KgbyK':_0x49f659(0x1ef),'TDFKK':function(_0x2a428a,_0x4940e0,_0x358f03,_0x31e847){return _0x2a428a(_0x4940e0,_0x358f03,_0x31e847);}},_0x2fd110=await _0xe3259a[_0x49f659(0x202)](getEnabledHookContext,_0x72d33b),_0x2b873=_0x2fd110?.['sessionId']??null;let _0x24730a=!![];if(!_0x2b873){await trackStop(_0x2b873,![],_0x24730a);return;}try{const _0x1e9109=_0xe3259a[_0x49f659(0x1fc)](getSessionEntry,_0x2b873);if(!_0x1e9109){await trackStop(_0x2b873,!![],_0x24730a);return;}const _0x117e77=await _0xe3259a['zpTDt'](getToken),_0x5e8631=_0x49f659(0x1fd)+_0x1e9109['featureId'];let _0x527382=null,_0x3e283c=![],_0x525f4a=![];if(_0x117e77)try{const _0x424d2f=await getFeature(_0x1e9109['featureId']);_0x527382=_0x424d2f['currentSessionId']??null;const _0x5a796e=_0x424d2f[_0x49f659(0x1f4)]['filter'](_0xd4c060=>_0xd4c060[_0x49f659(0x1fa)]===_0x527382);_0x3e283c=_0x5a796e['some'](_0x4da2ae=>_0x4da2ae['status']!=='verified'&&_0x4da2ae[_0x49f659(0x1ed)]!==_0x49f659(0x1ee)&&_0x4da2ae['status']!=='closed'&&_0x4da2ae['status']!=='incomplete'),_0x525f4a=_0x5a796e[_0x49f659(0x1f9)](_0x2c044f=>_0x2c044f['status']==='verification_in_progress');}catch{}if(_0xe3259a['qUlyb'](_0x117e77,_0x527382)&&_0x3e283c){if(!_0x525f4a&&shouldShowStopReminder(_0x2b873)){const _0x5adc67={'hookSpecificOutput':{'hookEventName':_0xe3259a['KgbyK'],'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x5e8631}};console['log'](JSON[_0x49f659(0x203)](_0x5adc67));}}if(_0xe3259a[_0x49f659(0x1f7)](_0x117e77,_0x527382)&&!_0x3e283c)try{await concludeSession(_0x1e9109[_0x49f659(0x1fb)],_0x527382);}catch{}await trackStop(_0x2b873,!![],_0x24730a);return;}catch{await _0xe3259a[_0x49f659(0x205)](trackStop,_0x2b873,!![],_0x24730a);return;}}async function trackStop(_0x2ec11f,_0x2c039d,_0x1fa626){const _0xe5c260=_0x9af1,_0x4376f9={'dvKTs':_0xe5c260(0x1f8)};try{const _0x18a002=createTelemetryCollector('hook:stop');await _0x18a002['trackCommandStart']({'sessionId':_0x2ec11f??undefined,'hooksEnabled':_0x2c039d,'stopAllowed':_0x1fa626}),await _0x18a002['trackCommandEnd'](_0x4376f9['dvKTs']);}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x55f9(_0x4f69aa,_0x52a3ac){_0x4f69aa=_0x4f69aa-0x1ad;var _0x12e9ab=_0x12e9();var _0x55f95c=_0x12e9ab[_0x4f69aa];return _0x55f95c;}(function(_0x3f5178,_0xabcf59){var _0x2ec79f=_0x55f9,_0x416c47=_0x3f5178();while(!![]){try{var _0x588a5f=parseInt(_0x2ec79f(0x1b3))/0x1*(-parseInt(_0x2ec79f(0x1ad))/0x2)+-parseInt(_0x2ec79f(0x1b1))/0x3*(parseInt(_0x2ec79f(0x1b5))/0x4)+-parseInt(_0x2ec79f(0x1b2))/0x5*(-parseInt(_0x2ec79f(0x1ae))/0x6)+parseInt(_0x2ec79f(0x1b7))/0x7+parseInt(_0x2ec79f(0x1b4))/0x8+-parseInt(_0x2ec79f(0x1b6))/0x9*(-parseInt(_0x2ec79f(0x1b8))/0xa)+parseInt(_0x2ec79f(0x1b0))/0xb*(parseInt(_0x2ec79f(0x1af))/0xc);if(_0x588a5f===_0xabcf59)break;else _0x416c47['push'](_0x416c47['shift']());}catch(_0x525f65){_0x416c47['push'](_0x416c47['shift']());}}}(_0x12e9,0x7d50e));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start}from'./start.js';export{useEnv}from'./useEnv.js';function _0x12e9(){var _0x1281f4=['1468555syJyja','27MzMcRT','2084495uSajLZ','3222SZVqxu','786216lTVSNw','378888GvzaKj','3127914MQDLGT','67823VhRUaj','20WbiZmU','334VcaJPR','12JfubHl','24jRHyTO'];_0x12e9=function(){return _0x1281f4;};return _0x12e9();}export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';
|
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4dca48,_0xacad5e){const _0x4c8138=_0x6180,_0xade248=_0x4dca48();while(!![]){try{const _0x38e375=parseInt(_0x4c8138(0x7b))/0x1*(-parseInt(_0x4c8138(0x74))/0x2)+parseInt(_0x4c8138(0x72))/0x3*(-parseInt(_0x4c8138(0x77))/0x4)+-parseInt(_0x4c8138(0x79))/0x5*(parseInt(_0x4c8138(0x73))/0x6)+parseInt(_0x4c8138(0x6c))/0x7*(-parseInt(_0x4c8138(0x6e))/0x8)+-parseInt(_0x4c8138(0x76))/0x9*(parseInt(_0x4c8138(0x70))/0xa)+-parseInt(_0x4c8138(0x78))/0xb+parseInt(_0x4c8138(0x6b))/0xc;if(_0x38e375===_0xacad5e)break;else _0xade248['push'](_0xade248['shift']());}catch(_0x264cd9){_0xade248['push'](_0xade248['shift']());}}}(_0x5a41,0xaa1c1));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x5a41(){const _0xebfbdb=['stdin','19uRHfFh','\x0a✅\x20Logged\x20in\x20to\x20','isTTY','55381848YEihOL','518vYbwlI','log','58592ydrERi','Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','610sIsLaf','Login\x20failed:\x20','9Klcbkq','1512gnElEW','78262dslTAT','message','89433YPYETX','875884qnHIRK','5690674XCJUZc','16915wqrIvq'];_0x5a41=function(){return _0xebfbdb;};return _0x5a41();}function _0x6180(_0x1b8cdc,_0x4aa92d){_0x1b8cdc=_0x1b8cdc-0x69;const _0x5a4184=_0x5a41();let _0x61809f=_0x5a4184[_0x1b8cdc];return _0x61809f;}import{getCurrentUser}from'./utils/userApi.js';export async function login(){const _0x42b9dc=_0x6180,_0x2ba933={'hOvXU':function(_0x102192,_0x13bc60){return _0x102192(_0x13bc60);},'uSqnZ':'\x0a✅\x20API\x20key\x20stored\x20successfully'},_0x7d38e7=process[_0x42b9dc(0x7a)][_0x42b9dc(0x6a)]&&process['stdout']['isTTY'];if(!_0x7d38e7)throw new Error(_0x42b9dc(0x6f));try{const _0x349eea=await runDeviceAuthFlow(),_0x3c9f22=await _0x2ba933['hOvXU'](getCurrentUser,_0x349eea);_0x3c9f22['success']?console['log'](_0x42b9dc(0x69)+_0x3c9f22['user']['organizationName']):console[_0x42b9dc(0x6d)](_0x2ba933['uSqnZ']);}catch(_0x5c0468){throw new Error(_0x42b9dc(0x71)+(_0x5c0468 instanceof Error?_0x5c0468[_0x42b9dc(0x75)]:_0x5c0468));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
(function(_0x5898d6,_0x21022c){const _0x4e1e33=_0x923c,_0x5792f8=_0x5898d6();while(!![]){try{const _0x594507=parseInt(_0x4e1e33(0x1f9))/0x1*(-parseInt(_0x4e1e33(0x1fb))/0x2)+-parseInt(_0x4e1e33(0x1f3))/0x3*(parseInt(_0x4e1e33(0x1f1))/0x4)+-parseInt(_0x4e1e33(0x1dd))/0x5*(-parseInt(_0x4e1e33(0x1cf))/0x6)+parseInt(_0x4e1e33(0x1de))/0x7*(-parseInt(_0x4e1e33(0x1f6))/0x8)+-parseInt(_0x4e1e33(0x1c6))/0x9+-parseInt(_0x4e1e33(0x1ea))/0xa*(parseInt(_0x4e1e33(0x1d5))/0xb)+parseInt(_0x4e1e33(0x1ec))/0xc;if(_0x594507===_0x21022c)break;else _0x5792f8['push'](_0x5792f8['shift']());}catch(_0x560845){_0x5792f8['push'](_0x5792f8['shift']());}}}(_0x11fb,0x9bcff));function _0x11fb(){const _0x1ea117=['✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','cHJUh','ranger','\x0a📦\x20Claude\x20Code\x20Plugin\x0a','1840665rWnsjf','2302433jlGfUW','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','Fqicr','ukhwX','fAsib','.claude','\x20level)...\x0a','sRtWx','Project\x20(shared\x20with\x20team\x20via\x20git)','yfrJv','IFqBC','Where\x20should\x20the\x20plugin\x20be\x20installed?','648190jXGIFL','BbtRu','36702372cWLezP','RazXy','success','already\x20enabled','list','1463816darOpf','SKILL.md','3OoGZpR','prompt','AuJGI','8MMhdnJ','pluginScope','install','24SETRyN','includes','94618gJnCzq','11353338AxejIU','AEFaj','trailhead','error','log','--scope','output','plugin','project','12stDOXd','enable','\x0aYou\x20can\x20install\x20manually\x20with:','zDziJ','ranger@trailhead','tQCeP','11YPAcJK','qSYzl','rGucr'];_0x11fb=function(){return _0x1ea117;};return _0x11fb();}import{join}from'path';import{existsSync}from'fs';function _0x923c(_0x2c9331,_0x12db51){_0x2c9331=_0x2c9331-0x1c6;const _0x11fb40=_0x11fb();let _0x923cdc=_0x11fb40[_0x2c9331];return _0x923cdc;}import _0x7de497 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x533e7b){const _0x4bc55d=_0x923c,_0x26a8fd={'gZcDx':_0x4bc55d(0x1d3),'UHVWw':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','RazXy':function(_0x4d2aaa,_0x4481e0){return _0x4d2aaa(_0x4481e0);},'elJEl':function(_0x380e32,_0x48d9ad,_0x23b875){return _0x380e32(_0x48d9ad,_0x23b875);},'yoINA':'.claude','IFqBC':_0x4bc55d(0x1ce),'rGucr':_0x4bc55d(0x1dc),'Fqicr':'user','tQCeP':_0x4bc55d(0x1e6),'sRtWx':'plugin','qSYzl':'marketplace','MKCNs':function(_0x5c57ea,_0x112259){return _0x5c57ea(_0x112259);},'cHJUh':_0x4bc55d(0x1cb),'lsrpa':'❌\x20Failed\x20to\x20install\x20plugin:','jgPFB':'\x0aYou\x20can\x20install\x20manually\x20with:','ukhwX':function(_0x37a521,_0xa2ac7f,_0x2a8590){return _0x37a521(_0xa2ac7f,_0x2a8590);},'XuJSB':_0x4bc55d(0x1ef),'fAsib':'✓\x20Claude\x20Code\x20plugin\x20enabled'},_0x38db1b=await isPluginInstalled(_0x26a8fd['gZcDx']);if(_0x38db1b)return console[_0x4bc55d(0x1ca)](_0x26a8fd['UHVWw']),![];const _0x7ba3cb=_0x26a8fd[_0x4bc55d(0x1ed)](existsSync,_0x26a8fd['elJEl'](join,getProjectRoot(),_0x26a8fd['yoINA']));let _0x29e10f;if(_0x533e7b)_0x29e10f=_0x533e7b;else{if(_0x7ba3cb)_0x29e10f=_0x26a8fd[_0x4bc55d(0x1e8)];else{console['log'](_0x26a8fd[_0x4bc55d(0x1d7)]);const _0x2f7f00=await _0x7de497['prompt']([{'type':_0x4bc55d(0x1f0),'name':'pluginScope','message':_0x4bc55d(0x1e9),'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0x26a8fd[_0x4bc55d(0x1e0)]},{'name':_0x26a8fd[_0x4bc55d(0x1d4)],'value':_0x26a8fd['IFqBC']}],'default':_0x26a8fd[_0x4bc55d(0x1e0)]}]);_0x29e10f=_0x2f7f00[_0x4bc55d(0x1f7)];}}console['log'](_0x4bc55d(0x1d9)+_0x29e10f+_0x4bc55d(0x1e4));const _0x107856=await _0x26a8fd[_0x4bc55d(0x1ed)](isMarketplaceAdded,_0x4bc55d(0x1c8));let _0x113db5=_0x107856;if(_0x107856)console['log']('✓\x20Marketplace\x20already\x20added');else{const _0x54fde6=await runClaudeCommand([_0x26a8fd[_0x4bc55d(0x1e5)],_0x26a8fd[_0x4bc55d(0x1d6)],'add','ranger-testing/trailhead']);!_0x54fde6['success']?(console['error']('❌\x20Failed\x20to\x20add\x20marketplace:',_0x54fde6[_0x4bc55d(0x1c9)]),console['log'](_0x4bc55d(0x1d1)),console['log'](_0x4bc55d(0x1df)),console[_0x4bc55d(0x1ca)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x29e10f)):_0x113db5=!![];}if(_0x113db5){const _0x532c75=await _0x26a8fd['MKCNs'](runClaudeCommand,[_0x4bc55d(0x1cd),_0x4bc55d(0x1f8),_0x26a8fd['gZcDx'],_0x26a8fd['cHJUh'],_0x29e10f]);if(!_0x532c75[_0x4bc55d(0x1ee)])console[_0x4bc55d(0x1c9)](_0x26a8fd['lsrpa'],_0x532c75[_0x4bc55d(0x1c9)]),console[_0x4bc55d(0x1ca)](_0x26a8fd['jgPFB']),console['log']('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x29e10f);else{console['log'](_0x4bc55d(0x1d8));const _0x557edf=[_0x4bc55d(0x1cd),_0x4bc55d(0x1d0),'ranger@trailhead'];_0x29e10f===_0x26a8fd[_0x4bc55d(0x1e8)]&&_0x557edf['push'](_0x26a8fd[_0x4bc55d(0x1da)],_0x4bc55d(0x1ce));const _0x47a2f4=await _0x26a8fd[_0x4bc55d(0x1e1)](runClaudeCommand,_0x557edf,{'captureOutput':!![]}),_0x4ce526=_0x47a2f4[_0x4bc55d(0x1cc)]?.[_0x4bc55d(0x1fa)](_0x26a8fd['XuJSB']);!_0x47a2f4['success']&&!_0x4ce526?console['error']('⚠\x20Failed\x20to\x20enable\x20plugin:',_0x47a2f4['error']):console[_0x4bc55d(0x1ca)](_0x26a8fd[_0x4bc55d(0x1e2)]);}}return!![];}export async function ensureClaudeSkills(_0x34047a){const _0x391560=_0x923c,_0x43c176={'ZaLOa':'user','AEFaj':_0x391560(0x1f2),'XJrot':function(_0x4a0a91,_0x5a0c9b){return _0x4a0a91(_0x5a0c9b);},'NwjJx':function(_0x57d18e,_0x32c32d,_0x92ffd7,_0x5e821d){return _0x57d18e(_0x32c32d,_0x92ffd7,_0x5e821d);},'AuJGI':'project','CUEMx':_0x391560(0x1db),'JurVx':function(_0x20be46,_0x496c97){return _0x20be46||_0x496c97;},'BbtRu':function(_0x51cceb,_0x567905){return _0x51cceb(_0x567905);},'hPYyk':function(_0x16bc56,_0x54c30f,_0x1d62a9){return _0x16bc56(_0x54c30f,_0x1d62a9);},'LIcJS':_0x391560(0x1e3),'zDziJ':function(_0x5f36c7,_0x4bf771){return _0x5f36c7(_0x4bf771);},'yfrJv':'confirm'},_0x14efb4=existsSync(join(getSkillsDir(_0x43c176['ZaLOa']),'ranger',_0x43c176[_0x391560(0x1c7)])),_0x4d12ca=_0x43c176['XJrot'](existsSync,_0x43c176['NwjJx'](join,getSkillsDir(_0x43c176[_0x391560(0x1f5)]),_0x43c176['CUEMx'],_0x43c176[_0x391560(0x1c7)]));if(_0x43c176['JurVx'](_0x14efb4,_0x4d12ca))return console[_0x391560(0x1ca)]('✓\x20Ranger\x20skills\x20already\x20installed'),![];const _0x3d7f95=_0x43c176[_0x391560(0x1eb)](existsSync,_0x43c176['hPYyk'](join,getProjectRoot(),_0x43c176['LIcJS']));let _0x3645a1=!![];if(_0x34047a)await _0x43c176[_0x391560(0x1d2)](skillup,{'autoInstall':_0x34047a,'suppressUsage':!![]});else{if(_0x3d7f95)await skillup({'autoInstall':_0x43c176['AuJGI'],'suppressUsage':!![]});else{const _0x53f46a=await _0x7de497[_0x391560(0x1f4)]([{'type':_0x43c176[_0x391560(0x1e7)],'name':'wantsSkillup','message':'Would\x20you\x20like\x20to\x20install\x20skills?','default':!![]}]);_0x3645a1=_0x53f46a['wantsSkillup'],_0x3645a1&&await skillup({'suppressUsage':!![]});}}return _0x3645a1;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x1620ba,_0x549326){const _0x3a8ec9=_0x2c5b,_0x583ba7=_0x1620ba();while(!![]){try{const _0x800965=-parseInt(_0x3a8ec9(0xf0))/0x1*(-parseInt(_0x3a8ec9(0x104))/0x2)+parseInt(_0x3a8ec9(0xff))/0x3*(parseInt(_0x3a8ec9(0xf7))/0x4)+-parseInt(_0x3a8ec9(0xef))/0x5+parseInt(_0x3a8ec9(0x107))/0x6*(-parseInt(_0x3a8ec9(0x109))/0x7)+-parseInt(_0x3a8ec9(0xf4))/0x8*(-parseInt(_0x3a8ec9(0xfc))/0x9)+parseInt(_0x3a8ec9(0x108))/0xa*(parseInt(_0x3a8ec9(0x105))/0xb)+parseInt(_0x3a8ec9(0x103))/0xc*(parseInt(_0x3a8ec9(0xe9))/0xd);if(_0x800965===_0x549326)break;else _0x583ba7['push'](_0x583ba7['shift']());}catch(_0x4ad9a2){_0x583ba7['push'](_0x583ba7['shift']());}}}(_0x5d30,0xf1ff9));function _0x5d30(){const _0x130d71=['9190742QwFdaa','prompt','399198uOeZpm','10JGSnhR','203ZOFggO','error','CptFY','User\x20(available\x20in\x20all\x20your\x20projects)','228644Bcqdsd','isArray','project','plugin','https://opencode.ai/config.json','Pydqd','6957235jVkfzG','5803URBYmv','keQuA','opencode.json','Failed\x20to\x20read\x20opencode.json','32IxqJoC','log','\x0a📦\x20OpenCode\x20Plugin\x0a','899848YUsQir','DNmPU','pluginScope','stringify','$schema','1618443VhTKYb','✓\x20OpenCode\x20plugin\x20already\x20configured','GOMNp','12mAgzAE','jAqXK','kcqAb','@ranger-testing/opencode-plugin','1200HoLFbk','34hYCjkL'];_0x5d30=function(){return _0x130d71;};return _0x5d30();}import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x320fbd from'inquirer';function _0x2c5b(_0x265bc4,_0x242488){_0x265bc4=_0x265bc4-0xe7;const _0x5d3088=_0x5d30();let _0x2c5b94=_0x5d3088[_0x265bc4];return _0x2c5b94;}import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x6da74a){const _0x1e86fd=_0x2c5b,_0x265292={'keQuA':function(_0xa4c79a,_0xb64b33){return _0xa4c79a(_0xb64b33);},'CptFY':_0x1e86fd(0xeb),'GOMNp':_0x1e86fd(0xf2),'kcqAb':_0x1e86fd(0xf6),'lQMVK':_0x1e86fd(0xe8),'tOBkt':'user','jAqXK':'Project\x20(shared\x20with\x20team\x20via\x20git)','Pydqd':'utf-8','xCjfm':'⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','HumpD':_0x1e86fd(0xfd),'DNmPU':function(_0x38afe3,_0x42e741){return _0x38afe3+_0x42e741;}},_0xfccff3=existsSync(join(_0x265292[_0x1e86fd(0xf1)](getOpencodeConfigDir,_0x265292[_0x1e86fd(0xe7)]),_0x265292[_0x1e86fd(0xfe)]));let _0x557031;if(_0x6da74a)_0x557031=_0x6da74a;else{if(_0xfccff3)_0x557031='project';else{console[_0x1e86fd(0xf5)](_0x265292[_0x1e86fd(0x101)]);const _0x553901=await _0x320fbd[_0x1e86fd(0x106)]([{'type':'list','name':_0x1e86fd(0xf9),'message':'Where\x20should\x20the\x20plugin\x20be\x20installed?','choices':[{'name':_0x265292['lQMVK'],'value':_0x265292['tOBkt']},{'name':_0x265292[_0x1e86fd(0x100)],'value':_0x265292['CptFY']}],'default':'user'}]);_0x557031=_0x553901['pluginScope'];}}const _0x18d89b=join(getOpencodeConfigDir(_0x557031),_0x265292[_0x1e86fd(0xfe)]),_0x469606=_0x1e86fd(0x102),_0x5928f8=_0x1e86fd(0xed);let _0x2f2787={};if(existsSync(_0x18d89b))try{const _0x3b1d55=await readFile(_0x18d89b,_0x265292[_0x1e86fd(0xee)]);_0x2f2787=JSON['parse'](_0x3b1d55);}catch(_0x5bc779){return console[_0x1e86fd(0x10a)](_0x265292['xCjfm']),{'configured':![],'scope':_0x557031,'error':_0x1e86fd(0xf3),'details':_0x5bc779};}const _0x5ed474=Array[_0x1e86fd(0xea)](_0x2f2787[_0x1e86fd(0xec)])?_0x2f2787[_0x1e86fd(0xec)]:[];if(_0x5ed474['includes'](_0x469606))return console['log'](_0x265292['HumpD']),{'configured':![],'scope':_0x557031};return _0x2f2787['$schema']=_0x2f2787[_0x1e86fd(0xfb)]||_0x5928f8,_0x2f2787['plugin']=[..._0x5ed474,_0x469606],await mkdir(_0x265292['keQuA'](getOpencodeConfigDir,_0x557031),{'recursive':!![]}),await writeFile(_0x18d89b,_0x265292[_0x1e86fd(0xf8)](JSON[_0x1e86fd(0xfa)](_0x2f2787,null,0x2),'\x0a')),console[_0x1e86fd(0xf5)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x557031};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x53d086,_0x480990){const _0x5a15ce=_0x1416,_0x2a2491=_0x53d086();while(!![]){try{const _0x279d97=-parseInt(_0x5a15ce(0x1d9))/0x1*(-parseInt(_0x5a15ce(0x1e1))/0x2)+-parseInt(_0x5a15ce(0x1d0))/0x3+parseInt(_0x5a15ce(0x1d4))/0x4+parseInt(_0x5a15ce(0x1e2))/0x5+-parseInt(_0x5a15ce(0x1f0))/0x6+parseInt(_0x5a15ce(0x1e4))/0x7+parseInt(_0x5a15ce(0x1bc))/0x8*(parseInt(_0x5a15ce(0x200))/0x9);if(_0x279d97===_0x480990)break;else _0x2a2491['push'](_0x2a2491['shift']());}catch(_0x1db7e7){_0x2a2491['push'](_0x2a2491['shift']());}}}(_0xc475,0x67a21));import{mkdir,readFile,readdir}from'fs/promises';function _0x1416(_0x225e76,_0x322f31){_0x225e76=_0x225e76-0x1bb;const _0xc47506=_0xc475();let _0x1416b6=_0xc47506[_0x225e76];return _0x1416b6;}import{join}from'path';import{existsSync}from'fs';function _0xc475(){const _0x13bb9a=['YTBqO','chromium','install','xsMNU','message','uyrle','✓\x20Marketplace\x20already\x20added','rswZh','add','isDirectory','MccjF','yOoRo','error','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','No\x20API\x20token\x20available\x20for\x20decryption','auth','2492205xRbKzD','map','Auto-detected\x20CI\x20profile:\x20','CsFio','2091892vknMYl','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','trackPhaseEnd','✓\x20Created\x20profile\x20settings:\x20baseUrl=','RlddQ','1xDxcPc','baseUrl','yHfeo','skipChromium','nySEC','trailhead','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','sessions','22886WqrFNt','910200XIOrqo','profile','4593603KefqgN','Dgoow','trackPhaseStart','NFCfX','Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...','profile_activate','iEdPU','vOuxK','\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a','name','\x0a🔧\x20Ranger\x20CI\x20Setup\x0a','udkfc','2778252PWVJmD','iIVdM','settings.json','plugin','length','--scope','LcnlX','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.','✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)','log','ktqvf','ranger-testing/trailhead','GTYXR','Failed\x20to\x20install\x20plugin:','path','27hzJEvp','join','921528wSDDyR','CI\x20profile\x20\x22','rxTIO','guEIB'];_0xc475=function(){return _0x13bb9a;};return _0xc475();}import{authenticate,ensureRangerDir,ensureChromium,writeRangerGitignore}from'./start.js';import{skillup}from'./skillup.js';import{getRangerDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{saveSettings}from'./utils/settings.js';import{decrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function findCiProfile(_0x37c76f){const _0x310388=_0x1416,_0xb500d9={'sNOlJ':function(_0x759853,_0x4b0cdf,_0x5a1c57){return _0x759853(_0x4b0cdf,_0x5a1c57);},'yHfeo':function(_0x5ad3c0,_0x10a24a){return _0x5ad3c0(_0x10a24a);},'rxTIO':function(_0x172350,_0x563110){return _0x172350+_0x563110;},'iIVdM':function(_0x5ac123,_0x369fba){return _0x5ac123===_0x369fba;},'nySEC':function(_0x284f02,_0x22426b){return _0x284f02+_0x22426b;}},_0x5827ad=getRangerDir(),_0x19d716=_0xb500d9['sNOlJ'](join,_0x5827ad,'ci');if(_0x37c76f){const _0x1d57e1=join(_0x19d716,_0x37c76f);return{'name':_0x37c76f,'path':_0x1d57e1};}if(!_0xb500d9[_0x310388(0x1db)](existsSync,_0x19d716))throw new Error(_0xb500d9[_0x310388(0x1be)]('No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.'));const _0x266490=await readdir(_0x19d716,{'withFileTypes':!![]}),_0x52bcde=_0x266490['filter'](_0x526b23=>_0x526b23[_0x310388(0x1c9)]())[_0x310388(0x1d1)](_0x24edfd=>_0x24edfd[_0x310388(0x1ed)]);if(_0xb500d9[_0x310388(0x1f1)](_0x52bcde[_0x310388(0x1f4)],0x0))throw new Error(_0xb500d9[_0x310388(0x1dd)]('No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a',_0x310388(0x1f8)));if(_0x52bcde[_0x310388(0x1f4)]===0x1){const _0xb6e93d=_0x52bcde[0x0];return console['log'](_0x310388(0x1d2)+_0xb6e93d),{'name':_0xb6e93d,'path':join(_0x19d716,_0xb6e93d)};}throw new Error('Multiple\x20CI\x20profiles\x20found:\x20'+_0x52bcde[_0x310388(0x1bb)](',\x20')+'.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.');}async function installPluginNonInteractive(){const _0x26d69d=_0x1416,_0x1d7a2e={'RlddQ':function(_0x32ee78,_0xed79ae){return _0x32ee78(_0xed79ae);},'FgBlw':_0x26d69d(0x1df),'guEIB':_0x26d69d(0x1e8),'CsFio':_0x26d69d(0x1de),'FvWsA':_0x26d69d(0x1c6),'armvO':_0x26d69d(0x1fc),'WYYZt':'Failed\x20to\x20add\x20marketplace:','olGrc':_0x26d69d(0x1f7),'JKuRJ':'plugin','ktqvf':_0x26d69d(0x1c2),'gPmpX':'project','Racce':_0x26d69d(0x1fe),'PNKOW':'✓\x20Claude\x20Code\x20plugin\x20installed'},_0x2b6f23=await _0x1d7a2e[_0x26d69d(0x1d8)](isPluginInstalled,'ranger@trailhead');if(_0x2b6f23)return console[_0x26d69d(0x1fa)](_0x1d7a2e['FgBlw']),![];console[_0x26d69d(0x1fa)](_0x1d7a2e[_0x26d69d(0x1bf)]);const _0x48216f=await isMarketplaceAdded(_0x1d7a2e[_0x26d69d(0x1d3)]);let _0x1a9d4e=_0x48216f;if(_0x48216f)console[_0x26d69d(0x1fa)](_0x1d7a2e['FvWsA']);else{const _0x352d0c=await _0x1d7a2e[_0x26d69d(0x1d8)](runClaudeCommand,['plugin','marketplace',_0x26d69d(0x1c8),_0x1d7a2e['armvO']]);!_0x352d0c['success']?(console['error'](_0x1d7a2e['WYYZt'],_0x352d0c[_0x26d69d(0x1cc)]),console[_0x26d69d(0x1fa)](_0x1d7a2e['olGrc'])):_0x1a9d4e=!![];}if(_0x1a9d4e){const _0x47b4e8=await _0x1d7a2e['RlddQ'](runClaudeCommand,[_0x1d7a2e['JKuRJ'],_0x1d7a2e[_0x26d69d(0x1fb)],'ranger@trailhead',_0x26d69d(0x1f5),_0x1d7a2e['gPmpX']]);!_0x47b4e8['success']?(console['error'](_0x1d7a2e['Racce'],_0x47b4e8[_0x26d69d(0x1cc)]),console['log'](_0x26d69d(0x1cd))):console[_0x26d69d(0x1fa)](_0x1d7a2e['PNKOW']);}return!![];}export async function setupCi(_0x2d480f,_0x820fd3,_0x87be42){const _0x5556a3=_0x1416,_0x2d81ca={'udkfc':_0x5556a3(0x1cf),'rswZh':function(_0x43573c,_0x275ae3){return _0x43573c(_0x275ae3);},'oDmzb':'dir_setup','uyrle':function(_0x433cc9){return _0x433cc9();},'xsMNU':function(_0x2c0750,_0x5c08bb){return _0x2c0750(_0x5c08bb);},'qtTeu':function(_0xd84f7f,_0x5657b0,_0x3b2a4a){return _0xd84f7f(_0x5657b0,_0x3b2a4a);},'iEdPU':_0x5556a3(0x1c1),'UDaIa':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','uGtzp':function(_0x4f53d2){return _0x4f53d2();},'GTYXR':_0x5556a3(0x1e9),'NFCfX':function(_0x281893,_0x562da8){return _0x281893(_0x562da8);},'pCOxi':_0x5556a3(0x1f2),'wOcJj':'auth.json','vOuxK':function(_0x32be31,_0x4bd1f2,_0x29e19e){return _0x32be31(_0x4bd1f2,_0x29e19e);},'MccjF':function(_0x289732,_0x57d235){return _0x289732(_0x57d235);},'qfgEu':_0x5556a3(0x1ce),'yOoRo':function(_0xafe307,_0x256045){return _0xafe307(_0x256045);},'PyEVs':'✓\x20Auth\x20state\x20found','YTBqO':function(_0x12df83){return _0x12df83();},'Dgoow':'skills','LcnlX':'project'};console[_0x5556a3(0x1fa)](_0x5556a3(0x1ee)),_0x87be42?.[_0x5556a3(0x1e6)](_0x2d81ca[_0x5556a3(0x1ef)]),await _0x2d81ca[_0x5556a3(0x1c7)](authenticate,_0x2d480f),_0x87be42?.['trackPhaseEnd'](_0x2d81ca[_0x5556a3(0x1ef)]),_0x87be42?.[_0x5556a3(0x1e6)](_0x2d81ca['oDmzb']);const {path:_0x4b34cb,installed:_0x271b5e}=await _0x2d81ca[_0x5556a3(0x1c5)](ensureRangerDir);await _0x2d81ca[_0x5556a3(0x1c3)](writeRangerGitignore,_0x4b34cb);const _0x47acf9=_0x2d81ca['qtTeu'](join,_0x4b34cb,_0x5556a3(0x1e0));!existsSync(_0x47acf9)&&await mkdir(_0x47acf9,{'recursive':!![]});_0x87be42?.['trackPhaseEnd']('dir_setup',{'installed':_0x271b5e}),_0x87be42?.[_0x5556a3(0x1e6)](_0x2d81ca[_0x5556a3(0x1ea)]);let _0x466047=![];_0x820fd3?.['skipChromium']?console[_0x5556a3(0x1fa)](_0x2d81ca['UDaIa']):_0x466047=await _0x2d81ca['uGtzp'](ensureChromium);_0x87be42?.['trackPhaseEnd']('chromium',{'installed':_0x466047,'skipped':!!_0x820fd3?.[_0x5556a3(0x1dc)]}),_0x87be42?.[_0x5556a3(0x1e6)](_0x2d81ca[_0x5556a3(0x1fd)]);const _0x4e072c=await _0x2d81ca['NFCfX'](findCiProfile,_0x820fd3?.[_0x5556a3(0x1e3)]);let _0x3929d3=![];_0x820fd3?.['baseUrl']&&(await mkdir(_0x4e072c['path'],{'recursive':!![]}),await saveSettings(_0x4e072c[_0x5556a3(0x1ed)],{'baseUrl':_0x820fd3[_0x5556a3(0x1da)],'headless':!![]}),console[_0x5556a3(0x1fa)](_0x5556a3(0x1d7)+_0x820fd3['baseUrl']),_0x3929d3=!![]);const _0x2b987d=join(_0x4e072c['path'],_0x2d81ca['pCOxi']);if(!_0x2d81ca[_0x5556a3(0x1e7)](existsSync,_0x2b987d)&&!_0x3929d3)throw new Error(_0x5556a3(0x1bd)+_0x4e072c['name']+'\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.');const _0x1cbed6=join(_0x4e072c[_0x5556a3(0x1ff)],_0x2d81ca['wOcJj']),_0x544334=_0x2d81ca[_0x5556a3(0x1eb)](join,_0x4e072c[_0x5556a3(0x1ff)],'auth.json.enc'),_0x56ee23=_0x2d81ca[_0x5556a3(0x1ca)](existsSync,_0x1cbed6),_0x35a1e1=_0x2d81ca['NFCfX'](existsSync,_0x544334);if(_0x35a1e1)try{const _0x3e6b9f=await _0x2d81ca['uyrle'](getToken);if(!_0x3e6b9f)throw new Error(_0x2d81ca['qfgEu']);const _0x12e355=await _0x2d81ca[_0x5556a3(0x1cb)](readFile,_0x544334);_0x2d81ca[_0x5556a3(0x1eb)](decrypt,_0x12e355,_0x3e6b9f),console['log'](_0x5556a3(0x1f9));}catch(_0xa4d338){const _0x5d3470=_0xa4d338 instanceof Error?_0xa4d338[_0x5556a3(0x1c4)]:String(_0xa4d338);throw new Error('Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22'+_0x4e072c[_0x5556a3(0x1ed)]+'\x22:\x20'+_0x5d3470);}else _0x56ee23?console['log'](_0x2d81ca['PyEVs']):console[_0x5556a3(0x1fa)](_0x5556a3(0x1d5));await writeActiveProfileName(_0x4e072c['name']),console[_0x5556a3(0x1fa)]('✓\x20Active\x20profile:\x20'+_0x4e072c['name']),_0x87be42?.[_0x5556a3(0x1d6)](_0x2d81ca['GTYXR'],{'profileName':_0x4e072c['name'],'hasAuth':_0x56ee23,'hasEncryptedAuth':_0x35a1e1,'createdSettings':_0x3929d3}),_0x87be42?.[_0x5556a3(0x1e6)]('plugin');const _0x37e9d3=await _0x2d81ca[_0x5556a3(0x1c0)](installPluginNonInteractive);_0x87be42?.[_0x5556a3(0x1d6)](_0x5556a3(0x1f3),{'installed':_0x37e9d3}),_0x87be42?.['trackPhaseStart'](_0x2d81ca[_0x5556a3(0x1e5)]),await skillup({'autoInstall':_0x2d81ca[_0x5556a3(0x1f6)]}),_0x87be42?.['trackPhaseEnd'](_0x2d81ca[_0x5556a3(0x1e5)]),console[_0x5556a3(0x1fa)](_0x5556a3(0x1ec));}
|
|
1
|
+
function _0x3c23(){const _0x51b16c=['tnxlU','trackPhaseStart','settings.json','16KcsfXv','project','bKOdS','✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)','jQuUB','6838700luPRrO','--scope','dir_setup','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','Auto-detected\x20CI\x20profile:\x20','skipChromium','trackPhaseEnd','toNac','message','✓\x20Claude\x20Code\x20plugin\x20installed','16YPzYpy','.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.','✓\x20Created\x20profile\x20settings:\x20baseUrl=','1587432QanbXj','auth','mxsiX','sXbaS','FoJIv','success','OQHft','length','Failed\x20to\x20install\x20plugin:','baseUrl','\x22:\x20','No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','auth.json.enc','\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.','UNTXo','444436GyWiUl','install','add','plugin','6Tofele','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','qCHCH','sessions','error','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','NIEOp','279330VNGgRF','yNphD','2446440HSVfQl','83178YzrMAL','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','ZvARQ','ranger@trailhead','eNpaA','name','600955aTmWqb','marketplace','jRIjD','hlRdW','Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22','skills','log'];_0x3c23=function(){return _0x51b16c;};return _0x3c23();}(function(_0x52b68f,_0x112b72){const _0x319ac1=_0x512c,_0x374c24=_0x52b68f();while(!![]){try{const _0x2cf3a2=parseInt(_0x319ac1(0x149))/0x1+parseInt(_0x319ac1(0x13e))/0x2*(-parseInt(_0x319ac1(0x142))/0x3)+-parseInt(_0x319ac1(0x16b))/0x4*(-parseInt(_0x319ac1(0x152))/0x5)+parseInt(_0x319ac1(0x14b))/0x6+parseInt(_0x319ac1(0x16e))/0x7+-parseInt(_0x319ac1(0x15c))/0x8*(-parseInt(_0x319ac1(0x14c))/0x9)+-parseInt(_0x319ac1(0x161))/0xa;if(_0x2cf3a2===_0x112b72)break;else _0x374c24['push'](_0x374c24['shift']());}catch(_0x3fd640){_0x374c24['push'](_0x374c24['shift']());}}}(_0x3c23,0x45874));import{mkdir,readFile,readdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{authenticate,ensureRangerDir,ensureChromium,writeRangerGitignore}from'./start.js';import{skillup}from'./skillup.js';import{getRangerDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{saveSettings}from'./utils/settings.js';import{decrypt}from'./utils/crypto.js';function _0x512c(_0x16e99e,_0xb67c7a){_0x16e99e=_0x16e99e-0x13a;const _0x3c23e5=_0x3c23();let _0x512c2d=_0x3c23e5[_0x16e99e];return _0x512c2d;}import{getToken}from'./utils/keychain.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function findCiProfile(_0x3f2ff3){const _0x37a42a=_0x512c,_0x273db7={'OQHft':function(_0x579b73){return _0x579b73();},'NIEOp':'No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','yNphD':'Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.','jRIjD':function(_0x4a322d,_0x22df1a,_0x35e2b9){return _0x4a322d(_0x22df1a,_0x35e2b9);},'MwEwj':function(_0x2dae56,_0x3ac4dd){return _0x2dae56===_0x3ac4dd;},'qCHCH':function(_0xc61b6a,_0x1102bf){return _0xc61b6a+_0x1102bf;}},_0x55f4eb=_0x273db7[_0x37a42a(0x174)](getRangerDir),_0x2eee1d=join(_0x55f4eb,'ci');if(_0x3f2ff3){const _0x164d54=join(_0x2eee1d,_0x3f2ff3);return{'name':_0x3f2ff3,'path':_0x164d54};}if(!existsSync(_0x2eee1d))throw new Error(_0x273db7[_0x37a42a(0x148)]+_0x273db7[_0x37a42a(0x14a)]);const _0x4f7248=await _0x273db7[_0x37a42a(0x154)](readdir,_0x2eee1d,{'withFileTypes':!![]}),_0x273822=_0x4f7248['filter'](_0x4b7c33=>_0x4b7c33['isDirectory']())['map'](_0x5b7ed3=>_0x5b7ed3[_0x37a42a(0x151)]);if(_0x273db7['MwEwj'](_0x273822['length'],0x0))throw new Error(_0x273db7[_0x37a42a(0x144)](_0x37a42a(0x13a),_0x273db7['yNphD']));if(_0x273822[_0x37a42a(0x175)]===0x1){const _0x3f9d0d=_0x273822[0x0];return console['log'](_0x37a42a(0x165)+_0x3f9d0d),{'name':_0x3f9d0d,'path':join(_0x2eee1d,_0x3f9d0d)};}throw new Error('Multiple\x20CI\x20profiles\x20found:\x20'+_0x273822['join'](',\x20')+_0x37a42a(0x16c));}async function installPluginNonInteractive(){const _0x1d4620=_0x512c,_0x4bef1f={'qrsQc':'✓\x20Marketplace\x20already\x20added','sXbaS':function(_0x3e055f,_0x120d14){return _0x3e055f(_0x120d14);},'toNac':_0x1d4620(0x153),'FoJIv':'ranger-testing/trailhead','jQuUB':'Failed\x20to\x20add\x20marketplace:','UNTXo':_0x1d4620(0x164),'rjUzE':function(_0x4c03d9,_0x2887bf){return _0x4c03d9(_0x2887bf);},'MArcG':_0x1d4620(0x162),'tnxlU':_0x1d4620(0x15d),'cdRSs':_0x1d4620(0x16a)},_0x4f50e5=await isPluginInstalled(_0x1d4620(0x14f));if(_0x4f50e5)return console['log']('✓\x20Claude\x20Code\x20plugin\x20already\x20installed'),![];console[_0x1d4620(0x158)]('Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...');const _0x54a793=await isMarketplaceAdded('trailhead');let _0x1ed6a5=_0x54a793;if(_0x54a793)console[_0x1d4620(0x158)](_0x4bef1f['qrsQc']);else{const _0x37d8ff=await _0x4bef1f[_0x1d4620(0x171)](runClaudeCommand,['plugin',_0x4bef1f[_0x1d4620(0x168)],_0x1d4620(0x140),_0x4bef1f[_0x1d4620(0x172)]]);!_0x37d8ff[_0x1d4620(0x173)]?(console[_0x1d4620(0x146)](_0x4bef1f[_0x1d4620(0x160)],_0x37d8ff['error']),console['log'](_0x4bef1f[_0x1d4620(0x13d)])):_0x1ed6a5=!![];}if(_0x1ed6a5){const _0x175ea5=await _0x4bef1f['rjUzE'](runClaudeCommand,['plugin',_0x1d4620(0x13f),_0x1d4620(0x14f),_0x4bef1f['MArcG'],_0x4bef1f[_0x1d4620(0x159)]]);!_0x175ea5['success']?(console['error'](_0x1d4620(0x176),_0x175ea5['error']),console['log'](_0x1d4620(0x147))):console[_0x1d4620(0x158)](_0x4bef1f['cdRSs']);}return!![];}export async function setupCi(_0x4375ad,_0x2bc89f,_0x122a43){const _0x1d8b62=_0x512c,_0x24ffe8={'IMySj':'\x0a🔧\x20Ranger\x20CI\x20Setup\x0a','ssQoe':_0x1d8b62(0x16f),'bKOdS':function(_0x397af4,_0x16cadf){return _0x397af4(_0x16cadf);},'ZPQMl':_0x1d8b62(0x163),'OOAsm':_0x1d8b62(0x145),'PMTDo':function(_0x3c7d0b,_0x52bbb5){return _0x3c7d0b(_0x52bbb5);},'MfPVG':'chromium','rclNg':function(_0x59f7e1){return _0x59f7e1();},'mxsiX':'profile_activate','ZvARQ':function(_0x585a48,_0x551fe8,_0x26851c){return _0x585a48(_0x551fe8,_0x26851c);},'NCfSP':function(_0x4be512,_0x1a3d28,_0x24e280){return _0x4be512(_0x1a3d28,_0x24e280);},'aKBXw':_0x1d8b62(0x15b),'SfkyE':function(_0x2f4ab1,_0x704fb8,_0x44aff1){return _0x2f4ab1(_0x704fb8,_0x44aff1);},'hlRdW':function(_0x13542f,_0x492312){return _0x13542f(_0x492312);},'EcrRf':_0x1d8b62(0x15f),'mtMMy':function(_0x5576fc,_0x1cfb5f){return _0x5576fc instanceof _0x1cfb5f;},'uAgCS':'✓\x20Auth\x20state\x20found','PKHIB':_0x1d8b62(0x143),'EBSSV':function(_0x4752db,_0x23affe){return _0x4752db(_0x23affe);},'bZMuN':_0x1d8b62(0x141),'eNpaA':'skills','OXuVu':'\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a'};console['log'](_0x24ffe8['IMySj']),_0x122a43?.['trackPhaseStart'](_0x24ffe8['ssQoe']),await _0x24ffe8[_0x1d8b62(0x15e)](authenticate,_0x4375ad),_0x122a43?.[_0x1d8b62(0x167)]('auth'),_0x122a43?.['trackPhaseStart'](_0x24ffe8['ZPQMl']);const {path:_0xc18f86,installed:_0x27c727}=await ensureRangerDir();await writeRangerGitignore(_0xc18f86);const _0x8f1fd4=join(_0xc18f86,_0x24ffe8['OOAsm']);!_0x24ffe8['PMTDo'](existsSync,_0x8f1fd4)&&await mkdir(_0x8f1fd4,{'recursive':!![]});_0x122a43?.['trackPhaseEnd']('dir_setup',{'installed':_0x27c727}),_0x122a43?.['trackPhaseStart'](_0x24ffe8['MfPVG']);let _0x1751a1=![];_0x2bc89f?.[_0x1d8b62(0x166)]?console[_0x1d8b62(0x158)](_0x1d8b62(0x14d)):_0x1751a1=await _0x24ffe8['rclNg'](ensureChromium);_0x122a43?.['trackPhaseEnd']('chromium',{'installed':_0x1751a1,'skipped':!!_0x2bc89f?.['skipChromium']}),_0x122a43?.[_0x1d8b62(0x15a)](_0x24ffe8[_0x1d8b62(0x170)]);const _0x41b233=await findCiProfile(_0x2bc89f?.['profile']);let _0x213efd=![];_0x2bc89f?.[_0x1d8b62(0x177)]&&(await _0x24ffe8[_0x1d8b62(0x14e)](mkdir,_0x41b233['path'],{'recursive':!![]}),await saveSettings(_0x41b233[_0x1d8b62(0x151)],{'baseUrl':_0x2bc89f[_0x1d8b62(0x177)],'headless':!![]}),console[_0x1d8b62(0x158)](_0x1d8b62(0x16d)+_0x2bc89f['baseUrl']),_0x213efd=!![]);const _0x4ec8ac=_0x24ffe8['NCfSP'](join,_0x41b233['path'],_0x24ffe8['aKBXw']);if(!existsSync(_0x4ec8ac)&&!_0x213efd)throw new Error('CI\x20profile\x20\x22'+_0x41b233[_0x1d8b62(0x151)]+_0x1d8b62(0x13c));const _0x467c06=join(_0x41b233['path'],'auth.json'),_0x273a00=_0x24ffe8['SfkyE'](join,_0x41b233['path'],_0x1d8b62(0x13b)),_0x2b207a=existsSync(_0x467c06),_0x285c4e=_0x24ffe8[_0x1d8b62(0x155)](existsSync,_0x273a00);if(_0x285c4e)try{const _0x487122=await _0x24ffe8['rclNg'](getToken);if(!_0x487122)throw new Error('No\x20API\x20token\x20available\x20for\x20decryption');const _0x46e40f=await readFile(_0x273a00);decrypt(_0x46e40f,_0x487122),console['log'](_0x24ffe8['EcrRf']);}catch(_0x33c09c){const _0x578912=_0x24ffe8['mtMMy'](_0x33c09c,Error)?_0x33c09c[_0x1d8b62(0x169)]:String(_0x33c09c);throw new Error(_0x1d8b62(0x156)+_0x41b233[_0x1d8b62(0x151)]+_0x1d8b62(0x178)+_0x578912);}else _0x2b207a?console[_0x1d8b62(0x158)](_0x24ffe8['uAgCS']):console[_0x1d8b62(0x158)](_0x24ffe8['PKHIB']);await _0x24ffe8['EBSSV'](writeActiveProfileName,_0x41b233[_0x1d8b62(0x151)]),console[_0x1d8b62(0x158)]('✓\x20Active\x20profile:\x20'+_0x41b233[_0x1d8b62(0x151)]),_0x122a43?.['trackPhaseEnd']('profile_activate',{'profileName':_0x41b233['name'],'hasAuth':_0x2b207a,'hasEncryptedAuth':_0x285c4e,'createdSettings':_0x213efd}),_0x122a43?.['trackPhaseStart'](_0x24ffe8['bZMuN']);const _0x47f565=await installPluginNonInteractive();_0x122a43?.['trackPhaseEnd'](_0x24ffe8['bZMuN'],{'installed':_0x47f565}),_0x122a43?.['trackPhaseStart'](_0x24ffe8[_0x1d8b62(0x150)]),await _0x24ffe8['PMTDo'](skillup,{'autoInstall':'project'}),_0x122a43?.[_0x1d8b62(0x167)](_0x1d8b62(0x157)),console[_0x1d8b62(0x158)](_0x24ffe8['OXuVu']);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x19d7fa,_0x3b4a98){const _0x4af02e=_0x24cd,_0x26126e=_0x19d7fa();while(!![]){try{const _0x269c07=-parseInt(_0x4af02e(0xa7))/0x1*(-parseInt(_0x4af02e(0xba))/0x2)+-parseInt(_0x4af02e(0xae))/0x3+-parseInt(_0x4af02e(0xbc))/0x4+-parseInt(_0x4af02e(0xbb))/0x5+-parseInt(_0x4af02e(0xcd))/0x6+-parseInt(_0x4af02e(0xbd))/0x7+-parseInt(_0x4af02e(0xb0))/0x8*(-parseInt(_0x4af02e(0xd3))/0x9);if(_0x269c07===_0x3b4a98)break;else _0x26126e['push'](_0x26126e['shift']());}catch(_0x57703d){_0x26126e['push'](_0x26126e['shift']());}}}(_0x5791,0x8f1dc));import{basename}from'path';import _0x3f0f8c from'inquirer';import{getToken}from'./utils/keychain.js';function _0x24cd(_0x196261,_0x4ea95a){_0x196261=_0x196261-0xa7;const _0x579146=_0x5791();let _0x24cd95=_0x579146[_0x196261];return _0x24cd95;}import{installSkill}from'./utils/skills.js';function _0x5791(){const _0x5c798a=['warn','RedIg','5399358YSCWfR','CaTDZ','/skills/','suppressUsage','stdin','xrHvK','14557041cHStWV','All\x20projects\x20(','931417iIpAwS','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','xuvsT','\x0a✅\x20Installed\x20','\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','\x20skill','138852tuQnox','message','8ZORSwR','EPIcV','isTTY','VPLNd','project','user-level','EGYZi','KbMOo','/.claude/skills/','user','2whxdLF','3572020LsDEbM','447068NlABKz','1332198BHblNm','claude','To\x20use:','log','\x20\x203.\x20Run:\x20ranger\x20skillup','FAiCt','platform','Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20(','autoInstall','stdout','\x20--opencode','opencode','WLCHA','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli'];_0x5791=function(){return _0x5c798a;};return _0x5791();}import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x25416b={}){const _0x425100=_0x24cd,_0x510d76={'RedIg':_0x425100(0xbe),'FAiCt':function(_0x3c7146){return _0x3c7146();},'WPNSc':'To\x20get\x20started:','naHJF':function(_0x302fc5,_0x293c11){return _0x302fc5===_0x293c11;},'WLCHA':_0x425100(0xc8),'VPLNd':_0x425100(0xc7),'EPIcV':function(_0x177837,_0x4567b8){return _0x177837===_0x4567b8;},'GArwH':function(_0x2cda12,_0x32cc83){return _0x2cda12===_0x32cc83;},'KbMOo':'list','xrHvK':'Where\x20should\x20skills\x20be\x20installed?','zyNFK':function(_0x365b3b){return _0x365b3b();},'EGYZi':'\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','ORhUQ':function(_0x58c5ce,_0x1de5d2){return _0x58c5ce instanceof _0x1de5d2;},'RWNpM':'user','xuvsT':'project-level','GTsFT':function(_0x5114ae,_0x155015){return _0x5114ae>_0x155015;},'PnkHd':_0x425100(0xbf),'CaTDZ':_0x425100(0xab),'aFTZy':'\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a'};console['log'](_0x425100(0xa8));const _0x27588d=_0x25416b[_0x425100(0xc3)]??_0x510d76[_0x425100(0xcc)],_0x30a5a4=await _0x510d76[_0x425100(0xc2)](getToken);if(!_0x30a5a4){console[_0x425100(0xc0)](_0x425100(0xac)),console['log'](_0x510d76['WPNSc']),console['log'](_0x425100(0xca)),console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x510d76['naHJF'](_0x27588d,_0x510d76[_0x425100(0xc9)])?_0x510d76[_0x425100(0xb3)]:'')+'\x20<your-api-token>'),console['log'](_0x425100(0xc1)+(_0x510d76[_0x425100(0xb1)](_0x27588d,'opencode')?_0x510d76[_0x425100(0xb3)]:'')+'\x0a');return;}console['log']('✓\x20Found\x20API\x20token');const _0x1c3d16=getProjectRoot(),_0x2ebabe=basename(_0x1c3d16),_0x10fa42=_0x510d76[_0x425100(0xb1)](_0x27588d,_0x425100(0xc8))?getOpencodeConfigDir(_0x425100(0xb9))+_0x425100(0xcf):_0x510d76['FAiCt'](getClaudeConfigDir)+'/skills/',_0x3d0f4d=_0x510d76['GArwH'](_0x27588d,_0x425100(0xc8))?_0x1c3d16+'/.opencode/skills/':_0x1c3d16+_0x425100(0xb8),_0x20c11f=process[_0x425100(0xd1)]['isTTY']&&process[_0x425100(0xc6)][_0x425100(0xb2)];let _0xa5f791;if(_0x25416b[_0x425100(0xc5)])_0xa5f791=_0x25416b[_0x425100(0xc5)];else{if(_0x20c11f){const _0x43614c=await _0x3f0f8c['prompt']([{'type':_0x510d76[_0x425100(0xb7)],'name':'installLevel','message':_0x510d76[_0x425100(0xd2)],'choices':[{'name':_0x425100(0xd4)+_0x10fa42+')','value':'user'},{'name':'This\x20project\x20only\x20('+_0x3d0f4d+')','value':_0x425100(0xb4)}]}]);_0xa5f791=_0x43614c['installLevel'];}else _0xa5f791=_0x425100(0xb4),console['log'](_0x425100(0xc4)+_0x3d0f4d+')');}let _0x1dc1de=0x0;const _0x81a172=_0x510d76['zyNFK'](getCurrentVersion);console[_0x425100(0xc0)]('\x0a📦\x20Installing\x20skills...\x0a');try{const _0x4ea4de=await installSkill('ranger',{'cliVersion':_0x81a172,'level':_0xa5f791,'platform':_0x27588d});_0x4ea4de&&_0x1dc1de++;}catch(_0x70bacb){console[_0x425100(0xcb)](_0x510d76[_0x425100(0xb6)],_0x510d76['ORhUQ'](_0x70bacb,Error)?_0x70bacb[_0x425100(0xaf)]:_0x70bacb);}if(_0x1dc1de>0x0){const _0x22feed=_0xa5f791===_0x510d76['RWNpM']?_0x425100(0xb5):_0x510d76[_0x425100(0xa9)];console['log'](_0x425100(0xaa)+_0x1dc1de+'\x20'+_0x22feed+_0x425100(0xad)+(_0x510d76['GTsFT'](_0x1dc1de,0x1)?'s':'')+'\x20successfully!\x0a'),!_0x25416b[_0x425100(0xd0)]&&(console['log'](_0x510d76['PnkHd']),_0x27588d===_0x510d76['WLCHA']?console['log'](_0x510d76[_0x425100(0xce)]):console[_0x425100(0xc0)]('\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!'));}else console['log'](_0x510d76['aFTZy']);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4597ab=_0x40ee;(function(_0x46eb65,_0x45c22b){const _0x8a2a93=_0x40ee,_0x551c70=_0x46eb65();while(!![]){try{const _0x769d71=-parseInt(_0x8a2a93(0x8f))/0x1+parseInt(_0x8a2a93(0x7c))/0x2*(-parseInt(_0x8a2a93(0x81))/0x3)+parseInt(_0x8a2a93(0xa7))/0x4+parseInt(_0x8a2a93(0xdb))/0x5+-parseInt(_0x8a2a93(0xa4))/0x6+parseInt(_0x8a2a93(0x67))/0x7+parseInt(_0x8a2a93(0xd9))/0x8;if(_0x769d71===_0x45c22b)break;else _0x551c70['push'](_0x551c70['shift']());}catch(_0x53b8e0){_0x551c70['push'](_0x551c70['shift']());}}}(_0x3336,0x772ac));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x26e0b5 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x40ee(_0x17a3ad,_0x2c391d){_0x17a3ad=_0x17a3ad-0x67;const _0x33365e=_0x3336();let _0x40ee48=_0x33365e[_0x17a3ad];return _0x40ee48;}import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url),PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x4597ab(0x70),bold=_0x20533e=>_0x4597ab(0xbc)+_0x20533e+_0x4597ab(0xa9);function getPlaywrightVersion(){const _0x45cf3d=_0x4597ab,_0x257c29={'weRJU':'playwright/package.json'};try{const _0x26ae9c=require[_0x45cf3d(0xbb)](_0x257c29[_0x45cf3d(0x6d)]),_0x5eccc1=require(_0x26ae9c);return _0x5eccc1[_0x45cf3d(0x8d)];}catch{return null;}}function installChromiumBinary(_0x4beaa3){const _0x4f74ac=_0x4597ab,_0x5b5a38={'Lrxqg':_0x4f74ac(0x84),'FphWU':'win32'};return new Promise((_0x5e953d,_0x2963ec)=>{const _0x22e50e=_0x4f74ac,_0x9bcc66={'NXdne':function(_0x154b0b,_0x402617){return _0x154b0b(_0x402617);}},_0x494e47=['playwright@'+_0x4beaa3,_0x22e50e(0x91),_0x5b5a38[_0x22e50e(0x7a)]],_0x2250c9=spawn(_0x22e50e(0x9d),_0x494e47,{'stdio':_0x22e50e(0xd6),'shell':process['platform']===_0x5b5a38['FphWU']});_0x2250c9['on'](_0x22e50e(0xca),_0xeb30d4=>{_0xeb30d4===0x0?_0x5e953d():_0x9bcc66['NXdne'](_0x2963ec,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0xeb30d4));}),_0x2250c9['on'](_0x22e50e(0xa5),_0x53ffbf=>{_0x2963ec(_0x53ffbf);});});}export async function authenticate(_0x58d0c5){const _0x801c65=_0x4597ab,_0x3e3322={'akpTv':function(_0xe567a4,_0x233379){return _0xe567a4(_0x233379);},'hncZx':function(_0x3d7938){return _0x3d7938();},'kqeCh':function(_0x5ca630,_0x5079a1){return _0x5ca630 instanceof _0x5079a1;},'MmRTY':_0x801c65(0xc3),'Itxkp':_0x801c65(0xb4),'XbzWM':_0x801c65(0xb2)};if(!_0x58d0c5){const _0x13dc4a=await getToken();if(_0x13dc4a){const _0x7d317f=await _0x3e3322[_0x801c65(0x6f)](getCurrentUser,_0x13dc4a);if(_0x7d317f[_0x801c65(0x85)])return console[_0x801c65(0xce)]('✓\x20Already\x20authenticated\x20to\x20'+_0x7d317f[_0x801c65(0xa1)]['organizationName']),{'token':_0x13dc4a,'method':_0x801c65(0x77)};}try{_0x58d0c5=await _0x3e3322[_0x801c65(0xc6)](runDeviceAuthFlow);}catch(_0x1b9a13){throw new Error(_0x801c65(0xc4)+(_0x3e3322['kqeCh'](_0x1b9a13,Error)?_0x1b9a13['message']:_0x1b9a13));}const _0x17306a=await getCurrentUser(_0x58d0c5);if(!_0x17306a['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x17306a['error']);return console[_0x801c65(0xce)]('✓\x20Authenticated\x20to\x20'+_0x17306a[_0x801c65(0xa1)]['organizationName']),{'token':_0x58d0c5,'method':_0x801c65(0x75)};}console['log'](_0x3e3322[_0x801c65(0x6e)]);const _0x264e8a=await getCurrentUser(_0x58d0c5);if(!_0x264e8a['success']){if(_0x264e8a[_0x801c65(0xa3)])throw new Error('Authentication\x20failed:\x20'+_0x264e8a[_0x801c65(0xa5)]+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x264e8a['error']+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x801c65(0xce)]('✓\x20Authenticated\x20to\x20'+_0x264e8a['user']['organizationName']),await storeToken(_0x58d0c5),console['log'](process['env']['GITHUB_ENV']?'✓\x20Exported\x20credentials\x20for\x20CI':_0x3e3322[_0x801c65(0xa6)]),{'token':_0x58d0c5,'method':_0x3e3322['XbzWM']};}export async function ensureRangerDir(){const _0x2e1a74=_0x4597ab,_0x506254={'CoNrH':function(_0x17dd85){return _0x17dd85();},'tJCdJ':function(_0x5470ea){return _0x5470ea();},'ehnHP':function(_0x4accac,_0x1fbaf9){return _0x4accac(_0x1fbaf9);},'MGIlx':function(_0x11f709,_0x410d72,_0x4c7a59){return _0x11f709(_0x410d72,_0x4c7a59);},'ecLbm':'✓\x20.ranger/\x20directory\x20already\x20exists'},_0x4183ab=_0x506254['CoNrH'](findGitRoot),_0x2163a0=_0x4183ab?join(_0x4183ab,_0x2e1a74(0xac)):_0x506254[_0x2e1a74(0xc0)](getRangerDir);return!_0x506254['ehnHP'](existsSync,_0x2163a0)?(await _0x506254['MGIlx'](mkdir,_0x2163a0,{'recursive':!![]}),console['log'](_0x2e1a74(0x71)),{'path':_0x2163a0,'installed':!![]}):(console[_0x2e1a74(0xce)](_0x506254[_0x2e1a74(0xda)]),{'path':_0x2163a0,'installed':![]});}export async function ensureChromium(){const _0x2186b5=_0x4597ab,_0x58e2ab={'KOGer':function(_0x3f13c6,_0x537b51){return _0x3f13c6(_0x537b51);},'IGXRS':function(_0x415c29,_0x5ad853){return _0x415c29??_0x5ad853;},'LGeod':'install','KdgEY':_0x2186b5(0x8a),'PsOmT':'\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','KuJCB':_0x2186b5(0xd1),'aMgyi':'You\x20can\x20install\x20it\x20manually\x20by\x20running:','ismrH':_0x2186b5(0x7e)};let _0xa675d7=![];try{const _0x377b49=chromium[_0x2186b5(0x8c)]();_0xa675d7=_0x58e2ab[_0x2186b5(0xbe)](existsSync,_0x377b49);}catch{_0xa675d7=![];}if(_0xa675d7)return console[_0x2186b5(0xce)](_0x2186b5(0x6c)),![];const _0x59f73b=getPlaywrightVersion(),_0x21a3d8=_0x58e2ab['IGXRS'](_0x59f73b,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x5db219=!_0x59f73b,_0x2fe442=process['stdin']['isTTY']&&process['stdout']['isTTY'];let _0x4121d2=!![];if(_0x2fe442){const {install:_0x1a8588}=await _0x26e0b5['prompt']([{'type':_0x2186b5(0xc9),'name':_0x58e2ab['LGeod'],'message':_0x5db219?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x21a3d8+'\x20now?':_0x2186b5(0x98)+_0x21a3d8+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x4121d2=_0x1a8588;}else console[_0x2186b5(0xce)](_0x2186b5(0x83)+_0x21a3d8+(_0x5db219?_0x58e2ab[_0x2186b5(0xb8)]:'')+_0x2186b5(0x94));if(_0x4121d2){console[_0x2186b5(0xce)]('\x0aInstalling\x20Chromium\x20browser...\x0a');try{await _0x58e2ab[_0x2186b5(0xbe)](installChromiumBinary,_0x21a3d8),console['log'](_0x58e2ab['PsOmT']);}catch(_0x151fb0){console['error'](_0x58e2ab[_0x2186b5(0x9a)],_0x151fb0 instanceof Error?_0x151fb0['message']:_0x151fb0),console[_0x2186b5(0xce)](_0x58e2ab['aMgyi']),console['log']('\x20\x20npx\x20playwright@'+_0x21a3d8+_0x2186b5(0x72));}}else console['log'](_0x2186b5(0xd0)),console['log'](_0x58e2ab['ismrH']),console[_0x2186b5(0xce)](_0x2186b5(0xbf)+_0x21a3d8+_0x2186b5(0x72));return!![];}export async function writeRangerGitignore(_0x75bac4){const _0x41ec8b=_0x4597ab,_0x18e3c2={'SQSet':function(_0x609d0,_0x29fc17,_0x1269e1){return _0x609d0(_0x29fc17,_0x1269e1);},'wpcZM':'✓\x20Created\x20.ranger/.gitignore'},_0x5172cd=join(_0x75bac4,'.gitignore'),_0x415835=_0x41ec8b(0xd7);await _0x18e3c2[_0x41ec8b(0xd3)](writeFile,_0x5172cd,_0x415835),console['log'](_0x18e3c2[_0x41ec8b(0x7d)]);}function printProfileSetupLaterInstructions(){const _0x194a30=_0x4597ab,_0x20c899={'MdjgV':_0x194a30(0xb6),'gwDDB':function(_0x573fd4,_0x22160e){return _0x573fd4(_0x22160e);}};console['log'](_0x20c899['MdjgV']),console['log']('\x20\x20'+_0x20c899['gwDDB'](bold,'ranger\x20profile\x20add\x20local')),console[_0x194a30(0xce)]('Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a');}function _0x3336(){const _0x10831d=['install','xjIXy','NAurs','...','allowInsecureLocalhost','ranger','srSxS','The\x20required\x20version\x20(','⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.','KuJCB','ZcirP','tlOrk','npx','LSBLS','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','skipChromium','user','\x20and\x20prompt\x20the\x20coding','status','5650386CviPGN','error','Itxkp','2725184oWHesj','Xgmeb','\x1b[0m','fFFJX','MhXcH','.ranger','QNcuU','OKDAg','message','oNbbY','tcSHq','provided_token','profile','✓\x20Stored\x20credentials\x20locally','qkFYa','\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:','kJeGp','KdgEY','isTTY','ranger\x20profile\x20add\x20local','resolve','\x1b[1m','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','KOGer','\x20\x20npx\x20playwright@','tJCdJ','skills','git_check','Validating\x20API\x20token...','Authentication\x20failed:\x20','stdin','hncZx','MXncx','use\x20until\x20the\x20session\x20expires.\x0a','confirm','close','auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to','opencode','scope','log','hqhjT','\x0a⚠\x20Skipping\x20Chromium\x20installation.','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','oVxtJ','SQSet','ready','\x0aIn\x20Claude\x20Code,\x20run\x20','inherit','\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a','force','10124568pbOYHu','ecLbm','2892080dophTS','method','3895801irhkxS','mCLup','JjaPk','trackPhaseStart','auth','✓\x20Playwright\x20Chromium\x20browser\x20found','weRJU','MmRTY','akpTv','1.58.2','✓\x20Created\x20.ranger/\x20directory','\x20install\x20chromium','/ranger:enable','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','device_auth','trackPhaseEnd','existing_token','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','local','Lrxqg','skipped','2GsBXzx','wpcZM','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','qECmU','plugin','2462133nMnfnD','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','chromium','success','trackPhaseError','Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:','stdout','No\x20git\x20repository\x20found','\x20(fallback\x20version)','tDala','executablePath','version','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','831276GQgmyj','ZRdzC'];_0x3336=function(){return _0x10831d;};return _0x3336();}async function ensureLocalEnv(_0x2751e5,_0x5a0995){const _0x5368d6=_0x4597ab,_0x4c0ce8={'WWYkE':function(_0xf99fb9){return _0xf99fb9();},'mCLup':_0x5368d6(0x99),'NAurs':_0x5368d6(0x79),'TjoCR':'✓\x20Local\x20profile\x20already\x20exists','mkwab':'to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind','efTLl':_0x5368d6(0xcb),'QNcuU':_0x5368d6(0xc8),'hqhjT':'You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','adLfT':_0x5368d6(0xc9),'MfvMz':'Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','wUTIj':function(_0x209c63){return _0x209c63();},'MXncx':function(_0x43e770,_0x10e390,_0x9dd6d2,_0x2b8ac7){return _0x43e770(_0x10e390,_0x9dd6d2,_0x2b8ac7);},'YJSpn':'\x0a❌\x20Profile\x20setup\x20failed:'};if(!_0x4c0ce8['WWYkE'](findGitRoot))return console[_0x5368d6(0xce)](_0x4c0ce8[_0x5368d6(0x68)]),{'ready':![],'skipped':!![]};if(findExistingEnv(_0x5368d6(0x79),{'locations':[_0x4c0ce8[_0x5368d6(0x93)]]}))return console[_0x5368d6(0xce)](_0x4c0ce8['TjoCR']),{'ready':!![],'skipped':![]};const _0x36d880=process[_0x5368d6(0xc5)][_0x5368d6(0xb9)]&&process[_0x5368d6(0x88)]['isTTY'];if(_0x36d880&&!_0x2751e5?.['url']){console['log']('\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how'),console['log'](_0x4c0ce8['mkwab']),console[_0x5368d6(0xce)](_0x4c0ce8['efTLl']),console[_0x5368d6(0xce)](_0x4c0ce8[_0x5368d6(0xad)]),console[_0x5368d6(0xce)](_0x4c0ce8[_0x5368d6(0xcf)]);const {wantsProfile:_0x3e2321}=await _0x26e0b5['prompt']([{'type':_0x4c0ce8['adLfT'],'name':'wantsProfile','message':_0x4c0ce8['MfvMz'],'default':!![]}]);if(!_0x3e2321)return _0x4c0ce8['wUTIj'](printProfileSetupLaterInstructions),{'ready':![],'skipped':!![]};}try{return await _0x4c0ce8[_0x5368d6(0xc7)](addEnv,_0x4c0ce8['NAurs'],{'url':_0x2751e5?.['url'],'force':_0x2751e5?.[_0x5368d6(0xd8)],'allowInsecureLocalhost':_0x2751e5?.['allowInsecureLocalhost']},_0x5a0995),{'ready':!![],'skipped':![]};}catch(_0x479278){return console[_0x5368d6(0xa5)](_0x4c0ce8['YJSpn'],_0x479278 instanceof Error?_0x479278['message']:_0x479278),printProfileSetupLaterInstructions(),{'ready':![],'skipped':![]};}}export async function start(_0x573426,_0x28355a,_0x8637c2){const _0x1f6328=_0x4597ab,_0x2aa5cd={'LSBLS':'\x0a🚀\x20Ranger\x20Setup\x0a','Xgmeb':'Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','ZcirP':_0x1f6328(0xa1),'QjNuB':'git_check','oNbbY':function(_0x3d3715){return _0x3d3715();},'qkFYa':'No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.','srSxS':function(_0x581de5,_0x54a556){return _0x581de5(_0x54a556);},'JjaPk':function(_0x2ffff9){return _0x2ffff9();},'devIV':function(_0x56737c){return _0x56737c();},'oVxtJ':_0x1f6328(0x6b),'tDala':_0x1f6328(0x84),'ZRdzC':_0x1f6328(0x9f),'fFFJX':_0x1f6328(0x80),'kJeGp':function(_0x8121,_0x123491){return _0x8121(_0x123491);},'TnCSv':function(_0xd117e4,_0xbd4784){return _0xd117e4&&_0xbd4784;},'OKDAg':_0x1f6328(0xc1),'JwTjs':_0x1f6328(0x96),'xjIXy':_0x1f6328(0xcc),'qECmU':function(_0x4ed44c,_0x1958bc){return _0x4ed44c instanceof _0x1958bc;},'tcSHq':_0x1f6328(0x87),'sFfiv':_0x1f6328(0xb3),'xujzd':'and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','tlOrk':function(_0x33cba2,_0x3d6127){return _0x33cba2+_0x3d6127;},'LIGEr':function(_0x5ccc03,_0x443038){return _0x5ccc03+_0x443038;},'MhXcH':function(_0x983d1d,_0x43ad6e){return _0x983d1d+_0x43ad6e;}};console['log'](_0x2aa5cd[_0x1f6328(0x9e)]);const _0x39077b=process['stdin']['isTTY']&&process['stdout'][_0x1f6328(0xb9)];!_0x39077b&&!_0x28355a?.[_0x1f6328(0xcd)]&&(console['log'](_0x2aa5cd[_0x1f6328(0xa8)]),_0x28355a={..._0x28355a,'scope':_0x2aa5cd[_0x1f6328(0x9b)]});_0x8637c2?.[_0x1f6328(0x6a)](_0x2aa5cd['QjNuB']);if(!_0x2aa5cd[_0x1f6328(0xb0)](findGitRoot)){await _0x8637c2?.[_0x1f6328(0x86)](_0x1f6328(0xc2),new Error(_0x1f6328(0x89)));throw new Error(_0x2aa5cd[_0x1f6328(0xb5)]);}_0x8637c2?.['trackPhaseEnd'](_0x1f6328(0xc2));const _0x1d0589=!_0x2aa5cd['srSxS'](existsSync,_0x2aa5cd[_0x1f6328(0x69)](getRangerDir)),{path:_0x1aa31c}=await _0x2aa5cd['devIV'](ensureRangerDir);_0x8637c2?.['trackPhaseStart'](_0x1f6328(0x6b));const _0x50e7a6=await authenticate(_0x573426);_0x8637c2?.['trackPhaseEnd'](_0x2aa5cd[_0x1f6328(0xd2)],{'isFirstRun':_0x1d0589,'method':_0x50e7a6[_0x1f6328(0xdc)]}),_0x8637c2?.[_0x1f6328(0x6a)](_0x2aa5cd[_0x1f6328(0x8b)]);_0x28355a?.[_0x1f6328(0xa0)]?console['log']('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await ensureChromium();_0x8637c2?.['trackPhaseEnd']('chromium',{'isFirstRun':_0x1d0589,'skipped':!!_0x28355a?.[_0x1f6328(0xa0)]}),await writeRangerGitignore(_0x1aa31c),console['log'](_0x2aa5cd[_0x1f6328(0x90)]);const _0x175a93=_0x28355a?.['scope'],_0x223b67=_0x28355a?.[_0x1f6328(0xcc)]??![];let _0x272984=null;_0x223b67?(_0x8637c2?.[_0x1f6328(0x6a)](_0x2aa5cd[_0x1f6328(0xaa)]),_0x272984=await _0x2aa5cd['kJeGp'](ensureOpencodePluginConfig,_0x175a93),_0x8637c2?.[_0x1f6328(0x76)](_0x2aa5cd['fFFJX'],{'isFirstRun':_0x1d0589,'opencode':!![]})):(_0x8637c2?.['trackPhaseStart'](_0x2aa5cd[_0x1f6328(0xaa)]),await _0x2aa5cd[_0x1f6328(0x97)](ensureClaudePlugin,_0x175a93),_0x8637c2?.['trackPhaseEnd'](_0x2aa5cd[_0x1f6328(0xaa)],{'isFirstRun':_0x1d0589}));if(_0x2aa5cd['TnCSv'](_0x223b67,_0x272984)){_0x8637c2?.[_0x1f6328(0x6a)](_0x2aa5cd['OKDAg']);try{await installSkill(_0x2aa5cd['JwTjs'],{'level':_0x272984[_0x1f6328(0xcd)],'cliVersion':_0x2aa5cd['oNbbY'](getCurrentVersion),'platform':_0x2aa5cd[_0x1f6328(0x92)]}),_0x8637c2?.['trackPhaseEnd'](_0x1f6328(0xc1),{'isFirstRun':_0x1d0589,'opencode':!![]});}catch(_0x3d3fc0){console['warn'](_0x1f6328(0x8e),_0x2aa5cd[_0x1f6328(0x7f)](_0x3d3fc0,Error)?_0x3d3fc0[_0x1f6328(0xaf)]:_0x3d3fc0),_0x8637c2?.['trackPhaseEnd'](_0x1f6328(0xc1),{'isFirstRun':_0x1d0589,'opencode':!![],'failed':!![]});}}else _0x8637c2?.[_0x1f6328(0x6a)](_0x2aa5cd[_0x1f6328(0xae)]),await _0x2aa5cd[_0x1f6328(0xb7)](ensureClaudeSkills,_0x175a93),_0x8637c2?.['trackPhaseEnd']('skills',{'isFirstRun':_0x1d0589});if(!_0x39077b&&!_0x28355a?.['url'])console['log'](_0x2aa5cd[_0x1f6328(0xb1)]),console['log']('\x20\x20'+_0x2aa5cd[_0x1f6328(0x97)](bold,_0x1f6328(0xba))+'\x0a');else{_0x8637c2?.['trackPhaseStart'](_0x2aa5cd['sFfiv']);const _0x502dc3=await ensureLocalEnv({'url':_0x28355a?.['url'],'force':_0x28355a?.['force'],'allowInsecureLocalhost':_0x28355a?.[_0x1f6328(0x95)]},_0x8637c2);_0x8637c2?.[_0x1f6328(0x76)](_0x2aa5cd['sFfiv'],{'isFirstRun':_0x1d0589,'profileReady':_0x502dc3['ready'],'userSkipped':_0x502dc3[_0x1f6328(0x7b)]}),_0x502dc3[_0x1f6328(0xd4)]&&console[_0x1f6328(0xce)]('\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.');}if(_0x223b67)console['log'](_0x1f6328(0x82)),console[_0x1f6328(0xce)](_0x2aa5cd['xujzd']),console['log']('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console['log'](_0x1f6328(0xbd));else{const _0x44a9ec=bold(_0x1f6328(0x73));console[_0x1f6328(0xce)](_0x2aa5cd[_0x1f6328(0x9c)](_0x2aa5cd['LIGEr'](_0x2aa5cd[_0x1f6328(0xab)](_0x1f6328(0xd5)+_0x44a9ec+_0x1f6328(0xa2),'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with'),_0x1f6328(0x78)),_0x1f6328(0x74)));}}
|
|
1
|
+
const _0x43e1a5=_0x3bb9;(function(_0x571637,_0x41c3a3){const _0x17a405=_0x3bb9,_0x576f71=_0x571637();while(!![]){try{const _0x4868a3=-parseInt(_0x17a405(0x112))/0x1*(-parseInt(_0x17a405(0xbe))/0x2)+-parseInt(_0x17a405(0xcf))/0x3+parseInt(_0x17a405(0xe7))/0x4+parseInt(_0x17a405(0xd0))/0x5+-parseInt(_0x17a405(0xf4))/0x6+-parseInt(_0x17a405(0x116))/0x7+parseInt(_0x17a405(0xd7))/0x8*(-parseInt(_0x17a405(0x12c))/0x9);if(_0x4868a3===_0x41c3a3)break;else _0x576f71['push'](_0x576f71['shift']());}catch(_0x3467c4){_0x576f71['push'](_0x576f71['shift']());}}}(_0x4623,0xc04ae));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x43b0b3 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url),PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2',bold=_0x1b7cc9=>_0x43e1a5(0xb9)+_0x1b7cc9+'\x1b[0m';function getPlaywrightVersion(){const _0x53522e=_0x43e1a5,_0x3c0ca3={'RUWsq':_0x53522e(0xe0)};try{const _0x2dba21=require[_0x53522e(0x11b)](_0x3c0ca3[_0x53522e(0xee)]),_0x4133c2=require(_0x2dba21);return _0x4133c2[_0x53522e(0xd8)];}catch{return null;}}function installChromiumBinary(_0x1e2729){const _0x188b7b=_0x43e1a5,_0xc64c63={'Fyljq':function(_0x80616e,_0x1dd577){return _0x80616e===_0x1dd577;},'dRFqE':function(_0x5aabf0,_0x14ff29){return _0x5aabf0(_0x14ff29);},'czfxd':'install','qMrxX':function(_0x566763,_0x231bbb,_0x2241d4,_0x500513){return _0x566763(_0x231bbb,_0x2241d4,_0x500513);},'soaVN':'inherit','BmElR':_0x188b7b(0x103),'rZVWE':_0x188b7b(0x131),'nAHwC':'error'};return new Promise((_0x2f6cd4,_0x4a6abc)=>{const _0x3ed48b=_0x188b7b,_0x4287db=['playwright@'+_0x1e2729,_0xc64c63['czfxd'],_0x3ed48b(0x118)],_0x15e7d0=_0xc64c63[_0x3ed48b(0x12f)](spawn,_0x3ed48b(0x120),_0x4287db,{'stdio':_0xc64c63['soaVN'],'shell':process['platform']===_0xc64c63[_0x3ed48b(0xfb)]});_0x15e7d0['on'](_0xc64c63['rZVWE'],_0x4dd8e6=>{const _0x44e5e4=_0x3ed48b;_0xc64c63[_0x44e5e4(0xff)](_0x4dd8e6,0x0)?_0x2f6cd4():_0x4a6abc(new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x4dd8e6));}),_0x15e7d0['on'](_0xc64c63['nAHwC'],_0x22a8c8=>{_0xc64c63['dRFqE'](_0x4a6abc,_0x22a8c8);});});}export async function authenticate(_0x1cfabf){const _0x487118=_0x43e1a5,_0x863534={'xWXLi':function(_0x72b6e){return _0x72b6e();},'NTjhP':function(_0x3743d6,_0x5f50ea){return _0x3743d6(_0x5f50ea);},'HaZOb':_0x487118(0xfd),'eHugv':function(_0x45cacf,_0xb6f438){return _0x45cacf instanceof _0xb6f438;},'fMewH':_0x487118(0x123),'jwoBv':_0x487118(0xbb)};if(!_0x1cfabf){const _0x530a3f=await _0x863534[_0x487118(0xd5)](getToken);if(_0x530a3f){const _0x389f11=await _0x863534[_0x487118(0xf2)](getCurrentUser,_0x530a3f);if(_0x389f11['success'])return console[_0x487118(0xd9)](_0x487118(0xea)+_0x389f11[_0x487118(0xf8)][_0x487118(0x114)]),{'token':_0x530a3f,'method':_0x863534['HaZOb']};}try{_0x1cfabf=await _0x863534[_0x487118(0xd5)](runDeviceAuthFlow);}catch(_0x1296f2){throw new Error(_0x487118(0x11a)+(_0x863534[_0x487118(0xf6)](_0x1296f2,Error)?_0x1296f2[_0x487118(0xfc)]:_0x1296f2));}const _0x50e4f2=await getCurrentUser(_0x1cfabf);if(!_0x50e4f2['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x50e4f2['error']);return console[_0x487118(0xd9)]('✓\x20Authenticated\x20to\x20'+_0x50e4f2[_0x487118(0xf8)]['organizationName']),{'token':_0x1cfabf,'method':_0x863534['fMewH']};}console[_0x487118(0xd9)](_0x863534['jwoBv']);const _0x13d6af=await getCurrentUser(_0x1cfabf);if(!_0x13d6af[_0x487118(0x111)]){if(_0x13d6af[_0x487118(0x100)])throw new Error('Authentication\x20failed:\x20'+_0x13d6af['error']+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error(_0x487118(0x110)+_0x13d6af[_0x487118(0x121)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x487118(0xd9)]('✓\x20Authenticated\x20to\x20'+_0x13d6af[_0x487118(0xf8)][_0x487118(0x114)]),await storeToken(_0x1cfabf),console['log'](process['env'][_0x487118(0xda)]?_0x487118(0xd1):'✓\x20Stored\x20credentials\x20locally'),{'token':_0x1cfabf,'method':'provided_token'};}export async function ensureRangerDir(){const _0x120789=_0x43e1a5,_0xa4e9a7={'nJmYu':'.ranger','JMgXo':function(_0x28fee3){return _0x28fee3();},'mwiOd':function(_0x549782,_0x53df5f){return _0x549782(_0x53df5f);},'IjsHE':function(_0x32c1fb,_0x406fbb,_0x4c1826){return _0x32c1fb(_0x406fbb,_0x4c1826);},'anyrB':'✓\x20Created\x20.ranger/\x20directory'},_0x35c24f=findGitRoot(),_0x234c8d=_0x35c24f?join(_0x35c24f,_0xa4e9a7[_0x120789(0xb6)]):_0xa4e9a7[_0x120789(0x10f)](getRangerDir);return!_0xa4e9a7['mwiOd'](existsSync,_0x234c8d)?(await _0xa4e9a7['IjsHE'](mkdir,_0x234c8d,{'recursive':!![]}),console['log'](_0xa4e9a7[_0x120789(0xe4)]),{'path':_0x234c8d,'installed':!![]}):(console['log']('✓\x20.ranger/\x20directory\x20already\x20exists'),{'path':_0x234c8d,'installed':![]});}export async function ensureChromium(){const _0x515731=_0x43e1a5,_0x413c41={'EYZTa':function(_0x4b1ccd,_0x47e8b9){return _0x4b1ccd(_0x47e8b9);},'uBOoP':function(_0x239888){return _0x239888();},'mjKAB':function(_0xdb3b6,_0x15c7f3){return _0xdb3b6??_0x15c7f3;},'pUQZU':'confirm','EJnfT':'\x20(fallback\x20version)','UjeLL':_0x515731(0xeb),'DZBok':_0x515731(0x125),'bPExU':'\x0a❌\x20Failed\x20to\x20install\x20Chromium:','ITlhq':_0x515731(0xed)};let _0x5d73b5=![];try{const _0x3dfedc=chromium['executablePath']();_0x5d73b5=_0x413c41['EYZTa'](existsSync,_0x3dfedc);}catch{_0x5d73b5=![];}if(_0x5d73b5)return console[_0x515731(0xd9)](_0x515731(0x119)),![];const _0x4aa909=_0x413c41[_0x515731(0xe5)](getPlaywrightVersion),_0x44431f=_0x413c41['mjKAB'](_0x4aa909,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x473e4d=!_0x4aa909,_0x539b7b=process[_0x515731(0xc1)][_0x515731(0x104)]&&process[_0x515731(0xd4)]['isTTY'];let _0x5c7d02=!![];if(_0x539b7b){const {install:_0xc14d4b}=await _0x43b0b3['prompt']([{'type':_0x413c41['pUQZU'],'name':_0x515731(0xc2),'message':_0x473e4d?_0x515731(0xe9)+_0x44431f+_0x515731(0xf7):_0x515731(0xdb)+_0x44431f+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x5c7d02=_0xc14d4b;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x44431f+(_0x473e4d?_0x413c41[_0x515731(0x11c)]:'')+'...');if(_0x5c7d02){console['log'](_0x413c41['UjeLL']);try{await _0x413c41['EYZTa'](installChromiumBinary,_0x44431f),console[_0x515731(0xd9)](_0x413c41['DZBok']);}catch(_0x2851b0){console['error'](_0x413c41[_0x515731(0xf3)],_0x2851b0 instanceof Error?_0x2851b0[_0x515731(0xfc)]:_0x2851b0),console[_0x515731(0xd9)]('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console[_0x515731(0xd9)](_0x515731(0xe2)+_0x44431f+_0x515731(0xbc));}}else console[_0x515731(0xd9)](_0x413c41[_0x515731(0xc9)]),console['log']('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console['log'](_0x515731(0xe2)+_0x44431f+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x44feaa){const _0xcc6f3d=_0x43e1a5,_0x14d995={'HgByK':function(_0x9de644,_0x571eaf,_0xa1396){return _0x9de644(_0x571eaf,_0xa1396);},'tqHcN':'✓\x20Created\x20.ranger/.gitignore'},_0xf90088=_0x14d995[_0xcc6f3d(0x12b)](join,_0x44feaa,_0xcc6f3d(0xc8)),_0x31b531='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a';await writeFile(_0xf90088,_0x31b531),console[_0xcc6f3d(0xd9)](_0x14d995['tqHcN']);}function _0x4623(){const _0x542372=['allowInsecureLocalhost','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:','playwright/package.json','VLEjd','\x20\x20npx\x20playwright@','scope','anyrB','uBOoP','znWnc','3478536ssKNAp','KXMsh','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','✓\x20Already\x20authenticated\x20to\x20','\x0aInstalling\x20Chromium\x20browser...\x0a','mrDDZ','\x0a⚠\x20Skipping\x20Chromium\x20installation.','RUWsq','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','plugin','ZbyiI','NTjhP','bPExU','2115396btrTcv','RFjON','eHugv','\x20now?','user','DZmLG','nYGXH','BmElR','message','existing_token','skills','Fyljq','status','skipChromium','confirm','win32','isTTY','\x0a🚀\x20Ranger\x20Setup\x0a','git_check','PJOUO','trackPhaseEnd','rsVuC','auth','CXmNZ','use\x20until\x20the\x20session\x20expires.\x0a','/ranger:enable','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','JMgXo','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','success','353yOjTAw','ready','organizationName','KsvOd','9215535LkuzPj','FkIEA','chromium','✓\x20Playwright\x20Chromium\x20browser\x20found','Authentication\x20failed:\x20','resolve','EJnfT','ranger','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','local','npx','error','kMzYc','device_auth','WlHuY','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','nAEoZ','skipped','You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','ASaEC','VNNWT','HgByK','27tcycTj','\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how','url','qMrxX','pPQOu','close','nJmYu','force','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','\x1b[1m','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','Validating\x20API\x20token...','\x20install\x20chromium','SQvSI','8266KzhNxt','ranger\x20profile\x20add\x20local','Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a','stdin','install','trackPhaseError','OYsEu','MxDzl','No\x20git\x20repository\x20found','Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','.gitignore','ITlhq','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','dlpQv','opencode','Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','vhznV','2132718KCJgVm','5026225cYvcCT','✓\x20Exported\x20credentials\x20for\x20CI','\x20and\x20prompt\x20the\x20coding','\x0aIn\x20Claude\x20Code,\x20run\x20','stdout','xWXLi','trackPhaseStart','443256MtREUg','version','log','GITHUB_ENV','The\x20required\x20version\x20(','OoHLj'];_0x4623=function(){return _0x542372;};return _0x4623();}function printProfileSetupLaterInstructions(){const _0x19195e=_0x43e1a5,_0x36d6a2={'MxDzl':function(_0x1f8088,_0x1205c2){return _0x1f8088(_0x1205c2);},'WlHuY':_0x19195e(0xc0)};console['log']('\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:'),console[_0x19195e(0xd9)]('\x20\x20'+_0x36d6a2[_0x19195e(0xc5)](bold,_0x19195e(0xbf))),console[_0x19195e(0xd9)](_0x36d6a2[_0x19195e(0x124)]);}function _0x3bb9(_0x2f5d9d,_0x4148f7){_0x2f5d9d=_0x2f5d9d-0xb6;const _0x4623de=_0x4623();let _0x3bb9ef=_0x4623de[_0x2f5d9d];return _0x3bb9ef;}async function ensureLocalEnv(_0x39e1bd,_0x2d5bee){const _0x1f1555=_0x43e1a5,_0x268e27={'VLEjd':function(_0x2b9e98){return _0x2b9e98();},'wPLTw':'⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.','lRGGE':'local','mrDDZ':'to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind','TASqF':_0x1f1555(0x10c),'IQcaQ':_0x1f1555(0x128),'ZbyiI':_0x1f1555(0x102),'nYGXH':_0x1f1555(0xcd),'MOizg':function(_0x3fb17e,_0x1fdd6d,_0x1002d7,_0x5737e2){return _0x3fb17e(_0x1fdd6d,_0x1002d7,_0x5737e2);},'zSBky':'\x0a❌\x20Profile\x20setup\x20failed:','pPQOu':function(_0x281cd6,_0x11b99f){return _0x281cd6 instanceof _0x11b99f;}};if(!_0x268e27[_0x1f1555(0xe1)](findGitRoot))return console['log'](_0x268e27['wPLTw']),{'ready':![],'skipped':!![]};if(findExistingEnv(_0x268e27['lRGGE'],{'locations':[_0x1f1555(0x11f)]}))return console['log']('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};const _0x654a1b=process[_0x1f1555(0xc1)]['isTTY']&&process[_0x1f1555(0xd4)][_0x1f1555(0x104)];if(_0x654a1b&&!_0x39e1bd?.['url']){console['log'](_0x1f1555(0x12d)),console['log'](_0x268e27[_0x1f1555(0xec)]),console[_0x1f1555(0xd9)]('auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to'),console['log'](_0x268e27['TASqF']),console['log'](_0x268e27['IQcaQ']);const {wantsProfile:_0xd5fed9}=await _0x43b0b3['prompt']([{'type':_0x268e27[_0x1f1555(0xf1)],'name':'wantsProfile','message':_0x268e27[_0x1f1555(0xfa)],'default':!![]}]);if(!_0xd5fed9)return printProfileSetupLaterInstructions(),{'ready':![],'skipped':!![]};}try{return await _0x268e27['MOizg'](addEnv,_0x268e27['lRGGE'],{'url':_0x39e1bd?.['url'],'force':_0x39e1bd?.[_0x1f1555(0xb7)],'allowInsecureLocalhost':_0x39e1bd?.[_0x1f1555(0xdd)]},_0x2d5bee),{'ready':!![],'skipped':![]};}catch(_0x2f40b8){return console['error'](_0x268e27['zSBky'],_0x268e27[_0x1f1555(0x130)](_0x2f40b8,Error)?_0x2f40b8['message']:_0x2f40b8),printProfileSetupLaterInstructions(),{'ready':![],'skipped':![]};}}export async function start(_0x396405,_0x5ca3f2,_0x33dee2){const _0xdfd664=_0x43e1a5,_0x18c922={'znWnc':_0xdfd664(0xc7),'LxYwF':_0xdfd664(0xf8),'fLdwv':'git_check','KXMsh':function(_0x10f066){return _0x10f066();},'nAEoZ':_0xdfd664(0xc6),'tpzmM':_0xdfd664(0x10a),'XupYy':function(_0x2ff9ee,_0x315cd7){return _0x2ff9ee(_0x315cd7);},'OoHLj':_0xdfd664(0x118),'dlpQv':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','KsvOd':_0xdfd664(0xde),'VNNWT':_0xdfd664(0xf0),'RFjON':function(_0x5c62d1,_0x19c542){return _0x5c62d1(_0x19c542);},'kMzYc':function(_0x13528a,_0x3ef3d8){return _0x13528a&&_0x3ef3d8;},'SQvSI':_0xdfd664(0xfe),'FkIEA':function(_0x281b11){return _0x281b11();},'OYsEu':'opencode','vBHLr':_0xdfd664(0xef),'xUqpD':function(_0x30c00b,_0x4e3442){return _0x30c00b instanceof _0x4e3442;},'KnYTY':_0xdfd664(0xdf),'vhznV':_0xdfd664(0xbf),'ASaEC':'profile','DZmLG':function(_0xc8f6c7,_0x4c0dcd,_0x31d8f9){return _0xc8f6c7(_0x4c0dcd,_0x31d8f9);},'CXmNZ':_0xdfd664(0xca),'rsVuC':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','qCqNp':function(_0x1c07bf,_0x2bdc5b){return _0x1c07bf(_0x2bdc5b);},'PJOUO':_0xdfd664(0x10d),'JhnAP':function(_0x3b56f4,_0x2b6151){return _0x3b56f4+_0x2b6151;}};console[_0xdfd664(0xd9)](_0xdfd664(0x105));const _0x591b42=process['stdin'][_0xdfd664(0x104)]&&process[_0xdfd664(0xd4)]['isTTY'];!_0x591b42&&!_0x5ca3f2?.[_0xdfd664(0xe3)]&&(console['log'](_0x18c922[_0xdfd664(0xe6)]),_0x5ca3f2={..._0x5ca3f2,'scope':_0x18c922['LxYwF']});_0x33dee2?.[_0xdfd664(0xd6)](_0x18c922['fLdwv']);if(!_0x18c922[_0xdfd664(0xe8)](findGitRoot)){await _0x33dee2?.[_0xdfd664(0xc3)](_0xdfd664(0x106),new Error(_0x18c922[_0xdfd664(0x126)]));throw new Error('No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.');}_0x33dee2?.[_0xdfd664(0x108)](_0x18c922['fLdwv']);const _0x28dade=!existsSync(getRangerDir()),{path:_0x36970}=await ensureRangerDir();_0x33dee2?.[_0xdfd664(0xd6)](_0x18c922['tpzmM']);const _0x2a85a0=await _0x18c922['XupYy'](authenticate,_0x396405);_0x33dee2?.[_0xdfd664(0x108)]('auth',{'isFirstRun':_0x28dade,'method':_0x2a85a0['method']}),_0x33dee2?.[_0xdfd664(0xd6)](_0x18c922[_0xdfd664(0xdc)]);_0x5ca3f2?.['skipChromium']?console[_0xdfd664(0xd9)](_0x18c922[_0xdfd664(0xcb)]):await ensureChromium();_0x33dee2?.['trackPhaseEnd'](_0x18c922[_0xdfd664(0xdc)],{'isFirstRun':_0x28dade,'skipped':!!_0x5ca3f2?.[_0xdfd664(0x101)]}),await writeRangerGitignore(_0x36970),console[_0xdfd664(0xd9)](_0x18c922[_0xdfd664(0x115)]);const _0x5cb3a8=_0x5ca3f2?.[_0xdfd664(0xe3)],_0x2bdd36=_0x5ca3f2?.[_0xdfd664(0xcc)]??![];let _0x57cddc=null;_0x2bdd36?(_0x33dee2?.[_0xdfd664(0xd6)]('plugin'),_0x57cddc=await _0x18c922['XupYy'](ensureOpencodePluginConfig,_0x5cb3a8),_0x33dee2?.[_0xdfd664(0x108)](_0x18c922[_0xdfd664(0x12a)],{'isFirstRun':_0x28dade,'opencode':!![]})):(_0x33dee2?.['trackPhaseStart'](_0xdfd664(0xf0)),await _0x18c922['RFjON'](ensureClaudePlugin,_0x5cb3a8),_0x33dee2?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x28dade}));if(_0x18c922[_0xdfd664(0x122)](_0x2bdd36,_0x57cddc)){_0x33dee2?.['trackPhaseStart'](_0x18c922[_0xdfd664(0xbd)]);try{await installSkill(_0xdfd664(0x11d),{'level':_0x57cddc['scope'],'cliVersion':_0x18c922[_0xdfd664(0x117)](getCurrentVersion),'platform':_0x18c922[_0xdfd664(0xc4)]}),_0x33dee2?.['trackPhaseEnd'](_0xdfd664(0xfe),{'isFirstRun':_0x28dade,'opencode':!![]});}catch(_0x25fb06){console['warn'](_0x18c922['vBHLr'],_0x18c922['xUqpD'](_0x25fb06,Error)?_0x25fb06[_0xdfd664(0xfc)]:_0x25fb06),_0x33dee2?.['trackPhaseEnd']('skills',{'isFirstRun':_0x28dade,'opencode':!![],'failed':!![]});}}else _0x33dee2?.['trackPhaseStart']('skills'),await ensureClaudeSkills(_0x5cb3a8),_0x33dee2?.[_0xdfd664(0x108)](_0x18c922[_0xdfd664(0xbd)],{'isFirstRun':_0x28dade});if(!_0x591b42&&!_0x5ca3f2?.[_0xdfd664(0x12e)])console['log'](_0x18c922['KnYTY']),console['log']('\x20\x20'+_0x18c922[_0xdfd664(0xf5)](bold,_0x18c922[_0xdfd664(0xce)])+'\x0a');else{_0x33dee2?.[_0xdfd664(0xd6)](_0x18c922[_0xdfd664(0x129)]);const _0x496ab5=await _0x18c922[_0xdfd664(0xf9)](ensureLocalEnv,{'url':_0x5ca3f2?.['url'],'force':_0x5ca3f2?.[_0xdfd664(0xb7)],'allowInsecureLocalhost':_0x5ca3f2?.[_0xdfd664(0xdd)]},_0x33dee2);_0x33dee2?.['trackPhaseEnd'](_0x18c922['ASaEC'],{'isFirstRun':_0x28dade,'profileReady':_0x496ab5[_0xdfd664(0x113)],'userSkipped':_0x496ab5[_0xdfd664(0x127)]}),_0x496ab5[_0xdfd664(0x113)]&&console['log']('\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.');}if(_0x2bdd36)console['log'](_0x18c922[_0xdfd664(0x10b)]),console['log'](_0xdfd664(0x11e)),console['log'](_0xdfd664(0xba)),console['log'](_0x18c922[_0xdfd664(0x109)]);else{const _0x381514=_0x18c922['qCqNp'](bold,_0x18c922[_0xdfd664(0x107)]);console['log'](_0x18c922['JhnAP'](_0xdfd664(0xd3)+_0x381514+_0xdfd664(0xd2)+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with',_0xdfd664(0x10e))+_0xdfd664(0xb8));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3e5953=_0xb334;function _0xb334(_0x30f085,_0x166b5d){_0x30f085=_0x30f085-0x1f0;const _0x2f30f1=_0x2f30();let _0xb3348b=_0x2f30f1[_0x30f085];return _0xb3348b;}(function(_0x1cae2b,_0x44a337){const _0x160d78=_0xb334,_0x5247a5=_0x1cae2b();while(!![]){try{const _0x14a8f0=parseInt(_0x160d78(0x217))/0x1+-parseInt(_0x160d78(0x1ff))/0x2+-parseInt(_0x160d78(0x210))/0x3+-parseInt(_0x160d78(0x216))/0x4*(parseInt(_0x160d78(0x240))/0x5)+parseInt(_0x160d78(0x22a))/0x6+parseInt(_0x160d78(0x239))/0x7+parseInt(_0x160d78(0x211))/0x8;if(_0x14a8f0===_0x44a337)break;else _0x5247a5['push'](_0x5247a5['shift']());}catch(_0x4a5ce3){_0x5247a5['push'](_0x5247a5['shift']());}}}(_0x2f30,0x8f0d7));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0xd6f6dc=>_0x3e5953(0x214)+_0xd6f6dc+_0x3e5953(0x233),link=(_0x342cc2,_0xde77ee)=>_0x3e5953(0x1fe)+_0x342cc2+'\x07'+(_0xde77ee||_0x342cc2)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x3c8854=_0x3e5953,_0x1cd082={'oENyc':function(_0x4a9af7,_0x181b4d){return _0x4a9af7!==_0x181b4d;},'fVgab':function(_0x159902,_0x1ae195){return _0x159902(_0x1ae195);},'oSRwi':_0x3c8854(0x20f),'jInhG':_0x3c8854(0x235),'nLaEB':function(_0xcd2742,_0x30c343){return _0xcd2742>_0x30c343;},'QUonH':_0x3c8854(0x20d),'JJjYg':function(_0x34899c,_0x3ba314,_0x1465a2,_0x3e7d3c){return _0x34899c(_0x3ba314,_0x1465a2,_0x3e7d3c);},'NCdCz':'opencode','RXkps':'ignore','tSIgX':'pipe','bcZQf':_0x3c8854(0x245)};return new Promise(_0x1be8b4=>{const _0x3c802b=_0x3c8854,_0x4052f2={'alQdh':_0x1cd082['oSRwi']},_0x182baf=_0x1cd082['JJjYg'](spawn,_0x1cd082[_0x3c802b(0x223)],[_0x3c802b(0x238),'config'],{'stdio':[_0x1cd082['RXkps'],_0x1cd082[_0x3c802b(0x21f)],_0x3c802b(0x20c)]});let _0x3aa170='';_0x182baf[_0x3c802b(0x1f5)]?.['on'](_0x3c802b(0x232),_0x2b3b9f=>{_0x3aa170+=_0x2b3b9f['toString']();}),_0x182baf[_0x3c802b(0x200)]?.['on'](_0x3c802b(0x232),_0x1e88a0=>{_0x3aa170+=_0x1e88a0['toString']();}),_0x182baf['on'](_0x3c802b(0x1fb),()=>{_0x1be8b4({'status':_0x4052f2['alQdh']});}),_0x182baf['on'](_0x1cd082['bcZQf'],_0x1dd673=>{const _0x49cc68=_0x3c802b,_0x5e5a5d={'xrqlu':'@ranger-testing/opencode-plugin','bkTFa':_0x49cc68(0x221)};if(_0x1cd082['oENyc'](_0x1dd673,0x0)){_0x1cd082[_0x49cc68(0x204)](_0x1be8b4,{'status':_0x1cd082[_0x49cc68(0x20e)]});return;}const _0x36dc45=_0x3aa170[_0x49cc68(0x248)]();let _0x500746=null;if(_0x36dc45)try{_0x500746=JSON[_0x49cc68(0x24d)](_0x36dc45);}catch{const _0x3fd884=_0x36dc45[_0x49cc68(0x225)](/\{[\s\S]*\}$/);if(_0x3fd884)try{_0x500746=JSON['parse'](_0x3fd884[0x0]);}catch{_0x500746=null;}}const _0x32fe33=Array[_0x49cc68(0x1f2)](_0x500746?.[_0x49cc68(0x206)])?_0x500746?.['plugin']:[],_0x4a0235=_0x32fe33[_0x49cc68(0x24e)](_0x10e685=>{const _0x175ac5=_0x49cc68;if(typeof _0x10e685!==_0x175ac5(0x1fa))return![];return _0x10e685['includes'](_0x5e5a5d[_0x175ac5(0x207)])||_0x10e685['includes'](_0x5e5a5d[_0x175ac5(0x230)]);});if(_0x4a0235){_0x1be8b4({'status':_0x1cd082['jInhG'],'details':_0x1cd082['nLaEB'](_0x32fe33['length'],0x0)?_0x32fe33['length']+_0x49cc68(0x23d):undefined});return;}if(_0x32fe33[_0x49cc68(0x226)]>0x0){_0x1be8b4({'status':_0x1cd082[_0x49cc68(0x219)],'details':_0x32fe33[_0x49cc68(0x226)]+'\x20plugin(s)\x20configured'});return;}_0x1be8b4({'status':_0x1cd082[_0x49cc68(0x219)]});});});}async function getSkillsFromDir(_0x3d96ec,_0xf73933){const _0x5dd0c2=_0x3e5953,_0xe9b1bf={'JagsN':function(_0x2f5f1c,_0x7718b1,_0x4b418d,_0x6b1104){return _0x2f5f1c(_0x7718b1,_0x4b418d,_0x6b1104);},'iideM':'SKILL.md','eqIJw':function(_0x3356f9,_0x32c3d0,_0x2d959f){return _0x3356f9(_0x32c3d0,_0x2d959f);}};if(!existsSync(_0x3d96ec))return[];const _0x696e13=[];try{const _0x345494=await readdir(_0x3d96ec,{'withFileTypes':!![]});for(const _0x27f095 of _0x345494){if(_0x27f095[_0x5dd0c2(0x220)]()){const _0x3a2678=_0xe9b1bf['JagsN'](join,_0x3d96ec,_0x27f095[_0x5dd0c2(0x22f)],_0xe9b1bf[_0x5dd0c2(0x23f)]);if(existsSync(_0x3a2678)){let _0x279e59=_0x27f095['name'];try{const _0x40f883=await _0xe9b1bf['eqIJw'](readFile,_0x3a2678,'utf-8'),_0x424f20=_0x40f883['match'](/name:\s*(.+)/);_0x424f20&&(_0x279e59=_0x424f20[0x1][_0x5dd0c2(0x248)]());}catch{}_0x696e13['push']({'name':_0x27f095['name'],'displayName':_0x279e59,'path':_0x3a2678,'level':_0xf73933});}}}}catch{return[];}return _0x696e13;}async function getInstalledSkills(){const _0x538f37=_0x3e5953,_0x437406={'VNhZU':function(_0x2bbe6e,_0x52ff19,_0xaacaa){return _0x2bbe6e(_0x52ff19,_0xaacaa);},'Svyha':'project','YoeoI':function(_0x42df52,_0x42da4b,_0x2b2827){return _0x42df52(_0x42da4b,_0x2b2827);},'oMNOM':function(_0x2449aa){return _0x2449aa();}},[_0x25c3a1,_0x5da5f2]=await Promise['all']([_0x437406[_0x538f37(0x24a)](getSkillsFromDir,getProjectSkillsDir(),_0x437406['Svyha']),_0x437406[_0x538f37(0x243)](getSkillsFromDir,_0x437406[_0x538f37(0x1f0)](getUserSkillsDir),_0x538f37(0x244))]);return{'project':_0x25c3a1,'user':_0x5da5f2};}function _0x2f30(){const _0x3aea89=['length','\x20\x20Run:\x20ranger\x20setup\x20--opencode','includes','ranger@trailhead','3520266fgQcKA','bUHtB','JzaYe','dPntQ','KveOf','name','bkTFa','jwGcx','data','\x1b[0m','hasEncryptedAuth','configured','@ranger-testing/opencode-plugin','WtTbS','debug','102816SVrOOO','filter','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','\x20\x20\x20\x20Auth:\x20','\x20plugin(s)\x20configured','settingsPath','iideM','10XxCAht','API\x20Environment:\x20','XSlzu','YoeoI','user','close','auth.json','version','trim','huXJb','VNhZU','DvXXH','iUgqW','parse','some','\x20\x20Not\x20installed','enabled','oMNOM','JYugC','isArray','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','\x20\x20\x20\x20','stdout','Version:\x20','KXQqI','\x0a---\x20Claude\x20Code\x20Plugin\x20---','disabled','string','error','wsslY','mIpzd','\x1b]8;;file://','2119506iqwUBf','stderr','isActive','cwd','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','fVgab','env','plugin','xrqlu','Organization:\x20','mtlPJ','API\x20URL:\x20','(not\x20found)','pipe','not_configured','oSRwi','not_installed','2048016rcdyrt','10847600VgvrES','TcARY','UArNC','\x1b[1m','log','375364ZtovME','558701JSkhGC','Root:\x20','QUonH','ETbmz','details',':\x20configured','fsuTQ','\x20(up\x20to\x20date)','tSIgX','isDirectory','opencode-plugin','hasPlaintextAuth','NCdCz','plaintext','match'];_0x2f30=function(){return _0x3aea89;};return _0x2f30();}async function getEnvironments(){const _0x4687d3=_0x3e5953,_0x34f445={'jwGcx':function(_0x16ed97,_0x4d26bf){return _0x16ed97(_0x4d26bf);},'DvXXH':function(_0x295634,_0x5a6a15,_0x4a039a){return _0x295634(_0x5a6a15,_0x4a039a);},'wsslY':'settings.json','iUgqW':function(_0x597af7,_0x598964,_0xcd7f70){return _0x597af7(_0x598964,_0xcd7f70);},'bUHtB':_0x4687d3(0x246),'GgwJD':'auth.json.enc','huXJb':function(_0x60899c,_0x399385){return _0x60899c(_0x399385);},'UArNC':function(_0x47ba95,_0x904181){return _0x47ba95===_0x904181;},'DWTTF':function(_0xb2cef5){return _0xb2cef5();},'JYugC':function(_0x1b2377,_0x32af13){return _0x1b2377(_0x32af13);}},{envNames:_0x4d794c,activeEnv:_0x3705a7}=await _0x34f445['DWTTF'](getEnvNames),_0x22f958=getRangerDir();if(!_0x34f445[_0x4687d3(0x1f1)](existsSync,_0x22f958))return{'envs':[],'activeEnv':null};const _0x3339f3=_0x4d794c['map'](_0x3544cd=>{const _0x31e0af=_0x4687d3,_0x4641ad=_0x34f445['jwGcx'](getEnvDir,_0x3544cd),_0x5bf200=_0x34f445[_0x31e0af(0x24b)](join,_0x4641ad,_0x34f445[_0x31e0af(0x1fc)]),_0x469fdf=_0x34f445[_0x31e0af(0x24c)](join,_0x4641ad,_0x34f445[_0x31e0af(0x22b)]),_0x542b53=join(_0x4641ad,_0x34f445['GgwJD']);return{'name':_0x3544cd,'settingsPath':_0x34f445[_0x31e0af(0x249)](existsSync,_0x5bf200)?_0x5bf200:'(not\x20found)','hasPlaintextAuth':_0x34f445[_0x31e0af(0x231)](existsSync,_0x469fdf),'hasEncryptedAuth':existsSync(_0x542b53),'isActive':_0x34f445[_0x31e0af(0x213)](_0x3544cd,_0x3705a7)};});return{'envs':_0x3339f3,'activeEnv':_0x3705a7};}export async function status(){const _0x1c9c6b=_0x3e5953,_0x392b86={'JzaYe':'\x0a📊\x20Ranger\x20Status\x0a','dgtOG':function(_0x1762d0,_0x423ac4,_0x385a9b){return _0x1762d0(_0x423ac4,_0x385a9b);},'dPntQ':function(_0x152632){return _0x152632();},'mmWdH':'configured','XSlzu':_0x1c9c6b(0x236),'KveOf':function(_0x2d52f1,_0x2545d5){return _0x2d52f1===_0x2545d5;},'fXQdR':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','gLOuu':_0x1c9c6b(0x1f8),'WtTbS':function(_0x40d0e5,_0x306f4f){return _0x40d0e5(_0x306f4f);},'uRWym':_0x1c9c6b(0x229),'mtlPJ':'unknown','fsuTQ':'\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','fICDo':function(_0xa106df,_0x3a7da1){return _0xa106df+_0x3a7da1;},'YTeBo':'No\x20skills\x20installed','LiBmO':function(_0x27cc96,_0x3f032c){return _0x27cc96>_0x3f032c;},'mIpzd':'\x20\x20Project-level:','CefXp':'\x20\x20User-level:','KXQqI':function(_0x4efa46,_0x1bd7bf,_0x117cb5){return _0x4efa46(_0x1bd7bf,_0x117cb5);},'uRTGm':function(_0x5d752a,_0x3442a5){return _0x5d752a(_0x3442a5);},'IdoVH':'\x0a---\x20Profiles\x20---','zRSCa':function(_0x398284,_0x2a9885){return _0x398284===_0x2a9885;},'ETbmz':'encrypted','OYtnR':_0x1c9c6b(0x20b),'TcARY':function(_0x286802,_0x2e5a42){return _0x286802(_0x2e5a42);}};console['log'](_0x392b86[_0x1c9c6b(0x22c)]);const _0x32b1b4=process[_0x1c9c6b(0x202)](),_0x18f166=getRangerDir();if(!existsSync(_0x18f166)){console['log'](_0x1c9c6b(0x218)+link(_0x32b1b4,bold(basename(_0x32b1b4)))),console['log'](_0x1c9c6b(0x1f3)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log'](_0x1c9c6b(0x218)+_0x392b86['dgtOG'](link,_0x32b1b4,bold(basename(_0x32b1b4))));const _0x32ae21=_0x392b86[_0x1c9c6b(0x22d)](getCurrentVersion),_0x936747=getLatestVersion();if(_0x936747[_0x1c9c6b(0x247)]&&_0x936747[_0x1c9c6b(0x247)]!==_0x32ae21)console['log'](_0x1c9c6b(0x1f6)+_0x32ae21+'\x20(latest:\x20'+_0x936747['version']+')'),console[_0x1c9c6b(0x215)]('\x20\x20Run:\x20ranger\x20update');else _0x936747[_0x1c9c6b(0x247)]?console[_0x1c9c6b(0x215)]('Version:\x20'+_0x32ae21+_0x1c9c6b(0x21e)):console['log']('Version:\x20'+_0x32ae21);const _0x1e86f4=await getToken();if(_0x1e86f4){const _0x11db00=await getCurrentUser(_0x1e86f4);_0x11db00['success']?console['log'](_0x1c9c6b(0x208)+bold(_0x11db00['user']['organizationName'])):(console[_0x1c9c6b(0x215)](_0x1c9c6b(0x203)),console[_0x1c9c6b(0x215)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console['log']('API\x20Token:\x20✗\x20Not\x20found'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0x1c9c6b(0x205)]['DEBUG']&&(console[_0x1c9c6b(0x215)](_0x1c9c6b(0x241)+_0x392b86[_0x1c9c6b(0x22d)](getCurrentEnvironment)),console[_0x1c9c6b(0x215)](_0x1c9c6b(0x20a)+getApiBaseUrl()));console[_0x1c9c6b(0x215)]('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x101621=await getOpencodePluginStatus();if(_0x101621['status']===_0x392b86['mmWdH'])console[_0x1c9c6b(0x215)]('\x20\x20'+bold(_0x392b86[_0x1c9c6b(0x242)])+_0x1c9c6b(0x21c)),_0x101621['details']&&console[_0x1c9c6b(0x215)]('\x20\x20'+_0x101621[_0x1c9c6b(0x21b)]);else _0x392b86[_0x1c9c6b(0x22e)](_0x101621['status'],'not_configured')?(console['log']('\x20\x20Not\x20configured'),_0x101621[_0x1c9c6b(0x21b)]&&console['log']('\x20\x20'+_0x101621[_0x1c9c6b(0x21b)]),console[_0x1c9c6b(0x215)](_0x1c9c6b(0x227))):console[_0x1c9c6b(0x215)](_0x392b86['fXQdR']);console['log'](_0x392b86['gLOuu']);const _0xcc5e31=await _0x392b86['WtTbS'](getPluginInfo,_0x392b86['uRWym']);if(_0xcc5e31){const _0x5920a9=_0xcc5e31['scope']||_0x392b86[_0x1c9c6b(0x209)],_0x3b9e8d=_0xcc5e31[_0x1c9c6b(0x250)]?_0x1c9c6b(0x250):_0x1c9c6b(0x1f9);console['log']('\x20\x20'+bold(_0x392b86['uRWym'])+':\x20installed\x20('+_0x5920a9+',\x20'+_0x3b9e8d+')');}else console['log'](_0x1c9c6b(0x24f)),console[_0x1c9c6b(0x215)](_0x392b86[_0x1c9c6b(0x21d)]);console['log']('\x0a---\x20Skills\x20---');const {project:_0x59a52b,user:_0x5d3c5e}=await getInstalledSkills(),_0x642e34=_0x59a52b[_0x1c9c6b(0x23a)](_0x665341=>RANGER_MANAGED_SKILLS['includes'](_0x665341[_0x1c9c6b(0x22f)])),_0xae2ef0=_0x5d3c5e['filter'](_0x5601ab=>RANGER_MANAGED_SKILLS[_0x1c9c6b(0x228)](_0x5601ab[_0x1c9c6b(0x22f)])),_0x33a370=_0x392b86['fICDo'](_0x642e34['length'],_0xae2ef0[_0x1c9c6b(0x226)]);if(_0x33a370===0x0)console['log'](_0x392b86['YTeBo']),console[_0x1c9c6b(0x215)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x392b86['LiBmO'](_0x642e34[_0x1c9c6b(0x226)],0x0)){console[_0x1c9c6b(0x215)](_0x392b86[_0x1c9c6b(0x1fd)]);for(const _0x44adfc of _0x642e34){console[_0x1c9c6b(0x215)](_0x1c9c6b(0x1f4)+_0x392b86[_0x1c9c6b(0x237)](bold,_0x44adfc['displayName'])+':\x20'+link(_0x44adfc['path'],_0x392b86[_0x1c9c6b(0x237)](basename,_0x44adfc['path'])));}}if(_0xae2ef0[_0x1c9c6b(0x226)]>0x0){console['log'](_0x392b86['CefXp']);for(const _0x12a88c of _0xae2ef0){console[_0x1c9c6b(0x215)]('\x20\x20\x20\x20'+bold(_0x12a88c['displayName'])+':\x20'+_0x392b86['KXQqI'](link,_0x12a88c['path'],_0x392b86['uRTGm'](basename,_0x12a88c['path'])));}}}console['log'](_0x392b86['IdoVH']);const {envs:_0x78b573,activeEnv:_0x24eb0a}=await _0x392b86['dPntQ'](getEnvironments);if(_0x392b86['zRSCa'](_0x78b573[_0x1c9c6b(0x226)],0x0))console[_0x1c9c6b(0x215)]('No\x20profiles\x20configured'),console[_0x1c9c6b(0x215)](_0x1c9c6b(0x23b));else{for(const _0x3fe103 of _0x78b573){const _0x1a7d27=_0x3fe103[_0x1c9c6b(0x201)]?'\x20(active)':'',_0x8acc84=_0x3fe103[_0x1c9c6b(0x234)]?_0x392b86[_0x1c9c6b(0x21a)]:_0x3fe103[_0x1c9c6b(0x222)]?_0x1c9c6b(0x224):'none';console['log']('\x20\x20'+bold(_0x3fe103[_0x1c9c6b(0x22f)])+_0x1a7d27),console[_0x1c9c6b(0x215)](_0x1c9c6b(0x23c)+_0x8acc84),_0x3fe103[_0x1c9c6b(0x23e)]!==_0x392b86['OYtnR']&&console[_0x1c9c6b(0x215)]('\x20\x20\x20\x20Settings:\x20'+_0x392b86[_0x1c9c6b(0x1f7)](link,_0x3fe103[_0x1c9c6b(0x23e)],_0x392b86[_0x1c9c6b(0x212)](basename,_0x3fe103['settingsPath'])));}!_0x24eb0a&&(console['log']('\x0a\x20\x20No\x20active\x20profile\x20set'),console[_0x1c9c6b(0x215)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x78b573['map'](_0x2f4b4e=>_0x2f4b4e['name'])['join'](',\x20')+')'));}console[_0x1c9c6b(0x215)]('');}
|
|
1
|
+
const _0x3800ce=_0x1f23;(function(_0xba0034,_0x529a51){const _0x46c3c5=_0x1f23,_0x5c0103=_0xba0034();while(!![]){try{const _0x12a1d4=-parseInt(_0x46c3c5(0x171))/0x1+parseInt(_0x46c3c5(0x197))/0x2+-parseInt(_0x46c3c5(0x185))/0x3+parseInt(_0x46c3c5(0x1b3))/0x4+parseInt(_0x46c3c5(0x162))/0x5+parseInt(_0x46c3c5(0x1c3))/0x6*(-parseInt(_0x46c3c5(0x178))/0x7)+-parseInt(_0x46c3c5(0x1bb))/0x8;if(_0x12a1d4===_0x529a51)break;else _0x5c0103['push'](_0x5c0103['shift']());}catch(_0x214cd7){_0x5c0103['push'](_0x5c0103['shift']());}}}(_0xbd02,0x936cf));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';function _0x1f23(_0x1ec306,_0x299f12){_0x1ec306=_0x1ec306-0x15c;const _0xbd021c=_0xbd02();let _0x1f2394=_0xbd021c[_0x1ec306];return _0x1f2394;}import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';function _0xbd02(){const _0x3be619=['API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','debug','SATln','4096568xMqGUy','EBbuW','sKSkV','configured','map','@ranger-testing/opencode-plugin','hasPlaintextAuth','log','1263654QJyAiY','not_configured','settingsPath','some','oajog','PhcSp','ignore','4971170sSvxde','\x1b[0m','length','UPDGs','QLRiC','path','auth.json','user','kqZof','No\x20profiles\x20configured','\x20\x20\x20\x20','\x20\x20Project-level:','\x20(active)','MnJpq','API\x20URL:\x20','259905TsTbQj','trim','\x0a---\x20Claude\x20Code\x20Plugin\x20---','details','auth.json.enc','jkjqe','bbKJI','21AmqIrW','sIaYS','data','opencode-plugin','kDfUb','DfyhJ','OEEuF','includes','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','vprvO','displayName','yfVFA','close','305991MRxDhR','TbhdY','pipe','version','\x0a---\x20Profiles\x20---',':\x20installed\x20(','tWXYl','fTFzW','not_installed','Version:\x20','wNgka','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','LlrKQ','\x1b]8;;file://','isDirectory','LlqvO','none','fDbMQ','1580660XGlcGL','JejBZ','error','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','encrypted','Root:\x20','\x20(latest:\x20','enabled','\x0a\x20\x20No\x20active\x20profile\x20set','\x0a---\x20Skills\x20---','unknown','name','parse','eKhEc','qYUzg','disabled','phvlw','ranger@trailhead','wGrtY','match','jCjUO','\x20(up\x20to\x20date)','KApUf','toString','aBhRG','apEOf','isArray','\x1b[1m','1300364ZxjoAv',':\x20configured','\x20\x20Run:\x20ranger\x20setup\x20[token]','filter','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'];_0xbd02=function(){return _0x3be619;};return _0xbd02();}import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x3aca31=>_0x3800ce(0x1b2)+_0x3aca31+_0x3800ce(0x163),link=(_0x3ca274,_0x5b479c)=>_0x3800ce(0x192)+_0x3ca274+'\x07'+(_0x5b479c||_0x3ca274)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x19e26b=_0x3800ce,_0x55caac={'DfyhJ':'@ranger-testing/opencode-plugin','ySmRh':function(_0x43ddad,_0xad4298){return _0x43ddad!==_0xad4298;},'fDbMQ':function(_0x358e93,_0x100297){return _0x358e93(_0x100297);},'MnJpq':_0x19e26b(0x18d),'OjlaF':_0x19e26b(0x1be),'CpIwd':function(_0x2f0262,_0x1faede){return _0x2f0262>_0x1faede;},'OEEuF':function(_0x51afdb,_0xac0338){return _0x51afdb>_0xac0338;},'kDfUb':_0x19e26b(0x15c),'ILYwA':function(_0x3d0414,_0x53d67f,_0x12b720,_0x2a093d){return _0x3d0414(_0x53d67f,_0x12b720,_0x2a093d);},'LQJfI':_0x19e26b(0x187),'kqZof':_0x19e26b(0x17a),'BNMsB':_0x19e26b(0x199)};return new Promise(_0x4ace8c=>{const _0x2a827e=_0x19e26b,_0x1ac869=_0x55caac['ILYwA'](spawn,'opencode',[_0x2a827e(0x1b9),'config'],{'stdio':[_0x2a827e(0x161),'pipe',_0x55caac['LQJfI']]});let _0x22ba0d='';_0x1ac869['stdout']?.['on'](_0x55caac[_0x2a827e(0x16a)],_0x248ac9=>{const _0x16b3d1=_0x2a827e;_0x22ba0d+=_0x248ac9[_0x16b3d1(0x1ae)]();}),_0x1ac869['stderr']?.['on'](_0x55caac[_0x2a827e(0x16a)],_0x2b8fc1=>{const _0x480ed5=_0x2a827e;_0x22ba0d+=_0x2b8fc1[_0x480ed5(0x1ae)]();}),_0x1ac869['on'](_0x55caac['BNMsB'],()=>{const _0x38b832=_0x2a827e;_0x4ace8c({'status':_0x38b832(0x18d)});}),_0x1ac869['on'](_0x2a827e(0x184),_0x4d26d5=>{const _0x2a822e=_0x2a827e,_0x158470={'qYUzg':'string','ltQMV':_0x55caac[_0x2a822e(0x17d)]};if(_0x55caac['ySmRh'](_0x4d26d5,0x0)){_0x55caac['fDbMQ'](_0x4ace8c,{'status':_0x55caac[_0x2a822e(0x16f)]});return;}const _0x2dc0c2=_0x22ba0d[_0x2a822e(0x172)]();let _0x47de0a=null;if(_0x2dc0c2)try{_0x47de0a=JSON[_0x2a822e(0x1a3)](_0x2dc0c2);}catch{const _0x6bd870=_0x2dc0c2[_0x2a822e(0x1aa)](/\{[\s\S]*\}$/);if(_0x6bd870)try{_0x47de0a=JSON[_0x2a822e(0x1a3)](_0x6bd870[0x0]);}catch{_0x47de0a=null;}}const _0x224d59=Array[_0x2a822e(0x1b1)](_0x47de0a?.['plugin'])?_0x47de0a?.['plugin']:[],_0x268e85=_0x224d59[_0x2a822e(0x15e)](_0x30f4d6=>{const _0x3e2281=_0x2a822e;if(typeof _0x30f4d6!==_0x158470[_0x3e2281(0x1a5)])return![];return _0x30f4d6[_0x3e2281(0x17f)](_0x158470['ltQMV'])||_0x30f4d6['includes'](_0x3e2281(0x17b));});if(_0x268e85){_0x4ace8c({'status':_0x55caac['OjlaF'],'details':_0x55caac['CpIwd'](_0x224d59['length'],0x0)?_0x224d59['length']+'\x20plugin(s)\x20configured':undefined});return;}if(_0x55caac[_0x2a822e(0x17e)](_0x224d59[_0x2a822e(0x164)],0x0)){_0x4ace8c({'status':_0x55caac[_0x2a822e(0x17c)],'details':_0x224d59[_0x2a822e(0x164)]+'\x20plugin(s)\x20configured'});return;}_0x55caac[_0x2a822e(0x196)](_0x4ace8c,{'status':_0x55caac[_0x2a822e(0x17c)]});});});}async function getSkillsFromDir(_0x54b17c,_0x488f20){const _0x64e198=_0x3800ce,_0x1a9563={'apEOf':function(_0x2f68e0,_0x4a5140,_0x278ecf){return _0x2f68e0(_0x4a5140,_0x278ecf);},'cAmDk':'SKILL.md'};if(!existsSync(_0x54b17c))return[];const _0x11e111=[];try{const _0x29ddf2=await _0x1a9563[_0x64e198(0x1b0)](readdir,_0x54b17c,{'withFileTypes':!![]});for(const _0x8810fc of _0x29ddf2){if(_0x8810fc[_0x64e198(0x193)]()){const _0x136bc3=join(_0x54b17c,_0x8810fc['name'],_0x1a9563['cAmDk']);if(existsSync(_0x136bc3)){let _0x481fb1=_0x8810fc[_0x64e198(0x1a2)];try{const _0x1f0569=await _0x1a9563['apEOf'](readFile,_0x136bc3,'utf-8'),_0x37ec46=_0x1f0569['match'](/name:\s*(.+)/);_0x37ec46&&(_0x481fb1=_0x37ec46[0x1]['trim']());}catch{}_0x11e111['push']({'name':_0x8810fc[_0x64e198(0x1a2)],'displayName':_0x481fb1,'path':_0x136bc3,'level':_0x488f20});}}}}catch{return[];}return _0x11e111;}async function getInstalledSkills(){const _0x361eeb=_0x3800ce,_0x2b1620={'vprvO':function(_0x3ed072,_0xaa4b25,_0x5ec5a4){return _0x3ed072(_0xaa4b25,_0x5ec5a4);},'sIaYS':function(_0x37a2ab){return _0x37a2ab();},'EBbuW':'project','erBco':function(_0x3d4d69,_0x17f031,_0x187c08){return _0x3d4d69(_0x17f031,_0x187c08);},'wNgka':function(_0xb58300){return _0xb58300();}},[_0x2ad639,_0x23ae3c]=await Promise['all']([_0x2b1620[_0x361eeb(0x181)](getSkillsFromDir,_0x2b1620[_0x361eeb(0x179)](getProjectSkillsDir),_0x2b1620[_0x361eeb(0x1bc)]),_0x2b1620['erBco'](getSkillsFromDir,_0x2b1620[_0x361eeb(0x18f)](getUserSkillsDir),'user')]);return{'project':_0x2ad639,'user':_0x23ae3c};}async function getEnvironments(){const _0xa56a79=_0x3800ce,_0x207403={'jCjUO':function(_0x222582,_0x4ee810){return _0x222582(_0x4ee810);},'fTFzW':_0xa56a79(0x168),'sKSkV':function(_0x1bdfb3,_0x1ec339){return _0x1bdfb3(_0x1ec339);},'yfVFA':function(_0xdb7642){return _0xdb7642();}},{envNames:_0x87d00a,activeEnv:_0x5189a6}=await getEnvNames(),_0x1437b0=_0x207403[_0xa56a79(0x183)](getRangerDir);if(!_0x207403[_0xa56a79(0x1ab)](existsSync,_0x1437b0))return{'envs':[],'activeEnv':null};const _0x84b70a=_0x87d00a[_0xa56a79(0x1bf)](_0x3a3534=>{const _0x22f5b7=_0xa56a79,_0x31fb2d=_0x207403[_0x22f5b7(0x1ab)](getEnvDir,_0x3a3534),_0xeaa902=join(_0x31fb2d,'settings.json'),_0x4f3f1c=join(_0x31fb2d,_0x207403[_0x22f5b7(0x18c)]),_0x2c6d14=join(_0x31fb2d,_0x22f5b7(0x175));return{'name':_0x3a3534,'settingsPath':_0x207403[_0x22f5b7(0x1bd)](existsSync,_0xeaa902)?_0xeaa902:'(not\x20found)','hasPlaintextAuth':existsSync(_0x4f3f1c),'hasEncryptedAuth':existsSync(_0x2c6d14),'isActive':_0x3a3534===_0x5189a6};});return{'envs':_0x84b70a,'activeEnv':_0x5189a6};}export async function status(){const _0x36de70=_0x3800ce,_0x18e77d={'UPDGs':function(_0x10b6af,_0x3760a5){return _0x10b6af(_0x3760a5);},'QLRiC':function(_0x471f0a,_0x46fb84,_0x506b56){return _0x471f0a(_0x46fb84,_0x506b56);},'aBhRG':function(_0x31c1a8,_0x38a1e6){return _0x31c1a8(_0x38a1e6);},'LlrKQ':function(_0x45244a){return _0x45244a();},'JejBZ':'\x0a---\x20OpenCode\x20Plugin\x20---','RHwNq':function(_0x79341){return _0x79341();},'ZjKzO':_0x36de70(0x1be),'QztTQ':_0x36de70(0x1c0),'NSuUF':function(_0x8cae63,_0x33c26e){return _0x8cae63===_0x33c26e;},'fDeBA':'not_configured','LlqvO':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','TbhdY':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','eKhEc':_0x36de70(0x173),'bbKJI':_0x36de70(0x1a8),'SATln':_0x36de70(0x1a1),'oajog':_0x36de70(0x19e),'KApUf':'\x20\x20Not\x20installed','wYoHE':_0x36de70(0x19a),'tWXYl':_0x36de70(0x1a0),'wGrtY':function(_0x27cedf,_0x4934f2){return _0x27cedf>_0x4934f2;},'phvlw':function(_0x37af99,_0x60a78b){return _0x37af99(_0x60a78b);},'STLuo':_0x36de70(0x189),'jkjqe':_0x36de70(0x16e),'PhcSp':_0x36de70(0x195),'VDSim':function(_0x318f99,_0x2f998e){return _0x318f99(_0x2f998e);}};console[_0x36de70(0x1c2)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x173a07=process['cwd'](),_0x584aaf=getRangerDir();if(!_0x18e77d[_0x36de70(0x165)](existsSync,_0x584aaf)){console['log'](_0x36de70(0x19c)+_0x18e77d[_0x36de70(0x166)](link,_0x173a07,_0x18e77d['aBhRG'](bold,_0x18e77d[_0x36de70(0x1af)](basename,_0x173a07)))),console['log'](_0x36de70(0x190)),console[_0x36de70(0x1c2)](_0x36de70(0x180));return;}console[_0x36de70(0x1c2)](_0x36de70(0x19c)+_0x18e77d[_0x36de70(0x166)](link,_0x173a07,_0x18e77d[_0x36de70(0x1af)](bold,_0x18e77d[_0x36de70(0x165)](basename,_0x173a07))));const _0xd10140=getCurrentVersion(),_0x44e2cd=getLatestVersion();if(_0x44e2cd['version']&&_0x44e2cd[_0x36de70(0x188)]!==_0xd10140)console['log']('Version:\x20'+_0xd10140+_0x36de70(0x19d)+_0x44e2cd[_0x36de70(0x188)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x44e2cd[_0x36de70(0x188)]?console['log'](_0x36de70(0x18e)+_0xd10140+_0x36de70(0x1ac)):console[_0x36de70(0x1c2)]('Version:\x20'+_0xd10140);const _0x4d7b28=await getToken();if(_0x4d7b28){const _0x9b283c=await getCurrentUser(_0x4d7b28);_0x9b283c['success']?console['log']('Organization:\x20'+bold(_0x9b283c[_0x36de70(0x169)]['organizationName'])):(console[_0x36de70(0x1c2)](_0x36de70(0x1b8)),console[_0x36de70(0x1c2)](_0x36de70(0x1b5)));}else console[_0x36de70(0x1c2)]('API\x20Token:\x20✗\x20Not\x20found'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env']['DEBUG']&&(console[_0x36de70(0x1c2)]('API\x20Environment:\x20'+_0x18e77d['LlrKQ'](getCurrentEnvironment)),console[_0x36de70(0x1c2)](_0x36de70(0x170)+_0x18e77d[_0x36de70(0x191)](getApiBaseUrl)));console[_0x36de70(0x1c2)](_0x18e77d[_0x36de70(0x198)]);const _0x2bf058=await _0x18e77d['RHwNq'](getOpencodePluginStatus);if(_0x2bf058['status']===_0x18e77d['ZjKzO'])console[_0x36de70(0x1c2)]('\x20\x20'+bold(_0x18e77d['QztTQ'])+_0x36de70(0x1b4)),_0x2bf058[_0x36de70(0x174)]&&console[_0x36de70(0x1c2)]('\x20\x20'+_0x2bf058['details']);else _0x18e77d['NSuUF'](_0x2bf058['status'],_0x18e77d['fDeBA'])?(console['log']('\x20\x20Not\x20configured'),_0x2bf058['details']&&console['log']('\x20\x20'+_0x2bf058[_0x36de70(0x174)]),console[_0x36de70(0x1c2)](_0x18e77d[_0x36de70(0x194)])):console[_0x36de70(0x1c2)](_0x18e77d[_0x36de70(0x186)]);console[_0x36de70(0x1c2)](_0x18e77d[_0x36de70(0x1a4)]);const _0x23278c=await getPluginInfo(_0x18e77d[_0x36de70(0x177)]);if(_0x23278c){const _0x35451b=_0x23278c['scope']||_0x18e77d[_0x36de70(0x1ba)],_0x8c2c5b=_0x23278c[_0x36de70(0x19e)]?_0x18e77d[_0x36de70(0x15f)]:_0x36de70(0x1a6);console['log']('\x20\x20'+bold('ranger@trailhead')+_0x36de70(0x18a)+_0x35451b+',\x20'+_0x8c2c5b+')');}else console['log'](_0x18e77d[_0x36de70(0x1ad)]),console['log'](_0x18e77d['wYoHE']);console['log'](_0x18e77d[_0x36de70(0x18b)]);const {project:_0x3235b8,user:_0x4d2d2f}=await getInstalledSkills(),_0x2fa67c=_0x3235b8[_0x36de70(0x1b6)](_0x5d2088=>RANGER_MANAGED_SKILLS['includes'](_0x5d2088['name'])),_0xdcfc4e=_0x4d2d2f[_0x36de70(0x1b6)](_0xeaed1d=>RANGER_MANAGED_SKILLS[_0x36de70(0x17f)](_0xeaed1d['name'])),_0xa3c472=_0x2fa67c['length']+_0xdcfc4e[_0x36de70(0x164)];if(_0xa3c472===0x0)console['log']('No\x20skills\x20installed'),console[_0x36de70(0x1c2)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x18e77d[_0x36de70(0x1a9)](_0x2fa67c[_0x36de70(0x164)],0x0)){console['log'](_0x36de70(0x16d));for(const _0x6c038e of _0x2fa67c){console[_0x36de70(0x1c2)]('\x20\x20\x20\x20'+_0x18e77d[_0x36de70(0x1a7)](bold,_0x6c038e[_0x36de70(0x182)])+':\x20'+link(_0x6c038e[_0x36de70(0x167)],basename(_0x6c038e['path'])));}}if(_0xdcfc4e[_0x36de70(0x164)]>0x0){console[_0x36de70(0x1c2)]('\x20\x20User-level:');for(const _0x42ece3 of _0xdcfc4e){console[_0x36de70(0x1c2)](_0x36de70(0x16c)+bold(_0x42ece3[_0x36de70(0x182)])+':\x20'+link(_0x42ece3['path'],_0x18e77d[_0x36de70(0x1af)](basename,_0x42ece3[_0x36de70(0x167)])));}}}console['log'](_0x18e77d['STLuo']);const {envs:_0x4fab6e,activeEnv:_0x3b5024}=await getEnvironments();if(_0x4fab6e['length']===0x0)console['log'](_0x36de70(0x16b)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x37d9cb of _0x4fab6e){const _0x2a4554=_0x37d9cb['isActive']?_0x18e77d[_0x36de70(0x176)]:'',_0x357d56=_0x37d9cb['hasEncryptedAuth']?_0x36de70(0x19b):_0x37d9cb[_0x36de70(0x1c1)]?'plaintext':_0x18e77d[_0x36de70(0x160)];console['log']('\x20\x20'+_0x18e77d['VDSim'](bold,_0x37d9cb[_0x36de70(0x1a2)])+_0x2a4554),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x357d56),_0x37d9cb[_0x36de70(0x15d)]!=='(not\x20found)'&&console['log']('\x20\x20\x20\x20Settings:\x20'+link(_0x37d9cb['settingsPath'],basename(_0x37d9cb[_0x36de70(0x15d)])));}!_0x3b5024&&(console['log'](_0x36de70(0x19f)),console['log'](_0x36de70(0x1b7)+_0x4fab6e[_0x36de70(0x1bf)](_0x91d84f=>_0x91d84f[_0x36de70(0x1a2)])['join'](',\x20')+')'));}console['log']('');}
|
package/build/commands/update.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x59f44b,_0x12a14c){const _0x267e58=_0x3881,_0xb36bd2=_0x59f44b();while(!![]){try{const _0x4ff808=parseInt(_0x267e58(0x1c6))/0x1*(-parseInt(_0x267e58(0x1ea))/0x2)+parseInt(_0x267e58(0x1d9))/0x3*(-parseInt(_0x267e58(0x1ef))/0x4)+parseInt(_0x267e58(0x1e0))/0x5+-parseInt(_0x267e58(0x1d1))/0x6*(-parseInt(_0x267e58(0x1f1))/0x7)+parseInt(_0x267e58(0x1c1))/0x8*(parseInt(_0x267e58(0x1bf))/0x9)+parseInt(_0x267e58(0x1c9))/0xa+-parseInt(_0x267e58(0x1e5))/0xb*(parseInt(_0x267e58(0x1c5))/0xc);if(_0x4ff808===_0x12a14c)break;else _0xb36bd2['push'](_0xb36bd2['shift']());}catch(_0x2c681d){_0xb36bd2['push'](_0xb36bd2['shift']());}}}(_0x5d51,0xdc4d9));import{spawn}from'child_process';import{existsSync}from'fs';import{readFile,writeFile}from'fs/promises';import{installSkill,removeSkill,RANGER_MANAGED_SKILLS,DEPRECATED_SKILLS}from'./utils/skills.js';import{PACKAGE_NAME,getCurrentVersion,getLatestVersion,compareVersions}from'./utils/version.js';import{getSkillsDir}from'./utils/claudeConfig.js';import{getOpencodeSkillsDir}from'./utils/opencodeConfig.js';import{join}from'path';import{migrateActiveProfileFile}from'./utils/activeProfile.js';import{getRangerDir}from'./utils/rangerRoot.js';import{isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';function _0x5d51(){const _0x2a0fc1=['6uUpcDY','rElxd','\x0aClaude\x20plugin\x20updated\x20(user\x20scope).','Update\x20failed.','trim','\x0aClaude\x20marketplace\x20updated\x20(trailhead).','AMTho','mWmbN','590385sblIUl','some','fKpfK','inherit','keTnF','sNowk','push','2541795wQyxZL','Checking\x20for\x20updates...','\x0aInstalling\x20','cmqxm','active-profile.txt','12496BqlIbt','plugin','xuCNe','rsTVr','pipe','458EOxQSR','.gitignore','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','user','@latest...\x0a','4cqQfmE','\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','253463SNNqoX','split','trailhead','yQLFI','teqWR','ZadLu','uEigv','zyMIT','\x0aReinstalling\x20','DdlvA','platform','length','claude','\x20ranger-managed\x20skill(s)...','error','oRIlV','99801hQTWxi','\x0aSuccessfully\x20updated\x20to\x20version\x20','808VCgOln','close','--scope','\x20skill\x20','2088kTqIfP','2427uzkOGb','GGjRs','\x0aCurrent\x20version:\x20','1880460QGLmyI','ranger@trailhead','✓\x20Migrated\x20active\x20profile\x20file','project','version','warn','splice','log'];_0x5d51=function(){return _0x2a0fc1;};return _0x5d51();}async function runInstall(){const _0x2ffaa4={'cmqxm':function(_0x3a7600,_0x59605b){return _0x3a7600(_0x59605b);},'RWIul':function(_0xae5c0f,_0x6dbbb1){return _0xae5c0f===_0x6dbbb1;},'sRfut':'npm','qvNHH':'close'};return new Promise(_0x1a3f34=>{const _0x396a70=_0x3881,_0x142d08={'oRIlV':function(_0x3a3000,_0x197b4b){return _0x3a3000(_0x197b4b);}};console['log'](_0x396a70(0x1e2)+PACKAGE_NAME+_0x396a70(0x1ee));const _0x55bc37=spawn(_0x2ffaa4['sRfut'],['install','-g',PACKAGE_NAME+'@latest'],{'stdio':_0x396a70(0x1dc),'shell':process['platform']==='win32'});_0x55bc37['on'](_0x2ffaa4['qvNHH'],_0x3df84c=>{const _0x5caf90=_0x396a70;_0x2ffaa4[_0x5caf90(0x1e3)](_0x1a3f34,_0x2ffaa4['RWIul'](_0x3df84c,0x0));}),_0x55bc37['on']('error',()=>{const _0x3806b7=_0x396a70;_0x142d08[_0x3806b7(0x1be)](_0x1a3f34,![]);});});}async function updateClaudeMarketplace(){const _0x3046d2=_0x3881,_0x56d923={'rElxd':function(_0x30d79d,_0x516cd3){return _0x30d79d===_0x516cd3;},'UUpzh':function(_0x57f5b2,_0xae5b76,_0x3ea3f2,_0x514e81){return _0x57f5b2(_0xae5b76,_0x3ea3f2,_0x514e81);},'SauoF':_0x3046d2(0x1bb),'CJcYu':'update','yQLFI':'win32','hXnWu':_0x3046d2(0x1bd)};return new Promise(_0x528ce3=>{const _0x158baa=_0x3046d2,_0x29e6f1=_0x56d923['UUpzh'](spawn,_0x56d923['SauoF'],[_0x158baa(0x1e6),'marketplace',_0x56d923['CJcYu'],'trailhead'],{'stdio':'pipe','shell':process[_0x158baa(0x1b9)]===_0x56d923[_0x158baa(0x1b2)]});_0x29e6f1['on']('close',_0x27b9a8=>{const _0x59eaa5=_0x158baa;_0x528ce3(_0x56d923[_0x59eaa5(0x1d2)](_0x27b9a8,0x0));}),_0x29e6f1['on'](_0x56d923['hXnWu'],()=>{_0x528ce3(![]);});});}async function updateClaudePlugin(_0x1afda0){const _0x5b4207=_0x3881,_0x3d0601={'RiEGP':_0x5b4207(0x1ca),'MiJaj':_0x5b4207(0x1c3),'uEigv':function(_0x4edc47,_0x4a1879,_0x4b18b0,_0x244fe6){return _0x4edc47(_0x4a1879,_0x4b18b0,_0x244fe6);},'keTnF':_0x5b4207(0x1e9),'sNowk':_0x5b4207(0x1bd)};return new Promise(_0x29e5c9=>{const _0x250d65=_0x5b4207,_0x29a54e={'Gksme':function(_0x1e5cf4,_0x14e21e){return _0x1e5cf4===_0x14e21e;}},_0x9934e9=[_0x250d65(0x1e6),'update',_0x3d0601['RiEGP']];_0x1afda0&&_0x9934e9['push'](_0x3d0601['MiJaj'],_0x1afda0);const _0x4f5c8d=_0x3d0601[_0x250d65(0x1b5)](spawn,'claude',_0x9934e9,{'stdio':_0x3d0601[_0x250d65(0x1dd)],'shell':process[_0x250d65(0x1b9)]==='win32'});_0x4f5c8d['on'](_0x250d65(0x1c2),_0x45d994=>{_0x29e5c9(_0x29a54e['Gksme'](_0x45d994,0x0));}),_0x4f5c8d['on'](_0x3d0601[_0x250d65(0x1de)],()=>{_0x29e5c9(![]);});});}function isSkillInstalled(_0x14013d,_0xd5cf05,_0x4f070d){const _0x45d5d8={'hbKaR':function(_0x291a77,_0x253c18){return _0x291a77(_0x253c18);},'kjePr':function(_0x44db00,_0x1206d7,_0x501083){return _0x44db00(_0x1206d7,_0x501083);}},_0x19ce1d=_0x4f070d==='opencode'?getOpencodeSkillsDir(_0xd5cf05):_0x45d5d8['hbKaR'](getSkillsDir,_0xd5cf05),_0x4ed66f=_0x45d5d8['kjePr'](join,_0x19ce1d,_0x14013d);return existsSync(_0x4ed66f);}function _0x3881(_0x5b3ad1,_0x12d5bb){_0x5b3ad1=_0x5b3ad1-0x1b2;const _0x5d51a8=_0x5d51();let _0x3881cc=_0x5d51a8[_0x5b3ad1];return _0x3881cc;}async function reinstallSkills(_0x1a06e9){const _0x7cf0b8=_0x3881,_0x61b999={'mbFSf':function(_0x10a3e5,_0x440c6e,_0x16c5ef,_0x1d8a0c){return _0x10a3e5(_0x440c6e,_0x16c5ef,_0x1d8a0c);},'dgsvs':'claude','rsTVr':'opencode','XfuOY':function(_0x1b4617,_0x31d1fb,_0x3757ec){return _0x1b4617(_0x31d1fb,_0x3757ec);},'zyMIT':function(_0xe2f36b,_0xfd0b26){return _0xe2f36b===_0xfd0b26;},'DdlvA':_0x7cf0b8(0x1ec)},_0x4d0a0f=[_0x7cf0b8(0x1cc),_0x7cf0b8(0x1ed)],_0x2af74a=[];for(const _0x558525 of _0x4d0a0f){for(const _0xbd5732 of RANGER_MANAGED_SKILLS){_0x61b999['mbFSf'](isSkillInstalled,_0xbd5732,_0x558525,'claude')&&_0x2af74a['push']({'skillName':_0xbd5732,'level':_0x558525,'platform':_0x61b999['dgsvs']}),isSkillInstalled(_0xbd5732,_0x558525,'opencode')&&_0x2af74a[_0x7cf0b8(0x1df)]({'skillName':_0xbd5732,'level':_0x558525,'platform':_0x61b999[_0x7cf0b8(0x1e8)]});}}for(const _0x36ced1 of _0x4d0a0f){for(const _0x52ee67 of DEPRECATED_SKILLS){await _0x61b999['XfuOY'](removeSkill,_0x52ee67,_0x36ced1);}}if(_0x61b999[_0x7cf0b8(0x1b6)](_0x2af74a[_0x7cf0b8(0x1ba)],0x0)){console[_0x7cf0b8(0x1d0)](_0x61b999[_0x7cf0b8(0x1b8)]);return;}console['log'](_0x7cf0b8(0x1b7)+_0x2af74a[_0x7cf0b8(0x1ba)]+_0x7cf0b8(0x1bc));for(const {skillName:_0x2968c4,level:_0x5ef3ed,platform:_0x52b375}of _0x2af74a){try{await _0x61b999['XfuOY'](installSkill,_0x2968c4,{'level':_0x5ef3ed,'cliVersion':_0x1a06e9,'platform':_0x52b375});}catch(_0x2670e6){console[_0x7cf0b8(0x1ce)]('\x20\x20Failed\x20to\x20reinstall\x20'+_0x52b375+'\x20'+_0x5ef3ed+_0x7cf0b8(0x1c4)+_0x2968c4+':',_0x2670e6);}}}async function ensureActiveProfileGitignored(){const _0x5a1781=_0x3881,_0x48a7e9={'GGjRs':function(_0x4432bd){return _0x4432bd();},'wUzht':_0x5a1781(0x1eb),'ELAFa':function(_0x54e3ef,_0x35bc56){return _0x54e3ef(_0x35bc56);},'xuCNe':function(_0x4d4c08,_0x206fec,_0xbc5e67){return _0x4d4c08(_0x206fec,_0xbc5e67);},'Srfja':function(_0x2d156b,_0x577c4f,_0x34c0c0,_0x2e721f){return _0x2d156b(_0x577c4f,_0x34c0c0,_0x2e721f);}},_0x4bd9e1=join(_0x48a7e9[_0x5a1781(0x1c7)](getRangerDir),_0x48a7e9['wUzht']);if(!_0x48a7e9['ELAFa'](existsSync,_0x4bd9e1))return![];let _0x4821d3='';try{_0x4821d3=await _0x48a7e9[_0x5a1781(0x1e7)](readFile,_0x4bd9e1,'utf-8');}catch{return![];}const _0x34b218=_0x4821d3[_0x5a1781(0x1f2)](/\r?\n/);if(_0x34b218[_0x5a1781(0x1da)](_0xa013ec=>_0xa013ec['trim']()==='active-profile.txt'))return![];let _0x47102f=_0x34b218['findIndex'](_0x4811bc=>_0x4811bc[_0x5a1781(0x1d5)]()==='active-feature.txt');_0x47102f===-0x1&&(_0x47102f=_0x34b218[_0x5a1781(0x1ba)]);_0x34b218[_0x5a1781(0x1cf)](_0x47102f,0x0,_0x5a1781(0x1e4));let _0x3a6ca6=_0x34b218['join']('\x0a');!_0x3a6ca6['endsWith']('\x0a')&&(_0x3a6ca6+='\x0a');try{await _0x48a7e9['Srfja'](writeFile,_0x4bd9e1,_0x3a6ca6,'utf-8');}catch{return![];}return!![];}export async function update(){const _0x50523b=_0x3881,_0x209aff={'teqWR':function(_0x35bdbc){return _0x35bdbc();},'hjdFz':'Attempting\x20install\x20anyway...','ZadLu':_0x50523b(0x1d4),'lVjaC':function(_0x3fc140,_0x116209){return _0x3fc140(_0x116209);},'mWmbN':function(_0x5d5a29,_0x28a65e){return _0x5d5a29(_0x28a65e);},'AMTho':_0x50523b(0x1d3),'pvxvq':_0x50523b(0x1cc),'fKpfK':function(_0x36b2d7){return _0x36b2d7();}},_0x1fa925=_0x209aff[_0x50523b(0x1b3)](getCurrentVersion);console['log'](_0x50523b(0x1c8)+_0x1fa925),console[_0x50523b(0x1d0)](_0x50523b(0x1e1));const _0x232c25=getLatestVersion();let _0x3e2296=_0x1fa925;if(!_0x232c25[_0x50523b(0x1cd)]){console['warn']('\x0aCould\x20not\x20check\x20latest\x20version:\x20'+_0x232c25[_0x50523b(0x1bd)]),console[_0x50523b(0x1d0)](_0x209aff['hjdFz']);const _0x56d2d2=await _0x209aff[_0x50523b(0x1b3)](runInstall);if(_0x56d2d2)console[_0x50523b(0x1d0)]('\x0aSuccessfully\x20installed\x20latest\x20version.'),_0x3e2296=_0x209aff[_0x50523b(0x1b3)](getCurrentVersion);else throw new Error('Update\x20failed:\x20'+_0x232c25[_0x50523b(0x1bd)]);}else{const _0x40bd0e=_0x232c25[_0x50523b(0x1cd)];console[_0x50523b(0x1d0)]('Latest\x20version:\x20\x20'+_0x40bd0e);const _0x27c80e=compareVersions(_0x1fa925,_0x40bd0e);if(_0x27c80e===0x0)console[_0x50523b(0x1d0)](_0x50523b(0x1f0));else{if(_0x27c80e<0x0)console[_0x50523b(0x1d0)]('\x0aYour\x20version\x20('+_0x1fa925+')\x20is\x20newer\x20than\x20the\x20published\x20version\x20('+_0x40bd0e+').');else{const _0x7c60f8=await runInstall();if(_0x7c60f8)console[_0x50523b(0x1d0)](_0x50523b(0x1c0)+_0x40bd0e),_0x3e2296=_0x40bd0e;else throw new Error(_0x209aff[_0x50523b(0x1b4)]);}}}await _0x209aff['lVjaC'](reinstallSkills,_0x3e2296);const _0x4d26e1=await _0x209aff['lVjaC'](isMarketplaceAdded,_0x50523b(0x1f3)),_0x295022=await _0x209aff[_0x50523b(0x1d8)](isPluginInstalled,'ranger@trailhead');if(_0x4d26e1){const _0x363216=await updateClaudeMarketplace();_0x363216&&console[_0x50523b(0x1d0)](_0x50523b(0x1d6));}if(_0x295022){const _0x1b7f1e=await updateClaudePlugin();_0x1b7f1e&&console['log'](_0x209aff[_0x50523b(0x1d7)]);const _0x54e234=await updateClaudePlugin(_0x209aff['pvxvq']);_0x54e234&&console[_0x50523b(0x1d0)]((_0x1b7f1e?'':'\x0a')+'Claude\x20plugin\x20updated\x20(project\x20scope).');}const _0x1bdea1=await migrateActiveProfileFile();_0x1bdea1&&console['log'](_0x50523b(0x1cb));const _0x293238=await _0x209aff[_0x50523b(0x1db)](ensureActiveProfileGitignored);console['log']('\x0a✅\x20Update\x20complete!');}
|
|
1
|
+
(function(_0x2ba9e2,_0x51f195){const _0x10c2af=_0x1894,_0x5dc7e1=_0x2ba9e2();while(!![]){try{const _0x44e2b4=-parseInt(_0x10c2af(0x93))/0x1+-parseInt(_0x10c2af(0xbb))/0x2*(-parseInt(_0x10c2af(0x8f))/0x3)+-parseInt(_0x10c2af(0x9d))/0x4*(parseInt(_0x10c2af(0xa1))/0x5)+parseInt(_0x10c2af(0xb9))/0x6*(-parseInt(_0x10c2af(0xa8))/0x7)+-parseInt(_0x10c2af(0x99))/0x8*(-parseInt(_0x10c2af(0x8c))/0x9)+-parseInt(_0x10c2af(0xa6))/0xa+-parseInt(_0x10c2af(0xb7))/0xb*(-parseInt(_0x10c2af(0x9f))/0xc);if(_0x44e2b4===_0x51f195)break;else _0x5dc7e1['push'](_0x5dc7e1['shift']());}catch(_0x38b46d){_0x5dc7e1['push'](_0x5dc7e1['shift']());}}}(_0x3898,0x3c32c));import{spawn}from'child_process';import{existsSync}from'fs';import{readFile,writeFile}from'fs/promises';import{installSkill,removeSkill,RANGER_MANAGED_SKILLS,DEPRECATED_SKILLS}from'./utils/skills.js';import{PACKAGE_NAME,getCurrentVersion,getLatestVersion,compareVersions}from'./utils/version.js';import{getSkillsDir}from'./utils/claudeConfig.js';import{getOpencodeSkillsDir}from'./utils/opencodeConfig.js';import{join}from'path';import{migrateActiveProfileFile}from'./utils/activeProfile.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x1894(_0x5acfc4,_0x27ea8d){_0x5acfc4=_0x5acfc4-0x8a;const _0x38988f=_0x3898();let _0x189430=_0x38988f[_0x5acfc4];return _0x189430;}import{isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function runInstall(){const _0x562ed3=_0x1894,_0x2d65ca={'yuHHM':function(_0xef605f,_0x50c5c8){return _0xef605f(_0x50c5c8);},'Xdsyj':'npm','wsZnL':_0x562ed3(0x96),'PATGQ':'inherit','ijFvw':function(_0x5129e2,_0x14537f){return _0x5129e2===_0x14537f;},'IeLBt':'close'};return new Promise(_0x115984=>{const _0x642119=_0x562ed3,_0x178a08={'NIFZW':function(_0x29d0ed,_0x96dd4c){return _0x29d0ed(_0x96dd4c);}};console[_0x642119(0xae)](_0x642119(0xc6)+PACKAGE_NAME+_0x642119(0x9e));const _0x58e24f=spawn(_0x2d65ca[_0x642119(0xa0)],[_0x2d65ca['wsZnL'],'-g',PACKAGE_NAME+'@latest'],{'stdio':_0x2d65ca['PATGQ'],'shell':_0x2d65ca[_0x642119(0xaf)](process['platform'],'win32')});_0x58e24f['on'](_0x2d65ca[_0x642119(0x90)],_0x1ecd34=>{_0x2d65ca['yuHHM'](_0x115984,_0x1ecd34===0x0);}),_0x58e24f['on']('error',()=>{const _0x589be8=_0x642119;_0x178a08[_0x589be8(0x95)](_0x115984,![]);});});}async function updateClaudeMarketplace(){const _0xbc0065=_0x1894,_0x4bc317={'yEtvM':function(_0x1d2dd7,_0x456454){return _0x1d2dd7(_0x456454);},'eJdKp':function(_0x447182,_0x157d06,_0x2fec8e,_0x5cb156){return _0x447182(_0x157d06,_0x2fec8e,_0x5cb156);},'TjuHg':'claude','bGvwy':'marketplace','lAklP':'update','XrJnc':_0xbc0065(0xce),'FPxOE':'win32'};return new Promise(_0x3c97fe=>{const _0x429580=_0xbc0065,_0x4274f5=_0x4bc317[_0x429580(0x91)](spawn,_0x4bc317[_0x429580(0xc0)],['plugin',_0x4bc317[_0x429580(0x98)],_0x4bc317['lAklP'],_0x4bc317[_0x429580(0xb6)]],{'stdio':_0x429580(0xc2),'shell':process[_0x429580(0xad)]===_0x4bc317[_0x429580(0xcc)]});_0x4274f5['on']('close',_0x28019d=>{_0x4bc317['yEtvM'](_0x3c97fe,_0x28019d===0x0);}),_0x4274f5['on'](_0x429580(0x92),()=>{_0x3c97fe(![]);});});}async function updateClaudePlugin(_0x498baf){const _0x293b77=_0x1894,_0x29aef1={'Oxaty':function(_0x32ed18,_0x10c732){return _0x32ed18(_0x10c732);},'ctgWa':_0x293b77(0xab),'FgnKH':'update','aTQlt':_0x293b77(0xa7),'uJXcY':'--scope','suBfA':'pipe','JHWuS':function(_0x147d2c,_0x42f537){return _0x147d2c===_0x42f537;},'rnBSl':_0x293b77(0xcd),'qWuxd':_0x293b77(0x92)};return new Promise(_0x3d19c4=>{const _0x5427f4=_0x293b77,_0x2f7d4f=[_0x29aef1['ctgWa'],_0x29aef1[_0x5427f4(0xc1)],_0x29aef1[_0x5427f4(0xbe)]];_0x498baf&&_0x2f7d4f['push'](_0x29aef1['uJXcY'],_0x498baf);const _0x103b01=spawn(_0x5427f4(0xbf),_0x2f7d4f,{'stdio':_0x29aef1['suBfA'],'shell':_0x29aef1['JHWuS'](process[_0x5427f4(0xad)],_0x29aef1[_0x5427f4(0xaa)])});_0x103b01['on']('close',_0x2782a4=>{const _0x57a983=_0x5427f4;_0x29aef1[_0x57a983(0xca)](_0x3d19c4,_0x2782a4===0x0);}),_0x103b01['on'](_0x29aef1['qWuxd'],()=>{_0x29aef1['Oxaty'](_0x3d19c4,![]);});});}function _0x3898(){const _0x3508dd=['SrmwX','bGvwy','33752ENwIEt','project','\x0aReinstalling\x20','utf-8','51028ApTKgP','@latest...\x0a','535764KIqHxE','Xdsyj','85nRBooz','join','trim','\x0aClaude\x20plugin\x20updated\x20(user\x20scope).','EvMZx','464380lEsurd','ranger@trailhead','27601qXDahM','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','rnBSl','plugin','.gitignore','platform','log','ijFvw',')\x20is\x20newer\x20than\x20the\x20published\x20version\x20(','version','\x0aClaude\x20marketplace\x20updated\x20(trailhead).','\x0aCould\x20not\x20check\x20latest\x20version:\x20','IUEPZ','fExTC','XrJnc','99OrNEvq','\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','738qUwySG','opencode','20zBWznL','IdhTm','\x0a✅\x20Update\x20complete!','aTQlt','claude','TjuHg','FgnKH','pipe','Attempting\x20install\x20anyway...','\x0aCurrent\x20version:\x20','\x20skill\x20','\x0aInstalling\x20','\x20ranger-managed\x20skill(s)...','ojCNG','tImGT','Oxaty','wqFSE','FPxOE','win32','trailhead','findIndex','HYyPM','length','738nSDPMA','ahaAh','endsWith','100140NPzFFt','IeLBt','eJdKp','error','86713JCFqMY','Update\x20failed:\x20','NIFZW','install'];_0x3898=function(){return _0x3508dd;};return _0x3898();}function isSkillInstalled(_0x1ccecf,_0x2f875e,_0x5db455){const _0x11448a=_0x1894,_0x584c05={'fExTC':function(_0x50fe01,_0x11c927,_0x444bcc){return _0x50fe01(_0x11c927,_0x444bcc);}},_0x28284d=_0x5db455==='opencode'?getOpencodeSkillsDir(_0x2f875e):getSkillsDir(_0x2f875e),_0x5ded94=_0x584c05[_0x11448a(0xb5)](join,_0x28284d,_0x1ccecf);return existsSync(_0x5ded94);}async function reinstallSkills(_0x2e2961){const _0xbde658=_0x1894,_0x43ec91={'adQdM':'claude','ojCNG':function(_0x3aad01,_0x1edad1,_0x33b305,_0xc50c38){return _0x3aad01(_0x1edad1,_0x33b305,_0xc50c38);},'tImGT':_0xbde658(0xba),'vbcoJ':function(_0x366286,_0x30b429,_0x30640f){return _0x366286(_0x30b429,_0x30640f);},'ahaAh':_0xbde658(0xa9)},_0x1d5fcb=['project','user'],_0x5721bf=[];for(const _0x2a6903 of _0x1d5fcb){for(const _0x51140a of RANGER_MANAGED_SKILLS){isSkillInstalled(_0x51140a,_0x2a6903,_0x43ec91['adQdM'])&&_0x5721bf['push']({'skillName':_0x51140a,'level':_0x2a6903,'platform':_0xbde658(0xbf)}),_0x43ec91[_0xbde658(0xc8)](isSkillInstalled,_0x51140a,_0x2a6903,_0xbde658(0xba))&&_0x5721bf['push']({'skillName':_0x51140a,'level':_0x2a6903,'platform':_0x43ec91[_0xbde658(0xc9)]});}}for(const _0x223515 of _0x1d5fcb){for(const _0xb77445 of DEPRECATED_SKILLS){await _0x43ec91['vbcoJ'](removeSkill,_0xb77445,_0x223515);}}if(_0x5721bf['length']===0x0){console['log'](_0x43ec91[_0xbde658(0x8d)]);return;}console['log'](_0xbde658(0x9b)+_0x5721bf[_0xbde658(0x8b)]+_0xbde658(0xc7));for(const {skillName:_0x41fa54,level:_0x452c7c,platform:_0x7dede8}of _0x5721bf){try{await _0x43ec91['vbcoJ'](installSkill,_0x41fa54,{'level':_0x452c7c,'cliVersion':_0x2e2961,'platform':_0x7dede8});}catch(_0x5e65d9){console['warn']('\x20\x20Failed\x20to\x20reinstall\x20'+_0x7dede8+'\x20'+_0x452c7c+_0xbde658(0xc5)+_0x41fa54+':',_0x5e65d9);}}}async function ensureActiveProfileGitignored(){const _0x57d4f4=_0x1894,_0x3ecc4a={'IUEPZ':function(_0x2fb330,_0x3cf8cb,_0x372dbf){return _0x2fb330(_0x3cf8cb,_0x372dbf);},'EvMZx':function(_0x401d00){return _0x401d00();},'ZHWgB':_0x57d4f4(0xac),'GnaJL':function(_0x4ce48c,_0x8a41aa){return _0x4ce48c(_0x8a41aa);},'wqFSE':_0x57d4f4(0x9c)},_0xfa3e5=_0x3ecc4a[_0x57d4f4(0xb4)](join,_0x3ecc4a[_0x57d4f4(0xa5)](getRangerDir),_0x3ecc4a['ZHWgB']);if(!_0x3ecc4a['GnaJL'](existsSync,_0xfa3e5))return![];let _0x52c552='';try{_0x52c552=await readFile(_0xfa3e5,_0x57d4f4(0x9c));}catch{return![];}const _0x3c3605=_0x52c552['split'](/\r?\n/);if(_0x3c3605['some'](_0x4bdd1f=>_0x4bdd1f['trim']()==='active-profile.txt'))return![];let _0x324f91=_0x3c3605[_0x57d4f4(0xcf)](_0x6cd7e9=>_0x6cd7e9[_0x57d4f4(0xa3)]()==='active-feature.txt');_0x324f91===-0x1&&(_0x324f91=_0x3c3605['length']);_0x3c3605['splice'](_0x324f91,0x0,'active-profile.txt');let _0x5dead8=_0x3c3605[_0x57d4f4(0xa2)]('\x0a');!_0x5dead8[_0x57d4f4(0x8e)]('\x0a')&&(_0x5dead8+='\x0a');try{await writeFile(_0xfa3e5,_0x5dead8,_0x3ecc4a[_0x57d4f4(0xcb)]);}catch{return![];}return!![];}export async function update(){const _0x4642c2=_0x1894,_0x1693ed={'SrmwX':function(_0x3c86c6){return _0x3c86c6();},'cCjGK':'\x0aSuccessfully\x20installed\x20latest\x20version.','HYyPM':function(_0x4f4c6b,_0x4982e0){return _0x4f4c6b(_0x4982e0);},'UiYRm':function(_0x598c6a,_0x4f8941){return _0x598c6a(_0x4f8941);},'CeItz':_0x4642c2(0xb2),'KbMYZ':_0x4642c2(0xa4),'IdhTm':_0x4642c2(0xbd)},_0x50cdc5=_0x1693ed[_0x4642c2(0x97)](getCurrentVersion);console[_0x4642c2(0xae)](_0x4642c2(0xc4)+_0x50cdc5),console['log']('Checking\x20for\x20updates...');const _0x25e99f=getLatestVersion();let _0x30beca=_0x50cdc5;if(!_0x25e99f[_0x4642c2(0xb1)]){console['warn'](_0x4642c2(0xb3)+_0x25e99f['error']),console[_0x4642c2(0xae)](_0x4642c2(0xc3));const _0x45fffe=await runInstall();if(_0x45fffe)console[_0x4642c2(0xae)](_0x1693ed['cCjGK']),_0x30beca=_0x1693ed[_0x4642c2(0x97)](getCurrentVersion);else throw new Error(_0x4642c2(0x94)+_0x25e99f['error']);}else{const _0x4ba3fa=_0x25e99f[_0x4642c2(0xb1)];console[_0x4642c2(0xae)]('Latest\x20version:\x20\x20'+_0x4ba3fa);const _0x5282d0=compareVersions(_0x50cdc5,_0x4ba3fa);if(_0x5282d0===0x0)console[_0x4642c2(0xae)](_0x4642c2(0xb8));else{if(_0x5282d0<0x0)console[_0x4642c2(0xae)]('\x0aYour\x20version\x20('+_0x50cdc5+_0x4642c2(0xb0)+_0x4ba3fa+').');else{const _0x33ebee=await _0x1693ed[_0x4642c2(0x97)](runInstall);if(_0x33ebee)console['log']('\x0aSuccessfully\x20updated\x20to\x20version\x20'+_0x4ba3fa),_0x30beca=_0x4ba3fa;else throw new Error('Update\x20failed.');}}}await _0x1693ed[_0x4642c2(0x8a)](reinstallSkills,_0x30beca);const _0x15327b=await _0x1693ed[_0x4642c2(0x8a)](isMarketplaceAdded,_0x4642c2(0xce)),_0x245c09=await _0x1693ed['UiYRm'](isPluginInstalled,'ranger@trailhead');if(_0x15327b){const _0x49bbda=await updateClaudeMarketplace();_0x49bbda&&console['log'](_0x1693ed['CeItz']);}if(_0x245c09){const _0x3f3f08=await _0x1693ed[_0x4642c2(0x97)](updateClaudePlugin);_0x3f3f08&&console[_0x4642c2(0xae)](_0x1693ed['KbMYZ']);const _0x4ab628=await updateClaudePlugin(_0x4642c2(0x9a));_0x4ab628&&console['log']((_0x3f3f08?'':'\x0a')+'Claude\x20plugin\x20updated\x20(project\x20scope).');}const _0x1eacac=await _0x1693ed[_0x4642c2(0x97)](migrateActiveProfileFile);_0x1eacac&&console[_0x4642c2(0xae)]('✓\x20Migrated\x20active\x20profile\x20file');const _0x4e6270=await _0x1693ed['SrmwX'](ensureActiveProfileGitignored);console[_0x4642c2(0xae)](_0x1693ed[_0x4642c2(0xbc)]);}
|