@loxia-labs/loxia-autopilot-one 1.0.3 → 1.0.5
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/README.md +1 -1
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +2 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4e9f0a=a0_0x2701;(function(_0x3a4336,_0x5471f8){const _0x5d4aa1=a0_0x2701,_0x14a7b4=_0x3a4336();while(!![]){try{const _0xb5342d=-parseInt(_0x5d4aa1(0x16a))/0x1*(-parseInt(_0x5d4aa1(0x114))/0x2)+-parseInt(_0x5d4aa1(0x167))/0x3*(parseInt(_0x5d4aa1(0x13e))/0x4)+parseInt(_0x5d4aa1(0x124))/0x5+parseInt(_0x5d4aa1(0x170))/0x6*(-parseInt(_0x5d4aa1(0x109))/0x7)+-parseInt(_0x5d4aa1(0x163))/0x8*(parseInt(_0x5d4aa1(0x117))/0x9)+-parseInt(_0x5d4aa1(0x145))/0xa*(parseInt(_0x5d4aa1(0x11a))/0xb)+parseInt(_0x5d4aa1(0x129))/0xc;if(_0xb5342d===_0x5471f8)break;else _0x14a7b4['push'](_0x14a7b4['shift']());}catch(_0x5bdaa9){_0x14a7b4['push'](_0x14a7b4['shift']());}}}(a0_0x246f,0xb894f));import{promises as a0_0x4101c3}from'fs';import a0_0x175bde from'path';function a0_0x2701(_0x3c2500,_0x1b395b){_0x3c2500=_0x3c2500-0xf5;const _0x246f89=a0_0x246f();let _0x270154=_0x246f89[_0x3c2500];if(a0_0x2701['AWmPNt']===undefined){var _0x38f6af=function(_0x3e4118){const _0x46b12e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4101c3='',_0x175bde='';for(let _0x542411=0x0,_0xbd4818,_0x509b5b,_0x12514a=0x0;_0x509b5b=_0x3e4118['charAt'](_0x12514a++);~_0x509b5b&&(_0xbd4818=_0x542411%0x4?_0xbd4818*0x40+_0x509b5b:_0x509b5b,_0x542411++%0x4)?_0x4101c3+=String['fromCharCode'](0xff&_0xbd4818>>(-0x2*_0x542411&0x6)):0x0){_0x509b5b=_0x46b12e['indexOf'](_0x509b5b);}for(let _0x3a00a4=0x0,_0x48fdce=_0x4101c3['length'];_0x3a00a4<_0x48fdce;_0x3a00a4++){_0x175bde+='%'+('00'+_0x4101c3['charCodeAt'](_0x3a00a4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x175bde);};a0_0x2701['QQQEXZ']=_0x38f6af,a0_0x2701['sJgIQu']={},a0_0x2701['AWmPNt']=!![];}const _0x2d6212=_0x246f89[0x0],_0x2b7d75=_0x3c2500+_0x2d6212,_0x1232ea=a0_0x2701['sJgIQu'][_0x2b7d75];return!_0x1232ea?(_0x270154=a0_0x2701['QQQEXZ'](_0x270154),a0_0x2701['sJgIQu'][_0x2b7d75]=_0x270154):_0x270154=_0x1232ea,_0x270154;}import{exec as a0_0x542411}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0xbd4818 from'../utilities/tagParser.js';const exec=promisify(a0_0x542411),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x4e9f0a(0xf8),'VALID_MODES':[a0_0x4e9f0a(0xf8),'fix','auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':'.backup.json','CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{['getDescription'](){const _0x10e9cb=a0_0x4e9f0a;return _0x10e9cb(0x113);}['parseParameters'](_0x509b5b){const _0x5fb9ac=a0_0x4e9f0a;if(typeof _0x509b5b==='object'&&_0x509b5b!==null)return{'path':_0x509b5b[_0x5fb9ac(0x14b)]||'.','mode':_0x509b5b['mode']||RESOLVER_CONFIG[_0x5fb9ac(0x155)],'includeDev':_0x509b5b[_0x5fb9ac(0x131)]!==undefined?_0x509b5b[_0x5fb9ac(0x131)]:!![]};if(typeof _0x509b5b===_0x5fb9ac(0x140)){const _0x12514a=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x3a00a4=_0x12514a[_0x5fb9ac(0x146)](_0x509b5b);if(_0x3a00a4){const _0x426f20=_0x3a00a4[0x1],_0x71fcf5=_0x3a00a4[0x2],_0x4bb289=/path=["']([^"']*)["']/i['exec'](_0x426f20),_0x44cda3=/mode=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x426f20),_0x29f8d4=/include-dev=["']([^"']*)["']/i['exec'](_0x426f20),_0x218aa4=/<path>(.*?)<\/path>/i,_0x30a894=_0x218aa4['exec'](_0x71fcf5),_0xc7139c=/<mode>(.*?)<\/mode>/i,_0x26d664=_0xc7139c[_0x5fb9ac(0x146)](_0x71fcf5),_0x44b755=/<include-dev>(.*?)<\/include-dev>/i,_0x40ac89=_0x44b755[_0x5fb9ac(0x146)](_0x71fcf5),_0x136e5=(_0x30a894?_0x30a894[0x1][_0x5fb9ac(0x15b)]():null)||(_0x4bb289?_0x4bb289[0x1]:'.'),_0x3b2100=(_0x26d664?_0x26d664[0x1]['trim']():null)||(_0x44cda3?_0x44cda3[0x1]:RESOLVER_CONFIG[_0x5fb9ac(0x155)]),_0x2cc67c=(_0x40ac89?_0x40ac89[0x1][_0x5fb9ac(0x15b)]():null)||(_0x29f8d4?_0x29f8d4[0x1]:'true');return{'path':_0x136e5,'mode':_0x3b2100,'includeDev':this['_parseBoolean'](_0x2cc67c,!![])};}const _0x48fdce=/\[resolve\s+([^\]]*)\]/i,_0x35bf18=_0x48fdce['exec'](_0x509b5b);if(_0x35bf18){const _0x394dd6=_0x35bf18[0x1],_0x534a48=/path=["']([^"']*)["']/i['exec'](_0x394dd6),_0x5692f4=/mode=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x394dd6),_0x14c109=/include-dev=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x394dd6);return{'path':_0x534a48?_0x534a48[0x1]:'.','mode':_0x5692f4?_0x5692f4[0x1]:RESOLVER_CONFIG[_0x5fb9ac(0x155)],'includeDev':this['_parseBoolean'](_0x14c109?_0x14c109[0x1]:_0x5fb9ac(0x159),!![])};}throw new Error(_0x5fb9ac(0xfd));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}['_parseBoolean'](_0x323e31,defaultValue=![]){const _0xb64347=a0_0x4e9f0a;if(_0x323e31===undefined||_0x323e31===null)return defaultValue;if(typeof _0x323e31===_0xb64347(0x133))return _0x323e31;if(typeof _0x323e31==='string')return _0x323e31[_0xb64347(0x169)]()==='true'||_0x323e31==='1';return defaultValue;}[a0_0x4e9f0a(0x111)](_0x52c8a5){const _0x113818=a0_0x4e9f0a;if(!_0x52c8a5||typeof _0x52c8a5!==_0x113818(0x138))throw new Error(_0x113818(0x164));if(_0x52c8a5['path']&&typeof _0x52c8a5['path']!=='string')throw new Error(_0x113818(0x16e));if(_0x52c8a5[_0x113818(0x165)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x113818(0x16c)](_0x52c8a5['mode']))throw new Error('Invalid\x20mode:\x20'+_0x52c8a5[_0x113818(0x165)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG[_0x113818(0x14c)]['join'](',\x20'));if(_0x52c8a5[_0x113818(0x131)]!==undefined&&typeof _0x52c8a5['includeDev']!==_0x113818(0x133))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0x4e9f0a(0x15a)](_0xa482e8,_0x183957){const _0x3e3dff=a0_0x4e9f0a,{projectDir:_0x216800,directoryAccess:_0x1fa325}=_0x183957;let _0x10e7b6=_0x216800||process[_0x3e3dff(0x11f)]();_0x1fa325&&_0x1fa325['workingDirectory']&&(_0x10e7b6=_0x1fa325[_0x3e3dff(0x108)]);const _0xaf9425=a0_0x175bde['isAbsolute'](_0xa482e8)?a0_0x175bde[_0x3e3dff(0x125)](_0xa482e8):a0_0x175bde['normalize'](a0_0x175bde['join'](_0x10e7b6,_0xa482e8)),_0x3acfd8=a0_0x175bde['normalize'](_0x10e7b6);if(!_0xaf9425[_0x3e3dff(0x157)](_0x3acfd8))throw new Error('Path\x20traversal\x20detected:\x20'+_0xa482e8+'\x20resolves\x20outside\x20working\x20directory');return _0xaf9425;}async[a0_0x4e9f0a(0xfa)](_0x120f5b){const _0x50603d=a0_0x4e9f0a;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x563fca=_0x120f5b+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x4101c3[_0x50603d(0x15f)](_0x120f5b,_0x563fca),this[_0x50603d(0xf6)]?.['info']('Created\x20backup',{'backupPath':_0x563fca}),_0x563fca;}catch(_0x3b3f79){return this['logger']?.[_0x50603d(0x132)]('Failed\x20to\x20create\x20backup',{'error':_0x3b3f79['message']}),null;}}async['_fetchPackageInfo'](_0x310bac){const _0x2944f6=a0_0x4e9f0a,_0x2cbde1=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x310bac);for(let _0x54f7fb=0x1;_0x54f7fb<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x54f7fb++){try{const _0x3a2347=new AbortController(),_0x132cd5=setTimeout(()=>_0x3a2347[_0x2944f6(0x134)](),RESOLVER_CONFIG[_0x2944f6(0x173)]),_0x2a73a9=await fetch(_0x2cbde1,{'signal':_0x3a2347['signal']});clearTimeout(_0x132cd5);if(!_0x2a73a9['ok']){if(_0x2a73a9['status']===0x194)return this[_0x2944f6(0xf6)]?.[_0x2944f6(0x132)]('Package\x20not\x20found:\x20'+_0x310bac),null;throw new Error(_0x2944f6(0x156)+_0x2a73a9[_0x2944f6(0xfc)]+':\x20'+_0x2a73a9['statusText']);}const _0xb88a0a=await _0x2a73a9[_0x2944f6(0x171)]();if(!_0xb88a0a||typeof _0xb88a0a!=='object'||!_0xb88a0a[_0x2944f6(0x105)])throw new Error(_0x2944f6(0xfe));return _0xb88a0a;}catch(_0x50829c){if(_0x54f7fb<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x2944f6(0xf6)]?.[_0x2944f6(0x115)](_0x2944f6(0x118)+_0x54f7fb+'/'+RESOLVER_CONFIG[_0x2944f6(0x12e)]+_0x2944f6(0x154)+_0x310bac),await new Promise(_0x4d4c2a=>setTimeout(_0x4d4c2a,RESOLVER_CONFIG[_0x2944f6(0x128)]*_0x54f7fb));else return this[_0x2944f6(0xf6)]?.['error'](_0x2944f6(0x161)+_0x310bac+':',_0x50829c['message']),null;}}return null;}async[a0_0x4e9f0a(0x13a)](_0x341d5b,_0xc87d2c){const _0x4cb8ae=a0_0x4e9f0a,_0x1adaae=await this[_0x4cb8ae(0x15e)](_0x341d5b);if(!_0x1adaae)return null;const _0x107fe7=_0x1adaae[_0x4cb8ae(0x105)]?.[_0x4cb8ae(0x15c)];if(!_0x107fe7)return null;const _0x1aabe0=this['_parseVersion'](_0x107fe7);if(!_0x1aabe0)return null;if(this['_isComplexRange'](_0xc87d2c)){const _0x468623=this[_0x4cb8ae(0x11e)](_0xc87d2c),_0x276d42=this['_satisfiesComplexRange'](_0x468623,_0x1aabe0);if(_0x276d42)return _0x107fe7;return null;}const _0x2a3c77=this[_0x4cb8ae(0x10e)](_0xc87d2c);if(!_0x2a3c77)return null;const _0x314b28=this[_0x4cb8ae(0x168)](_0x2a3c77,_0x1aabe0);if(_0x314b28)return _0x2a3c77[_0x4cb8ae(0x122)]+_0x107fe7;return null;}[a0_0x4e9f0a(0x116)](_0x29ecbf){const _0x5e7c22=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x2639ac=_0x5e7c22['exec'](_0x29ecbf);if(!_0x2639ac){const _0x14bbbd=_0x29ecbf['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x14bbbd)return{'major':parseInt(_0x14bbbd[0x1],0xa),'minor':parseInt(_0x14bbbd[0x2],0xa),'patch':parseInt(_0x14bbbd[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x2639ac[0x1],0xa),'minor':parseInt(_0x2639ac[0x2],0xa),'patch':parseInt(_0x2639ac[0x3],0xa),'prerelease':_0x2639ac[0x4]?_0x2639ac[0x4]['split']('.'):null,'build':_0x2639ac[0x5]||null};}['_compareVersions'](_0x2e5f63,_0x193f55){const _0x4aa316=a0_0x4e9f0a;if(_0x2e5f63['major']!==_0x193f55[_0x4aa316(0x102)])return _0x2e5f63['major']-_0x193f55[_0x4aa316(0x102)];if(_0x2e5f63[_0x4aa316(0x100)]!==_0x193f55['minor'])return _0x2e5f63[_0x4aa316(0x100)]-_0x193f55[_0x4aa316(0x100)];if(_0x2e5f63[_0x4aa316(0x11d)]!==_0x193f55[_0x4aa316(0x11d)])return _0x2e5f63[_0x4aa316(0x11d)]-_0x193f55[_0x4aa316(0x11d)];if(!_0x2e5f63['prerelease']&&!_0x193f55['prerelease'])return 0x0;if(!_0x2e5f63[_0x4aa316(0x13c)]&&_0x193f55['prerelease'])return 0x1;if(_0x2e5f63['prerelease']&&!_0x193f55['prerelease'])return-0x1;return this['_comparePrerelease'](_0x2e5f63['prerelease'],_0x193f55['prerelease']);}['_comparePrerelease'](_0x14b9ea,_0x1cabc1){const _0x1385e1=Math['max'](_0x14b9ea['length'],_0x1cabc1['length']);for(let _0x23d0c5=0x0;_0x23d0c5<_0x1385e1;_0x23d0c5++){if(_0x23d0c5>=_0x14b9ea['length'])return-0x1;if(_0x23d0c5>=_0x1cabc1['length'])return 0x1;const _0x48e23e=_0x14b9ea[_0x23d0c5],_0x2bb501=_0x1cabc1[_0x23d0c5],_0x48a2cd=/^\d+$/['test'](_0x48e23e)?parseInt(_0x48e23e,0xa):null,_0x30c8bb=/^\d+$/['test'](_0x2bb501)?parseInt(_0x2bb501,0xa):null;if(_0x48a2cd!==null&&_0x30c8bb!==null){if(_0x48a2cd!==_0x30c8bb)return _0x48a2cd-_0x30c8bb;continue;}if(_0x48a2cd!==null&&_0x30c8bb===null)return-0x1;if(_0x48a2cd===null&&_0x30c8bb!==null)return 0x1;if(_0x48e23e<_0x2bb501)return-0x1;if(_0x48e23e>_0x2bb501)return 0x1;}return 0x0;}['_parseVersionRange'](_0x2c8384){const _0x66638=a0_0x4e9f0a,_0x4cf8ad=_0x2c8384[_0x66638(0x15b)](),_0x306617=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x684697=_0x306617['exec'](_0x4cf8ad);if(_0x684697){const _0x9e03e1=_0x684697[0x1],_0x1491ea=_0x684697[0x3],_0xfb4084=_0x684697[0x5],_0x344a62=_0x9e03e1==='*'||_0x9e03e1[_0x66638(0x169)]()==='x'||_0x1491ea===undefined||_0x1491ea==='*'||_0x1491ea['toLowerCase']()==='x'||_0xfb4084===undefined||_0xfb4084==='*'||_0xfb4084[_0x66638(0x169)]()==='x';if(_0x344a62)return{'prefix':'','operator':'x-range','major':_0x9e03e1==='*'||_0x9e03e1[_0x66638(0x169)]()==='x'?null:parseInt(_0x9e03e1,0xa),'minor':!_0x1491ea||_0x1491ea==='*'||_0x1491ea[_0x66638(0x169)]()==='x'?null:parseInt(_0x1491ea,0xa),'patch':!_0xfb4084||_0xfb4084==='*'||_0xfb4084[_0x66638(0x169)]()==='x'?null:parseInt(_0xfb4084,0xa),'original':_0x2c8384};}let _0x2ed25c='',_0x1a8f70=_0x4cf8ad,_0x3f553f='=';if(_0x4cf8ad[_0x66638(0x157)]('^'))_0x2ed25c='^',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x1),_0x3f553f='^';else{if(_0x4cf8ad[_0x66638(0x157)]('~'))_0x2ed25c='~',_0x1a8f70=_0x4cf8ad['slice'](0x1),_0x3f553f='~';else{if(_0x4cf8ad['startsWith']('>='))_0x2ed25c='>=',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x2)[_0x66638(0x15b)](),_0x3f553f='>=';else{if(_0x4cf8ad[_0x66638(0x157)]('>'))_0x2ed25c='>',_0x1a8f70=_0x4cf8ad['slice'](0x1)['trim'](),_0x3f553f='>';else{if(_0x4cf8ad['startsWith']('<='))_0x2ed25c='<=',_0x1a8f70=_0x4cf8ad['slice'](0x2)['trim'](),_0x3f553f='<=';else _0x4cf8ad['startsWith']('<')&&(_0x2ed25c='<',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x1)[_0x66638(0x15b)](),_0x3f553f='<');}}}}const _0x43531b=this['_parseVersion'](_0x1a8f70);if(!_0x43531b)return null;return{'prefix':_0x2ed25c,'operator':_0x3f553f,'major':_0x43531b['major'],'minor':_0x43531b[_0x66638(0x100)],'patch':_0x43531b[_0x66638(0x11d)],'prerelease':_0x43531b['prerelease'],'build':_0x43531b[_0x66638(0x143)],'original':_0x2c8384};}[a0_0x4e9f0a(0x168)](_0x274918,_0x5b918f){const _0x7985a1=a0_0x4e9f0a,_0x58c6f3={'major':_0x274918['major'],'minor':_0x274918['minor'],'patch':_0x274918[_0x7985a1(0x11d)],'prerelease':_0x274918[_0x7985a1(0x13c)]||null,'build':_0x274918['build']||null};switch(_0x274918['operator']){case'^':return this['_isCaretUpdateAvailable'](_0x58c6f3,_0x5b918f);case'~':return this[_0x7985a1(0x148)](_0x58c6f3,_0x5b918f);case'>=':case'>':return this[_0x7985a1(0x103)](_0x58c6f3,_0x5b918f);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x274918,_0x5b918f);case'x-range':return this['_isXRangeUpdateAvailable'](_0x274918,_0x5b918f);case'=':default:return this[_0x7985a1(0x15d)](_0x58c6f3,_0x5b918f);}}['_isCaretUpdateAvailable'](_0x319862,_0x5a9596){const _0x3181ec=a0_0x4e9f0a,_0x2b332b=this['_compareVersions'](_0x5a9596,_0x319862);if(_0x2b332b<=0x0)return![];if(_0x319862[_0x3181ec(0x102)]===0x0&&_0x319862['minor']===0x0)return _0x5a9596['major']===0x0&&_0x5a9596['minor']===0x0;if(_0x319862['major']===0x0)return _0x5a9596[_0x3181ec(0x102)]===0x0&&_0x5a9596[_0x3181ec(0x100)]===_0x319862[_0x3181ec(0x100)];return _0x5a9596[_0x3181ec(0x102)]===_0x319862['major'];}[a0_0x4e9f0a(0x148)](_0x178384,_0x3cc40c){const _0x86721a=a0_0x4e9f0a,_0x287b25=this['_compareVersions'](_0x3cc40c,_0x178384);if(_0x287b25<=0x0)return![];return _0x3cc40c[_0x86721a(0x102)]===_0x178384['major']&&_0x3cc40c['minor']===_0x178384[_0x86721a(0x100)];}['_isSimpleUpdateAvailable'](_0x82a790,_0x778ad2){const _0x6bddd3=a0_0x4e9f0a,_0x26671f=this[_0x6bddd3(0x112)](_0x778ad2,_0x82a790);return _0x26671f>0x0;}['_isExactUpdateAvailable'](_0x4b2014,_0x1d1733){const _0x3ca003=a0_0x4e9f0a;return this[_0x3ca003(0x103)](_0x4b2014,_0x1d1733);}[a0_0x4e9f0a(0x144)](_0x2dcae6,_0x4b783a){const _0x26cb68=a0_0x4e9f0a,_0x2ddd16=this['_compareVersions'](_0x4b783a,_0x2dcae6);if(_0x2dcae6[_0x26cb68(0x110)]==='<')return _0x2ddd16<0x0;else{if(_0x2dcae6['operator']==='<=')return _0x2ddd16<=0x0;}return![];}[a0_0x4e9f0a(0x14d)](_0x1f7052,_0x27edec){const _0x16c699=a0_0x4e9f0a;if(_0x1f7052['major']!==null&&_0x27edec['major']!==_0x1f7052['major'])return![];if(_0x1f7052[_0x16c699(0x100)]!==null&&_0x27edec[_0x16c699(0x100)]!==_0x1f7052[_0x16c699(0x100)])return![];if(_0x1f7052[_0x16c699(0x11d)]!==null&&_0x27edec['patch']!==_0x1f7052['patch'])return![];return!![];}['_isComplexRange'](_0x496ab7){const _0x971af9=a0_0x4e9f0a;if(_0x496ab7[_0x971af9(0x16c)]('||'))return!![];const _0x45c160=_0x496ab7['trim']();if(_0x45c160['startsWith']('^')||_0x45c160[_0x971af9(0x157)]('~'))return![];const _0x2a6a70=_0x45c160['split'](/\s+/)['filter'](_0x1b5c5a=>_0x1b5c5a['length']>0x0);if(_0x2a6a70[_0x971af9(0x104)]>0x1){const _0x5c07fd=/^(>=?|<=?|\^|~|[0-9])/;return _0x2a6a70[_0x971af9(0x107)](_0x3a5fea=>_0x5c07fd[_0x971af9(0x10f)](_0x3a5fea));}return![];}['_parseComplexRange'](_0x5e0cd0){const _0x48dbd3=a0_0x4e9f0a;if(_0x5e0cd0['includes']('||')){const _0x2710dc=_0x5e0cd0[_0x48dbd3(0x151)]('||')[_0x48dbd3(0x119)](_0x324314=>_0x324314['trim']());return{'type':'or','ranges':_0x2710dc['map'](_0x5a59d4=>this[_0x48dbd3(0x11e)](_0x5a59d4))};}const _0x4eb6ee=_0x5e0cd0['trim']()[_0x48dbd3(0x151)](/\s+/)[_0x48dbd3(0x120)](_0x363204=>_0x363204[_0x48dbd3(0x104)]>0x0);if(_0x4eb6ee['length']>0x1)return{'type':'and','ranges':_0x4eb6ee[_0x48dbd3(0x119)](_0x3ee4ce=>this[_0x48dbd3(0x10e)](_0x3ee4ce))};return{'type':_0x48dbd3(0x10c),'range':this[_0x48dbd3(0x10e)](_0x5e0cd0)};}[a0_0x4e9f0a(0x172)](_0x265fc1,_0x5bdc29){const _0x5af175=a0_0x4e9f0a;if(!_0x265fc1||!_0x5bdc29)return![];return this[_0x5af175(0x168)](_0x265fc1,_0x5bdc29);}['_satisfiesComplexRange'](_0x454481,_0x427565){const _0x1a1819=a0_0x4e9f0a;if(!_0x454481||!_0x427565)return![];switch(_0x454481['type']){case'simple':return this[_0x1a1819(0x172)](_0x454481[_0x1a1819(0x16b)],_0x427565);case'and':return _0x454481[_0x1a1819(0x126)][_0x1a1819(0x107)](_0x52f056=>this[_0x1a1819(0x172)](_0x52f056,_0x427565));case'or':return _0x454481[_0x1a1819(0x126)]['some'](_0x199baa=>this['_satisfiesComplexRange'](_0x199baa,_0x427565));default:return![];}}async['_checkDependencies'](_0x30a4d2){const _0x281bf6=a0_0x4e9f0a,_0x5ea092={},_0x1caaaf=Object[_0x281bf6(0x162)](_0x30a4d2);for(let _0xef0357=0x0;_0xef0357<_0x1caaaf[_0x281bf6(0x104)];_0xef0357+=RESOLVER_CONFIG[_0x281bf6(0x106)]){const _0x42f129=_0x1caaaf[_0x281bf6(0x16f)](_0xef0357,_0xef0357+RESOLVER_CONFIG[_0x281bf6(0x106)]),_0x53a1ae=_0x42f129['map'](async([_0x1f0ce0,_0x56a353])=>{const _0x43d0b8=_0x281bf6;try{const _0x482c37=await this['_getLatestCompatibleVersion'](_0x1f0ce0,_0x56a353);if(_0x482c37){const _0x5eb28e=_0x56a353['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x1f0ce0,'newVersion':''+_0x5eb28e+_0x482c37,'oldVersion':_0x56a353};}return null;}catch(_0x3bfb51){return this[_0x43d0b8(0xf6)]?.[_0x43d0b8(0x16d)](_0x43d0b8(0x152)+_0x1f0ce0+':',_0x3bfb51['message']),null;}}),_0x2ca877=await Promise['all'](_0x53a1ae);_0x2ca877['forEach'](_0x517e98=>{_0x517e98&&(_0x5ea092[_0x517e98['pkg']]=_0x517e98['newVersion']);});}return _0x5ea092;}async[a0_0x4e9f0a(0xff)](_0x52b04b,_0x2b7ad0={}){const _0x4b35c9=a0_0x4e9f0a;try{this[_0x4b35c9(0x111)](_0x52b04b);const {path:_0x5dfc6f,mode:_0x40b90c,includeDev:_0x4423a9}=_0x52b04b,{projectDir:_0x230f01,agentId:_0x4a1e9d,directoryAccess:_0x69e65a}=_0x2b7ad0,_0x237a99=this[_0x4b35c9(0x15a)](_0x5dfc6f,_0x2b7ad0),_0x5ae1b1=a0_0x175bde['join'](_0x237a99,_0x4b35c9(0x166));this['logger']?.[_0x4b35c9(0x127)](_0x4b35c9(0x153),{'mode':_0x40b90c,'resolvedPath':_0x237a99,'includeDev':_0x4423a9,'agentId':_0x4a1e9d});const _0x4a70af=[];_0x4a70af[_0x4b35c9(0x12d)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x237a99),_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x10a)+_0x40b90c);try{await a0_0x4101c3[_0x4b35c9(0x14a)](_0x5ae1b1);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x5ae1b1,'output':_0x4a70af['join']('\x0a')};}_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x150));const _0x158228=await a0_0x4101c3['readFile'](_0x5ae1b1,'utf-8'),_0x292595=JSON[_0x4b35c9(0x12f)](_0x158228),_0x588f74={..._0x292595[_0x4b35c9(0x10d)]};_0x4423a9&&_0x292595[_0x4b35c9(0x147)]&&Object[_0x4b35c9(0x121)](_0x588f74,_0x292595[_0x4b35c9(0x147)]);if(Object['keys'](_0x588f74)[_0x4b35c9(0x104)]===0x0)return{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x101),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x4a70af['join']('\x0a')};if(Object['keys'](_0x588f74)[_0x4b35c9(0x104)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object[_0x4b35c9(0x149)](_0x588f74)[_0x4b35c9(0x104)]+_0x4b35c9(0x141)+RESOLVER_CONFIG[_0x4b35c9(0xfb)],'output':_0x4a70af['join']('\x0a')};_0x4a70af[_0x4b35c9(0x12d)]('📊\x20Found\x20'+Object[_0x4b35c9(0x149)](_0x588f74)['length']+'\x20dependencies\x20to\x20check'),_0x4a70af['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x11f089=await this['_checkDependencies'](_0x588f74);_0x4a70af['push']('\x0a✅\x20Registry\x20check\x20complete'),_0x4a70af[_0x4b35c9(0x12d)]('📈\x20Updates\x20available:\x20'+Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)]);if(Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)]>0x0){_0x4a70af['push'](_0x4b35c9(0xf9));for(const [_0xe6d88a,_0x2f4062]of Object[_0x4b35c9(0x162)](_0x11f089)){const _0x644b0b=_0x588f74[_0xe6d88a];_0x4a70af['push'](_0x4b35c9(0x10b)+_0xe6d88a+':\x20'+_0x644b0b+'\x20→\x20'+_0x2f4062);}}else _0x4a70af['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x40b90c===_0x4b35c9(0xf8))return Object['keys'](_0x11f089)['length']>0x0&&_0x4a70af['push'](_0x4b35c9(0x158)),{'success':!![],'mode':'check','message':'Found\x20'+Object[_0x4b35c9(0x149)](_0x11f089)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x588f74)[_0x4b35c9(0x104)],'updatesAvailable':Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)],'updatesApplied':0x0,'errors':0x0},'updates':_0x11f089,'output':_0x4a70af[_0x4b35c9(0x13f)]('\x0a')};if((_0x40b90c===_0x4b35c9(0x137)||_0x40b90c==='auto')&&Object['keys'](_0x11f089)['length']>0x0){_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x136));const _0x5792ba=await this['_createBackup'](_0x5ae1b1);_0x5792ba?_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x142)+a0_0x175bde['basename'](_0x5792ba)):_0x4a70af['push'](_0x4b35c9(0x11b));_0x4a70af['push'](_0x4b35c9(0x160));for(const [_0x5a5452,_0x39a619]of Object['entries'](_0x11f089)){_0x292595['dependencies']?.[_0x5a5452]&&(_0x292595[_0x4b35c9(0x10d)][_0x5a5452]=_0x39a619),_0x292595['devDependencies']?.[_0x5a5452]&&(_0x292595[_0x4b35c9(0x147)][_0x5a5452]=_0x39a619);}await a0_0x4101c3['writeFile'](_0x5ae1b1,JSON[_0x4b35c9(0xf7)](_0x292595,null,0x2)+'\x0a'),_0x4a70af['push']('✅\x20package.json\x20updated'),_0x4a70af[_0x4b35c9(0x12d)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x13e780,stderr:_0x43c49c}=await exec('npm\x20install',{'cwd':_0x237a99,'timeout':RESOLVER_CONFIG[_0x4b35c9(0x13b)],'maxBuffer':0x400*0x400*0xa});if(_0x13e780){const _0x57cf7b=_0x13e780[_0x4b35c9(0x15b)]()[_0x4b35c9(0x151)]('\x0a');_0x57cf7b['length']>0xa?_0x4a70af[_0x4b35c9(0x12d)]('\x20\x20'+_0x57cf7b[_0x4b35c9(0x16f)](-0x5)[_0x4b35c9(0x13f)](_0x4b35c9(0x12c))):_0x4a70af['push']('\x20\x20'+_0x13e780['trim']());}_0x43c49c&&!_0x43c49c[_0x4b35c9(0x16c)]('npm\x20WARN')&&_0x4a70af['push']('⚠️\x20\x20'+_0x43c49c['trim']());_0x4a70af['push'](_0x4b35c9(0x139));try{const {stdout:_0x3732c9}=await exec(_0x4b35c9(0x130),{'cwd':_0x237a99,'timeout':0x7530}),_0x5150c3=JSON[_0x4b35c9(0x12f)](_0x3732c9);if(_0x5150c3['dependencies']){_0x4a70af[_0x4b35c9(0x12d)]('\x0a📦\x20Installed\x20versions:');for(const _0x50bb71 of Object['keys'](_0x11f089)){_0x5150c3['dependencies'][_0x50bb71]&&_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x10b)+_0x50bb71+'@'+_0x5150c3[_0x4b35c9(0x10d)][_0x50bb71]['version']);}}}catch(_0x109682){this['logger']?.[_0x4b35c9(0x115)](_0x4b35c9(0x14e),_0x109682[_0x4b35c9(0x11c)]);}return{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x13d)+Object['keys'](_0x11f089)[_0x4b35c9(0x104)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x588f74)['length'],'updatesAvailable':Object[_0x4b35c9(0x149)](_0x11f089)['length'],'updatesApplied':Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)],'errors':0x0},'updates':_0x11f089,'backupCreated':_0x5792ba!==null,'backupPath':_0x5792ba,'output':_0x4a70af['join']('\x0a')};}catch(_0x411872){_0x4a70af['push'](_0x4b35c9(0x14f)+_0x411872[_0x4b35c9(0x11c)]);if(_0x5792ba)try{await a0_0x4101c3['copyFile'](_0x5792ba,_0x5ae1b1),_0x4a70af['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x1b1516){_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x123));}return{'success':![],'mode':_0x40b90c,'error':'npm\x20install\x20failed:\x20'+_0x411872['message'],'statistics':{'totalDependencies':Object[_0x4b35c9(0x149)](_0x588f74)['length'],'updatesAvailable':Object['keys'](_0x11f089)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x11f089,'backupCreated':_0x5792ba!==null,'output':_0x4a70af['join']('\x0a')};}}else{if(_0x40b90c==='fix'||_0x40b90c===_0x4b35c9(0x135))return _0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x12a)),{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x12b),'statistics':{'totalDependencies':Object[_0x4b35c9(0x149)](_0x588f74)[_0x4b35c9(0x104)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x4a70af['join']('\x0a')};}}catch(_0x1783c5){return this['logger']?.[_0x4b35c9(0x16d)](_0x4b35c9(0xf5),_0x1783c5),{'success':![],'error':_0x1783c5[_0x4b35c9(0x11c)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x1783c5[_0x4b35c9(0x11c)]};}}}function a0_0x246f(){const _0x3770d9=['B3bLCMf0B3i','x3zHBgLKyxrLugfYyw1LDgvYCW','x2nVBxbHCMvwzxjZAw9UCW','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQsw52B2nHDgLVBIbtEw50yxG6kIOkcLHntcbgB3jTyxq6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLpGOGidXWyxrOpI4VBxKTChjVAMvJDdWVCgf0Ad4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kica8Aw5JBhvKzs1Kzxy+Dhj1ztWVAw5JBhvKzs1Kzxy+cJWVzgvWzw5Kzw5JEs1YzxnVBhzLpGPGygakcKPtt04GrM9YBwf0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEWOGicaGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWkicaGicjTB2rLiJOGiMnOzwnRiIWkicaGicjPBMnSDwrLrgv2iJOGDhj1zqOGih0kFqPGygakcIOQugfYyw1LDgvYCZOQkGOTicOQCgf0AcOQicHZDhjPBMCSig9WDgLVBMfSktOGugf0Acb0BYbWCM9Qzwn0igrPCMvJDg9YEsb3AxrOihbHy2THz2uUANnVBI4GrgvMyxvSDdOGiI4IcI0GkIPTB2rLkIOGkhn0CMLUzYWGB3b0Aw9UywWPoIbpCgvYyxrPB24GBw9Kzs4Gt3b0Aw9UCZOkicaTicjJAgvJAYiGlsbpBMX5ignOzwnRigzVCIb1CgrHDgvZicHKzwzHDwX0kqOGic0GiMzPEciGlsbvCgrHDguGCgfJA2fNzs5QC29UigfUzcbYDw4GBNbTigLUC3rHBgWkicaTicjHDxrViIaTief1Dg9TyxrPy2fSBhKGzML4igfSBcbJB25MBgLJDhmklsaQkMLUy2X1zgvezxyQkIaOyM9VBgvHBIWGB3b0Aw9UywWPoIbjBMnSDwrLigrLDKrLCgvUzgvUy2LLCY4GrgvMyxvSDdOGDhj1zqOkkIPxAgf0ieL0ierVzxm6kIOklsbdAgvJA3mGBNbTihjLz2LZDhj5igzVCIbSyxrLC3qGy29TCgf0AwjSzsb2zxjZAw9UCWOTifjLC3bLy3rZihnLBxzLCIbYyw5NzxmGkf4Sih4Sid49lcbLDgmUkqOTienYzwf0zxmGyxv0B21HDgLJigjHy2T1ChmGyMvMB3jLig1VzgLMAwnHDgLVBNmklsbsDw5Zig5WBsbPBNn0ywXSigfMDgvYihvWzgf0zxmGkgLUigzPEc9HDxrVig1VzguPcI0GuhjVDMLKzxmGzgv0ywLSzwqGDxbKyxrLihjLCg9YDaOkkIPfEgfTCgXLCZOQkGOkms4Gq2HLy2SGzM9YihvWzgf0zxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kpc9KzxbLBMrLBMn5lxjLC29SDMvYpGPGygakcJiUiezPEcbVDxrKyxrLzcbKzxbLBMrLBMnPzxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Cgf0Ad4Ul215lxbYB2PLy3q8l3bHDgG+cIaGpg1Vzgu+zML4pc9TB2rLpGO8l2rLCgvUzgvUy3KTCMvZB2X2zxi+cMbGyaOkmY4Gqxv0BY1MAxGGD2L0AcbKzxzezxbLBMrLBMnPzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzgvWzw5Kzw5JEs1YzxnVBhzLCIiScIaGiNbHCMfTzxrLCNmIoIb7icjTB2rLiJOGiMf1Dg8IlcaIAw5JBhvKzurLDIi6ihrYDwuGFqP9cMbGyaOkkIPoB3rLCZOQkGOTiefSD2f5CYbJCMvHDgvZigjHy2T1CcaOlMjHy2T1Cc5QC29UksbIzwzVCMuGBw9KAwzPy2f0Aw9UCWOTie5LDhDVCMSGCMvXDwvZDhmGAgf2zsb0Aw1LB3v0igfUzcbYzxrYEsbSB2DPyWOTig5WBsbPBNn0ywXSihj1BNmGD2L0Acb0Aw1LB3v0ihbYB3rLy3rPB24GkduGBwLUDxrLCYbTyxGPcI0Gu3vWCg9YDhmGy29TCgXLEcbZzw12zxiGCMfUz2vZicH8FcWGjIySigv0yY4P','mJjABgn0vgG','zgvIDwC','x3bHCNnLvMvYC2LVBG','ouPjA2DIva','uMv0CNKG','BwfW','mtuWnZbKqvj4wwm','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','BwvZC2fNzq','Cgf0y2G','x3bHCNnLq29TCgXLEfjHBMDL','y3DK','zMLSDgvY','yxnZAwDU','ChjLzML4','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','nZq1mdK0nvDJAMvryq','BM9YBwfSAxPL','CMfUz2vZ','Aw5MBW','uKvuuLLFrevmqvK','mJeYmdu0nZz0r0Lxu3O','cUkCQcboBYb1CgrHDgvZig5LzwrLza','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','cIaG','ChvZAa','uKvuuLLFqvruru1qvfm','CgfYC2u','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','Aw5JBhvKzurLDG','D2fYBG','yM9VBgvHBG','ywjVCNq','yxv0BW','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','zML4','B2jQzwn0','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','tLbnx0nptu1btKrFveLnru9vva','ChjLCMvSzwfZzq','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','mteZmKvLC0XNrW','AM9PBG','C3rYAw5N','ksWGBwf4igfSBg93zwq6ia','4PYfiejHy2T1CcbJCMvHDgvKoIa','yNvPBgq','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','mtqWCwjjr0z0','zxHLyW','zgv2rgvWzw5Kzw5JAwvZ','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','A2v5CW','ywnJzxnZ','Cgf0Aa','vKfmsurFtu9ervm','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BNbTigXZigzHAwXLzdO','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','C3bSAxq','rxjYB3iGy2HLy2TPBMCG','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','igzVCIa','revgqvvmvf9nt0rf','sfruuca','C3rHCNrZv2L0Aa','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','Dhj1zq','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','DhjPBq','Bgf0zxn0','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','x2zLDgnOugfJA2fNzuLUzM8','y29WEuzPBgu','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','rMfPBgvKihrVigzLDgnOia','zw50CMLLCW','odC0nJaWogvtq2zevq','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','Bw9Kzq','CgfJA2fNzs5QC29U','mtq4odLAwe1Juhq','x2LZvxbKyxrLqxzHAwXHyMXL','Dg9mB3DLCKnHC2u','nteWnZfoB0nuzgi','CMfUz2u','Aw5JBhvKzxm','zxjYB3i','Cgf0AcbTDxn0igjLigeGC3rYAw5N','C2XPy2u','nLDoDe9cvW','ANnVBG','x3nHDgLZzMLLC1jHBMDL','uKvhsvnuuLLFveLnru9vva','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','Bg9Nz2vY','C3rYAw5NAwz5','y2HLy2S','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','x2nYzwf0zujHy2T1Ca','tufyx0rfuevorevoq0LfuW','C3rHDhvZ','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','zxHLy3v0zq','BwLUB3i','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','BwfQB3i','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','BgvUz3rO','zgLZDc10ywDZ','tufyx0nptKnvuLjftLrFq0Hfq0Tt','zxzLCNK','D29YA2LUz0rPCMvJDg9YEq','mZGYmJyWmK9JCLL1BW','tw9KztOG','icdIGkiG','C2LTCgXL','zgvWzw5Kzw5JAwvZ','x3bHCNnLvMvYC2LVBLjHBMDL','DgvZDa'];a0_0x246f=function(){return _0x3770d9;};return a0_0x246f();}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x56e9dd=a0_0x50c5;(function(_0x4da2c8,_0x34cf05){const _0x3dcd87=a0_0x50c5,_0x5aba8b=_0x4da2c8();while(!![]){try{const _0x37d7fb=-parseInt(_0x3dcd87(0x1a6))/0x1+-parseInt(_0x3dcd87(0x18f))/0x2+-parseInt(_0x3dcd87(0x1de))/0x3+-parseInt(_0x3dcd87(0x1cb))/0x4+-parseInt(_0x3dcd87(0x1aa))/0x5+parseInt(_0x3dcd87(0x193))/0x6*(-parseInt(_0x3dcd87(0x197))/0x7)+-parseInt(_0x3dcd87(0x1ad))/0x8*(-parseInt(_0x3dcd87(0x1e2))/0x9);if(_0x37d7fb===_0x34cf05)break;else _0x5aba8b['push'](_0x5aba8b['shift']());}catch(_0x516db8){_0x5aba8b['push'](_0x5aba8b['shift']());}}}(a0_0x5a42,0xde812));import{promises as a0_0x46cc19}from'fs';import a0_0x1079de from'path';import{exec as a0_0x2e2cbc}from'child_process';import{promisify}from'util';function a0_0x50c5(_0x562c40,_0x4f76fd){_0x562c40=_0x562c40-0x160;const _0x5a4284=a0_0x5a42();let _0x50c58e=_0x5a4284[_0x562c40];if(a0_0x50c5['YWwhrk']===undefined){var _0x25992a=function(_0x4c28c6){const _0x43586b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x46cc19='',_0x1079de='';for(let _0x2e2cbc=0x0,_0x4cb9bb,_0x3635f1,_0x1610c6=0x0;_0x3635f1=_0x4c28c6['charAt'](_0x1610c6++);~_0x3635f1&&(_0x4cb9bb=_0x2e2cbc%0x4?_0x4cb9bb*0x40+_0x3635f1:_0x3635f1,_0x2e2cbc++%0x4)?_0x46cc19+=String['fromCharCode'](0xff&_0x4cb9bb>>(-0x2*_0x2e2cbc&0x6)):0x0){_0x3635f1=_0x43586b['indexOf'](_0x3635f1);}for(let _0x136e55=0x0,_0x1edced=_0x46cc19['length'];_0x136e55<_0x1edced;_0x136e55++){_0x1079de+='%'+('00'+_0x46cc19['charCodeAt'](_0x136e55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1079de);};a0_0x50c5['vOsaSN']=_0x25992a,a0_0x50c5['IAWuGy']={},a0_0x50c5['YWwhrk']=!![];}const _0x3d7bac=_0x5a4284[0x0],_0x1cb21f=_0x562c40+_0x3d7bac,_0x2aabec=a0_0x50c5['IAWuGy'][_0x1cb21f];return!_0x2aabec?(_0x50c58e=a0_0x50c5['vOsaSN'](_0x50c58e),a0_0x50c5['IAWuGy'][_0x1cb21f]=_0x50c58e):_0x50c58e=_0x2aabec,_0x50c58e;}function a0_0x5a42(){const _0x8030b2=['CMfUz2u','lMjHy2T1Cc5QC29U','ugfJA2fNzsbUB3qGzM91BMq6ia','tLbnx1jfr0Ltvfjzx1vsta','C2XPy2u','BNbTifDbuK4','DhjPBq','BgvUz3rO','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','4PYfiejHy2T1CcbJCMvHDgvKoIa','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','Bw9Kzq','C3rYAw5N','ChjLzML4','x3bHCNnLvMvYC2LVBG','y2HLy2S','zgLZDc10ywDZ','vKfmsurFtu9ervm','BwLUB3i','Aw5MBW','C2LTCgXL','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','x2zLDgnOugfJA2fNzuLUzM8','ChjLCMvSzwfZzq','x2LZvxbKyxrLqxzHAwXHyMXL','lIbnDxn0igjLig9UzsbVzJOG','Ec1Yyw5Nzq','Cgf0AcbTDxn0igjLigeGC3rYAw5N','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','mta0nte5mM91AuDuAa','CgfYC2u','D29YA2LUz0rPCMvJDg9YEq','Cgf0Aa','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','Cgf0y2G','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','CMfUz2vZ','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','ywnJzxnZ','uKvhsvnuuLLFveLnru9vva','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','ANnVBG','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','uKvuuLLFrevmqvK','DxrMltG','yM9VBgvHBG','zML4','mZiYmZGZnLbHAwz0CW','B2jQzwn0','rM91BMqG','sfruuca','mtKXmJv1wKnlzMu','BwfQB3i','Dg9mB3DLCKnHC2u','yNvPBgq','x3bHCNnLqM9VBgvHBG','x2nVBxbHCMvqCMvYzwXLyxnL','DgvZDa','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','x3zHBgLKyxrLugfYyw1LDgvYCW','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','Bwf4','zMLSDgvY','tufyx0nptKnvuLjftLrFq0Hfq0Tt','A2v5CW','icdIGkiG','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','yxv0BW','C3rHCNrZv2L0Aa','x3bHCNnLq29TCgXLEfjHBMDL','zxHLyW','rxjYB3iGy2HLy2TPBMCG','cUkCQcboBYb1CgrHDgvZig5LzwrLza','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','x2nVBxbHCMvwzxjZAw9UCW','sw52ywXPzcbTB2rLoIa','x3nHDgLZzMLLC1jHBMDL','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','C2LNBMfS','zxHLy3v0zq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','B3bLCMf0B3i','BNbTigXZigzHAwXLzdO','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','zxjYB3i','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','Bg9Nz2vY','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','Aw5JBhvKzurLDG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','zw50CMLLCW','C29Tzq','x3bHCNnLvMvYC2LVBLjHBMDL','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','yw5K','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','C3rHDhvZ','AxnbyNnVBhv0zq','qKfds1vqx0vyvevou0LptG','mteYndGWoe52z01Xuq','iokgKIa','Dhj1zq','AM9PBG','ndeZmZGYBKnLqKLz','BwfW','DhLWzq','BM9YBwfSAxPL','mtC1AgT1quHJ','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','uKvuuLLFqvruru1qvfm','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','BNbTigLUC3rHBgWGzMfPBgvKoIa','x2LZq29TCgXLEfjHBMDL','zgv2rgvWzw5Kzw5JAwvZ','tufyx0rfuevorevoq0LfuW','C3rYAw5NAwz5','revgqvvmvf9nt0rf','C3bSAxq','DMvYC2LVBG','BwvZC2fNzq','C3rHDhvZvgv4Da','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','odmWmZC1rwLnA0Dl','ChvZAa','rMfPBgvKihrVigzLDgnOia','zgvWzw5Kzw5JAwvZ','mJKXnJi5mgvoC0Lnra','ywXS','y29WEuzPBgu','mJiZodrtEhbuz0m'];a0_0x5a42=function(){return _0x8030b2;};return a0_0x5a42();}import{BaseTool}from'./baseTool.js';import a0_0x4cb9bb from'../utilities/tagParser.js';const exec=promisify(a0_0x2e2cbc),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x56e9dd(0x1bd),'VALID_MODES':['check','fix',a0_0x56e9dd(0x16b)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x56e9dd(0x1af),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x56e9dd(0x1d9)};export class DependencyResolverTool extends BaseTool{['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<dependency-resolve>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>check</mode>\x0a\x20\x20<include-dev>true</include-dev>\x0a</dependency-resolve>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<mode>check</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>fix</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x3635f1){const _0x357e4d=a0_0x56e9dd;if(typeof _0x3635f1===_0x357e4d(0x1df)&&_0x3635f1!==null)return{'path':_0x3635f1['path']||'.','mode':_0x3635f1[_0x357e4d(0x1b9)]||RESOLVER_CONFIG[_0x357e4d(0x1a0)],'includeDev':_0x3635f1['includeDev']!==undefined?_0x3635f1['includeDev']:!![]};if(typeof _0x3635f1==='string'){const _0x1610c6=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x136e55=_0x1610c6['exec'](_0x3635f1);if(_0x136e55){const _0x2cc73d=_0x136e55[0x1],_0x594532=_0x136e55[0x2],_0x5e4c0d=/path=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x2cc73d),_0xe2a66c=/mode=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x2cc73d),_0x676c73=/include-dev=["']([^"']*)["']/i['exec'](_0x2cc73d),_0x1803ab=/<path>(.*?)<\/path>/i,_0x311517=_0x1803ab[_0x357e4d(0x16e)](_0x594532),_0x5349ae=/<mode>(.*?)<\/mode>/i,_0x1edcdf=_0x5349ae['exec'](_0x594532),_0x1a922b=/<include-dev>(.*?)<\/include-dev>/i,_0x1818f5=_0x1a922b[_0x357e4d(0x16e)](_0x594532),_0x3df249=(_0x311517?_0x311517[0x1]['trim']():null)||(_0x5e4c0d?_0x5e4c0d[0x1]:'.'),_0x13fcb7=(_0x1edcdf?_0x1edcdf[0x1][_0x357e4d(0x1b4)]():null)||(_0xe2a66c?_0xe2a66c[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x151815=(_0x1818f5?_0x1818f5[0x1][_0x357e4d(0x1b4)]():null)||(_0x676c73?_0x676c73[0x1]:'true');return{'path':_0x3df249,'mode':_0x13fcb7,'includeDev':this[_0x357e4d(0x1e6)](_0x151815,!![])};}const _0x1edced=/\[resolve\s+([^\]]*)\]/i,_0x581951=_0x1edced['exec'](_0x3635f1);if(_0x581951){const _0x3d5c6f=_0x581951[0x1],_0xff58d5=/path=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f),_0x171328=/mode=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f),_0x3812d9=/include-dev=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f);return{'path':_0xff58d5?_0xff58d5[0x1]:'.','mode':_0x171328?_0x171328[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x357e4d(0x1e6)](_0x3812d9?_0x3812d9[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error(_0x357e4d(0x1d6));}['_parseBoolean'](_0x6d01c2,defaultValue=![]){const _0x450150=a0_0x56e9dd;if(_0x6d01c2===undefined||_0x6d01c2===null)return defaultValue;if(typeof _0x6d01c2===_0x450150(0x1dc))return _0x6d01c2;if(typeof _0x6d01c2===_0x450150(0x1ba))return _0x6d01c2[_0x450150(0x1e4)]()===_0x450150(0x191)||_0x6d01c2==='1';return defaultValue;}[a0_0x56e9dd(0x162)](_0x509cf8){const _0x1e1c09=a0_0x56e9dd;if(!_0x509cf8||typeof _0x509cf8!=='object')throw new Error(_0x1e1c09(0x1d8));if(_0x509cf8[_0x1e1c09(0x1ce)]&&typeof _0x509cf8['path']!==_0x1e1c09(0x1ba))throw new Error(_0x1e1c09(0x1c9));if(_0x509cf8[_0x1e1c09(0x1b9)]&&!RESOLVER_CONFIG[_0x1e1c09(0x1bf)]['includes'](_0x509cf8[_0x1e1c09(0x1b9)]))throw new Error(_0x1e1c09(0x173)+_0x509cf8['mode']+_0x1e1c09(0x1c7)+RESOLVER_CONFIG['VALID_MODES'][_0x1e1c09(0x192)](',\x20'));if(_0x509cf8[_0x1e1c09(0x184)]!==undefined&&typeof _0x509cf8[_0x1e1c09(0x184)]!=='boolean')throw new Error(_0x1e1c09(0x1ca));}['_resolveAndValidatePath'](_0x2974e4,_0x540d96){const _0x4818c6=a0_0x56e9dd,{projectDir:_0x33c622,directoryAccess:_0x5eb93b}=_0x540d96;let _0x207f5b=_0x33c622||process['cwd']();_0x5eb93b&&_0x5eb93b[_0x4818c6(0x1cd)]&&(_0x207f5b=_0x5eb93b[_0x4818c6(0x1cd)]);const _0x565de7=a0_0x1079de[_0x4818c6(0x18d)](_0x2974e4)?a0_0x1079de['normalize'](_0x2974e4):a0_0x1079de[_0x4818c6(0x196)](a0_0x1079de['join'](_0x207f5b,_0x2974e4)),_0x284b9d=a0_0x1079de['normalize'](_0x207f5b);if(!_0x565de7['startsWith'](_0x284b9d))throw new Error(_0x4818c6(0x18b)+_0x2974e4+_0x4818c6(0x1c3));return _0x565de7;}async['_createBackup'](_0x35e4e2){const _0xa23052=a0_0x56e9dd;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0xc893e0=_0x35e4e2+RESOLVER_CONFIG[_0xa23052(0x18e)];return await a0_0x46cc19[_0xa23052(0x1ac)](_0x35e4e2,_0xc893e0),this[_0xa23052(0x17f)]?.[_0xa23052(0x1c1)]('Created\x20backup',{'backupPath':_0xc893e0}),_0xc893e0;}catch(_0x234bfd){return this[_0xa23052(0x17f)]?.['warn']('Failed\x20to\x20create\x20backup',{'error':_0x234bfd['message']}),null;}}async['_fetchPackageInfo'](_0x2ed0c2){const _0x4fcc73=a0_0x56e9dd,_0x56008f=RESOLVER_CONFIG[_0x4fcc73(0x1b1)]+'/'+encodeURIComponent(_0x2ed0c2);for(let _0xffdf1e=0x1;_0xffdf1e<=RESOLVER_CONFIG[_0x4fcc73(0x199)];_0xffdf1e++){try{const _0x534731=new AbortController(),_0x1e444d=setTimeout(()=>_0x534731['abort'](),RESOLVER_CONFIG[_0x4fcc73(0x1d5)]),_0x1d0202=await fetch(_0x56008f,{'signal':_0x534731[_0x4fcc73(0x176)]});clearTimeout(_0x1e444d);if(!_0x1d0202['ok']){if(_0x1d0202[_0x4fcc73(0x18c)]===0x194)return this[_0x4fcc73(0x17f)]?.['warn'](_0x4fcc73(0x1b0)+_0x2ed0c2),null;throw new Error(_0x4fcc73(0x1e1)+_0x1d0202[_0x4fcc73(0x18c)]+':\x20'+_0x1d0202[_0x4fcc73(0x1a4)]);}const _0x3eb22e=await _0x1d0202[_0x4fcc73(0x1d7)]();if(!_0x3eb22e||typeof _0x3eb22e!=='object'||!_0x3eb22e[_0x4fcc73(0x1be)])throw new Error('Invalid\x20registry\x20response\x20format');return _0x3eb22e;}catch(_0x2cedc0){if(_0xffdf1e<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x4fcc73(0x17f)]?.['debug']('Retry\x20'+_0xffdf1e+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0x2ed0c2),await new Promise(_0x47d82a=>setTimeout(_0x47d82a,RESOLVER_CONFIG[_0x4fcc73(0x1da)]*_0xffdf1e));else return this[_0x4fcc73(0x17f)]?.[_0x4fcc73(0x17d)](_0x4fcc73(0x1a8)+_0x2ed0c2+':',_0x2cedc0[_0x4fcc73(0x1a3)]),null;}}return null;}async['_getLatestCompatibleVersion'](_0x32a300,_0xdc0b03){const _0x40be43=a0_0x56e9dd,_0x1c1ef2=await this[_0x40be43(0x1c4)](_0x32a300);if(!_0x1c1ef2)return null;const _0x16b216=_0x1c1ef2['dist-tags']?.['latest'];if(!_0x16b216)return null;const _0xd9ac1c=this['_parseVersion'](_0x16b216);if(!_0xd9ac1c)return null;if(this[_0x40be43(0x19c)](_0xdc0b03)){const _0x472642=this[_0x40be43(0x16d)](_0xdc0b03),_0x23b97f=this[_0x40be43(0x1b6)](_0x472642,_0xd9ac1c);if(_0x23b97f)return _0x16b216;return null;}const _0x5789c7=this[_0x40be43(0x188)](_0xdc0b03);if(!_0x5789c7)return null;const _0x503564=this[_0x40be43(0x1c6)](_0x5789c7,_0xd9ac1c);if(_0x503564)return _0x5789c7[_0x40be43(0x1bb)]+_0x16b216;return null;}[a0_0x56e9dd(0x1bc)](_0x553042){const _0x453f65=a0_0x56e9dd,_0x219055=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x24b48d=_0x219055[_0x453f65(0x16e)](_0x553042);if(!_0x24b48d){const _0xebab2a=_0x553042['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0xebab2a)return{'major':parseInt(_0xebab2a[0x1],0xa),'minor':parseInt(_0xebab2a[0x2],0xa),'patch':parseInt(_0xebab2a[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x24b48d[0x1],0xa),'minor':parseInt(_0x24b48d[0x2],0xa),'patch':parseInt(_0x24b48d[0x3],0xa),'prerelease':_0x24b48d[0x4]?_0x24b48d[0x4][_0x453f65(0x1a1)]('.'):null,'build':_0x24b48d[0x5]||null};}['_compareVersions'](_0x513761,_0x5cd1dc){const _0x5c7d9d=a0_0x56e9dd;if(_0x513761[_0x5c7d9d(0x1e3)]!==_0x5cd1dc[_0x5c7d9d(0x1e3)])return _0x513761['major']-_0x5cd1dc[_0x5c7d9d(0x1e3)];if(_0x513761['minor']!==_0x5cd1dc[_0x5c7d9d(0x1c0)])return _0x513761[_0x5c7d9d(0x1c0)]-_0x5cd1dc[_0x5c7d9d(0x1c0)];if(_0x513761[_0x5c7d9d(0x1d0)]!==_0x5cd1dc['patch'])return _0x513761['patch']-_0x5cd1dc[_0x5c7d9d(0x1d0)];if(!_0x513761['prerelease']&&!_0x5cd1dc['prerelease'])return 0x0;if(!_0x513761[_0x5c7d9d(0x1c5)]&&_0x5cd1dc[_0x5c7d9d(0x1c5)])return 0x1;if(_0x513761[_0x5c7d9d(0x1c5)]&&!_0x5cd1dc[_0x5c7d9d(0x1c5)])return-0x1;return this[_0x5c7d9d(0x1e7)](_0x513761['prerelease'],_0x5cd1dc[_0x5c7d9d(0x1c5)]);}['_comparePrerelease'](_0x769e4d,_0x2f0eac){const _0x51b890=a0_0x56e9dd,_0xa036a1=Math[_0x51b890(0x164)](_0x769e4d['length'],_0x2f0eac[_0x51b890(0x1b5)]);for(let _0x36bffb=0x0;_0x36bffb<_0xa036a1;_0x36bffb++){if(_0x36bffb>=_0x769e4d['length'])return-0x1;if(_0x36bffb>=_0x2f0eac['length'])return 0x1;const _0x48a179=_0x769e4d[_0x36bffb],_0x37b4af=_0x2f0eac[_0x36bffb],_0x217945=/^\d+$/['test'](_0x48a179)?parseInt(_0x48a179,0xa):null,_0x9ee629=/^\d+$/[_0x51b890(0x160)](_0x37b4af)?parseInt(_0x37b4af,0xa):null;if(_0x217945!==null&&_0x9ee629!==null){if(_0x217945!==_0x9ee629)return _0x217945-_0x9ee629;continue;}if(_0x217945!==null&&_0x9ee629===null)return-0x1;if(_0x217945===null&&_0x9ee629!==null)return 0x1;if(_0x48a179<_0x37b4af)return-0x1;if(_0x48a179>_0x37b4af)return 0x1;}return 0x0;}['_parseVersionRange'](_0x181c80){const _0x2740b8=a0_0x56e9dd,_0x498987=_0x181c80[_0x2740b8(0x1b4)](),_0x34963d=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x13c55d=_0x34963d[_0x2740b8(0x16e)](_0x498987);if(_0x13c55d){const _0xf8b992=_0x13c55d[0x1],_0x5bfad5=_0x13c55d[0x3],_0x32c84a=_0x13c55d[0x5],_0x409807=_0xf8b992==='*'||_0xf8b992['toLowerCase']()==='x'||_0x5bfad5===undefined||_0x5bfad5==='*'||_0x5bfad5['toLowerCase']()==='x'||_0x32c84a===undefined||_0x32c84a==='*'||_0x32c84a['toLowerCase']()==='x';if(_0x409807)return{'prefix':'','operator':_0x2740b8(0x1c8),'major':_0xf8b992==='*'||_0xf8b992['toLowerCase']()==='x'?null:parseInt(_0xf8b992,0xa),'minor':!_0x5bfad5||_0x5bfad5==='*'||_0x5bfad5[_0x2740b8(0x1e4)]()==='x'?null:parseInt(_0x5bfad5,0xa),'patch':!_0x32c84a||_0x32c84a==='*'||_0x32c84a['toLowerCase']()==='x'?null:parseInt(_0x32c84a,0xa),'original':_0x181c80};}let _0x45160b='',_0x19bb48=_0x498987,_0x2be7ac='=';if(_0x498987[_0x2740b8(0x16c)]('^'))_0x45160b='^',_0x19bb48=_0x498987['slice'](0x1),_0x2be7ac='^';else{if(_0x498987['startsWith']('~'))_0x45160b='~',_0x19bb48=_0x498987[_0x2740b8(0x1b2)](0x1),_0x2be7ac='~';else{if(_0x498987['startsWith']('>='))_0x45160b='>=',_0x19bb48=_0x498987['slice'](0x2)[_0x2740b8(0x1b4)](),_0x2be7ac='>=';else{if(_0x498987['startsWith']('>'))_0x45160b='>',_0x19bb48=_0x498987['slice'](0x1)[_0x2740b8(0x1b4)](),_0x2be7ac='>';else{if(_0x498987[_0x2740b8(0x16c)]('<='))_0x45160b='<=',_0x19bb48=_0x498987['slice'](0x2)['trim'](),_0x2be7ac='<=';else _0x498987['startsWith']('<')&&(_0x45160b='<',_0x19bb48=_0x498987[_0x2740b8(0x1b2)](0x1)['trim'](),_0x2be7ac='<');}}}}const _0x2a02d6=this['_parseVersion'](_0x19bb48);if(!_0x2a02d6)return null;return{'prefix':_0x45160b,'operator':_0x2be7ac,'major':_0x2a02d6['major'],'minor':_0x2a02d6['minor'],'patch':_0x2a02d6['patch'],'prerelease':_0x2a02d6[_0x2740b8(0x1c5)],'build':_0x2a02d6['build'],'original':_0x181c80};}['_isUpdateAvailable'](_0x547778,_0x5f0e3f){const _0x19790c=a0_0x56e9dd,_0x2a8124={'major':_0x547778[_0x19790c(0x1e3)],'minor':_0x547778[_0x19790c(0x1c0)],'patch':_0x547778['patch'],'prerelease':_0x547778['prerelease']||null,'build':_0x547778[_0x19790c(0x1e5)]||null};switch(_0x547778['operator']){case'^':return this[_0x19790c(0x1cf)](_0x2a8124,_0x5f0e3f);case'~':return this['_isTildeUpdateAvailable'](_0x2a8124,_0x5f0e3f);case'>=':case'>':return this[_0x19790c(0x16a)](_0x2a8124,_0x5f0e3f);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x547778,_0x5f0e3f);case'x-range':return this['_isXRangeUpdateAvailable'](_0x547778,_0x5f0e3f);case'=':default:return this[_0x19790c(0x178)](_0x2a8124,_0x5f0e3f);}}['_isCaretUpdateAvailable'](_0x4bacfd,_0x11b2f6){const _0x3ba02d=a0_0x56e9dd,_0x410e20=this['_compareVersions'](_0x11b2f6,_0x4bacfd);if(_0x410e20<=0x0)return![];if(_0x4bacfd[_0x3ba02d(0x1e3)]===0x0&&_0x4bacfd['minor']===0x0)return _0x11b2f6[_0x3ba02d(0x1e3)]===0x0&&_0x11b2f6[_0x3ba02d(0x1c0)]===0x0;if(_0x4bacfd[_0x3ba02d(0x1e3)]===0x0)return _0x11b2f6['major']===0x0&&_0x11b2f6['minor']===_0x4bacfd[_0x3ba02d(0x1c0)];return _0x11b2f6[_0x3ba02d(0x1e3)]===_0x4bacfd['major'];}['_isTildeUpdateAvailable'](_0x194cd0,_0x1cf5dd){const _0x193de0=a0_0x56e9dd,_0x1b5677=this[_0x193de0(0x172)](_0x1cf5dd,_0x194cd0);if(_0x1b5677<=0x0)return![];return _0x1cf5dd['major']===_0x194cd0['major']&&_0x1cf5dd[_0x193de0(0x1c0)]===_0x194cd0[_0x193de0(0x1c0)];}['_isSimpleUpdateAvailable'](_0xc5fc84,_0x403b3d){const _0x1967ac=this['_compareVersions'](_0x403b3d,_0xc5fc84);return _0x1967ac>0x0;}['_isExactUpdateAvailable'](_0x4701b3,_0x1dc20d){return this['_isSimpleUpdateAvailable'](_0x4701b3,_0x1dc20d);}['_isLessThanUpdateAvailable'](_0x46f160,_0xfb90fd){const _0x51b107=a0_0x56e9dd,_0x42bc6a=this[_0x51b107(0x172)](_0xfb90fd,_0x46f160);if(_0x46f160[_0x51b107(0x179)]==='<')return _0x42bc6a<0x0;else{if(_0x46f160['operator']==='<=')return _0x42bc6a<=0x0;}return![];}[a0_0x56e9dd(0x180)](_0x8142c2,_0x5b9c2b){const _0xef0a69=a0_0x56e9dd;if(_0x8142c2[_0xef0a69(0x1e3)]!==null&&_0x5b9c2b[_0xef0a69(0x1e3)]!==_0x8142c2['major'])return![];if(_0x8142c2['minor']!==null&&_0x5b9c2b[_0xef0a69(0x1c0)]!==_0x8142c2[_0xef0a69(0x1c0)])return![];if(_0x8142c2['patch']!==null&&_0x5b9c2b['patch']!==_0x8142c2['patch'])return![];return!![];}[a0_0x56e9dd(0x19c)](_0x3c9015){const _0x4648f6=a0_0x56e9dd;if(_0x3c9015['includes']('||'))return!![];const _0xdb7edf=_0x3c9015[_0x4648f6(0x1b4)]();if(_0xdb7edf['startsWith']('^')||_0xdb7edf['startsWith']('~'))return![];const _0x18e5db=_0xdb7edf['split'](/\s+/)[_0x4648f6(0x165)](_0x4ac9a2=>_0x4ac9a2['length']>0x0);if(_0x18e5db['length']>0x1){const _0x5b7b07=/^(>=?|<=?|\^|~|[0-9])/;return _0x18e5db['every'](_0x1b5e72=>_0x5b7b07['test'](_0x1b5e72));}return![];}[a0_0x56e9dd(0x16d)](_0x1bdce){const _0x5287de=a0_0x56e9dd;if(_0x1bdce['includes']('||')){const _0x4e7aca=_0x1bdce[_0x5287de(0x1a1)]('||')['map'](_0x34f349=>_0x34f349['trim']());return{'type':'or','ranges':_0x4e7aca['map'](_0x131023=>this['_parseComplexRange'](_0x131023))};}const _0x39c2a2=_0x1bdce[_0x5287de(0x1b4)]()['split'](/\s+/)[_0x5287de(0x165)](_0x1079e7=>_0x1079e7[_0x5287de(0x1b5)]>0x0);if(_0x39c2a2['length']>0x1)return{'type':'and','ranges':_0x39c2a2[_0x5287de(0x194)](_0x4c52b4=>this[_0x5287de(0x188)](_0x4c52b4))};return{'type':_0x5287de(0x1c2),'range':this['_parseVersionRange'](_0x1bdce)};}[a0_0x56e9dd(0x174)](_0x2d75d1,_0x5969bd){const _0x274c04=a0_0x56e9dd;if(!_0x2d75d1||!_0x5969bd)return![];return this[_0x274c04(0x1c6)](_0x2d75d1,_0x5969bd);}[a0_0x56e9dd(0x1b6)](_0x3b829d,_0x257c8f){const _0x4270ce=a0_0x56e9dd;if(!_0x3b829d||!_0x257c8f)return![];switch(_0x3b829d[_0x4270ce(0x195)]){case'simple':return this['_satisfiesRange'](_0x3b829d[_0x4270ce(0x1ae)],_0x257c8f);case _0x4270ce(0x18a):return _0x3b829d[_0x4270ce(0x1d2)]['every'](_0x4a71f1=>this['_satisfiesRange'](_0x4a71f1,_0x257c8f));case'or':return _0x3b829d['ranges'][_0x4270ce(0x187)](_0x2d09d1=>this['_satisfiesComplexRange'](_0x2d09d1,_0x257c8f));default:return![];}}async['_checkDependencies'](_0x34e233){const _0x1827f6=a0_0x56e9dd,_0x5e731f={},_0x59af90=Object[_0x1827f6(0x186)](_0x34e233);for(let _0x5eb455=0x0;_0x5eb455<_0x59af90['length'];_0x5eb455+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x92a7ba=_0x59af90['slice'](_0x5eb455,_0x5eb455+RESOLVER_CONFIG[_0x1827f6(0x166)]),_0x2de681=_0x92a7ba[_0x1827f6(0x194)](async([_0x49bddb,_0x4865f2])=>{const _0x127f31=_0x1827f6;try{const _0x53473a=await this['_getLatestCompatibleVersion'](_0x49bddb,_0x4865f2);if(_0x53473a){const _0x3c2fca=_0x4865f2['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x49bddb,'newVersion':''+_0x3c2fca+_0x53473a,'oldVersion':_0x4865f2};}return null;}catch(_0x17e00c){return this[_0x127f31(0x17f)]?.[_0x127f31(0x17d)](_0x127f31(0x16f)+_0x49bddb+':',_0x17e00c[_0x127f31(0x1a3)]),null;}}),_0x51a921=await Promise[_0x1827f6(0x1ab)](_0x2de681);_0x51a921['forEach'](_0x19e80f=>{_0x19e80f&&(_0x5e731f[_0x19e80f['pkg']]=_0x19e80f['newVersion']);});}return _0x5e731f;}async[a0_0x56e9dd(0x177)](_0x4b0181,_0x4110df={}){const _0x3c52d7=a0_0x56e9dd;try{this[_0x3c52d7(0x162)](_0x4b0181);const {path:_0x3ffe53,mode:_0x5264cb,includeDev:_0x5d85b2}=_0x4b0181,{projectDir:_0x360810,agentId:_0x787d44,directoryAccess:_0x4d8634}=_0x4110df,_0x4d1b20=this[_0x3c52d7(0x181)](_0x3ffe53,_0x4110df),_0xc09849=a0_0x1079de['join'](_0x4d1b20,'package.json');this[_0x3c52d7(0x17f)]?.[_0x3c52d7(0x1c1)](_0x3c52d7(0x183),{'mode':_0x5264cb,'resolvedPath':_0x4d1b20,'includeDev':_0x5d85b2,'agentId':_0x787d44});const _0x238a8c=[];_0x238a8c['push'](_0x3c52d7(0x171)+_0x4d1b20),_0x238a8c[_0x3c52d7(0x1a7)]('Mode:\x20'+_0x5264cb);try{await a0_0x46cc19[_0x3c52d7(0x1d4)](_0xc09849);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0xc09849,'output':_0x238a8c['join']('\x0a')};}_0x238a8c['push']('\x0a📦\x20Reading\x20package.json...');const _0x31f8b4=await a0_0x46cc19['readFile'](_0xc09849,_0x3c52d7(0x1db)),_0x402832=JSON['parse'](_0x31f8b4),_0x2253a9={..._0x402832[_0x3c52d7(0x1a9)]};_0x5d85b2&&_0x402832['devDependencies']&&Object['assign'](_0x2253a9,_0x402832['devDependencies']);if(Object[_0x3c52d7(0x167)](_0x2253a9)['length']===0x0)return{'success':!![],'mode':_0x5264cb,'message':_0x3c52d7(0x161),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};if(Object[_0x3c52d7(0x167)](_0x2253a9)['length']>RESOLVER_CONFIG[_0x3c52d7(0x19e)])return{'success':![],'error':_0x3c52d7(0x17e)+Object['keys'](_0x2253a9)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};_0x238a8c['push']('📊\x20Found\x20'+Object['keys'](_0x2253a9)['length']+'\x20dependencies\x20to\x20check'),_0x238a8c['push'](_0x3c52d7(0x17b));const _0xdc4f04=await this['_checkDependencies'](_0x2253a9);_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x175)),_0x238a8c[_0x3c52d7(0x1a7)]('📈\x20Updates\x20available:\x20'+Object[_0x3c52d7(0x167)](_0xdc4f04)[_0x3c52d7(0x1b5)]);if(Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)]>0x0){_0x238a8c['push'](_0x3c52d7(0x185));for(const [_0x56a17b,_0x1c9a4b]of Object['entries'](_0xdc4f04)){const _0x3f9c9a=_0x2253a9[_0x56a17b];_0x238a8c['push']('\x20\x20•\x20'+_0x56a17b+':\x20'+_0x3f9c9a+_0x3c52d7(0x190)+_0x1c9a4b);}}else _0x238a8c['push'](_0x3c52d7(0x1d1));if(_0x5264cb==='check')return Object['keys'](_0xdc4f04)['length']>0x0&&_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1a5)),{'success':!![],'mode':_0x3c52d7(0x1bd),'message':_0x3c52d7(0x1e0)+Object[_0x3c52d7(0x167)](_0xdc4f04)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':Object[_0x3c52d7(0x167)](_0xdc4f04)[_0x3c52d7(0x1b5)],'updatesApplied':0x0,'errors':0x0},'updates':_0xdc4f04,'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};if((_0x5264cb==='fix'||_0x5264cb===_0x3c52d7(0x16b))&&Object[_0x3c52d7(0x167)](_0xdc4f04)['length']>0x0){_0x238a8c['push'](_0x3c52d7(0x169));const _0x2cdcd7=await this['_createBackup'](_0xc09849);_0x2cdcd7?_0x238a8c['push'](_0x3c52d7(0x1b7)+a0_0x1079de['basename'](_0x2cdcd7)):_0x238a8c[_0x3c52d7(0x1a7)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x238a8c[_0x3c52d7(0x1a7)]('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x4f8bba,_0xe1c778]of Object[_0x3c52d7(0x186)](_0xdc4f04)){_0x402832[_0x3c52d7(0x1a9)]?.[_0x4f8bba]&&(_0x402832['dependencies'][_0x4f8bba]=_0xe1c778),_0x402832['devDependencies']?.[_0x4f8bba]&&(_0x402832[_0x3c52d7(0x19d)][_0x4f8bba]=_0xe1c778);}await a0_0x46cc19['writeFile'](_0xc09849,JSON[_0x3c52d7(0x19f)](_0x402832,null,0x2)+'\x0a'),_0x238a8c['push'](_0x3c52d7(0x189)),_0x238a8c[_0x3c52d7(0x1a7)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x40796c,stderr:_0x4adae3}=await exec('npm\x20install',{'cwd':_0x4d1b20,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x40796c){const _0x1587c0=_0x40796c['trim']()[_0x3c52d7(0x1a1)]('\x0a');_0x1587c0['length']>0xa?_0x238a8c[_0x3c52d7(0x1a7)]('\x20\x20'+_0x1587c0['slice'](-0x5)['join']('\x0a\x20\x20')):_0x238a8c[_0x3c52d7(0x1a7)]('\x20\x20'+_0x40796c[_0x3c52d7(0x1b4)]());}_0x4adae3&&!_0x4adae3['includes'](_0x3c52d7(0x1b3))&&_0x238a8c[_0x3c52d7(0x1a7)]('⚠️\x20\x20'+_0x4adae3['trim']());_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x17c));try{const {stdout:_0x2ff0ed}=await exec(_0x3c52d7(0x182),{'cwd':_0x4d1b20,'timeout':0x7530}),_0x589f1e=JSON[_0x3c52d7(0x1cc)](_0x2ff0ed);if(_0x589f1e['dependencies']){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1b8));for(const _0x4e4307 of Object['keys'](_0xdc4f04)){_0x589f1e['dependencies'][_0x4e4307]&&_0x238a8c['push'](_0x3c52d7(0x168)+_0x4e4307+'@'+_0x589f1e[_0x3c52d7(0x1a9)][_0x4e4307][_0x3c52d7(0x1a2)]);}}}catch(_0x3c6bdf){this[_0x3c52d7(0x17f)]?.['debug'](_0x3c52d7(0x17a),_0x3c6bdf['message']);}return{'success':!![],'mode':_0x5264cb,'message':'Successfully\x20updated\x20'+Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)]+'\x20package(s)','statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':Object[_0x3c52d7(0x167)](_0xdc4f04)['length'],'updatesApplied':Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)],'errors':0x0},'updates':_0xdc4f04,'backupCreated':_0x2cdcd7!==null,'backupPath':_0x2cdcd7,'output':_0x238a8c['join']('\x0a')};}catch(_0xee8c36){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1d3)+_0xee8c36['message']);if(_0x2cdcd7)try{await a0_0x46cc19[_0x3c52d7(0x1ac)](_0x2cdcd7,_0xc09849),_0x238a8c['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x209d11){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x163));}return{'success':![],'mode':_0x5264cb,'error':_0x3c52d7(0x19b)+_0xee8c36['message'],'statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)[_0x3c52d7(0x1b5)],'updatesAvailable':Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)],'updatesApplied':0x0,'errors':0x1},'updates':_0xdc4f04,'backupCreated':_0x2cdcd7!==null,'output':_0x238a8c['join']('\x0a')};}}else{if(_0x5264cb===_0x3c52d7(0x1dd)||_0x5264cb==='auto')return _0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x170)),{'success':!![],'mode':_0x5264cb,'message':_0x3c52d7(0x198),'statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};}}catch(_0x2a9f4d){return this['logger']?.['error'](_0x3c52d7(0x19a),_0x2a9f4d),{'success':![],'error':_0x2a9f4d['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x2a9f4d[_0x3c52d7(0x1a3)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4694(){const _0x265d49=['C3rHCNrZv2L0Aa','rgLMzIb0B28GBgfYz2uGka','cKvYCM9YCZOG','C3bSAxq','CMvWBgfJzq','ChjVy2vZC0zPBgu','cIaGica','Bwf4','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','tufyx05fv19dt05uru5ux1njwKu','BgLUzxnmAw1PDa','zxjYB3jZ','z2v0rgvZy3jPChrPB24','odqWoteWEwX3swnt','tufyx0XjtKvFuKfor0vFu0LArq','Aw5JBhvKzxm','AxnbCNjHEq','zxH0CMfJDef0DhjPyNv0zq','BwfW','B2XKq29UDgvUDa','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','C2L6zq','tufyx09mrf9dt05uru5ux1njwKu','Bg9Nz2vY','tufyx0zjtevtx1bfuL9puevsqvrjt04','CgfYC2vku09o','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','icHJB250zw50ig5VDcbMB3vUzcK','AxnqyxrOqwnJzxnZAwjSzq','nJaYnJnIzLnRCei','CgfYC2vmAw5LuMfUz2vZ','tuiPoIa','mta0nteYBKTrD3P3','AgfZ','C3vIC3rYAw5N','BMv3BgLUzxm','nJeWmdH1tMHHsKu','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','ntKXodyZBNnHDejr','DgLTzw91Da','zxHLy3v0zq','D29YA2LUz0rPCMvJDg9YEq','nde2mdyYnePrDhzlqG','Dg90ywXszxbSywnLBwvUDhm','igzPBgvZigLUig9UzsbVCgvYyxrPB24','CMvWBgfJzunVBMzPzW','yxbWBhLszxbSywnLBwvUDa','y2XLyw51Ca','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','q1jfqvrfx0jbq0Tvufm','BgvUz3rO','ihjLCgXHy2vTzw50khmPigLUia','pvSIj10Ow14Ij10QkvSIj10','CMvWBgfJzw1LBNrZ','Bw9Kzq','ChvZAa','zMLSzxnqCM9JzxnZzwq','C3rHDa','D2fYBG','nwreExvevG','y291BNq','CMvHzezPBgu','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','yMfJA3vWq3jLyxrLza','z2vUzxjHDgvtDw1Tyxj5','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','y291BNrpy2n1CNjLBMnLCW','zMLSzxnnB2rPzMLLza','BgLUzxmTBgLTAxq','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','D3jPDgvgAwXL','ig1PC3nPBMCGBMv3q29UDgvUDa','zMLSzxm','CgfYC2vytuW','tufyx0zjtevFu0LArq','zxjYB3i','Cgf0Aa','mJa4nZK5nhfWwgnTtq','ugf0AcbUB3qGywnJzxnZAwjSztOG','igzPBguOCYKktw9KAwzPzwqG','z2vUzxjHDgveAwzM','ig1PC3nPBMCGB2XKq29UDgvUDa','DxrMltG','ywrK','BMv3q29UDgvUDa','s0iP','zxHLyW','tufyx0rjrKzFteLorvm','CMvWBgfJzw1LBNrZtwfKzq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','DhjPBq','ihrVia','AxnbyNnVBhv0zq','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','Aw5MBW'];a0_0x4694=function(){return _0x265d49;};return a0_0x4694();}const a0_0x20dfb8=a0_0x8fd8;(function(_0x1ebaf8,_0x3ef7d0){const _0x3ae939=a0_0x8fd8,_0x54b506=_0x1ebaf8();while(!![]){try{const _0x5ae1d3=parseInt(_0x3ae939(0x14a))/0x1+-parseInt(_0x3ae939(0x12f))/0x2+parseInt(_0x3ae939(0x146))/0x3+-parseInt(_0x3ae939(0x142))/0x4+-parseInt(_0x3ae939(0xfd))/0x5*(parseInt(_0x3ae939(0x110))/0x6)+-parseInt(_0x3ae939(0x13f))/0x7+parseInt(_0x3ae939(0x14e))/0x8;if(_0x5ae1d3===_0x3ef7d0)break;else _0x54b506['push'](_0x54b506['shift']());}catch(_0x4187fe){_0x54b506['push'](_0x54b506['shift']());}}}(a0_0x4694,0x5057e));import{BaseTool}from'./baseTool.js';import{promises as a0_0x1fad82}from'fs';function a0_0x8fd8(_0x299dcd,_0x505451){_0x299dcd=_0x299dcd-0xf8;const _0x469422=a0_0x4694();let _0x8fd84d=_0x469422[_0x299dcd];if(a0_0x8fd8['pmXIhi']===undefined){var _0x11492f=function(_0xca7dbc){const _0x425602='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1fad82='',_0x5e54f3='';for(let _0x2db1b9=0x0,_0x570e89,_0x531eb3,_0x48d6c2=0x0;_0x531eb3=_0xca7dbc['charAt'](_0x48d6c2++);~_0x531eb3&&(_0x570e89=_0x2db1b9%0x4?_0x570e89*0x40+_0x531eb3:_0x531eb3,_0x2db1b9++%0x4)?_0x1fad82+=String['fromCharCode'](0xff&_0x570e89>>(-0x2*_0x2db1b9&0x6)):0x0){_0x531eb3=_0x425602['indexOf'](_0x531eb3);}for(let _0x3f34df=0x0,_0x197c06=_0x1fad82['length'];_0x3f34df<_0x197c06;_0x3f34df++){_0x5e54f3+='%'+('00'+_0x1fad82['charCodeAt'](_0x3f34df)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e54f3);};a0_0x8fd8['LdmPEc']=_0x11492f,a0_0x8fd8['dtISOS']={},a0_0x8fd8['pmXIhi']=!![];}const _0x5959da=_0x469422[0x0],_0x2cb79f=_0x299dcd+_0x5959da,_0x25a280=a0_0x8fd8['dtISOS'][_0x2cb79f];return!_0x25a280?(_0x8fd84d=a0_0x8fd8['LdmPEc'](_0x8fd84d),a0_0x8fd8['dtISOS'][_0x2cb79f]=_0x8fd84d):_0x8fd84d=_0x25a280,_0x8fd84d;}import a0_0x5e54f3 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x2db1b9={},_0x570e89=null){const _0x486636=a0_0x8fd8;super(_0x2db1b9,_0x570e89),this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x2db1b9[_0x486636(0x14b)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x2db1b9['replaceConfig']};}[a0_0x20dfb8(0x12e)](){const _0x17608a=a0_0x20dfb8;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x17608a(0x10d)]/(0x400*0x400)+_0x17608a(0x13c)+REPLACE_CONFIG[_0x17608a(0x138)]/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG[_0x17608a(0x12b)]/0x400+_0x17608a(0x147)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0x17608a(0x13a)]+_0x17608a(0x100);}['parseParameters'](_0x531eb3){const _0x3f01e4=a0_0x20dfb8;try{if(_0x531eb3[_0x3f01e4(0x11d)]()[_0x3f01e4(0x122)]('{'))return this['parseJSON'](_0x531eb3);return this[_0x3f01e4(0x10c)](_0x531eb3);}catch(_0x48d6c2){this['logger']?.[_0x3f01e4(0x10e)](_0x3f01e4(0x149),{'error':_0x48d6c2['message']});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x48d6c2['message']);}}[a0_0x20dfb8(0x13b)](_0x3f34df){const _0xc2d175=a0_0x20dfb8,_0x197c06=JSON['parse'](_0x3f34df);if(!_0x197c06['files']||!Array[_0xc2d175(0x132)](_0x197c06[_0xc2d175(0x10b)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x197c06['files']['map'](_0x295053=>({'path':_0x295053['path'],'replacements':(_0x295053['replacements']||[])[_0xc2d175(0x134)](_0x52965a=>({'oldContent':_0x52965a[_0xc2d175(0x135)],'newContent':_0x52965a[_0xc2d175(0x117)],'mode':_0x52965a[_0xc2d175(0xf8)]||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x52965a[_0xc2d175(0x12c)]||null}))}))};}['parseXML'](_0x306bcd){const _0x4b9ede=a0_0x20dfb8,_0x23259e=[],_0x2f8c91=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x535d10;while((_0x535d10=_0x2f8c91[_0x4b9ede(0x119)](_0x306bcd))!==null){const _0x46ac89=_0x535d10[0x1],_0x5d5369=_0x535d10[0x2],_0x4f97ab=[],_0x4a5d52=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x2819b2;while((_0x2819b2=_0x4a5d52[_0x4b9ede(0x119)](_0x5d5369))!==null){const _0x421c45=_0x2819b2[0x1]||'',_0x549761=_0x2819b2[0x2],_0x38a982=this['extractAttribute'](_0x421c45,_0x4b9ede(0xf8))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x310218=this['extractAttribute'](_0x421c45,_0x4b9ede(0x106)),_0x41d360=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x549761);if(!_0x41d360){this['logger']?.['warn'](_0x4b9ede(0x107));continue;}const _0x211cd5=_0x41d360[0x1],_0x548b3b=/<new-content>([\s\S]*?)<\/new-content>/i[_0x4b9ede(0x119)](_0x549761);if(!_0x548b3b){this[_0x4b9ede(0x139)]?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4c7b82=_0x548b3b[0x1],_0x34e742=this['applyTrimMode'](_0x211cd5,_0x38a982),_0x30ec34=this['applyTrimMode'](_0x4c7b82,_0x38a982);_0x4f97ab[_0x4b9ede(0xf9)]({'oldContent':_0x34e742,'newContent':_0x30ec34,'mode':_0x38a982,'linesLimit':_0x310218});}_0x4f97ab[_0x4b9ede(0x156)]>0x0&&_0x23259e[_0x4b9ede(0xf9)]({'path':_0x46ac89,'replacements':_0x4f97ab});}return{'files':_0x23259e};}[a0_0x20dfb8(0x133)](_0x39d595,_0x894500){const _0x81d77c=a0_0x20dfb8,_0x185912=new RegExp(_0x894500+_0x81d77c(0x158),'i'),_0x5d8141=_0x185912['exec'](_0x39d595);return _0x5d8141?_0x5d8141[0x1]:null;}['applyTrimMode'](_0x288d1a,_0x3a3915){const _0x4907af=a0_0x20dfb8;switch(_0x3a3915){case'newlines':return _0x288d1a[_0x4907af(0x126)](/^\n+|\n+$/g,'');case'none':return _0x288d1a;case'trim':default:return _0x288d1a['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x20dfb8(0x103)](_0x8b44de){const _0x345b47=a0_0x20dfb8,_0x4941d7=[];if(!_0x8b44de[_0x345b47(0x10b)]||!Array['isArray'](_0x8b44de[_0x345b47(0x10b)]))_0x4941d7['push']('files\x20must\x20be\x20an\x20array');else{_0x8b44de[_0x345b47(0x10b)]['length']===0x0&&_0x4941d7['push']('files\x20array\x20cannot\x20be\x20empty');_0x8b44de[_0x345b47(0x10b)]['length']>this[_0x345b47(0x151)][_0x345b47(0x13a)]&&_0x4941d7['push']('Cannot\x20process\x20more\x20than\x20'+this['replaceConfig'][_0x345b47(0x13a)]+_0x345b47(0x150));for(const _0x46fe30 of _0x8b44de[_0x345b47(0x10b)]){!_0x46fe30[_0x345b47(0x10f)]&&_0x4941d7[_0x345b47(0xf9)]('Each\x20file\x20must\x20have\x20a\x20path');_0x46fe30['path']&&_0x46fe30[_0x345b47(0x10f)]['includes']('..')&&_0x4941d7['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x46fe30['path']);if(!_0x46fe30[_0x345b47(0x159)]||!Array[_0x345b47(0x132)](_0x46fe30[_0x345b47(0x159)]))_0x4941d7[_0x345b47(0xf9)]('File\x20'+_0x46fe30[_0x345b47(0x10f)]+_0x345b47(0x136));else{if(_0x46fe30['replacements']['length']===0x0)_0x4941d7[_0x345b47(0xf9)]('File\x20'+_0x46fe30[_0x345b47(0x10f)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5a7ea5 of _0x46fe30['replacements']){!_0x5a7ea5[_0x345b47(0x135)]&&_0x5a7ea5['oldContent']!==''&&_0x4941d7['push']('Replacement\x20in\x20'+_0x46fe30[_0x345b47(0x10f)]+_0x345b47(0x114)),!_0x5a7ea5['newContent']&&_0x5a7ea5['newContent']!==''&&_0x4941d7[_0x345b47(0xf9)]('Replacement\x20in\x20'+_0x46fe30['path']+_0x345b47(0x10a)),_0x5a7ea5['oldContent']&&_0x5a7ea5[_0x345b47(0x135)]['length']>this[_0x345b47(0x151)]['MAX_OLD_CONTENT_SIZE']&&_0x4941d7[_0x345b47(0xf9)](_0x345b47(0x108)+this[_0x345b47(0x151)][_0x345b47(0x138)]/0x400+_0x345b47(0x118)),_0x5a7ea5['newContent']&&_0x5a7ea5['newContent']['length']>this[_0x345b47(0x151)]['MAX_NEW_CONTENT_SIZE']&&_0x4941d7['push']('newContent\x20too\x20large\x20(max\x20'+this['replaceConfig'][_0x345b47(0x12b)]/0x400+'KB)'),_0x5a7ea5[_0x345b47(0xf8)]&&!['trim',_0x345b47(0x145),'none'][_0x345b47(0x131)](_0x5a7ea5['mode'])&&_0x4941d7['push']('Invalid\x20mode:\x20'+_0x5a7ea5['mode']+_0x345b47(0x154));}}}}if(_0x4941d7[_0x345b47(0x156)]>0x0)throw new Error(_0x345b47(0x148)+_0x4941d7['join'](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x20dfb8(0x14c)](_0x152c5d,_0x332a45){const _0x10dbf6=a0_0x20dfb8,{files:_0x3d9abc}=_0x152c5d,{projectDir:_0x3ab6ab,agentId:_0x3d6aa8,directoryAccess:_0x3b543a}=_0x332a45;let _0x5e0ccf=_0x3ab6ab||process['cwd']();_0x3b543a&&_0x3b543a['workingDirectory']&&(_0x5e0ccf=_0x3b543a[_0x10dbf6(0x14d)],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x3b543a['workingDirectory'],'agentId':_0x3d6aa8}));this['logger']?.['info'](_0x10dbf6(0x12a),{'fileCount':_0x3d9abc[_0x10dbf6(0x156)],'workingDirectory':_0x5e0ccf,'agentId':_0x3d6aa8});const _0x2dc509=[],_0x552ce7={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x341317 of _0x3d9abc){try{const _0x38b142=await this[_0x10dbf6(0x127)](_0x341317,_0x5e0ccf,_0x3b543a);_0x2dc509['push'](_0x38b142),_0x552ce7[_0x10dbf6(0xfa)]++,_0x38b142[_0x10dbf6(0x11b)]>0x0&&(_0x552ce7[_0x10dbf6(0x105)]++,_0x552ce7[_0x10dbf6(0x14f)]+=_0x38b142['replacementsMade']),_0x38b142[_0x10dbf6(0x101)]&&_0x552ce7['backupsCreated']++;}catch(_0x1d395a){this['logger']?.['error'](_0x10dbf6(0x120)+_0x341317[_0x10dbf6(0x10f)],{'error':_0x1d395a['message']}),_0x2dc509[_0x10dbf6(0xf9)]({'filePath':_0x341317['path'],'success':![],'error':_0x1d395a['message']}),_0x552ce7[_0x10dbf6(0x12d)]++;}}return{'success':_0x552ce7['errors']===0x0,'results':_0x2dc509,'statistics':_0x552ce7,'summary':this['generateSummary'](_0x552ce7),'toolUsed':'file-content-replace'};}async[a0_0x20dfb8(0x127)](_0x4ef838,_0x10132f,_0x3457eb){const _0x4ad491=a0_0x20dfb8,{path:_0x22c9b6,replacements:_0x4504e2}=_0x4ef838,_0x4ff55=a0_0x5e54f3['isAbsolute'](_0x22c9b6)?_0x22c9b6:a0_0x5e54f3['resolve'](_0x10132f,_0x22c9b6);if(_0x3457eb){const _0x3a9071=this[_0x4ad491(0x13e)](_0x4ff55,_0x10132f,_0x3457eb);if(!_0x3a9071)throw new Error(_0x4ad491(0x111)+_0x22c9b6);}try{await a0_0x1fad82['access'](_0x4ff55);}catch(_0x5be746){throw new Error('File\x20not\x20found:\x20'+_0x22c9b6);}const _0x5fc3fb=await a0_0x1fad82[_0x4ad491(0xfb)](_0x4ff55);if(_0x5fc3fb[_0x4ad491(0x137)]>this[_0x4ad491(0x151)]['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x4ad491(0x151)]['MAX_FILE_SIZE']/(0x400*0x400)+_0x4ad491(0x141)+_0x22c9b6);let _0xde9648=await a0_0x1fad82[_0x4ad491(0xff)](_0x4ff55,_0x4ad491(0x115));const _0x5abf2d=_0xde9648;let _0x2bd1b9=![];if(this[_0x4ad491(0x151)][_0x4ad491(0x155)]){const _0x2c5c0c=_0x4ff55+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x1fad82['writeFile'](_0x2c5c0c,_0x5abf2d,_0x4ad491(0x115)),_0x2bd1b9=!![];}catch(_0x45723a){this[_0x4ad491(0x139)]?.[_0x4ad491(0xfc)]('Failed\x20to\x20create\x20backup:\x20'+_0x45723a['message']);}}let _0x96f485=0x0;const _0x6775ad=[];for(const _0x50779a of _0x4504e2){const _0x1effe8=await this['applyReplacement'](_0xde9648,_0x50779a[_0x4ad491(0x135)],_0x50779a['newContent'],_0x50779a['linesLimit'],_0x50779a['mode']);_0xde9648=_0x1effe8[_0x4ad491(0x117)],_0x96f485+=_0x1effe8['count'],_0x6775ad['push']({'oldContent':_0x50779a['oldContent'][_0x4ad491(0x144)](0x0,0x32)+(_0x50779a['oldContent'][_0x4ad491(0x156)]>0x32?'...':''),'newContent':_0x50779a[_0x4ad491(0x117)][_0x4ad491(0x144)](0x0,0x32)+(_0x50779a['newContent'][_0x4ad491(0x156)]>0x32?'...':''),'count':_0x1effe8[_0x4ad491(0xfe)],'mode':_0x50779a['mode'],'linesLimit':_0x50779a[_0x4ad491(0x12c)]});}_0x96f485>0x0&&await a0_0x1fad82[_0x4ad491(0x109)](_0x4ff55,_0xde9648,_0x4ad491(0x115));const _0x260ecf=_0x96f485>0x0?this['generateDiff'](_0x5abf2d,_0xde9648):null;return{'filePath':_0x22c9b6,'resolvedPath':_0x4ff55,'success':!![],'replacementsMade':_0x96f485,'backupCreated':_0x2bd1b9,'replacementDetails':_0x6775ad,'diff':_0x260ecf,'message':_0x96f485>0x0?'Made\x20'+_0x96f485+_0x4ad491(0x157)+_0x22c9b6:'No\x20replacements\x20made\x20in\x20'+_0x22c9b6+_0x4ad491(0x13d)};}['isPathAccessible'](_0x32a120,_0x1f48c1,_0x21865){const _0x41859b=a0_0x20dfb8,_0x308e0f=a0_0x5e54f3['relative'](_0x1f48c1,_0x32a120);if(!_0x308e0f[_0x41859b(0x122)]('..')&&!a0_0x5e54f3['isAbsolute'](_0x308e0f))return!![];if(_0x21865['writeEnabledDirectories'])for(const _0x223924 of _0x21865['writeEnabledDirectories']){const _0x46c893=a0_0x5e54f3['relative'](_0x223924,_0x32a120);if(!_0x46c893[_0x41859b(0x122)]('..')&&!a0_0x5e54f3[_0x41859b(0x11f)](_0x46c893))return!![];}return![];}async[a0_0x20dfb8(0x152)](_0x9cfb9b,_0x19bf5f,_0x5b6670,_0x5d9e6f,_0x91c3c8){const _0x3509e1=a0_0x20dfb8;if(!_0x5d9e6f){const _0x3e8d80=this[_0x3509e1(0x104)](_0x9cfb9b,_0x19bf5f);if(_0x3e8d80===0x0)return{'newContent':_0x9cfb9b,'count':0x0};const _0x2c857c=_0x9cfb9b['split'](_0x19bf5f)['join'](_0x5b6670);return{'newContent':_0x2c857c,'count':_0x3e8d80};}const _0x292fd4=this[_0x3509e1(0x140)](_0x5d9e6f),_0x2caaee=_0x9cfb9b[_0x3509e1(0x125)]('\x0a');let _0x3dd3d8=0x0;for(let _0x3d76d9=0x0;_0x3d76d9<_0x2caaee['length'];_0x3d76d9++){const _0x53a181=_0x3d76d9+0x1;if(_0x292fd4[_0x3509e1(0x143)](_0x53a181)){if(_0x2caaee[_0x3d76d9]['includes'](_0x19bf5f)){const _0x45f225=this[_0x3509e1(0x104)](_0x2caaee[_0x3d76d9],_0x19bf5f);_0x2caaee[_0x3d76d9]=_0x2caaee[_0x3d76d9][_0x3509e1(0x125)](_0x19bf5f)['join'](_0x5b6670),_0x3dd3d8+=_0x45f225;}}}return{'newContent':_0x2caaee['join']('\x0a'),'count':_0x3dd3d8};}[a0_0x20dfb8(0x104)](_0x562902,_0x1a5ec0){const _0x55fb0c=a0_0x20dfb8;if(!_0x1a5ec0)return 0x0;return _0x562902[_0x55fb0c(0x125)](_0x1a5ec0)[_0x55fb0c(0x156)]-0x1;}['parseLineRanges'](_0x505ddf){const _0x2d47aa=a0_0x20dfb8,_0x3972ee=new Set();if(!_0x505ddf||_0x505ddf['trim']()==='')return _0x3972ee;const _0x5e0acd=_0x505ddf[_0x2d47aa(0x125)](',');for(const _0x1b381e of _0x5e0acd){const _0x4ccfd4=_0x1b381e['trim']();if(_0x4ccfd4==='')continue;if(_0x4ccfd4[_0x2d47aa(0x131)]('-')){const [_0x1f4859,_0x3c85ec]=_0x4ccfd4['split']('-')[_0x2d47aa(0x134)](_0x5e9bfa=>parseInt(_0x5e9bfa[_0x2d47aa(0x11d)](),0xa));if(!isNaN(_0x1f4859)&&!isNaN(_0x3c85ec)&&_0x3c85ec-_0x1f4859<this[_0x2d47aa(0x151)][_0x2d47aa(0x130)])for(let _0x304884=_0x1f4859;_0x304884<=_0x3c85ec;_0x304884++){_0x3972ee[_0x2d47aa(0x116)](_0x304884);}}else{const _0x2d9f15=parseInt(_0x4ccfd4,0xa);!isNaN(_0x2d9f15)&&_0x3972ee['add'](_0x2d9f15);}}return _0x3972ee;}[a0_0x20dfb8(0x113)](_0x1a6cd3,_0x6d333){const _0x585aac=a0_0x20dfb8,_0x316b52=_0x1a6cd3[_0x585aac(0x125)]('\x0a'),_0x3afd25=_0x6d333['split']('\x0a');let _0x5dabb0=-0x1,_0x6f602d=-0x1;const _0x4f67d5=Math[_0x585aac(0x129)](_0x316b52['length'],_0x3afd25['length']);for(let _0x341876=0x0;_0x341876<_0x4f67d5;_0x341876++){const _0x2cd8b3=_0x341876<_0x316b52[_0x585aac(0x156)]?_0x316b52[_0x341876]:'',_0x303fac=_0x341876<_0x3afd25[_0x585aac(0x156)]?_0x3afd25[_0x341876]:'';if(_0x2cd8b3!==_0x303fac){if(_0x5dabb0===-0x1)_0x5dabb0=_0x341876;_0x6f602d=_0x341876;}}if(_0x5dabb0===-0x1)return'No\x20differences';const _0x8df45=this[_0x585aac(0x151)]['DIFF_CONTEXT_LINES'],_0x52e015=Math['max'](0x0,_0x5dabb0-_0x8df45),_0x4e2378=Math['min'](_0x4f67d5-0x1,_0x6f602d+_0x8df45);if(_0x4e2378-_0x52e015>this[_0x585aac(0x151)][_0x585aac(0x11a)])return _0x585aac(0x123)+(_0x4e2378-_0x52e015+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+('Changed\x20lines:\x20'+(_0x5dabb0+0x1)+_0x585aac(0x11e)+(_0x6f602d+0x1));let _0x2aa4af='@@\x20-'+(_0x52e015+0x1)+','+(_0x4e2378-_0x52e015+0x1)+'\x20+'+(_0x52e015+0x1)+','+(_0x4e2378-_0x52e015+0x1)+'\x20@@\x0a';for(let _0x2c2a2a=_0x52e015;_0x2c2a2a<=_0x4e2378;_0x2c2a2a++){const _0x4288e1=_0x2c2a2a<_0x316b52[_0x585aac(0x156)]?_0x316b52[_0x2c2a2a]:'',_0x2d6eb3=_0x2c2a2a<_0x3afd25['length']?_0x3afd25[_0x2c2a2a]:'';_0x4288e1===_0x2d6eb3?_0x2aa4af+='\x20\x20'+_0x4288e1+'\x0a':(_0x2aa4af+='-\x20'+_0x4288e1+'\x0a',_0x2aa4af+='+\x20'+_0x2d6eb3+'\x0a');}return _0x2aa4af;}[a0_0x20dfb8(0x102)](_0x432af5){const _0x2db49c=a0_0x20dfb8;return('\x0aProcessed\x20'+_0x432af5[_0x2db49c(0xfa)]+_0x2db49c(0x112)+_0x432af5['filesModified']+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x432af5[_0x2db49c(0x14f)]+'\x0aBackups\x20created:\x20'+_0x432af5['backupsCreated']+_0x2db49c(0x124)+_0x432af5['errors']+_0x2db49c(0x128))['trim']();}async[a0_0x20dfb8(0x153)](_0x56e971){const _0xaa3df8=a0_0x20dfb8;this['logger']?.[_0xaa3df8(0x121)](_0xaa3df8(0x11c),{'operationId':_0x56e971});}}export default FileContentReplaceTool;
|
|
1
|
+
const a0_0x42a559=a0_0x5132;(function(_0x21b498,_0x123233){const _0x66316f=a0_0x5132,_0x7e5ee7=_0x21b498();while(!![]){try{const _0x509cbc=parseInt(_0x66316f(0x217))/0x1+-parseInt(_0x66316f(0x214))/0x2+-parseInt(_0x66316f(0x24b))/0x3+-parseInt(_0x66316f(0x253))/0x4+-parseInt(_0x66316f(0x203))/0x5+parseInt(_0x66316f(0x20a))/0x6+-parseInt(_0x66316f(0x215))/0x7*(-parseInt(_0x66316f(0x22c))/0x8);if(_0x509cbc===_0x123233)break;else _0x7e5ee7['push'](_0x7e5ee7['shift']());}catch(_0x71062b){_0x7e5ee7['push'](_0x7e5ee7['shift']());}}}(a0_0x2916,0xad6f6));import{BaseTool}from'./baseTool.js';import{promises as a0_0x128a6c}from'fs';function a0_0x2916(){const _0x4d0103=['AxnbyNnVBhv0zq','Bwf4','tuiPoIa','tufyx05fv19dt05uru5ux1njwKu','nda5mZe4ohnrqu1Zza','tufyx0zjtevtx1bfuL9puevsqvrjt04','BwfW','cKvYCM9YCZOG','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','B2XKq29UDgvUDa','Aw5JBhvKzxm','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','tufyx0zjtevFu0LArq','qKfds1vqx0vyvevou0LptG','mJC0oti1nLj0vLbuCa','nZDxt0HrwhO','C3rHDa','nZqWmtKXyLb6Ee9b','zxjYB3jZ','zxjYB3i','BMv3q29UDgvUDa','CMvHzezPBgu','yxbWBhLszxbSywnLBwvUDa','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','AgfZ','CMvXDwLYzxnqCM9Qzwn0','z2vUzxjHDgveAwzM','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','rMLSzsb0B28GBgfYz2uGkg1HEca','CgfYC2vqyxjHBwv0zxjZ','BwvZC2fNzq','BM9Uzq','C3bSAxq','zMLSzs1JB250zw50lxjLCgXHy2u','s0iP','CMvWBgfJzunVBMzPzW','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','Bw9Kzq','mJmXmdK5mLDYyunKqG','cLbYB2nLC3nLzca','CgfYC2u','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','ig1PC3nPBMCGBMv3q29UDgvUDa','AM9PBG','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','revgqvvmvf9uuKLnx01preu','CMvSyxrPDMu','igzPBgvZigLUig9UzsbVCgvYyxrPB24','cKjHy2T1ChmGy3jLyxrLzdOG','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','yMfJA3vWq3jLyxrLza','Bg9Nz2vY','BgLUzxnmAw1PDa','ChjVy2vZC0zPBgu','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','rMLSzsa','yxbWBhLuCMLTtw9Kzq','y291BNrpy2n1CNjLBMnLCW','BwLU','CgfYC2vku09o','BgLUzxmTBgLTAxq','tufyx09mrf9dt05uru5ux1njwKu','Aw5MBW','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','CMvWBgfJzw1LBNrZ','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPytuWGvvnbr0u6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVyxbWlMPZiJ4kicaGidXYzxbSywnLig1Vzgu9iNrYAw0IigXPBMvZlwXPBwL0psi1ldCTmtaIpGOGicaGica8B2XKlwnVBNrLBNq+cIaGicaGicaGy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNB2XKjYK7cIaGicaGicaGFqOGicaGica8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+cIaGicaGicaGy29UC3qGBMv3rNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNBMv3jYK7cIaGicaGicaGFqOGicaGica8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBcIaGicaGicaGEWOGicaGicaGicaGiM9SzenVBNrLBNqIoIaIy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7FsiScIaGicaGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbUzxDgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjTB2rLiJOGiNrYAw0IlaOGicaGicaGicaGiMXPBMvZtgLTAxqIoIaInsW3lteWiGOGicaGicaGih0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cGPWyxrOicHYzxf1AxjLzcK6cIaGlsbqyxrOihrVihrOzsbMAwXLihrVig1VzgLMEqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLcIaGlsbfEgfTCgXLCZOGiNnYyY9HChaUANmIlcaIlI9JB25MAwCUANnVBIikcM9SzenVBNrLBNqGkhjLCxvPCMvKktOkicaTienVBNrLBNqGDg8GzMLUzcbHBMqGCMvWBgfJzqOGic0Gu3vIAMvJDcb0BYb0CMLTig1VzguGChjVy2vZC2LUzWOGic0GtxvZDcbLEgLZDcbPBIbMAwXLcGPUzxDdB250zw50icHYzxf1AxjLzcK6cIaGlsbszxbSywnLBwvUDcbJB250zw50cIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbdyw4GyMuGC2fTzsbSzw5NDgGSihnOB3j0zxiSig9YigXVBMDLCGOkBw9KzsaOB3b0Aw9UywWPoGOGic0Gv2HPDgvZCgfJzsbOyw5KBgLUzYbTB2rLcIaGlsbpChrPB25ZoGOGicaGkIaIDhjPBsiGkgrLzMf1BhqPoIbuCMLTigfSBcb3AgL0zxnWywnLigzYB20GyM90AcbLBMrZcIaGicaQicjUzxDSAw5LCYi6ie9UBhKGDhjPBsbUzxDSAw5LignOyxjHy3rLCNmkicaGicOGiM5VBMuIoIbvC2uGy29UDgvUDcbLEgfJDgX5igfZihbYB3zPzgvKcIaGlsbizwXWCYb3AxrOig1HDgnOAw5NigrLC3bPDguGAw5Kzw50yxrPB24GzgLMzMvYzw5JzxmkcMXPBMvZtgLTAxqGkg9WDgLVBMfSktOkicaTifjLC3rYAwn0ihjLCgXHy2vTzw50ihrVihnWzwnPzMLJigXPBMvZcIaGlsbgB3jTyxq6ienVBw1HlxnLCgfYyxrLzcbSAw5Lig51BwjLCNmGB3iGCMfUz2vZcIaGlsbfEgfTCgXLCZOkicaGicOGiJuIic0Gt25SEsbSAw5LidukicaGicOGiJuSmtaSmtuIic0GtgLUzxmGnsWGmtaSigfUzcaXnqOGicaGkIaIns0XmciGlsbmAw5LCYa1ihrOCM91z2GGmtakicaGicOGiJeTnsWXmcWXns0YmciGlsbmAw5LCYaXltuSideWlcbHBMqGmtuTmJakicaTieXPBMuGBNvTyMvYCYbHCMuGms1IyxnLzaOkvfjjtsbnt0rfuYbfwfbmquLoruq6cGPnB2rLoIaIDhjPBsiGkfjLy29TBwvUzgvKigzVCIbTB3n0ignHC2vZkqOGieLUChv0oGOGicaGiIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiMnVBNn0ihGGpsaXoYikicbvC2uGD2HLBJOGsw5Kzw50yxrPB24GBwf5ihzHCNKkcK1Vzgu6icjUzxDSAw5LCYikicbjBNb1DdOkicaGicjCBIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiIaGy29UC3qGEca9ide7icaIcIaGvxnLihDOzw46ifbYzxnLCNzPBMCGAw50zxjUywWGD2HPDgvZCgfJzqOktw9KztOGiM5VBMuIcIaGsw5WDxq6cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGiefMDgvYihrYAw06cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGifvZzsb3AgvUoIbfEgfJDcbJAgfYywn0zxiGBwf0y2GGBMvLzgvKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50ihDPDgGGDhjPBtOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cIaGica8CMvWBgfJzsbTB2rLpsj0CMLTiJ4kicaGicaGpg9Szc1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGih0kicaGicaGpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGicaGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSkicaGicaGicb9cIaGicaGidWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsaYic0GtgLUzs1SAw1PDgvKihjLCgXHy2vTzw50oGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl0fWCc5QCYi+cIaGica8CMvWBgfJzsbSAw5LCY1SAw1PDd0ImtaTmJaIpGOGicaGica8B2XKlwnVBNrLBNq+y29UC3qGqvbjx1vstca9icDODhrWoI8VBg9JywXOB3n0oJmWmdaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pMnVBNn0iefqsv9vuKWGpsbWCM9JzxnZlMvUDI5bueLFvvjmpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cJWVzMLSzs1JB250zw50lxjLCgXHy2u+cGPfEgfTCgXLidmGlsbnDwX0AxbSzsbYzxbSywnLBwvUDhmGAw4GB25LigzPBgu6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVy29UzMLNlMPZiJ4kicaGidXYzxbSywnLpGOGicaGica8B2XKlwnVBNrLBNq+revcvuCGpsbMywXZztWVB2XKlwnVBNrLBNq+cIaGicaGidXUzxCTy29UDgvUDd5erujvrYa9ihrYDwu8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGicaGphjLCgXHy2u+cIaGicaGidXVBgqTy29UDgvUDd5mt0DFtevwruWGpsaNzxjYB3iNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pKXpr19mrvzftca9icDKzwj1zYC8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKv4yw1WBguGncaTie11BhrPCgXLigzPBgvZoGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl2fWCc5QCYi+cIaGica8CMvWBgfJzt4kicaGicaGpg9Szc1JB250zw50pNzLCNnPB24GpsaNms4WlJaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pNzLCNnPB24GpsaNms4XlJaNpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cIaGpgzPBguGCgf0Ad0ICgfJA2fNzs5QC29UiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+iNzLCNnPB24IoIaIms4WlJaIpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pIj2zxjZAw9UiJOGiJeUms4WiJWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsa1ic0GrxHHy3qGD2HPDgvZCgfJzsbTyxrJAgLUzZOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iK1HA2vMAwXLiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrNy2m8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrJBgfUzZWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrKvbvfvsrvm6cGRINjmGqxv0B21HDgLJigjHy2T1CcbJCMvHDgLVBIaOlMjHAYbMAwXLCYKk4PYtiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmk4PYtifjLCgXHy2vTzw50ignVDw50Aw5NigfUzcbZDgf0Axn0AwnZcUkCKYbnDwX0As1MAwXLig9WzxjHDgLVBNmk4PYtieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmk4PYtieLUDgvSBgLNzw50ihDOAxrLC3bHy2uGAgfUzgXPBMCk4PYtifnLy3vYAxr5ihzHBgLKyxrPB24GkhbHDgGGywnJzxnZkqRINjmGq3jLyxrLCYbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGBMvLzgvKcGPmsu1jvefusu9ouZOkcI0Gtwf4Aw11BsbMAwXLihnPEMu6ia','twfKzsa','mZe5mJCWnuH2tu9sDq','pvSIj10Ow14Ij10QkvSIj10','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','zMLSzxnnB2rPzMLLza','tufyx0rjrKzFteLorvm','zMLSzxnqCM9JzxnZzwq','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','mZe5nZy4nfbTB1neAa','Cgf0Aa','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','iebacG','lMjHAW','lI4U','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','zxHLyW','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','AxnbCNjHEq','DgLTzw91Da','CMvWBgfJzw1LBNrZtwfKzq','yMfJA3vWC0nYzwf0zwq','zxH0CMfJDef0DhjPyNv0zq','DhjPBq','BMv3BgLUzxm','D2fYBG','CgfYC2vmAw5LuMfUz2vZ','DxrMltG','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','C2L6zq','zMLSzxm','AxnqyxrOqwnJzxnZAwjSzq','BgvUz3rO','y3DK','ChvZAa','mZi1nJy0nwfJEufvtG','y291BNq','uMvWBgfJzw1LBNqGAw4G'];a0_0x2916=function(){return _0x4d0103;};return a0_0x2916();}import a0_0x3daa83 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x42a559(0x257),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x42a559(0x1f7)};class FileContentReplaceTool extends BaseTool{constructor(_0x58289e={},_0x4c7909=null){const _0x3d5e3e=a0_0x42a559;super(_0x58289e,_0x4c7909),this[_0x3d5e3e(0x21f)]=!![],this['isAsync']=!![],this[_0x3d5e3e(0x1f3)]=_0x58289e[_0x3d5e3e(0x1f3)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x58289e['replaceConfig']};}['getDescription'](){const _0xdc2cd=a0_0x42a559;return _0xdc2cd(0x249)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0xdc2cd(0x24d)+REPLACE_CONFIG[_0xdc2cd(0x245)]/0x400+_0xdc2cd(0x20e)+REPLACE_CONFIG[_0xdc2cd(0x209)]/0x400+_0xdc2cd(0x221)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0xdc2cd(0x20b)]+_0xdc2cd(0x1fc);}[a0_0x42a559(0x223)](_0x107306){const _0x3efbff=a0_0x42a559;try{if(_0x107306['trim']()['startsWith']('{'))return this['parseJSON'](_0x107306);return this['parseXML'](_0x107306);}catch(_0x23b5db){this[_0x3efbff(0x23b)]?.[_0x3efbff(0x219)](_0x3efbff(0x21d),{'error':_0x23b5db['message']});throw new Error(_0x3efbff(0x252)+_0x23b5db[_0x3efbff(0x224)]);}}[a0_0x42a559(0x243)](_0x366313){const _0x2241a7=a0_0x42a559,_0x2eae91=JSON[_0x2241a7(0x22e)](_0x366313);if(!_0x2eae91['files']||!Array[_0x2241a7(0x1f2)](_0x2eae91[_0x2241a7(0x1fe)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x2eae91[_0x2241a7(0x1fe)][_0x2241a7(0x20c)](_0x2ce8e9=>({'path':_0x2ce8e9['path'],'replacements':(_0x2ce8e9[_0x2241a7(0x248)]||[])[_0x2241a7(0x20c)](_0x194dd1=>({'oldContent':_0x194dd1['oldContent'],'newContent':_0x194dd1['newContent'],'mode':_0x194dd1[_0x2241a7(0x22b)]||REPLACE_CONFIG[_0x2241a7(0x233)],'linesLimit':_0x194dd1[_0x2241a7(0x23c)]||null}))}))};}['parseXML'](_0x2c1af4){const _0x4b95b3=a0_0x42a559,_0x19d777=[],_0x577707=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x2cfa4e;while((_0x2cfa4e=_0x577707['exec'](_0x2c1af4))!==null){const _0x885154=_0x2cfa4e[0x1],_0xe173dd=_0x2cfa4e[0x2],_0x13e5ff=[],_0x118440=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1f8adf;while((_0x1f8adf=_0x118440['exec'](_0xe173dd))!==null){const _0x3a8e85=_0x1f8adf[0x1]||'',_0x5ea44d=_0x1f8adf[0x2],_0xdef6d2=this['extractAttribute'](_0x3a8e85,'mode')||REPLACE_CONFIG[_0x4b95b3(0x233)],_0x387a17=this['extractAttribute'](_0x3a8e85,_0x4b95b3(0x244)),_0x15b8fa=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x5ea44d);if(!_0x15b8fa){this[_0x4b95b3(0x23b)]?.['warn'](_0x4b95b3(0x232));continue;}const _0x1d779e=_0x15b8fa[0x1],_0x5e70b5=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x5ea44d);if(!_0x5e70b5){this['logger']?.['warn'](_0x4b95b3(0x22a));continue;}const _0x563e27=_0x5e70b5[0x1],_0x2a20a5=this['applyTrimMode'](_0x1d779e,_0xdef6d2),_0x3ae6d8=this[_0x4b95b3(0x240)](_0x563e27,_0xdef6d2);_0x13e5ff['push']({'oldContent':_0x2a20a5,'newContent':_0x3ae6d8,'mode':_0xdef6d2,'linesLimit':_0x387a17});}_0x13e5ff['length']>0x0&&_0x19d777[_0x4b95b3(0x202)]({'path':_0x885154,'replacements':_0x13e5ff});}return{'files':_0x19d777};}[a0_0x42a559(0x1f6)](_0x48b982,_0x4828a2){const _0x35fb72=a0_0x42a559,_0x2b1ce7=new RegExp(_0x4828a2+_0x35fb72(0x24c),'i'),_0x4a9708=_0x2b1ce7[_0x35fb72(0x1f0)](_0x48b982);return _0x4a9708?_0x4a9708[0x1]:null;}[a0_0x42a559(0x240)](_0x57aefa,_0x50a944){const _0x3961b7=a0_0x42a559;switch(_0x50a944){case _0x3961b7(0x1f8):return _0x57aefa['replace'](/^\n+|\n+$/g,'');case'none':return _0x57aefa;case _0x3961b7(0x1f7):default:return _0x57aefa[_0x3961b7(0x1f7)]();}}['getRequiredParameters'](){return['files'];}['customValidateParameters'](_0x40ba6e){const _0x2615d4=a0_0x42a559,_0x1290b7=[];if(!_0x40ba6e['files']||!Array['isArray'](_0x40ba6e[_0x2615d4(0x1fe)]))_0x1290b7['push'](_0x2615d4(0x251));else{_0x40ba6e[_0x2615d4(0x1fe)][_0x2615d4(0x200)]===0x0&&_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x1ef));_0x40ba6e[_0x2615d4(0x1fe)]['length']>this['replaceConfig'][_0x2615d4(0x20b)]&&_0x1290b7['push']('Cannot\x20process\x20more\x20than\x20'+this[_0x2615d4(0x229)]['MAX_FILES_PER_OPERATION']+_0x2615d4(0x235));for(const _0x234731 of _0x40ba6e['files']){!_0x234731[_0x2615d4(0x254)]&&_0x1290b7['push'](_0x2615d4(0x247));_0x234731['path']&&_0x234731['path']['includes']('..')&&_0x1290b7['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x234731['path']);if(!_0x234731['replacements']||!Array[_0x2615d4(0x1f2)](_0x234731[_0x2615d4(0x248)]))_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x23f)+_0x234731[_0x2615d4(0x254)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x234731['replacements']['length']===0x0)_0x1290b7['push']('File\x20'+_0x234731[_0x2615d4(0x254)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5d0a05 of _0x234731['replacements']){!_0x5d0a05['oldContent']&&_0x5d0a05['oldContent']!==''&&_0x1290b7[_0x2615d4(0x202)]('Replacement\x20in\x20'+_0x234731[_0x2615d4(0x254)]+'\x20missing\x20oldContent'),!_0x5d0a05['newContent']&&_0x5d0a05['newContent']!==''&&_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x205)+_0x234731['path']+_0x2615d4(0x230)),_0x5d0a05['oldContent']&&_0x5d0a05['oldContent'][_0x2615d4(0x200)]>this[_0x2615d4(0x229)][_0x2615d4(0x245)]&&_0x1290b7['push']('oldContent\x20too\x20large\x20(max\x20'+this[_0x2615d4(0x229)][_0x2615d4(0x245)]/0x400+_0x2615d4(0x228)),_0x5d0a05[_0x2615d4(0x21a)]&&_0x5d0a05[_0x2615d4(0x21a)][_0x2615d4(0x200)]>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x1290b7['push'](_0x2615d4(0x238)+this[_0x2615d4(0x229)]['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x5d0a05['mode']&&!['trim',_0x2615d4(0x1f8),_0x2615d4(0x225)][_0x2615d4(0x210)](_0x5d0a05['mode'])&&_0x1290b7['push']('Invalid\x20mode:\x20'+_0x5d0a05[_0x2615d4(0x22b)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x1290b7[_0x2615d4(0x200)]>0x0)throw new Error(_0x2615d4(0x1f1)+_0x1290b7['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x40d0f3,_0x5e5e60){const _0x350964=a0_0x42a559,{files:_0x5e1033}=_0x40d0f3,{projectDir:_0x1890cf,agentId:_0x11ecf3,directoryAccess:_0x583b56}=_0x5e5e60;let _0x5ad28b=_0x1890cf||process[_0x350964(0x201)]();_0x583b56&&_0x583b56['workingDirectory']&&(_0x5ad28b=_0x583b56['workingDirectory'],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x583b56['workingDirectory'],'agentId':_0x11ecf3}));this['logger']?.[_0x350964(0x246)](_0x350964(0x211),{'fileCount':_0x5e1033['length'],'workingDirectory':_0x5ad28b,'agentId':_0x11ecf3});const _0x783f86=[],_0x4db4e4={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x3610aa of _0x5e1033){try{const _0x454252=await this[_0x350964(0x23d)](_0x3610aa,_0x5ad28b,_0x583b56);_0x783f86[_0x350964(0x202)](_0x454252),_0x4db4e4[_0x350964(0x250)]++,_0x454252[_0x350964(0x1f4)]>0x0&&(_0x4db4e4[_0x350964(0x24e)]++,_0x4db4e4['totalReplacements']+=_0x454252['replacementsMade']),_0x454252[_0x350964(0x23a)]&&_0x4db4e4['backupsCreated']++;}catch(_0x42e6c8){this[_0x350964(0x23b)]?.[_0x350964(0x219)]('Error\x20processing\x20file\x20'+_0x3610aa['path'],{'error':_0x42e6c8[_0x350964(0x224)]}),_0x783f86['push']({'filePath':_0x3610aa['path'],'success':![],'error':_0x42e6c8['message']}),_0x4db4e4['errors']++;}}return{'success':_0x4db4e4['errors']===0x0,'results':_0x783f86,'statistics':_0x4db4e4,'summary':this['generateSummary'](_0x4db4e4),'toolUsed':_0x350964(0x227)};}async['processFile'](_0x51b06b,_0x20f137,_0x6dd222){const _0x311683=a0_0x42a559,{path:_0x5963bc,replacements:_0x4474be}=_0x51b06b,_0x162959=a0_0x3daa83['isAbsolute'](_0x5963bc)?_0x5963bc:a0_0x3daa83['resolve'](_0x20f137,_0x5963bc);if(_0x6dd222){const _0x8e491e=this[_0x311683(0x1ff)](_0x162959,_0x20f137,_0x6dd222);if(!_0x8e491e)throw new Error('Path\x20not\x20accessible:\x20'+_0x5963bc);}try{await a0_0x128a6c['access'](_0x162959);}catch(_0x2dfd7b){throw new Error('File\x20not\x20found:\x20'+_0x5963bc);}const _0xb5e663=await a0_0x128a6c[_0x311683(0x216)](_0x162959);if(_0xb5e663[_0x311683(0x1fd)]>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error(_0x311683(0x222)+this['replaceConfig'][_0x311683(0x212)]/(0x400*0x400)+_0x311683(0x208)+_0x5963bc);let _0x428b61=await a0_0x128a6c[_0x311683(0x21b)](_0x162959,'utf-8');const _0x1cf3ec=_0x428b61;let _0x517591=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0x2237af=_0x162959+this['replaceConfig'][_0x311683(0x213)];try{await a0_0x128a6c['writeFile'](_0x2237af,_0x1cf3ec,_0x311683(0x1fb)),_0x517591=!![];}catch(_0x5b0663){this['logger']?.[_0x311683(0x1f9)](_0x311683(0x23e)+_0x5b0663['message']);}}let _0x282580=0x0;const _0x5601ad=[];for(const _0x3091c8 of _0x4474be){const _0x3d676f=await this[_0x311683(0x21c)](_0x428b61,_0x3091c8[_0x311683(0x20f)],_0x3091c8[_0x311683(0x21a)],_0x3091c8[_0x311683(0x23c)],_0x3091c8['mode']);_0x428b61=_0x3d676f['newContent'],_0x282580+=_0x3d676f[_0x311683(0x204)],_0x5601ad['push']({'oldContent':_0x3091c8[_0x311683(0x20f)]['substring'](0x0,0x32)+(_0x3091c8['oldContent'][_0x311683(0x200)]>0x32?_0x311683(0x1ee):''),'newContent':_0x3091c8[_0x311683(0x21a)]['substring'](0x0,0x32)+(_0x3091c8['newContent']['length']>0x32?'...':''),'count':_0x3d676f['count'],'mode':_0x3091c8[_0x311683(0x22b)],'linesLimit':_0x3091c8['linesLimit']});}_0x282580>0x0&&await a0_0x128a6c['writeFile'](_0x162959,_0x428b61,_0x311683(0x1fb));const _0x2c56ab=_0x282580>0x0?this['generateDiff'](_0x1cf3ec,_0x428b61):null;return{'filePath':_0x5963bc,'resolvedPath':_0x162959,'success':!![],'replacementsMade':_0x282580,'backupCreated':_0x517591,'replacementDetails':_0x5601ad,'diff':_0x2c56ab,'message':_0x282580>0x0?_0x311683(0x24a)+_0x282580+'\x20replacement(s)\x20in\x20'+_0x5963bc:_0x311683(0x237)+_0x5963bc+'\x20(content\x20not\x20found)'};}[a0_0x42a559(0x1ff)](_0x89ca33,_0x412f69,_0x439599){const _0xfeaadc=a0_0x42a559,_0x50beb9=a0_0x3daa83['relative'](_0x412f69,_0x89ca33);if(!_0x50beb9['startsWith']('..')&&!a0_0x3daa83[_0xfeaadc(0x206)](_0x50beb9))return!![];if(_0x439599[_0xfeaadc(0x239)])for(const _0x3b23a9 of _0x439599[_0xfeaadc(0x239)]){const _0x2672c0=a0_0x3daa83[_0xfeaadc(0x234)](_0x3b23a9,_0x89ca33);if(!_0x2672c0['startsWith']('..')&&!a0_0x3daa83['isAbsolute'](_0x2672c0))return!![];}return![];}async[a0_0x42a559(0x21c)](_0x37667a,_0x4f3b01,_0x66ac60,_0x30696b,_0x388f85){const _0x2de4a9=a0_0x42a559;if(!_0x30696b){const _0x8c47e7=this[_0x2de4a9(0x241)](_0x37667a,_0x4f3b01);if(_0x8c47e7===0x0)return{'newContent':_0x37667a,'count':0x0};const _0x3a5011=_0x37667a['split'](_0x4f3b01)['join'](_0x66ac60);return{'newContent':_0x3a5011,'count':_0x8c47e7};}const _0x348ff3=this['parseLineRanges'](_0x30696b),_0x3aa6c4=_0x37667a[_0x2de4a9(0x226)]('\x0a');let _0x8aa3eb=0x0;for(let _0xba4f65=0x0;_0xba4f65<_0x3aa6c4['length'];_0xba4f65++){const _0x1ffa49=_0xba4f65+0x1;if(_0x348ff3[_0x2de4a9(0x21e)](_0x1ffa49)){if(_0x3aa6c4[_0xba4f65]['includes'](_0x4f3b01)){const _0x5b0711=this['countOccurrences'](_0x3aa6c4[_0xba4f65],_0x4f3b01);_0x3aa6c4[_0xba4f65]=_0x3aa6c4[_0xba4f65][_0x2de4a9(0x226)](_0x4f3b01)[_0x2de4a9(0x231)](_0x66ac60),_0x8aa3eb+=_0x5b0711;}}}return{'newContent':_0x3aa6c4['join']('\x0a'),'count':_0x8aa3eb};}[a0_0x42a559(0x241)](_0x3b22b8,_0x1edb52){if(!_0x1edb52)return 0x0;return _0x3b22b8['split'](_0x1edb52)['length']-0x1;}[a0_0x42a559(0x1fa)](_0x5f4652){const _0x6a5b27=a0_0x42a559,_0x2e3d7a=new Set();if(!_0x5f4652||_0x5f4652[_0x6a5b27(0x1f7)]()==='')return _0x2e3d7a;const _0xd664e4=_0x5f4652[_0x6a5b27(0x226)](',');for(const _0x189b20 of _0xd664e4){const _0x1e1611=_0x189b20['trim']();if(_0x1e1611==='')continue;if(_0x1e1611['includes']('-')){const [_0x14db95,_0x5cdce]=_0x1e1611['split']('-')[_0x6a5b27(0x20c)](_0xfe20a1=>parseInt(_0xfe20a1['trim'](),0xa));if(!isNaN(_0x14db95)&&!isNaN(_0x5cdce)&&_0x5cdce-_0x14db95<this['replaceConfig']['MAX_LINE_RANGE_SIZE'])for(let _0x3ebc14=_0x14db95;_0x3ebc14<=_0x5cdce;_0x3ebc14++){_0x2e3d7a['add'](_0x3ebc14);}}else{const _0x46a17a=parseInt(_0x1e1611,0xa);!isNaN(_0x46a17a)&&_0x2e3d7a['add'](_0x46a17a);}}return _0x2e3d7a;}[a0_0x42a559(0x220)](_0x38fa50,_0x1bb33e){const _0x5301fd=a0_0x42a559,_0x4fd783=_0x38fa50['split']('\x0a'),_0x5474a9=_0x1bb33e['split']('\x0a');let _0x1ad9c3=-0x1,_0x105908=-0x1;const _0x3e6d38=Math[_0x5301fd(0x207)](_0x4fd783[_0x5301fd(0x200)],_0x5474a9['length']);for(let _0x40481d=0x0;_0x40481d<_0x3e6d38;_0x40481d++){const _0x3be8e1=_0x40481d<_0x4fd783['length']?_0x4fd783[_0x40481d]:'',_0x4c308d=_0x40481d<_0x5474a9[_0x5301fd(0x200)]?_0x5474a9[_0x40481d]:'';if(_0x3be8e1!==_0x4c308d){if(_0x1ad9c3===-0x1)_0x1ad9c3=_0x40481d;_0x105908=_0x40481d;}}if(_0x1ad9c3===-0x1)return'No\x20differences';const _0x1d426d=this[_0x5301fd(0x229)]['DIFF_CONTEXT_LINES'],_0x2f3731=Math[_0x5301fd(0x207)](0x0,_0x1ad9c3-_0x1d426d),_0x29c886=Math[_0x5301fd(0x242)](_0x3e6d38-0x1,_0x105908+_0x1d426d);if(_0x29c886-_0x2f3731>this['replaceConfig'][_0x5301fd(0x24f)])return'Diff\x20too\x20large\x20('+(_0x29c886-_0x2f3731+0x1)+_0x5301fd(0x22f)+('Changed\x20lines:\x20'+(_0x1ad9c3+0x1)+'\x20to\x20'+(_0x105908+0x1));let _0x4449e4='@@\x20-'+(_0x2f3731+0x1)+','+(_0x29c886-_0x2f3731+0x1)+'\x20+'+(_0x2f3731+0x1)+','+(_0x29c886-_0x2f3731+0x1)+_0x5301fd(0x256);for(let _0x139a79=_0x2f3731;_0x139a79<=_0x29c886;_0x139a79++){const _0xbc1377=_0x139a79<_0x4fd783[_0x5301fd(0x200)]?_0x4fd783[_0x139a79]:'',_0x33b2e5=_0x139a79<_0x5474a9[_0x5301fd(0x200)]?_0x5474a9[_0x139a79]:'';_0xbc1377===_0x33b2e5?_0x4449e4+='\x20\x20'+_0xbc1377+'\x0a':(_0x4449e4+='-\x20'+_0xbc1377+'\x0a',_0x4449e4+='+\x20'+_0x33b2e5+'\x0a');}return _0x4449e4;}['generateSummary'](_0x36823e){const _0x1ef783=a0_0x42a559;return(_0x1ef783(0x22d)+_0x36823e['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x36823e[_0x1ef783(0x24e)]+_0x1ef783(0x255)+_0x36823e['totalReplacements']+_0x1ef783(0x236)+_0x36823e[_0x1ef783(0x1f5)]+_0x1ef783(0x20d)+_0x36823e[_0x1ef783(0x218)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0xec2a6a){const _0x531f2d=a0_0x42a559;this['logger']?.[_0x531f2d(0x246)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0xec2a6a});}}function a0_0x5132(_0x27b831,_0x3b61f2){_0x27b831=_0x27b831-0x1ee;const _0x2916f5=a0_0x2916();let _0x5132bd=_0x2916f5[_0x27b831];if(a0_0x5132['JGzLoM']===undefined){var _0x51d124=function(_0x41f392){const _0x1bcee0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x128a6c='',_0x3daa83='';for(let _0x58289e=0x0,_0x4c7909,_0x107306,_0x23b5db=0x0;_0x107306=_0x41f392['charAt'](_0x23b5db++);~_0x107306&&(_0x4c7909=_0x58289e%0x4?_0x4c7909*0x40+_0x107306:_0x107306,_0x58289e++%0x4)?_0x128a6c+=String['fromCharCode'](0xff&_0x4c7909>>(-0x2*_0x58289e&0x6)):0x0){_0x107306=_0x1bcee0['indexOf'](_0x107306);}for(let _0x366313=0x0,_0x2eae91=_0x128a6c['length'];_0x366313<_0x2eae91;_0x366313++){_0x3daa83+='%'+('00'+_0x128a6c['charCodeAt'](_0x366313)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3daa83);};a0_0x5132['GYvKPq']=_0x51d124,a0_0x5132['swgoeg']={},a0_0x5132['JGzLoM']=!![];}const _0x3a9148=_0x2916f5[0x0],_0x121b04=_0x27b831+_0x3a9148,_0x2750a7=a0_0x5132['swgoeg'][_0x121b04];return!_0x2750a7?(_0x5132bd=a0_0x5132['GYvKPq'](_0x5132bd),a0_0x5132['swgoeg'][_0x121b04]=_0x5132bd):_0x5132bd=_0x2750a7,_0x5132bd;}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0xde1dc1=a0_0x44f0;(function(_0x13f930,_0x25a8b7){const _0x32d6f8=a0_0x44f0,_0x532a45=_0x13f930();while(!![]){try{const _0x44e6da=parseInt(_0x32d6f8(0x20d))/0x1+parseInt(_0x32d6f8(0x21b))/0x2+parseInt(_0x32d6f8(0x1fb))/0x3+parseInt(_0x32d6f8(0x1c0))/0x4*(-parseInt(_0x32d6f8(0x206))/0x5)+-parseInt(_0x32d6f8(0x230))/0x6+-parseInt(_0x32d6f8(0x200))/0x7*(-parseInt(_0x32d6f8(0x1ed))/0x8)+-parseInt(_0x32d6f8(0x23f))/0x9*(parseInt(_0x32d6f8(0x23b))/0xa);if(_0x44e6da===_0x25a8b7)break;else _0x532a45['push'](_0x532a45['shift']());}catch(_0x5a19dc){_0x532a45['push'](_0x532a45['shift']());}}}(a0_0x57f3,0x79574));import{BaseTool}from'./baseTool.js';import a0_0x1322e1 from'../utilities/tagParser.js';import a0_0x55f9ed from'../utilities/directoryAccessManager.js';import a0_0x1890e5 from'fs/promises';import a0_0x39d076 from'path';function a0_0x44f0(_0x4b2f6b,_0x55bbef){_0x4b2f6b=_0x4b2f6b-0x1b0;const _0x57f30b=a0_0x57f3();let _0x44f0cb=_0x57f30b[_0x4b2f6b];if(a0_0x44f0['mtvRDM']===undefined){var _0x1adb49=function(_0x443d2f){const _0x263b7d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1322e1='',_0x55f9ed='';for(let _0x1890e5=0x0,_0x39d076,_0x542aea,_0x1e95e8=0x0;_0x542aea=_0x443d2f['charAt'](_0x1e95e8++);~_0x542aea&&(_0x39d076=_0x1890e5%0x4?_0x39d076*0x40+_0x542aea:_0x542aea,_0x1890e5++%0x4)?_0x1322e1+=String['fromCharCode'](0xff&_0x39d076>>(-0x2*_0x1890e5&0x6)):0x0){_0x542aea=_0x263b7d['indexOf'](_0x542aea);}for(let _0x1d4ffd=0x0,_0x3eded9=_0x1322e1['length'];_0x1d4ffd<_0x3eded9;_0x1d4ffd++){_0x55f9ed+='%'+('00'+_0x1322e1['charCodeAt'](_0x1d4ffd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55f9ed);};a0_0x44f0['WbaPtL']=_0x1adb49,a0_0x44f0['FgZwcQ']={},a0_0x44f0['mtvRDM']=!![];}const _0x6239cf=_0x57f30b[0x0],_0x1eb5aa=_0x4b2f6b+_0x6239cf,_0xc8be45=a0_0x44f0['FgZwcQ'][_0x1eb5aa];return!_0xc8be45?(_0x44f0cb=a0_0x44f0['WbaPtL'](_0x44f0cb),a0_0x44f0['FgZwcQ'][_0x1eb5aa]=_0x44f0cb):_0x44f0cb=_0xc8be45,_0x44f0cb;}import a0_0x542aea from'crypto';function a0_0x57f3(){const _0xe799d5=['ywDLBNrjza','zgvIDwC','Bw92zq','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','C291CMnLugf0Aa','igj5DgvZigzYB20G','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','CMvHza','ywXSB3DLzev4DgvUC2LVBNm','BM9YBwfSAxPL','ywn0Aw9UCW','yNL0zuXLBMD0Aa','rMfPBgvKihrVignVChKG','nZq5nLvdzezhvW','B3v0Chv0lxbHDgG','y3jLyxrLlwrPCNm','qwn0Aw9Uia','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','Cgf0Aa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','CMf3q29UDgvUDa','zMLSzvbHDgG','CgfYC2vbDhrYAwj1DgvZ','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','igL0zw1ZigLUia','ru5pru5u','mtu4nte2n3jvA25uqW','y3jLyxrLuMvSyxrPDMvqyxrO','yMLYDgH0Aw1L','y2HLy2TfEgLZDhm','AxntEw1IB2XPy0XPBMS','ntu3mNfqBej3Aa','BM93','lMrLBgv0zwqTyMfJA3vWlq','uMvHzcbHy2nLC3mGzgvUAwvKoIa','CgfYC2vqyxjHBwv0zxjZ','C3rHDa','mJeWmJvMyNrNqKm','ywXSB3DLza','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcKnssvrjq0fmoIbcB3rOifHntcbHBMqGsLnptIbMB3jTyxrZigfYzsbMDwXSEsbZDxbWB3j0zwqUifDOzw4GDxnPBMCGwe1migzVCM1HDcWGy29TBwfUzhmGyxjLigf1Dg9TyxrPy2fSBhKGy29UDMvYDgvKihrVihrOzsbHChbYB3bYAwf0zsbZDhj1y3r1CMuGAw50zxjUywXSEsaTihLVDsbKB24NDcbUzwvKihrVig1HBNvHBgX5ihDYyxaGDgHLBsbPBIbHBIbHy3rPB25ZigfYCMf5lGOkvvnbr0uGlsbuv08GrK9stufuuYbtvvbqt1juruq6cGPgt1jnqvqGmsaTifHntcbtvfLmrsaOuMvJB21Tzw5KzwqPoGPBDg9VBcbPzd0IzMLSzxn5C3rLBsjDcJXYzwfKigzPBguTCgf0Ad0IC3jJl2LUzgv4lMPZiIaVpGO8D3jPDguGB3v0Chv0lxbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cMnVBNn0iej1DhrVBIa9icGPid0+ihSkicbYzxr1CM4Gpgj1DhrVBJ5dBgLJAYbTztWVyNv0Dg9UpJSkFtSkzxHWB3j0igrLzMf1BhqGqNv0Dg9UoWO8l3DYAxrLpGPBl3rVB2XDcGPgt1jnqvqGmIaTiePtt04Gu1rzteu6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiSiaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWGcIaGicaGicjVDxrWDxrqyxrOiJOGiNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYiScIaGicaGicjJB250zw50iJOGiMnVBNn0iej1DhrVBIa9icGPid0+ihSGCMv0DxjUidXIDxr0B24+q2XPy2SGBwu8l2j1DhrVBJ47ih07iGOGicaGFqOGif0kFqPGygakcKLnue9svefovdOGcI0GvxnLigvPDgHLCIbMB3jTyxqGy29UC2LZDgvUDgX5lIbeBYbot1qGBwL4igzVCM1HDhmGAw4GysbZAw5NBguGy29TBwfUzc4klsbytuWGzM9YBwf0igLZihjLy29TBwvUzgvKigzVCIbZAw5NBguGB3bLCMf0Aw9UCYbHBMqGyMv0DgvYihjLywrHyMLSAxr5cI0GsLnptIbMB3jTyxqGAxmGCMvJB21Tzw5KzwqGzM9YignVBxbSzxGGBxvSDgKTywn0Aw9Uig9WzxjHDgLVBNmklsbcB3rOigzVCM1HDhmGD29YAYbLCxvHBgX5ihDLBgWGyw5KihbYB2r1y2uGDgHLihnHBwuGCMvZDwX0CWOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZcI0GD3jPDgu6ifDYAxrLignVBNrLBNqGDg8GzMLSzqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzqOTigrLBgv0ztOGrgvSzxrLigeGzMLSzqOTignVChK6ienVChKGzMLSzsbMCM9TihnVDxjJzsb0BYbKzxn0Aw5HDgLVBGOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguklsbJCMvHDguTzgLYoIbdCMvHDguGzgLYzwn0B3j5cI0GBgLZDdOGtgLZDcbKAxjLy3rVCNKGy29UDgvUDhmklsbLEgLZDhm6ienOzwnRigLMigzPBguVzgLYzwn0B3j5igv4Axn0CWOTihn0yxrZoIbhzxqGzMLSzs9KAxjLy3rVCNKGBwv0ywrHDgekcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8GCMvHzaOTig91Dhb1Dc1WyxrOoIbqyxrOihDOzxjLihrVihDYAxrLl2nYzwf0zsbMAwXLcI0GC291CMnLlxbHDgG6ifnVDxjJzsbWyxrOigzVCIbJB3b5l21VDMuGB3bLCMf0Aw9UCWOTigrLC3qTCgf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbKAxjLy3rVCNKGB3bLCMf0Aw9UCWOTignVBNrLBNq6ienVBNrLBNqGDg8GD3jPDguVyxbWzw5KcI0Gzw5JB2rPBMC6iezPBguGzw5JB2rPBMCGkgrLzMf1Bhq6ihv0zJGPcI0Gy3jLyxrLlwrPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOku0LnueXfiezjteuGq1jfqvrjt04GkfHntcbMB3jTyxqGlsbYzwnVBw1LBMrLzcK6cLT0B29SigLKpsjMAwXLC3LZDgvTiL0kphDYAxrLig91Dhb1Dc1WyxrOpsjOzwXSBY5JiJ4ki2LUy2X1zguGphn0zgLVlMG+cGPPBNqGBwfPBIGPihSkicaGihbYAw50zIGIsgvSBg8SifDVCMXKivXUiIK7cIaGicbYzxr1CM4GmdSkFqO8l3DYAxrLpGPBl3rVB2XDcGPsrufesu5hiezjtevticHytuWGzM9YBwf0ktOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8CMvHzcbMAwXLlxbHDgG9iNbHy2THz2uUANnVBIiGlZ4kwY90B29SxqOktvvmveLqteuGt1bfuKfusu9ouYaOsLnptIbMB3jTyxqGCMvJB21Tzw5KzwqPoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWkicaGicaGiM91Dhb1DfbHDgGIoIaIC3jJl2jHy2T1Cc5QCYiScIaGicaGicjJB250zw50iJOGiI8ViejHy2T1CcbMAwXLxg5JB25ZB2XLlMXVzYGNyMfJA3vWjYK7iGOGicaGFqOGif0kFqPGygakcK9usevsifHntcbfwefnueXfuZOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8y29WEsbZB3vYy2uTCgf0Ad0IDgvTCgXHDguUANmIigrLC3qTCgf0Ad0IC3jJl2nVBxbVBMvUDc5QCYiGlZ4kpgnYzwf0zs1KAxiGzgLYzwn0B3j5psjZCMmVy29TCg9Uzw50CY91AsiGlZ4kpgXPC3qGzgLYzwn0B3j5psjZCMmIic8+cLSVDg9VBf0kcLnfq1vssvrzoGOTie9WzxjHDgLVBNmGCMvZDhjPy3rLzcb0BYbWCM9Qzwn0igrPCMvJDg9YEqOTiezPBguGC2L6zsbSAw1PDhmGzw5MB3jJzwqGkg1HEca','D3jPDgu','zgvSzxrLrMLSzq','Aw5JBhvKzxm','B3bLCMf0Aw9UsgLZDg9YEq','nJy0oty5sNfizhfZ','CMvHzgrPCG','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','Dg9mB3DLCKnHC2u','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','uMv0CMLLDMvKihn0yxrZigzVCIa','y29Kzq','CMvHC29U','zMLSzs1WyxrO','Bwf4rMLSzvnPEMu','zMLSzq','v3jPDguGywnJzxnZigrLBMLLzdOG','DgLTzw91Da','zgvZDc1WyxrO','ote0nda2C3L5BKjZ','yxbWzw5K','BgvUz3rO','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','CMvXDwLYzxnqCM9Qzwn0','AxnbC3LUyW','D29YA2LUz0rPCMvJDg9YEq','z2v0v29YA2LUz0rPCMvJDg9YEq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','q29WAwvKia','D3jPDgvgAwXL','ywXSB3DLzerPCMvJDg9YAwvZ','B3v0Chv0ugf0Aa','y3jLyxrLrgLYCW','DhjPBq','Bwf0y2HbBgW','BwvZC2fNzq','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','zgvSzxrL','ChvZAa','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','nteZnJiWnfDVv2vRzq','BwTKAxi','DMfSAwrHDgvxCML0zufJy2vZCW','igj5DgvZihrVia','DhLWzq','Dhj1zq','y3DK','C3rHDhm','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','zgvZDfbHDgG','y3jLyxrLrgLYzwn0B3j5','oteWy2zvExfx','zMLSDgvY','qxbWzw5KzwqG','ywnJzxnZ','nZyXntHdvMXcseG','zgLYzwn0B3j5','oIb0ExbLigLZihjLCxvPCMvK','lMv4zq','y29WEq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','uMvHzca','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','Bg9N','Dg9ju09tDhjPBMC','CMvHzezPBgu','CMvZB2X2zvbHDgG','BwfW','C291CMnLlxbHDgG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','z2v0rMLSzvn0yxrZ','BMfTzq','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','CMvUyw1L','y3jLyxrLlwrPCG','AxneAxjLy3rVCNK','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','tw92zwqG','yxbWzw5Kvg9gAwXL','q29UDgvUDcb0B28GBgfYz2u6ia','rMfPBgvKihrVihDYAxrLigzPBguG','ywrKvg9iAxn0B3j5','mJyWB2j4qxDZ','y29UDgvUDa','igrVzxmGBM90igv4Axn0','C2XPy2u','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','yMXVy2TLzev4DgvUC2LVBNm','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','DMfSAwrHDgvqyxrOqwnJzxnZ','lNnJCG','rMfPBgvKihrVihjLywqGzMLSzsa','C3rYAw5NAwz5','igj5DgvZicHTyxGG','AxnbCNjHEq','zxHPC3rZ','C2L6zq','icHIywnRDxaGy3jLyxrLzcK','BgLZDa','ihrVia','z2v0ugfYyw1LDgvYu2nOzw1H','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zxH0BMfTzq','Bg9Nz2vY','C3rYAw5N','zw5JB2rPBMC','DMfSAwrHDgvszwfKqwnJzxnZ','DxrMoa','y29WEuzPBgu','Bw92zuzPBgu'];a0_0x57f3=function(){return _0xe799d5;};return a0_0x57f3();}import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x1e95e8={},_0x1d4ffd=null){const _0x2b2a67=a0_0x44f0;super(_0x1e95e8,_0x1d4ffd),this[_0x2b2a67(0x21f)]=!![],this[_0x2b2a67(0x220)]=![],this['timeout']=_0x1e95e8[_0x2b2a67(0x219)]||0x7530,this[_0x2b2a67(0x211)]=_0x1e95e8['maxConcurrentOperations']||0x5,this[_0x2b2a67(0x216)]=_0x1e95e8['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x1e95e8[_0x2b2a67(0x1e8)]||null,this[_0x2b2a67(0x1c5)]=_0x1e95e8[_0x2b2a67(0x1c5)]||[_0x2b2a67(0x242),'.bat','.cmd',_0x2b2a67(0x1c8),'.com'],this['allowedDirectories']=_0x1e95e8[_0x2b2a67(0x226)]||null,this['operationHistory']=[],this[_0x2b2a67(0x1f3)]=new a0_0x55f9ed(_0x1e95e8,_0x1d4ffd);}['getDescription'](){const _0x478623=a0_0x44f0;return _0x478623(0x208)+Math['round'](this[_0x478623(0x216)]/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}[a0_0xde1dc1(0x204)](_0x3eded9){const _0x38ada2=a0_0xde1dc1;try{const _0x191aca={},_0x1dd3d1=[];this[_0x38ada2(0x1d6)]?.[_0x38ada2(0x1de)](_0x38ada2(0x244),{'contentLength':_0x3eded9[_0x38ada2(0x21d)],'contentPreview':_0x3eded9['substring'](0x0,0xc8)});const _0x254e2c=[_0x38ada2(0x1e7),'delete',_0x38ada2(0x243),'move',_0x38ada2(0x1b8),_0x38ada2(0x1d0),'exists',_0x38ada2(0x237),'append'];for(const _0x3a9398 of _0x254e2c){const _0x36527f=a0_0x1322e1['extractTagsWithAttributes'](_0x3eded9,_0x3a9398);for(const _0x40b11d of _0x36527f){const _0x53629d={'type':_0x3a9398,..._0x40b11d['attributes']};_0x53629d['file-path']&&(_0x53629d['filePath']=_0x53629d[_0x38ada2(0x215)],delete _0x53629d[_0x38ada2(0x215)]),_0x53629d['output-path']&&(_0x53629d['outputPath']=_0x53629d[_0x38ada2(0x1ee)],delete _0x53629d[_0x38ada2(0x1ee)]),_0x53629d[_0x38ada2(0x1b2)]&&(_0x53629d['sourcePath']=_0x53629d[_0x38ada2(0x1b2)],delete _0x53629d['source-path']),_0x53629d[_0x38ada2(0x21a)]&&(_0x53629d['destPath']=_0x53629d['dest-path'],delete _0x53629d['dest-path']),_0x53629d['create-dirs']&&(_0x53629d[_0x38ada2(0x228)]=_0x53629d['create-dirs']===_0x38ada2(0x235),delete _0x53629d['create-dirs']),_0x1dd3d1[_0x38ada2(0x22e)](_0x53629d);}}const _0x4985b7=_0x3eded9['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x5e77f6 of _0x4985b7){const _0x478cf4=new a0_0x1322e1(),_0x44b086=_0x478cf4['parseAttributes'](_0x5e77f6[0x1]),_0x2a2181=_0x5e77f6[0x2]['trim'](),_0x763033={'type':_0x38ada2(0x209),'content':_0x2a2181,..._0x44b086};_0x763033['output-path']&&(_0x763033['outputPath']=_0x763033[_0x38ada2(0x1ee)],delete _0x763033[_0x38ada2(0x1ee)]),_0x763033[_0x38ada2(0x1ef)]&&(_0x763033['createDirs']=_0x763033['create-dirs']===_0x38ada2(0x235),delete _0x763033[_0x38ada2(0x1ef)]),_0x1dd3d1[_0x38ada2(0x22e)](_0x763033);}const _0x188a67=_0x3eded9[_0x38ada2(0x22a)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x43c245 of _0x188a67){const _0x4d4421=new a0_0x1322e1(),_0x5c4a1b=_0x4d4421[_0x38ada2(0x1f7)](_0x43c245[0x1]),_0x360098=_0x43c245[0x2][_0x38ada2(0x229)](),_0x48aa7b={'type':_0x38ada2(0x21c),'content':_0x360098,..._0x5c4a1b};_0x48aa7b['file-path']&&(_0x48aa7b['filePath']=_0x48aa7b['file-path'],delete _0x48aa7b['file-path']),_0x1dd3d1[_0x38ada2(0x22e)](_0x48aa7b);}return _0x191aca[_0x38ada2(0x1ea)]=_0x1dd3d1,_0x191aca[_0x38ada2(0x1f5)]=_0x3eded9['trim'](),this['logger']?.['debug'](_0x38ada2(0x245),{'totalActions':_0x1dd3d1['length'],'actionTypes':_0x1dd3d1[_0x38ada2(0x1b1)](_0x258f59=>_0x258f59[_0x38ada2(0x234)]),'actions':_0x1dd3d1['map'](_0x6b0042=>({'type':_0x6b0042[_0x38ada2(0x234)],'filePath':_0x6b0042['filePath'],'outputPath':_0x6b0042[_0x38ada2(0x227)],'hasContent':!!_0x6b0042['content']}))}),_0x191aca;}catch(_0x477be2){throw new Error(_0x38ada2(0x1ba)+_0x477be2['message']);}}['getRequiredParameters'](){return['actions'];}['customValidateParameters'](_0x1e98a2){const _0x2f36d5=a0_0xde1dc1,_0x572d05=[];if(!_0x1e98a2[_0x2f36d5(0x1ea)]||!Array[_0x2f36d5(0x1cc)](_0x1e98a2['actions'])||_0x1e98a2[_0x2f36d5(0x1ea)][_0x2f36d5(0x21d)]===0x0)_0x572d05['push'](_0x2f36d5(0x1e1));else for(const [_0x2cd6ef,_0x5db642]of _0x1e98a2[_0x2f36d5(0x1ea)]['entries']()){if(!_0x5db642[_0x2f36d5(0x234)]){_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x241));continue;}switch(_0x5db642['type']){case'read':case'delete':case _0x2f36d5(0x1cd):case'stats':!_0x5db642[_0x2f36d5(0x1f6)]&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x223)+_0x5db642['type']);break;case'write':!_0x5db642[_0x2f36d5(0x227)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x1f4));!_0x5db642['content']&&_0x5db642[_0x2f36d5(0x1c1)]!==''&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x22c));break;case'append':!_0x5db642[_0x2f36d5(0x1f6)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x1c6));!_0x5db642['content']&&_0x5db642[_0x2f36d5(0x1c1)]!==''&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case _0x2f36d5(0x1df):!_0x5db642[_0x2f36d5(0x1e3)]&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x5db642['type']);!_0x5db642[_0x2f36d5(0x239)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x5db642['type']);break;case'create-dir':case'list':!_0x5db642['directory']&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x21e)+_0x5db642[_0x2f36d5(0x234)]);break;default:_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5db642['type']);}_0x5db642['filePath']&&!this['isAllowedFileExtension'](_0x5db642[_0x2f36d5(0x1f6)])&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x39d076[_0x2f36d5(0x1d5)](_0x5db642[_0x2f36d5(0x1f6)])),_0x5db642[_0x2f36d5(0x227)]&&!this['isAllowedFileExtension'](_0x5db642['outputPath'])&&_0x572d05['push']('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x20f)+a0_0x39d076['extname'](_0x5db642['outputPath']));}return{'valid':_0x572d05[_0x2f36d5(0x21d)]===0x0,'errors':_0x572d05};}async['execute'](_0x450f9c,_0x1f11d7){const _0x58d290=a0_0xde1dc1;if(!_0x450f9c||typeof _0x450f9c!=='object')throw new Error('Invalid\x20parameters:\x20params\x20must\x20be\x20an\x20object');const {actions:_0x50d8c2}=_0x450f9c;if(!_0x50d8c2)throw new Error(_0x58d290(0x1b3)+JSON[_0x58d290(0x1ca)](Object['keys'](_0x450f9c)));if(!Array[_0x58d290(0x1cc)](_0x50d8c2))throw new Error(_0x58d290(0x1e2)+typeof _0x50d8c2);if(_0x50d8c2[_0x58d290(0x21d)]===0x0)throw new Error(_0x58d290(0x1d4));const {projectDir:_0x530395,agentId:_0x3ee424,directoryAccess:_0x27a559}=_0x1f11d7,_0x56705c=_0x27a559||this['directoryAccessManager'][_0x58d290(0x1e5)]({'workingDirectory':_0x530395||process[_0x58d290(0x236)](),'writeEnabledDirectories':[_0x530395||process['cwd']()],'restrictToProject':!![]});_0x27a559&&_0x27a559['workingDirectory']?(console[_0x58d290(0x248)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x27a559[_0x58d290(0x221)]),console['log']('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x27a559,null,0x2))):(console['log'](_0x58d290(0x22f),_0x530395||process[_0x58d290(0x236)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x27a559),console['log'](_0x58d290(0x238),_0x530395));const _0x29e3ca=[];for(const _0x2db957 of _0x50d8c2){try{let _0x34c65c;switch(_0x2db957[_0x58d290(0x234)]){case'read':_0x34c65c=await this[_0x58d290(0x24a)](_0x2db957['filePath'],_0x56705c,_0x2db957[_0x58d290(0x1d8)]);break;case _0x58d290(0x209):_0x34c65c=await this['writeFile'](_0x2db957[_0x58d290(0x227)],_0x2db957['content'],_0x56705c,{'encoding':_0x2db957[_0x58d290(0x1d8)],'createDirs':_0x2db957['createDirs']});break;case _0x58d290(0x21c):_0x34c65c=await this[_0x58d290(0x1bc)](_0x2db957[_0x58d290(0x1f6)],_0x2db957[_0x58d290(0x1c1)],_0x56705c,_0x2db957['encoding']);break;case _0x58d290(0x22d):_0x34c65c=await this[_0x58d290(0x20a)](_0x2db957['filePath'],_0x56705c);break;case'copy':_0x34c65c=await this[_0x58d290(0x1db)](_0x2db957[_0x58d290(0x1e3)],_0x2db957[_0x58d290(0x239)],_0x56705c);break;case'move':_0x34c65c=await this['moveFile'](_0x2db957['sourcePath'],_0x2db957['destPath'],_0x56705c);break;case _0x58d290(0x1b8):_0x34c65c=await this[_0x58d290(0x23a)](_0x2db957['directory'],_0x56705c);break;case _0x58d290(0x1d0):_0x34c65c=await this['listDirectory'](_0x2db957['directory'],_0x56705c);break;case _0x58d290(0x1cd):_0x34c65c=await this[_0x58d290(0x1fe)](_0x2db957['filePath'],_0x56705c);break;case'stats':_0x34c65c=await this['getFileStats'](_0x2db957['filePath'],_0x56705c);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x2db957[_0x58d290(0x234)]);}_0x29e3ca['push'](_0x34c65c),this['addToHistory'](_0x2db957,_0x34c65c,_0x1f11d7['agentId']);}catch(_0x47ff4e){const _0x5b1af6={'success':![],'action':_0x2db957[_0x58d290(0x234)],'error':_0x47ff4e[_0x58d290(0x22b)],'filePath':_0x2db957['filePath']||_0x2db957[_0x58d290(0x227)]||_0x2db957['directory']};_0x29e3ca['push'](_0x5b1af6),this[_0x58d290(0x1bf)](_0x2db957,_0x5b1af6,_0x1f11d7[_0x58d290(0x1dd)]);}}return{'success':!![],'actions':_0x29e3ca,'executedActions':_0x50d8c2[_0x58d290(0x21d)],'toolUsed':'filesys'};}async[a0_0xde1dc1(0x24a)](_0x2f7f20,_0x322695,_0x5d7070='utf8'){const _0x2e5b4d=a0_0xde1dc1,_0x3fa676=this[_0x2e5b4d(0x1f3)]['getWorkingDirectory'](_0x322695),_0x4f3a16=this[_0x2e5b4d(0x1b0)](_0x2f7f20,_0x3fa676),_0x1c9595=this['directoryAccessManager']['validateReadAccess'](_0x4f3a16,_0x322695);if(!_0x1c9595[_0x2e5b4d(0x207)])throw new Error(_0x2e5b4d(0x203)+_0x1c9595['reason']+'\x20('+_0x1c9595['path']+')');try{const _0x1a6cff=await a0_0x1890e5['stat'](_0x4f3a16);if(_0x1a6cff['size']>this[_0x2e5b4d(0x216)])throw new Error('File\x20too\x20large:\x20'+_0x1a6cff['size']+_0x2e5b4d(0x1cb)+this[_0x2e5b4d(0x216)]+')');const _0x348ac7=await a0_0x1890e5[_0x2e5b4d(0x24a)](_0x4f3a16,_0x5d7070);return{'success':!![],'action':'read','filePath':this[_0x2e5b4d(0x1f3)]['createRelativePath'](_0x4f3a16,_0x322695),'content':_0x348ac7,'size':_0x1a6cff[_0x2e5b4d(0x1ce)],'encoding':_0x5d7070,'lastModified':_0x1a6cff['mtime']['toISOString'](),'message':_0x2e5b4d(0x246)+_0x1a6cff[_0x2e5b4d(0x1ce)]+_0x2e5b4d(0x1e4)+_0x2f7f20};}catch(_0x151b42){throw new Error(_0x2e5b4d(0x1c9)+_0x2f7f20+':\x20'+_0x151b42['message']);}}async[a0_0xde1dc1(0x225)](_0x2e610d,_0x50ee87,_0x5c4426,_0x173cc3={}){const _0x5e1765=a0_0xde1dc1,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x173cc3,_0x19890b=this['directoryAccessManager']['getWorkingDirectory'](_0x5c4426),_0x20f026=this[_0x5e1765(0x1b0)](_0x2e610d,_0x19890b),_0x36a197=this['directoryAccessManager'][_0x5e1765(0x232)](_0x20f026,_0x5c4426);if(!_0x36a197[_0x5e1765(0x207)])throw new Error(_0x5e1765(0x218)+_0x36a197['reason']+'\x20('+_0x36a197['path']+')');try{const _0xac4ee2=Buffer[_0x5e1765(0x1eb)](_0x50ee87,encoding);if(_0xac4ee2>this['maxFileSize'])throw new Error(_0x5e1765(0x1bd)+_0xac4ee2+'\x20bytes\x20(max\x20'+this[_0x5e1765(0x216)]+')');if(createDirs){const _0xe66b4e=a0_0x39d076['dirname'](_0x20f026);await a0_0x1890e5[_0x5e1765(0x231)](_0xe66b4e,{'recursive':!![]});}let _0x164479=null;try{await a0_0x1890e5[_0x5e1765(0x23e)](_0x20f026),_0x164479=_0x20f026+'.backup-'+Date[_0x5e1765(0x201)](),await a0_0x1890e5[_0x5e1765(0x1db)](_0x20f026,_0x164479);}catch{}await a0_0x1890e5[_0x5e1765(0x225)](_0x20f026,_0x50ee87,encoding);const _0x2a83ef=await a0_0x1890e5[_0x5e1765(0x205)](_0x20f026),_0x3ed8d0=this['directoryAccessManager'][_0x5e1765(0x1fc)](_0x20f026,_0x5c4426);return{'success':!![],'action':_0x5e1765(0x209),'outputPath':_0x3ed8d0,'fullPath':_0x20f026,'size':_0x2a83ef['size'],'encoding':encoding,'backupPath':_0x164479?this[_0x5e1765(0x1f3)]['createRelativePath'](_0x164479,_0x5c4426):null,'backupFullPath':_0x164479||null,'message':'Wrote\x20'+_0x2a83ef['size']+_0x5e1765(0x233)+_0x20f026};}catch(_0x4fac60){throw new Error(_0x5e1765(0x1be)+_0x20f026+':\x20'+_0x4fac60['message']);}}async[a0_0xde1dc1(0x1bc)](_0x47df00,_0x5a0dce,_0x3d3a5a,_0x5cafb0=a0_0xde1dc1(0x1da)){const _0x181280=a0_0xde1dc1,_0x141fb9=this[_0x181280(0x1f3)]['getWorkingDirectory'](_0x3d3a5a),_0x12ea04=this[_0x181280(0x1b0)](_0x47df00,_0x141fb9),_0x20adbc=this['directoryAccessManager'][_0x181280(0x232)](_0x12ea04,_0x3d3a5a);if(!_0x20adbc[_0x181280(0x207)])throw new Error('Write\x20access\x20denied:\x20'+_0x20adbc['reason']+'\x20('+_0x20adbc[_0x181280(0x1f2)]+')');try{let _0x592304=0x0;try{const _0x7d9f4f=await a0_0x1890e5[_0x181280(0x205)](_0x12ea04);_0x592304=_0x7d9f4f['size'];}catch{}const _0x488dc7=Buffer['byteLength'](_0x5a0dce,_0x5cafb0);if(_0x592304+_0x488dc7>this['maxFileSize'])throw new Error(_0x181280(0x1f8)+(_0x592304+_0x488dc7)+_0x181280(0x1cb)+this[_0x181280(0x216)]+')');await a0_0x1890e5['appendFile'](_0x12ea04,_0x5a0dce,_0x5cafb0);const _0x4cc2e7=await a0_0x1890e5[_0x181280(0x205)](_0x12ea04),_0x130a2f=this[_0x181280(0x1f3)]['createRelativePath'](_0x12ea04,_0x3d3a5a);return{'success':!![],'action':'append','filePath':_0x130a2f,'fullPath':_0x12ea04,'appendedBytes':_0x488dc7,'totalSize':_0x4cc2e7[_0x181280(0x1ce)],'encoding':_0x5cafb0,'message':_0x181280(0x23d)+_0x488dc7+_0x181280(0x233)+_0x12ea04};}catch(_0xd21e42){throw new Error(_0x181280(0x1f1)+_0x12ea04+':\x20'+_0xd21e42['message']);}}async[a0_0xde1dc1(0x20a)](_0x247d10,_0x3d5b5e){const _0xe74ac5=a0_0xde1dc1,_0x264d7d=this['directoryAccessManager']['getWorkingDirectory'](_0x3d5b5e),_0x5f00ed=this['resolvePath'](_0x247d10,_0x264d7d),_0x14b909=this['directoryAccessManager']['validateWriteAccess'](_0x5f00ed,_0x3d5b5e);if(!_0x14b909['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x14b909[_0xe74ac5(0x214)]+'\x20('+_0x14b909[_0xe74ac5(0x1f2)]+')');try{const _0x2202ce=await a0_0x1890e5[_0xe74ac5(0x205)](_0x5f00ed),_0x34ff24=_0x5f00ed+_0xe74ac5(0x202)+Date[_0xe74ac5(0x201)]();await a0_0x1890e5['copyFile'](_0x5f00ed,_0x34ff24),await a0_0x1890e5['unlink'](_0x5f00ed);const _0x2bde9c=this[_0xe74ac5(0x1f3)]['createRelativePath'](_0x5f00ed,_0x3d5b5e),_0x5b6a45=this[_0xe74ac5(0x1f3)][_0xe74ac5(0x1fc)](_0x34ff24,_0x3d5b5e);return{'success':!![],'action':_0xe74ac5(0x22d),'filePath':_0x2bde9c,'fullPath':_0x5f00ed,'size':_0x2202ce[_0xe74ac5(0x1ce)],'backupPath':_0x5b6a45,'backupFullPath':_0x34ff24,'message':'Deleted\x20'+_0x5f00ed+_0xe74ac5(0x1cf)};}catch(_0x1a57c1){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x5f00ed+':\x20'+_0x1a57c1[_0xe74ac5(0x22b)]);}}async[a0_0xde1dc1(0x1db)](_0x3368c9,_0x4932c5,_0x47b7ad){const _0x2dcf98=a0_0xde1dc1,_0x5a6ce1=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x222)](_0x47b7ad),_0x2b535e=this[_0x2dcf98(0x1b0)](_0x3368c9,_0x5a6ce1),_0x34eda7=this[_0x2dcf98(0x1b0)](_0x4932c5,_0x5a6ce1),_0x2ee60b=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x1d9)](_0x2b535e,_0x47b7ad);if(!_0x2ee60b['allowed'])throw new Error(_0x2dcf98(0x1c4)+_0x2ee60b[_0x2dcf98(0x214)]+'\x20('+_0x2ee60b['path']+')');const _0x489e16=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x232)](_0x34eda7,_0x47b7ad);if(!_0x489e16['allowed'])throw new Error(_0x2dcf98(0x1d3)+_0x489e16['reason']+'\x20('+_0x489e16[_0x2dcf98(0x1f2)]+')');try{const _0xab1243=await a0_0x1890e5[_0x2dcf98(0x205)](_0x2b535e);if(_0xab1243[_0x2dcf98(0x1ce)]>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0xab1243[_0x2dcf98(0x1ce)]+'\x20bytes');const _0x5ae4a4=a0_0x39d076['dirname'](_0x34eda7);await a0_0x1890e5['mkdir'](_0x5ae4a4,{'recursive':!![]}),await a0_0x1890e5['copyFile'](_0x2b535e,_0x34eda7);const _0x415679=this[_0x2dcf98(0x1f3)]['createRelativePath'](_0x2b535e,_0x47b7ad),_0x55b780=this['directoryAccessManager'][_0x2dcf98(0x1fc)](_0x34eda7,_0x47b7ad);return{'success':!![],'action':_0x2dcf98(0x243),'sourcePath':_0x415679,'destPath':_0x55b780,'sourceFullPath':_0x2b535e,'destFullPath':_0x34eda7,'size':_0xab1243[_0x2dcf98(0x1ce)],'message':_0x2dcf98(0x224)+_0x2b535e+'\x20to\x20'+_0x34eda7};}catch(_0x19b514){throw new Error(_0x2dcf98(0x1ec)+_0x2b535e+_0x2dcf98(0x1d1)+_0x34eda7+':\x20'+_0x19b514[_0x2dcf98(0x22b)]);}}async[a0_0xde1dc1(0x1dc)](_0x1d3627,_0x2cc050,_0x32d007){const _0x9d4017=a0_0xde1dc1,_0x2c131a=this['directoryAccessManager']['getWorkingDirectory'](_0x32d007),_0xe986f7=this[_0x9d4017(0x1b0)](_0x1d3627,_0x2c131a),_0x2b5fdd=this['resolvePath'](_0x2cc050,_0x2c131a),_0x1dd135=this['directoryAccessManager'][_0x9d4017(0x1d9)](_0xe986f7,_0x32d007);if(!_0x1dd135[_0x9d4017(0x207)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x1dd135['reason']+'\x20('+_0x1dd135['path']+')');const _0xd63c76=this[_0x9d4017(0x1f3)][_0x9d4017(0x232)](_0x2b5fdd,_0x32d007);if(!_0xd63c76['allowed'])throw new Error(_0x9d4017(0x1b6)+_0xd63c76['reason']+'\x20('+_0xd63c76[_0x9d4017(0x1f2)]+')');try{const _0x4da4b3=await a0_0x1890e5['stat'](_0xe986f7),_0x17e777=a0_0x39d076['dirname'](_0x2b5fdd);await a0_0x1890e5[_0x9d4017(0x231)](_0x17e777,{'recursive':!![]}),await a0_0x1890e5[_0x9d4017(0x1b7)](_0xe986f7,_0x2b5fdd);const _0x32b9ce=this[_0x9d4017(0x1f3)][_0x9d4017(0x1fc)](_0xe986f7,_0x32d007),_0x1ac4a2=this[_0x9d4017(0x1f3)]['createRelativePath'](_0x2b5fdd,_0x32d007);return{'success':!![],'action':_0x9d4017(0x1df),'sourcePath':_0x32b9ce,'destPath':_0x1ac4a2,'fullSourcePath':_0xe986f7,'fullDestPath':_0x2b5fdd,'size':_0x4da4b3[_0x9d4017(0x1ce)],'message':_0x9d4017(0x1bb)+_0x1d3627+_0x9d4017(0x1d1)+_0x2cc050};}catch(_0x2e389d){throw new Error('Failed\x20to\x20move\x20'+_0x1d3627+_0x9d4017(0x1d1)+_0x2cc050+':\x20'+_0x2e389d['message']);}}async['createDirectory'](_0x3f5e8c,_0x4c107a){const _0x335328=a0_0xde1dc1,_0x5f3072=this[_0x335328(0x1f3)]['getWorkingDirectory'](_0x4c107a),_0x13b9ff=this[_0x335328(0x1b0)](_0x3f5e8c,_0x5f3072),_0x46e77f=this['directoryAccessManager'][_0x335328(0x232)](_0x13b9ff,_0x4c107a);if(!_0x46e77f['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x46e77f[_0x335328(0x214)]+'\x20('+_0x46e77f['path']+')');try{await a0_0x1890e5[_0x335328(0x231)](_0x13b9ff,{'recursive':!![]});const _0x567fc1=this['directoryAccessManager']['createRelativePath'](_0x13b9ff,_0x4c107a);return{'success':!![],'action':'create-dir','directory':_0x567fc1,'fullPath':_0x13b9ff,'message':'Created\x20directory\x20'+_0x3f5e8c};}catch(_0x451b52){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x3f5e8c+':\x20'+_0x451b52['message']);}}async['listDirectory'](_0x231f5a,_0x1a528a){const _0x5be060=a0_0xde1dc1,_0x206b39=this['directoryAccessManager'][_0x5be060(0x222)](_0x1a528a),_0x3b66bf=this[_0x5be060(0x1b0)](_0x231f5a,_0x206b39),_0x519243=this['directoryAccessManager'][_0x5be060(0x1d9)](_0x3b66bf,_0x1a528a);if(!_0x519243[_0x5be060(0x207)])throw new Error(_0x5be060(0x203)+_0x519243['reason']+'\x20('+_0x519243['path']+')');try{const _0x3afc3b=await a0_0x1890e5[_0x5be060(0x20e)](_0x3b66bf,{'withFileTypes':!![]}),_0x49e00e=[];for(const _0x2b56b5 of _0x3afc3b){const _0x411b12=a0_0x39d076['join'](_0x3b66bf,_0x2b56b5[_0x5be060(0x1b5)]),_0x58d326=await a0_0x1890e5[_0x5be060(0x205)](_0x411b12);_0x49e00e['push']({'name':_0x2b56b5[_0x5be060(0x1b5)],'type':_0x2b56b5['isDirectory']()?'directory':'file','size':_0x2b56b5['isFile']()?_0x58d326['size']:undefined,'lastModified':_0x58d326['mtime'][_0x5be060(0x249)](),'permissions':_0x58d326['mode'],'isSymlink':_0x2b56b5[_0x5be060(0x1ff)]()});}const _0x2a15a9=this['directoryAccessManager'][_0x5be060(0x1fc)](_0x3b66bf,_0x1a528a);return{'success':!![],'action':'list','directory':_0x2a15a9,'fullPath':_0x3b66bf,'contents':_0x49e00e,'totalItems':_0x49e00e['length'],'directories':_0x49e00e[_0x5be060(0x23c)](_0x5eb5a6=>_0x5eb5a6[_0x5be060(0x234)]==='directory')[_0x5be060(0x21d)],'files':_0x49e00e['filter'](_0x120546=>_0x120546[_0x5be060(0x234)]===_0x5be060(0x217))[_0x5be060(0x21d)],'message':'Listed\x20'+_0x49e00e[_0x5be060(0x21d)]+_0x5be060(0x1f9)+_0x231f5a};}catch(_0x4e04a7){throw new Error(_0x5be060(0x247)+_0x231f5a+':\x20'+_0x4e04a7[_0x5be060(0x22b)]);}}async[a0_0xde1dc1(0x1fe)](_0x4c94c1,_0x3eeb1e){const _0x1ca1dc=a0_0xde1dc1,_0x5b086f=this[_0x1ca1dc(0x1f3)]['getWorkingDirectory'](_0x3eeb1e),_0x2e7391=this[_0x1ca1dc(0x1b0)](_0x4c94c1,_0x5b086f),_0x50ce06=this['directoryAccessManager']['validateReadAccess'](_0x2e7391,_0x3eeb1e);if(!_0x50ce06['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x50ce06['reason']+'\x20('+_0x50ce06['path']+')');try{const _0x4d867b=await a0_0x1890e5['stat'](_0x2e7391),_0x358dca=this['directoryAccessManager'][_0x1ca1dc(0x1fc)](_0x2e7391,_0x3eeb1e);return{'success':!![],'action':_0x1ca1dc(0x1cd),'filePath':_0x358dca,'fullPath':_0x2e7391,'exists':!![],'type':_0x4d867b['isDirectory']()?'directory':_0x1ca1dc(0x217),'message':_0x4c94c1+'\x20exists\x20as\x20'+(_0x4d867b[_0x1ca1dc(0x1b9)]()?_0x1ca1dc(0x240):_0x1ca1dc(0x217))};}catch(_0x5cb14e){if(_0x5cb14e[_0x1ca1dc(0x213)]===_0x1ca1dc(0x1fa)){const _0x448cc8=this[_0x1ca1dc(0x1f3)]['createRelativePath'](_0x2e7391,_0x3eeb1e);return{'success':!![],'action':'exists','filePath':_0x448cc8,'fullPath':_0x2e7391,'exists':![],'message':_0x4c94c1+_0x1ca1dc(0x1c2)};}throw new Error(_0x1ca1dc(0x1e6)+_0x4c94c1+':\x20'+_0x5cb14e[_0x1ca1dc(0x22b)]);}}async[a0_0xde1dc1(0x1b4)](_0x31ff71,_0x5b81ec){const _0x22826a=a0_0xde1dc1,_0x57685e=this['directoryAccessManager']['getWorkingDirectory'](_0x5b81ec),_0x40c08a=this[_0x22826a(0x1b0)](_0x31ff71,_0x57685e),_0x243ba7=this[_0x22826a(0x1f3)][_0x22826a(0x1d9)](_0x40c08a,_0x5b81ec);if(!_0x243ba7[_0x22826a(0x207)])throw new Error(_0x22826a(0x203)+_0x243ba7[_0x22826a(0x214)]+'\x20('+_0x243ba7['path']+')');try{const _0x256fba=await a0_0x1890e5[_0x22826a(0x205)](_0x40c08a),_0x924dfb=this[_0x22826a(0x1f3)][_0x22826a(0x1fc)](_0x40c08a,_0x5b81ec);return{'success':!![],'action':_0x22826a(0x237),'filePath':_0x924dfb,'fullPath':_0x40c08a,'stats':{'size':_0x256fba[_0x22826a(0x1ce)],'type':_0x256fba[_0x22826a(0x1b9)]()?_0x22826a(0x240):'file','lastModified':_0x256fba['mtime']['toISOString'](),'lastAccessed':_0x256fba['atime']['toISOString'](),'created':_0x256fba[_0x22826a(0x1fd)]['toISOString'](),'permissions':_0x256fba['mode'],'isSymlink':_0x256fba['isSymbolicLink']()},'message':_0x22826a(0x212)+_0x31ff71};}catch(_0x10cf56){throw new Error(_0x22826a(0x1e0)+_0x31ff71+':\x20'+_0x10cf56['message']);}}[a0_0xde1dc1(0x1b0)](_0x1ac211,_0x1a3e1b){const _0x4251ff=a0_0xde1dc1;if(a0_0x39d076['isAbsolute'](_0x1ac211))return a0_0x39d076[_0x4251ff(0x1e9)](_0x1ac211);return a0_0x39d076['resolve'](_0x1a3e1b,_0x1ac211);}[a0_0xde1dc1(0x1c7)](_0x321987,_0xe1233d,_0x291ce2=a0_0xde1dc1(0x1e7)){const _0xf6378a=a0_0xde1dc1,_0xc922c4=_0x291ce2==='write'?this['directoryAccessManager']['validateWriteAccess'](_0x321987,_0xe1233d):this['directoryAccessManager']['validateReadAccess'](_0x321987,_0xe1233d);if(!_0xc922c4[_0xf6378a(0x207)])throw new Error(_0x291ce2+'\x20access\x20denied:\x20'+_0xc922c4[_0xf6378a(0x214)]+'\x20('+_0xc922c4['path']+')');return _0xc922c4;}['isAllowedFileExtension'](_0x4aa8d6){const _0x57805a=a0_0xde1dc1,_0x3d3089=a0_0x39d076[_0x57805a(0x1d5)](_0x4aa8d6)[_0x57805a(0x210)]();if(this['blockedExtensions']['includes'](_0x3d3089))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x57805a(0x20b)](_0x3d3089))return![];return!![];}['addToHistory'](_0x5bf60b,_0x42d9d7,_0x19a454){const _0x3c972b=a0_0xde1dc1,_0x54f64d={'timestamp':new Date()[_0x3c972b(0x249)](),'agentId':_0x19a454,'action':_0x5bf60b['type'],'filePath':_0x5bf60b[_0x3c972b(0x1f6)]||_0x5bf60b[_0x3c972b(0x227)]||_0x5bf60b[_0x3c972b(0x240)],'success':_0x42d9d7['success'],'size':_0x42d9d7['size']};this[_0x3c972b(0x20c)]['push'](_0x54f64d),this['operationHistory'][_0x3c972b(0x21d)]>0xc8&&(this['operationHistory']=this[_0x3c972b(0x20c)][_0x3c972b(0x1c3)](-0xc8));}['getSupportedActions'](){const _0xfd120c=a0_0xde1dc1;return[_0xfd120c(0x1e7),'write',_0xfd120c(0x21c),_0xfd120c(0x22d),_0xfd120c(0x243),'move',_0xfd120c(0x1b8),'list','exists',_0xfd120c(0x237)];}[a0_0xde1dc1(0x1d2)](){const _0x1a8f39=a0_0xde1dc1;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':_0x1a8f39(0x1d7)},'sourcePath':{'type':_0x1a8f39(0x1d7)},'destPath':{'type':'string'},'directory':{'type':_0x1a8f39(0x1d7)},'content':{'type':'string'},'encoding':{'type':_0x1a8f39(0x1d7)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':[_0x1a8f39(0x1ea)]};}['getOperationHistory'](_0x3c8476=null){const _0x253cfa=a0_0xde1dc1;if(_0x3c8476)return this['operationHistory'][_0x253cfa(0x23c)](_0x23f207=>_0x23f207['agentId']===_0x3c8476);return[...this['operationHistory']];}}export default FileSystemTool;
|
|
1
|
+
const a0_0x3635c5=a0_0x4aa5;function a0_0x4aa5(_0x4e252f,_0x5eb69b){_0x4e252f=_0x4e252f-0x154;const _0x94aaa=a0_0x94aa();let _0x4aa502=_0x94aaa[_0x4e252f];if(a0_0x4aa5['RzzhBG']===undefined){var _0x73a1b9=function(_0x57cb56){const _0x29e31b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20a6c2='',_0x40468f='';for(let _0x44f065=0x0,_0x482eec,_0x5300ea,_0x1ef9b1=0x0;_0x5300ea=_0x57cb56['charAt'](_0x1ef9b1++);~_0x5300ea&&(_0x482eec=_0x44f065%0x4?_0x482eec*0x40+_0x5300ea:_0x5300ea,_0x44f065++%0x4)?_0x20a6c2+=String['fromCharCode'](0xff&_0x482eec>>(-0x2*_0x44f065&0x6)):0x0){_0x5300ea=_0x29e31b['indexOf'](_0x5300ea);}for(let _0x1ce9a0=0x0,_0x5ae9f1=_0x20a6c2['length'];_0x1ce9a0<_0x5ae9f1;_0x1ce9a0++){_0x40468f+='%'+('00'+_0x20a6c2['charCodeAt'](_0x1ce9a0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40468f);};a0_0x4aa5['YtsFzR']=_0x73a1b9,a0_0x4aa5['lDNetj']={},a0_0x4aa5['RzzhBG']=!![];}const _0x20e960=_0x94aaa[0x0],_0x1cf5c5=_0x4e252f+_0x20e960,_0x213a4a=a0_0x4aa5['lDNetj'][_0x1cf5c5];return!_0x213a4a?(_0x4aa502=a0_0x4aa5['YtsFzR'](_0x4aa502),a0_0x4aa5['lDNetj'][_0x1cf5c5]=_0x4aa502):_0x4aa502=_0x213a4a,_0x4aa502;}(function(_0x3ba273,_0x4fc90f){const _0x656bc4=a0_0x4aa5,_0x559eda=_0x3ba273();while(!![]){try{const _0x20a7a1=-parseInt(_0x656bc4(0x1bc))/0x1*(parseInt(_0x656bc4(0x199))/0x2)+-parseInt(_0x656bc4(0x155))/0x3+parseInt(_0x656bc4(0x16b))/0x4*(-parseInt(_0x656bc4(0x1e2))/0x5)+-parseInt(_0x656bc4(0x174))/0x6+-parseInt(_0x656bc4(0x1a1))/0x7*(parseInt(_0x656bc4(0x1d5))/0x8)+-parseInt(_0x656bc4(0x16d))/0x9+parseInt(_0x656bc4(0x175))/0xa;if(_0x20a7a1===_0x4fc90f)break;else _0x559eda['push'](_0x559eda['shift']());}catch(_0x1271da){_0x559eda['push'](_0x559eda['shift']());}}}(a0_0x94aa,0xe780b));import{BaseTool}from'./baseTool.js';import a0_0x20a6c2 from'../utilities/tagParser.js';import a0_0x40468f from'../utilities/directoryAccessManager.js';function a0_0x94aa(){const _0x18e348=['rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','tgLZDgvKia','y3DK','A2v5CW','ihrVia','rMfPBgvKihrVihjLywqGzMLSzsa','ywDLBNrjza','ywXSB3DLza','CMf3q29UDgvUDa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHPC3rZ','nZuYmteYnu1sEfD1va','y3jLyxrLuMvSyxrPDMvqyxrO','odq2nZvXt012z2W','Bw92zuzPBgu','zgLYBMfTzq','DhjPBq','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','B2jQzwn0','rMfPBgvKihrVig1VDMuG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29WEuzPBgu','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','BgvUz3rO','ChvZAa','DgLTzw91Da','CM91BMq','zgLYzwn0B3j5','AxngAwXL','zgvZDc1WyxrO','BwvZC2fNzq','yxbWzw5KrMLSzq','BxrPBwu','DxrMoa','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','ngnJA3PsvG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','mtm1nZeZndnJr25pAfK','DMfSAwrHDgvxCML0zufJy2vZCW','C3vJy2vZCW','BM93','z2v0v29YA2LUz0rPCMvJDg9YEq','zgvSzxrL','Bwf4rMLSzvnPEMu','mtaWndm0nJburwHPENm','nZiXmtm5ntbNBNHotxO','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','CMvHC29U','tw92zwqG','zgvSzxrLrMLSzq','Aw5JBhvKzxm','Bw92zq','BwTKAxi','y3jLyxrLlwrPCNm','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','lMrLBgv0zwqTyMfJA3vWlq','AxneAxjLy3rVCNK','AxnbCNjHEq','C3rYAw5N','zMLSDgvY','y3jLyxrLrgLYzwn0B3j5','zw50CMLLCW','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','BwfW','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','DMfSAwrHDgvszwfKqwnJzxnZ','yxjYyxK','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C3vIC3rYAw5N','AxntEw1IB2XPy0XPBMS','lMv4zq','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','zxH0BMfTzq','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','CgfYC2vbDhrYAwj1DgvZ','y29WEq','B3v0Chv0lxbHDgG','D3jPDgu','Dhj1zq','qwn0Aw9Uia','otC2ntzKz0TXrfi','q29WAwvKia','C3rHDa','B3v0Chv0ugf0Aa','C3rHDhm','ywnJzxnZ','C291CMnLlxbHDgG','C291CMnLugf0Aa','otq3ndKYn3Huy3n1Aq','y2HLy2TfEgLZDhm','y3jLyxrLrgLYCW','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','zMLSzvbHDgG','yxbWzw5K','z2v0rMLSzvn0yxrZ','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','ywn0Aw9UCW','zMLSzs1WyxrO','zgvIDwC','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','yxbWzw5Kvg9gAwXL','DMfSAwrHDgvqyxrOqwnJzxnZ','Bg9N','BgLZDa','ru5pru5u','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','q3jLyxrLzcbKAxjLy3rVCNKG','igrVzxmGBM90igv4Axn0','Bg9Nz2vY','y29UDgvUDa','ywrKvg9iAxn0B3j5','yM9VBgvHBG','qxbWzw5KzwqG','AM9PBG','nhHqBNbHBq','igj5DgvZihrVia','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','zMLSzq','uMv0CMLLDMvKihn0yxrZigzVCIa','CMvHzezPBgu','y3jLyxrLlwrPCG','zw5JB2rPBMC','zgvZDfbHDgG','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','CMvZB2X2zvbHDgG','CMvXDwLYzxnqCM9Qzwn0','DhLWzq','CMvHza','D3jPDgvgAwXL','u291CMnLigzPBguGDg9VigXHCMDLoIa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','rMfPBgvKihrVignVChKG','C2L6zq','v3jVDguG','Cgf0Aa','B3bLCMf0Aw9UsgLZDg9YEq','y29Kzq','tufyx0zjtevFu0LArq','oeLtEufHrW','BMfTzq'];a0_0x94aa=function(){return _0x18e348;};return a0_0x94aa();}import a0_0x44f065 from'fs/promises';import a0_0x482eec from'path';import a0_0x5300ea from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x1ef9b1={},_0x1ce9a0=null){const _0x108e2b=a0_0x4aa5;super(_0x1ef9b1,_0x1ce9a0),this[_0x108e2b(0x1c8)]=!![],this['isAsync']=![],this['timeout']=_0x1ef9b1[_0x108e2b(0x161)]||0x7530,this[_0x108e2b(0x176)]=_0x1ef9b1['maxConcurrentOperations']||0x5,this[_0x108e2b(0x173)]=_0x1ef9b1['maxFileSize']||SYSTEM_DEFAULTS[_0x108e2b(0x1d4)],this['allowedExtensions']=_0x1ef9b1['allowedExtensions']||null,this['blockedExtensions']=_0x1ef9b1['blockedExtensions']||[_0x108e2b(0x18f),'.bat','.cmd','.scr','.com'],this['allowedDirectories']=_0x1ef9b1['allowedDirectories']||null,this[_0x108e2b(0x1d2)]=[],this['directoryAccessManager']=new a0_0x40468f(_0x1ef9b1,_0x1ce9a0);}['getDescription'](){const _0x238097=a0_0x4aa5;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aCRITICAL:\x20Both\x20XML\x20and\x20JSON\x20formats\x20are\x20fully\x20supported.\x20When\x20using\x20XML\x20format,\x20commands\x20are\x20automatically\x20converted\x20to\x20the\x20appropriate\x20structure\x20internally\x20-\x20you\x20don\x27t\x20need\x20to\x20manually\x20wrap\x20them\x20in\x20an\x20actions\x20array.\x0a\x0aUSAGE\x20-\x20TWO\x20FORMATS\x20SUPPORTED:\x0a\x0aFORMAT\x201\x20-\x20XML\x20STYLE\x20(Recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22src/index.js\x22\x20/>\x0a<write\x20output-path=\x22src/components/Button.js\x22>\x0aconst\x20Button\x20=\x20()\x20=>\x20{\x0a\x20\x20return\x20<button>Click\x20me</button>;\x0a};\x0aexport\x20default\x20Button;\x0a</write>\x0a[/tool]\x0a\x0aFORMAT\x202\x20-\x20JSON\x20STYLE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x20\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x20\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22const\x20Button\x20=\x20()\x20=>\x20{\x20return\x20<button>Click\x20me</button>;\x20};\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20\x0a-\x20Use\x20either\x20format\x20consistently.\x20Do\x20NOT\x20mix\x20formats\x20in\x20a\x20single\x20command.\x0a-\x20XML\x20format\x20is\x20recommended\x20for\x20single\x20operations\x20and\x20better\x20readability\x0a-\x20JSON\x20format\x20is\x20recommended\x20for\x20complex\x20multi-action\x20operations\x0a-\x20Both\x20formats\x20work\x20equally\x20well\x20and\x20produce\x20the\x20same\x20results\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x0a-\x20write:\x20Write\x20content\x20to\x20file\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x0a-\x20delete:\x20Delete\x20a\x20file\x0a-\x20copy:\x20Copy\x20file\x20from\x20source\x20to\x20destination\x0a-\x20move:\x20Move/rename\x20file\x0a-\x20create-dir:\x20Create\x20directory\x0a-\x20list:\x20List\x20directory\x20contents\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20read\x0a-\x20output-path:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20source-path:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20dest-path:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20directory\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20create-dirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aSIMPLE\x20FILE\x20CREATION\x20(XML\x20format\x20-\x20recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<write\x20output-path=\x22hello.c\x22>\x0a#include\x20<stdio.h>\x0a\x0aint\x20main()\x20{\x0a\x20\x20\x20\x20printf(\x22Hello,\x20World!\x5cn\x22);\x0a\x20\x20\x20\x20return\x200;\x0a}\x0a</write>\x0a[/tool]\x0a\x0aREADING\x20FILES\x20(XML\x20format):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22package.json\x22\x20/>\x0a[/tool]\x0a\x0aMULTIPLE\x20OPERATIONS\x20(JSON\x20format\x20recommended):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/backup.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22//\x20Backup\x20file\x5cnconsole.log(\x27backup\x27);\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aOTHER\x20XML\x20EXAMPLES:\x0a[tool\x20id=\x22filesystem\x22]\x0a<copy\x20source-path=\x22template.js\x22\x20dest-path=\x22src/component.js\x22\x20/>\x0a<create-dir\x20directory=\x22src/components/ui\x22\x20/>\x0a<list\x20directory=\x22src\x22\x20/>\x0a[/tool]\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x238097(0x162)](this['maxFileSize']/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}['parseParameters'](_0x5ae9f1){const _0x2c83fe=a0_0x4aa5;try{const _0x48b9fa={},_0x581f27=[];this['logger']?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x5ae9f1['length'],'contentPreview':_0x5ae9f1[_0x2c83fe(0x18d)](0x0,0xc8)});const _0x2fcdff=['read','delete','copy',_0x2c83fe(0x17b),'create-dir',_0x2c83fe(0x1b1),_0x2c83fe(0x1e1),_0x2c83fe(0x19d),_0x2c83fe(0x1a6)];for(const _0x44231b of _0x2fcdff){const _0x5e449d=a0_0x20a6c2[_0x2c83fe(0x16a)](_0x5ae9f1,_0x44231b);for(const _0x2ed219 of _0x5e449d){const _0x1bbb4d={'type':_0x44231b,..._0x2ed219['attributes']};_0x1bbb4d['file-path']&&(_0x1bbb4d[_0x2c83fe(0x1a5)]=_0x1bbb4d[_0x2c83fe(0x1aa)],delete _0x1bbb4d['file-path']),_0x1bbb4d['output-path']&&(_0x1bbb4d['outputPath']=_0x1bbb4d['output-path'],delete _0x1bbb4d['output-path']),_0x1bbb4d[_0x2c83fe(0x19f)]&&(_0x1bbb4d['sourcePath']=_0x1bbb4d['source-path'],delete _0x1bbb4d['source-path']),_0x1bbb4d['dest-path']&&(_0x1bbb4d[_0x2c83fe(0x1c5)]=_0x1bbb4d[_0x2c83fe(0x165)],delete _0x1bbb4d[_0x2c83fe(0x165)]),_0x1bbb4d['create-dirs']&&(_0x1bbb4d[_0x2c83fe(0x1a3)]=_0x1bbb4d['create-dirs']===_0x2c83fe(0x197),delete _0x1bbb4d['create-dirs']),_0x581f27['push'](_0x1bbb4d);}}const _0x46c39f=_0x5ae9f1['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x18bdfc of _0x46c39f){const _0x9df3c1=new a0_0x20a6c2(),_0x24281e=_0x9df3c1[_0x2c83fe(0x193)](_0x18bdfc[0x1]),_0x3c8249=_0x18bdfc[0x2][_0x2c83fe(0x158)](),_0x2496e0={'type':'write','content':_0x3c8249,..._0x24281e};_0x2496e0[_0x2c83fe(0x195)]&&(_0x2496e0['outputPath']=_0x2496e0[_0x2c83fe(0x195)],delete _0x2496e0['output-path']),_0x2496e0[_0x2c83fe(0x17d)]&&(_0x2496e0[_0x2c83fe(0x1a3)]=_0x2496e0[_0x2c83fe(0x17d)]===_0x2c83fe(0x197),delete _0x2496e0[_0x2c83fe(0x17d)]),_0x581f27[_0x2c83fe(0x160)](_0x2496e0);}const _0x2a0b86=_0x5ae9f1['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x41ee04 of _0x2a0b86){const _0x47f2bf=new a0_0x20a6c2(),_0x5bc865=_0x47f2bf['parseAttributes'](_0x41ee04[0x1]),_0x28327f=_0x41ee04[0x2][_0x2c83fe(0x158)](),_0x39989f={'type':_0x2c83fe(0x1a6),'content':_0x28327f,..._0x5bc865};_0x39989f[_0x2c83fe(0x1aa)]&&(_0x39989f[_0x2c83fe(0x1a5)]=_0x39989f['file-path'],delete _0x39989f[_0x2c83fe(0x1aa)]),_0x581f27[_0x2c83fe(0x160)](_0x39989f);}return _0x48b9fa['actions']=_0x581f27,_0x48b9fa[_0x2c83fe(0x1df)]=_0x5ae9f1[_0x2c83fe(0x158)](),this[_0x2c83fe(0x1b6)]?.[_0x2c83fe(0x1ab)](_0x2c83fe(0x188),{'totalActions':_0x581f27['length'],'actionTypes':_0x581f27[_0x2c83fe(0x187)](_0x503535=>_0x503535[_0x2c83fe(0x1c9)]),'actions':_0x581f27[_0x2c83fe(0x187)](_0x385879=>({'type':_0x385879['type'],'filePath':_0x385879[_0x2c83fe(0x1a5)],'outputPath':_0x385879[_0x2c83fe(0x19c)],'hasContent':!!_0x385879[_0x2c83fe(0x1b7)]}))}),_0x48b9fa;}catch(_0xdfbf48){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0xdfbf48['message']);}}[a0_0x3635c5(0x16c)](){const _0x1216d6=a0_0x3635c5;return[_0x1216d6(0x1a9)];}['customValidateParameters'](_0xe6fcf4){const _0xc268d8=a0_0x3635c5,_0x1c187a=[];if(!_0xe6fcf4[_0xc268d8(0x1a9)]||!Array[_0xc268d8(0x181)](_0xe6fcf4[_0xc268d8(0x1a9)])||_0xe6fcf4['actions'][_0xc268d8(0x15f)]===0x0)_0x1c187a[_0xc268d8(0x160)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x355e3d,_0x13dc42]of _0xe6fcf4['actions'][_0xc268d8(0x185)]()){if(!_0x13dc42[_0xc268d8(0x1c9)]){_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x13dc42['type']){case _0xc268d8(0x1ca):case _0xc268d8(0x172):case _0xc268d8(0x1e1):case _0xc268d8(0x19d):!_0x13dc42[_0xc268d8(0x1a5)]&&_0x1c187a['push'](_0xc268d8(0x198)+(_0x355e3d+0x1)+_0xc268d8(0x15e)+_0x13dc42['type']);break;case _0xc268d8(0x196):!_0x13dc42[_0xc268d8(0x19c)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x13dc42[_0xc268d8(0x1b7)]&&_0x13dc42['content']!==''&&_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0xc268d8(0x1a6):!_0x13dc42[_0xc268d8(0x1a5)]&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1b3));!_0x13dc42['content']&&_0x13dc42['content']!==''&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x13dc42['sourcePath']&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1ac)+_0x13dc42['type']);!_0x13dc42[_0xc268d8(0x1c5)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x13dc42['type']);break;case'create-dir':case _0xc268d8(0x1b1):!_0x13dc42[_0xc268d8(0x163)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x13dc42['type']);break;default:_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1cd)+_0x13dc42['type']);}_0x13dc42['filePath']&&!this['isAllowedFileExtension'](_0x13dc42['filePath'])&&_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x190)+a0_0x482eec[_0xc268d8(0x191)](_0x13dc42['filePath'])),_0x13dc42[_0xc268d8(0x19c)]&&!this[_0xc268d8(0x159)](_0x13dc42[_0xc268d8(0x19c)])&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x482eec['extname'](_0x13dc42['outputPath']));}return{'valid':_0x1c187a[_0xc268d8(0x15f)]===0x0,'errors':_0x1c187a};}async['execute'](_0x270e02,_0x453135){const _0x5a612d=a0_0x3635c5;if(!_0x270e02||typeof _0x270e02!==_0x5a612d(0x15a))throw new Error(_0x5a612d(0x1a8));const {actions:_0x55a7fa}=_0x270e02;if(!_0x55a7fa)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object[_0x5a612d(0x1da)](_0x270e02)));if(!Array[_0x5a612d(0x181)](_0x55a7fa))throw new Error('Invalid\x20parameters:\x20actions\x20must\x20be\x20an\x20array.\x20Received\x20type:\x20'+typeof _0x55a7fa);if(_0x55a7fa['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x17a0c7,agentId:_0xf5c009,directoryAccess:_0x22397f}=_0x453135,_0x4fbf84=_0x22397f||this[_0x5a612d(0x1e0)]['createDirectoryAccess']({'workingDirectory':_0x17a0c7||process[_0x5a612d(0x1d9)](),'writeEnabledDirectories':[_0x17a0c7||process['cwd']()],'restrictToProject':!![]});_0x22397f&&_0x22397f['workingDirectory']?(console[_0x5a612d(0x1b0)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x22397f['workingDirectory']),console[_0x5a612d(0x1b0)](_0x5a612d(0x1bf),JSON['stringify'](_0x22397f,null,0x2))):(console[_0x5a612d(0x1b0)](_0x5a612d(0x18b),_0x17a0c7||process['cwd']()),console[_0x5a612d(0x1b0)](_0x5a612d(0x1a4),_0x22397f),console[_0x5a612d(0x1b0)](_0x5a612d(0x1d7),_0x17a0c7));const _0x44d922=[];for(const _0x5202f0 of _0x55a7fa){try{let _0x13e84a;switch(_0x5202f0['type']){case'read':_0x13e84a=await this[_0x5a612d(0x1c2)](_0x5202f0[_0x5a612d(0x1a5)],_0x4fbf84,_0x5202f0[_0x5a612d(0x1c4)]);break;case _0x5a612d(0x196):_0x13e84a=await this['writeFile'](_0x5202f0[_0x5a612d(0x19c)],_0x5202f0[_0x5a612d(0x1b7)],_0x4fbf84,{'encoding':_0x5202f0[_0x5a612d(0x1c4)],'createDirs':_0x5202f0[_0x5a612d(0x1a3)]});break;case'append':_0x13e84a=await this['appendToFile'](_0x5202f0['filePath'],_0x5202f0['content'],_0x4fbf84,_0x5202f0[_0x5a612d(0x1c4)]);break;case'delete':_0x13e84a=await this['deleteFile'](_0x5202f0[_0x5a612d(0x1a5)],_0x4fbf84);break;case'copy':_0x13e84a=await this[_0x5a612d(0x15d)](_0x5202f0[_0x5a612d(0x1a0)],_0x5202f0[_0x5a612d(0x1c5)],_0x4fbf84);break;case'move':_0x13e84a=await this['moveFile'](_0x5202f0[_0x5a612d(0x1a0)],_0x5202f0[_0x5a612d(0x1c5)],_0x4fbf84);break;case _0x5a612d(0x1c3):_0x13e84a=await this[_0x5a612d(0x184)](_0x5202f0[_0x5a612d(0x163)],_0x4fbf84);break;case'list':_0x13e84a=await this['listDirectory'](_0x5202f0['directory'],_0x4fbf84);break;case'exists':_0x13e84a=await this[_0x5a612d(0x1a2)](_0x5202f0['filePath'],_0x4fbf84);break;case _0x5a612d(0x19d):_0x13e84a=await this[_0x5a612d(0x1a7)](_0x5202f0['filePath'],_0x4fbf84);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x5202f0[_0x5a612d(0x1c9)]);}_0x44d922[_0x5a612d(0x160)](_0x13e84a),this['addToHistory'](_0x5202f0,_0x13e84a,_0x453135[_0x5a612d(0x1dd)]);}catch(_0x4f82e5){const _0x40c195={'success':![],'action':_0x5202f0[_0x5a612d(0x1c9)],'error':_0x4f82e5['message'],'filePath':_0x5202f0['filePath']||_0x5202f0['outputPath']||_0x5202f0[_0x5a612d(0x163)]};_0x44d922['push'](_0x40c195),this[_0x5a612d(0x1b8)](_0x5202f0,_0x40c195,_0x453135[_0x5a612d(0x1dd)]);}}return{'success':!![],'actions':_0x44d922,'executedActions':_0x55a7fa[_0x5a612d(0x15f)],'toolUsed':'filesys'};}async['readFile'](_0x4a6f95,_0x23c55f,_0x2c0ccc=a0_0x3635c5(0x169)){const _0x29a3b9=a0_0x3635c5,_0x1f028c=this[_0x29a3b9(0x1e0)][_0x29a3b9(0x171)](_0x23c55f),_0x18ea37=this[_0x29a3b9(0x1c7)](_0x4a6f95,_0x1f028c),_0x47a440=this[_0x29a3b9(0x1e0)][_0x29a3b9(0x189)](_0x18ea37,_0x23c55f);if(!_0x47a440[_0x29a3b9(0x1de)])throw new Error(_0x29a3b9(0x15c)+_0x47a440['reason']+'\x20('+_0x47a440['path']+')');try{const _0x1f1bcf=await a0_0x44f065['stat'](_0x18ea37);if(_0x1f1bcf['size']>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x1f1bcf[_0x29a3b9(0x1cf)]+'\x20bytes\x20(max\x20'+this[_0x29a3b9(0x173)]+')');const _0x2e54d9=await a0_0x44f065['readFile'](_0x18ea37,_0x2c0ccc);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x29a3b9(0x154)](_0x18ea37,_0x23c55f),'content':_0x2e54d9,'size':_0x1f1bcf[_0x29a3b9(0x1cf)],'encoding':_0x2c0ccc,'lastModified':_0x1f1bcf['mtime']['toISOString'](),'message':'Read\x20'+_0x1f1bcf[_0x29a3b9(0x1cf)]+'\x20bytes\x20from\x20'+_0x4a6f95};}catch(_0x4fa4dd){throw new Error(_0x29a3b9(0x1dc)+_0x4a6f95+':\x20'+_0x4fa4dd['message']);}}async[a0_0x3635c5(0x1cb)](_0x50b7ef,_0x3ef57c,_0x533183,_0x9e073e={}){const _0x4734e9=a0_0x3635c5,{encoding:encoding=_0x4734e9(0x169),createDirs:createDirs=!![]}=_0x9e073e,_0xf90b0b=this['directoryAccessManager']['getWorkingDirectory'](_0x533183),_0x30f9b1=this[_0x4734e9(0x1c7)](_0x50b7ef,_0xf90b0b),_0x19a666=this[_0x4734e9(0x1e0)]['validateWriteAccess'](_0x30f9b1,_0x533183);if(!_0x19a666['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x19a666['reason']+'\x20('+_0x19a666[_0x4734e9(0x1d1)]+')');try{const _0x3379cd=Buffer['byteLength'](_0x3ef57c,encoding);if(_0x3379cd>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x3379cd+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x13232d=a0_0x482eec[_0x4734e9(0x157)](_0x30f9b1);await a0_0x44f065[_0x4734e9(0x17c)](_0x13232d,{'recursive':!![]});}let _0x916511=null;try{await a0_0x44f065[_0x4734e9(0x19e)](_0x30f9b1),_0x916511=_0x30f9b1+'.backup-'+Date[_0x4734e9(0x170)](),await a0_0x44f065['copyFile'](_0x30f9b1,_0x916511);}catch{}await a0_0x44f065[_0x4734e9(0x1cb)](_0x30f9b1,_0x3ef57c,encoding);const _0x54d6f9=await a0_0x44f065[_0x4734e9(0x19b)](_0x30f9b1),_0x2eb3da=this[_0x4734e9(0x1e0)][_0x4734e9(0x154)](_0x30f9b1,_0x533183);return{'success':!![],'action':_0x4734e9(0x196),'outputPath':_0x2eb3da,'fullPath':_0x30f9b1,'size':_0x54d6f9[_0x4734e9(0x1cf)],'encoding':encoding,'backupPath':_0x916511?this['directoryAccessManager'][_0x4734e9(0x154)](_0x916511,_0x533183):null,'backupFullPath':_0x916511||null,'message':_0x4734e9(0x1d0)+_0x54d6f9[_0x4734e9(0x1cf)]+_0x4734e9(0x1bd)+_0x30f9b1};}catch(_0x4f53e9){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x30f9b1+':\x20'+_0x4f53e9['message']);}}async[a0_0x3635c5(0x1ae)](_0xe873c9,_0x4b3772,_0x5112fb,_0xa2b4d6=a0_0x3635c5(0x169)){const _0x496893=a0_0x3635c5,_0x15380f=this['directoryAccessManager']['getWorkingDirectory'](_0x5112fb),_0x4183b8=this['resolvePath'](_0xe873c9,_0x15380f),_0x36a822=this['directoryAccessManager']['validateWriteAccess'](_0x4183b8,_0x5112fb);if(!_0x36a822['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x36a822[_0x496893(0x177)]+'\x20('+_0x36a822['path']+')');try{let _0x404223=0x0;try{const _0x3fb025=await a0_0x44f065['stat'](_0x4183b8);_0x404223=_0x3fb025['size'];}catch{}const _0x2df46e=Buffer['byteLength'](_0x4b3772,_0xa2b4d6);if(_0x404223+_0x2df46e>this['maxFileSize'])throw new Error(_0x496893(0x192)+(_0x404223+_0x2df46e)+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');await a0_0x44f065[_0x496893(0x167)](_0x4183b8,_0x4b3772,_0xa2b4d6);const _0xac232c=await a0_0x44f065['stat'](_0x4183b8),_0x17e8a0=this['directoryAccessManager'][_0x496893(0x154)](_0x4183b8,_0x5112fb);return{'success':!![],'action':_0x496893(0x1a6),'filePath':_0x17e8a0,'fullPath':_0x4183b8,'appendedBytes':_0x2df46e,'totalSize':_0xac232c[_0x496893(0x1cf)],'encoding':_0xa2b4d6,'message':_0x496893(0x1ba)+_0x2df46e+_0x496893(0x1bd)+_0x4183b8};}catch(_0xd91728){throw new Error(_0x496893(0x186)+_0x4183b8+':\x20'+_0xd91728[_0x496893(0x166)]);}}async[a0_0x3635c5(0x179)](_0xc2000,_0xac742f){const _0x690d64=a0_0x3635c5,_0x13ee81=this['directoryAccessManager'][_0x690d64(0x171)](_0xac742f),_0x5f01d7=this['resolvePath'](_0xc2000,_0x13ee81),_0x3a9a8d=this['directoryAccessManager'][_0x690d64(0x16e)](_0x5f01d7,_0xac742f);if(!_0x3a9a8d[_0x690d64(0x1de)])throw new Error(_0x690d64(0x1be)+_0x3a9a8d[_0x690d64(0x177)]+'\x20('+_0x3a9a8d['path']+')');try{const _0x364990=await a0_0x44f065[_0x690d64(0x19b)](_0x5f01d7),_0x46177b=_0x5f01d7+_0x690d64(0x17f)+Date[_0x690d64(0x170)]();await a0_0x44f065['copyFile'](_0x5f01d7,_0x46177b),await a0_0x44f065['unlink'](_0x5f01d7);const _0x1ecd74=this[_0x690d64(0x1e0)]['createRelativePath'](_0x5f01d7,_0xac742f),_0x2aa6ae=this[_0x690d64(0x1e0)][_0x690d64(0x154)](_0x46177b,_0xac742f);return{'success':!![],'action':_0x690d64(0x172),'filePath':_0x1ecd74,'fullPath':_0x5f01d7,'size':_0x364990['size'],'backupPath':_0x2aa6ae,'backupFullPath':_0x46177b,'message':'Deleted\x20'+_0x5f01d7+'\x20(backup\x20created)'};}catch(_0x3e9264){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x5f01d7+':\x20'+_0x3e9264['message']);}}async[a0_0x3635c5(0x15d)](_0x382eb4,_0x4aca65,_0x165a3a){const _0x18b474=a0_0x3635c5,_0x42c247=this['directoryAccessManager']['getWorkingDirectory'](_0x165a3a),_0x298286=this[_0x18b474(0x1c7)](_0x382eb4,_0x42c247),_0x41e65e=this[_0x18b474(0x1c7)](_0x4aca65,_0x42c247),_0x53d270=this['directoryAccessManager'][_0x18b474(0x189)](_0x298286,_0x165a3a);if(!_0x53d270['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x53d270[_0x18b474(0x177)]+'\x20('+_0x53d270['path']+')');const _0x37e820=this[_0x18b474(0x1e0)]['validateWriteAccess'](_0x41e65e,_0x165a3a);if(!_0x37e820[_0x18b474(0x1de)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x37e820['reason']+'\x20('+_0x37e820['path']+')');try{const _0x20981e=await a0_0x44f065[_0x18b474(0x19b)](_0x298286);if(_0x20981e['size']>this[_0x18b474(0x173)])throw new Error(_0x18b474(0x1cc)+_0x20981e[_0x18b474(0x1cf)]+'\x20bytes');const _0x1f791f=a0_0x482eec['dirname'](_0x41e65e);await a0_0x44f065[_0x18b474(0x17c)](_0x1f791f,{'recursive':!![]}),await a0_0x44f065[_0x18b474(0x15d)](_0x298286,_0x41e65e);const _0x4851d0=this['directoryAccessManager'][_0x18b474(0x154)](_0x298286,_0x165a3a),_0x57b403=this['directoryAccessManager']['createRelativePath'](_0x41e65e,_0x165a3a);return{'success':!![],'action':'copy','sourcePath':_0x4851d0,'destPath':_0x57b403,'sourceFullPath':_0x298286,'destFullPath':_0x41e65e,'size':_0x20981e[_0x18b474(0x1cf)],'message':_0x18b474(0x19a)+_0x298286+_0x18b474(0x1db)+_0x41e65e};}catch(_0x240346){throw new Error(_0x18b474(0x1ce)+_0x298286+_0x18b474(0x1db)+_0x41e65e+':\x20'+_0x240346['message']);}}async[a0_0x3635c5(0x156)](_0x2bd134,_0x46b00f,_0xc85670){const _0x225802=a0_0x3635c5,_0x3b137c=this['directoryAccessManager']['getWorkingDirectory'](_0xc85670),_0x56a8e0=this[_0x225802(0x1c7)](_0x2bd134,_0x3b137c),_0x501357=this[_0x225802(0x1c7)](_0x46b00f,_0x3b137c),_0xb844c5=this[_0x225802(0x1e0)]['validateReadAccess'](_0x56a8e0,_0xc85670);if(!_0xb844c5[_0x225802(0x1de)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0xb844c5[_0x225802(0x177)]+'\x20('+_0xb844c5['path']+')');const _0x4ec87d=this[_0x225802(0x1e0)][_0x225802(0x16e)](_0x501357,_0xc85670);if(!_0x4ec87d[_0x225802(0x1de)])throw new Error(_0x225802(0x17e)+_0x4ec87d['reason']+'\x20('+_0x4ec87d[_0x225802(0x1d1)]+')');try{const _0x497061=await a0_0x44f065[_0x225802(0x19b)](_0x56a8e0),_0xff1a51=a0_0x482eec[_0x225802(0x157)](_0x501357);await a0_0x44f065['mkdir'](_0xff1a51,{'recursive':!![]}),await a0_0x44f065['rename'](_0x56a8e0,_0x501357);const _0x2fb9c8=this[_0x225802(0x1e0)]['createRelativePath'](_0x56a8e0,_0xc85670),_0x32639d=this[_0x225802(0x1e0)][_0x225802(0x154)](_0x501357,_0xc85670);return{'success':!![],'action':_0x225802(0x17b),'sourcePath':_0x2fb9c8,'destPath':_0x32639d,'fullSourcePath':_0x56a8e0,'fullDestPath':_0x501357,'size':_0x497061['size'],'message':_0x225802(0x178)+_0x2bd134+'\x20to\x20'+_0x46b00f};}catch(_0x14cea5){throw new Error(_0x225802(0x15b)+_0x2bd134+_0x225802(0x1db)+_0x46b00f+':\x20'+_0x14cea5['message']);}}async['createDirectory'](_0x3497ad,_0x402010){const _0x39c76a=a0_0x3635c5,_0x304962=this[_0x39c76a(0x1e0)][_0x39c76a(0x171)](_0x402010),_0x559201=this['resolvePath'](_0x3497ad,_0x304962),_0x71af56=this[_0x39c76a(0x1e0)][_0x39c76a(0x16e)](_0x559201,_0x402010);if(!_0x71af56['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x71af56['reason']+'\x20('+_0x71af56[_0x39c76a(0x1d1)]+')');try{await a0_0x44f065['mkdir'](_0x559201,{'recursive':!![]});const _0x34424b=this[_0x39c76a(0x1e0)]['createRelativePath'](_0x559201,_0x402010);return{'success':!![],'action':'create-dir','directory':_0x34424b,'fullPath':_0x559201,'message':_0x39c76a(0x1b4)+_0x3497ad};}catch(_0x53692c){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x3497ad+':\x20'+_0x53692c['message']);}}async['listDirectory'](_0x47a404,_0x5c3ffa){const _0x4057c7=a0_0x3635c5,_0x1e1165=this['directoryAccessManager']['getWorkingDirectory'](_0x5c3ffa),_0x2310a9=this['resolvePath'](_0x47a404,_0x1e1165),_0xbe5e3f=this[_0x4057c7(0x1e0)][_0x4057c7(0x189)](_0x2310a9,_0x5c3ffa);if(!_0xbe5e3f['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0xbe5e3f['reason']+'\x20('+_0xbe5e3f['path']+')');try{const _0x58c2b4=await a0_0x44f065['readdir'](_0x2310a9,{'withFileTypes':!![]}),_0x3b78a9=[];for(const _0x279d37 of _0x58c2b4){const _0x3ad26f=a0_0x482eec[_0x4057c7(0x1bb)](_0x2310a9,_0x279d37['name']),_0x5824da=await a0_0x44f065[_0x4057c7(0x19b)](_0x3ad26f);_0x3b78a9['push']({'name':_0x279d37[_0x4057c7(0x1d6)],'type':_0x279d37[_0x4057c7(0x180)]()?_0x4057c7(0x163):_0x4057c7(0x1c0),'size':_0x279d37[_0x4057c7(0x164)]()?_0x5824da[_0x4057c7(0x1cf)]:undefined,'lastModified':_0x5824da[_0x4057c7(0x168)]['toISOString'](),'permissions':_0x5824da['mode'],'isSymlink':_0x279d37[_0x4057c7(0x18e)]()});}const _0x5dc8c4=this['directoryAccessManager'][_0x4057c7(0x154)](_0x2310a9,_0x5c3ffa);return{'success':!![],'action':'list','directory':_0x5dc8c4,'fullPath':_0x2310a9,'contents':_0x3b78a9,'totalItems':_0x3b78a9['length'],'directories':_0x3b78a9['filter'](_0x5a7400=>_0x5a7400[_0x4057c7(0x1c9)]==='directory')[_0x4057c7(0x15f)],'files':_0x3b78a9[_0x4057c7(0x183)](_0x55cc79=>_0x55cc79['type']==='file')['length'],'message':_0x4057c7(0x1d8)+_0x3b78a9['length']+'\x20items\x20in\x20'+_0x47a404};}catch(_0x1b0b2a){throw new Error(_0x4057c7(0x1ad)+_0x47a404+':\x20'+_0x1b0b2a['message']);}}async['checkExists'](_0x27d456,_0x8a312b){const _0x51c7a3=a0_0x3635c5,_0x706ec0=this[_0x51c7a3(0x1e0)]['getWorkingDirectory'](_0x8a312b),_0x1884c0=this['resolvePath'](_0x27d456,_0x706ec0),_0xf67a3=this['directoryAccessManager'][_0x51c7a3(0x189)](_0x1884c0,_0x8a312b);if(!_0xf67a3[_0x51c7a3(0x1de)])throw new Error(_0x51c7a3(0x15c)+_0xf67a3[_0x51c7a3(0x177)]+'\x20('+_0xf67a3[_0x51c7a3(0x1d1)]+')');try{const _0x39a352=await a0_0x44f065['stat'](_0x1884c0),_0x1d529c=this['directoryAccessManager'][_0x51c7a3(0x154)](_0x1884c0,_0x8a312b);return{'success':!![],'action':_0x51c7a3(0x1e1),'filePath':_0x1d529c,'fullPath':_0x1884c0,'exists':!![],'type':_0x39a352[_0x51c7a3(0x180)]()?_0x51c7a3(0x163):'file','message':_0x27d456+'\x20exists\x20as\x20'+(_0x39a352['isDirectory']()?'directory':'file')};}catch(_0x1d7a03){if(_0x1d7a03[_0x51c7a3(0x1d3)]===_0x51c7a3(0x1b2)){const _0x4ffac2=this[_0x51c7a3(0x1e0)][_0x51c7a3(0x154)](_0x1884c0,_0x8a312b);return{'success':!![],'action':'exists','filePath':_0x4ffac2,'fullPath':_0x1884c0,'exists':![],'message':_0x27d456+_0x51c7a3(0x1b5)};}throw new Error(_0x51c7a3(0x1c6)+_0x27d456+':\x20'+_0x1d7a03['message']);}}async[a0_0x3635c5(0x1a7)](_0x2fb242,_0x8998eb){const _0x4d56e0=a0_0x3635c5,_0x462d70=this['directoryAccessManager']['getWorkingDirectory'](_0x8998eb),_0x1567ed=this[_0x4d56e0(0x1c7)](_0x2fb242,_0x462d70),_0xa44aa6=this[_0x4d56e0(0x1e0)][_0x4d56e0(0x189)](_0x1567ed,_0x8998eb);if(!_0xa44aa6[_0x4d56e0(0x1de)])throw new Error('Read\x20access\x20denied:\x20'+_0xa44aa6['reason']+'\x20('+_0xa44aa6[_0x4d56e0(0x1d1)]+')');try{const _0x2344cf=await a0_0x44f065[_0x4d56e0(0x19b)](_0x1567ed),_0x2de3d6=this['directoryAccessManager']['createRelativePath'](_0x1567ed,_0x8998eb);return{'success':!![],'action':_0x4d56e0(0x19d),'filePath':_0x2de3d6,'fullPath':_0x1567ed,'stats':{'size':_0x2344cf['size'],'type':_0x2344cf[_0x4d56e0(0x180)]()?'directory':'file','lastModified':_0x2344cf['mtime']['toISOString'](),'lastAccessed':_0x2344cf['atime']['toISOString'](),'created':_0x2344cf['birthtime']['toISOString'](),'permissions':_0x2344cf['mode'],'isSymlink':_0x2344cf[_0x4d56e0(0x18e)]()},'message':_0x4d56e0(0x1c1)+_0x2fb242};}catch(_0x21417d){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x2fb242+':\x20'+_0x21417d['message']);}}['resolvePath'](_0x10a8b0,_0x35899f){if(a0_0x482eec['isAbsolute'](_0x10a8b0))return a0_0x482eec['normalize'](_0x10a8b0);return a0_0x482eec['resolve'](_0x35899f,_0x10a8b0);}[a0_0x3635c5(0x1af)](_0x2758d8,_0x4a9aa9,_0x2f2c67=a0_0x3635c5(0x1ca)){const _0x5792b4=a0_0x3635c5,_0x1fbd92=_0x2f2c67==='write'?this['directoryAccessManager'][_0x5792b4(0x16e)](_0x2758d8,_0x4a9aa9):this[_0x5792b4(0x1e0)][_0x5792b4(0x189)](_0x2758d8,_0x4a9aa9);if(!_0x1fbd92['allowed'])throw new Error(_0x2f2c67+'\x20access\x20denied:\x20'+_0x1fbd92[_0x5792b4(0x177)]+'\x20('+_0x1fbd92[_0x5792b4(0x1d1)]+')');return _0x1fbd92;}[a0_0x3635c5(0x159)](_0x5b1cb9){const _0x13b476=a0_0x3635c5,_0x42827b=a0_0x482eec[_0x13b476(0x191)](_0x5b1cb9)['toLowerCase']();if(this['blockedExtensions'][_0x13b476(0x17a)](_0x42827b))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x13b476(0x17a)](_0x42827b))return![];return!![];}[a0_0x3635c5(0x1b8)](_0x13f950,_0x3824d3,_0x31331a){const _0x220ea7=a0_0x3635c5,_0x1275b0={'timestamp':new Date()['toISOString'](),'agentId':_0x31331a,'action':_0x13f950['type'],'filePath':_0x13f950[_0x220ea7(0x1a5)]||_0x13f950[_0x220ea7(0x19c)]||_0x13f950['directory'],'success':_0x3824d3[_0x220ea7(0x16f)],'size':_0x3824d3[_0x220ea7(0x1cf)]};this[_0x220ea7(0x1d2)][_0x220ea7(0x160)](_0x1275b0),this[_0x220ea7(0x1d2)][_0x220ea7(0x15f)]>0xc8&&(this['operationHistory']=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x1d7969=a0_0x3635c5;return['read','write',_0x1d7969(0x1a6),_0x1d7969(0x172),_0x1d7969(0x194),'move','create-dir',_0x1d7969(0x1b1),_0x1d7969(0x1e1),_0x1d7969(0x19d)];}['getParameterSchema'](){const _0x29ce0e=a0_0x3635c5;return{'type':'object','properties':{'actions':{'type':_0x29ce0e(0x18a),'minItems':0x1,'items':{'type':_0x29ce0e(0x15a),'properties':{'type':{'type':'string','enum':this[_0x29ce0e(0x18c)]()},'filePath':{'type':_0x29ce0e(0x182)},'outputPath':{'type':_0x29ce0e(0x182)},'sourcePath':{'type':_0x29ce0e(0x182)},'destPath':{'type':'string'},'directory':{'type':_0x29ce0e(0x182)},'content':{'type':_0x29ce0e(0x182)},'encoding':{'type':_0x29ce0e(0x182)},'createDirs':{'type':_0x29ce0e(0x1b9)}},'required':[_0x29ce0e(0x1c9)]}}},'required':['actions']};}['getOperationHistory'](_0x1ec591=null){const _0x1a1bc3=a0_0x3635c5;if(_0x1ec591)return this[_0x1a1bc3(0x1d2)][_0x1a1bc3(0x183)](_0x5eb8ab=>_0x5eb8ab[_0x1a1bc3(0x1dd)]===_0x1ec591);return[...this['operationHistory']];}}export default FileSystemTool;
|