@ranger-testing/ranger-cli 2.5.0 → 2.5.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/claudeOverrideSettings.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/tokenRefresh.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
|
-
const
|
|
1
|
+
function _0x3fb0(_0x4e6d29,_0x26a463){_0x4e6d29=_0x4e6d29-0xf5;const _0x3003a5=_0x3003();let _0x3fb06d=_0x3003a5[_0x4e6d29];return _0x3fb06d;}function _0x3003(){const _0x223409=['trackCommandStart','374082UgxATl','IFPkU','10100YyivLt','GxSVV','env','ohKmm','WgCDZ','hook:session-start','90lPApRP','SwCPd','1850ljherh','2777522cmdCPa','15GSSdQY','1135VdLfbL','trackCommandEnd','stdin','684WOQIHB','qSkNC','master','2039136HppZDN','success','6869912jivYLo','192hxvYKx','935343ITaUsQ'];_0x3003=function(){return _0x223409;};return _0x3003();}(function(_0x25c17e,_0x5d74e7){const _0x29c4d8=_0x3fb0,_0x59c02a=_0x25c17e();while(!![]){try{const _0x54c349=-parseInt(_0x29c4d8(0xf6))/0x1*(parseInt(_0x29c4d8(0x10c))/0x2)+parseInt(_0x29c4d8(0xf9))/0x3*(-parseInt(_0x29c4d8(0x104))/0x4)+parseInt(_0x29c4d8(0xf5))/0x5*(-parseInt(_0x29c4d8(0x102))/0x6)+-parseInt(_0x29c4d8(0xfe))/0x7+parseInt(_0x29c4d8(0xfc))/0x8+parseInt(_0x29c4d8(0x100))/0x9*(-parseInt(_0x29c4d8(0x10a))/0xa)+parseInt(_0x29c4d8(0x10d))/0xb*(parseInt(_0x29c4d8(0xff))/0xc);if(_0x54c349===_0x5d74e7)break;else _0x59c02a['push'](_0x59c02a['shift']());}catch(_0x1365e0){_0x59c02a['push'](_0x59c02a['shift']());}}}(_0x3003,0x8a12d));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';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(_0x5191f7){const _0x5c5eb8=_0x3fb0,_0x12cbc4={'WgCDZ':function(_0x43eb16,_0x462596){return _0x43eb16&&_0x462596;},'GxSVV':function(_0x37aee8,_0x277346,_0x4a0e05){return _0x37aee8(_0x277346,_0x4a0e05);},'IFPkU':function(_0x553e42,_0x3722d2){return _0x553e42(_0x3722d2);},'ohKmm':function(_0x233feb,_0x1db390){return _0x233feb(_0x1db390);},'ASLrb':function(_0x13716f,_0x2d7358){return _0x13716f(_0x2d7358);},'SwCPd':_0x5c5eb8(0xfd),'qSkNC':function(_0x284638){return _0x284638();},'kyyEX':function(_0x50a068,_0xc9c361){return _0x50a068!==_0xc9c361;}};let _0x206849=_0x5191f7||'',_0x5be26c;if(!_0x5191f7){let _0x258f67='';for await(const _0x19f105 of process[_0x5c5eb8(0xf8)]){_0x258f67+=_0x19f105;}try{const _0x50c78e=JSON['parse'](_0x258f67);_0x206849=_0x50c78e['session_id']||'',_0x5be26c=_0x50c78e['source'];}catch{}const _0x10e312=process[_0x5c5eb8(0x106)]['CLAUDE_ENV_FILE'];if(_0x12cbc4[_0x5c5eb8(0x108)](_0x10e312,_0x206849))try{await _0x12cbc4[_0x5c5eb8(0x105)](appendFile,_0x10e312,'export\x20CLAUDE_SESSION_ID=\x22'+_0x206849+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x206849){shouldAutoEnableAfterClear(_0x5be26c)&&_0x12cbc4[_0x5c5eb8(0x103)](autoEnableAfterClear,_0x206849);_0x12cbc4['IFPkU'](initBranchTracking,_0x206849);const _0x144fbd=_0x12cbc4[_0x5c5eb8(0x107)](isSessionEnabled,_0x206849);try{const _0x57c4d9=_0x12cbc4['ASLrb'](createTelemetryCollector,_0x5c5eb8(0x109));await _0x57c4d9[_0x5c5eb8(0x101)]({'sessionId':_0x206849,'hooksEnabled':_0x144fbd}),await _0x57c4d9[_0x5c5eb8(0xf7)](_0x12cbc4[_0x5c5eb8(0x10b)]);}catch{}if(_0x144fbd){const _0x4006b3=_0x12cbc4[_0x5c5eb8(0xfa)](getCurrentBranch),_0x19c8ac=_0x4006b3&&_0x4006b3!=='main'&&_0x12cbc4['kyyEX'](_0x4006b3,_0x5c5eb8(0xfb))?'\x20(Branch:\x20'+_0x4006b3+')':'',_0x66e795={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x19c8ac}};console['log'](JSON['stringify'](_0x66e795));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x10915a,_0x390d42){const _0x5da77a=_0x5c38,_0x7bca3a=_0x10915a();while(!![]){try{const _0x103fa9=-parseInt(_0x5da77a(0x7c))/0x1*(-parseInt(_0x5da77a(0x8d))/0x2)+-parseInt(_0x5da77a(0x7f))/0x3+-parseInt(_0x5da77a(0x7e))/0x4*(-parseInt(_0x5da77a(0x8b))/0x5)+-parseInt(_0x5da77a(0x93))/0x6*(parseInt(_0x5da77a(0x82))/0x7)+parseInt(_0x5da77a(0x84))/0x8*(-parseInt(_0x5da77a(0x86))/0x9)+parseInt(_0x5da77a(0x7d))/0xa+parseInt(_0x5da77a(0x87))/0xb;if(_0x103fa9===_0x390d42)break;else _0x7bca3a['push'](_0x7bca3a['shift']());}catch(_0x31e09c){_0x7bca3a['push'](_0x7bca3a['shift']());}}}(_0x3a89,0x5d8a9));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x5c38(_0x2c8b55,_0x446c12){_0x2c8b55=_0x2c8b55-0x7c;const _0x3a8919=_0x3a89();let _0x5c38d2=_0x3a8919[_0x2c8b55];return _0x5c38d2;}function _0x3a89(){const _0x4c1040=['status','sessionId','205hDGOjp','DSIFX','5554knRVeu','featureId','WMZQE','some','Stop','QGPPp','6NdMKMZ','verification_in_progress','227OctejY','7230550LqykKS','30232WMZdUq','1704744IJqIqA','checklistItems','incomplete','3444742GqZCXQ','success','360536DOWDlz','verified','81ZINUid','2043690KbMlbu','https://dashboard.ranger.net/features/'];_0x3a89=function(){return _0x4c1040;};return _0x3a89();}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x3060a0){const _0xaff675=_0x5c38,_0x4cf7c7={'QGPPp':_0xaff675(0x91),'WMZQE':function(_0x25fcc4,_0x46559c){return _0x25fcc4&&_0x46559c;},'GjiNQ':function(_0x34483f,_0x4a6251,_0x2cf924,_0x3ad596){return _0x34483f(_0x4a6251,_0x2cf924,_0x3ad596);}},_0x4d0a0d=await getEnabledHookContext(_0x3060a0),_0x1c4180=_0x4d0a0d?.[_0xaff675(0x8a)]??null;let _0x4af62f=!![];if(!_0x1c4180){await trackStop(_0x1c4180,![],_0x4af62f);return;}try{const _0x3822ae=getSessionEntry(_0x1c4180);if(!_0x3822ae){await trackStop(_0x1c4180,!![],_0x4af62f);return;}const _0x5664f8=await getToken(),_0x17b431=_0xaff675(0x88)+_0x3822ae['featureId'];let _0x5384ca=null,_0x2d975b=![],_0x543bed=![];if(_0x5664f8)try{const _0x42babf=await getFeature(_0x3822ae[_0xaff675(0x8e)]);_0x5384ca=_0x42babf['currentSessionId']??null;const _0x4f4292=_0x42babf[_0xaff675(0x80)]['filter'](_0x46327d=>_0x46327d[_0xaff675(0x8a)]===_0x5384ca);_0x2d975b=_0x4f4292[_0xaff675(0x90)](_0x355423=>_0x355423[_0xaff675(0x89)]!==_0xaff675(0x85)&&_0x355423['status']!=='blocked'&&_0x355423['status']!=='closed'&&_0x355423[_0xaff675(0x89)]!==_0xaff675(0x81)),_0x543bed=_0x4f4292[_0xaff675(0x90)](_0x15be58=>_0x15be58[_0xaff675(0x89)]===_0xaff675(0x94));}catch{}if(_0x5664f8&&_0x5384ca&&_0x2d975b){if(!_0x543bed&&shouldShowStopReminder(_0x1c4180)){const _0x51de63={'hookSpecificOutput':{'hookEventName':_0x4cf7c7[_0xaff675(0x92)],'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'+_0x17b431}};console['log'](JSON['stringify'](_0x51de63));}}if(_0x4cf7c7[_0xaff675(0x8f)](_0x5664f8,_0x5384ca)&&!_0x2d975b)try{await concludeSession(_0x3822ae['featureId'],_0x5384ca);}catch{}await trackStop(_0x1c4180,!![],_0x4af62f);return;}catch{await _0x4cf7c7['GjiNQ'](trackStop,_0x1c4180,!![],_0x4af62f);return;}}async function trackStop(_0x3237a4,_0x457b1e,_0x306cfa){const _0x200d8a=_0x5c38,_0xaf9d90={'DSIFX':'hook:stop','MTTKg':function(_0x5c4eaa,_0x1314d0){return _0x5c4eaa??_0x1314d0;}};try{const _0x39fbda=createTelemetryCollector(_0xaf9d90[_0x200d8a(0x8c)]);await _0x39fbda['trackCommandStart']({'sessionId':_0xaf9d90['MTTKg'](_0x3237a4,undefined),'hooksEnabled':_0x457b1e,'stopAllowed':_0x306cfa}),await _0x39fbda['trackCommandEnd'](_0x200d8a(0x83));}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0xe3ef(){var _0x23763b=['50LHQQbU','54725KhIhhP','9WBrjlK','84cqROwQ','15807qdEkTV','119XsoRsm','68022xLFDwk','2482104FBngNV','2066235RYbezx','69525TjhCZC','435424Ydojov'];_0xe3ef=function(){return _0x23763b;};return _0xe3ef();}(function(_0x4bd7e5,_0x4989ab){var _0x4d6e87=_0x390c,_0x3ee93e=_0x4bd7e5();while(!![]){try{var _0x571d8c=parseInt(_0x4d6e87(0xc3))/0x1+-parseInt(_0x4d6e87(0xc4))/0x2+-parseInt(_0x4d6e87(0xc9))/0x3*(-parseInt(_0x4d6e87(0xc8))/0x4)+parseInt(_0x4d6e87(0xc2))/0x5+parseInt(_0x4d6e87(0xc0))/0x6*(parseInt(_0x4d6e87(0xca))/0x7)+parseInt(_0x4d6e87(0xc1))/0x8*(-parseInt(_0x4d6e87(0xc7))/0x9)+parseInt(_0x4d6e87(0xc5))/0xa*(-parseInt(_0x4d6e87(0xc6))/0xb);if(_0x571d8c===_0x4989ab)break;else _0x3ee93e['push'](_0x3ee93e['shift']());}catch(_0x4e3d47){_0x3ee93e['push'](_0x3ee93e['shift']());}}}(_0xe3ef,0x38f54));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';export{updateEnv}from'./updateEnv.js';function _0x390c(_0x2dfe4b,_0x2ba4ea){_0x2dfe4b=_0x2dfe4b-0xc0;var _0xe3ef5a=_0xe3ef();var _0x390cba=_0xe3ef5a[_0x2dfe4b];return _0x390cba;}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 _0xe23f(){const _0x88621f=['organizationName','user','18gPNxWP','message','Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','63QCBVHG','4PvtzYm','200556VBXwxX','stdin','58400fwvldE','139044kEzDfm','ZYIol','536ovArwF','isTTY','313415vJIXBP','28125vggwIY','230dXfboo','719wxmNSe','stdout','11825gyjTBy','UCkkh'];_0xe23f=function(){return _0x88621f;};return _0xe23f();}(function(_0xd86bc5,_0x589f38){const _0x2a7338=_0x87a6,_0x11658d=_0xd86bc5();while(!![]){try{const _0x5bad36=-parseInt(_0x2a7338(0xd5))/0x1*(parseInt(_0x2a7338(0xd0))/0x2)+-parseInt(_0x2a7338(0xce))/0x3*(parseInt(_0x2a7338(0xdf))/0x4)+-parseInt(_0x2a7338(0xd2))/0x5*(-parseInt(_0x2a7338(0xdb))/0x6)+parseInt(_0x2a7338(0xde))/0x7*(parseInt(_0x2a7338(0xcd))/0x8)+-parseInt(_0x2a7338(0xd3))/0x9*(-parseInt(_0x2a7338(0xd4))/0xa)+-parseInt(_0x2a7338(0xd7))/0xb+parseInt(_0x2a7338(0xe0))/0xc;if(_0x5bad36===_0x589f38)break;else _0x11658d['push'](_0x11658d['shift']());}catch(_0x11585c){_0x11658d['push'](_0x11658d['shift']());}}}(_0xe23f,0x18f4e));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x87a6(_0x1af774,_0x2e87cc){_0x1af774=_0x1af774-0xcd;const _0xe23f8e=_0xe23f();let _0x87a682=_0xe23f8e[_0x1af774];return _0x87a682;}import{getCurrentUser}from'./utils/userApi.js';export async function login(){const _0x52a425=_0x87a6,_0x18d786={'KajsJ':function(_0x2eab27){return _0x2eab27();},'ZYIol':function(_0x25cb2e,_0x9343b8){return _0x25cb2e(_0x9343b8);},'UCkkh':function(_0x17af51,_0x53c369){return _0x17af51 instanceof _0x53c369;}},_0x5a8b18=process[_0x52a425(0xe1)][_0x52a425(0xd1)]&&process[_0x52a425(0xd6)][_0x52a425(0xd1)];if(!_0x5a8b18)throw new Error(_0x52a425(0xdd));try{const _0x2ebb34=await _0x18d786['KajsJ'](runDeviceAuthFlow),_0x16ae6d=await _0x18d786[_0x52a425(0xcf)](getCurrentUser,_0x2ebb34);_0x16ae6d['success']?console['log']('\x0a✅\x20Logged\x20in\x20to\x20'+_0x16ae6d[_0x52a425(0xda)][_0x52a425(0xd9)]):console['log']('\x0a✅\x20API\x20key\x20stored\x20successfully');}catch(_0x4c54f8){throw new Error('Login\x20failed:\x20'+(_0x18d786[_0x52a425(0xd8)](_0x4c54f8,Error)?_0x4c54f8[_0x52a425(0xdc)]:_0x4c54f8));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1f2539,_0x576258){const _0x7a5be2=_0x3a3a,_0x41c4ac=_0x1f2539();while(!![]){try{const _0x1abcbb=-parseInt(_0x7a5be2(0x199))/0x1*(-parseInt(_0x7a5be2(0x16b))/0x2)+-parseInt(_0x7a5be2(0x18a))/0x3*(parseInt(_0x7a5be2(0x189))/0x4)+-parseInt(_0x7a5be2(0x186))/0x5*(-parseInt(_0x7a5be2(0x194))/0x6)+-parseInt(_0x7a5be2(0x19b))/0x7*(-parseInt(_0x7a5be2(0x191))/0x8)+-parseInt(_0x7a5be2(0x17f))/0x9*(-parseInt(_0x7a5be2(0x18f))/0xa)+parseInt(_0x7a5be2(0x18b))/0xb+parseInt(_0x7a5be2(0x187))/0xc*(-parseInt(_0x7a5be2(0x180))/0xd);if(_0x1abcbb===_0x576258)break;else _0x41c4ac['push'](_0x41c4ac['shift']());}catch(_0x3fbfbc){_0x41c4ac['push'](_0x41c4ac['shift']());}}}(_0x4968,0x53a21));function _0x3a3a(_0xa19923,_0xa36fb0){_0xa19923=_0xa19923-0x164;const _0x49686e=_0x4968();let _0x3a3a91=_0x49686e[_0xa19923];return _0x3a3a91;}import{join}from'path';import{existsSync}from'fs';import _0x561be8 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(_0x2d2d7a){const _0x48df8a=_0x3a3a,_0x231b61={'UBksf':function(_0x3d1fe0,_0x215813){return _0x3d1fe0(_0x215813);},'mNOju':function(_0x70877d,_0x241ead,_0x50ccea){return _0x70877d(_0x241ead,_0x50ccea);},'TaXNm':'project','UFaWv':'\x0a📦\x20Claude\x20Code\x20Plugin\x0a','igxPI':_0x48df8a(0x183),'TGWPN':'User\x20(available\x20in\x20all\x20your\x20projects)','uxHCP':'user','GUXpK':'✓\x20Marketplace\x20already\x20added','YBsmr':_0x48df8a(0x177),'GcyXS':'add','bjagm':_0x48df8a(0x16f),'zyYvb':_0x48df8a(0x17b),'yGGbP':'\x0aYou\x20can\x20install\x20manually\x20with:','qsLvU':_0x48df8a(0x179),'RNClQ':'install','xqzML':'ranger@trailhead','WqnZp':'❌\x20Failed\x20to\x20install\x20plugin:'},_0x15a3ef=await _0x231b61[_0x48df8a(0x174)](isPluginInstalled,_0x48df8a(0x172));if(_0x15a3ef)return console['log']('✓\x20Claude\x20Code\x20plugin\x20already\x20installed'),![];const _0x243da2=existsSync(_0x231b61['mNOju'](join,getProjectRoot(),'.claude'));let _0x524e46;if(_0x2d2d7a)_0x524e46=_0x2d2d7a;else{if(_0x243da2)_0x524e46=_0x231b61[_0x48df8a(0x16d)];else{console[_0x48df8a(0x173)](_0x231b61[_0x48df8a(0x19c)]);const _0x27beaa=await _0x561be8['prompt']([{'type':_0x48df8a(0x197),'name':_0x231b61[_0x48df8a(0x175)],'message':'Where\x20should\x20the\x20plugin\x20be\x20installed?','choices':[{'name':_0x231b61[_0x48df8a(0x196)],'value':_0x231b61['uxHCP']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x231b61['TaXNm']}],'default':_0x48df8a(0x16a)}]);_0x524e46=_0x27beaa['pluginScope'];}}console['log']('\x0aInstalling\x20Claude\x20Code\x20plugin\x20('+_0x524e46+_0x48df8a(0x18e));const _0x2be9dc=await isMarketplaceAdded('trailhead');let _0x3a4b96=_0x2be9dc;if(_0x2be9dc)console['log'](_0x231b61[_0x48df8a(0x190)]);else{const _0x5c99ba=await runClaudeCommand([_0x48df8a(0x176),_0x231b61[_0x48df8a(0x169)],_0x231b61['GcyXS'],_0x231b61[_0x48df8a(0x19d)]]);!_0x5c99ba[_0x48df8a(0x19e)]?(console[_0x48df8a(0x16e)](_0x231b61[_0x48df8a(0x171)],_0x5c99ba['error']),console[_0x48df8a(0x173)](_0x231b61[_0x48df8a(0x181)]),console[_0x48df8a(0x173)](_0x231b61[_0x48df8a(0x17d)]),console[_0x48df8a(0x173)](_0x48df8a(0x167)+_0x524e46)):_0x3a4b96=!![];}if(_0x3a4b96){const _0x2fca23=await runClaudeCommand(['plugin',_0x231b61['RNClQ'],_0x231b61[_0x48df8a(0x195)],_0x48df8a(0x170),_0x524e46]);if(!_0x2fca23[_0x48df8a(0x19e)])console['error'](_0x231b61['WqnZp'],_0x2fca23[_0x48df8a(0x16e)]),console['log'](_0x231b61['yGGbP']),console[_0x48df8a(0x173)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x524e46);else{console['log'](_0x48df8a(0x17a));const _0x5b61c6=[_0x48df8a(0x176),'enable',_0x231b61[_0x48df8a(0x195)]];_0x524e46===_0x48df8a(0x17c)&&_0x5b61c6[_0x48df8a(0x185)](_0x48df8a(0x170),_0x48df8a(0x17c));const _0x40932a=await runClaudeCommand(_0x5b61c6,{'captureOutput':!![]}),_0x33f9a5=_0x40932a[_0x48df8a(0x165)]?.[_0x48df8a(0x18c)](_0x48df8a(0x164));!_0x40932a['success']&&!_0x33f9a5?console['error'](_0x48df8a(0x19a),_0x40932a['error']):console[_0x48df8a(0x173)](_0x48df8a(0x166));}}return!![];}export async function ensureClaudeSkills(_0x446433){const _0xe5a3a8=_0x3a3a,_0x5e603e={'JauDJ':function(_0x406e30,_0x83c3a5){return _0x406e30(_0x83c3a5);},'NePrh':_0xe5a3a8(0x18d),'Lujhj':function(_0x488863,_0x5ed3ee){return _0x488863(_0x5ed3ee);},'JwmEX':function(_0x2f39e9,_0x41fe6c,_0x4c7b79,_0x4b1481){return _0x2f39e9(_0x41fe6c,_0x4c7b79,_0x4b1481);},'fMSEa':_0xe5a3a8(0x17c),'epCMy':function(_0x4a294a,_0x50f635){return _0x4a294a||_0x50f635;},'HjSsY':'.claude','zHwTf':function(_0x3fe729,_0x11315f){return _0x3fe729(_0x11315f);}},_0x3d2c83=_0x5e603e[_0xe5a3a8(0x198)](existsSync,join(_0x5e603e[_0xe5a3a8(0x198)](getSkillsDir,'user'),_0xe5a3a8(0x184),_0x5e603e['NePrh'])),_0x5eb9fb=_0x5e603e[_0xe5a3a8(0x192)](existsSync,_0x5e603e[_0xe5a3a8(0x168)](join,_0x5e603e['Lujhj'](getSkillsDir,_0x5e603e['fMSEa']),'ranger','SKILL.md'));if(_0x5e603e['epCMy'](_0x3d2c83,_0x5eb9fb))return console['log'](_0xe5a3a8(0x193)),![];const _0x224599=_0x5e603e[_0xe5a3a8(0x192)](existsSync,join(getProjectRoot(),_0x5e603e[_0xe5a3a8(0x16c)]));let _0x3ca160=!![];if(_0x446433)await skillup({'autoInstall':_0x446433,'suppressUsage':!![]});else{if(_0x224599)await _0x5e603e[_0xe5a3a8(0x178)](skillup,{'autoInstall':_0x5e603e[_0xe5a3a8(0x188)],'suppressUsage':!![]});else{const _0x29a650=await _0x561be8['prompt']([{'type':_0xe5a3a8(0x17e),'name':'wantsSkillup','message':_0xe5a3a8(0x182),'default':!![]}]);_0x3ca160=_0x29a650['wantsSkillup'],_0x3ca160&&await _0x5e603e[_0xe5a3a8(0x192)](skillup,{'suppressUsage':!![]});}}return _0x3ca160;}function _0x4968(){const _0xf4e5b4=['zHwTf','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','❌\x20Failed\x20to\x20add\x20marketplace:','project','qsLvU','confirm','9UZwISC','17933071qoeyfH','yGGbP','Would\x20you\x20like\x20to\x20install\x20skills?','pluginScope','ranger','push','5JgxgKb','12QCtvxt','fMSEa','208900QrABJi','3MaDUKC','4432934SVMhPM','includes','SKILL.md','\x20level)...\x0a','1989810YCEiIy','GUXpK','21656htdHGZ','Lujhj','✓\x20Ranger\x20skills\x20already\x20installed','2695374NfCQbp','xqzML','TGWPN','list','JauDJ','13555ZUvJTb','⚠\x20Failed\x20to\x20enable\x20plugin:','1379AqZBYq','UFaWv','bjagm','success','already\x20enabled','output','✓\x20Claude\x20Code\x20plugin\x20enabled','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','JwmEX','YBsmr','user','28hgzjGM','HjSsY','TaXNm','error','ranger-testing/trailhead','--scope','zyYvb','ranger@trailhead','log','UBksf','igxPI','plugin','marketplace'];_0x4968=function(){return _0xf4e5b4;};return _0x4968();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x2ba355,_0x131420){const _0x118834=_0x6405,_0x1278ae=_0x2ba355();while(!![]){try{const _0x4e35b4=parseInt(_0x118834(0x162))/0x1*(-parseInt(_0x118834(0x155))/0x2)+-parseInt(_0x118834(0x156))/0x3*(parseInt(_0x118834(0x15e))/0x4)+-parseInt(_0x118834(0x161))/0x5+parseInt(_0x118834(0x14f))/0x6+parseInt(_0x118834(0x152))/0x7+-parseInt(_0x118834(0x14e))/0x8+parseInt(_0x118834(0x150))/0x9;if(_0x4e35b4===_0x131420)break;else _0x1278ae['push'](_0x1278ae['shift']());}catch(_0x4bd049){_0x1278ae['push'](_0x1278ae['shift']());}}}(_0x4228,0x6d0f8));import{join}from'path';function _0x6405(_0x144c30,_0x53cc3f){_0x144c30=_0x144c30-0x14d;const _0x422854=_0x4228();let _0x6405e7=_0x422854[_0x144c30];return _0x6405e7;}import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';function _0x4228(){const _0x18eacb=['opencode.json','GdNGu','error','Where\x20should\x20the\x20plugin\x20be\x20installed?','parse','6652eLCRDA','project','user','4247660xamejo','1MXkofU','isArray','2518264FLGDbB','889092FfjeTZ','12155454aDWIbq','log','3386733rZYyXG','$schema','pEsci','201022VTYfJh','489QKtcBh','plugin','lcwSR'];_0x4228=function(){return _0x18eacb;};return _0x4228();}import _0x1116b0 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x119a60){const _0x6462e7=_0x6405,_0x37a626={'lcwSR':function(_0x13d958,_0x1fa573,_0x3e37af){return _0x13d958(_0x1fa573,_0x3e37af);},'wFDJP':function(_0x19355d,_0x5bd9ef){return _0x19355d(_0x5bd9ef);},'gTLgw':'pluginScope','pEsci':'User\x20(available\x20in\x20all\x20your\x20projects)','oGGbZ':'Project\x20(shared\x20with\x20team\x20via\x20git)','tKNil':'project','vOnCy':'user','MJeXu':'@ranger-testing/opencode-plugin','hNiAp':'utf-8','GdNGu':function(_0xba1985,_0x404a6c){return _0xba1985(_0x404a6c);}},_0x17c88a=existsSync(_0x37a626[_0x6462e7(0x158)](join,_0x37a626['wFDJP'](getOpencodeConfigDir,_0x6462e7(0x15f)),_0x6462e7(0x159)));let _0x411173;if(_0x119a60)_0x411173=_0x119a60;else{if(_0x17c88a)_0x411173='project';else{console[_0x6462e7(0x151)]('\x0a📦\x20OpenCode\x20Plugin\x0a');const _0x1fe839=await _0x1116b0['prompt']([{'type':'list','name':_0x37a626['gTLgw'],'message':_0x6462e7(0x15c),'choices':[{'name':_0x37a626[_0x6462e7(0x154)],'value':_0x6462e7(0x160)},{'name':_0x37a626['oGGbZ'],'value':_0x37a626['tKNil']}],'default':_0x37a626['vOnCy']}]);_0x411173=_0x1fe839['pluginScope'];}}const _0x8799ea=_0x37a626[_0x6462e7(0x158)](join,getOpencodeConfigDir(_0x411173),_0x6462e7(0x159)),_0x45520e=_0x37a626['MJeXu'],_0x4e8e9e='https://opencode.ai/config.json';let _0x626c10={};if(existsSync(_0x8799ea))try{const _0x4d253d=await readFile(_0x8799ea,_0x37a626['hNiAp']);_0x626c10=JSON[_0x6462e7(0x15d)](_0x4d253d);}catch(_0x5d9d9f){return console[_0x6462e7(0x15b)]('⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.'),{'configured':![],'scope':_0x411173,'error':'Failed\x20to\x20read\x20opencode.json','details':_0x5d9d9f};}const _0x4c1999=Array[_0x6462e7(0x14d)](_0x626c10['plugin'])?_0x626c10['plugin']:[];if(_0x4c1999['includes'](_0x45520e))return console['log']('✓\x20OpenCode\x20plugin\x20already\x20configured'),{'configured':![],'scope':_0x411173};return _0x626c10[_0x6462e7(0x153)]=_0x626c10['$schema']||_0x4e8e9e,_0x626c10[_0x6462e7(0x157)]=[..._0x4c1999,_0x45520e],await _0x37a626['lcwSR'](mkdir,_0x37a626[_0x6462e7(0x15a)](getOpencodeConfigDir,_0x411173),{'recursive':!![]}),await writeFile(_0x8799ea,JSON['stringify'](_0x626c10,null,0x2)+'\x0a'),console[_0x6462e7(0x151)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x411173};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2e2267,_0x5b5681){const _0x50f97c=_0x5e58,_0x49b6e1=_0x2e2267();while(!![]){try{const _0x42bf11=parseInt(_0x50f97c(0x8d))/0x1*(parseInt(_0x50f97c(0xa9))/0x2)+parseInt(_0x50f97c(0xb1))/0x3*(-parseInt(_0x50f97c(0x7f))/0x4)+parseInt(_0x50f97c(0xa0))/0x5+parseInt(_0x50f97c(0x7a))/0x6*(-parseInt(_0x50f97c(0x9e))/0x7)+parseInt(_0x50f97c(0xa2))/0x8+parseInt(_0x50f97c(0x96))/0x9*(parseInt(_0x50f97c(0x93))/0xa)+-parseInt(_0x50f97c(0x8c))/0xb;if(_0x42bf11===_0x5b5681)break;else _0x49b6e1['push'](_0x49b6e1['shift']());}catch(_0x444e4c){_0x49b6e1['push'](_0x49b6e1['shift']());}}}(_0x4ed6,0x3ab62));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';function _0x4ed6(){const _0x54e8bf=['success','trackPhaseEnd','2687663EXrqIh','21617GmlfJm','log','ZwnFN','vnpQc','dir_setup','\x22:\x20','130FsyVzl','KOLwt','filter','107703ktaRGn','Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.','add','No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','ranger-testing/trailhead','path','skills','hDGJn','126476PNttrT','auth.json.enc','257540oDVPLC','✓\x20Claude\x20Code\x20plugin\x20installed','1925288nKAgdD','skipChromium','✓\x20Active\x20profile:\x20','trackPhaseStart','QTcVN','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','Nqsln','22JXpAfO','message','RLIlI','.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.','oYnvZ','Failed\x20to\x20install\x20plugin:','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','name','225HtFSVX','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','isDirectory','BEkrk','ranger@trailhead','AnSIO','profile_activate','baseUrl','length','plugin','54vujayk','auth.json','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','CcAom','join','2032IXlSli','auth','FIIKx','bxESN','BxkDz','vRjYL','XEwnP','kjKES','No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','install'];_0x4ed6=function(){return _0x54e8bf;};return _0x4ed6();}function _0x5e58(_0x1041d4,_0x595761){_0x1041d4=_0x1041d4-0x77;const _0x4ed61b=_0x4ed6();let _0x5e5861=_0x4ed61b[_0x1041d4];return _0x5e5861;}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(_0x1d503f){const _0xd5b240=_0x5e58,_0x5248e9={'oYnvZ':function(_0x28e1f5){return _0x28e1f5();},'hDGJn':function(_0x43ab79,_0x491c87,_0x7763ee){return _0x43ab79(_0x491c87,_0x7763ee);},'jhWDs':function(_0x3bbf6a,_0x76c3d7){return _0x3bbf6a+_0x76c3d7;},'bxESN':function(_0x19ef5e,_0x3ffe83){return _0x19ef5e===_0x3ffe83;},'ZwnFN':function(_0x324fa3,_0x47d93f){return _0x324fa3===_0x47d93f;}},_0x1693a9=_0x5248e9[_0xd5b240(0xad)](getRangerDir),_0x466070=join(_0x1693a9,'ci');if(_0x1d503f){const _0x728d54=_0x5248e9['hDGJn'](join,_0x466070,_0x1d503f);return{'name':_0x1d503f,'path':_0x728d54};}if(!existsSync(_0x466070))throw new Error(_0x5248e9['jhWDs'](_0xd5b240(0x99),'Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.'));const _0x222554=await _0x5248e9[_0xd5b240(0x9d)](readdir,_0x466070,{'withFileTypes':!![]}),_0x525b5b=_0x222554[_0xd5b240(0x95)](_0x42ff93=>_0x42ff93[_0xd5b240(0xb3)]())['map'](_0x37d794=>_0x37d794['name']);if(_0x5248e9[_0xd5b240(0x82)](_0x525b5b[_0xd5b240(0x78)],0x0))throw new Error(_0xd5b240(0x87)+_0xd5b240(0x97));if(_0x5248e9[_0xd5b240(0x8f)](_0x525b5b['length'],0x1)){const _0x13d48c=_0x525b5b[0x0];return console['log']('Auto-detected\x20CI\x20profile:\x20'+_0x13d48c),{'name':_0x13d48c,'path':join(_0x466070,_0x13d48c)};}throw new Error('Multiple\x20CI\x20profiles\x20found:\x20'+_0x525b5b[_0xd5b240(0x7e)](',\x20')+_0xd5b240(0xac));}async function installPluginNonInteractive(){const _0x52df87=_0x5e58,_0x102930={'XEwnP':_0x52df87(0xb5),'CcAom':_0x52df87(0x88),'vnpQc':_0x52df87(0x79),'Aowdk':_0x52df87(0x98),'ixeMd':_0x52df87(0xb2),'WBYMQ':_0x52df87(0xaf),'UprcT':_0x52df87(0xa1)},_0xd2905e=await isPluginInstalled(_0x102930[_0x52df87(0x85)]);if(_0xd2905e)return console['log'](_0x102930[_0x52df87(0x7d)]),![];console[_0x52df87(0x8e)]('Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...');const _0x29b03a=await isMarketplaceAdded('trailhead');let _0x4a3977=_0x29b03a;if(_0x29b03a)console[_0x52df87(0x8e)]('✓\x20Marketplace\x20already\x20added');else{const _0x4f42ed=await runClaudeCommand([_0x102930[_0x52df87(0x90)],'marketplace',_0x102930['Aowdk'],_0x52df87(0x9a)]);!_0x4f42ed[_0x52df87(0x8a)]?(console['error']('Failed\x20to\x20add\x20marketplace:',_0x4f42ed['error']),console['log'](_0x102930['ixeMd'])):_0x4a3977=!![];}if(_0x4a3977){const _0x7cd700=await runClaudeCommand([_0x52df87(0x79),_0x52df87(0x89),_0x52df87(0xb5),'--scope','project']);!_0x7cd700[_0x52df87(0x8a)]?(console['error'](_0x52df87(0xae),_0x7cd700['error']),console['log'](_0x102930['WBYMQ'])):console['log'](_0x102930['UprcT']);}return!![];}export async function setupCi(_0x342b25,_0x45d370,_0x58b9cd){const _0x3b2ed1=_0x5e58,_0x3a3c63={'RLIlI':'\x0a🔧\x20Ranger\x20CI\x20Setup\x0a','sQPAF':_0x3b2ed1(0x80),'OgYSA':_0x3b2ed1(0x91),'kjKES':function(_0x19aab6,_0x9e9c8e,_0x48b4da){return _0x19aab6(_0x9e9c8e,_0x48b4da);},'wlGTM':'sessions','BEkrk':function(_0x2b22cf,_0x491c0b){return _0x2b22cf(_0x491c0b);},'AnSIO':function(_0x11f8fe){return _0x11f8fe();},'vRjYL':function(_0x2c05bf,_0x5686ef){return _0x2c05bf(_0x5686ef);},'Nqsln':'settings.json','SuRXl':_0x3b2ed1(0x9f),'BxkDz':function(_0x35bc90,_0x4206e3){return _0x35bc90(_0x4206e3);},'QTcVN':'profile_activate','KOLwt':_0x3b2ed1(0x9c),'FIIKx':'\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a'};console['log'](_0x3a3c63[_0x3b2ed1(0xab)]),_0x58b9cd?.[_0x3b2ed1(0xa5)](_0x3a3c63['sQPAF']),await authenticate(_0x342b25),_0x58b9cd?.['trackPhaseEnd'](_0x3b2ed1(0x80)),_0x58b9cd?.[_0x3b2ed1(0xa5)](_0x3a3c63['OgYSA']);const {path:_0x10991b,installed:_0x9db16e}=await ensureRangerDir();await writeRangerGitignore(_0x10991b);const _0xa3eccb=_0x3a3c63['kjKES'](join,_0x10991b,_0x3a3c63['wlGTM']);!_0x3a3c63[_0x3b2ed1(0xb4)](existsSync,_0xa3eccb)&&await mkdir(_0xa3eccb,{'recursive':!![]});_0x58b9cd?.[_0x3b2ed1(0x8b)]('dir_setup',{'installed':_0x9db16e}),_0x58b9cd?.[_0x3b2ed1(0xa5)]('chromium');let _0x448f48=![];_0x45d370?.[_0x3b2ed1(0xa3)]?console['log'](_0x3b2ed1(0xa7)):_0x448f48=await _0x3a3c63[_0x3b2ed1(0xb6)](ensureChromium);_0x58b9cd?.[_0x3b2ed1(0x8b)]('chromium',{'installed':_0x448f48,'skipped':!!_0x45d370?.['skipChromium']}),_0x58b9cd?.['trackPhaseStart'](_0x3b2ed1(0xb7));const _0x5c8304=await _0x3a3c63[_0x3b2ed1(0x84)](findCiProfile,_0x45d370?.['profile']);let _0x7c7f35=![];_0x45d370?.['baseUrl']&&(await _0x3a3c63['kjKES'](mkdir,_0x5c8304[_0x3b2ed1(0x9b)],{'recursive':!![]}),await saveSettings(_0x5c8304[_0x3b2ed1(0xb0)],{'baseUrl':_0x45d370[_0x3b2ed1(0x77)],'headless':!![]}),console[_0x3b2ed1(0x8e)]('✓\x20Created\x20profile\x20settings:\x20baseUrl='+_0x45d370[_0x3b2ed1(0x77)]),_0x7c7f35=!![]);const _0x5b1beb=_0x3a3c63['kjKES'](join,_0x5c8304[_0x3b2ed1(0x9b)],_0x3a3c63[_0x3b2ed1(0xa8)]);if(!_0x3a3c63['BEkrk'](existsSync,_0x5b1beb)&&!_0x7c7f35)throw new Error('CI\x20profile\x20\x22'+_0x5c8304[_0x3b2ed1(0xb0)]+'\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.');const _0x291b84=_0x3a3c63[_0x3b2ed1(0x86)](join,_0x5c8304[_0x3b2ed1(0x9b)],_0x3b2ed1(0x7b)),_0x210749=join(_0x5c8304['path'],_0x3a3c63['SuRXl']),_0x4bfb6d=_0x3a3c63['BEkrk'](existsSync,_0x291b84),_0x10d6d0=existsSync(_0x210749);if(_0x10d6d0)try{const _0x51c903=await getToken();if(!_0x51c903)throw new Error('No\x20API\x20token\x20available\x20for\x20decryption');const _0xbb6912=await _0x3a3c63[_0x3b2ed1(0x84)](readFile,_0x210749);decrypt(_0xbb6912,_0x51c903),console[_0x3b2ed1(0x8e)]('✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)');}catch(_0x1f936b){const _0x52f135=_0x1f936b instanceof Error?_0x1f936b[_0x3b2ed1(0xaa)]:_0x3a3c63[_0x3b2ed1(0x83)](String,_0x1f936b);throw new Error('Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22'+_0x5c8304[_0x3b2ed1(0xb0)]+_0x3b2ed1(0x92)+_0x52f135);}else _0x4bfb6d?console['log']('✓\x20Auth\x20state\x20found'):console['log'](_0x3b2ed1(0x7c));await _0x3a3c63['BxkDz'](writeActiveProfileName,_0x5c8304['name']),console[_0x3b2ed1(0x8e)](_0x3b2ed1(0xa4)+_0x5c8304['name']),_0x58b9cd?.[_0x3b2ed1(0x8b)](_0x3a3c63[_0x3b2ed1(0xa6)],{'profileName':_0x5c8304[_0x3b2ed1(0xb0)],'hasAuth':_0x4bfb6d,'hasEncryptedAuth':_0x10d6d0,'createdSettings':_0x7c7f35}),_0x58b9cd?.[_0x3b2ed1(0xa5)](_0x3b2ed1(0x79));const _0xcf7555=await _0x3a3c63[_0x3b2ed1(0xb6)](installPluginNonInteractive);_0x58b9cd?.['trackPhaseEnd'](_0x3b2ed1(0x79),{'installed':_0xcf7555}),_0x58b9cd?.['trackPhaseStart'](_0x3a3c63[_0x3b2ed1(0x94)]),await skillup({'autoInstall':'project'}),_0x58b9cd?.[_0x3b2ed1(0x8b)]('skills'),console[_0x3b2ed1(0x8e)](_0x3a3c63[_0x3b2ed1(0x81)]);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xf218e8,_0x4905cf){const _0xbd23a3=_0x3a17,_0x42fe10=_0xf218e8();while(!![]){try{const _0x2a5661=-parseInt(_0xbd23a3(0xd9))/0x1+parseInt(_0xbd23a3(0xd5))/0x2+-parseInt(_0xbd23a3(0xda))/0x3*(-parseInt(_0xbd23a3(0xd4))/0x4)+parseInt(_0xbd23a3(0xd3))/0x5+-parseInt(_0xbd23a3(0xea))/0x6*(parseInt(_0xbd23a3(0xee))/0x7)+parseInt(_0xbd23a3(0xe9))/0x8*(parseInt(_0xbd23a3(0xef))/0x9)+parseInt(_0xbd23a3(0xe4))/0xa;if(_0x2a5661===_0x4905cf)break;else _0x42fe10['push'](_0x42fe10['shift']());}catch(_0x55bfeb){_0x42fe10['push'](_0x42fe10['shift']());}}}(_0x1098,0x5a621));import{basename}from'path';import _0x4fcc19 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';function _0x3a17(_0x502f88,_0x3428d7){_0x502f88=_0x502f88-0xc5;const _0x10989f=_0x1098();let _0x3a1732=_0x10989f[_0x502f88];return _0x3a1732;}function _0x1098(){const _0x1e4c14=['Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20(','nMBcJ','❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','\x20--opencode','gwbnO','717280OdIcXl','4CLywYD','1285276UuLkYT','All\x20projects\x20(','autoInstall','This\x20project\x20only\x20(','711513CYmRYf','1417179oqnUod','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','opencode','isTTY','\x0a✅\x20Installed\x20','Pnxjd','VeOfz','platform','/skills/','prompt','1569640bXTVHr','\x20<your-api-token>','tXAnE','\x20\x203.\x20Run:\x20ranger\x20skillup','\x20\x202.\x20Run:\x20ranger\x20setup','4856hRVZVE','12JQTOGW','user-level','stdin','/.opencode/skills/','1178674SNEXBg','45HymCrT','✓\x20Found\x20API\x20token','Where\x20should\x20skills\x20be\x20installed?','rdlip','\x0a📦\x20Installing\x20skills...\x0a','AEmGi','log','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','uYYfX','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','\x20skill','warn'];_0x1098=function(){return _0x1e4c14;};return _0x1098();}export async function skillup(_0xa8076c={}){const _0x4fd5d6=_0x3a17,_0x3d69cd={'pdpKh':'claude','rdlip':function(_0x3cb2ce){return _0x3cb2ce();},'lEitx':_0x4fd5d6(0xd0),'YNqTj':'To\x20get\x20started:','lnuhY':'\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','AEmGi':function(_0x3def4e,_0xf50fbf){return _0x3def4e===_0xf50fbf;},'sxhht':function(_0x431b77){return _0x431b77();},'Pnxjd':function(_0x571087,_0x22f8c3){return _0x571087(_0x22f8c3);},'gwbnO':'user','qVpvd':function(_0x36e52e){return _0x36e52e();},'tXAnE':function(_0x360210,_0x28a803){return _0x360210===_0x28a803;},'NWyhA':'list','VeOfz':'installLevel','dAhez':'project','wtVsq':_0x4fd5d6(0xc6),'uYYfX':_0x4fd5d6(0xdb),'nMBcJ':'project-level','LoAdh':function(_0x2c1334,_0x39d965){return _0x2c1334>_0x39d965;},'nFDDP':_0x4fd5d6(0xdc)};console['log'](_0x4fd5d6(0xcb));const _0x17d6a1=_0xa8076c[_0x4fd5d6(0xe1)]??_0x3d69cd['pdpKh'],_0x61c0d5=await _0x3d69cd[_0x4fd5d6(0xc5)](getToken);if(!_0x61c0d5){console['log'](_0x3d69cd['lEitx']),console['log'](_0x3d69cd['YNqTj']),console[_0x4fd5d6(0xc8)](_0x3d69cd['lnuhY']),console[_0x4fd5d6(0xc8)](_0x4fd5d6(0xe8)+(_0x3d69cd[_0x4fd5d6(0xc7)](_0x17d6a1,_0x4fd5d6(0xdc))?_0x4fd5d6(0xd1):'')+_0x4fd5d6(0xe5)),console['log'](_0x4fd5d6(0xe7)+(_0x3d69cd['AEmGi'](_0x17d6a1,_0x4fd5d6(0xdc))?'\x20--opencode':'')+'\x0a');return;}console['log'](_0x4fd5d6(0xf0));const _0x4796e9=_0x3d69cd['sxhht'](getProjectRoot),_0xb9f7fe=_0x3d69cd[_0x4fd5d6(0xdf)](basename,_0x4796e9),_0x16db8f=_0x3d69cd['AEmGi'](_0x17d6a1,'opencode')?_0x3d69cd['Pnxjd'](getOpencodeConfigDir,_0x3d69cd['gwbnO'])+_0x4fd5d6(0xe2):_0x3d69cd['qVpvd'](getClaudeConfigDir)+'/skills/',_0x1101f4=_0x3d69cd[_0x4fd5d6(0xe6)](_0x17d6a1,_0x4fd5d6(0xdc))?_0x4796e9+_0x4fd5d6(0xed):_0x4796e9+'/.claude/skills/',_0x2a4df5=process[_0x4fd5d6(0xec)][_0x4fd5d6(0xdd)]&&process['stdout']['isTTY'];let _0x2e89a4;if(_0xa8076c[_0x4fd5d6(0xd7)])_0x2e89a4=_0xa8076c['autoInstall'];else{if(_0x2a4df5){const _0x4a6f0a=await _0x4fcc19[_0x4fd5d6(0xe3)]([{'type':_0x3d69cd['NWyhA'],'name':_0x3d69cd[_0x4fd5d6(0xe0)],'message':_0x4fd5d6(0xf1),'choices':[{'name':_0x4fd5d6(0xd6)+_0x16db8f+')','value':'user'},{'name':_0x4fd5d6(0xd8)+_0x1101f4+')','value':'project'}]}]);_0x2e89a4=_0x4a6f0a['installLevel'];}else _0x2e89a4=_0x3d69cd['dAhez'],console['log'](_0x4fd5d6(0xce)+_0x1101f4+')');}let _0x132ef5=0x0;const _0x1ec77d=getCurrentVersion();console['log'](_0x3d69cd['wtVsq']);try{const _0x1c5e45=await installSkill('ranger',{'cliVersion':_0x1ec77d,'level':_0x2e89a4,'platform':_0x17d6a1});_0x1c5e45&&_0x132ef5++;}catch(_0x49a24d){console[_0x4fd5d6(0xcd)](_0x3d69cd[_0x4fd5d6(0xca)],_0x49a24d instanceof Error?_0x49a24d['message']:_0x49a24d);}if(_0x132ef5>0x0){const _0x1bdde8=_0x2e89a4===_0x3d69cd[_0x4fd5d6(0xd2)]?_0x4fd5d6(0xeb):_0x3d69cd[_0x4fd5d6(0xcf)];console[_0x4fd5d6(0xc8)](_0x4fd5d6(0xde)+_0x132ef5+'\x20'+_0x1bdde8+_0x4fd5d6(0xcc)+(_0x3d69cd['LoAdh'](_0x132ef5,0x1)?'s':'')+'\x20successfully!\x0a'),!_0xa8076c['suppressUsage']&&(console['log']('To\x20use:'),_0x17d6a1===_0x3d69cd['nFDDP']?console['log']('\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.'):console[_0x4fd5d6(0xc8)]('\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[_0x4fd5d6(0xc8)](_0x4fd5d6(0xc9));}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x10aece=_0x24ee;(function(_0xf7b8b5,_0x3205cb){const _0x395f66=_0x24ee,_0xfd850c=_0xf7b8b5();while(!![]){try{const _0x4f7bd3=parseInt(_0x395f66(0xd4))/0x1*(-parseInt(_0x395f66(0xc1))/0x2)+parseInt(_0x395f66(0x80))/0x3*(parseInt(_0x395f66(0xd6))/0x4)+-parseInt(_0x395f66(0xd0))/0x5+parseInt(_0x395f66(0xa7))/0x6+-parseInt(_0x395f66(0xa1))/0x7+parseInt(_0x395f66(0x84))/0x8+parseInt(_0x395f66(0x91))/0x9*(parseInt(_0x395f66(0x9a))/0xa);if(_0x4f7bd3===_0x3205cb)break;else _0xfd850c['push'](_0xfd850c['shift']());}catch(_0xcd1340){_0xfd850c['push'](_0xfd850c['shift']());}}}(_0x5341,0x7f2c0));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x38a749 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,getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';function _0x5341(){const _0xa87ff5=['cJVXz','ranger','\x0aInstalling\x20Chromium\x20browser...\x0a','6879992WBdWpp','profile','trackPhaseStart','\x0a⚠\x20Skipping\x20Chromium\x20installation.','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','hYSCv','✓\x20.ranger/\x20directory\x20already\x20exists','playwright@','Installation\x20failed\x20with\x20exit\x20code\x20','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','provided_token','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','27UUuFWQ','Authentication\x20failed:\x20','Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','HWFIq','isTTY','\x20and\x20prompt\x20the\x20coding','bntdg','GITHUB_ENV','existing_token','934930apMfuD','log','hPMWj','No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.','skipChromium','RbVtf','message','2049019mSPxQP','\x0a❌\x20Profile\x20setup\x20failed:','executablePath','auth','url','brwtk','1896114bUmvUR','win32','close','chromium','✓\x20Already\x20authenticated\x20to\x20','method','\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how','playwright/package.json','inherit','allowInsecureLocalhost','JZYgZ','No\x20git\x20repository\x20found','ignore','.ranger','ready','OyuJO','success','error','cmXms','trackPhaseEnd','YEZrC','user','skills','NVqUU','confirm','ljLCE','1012iVNKcC','stdout','SzAfI','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','djEJP','xOKRW','\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','CHAiz','✓\x20Created\x20.ranger/.gitignore','ZdWcY','version','use\x20until\x20the\x20session\x20expires.\x0a','✓\x20Stored\x20credentials\x20locally','ELelV','\x0a🚀\x20Ranger\x20Setup\x0a','1419865bikRON','plugin','cOCBK','You\x20can\x20install\x20it\x20manually\x20by\x20running:','947uxmpvY','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','4FWgXwe','\x20\x20npx\x20playwright@','\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:','eyWUg','status','Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a','UUGBt','oUQov','pEUQr','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','✓\x20Local\x20profile\x20already\x20exists','zCWLc','zCyDf','warn','install','gSXEi','jMfgP','The\x20required\x20version\x20(','ZzfIQ','local','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','oMeEQ','TLVLe','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','LgiJc','EITag','skipped','hykrS','ezKnX','WeTbF','git_check','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','1.58.2','Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','scope','stdin','JGoVF','KqVcb','wantsProfile','\x1b[0m','360813gAxahG'];_0x5341=function(){return _0xa87ff5;};return _0x5341();}import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';function _0x24ee(_0x355b7d,_0x4cfc65){_0x355b7d=_0x355b7d-0x71;const _0x534162=_0x5341();let _0x24eeb2=_0x534162[_0x355b7d];return _0x24eeb2;}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=_0x10aece(0x78),bold=_0x47820c=>'\x1b[1m'+_0x47820c+_0x10aece(0x7f);function getPlaywrightVersion(){const _0x4434c3=_0x10aece,_0xfed89={'yZdZH':function(_0x2c6a86,_0x2c4a74){return _0x2c6a86(_0x2c4a74);}};try{const _0x21e43a=require['resolve'](_0x4434c3(0xae)),_0x56a04c=_0xfed89['yZdZH'](require,_0x21e43a);return _0x56a04c[_0x4434c3(0xcb)];}catch{return null;}}function installChromiumBinary(_0xaaf711){const _0x5d482f=_0x10aece,_0x5f1cb9={'wsmNo':_0x5d482f(0xe4),'tXShJ':_0x5d482f(0xb3),'BXugH':'inherit','zCWLc':function(_0x2ccfd3,_0xb8b850){return _0x2ccfd3===_0xb8b850;},'cmXms':_0x5d482f(0xa8),'KGypv':_0x5d482f(0xa9)};return new Promise((_0x46b3f3,_0x2ff9db)=>{const _0x5ae6ba=_0x5d482f,_0x420d28={'rEjHj':function(_0x47cc5d,_0x46f370){return _0x47cc5d===_0x46f370;}},_0x541149=[_0x5ae6ba(0x8c)+_0xaaf711,_0x5f1cb9['wsmNo'],_0x5ae6ba(0xaa)],_0x597219=spawn('npx',_0x541149,{'stdio':[_0x5f1cb9['tXShJ'],_0x5ae6ba(0xaf),_0x5f1cb9['BXugH']],'shell':_0x5f1cb9[_0x5ae6ba(0xe1)](process['platform'],_0x5f1cb9[_0x5ae6ba(0xb9)])});_0x597219['on'](_0x5f1cb9['KGypv'],_0x52fb09=>{const _0x4d02f0=_0x5ae6ba;_0x420d28['rEjHj'](_0x52fb09,0x0)?_0x46b3f3():_0x2ff9db(new Error(_0x4d02f0(0x8d)+_0x52fb09));}),_0x597219['on'](_0x5ae6ba(0xb8),_0xca4ed3=>{_0x2ff9db(_0xca4ed3);});});}export async function authenticate(_0x1dc7b4){const _0x2526f2=_0x10aece,_0x2c9069={'jMfgP':function(_0x5ab3aa){return _0x5ab3aa();},'YEZrC':_0x2526f2(0x99),'anmmg':'device_auth','VTYMp':'Validating\x20API\x20token...','ljLCE':function(_0x45fe3c,_0x2bccd0){return _0x45fe3c(_0x2bccd0);},'JGoVF':_0x2526f2(0xcd)};if(!_0x1dc7b4){const _0x2cf56d=await _0x2c9069['jMfgP'](getToken);if(_0x2cf56d){const _0x4fa7e6=await getCurrentUser(_0x2cf56d);if(_0x4fa7e6[_0x2526f2(0xb7)])return console['log'](_0x2526f2(0xab)+_0x4fa7e6[_0x2526f2(0xbc)]['organizationName']),{'token':_0x2cf56d,'method':_0x2c9069[_0x2526f2(0xbb)]};}try{_0x1dc7b4=await _0x2c9069[_0x2526f2(0xe6)](runDeviceAuthFlow);}catch(_0x235d06){throw new Error(_0x2526f2(0x92)+(_0x235d06 instanceof Error?_0x235d06['message']:_0x235d06));}const _0x23ae6a=await getCurrentUser(_0x1dc7b4);if(!_0x23ae6a['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x23ae6a['error']);return console[_0x2526f2(0x9b)]('✓\x20Authenticated\x20to\x20'+_0x23ae6a['user']['organizationName']),{'token':_0x1dc7b4,'method':_0x2c9069['anmmg']};}console['log'](_0x2c9069['VTYMp']);const _0x413646=await _0x2c9069[_0x2526f2(0xc0)](getCurrentUser,_0x1dc7b4);if(!_0x413646['success']){if(_0x413646[_0x2526f2(0xda)])throw new Error(_0x2526f2(0x92)+_0x413646[_0x2526f2(0xb8)]+_0x2526f2(0x77));else throw new Error(_0x2526f2(0x8e)+_0x413646[_0x2526f2(0xb8)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x2526f2(0x9b)]('✓\x20Authenticated\x20to\x20'+_0x413646[_0x2526f2(0xbc)]['organizationName']),await storeToken(_0x1dc7b4),console['log'](process['env'][_0x2526f2(0x98)]?'✓\x20Exported\x20credentials\x20for\x20CI':_0x2c9069[_0x2526f2(0x7c)]),{'token':_0x1dc7b4,'method':_0x2526f2(0x8f)};}export async function ensureRangerDir(_0x4413ec){const _0x3dcd1c=_0x10aece,_0x1ce536={'hykrS':function(_0x1a2890){return _0x1a2890();},'HSUkV':function(_0x558909,_0x27420a,_0x356886){return _0x558909(_0x27420a,_0x356886);},'UUGBt':_0x3dcd1c(0xb4),'NVqUU':function(_0x2a31df){return _0x2a31df();},'npRRA':function(_0x96691e,_0x5d3dec){return _0x96691e(_0x5d3dec);},'spaJE':'✓\x20Created\x20.ranger/\x20directory'};let _0x35904f;if(_0x4413ec==='user')_0x35904f=_0x1ce536[_0x3dcd1c(0x73)](getRangerHomeDir);else{const _0x1e0c60=findGitRoot();_0x35904f=_0x1e0c60?_0x1ce536['HSUkV'](join,_0x1e0c60,_0x1ce536[_0x3dcd1c(0xdc)]):_0x1ce536[_0x3dcd1c(0xbe)](getRangerDir);}return!_0x1ce536['npRRA'](existsSync,_0x35904f)?(await _0x1ce536['HSUkV'](mkdir,_0x35904f,{'recursive':!![]}),console['log'](_0x1ce536['spaJE']),{'path':_0x35904f,'installed':!![]}):(console[_0x3dcd1c(0x9b)](_0x3dcd1c(0x8b)),{'path':_0x35904f,'installed':![]});}export async function ensureChromium(){const _0x459e46=_0x10aece,_0x34530c={'HWFIq':function(_0x468a36,_0x1fa6cb){return _0x468a36(_0x1fa6cb);},'djEJP':'✓\x20Playwright\x20Chromium\x20browser\x20found','hYSCv':function(_0x3077f6){return _0x3077f6();},'pEUQr':function(_0x5d0fb0,_0x42a941){return _0x5d0fb0??_0x42a941;},'eyWUg':_0x459e46(0xbf),'hPMWj':'\x20(fallback\x20version)','dUrJf':'\x0a❌\x20Failed\x20to\x20install\x20Chromium:','SzAfI':_0x459e46(0x87)};let _0x3197ea=![];try{const _0x3176e4=chromium[_0x459e46(0xa3)]();_0x3197ea=_0x34530c[_0x459e46(0x94)](existsSync,_0x3176e4);}catch{_0x3197ea=![];}if(_0x3197ea)return console['log'](_0x34530c[_0x459e46(0xc5)]),![];const _0xff5cdc=_0x34530c[_0x459e46(0x8a)](getPlaywrightVersion),_0x3ae817=_0x34530c[_0x459e46(0xde)](_0xff5cdc,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x579a50=!_0xff5cdc,_0x413309=process['stdin'][_0x459e46(0x95)]&&process[_0x459e46(0xc2)][_0x459e46(0x95)];let _0x419625=!![];if(_0x413309){const {install:_0x351685}=await _0x38a749['prompt']([{'type':_0x34530c[_0x459e46(0xd9)],'name':'install','message':_0x579a50?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x3ae817+'\x20now?':_0x459e46(0xe7)+_0x3ae817+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x419625=_0x351685;}else console[_0x459e46(0x9b)]('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x3ae817+(_0x579a50?_0x34530c[_0x459e46(0x9c)]:'')+'...');if(_0x419625){console[_0x459e46(0x9b)](_0x459e46(0x83));try{await _0x34530c[_0x459e46(0x94)](installChromiumBinary,_0x3ae817),console['log'](_0x459e46(0xd5));}catch(_0x188406){console[_0x459e46(0xb8)](_0x34530c['dUrJf'],_0x188406 instanceof Error?_0x188406['message']:_0x188406),console['log'](_0x459e46(0xd3)),console['log'](_0x459e46(0xd7)+_0x3ae817+'\x20install\x20chromium');}}else console[_0x459e46(0x9b)](_0x34530c[_0x459e46(0xc3)]),console[_0x459e46(0x9b)](_0x459e46(0x88)),console[_0x459e46(0x9b)](_0x459e46(0xd7)+_0x3ae817+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x45cde7){const _0x4e1ead=_0x10aece,_0x471d0b={'zCyDf':function(_0x4f9814,_0x32fcc4,_0x2d972b){return _0x4f9814(_0x32fcc4,_0x2d972b);},'EITag':'.gitignore','KivUq':_0x4e1ead(0xc9)},_0x2caed9=_0x471d0b['zCyDf'](join,_0x45cde7,_0x471d0b[_0x4e1ead(0x71)]),_0x463a9b=_0x4e1ead(0xc7);await _0x471d0b[_0x4e1ead(0xe2)](writeFile,_0x2caed9,_0x463a9b),console[_0x4e1ead(0x9b)](_0x471d0b['KivUq']);}function printProfileSetupLaterInstructions(){const _0x48b368=_0x10aece;console[_0x48b368(0x9b)](_0x48b368(0xd8)),console[_0x48b368(0x9b)]('\x20\x20'+bold('ranger\x20profile\x20add\x20local')),console[_0x48b368(0x9b)](_0x48b368(0xdb));}async function ensureLocalEnv(_0x30e164,_0x164d0e){const _0x5e9609=_0x10aece,_0x2cb33c={'mgOwH':function(_0x1cbd0c){return _0x1cbd0c();},'qBmPf':'⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.','bntdg':function(_0x785e70,_0x23aa17){return _0x785e70===_0x23aa17;},'LgiJc':'user','ZzfIQ':function(_0x4df759){return _0x4df759();},'RbVtf':function(_0x430a9c,_0x539f6e,_0x85d169){return _0x430a9c(_0x539f6e,_0x85d169);},'sEqNm':_0x5e9609(0xe0),'ZdWcY':_0x5e9609(0xad),'Xtvpb':_0x5e9609(0x7e),'OyuJO':_0x5e9609(0x79),'brQrg':function(_0x3df096,_0x3eb53f){return _0x3df096 instanceof _0x3eb53f;}};if(!_0x2cb33c['mgOwH'](findGitRoot))return console['log'](_0x2cb33c['qBmPf']),{'ready':![],'skipped':!![]};const _0x579c5c=_0x2cb33c[_0x5e9609(0x97)](_0x30e164?.[_0x5e9609(0x7a)],_0x2cb33c[_0x5e9609(0xef)])?_0x2cb33c[_0x5e9609(0xe8)](getRangerHomeDir):undefined;if(_0x2cb33c[_0x5e9609(0x9f)](findExistingEnv,_0x5e9609(0xe9),{'locations':['local'],'rangerDir':_0x579c5c}))return console[_0x5e9609(0x9b)](_0x2cb33c['sEqNm']),{'ready':!![],'skipped':![]};const _0x3e5c97=process['stdin']['isTTY']&&process[_0x5e9609(0xc2)]['isTTY'];if(_0x3e5c97&&!_0x30e164?.['url']){console['log'](_0x2cb33c[_0x5e9609(0xca)]),console[_0x5e9609(0x9b)]('to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind'),console['log']('auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to'),console['log'](_0x5e9609(0xcc)),console['log'](_0x5e9609(0xee));const {wantsProfile:_0x2a628d}=await _0x38a749['prompt']([{'type':'confirm','name':_0x2cb33c['Xtvpb'],'message':_0x2cb33c[_0x5e9609(0xb6)],'default':!![]}]);if(!_0x2a628d)return printProfileSetupLaterInstructions(),{'ready':![],'skipped':!![]};}try{return await addEnv('local',{'url':_0x30e164?.['url'],'force':_0x30e164?.['force'],'allowInsecureLocalhost':_0x30e164?.[_0x5e9609(0xb0)],'scope':_0x30e164?.[_0x5e9609(0x7a)]},_0x164d0e),{'ready':!![],'skipped':![]};}catch(_0x3e5644){return console['error'](_0x5e9609(0xa2),_0x2cb33c['brQrg'](_0x3e5644,Error)?_0x3e5644[_0x5e9609(0xa0)]:_0x3e5644),printProfileSetupLaterInstructions(),{'ready':![],'skipped':![]};}}export async function start(_0x5add1f,_0x46745e,_0x23dcf9){const _0x47ae1a=_0x10aece,_0x51d52a={'oUQov':_0x47ae1a(0x93),'nMRnp':_0x47ae1a(0xb2),'ncbCm':_0x47ae1a(0x76),'gSXEi':function(_0x1e421c,_0x2ac2cd){return _0x1e421c(_0x2ac2cd);},'cJVXz':function(_0x38c34f){return _0x38c34f();},'ELelV':_0x47ae1a(0xbc),'cOCBK':function(_0x5e044b,_0x98d905){return _0x5e044b(_0x98d905);},'JZYgZ':_0x47ae1a(0xa4),'oMeEQ':'chromium','ezKnX':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','RyqUL':_0x47ae1a(0xd1),'KqVcb':function(_0x729d42,_0x9974a9){return _0x729d42(_0x9974a9);},'WeTbF':_0x47ae1a(0x82),'IdXPo':function(_0x32fb14,_0x24cad8){return _0x32fb14 instanceof _0x24cad8;},'xOKRW':_0x47ae1a(0xbd),'TLVLe':function(_0x4d1639,_0x588add){return _0x4d1639(_0x588add);},'CHAiz':_0x47ae1a(0x85),'txUET':'and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','RSIRf':'/ranger:enable','brwtk':function(_0x5cf6e4,_0x4ed882){return _0x5cf6e4+_0x4ed882;}};console[_0x47ae1a(0x9b)](_0x47ae1a(0xcf));const _0x5d477b=process[_0x47ae1a(0x7b)][_0x47ae1a(0x95)]&&process['stdout']['isTTY'];!_0x5d477b&&!_0x46745e?.['scope']&&(console[_0x47ae1a(0x9b)](_0x51d52a[_0x47ae1a(0xdd)]),_0x46745e={..._0x46745e,'scope':'user'});_0x23dcf9?.[_0x47ae1a(0x86)]('git_check');if(!findGitRoot()){await _0x23dcf9?.['trackPhaseError']('git_check',new Error(_0x51d52a['nMRnp']));throw new Error(_0x47ae1a(0x9d));}_0x23dcf9?.['trackPhaseEnd'](_0x51d52a['ncbCm']);const _0x47bf48=!_0x51d52a[_0x47ae1a(0xe5)](existsSync,_0x51d52a[_0x47ae1a(0x81)](getRangerDir)),_0x5bab0a=_0x46745e?.['scope']===_0x51d52a[_0x47ae1a(0xce)],{path:_0x352fdc}=await _0x51d52a[_0x47ae1a(0xd2)](ensureRangerDir,_0x5bab0a?_0x51d52a[_0x47ae1a(0xce)]:undefined);_0x23dcf9?.[_0x47ae1a(0x86)](_0x51d52a['JZYgZ']);const _0x224e16=await _0x51d52a['gSXEi'](authenticate,_0x5add1f);_0x23dcf9?.[_0x47ae1a(0xba)](_0x51d52a[_0x47ae1a(0xb1)],{'isFirstRun':_0x47bf48,'method':_0x224e16[_0x47ae1a(0xac)]}),_0x23dcf9?.[_0x47ae1a(0x86)](_0x51d52a['oMeEQ']);_0x46745e?.[_0x47ae1a(0x9e)]?console['log'](_0x47ae1a(0xc4)):await ensureChromium();_0x23dcf9?.['trackPhaseEnd'](_0x51d52a[_0x47ae1a(0xeb)],{'isFirstRun':_0x47bf48,'skipped':!!_0x46745e?.[_0x47ae1a(0x9e)]});!_0x5bab0a&&await writeRangerGitignore(_0x352fdc);console[_0x47ae1a(0x9b)](_0x51d52a[_0x47ae1a(0x74)]);const _0x4d6f3e=_0x46745e?.[_0x47ae1a(0x7a)],_0x14b4d0=_0x46745e?.['opencode']??![];let _0x380539=null;_0x14b4d0?(_0x23dcf9?.['trackPhaseStart'](_0x51d52a['RyqUL']),_0x380539=await ensureOpencodePluginConfig(_0x4d6f3e),_0x23dcf9?.['trackPhaseEnd'](_0x51d52a['RyqUL'],{'isFirstRun':_0x47bf48,'opencode':!![]})):(_0x23dcf9?.[_0x47ae1a(0x86)](_0x51d52a['RyqUL']),await _0x51d52a[_0x47ae1a(0x7d)](ensureClaudePlugin,_0x4d6f3e),_0x23dcf9?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x47bf48}));if(_0x14b4d0&&_0x380539){_0x23dcf9?.['trackPhaseStart']('skills');try{await installSkill(_0x51d52a[_0x47ae1a(0x75)],{'level':_0x380539[_0x47ae1a(0x7a)],'cliVersion':getCurrentVersion(),'platform':'opencode'}),_0x23dcf9?.[_0x47ae1a(0xba)](_0x47ae1a(0xbd),{'isFirstRun':_0x47bf48,'opencode':!![]});}catch(_0x47cd76){console[_0x47ae1a(0xe3)]('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x51d52a['IdXPo'](_0x47cd76,Error)?_0x47cd76['message']:_0x47cd76),_0x23dcf9?.[_0x47ae1a(0xba)](_0x51d52a['xOKRW'],{'isFirstRun':_0x47bf48,'opencode':!![],'failed':!![]});}}else _0x23dcf9?.['trackPhaseStart'](_0x51d52a[_0x47ae1a(0xc6)]),await ensureClaudeSkills(_0x4d6f3e),_0x23dcf9?.[_0x47ae1a(0xba)](_0x47ae1a(0xbd),{'isFirstRun':_0x47bf48});if(!_0x5d477b&&!_0x46745e?.[_0x47ae1a(0xa5)])console['log']('Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:'),console[_0x47ae1a(0x9b)]('\x20\x20'+_0x51d52a[_0x47ae1a(0xec)](bold,'ranger\x20profile\x20add\x20local')+'\x0a');else{_0x23dcf9?.[_0x47ae1a(0x86)](_0x51d52a['CHAiz']);const _0x2ea0f9=await ensureLocalEnv({'url':_0x46745e?.['url'],'force':_0x46745e?.['force'],'allowInsecureLocalhost':_0x46745e?.['allowInsecureLocalhost'],'scope':_0x46745e?.['scope']===_0x47ae1a(0xbc)?_0x51d52a['ELelV']:undefined},_0x23dcf9);_0x23dcf9?.[_0x47ae1a(0xba)](_0x51d52a[_0x47ae1a(0xc8)],{'isFirstRun':_0x47bf48,'profileReady':_0x2ea0f9['ready'],'userSkipped':_0x2ea0f9[_0x47ae1a(0x72)]}),_0x2ea0f9[_0x47ae1a(0xb5)]&&console[_0x47ae1a(0x9b)]('\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.');}if(_0x14b4d0)console[_0x47ae1a(0x9b)](_0x47ae1a(0xed)),console['log'](_0x51d52a['txUET']),console['log'](_0x47ae1a(0x90)),console['log'](_0x47ae1a(0xdf));else{const _0x3d22bc=bold(_0x51d52a['RSIRf']);console['log'](_0x51d52a[_0x47ae1a(0xa6)]('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x3d22bc+_0x47ae1a(0x96)+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with'+_0x47ae1a(0x89),_0x47ae1a(0xea)));}}
|
|
1
|
+
(function(_0x1be58,_0x4fcade){const _0x1a25df=_0x2f60,_0x3f4385=_0x1be58();while(!![]){try{const _0x58f144=parseInt(_0x1a25df(0xff))/0x1*(parseInt(_0x1a25df(0x10b))/0x2)+-parseInt(_0x1a25df(0xb9))/0x3+-parseInt(_0x1a25df(0x110))/0x4*(-parseInt(_0x1a25df(0xcd))/0x5)+parseInt(_0x1a25df(0xc2))/0x6+-parseInt(_0x1a25df(0xc9))/0x7+parseInt(_0x1a25df(0x113))/0x8+parseInt(_0x1a25df(0xaa))/0x9*(parseInt(_0x1a25df(0xd5))/0xa);if(_0x58f144===_0x4fcade)break;else _0x3f4385['push'](_0x3f4385['shift']());}catch(_0x1fe0b0){_0x3f4385['push'](_0x3f4385['shift']());}}}(_0x2c2a,0xaad17));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x3242a8 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,getRangerHomeDir,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=_0x3b19dd=>'\x1b[1m'+_0x3b19dd+'\x1b[0m';function getPlaywrightVersion(){const _0x2d00dd=_0x2f60;try{const _0x579139=require[_0x2d00dd(0xf2)](_0x2d00dd(0xf8)),_0x5462f7=require(_0x579139);return _0x5462f7['version'];}catch{return null;}}function installChromiumBinary(_0x327cfe){const _0x5abe87=_0x2f60,_0x4b6e5c={'baKJv':function(_0x10a1e1,_0x14ac10){return _0x10a1e1===_0x14ac10;},'KEKZC':function(_0x455832,_0x569d08){return _0x455832(_0x569d08);},'rSctV':'install','awTUa':function(_0x822bc9,_0x4538a2,_0x2855df,_0x4c8402){return _0x822bc9(_0x4538a2,_0x2855df,_0x4c8402);},'sfOlg':'inherit','XZFMu':function(_0x2069ee,_0x22a768){return _0x2069ee===_0x22a768;},'cncza':_0x5abe87(0xac),'Arjjj':'close'};return new Promise((_0x53607f,_0x187369)=>{const _0x2fde84=_0x5abe87,_0x3f9ba8={'rhPxU':function(_0x5e31eb,_0x48022f){return _0x5e31eb(_0x48022f);}},_0x5ab2a7=[_0x2fde84(0xdf)+_0x327cfe,_0x4b6e5c['rSctV'],'chromium'],_0x560893=_0x4b6e5c[_0x2fde84(0x108)](spawn,_0x2fde84(0xae),_0x5ab2a7,{'stdio':[_0x2fde84(0x10a),'inherit',_0x4b6e5c['sfOlg']],'shell':_0x4b6e5c['XZFMu'](process[_0x2fde84(0xea)],_0x4b6e5c[_0x2fde84(0xcb)])});_0x560893['on'](_0x4b6e5c['Arjjj'],_0x1c052a=>{const _0x2d3316=_0x2fde84;_0x4b6e5c[_0x2d3316(0xd7)](_0x1c052a,0x0)?_0x53607f():_0x4b6e5c['KEKZC'](_0x187369,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x1c052a));}),_0x560893['on']('error',_0x2f3866=>{const _0x49751d=_0x2fde84;_0x3f9ba8[_0x49751d(0xe9)](_0x187369,_0x2f3866);});});}export async function authenticate(_0x1753ff){const _0x5acd30=_0x2f60,_0x315e73={'CrPjH':function(_0x168f2f,_0x13e76c){return _0x168f2f instanceof _0x13e76c;},'GTyhk':function(_0x334c12,_0x1933e3){return _0x334c12(_0x1933e3);},'dqYgt':_0x5acd30(0xcf),'oFOYb':'Validating\x20API\x20token...','zsRbp':function(_0x495905,_0x4b69ae){return _0x495905(_0x4b69ae);},'ykGSK':_0x5acd30(0xee),'PNCOU':_0x5acd30(0x100),'EQtnv':_0x5acd30(0xd1)};if(!_0x1753ff){const _0x23882f=await getToken();if(_0x23882f){const _0x1f0336=await getCurrentUser(_0x23882f);if(_0x1f0336[_0x5acd30(0xe3)])return console[_0x5acd30(0xa6)]('✓\x20Already\x20authenticated\x20to\x20'+_0x1f0336['user']['organizationName']),{'token':_0x23882f,'method':_0x5acd30(0xca)};}try{_0x1753ff=await runDeviceAuthFlow();}catch(_0x29cb15){throw new Error(_0x5acd30(0x102)+(_0x315e73['CrPjH'](_0x29cb15,Error)?_0x29cb15['message']:_0x29cb15));}const _0x52099e=await _0x315e73['GTyhk'](getCurrentUser,_0x1753ff);if(!_0x52099e['success'])throw new Error(_0x5acd30(0xd8)+_0x52099e[_0x5acd30(0xb1)]);return console['log']('✓\x20Authenticated\x20to\x20'+_0x52099e[_0x5acd30(0xec)]['organizationName']),{'token':_0x1753ff,'method':_0x315e73['dqYgt']};}console['log'](_0x315e73['oFOYb']);const _0x1c1e77=await _0x315e73['zsRbp'](getCurrentUser,_0x1753ff);if(!_0x1c1e77[_0x5acd30(0xe3)]){if(_0x1c1e77[_0x5acd30(0xb3)])throw new Error('Authentication\x20failed:\x20'+_0x1c1e77['error']+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x1c1e77[_0x5acd30(0xb1)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console['log'](_0x5acd30(0xb0)+_0x1c1e77[_0x5acd30(0xec)]['organizationName']),await _0x315e73[_0x5acd30(0xfd)](storeToken,_0x1753ff),console[_0x5acd30(0xa6)](process[_0x5acd30(0xc3)][_0x5acd30(0x105)]?_0x315e73[_0x5acd30(0xc7)]:_0x315e73['PNCOU']),{'token':_0x1753ff,'method':_0x315e73['EQtnv']};}function _0x2c2a(){const _0x28f56b=['GITHUB_ENV','\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how','knfIJ','awTUa','skipChromium','ignore','1004KoXlZs','pcEjj','tuXDg','method','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','8Sjljge','WnUbX','executablePath','893208ReyWAv','confirm','log','auth','.gitignore','\x20\x20npx\x20playwright@','9hvOPMb','git_check','win32','SiBtn','npx','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','✓\x20Authenticated\x20to\x20','error','allowInsecureLocalhost','status','\x20now?','fxwuO','enves','gfJAC','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','3667128zvJicK','skills','\x0a⚠\x20Skipping\x20Chromium\x20installation.','\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:','url','local','/ranger:enable','isTTY','trackPhaseStart','1094892UgAEcT','env','vTtpH','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','scope','ykGSK','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','848015cXAJLV','existing_token','cncza','ehQoy','1732510ZMIlVq','jpAZM','device_auth','nDaHQ','provided_token','MdpKC','.ranger','Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','8286490eTTrnj',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','baKJv','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','ranger\x20profile\x20add\x20local','Mntdm','use\x20until\x20the\x20session\x20expires.\x0a','WEsHm','ready','kztbH','playwright@','✓\x20Playwright\x20Chromium\x20browser\x20found','kafxT','UTNcJ','success','\x0aInstalling\x20Chromium\x20browser...\x0a','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','tUsKX','✓\x20Created\x20.ranger/.gitignore','UvTjV','rhPxU','platform','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','user','✓\x20Local\x20profile\x20already\x20exists','✓\x20Exported\x20credentials\x20for\x20CI','\x20and\x20prompt\x20the\x20coding','prompt','message','resolve','force','uQCal','opencode','stdout','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','playwright/package.json','BCSSR','QPsSZ','ranger','skipped','zsRbp','sUOwW','453tUPcqZ','✓\x20Stored\x20credentials\x20locally','xvysY','Authentication\x20failed:\x20','trackPhaseError','trackPhaseEnd'];_0x2c2a=function(){return _0x28f56b;};return _0x2c2a();}export async function ensureRangerDir(_0x2c3bc0){const _0x22990e=_0x2f60,_0x51bbc3={'ESxJu':function(_0x3a872a,_0x4f2d03){return _0x3a872a===_0x4f2d03;},'YpWBW':_0x22990e(0xec),'AlwKu':function(_0xcb10fe){return _0xcb10fe();},'IFIqE':function(_0x1d7559,_0xccf112,_0xd3f07a){return _0x1d7559(_0xccf112,_0xd3f07a);},'OHrxM':'✓\x20Created\x20.ranger/\x20directory','oqtmp':'✓\x20.ranger/\x20directory\x20already\x20exists'};let _0x5503be;if(_0x51bbc3['ESxJu'](_0x2c3bc0,_0x51bbc3['YpWBW']))_0x5503be=getRangerHomeDir();else{const _0x15c907=_0x51bbc3['AlwKu'](findGitRoot);_0x5503be=_0x15c907?join(_0x15c907,_0x22990e(0xd3)):getRangerDir();}return!existsSync(_0x5503be)?(await _0x51bbc3['IFIqE'](mkdir,_0x5503be,{'recursive':!![]}),console['log'](_0x51bbc3['OHrxM']),{'path':_0x5503be,'installed':!![]}):(console[_0x22990e(0xa6)](_0x51bbc3['oqtmp']),{'path':_0x5503be,'installed':![]});}export async function ensureChromium(){const _0x1f3908=_0x2f60,_0x4cd4b2={'SQRba':function(_0x4d391f,_0x2a1945){return _0x4d391f(_0x2a1945);},'ehQoy':_0x1f3908(0xe0),'ZQMHu':'confirm','tUsKX':_0x1f3908(0xe4),'xvysY':_0x1f3908(0x10f),'vTtpH':function(_0x972e3f,_0x50492e){return _0x972e3f instanceof _0x50492e;},'IksDN':'You\x20can\x20install\x20it\x20manually\x20by\x20running:','pcEjj':_0x1f3908(0xbb),'UvTjV':'You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'};let _0x844a45=![];try{const _0x28f34a=chromium[_0x1f3908(0x112)]();_0x844a45=_0x4cd4b2['SQRba'](existsSync,_0x28f34a);}catch{_0x844a45=![];}if(_0x844a45)return console['log'](_0x4cd4b2[_0x1f3908(0xcc)]),![];const _0x41cc30=getPlaywrightVersion(),_0x2f8809=_0x41cc30??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x5be7ed=!_0x41cc30,_0x5bf17e=process['stdin'][_0x1f3908(0xc0)]&&process[_0x1f3908(0xf6)]['isTTY'];let _0x267fac=!![];if(_0x5bf17e){const {install:_0x2da3a1}=await _0x3242a8[_0x1f3908(0xf0)]([{'type':_0x4cd4b2['ZQMHu'],'name':'install','message':_0x5be7ed?_0x1f3908(0xc5)+_0x2f8809+_0x1f3908(0xb4):'The\x20required\x20version\x20('+_0x2f8809+_0x1f3908(0xd6),'default':!![]}]);_0x267fac=_0x2da3a1;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x2f8809+(_0x5be7ed?'\x20(fallback\x20version)':'')+'...');if(_0x267fac){console['log'](_0x4cd4b2[_0x1f3908(0xe6)]);try{await installChromiumBinary(_0x2f8809),console[_0x1f3908(0xa6)](_0x4cd4b2[_0x1f3908(0x101)]);}catch(_0x2013af){console['error']('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x4cd4b2[_0x1f3908(0xc4)](_0x2013af,Error)?_0x2013af[_0x1f3908(0xf1)]:_0x2013af),console[_0x1f3908(0xa6)](_0x4cd4b2['IksDN']),console['log'](_0x1f3908(0xa9)+_0x2f8809+'\x20install\x20chromium');}}else console[_0x1f3908(0xa6)](_0x4cd4b2[_0x1f3908(0x10c)]),console['log'](_0x4cd4b2[_0x1f3908(0xe8)]),console['log'](_0x1f3908(0xa9)+_0x2f8809+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x13a5b9){const _0x110956=_0x2f60,_0x5c9d15={'sUOwW':_0x110956(0xa8),'ATldt':function(_0x42ba22,_0x1e35d4,_0x317a43){return _0x42ba22(_0x1e35d4,_0x317a43);}},_0x419d0b=join(_0x13a5b9,_0x5c9d15[_0x110956(0xfe)]),_0x16a407='\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 _0x5c9d15['ATldt'](writeFile,_0x419d0b,_0x16a407),console['log'](_0x110956(0xe7));}function printProfileSetupLaterInstructions(){const _0x2354a8=_0x2f60,_0x46239f={'KLbto':_0x2354a8(0xbc)};console['log'](_0x46239f['KLbto']),console['log']('\x20\x20'+bold('ranger\x20profile\x20add\x20local')),console['log']('Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a');}async function ensureLocalEnv(_0x58b63b,_0x47cf40){const _0x331c76=_0x2f60,_0x7f340c={'oMOLD':function(_0x311418){return _0x311418();},'wqtcZ':function(_0x31fffe,_0x2a95fb){return _0x31fffe===_0x2a95fb;},'HeSiM':function(_0x18efce){return _0x18efce();},'knfIJ':function(_0x517f16,_0x13cac3,_0x59eedf){return _0x517f16(_0x13cac3,_0x59eedf);},'OPQFa':_0x331c76(0xed),'vCuLM':'You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','uVXjB':'wantsProfile','ThJvK':'Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','Mntdm':function(_0x144710,_0x11af88,_0x16bb98,_0x941906){return _0x144710(_0x11af88,_0x16bb98,_0x941906);},'UTNcJ':'local','kafxT':'\x0a❌\x20Profile\x20setup\x20failed:','gfJAC':function(_0x5b984e,_0x436e75){return _0x5b984e instanceof _0x436e75;},'nDaHQ':function(_0x742f9c){return _0x742f9c();}};if(!_0x7f340c['oMOLD'](findGitRoot))return console['log']('⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.'),{'ready':![],'skipped':!![]};const _0x5929f7=_0x7f340c['wqtcZ'](_0x58b63b?.['scope'],'user')?_0x7f340c['HeSiM'](getRangerHomeDir):undefined;if(_0x7f340c[_0x331c76(0x107)](findExistingEnv,'local',{'locations':[_0x331c76(0xbe)],'rangerDir':_0x5929f7}))return console['log'](_0x7f340c['OPQFa']),{'ready':!![],'skipped':![]};const _0x3ef773=process['stdin'][_0x331c76(0xc0)]&&process['stdout']['isTTY'];if(_0x3ef773&&!_0x58b63b?.['url']){console['log'](_0x331c76(0x106)),console['log']('to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind'),console[_0x331c76(0xa6)]('auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to'),console['log'](_0x331c76(0xdb)),console[_0x331c76(0xa6)](_0x7f340c['vCuLM']);const {wantsProfile:_0x535e59}=await _0x3242a8[_0x331c76(0xf0)]([{'type':_0x331c76(0xa5),'name':_0x7f340c['uVXjB'],'message':_0x7f340c['ThJvK'],'default':!![]}]);if(!_0x535e59)return printProfileSetupLaterInstructions(),{'ready':![],'skipped':!![]};}try{return await _0x7f340c[_0x331c76(0xda)](addEnv,_0x7f340c[_0x331c76(0xe2)],{'url':_0x58b63b?.['url'],'force':_0x58b63b?.[_0x331c76(0xf3)],'allowInsecureLocalhost':_0x58b63b?.['allowInsecureLocalhost'],'scope':_0x58b63b?.[_0x331c76(0xc6)]},_0x47cf40),{'ready':!![],'skipped':![]};}catch(_0x48da82){return console['error'](_0x7f340c[_0x331c76(0xe1)],_0x7f340c[_0x331c76(0xb7)](_0x48da82,Error)?_0x48da82[_0x331c76(0xf1)]:_0x48da82),_0x7f340c[_0x331c76(0xd0)](printProfileSetupLaterInstructions),{'ready':![],'skipped':![]};}}function _0x2f60(_0x532d68,_0x457ab8){_0x532d68=_0x532d68-0xa5;const _0x2c2a83=_0x2c2a();let _0x2f609b=_0x2c2a83[_0x532d68];return _0x2f609b;}export async function start(_0x17e317,_0x5b301d,_0x4281ac){const _0x29d20d=_0x2f60,_0x5b4771={'MWIJM':_0x29d20d(0xd4),'QPsSZ':function(_0x15d373){return _0x15d373();},'MdpKC':_0x29d20d(0xab),'tuXDg':'No\x20git\x20repository\x20found','BCSSR':_0x29d20d(0xec),'enves':'chromium','fxwuO':function(_0x3ef993,_0x5c186d){return _0x3ef993(_0x5c186d);},'kztbH':'plugin','KRGWQ':function(_0x5c21a6,_0x4f9ed7){return _0x5c21a6&&_0x4f9ed7;},'nQyrB':_0x29d20d(0xba),'fohku':'\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','XAFPx':function(_0x4baaa7,_0x5c18a6){return _0x4baaa7 instanceof _0x5c18a6;},'jpAZM':'Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:','JyfHw':'profile','dDXSh':function(_0x269246,_0x4a07cf,_0x3ea05e){return _0x269246(_0x4a07cf,_0x3ea05e);},'WEsHm':_0x29d20d(0xeb),'SiBtn':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','uQCal':_0x29d20d(0xbf),'WnUbX':function(_0x310c23,_0x5d192a){return _0x310c23+_0x5d192a;},'AFROQ':function(_0x6d5937,_0x1aadd7){return _0x6d5937+_0x1aadd7;}};console[_0x29d20d(0xa6)]('\x0a🚀\x20Ranger\x20Setup\x0a');const _0x9f2a84=process['stdin'][_0x29d20d(0xc0)]&&process[_0x29d20d(0xf6)]['isTTY'];!_0x9f2a84&&!_0x5b301d?.['scope']&&(console[_0x29d20d(0xa6)](_0x5b4771['MWIJM']),_0x5b301d={..._0x5b301d,'scope':_0x29d20d(0xec)});_0x4281ac?.[_0x29d20d(0xc1)]('git_check');if(!_0x5b4771[_0x29d20d(0xfa)](findGitRoot)){await _0x4281ac?.[_0x29d20d(0x103)](_0x5b4771[_0x29d20d(0xd2)],new Error(_0x5b4771[_0x29d20d(0x10d)]));throw new Error('No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.');}_0x4281ac?.['trackPhaseEnd']('git_check');const _0x4e4bea=!existsSync(_0x5b4771[_0x29d20d(0xfa)](getRangerDir)),_0x169fd8=_0x5b301d?.['scope']===_0x5b4771[_0x29d20d(0xf9)],{path:_0x2ee81e}=await ensureRangerDir(_0x169fd8?_0x29d20d(0xec):undefined);_0x4281ac?.['trackPhaseStart'](_0x29d20d(0xa7));const _0x3661d8=await authenticate(_0x17e317);_0x4281ac?.['trackPhaseEnd']('auth',{'isFirstRun':_0x4e4bea,'method':_0x3661d8[_0x29d20d(0x10e)]}),_0x4281ac?.[_0x29d20d(0xc1)](_0x5b4771['enves']);_0x5b301d?.['skipChromium']?console[_0x29d20d(0xa6)](_0x29d20d(0xf7)):await _0x5b4771['QPsSZ'](ensureChromium);_0x4281ac?.['trackPhaseEnd'](_0x5b4771[_0x29d20d(0xb6)],{'isFirstRun':_0x4e4bea,'skipped':!!_0x5b301d?.[_0x29d20d(0x109)]});!_0x169fd8&&await _0x5b4771[_0x29d20d(0xb5)](writeRangerGitignore,_0x2ee81e);console['log'](_0x29d20d(0xb8));const _0x58b763=_0x5b301d?.[_0x29d20d(0xc6)],_0x16fc11=_0x5b301d?.[_0x29d20d(0xf5)]??![];let _0x4c9fa0=null;_0x16fc11?(_0x4281ac?.[_0x29d20d(0xc1)]('plugin'),_0x4c9fa0=await ensureOpencodePluginConfig(_0x58b763),_0x4281ac?.[_0x29d20d(0x104)](_0x5b4771[_0x29d20d(0xde)],{'isFirstRun':_0x4e4bea,'opencode':!![]})):(_0x4281ac?.[_0x29d20d(0xc1)]('plugin'),await _0x5b4771[_0x29d20d(0xb5)](ensureClaudePlugin,_0x58b763),_0x4281ac?.['trackPhaseEnd'](_0x5b4771['kztbH'],{'isFirstRun':_0x4e4bea}));if(_0x5b4771['KRGWQ'](_0x16fc11,_0x4c9fa0)){_0x4281ac?.[_0x29d20d(0xc1)]('skills');try{await installSkill(_0x29d20d(0xfb),{'level':_0x4c9fa0[_0x29d20d(0xc6)],'cliVersion':getCurrentVersion(),'platform':_0x29d20d(0xf5)}),_0x4281ac?.[_0x29d20d(0x104)](_0x5b4771['nQyrB'],{'isFirstRun':_0x4e4bea,'opencode':!![]});}catch(_0x4d0469){console['warn'](_0x5b4771['fohku'],_0x5b4771['XAFPx'](_0x4d0469,Error)?_0x4d0469['message']:_0x4d0469),_0x4281ac?.['trackPhaseEnd'](_0x29d20d(0xba),{'isFirstRun':_0x4e4bea,'opencode':!![],'failed':!![]});}}else _0x4281ac?.[_0x29d20d(0xc1)](_0x5b4771['nQyrB']),await ensureClaudeSkills(_0x58b763),_0x4281ac?.[_0x29d20d(0x104)](_0x29d20d(0xba),{'isFirstRun':_0x4e4bea});if(!_0x9f2a84&&!_0x5b301d?.[_0x29d20d(0xbd)])console['log'](_0x5b4771[_0x29d20d(0xce)]),console[_0x29d20d(0xa6)]('\x20\x20'+bold(_0x29d20d(0xd9))+'\x0a');else{_0x4281ac?.['trackPhaseStart'](_0x5b4771['JyfHw']);const _0x782adb=await _0x5b4771['dDXSh'](ensureLocalEnv,{'url':_0x5b301d?.[_0x29d20d(0xbd)],'force':_0x5b301d?.['force'],'allowInsecureLocalhost':_0x5b301d?.[_0x29d20d(0xb2)],'scope':_0x5b301d?.[_0x29d20d(0xc6)]==='user'?_0x29d20d(0xec):undefined},_0x4281ac);_0x4281ac?.[_0x29d20d(0x104)](_0x5b4771['JyfHw'],{'isFirstRun':_0x4e4bea,'profileReady':_0x782adb['ready'],'userSkipped':_0x782adb[_0x29d20d(0xfc)]}),_0x782adb[_0x29d20d(0xdd)]&&console['log']('\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.');}if(_0x16fc11)console[_0x29d20d(0xa6)](_0x29d20d(0xc8)),console['log'](_0x5b4771[_0x29d20d(0xdc)]),console[_0x29d20d(0xa6)](_0x29d20d(0xaf)),console[_0x29d20d(0xa6)](_0x5b4771[_0x29d20d(0xad)]);else{const _0x309822=bold(_0x5b4771[_0x29d20d(0xf4)]);console[_0x29d20d(0xa6)](_0x5b4771[_0x29d20d(0x111)](_0x5b4771['AFROQ']('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x309822+_0x29d20d(0xef),_0x29d20d(0xe5))+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3f97d0=_0x2071;(function(_0x4dc498,_0x5ce20f){const _0x55b94e=_0x2071,_0x47197f=_0x4dc498();while(!![]){try{const _0x7fa71c=parseInt(_0x55b94e(0xbf))/0x1+parseInt(_0x55b94e(0xe8))/0x2+-parseInt(_0x55b94e(0xc9))/0x3*(parseInt(_0x55b94e(0xc2))/0x4)+parseInt(_0x55b94e(0xe4))/0x5*(parseInt(_0x55b94e(0x9f))/0x6)+parseInt(_0x55b94e(0xb6))/0x7*(parseInt(_0x55b94e(0x91))/0x8)+parseInt(_0x55b94e(0xee))/0x9+-parseInt(_0x55b94e(0xae))/0xa;if(_0x7fa71c===_0x5ce20f)break;else _0x47197f['push'](_0x47197f['shift']());}catch(_0x583040){_0x47197f['push'](_0x47197f['shift']());}}}(_0x4540,0x8222f));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';function _0x4540(){const _0x2a397e=['pNOJn','trim','tyjlw','\x20\x20\x20\x20','Organization:\x20','oBQEB','aPNXj','parse','all','KHmIm','MoiRZ','settings.json','MIWHr','503495jhExxS','LTIKb','string','isActive','1903650djTMGl','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','API\x20Token:\x20✗\x20Not\x20found','organizationName','\x20\x20Not\x20configured','map','3061782adcxyP','aCZTG','AIrJp','version','rCvzH','bikEI','826304umosQU','data','\x20(latest:\x20','\x0a---\x20Claude\x20Code\x20Plugin\x20---','uprpz','match','Root:\x20','stderr','jVzlW','stdout','BsnVu','configured','Version:\x20','settingsPath','6UuJQeL','SrRUO','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','QlWXs','kJsKc','debug','length','KhdQN','cwd','mfLSb','tUEmd','not_configured','pipe','xAGSA','\x20\x20Run:\x20ranger\x20update','6290630KjOLzN','UNynb','displayName','VwKuh','TQnLm','log','close','@ranger-testing/opencode-plugin','28KbBSNv','SAEVQ','(not\x20found)','\x0a---\x20Skills\x20---','gVgFB','encrypted','name','path',':\x20installed\x20(','208895qbziBl','not_installed','details','21724yCzUSi','No\x20profiles\x20configured','API\x20URL:\x20','LstaY','hasPlaintextAuth',':\x20configured','ZkOGd','471xnZXwy','project','\x0a---\x20Profiles\x20---','enabled','\x0a---\x20OpenCode\x20Plugin\x20---','opencode-plugin','\x1b]8;;file://','NjpIg','unknown','toString','FgxbW','\x20\x20User-level:','error','DeorM'];_0x4540=function(){return _0x2a397e;};return _0x4540();}import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x648a08=>'\x1b[1m'+_0x648a08+'\x1b[0m',link=(_0x584f49,_0x1ca09b)=>_0x3f97d0(0xcf)+_0x584f49+'\x07'+(_0x1ca09b||_0x584f49)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x40e12c=_0x3f97d0,_0x313e30={'rCvzH':function(_0x5bcdf4,_0x2ef4c7){return _0x5bcdf4!==_0x2ef4c7;},'aPNXj':_0x40e12c(0xc0),'gVgFB':function(_0x3dfe47,_0x36fa74){return _0x3dfe47(_0x36fa74);},'bikEI':function(_0x3529e3,_0x31eb00,_0x4896c4,_0x2cc238){return _0x3529e3(_0x31eb00,_0x4896c4,_0x2cc238);},'GTnzi':_0x40e12c(0xa4),'MoiRZ':'ignore','ITzBO':_0x40e12c(0xab),'AoXVa':_0x40e12c(0x92),'tyjlw':_0x40e12c(0xd5),'VwKuh':_0x40e12c(0xb4)};return new Promise(_0x55ebb3=>{const _0x5ae84d=_0x40e12c,_0x1eafd0={'KfLnH':function(_0x384725,_0x56f927){return _0x384725(_0x56f927);},'uprpz':function(_0x3feb0a,_0x58123a){return _0x3feb0a!==_0x58123a;},'NjpIg':_0x5ae84d(0xe6),'yuXDt':function(_0x152174,_0x379cb3){const _0x13a6f7=_0x5ae84d;return _0x313e30[_0x13a6f7(0xf2)](_0x152174,_0x379cb3);},'BvwZJ':_0x313e30[_0x5ae84d(0xdd)],'kJsKc':function(_0x28b262,_0x568ba6){return _0x28b262>_0x568ba6;},'QlWXs':_0x5ae84d(0xaa),'drcUu':function(_0x43d65b,_0x50af64){const _0xc3c11d=_0x5ae84d;return _0x313e30[_0xc3c11d(0xba)](_0x43d65b,_0x50af64);}},_0x5db0b4=_0x313e30[_0x5ae84d(0x90)](spawn,'opencode',[_0x313e30['GTnzi'],'config'],{'stdio':[_0x313e30[_0x5ae84d(0xe1)],_0x313e30['ITzBO'],'pipe']});let _0x2c4783='';_0x5db0b4[_0x5ae84d(0x9a)]?.['on'](_0x313e30['AoXVa'],_0x337364=>{const _0x41e1a4=_0x5ae84d;_0x2c4783+=_0x337364[_0x41e1a4(0xd2)]();}),_0x5db0b4[_0x5ae84d(0x98)]?.['on']('data',_0x401123=>{const _0x5d7052=_0x5ae84d;_0x2c4783+=_0x401123[_0x5d7052(0xd2)]();}),_0x5db0b4['on'](_0x313e30[_0x5ae84d(0xd9)],()=>{const _0x5c31d9=_0x5ae84d;_0x1eafd0['KfLnH'](_0x55ebb3,{'status':_0x5c31d9(0xc0)});}),_0x5db0b4['on'](_0x313e30[_0x5ae84d(0xb1)],_0x5e1ebe=>{const _0x335e70=_0x5ae84d;if(_0x1eafd0['yuXDt'](_0x5e1ebe,0x0)){_0x55ebb3({'status':_0x1eafd0['BvwZJ']});return;}const _0x2c62e5=_0x2c4783[_0x335e70(0xd8)]();let _0x28bd76=null;if(_0x2c62e5)try{_0x28bd76=JSON['parse'](_0x2c62e5);}catch{const _0x238a45=_0x2c62e5[_0x335e70(0x96)](/\{[\s\S]*\}$/);if(_0x238a45)try{_0x28bd76=JSON[_0x335e70(0xde)](_0x238a45[0x0]);}catch{_0x28bd76=null;}}const _0x54c7af=Array['isArray'](_0x28bd76?.['plugin'])?_0x28bd76?.['plugin']:[],_0xc54020=_0x54c7af['some'](_0x4c1c55=>{const _0x9afe9a=_0x335e70;if(_0x1eafd0[_0x9afe9a(0x95)](typeof _0x4c1c55,_0x1eafd0[_0x9afe9a(0xd0)]))return![];return _0x4c1c55['includes'](_0x9afe9a(0xb5))||_0x4c1c55['includes'](_0x9afe9a(0xce));});if(_0xc54020){_0x55ebb3({'status':'configured','details':_0x1eafd0[_0x335e70(0xa3)](_0x54c7af[_0x335e70(0xa5)],0x0)?_0x54c7af[_0x335e70(0xa5)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x54c7af[_0x335e70(0xa5)]>0x0){_0x55ebb3({'status':_0x1eafd0[_0x335e70(0xa2)],'details':_0x54c7af[_0x335e70(0xa5)]+'\x20plugin(s)\x20configured'});return;}_0x1eafd0['drcUu'](_0x55ebb3,{'status':_0x1eafd0['QlWXs']});});});}async function getSkillsFromDir(_0x53f8d2,_0x1665d8){const _0x11bf18=_0x3f97d0,_0x45d68b={'JYcML':'SKILL.md','mfLSb':function(_0x54c656,_0x47d1b1){return _0x54c656(_0x47d1b1);},'KhdQN':function(_0x3d4883,_0x518afc,_0x1434e4){return _0x3d4883(_0x518afc,_0x1434e4);},'SrRUO':'utf-8'};if(!existsSync(_0x53f8d2))return[];const _0x2add79=[];try{const _0x3c0229=await readdir(_0x53f8d2,{'withFileTypes':!![]});for(const _0x54be57 of _0x3c0229){if(_0x54be57['isDirectory']()){const _0x2981c6=join(_0x53f8d2,_0x54be57[_0x11bf18(0xbc)],_0x45d68b['JYcML']);if(_0x45d68b[_0x11bf18(0xa8)](existsSync,_0x2981c6)){let _0xf8123c=_0x54be57['name'];try{const _0x185f83=await _0x45d68b[_0x11bf18(0xa6)](readFile,_0x2981c6,_0x45d68b[_0x11bf18(0xa0)]),_0x812d28=_0x185f83['match'](/name:\s*(.+)/);_0x812d28&&(_0xf8123c=_0x812d28[0x1][_0x11bf18(0xd8)]());}catch{}_0x2add79['push']({'name':_0x54be57['name'],'displayName':_0xf8123c,'path':_0x2981c6,'level':_0x1665d8});}}}}catch{return[];}return _0x2add79;}async function getInstalledSkills(){const _0x5e335f=_0x3f97d0,_0x3afc20={'sroeL':function(_0xb2c45f,_0x1a4f6c,_0xcc640c){return _0xb2c45f(_0x1a4f6c,_0xcc640c);},'bObJt':_0x5e335f(0xca)},[_0x604d1b,_0x46a9fe]=await Promise[_0x5e335f(0xdf)]([_0x3afc20['sroeL'](getSkillsFromDir,getProjectSkillsDir(),_0x3afc20['bObJt']),getSkillsFromDir(getUserSkillsDir(),'user')]);return{'project':_0x604d1b,'user':_0x46a9fe};}async function getEnvironments(){const _0x56cc34=_0x3f97d0,_0x38a429={'tgoVY':function(_0x30b0ea,_0x5404ef,_0x28de66){return _0x30b0ea(_0x5404ef,_0x28de66);},'oBQEB':_0x56cc34(0xe2),'KHmIm':function(_0x34c016,_0x243162){return _0x34c016(_0x243162);},'RWneY':function(_0x35756e){return _0x35756e();},'DeorM':function(_0x2de2c8,_0x5e66e4){return _0x2de2c8(_0x5e66e4);}},{envNames:_0x431bc7,activeEnv:_0x50471c}=await _0x38a429['RWneY'](getEnvNames),_0x3d8303=getRangerDir();if(!_0x38a429[_0x56cc34(0xd6)](existsSync,_0x3d8303))return{'envs':[],'activeEnv':null};const _0x407a2b=_0x431bc7['map'](_0x321cf9=>{const _0x3f72f6=_0x56cc34,_0x94111f=getEnvDir(_0x321cf9),_0x54b4cb=_0x38a429['tgoVY'](join,_0x94111f,_0x38a429[_0x3f72f6(0xdc)]),_0x2b3cce=join(_0x94111f,'auth.json'),_0x2e7201=join(_0x94111f,'auth.json.enc');return{'name':_0x321cf9,'settingsPath':existsSync(_0x54b4cb)?_0x54b4cb:_0x3f72f6(0xb8),'hasPlaintextAuth':existsSync(_0x2b3cce),'hasEncryptedAuth':_0x38a429[_0x3f72f6(0xe0)](existsSync,_0x2e7201),'isActive':_0x321cf9===_0x50471c};});return{'envs':_0x407a2b,'activeEnv':_0x50471c};}function _0x2071(_0x2d704d,_0xb05d23){_0x2d704d=_0x2d704d-0x90;const _0x4540bf=_0x4540();let _0x2071ce=_0x4540bf[_0x2d704d];return _0x2071ce;}export async function status(){const _0x4e006e=_0x3f97d0,_0x56acc0={'LTIKb':'\x0a📊\x20Ranger\x20Status\x0a','Fmdso':function(_0x44c999){return _0x44c999();},'FgxbW':function(_0x4c6ad4,_0x458cf3,_0x43c2c5){return _0x4c6ad4(_0x458cf3,_0x43c2c5);},'TQnLm':function(_0x3f8c03,_0x1c1251){return _0x3f8c03(_0x1c1251);},'UNynb':function(_0x246e62){return _0x246e62();},'hLlbE':function(_0x3cec6,_0x454572){return _0x3cec6!==_0x454572;},'YSTFn':function(_0x588109,_0x25a0c3){return _0x588109(_0x25a0c3);},'SAEVQ':function(_0x372ab4){return _0x372ab4();},'MIWHr':function(_0x4d0641,_0x276c){return _0x4d0641===_0x276c;},'BsnVu':_0x4e006e(0x9c),'tUEmd':function(_0x11d685,_0x314cd4){return _0x11d685===_0x314cd4;},'ukRqz':_0x4e006e(0xaa),'UKZGt':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','JVCGj':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','DijFU':function(_0x4ca430,_0x111f81){return _0x4ca430(_0x111f81);},'jVzlW':'ranger@trailhead','LjZCS':_0x4e006e(0xcc),'pNOJn':'\x20\x20Not\x20installed','MuYpr':_0x4e006e(0xb9),'AIrJp':function(_0x630ec1,_0x5e2c43){return _0x630ec1+_0x5e2c43;},'xAGSA':function(_0x220b51,_0x431603){return _0x220b51>_0x431603;},'ZkOGd':'\x20\x20Project-level:','VKjjp':function(_0x2f0d18,_0x34dd9d,_0x3395d9){return _0x2f0d18(_0x34dd9d,_0x3395d9);},'aCZTG':function(_0x199f4a,_0x16069f){return _0x199f4a(_0x16069f);},'LstaY':'plaintext','EAMtu':'none'};console[_0x4e006e(0xb3)](_0x56acc0[_0x4e006e(0xe5)]);const _0x477f78=process[_0x4e006e(0xa7)](),_0x23a2c8=_0x56acc0['Fmdso'](getRangerDir);if(!existsSync(_0x23a2c8)){console[_0x4e006e(0xb3)](_0x4e006e(0x97)+_0x56acc0[_0x4e006e(0xd3)](link,_0x477f78,bold(_0x56acc0[_0x4e006e(0xb2)](basename,_0x477f78)))),console[_0x4e006e(0xb3)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x4e006e(0xb3)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x4e006e(0xb3)](_0x4e006e(0x97)+link(_0x477f78,bold(basename(_0x477f78))));const _0x2a599d=getCurrentVersion(),_0x36ba92=_0x56acc0[_0x4e006e(0xaf)](getLatestVersion);if(_0x36ba92['version']&&_0x56acc0['hLlbE'](_0x36ba92[_0x4e006e(0xf1)],_0x2a599d))console['log'](_0x4e006e(0x9d)+_0x2a599d+_0x4e006e(0x93)+_0x36ba92[_0x4e006e(0xf1)]+')'),console[_0x4e006e(0xb3)](_0x4e006e(0xad));else _0x36ba92[_0x4e006e(0xf1)]?console['log']('Version:\x20'+_0x2a599d+'\x20(up\x20to\x20date)'):console[_0x4e006e(0xb3)]('Version:\x20'+_0x2a599d);const _0x388bcc=await getToken();if(_0x388bcc){const _0x18ac78=await _0x56acc0['YSTFn'](getCurrentUser,_0x388bcc);_0x18ac78['success']?console[_0x4e006e(0xb3)](_0x4e006e(0xdb)+bold(_0x18ac78['user'][_0x4e006e(0xeb)])):(console['log']('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x4e006e(0xb3)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console['log'](_0x4e006e(0xea)),console[_0x4e006e(0xb3)]('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env']['DEBUG']&&(console[_0x4e006e(0xb3)]('API\x20Environment:\x20'+_0x56acc0['UNynb'](getCurrentEnvironment)),console['log'](_0x4e006e(0xc4)+getApiBaseUrl()));console['log'](_0x4e006e(0xcd));const _0x415b15=await _0x56acc0[_0x4e006e(0xb7)](getOpencodePluginStatus);if(_0x56acc0[_0x4e006e(0xe3)](_0x415b15['status'],_0x56acc0[_0x4e006e(0x9b)]))console[_0x4e006e(0xb3)]('\x20\x20'+bold('@ranger-testing/opencode-plugin')+_0x4e006e(0xc7)),_0x415b15[_0x4e006e(0xc1)]&&console['log']('\x20\x20'+_0x415b15[_0x4e006e(0xc1)]);else _0x56acc0[_0x4e006e(0xa9)](_0x415b15['status'],_0x56acc0['ukRqz'])?(console['log'](_0x4e006e(0xec)),_0x415b15['details']&&console[_0x4e006e(0xb3)]('\x20\x20'+_0x415b15[_0x4e006e(0xc1)]),console['log'](_0x56acc0['UKZGt'])):console[_0x4e006e(0xb3)](_0x56acc0['JVCGj']);console['log'](_0x4e006e(0x94));const _0x4af3c0=await _0x56acc0['DijFU'](getPluginInfo,_0x56acc0[_0x4e006e(0x99)]);if(_0x4af3c0){const _0xf666ad=_0x4af3c0['scope']||_0x4e006e(0xd1),_0x278f6b=_0x4af3c0[_0x4e006e(0xcc)]?_0x56acc0['LjZCS']:'disabled';console[_0x4e006e(0xb3)]('\x20\x20'+bold(_0x56acc0[_0x4e006e(0x99)])+_0x4e006e(0xbe)+_0xf666ad+',\x20'+_0x278f6b+')');}else console[_0x4e006e(0xb3)](_0x56acc0[_0x4e006e(0xd7)]),console[_0x4e006e(0xb3)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)');console['log'](_0x56acc0['MuYpr']);const {project:_0xa63413,user:_0x25a9f5}=await _0x56acc0[_0x4e006e(0xaf)](getInstalledSkills),_0x13529f=_0xa63413['filter'](_0x53b533=>RANGER_MANAGED_SKILLS['includes'](_0x53b533['name'])),_0x7805bb=_0x25a9f5['filter'](_0x2b6ae0=>RANGER_MANAGED_SKILLS['includes'](_0x2b6ae0[_0x4e006e(0xbc)])),_0x495e8c=_0x56acc0[_0x4e006e(0xf0)](_0x13529f[_0x4e006e(0xa5)],_0x7805bb['length']);if(_0x495e8c===0x0)console[_0x4e006e(0xb3)]('No\x20skills\x20installed'),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x56acc0['xAGSA'](_0x13529f['length'],0x0)){console['log'](_0x56acc0[_0x4e006e(0xc8)]);for(const _0x13fbdf of _0x13529f){console['log']('\x20\x20\x20\x20'+bold(_0x13fbdf['displayName'])+':\x20'+_0x56acc0['VKjjp'](link,_0x13fbdf['path'],_0x56acc0[_0x4e006e(0xb2)](basename,_0x13fbdf[_0x4e006e(0xbd)])));}}if(_0x56acc0[_0x4e006e(0xac)](_0x7805bb[_0x4e006e(0xa5)],0x0)){console[_0x4e006e(0xb3)](_0x4e006e(0xd4));for(const _0x184e68 of _0x7805bb){console['log'](_0x4e006e(0xda)+_0x56acc0[_0x4e006e(0xef)](bold,_0x184e68[_0x4e006e(0xb0)])+':\x20'+link(_0x184e68['path'],basename(_0x184e68[_0x4e006e(0xbd)])));}}}console['log'](_0x4e006e(0xcb));const {envs:_0x1182c9,activeEnv:_0x10b812}=await getEnvironments();if(_0x1182c9['length']===0x0)console[_0x4e006e(0xb3)](_0x4e006e(0xc3)),console['log'](_0x4e006e(0xe9));else{for(const _0x2c4a8f of _0x1182c9){const _0x4dbe9c=_0x2c4a8f[_0x4e006e(0xe7)]?'\x20(active)':'',_0x1401b8=_0x2c4a8f['hasEncryptedAuth']?_0x4e006e(0xbb):_0x2c4a8f[_0x4e006e(0xc6)]?_0x56acc0[_0x4e006e(0xc5)]:_0x56acc0['EAMtu'];console['log']('\x20\x20'+_0x56acc0['TQnLm'](bold,_0x2c4a8f['name'])+_0x4dbe9c),console[_0x4e006e(0xb3)]('\x20\x20\x20\x20Auth:\x20'+_0x1401b8),_0x2c4a8f['settingsPath']!==_0x4e006e(0xb8)&&console['log']('\x20\x20\x20\x20Settings:\x20'+link(_0x2c4a8f[_0x4e006e(0x9e)],basename(_0x2c4a8f[_0x4e006e(0x9e)])));}!_0x10b812&&(console[_0x4e006e(0xb3)]('\x0a\x20\x20No\x20active\x20profile\x20set'),console['log'](_0x4e006e(0xa1)+_0x1182c9[_0x4e006e(0xed)](_0x3701f0=>_0x3701f0[_0x4e006e(0xbc)])['join'](',\x20')+')'));}console['log']('');}
|
|
1
|
+
const _0x5b6fef=_0xf1a5;(function(_0x4e7d4d,_0x512a56){const _0x245a48=_0xf1a5,_0x5d6d56=_0x4e7d4d();while(!![]){try{const _0x50eb8d=parseInt(_0x245a48(0x13e))/0x1+-parseInt(_0x245a48(0x130))/0x2*(parseInt(_0x245a48(0x10c))/0x3)+-parseInt(_0x245a48(0x15b))/0x4+parseInt(_0x245a48(0x14a))/0x5*(parseInt(_0x245a48(0x13c))/0x6)+parseInt(_0x245a48(0x11d))/0x7+-parseInt(_0x245a48(0x159))/0x8+parseInt(_0x245a48(0x15f))/0x9*(-parseInt(_0x245a48(0x145))/0xa);if(_0x50eb8d===_0x512a56)break;else _0x5d6d56['push'](_0x5d6d56['shift']());}catch(_0xf10b3e){_0x5d6d56['push'](_0x5d6d56['shift']());}}}(_0x28e3,0x215f6));function _0x28e3(){const _0x3bc351=['opencode','log','649835Axoguv','env','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20',':\x20configured','\x1b[1m','PPIHq','\x20\x20\x20\x20','jUnsM',':\x20installed\x20(','ZTmIn','pKgso','\x0a📊\x20Ranger\x20Status\x0a','zDOqG','\x0a---\x20Claude\x20Code\x20Plugin\x20---','IFTHs','778984JpslEo','BTbzY','373508QQESzp','nVHqf','none','utf-8','1435518jvUKzh','@ranger-testing/opencode-plugin','hasEncryptedAuth','\x20(active)','stdout','scope','ibVfQ','user','(not\x20found)','NtkWD','iQcQa','version','name','PYEHm','Version:\x20','wgvoY','\x20\x20Not\x20installed','hgAQR','configured','path','settingsPath','22467fQZjJE','\x20\x20\x20\x20Settings:\x20','includes','\x1b]8;;file://','No\x20skills\x20installed','gyzKR','GjSgn','DeDDO','disabled','wFVGd','nTXtz','details','enabled','unknown','oAkCV','HAZxo','RZVhN','1570037HqAIRQ','qiOwG','\x20(up\x20to\x20date)','toString','goJRc','No\x20profiles\x20configured','isActive','API\x20Token:\x20✗\x20Not\x20found','parse','string','\x20plugin(s)\x20configured','vsXyo','ranger@trailhead','rcWnd','zvADa','trim','debug','\x20\x20Run:\x20ranger\x20setup\x20--opencode','length','26gfAbuw','jmEKv','encrypted','DCLRS','yiypU','project','KzzZc','\x20\x20Project-level:','API\x20Environment:\x20','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','\x0a---\x20Profiles\x20---','not_installed','12nlglUY','KThze','259580BhkuBo','KVsIK','ujmwC','displayName','IHHck','UrMnW','yAWiJ','20JFydCv','hasPlaintextAuth','qTGih'];_0x28e3=function(){return _0x3bc351;};return _0x28e3();}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';function _0xf1a5(_0x5e4fb7,_0x4b4a5e){_0x5e4fb7=_0x5e4fb7-0xf8;const _0x28e356=_0x28e3();let _0xf1a519=_0x28e356[_0x5e4fb7];return _0xf1a519;}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=_0x448f7b=>_0x5b6fef(0x14e)+_0x448f7b+'\x1b[0m',link=(_0x58468b,_0x364442)=>_0x5b6fef(0x10f)+_0x58468b+'\x07'+(_0x364442||_0x58468b)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x2af480=_0x5b6fef,_0x1f43bf={'BTbzY':_0x2af480(0x13b),'rcWnd':function(_0x5e6577,_0x2bf3f7){return _0x5e6577(_0x2bf3f7);},'XlKSZ':'not_configured','ibVfQ':_0x2af480(0x12d),'qTGih':'config','FcvBe':'pipe','tZabn':'data','PYEHm':'error','HXKKl':'close'};return new Promise(_0x2d80f3=>{const _0xffdf34=_0x2af480,_0x42e565={'zDOqG':function(_0x3731c4,_0x5846cd){return _0x3731c4!==_0x5846cd;},'jUnsM':_0xffdf34(0xf8),'IFTHs':function(_0x19b3af,_0x1b25a3){return _0x19b3af!==_0x1b25a3;},'pKgso':function(_0x453cf6,_0x59b127){return _0x453cf6(_0x59b127);},'DeDDO':function(_0x4821b6,_0x2dc0dc){return _0x4821b6(_0x2dc0dc);},'zqPAo':_0xffdf34(0x109),'UrMnW':function(_0x497854,_0xf7d6d9){const _0x1c6212=_0xffdf34;return _0x1f43bf[_0x1c6212(0x12a)](_0x497854,_0xf7d6d9);},'GjSgn':_0x1f43bf['XlKSZ']},_0x81715a=spawn(_0xffdf34(0x148),[_0x1f43bf[_0xffdf34(0xfd)],_0x1f43bf[_0xffdf34(0x147)]],{'stdio':['ignore','pipe',_0x1f43bf['FcvBe']]});let _0x37173c='';_0x81715a[_0xffdf34(0xfb)]?.['on'](_0x1f43bf['tZabn'],_0x56b3fe=>{const _0x56aab7=_0xffdf34;_0x37173c+=_0x56b3fe[_0x56aab7(0x120)]();}),_0x81715a['stderr']?.['on']('data',_0x4cdbff=>{const _0x2bf832=_0xffdf34;_0x37173c+=_0x4cdbff[_0x2bf832(0x120)]();}),_0x81715a['on'](_0x1f43bf[_0xffdf34(0x104)],()=>{const _0x1d7ed4=_0xffdf34;_0x2d80f3({'status':_0x1f43bf[_0x1d7ed4(0x15a)]});}),_0x81715a['on'](_0x1f43bf['HXKKl'],_0x4f9e59=>{const _0x4cc56e=_0xffdf34,_0x2aa18a={'IHHck':function(_0x3b18c2,_0x3898db){const _0x40176b=_0xf1a5;return _0x42e565[_0x40176b(0x156)](_0x3b18c2,_0x3898db);},'wDiyJ':_0x4cc56e(0x126),'NtkWD':_0x42e565[_0x4cc56e(0x151)]};if(_0x42e565[_0x4cc56e(0x158)](_0x4f9e59,0x0)){_0x42e565[_0x4cc56e(0x154)](_0x2d80f3,{'status':_0x4cc56e(0x13b)});return;}const _0x40ffe6=_0x37173c[_0x4cc56e(0x12c)]();let _0x289257=null;if(_0x40ffe6)try{_0x289257=JSON[_0x4cc56e(0x125)](_0x40ffe6);}catch{const _0x4ce4bf=_0x40ffe6['match'](/\{[\s\S]*\}$/);if(_0x4ce4bf)try{_0x289257=JSON['parse'](_0x4ce4bf[0x0]);}catch{_0x289257=null;}}const _0x4b1621=Array['isArray'](_0x289257?.['plugin'])?_0x289257?.['plugin']:[],_0x83663b=_0x4b1621['some'](_0x264932=>{const _0x512a17=_0x4cc56e;if(_0x2aa18a[_0x512a17(0x142)](typeof _0x264932,_0x2aa18a['wDiyJ']))return![];return _0x264932[_0x512a17(0x10e)](_0x2aa18a[_0x512a17(0x100)])||_0x264932['includes']('opencode-plugin');});if(_0x83663b){_0x42e565[_0x4cc56e(0x113)](_0x2d80f3,{'status':_0x42e565['zqPAo'],'details':_0x4b1621['length']>0x0?_0x4b1621[_0x4cc56e(0x12f)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x4b1621[_0x4cc56e(0x12f)]>0x0){_0x42e565[_0x4cc56e(0x143)](_0x2d80f3,{'status':_0x42e565['GjSgn'],'details':_0x4b1621[_0x4cc56e(0x12f)]+_0x4cc56e(0x127)});return;}_0x2d80f3({'status':_0x42e565[_0x4cc56e(0x112)]});});});}async function getSkillsFromDir(_0x40a9c7,_0x1d0bff){const _0x53b5d7=_0x5b6fef,_0xa30e6f={'yiypU':function(_0x478807,_0x51529d){return _0x478807(_0x51529d);},'yQwMM':function(_0x482829,_0x56b74f,_0x9e8fda,_0x18eb8c){return _0x482829(_0x56b74f,_0x9e8fda,_0x18eb8c);},'KgbDK':'SKILL.md','iQcQa':function(_0x40add6,_0x15bd23){return _0x40add6(_0x15bd23);}};if(!_0xa30e6f[_0x53b5d7(0x134)](existsSync,_0x40a9c7))return[];const _0x39da51=[];try{const _0x18f193=await readdir(_0x40a9c7,{'withFileTypes':!![]});for(const _0x317146 of _0x18f193){if(_0x317146['isDirectory']()){const _0x3a1a7d=_0xa30e6f['yQwMM'](join,_0x40a9c7,_0x317146[_0x53b5d7(0x103)],_0xa30e6f['KgbDK']);if(_0xa30e6f[_0x53b5d7(0x101)](existsSync,_0x3a1a7d)){let _0x3b0ea2=_0x317146[_0x53b5d7(0x103)];try{const _0x2b9515=await readFile(_0x3a1a7d,_0x53b5d7(0x15e)),_0x372f20=_0x2b9515['match'](/name:\s*(.+)/);_0x372f20&&(_0x3b0ea2=_0x372f20[0x1]['trim']());}catch{}_0x39da51['push']({'name':_0x317146[_0x53b5d7(0x103)],'displayName':_0x3b0ea2,'path':_0x3a1a7d,'level':_0x1d0bff});}}}}catch{return[];}return _0x39da51;}async function getInstalledSkills(){const _0x2fa87f=_0x5b6fef,_0x232421={'oblXQ':function(_0x18af4f,_0x3238c0,_0x316a18){return _0x18af4f(_0x3238c0,_0x316a18);},'NZoIM':function(_0x4dde0e){return _0x4dde0e();},'yAWiJ':function(_0x5d1d65,_0x1f2251,_0x55f3cf){return _0x5d1d65(_0x1f2251,_0x55f3cf);}},[_0x1ae316,_0x4f6e8f]=await Promise['all']([_0x232421['oblXQ'](getSkillsFromDir,_0x232421['NZoIM'](getProjectSkillsDir),_0x2fa87f(0x135)),_0x232421[_0x2fa87f(0x144)](getSkillsFromDir,_0x232421['NZoIM'](getUserSkillsDir),_0x2fa87f(0xfe))]);return{'project':_0x1ae316,'user':_0x4f6e8f};}async function getEnvironments(){const _0x213694={'nVHqf':function(_0x15d258,_0xa899d1){return _0x15d258(_0xa899d1);},'wgvoY':function(_0x1b31cf,_0x37005c,_0x194e67){return _0x1b31cf(_0x37005c,_0x194e67);},'BUKRT':'settings.json','jGgzm':'auth.json.enc','yPKBR':function(_0x39f73a){return _0x39f73a();},'lckiT':function(_0xb882e5){return _0xb882e5();}},{envNames:_0x4e8ab6,activeEnv:_0x29187c}=await _0x213694['yPKBR'](getEnvNames),_0x48638c=_0x213694['lckiT'](getRangerDir);if(!existsSync(_0x48638c))return{'envs':[],'activeEnv':null};const _0x48d42b=_0x4e8ab6['map'](_0x238c7a=>{const _0x482a6e=_0xf1a5,_0x1a5048=_0x213694[_0x482a6e(0x15c)](getEnvDir,_0x238c7a),_0x144f06=_0x213694[_0x482a6e(0x106)](join,_0x1a5048,_0x213694['BUKRT']),_0x2b348a=join(_0x1a5048,'auth.json'),_0xd2451e=join(_0x1a5048,_0x213694['jGgzm']);return{'name':_0x238c7a,'settingsPath':existsSync(_0x144f06)?_0x144f06:_0x482a6e(0xff),'hasPlaintextAuth':existsSync(_0x2b348a),'hasEncryptedAuth':existsSync(_0xd2451e),'isActive':_0x238c7a===_0x29187c};});return{'envs':_0x48d42b,'activeEnv':_0x29187c};}export async function status(){const _0x3ee21d=_0x5b6fef,_0x5d6081={'KThze':_0x3ee21d(0x155),'zvADa':function(_0x552999,_0x401d5a){return _0x552999(_0x401d5a);},'KzzZc':function(_0x462930,_0x702ae9){return _0x462930(_0x702ae9);},'qiOwG':function(_0x5478a2){return _0x5478a2();},'PPIHq':function(_0x3cd81e,_0x459e78){return _0x3cd81e!==_0x459e78;},'wFVGd':function(_0x4194fd){return _0x4194fd();},'RZVhN':function(_0x40eac4,_0x5ad52a){return _0x40eac4===_0x5ad52a;},'ujmwC':_0x3ee21d(0x109),'cHkTJ':'not_configured','uVxJm':'\x20\x20Not\x20configured','UCqBK':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','DCLRS':_0x3ee21d(0x157),'oAkCV':function(_0x3f577b,_0xc57f25){return _0x3f577b(_0xc57f25);},'goJRc':'enabled','OJVwK':_0x3ee21d(0x114),'vsXyo':function(_0x408cd0,_0x15c1a0){return _0x408cd0(_0x15c1a0);},'mDEuO':'ranger@trailhead','nTXtz':_0x3ee21d(0x107),'gyzKR':function(_0x286cba,_0x400f35){return _0x286cba+_0x400f35;},'jlyWX':_0x3ee21d(0x110),'ZTmIn':function(_0x13c42e,_0x294960){return _0x13c42e(_0x294960);},'JXFsg':function(_0x36b55e,_0x3c86bd){return _0x36b55e>_0x3c86bd;},'MFAJS':'\x20\x20User-level:','KVsIK':function(_0xc1845d,_0x67004,_0x4e9454){return _0xc1845d(_0x67004,_0x4e9454);},'SqoRY':function(_0x13bd43,_0x2ac513){return _0x13bd43(_0x2ac513);},'BxHWV':_0x3ee21d(0x13a),'HAZxo':function(_0x19ba16,_0x284b4b){return _0x19ba16===_0x284b4b;},'jmEKv':_0x3ee21d(0x122),'CjAuP':_0x3ee21d(0x132),'hgAQR':'plaintext'};console[_0x3ee21d(0x149)](_0x5d6081[_0x3ee21d(0x13d)]);const _0x2d5547=process['cwd'](),_0x1409d6=getRangerDir();if(!existsSync(_0x1409d6)){console[_0x3ee21d(0x149)]('Root:\x20'+link(_0x2d5547,_0x5d6081[_0x3ee21d(0x12b)](bold,basename(_0x2d5547)))),console['log']('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x3ee21d(0x149)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log']('Root:\x20'+link(_0x2d5547,bold(_0x5d6081[_0x3ee21d(0x136)](basename,_0x2d5547))));const _0x5c20a3=_0x5d6081['qiOwG'](getCurrentVersion),_0x43b1e5=getLatestVersion();if(_0x43b1e5[_0x3ee21d(0x102)]&&_0x5d6081[_0x3ee21d(0x14f)](_0x43b1e5[_0x3ee21d(0x102)],_0x5c20a3))console['log'](_0x3ee21d(0x105)+_0x5c20a3+'\x20(latest:\x20'+_0x43b1e5[_0x3ee21d(0x102)]+')'),console[_0x3ee21d(0x149)]('\x20\x20Run:\x20ranger\x20update');else _0x43b1e5['version']?console['log']('Version:\x20'+_0x5c20a3+_0x3ee21d(0x11f)):console[_0x3ee21d(0x149)](_0x3ee21d(0x105)+_0x5c20a3);const _0x3c69ce=await getToken();if(_0x3c69ce){const _0x2ea510=await _0x5d6081['zvADa'](getCurrentUser,_0x3c69ce);_0x2ea510['success']?console['log']('Organization:\x20'+bold(_0x2ea510[_0x3ee21d(0xfe)]['organizationName'])):(console['log']('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x3ee21d(0x149)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x3ee21d(0x149)](_0x3ee21d(0x124)),console[_0x3ee21d(0x149)]('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0x3ee21d(0x14b)]['DEBUG']&&(console['log'](_0x3ee21d(0x138)+getCurrentEnvironment()),console[_0x3ee21d(0x149)]('API\x20URL:\x20'+_0x5d6081['qiOwG'](getApiBaseUrl)));console['log']('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x820913=await _0x5d6081[_0x3ee21d(0x115)](getOpencodePluginStatus);if(_0x5d6081[_0x3ee21d(0x11c)](_0x820913['status'],_0x5d6081[_0x3ee21d(0x140)]))console['log']('\x20\x20'+bold('@ranger-testing/opencode-plugin')+_0x3ee21d(0x14d)),_0x820913[_0x3ee21d(0x117)]&&console[_0x3ee21d(0x149)]('\x20\x20'+_0x820913[_0x3ee21d(0x117)]);else _0x5d6081['RZVhN'](_0x820913['status'],_0x5d6081['cHkTJ'])?(console['log'](_0x5d6081['uVxJm']),_0x820913[_0x3ee21d(0x117)]&&console[_0x3ee21d(0x149)]('\x20\x20'+_0x820913['details']),console[_0x3ee21d(0x149)](_0x3ee21d(0x12e))):console['log'](_0x5d6081['UCqBK']);console['log'](_0x5d6081[_0x3ee21d(0x133)]);const _0x434233=await _0x5d6081[_0x3ee21d(0x11a)](getPluginInfo,_0x3ee21d(0x129));if(_0x434233){const _0xaafa6f=_0x434233[_0x3ee21d(0xfc)]||_0x3ee21d(0x119),_0x1e0cb2=_0x434233[_0x3ee21d(0x118)]?_0x5d6081[_0x3ee21d(0x121)]:_0x5d6081['OJVwK'];console[_0x3ee21d(0x149)]('\x20\x20'+_0x5d6081[_0x3ee21d(0x128)](bold,_0x5d6081['mDEuO'])+_0x3ee21d(0x152)+_0xaafa6f+',\x20'+_0x1e0cb2+')');}else console[_0x3ee21d(0x149)](_0x5d6081[_0x3ee21d(0x116)]),console[_0x3ee21d(0x149)](_0x3ee21d(0x139));console['log']('\x0a---\x20Skills\x20---');const {project:_0xdf3893,user:_0x46511f}=await _0x5d6081[_0x3ee21d(0x11e)](getInstalledSkills),_0x59f2ed=_0xdf3893['filter'](_0x2848b9=>RANGER_MANAGED_SKILLS['includes'](_0x2848b9[_0x3ee21d(0x103)])),_0x2a92c2=_0x46511f['filter'](_0x23de67=>RANGER_MANAGED_SKILLS['includes'](_0x23de67[_0x3ee21d(0x103)])),_0x58cd0b=_0x5d6081[_0x3ee21d(0x111)](_0x59f2ed['length'],_0x2a92c2[_0x3ee21d(0x12f)]);if(_0x58cd0b===0x0)console[_0x3ee21d(0x149)](_0x5d6081['jlyWX']),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x59f2ed['length']>0x0){console[_0x3ee21d(0x149)](_0x3ee21d(0x137));for(const _0x28d0bd of _0x59f2ed){console[_0x3ee21d(0x149)]('\x20\x20\x20\x20'+bold(_0x28d0bd[_0x3ee21d(0x141)])+':\x20'+link(_0x28d0bd[_0x3ee21d(0x10a)],_0x5d6081[_0x3ee21d(0x153)](basename,_0x28d0bd['path'])));}}if(_0x5d6081['JXFsg'](_0x2a92c2['length'],0x0)){console[_0x3ee21d(0x149)](_0x5d6081['MFAJS']);for(const _0x3ad8c1 of _0x2a92c2){console[_0x3ee21d(0x149)](_0x3ee21d(0x150)+_0x5d6081[_0x3ee21d(0x128)](bold,_0x3ad8c1[_0x3ee21d(0x141)])+':\x20'+_0x5d6081['KVsIK'](link,_0x3ad8c1[_0x3ee21d(0x10a)],_0x5d6081['SqoRY'](basename,_0x3ad8c1['path'])));}}}console['log'](_0x5d6081['BxHWV']);const {envs:_0x53e5c4,activeEnv:_0x5c180f}=await _0x5d6081[_0x3ee21d(0x11e)](getEnvironments);if(_0x5d6081[_0x3ee21d(0x11b)](_0x53e5c4['length'],0x0))console['log'](_0x5d6081[_0x3ee21d(0x131)]),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x5b365a of _0x53e5c4){const _0x12bc9f=_0x5b365a[_0x3ee21d(0x123)]?_0x3ee21d(0xfa):'',_0x8c0680=_0x5b365a[_0x3ee21d(0xf9)]?_0x5d6081['CjAuP']:_0x5b365a[_0x3ee21d(0x146)]?_0x5d6081[_0x3ee21d(0x108)]:_0x3ee21d(0x15d);console['log']('\x20\x20'+bold(_0x5b365a['name'])+_0x12bc9f),console[_0x3ee21d(0x149)]('\x20\x20\x20\x20Auth:\x20'+_0x8c0680),_0x5d6081[_0x3ee21d(0x14f)](_0x5b365a[_0x3ee21d(0x10b)],'(not\x20found)')&&console['log'](_0x3ee21d(0x10d)+_0x5d6081[_0x3ee21d(0x13f)](link,_0x5b365a['settingsPath'],basename(_0x5b365a['settingsPath'])));}!_0x5c180f&&(console['log']('\x0a\x20\x20No\x20active\x20profile\x20set'),console['log'](_0x3ee21d(0x14c)+_0x53e5c4['map'](_0x215d8a=>_0x215d8a['name'])['join'](',\x20')+')'));}console[_0x3ee21d(0x149)]('');}
|