@loxia-labs/loxia-autopilot-one 1.0.3 → 1.0.4

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 (115) hide show
  1. package/bin/cli.js +1 -1
  2. package/bin/loxia-terminal-v2.js +1 -1
  3. package/bin/loxia-terminal.js +1 -1
  4. package/bin/start-with-terminal.js +1 -1
  5. package/package.json +2 -1
  6. package/scripts/install-scanners.js +1 -1
  7. package/src/analyzers/CSSAnalyzer.js +1 -1
  8. package/src/analyzers/ConfigValidator.js +1 -1
  9. package/src/analyzers/ESLintAnalyzer.js +1 -1
  10. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  11. package/src/analyzers/PrettierFormatter.js +1 -1
  12. package/src/analyzers/PythonAnalyzer.js +1 -1
  13. package/src/analyzers/SecurityAnalyzer.js +1 -1
  14. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  15. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  17. package/src/analyzers/codeCloneDetector/index.js +1 -1
  18. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  19. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  20. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  21. package/src/core/agentPool.js +1 -1
  22. package/src/core/agentScheduler.js +1 -1
  23. package/src/core/contextManager.js +1 -1
  24. package/src/core/messageProcessor.js +1 -1
  25. package/src/core/orchestrator.js +1 -1
  26. package/src/core/stateManager.js +1 -1
  27. package/src/index.js +1 -1
  28. package/src/interfaces/cli.js +1 -1
  29. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  38. package/src/interfaces/terminal/api/apiClient.js +1 -1
  39. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  40. package/src/interfaces/terminal/api/session.js +1 -1
  41. package/src/interfaces/terminal/api/websocket.js +1 -1
  42. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  43. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  44. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  45. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  47. package/src/interfaces/terminal/components/Header.js +1 -1
  48. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  49. package/src/interfaces/terminal/components/InputBox.js +1 -1
  50. package/src/interfaces/terminal/components/Layout.js +1 -1
  51. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  52. package/src/interfaces/terminal/components/MessageList.js +1 -1
  53. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  54. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  55. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  56. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  57. package/src/interfaces/terminal/components/TextInput.js +1 -1
  58. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  59. package/src/interfaces/terminal/config/constants.js +1 -1
  60. package/src/interfaces/terminal/index.js +1 -1
  61. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  62. package/src/interfaces/terminal/state/useAgents.js +1 -1
  63. package/src/interfaces/terminal/state/useConnection.js +1 -1
  64. package/src/interfaces/terminal/state/useMessages.js +1 -1
  65. package/src/interfaces/terminal/state/useTools.js +1 -1
  66. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  67. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  68. package/src/interfaces/terminal/utils/theme.js +1 -1
  69. package/src/interfaces/webServer.js +1 -1
  70. package/src/modules/fileExplorer/controller.js +1 -1
  71. package/src/modules/fileExplorer/index.js +1 -1
  72. package/src/modules/fileExplorer/middleware.js +1 -1
  73. package/src/modules/fileExplorer/routes.js +1 -1
  74. package/src/services/aiService.js +1 -1
  75. package/src/services/apiKeyManager.js +1 -1
  76. package/src/services/benchmarkService.js +1 -1
  77. package/src/services/budgetService.js +1 -1
  78. package/src/services/contextInjectionService.js +1 -1
  79. package/src/services/conversationCompactionService.js +1 -1
  80. package/src/services/errorHandler.js +1 -1
  81. package/src/services/fileAttachmentService.js +1 -1
  82. package/src/services/modelRouterService.js +1 -1
  83. package/src/services/modelsService.js +1 -1
  84. package/src/services/qualityInspector.js +1 -1
  85. package/src/services/tokenCountingService.js +1 -1
  86. package/src/tools/agentCommunicationTool.js +1 -1
  87. package/src/tools/agentDelayTool.js +1 -1
  88. package/src/tools/asyncToolManager.js +1 -1
  89. package/src/tools/baseTool.js +1 -1
  90. package/src/tools/browserTool.js +1 -1
  91. package/src/tools/cloneDetectionTool.js +1 -1
  92. package/src/tools/dependencyResolverTool.js +1 -1
  93. package/src/tools/fileContentReplaceTool.js +1 -1
  94. package/src/tools/fileSystemTool.js +1 -1
  95. package/src/tools/fileTreeTool.js +1 -1
  96. package/src/tools/imageTool.js +1 -1
  97. package/src/tools/importAnalyzerTool.js +1 -1
  98. package/src/tools/jobDoneTool.js +1 -1
  99. package/src/tools/seekTool.js +1 -1
  100. package/src/tools/staticAnalysisTool.js +1 -1
  101. package/src/tools/taskManagerTool.js +1 -1
  102. package/src/tools/terminalTool.js +1 -1
  103. package/src/tools/webTool.js +1 -1
  104. package/src/types/agent.js +1 -1
  105. package/src/types/contextReference.js +1 -1
  106. package/src/types/conversation.js +1 -1
  107. package/src/types/toolCommand.js +1 -1
  108. package/src/utilities/attachmentValidator.js +1 -1
  109. package/src/utilities/configManager.js +1 -1
  110. package/src/utilities/constants.js +1 -1
  111. package/src/utilities/directoryAccessManager.js +1 -1
  112. package/src/utilities/fileProcessor.js +1 -1
  113. package/src/utilities/logger.js +1 -1
  114. package/src/utilities/tagParser.js +1 -1
  115. package/src/utilities/toolConstants.js +1 -1
@@ -1 +1 @@
1
- const a0_0x4e9f0a=a0_0x2701;(function(_0x3a4336,_0x5471f8){const _0x5d4aa1=a0_0x2701,_0x14a7b4=_0x3a4336();while(!![]){try{const _0xb5342d=-parseInt(_0x5d4aa1(0x16a))/0x1*(-parseInt(_0x5d4aa1(0x114))/0x2)+-parseInt(_0x5d4aa1(0x167))/0x3*(parseInt(_0x5d4aa1(0x13e))/0x4)+parseInt(_0x5d4aa1(0x124))/0x5+parseInt(_0x5d4aa1(0x170))/0x6*(-parseInt(_0x5d4aa1(0x109))/0x7)+-parseInt(_0x5d4aa1(0x163))/0x8*(parseInt(_0x5d4aa1(0x117))/0x9)+-parseInt(_0x5d4aa1(0x145))/0xa*(parseInt(_0x5d4aa1(0x11a))/0xb)+parseInt(_0x5d4aa1(0x129))/0xc;if(_0xb5342d===_0x5471f8)break;else _0x14a7b4['push'](_0x14a7b4['shift']());}catch(_0x5bdaa9){_0x14a7b4['push'](_0x14a7b4['shift']());}}}(a0_0x246f,0xb894f));import{promises as a0_0x4101c3}from'fs';import a0_0x175bde from'path';function a0_0x2701(_0x3c2500,_0x1b395b){_0x3c2500=_0x3c2500-0xf5;const _0x246f89=a0_0x246f();let _0x270154=_0x246f89[_0x3c2500];if(a0_0x2701['AWmPNt']===undefined){var _0x38f6af=function(_0x3e4118){const _0x46b12e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4101c3='',_0x175bde='';for(let _0x542411=0x0,_0xbd4818,_0x509b5b,_0x12514a=0x0;_0x509b5b=_0x3e4118['charAt'](_0x12514a++);~_0x509b5b&&(_0xbd4818=_0x542411%0x4?_0xbd4818*0x40+_0x509b5b:_0x509b5b,_0x542411++%0x4)?_0x4101c3+=String['fromCharCode'](0xff&_0xbd4818>>(-0x2*_0x542411&0x6)):0x0){_0x509b5b=_0x46b12e['indexOf'](_0x509b5b);}for(let _0x3a00a4=0x0,_0x48fdce=_0x4101c3['length'];_0x3a00a4<_0x48fdce;_0x3a00a4++){_0x175bde+='%'+('00'+_0x4101c3['charCodeAt'](_0x3a00a4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x175bde);};a0_0x2701['QQQEXZ']=_0x38f6af,a0_0x2701['sJgIQu']={},a0_0x2701['AWmPNt']=!![];}const _0x2d6212=_0x246f89[0x0],_0x2b7d75=_0x3c2500+_0x2d6212,_0x1232ea=a0_0x2701['sJgIQu'][_0x2b7d75];return!_0x1232ea?(_0x270154=a0_0x2701['QQQEXZ'](_0x270154),a0_0x2701['sJgIQu'][_0x2b7d75]=_0x270154):_0x270154=_0x1232ea,_0x270154;}import{exec as a0_0x542411}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0xbd4818 from'../utilities/tagParser.js';const exec=promisify(a0_0x542411),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x4e9f0a(0xf8),'VALID_MODES':[a0_0x4e9f0a(0xf8),'fix','auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':'.backup.json','CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{['getDescription'](){const _0x10e9cb=a0_0x4e9f0a;return _0x10e9cb(0x113);}['parseParameters'](_0x509b5b){const _0x5fb9ac=a0_0x4e9f0a;if(typeof _0x509b5b==='object'&&_0x509b5b!==null)return{'path':_0x509b5b[_0x5fb9ac(0x14b)]||'.','mode':_0x509b5b['mode']||RESOLVER_CONFIG[_0x5fb9ac(0x155)],'includeDev':_0x509b5b[_0x5fb9ac(0x131)]!==undefined?_0x509b5b[_0x5fb9ac(0x131)]:!![]};if(typeof _0x509b5b===_0x5fb9ac(0x140)){const _0x12514a=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x3a00a4=_0x12514a[_0x5fb9ac(0x146)](_0x509b5b);if(_0x3a00a4){const _0x426f20=_0x3a00a4[0x1],_0x71fcf5=_0x3a00a4[0x2],_0x4bb289=/path=["']([^"']*)["']/i['exec'](_0x426f20),_0x44cda3=/mode=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x426f20),_0x29f8d4=/include-dev=["']([^"']*)["']/i['exec'](_0x426f20),_0x218aa4=/<path>(.*?)<\/path>/i,_0x30a894=_0x218aa4['exec'](_0x71fcf5),_0xc7139c=/<mode>(.*?)<\/mode>/i,_0x26d664=_0xc7139c[_0x5fb9ac(0x146)](_0x71fcf5),_0x44b755=/<include-dev>(.*?)<\/include-dev>/i,_0x40ac89=_0x44b755[_0x5fb9ac(0x146)](_0x71fcf5),_0x136e5=(_0x30a894?_0x30a894[0x1][_0x5fb9ac(0x15b)]():null)||(_0x4bb289?_0x4bb289[0x1]:'.'),_0x3b2100=(_0x26d664?_0x26d664[0x1]['trim']():null)||(_0x44cda3?_0x44cda3[0x1]:RESOLVER_CONFIG[_0x5fb9ac(0x155)]),_0x2cc67c=(_0x40ac89?_0x40ac89[0x1][_0x5fb9ac(0x15b)]():null)||(_0x29f8d4?_0x29f8d4[0x1]:'true');return{'path':_0x136e5,'mode':_0x3b2100,'includeDev':this['_parseBoolean'](_0x2cc67c,!![])};}const _0x48fdce=/\[resolve\s+([^\]]*)\]/i,_0x35bf18=_0x48fdce['exec'](_0x509b5b);if(_0x35bf18){const _0x394dd6=_0x35bf18[0x1],_0x534a48=/path=["']([^"']*)["']/i['exec'](_0x394dd6),_0x5692f4=/mode=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x394dd6),_0x14c109=/include-dev=["']([^"']*)["']/i[_0x5fb9ac(0x146)](_0x394dd6);return{'path':_0x534a48?_0x534a48[0x1]:'.','mode':_0x5692f4?_0x5692f4[0x1]:RESOLVER_CONFIG[_0x5fb9ac(0x155)],'includeDev':this['_parseBoolean'](_0x14c109?_0x14c109[0x1]:_0x5fb9ac(0x159),!![])};}throw new Error(_0x5fb9ac(0xfd));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}['_parseBoolean'](_0x323e31,defaultValue=![]){const _0xb64347=a0_0x4e9f0a;if(_0x323e31===undefined||_0x323e31===null)return defaultValue;if(typeof _0x323e31===_0xb64347(0x133))return _0x323e31;if(typeof _0x323e31==='string')return _0x323e31[_0xb64347(0x169)]()==='true'||_0x323e31==='1';return defaultValue;}[a0_0x4e9f0a(0x111)](_0x52c8a5){const _0x113818=a0_0x4e9f0a;if(!_0x52c8a5||typeof _0x52c8a5!==_0x113818(0x138))throw new Error(_0x113818(0x164));if(_0x52c8a5['path']&&typeof _0x52c8a5['path']!=='string')throw new Error(_0x113818(0x16e));if(_0x52c8a5[_0x113818(0x165)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x113818(0x16c)](_0x52c8a5['mode']))throw new Error('Invalid\x20mode:\x20'+_0x52c8a5[_0x113818(0x165)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG[_0x113818(0x14c)]['join'](',\x20'));if(_0x52c8a5[_0x113818(0x131)]!==undefined&&typeof _0x52c8a5['includeDev']!==_0x113818(0x133))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0x4e9f0a(0x15a)](_0xa482e8,_0x183957){const _0x3e3dff=a0_0x4e9f0a,{projectDir:_0x216800,directoryAccess:_0x1fa325}=_0x183957;let _0x10e7b6=_0x216800||process[_0x3e3dff(0x11f)]();_0x1fa325&&_0x1fa325['workingDirectory']&&(_0x10e7b6=_0x1fa325[_0x3e3dff(0x108)]);const _0xaf9425=a0_0x175bde['isAbsolute'](_0xa482e8)?a0_0x175bde[_0x3e3dff(0x125)](_0xa482e8):a0_0x175bde['normalize'](a0_0x175bde['join'](_0x10e7b6,_0xa482e8)),_0x3acfd8=a0_0x175bde['normalize'](_0x10e7b6);if(!_0xaf9425[_0x3e3dff(0x157)](_0x3acfd8))throw new Error('Path\x20traversal\x20detected:\x20'+_0xa482e8+'\x20resolves\x20outside\x20working\x20directory');return _0xaf9425;}async[a0_0x4e9f0a(0xfa)](_0x120f5b){const _0x50603d=a0_0x4e9f0a;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x563fca=_0x120f5b+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x4101c3[_0x50603d(0x15f)](_0x120f5b,_0x563fca),this[_0x50603d(0xf6)]?.['info']('Created\x20backup',{'backupPath':_0x563fca}),_0x563fca;}catch(_0x3b3f79){return this['logger']?.[_0x50603d(0x132)]('Failed\x20to\x20create\x20backup',{'error':_0x3b3f79['message']}),null;}}async['_fetchPackageInfo'](_0x310bac){const _0x2944f6=a0_0x4e9f0a,_0x2cbde1=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x310bac);for(let _0x54f7fb=0x1;_0x54f7fb<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x54f7fb++){try{const _0x3a2347=new AbortController(),_0x132cd5=setTimeout(()=>_0x3a2347[_0x2944f6(0x134)](),RESOLVER_CONFIG[_0x2944f6(0x173)]),_0x2a73a9=await fetch(_0x2cbde1,{'signal':_0x3a2347['signal']});clearTimeout(_0x132cd5);if(!_0x2a73a9['ok']){if(_0x2a73a9['status']===0x194)return this[_0x2944f6(0xf6)]?.[_0x2944f6(0x132)]('Package\x20not\x20found:\x20'+_0x310bac),null;throw new Error(_0x2944f6(0x156)+_0x2a73a9[_0x2944f6(0xfc)]+':\x20'+_0x2a73a9['statusText']);}const _0xb88a0a=await _0x2a73a9[_0x2944f6(0x171)]();if(!_0xb88a0a||typeof _0xb88a0a!=='object'||!_0xb88a0a[_0x2944f6(0x105)])throw new Error(_0x2944f6(0xfe));return _0xb88a0a;}catch(_0x50829c){if(_0x54f7fb<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x2944f6(0xf6)]?.[_0x2944f6(0x115)](_0x2944f6(0x118)+_0x54f7fb+'/'+RESOLVER_CONFIG[_0x2944f6(0x12e)]+_0x2944f6(0x154)+_0x310bac),await new Promise(_0x4d4c2a=>setTimeout(_0x4d4c2a,RESOLVER_CONFIG[_0x2944f6(0x128)]*_0x54f7fb));else return this[_0x2944f6(0xf6)]?.['error'](_0x2944f6(0x161)+_0x310bac+':',_0x50829c['message']),null;}}return null;}async[a0_0x4e9f0a(0x13a)](_0x341d5b,_0xc87d2c){const _0x4cb8ae=a0_0x4e9f0a,_0x1adaae=await this[_0x4cb8ae(0x15e)](_0x341d5b);if(!_0x1adaae)return null;const _0x107fe7=_0x1adaae[_0x4cb8ae(0x105)]?.[_0x4cb8ae(0x15c)];if(!_0x107fe7)return null;const _0x1aabe0=this['_parseVersion'](_0x107fe7);if(!_0x1aabe0)return null;if(this['_isComplexRange'](_0xc87d2c)){const _0x468623=this[_0x4cb8ae(0x11e)](_0xc87d2c),_0x276d42=this['_satisfiesComplexRange'](_0x468623,_0x1aabe0);if(_0x276d42)return _0x107fe7;return null;}const _0x2a3c77=this[_0x4cb8ae(0x10e)](_0xc87d2c);if(!_0x2a3c77)return null;const _0x314b28=this[_0x4cb8ae(0x168)](_0x2a3c77,_0x1aabe0);if(_0x314b28)return _0x2a3c77[_0x4cb8ae(0x122)]+_0x107fe7;return null;}[a0_0x4e9f0a(0x116)](_0x29ecbf){const _0x5e7c22=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x2639ac=_0x5e7c22['exec'](_0x29ecbf);if(!_0x2639ac){const _0x14bbbd=_0x29ecbf['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x14bbbd)return{'major':parseInt(_0x14bbbd[0x1],0xa),'minor':parseInt(_0x14bbbd[0x2],0xa),'patch':parseInt(_0x14bbbd[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x2639ac[0x1],0xa),'minor':parseInt(_0x2639ac[0x2],0xa),'patch':parseInt(_0x2639ac[0x3],0xa),'prerelease':_0x2639ac[0x4]?_0x2639ac[0x4]['split']('.'):null,'build':_0x2639ac[0x5]||null};}['_compareVersions'](_0x2e5f63,_0x193f55){const _0x4aa316=a0_0x4e9f0a;if(_0x2e5f63['major']!==_0x193f55[_0x4aa316(0x102)])return _0x2e5f63['major']-_0x193f55[_0x4aa316(0x102)];if(_0x2e5f63[_0x4aa316(0x100)]!==_0x193f55['minor'])return _0x2e5f63[_0x4aa316(0x100)]-_0x193f55[_0x4aa316(0x100)];if(_0x2e5f63[_0x4aa316(0x11d)]!==_0x193f55[_0x4aa316(0x11d)])return _0x2e5f63[_0x4aa316(0x11d)]-_0x193f55[_0x4aa316(0x11d)];if(!_0x2e5f63['prerelease']&&!_0x193f55['prerelease'])return 0x0;if(!_0x2e5f63[_0x4aa316(0x13c)]&&_0x193f55['prerelease'])return 0x1;if(_0x2e5f63['prerelease']&&!_0x193f55['prerelease'])return-0x1;return this['_comparePrerelease'](_0x2e5f63['prerelease'],_0x193f55['prerelease']);}['_comparePrerelease'](_0x14b9ea,_0x1cabc1){const _0x1385e1=Math['max'](_0x14b9ea['length'],_0x1cabc1['length']);for(let _0x23d0c5=0x0;_0x23d0c5<_0x1385e1;_0x23d0c5++){if(_0x23d0c5>=_0x14b9ea['length'])return-0x1;if(_0x23d0c5>=_0x1cabc1['length'])return 0x1;const _0x48e23e=_0x14b9ea[_0x23d0c5],_0x2bb501=_0x1cabc1[_0x23d0c5],_0x48a2cd=/^\d+$/['test'](_0x48e23e)?parseInt(_0x48e23e,0xa):null,_0x30c8bb=/^\d+$/['test'](_0x2bb501)?parseInt(_0x2bb501,0xa):null;if(_0x48a2cd!==null&&_0x30c8bb!==null){if(_0x48a2cd!==_0x30c8bb)return _0x48a2cd-_0x30c8bb;continue;}if(_0x48a2cd!==null&&_0x30c8bb===null)return-0x1;if(_0x48a2cd===null&&_0x30c8bb!==null)return 0x1;if(_0x48e23e<_0x2bb501)return-0x1;if(_0x48e23e>_0x2bb501)return 0x1;}return 0x0;}['_parseVersionRange'](_0x2c8384){const _0x66638=a0_0x4e9f0a,_0x4cf8ad=_0x2c8384[_0x66638(0x15b)](),_0x306617=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x684697=_0x306617['exec'](_0x4cf8ad);if(_0x684697){const _0x9e03e1=_0x684697[0x1],_0x1491ea=_0x684697[0x3],_0xfb4084=_0x684697[0x5],_0x344a62=_0x9e03e1==='*'||_0x9e03e1[_0x66638(0x169)]()==='x'||_0x1491ea===undefined||_0x1491ea==='*'||_0x1491ea['toLowerCase']()==='x'||_0xfb4084===undefined||_0xfb4084==='*'||_0xfb4084[_0x66638(0x169)]()==='x';if(_0x344a62)return{'prefix':'','operator':'x-range','major':_0x9e03e1==='*'||_0x9e03e1[_0x66638(0x169)]()==='x'?null:parseInt(_0x9e03e1,0xa),'minor':!_0x1491ea||_0x1491ea==='*'||_0x1491ea[_0x66638(0x169)]()==='x'?null:parseInt(_0x1491ea,0xa),'patch':!_0xfb4084||_0xfb4084==='*'||_0xfb4084[_0x66638(0x169)]()==='x'?null:parseInt(_0xfb4084,0xa),'original':_0x2c8384};}let _0x2ed25c='',_0x1a8f70=_0x4cf8ad,_0x3f553f='=';if(_0x4cf8ad[_0x66638(0x157)]('^'))_0x2ed25c='^',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x1),_0x3f553f='^';else{if(_0x4cf8ad[_0x66638(0x157)]('~'))_0x2ed25c='~',_0x1a8f70=_0x4cf8ad['slice'](0x1),_0x3f553f='~';else{if(_0x4cf8ad['startsWith']('>='))_0x2ed25c='>=',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x2)[_0x66638(0x15b)](),_0x3f553f='>=';else{if(_0x4cf8ad[_0x66638(0x157)]('>'))_0x2ed25c='>',_0x1a8f70=_0x4cf8ad['slice'](0x1)['trim'](),_0x3f553f='>';else{if(_0x4cf8ad['startsWith']('<='))_0x2ed25c='<=',_0x1a8f70=_0x4cf8ad['slice'](0x2)['trim'](),_0x3f553f='<=';else _0x4cf8ad['startsWith']('<')&&(_0x2ed25c='<',_0x1a8f70=_0x4cf8ad[_0x66638(0x16f)](0x1)[_0x66638(0x15b)](),_0x3f553f='<');}}}}const _0x43531b=this['_parseVersion'](_0x1a8f70);if(!_0x43531b)return null;return{'prefix':_0x2ed25c,'operator':_0x3f553f,'major':_0x43531b['major'],'minor':_0x43531b[_0x66638(0x100)],'patch':_0x43531b[_0x66638(0x11d)],'prerelease':_0x43531b['prerelease'],'build':_0x43531b[_0x66638(0x143)],'original':_0x2c8384};}[a0_0x4e9f0a(0x168)](_0x274918,_0x5b918f){const _0x7985a1=a0_0x4e9f0a,_0x58c6f3={'major':_0x274918['major'],'minor':_0x274918['minor'],'patch':_0x274918[_0x7985a1(0x11d)],'prerelease':_0x274918[_0x7985a1(0x13c)]||null,'build':_0x274918['build']||null};switch(_0x274918['operator']){case'^':return this['_isCaretUpdateAvailable'](_0x58c6f3,_0x5b918f);case'~':return this[_0x7985a1(0x148)](_0x58c6f3,_0x5b918f);case'>=':case'>':return this[_0x7985a1(0x103)](_0x58c6f3,_0x5b918f);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x274918,_0x5b918f);case'x-range':return this['_isXRangeUpdateAvailable'](_0x274918,_0x5b918f);case'=':default:return this[_0x7985a1(0x15d)](_0x58c6f3,_0x5b918f);}}['_isCaretUpdateAvailable'](_0x319862,_0x5a9596){const _0x3181ec=a0_0x4e9f0a,_0x2b332b=this['_compareVersions'](_0x5a9596,_0x319862);if(_0x2b332b<=0x0)return![];if(_0x319862[_0x3181ec(0x102)]===0x0&&_0x319862['minor']===0x0)return _0x5a9596['major']===0x0&&_0x5a9596['minor']===0x0;if(_0x319862['major']===0x0)return _0x5a9596[_0x3181ec(0x102)]===0x0&&_0x5a9596[_0x3181ec(0x100)]===_0x319862[_0x3181ec(0x100)];return _0x5a9596[_0x3181ec(0x102)]===_0x319862['major'];}[a0_0x4e9f0a(0x148)](_0x178384,_0x3cc40c){const _0x86721a=a0_0x4e9f0a,_0x287b25=this['_compareVersions'](_0x3cc40c,_0x178384);if(_0x287b25<=0x0)return![];return _0x3cc40c[_0x86721a(0x102)]===_0x178384['major']&&_0x3cc40c['minor']===_0x178384[_0x86721a(0x100)];}['_isSimpleUpdateAvailable'](_0x82a790,_0x778ad2){const _0x6bddd3=a0_0x4e9f0a,_0x26671f=this[_0x6bddd3(0x112)](_0x778ad2,_0x82a790);return _0x26671f>0x0;}['_isExactUpdateAvailable'](_0x4b2014,_0x1d1733){const _0x3ca003=a0_0x4e9f0a;return this[_0x3ca003(0x103)](_0x4b2014,_0x1d1733);}[a0_0x4e9f0a(0x144)](_0x2dcae6,_0x4b783a){const _0x26cb68=a0_0x4e9f0a,_0x2ddd16=this['_compareVersions'](_0x4b783a,_0x2dcae6);if(_0x2dcae6[_0x26cb68(0x110)]==='<')return _0x2ddd16<0x0;else{if(_0x2dcae6['operator']==='<=')return _0x2ddd16<=0x0;}return![];}[a0_0x4e9f0a(0x14d)](_0x1f7052,_0x27edec){const _0x16c699=a0_0x4e9f0a;if(_0x1f7052['major']!==null&&_0x27edec['major']!==_0x1f7052['major'])return![];if(_0x1f7052[_0x16c699(0x100)]!==null&&_0x27edec[_0x16c699(0x100)]!==_0x1f7052[_0x16c699(0x100)])return![];if(_0x1f7052[_0x16c699(0x11d)]!==null&&_0x27edec['patch']!==_0x1f7052['patch'])return![];return!![];}['_isComplexRange'](_0x496ab7){const _0x971af9=a0_0x4e9f0a;if(_0x496ab7[_0x971af9(0x16c)]('||'))return!![];const _0x45c160=_0x496ab7['trim']();if(_0x45c160['startsWith']('^')||_0x45c160[_0x971af9(0x157)]('~'))return![];const _0x2a6a70=_0x45c160['split'](/\s+/)['filter'](_0x1b5c5a=>_0x1b5c5a['length']>0x0);if(_0x2a6a70[_0x971af9(0x104)]>0x1){const _0x5c07fd=/^(>=?|<=?|\^|~|[0-9])/;return _0x2a6a70[_0x971af9(0x107)](_0x3a5fea=>_0x5c07fd[_0x971af9(0x10f)](_0x3a5fea));}return![];}['_parseComplexRange'](_0x5e0cd0){const _0x48dbd3=a0_0x4e9f0a;if(_0x5e0cd0['includes']('||')){const _0x2710dc=_0x5e0cd0[_0x48dbd3(0x151)]('||')[_0x48dbd3(0x119)](_0x324314=>_0x324314['trim']());return{'type':'or','ranges':_0x2710dc['map'](_0x5a59d4=>this[_0x48dbd3(0x11e)](_0x5a59d4))};}const _0x4eb6ee=_0x5e0cd0['trim']()[_0x48dbd3(0x151)](/\s+/)[_0x48dbd3(0x120)](_0x363204=>_0x363204[_0x48dbd3(0x104)]>0x0);if(_0x4eb6ee['length']>0x1)return{'type':'and','ranges':_0x4eb6ee[_0x48dbd3(0x119)](_0x3ee4ce=>this[_0x48dbd3(0x10e)](_0x3ee4ce))};return{'type':_0x48dbd3(0x10c),'range':this[_0x48dbd3(0x10e)](_0x5e0cd0)};}[a0_0x4e9f0a(0x172)](_0x265fc1,_0x5bdc29){const _0x5af175=a0_0x4e9f0a;if(!_0x265fc1||!_0x5bdc29)return![];return this[_0x5af175(0x168)](_0x265fc1,_0x5bdc29);}['_satisfiesComplexRange'](_0x454481,_0x427565){const _0x1a1819=a0_0x4e9f0a;if(!_0x454481||!_0x427565)return![];switch(_0x454481['type']){case'simple':return this[_0x1a1819(0x172)](_0x454481[_0x1a1819(0x16b)],_0x427565);case'and':return _0x454481[_0x1a1819(0x126)][_0x1a1819(0x107)](_0x52f056=>this[_0x1a1819(0x172)](_0x52f056,_0x427565));case'or':return _0x454481[_0x1a1819(0x126)]['some'](_0x199baa=>this['_satisfiesComplexRange'](_0x199baa,_0x427565));default:return![];}}async['_checkDependencies'](_0x30a4d2){const _0x281bf6=a0_0x4e9f0a,_0x5ea092={},_0x1caaaf=Object[_0x281bf6(0x162)](_0x30a4d2);for(let _0xef0357=0x0;_0xef0357<_0x1caaaf[_0x281bf6(0x104)];_0xef0357+=RESOLVER_CONFIG[_0x281bf6(0x106)]){const _0x42f129=_0x1caaaf[_0x281bf6(0x16f)](_0xef0357,_0xef0357+RESOLVER_CONFIG[_0x281bf6(0x106)]),_0x53a1ae=_0x42f129['map'](async([_0x1f0ce0,_0x56a353])=>{const _0x43d0b8=_0x281bf6;try{const _0x482c37=await this['_getLatestCompatibleVersion'](_0x1f0ce0,_0x56a353);if(_0x482c37){const _0x5eb28e=_0x56a353['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x1f0ce0,'newVersion':''+_0x5eb28e+_0x482c37,'oldVersion':_0x56a353};}return null;}catch(_0x3bfb51){return this[_0x43d0b8(0xf6)]?.[_0x43d0b8(0x16d)](_0x43d0b8(0x152)+_0x1f0ce0+':',_0x3bfb51['message']),null;}}),_0x2ca877=await Promise['all'](_0x53a1ae);_0x2ca877['forEach'](_0x517e98=>{_0x517e98&&(_0x5ea092[_0x517e98['pkg']]=_0x517e98['newVersion']);});}return _0x5ea092;}async[a0_0x4e9f0a(0xff)](_0x52b04b,_0x2b7ad0={}){const _0x4b35c9=a0_0x4e9f0a;try{this[_0x4b35c9(0x111)](_0x52b04b);const {path:_0x5dfc6f,mode:_0x40b90c,includeDev:_0x4423a9}=_0x52b04b,{projectDir:_0x230f01,agentId:_0x4a1e9d,directoryAccess:_0x69e65a}=_0x2b7ad0,_0x237a99=this[_0x4b35c9(0x15a)](_0x5dfc6f,_0x2b7ad0),_0x5ae1b1=a0_0x175bde['join'](_0x237a99,_0x4b35c9(0x166));this['logger']?.[_0x4b35c9(0x127)](_0x4b35c9(0x153),{'mode':_0x40b90c,'resolvedPath':_0x237a99,'includeDev':_0x4423a9,'agentId':_0x4a1e9d});const _0x4a70af=[];_0x4a70af[_0x4b35c9(0x12d)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x237a99),_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x10a)+_0x40b90c);try{await a0_0x4101c3[_0x4b35c9(0x14a)](_0x5ae1b1);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x5ae1b1,'output':_0x4a70af['join']('\x0a')};}_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x150));const _0x158228=await a0_0x4101c3['readFile'](_0x5ae1b1,'utf-8'),_0x292595=JSON[_0x4b35c9(0x12f)](_0x158228),_0x588f74={..._0x292595[_0x4b35c9(0x10d)]};_0x4423a9&&_0x292595[_0x4b35c9(0x147)]&&Object[_0x4b35c9(0x121)](_0x588f74,_0x292595[_0x4b35c9(0x147)]);if(Object['keys'](_0x588f74)[_0x4b35c9(0x104)]===0x0)return{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x101),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x4a70af['join']('\x0a')};if(Object['keys'](_0x588f74)[_0x4b35c9(0x104)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object[_0x4b35c9(0x149)](_0x588f74)[_0x4b35c9(0x104)]+_0x4b35c9(0x141)+RESOLVER_CONFIG[_0x4b35c9(0xfb)],'output':_0x4a70af['join']('\x0a')};_0x4a70af[_0x4b35c9(0x12d)]('📊\x20Found\x20'+Object[_0x4b35c9(0x149)](_0x588f74)['length']+'\x20dependencies\x20to\x20check'),_0x4a70af['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x11f089=await this['_checkDependencies'](_0x588f74);_0x4a70af['push']('\x0a✅\x20Registry\x20check\x20complete'),_0x4a70af[_0x4b35c9(0x12d)]('📈\x20Updates\x20available:\x20'+Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)]);if(Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)]>0x0){_0x4a70af['push'](_0x4b35c9(0xf9));for(const [_0xe6d88a,_0x2f4062]of Object[_0x4b35c9(0x162)](_0x11f089)){const _0x644b0b=_0x588f74[_0xe6d88a];_0x4a70af['push'](_0x4b35c9(0x10b)+_0xe6d88a+':\x20'+_0x644b0b+'\x20→\x20'+_0x2f4062);}}else _0x4a70af['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x40b90c===_0x4b35c9(0xf8))return Object['keys'](_0x11f089)['length']>0x0&&_0x4a70af['push'](_0x4b35c9(0x158)),{'success':!![],'mode':'check','message':'Found\x20'+Object[_0x4b35c9(0x149)](_0x11f089)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x588f74)[_0x4b35c9(0x104)],'updatesAvailable':Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)],'updatesApplied':0x0,'errors':0x0},'updates':_0x11f089,'output':_0x4a70af[_0x4b35c9(0x13f)]('\x0a')};if((_0x40b90c===_0x4b35c9(0x137)||_0x40b90c==='auto')&&Object['keys'](_0x11f089)['length']>0x0){_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x136));const _0x5792ba=await this['_createBackup'](_0x5ae1b1);_0x5792ba?_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x142)+a0_0x175bde['basename'](_0x5792ba)):_0x4a70af['push'](_0x4b35c9(0x11b));_0x4a70af['push'](_0x4b35c9(0x160));for(const [_0x5a5452,_0x39a619]of Object['entries'](_0x11f089)){_0x292595['dependencies']?.[_0x5a5452]&&(_0x292595[_0x4b35c9(0x10d)][_0x5a5452]=_0x39a619),_0x292595['devDependencies']?.[_0x5a5452]&&(_0x292595[_0x4b35c9(0x147)][_0x5a5452]=_0x39a619);}await a0_0x4101c3['writeFile'](_0x5ae1b1,JSON[_0x4b35c9(0xf7)](_0x292595,null,0x2)+'\x0a'),_0x4a70af['push']('✅\x20package.json\x20updated'),_0x4a70af[_0x4b35c9(0x12d)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x13e780,stderr:_0x43c49c}=await exec('npm\x20install',{'cwd':_0x237a99,'timeout':RESOLVER_CONFIG[_0x4b35c9(0x13b)],'maxBuffer':0x400*0x400*0xa});if(_0x13e780){const _0x57cf7b=_0x13e780[_0x4b35c9(0x15b)]()[_0x4b35c9(0x151)]('\x0a');_0x57cf7b['length']>0xa?_0x4a70af[_0x4b35c9(0x12d)]('\x20\x20'+_0x57cf7b[_0x4b35c9(0x16f)](-0x5)[_0x4b35c9(0x13f)](_0x4b35c9(0x12c))):_0x4a70af['push']('\x20\x20'+_0x13e780['trim']());}_0x43c49c&&!_0x43c49c[_0x4b35c9(0x16c)]('npm\x20WARN')&&_0x4a70af['push']('⚠️\x20\x20'+_0x43c49c['trim']());_0x4a70af['push'](_0x4b35c9(0x139));try{const {stdout:_0x3732c9}=await exec(_0x4b35c9(0x130),{'cwd':_0x237a99,'timeout':0x7530}),_0x5150c3=JSON[_0x4b35c9(0x12f)](_0x3732c9);if(_0x5150c3['dependencies']){_0x4a70af[_0x4b35c9(0x12d)]('\x0a📦\x20Installed\x20versions:');for(const _0x50bb71 of Object['keys'](_0x11f089)){_0x5150c3['dependencies'][_0x50bb71]&&_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x10b)+_0x50bb71+'@'+_0x5150c3[_0x4b35c9(0x10d)][_0x50bb71]['version']);}}}catch(_0x109682){this['logger']?.[_0x4b35c9(0x115)](_0x4b35c9(0x14e),_0x109682[_0x4b35c9(0x11c)]);}return{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x13d)+Object['keys'](_0x11f089)[_0x4b35c9(0x104)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x588f74)['length'],'updatesAvailable':Object[_0x4b35c9(0x149)](_0x11f089)['length'],'updatesApplied':Object[_0x4b35c9(0x149)](_0x11f089)[_0x4b35c9(0x104)],'errors':0x0},'updates':_0x11f089,'backupCreated':_0x5792ba!==null,'backupPath':_0x5792ba,'output':_0x4a70af['join']('\x0a')};}catch(_0x411872){_0x4a70af['push'](_0x4b35c9(0x14f)+_0x411872[_0x4b35c9(0x11c)]);if(_0x5792ba)try{await a0_0x4101c3['copyFile'](_0x5792ba,_0x5ae1b1),_0x4a70af['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x1b1516){_0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x123));}return{'success':![],'mode':_0x40b90c,'error':'npm\x20install\x20failed:\x20'+_0x411872['message'],'statistics':{'totalDependencies':Object[_0x4b35c9(0x149)](_0x588f74)['length'],'updatesAvailable':Object['keys'](_0x11f089)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x11f089,'backupCreated':_0x5792ba!==null,'output':_0x4a70af['join']('\x0a')};}}else{if(_0x40b90c==='fix'||_0x40b90c===_0x4b35c9(0x135))return _0x4a70af[_0x4b35c9(0x12d)](_0x4b35c9(0x12a)),{'success':!![],'mode':_0x40b90c,'message':_0x4b35c9(0x12b),'statistics':{'totalDependencies':Object[_0x4b35c9(0x149)](_0x588f74)[_0x4b35c9(0x104)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x4a70af['join']('\x0a')};}}catch(_0x1783c5){return this['logger']?.[_0x4b35c9(0x16d)](_0x4b35c9(0xf5),_0x1783c5),{'success':![],'error':_0x1783c5[_0x4b35c9(0x11c)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x1783c5[_0x4b35c9(0x11c)]};}}}function a0_0x246f(){const _0x3770d9=['B3bLCMf0B3i','x3zHBgLKyxrLugfYyw1LDgvYCW','x2nVBxbHCMvwzxjZAw9UCW','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','mJjABgn0vgG','zgvIDwC','x3bHCNnLvMvYC2LVBG','ouPjA2DIva','uMv0CNKG','BwfW','mtuWnZbKqvj4wwm','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','BwvZC2fNzq','Cgf0y2G','x3bHCNnLq29TCgXLEfjHBMDL','y3DK','zMLSDgvY','yxnZAwDU','ChjLzML4','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','nZq1mdK0nvDJAMvryq','BM9YBwfSAxPL','CMfUz2vZ','Aw5MBW','uKvuuLLFrevmqvK','mJeYmdu0nZz0r0Lxu3O','cUkCQcboBYb1CgrHDgvZig5LzwrLza','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','cIaG','ChvZAa','uKvuuLLFqvruru1qvfm','CgfYC2u','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','Aw5JBhvKzurLDG','D2fYBG','yM9VBgvHBG','ywjVCNq','yxv0BW','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','zML4','B2jQzwn0','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','tLbnx0nptu1btKrFveLnru9vva','ChjLCMvSzwfZzq','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','mteZmKvLC0XNrW','AM9PBG','C3rYAw5N','ksWGBwf4igfSBg93zwq6ia','4PYfiejHy2T1CcbJCMvHDgvKoIa','yNvPBgq','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','mtqWCwjjr0z0','zxHLyW','zgv2rgvWzw5Kzw5JAwvZ','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','A2v5CW','ywnJzxnZ','Cgf0Aa','vKfmsurFtu9ervm','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BNbTigXZigzHAwXLzdO','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','C3bSAxq','rxjYB3iGy2HLy2TPBMCG','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','igzVCIa','revgqvvmvf9nt0rf','sfruuca','C3rHCNrZv2L0Aa','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','Dhj1zq','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','DhjPBq','Bgf0zxn0','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','x2zLDgnOugfJA2fNzuLUzM8','y29WEuzPBgu','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','rMfPBgvKihrVigzLDgnOia','zw50CMLLCW','odC0nJaWogvtq2zevq','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','Bw9Kzq','CgfJA2fNzs5QC29U','mtq4odLAwe1Juhq','x2LZvxbKyxrLqxzHAwXHyMXL','Dg9mB3DLCKnHC2u','nteWnZfoB0nuzgi','CMfUz2u','Aw5JBhvKzxm','zxjYB3i','Cgf0AcbTDxn0igjLigeGC3rYAw5N','C2XPy2u','nLDoDe9cvW','ANnVBG','x3nHDgLZzMLLC1jHBMDL','uKvhsvnuuLLFveLnru9vva','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','Bg9Nz2vY','C3rYAw5NAwz5','y2HLy2S','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','x2nYzwf0zujHy2T1Ca','tufyx0rfuevorevoq0LfuW','C3rHDhvZ','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','zxHLy3v0zq','BwLUB3i','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','BwfQB3i','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','BgvUz3rO','zgLZDc10ywDZ','tufyx0nptKnvuLjftLrFq0Hfq0Tt','zxzLCNK','D29YA2LUz0rPCMvJDg9YEq','mZGYmJyWmK9JCLL1BW','tw9KztOG','icdIGkiG','C2LTCgXL','zgvWzw5Kzw5JAwvZ','x3bHCNnLvMvYC2LVBLjHBMDL','DgvZDa'];a0_0x246f=function(){return _0x3770d9;};return a0_0x246f();}export default DependencyResolverTool;
1
+ const a0_0xbda7d4=a0_0x45fa;(function(_0x242d86,_0x14d1a1){const _0x307555=a0_0x45fa,_0x3d8c89=_0x242d86();while(!![]){try{const _0x526017=parseInt(_0x307555(0x11c))/0x1+parseInt(_0x307555(0xca))/0x2+parseInt(_0x307555(0xa9))/0x3*(parseInt(_0x307555(0xe4))/0x4)+parseInt(_0x307555(0x119))/0x5+parseInt(_0x307555(0x102))/0x6+-parseInt(_0x307555(0xe5))/0x7+-parseInt(_0x307555(0x111))/0x8;if(_0x526017===_0x14d1a1)break;else _0x3d8c89['push'](_0x3d8c89['shift']());}catch(_0x5925e5){_0x3d8c89['push'](_0x3d8c89['shift']());}}}(a0_0x15e1,0x7f976));import{promises as a0_0x4ffdd1}from'fs';function a0_0x15e1(){const _0x5d0850=['x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','ChjLCMvSzwfZzq','Bg9Nz2vY','Cgf0Aa','Bwf4','tLbnx1jfr0Ltvfjzx1vsta','yw5K','zxHLyW','mtq5ntuZmM9bCLznta','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','A2v5CW','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','uKvuuLLFqvruru1qvfm','BwfW','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Dg9mB3DLCKnHC2u','Ec1Yyw5Nzq','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','uKvuuLLFrevmqvK','AM9PBG','x3nHDgLZzMLLC1jHBMDL','ywjVCNq','tufyx0nptKnvuLjftLrFq0Hfq0Tt','B2jQzwn0','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','qKfds1vqx0vyvevou0LptG','Aw5JBhvKzxm','cUkCQcboBYb1CgrHDgvZig5LzwrLza','Aw5JBhvKzurLDG','C29Tzq','yxv0BW','BwvZC2fNzq','zxzLCNK','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','mJH1zMXnAKK','otGXmZm3sePswwfN','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','ANnVBG','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','z2v0rgvZy3jPChrPB24','Aw5MBW','BNbTigLUC3rHBgW','zgv2rgvWzw5Kzw5JAwvZ','4PQG77Ipica','DgvZDa','yNvPBgq','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','uKvhsvnuuLLFveLnru9vva','D29YA2LUz0rPCMvJDg9YEq','Cgf0y2G','rMfPBgvKihrVignYzwf0zsbIywnRDxa','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','C3rHCNrZv2L0Aa','C3bSAxq','ChvZAa','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','q1jfqvrfx0jbq0Tvufm','x3bHCNnLvMvYC2LVBG','C3rHDhvZ','Bwf0y2G','mZuWmtK0ofDszK5uEa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','zM9YrwfJAa','CgfYC2u','ywnJzxnZ','Bw9Kzq','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','x3zHBgLKyxrLugfYyw1LDgvYCW','iokgKIa','zw50CMLLCW','D2fYBG','x2nOzwnRrgvWzw5Kzw5JAwvZ','Cgf0AcbTDxn0igjLigeGC3rYAw5N','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','y3DK','mtC1nJK0ntzkt05xqNG','yM9VBgvHBG','x3bHCNnLq29TCgXLEfjHBMDL','AxnbyNnVBhv0zq','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','x3bHCNnLvMvYC2LVBLjHBMDL','x2LZvxbKyxrLqxzHAwXHyMXL','C3rYAw5NAwz5','mZe0mJKZmhzuzMXtuq','x3bHCNnLqM9VBgvHBG','C2XPy2u','ndG2mhrzsLzZAG','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','q3jLyxrLzcbIywnRDxa','C3rYAw5N','x2nVBxbHCMvwzxjZAw9UCW','BwLUB3i','ChjLzML4','B3bLCMf0B3i','DhLWzq','zgvIDwC','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','yxnZAwDU','x2nVBxbHCMvqCMvYzwXLyxnL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','CMfUz2vZ','mZGZmtKZz3ntBLns','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQsw52B2nHDgLVBIbtEw50yxG6kIOkcLHntcbgB3jTyxq6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLpGOGidXWyxrOpI4VBxKTChjVAMvJDdWVCgf0Ad4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kica8Aw5JBhvKzs1Kzxy+Dhj1ztWVAw5JBhvKzs1Kzxy+cJWVzgvWzw5Kzw5JEs1YzxnVBhzLpGPGygakcKPtt04GrM9YBwf0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEWOGicaGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWkicaGicjTB2rLiJOGiMnOzwnRiIWkicaGicjPBMnSDwrLrgv2iJOGDhj1zqOGih0kFqPGygakcIOQugfYyw1LDgvYCZOQkGOTicOQCgf0AcOQicHZDhjPBMCSig9WDgLVBMfSktOGugf0Acb0BYbWCM9Qzwn0igrPCMvJDg9YEsb3AxrOihbHy2THz2uUANnVBI4GrgvMyxvSDdOGiI4IcI0GkIPTB2rLkIOGkhn0CMLUzYWGB3b0Aw9UywWPoIbpCgvYyxrPB24GBw9Kzs4Gt3b0Aw9UCZOkicaTicjJAgvJAYiGlsbpBMX5ignOzwnRigzVCIb1CgrHDgvZicHKzwzHDwX0kqOGic0GiMzPEciGlsbvCgrHDguGCgfJA2fNzs5QC29UigfUzcbYDw4GBNbTigLUC3rHBgWkicaTicjHDxrViIaTief1Dg9TyxrPy2fSBhKGzML4igfSBcbJB25MBgLJDhmklsaQkMLUy2X1zgvezxyQkIaOyM9VBgvHBIWGB3b0Aw9UywWPoIbjBMnSDwrLigrLDKrLCgvUzgvUy2LLCY4GrgvMyxvSDdOGDhj1zqOkkIPxAgf0ieL0ierVzxm6kIOklsbdAgvJA3mGBNbTihjLz2LZDhj5igzVCIbSyxrLC3qGy29TCgf0AwjSzsb2zxjZAw9UCWOTifjLC3bLy3rZihnLBxzLCIbYyw5NzxmGkf4Sih4Sid49lcbLDgmUkqOTienYzwf0zxmGyxv0B21HDgLJigjHy2T1ChmGyMvMB3jLig1VzgLMAwnHDgLVBNmklsbsDw5Zig5WBsbPBNn0ywXSigfMDgvYihvWzgf0zxmGkgLUigzPEc9HDxrVig1VzguPcI0GuhjVDMLKzxmGzgv0ywLSzwqGDxbKyxrLihjLCg9YDaOkkIPfEgfTCgXLCZOQkGOkms4Gq2HLy2SGzM9YihvWzgf0zxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kpc9KzxbLBMrLBMn5lxjLC29SDMvYpGPGygakcJiUiezPEcbVDxrKyxrLzcbKzxbLBMrLBMnPzxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Cgf0Ad4Ul215lxbYB2PLy3q8l3bHDgG+cIaGpg1Vzgu+zML4pc9TB2rLpGO8l2rLCgvUzgvUy3KTCMvZB2X2zxi+cMbGyaOkmY4Gqxv0BY1MAxGGD2L0AcbKzxzezxbLBMrLBMnPzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzgvWzw5Kzw5JEs1YzxnVBhzLCIiScIaGiNbHCMfTzxrLCNmIoIb7icjTB2rLiJOGiMf1Dg8IlcaIAw5JBhvKzurLDIi6ihrYDwuGFqP9cMbGyaOkkIPoB3rLCZOQkGOTiefSD2f5CYbJCMvHDgvZigjHy2T1CcaOlMjHy2T1Cc5QC29UksbIzwzVCMuGBw9KAwzPy2f0Aw9UCWOTie5LDhDVCMSGCMvXDwvZDhmGAgf2zsb0Aw1LB3v0igfUzcbYzxrYEsbSB2DPyWOTig5WBsbPBNn0ywXSihj1BNmGD2L0Acb0Aw1LB3v0ihbYB3rLy3rPB24GkduGBwLUDxrLCYbTyxGPcI0Gu3vWCg9YDhmGy29TCgXLEcbZzw12zxiGCMfUz2vZicH8FcWGjIySigv0yY4P','C2LTCgXL','BNbTifDbuK4','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','BM9YBwfSAxPL','x2nYzwf0zujHy2T1Ca','zxjYB3i','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','DhjPBq','zML4','Dhj1zq','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','ywXS','zMLSDgvY','8j+tIIbgB3vUzca','x2zLDgnOugfJA2fNzuLUzM8','y2HLy2S','BgvUz3rO','BwfQB3i','cIaG','icdIGkiG','zgvWzw5Kzw5JAwvZ','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW'];a0_0x15e1=function(){return _0x5d0850;};return a0_0x15e1();}import a0_0xfd3da3 from'path';import{exec as a0_0x2c0f37}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x3a5cd5 from'../utilities/tagParser.js';const exec=promisify(a0_0x2c0f37),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0xbda7d4(0xba),'VALID_MODES':['check',a0_0xbda7d4(0xb3),a0_0xbda7d4(0xe0)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':'.backup.json','CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0xbda7d4(0xa7)};function a0_0x45fa(_0x563825,_0x2a9702){_0x563825=_0x563825-0x9b;const _0x15e17d=a0_0x15e1();let _0x45fa44=_0x15e17d[_0x563825];if(a0_0x45fa['lkDqxd']===undefined){var _0x2cd63a=function(_0x2a8d44){const _0x162a42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ffdd1='',_0xfd3da3='';for(let _0x2c0f37=0x0,_0x3a5cd5,_0x394093,_0x1db7f5=0x0;_0x394093=_0x2a8d44['charAt'](_0x1db7f5++);~_0x394093&&(_0x3a5cd5=_0x2c0f37%0x4?_0x3a5cd5*0x40+_0x394093:_0x394093,_0x2c0f37++%0x4)?_0x4ffdd1+=String['fromCharCode'](0xff&_0x3a5cd5>>(-0x2*_0x2c0f37&0x6)):0x0){_0x394093=_0x162a42['indexOf'](_0x394093);}for(let _0x28fad4=0x0,_0x5bf255=_0x4ffdd1['length'];_0x28fad4<_0x5bf255;_0x28fad4++){_0xfd3da3+='%'+('00'+_0x4ffdd1['charCodeAt'](_0x28fad4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xfd3da3);};a0_0x45fa['qdpUMP']=_0x2cd63a,a0_0x45fa['QRmwoo']={},a0_0x45fa['lkDqxd']=!![];}const _0x5c6735=_0x15e17d[0x0],_0x2c3d5e=_0x563825+_0x5c6735,_0x12dddb=a0_0x45fa['QRmwoo'][_0x2c3d5e];return!_0x12dddb?(_0x45fa44=a0_0x45fa['qdpUMP'](_0x45fa44),a0_0x45fa['QRmwoo'][_0x2c3d5e]=_0x45fa44):_0x45fa44=_0x12dddb,_0x45fa44;}export class DependencyResolverTool extends BaseTool{[a0_0xbda7d4(0xe9)](){const _0x2b26aa=a0_0xbda7d4;return _0x2b26aa(0xaa);}['parseParameters'](_0x394093){const _0x39adbe=a0_0xbda7d4;if(typeof _0x394093===_0x39adbe(0xd9)&&_0x394093!==null)return{'path':_0x394093[_0x39adbe(0xc5)]||'.','mode':_0x394093['mode']||RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':_0x394093['includeDev']!==undefined?_0x394093['includeDev']:!![]};if(typeof _0x394093===_0x39adbe(0x9d)){const _0x1db7f5=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x28fad4=_0x1db7f5[_0x39adbe(0xc9)](_0x394093);if(_0x28fad4){const _0x2e4a62=_0x28fad4[0x1],_0x3850e1=_0x28fad4[0x2],_0x1fd896=/path=["']([^"']*)["']/i['exec'](_0x2e4a62),_0x553153=/mode=["']([^"']*)["']/i['exec'](_0x2e4a62),_0x223688=/include-dev=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2e4a62),_0x2b7723=/<path>(.*?)<\/path>/i,_0x870538=_0x2b7723[_0x39adbe(0xc9)](_0x3850e1),_0xbb7520=/<mode>(.*?)<\/mode>/i,_0xb32515=_0xbb7520[_0x39adbe(0xc9)](_0x3850e1),_0x162766=/<include-dev>(.*?)<\/include-dev>/i,_0x48adaf=_0x162766['exec'](_0x3850e1),_0x478e11=(_0x870538?_0x870538[0x1]['trim']():null)||(_0x1fd896?_0x1fd896[0x1]:'.'),_0x50b869=(_0xb32515?_0xb32515[0x1][_0x39adbe(0xb2)]():null)||(_0x553153?_0x553153[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x380b22=(_0x48adaf?_0x48adaf[0x1]['trim']():null)||(_0x223688?_0x223688[0x1]:_0x39adbe(0xb4));return{'path':_0x478e11,'mode':_0x50b869,'includeDev':this[_0x39adbe(0x11a)](_0x380b22,!![])};}const _0x5bf255=/\[resolve\s+([^\]]*)\]/i,_0x3101f3=_0x5bf255['exec'](_0x394093);if(_0x3101f3){const _0x2360fd=_0x3101f3[0x1],_0x32d74c=/path=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2360fd),_0x13b16e=/mode=["']([^"']*)["']/i['exec'](_0x2360fd),_0x4be62e=/include-dev=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2360fd);return{'path':_0x32d74c?_0x32d74c[0x1]:'.','mode':_0x13b16e?_0x13b16e[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x39adbe(0x11a)](_0x4be62e?_0x4be62e[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0xbda7d4(0x11a)](_0x28ac00,defaultValue=![]){const _0x14b3c1=a0_0xbda7d4;if(_0x28ac00===undefined||_0x28ac00===null)return defaultValue;if(typeof _0x28ac00==='boolean')return _0x28ac00;if(typeof _0x28ac00==='string')return _0x28ac00[_0x14b3c1(0xd1)]()==='true'||_0x28ac00==='1';return defaultValue;}[a0_0xbda7d4(0x109)](_0x2ef05d){const _0x3ecf31=a0_0xbda7d4;if(!_0x2ef05d||typeof _0x2ef05d!=='object')throw new Error(_0x3ecf31(0xe3));if(_0x2ef05d['path']&&typeof _0x2ef05d[_0x3ecf31(0xc5)]!=='string')throw new Error(_0x3ecf31(0x10e));if(_0x2ef05d[_0x3ecf31(0x107)]&&!RESOLVER_CONFIG['VALID_MODES']['includes'](_0x2ef05d[_0x3ecf31(0x107)]))throw new Error('Invalid\x20mode:\x20'+_0x2ef05d[_0x3ecf31(0x107)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES'][_0x3ecf31(0xd5)](',\x20'));if(_0x2ef05d['includeDev']!==undefined&&typeof _0x2ef05d[_0x3ecf31(0xde)]!==_0x3ecf31(0x112))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0xbda7d4(0xda)](_0xa4e578,_0x4d43d0){const _0x2ec016=a0_0xbda7d4,{projectDir:_0x5c9b91,directoryAccess:_0x2e59c6}=_0x4d43d0;let _0x5108df=_0x5c9b91||process[_0x2ec016(0x110)]();_0x2e59c6&&_0x2e59c6[_0x2ec016(0xf2)]&&(_0x5108df=_0x2e59c6[_0x2ec016(0xf2)]);const _0xcf0b52=a0_0xfd3da3[_0x2ec016(0x114)](_0xa4e578)?a0_0xfd3da3[_0x2ec016(0xae)](_0xa4e578):a0_0xfd3da3[_0x2ec016(0xae)](a0_0xfd3da3[_0x2ec016(0xd5)](_0x5108df,_0xa4e578)),_0x2fcf18=a0_0xfd3da3[_0x2ec016(0xae)](_0x5108df);if(!_0xcf0b52[_0x2ec016(0xfa)](_0x2fcf18))throw new Error('Path\x20traversal\x20detected:\x20'+_0xa4e578+_0x2ec016(0xf8));return _0xcf0b52;}async[a0_0xbda7d4(0xaf)](_0x50dc56){const _0x4a4543=a0_0xbda7d4;if(!RESOLVER_CONFIG[_0x4a4543(0xfe)])return null;try{const _0x3d31c5=_0x50dc56+RESOLVER_CONFIG[_0x4a4543(0xdb)];return await a0_0x4ffdd1['copyFile'](_0x50dc56,_0x3d31c5),this['logger']?.[_0x4a4543(0xea)](_0x4a4543(0x9c),{'backupPath':_0x3d31c5}),_0x3d31c5;}catch(_0x463ba0){return this['logger']?.[_0x4a4543(0x10c)](_0x4a4543(0xf4),{'error':_0x463ba0[_0x4a4543(0xe1)]}),null;}}async[a0_0xbda7d4(0xb9)](_0xc5392b){const _0x587139=a0_0xbda7d4,_0x30b855=RESOLVER_CONFIG[_0x587139(0xc7)]+'/'+encodeURIComponent(_0xc5392b);for(let _0x527a3a=0x1;_0x527a3a<=RESOLVER_CONFIG[_0x587139(0xce)];_0x527a3a++){try{const _0x3e4553=new AbortController(),_0x1a1716=setTimeout(()=>_0x3e4553[_0x587139(0xd7)](),RESOLVER_CONFIG[_0x587139(0xf1)]),_0x436c51=await fetch(_0x30b855,{'signal':_0x3e4553['signal']});clearTimeout(_0x1a1716);if(!_0x436c51['ok']){if(_0x436c51[_0x587139(0x100)]===0x194)return this[_0x587139(0xc4)]?.['warn']('Package\x20not\x20found:\x20'+_0xc5392b),null;throw new Error('HTTP\x20'+_0x436c51[_0x587139(0x100)]+':\x20'+_0x436c51['statusText']);}const _0x57643d=await _0x436c51[_0x587139(0xe7)]();if(!_0x57643d||typeof _0x57643d!=='object'||!_0x57643d['dist-tags'])throw new Error(_0x587139(0xcd));return _0x57643d;}catch(_0x224964){if(_0x527a3a<RESOLVER_CONFIG[_0x587139(0xce)])this['logger']?.['debug']('Retry\x20'+_0x527a3a+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0xc5392b),await new Promise(_0x159232=>setTimeout(_0x159232,RESOLVER_CONFIG[_0x587139(0xd4)]*_0x527a3a));else return this['logger']?.[_0x587139(0xb0)]('Failed\x20to\x20fetch\x20'+_0xc5392b+':',_0x224964[_0x587139(0xe1)]),null;}}return null;}async[a0_0xbda7d4(0xe8)](_0x20585c,_0x150547){const _0xda3349=a0_0xbda7d4,_0xc39aa5=await this['_fetchPackageInfo'](_0x20585c);if(!_0xc39aa5)return null;const _0x2d00f0=_0xc39aa5['dist-tags']?.['latest'];if(!_0x2d00f0)return null;const _0x1cce93=this[_0xda3349(0xff)](_0x2d00f0);if(!_0x1cce93)return null;if(this['_isComplexRange'](_0x150547)){const _0x306ec2=this[_0xda3349(0x113)](_0x150547),_0x1a89fd=this[_0xda3349(0x115)](_0x306ec2,_0x1cce93);if(_0x1a89fd)return _0x2d00f0;return null;}const _0x44e592=this[_0xda3349(0x116)](_0x150547);if(!_0x44e592)return null;const _0x5246c0=this[_0xda3349(0x117)](_0x44e592,_0x1cce93);if(_0x5246c0)return _0x44e592[_0xda3349(0xa0)]+_0x2d00f0;return null;}[a0_0xbda7d4(0xff)](_0x3fd607){const _0x1a4d87=a0_0xbda7d4,_0x136063=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x1185ab=_0x136063[_0x1a4d87(0xc9)](_0x3fd607);if(!_0x1185ab){const _0x14a53a=_0x3fd607[_0x1a4d87(0x101)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x14a53a)return{'major':parseInt(_0x14a53a[0x1],0xa),'minor':parseInt(_0x14a53a[0x2],0xa),'patch':parseInt(_0x14a53a[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x1185ab[0x1],0xa),'minor':parseInt(_0x1185ab[0x2],0xa),'patch':parseInt(_0x1185ab[0x3],0xa),'prerelease':_0x1185ab[0x4]?_0x1185ab[0x4]['split']('.'):null,'build':_0x1185ab[0x5]||null};}[a0_0xbda7d4(0x9e)](_0x18ba79,_0x5c4853){const _0x53f816=a0_0xbda7d4;if(_0x18ba79[_0x53f816(0xbc)]!==_0x5c4853[_0x53f816(0xbc)])return _0x18ba79['major']-_0x5c4853[_0x53f816(0xbc)];if(_0x18ba79['minor']!==_0x5c4853[_0x53f816(0x9f)])return _0x18ba79[_0x53f816(0x9f)]-_0x5c4853['minor'];if(_0x18ba79['patch']!==_0x5c4853['patch'])return _0x18ba79['patch']-_0x5c4853[_0x53f816(0xf3)];if(!_0x18ba79['prerelease']&&!_0x5c4853['prerelease'])return 0x0;if(!_0x18ba79[_0x53f816(0xc3)]&&_0x5c4853[_0x53f816(0xc3)])return 0x1;if(_0x18ba79[_0x53f816(0xc3)]&&!_0x5c4853['prerelease'])return-0x1;return this[_0x53f816(0xa6)](_0x18ba79[_0x53f816(0xc3)],_0x5c4853['prerelease']);}['_comparePrerelease'](_0x4ad632,_0x556fb3){const _0x55fd3c=a0_0xbda7d4,_0x1c0f4b=Math[_0x55fd3c(0xc6)](_0x4ad632[_0x55fd3c(0xbb)],_0x556fb3[_0x55fd3c(0xbb)]);for(let _0xba6979=0x0;_0xba6979<_0x1c0f4b;_0xba6979++){if(_0xba6979>=_0x4ad632['length'])return-0x1;if(_0xba6979>=_0x556fb3[_0x55fd3c(0xbb)])return 0x1;const _0x14455d=_0x4ad632[_0xba6979],_0x2ae625=_0x556fb3[_0xba6979],_0x2f567a=/^\d+$/['test'](_0x14455d)?parseInt(_0x14455d,0xa):null,_0x1af856=/^\d+$/[_0x55fd3c(0xee)](_0x2ae625)?parseInt(_0x2ae625,0xa):null;if(_0x2f567a!==null&&_0x1af856!==null){if(_0x2f567a!==_0x1af856)return _0x2f567a-_0x1af856;continue;}if(_0x2f567a!==null&&_0x1af856===null)return-0x1;if(_0x2f567a===null&&_0x1af856!==null)return 0x1;if(_0x14455d<_0x2ae625)return-0x1;if(_0x14455d>_0x2ae625)return 0x1;}return 0x0;}[a0_0xbda7d4(0x116)](_0xbe834b){const _0x3c6bc2=a0_0xbda7d4,_0x4fe834=_0xbe834b[_0x3c6bc2(0xb2)](),_0x250f2c=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x5d1d09=_0x250f2c['exec'](_0x4fe834);if(_0x5d1d09){const _0x482db6=_0x5d1d09[0x1],_0xcd574b=_0x5d1d09[0x3],_0x5ed672=_0x5d1d09[0x5],_0xecbe17=_0x482db6==='*'||_0x482db6[_0x3c6bc2(0xd1)]()==='x'||_0xcd574b===undefined||_0xcd574b==='*'||_0xcd574b['toLowerCase']()==='x'||_0x5ed672===undefined||_0x5ed672==='*'||_0x5ed672['toLowerCase']()==='x';if(_0xecbe17)return{'prefix':'','operator':_0x3c6bc2(0xd2),'major':_0x482db6==='*'||_0x482db6['toLowerCase']()==='x'?null:parseInt(_0x482db6,0xa),'minor':!_0xcd574b||_0xcd574b==='*'||_0xcd574b[_0x3c6bc2(0xd1)]()==='x'?null:parseInt(_0xcd574b,0xa),'patch':!_0x5ed672||_0x5ed672==='*'||_0x5ed672['toLowerCase']()==='x'?null:parseInt(_0x5ed672,0xa),'original':_0xbe834b};}let _0x496dd2='',_0x5702f3=_0x4fe834,_0x5235c1='=';if(_0x4fe834['startsWith']('^'))_0x496dd2='^',_0x5702f3=_0x4fe834['slice'](0x1),_0x5235c1='^';else{if(_0x4fe834['startsWith']('~'))_0x496dd2='~',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x1),_0x5235c1='~';else{if(_0x4fe834[_0x3c6bc2(0xfa)]('>='))_0x496dd2='>=',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x2)[_0x3c6bc2(0xb2)](),_0x5235c1='>=';else{if(_0x4fe834[_0x3c6bc2(0xfa)]('>'))_0x496dd2='>',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x1)['trim'](),_0x5235c1='>';else{if(_0x4fe834['startsWith']('<='))_0x496dd2='<=',_0x5702f3=_0x4fe834['slice'](0x2)['trim'](),_0x5235c1='<=';else _0x4fe834[_0x3c6bc2(0xfa)]('<')&&(_0x496dd2='<',_0x5702f3=_0x4fe834['slice'](0x1)[_0x3c6bc2(0xb2)](),_0x5235c1='<');}}}}const _0x54489c=this['_parseVersion'](_0x5702f3);if(!_0x54489c)return null;return{'prefix':_0x496dd2,'operator':_0x5235c1,'major':_0x54489c[_0x3c6bc2(0xbc)],'minor':_0x54489c[_0x3c6bc2(0x9f)],'patch':_0x54489c['patch'],'prerelease':_0x54489c[_0x3c6bc2(0xc3)],'build':_0x54489c['build'],'original':_0xbe834b};}[a0_0xbda7d4(0x117)](_0x32f4b1,_0x3ef78d){const _0x3ed852=a0_0xbda7d4,_0x216809={'major':_0x32f4b1['major'],'minor':_0x32f4b1[_0x3ed852(0x9f)],'patch':_0x32f4b1[_0x3ed852(0xf3)],'prerelease':_0x32f4b1[_0x3ed852(0xc3)]||null,'build':_0x32f4b1[_0x3ed852(0xef)]||null};switch(_0x32f4b1[_0x3ed852(0xa1)]){case'^':return this[_0x3ed852(0xd3)](_0x216809,_0x3ef78d);case'~':return this['_isTildeUpdateAvailable'](_0x216809,_0x3ef78d);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x216809,_0x3ef78d);case'<':case'<=':return this[_0x3ed852(0x103)](_0x32f4b1,_0x3ef78d);case'x-range':return this[_0x3ed852(0xfd)](_0x32f4b1,_0x3ef78d);case'=':default:return this['_isExactUpdateAvailable'](_0x216809,_0x3ef78d);}}['_isCaretUpdateAvailable'](_0xf8c7d5,_0x42a554){const _0x591707=a0_0xbda7d4,_0x559ff3=this['_compareVersions'](_0x42a554,_0xf8c7d5);if(_0x559ff3<=0x0)return![];if(_0xf8c7d5[_0x591707(0xbc)]===0x0&&_0xf8c7d5[_0x591707(0x9f)]===0x0)return _0x42a554[_0x591707(0xbc)]===0x0&&_0x42a554['minor']===0x0;if(_0xf8c7d5['major']===0x0)return _0x42a554[_0x591707(0xbc)]===0x0&&_0x42a554['minor']===_0xf8c7d5[_0x591707(0x9f)];return _0x42a554['major']===_0xf8c7d5[_0x591707(0xbc)];}[a0_0xbda7d4(0xf6)](_0x32fc69,_0x4de5dc){const _0x49db25=a0_0xbda7d4,_0x4cb0bc=this[_0x49db25(0x9e)](_0x4de5dc,_0x32fc69);if(_0x4cb0bc<=0x0)return![];return _0x4de5dc['major']===_0x32fc69['major']&&_0x4de5dc[_0x49db25(0x9f)]===_0x32fc69[_0x49db25(0x9f)];}[a0_0xbda7d4(0xb5)](_0x5c8e23,_0x535e73){const _0x267378=this['_compareVersions'](_0x535e73,_0x5c8e23);return _0x267378>0x0;}[a0_0xbda7d4(0xc2)](_0x48cbca,_0x1ab732){const _0x2f3b68=a0_0xbda7d4;return this[_0x2f3b68(0xb5)](_0x48cbca,_0x1ab732);}[a0_0xbda7d4(0x103)](_0x256c0e,_0x4c81fd){const _0x39eb9e=a0_0xbda7d4,_0x3b9fc8=this[_0x39eb9e(0x9e)](_0x4c81fd,_0x256c0e);if(_0x256c0e['operator']==='<')return _0x3b9fc8<0x0;else{if(_0x256c0e['operator']==='<=')return _0x3b9fc8<=0x0;}return![];}[a0_0xbda7d4(0xfd)](_0xfc694b,_0x954a9c){const _0x5ca211=a0_0xbda7d4;if(_0xfc694b[_0x5ca211(0xbc)]!==null&&_0x954a9c[_0x5ca211(0xbc)]!==_0xfc694b[_0x5ca211(0xbc)])return![];if(_0xfc694b['minor']!==null&&_0x954a9c[_0x5ca211(0x9f)]!==_0xfc694b['minor'])return![];if(_0xfc694b[_0x5ca211(0xf3)]!==null&&_0x954a9c['patch']!==_0xfc694b['patch'])return![];return!![];}['_isComplexRange'](_0x3239e1){const _0x427b0d=a0_0xbda7d4;if(_0x3239e1[_0x427b0d(0xdc)]('||'))return!![];const _0x542b2a=_0x3239e1['trim']();if(_0x542b2a[_0x427b0d(0xfa)]('^')||_0x542b2a['startsWith']('~'))return![];const _0x31641f=_0x542b2a[_0x427b0d(0xfb)](/\s+/)[_0x427b0d(0xb7)](_0x2c1e40=>_0x2c1e40['length']>0x0);if(_0x31641f[_0x427b0d(0xbb)]>0x1){const _0x163c4a=/^(>=?|<=?|\^|~|[0-9])/;return _0x31641f['every'](_0x208ae1=>_0x163c4a['test'](_0x208ae1));}return![];}[a0_0xbda7d4(0x113)](_0x10da05){const _0x45c01b=a0_0xbda7d4;if(_0x10da05['includes']('||')){const _0x31a872=_0x10da05[_0x45c01b(0xfb)]('||')[_0x45c01b(0xcf)](_0xc66558=>_0xc66558['trim']());return{'type':'or','ranges':_0x31a872['map'](_0x3522d4=>this[_0x45c01b(0x113)](_0x3522d4))};}const _0x126f22=_0x10da05[_0x45c01b(0xb2)]()['split'](/\s+/)[_0x45c01b(0xb7)](_0x5ebd2c=>_0x5ebd2c[_0x45c01b(0xbb)]>0x0);if(_0x126f22[_0x45c01b(0xbb)]>0x1)return{'type':_0x45c01b(0xc8),'ranges':_0x126f22[_0x45c01b(0xcf)](_0x2d435f=>this['_parseVersionRange'](_0x2d435f))};return{'type':'simple','range':this['_parseVersionRange'](_0x10da05)};}['_satisfiesRange'](_0x122b54,_0x1dda86){if(!_0x122b54||!_0x1dda86)return![];return this['_isUpdateAvailable'](_0x122b54,_0x1dda86);}['_satisfiesComplexRange'](_0x2cc755,_0x55e296){const _0x12b80b=a0_0xbda7d4;if(!_0x2cc755||!_0x55e296)return![];switch(_0x2cc755[_0x12b80b(0xa2)]){case _0x12b80b(0xab):return this[_0x12b80b(0xd6)](_0x2cc755['range'],_0x55e296);case _0x12b80b(0xc8):return _0x2cc755['ranges'][_0x12b80b(0xe2)](_0x536172=>this['_satisfiesRange'](_0x536172,_0x55e296));case'or':return _0x2cc755[_0x12b80b(0xa8)][_0x12b80b(0xdf)](_0x34e0e9=>this[_0x12b80b(0x115)](_0x34e0e9,_0x55e296));default:return![];}}async[a0_0xbda7d4(0x10d)](_0x17b15f){const _0x4da515=a0_0xbda7d4,_0x122dcc={},_0x449754=Object['entries'](_0x17b15f);for(let _0x3c4620=0x0;_0x3c4620<_0x449754[_0x4da515(0xbb)];_0x3c4620+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x3b2836=_0x449754[_0x4da515(0x11b)](_0x3c4620,_0x3c4620+RESOLVER_CONFIG[_0x4da515(0xd8)]),_0x176293=_0x3b2836['map'](async([_0x2067d5,_0x392929])=>{const _0x5948ed=_0x4da515;try{const _0x2f5ee6=await this[_0x5948ed(0xe8)](_0x2067d5,_0x392929);if(_0x2f5ee6){const _0x52fda5=_0x392929[_0x5948ed(0x101)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x2067d5,'newVersion':''+_0x52fda5+_0x2f5ee6,'oldVersion':_0x392929};}return null;}catch(_0x64c9cc){return this['logger']?.['error']('Error\x20checking\x20'+_0x2067d5+':',_0x64c9cc['message']),null;}}),_0x2893d6=await Promise[_0x4da515(0xb6)](_0x176293);_0x2893d6[_0x4da515(0x104)](_0x29b20e=>{_0x29b20e&&(_0x122dcc[_0x29b20e['pkg']]=_0x29b20e['newVersion']);});}return _0x122dcc;}async['execute'](_0x3c2fb0,_0x45bdcf={}){const _0x5c2fae=a0_0xbda7d4;try{this[_0x5c2fae(0x109)](_0x3c2fb0);const {path:_0x4047b8,mode:_0x47ba1a,includeDev:_0x51a4d3}=_0x3c2fb0,{projectDir:_0x49e4b6,agentId:_0x12237a,directoryAccess:_0x1908ad}=_0x45bdcf,_0x49c42d=this[_0x5c2fae(0xda)](_0x4047b8,_0x45bdcf),_0x243434=a0_0xfd3da3['join'](_0x49c42d,'package.json');this['logger']?.[_0x5c2fae(0xea)]('Dependency\x20resolver\x20executing',{'mode':_0x47ba1a,'resolvedPath':_0x49c42d,'includeDev':_0x51a4d3,'agentId':_0x12237a});const _0x4872b8=[];_0x4872b8['push'](_0x5c2fae(0xf7)+_0x49c42d),_0x4872b8[_0x5c2fae(0xfc)]('Mode:\x20'+_0x47ba1a);try{await a0_0x4ffdd1[_0x5c2fae(0x106)](_0x243434);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x243434,'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};}_0x4872b8['push']('\x0a📦\x20Reading\x20package.json...');const _0x27a66e=await a0_0x4ffdd1['readFile'](_0x243434,'utf-8'),_0x43d6cc=JSON['parse'](_0x27a66e),_0x3f97db={..._0x43d6cc[_0x5c2fae(0xbf)]};_0x51a4d3&&_0x43d6cc['devDependencies']&&Object[_0x5c2fae(0xa5)](_0x3f97db,_0x43d6cc['devDependencies']);if(Object['keys'](_0x3f97db)['length']===0x0)return{'success':!![],'mode':_0x47ba1a,'message':_0x5c2fae(0xf9),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};if(Object[_0x5c2fae(0xcc)](_0x3f97db)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x5c2fae(0xc0)+Object[_0x5c2fae(0xcc)](_0x3f97db)[_0x5c2fae(0xbb)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xb8)+Object['keys'](_0x3f97db)[_0x5c2fae(0xbb)]+'\x20dependencies\x20to\x20check'),_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0x10f));const _0x479918=await this[_0x5c2fae(0x10d)](_0x3f97db);_0x4872b8['push'](_0x5c2fae(0x108)),_0x4872b8[_0x5c2fae(0xfc)]('📈\x20Updates\x20available:\x20'+Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)]);if(Object[_0x5c2fae(0xcc)](_0x479918)['length']>0x0){_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xd0));for(const [_0x56dbe2,_0x10ee3e]of Object[_0x5c2fae(0x10b)](_0x479918)){const _0x8da24b=_0x3f97db[_0x56dbe2];_0x4872b8['push']('\x20\x20•\x20'+_0x56dbe2+':\x20'+_0x8da24b+_0x5c2fae(0x10a)+_0x10ee3e);}}else _0x4872b8['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x47ba1a===_0x5c2fae(0xba))return Object[_0x5c2fae(0xcc)](_0x479918)['length']>0x0&&_0x4872b8[_0x5c2fae(0xfc)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0x5c2fae(0xba),'message':'Found\x20'+Object['keys'](_0x479918)[_0x5c2fae(0xbb)]+_0x5c2fae(0xc1),'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)[_0x5c2fae(0xbb)],'updatesAvailable':Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)],'updatesApplied':0x0,'errors':0x0},'updates':_0x479918,'output':_0x4872b8['join']('\x0a')};if((_0x47ba1a===_0x5c2fae(0xb3)||_0x47ba1a==='auto')&&Object['keys'](_0x479918)[_0x5c2fae(0xbb)]>0x0){_0x4872b8['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x346708=await this[_0x5c2fae(0xaf)](_0x243434);_0x346708?_0x4872b8['push']('✅\x20Backup\x20created:\x20'+a0_0xfd3da3['basename'](_0x346708)):_0x4872b8['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0x9b));for(const [_0x45a59d,_0x540d17]of Object[_0x5c2fae(0x10b)](_0x479918)){_0x43d6cc['dependencies']?.[_0x45a59d]&&(_0x43d6cc[_0x5c2fae(0xbf)][_0x45a59d]=_0x540d17),_0x43d6cc[_0x5c2fae(0xec)]?.[_0x45a59d]&&(_0x43d6cc['devDependencies'][_0x45a59d]=_0x540d17);}await a0_0x4ffdd1['writeFile'](_0x243434,JSON[_0x5c2fae(0x118)](_0x43d6cc,null,0x2)+'\x0a'),_0x4872b8['push'](_0x5c2fae(0xad)),_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xf0));try{const {stdout:_0x3c8cbf,stderr:_0x14af82}=await exec(_0x5c2fae(0xeb),{'cwd':_0x49c42d,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x3c8cbf){const _0x800629=_0x3c8cbf['trim']()['split']('\x0a');_0x800629['length']>0xa?_0x4872b8[_0x5c2fae(0xfc)]('\x20\x20'+_0x800629['slice'](-0x5)['join'](_0x5c2fae(0xbd))):_0x4872b8['push']('\x20\x20'+_0x3c8cbf['trim']());}_0x14af82&&!_0x14af82[_0x5c2fae(0xdc)](_0x5c2fae(0xac))&&_0x4872b8['push'](_0x5c2fae(0xed)+_0x14af82[_0x5c2fae(0xb2)]());_0x4872b8['push'](_0x5c2fae(0xb1));try{const {stdout:_0x4b0f13}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x49c42d,'timeout':0x7530}),_0x2e487c=JSON[_0x5c2fae(0x105)](_0x4b0f13);if(_0x2e487c['dependencies']){_0x4872b8['push'](_0x5c2fae(0xcb));for(const _0x2c0c3f of Object[_0x5c2fae(0xcc)](_0x479918)){_0x2e487c['dependencies'][_0x2c0c3f]&&_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xbe)+_0x2c0c3f+'@'+_0x2e487c[_0x5c2fae(0xbf)][_0x2c0c3f]['version']);}}}catch(_0x209fb0){this['logger']?.[_0x5c2fae(0xa3)]('npm\x20ls\x20failed:',_0x209fb0['message']);}return{'success':!![],'mode':_0x47ba1a,'message':'Successfully\x20updated\x20'+Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x3f97db)[_0x5c2fae(0xbb)],'updatesAvailable':Object['keys'](_0x479918)[_0x5c2fae(0xbb)],'updatesApplied':Object['keys'](_0x479918)[_0x5c2fae(0xbb)],'errors':0x0},'updates':_0x479918,'backupCreated':_0x346708!==null,'backupPath':_0x346708,'output':_0x4872b8['join']('\x0a')};}catch(_0x4a978e){_0x4872b8['push'](_0x5c2fae(0xa4)+_0x4a978e['message']);if(_0x346708)try{await a0_0x4ffdd1['copyFile'](_0x346708,_0x243434),_0x4872b8[_0x5c2fae(0xfc)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x52609d){_0x4872b8[_0x5c2fae(0xfc)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x47ba1a,'error':'npm\x20install\x20failed:\x20'+_0x4a978e['message'],'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)['length'],'updatesAvailable':Object['keys'](_0x479918)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x479918,'backupCreated':_0x346708!==null,'output':_0x4872b8['join']('\x0a')};}}else{if(_0x47ba1a==='fix'||_0x47ba1a===_0x5c2fae(0xe0))return _0x4872b8['push'](_0x5c2fae(0xdd)),{'success':!![],'mode':_0x47ba1a,'message':_0x5c2fae(0xe6),'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};}}catch(_0x3ef6a0){return this['logger']?.['error'](_0x5c2fae(0xf5),_0x3ef6a0),{'success':![],'error':_0x3ef6a0['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3ef6a0[_0x5c2fae(0xe1)]};}}}export default DependencyResolverTool;
@@ -1 +1 @@
1
- function a0_0x4694(){const _0x265d49=['C3rHCNrZv2L0Aa','rgLMzIb0B28GBgfYz2uGka','cKvYCM9YCZOG','C3bSAxq','CMvWBgfJzq','ChjVy2vZC0zPBgu','cIaGica','Bwf4','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','tufyx05fv19dt05uru5ux1njwKu','BgLUzxnmAw1PDa','zxjYB3jZ','z2v0rgvZy3jPChrPB24','odqWoteWEwX3swnt','tufyx0XjtKvFuKfor0vFu0LArq','Aw5JBhvKzxm','AxnbCNjHEq','zxH0CMfJDef0DhjPyNv0zq','BwfW','B2XKq29UDgvUDa','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','C2L6zq','tufyx09mrf9dt05uru5ux1njwKu','Bg9Nz2vY','tufyx0zjtevtx1bfuL9puevsqvrjt04','CgfYC2vku09o','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','icHJB250zw50ig5VDcbMB3vUzcK','AxnqyxrOqwnJzxnZAwjSzq','nJaYnJnIzLnRCei','CgfYC2vmAw5LuMfUz2vZ','tuiPoIa','mta0nteYBKTrD3P3','AgfZ','C3vIC3rYAw5N','BMv3BgLUzxm','nJeWmdH1tMHHsKu','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','ntKXodyZBNnHDejr','DgLTzw91Da','zxHLy3v0zq','D29YA2LUz0rPCMvJDg9YEq','nde2mdyYnePrDhzlqG','Dg90ywXszxbSywnLBwvUDhm','igzPBgvZigLUig9UzsbVCgvYyxrPB24','CMvWBgfJzunVBMzPzW','yxbWBhLszxbSywnLBwvUDa','y2XLyw51Ca','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','q1jfqvrfx0jbq0Tvufm','BgvUz3rO','ihjLCgXHy2vTzw50khmPigLUia','pvSIj10Ow14Ij10QkvSIj10','CMvWBgfJzw1LBNrZ','Bw9Kzq','ChvZAa','zMLSzxnqCM9JzxnZzwq','C3rHDa','D2fYBG','nwreExvevG','y291BNq','CMvHzezPBgu','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','yMfJA3vWq3jLyxrLza','z2vUzxjHDgvtDw1Tyxj5','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','y291BNrpy2n1CNjLBMnLCW','zMLSzxnnB2rPzMLLza','BgLUzxmTBgLTAxq','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','D3jPDgvgAwXL','ig1PC3nPBMCGBMv3q29UDgvUDa','zMLSzxm','CgfYC2vytuW','tufyx0zjtevFu0LArq','zxjYB3i','Cgf0Aa','mJa4nZK5nhfWwgnTtq','ugf0AcbUB3qGywnJzxnZAwjSztOG','igzPBguOCYKktw9KAwzPzwqG','z2vUzxjHDgveAwzM','ig1PC3nPBMCGB2XKq29UDgvUDa','DxrMltG','ywrK','BMv3q29UDgvUDa','s0iP','zxHLyW','tufyx0rjrKzFteLorvm','CMvWBgfJzw1LBNrZtwfKzq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','DhjPBq','ihrVia','AxnbyNnVBhv0zq','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','Aw5MBW'];a0_0x4694=function(){return _0x265d49;};return a0_0x4694();}const a0_0x20dfb8=a0_0x8fd8;(function(_0x1ebaf8,_0x3ef7d0){const _0x3ae939=a0_0x8fd8,_0x54b506=_0x1ebaf8();while(!![]){try{const _0x5ae1d3=parseInt(_0x3ae939(0x14a))/0x1+-parseInt(_0x3ae939(0x12f))/0x2+parseInt(_0x3ae939(0x146))/0x3+-parseInt(_0x3ae939(0x142))/0x4+-parseInt(_0x3ae939(0xfd))/0x5*(parseInt(_0x3ae939(0x110))/0x6)+-parseInt(_0x3ae939(0x13f))/0x7+parseInt(_0x3ae939(0x14e))/0x8;if(_0x5ae1d3===_0x3ef7d0)break;else _0x54b506['push'](_0x54b506['shift']());}catch(_0x4187fe){_0x54b506['push'](_0x54b506['shift']());}}}(a0_0x4694,0x5057e));import{BaseTool}from'./baseTool.js';import{promises as a0_0x1fad82}from'fs';function a0_0x8fd8(_0x299dcd,_0x505451){_0x299dcd=_0x299dcd-0xf8;const _0x469422=a0_0x4694();let _0x8fd84d=_0x469422[_0x299dcd];if(a0_0x8fd8['pmXIhi']===undefined){var _0x11492f=function(_0xca7dbc){const _0x425602='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1fad82='',_0x5e54f3='';for(let _0x2db1b9=0x0,_0x570e89,_0x531eb3,_0x48d6c2=0x0;_0x531eb3=_0xca7dbc['charAt'](_0x48d6c2++);~_0x531eb3&&(_0x570e89=_0x2db1b9%0x4?_0x570e89*0x40+_0x531eb3:_0x531eb3,_0x2db1b9++%0x4)?_0x1fad82+=String['fromCharCode'](0xff&_0x570e89>>(-0x2*_0x2db1b9&0x6)):0x0){_0x531eb3=_0x425602['indexOf'](_0x531eb3);}for(let _0x3f34df=0x0,_0x197c06=_0x1fad82['length'];_0x3f34df<_0x197c06;_0x3f34df++){_0x5e54f3+='%'+('00'+_0x1fad82['charCodeAt'](_0x3f34df)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e54f3);};a0_0x8fd8['LdmPEc']=_0x11492f,a0_0x8fd8['dtISOS']={},a0_0x8fd8['pmXIhi']=!![];}const _0x5959da=_0x469422[0x0],_0x2cb79f=_0x299dcd+_0x5959da,_0x25a280=a0_0x8fd8['dtISOS'][_0x2cb79f];return!_0x25a280?(_0x8fd84d=a0_0x8fd8['LdmPEc'](_0x8fd84d),a0_0x8fd8['dtISOS'][_0x2cb79f]=_0x8fd84d):_0x8fd84d=_0x25a280,_0x8fd84d;}import a0_0x5e54f3 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x2db1b9={},_0x570e89=null){const _0x486636=a0_0x8fd8;super(_0x2db1b9,_0x570e89),this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x2db1b9[_0x486636(0x14b)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x2db1b9['replaceConfig']};}[a0_0x20dfb8(0x12e)](){const _0x17608a=a0_0x20dfb8;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x17608a(0x10d)]/(0x400*0x400)+_0x17608a(0x13c)+REPLACE_CONFIG[_0x17608a(0x138)]/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG[_0x17608a(0x12b)]/0x400+_0x17608a(0x147)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0x17608a(0x13a)]+_0x17608a(0x100);}['parseParameters'](_0x531eb3){const _0x3f01e4=a0_0x20dfb8;try{if(_0x531eb3[_0x3f01e4(0x11d)]()[_0x3f01e4(0x122)]('{'))return this['parseJSON'](_0x531eb3);return this[_0x3f01e4(0x10c)](_0x531eb3);}catch(_0x48d6c2){this['logger']?.[_0x3f01e4(0x10e)](_0x3f01e4(0x149),{'error':_0x48d6c2['message']});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x48d6c2['message']);}}[a0_0x20dfb8(0x13b)](_0x3f34df){const _0xc2d175=a0_0x20dfb8,_0x197c06=JSON['parse'](_0x3f34df);if(!_0x197c06['files']||!Array[_0xc2d175(0x132)](_0x197c06[_0xc2d175(0x10b)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x197c06['files']['map'](_0x295053=>({'path':_0x295053['path'],'replacements':(_0x295053['replacements']||[])[_0xc2d175(0x134)](_0x52965a=>({'oldContent':_0x52965a[_0xc2d175(0x135)],'newContent':_0x52965a[_0xc2d175(0x117)],'mode':_0x52965a[_0xc2d175(0xf8)]||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x52965a[_0xc2d175(0x12c)]||null}))}))};}['parseXML'](_0x306bcd){const _0x4b9ede=a0_0x20dfb8,_0x23259e=[],_0x2f8c91=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x535d10;while((_0x535d10=_0x2f8c91[_0x4b9ede(0x119)](_0x306bcd))!==null){const _0x46ac89=_0x535d10[0x1],_0x5d5369=_0x535d10[0x2],_0x4f97ab=[],_0x4a5d52=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x2819b2;while((_0x2819b2=_0x4a5d52[_0x4b9ede(0x119)](_0x5d5369))!==null){const _0x421c45=_0x2819b2[0x1]||'',_0x549761=_0x2819b2[0x2],_0x38a982=this['extractAttribute'](_0x421c45,_0x4b9ede(0xf8))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x310218=this['extractAttribute'](_0x421c45,_0x4b9ede(0x106)),_0x41d360=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x549761);if(!_0x41d360){this['logger']?.['warn'](_0x4b9ede(0x107));continue;}const _0x211cd5=_0x41d360[0x1],_0x548b3b=/<new-content>([\s\S]*?)<\/new-content>/i[_0x4b9ede(0x119)](_0x549761);if(!_0x548b3b){this[_0x4b9ede(0x139)]?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4c7b82=_0x548b3b[0x1],_0x34e742=this['applyTrimMode'](_0x211cd5,_0x38a982),_0x30ec34=this['applyTrimMode'](_0x4c7b82,_0x38a982);_0x4f97ab[_0x4b9ede(0xf9)]({'oldContent':_0x34e742,'newContent':_0x30ec34,'mode':_0x38a982,'linesLimit':_0x310218});}_0x4f97ab[_0x4b9ede(0x156)]>0x0&&_0x23259e[_0x4b9ede(0xf9)]({'path':_0x46ac89,'replacements':_0x4f97ab});}return{'files':_0x23259e};}[a0_0x20dfb8(0x133)](_0x39d595,_0x894500){const _0x81d77c=a0_0x20dfb8,_0x185912=new RegExp(_0x894500+_0x81d77c(0x158),'i'),_0x5d8141=_0x185912['exec'](_0x39d595);return _0x5d8141?_0x5d8141[0x1]:null;}['applyTrimMode'](_0x288d1a,_0x3a3915){const _0x4907af=a0_0x20dfb8;switch(_0x3a3915){case'newlines':return _0x288d1a[_0x4907af(0x126)](/^\n+|\n+$/g,'');case'none':return _0x288d1a;case'trim':default:return _0x288d1a['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x20dfb8(0x103)](_0x8b44de){const _0x345b47=a0_0x20dfb8,_0x4941d7=[];if(!_0x8b44de[_0x345b47(0x10b)]||!Array['isArray'](_0x8b44de[_0x345b47(0x10b)]))_0x4941d7['push']('files\x20must\x20be\x20an\x20array');else{_0x8b44de[_0x345b47(0x10b)]['length']===0x0&&_0x4941d7['push']('files\x20array\x20cannot\x20be\x20empty');_0x8b44de[_0x345b47(0x10b)]['length']>this[_0x345b47(0x151)][_0x345b47(0x13a)]&&_0x4941d7['push']('Cannot\x20process\x20more\x20than\x20'+this['replaceConfig'][_0x345b47(0x13a)]+_0x345b47(0x150));for(const _0x46fe30 of _0x8b44de[_0x345b47(0x10b)]){!_0x46fe30[_0x345b47(0x10f)]&&_0x4941d7[_0x345b47(0xf9)]('Each\x20file\x20must\x20have\x20a\x20path');_0x46fe30['path']&&_0x46fe30[_0x345b47(0x10f)]['includes']('..')&&_0x4941d7['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x46fe30['path']);if(!_0x46fe30[_0x345b47(0x159)]||!Array[_0x345b47(0x132)](_0x46fe30[_0x345b47(0x159)]))_0x4941d7[_0x345b47(0xf9)]('File\x20'+_0x46fe30[_0x345b47(0x10f)]+_0x345b47(0x136));else{if(_0x46fe30['replacements']['length']===0x0)_0x4941d7[_0x345b47(0xf9)]('File\x20'+_0x46fe30[_0x345b47(0x10f)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5a7ea5 of _0x46fe30['replacements']){!_0x5a7ea5[_0x345b47(0x135)]&&_0x5a7ea5['oldContent']!==''&&_0x4941d7['push']('Replacement\x20in\x20'+_0x46fe30[_0x345b47(0x10f)]+_0x345b47(0x114)),!_0x5a7ea5['newContent']&&_0x5a7ea5['newContent']!==''&&_0x4941d7[_0x345b47(0xf9)]('Replacement\x20in\x20'+_0x46fe30['path']+_0x345b47(0x10a)),_0x5a7ea5['oldContent']&&_0x5a7ea5[_0x345b47(0x135)]['length']>this[_0x345b47(0x151)]['MAX_OLD_CONTENT_SIZE']&&_0x4941d7[_0x345b47(0xf9)](_0x345b47(0x108)+this[_0x345b47(0x151)][_0x345b47(0x138)]/0x400+_0x345b47(0x118)),_0x5a7ea5['newContent']&&_0x5a7ea5['newContent']['length']>this[_0x345b47(0x151)]['MAX_NEW_CONTENT_SIZE']&&_0x4941d7['push']('newContent\x20too\x20large\x20(max\x20'+this['replaceConfig'][_0x345b47(0x12b)]/0x400+'KB)'),_0x5a7ea5[_0x345b47(0xf8)]&&!['trim',_0x345b47(0x145),'none'][_0x345b47(0x131)](_0x5a7ea5['mode'])&&_0x4941d7['push']('Invalid\x20mode:\x20'+_0x5a7ea5['mode']+_0x345b47(0x154));}}}}if(_0x4941d7[_0x345b47(0x156)]>0x0)throw new Error(_0x345b47(0x148)+_0x4941d7['join'](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x20dfb8(0x14c)](_0x152c5d,_0x332a45){const _0x10dbf6=a0_0x20dfb8,{files:_0x3d9abc}=_0x152c5d,{projectDir:_0x3ab6ab,agentId:_0x3d6aa8,directoryAccess:_0x3b543a}=_0x332a45;let _0x5e0ccf=_0x3ab6ab||process['cwd']();_0x3b543a&&_0x3b543a['workingDirectory']&&(_0x5e0ccf=_0x3b543a[_0x10dbf6(0x14d)],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x3b543a['workingDirectory'],'agentId':_0x3d6aa8}));this['logger']?.['info'](_0x10dbf6(0x12a),{'fileCount':_0x3d9abc[_0x10dbf6(0x156)],'workingDirectory':_0x5e0ccf,'agentId':_0x3d6aa8});const _0x2dc509=[],_0x552ce7={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x341317 of _0x3d9abc){try{const _0x38b142=await this[_0x10dbf6(0x127)](_0x341317,_0x5e0ccf,_0x3b543a);_0x2dc509['push'](_0x38b142),_0x552ce7[_0x10dbf6(0xfa)]++,_0x38b142[_0x10dbf6(0x11b)]>0x0&&(_0x552ce7[_0x10dbf6(0x105)]++,_0x552ce7[_0x10dbf6(0x14f)]+=_0x38b142['replacementsMade']),_0x38b142[_0x10dbf6(0x101)]&&_0x552ce7['backupsCreated']++;}catch(_0x1d395a){this['logger']?.['error'](_0x10dbf6(0x120)+_0x341317[_0x10dbf6(0x10f)],{'error':_0x1d395a['message']}),_0x2dc509[_0x10dbf6(0xf9)]({'filePath':_0x341317['path'],'success':![],'error':_0x1d395a['message']}),_0x552ce7[_0x10dbf6(0x12d)]++;}}return{'success':_0x552ce7['errors']===0x0,'results':_0x2dc509,'statistics':_0x552ce7,'summary':this['generateSummary'](_0x552ce7),'toolUsed':'file-content-replace'};}async[a0_0x20dfb8(0x127)](_0x4ef838,_0x10132f,_0x3457eb){const _0x4ad491=a0_0x20dfb8,{path:_0x22c9b6,replacements:_0x4504e2}=_0x4ef838,_0x4ff55=a0_0x5e54f3['isAbsolute'](_0x22c9b6)?_0x22c9b6:a0_0x5e54f3['resolve'](_0x10132f,_0x22c9b6);if(_0x3457eb){const _0x3a9071=this[_0x4ad491(0x13e)](_0x4ff55,_0x10132f,_0x3457eb);if(!_0x3a9071)throw new Error(_0x4ad491(0x111)+_0x22c9b6);}try{await a0_0x1fad82['access'](_0x4ff55);}catch(_0x5be746){throw new Error('File\x20not\x20found:\x20'+_0x22c9b6);}const _0x5fc3fb=await a0_0x1fad82[_0x4ad491(0xfb)](_0x4ff55);if(_0x5fc3fb[_0x4ad491(0x137)]>this[_0x4ad491(0x151)]['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x4ad491(0x151)]['MAX_FILE_SIZE']/(0x400*0x400)+_0x4ad491(0x141)+_0x22c9b6);let _0xde9648=await a0_0x1fad82[_0x4ad491(0xff)](_0x4ff55,_0x4ad491(0x115));const _0x5abf2d=_0xde9648;let _0x2bd1b9=![];if(this[_0x4ad491(0x151)][_0x4ad491(0x155)]){const _0x2c5c0c=_0x4ff55+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x1fad82['writeFile'](_0x2c5c0c,_0x5abf2d,_0x4ad491(0x115)),_0x2bd1b9=!![];}catch(_0x45723a){this[_0x4ad491(0x139)]?.[_0x4ad491(0xfc)]('Failed\x20to\x20create\x20backup:\x20'+_0x45723a['message']);}}let _0x96f485=0x0;const _0x6775ad=[];for(const _0x50779a of _0x4504e2){const _0x1effe8=await this['applyReplacement'](_0xde9648,_0x50779a[_0x4ad491(0x135)],_0x50779a['newContent'],_0x50779a['linesLimit'],_0x50779a['mode']);_0xde9648=_0x1effe8[_0x4ad491(0x117)],_0x96f485+=_0x1effe8['count'],_0x6775ad['push']({'oldContent':_0x50779a['oldContent'][_0x4ad491(0x144)](0x0,0x32)+(_0x50779a['oldContent'][_0x4ad491(0x156)]>0x32?'...':''),'newContent':_0x50779a[_0x4ad491(0x117)][_0x4ad491(0x144)](0x0,0x32)+(_0x50779a['newContent'][_0x4ad491(0x156)]>0x32?'...':''),'count':_0x1effe8[_0x4ad491(0xfe)],'mode':_0x50779a['mode'],'linesLimit':_0x50779a[_0x4ad491(0x12c)]});}_0x96f485>0x0&&await a0_0x1fad82[_0x4ad491(0x109)](_0x4ff55,_0xde9648,_0x4ad491(0x115));const _0x260ecf=_0x96f485>0x0?this['generateDiff'](_0x5abf2d,_0xde9648):null;return{'filePath':_0x22c9b6,'resolvedPath':_0x4ff55,'success':!![],'replacementsMade':_0x96f485,'backupCreated':_0x2bd1b9,'replacementDetails':_0x6775ad,'diff':_0x260ecf,'message':_0x96f485>0x0?'Made\x20'+_0x96f485+_0x4ad491(0x157)+_0x22c9b6:'No\x20replacements\x20made\x20in\x20'+_0x22c9b6+_0x4ad491(0x13d)};}['isPathAccessible'](_0x32a120,_0x1f48c1,_0x21865){const _0x41859b=a0_0x20dfb8,_0x308e0f=a0_0x5e54f3['relative'](_0x1f48c1,_0x32a120);if(!_0x308e0f[_0x41859b(0x122)]('..')&&!a0_0x5e54f3['isAbsolute'](_0x308e0f))return!![];if(_0x21865['writeEnabledDirectories'])for(const _0x223924 of _0x21865['writeEnabledDirectories']){const _0x46c893=a0_0x5e54f3['relative'](_0x223924,_0x32a120);if(!_0x46c893[_0x41859b(0x122)]('..')&&!a0_0x5e54f3[_0x41859b(0x11f)](_0x46c893))return!![];}return![];}async[a0_0x20dfb8(0x152)](_0x9cfb9b,_0x19bf5f,_0x5b6670,_0x5d9e6f,_0x91c3c8){const _0x3509e1=a0_0x20dfb8;if(!_0x5d9e6f){const _0x3e8d80=this[_0x3509e1(0x104)](_0x9cfb9b,_0x19bf5f);if(_0x3e8d80===0x0)return{'newContent':_0x9cfb9b,'count':0x0};const _0x2c857c=_0x9cfb9b['split'](_0x19bf5f)['join'](_0x5b6670);return{'newContent':_0x2c857c,'count':_0x3e8d80};}const _0x292fd4=this[_0x3509e1(0x140)](_0x5d9e6f),_0x2caaee=_0x9cfb9b[_0x3509e1(0x125)]('\x0a');let _0x3dd3d8=0x0;for(let _0x3d76d9=0x0;_0x3d76d9<_0x2caaee['length'];_0x3d76d9++){const _0x53a181=_0x3d76d9+0x1;if(_0x292fd4[_0x3509e1(0x143)](_0x53a181)){if(_0x2caaee[_0x3d76d9]['includes'](_0x19bf5f)){const _0x45f225=this[_0x3509e1(0x104)](_0x2caaee[_0x3d76d9],_0x19bf5f);_0x2caaee[_0x3d76d9]=_0x2caaee[_0x3d76d9][_0x3509e1(0x125)](_0x19bf5f)['join'](_0x5b6670),_0x3dd3d8+=_0x45f225;}}}return{'newContent':_0x2caaee['join']('\x0a'),'count':_0x3dd3d8};}[a0_0x20dfb8(0x104)](_0x562902,_0x1a5ec0){const _0x55fb0c=a0_0x20dfb8;if(!_0x1a5ec0)return 0x0;return _0x562902[_0x55fb0c(0x125)](_0x1a5ec0)[_0x55fb0c(0x156)]-0x1;}['parseLineRanges'](_0x505ddf){const _0x2d47aa=a0_0x20dfb8,_0x3972ee=new Set();if(!_0x505ddf||_0x505ddf['trim']()==='')return _0x3972ee;const _0x5e0acd=_0x505ddf[_0x2d47aa(0x125)](',');for(const _0x1b381e of _0x5e0acd){const _0x4ccfd4=_0x1b381e['trim']();if(_0x4ccfd4==='')continue;if(_0x4ccfd4[_0x2d47aa(0x131)]('-')){const [_0x1f4859,_0x3c85ec]=_0x4ccfd4['split']('-')[_0x2d47aa(0x134)](_0x5e9bfa=>parseInt(_0x5e9bfa[_0x2d47aa(0x11d)](),0xa));if(!isNaN(_0x1f4859)&&!isNaN(_0x3c85ec)&&_0x3c85ec-_0x1f4859<this[_0x2d47aa(0x151)][_0x2d47aa(0x130)])for(let _0x304884=_0x1f4859;_0x304884<=_0x3c85ec;_0x304884++){_0x3972ee[_0x2d47aa(0x116)](_0x304884);}}else{const _0x2d9f15=parseInt(_0x4ccfd4,0xa);!isNaN(_0x2d9f15)&&_0x3972ee['add'](_0x2d9f15);}}return _0x3972ee;}[a0_0x20dfb8(0x113)](_0x1a6cd3,_0x6d333){const _0x585aac=a0_0x20dfb8,_0x316b52=_0x1a6cd3[_0x585aac(0x125)]('\x0a'),_0x3afd25=_0x6d333['split']('\x0a');let _0x5dabb0=-0x1,_0x6f602d=-0x1;const _0x4f67d5=Math[_0x585aac(0x129)](_0x316b52['length'],_0x3afd25['length']);for(let _0x341876=0x0;_0x341876<_0x4f67d5;_0x341876++){const _0x2cd8b3=_0x341876<_0x316b52[_0x585aac(0x156)]?_0x316b52[_0x341876]:'',_0x303fac=_0x341876<_0x3afd25[_0x585aac(0x156)]?_0x3afd25[_0x341876]:'';if(_0x2cd8b3!==_0x303fac){if(_0x5dabb0===-0x1)_0x5dabb0=_0x341876;_0x6f602d=_0x341876;}}if(_0x5dabb0===-0x1)return'No\x20differences';const _0x8df45=this[_0x585aac(0x151)]['DIFF_CONTEXT_LINES'],_0x52e015=Math['max'](0x0,_0x5dabb0-_0x8df45),_0x4e2378=Math['min'](_0x4f67d5-0x1,_0x6f602d+_0x8df45);if(_0x4e2378-_0x52e015>this[_0x585aac(0x151)][_0x585aac(0x11a)])return _0x585aac(0x123)+(_0x4e2378-_0x52e015+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+('Changed\x20lines:\x20'+(_0x5dabb0+0x1)+_0x585aac(0x11e)+(_0x6f602d+0x1));let _0x2aa4af='@@\x20-'+(_0x52e015+0x1)+','+(_0x4e2378-_0x52e015+0x1)+'\x20+'+(_0x52e015+0x1)+','+(_0x4e2378-_0x52e015+0x1)+'\x20@@\x0a';for(let _0x2c2a2a=_0x52e015;_0x2c2a2a<=_0x4e2378;_0x2c2a2a++){const _0x4288e1=_0x2c2a2a<_0x316b52[_0x585aac(0x156)]?_0x316b52[_0x2c2a2a]:'',_0x2d6eb3=_0x2c2a2a<_0x3afd25['length']?_0x3afd25[_0x2c2a2a]:'';_0x4288e1===_0x2d6eb3?_0x2aa4af+='\x20\x20'+_0x4288e1+'\x0a':(_0x2aa4af+='-\x20'+_0x4288e1+'\x0a',_0x2aa4af+='+\x20'+_0x2d6eb3+'\x0a');}return _0x2aa4af;}[a0_0x20dfb8(0x102)](_0x432af5){const _0x2db49c=a0_0x20dfb8;return('\x0aProcessed\x20'+_0x432af5[_0x2db49c(0xfa)]+_0x2db49c(0x112)+_0x432af5['filesModified']+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x432af5[_0x2db49c(0x14f)]+'\x0aBackups\x20created:\x20'+_0x432af5['backupsCreated']+_0x2db49c(0x124)+_0x432af5['errors']+_0x2db49c(0x128))['trim']();}async[a0_0x20dfb8(0x153)](_0x56e971){const _0xaa3df8=a0_0x20dfb8;this['logger']?.[_0xaa3df8(0x121)](_0xaa3df8(0x11c),{'operationId':_0x56e971});}}export default FileContentReplaceTool;
1
+ function a0_0x38d1(_0x6a61df,_0x57874f){_0x6a61df=_0x6a61df-0x196;const _0x471c1a=a0_0x471c();let _0x38d1b4=_0x471c1a[_0x6a61df];if(a0_0x38d1['HtNQta']===undefined){var _0x4ddaca=function(_0x28f6b4){const _0x2cc007='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58b70e='',_0x11c690='';for(let _0x5f2754=0x0,_0x112521,_0x294c47,_0x3a6c60=0x0;_0x294c47=_0x28f6b4['charAt'](_0x3a6c60++);~_0x294c47&&(_0x112521=_0x5f2754%0x4?_0x112521*0x40+_0x294c47:_0x294c47,_0x5f2754++%0x4)?_0x58b70e+=String['fromCharCode'](0xff&_0x112521>>(-0x2*_0x5f2754&0x6)):0x0){_0x294c47=_0x2cc007['indexOf'](_0x294c47);}for(let _0x25c408=0x0,_0x41f18d=_0x58b70e['length'];_0x25c408<_0x41f18d;_0x25c408++){_0x11c690+='%'+('00'+_0x58b70e['charCodeAt'](_0x25c408)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x11c690);};a0_0x38d1['slNtUV']=_0x4ddaca,a0_0x38d1['AHtYwk']={},a0_0x38d1['HtNQta']=!![];}const _0x4d5fe1=_0x471c1a[0x0],_0x5159f6=_0x6a61df+_0x4d5fe1,_0x367d4d=a0_0x38d1['AHtYwk'][_0x5159f6];return!_0x367d4d?(_0x38d1b4=a0_0x38d1['slNtUV'](_0x38d1b4),a0_0x38d1['AHtYwk'][_0x5159f6]=_0x38d1b4):_0x38d1b4=_0x367d4d,_0x38d1b4;}const a0_0x19bb1a=a0_0x38d1;(function(_0x2f0670,_0x2cc8b2){const _0x1d000a=a0_0x38d1,_0x161e53=_0x2f0670();while(!![]){try{const _0x4aaaf4=parseInt(_0x1d000a(0x1d8))/0x1*(parseInt(_0x1d000a(0x1ed))/0x2)+-parseInt(_0x1d000a(0x1d5))/0x3+-parseInt(_0x1d000a(0x19c))/0x4+-parseInt(_0x1d000a(0x196))/0x5+parseInt(_0x1d000a(0x1f6))/0x6*(-parseInt(_0x1d000a(0x19e))/0x7)+-parseInt(_0x1d000a(0x19f))/0x8*(parseInt(_0x1d000a(0x201))/0x9)+parseInt(_0x1d000a(0x1db))/0xa*(parseInt(_0x1d000a(0x1dc))/0xb);if(_0x4aaaf4===_0x2cc8b2)break;else _0x161e53['push'](_0x161e53['shift']());}catch(_0x5181de){_0x161e53['push'](_0x161e53['shift']());}}}(a0_0x471c,0x9903e));function a0_0x471c(){const _0x3c2704=['tufyx0zjtevtx1bfuL9puevsqvrjt04','tufyx05fv19dt05uru5ux1njwKu','AM9PBG','revgqvvmvf9uuKLnx01preu','zxH0CMfJDef0DhjPyNv0zq','icHJB250zw50ig5VDcbMB3vUzcK','ugf0AcbUB3qGywnJzxnZAwjSztOG','Bg9Nz2vY','CMvWBgfJzw1LBNrZ','zxHLyW','zxjYB3jZ','D3jPDgvgAwXL','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','cIaGica','AxnbCNjHEq','tufyx0zjtevFu0LArq','iebacG','cLbYB2nLC3nLzca','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','nZuZote1uevIwunr','tuiPoIa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','mtjLAKXWq1C','B2XKq29UDgvUDa','twfKzsa','mtmYotbsB2f0BMu','mtGZntLgBePRuwu','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','CMvXDwLYzxnqCM9Qzwn0','BwfW','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','rMLSzsbUB3qGzM91BMq6ia','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','zMLSzxnnB2rPzMLLza','yMfJA3vWC0nYzwf0zwq','AxnbyNnVBhv0zq','CMvSyxrPDMu','C3rHCNrZv2L0Aa','C3bSAxq','rMLSzsa','AxnqyxrOqwnJzxnZAwjSzq','BM9Uzq','mty0otGYzunbteLJ','igzPBgvZigLUig9UzsbVCgvYyxrPB24','ChvZAa','BgLUzxmTBgLTAxq','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxnqCM9JzxnZzwq','DgLTzw91Da','BMv3q29UDgvUDa','CMvWBgfJzunVBMzPzW','mta4mer5tvvpEG','ywnJzxnZ','BwvZC2fNzq','Aw5MBW','CgfYC2vku09o','yMfJA3vWq3jLyxrLza','cKjHy2T1ChmGy3jLyxrLzdOG','Aw5JBhvKzxm','lI4U','DxrMltG','CMvHzezPBgu','mJG4mda5svzNveHX','BMv3BgLUzxm','q1jfqvrfx0jbq0Tvufm','odyXoty1v1rvvePy','tufyx09mrf9dt05uru5ux1njwKu','CMvZB2X2zq','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','BgLUzxnmAw1PDa','ig1PC3nPBMCGB2XKq29UDgvUDa','mtGWmdaZmKTvs0ntCa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','nduYndHZugHQDNC','mtm2BxzAr2ru','z2vUzxjHDgveAwzM','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','D29YA2LUz0rPCMvJDg9YEq','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','BgvUz3rO','yxbWBhLuCMLTtw9Kzq','zMLSzs1JB250zw50lxjLCgXHy2u','yxbWBhLszxbSywnLBwvUDa','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','lMjHAW','AgfZ','zxjYB3i','C3vIC3rYAw5N','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','CgfYC2vytuW','Dg90ywXszxbSywnLBwvUDhm','pvSIj10Ow14Ij10QkvSIj10','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','tufyx0XjtKvFuKfor0vFu0LArq','DhjPBq','D2fYBG','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','z2vUzxjHDgvtDw1Tyxj5','ihrVia','CgfYC2vmAw5LuMfUz2vZ','tM8GzgLMzMvYzw5Jzxm','zMLSzxm','y291BNrpy2n1CNjLBMnLCW','Cgf0Aa','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Bw9Kzq','ywrK'];a0_0x471c=function(){return _0x3c2704;};return a0_0x471c();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x58b70e}from'fs';import a0_0x11c690 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x19bb1a(0x1a9),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x5f2754={},_0x112521=null){const _0x4e304b=a0_0x19bb1a;super(_0x5f2754,_0x112521),this[_0x4e304b(0x1de)]=!![],this['isAsync']=!![],this[_0x4e304b(0x1f3)]=_0x5f2754['timeout']||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x5f2754['replaceConfig']};}['getDescription'](){const _0x4da637=a0_0x19bb1a;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x4da637(0x1d1)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG[_0x4da637(0x1c3)]/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x4da637(0x1b1)+REPLACE_CONFIG[_0x4da637(0x1c2)]+_0x4da637(0x1ce);}['parseParameters'](_0x294c47){const _0x31f754=a0_0x19bb1a;try{if(_0x294c47[_0x31f754(0x1b5)]()['startsWith']('{'))return this[_0x31f754(0x1fa)](_0x294c47);return this[_0x31f754(0x1ae)](_0x294c47);}catch(_0x3a6c60){this['logger']?.[_0x31f754(0x1ab)](_0x31f754(0x1d4),{'error':_0x3a6c60[_0x31f754(0x1f8)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x3a6c60[_0x31f754(0x1f8)]);}}[a0_0x19bb1a(0x1fa)](_0x25c408){const _0x1b5a78=a0_0x19bb1a,_0x41f18d=JSON['parse'](_0x25c408);if(!_0x41f18d['files']||!Array[_0x1b5a78(0x1d0)](_0x41f18d['files']))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x41f18d[_0x1b5a78(0x1bc)][_0x1b5a78(0x1df)](_0x4b9005=>({'path':_0x4b9005['path'],'replacements':(_0x4b9005['replacements']||[])[_0x1b5a78(0x1df)](_0x3e560e=>({'oldContent':_0x3e560e[_0x1b5a78(0x1d9)],'newContent':_0x3e560e[_0x1b5a78(0x1f4)],'mode':_0x3e560e['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x3e560e[_0x1b5a78(0x19a)]||null}))}))};}['parseXML'](_0x4e8ea6){const _0x3c6528=a0_0x19bb1a,_0x3a4ca3=[],_0x51dffd=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x4e8e1f;while((_0x4e8e1f=_0x51dffd[_0x3c6528(0x1cb)](_0x4e8ea6))!==null){const _0x7c7cd2=_0x4e8e1f[0x1],_0x382fa2=_0x4e8e1f[0x2],_0x26b59a=[],_0x17bf28=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0xf82867;while((_0xf82867=_0x17bf28[_0x3c6528(0x1cb)](_0x382fa2))!==null){const _0x49aee3=_0xf82867[0x1]||'',_0x10e5f2=_0xf82867[0x2],_0x3ad65f=this[_0x3c6528(0x1c6)](_0x49aee3,'mode')||REPLACE_CONFIG[_0x3c6528(0x1c5)],_0x2055eb=this['extractAttribute'](_0x49aee3,_0x3c6528(0x1f0)),_0x2d1557=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x10e5f2);if(!_0x2d1557){this[_0x3c6528(0x1c9)]?.['warn'](_0x3c6528(0x1dd));continue;}const _0x5baccd=_0x2d1557[0x1],_0x16e6af=/<new-content>([\s\S]*?)<\/new-content>/i[_0x3c6528(0x1cb)](_0x10e5f2);if(!_0x16e6af){this[_0x3c6528(0x1c9)]?.[_0x3c6528(0x1b6)](_0x3c6528(0x19d));continue;}const _0x1bd86f=_0x16e6af[0x1],_0x2e6918=this['applyTrimMode'](_0x5baccd,_0x3ad65f),_0x47a77e=this['applyTrimMode'](_0x1bd86f,_0x3ad65f);_0x26b59a['push']({'oldContent':_0x2e6918,'newContent':_0x47a77e,'mode':_0x3ad65f,'linesLimit':_0x2055eb});}_0x26b59a[_0x3c6528(0x1a4)]>0x0&&_0x3a4ca3['push']({'path':_0x7c7cd2,'replacements':_0x26b59a});}return{'files':_0x3a4ca3};}[a0_0x19bb1a(0x1c6)](_0x58d1e6,_0x59ed1b){const _0x364355=a0_0x19bb1a,_0x324499=new RegExp(_0x59ed1b+_0x364355(0x1b0),'i'),_0x1534ed=_0x324499[_0x364355(0x1cb)](_0x58d1e6);return _0x1534ed?_0x1534ed[0x1]:null;}[a0_0x19bb1a(0x1a5)](_0x49c83,_0x3dc50c){const _0x2374da=a0_0x19bb1a;switch(_0x3dc50c){case _0x2374da(0x202):return _0x49c83['replace'](/^\n+|\n+$/g,'');case'none':return _0x49c83;case _0x2374da(0x1b5):default:return _0x49c83['trim']();}}[a0_0x19bb1a(0x1bf)](){const _0x2ede20=a0_0x19bb1a;return[_0x2ede20(0x1bc)];}['customValidateParameters'](_0x4eae62){const _0x1fda5b=a0_0x19bb1a,_0x41d49f=[];if(!_0x4eae62['files']||!Array['isArray'](_0x4eae62[_0x1fda5b(0x1bc)]))_0x41d49f['push'](_0x1fda5b(0x1ad));else{_0x4eae62['files'][_0x1fda5b(0x1a4)]===0x0&&_0x41d49f[_0x1fda5b(0x1ef)](_0x1fda5b(0x1b7));_0x4eae62[_0x1fda5b(0x1bc)][_0x1fda5b(0x1a4)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x41d49f['push'](_0x1fda5b(0x1a3)+this['replaceConfig'][_0x1fda5b(0x1c2)]+_0x1fda5b(0x1ee));for(const _0x1fb96c of _0x4eae62['files']){!_0x1fb96c[_0x1fda5b(0x1be)]&&_0x41d49f[_0x1fda5b(0x1ef)]('Each\x20file\x20must\x20have\x20a\x20path');_0x1fb96c['path']&&_0x1fb96c[_0x1fda5b(0x1be)]['includes']('..')&&_0x41d49f['push'](_0x1fda5b(0x1d7)+_0x1fb96c['path']);if(!_0x1fb96c[_0x1fda5b(0x1ca)]||!Array[_0x1fda5b(0x1d0)](_0x1fb96c[_0x1fda5b(0x1ca)]))_0x41d49f[_0x1fda5b(0x1ef)](_0x1fda5b(0x1ea)+_0x1fb96c['path']+_0x1fda5b(0x1b3));else{if(_0x1fb96c['replacements'][_0x1fda5b(0x1a4)]===0x0)_0x41d49f['push'](_0x1fda5b(0x1ea)+_0x1fb96c[_0x1fda5b(0x1be)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x25c753 of _0x1fb96c[_0x1fda5b(0x1ca)]){!_0x25c753['oldContent']&&_0x25c753[_0x1fda5b(0x1d9)]!==''&&_0x41d49f['push']('Replacement\x20in\x20'+_0x1fb96c['path']+_0x1fda5b(0x19b)),!_0x25c753['newContent']&&_0x25c753['newContent']!==''&&_0x41d49f['push']('Replacement\x20in\x20'+_0x1fb96c[_0x1fda5b(0x1be)]+'\x20missing\x20newContent'),_0x25c753['oldContent']&&_0x25c753['oldContent'][_0x1fda5b(0x1a4)]>this['replaceConfig'][_0x1fda5b(0x197)]&&_0x41d49f['push'](_0x1fda5b(0x1b2)+this[_0x1fda5b(0x1f5)]['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x25c753[_0x1fda5b(0x1f4)]&&_0x25c753['newContent'][_0x1fda5b(0x1a4)]>this[_0x1fda5b(0x1f5)]['MAX_NEW_CONTENT_SIZE']&&_0x41d49f['push'](_0x1fda5b(0x1a8)+this[_0x1fda5b(0x1f5)]['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x25c753[_0x1fda5b(0x1c0)]&&!['trim',_0x1fda5b(0x202),_0x1fda5b(0x1ec)][_0x1fda5b(0x1fd)](_0x25c753['mode'])&&_0x41d49f['push']('Invalid\x20mode:\x20'+_0x25c753[_0x1fda5b(0x1c0)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x41d49f['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x41d49f['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x211131,_0x2797b2){const _0x34e9b5=a0_0x19bb1a,{files:_0x47b86f}=_0x211131,{projectDir:_0xa5b63c,agentId:_0x92a78a,directoryAccess:_0x26263f}=_0x2797b2;let _0x35c7cc=_0xa5b63c||process['cwd']();_0x26263f&&_0x26263f[_0x34e9b5(0x1a2)]&&(_0x35c7cc=_0x26263f['workingDirectory'],this[_0x34e9b5(0x1c9)]?.['info'](_0x34e9b5(0x199),{'workingDirectory':_0x26263f['workingDirectory'],'agentId':_0x92a78a}));this[_0x34e9b5(0x1c9)]?.[_0x34e9b5(0x1f9)]('Executing\x20file\x20content\x20replace',{'fileCount':_0x47b86f['length'],'workingDirectory':_0x35c7cc,'agentId':_0x92a78a});const _0x34bb09=[],_0x57e659={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x3296c3 of _0x47b86f){try{const _0x535256=await this['processFile'](_0x3296c3,_0x35c7cc,_0x26263f);_0x34bb09[_0x34e9b5(0x1ef)](_0x535256),_0x57e659['filesProcessed']++,_0x535256['replacementsMade']>0x0&&(_0x57e659['filesModified']++,_0x57e659[_0x34e9b5(0x1af)]+=_0x535256[_0x34e9b5(0x1f1)]),_0x535256[_0x34e9b5(0x1fb)]&&_0x57e659[_0x34e9b5(0x1e5)]++;}catch(_0x3a1910){this['logger']?.['error']('Error\x20processing\x20file\x20'+_0x3296c3['path'],{'error':_0x3a1910['message']}),_0x34bb09[_0x34e9b5(0x1ef)]({'filePath':_0x3296c3[_0x34e9b5(0x1be)],'success':![],'error':_0x3a1910['message']}),_0x57e659['errors']++;}}return{'success':_0x57e659['errors']===0x0,'results':_0x34bb09,'statistics':_0x57e659,'summary':this[_0x34e9b5(0x1b8)](_0x57e659),'toolUsed':_0x34e9b5(0x1a6)};}async['processFile'](_0x7901ec,_0x43e2be,_0x42a01d){const _0x10a1f5=a0_0x19bb1a,{path:_0x390276,replacements:_0x48371c}=_0x7901ec,_0x3152f4=a0_0x11c690[_0x10a1f5(0x1e6)](_0x390276)?_0x390276:a0_0x11c690[_0x10a1f5(0x198)](_0x43e2be,_0x390276);if(_0x42a01d){const _0x58e612=this[_0x10a1f5(0x1eb)](_0x3152f4,_0x43e2be,_0x42a01d);if(!_0x58e612)throw new Error(_0x10a1f5(0x1c8)+_0x390276);}try{await a0_0x58b70e[_0x10a1f5(0x1f7)](_0x3152f4);}catch(_0x5b9149){throw new Error(_0x10a1f5(0x1e1)+_0x390276);}const _0x49f216=await a0_0x58b70e['stat'](_0x3152f4);if(_0x49f216['size']>this[_0x10a1f5(0x1f5)][_0x10a1f5(0x1d1)])throw new Error('File\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_FILE_SIZE']/(0x400*0x400)+_0x10a1f5(0x1d6)+_0x390276);let _0x3677f1=await a0_0x58b70e[_0x10a1f5(0x200)](_0x3152f4,'utf-8');const _0x364bb2=_0x3677f1;let _0x437981=![];if(this[_0x10a1f5(0x1f5)][_0x10a1f5(0x203)]){const _0x3d2af3=_0x3152f4+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x58b70e[_0x10a1f5(0x1cd)](_0x3d2af3,_0x364bb2,_0x10a1f5(0x1ff)),_0x437981=!![];}catch(_0x2ec4da){this['logger']?.['warn'](_0x10a1f5(0x1a1)+_0x2ec4da[_0x10a1f5(0x1f8)]);}}let _0x2f33f6=0x0;const _0x4b04cc=[];for(const _0x1c0c7b of _0x48371c){const _0x449df1=await this[_0x10a1f5(0x1a7)](_0x3677f1,_0x1c0c7b[_0x10a1f5(0x1d9)],_0x1c0c7b[_0x10a1f5(0x1f4)],_0x1c0c7b['linesLimit'],_0x1c0c7b[_0x10a1f5(0x1c0)]);_0x3677f1=_0x449df1[_0x10a1f5(0x1f4)],_0x2f33f6+=_0x449df1['count'],_0x4b04cc['push']({'oldContent':_0x1c0c7b[_0x10a1f5(0x1d9)]['substring'](0x0,0x32)+(_0x1c0c7b['oldContent']['length']>0x32?_0x10a1f5(0x1fe):''),'newContent':_0x1c0c7b['newContent'][_0x10a1f5(0x1ac)](0x0,0x32)+(_0x1c0c7b[_0x10a1f5(0x1f4)][_0x10a1f5(0x1a4)]>0x32?'...':''),'count':_0x449df1['count'],'mode':_0x1c0c7b[_0x10a1f5(0x1c0)],'linesLimit':_0x1c0c7b[_0x10a1f5(0x19a)]});}_0x2f33f6>0x0&&await a0_0x58b70e[_0x10a1f5(0x1cd)](_0x3152f4,_0x3677f1,_0x10a1f5(0x1ff));const _0x4dc71b=_0x2f33f6>0x0?this[_0x10a1f5(0x1a0)](_0x364bb2,_0x3677f1):null;return{'filePath':_0x390276,'resolvedPath':_0x3152f4,'success':!![],'replacementsMade':_0x2f33f6,'backupCreated':_0x437981,'replacementDetails':_0x4b04cc,'diff':_0x4dc71b,'message':_0x2f33f6>0x0?_0x10a1f5(0x1da)+_0x2f33f6+'\x20replacement(s)\x20in\x20'+_0x390276:'No\x20replacements\x20made\x20in\x20'+_0x390276+_0x10a1f5(0x1c7)};}['isPathAccessible'](_0x14a323,_0x559b91,_0x133e7a){const _0x9b2935=a0_0x19bb1a,_0x548eab=a0_0x11c690[_0x9b2935(0x1e7)](_0x559b91,_0x14a323);if(!_0x548eab[_0x9b2935(0x1e8)]('..')&&!a0_0x11c690['isAbsolute'](_0x548eab))return!![];if(_0x133e7a['writeEnabledDirectories'])for(const _0xb8a267 of _0x133e7a[_0x9b2935(0x1e3)]){const _0x491c27=a0_0x11c690['relative'](_0xb8a267,_0x14a323);if(!_0x491c27['startsWith']('..')&&!a0_0x11c690[_0x9b2935(0x1e6)](_0x491c27))return!![];}return![];}async[a0_0x19bb1a(0x1a7)](_0x1760bd,_0x564158,_0x5657e2,_0x1b3537,_0x1b542d){const _0x1b9ec2=a0_0x19bb1a;if(!_0x1b3537){const _0x56b6eb=this[_0x1b9ec2(0x1bd)](_0x1760bd,_0x564158);if(_0x56b6eb===0x0)return{'newContent':_0x1760bd,'count':0x0};const _0x2e73b3=_0x1760bd[_0x1b9ec2(0x1e9)](_0x564158)[_0x1b9ec2(0x1c4)](_0x5657e2);return{'newContent':_0x2e73b3,'count':_0x56b6eb};}const _0x22a922=this[_0x1b9ec2(0x1ba)](_0x1b3537),_0x17a050=_0x1760bd[_0x1b9ec2(0x1e9)]('\x0a');let _0x593383=0x0;for(let _0x331204=0x0;_0x331204<_0x17a050['length'];_0x331204++){const _0x5b7e3f=_0x331204+0x1;if(_0x22a922[_0x1b9ec2(0x1aa)](_0x5b7e3f)){if(_0x17a050[_0x331204][_0x1b9ec2(0x1fd)](_0x564158)){const _0x145940=this['countOccurrences'](_0x17a050[_0x331204],_0x564158);_0x17a050[_0x331204]=_0x17a050[_0x331204]['split'](_0x564158)[_0x1b9ec2(0x1c4)](_0x5657e2),_0x593383+=_0x145940;}}}return{'newContent':_0x17a050['join']('\x0a'),'count':_0x593383};}['countOccurrences'](_0x10d06a,_0x2a3e6c){const _0x201876=a0_0x19bb1a;if(!_0x2a3e6c)return 0x0;return _0x10d06a[_0x201876(0x1e9)](_0x2a3e6c)[_0x201876(0x1a4)]-0x1;}['parseLineRanges'](_0x4f9679){const _0x1860d1=a0_0x19bb1a,_0x36d334=new Set();if(!_0x4f9679||_0x4f9679[_0x1860d1(0x1b5)]()==='')return _0x36d334;const _0x416a45=_0x4f9679['split'](',');for(const _0x5c5ef6 of _0x416a45){const _0x2ea3a4=_0x5c5ef6[_0x1860d1(0x1b5)]();if(_0x2ea3a4==='')continue;if(_0x2ea3a4['includes']('-')){const [_0x32624f,_0x593ba2]=_0x2ea3a4[_0x1860d1(0x1e9)]('-')['map'](_0x3afda0=>parseInt(_0x3afda0['trim'](),0xa));if(!isNaN(_0x32624f)&&!isNaN(_0x593ba2)&&_0x593ba2-_0x32624f<this['replaceConfig'][_0x1860d1(0x1b4)])for(let _0x4732a7=_0x32624f;_0x4732a7<=_0x593ba2;_0x4732a7++){_0x36d334[_0x1860d1(0x1c1)](_0x4732a7);}}else{const _0x2fb35f=parseInt(_0x2ea3a4,0xa);!isNaN(_0x2fb35f)&&_0x36d334[_0x1860d1(0x1c1)](_0x2fb35f);}}return _0x36d334;}[a0_0x19bb1a(0x1a0)](_0x406bc2,_0x1f8c69){const _0x172b92=a0_0x19bb1a,_0x33ccf9=_0x406bc2['split']('\x0a'),_0x3e97d1=_0x1f8c69['split']('\x0a');let _0x10b914=-0x1,_0x5cf0d2=-0x1;const _0x3143b9=Math['max'](_0x33ccf9[_0x172b92(0x1a4)],_0x3e97d1['length']);for(let _0x35ae53=0x0;_0x35ae53<_0x3143b9;_0x35ae53++){const _0x4f3232=_0x35ae53<_0x33ccf9[_0x172b92(0x1a4)]?_0x33ccf9[_0x35ae53]:'',_0x4baf86=_0x35ae53<_0x3e97d1['length']?_0x3e97d1[_0x35ae53]:'';if(_0x4f3232!==_0x4baf86){if(_0x10b914===-0x1)_0x10b914=_0x35ae53;_0x5cf0d2=_0x35ae53;}}if(_0x10b914===-0x1)return _0x172b92(0x1bb);const _0x297a7a=this['replaceConfig']['DIFF_CONTEXT_LINES'],_0x2a5e54=Math['max'](0x0,_0x10b914-_0x297a7a),_0x44ddc7=Math['min'](_0x3143b9-0x1,_0x5cf0d2+_0x297a7a);if(_0x44ddc7-_0x2a5e54>this['replaceConfig']['MAX_DIFF_LINES'])return'Diff\x20too\x20large\x20('+(_0x44ddc7-_0x2a5e54+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+('Changed\x20lines:\x20'+(_0x10b914+0x1)+_0x172b92(0x1b9)+(_0x5cf0d2+0x1));let _0x268d18='@@\x20-'+(_0x2a5e54+0x1)+','+(_0x44ddc7-_0x2a5e54+0x1)+'\x20+'+(_0x2a5e54+0x1)+','+(_0x44ddc7-_0x2a5e54+0x1)+_0x172b92(0x1d2);for(let _0x157a8c=_0x2a5e54;_0x157a8c<=_0x44ddc7;_0x157a8c++){const _0x523ba2=_0x157a8c<_0x33ccf9['length']?_0x33ccf9[_0x157a8c]:'',_0x19d02d=_0x157a8c<_0x3e97d1[_0x172b92(0x1a4)]?_0x3e97d1[_0x157a8c]:'';_0x523ba2===_0x19d02d?_0x268d18+='\x20\x20'+_0x523ba2+'\x0a':(_0x268d18+='-\x20'+_0x523ba2+'\x0a',_0x268d18+='+\x20'+_0x19d02d+'\x0a');}return _0x268d18;}['generateSummary'](_0x492de3){const _0x5bada2=a0_0x19bb1a;return(_0x5bada2(0x1d3)+_0x492de3[_0x5bada2(0x1f2)]+'\x20file(s)\x0aModified\x20'+_0x492de3[_0x5bada2(0x1e4)]+_0x5bada2(0x1e2)+_0x492de3['totalReplacements']+_0x5bada2(0x1fc)+_0x492de3['backupsCreated']+'\x0aErrors:\x20'+_0x492de3[_0x5bada2(0x1cc)]+_0x5bada2(0x1cf))[_0x5bada2(0x1b5)]();}async['cleanup'](_0x2eaeaa){const _0x744618=a0_0x19bb1a;this['logger']?.['info'](_0x744618(0x1e0),{'operationId':_0x2eaeaa});}}export default FileContentReplaceTool;
@@ -1 +1 @@
1
- const a0_0xde1dc1=a0_0x44f0;(function(_0x13f930,_0x25a8b7){const _0x32d6f8=a0_0x44f0,_0x532a45=_0x13f930();while(!![]){try{const _0x44e6da=parseInt(_0x32d6f8(0x20d))/0x1+parseInt(_0x32d6f8(0x21b))/0x2+parseInt(_0x32d6f8(0x1fb))/0x3+parseInt(_0x32d6f8(0x1c0))/0x4*(-parseInt(_0x32d6f8(0x206))/0x5)+-parseInt(_0x32d6f8(0x230))/0x6+-parseInt(_0x32d6f8(0x200))/0x7*(-parseInt(_0x32d6f8(0x1ed))/0x8)+-parseInt(_0x32d6f8(0x23f))/0x9*(parseInt(_0x32d6f8(0x23b))/0xa);if(_0x44e6da===_0x25a8b7)break;else _0x532a45['push'](_0x532a45['shift']());}catch(_0x5a19dc){_0x532a45['push'](_0x532a45['shift']());}}}(a0_0x57f3,0x79574));import{BaseTool}from'./baseTool.js';import a0_0x1322e1 from'../utilities/tagParser.js';import a0_0x55f9ed from'../utilities/directoryAccessManager.js';import a0_0x1890e5 from'fs/promises';import a0_0x39d076 from'path';function a0_0x44f0(_0x4b2f6b,_0x55bbef){_0x4b2f6b=_0x4b2f6b-0x1b0;const _0x57f30b=a0_0x57f3();let _0x44f0cb=_0x57f30b[_0x4b2f6b];if(a0_0x44f0['mtvRDM']===undefined){var _0x1adb49=function(_0x443d2f){const _0x263b7d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1322e1='',_0x55f9ed='';for(let _0x1890e5=0x0,_0x39d076,_0x542aea,_0x1e95e8=0x0;_0x542aea=_0x443d2f['charAt'](_0x1e95e8++);~_0x542aea&&(_0x39d076=_0x1890e5%0x4?_0x39d076*0x40+_0x542aea:_0x542aea,_0x1890e5++%0x4)?_0x1322e1+=String['fromCharCode'](0xff&_0x39d076>>(-0x2*_0x1890e5&0x6)):0x0){_0x542aea=_0x263b7d['indexOf'](_0x542aea);}for(let _0x1d4ffd=0x0,_0x3eded9=_0x1322e1['length'];_0x1d4ffd<_0x3eded9;_0x1d4ffd++){_0x55f9ed+='%'+('00'+_0x1322e1['charCodeAt'](_0x1d4ffd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55f9ed);};a0_0x44f0['WbaPtL']=_0x1adb49,a0_0x44f0['FgZwcQ']={},a0_0x44f0['mtvRDM']=!![];}const _0x6239cf=_0x57f30b[0x0],_0x1eb5aa=_0x4b2f6b+_0x6239cf,_0xc8be45=a0_0x44f0['FgZwcQ'][_0x1eb5aa];return!_0xc8be45?(_0x44f0cb=a0_0x44f0['WbaPtL'](_0x44f0cb),a0_0x44f0['FgZwcQ'][_0x1eb5aa]=_0x44f0cb):_0x44f0cb=_0xc8be45,_0x44f0cb;}import a0_0x542aea from'crypto';function a0_0x57f3(){const _0xe799d5=['ywDLBNrjza','zgvIDwC','Bw92zq','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','C291CMnLugf0Aa','igj5DgvZigzYB20G','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','CMvHza','ywXSB3DLzev4DgvUC2LVBNm','BM9YBwfSAxPL','ywn0Aw9UCW','yNL0zuXLBMD0Aa','rMfPBgvKihrVignVChKG','nZq5nLvdzezhvW','B3v0Chv0lxbHDgG','y3jLyxrLlwrPCNm','qwn0Aw9Uia','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','Cgf0Aa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','CMf3q29UDgvUDa','zMLSzvbHDgG','CgfYC2vbDhrYAwj1DgvZ','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','igL0zw1ZigLUia','ru5pru5u','mtu4nte2n3jvA25uqW','y3jLyxrLuMvSyxrPDMvqyxrO','yMLYDgH0Aw1L','y2HLy2TfEgLZDhm','AxntEw1IB2XPy0XPBMS','ntu3mNfqBej3Aa','BM93','lMrLBgv0zwqTyMfJA3vWlq','uMvHzcbHy2nLC3mGzgvUAwvKoIa','CgfYC2vqyxjHBwv0zxjZ','C3rHDa','mJeWmJvMyNrNqKm','ywXSB3DLza','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','D3jPDgu','zgvSzxrLrMLSzq','Aw5JBhvKzxm','B3bLCMf0Aw9UsgLZDg9YEq','nJy0oty5sNfizhfZ','CMvHzgrPCG','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','Dg9mB3DLCKnHC2u','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','uMv0CMLLDMvKihn0yxrZigzVCIa','y29Kzq','CMvHC29U','zMLSzs1WyxrO','Bwf4rMLSzvnPEMu','zMLSzq','v3jPDguGywnJzxnZigrLBMLLzdOG','DgLTzw91Da','zgvZDc1WyxrO','ote0nda2C3L5BKjZ','yxbWzw5K','BgvUz3rO','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','CMvXDwLYzxnqCM9Qzwn0','AxnbC3LUyW','D29YA2LUz0rPCMvJDg9YEq','z2v0v29YA2LUz0rPCMvJDg9YEq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','q29WAwvKia','D3jPDgvgAwXL','ywXSB3DLzerPCMvJDg9YAwvZ','B3v0Chv0ugf0Aa','y3jLyxrLrgLYCW','DhjPBq','Bwf0y2HbBgW','BwvZC2fNzq','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','zgvSzxrL','ChvZAa','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','nteZnJiWnfDVv2vRzq','BwTKAxi','DMfSAwrHDgvxCML0zufJy2vZCW','igj5DgvZihrVia','DhLWzq','Dhj1zq','y3DK','C3rHDhm','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','zgvZDfbHDgG','y3jLyxrLrgLYzwn0B3j5','oteWy2zvExfx','zMLSDgvY','qxbWzw5KzwqG','ywnJzxnZ','nZyXntHdvMXcseG','zgLYzwn0B3j5','oIb0ExbLigLZihjLCxvPCMvK','lMv4zq','y29WEq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','uMvHzca','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','Bg9N','Dg9ju09tDhjPBMC','CMvHzezPBgu','CMvZB2X2zvbHDgG','BwfW','C291CMnLlxbHDgG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','z2v0rMLSzvn0yxrZ','BMfTzq','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','CMvUyw1L','y3jLyxrLlwrPCG','AxneAxjLy3rVCNK','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','tw92zwqG','yxbWzw5Kvg9gAwXL','q29UDgvUDcb0B28GBgfYz2u6ia','rMfPBgvKihrVihDYAxrLigzPBguG','ywrKvg9iAxn0B3j5','mJyWB2j4qxDZ','y29UDgvUDa','igrVzxmGBM90igv4Axn0','C2XPy2u','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','yMXVy2TLzev4DgvUC2LVBNm','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','DMfSAwrHDgvqyxrOqwnJzxnZ','lNnJCG','rMfPBgvKihrVihjLywqGzMLSzsa','C3rYAw5NAwz5','igj5DgvZicHTyxGG','AxnbCNjHEq','zxHPC3rZ','C2L6zq','icHIywnRDxaGy3jLyxrLzcK','BgLZDa','ihrVia','z2v0ugfYyw1LDgvYu2nOzw1H','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zxH0BMfTzq','Bg9Nz2vY','C3rYAw5N','zw5JB2rPBMC','DMfSAwrHDgvszwfKqwnJzxnZ','DxrMoa','y29WEuzPBgu','Bw92zuzPBgu'];a0_0x57f3=function(){return _0xe799d5;};return a0_0x57f3();}import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x1e95e8={},_0x1d4ffd=null){const _0x2b2a67=a0_0x44f0;super(_0x1e95e8,_0x1d4ffd),this[_0x2b2a67(0x21f)]=!![],this[_0x2b2a67(0x220)]=![],this['timeout']=_0x1e95e8[_0x2b2a67(0x219)]||0x7530,this[_0x2b2a67(0x211)]=_0x1e95e8['maxConcurrentOperations']||0x5,this[_0x2b2a67(0x216)]=_0x1e95e8['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x1e95e8[_0x2b2a67(0x1e8)]||null,this[_0x2b2a67(0x1c5)]=_0x1e95e8[_0x2b2a67(0x1c5)]||[_0x2b2a67(0x242),'.bat','.cmd',_0x2b2a67(0x1c8),'.com'],this['allowedDirectories']=_0x1e95e8[_0x2b2a67(0x226)]||null,this['operationHistory']=[],this[_0x2b2a67(0x1f3)]=new a0_0x55f9ed(_0x1e95e8,_0x1d4ffd);}['getDescription'](){const _0x478623=a0_0x44f0;return _0x478623(0x208)+Math['round'](this[_0x478623(0x216)]/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}[a0_0xde1dc1(0x204)](_0x3eded9){const _0x38ada2=a0_0xde1dc1;try{const _0x191aca={},_0x1dd3d1=[];this[_0x38ada2(0x1d6)]?.[_0x38ada2(0x1de)](_0x38ada2(0x244),{'contentLength':_0x3eded9[_0x38ada2(0x21d)],'contentPreview':_0x3eded9['substring'](0x0,0xc8)});const _0x254e2c=[_0x38ada2(0x1e7),'delete',_0x38ada2(0x243),'move',_0x38ada2(0x1b8),_0x38ada2(0x1d0),'exists',_0x38ada2(0x237),'append'];for(const _0x3a9398 of _0x254e2c){const _0x36527f=a0_0x1322e1['extractTagsWithAttributes'](_0x3eded9,_0x3a9398);for(const _0x40b11d of _0x36527f){const _0x53629d={'type':_0x3a9398,..._0x40b11d['attributes']};_0x53629d['file-path']&&(_0x53629d['filePath']=_0x53629d[_0x38ada2(0x215)],delete _0x53629d[_0x38ada2(0x215)]),_0x53629d['output-path']&&(_0x53629d['outputPath']=_0x53629d[_0x38ada2(0x1ee)],delete _0x53629d[_0x38ada2(0x1ee)]),_0x53629d[_0x38ada2(0x1b2)]&&(_0x53629d['sourcePath']=_0x53629d[_0x38ada2(0x1b2)],delete _0x53629d['source-path']),_0x53629d[_0x38ada2(0x21a)]&&(_0x53629d['destPath']=_0x53629d['dest-path'],delete _0x53629d['dest-path']),_0x53629d['create-dirs']&&(_0x53629d[_0x38ada2(0x228)]=_0x53629d['create-dirs']===_0x38ada2(0x235),delete _0x53629d['create-dirs']),_0x1dd3d1[_0x38ada2(0x22e)](_0x53629d);}}const _0x4985b7=_0x3eded9['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x5e77f6 of _0x4985b7){const _0x478cf4=new a0_0x1322e1(),_0x44b086=_0x478cf4['parseAttributes'](_0x5e77f6[0x1]),_0x2a2181=_0x5e77f6[0x2]['trim'](),_0x763033={'type':_0x38ada2(0x209),'content':_0x2a2181,..._0x44b086};_0x763033['output-path']&&(_0x763033['outputPath']=_0x763033[_0x38ada2(0x1ee)],delete _0x763033[_0x38ada2(0x1ee)]),_0x763033[_0x38ada2(0x1ef)]&&(_0x763033['createDirs']=_0x763033['create-dirs']===_0x38ada2(0x235),delete _0x763033[_0x38ada2(0x1ef)]),_0x1dd3d1[_0x38ada2(0x22e)](_0x763033);}const _0x188a67=_0x3eded9[_0x38ada2(0x22a)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x43c245 of _0x188a67){const _0x4d4421=new a0_0x1322e1(),_0x5c4a1b=_0x4d4421[_0x38ada2(0x1f7)](_0x43c245[0x1]),_0x360098=_0x43c245[0x2][_0x38ada2(0x229)](),_0x48aa7b={'type':_0x38ada2(0x21c),'content':_0x360098,..._0x5c4a1b};_0x48aa7b['file-path']&&(_0x48aa7b['filePath']=_0x48aa7b['file-path'],delete _0x48aa7b['file-path']),_0x1dd3d1[_0x38ada2(0x22e)](_0x48aa7b);}return _0x191aca[_0x38ada2(0x1ea)]=_0x1dd3d1,_0x191aca[_0x38ada2(0x1f5)]=_0x3eded9['trim'](),this['logger']?.['debug'](_0x38ada2(0x245),{'totalActions':_0x1dd3d1['length'],'actionTypes':_0x1dd3d1[_0x38ada2(0x1b1)](_0x258f59=>_0x258f59[_0x38ada2(0x234)]),'actions':_0x1dd3d1['map'](_0x6b0042=>({'type':_0x6b0042[_0x38ada2(0x234)],'filePath':_0x6b0042['filePath'],'outputPath':_0x6b0042[_0x38ada2(0x227)],'hasContent':!!_0x6b0042['content']}))}),_0x191aca;}catch(_0x477be2){throw new Error(_0x38ada2(0x1ba)+_0x477be2['message']);}}['getRequiredParameters'](){return['actions'];}['customValidateParameters'](_0x1e98a2){const _0x2f36d5=a0_0xde1dc1,_0x572d05=[];if(!_0x1e98a2[_0x2f36d5(0x1ea)]||!Array[_0x2f36d5(0x1cc)](_0x1e98a2['actions'])||_0x1e98a2[_0x2f36d5(0x1ea)][_0x2f36d5(0x21d)]===0x0)_0x572d05['push'](_0x2f36d5(0x1e1));else for(const [_0x2cd6ef,_0x5db642]of _0x1e98a2[_0x2f36d5(0x1ea)]['entries']()){if(!_0x5db642[_0x2f36d5(0x234)]){_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x241));continue;}switch(_0x5db642['type']){case'read':case'delete':case _0x2f36d5(0x1cd):case'stats':!_0x5db642[_0x2f36d5(0x1f6)]&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x223)+_0x5db642['type']);break;case'write':!_0x5db642[_0x2f36d5(0x227)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x1f4));!_0x5db642['content']&&_0x5db642[_0x2f36d5(0x1c1)]!==''&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x22c));break;case'append':!_0x5db642[_0x2f36d5(0x1f6)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x1c6));!_0x5db642['content']&&_0x5db642[_0x2f36d5(0x1c1)]!==''&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case _0x2f36d5(0x1df):!_0x5db642[_0x2f36d5(0x1e3)]&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x5db642['type']);!_0x5db642[_0x2f36d5(0x239)]&&_0x572d05[_0x2f36d5(0x22e)]('Action\x20'+(_0x2cd6ef+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x5db642['type']);break;case'create-dir':case'list':!_0x5db642['directory']&&_0x572d05['push'](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+_0x2f36d5(0x21e)+_0x5db642[_0x2f36d5(0x234)]);break;default:_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5db642['type']);}_0x5db642['filePath']&&!this['isAllowedFileExtension'](_0x5db642[_0x2f36d5(0x1f6)])&&_0x572d05[_0x2f36d5(0x22e)](_0x2f36d5(0x1f0)+(_0x2cd6ef+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x39d076[_0x2f36d5(0x1d5)](_0x5db642[_0x2f36d5(0x1f6)])),_0x5db642[_0x2f36d5(0x227)]&&!this['isAllowedFileExtension'](_0x5db642['outputPath'])&&_0x572d05['push']('Action\x20'+(_0x2cd6ef+0x1)+_0x2f36d5(0x20f)+a0_0x39d076['extname'](_0x5db642['outputPath']));}return{'valid':_0x572d05[_0x2f36d5(0x21d)]===0x0,'errors':_0x572d05};}async['execute'](_0x450f9c,_0x1f11d7){const _0x58d290=a0_0xde1dc1;if(!_0x450f9c||typeof _0x450f9c!=='object')throw new Error('Invalid\x20parameters:\x20params\x20must\x20be\x20an\x20object');const {actions:_0x50d8c2}=_0x450f9c;if(!_0x50d8c2)throw new Error(_0x58d290(0x1b3)+JSON[_0x58d290(0x1ca)](Object['keys'](_0x450f9c)));if(!Array[_0x58d290(0x1cc)](_0x50d8c2))throw new Error(_0x58d290(0x1e2)+typeof _0x50d8c2);if(_0x50d8c2[_0x58d290(0x21d)]===0x0)throw new Error(_0x58d290(0x1d4));const {projectDir:_0x530395,agentId:_0x3ee424,directoryAccess:_0x27a559}=_0x1f11d7,_0x56705c=_0x27a559||this['directoryAccessManager'][_0x58d290(0x1e5)]({'workingDirectory':_0x530395||process[_0x58d290(0x236)](),'writeEnabledDirectories':[_0x530395||process['cwd']()],'restrictToProject':!![]});_0x27a559&&_0x27a559['workingDirectory']?(console[_0x58d290(0x248)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x27a559[_0x58d290(0x221)]),console['log']('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x27a559,null,0x2))):(console['log'](_0x58d290(0x22f),_0x530395||process[_0x58d290(0x236)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x27a559),console['log'](_0x58d290(0x238),_0x530395));const _0x29e3ca=[];for(const _0x2db957 of _0x50d8c2){try{let _0x34c65c;switch(_0x2db957[_0x58d290(0x234)]){case'read':_0x34c65c=await this[_0x58d290(0x24a)](_0x2db957['filePath'],_0x56705c,_0x2db957[_0x58d290(0x1d8)]);break;case _0x58d290(0x209):_0x34c65c=await this['writeFile'](_0x2db957[_0x58d290(0x227)],_0x2db957['content'],_0x56705c,{'encoding':_0x2db957[_0x58d290(0x1d8)],'createDirs':_0x2db957['createDirs']});break;case _0x58d290(0x21c):_0x34c65c=await this[_0x58d290(0x1bc)](_0x2db957[_0x58d290(0x1f6)],_0x2db957[_0x58d290(0x1c1)],_0x56705c,_0x2db957['encoding']);break;case _0x58d290(0x22d):_0x34c65c=await this[_0x58d290(0x20a)](_0x2db957['filePath'],_0x56705c);break;case'copy':_0x34c65c=await this[_0x58d290(0x1db)](_0x2db957[_0x58d290(0x1e3)],_0x2db957[_0x58d290(0x239)],_0x56705c);break;case'move':_0x34c65c=await this['moveFile'](_0x2db957['sourcePath'],_0x2db957['destPath'],_0x56705c);break;case _0x58d290(0x1b8):_0x34c65c=await this[_0x58d290(0x23a)](_0x2db957['directory'],_0x56705c);break;case _0x58d290(0x1d0):_0x34c65c=await this['listDirectory'](_0x2db957['directory'],_0x56705c);break;case _0x58d290(0x1cd):_0x34c65c=await this[_0x58d290(0x1fe)](_0x2db957['filePath'],_0x56705c);break;case'stats':_0x34c65c=await this['getFileStats'](_0x2db957['filePath'],_0x56705c);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x2db957[_0x58d290(0x234)]);}_0x29e3ca['push'](_0x34c65c),this['addToHistory'](_0x2db957,_0x34c65c,_0x1f11d7['agentId']);}catch(_0x47ff4e){const _0x5b1af6={'success':![],'action':_0x2db957[_0x58d290(0x234)],'error':_0x47ff4e[_0x58d290(0x22b)],'filePath':_0x2db957['filePath']||_0x2db957[_0x58d290(0x227)]||_0x2db957['directory']};_0x29e3ca['push'](_0x5b1af6),this[_0x58d290(0x1bf)](_0x2db957,_0x5b1af6,_0x1f11d7[_0x58d290(0x1dd)]);}}return{'success':!![],'actions':_0x29e3ca,'executedActions':_0x50d8c2[_0x58d290(0x21d)],'toolUsed':'filesys'};}async[a0_0xde1dc1(0x24a)](_0x2f7f20,_0x322695,_0x5d7070='utf8'){const _0x2e5b4d=a0_0xde1dc1,_0x3fa676=this[_0x2e5b4d(0x1f3)]['getWorkingDirectory'](_0x322695),_0x4f3a16=this[_0x2e5b4d(0x1b0)](_0x2f7f20,_0x3fa676),_0x1c9595=this['directoryAccessManager']['validateReadAccess'](_0x4f3a16,_0x322695);if(!_0x1c9595[_0x2e5b4d(0x207)])throw new Error(_0x2e5b4d(0x203)+_0x1c9595['reason']+'\x20('+_0x1c9595['path']+')');try{const _0x1a6cff=await a0_0x1890e5['stat'](_0x4f3a16);if(_0x1a6cff['size']>this[_0x2e5b4d(0x216)])throw new Error('File\x20too\x20large:\x20'+_0x1a6cff['size']+_0x2e5b4d(0x1cb)+this[_0x2e5b4d(0x216)]+')');const _0x348ac7=await a0_0x1890e5[_0x2e5b4d(0x24a)](_0x4f3a16,_0x5d7070);return{'success':!![],'action':'read','filePath':this[_0x2e5b4d(0x1f3)]['createRelativePath'](_0x4f3a16,_0x322695),'content':_0x348ac7,'size':_0x1a6cff[_0x2e5b4d(0x1ce)],'encoding':_0x5d7070,'lastModified':_0x1a6cff['mtime']['toISOString'](),'message':_0x2e5b4d(0x246)+_0x1a6cff[_0x2e5b4d(0x1ce)]+_0x2e5b4d(0x1e4)+_0x2f7f20};}catch(_0x151b42){throw new Error(_0x2e5b4d(0x1c9)+_0x2f7f20+':\x20'+_0x151b42['message']);}}async[a0_0xde1dc1(0x225)](_0x2e610d,_0x50ee87,_0x5c4426,_0x173cc3={}){const _0x5e1765=a0_0xde1dc1,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x173cc3,_0x19890b=this['directoryAccessManager']['getWorkingDirectory'](_0x5c4426),_0x20f026=this[_0x5e1765(0x1b0)](_0x2e610d,_0x19890b),_0x36a197=this['directoryAccessManager'][_0x5e1765(0x232)](_0x20f026,_0x5c4426);if(!_0x36a197[_0x5e1765(0x207)])throw new Error(_0x5e1765(0x218)+_0x36a197['reason']+'\x20('+_0x36a197['path']+')');try{const _0xac4ee2=Buffer[_0x5e1765(0x1eb)](_0x50ee87,encoding);if(_0xac4ee2>this['maxFileSize'])throw new Error(_0x5e1765(0x1bd)+_0xac4ee2+'\x20bytes\x20(max\x20'+this[_0x5e1765(0x216)]+')');if(createDirs){const _0xe66b4e=a0_0x39d076['dirname'](_0x20f026);await a0_0x1890e5[_0x5e1765(0x231)](_0xe66b4e,{'recursive':!![]});}let _0x164479=null;try{await a0_0x1890e5[_0x5e1765(0x23e)](_0x20f026),_0x164479=_0x20f026+'.backup-'+Date[_0x5e1765(0x201)](),await a0_0x1890e5[_0x5e1765(0x1db)](_0x20f026,_0x164479);}catch{}await a0_0x1890e5[_0x5e1765(0x225)](_0x20f026,_0x50ee87,encoding);const _0x2a83ef=await a0_0x1890e5[_0x5e1765(0x205)](_0x20f026),_0x3ed8d0=this['directoryAccessManager'][_0x5e1765(0x1fc)](_0x20f026,_0x5c4426);return{'success':!![],'action':_0x5e1765(0x209),'outputPath':_0x3ed8d0,'fullPath':_0x20f026,'size':_0x2a83ef['size'],'encoding':encoding,'backupPath':_0x164479?this[_0x5e1765(0x1f3)]['createRelativePath'](_0x164479,_0x5c4426):null,'backupFullPath':_0x164479||null,'message':'Wrote\x20'+_0x2a83ef['size']+_0x5e1765(0x233)+_0x20f026};}catch(_0x4fac60){throw new Error(_0x5e1765(0x1be)+_0x20f026+':\x20'+_0x4fac60['message']);}}async[a0_0xde1dc1(0x1bc)](_0x47df00,_0x5a0dce,_0x3d3a5a,_0x5cafb0=a0_0xde1dc1(0x1da)){const _0x181280=a0_0xde1dc1,_0x141fb9=this[_0x181280(0x1f3)]['getWorkingDirectory'](_0x3d3a5a),_0x12ea04=this[_0x181280(0x1b0)](_0x47df00,_0x141fb9),_0x20adbc=this['directoryAccessManager'][_0x181280(0x232)](_0x12ea04,_0x3d3a5a);if(!_0x20adbc[_0x181280(0x207)])throw new Error('Write\x20access\x20denied:\x20'+_0x20adbc['reason']+'\x20('+_0x20adbc[_0x181280(0x1f2)]+')');try{let _0x592304=0x0;try{const _0x7d9f4f=await a0_0x1890e5[_0x181280(0x205)](_0x12ea04);_0x592304=_0x7d9f4f['size'];}catch{}const _0x488dc7=Buffer['byteLength'](_0x5a0dce,_0x5cafb0);if(_0x592304+_0x488dc7>this['maxFileSize'])throw new Error(_0x181280(0x1f8)+(_0x592304+_0x488dc7)+_0x181280(0x1cb)+this[_0x181280(0x216)]+')');await a0_0x1890e5['appendFile'](_0x12ea04,_0x5a0dce,_0x5cafb0);const _0x4cc2e7=await a0_0x1890e5[_0x181280(0x205)](_0x12ea04),_0x130a2f=this[_0x181280(0x1f3)]['createRelativePath'](_0x12ea04,_0x3d3a5a);return{'success':!![],'action':'append','filePath':_0x130a2f,'fullPath':_0x12ea04,'appendedBytes':_0x488dc7,'totalSize':_0x4cc2e7[_0x181280(0x1ce)],'encoding':_0x5cafb0,'message':_0x181280(0x23d)+_0x488dc7+_0x181280(0x233)+_0x12ea04};}catch(_0xd21e42){throw new Error(_0x181280(0x1f1)+_0x12ea04+':\x20'+_0xd21e42['message']);}}async[a0_0xde1dc1(0x20a)](_0x247d10,_0x3d5b5e){const _0xe74ac5=a0_0xde1dc1,_0x264d7d=this['directoryAccessManager']['getWorkingDirectory'](_0x3d5b5e),_0x5f00ed=this['resolvePath'](_0x247d10,_0x264d7d),_0x14b909=this['directoryAccessManager']['validateWriteAccess'](_0x5f00ed,_0x3d5b5e);if(!_0x14b909['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x14b909[_0xe74ac5(0x214)]+'\x20('+_0x14b909[_0xe74ac5(0x1f2)]+')');try{const _0x2202ce=await a0_0x1890e5[_0xe74ac5(0x205)](_0x5f00ed),_0x34ff24=_0x5f00ed+_0xe74ac5(0x202)+Date[_0xe74ac5(0x201)]();await a0_0x1890e5['copyFile'](_0x5f00ed,_0x34ff24),await a0_0x1890e5['unlink'](_0x5f00ed);const _0x2bde9c=this[_0xe74ac5(0x1f3)]['createRelativePath'](_0x5f00ed,_0x3d5b5e),_0x5b6a45=this[_0xe74ac5(0x1f3)][_0xe74ac5(0x1fc)](_0x34ff24,_0x3d5b5e);return{'success':!![],'action':_0xe74ac5(0x22d),'filePath':_0x2bde9c,'fullPath':_0x5f00ed,'size':_0x2202ce[_0xe74ac5(0x1ce)],'backupPath':_0x5b6a45,'backupFullPath':_0x34ff24,'message':'Deleted\x20'+_0x5f00ed+_0xe74ac5(0x1cf)};}catch(_0x1a57c1){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x5f00ed+':\x20'+_0x1a57c1[_0xe74ac5(0x22b)]);}}async[a0_0xde1dc1(0x1db)](_0x3368c9,_0x4932c5,_0x47b7ad){const _0x2dcf98=a0_0xde1dc1,_0x5a6ce1=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x222)](_0x47b7ad),_0x2b535e=this[_0x2dcf98(0x1b0)](_0x3368c9,_0x5a6ce1),_0x34eda7=this[_0x2dcf98(0x1b0)](_0x4932c5,_0x5a6ce1),_0x2ee60b=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x1d9)](_0x2b535e,_0x47b7ad);if(!_0x2ee60b['allowed'])throw new Error(_0x2dcf98(0x1c4)+_0x2ee60b[_0x2dcf98(0x214)]+'\x20('+_0x2ee60b['path']+')');const _0x489e16=this[_0x2dcf98(0x1f3)][_0x2dcf98(0x232)](_0x34eda7,_0x47b7ad);if(!_0x489e16['allowed'])throw new Error(_0x2dcf98(0x1d3)+_0x489e16['reason']+'\x20('+_0x489e16[_0x2dcf98(0x1f2)]+')');try{const _0xab1243=await a0_0x1890e5[_0x2dcf98(0x205)](_0x2b535e);if(_0xab1243[_0x2dcf98(0x1ce)]>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0xab1243[_0x2dcf98(0x1ce)]+'\x20bytes');const _0x5ae4a4=a0_0x39d076['dirname'](_0x34eda7);await a0_0x1890e5['mkdir'](_0x5ae4a4,{'recursive':!![]}),await a0_0x1890e5['copyFile'](_0x2b535e,_0x34eda7);const _0x415679=this[_0x2dcf98(0x1f3)]['createRelativePath'](_0x2b535e,_0x47b7ad),_0x55b780=this['directoryAccessManager'][_0x2dcf98(0x1fc)](_0x34eda7,_0x47b7ad);return{'success':!![],'action':_0x2dcf98(0x243),'sourcePath':_0x415679,'destPath':_0x55b780,'sourceFullPath':_0x2b535e,'destFullPath':_0x34eda7,'size':_0xab1243[_0x2dcf98(0x1ce)],'message':_0x2dcf98(0x224)+_0x2b535e+'\x20to\x20'+_0x34eda7};}catch(_0x19b514){throw new Error(_0x2dcf98(0x1ec)+_0x2b535e+_0x2dcf98(0x1d1)+_0x34eda7+':\x20'+_0x19b514[_0x2dcf98(0x22b)]);}}async[a0_0xde1dc1(0x1dc)](_0x1d3627,_0x2cc050,_0x32d007){const _0x9d4017=a0_0xde1dc1,_0x2c131a=this['directoryAccessManager']['getWorkingDirectory'](_0x32d007),_0xe986f7=this[_0x9d4017(0x1b0)](_0x1d3627,_0x2c131a),_0x2b5fdd=this['resolvePath'](_0x2cc050,_0x2c131a),_0x1dd135=this['directoryAccessManager'][_0x9d4017(0x1d9)](_0xe986f7,_0x32d007);if(!_0x1dd135[_0x9d4017(0x207)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x1dd135['reason']+'\x20('+_0x1dd135['path']+')');const _0xd63c76=this[_0x9d4017(0x1f3)][_0x9d4017(0x232)](_0x2b5fdd,_0x32d007);if(!_0xd63c76['allowed'])throw new Error(_0x9d4017(0x1b6)+_0xd63c76['reason']+'\x20('+_0xd63c76[_0x9d4017(0x1f2)]+')');try{const _0x4da4b3=await a0_0x1890e5['stat'](_0xe986f7),_0x17e777=a0_0x39d076['dirname'](_0x2b5fdd);await a0_0x1890e5[_0x9d4017(0x231)](_0x17e777,{'recursive':!![]}),await a0_0x1890e5[_0x9d4017(0x1b7)](_0xe986f7,_0x2b5fdd);const _0x32b9ce=this[_0x9d4017(0x1f3)][_0x9d4017(0x1fc)](_0xe986f7,_0x32d007),_0x1ac4a2=this[_0x9d4017(0x1f3)]['createRelativePath'](_0x2b5fdd,_0x32d007);return{'success':!![],'action':_0x9d4017(0x1df),'sourcePath':_0x32b9ce,'destPath':_0x1ac4a2,'fullSourcePath':_0xe986f7,'fullDestPath':_0x2b5fdd,'size':_0x4da4b3[_0x9d4017(0x1ce)],'message':_0x9d4017(0x1bb)+_0x1d3627+_0x9d4017(0x1d1)+_0x2cc050};}catch(_0x2e389d){throw new Error('Failed\x20to\x20move\x20'+_0x1d3627+_0x9d4017(0x1d1)+_0x2cc050+':\x20'+_0x2e389d['message']);}}async['createDirectory'](_0x3f5e8c,_0x4c107a){const _0x335328=a0_0xde1dc1,_0x5f3072=this[_0x335328(0x1f3)]['getWorkingDirectory'](_0x4c107a),_0x13b9ff=this[_0x335328(0x1b0)](_0x3f5e8c,_0x5f3072),_0x46e77f=this['directoryAccessManager'][_0x335328(0x232)](_0x13b9ff,_0x4c107a);if(!_0x46e77f['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x46e77f[_0x335328(0x214)]+'\x20('+_0x46e77f['path']+')');try{await a0_0x1890e5[_0x335328(0x231)](_0x13b9ff,{'recursive':!![]});const _0x567fc1=this['directoryAccessManager']['createRelativePath'](_0x13b9ff,_0x4c107a);return{'success':!![],'action':'create-dir','directory':_0x567fc1,'fullPath':_0x13b9ff,'message':'Created\x20directory\x20'+_0x3f5e8c};}catch(_0x451b52){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x3f5e8c+':\x20'+_0x451b52['message']);}}async['listDirectory'](_0x231f5a,_0x1a528a){const _0x5be060=a0_0xde1dc1,_0x206b39=this['directoryAccessManager'][_0x5be060(0x222)](_0x1a528a),_0x3b66bf=this[_0x5be060(0x1b0)](_0x231f5a,_0x206b39),_0x519243=this['directoryAccessManager'][_0x5be060(0x1d9)](_0x3b66bf,_0x1a528a);if(!_0x519243[_0x5be060(0x207)])throw new Error(_0x5be060(0x203)+_0x519243['reason']+'\x20('+_0x519243['path']+')');try{const _0x3afc3b=await a0_0x1890e5[_0x5be060(0x20e)](_0x3b66bf,{'withFileTypes':!![]}),_0x49e00e=[];for(const _0x2b56b5 of _0x3afc3b){const _0x411b12=a0_0x39d076['join'](_0x3b66bf,_0x2b56b5[_0x5be060(0x1b5)]),_0x58d326=await a0_0x1890e5[_0x5be060(0x205)](_0x411b12);_0x49e00e['push']({'name':_0x2b56b5[_0x5be060(0x1b5)],'type':_0x2b56b5['isDirectory']()?'directory':'file','size':_0x2b56b5['isFile']()?_0x58d326['size']:undefined,'lastModified':_0x58d326['mtime'][_0x5be060(0x249)](),'permissions':_0x58d326['mode'],'isSymlink':_0x2b56b5[_0x5be060(0x1ff)]()});}const _0x2a15a9=this['directoryAccessManager'][_0x5be060(0x1fc)](_0x3b66bf,_0x1a528a);return{'success':!![],'action':'list','directory':_0x2a15a9,'fullPath':_0x3b66bf,'contents':_0x49e00e,'totalItems':_0x49e00e['length'],'directories':_0x49e00e[_0x5be060(0x23c)](_0x5eb5a6=>_0x5eb5a6[_0x5be060(0x234)]==='directory')[_0x5be060(0x21d)],'files':_0x49e00e['filter'](_0x120546=>_0x120546[_0x5be060(0x234)]===_0x5be060(0x217))[_0x5be060(0x21d)],'message':'Listed\x20'+_0x49e00e[_0x5be060(0x21d)]+_0x5be060(0x1f9)+_0x231f5a};}catch(_0x4e04a7){throw new Error(_0x5be060(0x247)+_0x231f5a+':\x20'+_0x4e04a7[_0x5be060(0x22b)]);}}async[a0_0xde1dc1(0x1fe)](_0x4c94c1,_0x3eeb1e){const _0x1ca1dc=a0_0xde1dc1,_0x5b086f=this[_0x1ca1dc(0x1f3)]['getWorkingDirectory'](_0x3eeb1e),_0x2e7391=this[_0x1ca1dc(0x1b0)](_0x4c94c1,_0x5b086f),_0x50ce06=this['directoryAccessManager']['validateReadAccess'](_0x2e7391,_0x3eeb1e);if(!_0x50ce06['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x50ce06['reason']+'\x20('+_0x50ce06['path']+')');try{const _0x4d867b=await a0_0x1890e5['stat'](_0x2e7391),_0x358dca=this['directoryAccessManager'][_0x1ca1dc(0x1fc)](_0x2e7391,_0x3eeb1e);return{'success':!![],'action':_0x1ca1dc(0x1cd),'filePath':_0x358dca,'fullPath':_0x2e7391,'exists':!![],'type':_0x4d867b['isDirectory']()?'directory':_0x1ca1dc(0x217),'message':_0x4c94c1+'\x20exists\x20as\x20'+(_0x4d867b[_0x1ca1dc(0x1b9)]()?_0x1ca1dc(0x240):_0x1ca1dc(0x217))};}catch(_0x5cb14e){if(_0x5cb14e[_0x1ca1dc(0x213)]===_0x1ca1dc(0x1fa)){const _0x448cc8=this[_0x1ca1dc(0x1f3)]['createRelativePath'](_0x2e7391,_0x3eeb1e);return{'success':!![],'action':'exists','filePath':_0x448cc8,'fullPath':_0x2e7391,'exists':![],'message':_0x4c94c1+_0x1ca1dc(0x1c2)};}throw new Error(_0x1ca1dc(0x1e6)+_0x4c94c1+':\x20'+_0x5cb14e[_0x1ca1dc(0x22b)]);}}async[a0_0xde1dc1(0x1b4)](_0x31ff71,_0x5b81ec){const _0x22826a=a0_0xde1dc1,_0x57685e=this['directoryAccessManager']['getWorkingDirectory'](_0x5b81ec),_0x40c08a=this[_0x22826a(0x1b0)](_0x31ff71,_0x57685e),_0x243ba7=this[_0x22826a(0x1f3)][_0x22826a(0x1d9)](_0x40c08a,_0x5b81ec);if(!_0x243ba7[_0x22826a(0x207)])throw new Error(_0x22826a(0x203)+_0x243ba7[_0x22826a(0x214)]+'\x20('+_0x243ba7['path']+')');try{const _0x256fba=await a0_0x1890e5[_0x22826a(0x205)](_0x40c08a),_0x924dfb=this[_0x22826a(0x1f3)][_0x22826a(0x1fc)](_0x40c08a,_0x5b81ec);return{'success':!![],'action':_0x22826a(0x237),'filePath':_0x924dfb,'fullPath':_0x40c08a,'stats':{'size':_0x256fba[_0x22826a(0x1ce)],'type':_0x256fba[_0x22826a(0x1b9)]()?_0x22826a(0x240):'file','lastModified':_0x256fba['mtime']['toISOString'](),'lastAccessed':_0x256fba['atime']['toISOString'](),'created':_0x256fba[_0x22826a(0x1fd)]['toISOString'](),'permissions':_0x256fba['mode'],'isSymlink':_0x256fba['isSymbolicLink']()},'message':_0x22826a(0x212)+_0x31ff71};}catch(_0x10cf56){throw new Error(_0x22826a(0x1e0)+_0x31ff71+':\x20'+_0x10cf56['message']);}}[a0_0xde1dc1(0x1b0)](_0x1ac211,_0x1a3e1b){const _0x4251ff=a0_0xde1dc1;if(a0_0x39d076['isAbsolute'](_0x1ac211))return a0_0x39d076[_0x4251ff(0x1e9)](_0x1ac211);return a0_0x39d076['resolve'](_0x1a3e1b,_0x1ac211);}[a0_0xde1dc1(0x1c7)](_0x321987,_0xe1233d,_0x291ce2=a0_0xde1dc1(0x1e7)){const _0xf6378a=a0_0xde1dc1,_0xc922c4=_0x291ce2==='write'?this['directoryAccessManager']['validateWriteAccess'](_0x321987,_0xe1233d):this['directoryAccessManager']['validateReadAccess'](_0x321987,_0xe1233d);if(!_0xc922c4[_0xf6378a(0x207)])throw new Error(_0x291ce2+'\x20access\x20denied:\x20'+_0xc922c4[_0xf6378a(0x214)]+'\x20('+_0xc922c4['path']+')');return _0xc922c4;}['isAllowedFileExtension'](_0x4aa8d6){const _0x57805a=a0_0xde1dc1,_0x3d3089=a0_0x39d076[_0x57805a(0x1d5)](_0x4aa8d6)[_0x57805a(0x210)]();if(this['blockedExtensions']['includes'](_0x3d3089))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x57805a(0x20b)](_0x3d3089))return![];return!![];}['addToHistory'](_0x5bf60b,_0x42d9d7,_0x19a454){const _0x3c972b=a0_0xde1dc1,_0x54f64d={'timestamp':new Date()[_0x3c972b(0x249)](),'agentId':_0x19a454,'action':_0x5bf60b['type'],'filePath':_0x5bf60b[_0x3c972b(0x1f6)]||_0x5bf60b[_0x3c972b(0x227)]||_0x5bf60b[_0x3c972b(0x240)],'success':_0x42d9d7['success'],'size':_0x42d9d7['size']};this[_0x3c972b(0x20c)]['push'](_0x54f64d),this['operationHistory'][_0x3c972b(0x21d)]>0xc8&&(this['operationHistory']=this[_0x3c972b(0x20c)][_0x3c972b(0x1c3)](-0xc8));}['getSupportedActions'](){const _0xfd120c=a0_0xde1dc1;return[_0xfd120c(0x1e7),'write',_0xfd120c(0x21c),_0xfd120c(0x22d),_0xfd120c(0x243),'move',_0xfd120c(0x1b8),'list','exists',_0xfd120c(0x237)];}[a0_0xde1dc1(0x1d2)](){const _0x1a8f39=a0_0xde1dc1;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':_0x1a8f39(0x1d7)},'sourcePath':{'type':_0x1a8f39(0x1d7)},'destPath':{'type':'string'},'directory':{'type':_0x1a8f39(0x1d7)},'content':{'type':'string'},'encoding':{'type':_0x1a8f39(0x1d7)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':[_0x1a8f39(0x1ea)]};}['getOperationHistory'](_0x3c8476=null){const _0x253cfa=a0_0xde1dc1;if(_0x3c8476)return this['operationHistory'][_0x253cfa(0x23c)](_0x23f207=>_0x23f207['agentId']===_0x3c8476);return[...this['operationHistory']];}}export default FileSystemTool;
1
+ const a0_0x4a8135=a0_0x16d8;(function(_0x46c182,_0x135876){const _0x273188=a0_0x16d8,_0x28b8af=_0x46c182();while(!![]){try{const _0xb1597=parseInt(_0x273188(0x113))/0x1*(parseInt(_0x273188(0xed))/0x2)+parseInt(_0x273188(0x119))/0x3+parseInt(_0x273188(0xf0))/0x4+parseInt(_0x273188(0xfe))/0x5+parseInt(_0x273188(0x111))/0x6+-parseInt(_0x273188(0xfb))/0x7+-parseInt(_0x273188(0x10b))/0x8;if(_0xb1597===_0x135876)break;else _0x28b8af['push'](_0x28b8af['shift']());}catch(_0x1cd831){_0x28b8af['push'](_0x28b8af['shift']());}}}(a0_0x4755,0xce4e3));import{BaseTool}from'./baseTool.js';import a0_0x14816d from'../utilities/tagParser.js';import a0_0x2d08cc from'../utilities/directoryAccessManager.js';import a0_0xa233b7 from'fs/promises';import a0_0x291fbd from'path';function a0_0x4755(){const _0x511d9f=['C2XPy2u','mZG0nZm4rNvKtffH','C291CMnLugf0Aa','mtK0nJaXrM9Pzu1W','zgvSzxrL','rMfPBgvKihrVihjLywqGzMLSzsa','ihrVia','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','BM93','nda2mZi4nfnbqLbArq','A2v5CW','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','ywXSB3DLzerPCMvJDg9YAwvZ','C291CMnLlxbHDgG','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','ywn0Aw9UCW','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','C3rHDa','y3jLyxrLlwrPCG','DgLTzw91Da','yxbWzw5KrMLSzq','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','BMfTzq','igj5DgvZicHTyxGG','DhjPBq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','q3jLyxrLzcbKAxjLy3rVCNKG','C2L6zq','CMvHzezPBgu','CMvUyw1L','Dhj1zq','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24klsbcywnRDxaGy3jLyxrLzcbMB3iGzgvZDhj1y3rPDMuGB3bLCMf0Aw9UCWOkru5dt0rjtKCGu1vque9svdOklsb1Dgy4icHKzwzHDwX0kqOTigfZy2LPcI0GyMfZzty0cI0GyMLUyxj5cI0GAgv4cIaGica','igj5DgvZigzYB20G','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y29UDgvUDa','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','C3rYAw5N','zgvZDc1WyxrO','BgLZDa','D3jPDgu','igL0zw1ZigLUia','DxrMoa','oIb0ExbLigLZihjLCxvPCMvK','Bw92zuzPBgu','ru5pru5u','rMfPBgvKihrVigrLBgv0zsbMAwXLia','C3rYAw5NAwz5','lMnTza','Bg9Nz2vY','ywXSB3DLza','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','CMvHza','v3jPDguGywnJzxnZigrLBMLLzdOG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','q29WAwvKia','DhLWzq','zgLYzwn0B3j5','ywnJzxnZ','BgvUz3rO','zgvZDfbHDgG','Bg9N','B3bLCMf0Aw9UsgLZDg9YEq','C3rHDhm','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','ywXSB3DLzev4DgvUC2LVBNm','zMLSzvbHDgG','AxneAxjLy3rVCNK','C3vIC3rYAw5N','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','CgfYC2vbDhrYAwj1DgvZ','z2v0v29YA2LUz0rPCMvJDg9YEq','lMv4zq','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','y3jLyxrLlwrPCNm','y29Kzq','rMfPBgvKihrVig1VDMuG','zgLYBMfTzq','CMf3q29UDgvUDa','Bwf4rMLSzvnPEMu','y3DK','zgvSzxrLrMLSzq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','B3v0Chv0ugf0Aa','AxntEw1IB2XPy0XPBMS','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','BgLZDerPCMvJDg9YEq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ywrKvg9iAxn0B3j5','CMvHC29U','BwTKAxi','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','DMfSAwrHDgvszwfKqwnJzxnZ','zgvIDwC','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','yNL0zuXLBMD0Aa','B2jQzwn0','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','B3v0Chv0lxbHDgG','AxngAwXL','Bw92zq','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','Dg9ju09tDhjPBMC','rgvSzxrLzca','AxnbCNjHEq','zxHPC3rZ','BwfW','Cgf0Aa','yMXVy2TLzev4DgvUC2LVBNm','zMLSDgvY','zMLSzq','mtjdq3PnwNG','igj5DgvZihrVia','yxbWzw5K','nJCYmtuWohPPBg54Ba','y3jLyxrLrgLYCW','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','y3jLyxrLuMvSyxrPDMvqyxrO','DMfSAwrHDgvqyxrOqwnJzxnZ','zw5JB2rPBMC','CMvZB2X2zq','BxrPBwu','qwn0Aw9Uia','BM9YBwfSAxPL','y29WEq','mZm0otm1m3PywfvTuW','Aw5JBhvKzxm','DMfSAwrHDgvxCML0zufJy2vZCW','ntm0otCYme56sg5RAq','BwvZC2fNzq','rMfPBgvKihrVihDYAxrLigzPBguG','uMv0CMLLDMvKihn0yxrZigzVCIa','y3jLyxrLrgLYzwn0B3j5','ChvZAa','lMnVBq','Dg9mB3DLCKnHC2u','CMvZB2X2zvbHDgG','y29WEuzPBgu','zMLSzs1WyxrO','zxH0BMfTzq','z2v0rMLSzvn0yxrZ','mZiXmdm3nZznAwPuCwu','z2v0rgvZy3jPChrPB24','igrVzxmGBM90igv4Axn0','rMfPBgvKihrVignVChKG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ'];a0_0x4755=function(){return _0x511d9f;};return a0_0x4755();}import a0_0x17ea40 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x3cf2f4={},_0x3d13dd=null){const _0x5dcd83=a0_0x16d8;super(_0x3cf2f4,_0x3d13dd),this['requiresProject']=!![],this['isAsync']=![],this[_0x5dcd83(0x125)]=_0x3cf2f4[_0x5dcd83(0x125)]||0x7530,this[_0x5dcd83(0x149)]=_0x3cf2f4['maxConcurrentOperations']||0x5,this['maxFileSize']=_0x3cf2f4['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this[_0x5dcd83(0x155)]=_0x3cf2f4[_0x5dcd83(0x155)]||null,this['blockedExtensions']=_0x3cf2f4[_0x5dcd83(0xea)]||[_0x5dcd83(0x15c),'.bat',_0x5dcd83(0x143),'.scr',_0x5dcd83(0x104)],this[_0x5dcd83(0x11c)]=_0x3cf2f4['allowedDirectories']||null,this[_0x5dcd83(0x151)]=[],this[_0x5dcd83(0x153)]=new a0_0x2d08cc(_0x3cf2f4,_0x3d13dd);}[a0_0x4a8135(0x10c)](){const _0x2215f0=a0_0x4a8135;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aCRITICAL:\x20Both\x20XML\x20and\x20JSON\x20formats\x20are\x20fully\x20supported.\x20When\x20using\x20XML\x20format,\x20commands\x20are\x20automatically\x20converted\x20to\x20the\x20appropriate\x20structure\x20internally\x20-\x20you\x20don\x27t\x20need\x20to\x20manually\x20wrap\x20them\x20in\x20an\x20actions\x20array.\x0a\x0aUSAGE\x20-\x20TWO\x20FORMATS\x20SUPPORTED:\x0a\x0aFORMAT\x201\x20-\x20XML\x20STYLE\x20(Recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22src/index.js\x22\x20/>\x0a<write\x20output-path=\x22src/components/Button.js\x22>\x0aconst\x20Button\x20=\x20()\x20=>\x20{\x0a\x20\x20return\x20<button>Click\x20me</button>;\x0a};\x0aexport\x20default\x20Button;\x0a</write>\x0a[/tool]\x0a\x0aFORMAT\x202\x20-\x20JSON\x20STYLE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x20\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x20\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22const\x20Button\x20=\x20()\x20=>\x20{\x20return\x20<button>Click\x20me</button>;\x20};\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20\x0a-\x20Use\x20either\x20format\x20consistently.\x20Do\x20NOT\x20mix\x20formats\x20in\x20a\x20single\x20command.\x0a-\x20XML\x20format\x20is\x20recommended\x20for\x20single\x20operations\x20and\x20better\x20readability\x0a-\x20JSON\x20format\x20is\x20recommended\x20for\x20complex\x20multi-action\x20operations\x0a-\x20Both\x20formats\x20work\x20equally\x20well\x20and\x20produce\x20the\x20same\x20results\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x0a-\x20write:\x20Write\x20content\x20to\x20file\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x0a-\x20delete:\x20Delete\x20a\x20file\x0a-\x20copy:\x20Copy\x20file\x20from\x20source\x20to\x20destination\x0a-\x20move:\x20Move/rename\x20file\x0a-\x20create-dir:\x20Create\x20directory\x0a-\x20list:\x20List\x20directory\x20contents\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20read\x0a-\x20output-path:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20source-path:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20dest-path:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20directory\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20create-dirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aSIMPLE\x20FILE\x20CREATION\x20(XML\x20format\x20-\x20recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<write\x20output-path=\x22hello.c\x22>\x0a#include\x20<stdio.h>\x0a\x0aint\x20main()\x20{\x0a\x20\x20\x20\x20printf(\x22Hello,\x20World!\x5cn\x22);\x0a\x20\x20\x20\x20return\x200;\x0a}\x0a</write>\x0a[/tool]\x0a\x0aREADING\x20FILES\x20(XML\x20format):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22package.json\x22\x20/>\x0a[/tool]\x0a\x0aMULTIPLE\x20OPERATIONS\x20(JSON\x20format\x20recommended):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/backup.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22//\x20Backup\x20file\x5cnconsole.log(\x27backup\x27);\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aOTHER\x20XML\x20EXAMPLES:\x0a[tool\x20id=\x22filesystem\x22]\x0a<copy\x20source-path=\x22template.js\x22\x20dest-path=\x22src/component.js\x22\x20/>\x0a<create-dir\x20directory=\x22src/components/ui\x22\x20/>\x0a<list\x20directory=\x22src\x22\x20/>\x0a[/tool]\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math['round'](this[_0x2215f0(0x163)]/0x400/0x400)+_0x2215f0(0x132);}['parseParameters'](_0x4f26d4){const _0x3c325b=a0_0x4a8135;try{const _0x17bc6e={},_0x4ad2b7=[];this[_0x3c325b(0x144)]?.[_0x3c325b(0x173)](_0x3c325b(0x166),{'contentLength':_0x4f26d4['length'],'contentPreview':_0x4f26d4[_0x3c325b(0x158)](0x0,0xc8)});const _0x7e344=['read',_0x3c325b(0x114),_0x3c325b(0xfa),'move',_0x3c325b(0x124),_0x3c325b(0x13a),_0x3c325b(0xe7),'stats',_0x3c325b(0xef)];for(const _0x490cd0 of _0x7e344){const _0x2c1161=a0_0x14816d[_0x3c325b(0x171)](_0x4f26d4,_0x490cd0);for(const _0x676378 of _0x2c1161){const _0x887e62={'type':_0x490cd0,..._0x676378['attributes']};_0x887e62[_0x3c325b(0x108)]&&(_0x887e62['filePath']=_0x887e62[_0x3c325b(0x108)],delete _0x887e62['file-path']),_0x887e62[_0x3c325b(0x178)]&&(_0x887e62['outputPath']=_0x887e62[_0x3c325b(0x178)],delete _0x887e62[_0x3c325b(0x178)]),_0x887e62[_0x3c325b(0x11d)]&&(_0x887e62[_0x3c325b(0x112)]=_0x887e62['source-path'],delete _0x887e62['source-path']),_0x887e62['dest-path']&&(_0x887e62[_0x3c325b(0x14f)]=_0x887e62['dest-path'],delete _0x887e62[_0x3c325b(0x139)]),_0x887e62['create-dirs']&&(_0x887e62[_0x3c325b(0xf1)]=_0x887e62['create-dirs']===_0x3c325b(0x131),delete _0x887e62['create-dirs']),_0x4ad2b7[_0x3c325b(0x103)](_0x887e62);}}const _0x484749=_0x4f26d4['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x5e7443 of _0x484749){const _0x288084=new a0_0x14816d(),_0x42e71b=_0x288084['parseAttributes'](_0x5e7443[0x1]),_0x149804=_0x5e7443[0x2]['trim'](),_0x55b092={'type':'write','content':_0x149804,..._0x42e71b};_0x55b092['output-path']&&(_0x55b092[_0x3c325b(0x167)]=_0x55b092['output-path'],delete _0x55b092['output-path']),_0x55b092['create-dirs']&&(_0x55b092[_0x3c325b(0xf1)]=_0x55b092[_0x3c325b(0x15e)]==='true',delete _0x55b092[_0x3c325b(0x15e)]),_0x4ad2b7['push'](_0x55b092);}const _0x2acabd=_0x4f26d4['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x5e551c of _0x2acabd){const _0x53864d=new a0_0x14816d(),_0x4cdb4e=_0x53864d[_0x3c325b(0x15a)](_0x5e551c[0x1]),_0x490f7f=_0x5e551c[0x2][_0x3c325b(0x12a)](),_0x578af8={'type':'append','content':_0x490f7f,..._0x4cdb4e};_0x578af8['file-path']&&(_0x578af8['filePath']=_0x578af8['file-path'],delete _0x578af8[_0x3c325b(0x108)]),_0x4ad2b7['push'](_0x578af8);}return _0x17bc6e['actions']=_0x4ad2b7,_0x17bc6e[_0x3c325b(0x162)]=_0x4f26d4[_0x3c325b(0x12a)](),this['logger']?.[_0x3c325b(0x173)]('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0x4ad2b7['length'],'actionTypes':_0x4ad2b7['map'](_0x509978=>_0x509978['type']),'actions':_0x4ad2b7[_0x3c325b(0xe8)](_0x10a4fc=>({'type':_0x10a4fc['type'],'filePath':_0x10a4fc['filePath'],'outputPath':_0x10a4fc['outputPath'],'hasContent':!!_0x10a4fc['content']}))}),_0x17bc6e;}catch(_0x255516){throw new Error(_0x3c325b(0x11b)+_0x255516['message']);}}[a0_0x4a8135(0x12c)](){return['actions'];}[a0_0x4a8135(0x10f)](_0x2fc070){const _0x5d7286=a0_0x4a8135,_0x4af72b=[];if(!_0x2fc070[_0x5d7286(0x11f)]||!Array[_0x5d7286(0xe6)](_0x2fc070['actions'])||_0x2fc070['actions'][_0x5d7286(0x14e)]===0x0)_0x4af72b['push'](_0x5d7286(0x12b));else for(const [_0x13e38b,_0x5e6ba8]of _0x2fc070[_0x5d7286(0x11f)]['entries']()){if(!_0x5e6ba8[_0x5d7286(0x14b)]){_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x13e));continue;}switch(_0x5e6ba8[_0x5d7286(0x14b)]){case _0x5d7286(0x147):case'delete':case _0x5d7286(0xe7):case'stats':!_0x5e6ba8['filePath']&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x137)+_0x5e6ba8['type']);break;case'write':!_0x5e6ba8['outputPath']&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x121));!_0x5e6ba8['content']&&_0x5e6ba8[_0x5d7286(0x135)]!==''&&_0x4af72b[_0x5d7286(0x103)](_0x5d7286(0xf8)+(_0x13e38b+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x5e6ba8[_0x5d7286(0x156)]&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x5e6ba8['content']&&_0x5e6ba8['content']!==''&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case _0x5d7286(0xfa):case'move':!_0x5e6ba8['sourcePath']&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+_0x5d7286(0x120)+_0x5e6ba8['type']);!_0x5e6ba8[_0x5d7286(0x14f)]&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x177)+_0x5e6ba8['type']);break;case _0x5d7286(0x124):case _0x5d7286(0x13a):!_0x5e6ba8['directory']&&_0x4af72b[_0x5d7286(0x103)](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x117)+_0x5e6ba8['type']);break;default:_0x4af72b[_0x5d7286(0x103)]('Action\x20'+(_0x13e38b+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5e6ba8['type']);}_0x5e6ba8[_0x5d7286(0x156)]&&!this['isAllowedFileExtension'](_0x5e6ba8[_0x5d7286(0x156)])&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x136)+a0_0x291fbd['extname'](_0x5e6ba8['filePath'])),_0x5e6ba8['outputPath']&&!this[_0x5d7286(0x159)](_0x5e6ba8[_0x5d7286(0x167)])&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x291fbd[_0x5d7286(0x109)](_0x5e6ba8['outputPath']));}return{'valid':_0x4af72b['length']===0x0,'errors':_0x4af72b};}async['execute'](_0x4f6b6e,_0x479384){const _0x2b534b=a0_0x4a8135;if(!_0x4f6b6e||typeof _0x4f6b6e!==_0x2b534b(0x176))throw new Error(_0x2b534b(0x169));const {actions:_0x4cf380}=_0x4f6b6e;if(!_0x4cf380)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON[_0x2b534b(0x142)](Object[_0x2b534b(0x11a)](_0x4f6b6e)));if(!Array[_0x2b534b(0xe6)](_0x4cf380))throw new Error(_0x2b534b(0x134)+typeof _0x4cf380);if(_0x4cf380[_0x2b534b(0x14e)]===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x553cba,agentId:_0xab7ce0,directoryAccess:_0x3adcf3}=_0x479384,_0x1e64e1=_0x3adcf3||this['directoryAccessManager'][_0x2b534b(0x127)]({'workingDirectory':_0x553cba||process[_0x2b534b(0x164)](),'writeEnabledDirectories':[_0x553cba||process['cwd']()],'restrictToProject':!![]});_0x3adcf3&&_0x3adcf3['workingDirectory']?(console[_0x2b534b(0x150)](_0x2b534b(0x16a),_0x3adcf3['workingDirectory']),console[_0x2b534b(0x150)](_0x2b534b(0xf2),JSON[_0x2b534b(0x142)](_0x3adcf3,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x553cba||process[_0x2b534b(0x164)]()),console['log'](_0x2b534b(0x174),_0x3adcf3),console['log'](_0x2b534b(0x122),_0x553cba));const _0x5196ae=[];for(const _0x1319c4 of _0x4cf380){try{let _0x1dd747;switch(_0x1319c4['type']){case _0x2b534b(0x147):_0x1dd747=await this['readFile'](_0x1319c4['filePath'],_0x1e64e1,_0x1319c4[_0x2b534b(0xf5)]);break;case _0x2b534b(0x13b):_0x1dd747=await this['writeFile'](_0x1319c4['outputPath'],_0x1319c4[_0x2b534b(0x135)],_0x1e64e1,{'encoding':_0x1319c4[_0x2b534b(0xf5)],'createDirs':_0x1319c4[_0x2b534b(0xf1)]});break;case'append':_0x1dd747=await this['appendToFile'](_0x1319c4['filePath'],_0x1319c4[_0x2b534b(0x135)],_0x1e64e1,_0x1319c4[_0x2b534b(0xf5)]);break;case'delete':_0x1dd747=await this['deleteFile'](_0x1319c4[_0x2b534b(0x156)],_0x1e64e1);break;case'copy':_0x1dd747=await this['copyFile'](_0x1319c4[_0x2b534b(0x112)],_0x1319c4[_0x2b534b(0x14f)],_0x1e64e1);break;case _0x2b534b(0xe2):_0x1dd747=await this['moveFile'](_0x1319c4['sourcePath'],_0x1319c4[_0x2b534b(0x14f)],_0x1e64e1);break;case _0x2b534b(0x124):_0x1dd747=await this[_0x2b534b(0x102)](_0x1319c4['directory'],_0x1e64e1);break;case _0x2b534b(0x13a):_0x1dd747=await this[_0x2b534b(0x16c)](_0x1319c4['directory'],_0x1e64e1);break;case _0x2b534b(0xe7):_0x1dd747=await this['checkExists'](_0x1319c4['filePath'],_0x1e64e1);break;case _0x2b534b(0x152):_0x1dd747=await this[_0x2b534b(0x10a)](_0x1319c4[_0x2b534b(0x156)],_0x1e64e1);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x1319c4['type']);}_0x5196ae['push'](_0x1dd747),this[_0x2b534b(0x16e)](_0x1319c4,_0x1dd747,_0x479384['agentId']);}catch(_0x20510a){const _0x8f9687={'success':![],'action':_0x1319c4[_0x2b534b(0x14b)],'error':_0x20510a[_0x2b534b(0xff)],'filePath':_0x1319c4['filePath']||_0x1319c4[_0x2b534b(0x167)]||_0x1319c4['directory']};_0x5196ae[_0x2b534b(0x103)](_0x8f9687),this['addToHistory'](_0x1319c4,_0x8f9687,_0x479384['agentId']);}}return{'success':!![],'actions':_0x5196ae,'executedActions':_0x4cf380[_0x2b534b(0x14e)],'toolUsed':'filesys'};}async['readFile'](_0x5224ab,_0x51a05b,_0x26395e=a0_0x4a8135(0x13d)){const _0x4b6637=a0_0x4a8135,_0xcf98db=this['directoryAccessManager'][_0x4b6637(0x15b)](_0x51a05b),_0x524a69=this[_0x4b6637(0x106)](_0x5224ab,_0xcf98db),_0x505b57=this[_0x4b6637(0x153)][_0x4b6637(0x172)](_0x524a69,_0x51a05b);if(!_0x505b57[_0x4b6637(0x145)])throw new Error(_0x4b6637(0x154)+_0x505b57['reason']+'\x20('+_0x505b57[_0x4b6637(0xe9)]+')');try{const _0x58d2da=await a0_0xa233b7[_0x4b6637(0x123)](_0x524a69);if(_0x58d2da[_0x4b6637(0x12e)]>this[_0x4b6637(0x163)])throw new Error('File\x20too\x20large:\x20'+_0x58d2da[_0x4b6637(0x12e)]+'\x20bytes\x20(max\x20'+this[_0x4b6637(0x163)]+')');const _0x56eb09=await a0_0xa233b7[_0x4b6637(0x12f)](_0x524a69,_0x26395e);return{'success':!![],'action':'read','filePath':this[_0x4b6637(0x153)][_0x4b6637(0xf3)](_0x524a69,_0x51a05b),'content':_0x56eb09,'size':_0x58d2da['size'],'encoding':_0x26395e,'lastModified':_0x58d2da[_0x4b6637(0xf7)][_0x4b6637(0xe4)](),'message':'Read\x20'+_0x58d2da['size']+_0x4b6637(0x133)+_0x5224ab};}catch(_0x3dab67){throw new Error(_0x4b6637(0x115)+_0x5224ab+':\x20'+_0x3dab67[_0x4b6637(0xff)]);}}async['writeFile'](_0x49c506,_0x3b0057,_0x15cd2a,_0x1b1427={}){const _0x17e6d2=a0_0x4a8135,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x1b1427,_0x42088c=this['directoryAccessManager'][_0x17e6d2(0x15b)](_0x15cd2a),_0x1e9aa1=this[_0x17e6d2(0x106)](_0x49c506,_0x42088c),_0x28c364=this['directoryAccessManager']['validateWriteAccess'](_0x1e9aa1,_0x15cd2a);if(!_0x28c364['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x28c364[_0x17e6d2(0x16f)]+'\x20('+_0x28c364[_0x17e6d2(0xe9)]+')');try{const _0x1c2ecb=Buffer['byteLength'](_0x3b0057,encoding);if(_0x1c2ecb>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x1c2ecb+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x15a08c=a0_0x291fbd[_0x17e6d2(0x161)](_0x1e9aa1);await a0_0xa233b7[_0x17e6d2(0x170)](_0x15a08c,{'recursive':!![]});}let _0x1bebb6=null;try{await a0_0xa233b7[_0x17e6d2(0x14d)](_0x1e9aa1),_0x1bebb6=_0x1e9aa1+'.backup-'+Date['now'](),await a0_0xa233b7[_0x17e6d2(0x107)](_0x1e9aa1,_0x1bebb6);}catch{}await a0_0xa233b7['writeFile'](_0x1e9aa1,_0x3b0057,encoding);const _0x1af95a=await a0_0xa233b7[_0x17e6d2(0x123)](_0x1e9aa1),_0x588d2d=this[_0x17e6d2(0x153)][_0x17e6d2(0xf3)](_0x1e9aa1,_0x15cd2a);return{'success':!![],'action':_0x17e6d2(0x13b),'outputPath':_0x588d2d,'fullPath':_0x1e9aa1,'size':_0x1af95a[_0x17e6d2(0x12e)],'encoding':encoding,'backupPath':_0x1bebb6?this[_0x17e6d2(0x153)][_0x17e6d2(0xf3)](_0x1bebb6,_0x15cd2a):null,'backupFullPath':_0x1bebb6||null,'message':'Wrote\x20'+_0x1af95a[_0x17e6d2(0x12e)]+_0x17e6d2(0xee)+_0x1e9aa1};}catch(_0x1bc40c){throw new Error(_0x17e6d2(0x100)+_0x1e9aa1+':\x20'+_0x1bc40c[_0x17e6d2(0xff)]);}}async['appendToFile'](_0x2d3baf,_0x96952c,_0x40ae0e,_0x4bddd9='utf8'){const _0x464f14=a0_0x4a8135,_0x5a629e=this['directoryAccessManager']['getWorkingDirectory'](_0x40ae0e),_0x507118=this[_0x464f14(0x106)](_0x2d3baf,_0x5a629e),_0x13fb8b=this['directoryAccessManager'][_0x464f14(0xfd)](_0x507118,_0x40ae0e);if(!_0x13fb8b['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x13fb8b['reason']+'\x20('+_0x13fb8b[_0x464f14(0xe9)]+')');try{let _0x13bd7c=0x0;try{const _0x256308=await a0_0xa233b7['stat'](_0x507118);_0x13bd7c=_0x256308[_0x464f14(0x12e)];}catch{}const _0x36e5cd=Buffer[_0x464f14(0x175)](_0x96952c,_0x4bddd9);if(_0x13bd7c+_0x36e5cd>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x13bd7c+_0x36e5cd)+_0x464f14(0x129)+this['maxFileSize']+')');await a0_0xa233b7[_0x464f14(0x126)](_0x507118,_0x96952c,_0x4bddd9);const _0x2277e8=await a0_0xa233b7['stat'](_0x507118),_0x7a03e9=this['directoryAccessManager'][_0x464f14(0xf3)](_0x507118,_0x40ae0e);return{'success':!![],'action':'append','filePath':_0x7a03e9,'fullPath':_0x507118,'appendedBytes':_0x36e5cd,'totalSize':_0x2277e8[_0x464f14(0x12e)],'encoding':_0x4bddd9,'message':'Appended\x20'+_0x36e5cd+'\x20bytes\x20to\x20'+_0x507118};}catch(_0x36df66){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x507118+':\x20'+_0x36df66['message']);}}async[a0_0x4a8135(0x165)](_0x563345,_0x108b84){const _0x1ce8ee=a0_0x4a8135,_0x1d553c=this[_0x1ce8ee(0x153)][_0x1ce8ee(0x15b)](_0x108b84),_0x53e994=this['resolvePath'](_0x563345,_0x1d553c),_0x4b1762=this[_0x1ce8ee(0x153)][_0x1ce8ee(0xfd)](_0x53e994,_0x108b84);if(!_0x4b1762['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x4b1762[_0x1ce8ee(0x16f)]+'\x20('+_0x4b1762['path']+')');try{const _0x21079e=await a0_0xa233b7['stat'](_0x53e994),_0x3d6890=_0x53e994+'.deleted-backup-'+Date[_0x1ce8ee(0x118)]();await a0_0xa233b7[_0x1ce8ee(0x107)](_0x53e994,_0x3d6890),await a0_0xa233b7['unlink'](_0x53e994);const _0x32294c=this[_0x1ce8ee(0x153)][_0x1ce8ee(0xf3)](_0x53e994,_0x108b84),_0x31b247=this[_0x1ce8ee(0x153)]['createRelativePath'](_0x3d6890,_0x108b84);return{'success':!![],'action':_0x1ce8ee(0x114),'filePath':_0x32294c,'fullPath':_0x53e994,'size':_0x21079e['size'],'backupPath':_0x31b247,'backupFullPath':_0x3d6890,'message':_0x1ce8ee(0xe5)+_0x53e994+'\x20(backup\x20created)'};}catch(_0x38e418){throw new Error(_0x1ce8ee(0x141)+_0x53e994+':\x20'+_0x38e418[_0x1ce8ee(0xff)]);}}async['copyFile'](_0xa4dbf0,_0x597efd,_0x142d16){const _0x5724ac=a0_0x4a8135,_0x1dde45=this['directoryAccessManager'][_0x5724ac(0x15b)](_0x142d16),_0x24de14=this['resolvePath'](_0xa4dbf0,_0x1dde45),_0x586493=this[_0x5724ac(0x106)](_0x597efd,_0x1dde45),_0x12a062=this[_0x5724ac(0x153)][_0x5724ac(0x172)](_0x24de14,_0x142d16);if(!_0x12a062['allowed'])throw new Error(_0x5724ac(0x15d)+_0x12a062['reason']+'\x20('+_0x12a062['path']+')');const _0x3090f1=this[_0x5724ac(0x153)][_0x5724ac(0xfd)](_0x586493,_0x142d16);if(!_0x3090f1['allowed'])throw new Error(_0x5724ac(0xe3)+_0x3090f1['reason']+'\x20('+_0x3090f1['path']+')');try{const _0x5a7bbf=await a0_0xa233b7[_0x5724ac(0x123)](_0x24de14);if(_0x5a7bbf['size']>this[_0x5724ac(0x163)])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x5a7bbf['size']+'\x20bytes');const _0x30cec6=a0_0x291fbd['dirname'](_0x586493);await a0_0xa233b7[_0x5724ac(0x170)](_0x30cec6,{'recursive':!![]}),await a0_0xa233b7['copyFile'](_0x24de14,_0x586493);const _0x13c241=this[_0x5724ac(0x153)][_0x5724ac(0xf3)](_0x24de14,_0x142d16),_0x325294=this['directoryAccessManager'][_0x5724ac(0xf3)](_0x586493,_0x142d16);return{'success':!![],'action':_0x5724ac(0xfa),'sourcePath':_0x13c241,'destPath':_0x325294,'sourceFullPath':_0x24de14,'destFullPath':_0x586493,'size':_0x5a7bbf['size'],'message':_0x5724ac(0x14a)+_0x24de14+_0x5724ac(0x116)+_0x586493};}catch(_0x35c9d9){throw new Error(_0x5724ac(0x10e)+_0x24de14+'\x20to\x20'+_0x586493+':\x20'+_0x35c9d9[_0x5724ac(0xff)]);}}async[a0_0x4a8135(0x13f)](_0x5cbcf6,_0x4ed61f,_0x41f1a6){const _0x32b16d=a0_0x4a8135,_0x131c45=this[_0x32b16d(0x153)]['getWorkingDirectory'](_0x41f1a6),_0x3f46fa=this[_0x32b16d(0x106)](_0x5cbcf6,_0x131c45),_0x1d89af=this[_0x32b16d(0x106)](_0x4ed61f,_0x131c45),_0x113624=this['directoryAccessManager'][_0x32b16d(0x172)](_0x3f46fa,_0x41f1a6);if(!_0x113624['allowed'])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x113624['reason']+'\x20('+_0x113624['path']+')');const _0x262d97=this['directoryAccessManager']['validateWriteAccess'](_0x1d89af,_0x41f1a6);if(!_0x262d97['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x262d97[_0x32b16d(0x16f)]+'\x20('+_0x262d97['path']+')');try{const _0x588ae9=await a0_0xa233b7['stat'](_0x3f46fa),_0x24646e=a0_0x291fbd['dirname'](_0x1d89af);await a0_0xa233b7['mkdir'](_0x24646e,{'recursive':!![]}),await a0_0xa233b7[_0x32b16d(0x130)](_0x3f46fa,_0x1d89af);const _0x1af727=this[_0x32b16d(0x153)][_0x32b16d(0xf3)](_0x3f46fa,_0x41f1a6),_0x174a00=this[_0x32b16d(0x153)]['createRelativePath'](_0x1d89af,_0x41f1a6);return{'success':!![],'action':'move','sourcePath':_0x1af727,'destPath':_0x174a00,'fullSourcePath':_0x3f46fa,'fullDestPath':_0x1d89af,'size':_0x588ae9['size'],'message':'Moved\x20'+_0x5cbcf6+_0x32b16d(0x116)+_0x4ed61f};}catch(_0x23fe05){throw new Error(_0x32b16d(0x160)+_0x5cbcf6+'\x20to\x20'+_0x4ed61f+':\x20'+_0x23fe05[_0x32b16d(0xff)]);}}async['createDirectory'](_0x8b4ee1,_0x2d2ba1){const _0x47960e=a0_0x4a8135,_0x4bfa97=this[_0x47960e(0x153)][_0x47960e(0x15b)](_0x2d2ba1),_0x3be836=this['resolvePath'](_0x8b4ee1,_0x4bfa97),_0x13b7e4=this['directoryAccessManager'][_0x47960e(0xfd)](_0x3be836,_0x2d2ba1);if(!_0x13b7e4[_0x47960e(0x145)])throw new Error(_0x47960e(0x148)+_0x13b7e4['reason']+'\x20('+_0x13b7e4[_0x47960e(0xe9)]+')');try{await a0_0xa233b7['mkdir'](_0x3be836,{'recursive':!![]});const _0x32772e=this['directoryAccessManager'][_0x47960e(0xf3)](_0x3be836,_0x2d2ba1);return{'success':!![],'action':'create-dir','directory':_0x32772e,'fullPath':_0x3be836,'message':_0x47960e(0x12d)+_0x8b4ee1};}catch(_0x357e2e){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x8b4ee1+':\x20'+_0x357e2e[_0x47960e(0xff)]);}}async[a0_0x4a8135(0x16c)](_0x500883,_0x282379){const _0x283e3b=a0_0x4a8135,_0xe6159=this[_0x283e3b(0x153)][_0x283e3b(0x15b)](_0x282379),_0x20847b=this['resolvePath'](_0x500883,_0xe6159),_0x47e38d=this['directoryAccessManager'][_0x283e3b(0x172)](_0x20847b,_0x282379);if(!_0x47e38d[_0x283e3b(0x145)])throw new Error('Read\x20access\x20denied:\x20'+_0x47e38d['reason']+'\x20('+_0x47e38d[_0x283e3b(0xe9)]+')');try{const _0x11da56=await a0_0xa233b7['readdir'](_0x20847b,{'withFileTypes':!![]}),_0x2f81ac=[];for(const _0x3908c9 of _0x11da56){const _0x5a18dd=a0_0x291fbd['join'](_0x20847b,_0x3908c9[_0x283e3b(0x128)]),_0xfacd8f=await a0_0xa233b7['stat'](_0x5a18dd);_0x2f81ac[_0x283e3b(0x103)]({'name':_0x3908c9[_0x283e3b(0x128)],'type':_0x3908c9['isDirectory']()?'directory':_0x283e3b(0xec),'size':_0x3908c9[_0x283e3b(0xe1)]()?_0xfacd8f[_0x283e3b(0x12e)]:undefined,'lastModified':_0xfacd8f['mtime'][_0x283e3b(0xe4)](),'permissions':_0xfacd8f['mode'],'isSymlink':_0x3908c9['isSymbolicLink']()});}const _0x5c6e31=this['directoryAccessManager']['createRelativePath'](_0x20847b,_0x282379);return{'success':!![],'action':_0x283e3b(0x13a),'directory':_0x5c6e31,'fullPath':_0x20847b,'contents':_0x2f81ac,'totalItems':_0x2f81ac['length'],'directories':_0x2f81ac[_0x283e3b(0xeb)](_0x304053=>_0x304053['type']===_0x283e3b(0x14c))['length'],'files':_0x2f81ac['filter'](_0xcdbe34=>_0xcdbe34[_0x283e3b(0x14b)]==='file')[_0x283e3b(0x14e)],'message':'Listed\x20'+_0x2f81ac[_0x283e3b(0x14e)]+_0x283e3b(0x13c)+_0x500883};}catch(_0x3241da){throw new Error(_0x283e3b(0x146)+_0x500883+':\x20'+_0x3241da['message']);}}async['checkExists'](_0x248409,_0x3d3ae0){const _0x23e4b9=a0_0x4a8135,_0x3085fd=this['directoryAccessManager']['getWorkingDirectory'](_0x3d3ae0),_0x2259dd=this[_0x23e4b9(0x106)](_0x248409,_0x3085fd),_0x5cb5ab=this['directoryAccessManager']['validateReadAccess'](_0x2259dd,_0x3d3ae0);if(!_0x5cb5ab[_0x23e4b9(0x145)])throw new Error('Read\x20access\x20denied:\x20'+_0x5cb5ab['reason']+'\x20('+_0x5cb5ab[_0x23e4b9(0xe9)]+')');try{const _0x57b79b=await a0_0xa233b7['stat'](_0x2259dd),_0x416867=this['directoryAccessManager'][_0x23e4b9(0xf3)](_0x2259dd,_0x3d3ae0);return{'success':!![],'action':_0x23e4b9(0xe7),'filePath':_0x416867,'fullPath':_0x2259dd,'exists':!![],'type':_0x57b79b[_0x23e4b9(0x157)]()?'directory':_0x23e4b9(0xec),'message':_0x248409+'\x20exists\x20as\x20'+(_0x57b79b[_0x23e4b9(0x157)]()?'directory':_0x23e4b9(0xec))};}catch(_0x25217f){if(_0x25217f[_0x23e4b9(0x15f)]===_0x23e4b9(0x140)){const _0x412aad=this[_0x23e4b9(0x153)][_0x23e4b9(0xf3)](_0x2259dd,_0x3d3ae0);return{'success':!![],'action':'exists','filePath':_0x412aad,'fullPath':_0x2259dd,'exists':![],'message':_0x248409+_0x23e4b9(0x10d)};}throw new Error(_0x23e4b9(0x16b)+_0x248409+':\x20'+_0x25217f[_0x23e4b9(0xff)]);}}async[a0_0x4a8135(0x10a)](_0x22a14d,_0x335e44){const _0x49a790=a0_0x4a8135,_0x5ccf5f=this['directoryAccessManager'][_0x49a790(0x15b)](_0x335e44),_0x17c21c=this[_0x49a790(0x106)](_0x22a14d,_0x5ccf5f),_0x445633=this['directoryAccessManager'][_0x49a790(0x172)](_0x17c21c,_0x335e44);if(!_0x445633['allowed'])throw new Error(_0x49a790(0x154)+_0x445633['reason']+'\x20('+_0x445633[_0x49a790(0xe9)]+')');try{const _0x5c2a75=await a0_0xa233b7['stat'](_0x17c21c),_0x3c660b=this['directoryAccessManager']['createRelativePath'](_0x17c21c,_0x335e44);return{'success':!![],'action':_0x49a790(0x152),'filePath':_0x3c660b,'fullPath':_0x17c21c,'stats':{'size':_0x5c2a75['size'],'type':_0x5c2a75[_0x49a790(0x157)]()?'directory':'file','lastModified':_0x5c2a75[_0x49a790(0xf7)][_0x49a790(0xe4)](),'lastAccessed':_0x5c2a75['atime']['toISOString'](),'created':_0x5c2a75['birthtime'][_0x49a790(0xe4)](),'permissions':_0x5c2a75['mode'],'isSymlink':_0x5c2a75[_0x49a790(0x168)]()},'message':_0x49a790(0x101)+_0x22a14d};}catch(_0x26cd2d){throw new Error(_0x49a790(0x11e)+_0x22a14d+':\x20'+_0x26cd2d['message']);}}['resolvePath'](_0x40165b,_0x22defa){const _0x58f948=a0_0x4a8135;if(a0_0x291fbd['isAbsolute'](_0x40165b))return a0_0x291fbd[_0x58f948(0xf9)](_0x40165b);return a0_0x291fbd[_0x58f948(0xf6)](_0x22defa,_0x40165b);}[a0_0x4a8135(0xf4)](_0x3eb273,_0x1c8d10,_0x496a0f='read'){const _0x9470da=a0_0x4a8135,_0x2d032c=_0x496a0f===_0x9470da(0x13b)?this[_0x9470da(0x153)]['validateWriteAccess'](_0x3eb273,_0x1c8d10):this['directoryAccessManager']['validateReadAccess'](_0x3eb273,_0x1c8d10);if(!_0x2d032c[_0x9470da(0x145)])throw new Error(_0x496a0f+'\x20access\x20denied:\x20'+_0x2d032c['reason']+'\x20('+_0x2d032c['path']+')');return _0x2d032c;}[a0_0x4a8135(0x159)](_0x121998){const _0x1814b3=a0_0x4a8135,_0x31b99c=a0_0x291fbd['extname'](_0x121998)[_0x1814b3(0x105)]();if(this['blockedExtensions'][_0x1814b3(0xfc)](_0x31b99c))return![];if(this['allowedExtensions']&&!this[_0x1814b3(0x155)][_0x1814b3(0xfc)](_0x31b99c))return![];return!![];}[a0_0x4a8135(0x16e)](_0x19b137,_0x4f0ef1,_0x12dc1f){const _0x427a00=a0_0x4a8135,_0xa6d44b={'timestamp':new Date()['toISOString'](),'agentId':_0x12dc1f,'action':_0x19b137[_0x427a00(0x14b)],'filePath':_0x19b137[_0x427a00(0x156)]||_0x19b137['outputPath']||_0x19b137['directory'],'success':_0x4f0ef1['success'],'size':_0x4f0ef1[_0x427a00(0x12e)]};this[_0x427a00(0x151)]['push'](_0xa6d44b),this[_0x427a00(0x151)][_0x427a00(0x14e)]>0xc8&&(this['operationHistory']=this[_0x427a00(0x151)][_0x427a00(0x110)](-0xc8));}[a0_0x4a8135(0x16d)](){const _0x4028f1=a0_0x4a8135;return[_0x4028f1(0x147),'write',_0x4028f1(0xef),_0x4028f1(0x114),'copy','move','create-dir',_0x4028f1(0x13a),'exists',_0x4028f1(0x152)];}['getParameterSchema'](){const _0xddf9ec=a0_0x4a8135;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0xddf9ec(0x138),'enum':this[_0xddf9ec(0x16d)]()},'filePath':{'type':_0xddf9ec(0x138)},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':_0xddf9ec(0x138)},'directory':{'type':_0xddf9ec(0x138)},'content':{'type':'string'},'encoding':{'type':_0xddf9ec(0x138)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x1095f8=null){const _0xc29acc=a0_0x4a8135;if(_0x1095f8)return this['operationHistory'][_0xc29acc(0xeb)](_0x503c94=>_0x503c94['agentId']===_0x1095f8);return[...this[_0xc29acc(0x151)]];}}function a0_0x16d8(_0x361deb,_0x372a6c){_0x361deb=_0x361deb-0xe1;const _0x4755a0=a0_0x4755();let _0x16d8df=_0x4755a0[_0x361deb];if(a0_0x16d8['qiyGGp']===undefined){var _0x4bf62e=function(_0x89574d){const _0x124c58='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14816d='',_0x2d08cc='';for(let _0xa233b7=0x0,_0x291fbd,_0x17ea40,_0x3cf2f4=0x0;_0x17ea40=_0x89574d['charAt'](_0x3cf2f4++);~_0x17ea40&&(_0x291fbd=_0xa233b7%0x4?_0x291fbd*0x40+_0x17ea40:_0x17ea40,_0xa233b7++%0x4)?_0x14816d+=String['fromCharCode'](0xff&_0x291fbd>>(-0x2*_0xa233b7&0x6)):0x0){_0x17ea40=_0x124c58['indexOf'](_0x17ea40);}for(let _0x3d13dd=0x0,_0x4f26d4=_0x14816d['length'];_0x3d13dd<_0x4f26d4;_0x3d13dd++){_0x2d08cc+='%'+('00'+_0x14816d['charCodeAt'](_0x3d13dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d08cc);};a0_0x16d8['qQuPCz']=_0x4bf62e,a0_0x16d8['uipKqL']={},a0_0x16d8['qiyGGp']=!![];}const _0x2ee41a=_0x4755a0[0x0],_0x2b20d8=_0x361deb+_0x2ee41a,_0x14ac0a=a0_0x16d8['uipKqL'][_0x2b20d8];return!_0x14ac0a?(_0x16d8df=a0_0x16d8['qQuPCz'](_0x16d8df),a0_0x16d8['uipKqL'][_0x2b20d8]=_0x16d8df):_0x16d8df=_0x14ac0a,_0x16d8df;}export default FileSystemTool;