@loxia-labs/loxia-autopilot-one 1.0.8 → 1.0.9

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 (116) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
@@ -1 +1 @@
1
- const a0_0x556a87=a0_0x2fdc;(function(_0x3e7863,_0x16ea01){const _0xedc2e6=a0_0x2fdc,_0x222ec6=_0x3e7863();while(!![]){try{const _0x5368b1=parseInt(_0xedc2e6(0x1e2))/0x1+parseInt(_0xedc2e6(0x21f))/0x2+parseInt(_0xedc2e6(0x1a1))/0x3+parseInt(_0xedc2e6(0x1b5))/0x4+parseInt(_0xedc2e6(0x1b1))/0x5+-parseInt(_0xedc2e6(0x1a3))/0x6*(parseInt(_0xedc2e6(0x20b))/0x7)+-parseInt(_0xedc2e6(0x20f))/0x8;if(_0x5368b1===_0x16ea01)break;else _0x222ec6['push'](_0x222ec6['shift']());}catch(_0xd854b5){_0x222ec6['push'](_0x222ec6['shift']());}}}(a0_0x545c,0x87701));import{promises as a0_0x7dc6e3}from'fs';import a0_0x4e96f4 from'path';import{exec as a0_0x2dee47}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x498a89 from'../utilities/tagParser.js';function a0_0x2fdc(_0x5d2997,_0x12a33e){_0x5d2997=_0x5d2997-0x19f;const _0x545cab=a0_0x545c();let _0x2fdc17=_0x545cab[_0x5d2997];if(a0_0x2fdc['mpMKpI']===undefined){var _0x10a04b=function(_0x546f3c){const _0x2640cf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7dc6e3='',_0x4e96f4='';for(let _0x2dee47=0x0,_0x498a89,_0x577f02,_0x29d2b2=0x0;_0x577f02=_0x546f3c['charAt'](_0x29d2b2++);~_0x577f02&&(_0x498a89=_0x2dee47%0x4?_0x498a89*0x40+_0x577f02:_0x577f02,_0x2dee47++%0x4)?_0x7dc6e3+=String['fromCharCode'](0xff&_0x498a89>>(-0x2*_0x2dee47&0x6)):0x0){_0x577f02=_0x2640cf['indexOf'](_0x577f02);}for(let _0x235b6a=0x0,_0x49eb5b=_0x7dc6e3['length'];_0x235b6a<_0x49eb5b;_0x235b6a++){_0x4e96f4+='%'+('00'+_0x7dc6e3['charCodeAt'](_0x235b6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4e96f4);};a0_0x2fdc['PaSnAG']=_0x10a04b,a0_0x2fdc['ZIutbI']={},a0_0x2fdc['mpMKpI']=!![];}const _0x491392=_0x545cab[0x0],_0x44e9f1=_0x5d2997+_0x491392,_0x416972=a0_0x2fdc['ZIutbI'][_0x44e9f1];return!_0x416972?(_0x2fdc17=a0_0x2fdc['PaSnAG'](_0x2fdc17),a0_0x2fdc['ZIutbI'][_0x44e9f1]=_0x2fdc17):_0x2fdc17=_0x416972,_0x2fdc17;}function a0_0x545c(){const _0x368686=['Bw9Kzq','zxHLy3v0zq','BNbTigXZigzHAwXLzdO','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','zgv2rgvWzw5Kzw5JAwvZ','igzVCIa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','B2jQzwn0','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','B3bLCMf0B3i','iokgKIa','x3bHCNnLq29TCgXLEfjHBMDL','y2HLy2S','Dg9mB3DLCKnHC2u','ugfJA2fNzsbUB3qGzM91BMq6ia','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','D2fYBG','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','vKfmsurFtu9ervm','x2nVBxbHCMvqCMvYzwXLyxnL','Bg9Nz2vY','Aw5MBW','yM9VBgvHBG','DgvZDa','Cgf0AcbTDxn0igjLigeGC3rYAw5N','tufyx0rfuevorevoq0LfuW','mtr1vLPsz1O','BwLUB3i','DhLWzq','BM9YBwfSAxPL','mtK4nJGZodrts09RyNC','4PYfiejHy2T1CcbJCMvHDgvKoIa','x2nVBxbHCMvwzxjZAw9UCW','C3rYAw5NAwz5','yNvPBgq','rxjYB3iGy2HLy2TPBMCG','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','yxv0BW','BMv3vMvYC2LVBG','x3zHBgLKyxrLugfYyw1LDgvYCW','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','x2nYzwf0zujHy2T1Ca','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','C3rYAw5N','mti0mJu0nfjrruHiyW','tufyx0nptKnvuLjftLrFq0Hfq0Tt','BNbTigLUC3rHBgW','CgTN','DxrMltG','yMfZzw5HBwu','mJu2mJa3ognJtfHtzq','uMv0CNKG','mty2mJeYnNLxzKDhuG','x2LZvxbKyxrLqxzHAwXHyMXL','Bgf0zxn0','Bwf0y2G','yw5K','x3bHCNnLvMvYC2LVBG','Aw5JBhvKzxm','A2v5CW','uKvuuLLFqvruru1qvfm','C3rHDhvZ','ChjLzML4','AM9PBG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','C2LNBMfS','ndy0mde5mhfItKXurq','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','icdIGkiG','C3bSAxq','mtG1mZeXnLnVzuDNsG','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','4PQG77Ipica','revgqvvmvf9nt0rf','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','8j+tIIbgB3vUzca','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','zxjYB3i','sw52ywXPzcbTB2rLoIa','ChvZAa','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','uKvhsvnuuLLFveLnru9vva','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','CgfJA2fNzs5QC29U','C2XPy2u','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','C29Tzq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','zxHLyW','y3DK','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BwfQB3i','q1jfqvrfx0jbq0Tvufm','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','zMLSDgvY','C3rHCNrZv2L0Aa','x3bHCNnLvMvYC2LVBLjHBMDL','zw50CMLLCW','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','rMfPBgvKihrVignYzwf0zsbIywnRDxa','rMfPBgvKihrVigzLDgnOia','Dhj1zq','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','CMfUz2u','Aw5JBhvKzurLDG','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','Cgf0Aa','Cgf0y2G','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','zgLZDc10ywDZ','BwvZC2fNzq','x3bHCNnLqM9VBgvHBG','rM91BMqG','nZi1nZi4BuTrEvns','tLbnx0nptu1btKrFveLnru9vva','BwfW','zML4','ChjLCMvSzwfZzq','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','lMjHy2T1Cc5QC29U','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','BgvUz3rO','x3nHDgLZzMLLC1jHBMDL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','DhjPBq'];a0_0x545c=function(){return _0x368686;};return a0_0x545c();}const exec=promisify(a0_0x2dee47),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x556a87(0x1fc),'VALID_MODES':[a0_0x556a87(0x1fc),'fix',a0_0x556a87(0x218)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x556a87(0x1ea),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x556a87(0x1ee)};export class DependencyResolverTool extends BaseTool{['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<dependency-resolve>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>check</mode>\x0a\x20\x20<include-dev>true</include-dev>\x0a</dependency-resolve>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<mode>check</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>fix</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x577f02){const _0x57a032=a0_0x556a87;if(typeof _0x577f02==='object'&&_0x577f02!==null)return{'path':_0x577f02['path']||'.','mode':_0x577f02[_0x57a032(0x1f0)]||RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':_0x577f02['includeDev']!==undefined?_0x577f02[_0x57a032(0x1d8)]:!![]};if(typeof _0x577f02===_0x57a032(0x21e)){const _0x29d2b2=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x235b6a=_0x29d2b2['exec'](_0x577f02);if(_0x235b6a){const _0x2b2463=_0x235b6a[0x1],_0x48481c=_0x235b6a[0x2],_0x45b1cc=/path=["']([^"']*)["']/i['exec'](_0x2b2463),_0x124457=/mode=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x4bc959=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x5319ad=/<path>(.*?)<\/path>/i,_0x546806=_0x5319ad[_0x57a032(0x1c8)](_0x48481c),_0x2d0f75=/<mode>(.*?)<\/mode>/i,_0x49d201=_0x2d0f75[_0x57a032(0x1c8)](_0x48481c),_0x134c49=/<include-dev>(.*?)<\/include-dev>/i,_0x43d7f4=_0x134c49['exec'](_0x48481c),_0x1f3049=(_0x546806?_0x546806[0x1][_0x57a032(0x1ef)]():null)||(_0x45b1cc?_0x45b1cc[0x1]:'.'),_0x53daa7=(_0x49d201?_0x49d201[0x1]['trim']():null)||(_0x124457?_0x124457[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)]),_0x9e98c8=(_0x43d7f4?_0x43d7f4[0x1][_0x57a032(0x1ef)]():null)||(_0x4bc959?_0x4bc959[0x1]:_0x57a032(0x1d5));return{'path':_0x1f3049,'mode':_0x53daa7,'includeDev':this['_parseBoolean'](_0x9e98c8,!![])};}const _0x49eb5b=/\[resolve\s+([^\]]*)\]/i,_0x521118=_0x49eb5b['exec'](_0x577f02);if(_0x521118){const _0x836cb7=_0x521118[0x1],_0x2475c4=/path=["']([^"']*)["']/i['exec'](_0x836cb7),_0x3ddbb3=/mode=["']([^"']*)["']/i['exec'](_0x836cb7),_0x4e0efc=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x836cb7);return{'path':_0x2475c4?_0x2475c4[0x1]:'.','mode':_0x3ddbb3?_0x3ddbb3[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':this[_0x57a032(0x1e0)](_0x4e0efc?_0x4e0efc[0x1]:'true',!![])};}throw new Error(_0x57a032(0x215));}throw new Error(_0x57a032(0x217));}[a0_0x556a87(0x1e0)](_0x54e626,defaultValue=![]){const _0x234b26=a0_0x556a87;if(_0x54e626===undefined||_0x54e626===null)return defaultValue;if(typeof _0x54e626===_0x234b26(0x207))return _0x54e626;if(typeof _0x54e626==='string')return _0x54e626[_0x234b26(0x1fd)]()==='true'||_0x54e626==='1';return defaultValue;}[a0_0x556a87(0x21a)](_0xe8033){const _0x11be1c=a0_0x556a87;if(!_0xe8033||typeof _0xe8033!==_0x11be1c(0x1f7))throw new Error(_0x11be1c(0x1bb));if(_0xe8033['path']&&typeof _0xe8033[_0x11be1c(0x1db)]!==_0x11be1c(0x21e))throw new Error(_0x11be1c(0x209));if(_0xe8033[_0x11be1c(0x1f0)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x11be1c(0x1a9)](_0xe8033[_0x11be1c(0x1f0)]))throw new Error(_0x11be1c(0x1bd)+_0xe8033['mode']+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG[_0x11be1c(0x203)]['join'](',\x20'));if(_0xe8033[_0x11be1c(0x1d8)]!==undefined&&typeof _0xe8033[_0x11be1c(0x1d8)]!=='boolean')throw new Error(_0x11be1c(0x1e7));}['_resolveAndValidatePath'](_0x58f6fe,_0x1a369b){const _0xe91b1f=a0_0x556a87,{projectDir:_0x257d04,directoryAccess:_0xb05d10}=_0x1a369b;let _0x4d560a=_0x257d04||process[_0xe91b1f(0x1c9)]();_0xb05d10&&_0xb05d10['workingDirectory']&&(_0x4d560a=_0xb05d10['workingDirectory']);const _0x3c377d=a0_0x4e96f4['isAbsolute'](_0x58f6fe)?a0_0x4e96f4[_0xe91b1f(0x20e)](_0x58f6fe):a0_0x4e96f4['normalize'](a0_0x4e96f4['join'](_0x4d560a,_0x58f6fe)),_0x380147=a0_0x4e96f4[_0xe91b1f(0x20e)](_0x4d560a);if(!_0x3c377d[_0xe91b1f(0x1cf)](_0x380147))throw new Error(_0xe91b1f(0x1bf)+_0x58f6fe+_0xe91b1f(0x1d2));return _0x3c377d;}async[a0_0x556a87(0x21c)](_0x5ae5f5){const _0x44720b=a0_0x556a87;if(!RESOLVER_CONFIG[_0x44720b(0x1cc)])return null;try{const _0x7cf3a=_0x5ae5f5+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x7dc6e3['copyFile'](_0x5ae5f5,_0x7cf3a),this['logger']?.[_0x44720b(0x206)]('Created\x20backup',{'backupPath':_0x7cf3a}),_0x7cf3a;}catch(_0x34216d){return this[_0x44720b(0x205)]?.['warn'](_0x44720b(0x1d3),{'error':_0x34216d[_0x44720b(0x1df)]}),null;}}async['_fetchPackageInfo'](_0x22e188){const _0x252a88=a0_0x556a87,_0xcc8687=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x22e188);for(let _0x40490b=0x1;_0x40490b<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x40490b++){try{const _0x5bec00=new AbortController(),_0x141de1=setTimeout(()=>_0x5bec00['abort'](),RESOLVER_CONFIG[_0x252a88(0x1c1)]),_0x1e94cb=await fetch(_0xcc8687,{'signal':_0x5bec00[_0x252a88(0x1b0)]});clearTimeout(_0x141de1);if(!_0x1e94cb['ok']){if(_0x1e94cb['status']===0x194)return this['logger']?.[_0x252a88(0x201)](_0x252a88(0x1fe)+_0x22e188),null;throw new Error('HTTP\x20'+_0x1e94cb[_0x252a88(0x1ac)]+':\x20'+_0x1e94cb['statusText']);}const _0x128194=await _0x1e94cb['json']();if(!_0x128194||typeof _0x128194!=='object'||!_0x128194[_0x252a88(0x1de)])throw new Error(_0x252a88(0x200));return _0x128194;}catch(_0x2ad61f){if(_0x40490b<RESOLVER_CONFIG[_0x252a88(0x1ab)])this['logger']?.['debug'](_0x252a88(0x1a2)+_0x40490b+'/'+RESOLVER_CONFIG[_0x252a88(0x1ab)]+_0x252a88(0x1f5)+_0x22e188),await new Promise(_0x49060c=>setTimeout(_0x49060c,RESOLVER_CONFIG['RETRY_DELAY']*_0x40490b));else return this[_0x252a88(0x205)]?.[_0x252a88(0x1bc)](_0x252a88(0x1d4)+_0x22e188+':',_0x2ad61f[_0x252a88(0x1df)]),null;}}return null;}async[a0_0x556a87(0x1ff)](_0x1749dd,_0x3bf91c){const _0x9d7775=a0_0x556a87,_0x258270=await this['_fetchPackageInfo'](_0x1749dd);if(!_0x258270)return null;const _0x816d6c=_0x258270[_0x9d7775(0x1de)]?.[_0x9d7775(0x1a5)];if(!_0x816d6c)return null;const _0x5cb4f7=this[_0x9d7775(0x1a8)](_0x816d6c);if(!_0x5cb4f7)return null;if(this['_isComplexRange'](_0x3bf91c)){const _0x47a5fc=this['_parseComplexRange'](_0x3bf91c),_0x5a6126=this[_0x9d7775(0x1eb)](_0x47a5fc,_0x5cb4f7);if(_0x5a6126)return _0x816d6c;return null;}const _0x1e0c3a=this[_0x9d7775(0x1d0)](_0x3bf91c);if(!_0x1e0c3a)return null;const _0x243fbe=this[_0x9d7775(0x1a4)](_0x1e0c3a,_0x5cb4f7);if(_0x243fbe)return _0x1e0c3a[_0x9d7775(0x1ad)]+_0x816d6c;return null;}[a0_0x556a87(0x1a8)](_0x54ddf6){const _0x1599db=a0_0x556a87,_0x36783b=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x166fa8=_0x36783b['exec'](_0x54ddf6);if(!_0x166fa8){const _0x5e1825=_0x54ddf6[_0x1599db(0x1a6)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5e1825)return{'major':parseInt(_0x5e1825[0x1],0xa),'minor':parseInt(_0x5e1825[0x2],0xa),'patch':parseInt(_0x5e1825[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x166fa8[0x1],0xa),'minor':parseInt(_0x166fa8[0x2],0xa),'patch':parseInt(_0x166fa8[0x3],0xa),'prerelease':_0x166fa8[0x4]?_0x166fa8[0x4]['split']('.'):null,'build':_0x166fa8[0x5]||null};}[a0_0x556a87(0x211)](_0xed3f47,_0x1fcb39){const _0x5531de=a0_0x556a87;if(_0xed3f47[_0x5531de(0x1cb)]!==_0x1fcb39['major'])return _0xed3f47[_0x5531de(0x1cb)]-_0x1fcb39[_0x5531de(0x1cb)];if(_0xed3f47['minor']!==_0x1fcb39[_0x5531de(0x20c)])return _0xed3f47['minor']-_0x1fcb39['minor'];if(_0xed3f47[_0x5531de(0x1dc)]!==_0x1fcb39['patch'])return _0xed3f47[_0x5531de(0x1dc)]-_0x1fcb39['patch'];if(!_0xed3f47['prerelease']&&!_0x1fcb39[_0x5531de(0x1e6)])return 0x0;if(!_0xed3f47['prerelease']&&_0x1fcb39[_0x5531de(0x1e6)])return 0x1;if(_0xed3f47['prerelease']&&!_0x1fcb39['prerelease'])return-0x1;return this[_0x5531de(0x204)](_0xed3f47['prerelease'],_0x1fcb39[_0x5531de(0x1e6)]);}[a0_0x556a87(0x204)](_0x28c0ec,_0x164828){const _0x48fce7=a0_0x556a87,_0x4b6c9a=Math['max'](_0x28c0ec[_0x48fce7(0x1ec)],_0x164828['length']);for(let _0x3b6d79=0x0;_0x3b6d79<_0x4b6c9a;_0x3b6d79++){if(_0x3b6d79>=_0x28c0ec[_0x48fce7(0x1ec)])return-0x1;if(_0x3b6d79>=_0x164828[_0x48fce7(0x1ec)])return 0x1;const _0x43cbf8=_0x28c0ec[_0x3b6d79],_0x302342=_0x164828[_0x3b6d79],_0x4d4d37=/^\d+$/['test'](_0x43cbf8)?parseInt(_0x43cbf8,0xa):null,_0x142d01=/^\d+$/['test'](_0x302342)?parseInt(_0x302342,0xa):null;if(_0x4d4d37!==null&&_0x142d01!==null){if(_0x4d4d37!==_0x142d01)return _0x4d4d37-_0x142d01;continue;}if(_0x4d4d37!==null&&_0x142d01===null)return-0x1;if(_0x4d4d37===null&&_0x142d01!==null)return 0x1;if(_0x43cbf8<_0x302342)return-0x1;if(_0x43cbf8>_0x302342)return 0x1;}return 0x0;}[a0_0x556a87(0x1d0)](_0x23d53b){const _0x316cff=a0_0x556a87,_0x4b4a85=_0x23d53b['trim'](),_0x485d3b=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x42f655=_0x485d3b['exec'](_0x4b4a85);if(_0x42f655){const _0x58f43d=_0x42f655[0x1],_0x430cc8=_0x42f655[0x3],_0x36d58b=_0x42f655[0x5],_0xc274fb=_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'||_0x430cc8===undefined||_0x430cc8==='*'||_0x430cc8['toLowerCase']()==='x'||_0x36d58b===undefined||_0x36d58b==='*'||_0x36d58b['toLowerCase']()==='x';if(_0xc274fb)return{'prefix':'','operator':'x-range','major':_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x58f43d,0xa),'minor':!_0x430cc8||_0x430cc8==='*'||_0x430cc8[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x430cc8,0xa),'patch':!_0x36d58b||_0x36d58b==='*'||_0x36d58b[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x36d58b,0xa),'original':_0x23d53b};}let _0x15959b='',_0x2f0a18=_0x4b4a85,_0x4f0e33='=';if(_0x4b4a85['startsWith']('^'))_0x15959b='^',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='^';else{if(_0x4b4a85['startsWith']('~'))_0x15959b='~',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='~';else{if(_0x4b4a85['startsWith']('>='))_0x15959b='>=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='>=';else{if(_0x4b4a85['startsWith']('>'))_0x15959b='>',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='>';else{if(_0x4b4a85[_0x316cff(0x1cf)]('<='))_0x15959b='<=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='<=';else _0x4b4a85[_0x316cff(0x1cf)]('<')&&(_0x15959b='<',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='<');}}}}const _0x2ba724=this['_parseVersion'](_0x2f0a18);if(!_0x2ba724)return null;return{'prefix':_0x15959b,'operator':_0x4f0e33,'major':_0x2ba724['major'],'minor':_0x2ba724['minor'],'patch':_0x2ba724[_0x316cff(0x1dc)],'prerelease':_0x2ba724['prerelease'],'build':_0x2ba724['build'],'original':_0x23d53b};}[a0_0x556a87(0x1a4)](_0x3b8d40,_0x22671d){const _0x4eeaa1=a0_0x556a87,_0x20d479={'major':_0x3b8d40['major'],'minor':_0x3b8d40['minor'],'patch':_0x3b8d40[_0x4eeaa1(0x1dc)],'prerelease':_0x3b8d40['prerelease']||null,'build':_0x3b8d40[_0x4eeaa1(0x213)]||null};switch(_0x3b8d40[_0x4eeaa1(0x1f9)]){case'^':return this[_0x4eeaa1(0x1e8)](_0x20d479,_0x22671d);case'~':return this['_isTildeUpdateAvailable'](_0x20d479,_0x22671d);case'>=':case'>':return this[_0x4eeaa1(0x1f3)](_0x20d479,_0x22671d);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x3b8d40,_0x22671d);case'x-range':return this[_0x4eeaa1(0x1ca)](_0x3b8d40,_0x22671d);case'=':default:return this[_0x4eeaa1(0x1c7)](_0x20d479,_0x22671d);}}['_isCaretUpdateAvailable'](_0x31b55f,_0x4adf5d){const _0x57fd31=a0_0x556a87,_0x180027=this['_compareVersions'](_0x4adf5d,_0x31b55f);if(_0x180027<=0x0)return![];if(_0x31b55f[_0x57fd31(0x1cb)]===0x0&&_0x31b55f[_0x57fd31(0x20c)]===0x0)return _0x4adf5d[_0x57fd31(0x1cb)]===0x0&&_0x4adf5d[_0x57fd31(0x20c)]===0x0;if(_0x31b55f[_0x57fd31(0x1cb)]===0x0)return _0x4adf5d['major']===0x0&&_0x4adf5d['minor']===_0x31b55f['minor'];return _0x4adf5d['major']===_0x31b55f['major'];}['_isTildeUpdateAvailable'](_0x5e5a8a,_0x13b36a){const _0x57fead=a0_0x556a87,_0x33a138=this[_0x57fead(0x211)](_0x13b36a,_0x5e5a8a);if(_0x33a138<=0x0)return![];return _0x13b36a[_0x57fead(0x1cb)]===_0x5e5a8a['major']&&_0x13b36a['minor']===_0x5e5a8a['minor'];}['_isSimpleUpdateAvailable'](_0x37d1d8,_0x4e7a94){const _0x3c64e7=this['_compareVersions'](_0x4e7a94,_0x37d1d8);return _0x3c64e7>0x0;}[a0_0x556a87(0x1c7)](_0x105972,_0x4b11e4){return this['_isSimpleUpdateAvailable'](_0x105972,_0x4b11e4);}[a0_0x556a87(0x1f6)](_0x28a07f,_0xc2968a){const _0x115bc8=a0_0x556a87,_0xef1dee=this[_0x115bc8(0x211)](_0xc2968a,_0x28a07f);if(_0x28a07f[_0x115bc8(0x1f9)]==='<')return _0xef1dee<0x0;else{if(_0x28a07f[_0x115bc8(0x1f9)]==='<=')return _0xef1dee<=0x0;}return![];}[a0_0x556a87(0x1ca)](_0x3b80aa,_0x505f5c){const _0xbdf396=a0_0x556a87;if(_0x3b80aa['major']!==null&&_0x505f5c['major']!==_0x3b80aa[_0xbdf396(0x1cb)])return![];if(_0x3b80aa[_0xbdf396(0x20c)]!==null&&_0x505f5c['minor']!==_0x3b80aa['minor'])return![];if(_0x3b80aa['patch']!==null&&_0x505f5c['patch']!==_0x3b80aa[_0xbdf396(0x1dc)])return![];return!![];}['_isComplexRange'](_0x54f44f){const _0x10f8aa=a0_0x556a87;if(_0x54f44f['includes']('||'))return!![];const _0x278fcd=_0x54f44f['trim']();if(_0x278fcd[_0x10f8aa(0x1cf)]('^')||_0x278fcd['startsWith']('~'))return![];const _0x5e92d3=_0x278fcd[_0x10f8aa(0x1b4)](/\s+/)['filter'](_0x2a1c73=>_0x2a1c73[_0x10f8aa(0x1ec)]>0x0);if(_0x5e92d3[_0x10f8aa(0x1ec)]>0x1){const _0x998a0=/^(>=?|<=?|\^|~|[0-9])/;return _0x5e92d3['every'](_0x35718d=>_0x998a0[_0x10f8aa(0x208)](_0x35718d));}return![];}[a0_0x556a87(0x1fb)](_0x5c14a2){const _0x4e7924=a0_0x556a87;if(_0x5c14a2['includes']('||')){const _0x2557ba=_0x5c14a2[_0x4e7924(0x1b4)]('||')['map'](_0x26a70d=>_0x26a70d['trim']());return{'type':'or','ranges':_0x2557ba['map'](_0x302350=>this['_parseComplexRange'](_0x302350))};}const _0x46fa5a=_0x5c14a2['trim']()['split'](/\s+/)[_0x4e7924(0x1ce)](_0x1607e=>_0x1607e['length']>0x0);if(_0x46fa5a['length']>0x1)return{'type':'and','ranges':_0x46fa5a[_0x4e7924(0x1e4)](_0x36d3c7=>this['_parseVersionRange'](_0x36d3c7))};return{'type':'simple','range':this['_parseVersionRange'](_0x5c14a2)};}[a0_0x556a87(0x1ed)](_0x2f1224,_0x552ef2){if(!_0x2f1224||!_0x552ef2)return![];return this['_isUpdateAvailable'](_0x2f1224,_0x552ef2);}['_satisfiesComplexRange'](_0x1fec66,_0x507494){const _0x2cfe59=a0_0x556a87;if(!_0x1fec66||!_0x507494)return![];switch(_0x1fec66[_0x2cfe59(0x20d)]){case'simple':return this[_0x2cfe59(0x1ed)](_0x1fec66[_0x2cfe59(0x1d7)],_0x507494);case _0x2cfe59(0x1a7):return _0x1fec66['ranges']['every'](_0x382f47=>this[_0x2cfe59(0x1ed)](_0x382f47,_0x507494));case'or':return _0x1fec66['ranges'][_0x2cfe59(0x1c6)](_0x5278fc=>this[_0x2cfe59(0x1eb)](_0x5278fc,_0x507494));default:return![];}}async['_checkDependencies'](_0x5db316){const _0x3f6975=a0_0x556a87,_0x4892c8={},_0x19736b=Object[_0x3f6975(0x1d1)](_0x5db316);for(let _0x3f6302=0x0;_0x3f6302<_0x19736b['length'];_0x3f6302+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x2c9f10=_0x19736b[_0x3f6975(0x1c4)](_0x3f6302,_0x3f6302+RESOLVER_CONFIG[_0x3f6975(0x220)]),_0x3db5ec=_0x2c9f10[_0x3f6975(0x1e4)](async([_0x95a83b,_0x723469])=>{const _0x42c773=_0x3f6975;try{const _0x4e036b=await this['_getLatestCompatibleVersion'](_0x95a83b,_0x723469);if(_0x4e036b){const _0x16ac96=_0x723469[_0x42c773(0x1a6)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x95a83b,'newVersion':''+_0x16ac96+_0x4e036b,'oldVersion':_0x723469};}return null;}catch(_0x229e90){return this['logger']?.['error'](_0x42c773(0x214)+_0x95a83b+':',_0x229e90['message']),null;}}),_0x292139=await Promise['all'](_0x3db5ec);_0x292139['forEach'](_0x1ce6ba=>{const _0x5c855e=_0x3f6975;_0x1ce6ba&&(_0x4892c8[_0x1ce6ba[_0x5c855e(0x222)]]=_0x1ce6ba[_0x5c855e(0x219)]);});}return _0x4892c8;}async[a0_0x556a87(0x1f1)](_0x28a5d4,_0x391601={}){const _0x3a6197=a0_0x556a87;try{this[_0x3a6197(0x21a)](_0x28a5d4);const {path:_0x4a9af0,mode:_0x3fc84e,includeDev:_0x1c0ae8}=_0x28a5d4,{projectDir:_0xc6257a,agentId:_0x47ba2b,directoryAccess:_0x13aba9}=_0x391601,_0x259ac9=this[_0x3a6197(0x1cd)](_0x4a9af0,_0x391601),_0x54b629=a0_0x4e96f4[_0x3a6197(0x1ae)](_0x259ac9,_0x3a6197(0x1c3));this['logger']?.['info'](_0x3a6197(0x1f8),{'mode':_0x3fc84e,'resolvedPath':_0x259ac9,'includeDev':_0x1c0ae8,'agentId':_0x47ba2b});const _0x21fb4f=[];_0x21fb4f['push'](_0x3a6197(0x21d)+_0x259ac9),_0x21fb4f[_0x3a6197(0x1be)]('Mode:\x20'+_0x3fc84e);try{await a0_0x7dc6e3['access'](_0x54b629);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x54b629,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}_0x21fb4f[_0x3a6197(0x1be)]('\x0a📦\x20Reading\x20package.json...');const _0x373c61=await a0_0x7dc6e3['readFile'](_0x54b629,_0x3a6197(0x19f)),_0xa44eda=JSON['parse'](_0x373c61),_0x35af9c={..._0xa44eda[_0x3a6197(0x1e9)]};_0x1c0ae8&&_0xa44eda[_0x3a6197(0x1f4)]&&Object['assign'](_0x35af9c,_0xa44eda[_0x3a6197(0x1f4)]);if(Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]===0x0)return{'success':!![],'mode':_0x3fc84e,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x21fb4f['join']('\x0a')};if(Object['keys'](_0x35af9c)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x3a6197(0x20a)],'output':_0x21fb4f['join']('\x0a')};_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1ba)+Object[_0x3a6197(0x1aa)](_0x35af9c)['length']+_0x3a6197(0x1da)),_0x21fb4f['push'](_0x3a6197(0x1d9));const _0x5d845f=await this['_checkDependencies'](_0x35af9c);_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1dd)),_0x21fb4f['push'](_0x3a6197(0x1c5)+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]);if(Object['keys'](_0x5d845f)['length']>0x0){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1af));for(const [_0x50d29f,_0x5b7e76]of Object['entries'](_0x5d845f)){const _0x24d55f=_0x35af9c[_0x50d29f];_0x21fb4f[_0x3a6197(0x1be)]('\x20\x20•\x20'+_0x50d29f+':\x20'+_0x24d55f+_0x3a6197(0x1fa)+_0x5b7e76);}}else _0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x202));if(_0x3fc84e==='check')return Object['keys'](_0x5d845f)[_0x3a6197(0x1ec)]>0x0&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1d6)),{'success':!![],'mode':_0x3a6197(0x1fc),'message':_0x3a6197(0x1e1)+Object['keys'](_0x5d845f)['length']+_0x3a6197(0x21b),'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x5d845f,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};if((_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')&&Object[_0x3a6197(0x1aa)](_0x5d845f)['length']>0x0){_0x21fb4f['push'](_0x3a6197(0x1b2));const _0x553867=await this['_createBackup'](_0x54b629);_0x553867?_0x21fb4f['push'](_0x3a6197(0x210)+a0_0x4e96f4[_0x3a6197(0x1a0)](_0x553867)):_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x21fb4f['push'](_0x3a6197(0x1c2));for(const [_0x42876b,_0x4c93e0]of Object['entries'](_0x5d845f)){_0xa44eda[_0x3a6197(0x1e9)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1e9)][_0x42876b]=_0x4c93e0),_0xa44eda[_0x3a6197(0x1f4)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1f4)][_0x42876b]=_0x4c93e0);}await a0_0x7dc6e3['writeFile'](_0x54b629,JSON[_0x3a6197(0x212)](_0xa44eda,null,0x2)+'\x0a'),_0x21fb4f[_0x3a6197(0x1be)]('✅\x20package.json\x20updated'),_0x21fb4f['push'](_0x3a6197(0x1c0));try{const {stdout:_0x420ff9,stderr:_0x4c8227}=await exec(_0x3a6197(0x221),{'cwd':_0x259ac9,'timeout':RESOLVER_CONFIG[_0x3a6197(0x1e3)],'maxBuffer':0x400*0x400*0xa});if(_0x420ff9){const _0x2617ea=_0x420ff9['trim']()[_0x3a6197(0x1b4)]('\x0a');_0x2617ea[_0x3a6197(0x1ec)]>0xa?_0x21fb4f['push']('\x20\x20'+_0x2617ea['slice'](-0x5)['join']('\x0a\x20\x20')):_0x21fb4f['push']('\x20\x20'+_0x420ff9['trim']());}_0x4c8227&&!_0x4c8227[_0x3a6197(0x1a9)]('npm\x20WARN')&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1b7)+_0x4c8227['trim']());_0x21fb4f['push'](_0x3a6197(0x1b9));try{const {stdout:_0x3eac3a}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x259ac9,'timeout':0x7530}),_0x1a5789=JSON['parse'](_0x3eac3a);if(_0x1a5789['dependencies']){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x216));for(const _0x53531e of Object['keys'](_0x5d845f)){_0x1a5789['dependencies'][_0x53531e]&&_0x21fb4f['push'](_0x3a6197(0x1b3)+_0x53531e+'@'+_0x1a5789[_0x3a6197(0x1e9)][_0x53531e]['version']);}}}catch(_0x3c7daa){this['logger']?.['debug'](_0x3a6197(0x1f2),_0x3c7daa[_0x3a6197(0x1df)]);}return{'success':!![],'mode':_0x3fc84e,'message':'Successfully\x20updated\x20'+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'errors':0x0},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'backupPath':_0x553867,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}catch(_0x44058c){_0x21fb4f['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)]);if(_0x553867)try{await a0_0x7dc6e3['copyFile'](_0x553867,_0x54b629),_0x21fb4f[_0x3a6197(0x1be)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0xba2c18){_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x3fc84e,'error':'npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)],'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'output':_0x21fb4f['join']('\x0a')};}}else{if(_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')return _0x21fb4f[_0x3a6197(0x1be)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x3fc84e,'message':_0x3a6197(0x1b6),'statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x21fb4f['join']('\x0a')};}}catch(_0x72f3b2){return this[_0x3a6197(0x205)]?.[_0x3a6197(0x1bc)]('Dependency\x20resolver\x20error:',_0x72f3b2),{'success':![],'error':_0x72f3b2['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x72f3b2[_0x3a6197(0x1df)]};}}}export default DependencyResolverTool;
1
+ const a0_0x44feb4=a0_0x21e2;(function(_0x114bb1,_0x11afa8){const _0x298d32=a0_0x21e2,_0x23a173=_0x114bb1();while(!![]){try{const _0x3b763b=parseInt(_0x298d32(0x230))/0x1+-parseInt(_0x298d32(0x227))/0x2*(-parseInt(_0x298d32(0x22f))/0x3)+-parseInt(_0x298d32(0x210))/0x4+-parseInt(_0x298d32(0x1f6))/0x5+parseInt(_0x298d32(0x233))/0x6+-parseInt(_0x298d32(0x1e0))/0x7+-parseInt(_0x298d32(0x1f1))/0x8*(-parseInt(_0x298d32(0x20b))/0x9);if(_0x3b763b===_0x11afa8)break;else _0x23a173['push'](_0x23a173['shift']());}catch(_0x15f0f2){_0x23a173['push'](_0x23a173['shift']());}}}(a0_0x5f05,0x9bb9f));import{promises as a0_0x11f205}from'fs';import a0_0x16031b from'path';function a0_0x5f05(){const _0x17d1d2=['Bwf0y2G','lMjHy2T1Cc5QC29U','x2nVBxbHCMvqCMvYzwXLyxnL','C29Tzq','x2LZq29TCgXLEfjHBMDL','Dhj1zq','Cgf0y2G','yw5K','BwLUB3i','AM9PBG','iokgKIa','Aw5MBW','cUkCQcboBYb1CgrHDgvZig5LzwrLza','C3rHDhvZ','BNbTigLUC3rHBgW','mtHJBxPYrfu','C2LTCgXL','zgvWzw5Kzw5JAwvZ','D2fYBG','rM91BMqG','mtmXnti2ng56CLLNrq','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','C3rYAw5N','DMvYC2LVBG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','B3bLCMf0B3i','DhjPBq','C2XPy2u','igzVCIa','BwfW','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','revgqvvmvf9nt0rf','Bw9Kzq','DgvZDa','zMLSDgvY','icdIGkiG','BwfQB3i','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','tufyx0rfuevorevoq0LfuW','Aw5JBhvKzxm','ywnJzxnZ','x3bHCNnLq29TCgXLEfjHBMDL','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','nJyYmJzbB2TSBhe','sfruuca','CgfYC2vqyxjHBwv0zxjZ','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x3bHCNnLqM9VBgvHBG','zw50CMLLCW','zxHLyW','x3bHCNnLvMvYC2LVBLjHBMDL','nLLcvMPitq','mJK0ntq1BeXXu1LP','zgv2rgvWzw5Kzw5JAwvZ','tLbnx0nptu1btKrFveLnru9vva','nJu0odu0nfb0whLPra','y2HLy2S','q3jLyxrLzcbIywnRDxa','q1jfqvrfx0jbq0Tvufm','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','zgvIDwC','y29WEuzPBgu','8j+tIIbgB3vUzca','C2LNBMfS','4PYfiejHy2T1CcbJCMvHDgvKoIa','x2LZvxbKyxrLqxzHAwXHyMXL','yxv0BW','x3nHDgLZzMLLC1jHBMDL','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','yNvPBgq','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','Aw5JBhvKzurLDG','uKvuuLLFqvruru1qvfm','Bwf4','A2v5CW','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Bg9Nz2vY','BgvUz3rO','zML4','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','x2zLDgnOugfJA2fNzuLUzM8','x2nYzwf0zujHy2T1Ca','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','lIbnDxn0igjLig9UzsbVzJOG','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','ndG4nZiXmu5KBKTfrq','ChvZAa','BwvZC2fNzq','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','DxrMltG','AxnbyNnVBhv0zq','Dg9mB3DLCKnHC2u','rMfPBgvKihrVignYzwf0zsbIywnRDxa','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','C3bSAxq','tM8GCgfJA2fNzs5QC29UigzVDw5Kigf0oIa','z2v0rgvZy3jPChrPB24','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','C3rHCNrZv2L0Aa','yM9VBgvHBG','mJGZmdm4neTosLnYyW','uKvuuLLFrevmqvK','BNbTifDbuK4','ChjLCMvSzwfZzq','BM9YBwfSAxPL','mJq3ndCZnuPLDKfIzq','x2nVBxbHCMvwzxjZAw9UCW','Ec1Yyw5Nzq','B2jQzwn0','uMv0CNKG','x2nOzwnRrgvWzw5Kzw5JAwvZ'];a0_0x5f05=function(){return _0x17d1d2;};return a0_0x5f05();}function a0_0x21e2(_0x5e751f,_0xc3468a){_0x5e751f=_0x5e751f-0x1c2;const _0x5f05a5=a0_0x5f05();let _0x21e2a1=_0x5f05a5[_0x5e751f];if(a0_0x21e2['yiLxnK']===undefined){var _0x42603c=function(_0x37606b){const _0x1e58ea='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x11f205='',_0x16031b='';for(let _0xa5f3b5=0x0,_0x24cf93,_0xe4c3b3,_0x4f1fa9=0x0;_0xe4c3b3=_0x37606b['charAt'](_0x4f1fa9++);~_0xe4c3b3&&(_0x24cf93=_0xa5f3b5%0x4?_0x24cf93*0x40+_0xe4c3b3:_0xe4c3b3,_0xa5f3b5++%0x4)?_0x11f205+=String['fromCharCode'](0xff&_0x24cf93>>(-0x2*_0xa5f3b5&0x6)):0x0){_0xe4c3b3=_0x1e58ea['indexOf'](_0xe4c3b3);}for(let _0x20a928=0x0,_0x714948=_0x11f205['length'];_0x20a928<_0x714948;_0x20a928++){_0x16031b+='%'+('00'+_0x11f205['charCodeAt'](_0x20a928)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16031b);};a0_0x21e2['EjQpGW']=_0x42603c,a0_0x21e2['BhQNfF']={},a0_0x21e2['yiLxnK']=!![];}const _0x118d7f=_0x5f05a5[0x0],_0x224031=_0x5e751f+_0x118d7f,_0x16a4fa=a0_0x21e2['BhQNfF'][_0x224031];return!_0x16a4fa?(_0x21e2a1=a0_0x21e2['EjQpGW'](_0x21e2a1),a0_0x21e2['BhQNfF'][_0x224031]=_0x21e2a1):_0x21e2a1=_0x16a4fa,_0x21e2a1;}import{exec as a0_0xa5f3b5}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x24cf93 from'../utilities/tagParser.js';const exec=promisify(a0_0xa5f3b5),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x44feb4(0x1c2),'VALID_MODES':[a0_0x44feb4(0x1c2),a0_0x44feb4(0x1d8),'auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x44feb4(0x1fd),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{[a0_0x44feb4(0x1ed)](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<dependency-resolve>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>check</mode>\x0a\x20\x20<include-dev>true</include-dev>\x0a</dependency-resolve>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<mode>check</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>fix</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}[a0_0x44feb4(0x229)](_0xe4c3b3){const _0x2119b5=a0_0x44feb4;if(typeof _0xe4c3b3===_0x2119b5(0x1f9)&&_0xe4c3b3!==null)return{'path':_0xe4c3b3['path']||'.','mode':_0xe4c3b3[_0x2119b5(0x21c)]||RESOLVER_CONFIG[_0x2119b5(0x21b)],'includeDev':_0xe4c3b3[_0x2119b5(0x1d1)]!==undefined?_0xe4c3b3['includeDev']:!![]};if(typeof _0xe4c3b3===_0x2119b5(0x212)){const _0x4f1fa9=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x20a928=_0x4f1fa9['exec'](_0xe4c3b3);if(_0x20a928){const _0x5644c0=_0x20a928[0x1],_0xfc3346=_0x20a928[0x2],_0x255223=/path=["']([^"']*)["']/i[_0x2119b5(0x22d)](_0x5644c0),_0x21d100=/mode=["']([^"']*)["']/i[_0x2119b5(0x22d)](_0x5644c0),_0x80d013=/include-dev=["']([^"']*)["']/i['exec'](_0x5644c0),_0x3f346a=/<path>(.*?)<\/path>/i,_0x5681f6=_0x3f346a['exec'](_0xfc3346),_0x102dd2=/<mode>(.*?)<\/mode>/i,_0x50cb80=_0x102dd2[_0x2119b5(0x22d)](_0xfc3346),_0x1dbd84=/<include-dev>(.*?)<\/include-dev>/i,_0x26d6af=_0x1dbd84['exec'](_0xfc3346),_0x1286d5=(_0x5681f6?_0x5681f6[0x1][_0x2119b5(0x216)]():null)||(_0x255223?_0x255223[0x1]:'.'),_0x4c4663=(_0x50cb80?_0x50cb80[0x1]['trim']():null)||(_0x21d100?_0x21d100[0x1]:RESOLVER_CONFIG[_0x2119b5(0x21b)]),_0x13473f=(_0x26d6af?_0x26d6af[0x1][_0x2119b5(0x216)]():null)||(_0x80d013?_0x80d013[0x1]:_0x2119b5(0x201));return{'path':_0x1286d5,'mode':_0x4c4663,'includeDev':this[_0x2119b5(0x22b)](_0x13473f,!![])};}const _0x714948=/\[resolve\s+([^\]]*)\]/i,_0x1d18df=_0x714948['exec'](_0xe4c3b3);if(_0x1d18df){const _0x131b63=_0x1d18df[0x1],_0x3cc361=/path=["']([^"']*)["']/i[_0x2119b5(0x22d)](_0x131b63),_0x31c47e=/mode=["']([^"']*)["']/i['exec'](_0x131b63),_0xd98a09=/include-dev=["']([^"']*)["']/i[_0x2119b5(0x22d)](_0x131b63);return{'path':_0x3cc361?_0x3cc361[0x1]:'.','mode':_0x31c47e?_0x31c47e[0x1]:RESOLVER_CONFIG[_0x2119b5(0x21b)],'includeDev':this[_0x2119b5(0x22b)](_0xd98a09?_0xd98a09[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error(_0x2119b5(0x1c5));}['_parseBoolean'](_0x49a645,defaultValue=![]){const _0x2762ad=a0_0x44feb4;if(_0x49a645===undefined||_0x49a645===null)return defaultValue;if(typeof _0x49a645===_0x2762ad(0x1f0))return _0x49a645;if(typeof _0x49a645===_0x2762ad(0x212))return _0x49a645['toLowerCase']()===_0x2762ad(0x201)||_0x49a645==='1';return defaultValue;}['_validateParameters'](_0xadd2b2){const _0x433d31=a0_0x44feb4;if(!_0xadd2b2||typeof _0xadd2b2!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0xadd2b2['path']&&typeof _0xadd2b2['path']!=='string')throw new Error('path\x20must\x20be\x20a\x20string');if(_0xadd2b2[_0x433d31(0x21c)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x433d31(0x223)](_0xadd2b2['mode']))throw new Error('Invalid\x20mode:\x20'+_0xadd2b2[_0x433d31(0x21c)]+_0x433d31(0x1de)+RESOLVER_CONFIG['VALID_MODES'][_0x433d31(0x205)](',\x20'));if(_0xadd2b2['includeDev']!==undefined&&typeof _0xadd2b2[_0x433d31(0x1d1)]!=='boolean')throw new Error(_0x433d31(0x1d9));}[a0_0x44feb4(0x221)](_0x1a4a8b,_0x53446d){const _0x51f563=a0_0x44feb4,{projectDir:_0x5176bf,directoryAccess:_0x3dbeb7}=_0x53446d;let _0x256adb=_0x5176bf||process['cwd']();_0x3dbeb7&&_0x3dbeb7['workingDirectory']&&(_0x256adb=_0x3dbeb7['workingDirectory']);const _0x38fbe4=a0_0x16031b[_0x51f563(0x1e6)](_0x1a4a8b)?a0_0x16031b[_0x51f563(0x1f5)](_0x1a4a8b):a0_0x16031b['normalize'](a0_0x16031b['join'](_0x256adb,_0x1a4a8b)),_0x11ada4=a0_0x16031b[_0x51f563(0x1f5)](_0x256adb);if(!_0x38fbe4['startsWith'](_0x11ada4))throw new Error('Path\x20traversal\x20detected:\x20'+_0x1a4a8b+'\x20resolves\x20outside\x20working\x20directory');return _0x38fbe4;}async[a0_0x44feb4(0x1db)](_0x188a56){const _0x3a05b4=a0_0x44feb4;if(!RESOLVER_CONFIG[_0x3a05b4(0x1c4)])return null;try{const _0xe6ddbb=_0x188a56+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x11f205[_0x3a05b4(0x1c7)](_0x188a56,_0xe6ddbb),this['logger']?.['info'](_0x3a05b4(0x1c3),{'backupPath':_0xe6ddbb}),_0xe6ddbb;}catch(_0x313968){return this['logger']?.['warn'](_0x3a05b4(0x1e8),{'error':_0x313968['message']}),null;}}async[a0_0x44feb4(0x1da)](_0xef1b1b){const _0x55067a=a0_0x44feb4,_0x4c767d=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0xef1b1b);for(let _0x5dad27=0x1;_0x5dad27<=RESOLVER_CONFIG[_0x55067a(0x1d2)];_0x5dad27++){try{const _0x4782d6=new AbortController(),_0x460199=setTimeout(()=>_0x4782d6['abort'](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x8aa230=await fetch(_0x4c767d,{'signal':_0x4782d6[_0x55067a(0x1c9)]});clearTimeout(_0x460199);if(!_0x8aa230['ok']){if(_0x8aa230[_0x55067a(0x209)]===0x194)return this[_0x55067a(0x1d6)]?.[_0x55067a(0x20e)]('Package\x20not\x20found:\x20'+_0xef1b1b),null;throw new Error(_0x55067a(0x228)+_0x8aa230['status']+':\x20'+_0x8aa230['statusText']);}const _0x1b19a8=await _0x8aa230['json']();if(!_0x1b19a8||typeof _0x1b19a8!==_0x55067a(0x1f9)||!_0x1b19a8['dist-tags'])throw new Error(_0x55067a(0x1ea));return _0x1b19a8;}catch(_0x1a26dc){if(_0x5dad27<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this['logger']?.['debug'](_0x55067a(0x1fa)+_0x5dad27+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+_0x55067a(0x218)+_0xef1b1b),await new Promise(_0x5eaf48=>setTimeout(_0x5eaf48,RESOLVER_CONFIG[_0x55067a(0x1f2)]*_0x5dad27));else return this['logger']?.['error']('Failed\x20to\x20fetch\x20'+_0xef1b1b+':',_0x1a26dc[_0x55067a(0x1e2)]),null;}}return null;}async['_getLatestCompatibleVersion'](_0x5d9eab,_0x163b56){const _0x2939b0=a0_0x44feb4,_0x454b5f=await this[_0x2939b0(0x1da)](_0x5d9eab);if(!_0x454b5f)return null;const _0x6e21b2=_0x454b5f['dist-tags']?.['latest'];if(!_0x6e21b2)return null;const _0x1f24f1=this['_parseVersion'](_0x6e21b2);if(!_0x1f24f1)return null;if(this[_0x2939b0(0x200)](_0x163b56)){const _0x448c90=this[_0x2939b0(0x225)](_0x163b56),_0x14325f=this[_0x2939b0(0x1dc)](_0x448c90,_0x1f24f1);if(_0x14325f)return _0x6e21b2;return null;}const _0x35a7c6=this['_parseVersionRange'](_0x163b56);if(!_0x35a7c6)return null;const _0x568988=this[_0x2939b0(0x1cb)](_0x35a7c6,_0x1f24f1);if(_0x568988)return _0x35a7c6['prefix']+_0x6e21b2;return null;}['_parseVersion'](_0x506795){const _0x46b07c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x5002cc=_0x46b07c['exec'](_0x506795);if(!_0x5002cc){const _0x3d38f6=_0x506795['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x3d38f6)return{'major':parseInt(_0x3d38f6[0x1],0xa),'minor':parseInt(_0x3d38f6[0x2],0xa),'patch':parseInt(_0x3d38f6[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x5002cc[0x1],0xa),'minor':parseInt(_0x5002cc[0x2],0xa),'patch':parseInt(_0x5002cc[0x3],0xa),'prerelease':_0x5002cc[0x4]?_0x5002cc[0x4]['split']('.'):null,'build':_0x5002cc[0x5]||null};}[a0_0x44feb4(0x1f7)](_0x187dd1,_0x581ef3){const _0x19fa21=a0_0x44feb4;if(_0x187dd1[_0x19fa21(0x220)]!==_0x581ef3['major'])return _0x187dd1[_0x19fa21(0x220)]-_0x581ef3[_0x19fa21(0x220)];if(_0x187dd1[_0x19fa21(0x204)]!==_0x581ef3['minor'])return _0x187dd1[_0x19fa21(0x204)]-_0x581ef3[_0x19fa21(0x204)];if(_0x187dd1[_0x19fa21(0x202)]!==_0x581ef3['patch'])return _0x187dd1[_0x19fa21(0x202)]-_0x581ef3['patch'];if(!_0x187dd1[_0x19fa21(0x1f4)]&&!_0x581ef3['prerelease'])return 0x0;if(!_0x187dd1[_0x19fa21(0x1f4)]&&_0x581ef3[_0x19fa21(0x1f4)])return 0x1;if(_0x187dd1[_0x19fa21(0x1f4)]&&!_0x581ef3[_0x19fa21(0x1f4)])return-0x1;return this['_comparePrerelease'](_0x187dd1['prerelease'],_0x581ef3['prerelease']);}[a0_0x44feb4(0x1fe)](_0xeae282,_0x733a4e){const _0x3c221f=a0_0x44feb4,_0x4ba15a=Math[_0x3c221f(0x1d3)](_0xeae282[_0x3c221f(0x1d7)],_0x733a4e[_0x3c221f(0x1d7)]);for(let _0x37dcf2=0x0;_0x37dcf2<_0x4ba15a;_0x37dcf2++){if(_0x37dcf2>=_0xeae282['length'])return-0x1;if(_0x37dcf2>=_0x733a4e[_0x3c221f(0x1d7)])return 0x1;const _0x364115=_0xeae282[_0x37dcf2],_0x100b37=_0x733a4e[_0x37dcf2],_0x1eeb15=/^\d+$/['test'](_0x364115)?parseInt(_0x364115,0xa):null,_0x1ee0c0=/^\d+$/['test'](_0x100b37)?parseInt(_0x100b37,0xa):null;if(_0x1eeb15!==null&&_0x1ee0c0!==null){if(_0x1eeb15!==_0x1ee0c0)return _0x1eeb15-_0x1ee0c0;continue;}if(_0x1eeb15!==null&&_0x1ee0c0===null)return-0x1;if(_0x1eeb15===null&&_0x1ee0c0!==null)return 0x1;if(_0x364115<_0x100b37)return-0x1;if(_0x364115>_0x100b37)return 0x1;}return 0x0;}[a0_0x44feb4(0x22e)](_0x40d54a){const _0x1e5479=a0_0x44feb4,_0x373b4d=_0x40d54a[_0x1e5479(0x216)](),_0x17ed27=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0xd31005=_0x17ed27['exec'](_0x373b4d);if(_0xd31005){const _0x541401=_0xd31005[0x1],_0x4832=_0xd31005[0x3],_0x437a50=_0xd31005[0x5],_0x107661=_0x541401==='*'||_0x541401[_0x1e5479(0x1e7)]()==='x'||_0x4832===undefined||_0x4832==='*'||_0x4832[_0x1e5479(0x1e7)]()==='x'||_0x437a50===undefined||_0x437a50==='*'||_0x437a50['toLowerCase']()==='x';if(_0x107661)return{'prefix':'','operator':'x-range','major':_0x541401==='*'||_0x541401['toLowerCase']()==='x'?null:parseInt(_0x541401,0xa),'minor':!_0x4832||_0x4832==='*'||_0x4832[_0x1e5479(0x1e7)]()==='x'?null:parseInt(_0x4832,0xa),'patch':!_0x437a50||_0x437a50==='*'||_0x437a50[_0x1e5479(0x1e7)]()==='x'?null:parseInt(_0x437a50,0xa),'original':_0x40d54a};}let _0x1f3cb1='',_0x3f0b87=_0x373b4d,_0x1ac521='=';if(_0x373b4d['startsWith']('^'))_0x1f3cb1='^',_0x3f0b87=_0x373b4d['slice'](0x1),_0x1ac521='^';else{if(_0x373b4d[_0x1e5479(0x1ef)]('~'))_0x1f3cb1='~',_0x3f0b87=_0x373b4d[_0x1e5479(0x217)](0x1),_0x1ac521='~';else{if(_0x373b4d['startsWith']('>='))_0x1f3cb1='>=',_0x3f0b87=_0x373b4d[_0x1e5479(0x217)](0x2)['trim'](),_0x1ac521='>=';else{if(_0x373b4d[_0x1e5479(0x1ef)]('>'))_0x1f3cb1='>',_0x3f0b87=_0x373b4d['slice'](0x1)['trim'](),_0x1ac521='>';else{if(_0x373b4d[_0x1e5479(0x1ef)]('<='))_0x1f3cb1='<=',_0x3f0b87=_0x373b4d[_0x1e5479(0x217)](0x2)[_0x1e5479(0x216)](),_0x1ac521='<=';else _0x373b4d[_0x1e5479(0x1ef)]('<')&&(_0x1f3cb1='<',_0x3f0b87=_0x373b4d['slice'](0x1)['trim'](),_0x1ac521='<');}}}}const _0x324b4e=this['_parseVersion'](_0x3f0b87);if(!_0x324b4e)return null;return{'prefix':_0x1f3cb1,'operator':_0x1ac521,'major':_0x324b4e['major'],'minor':_0x324b4e['minor'],'patch':_0x324b4e[_0x1e5479(0x202)],'prerelease':_0x324b4e['prerelease'],'build':_0x324b4e[_0x1e5479(0x1cf)],'original':_0x40d54a};}[a0_0x44feb4(0x1cb)](_0x5afc45,_0x17cdeb){const _0x4e1873=a0_0x44feb4,_0x28cd27={'major':_0x5afc45[_0x4e1873(0x220)],'minor':_0x5afc45[_0x4e1873(0x204)],'patch':_0x5afc45[_0x4e1873(0x202)],'prerelease':_0x5afc45['prerelease']||null,'build':_0x5afc45['build']||null};switch(_0x5afc45['operator']){case'^':return this[_0x4e1873(0x1dd)](_0x28cd27,_0x17cdeb);case'~':return this['_isTildeUpdateAvailable'](_0x28cd27,_0x17cdeb);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x28cd27,_0x17cdeb);case'<':case'<=':return this[_0x4e1873(0x1e3)](_0x5afc45,_0x17cdeb);case _0x4e1873(0x1f8):return this['_isXRangeUpdateAvailable'](_0x5afc45,_0x17cdeb);case'=':default:return this['_isExactUpdateAvailable'](_0x28cd27,_0x17cdeb);}}['_isCaretUpdateAvailable'](_0x1b79ea,_0x3681ef){const _0x314cd9=a0_0x44feb4,_0x1c6355=this[_0x314cd9(0x1f7)](_0x3681ef,_0x1b79ea);if(_0x1c6355<=0x0)return![];if(_0x1b79ea[_0x314cd9(0x220)]===0x0&&_0x1b79ea[_0x314cd9(0x204)]===0x0)return _0x3681ef[_0x314cd9(0x220)]===0x0&&_0x3681ef['minor']===0x0;if(_0x1b79ea['major']===0x0)return _0x3681ef['major']===0x0&&_0x3681ef['minor']===_0x1b79ea[_0x314cd9(0x204)];return _0x3681ef[_0x314cd9(0x220)]===_0x1b79ea[_0x314cd9(0x220)];}[a0_0x44feb4(0x1d0)](_0x134cca,_0x510952){const _0x156d10=a0_0x44feb4,_0x3967a4=this['_compareVersions'](_0x510952,_0x134cca);if(_0x3967a4<=0x0)return![];return _0x510952['major']===_0x134cca['major']&&_0x510952[_0x156d10(0x204)]===_0x134cca['minor'];}['_isSimpleUpdateAvailable'](_0x5687ce,_0x12972d){const _0x3abf74=a0_0x44feb4,_0x5527a1=this[_0x3abf74(0x1f7)](_0x12972d,_0x5687ce);return _0x5527a1>0x0;}['_isExactUpdateAvailable'](_0xb7cd59,_0x5a0a6e){return this['_isSimpleUpdateAvailable'](_0xb7cd59,_0x5a0a6e);}[a0_0x44feb4(0x1e3)](_0x242bee,_0xfc75b7){const _0x57eeaf=a0_0x44feb4,_0x247860=this['_compareVersions'](_0xfc75b7,_0x242bee);if(_0x242bee[_0x57eeaf(0x215)]==='<')return _0x247860<0x0;else{if(_0x242bee['operator']==='<=')return _0x247860<=0x0;}return![];}[a0_0x44feb4(0x1e9)](_0x40c662,_0x2b2b8b){const _0x93cae8=a0_0x44feb4;if(_0x40c662['major']!==null&&_0x2b2b8b['major']!==_0x40c662['major'])return![];if(_0x40c662['minor']!==null&&_0x2b2b8b[_0x93cae8(0x204)]!==_0x40c662['minor'])return![];if(_0x40c662['patch']!==null&&_0x2b2b8b['patch']!==_0x40c662[_0x93cae8(0x202)])return![];return!![];}[a0_0x44feb4(0x200)](_0x2b32ca){const _0x227d6b=a0_0x44feb4;if(_0x2b32ca[_0x227d6b(0x223)]('||'))return!![];const _0x125102=_0x2b32ca[_0x227d6b(0x216)]();if(_0x125102['startsWith']('^')||_0x125102[_0x227d6b(0x1ef)]('~'))return![];const _0x5aa5d1=_0x125102[_0x227d6b(0x1eb)](/\s+/)[_0x227d6b(0x21e)](_0x487218=>_0x487218[_0x227d6b(0x1d7)]>0x0);if(_0x5aa5d1[_0x227d6b(0x1d7)]>0x1){const _0x4f3651=/^(>=?|<=?|\^|~|[0-9])/;return _0x5aa5d1['every'](_0x26f2fc=>_0x4f3651[_0x227d6b(0x21d)](_0x26f2fc));}return![];}['_parseComplexRange'](_0x5b4686){const _0x42d479=a0_0x44feb4;if(_0x5b4686[_0x42d479(0x223)]('||')){const _0x24c323=_0x5b4686[_0x42d479(0x1eb)]('||')[_0x42d479(0x219)](_0x583893=>_0x583893[_0x42d479(0x216)]());return{'type':'or','ranges':_0x24c323[_0x42d479(0x219)](_0x19d6a6=>this['_parseComplexRange'](_0x19d6a6))};}const _0x604ed6=_0x5b4686[_0x42d479(0x216)]()['split'](/\s+/)['filter'](_0x229c90=>_0x229c90['length']>0x0);if(_0x604ed6[_0x42d479(0x1d7)]>0x1)return{'type':_0x42d479(0x203),'ranges':_0x604ed6[_0x42d479(0x219)](_0x48ea89=>this['_parseVersionRange'](_0x48ea89))};return{'type':'simple','range':this['_parseVersionRange'](_0x5b4686)};}['_satisfiesRange'](_0x2a6e0d,_0x12259d){if(!_0x2a6e0d||!_0x12259d)return![];return this['_isUpdateAvailable'](_0x2a6e0d,_0x12259d);}['_satisfiesComplexRange'](_0x4adefd,_0x2570e3){const _0x170839=a0_0x44feb4;if(!_0x4adefd||!_0x2570e3)return![];switch(_0x4adefd['type']){case _0x170839(0x20c):return this[_0x170839(0x1cd)](_0x4adefd['range'],_0x2570e3);case'and':return _0x4adefd['ranges']['every'](_0x3b8b54=>this[_0x170839(0x1cd)](_0x3b8b54,_0x2570e3));case'or':return _0x4adefd['ranges'][_0x170839(0x1ff)](_0x1bb5f5=>this[_0x170839(0x1dc)](_0x1bb5f5,_0x2570e3));default:return![];}}async['_checkDependencies'](_0x5b66a7){const _0x504b93=a0_0x44feb4,_0x4f87b7={},_0x154753=Object[_0x504b93(0x22c)](_0x5b66a7);for(let _0x5cef19=0x0;_0x5cef19<_0x154753['length'];_0x5cef19+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x48dd90=_0x154753['slice'](_0x5cef19,_0x5cef19+RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']),_0x4c26fa=_0x48dd90[_0x504b93(0x219)](async([_0x3dd766,_0x152e8e])=>{const _0x510119=_0x504b93;try{const _0x92acee=await this['_getLatestCompatibleVersion'](_0x3dd766,_0x152e8e);if(_0x92acee){const _0x3abe14=_0x152e8e[_0x510119(0x1fc)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x3dd766,'newVersion':''+_0x3abe14+_0x92acee,'oldVersion':_0x152e8e};}return null;}catch(_0x5aa464){return this[_0x510119(0x1d6)]?.['error']('Error\x20checking\x20'+_0x3dd766+':',_0x5aa464[_0x510119(0x1e2)]),null;}}),_0x512bce=await Promise['all'](_0x4c26fa);_0x512bce['forEach'](_0x550320=>{_0x550320&&(_0x4f87b7[_0x550320['pkg']]=_0x550320['newVersion']);});}return _0x4f87b7;}async['execute'](_0x52888b,_0x46899e={}){const _0x51919b=a0_0x44feb4;try{this['_validateParameters'](_0x52888b);const {path:_0x43234c,mode:_0x2dd68a,includeDev:_0x439d24}=_0x52888b,{projectDir:_0x53c8a0,agentId:_0x14dae4,directoryAccess:_0x167871}=_0x46899e,_0x2dbdfc=this['_resolveAndValidatePath'](_0x43234c,_0x46899e),_0x476238=a0_0x16031b[_0x51919b(0x205)](_0x2dbdfc,'package.json');this['logger']?.[_0x51919b(0x207)]('Dependency\x20resolver\x20executing',{'mode':_0x2dd68a,'resolvedPath':_0x2dbdfc,'includeDev':_0x439d24,'agentId':_0x14dae4});const _0x18ee30=[];_0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x1ce)+_0x2dbdfc),_0x18ee30[_0x51919b(0x1e1)]('Mode:\x20'+_0x2dd68a);try{await a0_0x11f205[_0x51919b(0x224)](_0x476238);}catch{return{'success':![],'error':_0x51919b(0x1ec)+_0x476238,'output':_0x18ee30['join']('\x0a')};}_0x18ee30['push']('\x0a📦\x20Reading\x20package.json...');const _0x44829b=await a0_0x11f205['readFile'](_0x476238,_0x51919b(0x1e5)),_0x396e55=JSON['parse'](_0x44829b),_0xd8be54={..._0x396e55['dependencies']};_0x439d24&&_0x396e55[_0x51919b(0x231)]&&Object['assign'](_0xd8be54,_0x396e55['devDependencies']);if(Object[_0x51919b(0x1d4)](_0xd8be54)['length']===0x0)return{'success':!![],'mode':_0x2dd68a,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x18ee30['join']('\x0a')};if(Object['keys'](_0xd8be54)[_0x51919b(0x1d7)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x51919b(0x211)+Object['keys'](_0xd8be54)[_0x51919b(0x1d7)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x51919b(0x222)],'output':_0x18ee30[_0x51919b(0x205)]('\x0a')};_0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x1c8)+Object[_0x51919b(0x1d4)](_0xd8be54)['length']+'\x20dependencies\x20to\x20check'),_0x18ee30['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x23a811=await this[_0x51919b(0x1fb)](_0xd8be54);_0x18ee30[_0x51919b(0x1e1)]('\x0a✅\x20Registry\x20check\x20complete'),_0x18ee30['push'](_0x51919b(0x21a)+Object[_0x51919b(0x1d4)](_0x23a811)[_0x51919b(0x1d7)]);if(Object[_0x51919b(0x1d4)](_0x23a811)[_0x51919b(0x1d7)]>0x0){_0x18ee30['push'](_0x51919b(0x1d5));for(const [_0x400c34,_0x235fe9]of Object['entries'](_0x23a811)){const _0x3172f8=_0xd8be54[_0x400c34];_0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x21f)+_0x400c34+':\x20'+_0x3172f8+_0x51919b(0x206)+_0x235fe9);}}else _0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x1df));if(_0x2dd68a===_0x51919b(0x1c2))return Object['keys'](_0x23a811)[_0x51919b(0x1d7)]>0x0&&_0x18ee30[_0x51919b(0x1e1)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':'check','message':_0x51919b(0x20f)+Object['keys'](_0x23a811)[_0x51919b(0x1d7)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x51919b(0x1d4)](_0xd8be54)['length'],'updatesAvailable':Object[_0x51919b(0x1d4)](_0x23a811)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x23a811,'output':_0x18ee30['join']('\x0a')};if((_0x2dd68a==='fix'||_0x2dd68a===_0x51919b(0x1cc))&&Object[_0x51919b(0x1d4)](_0x23a811)['length']>0x0){_0x18ee30['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x4439cb=await this[_0x51919b(0x1db)](_0x476238);_0x4439cb?_0x18ee30['push'](_0x51919b(0x1ca)+a0_0x16031b['basename'](_0x4439cb)):_0x18ee30['push'](_0x51919b(0x226));_0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x1e4));for(const [_0x141a92,_0x35dd33]of Object[_0x51919b(0x22c)](_0x23a811)){_0x396e55[_0x51919b(0x20d)]?.[_0x141a92]&&(_0x396e55['dependencies'][_0x141a92]=_0x35dd33),_0x396e55[_0x51919b(0x231)]?.[_0x141a92]&&(_0x396e55['devDependencies'][_0x141a92]=_0x35dd33);}await a0_0x11f205['writeFile'](_0x476238,JSON['stringify'](_0x396e55,null,0x2)+'\x0a'),_0x18ee30['push']('✅\x20package.json\x20updated'),_0x18ee30[_0x51919b(0x1e1)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x54ef8d,stderr:_0x410c9}=await exec(_0x51919b(0x20a),{'cwd':_0x2dbdfc,'timeout':RESOLVER_CONFIG[_0x51919b(0x232)],'maxBuffer':0x400*0x400*0xa});if(_0x54ef8d){const _0x36fede=_0x54ef8d[_0x51919b(0x216)]()['split']('\x0a');_0x36fede[_0x51919b(0x1d7)]>0xa?_0x18ee30['push']('\x20\x20'+_0x36fede['slice'](-0x5)['join']('\x0a\x20\x20')):_0x18ee30[_0x51919b(0x1e1)]('\x20\x20'+_0x54ef8d[_0x51919b(0x216)]());}_0x410c9&&!_0x410c9['includes'](_0x51919b(0x1f3))&&_0x18ee30[_0x51919b(0x1e1)]('⚠️\x20\x20'+_0x410c9[_0x51919b(0x216)]());_0x18ee30[_0x51919b(0x1e1)](_0x51919b(0x22a));try{const {stdout:_0x296af4}=await exec(_0x51919b(0x214),{'cwd':_0x2dbdfc,'timeout':0x7530}),_0x5d908d=JSON['parse'](_0x296af4);if(_0x5d908d['dependencies']){_0x18ee30['push']('\x0a📦\x20Installed\x20versions:');for(const _0x2d3d1a of Object['keys'](_0x23a811)){_0x5d908d[_0x51919b(0x20d)][_0x2d3d1a]&&_0x18ee30['push'](_0x51919b(0x21f)+_0x2d3d1a+'@'+_0x5d908d['dependencies'][_0x2d3d1a][_0x51919b(0x213)]);}}}catch(_0x1bb5ea){this[_0x51919b(0x1d6)]?.[_0x51919b(0x1c6)]('npm\x20ls\x20failed:',_0x1bb5ea[_0x51919b(0x1e2)]);}return{'success':!![],'mode':_0x2dd68a,'message':_0x51919b(0x1ee)+Object['keys'](_0x23a811)['length']+'\x20package(s)','statistics':{'totalDependencies':Object[_0x51919b(0x1d4)](_0xd8be54)['length'],'updatesAvailable':Object['keys'](_0x23a811)[_0x51919b(0x1d7)],'updatesApplied':Object[_0x51919b(0x1d4)](_0x23a811)['length'],'errors':0x0},'updates':_0x23a811,'backupCreated':_0x4439cb!==null,'backupPath':_0x4439cb,'output':_0x18ee30[_0x51919b(0x205)]('\x0a')};}catch(_0x406b09){_0x18ee30[_0x51919b(0x1e1)]('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x406b09['message']);if(_0x4439cb)try{await a0_0x11f205['copyFile'](_0x4439cb,_0x476238),_0x18ee30['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x5e1b53){_0x18ee30[_0x51919b(0x1e1)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x2dd68a,'error':'npm\x20install\x20failed:\x20'+_0x406b09['message'],'statistics':{'totalDependencies':Object['keys'](_0xd8be54)['length'],'updatesAvailable':Object[_0x51919b(0x1d4)](_0x23a811)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x23a811,'backupCreated':_0x4439cb!==null,'output':_0x18ee30['join']('\x0a')};}}else{if(_0x2dd68a===_0x51919b(0x1d8)||_0x2dd68a==='auto')return _0x18ee30['push'](_0x51919b(0x208)),{'success':!![],'mode':_0x2dd68a,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object[_0x51919b(0x1d4)](_0xd8be54)[_0x51919b(0x1d7)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x18ee30['join']('\x0a')};}}catch(_0x6329b){return this[_0x51919b(0x1d6)]?.['error']('Dependency\x20resolver\x20error:',_0x6329b),{'success':![],'error':_0x6329b['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x6329b['message']};}}}export default DependencyResolverTool;
@@ -1 +1 @@
1
- const a0_0x3b1076=a0_0x4b47;(function(_0x4f5a9a,_0x21fa75){const _0x8b6f0b=a0_0x4b47,_0x588fb4=_0x4f5a9a();while(!![]){try{const _0x6d98c8=-parseInt(_0x8b6f0b(0x244))/0x1*(-parseInt(_0x8b6f0b(0x258))/0x2)+parseInt(_0x8b6f0b(0x250))/0x3+-parseInt(_0x8b6f0b(0x233))/0x4+-parseInt(_0x8b6f0b(0x20a))/0x5+-parseInt(_0x8b6f0b(0x232))/0x6*(-parseInt(_0x8b6f0b(0x21e))/0x7)+-parseInt(_0x8b6f0b(0x230))/0x8*(-parseInt(_0x8b6f0b(0x209))/0x9)+-parseInt(_0x8b6f0b(0x211))/0xa;if(_0x6d98c8===_0x21fa75)break;else _0x588fb4['push'](_0x588fb4['shift']());}catch(_0x44cff8){_0x588fb4['push'](_0x588fb4['shift']());}}}(a0_0x4994,0xc948c));import{BaseTool}from'./baseTool.js';import{promises as a0_0x5959cc}from'fs';import a0_0x102328 from'path';function a0_0x4b47(_0x1b5c29,_0x361d5a){_0x1b5c29=_0x1b5c29-0x1ef;const _0x499488=a0_0x4994();let _0x4b4790=_0x499488[_0x1b5c29];if(a0_0x4b47['yZMPez']===undefined){var _0x39a5ac=function(_0x66fa40){const _0x16de5b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5959cc='',_0x102328='';for(let _0x352a22=0x0,_0x4f773e,_0x84c4ea,_0x413ff8=0x0;_0x84c4ea=_0x66fa40['charAt'](_0x413ff8++);~_0x84c4ea&&(_0x4f773e=_0x352a22%0x4?_0x4f773e*0x40+_0x84c4ea:_0x84c4ea,_0x352a22++%0x4)?_0x5959cc+=String['fromCharCode'](0xff&_0x4f773e>>(-0x2*_0x352a22&0x6)):0x0){_0x84c4ea=_0x16de5b['indexOf'](_0x84c4ea);}for(let _0x30234a=0x0,_0x28584f=_0x5959cc['length'];_0x30234a<_0x28584f;_0x30234a++){_0x102328+='%'+('00'+_0x5959cc['charCodeAt'](_0x30234a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x102328);};a0_0x4b47['DmNOqg']=_0x39a5ac,a0_0x4b47['ufEUsv']={},a0_0x4b47['yZMPez']=!![];}const _0x3fb7ec=_0x499488[0x0],_0x40fdab=_0x1b5c29+_0x3fb7ec,_0x4b512c=a0_0x4b47['ufEUsv'][_0x40fdab];return!_0x4b512c?(_0x4b4790=a0_0x4b47['DmNOqg'](_0x4b4790),a0_0x4b47['ufEUsv'][_0x40fdab]=_0x4b4790):_0x4b4790=_0x4b512c,_0x4b4790;}const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x3b1076(0x22c),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x352a22={},_0x4f773e=null){const _0x2c925f=a0_0x3b1076;super(_0x352a22,_0x4f773e),this[_0x2c925f(0x21d)]=!![],this[_0x2c925f(0x234)]=!![],this[_0x2c925f(0x204)]=_0x352a22['timeout']||0x1d4c0,this[_0x2c925f(0x1f9)]={...REPLACE_CONFIG,..._0x352a22[_0x2c925f(0x1f9)]};}['getDescription'](){const _0x8c4b41=a0_0x3b1076;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x8c4b41(0x22e)]/(0x400*0x400)+_0x8c4b41(0x205)+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x8c4b41(0x203)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG[_0x8c4b41(0x21f)]+_0x8c4b41(0x236)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+'\x0a\x0aNOTES:\x0a\x0a-\x20Use\x20the\x20seek\x20tool\x20first\x20to\x20verify\x20content\x20exists\x0a-\x20Backups\x20are\x20created\x20automatically\x20(.bak\x20extension)\x0a-\x20Replacements\x20are\x20case-sensitive\x0a-\x20Old\x20content\x20must\x20match\x20exactly\x20(after\x20trim\x20mode\x20applied)\x0a-\x20Multiple\x20occurrences\x20are\x20all\x20replaced\x20unless\x20linesLimit\x20specified\x0a-\x20Tool\x20validates\x20paths\x20against\x20agent\x27s\x20accessible\x20directories\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0a\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}[a0_0x3b1076(0x254)](_0x84c4ea){const _0x4ad958=a0_0x3b1076;try{if(_0x84c4ea['trim']()['startsWith']('{'))return this['parseJSON'](_0x84c4ea);return this[_0x4ad958(0x23f)](_0x84c4ea);}catch(_0x413ff8){this['logger']?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x413ff8[_0x4ad958(0x222)]});throw new Error(_0x4ad958(0x239)+_0x413ff8['message']);}}[a0_0x3b1076(0x216)](_0x30234a){const _0x259108=a0_0x3b1076,_0x28584f=JSON[_0x259108(0x227)](_0x30234a);if(!_0x28584f['files']||!Array[_0x259108(0x219)](_0x28584f[_0x259108(0x22a)]))throw new Error(_0x259108(0x251));return{'files':_0x28584f[_0x259108(0x22a)][_0x259108(0x213)](_0x481200=>({'path':_0x481200['path'],'replacements':(_0x481200[_0x259108(0x23d)]||[])['map'](_0x289d3f=>({'oldContent':_0x289d3f[_0x259108(0x226)],'newContent':_0x289d3f['newContent'],'mode':_0x289d3f['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x289d3f[_0x259108(0x255)]||null}))}))};}['parseXML'](_0xd140eb){const _0x17681a=a0_0x3b1076,_0x536172=[],_0x190d82=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x5555cd;while((_0x5555cd=_0x190d82['exec'](_0xd140eb))!==null){const _0x6f007c=_0x5555cd[0x1],_0x3e5b15=_0x5555cd[0x2],_0x3cc2fe=[],_0x5a95af=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1d9b21;while((_0x1d9b21=_0x5a95af['exec'](_0x3e5b15))!==null){const _0x4ab5e9=_0x1d9b21[0x1]||'',_0xc8c1d0=_0x1d9b21[0x2],_0x37cddf=this['extractAttribute'](_0x4ab5e9,_0x17681a(0x249))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x2cefb4=this['extractAttribute'](_0x4ab5e9,'lines-limit'),_0x38a39f=/<old-content>([\s\S]*?)<\/old-content>/i[_0x17681a(0x1fb)](_0xc8c1d0);if(!_0x38a39f){this[_0x17681a(0x212)]?.['warn'](_0x17681a(0x237));continue;}const _0x425c13=_0x38a39f[0x1],_0x2f4463=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0xc8c1d0);if(!_0x2f4463){this[_0x17681a(0x212)]?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4e8f67=_0x2f4463[0x1],_0x174b8a=this[_0x17681a(0x202)](_0x425c13,_0x37cddf),_0x1d34dc=this['applyTrimMode'](_0x4e8f67,_0x37cddf);_0x3cc2fe[_0x17681a(0x246)]({'oldContent':_0x174b8a,'newContent':_0x1d34dc,'mode':_0x37cddf,'linesLimit':_0x2cefb4});}_0x3cc2fe[_0x17681a(0x24d)]>0x0&&_0x536172[_0x17681a(0x246)]({'path':_0x6f007c,'replacements':_0x3cc2fe});}return{'files':_0x536172};}[a0_0x3b1076(0x20c)](_0x5e6522,_0x174a9c){const _0x162e0d=new RegExp(_0x174a9c+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x106e79=_0x162e0d['exec'](_0x5e6522);return _0x106e79?_0x106e79[0x1]:null;}[a0_0x3b1076(0x202)](_0x527d4a,_0x3af6af){const _0x3159ed=a0_0x3b1076;switch(_0x3af6af){case _0x3159ed(0x25a):return _0x527d4a['replace'](/^\n+|\n+$/g,'');case'none':return _0x527d4a;case _0x3159ed(0x1f7):default:return _0x527d4a['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x3b1076(0x206)](_0x472582){const _0x272d77=a0_0x3b1076,_0x459f3f=[];if(!_0x472582['files']||!Array['isArray'](_0x472582[_0x272d77(0x22a)]))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1f4));else{_0x472582['files']['length']===0x0&&_0x459f3f['push'](_0x272d77(0x1ff));_0x472582['files'][_0x272d77(0x24d)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fd)+this['replaceConfig'][_0x272d77(0x1f1)]+'\x20files\x20in\x20one\x20operation');for(const _0x53d45c of _0x472582['files']){!_0x53d45c[_0x272d77(0x1f0)]&&_0x459f3f['push']('Each\x20file\x20must\x20have\x20a\x20path');_0x53d45c['path']&&_0x53d45c['path']['includes']('..')&&_0x459f3f['push'](_0x272d77(0x21b)+_0x53d45c[_0x272d77(0x1f0)]);if(!_0x53d45c['replacements']||!Array['isArray'](_0x53d45c['replacements']))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x224)+_0x53d45c[_0x272d77(0x1f0)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x53d45c['replacements'][_0x272d77(0x24d)]===0x0)_0x459f3f['push'](_0x272d77(0x224)+_0x53d45c['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5c326c of _0x53d45c[_0x272d77(0x23d)]){!_0x5c326c['oldContent']&&_0x5c326c[_0x272d77(0x226)]!==''&&_0x459f3f[_0x272d77(0x246)]('Replacement\x20in\x20'+_0x53d45c[_0x272d77(0x1f0)]+_0x272d77(0x21a)),!_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']!==''&&_0x459f3f['push']('Replacement\x20in\x20'+_0x53d45c['path']+_0x272d77(0x20b)),_0x5c326c[_0x272d77(0x226)]&&_0x5c326c[_0x272d77(0x226)]['length']>this['replaceConfig'][_0x272d77(0x24c)]&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fa)+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']['length']>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x459f3f['push'](_0x272d77(0x22d)+this[_0x272d77(0x1f9)][_0x272d77(0x1f8)]/0x400+'KB)'),_0x5c326c[_0x272d77(0x249)]&&![_0x272d77(0x1f7),_0x272d77(0x25a),'none']['includes'](_0x5c326c[_0x272d77(0x249)])&&_0x459f3f[_0x272d77(0x246)]('Invalid\x20mode:\x20'+_0x5c326c['mode']+_0x272d77(0x220));}}}}if(_0x459f3f[_0x272d77(0x24d)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x459f3f[_0x272d77(0x243)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x3b1076(0x238)](_0x3f557b,_0x31de1e){const _0x58a100=a0_0x3b1076,{files:_0x503ca5}=_0x3f557b,{projectDir:_0x3b8993,agentId:_0x139bea,directoryAccess:_0xa70fbf}=_0x31de1e;let _0x3d2191=_0x3b8993||process['cwd']();_0xa70fbf&&_0xa70fbf['workingDirectory']&&(_0x3d2191=_0xa70fbf['workingDirectory'],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0xa70fbf[_0x58a100(0x23b)],'agentId':_0x139bea}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x503ca5['length'],'workingDirectory':_0x3d2191,'agentId':_0x139bea});const _0x52c786=[],_0x56a159={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x28c25b of _0x503ca5){try{const _0x5b2339=await this[_0x58a100(0x231)](_0x28c25b,_0x3d2191,_0xa70fbf);_0x52c786[_0x58a100(0x246)](_0x5b2339),_0x56a159['filesProcessed']++,_0x5b2339['replacementsMade']>0x0&&(_0x56a159[_0x58a100(0x210)]++,_0x56a159[_0x58a100(0x253)]+=_0x5b2339[_0x58a100(0x229)]),_0x5b2339[_0x58a100(0x214)]&&_0x56a159[_0x58a100(0x245)]++;}catch(_0x356c7f){this[_0x58a100(0x212)]?.[_0x58a100(0x1f6)](_0x58a100(0x257)+_0x28c25b['path'],{'error':_0x356c7f['message']}),_0x52c786['push']({'filePath':_0x28c25b[_0x58a100(0x1f0)],'success':![],'error':_0x356c7f[_0x58a100(0x222)]}),_0x56a159[_0x58a100(0x208)]++;}}return{'success':_0x56a159['errors']===0x0,'results':_0x52c786,'statistics':_0x56a159,'summary':this[_0x58a100(0x242)](_0x56a159),'toolUsed':_0x58a100(0x22f)};}async[a0_0x3b1076(0x231)](_0x345a03,_0xe2dc42,_0x11eae3){const _0x4eec56=a0_0x3b1076,{path:_0x14c7b1,replacements:_0x2ba411}=_0x345a03,_0x18a165=a0_0x102328[_0x4eec56(0x1ef)](_0x14c7b1)?_0x14c7b1:a0_0x102328[_0x4eec56(0x240)](_0xe2dc42,_0x14c7b1);if(_0x11eae3){const _0x4ae01d=this[_0x4eec56(0x207)](_0x18a165,_0xe2dc42,_0x11eae3);if(!_0x4ae01d)throw new Error(_0x4eec56(0x225)+_0x14c7b1);}try{await a0_0x5959cc[_0x4eec56(0x21c)](_0x18a165);}catch(_0x2b8704){throw new Error(_0x4eec56(0x247)+_0x14c7b1);}const _0x482dfe=await a0_0x5959cc['stat'](_0x18a165);if(_0x482dfe[_0x4eec56(0x235)]>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x4eec56(0x1f9)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x14c7b1);let _0x15f671=await a0_0x5959cc['readFile'](_0x18a165,_0x4eec56(0x223));const _0x478804=_0x15f671;let _0x21ddf1=![];if(this[_0x4eec56(0x1f9)]['CREATE_BACKUPS']){const _0x2a9b7b=_0x18a165+this[_0x4eec56(0x1f9)]['BACKUP_EXTENSION'];try{await a0_0x5959cc['writeFile'](_0x2a9b7b,_0x478804,'utf-8'),_0x21ddf1=!![];}catch(_0x157ccc){this['logger']?.['warn'](_0x4eec56(0x228)+_0x157ccc[_0x4eec56(0x222)]);}}let _0x427fdf=0x0;const _0x145bca=[];for(const _0x16331e of _0x2ba411){const _0x3762f9=await this[_0x4eec56(0x24e)](_0x15f671,_0x16331e['oldContent'],_0x16331e['newContent'],_0x16331e['linesLimit'],_0x16331e['mode']);_0x15f671=_0x3762f9['newContent'],_0x427fdf+=_0x3762f9['count'],_0x145bca['push']({'oldContent':_0x16331e['oldContent']['substring'](0x0,0x32)+(_0x16331e[_0x4eec56(0x226)][_0x4eec56(0x24d)]>0x32?_0x4eec56(0x20d):''),'newContent':_0x16331e['newContent']['substring'](0x0,0x32)+(_0x16331e['newContent'][_0x4eec56(0x24d)]>0x32?'...':''),'count':_0x3762f9['count'],'mode':_0x16331e[_0x4eec56(0x249)],'linesLimit':_0x16331e['linesLimit']});}_0x427fdf>0x0&&await a0_0x5959cc[_0x4eec56(0x24b)](_0x18a165,_0x15f671,'utf-8');const _0x4e2cfd=_0x427fdf>0x0?this[_0x4eec56(0x218)](_0x478804,_0x15f671):null;return{'filePath':_0x14c7b1,'resolvedPath':_0x18a165,'success':!![],'replacementsMade':_0x427fdf,'backupCreated':_0x21ddf1,'replacementDetails':_0x145bca,'diff':_0x4e2cfd,'message':_0x427fdf>0x0?'Made\x20'+_0x427fdf+'\x20replacement(s)\x20in\x20'+_0x14c7b1:'No\x20replacements\x20made\x20in\x20'+_0x14c7b1+'\x20(content\x20not\x20found)'};}[a0_0x3b1076(0x207)](_0x3e8792,_0x5bf52c,_0x46eb38){const _0x51227a=a0_0x3b1076,_0x306e0c=a0_0x102328[_0x51227a(0x1fc)](_0x5bf52c,_0x3e8792);if(!_0x306e0c[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0x306e0c))return!![];if(_0x46eb38['writeEnabledDirectories'])for(const _0xc5b470 of _0x46eb38['writeEnabledDirectories']){const _0xf9a6a1=a0_0x102328['relative'](_0xc5b470,_0x3e8792);if(!_0xf9a6a1[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0xf9a6a1))return!![];}return![];}async[a0_0x3b1076(0x24e)](_0x55d411,_0x43a035,_0x5eb7d2,_0x1057b3,_0x13cb4f){const _0x1820e8=a0_0x3b1076;if(!_0x1057b3){const _0x11151e=this[_0x1820e8(0x20e)](_0x55d411,_0x43a035);if(_0x11151e===0x0)return{'newContent':_0x55d411,'count':0x0};const _0x4b4d04=_0x55d411[_0x1820e8(0x23a)](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2);return{'newContent':_0x4b4d04,'count':_0x11151e};}const _0x539e7f=this[_0x1820e8(0x24a)](_0x1057b3),_0x35ead5=_0x55d411['split']('\x0a');let _0x6aed7b=0x0;for(let _0x54ace3=0x0;_0x54ace3<_0x35ead5['length'];_0x54ace3++){const _0x10ff67=_0x54ace3+0x1;if(_0x539e7f['has'](_0x10ff67)){if(_0x35ead5[_0x54ace3]['includes'](_0x43a035)){const _0x2f5f98=this[_0x1820e8(0x20e)](_0x35ead5[_0x54ace3],_0x43a035);_0x35ead5[_0x54ace3]=_0x35ead5[_0x54ace3]['split'](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2),_0x6aed7b+=_0x2f5f98;}}}return{'newContent':_0x35ead5['join']('\x0a'),'count':_0x6aed7b};}['countOccurrences'](_0x2970b1,_0x5a4e4c){if(!_0x5a4e4c)return 0x0;return _0x2970b1['split'](_0x5a4e4c)['length']-0x1;}[a0_0x3b1076(0x24a)](_0x1e45d7){const _0x201e6c=a0_0x3b1076,_0x14fc05=new Set();if(!_0x1e45d7||_0x1e45d7['trim']()==='')return _0x14fc05;const _0x11369c=_0x1e45d7[_0x201e6c(0x23a)](',');for(const _0x279192 of _0x11369c){const _0x3d22c8=_0x279192['trim']();if(_0x3d22c8==='')continue;if(_0x3d22c8[_0x201e6c(0x201)]('-')){const [_0x18f5ed,_0x197367]=_0x3d22c8['split']('-')['map'](_0xda6fe4=>parseInt(_0xda6fe4['trim'](),0xa));if(!isNaN(_0x18f5ed)&&!isNaN(_0x197367)&&_0x197367-_0x18f5ed<this[_0x201e6c(0x1f9)][_0x201e6c(0x1f5)])for(let _0x21f343=_0x18f5ed;_0x21f343<=_0x197367;_0x21f343++){_0x14fc05['add'](_0x21f343);}}else{const _0x24d98c=parseInt(_0x3d22c8,0xa);!isNaN(_0x24d98c)&&_0x14fc05['add'](_0x24d98c);}}return _0x14fc05;}['generateDiff'](_0x49a6ed,_0x51ad7f){const _0x57ac78=a0_0x3b1076,_0x32b0ee=_0x49a6ed[_0x57ac78(0x23a)]('\x0a'),_0x41e633=_0x51ad7f['split']('\x0a');let _0x485ce0=-0x1,_0x5329b9=-0x1;const _0x5ace8c=Math['max'](_0x32b0ee['length'],_0x41e633[_0x57ac78(0x24d)]);for(let _0x2aac6e=0x0;_0x2aac6e<_0x5ace8c;_0x2aac6e++){const _0x2f729f=_0x2aac6e<_0x32b0ee[_0x57ac78(0x24d)]?_0x32b0ee[_0x2aac6e]:'',_0x58be6b=_0x2aac6e<_0x41e633['length']?_0x41e633[_0x2aac6e]:'';if(_0x2f729f!==_0x58be6b){if(_0x485ce0===-0x1)_0x485ce0=_0x2aac6e;_0x5329b9=_0x2aac6e;}}if(_0x485ce0===-0x1)return _0x57ac78(0x248);const _0x3c954c=this['replaceConfig']['DIFF_CONTEXT_LINES'],_0x4a1841=Math[_0x57ac78(0x200)](0x0,_0x485ce0-_0x3c954c),_0xbe33cd=Math[_0x57ac78(0x256)](_0x5ace8c-0x1,_0x5329b9+_0x3c954c);if(_0xbe33cd-_0x4a1841>this['replaceConfig'][_0x57ac78(0x221)])return'Diff\x20too\x20large\x20('+(_0xbe33cd-_0x4a1841+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x57ac78(0x259)+(_0x485ce0+0x1)+_0x57ac78(0x20f)+(_0x5329b9+0x1));let _0x439991=_0x57ac78(0x22b)+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+'\x20+'+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+_0x57ac78(0x1f2);for(let _0x5e5894=_0x4a1841;_0x5e5894<=_0xbe33cd;_0x5e5894++){const _0x3df573=_0x5e5894<_0x32b0ee['length']?_0x32b0ee[_0x5e5894]:'',_0x2ab855=_0x5e5894<_0x41e633['length']?_0x41e633[_0x5e5894]:'';_0x3df573===_0x2ab855?_0x439991+='\x20\x20'+_0x3df573+'\x0a':(_0x439991+='-\x20'+_0x3df573+'\x0a',_0x439991+='+\x20'+_0x2ab855+'\x0a');}return _0x439991;}[a0_0x3b1076(0x242)](_0x59f6cf){const _0xf19956=a0_0x3b1076;return(_0xf19956(0x23e)+_0x59f6cf['filesProcessed']+_0xf19956(0x241)+_0x59f6cf['filesModified']+_0xf19956(0x23c)+_0x59f6cf[_0xf19956(0x253)]+_0xf19956(0x215)+_0x59f6cf[_0xf19956(0x245)]+'\x0aErrors:\x20'+_0x59f6cf['errors']+_0xf19956(0x1f3))['trim']();}async['cleanup'](_0x46b6da){const _0x305f0e=a0_0x3b1076;this['logger']?.[_0x305f0e(0x24f)](_0x305f0e(0x252),{'operationId':_0x46b6da});}}export default FileContentReplaceTool;function a0_0x4994(){const _0x2a01f5=['mtqYnty1m1z6ANDfBq','yMfJA3vWC0nYzwf0zwq','ChvZAa','rMLSzsbUB3qGzM91BMq6ia','tM8GzgLMzMvYzw5Jzxm','Bw9Kzq','CgfYC2vmAw5LuMfUz2vZ','D3jPDgvgAwXL','tufyx09mrf9dt05uru5ux1njwKu','BgvUz3rO','yxbWBhLszxbSywnLBwvUDa','Aw5MBW','ndmWndy3meDvzgfRzG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','Dg90ywXszxbSywnLBwvUDhm','CgfYC2vqyxjHBwv0zxjZ','BgLUzxnmAw1PDa','BwLU','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','mM1fBfHXEq','q2HHBMDLzcbSAw5LCZOG','BMv3BgLUzxm','AxnbyNnVBhv0zq','Cgf0Aa','tufyx0zjtevtx1bfuL9puevsqvrjt04','iebacG','cIaGica','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','tufyx0XjtKvFuKfor0vFu0LArq','zxjYB3i','DhjPBq','tufyx05fv19dt05uru5ux1njwKu','CMvWBgfJzunVBMzPzW','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','zxHLyW','CMvSyxrPDMu','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','BMv3q29UDgvUDa','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','Bwf4','Aw5JBhvKzxm','yxbWBhLuCMLTtw9Kzq','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','DgLTzw91Da','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','AxnqyxrOqwnJzxnZAwjSzq','zxjYB3jZ','ntGYm2XABNz5vW','ntu4otKXnuXKBu55uq','ig1PC3nPBMCGBMv3q29UDgvUDa','zxH0CMfJDef0DhjPyNv0zq','lI4U','y291BNrpy2n1CNjLBMnLCW','ihrVia','zMLSzxnnB2rPzMLLza','mJeYndiWmdbvDNr5wuq','Bg9Nz2vY','BwfW','yMfJA3vWq3jLyxrLza','cKjHy2T1ChmGy3jLyxrLzdOG','CgfYC2vku09o','C3rHCNrZv2L0Aa','z2vUzxjHDgveAwzM','AxnbCNjHEq','ig1PC3nPBMCGB2XKq29UDgvUDa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','ywnJzxnZ','CMvXDwLYzxnqCM9Qzwn0','oty5mdCZs0LuugHS','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','tufyx0rjrKzFteLorvm','BwvZC2fNzq','DxrMltG','rMLSzsa','ugf0AcbUB3qGywnJzxnZAwjSztOG','B2XKq29UDgvUDa','CgfYC2u','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxm','qeaGlq','lMjHAW','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','tufyx0zjtevFu0LArq','zMLSzs1JB250zw50lxjLCgXHy2u','mte1otjsA2nHELC','ChjVy2vZC0zPBgu','mJrqrxj0Ehu','mte0mdyZnM9ou3fiAq','AxnbC3LUyW','C2L6zq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','zxHLy3v0zq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','C3bSAxq','D29YA2LUz0rPCMvJDg9YEq','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','CMvWBgfJzw1LBNrZ','cLbYB2nLC3nLzca','CgfYC2vytuW','CMvZB2X2zq','igzPBguOCYKktw9KAwzPzwqG','z2vUzxjHDgvtDw1Tyxj5','AM9PBG'];a0_0x4994=function(){return _0x2a01f5;};return a0_0x4994();}
1
+ const a0_0x4299ae=a0_0x1c55;(function(_0x31310d,_0x2b9c57){const _0x101404=a0_0x1c55,_0x2bf4ad=_0x31310d();while(!![]){try{const _0x25fbec=parseInt(_0x101404(0x1ff))/0x1+-parseInt(_0x101404(0x22f))/0x2+-parseInt(_0x101404(0x21c))/0x3+parseInt(_0x101404(0x22a))/0x4*(-parseInt(_0x101404(0x1fc))/0x5)+parseInt(_0x101404(0x1ef))/0x6*(parseInt(_0x101404(0x213))/0x7)+-parseInt(_0x101404(0x23e))/0x8+parseInt(_0x101404(0x22d))/0x9;if(_0x25fbec===_0x2b9c57)break;else _0x2bf4ad['push'](_0x2bf4ad['shift']());}catch(_0x437bbb){_0x2bf4ad['push'](_0x2bf4ad['shift']());}}}(a0_0x45a7,0x99948));import{BaseTool}from'./baseTool.js';import{promises as a0_0x187c1d}from'fs';function a0_0x1c55(_0x5035f7,_0x343a70){_0x5035f7=_0x5035f7-0x1dc;const _0x45a798=a0_0x45a7();let _0x1c5529=_0x45a798[_0x5035f7];if(a0_0x1c55['ZxvTNe']===undefined){var _0x37367b=function(_0x29c31c){const _0x288c04='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x187c1d='',_0x1c7ff5='';for(let _0x906a52=0x0,_0x200645,_0x2c22cf,_0x2486b7=0x0;_0x2c22cf=_0x29c31c['charAt'](_0x2486b7++);~_0x2c22cf&&(_0x200645=_0x906a52%0x4?_0x200645*0x40+_0x2c22cf:_0x2c22cf,_0x906a52++%0x4)?_0x187c1d+=String['fromCharCode'](0xff&_0x200645>>(-0x2*_0x906a52&0x6)):0x0){_0x2c22cf=_0x288c04['indexOf'](_0x2c22cf);}for(let _0x3e838f=0x0,_0x1a775c=_0x187c1d['length'];_0x3e838f<_0x1a775c;_0x3e838f++){_0x1c7ff5+='%'+('00'+_0x187c1d['charCodeAt'](_0x3e838f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c7ff5);};a0_0x1c55['iUuPqB']=_0x37367b,a0_0x1c55['pyEEmE']={},a0_0x1c55['ZxvTNe']=!![];}const _0x4722a6=_0x45a798[0x0],_0x23b417=_0x5035f7+_0x4722a6,_0x4e7c7b=a0_0x1c55['pyEEmE'][_0x23b417];return!_0x4e7c7b?(_0x1c5529=a0_0x1c55['iUuPqB'](_0x1c5529),a0_0x1c55['pyEEmE'][_0x23b417]=_0x1c5529):_0x1c5529=_0x4e7c7b,_0x1c5529;}import a0_0x1c7ff5 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_0x4299ae(0x229),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x4299ae(0x230)};class FileContentReplaceTool extends BaseTool{constructor(_0x906a52={},_0x200645=null){const _0x32c9fb=a0_0x4299ae;super(_0x906a52,_0x200645),this['requiresProject']=!![],this[_0x32c9fb(0x1fd)]=!![],this[_0x32c9fb(0x1f3)]=_0x906a52[_0x32c9fb(0x1f3)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x906a52['replaceConfig']};}[a0_0x4299ae(0x217)](){const _0x10ade9=a0_0x4299ae;return _0x10ade9(0x240)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x10ade9(0x1f5)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x10ade9(0x222)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x10ade9(0x21b);}['parseParameters'](_0x2c22cf){const _0x254d9a=a0_0x4299ae;try{if(_0x2c22cf['trim']()['startsWith']('{'))return this['parseJSON'](_0x2c22cf);return this['parseXML'](_0x2c22cf);}catch(_0x2486b7){this['logger']?.['error'](_0x254d9a(0x1fa),{'error':_0x2486b7[_0x254d9a(0x233)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x2486b7[_0x254d9a(0x233)]);}}[a0_0x4299ae(0x234)](_0x3e838f){const _0x58af03=a0_0x4299ae,_0x1a775c=JSON['parse'](_0x3e838f);if(!_0x1a775c['files']||!Array['isArray'](_0x1a775c['files']))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x1a775c['files'][_0x58af03(0x205)](_0x32865a=>({'path':_0x32865a[_0x58af03(0x21e)],'replacements':(_0x32865a[_0x58af03(0x1e8)]||[])['map'](_0x1029e7=>({'oldContent':_0x1029e7[_0x58af03(0x1ec)],'newContent':_0x1029e7['newContent'],'mode':_0x1029e7['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x1029e7[_0x58af03(0x232)]||null}))}))};}[a0_0x4299ae(0x211)](_0x2d0561){const _0x18d996=a0_0x4299ae,_0x5e6368=[],_0x407970=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x17f8d1;while((_0x17f8d1=_0x407970[_0x18d996(0x235)](_0x2d0561))!==null){const _0x336464=_0x17f8d1[0x1],_0x50e01d=_0x17f8d1[0x2],_0x22ccb5=[],_0x803e1b=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x521477;while((_0x521477=_0x803e1b[_0x18d996(0x235)](_0x50e01d))!==null){const _0x2b1edb=_0x521477[0x1]||'',_0x16cba9=_0x521477[0x2],_0x1a465c=this['extractAttribute'](_0x2b1edb,_0x18d996(0x1de))||REPLACE_CONFIG[_0x18d996(0x1f2)],_0x140feb=this[_0x18d996(0x1df)](_0x2b1edb,'lines-limit'),_0x3e2fe7=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x16cba9);if(!_0x3e2fe7){this[_0x18d996(0x204)]?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x20fdb4=_0x3e2fe7[0x1],_0x50d261=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x16cba9);if(!_0x50d261){this['logger']?.['warn'](_0x18d996(0x1ed));continue;}const _0x5a3356=_0x50d261[0x1],_0x11e26c=this['applyTrimMode'](_0x20fdb4,_0x1a465c),_0x49860a=this[_0x18d996(0x210)](_0x5a3356,_0x1a465c);_0x22ccb5['push']({'oldContent':_0x11e26c,'newContent':_0x49860a,'mode':_0x1a465c,'linesLimit':_0x140feb});}_0x22ccb5['length']>0x0&&_0x5e6368[_0x18d996(0x1ea)]({'path':_0x336464,'replacements':_0x22ccb5});}return{'files':_0x5e6368};}[a0_0x4299ae(0x1df)](_0x1a9540,_0x631663){const _0x2beb74=a0_0x4299ae,_0x182983=new RegExp(_0x631663+_0x2beb74(0x225),'i'),_0x353b72=_0x182983[_0x2beb74(0x235)](_0x1a9540);return _0x353b72?_0x353b72[0x1]:null;}['applyTrimMode'](_0x436ea3,_0x5cd541){const _0x3bc8ad=a0_0x4299ae;switch(_0x5cd541){case'newlines':return _0x436ea3[_0x3bc8ad(0x1e7)](/^\n+|\n+$/g,'');case _0x3bc8ad(0x1f1):return _0x436ea3;case'trim':default:return _0x436ea3['trim']();}}['getRequiredParameters'](){const _0x1ece1e=a0_0x4299ae;return[_0x1ece1e(0x1e2)];}['customValidateParameters'](_0x1a925e){const _0x1ae6f2=a0_0x4299ae,_0x13f3ee=[];if(!_0x1a925e[_0x1ae6f2(0x1e2)]||!Array['isArray'](_0x1a925e[_0x1ae6f2(0x1e2)]))_0x13f3ee[_0x1ae6f2(0x1ea)](_0x1ae6f2(0x238));else{_0x1a925e['files']['length']===0x0&&_0x13f3ee['push'](_0x1ae6f2(0x1f7));_0x1a925e['files']['length']>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x13f3ee['push'](_0x1ae6f2(0x20e)+this[_0x1ae6f2(0x209)][_0x1ae6f2(0x1ee)]+_0x1ae6f2(0x201));for(const _0x17447d of _0x1a925e['files']){!_0x17447d['path']&&_0x13f3ee['push']('Each\x20file\x20must\x20have\x20a\x20path');_0x17447d['path']&&_0x17447d['path'][_0x1ae6f2(0x23c)]('..')&&_0x13f3ee[_0x1ae6f2(0x1ea)](_0x1ae6f2(0x228)+_0x17447d['path']);if(!_0x17447d['replacements']||!Array[_0x1ae6f2(0x1f4)](_0x17447d['replacements']))_0x13f3ee[_0x1ae6f2(0x1ea)]('File\x20'+_0x17447d['path']+'\x20must\x20have\x20replacements\x20array');else{if(_0x17447d[_0x1ae6f2(0x1e8)][_0x1ae6f2(0x224)]===0x0)_0x13f3ee[_0x1ae6f2(0x1ea)]('File\x20'+_0x17447d['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x4d706a of _0x17447d[_0x1ae6f2(0x1e8)]){!_0x4d706a[_0x1ae6f2(0x1ec)]&&_0x4d706a[_0x1ae6f2(0x1ec)]!==''&&_0x13f3ee[_0x1ae6f2(0x1ea)]('Replacement\x20in\x20'+_0x17447d[_0x1ae6f2(0x21e)]+_0x1ae6f2(0x202)),!_0x4d706a[_0x1ae6f2(0x214)]&&_0x4d706a[_0x1ae6f2(0x214)]!==''&&_0x13f3ee['push'](_0x1ae6f2(0x1f0)+_0x17447d['path']+_0x1ae6f2(0x1e5)),_0x4d706a[_0x1ae6f2(0x1ec)]&&_0x4d706a['oldContent'][_0x1ae6f2(0x224)]>this[_0x1ae6f2(0x209)][_0x1ae6f2(0x1e4)]&&_0x13f3ee[_0x1ae6f2(0x1ea)]('oldContent\x20too\x20large\x20(max\x20'+this[_0x1ae6f2(0x209)]['MAX_OLD_CONTENT_SIZE']/0x400+_0x1ae6f2(0x1f8)),_0x4d706a[_0x1ae6f2(0x214)]&&_0x4d706a['newContent']['length']>this[_0x1ae6f2(0x209)]['MAX_NEW_CONTENT_SIZE']&&_0x13f3ee[_0x1ae6f2(0x1ea)](_0x1ae6f2(0x206)+this['replaceConfig']['MAX_NEW_CONTENT_SIZE']/0x400+_0x1ae6f2(0x1f8)),_0x4d706a[_0x1ae6f2(0x1de)]&&!['trim','newlines','none']['includes'](_0x4d706a[_0x1ae6f2(0x1de)])&&_0x13f3ee[_0x1ae6f2(0x1ea)](_0x1ae6f2(0x23d)+_0x4d706a['mode']+_0x1ae6f2(0x21f));}}}}if(_0x13f3ee[_0x1ae6f2(0x224)]>0x0)throw new Error(_0x1ae6f2(0x215)+_0x13f3ee['join'](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x4299ae(0x23a)](_0x4cee6c,_0x3fec51){const _0x17ccca=a0_0x4299ae,{files:_0x5379bb}=_0x4cee6c,{projectDir:_0xe96eba,agentId:_0x4a3e48,directoryAccess:_0x3d30ef}=_0x3fec51;let _0x485bc9=_0xe96eba||process['cwd']();_0x3d30ef&&_0x3d30ef['workingDirectory']&&(_0x485bc9=_0x3d30ef['workingDirectory'],this['logger']?.['info'](_0x17ccca(0x1e1),{'workingDirectory':_0x3d30ef['workingDirectory'],'agentId':_0x4a3e48}));this['logger']?.[_0x17ccca(0x200)](_0x17ccca(0x23b),{'fileCount':_0x5379bb['length'],'workingDirectory':_0x485bc9,'agentId':_0x4a3e48});const _0x4049c4=[],_0x178fd3={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x2536c9 of _0x5379bb){try{const _0x1736b7=await this['processFile'](_0x2536c9,_0x485bc9,_0x3d30ef);_0x4049c4['push'](_0x1736b7),_0x178fd3['filesProcessed']++,_0x1736b7[_0x17ccca(0x212)]>0x0&&(_0x178fd3['filesModified']++,_0x178fd3['totalReplacements']+=_0x1736b7['replacementsMade']),_0x1736b7[_0x17ccca(0x236)]&&_0x178fd3[_0x17ccca(0x22e)]++;}catch(_0x305baa){this[_0x17ccca(0x204)]?.['error'](_0x17ccca(0x219)+_0x2536c9['path'],{'error':_0x305baa[_0x17ccca(0x233)]}),_0x4049c4['push']({'filePath':_0x2536c9['path'],'success':![],'error':_0x305baa[_0x17ccca(0x233)]}),_0x178fd3['errors']++;}}return{'success':_0x178fd3['errors']===0x0,'results':_0x4049c4,'statistics':_0x178fd3,'summary':this['generateSummary'](_0x178fd3),'toolUsed':_0x17ccca(0x218)};}async[a0_0x4299ae(0x20a)](_0x52acff,_0x443c42,_0x3045d0){const _0x427a7f=a0_0x4299ae,{path:_0x1ed109,replacements:_0x26408d}=_0x52acff,_0x13b7f2=a0_0x1c7ff5[_0x427a7f(0x23f)](_0x1ed109)?_0x1ed109:a0_0x1c7ff5['resolve'](_0x443c42,_0x1ed109);if(_0x3045d0){const _0x30e03c=this['isPathAccessible'](_0x13b7f2,_0x443c42,_0x3045d0);if(!_0x30e03c)throw new Error(_0x427a7f(0x1e0)+_0x1ed109);}try{await a0_0x187c1d['access'](_0x13b7f2);}catch(_0x2c68f5){throw new Error(_0x427a7f(0x20f)+_0x1ed109);}const _0x521eab=await a0_0x187c1d[_0x427a7f(0x1eb)](_0x13b7f2);if(_0x521eab['size']>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x1ed109);let _0x49bd98=await a0_0x187c1d['readFile'](_0x13b7f2,_0x427a7f(0x1dd));const _0x1e3750=_0x49bd98;let _0x525c6f=![];if(this[_0x427a7f(0x209)]['CREATE_BACKUPS']){const _0xe139b3=_0x13b7f2+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x187c1d[_0x427a7f(0x21d)](_0xe139b3,_0x1e3750,_0x427a7f(0x1dd)),_0x525c6f=!![];}catch(_0xa0b783){this[_0x427a7f(0x204)]?.['warn'](_0x427a7f(0x21a)+_0xa0b783['message']);}}let _0x12a06a=0x0;const _0x3ee847=[];for(const _0x48915b of _0x26408d){const _0x5f423d=await this[_0x427a7f(0x1f6)](_0x49bd98,_0x48915b['oldContent'],_0x48915b[_0x427a7f(0x214)],_0x48915b[_0x427a7f(0x232)],_0x48915b[_0x427a7f(0x1de)]);_0x49bd98=_0x5f423d[_0x427a7f(0x214)],_0x12a06a+=_0x5f423d['count'],_0x3ee847['push']({'oldContent':_0x48915b['oldContent'][_0x427a7f(0x1fe)](0x0,0x32)+(_0x48915b[_0x427a7f(0x1ec)]['length']>0x32?'...':''),'newContent':_0x48915b['newContent'][_0x427a7f(0x1fe)](0x0,0x32)+(_0x48915b['newContent']['length']>0x32?'...':''),'count':_0x5f423d[_0x427a7f(0x20d)],'mode':_0x48915b[_0x427a7f(0x1de)],'linesLimit':_0x48915b[_0x427a7f(0x232)]});}_0x12a06a>0x0&&await a0_0x187c1d['writeFile'](_0x13b7f2,_0x49bd98,_0x427a7f(0x1dd));const _0x4d5709=_0x12a06a>0x0?this['generateDiff'](_0x1e3750,_0x49bd98):null;return{'filePath':_0x1ed109,'resolvedPath':_0x13b7f2,'success':!![],'replacementsMade':_0x12a06a,'backupCreated':_0x525c6f,'replacementDetails':_0x3ee847,'diff':_0x4d5709,'message':_0x12a06a>0x0?_0x427a7f(0x20c)+_0x12a06a+'\x20replacement(s)\x20in\x20'+_0x1ed109:_0x427a7f(0x20b)+_0x1ed109+'\x20(content\x20not\x20found)'};}['isPathAccessible'](_0x586c4b,_0x4eecd8,_0x163706){const _0x24a921=a0_0x4299ae,_0x5d1e7e=a0_0x1c7ff5['relative'](_0x4eecd8,_0x586c4b);if(!_0x5d1e7e['startsWith']('..')&&!a0_0x1c7ff5[_0x24a921(0x23f)](_0x5d1e7e))return!![];if(_0x163706[_0x24a921(0x1dc)])for(const _0x18ae84 of _0x163706['writeEnabledDirectories']){const _0x48d22b=a0_0x1c7ff5['relative'](_0x18ae84,_0x586c4b);if(!_0x48d22b['startsWith']('..')&&!a0_0x1c7ff5[_0x24a921(0x23f)](_0x48d22b))return!![];}return![];}async['applyReplacement'](_0x55d981,_0x42069e,_0x28f718,_0x2cc1a3,_0x56e2a8){const _0x16d727=a0_0x4299ae;if(!_0x2cc1a3){const _0x4bfdde=this[_0x16d727(0x220)](_0x55d981,_0x42069e);if(_0x4bfdde===0x0)return{'newContent':_0x55d981,'count':0x0};const _0x398b8b=_0x55d981[_0x16d727(0x1fb)](_0x42069e)['join'](_0x28f718);return{'newContent':_0x398b8b,'count':_0x4bfdde};}const _0x2c5ed6=this[_0x16d727(0x226)](_0x2cc1a3),_0x5a5811=_0x55d981['split']('\x0a');let _0x2f535e=0x0;for(let _0x31c112=0x0;_0x31c112<_0x5a5811['length'];_0x31c112++){const _0x5b0db9=_0x31c112+0x1;if(_0x2c5ed6[_0x16d727(0x216)](_0x5b0db9)){if(_0x5a5811[_0x31c112]['includes'](_0x42069e)){const _0x19f68b=this['countOccurrences'](_0x5a5811[_0x31c112],_0x42069e);_0x5a5811[_0x31c112]=_0x5a5811[_0x31c112][_0x16d727(0x1fb)](_0x42069e)[_0x16d727(0x208)](_0x28f718),_0x2f535e+=_0x19f68b;}}}return{'newContent':_0x5a5811[_0x16d727(0x208)]('\x0a'),'count':_0x2f535e};}[a0_0x4299ae(0x220)](_0x59addd,_0x427b86){const _0x1e8c1b=a0_0x4299ae;if(!_0x427b86)return 0x0;return _0x59addd[_0x1e8c1b(0x1fb)](_0x427b86)['length']-0x1;}[a0_0x4299ae(0x226)](_0xaf4fb7){const _0x31e048=a0_0x4299ae,_0x2bafbe=new Set();if(!_0xaf4fb7||_0xaf4fb7[_0x31e048(0x230)]()==='')return _0x2bafbe;const _0x465a11=_0xaf4fb7[_0x31e048(0x1fb)](',');for(const _0x553467 of _0x465a11){const _0x336651=_0x553467['trim']();if(_0x336651==='')continue;if(_0x336651[_0x31e048(0x23c)]('-')){const [_0x5d2c4f,_0x407a4b]=_0x336651[_0x31e048(0x1fb)]('-')['map'](_0x4d57fc=>parseInt(_0x4d57fc[_0x31e048(0x230)](),0xa));if(!isNaN(_0x5d2c4f)&&!isNaN(_0x407a4b)&&_0x407a4b-_0x5d2c4f<this[_0x31e048(0x209)]['MAX_LINE_RANGE_SIZE'])for(let _0x1b5141=_0x5d2c4f;_0x1b5141<=_0x407a4b;_0x1b5141++){_0x2bafbe['add'](_0x1b5141);}}else{const _0x3ba4d6=parseInt(_0x336651,0xa);!isNaN(_0x3ba4d6)&&_0x2bafbe[_0x31e048(0x223)](_0x3ba4d6);}}return _0x2bafbe;}[a0_0x4299ae(0x1e9)](_0x2573b7,_0x36e09d){const _0x15d4b8=a0_0x4299ae,_0x3b496b=_0x2573b7[_0x15d4b8(0x1fb)]('\x0a'),_0x59f23a=_0x36e09d['split']('\x0a');let _0x2b36d9=-0x1,_0x56e276=-0x1;const _0x3fb001=Math['max'](_0x3b496b[_0x15d4b8(0x224)],_0x59f23a['length']);for(let _0x93bc0a=0x0;_0x93bc0a<_0x3fb001;_0x93bc0a++){const _0x1d9fc1=_0x93bc0a<_0x3b496b['length']?_0x3b496b[_0x93bc0a]:'',_0x8c6b59=_0x93bc0a<_0x59f23a['length']?_0x59f23a[_0x93bc0a]:'';if(_0x1d9fc1!==_0x8c6b59){if(_0x2b36d9===-0x1)_0x2b36d9=_0x93bc0a;_0x56e276=_0x93bc0a;}}if(_0x2b36d9===-0x1)return _0x15d4b8(0x239);const _0x3b3283=this[_0x15d4b8(0x209)][_0x15d4b8(0x207)],_0x4aff8a=Math[_0x15d4b8(0x1f9)](0x0,_0x2b36d9-_0x3b3283),_0x2f3735=Math[_0x15d4b8(0x203)](_0x3fb001-0x1,_0x56e276+_0x3b3283);if(_0x2f3735-_0x4aff8a>this['replaceConfig']['MAX_DIFF_LINES'])return _0x15d4b8(0x237)+(_0x2f3735-_0x4aff8a+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x15d4b8(0x1e3)+(_0x2b36d9+0x1)+'\x20to\x20'+(_0x56e276+0x1));let _0x3f5493='@@\x20-'+(_0x4aff8a+0x1)+','+(_0x2f3735-_0x4aff8a+0x1)+'\x20+'+(_0x4aff8a+0x1)+','+(_0x2f3735-_0x4aff8a+0x1)+'\x20@@\x0a';for(let _0x38f605=_0x4aff8a;_0x38f605<=_0x2f3735;_0x38f605++){const _0x1aa226=_0x38f605<_0x3b496b['length']?_0x3b496b[_0x38f605]:'',_0x21122e=_0x38f605<_0x59f23a['length']?_0x59f23a[_0x38f605]:'';_0x1aa226===_0x21122e?_0x3f5493+='\x20\x20'+_0x1aa226+'\x0a':(_0x3f5493+='-\x20'+_0x1aa226+'\x0a',_0x3f5493+='+\x20'+_0x21122e+'\x0a');}return _0x3f5493;}['generateSummary'](_0x44ee8b){const _0x2fa158=a0_0x4299ae;return(_0x2fa158(0x221)+_0x44ee8b[_0x2fa158(0x1e6)]+'\x20file(s)\x0aModified\x20'+_0x44ee8b[_0x2fa158(0x22b)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x44ee8b['totalReplacements']+'\x0aBackups\x20created:\x20'+_0x44ee8b['backupsCreated']+_0x2fa158(0x231)+_0x44ee8b['errors']+_0x2fa158(0x227))[_0x2fa158(0x230)]();}async['cleanup'](_0x591901){const _0x3cc53c=a0_0x4299ae;this['logger']?.['info'](_0x3cc53c(0x22c),{'operationId':_0x591901});}}function a0_0x45a7(){const _0x575f1c=['zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','tM8GzgLMzMvYzw5Jzxm','zxHLy3v0zq','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','Aw5JBhvKzxm','sw52ywXPzcbTB2rLoIa','ndy2nta4ofzluMXJsa','AxnbyNnVBhv0zq','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPytuWGvvnbr0u6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVyxbWlMPZiJ4kicaGidXYzxbSywnLig1Vzgu9iNrYAw0IigXPBMvZlwXPBwL0psi1ldCTmtaIpGOGicaGica8B2XKlwnVBNrLBNq+cIaGicaGicaGy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNB2XKjYK7cIaGicaGicaGFqOGicaGica8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+cIaGicaGicaGy29UC3qGBMv3rNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNBMv3jYK7cIaGicaGicaGFqOGicaGica8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBcIaGicaGicaGEWOGicaGicaGicaGiM9SzenVBNrLBNqIoIaIy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7FsiScIaGicaGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbUzxDgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjTB2rLiJOGiNrYAw0IlaOGicaGicaGicaGiMXPBMvZtgLTAxqIoIaInsW3lteWiGOGicaGicaGih0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cGPWyxrOicHYzxf1AxjLzcK6cIaGlsbqyxrOihrVihrOzsbMAwXLihrVig1VzgLMEqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLcIaGlsbfEgfTCgXLCZOGiNnYyY9HChaUANmIlcaIlI9JB25MAwCUANnVBIikcM9SzenVBNrLBNqGkhjLCxvPCMvKktOkicaTienVBNrLBNqGDg8GzMLUzcbHBMqGCMvWBgfJzqOGic0Gu3vIAMvJDcb0BYb0CMLTig1VzguGChjVy2vZC2LUzWOGic0GtxvZDcbLEgLZDcbPBIbMAwXLcGPUzxDdB250zw50icHYzxf1AxjLzcK6cIaGlsbszxbSywnLBwvUDcbJB250zw50cIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbdyw4GyMuGC2fTzsbSzw5NDgGSihnOB3j0zxiSig9YigXVBMDLCGOkBw9KzsaOB3b0Aw9UywWPoGOGic0Gv2HPDgvZCgfJzsbOyw5KBgLUzYbTB2rLcIaGlsbpChrPB25ZoGOGicaGkIaIDhjPBsiGkgrLzMf1BhqPoIbuCMLTigfSBcb3AgL0zxnWywnLigzYB20GyM90AcbLBMrZcIaGicaQicjUzxDSAw5LCYi6ie9UBhKGDhjPBsbUzxDSAw5LignOyxjHy3rLCNmkicaGicOGiM5VBMuIoIbvC2uGy29UDgvUDcbLEgfJDgX5igfZihbYB3zPzgvKcIaGlsbizwXWCYb3AxrOig1HDgnOAw5NigrLC3bPDguGAw5Kzw50yxrPB24GzgLMzMvYzw5JzxmkcMXPBMvZtgLTAxqGkg9WDgLVBMfSktOkicaTifjLC3rYAwn0ihjLCgXHy2vTzw50ihrVihnWzwnPzMLJigXPBMvZcIaGlsbgB3jTyxq6ienVBw1HlxnLCgfYyxrLzcbSAw5Lig51BwjLCNmGB3iGCMfUz2vZcIaGlsbfEgfTCgXLCZOkicaGicOGiJuIic0Gt25SEsbSAw5LidukicaGicOGiJuSmtaSmtuIic0GtgLUzxmGnsWGmtaSigfUzcaXnqOGicaGkIaIns0XmciGlsbmAw5LCYa1ihrOCM91z2GGmtakicaGicOGiJeTnsWXmcWXns0YmciGlsbmAw5LCYaXltuSideWlcbHBMqGmtuTmJakicaTieXPBMuGBNvTyMvYCYbHCMuGms1IyxnLzaOkvfjjtsbnt0rfuYbfwfbmquLoruq6cGPnB2rLoIaIDhjPBsiGkfjLy29TBwvUzgvKigzVCIbTB3n0ignHC2vZkqOGieLUChv0oGOGicaGiIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiMnVBNn0ihGGpsaXoYikicbvC2uGD2HLBJOGsw5Kzw50yxrPB24GBwf5ihzHCNKkcK1Vzgu6icjUzxDSAw5LCYikicbjBNb1DdOkicaGicjCBIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiIaGy29UC3qGEca9ide7icaIcIaGvxnLihDOzw46ifbYzxnLCNzPBMCGAw50zxjUywWGD2HPDgvZCgfJzqOktw9KztOGiM5VBMuIcIaGsw5WDxq6cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGiefMDgvYihrYAw06cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGifvZzsb3AgvUoIbfEgfJDcbJAgfYywn0zxiGBwf0y2GGBMvLzgvKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50ihDPDgGGDhjPBtOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cIaGica8CMvWBgfJzsbTB2rLpsj0CMLTiJ4kicaGicaGpg9Szc1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGih0kicaGicaGpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGicaGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSkicaGicaGicb9cIaGicaGidWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsaYic0GtgLUzs1SAw1PDgvKihjLCgXHy2vTzw50oGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl0fWCc5QCYi+cIaGica8CMvWBgfJzsbSAw5LCY1SAw1PDd0ImtaTmJaIpGOGicaGica8B2XKlwnVBNrLBNq+y29UC3qGqvbjx1vstca9icDODhrWoI8VBg9JywXOB3n0oJmWmdaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pMnVBNn0iefqsv9vuKWGpsbWCM9JzxnZlMvUDI5bueLFvvjmpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cJWVzMLSzs1JB250zw50lxjLCgXHy2u+cGPfEgfTCgXLidmGlsbnDwX0AxbSzsbYzxbSywnLBwvUDhmGAw4GB25LigzPBgu6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVy29UzMLNlMPZiJ4kicaGidXYzxbSywnLpGOGicaGica8B2XKlwnVBNrLBNq+revcvuCGpsbMywXZztWVB2XKlwnVBNrLBNq+cIaGicaGidXUzxCTy29UDgvUDd5erujvrYa9ihrYDwu8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGicaGphjLCgXHy2u+cIaGicaGidXVBgqTy29UDgvUDd5mt0DFtevwruWGpsaNzxjYB3iNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pKXpr19mrvzftca9icDKzwj1zYC8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKv4yw1WBguGncaTie11BhrPCgXLigzPBgvZoGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl2fWCc5QCYi+cIaGica8CMvWBgfJzt4kicaGicaGpg9Szc1JB250zw50pNzLCNnPB24GpsaNms4WlJaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pNzLCNnPB24GpsaNms4XlJaNpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cIaGpgzPBguGCgf0Ad0ICgfJA2fNzs5QC29UiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+iNzLCNnPB24IoIaIms4WlJaIpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pIj2zxjZAw9UiJOGiJeUms4WiJWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsa1ic0GrxHHy3qGD2HPDgvZCgfJzsbTyxrJAgLUzZOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iK1HA2vMAwXLiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrNy2m8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrJBgfUzZWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrKvbvfvsrvm6cGRINjmGqxv0B21HDgLJigjHy2T1CcbJCMvHDgLVBIaOlMjHAYbMAwXLCYKk4PYtiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmk4PYtifjLCgXHy2vTzw50ignVDw50Aw5NigfUzcbZDgf0Axn0AwnZcUkCKYbnDwX0As1MAwXLig9WzxjHDgLVBNmk4PYtieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmk4PYtieLUDgvSBgLNzw50ihDOAxrLC3bHy2uGAgfUzgXPBMCk4PYtifnLy3vYAxr5ihzHBgLKyxrPB24GkhbHDgGGywnJzxnZkqRINjmGq3jLyxrLCYbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGBMvLzgvKcGPmsu1jvefusu9ouZOkcI0Gtwf4Aw11BsbMAwXLihnPEMu6ia','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','DxrMltG','Bw9Kzq','zxH0CMfJDef0DhjPyNv0zq','ugf0AcbUB3qGywnJzxnZAwjSztOG','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','zMLSzxm','q2HHBMDLzcbSAw5LCZOG','tufyx09mrf9dt05uru5ux1njwKu','ig1PC3nPBMCGBMv3q29UDgvUDa','zMLSzxnqCM9JzxnZzwq','CMvWBgfJzq','CMvWBgfJzw1LBNrZ','z2vUzxjHDgveAwzM','ChvZAa','C3rHDa','B2XKq29UDgvUDa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','tufyx0zjtevtx1bfuL9puevsqvrjt04','mtaYAfvXwfPY','uMvWBgfJzw1LBNqGAw4G','BM9Uzq','revgqvvmvf9uuKLnx01preu','DgLTzw91Da','AxnbCNjHEq','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','yxbWBhLszxbSywnLBwvUDa','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','s0iP','Bwf4','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','C3bSAxq','nwngEhjNsa','AxnbC3LUyW','C3vIC3rYAw5N','mJC2mti3BKDJDhL6','Aw5MBW','igzPBgvZigLUig9UzsbVCgvYyxrPB24','ig1PC3nPBMCGB2XKq29UDgvUDa','BwLU','Bg9Nz2vY','BwfW','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','reLgrL9dt05urvHux0XjtKvt','AM9PBG','CMvWBgfJzunVBMzPzW','ChjVy2vZC0zPBgu','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','twfKzsa','y291BNq','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','rMLSzsbUB3qGzM91BMq6ia','yxbWBhLuCMLTtw9Kzq','CgfYC2vytuW','CMvWBgfJzw1LBNrZtwfKzq','ndu4mJLQDxDkvha','BMv3q29UDgvUDa','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','AgfZ','z2v0rgvZy3jPChrPB24','zMLSzs1JB250zw50lxjLCgXHy2u','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','mJG1mdu3menPAu93Ca','D3jPDgvgAwXL','Cgf0Aa','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','y291BNrpy2n1CNjLBMnLCW','cLbYB2nLC3nLzca','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','ywrK','BgvUz3rO','pvSIj10Ow14Ij10QkvSIj10','CgfYC2vmAw5LuMfUz2vZ','cIaGica','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','lMjHAW','nJK5mJeYs1r5uxPY','zMLSzxnnB2rPzMLLza','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','mJi5oduYmZvvqMHYuw0','yMfJA3vWC0nYzwf0zwq','mtiWodi5nNjTqMnxCq','DhjPBq','cKvYCM9YCZOG','BgLUzxnmAw1PDa','BwvZC2fNzq','CgfYC2vku09o','zxHLyW','yMfJA3vWq3jLyxrLza','rgLMzIb0B28GBgfYz2uGka'];a0_0x45a7=function(){return _0x575f1c;};return a0_0x45a7();}export default FileContentReplaceTool;
@@ -1 +1 @@
1
- const a0_0x56928e=a0_0x66da;(function(_0x180b51,_0x162ce1){const _0x564279=a0_0x66da,_0xfd7eb7=_0x180b51();while(!![]){try{const _0x53c17a=-parseInt(_0x564279(0x1ac))/0x1+parseInt(_0x564279(0x1b9))/0x2+parseInt(_0x564279(0x1b1))/0x3+parseInt(_0x564279(0x1b5))/0x4*(-parseInt(_0x564279(0x1d1))/0x5)+-parseInt(_0x564279(0x21b))/0x6+-parseInt(_0x564279(0x218))/0x7+parseInt(_0x564279(0x18f))/0x8;if(_0x53c17a===_0x162ce1)break;else _0xfd7eb7['push'](_0xfd7eb7['shift']());}catch(_0x49af0f){_0xfd7eb7['push'](_0xfd7eb7['shift']());}}}(a0_0x465f,0xa1c03));import{BaseTool}from'./baseTool.js';import a0_0x1f0f77 from'../utilities/tagParser.js';import a0_0x393cbc from'../utilities/directoryAccessManager.js';import a0_0x480df1 from'fs/promises';import a0_0x22f23d from'path';function a0_0x66da(_0x1a6e5c,_0x218d27){_0x1a6e5c=_0x1a6e5c-0x184;const _0x465f0d=a0_0x465f();let _0x66da4d=_0x465f0d[_0x1a6e5c];if(a0_0x66da['sYoKhZ']===undefined){var _0x431eab=function(_0x2d1a16){const _0x53d4e0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f0f77='',_0x393cbc='';for(let _0x480df1=0x0,_0x22f23d,_0xf4f7c,_0x2f75be=0x0;_0xf4f7c=_0x2d1a16['charAt'](_0x2f75be++);~_0xf4f7c&&(_0x22f23d=_0x480df1%0x4?_0x22f23d*0x40+_0xf4f7c:_0xf4f7c,_0x480df1++%0x4)?_0x1f0f77+=String['fromCharCode'](0xff&_0x22f23d>>(-0x2*_0x480df1&0x6)):0x0){_0xf4f7c=_0x53d4e0['indexOf'](_0xf4f7c);}for(let _0x247ed4=0x0,_0x21e727=_0x1f0f77['length'];_0x247ed4<_0x21e727;_0x247ed4++){_0x393cbc+='%'+('00'+_0x1f0f77['charCodeAt'](_0x247ed4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x393cbc);};a0_0x66da['ZHPgjy']=_0x431eab,a0_0x66da['MytUEN']={},a0_0x66da['sYoKhZ']=!![];}const _0x4baf65=_0x465f0d[0x0],_0x169d3f=_0x1a6e5c+_0x4baf65,_0x27ae02=a0_0x66da['MytUEN'][_0x169d3f];return!_0x27ae02?(_0x66da4d=a0_0x66da['ZHPgjy'](_0x66da4d),a0_0x66da['MytUEN'][_0x169d3f]=_0x66da4d):_0x66da4d=_0x27ae02,_0x66da4d;}import a0_0xf4f7c from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x2f75be={},_0x247ed4=null){const _0x3d2783=a0_0x66da;super(_0x2f75be,_0x247ed4),this['requiresProject']=!![],this[_0x3d2783(0x20f)]=![],this[_0x3d2783(0x1db)]=_0x2f75be['timeout']||0x7530,this['maxConcurrentOperations']=_0x2f75be['maxConcurrentOperations']||0x5,this[_0x3d2783(0x1c4)]=_0x2f75be[_0x3d2783(0x1c4)]||SYSTEM_DEFAULTS[_0x3d2783(0x216)],this[_0x3d2783(0x1d2)]=_0x2f75be[_0x3d2783(0x1d2)]||null,this['blockedExtensions']=_0x2f75be[_0x3d2783(0x185)]||['.exe','.bat',_0x3d2783(0x1bc),'.scr',_0x3d2783(0x1cd)],this['allowedDirectories']=_0x2f75be[_0x3d2783(0x1f8)]||null,this['operationHistory']=[],this[_0x3d2783(0x1c5)]=new a0_0x393cbc(_0x2f75be,_0x247ed4);}['getDescription'](){const _0x26b53e=a0_0x66da;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aCRITICAL:\x20Both\x20XML\x20and\x20JSON\x20formats\x20are\x20fully\x20supported.\x20When\x20using\x20XML\x20format,\x20commands\x20are\x20automatically\x20converted\x20to\x20the\x20appropriate\x20structure\x20internally\x20-\x20you\x20don\x27t\x20need\x20to\x20manually\x20wrap\x20them\x20in\x20an\x20actions\x20array.\x0a\x0aUSAGE\x20-\x20TWO\x20FORMATS\x20SUPPORTED:\x0a\x0aFORMAT\x201\x20-\x20XML\x20STYLE\x20(Recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22src/index.js\x22\x20/>\x0a<write\x20output-path=\x22src/components/Button.js\x22>\x0aconst\x20Button\x20=\x20()\x20=>\x20{\x0a\x20\x20return\x20<button>Click\x20me</button>;\x0a};\x0aexport\x20default\x20Button;\x0a</write>\x0a[/tool]\x0a\x0aFORMAT\x202\x20-\x20JSON\x20STYLE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x20\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x20\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22const\x20Button\x20=\x20()\x20=>\x20{\x20return\x20<button>Click\x20me</button>;\x20};\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20\x0a-\x20Use\x20either\x20format\x20consistently.\x20Do\x20NOT\x20mix\x20formats\x20in\x20a\x20single\x20command.\x0a-\x20XML\x20format\x20is\x20recommended\x20for\x20single\x20operations\x20and\x20better\x20readability\x0a-\x20JSON\x20format\x20is\x20recommended\x20for\x20complex\x20multi-action\x20operations\x0a-\x20Both\x20formats\x20work\x20equally\x20well\x20and\x20produce\x20the\x20same\x20results\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x0a-\x20write:\x20Write\x20content\x20to\x20file\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x0a-\x20delete:\x20Delete\x20a\x20file\x0a-\x20copy:\x20Copy\x20file\x20from\x20source\x20to\x20destination\x0a-\x20move:\x20Move/rename\x20file\x0a-\x20create-dir:\x20Create\x20directory\x0a-\x20list:\x20List\x20directory\x20contents\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20read\x0a-\x20output-path:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20source-path:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20dest-path:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20directory\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20create-dirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aSIMPLE\x20FILE\x20CREATION\x20(XML\x20format\x20-\x20recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<write\x20output-path=\x22hello.c\x22>\x0a#include\x20<stdio.h>\x0a\x0aint\x20main()\x20{\x0a\x20\x20\x20\x20printf(\x22Hello,\x20World!\x5cn\x22);\x0a\x20\x20\x20\x20return\x200;\x0a}\x0a</write>\x0a[/tool]\x0a\x0aREADING\x20FILES\x20(XML\x20format):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22package.json\x22\x20/>\x0a[/tool]\x0a\x0aMULTIPLE\x20OPERATIONS\x20(JSON\x20format\x20recommended):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/backup.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22//\x20Backup\x20file\x5cnconsole.log(\x27backup\x27);\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aOTHER\x20XML\x20EXAMPLES:\x0a[tool\x20id=\x22filesystem\x22]\x0a<copy\x20source-path=\x22template.js\x22\x20dest-path=\x22src/component.js\x22\x20/>\x0a<create-dir\x20directory=\x22src/components/ui\x22\x20/>\x0a<list\x20directory=\x22src\x22\x20/>\x0a[/tool]\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x26b53e(0x214)](this['maxFileSize']/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}[a0_0x56928e(0x1d8)](_0x21e727){const _0x12f302=a0_0x56928e;try{const _0x5e9c5a={},_0xcee7a9=[];this[_0x12f302(0x1ba)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x21e727['length'],'contentPreview':_0x21e727[_0x12f302(0x1bd)](0x0,0xc8)});const _0x340fda=[_0x12f302(0x1fd),'delete','copy','move',_0x12f302(0x1a7),'list',_0x12f302(0x201),'stats',_0x12f302(0x1c3)];for(const _0x1ae523 of _0x340fda){const _0x1e90ef=a0_0x1f0f77[_0x12f302(0x19c)](_0x21e727,_0x1ae523);for(const _0x1e7229 of _0x1e90ef){const _0x2a677a={'type':_0x1ae523,..._0x1e7229[_0x12f302(0x184)]};_0x2a677a[_0x12f302(0x213)]&&(_0x2a677a[_0x12f302(0x1bb)]=_0x2a677a[_0x12f302(0x213)],delete _0x2a677a['file-path']),_0x2a677a['output-path']&&(_0x2a677a['outputPath']=_0x2a677a['output-path'],delete _0x2a677a['output-path']),_0x2a677a['source-path']&&(_0x2a677a['sourcePath']=_0x2a677a[_0x12f302(0x1be)],delete _0x2a677a[_0x12f302(0x1be)]),_0x2a677a['dest-path']&&(_0x2a677a['destPath']=_0x2a677a['dest-path'],delete _0x2a677a[_0x12f302(0x1f9)]),_0x2a677a[_0x12f302(0x1aa)]&&(_0x2a677a[_0x12f302(0x217)]=_0x2a677a[_0x12f302(0x1aa)]===_0x12f302(0x1e9),delete _0x2a677a[_0x12f302(0x1aa)]),_0xcee7a9['push'](_0x2a677a);}}const _0x11b4cf=_0x21e727['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x22953b of _0x11b4cf){const _0x38383d=new a0_0x1f0f77(),_0x22d39d=_0x38383d['parseAttributes'](_0x22953b[0x1]),_0x1bea93=_0x22953b[0x2]['trim'](),_0x24f3ee={'type':'write','content':_0x1bea93,..._0x22d39d};_0x24f3ee['output-path']&&(_0x24f3ee[_0x12f302(0x1e5)]=_0x24f3ee[_0x12f302(0x1c7)],delete _0x24f3ee['output-path']),_0x24f3ee['create-dirs']&&(_0x24f3ee['createDirs']=_0x24f3ee['create-dirs']==='true',delete _0x24f3ee['create-dirs']),_0xcee7a9['push'](_0x24f3ee);}const _0x57e12b=_0x21e727['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x233764 of _0x57e12b){const _0x4c2aa5=new a0_0x1f0f77(),_0x55ff68=_0x4c2aa5[_0x12f302(0x1a3)](_0x233764[0x1]),_0x2be7c4=_0x233764[0x2]['trim'](),_0x401892={'type':_0x12f302(0x1c3),'content':_0x2be7c4,..._0x55ff68};_0x401892['file-path']&&(_0x401892['filePath']=_0x401892[_0x12f302(0x213)],delete _0x401892[_0x12f302(0x213)]),_0xcee7a9['push'](_0x401892);}return _0x5e9c5a[_0x12f302(0x1da)]=_0xcee7a9,_0x5e9c5a[_0x12f302(0x1e3)]=_0x21e727['trim'](),this[_0x12f302(0x1ba)]?.['debug'](_0x12f302(0x211),{'totalActions':_0xcee7a9['length'],'actionTypes':_0xcee7a9['map'](_0x1924cc=>_0x1924cc['type']),'actions':_0xcee7a9[_0x12f302(0x1a4)](_0xe0b282=>({'type':_0xe0b282['type'],'filePath':_0xe0b282[_0x12f302(0x1bb)],'outputPath':_0xe0b282['outputPath'],'hasContent':!!_0xe0b282['content']}))}),_0x5e9c5a;}catch(_0x4ca0e8){throw new Error(_0x12f302(0x1f0)+_0x4ca0e8[_0x12f302(0x18b)]);}}['getRequiredParameters'](){const _0x4d0da9=a0_0x56928e;return[_0x4d0da9(0x1da)];}['customValidateParameters'](_0x26f50e){const _0x567e7e=a0_0x56928e,_0x4de645=[];if(!_0x26f50e['actions']||!Array['isArray'](_0x26f50e[_0x567e7e(0x1da)])||_0x26f50e['actions'][_0x567e7e(0x186)]===0x0)_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x1cf));else for(const [_0x221697,_0x2a2170]of _0x26f50e[_0x567e7e(0x1da)]['entries']()){if(!_0x2a2170['type']){_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x21d));continue;}switch(_0x2a2170['type']){case'read':case _0x567e7e(0x1c0):case'exists':case'stats':!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x2a2170[_0x567e7e(0x1f3)]);break;case _0x567e7e(0x1e0):!_0x2a2170[_0x567e7e(0x1e5)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170[_0x567e7e(0x195)]!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0x567e7e(0x1c3):!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1a6));!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170['content']!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x2a2170[_0x567e7e(0x1ea)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);!_0x2a2170[_0x567e7e(0x188)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);break;case'create-dir':case _0x567e7e(0x206):!_0x2a2170['directory']&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x212)+_0x2a2170[_0x567e7e(0x1f3)]);break;default:_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1ee)+_0x2a2170['type']);}_0x2a2170['filePath']&&!this[_0x567e7e(0x1f7)](_0x2a2170[_0x567e7e(0x1bb)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x22f23d['extname'](_0x2a2170[_0x567e7e(0x1bb)])),_0x2a2170[_0x567e7e(0x1e5)]&&!this['isAllowedFileExtension'](_0x2a2170[_0x567e7e(0x1e5)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x1dd)+a0_0x22f23d[_0x567e7e(0x18d)](_0x2a2170['outputPath']));}return{'valid':_0x4de645['length']===0x0,'errors':_0x4de645};}async[a0_0x56928e(0x1c6)](_0x3ccd8f,_0x4dd8af){const _0x2cc37d=a0_0x56928e;if(!_0x3ccd8f||typeof _0x3ccd8f!=='object')throw new Error(_0x2cc37d(0x1d3));const {actions:_0x488d92}=_0x3ccd8f;if(!_0x488d92)throw new Error(_0x2cc37d(0x197)+JSON['stringify'](Object['keys'](_0x3ccd8f)));if(!Array[_0x2cc37d(0x1d9)](_0x488d92))throw new Error(_0x2cc37d(0x1ff)+typeof _0x488d92);if(_0x488d92[_0x2cc37d(0x186)]===0x0)throw new Error(_0x2cc37d(0x1cc));const {projectDir:_0x459181,agentId:_0x53844e,directoryAccess:_0x5baa16}=_0x4dd8af,_0x4bd31f=_0x5baa16||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x459181||process[_0x2cc37d(0x200)](),'writeEnabledDirectories':[_0x459181||process[_0x2cc37d(0x200)]()],'restrictToProject':!![]});_0x5baa16&&_0x5baa16['workingDirectory']?(console['log'](_0x2cc37d(0x1b8),_0x5baa16['workingDirectory']),console[_0x2cc37d(0x1e2)](_0x2cc37d(0x1fb),JSON['stringify'](_0x5baa16,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x459181||process[_0x2cc37d(0x200)]()),console[_0x2cc37d(0x1e2)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5baa16),console['log'](_0x2cc37d(0x1e6),_0x459181));const _0x3c6d99=[];for(const _0x55367b of _0x488d92){try{let _0x49d0ba;switch(_0x55367b['type']){case _0x2cc37d(0x1fd):_0x49d0ba=await this[_0x2cc37d(0x1e1)](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1e0):_0x49d0ba=await this['writeFile'](_0x55367b[_0x2cc37d(0x1e5)],_0x55367b['content'],_0x4bd31f,{'encoding':_0x55367b[_0x2cc37d(0x1ca)],'createDirs':_0x55367b['createDirs']});break;case _0x2cc37d(0x1c3):_0x49d0ba=await this['appendToFile'](_0x55367b[_0x2cc37d(0x1bb)],_0x55367b[_0x2cc37d(0x195)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1c0):_0x49d0ba=await this[_0x2cc37d(0x1ce)](_0x55367b['filePath'],_0x4bd31f);break;case _0x2cc37d(0x1e8):_0x49d0ba=await this[_0x2cc37d(0x192)](_0x55367b['sourcePath'],_0x55367b['destPath'],_0x4bd31f);break;case _0x2cc37d(0x198):_0x49d0ba=await this['moveFile'](_0x55367b[_0x2cc37d(0x1ea)],_0x55367b[_0x2cc37d(0x188)],_0x4bd31f);break;case _0x2cc37d(0x1a7):_0x49d0ba=await this['createDirectory'](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x206):_0x49d0ba=await this[_0x2cc37d(0x1fa)](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x201):_0x49d0ba=await this['checkExists'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;case _0x2cc37d(0x1bf):_0x49d0ba=await this['getFileStats'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;default:throw new Error(_0x2cc37d(0x1a8)+_0x55367b['type']);}_0x3c6d99[_0x2cc37d(0x1a9)](_0x49d0ba),this['addToHistory'](_0x55367b,_0x49d0ba,_0x4dd8af[_0x2cc37d(0x1b0)]);}catch(_0x2db287){const _0x46da5f={'success':![],'action':_0x55367b['type'],'error':_0x2db287['message'],'filePath':_0x55367b[_0x2cc37d(0x1bb)]||_0x55367b[_0x2cc37d(0x1e5)]||_0x55367b['directory']};_0x3c6d99[_0x2cc37d(0x1a9)](_0x46da5f),this[_0x2cc37d(0x1f6)](_0x55367b,_0x46da5f,_0x4dd8af['agentId']);}}return{'success':!![],'actions':_0x3c6d99,'executedActions':_0x488d92['length'],'toolUsed':_0x2cc37d(0x1d6)};}async[a0_0x56928e(0x1e1)](_0x54fbb5,_0x190016,_0x2f8663=a0_0x56928e(0x1a0)){const _0x3ba0d0=a0_0x56928e,_0x123995=this[_0x3ba0d0(0x1c5)]['getWorkingDirectory'](_0x190016),_0x483128=this[_0x3ba0d0(0x1ec)](_0x54fbb5,_0x123995),_0x26d970=this['directoryAccessManager']['validateReadAccess'](_0x483128,_0x190016);if(!_0x26d970['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x26d970['reason']+'\x20('+_0x26d970[_0x3ba0d0(0x1f1)]+')');try{const _0x4b9c43=await a0_0x480df1['stat'](_0x483128);if(_0x4b9c43[_0x3ba0d0(0x1cb)]>this[_0x3ba0d0(0x1c4)])throw new Error(_0x3ba0d0(0x1b4)+_0x4b9c43['size']+_0x3ba0d0(0x1c2)+this['maxFileSize']+')');const _0x3c6882=await a0_0x480df1['readFile'](_0x483128,_0x2f8663);return{'success':!![],'action':'read','filePath':this['directoryAccessManager']['createRelativePath'](_0x483128,_0x190016),'content':_0x3c6882,'size':_0x4b9c43[_0x3ba0d0(0x1cb)],'encoding':_0x2f8663,'lastModified':_0x4b9c43['mtime'][_0x3ba0d0(0x18a)](),'message':'Read\x20'+_0x4b9c43['size']+'\x20bytes\x20from\x20'+_0x54fbb5};}catch(_0x2327e9){throw new Error(_0x3ba0d0(0x189)+_0x54fbb5+':\x20'+_0x2327e9[_0x3ba0d0(0x18b)]);}}async[a0_0x56928e(0x1d4)](_0x225a3b,_0x2c3eaa,_0x3a3614,_0x3613a9={}){const _0x4f99d4=a0_0x56928e,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x3613a9,_0x3f4a44=this[_0x4f99d4(0x1c5)]['getWorkingDirectory'](_0x3a3614),_0x39c853=this['resolvePath'](_0x225a3b,_0x3f4a44),_0x2e8ebc=this[_0x4f99d4(0x1c5)]['validateWriteAccess'](_0x39c853,_0x3a3614);if(!_0x2e8ebc['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x2e8ebc[_0x4f99d4(0x1e7)]+'\x20('+_0x2e8ebc['path']+')');try{const _0x28f7db=Buffer[_0x4f99d4(0x202)](_0x2c3eaa,encoding);if(_0x28f7db>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x28f7db+_0x4f99d4(0x1c2)+this['maxFileSize']+')');if(createDirs){const _0x40b17a=a0_0x22f23d['dirname'](_0x39c853);await a0_0x480df1[_0x4f99d4(0x1e4)](_0x40b17a,{'recursive':!![]});}let _0x552c5f=null;try{await a0_0x480df1[_0x4f99d4(0x1fc)](_0x39c853),_0x552c5f=_0x39c853+_0x4f99d4(0x204)+Date['now'](),await a0_0x480df1['copyFile'](_0x39c853,_0x552c5f);}catch{}await a0_0x480df1[_0x4f99d4(0x1d4)](_0x39c853,_0x2c3eaa,encoding);const _0x1760d9=await a0_0x480df1['stat'](_0x39c853),_0x397df1=this['directoryAccessManager'][_0x4f99d4(0x209)](_0x39c853,_0x3a3614);return{'success':!![],'action':_0x4f99d4(0x1e0),'outputPath':_0x397df1,'fullPath':_0x39c853,'size':_0x1760d9[_0x4f99d4(0x1cb)],'encoding':encoding,'backupPath':_0x552c5f?this[_0x4f99d4(0x1c5)]['createRelativePath'](_0x552c5f,_0x3a3614):null,'backupFullPath':_0x552c5f||null,'message':_0x4f99d4(0x1df)+_0x1760d9['size']+'\x20bytes\x20to\x20'+_0x39c853};}catch(_0x2ef7ca){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x39c853+':\x20'+_0x2ef7ca['message']);}}async['appendToFile'](_0x5791de,_0x41fb67,_0x1482e1,_0x8a4a8d='utf8'){const _0x5119b4=a0_0x56928e,_0xf2c522=this[_0x5119b4(0x1c5)]['getWorkingDirectory'](_0x1482e1),_0x1f7d1f=this[_0x5119b4(0x1ec)](_0x5791de,_0xf2c522),_0x4eb2d5=this[_0x5119b4(0x1c5)][_0x5119b4(0x19b)](_0x1f7d1f,_0x1482e1);if(!_0x4eb2d5[_0x5119b4(0x207)])throw new Error(_0x5119b4(0x1b3)+_0x4eb2d5['reason']+'\x20('+_0x4eb2d5['path']+')');try{let _0x576fef=0x0;try{const _0x4e8775=await a0_0x480df1['stat'](_0x1f7d1f);_0x576fef=_0x4e8775[_0x5119b4(0x1cb)];}catch{}const _0x2ccb8a=Buffer['byteLength'](_0x41fb67,_0x8a4a8d);if(_0x576fef+_0x2ccb8a>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x576fef+_0x2ccb8a)+'\x20bytes\x20(max\x20'+this[_0x5119b4(0x1c4)]+')');await a0_0x480df1[_0x5119b4(0x1c9)](_0x1f7d1f,_0x41fb67,_0x8a4a8d);const _0x4bda2b=await a0_0x480df1['stat'](_0x1f7d1f),_0x483a29=this[_0x5119b4(0x1c5)]['createRelativePath'](_0x1f7d1f,_0x1482e1);return{'success':!![],'action':_0x5119b4(0x1c3),'filePath':_0x483a29,'fullPath':_0x1f7d1f,'appendedBytes':_0x2ccb8a,'totalSize':_0x4bda2b[_0x5119b4(0x1cb)],'encoding':_0x8a4a8d,'message':_0x5119b4(0x208)+_0x2ccb8a+_0x5119b4(0x194)+_0x1f7d1f};}catch(_0x3467c8){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x1f7d1f+':\x20'+_0x3467c8[_0x5119b4(0x18b)]);}}async[a0_0x56928e(0x1ce)](_0x4dc5f9,_0x14a9a5){const _0x1707ce=a0_0x56928e,_0x39737a=this['directoryAccessManager'][_0x1707ce(0x190)](_0x14a9a5),_0x271971=this[_0x1707ce(0x1ec)](_0x4dc5f9,_0x39737a),_0x143005=this[_0x1707ce(0x1c5)][_0x1707ce(0x19b)](_0x271971,_0x14a9a5);if(!_0x143005[_0x1707ce(0x207)])throw new Error('Delete\x20access\x20denied:\x20'+_0x143005['reason']+'\x20('+_0x143005[_0x1707ce(0x1f1)]+')');try{const _0x14788e=await a0_0x480df1[_0x1707ce(0x1c1)](_0x271971),_0x3a718b=_0x271971+_0x1707ce(0x187)+Date[_0x1707ce(0x1f4)]();await a0_0x480df1[_0x1707ce(0x192)](_0x271971,_0x3a718b),await a0_0x480df1['unlink'](_0x271971);const _0x5e7fef=this[_0x1707ce(0x1c5)]['createRelativePath'](_0x271971,_0x14a9a5),_0x49717a=this[_0x1707ce(0x1c5)][_0x1707ce(0x209)](_0x3a718b,_0x14a9a5);return{'success':!![],'action':_0x1707ce(0x1c0),'filePath':_0x5e7fef,'fullPath':_0x271971,'size':_0x14788e[_0x1707ce(0x1cb)],'backupPath':_0x49717a,'backupFullPath':_0x3a718b,'message':_0x1707ce(0x1f2)+_0x271971+_0x1707ce(0x1a5)};}catch(_0x5d2d2a){throw new Error(_0x1707ce(0x1eb)+_0x271971+':\x20'+_0x5d2d2a[_0x1707ce(0x18b)]);}}async['copyFile'](_0x2136ae,_0x312b06,_0x121082){const _0x3f9872=a0_0x56928e,_0x2c280e=this[_0x3f9872(0x1c5)]['getWorkingDirectory'](_0x121082),_0x2875ec=this[_0x3f9872(0x1ec)](_0x2136ae,_0x2c280e),_0x5d8253=this[_0x3f9872(0x1ec)](_0x312b06,_0x2c280e),_0x36f1eb=this['directoryAccessManager'][_0x3f9872(0x19f)](_0x2875ec,_0x121082);if(!_0x36f1eb[_0x3f9872(0x207)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x36f1eb['reason']+'\x20('+_0x36f1eb[_0x3f9872(0x1f1)]+')');const _0x4c5502=this[_0x3f9872(0x1c5)]['validateWriteAccess'](_0x5d8253,_0x121082);if(!_0x4c5502[_0x3f9872(0x207)])throw new Error(_0x3f9872(0x1c8)+_0x4c5502[_0x3f9872(0x1e7)]+'\x20('+_0x4c5502['path']+')');try{const _0x13f604=await a0_0x480df1[_0x3f9872(0x1c1)](_0x2875ec);if(_0x13f604['size']>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x13f604['size']+_0x3f9872(0x1dc));const _0x55868e=a0_0x22f23d['dirname'](_0x5d8253);await a0_0x480df1[_0x3f9872(0x1e4)](_0x55868e,{'recursive':!![]}),await a0_0x480df1['copyFile'](_0x2875ec,_0x5d8253);const _0x42b2e5=this[_0x3f9872(0x1c5)]['createRelativePath'](_0x2875ec,_0x121082),_0x1345a4=this['directoryAccessManager'][_0x3f9872(0x209)](_0x5d8253,_0x121082);return{'success':!![],'action':'copy','sourcePath':_0x42b2e5,'destPath':_0x1345a4,'sourceFullPath':_0x2875ec,'destFullPath':_0x5d8253,'size':_0x13f604['size'],'message':'Copied\x20'+_0x2875ec+'\x20to\x20'+_0x5d8253};}catch(_0x490e1a){throw new Error(_0x3f9872(0x203)+_0x2875ec+_0x3f9872(0x1ed)+_0x5d8253+':\x20'+_0x490e1a[_0x3f9872(0x18b)]);}}async[a0_0x56928e(0x1b7)](_0x26a36e,_0xd0c458,_0x336e21){const _0x57874e=a0_0x56928e,_0x1f3f9f=this[_0x57874e(0x1c5)]['getWorkingDirectory'](_0x336e21),_0x14c61a=this['resolvePath'](_0x26a36e,_0x1f3f9f),_0x1767e0=this['resolvePath'](_0xd0c458,_0x1f3f9f),_0x311c7b=this[_0x57874e(0x1c5)][_0x57874e(0x19f)](_0x14c61a,_0x336e21);if(!_0x311c7b[_0x57874e(0x207)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x311c7b['reason']+'\x20('+_0x311c7b[_0x57874e(0x1f1)]+')');const _0x42b719=this[_0x57874e(0x1c5)]['validateWriteAccess'](_0x1767e0,_0x336e21);if(!_0x42b719['allowed'])throw new Error(_0x57874e(0x219)+_0x42b719[_0x57874e(0x1e7)]+'\x20('+_0x42b719['path']+')');try{const _0x40911a=await a0_0x480df1['stat'](_0x14c61a),_0x57f163=a0_0x22f23d['dirname'](_0x1767e0);await a0_0x480df1[_0x57874e(0x1e4)](_0x57f163,{'recursive':!![]}),await a0_0x480df1[_0x57874e(0x19d)](_0x14c61a,_0x1767e0);const _0x1eb62a=this['directoryAccessManager']['createRelativePath'](_0x14c61a,_0x336e21),_0x549b14=this[_0x57874e(0x1c5)][_0x57874e(0x209)](_0x1767e0,_0x336e21);return{'success':!![],'action':'move','sourcePath':_0x1eb62a,'destPath':_0x549b14,'fullSourcePath':_0x14c61a,'fullDestPath':_0x1767e0,'size':_0x40911a['size'],'message':_0x57874e(0x1ae)+_0x26a36e+'\x20to\x20'+_0xd0c458};}catch(_0x4d7cef){throw new Error(_0x57874e(0x20c)+_0x26a36e+'\x20to\x20'+_0xd0c458+':\x20'+_0x4d7cef['message']);}}async[a0_0x56928e(0x20e)](_0x3cffa8,_0x338293){const _0x2075a9=a0_0x56928e,_0x48b66f=this['directoryAccessManager'][_0x2075a9(0x190)](_0x338293),_0x44becb=this['resolvePath'](_0x3cffa8,_0x48b66f),_0x1a6c77=this[_0x2075a9(0x1c5)]['validateWriteAccess'](_0x44becb,_0x338293);if(!_0x1a6c77['allowed'])throw new Error(_0x2075a9(0x1b3)+_0x1a6c77['reason']+'\x20('+_0x1a6c77[_0x2075a9(0x1f1)]+')');try{await a0_0x480df1['mkdir'](_0x44becb,{'recursive':!![]});const _0x3a24b8=this[_0x2075a9(0x1c5)][_0x2075a9(0x209)](_0x44becb,_0x338293);return{'success':!![],'action':_0x2075a9(0x1a7),'directory':_0x3a24b8,'fullPath':_0x44becb,'message':_0x2075a9(0x1ad)+_0x3cffa8};}catch(_0x130e3e){throw new Error(_0x2075a9(0x20d)+_0x3cffa8+':\x20'+_0x130e3e[_0x2075a9(0x18b)]);}}async['listDirectory'](_0x3e8863,_0x23c6e4){const _0x251d5b=a0_0x56928e,_0x2ee735=this[_0x251d5b(0x1c5)][_0x251d5b(0x190)](_0x23c6e4),_0x501ffa=this['resolvePath'](_0x3e8863,_0x2ee735),_0xffa5c=this['directoryAccessManager'][_0x251d5b(0x19f)](_0x501ffa,_0x23c6e4);if(!_0xffa5c[_0x251d5b(0x207)])throw new Error(_0x251d5b(0x1ef)+_0xffa5c['reason']+'\x20('+_0xffa5c[_0x251d5b(0x1f1)]+')');try{const _0x20e455=await a0_0x480df1[_0x251d5b(0x1a2)](_0x501ffa,{'withFileTypes':!![]}),_0x3f89fc=[];for(const _0x543bc7 of _0x20e455){const _0x10cba4=a0_0x22f23d[_0x251d5b(0x18c)](_0x501ffa,_0x543bc7['name']),_0x4cf3e4=await a0_0x480df1['stat'](_0x10cba4);_0x3f89fc['push']({'name':_0x543bc7['name'],'type':_0x543bc7['isDirectory']()?_0x251d5b(0x1af):'file','size':_0x543bc7[_0x251d5b(0x20a)]()?_0x4cf3e4['size']:undefined,'lastModified':_0x4cf3e4[_0x251d5b(0x1b2)]['toISOString'](),'permissions':_0x4cf3e4[_0x251d5b(0x1d7)],'isSymlink':_0x543bc7[_0x251d5b(0x1d5)]()});}const _0x36d46e=this['directoryAccessManager'][_0x251d5b(0x209)](_0x501ffa,_0x23c6e4);return{'success':!![],'action':_0x251d5b(0x206),'directory':_0x36d46e,'fullPath':_0x501ffa,'contents':_0x3f89fc,'totalItems':_0x3f89fc['length'],'directories':_0x3f89fc[_0x251d5b(0x1f5)](_0x4d0bae=>_0x4d0bae[_0x251d5b(0x1f3)]===_0x251d5b(0x1af))['length'],'files':_0x3f89fc[_0x251d5b(0x1f5)](_0x28928b=>_0x28928b[_0x251d5b(0x1f3)]==='file')[_0x251d5b(0x186)],'message':_0x251d5b(0x21a)+_0x3f89fc[_0x251d5b(0x186)]+'\x20items\x20in\x20'+_0x3e8863};}catch(_0x16e66a){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x3e8863+':\x20'+_0x16e66a['message']);}}async['checkExists'](_0xaf1a25,_0x3356aa){const _0x26d822=a0_0x56928e,_0x4ba57e=this[_0x26d822(0x1c5)][_0x26d822(0x190)](_0x3356aa),_0x293096=this[_0x26d822(0x1ec)](_0xaf1a25,_0x4ba57e),_0x51ee99=this['directoryAccessManager'][_0x26d822(0x19f)](_0x293096,_0x3356aa);if(!_0x51ee99['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x51ee99['reason']+'\x20('+_0x51ee99[_0x26d822(0x1f1)]+')');try{const _0x4acdbb=await a0_0x480df1['stat'](_0x293096),_0x5c7ddf=this['directoryAccessManager'][_0x26d822(0x209)](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x5c7ddf,'fullPath':_0x293096,'exists':!![],'type':_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a),'message':_0xaf1a25+'\x20exists\x20as\x20'+(_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a))};}catch(_0x5667b3){if(_0x5667b3['code']===_0x26d822(0x193)){const _0x1ac484=this['directoryAccessManager']['createRelativePath'](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x1ac484,'fullPath':_0x293096,'exists':![],'message':_0xaf1a25+_0x26d822(0x1a1)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0xaf1a25+':\x20'+_0x5667b3['message']);}}async['getFileStats'](_0x319bf6,_0x316cf0){const _0x51d8b6=a0_0x56928e,_0x412bd9=this['directoryAccessManager'][_0x51d8b6(0x190)](_0x316cf0),_0x2431dd=this[_0x51d8b6(0x1ec)](_0x319bf6,_0x412bd9),_0x5689ba=this[_0x51d8b6(0x1c5)][_0x51d8b6(0x19f)](_0x2431dd,_0x316cf0);if(!_0x5689ba['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5689ba['reason']+'\x20('+_0x5689ba['path']+')');try{const _0x4d1f35=await a0_0x480df1[_0x51d8b6(0x1c1)](_0x2431dd),_0x4fdb28=this['directoryAccessManager'][_0x51d8b6(0x209)](_0x2431dd,_0x316cf0);return{'success':!![],'action':_0x51d8b6(0x1bf),'filePath':_0x4fdb28,'fullPath':_0x2431dd,'stats':{'size':_0x4d1f35[_0x51d8b6(0x1cb)],'type':_0x4d1f35['isDirectory']()?_0x51d8b6(0x1af):_0x51d8b6(0x19a),'lastModified':_0x4d1f35['mtime'][_0x51d8b6(0x18a)](),'lastAccessed':_0x4d1f35['atime']['toISOString'](),'created':_0x4d1f35['birthtime'][_0x51d8b6(0x18a)](),'permissions':_0x4d1f35['mode'],'isSymlink':_0x4d1f35['isSymbolicLink']()},'message':_0x51d8b6(0x196)+_0x319bf6};}catch(_0x4d5f5d){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x319bf6+':\x20'+_0x4d5f5d[_0x51d8b6(0x18b)]);}}['resolvePath'](_0x541578,_0x1747ec){const _0x5eb2bb=a0_0x56928e;if(a0_0x22f23d[_0x5eb2bb(0x1de)](_0x541578))return a0_0x22f23d[_0x5eb2bb(0x1b6)](_0x541578);return a0_0x22f23d[_0x5eb2bb(0x19e)](_0x1747ec,_0x541578);}['validatePathAccess'](_0x4d516b,_0x36e2fd,_0x33a528='read'){const _0xdcda19=a0_0x56928e,_0x2ff7eb=_0x33a528==='write'?this[_0xdcda19(0x1c5)][_0xdcda19(0x19b)](_0x4d516b,_0x36e2fd):this[_0xdcda19(0x1c5)][_0xdcda19(0x19f)](_0x4d516b,_0x36e2fd);if(!_0x2ff7eb[_0xdcda19(0x207)])throw new Error(_0x33a528+'\x20access\x20denied:\x20'+_0x2ff7eb[_0xdcda19(0x1e7)]+'\x20('+_0x2ff7eb['path']+')');return _0x2ff7eb;}['isAllowedFileExtension'](_0x44d9a3){const _0x1bac09=a0_0x56928e,_0x2ee181=a0_0x22f23d[_0x1bac09(0x18d)](_0x44d9a3)[_0x1bac09(0x205)]();if(this[_0x1bac09(0x185)]['includes'](_0x2ee181))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x1bac09(0x215)](_0x2ee181))return![];return!![];}[a0_0x56928e(0x1f6)](_0x17472a,_0x4fe42a,_0x2c0073){const _0x31670e=a0_0x56928e,_0x458cbc={'timestamp':new Date()[_0x31670e(0x18a)](),'agentId':_0x2c0073,'action':_0x17472a['type'],'filePath':_0x17472a[_0x31670e(0x1bb)]||_0x17472a['outputPath']||_0x17472a[_0x31670e(0x1af)],'success':_0x4fe42a['success'],'size':_0x4fe42a[_0x31670e(0x1cb)]};this[_0x31670e(0x1d0)]['push'](_0x458cbc),this[_0x31670e(0x1d0)][_0x31670e(0x186)]>0xc8&&(this[_0x31670e(0x1d0)]=this[_0x31670e(0x1d0)][_0x31670e(0x191)](-0xc8));}['getSupportedActions'](){const _0x235c31=a0_0x56928e;return[_0x235c31(0x1fd),_0x235c31(0x1e0),_0x235c31(0x1c3),'delete',_0x235c31(0x1e8),'move','create-dir',_0x235c31(0x206),'exists','stats'];}[a0_0x56928e(0x1ab)](){const _0x3de3fd=a0_0x56928e;return{'type':_0x3de3fd(0x21c),'properties':{'actions':{'type':_0x3de3fd(0x20b),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x3de3fd(0x18e),'enum':this[_0x3de3fd(0x199)]()},'filePath':{'type':'string'},'outputPath':{'type':_0x3de3fd(0x18e)},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':_0x3de3fd(0x18e)},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x3e9c4d=null){const _0x2d1861=a0_0x56928e;if(_0x3e9c4d)return this[_0x2d1861(0x1d0)]['filter'](_0x4c36a6=>_0x4c36a6['agentId']===_0x3e9c4d);return[...this[_0x2d1861(0x1d0)]];}}function a0_0x465f(){const _0x588c7a=['ndm3ndK4yuLut2TK','q3jLyxrLzcbKAxjLy3rVCNKG','tw92zwqG','zgLYzwn0B3j5','ywDLBNrjza','mJmWmde3nxjtu2HbCa','BxrPBwu','v3jPDguGywnJzxnZigrLBMLLzdOG','rMLSzsb0B28GBgfYz2u6ia','ngPWA21NqG','BM9YBwfSAxPL','Bw92zuzPBgu','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','mtm0mJCZmLPpqwXZwq','Bg9Nz2vY','zMLSzvbHDgG','lMnTza','C3vIC3rYAw5N','C291CMnLlxbHDgG','C3rHDhm','zgvSzxrL','C3rHDa','igj5DgvZicHTyxGG','yxbWzw5K','Bwf4rMLSzvnPEMu','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHLy3v0zq','B3v0Chv0lxbHDgG','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','yxbWzw5KrMLSzq','zw5JB2rPBMC','C2L6zq','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','lMnVBq','zgvSzxrLrMLSzq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','B3bLCMf0Aw9UsgLZDg9YEq','ndq0ntaWnxfIBfLjwa','ywXSB3DLzev4DgvUC2LVBNm','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','D3jPDgvgAwXL','AxntEw1IB2XPy0XPBMS','zMLSzxn5CW','Bw9Kzq','CgfYC2vqyxjHBwv0zxjZ','AxnbCNjHEq','ywn0Aw9UCW','DgLTzw91Da','igj5DgvZ','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','AxnbyNnVBhv0zq','v3jVDguG','D3jPDgu','CMvHzezPBgu','Bg9N','CMf3q29UDgvUDa','BwTKAxi','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','CMvHC29U','y29WEq','Dhj1zq','C291CMnLugf0Aa','rMfPBgvKihrVigrLBgv0zsbMAwXLia','CMvZB2X2zvbHDgG','ihrVia','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','Cgf0Aa','rgvSzxrLzca','DhLWzq','BM93','zMLSDgvY','ywrKvg9iAxn0B3j5','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','ywXSB3DLzerPCMvJDg9YAwvZ','zgvZDc1WyxrO','BgLZDerPCMvJDg9YEq','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','ywnJzxnZ','CMvHza','AxneAxjLy3rVCNK','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y3DK','zxHPC3rZ','yNL0zuXLBMD0Aa','rMfPBgvKihrVignVChKG','lMjHy2T1Cc0','Dg9mB3DLCKnHC2u','BgLZDa','ywXSB3DLza','qxbWzw5KzwqG','y3jLyxrLuMvSyxrPDMvqyxrO','AxngAwXL','yxjYyxK','rMfPBgvKihrVig1VDMuG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','y3jLyxrLrgLYzwn0B3j5','AxnbC3LUyW','qwn0Aw9Uia','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','zMLSzs1WyxrO','CM91BMq','Aw5JBhvKzxm','tufyx0zjtevFu0LArq','y3jLyxrLrgLYCW','oti2nZuZmunmCffNDW','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','tgLZDgvKia','mtC4mdGWA3zYvKrS','B2jQzwn0','oIb0ExbLigLZihjLCxvPCMvK','yxr0CMLIDxrLCW','yMXVy2TLzev4DgvUC2LVBNm','BgvUz3rO','lMrLBgv0zwqTyMfJA3vWlq','zgvZDfbHDgG','rMfPBgvKihrVihjLywqGzMLSzsa','Dg9ju09tDhjPBMC','BwvZC2fNzq','AM9PBG','zxH0BMfTzq','C3rYAw5N','mtuYmZy0mtzgrfHPywW','z2v0v29YA2LUz0rPCMvJDg9YEq','C2XPy2u','y29WEuzPBgu','ru5pru5u','igj5DgvZihrVia','y29UDgvUDa','uMv0CMLLDMvKihn0yxrZigzVCIa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','Bw92zq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zMLSzq','DMfSAwrHDgvxCML0zufJy2vZCW','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','CMvUyw1L','CMvZB2X2zq','DMfSAwrHDgvszwfKqwnJzxnZ','DxrMoa','igrVzxmGBM90igv4Axn0','CMvHzgrPCG','CgfYC2vbDhrYAwj1DgvZ','BwfW','icHIywnRDxaGy3jLyxrLzcK','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','y3jLyxrLlwrPCG','vw5RBM93BIbHy3rPB24GDhLWztOG','ChvZAa','y3jLyxrLlwrPCNm','z2v0ugfYyw1LDgvYu2nOzw1H'];a0_0x465f=function(){return _0x588c7a;};return a0_0x465f();}export default FileSystemTool;
1
+ const a0_0x113996=a0_0x4b6e;function a0_0x35e3(){const _0x4256e5=['Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','Dg9ju09tDhjPBMC','BMfTzq','zgLYzwn0B3j5','BwvZC2fNzq','lNnJCG','DhjPBq','mJC0DgPxvK9R','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','Dw5SAw5R','Bw92zq','q29WAwvKia','C291CMnLugf0Aa','C3vJy2vZCW','z2v0t3bLCMf0Aw9UsgLZDg9YEq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','B3v0Chv0lxbHDgG','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','tgLZDgvKia','qwn0Aw9Uia','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','BwTKAxi','odq0mM5dAen5vG','zxHPC3rZ','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','tufyx0zjtevFu0LArq','ihrVia','Dhj1zq','D3jPDgvgAwXL','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','zMLSzq','C3rHDhm','y3DK','yxr0CMLIDxrLCW','CgfYC2vqyxjHBwv0zxjZ','z2v0rgvZy3jPChrPB24','rgvSzxrLzca','mtmWmdK3mevvEunrwG','zgvZDc1WyxrO','igj5DgvZicHTyxGG','ywXSB3DLzev4DgvUC2LVBNm','rMfPBgvKihrVigrLBgv0zsbMAwXLia','ChvZAa','BM93','y3jLyxrLlwrPCG','CMvHC29U','q29UDgvUDcb0B28GBgfYz2u6ia','CMf3q29UDgvUDa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','CMvHza','C2L6zq','BwfW','DMfSAwrHDgvqyxrOqwnJzxnZ','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','Aw5JBhvKzxm','ywn0Aw9UCW','lMnTza','Cgf0Aa','mtG0mLjQDwfhAa','z2v0rMLSzvn0yxrZ','B3bLCMf0Aw9UsgLZDg9YEq','igj5DgvZigzYB20G','AxneAxjLy3rVCNK','mtbpuxnvA0u','v3jPDguGywnJzxnZigrLBMLLzdOG','Bwf4rMLSzvnPEMu','yxbWzw5Kvg9gAwXL','DMfSAwrHDgvxCML0zufJy2vZCW','nZy2ntLWwMvKAgO','ywrKvg9iAxn0B3j5','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24klsbcywnRDxaGy3jLyxrLzcbMB3iGzgvZDhj1y3rPDMuGB3bLCMf0Aw9UCWOkru5dt0rjtKCGu1vque9svdOklsb1Dgy4icHKzwzHDwX0kqOTigfZy2LPcI0GyMfZzty0cI0GyMLUyxj5cI0GAgv4cIaGica','C3rYAw5N','mtm3nJvithvZtNi','uMvHzca','odaWovjNDg1cvW','BxrPBwu','DgLTzw91Da','zgvZDfbHDgG','zMLSzxn5CW','uMvHzcbHy2nLC3mGzgvUAwvKoIa','C3vIC3rYAw5N','igfJy2vZCYbKzw5Pzwq6ia','y3jLyxrLrgLYCW','y29WEq','qxbWzw5KzwqG','y29WEuzPBgu','ywXSB3DLza','uMv0CMLLDMvKihn0yxrZigzVCIa','C3rHDa','C3rYAw5NAwz5','zw5JB2rPBMC','CMvHzezPBgu','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','BgLZDa','z2v0v29YA2LUz0rPCMvJDg9YEq','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcKnssvrjq0fmoIbcB3rOifHntcbHBMqGsLnptIbMB3jTyxrZigfYzsbMDwXSEsbZDxbWB3j0zwqUifDOzw4GDxnPBMCGwe1migzVCM1HDcWGy29TBwfUzhmGyxjLigf1Dg9TyxrPy2fSBhKGy29UDMvYDgvKihrVihrOzsbHChbYB3bYAwf0zsbZDhj1y3r1CMuGAw50zxjUywXSEsaTihLVDsbKB24NDcbUzwvKihrVig1HBNvHBgX5ihDYyxaGDgHLBsbPBIbHBIbHy3rPB25ZigfYCMf5lGOkvvnbr0uGlsbuv08GrK9stufuuYbtvvbqt1juruq6cGPgt1jnqvqGmsaTifHntcbtvfLmrsaOuMvJB21Tzw5KzwqPoGPBDg9VBcbPzd0IzMLSzxn5C3rLBsjDcJXYzwfKigzPBguTCgf0Ad0IC3jJl2LUzgv4lMPZiIaVpGO8D3jPDguGB3v0Chv0lxbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cMnVBNn0iej1DhrVBIa9icGPid0+ihSkicbYzxr1CM4Gpgj1DhrVBJ5dBgLJAYbTztWVyNv0Dg9UpJSkFtSkzxHWB3j0igrLzMf1BhqGqNv0Dg9UoWO8l3DYAxrLpGPBl3rVB2XDcGPgt1jnqvqGmIaTiePtt04Gu1rzteu6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiSiaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWGcIaGicaGicjVDxrWDxrqyxrOiJOGiNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYiScIaGicaGicjJB250zw50iJOGiMnVBNn0iej1DhrVBIa9icGPid0+ihSGCMv0DxjUidXIDxr0B24+q2XPy2SGBwu8l2j1DhrVBJ47ih07iGOGicaGFqOGif0kFqPGygakcKLnue9svefovdOGcI0GvxnLigvPDgHLCIbMB3jTyxqGy29UC2LZDgvUDgX5lIbeBYbot1qGBwL4igzVCM1HDhmGAw4GysbZAw5NBguGy29TBwfUzc4klsbytuWGzM9YBwf0igLZihjLy29TBwvUzgvKigzVCIbZAw5NBguGB3bLCMf0Aw9UCYbHBMqGyMv0DgvYihjLywrHyMLSAxr5cI0GsLnptIbMB3jTyxqGAxmGCMvJB21Tzw5KzwqGzM9YignVBxbSzxGGBxvSDgKTywn0Aw9Uig9WzxjHDgLVBNmklsbcB3rOigzVCM1HDhmGD29YAYbLCxvHBgX5ihDLBgWGyw5KihbYB2r1y2uGDgHLihnHBwuGCMvZDwX0CWOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZcI0GD3jPDgu6ifDYAxrLignVBNrLBNqGDg8GzMLSzqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzqOTigrLBgv0ztOGrgvSzxrLigeGzMLSzqOTignVChK6ienVChKGzMLSzsbMCM9TihnVDxjJzsb0BYbKzxn0Aw5HDgLVBGOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguklsbJCMvHDguTzgLYoIbdCMvHDguGzgLYzwn0B3j5cI0GBgLZDdOGtgLZDcbKAxjLy3rVCNKGy29UDgvUDhmklsbLEgLZDhm6ienOzwnRigLMigzPBguVzgLYzwn0B3j5igv4Axn0CWOTihn0yxrZoIbhzxqGzMLSzs9KAxjLy3rVCNKGBwv0ywrHDgekcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8GCMvHzaOTig91Dhb1Dc1WyxrOoIbqyxrOihDOzxjLihrVihDYAxrLl2nYzwf0zsbMAwXLcI0GC291CMnLlxbHDgG6ifnVDxjJzsbWyxrOigzVCIbJB3b5l21VDMuGB3bLCMf0Aw9UCWOTigrLC3qTCgf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbKAxjLy3rVCNKGB3bLCMf0Aw9UCWOTignVBNrLBNq6ienVBNrLBNqGDg8GD3jPDguVyxbWzw5KcI0Gzw5JB2rPBMC6iezPBguGzw5JB2rPBMCGkgrLzMf1Bhq6ihv0zJGPcI0Gy3jLyxrLlwrPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOku0LnueXfiezjteuGq1jfqvrjt04GkfHntcbMB3jTyxqGlsbYzwnVBw1LBMrLzcK6cLT0B29SigLKpsjMAwXLC3LZDgvTiL0kphDYAxrLig91Dhb1Dc1WyxrOpsjOzwXSBY5JiJ4ki2LUy2X1zguGphn0zgLVlMG+cGPPBNqGBwfPBIGPihSkicaGihbYAw50zIGIsgvSBg8SifDVCMXKivXUiIK7cIaGicbYzxr1CM4GmdSkFqO8l3DYAxrLpGPBl3rVB2XDcGPsrufesu5hiezjtevticHytuWGzM9YBwf0ktOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8CMvHzcbMAwXLlxbHDgG9iNbHy2THz2uUANnVBIiGlZ4kwY90B29SxqOktvvmveLqteuGt1bfuKfusu9ouYaOsLnptIbMB3jTyxqGCMvJB21Tzw5KzwqPoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWkicaGicaGiM91Dhb1DfbHDgGIoIaIC3jJl2jHy2T1Cc5QCYiScIaGicaGicjJB250zw50iJOGiI8ViejHy2T1CcbMAwXLxg5JB25ZB2XLlMXVzYGNyMfJA3vWjYK7iGOGicaGFqOGif0kFqPGygakcK9usevsifHntcbfwefnueXfuZOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8y29WEsbZB3vYy2uTCgf0Ad0IDgvTCgXHDguUANmIigrLC3qTCgf0Ad0IC3jJl2nVBxbVBMvUDc5QCYiGlZ4kpgnYzwf0zs1KAxiGzgLYzwn0B3j5psjZCMmVy29TCg9Uzw50CY91AsiGlZ4kpgXPC3qGzgLYzwn0B3j5psjZCMmIic8+cLSVDg9VBf0kcLnfq1vssvrzoGOTie9WzxjHDgLVBNmGCMvZDhjPy3rLzcb0BYbWCM9Qzwn0igrPCMvJDg9YEqOTiezPBguGC2L6zsbSAw1PDhmGzw5MB3jJzwqGkg1HEca','nta0offOz3LvEq','zMLSzs1WyxrO','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','zgvSzxrL','zxH0BMfTzq','Bw9Kzq','ywXSB3DLzerPCMvJDg9YAwvZ','zgvSzxrLrMLSzq','AM9PBG','AxnbyNnVBhv0zq','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','CMvUyw1L','yMXVy2TLzev4DgvUC2LVBNm','y3jLyxrLlwrPCNm','D3jPDgu','yxjYyxK','B3v0Chv0ugf0Aa','B2jQzwn0','AxnbC3LUyW','DhLWzq','ody0mZKWmvDzu0XmrG','lMjHy2T1Cc0','q3jLyxrLzcbKAxjLy3rVCNKG','AxnbCNjHEq','DMfSAwrHDgvszwfKqwnJzxnZ','yxbWzw5K','zMLSzvbHDgG','rMLSzsb0B28GBgfYz2u6ia','y29UDgvUDa','AxntEw1IB2XPy0XPBMS','ywDLBNrjza','ntaZmtaWoe9XCwX0va','BgLZDerPCMvJDg9YEq','BgvUz3rO','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','CMvXDwLYzxnqCM9Qzwn0','v3jVDguG','y3jLyxrLuMvSyxrPDMvqyxrO','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','CMvZB2X2zvbHDgG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','Bg9N','zgLYBMfTzq','y3jLyxrLrgLYzwn0B3j5'];a0_0x35e3=function(){return _0x4256e5;};return a0_0x35e3();}(function(_0x3eb346,_0x59ed13){const _0x33df45=a0_0x4b6e,_0x402e42=_0x3eb346();while(!![]){try{const _0x257c8d=-parseInt(_0x33df45(0x1c9))/0x1*(-parseInt(_0x33df45(0x214))/0x2)+-parseInt(_0x33df45(0x1c3))/0x3+-parseInt(_0x33df45(0x1fe))/0x4+parseInt(_0x33df45(0x1c7))/0x5*(-parseInt(_0x33df45(0x1b9))/0x6)+parseInt(_0x33df45(0x1f3))/0x7+-parseInt(_0x33df45(0x1df))/0x8*(-parseInt(_0x33df45(0x194))/0x9)+parseInt(_0x33df45(0x1be))/0xa*(-parseInt(_0x33df45(0x1a3))/0xb);if(_0x257c8d===_0x59ed13)break;else _0x402e42['push'](_0x402e42['shift']());}catch(_0x4caa7d){_0x402e42['push'](_0x402e42['shift']());}}}(a0_0x35e3,0xa5558));import{BaseTool}from'./baseTool.js';import a0_0x3165b0 from'../utilities/tagParser.js';import a0_0x579188 from'../utilities/directoryAccessManager.js';import a0_0x3803da from'fs/promises';function a0_0x4b6e(_0x1805ad,_0x3ac1b1){_0x1805ad=_0x1805ad-0x186;const _0x35e326=a0_0x35e3();let _0x4b6e5a=_0x35e326[_0x1805ad];if(a0_0x4b6e['KuiisX']===undefined){var _0x2889e9=function(_0x4ea08f){const _0x4cc318='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3165b0='',_0x579188='';for(let _0x3803da=0x0,_0xd7c609,_0x4e450b,_0x48c8bc=0x0;_0x4e450b=_0x4ea08f['charAt'](_0x48c8bc++);~_0x4e450b&&(_0xd7c609=_0x3803da%0x4?_0xd7c609*0x40+_0x4e450b:_0x4e450b,_0x3803da++%0x4)?_0x3165b0+=String['fromCharCode'](0xff&_0xd7c609>>(-0x2*_0x3803da&0x6)):0x0){_0x4e450b=_0x4cc318['indexOf'](_0x4e450b);}for(let _0x36add7=0x0,_0x4c0c09=_0x3165b0['length'];_0x36add7<_0x4c0c09;_0x36add7++){_0x579188+='%'+('00'+_0x3165b0['charCodeAt'](_0x36add7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x579188);};a0_0x4b6e['SYFKio']=_0x2889e9,a0_0x4b6e['MhWSZt']={},a0_0x4b6e['KuiisX']=!![];}const _0x5a9ad9=_0x35e326[0x0],_0x126e4f=_0x1805ad+_0x5a9ad9,_0x5b33e0=a0_0x4b6e['MhWSZt'][_0x126e4f];return!_0x5b33e0?(_0x4b6e5a=a0_0x4b6e['SYFKio'](_0x4b6e5a),a0_0x4b6e['MhWSZt'][_0x126e4f]=_0x4b6e5a):_0x4b6e5a=_0x5b33e0,_0x4b6e5a;}import a0_0xd7c609 from'path';import a0_0x4e450b from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x48c8bc={},_0x36add7=null){const _0x22c02b=a0_0x4b6e;super(_0x48c8bc,_0x36add7),this[_0x22c02b(0x203)]=!![],this[_0x22c02b(0x1f1)]=![],this[_0x22c02b(0x1cb)]=_0x48c8bc[_0x22c02b(0x1cb)]||0x7530,this[_0x22c02b(0x20c)]=_0x48c8bc['maxConcurrentOperations']||0x5,this['maxFileSize']=_0x48c8bc['maxFileSize']||SYSTEM_DEFAULTS[_0x22c02b(0x197)],this['allowedExtensions']=_0x48c8bc['allowedExtensions']||null,this['blockedExtensions']=_0x48c8bc['blockedExtensions']||['.exe','.bat',_0x22c02b(0x1b7),_0x22c02b(0x212),'.com'],this['allowedDirectories']=_0x48c8bc[_0x22c02b(0x1e5)]||null,this['operationHistory']=[],this['directoryAccessManager']=new a0_0x579188(_0x48c8bc,_0x36add7);}[a0_0x113996(0x1a1)](){const _0x3f5568=a0_0x113996;return _0x3f5568(0x1de)+Math['round'](this[_0x3f5568(0x1c0)]/0x400/0x400)+_0x3f5568(0x1c5);}[a0_0x113996(0x1a0)](_0x4c0c09){const _0x2a9ddf=a0_0x113996;try{const _0x2829b8={},_0x225cc2=[];this['logger']?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x4c0c09[_0x2a9ddf(0x200)],'contentPreview':_0x4c0c09[_0x2a9ddf(0x1cf)](0x0,0xc8)});const _0x3790c7=[_0x2a9ddf(0x1af),'delete',_0x2a9ddf(0x1d2),_0x2a9ddf(0x188),'create-dir',_0x2a9ddf(0x1dc),'exists',_0x2a9ddf(0x19d),_0x2a9ddf(0x1f8)];for(const _0x43c71e of _0x3790c7){const _0x4fc826=a0_0x3165b0['extractTagsWithAttributes'](_0x4c0c09,_0x43c71e);for(const _0x47eac9 of _0x4fc826){const _0xeebc42={'type':_0x43c71e,..._0x47eac9[_0x2a9ddf(0x19f)]};_0xeebc42[_0x2a9ddf(0x1e0)]&&(_0xeebc42['filePath']=_0xeebc42['file-path'],delete _0xeebc42[_0x2a9ddf(0x1e0)]),_0xeebc42['output-path']&&(_0xeebc42['outputPath']=_0xeebc42[_0x2a9ddf(0x18e)],delete _0xeebc42[_0x2a9ddf(0x18e)]),_0xeebc42['source-path']&&(_0xeebc42[_0x2a9ddf(0x18a)]=_0xeebc42['source-path'],delete _0xeebc42['source-path']),_0xeebc42['dest-path']&&(_0xeebc42[_0x2a9ddf(0x1cc)]=_0xeebc42['dest-path'],delete _0xeebc42[_0x2a9ddf(0x1a4)]),_0xeebc42[_0x2a9ddf(0x1ec)]&&(_0xeebc42['createDirs']=_0xeebc42[_0x2a9ddf(0x1ec)]===_0x2a9ddf(0x199),delete _0xeebc42[_0x2a9ddf(0x1ec)]),_0x225cc2['push'](_0xeebc42);}}const _0x3d13fe=_0x4c0c09['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x43ebf9 of _0x3d13fe){const _0x12a6c8=new a0_0x3165b0(),_0x421a18=_0x12a6c8['parseAttributes'](_0x43ebf9[0x1]),_0x324d4b=_0x43ebf9[0x2]['trim'](),_0x4d858a={'type':'write','content':_0x324d4b,..._0x421a18};_0x4d858a['output-path']&&(_0x4d858a['outputPath']=_0x4d858a[_0x2a9ddf(0x18e)],delete _0x4d858a['output-path']),_0x4d858a[_0x2a9ddf(0x1ec)]&&(_0x4d858a['createDirs']=_0x4d858a['create-dirs']==='true',delete _0x4d858a['create-dirs']),_0x225cc2['push'](_0x4d858a);}const _0x617dd2=_0x4c0c09['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x99ec64 of _0x617dd2){const _0x272e71=new a0_0x3165b0(),_0x437be2=_0x272e71['parseAttributes'](_0x99ec64[0x1]),_0x366fe3=_0x99ec64[0x2][_0x2a9ddf(0x213)](),_0x18774e={'type':'append','content':_0x366fe3,..._0x437be2};_0x18774e['file-path']&&(_0x18774e[_0x2a9ddf(0x1f9)]=_0x18774e[_0x2a9ddf(0x1e0)],delete _0x18774e[_0x2a9ddf(0x1e0)]),_0x225cc2[_0x2a9ddf(0x1a8)](_0x18774e);}return _0x2829b8[_0x2a9ddf(0x1b6)]=_0x225cc2,_0x2829b8[_0x2a9ddf(0x1ad)]=_0x4c0c09['trim'](),this['logger']?.['debug']('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0x225cc2['length'],'actionTypes':_0x225cc2[_0x2a9ddf(0x1b1)](_0x2b6d3c=>_0x2b6d3c[_0x2a9ddf(0x1f2)]),'actions':_0x225cc2[_0x2a9ddf(0x1b1)](_0x443da9=>({'type':_0x443da9['type'],'filePath':_0x443da9[_0x2a9ddf(0x1f9)],'outputPath':_0x443da9['outputPath'],'hasContent':!!_0x443da9[_0x2a9ddf(0x1fb)]}))}),_0x2829b8;}catch(_0x39144f){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x39144f['message']);}}['getRequiredParameters'](){const _0x5f5166=a0_0x113996;return[_0x5f5166(0x1b6)];}['customValidateParameters'](_0x22df01){const _0x2f63b3=a0_0x113996,_0x25afba=[];if(!_0x22df01[_0x2f63b3(0x1b6)]||!Array['isArray'](_0x22df01[_0x2f63b3(0x1b6)])||_0x22df01['actions'][_0x2f63b3(0x200)]===0x0)_0x25afba[_0x2f63b3(0x1a8)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x184391,_0x41333c]of _0x22df01[_0x2f63b3(0x1b6)]['entries']()){if(!_0x41333c[_0x2f63b3(0x1f2)]){_0x25afba['push']('Action\x20'+(_0x184391+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x41333c['type']){case _0x2f63b3(0x1af):case'delete':case _0x2f63b3(0x195):case _0x2f63b3(0x19d):!_0x41333c['filePath']&&_0x25afba['push']('Action\x20'+(_0x184391+0x1)+_0x2f63b3(0x202)+_0x41333c['type']);break;case _0x2f63b3(0x1ed):!_0x41333c[_0x2f63b3(0x1ef)]&&_0x25afba['push']('Action\x20'+(_0x184391+0x1)+_0x2f63b3(0x20d));!_0x41333c[_0x2f63b3(0x1fb)]&&_0x41333c[_0x2f63b3(0x1fb)]!==''&&_0x25afba[_0x2f63b3(0x1a8)]('Action\x20'+(_0x184391+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x41333c['filePath']&&_0x25afba['push'](_0x2f63b3(0x191)+(_0x184391+0x1)+_0x2f63b3(0x18d));!_0x41333c['content']&&_0x41333c[_0x2f63b3(0x1fb)]!==''&&_0x25afba['push'](_0x2f63b3(0x191)+(_0x184391+0x1)+_0x2f63b3(0x18f));break;case _0x2f63b3(0x1d2):case'move':!_0x41333c[_0x2f63b3(0x18a)]&&_0x25afba[_0x2f63b3(0x1a8)]('Action\x20'+(_0x184391+0x1)+_0x2f63b3(0x1b3)+_0x41333c[_0x2f63b3(0x1f2)]);!_0x41333c['destPath']&&_0x25afba[_0x2f63b3(0x1a8)](_0x2f63b3(0x191)+(_0x184391+0x1)+_0x2f63b3(0x186)+_0x41333c['type']);break;case'create-dir':case _0x2f63b3(0x1dc):!_0x41333c[_0x2f63b3(0x210)]&&_0x25afba[_0x2f63b3(0x1a8)]('Action\x20'+(_0x184391+0x1)+_0x2f63b3(0x1e9)+_0x41333c[_0x2f63b3(0x1f2)]);break;default:_0x25afba[_0x2f63b3(0x1a8)](_0x2f63b3(0x191)+(_0x184391+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x41333c['type']);}_0x41333c['filePath']&&!this['isAllowedFileExtension'](_0x41333c['filePath'])&&_0x25afba[_0x2f63b3(0x1a8)]('Action\x20'+(_0x184391+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0xd7c609[_0x2f63b3(0x1e3)](_0x41333c['filePath'])),_0x41333c[_0x2f63b3(0x1ef)]&&!this['isAllowedFileExtension'](_0x41333c['outputPath'])&&_0x25afba[_0x2f63b3(0x1a8)](_0x2f63b3(0x191)+(_0x184391+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0xd7c609['extname'](_0x41333c['outputPath']));}return{'valid':_0x25afba['length']===0x0,'errors':_0x25afba};}async['execute'](_0x3b1e12,_0x41d1ef){const _0x3c8b19=a0_0x113996;if(!_0x3b1e12||typeof _0x3b1e12!==_0x3c8b19(0x1f0))throw new Error(_0x3c8b19(0x196));const {actions:_0x3f943b}=_0x3b1e12;if(!_0x3f943b)throw new Error(_0x3c8b19(0x1e1)+JSON[_0x3c8b19(0x1d8)](Object['keys'](_0x3b1e12)));if(!Array[_0x3c8b19(0x1f6)](_0x3f943b))throw new Error(_0x3c8b19(0x208)+typeof _0x3f943b);if(_0x3f943b['length']===0x0)throw new Error(_0x3c8b19(0x201));const {projectDir:_0x516b7b,agentId:_0x19a1a6,directoryAccess:_0x3043d9}=_0x41d1ef,_0x413222=_0x3043d9||this[_0x3c8b19(0x1ae)][_0x3c8b19(0x1b4)]({'workingDirectory':_0x516b7b||process[_0x3c8b19(0x19e)](),'writeEnabledDirectories':[_0x516b7b||process[_0x3c8b19(0x19e)]()],'restrictToProject':!![]});_0x3043d9&&_0x3043d9['workingDirectory']?(console['log'](_0x3c8b19(0x206),_0x3043d9['workingDirectory']),console['log']('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x3043d9,null,0x2))):(console[_0x3c8b19(0x209)]('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x516b7b||process[_0x3c8b19(0x19e)]()),console[_0x3c8b19(0x209)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x3043d9),console[_0x3c8b19(0x209)]('FileSystem\x20DEBUG:\x20projectDir\x20is:',_0x516b7b));const _0x1832c1=[];for(const _0x20d892 of _0x3f943b){try{let _0x5fce7e;switch(_0x20d892['type']){case'read':_0x5fce7e=await this[_0x3c8b19(0x1da)](_0x20d892['filePath'],_0x413222,_0x20d892[_0x3c8b19(0x1d9)]);break;case'write':_0x5fce7e=await this['writeFile'](_0x20d892['outputPath'],_0x20d892['content'],_0x413222,{'encoding':_0x20d892['encoding'],'createDirs':_0x20d892[_0x3c8b19(0x1d1)]});break;case'append':_0x5fce7e=await this['appendToFile'](_0x20d892['filePath'],_0x20d892['content'],_0x413222,_0x20d892['encoding']);break;case _0x3c8b19(0x1e2):_0x5fce7e=await this[_0x3c8b19(0x1e6)](_0x20d892['filePath'],_0x413222);break;case'copy':_0x5fce7e=await this['copyFile'](_0x20d892['sourcePath'],_0x20d892['destPath'],_0x413222);break;case _0x3c8b19(0x188):_0x5fce7e=await this['moveFile'](_0x20d892[_0x3c8b19(0x18a)],_0x20d892['destPath'],_0x413222);break;case _0x3c8b19(0x1aa):_0x5fce7e=await this['createDirectory'](_0x20d892['directory'],_0x413222);break;case _0x3c8b19(0x1dc):_0x5fce7e=await this[_0x3c8b19(0x1ff)](_0x20d892['directory'],_0x413222);break;case _0x3c8b19(0x195):_0x5fce7e=await this['checkExists'](_0x20d892[_0x3c8b19(0x1f9)],_0x413222);break;case'stats':_0x5fce7e=await this[_0x3c8b19(0x1ba)](_0x20d892[_0x3c8b19(0x1f9)],_0x413222);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x20d892[_0x3c8b19(0x1f2)]);}_0x1832c1['push'](_0x5fce7e),this['addToHistory'](_0x20d892,_0x5fce7e,_0x41d1ef['agentId']);}catch(_0x47cc4c){const _0x48d347={'success':![],'action':_0x20d892[_0x3c8b19(0x1f2)],'error':_0x47cc4c[_0x3c8b19(0x211)],'filePath':_0x20d892['filePath']||_0x20d892[_0x3c8b19(0x1ef)]||_0x20d892['directory']};_0x1832c1[_0x3c8b19(0x1a8)](_0x48d347),this[_0x3c8b19(0x1c4)](_0x20d892,_0x48d347,_0x41d1ef['agentId']);}}return{'success':!![],'actions':_0x1832c1,'executedActions':_0x3f943b['length'],'toolUsed':_0x3c8b19(0x1cd)};}async['readFile'](_0x72f02c,_0x1d4296,_0x22aef6='utf8'){const _0x5e89d7=a0_0x113996,_0x56d66a=this[_0x5e89d7(0x1ae)]['getWorkingDirectory'](_0x1d4296),_0x46f029=this['resolvePath'](_0x72f02c,_0x56d66a),_0x327f89=this[_0x5e89d7(0x1ae)]['validateReadAccess'](_0x46f029,_0x1d4296);if(!_0x327f89[_0x5e89d7(0x1d5)])throw new Error(_0x5e89d7(0x1ce)+_0x327f89[_0x5e89d7(0x1ab)]+'\x20('+_0x327f89[_0x5e89d7(0x1b8)]+')');try{const _0x43f1f2=await a0_0x3803da['stat'](_0x46f029);if(_0x43f1f2[_0x5e89d7(0x1b0)]>this[_0x5e89d7(0x1c0)])throw new Error(_0x5e89d7(0x1fa)+_0x43f1f2[_0x5e89d7(0x1b0)]+_0x5e89d7(0x1a5)+this[_0x5e89d7(0x1c0)]+')');const _0x1861e1=await a0_0x3803da[_0x5e89d7(0x1da)](_0x46f029,_0x22aef6);return{'success':!![],'action':'read','filePath':this[_0x5e89d7(0x1ae)]['createRelativePath'](_0x46f029,_0x1d4296),'content':_0x1861e1,'size':_0x43f1f2['size'],'encoding':_0x22aef6,'lastModified':_0x43f1f2[_0x5e89d7(0x1ca)][_0x5e89d7(0x20e)](),'message':_0x5e89d7(0x1c8)+_0x43f1f2['size']+_0x5e89d7(0x1bc)+_0x72f02c};}catch(_0x1c9138){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x72f02c+':\x20'+_0x1c9138[_0x5e89d7(0x211)]);}}async[a0_0x113996(0x19a)](_0x3587eb,_0x5164a7,_0x52026e,_0x5dbccf={}){const _0x57c360=a0_0x113996,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x5dbccf,_0x24e107=this[_0x57c360(0x1ae)]['getWorkingDirectory'](_0x52026e),_0x49099c=this[_0x57c360(0x207)](_0x3587eb,_0x24e107),_0x11213d=this[_0x57c360(0x1ae)][_0x57c360(0x1c2)](_0x49099c,_0x52026e);if(!_0x11213d['allowed'])throw new Error(_0x57c360(0x1bf)+_0x11213d['reason']+'\x20('+_0x11213d['path']+')');try{const _0x559b72=Buffer['byteLength'](_0x5164a7,encoding);if(_0x559b72>this['maxFileSize'])throw new Error(_0x57c360(0x1ac)+_0x559b72+_0x57c360(0x1a5)+this[_0x57c360(0x1c0)]+')');if(createDirs){const _0xe366d3=a0_0xd7c609['dirname'](_0x49099c);await a0_0x3803da['mkdir'](_0xe366d3,{'recursive':!![]});}let _0x292d2d=null;try{await a0_0x3803da['access'](_0x49099c),_0x292d2d=_0x49099c+_0x57c360(0x1f4)+Date[_0x57c360(0x1a9)](),await a0_0x3803da[_0x57c360(0x1d4)](_0x49099c,_0x292d2d);}catch{}await a0_0x3803da['writeFile'](_0x49099c,_0x5164a7,encoding);const _0x4ccaa8=await a0_0x3803da['stat'](_0x49099c),_0x72ab8c=this[_0x57c360(0x1ae)][_0x57c360(0x205)](_0x49099c,_0x52026e);return{'success':!![],'action':'write','outputPath':_0x72ab8c,'fullPath':_0x49099c,'size':_0x4ccaa8['size'],'encoding':encoding,'backupPath':_0x292d2d?this[_0x57c360(0x1ae)][_0x57c360(0x205)](_0x292d2d,_0x52026e):null,'backupFullPath':_0x292d2d||null,'message':_0x57c360(0x204)+_0x4ccaa8['size']+'\x20bytes\x20to\x20'+_0x49099c};}catch(_0x57bef4){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x49099c+':\x20'+_0x57bef4[_0x57c360(0x211)]);}}async[a0_0x113996(0x1c1)](_0x1c7de8,_0x2cbd83,_0x37ec34,_0x203410='utf8'){const _0x2f45e6=a0_0x113996,_0x50aa55=this[_0x2f45e6(0x1ae)]['getWorkingDirectory'](_0x37ec34),_0x27a8da=this[_0x2f45e6(0x207)](_0x1c7de8,_0x50aa55),_0x257b62=this[_0x2f45e6(0x1ae)][_0x2f45e6(0x1c2)](_0x27a8da,_0x37ec34);if(!_0x257b62['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x257b62[_0x2f45e6(0x1ab)]+'\x20('+_0x257b62['path']+')');try{let _0x4b5f26=0x0;try{const _0x11897c=await a0_0x3803da[_0x2f45e6(0x1d7)](_0x27a8da);_0x4b5f26=_0x11897c['size'];}catch{}const _0x2263cc=Buffer['byteLength'](_0x2cbd83,_0x203410);if(_0x4b5f26+_0x2263cc>this[_0x2f45e6(0x1c0)])throw new Error(_0x2f45e6(0x1db)+(_0x4b5f26+_0x2263cc)+_0x2f45e6(0x1a5)+this['maxFileSize']+')');await a0_0x3803da['appendFile'](_0x27a8da,_0x2cbd83,_0x203410);const _0x27541b=await a0_0x3803da['stat'](_0x27a8da),_0x3b03dc=this[_0x2f45e6(0x1ae)]['createRelativePath'](_0x27a8da,_0x37ec34);return{'success':!![],'action':'append','filePath':_0x3b03dc,'fullPath':_0x27a8da,'appendedBytes':_0x2263cc,'totalSize':_0x27541b[_0x2f45e6(0x1b0)],'encoding':_0x203410,'message':_0x2f45e6(0x1d3)+_0x2263cc+'\x20bytes\x20to\x20'+_0x27a8da};}catch(_0x4888f2){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x27a8da+':\x20'+_0x4888f2['message']);}}async['deleteFile'](_0x34e4d2,_0xa3750e){const _0xd532d3=a0_0x113996,_0x3de945=this[_0xd532d3(0x1ae)]['getWorkingDirectory'](_0xa3750e),_0x5ad016=this[_0xd532d3(0x207)](_0x34e4d2,_0x3de945),_0x439bc4=this['directoryAccessManager'][_0xd532d3(0x1c2)](_0x5ad016,_0xa3750e);if(!_0x439bc4['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x439bc4[_0xd532d3(0x1ab)]+'\x20('+_0x439bc4['path']+')');try{const _0xcabb7c=await a0_0x3803da['stat'](_0x5ad016),_0x119425=_0x5ad016+'.deleted-backup-'+Date[_0xd532d3(0x1a9)]();await a0_0x3803da['copyFile'](_0x5ad016,_0x119425),await a0_0x3803da[_0xd532d3(0x187)](_0x5ad016);const _0x46dba9=this[_0xd532d3(0x1ae)][_0xd532d3(0x205)](_0x5ad016,_0xa3750e),_0x5e42b3=this['directoryAccessManager'][_0xd532d3(0x205)](_0x119425,_0xa3750e);return{'success':!![],'action':'delete','filePath':_0x46dba9,'fullPath':_0x5ad016,'size':_0xcabb7c['size'],'backupPath':_0x5e42b3,'backupFullPath':_0x119425,'message':_0xd532d3(0x1a2)+_0x5ad016+'\x20(backup\x20created)'};}catch(_0x25eeae){throw new Error(_0xd532d3(0x1a7)+_0x5ad016+':\x20'+_0x25eeae[_0xd532d3(0x211)]);}}async['copyFile'](_0x58e991,_0x54be25,_0x247d1c){const _0x574910=a0_0x113996,_0x34cedd=this['directoryAccessManager']['getWorkingDirectory'](_0x247d1c),_0x4872d3=this[_0x574910(0x207)](_0x58e991,_0x34cedd),_0xca5a61=this['resolvePath'](_0x54be25,_0x34cedd),_0x1b1644=this[_0x574910(0x1ae)]['validateReadAccess'](_0x4872d3,_0x247d1c);if(!_0x1b1644['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x1b1644[_0x574910(0x1ab)]+'\x20('+_0x1b1644[_0x574910(0x1b8)]+')');const _0x2701b9=this['directoryAccessManager'][_0x574910(0x1c2)](_0xca5a61,_0x247d1c);if(!_0x2701b9[_0x574910(0x1d5)])throw new Error(_0x574910(0x192)+_0x2701b9['reason']+'\x20('+_0x2701b9['path']+')');try{const _0x4996ae=await a0_0x3803da['stat'](_0x4872d3);if(_0x4996ae[_0x574910(0x1b0)]>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x4996ae['size']+'\x20bytes');const _0x36202c=a0_0xd7c609[_0x574910(0x20a)](_0xca5a61);await a0_0x3803da[_0x574910(0x193)](_0x36202c,{'recursive':!![]}),await a0_0x3803da[_0x574910(0x1d4)](_0x4872d3,_0xca5a61);const _0x525491=this[_0x574910(0x1ae)]['createRelativePath'](_0x4872d3,_0x247d1c),_0x509efb=this['directoryAccessManager']['createRelativePath'](_0xca5a61,_0x247d1c);return{'success':!![],'action':'copy','sourcePath':_0x525491,'destPath':_0x509efb,'sourceFullPath':_0x4872d3,'destFullPath':_0xca5a61,'size':_0x4996ae['size'],'message':_0x574910(0x189)+_0x4872d3+_0x574910(0x198)+_0xca5a61};}catch(_0x2f7146){throw new Error('Failed\x20to\x20copy\x20'+_0x4872d3+'\x20to\x20'+_0xca5a61+':\x20'+_0x2f7146[_0x574910(0x211)]);}}async['moveFile'](_0x503b5a,_0x5e04ee,_0x382650){const _0x25c8b9=a0_0x113996,_0x5a3dc8=this['directoryAccessManager']['getWorkingDirectory'](_0x382650),_0x2e9622=this[_0x25c8b9(0x207)](_0x503b5a,_0x5a3dc8),_0x58d78b=this['resolvePath'](_0x5e04ee,_0x5a3dc8),_0x5b9cd7=this[_0x25c8b9(0x1ae)]['validateReadAccess'](_0x2e9622,_0x382650);if(!_0x5b9cd7[_0x25c8b9(0x1d5)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x5b9cd7[_0x25c8b9(0x1ab)]+'\x20('+_0x5b9cd7['path']+')');const _0x4469c2=this[_0x25c8b9(0x1ae)]['validateWriteAccess'](_0x58d78b,_0x382650);if(!_0x4469c2[_0x25c8b9(0x1d5)])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x4469c2[_0x25c8b9(0x1ab)]+'\x20('+_0x4469c2[_0x25c8b9(0x1b8)]+')');try{const _0x455d6d=await a0_0x3803da[_0x25c8b9(0x1d7)](_0x2e9622),_0x13535d=a0_0xd7c609[_0x25c8b9(0x20a)](_0x58d78b);await a0_0x3803da['mkdir'](_0x13535d,{'recursive':!![]}),await a0_0x3803da[_0x25c8b9(0x1ea)](_0x2e9622,_0x58d78b);const _0x488a47=this[_0x25c8b9(0x1ae)][_0x25c8b9(0x205)](_0x2e9622,_0x382650),_0x29f750=this[_0x25c8b9(0x1ae)][_0x25c8b9(0x205)](_0x58d78b,_0x382650);return{'success':!![],'action':_0x25c8b9(0x188),'sourcePath':_0x488a47,'destPath':_0x29f750,'fullSourcePath':_0x2e9622,'fullDestPath':_0x58d78b,'size':_0x455d6d[_0x25c8b9(0x1b0)],'message':'Moved\x20'+_0x503b5a+_0x25c8b9(0x198)+_0x5e04ee};}catch(_0x5baf3a){throw new Error('Failed\x20to\x20move\x20'+_0x503b5a+_0x25c8b9(0x198)+_0x5e04ee+':\x20'+_0x5baf3a['message']);}}async[a0_0x113996(0x20b)](_0x21f6a7,_0x18a420){const _0x2bc770=a0_0x113996,_0x134677=this[_0x2bc770(0x1ae)]['getWorkingDirectory'](_0x18a420),_0x96628b=this[_0x2bc770(0x207)](_0x21f6a7,_0x134677),_0xdee1e0=this['directoryAccessManager']['validateWriteAccess'](_0x96628b,_0x18a420);if(!_0xdee1e0['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0xdee1e0['reason']+'\x20('+_0xdee1e0[_0x2bc770(0x1b8)]+')');try{await a0_0x3803da['mkdir'](_0x96628b,{'recursive':!![]});const _0x302340=this[_0x2bc770(0x1ae)]['createRelativePath'](_0x96628b,_0x18a420);return{'success':!![],'action':_0x2bc770(0x1aa),'directory':_0x302340,'fullPath':_0x96628b,'message':_0x2bc770(0x1f5)+_0x21f6a7};}catch(_0x474563){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x21f6a7+':\x20'+_0x474563[_0x2bc770(0x211)]);}}async['listDirectory'](_0x194bd8,_0x2332a7){const _0x33cd4f=a0_0x113996,_0x5bee21=this['directoryAccessManager'][_0x33cd4f(0x1dd)](_0x2332a7),_0x1a0093=this[_0x33cd4f(0x207)](_0x194bd8,_0x5bee21),_0x23301f=this[_0x33cd4f(0x1ae)][_0x33cd4f(0x1f7)](_0x1a0093,_0x2332a7);if(!_0x23301f[_0x33cd4f(0x1d5)])throw new Error(_0x33cd4f(0x1ce)+_0x23301f[_0x33cd4f(0x1ab)]+'\x20('+_0x23301f[_0x33cd4f(0x1b8)]+')');try{const _0x124558=await a0_0x3803da['readdir'](_0x1a0093,{'withFileTypes':!![]}),_0x1ec661=[];for(const _0x1bd1e1 of _0x124558){const _0x44b52d=a0_0xd7c609[_0x33cd4f(0x1e7)](_0x1a0093,_0x1bd1e1[_0x33cd4f(0x20f)]),_0x4555e0=await a0_0x3803da[_0x33cd4f(0x1d7)](_0x44b52d);_0x1ec661['push']({'name':_0x1bd1e1[_0x33cd4f(0x20f)],'type':_0x1bd1e1[_0x33cd4f(0x1bd)]()?'directory':_0x33cd4f(0x19c),'size':_0x1bd1e1['isFile']()?_0x4555e0[_0x33cd4f(0x1b0)]:undefined,'lastModified':_0x4555e0[_0x33cd4f(0x1ca)]['toISOString'](),'permissions':_0x4555e0['mode'],'isSymlink':_0x1bd1e1[_0x33cd4f(0x1fc)]()});}const _0x3a2c8c=this['directoryAccessManager']['createRelativePath'](_0x1a0093,_0x2332a7);return{'success':!![],'action':_0x33cd4f(0x1dc),'directory':_0x3a2c8c,'fullPath':_0x1a0093,'contents':_0x1ec661,'totalItems':_0x1ec661['length'],'directories':_0x1ec661['filter'](_0x4e1f39=>_0x4e1f39['type']===_0x33cd4f(0x210))[_0x33cd4f(0x200)],'files':_0x1ec661['filter'](_0x54c452=>_0x54c452['type']===_0x33cd4f(0x19c))['length'],'message':_0x33cd4f(0x190)+_0x1ec661['length']+'\x20items\x20in\x20'+_0x194bd8};}catch(_0x4dde0f){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x194bd8+':\x20'+_0x4dde0f[_0x33cd4f(0x211)]);}}async['checkExists'](_0x3bcbf7,_0x711a36){const _0x479b40=a0_0x113996,_0x899d1c=this[_0x479b40(0x1ae)][_0x479b40(0x1dd)](_0x711a36),_0x521cca=this['resolvePath'](_0x3bcbf7,_0x899d1c),_0x2f944e=this[_0x479b40(0x1ae)][_0x479b40(0x1f7)](_0x521cca,_0x711a36);if(!_0x2f944e['allowed'])throw new Error(_0x479b40(0x1ce)+_0x2f944e['reason']+'\x20('+_0x2f944e['path']+')');try{const _0x332dbd=await a0_0x3803da['stat'](_0x521cca),_0x2a6206=this['directoryAccessManager']['createRelativePath'](_0x521cca,_0x711a36);return{'success':!![],'action':'exists','filePath':_0x2a6206,'fullPath':_0x521cca,'exists':!![],'type':_0x332dbd[_0x479b40(0x1bd)]()?_0x479b40(0x210):_0x479b40(0x19c),'message':_0x3bcbf7+'\x20exists\x20as\x20'+(_0x332dbd[_0x479b40(0x1bd)]()?'directory':_0x479b40(0x19c))};}catch(_0x15e7b0){if(_0x15e7b0['code']==='ENOENT'){const _0x1a7731=this['directoryAccessManager']['createRelativePath'](_0x521cca,_0x711a36);return{'success':!![],'action':'exists','filePath':_0x1a7731,'fullPath':_0x521cca,'exists':![],'message':_0x3bcbf7+'\x20does\x20not\x20exist'};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x3bcbf7+':\x20'+_0x15e7b0[_0x479b40(0x211)]);}}async[a0_0x113996(0x1ba)](_0xfedeef,_0x122ec2){const _0x3f6747=a0_0x113996,_0xe9d84a=this['directoryAccessManager'][_0x3f6747(0x1dd)](_0x122ec2),_0x20927b=this[_0x3f6747(0x207)](_0xfedeef,_0xe9d84a),_0x4f58b5=this['directoryAccessManager'][_0x3f6747(0x1f7)](_0x20927b,_0x122ec2);if(!_0x4f58b5[_0x3f6747(0x1d5)])throw new Error('Read\x20access\x20denied:\x20'+_0x4f58b5[_0x3f6747(0x1ab)]+'\x20('+_0x4f58b5[_0x3f6747(0x1b8)]+')');try{const _0x24e56e=await a0_0x3803da[_0x3f6747(0x1d7)](_0x20927b),_0x3383af=this[_0x3f6747(0x1ae)][_0x3f6747(0x205)](_0x20927b,_0x122ec2);return{'success':!![],'action':'stats','filePath':_0x3383af,'fullPath':_0x20927b,'stats':{'size':_0x24e56e['size'],'type':_0x24e56e[_0x3f6747(0x1bd)]()?'directory':_0x3f6747(0x19c),'lastModified':_0x24e56e['mtime'][_0x3f6747(0x20e)](),'lastAccessed':_0x24e56e['atime'][_0x3f6747(0x20e)](),'created':_0x24e56e['birthtime'][_0x3f6747(0x20e)](),'permissions':_0x24e56e[_0x3f6747(0x1e4)],'isSymlink':_0x24e56e[_0x3f6747(0x1fc)]()},'message':_0x3f6747(0x1d6)+_0xfedeef};}catch(_0xd99144){throw new Error(_0x3f6747(0x19b)+_0xfedeef+':\x20'+_0xd99144[_0x3f6747(0x211)]);}}[a0_0x113996(0x207)](_0xd54c9d,_0x31a2d2){const _0x4d08f9=a0_0x113996;if(a0_0xd7c609[_0x4d08f9(0x1e8)](_0xd54c9d))return a0_0xd7c609['normalize'](_0xd54c9d);return a0_0xd7c609['resolve'](_0x31a2d2,_0xd54c9d);}[a0_0x113996(0x1b2)](_0x181eb5,_0x8017ce,_0x28978d='read'){const _0x349c4d=a0_0x113996,_0xfb2444=_0x28978d===_0x349c4d(0x1ed)?this['directoryAccessManager']['validateWriteAccess'](_0x181eb5,_0x8017ce):this['directoryAccessManager']['validateReadAccess'](_0x181eb5,_0x8017ce);if(!_0xfb2444[_0x349c4d(0x1d5)])throw new Error(_0x28978d+_0x349c4d(0x1d0)+_0xfb2444[_0x349c4d(0x1ab)]+'\x20('+_0xfb2444[_0x349c4d(0x1b8)]+')');return _0xfb2444;}['isAllowedFileExtension'](_0x22835f){const _0x390c07=a0_0x113996,_0x325309=a0_0xd7c609['extname'](_0x22835f)['toLowerCase']();if(this[_0x390c07(0x1eb)][_0x390c07(0x1b5)](_0x325309))return![];if(this[_0x390c07(0x1a6)]&&!this[_0x390c07(0x1a6)][_0x390c07(0x1b5)](_0x325309))return![];return!![];}['addToHistory'](_0xffb19b,_0xd0282b,_0x2d7eaf){const _0x58f750=a0_0x113996,_0x559892={'timestamp':new Date()[_0x58f750(0x20e)](),'agentId':_0x2d7eaf,'action':_0xffb19b['type'],'filePath':_0xffb19b['filePath']||_0xffb19b[_0x58f750(0x1ef)]||_0xffb19b[_0x58f750(0x210)],'success':_0xd0282b[_0x58f750(0x18b)],'size':_0xd0282b[_0x58f750(0x1b0)]};this['operationHistory']['push'](_0x559892),this['operationHistory']['length']>0xc8&&(this[_0x58f750(0x1bb)]=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x19810f=a0_0x113996;return['read','write','append',_0x19810f(0x1e2),_0x19810f(0x1d2),_0x19810f(0x188),_0x19810f(0x1aa),'list','exists','stats'];}['getParameterSchema'](){const _0x5eb39d=a0_0x113996;return{'type':_0x5eb39d(0x1f0),'properties':{'actions':{'type':_0x5eb39d(0x1ee),'minItems':0x1,'items':{'type':_0x5eb39d(0x1f0),'properties':{'type':{'type':_0x5eb39d(0x1c6),'enum':this['getSupportedActions']()},'filePath':{'type':_0x5eb39d(0x1c6)},'outputPath':{'type':'string'},'sourcePath':{'type':_0x5eb39d(0x1c6)},'destPath':{'type':'string'},'directory':{'type':_0x5eb39d(0x1c6)},'content':{'type':'string'},'encoding':{'type':_0x5eb39d(0x1c6)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':[_0x5eb39d(0x1b6)]};}[a0_0x113996(0x18c)](_0x32df41=null){const _0x3a62f6=a0_0x113996;if(_0x32df41)return this[_0x3a62f6(0x1bb)]['filter'](_0x4ff894=>_0x4ff894[_0x3a62f6(0x1fd)]===_0x32df41);return[...this['operationHistory']];}}export default FileSystemTool;