@loxia-labs/loxia-autopilot-one 1.0.6 → 1.0.8
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 +2 -2
- 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 +1 -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
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-BmKxmRe3.css +1 -0
- package/web-ui/build/static/{index-CX8ZfpGw.js → index-BzXbDs8z.js} +69 -69
- package/web-ui/build/static/index-Dwg_JrlO.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4d676f=a0_0xbc45;(function(_0x118d32,_0x518bac){const _0x58829e=a0_0xbc45,_0x166c86=_0x118d32();while(!![]){try{const _0x3a12f4=parseInt(_0x58829e(0x130))/0x1*(-parseInt(_0x58829e(0xca))/0x2)+parseInt(_0x58829e(0xd9))/0x3*(parseInt(_0x58829e(0xef))/0x4)+-parseInt(_0x58829e(0x121))/0x5+-parseInt(_0x58829e(0xdc))/0x6*(parseInt(_0x58829e(0xc8))/0x7)+parseInt(_0x58829e(0x136))/0x8+-parseInt(_0x58829e(0xff))/0x9*(parseInt(_0x58829e(0xb9))/0xa)+parseInt(_0x58829e(0xee))/0xb*(parseInt(_0x58829e(0xda))/0xc);if(_0x3a12f4===_0x518bac)break;else _0x166c86['push'](_0x166c86['shift']());}catch(_0x3691d3){_0x166c86['push'](_0x166c86['shift']());}}}(a0_0x4221,0x51469));import{promises as a0_0xea59a8}from'fs';import a0_0x4dd6b6 from'path';import{exec as a0_0x7adf81}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x55c15f from'../utilities/tagParser.js';const exec=promisify(a0_0x7adf81),RESOLVER_CONFIG={'DEFAULT_MODE':'check','VALID_MODES':['check','fix',a0_0x4d676f(0x11a)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x4d676f(0xde),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x4d676f(0xd5)};export class DependencyResolverTool extends BaseTool{[a0_0x4d676f(0x135)](){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'](_0x308f82){const _0x3df02b=a0_0x4d676f;if(typeof _0x308f82==='object'&&_0x308f82!==null)return{'path':_0x308f82['path']||'.','mode':_0x308f82[_0x3df02b(0x112)]||RESOLVER_CONFIG[_0x3df02b(0xc5)],'includeDev':_0x308f82[_0x3df02b(0xfc)]!==undefined?_0x308f82[_0x3df02b(0xfc)]:!![]};if(typeof _0x308f82==='string'){const _0x1a4bc7=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x38842a=_0x1a4bc7[_0x3df02b(0xc9)](_0x308f82);if(_0x38842a){const _0x74d67d=_0x38842a[0x1],_0x5ec7f1=_0x38842a[0x2],_0xd08d96=/path=["']([^"']*)["']/i[_0x3df02b(0xc9)](_0x74d67d),_0x338995=/mode=["']([^"']*)["']/i[_0x3df02b(0xc9)](_0x74d67d),_0x5b15d7=/include-dev=["']([^"']*)["']/i[_0x3df02b(0xc9)](_0x74d67d),_0x291a0e=/<path>(.*?)<\/path>/i,_0x4fadee=_0x291a0e[_0x3df02b(0xc9)](_0x5ec7f1),_0x55c3cb=/<mode>(.*?)<\/mode>/i,_0x35ec96=_0x55c3cb[_0x3df02b(0xc9)](_0x5ec7f1),_0x9a2e3a=/<include-dev>(.*?)<\/include-dev>/i,_0x4d0808=_0x9a2e3a[_0x3df02b(0xc9)](_0x5ec7f1),_0x2d8747=(_0x4fadee?_0x4fadee[0x1]['trim']():null)||(_0xd08d96?_0xd08d96[0x1]:'.'),_0x52a4c1=(_0x35ec96?_0x35ec96[0x1]['trim']():null)||(_0x338995?_0x338995[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x3aee4a=(_0x4d0808?_0x4d0808[0x1]['trim']():null)||(_0x5b15d7?_0x5b15d7[0x1]:'true');return{'path':_0x2d8747,'mode':_0x52a4c1,'includeDev':this['_parseBoolean'](_0x3aee4a,!![])};}const _0x3fa9ae=/\[resolve\s+([^\]]*)\]/i,_0xd4c146=_0x3fa9ae['exec'](_0x308f82);if(_0xd4c146){const _0x435ce7=_0xd4c146[0x1],_0xd14877=/path=["']([^"']*)["']/i[_0x3df02b(0xc9)](_0x435ce7),_0x4e04db=/mode=["']([^"']*)["']/i['exec'](_0x435ce7),_0x46cd08=/include-dev=["']([^"']*)["']/i['exec'](_0x435ce7);return{'path':_0xd14877?_0xd14877[0x1]:'.','mode':_0x4e04db?_0x4e04db[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0x46cd08?_0x46cd08[0x1]:_0x3df02b(0x12f),!![])};}throw new Error(_0x3df02b(0xe6));}throw new Error(_0x3df02b(0x113));}[a0_0x4d676f(0xbc)](_0x3c7f75,defaultValue=![]){const _0x19414a=a0_0x4d676f;if(_0x3c7f75===undefined||_0x3c7f75===null)return defaultValue;if(typeof _0x3c7f75==='boolean')return _0x3c7f75;if(typeof _0x3c7f75===_0x19414a(0x11e))return _0x3c7f75['toLowerCase']()==='true'||_0x3c7f75==='1';return defaultValue;}['_validateParameters'](_0x5469c4){const _0x35388a=a0_0x4d676f;if(!_0x5469c4||typeof _0x5469c4!==_0x35388a(0x134))throw new Error(_0x35388a(0x110));if(_0x5469c4[_0x35388a(0x122)]&&typeof _0x5469c4['path']!==_0x35388a(0x11e))throw new Error('path\x20must\x20be\x20a\x20string');if(_0x5469c4['mode']&&!RESOLVER_CONFIG[_0x35388a(0x119)]['includes'](_0x5469c4[_0x35388a(0x112)]))throw new Error(_0x35388a(0x11b)+_0x5469c4[_0x35388a(0x112)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x5469c4['includeDev']!==undefined&&typeof _0x5469c4[_0x35388a(0xfc)]!==_0x35388a(0xea))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0x4d676f(0xce)](_0x21d6d3,_0x1cde1b){const _0x6e63d1=a0_0x4d676f,{projectDir:_0xe2181d,directoryAccess:_0x4a3f93}=_0x1cde1b;let _0x322c26=_0xe2181d||process['cwd']();_0x4a3f93&&_0x4a3f93[_0x6e63d1(0xec)]&&(_0x322c26=_0x4a3f93[_0x6e63d1(0xec)]);const _0x3aff16=a0_0x4dd6b6[_0x6e63d1(0xcb)](_0x21d6d3)?a0_0x4dd6b6[_0x6e63d1(0xd8)](_0x21d6d3):a0_0x4dd6b6[_0x6e63d1(0xd8)](a0_0x4dd6b6[_0x6e63d1(0xe7)](_0x322c26,_0x21d6d3)),_0x2c58f3=a0_0x4dd6b6['normalize'](_0x322c26);if(!_0x3aff16[_0x6e63d1(0xc4)](_0x2c58f3))throw new Error(_0x6e63d1(0xf8)+_0x21d6d3+'\x20resolves\x20outside\x20working\x20directory');return _0x3aff16;}async['_createBackup'](_0xe54805){const _0x99e159=a0_0x4d676f;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x3a5db4=_0xe54805+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0xea59a8[_0x99e159(0xc7)](_0xe54805,_0x3a5db4),this['logger']?.['info']('Created\x20backup',{'backupPath':_0x3a5db4}),_0x3a5db4;}catch(_0x37d16c){return this['logger']?.[_0x99e159(0xc2)]('Failed\x20to\x20create\x20backup',{'error':_0x37d16c['message']}),null;}}async[a0_0x4d676f(0x10a)](_0x41139e){const _0x2e2456=a0_0x4d676f,_0x5450e1=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x41139e);for(let _0x31c0e3=0x1;_0x31c0e3<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x31c0e3++){try{const _0x36a683=new AbortController(),_0x470755=setTimeout(()=>_0x36a683[_0x2e2456(0x129)](),RESOLVER_CONFIG[_0x2e2456(0x12a)]),_0x43bdae=await fetch(_0x5450e1,{'signal':_0x36a683['signal']});clearTimeout(_0x470755);if(!_0x43bdae['ok']){if(_0x43bdae[_0x2e2456(0xfd)]===0x194)return this['logger']?.['warn'](_0x2e2456(0xd6)+_0x41139e),null;throw new Error('HTTP\x20'+_0x43bdae['status']+':\x20'+_0x43bdae['statusText']);}const _0x5e1447=await _0x43bdae['json']();if(!_0x5e1447||typeof _0x5e1447!==_0x2e2456(0x134)||!_0x5e1447['dist-tags'])throw new Error(_0x2e2456(0xf2));return _0x5e1447;}catch(_0x315cc1){if(_0x31c0e3<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x2e2456(0xf1)]?.['debug'](_0x2e2456(0xe5)+_0x31c0e3+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+_0x2e2456(0xb6)+_0x41139e),await new Promise(_0x4ae213=>setTimeout(_0x4ae213,RESOLVER_CONFIG['RETRY_DELAY']*_0x31c0e3));else return this['logger']?.[_0x2e2456(0x105)](_0x2e2456(0x111)+_0x41139e+':',_0x315cc1[_0x2e2456(0xb3)]),null;}}return null;}async[a0_0x4d676f(0x11f)](_0x304483,_0x5e7c36){const _0x471672=a0_0x4d676f,_0x264c4d=await this[_0x471672(0x10a)](_0x304483);if(!_0x264c4d)return null;const _0x12bccc=_0x264c4d['dist-tags']?.['latest'];if(!_0x12bccc)return null;const _0x58cc51=this[_0x471672(0x12d)](_0x12bccc);if(!_0x58cc51)return null;if(this[_0x471672(0xe3)](_0x5e7c36)){const _0x59a41e=this['_parseComplexRange'](_0x5e7c36),_0x438749=this[_0x471672(0x12b)](_0x59a41e,_0x58cc51);if(_0x438749)return _0x12bccc;return null;}const _0x4d2f29=this['_parseVersionRange'](_0x5e7c36);if(!_0x4d2f29)return null;const _0x5af244=this[_0x471672(0xbe)](_0x4d2f29,_0x58cc51);if(_0x5af244)return _0x4d2f29['prefix']+_0x12bccc;return null;}[a0_0x4d676f(0x12d)](_0x95fffa){const _0x2d2df0=a0_0x4d676f,_0x56aae8=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x3d1c76=_0x56aae8[_0x2d2df0(0xc9)](_0x95fffa);if(!_0x3d1c76){const _0x6ced9b=_0x95fffa[_0x2d2df0(0xcf)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x6ced9b)return{'major':parseInt(_0x6ced9b[0x1],0xa),'minor':parseInt(_0x6ced9b[0x2],0xa),'patch':parseInt(_0x6ced9b[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x3d1c76[0x1],0xa),'minor':parseInt(_0x3d1c76[0x2],0xa),'patch':parseInt(_0x3d1c76[0x3],0xa),'prerelease':_0x3d1c76[0x4]?_0x3d1c76[0x4][_0x2d2df0(0x125)]('.'):null,'build':_0x3d1c76[0x5]||null};}[a0_0x4d676f(0xba)](_0x2e5a7e,_0x214e64){const _0x5b9940=a0_0x4d676f;if(_0x2e5a7e[_0x5b9940(0x114)]!==_0x214e64['major'])return _0x2e5a7e[_0x5b9940(0x114)]-_0x214e64[_0x5b9940(0x114)];if(_0x2e5a7e[_0x5b9940(0xdf)]!==_0x214e64[_0x5b9940(0xdf)])return _0x2e5a7e['minor']-_0x214e64[_0x5b9940(0xdf)];if(_0x2e5a7e['patch']!==_0x214e64[_0x5b9940(0xeb)])return _0x2e5a7e[_0x5b9940(0xeb)]-_0x214e64[_0x5b9940(0xeb)];if(!_0x2e5a7e['prerelease']&&!_0x214e64[_0x5b9940(0xb5)])return 0x0;if(!_0x2e5a7e[_0x5b9940(0xb5)]&&_0x214e64[_0x5b9940(0xb5)])return 0x1;if(_0x2e5a7e[_0x5b9940(0xb5)]&&!_0x214e64[_0x5b9940(0xb5)])return-0x1;return this[_0x5b9940(0xfe)](_0x2e5a7e[_0x5b9940(0xb5)],_0x214e64['prerelease']);}['_comparePrerelease'](_0x5788b3,_0x1b9dae){const _0x4ed764=a0_0x4d676f,_0x51c69a=Math[_0x4ed764(0xbf)](_0x5788b3['length'],_0x1b9dae['length']);for(let _0x3934ea=0x0;_0x3934ea<_0x51c69a;_0x3934ea++){if(_0x3934ea>=_0x5788b3[_0x4ed764(0xfa)])return-0x1;if(_0x3934ea>=_0x1b9dae[_0x4ed764(0xfa)])return 0x1;const _0x5b6d69=_0x5788b3[_0x3934ea],_0x2494f8=_0x1b9dae[_0x3934ea],_0x479328=/^\d+$/[_0x4ed764(0x108)](_0x5b6d69)?parseInt(_0x5b6d69,0xa):null,_0x3c8ead=/^\d+$/['test'](_0x2494f8)?parseInt(_0x2494f8,0xa):null;if(_0x479328!==null&&_0x3c8ead!==null){if(_0x479328!==_0x3c8ead)return _0x479328-_0x3c8ead;continue;}if(_0x479328!==null&&_0x3c8ead===null)return-0x1;if(_0x479328===null&&_0x3c8ead!==null)return 0x1;if(_0x5b6d69<_0x2494f8)return-0x1;if(_0x5b6d69>_0x2494f8)return 0x1;}return 0x0;}['_parseVersionRange'](_0x36ac04){const _0x119861=a0_0x4d676f,_0x23a0d1=_0x36ac04[_0x119861(0x109)](),_0x562978=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x3a90fd=_0x562978[_0x119861(0xc9)](_0x23a0d1);if(_0x3a90fd){const _0x16ebf4=_0x3a90fd[0x1],_0x44158d=_0x3a90fd[0x3],_0x4edf45=_0x3a90fd[0x5],_0x5e2f62=_0x16ebf4==='*'||_0x16ebf4['toLowerCase']()==='x'||_0x44158d===undefined||_0x44158d==='*'||_0x44158d[_0x119861(0xc6)]()==='x'||_0x4edf45===undefined||_0x4edf45==='*'||_0x4edf45['toLowerCase']()==='x';if(_0x5e2f62)return{'prefix':'','operator':'x-range','major':_0x16ebf4==='*'||_0x16ebf4[_0x119861(0xc6)]()==='x'?null:parseInt(_0x16ebf4,0xa),'minor':!_0x44158d||_0x44158d==='*'||_0x44158d['toLowerCase']()==='x'?null:parseInt(_0x44158d,0xa),'patch':!_0x4edf45||_0x4edf45==='*'||_0x4edf45['toLowerCase']()==='x'?null:parseInt(_0x4edf45,0xa),'original':_0x36ac04};}let _0x1e7212='',_0x3dea0a=_0x23a0d1,_0x4a128f='=';if(_0x23a0d1[_0x119861(0xc4)]('^'))_0x1e7212='^',_0x3dea0a=_0x23a0d1[_0x119861(0xcd)](0x1),_0x4a128f='^';else{if(_0x23a0d1[_0x119861(0xc4)]('~'))_0x1e7212='~',_0x3dea0a=_0x23a0d1['slice'](0x1),_0x4a128f='~';else{if(_0x23a0d1[_0x119861(0xc4)]('>='))_0x1e7212='>=',_0x3dea0a=_0x23a0d1[_0x119861(0xcd)](0x2)['trim'](),_0x4a128f='>=';else{if(_0x23a0d1[_0x119861(0xc4)]('>'))_0x1e7212='>',_0x3dea0a=_0x23a0d1['slice'](0x1)[_0x119861(0x109)](),_0x4a128f='>';else{if(_0x23a0d1['startsWith']('<='))_0x1e7212='<=',_0x3dea0a=_0x23a0d1['slice'](0x2)['trim'](),_0x4a128f='<=';else _0x23a0d1[_0x119861(0xc4)]('<')&&(_0x1e7212='<',_0x3dea0a=_0x23a0d1[_0x119861(0xcd)](0x1)['trim'](),_0x4a128f='<');}}}}const _0x202107=this[_0x119861(0x12d)](_0x3dea0a);if(!_0x202107)return null;return{'prefix':_0x1e7212,'operator':_0x4a128f,'major':_0x202107[_0x119861(0x114)],'minor':_0x202107[_0x119861(0xdf)],'patch':_0x202107[_0x119861(0xeb)],'prerelease':_0x202107['prerelease'],'build':_0x202107[_0x119861(0xc0)],'original':_0x36ac04};}[a0_0x4d676f(0xbe)](_0x4ab6b2,_0xec6f6c){const _0x156dff=a0_0x4d676f,_0x7fa71c={'major':_0x4ab6b2['major'],'minor':_0x4ab6b2['minor'],'patch':_0x4ab6b2[_0x156dff(0xeb)],'prerelease':_0x4ab6b2['prerelease']||null,'build':_0x4ab6b2[_0x156dff(0xc0)]||null};switch(_0x4ab6b2[_0x156dff(0xf4)]){case'^':return this['_isCaretUpdateAvailable'](_0x7fa71c,_0xec6f6c);case'~':return this[_0x156dff(0xbd)](_0x7fa71c,_0xec6f6c);case'>=':case'>':return this[_0x156dff(0x116)](_0x7fa71c,_0xec6f6c);case'<':case'<=':return this[_0x156dff(0xe1)](_0x4ab6b2,_0xec6f6c);case _0x156dff(0xed):return this[_0x156dff(0xb2)](_0x4ab6b2,_0xec6f6c);case'=':default:return this['_isExactUpdateAvailable'](_0x7fa71c,_0xec6f6c);}}['_isCaretUpdateAvailable'](_0x5260f5,_0x45e0b7){const _0x2fbd7c=a0_0x4d676f,_0x13891a=this[_0x2fbd7c(0xba)](_0x45e0b7,_0x5260f5);if(_0x13891a<=0x0)return![];if(_0x5260f5[_0x2fbd7c(0x114)]===0x0&&_0x5260f5[_0x2fbd7c(0xdf)]===0x0)return _0x45e0b7[_0x2fbd7c(0x114)]===0x0&&_0x45e0b7['minor']===0x0;if(_0x5260f5['major']===0x0)return _0x45e0b7[_0x2fbd7c(0x114)]===0x0&&_0x45e0b7['minor']===_0x5260f5[_0x2fbd7c(0xdf)];return _0x45e0b7['major']===_0x5260f5[_0x2fbd7c(0x114)];}[a0_0x4d676f(0xbd)](_0x4e11bd,_0x25c439){const _0x56479a=a0_0x4d676f,_0xa8e8b=this[_0x56479a(0xba)](_0x25c439,_0x4e11bd);if(_0xa8e8b<=0x0)return![];return _0x25c439['major']===_0x4e11bd['major']&&_0x25c439['minor']===_0x4e11bd['minor'];}[a0_0x4d676f(0x116)](_0x135c40,_0x3bc903){const _0x547ada=this['_compareVersions'](_0x3bc903,_0x135c40);return _0x547ada>0x0;}['_isExactUpdateAvailable'](_0xcf2d06,_0xe40541){const _0xcfd1b9=a0_0x4d676f;return this[_0xcfd1b9(0x116)](_0xcf2d06,_0xe40541);}['_isLessThanUpdateAvailable'](_0x264a21,_0x1ad97d){const _0xbdc0ea=a0_0x4d676f,_0x28e91d=this[_0xbdc0ea(0xba)](_0x1ad97d,_0x264a21);if(_0x264a21['operator']==='<')return _0x28e91d<0x0;else{if(_0x264a21['operator']==='<=')return _0x28e91d<=0x0;}return![];}[a0_0x4d676f(0xb2)](_0x5412d2,_0x3ed9c2){const _0x167144=a0_0x4d676f;if(_0x5412d2[_0x167144(0x114)]!==null&&_0x3ed9c2[_0x167144(0x114)]!==_0x5412d2[_0x167144(0x114)])return![];if(_0x5412d2['minor']!==null&&_0x3ed9c2['minor']!==_0x5412d2[_0x167144(0xdf)])return![];if(_0x5412d2[_0x167144(0xeb)]!==null&&_0x3ed9c2[_0x167144(0xeb)]!==_0x5412d2[_0x167144(0xeb)])return![];return!![];}['_isComplexRange'](_0x3671bf){const _0x521c0e=a0_0x4d676f;if(_0x3671bf['includes']('||'))return!![];const _0x554615=_0x3671bf[_0x521c0e(0x109)]();if(_0x554615[_0x521c0e(0xc4)]('^')||_0x554615[_0x521c0e(0xc4)]('~'))return![];const _0x3aa3ab=_0x554615[_0x521c0e(0x125)](/\s+/)[_0x521c0e(0xe2)](_0xea438c=>_0xea438c['length']>0x0);if(_0x3aa3ab['length']>0x1){const _0x3dc214=/^(>=?|<=?|\^|~|[0-9])/;return _0x3aa3ab[_0x521c0e(0xf0)](_0x588a27=>_0x3dc214[_0x521c0e(0x108)](_0x588a27));}return![];}['_parseComplexRange'](_0x1d03ff){const _0x1c6f11=a0_0x4d676f;if(_0x1d03ff['includes']('||')){const _0x224987=_0x1d03ff[_0x1c6f11(0x125)]('||')[_0x1c6f11(0xd4)](_0x1a128=>_0x1a128['trim']());return{'type':'or','ranges':_0x224987['map'](_0x4ed0c4=>this['_parseComplexRange'](_0x4ed0c4))};}const _0x1d8883=_0x1d03ff['trim']()[_0x1c6f11(0x125)](/\s+/)['filter'](_0x49f97b=>_0x49f97b[_0x1c6f11(0xfa)]>0x0);if(_0x1d8883['length']>0x1)return{'type':_0x1c6f11(0x106),'ranges':_0x1d8883['map'](_0x5d3ed8=>this[_0x1c6f11(0x10b)](_0x5d3ed8))};return{'type':_0x1c6f11(0xd3),'range':this['_parseVersionRange'](_0x1d03ff)};}[a0_0x4d676f(0xdb)](_0x2cc18d,_0x38fbb9){if(!_0x2cc18d||!_0x38fbb9)return![];return this['_isUpdateAvailable'](_0x2cc18d,_0x38fbb9);}['_satisfiesComplexRange'](_0x143a6f,_0x29c5ae){const _0x19a9b1=a0_0x4d676f;if(!_0x143a6f||!_0x29c5ae)return![];switch(_0x143a6f['type']){case'simple':return this['_satisfiesRange'](_0x143a6f[_0x19a9b1(0x133)],_0x29c5ae);case'and':return _0x143a6f[_0x19a9b1(0x128)][_0x19a9b1(0xf0)](_0x54e14f=>this['_satisfiesRange'](_0x54e14f,_0x29c5ae));case'or':return _0x143a6f[_0x19a9b1(0x128)]['some'](_0x528c0f=>this[_0x19a9b1(0x12b)](_0x528c0f,_0x29c5ae));default:return![];}}async['_checkDependencies'](_0x9638bb){const _0x1f810a=a0_0x4d676f,_0x10e0dd={},_0x546a89=Object['entries'](_0x9638bb);for(let _0x440dda=0x0;_0x440dda<_0x546a89[_0x1f810a(0xfa)];_0x440dda+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x597840=_0x546a89[_0x1f810a(0xcd)](_0x440dda,_0x440dda+RESOLVER_CONFIG[_0x1f810a(0x102)]),_0x400bb8=_0x597840[_0x1f810a(0xd4)](async([_0x1477ec,_0x49bbb6])=>{const _0x583a53=_0x1f810a;try{const _0x1cc799=await this[_0x583a53(0x11f)](_0x1477ec,_0x49bbb6);if(_0x1cc799){const _0x5e2b05=_0x49bbb6[_0x583a53(0xcf)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x1477ec,'newVersion':''+_0x5e2b05+_0x1cc799,'oldVersion':_0x49bbb6};}return null;}catch(_0x554363){return this[_0x583a53(0xf1)]?.[_0x583a53(0x105)]('Error\x20checking\x20'+_0x1477ec+':',_0x554363['message']),null;}}),_0x380654=await Promise[_0x1f810a(0x118)](_0x400bb8);_0x380654[_0x1f810a(0xd0)](_0x5dc219=>{_0x5dc219&&(_0x10e0dd[_0x5dc219['pkg']]=_0x5dc219['newVersion']);});}return _0x10e0dd;}async['execute'](_0x25aeac,_0x1443b9={}){const _0x3ab4a2=a0_0x4d676f;try{this['_validateParameters'](_0x25aeac);const {path:_0x52e7dc,mode:_0x316cd8,includeDev:_0x16f6f4}=_0x25aeac,{projectDir:_0x5f4f57,agentId:_0x2e85b3,directoryAccess:_0x2e3d1e}=_0x1443b9,_0xaf32ec=this['_resolveAndValidatePath'](_0x52e7dc,_0x1443b9),_0x9f8c58=a0_0x4dd6b6[_0x3ab4a2(0xe7)](_0xaf32ec,_0x3ab4a2(0xd7));this[_0x3ab4a2(0xf1)]?.[_0x3ab4a2(0x10f)]('Dependency\x20resolver\x20executing',{'mode':_0x316cd8,'resolvedPath':_0xaf32ec,'includeDev':_0x16f6f4,'agentId':_0x2e85b3});const _0x3b4acd=[];_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0x127)+_0xaf32ec),_0x3b4acd['push'](_0x3ab4a2(0x124)+_0x316cd8);try{await a0_0xea59a8[_0x3ab4a2(0x12e)](_0x9f8c58);}catch{return{'success':![],'error':_0x3ab4a2(0xbb)+_0x9f8c58,'output':_0x3b4acd[_0x3ab4a2(0xe7)]('\x0a')};}_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0xd2));const _0x32570e=await a0_0xea59a8['readFile'](_0x9f8c58,_0x3ab4a2(0x120)),_0x5326d0=JSON[_0x3ab4a2(0xe8)](_0x32570e),_0x2babb6={..._0x5326d0[_0x3ab4a2(0xc1)]};_0x16f6f4&&_0x5326d0[_0x3ab4a2(0x11d)]&&Object[_0x3ab4a2(0xe9)](_0x2babb6,_0x5326d0['devDependencies']);if(Object[_0x3ab4a2(0x11c)](_0x2babb6)['length']===0x0)return{'success':!![],'mode':_0x316cd8,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x3b4acd[_0x3ab4a2(0xe7)]('\x0a')};if(Object['keys'](_0x2babb6)[_0x3ab4a2(0xfa)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object['keys'](_0x2babb6)[_0x3ab4a2(0xfa)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x3b4acd['join']('\x0a')};_0x3b4acd['push'](_0x3ab4a2(0x132)+Object[_0x3ab4a2(0x11c)](_0x2babb6)[_0x3ab4a2(0xfa)]+'\x20dependencies\x20to\x20check'),_0x3b4acd['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0xec6407=await this['_checkDependencies'](_0x2babb6);_0x3b4acd[_0x3ab4a2(0xdd)]('\x0a✅\x20Registry\x20check\x20complete'),_0x3b4acd['push']('📈\x20Updates\x20available:\x20'+Object['keys'](_0xec6407)['length']);if(Object['keys'](_0xec6407)[_0x3ab4a2(0xfa)]>0x0){_0x3b4acd['push'](_0x3ab4a2(0x131));for(const [_0x4c3ac0,_0x5b83da]of Object[_0x3ab4a2(0x104)](_0xec6407)){const _0x3682aa=_0x2babb6[_0x4c3ac0];_0x3b4acd[_0x3ab4a2(0xdd)]('\x20\x20•\x20'+_0x4c3ac0+':\x20'+_0x3682aa+_0x3ab4a2(0xf5)+_0x5b83da);}}else _0x3b4acd['push'](_0x3ab4a2(0x103));if(_0x316cd8==='check')return Object['keys'](_0xec6407)['length']>0x0&&_0x3b4acd['push'](_0x3ab4a2(0x115)),{'success':!![],'mode':_0x3ab4a2(0xb7),'message':_0x3ab4a2(0x101)+Object[_0x3ab4a2(0x11c)](_0xec6407)['length']+_0x3ab4a2(0x12c),'statistics':{'totalDependencies':Object['keys'](_0x2babb6)['length'],'updatesAvailable':Object['keys'](_0xec6407)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0xec6407,'output':_0x3b4acd[_0x3ab4a2(0xe7)]('\x0a')};if((_0x316cd8==='fix'||_0x316cd8==='auto')&&Object['keys'](_0xec6407)['length']>0x0){_0x3b4acd['push'](_0x3ab4a2(0x10d));const _0x601057=await this[_0x3ab4a2(0xf7)](_0x9f8c58);_0x601057?_0x3b4acd['push'](_0x3ab4a2(0x10c)+a0_0x4dd6b6[_0x3ab4a2(0xc3)](_0x601057)):_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0xf3));_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0x107));for(const [_0x1d20c0,_0x1c6632]of Object['entries'](_0xec6407)){_0x5326d0[_0x3ab4a2(0xc1)]?.[_0x1d20c0]&&(_0x5326d0[_0x3ab4a2(0xc1)][_0x1d20c0]=_0x1c6632),_0x5326d0['devDependencies']?.[_0x1d20c0]&&(_0x5326d0['devDependencies'][_0x1d20c0]=_0x1c6632);}await a0_0xea59a8[_0x3ab4a2(0x10e)](_0x9f8c58,JSON[_0x3ab4a2(0xe0)](_0x5326d0,null,0x2)+'\x0a'),_0x3b4acd['push'](_0x3ab4a2(0xcc)),_0x3b4acd['push'](_0x3ab4a2(0x100));try{const {stdout:_0x552b56,stderr:_0x159053}=await exec(_0x3ab4a2(0xb1),{'cwd':_0xaf32ec,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x552b56){const _0x32edc9=_0x552b56[_0x3ab4a2(0x109)]()[_0x3ab4a2(0x125)]('\x0a');_0x32edc9[_0x3ab4a2(0xfa)]>0xa?_0x3b4acd['push']('\x20\x20'+_0x32edc9[_0x3ab4a2(0xcd)](-0x5)['join'](_0x3ab4a2(0xe4))):_0x3b4acd['push']('\x20\x20'+_0x552b56['trim']());}_0x159053&&!_0x159053[_0x3ab4a2(0xf6)](_0x3ab4a2(0x123))&&_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0x117)+_0x159053[_0x3ab4a2(0x109)]());_0x3b4acd['push']('✅\x20Installation\x20complete');try{const {stdout:_0x28bef1}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0xaf32ec,'timeout':0x7530}),_0x3162df=JSON[_0x3ab4a2(0xe8)](_0x28bef1);if(_0x3162df[_0x3ab4a2(0xc1)]){_0x3b4acd['push'](_0x3ab4a2(0xfb));for(const _0x48f352 of Object[_0x3ab4a2(0x11c)](_0xec6407)){_0x3162df['dependencies'][_0x48f352]&&_0x3b4acd[_0x3ab4a2(0xdd)](_0x3ab4a2(0xb0)+_0x48f352+'@'+_0x3162df['dependencies'][_0x48f352][_0x3ab4a2(0xd1)]);}}}catch(_0x4364f1){this[_0x3ab4a2(0xf1)]?.['debug']('npm\x20ls\x20failed:',_0x4364f1['message']);}return{'success':!![],'mode':_0x316cd8,'message':'Successfully\x20updated\x20'+Object[_0x3ab4a2(0x11c)](_0xec6407)['length']+_0x3ab4a2(0xf9),'statistics':{'totalDependencies':Object[_0x3ab4a2(0x11c)](_0x2babb6)[_0x3ab4a2(0xfa)],'updatesAvailable':Object[_0x3ab4a2(0x11c)](_0xec6407)['length'],'updatesApplied':Object[_0x3ab4a2(0x11c)](_0xec6407)[_0x3ab4a2(0xfa)],'errors':0x0},'updates':_0xec6407,'backupCreated':_0x601057!==null,'backupPath':_0x601057,'output':_0x3b4acd[_0x3ab4a2(0xe7)]('\x0a')};}catch(_0x5bbff3){_0x3b4acd['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x5bbff3['message']);if(_0x601057)try{await a0_0xea59a8[_0x3ab4a2(0xc7)](_0x601057,_0x9f8c58),_0x3b4acd[_0x3ab4a2(0xdd)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x2063e1){_0x3b4acd[_0x3ab4a2(0xdd)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x316cd8,'error':'npm\x20install\x20failed:\x20'+_0x5bbff3[_0x3ab4a2(0xb3)],'statistics':{'totalDependencies':Object[_0x3ab4a2(0x11c)](_0x2babb6)['length'],'updatesAvailable':Object[_0x3ab4a2(0x11c)](_0xec6407)[_0x3ab4a2(0xfa)],'updatesApplied':0x0,'errors':0x1},'updates':_0xec6407,'backupCreated':_0x601057!==null,'output':_0x3b4acd['join']('\x0a')};}}else{if(_0x316cd8===_0x3ab4a2(0x126)||_0x316cd8==='auto')return _0x3b4acd['push'](_0x3ab4a2(0xb4)),{'success':!![],'mode':_0x316cd8,'message':_0x3ab4a2(0xb8),'statistics':{'totalDependencies':Object[_0x3ab4a2(0x11c)](_0x2babb6)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x3b4acd['join']('\x0a')};}}catch(_0x3f550a){return this['logger']?.[_0x3ab4a2(0x105)]('Dependency\x20resolver\x20error:',_0x3f550a),{'success':![],'error':_0x3f550a['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3f550a['message']};}}}function a0_0x4221(){const _0x18fa14=['C3rHCNrZv2L0Aa','revgqvvmvf9nt0rf','Dg9mB3DLCKnHC2u','y29WEuzPBgu','nZDVsK1Tv2q','zxHLyW','nLLwyuTkza','AxnbyNnVBhv0zq','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','C2XPy2u','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','Bwf0y2G','zM9YrwfJAa','DMvYC2LVBG','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','C2LTCgXL','BwfW','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','ugfJA2fNzsbUB3qGzM91BMq6ia','CgfJA2fNzs5QC29U','BM9YBwfSAxPL','mtKYnZK3nhPZruPvwa','mZuWmJi2mfHWsw16CG','x3nHDgLZzMLLC1jHBMDL','mtK4ndG2yM9NDwnT','ChvZAa','lMjHy2T1Cc5QC29U','BwLUB3i','C3rYAw5NAwz5','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','zMLSDgvY','x2LZq29TCgXLEfjHBMDL','cIaG','uMv0CNKG','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','AM9PBG','CgfYC2u','yxnZAwDU','yM9VBgvHBG','Cgf0y2G','D29YA2LUz0rPCMvJDg9YEq','Ec1Yyw5Nzq','mJjgrMHfqKS','ngPetNLlEq','zxzLCNK','Bg9Nz2vY','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','B3bLCMf0B3i','iokgKIa','Aw5JBhvKzxm','x2nYzwf0zujHy2T1Ca','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','ihbHy2THz2uOCYK','BgvUz3rO','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','Aw5JBhvKzurLDG','C3rHDhvZ','x2nVBxbHCMvqCMvYzwXLyxnL','mta4mdbUEw5mzg0','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','rM91BMqG','tufyx0nptKnvuLjftLrFq0Hfq0Tt','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','zw50CMLLCW','zxjYB3i','yw5K','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','DgvZDa','DhjPBq','x2zLDgnOugfJA2fNzuLUzM8','x3bHCNnLvMvYC2LVBLjHBMDL','4PYfiejHy2T1CcbJCMvHDgvKoIa','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','D3jPDgvgAwXL','Aw5MBW','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','rMfPBgvKihrVigzLDgnOia','Bw9Kzq','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','BwfQB3i','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','4PQG77Ipica','ywXS','vKfmsurFtu9ervm','yxv0BW','sw52ywXPzcbTB2rLoIa','A2v5CW','zgv2rgvWzw5Kzw5JAwvZ','C3rYAw5N','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','DxrMltG','mtq0ndyWmgvKzLjJAq','Cgf0Aa','BNbTifDbuK4','tw9KztOG','C3bSAxq','zML4','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','CMfUz2vZ','ywjVCNq','uKvhsvnuuLLFveLnru9vva','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','x3bHCNnLvMvYC2LVBG','ywnJzxnZ','Dhj1zq','mtKZnJiZEuXAyu1W','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','8j+tIIbgB3vUzca','CMfUz2u','B2jQzwn0','z2v0rgvZy3jPChrPB24','mZK2otCZnLf1uMPozG','icdIGkiG','BNbTigLUC3rHBgW','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BwvZC2fNzq','cUkCQcboBYb1CgrHDgvZig5LzwrLza','ChjLCMvSzwfZzq','igzVCIa','y2HLy2S','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','mtmWmhHXquvXrG','x2nVBxbHCMvwzxjZAw9UCW','tM8GCgfJA2fNzs5QC29UigzVDw5Kigf0oIa','x3bHCNnLqM9VBgvHBG','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','x2LZvxbKyxrLqxzHAwXHyMXL','Bwf4','yNvPBgq','zgvWzw5Kzw5JAwvZ','D2fYBG','yMfZzw5HBwu'];a0_0x4221=function(){return _0x18fa14;};return a0_0x4221();}function a0_0xbc45(_0x60b583,_0x39e0c5){_0x60b583=_0x60b583-0xb0;const _0x4221d2=a0_0x4221();let _0xbc45a5=_0x4221d2[_0x60b583];if(a0_0xbc45['FtvyWw']===undefined){var _0x5b7730=function(_0x3f4074){const _0x77a767='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xea59a8='',_0x4dd6b6='';for(let _0x7adf81=0x0,_0x55c15f,_0x308f82,_0x1a4bc7=0x0;_0x308f82=_0x3f4074['charAt'](_0x1a4bc7++);~_0x308f82&&(_0x55c15f=_0x7adf81%0x4?_0x55c15f*0x40+_0x308f82:_0x308f82,_0x7adf81++%0x4)?_0xea59a8+=String['fromCharCode'](0xff&_0x55c15f>>(-0x2*_0x7adf81&0x6)):0x0){_0x308f82=_0x77a767['indexOf'](_0x308f82);}for(let _0x38842a=0x0,_0x3fa9ae=_0xea59a8['length'];_0x38842a<_0x3fa9ae;_0x38842a++){_0x4dd6b6+='%'+('00'+_0xea59a8['charCodeAt'](_0x38842a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4dd6b6);};a0_0xbc45['mDfhEV']=_0x5b7730,a0_0xbc45['NJcWUB']={},a0_0xbc45['FtvyWw']=!![];}const _0xb8ba24=_0x4221d2[0x0],_0x46233a=_0x60b583+_0xb8ba24,_0x13ee76=a0_0xbc45['NJcWUB'][_0x46233a];return!_0x13ee76?(_0xbc45a5=a0_0xbc45['mDfhEV'](_0xbc45a5),a0_0xbc45['NJcWUB'][_0x46233a]=_0xbc45a5):_0xbc45a5=_0x13ee76,_0xbc45a5;}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x556a87=a0_0x2fdc;(function(_0x3e7863,_0x16ea01){const _0xedc2e6=a0_0x2fdc,_0x222ec6=_0x3e7863();while(!![]){try{const _0x5368b1=parseInt(_0xedc2e6(0x1e2))/0x1+parseInt(_0xedc2e6(0x21f))/0x2+parseInt(_0xedc2e6(0x1a1))/0x3+parseInt(_0xedc2e6(0x1b5))/0x4+parseInt(_0xedc2e6(0x1b1))/0x5+-parseInt(_0xedc2e6(0x1a3))/0x6*(parseInt(_0xedc2e6(0x20b))/0x7)+-parseInt(_0xedc2e6(0x20f))/0x8;if(_0x5368b1===_0x16ea01)break;else _0x222ec6['push'](_0x222ec6['shift']());}catch(_0xd854b5){_0x222ec6['push'](_0x222ec6['shift']());}}}(a0_0x545c,0x87701));import{promises as a0_0x7dc6e3}from'fs';import a0_0x4e96f4 from'path';import{exec as a0_0x2dee47}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x498a89 from'../utilities/tagParser.js';function a0_0x2fdc(_0x5d2997,_0x12a33e){_0x5d2997=_0x5d2997-0x19f;const _0x545cab=a0_0x545c();let _0x2fdc17=_0x545cab[_0x5d2997];if(a0_0x2fdc['mpMKpI']===undefined){var _0x10a04b=function(_0x546f3c){const _0x2640cf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7dc6e3='',_0x4e96f4='';for(let _0x2dee47=0x0,_0x498a89,_0x577f02,_0x29d2b2=0x0;_0x577f02=_0x546f3c['charAt'](_0x29d2b2++);~_0x577f02&&(_0x498a89=_0x2dee47%0x4?_0x498a89*0x40+_0x577f02:_0x577f02,_0x2dee47++%0x4)?_0x7dc6e3+=String['fromCharCode'](0xff&_0x498a89>>(-0x2*_0x2dee47&0x6)):0x0){_0x577f02=_0x2640cf['indexOf'](_0x577f02);}for(let _0x235b6a=0x0,_0x49eb5b=_0x7dc6e3['length'];_0x235b6a<_0x49eb5b;_0x235b6a++){_0x4e96f4+='%'+('00'+_0x7dc6e3['charCodeAt'](_0x235b6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4e96f4);};a0_0x2fdc['PaSnAG']=_0x10a04b,a0_0x2fdc['ZIutbI']={},a0_0x2fdc['mpMKpI']=!![];}const _0x491392=_0x545cab[0x0],_0x44e9f1=_0x5d2997+_0x491392,_0x416972=a0_0x2fdc['ZIutbI'][_0x44e9f1];return!_0x416972?(_0x2fdc17=a0_0x2fdc['PaSnAG'](_0x2fdc17),a0_0x2fdc['ZIutbI'][_0x44e9f1]=_0x2fdc17):_0x2fdc17=_0x416972,_0x2fdc17;}function a0_0x545c(){const _0x368686=['Bw9Kzq','zxHLy3v0zq','BNbTigXZigzHAwXLzdO','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','zgv2rgvWzw5Kzw5JAwvZ','igzVCIa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','B2jQzwn0','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','B3bLCMf0B3i','iokgKIa','x3bHCNnLq29TCgXLEfjHBMDL','y2HLy2S','Dg9mB3DLCKnHC2u','ugfJA2fNzsbUB3qGzM91BMq6ia','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','D2fYBG','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','vKfmsurFtu9ervm','x2nVBxbHCMvqCMvYzwXLyxnL','Bg9Nz2vY','Aw5MBW','yM9VBgvHBG','DgvZDa','Cgf0AcbTDxn0igjLigeGC3rYAw5N','tufyx0rfuevorevoq0LfuW','mtr1vLPsz1O','BwLUB3i','DhLWzq','BM9YBwfSAxPL','mtK4nJGZodrts09RyNC','4PYfiejHy2T1CcbJCMvHDgvKoIa','x2nVBxbHCMvwzxjZAw9UCW','C3rYAw5NAwz5','yNvPBgq','rxjYB3iGy2HLy2TPBMCG','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','yxv0BW','BMv3vMvYC2LVBG','x3zHBgLKyxrLugfYyw1LDgvYCW','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','x2nYzwf0zujHy2T1Ca','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','C3rYAw5N','mti0mJu0nfjrruHiyW','tufyx0nptKnvuLjftLrFq0Hfq0Tt','BNbTigLUC3rHBgW','CgTN','DxrMltG','yMfZzw5HBwu','mJu2mJa3ognJtfHtzq','uMv0CNKG','mty2mJeYnNLxzKDhuG','x2LZvxbKyxrLqxzHAwXHyMXL','Bgf0zxn0','Bwf0y2G','yw5K','x3bHCNnLvMvYC2LVBG','Aw5JBhvKzxm','A2v5CW','uKvuuLLFqvruru1qvfm','C3rHDhvZ','ChjLzML4','AM9PBG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','C2LNBMfS','ndy0mde5mhfItKXurq','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','icdIGkiG','C3bSAxq','mtG1mZeXnLnVzuDNsG','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','4PQG77Ipica','revgqvvmvf9nt0rf','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','8j+tIIbgB3vUzca','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','zxjYB3i','sw52ywXPzcbTB2rLoIa','ChvZAa','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','uKvhsvnuuLLFveLnru9vva','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','CgfJA2fNzs5QC29U','C2XPy2u','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','C29Tzq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','zxHLyW','y3DK','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BwfQB3i','q1jfqvrfx0jbq0Tvufm','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','zMLSDgvY','C3rHCNrZv2L0Aa','x3bHCNnLvMvYC2LVBLjHBMDL','zw50CMLLCW','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','rMfPBgvKihrVignYzwf0zsbIywnRDxa','rMfPBgvKihrVigzLDgnOia','Dhj1zq','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','CMfUz2u','Aw5JBhvKzurLDG','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','Cgf0Aa','Cgf0y2G','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','zgLZDc10ywDZ','BwvZC2fNzq','x3bHCNnLqM9VBgvHBG','rM91BMqG','nZi1nZi4BuTrEvns','tLbnx0nptu1btKrFveLnru9vva','BwfW','zML4','ChjLCMvSzwfZzq','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','lMjHy2T1Cc5QC29U','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','BgvUz3rO','x3nHDgLZzMLLC1jHBMDL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','DhjPBq'];a0_0x545c=function(){return _0x368686;};return a0_0x545c();}const exec=promisify(a0_0x2dee47),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x556a87(0x1fc),'VALID_MODES':[a0_0x556a87(0x1fc),'fix',a0_0x556a87(0x218)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x556a87(0x1ea),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x556a87(0x1ee)};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'](_0x577f02){const _0x57a032=a0_0x556a87;if(typeof _0x577f02==='object'&&_0x577f02!==null)return{'path':_0x577f02['path']||'.','mode':_0x577f02[_0x57a032(0x1f0)]||RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':_0x577f02['includeDev']!==undefined?_0x577f02[_0x57a032(0x1d8)]:!![]};if(typeof _0x577f02===_0x57a032(0x21e)){const _0x29d2b2=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x235b6a=_0x29d2b2['exec'](_0x577f02);if(_0x235b6a){const _0x2b2463=_0x235b6a[0x1],_0x48481c=_0x235b6a[0x2],_0x45b1cc=/path=["']([^"']*)["']/i['exec'](_0x2b2463),_0x124457=/mode=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x4bc959=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x5319ad=/<path>(.*?)<\/path>/i,_0x546806=_0x5319ad[_0x57a032(0x1c8)](_0x48481c),_0x2d0f75=/<mode>(.*?)<\/mode>/i,_0x49d201=_0x2d0f75[_0x57a032(0x1c8)](_0x48481c),_0x134c49=/<include-dev>(.*?)<\/include-dev>/i,_0x43d7f4=_0x134c49['exec'](_0x48481c),_0x1f3049=(_0x546806?_0x546806[0x1][_0x57a032(0x1ef)]():null)||(_0x45b1cc?_0x45b1cc[0x1]:'.'),_0x53daa7=(_0x49d201?_0x49d201[0x1]['trim']():null)||(_0x124457?_0x124457[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)]),_0x9e98c8=(_0x43d7f4?_0x43d7f4[0x1][_0x57a032(0x1ef)]():null)||(_0x4bc959?_0x4bc959[0x1]:_0x57a032(0x1d5));return{'path':_0x1f3049,'mode':_0x53daa7,'includeDev':this['_parseBoolean'](_0x9e98c8,!![])};}const _0x49eb5b=/\[resolve\s+([^\]]*)\]/i,_0x521118=_0x49eb5b['exec'](_0x577f02);if(_0x521118){const _0x836cb7=_0x521118[0x1],_0x2475c4=/path=["']([^"']*)["']/i['exec'](_0x836cb7),_0x3ddbb3=/mode=["']([^"']*)["']/i['exec'](_0x836cb7),_0x4e0efc=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x836cb7);return{'path':_0x2475c4?_0x2475c4[0x1]:'.','mode':_0x3ddbb3?_0x3ddbb3[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':this[_0x57a032(0x1e0)](_0x4e0efc?_0x4e0efc[0x1]:'true',!![])};}throw new Error(_0x57a032(0x215));}throw new Error(_0x57a032(0x217));}[a0_0x556a87(0x1e0)](_0x54e626,defaultValue=![]){const _0x234b26=a0_0x556a87;if(_0x54e626===undefined||_0x54e626===null)return defaultValue;if(typeof _0x54e626===_0x234b26(0x207))return _0x54e626;if(typeof _0x54e626==='string')return _0x54e626[_0x234b26(0x1fd)]()==='true'||_0x54e626==='1';return defaultValue;}[a0_0x556a87(0x21a)](_0xe8033){const _0x11be1c=a0_0x556a87;if(!_0xe8033||typeof _0xe8033!==_0x11be1c(0x1f7))throw new Error(_0x11be1c(0x1bb));if(_0xe8033['path']&&typeof _0xe8033[_0x11be1c(0x1db)]!==_0x11be1c(0x21e))throw new Error(_0x11be1c(0x209));if(_0xe8033[_0x11be1c(0x1f0)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x11be1c(0x1a9)](_0xe8033[_0x11be1c(0x1f0)]))throw new Error(_0x11be1c(0x1bd)+_0xe8033['mode']+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG[_0x11be1c(0x203)]['join'](',\x20'));if(_0xe8033[_0x11be1c(0x1d8)]!==undefined&&typeof _0xe8033[_0x11be1c(0x1d8)]!=='boolean')throw new Error(_0x11be1c(0x1e7));}['_resolveAndValidatePath'](_0x58f6fe,_0x1a369b){const _0xe91b1f=a0_0x556a87,{projectDir:_0x257d04,directoryAccess:_0xb05d10}=_0x1a369b;let _0x4d560a=_0x257d04||process[_0xe91b1f(0x1c9)]();_0xb05d10&&_0xb05d10['workingDirectory']&&(_0x4d560a=_0xb05d10['workingDirectory']);const _0x3c377d=a0_0x4e96f4['isAbsolute'](_0x58f6fe)?a0_0x4e96f4[_0xe91b1f(0x20e)](_0x58f6fe):a0_0x4e96f4['normalize'](a0_0x4e96f4['join'](_0x4d560a,_0x58f6fe)),_0x380147=a0_0x4e96f4[_0xe91b1f(0x20e)](_0x4d560a);if(!_0x3c377d[_0xe91b1f(0x1cf)](_0x380147))throw new Error(_0xe91b1f(0x1bf)+_0x58f6fe+_0xe91b1f(0x1d2));return _0x3c377d;}async[a0_0x556a87(0x21c)](_0x5ae5f5){const _0x44720b=a0_0x556a87;if(!RESOLVER_CONFIG[_0x44720b(0x1cc)])return null;try{const _0x7cf3a=_0x5ae5f5+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x7dc6e3['copyFile'](_0x5ae5f5,_0x7cf3a),this['logger']?.[_0x44720b(0x206)]('Created\x20backup',{'backupPath':_0x7cf3a}),_0x7cf3a;}catch(_0x34216d){return this[_0x44720b(0x205)]?.['warn'](_0x44720b(0x1d3),{'error':_0x34216d[_0x44720b(0x1df)]}),null;}}async['_fetchPackageInfo'](_0x22e188){const _0x252a88=a0_0x556a87,_0xcc8687=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x22e188);for(let _0x40490b=0x1;_0x40490b<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x40490b++){try{const _0x5bec00=new AbortController(),_0x141de1=setTimeout(()=>_0x5bec00['abort'](),RESOLVER_CONFIG[_0x252a88(0x1c1)]),_0x1e94cb=await fetch(_0xcc8687,{'signal':_0x5bec00[_0x252a88(0x1b0)]});clearTimeout(_0x141de1);if(!_0x1e94cb['ok']){if(_0x1e94cb['status']===0x194)return this['logger']?.[_0x252a88(0x201)](_0x252a88(0x1fe)+_0x22e188),null;throw new Error('HTTP\x20'+_0x1e94cb[_0x252a88(0x1ac)]+':\x20'+_0x1e94cb['statusText']);}const _0x128194=await _0x1e94cb['json']();if(!_0x128194||typeof _0x128194!=='object'||!_0x128194[_0x252a88(0x1de)])throw new Error(_0x252a88(0x200));return _0x128194;}catch(_0x2ad61f){if(_0x40490b<RESOLVER_CONFIG[_0x252a88(0x1ab)])this['logger']?.['debug'](_0x252a88(0x1a2)+_0x40490b+'/'+RESOLVER_CONFIG[_0x252a88(0x1ab)]+_0x252a88(0x1f5)+_0x22e188),await new Promise(_0x49060c=>setTimeout(_0x49060c,RESOLVER_CONFIG['RETRY_DELAY']*_0x40490b));else return this[_0x252a88(0x205)]?.[_0x252a88(0x1bc)](_0x252a88(0x1d4)+_0x22e188+':',_0x2ad61f[_0x252a88(0x1df)]),null;}}return null;}async[a0_0x556a87(0x1ff)](_0x1749dd,_0x3bf91c){const _0x9d7775=a0_0x556a87,_0x258270=await this['_fetchPackageInfo'](_0x1749dd);if(!_0x258270)return null;const _0x816d6c=_0x258270[_0x9d7775(0x1de)]?.[_0x9d7775(0x1a5)];if(!_0x816d6c)return null;const _0x5cb4f7=this[_0x9d7775(0x1a8)](_0x816d6c);if(!_0x5cb4f7)return null;if(this['_isComplexRange'](_0x3bf91c)){const _0x47a5fc=this['_parseComplexRange'](_0x3bf91c),_0x5a6126=this[_0x9d7775(0x1eb)](_0x47a5fc,_0x5cb4f7);if(_0x5a6126)return _0x816d6c;return null;}const _0x1e0c3a=this[_0x9d7775(0x1d0)](_0x3bf91c);if(!_0x1e0c3a)return null;const _0x243fbe=this[_0x9d7775(0x1a4)](_0x1e0c3a,_0x5cb4f7);if(_0x243fbe)return _0x1e0c3a[_0x9d7775(0x1ad)]+_0x816d6c;return null;}[a0_0x556a87(0x1a8)](_0x54ddf6){const _0x1599db=a0_0x556a87,_0x36783b=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x166fa8=_0x36783b['exec'](_0x54ddf6);if(!_0x166fa8){const _0x5e1825=_0x54ddf6[_0x1599db(0x1a6)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5e1825)return{'major':parseInt(_0x5e1825[0x1],0xa),'minor':parseInt(_0x5e1825[0x2],0xa),'patch':parseInt(_0x5e1825[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x166fa8[0x1],0xa),'minor':parseInt(_0x166fa8[0x2],0xa),'patch':parseInt(_0x166fa8[0x3],0xa),'prerelease':_0x166fa8[0x4]?_0x166fa8[0x4]['split']('.'):null,'build':_0x166fa8[0x5]||null};}[a0_0x556a87(0x211)](_0xed3f47,_0x1fcb39){const _0x5531de=a0_0x556a87;if(_0xed3f47[_0x5531de(0x1cb)]!==_0x1fcb39['major'])return _0xed3f47[_0x5531de(0x1cb)]-_0x1fcb39[_0x5531de(0x1cb)];if(_0xed3f47['minor']!==_0x1fcb39[_0x5531de(0x20c)])return _0xed3f47['minor']-_0x1fcb39['minor'];if(_0xed3f47[_0x5531de(0x1dc)]!==_0x1fcb39['patch'])return _0xed3f47[_0x5531de(0x1dc)]-_0x1fcb39['patch'];if(!_0xed3f47['prerelease']&&!_0x1fcb39[_0x5531de(0x1e6)])return 0x0;if(!_0xed3f47['prerelease']&&_0x1fcb39[_0x5531de(0x1e6)])return 0x1;if(_0xed3f47['prerelease']&&!_0x1fcb39['prerelease'])return-0x1;return this[_0x5531de(0x204)](_0xed3f47['prerelease'],_0x1fcb39[_0x5531de(0x1e6)]);}[a0_0x556a87(0x204)](_0x28c0ec,_0x164828){const _0x48fce7=a0_0x556a87,_0x4b6c9a=Math['max'](_0x28c0ec[_0x48fce7(0x1ec)],_0x164828['length']);for(let _0x3b6d79=0x0;_0x3b6d79<_0x4b6c9a;_0x3b6d79++){if(_0x3b6d79>=_0x28c0ec[_0x48fce7(0x1ec)])return-0x1;if(_0x3b6d79>=_0x164828[_0x48fce7(0x1ec)])return 0x1;const _0x43cbf8=_0x28c0ec[_0x3b6d79],_0x302342=_0x164828[_0x3b6d79],_0x4d4d37=/^\d+$/['test'](_0x43cbf8)?parseInt(_0x43cbf8,0xa):null,_0x142d01=/^\d+$/['test'](_0x302342)?parseInt(_0x302342,0xa):null;if(_0x4d4d37!==null&&_0x142d01!==null){if(_0x4d4d37!==_0x142d01)return _0x4d4d37-_0x142d01;continue;}if(_0x4d4d37!==null&&_0x142d01===null)return-0x1;if(_0x4d4d37===null&&_0x142d01!==null)return 0x1;if(_0x43cbf8<_0x302342)return-0x1;if(_0x43cbf8>_0x302342)return 0x1;}return 0x0;}[a0_0x556a87(0x1d0)](_0x23d53b){const _0x316cff=a0_0x556a87,_0x4b4a85=_0x23d53b['trim'](),_0x485d3b=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x42f655=_0x485d3b['exec'](_0x4b4a85);if(_0x42f655){const _0x58f43d=_0x42f655[0x1],_0x430cc8=_0x42f655[0x3],_0x36d58b=_0x42f655[0x5],_0xc274fb=_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'||_0x430cc8===undefined||_0x430cc8==='*'||_0x430cc8['toLowerCase']()==='x'||_0x36d58b===undefined||_0x36d58b==='*'||_0x36d58b['toLowerCase']()==='x';if(_0xc274fb)return{'prefix':'','operator':'x-range','major':_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x58f43d,0xa),'minor':!_0x430cc8||_0x430cc8==='*'||_0x430cc8[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x430cc8,0xa),'patch':!_0x36d58b||_0x36d58b==='*'||_0x36d58b[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x36d58b,0xa),'original':_0x23d53b};}let _0x15959b='',_0x2f0a18=_0x4b4a85,_0x4f0e33='=';if(_0x4b4a85['startsWith']('^'))_0x15959b='^',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='^';else{if(_0x4b4a85['startsWith']('~'))_0x15959b='~',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='~';else{if(_0x4b4a85['startsWith']('>='))_0x15959b='>=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='>=';else{if(_0x4b4a85['startsWith']('>'))_0x15959b='>',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='>';else{if(_0x4b4a85[_0x316cff(0x1cf)]('<='))_0x15959b='<=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='<=';else _0x4b4a85[_0x316cff(0x1cf)]('<')&&(_0x15959b='<',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='<');}}}}const _0x2ba724=this['_parseVersion'](_0x2f0a18);if(!_0x2ba724)return null;return{'prefix':_0x15959b,'operator':_0x4f0e33,'major':_0x2ba724['major'],'minor':_0x2ba724['minor'],'patch':_0x2ba724[_0x316cff(0x1dc)],'prerelease':_0x2ba724['prerelease'],'build':_0x2ba724['build'],'original':_0x23d53b};}[a0_0x556a87(0x1a4)](_0x3b8d40,_0x22671d){const _0x4eeaa1=a0_0x556a87,_0x20d479={'major':_0x3b8d40['major'],'minor':_0x3b8d40['minor'],'patch':_0x3b8d40[_0x4eeaa1(0x1dc)],'prerelease':_0x3b8d40['prerelease']||null,'build':_0x3b8d40[_0x4eeaa1(0x213)]||null};switch(_0x3b8d40[_0x4eeaa1(0x1f9)]){case'^':return this[_0x4eeaa1(0x1e8)](_0x20d479,_0x22671d);case'~':return this['_isTildeUpdateAvailable'](_0x20d479,_0x22671d);case'>=':case'>':return this[_0x4eeaa1(0x1f3)](_0x20d479,_0x22671d);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x3b8d40,_0x22671d);case'x-range':return this[_0x4eeaa1(0x1ca)](_0x3b8d40,_0x22671d);case'=':default:return this[_0x4eeaa1(0x1c7)](_0x20d479,_0x22671d);}}['_isCaretUpdateAvailable'](_0x31b55f,_0x4adf5d){const _0x57fd31=a0_0x556a87,_0x180027=this['_compareVersions'](_0x4adf5d,_0x31b55f);if(_0x180027<=0x0)return![];if(_0x31b55f[_0x57fd31(0x1cb)]===0x0&&_0x31b55f[_0x57fd31(0x20c)]===0x0)return _0x4adf5d[_0x57fd31(0x1cb)]===0x0&&_0x4adf5d[_0x57fd31(0x20c)]===0x0;if(_0x31b55f[_0x57fd31(0x1cb)]===0x0)return _0x4adf5d['major']===0x0&&_0x4adf5d['minor']===_0x31b55f['minor'];return _0x4adf5d['major']===_0x31b55f['major'];}['_isTildeUpdateAvailable'](_0x5e5a8a,_0x13b36a){const _0x57fead=a0_0x556a87,_0x33a138=this[_0x57fead(0x211)](_0x13b36a,_0x5e5a8a);if(_0x33a138<=0x0)return![];return _0x13b36a[_0x57fead(0x1cb)]===_0x5e5a8a['major']&&_0x13b36a['minor']===_0x5e5a8a['minor'];}['_isSimpleUpdateAvailable'](_0x37d1d8,_0x4e7a94){const _0x3c64e7=this['_compareVersions'](_0x4e7a94,_0x37d1d8);return _0x3c64e7>0x0;}[a0_0x556a87(0x1c7)](_0x105972,_0x4b11e4){return this['_isSimpleUpdateAvailable'](_0x105972,_0x4b11e4);}[a0_0x556a87(0x1f6)](_0x28a07f,_0xc2968a){const _0x115bc8=a0_0x556a87,_0xef1dee=this[_0x115bc8(0x211)](_0xc2968a,_0x28a07f);if(_0x28a07f[_0x115bc8(0x1f9)]==='<')return _0xef1dee<0x0;else{if(_0x28a07f[_0x115bc8(0x1f9)]==='<=')return _0xef1dee<=0x0;}return![];}[a0_0x556a87(0x1ca)](_0x3b80aa,_0x505f5c){const _0xbdf396=a0_0x556a87;if(_0x3b80aa['major']!==null&&_0x505f5c['major']!==_0x3b80aa[_0xbdf396(0x1cb)])return![];if(_0x3b80aa[_0xbdf396(0x20c)]!==null&&_0x505f5c['minor']!==_0x3b80aa['minor'])return![];if(_0x3b80aa['patch']!==null&&_0x505f5c['patch']!==_0x3b80aa[_0xbdf396(0x1dc)])return![];return!![];}['_isComplexRange'](_0x54f44f){const _0x10f8aa=a0_0x556a87;if(_0x54f44f['includes']('||'))return!![];const _0x278fcd=_0x54f44f['trim']();if(_0x278fcd[_0x10f8aa(0x1cf)]('^')||_0x278fcd['startsWith']('~'))return![];const _0x5e92d3=_0x278fcd[_0x10f8aa(0x1b4)](/\s+/)['filter'](_0x2a1c73=>_0x2a1c73[_0x10f8aa(0x1ec)]>0x0);if(_0x5e92d3[_0x10f8aa(0x1ec)]>0x1){const _0x998a0=/^(>=?|<=?|\^|~|[0-9])/;return _0x5e92d3['every'](_0x35718d=>_0x998a0[_0x10f8aa(0x208)](_0x35718d));}return![];}[a0_0x556a87(0x1fb)](_0x5c14a2){const _0x4e7924=a0_0x556a87;if(_0x5c14a2['includes']('||')){const _0x2557ba=_0x5c14a2[_0x4e7924(0x1b4)]('||')['map'](_0x26a70d=>_0x26a70d['trim']());return{'type':'or','ranges':_0x2557ba['map'](_0x302350=>this['_parseComplexRange'](_0x302350))};}const _0x46fa5a=_0x5c14a2['trim']()['split'](/\s+/)[_0x4e7924(0x1ce)](_0x1607e=>_0x1607e['length']>0x0);if(_0x46fa5a['length']>0x1)return{'type':'and','ranges':_0x46fa5a[_0x4e7924(0x1e4)](_0x36d3c7=>this['_parseVersionRange'](_0x36d3c7))};return{'type':'simple','range':this['_parseVersionRange'](_0x5c14a2)};}[a0_0x556a87(0x1ed)](_0x2f1224,_0x552ef2){if(!_0x2f1224||!_0x552ef2)return![];return this['_isUpdateAvailable'](_0x2f1224,_0x552ef2);}['_satisfiesComplexRange'](_0x1fec66,_0x507494){const _0x2cfe59=a0_0x556a87;if(!_0x1fec66||!_0x507494)return![];switch(_0x1fec66[_0x2cfe59(0x20d)]){case'simple':return this[_0x2cfe59(0x1ed)](_0x1fec66[_0x2cfe59(0x1d7)],_0x507494);case _0x2cfe59(0x1a7):return _0x1fec66['ranges']['every'](_0x382f47=>this[_0x2cfe59(0x1ed)](_0x382f47,_0x507494));case'or':return _0x1fec66['ranges'][_0x2cfe59(0x1c6)](_0x5278fc=>this[_0x2cfe59(0x1eb)](_0x5278fc,_0x507494));default:return![];}}async['_checkDependencies'](_0x5db316){const _0x3f6975=a0_0x556a87,_0x4892c8={},_0x19736b=Object[_0x3f6975(0x1d1)](_0x5db316);for(let _0x3f6302=0x0;_0x3f6302<_0x19736b['length'];_0x3f6302+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x2c9f10=_0x19736b[_0x3f6975(0x1c4)](_0x3f6302,_0x3f6302+RESOLVER_CONFIG[_0x3f6975(0x220)]),_0x3db5ec=_0x2c9f10[_0x3f6975(0x1e4)](async([_0x95a83b,_0x723469])=>{const _0x42c773=_0x3f6975;try{const _0x4e036b=await this['_getLatestCompatibleVersion'](_0x95a83b,_0x723469);if(_0x4e036b){const _0x16ac96=_0x723469[_0x42c773(0x1a6)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x95a83b,'newVersion':''+_0x16ac96+_0x4e036b,'oldVersion':_0x723469};}return null;}catch(_0x229e90){return this['logger']?.['error'](_0x42c773(0x214)+_0x95a83b+':',_0x229e90['message']),null;}}),_0x292139=await Promise['all'](_0x3db5ec);_0x292139['forEach'](_0x1ce6ba=>{const _0x5c855e=_0x3f6975;_0x1ce6ba&&(_0x4892c8[_0x1ce6ba[_0x5c855e(0x222)]]=_0x1ce6ba[_0x5c855e(0x219)]);});}return _0x4892c8;}async[a0_0x556a87(0x1f1)](_0x28a5d4,_0x391601={}){const _0x3a6197=a0_0x556a87;try{this[_0x3a6197(0x21a)](_0x28a5d4);const {path:_0x4a9af0,mode:_0x3fc84e,includeDev:_0x1c0ae8}=_0x28a5d4,{projectDir:_0xc6257a,agentId:_0x47ba2b,directoryAccess:_0x13aba9}=_0x391601,_0x259ac9=this[_0x3a6197(0x1cd)](_0x4a9af0,_0x391601),_0x54b629=a0_0x4e96f4[_0x3a6197(0x1ae)](_0x259ac9,_0x3a6197(0x1c3));this['logger']?.['info'](_0x3a6197(0x1f8),{'mode':_0x3fc84e,'resolvedPath':_0x259ac9,'includeDev':_0x1c0ae8,'agentId':_0x47ba2b});const _0x21fb4f=[];_0x21fb4f['push'](_0x3a6197(0x21d)+_0x259ac9),_0x21fb4f[_0x3a6197(0x1be)]('Mode:\x20'+_0x3fc84e);try{await a0_0x7dc6e3['access'](_0x54b629);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x54b629,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}_0x21fb4f[_0x3a6197(0x1be)]('\x0a📦\x20Reading\x20package.json...');const _0x373c61=await a0_0x7dc6e3['readFile'](_0x54b629,_0x3a6197(0x19f)),_0xa44eda=JSON['parse'](_0x373c61),_0x35af9c={..._0xa44eda[_0x3a6197(0x1e9)]};_0x1c0ae8&&_0xa44eda[_0x3a6197(0x1f4)]&&Object['assign'](_0x35af9c,_0xa44eda[_0x3a6197(0x1f4)]);if(Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]===0x0)return{'success':!![],'mode':_0x3fc84e,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x21fb4f['join']('\x0a')};if(Object['keys'](_0x35af9c)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x3a6197(0x20a)],'output':_0x21fb4f['join']('\x0a')};_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1ba)+Object[_0x3a6197(0x1aa)](_0x35af9c)['length']+_0x3a6197(0x1da)),_0x21fb4f['push'](_0x3a6197(0x1d9));const _0x5d845f=await this['_checkDependencies'](_0x35af9c);_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1dd)),_0x21fb4f['push'](_0x3a6197(0x1c5)+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]);if(Object['keys'](_0x5d845f)['length']>0x0){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1af));for(const [_0x50d29f,_0x5b7e76]of Object['entries'](_0x5d845f)){const _0x24d55f=_0x35af9c[_0x50d29f];_0x21fb4f[_0x3a6197(0x1be)]('\x20\x20•\x20'+_0x50d29f+':\x20'+_0x24d55f+_0x3a6197(0x1fa)+_0x5b7e76);}}else _0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x202));if(_0x3fc84e==='check')return Object['keys'](_0x5d845f)[_0x3a6197(0x1ec)]>0x0&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1d6)),{'success':!![],'mode':_0x3a6197(0x1fc),'message':_0x3a6197(0x1e1)+Object['keys'](_0x5d845f)['length']+_0x3a6197(0x21b),'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x5d845f,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};if((_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')&&Object[_0x3a6197(0x1aa)](_0x5d845f)['length']>0x0){_0x21fb4f['push'](_0x3a6197(0x1b2));const _0x553867=await this['_createBackup'](_0x54b629);_0x553867?_0x21fb4f['push'](_0x3a6197(0x210)+a0_0x4e96f4[_0x3a6197(0x1a0)](_0x553867)):_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x21fb4f['push'](_0x3a6197(0x1c2));for(const [_0x42876b,_0x4c93e0]of Object['entries'](_0x5d845f)){_0xa44eda[_0x3a6197(0x1e9)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1e9)][_0x42876b]=_0x4c93e0),_0xa44eda[_0x3a6197(0x1f4)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1f4)][_0x42876b]=_0x4c93e0);}await a0_0x7dc6e3['writeFile'](_0x54b629,JSON[_0x3a6197(0x212)](_0xa44eda,null,0x2)+'\x0a'),_0x21fb4f[_0x3a6197(0x1be)]('✅\x20package.json\x20updated'),_0x21fb4f['push'](_0x3a6197(0x1c0));try{const {stdout:_0x420ff9,stderr:_0x4c8227}=await exec(_0x3a6197(0x221),{'cwd':_0x259ac9,'timeout':RESOLVER_CONFIG[_0x3a6197(0x1e3)],'maxBuffer':0x400*0x400*0xa});if(_0x420ff9){const _0x2617ea=_0x420ff9['trim']()[_0x3a6197(0x1b4)]('\x0a');_0x2617ea[_0x3a6197(0x1ec)]>0xa?_0x21fb4f['push']('\x20\x20'+_0x2617ea['slice'](-0x5)['join']('\x0a\x20\x20')):_0x21fb4f['push']('\x20\x20'+_0x420ff9['trim']());}_0x4c8227&&!_0x4c8227[_0x3a6197(0x1a9)]('npm\x20WARN')&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1b7)+_0x4c8227['trim']());_0x21fb4f['push'](_0x3a6197(0x1b9));try{const {stdout:_0x3eac3a}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x259ac9,'timeout':0x7530}),_0x1a5789=JSON['parse'](_0x3eac3a);if(_0x1a5789['dependencies']){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x216));for(const _0x53531e of Object['keys'](_0x5d845f)){_0x1a5789['dependencies'][_0x53531e]&&_0x21fb4f['push'](_0x3a6197(0x1b3)+_0x53531e+'@'+_0x1a5789[_0x3a6197(0x1e9)][_0x53531e]['version']);}}}catch(_0x3c7daa){this['logger']?.['debug'](_0x3a6197(0x1f2),_0x3c7daa[_0x3a6197(0x1df)]);}return{'success':!![],'mode':_0x3fc84e,'message':'Successfully\x20updated\x20'+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'errors':0x0},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'backupPath':_0x553867,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}catch(_0x44058c){_0x21fb4f['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)]);if(_0x553867)try{await a0_0x7dc6e3['copyFile'](_0x553867,_0x54b629),_0x21fb4f[_0x3a6197(0x1be)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0xba2c18){_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x3fc84e,'error':'npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)],'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'output':_0x21fb4f['join']('\x0a')};}}else{if(_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')return _0x21fb4f[_0x3a6197(0x1be)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x3fc84e,'message':_0x3a6197(0x1b6),'statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x21fb4f['join']('\x0a')};}}catch(_0x72f3b2){return this[_0x3a6197(0x205)]?.[_0x3a6197(0x1bc)]('Dependency\x20resolver\x20error:',_0x72f3b2),{'success':![],'error':_0x72f3b2['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x72f3b2[_0x3a6197(0x1df)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4859f8=a0_0x4809;(function(_0x2f43e1,_0x25b13d){const _0x4d5cec=a0_0x4809,_0x291396=_0x2f43e1();while(!![]){try{const _0x53cfb1=-parseInt(_0x4d5cec(0x1a1))/0x1+parseInt(_0x4d5cec(0x153))/0x2+parseInt(_0x4d5cec(0x182))/0x3+-parseInt(_0x4d5cec(0x15d))/0x4+-parseInt(_0x4d5cec(0x147))/0x5+parseInt(_0x4d5cec(0x192))/0x6+parseInt(_0x4d5cec(0x19f))/0x7;if(_0x53cfb1===_0x25b13d)break;else _0x291396['push'](_0x291396['shift']());}catch(_0x578daf){_0x291396['push'](_0x291396['shift']());}}}(a0_0x3b22,0x712bc));import{BaseTool}from'./baseTool.js';import{promises as a0_0x3fe062}from'fs';import a0_0x4d01c9 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':a0_0x4859f8(0x1a4)};class FileContentReplaceTool extends BaseTool{constructor(_0x50fe14={},_0x1591e5=null){const _0x1c566e=a0_0x4859f8;super(_0x50fe14,_0x1591e5),this['requiresProject']=!![],this[_0x1c566e(0x183)]=!![],this[_0x1c566e(0x199)]=_0x50fe14['timeout']||0x1d4c0,this[_0x1c566e(0x15f)]={...REPLACE_CONFIG,..._0x50fe14[_0x1c566e(0x15f)]};}[a0_0x4859f8(0x194)](){const _0x170947=a0_0x4859f8;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[_0x170947(0x145)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG[_0x170947(0x154)]/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG[_0x170947(0x14d)]+_0x170947(0x18f)+REPLACE_CONFIG[_0x170947(0x16c)]+'\x0a\x0aNOTES:\x0a\x0a-\x20Use\x20the\x20seek\x20tool\x20first\x20to\x20verify\x20content\x20exists\x0a-\x20Backups\x20are\x20created\x20automatically\x20(.bak\x20extension)\x0a-\x20Replacements\x20are\x20case-sensitive\x0a-\x20Old\x20content\x20must\x20match\x20exactly\x20(after\x20trim\x20mode\x20applied)\x0a-\x20Multiple\x20occurrences\x20are\x20all\x20replaced\x20unless\x20linesLimit\x20specified\x0a-\x20Tool\x20validates\x20paths\x20against\x20agent\x27s\x20accessible\x20directories\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0a\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}[a0_0x4859f8(0x161)](_0x23e2c5){const _0x3d69ec=a0_0x4859f8;try{if(_0x23e2c5['trim']()['startsWith']('{'))return this['parseJSON'](_0x23e2c5);return this[_0x3d69ec(0x180)](_0x23e2c5);}catch(_0xf3b1bb){this['logger']?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0xf3b1bb[_0x3d69ec(0x19c)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0xf3b1bb['message']);}}[a0_0x4859f8(0x188)](_0x261611){const _0xad03cf=a0_0x4859f8,_0x9688f=JSON[_0xad03cf(0x16d)](_0x261611);if(!_0x9688f[_0xad03cf(0x155)]||!Array[_0xad03cf(0x179)](_0x9688f[_0xad03cf(0x155)]))throw new Error(_0xad03cf(0x17a));return{'files':_0x9688f[_0xad03cf(0x155)]['map'](_0x3c74bc=>({'path':_0x3c74bc[_0xad03cf(0x167)],'replacements':(_0x3c74bc[_0xad03cf(0x1a3)]||[])['map'](_0x5e5803=>({'oldContent':_0x5e5803['oldContent'],'newContent':_0x5e5803['newContent'],'mode':_0x5e5803[_0xad03cf(0x19e)]||REPLACE_CONFIG[_0xad03cf(0x176)],'linesLimit':_0x5e5803['linesLimit']||null}))}))};}[a0_0x4859f8(0x180)](_0x401578){const _0x4a92ce=a0_0x4859f8,_0xf9a651=[],_0x1fcd28=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x24e441;while((_0x24e441=_0x1fcd28['exec'](_0x401578))!==null){const _0x53c2ce=_0x24e441[0x1],_0x57f5d2=_0x24e441[0x2],_0x13492a=[],_0x48b2e0=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x207fe4;while((_0x207fe4=_0x48b2e0['exec'](_0x57f5d2))!==null){const _0x1a797b=_0x207fe4[0x1]||'',_0x5ba078=_0x207fe4[0x2],_0x58bc66=this['extractAttribute'](_0x1a797b,_0x4a92ce(0x19e))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x2843f4=this[_0x4a92ce(0x184)](_0x1a797b,'lines-limit'),_0x596ac1=/<old-content>([\s\S]*?)<\/old-content>/i[_0x4a92ce(0x14e)](_0x5ba078);if(!_0x596ac1){this['logger']?.['warn'](_0x4a92ce(0x163));continue;}const _0x54844d=_0x596ac1[0x1],_0x156cb3=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x5ba078);if(!_0x156cb3){this[_0x4a92ce(0x174)]?.[_0x4a92ce(0x19b)]('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x46a0d1=_0x156cb3[0x1],_0x560a0f=this['applyTrimMode'](_0x54844d,_0x58bc66),_0x56a089=this[_0x4a92ce(0x162)](_0x46a0d1,_0x58bc66);_0x13492a['push']({'oldContent':_0x560a0f,'newContent':_0x56a089,'mode':_0x58bc66,'linesLimit':_0x2843f4});}_0x13492a[_0x4a92ce(0x187)]>0x0&&_0xf9a651['push']({'path':_0x53c2ce,'replacements':_0x13492a});}return{'files':_0xf9a651};}[a0_0x4859f8(0x184)](_0x393c86,_0x3847ef){const _0x238d53=a0_0x4859f8,_0x290581=new RegExp(_0x3847ef+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x1923ea=_0x290581[_0x238d53(0x14e)](_0x393c86);return _0x1923ea?_0x1923ea[0x1]:null;}[a0_0x4859f8(0x162)](_0x446423,_0x25ab72){const _0x98909c=a0_0x4859f8;switch(_0x25ab72){case'newlines':return _0x446423[_0x98909c(0x1aa)](/^\n+|\n+$/g,'');case'none':return _0x446423;case _0x98909c(0x1a4):default:return _0x446423['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x4859f8(0x146)](_0x155e24){const _0x233d6e=a0_0x4859f8,_0x21c0ad=[];if(!_0x155e24['files']||!Array[_0x233d6e(0x179)](_0x155e24[_0x233d6e(0x155)]))_0x21c0ad[_0x233d6e(0x193)](_0x233d6e(0x149));else{_0x155e24[_0x233d6e(0x155)]['length']===0x0&&_0x21c0ad[_0x233d6e(0x193)]('files\x20array\x20cannot\x20be\x20empty');_0x155e24[_0x233d6e(0x155)]['length']>this[_0x233d6e(0x15f)][_0x233d6e(0x16c)]&&_0x21c0ad['push']('Cannot\x20process\x20more\x20than\x20'+this[_0x233d6e(0x15f)][_0x233d6e(0x16c)]+_0x233d6e(0x171));for(const _0x197da7 of _0x155e24[_0x233d6e(0x155)]){!_0x197da7[_0x233d6e(0x167)]&&_0x21c0ad[_0x233d6e(0x193)](_0x233d6e(0x19a));_0x197da7[_0x233d6e(0x167)]&&_0x197da7[_0x233d6e(0x167)][_0x233d6e(0x170)]('..')&&_0x21c0ad[_0x233d6e(0x193)](_0x233d6e(0x17d)+_0x197da7['path']);if(!_0x197da7[_0x233d6e(0x1a3)]||!Array[_0x233d6e(0x179)](_0x197da7['replacements']))_0x21c0ad['push']('File\x20'+_0x197da7['path']+'\x20must\x20have\x20replacements\x20array');else{if(_0x197da7['replacements']['length']===0x0)_0x21c0ad['push'](_0x233d6e(0x156)+_0x197da7[_0x233d6e(0x167)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x4ee13c of _0x197da7[_0x233d6e(0x1a3)]){!_0x4ee13c[_0x233d6e(0x168)]&&_0x4ee13c['oldContent']!==''&&_0x21c0ad['push'](_0x233d6e(0x16a)+_0x197da7['path']+_0x233d6e(0x14f)),!_0x4ee13c[_0x233d6e(0x150)]&&_0x4ee13c['newContent']!==''&&_0x21c0ad['push']('Replacement\x20in\x20'+_0x197da7['path']+'\x20missing\x20newContent'),_0x4ee13c[_0x233d6e(0x168)]&&_0x4ee13c[_0x233d6e(0x168)]['length']>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0x21c0ad[_0x233d6e(0x193)](_0x233d6e(0x18b)+this[_0x233d6e(0x15f)][_0x233d6e(0x154)]/0x400+_0x233d6e(0x166)),_0x4ee13c['newContent']&&_0x4ee13c[_0x233d6e(0x150)]['length']>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x21c0ad['push'](_0x233d6e(0x18d)+this['replaceConfig'][_0x233d6e(0x190)]/0x400+_0x233d6e(0x166)),_0x4ee13c['mode']&&![_0x233d6e(0x1a4),'newlines',_0x233d6e(0x15b)]['includes'](_0x4ee13c['mode'])&&_0x21c0ad[_0x233d6e(0x193)](_0x233d6e(0x197)+_0x4ee13c['mode']+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x21c0ad[_0x233d6e(0x187)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x21c0ad['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x106d29,_0x71fafd){const _0x120e10=a0_0x4859f8,{files:_0x8e0e7}=_0x106d29,{projectDir:_0x83183,agentId:_0x7e064d,directoryAccess:_0x3c168d}=_0x71fafd;let _0x247ffa=_0x83183||process['cwd']();_0x3c168d&&_0x3c168d['workingDirectory']&&(_0x247ffa=_0x3c168d['workingDirectory'],this[_0x120e10(0x174)]?.[_0x120e10(0x17f)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x3c168d['workingDirectory'],'agentId':_0x7e064d}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x8e0e7[_0x120e10(0x187)],'workingDirectory':_0x247ffa,'agentId':_0x7e064d});const _0x5ee1ab=[],_0x356bf9={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x9cdbd8 of _0x8e0e7){try{const _0x13c394=await this[_0x120e10(0x152)](_0x9cdbd8,_0x247ffa,_0x3c168d);_0x5ee1ab[_0x120e10(0x193)](_0x13c394),_0x356bf9['filesProcessed']++,_0x13c394[_0x120e10(0x151)]>0x0&&(_0x356bf9[_0x120e10(0x19d)]++,_0x356bf9[_0x120e10(0x16b)]+=_0x13c394[_0x120e10(0x151)]),_0x13c394[_0x120e10(0x165)]&&_0x356bf9['backupsCreated']++;}catch(_0x2e15e7){this[_0x120e10(0x174)]?.['error']('Error\x20processing\x20file\x20'+_0x9cdbd8[_0x120e10(0x167)],{'error':_0x2e15e7[_0x120e10(0x19c)]}),_0x5ee1ab[_0x120e10(0x193)]({'filePath':_0x9cdbd8['path'],'success':![],'error':_0x2e15e7['message']}),_0x356bf9[_0x120e10(0x148)]++;}}return{'success':_0x356bf9['errors']===0x0,'results':_0x5ee1ab,'statistics':_0x356bf9,'summary':this[_0x120e10(0x1ab)](_0x356bf9),'toolUsed':_0x120e10(0x1a0)};}async['processFile'](_0x50a2f0,_0xf36401,_0xa19701){const _0x2e252e=a0_0x4859f8,{path:_0x27a4e1,replacements:_0x327079}=_0x50a2f0,_0x4fcc7=a0_0x4d01c9[_0x2e252e(0x186)](_0x27a4e1)?_0x27a4e1:a0_0x4d01c9[_0x2e252e(0x164)](_0xf36401,_0x27a4e1);if(_0xa19701){const _0x417645=this['isPathAccessible'](_0x4fcc7,_0xf36401,_0xa19701);if(!_0x417645)throw new Error(_0x2e252e(0x17b)+_0x27a4e1);}try{await a0_0x3fe062['access'](_0x4fcc7);}catch(_0xd3c810){throw new Error(_0x2e252e(0x189)+_0x27a4e1);}const _0x193c5d=await a0_0x3fe062[_0x2e252e(0x144)](_0x4fcc7);if(_0x193c5d['size']>this['replaceConfig'][_0x2e252e(0x145)])throw new Error(_0x2e252e(0x14a)+this[_0x2e252e(0x15f)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x27a4e1);let _0xfa7045=await a0_0x3fe062[_0x2e252e(0x15c)](_0x4fcc7,_0x2e252e(0x157));const _0x29ddc0=_0xfa7045;let _0x5582e2=![];if(this[_0x2e252e(0x15f)]['CREATE_BACKUPS']){const _0x278f50=_0x4fcc7+this[_0x2e252e(0x15f)][_0x2e252e(0x195)];try{await a0_0x3fe062[_0x2e252e(0x177)](_0x278f50,_0x29ddc0,_0x2e252e(0x157)),_0x5582e2=!![];}catch(_0x4c4e11){this['logger']?.['warn'](_0x2e252e(0x181)+_0x4c4e11[_0x2e252e(0x19c)]);}}let _0x2ba903=0x0;const _0x9af47f=[];for(const _0x1885a7 of _0x327079){const _0x2473eb=await this[_0x2e252e(0x175)](_0xfa7045,_0x1885a7['oldContent'],_0x1885a7['newContent'],_0x1885a7[_0x2e252e(0x1a9)],_0x1885a7['mode']);_0xfa7045=_0x2473eb['newContent'],_0x2ba903+=_0x2473eb[_0x2e252e(0x18e)],_0x9af47f[_0x2e252e(0x193)]({'oldContent':_0x1885a7['oldContent'][_0x2e252e(0x172)](0x0,0x32)+(_0x1885a7['oldContent'][_0x2e252e(0x187)]>0x32?'...':''),'newContent':_0x1885a7[_0x2e252e(0x150)]['substring'](0x0,0x32)+(_0x1885a7[_0x2e252e(0x150)][_0x2e252e(0x187)]>0x32?_0x2e252e(0x17e):''),'count':_0x2473eb[_0x2e252e(0x18e)],'mode':_0x1885a7[_0x2e252e(0x19e)],'linesLimit':_0x1885a7['linesLimit']});}_0x2ba903>0x0&&await a0_0x3fe062['writeFile'](_0x4fcc7,_0xfa7045,_0x2e252e(0x157));const _0x227c26=_0x2ba903>0x0?this[_0x2e252e(0x17c)](_0x29ddc0,_0xfa7045):null;return{'filePath':_0x27a4e1,'resolvedPath':_0x4fcc7,'success':!![],'replacementsMade':_0x2ba903,'backupCreated':_0x5582e2,'replacementDetails':_0x9af47f,'diff':_0x227c26,'message':_0x2ba903>0x0?_0x2e252e(0x1a5)+_0x2ba903+_0x2e252e(0x1a6)+_0x27a4e1:_0x2e252e(0x158)+_0x27a4e1+'\x20(content\x20not\x20found)'};}['isPathAccessible'](_0x4b90fd,_0x2e9c24,_0x3973af){const _0x361d9e=a0_0x4859f8,_0x1d3715=a0_0x4d01c9[_0x361d9e(0x159)](_0x2e9c24,_0x4b90fd);if(!_0x1d3715[_0x361d9e(0x198)]('..')&&!a0_0x4d01c9[_0x361d9e(0x186)](_0x1d3715))return!![];if(_0x3973af[_0x361d9e(0x178)])for(const _0x5524ec of _0x3973af['writeEnabledDirectories']){const _0x5579ae=a0_0x4d01c9['relative'](_0x5524ec,_0x4b90fd);if(!_0x5579ae['startsWith']('..')&&!a0_0x4d01c9['isAbsolute'](_0x5579ae))return!![];}return![];}async[a0_0x4859f8(0x175)](_0x5200b7,_0x395095,_0x33e35d,_0x44c5ae,_0x25c875){const _0x5979ad=a0_0x4859f8;if(!_0x44c5ae){const _0x2cf235=this['countOccurrences'](_0x5200b7,_0x395095);if(_0x2cf235===0x0)return{'newContent':_0x5200b7,'count':0x0};const _0x2f050a=_0x5200b7['split'](_0x395095)['join'](_0x33e35d);return{'newContent':_0x2f050a,'count':_0x2cf235};}const _0x1e52cc=this[_0x5979ad(0x14c)](_0x44c5ae),_0x113dd4=_0x5200b7['split']('\x0a');let _0x10a01c=0x0;for(let _0x5e4139=0x0;_0x5e4139<_0x113dd4['length'];_0x5e4139++){const _0xc99d8c=_0x5e4139+0x1;if(_0x1e52cc['has'](_0xc99d8c)){if(_0x113dd4[_0x5e4139]['includes'](_0x395095)){const _0x1d3545=this[_0x5979ad(0x18c)](_0x113dd4[_0x5e4139],_0x395095);_0x113dd4[_0x5e4139]=_0x113dd4[_0x5e4139][_0x5979ad(0x169)](_0x395095)['join'](_0x33e35d),_0x10a01c+=_0x1d3545;}}}return{'newContent':_0x113dd4['join']('\x0a'),'count':_0x10a01c};}['countOccurrences'](_0x248085,_0xfce241){if(!_0xfce241)return 0x0;return _0x248085['split'](_0xfce241)['length']-0x1;}[a0_0x4859f8(0x14c)](_0x418f8d){const _0x96eedf=a0_0x4859f8,_0x4bc3f7=new Set();if(!_0x418f8d||_0x418f8d[_0x96eedf(0x1a4)]()==='')return _0x4bc3f7;const _0x3624ab=_0x418f8d[_0x96eedf(0x169)](',');for(const _0x3cb890 of _0x3624ab){const _0x226fa5=_0x3cb890[_0x96eedf(0x1a4)]();if(_0x226fa5==='')continue;if(_0x226fa5[_0x96eedf(0x170)]('-')){const [_0x301999,_0x1f445f]=_0x226fa5[_0x96eedf(0x169)]('-')['map'](_0x11f5dd=>parseInt(_0x11f5dd[_0x96eedf(0x1a4)](),0xa));if(!isNaN(_0x301999)&&!isNaN(_0x1f445f)&&_0x1f445f-_0x301999<this[_0x96eedf(0x15f)][_0x96eedf(0x15a)])for(let _0x43a340=_0x301999;_0x43a340<=_0x1f445f;_0x43a340++){_0x4bc3f7[_0x96eedf(0x18a)](_0x43a340);}}else{const _0x15f343=parseInt(_0x226fa5,0xa);!isNaN(_0x15f343)&&_0x4bc3f7[_0x96eedf(0x18a)](_0x15f343);}}return _0x4bc3f7;}['generateDiff'](_0x122f28,_0x292413){const _0x5092c2=a0_0x4859f8,_0x3d7a30=_0x122f28['split']('\x0a'),_0x18833f=_0x292413[_0x5092c2(0x169)]('\x0a');let _0x474ef8=-0x1,_0x47f998=-0x1;const _0x1628f3=Math['max'](_0x3d7a30[_0x5092c2(0x187)],_0x18833f[_0x5092c2(0x187)]);for(let _0x407b14=0x0;_0x407b14<_0x1628f3;_0x407b14++){const _0x35e834=_0x407b14<_0x3d7a30['length']?_0x3d7a30[_0x407b14]:'',_0x521515=_0x407b14<_0x18833f['length']?_0x18833f[_0x407b14]:'';if(_0x35e834!==_0x521515){if(_0x474ef8===-0x1)_0x474ef8=_0x407b14;_0x47f998=_0x407b14;}}if(_0x474ef8===-0x1)return _0x5092c2(0x15e);const _0xdb5e1f=this['replaceConfig'][_0x5092c2(0x1a8)],_0xc589c0=Math['max'](0x0,_0x474ef8-_0xdb5e1f),_0x40bc8a=Math['min'](_0x1628f3-0x1,_0x47f998+_0xdb5e1f);if(_0x40bc8a-_0xc589c0>this[_0x5092c2(0x15f)][_0x5092c2(0x196)])return _0x5092c2(0x1a7)+(_0x40bc8a-_0xc589c0+0x1)+_0x5092c2(0x185)+('Changed\x20lines:\x20'+(_0x474ef8+0x1)+_0x5092c2(0x16f)+(_0x47f998+0x1));let _0x4df03d=_0x5092c2(0x16e)+(_0xc589c0+0x1)+','+(_0x40bc8a-_0xc589c0+0x1)+'\x20+'+(_0xc589c0+0x1)+','+(_0x40bc8a-_0xc589c0+0x1)+'\x20@@\x0a';for(let _0x511d9c=_0xc589c0;_0x511d9c<=_0x40bc8a;_0x511d9c++){const _0x381130=_0x511d9c<_0x3d7a30['length']?_0x3d7a30[_0x511d9c]:'',_0x6f5cba=_0x511d9c<_0x18833f['length']?_0x18833f[_0x511d9c]:'';_0x381130===_0x6f5cba?_0x4df03d+='\x20\x20'+_0x381130+'\x0a':(_0x4df03d+='-\x20'+_0x381130+'\x0a',_0x4df03d+='+\x20'+_0x6f5cba+'\x0a');}return _0x4df03d;}['generateSummary'](_0x917267){const _0x2c86da=a0_0x4859f8;return('\x0aProcessed\x20'+_0x917267[_0x2c86da(0x14b)]+_0x2c86da(0x173)+_0x917267[_0x2c86da(0x19d)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x917267['totalReplacements']+'\x0aBackups\x20created:\x20'+_0x917267[_0x2c86da(0x191)]+'\x0aErrors:\x20'+_0x917267[_0x2c86da(0x148)]+'\x0a\x20\x20\x20\x20')['trim']();}async[a0_0x4859f8(0x160)](_0x4df08e){const _0x4201fa=a0_0x4859f8;this[_0x4201fa(0x174)]?.['info'](_0x4201fa(0x1a2),{'operationId':_0x4df08e});}}export default FileContentReplaceTool;function a0_0x4809(_0x532512,_0x3e3013){_0x532512=_0x532512-0x144;const _0x3b22e2=a0_0x3b22();let _0x480921=_0x3b22e2[_0x532512];if(a0_0x4809['QcMxrW']===undefined){var _0x2be3a8=function(_0x59b5a2){const _0x4585bc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3fe062='',_0x4d01c9='';for(let _0x50fe14=0x0,_0x1591e5,_0x23e2c5,_0xf3b1bb=0x0;_0x23e2c5=_0x59b5a2['charAt'](_0xf3b1bb++);~_0x23e2c5&&(_0x1591e5=_0x50fe14%0x4?_0x1591e5*0x40+_0x23e2c5:_0x23e2c5,_0x50fe14++%0x4)?_0x3fe062+=String['fromCharCode'](0xff&_0x1591e5>>(-0x2*_0x50fe14&0x6)):0x0){_0x23e2c5=_0x4585bc['indexOf'](_0x23e2c5);}for(let _0x261611=0x0,_0x9688f=_0x3fe062['length'];_0x261611<_0x9688f;_0x261611++){_0x4d01c9+='%'+('00'+_0x3fe062['charCodeAt'](_0x261611)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4d01c9);};a0_0x4809['OYUhGz']=_0x2be3a8,a0_0x4809['TPqdEC']={},a0_0x4809['QcMxrW']=!![];}const _0x103e13=_0x3b22e2[0x0],_0x23337c=_0x532512+_0x103e13,_0x3c76eb=a0_0x4809['TPqdEC'][_0x23337c];return!_0x3c76eb?(_0x480921=a0_0x4809['OYUhGz'](_0x480921),a0_0x4809['TPqdEC'][_0x23337c]=_0x480921):_0x480921=_0x3c76eb,_0x480921;}function a0_0x3b22(){const _0x586fec=['D2fYBG','BwvZC2fNzq','zMLSzxnnB2rPzMLLza','Bw9Kzq','ntK4ntiZoff5wMnvrG','zMLSzs1JB250zw50lxjLCgXHy2u','ntm5mZe4zhb1r29k','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','CMvWBgfJzw1LBNrZ','DhjPBq','twfKzsa','ihjLCgXHy2vTzw50khmPigLUia','rgLMzIb0B28GBgfYz2uGka','reLgrL9dt05urvHux0XjtKvt','BgLUzxnmAw1PDa','CMvWBgfJzq','z2vUzxjHDgvtDw1Tyxj5','C3rHDa','tufyx0zjtevFu0LArq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','ndqXmZC5nuPjz3fSrq','zxjYB3jZ','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','rMLSzsb0B28GBgfYz2uGkg1HEca','zMLSzxnqCM9JzxnZzwq','CgfYC2vmAw5LuMfUz2vZ','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','zxHLyW','ig1PC3nPBMCGB2XKq29UDgvUDa','BMv3q29UDgvUDa','CMvWBgfJzw1LBNrZtwfKzq','ChjVy2vZC0zPBgu','mta0oty4mfbJq3ntBa','tufyx09mrf9dt05uru5ux1njwKu','zMLSzxm','rMLSzsa','DxrMltG','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','CMvSyxrPDMu','tufyx0XjtKvFuKfor0vFu0LArq','BM9Uzq','CMvHzezPBgu','mtC2nZG5nMTuyNHwBq','tM8GzgLMzMvYzw5Jzxm','CMvWBgfJzunVBMzPzW','y2XLyw51Ca','CgfYC2vqyxjHBwv0zxjZ','yxbWBhLuCMLTtw9Kzq','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','CMvZB2X2zq','yMfJA3vWq3jLyxrLza','s0iP','Cgf0Aa','B2XKq29UDgvUDa','C3bSAxq','uMvWBgfJzw1LBNqGAw4G','Dg90ywXszxbSywnLBwvUDhm','tufyx0zjtevtx1bfuL9puevsqvrjt04','CgfYC2u','qeaGlq','ihrVia','Aw5JBhvKzxm','igzPBgvZigLUig9UzsbVCgvYyxrPB24','C3vIC3rYAw5N','igzPBguOCYKktw9KAwzPzwqG','Bg9Nz2vY','yxbWBhLszxbSywnLBwvUDa','revgqvvmvf9uuKLnx01preu','D3jPDgvgAwXL','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','AxnbCNjHEq','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','ugf0AcbUB3qGywnJzxnZAwjSztOG','z2vUzxjHDgveAwzM','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','lI4U','Aw5MBW','CgfYC2vytuW','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','mJm3mdi5n0fQtNPwrG','AxnbC3LUyW','zxH0CMfJDef0DhjPyNv0zq','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','AxnbyNnVBhv0zq','BgvUz3rO','CgfYC2vku09o','rMLSzsbUB3qGzM91BMq6ia','ywrK','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','y291BNrpy2n1CNjLBMnLCW','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','y291BNq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','tufyx05fv19dt05uru5ux1njwKu','yMfJA3vWC0nYzwf0zwq','otq1nZu2D2zYAwL0','ChvZAa','z2v0rgvZy3jPChrPB24','qKfds1vqx0vyvevou0LptG','tufyx0rjrKzFteLorvm','sw52ywXPzcbTB2rLoIa','C3rHCNrZv2L0Aa','DgLTzw91Da','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG'];a0_0x3b22=function(){return _0x586fec;};return a0_0x3b22();}
|
|
1
|
+
const a0_0x3b1076=a0_0x4b47;(function(_0x4f5a9a,_0x21fa75){const _0x8b6f0b=a0_0x4b47,_0x588fb4=_0x4f5a9a();while(!![]){try{const _0x6d98c8=-parseInt(_0x8b6f0b(0x244))/0x1*(-parseInt(_0x8b6f0b(0x258))/0x2)+parseInt(_0x8b6f0b(0x250))/0x3+-parseInt(_0x8b6f0b(0x233))/0x4+-parseInt(_0x8b6f0b(0x20a))/0x5+-parseInt(_0x8b6f0b(0x232))/0x6*(-parseInt(_0x8b6f0b(0x21e))/0x7)+-parseInt(_0x8b6f0b(0x230))/0x8*(-parseInt(_0x8b6f0b(0x209))/0x9)+-parseInt(_0x8b6f0b(0x211))/0xa;if(_0x6d98c8===_0x21fa75)break;else _0x588fb4['push'](_0x588fb4['shift']());}catch(_0x44cff8){_0x588fb4['push'](_0x588fb4['shift']());}}}(a0_0x4994,0xc948c));import{BaseTool}from'./baseTool.js';import{promises as a0_0x5959cc}from'fs';import a0_0x102328 from'path';function a0_0x4b47(_0x1b5c29,_0x361d5a){_0x1b5c29=_0x1b5c29-0x1ef;const _0x499488=a0_0x4994();let _0x4b4790=_0x499488[_0x1b5c29];if(a0_0x4b47['yZMPez']===undefined){var _0x39a5ac=function(_0x66fa40){const _0x16de5b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5959cc='',_0x102328='';for(let _0x352a22=0x0,_0x4f773e,_0x84c4ea,_0x413ff8=0x0;_0x84c4ea=_0x66fa40['charAt'](_0x413ff8++);~_0x84c4ea&&(_0x4f773e=_0x352a22%0x4?_0x4f773e*0x40+_0x84c4ea:_0x84c4ea,_0x352a22++%0x4)?_0x5959cc+=String['fromCharCode'](0xff&_0x4f773e>>(-0x2*_0x352a22&0x6)):0x0){_0x84c4ea=_0x16de5b['indexOf'](_0x84c4ea);}for(let _0x30234a=0x0,_0x28584f=_0x5959cc['length'];_0x30234a<_0x28584f;_0x30234a++){_0x102328+='%'+('00'+_0x5959cc['charCodeAt'](_0x30234a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x102328);};a0_0x4b47['DmNOqg']=_0x39a5ac,a0_0x4b47['ufEUsv']={},a0_0x4b47['yZMPez']=!![];}const _0x3fb7ec=_0x499488[0x0],_0x40fdab=_0x1b5c29+_0x3fb7ec,_0x4b512c=a0_0x4b47['ufEUsv'][_0x40fdab];return!_0x4b512c?(_0x4b4790=a0_0x4b47['DmNOqg'](_0x4b4790),a0_0x4b47['ufEUsv'][_0x40fdab]=_0x4b4790):_0x4b4790=_0x4b512c,_0x4b4790;}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_0x3b1076(0x22c),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x352a22={},_0x4f773e=null){const _0x2c925f=a0_0x3b1076;super(_0x352a22,_0x4f773e),this[_0x2c925f(0x21d)]=!![],this[_0x2c925f(0x234)]=!![],this[_0x2c925f(0x204)]=_0x352a22['timeout']||0x1d4c0,this[_0x2c925f(0x1f9)]={...REPLACE_CONFIG,..._0x352a22[_0x2c925f(0x1f9)]};}['getDescription'](){const _0x8c4b41=a0_0x3b1076;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[_0x8c4b41(0x22e)]/(0x400*0x400)+_0x8c4b41(0x205)+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x8c4b41(0x203)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG[_0x8c4b41(0x21f)]+_0x8c4b41(0x236)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+'\x0a\x0aNOTES:\x0a\x0a-\x20Use\x20the\x20seek\x20tool\x20first\x20to\x20verify\x20content\x20exists\x0a-\x20Backups\x20are\x20created\x20automatically\x20(.bak\x20extension)\x0a-\x20Replacements\x20are\x20case-sensitive\x0a-\x20Old\x20content\x20must\x20match\x20exactly\x20(after\x20trim\x20mode\x20applied)\x0a-\x20Multiple\x20occurrences\x20are\x20all\x20replaced\x20unless\x20linesLimit\x20specified\x0a-\x20Tool\x20validates\x20paths\x20against\x20agent\x27s\x20accessible\x20directories\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0a\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}[a0_0x3b1076(0x254)](_0x84c4ea){const _0x4ad958=a0_0x3b1076;try{if(_0x84c4ea['trim']()['startsWith']('{'))return this['parseJSON'](_0x84c4ea);return this[_0x4ad958(0x23f)](_0x84c4ea);}catch(_0x413ff8){this['logger']?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x413ff8[_0x4ad958(0x222)]});throw new Error(_0x4ad958(0x239)+_0x413ff8['message']);}}[a0_0x3b1076(0x216)](_0x30234a){const _0x259108=a0_0x3b1076,_0x28584f=JSON[_0x259108(0x227)](_0x30234a);if(!_0x28584f['files']||!Array[_0x259108(0x219)](_0x28584f[_0x259108(0x22a)]))throw new Error(_0x259108(0x251));return{'files':_0x28584f[_0x259108(0x22a)][_0x259108(0x213)](_0x481200=>({'path':_0x481200['path'],'replacements':(_0x481200[_0x259108(0x23d)]||[])['map'](_0x289d3f=>({'oldContent':_0x289d3f[_0x259108(0x226)],'newContent':_0x289d3f['newContent'],'mode':_0x289d3f['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x289d3f[_0x259108(0x255)]||null}))}))};}['parseXML'](_0xd140eb){const _0x17681a=a0_0x3b1076,_0x536172=[],_0x190d82=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x5555cd;while((_0x5555cd=_0x190d82['exec'](_0xd140eb))!==null){const _0x6f007c=_0x5555cd[0x1],_0x3e5b15=_0x5555cd[0x2],_0x3cc2fe=[],_0x5a95af=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1d9b21;while((_0x1d9b21=_0x5a95af['exec'](_0x3e5b15))!==null){const _0x4ab5e9=_0x1d9b21[0x1]||'',_0xc8c1d0=_0x1d9b21[0x2],_0x37cddf=this['extractAttribute'](_0x4ab5e9,_0x17681a(0x249))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x2cefb4=this['extractAttribute'](_0x4ab5e9,'lines-limit'),_0x38a39f=/<old-content>([\s\S]*?)<\/old-content>/i[_0x17681a(0x1fb)](_0xc8c1d0);if(!_0x38a39f){this[_0x17681a(0x212)]?.['warn'](_0x17681a(0x237));continue;}const _0x425c13=_0x38a39f[0x1],_0x2f4463=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0xc8c1d0);if(!_0x2f4463){this[_0x17681a(0x212)]?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4e8f67=_0x2f4463[0x1],_0x174b8a=this[_0x17681a(0x202)](_0x425c13,_0x37cddf),_0x1d34dc=this['applyTrimMode'](_0x4e8f67,_0x37cddf);_0x3cc2fe[_0x17681a(0x246)]({'oldContent':_0x174b8a,'newContent':_0x1d34dc,'mode':_0x37cddf,'linesLimit':_0x2cefb4});}_0x3cc2fe[_0x17681a(0x24d)]>0x0&&_0x536172[_0x17681a(0x246)]({'path':_0x6f007c,'replacements':_0x3cc2fe});}return{'files':_0x536172};}[a0_0x3b1076(0x20c)](_0x5e6522,_0x174a9c){const _0x162e0d=new RegExp(_0x174a9c+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x106e79=_0x162e0d['exec'](_0x5e6522);return _0x106e79?_0x106e79[0x1]:null;}[a0_0x3b1076(0x202)](_0x527d4a,_0x3af6af){const _0x3159ed=a0_0x3b1076;switch(_0x3af6af){case _0x3159ed(0x25a):return _0x527d4a['replace'](/^\n+|\n+$/g,'');case'none':return _0x527d4a;case _0x3159ed(0x1f7):default:return _0x527d4a['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x3b1076(0x206)](_0x472582){const _0x272d77=a0_0x3b1076,_0x459f3f=[];if(!_0x472582['files']||!Array['isArray'](_0x472582[_0x272d77(0x22a)]))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1f4));else{_0x472582['files']['length']===0x0&&_0x459f3f['push'](_0x272d77(0x1ff));_0x472582['files'][_0x272d77(0x24d)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fd)+this['replaceConfig'][_0x272d77(0x1f1)]+'\x20files\x20in\x20one\x20operation');for(const _0x53d45c of _0x472582['files']){!_0x53d45c[_0x272d77(0x1f0)]&&_0x459f3f['push']('Each\x20file\x20must\x20have\x20a\x20path');_0x53d45c['path']&&_0x53d45c['path']['includes']('..')&&_0x459f3f['push'](_0x272d77(0x21b)+_0x53d45c[_0x272d77(0x1f0)]);if(!_0x53d45c['replacements']||!Array['isArray'](_0x53d45c['replacements']))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x224)+_0x53d45c[_0x272d77(0x1f0)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x53d45c['replacements'][_0x272d77(0x24d)]===0x0)_0x459f3f['push'](_0x272d77(0x224)+_0x53d45c['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5c326c of _0x53d45c[_0x272d77(0x23d)]){!_0x5c326c['oldContent']&&_0x5c326c[_0x272d77(0x226)]!==''&&_0x459f3f[_0x272d77(0x246)]('Replacement\x20in\x20'+_0x53d45c[_0x272d77(0x1f0)]+_0x272d77(0x21a)),!_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']!==''&&_0x459f3f['push']('Replacement\x20in\x20'+_0x53d45c['path']+_0x272d77(0x20b)),_0x5c326c[_0x272d77(0x226)]&&_0x5c326c[_0x272d77(0x226)]['length']>this['replaceConfig'][_0x272d77(0x24c)]&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fa)+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']['length']>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x459f3f['push'](_0x272d77(0x22d)+this[_0x272d77(0x1f9)][_0x272d77(0x1f8)]/0x400+'KB)'),_0x5c326c[_0x272d77(0x249)]&&![_0x272d77(0x1f7),_0x272d77(0x25a),'none']['includes'](_0x5c326c[_0x272d77(0x249)])&&_0x459f3f[_0x272d77(0x246)]('Invalid\x20mode:\x20'+_0x5c326c['mode']+_0x272d77(0x220));}}}}if(_0x459f3f[_0x272d77(0x24d)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x459f3f[_0x272d77(0x243)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x3b1076(0x238)](_0x3f557b,_0x31de1e){const _0x58a100=a0_0x3b1076,{files:_0x503ca5}=_0x3f557b,{projectDir:_0x3b8993,agentId:_0x139bea,directoryAccess:_0xa70fbf}=_0x31de1e;let _0x3d2191=_0x3b8993||process['cwd']();_0xa70fbf&&_0xa70fbf['workingDirectory']&&(_0x3d2191=_0xa70fbf['workingDirectory'],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0xa70fbf[_0x58a100(0x23b)],'agentId':_0x139bea}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x503ca5['length'],'workingDirectory':_0x3d2191,'agentId':_0x139bea});const _0x52c786=[],_0x56a159={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x28c25b of _0x503ca5){try{const _0x5b2339=await this[_0x58a100(0x231)](_0x28c25b,_0x3d2191,_0xa70fbf);_0x52c786[_0x58a100(0x246)](_0x5b2339),_0x56a159['filesProcessed']++,_0x5b2339['replacementsMade']>0x0&&(_0x56a159[_0x58a100(0x210)]++,_0x56a159[_0x58a100(0x253)]+=_0x5b2339[_0x58a100(0x229)]),_0x5b2339[_0x58a100(0x214)]&&_0x56a159[_0x58a100(0x245)]++;}catch(_0x356c7f){this[_0x58a100(0x212)]?.[_0x58a100(0x1f6)](_0x58a100(0x257)+_0x28c25b['path'],{'error':_0x356c7f['message']}),_0x52c786['push']({'filePath':_0x28c25b[_0x58a100(0x1f0)],'success':![],'error':_0x356c7f[_0x58a100(0x222)]}),_0x56a159[_0x58a100(0x208)]++;}}return{'success':_0x56a159['errors']===0x0,'results':_0x52c786,'statistics':_0x56a159,'summary':this[_0x58a100(0x242)](_0x56a159),'toolUsed':_0x58a100(0x22f)};}async[a0_0x3b1076(0x231)](_0x345a03,_0xe2dc42,_0x11eae3){const _0x4eec56=a0_0x3b1076,{path:_0x14c7b1,replacements:_0x2ba411}=_0x345a03,_0x18a165=a0_0x102328[_0x4eec56(0x1ef)](_0x14c7b1)?_0x14c7b1:a0_0x102328[_0x4eec56(0x240)](_0xe2dc42,_0x14c7b1);if(_0x11eae3){const _0x4ae01d=this[_0x4eec56(0x207)](_0x18a165,_0xe2dc42,_0x11eae3);if(!_0x4ae01d)throw new Error(_0x4eec56(0x225)+_0x14c7b1);}try{await a0_0x5959cc[_0x4eec56(0x21c)](_0x18a165);}catch(_0x2b8704){throw new Error(_0x4eec56(0x247)+_0x14c7b1);}const _0x482dfe=await a0_0x5959cc['stat'](_0x18a165);if(_0x482dfe[_0x4eec56(0x235)]>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x4eec56(0x1f9)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x14c7b1);let _0x15f671=await a0_0x5959cc['readFile'](_0x18a165,_0x4eec56(0x223));const _0x478804=_0x15f671;let _0x21ddf1=![];if(this[_0x4eec56(0x1f9)]['CREATE_BACKUPS']){const _0x2a9b7b=_0x18a165+this[_0x4eec56(0x1f9)]['BACKUP_EXTENSION'];try{await a0_0x5959cc['writeFile'](_0x2a9b7b,_0x478804,'utf-8'),_0x21ddf1=!![];}catch(_0x157ccc){this['logger']?.['warn'](_0x4eec56(0x228)+_0x157ccc[_0x4eec56(0x222)]);}}let _0x427fdf=0x0;const _0x145bca=[];for(const _0x16331e of _0x2ba411){const _0x3762f9=await this[_0x4eec56(0x24e)](_0x15f671,_0x16331e['oldContent'],_0x16331e['newContent'],_0x16331e['linesLimit'],_0x16331e['mode']);_0x15f671=_0x3762f9['newContent'],_0x427fdf+=_0x3762f9['count'],_0x145bca['push']({'oldContent':_0x16331e['oldContent']['substring'](0x0,0x32)+(_0x16331e[_0x4eec56(0x226)][_0x4eec56(0x24d)]>0x32?_0x4eec56(0x20d):''),'newContent':_0x16331e['newContent']['substring'](0x0,0x32)+(_0x16331e['newContent'][_0x4eec56(0x24d)]>0x32?'...':''),'count':_0x3762f9['count'],'mode':_0x16331e[_0x4eec56(0x249)],'linesLimit':_0x16331e['linesLimit']});}_0x427fdf>0x0&&await a0_0x5959cc[_0x4eec56(0x24b)](_0x18a165,_0x15f671,'utf-8');const _0x4e2cfd=_0x427fdf>0x0?this[_0x4eec56(0x218)](_0x478804,_0x15f671):null;return{'filePath':_0x14c7b1,'resolvedPath':_0x18a165,'success':!![],'replacementsMade':_0x427fdf,'backupCreated':_0x21ddf1,'replacementDetails':_0x145bca,'diff':_0x4e2cfd,'message':_0x427fdf>0x0?'Made\x20'+_0x427fdf+'\x20replacement(s)\x20in\x20'+_0x14c7b1:'No\x20replacements\x20made\x20in\x20'+_0x14c7b1+'\x20(content\x20not\x20found)'};}[a0_0x3b1076(0x207)](_0x3e8792,_0x5bf52c,_0x46eb38){const _0x51227a=a0_0x3b1076,_0x306e0c=a0_0x102328[_0x51227a(0x1fc)](_0x5bf52c,_0x3e8792);if(!_0x306e0c[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0x306e0c))return!![];if(_0x46eb38['writeEnabledDirectories'])for(const _0xc5b470 of _0x46eb38['writeEnabledDirectories']){const _0xf9a6a1=a0_0x102328['relative'](_0xc5b470,_0x3e8792);if(!_0xf9a6a1[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0xf9a6a1))return!![];}return![];}async[a0_0x3b1076(0x24e)](_0x55d411,_0x43a035,_0x5eb7d2,_0x1057b3,_0x13cb4f){const _0x1820e8=a0_0x3b1076;if(!_0x1057b3){const _0x11151e=this[_0x1820e8(0x20e)](_0x55d411,_0x43a035);if(_0x11151e===0x0)return{'newContent':_0x55d411,'count':0x0};const _0x4b4d04=_0x55d411[_0x1820e8(0x23a)](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2);return{'newContent':_0x4b4d04,'count':_0x11151e};}const _0x539e7f=this[_0x1820e8(0x24a)](_0x1057b3),_0x35ead5=_0x55d411['split']('\x0a');let _0x6aed7b=0x0;for(let _0x54ace3=0x0;_0x54ace3<_0x35ead5['length'];_0x54ace3++){const _0x10ff67=_0x54ace3+0x1;if(_0x539e7f['has'](_0x10ff67)){if(_0x35ead5[_0x54ace3]['includes'](_0x43a035)){const _0x2f5f98=this[_0x1820e8(0x20e)](_0x35ead5[_0x54ace3],_0x43a035);_0x35ead5[_0x54ace3]=_0x35ead5[_0x54ace3]['split'](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2),_0x6aed7b+=_0x2f5f98;}}}return{'newContent':_0x35ead5['join']('\x0a'),'count':_0x6aed7b};}['countOccurrences'](_0x2970b1,_0x5a4e4c){if(!_0x5a4e4c)return 0x0;return _0x2970b1['split'](_0x5a4e4c)['length']-0x1;}[a0_0x3b1076(0x24a)](_0x1e45d7){const _0x201e6c=a0_0x3b1076,_0x14fc05=new Set();if(!_0x1e45d7||_0x1e45d7['trim']()==='')return _0x14fc05;const _0x11369c=_0x1e45d7[_0x201e6c(0x23a)](',');for(const _0x279192 of _0x11369c){const _0x3d22c8=_0x279192['trim']();if(_0x3d22c8==='')continue;if(_0x3d22c8[_0x201e6c(0x201)]('-')){const [_0x18f5ed,_0x197367]=_0x3d22c8['split']('-')['map'](_0xda6fe4=>parseInt(_0xda6fe4['trim'](),0xa));if(!isNaN(_0x18f5ed)&&!isNaN(_0x197367)&&_0x197367-_0x18f5ed<this[_0x201e6c(0x1f9)][_0x201e6c(0x1f5)])for(let _0x21f343=_0x18f5ed;_0x21f343<=_0x197367;_0x21f343++){_0x14fc05['add'](_0x21f343);}}else{const _0x24d98c=parseInt(_0x3d22c8,0xa);!isNaN(_0x24d98c)&&_0x14fc05['add'](_0x24d98c);}}return _0x14fc05;}['generateDiff'](_0x49a6ed,_0x51ad7f){const _0x57ac78=a0_0x3b1076,_0x32b0ee=_0x49a6ed[_0x57ac78(0x23a)]('\x0a'),_0x41e633=_0x51ad7f['split']('\x0a');let _0x485ce0=-0x1,_0x5329b9=-0x1;const _0x5ace8c=Math['max'](_0x32b0ee['length'],_0x41e633[_0x57ac78(0x24d)]);for(let _0x2aac6e=0x0;_0x2aac6e<_0x5ace8c;_0x2aac6e++){const _0x2f729f=_0x2aac6e<_0x32b0ee[_0x57ac78(0x24d)]?_0x32b0ee[_0x2aac6e]:'',_0x58be6b=_0x2aac6e<_0x41e633['length']?_0x41e633[_0x2aac6e]:'';if(_0x2f729f!==_0x58be6b){if(_0x485ce0===-0x1)_0x485ce0=_0x2aac6e;_0x5329b9=_0x2aac6e;}}if(_0x485ce0===-0x1)return _0x57ac78(0x248);const _0x3c954c=this['replaceConfig']['DIFF_CONTEXT_LINES'],_0x4a1841=Math[_0x57ac78(0x200)](0x0,_0x485ce0-_0x3c954c),_0xbe33cd=Math[_0x57ac78(0x256)](_0x5ace8c-0x1,_0x5329b9+_0x3c954c);if(_0xbe33cd-_0x4a1841>this['replaceConfig'][_0x57ac78(0x221)])return'Diff\x20too\x20large\x20('+(_0xbe33cd-_0x4a1841+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x57ac78(0x259)+(_0x485ce0+0x1)+_0x57ac78(0x20f)+(_0x5329b9+0x1));let _0x439991=_0x57ac78(0x22b)+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+'\x20+'+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+_0x57ac78(0x1f2);for(let _0x5e5894=_0x4a1841;_0x5e5894<=_0xbe33cd;_0x5e5894++){const _0x3df573=_0x5e5894<_0x32b0ee['length']?_0x32b0ee[_0x5e5894]:'',_0x2ab855=_0x5e5894<_0x41e633['length']?_0x41e633[_0x5e5894]:'';_0x3df573===_0x2ab855?_0x439991+='\x20\x20'+_0x3df573+'\x0a':(_0x439991+='-\x20'+_0x3df573+'\x0a',_0x439991+='+\x20'+_0x2ab855+'\x0a');}return _0x439991;}[a0_0x3b1076(0x242)](_0x59f6cf){const _0xf19956=a0_0x3b1076;return(_0xf19956(0x23e)+_0x59f6cf['filesProcessed']+_0xf19956(0x241)+_0x59f6cf['filesModified']+_0xf19956(0x23c)+_0x59f6cf[_0xf19956(0x253)]+_0xf19956(0x215)+_0x59f6cf[_0xf19956(0x245)]+'\x0aErrors:\x20'+_0x59f6cf['errors']+_0xf19956(0x1f3))['trim']();}async['cleanup'](_0x46b6da){const _0x305f0e=a0_0x3b1076;this['logger']?.[_0x305f0e(0x24f)](_0x305f0e(0x252),{'operationId':_0x46b6da});}}export default FileContentReplaceTool;function a0_0x4994(){const _0x2a01f5=['mtqYnty1m1z6ANDfBq','yMfJA3vWC0nYzwf0zwq','ChvZAa','rMLSzsbUB3qGzM91BMq6ia','tM8GzgLMzMvYzw5Jzxm','Bw9Kzq','CgfYC2vmAw5LuMfUz2vZ','D3jPDgvgAwXL','tufyx09mrf9dt05uru5ux1njwKu','BgvUz3rO','yxbWBhLszxbSywnLBwvUDa','Aw5MBW','ndmWndy3meDvzgfRzG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','Dg90ywXszxbSywnLBwvUDhm','CgfYC2vqyxjHBwv0zxjZ','BgLUzxnmAw1PDa','BwLU','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','mM1fBfHXEq','q2HHBMDLzcbSAw5LCZOG','BMv3BgLUzxm','AxnbyNnVBhv0zq','Cgf0Aa','tufyx0zjtevtx1bfuL9puevsqvrjt04','iebacG','cIaGica','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','tufyx0XjtKvFuKfor0vFu0LArq','zxjYB3i','DhjPBq','tufyx05fv19dt05uru5ux1njwKu','CMvWBgfJzunVBMzPzW','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','zxHLyW','CMvSyxrPDMu','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','BMv3q29UDgvUDa','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','Bwf4','Aw5JBhvKzxm','yxbWBhLuCMLTtw9Kzq','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','DgLTzw91Da','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','AxnqyxrOqwnJzxnZAwjSzq','zxjYB3jZ','ntGYm2XABNz5vW','ntu4otKXnuXKBu55uq','ig1PC3nPBMCGBMv3q29UDgvUDa','zxH0CMfJDef0DhjPyNv0zq','lI4U','y291BNrpy2n1CNjLBMnLCW','ihrVia','zMLSzxnnB2rPzMLLza','mJeYndiWmdbvDNr5wuq','Bg9Nz2vY','BwfW','yMfJA3vWq3jLyxrLza','cKjHy2T1ChmGy3jLyxrLzdOG','CgfYC2vku09o','C3rHCNrZv2L0Aa','z2vUzxjHDgveAwzM','AxnbCNjHEq','ig1PC3nPBMCGB2XKq29UDgvUDa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','ywnJzxnZ','CMvXDwLYzxnqCM9Qzwn0','oty5mdCZs0LuugHS','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','tufyx0rjrKzFteLorvm','BwvZC2fNzq','DxrMltG','rMLSzsa','ugf0AcbUB3qGywnJzxnZAwjSztOG','B2XKq29UDgvUDa','CgfYC2u','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxm','qeaGlq','lMjHAW','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','tufyx0zjtevFu0LArq','zMLSzs1JB250zw50lxjLCgXHy2u','mte1otjsA2nHELC','ChjVy2vZC0zPBgu','mJrqrxj0Ehu','mte0mdyZnM9ou3fiAq','AxnbC3LUyW','C2L6zq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','zxHLy3v0zq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','C3bSAxq','D29YA2LUz0rPCMvJDg9YEq','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','CMvWBgfJzw1LBNrZ','cLbYB2nLC3nLzca','CgfYC2vytuW','CMvZB2X2zq','igzPBguOCYKktw9KAwzPzwqG','z2vUzxjHDgvtDw1Tyxj5','AM9PBG'];a0_0x4994=function(){return _0x2a01f5;};return a0_0x4994();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x13ab(){const _0x165167=['u291CMnLigzPBguGDg9VigXHCMDLoIa','CgfYC2vqyxjHBwv0zxjZ','D3jPDgvgAwXL','BwfW','zgvIDwC','n3rWsuTerW','mZu3ndy0vxvNv1bc','CgfYC2vbDhrYAwj1DgvZ','zxHLy3v0zq','CMvZB2X2zq','y2HLy2TfEgLZDhm','y29UDgvUDa','lMrLBgv0zwqTyMfJA3vWlq','mNbpCvzmuW','yxbWzw5K','z2v0ugfYyw1LDgvYu2nOzw1H','C3rYAw5NAwz5','ChvZAa','BwvZC2fNzq','DMfSAwrHDgvxCML0zufJy2vZCW','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','qxbWzw5KzwqG','DhLWzq','m1LLDwPtBW','nJG2nZK2tMrhtxv6','C291CMnLlxbHDgG','zMLSzxn5CW','igL0zw1ZigLUia','zMLSzvbHDgG','yNL0zuXLBMD0Aa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zxH0BMfTzq','y3jLyxrLlwrPCG','igfJy2vZCYbKzw5Pzwq6ia','y3jLyxrLrgLYzwn0B3j5','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','BwTKAxi','odbwBefNwgG','ihrVia','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','zw50CMLLCW','CMvHzezPBgu','BgLZDa','yxbWzw5KrMLSzq','y29WEuzPBgu','C3vJy2vZCW','Dhj1zq','rMfPBgvKihrVihDYAxrLigzPBguG','B2jQzwn0','Cgf0Aa','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','DxrMoa','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','rMfPBgvKihrVihjLywqGzMLSzsa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','mJaYndCYtKzWywTc','A2v5CW','CMvZB2X2zvbHDgG','Dg9ju09tDhjPBMC','AxntEw1IB2XPy0XPBMS','D3jPDgu','rMfPBgvKihrVig1VDMuG','Bw9Kzq','ywn0Aw9UCW','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','qwn0Aw9Uia','AxnbCNjHEq','Bw92zq','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','BxrPBwu','y3DK','igj5DgvZigzYB20G','ovDgshjfCa','ywDLBNrjza','igrVzxmGBM90igv4Axn0','igj5DgvZihrVia','zgvZDfbHDgG','zgLYzwn0B3j5','q29WAwvKia','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','zxHPC3rZ','Bwf4rMLSzvnPEMu','CMf3q29UDgvUDa','yxbWzw5Kvg9gAwXL','DhjPBq','rMfPBgvKihrVignVChKG','C291CMnLugf0Aa','AxneAxjLy3rVCNK','ru5pru5u','lMnVBq','yM9VBgvHBG','zgvSzxrL','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','C3rHDhm','CMvHzgrPCG','CMvXDwLYzxnqCM9Qzwn0','zgvZDc1WyxrO','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','tufyx0zjtevFu0LArq','nti5mZi0ogvyq0vXqq','ntaYotG0rvvbrhzJ','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','Bg9N','Bw92zuzPBgu','zMLSzq','BMfTzq','ywXSB3DLza','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','DMfSAwrHDgvqyxrOqwnJzxnZ','igj5DgvZ','y29WEq','uMv0CMLLDMvKihn0yxrZigzVCIa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','Bwf0y2HbBgW','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','z2v0rgvZy3jPChrPB24','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','igv4Axn0CYbHCYa','BgvUz3rO','yxr0CMLIDxrLCW','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','CMvHC29U','zgLYBMfTzq','z2v0rMLSzvn0yxrZ','zMLSzs1WyxrO','AxngAwXL','lNnJCG','zgvSzxrLrMLSzq','y3jLyxrLuMvSyxrPDMvqyxrO','DMfSAwrHDgvszwfKqwnJzxnZ','z2v0v29YA2LUz0rPCMvJDg9YEq','ywXSB3DLzev4DgvUC2LVBNm','C3rHDa','Bg9Nz2vY','mty3odG0merlC0Hvra','BgLZDerPCMvJDg9YEq','yMXVy2TLzev4DgvUC2LVBNm','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','B3bLCMf0Aw9UsgLZDg9YEq','y3jLyxrLrgLYCW','CMvHza','mJC3mZK5ofjiq3jxCq','B3v0Chv0ugf0Aa','v3jPDguGywnJzxnZigrLBMLLzdOG','ywnJzxnZ','ywrKvg9iAxn0B3j5','uMvHzca','y29Kzq','C3rYAw5N','zw5JB2rPBMC','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','C2L6zq','B3v0Chv0lxbHDgG','yMLYDgH0Aw1L','yxjYyxK','igj5DgvZicHTyxGG','lMnTza'];a0_0x13ab=function(){return _0x165167;};return a0_0x13ab();}const a0_0x1b257c=a0_0x4a13;(function(_0x49b399,_0x2a8bff){const _0x386410=a0_0x4a13,_0x547b9d=_0x49b399();while(!![]){try{const _0xcc1b26=-parseInt(_0x386410(0x12e))/0x1*(-parseInt(_0x386410(0x135))/0x2)+parseInt(_0x386410(0x13f))/0x3*(parseInt(_0x386410(0x18c))/0x4)+parseInt(_0x386410(0x1b0))/0x5+parseInt(_0x386410(0x1b8))/0x6*(-parseInt(_0x386410(0x1cd))/0x7)+-parseInt(_0x386410(0x15f))/0x8*(parseInt(_0x386410(0x170))/0x9)+parseInt(_0x386410(0x14d))/0xa*(-parseInt(_0x386410(0x140))/0xb)+parseInt(_0x386410(0x18b))/0xc;if(_0xcc1b26===_0x2a8bff)break;else _0x547b9d['push'](_0x547b9d['shift']());}catch(_0x369c3a){_0x547b9d['push'](_0x547b9d['shift']());}}}(a0_0x13ab,0x42a38));import{BaseTool}from'./baseTool.js';function a0_0x4a13(_0x598ef7,_0x16ee93){_0x598ef7=_0x598ef7-0x12e;const _0x13abe9=a0_0x13ab();let _0x4a131d=_0x13abe9[_0x598ef7];if(a0_0x4a13['sqriQH']===undefined){var _0x5b239e=function(_0x3b76b4){const _0x16c7b1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f981f='',_0x38ecb0='';for(let _0x2b3c54=0x0,_0x12a82a,_0x38a092,_0x1fc8a1=0x0;_0x38a092=_0x3b76b4['charAt'](_0x1fc8a1++);~_0x38a092&&(_0x12a82a=_0x2b3c54%0x4?_0x12a82a*0x40+_0x38a092:_0x38a092,_0x2b3c54++%0x4)?_0x2f981f+=String['fromCharCode'](0xff&_0x12a82a>>(-0x2*_0x2b3c54&0x6)):0x0){_0x38a092=_0x16c7b1['indexOf'](_0x38a092);}for(let _0x3e42cf=0x0,_0x25f746=_0x2f981f['length'];_0x3e42cf<_0x25f746;_0x3e42cf++){_0x38ecb0+='%'+('00'+_0x2f981f['charCodeAt'](_0x3e42cf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x38ecb0);};a0_0x4a13['XevNKl']=_0x5b239e,a0_0x4a13['STkIMr']={},a0_0x4a13['sqriQH']=!![];}const _0x293698=_0x13abe9[0x0],_0x439df6=_0x598ef7+_0x293698,_0x493d67=a0_0x4a13['STkIMr'][_0x439df6];return!_0x493d67?(_0x4a131d=a0_0x4a13['XevNKl'](_0x4a131d),a0_0x4a13['STkIMr'][_0x439df6]=_0x4a131d):_0x4a131d=_0x493d67,_0x4a131d;}import a0_0x2f981f from'../utilities/tagParser.js';import a0_0x38ecb0 from'../utilities/directoryAccessManager.js';import a0_0x2b3c54 from'fs/promises';import a0_0x12a82a from'path';import a0_0x38a092 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x1fc8a1={},_0x3e42cf=null){const _0x5b3819=a0_0x4a13;super(_0x1fc8a1,_0x3e42cf),this[_0x5b3819(0x187)]=!![],this['isAsync']=![],this['timeout']=_0x1fc8a1['timeout']||0x7530,this[_0x5b3819(0x19a)]=_0x1fc8a1[_0x5b3819(0x19a)]||0x5,this['maxFileSize']=_0x1fc8a1[_0x5b3819(0x179)]||SYSTEM_DEFAULTS[_0x5b3819(0x18a)],this[_0x5b3819(0x1ad)]=_0x1fc8a1['allowedExtensions']||null,this[_0x5b3819(0x1b2)]=_0x1fc8a1['blockedExtensions']||['.exe','.bat',_0x5b3819(0x1c7),_0x5b3819(0x1a8),_0x5b3819(0x181)],this['allowedDirectories']=_0x1fc8a1['allowedDirectories']||null,this[_0x5b3819(0x1b5)]=[],this[_0x5b3819(0x184)]=new a0_0x38ecb0(_0x1fc8a1,_0x3e42cf);}[a0_0x1b257c(0x19c)](){const _0x16d7be=a0_0x1b257c;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['round'](this[_0x16d7be(0x179)]/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_0x1b257c(0x1c9)](_0x25f746){const _0x87dce4=a0_0x1b257c;try{const _0xd28166={},_0x15c877=[];this[_0x87dce4(0x1af)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x25f746[_0x87dce4(0x19f)],'contentPreview':_0x25f746['substring'](0x0,0xc8)});const _0x9609e6=['read',_0x87dce4(0x183),'copy','move',_0x87dce4(0x148),_0x87dce4(0x152),_0x87dce4(0x178),_0x87dce4(0x185),_0x87dce4(0x136)];for(const _0x31d13 of _0x9609e6){const _0x4f5e8b=a0_0x2f981f['extractTagsWithAttributes'](_0x25f746,_0x31d13);for(const _0x325af7 of _0x4f5e8b){const _0x7dc5ba={'type':_0x31d13,..._0x325af7[_0x87dce4(0x1a0)]};_0x7dc5ba[_0x87dce4(0x1a6)]&&(_0x7dc5ba[_0x87dce4(0x144)]=_0x7dc5ba['file-path'],delete _0x7dc5ba['file-path']),_0x7dc5ba['output-path']&&(_0x7dc5ba[_0x87dce4(0x1b9)]=_0x7dc5ba['output-path'],delete _0x7dc5ba[_0x87dce4(0x1c3)]),_0x7dc5ba['source-path']&&(_0x7dc5ba[_0x87dce4(0x17e)]=_0x7dc5ba['source-path'],delete _0x7dc5ba[_0x87dce4(0x141)]),_0x7dc5ba[_0x87dce4(0x188)]&&(_0x7dc5ba['destPath']=_0x7dc5ba[_0x87dce4(0x188)],delete _0x7dc5ba[_0x87dce4(0x188)]),_0x7dc5ba['create-dirs']&&(_0x7dc5ba[_0x87dce4(0x1b6)]=_0x7dc5ba['create-dirs']==='true',delete _0x7dc5ba['create-dirs']),_0x15c877['push'](_0x7dc5ba);}}const _0x82d44=_0x25f746['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x18ba2d of _0x82d44){const _0x2b45bd=new a0_0x2f981f(),_0x37c1da=_0x2b45bd['parseAttributes'](_0x18ba2d[0x1]),_0xd4a146=_0x18ba2d[0x2]['trim'](),_0x1c93a9={'type':'write','content':_0xd4a146,..._0x37c1da};_0x1c93a9[_0x87dce4(0x1c3)]&&(_0x1c93a9[_0x87dce4(0x1b9)]=_0x1c93a9[_0x87dce4(0x1c3)],delete _0x1c93a9[_0x87dce4(0x1c3)]),_0x1c93a9['create-dirs']&&(_0x1c93a9['createDirs']=_0x1c93a9['create-dirs']===_0x87dce4(0x156),delete _0x1c93a9['create-dirs']),_0x15c877['push'](_0x1c93a9);}const _0xb2d0f8=_0x25f746[_0x87dce4(0x199)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x1ccbed of _0xb2d0f8){const _0x10a44b=new a0_0x2f981f(),_0x4f610f=_0x10a44b[_0x87dce4(0x12f)](_0x1ccbed[0x1]),_0x24e65a=_0x1ccbed[0x2][_0x87dce4(0x17c)](),_0x2d2cb2={'type':_0x87dce4(0x136),'content':_0x24e65a,..._0x4f610f};_0x2d2cb2['file-path']&&(_0x2d2cb2['filePath']=_0x2d2cb2[_0x87dce4(0x1a6)],delete _0x2d2cb2[_0x87dce4(0x1a6)]),_0x15c877[_0x87dce4(0x139)](_0x2d2cb2);}return _0xd28166[_0x87dce4(0x167)]=_0x15c877,_0xd28166[_0x87dce4(0x17a)]=_0x25f746[_0x87dce4(0x17c)](),this[_0x87dce4(0x1af)]?.[_0x87dce4(0x1cc)](_0x87dce4(0x15c),{'totalActions':_0x15c877['length'],'actionTypes':_0x15c877[_0x87dce4(0x1cb)](_0x56694d=>_0x56694d[_0x87dce4(0x13e)]),'actions':_0x15c877[_0x87dce4(0x1cb)](_0xabd20b=>({'type':_0xabd20b['type'],'filePath':_0xabd20b[_0x87dce4(0x144)],'outputPath':_0xabd20b['outputPath'],'hasContent':!!_0xabd20b['content']}))}),_0xd28166;}catch(_0x1f959f){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x1f959f[_0x87dce4(0x13a)]);}}[a0_0x1b257c(0x19b)](){return['actions'];}[a0_0x1b257c(0x1c1)](_0x1cad85){const _0x510b87=a0_0x1b257c,_0xcb794a=[];if(!_0x1cad85[_0x510b87(0x167)]||!Array['isArray'](_0x1cad85['actions'])||_0x1cad85['actions'][_0x510b87(0x19f)]===0x0)_0xcb794a['push'](_0x510b87(0x1a2));else for(const [_0x3dbc79,_0x471f7b]of _0x1cad85['actions'][_0x510b87(0x150)]()){if(!_0x471f7b[_0x510b87(0x13e)]){_0xcb794a[_0x510b87(0x139)](_0x510b87(0x169)+(_0x3dbc79+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x471f7b[_0x510b87(0x13e)]){case'read':case'delete':case'exists':case'stats':!_0x471f7b[_0x510b87(0x144)]&&_0xcb794a['push'](_0x510b87(0x169)+(_0x3dbc79+0x1)+_0x510b87(0x13c)+_0x471f7b['type']);break;case _0x510b87(0x164):!_0x471f7b['outputPath']&&_0xcb794a[_0x510b87(0x139)](_0x510b87(0x169)+(_0x3dbc79+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x471f7b['content']&&_0x471f7b[_0x510b87(0x133)]!==''&&_0xcb794a[_0x510b87(0x139)]('Action\x20'+(_0x3dbc79+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x471f7b['filePath']&&_0xcb794a[_0x510b87(0x139)]('Action\x20'+(_0x3dbc79+0x1)+_0x510b87(0x1b4));!_0x471f7b['content']&&_0x471f7b[_0x510b87(0x133)]!==''&&_0xcb794a[_0x510b87(0x139)](_0x510b87(0x169)+(_0x3dbc79+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case _0x510b87(0x196):case _0x510b87(0x16b):!_0x471f7b[_0x510b87(0x17e)]&&_0xcb794a['push'](_0x510b87(0x169)+(_0x3dbc79+0x1)+_0x510b87(0x19d)+_0x471f7b[_0x510b87(0x13e)]);!_0x471f7b[_0x510b87(0x174)]&&_0xcb794a[_0x510b87(0x139)]('Action\x20'+(_0x3dbc79+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x471f7b['type']);break;case'create-dir':case _0x510b87(0x152):!_0x471f7b['directory']&&_0xcb794a['push']('Action\x20'+(_0x3dbc79+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x471f7b['type']);break;default:_0xcb794a[_0x510b87(0x139)](_0x510b87(0x169)+(_0x3dbc79+0x1)+_0x510b87(0x198)+_0x471f7b['type']);}_0x471f7b['filePath']&&!this['isAllowedFileExtension'](_0x471f7b['filePath'])&&_0xcb794a['push']('Action\x20'+(_0x3dbc79+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x12a82a['extname'](_0x471f7b['filePath'])),_0x471f7b['outputPath']&&!this['isAllowedFileExtension'](_0x471f7b[_0x510b87(0x1b9)])&&_0xcb794a[_0x510b87(0x139)]('Action\x20'+(_0x3dbc79+0x1)+_0x510b87(0x14b)+a0_0x12a82a[_0x510b87(0x147)](_0x471f7b[_0x510b87(0x1b9)]));}return{'valid':_0xcb794a[_0x510b87(0x19f)]===0x0,'errors':_0xcb794a};}async[a0_0x1b257c(0x130)](_0x370655,_0x1b470b){const _0x490be9=a0_0x1b257c;if(!_0x370655||typeof _0x370655!==_0x490be9(0x158))throw new Error(_0x490be9(0x193));const {actions:_0x4cf16c}=_0x370655;if(!_0x4cf16c)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object[_0x490be9(0x160)](_0x370655)));if(!Array[_0x490be9(0x16a)](_0x4cf16c))throw new Error(_0x490be9(0x1b3)+typeof _0x4cf16c);if(_0x4cf16c[_0x490be9(0x19f)]===0x0)throw new Error(_0x490be9(0x146));const {projectDir:_0x1f3038,agentId:_0x44c8b6,directoryAccess:_0x566607}=_0x1b470b,_0x41ae47=_0x566607||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x1f3038||process[_0x490be9(0x16e)](),'writeEnabledDirectories':[_0x1f3038||process[_0x490be9(0x16e)]()],'restrictToProject':!![]});_0x566607&&_0x566607['workingDirectory']?(console['log'](_0x490be9(0x16c),_0x566607['workingDirectory']),console[_0x490be9(0x18e)](_0x490be9(0x189),JSON[_0x490be9(0x138)](_0x566607,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x1f3038||process[_0x490be9(0x16e)]()),console[_0x490be9(0x18e)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x566607),console[_0x490be9(0x18e)](_0x490be9(0x18d),_0x1f3038));const _0x46755f=[];for(const _0x3f100b of _0x4cf16c){try{let _0x588841;switch(_0x3f100b[_0x490be9(0x13e)]){case _0x490be9(0x1b7):_0x588841=await this['readFile'](_0x3f100b['filePath'],_0x41ae47,_0x3f100b['encoding']);break;case _0x490be9(0x164):_0x588841=await this[_0x490be9(0x1ca)](_0x3f100b[_0x490be9(0x1b9)],_0x3f100b[_0x490be9(0x133)],_0x41ae47,{'encoding':_0x3f100b[_0x490be9(0x1c0)],'createDirs':_0x3f100b['createDirs']});break;case'append':_0x588841=await this[_0x490be9(0x17b)](_0x3f100b['filePath'],_0x3f100b['content'],_0x41ae47,_0x3f100b['encoding']);break;case _0x490be9(0x183):_0x588841=await this[_0x490be9(0x1a9)](_0x3f100b[_0x490be9(0x144)],_0x41ae47);break;case _0x490be9(0x196):_0x588841=await this['copyFile'](_0x3f100b[_0x490be9(0x17e)],_0x3f100b['destPath'],_0x41ae47);break;case _0x490be9(0x16b):_0x588841=await this[_0x490be9(0x18f)](_0x3f100b['sourcePath'],_0x3f100b['destPath'],_0x41ae47);break;case'create-dir':_0x588841=await this[_0x490be9(0x14a)](_0x3f100b['directory'],_0x41ae47);break;case _0x490be9(0x152):_0x588841=await this[_0x490be9(0x1b1)](_0x3f100b['directory'],_0x41ae47);break;case'exists':_0x588841=await this['checkExists'](_0x3f100b[_0x490be9(0x144)],_0x41ae47);break;case'stats':_0x588841=await this[_0x490be9(0x1a5)](_0x3f100b['filePath'],_0x41ae47);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x3f100b['type']);}_0x46755f['push'](_0x588841),this['addToHistory'](_0x3f100b,_0x588841,_0x1b470b[_0x490be9(0x171)]);}catch(_0x4aa839){const _0x7c9d22={'success':![],'action':_0x3f100b['type'],'error':_0x4aa839[_0x490be9(0x13a)],'filePath':_0x3f100b['filePath']||_0x3f100b[_0x490be9(0x1b9)]||_0x3f100b['directory']};_0x46755f['push'](_0x7c9d22),this[_0x490be9(0x1bc)](_0x3f100b,_0x7c9d22,_0x1b470b['agentId']);}}return{'success':!![],'actions':_0x46755f,'executedActions':_0x4cf16c['length'],'toolUsed':_0x490be9(0x142)};}async[a0_0x1b257c(0x151)](_0x201b2c,_0x15d907,_0x4dc5c0=a0_0x1b257c(0x15b)){const _0x3926ac=a0_0x1b257c,_0x548de7=this[_0x3926ac(0x184)]['getWorkingDirectory'](_0x15d907),_0x31bd94=this[_0x3926ac(0x161)](_0x201b2c,_0x548de7),_0x4c2b8d=this['directoryAccessManager']['validateReadAccess'](_0x31bd94,_0x15d907);if(!_0x4c2b8d[_0x3926ac(0x192)])throw new Error('Read\x20access\x20denied:\x20'+_0x4c2b8d['reason']+'\x20('+_0x4c2b8d['path']+')');try{const _0x515f6b=await a0_0x2b3c54['stat'](_0x31bd94);if(_0x515f6b[_0x3926ac(0x1c2)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x515f6b['size']+_0x3926ac(0x1c6)+this['maxFileSize']+')');const _0x5bf297=await a0_0x2b3c54['readFile'](_0x31bd94,_0x4dc5c0);return{'success':!![],'action':'read','filePath':this['directoryAccessManager']['createRelativePath'](_0x31bd94,_0x15d907),'content':_0x5bf297,'size':_0x515f6b['size'],'encoding':_0x4dc5c0,'lastModified':_0x515f6b[_0x3926ac(0x16d)][_0x3926ac(0x162)](),'message':_0x3926ac(0x1bd)+_0x515f6b[_0x3926ac(0x1c2)]+_0x3926ac(0x16f)+_0x201b2c};}catch(_0x22a32a){throw new Error(_0x3926ac(0x15d)+_0x201b2c+':\x20'+_0x22a32a[_0x3926ac(0x13a)]);}}async[a0_0x1b257c(0x1ca)](_0x185d09,_0x36e424,_0x45a1e2,_0x47d439={}){const _0x23b8d1=a0_0x1b257c,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x47d439,_0x36d1cc=this['directoryAccessManager'][_0x23b8d1(0x1ac)](_0x45a1e2),_0x4860af=this['resolvePath'](_0x185d09,_0x36d1cc),_0x1a764f=this[_0x23b8d1(0x184)]['validateWriteAccess'](_0x4860af,_0x45a1e2);if(!_0x1a764f[_0x23b8d1(0x192)])throw new Error('Write\x20access\x20denied:\x20'+_0x1a764f['reason']+'\x20('+_0x1a764f['path']+')');try{const _0x5568b2=Buffer[_0x23b8d1(0x145)](_0x36e424,encoding);if(_0x5568b2>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x5568b2+_0x23b8d1(0x1c6)+this['maxFileSize']+')');if(createDirs){const _0x4c169d=a0_0x12a82a[_0x23b8d1(0x1a4)](_0x4860af);await a0_0x2b3c54[_0x23b8d1(0x14c)](_0x4c169d,{'recursive':!![]});}let _0x3f16e1=null;try{await a0_0x2b3c54[_0x23b8d1(0x1bb)](_0x4860af),_0x3f16e1=_0x4860af+'.backup-'+Date['now'](),await a0_0x2b3c54['copyFile'](_0x4860af,_0x3f16e1);}catch{}await a0_0x2b3c54['writeFile'](_0x4860af,_0x36e424,encoding);const _0x3b9e6d=await a0_0x2b3c54[_0x23b8d1(0x1ae)](_0x4860af),_0x2c3be1=this[_0x23b8d1(0x184)]['createRelativePath'](_0x4860af,_0x45a1e2);return{'success':!![],'action':'write','outputPath':_0x2c3be1,'fullPath':_0x4860af,'size':_0x3b9e6d['size'],'encoding':encoding,'backupPath':_0x3f16e1?this['directoryAccessManager']['createRelativePath'](_0x3f16e1,_0x45a1e2):null,'backupFullPath':_0x3f16e1||null,'message':'Wrote\x20'+_0x3b9e6d[_0x23b8d1(0x1c2)]+_0x23b8d1(0x173)+_0x4860af};}catch(_0x3e25c8){throw new Error(_0x23b8d1(0x157)+_0x4860af+':\x20'+_0x3e25c8[_0x23b8d1(0x13a)]);}}async[a0_0x1b257c(0x17b)](_0x222bca,_0x4982b8,_0x7e7977,_0x24869d='utf8'){const _0x980600=a0_0x1b257c,_0x5ee74d=this['directoryAccessManager'][_0x980600(0x1ac)](_0x7e7977),_0x5105f1=this[_0x980600(0x161)](_0x222bca,_0x5ee74d),_0x4f5d15=this[_0x980600(0x184)]['validateWriteAccess'](_0x5105f1,_0x7e7977);if(!_0x4f5d15[_0x980600(0x192)])throw new Error('Write\x20access\x20denied:\x20'+_0x4f5d15[_0x980600(0x1a3)]+'\x20('+_0x4f5d15[_0x980600(0x159)]+')');try{let _0x3b85fd=0x0;try{const _0x5e0437=await a0_0x2b3c54['stat'](_0x5105f1);_0x3b85fd=_0x5e0437[_0x980600(0x1c2)];}catch{}const _0x205b89=Buffer['byteLength'](_0x4982b8,_0x24869d);if(_0x3b85fd+_0x205b89>this[_0x980600(0x179)])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x3b85fd+_0x205b89)+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');await a0_0x2b3c54[_0x980600(0x153)](_0x5105f1,_0x4982b8,_0x24869d);const _0x101da2=await a0_0x2b3c54['stat'](_0x5105f1),_0x10a656=this['directoryAccessManager']['createRelativePath'](_0x5105f1,_0x7e7977);return{'success':!![],'action':_0x980600(0x136),'filePath':_0x10a656,'fullPath':_0x5105f1,'appendedBytes':_0x205b89,'totalSize':_0x101da2[_0x980600(0x1c2)],'encoding':_0x24869d,'message':_0x980600(0x13d)+_0x205b89+_0x980600(0x173)+_0x5105f1};}catch(_0xf5d35){throw new Error(_0x980600(0x14f)+_0x5105f1+':\x20'+_0xf5d35[_0x980600(0x13a)]);}}async['deleteFile'](_0x180c06,_0x1dff16){const _0x47f5e7=a0_0x1b257c,_0x18aad9=this['directoryAccessManager']['getWorkingDirectory'](_0x1dff16),_0x13d3b1=this['resolvePath'](_0x180c06,_0x18aad9),_0x37b904=this[_0x47f5e7(0x184)]['validateWriteAccess'](_0x13d3b1,_0x1dff16);if(!_0x37b904['allowed'])throw new Error(_0x47f5e7(0x1a1)+_0x37b904['reason']+'\x20('+_0x37b904[_0x47f5e7(0x159)]+')');try{const _0x485a13=await a0_0x2b3c54['stat'](_0x13d3b1),_0x1865aa=_0x13d3b1+_0x47f5e7(0x134)+Date['now']();await a0_0x2b3c54['copyFile'](_0x13d3b1,_0x1865aa),await a0_0x2b3c54['unlink'](_0x13d3b1);const _0x44de81=this[_0x47f5e7(0x184)]['createRelativePath'](_0x13d3b1,_0x1dff16),_0x1d1e72=this['directoryAccessManager']['createRelativePath'](_0x1865aa,_0x1dff16);return{'success':!![],'action':_0x47f5e7(0x183),'filePath':_0x44de81,'fullPath':_0x13d3b1,'size':_0x485a13['size'],'backupPath':_0x1d1e72,'backupFullPath':_0x1865aa,'message':'Deleted\x20'+_0x13d3b1+'\x20(backup\x20created)'};}catch(_0x2fef4b){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x13d3b1+':\x20'+_0x2fef4b[_0x47f5e7(0x13a)]);}}async[a0_0x1b257c(0x154)](_0x3650b7,_0x28bc6f,_0xd504b9){const _0x1d28de=a0_0x1b257c,_0x3e3f24=this['directoryAccessManager'][_0x1d28de(0x1ac)](_0xd504b9),_0xee2b1=this[_0x1d28de(0x161)](_0x3650b7,_0x3e3f24),_0x7d0dc0=this[_0x1d28de(0x161)](_0x28bc6f,_0x3e3f24),_0x4b434f=this[_0x1d28de(0x184)][_0x1d28de(0x1ab)](_0xee2b1,_0xd504b9);if(!_0x4b434f['allowed'])throw new Error(_0x1d28de(0x177)+_0x4b434f[_0x1d28de(0x1a3)]+'\x20('+_0x4b434f[_0x1d28de(0x159)]+')');const _0x3c200b=this['directoryAccessManager'][_0x1d28de(0x13b)](_0x7d0dc0,_0xd504b9);if(!_0x3c200b[_0x1d28de(0x192)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x3c200b[_0x1d28de(0x1a3)]+'\x20('+_0x3c200b[_0x1d28de(0x159)]+')');try{const _0x4fe202=await a0_0x2b3c54[_0x1d28de(0x1ae)](_0xee2b1);if(_0x4fe202['size']>this['maxFileSize'])throw new Error(_0x1d28de(0x1c8)+_0x4fe202[_0x1d28de(0x1c2)]+_0x1d28de(0x195));const _0xa321a1=a0_0x12a82a[_0x1d28de(0x1a4)](_0x7d0dc0);await a0_0x2b3c54['mkdir'](_0xa321a1,{'recursive':!![]}),await a0_0x2b3c54[_0x1d28de(0x154)](_0xee2b1,_0x7d0dc0);const _0x49e8fc=this['directoryAccessManager'][_0x1d28de(0x1aa)](_0xee2b1,_0xd504b9),_0x28fbc7=this[_0x1d28de(0x184)]['createRelativePath'](_0x7d0dc0,_0xd504b9);return{'success':!![],'action':_0x1d28de(0x196),'sourcePath':_0x49e8fc,'destPath':_0x28fbc7,'sourceFullPath':_0xee2b1,'destFullPath':_0x7d0dc0,'size':_0x4fe202['size'],'message':_0x1d28de(0x176)+_0xee2b1+_0x1d28de(0x14e)+_0x7d0dc0};}catch(_0x2661c1){throw new Error(_0x1d28de(0x17d)+_0xee2b1+'\x20to\x20'+_0x7d0dc0+':\x20'+_0x2661c1['message']);}}async['moveFile'](_0x28768d,_0x2651a7,_0x4c823c){const _0x5a6f05=a0_0x1b257c,_0x92350a=this[_0x5a6f05(0x184)]['getWorkingDirectory'](_0x4c823c),_0x4a1d4b=this['resolvePath'](_0x28768d,_0x92350a),_0x3d3882=this['resolvePath'](_0x2651a7,_0x92350a),_0x3f03eb=this[_0x5a6f05(0x184)]['validateReadAccess'](_0x4a1d4b,_0x4c823c);if(!_0x3f03eb[_0x5a6f05(0x192)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x3f03eb[_0x5a6f05(0x1a3)]+'\x20('+_0x3f03eb['path']+')');const _0x67e725=this[_0x5a6f05(0x184)]['validateWriteAccess'](_0x3d3882,_0x4c823c);if(!_0x67e725['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x67e725[_0x5a6f05(0x1a3)]+'\x20('+_0x67e725['path']+')');try{const _0x1c8593=await a0_0x2b3c54[_0x5a6f05(0x1ae)](_0x4a1d4b),_0x34d912=a0_0x12a82a[_0x5a6f05(0x1a4)](_0x3d3882);await a0_0x2b3c54['mkdir'](_0x34d912,{'recursive':!![]}),await a0_0x2b3c54['rename'](_0x4a1d4b,_0x3d3882);const _0x4de5ac=this['directoryAccessManager']['createRelativePath'](_0x4a1d4b,_0x4c823c),_0x495e82=this['directoryAccessManager']['createRelativePath'](_0x3d3882,_0x4c823c);return{'success':!![],'action':_0x5a6f05(0x16b),'sourcePath':_0x4de5ac,'destPath':_0x495e82,'fullSourcePath':_0x4a1d4b,'fullDestPath':_0x3d3882,'size':_0x1c8593[_0x5a6f05(0x1c2)],'message':'Moved\x20'+_0x28768d+'\x20to\x20'+_0x2651a7};}catch(_0x5571d0){throw new Error(_0x5a6f05(0x165)+_0x28768d+_0x5a6f05(0x14e)+_0x2651a7+':\x20'+_0x5571d0[_0x5a6f05(0x13a)]);}}async['createDirectory'](_0x42c329,_0x158fdd){const _0x43d34c=a0_0x1b257c,_0x2adbe5=this[_0x43d34c(0x184)]['getWorkingDirectory'](_0x158fdd),_0x365cea=this['resolvePath'](_0x42c329,_0x2adbe5),_0x34cadb=this[_0x43d34c(0x184)][_0x43d34c(0x13b)](_0x365cea,_0x158fdd);if(!_0x34cadb[_0x43d34c(0x192)])throw new Error(_0x43d34c(0x1ba)+_0x34cadb[_0x43d34c(0x1a3)]+'\x20('+_0x34cadb['path']+')');try{await a0_0x2b3c54[_0x43d34c(0x14c)](_0x365cea,{'recursive':!![]});const _0x1e034e=this[_0x43d34c(0x184)]['createRelativePath'](_0x365cea,_0x158fdd);return{'success':!![],'action':'create-dir','directory':_0x1e034e,'fullPath':_0x365cea,'message':'Created\x20directory\x20'+_0x42c329};}catch(_0x21e9b8){throw new Error(_0x43d34c(0x168)+_0x42c329+':\x20'+_0x21e9b8['message']);}}async['listDirectory'](_0x3d6c1f,_0x37af37){const _0x37be34=a0_0x1b257c,_0x65e756=this['directoryAccessManager'][_0x37be34(0x1ac)](_0x37af37),_0x2027aa=this['resolvePath'](_0x3d6c1f,_0x65e756),_0x5f55cb=this[_0x37be34(0x184)]['validateReadAccess'](_0x2027aa,_0x37af37);if(!_0x5f55cb['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5f55cb['reason']+'\x20('+_0x5f55cb[_0x37be34(0x159)]+')');try{const _0x2702f6=await a0_0x2b3c54[_0x37be34(0x186)](_0x2027aa,{'withFileTypes':!![]}),_0x5d9ce3=[];for(const _0x36fcd5 of _0x2702f6){const _0x45caca=a0_0x12a82a['join'](_0x2027aa,_0x36fcd5['name']),_0x4053ef=await a0_0x2b3c54['stat'](_0x45caca);_0x5d9ce3[_0x37be34(0x139)]({'name':_0x36fcd5[_0x37be34(0x191)],'type':_0x36fcd5[_0x37be34(0x17f)]()?_0x37be34(0x175):_0x37be34(0x190),'size':_0x36fcd5[_0x37be34(0x1a7)]()?_0x4053ef['size']:undefined,'lastModified':_0x4053ef[_0x37be34(0x16d)][_0x37be34(0x162)](),'permissions':_0x4053ef['mode'],'isSymlink':_0x36fcd5['isSymbolicLink']()});}const _0x12fe55=this['directoryAccessManager'][_0x37be34(0x1aa)](_0x2027aa,_0x37af37);return{'success':!![],'action':_0x37be34(0x152),'directory':_0x12fe55,'fullPath':_0x2027aa,'contents':_0x5d9ce3,'totalItems':_0x5d9ce3['length'],'directories':_0x5d9ce3['filter'](_0x50d88c=>_0x50d88c[_0x37be34(0x13e)]==='directory')['length'],'files':_0x5d9ce3['filter'](_0x4cde4b=>_0x4cde4b['type']==='file')[_0x37be34(0x19f)],'message':'Listed\x20'+_0x5d9ce3[_0x37be34(0x19f)]+_0x37be34(0x143)+_0x3d6c1f};}catch(_0x2c1d91){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x3d6c1f+':\x20'+_0x2c1d91[_0x37be34(0x13a)]);}}async[a0_0x1b257c(0x132)](_0x2206fb,_0x4b26ce){const _0x496b84=a0_0x1b257c,_0x1a3326=this['directoryAccessManager']['getWorkingDirectory'](_0x4b26ce),_0x1af550=this[_0x496b84(0x161)](_0x2206fb,_0x1a3326),_0x248553=this['directoryAccessManager'][_0x496b84(0x1ab)](_0x1af550,_0x4b26ce);if(!_0x248553['allowed'])throw new Error(_0x496b84(0x15e)+_0x248553[_0x496b84(0x1a3)]+'\x20('+_0x248553['path']+')');try{const _0x227401=await a0_0x2b3c54['stat'](_0x1af550),_0x5f255b=this[_0x496b84(0x184)]['createRelativePath'](_0x1af550,_0x4b26ce);return{'success':!![],'action':'exists','filePath':_0x5f255b,'fullPath':_0x1af550,'exists':!![],'type':_0x227401[_0x496b84(0x17f)]()?_0x496b84(0x175):_0x496b84(0x190),'message':_0x2206fb+_0x496b84(0x19e)+(_0x227401[_0x496b84(0x17f)]()?_0x496b84(0x175):'file')};}catch(_0x63edd0){if(_0x63edd0[_0x496b84(0x1be)]===_0x496b84(0x180)){const _0x9529a3=this['directoryAccessManager'][_0x496b84(0x1aa)](_0x1af550,_0x4b26ce);return{'success':!![],'action':'exists','filePath':_0x9529a3,'fullPath':_0x1af550,'exists':![],'message':_0x2206fb+_0x496b84(0x172)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x2206fb+':\x20'+_0x63edd0[_0x496b84(0x13a)]);}}async['getFileStats'](_0x2399cb,_0x2b6ef2){const _0x319e92=a0_0x1b257c,_0xe4332=this[_0x319e92(0x184)]['getWorkingDirectory'](_0x2b6ef2),_0x20bc19=this[_0x319e92(0x161)](_0x2399cb,_0xe4332),_0x197d5a=this[_0x319e92(0x184)]['validateReadAccess'](_0x20bc19,_0x2b6ef2);if(!_0x197d5a['allowed'])throw new Error(_0x319e92(0x15e)+_0x197d5a[_0x319e92(0x1a3)]+'\x20('+_0x197d5a['path']+')');try{const _0x960a9d=await a0_0x2b3c54[_0x319e92(0x1ae)](_0x20bc19),_0x4ec0ed=this[_0x319e92(0x184)][_0x319e92(0x1aa)](_0x20bc19,_0x2b6ef2);return{'success':!![],'action':_0x319e92(0x185),'filePath':_0x4ec0ed,'fullPath':_0x20bc19,'stats':{'size':_0x960a9d[_0x319e92(0x1c2)],'type':_0x960a9d['isDirectory']()?'directory':_0x319e92(0x190),'lastModified':_0x960a9d[_0x319e92(0x16d)]['toISOString'](),'lastAccessed':_0x960a9d['atime'][_0x319e92(0x162)](),'created':_0x960a9d[_0x319e92(0x1c4)]['toISOString'](),'permissions':_0x960a9d[_0x319e92(0x166)],'isSymlink':_0x960a9d[_0x319e92(0x163)]()},'message':_0x319e92(0x197)+_0x2399cb};}catch(_0x5538e7){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x2399cb+':\x20'+_0x5538e7['message']);}}['resolvePath'](_0x4b2b54,_0xd61210){const _0x11765=a0_0x1b257c;if(a0_0x12a82a['isAbsolute'](_0x4b2b54))return a0_0x12a82a['normalize'](_0x4b2b54);return a0_0x12a82a[_0x11765(0x131)](_0xd61210,_0x4b2b54);}[a0_0x1b257c(0x194)](_0x261c4f,_0x1e1300,_0x132fe9='read'){const _0x1f128f=a0_0x1b257c,_0x31586a=_0x132fe9==='write'?this[_0x1f128f(0x184)]['validateWriteAccess'](_0x261c4f,_0x1e1300):this[_0x1f128f(0x184)]['validateReadAccess'](_0x261c4f,_0x1e1300);if(!_0x31586a[_0x1f128f(0x192)])throw new Error(_0x132fe9+_0x1f128f(0x149)+_0x31586a['reason']+'\x20('+_0x31586a['path']+')');return _0x31586a;}[a0_0x1b257c(0x15a)](_0x489858){const _0x4c9433=a0_0x1b257c,_0xab82cd=a0_0x12a82a[_0x4c9433(0x147)](_0x489858)['toLowerCase']();if(this[_0x4c9433(0x1b2)]['includes'](_0xab82cd))return![];if(this['allowedExtensions']&&!this['allowedExtensions']['includes'](_0xab82cd))return![];return!![];}['addToHistory'](_0x23da34,_0xf182e9,_0xd89b45){const _0x5d5f04=a0_0x1b257c,_0x4cf45e={'timestamp':new Date()[_0x5d5f04(0x162)](),'agentId':_0xd89b45,'action':_0x23da34[_0x5d5f04(0x13e)],'filePath':_0x23da34[_0x5d5f04(0x144)]||_0x23da34[_0x5d5f04(0x1b9)]||_0x23da34['directory'],'success':_0xf182e9[_0x5d5f04(0x155)],'size':_0xf182e9[_0x5d5f04(0x1c2)]};this[_0x5d5f04(0x1b5)]['push'](_0x4cf45e),this['operationHistory']['length']>0xc8&&(this[_0x5d5f04(0x1b5)]=this[_0x5d5f04(0x1b5)]['slice'](-0xc8));}['getSupportedActions'](){const _0x43d912=a0_0x1b257c;return[_0x43d912(0x1b7),'write','append',_0x43d912(0x183),_0x43d912(0x196),'move',_0x43d912(0x148),_0x43d912(0x152),_0x43d912(0x178),_0x43d912(0x185)];}[a0_0x1b257c(0x137)](){const _0x22d718=a0_0x1b257c;return{'type':'object','properties':{'actions':{'type':_0x22d718(0x1c5),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':_0x22d718(0x1bf)},'destPath':{'type':_0x22d718(0x1bf)},'directory':{'type':_0x22d718(0x1bf)},'content':{'type':_0x22d718(0x1bf)},'encoding':{'type':'string'},'createDirs':{'type':_0x22d718(0x182)}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x4b2cda=null){const _0x21bc85=a0_0x1b257c;if(_0x4b2cda)return this[_0x21bc85(0x1b5)]['filter'](_0x2efbcf=>_0x2efbcf['agentId']===_0x4b2cda);return[...this[_0x21bc85(0x1b5)]];}}export default FileSystemTool;
|
|
1
|
+
const a0_0x56928e=a0_0x66da;(function(_0x180b51,_0x162ce1){const _0x564279=a0_0x66da,_0xfd7eb7=_0x180b51();while(!![]){try{const _0x53c17a=-parseInt(_0x564279(0x1ac))/0x1+parseInt(_0x564279(0x1b9))/0x2+parseInt(_0x564279(0x1b1))/0x3+parseInt(_0x564279(0x1b5))/0x4*(-parseInt(_0x564279(0x1d1))/0x5)+-parseInt(_0x564279(0x21b))/0x6+-parseInt(_0x564279(0x218))/0x7+parseInt(_0x564279(0x18f))/0x8;if(_0x53c17a===_0x162ce1)break;else _0xfd7eb7['push'](_0xfd7eb7['shift']());}catch(_0x49af0f){_0xfd7eb7['push'](_0xfd7eb7['shift']());}}}(a0_0x465f,0xa1c03));import{BaseTool}from'./baseTool.js';import a0_0x1f0f77 from'../utilities/tagParser.js';import a0_0x393cbc from'../utilities/directoryAccessManager.js';import a0_0x480df1 from'fs/promises';import a0_0x22f23d from'path';function a0_0x66da(_0x1a6e5c,_0x218d27){_0x1a6e5c=_0x1a6e5c-0x184;const _0x465f0d=a0_0x465f();let _0x66da4d=_0x465f0d[_0x1a6e5c];if(a0_0x66da['sYoKhZ']===undefined){var _0x431eab=function(_0x2d1a16){const _0x53d4e0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f0f77='',_0x393cbc='';for(let _0x480df1=0x0,_0x22f23d,_0xf4f7c,_0x2f75be=0x0;_0xf4f7c=_0x2d1a16['charAt'](_0x2f75be++);~_0xf4f7c&&(_0x22f23d=_0x480df1%0x4?_0x22f23d*0x40+_0xf4f7c:_0xf4f7c,_0x480df1++%0x4)?_0x1f0f77+=String['fromCharCode'](0xff&_0x22f23d>>(-0x2*_0x480df1&0x6)):0x0){_0xf4f7c=_0x53d4e0['indexOf'](_0xf4f7c);}for(let _0x247ed4=0x0,_0x21e727=_0x1f0f77['length'];_0x247ed4<_0x21e727;_0x247ed4++){_0x393cbc+='%'+('00'+_0x1f0f77['charCodeAt'](_0x247ed4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x393cbc);};a0_0x66da['ZHPgjy']=_0x431eab,a0_0x66da['MytUEN']={},a0_0x66da['sYoKhZ']=!![];}const _0x4baf65=_0x465f0d[0x0],_0x169d3f=_0x1a6e5c+_0x4baf65,_0x27ae02=a0_0x66da['MytUEN'][_0x169d3f];return!_0x27ae02?(_0x66da4d=a0_0x66da['ZHPgjy'](_0x66da4d),a0_0x66da['MytUEN'][_0x169d3f]=_0x66da4d):_0x66da4d=_0x27ae02,_0x66da4d;}import a0_0xf4f7c from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x2f75be={},_0x247ed4=null){const _0x3d2783=a0_0x66da;super(_0x2f75be,_0x247ed4),this['requiresProject']=!![],this[_0x3d2783(0x20f)]=![],this[_0x3d2783(0x1db)]=_0x2f75be['timeout']||0x7530,this['maxConcurrentOperations']=_0x2f75be['maxConcurrentOperations']||0x5,this[_0x3d2783(0x1c4)]=_0x2f75be[_0x3d2783(0x1c4)]||SYSTEM_DEFAULTS[_0x3d2783(0x216)],this[_0x3d2783(0x1d2)]=_0x2f75be[_0x3d2783(0x1d2)]||null,this['blockedExtensions']=_0x2f75be[_0x3d2783(0x185)]||['.exe','.bat',_0x3d2783(0x1bc),'.scr',_0x3d2783(0x1cd)],this['allowedDirectories']=_0x2f75be[_0x3d2783(0x1f8)]||null,this['operationHistory']=[],this[_0x3d2783(0x1c5)]=new a0_0x393cbc(_0x2f75be,_0x247ed4);}['getDescription'](){const _0x26b53e=a0_0x66da;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[_0x26b53e(0x214)](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';}[a0_0x56928e(0x1d8)](_0x21e727){const _0x12f302=a0_0x56928e;try{const _0x5e9c5a={},_0xcee7a9=[];this[_0x12f302(0x1ba)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x21e727['length'],'contentPreview':_0x21e727[_0x12f302(0x1bd)](0x0,0xc8)});const _0x340fda=[_0x12f302(0x1fd),'delete','copy','move',_0x12f302(0x1a7),'list',_0x12f302(0x201),'stats',_0x12f302(0x1c3)];for(const _0x1ae523 of _0x340fda){const _0x1e90ef=a0_0x1f0f77[_0x12f302(0x19c)](_0x21e727,_0x1ae523);for(const _0x1e7229 of _0x1e90ef){const _0x2a677a={'type':_0x1ae523,..._0x1e7229[_0x12f302(0x184)]};_0x2a677a[_0x12f302(0x213)]&&(_0x2a677a[_0x12f302(0x1bb)]=_0x2a677a[_0x12f302(0x213)],delete _0x2a677a['file-path']),_0x2a677a['output-path']&&(_0x2a677a['outputPath']=_0x2a677a['output-path'],delete _0x2a677a['output-path']),_0x2a677a['source-path']&&(_0x2a677a['sourcePath']=_0x2a677a[_0x12f302(0x1be)],delete _0x2a677a[_0x12f302(0x1be)]),_0x2a677a['dest-path']&&(_0x2a677a['destPath']=_0x2a677a['dest-path'],delete _0x2a677a[_0x12f302(0x1f9)]),_0x2a677a[_0x12f302(0x1aa)]&&(_0x2a677a[_0x12f302(0x217)]=_0x2a677a[_0x12f302(0x1aa)]===_0x12f302(0x1e9),delete _0x2a677a[_0x12f302(0x1aa)]),_0xcee7a9['push'](_0x2a677a);}}const _0x11b4cf=_0x21e727['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x22953b of _0x11b4cf){const _0x38383d=new a0_0x1f0f77(),_0x22d39d=_0x38383d['parseAttributes'](_0x22953b[0x1]),_0x1bea93=_0x22953b[0x2]['trim'](),_0x24f3ee={'type':'write','content':_0x1bea93,..._0x22d39d};_0x24f3ee['output-path']&&(_0x24f3ee[_0x12f302(0x1e5)]=_0x24f3ee[_0x12f302(0x1c7)],delete _0x24f3ee['output-path']),_0x24f3ee['create-dirs']&&(_0x24f3ee['createDirs']=_0x24f3ee['create-dirs']==='true',delete _0x24f3ee['create-dirs']),_0xcee7a9['push'](_0x24f3ee);}const _0x57e12b=_0x21e727['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x233764 of _0x57e12b){const _0x4c2aa5=new a0_0x1f0f77(),_0x55ff68=_0x4c2aa5[_0x12f302(0x1a3)](_0x233764[0x1]),_0x2be7c4=_0x233764[0x2]['trim'](),_0x401892={'type':_0x12f302(0x1c3),'content':_0x2be7c4,..._0x55ff68};_0x401892['file-path']&&(_0x401892['filePath']=_0x401892[_0x12f302(0x213)],delete _0x401892[_0x12f302(0x213)]),_0xcee7a9['push'](_0x401892);}return _0x5e9c5a[_0x12f302(0x1da)]=_0xcee7a9,_0x5e9c5a[_0x12f302(0x1e3)]=_0x21e727['trim'](),this[_0x12f302(0x1ba)]?.['debug'](_0x12f302(0x211),{'totalActions':_0xcee7a9['length'],'actionTypes':_0xcee7a9['map'](_0x1924cc=>_0x1924cc['type']),'actions':_0xcee7a9[_0x12f302(0x1a4)](_0xe0b282=>({'type':_0xe0b282['type'],'filePath':_0xe0b282[_0x12f302(0x1bb)],'outputPath':_0xe0b282['outputPath'],'hasContent':!!_0xe0b282['content']}))}),_0x5e9c5a;}catch(_0x4ca0e8){throw new Error(_0x12f302(0x1f0)+_0x4ca0e8[_0x12f302(0x18b)]);}}['getRequiredParameters'](){const _0x4d0da9=a0_0x56928e;return[_0x4d0da9(0x1da)];}['customValidateParameters'](_0x26f50e){const _0x567e7e=a0_0x56928e,_0x4de645=[];if(!_0x26f50e['actions']||!Array['isArray'](_0x26f50e[_0x567e7e(0x1da)])||_0x26f50e['actions'][_0x567e7e(0x186)]===0x0)_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x1cf));else for(const [_0x221697,_0x2a2170]of _0x26f50e[_0x567e7e(0x1da)]['entries']()){if(!_0x2a2170['type']){_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x21d));continue;}switch(_0x2a2170['type']){case'read':case _0x567e7e(0x1c0):case'exists':case'stats':!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x2a2170[_0x567e7e(0x1f3)]);break;case _0x567e7e(0x1e0):!_0x2a2170[_0x567e7e(0x1e5)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170[_0x567e7e(0x195)]!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0x567e7e(0x1c3):!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1a6));!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170['content']!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x2a2170[_0x567e7e(0x1ea)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);!_0x2a2170[_0x567e7e(0x188)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);break;case'create-dir':case _0x567e7e(0x206):!_0x2a2170['directory']&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x212)+_0x2a2170[_0x567e7e(0x1f3)]);break;default:_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1ee)+_0x2a2170['type']);}_0x2a2170['filePath']&&!this[_0x567e7e(0x1f7)](_0x2a2170[_0x567e7e(0x1bb)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x22f23d['extname'](_0x2a2170[_0x567e7e(0x1bb)])),_0x2a2170[_0x567e7e(0x1e5)]&&!this['isAllowedFileExtension'](_0x2a2170[_0x567e7e(0x1e5)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x1dd)+a0_0x22f23d[_0x567e7e(0x18d)](_0x2a2170['outputPath']));}return{'valid':_0x4de645['length']===0x0,'errors':_0x4de645};}async[a0_0x56928e(0x1c6)](_0x3ccd8f,_0x4dd8af){const _0x2cc37d=a0_0x56928e;if(!_0x3ccd8f||typeof _0x3ccd8f!=='object')throw new Error(_0x2cc37d(0x1d3));const {actions:_0x488d92}=_0x3ccd8f;if(!_0x488d92)throw new Error(_0x2cc37d(0x197)+JSON['stringify'](Object['keys'](_0x3ccd8f)));if(!Array[_0x2cc37d(0x1d9)](_0x488d92))throw new Error(_0x2cc37d(0x1ff)+typeof _0x488d92);if(_0x488d92[_0x2cc37d(0x186)]===0x0)throw new Error(_0x2cc37d(0x1cc));const {projectDir:_0x459181,agentId:_0x53844e,directoryAccess:_0x5baa16}=_0x4dd8af,_0x4bd31f=_0x5baa16||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x459181||process[_0x2cc37d(0x200)](),'writeEnabledDirectories':[_0x459181||process[_0x2cc37d(0x200)]()],'restrictToProject':!![]});_0x5baa16&&_0x5baa16['workingDirectory']?(console['log'](_0x2cc37d(0x1b8),_0x5baa16['workingDirectory']),console[_0x2cc37d(0x1e2)](_0x2cc37d(0x1fb),JSON['stringify'](_0x5baa16,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x459181||process[_0x2cc37d(0x200)]()),console[_0x2cc37d(0x1e2)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5baa16),console['log'](_0x2cc37d(0x1e6),_0x459181));const _0x3c6d99=[];for(const _0x55367b of _0x488d92){try{let _0x49d0ba;switch(_0x55367b['type']){case _0x2cc37d(0x1fd):_0x49d0ba=await this[_0x2cc37d(0x1e1)](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1e0):_0x49d0ba=await this['writeFile'](_0x55367b[_0x2cc37d(0x1e5)],_0x55367b['content'],_0x4bd31f,{'encoding':_0x55367b[_0x2cc37d(0x1ca)],'createDirs':_0x55367b['createDirs']});break;case _0x2cc37d(0x1c3):_0x49d0ba=await this['appendToFile'](_0x55367b[_0x2cc37d(0x1bb)],_0x55367b[_0x2cc37d(0x195)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1c0):_0x49d0ba=await this[_0x2cc37d(0x1ce)](_0x55367b['filePath'],_0x4bd31f);break;case _0x2cc37d(0x1e8):_0x49d0ba=await this[_0x2cc37d(0x192)](_0x55367b['sourcePath'],_0x55367b['destPath'],_0x4bd31f);break;case _0x2cc37d(0x198):_0x49d0ba=await this['moveFile'](_0x55367b[_0x2cc37d(0x1ea)],_0x55367b[_0x2cc37d(0x188)],_0x4bd31f);break;case _0x2cc37d(0x1a7):_0x49d0ba=await this['createDirectory'](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x206):_0x49d0ba=await this[_0x2cc37d(0x1fa)](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x201):_0x49d0ba=await this['checkExists'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;case _0x2cc37d(0x1bf):_0x49d0ba=await this['getFileStats'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;default:throw new Error(_0x2cc37d(0x1a8)+_0x55367b['type']);}_0x3c6d99[_0x2cc37d(0x1a9)](_0x49d0ba),this['addToHistory'](_0x55367b,_0x49d0ba,_0x4dd8af[_0x2cc37d(0x1b0)]);}catch(_0x2db287){const _0x46da5f={'success':![],'action':_0x55367b['type'],'error':_0x2db287['message'],'filePath':_0x55367b[_0x2cc37d(0x1bb)]||_0x55367b[_0x2cc37d(0x1e5)]||_0x55367b['directory']};_0x3c6d99[_0x2cc37d(0x1a9)](_0x46da5f),this[_0x2cc37d(0x1f6)](_0x55367b,_0x46da5f,_0x4dd8af['agentId']);}}return{'success':!![],'actions':_0x3c6d99,'executedActions':_0x488d92['length'],'toolUsed':_0x2cc37d(0x1d6)};}async[a0_0x56928e(0x1e1)](_0x54fbb5,_0x190016,_0x2f8663=a0_0x56928e(0x1a0)){const _0x3ba0d0=a0_0x56928e,_0x123995=this[_0x3ba0d0(0x1c5)]['getWorkingDirectory'](_0x190016),_0x483128=this[_0x3ba0d0(0x1ec)](_0x54fbb5,_0x123995),_0x26d970=this['directoryAccessManager']['validateReadAccess'](_0x483128,_0x190016);if(!_0x26d970['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x26d970['reason']+'\x20('+_0x26d970[_0x3ba0d0(0x1f1)]+')');try{const _0x4b9c43=await a0_0x480df1['stat'](_0x483128);if(_0x4b9c43[_0x3ba0d0(0x1cb)]>this[_0x3ba0d0(0x1c4)])throw new Error(_0x3ba0d0(0x1b4)+_0x4b9c43['size']+_0x3ba0d0(0x1c2)+this['maxFileSize']+')');const _0x3c6882=await a0_0x480df1['readFile'](_0x483128,_0x2f8663);return{'success':!![],'action':'read','filePath':this['directoryAccessManager']['createRelativePath'](_0x483128,_0x190016),'content':_0x3c6882,'size':_0x4b9c43[_0x3ba0d0(0x1cb)],'encoding':_0x2f8663,'lastModified':_0x4b9c43['mtime'][_0x3ba0d0(0x18a)](),'message':'Read\x20'+_0x4b9c43['size']+'\x20bytes\x20from\x20'+_0x54fbb5};}catch(_0x2327e9){throw new Error(_0x3ba0d0(0x189)+_0x54fbb5+':\x20'+_0x2327e9[_0x3ba0d0(0x18b)]);}}async[a0_0x56928e(0x1d4)](_0x225a3b,_0x2c3eaa,_0x3a3614,_0x3613a9={}){const _0x4f99d4=a0_0x56928e,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x3613a9,_0x3f4a44=this[_0x4f99d4(0x1c5)]['getWorkingDirectory'](_0x3a3614),_0x39c853=this['resolvePath'](_0x225a3b,_0x3f4a44),_0x2e8ebc=this[_0x4f99d4(0x1c5)]['validateWriteAccess'](_0x39c853,_0x3a3614);if(!_0x2e8ebc['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x2e8ebc[_0x4f99d4(0x1e7)]+'\x20('+_0x2e8ebc['path']+')');try{const _0x28f7db=Buffer[_0x4f99d4(0x202)](_0x2c3eaa,encoding);if(_0x28f7db>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x28f7db+_0x4f99d4(0x1c2)+this['maxFileSize']+')');if(createDirs){const _0x40b17a=a0_0x22f23d['dirname'](_0x39c853);await a0_0x480df1[_0x4f99d4(0x1e4)](_0x40b17a,{'recursive':!![]});}let _0x552c5f=null;try{await a0_0x480df1[_0x4f99d4(0x1fc)](_0x39c853),_0x552c5f=_0x39c853+_0x4f99d4(0x204)+Date['now'](),await a0_0x480df1['copyFile'](_0x39c853,_0x552c5f);}catch{}await a0_0x480df1[_0x4f99d4(0x1d4)](_0x39c853,_0x2c3eaa,encoding);const _0x1760d9=await a0_0x480df1['stat'](_0x39c853),_0x397df1=this['directoryAccessManager'][_0x4f99d4(0x209)](_0x39c853,_0x3a3614);return{'success':!![],'action':_0x4f99d4(0x1e0),'outputPath':_0x397df1,'fullPath':_0x39c853,'size':_0x1760d9[_0x4f99d4(0x1cb)],'encoding':encoding,'backupPath':_0x552c5f?this[_0x4f99d4(0x1c5)]['createRelativePath'](_0x552c5f,_0x3a3614):null,'backupFullPath':_0x552c5f||null,'message':_0x4f99d4(0x1df)+_0x1760d9['size']+'\x20bytes\x20to\x20'+_0x39c853};}catch(_0x2ef7ca){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x39c853+':\x20'+_0x2ef7ca['message']);}}async['appendToFile'](_0x5791de,_0x41fb67,_0x1482e1,_0x8a4a8d='utf8'){const _0x5119b4=a0_0x56928e,_0xf2c522=this[_0x5119b4(0x1c5)]['getWorkingDirectory'](_0x1482e1),_0x1f7d1f=this[_0x5119b4(0x1ec)](_0x5791de,_0xf2c522),_0x4eb2d5=this[_0x5119b4(0x1c5)][_0x5119b4(0x19b)](_0x1f7d1f,_0x1482e1);if(!_0x4eb2d5[_0x5119b4(0x207)])throw new Error(_0x5119b4(0x1b3)+_0x4eb2d5['reason']+'\x20('+_0x4eb2d5['path']+')');try{let _0x576fef=0x0;try{const _0x4e8775=await a0_0x480df1['stat'](_0x1f7d1f);_0x576fef=_0x4e8775[_0x5119b4(0x1cb)];}catch{}const _0x2ccb8a=Buffer['byteLength'](_0x41fb67,_0x8a4a8d);if(_0x576fef+_0x2ccb8a>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x576fef+_0x2ccb8a)+'\x20bytes\x20(max\x20'+this[_0x5119b4(0x1c4)]+')');await a0_0x480df1[_0x5119b4(0x1c9)](_0x1f7d1f,_0x41fb67,_0x8a4a8d);const _0x4bda2b=await a0_0x480df1['stat'](_0x1f7d1f),_0x483a29=this[_0x5119b4(0x1c5)]['createRelativePath'](_0x1f7d1f,_0x1482e1);return{'success':!![],'action':_0x5119b4(0x1c3),'filePath':_0x483a29,'fullPath':_0x1f7d1f,'appendedBytes':_0x2ccb8a,'totalSize':_0x4bda2b[_0x5119b4(0x1cb)],'encoding':_0x8a4a8d,'message':_0x5119b4(0x208)+_0x2ccb8a+_0x5119b4(0x194)+_0x1f7d1f};}catch(_0x3467c8){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x1f7d1f+':\x20'+_0x3467c8[_0x5119b4(0x18b)]);}}async[a0_0x56928e(0x1ce)](_0x4dc5f9,_0x14a9a5){const _0x1707ce=a0_0x56928e,_0x39737a=this['directoryAccessManager'][_0x1707ce(0x190)](_0x14a9a5),_0x271971=this[_0x1707ce(0x1ec)](_0x4dc5f9,_0x39737a),_0x143005=this[_0x1707ce(0x1c5)][_0x1707ce(0x19b)](_0x271971,_0x14a9a5);if(!_0x143005[_0x1707ce(0x207)])throw new Error('Delete\x20access\x20denied:\x20'+_0x143005['reason']+'\x20('+_0x143005[_0x1707ce(0x1f1)]+')');try{const _0x14788e=await a0_0x480df1[_0x1707ce(0x1c1)](_0x271971),_0x3a718b=_0x271971+_0x1707ce(0x187)+Date[_0x1707ce(0x1f4)]();await a0_0x480df1[_0x1707ce(0x192)](_0x271971,_0x3a718b),await a0_0x480df1['unlink'](_0x271971);const _0x5e7fef=this[_0x1707ce(0x1c5)]['createRelativePath'](_0x271971,_0x14a9a5),_0x49717a=this[_0x1707ce(0x1c5)][_0x1707ce(0x209)](_0x3a718b,_0x14a9a5);return{'success':!![],'action':_0x1707ce(0x1c0),'filePath':_0x5e7fef,'fullPath':_0x271971,'size':_0x14788e[_0x1707ce(0x1cb)],'backupPath':_0x49717a,'backupFullPath':_0x3a718b,'message':_0x1707ce(0x1f2)+_0x271971+_0x1707ce(0x1a5)};}catch(_0x5d2d2a){throw new Error(_0x1707ce(0x1eb)+_0x271971+':\x20'+_0x5d2d2a[_0x1707ce(0x18b)]);}}async['copyFile'](_0x2136ae,_0x312b06,_0x121082){const _0x3f9872=a0_0x56928e,_0x2c280e=this[_0x3f9872(0x1c5)]['getWorkingDirectory'](_0x121082),_0x2875ec=this[_0x3f9872(0x1ec)](_0x2136ae,_0x2c280e),_0x5d8253=this[_0x3f9872(0x1ec)](_0x312b06,_0x2c280e),_0x36f1eb=this['directoryAccessManager'][_0x3f9872(0x19f)](_0x2875ec,_0x121082);if(!_0x36f1eb[_0x3f9872(0x207)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x36f1eb['reason']+'\x20('+_0x36f1eb[_0x3f9872(0x1f1)]+')');const _0x4c5502=this[_0x3f9872(0x1c5)]['validateWriteAccess'](_0x5d8253,_0x121082);if(!_0x4c5502[_0x3f9872(0x207)])throw new Error(_0x3f9872(0x1c8)+_0x4c5502[_0x3f9872(0x1e7)]+'\x20('+_0x4c5502['path']+')');try{const _0x13f604=await a0_0x480df1[_0x3f9872(0x1c1)](_0x2875ec);if(_0x13f604['size']>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x13f604['size']+_0x3f9872(0x1dc));const _0x55868e=a0_0x22f23d['dirname'](_0x5d8253);await a0_0x480df1[_0x3f9872(0x1e4)](_0x55868e,{'recursive':!![]}),await a0_0x480df1['copyFile'](_0x2875ec,_0x5d8253);const _0x42b2e5=this[_0x3f9872(0x1c5)]['createRelativePath'](_0x2875ec,_0x121082),_0x1345a4=this['directoryAccessManager'][_0x3f9872(0x209)](_0x5d8253,_0x121082);return{'success':!![],'action':'copy','sourcePath':_0x42b2e5,'destPath':_0x1345a4,'sourceFullPath':_0x2875ec,'destFullPath':_0x5d8253,'size':_0x13f604['size'],'message':'Copied\x20'+_0x2875ec+'\x20to\x20'+_0x5d8253};}catch(_0x490e1a){throw new Error(_0x3f9872(0x203)+_0x2875ec+_0x3f9872(0x1ed)+_0x5d8253+':\x20'+_0x490e1a[_0x3f9872(0x18b)]);}}async[a0_0x56928e(0x1b7)](_0x26a36e,_0xd0c458,_0x336e21){const _0x57874e=a0_0x56928e,_0x1f3f9f=this[_0x57874e(0x1c5)]['getWorkingDirectory'](_0x336e21),_0x14c61a=this['resolvePath'](_0x26a36e,_0x1f3f9f),_0x1767e0=this['resolvePath'](_0xd0c458,_0x1f3f9f),_0x311c7b=this[_0x57874e(0x1c5)][_0x57874e(0x19f)](_0x14c61a,_0x336e21);if(!_0x311c7b[_0x57874e(0x207)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x311c7b['reason']+'\x20('+_0x311c7b[_0x57874e(0x1f1)]+')');const _0x42b719=this[_0x57874e(0x1c5)]['validateWriteAccess'](_0x1767e0,_0x336e21);if(!_0x42b719['allowed'])throw new Error(_0x57874e(0x219)+_0x42b719[_0x57874e(0x1e7)]+'\x20('+_0x42b719['path']+')');try{const _0x40911a=await a0_0x480df1['stat'](_0x14c61a),_0x57f163=a0_0x22f23d['dirname'](_0x1767e0);await a0_0x480df1[_0x57874e(0x1e4)](_0x57f163,{'recursive':!![]}),await a0_0x480df1[_0x57874e(0x19d)](_0x14c61a,_0x1767e0);const _0x1eb62a=this['directoryAccessManager']['createRelativePath'](_0x14c61a,_0x336e21),_0x549b14=this[_0x57874e(0x1c5)][_0x57874e(0x209)](_0x1767e0,_0x336e21);return{'success':!![],'action':'move','sourcePath':_0x1eb62a,'destPath':_0x549b14,'fullSourcePath':_0x14c61a,'fullDestPath':_0x1767e0,'size':_0x40911a['size'],'message':_0x57874e(0x1ae)+_0x26a36e+'\x20to\x20'+_0xd0c458};}catch(_0x4d7cef){throw new Error(_0x57874e(0x20c)+_0x26a36e+'\x20to\x20'+_0xd0c458+':\x20'+_0x4d7cef['message']);}}async[a0_0x56928e(0x20e)](_0x3cffa8,_0x338293){const _0x2075a9=a0_0x56928e,_0x48b66f=this['directoryAccessManager'][_0x2075a9(0x190)](_0x338293),_0x44becb=this['resolvePath'](_0x3cffa8,_0x48b66f),_0x1a6c77=this[_0x2075a9(0x1c5)]['validateWriteAccess'](_0x44becb,_0x338293);if(!_0x1a6c77['allowed'])throw new Error(_0x2075a9(0x1b3)+_0x1a6c77['reason']+'\x20('+_0x1a6c77[_0x2075a9(0x1f1)]+')');try{await a0_0x480df1['mkdir'](_0x44becb,{'recursive':!![]});const _0x3a24b8=this[_0x2075a9(0x1c5)][_0x2075a9(0x209)](_0x44becb,_0x338293);return{'success':!![],'action':_0x2075a9(0x1a7),'directory':_0x3a24b8,'fullPath':_0x44becb,'message':_0x2075a9(0x1ad)+_0x3cffa8};}catch(_0x130e3e){throw new Error(_0x2075a9(0x20d)+_0x3cffa8+':\x20'+_0x130e3e[_0x2075a9(0x18b)]);}}async['listDirectory'](_0x3e8863,_0x23c6e4){const _0x251d5b=a0_0x56928e,_0x2ee735=this[_0x251d5b(0x1c5)][_0x251d5b(0x190)](_0x23c6e4),_0x501ffa=this['resolvePath'](_0x3e8863,_0x2ee735),_0xffa5c=this['directoryAccessManager'][_0x251d5b(0x19f)](_0x501ffa,_0x23c6e4);if(!_0xffa5c[_0x251d5b(0x207)])throw new Error(_0x251d5b(0x1ef)+_0xffa5c['reason']+'\x20('+_0xffa5c[_0x251d5b(0x1f1)]+')');try{const _0x20e455=await a0_0x480df1[_0x251d5b(0x1a2)](_0x501ffa,{'withFileTypes':!![]}),_0x3f89fc=[];for(const _0x543bc7 of _0x20e455){const _0x10cba4=a0_0x22f23d[_0x251d5b(0x18c)](_0x501ffa,_0x543bc7['name']),_0x4cf3e4=await a0_0x480df1['stat'](_0x10cba4);_0x3f89fc['push']({'name':_0x543bc7['name'],'type':_0x543bc7['isDirectory']()?_0x251d5b(0x1af):'file','size':_0x543bc7[_0x251d5b(0x20a)]()?_0x4cf3e4['size']:undefined,'lastModified':_0x4cf3e4[_0x251d5b(0x1b2)]['toISOString'](),'permissions':_0x4cf3e4[_0x251d5b(0x1d7)],'isSymlink':_0x543bc7[_0x251d5b(0x1d5)]()});}const _0x36d46e=this['directoryAccessManager'][_0x251d5b(0x209)](_0x501ffa,_0x23c6e4);return{'success':!![],'action':_0x251d5b(0x206),'directory':_0x36d46e,'fullPath':_0x501ffa,'contents':_0x3f89fc,'totalItems':_0x3f89fc['length'],'directories':_0x3f89fc[_0x251d5b(0x1f5)](_0x4d0bae=>_0x4d0bae[_0x251d5b(0x1f3)]===_0x251d5b(0x1af))['length'],'files':_0x3f89fc[_0x251d5b(0x1f5)](_0x28928b=>_0x28928b[_0x251d5b(0x1f3)]==='file')[_0x251d5b(0x186)],'message':_0x251d5b(0x21a)+_0x3f89fc[_0x251d5b(0x186)]+'\x20items\x20in\x20'+_0x3e8863};}catch(_0x16e66a){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x3e8863+':\x20'+_0x16e66a['message']);}}async['checkExists'](_0xaf1a25,_0x3356aa){const _0x26d822=a0_0x56928e,_0x4ba57e=this[_0x26d822(0x1c5)][_0x26d822(0x190)](_0x3356aa),_0x293096=this[_0x26d822(0x1ec)](_0xaf1a25,_0x4ba57e),_0x51ee99=this['directoryAccessManager'][_0x26d822(0x19f)](_0x293096,_0x3356aa);if(!_0x51ee99['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x51ee99['reason']+'\x20('+_0x51ee99[_0x26d822(0x1f1)]+')');try{const _0x4acdbb=await a0_0x480df1['stat'](_0x293096),_0x5c7ddf=this['directoryAccessManager'][_0x26d822(0x209)](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x5c7ddf,'fullPath':_0x293096,'exists':!![],'type':_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a),'message':_0xaf1a25+'\x20exists\x20as\x20'+(_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a))};}catch(_0x5667b3){if(_0x5667b3['code']===_0x26d822(0x193)){const _0x1ac484=this['directoryAccessManager']['createRelativePath'](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x1ac484,'fullPath':_0x293096,'exists':![],'message':_0xaf1a25+_0x26d822(0x1a1)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0xaf1a25+':\x20'+_0x5667b3['message']);}}async['getFileStats'](_0x319bf6,_0x316cf0){const _0x51d8b6=a0_0x56928e,_0x412bd9=this['directoryAccessManager'][_0x51d8b6(0x190)](_0x316cf0),_0x2431dd=this[_0x51d8b6(0x1ec)](_0x319bf6,_0x412bd9),_0x5689ba=this[_0x51d8b6(0x1c5)][_0x51d8b6(0x19f)](_0x2431dd,_0x316cf0);if(!_0x5689ba['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5689ba['reason']+'\x20('+_0x5689ba['path']+')');try{const _0x4d1f35=await a0_0x480df1[_0x51d8b6(0x1c1)](_0x2431dd),_0x4fdb28=this['directoryAccessManager'][_0x51d8b6(0x209)](_0x2431dd,_0x316cf0);return{'success':!![],'action':_0x51d8b6(0x1bf),'filePath':_0x4fdb28,'fullPath':_0x2431dd,'stats':{'size':_0x4d1f35[_0x51d8b6(0x1cb)],'type':_0x4d1f35['isDirectory']()?_0x51d8b6(0x1af):_0x51d8b6(0x19a),'lastModified':_0x4d1f35['mtime'][_0x51d8b6(0x18a)](),'lastAccessed':_0x4d1f35['atime']['toISOString'](),'created':_0x4d1f35['birthtime'][_0x51d8b6(0x18a)](),'permissions':_0x4d1f35['mode'],'isSymlink':_0x4d1f35['isSymbolicLink']()},'message':_0x51d8b6(0x196)+_0x319bf6};}catch(_0x4d5f5d){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x319bf6+':\x20'+_0x4d5f5d[_0x51d8b6(0x18b)]);}}['resolvePath'](_0x541578,_0x1747ec){const _0x5eb2bb=a0_0x56928e;if(a0_0x22f23d[_0x5eb2bb(0x1de)](_0x541578))return a0_0x22f23d[_0x5eb2bb(0x1b6)](_0x541578);return a0_0x22f23d[_0x5eb2bb(0x19e)](_0x1747ec,_0x541578);}['validatePathAccess'](_0x4d516b,_0x36e2fd,_0x33a528='read'){const _0xdcda19=a0_0x56928e,_0x2ff7eb=_0x33a528==='write'?this[_0xdcda19(0x1c5)][_0xdcda19(0x19b)](_0x4d516b,_0x36e2fd):this[_0xdcda19(0x1c5)][_0xdcda19(0x19f)](_0x4d516b,_0x36e2fd);if(!_0x2ff7eb[_0xdcda19(0x207)])throw new Error(_0x33a528+'\x20access\x20denied:\x20'+_0x2ff7eb[_0xdcda19(0x1e7)]+'\x20('+_0x2ff7eb['path']+')');return _0x2ff7eb;}['isAllowedFileExtension'](_0x44d9a3){const _0x1bac09=a0_0x56928e,_0x2ee181=a0_0x22f23d[_0x1bac09(0x18d)](_0x44d9a3)[_0x1bac09(0x205)]();if(this[_0x1bac09(0x185)]['includes'](_0x2ee181))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x1bac09(0x215)](_0x2ee181))return![];return!![];}[a0_0x56928e(0x1f6)](_0x17472a,_0x4fe42a,_0x2c0073){const _0x31670e=a0_0x56928e,_0x458cbc={'timestamp':new Date()[_0x31670e(0x18a)](),'agentId':_0x2c0073,'action':_0x17472a['type'],'filePath':_0x17472a[_0x31670e(0x1bb)]||_0x17472a['outputPath']||_0x17472a[_0x31670e(0x1af)],'success':_0x4fe42a['success'],'size':_0x4fe42a[_0x31670e(0x1cb)]};this[_0x31670e(0x1d0)]['push'](_0x458cbc),this[_0x31670e(0x1d0)][_0x31670e(0x186)]>0xc8&&(this[_0x31670e(0x1d0)]=this[_0x31670e(0x1d0)][_0x31670e(0x191)](-0xc8));}['getSupportedActions'](){const _0x235c31=a0_0x56928e;return[_0x235c31(0x1fd),_0x235c31(0x1e0),_0x235c31(0x1c3),'delete',_0x235c31(0x1e8),'move','create-dir',_0x235c31(0x206),'exists','stats'];}[a0_0x56928e(0x1ab)](){const _0x3de3fd=a0_0x56928e;return{'type':_0x3de3fd(0x21c),'properties':{'actions':{'type':_0x3de3fd(0x20b),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x3de3fd(0x18e),'enum':this[_0x3de3fd(0x199)]()},'filePath':{'type':'string'},'outputPath':{'type':_0x3de3fd(0x18e)},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':_0x3de3fd(0x18e)},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x3e9c4d=null){const _0x2d1861=a0_0x56928e;if(_0x3e9c4d)return this[_0x2d1861(0x1d0)]['filter'](_0x4c36a6=>_0x4c36a6['agentId']===_0x3e9c4d);return[...this[_0x2d1861(0x1d0)]];}}function a0_0x465f(){const _0x588c7a=['ndm3ndK4yuLut2TK','q3jLyxrLzcbKAxjLy3rVCNKG','tw92zwqG','zgLYzwn0B3j5','ywDLBNrjza','mJmWmde3nxjtu2HbCa','BxrPBwu','v3jPDguGywnJzxnZigrLBMLLzdOG','rMLSzsb0B28GBgfYz2u6ia','ngPWA21NqG','BM9YBwfSAxPL','Bw92zuzPBgu','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','mtm0mJCZmLPpqwXZwq','Bg9Nz2vY','zMLSzvbHDgG','lMnTza','C3vIC3rYAw5N','C291CMnLlxbHDgG','C3rHDhm','zgvSzxrL','C3rHDa','igj5DgvZicHTyxGG','yxbWzw5K','Bwf4rMLSzvnPEMu','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHLy3v0zq','B3v0Chv0lxbHDgG','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','yxbWzw5KrMLSzq','zw5JB2rPBMC','C2L6zq','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','lMnVBq','zgvSzxrLrMLSzq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','B3bLCMf0Aw9UsgLZDg9YEq','ndq0ntaWnxfIBfLjwa','ywXSB3DLzev4DgvUC2LVBNm','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','D3jPDgvgAwXL','AxntEw1IB2XPy0XPBMS','zMLSzxn5CW','Bw9Kzq','CgfYC2vqyxjHBwv0zxjZ','AxnbCNjHEq','ywn0Aw9UCW','DgLTzw91Da','igj5DgvZ','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','AxnbyNnVBhv0zq','v3jVDguG','D3jPDgu','CMvHzezPBgu','Bg9N','CMf3q29UDgvUDa','BwTKAxi','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','CMvHC29U','y29WEq','Dhj1zq','C291CMnLugf0Aa','rMfPBgvKihrVigrLBgv0zsbMAwXLia','CMvZB2X2zvbHDgG','ihrVia','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','Cgf0Aa','rgvSzxrLzca','DhLWzq','BM93','zMLSDgvY','ywrKvg9iAxn0B3j5','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','ywXSB3DLzerPCMvJDg9YAwvZ','zgvZDc1WyxrO','BgLZDerPCMvJDg9YEq','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','ywnJzxnZ','CMvHza','AxneAxjLy3rVCNK','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y3DK','zxHPC3rZ','yNL0zuXLBMD0Aa','rMfPBgvKihrVignVChKG','lMjHy2T1Cc0','Dg9mB3DLCKnHC2u','BgLZDa','ywXSB3DLza','qxbWzw5KzwqG','y3jLyxrLuMvSyxrPDMvqyxrO','AxngAwXL','yxjYyxK','rMfPBgvKihrVig1VDMuG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','y3jLyxrLrgLYzwn0B3j5','AxnbC3LUyW','qwn0Aw9Uia','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','zMLSzs1WyxrO','CM91BMq','Aw5JBhvKzxm','tufyx0zjtevFu0LArq','y3jLyxrLrgLYCW','oti2nZuZmunmCffNDW','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','tgLZDgvKia','mtC4mdGWA3zYvKrS','B2jQzwn0','oIb0ExbLigLZihjLCxvPCMvK','yxr0CMLIDxrLCW','yMXVy2TLzev4DgvUC2LVBNm','BgvUz3rO','lMrLBgv0zwqTyMfJA3vWlq','zgvZDfbHDgG','rMfPBgvKihrVihjLywqGzMLSzsa','Dg9ju09tDhjPBMC','BwvZC2fNzq','AM9PBG','zxH0BMfTzq','C3rYAw5N','mtuYmZy0mtzgrfHPywW','z2v0v29YA2LUz0rPCMvJDg9YEq','C2XPy2u','y29WEuzPBgu','ru5pru5u','igj5DgvZihrVia','y29UDgvUDa','uMv0CMLLDMvKihn0yxrZigzVCIa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','Bw92zq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zMLSzq','DMfSAwrHDgvxCML0zufJy2vZCW','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','CMvUyw1L','CMvZB2X2zq','DMfSAwrHDgvszwfKqwnJzxnZ','DxrMoa','igrVzxmGBM90igv4Axn0','CMvHzgrPCG','CgfYC2vbDhrYAwj1DgvZ','BwfW','icHIywnRDxaGy3jLyxrLzcK','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','y3jLyxrLlwrPCG','vw5RBM93BIbHy3rPB24GDhLWztOG','ChvZAa','y3jLyxrLlwrPCNm','z2v0ugfYyw1LDgvYu2nOzw1H'];a0_0x465f=function(){return _0x588c7a;};return a0_0x465f();}export default FileSystemTool;
|