@loxia-labs/loxia-autopilot-one 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/agentActivityService.js +1 -1
  76. package/src/services/aiService.js +1 -1
  77. package/src/services/apiKeyManager.js +1 -1
  78. package/src/services/benchmarkService.js +1 -1
  79. package/src/services/budgetService.js +1 -1
  80. package/src/services/contextInjectionService.js +1 -1
  81. package/src/services/conversationCompactionService.js +1 -1
  82. package/src/services/errorHandler.js +1 -1
  83. package/src/services/fileAttachmentService.js +1 -1
  84. package/src/services/modelRouterService.js +1 -1
  85. package/src/services/modelsService.js +1 -1
  86. package/src/services/qualityInspector.js +1 -1
  87. package/src/services/tokenCountingService.js +1 -1
  88. package/src/tools/agentCommunicationTool.js +1 -1
  89. package/src/tools/agentDelayTool.js +1 -1
  90. package/src/tools/asyncToolManager.js +1 -1
  91. package/src/tools/baseTool.js +1 -1
  92. package/src/tools/browserTool.js +1 -1
  93. package/src/tools/cloneDetectionTool.js +1 -1
  94. package/src/tools/dependencyResolverTool.js +1 -1
  95. package/src/tools/fileContentReplaceTool.js +1 -1
  96. package/src/tools/fileSystemTool.js +1 -1
  97. package/src/tools/fileTreeTool.js +1 -1
  98. package/src/tools/imageTool.js +1 -1
  99. package/src/tools/importAnalyzerTool.js +1 -1
  100. package/src/tools/jobDoneTool.js +1 -1
  101. package/src/tools/seekTool.js +1 -1
  102. package/src/tools/staticAnalysisTool.js +1 -1
  103. package/src/tools/taskManagerTool.js +1 -1
  104. package/src/tools/terminalTool.js +1 -1
  105. package/src/tools/webTool.js +1 -1
  106. package/src/types/agent.js +1 -1
  107. package/src/types/contextReference.js +1 -1
  108. package/src/types/conversation.js +1 -1
  109. package/src/types/toolCommand.js +1 -1
  110. package/src/utilities/attachmentValidator.js +1 -1
  111. package/src/utilities/configManager.js +1 -1
  112. package/src/utilities/constants.js +1 -1
  113. package/src/utilities/directoryAccessManager.js +1 -1
  114. package/src/utilities/fileProcessor.js +1 -1
  115. package/src/utilities/logger.js +1 -1
  116. package/src/utilities/tagParser.js +1 -1
  117. package/src/utilities/toolConstants.js +1 -1
  118. package/src/utilities/userDataDir.js +1 -1
  119. package/web-ui/build/index.html +2 -2
  120. package/web-ui/build/static/index-DFmFvOoy.css +1 -0
  121. package/web-ui/build/static/index-DOk0l6Kf.js +348 -0
  122. package/web-ui/build/static/index-DXN850Y2.js +0 -400
  123. package/web-ui/build/static/index-an-YRzUX.css +0 -1
@@ -1 +1 @@
1
- const a0_0x291c8d=a0_0x2ea3;(function(_0x49f5fb,_0x2b617d){const _0x474a39=a0_0x2ea3,_0x240467=_0x49f5fb();while(!![]){try{const _0x50a8e4=parseInt(_0x474a39(0x1f2))/0x1+parseInt(_0x474a39(0x1b2))/0x2+-parseInt(_0x474a39(0x21b))/0x3+parseInt(_0x474a39(0x1d4))/0x4+-parseInt(_0x474a39(0x1db))/0x5+-parseInt(_0x474a39(0x1f0))/0x6+parseInt(_0x474a39(0x214))/0x7;if(_0x50a8e4===_0x2b617d)break;else _0x240467['push'](_0x240467['shift']());}catch(_0xceb347){_0x240467['push'](_0x240467['shift']());}}}(a0_0x200f,0x6dbee));function a0_0x2ea3(_0x465312,_0x34b0df){_0x465312=_0x465312-0x19f;const _0x200f37=a0_0x200f();let _0x2ea3e2=_0x200f37[_0x465312];if(a0_0x2ea3['AMqglm']===undefined){var _0x1e42d5=function(_0x3c2874){const _0x7c69fd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x512462='',_0x685bd6='';for(let _0x80b705=0x0,_0x302c70,_0xec6d78,_0x2e7712=0x0;_0xec6d78=_0x3c2874['charAt'](_0x2e7712++);~_0xec6d78&&(_0x302c70=_0x80b705%0x4?_0x302c70*0x40+_0xec6d78:_0xec6d78,_0x80b705++%0x4)?_0x512462+=String['fromCharCode'](0xff&_0x302c70>>(-0x2*_0x80b705&0x6)):0x0){_0xec6d78=_0x7c69fd['indexOf'](_0xec6d78);}for(let _0x159909=0x0,_0x43cb90=_0x512462['length'];_0x159909<_0x43cb90;_0x159909++){_0x685bd6+='%'+('00'+_0x512462['charCodeAt'](_0x159909)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x685bd6);};a0_0x2ea3['CvyoXZ']=_0x1e42d5,a0_0x2ea3['LnAfRK']={},a0_0x2ea3['AMqglm']=!![];}const _0x58dd5b=_0x200f37[0x0],_0x50439b=_0x465312+_0x58dd5b,_0x265958=a0_0x2ea3['LnAfRK'][_0x50439b];return!_0x265958?(_0x2ea3e2=a0_0x2ea3['CvyoXZ'](_0x2ea3e2),a0_0x2ea3['LnAfRK'][_0x50439b]=_0x2ea3e2):_0x2ea3e2=_0x265958,_0x2ea3e2;}import{promises as a0_0x512462}from'fs';import a0_0x685bd6 from'path';import{exec as a0_0x80b705}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x302c70 from'../utilities/tagParser.js';const exec=promisify(a0_0x80b705),RESOLVER_CONFIG={'DEFAULT_MODE':'check','VALID_MODES':['check','fix',a0_0x291c8d(0x21c)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x291c8d(0x21a),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x291c8d(0x1c4)};export class DependencyResolverTool extends BaseTool{constructor(_0xec6d78={},_0x2e7712=null){super(_0xec6d78,_0x2e7712),this['id']='dependency-resolver';}['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**USAGE:**\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```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22check\x22\x20}\x0a}\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22path\x22:\x20\x22./my-project\x22,\x20\x22mode\x22:\x20\x22fix\x22\x20}\x0a}\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.)';}[a0_0x291c8d(0x1bd)](_0x159909){const _0x2fd1d6=a0_0x291c8d;if(typeof _0x159909==='object'&&_0x159909!==null)return{'path':_0x159909[_0x2fd1d6(0x1bc)]||'.','mode':_0x159909['mode']||RESOLVER_CONFIG[_0x2fd1d6(0x1c2)],'includeDev':_0x159909['includeDev']!==undefined?_0x159909['includeDev']:!![]};if(typeof _0x159909==='string'){const _0x43cb90=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x73353f=_0x43cb90[_0x2fd1d6(0x1ce)](_0x159909);if(_0x73353f){const _0x66c722=_0x73353f[0x1],_0x420833=_0x73353f[0x2],_0x5a47b9=/path=["']([^"']*)["']/i['exec'](_0x66c722),_0x31cf59=/mode=["']([^"']*)["']/i['exec'](_0x66c722),_0x23cb8e=/include-dev=["']([^"']*)["']/i['exec'](_0x66c722),_0x49665a=/<path>(.*?)<\/path>/i,_0x422e84=_0x49665a['exec'](_0x420833),_0x587952=/<mode>(.*?)<\/mode>/i,_0x54a132=_0x587952[_0x2fd1d6(0x1ce)](_0x420833),_0x576dc8=/<include-dev>(.*?)<\/include-dev>/i,_0xf4c667=_0x576dc8[_0x2fd1d6(0x1ce)](_0x420833),_0x5739d7=(_0x422e84?_0x422e84[0x1][_0x2fd1d6(0x1cc)]():null)||(_0x5a47b9?_0x5a47b9[0x1]:'.'),_0x2b0319=(_0x54a132?_0x54a132[0x1][_0x2fd1d6(0x1cc)]():null)||(_0x31cf59?_0x31cf59[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x22ce22=(_0xf4c667?_0xf4c667[0x1]['trim']():null)||(_0x23cb8e?_0x23cb8e[0x1]:_0x2fd1d6(0x19f));return{'path':_0x5739d7,'mode':_0x2b0319,'includeDev':this['_parseBoolean'](_0x22ce22,!![])};}const _0x3f141b=/\[resolve\s+([^\]]*)\]/i,_0x26334f=_0x3f141b['exec'](_0x159909);if(_0x26334f){const _0x5184c0=_0x26334f[0x1],_0x34cc25=/path=["']([^"']*)["']/i['exec'](_0x5184c0),_0x326b89=/mode=["']([^"']*)["']/i['exec'](_0x5184c0),_0x36d182=/include-dev=["']([^"']*)["']/i['exec'](_0x5184c0);return{'path':_0x34cc25?_0x34cc25[0x1]:'.','mode':_0x326b89?_0x326b89[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0x36d182?_0x36d182[0x1]:_0x2fd1d6(0x19f),!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error(_0x2fd1d6(0x1d3));}['_parseBoolean'](_0x42b8db,defaultValue=![]){const _0x17d6c9=a0_0x291c8d;if(_0x42b8db===undefined||_0x42b8db===null)return defaultValue;if(typeof _0x42b8db===_0x17d6c9(0x1ed))return _0x42b8db;if(typeof _0x42b8db===_0x17d6c9(0x206))return _0x42b8db[_0x17d6c9(0x216)]()==='true'||_0x42b8db==='1';return defaultValue;}[a0_0x291c8d(0x1b8)](_0x441f0a){const _0x468c2a=a0_0x291c8d;if(!_0x441f0a||typeof _0x441f0a!=='object')throw new Error(_0x468c2a(0x1c0));if(_0x441f0a[_0x468c2a(0x1bc)]&&typeof _0x441f0a[_0x468c2a(0x1bc)]!==_0x468c2a(0x206))throw new Error(_0x468c2a(0x1d2));if(_0x441f0a[_0x468c2a(0x1f5)]&&!RESOLVER_CONFIG[_0x468c2a(0x1fd)]['includes'](_0x441f0a['mode']))throw new Error(_0x468c2a(0x1a0)+_0x441f0a['mode']+_0x468c2a(0x1ca)+RESOLVER_CONFIG['VALID_MODES'][_0x468c2a(0x1f9)](',\x20'));if(_0x441f0a[_0x468c2a(0x202)]!==undefined&&typeof _0x441f0a['includeDev']!=='boolean')throw new Error(_0x468c2a(0x1d7));}['_resolveAndValidatePath'](_0x360b5f,_0xa552){const _0x25c84f=a0_0x291c8d,{projectDir:_0x4345f5,directoryAccess:_0x2f3f44}=_0xa552;let _0x19a8c3=_0x4345f5||process[_0x25c84f(0x212)]();_0x2f3f44&&_0x2f3f44[_0x25c84f(0x1ff)]&&(_0x19a8c3=_0x2f3f44[_0x25c84f(0x1ff)]);const _0x3ea94b=a0_0x685bd6[_0x25c84f(0x1a7)](_0x360b5f)?a0_0x685bd6[_0x25c84f(0x1ec)](_0x360b5f):a0_0x685bd6[_0x25c84f(0x1ec)](a0_0x685bd6[_0x25c84f(0x1f9)](_0x19a8c3,_0x360b5f)),_0x2f942e=a0_0x685bd6['normalize'](_0x19a8c3);if(!_0x3ea94b[_0x25c84f(0x1fa)](_0x2f942e))throw new Error('Path\x20traversal\x20detected:\x20'+_0x360b5f+_0x25c84f(0x1c9));return _0x3ea94b;}async['_createBackup'](_0x5c234b){const _0x576b47=a0_0x291c8d;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x4cf245=_0x5c234b+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x512462['copyFile'](_0x5c234b,_0x4cf245),this[_0x576b47(0x20b)]?.[_0x576b47(0x1bb)]('Created\x20backup',{'backupPath':_0x4cf245}),_0x4cf245;}catch(_0x2ce6da){return this['logger']?.[_0x576b47(0x20f)](_0x576b47(0x1a4),{'error':_0x2ce6da[_0x576b47(0x219)]}),null;}}async[a0_0x291c8d(0x1c8)](_0x5537d5){const _0x4a34e6=a0_0x291c8d,_0x2547b1=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x5537d5);for(let _0x44d2d9=0x1;_0x44d2d9<=RESOLVER_CONFIG[_0x4a34e6(0x217)];_0x44d2d9++){try{const _0x3b959e=new AbortController(),_0x1cfca8=setTimeout(()=>_0x3b959e[_0x4a34e6(0x1df)](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0xba65c0=await fetch(_0x2547b1,{'signal':_0x3b959e['signal']});clearTimeout(_0x1cfca8);if(!_0xba65c0['ok']){if(_0xba65c0[_0x4a34e6(0x20a)]===0x194)return this[_0x4a34e6(0x20b)]?.[_0x4a34e6(0x20f)]('Package\x20not\x20found:\x20'+_0x5537d5),null;throw new Error('HTTP\x20'+_0xba65c0['status']+':\x20'+_0xba65c0[_0x4a34e6(0x209)]);}const _0x3bec38=await _0xba65c0[_0x4a34e6(0x201)]();if(!_0x3bec38||typeof _0x3bec38!=='object'||!_0x3bec38[_0x4a34e6(0x1a3)])throw new Error(_0x4a34e6(0x1cb));return _0x3bec38;}catch(_0x27d5eb){if(_0x44d2d9<RESOLVER_CONFIG[_0x4a34e6(0x217)])this['logger']?.['debug'](_0x4a34e6(0x20c)+_0x44d2d9+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+_0x4a34e6(0x1ba)+_0x5537d5),await new Promise(_0x727d28=>setTimeout(_0x727d28,RESOLVER_CONFIG['RETRY_DELAY']*_0x44d2d9));else return this[_0x4a34e6(0x20b)]?.[_0x4a34e6(0x1a6)]('Failed\x20to\x20fetch\x20'+_0x5537d5+':',_0x27d5eb['message']),null;}}return null;}async[a0_0x291c8d(0x1a8)](_0x2325b3,_0x561bdc){const _0xce8082=a0_0x291c8d,_0x177f4e=await this[_0xce8082(0x1c8)](_0x2325b3);if(!_0x177f4e)return null;const _0x38bf9e=_0x177f4e[_0xce8082(0x1a3)]?.['latest'];if(!_0x38bf9e)return null;const _0x4cf202=this['_parseVersion'](_0x38bf9e);if(!_0x4cf202)return null;if(this['_isComplexRange'](_0x561bdc)){const _0x300c4e=this[_0xce8082(0x1a9)](_0x561bdc),_0x380606=this['_satisfiesComplexRange'](_0x300c4e,_0x4cf202);if(_0x380606)return _0x38bf9e;return null;}const _0x41b322=this[_0xce8082(0x1dd)](_0x561bdc);if(!_0x41b322)return null;const _0x2abb90=this['_isUpdateAvailable'](_0x41b322,_0x4cf202);if(_0x2abb90)return _0x41b322['prefix']+_0x38bf9e;return null;}[a0_0x291c8d(0x210)](_0x4fab9f){const _0x4e55a8=a0_0x291c8d,_0x14e0ba=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x2d1e36=_0x14e0ba['exec'](_0x4fab9f);if(!_0x2d1e36){const _0x52e557=_0x4fab9f['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x52e557)return{'major':parseInt(_0x52e557[0x1],0xa),'minor':parseInt(_0x52e557[0x2],0xa),'patch':parseInt(_0x52e557[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x2d1e36[0x1],0xa),'minor':parseInt(_0x2d1e36[0x2],0xa),'patch':parseInt(_0x2d1e36[0x3],0xa),'prerelease':_0x2d1e36[0x4]?_0x2d1e36[0x4][_0x4e55a8(0x1e7)]('.'):null,'build':_0x2d1e36[0x5]||null};}[a0_0x291c8d(0x1e5)](_0x57b24,_0x2d5c8f){const _0x561cd4=a0_0x291c8d;if(_0x57b24[_0x561cd4(0x204)]!==_0x2d5c8f[_0x561cd4(0x204)])return _0x57b24['major']-_0x2d5c8f[_0x561cd4(0x204)];if(_0x57b24['minor']!==_0x2d5c8f[_0x561cd4(0x1cd)])return _0x57b24[_0x561cd4(0x1cd)]-_0x2d5c8f['minor'];if(_0x57b24['patch']!==_0x2d5c8f[_0x561cd4(0x1c7)])return _0x57b24[_0x561cd4(0x1c7)]-_0x2d5c8f['patch'];if(!_0x57b24[_0x561cd4(0x1be)]&&!_0x2d5c8f[_0x561cd4(0x1be)])return 0x0;if(!_0x57b24['prerelease']&&_0x2d5c8f['prerelease'])return 0x1;if(_0x57b24['prerelease']&&!_0x2d5c8f['prerelease'])return-0x1;return this[_0x561cd4(0x207)](_0x57b24['prerelease'],_0x2d5c8f['prerelease']);}['_comparePrerelease'](_0x54c243,_0x57936b){const _0x236861=a0_0x291c8d,_0x91be87=Math['max'](_0x54c243[_0x236861(0x1d5)],_0x57936b['length']);for(let _0x57b9a1=0x0;_0x57b9a1<_0x91be87;_0x57b9a1++){if(_0x57b9a1>=_0x54c243['length'])return-0x1;if(_0x57b9a1>=_0x57936b['length'])return 0x1;const _0x479114=_0x54c243[_0x57b9a1],_0x5a788d=_0x57936b[_0x57b9a1],_0x48d225=/^\d+$/[_0x236861(0x1d0)](_0x479114)?parseInt(_0x479114,0xa):null,_0x37dac4=/^\d+$/[_0x236861(0x1d0)](_0x5a788d)?parseInt(_0x5a788d,0xa):null;if(_0x48d225!==null&&_0x37dac4!==null){if(_0x48d225!==_0x37dac4)return _0x48d225-_0x37dac4;continue;}if(_0x48d225!==null&&_0x37dac4===null)return-0x1;if(_0x48d225===null&&_0x37dac4!==null)return 0x1;if(_0x479114<_0x5a788d)return-0x1;if(_0x479114>_0x5a788d)return 0x1;}return 0x0;}['_parseVersionRange'](_0x437518){const _0x4ad600=a0_0x291c8d,_0x1adc3a=_0x437518['trim'](),_0x3f7ebc=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x5d3086=_0x3f7ebc[_0x4ad600(0x1ce)](_0x1adc3a);if(_0x5d3086){const _0x40f2ec=_0x5d3086[0x1],_0x128095=_0x5d3086[0x3],_0x5b82d2=_0x5d3086[0x5],_0x3aedd9=_0x40f2ec==='*'||_0x40f2ec['toLowerCase']()==='x'||_0x128095===undefined||_0x128095==='*'||_0x128095['toLowerCase']()==='x'||_0x5b82d2===undefined||_0x5b82d2==='*'||_0x5b82d2[_0x4ad600(0x216)]()==='x';if(_0x3aedd9)return{'prefix':'','operator':'x-range','major':_0x40f2ec==='*'||_0x40f2ec['toLowerCase']()==='x'?null:parseInt(_0x40f2ec,0xa),'minor':!_0x128095||_0x128095==='*'||_0x128095['toLowerCase']()==='x'?null:parseInt(_0x128095,0xa),'patch':!_0x5b82d2||_0x5b82d2==='*'||_0x5b82d2['toLowerCase']()==='x'?null:parseInt(_0x5b82d2,0xa),'original':_0x437518};}let _0x39515d='',_0x858857=_0x1adc3a,_0x36b4ca='=';if(_0x1adc3a[_0x4ad600(0x1fa)]('^'))_0x39515d='^',_0x858857=_0x1adc3a['slice'](0x1),_0x36b4ca='^';else{if(_0x1adc3a[_0x4ad600(0x1fa)]('~'))_0x39515d='~',_0x858857=_0x1adc3a[_0x4ad600(0x208)](0x1),_0x36b4ca='~';else{if(_0x1adc3a[_0x4ad600(0x1fa)]('>='))_0x39515d='>=',_0x858857=_0x1adc3a[_0x4ad600(0x208)](0x2)['trim'](),_0x36b4ca='>=';else{if(_0x1adc3a[_0x4ad600(0x1fa)]('>'))_0x39515d='>',_0x858857=_0x1adc3a[_0x4ad600(0x208)](0x1)[_0x4ad600(0x1cc)](),_0x36b4ca='>';else{if(_0x1adc3a['startsWith']('<='))_0x39515d='<=',_0x858857=_0x1adc3a[_0x4ad600(0x208)](0x2)[_0x4ad600(0x1cc)](),_0x36b4ca='<=';else _0x1adc3a[_0x4ad600(0x1fa)]('<')&&(_0x39515d='<',_0x858857=_0x1adc3a[_0x4ad600(0x208)](0x1)['trim'](),_0x36b4ca='<');}}}}const _0x4f8ba4=this[_0x4ad600(0x210)](_0x858857);if(!_0x4f8ba4)return null;return{'prefix':_0x39515d,'operator':_0x36b4ca,'major':_0x4f8ba4['major'],'minor':_0x4f8ba4['minor'],'patch':_0x4f8ba4['patch'],'prerelease':_0x4f8ba4['prerelease'],'build':_0x4f8ba4['build'],'original':_0x437518};}[a0_0x291c8d(0x203)](_0x442b71,_0x2b1fd5){const _0x466ad3=a0_0x291c8d,_0x19b48d={'major':_0x442b71['major'],'minor':_0x442b71[_0x466ad3(0x1cd)],'patch':_0x442b71[_0x466ad3(0x1c7)],'prerelease':_0x442b71[_0x466ad3(0x1be)]||null,'build':_0x442b71[_0x466ad3(0x1ac)]||null};switch(_0x442b71[_0x466ad3(0x20d)]){case'^':return this['_isCaretUpdateAvailable'](_0x19b48d,_0x2b1fd5);case'~':return this['_isTildeUpdateAvailable'](_0x19b48d,_0x2b1fd5);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x19b48d,_0x2b1fd5);case'<':case'<=':return this[_0x466ad3(0x21d)](_0x442b71,_0x2b1fd5);case _0x466ad3(0x1bf):return this['_isXRangeUpdateAvailable'](_0x442b71,_0x2b1fd5);case'=':default:return this[_0x466ad3(0x1d6)](_0x19b48d,_0x2b1fd5);}}['_isCaretUpdateAvailable'](_0x2c81cb,_0xd57727){const _0x457145=a0_0x291c8d,_0x33e00d=this['_compareVersions'](_0xd57727,_0x2c81cb);if(_0x33e00d<=0x0)return![];if(_0x2c81cb[_0x457145(0x204)]===0x0&&_0x2c81cb[_0x457145(0x1cd)]===0x0)return _0xd57727['major']===0x0&&_0xd57727[_0x457145(0x1cd)]===0x0;if(_0x2c81cb['major']===0x0)return _0xd57727[_0x457145(0x204)]===0x0&&_0xd57727['minor']===_0x2c81cb[_0x457145(0x1cd)];return _0xd57727['major']===_0x2c81cb['major'];}['_isTildeUpdateAvailable'](_0x33f713,_0x43907d){const _0x2834e2=a0_0x291c8d,_0x131635=this['_compareVersions'](_0x43907d,_0x33f713);if(_0x131635<=0x0)return![];return _0x43907d['major']===_0x33f713[_0x2834e2(0x204)]&&_0x43907d[_0x2834e2(0x1cd)]===_0x33f713['minor'];}['_isSimpleUpdateAvailable'](_0x206c08,_0x360726){const _0x4bacc1=this['_compareVersions'](_0x360726,_0x206c08);return _0x4bacc1>0x0;}['_isExactUpdateAvailable'](_0x4351fe,_0x4f69bc){const _0x344cd9=a0_0x291c8d;return this[_0x344cd9(0x1e1)](_0x4351fe,_0x4f69bc);}[a0_0x291c8d(0x21d)](_0x432dde,_0x12dc5f){const _0x5378c2=this['_compareVersions'](_0x12dc5f,_0x432dde);if(_0x432dde['operator']==='<')return _0x5378c2<0x0;else{if(_0x432dde['operator']==='<=')return _0x5378c2<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x15c0bf,_0x1de0a5){const _0x458fad=a0_0x291c8d;if(_0x15c0bf[_0x458fad(0x204)]!==null&&_0x1de0a5['major']!==_0x15c0bf[_0x458fad(0x204)])return![];if(_0x15c0bf['minor']!==null&&_0x1de0a5[_0x458fad(0x1cd)]!==_0x15c0bf['minor'])return![];if(_0x15c0bf[_0x458fad(0x1c7)]!==null&&_0x1de0a5['patch']!==_0x15c0bf['patch'])return![];return!![];}[a0_0x291c8d(0x213)](_0x5aa4aa){const _0x4401cf=a0_0x291c8d;if(_0x5aa4aa['includes']('||'))return!![];const _0x5a587f=_0x5aa4aa['trim']();if(_0x5a587f['startsWith']('^')||_0x5a587f['startsWith']('~'))return![];const _0x544229=_0x5a587f[_0x4401cf(0x1e7)](/\s+/)[_0x4401cf(0x1d8)](_0x4e3f6a=>_0x4e3f6a[_0x4401cf(0x1d5)]>0x0);if(_0x544229['length']>0x1){const _0x5d15a6=/^(>=?|<=?|\^|~|[0-9])/;return _0x544229['every'](_0x1c05e0=>_0x5d15a6['test'](_0x1c05e0));}return![];}[a0_0x291c8d(0x1a9)](_0x249f7b){const _0x820637=a0_0x291c8d;if(_0x249f7b[_0x820637(0x1e3)]('||')){const _0x375e64=_0x249f7b[_0x820637(0x1e7)]('||')['map'](_0x9c7d4=>_0x9c7d4[_0x820637(0x1cc)]());return{'type':'or','ranges':_0x375e64['map'](_0x2e67ad=>this['_parseComplexRange'](_0x2e67ad))};}const _0x43bfdd=_0x249f7b['trim']()['split'](/\s+/)['filter'](_0x249c7b=>_0x249c7b[_0x820637(0x1d5)]>0x0);if(_0x43bfdd[_0x820637(0x1d5)]>0x1)return{'type':'and','ranges':_0x43bfdd['map'](_0x5cff55=>this['_parseVersionRange'](_0x5cff55))};return{'type':'simple','range':this[_0x820637(0x1dd)](_0x249f7b)};}[a0_0x291c8d(0x1fc)](_0x4f3946,_0x5ee3c5){const _0x30afbd=a0_0x291c8d;if(!_0x4f3946||!_0x5ee3c5)return![];return this[_0x30afbd(0x203)](_0x4f3946,_0x5ee3c5);}['_satisfiesComplexRange'](_0x53ff9c,_0x8c0248){const _0x5bdf71=a0_0x291c8d;if(!_0x53ff9c||!_0x8c0248)return![];switch(_0x53ff9c[_0x5bdf71(0x1e0)]){case'simple':return this[_0x5bdf71(0x1fc)](_0x53ff9c[_0x5bdf71(0x1b9)],_0x8c0248);case _0x5bdf71(0x1dc):return _0x53ff9c[_0x5bdf71(0x1b1)]['every'](_0x191aa4=>this[_0x5bdf71(0x1fc)](_0x191aa4,_0x8c0248));case'or':return _0x53ff9c['ranges'][_0x5bdf71(0x1f6)](_0x27cb65=>this[_0x5bdf71(0x1af)](_0x27cb65,_0x8c0248));default:return![];}}async[a0_0x291c8d(0x1ab)](_0x4f0ee0){const _0x4222b2=a0_0x291c8d,_0x2e5e45={},_0x3ecec0=Object[_0x4222b2(0x1ee)](_0x4f0ee0);for(let _0x508f18=0x0;_0x508f18<_0x3ecec0['length'];_0x508f18+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x22beaa=_0x3ecec0['slice'](_0x508f18,_0x508f18+RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']),_0x5c04dd=_0x22beaa[_0x4222b2(0x205)](async([_0x53bdfb,_0x1812ff])=>{const _0x2437a3=_0x4222b2;try{const _0x3e9a5e=await this[_0x2437a3(0x1a8)](_0x53bdfb,_0x1812ff);if(_0x3e9a5e){const _0x35c54d=_0x1812ff['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x53bdfb,'newVersion':''+_0x35c54d+_0x3e9a5e,'oldVersion':_0x1812ff};}return null;}catch(_0x21eeaa){return this['logger']?.[_0x2437a3(0x1a6)](_0x2437a3(0x1c3)+_0x53bdfb+':',_0x21eeaa['message']),null;}}),_0x36fbd7=await Promise['all'](_0x5c04dd);_0x36fbd7['forEach'](_0x2c246a=>{const _0x33354a=_0x4222b2;_0x2c246a&&(_0x2e5e45[_0x2c246a[_0x33354a(0x1c1)]]=_0x2c246a[_0x33354a(0x1ef)]);});}return _0x2e5e45;}async[a0_0x291c8d(0x1cf)](_0x20dfbb,_0x7899e6={}){const _0x35e850=a0_0x291c8d;try{this[_0x35e850(0x1b8)](_0x20dfbb);const {path:_0x581e13,mode:_0x59d635,includeDev:_0x531109}=_0x20dfbb,{projectDir:_0xee302b,agentId:_0x42b88f,directoryAccess:_0x41f0f7}=_0x7899e6,_0x17618d=this['_resolveAndValidatePath'](_0x581e13,_0x7899e6),_0x228a26=a0_0x685bd6[_0x35e850(0x1f9)](_0x17618d,'package.json');this[_0x35e850(0x20b)]?.[_0x35e850(0x1bb)](_0x35e850(0x1e2),{'mode':_0x59d635,'resolvedPath':_0x17618d,'includeDev':_0x531109,'agentId':_0x42b88f});const _0x3aa71b=[];_0x3aa71b[_0x35e850(0x1e9)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x17618d),_0x3aa71b['push'](_0x35e850(0x1aa)+_0x59d635);try{await a0_0x512462['access'](_0x228a26);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x228a26,'output':_0x3aa71b['join']('\x0a')};}_0x3aa71b[_0x35e850(0x1e9)]('\x0a📦\x20Reading\x20package.json...');const _0x3c61e8=await a0_0x512462['readFile'](_0x228a26,_0x35e850(0x1b0)),_0xfbd169=JSON['parse'](_0x3c61e8),_0xe8f8bd={..._0xfbd169['dependencies']};_0x531109&&_0xfbd169[_0x35e850(0x20e)]&&Object['assign'](_0xe8f8bd,_0xfbd169[_0x35e850(0x20e)]);if(Object['keys'](_0xe8f8bd)['length']===0x0)return{'success':!![],'mode':_0x59d635,'message':_0x35e850(0x1da),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x3aa71b[_0x35e850(0x1f9)]('\x0a')};if(Object['keys'](_0xe8f8bd)[_0x35e850(0x1d5)]>RESOLVER_CONFIG[_0x35e850(0x218)])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object['keys'](_0xe8f8bd)[_0x35e850(0x1d5)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x35e850(0x218)],'output':_0x3aa71b[_0x35e850(0x1f9)]('\x0a')};_0x3aa71b[_0x35e850(0x1e9)]('📊\x20Found\x20'+Object[_0x35e850(0x1ea)](_0xe8f8bd)[_0x35e850(0x1d5)]+'\x20dependencies\x20to\x20check'),_0x3aa71b[_0x35e850(0x1e9)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0xaec23e=await this['_checkDependencies'](_0xe8f8bd);_0x3aa71b[_0x35e850(0x1e9)]('\x0a✅\x20Registry\x20check\x20complete'),_0x3aa71b['push']('📈\x20Updates\x20available:\x20'+Object['keys'](_0xaec23e)[_0x35e850(0x1d5)]);if(Object['keys'](_0xaec23e)['length']>0x0){_0x3aa71b['push'](_0x35e850(0x1f4));for(const [_0x598aa5,_0x47efa4]of Object['entries'](_0xaec23e)){const _0xf5749c=_0xe8f8bd[_0x598aa5];_0x3aa71b['push'](_0x35e850(0x200)+_0x598aa5+':\x20'+_0xf5749c+_0x35e850(0x1c6)+_0x47efa4);}}else _0x3aa71b['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x59d635===_0x35e850(0x1b5))return Object['keys'](_0xaec23e)['length']>0x0&&_0x3aa71b[_0x35e850(0x1e9)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':'check','message':'Found\x20'+Object['keys'](_0xaec23e)['length']+_0x35e850(0x1f8),'statistics':{'totalDependencies':Object[_0x35e850(0x1ea)](_0xe8f8bd)['length'],'updatesAvailable':Object[_0x35e850(0x1ea)](_0xaec23e)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0xaec23e,'output':_0x3aa71b['join']('\x0a')};if((_0x59d635===_0x35e850(0x215)||_0x59d635==='auto')&&Object[_0x35e850(0x1ea)](_0xaec23e)['length']>0x0){_0x3aa71b['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x1f9873=await this[_0x35e850(0x1f7)](_0x228a26);_0x1f9873?_0x3aa71b[_0x35e850(0x1e9)](_0x35e850(0x1c5)+a0_0x685bd6['basename'](_0x1f9873)):_0x3aa71b['push'](_0x35e850(0x1b4));_0x3aa71b[_0x35e850(0x1e9)](_0x35e850(0x1fb));for(const [_0x3f21b4,_0x5f456e]of Object['entries'](_0xaec23e)){_0xfbd169[_0x35e850(0x1eb)]?.[_0x3f21b4]&&(_0xfbd169[_0x35e850(0x1eb)][_0x3f21b4]=_0x5f456e),_0xfbd169[_0x35e850(0x20e)]?.[_0x3f21b4]&&(_0xfbd169[_0x35e850(0x20e)][_0x3f21b4]=_0x5f456e);}await a0_0x512462[_0x35e850(0x1e4)](_0x228a26,JSON[_0x35e850(0x1a1)](_0xfbd169,null,0x2)+'\x0a'),_0x3aa71b[_0x35e850(0x1e9)]('✅\x20package.json\x20updated'),_0x3aa71b[_0x35e850(0x1e9)](_0x35e850(0x1ae));try{const {stdout:_0xff39d3,stderr:_0x47528e}=await exec(_0x35e850(0x1ad),{'cwd':_0x17618d,'timeout':RESOLVER_CONFIG[_0x35e850(0x1d9)],'maxBuffer':0x400*0x400*0xa});if(_0xff39d3){const _0x12fb3e=_0xff39d3['trim']()['split']('\x0a');_0x12fb3e['length']>0xa?_0x3aa71b[_0x35e850(0x1e9)]('\x20\x20'+_0x12fb3e[_0x35e850(0x208)](-0x5)['join'](_0x35e850(0x1fe))):_0x3aa71b[_0x35e850(0x1e9)]('\x20\x20'+_0xff39d3[_0x35e850(0x1cc)]());}_0x47528e&&!_0x47528e['includes'](_0x35e850(0x1f1))&&_0x3aa71b['push'](_0x35e850(0x1de)+_0x47528e[_0x35e850(0x1cc)]());_0x3aa71b[_0x35e850(0x1e9)]('✅\x20Installation\x20complete');try{const {stdout:_0x1e1d17}=await exec(_0x35e850(0x1e6),{'cwd':_0x17618d,'timeout':0x7530}),_0x328cd5=JSON['parse'](_0x1e1d17);if(_0x328cd5[_0x35e850(0x1eb)]){_0x3aa71b[_0x35e850(0x1e9)](_0x35e850(0x1b7));for(const _0x3bdda5 of Object[_0x35e850(0x1ea)](_0xaec23e)){_0x328cd5[_0x35e850(0x1eb)][_0x3bdda5]&&_0x3aa71b[_0x35e850(0x1e9)]('\x20\x20•\x20'+_0x3bdda5+'@'+_0x328cd5[_0x35e850(0x1eb)][_0x3bdda5][_0x35e850(0x1a5)]);}}}catch(_0x1ae4b4){this['logger']?.['debug'](_0x35e850(0x1e8),_0x1ae4b4[_0x35e850(0x219)]);}return{'success':!![],'mode':_0x59d635,'message':'Successfully\x20updated\x20'+Object['keys'](_0xaec23e)[_0x35e850(0x1d5)]+_0x35e850(0x211),'statistics':{'totalDependencies':Object['keys'](_0xe8f8bd)['length'],'updatesAvailable':Object['keys'](_0xaec23e)[_0x35e850(0x1d5)],'updatesApplied':Object[_0x35e850(0x1ea)](_0xaec23e)['length'],'errors':0x0},'updates':_0xaec23e,'backupCreated':_0x1f9873!==null,'backupPath':_0x1f9873,'output':_0x3aa71b[_0x35e850(0x1f9)]('\x0a')};}catch(_0x3d11ef){_0x3aa71b[_0x35e850(0x1e9)](_0x35e850(0x1a2)+_0x3d11ef['message']);if(_0x1f9873)try{await a0_0x512462['copyFile'](_0x1f9873,_0x228a26),_0x3aa71b['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x1fdad2){_0x3aa71b['push'](_0x35e850(0x1b3));}return{'success':![],'mode':_0x59d635,'error':_0x35e850(0x1f3)+_0x3d11ef['message'],'statistics':{'totalDependencies':Object[_0x35e850(0x1ea)](_0xe8f8bd)[_0x35e850(0x1d5)],'updatesAvailable':Object['keys'](_0xaec23e)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0xaec23e,'backupCreated':_0x1f9873!==null,'output':_0x3aa71b[_0x35e850(0x1f9)]('\x0a')};}}else{if(_0x59d635===_0x35e850(0x215)||_0x59d635==='auto')return _0x3aa71b['push'](_0x35e850(0x1d1)),{'success':!![],'mode':_0x59d635,'message':_0x35e850(0x1b6),'statistics':{'totalDependencies':Object['keys'](_0xe8f8bd)[_0x35e850(0x1d5)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x3aa71b['join']('\x0a')};}}catch(_0x3524f0){return this['logger']?.['error']('Dependency\x20resolver\x20error:',_0x3524f0),{'success':![],'error':_0x3524f0[_0x35e850(0x219)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3524f0[_0x35e850(0x219)]};}}}export default DependencyResolverTool;function a0_0x200f(){const _0x103959=['C3rYAw5NAwz5','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','zgLZDc10ywDZ','rMfPBgvKihrVignYzwf0zsbIywnRDxa','DMvYC2LVBG','zxjYB3i','AxnbyNnVBhv0zq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','x3bHCNnLq29TCgXLEfjHBMDL','tw9KztOG','x2nOzwnRrgvWzw5Kzw5JAwvZ','yNvPBgq','BNbTigLUC3rHBgW','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','DxrMltG','CMfUz2vZ','ndu1mJzAq2zszLC','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','y2HLy2S','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','x3zHBgLKyxrLugfYyw1LDgvYCW','CMfUz2u','igzVCIa','Aw5MBW','Cgf0Aa','CgfYC2vqyxjHBwv0zxjZ','ChjLCMvSzwfZzq','Ec1Yyw5Nzq','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','CgTN','revgqvvmvf9nt0rf','rxjYB3iGy2HLy2TPBMCG','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','4PYfiejHy2T1CcbJCMvHDgvKoIa','iokgKIa','Cgf0y2G','x2zLDgnOugfJA2fNzuLUzM8','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','lIbnDxn0igjLig9UzsbVzJOG','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','DhjPBq','BwLUB3i','zxHLyW','zxHLy3v0zq','DgvZDa','cUkCQcboBYb1CgrHDgvZig5LzwrLza','Cgf0AcbTDxn0igjLigeGC3rYAw5N','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','mZm2odyWs3bIAM5L','BgvUz3rO','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','zMLSDgvY','tLbnx0nptu1btKrFveLnru9vva','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','ndm3mZG5mfrtExvREa','yw5K','x3bHCNnLvMvYC2LVBLjHBMDL','4PQG77Ipica','ywjVCNq','DhLWzq','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','Aw5JBhvKzxm','D3jPDgvgAwXL','x2nVBxbHCMvwzxjZAw9UCW','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','C3bSAxq','BNbTigXZigzHAwXLzdO','ChvZAa','A2v5CW','zgvWzw5Kzw5JAwvZ','BM9YBwfSAxPL','yM9VBgvHBG','zw50CMLLCW','BMv3vMvYC2LVBG','mtGYnJy4mKrPANbsAa','BNbTifDbuK4','ndiWndK3BfbpBhLL','BNbTigLUC3rHBgWGzMfPBgvKoIa','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Bw9Kzq','C29Tzq','x2nYzwf0zujHy2T1Ca','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','AM9PBG','C3rHCNrZv2L0Aa','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','x3nHDgLZzMLLC1jHBMDL','vKfmsurFtu9ervm','cIaG','D29YA2LUz0rPCMvJDg9YEq','icdIGkiG','ANnVBG','Aw5JBhvKzurLDG','x2LZvxbKyxrLqxzHAwXHyMXL','BwfQB3i','BwfW','C3rYAw5N','x2nVBxbHCMvqCMvYzwXLyxnL','C2XPy2u','C3rHDhvZvgv4Da','C3rHDhvZ','Bg9Nz2vY','uMv0CNKG','B3bLCMf0B3i','zgv2rgvWzw5Kzw5JAwvZ','D2fYBG','x3bHCNnLvMvYC2LVBG','ihbHy2THz2uOCYK','y3DK','x2LZq29TCgXLEfjHBMDL','mtaWnJG5mdvTvLf0Bwm','zML4','Dg9mB3DLCKnHC2u','uKvuuLLFqvruru1qvfm','tufyx0rfuevorevoq0LfuW','BwvZC2fNzq','lMjHy2T1Cc5QC29U','mtaXmtq0muX3A09tAW','yxv0BW','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','Dhj1zq','sw52ywXPzcbTB2rLoIa'];a0_0x200f=function(){return _0x103959;};return a0_0x200f();}
1
+ const a0_0x11db4f=a0_0x4746;(function(_0x22fba7,_0x2dcb04){const _0x3cee1a=a0_0x4746,_0x323196=_0x22fba7();while(!![]){try{const _0x5adfc9=parseInt(_0x3cee1a(0x1b1))/0x1+parseInt(_0x3cee1a(0x1c2))/0x2+parseInt(_0x3cee1a(0x1de))/0x3*(-parseInt(_0x3cee1a(0x1b7))/0x4)+-parseInt(_0x3cee1a(0x1b3))/0x5*(-parseInt(_0x3cee1a(0x193))/0x6)+-parseInt(_0x3cee1a(0x1a7))/0x7*(-parseInt(_0x3cee1a(0x1ee))/0x8)+-parseInt(_0x3cee1a(0x1c5))/0x9+parseInt(_0x3cee1a(0x1f1))/0xa;if(_0x5adfc9===_0x2dcb04)break;else _0x323196['push'](_0x323196['shift']());}catch(_0x1b6c42){_0x323196['push'](_0x323196['shift']());}}}(a0_0x2026,0x4bc5f));import{promises as a0_0x2afda5}from'fs';import a0_0x1b8ed0 from'path';function a0_0x4746(_0x2720e2,_0x65d315){_0x2720e2=_0x2720e2-0x188;const _0x20269c=a0_0x2026();let _0x474650=_0x20269c[_0x2720e2];if(a0_0x4746['sKoTMn']===undefined){var _0x21fc85=function(_0x472b68){const _0x2c6d8b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2afda5='',_0x1b8ed0='';for(let _0x5c3a2f=0x0,_0x3dd1c2,_0x367aa5,_0x2ac30e=0x0;_0x367aa5=_0x472b68['charAt'](_0x2ac30e++);~_0x367aa5&&(_0x3dd1c2=_0x5c3a2f%0x4?_0x3dd1c2*0x40+_0x367aa5:_0x367aa5,_0x5c3a2f++%0x4)?_0x2afda5+=String['fromCharCode'](0xff&_0x3dd1c2>>(-0x2*_0x5c3a2f&0x6)):0x0){_0x367aa5=_0x2c6d8b['indexOf'](_0x367aa5);}for(let _0x45bb56=0x0,_0x12f228=_0x2afda5['length'];_0x45bb56<_0x12f228;_0x45bb56++){_0x1b8ed0+='%'+('00'+_0x2afda5['charCodeAt'](_0x45bb56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b8ed0);};a0_0x4746['cxTzug']=_0x21fc85,a0_0x4746['EXmljB']={},a0_0x4746['sKoTMn']=!![];}const _0x3e2bbd=_0x20269c[0x0],_0x1712f3=_0x2720e2+_0x3e2bbd,_0x1ddc95=a0_0x4746['EXmljB'][_0x1712f3];return!_0x1ddc95?(_0x474650=a0_0x4746['cxTzug'](_0x474650),a0_0x4746['EXmljB'][_0x1712f3]=_0x474650):_0x474650=_0x1ddc95,_0x474650;}import{exec as a0_0x5c3a2f}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x3dd1c2 from'../utilities/tagParser.js';const exec=promisify(a0_0x5c3a2f),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x11db4f(0x1ad),'VALID_MODES':[a0_0x11db4f(0x1ad),'fix',a0_0x11db4f(0x1c4)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x11db4f(0x1fa),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x11db4f(0x1c6)};function a0_0x2026(){const _0x126691=['zxHLyW','x2nVBxbHCMvwzxjZAw9UCW','icdIGkiG','Cgf0Aa','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','q1jfqvrfx0jbq0Tvufm','ugfJA2fNzsbUB3qGzM91BMq6ia','yNvPBgq','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','lIbnDxn0igjLig9UzsbVzJOG','revgqvvmvf9nt0rf','ndLABujxzgK','x3nHDgLZzMLLC1jHBMDL','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','BgvUz3rO','CgfJA2fNzs5QC29U','DhjPBq','y2HLy2S','Ec1Yyw5Nzq','zMLSDgvY','x2nYzwf0zujHy2T1Ca','oteYoxrWyxjrCG','DhLWzq','nxjYtgXmta','CMfUz2vZ','BNbTifDbuK4','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','neriwfDorG','ywjVCNq','C3bSAxq','CgfYC2u','rxjYB3iGy2HLy2TPBMCG','tufyx0rfuevorevoq0LfuW','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','zxjYB3i','z2v0rgvZy3jPChrPB24','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','BwvZC2fNzq','mZqYmJq4uxjJzg5g','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','yxv0BW','mZC2odyZm2XjqNLgtW','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Bw9Kzq','BwLUB3i','CgTN','x2zLDgnOugfJA2fNzuLUzM8','A2v5CW','zxHLy3v0zq','igzVCIa','zxzLCNK','uKvuuLLFqvruru1qvfm','ANnVBG','iokgKIa','ChvZAa','4PQG77Ipica','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','BwfW','ywXS','4PYfiejHy2T1CcbJCMvHDgvKoIa','ChjLCMvSzwfZzq','y3DK','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','mte1mZuZu2vlz1bo','DxrMltG','ChjLzML4','x3bHCNnLvMvYC2LVBG','Aw5MBW','tLbnx0nptu1btKrFveLnru9vva','DMvYC2LVBG','yw5K','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','Bg9Nz2vY','C3rHCNrZv2L0Aa','yMfZzw5HBwu','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','B3bLCMf0B3i','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','mtyWmtiWqwnXvunI','CMvHzezPBgu','x3bHCNnLqM9VBgvHBG','ndiZodi5mhrys0zpvq','Aw5JBhvKzurLDG','Cgf0y2G','DgvZDa','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQvvnbr0u6kIOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSkicaGicjWyxrOiJOGiI4VBxKTChjVAMvJDciScIaGicaIBw9Kzsi6icjJAgvJAYiScIaGicaIAw5JBhvKzurLDIi6ihrYDwukicb9cN0kygbGcGOQkLbHCMfTzxrLCNm6kIOklsaQkNbHDgGQkIaOC3rYAw5NlcbVChrPB25HBcK6ifbHDgGGDg8GChjVAMvJDcbKAxjLy3rVCNKGD2L0AcbWywnRywDLlMPZB24UierLzMf1Bhq6iciUiGOTicOQBw9KzsOQicHZDhjPBMCSig9WDgLVBMfSktOGt3bLCMf0Aw9Uig1VzguUie9WDgLVBNm6cIaGlsaIy2HLy2SIic0Gt25SEsbJAgvJAYbMB3iGDxbKyxrLCYaOzgvMyxvSDcKkicaTicjMAxGIic0GvxbKyxrLihbHy2THz2uUANnVBIbHBMqGCNvUig5WBsbPBNn0ywXScIaGlsaIyxv0BYiGlsbbDxrVBwf0AwnHBgX5igzPEcbHBgWGy29UzMXPy3rZcI0GkIPPBMnSDwrLrgv2kIOGkgjVB2XLyw4Sig9WDgLVBMfSktOGsw5JBhvKzsbKzxzezxbLBMrLBMnPzxmUierLzMf1Bhq6ihrYDwukcIOQv2HHDcbjDcbeB2vZoIOQcI0Gq2HLy2TZig5WBsbYzwDPC3rYEsbMB3iGBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmklsbszxnWzwn0CYbZzw12zxiGCMfUz2vZicHElcb+lca+psWGzxrJlIKklsbdCMvHDgvZigf1Dg9TyxrPyYbIywnRDxbZigjLzM9YzsbTB2rPzMLJyxrPB25ZcI0GuNvUCYbUCg0GAw5ZDgfSBcbHzNrLCIb1CgrHDgvZicHPBIbMAxGVyxv0BYbTB2rLkqOTifbYB3zPzgvZigrLDgfPBgvKihvWzgf0zsbYzxbVCNqkcIOQrxHHBxbSzxm6kIOkcJeUienOzwnRigzVCIb1CgrHDgvZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEYaIBw9Kzsi6icjJAgvJAYiGFqP9cMbGyaOkmI4GrML4ig91DgrHDgvKigrLCgvUzgvUy2LLCZOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWGiM1VzguIoIaIzML4iIb9cN0kygbGcGOZlIbbDxrVlwzPEcb3AxrOigrLDKrLCgvUzgvUy2LLCZOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSGiM1VzguIoIaIyxv0BYiSicjPBMnSDwrLrgv2iJOGDhj1zsb9cN0kygbGcGOQkK5VDgvZoIOQcI0GqwX3yxLZignYzwf0zxmGyMfJA3vWicGUyMfJA3vWlMPZB24PigjLzM9YzsbTB2rPzMLJyxrPB25ZcI0GtMv0D29YAYbYzxf1zxn0CYbOyxzLihrPBwvVDxqGyw5KihjLDhj5igXVz2LJcI0GBNbTigLUC3rHBgWGCNvUCYb3AxrOihrPBwvVDxqGChjVDgvJDgLVBIaOnsbTAw51DgvZig1HEcKklsbtDxbWB3j0CYbJB21WBgv4ihnLBxzLCIbYyw5NzxmGkhX8lcaMjIWGzxrJlIK','x2LZvxbKyxrLqxzHAwXHyMXL','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','D3jPDgvgAwXL','BwfQB3i','lMjHy2T1Cc5QC29U','zw50CMLLCW','rM91BMqG','C3rYAw5NAwz5','rMfPBgvKihrVignYzwf0zsbIywnRDxa','Cgf0AcbTDxn0igjLigeGC3rYAw5N','B2jQzwn0','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','Dg9mB3DLCKnHC2u','AM9PBG','tufyx0nptKnvuLjftLrFq0Hfq0Tt','sw52ywXPzcbTB2rLoIa','zgLZDc10ywDZ','C2LNBMfS','C2LTCgXL','Aw5JBhvKzxm','x3bHCNnLvMvYC2LVBLjHBMDL','C2XPy2u','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','mtqWmJa4A1fkt3bU','zgvIDwC','zgvWzw5Kzw5JEs1YzxnVBhzLCG','zgv2rgvWzw5Kzw5JAwvZ','sfruuca','C3rYAw5N','BMv3vMvYC2LVBG','BM9YBwfSAxPL'];a0_0x2026=function(){return _0x126691;};return a0_0x2026();}export class DependencyResolverTool extends BaseTool{constructor(_0x367aa5={},_0x2ac30e=null){const _0x3f16e6=a0_0x11db4f;super(_0x367aa5,_0x2ac30e),this['id']=_0x3f16e6(0x195);}[a0_0x11db4f(0x1bf)](){const _0x52cb4b=a0_0x11db4f;return _0x52cb4b(0x1f5);}['parseParameters'](_0x45bb56){const _0x93c33f=a0_0x11db4f;if(typeof _0x45bb56===_0x93c33f(0x200)&&_0x45bb56!==null)return{'path':_0x45bb56[_0x93c33f(0x19e)]||'.','mode':_0x45bb56[_0x93c33f(0x1ca)]||RESOLVER_CONFIG[_0x93c33f(0x1a6)],'includeDev':_0x45bb56['includeDev']!==undefined?_0x45bb56[_0x93c33f(0x1f2)]:!![]};if(typeof _0x45bb56===_0x93c33f(0x198)){const _0x12f228=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0xa53f2=_0x12f228[_0x93c33f(0x19b)](_0x45bb56);if(_0xa53f2){const _0x6af987=_0xa53f2[0x1],_0x3e933b=_0xa53f2[0x2],_0x14dba7=/path=["']([^"']*)["']/i[_0x93c33f(0x19b)](_0x6af987),_0x540523=/mode=["']([^"']*)["']/i[_0x93c33f(0x19b)](_0x6af987),_0x2744df=/include-dev=["']([^"']*)["']/i['exec'](_0x6af987),_0x1aee81=/<path>(.*?)<\/path>/i,_0x5aab6=_0x1aee81['exec'](_0x3e933b),_0x427011=/<mode>(.*?)<\/mode>/i,_0x2ff51d=_0x427011['exec'](_0x3e933b),_0x597803=/<include-dev>(.*?)<\/include-dev>/i,_0x2f8b39=_0x597803[_0x93c33f(0x19b)](_0x3e933b),_0x1966d7=(_0x5aab6?_0x5aab6[0x1]['trim']():null)||(_0x14dba7?_0x14dba7[0x1]:'.'),_0x28ef4b=(_0x2ff51d?_0x2ff51d[0x1]['trim']():null)||(_0x540523?_0x540523[0x1]:RESOLVER_CONFIG[_0x93c33f(0x1a6)]),_0x3175f6=(_0x2f8b39?_0x2f8b39[0x1][_0x93c33f(0x1ac)]():null)||(_0x2744df?_0x2744df[0x1]:'true');return{'path':_0x1966d7,'mode':_0x28ef4b,'includeDev':this[_0x93c33f(0x1f0)](_0x3175f6,!![])};}const _0x3b73fd=/\[resolve\s+([^\]]*)\]/i,_0x2d7816=_0x3b73fd['exec'](_0x45bb56);if(_0x2d7816){const _0x35ee01=_0x2d7816[0x1],_0xbeb2f3=/path=["']([^"']*)["']/i['exec'](_0x35ee01),_0x41f4b6=/mode=["']([^"']*)["']/i['exec'](_0x35ee01),_0x19162c=/include-dev=["']([^"']*)["']/i['exec'](_0x35ee01);return{'path':_0xbeb2f3?_0xbeb2f3[0x1]:'.','mode':_0x41f4b6?_0x41f4b6[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0x19162c?_0x19162c[0x1]:'true',!![])};}throw new Error(_0x93c33f(0x1ea));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0x11db4f(0x1f0)](_0x1cc409,defaultValue=![]){const _0x35ff26=a0_0x11db4f;if(_0x1cc409===undefined||_0x1cc409===null)return defaultValue;if(typeof _0x1cc409==='boolean')return _0x1cc409;if(typeof _0x1cc409===_0x35ff26(0x198))return _0x1cc409['toLowerCase']()==='true'||_0x1cc409==='1';return defaultValue;}['_validateParameters'](_0xbaa450){const _0x4dfe51=a0_0x11db4f;if(!_0xbaa450||typeof _0xbaa450!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0xbaa450['path']&&typeof _0xbaa450[_0x4dfe51(0x19e)]!==_0x4dfe51(0x198))throw new Error(_0x4dfe51(0x1ff));if(_0xbaa450['mode']&&!RESOLVER_CONFIG['VALID_MODES'][_0x4dfe51(0x18f)](_0xbaa450[_0x4dfe51(0x1ca)]))throw new Error(_0x4dfe51(0x18b)+_0xbaa450[_0x4dfe51(0x1ca)]+_0x4dfe51(0x1a5)+RESOLVER_CONFIG['VALID_MODES'][_0x4dfe51(0x189)](',\x20'));if(_0xbaa450['includeDev']!==undefined&&typeof _0xbaa450[_0x4dfe51(0x1f2)]!=='boolean')throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}['_resolveAndValidatePath'](_0xf67c5,_0x48fe60){const _0x131cfc=a0_0x11db4f,{projectDir:_0x423bda,directoryAccess:_0x2036f6}=_0x48fe60;let _0x31ea95=_0x423bda||process[_0x131cfc(0x1dc)]();_0x2036f6&&_0x2036f6['workingDirectory']&&(_0x31ea95=_0x2036f6['workingDirectory']);const _0x33763e=a0_0x1b8ed0['isAbsolute'](_0xf67c5)?a0_0x1b8ed0[_0x131cfc(0x19a)](_0xf67c5):a0_0x1b8ed0['normalize'](a0_0x1b8ed0[_0x131cfc(0x189)](_0x31ea95,_0xf67c5)),_0x36e827=a0_0x1b8ed0['normalize'](_0x31ea95);if(!_0x33763e['startsWith'](_0x36e827))throw new Error(_0x131cfc(0x1d7)+_0xf67c5+_0x131cfc(0x201));return _0x33763e;}async[a0_0x11db4f(0x1b0)](_0x664803){const _0xa6cea5=a0_0x11db4f;if(!RESOLVER_CONFIG[_0xa6cea5(0x1a1)])return null;try{const _0x5e9dd4=_0x664803+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x2afda5['copyFile'](_0x664803,_0x5e9dd4),this['logger']?.[_0xa6cea5(0x1e2)]('Created\x20backup',{'backupPath':_0x5e9dd4}),_0x5e9dd4;}catch(_0x5e8602){return this[_0xa6cea5(0x1e7)]?.['warn'](_0xa6cea5(0x1fe),{'error':_0x5e8602['message']}),null;}}async[a0_0x11db4f(0x1cd)](_0x3faabe){const _0x95961f=a0_0x11db4f,_0x476ea2=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x3faabe);for(let _0x589b2c=0x1;_0x589b2c<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x589b2c++){try{const _0x3911d6=new AbortController(),_0xf70950=setTimeout(()=>_0x3911d6[_0x95961f(0x1b8)](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x10d2d1=await fetch(_0x476ea2,{'signal':_0x3911d6[_0x95961f(0x18d)]});clearTimeout(_0xf70950);if(!_0x10d2d1['ok']){if(_0x10d2d1['status']===0x194)return this['logger']?.['warn'](_0x95961f(0x1a2)+_0x3faabe),null;throw new Error(_0x95961f(0x197)+_0x10d2d1['status']+':\x20'+_0x10d2d1['statusText']);}const _0x29391f=await _0x10d2d1[_0x95961f(0x1d3)]();if(!_0x29391f||typeof _0x29391f!==_0x95961f(0x200)||!_0x29391f[_0x95961f(0x18c)])throw new Error(_0x95961f(0x19f));return _0x29391f;}catch(_0x1ffdeb){if(_0x589b2c<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this['logger']?.[_0x95961f(0x194)]('Retry\x20'+_0x589b2c+'/'+RESOLVER_CONFIG[_0x95961f(0x1d2)]+_0x95961f(0x1d0)+_0x3faabe),await new Promise(_0x288bd2=>setTimeout(_0x288bd2,RESOLVER_CONFIG['RETRY_DELAY']*_0x589b2c));else return this['logger']?.[_0x95961f(0x1be)]('Failed\x20to\x20fetch\x20'+_0x3faabe+':',_0x1ffdeb['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x38c72f,_0x7ba4b2){const _0x2ede99=a0_0x11db4f,_0x566c7c=await this[_0x2ede99(0x1cd)](_0x38c72f);if(!_0x566c7c)return null;const _0x5440cc=_0x566c7c['dist-tags']?.['latest'];if(!_0x5440cc)return null;const _0x597c57=this['_parseVersion'](_0x5440cc);if(!_0x597c57)return null;if(this['_isComplexRange'](_0x7ba4b2)){const _0x5414e3=this['_parseComplexRange'](_0x7ba4b2),_0x495e3e=this['_satisfiesComplexRange'](_0x5414e3,_0x597c57);if(_0x495e3e)return _0x5440cc;return null;}const _0x5869f3=this['_parseVersionRange'](_0x7ba4b2);if(!_0x5869f3)return null;const _0x3d4e54=this['_isUpdateAvailable'](_0x5869f3,_0x597c57);if(_0x3d4e54)return _0x5869f3[_0x2ede99(0x1e0)]+_0x5440cc;return null;}[a0_0x11db4f(0x1e1)](_0x5b54c6){const _0x2a5fed=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x46f828=_0x2a5fed['exec'](_0x5b54c6);if(!_0x46f828){const _0x5253f8=_0x5b54c6['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5253f8)return{'major':parseInt(_0x5253f8[0x1],0xa),'minor':parseInt(_0x5253f8[0x2],0xa),'patch':parseInt(_0x5253f8[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x46f828[0x1],0xa),'minor':parseInt(_0x46f828[0x2],0xa),'patch':parseInt(_0x46f828[0x3],0xa),'prerelease':_0x46f828[0x4]?_0x46f828[0x4]['split']('.'):null,'build':_0x46f828[0x5]||null};}[a0_0x11db4f(0x19c)](_0x97fde8,_0x566a30){const _0x35538f=a0_0x11db4f;if(_0x97fde8[_0x35538f(0x1f9)]!==_0x566a30['major'])return _0x97fde8[_0x35538f(0x1f9)]-_0x566a30['major'];if(_0x97fde8['minor']!==_0x566a30['minor'])return _0x97fde8[_0x35538f(0x1cb)]-_0x566a30[_0x35538f(0x1cb)];if(_0x97fde8['patch']!==_0x566a30['patch'])return _0x97fde8['patch']-_0x566a30[_0x35538f(0x1f3)];if(!_0x97fde8['prerelease']&&!_0x566a30[_0x35538f(0x1db)])return 0x0;if(!_0x97fde8[_0x35538f(0x1db)]&&_0x566a30[_0x35538f(0x1db)])return 0x1;if(_0x97fde8['prerelease']&&!_0x566a30[_0x35538f(0x1db)])return-0x1;return this['_comparePrerelease'](_0x97fde8['prerelease'],_0x566a30[_0x35538f(0x1db)]);}['_comparePrerelease'](_0x57e407,_0x1fbba0){const _0x58921a=a0_0x11db4f,_0x120ef0=Math['max'](_0x57e407['length'],_0x1fbba0[_0x58921a(0x1aa)]);for(let _0x268490=0x0;_0x268490<_0x120ef0;_0x268490++){if(_0x268490>=_0x57e407['length'])return-0x1;if(_0x268490>=_0x1fbba0[_0x58921a(0x1aa)])return 0x1;const _0x202662=_0x57e407[_0x268490],_0x296d67=_0x1fbba0[_0x268490],_0x418d16=/^\d+$/['test'](_0x202662)?parseInt(_0x202662,0xa):null,_0x554e62=/^\d+$/['test'](_0x296d67)?parseInt(_0x296d67,0xa):null;if(_0x418d16!==null&&_0x554e62!==null){if(_0x418d16!==_0x554e62)return _0x418d16-_0x554e62;continue;}if(_0x418d16!==null&&_0x554e62===null)return-0x1;if(_0x418d16===null&&_0x554e62!==null)return 0x1;if(_0x202662<_0x296d67)return-0x1;if(_0x202662>_0x296d67)return 0x1;}return 0x0;}['_parseVersionRange'](_0x324767){const _0x2d5c5a=a0_0x11db4f,_0x54a4ee=_0x324767[_0x2d5c5a(0x1ac)](),_0x2f91d0=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x7d2d6f=_0x2f91d0[_0x2d5c5a(0x19b)](_0x54a4ee);if(_0x7d2d6f){const _0x40bef4=_0x7d2d6f[0x1],_0x493fc8=_0x7d2d6f[0x3],_0x1c7196=_0x7d2d6f[0x5],_0x4ef5fc=_0x40bef4==='*'||_0x40bef4['toLowerCase']()==='x'||_0x493fc8===undefined||_0x493fc8==='*'||_0x493fc8['toLowerCase']()==='x'||_0x1c7196===undefined||_0x1c7196==='*'||_0x1c7196[_0x2d5c5a(0x188)]()==='x';if(_0x4ef5fc)return{'prefix':'','operator':'x-range','major':_0x40bef4==='*'||_0x40bef4[_0x2d5c5a(0x188)]()==='x'?null:parseInt(_0x40bef4,0xa),'minor':!_0x493fc8||_0x493fc8==='*'||_0x493fc8[_0x2d5c5a(0x188)]()==='x'?null:parseInt(_0x493fc8,0xa),'patch':!_0x1c7196||_0x1c7196==='*'||_0x1c7196['toLowerCase']()==='x'?null:parseInt(_0x1c7196,0xa),'original':_0x324767};}let _0x534782='',_0x5e33b6=_0x54a4ee,_0x10699b='=';if(_0x54a4ee[_0x2d5c5a(0x1e8)]('^'))_0x534782='^',_0x5e33b6=_0x54a4ee['slice'](0x1),_0x10699b='^';else{if(_0x54a4ee['startsWith']('~'))_0x534782='~',_0x5e33b6=_0x54a4ee['slice'](0x1),_0x10699b='~';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('>='))_0x534782='>=',_0x5e33b6=_0x54a4ee['slice'](0x2)['trim'](),_0x10699b='>=';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('>'))_0x534782='>',_0x5e33b6=_0x54a4ee['slice'](0x1)[_0x2d5c5a(0x1ac)](),_0x10699b='>';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('<='))_0x534782='<=',_0x5e33b6=_0x54a4ee[_0x2d5c5a(0x191)](0x2)['trim'](),_0x10699b='<=';else _0x54a4ee[_0x2d5c5a(0x1e8)]('<')&&(_0x534782='<',_0x5e33b6=_0x54a4ee[_0x2d5c5a(0x191)](0x1)[_0x2d5c5a(0x1ac)](),_0x10699b='<');}}}}const _0x4ce3e2=this['_parseVersion'](_0x5e33b6);if(!_0x4ce3e2)return null;return{'prefix':_0x534782,'operator':_0x10699b,'major':_0x4ce3e2[_0x2d5c5a(0x1f9)],'minor':_0x4ce3e2[_0x2d5c5a(0x1cb)],'patch':_0x4ce3e2['patch'],'prerelease':_0x4ce3e2['prerelease'],'build':_0x4ce3e2[_0x2d5c5a(0x1a3)],'original':_0x324767};}[a0_0x11db4f(0x1f6)](_0x2dc895,_0x5ab725){const _0x44fe0a=a0_0x11db4f,_0x4cae4a={'major':_0x2dc895['major'],'minor':_0x2dc895['minor'],'patch':_0x2dc895['patch'],'prerelease':_0x2dc895['prerelease']||null,'build':_0x2dc895[_0x44fe0a(0x1a3)]||null};switch(_0x2dc895['operator']){case'^':return this['_isCaretUpdateAvailable'](_0x4cae4a,_0x5ab725);case'~':return this['_isTildeUpdateAvailable'](_0x4cae4a,_0x5ab725);case'>=':case'>':return this[_0x44fe0a(0x1c0)](_0x4cae4a,_0x5ab725);case'<':case'<=':return this[_0x44fe0a(0x1b6)](_0x2dc895,_0x5ab725);case _0x44fe0a(0x1ae):return this['_isXRangeUpdateAvailable'](_0x2dc895,_0x5ab725);case'=':default:return this['_isExactUpdateAvailable'](_0x4cae4a,_0x5ab725);}}['_isCaretUpdateAvailable'](_0x1d542d,_0x4f0a5a){const _0x1edbd7=a0_0x11db4f,_0x1bfe19=this['_compareVersions'](_0x4f0a5a,_0x1d542d);if(_0x1bfe19<=0x0)return![];if(_0x1d542d['major']===0x0&&_0x1d542d['minor']===0x0)return _0x4f0a5a['major']===0x0&&_0x4f0a5a[_0x1edbd7(0x1cb)]===0x0;if(_0x1d542d['major']===0x0)return _0x4f0a5a['major']===0x0&&_0x4f0a5a[_0x1edbd7(0x1cb)]===_0x1d542d[_0x1edbd7(0x1cb)];return _0x4f0a5a['major']===_0x1d542d[_0x1edbd7(0x1f9)];}['_isTildeUpdateAvailable'](_0x140b81,_0x3d47bb){const _0x254878=a0_0x11db4f,_0x12ade5=this[_0x254878(0x19c)](_0x3d47bb,_0x140b81);if(_0x12ade5<=0x0)return![];return _0x3d47bb['major']===_0x140b81['major']&&_0x3d47bb['minor']===_0x140b81[_0x254878(0x1cb)];}['_isSimpleUpdateAvailable'](_0x2d8075,_0x2b9ef7){const _0x214653=this['_compareVersions'](_0x2b9ef7,_0x2d8075);return _0x214653>0x0;}[a0_0x11db4f(0x1c7)](_0x80b92e,_0x3c0951){const _0x552558=a0_0x11db4f;return this[_0x552558(0x1c0)](_0x80b92e,_0x3c0951);}['_isLessThanUpdateAvailable'](_0x581142,_0x2b1fcc){const _0x30b0e4=a0_0x11db4f,_0x457ae4=this[_0x30b0e4(0x19c)](_0x2b1fcc,_0x581142);if(_0x581142['operator']==='<')return _0x457ae4<0x0;else{if(_0x581142[_0x30b0e4(0x1ec)]==='<=')return _0x457ae4<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x253236,_0x52f8c4){const _0x580061=a0_0x11db4f;if(_0x253236[_0x580061(0x1f9)]!==null&&_0x52f8c4['major']!==_0x253236['major'])return![];if(_0x253236['minor']!==null&&_0x52f8c4[_0x580061(0x1cb)]!==_0x253236['minor'])return![];if(_0x253236['patch']!==null&&_0x52f8c4[_0x580061(0x1f3)]!==_0x253236['patch'])return![];return!![];}['_isComplexRange'](_0x2afe4c){const _0x219f9c=a0_0x11db4f;if(_0x2afe4c['includes']('||'))return!![];const _0x3a1081=_0x2afe4c['trim']();if(_0x3a1081['startsWith']('^')||_0x3a1081['startsWith']('~'))return![];const _0x11c069=_0x3a1081['split'](/\s+/)[_0x219f9c(0x1af)](_0x57f017=>_0x57f017['length']>0x0);if(_0x11c069['length']>0x1){const _0x4b47ac=/^(>=?|<=?|\^|~|[0-9])/;return _0x11c069['every'](_0x390ccd=>_0x4b47ac[_0x219f9c(0x1f4)](_0x390ccd));}return![];}['_parseComplexRange'](_0x27d7b3){const _0x198403=a0_0x11db4f;if(_0x27d7b3[_0x198403(0x18f)]('||')){const _0x308156=_0x27d7b3[_0x198403(0x1b9)]('||')[_0x198403(0x1d8)](_0x1a9555=>_0x1a9555[_0x198403(0x1ac)]());return{'type':'or','ranges':_0x308156[_0x198403(0x1d8)](_0xad4393=>this['_parseComplexRange'](_0xad4393))};}const _0x569bac=_0x27d7b3[_0x198403(0x1ac)]()['split'](/\s+/)['filter'](_0x4f5259=>_0x4f5259['length']>0x0);if(_0x569bac['length']>0x1)return{'type':_0x198403(0x1e5),'ranges':_0x569bac['map'](_0x30a664=>this[_0x198403(0x190)](_0x30a664))};return{'type':_0x198403(0x18e),'range':this[_0x198403(0x190)](_0x27d7b3)};}[a0_0x11db4f(0x1a8)](_0x5defdd,_0x5412f7){if(!_0x5defdd||!_0x5412f7)return![];return this['_isUpdateAvailable'](_0x5defdd,_0x5412f7);}['_satisfiesComplexRange'](_0x51da84,_0x4263d2){const _0x25f0eb=a0_0x11db4f;if(!_0x51da84||!_0x4263d2)return![];switch(_0x51da84[_0x25f0eb(0x1b2)]){case _0x25f0eb(0x18e):return this['_satisfiesRange'](_0x51da84['range'],_0x4263d2);case _0x25f0eb(0x1e5):return _0x51da84[_0x25f0eb(0x1b4)][_0x25f0eb(0x1d1)](_0x3cbecc=>this['_satisfiesRange'](_0x3cbecc,_0x4263d2));case'or':return _0x51da84[_0x25f0eb(0x1b4)]['some'](_0xcb597d=>this['_satisfiesComplexRange'](_0xcb597d,_0x4263d2));default:return![];}}async['_checkDependencies'](_0x4ef362){const _0x206775=a0_0x11db4f,_0xb504e5={},_0x9f574c=Object[_0x206775(0x1fb)](_0x4ef362);for(let _0x454c8a=0x0;_0x454c8a<_0x9f574c['length'];_0x454c8a+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x4b1a5f=_0x9f574c['slice'](_0x454c8a,_0x454c8a+RESOLVER_CONFIG[_0x206775(0x18a)]),_0x51a77a=_0x4b1a5f[_0x206775(0x1d8)](async([_0x4a87b8,_0x57d1a2])=>{const _0x2203be=_0x206775;try{const _0x2280e9=await this[_0x2203be(0x1a0)](_0x4a87b8,_0x57d1a2);if(_0x2280e9){const _0x5a5bb4=_0x57d1a2['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x4a87b8,'newVersion':''+_0x5a5bb4+_0x2280e9,'oldVersion':_0x57d1a2};}return null;}catch(_0x2aca26){return this[_0x2203be(0x1e7)]?.['error'](_0x2203be(0x1bb)+_0x4a87b8+':',_0x2aca26['message']),null;}}),_0xa3f03f=await Promise[_0x206775(0x1d9)](_0x51a77a);_0xa3f03f['forEach'](_0x51a016=>{const _0x43ca1a=_0x206775;_0x51a016&&(_0xb504e5[_0x51a016[_0x43ca1a(0x1cc)]]=_0x51a016[_0x43ca1a(0x199)]);});}return _0xb504e5;}async[a0_0x11db4f(0x1cf)](_0x3380be,_0x2ab74a={}){const _0x18be84=a0_0x11db4f;try{this['_validateParameters'](_0x3380be);const {path:_0x52ab21,mode:_0x154114,includeDev:_0x39a5f4}=_0x3380be,{projectDir:_0x5ca42d,agentId:_0x134b4a,directoryAccess:_0x4e4220}=_0x2ab74a,_0x530b0a=this['_resolveAndValidatePath'](_0x52ab21,_0x2ab74a),_0x57e9ce=a0_0x1b8ed0[_0x18be84(0x189)](_0x530b0a,_0x18be84(0x1ab));this['logger']?.[_0x18be84(0x1e2)](_0x18be84(0x192),{'mode':_0x154114,'resolvedPath':_0x530b0a,'includeDev':_0x39a5f4,'agentId':_0x134b4a});const _0x194c3d=[];_0x194c3d['push']('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x530b0a),_0x194c3d['push']('Mode:\x20'+_0x154114);try{await a0_0x2afda5['access'](_0x57e9ce);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x57e9ce,'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};}_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1a9));const _0xa316df=await a0_0x2afda5[_0x18be84(0x1ef)](_0x57e9ce,_0x18be84(0x1df)),_0x35fb5d=JSON[_0x18be84(0x1ba)](_0xa316df),_0x3d5435={..._0x35fb5d['dependencies']};_0x39a5f4&&_0x35fb5d[_0x18be84(0x196)]&&Object['assign'](_0x3d5435,_0x35fb5d['devDependencies']);if(Object[_0x18be84(0x1ce)](_0x3d5435)['length']===0x0)return{'success':!![],'mode':_0x154114,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};if(Object['keys'](_0x3d5435)[_0x18be84(0x1aa)]>RESOLVER_CONFIG[_0x18be84(0x1bc)])return{'success':![],'error':_0x18be84(0x1eb)+Object['keys'](_0x3d5435)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x18be84(0x1bc)],'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};_0x194c3d['push']('📊\x20Found\x20'+Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)]+'\x20dependencies\x20to\x20check'),_0x194c3d['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x5b8063=await this['_checkDependencies'](_0x3d5435);_0x194c3d[_0x18be84(0x1d5)]('\x0a✅\x20Registry\x20check\x20complete'),_0x194c3d['push'](_0x18be84(0x1e6)+Object[_0x18be84(0x1ce)](_0x5b8063)['length']);if(Object['keys'](_0x5b8063)[_0x18be84(0x1aa)]>0x0){_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1c9));for(const [_0x3102b4,_0x1e6b37]of Object[_0x18be84(0x1fb)](_0x5b8063)){const _0x554d56=_0x3d5435[_0x3102b4];_0x194c3d['push']('\x20\x20•\x20'+_0x3102b4+':\x20'+_0x554d56+_0x18be84(0x1d4)+_0x1e6b37);}}else _0x194c3d['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x154114==='check')return Object['keys'](_0x5b8063)['length']>0x0&&_0x194c3d[_0x18be84(0x1d5)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':'check','message':_0x18be84(0x1fc)+Object[_0x18be84(0x1ce)](_0x5b8063)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':0x0,'errors':0x0},'updates':_0x5b8063,'output':_0x194c3d['join']('\x0a')};if((_0x154114==='fix'||_0x154114===_0x18be84(0x1c4))&&Object[_0x18be84(0x1ce)](_0x5b8063)['length']>0x0){_0x194c3d['push'](_0x18be84(0x1c8));const _0x2a90b4=await this['_createBackup'](_0x57e9ce);_0x2a90b4?_0x194c3d['push'](_0x18be84(0x1da)+a0_0x1b8ed0[_0x18be84(0x1e9)](_0x2a90b4)):_0x194c3d['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x194c3d['push'](_0x18be84(0x1bd));for(const [_0x12d58d,_0x14af85]of Object[_0x18be84(0x1fb)](_0x5b8063)){_0x35fb5d['dependencies']?.[_0x12d58d]&&(_0x35fb5d['dependencies'][_0x12d58d]=_0x14af85),_0x35fb5d[_0x18be84(0x196)]?.[_0x12d58d]&&(_0x35fb5d['devDependencies'][_0x12d58d]=_0x14af85);}await a0_0x2afda5[_0x18be84(0x1f8)](_0x57e9ce,JSON[_0x18be84(0x1fd)](_0x35fb5d,null,0x2)+'\x0a'),_0x194c3d[_0x18be84(0x1d5)]('✅\x20package.json\x20updated'),_0x194c3d['push'](_0x18be84(0x1c3));try{const {stdout:_0x34252b,stderr:_0x5e47ec}=await exec('npm\x20install',{'cwd':_0x530b0a,'timeout':RESOLVER_CONFIG[_0x18be84(0x1e3)],'maxBuffer':0x400*0x400*0xa});if(_0x34252b){const _0x3e78ca=_0x34252b[_0x18be84(0x1ac)]()[_0x18be84(0x1b9)]('\x0a');_0x3e78ca['length']>0xa?_0x194c3d[_0x18be84(0x1d5)]('\x20\x20'+_0x3e78ca['slice'](-0x5)['join']('\x0a\x20\x20')):_0x194c3d[_0x18be84(0x1d5)]('\x20\x20'+_0x34252b[_0x18be84(0x1ac)]());}_0x5e47ec&&!_0x5e47ec['includes'](_0x18be84(0x1b5))&&_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1d6)+_0x5e47ec['trim']());_0x194c3d['push'](_0x18be84(0x1f7));try{const {stdout:_0x5cc65f}=await exec(_0x18be84(0x1a4),{'cwd':_0x530b0a,'timeout':0x7530}),_0x4d9884=JSON['parse'](_0x5cc65f);if(_0x4d9884['dependencies']){_0x194c3d[_0x18be84(0x1d5)]('\x0a📦\x20Installed\x20versions:');for(const _0x526292 of Object['keys'](_0x5b8063)){_0x4d9884['dependencies'][_0x526292]&&_0x194c3d['push'](_0x18be84(0x19d)+_0x526292+'@'+_0x4d9884['dependencies'][_0x526292][_0x18be84(0x1e4)]);}}}catch(_0x4deaf0){this[_0x18be84(0x1e7)]?.['debug']('npm\x20ls\x20failed:',_0x4deaf0[_0x18be84(0x1c1)]);}return{'success':!![],'mode':_0x154114,'message':'Successfully\x20updated\x20'+Object['keys'](_0x5b8063)['length']+'\x20package(s)','statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':Object[_0x18be84(0x1ce)](_0x5b8063)['length'],'errors':0x0},'updates':_0x5b8063,'backupCreated':_0x2a90b4!==null,'backupPath':_0x2a90b4,'output':_0x194c3d['join']('\x0a')};}catch(_0x1f838f){_0x194c3d['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x1f838f[_0x18be84(0x1c1)]);if(_0x2a90b4)try{await a0_0x2afda5['copyFile'](_0x2a90b4,_0x57e9ce),_0x194c3d['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x4559bc){_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1ed));}return{'success':![],'mode':_0x154114,'error':'npm\x20install\x20failed:\x20'+_0x1f838f[_0x18be84(0x1c1)],'statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':0x0,'errors':0x1},'updates':_0x5b8063,'backupCreated':_0x2a90b4!==null,'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};}}else{if(_0x154114==='fix'||_0x154114===_0x18be84(0x1c4))return _0x194c3d[_0x18be84(0x1d5)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x154114,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x194c3d['join']('\x0a')};}}catch(_0x35a920){return this[_0x18be84(0x1e7)]?.['error'](_0x18be84(0x1dd),_0x35a920),{'success':![],'error':_0x35a920[_0x18be84(0x1c1)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x35a920[_0x18be84(0x1c1)]};}}}export default DependencyResolverTool;
@@ -1 +1 @@
1
- const a0_0x28633a=a0_0x439c;function a0_0x439c(_0x4c1c8d,_0x1c57f2){_0x4c1c8d=_0x4c1c8d-0xf2;const _0x5ee457=a0_0x5ee4();let _0x439cd8=_0x5ee457[_0x4c1c8d];if(a0_0x439c['QUKqJa']===undefined){var _0x540860=function(_0x1f0aa0){const _0x42989e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29aebc='',_0x267f31='';for(let _0x515e2d=0x0,_0x1f336a,_0x557dbb,_0x4bc930=0x0;_0x557dbb=_0x1f0aa0['charAt'](_0x4bc930++);~_0x557dbb&&(_0x1f336a=_0x515e2d%0x4?_0x1f336a*0x40+_0x557dbb:_0x557dbb,_0x515e2d++%0x4)?_0x29aebc+=String['fromCharCode'](0xff&_0x1f336a>>(-0x2*_0x515e2d&0x6)):0x0){_0x557dbb=_0x42989e['indexOf'](_0x557dbb);}for(let _0x497a5f=0x0,_0x123f4f=_0x29aebc['length'];_0x497a5f<_0x123f4f;_0x497a5f++){_0x267f31+='%'+('00'+_0x29aebc['charCodeAt'](_0x497a5f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x267f31);};a0_0x439c['oiXYAw']=_0x540860,a0_0x439c['bAwBrS']={},a0_0x439c['QUKqJa']=!![];}const _0x5aa6e9=_0x5ee457[0x0],_0x2b488e=_0x4c1c8d+_0x5aa6e9,_0x134389=a0_0x439c['bAwBrS'][_0x2b488e];return!_0x134389?(_0x439cd8=a0_0x439c['oiXYAw'](_0x439cd8),a0_0x439c['bAwBrS'][_0x2b488e]=_0x439cd8):_0x439cd8=_0x134389,_0x439cd8;}(function(_0x25695d,_0x389df5){const _0x1671c8=a0_0x439c,_0x315115=_0x25695d();while(!![]){try{const _0x4b3c27=parseInt(_0x1671c8(0x11f))/0x1+parseInt(_0x1671c8(0x14e))/0x2*(-parseInt(_0x1671c8(0x14f))/0x3)+parseInt(_0x1671c8(0x117))/0x4*(-parseInt(_0x1671c8(0x122))/0x5)+parseInt(_0x1671c8(0x12e))/0x6+parseInt(_0x1671c8(0x12f))/0x7*(-parseInt(_0x1671c8(0x10f))/0x8)+parseInt(_0x1671c8(0x104))/0x9*(-parseInt(_0x1671c8(0x13e))/0xa)+parseInt(_0x1671c8(0x135))/0xb*(parseInt(_0x1671c8(0x10b))/0xc);if(_0x4b3c27===_0x389df5)break;else _0x315115['push'](_0x315115['shift']());}catch(_0xae60aa){_0x315115['push'](_0x315115['shift']());}}}(a0_0x5ee4,0x4afc3));import{BaseTool}from'./baseTool.js';import{promises as a0_0x29aebc}from'fs';import a0_0x267f31 from'path';function a0_0x5ee4(){const _0x53a456=['ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','DhjPBq','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','tufyx0XjtKvFuKfor0vFu0LArq','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','zMLSzs1JB250zw50lxjLCgXHy2u','CgfYC2u','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','ihjLCgXHy2vTzw50khmPigLUia','BwfW','revgqvvmvf9uuKLnx01preu','s0iP','AxnbyNnVBhv0zq','tufyx0rjrKzFteLorvm','nJaYnJHpr2nLv0K','ntfdsvvKuvO','Aw5MBW','C2L6zq','reLgrL9dt05urvHux0XjtKvt','tufyx0zjtevtx1bfuL9puevsqvrjt04','CMvWBgfJzw1LBNrZtwfKzq','qKfds1vqx0vyvevou0LptG','C3vIC3rYAw5N','Bw9Kzq','rgLMzIb0B28GBgfYz2uGka','ywrK','ihrVia','BMv3BgLUzxm','AxnqyxrOqwnJzxnZAwjSzq','tufyx09mrf9dt05uru5ux1njwKu','BgvUz3rO','z2vUzxjHDgvtDw1Tyxj5','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','cIaGica','DxrMltG','zxjYB3jZ','CgfYC2vytuW','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','BgLUzxnmAw1PDa','AM9PBG','y291BNrpy2n1CNjLBMnLCW','mZuYmZK1mhD3yLrADq','yxbWBhLszxbSywnLBwvUDa','Bg9Nz2vY','CgfYC2vku09o','cKvYCM9YCZOG','zMLSzxm','B2jQzwn0','mZzVuhLytNa','sw52ywXPzcbTB2rLoIa','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','mtiWndm0nfPyAw1buG','B2XKq29UDgvUDa','zxjYB3i','icHJB250zw50ig5VDcbMB3vUzcK','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','yxbWBhLuCMLTtw9Kzq','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','C3rYAw5NAwz5','mJC3ntG4Eu1mvenk','D3jPDgvgAwXL','y291BNq','cLbYB2nLC3nLzca','qeaGlq','lI4U','BM9Uzq','BwvZC2fNzq','ndC3ntC5C2nKtenw','ChvZAa','CMvWBgfJzw1LBNrZ','mJvcCMHpAKy','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','CMvSyxrPDMu','BwLU','tufyx05fv19dt05uru5ux1njwKu','CMvWBgfJzunVBMzPzW','Dg90ywXszxbSywnLBwvUDhm','AxnbCNjHEq','ig1PC3nPBMCGB2XKq29UDgvUDa','Aw5JBhvKzxm','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','mJy3mtqYmMDMs2ThEa','mJf2rMjXzxu','zxH0CMfJDef0DhjPyNv0zq','q2HHBMDLzcbSAw5LCZOG','BMv3q29UDgvUDa','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','mZK4ndGWnxzOEwnxuq','C3bSAxq','rMLSzsb0B28GBgfYz2uGkg1HEca','Cgf0Aa','zxHLyW','x2LZtM9YBwfSAxPLzfbHCMfTCW','D29YA2LUz0rPCMvJDg9YEq','rMLSzsa','uMvWBgfJzw1LBNqGAw4G','mtbstLvWBgi','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq'];a0_0x5ee4=function(){return _0x53a456;};return a0_0x5ee4();}const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x515e2d={},_0x1f336a=null){const _0x30be33=a0_0x439c;super(_0x515e2d,_0x1f336a),this['id']=_0x30be33(0x145),this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x515e2d['timeout']||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x515e2d[_0x30be33(0x127)]};}['getDescription'](){const _0x31593f=a0_0x439c;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aUSAGE:\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:\x20\x225\x22,\x20\x225,10,15\x22,\x20\x225-10\x22,\x20\x221-5,10,15-20\x22\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20props.onClick?.(event);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/App.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20API_URL\x20=\x20\x27http://localhost:3000\x27\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20API_URL\x20=\x20process.env.API_URL\x22,\x0a\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x2210-20\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/config.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22DEBUG\x20=\x20false\x22,\x20\x22newContent\x22:\x20\x22DEBUG\x20=\x20true\x22\x20},\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27error\x27\x22,\x20\x22newContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27debug\x27\x22\x20}\x0a\x20\x20\x20\x20]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\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[{\x20\x22oldContent\x22:\x20\x22version\x20=\x20\x271.0.0\x27\x22,\x20\x22newContent\x22:\x20\x22version\x20=\x20\x271.1.0\x27\x22\x20}]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22package.json\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.0.0\x5c\x22\x22,\x20\x22newContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.1.0\x5c\x22\x22,\x20\x22mode\x22:\x20\x22none\x22\x20}]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aFEATURES:\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\x0aLIMITATIONS:\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x31593f(0x113)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+_0x31593f(0x10d)+REPLACE_CONFIG[_0x31593f(0x13f)]+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0x31593f(0x153)]+_0x31593f(0xfc);}['parseParameters'](_0x557dbb){const _0x37e5a5=a0_0x439c;try{if(_0x557dbb['trim']()['startsWith']('{'))return this[_0x37e5a5(0x107)](_0x557dbb);return this['parseXML'](_0x557dbb);}catch(_0x4bc930){this[_0x37e5a5(0x106)]?.['error'](_0x37e5a5(0x142),{'error':_0x4bc930[_0x37e5a5(0x11e)]});throw new Error(_0x37e5a5(0x123)+_0x4bc930[_0x37e5a5(0x11e)]);}}[a0_0x28633a(0x107)](_0x497a5f){const _0x4e876b=a0_0x28633a,_0x123f4f=JSON[_0x4e876b(0x146)](_0x497a5f);if(!_0x123f4f['files']||!Array['isArray'](_0x123f4f['files']))throw new Error(_0x4e876b(0xfa));return{'files':_0x123f4f['files']['map'](_0x238286=>({'path':_0x238286['path'],'replacements':(_0x238286[_0x4e876b(0x121)]||[])['map'](_0x52225a=>({'oldContent':_0x52225a[_0x4e876b(0x110)],'newContent':_0x52225a['newContent'],'mode':_0x52225a[_0x4e876b(0x157)]||REPLACE_CONFIG[_0x4e876b(0x14a)],'linesLimit':_0x52225a[_0x4e876b(0x101)]||null}))}))};}[a0_0x28633a(0xff)](_0x359482){const _0xa61a06=a0_0x28633a,_0x432db4=[],_0x550ced=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x429f67;while((_0x429f67=_0x550ced['exec'](_0x359482))!==null){const _0x2c91f7=_0x429f67[0x1],_0x20b1ff=_0x429f67[0x2],_0x300f61=[],_0x4b0960=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1d0c8d;while((_0x1d0c8d=_0x4b0960['exec'](_0x20b1ff))!==null){const _0x4029ac=_0x1d0c8d[0x1]||'',_0x227a7a=_0x1d0c8d[0x2],_0x3ab8d4=this[_0xa61a06(0x130)](_0x4029ac,_0xa61a06(0x157))||REPLACE_CONFIG[_0xa61a06(0x14a)],_0x49709c=this[_0xa61a06(0x130)](_0x4029ac,'lines-limit'),_0x9abf20=/<old-content>([\s\S]*?)<\/old-content>/i[_0xa61a06(0x139)](_0x227a7a);if(!_0x9abf20){this[_0xa61a06(0x106)]?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x48ac0d=_0x9abf20[0x1],_0x4d69b0=/<new-content>([\s\S]*?)<\/new-content>/i[_0xa61a06(0x139)](_0x227a7a);if(!_0x4d69b0){this['logger']?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x29c398=_0x4d69b0[0x1],_0x1cdff1=this[_0xa61a06(0x114)](_0x48ac0d,_0x3ab8d4),_0x1dd829=this['applyTrimMode'](_0x29c398,_0x3ab8d4);_0x300f61['push']({'oldContent':_0x1cdff1,'newContent':_0x1dd829,'mode':_0x3ab8d4,'linesLimit':_0x49709c});}_0x300f61[_0xa61a06(0xf8)]>0x0&&_0x432db4[_0xa61a06(0x120)]({'path':_0x2c91f7,'replacements':_0x300f61});}return{'files':_0x432db4};}['extractAttribute'](_0x417086,_0x595d63){const _0x90353d=a0_0x28633a,_0x5b17bc=new RegExp(_0x595d63+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x48a417=_0x5b17bc[_0x90353d(0x139)](_0x417086);return _0x48a417?_0x48a417[0x1]:null;}[a0_0x28633a(0x114)](_0x5c1398,_0x5ae06d){const _0x216112=a0_0x28633a;switch(_0x5ae06d){case _0x216112(0xf5):return _0x5c1398['replace'](/^\n+|\n+$/g,'');case _0x216112(0x11d):return _0x5c1398;case'trim':default:return _0x5c1398[_0x216112(0x141)]();}}['getRequiredParameters'](){return['files'];}['customValidateParameters'](_0x6fa873){const _0x2d3c4c=a0_0x28633a,_0x21517a=[];if(!_0x6fa873['files']||!Array[_0x2d3c4c(0x129)](_0x6fa873['files']))_0x21517a[_0x2d3c4c(0x120)]('files\x20must\x20be\x20an\x20array');else{_0x6fa873['files']['length']===0x0&&_0x21517a[_0x2d3c4c(0x120)]('files\x20array\x20cannot\x20be\x20empty');_0x6fa873['files'][_0x2d3c4c(0xf8)]>this[_0x2d3c4c(0x127)][_0x2d3c4c(0x153)]&&_0x21517a[_0x2d3c4c(0x120)]('Cannot\x20process\x20more\x20than\x20'+this['replaceConfig']['MAX_FILES_PER_OPERATION']+'\x20files\x20in\x20one\x20operation');for(const _0x1d78ff of _0x6fa873['files']){!_0x1d78ff[_0x2d3c4c(0x138)]&&_0x21517a['push']('Each\x20file\x20must\x20have\x20a\x20path');_0x1d78ff['path']&&_0x1d78ff['path']['includes']('..')&&_0x21517a[_0x2d3c4c(0x120)]('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x1d78ff[_0x2d3c4c(0x138)]);if(!_0x1d78ff['replacements']||!Array['isArray'](_0x1d78ff['replacements']))_0x21517a['push'](_0x2d3c4c(0x13c)+_0x1d78ff['path']+_0x2d3c4c(0x133));else{if(_0x1d78ff['replacements'][_0x2d3c4c(0xf8)]===0x0)_0x21517a['push']('File\x20'+_0x1d78ff[_0x2d3c4c(0x138)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x33b819 of _0x1d78ff['replacements']){!_0x33b819['oldContent']&&_0x33b819[_0x2d3c4c(0x110)]!==''&&_0x21517a['push']('Replacement\x20in\x20'+_0x1d78ff[_0x2d3c4c(0x138)]+_0x2d3c4c(0x12a)),!_0x33b819['newContent']&&_0x33b819[_0x2d3c4c(0x132)]!==''&&_0x21517a['push'](_0x2d3c4c(0x13d)+_0x1d78ff[_0x2d3c4c(0x138)]+'\x20missing\x20newContent'),_0x33b819[_0x2d3c4c(0x110)]&&_0x33b819[_0x2d3c4c(0x110)]['length']>this[_0x2d3c4c(0x127)][_0x2d3c4c(0xf7)]&&_0x21517a['push']('oldContent\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+_0x2d3c4c(0x14b)),_0x33b819[_0x2d3c4c(0x132)]&&_0x33b819['newContent'][_0x2d3c4c(0xf8)]>this['replaceConfig'][_0x2d3c4c(0x126)]&&_0x21517a[_0x2d3c4c(0x120)](_0x2d3c4c(0x10e)+this[_0x2d3c4c(0x127)]['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x33b819[_0x2d3c4c(0x157)]&&![_0x2d3c4c(0x141),'newlines',_0x2d3c4c(0x11d)][_0x2d3c4c(0x12b)](_0x33b819[_0x2d3c4c(0x157)])&&_0x21517a[_0x2d3c4c(0x120)](_0x2d3c4c(0x10c)+_0x33b819['mode']+_0x2d3c4c(0x147));}}}}if(_0x21517a['length']>0x0)throw new Error(_0x2d3c4c(0x140)+_0x21517a['join'](',\x20'));return{'valid':!![],'errors':[]};}[a0_0x28633a(0x13a)](_0x22aaf6){const _0x54b1f4=a0_0x28633a;if(!_0x22aaf6['files']||!Array['isArray'](_0x22aaf6[_0x54b1f4(0x109)])||_0x22aaf6['files']['length']===0x0)return![];const _0x557e65=_0x22aaf6[_0x54b1f4(0x109)][0x0];if(!_0x557e65['replacements']||!Array['isArray'](_0x557e65['replacements'])||_0x557e65[_0x54b1f4(0x121)][_0x54b1f4(0xf8)]===0x0)return![];return _0x557e65[_0x54b1f4(0x121)][0x0]['hasOwnProperty'](_0x54b1f4(0x157));}async['execute'](_0xc51b4b,_0x3aba6d){const _0x41786f=a0_0x28633a;typeof _0xc51b4b==='string'&&(this['logger']?.['info'](_0x41786f(0x115)),_0xc51b4b=this['parseParameters'](_0xc51b4b));_0xc51b4b&&typeof _0xc51b4b===_0x41786f(0x10a)&&_0xc51b4b[_0x41786f(0x109)]&&!this[_0x41786f(0x13a)](_0xc51b4b)&&(this[_0x41786f(0x106)]?.['info'](_0x41786f(0x12c)),_0xc51b4b=this[_0x41786f(0x107)](JSON[_0x41786f(0x116)](_0xc51b4b)));const {files:_0x3c26a2}=_0xc51b4b,{projectDir:_0x5cb209,agentId:_0x29cca9,directoryAccess:_0x32d84e}=_0x3aba6d;let _0x2cc333=_0x5cb209||process['cwd']();_0x32d84e&&_0x32d84e['workingDirectory']&&(_0x2cc333=_0x32d84e[_0x41786f(0x13b)],this['logger']?.[_0x41786f(0x150)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x32d84e['workingDirectory'],'agentId':_0x29cca9}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x3c26a2[_0x41786f(0xf8)],'workingDirectory':_0x2cc333,'agentId':_0x29cca9});const _0x48138a=[],_0x44c0b2={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x30077f of _0x3c26a2){try{const _0x12dfcc=await this['processFile'](_0x30077f,_0x2cc333,_0x32d84e);_0x48138a['push'](_0x12dfcc),_0x44c0b2['filesProcessed']++,_0x12dfcc[_0x41786f(0x154)]>0x0&&(_0x44c0b2['filesModified']++,_0x44c0b2[_0x41786f(0x128)]+=_0x12dfcc['replacementsMade']),_0x12dfcc['backupCreated']&&_0x44c0b2['backupsCreated']++;}catch(_0x27a895){this[_0x41786f(0x106)]?.[_0x41786f(0x111)](_0x41786f(0x100)+_0x30077f[_0x41786f(0x138)],{'error':_0x27a895['message']}),_0x48138a['push']({'filePath':_0x30077f[_0x41786f(0x138)],'success':![],'error':_0x27a895[_0x41786f(0x11e)]}),_0x44c0b2[_0x41786f(0xfe)]++;}}return{'success':_0x44c0b2['errors']===0x0,'results':_0x48138a,'statistics':_0x44c0b2,'summary':this[_0x41786f(0xf9)](_0x44c0b2),'toolUsed':'file-content-replace'};}async['processFile'](_0x5db9aa,_0x39c41f,_0x56957f){const _0x15bc34=a0_0x28633a,{path:_0x409cfd,replacements:_0x2194f3}=_0x5db9aa,_0x45be7c=a0_0x267f31[_0x15bc34(0x14c)](_0x409cfd)?_0x409cfd:a0_0x267f31['resolve'](_0x39c41f,_0x409cfd);if(_0x56957f){const _0x22ae5b=this['isPathAccessible'](_0x45be7c,_0x39c41f,_0x56957f);if(!_0x22ae5b)throw new Error('Path\x20not\x20accessible:\x20'+_0x409cfd);}try{await a0_0x29aebc['access'](_0x45be7c);}catch(_0x555336){throw new Error('File\x20not\x20found:\x20'+_0x409cfd);}const _0x55adcc=await a0_0x29aebc['stat'](_0x45be7c);if(_0x55adcc[_0x15bc34(0x151)]>this[_0x15bc34(0x127)]['MAX_FILE_SIZE'])throw new Error(_0x15bc34(0x137)+this[_0x15bc34(0x127)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x409cfd);let _0x374f81=await a0_0x29aebc['readFile'](_0x45be7c,_0x15bc34(0xfd));const _0xe78a62=_0x374f81;let _0x38ec8c=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0xcbe379=_0x45be7c+this[_0x15bc34(0x127)][_0x15bc34(0x155)];try{await a0_0x29aebc[_0x15bc34(0x118)](_0xcbe379,_0xe78a62,_0x15bc34(0xfd)),_0x38ec8c=!![];}catch(_0x3aa2f8){this[_0x15bc34(0x106)]?.['warn']('Failed\x20to\x20create\x20backup:\x20'+_0x3aa2f8[_0x15bc34(0x11e)]);}}let _0x3b6390=0x0;const _0x3e1052=[];for(const _0xaadfe of _0x2194f3){const _0x4d7160=await this[_0x15bc34(0x105)](_0x374f81,_0xaadfe[_0x15bc34(0x110)],_0xaadfe[_0x15bc34(0x132)],_0xaadfe['linesLimit'],_0xaadfe['mode']);_0x374f81=_0x4d7160[_0x15bc34(0x132)],_0x3b6390+=_0x4d7160[_0x15bc34(0x119)],_0x3e1052[_0x15bc34(0x120)]({'oldContent':_0xaadfe['oldContent'][_0x15bc34(0x156)](0x0,0x32)+(_0xaadfe[_0x15bc34(0x110)][_0x15bc34(0xf8)]>0x32?'...':''),'newContent':_0xaadfe['newContent'][_0x15bc34(0x156)](0x0,0x32)+(_0xaadfe[_0x15bc34(0x132)]['length']>0x32?_0x15bc34(0x11c):''),'count':_0x4d7160[_0x15bc34(0x119)],'mode':_0xaadfe[_0x15bc34(0x157)],'linesLimit':_0xaadfe['linesLimit']});}_0x3b6390>0x0&&await a0_0x29aebc[_0x15bc34(0x118)](_0x45be7c,_0x374f81,_0x15bc34(0xfd));const _0x405854=_0x3b6390>0x0?this['generateDiff'](_0xe78a62,_0x374f81):null;return{'filePath':_0x409cfd,'resolvedPath':_0x45be7c,'success':!![],'replacementsMade':_0x3b6390,'backupCreated':_0x38ec8c,'replacementDetails':_0x3e1052,'diff':_0x405854,'message':_0x3b6390>0x0?'Made\x20'+_0x3b6390+_0x15bc34(0x148)+_0x409cfd:_0x15bc34(0x144)+_0x409cfd+_0x15bc34(0x112)};}[a0_0x28633a(0xf6)](_0x2bd17d,_0x1e7442,_0x5c3311){const _0x1633c0=a0_0x28633a,_0x52d22a=a0_0x267f31[_0x1633c0(0x124)](_0x1e7442,_0x2bd17d);if(!_0x52d22a['startsWith']('..')&&!a0_0x267f31['isAbsolute'](_0x52d22a))return!![];if(_0x5c3311[_0x1633c0(0xfb)])for(const _0x3d09ba of _0x5c3311['writeEnabledDirectories']){const _0x19c784=a0_0x267f31[_0x1633c0(0x124)](_0x3d09ba,_0x2bd17d);if(!_0x19c784['startsWith']('..')&&!a0_0x267f31[_0x1633c0(0x14c)](_0x19c784))return!![];}return![];}async[a0_0x28633a(0x105)](_0x313494,_0x47bbb9,_0x475d0e,_0x104cd5,_0x214ce5){const _0x1fcaec=a0_0x28633a;if(!_0x104cd5){const _0x332042=this['countOccurrences'](_0x313494,_0x47bbb9);if(_0x332042===0x0)return{'newContent':_0x313494,'count':0x0};const _0x3d723d=_0x313494[_0x1fcaec(0x136)](_0x47bbb9)['join'](_0x475d0e);return{'newContent':_0x3d723d,'count':_0x332042};}const _0x1f7dde=this['parseLineRanges'](_0x104cd5),_0x4b4c7f=_0x313494['split']('\x0a');let _0x4e429f=0x0;for(let _0x55d426=0x0;_0x55d426<_0x4b4c7f['length'];_0x55d426++){const _0x1dbf09=_0x55d426+0x1;if(_0x1f7dde['has'](_0x1dbf09)){if(_0x4b4c7f[_0x55d426][_0x1fcaec(0x12b)](_0x47bbb9)){const _0x2ddd55=this['countOccurrences'](_0x4b4c7f[_0x55d426],_0x47bbb9);_0x4b4c7f[_0x55d426]=_0x4b4c7f[_0x55d426][_0x1fcaec(0x136)](_0x47bbb9)[_0x1fcaec(0x102)](_0x475d0e),_0x4e429f+=_0x2ddd55;}}}return{'newContent':_0x4b4c7f[_0x1fcaec(0x102)]('\x0a'),'count':_0x4e429f};}[a0_0x28633a(0x103)](_0x21d32d,_0x3ddf79){const _0x3ab2e1=a0_0x28633a;if(!_0x3ddf79)return 0x0;return _0x21d32d[_0x3ab2e1(0x136)](_0x3ddf79)['length']-0x1;}['parseLineRanges'](_0x212ff7){const _0x73232e=a0_0x28633a,_0x1161f3=new Set();if(!_0x212ff7||_0x212ff7[_0x73232e(0x141)]()==='')return _0x1161f3;const _0xd63ad=_0x212ff7['split'](',');for(const _0x20094e of _0xd63ad){const _0x30377c=_0x20094e['trim']();if(_0x30377c==='')continue;if(_0x30377c['includes']('-')){const [_0x4742c4,_0x156774]=_0x30377c[_0x73232e(0x136)]('-')[_0x73232e(0x149)](_0x1a93e8=>parseInt(_0x1a93e8['trim'](),0xa));if(!isNaN(_0x4742c4)&&!isNaN(_0x156774)&&_0x156774-_0x4742c4<this[_0x73232e(0x127)][_0x73232e(0x143)])for(let _0x406770=_0x4742c4;_0x406770<=_0x156774;_0x406770++){_0x1161f3[_0x73232e(0xf3)](_0x406770);}}else{const _0x36112e=parseInt(_0x30377c,0xa);!isNaN(_0x36112e)&&_0x1161f3['add'](_0x36112e);}}return _0x1161f3;}['generateDiff'](_0x2a7b21,_0x1ea06c){const _0x4ffde2=a0_0x28633a,_0x290798=_0x2a7b21[_0x4ffde2(0x136)]('\x0a'),_0x33eb47=_0x1ea06c['split']('\x0a');let _0x1b45f7=-0x1,_0x25ca3d=-0x1;const _0x3c12db=Math['max'](_0x290798[_0x4ffde2(0xf8)],_0x33eb47['length']);for(let _0x12dbb8=0x0;_0x12dbb8<_0x3c12db;_0x12dbb8++){const _0x403e0b=_0x12dbb8<_0x290798[_0x4ffde2(0xf8)]?_0x290798[_0x12dbb8]:'',_0x437641=_0x12dbb8<_0x33eb47[_0x4ffde2(0xf8)]?_0x33eb47[_0x12dbb8]:'';if(_0x403e0b!==_0x437641){if(_0x1b45f7===-0x1)_0x1b45f7=_0x12dbb8;_0x25ca3d=_0x12dbb8;}}if(_0x1b45f7===-0x1)return'No\x20differences';const _0x272139=this['replaceConfig'][_0x4ffde2(0x152)],_0xf7d28d=Math['max'](0x0,_0x1b45f7-_0x272139),_0x2218f0=Math[_0x4ffde2(0x125)](_0x3c12db-0x1,_0x25ca3d+_0x272139);if(_0x2218f0-_0xf7d28d>this[_0x4ffde2(0x127)][_0x4ffde2(0x14d)])return _0x4ffde2(0xf2)+(_0x2218f0-_0xf7d28d+0x1)+_0x4ffde2(0x12d)+(_0x4ffde2(0x131)+(_0x1b45f7+0x1)+_0x4ffde2(0xf4)+(_0x25ca3d+0x1));let _0x380dbf=_0x4ffde2(0x11b)+(_0xf7d28d+0x1)+','+(_0x2218f0-_0xf7d28d+0x1)+'\x20+'+(_0xf7d28d+0x1)+','+(_0x2218f0-_0xf7d28d+0x1)+'\x20@@\x0a';for(let _0x29482a=_0xf7d28d;_0x29482a<=_0x2218f0;_0x29482a++){const _0x3bc6d8=_0x29482a<_0x290798[_0x4ffde2(0xf8)]?_0x290798[_0x29482a]:'',_0x1699c9=_0x29482a<_0x33eb47['length']?_0x33eb47[_0x29482a]:'';_0x3bc6d8===_0x1699c9?_0x380dbf+='\x20\x20'+_0x3bc6d8+'\x0a':(_0x380dbf+='-\x20'+_0x3bc6d8+'\x0a',_0x380dbf+='+\x20'+_0x1699c9+'\x0a');}return _0x380dbf;}['generateSummary'](_0x4ae991){const _0x464bb8=a0_0x28633a;return(_0x464bb8(0x11a)+_0x4ae991['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x4ae991['filesModified']+_0x464bb8(0x134)+_0x4ae991[_0x464bb8(0x128)]+'\x0aBackups\x20created:\x20'+_0x4ae991['backupsCreated']+_0x464bb8(0x108)+_0x4ae991[_0x464bb8(0xfe)]+_0x464bb8(0xfc))[_0x464bb8(0x141)]();}async['cleanup'](_0x235a91){const _0x4fd1f9=a0_0x28633a;this[_0x4fd1f9(0x106)]?.[_0x4fd1f9(0x150)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x235a91});}}export default FileContentReplaceTool;
1
+ const a0_0x302dd=a0_0x3dab;(function(_0x7cc100,_0x216c4b){const _0x2e031d=a0_0x3dab,_0x4f2119=_0x7cc100();while(!![]){try{const _0x1b61cf=parseInt(_0x2e031d(0x10b))/0x1+-parseInt(_0x2e031d(0x102))/0x2*(-parseInt(_0x2e031d(0x101))/0x3)+-parseInt(_0x2e031d(0x118))/0x4*(-parseInt(_0x2e031d(0xf8))/0x5)+parseInt(_0x2e031d(0x11a))/0x6*(parseInt(_0x2e031d(0xfc))/0x7)+parseInt(_0x2e031d(0x132))/0x8*(-parseInt(_0x2e031d(0xf4))/0x9)+parseInt(_0x2e031d(0x12d))/0xa+-parseInt(_0x2e031d(0xe4))/0xb;if(_0x1b61cf===_0x216c4b)break;else _0x4f2119['push'](_0x4f2119['shift']());}catch(_0x1e83ef){_0x4f2119['push'](_0x4f2119['shift']());}}}(a0_0x1383,0xeacda));function a0_0x1383(){const _0x635bb8=['ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','AxnbCNjHEq','mty5odq1mdz1rwzZruS','yMfJA3vWC0nYzwf0zwq','CgfYC2vqyxjHBwv0zxjZ','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','cLbYB2nLC3nLzca','ywrK','q2HHBMDLzcbSAw5LCZOG','sw52ywXPzcbTB2rLoIa','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','D3jPDgvgAwXL','AxnqyxrOqwnJzxnZAwjSzq','zMLSzs1JB250zw50lxjLCgXHy2u','B2jQzwn0','s0iP','z2v0rgvZy3jPChrPB24','ouTTvNHfza','zxHLy3v0zq','zxHLyW','ihrVia','mZe4nZvJDgL5u00','BwvZC2fNzq','qKfds1vqx0vyvevou0LptG','CgfYC2vku09o','nJG3mteZseTey1vq','cKjHy2T1ChmGy3jLyxrLzdOG','CMvWBgfJzq','CgfYC2vytuW','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','mti5vMryq2fM','mtiXmZrpB0jlteq','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlwnVBNrLBNqTCMvWBgfJzsiScIaGiMzPBgvZiJOGwWOGicaGEWOGicaGicaICgf0Aci6icjZCMmVyxbWlMPZiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifSkicaGicaGicb7cIaGicaGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbVBgrgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjUzxDdB250zw50iJOGiMnVBNn0ig5LD0z1BMn0Aw9Uid0GkcKGpt4GE30IlaOGicaGicaGicaGiM1VzguIoIaIDhjPBsiScIaGicaGicaGicaIBgLUzxnmAw1PDci6ici1ldCTmtaIcIaGicaGicaGFqOGicaGicbDcIaGicb9cIaGxqP9cMbGyaOkuefsqu1fvevsuZOkcNbHDgGGkhjLCxvPCMvKktOkicaTifbHDgGGDg8GDgHLigzPBguGDg8GBw9KAwz5cIaGlsbdyw4GyMuGCMvSyxrPDMuGB3iGywjZB2X1DgukicaTiev4yw1WBgvZoIaIC3jJl2fWCc5QCYiSiciUl2nVBMzPzY5QC29UiGOkB2XKq29UDgvUDcaOCMvXDwLYzwqPoGOGic0Gq29UDgvUDcb0BYbMAw5KigfUzcbYzxbSywnLcIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbnDxn0igv4Axn0igLUigzPBgukcM5LD0nVBNrLBNqGkhjLCxvPCMvKktOkicaTifjLCgXHy2vTzw50ignVBNrLBNqkicaTifn1yMPLy3qGDg8GDhjPBsbTB2rLihbYB2nLC3nPBMCkicaTienHBIbIzsbZyw1LigXLBMD0AcWGC2HVCNrLCIWGB3iGBg9Uz2vYcGPTB2rLicHVChrPB25HBcK6cIaGlsbxAgL0zxnWywnLigHHBMrSAw5Nig1VzgukicaTie9WDgLVBNm6cIaGicaQicj0CMLTiIaOzgvMyxvSDcK6ifrYAw0GywXSihDOAxrLC3bHy2uGzNjVBsbIB3rOigvUzhmkicaGicOGiM5LD2XPBMvZiJOGt25SEsb0CMLTig5LD2XPBMuGy2HHCMfJDgvYCWOGicaGkIaIBM9Uzsi6ifvZzsbJB250zw50igv4ywn0BhKGyxmGChjVDMLKzwqkicaTieHLBhbZihDPDgGGBwf0y2HPBMCGzgvZCgL0zsbPBMrLBNrHDgLVBIbKAwzMzxjLBMnLCWOkBgLUzxnmAw1PDcaOB3b0Aw9UywWPoGOGic0GuMvZDhjPy3qGCMvWBgfJzw1LBNqGDg8GC3bLy2LMAwmGBgLUzxmkicaTiezVCM1HDdOGq29TBweTC2vWyxjHDgvKigXPBMuGBNvTyMvYCYbVCIbYyw5NzxmkicaTiev4yw1WBgvZoIaInsiSici1ldeWlde1iIWGiJuTmtaIlcaIms01ldeWlde1ltiWiGOGic0GtgLUzsbUDw1IzxjZigfYzsaXlwjHC2vKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbOyw5KBgvdBgLJAYa9icHLDMvUDcKGpt4GEYbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoYb9iIWkicaGicaGiM5LD0nVBNrLBNqIoIaIy29UC3qGAgfUzgXLq2XPy2SGpsaOzxzLBNqPid0+ihSGy29UC29Szs5SB2COj2nSAwnRzwqNktSGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSGFsiScIaGicaGicjTB2rLiJOGiNrYAw0IcIaGicb9xqOGih1DcN0kygbGcGPfEgfTCgXLidiGlsbmAw5LlwXPBwL0zwqGCMvWBgfJzw1LBNq6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifT7cIaGicaICgf0Aci6icjZCMmVqxbWlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbbueLFvvjmid0Gj2H0Dha6lY9SB2nHBgHVC3q6mZaWmcCIlaOGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbbueLFvvjmid0GChjVy2vZCY5LBNyUqvbjx1vstciScIaGicaGicjSAw5LC0XPBwL0iJOGiJeWltiWiGOGicaGFv0kicb9xqP9cMbGyaOkrxHHBxbSzsaZic0GtxvSDgLWBguGCMvWBgfJzw1LBNrZigLUig9UzsbMAwXLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBMzPzY5QCYiScIaGicaICMvWBgfJzw1LBNrZiJOGwWOGicaGicb7icjVBgrdB250zw50iJOGiKrfqLvhid0GzMfSC2uIlcaIBMv3q29UDgvUDci6icjerujvrYa9ihrYDwuIih0ScIaGicaGihSGiM9SzenVBNrLBNqIoIaIte9hx0XfvKvmid0Gj2vYCM9YjYiSicjUzxDdB250zw50iJOGiKXpr19mrvzftca9icDKzwj1zYCIih0kicaGif0kicb9xqP9cMbGyaOkrxHHBxbSzsa0ic0GtxvSDgLWBguGzMLSzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBEYaIB2XKq29UDgvUDci6icj2zxjZAw9Uid0GjZeUmc4WjYiSicjUzxDdB250zw50iJOGiNzLCNnPB24GpsaNms4XlJaNiIb9xqOGicaGFsWkicaGihSkicaGicaGiNbHDgGIoIaICgfJA2fNzs5QC29UiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifT7icjVBgrdB250zw50iJOGiLWIDMvYC2LVBLWIoIbCiJeUmc4WxciIlcaIBMv3q29UDgvUDci6icjCiNzLCNnPB25CiJOGxciXlJeUmfWIiIWGiM1VzguIoIaIBM9UzsiGFv0kicaGih0kicbDcN0kygbGcGPgrufuvvjfuZOklsbbDxrVBwf0AwmGyMfJA3vWignYzwf0Aw9UicGUyMfRigzPBgvZkqOTiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmklsbszxbSywnLBwvUDcbJB3vUDgLUzYbHBMqGC3rHDgLZDgLJCWOTie11BhrPlwzPBguGB3bLCMf0Aw9UCWOTieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmklsbjBNrLBgXPz2vUDcb3AgL0zxnWywnLigHHBMrSAw5NcGPmsu1jvefusu9ouZOklsbnyxHPBxvTigzPBguGC2L6ztOG','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','zxH0CMfJDef0DhjPyNv0zq','CMvSyxrPDMu','AM9PBG','tufyx0zjtevtx1bfuL9puevsqvrjt04','tM8GzgLMzMvYzw5Jzxm','D29YA2LUz0rPCMvJDg9YEq','mJG4nJrpvfPntLG','rgLMzIb0B28GBgfYz2uGka','CMvWBgfJzw1LBNrZ','Cgf0Aa','zxjYB3jZ','tufyx05fv19dt05uru5ux1njwKu','lI4U','CMvZB2X2zq','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','C3bSAxq','ywnJzxnZ','zMLSzxnqCM9JzxnZzwq','DhjPBq','ntGWyKLMz0PO','Dg90ywXszxbSywnLBwvUDhm','mte0tKnfu2XS','DxrMltG','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','cKvYCM9YCZOG','AxnbyNnVBhv0zq','BgLUzxnmAw1PDa','zMLSzxnnB2rPzMLLza','C3vIC3rYAw5N','zMLSzxm','z2vUzxjHDgvtDw1Tyxj5','DgLTzw91Da','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','yxbWBhLuCMLTtw9Kzq','CMvHzezPBgu','CMvWBgfJzunVBMzPzW','reLgrL9dt05urvHux0XjtKvt','Aw5JBhvKzxm','twfKzsa','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','mJi3otaWvMH3C2LH','x2LZtM9YBwfSAxPLzfbHCMfTCW','iebacG','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','BM9Uzq','ndC2ota0ogvVsuX4yq','Bwf4','tufyx0zjtevFu0LArq','tufyx09mrf9dt05uru5ux1njwKu','Aw5MBW','ChvZAa','C3rHCNrZv2L0Aa','yxbWBhLszxbSywnLBwvUDa','BwfW','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','CgfYC2vmAw5LuMfUz2vZ','B2XKq29UDgvUDa','rMLSzsa','BMv3q29UDgvUDa','revgqvvmvf9uuKLnx01preu','rMLSzsb0B28GBgfYz2uGkg1HEca','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','y2XLyw51Ca','Bw9Kzq','AxnbC3LUyW','tuiPoIa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','C3rYAw5N','D2fYBG','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','igzPBguOCYKktw9KAwzPzwqG','BgvUz3rO','Bg9Nz2vY','cIaGica','ChjVy2vZC0zPBgu'];a0_0x1383=function(){return _0x635bb8;};return a0_0x1383();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x13dd02}from'fs';function a0_0x3dab(_0x10e980,_0x4aea5d){_0x10e980=_0x10e980-0xc7;const _0x1383a2=a0_0x1383();let _0x3dab9d=_0x1383a2[_0x10e980];if(a0_0x3dab['wkWPZv']===undefined){var _0x4a8a9d=function(_0xce39f3){const _0x7dd0c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x13dd02='',_0xc3a20f='';for(let _0x1d899a=0x0,_0x1b13d7,_0x30b77c,_0xde56d2=0x0;_0x30b77c=_0xce39f3['charAt'](_0xde56d2++);~_0x30b77c&&(_0x1b13d7=_0x1d899a%0x4?_0x1b13d7*0x40+_0x30b77c:_0x30b77c,_0x1d899a++%0x4)?_0x13dd02+=String['fromCharCode'](0xff&_0x1b13d7>>(-0x2*_0x1d899a&0x6)):0x0){_0x30b77c=_0x7dd0c9['indexOf'](_0x30b77c);}for(let _0x37eba8=0x0,_0x16644b=_0x13dd02['length'];_0x37eba8<_0x16644b;_0x37eba8++){_0xc3a20f+='%'+('00'+_0x13dd02['charCodeAt'](_0x37eba8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc3a20f);};a0_0x3dab['WWdkPI']=_0x4a8a9d,a0_0x3dab['plQkfy']={},a0_0x3dab['wkWPZv']=!![];}const _0x4bbbf9=_0x1383a2[0x0],_0x2a0466=_0x10e980+_0x4bbbf9,_0x18903c=a0_0x3dab['plQkfy'][_0x2a0466];return!_0x18903c?(_0x3dab9d=a0_0x3dab['WWdkPI'](_0x3dab9d),a0_0x3dab['plQkfy'][_0x2a0466]=_0x3dab9d):_0x3dab9d=_0x18903c,_0x3dab9d;}import a0_0xc3a20f from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x1d899a={},_0x1b13d7=null){const _0x2404a9=a0_0x3dab;super(_0x1d899a,_0x1b13d7),this['id']=_0x2404a9(0xf0),this['requiresProject']=!![],this[_0x2404a9(0xd7)]=!![],this[_0x2404a9(0x124)]=_0x1d899a[_0x2404a9(0x124)]||0x1d4c0,this[_0x2404a9(0x128)]={...REPLACE_CONFIG,..._0x1d899a['replaceConfig']};}[a0_0x302dd(0xf3)](){const _0x4423d4=a0_0x302dd;return _0x4423d4(0x103)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0x4423d4(0x113)+REPLACE_CONFIG[_0x4423d4(0xc7)]/0x400+_0x4423d4(0x12c)+REPLACE_CONFIG[_0x4423d4(0x110)]/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x4423d4(0x104)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x4423d4(0xe0);}[a0_0x302dd(0xe6)](_0x30b77c){const _0x595255=a0_0x302dd;try{if(_0x30b77c[_0x595255(0x117)]()[_0x595255(0xca)]('{'))return this[_0x595255(0xfb)](_0x30b77c);return this[_0x595255(0xff)](_0x30b77c);}catch(_0xde56d2){this['logger']?.['error'](_0x595255(0xcd),{'error':_0xde56d2['message']});throw new Error(_0x595255(0xd4)+_0xde56d2[_0x595255(0xf9)]);}}[a0_0x302dd(0xfb)](_0x37eba8){const _0x284d5e=a0_0x302dd,_0x16644b=JSON['parse'](_0x37eba8);if(!_0x16644b['files']||!Array['isArray'](_0x16644b[_0x284d5e(0x122)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x16644b['files']['map'](_0x45e95d=>({'path':_0x45e95d['path'],'replacements':(_0x45e95d['replacements']||[])['map'](_0x55435d=>({'oldContent':_0x55435d['oldContent'],'newContent':_0x55435d[_0x284d5e(0xd1)],'mode':_0x55435d[_0x284d5e(0xd6)]||REPLACE_CONFIG[_0x284d5e(0xd2)],'linesLimit':_0x55435d[_0x284d5e(0x11f)]||null}))}))};}['parseXML'](_0x15ebed){const _0x4aaca1=a0_0x302dd,_0x344100=[],_0x46f31c=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x1f497f;while((_0x1f497f=_0x46f31c['exec'](_0x15ebed))!==null){const _0x5ac4ef=_0x1f497f[0x1],_0x2c598f=_0x1f497f[0x2],_0x19dedf=[],_0x26be21=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x12e388;while((_0x12e388=_0x26be21['exec'](_0x2c598f))!==null){const _0x1b8a21=_0x12e388[0x1]||'',_0x276946=_0x12e388[0x2],_0x335f81=this[_0x4aaca1(0x105)](_0x1b8a21,'mode')||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x265813=this[_0x4aaca1(0x105)](_0x1b8a21,'lines-limit'),_0xec1435=/<old-content>([\s\S]*?)<\/old-content>/i[_0x4aaca1(0xf6)](_0x276946);if(!_0xec1435){this['logger']?.['warn'](_0x4aaca1(0x100));continue;}const _0x75a700=_0xec1435[0x1],_0x5d281f=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x276946);if(!_0x5d281f){this['logger']?.[_0x4aaca1(0xdb)](_0x4aaca1(0xd9));continue;}const _0x535e1d=_0x5d281f[0x1],_0x9e9182=this[_0x4aaca1(0x126)](_0x75a700,_0x335f81),_0x137f86=this[_0x4aaca1(0x126)](_0x535e1d,_0x335f81);_0x19dedf['push']({'oldContent':_0x9e9182,'newContent':_0x137f86,'mode':_0x335f81,'linesLimit':_0x265813});}_0x19dedf['length']>0x0&&_0x344100[_0x4aaca1(0xc9)]({'path':_0x5ac4ef,'replacements':_0x19dedf});}return{'files':_0x344100};}[a0_0x302dd(0x105)](_0x397ef9,_0x239c79){const _0x110d21=a0_0x302dd,_0x220011=new RegExp(_0x239c79+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0xc5d0c0=_0x220011[_0x110d21(0xf6)](_0x397ef9);return _0xc5d0c0?_0xc5d0c0[0x1]:null;}[a0_0x302dd(0x126)](_0x13977e,_0x15d00c){const _0x44b2ca=a0_0x302dd;switch(_0x15d00c){case'newlines':return _0x13977e[_0x44b2ca(0xfe)](/^\n+|\n+$/g,'');case _0x44b2ca(0x131):return _0x13977e;case _0x44b2ca(0x117):default:return _0x13977e[_0x44b2ca(0x117)]();}}['getRequiredParameters'](){const _0x4b4d3c=a0_0x302dd;return[_0x4b4d3c(0x122)];}['customValidateParameters'](_0x213d23){const _0xc114a8=a0_0x302dd,_0x4c101e=[];if(!_0x213d23['files']||!Array['isArray'](_0x213d23['files']))_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0x125));else{_0x213d23[_0xc114a8(0x122)][_0xc114a8(0xde)]===0x0&&_0x4c101e[_0xc114a8(0xc9)]('files\x20array\x20cannot\x20be\x20empty');_0x213d23[_0xc114a8(0x122)]['length']>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x4c101e['push']('Cannot\x20process\x20more\x20than\x20'+this[_0xc114a8(0x128)][_0xc114a8(0x108)]+'\x20files\x20in\x20one\x20operation');for(const _0x41d427 of _0x213d23[_0xc114a8(0x122)]){!_0x41d427[_0xc114a8(0x10e)]&&_0x4c101e[_0xc114a8(0xc9)]('Each\x20file\x20must\x20have\x20a\x20path');_0x41d427[_0xc114a8(0x10e)]&&_0x41d427['path'][_0xc114a8(0x12a)]('..')&&_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0xe2)+_0x41d427[_0xc114a8(0x10e)]);if(!_0x41d427[_0xc114a8(0x10d)]||!Array[_0xc114a8(0xe3)](_0x41d427[_0xc114a8(0x10d)]))_0x4c101e['push'](_0xc114a8(0xd0)+_0x41d427[_0xc114a8(0x10e)]+_0xc114a8(0xdc));else{if(_0x41d427['replacements']['length']===0x0)_0x4c101e['push'](_0xc114a8(0xd0)+_0x41d427[_0xc114a8(0x10e)]+_0xc114a8(0x130));else for(const _0x3e50f1 of _0x41d427['replacements']){!_0x3e50f1['oldContent']&&_0x3e50f1['oldContent']!==''&&_0x4c101e[_0xc114a8(0xc9)]('Replacement\x20in\x20'+_0x41d427['path']+'\x20missing\x20oldContent'),!_0x3e50f1['newContent']&&_0x3e50f1['newContent']!==''&&_0x4c101e['push']('Replacement\x20in\x20'+_0x41d427[_0xc114a8(0x10e)]+'\x20missing\x20newContent'),_0x3e50f1['oldContent']&&_0x3e50f1['oldContent']['length']>this['replaceConfig'][_0xc114a8(0xc7)]&&_0x4c101e[_0xc114a8(0xc9)]('oldContent\x20too\x20large\x20(max\x20'+this[_0xc114a8(0x128)]['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x3e50f1[_0xc114a8(0xd1)]&&_0x3e50f1[_0xc114a8(0xd1)]['length']>this['replaceConfig'][_0xc114a8(0x110)]&&_0x4c101e['push'](_0xc114a8(0xe7)+this[_0xc114a8(0x128)][_0xc114a8(0x110)]/0x400+_0xc114a8(0xf2)),_0x3e50f1['mode']&&![_0xc114a8(0x117),'newlines',_0xc114a8(0x131)]['includes'](_0x3e50f1['mode'])&&_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0xeb)+_0x3e50f1['mode']+_0xc114a8(0xec));}}}}if(_0x4c101e[_0xc114a8(0xde)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x4c101e['join'](',\x20'));return{'valid':!![],'errors':[]};}[a0_0x302dd(0x12e)](_0x28a4d3){const _0x246602=a0_0x302dd;if(!_0x28a4d3[_0x246602(0x122)]||!Array['isArray'](_0x28a4d3['files'])||_0x28a4d3['files'][_0x246602(0xde)]===0x0)return![];const _0x5d5fd9=_0x28a4d3[_0x246602(0x122)][0x0];if(!_0x5d5fd9[_0x246602(0x10d)]||!Array[_0x246602(0xe3)](_0x5d5fd9[_0x246602(0x10d)])||_0x5d5fd9['replacements'][_0x246602(0xde)]===0x0)return![];return _0x5d5fd9['replacements'][0x0]['hasOwnProperty']('mode');}async[a0_0x302dd(0xf5)](_0x5a6da2,_0x316b89){const _0x18b91e=a0_0x302dd;typeof _0x5a6da2===_0x18b91e(0xda)&&(this[_0x18b91e(0xdf)]?.['info']('FileContentReplaceTool:\x20Parsing\x20string\x20parameters'),_0x5a6da2=this[_0x18b91e(0xe6)](_0x5a6da2));_0x5a6da2&&typeof _0x5a6da2===_0x18b91e(0xf1)&&_0x5a6da2['files']&&!this['_isNormalizedParams'](_0x5a6da2)&&(this['logger']?.['info']('FileContentReplaceTool:\x20Normalizing\x20object\x20parameters'),_0x5a6da2=this[_0x18b91e(0xfb)](JSON['stringify'](_0x5a6da2)));const {files:_0x15e764}=_0x5a6da2,{projectDir:_0x4f7c12,agentId:_0x3c8f6b,directoryAccess:_0x4d591e}=_0x316b89;let _0x2afd83=_0x4f7c12||process['cwd']();_0x4d591e&&_0x4d591e[_0x18b91e(0x10a)]&&(_0x2afd83=_0x4d591e['workingDirectory'],this[_0x18b91e(0xdf)]?.[_0x18b91e(0xc8)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x4d591e[_0x18b91e(0x10a)],'agentId':_0x3c8f6b}));this[_0x18b91e(0xdf)]?.[_0x18b91e(0xc8)]('Executing\x20file\x20content\x20replace',{'fileCount':_0x15e764['length'],'workingDirectory':_0x2afd83,'agentId':_0x3c8f6b});const _0x196729=[],_0x415a0f={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x46edf6 of _0x15e764){try{const _0xe4baa5=await this[_0x18b91e(0xe1)](_0x46edf6,_0x2afd83,_0x4d591e);_0x196729[_0x18b91e(0xc9)](_0xe4baa5),_0x415a0f[_0x18b91e(0x116)]++,_0xe4baa5['replacementsMade']>0x0&&(_0x415a0f['filesModified']++,_0x415a0f['totalReplacements']+=_0xe4baa5['replacementsMade']),_0xe4baa5['backupCreated']&&_0x415a0f['backupsCreated']++;}catch(_0x573c56){this[_0x18b91e(0xdf)]?.['error']('Error\x20processing\x20file\x20'+_0x46edf6['path'],{'error':_0x573c56['message']}),_0x196729[_0x18b91e(0xc9)]({'filePath':_0x46edf6['path'],'success':![],'error':_0x573c56[_0x18b91e(0xf9)]}),_0x415a0f[_0x18b91e(0x10f)]++;}}return{'success':_0x415a0f[_0x18b91e(0x10f)]===0x0,'results':_0x196729,'statistics':_0x415a0f,'summary':this[_0x18b91e(0x123)](_0x415a0f),'toolUsed':_0x18b91e(0xf0)};}async[a0_0x302dd(0xe1)](_0x465ace,_0x19bcfc,_0x405562){const _0x33f3a2=a0_0x302dd,{path:_0x43a153,replacements:_0x58a103}=_0x465ace,_0x2d026c=a0_0xc3a20f['isAbsolute'](_0x43a153)?_0x43a153:a0_0xc3a20f[_0x33f3a2(0x112)](_0x19bcfc,_0x43a153);if(_0x405562){const _0x58248b=this['isPathAccessible'](_0x2d026c,_0x19bcfc,_0x405562);if(!_0x58248b)throw new Error('Path\x20not\x20accessible:\x20'+_0x43a153);}try{await a0_0x13dd02[_0x33f3a2(0x115)](_0x2d026c);}catch(_0x1660d6){throw new Error('File\x20not\x20found:\x20'+_0x43a153);}const _0x479474=await a0_0x13dd02['stat'](_0x2d026c);if(_0x479474['size']>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error(_0x33f3a2(0xd3)+this[_0x33f3a2(0x128)][_0x33f3a2(0x134)]/(0x400*0x400)+_0x33f3a2(0xd8)+_0x43a153);let _0x4bd1d1=await a0_0x13dd02[_0x33f3a2(0x127)](_0x2d026c,'utf-8');const _0x2966fb=_0x4bd1d1;let _0x3b626a=![];if(this[_0x33f3a2(0x128)]['CREATE_BACKUPS']){const _0xd1c5ef=_0x2d026c+this[_0x33f3a2(0x128)][_0x33f3a2(0xfa)];try{await a0_0x13dd02[_0x33f3a2(0xee)](_0xd1c5ef,_0x2966fb,_0x33f3a2(0x11b)),_0x3b626a=!![];}catch(_0x44c2df){this[_0x33f3a2(0xdf)]?.[_0x33f3a2(0xdb)]('Failed\x20to\x20create\x20backup:\x20'+_0x44c2df[_0x33f3a2(0xf9)]);}}let _0x2f8ecf=0x0;const _0x50c325=[];for(const _0x4f85aa of _0x58a103){const _0xc57977=await this[_0x33f3a2(0xcb)](_0x4bd1d1,_0x4f85aa[_0x33f3a2(0xcf)],_0x4f85aa[_0x33f3a2(0xd1)],_0x4f85aa['linesLimit'],_0x4f85aa['mode']);_0x4bd1d1=_0xc57977['newContent'],_0x2f8ecf+=_0xc57977['count'],_0x50c325[_0x33f3a2(0xc9)]({'oldContent':_0x4f85aa[_0x33f3a2(0xcf)][_0x33f3a2(0x121)](0x0,0x32)+(_0x4f85aa[_0x33f3a2(0xcf)]['length']>0x32?_0x33f3a2(0x111):''),'newContent':_0x4f85aa['newContent']['substring'](0x0,0x32)+(_0x4f85aa['newContent']['length']>0x32?_0x33f3a2(0x111):''),'count':_0xc57977['count'],'mode':_0x4f85aa[_0x33f3a2(0xd6)],'linesLimit':_0x4f85aa['linesLimit']});}_0x2f8ecf>0x0&&await a0_0x13dd02['writeFile'](_0x2d026c,_0x4bd1d1,'utf-8');const _0x371b46=_0x2f8ecf>0x0?this['generateDiff'](_0x2966fb,_0x4bd1d1):null;return{'filePath':_0x43a153,'resolvedPath':_0x2d026c,'success':!![],'replacementsMade':_0x2f8ecf,'backupCreated':_0x3b626a,'replacementDetails':_0x50c325,'diff':_0x371b46,'message':_0x2f8ecf>0x0?_0x33f3a2(0x12b)+_0x2f8ecf+'\x20replacement(s)\x20in\x20'+_0x43a153:'No\x20replacements\x20made\x20in\x20'+_0x43a153+'\x20(content\x20not\x20found)'};}[a0_0x302dd(0xef)](_0x54df71,_0x7fb092,_0x3af0f0){const _0x2bdb97=a0_0x302dd,_0x5bcb2c=a0_0xc3a20f['relative'](_0x7fb092,_0x54df71);if(!_0x5bcb2c['startsWith']('..')&&!a0_0xc3a20f[_0x2bdb97(0x11e)](_0x5bcb2c))return!![];if(_0x3af0f0[_0x2bdb97(0x11c)])for(const _0x23130e of _0x3af0f0['writeEnabledDirectories']){const _0xeaf36c=a0_0xc3a20f[_0x2bdb97(0x106)](_0x23130e,_0x54df71);if(!_0xeaf36c[_0x2bdb97(0xca)]('..')&&!a0_0xc3a20f[_0x2bdb97(0x11e)](_0xeaf36c))return!![];}return![];}async['applyReplacement'](_0x43781c,_0x25d77a,_0x171aab,_0x3cc93d,_0x29334d){const _0x5766da=a0_0x302dd;if(!_0x3cc93d){const _0x31bc75=this['countOccurrences'](_0x43781c,_0x25d77a);if(_0x31bc75===0x0)return{'newContent':_0x43781c,'count':0x0};const _0x5bada2=_0x43781c['split'](_0x25d77a)[_0x5766da(0x107)](_0x171aab);return{'newContent':_0x5bada2,'count':_0x31bc75};}const _0x1b60a3=this[_0x5766da(0xce)](_0x3cc93d),_0x280d1f=_0x43781c[_0x5766da(0x114)]('\x0a');let _0x11093e=0x0;for(let _0x34940c=0x0;_0x34940c<_0x280d1f['length'];_0x34940c++){const _0x2371c7=_0x34940c+0x1;if(_0x1b60a3['has'](_0x2371c7)){if(_0x280d1f[_0x34940c][_0x5766da(0x12a)](_0x25d77a)){const _0x4cf47c=this['countOccurrences'](_0x280d1f[_0x34940c],_0x25d77a);_0x280d1f[_0x34940c]=_0x280d1f[_0x34940c][_0x5766da(0x114)](_0x25d77a)['join'](_0x171aab),_0x11093e+=_0x4cf47c;}}}return{'newContent':_0x280d1f['join']('\x0a'),'count':_0x11093e};}['countOccurrences'](_0x18b41b,_0x2846ff){const _0x536da4=a0_0x302dd;if(!_0x2846ff)return 0x0;return _0x18b41b['split'](_0x2846ff)[_0x536da4(0xde)]-0x1;}[a0_0x302dd(0xce)](_0x249137){const _0x146220=a0_0x302dd,_0x2cfa53=new Set();if(!_0x249137||_0x249137[_0x146220(0x117)]()==='')return _0x2cfa53;const _0x2be4ad=_0x249137['split'](',');for(const _0x23c5a of _0x2be4ad){const _0x641c2f=_0x23c5a[_0x146220(0x117)]();if(_0x641c2f==='')continue;if(_0x641c2f[_0x146220(0x12a)]('-')){const [_0x4fe8a4,_0x5aa537]=_0x641c2f[_0x146220(0x114)]('-')[_0x146220(0xcc)](_0xefb062=>parseInt(_0xefb062[_0x146220(0x117)](),0xa));if(!isNaN(_0x4fe8a4)&&!isNaN(_0x5aa537)&&_0x5aa537-_0x4fe8a4<this['replaceConfig']['MAX_LINE_RANGE_SIZE'])for(let _0x20971b=_0x4fe8a4;_0x20971b<=_0x5aa537;_0x20971b++){_0x2cfa53[_0x146220(0xe9)](_0x20971b);}}else{const _0x171f60=parseInt(_0x641c2f,0xa);!isNaN(_0x171f60)&&_0x2cfa53[_0x146220(0xe9)](_0x171f60);}}return _0x2cfa53;}['generateDiff'](_0xb62cf8,_0x25b1c5){const _0x52bd31=a0_0x302dd,_0x8cfaa6=_0xb62cf8[_0x52bd31(0x114)]('\x0a'),_0x4408c7=_0x25b1c5['split']('\x0a');let _0xd652ca=-0x1,_0x341958=-0x1;const _0xa113b=Math[_0x52bd31(0x133)](_0x8cfaa6['length'],_0x4408c7[_0x52bd31(0xde)]);for(let _0x4e0e1d=0x0;_0x4e0e1d<_0xa113b;_0x4e0e1d++){const _0x818f70=_0x4e0e1d<_0x8cfaa6['length']?_0x8cfaa6[_0x4e0e1d]:'',_0x43c53e=_0x4e0e1d<_0x4408c7[_0x52bd31(0xde)]?_0x4408c7[_0x4e0e1d]:'';if(_0x818f70!==_0x43c53e){if(_0xd652ca===-0x1)_0xd652ca=_0x4e0e1d;_0x341958=_0x4e0e1d;}}if(_0xd652ca===-0x1)return _0x52bd31(0x109);const _0x4f0f8c=this[_0x52bd31(0x128)][_0x52bd31(0x129)],_0xc627ee=Math[_0x52bd31(0x133)](0x0,_0xd652ca-_0x4f0f8c),_0x2e2717=Math['min'](_0xa113b-0x1,_0x341958+_0x4f0f8c);if(_0x2e2717-_0xc627ee>this[_0x52bd31(0x128)]['MAX_DIFF_LINES'])return _0x52bd31(0x10c)+(_0x2e2717-_0xc627ee+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x52bd31(0xea)+(_0xd652ca+0x1)+_0x52bd31(0xf7)+(_0x341958+0x1));let _0x146909='@@\x20-'+(_0xc627ee+0x1)+','+(_0x2e2717-_0xc627ee+0x1)+'\x20+'+(_0xc627ee+0x1)+','+(_0x2e2717-_0xc627ee+0x1)+_0x52bd31(0x12f);for(let _0x3db436=_0xc627ee;_0x3db436<=_0x2e2717;_0x3db436++){const _0x33ac0d=_0x3db436<_0x8cfaa6[_0x52bd31(0xde)]?_0x8cfaa6[_0x3db436]:'',_0xf1feff=_0x3db436<_0x4408c7['length']?_0x4408c7[_0x3db436]:'';_0x33ac0d===_0xf1feff?_0x146909+='\x20\x20'+_0x33ac0d+'\x0a':(_0x146909+='-\x20'+_0x33ac0d+'\x0a',_0x146909+='+\x20'+_0xf1feff+'\x0a');}return _0x146909;}[a0_0x302dd(0x123)](_0x46ed58){const _0x3cbfa6=a0_0x302dd;return(_0x3cbfa6(0xe8)+_0x46ed58['filesProcessed']+_0x3cbfa6(0xdd)+_0x46ed58[_0x3cbfa6(0x120)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x46ed58[_0x3cbfa6(0x119)]+_0x3cbfa6(0xfd)+_0x46ed58[_0x3cbfa6(0xe5)]+_0x3cbfa6(0x11d)+_0x46ed58['errors']+_0x3cbfa6(0xe0))[_0x3cbfa6(0x117)]();}async[a0_0x302dd(0xd5)](_0x369826){const _0x55e618=a0_0x302dd;this['logger']?.[_0x55e618(0xc8)](_0x55e618(0xed),{'operationId':_0x369826});}}export default FileContentReplaceTool;
@@ -1 +1 @@
1
- const a0_0x40da31=a0_0x2751;(function(_0x3f08ed,_0x169edc){const _0x3c6124=a0_0x2751,_0x380415=_0x3f08ed();while(!![]){try{const _0x1fd309=-parseInt(_0x3c6124(0x194))/0x1*(-parseInt(_0x3c6124(0x1d7))/0x2)+-parseInt(_0x3c6124(0x188))/0x3*(-parseInt(_0x3c6124(0x1da))/0x4)+-parseInt(_0x3c6124(0x1b2))/0x5*(parseInt(_0x3c6124(0x177))/0x6)+-parseInt(_0x3c6124(0x1ed))/0x7*(parseInt(_0x3c6124(0x1d5))/0x8)+parseInt(_0x3c6124(0x1dd))/0x9+parseInt(_0x3c6124(0x180))/0xa+-parseInt(_0x3c6124(0x1ec))/0xb*(parseInt(_0x3c6124(0x1c8))/0xc);if(_0x1fd309===_0x169edc)break;else _0x380415['push'](_0x380415['shift']());}catch(_0x39f45e){_0x380415['push'](_0x380415['shift']());}}}(a0_0x3c77,0x8ae38));function a0_0x3c77(){const _0x2d5395=['zMLSzq','Dw5SAw5R','y29Kzq','y29WEuzPBgu','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','y29WEq','yM9VBgvHBG','Dg9ju09tDhjPBMC','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','vw5RBM93BIbHy3rPB24GDhLWztOG','BM9YBwfSAxPL','igj5DgvZihrVia','D3jPDgu','ywDLBNrjza','lMv4zq','CMvZB2X2zvbHDgG','zxH0BMfTzq','AxnbCNjHEq','z2v0t3bLCMf0Aw9UsgLZDg9YEq','y2HLy2TfEgLZDhm','mtjuA2PeqwK','zgLYBMfTzq','DMfSAwrHDgvszwfKqwnJzxnZ','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','CMvZB2X2zq','B3v0Chv0lxbHDgG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','zgvIDwC','zMLSzxn5CW','C3rYAw5NAwz5','v3jVDguG','y3jLyxrLlwrPCG','tgLZDgvKia','oe5WC21luq','BgLZDa','mNrxqLb5va','CgfYC2vqyxjHBwv0zxjZ','tufyx0zjtevFu0LArq','nta5nJH0yK5hsxa','y3jLyxrLuMvSyxrPDMvqyxrO','B3v0Chv0ugf0Aa','otmZmteWmxDsvhj4wa','igj5DgvZicHTyxGG','BgvUz3rO','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','C3rHDa','z2v0v29YA2LUz0rPCMvJDg9YEq','C2L6zq','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','qwn0Aw9Uia','B3bLCMf0Aw9UsgLZDg9YEq','ChvZAa','C291CMnLlxbHDgG','BxrPBwu','uMvHzcbHy2nLC3mGzgvUAwvKigzVCIbZB3vYy2u6ia','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','nZqXmZe3nuDdvw14Cq','nJi5nJe1vNfNEuvl','uMv0CMLLDMvKihn0yxrZigzVCIa','DMfSAwrHDgvxCML0zufJy2vZCW','CMvHC29U','zMLSDgvY','C2XPy2u','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','DgLTzw91Da','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','DxrMoa','zw5JB2rPBMC','igj5DgvZ','CgfYC2vbDhrYAwj1DgvZ','lMjHDa','B2jQzwn0','y29UDgvUDa','A2v5CW','y3DK','C3rYAw5N','zMLSzvbHDgG','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','Bw9Kzq','D3jPDgvgAwXL','y3jLyxrLrgLYCW','ywrKvg9iAxn0B3j5','zgvZDfbHDgG','C3rHDhm','rMfPBgvKihrVig1VDMuG','igfJy2vZCYbKzw5Pzwq6ia','Bg9Nz2vY','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','lMnVBq','rMfPBgvKihrVihDYAxrLigzPBguG','zw50CMLLCW','ywXSB3DLza','rMfPBgvKihrVigrLBgv0zsbMAwXLia','BwTKAxi','Dhj1zq','yxbWzw5K','mtjhz0zcrgO','Bg9N','v3jPDguGywnJzxnZigrLBMLLzdOG','CMvHzezPBgu','Bwf4rMLSzvnPEMu','C291CMnLugf0Aa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','lNnJCG','AM9PBG','mJK2ndiWuwXsDNHd','Aw5JBhvKzxm','zxHPC3rZ','Cgf0Aa','zMLSzs1WyxrO','Bw92zq','igrVzxmGBM90igv4Axn0','uMvHzca','mtu2Cu1XA2T5','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','DhjPBq','yxr0CMLIDxrLCW','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','zgvSzxrLrMLSzq','q3jLyxrLzcbKAxjLy3rVCNKG','Bw92zuzPBgu','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','rMLSzsb0B28GBgfYz2u6ia','nJe1mZy1sM1QB05x','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','zgvSzxrL','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','AxneAxjLy3rVCNK','zgvZDc1WyxrO','zgLYzwn0B3j5','icHIywnRDxaGy3jLyxrLzcK','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','u291CMnLigzPBguGDg9VigXHCMDLoIa','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','ywXSB3DLzerPCMvJDg9YAwvZ','BM93','BgLZDerPCMvJDg9YEq','BwvZC2fNzq','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','z2v0rMLSzvn0yxrZ','ywnJzxnZ','ihrVia','AxnbC3LUyW','yMXVy2TLzev4DgvUC2LVBNm','y3jLyxrLlwrPCNm','CMvHza','BwfW','ywn0Aw9UCW','ywXSB3DLzev4DgvUC2LVBNm','C3vJy2vZCW','qxbWzw5KzwqG','mJuYota1nxPizg1QzW','DhLWzq'];a0_0x3c77=function(){return _0x2d5395;};return a0_0x3c77();}import{BaseTool}from'./baseTool.js';import a0_0x1f654a from'../utilities/tagParser.js';import a0_0x3b81e5 from'../utilities/directoryAccessManager.js';import a0_0x15679f from'fs/promises';import a0_0x5bb6fa from'path';import a0_0x21dd03 from'crypto';function a0_0x2751(_0x205efa,_0x396746){_0x205efa=_0x205efa-0x163;const _0x3c7737=a0_0x3c77();let _0x275126=_0x3c7737[_0x205efa];if(a0_0x2751['diAXXR']===undefined){var _0x1e2176=function(_0x17a14a){const _0x50384c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f654a='',_0x3b81e5='';for(let _0x15679f=0x0,_0x5bb6fa,_0x21dd03,_0x11e512=0x0;_0x21dd03=_0x17a14a['charAt'](_0x11e512++);~_0x21dd03&&(_0x5bb6fa=_0x15679f%0x4?_0x5bb6fa*0x40+_0x21dd03:_0x21dd03,_0x15679f++%0x4)?_0x1f654a+=String['fromCharCode'](0xff&_0x5bb6fa>>(-0x2*_0x15679f&0x6)):0x0){_0x21dd03=_0x50384c['indexOf'](_0x21dd03);}for(let _0x42855b=0x0,_0xf19ced=_0x1f654a['length'];_0x42855b<_0xf19ced;_0x42855b++){_0x3b81e5+='%'+('00'+_0x1f654a['charCodeAt'](_0x42855b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b81e5);};a0_0x2751['VMjJgH']=_0x1e2176,a0_0x2751['fYvGsp']={},a0_0x2751['diAXXR']=!![];}const _0x438c79=_0x3c7737[0x0],_0x95eab5=_0x205efa+_0x438c79,_0x7e0ae=a0_0x2751['fYvGsp'][_0x95eab5];return!_0x7e0ae?(_0x275126=a0_0x2751['VMjJgH'](_0x275126),a0_0x2751['fYvGsp'][_0x95eab5]=_0x275126):_0x275126=_0x7e0ae,_0x275126;}import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x11e512={},_0x42855b=null){const _0x46f79f=a0_0x2751;super(_0x11e512,_0x42855b),this['requiresProject']=!![],this[_0x46f79f(0x1a9)]=![],this['timeout']=_0x11e512[_0x46f79f(0x1f4)]||0x7530,this[_0x46f79f(0x1f3)]=_0x11e512['maxConcurrentOperations']||0x5,this[_0x46f79f(0x17b)]=_0x11e512['maxFileSize']||SYSTEM_DEFAULTS[_0x46f79f(0x1d9)],this[_0x46f79f(0x1af)]=_0x11e512[_0x46f79f(0x1af)]||null,this[_0x46f79f(0x1aa)]=_0x11e512[_0x46f79f(0x1aa)]||[_0x46f79f(0x1c2),_0x46f79f(0x1fc),'.cmd',_0x46f79f(0x17e),_0x46f79f(0x16f)],this[_0x46f79f(0x1a0)]=_0x11e512['allowedDirectories']||null,this[_0x46f79f(0x1e6)]=[],this['directoryAccessManager']=new a0_0x3b81e5(_0x11e512,_0x42855b);}['getDescription'](){const _0x356828=a0_0x2751;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22src/file.js\x22,\x20\x22content\x22:\x20\x22...\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x20(filePath)\x0a-\x20write:\x20Write\x20content\x20to\x20file\x20(outputPath,\x20content)\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x20(filePath,\x20content)\x0a-\x20delete:\x20Delete\x20a\x20file\x20(filePath)\x0a-\x20copy:\x20Copy\x20file\x20(sourcePath,\x20destPath)\x0a-\x20move:\x20Move/rename\x20file\x20(sourcePath,\x20destPath)\x0a-\x20create-dir:\x20Create\x20directory\x20(directory)\x0a-\x20list:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x20(filePath)\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x20(filePath)\x0a\x0aPARAMETERS:\x0a-\x20filePath:\x20Path\x20to\x20file\x20(for\x20read,\x20delete,\x20append,\x20exists,\x20stats)\x0a-\x20outputPath:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20sourcePath:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20destPath:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20create-dir\x20and\x20list\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20createDirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aWrite\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22hello.js\x22,\x20\x22content\x22:\x20\x22console.log(\x27Hello\x27);\x22}]\x0a}\x0a```\x0a\x0aRead\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22package.json\x22}]\x0a}\x0a```\x0a\x0aMultiple\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22copy\x22,\x20\x22sourcePath\x22:\x20\x22template.js\x22,\x20\x22destPath\x22:\x20\x22src/component.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22create-dir\x22,\x20\x22directory\x22:\x20\x22src/components/ui\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math['round'](this['maxFileSize']/0x400/0x400)+_0x356828(0x1f7);}[a0_0x40da31(0x1d8)](_0xf19ced){const _0x8df3cc=a0_0x40da31;try{const _0x555f57={},_0x507afd=[];this['logger']?.[_0x8df3cc(0x1cf)]('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0xf19ced[_0x8df3cc(0x1df)],'contentPreview':_0xf19ced['substring'](0x0,0xc8)});const _0x2c3d7e=[_0x8df3cc(0x1ac),_0x8df3cc(0x196),_0x8df3cc(0x1b9),'move',_0x8df3cc(0x1d3),_0x8df3cc(0x1d6),'exists','stats','append'];for(const _0x20d483 of _0x2c3d7e){const _0x8c3b20=a0_0x1f654a[_0x8df3cc(0x1a5)](_0xf19ced,_0x20d483);for(const _0x309ba1 of _0x8c3b20){const _0x43ddfb={'type':_0x20d483,..._0x309ba1[_0x8df3cc(0x18b)]};_0x43ddfb['file-path']&&(_0x43ddfb[_0x8df3cc(0x202)]=_0x43ddfb[_0x8df3cc(0x184)],delete _0x43ddfb[_0x8df3cc(0x184)]),_0x43ddfb[_0x8df3cc(0x1cd)]&&(_0x43ddfb['outputPath']=_0x43ddfb[_0x8df3cc(0x1cd)],delete _0x43ddfb['output-path']),_0x43ddfb['source-path']&&(_0x43ddfb[_0x8df3cc(0x17c)]=_0x43ddfb[_0x8df3cc(0x1e8)],delete _0x43ddfb[_0x8df3cc(0x1e8)]),_0x43ddfb[_0x8df3cc(0x199)]&&(_0x43ddfb['destPath']=_0x43ddfb['dest-path'],delete _0x43ddfb['dest-path']),_0x43ddfb['create-dirs']&&(_0x43ddfb['createDirs']=_0x43ddfb['create-dirs']==='true',delete _0x43ddfb['create-dirs']),_0x507afd[_0x8df3cc(0x1e7)](_0x43ddfb);}}const _0x132aaf=_0xf19ced['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x3f1eef of _0x132aaf){const _0x1f8434=new a0_0x1f654a(),_0x4c7bbc=_0x1f8434[_0x8df3cc(0x1fb)](_0x3f1eef[0x1]),_0x48ccb4=_0x3f1eef[0x2][_0x8df3cc(0x18a)](),_0x768326={'type':_0x8df3cc(0x1c0),'content':_0x48ccb4,..._0x4c7bbc};_0x768326['output-path']&&(_0x768326['outputPath']=_0x768326['output-path'],delete _0x768326[_0x8df3cc(0x1cd)]),_0x768326['create-dirs']&&(_0x768326['createDirs']=_0x768326[_0x8df3cc(0x1ab)]===_0x8df3cc(0x175),delete _0x768326['create-dirs']),_0x507afd['push'](_0x768326);}const _0x18b7e1=_0xf19ced['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x31c5b3 of _0x18b7e1){const _0x2bd60c=new a0_0x1f654a(),_0xef3c90=_0x2bd60c[_0x8df3cc(0x1fb)](_0x31c5b3[0x1]),_0x4abcc7=_0x31c5b3[0x2]['trim'](),_0x2fa727={'type':_0x8df3cc(0x176),'content':_0x4abcc7,..._0xef3c90};_0x2fa727[_0x8df3cc(0x184)]&&(_0x2fa727[_0x8df3cc(0x202)]=_0x2fa727['file-path'],delete _0x2fa727[_0x8df3cc(0x184)]),_0x507afd['push'](_0x2fa727);}return _0x555f57[_0x8df3cc(0x1ae)]=_0x507afd,_0x555f57['rawContent']=_0xf19ced['trim'](),this[_0x8df3cc(0x16d)]?.['debug'](_0x8df3cc(0x164),{'totalActions':_0x507afd[_0x8df3cc(0x1df)],'actionTypes':_0x507afd['map'](_0x9d1b75=>_0x9d1b75[_0x8df3cc(0x1b3)]),'actions':_0x507afd[_0x8df3cc(0x1ad)](_0x4813a6=>({'type':_0x4813a6[_0x8df3cc(0x1b3)],'filePath':_0x4813a6['filePath'],'outputPath':_0x4813a6[_0x8df3cc(0x1dc)],'hasContent':!!_0x4813a6[_0x8df3cc(0x1fe)]}))}),_0x555f57;}catch(_0x25ea6e){throw new Error(_0x8df3cc(0x192)+_0x25ea6e[_0x8df3cc(0x1a3)]);}}[a0_0x40da31(0x16e)](){const _0x1fa77f=a0_0x40da31;return[_0x1fa77f(0x1ae)];}[a0_0x40da31(0x191)](_0x3f4db0){const _0x588406=a0_0x40da31,_0x1b8518=[];if(!_0x3f4db0[_0x588406(0x1ae)]||!Array[_0x588406(0x1c5)](_0x3f4db0[_0x588406(0x1ae)])||_0x3f4db0[_0x588406(0x1ae)][_0x588406(0x1df)]===0x0)_0x1b8518['push'](_0x588406(0x163));else for(const [_0x172c44,_0x10997e]of _0x3f4db0['actions'][_0x588406(0x171)]()){if(!_0x10997e['type']){_0x1b8518[_0x588406(0x1e7)](_0x588406(0x1e5)+(_0x172c44+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x10997e['type']){case _0x588406(0x1ac):case _0x588406(0x196):case _0x588406(0x182):case'stats':!_0x10997e['filePath']&&_0x1b8518[_0x588406(0x1e7)](_0x588406(0x1e5)+(_0x172c44+0x1)+_0x588406(0x18c)+_0x10997e[_0x588406(0x1b3)]);break;case'write':!_0x10997e[_0x588406(0x1dc)]&&_0x1b8518[_0x588406(0x1e7)](_0x588406(0x1e5)+(_0x172c44+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x10997e[_0x588406(0x1fe)]&&_0x10997e['content']!==''&&_0x1b8518['push'](_0x588406(0x1e5)+(_0x172c44+0x1)+_0x588406(0x1b8));break;case _0x588406(0x176):!_0x10997e[_0x588406(0x202)]&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+_0x588406(0x1e0));!_0x10997e[_0x588406(0x1fe)]&&_0x10997e['content']!==''&&_0x1b8518[_0x588406(0x1e7)](_0x588406(0x1e5)+(_0x172c44+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x10997e[_0x588406(0x17c)]&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x10997e[_0x588406(0x1b3)]);!_0x10997e['destPath']&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x10997e[_0x588406(0x1b3)]);break;case _0x588406(0x1d3):case _0x588406(0x1d6):!_0x10997e['directory']&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+_0x588406(0x19c)+_0x10997e[_0x588406(0x1b3)]);break;default:_0x1b8518['push']('Action\x20'+(_0x172c44+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x10997e['type']);}_0x10997e[_0x588406(0x202)]&&!this['isAllowedFileExtension'](_0x10997e[_0x588406(0x202)])&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x5bb6fa['extname'](_0x10997e['filePath'])),_0x10997e['outputPath']&&!this['isAllowedFileExtension'](_0x10997e[_0x588406(0x1dc)])&&_0x1b8518[_0x588406(0x1e7)]('Action\x20'+(_0x172c44+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x5bb6fa[_0x588406(0x1c4)](_0x10997e[_0x588406(0x1dc)]));}return{'valid':_0x1b8518['length']===0x0,'errors':_0x1b8518};}async['execute'](_0x28dfb8,_0x27ff74){const _0x52b562=a0_0x40da31;if(!_0x28dfb8||typeof _0x28dfb8!==_0x52b562(0x1fd))throw new Error(_0x52b562(0x1a4));const {actions:_0x420b6d}=_0x28dfb8;if(!_0x420b6d)throw new Error(_0x52b562(0x189)+JSON['stringify'](Object[_0x52b562(0x1ff)](_0x28dfb8)));if(!Array[_0x52b562(0x1c5)](_0x420b6d))throw new Error(_0x52b562(0x17d)+typeof _0x420b6d);if(_0x420b6d['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x5c609d,agentId:_0x374726,directoryAccess:_0x3b19f2}=_0x27ff74,_0x41f40e=_0x3b19f2||this[_0x52b562(0x1f6)][_0x52b562(0x19d)]({'workingDirectory':_0x5c609d||process[_0x52b562(0x200)](),'writeEnabledDirectories':[_0x5c609d||process[_0x52b562(0x200)]()],'restrictToProject':!![]});_0x3b19f2&&_0x3b19f2['workingDirectory']?(console[_0x52b562(0x178)](_0x52b562(0x190),_0x3b19f2['workingDirectory']),console[_0x52b562(0x178)]('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON[_0x52b562(0x1d1)](_0x3b19f2,null,0x2))):(console[_0x52b562(0x178)](_0x52b562(0x1bc),_0x5c609d||process[_0x52b562(0x200)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x3b19f2),console[_0x52b562(0x178)](_0x52b562(0x195),_0x5c609d));const _0xf8812e=[];for(const _0x18de65 of _0x420b6d){try{let _0x3d2f88;switch(_0x18de65['type']){case'read':_0x3d2f88=await this['readFile'](_0x18de65['filePath'],_0x41f40e,_0x18de65['encoding']);break;case _0x52b562(0x1c0):_0x3d2f88=await this[_0x52b562(0x166)](_0x18de65[_0x52b562(0x1dc)],_0x18de65['content'],_0x41f40e,{'encoding':_0x18de65['encoding'],'createDirs':_0x18de65[_0x52b562(0x167)]});break;case _0x52b562(0x176):_0x3d2f88=await this['appendToFile'](_0x18de65[_0x52b562(0x202)],_0x18de65['content'],_0x41f40e,_0x18de65[_0x52b562(0x1f9)]);break;case'delete':_0x3d2f88=await this[_0x52b562(0x18d)](_0x18de65['filePath'],_0x41f40e);break;case _0x52b562(0x1b9):_0x3d2f88=await this[_0x52b562(0x1b7)](_0x18de65[_0x52b562(0x17c)],_0x18de65['destPath'],_0x41f40e);break;case _0x52b562(0x185):_0x3d2f88=await this[_0x52b562(0x18f)](_0x18de65[_0x52b562(0x17c)],_0x18de65[_0x52b562(0x169)],_0x41f40e);break;case'create-dir':_0x3d2f88=await this['createDirectory'](_0x18de65[_0x52b562(0x19a)],_0x41f40e);break;case _0x52b562(0x1d6):_0x3d2f88=await this[_0x52b562(0x1a2)](_0x18de65['directory'],_0x41f40e);break;case'exists':_0x3d2f88=await this[_0x52b562(0x1c7)](_0x18de65[_0x52b562(0x202)],_0x41f40e);break;case _0x52b562(0x16a):_0x3d2f88=await this[_0x52b562(0x1a6)](_0x18de65[_0x52b562(0x202)],_0x41f40e);break;default:throw new Error(_0x52b562(0x1bd)+_0x18de65[_0x52b562(0x1b3)]);}_0xf8812e['push'](_0x3d2f88),this['addToHistory'](_0x18de65,_0x3d2f88,_0x27ff74['agentId']);}catch(_0x573673){const _0x1e914f={'success':![],'action':_0x18de65[_0x52b562(0x1b3)],'error':_0x573673[_0x52b562(0x1a3)],'filePath':_0x18de65['filePath']||_0x18de65[_0x52b562(0x1dc)]||_0x18de65['directory']};_0xf8812e['push'](_0x1e914f),this[_0x52b562(0x168)](_0x18de65,_0x1e914f,_0x27ff74[_0x52b562(0x1c1)]);}}return{'success':!![],'actions':_0xf8812e,'executedActions':_0x420b6d['length'],'toolUsed':_0x52b562(0x1d0)};}async[a0_0x40da31(0x17a)](_0x49bb51,_0x1e7f9f,_0x527f0f='utf8'){const _0x346475=a0_0x40da31,_0x38f9e3=this[_0x346475(0x1f6)][_0x346475(0x1e2)](_0x1e7f9f),_0x1e88dc=this['resolvePath'](_0x49bb51,_0x38f9e3),_0x5476c5=this['directoryAccessManager']['validateReadAccess'](_0x1e88dc,_0x1e7f9f);if(!_0x5476c5['allowed'])throw new Error(_0x346475(0x1ce)+_0x5476c5['reason']+'\x20('+_0x5476c5[_0x346475(0x183)]+')');try{const _0x2687cf=await a0_0x15679f['stat'](_0x1e88dc);if(_0x2687cf[_0x346475(0x1e3)]>this['maxFileSize'])throw new Error(_0x346475(0x193)+_0x2687cf[_0x346475(0x1e3)]+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x1e1562=await a0_0x15679f[_0x346475(0x17a)](_0x1e88dc,_0x527f0f);return{'success':!![],'action':_0x346475(0x1ac),'filePath':this[_0x346475(0x1f6)]['createRelativePath'](_0x1e88dc,_0x1e7f9f),'content':_0x1e1562,'size':_0x2687cf[_0x346475(0x1e3)],'encoding':_0x527f0f,'lastModified':_0x2687cf['mtime'][_0x346475(0x1bb)](),'message':_0x346475(0x187)+_0x2687cf['size']+'\x20bytes\x20from\x20'+_0x49bb51};}catch(_0x285127){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x49bb51+':\x20'+_0x285127[_0x346475(0x1a3)]);}}async['writeFile'](_0x11aad9,_0x9e41c5,_0x27a749,_0x49fac2={}){const _0x2b4b6a=a0_0x40da31,{encoding:encoding=_0x2b4b6a(0x1f8),createDirs:createDirs=!![]}=_0x49fac2,_0x155653=this[_0x2b4b6a(0x1f6)]['getWorkingDirectory'](_0x27a749),_0x168736=this['resolvePath'](_0x11aad9,_0x155653),_0xca2d20=this['directoryAccessManager']['validateWriteAccess'](_0x168736,_0x27a749);if(!_0xca2d20[_0x2b4b6a(0x172)])throw new Error('Write\x20access\x20denied:\x20'+_0xca2d20[_0x2b4b6a(0x1f0)]+'\x20('+_0xca2d20['path']+')');try{const _0x225a87=Buffer['byteLength'](_0x9e41c5,encoding);if(_0x225a87>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x225a87+_0x2b4b6a(0x1de)+this['maxFileSize']+')');if(createDirs){const _0x4ae30c=a0_0x5bb6fa['dirname'](_0x168736);await a0_0x15679f[_0x2b4b6a(0x174)](_0x4ae30c,{'recursive':!![]});}let _0x763e2a=null;try{await a0_0x15679f[_0x2b4b6a(0x1a7)](_0x168736),_0x763e2a=_0x168736+'.backup-'+Date[_0x2b4b6a(0x1a1)](),await a0_0x15679f['copyFile'](_0x168736,_0x763e2a);}catch{}await a0_0x15679f['writeFile'](_0x168736,_0x9e41c5,encoding);const _0x6358e5=await a0_0x15679f[_0x2b4b6a(0x1e1)](_0x168736),_0x468f01=this[_0x2b4b6a(0x1f6)][_0x2b4b6a(0x1db)](_0x168736,_0x27a749);return{'success':!![],'action':_0x2b4b6a(0x1c0),'outputPath':_0x468f01,'fullPath':_0x168736,'size':_0x6358e5['size'],'encoding':encoding,'backupPath':_0x763e2a?this[_0x2b4b6a(0x1f6)][_0x2b4b6a(0x1db)](_0x763e2a,_0x27a749):null,'backupFullPath':_0x763e2a||null,'message':_0x2b4b6a(0x1d2)+_0x6358e5[_0x2b4b6a(0x1e3)]+_0x2b4b6a(0x1bf)+_0x168736};}catch(_0x376547){throw new Error(_0x2b4b6a(0x170)+_0x168736+':\x20'+_0x376547['message']);}}async['appendToFile'](_0x3bfe82,_0x3e3ef2,_0x4223f4,_0x4a8442='utf8'){const _0x86d8fd=a0_0x40da31,_0x11cc21=this[_0x86d8fd(0x1f6)][_0x86d8fd(0x1e2)](_0x4223f4),_0x2b5a7d=this['resolvePath'](_0x3bfe82,_0x11cc21),_0x398265=this[_0x86d8fd(0x1f6)]['validateWriteAccess'](_0x2b5a7d,_0x4223f4);if(!_0x398265[_0x86d8fd(0x172)])throw new Error('Write\x20access\x20denied:\x20'+_0x398265['reason']+'\x20('+_0x398265['path']+')');try{let _0x223d38=0x0;try{const _0x396bab=await a0_0x15679f['stat'](_0x2b5a7d);_0x223d38=_0x396bab['size'];}catch{}const _0x52a5d1=Buffer['byteLength'](_0x3e3ef2,_0x4a8442);if(_0x223d38+_0x52a5d1>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x223d38+_0x52a5d1)+'\x20bytes\x20(max\x20'+this[_0x86d8fd(0x17b)]+')');await a0_0x15679f['appendFile'](_0x2b5a7d,_0x3e3ef2,_0x4a8442);const _0x297f4c=await a0_0x15679f['stat'](_0x2b5a7d),_0x428f4e=this[_0x86d8fd(0x1f6)]['createRelativePath'](_0x2b5a7d,_0x4223f4);return{'success':!![],'action':_0x86d8fd(0x176),'filePath':_0x428f4e,'fullPath':_0x2b5a7d,'appendedBytes':_0x52a5d1,'totalSize':_0x297f4c['size'],'encoding':_0x4a8442,'message':_0x86d8fd(0x1b1)+_0x52a5d1+_0x86d8fd(0x1bf)+_0x2b5a7d};}catch(_0x2920db){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x2b5a7d+':\x20'+_0x2920db[_0x86d8fd(0x1a3)]);}}async[a0_0x40da31(0x18d)](_0x53464c,_0x25f252){const _0x3f65e8=a0_0x40da31,_0x50cfe0=this[_0x3f65e8(0x1f6)]['getWorkingDirectory'](_0x25f252),_0x2373d4=this[_0x3f65e8(0x1c3)](_0x53464c,_0x50cfe0),_0xdf3bc1=this['directoryAccessManager'][_0x3f65e8(0x1ef)](_0x2373d4,_0x25f252);if(!_0xdf3bc1['allowed'])throw new Error(_0x3f65e8(0x197)+_0xdf3bc1[_0x3f65e8(0x1f0)]+'\x20('+_0xdf3bc1['path']+')');try{const _0x44a3e3=await a0_0x15679f[_0x3f65e8(0x1e1)](_0x2373d4),_0x2fc1fa=_0x2373d4+'.deleted-backup-'+Date[_0x3f65e8(0x1a1)]();await a0_0x15679f['copyFile'](_0x2373d4,_0x2fc1fa),await a0_0x15679f[_0x3f65e8(0x1b5)](_0x2373d4);const _0x262ed7=this[_0x3f65e8(0x1f6)][_0x3f65e8(0x1db)](_0x2373d4,_0x25f252),_0x1a3271=this['directoryAccessManager']['createRelativePath'](_0x2fc1fa,_0x25f252);return{'success':!![],'action':_0x3f65e8(0x196),'filePath':_0x262ed7,'fullPath':_0x2373d4,'size':_0x44a3e3[_0x3f65e8(0x1e3)],'backupPath':_0x1a3271,'backupFullPath':_0x2fc1fa,'message':'Deleted\x20'+_0x2373d4+_0x3f65e8(0x19b)};}catch(_0x298c77){throw new Error(_0x3f65e8(0x173)+_0x2373d4+':\x20'+_0x298c77['message']);}}async[a0_0x40da31(0x1b7)](_0x243695,_0x5c4212,_0x1c6756){const _0x4deda4=a0_0x40da31,_0x3c4ba8=this['directoryAccessManager']['getWorkingDirectory'](_0x1c6756),_0x11672c=this[_0x4deda4(0x1c3)](_0x243695,_0x3c4ba8),_0x183ca1=this['resolvePath'](_0x5c4212,_0x3c4ba8),_0x34800e=this['directoryAccessManager']['validateReadAccess'](_0x11672c,_0x1c6756);if(!_0x34800e['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x34800e['reason']+'\x20('+_0x34800e['path']+')');const _0x1278ef=this[_0x4deda4(0x1f6)]['validateWriteAccess'](_0x183ca1,_0x1c6756);if(!_0x1278ef[_0x4deda4(0x172)])throw new Error(_0x4deda4(0x1e4)+_0x1278ef['reason']+'\x20('+_0x1278ef['path']+')');try{const _0x900f1d=await a0_0x15679f[_0x4deda4(0x1e1)](_0x11672c);if(_0x900f1d[_0x4deda4(0x1e3)]>this['maxFileSize'])throw new Error(_0x4deda4(0x19e)+_0x900f1d['size']+_0x4deda4(0x1fa));const _0x5f2fe4=a0_0x5bb6fa['dirname'](_0x183ca1);await a0_0x15679f[_0x4deda4(0x174)](_0x5f2fe4,{'recursive':!![]}),await a0_0x15679f[_0x4deda4(0x1b7)](_0x11672c,_0x183ca1);const _0x8cb69d=this['directoryAccessManager'][_0x4deda4(0x1db)](_0x11672c,_0x1c6756),_0xd21515=this[_0x4deda4(0x1f6)]['createRelativePath'](_0x183ca1,_0x1c6756);return{'success':!![],'action':'copy','sourcePath':_0x8cb69d,'destPath':_0xd21515,'sourceFullPath':_0x11672c,'destFullPath':_0x183ca1,'size':_0x900f1d[_0x4deda4(0x1e3)],'message':'Copied\x20'+_0x11672c+'\x20to\x20'+_0x183ca1};}catch(_0x57a6cc){throw new Error('Failed\x20to\x20copy\x20'+_0x11672c+'\x20to\x20'+_0x183ca1+':\x20'+_0x57a6cc['message']);}}async[a0_0x40da31(0x18f)](_0x218414,_0x3a4e3d,_0x122b6f){const _0x299bf2=a0_0x40da31,_0x50ea03=this[_0x299bf2(0x1f6)][_0x299bf2(0x1e2)](_0x122b6f),_0x2927c6=this[_0x299bf2(0x1c3)](_0x218414,_0x50ea03),_0x10ec5a=this[_0x299bf2(0x1c3)](_0x3a4e3d,_0x50ea03),_0x124c5f=this['directoryAccessManager']['validateReadAccess'](_0x2927c6,_0x122b6f);if(!_0x124c5f['allowed'])throw new Error(_0x299bf2(0x1ea)+_0x124c5f[_0x299bf2(0x1f0)]+'\x20('+_0x124c5f['path']+')');const _0x245400=this['directoryAccessManager'][_0x299bf2(0x1ef)](_0x10ec5a,_0x122b6f);if(!_0x245400[_0x299bf2(0x172)])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x245400[_0x299bf2(0x1f0)]+'\x20('+_0x245400['path']+')');try{const _0x315e0d=await a0_0x15679f[_0x299bf2(0x1e1)](_0x2927c6),_0x59f020=a0_0x5bb6fa[_0x299bf2(0x1c9)](_0x10ec5a);await a0_0x15679f['mkdir'](_0x59f020,{'recursive':!![]}),await a0_0x15679f['rename'](_0x2927c6,_0x10ec5a);const _0xb5e79b=this['directoryAccessManager'][_0x299bf2(0x1db)](_0x2927c6,_0x122b6f),_0x54cfb5=this['directoryAccessManager']['createRelativePath'](_0x10ec5a,_0x122b6f);return{'success':!![],'action':_0x299bf2(0x185),'sourcePath':_0xb5e79b,'destPath':_0x54cfb5,'fullSourcePath':_0x2927c6,'fullDestPath':_0x10ec5a,'size':_0x315e0d[_0x299bf2(0x1e3)],'message':'Moved\x20'+_0x218414+'\x20to\x20'+_0x3a4e3d};}catch(_0x12b567){throw new Error(_0x299bf2(0x16b)+_0x218414+_0x299bf2(0x1a8)+_0x3a4e3d+':\x20'+_0x12b567[_0x299bf2(0x1a3)]);}}async['createDirectory'](_0x5e2c5f,_0x59fd87){const _0x57d21d=a0_0x40da31,_0xa26275=this[_0x57d21d(0x1f6)]['getWorkingDirectory'](_0x59fd87),_0x390b34=this[_0x57d21d(0x1c3)](_0x5e2c5f,_0xa26275),_0x32d83e=this['directoryAccessManager'][_0x57d21d(0x1ef)](_0x390b34,_0x59fd87);if(!_0x32d83e[_0x57d21d(0x172)])throw new Error(_0x57d21d(0x179)+_0x32d83e['reason']+'\x20('+_0x32d83e['path']+')');try{await a0_0x15679f[_0x57d21d(0x174)](_0x390b34,{'recursive':!![]});const _0x1c842b=this[_0x57d21d(0x1f6)][_0x57d21d(0x1db)](_0x390b34,_0x59fd87);return{'success':!![],'action':_0x57d21d(0x1d3),'directory':_0x1c842b,'fullPath':_0x390b34,'message':_0x57d21d(0x18e)+_0x5e2c5f};}catch(_0x40c941){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x5e2c5f+':\x20'+_0x40c941[_0x57d21d(0x1a3)]);}}async[a0_0x40da31(0x1a2)](_0x19fef2,_0x5e665a){const _0x4c3145=a0_0x40da31,_0x5996d5=this['directoryAccessManager'][_0x4c3145(0x1e2)](_0x5e665a),_0x193a41=this['resolvePath'](_0x19fef2,_0x5996d5),_0x6f971b=this['directoryAccessManager'][_0x4c3145(0x1ca)](_0x193a41,_0x5e665a);if(!_0x6f971b['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x6f971b['reason']+'\x20('+_0x6f971b[_0x4c3145(0x183)]+')');try{const _0x13eb65=await a0_0x15679f['readdir'](_0x193a41,{'withFileTypes':!![]}),_0x4cb1ef=[];for(const _0x17b422 of _0x13eb65){const _0x2059b8=a0_0x5bb6fa[_0x4c3145(0x17f)](_0x193a41,_0x17b422['name']),_0x54c99f=await a0_0x15679f[_0x4c3145(0x1e1)](_0x2059b8);_0x4cb1ef[_0x4c3145(0x1e7)]({'name':_0x17b422['name'],'type':_0x17b422['isDirectory']()?_0x4c3145(0x19a):_0x4c3145(0x1b4),'size':_0x17b422['isFile']()?_0x54c99f['size']:undefined,'lastModified':_0x54c99f['mtime'][_0x4c3145(0x1bb)](),'permissions':_0x54c99f[_0x4c3145(0x165)],'isSymlink':_0x17b422['isSymbolicLink']()});}const _0x59032c=this['directoryAccessManager'][_0x4c3145(0x1db)](_0x193a41,_0x5e665a);return{'success':!![],'action':_0x4c3145(0x1d6),'directory':_0x59032c,'fullPath':_0x193a41,'contents':_0x4cb1ef,'totalItems':_0x4cb1ef['length'],'directories':_0x4cb1ef['filter'](_0x284579=>_0x284579['type']==='directory')[_0x4c3145(0x1df)],'files':_0x4cb1ef[_0x4c3145(0x1f1)](_0x56fb5f=>_0x56fb5f[_0x4c3145(0x1b3)]==='file')[_0x4c3145(0x1df)],'message':_0x4c3145(0x1d4)+_0x4cb1ef['length']+'\x20items\x20in\x20'+_0x19fef2};}catch(_0x34032c){throw new Error(_0x4c3145(0x19f)+_0x19fef2+':\x20'+_0x34032c['message']);}}async[a0_0x40da31(0x1c7)](_0x143796,_0x2aa967){const _0x42a8a1=a0_0x40da31,_0x2c3fbd=this[_0x42a8a1(0x1f6)][_0x42a8a1(0x1e2)](_0x2aa967),_0x3a1e7e=this[_0x42a8a1(0x1c3)](_0x143796,_0x2c3fbd),_0xe61832=this['directoryAccessManager']['validateReadAccess'](_0x3a1e7e,_0x2aa967);if(!_0xe61832[_0x42a8a1(0x172)])throw new Error(_0x42a8a1(0x1ce)+_0xe61832[_0x42a8a1(0x1f0)]+'\x20('+_0xe61832['path']+')');try{const _0x270166=await a0_0x15679f['stat'](_0x3a1e7e),_0x5ee308=this[_0x42a8a1(0x1f6)]['createRelativePath'](_0x3a1e7e,_0x2aa967);return{'success':!![],'action':_0x42a8a1(0x182),'filePath':_0x5ee308,'fullPath':_0x3a1e7e,'exists':!![],'type':_0x270166['isDirectory']()?_0x42a8a1(0x19a):_0x42a8a1(0x1b4),'message':_0x143796+'\x20exists\x20as\x20'+(_0x270166[_0x42a8a1(0x198)]()?_0x42a8a1(0x19a):_0x42a8a1(0x1b4))};}catch(_0x47bc4b){if(_0x47bc4b[_0x42a8a1(0x1b6)]==='ENOENT'){const _0xc21337=this[_0x42a8a1(0x1f6)]['createRelativePath'](_0x3a1e7e,_0x2aa967);return{'success':!![],'action':_0x42a8a1(0x182),'filePath':_0xc21337,'fullPath':_0x3a1e7e,'exists':![],'message':_0x143796+_0x42a8a1(0x186)};}throw new Error(_0x42a8a1(0x1f5)+_0x143796+':\x20'+_0x47bc4b['message']);}}async[a0_0x40da31(0x1a6)](_0x2e014d,_0x4bae7a){const _0x5e73c8=a0_0x40da31,_0x1be386=this['directoryAccessManager']['getWorkingDirectory'](_0x4bae7a),_0x45a8fc=this[_0x5e73c8(0x1c3)](_0x2e014d,_0x1be386),_0x56e9fc=this['directoryAccessManager'][_0x5e73c8(0x1ca)](_0x45a8fc,_0x4bae7a);if(!_0x56e9fc[_0x5e73c8(0x172)])throw new Error('Read\x20access\x20denied:\x20'+_0x56e9fc['reason']+'\x20('+_0x56e9fc['path']+')');try{const _0xeaa4f3=await a0_0x15679f['stat'](_0x45a8fc),_0x478940=this['directoryAccessManager'][_0x5e73c8(0x1db)](_0x45a8fc,_0x4bae7a);return{'success':!![],'action':_0x5e73c8(0x16a),'filePath':_0x478940,'fullPath':_0x45a8fc,'stats':{'size':_0xeaa4f3[_0x5e73c8(0x1e3)],'type':_0xeaa4f3['isDirectory']()?_0x5e73c8(0x19a):_0x5e73c8(0x1b4),'lastModified':_0xeaa4f3[_0x5e73c8(0x1e9)][_0x5e73c8(0x1bb)](),'lastAccessed':_0xeaa4f3['atime'][_0x5e73c8(0x1bb)](),'created':_0xeaa4f3['birthtime'][_0x5e73c8(0x1bb)](),'permissions':_0xeaa4f3[_0x5e73c8(0x165)],'isSymlink':_0xeaa4f3['isSymbolicLink']()},'message':_0x5e73c8(0x1ee)+_0x2e014d};}catch(_0x2450e2){throw new Error(_0x5e73c8(0x1cb)+_0x2e014d+':\x20'+_0x2450e2[_0x5e73c8(0x1a3)]);}}['resolvePath'](_0x2a392c,_0x56647a){const _0x36601e=a0_0x40da31;if(a0_0x5bb6fa['isAbsolute'](_0x2a392c))return a0_0x5bb6fa[_0x36601e(0x1be)](_0x2a392c);return a0_0x5bb6fa[_0x36601e(0x1cc)](_0x56647a,_0x2a392c);}['validatePathAccess'](_0x5f4358,_0x426320,_0x103310=a0_0x40da31(0x1ac)){const _0x335698=a0_0x40da31,_0x52f532=_0x103310==='write'?this[_0x335698(0x1f6)]['validateWriteAccess'](_0x5f4358,_0x426320):this[_0x335698(0x1f6)][_0x335698(0x1ca)](_0x5f4358,_0x426320);if(!_0x52f532[_0x335698(0x172)])throw new Error(_0x103310+_0x335698(0x16c)+_0x52f532['reason']+'\x20('+_0x52f532[_0x335698(0x183)]+')');return _0x52f532;}[a0_0x40da31(0x1eb)](_0x510302){const _0x4a1006=a0_0x40da31,_0x42161a=a0_0x5bb6fa['extname'](_0x510302)['toLowerCase']();if(this['blockedExtensions'][_0x4a1006(0x181)](_0x42161a))return![];if(this[_0x4a1006(0x1af)]&&!this['allowedExtensions']['includes'](_0x42161a))return![];return!![];}[a0_0x40da31(0x168)](_0x5ce1d4,_0x1fef43,_0x1a539d){const _0xb998df=a0_0x40da31,_0x3ccb62={'timestamp':new Date()['toISOString'](),'agentId':_0x1a539d,'action':_0x5ce1d4[_0xb998df(0x1b3)],'filePath':_0x5ce1d4[_0xb998df(0x202)]||_0x5ce1d4[_0xb998df(0x1dc)]||_0x5ce1d4[_0xb998df(0x19a)],'success':_0x1fef43[_0xb998df(0x1b0)],'size':_0x1fef43['size']};this[_0xb998df(0x1e6)][_0xb998df(0x1e7)](_0x3ccb62),this[_0xb998df(0x1e6)]['length']>0xc8&&(this[_0xb998df(0x1e6)]=this['operationHistory'][_0xb998df(0x1f2)](-0xc8));}['getSupportedActions'](){const _0xf602d3=a0_0x40da31;return[_0xf602d3(0x1ac),_0xf602d3(0x1c0),_0xf602d3(0x176),'delete','copy',_0xf602d3(0x185),'create-dir',_0xf602d3(0x1d6),_0xf602d3(0x182),'stats'];}['getParameterSchema'](){const _0x321ded=a0_0x40da31;return{'type':_0x321ded(0x1fd),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':_0x321ded(0x201)},'sourcePath':{'type':_0x321ded(0x201)},'destPath':{'type':_0x321ded(0x201)},'directory':{'type':'string'},'content':{'type':_0x321ded(0x201)},'encoding':{'type':'string'},'createDirs':{'type':_0x321ded(0x1ba)}},'required':['type']}}},'required':[_0x321ded(0x1ae)]};}[a0_0x40da31(0x1c6)](_0x536bcc=null){const _0x3682c0=a0_0x40da31;if(_0x536bcc)return this[_0x3682c0(0x1e6)]['filter'](_0x121855=>_0x121855[_0x3682c0(0x1c1)]===_0x536bcc);return[...this['operationHistory']];}}export default FileSystemTool;
1
+ function a0_0x5297(_0x4873aa,_0x135896){_0x4873aa=_0x4873aa-0x1d2;const _0x594050=a0_0x5940();let _0x5297f7=_0x594050[_0x4873aa];if(a0_0x5297['omfqVT']===undefined){var _0x42e79f=function(_0x8eaa2f){const _0x4be18d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4fdb84='',_0x49f1b2='';for(let _0x3a76f4=0x0,_0x4573e1,_0xd5f857,_0x5e27ed=0x0;_0xd5f857=_0x8eaa2f['charAt'](_0x5e27ed++);~_0xd5f857&&(_0x4573e1=_0x3a76f4%0x4?_0x4573e1*0x40+_0xd5f857:_0xd5f857,_0x3a76f4++%0x4)?_0x4fdb84+=String['fromCharCode'](0xff&_0x4573e1>>(-0x2*_0x3a76f4&0x6)):0x0){_0xd5f857=_0x4be18d['indexOf'](_0xd5f857);}for(let _0x5b677c=0x0,_0x5e3c4f=_0x4fdb84['length'];_0x5b677c<_0x5e3c4f;_0x5b677c++){_0x49f1b2+='%'+('00'+_0x4fdb84['charCodeAt'](_0x5b677c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49f1b2);};a0_0x5297['hGkbqi']=_0x42e79f,a0_0x5297['ywltMV']={},a0_0x5297['omfqVT']=!![];}const _0x48b000=_0x594050[0x0],_0x1c482b=_0x4873aa+_0x48b000,_0x3dcf88=a0_0x5297['ywltMV'][_0x1c482b];return!_0x3dcf88?(_0x5297f7=a0_0x5297['hGkbqi'](_0x5297f7),a0_0x5297['ywltMV'][_0x1c482b]=_0x5297f7):_0x5297f7=_0x3dcf88,_0x5297f7;}const a0_0x245027=a0_0x5297;(function(_0x36d034,_0x315cb8){const _0x37f318=a0_0x5297,_0x37f41c=_0x36d034();while(!![]){try{const _0x30d55a=-parseInt(_0x37f318(0x247))/0x1*(-parseInt(_0x37f318(0x220))/0x2)+-parseInt(_0x37f318(0x25a))/0x3*(-parseInt(_0x37f318(0x20c))/0x4)+parseInt(_0x37f318(0x216))/0x5+parseInt(_0x37f318(0x1dd))/0x6+-parseInt(_0x37f318(0x1e7))/0x7+-parseInt(_0x37f318(0x23b))/0x8*(parseInt(_0x37f318(0x20a))/0x9)+-parseInt(_0x37f318(0x1fc))/0xa*(parseInt(_0x37f318(0x25b))/0xb);if(_0x30d55a===_0x315cb8)break;else _0x37f41c['push'](_0x37f41c['shift']());}catch(_0x545041){_0x37f41c['push'](_0x37f41c['shift']());}}}(a0_0x5940,0x9924d));import{BaseTool}from'./baseTool.js';import a0_0x4fdb84 from'../utilities/tagParser.js';import a0_0x49f1b2 from'../utilities/directoryAccessManager.js';import a0_0x3a76f4 from'fs/promises';import a0_0x4573e1 from'path';import a0_0xd5f857 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x5e27ed={},_0x5b677c=null){const _0x4e4eee=a0_0x5297;super(_0x5e27ed,_0x5b677c),this[_0x4e4eee(0x237)]=!![],this[_0x4e4eee(0x1f5)]=![],this['timeout']=_0x5e27ed[_0x4e4eee(0x20f)]||0x7530,this['maxConcurrentOperations']=_0x5e27ed[_0x4e4eee(0x224)]||0x5,this[_0x4e4eee(0x217)]=_0x5e27ed[_0x4e4eee(0x217)]||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x5e27ed['allowedExtensions']||null,this[_0x4e4eee(0x252)]=_0x5e27ed['blockedExtensions']||['.exe','.bat','.cmd','.scr',_0x4e4eee(0x231)],this[_0x4e4eee(0x254)]=_0x5e27ed[_0x4e4eee(0x254)]||null,this[_0x4e4eee(0x204)]=[],this[_0x4e4eee(0x250)]=new a0_0x49f1b2(_0x5e27ed,_0x5b677c);}['getDescription'](){const _0x2b7de2=a0_0x5297;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22src/file.js\x22,\x20\x22content\x22:\x20\x22...\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x20(filePath)\x0a-\x20write:\x20Write\x20content\x20to\x20file\x20(outputPath,\x20content)\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x20(filePath,\x20content)\x0a-\x20delete:\x20Delete\x20a\x20file\x20(filePath)\x0a-\x20copy:\x20Copy\x20file\x20(sourcePath,\x20destPath)\x0a-\x20move:\x20Move/rename\x20file\x20(sourcePath,\x20destPath)\x0a-\x20create-dir:\x20Create\x20directory\x20(directory)\x0a-\x20list:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x20(filePath)\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x20(filePath)\x0a\x0aPARAMETERS:\x0a-\x20filePath:\x20Path\x20to\x20file\x20(for\x20read,\x20delete,\x20append,\x20exists,\x20stats)\x0a-\x20outputPath:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20sourcePath:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20destPath:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20create-dir\x20and\x20list\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20createDirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aWrite\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22hello.js\x22,\x20\x22content\x22:\x20\x22console.log(\x27Hello\x27);\x22}]\x0a}\x0a```\x0a\x0aRead\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22package.json\x22}]\x0a}\x0a```\x0a\x0aMultiple\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22copy\x22,\x20\x22sourcePath\x22:\x20\x22template.js\x22,\x20\x22destPath\x22:\x20\x22src/component.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22create-dir\x22,\x20\x22directory\x22:\x20\x22src/components/ui\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x2b7de2(0x233)](this['maxFileSize']/0x400/0x400)+_0x2b7de2(0x240);}['parseParameters'](_0x5e3c4f){const _0xffa6bd=a0_0x5297;try{const _0x1ed127={},_0x1acbad=[];this[_0xffa6bd(0x22f)]?.[_0xffa6bd(0x1dc)](_0xffa6bd(0x264),{'contentLength':_0x5e3c4f['length'],'contentPreview':_0x5e3c4f[_0xffa6bd(0x25c)](0x0,0xc8)});const _0x127c5f=['read',_0xffa6bd(0x21d),'copy','move',_0xffa6bd(0x246),_0xffa6bd(0x1f4),'exists','stats','append'];for(const _0xfd4327 of _0x127c5f){const _0x108de3=a0_0x4fdb84[_0xffa6bd(0x1e3)](_0x5e3c4f,_0xfd4327);for(const _0x26cd38 of _0x108de3){const _0x3f04e1={'type':_0xfd4327,..._0x26cd38['attributes']};_0x3f04e1['file-path']&&(_0x3f04e1[_0xffa6bd(0x222)]=_0x3f04e1[_0xffa6bd(0x1d2)],delete _0x3f04e1['file-path']),_0x3f04e1['output-path']&&(_0x3f04e1[_0xffa6bd(0x242)]=_0x3f04e1['output-path'],delete _0x3f04e1['output-path']),_0x3f04e1['source-path']&&(_0x3f04e1['sourcePath']=_0x3f04e1[_0xffa6bd(0x1ea)],delete _0x3f04e1[_0xffa6bd(0x1ea)]),_0x3f04e1['dest-path']&&(_0x3f04e1['destPath']=_0x3f04e1['dest-path'],delete _0x3f04e1[_0xffa6bd(0x218)]),_0x3f04e1['create-dirs']&&(_0x3f04e1['createDirs']=_0x3f04e1['create-dirs']===_0xffa6bd(0x1e1),delete _0x3f04e1['create-dirs']),_0x1acbad['push'](_0x3f04e1);}}const _0x4d7e5c=_0x5e3c4f[_0xffa6bd(0x25f)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0xc51e48 of _0x4d7e5c){const _0xf031b5=new a0_0x4fdb84(),_0x5e6a55=_0xf031b5[_0xffa6bd(0x23e)](_0xc51e48[0x1]),_0x1018bb=_0xc51e48[0x2]['trim'](),_0xe78be3={'type':'write','content':_0x1018bb,..._0x5e6a55};_0xe78be3['output-path']&&(_0xe78be3['outputPath']=_0xe78be3['output-path'],delete _0xe78be3[_0xffa6bd(0x235)]),_0xe78be3[_0xffa6bd(0x21e)]&&(_0xe78be3['createDirs']=_0xe78be3['create-dirs']==='true',delete _0xe78be3['create-dirs']),_0x1acbad[_0xffa6bd(0x1f7)](_0xe78be3);}const _0x26dab8=_0x5e3c4f[_0xffa6bd(0x25f)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x18460f of _0x26dab8){const _0x2a07fc=new a0_0x4fdb84(),_0x54b66b=_0x2a07fc['parseAttributes'](_0x18460f[0x1]),_0x3c5a3b=_0x18460f[0x2][_0xffa6bd(0x1d4)](),_0x23a376={'type':_0xffa6bd(0x245),'content':_0x3c5a3b,..._0x54b66b};_0x23a376['file-path']&&(_0x23a376[_0xffa6bd(0x222)]=_0x23a376[_0xffa6bd(0x1d2)],delete _0x23a376[_0xffa6bd(0x1d2)]),_0x1acbad[_0xffa6bd(0x1f7)](_0x23a376);}return _0x1ed127['actions']=_0x1acbad,_0x1ed127['rawContent']=_0x5e3c4f['trim'](),this['logger']?.['debug'](_0xffa6bd(0x23d),{'totalActions':_0x1acbad[_0xffa6bd(0x232)],'actionTypes':_0x1acbad[_0xffa6bd(0x21c)](_0x1fcb12=>_0x1fcb12[_0xffa6bd(0x1eb)]),'actions':_0x1acbad[_0xffa6bd(0x21c)](_0x22c370=>({'type':_0x22c370[_0xffa6bd(0x1eb)],'filePath':_0x22c370[_0xffa6bd(0x222)],'outputPath':_0x22c370[_0xffa6bd(0x242)],'hasContent':!!_0x22c370['content']}))}),_0x1ed127;}catch(_0x30202b){throw new Error(_0xffa6bd(0x211)+_0x30202b[_0xffa6bd(0x206)]);}}[a0_0x245027(0x251)](){return['actions'];}['customValidateParameters'](_0x3268a0){const _0x11058f=a0_0x245027,_0x1a9601=[];if(!_0x3268a0[_0x11058f(0x21a)]||!Array[_0x11058f(0x263)](_0x3268a0['actions'])||_0x3268a0['actions']['length']===0x0)_0x1a9601[_0x11058f(0x1f7)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x143bae,_0x264ccb]of _0x3268a0['actions'][_0x11058f(0x1fa)]()){if(!_0x264ccb[_0x11058f(0x1eb)]){_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x264ccb[_0x11058f(0x1eb)]){case _0x11058f(0x229):case'delete':case'exists':case'stats':!_0x264ccb[_0x11058f(0x222)]&&_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x264ccb['type']);break;case'write':!_0x264ccb[_0x11058f(0x242)]&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x264ccb['content']&&_0x264ccb['content']!==''&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x264ccb[_0x11058f(0x222)]&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x230));!_0x264ccb[_0x11058f(0x261)]&&_0x264ccb[_0x11058f(0x261)]!==''&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x264ccb[_0x11058f(0x202)]&&_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+_0x11058f(0x1ef)+_0x264ccb['type']);!_0x264ccb[_0x11058f(0x241)]&&_0x1a9601[_0x11058f(0x1f7)](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x226)+_0x264ccb['type']);break;case'create-dir':case _0x11058f(0x1f4):!_0x264ccb['directory']&&_0x1a9601['push']('Action\x20'+(_0x143bae+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x264ccb[_0x11058f(0x1eb)]);break;default:_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x264ccb['type']);}_0x264ccb['filePath']&&!this[_0x11058f(0x200)](_0x264ccb[_0x11058f(0x222)])&&_0x1a9601['push']('Action\x20'+(_0x143bae+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x4573e1['extname'](_0x264ccb[_0x11058f(0x222)])),_0x264ccb['outputPath']&&!this['isAllowedFileExtension'](_0x264ccb[_0x11058f(0x242)])&&_0x1a9601[_0x11058f(0x1f7)](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x203)+a0_0x4573e1[_0x11058f(0x256)](_0x264ccb[_0x11058f(0x242)]));}return{'valid':_0x1a9601[_0x11058f(0x232)]===0x0,'errors':_0x1a9601};}async['execute'](_0xdb3dd8,_0x3bbcb7){const _0xe738b=a0_0x245027;if(!_0xdb3dd8||typeof _0xdb3dd8!=='object')throw new Error(_0xe738b(0x207));const {actions:_0x3dfc94}=_0xdb3dd8;if(!_0x3dfc94)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object[_0xe738b(0x20b)](_0xdb3dd8)));if(!Array[_0xe738b(0x263)](_0x3dfc94))throw new Error(_0xe738b(0x23c)+typeof _0x3dfc94);if(_0x3dfc94['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x3d745f,agentId:_0x1332ca,directoryAccess:_0x1330d3}=_0x3bbcb7,_0x15aa42=_0x1330d3||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x3d745f||process['cwd'](),'writeEnabledDirectories':[_0x3d745f||process['cwd']()],'restrictToProject':!![]});_0x1330d3&&_0x1330d3['workingDirectory']?(console['log']('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x1330d3[_0xe738b(0x1de)]),console[_0xe738b(0x228)]('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x1330d3,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x3d745f||process[_0xe738b(0x262)]()),console['log'](_0xe738b(0x243),_0x1330d3),console['log']('FileSystem\x20DEBUG:\x20projectDir\x20is:',_0x3d745f));const _0x1bda22=[];for(const _0x5152a2 of _0x3dfc94){try{let _0x470022;switch(_0x5152a2[_0xe738b(0x1eb)]){case _0xe738b(0x229):_0x470022=await this['readFile'](_0x5152a2['filePath'],_0x15aa42,_0x5152a2[_0xe738b(0x1e2)]);break;case'write':_0x470022=await this[_0xe738b(0x1d3)](_0x5152a2['outputPath'],_0x5152a2['content'],_0x15aa42,{'encoding':_0x5152a2[_0xe738b(0x1e2)],'createDirs':_0x5152a2[_0xe738b(0x1d6)]});break;case _0xe738b(0x245):_0x470022=await this[_0xe738b(0x24a)](_0x5152a2['filePath'],_0x5152a2['content'],_0x15aa42,_0x5152a2[_0xe738b(0x1e2)]);break;case _0xe738b(0x21d):_0x470022=await this[_0xe738b(0x24c)](_0x5152a2['filePath'],_0x15aa42);break;case'copy':_0x470022=await this[_0xe738b(0x227)](_0x5152a2[_0xe738b(0x202)],_0x5152a2['destPath'],_0x15aa42);break;case'move':_0x470022=await this['moveFile'](_0x5152a2['sourcePath'],_0x5152a2['destPath'],_0x15aa42);break;case'create-dir':_0x470022=await this['createDirectory'](_0x5152a2[_0xe738b(0x1e8)],_0x15aa42);break;case _0xe738b(0x1f4):_0x470022=await this['listDirectory'](_0x5152a2[_0xe738b(0x1e8)],_0x15aa42);break;case _0xe738b(0x1df):_0x470022=await this['checkExists'](_0x5152a2['filePath'],_0x15aa42);break;case'stats':_0x470022=await this[_0xe738b(0x24d)](_0x5152a2[_0xe738b(0x222)],_0x15aa42);break;default:throw new Error(_0xe738b(0x212)+_0x5152a2[_0xe738b(0x1eb)]);}_0x1bda22['push'](_0x470022),this['addToHistory'](_0x5152a2,_0x470022,_0x3bbcb7['agentId']);}catch(_0x1635a7){const _0x5521d6={'success':![],'action':_0x5152a2['type'],'error':_0x1635a7[_0xe738b(0x206)],'filePath':_0x5152a2['filePath']||_0x5152a2['outputPath']||_0x5152a2[_0xe738b(0x1e8)]};_0x1bda22['push'](_0x5521d6),this[_0xe738b(0x249)](_0x5152a2,_0x5521d6,_0x3bbcb7[_0xe738b(0x1e9)]);}}return{'success':!![],'actions':_0x1bda22,'executedActions':_0x3dfc94[_0xe738b(0x232)],'toolUsed':_0xe738b(0x23f)};}async[a0_0x245027(0x1da)](_0x33cff3,_0x2d3e08,_0x1f65a6='utf8'){const _0x42df13=a0_0x245027,_0x342dc9=this['directoryAccessManager']['getWorkingDirectory'](_0x2d3e08),_0x2d29a8=this[_0x42df13(0x201)](_0x33cff3,_0x342dc9),_0x287c60=this[_0x42df13(0x250)]['validateReadAccess'](_0x2d29a8,_0x2d3e08);if(!_0x287c60[_0x42df13(0x1f9)])throw new Error('Read\x20access\x20denied:\x20'+_0x287c60[_0x42df13(0x1d9)]+'\x20('+_0x287c60['path']+')');try{const _0x44b9fc=await a0_0x3a76f4[_0x42df13(0x266)](_0x2d29a8);if(_0x44b9fc['size']>this[_0x42df13(0x217)])throw new Error(_0x42df13(0x22a)+_0x44b9fc['size']+'\x20bytes\x20(max\x20'+this[_0x42df13(0x217)]+')');const _0x5f585d=await a0_0x3a76f4[_0x42df13(0x1da)](_0x2d29a8,_0x1f65a6);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x42df13(0x223)](_0x2d29a8,_0x2d3e08),'content':_0x5f585d,'size':_0x44b9fc[_0x42df13(0x205)],'encoding':_0x1f65a6,'lastModified':_0x44b9fc[_0x42df13(0x225)]['toISOString'](),'message':'Read\x20'+_0x44b9fc['size']+_0x42df13(0x210)+_0x33cff3};}catch(_0x155a82){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x33cff3+':\x20'+_0x155a82['message']);}}async[a0_0x245027(0x1d3)](_0x4b9968,_0x35deb9,_0x54954a,_0x26c702={}){const _0x348572=a0_0x245027,{encoding:encoding=_0x348572(0x253),createDirs:createDirs=!![]}=_0x26c702,_0x14f71b=this['directoryAccessManager'][_0x348572(0x1fd)](_0x54954a),_0x2256f9=this['resolvePath'](_0x4b9968,_0x14f71b),_0xd1be03=this[_0x348572(0x250)]['validateWriteAccess'](_0x2256f9,_0x54954a);if(!_0xd1be03['allowed'])throw new Error(_0x348572(0x244)+_0xd1be03['reason']+'\x20('+_0xd1be03[_0x348572(0x234)]+')');try{const _0x46b2b1=Buffer[_0x348572(0x1f1)](_0x35deb9,encoding);if(_0x46b2b1>this[_0x348572(0x217)])throw new Error('Content\x20too\x20large:\x20'+_0x46b2b1+'\x20bytes\x20(max\x20'+this[_0x348572(0x217)]+')');if(createDirs){const _0xeca57a=a0_0x4573e1[_0x348572(0x1e0)](_0x2256f9);await a0_0x3a76f4[_0x348572(0x213)](_0xeca57a,{'recursive':!![]});}let _0x118833=null;try{await a0_0x3a76f4[_0x348572(0x22e)](_0x2256f9),_0x118833=_0x2256f9+'.backup-'+Date['now'](),await a0_0x3a76f4['copyFile'](_0x2256f9,_0x118833);}catch{}await a0_0x3a76f4[_0x348572(0x1d3)](_0x2256f9,_0x35deb9,encoding);const _0x10bf4a=await a0_0x3a76f4[_0x348572(0x266)](_0x2256f9),_0xaf1c1f=this['directoryAccessManager'][_0x348572(0x223)](_0x2256f9,_0x54954a);return{'success':!![],'action':'write','outputPath':_0xaf1c1f,'fullPath':_0x2256f9,'size':_0x10bf4a['size'],'encoding':encoding,'backupPath':_0x118833?this[_0x348572(0x250)][_0x348572(0x223)](_0x118833,_0x54954a):null,'backupFullPath':_0x118833||null,'message':'Wrote\x20'+_0x10bf4a[_0x348572(0x205)]+'\x20bytes\x20to\x20'+_0x2256f9};}catch(_0x37020b){throw new Error(_0x348572(0x221)+_0x2256f9+':\x20'+_0x37020b[_0x348572(0x206)]);}}async[a0_0x245027(0x24a)](_0xb5bb3,_0xfac376,_0x55088d,_0x3d25ae='utf8'){const _0x5f28f9=a0_0x245027,_0xd5213e=this['directoryAccessManager'][_0x5f28f9(0x1fd)](_0x55088d),_0x48855c=this['resolvePath'](_0xb5bb3,_0xd5213e),_0x12bd3c=this[_0x5f28f9(0x250)]['validateWriteAccess'](_0x48855c,_0x55088d);if(!_0x12bd3c['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x12bd3c['reason']+'\x20('+_0x12bd3c[_0x5f28f9(0x234)]+')');try{let _0x505182=0x0;try{const _0x595581=await a0_0x3a76f4['stat'](_0x48855c);_0x505182=_0x595581[_0x5f28f9(0x205)];}catch{}const _0x543494=Buffer[_0x5f28f9(0x1f1)](_0xfac376,_0x3d25ae);if(_0x505182+_0x543494>this[_0x5f28f9(0x217)])throw new Error(_0x5f28f9(0x208)+(_0x505182+_0x543494)+'\x20bytes\x20(max\x20'+this[_0x5f28f9(0x217)]+')');await a0_0x3a76f4['appendFile'](_0x48855c,_0xfac376,_0x3d25ae);const _0x1598e5=await a0_0x3a76f4['stat'](_0x48855c),_0x2189d3=this[_0x5f28f9(0x250)]['createRelativePath'](_0x48855c,_0x55088d);return{'success':!![],'action':_0x5f28f9(0x245),'filePath':_0x2189d3,'fullPath':_0x48855c,'appendedBytes':_0x543494,'totalSize':_0x1598e5['size'],'encoding':_0x3d25ae,'message':_0x5f28f9(0x258)+_0x543494+_0x5f28f9(0x248)+_0x48855c};}catch(_0x3ef060){throw new Error(_0x5f28f9(0x255)+_0x48855c+':\x20'+_0x3ef060[_0x5f28f9(0x206)]);}}async['deleteFile'](_0x285aa2,_0x2fe647){const _0x1ef36d=a0_0x245027,_0x7927d0=this[_0x1ef36d(0x250)]['getWorkingDirectory'](_0x2fe647),_0x29a4d1=this[_0x1ef36d(0x201)](_0x285aa2,_0x7927d0),_0x343477=this['directoryAccessManager']['validateWriteAccess'](_0x29a4d1,_0x2fe647);if(!_0x343477['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x343477['reason']+'\x20('+_0x343477['path']+')');try{const _0x4d27e8=await a0_0x3a76f4['stat'](_0x29a4d1),_0x1d0077=_0x29a4d1+'.deleted-backup-'+Date['now']();await a0_0x3a76f4[_0x1ef36d(0x227)](_0x29a4d1,_0x1d0077),await a0_0x3a76f4['unlink'](_0x29a4d1);const _0x167c83=this[_0x1ef36d(0x250)][_0x1ef36d(0x223)](_0x29a4d1,_0x2fe647),_0x9bc258=this['directoryAccessManager']['createRelativePath'](_0x1d0077,_0x2fe647);return{'success':!![],'action':'delete','filePath':_0x167c83,'fullPath':_0x29a4d1,'size':_0x4d27e8[_0x1ef36d(0x205)],'backupPath':_0x9bc258,'backupFullPath':_0x1d0077,'message':'Deleted\x20'+_0x29a4d1+_0x1ef36d(0x22c)};}catch(_0xb0b5df){throw new Error(_0x1ef36d(0x214)+_0x29a4d1+':\x20'+_0xb0b5df['message']);}}async[a0_0x245027(0x227)](_0xd5098c,_0x3a5e17,_0x417806){const _0x4667c9=a0_0x245027,_0x935a94=this['directoryAccessManager']['getWorkingDirectory'](_0x417806),_0x3d689d=this['resolvePath'](_0xd5098c,_0x935a94),_0x553fae=this['resolvePath'](_0x3a5e17,_0x935a94),_0x497c32=this[_0x4667c9(0x250)][_0x4667c9(0x1f3)](_0x3d689d,_0x417806);if(!_0x497c32['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x497c32[_0x4667c9(0x1d9)]+'\x20('+_0x497c32['path']+')');const _0x523cdf=this['directoryAccessManager']['validateWriteAccess'](_0x553fae,_0x417806);if(!_0x523cdf['allowed'])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x523cdf['reason']+'\x20('+_0x523cdf[_0x4667c9(0x234)]+')');try{const _0xfc16d1=await a0_0x3a76f4[_0x4667c9(0x266)](_0x3d689d);if(_0xfc16d1[_0x4667c9(0x205)]>this['maxFileSize'])throw new Error(_0x4667c9(0x1ed)+_0xfc16d1['size']+'\x20bytes');const _0x1cd837=a0_0x4573e1['dirname'](_0x553fae);await a0_0x3a76f4['mkdir'](_0x1cd837,{'recursive':!![]}),await a0_0x3a76f4[_0x4667c9(0x227)](_0x3d689d,_0x553fae);const _0x1b09aa=this[_0x4667c9(0x250)]['createRelativePath'](_0x3d689d,_0x417806),_0x1dd8ce=this['directoryAccessManager']['createRelativePath'](_0x553fae,_0x417806);return{'success':!![],'action':_0x4667c9(0x1f0),'sourcePath':_0x1b09aa,'destPath':_0x1dd8ce,'sourceFullPath':_0x3d689d,'destFullPath':_0x553fae,'size':_0xfc16d1[_0x4667c9(0x205)],'message':_0x4667c9(0x1f6)+_0x3d689d+_0x4667c9(0x265)+_0x553fae};}catch(_0x5aa5dc){throw new Error(_0x4667c9(0x25d)+_0x3d689d+_0x4667c9(0x265)+_0x553fae+':\x20'+_0x5aa5dc['message']);}}async[a0_0x245027(0x21f)](_0x57e4f9,_0x492dd8,_0x2684ab){const _0x444f71=a0_0x245027,_0x1c8259=this['directoryAccessManager'][_0x444f71(0x1fd)](_0x2684ab),_0xbc555a=this[_0x444f71(0x201)](_0x57e4f9,_0x1c8259),_0x4ca8de=this[_0x444f71(0x201)](_0x492dd8,_0x1c8259),_0x297f9d=this[_0x444f71(0x250)][_0x444f71(0x1f3)](_0xbc555a,_0x2684ab);if(!_0x297f9d[_0x444f71(0x1f9)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x297f9d['reason']+'\x20('+_0x297f9d['path']+')');const _0x51a4ed=this['directoryAccessManager'][_0x444f71(0x259)](_0x4ca8de,_0x2684ab);if(!_0x51a4ed['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x51a4ed[_0x444f71(0x1d9)]+'\x20('+_0x51a4ed['path']+')');try{const _0x5d7f2c=await a0_0x3a76f4['stat'](_0xbc555a),_0x2b64b3=a0_0x4573e1['dirname'](_0x4ca8de);await a0_0x3a76f4[_0x444f71(0x213)](_0x2b64b3,{'recursive':!![]}),await a0_0x3a76f4['rename'](_0xbc555a,_0x4ca8de);const _0x484719=this[_0x444f71(0x250)][_0x444f71(0x223)](_0xbc555a,_0x2684ab),_0x520923=this[_0x444f71(0x250)][_0x444f71(0x223)](_0x4ca8de,_0x2684ab);return{'success':!![],'action':'move','sourcePath':_0x484719,'destPath':_0x520923,'fullSourcePath':_0xbc555a,'fullDestPath':_0x4ca8de,'size':_0x5d7f2c[_0x444f71(0x205)],'message':_0x444f71(0x1f2)+_0x57e4f9+'\x20to\x20'+_0x492dd8};}catch(_0x599fc4){throw new Error('Failed\x20to\x20move\x20'+_0x57e4f9+'\x20to\x20'+_0x492dd8+':\x20'+_0x599fc4[_0x444f71(0x206)]);}}async['createDirectory'](_0x5bd118,_0x3b76e8){const _0x35141d=a0_0x245027,_0x27bdf1=this[_0x35141d(0x250)][_0x35141d(0x1fd)](_0x3b76e8),_0x2e407e=this[_0x35141d(0x201)](_0x5bd118,_0x27bdf1),_0x2aa730=this['directoryAccessManager']['validateWriteAccess'](_0x2e407e,_0x3b76e8);if(!_0x2aa730[_0x35141d(0x1f9)])throw new Error('Write\x20access\x20denied:\x20'+_0x2aa730[_0x35141d(0x1d9)]+'\x20('+_0x2aa730[_0x35141d(0x234)]+')');try{await a0_0x3a76f4[_0x35141d(0x213)](_0x2e407e,{'recursive':!![]});const _0x490b8f=this[_0x35141d(0x250)]['createRelativePath'](_0x2e407e,_0x3b76e8);return{'success':!![],'action':'create-dir','directory':_0x490b8f,'fullPath':_0x2e407e,'message':'Created\x20directory\x20'+_0x5bd118};}catch(_0x3da68e){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x5bd118+':\x20'+_0x3da68e[_0x35141d(0x206)]);}}async['listDirectory'](_0x3728e4,_0x23dbec){const _0x7d4c01=a0_0x245027,_0x4d9f9d=this[_0x7d4c01(0x250)][_0x7d4c01(0x1fd)](_0x23dbec),_0x483d60=this[_0x7d4c01(0x201)](_0x3728e4,_0x4d9f9d),_0x9613=this[_0x7d4c01(0x250)]['validateReadAccess'](_0x483d60,_0x23dbec);if(!_0x9613[_0x7d4c01(0x1f9)])throw new Error(_0x7d4c01(0x20d)+_0x9613[_0x7d4c01(0x1d9)]+'\x20('+_0x9613[_0x7d4c01(0x234)]+')');try{const _0x577734=await a0_0x3a76f4[_0x7d4c01(0x1d7)](_0x483d60,{'withFileTypes':!![]}),_0x534ed0=[];for(const _0x5150f6 of _0x577734){const _0x26bb39=a0_0x4573e1[_0x7d4c01(0x22d)](_0x483d60,_0x5150f6[_0x7d4c01(0x1e4)]),_0x36b10b=await a0_0x3a76f4[_0x7d4c01(0x266)](_0x26bb39);_0x534ed0[_0x7d4c01(0x1f7)]({'name':_0x5150f6[_0x7d4c01(0x1e4)],'type':_0x5150f6['isDirectory']()?_0x7d4c01(0x1e8):'file','size':_0x5150f6['isFile']()?_0x36b10b['size']:undefined,'lastModified':_0x36b10b[_0x7d4c01(0x225)]['toISOString'](),'permissions':_0x36b10b[_0x7d4c01(0x1e5)],'isSymlink':_0x5150f6[_0x7d4c01(0x219)]()});}const _0x404087=this['directoryAccessManager']['createRelativePath'](_0x483d60,_0x23dbec);return{'success':!![],'action':'list','directory':_0x404087,'fullPath':_0x483d60,'contents':_0x534ed0,'totalItems':_0x534ed0['length'],'directories':_0x534ed0['filter'](_0x262c0e=>_0x262c0e[_0x7d4c01(0x1eb)]==='directory')[_0x7d4c01(0x232)],'files':_0x534ed0[_0x7d4c01(0x1d5)](_0x4ee3c2=>_0x4ee3c2['type']==='file')[_0x7d4c01(0x232)],'message':_0x7d4c01(0x1ff)+_0x534ed0['length']+_0x7d4c01(0x22b)+_0x3728e4};}catch(_0x7bb3a8){throw new Error(_0x7d4c01(0x215)+_0x3728e4+':\x20'+_0x7bb3a8[_0x7d4c01(0x206)]);}}async['checkExists'](_0x211ac6,_0x177c10){const _0x692a6b=a0_0x245027,_0x43d656=this['directoryAccessManager'][_0x692a6b(0x1fd)](_0x177c10),_0x5b1c7a=this[_0x692a6b(0x201)](_0x211ac6,_0x43d656),_0x459e93=this['directoryAccessManager'][_0x692a6b(0x1f3)](_0x5b1c7a,_0x177c10);if(!_0x459e93[_0x692a6b(0x1f9)])throw new Error(_0x692a6b(0x20d)+_0x459e93['reason']+'\x20('+_0x459e93[_0x692a6b(0x234)]+')');try{const _0xdf287b=await a0_0x3a76f4['stat'](_0x5b1c7a),_0x1e6f82=this['directoryAccessManager'][_0x692a6b(0x223)](_0x5b1c7a,_0x177c10);return{'success':!![],'action':'exists','filePath':_0x1e6f82,'fullPath':_0x5b1c7a,'exists':!![],'type':_0xdf287b['isDirectory']()?'directory':_0x692a6b(0x236),'message':_0x211ac6+_0x692a6b(0x239)+(_0xdf287b['isDirectory']()?'directory':'file')};}catch(_0x136bee){if(_0x136bee[_0x692a6b(0x1fb)]===_0x692a6b(0x1ee)){const _0x2f9f53=this[_0x692a6b(0x250)][_0x692a6b(0x223)](_0x5b1c7a,_0x177c10);return{'success':!![],'action':'exists','filePath':_0x2f9f53,'fullPath':_0x5b1c7a,'exists':![],'message':_0x211ac6+_0x692a6b(0x24e)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x211ac6+':\x20'+_0x136bee[_0x692a6b(0x206)]);}}async['getFileStats'](_0x471600,_0x517ed8){const _0x3b124f=a0_0x245027,_0x420b74=this[_0x3b124f(0x250)]['getWorkingDirectory'](_0x517ed8),_0x247c1f=this['resolvePath'](_0x471600,_0x420b74),_0x4df6cd=this['directoryAccessManager']['validateReadAccess'](_0x247c1f,_0x517ed8);if(!_0x4df6cd[_0x3b124f(0x1f9)])throw new Error(_0x3b124f(0x20d)+_0x4df6cd['reason']+'\x20('+_0x4df6cd[_0x3b124f(0x234)]+')');try{const _0x13de96=await a0_0x3a76f4['stat'](_0x247c1f),_0x16dd11=this['directoryAccessManager'][_0x3b124f(0x223)](_0x247c1f,_0x517ed8);return{'success':!![],'action':'stats','filePath':_0x16dd11,'fullPath':_0x247c1f,'stats':{'size':_0x13de96['size'],'type':_0x13de96['isDirectory']()?'directory':_0x3b124f(0x236),'lastModified':_0x13de96[_0x3b124f(0x225)]['toISOString'](),'lastAccessed':_0x13de96[_0x3b124f(0x209)]['toISOString'](),'created':_0x13de96[_0x3b124f(0x20e)]['toISOString'](),'permissions':_0x13de96[_0x3b124f(0x1e5)],'isSymlink':_0x13de96['isSymbolicLink']()},'message':_0x3b124f(0x23a)+_0x471600};}catch(_0x2847cb){throw new Error(_0x3b124f(0x1d8)+_0x471600+':\x20'+_0x2847cb[_0x3b124f(0x206)]);}}['resolvePath'](_0x459067,_0xa80136){const _0xc61d7b=a0_0x245027;if(a0_0x4573e1['isAbsolute'](_0x459067))return a0_0x4573e1['normalize'](_0x459067);return a0_0x4573e1[_0xc61d7b(0x1f8)](_0xa80136,_0x459067);}['validatePathAccess'](_0x548fe9,_0x33aa51,_0x1b8824=a0_0x245027(0x229)){const _0x593d00=a0_0x245027,_0x219b3f=_0x1b8824==='write'?this['directoryAccessManager']['validateWriteAccess'](_0x548fe9,_0x33aa51):this['directoryAccessManager'][_0x593d00(0x1f3)](_0x548fe9,_0x33aa51);if(!_0x219b3f['allowed'])throw new Error(_0x1b8824+_0x593d00(0x257)+_0x219b3f['reason']+'\x20('+_0x219b3f['path']+')');return _0x219b3f;}['isAllowedFileExtension'](_0x35529a){const _0x2edc5a=a0_0x245027,_0x2bb251=a0_0x4573e1['extname'](_0x35529a)[_0x2edc5a(0x21b)]();if(this['blockedExtensions']['includes'](_0x2bb251))return![];if(this['allowedExtensions']&&!this[_0x2edc5a(0x25e)][_0x2edc5a(0x1e6)](_0x2bb251))return![];return!![];}[a0_0x245027(0x249)](_0x428d35,_0x147b99,_0xf02348){const _0x2a48aa=a0_0x245027,_0x287f95={'timestamp':new Date()[_0x2a48aa(0x1db)](),'agentId':_0xf02348,'action':_0x428d35[_0x2a48aa(0x1eb)],'filePath':_0x428d35[_0x2a48aa(0x222)]||_0x428d35['outputPath']||_0x428d35['directory'],'success':_0x147b99['success'],'size':_0x147b99[_0x2a48aa(0x205)]};this['operationHistory']['push'](_0x287f95),this['operationHistory'][_0x2a48aa(0x232)]>0xc8&&(this[_0x2a48aa(0x204)]=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x1d0956=a0_0x245027;return[_0x1d0956(0x229),_0x1d0956(0x260),_0x1d0956(0x245),'delete',_0x1d0956(0x1f0),'move',_0x1d0956(0x246),'list','exists','stats'];}['getParameterSchema'](){const _0x20139f=a0_0x245027;return{'type':_0x20139f(0x1fe),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x20139f(0x1fe),'properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':_0x20139f(0x238)},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':'string'},'encoding':{'type':_0x20139f(0x238)},'createDirs':{'type':_0x20139f(0x24f)}},'required':[_0x20139f(0x1eb)]}}},'required':['actions']};}[a0_0x245027(0x24b)](_0x3aa744=null){const _0x36e8f0=a0_0x245027;if(_0x3aa744)return this[_0x36e8f0(0x204)][_0x36e8f0(0x1d5)](_0x336af1=>_0x336af1[_0x36e8f0(0x1e9)]===_0x3aa744);return[...this[_0x36e8f0(0x204)]];}}export default FileSystemTool;function a0_0x5940(){const _0x16d917=['z2v0rMLSzvn0yxrZ','igrVzxmGBM90igv4Axn0','yM9VBgvHBG','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','yMXVy2TLzev4DgvUC2LVBNm','DxrMoa','ywXSB3DLzerPCMvJDg9YAwvZ','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','zxH0BMfTzq','igfJy2vZCYbKzw5Pzwq6ia','qxbWzw5KzwqG','DMfSAwrHDgvxCML0zufJy2vZCW','m1Pzu0LUsq','mZK2zNvtENLX','C3vIC3rYAw5N','rMfPBgvKihrVignVChKG','ywXSB3DLzev4DgvUC2LVBNm','Bwf0y2HbBgW','D3jPDgu','y29UDgvUDa','y3DK','AxnbCNjHEq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','ihrVia','C3rHDa','zMLSzs1WyxrO','D3jPDgvgAwXL','DhjPBq','zMLSDgvY','y3jLyxrLrgLYCW','CMvHzgrPCG','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','CMvHC29U','CMvHzezPBgu','Dg9ju09tDhjPBMC','zgvIDwC','mJK3ndy4A0LPrgHs','D29YA2LUz0rPCMvJDg9YEq','zxHPC3rZ','zgLYBMfTzq','Dhj1zq','zw5JB2rPBMC','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','BMfTzq','Bw9Kzq','Aw5JBhvKzxm','mtm1nJaZm1vxzNHwsG','zgLYzwn0B3j5','ywDLBNrjza','C291CMnLlxbHDgG','DhLWzq','qwn0Aw9Uia','u291CMnLigzPBguGDg9VigXHCMDLoIa','ru5pru5u','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','y29WEq','yNL0zuXLBMD0Aa','tw92zwqG','DMfSAwrHDgvszwfKqwnJzxnZ','BgLZDa','AxnbC3LUyW','q29WAwvKia','ChvZAa','CMvZB2X2zq','ywXSB3DLza','zw50CMLLCW','y29Kzq','mtaZnJiWD2rKtNrA','z2v0v29YA2LUz0rPCMvJDg9YEq','B2jQzwn0','tgLZDgvKia','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','CMvZB2X2zvbHDgG','C291CMnLugf0Aa','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','B3bLCMf0Aw9UsgLZDg9YEq','C2L6zq','BwvZC2fNzq','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','yxrPBwu','ndCZneT6wfn5uW','A2v5CW','nJu4nJeYDuPdBLLK','uMvHzcbHy2nLC3mGzgvUAwvKoIa','yMLYDgH0Aw1L','DgLTzw91Da','igj5DgvZigzYB20G','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','vw5RBM93BIbHy3rPB24GDhLWztOG','BwTKAxi','rMfPBgvKihrVigrLBgv0zsbMAwXLia','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','mtGXnZe5nu55C1Dqsq','Bwf4rMLSzvnPEMu','zgvZDc1WyxrO','AxntEw1IB2XPy0XPBMS','ywn0Aw9UCW','Dg9mB3DLCKnHC2u','BwfW','zgvSzxrL','y3jLyxrLlwrPCNm','Bw92zuzPBgu','ndm5nde2sNf5qujQ','rMfPBgvKihrVihDYAxrLigzPBguG','zMLSzvbHDgG','y3jLyxrLuMvSyxrPDMvqyxrO','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','BxrPBwu','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','y29WEuzPBgu','Bg9N','CMvHza','rMLSzsb0B28GBgfYz2u6ia','igL0zw1ZigLUia','icHIywnRDxaGy3jLyxrLzcK','AM9PBG','ywnJzxnZ','Bg9Nz2vY','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','lMnVBq','BgvUz3rO','CM91BMq','Cgf0Aa','B3v0Chv0lxbHDgG','zMLSzq','CMvXDwLYzxnqCM9Qzwn0','C3rYAw5N','igv4Axn0CYbHCYa','uMv0CMLLDMvKihn0yxrZigzVCIa','mZK5mNnHveHNzW','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','CgfYC2vbDhrYAwj1DgvZ','zMLSzxn5CW','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','zgvZDfbHDgG','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','v3jPDguGywnJzxnZigrLBMLLzdOG','yxbWzw5K','y3jLyxrLlwrPCG','nhPYBvjpEG','igj5DgvZihrVia','ywrKvg9iAxn0B3j5','yxbWzw5Kvg9gAwXL','z2v0t3bLCMf0Aw9UsgLZDg9YEq','zgvSzxrLrMLSzq'];a0_0x5940=function(){return _0x16d917;};return a0_0x5940();}