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

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 (120) 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
  117. package/web-ui/build/index.html +2 -2
  118. package/web-ui/build/static/{index-BzXbDs8z.js → index-CoRE46V-.js} +28 -28
  119. package/web-ui/build/static/index-P281Rusr.css +1 -0
  120. package/web-ui/build/static/index-BmKxmRe3.css +0 -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
+ function a0_0x486f(){const _0x13139a=['8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','tLbnx1jfr0Ltvfjzx1vsta','AM9PBG','x2nVBxbHCMvqCMvYzwXLyxnL','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','mti2wwXnq25T','D29YA2LUz0rPCMvJDg9YEq','C3bSAxq','tufyx0rfuevorevoq0LfuW','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','ksWGBwf4igfSBg93zwq6ia','x2LZq29TCgXLEfjHBMDL','C3rHCNrZv2L0Aa','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','zgvIDwC','ChjLCMvSzwfZzq','DhjPBq','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','x2nVBxbHCMvwzxjZAw9UCW','ANnVBG','CMfUz2vZ','Dg9mB3DLCKnHC2u','zxHLyW','icdIGkiG','BNbTigLUC3rHBgWGzMfPBgvKoIa','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','CgfYC2vqyxjHBwv0zxjZ','zw50CMLLCW','yw5K','Ec1Yyw5Nzq','yNvPBgq','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','yxv0BW','x3zHBgLKyxrLugfYyw1LDgvYCW','rMfPBgvKihrVigzLDgnOia','odrrEvnPAhC','mJuYntC4mfHfy29MwG','zgv2rgvWzw5Kzw5JAwvZ','z2v0rgvZy3jPChrPB24','mJi2rfPitLH1','Aw5JBhvKzurLDG','mJGXndy5mvjxA21eBG','C2XPy2u','uKvuuLLFqvruru1qvfm','Dhj1zq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','Bg9Nz2vY','C3rYAw5N','mJK3otKYt3PQtvLm','BNbTifDbuK4','y29WEuzPBgu','8j+tIIbgB3vUzca','y2HLy2S','x2LZvxbKyxrLqxzHAwXHyMXL','BwfW','q1jfqvrfx0jbq0Tvufm','rM91BMqG','C3rYAw5NAwz5','DxrMltG','mJy4odG3owniten3Dq','Cgf0y2G','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','C2LTCgXL','ugfJA2fNzsbUB3qGzM91BMq6ia','uMv0CNKG','otqWmg9lBezdyG','x3nHDgLZzMLLC1jHBMDL','Aw5MBW','zML4','BM9YBwfSAxPL','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','A2v5CW','BwLUB3i','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','ChvZAa','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','sfruuca','revgqvvmvf9nt0rf','B3bLCMf0B3i','Bwf4','zxjYB3i','nta0ndi0mLDKv1fJtW','x3bHCNnLvMvYC2LVBG','Aw5JBhvKzxm','B2jQzwn0','tufyx0nptKnvuLjftLrFq0Hfq0Tt','BwfQB3i','yMfZzw5HBwu','mtyYs1f6wu9p','lMjHy2T1Cc5QC29U','zMLSDgvY','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','BgvUz3rO','nhrVB0rzDq','BwvZC2fNzq','x3bHCNnLvMvYC2LVBLjHBMDL','ihbHy2THz2uOCYK','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','D2fYBG','ChjLzML4','Cgf0Aa','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','CMfUz2u','zgLZDc10ywDZ','iokgKIa','x2nYzwf0zujHy2T1Ca','tLbnx0nptu1btKrFveLnru9vva','Bw9Kzq','ntuXntvqvvjRufm','x2nOzwnRrgvWzw5Kzw5JAwvZ','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','C3rHDhvZ','yM9VBgvHBG','x3bHCNnLqM9VBgvHBG','zgvWzw5Kzw5JAwvZ','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','igzVCIa','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQsw52B2nHDgLVBIbtEw50yxG6kIOkcLHntcbgB3jTyxq6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLpGOGidXWyxrOpI4VBxKTChjVAMvJDdWVCgf0Ad4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kica8Aw5JBhvKzs1Kzxy+Dhj1ztWVAw5JBhvKzs1Kzxy+cJWVzgvWzw5Kzw5JEs1YzxnVBhzLpGPGygakcKPtt04GrM9YBwf0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEWOGicaGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWkicaGicjTB2rLiJOGiMnOzwnRiIWkicaGicjPBMnSDwrLrgv2iJOGDhj1zqOGih0kFqPGygakcIOQugfYyw1LDgvYCZOQkGOTicOQCgf0AcOQicHZDhjPBMCSig9WDgLVBMfSktOGugf0Acb0BYbWCM9Qzwn0igrPCMvJDg9YEsb3AxrOihbHy2THz2uUANnVBI4GrgvMyxvSDdOGiI4IcI0GkIPTB2rLkIOGkhn0CMLUzYWGB3b0Aw9UywWPoIbpCgvYyxrPB24GBw9Kzs4Gt3b0Aw9UCZOkicaTicjJAgvJAYiGlsbpBMX5ignOzwnRigzVCIb1CgrHDgvZicHKzwzHDwX0kqOGic0GiMzPEciGlsbvCgrHDguGCgfJA2fNzs5QC29UigfUzcbYDw4GBNbTigLUC3rHBgWkicaTicjHDxrViIaTief1Dg9TyxrPy2fSBhKGzML4igfSBcbJB25MBgLJDhmklsaQkMLUy2X1zgvezxyQkIaOyM9VBgvHBIWGB3b0Aw9UywWPoIbjBMnSDwrLigrLDKrLCgvUzgvUy2LLCY4GrgvMyxvSDdOGDhj1zqOkkIPxAgf0ieL0ierVzxm6kIOklsbdAgvJA3mGBNbTihjLz2LZDhj5igzVCIbSyxrLC3qGy29TCgf0AwjSzsb2zxjZAw9UCWOTifjLC3bLy3rZihnLBxzLCIbYyw5NzxmGkf4Sih4Sid49lcbLDgmUkqOTienYzwf0zxmGyxv0B21HDgLJigjHy2T1ChmGyMvMB3jLig1VzgLMAwnHDgLVBNmklsbsDw5Zig5WBsbPBNn0ywXSigfMDgvYihvWzgf0zxmGkgLUigzPEc9HDxrVig1VzguPcI0GuhjVDMLKzxmGzgv0ywLSzwqGDxbKyxrLihjLCg9YDaOkkIPfEgfTCgXLCZOQkGOkms4Gq2HLy2SGzM9YihvWzgf0zxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kpc9KzxbLBMrLBMn5lxjLC29SDMvYpGPGygakcJiUiezPEcbVDxrKyxrLzcbKzxbLBMrLBMnPzxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Cgf0Ad4Ul215lxbYB2PLy3q8l3bHDgG+cIaGpg1Vzgu+zML4pc9TB2rLpGO8l2rLCgvUzgvUy3KTCMvZB2X2zxi+cMbGyaOkmY4Gqxv0BY1MAxGGD2L0AcbKzxzezxbLBMrLBMnPzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzgvWzw5Kzw5JEs1YzxnVBhzLCIiScIaGiNbHCMfTzxrLCNmIoIb7icjTB2rLiJOGiMf1Dg8IlcaIAw5JBhvKzurLDIi6ihrYDwuGFqP9cMbGyaOkkIPoB3rLCZOQkGOTiefSD2f5CYbJCMvHDgvZigjHy2T1CcaOlMjHy2T1Cc5QC29UksbIzwzVCMuGBw9KAwzPy2f0Aw9UCWOTie5LDhDVCMSGCMvXDwvZDhmGAgf2zsb0Aw1LB3v0igfUzcbYzxrYEsbSB2DPyWOTig5WBsbPBNn0ywXSihj1BNmGD2L0Acb0Aw1LB3v0ihbYB3rLy3rPB24GkduGBwLUDxrLCYbTyxGPcI0Gu3vWCg9YDhmGy29TCgXLEcbZzw12zxiGCMfUz2vZicH8FcWGjIySigv0yY4P','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','DgvZDa','C2LNBMfS','vKfmsurFtu9ervm'];a0_0x486f=function(){return _0x13139a;};return a0_0x486f();}const a0_0x2a6130=a0_0x414b;(function(_0x1654da,_0x59e479){const _0x5d896d=a0_0x414b,_0x3fd869=_0x1654da();while(!![]){try{const _0x4eecda=-parseInt(_0x5d896d(0x11b))/0x1*(-parseInt(_0x5d896d(0x136))/0x2)+-parseInt(_0x5d896d(0x12f))/0x3*(parseInt(_0x5d896d(0x152))/0x4)+parseInt(_0x5d896d(0x161))/0x5*(-parseInt(_0x5d896d(0x14d))/0x6)+-parseInt(_0x5d896d(0x146))/0x7+parseInt(_0x5d896d(0x124))/0x8*(-parseInt(_0x5d896d(0x175))/0x9)+parseInt(_0x5d896d(0x118))/0xa+-parseInt(_0x5d896d(0x11d))/0xb*(-parseInt(_0x5d896d(0x117))/0xc);if(_0x4eecda===_0x59e479)break;else _0x3fd869['push'](_0x3fd869['shift']());}catch(_0x4cca3a){_0x3fd869['push'](_0x3fd869['shift']());}}}(a0_0x486f,0xa381b));function a0_0x414b(_0x9ca063,_0xa74b55){_0x9ca063=_0x9ca063-0x111;const _0x486fa1=a0_0x486f();let _0x414bf0=_0x486fa1[_0x9ca063];if(a0_0x414b['mVEHmj']===undefined){var _0x29335a=function(_0x16307c){const _0xb4be96='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ceb30='',_0x22eec0='';for(let _0x5d2b45=0x0,_0xcfcf87,_0x544204,_0x7e39fe=0x0;_0x544204=_0x16307c['charAt'](_0x7e39fe++);~_0x544204&&(_0xcfcf87=_0x5d2b45%0x4?_0xcfcf87*0x40+_0x544204:_0x544204,_0x5d2b45++%0x4)?_0x2ceb30+=String['fromCharCode'](0xff&_0xcfcf87>>(-0x2*_0x5d2b45&0x6)):0x0){_0x544204=_0xb4be96['indexOf'](_0x544204);}for(let _0x3f5864=0x0,_0x200c1b=_0x2ceb30['length'];_0x3f5864<_0x200c1b;_0x3f5864++){_0x22eec0+='%'+('00'+_0x2ceb30['charCodeAt'](_0x3f5864)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22eec0);};a0_0x414b['EzWxss']=_0x29335a,a0_0x414b['ysksrU']={},a0_0x414b['mVEHmj']=!![];}const _0x144865=_0x486fa1[0x0],_0x1db48a=_0x9ca063+_0x144865,_0x548ed1=a0_0x414b['ysksrU'][_0x1db48a];return!_0x548ed1?(_0x414bf0=a0_0x414b['EzWxss'](_0x414bf0),a0_0x414b['ysksrU'][_0x1db48a]=_0x414bf0):_0x414bf0=_0x548ed1,_0x414bf0;}import{promises as a0_0x2ceb30}from'fs';import a0_0x22eec0 from'path';import{exec as a0_0x5d2b45}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0xcfcf87 from'../utilities/tagParser.js';const exec=promisify(a0_0x5d2b45),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x2a6130(0x128),'VALID_MODES':[a0_0x2a6130(0x128),a0_0x2a6130(0x139),a0_0x2a6130(0x114)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x2a6130(0x14e),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x2a6130(0x15a)};export class DependencyResolverTool extends BaseTool{[a0_0x2a6130(0x11a)](){const _0x2eea8f=a0_0x2a6130;return _0x2eea8f(0x16b);}[a0_0x2a6130(0x18a)](_0x544204){const _0x251422=a0_0x2a6130;if(typeof _0x544204===_0x251422(0x149)&&_0x544204!==null)return{'path':_0x544204[_0x251422(0x159)]||'.','mode':_0x544204[_0x251422(0x160)]||RESOLVER_CONFIG[_0x251422(0x142)],'includeDev':_0x544204['includeDev']!==undefined?_0x544204['includeDev']:!![]};if(typeof _0x544204==='string'){const _0x7e39fe=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x3f5864=_0x7e39fe[_0x251422(0x186)](_0x544204);if(_0x3f5864){const _0x336103=_0x3f5864[0x1],_0x45d2e5=_0x3f5864[0x2],_0xc891f0=/path=["']([^"']*)["']/i['exec'](_0x336103),_0x50ad9d=/mode=["']([^"']*)["']/i['exec'](_0x336103),_0x59476b=/include-dev=["']([^"']*)["']/i['exec'](_0x336103),_0xf1a633=/<path>(.*?)<\/path>/i,_0x4aa94b=_0xf1a633[_0x251422(0x186)](_0x45d2e5),_0xa1da93=/<mode>(.*?)<\/mode>/i,_0x1b6fb7=_0xa1da93['exec'](_0x45d2e5),_0x5d9f41=/<include-dev>(.*?)<\/include-dev>/i,_0x203532=_0x5d9f41['exec'](_0x45d2e5),_0x55d5a6=(_0x4aa94b?_0x4aa94b[0x1][_0x251422(0x180)]():null)||(_0xc891f0?_0xc891f0[0x1]:'.'),_0x52e623=(_0x1b6fb7?_0x1b6fb7[0x1]['trim']():null)||(_0x50ad9d?_0x50ad9d[0x1]:RESOLVER_CONFIG[_0x251422(0x142)]),_0xb015fe=(_0x203532?_0x203532[0x1]['trim']():null)||(_0x59476b?_0x59476b[0x1]:'true');return{'path':_0x55d5a6,'mode':_0x52e623,'includeDev':this[_0x251422(0x166)](_0xb015fe,!![])};}const _0x200c1b=/\[resolve\s+([^\]]*)\]/i,_0x1b38c7=_0x200c1b['exec'](_0x544204);if(_0x1b38c7){const _0x1da163=_0x1b38c7[0x1],_0x2ce71f=/path=["']([^"']*)["']/i['exec'](_0x1da163),_0x78621a=/mode=["']([^"']*)["']/i['exec'](_0x1da163),_0x313ee4=/include-dev=["']([^"']*)["']/i['exec'](_0x1da163);return{'path':_0x2ce71f?_0x2ce71f[0x1]:'.','mode':_0x78621a?_0x78621a[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x251422(0x166)](_0x313ee4?_0x313ee4[0x1]:_0x251422(0x120),!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error(_0x251422(0x150));}[a0_0x2a6130(0x166)](_0x3792d4,defaultValue=![]){const _0x215cb2=a0_0x2a6130;if(_0x3792d4===undefined||_0x3792d4===null)return defaultValue;if(typeof _0x3792d4===_0x215cb2(0x165))return _0x3792d4;if(typeof _0x3792d4==='string')return _0x3792d4['toLowerCase']()===_0x215cb2(0x120)||_0x3792d4==='1';return defaultValue;}['_validateParameters'](_0x5e64d9){const _0x89951e=a0_0x2a6130;if(!_0x5e64d9||typeof _0x5e64d9!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x5e64d9['path']&&typeof _0x5e64d9[_0x89951e(0x159)]!==_0x89951e(0x123))throw new Error('path\x20must\x20be\x20a\x20string');if(_0x5e64d9[_0x89951e(0x160)]&&!RESOLVER_CONFIG[_0x89951e(0x16f)]['includes'](_0x5e64d9[_0x89951e(0x160)]))throw new Error('Invalid\x20mode:\x20'+_0x5e64d9['mode']+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x5e64d9['includeDev']!==undefined&&typeof _0x5e64d9[_0x89951e(0x11c)]!==_0x89951e(0x165))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}['_resolveAndValidatePath'](_0x57faf3,_0x4bdefb){const _0x4ab1f2=a0_0x2a6130,{projectDir:_0x5da0fd,directoryAccess:_0x374c75}=_0x4bdefb;let _0x4e4492=_0x5da0fd||process['cwd']();_0x374c75&&_0x374c75[_0x4ab1f2(0x176)]&&(_0x4e4492=_0x374c75[_0x4ab1f2(0x176)]);const _0x1c8577=a0_0x22eec0['isAbsolute'](_0x57faf3)?a0_0x22eec0['normalize'](_0x57faf3):a0_0x22eec0[_0x4ab1f2(0x13a)](a0_0x22eec0[_0x4ab1f2(0x172)](_0x4e4492,_0x57faf3)),_0x5c431c=a0_0x22eec0['normalize'](_0x4e4492);if(!_0x1c8577[_0x4ab1f2(0x17c)](_0x5c431c))throw new Error('Path\x20traversal\x20detected:\x20'+_0x57faf3+'\x20resolves\x20outside\x20working\x20directory');return _0x1c8577;}async['_createBackup'](_0x47668a){const _0x40ea5b=a0_0x2a6130;if(!RESOLVER_CONFIG[_0x40ea5b(0x12b)])return null;try{const _0x122c7b=_0x47668a+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x2ceb30['copyFile'](_0x47668a,_0x122c7b),this[_0x40ea5b(0x122)]?.[_0x40ea5b(0x138)]('Created\x20backup',{'backupPath':_0x122c7b}),_0x122c7b;}catch(_0x34ab88){return this['logger']?.[_0x40ea5b(0x157)]('Failed\x20to\x20create\x20backup',{'error':_0x34ab88['message']}),null;}}async['_fetchPackageInfo'](_0x23667c){const _0x5ad5af=a0_0x2a6130,_0x27fa80=RESOLVER_CONFIG[_0x5ad5af(0x171)]+'/'+encodeURIComponent(_0x23667c);for(let _0x24cab3=0x1;_0x24cab3<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x24cab3++){try{const _0x3bae4f=new AbortController(),_0x154a68=setTimeout(()=>_0x3bae4f['abort'](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x3e591b=await fetch(_0x27fa80,{'signal':_0x3bae4f[_0x5ad5af(0x16e)]});clearTimeout(_0x154a68);if(!_0x3e591b['ok']){if(_0x3e591b[_0x5ad5af(0x164)]===0x194)return this['logger']?.['warn'](_0x5ad5af(0x134)+_0x23667c),null;throw new Error(_0x5ad5af(0x141)+_0x3e591b['status']+':\x20'+_0x3e591b['statusText']);}const _0x5007a1=await _0x3e591b[_0x5ad5af(0x183)]();if(!_0x5007a1||typeof _0x5007a1!=='object'||!_0x5007a1[_0x5ad5af(0x15c)])throw new Error('Invalid\x20registry\x20response\x20format');return _0x5007a1;}catch(_0x5c34c4){if(_0x24cab3<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x5ad5af(0x122)]?.[_0x5ad5af(0x17e)](_0x5ad5af(0x135)+_0x24cab3+'/'+RESOLVER_CONFIG[_0x5ad5af(0x11f)]+_0x5ad5af(0x169)+_0x23667c),await new Promise(_0x1d5e48=>setTimeout(_0x1d5e48,RESOLVER_CONFIG['RETRY_DELAY']*_0x24cab3));else return this[_0x5ad5af(0x122)]?.['error'](_0x5ad5af(0x116)+_0x23667c+':',_0x5c34c4['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x30f4a3,_0x41f52c){const _0x75995e=a0_0x2a6130,_0x2b591e=await this['_fetchPackageInfo'](_0x30f4a3);if(!_0x2b591e)return null;const _0x1fa19c=_0x2b591e['dist-tags']?.['latest'];if(!_0x1fa19c)return null;const _0x52126b=this['_parseVersion'](_0x1fa19c);if(!_0x52126b)return null;if(this[_0x75995e(0x17b)](_0x41f52c)){const _0x300759=this['_parseComplexRange'](_0x41f52c),_0x4822d3=this['_satisfiesComplexRange'](_0x300759,_0x52126b);if(_0x4822d3)return _0x1fa19c;return null;}const _0x80727b=this['_parseVersionRange'](_0x41f52c);if(!_0x80727b)return null;const _0x52b763=this[_0x75995e(0x129)](_0x80727b,_0x52126b);if(_0x52b763)return _0x80727b[_0x75995e(0x158)]+_0x1fa19c;return null;}[a0_0x2a6130(0x147)](_0x9389c1){const _0x3cefab=a0_0x2a6130,_0x1e1dd8=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x392747=_0x1e1dd8[_0x3cefab(0x186)](_0x9389c1);if(!_0x392747){const _0x2802c9=_0x9389c1['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x2802c9)return{'major':parseInt(_0x2802c9[0x1],0xa),'minor':parseInt(_0x2802c9[0x2],0xa),'patch':parseInt(_0x2802c9[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x392747[0x1],0xa),'minor':parseInt(_0x392747[0x2],0xa),'patch':parseInt(_0x392747[0x3],0xa),'prerelease':_0x392747[0x4]?_0x392747[0x4]['split']('.'):null,'build':_0x392747[0x5]||null};}['_compareVersions'](_0xbf262a,_0x529608){const _0x42437d=a0_0x2a6130;if(_0xbf262a[_0x42437d(0x14b)]!==_0x529608['major'])return _0xbf262a['major']-_0x529608['major'];if(_0xbf262a['minor']!==_0x529608['minor'])return _0xbf262a['minor']-_0x529608[_0x42437d(0x13d)];if(_0xbf262a[_0x42437d(0x130)]!==_0x529608[_0x42437d(0x130)])return _0xbf262a[_0x42437d(0x130)]-_0x529608[_0x42437d(0x130)];if(!_0xbf262a[_0x42437d(0x17f)]&&!_0x529608[_0x42437d(0x17f)])return 0x0;if(!_0xbf262a[_0x42437d(0x17f)]&&_0x529608['prerelease'])return 0x1;if(_0xbf262a[_0x42437d(0x17f)]&&!_0x529608[_0x42437d(0x17f)])return-0x1;return this[_0x42437d(0x173)](_0xbf262a['prerelease'],_0x529608['prerelease']);}[a0_0x2a6130(0x173)](_0xf1c0b2,_0x37e4ed){const _0x948c57=a0_0x2a6130,_0xbe3e5a=Math[_0x948c57(0x144)](_0xf1c0b2[_0x948c57(0x151)],_0x37e4ed[_0x948c57(0x151)]);for(let _0x42d1f5=0x0;_0x42d1f5<_0xbe3e5a;_0x42d1f5++){if(_0x42d1f5>=_0xf1c0b2['length'])return-0x1;if(_0x42d1f5>=_0x37e4ed[_0x948c57(0x151)])return 0x1;const _0x2e3d86=_0xf1c0b2[_0x42d1f5],_0x16467b=_0x37e4ed[_0x42d1f5],_0xa94720=/^\d+$/['test'](_0x2e3d86)?parseInt(_0x2e3d86,0xa):null,_0x262b34=/^\d+$/['test'](_0x16467b)?parseInt(_0x16467b,0xa):null;if(_0xa94720!==null&&_0x262b34!==null){if(_0xa94720!==_0x262b34)return _0xa94720-_0x262b34;continue;}if(_0xa94720!==null&&_0x262b34===null)return-0x1;if(_0xa94720===null&&_0x262b34!==null)return 0x1;if(_0x2e3d86<_0x16467b)return-0x1;if(_0x2e3d86>_0x16467b)return 0x1;}return 0x0;}['_parseVersionRange'](_0x426a05){const _0x54792f=a0_0x2a6130,_0x1a5f16=_0x426a05['trim'](),_0x2077a4=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x3384cb=_0x2077a4['exec'](_0x1a5f16);if(_0x3384cb){const _0x3776a1=_0x3384cb[0x1],_0x1b9feb=_0x3384cb[0x3],_0xa49024=_0x3384cb[0x5],_0x49c1f9=_0x3776a1==='*'||_0x3776a1['toLowerCase']()==='x'||_0x1b9feb===undefined||_0x1b9feb==='*'||_0x1b9feb[_0x54792f(0x185)]()==='x'||_0xa49024===undefined||_0xa49024==='*'||_0xa49024['toLowerCase']()==='x';if(_0x49c1f9)return{'prefix':'','operator':_0x54792f(0x111),'major':_0x3776a1==='*'||_0x3776a1[_0x54792f(0x185)]()==='x'?null:parseInt(_0x3776a1,0xa),'minor':!_0x1b9feb||_0x1b9feb==='*'||_0x1b9feb['toLowerCase']()==='x'?null:parseInt(_0x1b9feb,0xa),'patch':!_0xa49024||_0xa49024==='*'||_0xa49024['toLowerCase']()==='x'?null:parseInt(_0xa49024,0xa),'original':_0x426a05};}let _0x3d2711='',_0x4494bf=_0x1a5f16,_0x398d28='=';if(_0x1a5f16[_0x54792f(0x17c)]('^'))_0x3d2711='^',_0x4494bf=_0x1a5f16['slice'](0x1),_0x398d28='^';else{if(_0x1a5f16['startsWith']('~'))_0x3d2711='~',_0x4494bf=_0x1a5f16[_0x54792f(0x11e)](0x1),_0x398d28='~';else{if(_0x1a5f16[_0x54792f(0x17c)]('>='))_0x3d2711='>=',_0x4494bf=_0x1a5f16[_0x54792f(0x11e)](0x2)['trim'](),_0x398d28='>=';else{if(_0x1a5f16['startsWith']('>'))_0x3d2711='>',_0x4494bf=_0x1a5f16[_0x54792f(0x11e)](0x1)[_0x54792f(0x180)](),_0x398d28='>';else{if(_0x1a5f16[_0x54792f(0x17c)]('<='))_0x3d2711='<=',_0x4494bf=_0x1a5f16[_0x54792f(0x11e)](0x2)['trim'](),_0x398d28='<=';else _0x1a5f16['startsWith']('<')&&(_0x3d2711='<',_0x4494bf=_0x1a5f16[_0x54792f(0x11e)](0x1)[_0x54792f(0x180)](),_0x398d28='<');}}}}const _0x16cf7f=this['_parseVersion'](_0x4494bf);if(!_0x16cf7f)return null;return{'prefix':_0x3d2711,'operator':_0x398d28,'major':_0x16cf7f[_0x54792f(0x14b)],'minor':_0x16cf7f[_0x54792f(0x13d)],'patch':_0x16cf7f[_0x54792f(0x130)],'prerelease':_0x16cf7f[_0x54792f(0x17f)],'build':_0x16cf7f[_0x54792f(0x112)],'original':_0x426a05};}[a0_0x2a6130(0x129)](_0x5c4e9d,_0x1a7c81){const _0x587098=a0_0x2a6130,_0x40c111={'major':_0x5c4e9d[_0x587098(0x14b)],'minor':_0x5c4e9d[_0x587098(0x13d)],'patch':_0x5c4e9d[_0x587098(0x130)],'prerelease':_0x5c4e9d[_0x587098(0x17f)]||null,'build':_0x5c4e9d[_0x587098(0x112)]||null};switch(_0x5c4e9d['operator']){case'^':return this[_0x587098(0x156)](_0x40c111,_0x1a7c81);case'~':return this['_isTildeUpdateAvailable'](_0x40c111,_0x1a7c81);case'>=':case'>':return this[_0x587098(0x181)](_0x40c111,_0x1a7c81);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x5c4e9d,_0x1a7c81);case'x-range':return this['_isXRangeUpdateAvailable'](_0x5c4e9d,_0x1a7c81);case'=':default:return this[_0x587098(0x121)](_0x40c111,_0x1a7c81);}}[a0_0x2a6130(0x156)](_0x48ce97,_0x32ba6e){const _0x56d43b=a0_0x2a6130,_0x1934ad=this['_compareVersions'](_0x32ba6e,_0x48ce97);if(_0x1934ad<=0x0)return![];if(_0x48ce97['major']===0x0&&_0x48ce97['minor']===0x0)return _0x32ba6e['major']===0x0&&_0x32ba6e[_0x56d43b(0x13d)]===0x0;if(_0x48ce97['major']===0x0)return _0x32ba6e['major']===0x0&&_0x32ba6e[_0x56d43b(0x13d)]===_0x48ce97[_0x56d43b(0x13d)];return _0x32ba6e[_0x56d43b(0x14b)]===_0x48ce97['major'];}['_isTildeUpdateAvailable'](_0x10db11,_0x24801a){const _0x24c1bc=a0_0x2a6130,_0x2c32ca=this['_compareVersions'](_0x24801a,_0x10db11);if(_0x2c32ca<=0x0)return![];return _0x24801a[_0x24c1bc(0x14b)]===_0x10db11[_0x24c1bc(0x14b)]&&_0x24801a['minor']===_0x10db11['minor'];}['_isSimpleUpdateAvailable'](_0x37aba1,_0x29ce41){const _0x18330d=a0_0x2a6130,_0x235302=this[_0x18330d(0x182)](_0x29ce41,_0x37aba1);return _0x235302>0x0;}[a0_0x2a6130(0x121)](_0x2b0edd,_0x48c985){return this['_isSimpleUpdateAvailable'](_0x2b0edd,_0x48c985);}['_isLessThanUpdateAvailable'](_0x441cde,_0x52c783){const _0x17dce9=a0_0x2a6130,_0x356c7b=this['_compareVersions'](_0x52c783,_0x441cde);if(_0x441cde['operator']==='<')return _0x356c7b<0x0;else{if(_0x441cde[_0x17dce9(0x143)]==='<=')return _0x356c7b<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x15fb8a,_0x12b291){const _0xd706d9=a0_0x2a6130;if(_0x15fb8a[_0xd706d9(0x14b)]!==null&&_0x12b291['major']!==_0x15fb8a['major'])return![];if(_0x15fb8a[_0xd706d9(0x13d)]!==null&&_0x12b291[_0xd706d9(0x13d)]!==_0x15fb8a[_0xd706d9(0x13d)])return![];if(_0x15fb8a['patch']!==null&&_0x12b291['patch']!==_0x15fb8a[_0xd706d9(0x130)])return![];return!![];}[a0_0x2a6130(0x17b)](_0x5397f4){const _0x293669=a0_0x2a6130;if(_0x5397f4['includes']('||'))return!![];const _0x446617=_0x5397f4[_0x293669(0x180)]();if(_0x446617['startsWith']('^')||_0x446617['startsWith']('~'))return![];const _0x5dd2df=_0x446617['split'](/\s+/)[_0x293669(0x14f)](_0x26928b=>_0x26928b[_0x293669(0x151)]>0x0);if(_0x5dd2df[_0x293669(0x151)]>0x1){const _0x213882=/^(>=?|<=?|\^|~|[0-9])/;return _0x5dd2df['every'](_0x158c59=>_0x213882[_0x293669(0x16d)](_0x158c59));}return![];}['_parseComplexRange'](_0x49e142){const _0x246a4a=a0_0x2a6130;if(_0x49e142['includes']('||')){const _0x17058a=_0x49e142[_0x246a4a(0x177)]('||')[_0x246a4a(0x12a)](_0xee6014=>_0xee6014[_0x246a4a(0x180)]());return{'type':'or','ranges':_0x17058a[_0x246a4a(0x12a)](_0x3af350=>this['_parseComplexRange'](_0x3af350))};}const _0x20dfda=_0x49e142['trim']()['split'](/\s+/)['filter'](_0x4c599c=>_0x4c599c[_0x246a4a(0x151)]>0x0);if(_0x20dfda[_0x246a4a(0x151)]>0x1)return{'type':_0x246a4a(0x18c),'ranges':_0x20dfda['map'](_0x4e04be=>this[_0x246a4a(0x154)](_0x4e04be))};return{'type':_0x246a4a(0x133),'range':this['_parseVersionRange'](_0x49e142)};}['_satisfiesRange'](_0x2ef939,_0xecc086){const _0x48fbca=a0_0x2a6130;if(!_0x2ef939||!_0xecc086)return![];return this[_0x48fbca(0x129)](_0x2ef939,_0xecc086);}[a0_0x2a6130(0x179)](_0x5b9e25,_0x39ea75){const _0xb1e0c9=a0_0x2a6130;if(!_0x5b9e25||!_0x39ea75)return![];switch(_0x5b9e25['type']){case'simple':return this[_0xb1e0c9(0x137)](_0x5b9e25[_0xb1e0c9(0x15b)],_0x39ea75);case'and':return _0x5b9e25[_0xb1e0c9(0x184)]['every'](_0x5b4dd6=>this[_0xb1e0c9(0x137)](_0x5b4dd6,_0x39ea75));case'or':return _0x5b9e25[_0xb1e0c9(0x184)]['some'](_0x1d026c=>this['_satisfiesComplexRange'](_0x1d026c,_0x39ea75));default:return![];}}async['_checkDependencies'](_0x4aa104){const _0x20fff7=a0_0x2a6130,_0xdb2dcb={},_0x3dc3fa=Object[_0x20fff7(0x18b)](_0x4aa104);for(let _0x19c16e=0x0;_0x19c16e<_0x3dc3fa['length'];_0x19c16e+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x290a60=_0x3dc3fa['slice'](_0x19c16e,_0x19c16e+RESOLVER_CONFIG[_0x20fff7(0x14a)]),_0x326afe=_0x290a60['map'](async([_0x54a35f,_0x115229])=>{const _0x3ec6b8=_0x20fff7;try{const _0x54da71=await this['_getLatestCompatibleVersion'](_0x54a35f,_0x115229);if(_0x54da71){const _0x492d9c=_0x115229['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x54a35f,'newVersion':''+_0x492d9c+_0x54da71,'oldVersion':_0x115229};}return null;}catch(_0x5990c1){return this['logger']?.[_0x3ec6b8(0x145)]('Error\x20checking\x20'+_0x54a35f+':',_0x5990c1[_0x3ec6b8(0x153)]),null;}}),_0x584388=await Promise['all'](_0x326afe);_0x584388['forEach'](_0x587f22=>{_0x587f22&&(_0xdb2dcb[_0x587f22['pkg']]=_0x587f22['newVersion']);});}return _0xdb2dcb;}async['execute'](_0x527f5f,_0x3647e4={}){const _0x5e3a99=a0_0x2a6130;try{this[_0x5e3a99(0x115)](_0x527f5f);const {path:_0x6f1958,mode:_0x2ff6f5,includeDev:_0x2e6805}=_0x527f5f,{projectDir:_0x1902b6,agentId:_0x152540,directoryAccess:_0x34753d}=_0x3647e4,_0x3ed253=this[_0x5e3a99(0x174)](_0x6f1958,_0x3647e4),_0x5e31f7=a0_0x22eec0[_0x5e3a99(0x172)](_0x3ed253,'package.json');this[_0x5e3a99(0x122)]?.[_0x5e3a99(0x138)](_0x5e3a99(0x113),{'mode':_0x2ff6f5,'resolvedPath':_0x3ed253,'includeDev':_0x2e6805,'agentId':_0x152540});const _0x299ba7=[];_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x170)+_0x3ed253),_0x299ba7['push']('Mode:\x20'+_0x2ff6f5);try{await a0_0x2ceb30['access'](_0x5e31f7);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x5e31f7,'output':_0x299ba7[_0x5e3a99(0x172)]('\x0a')};}_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x163));const _0x475bcb=await a0_0x2ceb30['readFile'](_0x5e31f7,_0x5e3a99(0x12e)),_0x2a2b8b=JSON['parse'](_0x475bcb),_0x1ecbaa={..._0x2a2b8b[_0x5e3a99(0x167)]};_0x2e6805&&_0x2a2b8b['devDependencies']&&Object['assign'](_0x1ecbaa,_0x2a2b8b['devDependencies']);if(Object[_0x5e3a99(0x13c)](_0x1ecbaa)['length']===0x0)return{'success':!![],'mode':_0x2ff6f5,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x299ba7['join']('\x0a')};if(Object[_0x5e3a99(0x13c)](_0x1ecbaa)[_0x5e3a99(0x151)]>RESOLVER_CONFIG[_0x5e3a99(0x178)])return{'success':![],'error':_0x5e3a99(0x13b)+Object['keys'](_0x1ecbaa)[_0x5e3a99(0x151)]+_0x5e3a99(0x17a)+RESOLVER_CONFIG[_0x5e3a99(0x178)],'output':_0x299ba7[_0x5e3a99(0x172)]('\x0a')};_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x127)+Object[_0x5e3a99(0x13c)](_0x1ecbaa)[_0x5e3a99(0x151)]+'\x20dependencies\x20to\x20check'),_0x299ba7['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x579803=await this[_0x5e3a99(0x162)](_0x1ecbaa);_0x299ba7['push']('\x0a✅\x20Registry\x20check\x20complete'),_0x299ba7['push'](_0x5e3a99(0x168)+Object[_0x5e3a99(0x13c)](_0x579803)[_0x5e3a99(0x151)]);if(Object[_0x5e3a99(0x13c)](_0x579803)['length']>0x0){_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x17d));for(const [_0x175ff5,_0x3522f0]of Object[_0x5e3a99(0x18b)](_0x579803)){const _0x27a5a7=_0x1ecbaa[_0x175ff5];_0x299ba7['push'](_0x5e3a99(0x187)+_0x175ff5+':\x20'+_0x27a5a7+_0x5e3a99(0x15d)+_0x3522f0);}}else _0x299ba7['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x2ff6f5===_0x5e3a99(0x128))return Object[_0x5e3a99(0x13c)](_0x579803)['length']>0x0&&_0x299ba7['push']('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0x5e3a99(0x128),'message':_0x5e3a99(0x12c)+Object['keys'](_0x579803)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x1ecbaa)['length'],'updatesAvailable':Object['keys'](_0x579803)[_0x5e3a99(0x151)],'updatesApplied':0x0,'errors':0x0},'updates':_0x579803,'output':_0x299ba7['join']('\x0a')};if((_0x2ff6f5==='fix'||_0x2ff6f5===_0x5e3a99(0x114))&&Object['keys'](_0x579803)['length']>0x0){_0x299ba7['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x3ac157=await this[_0x5e3a99(0x15e)](_0x5e31f7);_0x3ac157?_0x299ba7['push']('✅\x20Backup\x20created:\x20'+a0_0x22eec0[_0x5e3a99(0x14c)](_0x3ac157)):_0x299ba7['push'](_0x5e3a99(0x13e));_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x132));for(const [_0x1f59de,_0x41ebca]of Object[_0x5e3a99(0x18b)](_0x579803)){_0x2a2b8b['dependencies']?.[_0x1f59de]&&(_0x2a2b8b['dependencies'][_0x1f59de]=_0x41ebca),_0x2a2b8b[_0x5e3a99(0x119)]?.[_0x1f59de]&&(_0x2a2b8b[_0x5e3a99(0x119)][_0x1f59de]=_0x41ebca);}await a0_0x2ceb30['writeFile'](_0x5e31f7,JSON[_0x5e3a99(0x12d)](_0x2a2b8b,null,0x2)+'\x0a'),_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x131)),_0x299ba7[_0x5e3a99(0x13f)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x33b2f2,stderr:_0xe6e551}=await exec('npm\x20install',{'cwd':_0x3ed253,'timeout':RESOLVER_CONFIG[_0x5e3a99(0x15f)],'maxBuffer':0x400*0x400*0xa});if(_0x33b2f2){const _0x40f342=_0x33b2f2['trim']()['split']('\x0a');_0x40f342[_0x5e3a99(0x151)]>0xa?_0x299ba7['push']('\x20\x20'+_0x40f342['slice'](-0x5)[_0x5e3a99(0x172)]('\x0a\x20\x20')):_0x299ba7['push']('\x20\x20'+_0x33b2f2['trim']());}_0xe6e551&&!_0xe6e551[_0x5e3a99(0x148)](_0x5e3a99(0x125))&&_0x299ba7['push']('⚠️\x20\x20'+_0xe6e551[_0x5e3a99(0x180)]());_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x16c));try{const {stdout:_0x48ae46}=await exec(_0x5e3a99(0x189),{'cwd':_0x3ed253,'timeout':0x7530}),_0x2eae37=JSON['parse'](_0x48ae46);if(_0x2eae37['dependencies']){_0x299ba7[_0x5e3a99(0x13f)]('\x0a📦\x20Installed\x20versions:');for(const _0x4c7464 of Object['keys'](_0x579803)){_0x2eae37['dependencies'][_0x4c7464]&&_0x299ba7['push'](_0x5e3a99(0x187)+_0x4c7464+'@'+_0x2eae37['dependencies'][_0x4c7464]['version']);}}}catch(_0x4ba690){this['logger']?.[_0x5e3a99(0x17e)]('npm\x20ls\x20failed:',_0x4ba690[_0x5e3a99(0x153)]);}return{'success':!![],'mode':_0x2ff6f5,'message':'Successfully\x20updated\x20'+Object['keys'](_0x579803)['length']+_0x5e3a99(0x155),'statistics':{'totalDependencies':Object['keys'](_0x1ecbaa)['length'],'updatesAvailable':Object[_0x5e3a99(0x13c)](_0x579803)[_0x5e3a99(0x151)],'updatesApplied':Object[_0x5e3a99(0x13c)](_0x579803)['length'],'errors':0x0},'updates':_0x579803,'backupCreated':_0x3ac157!==null,'backupPath':_0x3ac157,'output':_0x299ba7[_0x5e3a99(0x172)]('\x0a')};}catch(_0x4161ac){_0x299ba7[_0x5e3a99(0x13f)](_0x5e3a99(0x16a)+_0x4161ac[_0x5e3a99(0x153)]);if(_0x3ac157)try{await a0_0x2ceb30[_0x5e3a99(0x126)](_0x3ac157,_0x5e31f7),_0x299ba7[_0x5e3a99(0x13f)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x6254ce){_0x299ba7[_0x5e3a99(0x13f)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x2ff6f5,'error':_0x5e3a99(0x188)+_0x4161ac['message'],'statistics':{'totalDependencies':Object[_0x5e3a99(0x13c)](_0x1ecbaa)['length'],'updatesAvailable':Object['keys'](_0x579803)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x579803,'backupCreated':_0x3ac157!==null,'output':_0x299ba7['join']('\x0a')};}}else{if(_0x2ff6f5==='fix'||_0x2ff6f5===_0x5e3a99(0x114))return _0x299ba7[_0x5e3a99(0x13f)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x2ff6f5,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x1ecbaa)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x299ba7[_0x5e3a99(0x172)]('\x0a')};}}catch(_0x5290d4){return this[_0x5e3a99(0x122)]?.[_0x5e3a99(0x145)](_0x5e3a99(0x140),_0x5290d4),{'success':![],'error':_0x5290d4['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x5290d4[_0x5e3a99(0x153)]};}}}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
+ function a0_0x59c1(_0x4892cc,_0x2078b4){_0x4892cc=_0x4892cc-0x1ab;const _0x7826f0=a0_0x7826();let _0x59c194=_0x7826f0[_0x4892cc];if(a0_0x59c1['pOQvDT']===undefined){var _0x363ea7=function(_0x4aca4b){const _0x1eb985='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4751ef='',_0x4f54e5='';for(let _0x5ede2f=0x0,_0x551acd,_0x371b91,_0x2f119c=0x0;_0x371b91=_0x4aca4b['charAt'](_0x2f119c++);~_0x371b91&&(_0x551acd=_0x5ede2f%0x4?_0x551acd*0x40+_0x371b91:_0x371b91,_0x5ede2f++%0x4)?_0x4751ef+=String['fromCharCode'](0xff&_0x551acd>>(-0x2*_0x5ede2f&0x6)):0x0){_0x371b91=_0x1eb985['indexOf'](_0x371b91);}for(let _0x3865fe=0x0,_0x324e18=_0x4751ef['length'];_0x3865fe<_0x324e18;_0x3865fe++){_0x4f54e5+='%'+('00'+_0x4751ef['charCodeAt'](_0x3865fe)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f54e5);};a0_0x59c1['bAZASP']=_0x363ea7,a0_0x59c1['sDJSZD']={},a0_0x59c1['pOQvDT']=!![];}const _0x91616b=_0x7826f0[0x0],_0x359b02=_0x4892cc+_0x91616b,_0x1ef4d2=a0_0x59c1['sDJSZD'][_0x359b02];return!_0x1ef4d2?(_0x59c194=a0_0x59c1['bAZASP'](_0x59c194),a0_0x59c1['sDJSZD'][_0x359b02]=_0x59c194):_0x59c194=_0x1ef4d2,_0x59c194;}const a0_0x5b8d36=a0_0x59c1;function a0_0x7826(){const _0x574d88=['nJG4mteWt0rOq1ji','yxbWBhLuCMLTtw9Kzq','rgLMzIb0B28GBgfYz2uGka','pvSIj10Ow14Ij10QkvSIj10','rMLSzsbUB3qGzM91BMq6ia','C3rHCNrZv2L0Aa','lI4U','C2L6zq','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','mJmWntmYoeLxrKLMAq','mtHxCLncD1u','yMfJA3vWC0nYzwf0zwq','Aw5MBW','Bwf4','Cgf0Aa','ywrK','y3DK','zMLSzxnqCM9JzxnZzwq','CMvWBgfJzunVBMzPzW','AxnbCNjHEq','s0iP','yxbWBhLszxbSywnLBwvUDa','icHJB250zw50ig5VDcbMB3vUzcK','BgLUzxnmAw1PDa','cKjHy2T1ChmGy3jLyxrLzdOG','Aw5JBhvKzxm','odiYnMTwAwr6qG','zxHLyW','y291BNrpy2n1CNjLBMnLCW','zxjYB3i','z2vUzxjHDgveAwzM','BwvZC2fNzq','nfbRAevRzW','zMLSzxnnB2rPzMLLza','odCYnZjSrLf0AKy','tufyx0rjrKzFteLorvm','Bg9Nz2vY','AxnbyNnVBhv0zq','C3bSAxq','zMLSzxm','tufyx0zjtevtx1bfuL9puevsqvrjt04','reLgrL9dt05urvHux0XjtKvt','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','BgLUzxmTBgLTAxq','BwfW','revgqvvmvf9uuKLnx01preu','BgvUz3rO','zxjYB3jZ','CMvXDwLYzxnqCM9Qzwn0','qeaGlq','Bw9Kzq','AgfZ','CgfYC2u','q2HHBMDLzcbSAw5LCZOG','B2XKq29UDgvUDa','ugf0AcbUB3qGywnJzxnZAwjSztOG','tM8GzgLMzMvYzw5Jzxm','mtq3nZbruvbdtwu','ywnJzxnZ','DgLTzw91Da','DxrMltG','uMvWBgfJzw1LBNqGAw4G','cLbYB2nLC3nLzca','y291BNq','q1jfqvrfx0jbq0Tvufm','DhjPBq','AxnqyxrOqwnJzxnZAwjSzq','BMv3q29UDgvUDa','BwLU','mJGXnZCXuwviwxnL','D3jPDgvgAwXL','nZqXnJiXs1v4Cg5T','ChvZAa','CMvWBgfJzw1LBNrZ','CMvHzezPBgu','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','AxnbC3LUyW','D2fYBG','CMvSyxrPDMu','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','CMvWBgfJzq','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','rMLSzsa','AM9PBG','CgfYC2vqyxjHBwv0zxjZ','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','CgfYC2vmAw5LuMfUz2vZ','ChjVy2vZC0zPBgu','zxH0CMfJDef0DhjPyNv0zq','igzPBguOCYKktw9KAwzPzwqG','C3rHDa','tufyx0zjtevFu0LArq','BMv3BgLUzxm','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','tufyx09mrf9dt05uru5ux1njwKu','mtqXotCWELPytfPQ','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca'];a0_0x7826=function(){return _0x574d88;};return a0_0x7826();}(function(_0x310cc8,_0x254953){const _0x542452=a0_0x59c1,_0x28049b=_0x310cc8();while(!![]){try{const _0x446b46=-parseInt(_0x542452(0x209))/0x1+-parseInt(_0x542452(0x1e7))/0x2+-parseInt(_0x542452(0x1c9))/0x3+parseInt(_0x542452(0x207))/0x4*(-parseInt(_0x542452(0x1e5))/0x5)+-parseInt(_0x542452(0x1f1))/0x6*(parseInt(_0x542452(0x1c7))/0x7)+-parseInt(_0x542452(0x1f0))/0x8+-parseInt(_0x542452(0x201))/0x9*(-parseInt(_0x542452(0x1bb))/0xa);if(_0x446b46===_0x254953)break;else _0x28049b['push'](_0x28049b['shift']());}catch(_0x5ab1a5){_0x28049b['push'](_0x28049b['shift']());}}}(a0_0x7826,0x3928d));import{BaseTool}from'./baseTool.js';import{promises as a0_0x4751ef}from'fs';import a0_0x4f54e5 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x5ede2f={},_0x551acd=null){const _0x221ab8=a0_0x59c1;super(_0x5ede2f,_0x551acd),this[_0x221ab8(0x1b2)]=!![],this[_0x221ab8(0x1ce)]=!![],this[_0x221ab8(0x1bd)]=_0x5ede2f[_0x221ab8(0x1bd)]||0x1d4c0,this[_0x221ab8(0x1f9)]={...REPLACE_CONFIG,..._0x5ede2f[_0x221ab8(0x1f9)]};}['getDescription'](){const _0x480c35=a0_0x59c1;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['MAX_FILE_SIZE']/(0x400*0x400)+_0x480c35(0x1ef)+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x480c35(0x1ac)+REPLACE_CONFIG[_0x480c35(0x20f)]+'\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_0x5b8d36(0x1d8)](_0x371b91){const _0x408f35=a0_0x5b8d36;try{if(_0x371b91['trim']()[_0x408f35(0x1ec)]('{'))return this['parseJSON'](_0x371b91);return this['parseXML'](_0x371b91);}catch(_0x2f119c){this[_0x408f35(0x20b)]?.[_0x408f35(0x204)]('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x2f119c[_0x408f35(0x206)]});throw new Error(_0x408f35(0x1da)+_0x2f119c[_0x408f35(0x206)]);}}['parseJSON'](_0x3865fe){const _0x130373=a0_0x5b8d36,_0x324e18=JSON[_0x130373(0x1b6)](_0x3865fe);if(!_0x324e18['files']||!Array[_0x130373(0x1fa)](_0x324e18['files']))throw new Error(_0x130373(0x1e3));return{'files':_0x324e18['files'][_0x130373(0x1ae)](_0x3f89cd=>({'path':_0x3f89cd['path'],'replacements':(_0x3f89cd[_0x130373(0x1cb)]||[])['map'](_0x5c8060=>({'oldContent':_0x5c8060['oldContent'],'newContent':_0x5c8060[_0x130373(0x1c5)],'mode':_0x5c8060['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x5c8060[_0x130373(0x1fe)]||null}))}))};}['parseXML'](_0x230f3f){const _0x235dba=a0_0x5b8d36,_0x426ad1=[],_0x58fcab=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x24537a;while((_0x24537a=_0x58fcab[_0x235dba(0x202)](_0x230f3f))!==null){const _0x48379b=_0x24537a[0x1],_0x4d3a45=_0x24537a[0x2],_0x377ef9=[],_0x241668=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x86b680;while((_0x86b680=_0x241668['exec'](_0x4d3a45))!==null){const _0x86c4f1=_0x86b680[0x1]||'',_0x5a31c3=_0x86b680[0x2],_0x478514=this[_0x235dba(0x1dd)](_0x86c4f1,'mode')||REPLACE_CONFIG[_0x235dba(0x1af)],_0x27884f=this['extractAttribute'](_0x86c4f1,_0x235dba(0x1ad)),_0x2c7a8f=/<old-content>([\s\S]*?)<\/old-content>/i[_0x235dba(0x202)](_0x5a31c3);if(!_0x2c7a8f){this[_0x235dba(0x20b)]?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x4eb931=_0x2c7a8f[0x1],_0x3962e0=/<new-content>([\s\S]*?)<\/new-content>/i[_0x235dba(0x202)](_0x5a31c3);if(!_0x3962e0){this[_0x235dba(0x20b)]?.[_0x235dba(0x1cf)]('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x1c2f81=_0x3962e0[0x1],_0x30ee37=this['applyTrimMode'](_0x4eb931,_0x478514),_0x5b6e5a=this[_0x235dba(0x1e8)](_0x1c2f81,_0x478514);_0x377ef9[_0x235dba(0x1ca)]({'oldContent':_0x30ee37,'newContent':_0x5b6e5a,'mode':_0x478514,'linesLimit':_0x27884f});}_0x377ef9[_0x235dba(0x1b0)]>0x0&&_0x426ad1['push']({'path':_0x48379b,'replacements':_0x377ef9});}return{'files':_0x426ad1};}[a0_0x5b8d36(0x1dd)](_0x5a8fc5,_0xb9977e){const _0x2958c9=a0_0x5b8d36,_0x292892=new RegExp(_0xb9977e+_0x2958c9(0x1ea),'i'),_0x22e369=_0x292892['exec'](_0x5a8fc5);return _0x22e369?_0x22e369[0x1]:null;}[a0_0x5b8d36(0x1e8)](_0x4dbdca,_0x46ddfb){const _0x110a44=a0_0x5b8d36;switch(_0x46ddfb){case _0x110a44(0x1e1):return _0x4dbdca[_0x110a44(0x1d2)](/^\n+|\n+$/g,'');case'none':return _0x4dbdca;case'trim':default:return _0x4dbdca['trim']();}}['getRequiredParameters'](){return['files'];}['customValidateParameters'](_0x4135dc){const _0x4f23d3=a0_0x5b8d36,_0x324bb4=[];if(!_0x4135dc['files']||!Array[_0x4f23d3(0x1fa)](_0x4135dc['files']))_0x324bb4[_0x4f23d3(0x1ca)]('files\x20must\x20be\x20an\x20array');else{_0x4135dc[_0x4f23d3(0x20e)][_0x4f23d3(0x1b0)]===0x0&&_0x324bb4[_0x4f23d3(0x1ca)](_0x4f23d3(0x1cd));_0x4135dc['files'][_0x4f23d3(0x1b0)]>this[_0x4f23d3(0x1f9)]['MAX_FILES_PER_OPERATION']&&_0x324bb4[_0x4f23d3(0x1ca)]('Cannot\x20process\x20more\x20than\x20'+this['replaceConfig']['MAX_FILES_PER_OPERATION']+'\x20files\x20in\x20one\x20operation');for(const _0x5242e3 of _0x4135dc[_0x4f23d3(0x20e)]){!_0x5242e3[_0x4f23d3(0x1f5)]&&_0x324bb4['push'](_0x4f23d3(0x1d3));_0x5242e3['path']&&_0x5242e3[_0x4f23d3(0x1f5)]['includes']('..')&&_0x324bb4['push'](_0x4f23d3(0x1d9)+_0x5242e3[_0x4f23d3(0x1f5)]);if(!_0x5242e3['replacements']||!Array['isArray'](_0x5242e3[_0x4f23d3(0x1cb)]))_0x324bb4[_0x4f23d3(0x1ca)](_0x4f23d3(0x1d6)+_0x5242e3[_0x4f23d3(0x1f5)]+_0x4f23d3(0x1d5));else{if(_0x5242e3[_0x4f23d3(0x1cb)]['length']===0x0)_0x324bb4['push']('File\x20'+_0x5242e3[_0x4f23d3(0x1f5)]+_0x4f23d3(0x1d4));else for(const _0x594aa3 of _0x5242e3['replacements']){!_0x594aa3[_0x4f23d3(0x1b8)]&&_0x594aa3[_0x4f23d3(0x1b8)]!==''&&_0x324bb4[_0x4f23d3(0x1ca)](_0x4f23d3(0x1bf)+_0x5242e3['path']+'\x20missing\x20oldContent'),!_0x594aa3['newContent']&&_0x594aa3[_0x4f23d3(0x1c5)]!==''&&_0x324bb4['push'](_0x4f23d3(0x1bf)+_0x5242e3[_0x4f23d3(0x1f5)]+'\x20missing\x20newContent'),_0x594aa3['oldContent']&&_0x594aa3[_0x4f23d3(0x1b8)]['length']>this[_0x4f23d3(0x1f9)]['MAX_OLD_CONTENT_SIZE']&&_0x324bb4['push'](_0x4f23d3(0x1e6)+this['replaceConfig'][_0x4f23d3(0x1e4)]/0x400+_0x4f23d3(0x1fb)),_0x594aa3[_0x4f23d3(0x1c5)]&&_0x594aa3[_0x4f23d3(0x1c5)][_0x4f23d3(0x1b0)]>this[_0x4f23d3(0x1f9)]['MAX_NEW_CONTENT_SIZE']&&_0x324bb4[_0x4f23d3(0x1ca)]('newContent\x20too\x20large\x20(max\x20'+this[_0x4f23d3(0x1f9)]['MAX_NEW_CONTENT_SIZE']/0x400+_0x4f23d3(0x1fb)),_0x594aa3['mode']&&![_0x4f23d3(0x1c3),_0x4f23d3(0x1e1),'none'][_0x4f23d3(0x200)](_0x594aa3[_0x4f23d3(0x1b4)])&&_0x324bb4['push']('Invalid\x20mode:\x20'+_0x594aa3['mode']+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x324bb4['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x324bb4[_0x4f23d3(0x1d7)](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x5a6a01,_0x47d304){const _0x5b1a6f=a0_0x5b8d36,{files:_0x23d29d}=_0x5a6a01,{projectDir:_0x23810b,agentId:_0x67e33d,directoryAccess:_0x3afcb7}=_0x47d304;let _0x1e6dd6=_0x23810b||process[_0x5b1a6f(0x1f7)]();_0x3afcb7&&_0x3afcb7['workingDirectory']&&(_0x1e6dd6=_0x3afcb7['workingDirectory'],this['logger']?.[_0x5b1a6f(0x1f3)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x3afcb7['workingDirectory'],'agentId':_0x67e33d}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x23d29d['length'],'workingDirectory':_0x1e6dd6,'agentId':_0x67e33d});const _0x17832d=[],_0x9f8733={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0xcb98fa of _0x23d29d){try{const _0x21a2c8=await this[_0x5b1a6f(0x1dc)](_0xcb98fa,_0x1e6dd6,_0x3afcb7);_0x17832d[_0x5b1a6f(0x1ca)](_0x21a2c8),_0x9f8733[_0x5b1a6f(0x1f8)]++,_0x21a2c8['replacementsMade']>0x0&&(_0x9f8733['filesModified']++,_0x9f8733['totalReplacements']+=_0x21a2c8['replacementsMade']),_0x21a2c8['backupCreated']&&_0x9f8733[_0x5b1a6f(0x1f2)]++;}catch(_0x33497a){this['logger']?.['error']('Error\x20processing\x20file\x20'+_0xcb98fa[_0x5b1a6f(0x1f5)],{'error':_0x33497a['message']}),_0x17832d['push']({'filePath':_0xcb98fa[_0x5b1a6f(0x1f5)],'success':![],'error':_0x33497a[_0x5b1a6f(0x206)]}),_0x9f8733[_0x5b1a6f(0x1b1)]++;}}return{'success':_0x9f8733['errors']===0x0,'results':_0x17832d,'statistics':_0x9f8733,'summary':this['generateSummary'](_0x9f8733),'toolUsed':'file-content-replace'};}async[a0_0x5b8d36(0x1dc)](_0x3981f2,_0x3ab546,_0x4af004){const _0x553007=a0_0x5b8d36,{path:_0x5605ad,replacements:_0x114bfb}=_0x3981f2,_0xd97357=a0_0x4f54e5[_0x553007(0x20c)](_0x5605ad)?_0x5605ad:a0_0x4f54e5['resolve'](_0x3ab546,_0x5605ad);if(_0x4af004){const _0x18b37f=this[_0x553007(0x1c4)](_0xd97357,_0x3ab546,_0x4af004);if(!_0x18b37f)throw new Error(_0x553007(0x1b9)+_0x5605ad);}try{await a0_0x4751ef[_0x553007(0x1bc)](_0xd97357);}catch(_0x325651){throw new Error(_0x553007(0x1eb)+_0x5605ad);}const _0x472665=await a0_0x4751ef[_0x553007(0x1df)](_0xd97357);if(_0x472665[_0x553007(0x1ee)]>this[_0x553007(0x1f9)][_0x553007(0x1e0)])throw new Error('File\x20too\x20large\x20(max\x20'+this['replaceConfig'][_0x553007(0x1e0)]/(0x400*0x400)+'MB):\x20'+_0x5605ad);let _0x1a9127=await a0_0x4751ef[_0x553007(0x1cc)](_0xd97357,_0x553007(0x1be));const _0x18b1ad=_0x1a9127;let _0x35c905=![];if(this['replaceConfig'][_0x553007(0x1c2)]){const _0x2f141a=_0xd97357+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x4751ef[_0x553007(0x1c8)](_0x2f141a,_0x18b1ad,'utf-8'),_0x35c905=!![];}catch(_0x146f93){this[_0x553007(0x20b)]?.[_0x553007(0x1cf)](_0x553007(0x1d1)+_0x146f93['message']);}}let _0x40421e=0x0;const _0x224766=[];for(const _0x478130 of _0x114bfb){const _0x56e5cf=await this[_0x553007(0x1fc)](_0x1a9127,_0x478130[_0x553007(0x1b8)],_0x478130[_0x553007(0x1c5)],_0x478130[_0x553007(0x1fe)],_0x478130['mode']);_0x1a9127=_0x56e5cf['newContent'],_0x40421e+=_0x56e5cf['count'],_0x224766['push']({'oldContent':_0x478130['oldContent']['substring'](0x0,0x32)+(_0x478130['oldContent'][_0x553007(0x1b0)]>0x32?_0x553007(0x1ed):''),'newContent':_0x478130[_0x553007(0x1c5)]['substring'](0x0,0x32)+(_0x478130['newContent'][_0x553007(0x1b0)]>0x32?'...':''),'count':_0x56e5cf[_0x553007(0x1c1)],'mode':_0x478130[_0x553007(0x1b4)],'linesLimit':_0x478130['linesLimit']});}_0x40421e>0x0&&await a0_0x4751ef[_0x553007(0x1c8)](_0xd97357,_0x1a9127,_0x553007(0x1be));const _0x296b72=_0x40421e>0x0?this['generateDiff'](_0x18b1ad,_0x1a9127):null;return{'filePath':_0x5605ad,'resolvedPath':_0xd97357,'success':!![],'replacementsMade':_0x40421e,'backupCreated':_0x35c905,'replacementDetails':_0x224766,'diff':_0x296b72,'message':_0x40421e>0x0?'Made\x20'+_0x40421e+'\x20replacement(s)\x20in\x20'+_0x5605ad:'No\x20replacements\x20made\x20in\x20'+_0x5605ad+_0x553007(0x1fd)};}['isPathAccessible'](_0x5d76ae,_0x28a5c4,_0x477199){const _0x5a4518=a0_0x5b8d36,_0x5a2aca=a0_0x4f54e5['relative'](_0x28a5c4,_0x5d76ae);if(!_0x5a2aca['startsWith']('..')&&!a0_0x4f54e5[_0x5a4518(0x20c)](_0x5a2aca))return!![];if(_0x477199[_0x5a4518(0x1e2)])for(const _0x3f177a of _0x477199[_0x5a4518(0x1e2)]){const _0x5e30c0=a0_0x4f54e5[_0x5a4518(0x1d0)](_0x3f177a,_0x5d76ae);if(!_0x5e30c0['startsWith']('..')&&!a0_0x4f54e5[_0x5a4518(0x20c)](_0x5e30c0))return!![];}return![];}async['applyReplacement'](_0x1ea4d8,_0x1ee5e2,_0x33cf14,_0x242bd9,_0x238795){const _0x220431=a0_0x5b8d36;if(!_0x242bd9){const _0x310e70=this[_0x220431(0x203)](_0x1ea4d8,_0x1ee5e2);if(_0x310e70===0x0)return{'newContent':_0x1ea4d8,'count':0x0};const _0x4be7ea=_0x1ea4d8['split'](_0x1ee5e2)['join'](_0x33cf14);return{'newContent':_0x4be7ea,'count':_0x310e70};}const _0x18cbdc=this[_0x220431(0x1db)](_0x242bd9),_0x401cf2=_0x1ea4d8['split']('\x0a');let _0x2f32a2=0x0;for(let _0xb2a463=0x0;_0xb2a463<_0x401cf2[_0x220431(0x1b0)];_0xb2a463++){const _0x543bbe=_0xb2a463+0x1;if(_0x18cbdc[_0x220431(0x1b5)](_0x543bbe)){if(_0x401cf2[_0xb2a463][_0x220431(0x200)](_0x1ee5e2)){const _0x2cc277=this['countOccurrences'](_0x401cf2[_0xb2a463],_0x1ee5e2);_0x401cf2[_0xb2a463]=_0x401cf2[_0xb2a463]['split'](_0x1ee5e2)[_0x220431(0x1d7)](_0x33cf14),_0x2f32a2+=_0x2cc277;}}}return{'newContent':_0x401cf2[_0x220431(0x1d7)]('\x0a'),'count':_0x2f32a2};}[a0_0x5b8d36(0x203)](_0x868abe,_0x1a0628){const _0x41a83e=a0_0x5b8d36;if(!_0x1a0628)return 0x0;return _0x868abe[_0x41a83e(0x20d)](_0x1a0628)['length']-0x1;}[a0_0x5b8d36(0x1db)](_0xd33cf7){const _0x57ad07=a0_0x5b8d36,_0x79a65d=new Set();if(!_0xd33cf7||_0xd33cf7[_0x57ad07(0x1c3)]()==='')return _0x79a65d;const _0x517f93=_0xd33cf7['split'](',');for(const _0x5d70a6 of _0x517f93){const _0x2eef4b=_0x5d70a6[_0x57ad07(0x1c3)]();if(_0x2eef4b==='')continue;if(_0x2eef4b[_0x57ad07(0x200)]('-')){const [_0x577b77,_0x5774fa]=_0x2eef4b['split']('-')['map'](_0x25f9c2=>parseInt(_0x25f9c2['trim'](),0xa));if(!isNaN(_0x577b77)&&!isNaN(_0x5774fa)&&_0x5774fa-_0x577b77<this[_0x57ad07(0x1f9)]['MAX_LINE_RANGE_SIZE'])for(let _0x5965c5=_0x577b77;_0x5965c5<=_0x5774fa;_0x5965c5++){_0x79a65d['add'](_0x5965c5);}}else{const _0x55e4b0=parseInt(_0x2eef4b,0xa);!isNaN(_0x55e4b0)&&_0x79a65d[_0x57ad07(0x1f6)](_0x55e4b0);}}return _0x79a65d;}[a0_0x5b8d36(0x205)](_0x2ed78a,_0x17f7b4){const _0xc0872b=a0_0x5b8d36,_0x78f487=_0x2ed78a['split']('\x0a'),_0x3ab350=_0x17f7b4[_0xc0872b(0x20d)]('\x0a');let _0x12ff7a=-0x1,_0x180f39=-0x1;const _0x53d386=Math[_0xc0872b(0x1f4)](_0x78f487[_0xc0872b(0x1b0)],_0x3ab350[_0xc0872b(0x1b0)]);for(let _0x2e6e7a=0x0;_0x2e6e7a<_0x53d386;_0x2e6e7a++){const _0xa858b4=_0x2e6e7a<_0x78f487['length']?_0x78f487[_0x2e6e7a]:'',_0x5bc0f5=_0x2e6e7a<_0x3ab350[_0xc0872b(0x1b0)]?_0x3ab350[_0x2e6e7a]:'';if(_0xa858b4!==_0x5bc0f5){if(_0x12ff7a===-0x1)_0x12ff7a=_0x2e6e7a;_0x180f39=_0x2e6e7a;}}if(_0x12ff7a===-0x1)return _0xc0872b(0x1ba);const _0x2d1be2=this['replaceConfig'][_0xc0872b(0x1ab)],_0x1b8090=Math[_0xc0872b(0x1f4)](0x0,_0x12ff7a-_0x2d1be2),_0x3bd8e3=Math[_0xc0872b(0x1c6)](_0x53d386-0x1,_0x180f39+_0x2d1be2);if(_0x3bd8e3-_0x1b8090>this['replaceConfig'][_0xc0872b(0x20a)])return _0xc0872b(0x1e9)+(_0x3bd8e3-_0x1b8090+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0xc0872b(0x1b7)+(_0x12ff7a+0x1)+'\x20to\x20'+(_0x180f39+0x1));let _0x5ede72=_0xc0872b(0x1b3)+(_0x1b8090+0x1)+','+(_0x3bd8e3-_0x1b8090+0x1)+'\x20+'+(_0x1b8090+0x1)+','+(_0x3bd8e3-_0x1b8090+0x1)+'\x20@@\x0a';for(let _0x2824f6=_0x1b8090;_0x2824f6<=_0x3bd8e3;_0x2824f6++){const _0x326d5e=_0x2824f6<_0x78f487[_0xc0872b(0x1b0)]?_0x78f487[_0x2824f6]:'',_0x845299=_0x2824f6<_0x3ab350[_0xc0872b(0x1b0)]?_0x3ab350[_0x2824f6]:'';_0x326d5e===_0x845299?_0x5ede72+='\x20\x20'+_0x326d5e+'\x0a':(_0x5ede72+='-\x20'+_0x326d5e+'\x0a',_0x5ede72+='+\x20'+_0x845299+'\x0a');}return _0x5ede72;}['generateSummary'](_0x4998b2){const _0x59d0bb=a0_0x5b8d36;return(_0x59d0bb(0x1c0)+_0x4998b2['filesProcessed']+_0x59d0bb(0x1de)+_0x4998b2[_0x59d0bb(0x208)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x4998b2['totalReplacements']+_0x59d0bb(0x1ff)+_0x4998b2[_0x59d0bb(0x1f2)]+'\x0aErrors:\x20'+_0x4998b2['errors']+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0xdce3c){const _0x4ce332=a0_0x5b8d36;this[_0x4ce332(0x20b)]?.[_0x4ce332(0x1f3)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0xdce3c});}}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_0x27597f=a0_0x2779;(function(_0x1d1979,_0x47cbaf){const _0x300d8=a0_0x2779,_0x5c86f3=_0x1d1979();while(!![]){try{const _0x499e70=-parseInt(_0x300d8(0xea))/0x1+-parseInt(_0x300d8(0x14f))/0x2*(parseInt(_0x300d8(0xf7))/0x3)+-parseInt(_0x300d8(0x15b))/0x4+-parseInt(_0x300d8(0x161))/0x5*(-parseInt(_0x300d8(0x133))/0x6)+parseInt(_0x300d8(0x173))/0x7+-parseInt(_0x300d8(0x112))/0x8+parseInt(_0x300d8(0x166))/0x9;if(_0x499e70===_0x47cbaf)break;else _0x5c86f3['push'](_0x5c86f3['shift']());}catch(_0x57937e){_0x5c86f3['push'](_0x5c86f3['shift']());}}}(a0_0x3bdb,0x4d80b));import{BaseTool}from'./baseTool.js';import a0_0x200b25 from'../utilities/tagParser.js';import a0_0x1a4e0e from'../utilities/directoryAccessManager.js';function a0_0x2779(_0x353e21,_0x58aad7){_0x353e21=_0x353e21-0xdd;const _0x3bdb1e=a0_0x3bdb();let _0x27798a=_0x3bdb1e[_0x353e21];if(a0_0x2779['DdOcyO']===undefined){var _0x3d55e3=function(_0x2b12bf){const _0x3aaf87='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x200b25='',_0x1a4e0e='';for(let _0x580a2d=0x0,_0x50474a,_0x3f97ac,_0x348bf3=0x0;_0x3f97ac=_0x2b12bf['charAt'](_0x348bf3++);~_0x3f97ac&&(_0x50474a=_0x580a2d%0x4?_0x50474a*0x40+_0x3f97ac:_0x3f97ac,_0x580a2d++%0x4)?_0x200b25+=String['fromCharCode'](0xff&_0x50474a>>(-0x2*_0x580a2d&0x6)):0x0){_0x3f97ac=_0x3aaf87['indexOf'](_0x3f97ac);}for(let _0x3c73ec=0x0,_0x36d662=_0x200b25['length'];_0x3c73ec<_0x36d662;_0x3c73ec++){_0x1a4e0e+='%'+('00'+_0x200b25['charCodeAt'](_0x3c73ec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a4e0e);};a0_0x2779['MxaFpM']=_0x3d55e3,a0_0x2779['eydMXG']={},a0_0x2779['DdOcyO']=!![];}const _0x468044=_0x3bdb1e[0x0],_0x179a18=_0x353e21+_0x468044,_0x1969c8=a0_0x2779['eydMXG'][_0x179a18];return!_0x1969c8?(_0x27798a=a0_0x2779['MxaFpM'](_0x27798a),a0_0x2779['eydMXG'][_0x179a18]=_0x27798a):_0x27798a=_0x1969c8,_0x27798a;}import a0_0x580a2d from'fs/promises';import a0_0x50474a from'path';import a0_0x3f97ac from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x3bdb(){const _0x595615=['rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','yxjYyxK','BgvUz3rO','zgvZDc1WyxrO','Bw92zq','B3v0Chv0ugf0Aa','nda5odi3zgfPCxnx','zMLSzq','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','CM91BMq','igj5DgvZigzYB20G','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','y29UDgvUDa','BxrPBwu','CMvHzgrPCG','yMLYDgH0Aw1L','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','yxbWzw5K','nZKYmZL2wePLrgW','CgfYC2vbDhrYAwj1DgvZ','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','AxneAxjLy3rVCNK','igj5DgvZicHTyxGG','q3jLyxrLzcbKAxjLy3rVCNKG','zxHLy3v0zq','zMLSzs1WyxrO','AxnbCNjHEq','z2v0v29YA2LUz0rPCMvJDg9YEq','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','y3jLyxrLrgLYCW','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','zxH0BMfTzq','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcKnssvrjq0fmoIbcB3rOifHntcbHBMqGsLnptIbMB3jTyxrZigfYzsbMDwXSEsbZDxbWB3j0zwqUifDOzw4GDxnPBMCGwe1migzVCM1HDcWGy29TBwfUzhmGyxjLigf1Dg9TyxrPy2fSBhKGy29UDMvYDgvKihrVihrOzsbHChbYB3bYAwf0zsbZDhj1y3r1CMuGAw50zxjUywXSEsaTihLVDsbKB24NDcbUzwvKihrVig1HBNvHBgX5ihDYyxaGDgHLBsbPBIbHBIbHy3rPB25ZigfYCMf5lGOkvvnbr0uGlsbuv08GrK9stufuuYbtvvbqt1juruq6cGPgt1jnqvqGmsaTifHntcbtvfLmrsaOuMvJB21Tzw5KzwqPoGPBDg9VBcbPzd0IzMLSzxn5C3rLBsjDcJXYzwfKigzPBguTCgf0Ad0IC3jJl2LUzgv4lMPZiIaVpGO8D3jPDguGB3v0Chv0lxbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cMnVBNn0iej1DhrVBIa9icGPid0+ihSkicbYzxr1CM4Gpgj1DhrVBJ5dBgLJAYbTztWVyNv0Dg9UpJSkFtSkzxHWB3j0igrLzMf1BhqGqNv0Dg9UoWO8l3DYAxrLpGPBl3rVB2XDcGPgt1jnqvqGmIaTiePtt04Gu1rzteu6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiSiaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWGcIaGicaGicjVDxrWDxrqyxrOiJOGiNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYiScIaGicaGicjJB250zw50iJOGiMnVBNn0iej1DhrVBIa9icGPid0+ihSGCMv0DxjUidXIDxr0B24+q2XPy2SGBwu8l2j1DhrVBJ47ih07iGOGicaGFqOGif0kFqPGygakcKLnue9svefovdOGcI0GvxnLigvPDgHLCIbMB3jTyxqGy29UC2LZDgvUDgX5lIbeBYbot1qGBwL4igzVCM1HDhmGAw4GysbZAw5NBguGy29TBwfUzc4klsbytuWGzM9YBwf0igLZihjLy29TBwvUzgvKigzVCIbZAw5NBguGB3bLCMf0Aw9UCYbHBMqGyMv0DgvYihjLywrHyMLSAxr5cI0GsLnptIbMB3jTyxqGAxmGCMvJB21Tzw5KzwqGzM9YignVBxbSzxGGBxvSDgKTywn0Aw9Uig9WzxjHDgLVBNmklsbcB3rOigzVCM1HDhmGD29YAYbLCxvHBgX5ihDLBgWGyw5KihbYB2r1y2uGDgHLihnHBwuGCMvZDwX0CWOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZcI0GD3jPDgu6ifDYAxrLignVBNrLBNqGDg8GzMLSzqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzqOTigrLBgv0ztOGrgvSzxrLigeGzMLSzqOTignVChK6ienVChKGzMLSzsbMCM9TihnVDxjJzsb0BYbKzxn0Aw5HDgLVBGOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguklsbJCMvHDguTzgLYoIbdCMvHDguGzgLYzwn0B3j5cI0GBgLZDdOGtgLZDcbKAxjLy3rVCNKGy29UDgvUDhmklsbLEgLZDhm6ienOzwnRigLMigzPBguVzgLYzwn0B3j5igv4Axn0CWOTihn0yxrZoIbhzxqGzMLSzs9KAxjLy3rVCNKGBwv0ywrHDgekcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8GCMvHzaOTig91Dhb1Dc1WyxrOoIbqyxrOihDOzxjLihrVihDYAxrLl2nYzwf0zsbMAwXLcI0GC291CMnLlxbHDgG6ifnVDxjJzsbWyxrOigzVCIbJB3b5l21VDMuGB3bLCMf0Aw9UCWOTigrLC3qTCgf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbKAxjLy3rVCNKGB3bLCMf0Aw9UCWOTignVBNrLBNq6ienVBNrLBNqGDg8GD3jPDguVyxbWzw5KcI0Gzw5JB2rPBMC6iezPBguGzw5JB2rPBMCGkgrLzMf1Bhq6ihv0zJGPcI0Gy3jLyxrLlwrPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOku0LnueXfiezjteuGq1jfqvrjt04GkfHntcbMB3jTyxqGlsbYzwnVBw1LBMrLzcK6cLT0B29SigLKpsjMAwXLC3LZDgvTiL0kphDYAxrLig91Dhb1Dc1WyxrOpsjOzwXSBY5JiJ4ki2LUy2X1zguGphn0zgLVlMG+cGPPBNqGBwfPBIGPihSkicaGihbYAw50zIGIsgvSBg8SifDVCMXKivXUiIK7cIaGicbYzxr1CM4GmdSkFqO8l3DYAxrLpGPBl3rVB2XDcGPsrufesu5hiezjtevticHytuWGzM9YBwf0ktOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8CMvHzcbMAwXLlxbHDgG9iNbHy2THz2uUANnVBIiGlZ4kwY90B29SxqOktvvmveLqteuGt1bfuKfusu9ouYaOsLnptIbMB3jTyxqGCMvJB21Tzw5KzwqPoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWkicaGicaGiM91Dhb1DfbHDgGIoIaIC3jJl2jHy2T1Cc5QCYiScIaGicaGicjJB250zw50iJOGiI8ViejHy2T1CcbMAwXLxg5JB25ZB2XLlMXVzYGNyMfJA3vWjYK7iGOGicaGFqOGif0kFqPGygakcK9usevsifHntcbfwefnueXfuZOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8y29WEsbZB3vYy2uTCgf0Ad0IDgvTCgXHDguUANmIigrLC3qTCgf0Ad0IC3jJl2nVBxbVBMvUDc5QCYiGlZ4kpgnYzwf0zs1KAxiGzgLYzwn0B3j5psjZCMmVy29TCg9Uzw50CY91AsiGlZ4kpgXPC3qGzgLYzwn0B3j5psjZCMmIic8+cLSVDg9VBf0kcLnfq1vssvrzoGOTie9WzxjHDgLVBNmGCMvZDhjPy3rLzcb0BYbWCM9Qzwn0igrPCMvJDg9YEqOTiezPBguGC2L6zsbSAw1PDhmGzw5MB3jJzwqGkg1HEca','y29WEuzPBgu','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','C3rHDa','rMfPBgvKihrVigrLBgv0zsbMAwXLia','BgLZDa','igfJy2vZCYbKzw5Pzwq6ia','zw50CMLLCW','tufyx0zjtevFu0LArq','Dw5SAw5R','AxnbyNnVBhv0zq','DMfSAwrHDgvxCML0zufJy2vZCW','nZe2ndK2CKHNuvz1','zMLSDgvY','lMnTza','Bg9N','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','y3jLyxrLuMvSyxrPDMvqyxrO','C3rYAw5N','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','Bg9Nz2vY','D29YA2LUz0rPCMvJDg9YEq','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','lMrLBgv0zwqTyMfJA3vWlq','BMfTzq','C3rYAw5NAwz5','z2v0u3vWCg9YDgvKqwn0Aw9UCW','BgLZDerPCMvJDg9YEq','igv4Axn0CYbHCYa','ywXSB3DLzev4DgvUC2LVBNm','zMLSzvbHDgG','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','B3bLCMf0Aw9UsgLZDg9YEq','z2v0ugfYyw1LDgvYu2nOzw1H','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','yMXVy2TLzev4DgvUC2LVBNm','B3v0Chv0lxbHDgG','y2HLy2TfEgLZDhm','BM93','CMvXDwLYzxnqCM9Qzwn0','y29WEq','zxHPC3rZ','C2L6zq','mJy1mZi2tNbLrerP','D3jPDgu','y3jLyxrLlwrPCNm','DhLWzq','qxbWzw5KzwqG','oIb0ExbLigLZihjLCxvPCMvK','ywrKvg9iAxn0B3j5','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','DMfSAwrHDgvszwfKqwnJzxnZ','yxbWzw5Kvg9gAwXL','ihrVia','Bwf0y2HbBgW','C3rHDhm','C2XPy2u','rMfPBgvKihrVignVChKG','icHIywnRDxaGy3jLyxrLzcK','rMfPBgvKihrVihjLywqGzMLSzsa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','DxrMoa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zMLSzxn5CW','Bw9Kzq','BwfW','y3jLyxrLrgLYzwn0B3j5','CMvHza','zgLYBMfTzq','v3jPDguGywnJzxnZigrLBMLLzdOG','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','ndzRBer3Bwe','C3vJy2vZCW','lNnJCG','y3jLyxrLlwrPCG','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24klsbcywnRDxaGy3jLyxrLzcbMB3iGzgvZDhj1y3rPDMuGB3bLCMf0Aw9UCWOkru5dt0rjtKCGu1vque9svdOklsb1Dgy4icHKzwzHDwX0kqOTigfZy2LPcI0GyMfZzty0cI0GyMLUyxj5cI0GAgv4cIaGica','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','CMvHzezPBgu','zgvIDwC','zgvZDfbHDgG','ywn0Aw9UCW','Aw5JBhvKzxm','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','mty5ntm1nKvgCMvVEG','igrVzxmGBM90igv4Axn0','y3DK','Dg9ju09tDhjPBMC','rMLSzsb0B28GBgfYz2u6ia','BwTKAxi','mtviDwzlzeO','yM9VBgvHBG','CMvUyw1L','lMjHDa','D3jPDgvgAwXL','mtqZmZqZotLXBLjRvwO','ywXSB3DLza','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','z2v0rgvZy3jPChrPB24','ywXSB3DLzerPCMvJDg9YAwvZ','lMnVBq','BwvZC2fNzq','C291CMnLlxbHDgG','qwn0Aw9Uia','zgvSzxrLrMLSzq','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','DhjPBq','ChvZAa','odu5nJi4C3nQs2P3','CMvZB2X2zq','B2jQzwn0','u291CMnLigzPBguGDg9VigXHCMDLoIa','CMvZB2X2zvbHDgG','AxntEw1IB2XPy0XPBMS','Dg9mB3DLCKnHC2u','AxnbC3LUyW','Cgf0Aa','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','CMvHC29U','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','zw5JB2rPBMC','zgvSzxrL','Bwf4rMLSzvnPEMu','DgLTzw91Da','C291CMnLugf0Aa','zgLYzwn0B3j5'];a0_0x3bdb=function(){return _0x595615;};return a0_0x3bdb();}class FileSystemTool extends BaseTool{constructor(_0x348bf3={},_0x3c73ec=null){const _0x12aa65=a0_0x2779;super(_0x348bf3,_0x3c73ec),this[_0x12aa65(0x12f)]=!![],this[_0x12aa65(0x17a)]=![],this['timeout']=_0x348bf3[_0x12aa65(0xe1)]||0x7530,this[_0x12aa65(0x108)]=_0x348bf3['maxConcurrentOperations']||0x5,this[_0x12aa65(0xe0)]=_0x348bf3['maxFileSize']||SYSTEM_DEFAULTS[_0x12aa65(0x10e)],this[_0x12aa65(0x125)]=_0x348bf3['allowedExtensions']||null,this[_0x12aa65(0x12b)]=_0x348bf3[_0x12aa65(0x12b)]||['.exe',_0x12aa65(0x164),_0x12aa65(0x114),_0x12aa65(0x151),_0x12aa65(0x16b)],this[_0x12aa65(0x16a)]=_0x348bf3['allowedDirectories']||null,this['operationHistory']=[],this[_0x12aa65(0x11b)]=new a0_0x1a4e0e(_0x348bf3,_0x3c73ec);}[a0_0x27597f(0x169)](){const _0x4c07e4=a0_0x27597f;return _0x4c07e4(0x106)+Math[_0x4c07e4(0xed)](this['maxFileSize']/0x400/0x400)+_0x4c07e4(0x153);}['parseParameters'](_0x36d662){const _0x1cfffe=a0_0x27597f;try{const _0x56bf8a={},_0x5736f0=[];this['logger']?.[_0x1cfffe(0x156)](_0x1cfffe(0xe4),{'contentLength':_0x36d662[_0x1cfffe(0xe6)],'contentPreview':_0x36d662['substring'](0x0,0xc8)});const _0x2a0530=['read','delete',_0x1cfffe(0x130),'move','create-dir','list','exists','stats',_0x1cfffe(0xf6)];for(const _0x5e2ff0 of _0x2a0530){const _0x392a44=a0_0x200b25[_0x1cfffe(0x13a)](_0x36d662,_0x5e2ff0);for(const _0x320757 of _0x392a44){const _0x2bd9b8={'type':_0x5e2ff0,..._0x320757['attributes']};_0x2bd9b8[_0x1cfffe(0xfe)]&&(_0x2bd9b8[_0x1cfffe(0x126)]=_0x2bd9b8[_0x1cfffe(0xfe)],delete _0x2bd9b8[_0x1cfffe(0xfe)]),_0x2bd9b8['output-path']&&(_0x2bd9b8[_0x1cfffe(0xe9)]=_0x2bd9b8[_0x1cfffe(0x12c)],delete _0x2bd9b8['output-path']),_0x2bd9b8[_0x1cfffe(0x16d)]&&(_0x2bd9b8[_0x1cfffe(0xe2)]=_0x2bd9b8[_0x1cfffe(0x16d)],delete _0x2bd9b8[_0x1cfffe(0x16d)]),_0x2bd9b8[_0x1cfffe(0xe7)]&&(_0x2bd9b8['destPath']=_0x2bd9b8['dest-path'],delete _0x2bd9b8['dest-path']),_0x2bd9b8[_0x1cfffe(0x135)]&&(_0x2bd9b8['createDirs']=_0x2bd9b8[_0x1cfffe(0x135)]==='true',delete _0x2bd9b8[_0x1cfffe(0x135)]),_0x5736f0['push'](_0x2bd9b8);}}const _0x4f8e5e=_0x36d662[_0x1cfffe(0x13e)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x4c35ae of _0x4f8e5e){const _0x3cc5e2=new a0_0x200b25(),_0x5d0e78=_0x3cc5e2[_0x1cfffe(0xf8)](_0x4c35ae[0x1]),_0x22afa1=_0x4c35ae[0x2]['trim'](),_0x310990={'type':_0x1cfffe(0x134),'content':_0x22afa1,..._0x5d0e78};_0x310990[_0x1cfffe(0x12c)]&&(_0x310990[_0x1cfffe(0xe9)]=_0x310990[_0x1cfffe(0x12c)],delete _0x310990['output-path']),_0x310990['create-dirs']&&(_0x310990[_0x1cfffe(0x102)]=_0x310990['create-dirs']==='true',delete _0x310990[_0x1cfffe(0x135)]),_0x5736f0['push'](_0x310990);}const _0x344b4d=_0x36d662['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x4ac390 of _0x344b4d){const _0x1dbf96=new a0_0x200b25(),_0xdaa936=_0x1dbf96['parseAttributes'](_0x4ac390[0x1]),_0x237d21=_0x4ac390[0x2][_0x1cfffe(0x171)](),_0x4510ee={'type':_0x1cfffe(0xf6),'content':_0x237d21,..._0xdaa936};_0x4510ee['file-path']&&(_0x4510ee['filePath']=_0x4510ee['file-path'],delete _0x4510ee[_0x1cfffe(0xfe)]),_0x5736f0['push'](_0x4510ee);}return _0x56bf8a[_0x1cfffe(0x158)]=_0x5736f0,_0x56bf8a['rawContent']=_0x36d662[_0x1cfffe(0x171)](),this[_0x1cfffe(0x11c)]?.[_0x1cfffe(0x156)](_0x1cfffe(0xec),{'totalActions':_0x5736f0['length'],'actionTypes':_0x5736f0[_0x1cfffe(0x149)](_0x53d96b=>_0x53d96b[_0x1cfffe(0x136)]),'actions':_0x5736f0['map'](_0x1c5352=>({'type':_0x1c5352[_0x1cfffe(0x136)],'filePath':_0x1c5352['filePath'],'outputPath':_0x1c5352[_0x1cfffe(0xe9)],'hasContent':!!_0x1c5352[_0x1cfffe(0xf1)]}))}),_0x56bf8a;}catch(_0x1bf744){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x1bf744[_0x1cfffe(0x16c)]);}}[a0_0x27597f(0x116)](){return['actions'];}['customValidateParameters'](_0x2402fd){const _0x3bc3ff=a0_0x27597f,_0x40dc4a=[];if(!_0x2402fd[_0x3bc3ff(0x158)]||!Array[_0x3bc3ff(0xff)](_0x2402fd['actions'])||_0x2402fd['actions'][_0x3bc3ff(0xe6)]===0x0)_0x40dc4a['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x3da7d2,_0x518252]of _0x2402fd['actions'][_0x3bc3ff(0x10d)]()){if(!_0x518252[_0x3bc3ff(0x136)]){_0x40dc4a[_0x3bc3ff(0x172)]('Action\x20'+(_0x3da7d2+0x1)+_0x3bc3ff(0x138));continue;}switch(_0x518252['type']){case _0x3bc3ff(0x14b):case'delete':case _0x3bc3ff(0x131):case _0x3bc3ff(0x13f):!_0x518252['filePath']&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x518252['type']);break;case _0x3bc3ff(0x134):!_0x518252['outputPath']&&_0x40dc4a['push'](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x518252['content']&&_0x518252[_0x3bc3ff(0xf1)]!==''&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x518252[_0x3bc3ff(0x126)]&&_0x40dc4a['push']('Action\x20'+(_0x3da7d2+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x518252[_0x3bc3ff(0xf1)]&&_0x518252[_0x3bc3ff(0xf1)]!==''&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+_0x3bc3ff(0x104));break;case _0x3bc3ff(0x130):case'move':!_0x518252[_0x3bc3ff(0xe2)]&&_0x40dc4a['push']('Action\x20'+(_0x3da7d2+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x518252[_0x3bc3ff(0x136)]);!_0x518252['destPath']&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x518252['type']);break;case'create-dir':case'list':!_0x518252[_0x3bc3ff(0xe3)]&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+_0x3bc3ff(0xf9)+_0x518252['type']);break;default:_0x40dc4a['push']('Action\x20'+(_0x3da7d2+0x1)+_0x3bc3ff(0xf5)+_0x518252[_0x3bc3ff(0x136)]);}_0x518252[_0x3bc3ff(0x126)]&&!this['isAllowedFileExtension'](_0x518252['filePath'])&&_0x40dc4a[_0x3bc3ff(0x172)](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+_0x3bc3ff(0xdd)+a0_0x50474a[_0x3bc3ff(0x105)](_0x518252['filePath'])),_0x518252['outputPath']&&!this[_0x3bc3ff(0x17c)](_0x518252[_0x3bc3ff(0xe9)])&&_0x40dc4a['push'](_0x3bc3ff(0x16e)+(_0x3da7d2+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x50474a[_0x3bc3ff(0x105)](_0x518252[_0x3bc3ff(0xe9)]));}return{'valid':_0x40dc4a[_0x3bc3ff(0xe6)]===0x0,'errors':_0x40dc4a};}async[a0_0x27597f(0xfd)](_0x516913,_0xc53b3e){const _0x1bc862=a0_0x27597f;if(!_0x516913||typeof _0x516913!==_0x1bc862(0x175))throw new Error(_0x1bc862(0xf0));const {actions:_0x46a586}=_0x516913;if(!_0x46a586)throw new Error(_0x1bc862(0x170)+JSON[_0x1bc862(0x121)](Object['keys'](_0x516913)));if(!Array['isArray'](_0x46a586))throw new Error(_0x1bc862(0x17e)+typeof _0x46a586);if(_0x46a586[_0x1bc862(0xe6)]===0x0)throw new Error(_0x1bc862(0x146));const {projectDir:_0x11821c,agentId:_0x57a3c7,directoryAccess:_0x21d490}=_0xc53b3e,_0x4de228=_0x21d490||this['directoryAccessManager'][_0x1bc862(0x101)]({'workingDirectory':_0x11821c||process['cwd'](),'writeEnabledDirectories':[_0x11821c||process['cwd']()],'restrictToProject':!![]});_0x21d490&&_0x21d490['workingDirectory']?(console[_0x1bc862(0x115)](_0x1bc862(0x154),_0x21d490[_0x1bc862(0x11d)]),console[_0x1bc862(0x115)](_0x1bc862(0x127),JSON[_0x1bc862(0x121)](_0x21d490,null,0x2))):(console[_0x1bc862(0x115)](_0x1bc862(0xef),_0x11821c||process[_0x1bc862(0x15d)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x21d490),console[_0x1bc862(0x115)](_0x1bc862(0x117),_0x11821c));const _0x5e9415=[];for(const _0x55f345 of _0x46a586){try{let _0x4d5cd1;switch(_0x55f345[_0x1bc862(0x136)]){case'read':_0x4d5cd1=await this['readFile'](_0x55f345[_0x1bc862(0x126)],_0x4de228,_0x55f345['encoding']);break;case _0x1bc862(0x134):_0x4d5cd1=await this['writeFile'](_0x55f345[_0x1bc862(0xe9)],_0x55f345[_0x1bc862(0xf1)],_0x4de228,{'encoding':_0x55f345[_0x1bc862(0xde)],'createDirs':_0x55f345[_0x1bc862(0x102)]});break;case'append':_0x4d5cd1=await this[_0x1bc862(0x13c)](_0x55f345[_0x1bc862(0x126)],_0x55f345['content'],_0x4de228,_0x55f345[_0x1bc862(0xde)]);break;case'delete':_0x4d5cd1=await this['deleteFile'](_0x55f345['filePath'],_0x4de228);break;case'copy':_0x4d5cd1=await this[_0x1bc862(0x107)](_0x55f345[_0x1bc862(0xe2)],_0x55f345[_0x1bc862(0x157)],_0x4de228);break;case _0x1bc862(0xe8):_0x4d5cd1=await this['moveFile'](_0x55f345[_0x1bc862(0xe2)],_0x55f345['destPath'],_0x4de228);break;case _0x1bc862(0x152):_0x4d5cd1=await this[_0x1bc862(0x14a)](_0x55f345['directory'],_0x4de228);break;case _0x1bc862(0x10b):_0x4d5cd1=await this[_0x1bc862(0x123)](_0x55f345['directory'],_0x4de228);break;case'exists':_0x4d5cd1=await this['checkExists'](_0x55f345['filePath'],_0x4de228);break;case'stats':_0x4d5cd1=await this['getFileStats'](_0x55f345[_0x1bc862(0x126)],_0x4de228);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x55f345[_0x1bc862(0x136)]);}_0x5e9415['push'](_0x4d5cd1),this[_0x1bc862(0x139)](_0x55f345,_0x4d5cd1,_0xc53b3e['agentId']);}catch(_0x79a7ec){const _0x125640={'success':![],'action':_0x55f345['type'],'error':_0x79a7ec['message'],'filePath':_0x55f345['filePath']||_0x55f345['outputPath']||_0x55f345['directory']};_0x5e9415['push'](_0x125640),this['addToHistory'](_0x55f345,_0x125640,_0xc53b3e['agentId']);}}return{'success':!![],'actions':_0x5e9415,'executedActions':_0x46a586['length'],'toolUsed':_0x1bc862(0x147)};}async[a0_0x27597f(0x155)](_0x313abc,_0x522e89,_0x2aeacc='utf8'){const _0x53d652=a0_0x27597f,_0x544935=this[_0x53d652(0x11b)][_0x53d652(0x100)](_0x522e89),_0x5d9990=this['resolvePath'](_0x313abc,_0x544935),_0x2ce692=this[_0x53d652(0x11b)][_0x53d652(0x13b)](_0x5d9990,_0x522e89);if(!_0x2ce692['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x2ce692['reason']+'\x20('+_0x2ce692['path']+')');try{const _0x33a029=await a0_0x580a2d['stat'](_0x5d9990);if(_0x33a029[_0x53d652(0x132)]>this['maxFileSize'])throw new Error(_0x53d652(0x15f)+_0x33a029[_0x53d652(0x132)]+_0x53d652(0xfb)+this['maxFileSize']+')');const _0x2ad24c=await a0_0x580a2d['readFile'](_0x5d9990,_0x2aeacc);return{'success':!![],'action':_0x53d652(0x14b),'filePath':this['directoryAccessManager'][_0x53d652(0x119)](_0x5d9990,_0x522e89),'content':_0x2ad24c,'size':_0x33a029[_0x53d652(0x132)],'encoding':_0x2aeacc,'lastModified':_0x33a029['mtime'][_0x53d652(0x15e)](),'message':'Read\x20'+_0x33a029['size']+_0x53d652(0xee)+_0x313abc};}catch(_0x548847){throw new Error(_0x53d652(0x143)+_0x313abc+':\x20'+_0x548847[_0x53d652(0x16c)]);}}async[a0_0x27597f(0x165)](_0x31f074,_0x446f49,_0x13ec63,_0x3c3449={}){const _0x3148e2=a0_0x27597f,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x3c3449,_0x1970cd=this[_0x3148e2(0x11b)]['getWorkingDirectory'](_0x13ec63),_0xfc3f22=this[_0x3148e2(0x177)](_0x31f074,_0x1970cd),_0x247d11=this['directoryAccessManager'][_0x3148e2(0x111)](_0xfc3f22,_0x13ec63);if(!_0x247d11['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x247d11[_0x3148e2(0x17d)]+'\x20('+_0x247d11[_0x3148e2(0x17b)]+')');try{const _0x1a20b5=Buffer['byteLength'](_0x446f49,encoding);if(_0x1a20b5>this[_0x3148e2(0xe0)])throw new Error('Content\x20too\x20large:\x20'+_0x1a20b5+_0x3148e2(0xfb)+this[_0x3148e2(0xe0)]+')');if(createDirs){const _0xebd576=a0_0x50474a[_0x3148e2(0x14c)](_0xfc3f22);await a0_0x580a2d[_0x3148e2(0x160)](_0xebd576,{'recursive':!![]});}let _0x3e9e94=null;try{await a0_0x580a2d['access'](_0xfc3f22),_0x3e9e94=_0xfc3f22+'.backup-'+Date[_0x3148e2(0x12e)](),await a0_0x580a2d['copyFile'](_0xfc3f22,_0x3e9e94);}catch{}await a0_0x580a2d[_0x3148e2(0x165)](_0xfc3f22,_0x446f49,encoding);const _0x48beb6=await a0_0x580a2d[_0x3148e2(0x109)](_0xfc3f22),_0x4cdb28=this['directoryAccessManager']['createRelativePath'](_0xfc3f22,_0x13ec63);return{'success':!![],'action':'write','outputPath':_0x4cdb28,'fullPath':_0xfc3f22,'size':_0x48beb6[_0x3148e2(0x132)],'encoding':encoding,'backupPath':_0x3e9e94?this[_0x3148e2(0x11b)][_0x3148e2(0x119)](_0x3e9e94,_0x13ec63):null,'backupFullPath':_0x3e9e94||null,'message':'Wrote\x20'+_0x48beb6['size']+'\x20bytes\x20to\x20'+_0xfc3f22};}catch(_0xa18cb4){throw new Error('Failed\x20to\x20write\x20file\x20'+_0xfc3f22+':\x20'+_0xa18cb4[_0x3148e2(0x16c)]);}}async['appendToFile'](_0x3d435a,_0x301308,_0x4ad32d,_0x40224b=a0_0x27597f(0x145)){const _0x356efb=a0_0x27597f,_0x1be916=this[_0x356efb(0x11b)]['getWorkingDirectory'](_0x4ad32d),_0x23ae9f=this[_0x356efb(0x177)](_0x3d435a,_0x1be916),_0x59cc00=this['directoryAccessManager']['validateWriteAccess'](_0x23ae9f,_0x4ad32d);if(!_0x59cc00['allowed'])throw new Error(_0x356efb(0x14d)+_0x59cc00[_0x356efb(0x17d)]+'\x20('+_0x59cc00['path']+')');try{let _0x2e6b44=0x0;try{const _0x534fee=await a0_0x580a2d['stat'](_0x23ae9f);_0x2e6b44=_0x534fee[_0x356efb(0x132)];}catch{}const _0x54d8c9=Buffer['byteLength'](_0x301308,_0x40224b);if(_0x2e6b44+_0x54d8c9>this[_0x356efb(0xe0)])throw new Error(_0x356efb(0x103)+(_0x2e6b44+_0x54d8c9)+_0x356efb(0xfb)+this['maxFileSize']+')');await a0_0x580a2d['appendFile'](_0x23ae9f,_0x301308,_0x40224b);const _0x34e43a=await a0_0x580a2d['stat'](_0x23ae9f),_0x23fb2c=this['directoryAccessManager'][_0x356efb(0x119)](_0x23ae9f,_0x4ad32d);return{'success':!![],'action':_0x356efb(0xf6),'filePath':_0x23fb2c,'fullPath':_0x23ae9f,'appendedBytes':_0x54d8c9,'totalSize':_0x34e43a['size'],'encoding':_0x40224b,'message':_0x356efb(0x137)+_0x54d8c9+'\x20bytes\x20to\x20'+_0x23ae9f};}catch(_0x123659){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x23ae9f+':\x20'+_0x123659['message']);}}async[a0_0x27597f(0x16f)](_0x273fde,_0x4838b9){const _0x51dc8c=a0_0x27597f,_0x4c009b=this[_0x51dc8c(0x11b)][_0x51dc8c(0x100)](_0x4838b9),_0xc5e003=this[_0x51dc8c(0x177)](_0x273fde,_0x4c009b),_0x690856=this[_0x51dc8c(0x11b)]['validateWriteAccess'](_0xc5e003,_0x4838b9);if(!_0x690856[_0x51dc8c(0x167)])throw new Error(_0x51dc8c(0x118)+_0x690856[_0x51dc8c(0x17d)]+'\x20('+_0x690856[_0x51dc8c(0x17b)]+')');try{const _0x5f4051=await a0_0x580a2d[_0x51dc8c(0x109)](_0xc5e003),_0x4ed07a=_0xc5e003+_0x51dc8c(0x11f)+Date[_0x51dc8c(0x12e)]();await a0_0x580a2d[_0x51dc8c(0x107)](_0xc5e003,_0x4ed07a),await a0_0x580a2d[_0x51dc8c(0x10f)](_0xc5e003);const _0x4452af=this['directoryAccessManager'][_0x51dc8c(0x119)](_0xc5e003,_0x4838b9),_0x1da0dd=this['directoryAccessManager'][_0x51dc8c(0x119)](_0x4ed07a,_0x4838b9);return{'success':!![],'action':_0x51dc8c(0xdf),'filePath':_0x4452af,'fullPath':_0xc5e003,'size':_0x5f4051[_0x51dc8c(0x132)],'backupPath':_0x1da0dd,'backupFullPath':_0x4ed07a,'message':'Deleted\x20'+_0xc5e003+_0x51dc8c(0x142)};}catch(_0x865b0c){throw new Error(_0x51dc8c(0x10a)+_0xc5e003+':\x20'+_0x865b0c['message']);}}async['copyFile'](_0xc6f923,_0x20369f,_0x1a93bb){const _0x34c145=a0_0x27597f,_0x5803f9=this['directoryAccessManager'][_0x34c145(0x100)](_0x1a93bb),_0x19ee2e=this[_0x34c145(0x177)](_0xc6f923,_0x5803f9),_0x2e3279=this['resolvePath'](_0x20369f,_0x5803f9),_0x13d065=this[_0x34c145(0x11b)]['validateReadAccess'](_0x19ee2e,_0x1a93bb);if(!_0x13d065[_0x34c145(0x167)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x13d065[_0x34c145(0x17d)]+'\x20('+_0x13d065['path']+')');const _0x15897f=this[_0x34c145(0x11b)][_0x34c145(0x111)](_0x2e3279,_0x1a93bb);if(!_0x15897f[_0x34c145(0x167)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x15897f['reason']+'\x20('+_0x15897f[_0x34c145(0x17b)]+')');try{const _0x293866=await a0_0x580a2d['stat'](_0x19ee2e);if(_0x293866['size']>this['maxFileSize'])throw new Error(_0x34c145(0x176)+_0x293866[_0x34c145(0x132)]+'\x20bytes');const _0x17d4ba=a0_0x50474a[_0x34c145(0x14c)](_0x2e3279);await a0_0x580a2d['mkdir'](_0x17d4ba,{'recursive':!![]}),await a0_0x580a2d[_0x34c145(0x107)](_0x19ee2e,_0x2e3279);const _0x3313b1=this[_0x34c145(0x11b)][_0x34c145(0x119)](_0x19ee2e,_0x1a93bb),_0x5434b1=this[_0x34c145(0x11b)][_0x34c145(0x119)](_0x2e3279,_0x1a93bb);return{'success':!![],'action':_0x34c145(0x130),'sourcePath':_0x3313b1,'destPath':_0x5434b1,'sourceFullPath':_0x19ee2e,'destFullPath':_0x2e3279,'size':_0x293866['size'],'message':'Copied\x20'+_0x19ee2e+'\x20to\x20'+_0x2e3279};}catch(_0x2bf5c8){throw new Error(_0x34c145(0x141)+_0x19ee2e+_0x34c145(0x13d)+_0x2e3279+':\x20'+_0x2bf5c8[_0x34c145(0x16c)]);}}async['moveFile'](_0x23b211,_0x417e7e,_0x3a12d8){const _0x47a8ff=a0_0x27597f,_0x3efd85=this['directoryAccessManager'][_0x47a8ff(0x100)](_0x3a12d8),_0x42de10=this[_0x47a8ff(0x177)](_0x23b211,_0x3efd85),_0x2c8439=this[_0x47a8ff(0x177)](_0x417e7e,_0x3efd85),_0x272b9f=this[_0x47a8ff(0x11b)]['validateReadAccess'](_0x42de10,_0x3a12d8);if(!_0x272b9f[_0x47a8ff(0x167)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x272b9f['reason']+'\x20('+_0x272b9f['path']+')');const _0x477e77=this['directoryAccessManager'][_0x47a8ff(0x111)](_0x2c8439,_0x3a12d8);if(!_0x477e77['allowed'])throw new Error(_0x47a8ff(0x168)+_0x477e77['reason']+'\x20('+_0x477e77['path']+')');try{const _0x200800=await a0_0x580a2d['stat'](_0x42de10),_0x2410f7=a0_0x50474a[_0x47a8ff(0x14c)](_0x2c8439);await a0_0x580a2d['mkdir'](_0x2410f7,{'recursive':!![]}),await a0_0x580a2d[_0x47a8ff(0x163)](_0x42de10,_0x2c8439);const _0x40de2f=this['directoryAccessManager'][_0x47a8ff(0x119)](_0x42de10,_0x3a12d8),_0x330cfe=this[_0x47a8ff(0x11b)]['createRelativePath'](_0x2c8439,_0x3a12d8);return{'success':!![],'action':_0x47a8ff(0xe8),'sourcePath':_0x40de2f,'destPath':_0x330cfe,'fullSourcePath':_0x42de10,'fullDestPath':_0x2c8439,'size':_0x200800[_0x47a8ff(0x132)],'message':'Moved\x20'+_0x23b211+'\x20to\x20'+_0x417e7e};}catch(_0x5b7d02){throw new Error('Failed\x20to\x20move\x20'+_0x23b211+'\x20to\x20'+_0x417e7e+':\x20'+_0x5b7d02[_0x47a8ff(0x16c)]);}}async['createDirectory'](_0x2196d5,_0x131d73){const _0x44e652=a0_0x27597f,_0x4f1d51=this[_0x44e652(0x11b)][_0x44e652(0x100)](_0x131d73),_0x4b9266=this['resolvePath'](_0x2196d5,_0x4f1d51),_0x4a361e=this[_0x44e652(0x11b)][_0x44e652(0x111)](_0x4b9266,_0x131d73);if(!_0x4a361e['allowed'])throw new Error(_0x44e652(0x14d)+_0x4a361e['reason']+'\x20('+_0x4a361e['path']+')');try{await a0_0x580a2d[_0x44e652(0x160)](_0x4b9266,{'recursive':!![]});const _0x42adb1=this[_0x44e652(0x11b)][_0x44e652(0x119)](_0x4b9266,_0x131d73);return{'success':!![],'action':'create-dir','directory':_0x42adb1,'fullPath':_0x4b9266,'message':_0x44e652(0xfc)+_0x2196d5};}catch(_0x1db6ae){throw new Error(_0x44e652(0x15a)+_0x2196d5+':\x20'+_0x1db6ae['message']);}}async[a0_0x27597f(0x123)](_0x27f58d,_0x4132f0){const _0x15bfe4=a0_0x27597f,_0x4d7fd4=this[_0x15bfe4(0x11b)]['getWorkingDirectory'](_0x4132f0),_0x50f62c=this[_0x15bfe4(0x177)](_0x27f58d,_0x4d7fd4),_0x18e8cd=this[_0x15bfe4(0x11b)][_0x15bfe4(0x13b)](_0x50f62c,_0x4132f0);if(!_0x18e8cd['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x18e8cd[_0x15bfe4(0x17d)]+'\x20('+_0x18e8cd[_0x15bfe4(0x17b)]+')');try{const _0x312474=await a0_0x580a2d[_0x15bfe4(0xf3)](_0x50f62c,{'withFileTypes':!![]}),_0x259f0d=[];for(const _0x2603c4 of _0x312474){const _0x10a16a=a0_0x50474a['join'](_0x50f62c,_0x2603c4[_0x15bfe4(0x120)]),_0x12cd1a=await a0_0x580a2d['stat'](_0x10a16a);_0x259f0d['push']({'name':_0x2603c4['name'],'type':_0x2603c4[_0x15bfe4(0xfa)]()?_0x15bfe4(0xe3):_0x15bfe4(0xeb),'size':_0x2603c4['isFile']()?_0x12cd1a[_0x15bfe4(0x132)]:undefined,'lastModified':_0x12cd1a[_0x15bfe4(0xf2)][_0x15bfe4(0x15e)](),'permissions':_0x12cd1a[_0x15bfe4(0x148)],'isSymlink':_0x2603c4[_0x15bfe4(0x178)]()});}const _0x1bab6a=this['directoryAccessManager']['createRelativePath'](_0x50f62c,_0x4132f0);return{'success':!![],'action':'list','directory':_0x1bab6a,'fullPath':_0x50f62c,'contents':_0x259f0d,'totalItems':_0x259f0d['length'],'directories':_0x259f0d[_0x15bfe4(0x113)](_0x406f7c=>_0x406f7c[_0x15bfe4(0x136)]===_0x15bfe4(0xe3))[_0x15bfe4(0xe6)],'files':_0x259f0d[_0x15bfe4(0x113)](_0x2c3561=>_0x2c3561['type']===_0x15bfe4(0xeb))['length'],'message':'Listed\x20'+_0x259f0d[_0x15bfe4(0xe6)]+'\x20items\x20in\x20'+_0x27f58d};}catch(_0x5012f8){throw new Error(_0x15bfe4(0x11e)+_0x27f58d+':\x20'+_0x5012f8['message']);}}async[a0_0x27597f(0x12d)](_0x485d9b,_0x46195a){const _0x145918=a0_0x27597f,_0x1293df=this['directoryAccessManager'][_0x145918(0x100)](_0x46195a),_0x2ad5ce=this['resolvePath'](_0x485d9b,_0x1293df),_0x5948e9=this[_0x145918(0x11b)]['validateReadAccess'](_0x2ad5ce,_0x46195a);if(!_0x5948e9[_0x145918(0x167)])throw new Error('Read\x20access\x20denied:\x20'+_0x5948e9['reason']+'\x20('+_0x5948e9['path']+')');try{const _0x39996a=await a0_0x580a2d[_0x145918(0x109)](_0x2ad5ce),_0x274546=this[_0x145918(0x11b)][_0x145918(0x119)](_0x2ad5ce,_0x46195a);return{'success':!![],'action':_0x145918(0x131),'filePath':_0x274546,'fullPath':_0x2ad5ce,'exists':!![],'type':_0x39996a[_0x145918(0xfa)]()?_0x145918(0xe3):_0x145918(0xeb),'message':_0x485d9b+_0x145918(0x124)+(_0x39996a['isDirectory']()?'directory':'file')};}catch(_0x2e6f55){if(_0x2e6f55['code']==='ENOENT'){const _0x5b8148=this[_0x145918(0x11b)]['createRelativePath'](_0x2ad5ce,_0x46195a);return{'success':!![],'action':'exists','filePath':_0x5b8148,'fullPath':_0x2ad5ce,'exists':![],'message':_0x485d9b+_0x145918(0x15c)};}throw new Error(_0x145918(0x14e)+_0x485d9b+':\x20'+_0x2e6f55[_0x145918(0x16c)]);}}async['getFileStats'](_0x423f9b,_0x266368){const _0x293c51=a0_0x27597f,_0x639247=this[_0x293c51(0x11b)]['getWorkingDirectory'](_0x266368),_0x48310e=this[_0x293c51(0x177)](_0x423f9b,_0x639247),_0xbf4eb4=this['directoryAccessManager']['validateReadAccess'](_0x48310e,_0x266368);if(!_0xbf4eb4[_0x293c51(0x167)])throw new Error(_0x293c51(0x144)+_0xbf4eb4['reason']+'\x20('+_0xbf4eb4[_0x293c51(0x17b)]+')');try{const _0x8d52b7=await a0_0x580a2d['stat'](_0x48310e),_0x15572f=this[_0x293c51(0x11b)]['createRelativePath'](_0x48310e,_0x266368);return{'success':!![],'action':'stats','filePath':_0x15572f,'fullPath':_0x48310e,'stats':{'size':_0x8d52b7['size'],'type':_0x8d52b7['isDirectory']()?'directory':'file','lastModified':_0x8d52b7[_0x293c51(0xf2)]['toISOString'](),'lastAccessed':_0x8d52b7['atime'][_0x293c51(0x15e)](),'created':_0x8d52b7[_0x293c51(0xf4)]['toISOString'](),'permissions':_0x8d52b7[_0x293c51(0x148)],'isSymlink':_0x8d52b7['isSymbolicLink']()},'message':'Retrieved\x20stats\x20for\x20'+_0x423f9b};}catch(_0x3789c8){throw new Error(_0x293c51(0x12a)+_0x423f9b+':\x20'+_0x3789c8[_0x293c51(0x16c)]);}}[a0_0x27597f(0x177)](_0x4c4cf5,_0x136823){const _0x1fba68=a0_0x27597f;if(a0_0x50474a[_0x1fba68(0x110)](_0x4c4cf5))return a0_0x50474a['normalize'](_0x4c4cf5);return a0_0x50474a[_0x1fba68(0x174)](_0x136823,_0x4c4cf5);}['validatePathAccess'](_0x35580c,_0xa18e2e,_0x4f7f1d='read'){const _0x329c4f=a0_0x27597f,_0x2429da=_0x4f7f1d===_0x329c4f(0x134)?this[_0x329c4f(0x11b)]['validateWriteAccess'](_0x35580c,_0xa18e2e):this['directoryAccessManager']['validateReadAccess'](_0x35580c,_0xa18e2e);if(!_0x2429da[_0x329c4f(0x167)])throw new Error(_0x4f7f1d+_0x329c4f(0x10c)+_0x2429da['reason']+'\x20('+_0x2429da[_0x329c4f(0x17b)]+')');return _0x2429da;}['isAllowedFileExtension'](_0x10d4d0){const _0x26ec9e=a0_0x27597f,_0x34be32=a0_0x50474a['extname'](_0x10d4d0)[_0x26ec9e(0x179)]();if(this['blockedExtensions'][_0x26ec9e(0x159)](_0x34be32))return![];if(this[_0x26ec9e(0x125)]&&!this[_0x26ec9e(0x125)]['includes'](_0x34be32))return![];return!![];}[a0_0x27597f(0x139)](_0x1c335c,_0x9210fe,_0x244996){const _0x38cd1a=a0_0x27597f,_0x57dbaa={'timestamp':new Date()['toISOString'](),'agentId':_0x244996,'action':_0x1c335c['type'],'filePath':_0x1c335c[_0x38cd1a(0x126)]||_0x1c335c[_0x38cd1a(0xe9)]||_0x1c335c[_0x38cd1a(0xe3)],'success':_0x9210fe[_0x38cd1a(0x150)],'size':_0x9210fe['size']};this['operationHistory']['push'](_0x57dbaa),this[_0x38cd1a(0x128)]['length']>0xc8&&(this['operationHistory']=this[_0x38cd1a(0x128)][_0x38cd1a(0x140)](-0xc8));}['getSupportedActions'](){const _0x42de6c=a0_0x27597f;return['read',_0x42de6c(0x134),'append',_0x42de6c(0xdf),'copy','move','create-dir','list',_0x42de6c(0x131),_0x42de6c(0x13f)];}[a0_0x27597f(0x129)](){const _0x235f22=a0_0x27597f;return{'type':_0x235f22(0x175),'properties':{'actions':{'type':_0x235f22(0xe5),'minItems':0x1,'items':{'type':_0x235f22(0x175),'properties':{'type':{'type':'string','enum':this[_0x235f22(0x122)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':_0x235f22(0x11a)},'content':{'type':_0x235f22(0x11a)},'encoding':{'type':'string'},'createDirs':{'type':_0x235f22(0x162)}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x52ea8a=null){const _0x5d4a62=a0_0x27597f;if(_0x52ea8a)return this['operationHistory'][_0x5d4a62(0x113)](_0x25edaf=>_0x25edaf['agentId']===_0x52ea8a);return[...this['operationHistory']];}}export default FileSystemTool;