@loxia-labs/loxia-autopilot-one 1.0.4 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0xbda7d4=a0_0x45fa;(function(_0x242d86,_0x14d1a1){const _0x307555=a0_0x45fa,_0x3d8c89=_0x242d86();while(!![]){try{const _0x526017=parseInt(_0x307555(0x11c))/0x1+parseInt(_0x307555(0xca))/0x2+parseInt(_0x307555(0xa9))/0x3*(parseInt(_0x307555(0xe4))/0x4)+parseInt(_0x307555(0x119))/0x5+parseInt(_0x307555(0x102))/0x6+-parseInt(_0x307555(0xe5))/0x7+-parseInt(_0x307555(0x111))/0x8;if(_0x526017===_0x14d1a1)break;else _0x3d8c89['push'](_0x3d8c89['shift']());}catch(_0x5925e5){_0x3d8c89['push'](_0x3d8c89['shift']());}}}(a0_0x15e1,0x7f976));import{promises as a0_0x4ffdd1}from'fs';function a0_0x15e1(){const _0x5d0850=['x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','ChjLCMvSzwfZzq','Bg9Nz2vY','Cgf0Aa','Bwf4','tLbnx1jfr0Ltvfjzx1vsta','yw5K','zxHLyW','mtq5ntuZmM9bCLznta','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','A2v5CW','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','uKvuuLLFqvruru1qvfm','BwfW','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Dg9mB3DLCKnHC2u','Ec1Yyw5Nzq','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','uKvuuLLFrevmqvK','AM9PBG','x3nHDgLZzMLLC1jHBMDL','ywjVCNq','tufyx0nptKnvuLjftLrFq0Hfq0Tt','B2jQzwn0','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','qKfds1vqx0vyvevou0LptG','Aw5JBhvKzxm','cUkCQcboBYb1CgrHDgvZig5LzwrLza','Aw5JBhvKzurLDG','C29Tzq','yxv0BW','BwvZC2fNzq','zxzLCNK','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','mJH1zMXnAKK','otGXmZm3sePswwfN','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','ANnVBG','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','z2v0rgvZy3jPChrPB24','Aw5MBW','BNbTigLUC3rHBgW','zgv2rgvWzw5Kzw5JAwvZ','4PQG77Ipica','DgvZDa','yNvPBgq','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','uKvhsvnuuLLFveLnru9vva','D29YA2LUz0rPCMvJDg9YEq','Cgf0y2G','rMfPBgvKihrVignYzwf0zsbIywnRDxa','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','C3rHCNrZv2L0Aa','C3bSAxq','ChvZAa','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','q1jfqvrfx0jbq0Tvufm','x3bHCNnLvMvYC2LVBG','C3rHDhvZ','Bwf0y2G','mZuWmtK0ofDszK5uEa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','zM9YrwfJAa','CgfYC2u','ywnJzxnZ','Bw9Kzq','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','x3zHBgLKyxrLugfYyw1LDgvYCW','iokgKIa','zw50CMLLCW','D2fYBG','x2nOzwnRrgvWzw5Kzw5JAwvZ','Cgf0AcbTDxn0igjLigeGC3rYAw5N','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','y3DK','mtC1nJK0ntzkt05xqNG','yM9VBgvHBG','x3bHCNnLq29TCgXLEfjHBMDL','AxnbyNnVBhv0zq','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','x3bHCNnLvMvYC2LVBLjHBMDL','x2LZvxbKyxrLqxzHAwXHyMXL','C3rYAw5NAwz5','mZe0mJKZmhzuzMXtuq','x3bHCNnLqM9VBgvHBG','C2XPy2u','ndG2mhrzsLzZAG','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','q3jLyxrLzcbIywnRDxa','C3rYAw5N','x2nVBxbHCMvwzxjZAw9UCW','BwLUB3i','ChjLzML4','B3bLCMf0B3i','DhLWzq','zgvIDwC','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','yxnZAwDU','x2nVBxbHCMvqCMvYzwXLyxnL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','CMfUz2vZ','mZGZmtKZz3ntBLns','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQsw52B2nHDgLVBIbtEw50yxG6kIOkcLHntcbgB3jTyxq6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLpGOGidXWyxrOpI4VBxKTChjVAMvJDdWVCgf0Ad4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kica8Aw5JBhvKzs1Kzxy+Dhj1ztWVAw5JBhvKzs1Kzxy+cJWVzgvWzw5Kzw5JEs1YzxnVBhzLpGPGygakcKPtt04GrM9YBwf0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEWOGicaGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWkicaGicjTB2rLiJOGiMnOzwnRiIWkicaGicjPBMnSDwrLrgv2iJOGDhj1zqOGih0kFqPGygakcIOQugfYyw1LDgvYCZOQkGOTicOQCgf0AcOQicHZDhjPBMCSig9WDgLVBMfSktOGugf0Acb0BYbWCM9Qzwn0igrPCMvJDg9YEsb3AxrOihbHy2THz2uUANnVBI4GrgvMyxvSDdOGiI4IcI0GkIPTB2rLkIOGkhn0CMLUzYWGB3b0Aw9UywWPoIbpCgvYyxrPB24GBw9Kzs4Gt3b0Aw9UCZOkicaTicjJAgvJAYiGlsbpBMX5ignOzwnRigzVCIb1CgrHDgvZicHKzwzHDwX0kqOGic0GiMzPEciGlsbvCgrHDguGCgfJA2fNzs5QC29UigfUzcbYDw4GBNbTigLUC3rHBgWkicaTicjHDxrViIaTief1Dg9TyxrPy2fSBhKGzML4igfSBcbJB25MBgLJDhmklsaQkMLUy2X1zgvezxyQkIaOyM9VBgvHBIWGB3b0Aw9UywWPoIbjBMnSDwrLigrLDKrLCgvUzgvUy2LLCY4GrgvMyxvSDdOGDhj1zqOkkIPxAgf0ieL0ierVzxm6kIOklsbdAgvJA3mGBNbTihjLz2LZDhj5igzVCIbSyxrLC3qGy29TCgf0AwjSzsb2zxjZAw9UCWOTifjLC3bLy3rZihnLBxzLCIbYyw5NzxmGkf4Sih4Sid49lcbLDgmUkqOTienYzwf0zxmGyxv0B21HDgLJigjHy2T1ChmGyMvMB3jLig1VzgLMAwnHDgLVBNmklsbsDw5Zig5WBsbPBNn0ywXSigfMDgvYihvWzgf0zxmGkgLUigzPEc9HDxrVig1VzguPcI0GuhjVDMLKzxmGzgv0ywLSzwqGDxbKyxrLihjLCg9YDaOkkIPfEgfTCgXLCZOQkGOkms4Gq2HLy2SGzM9YihvWzgf0zxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Bw9Kzt5JAgvJAZWVBw9Kzt4kpc9KzxbLBMrLBMn5lxjLC29SDMvYpGPGygakcJiUiezPEcbVDxrKyxrLzcbKzxbLBMrLBMnPzxm6cMbGyhHTBaO8zgvWzw5Kzw5JEs1YzxnVBhzLCJ4kica8Cgf0Ad4Ul215lxbYB2PLy3q8l3bHDgG+cIaGpg1Vzgu+zML4pc9TB2rLpGO8l2rLCgvUzgvUy3KTCMvZB2X2zxi+cMbGyaOkmY4Gqxv0BY1MAxGGD2L0AcbKzxzezxbLBMrLBMnPzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzgvWzw5Kzw5JEs1YzxnVBhzLCIiScIaGiNbHCMfTzxrLCNmIoIb7icjTB2rLiJOGiMf1Dg8IlcaIAw5JBhvKzurLDIi6ihrYDwuGFqP9cMbGyaOkkIPoB3rLCZOQkGOTiefSD2f5CYbJCMvHDgvZigjHy2T1CcaOlMjHy2T1Cc5QC29UksbIzwzVCMuGBw9KAwzPy2f0Aw9UCWOTie5LDhDVCMSGCMvXDwvZDhmGAgf2zsb0Aw1LB3v0igfUzcbYzxrYEsbSB2DPyWOTig5WBsbPBNn0ywXSihj1BNmGD2L0Acb0Aw1LB3v0ihbYB3rLy3rPB24GkduGBwLUDxrLCYbTyxGPcI0Gu3vWCg9YDhmGy29TCgXLEcbZzw12zxiGCMfUz2vZicH8FcWGjIySigv0yY4P','C2LTCgXL','BNbTifDbuK4','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','BM9YBwfSAxPL','x2nYzwf0zujHy2T1Ca','zxjYB3i','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','DhjPBq','zML4','Dhj1zq','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','ywXS','zMLSDgvY','8j+tIIbgB3vUzca','x2zLDgnOugfJA2fNzuLUzM8','y2HLy2S','BgvUz3rO','BwfQB3i','cIaG','icdIGkiG','zgvWzw5Kzw5JAwvZ','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW'];a0_0x15e1=function(){return _0x5d0850;};return a0_0x15e1();}import a0_0xfd3da3 from'path';import{exec as a0_0x2c0f37}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x3a5cd5 from'../utilities/tagParser.js';const exec=promisify(a0_0x2c0f37),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0xbda7d4(0xba),'VALID_MODES':['check',a0_0xbda7d4(0xb3),a0_0xbda7d4(0xe0)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':'.backup.json','CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0xbda7d4(0xa7)};function a0_0x45fa(_0x563825,_0x2a9702){_0x563825=_0x563825-0x9b;const _0x15e17d=a0_0x15e1();let _0x45fa44=_0x15e17d[_0x563825];if(a0_0x45fa['lkDqxd']===undefined){var _0x2cd63a=function(_0x2a8d44){const _0x162a42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ffdd1='',_0xfd3da3='';for(let _0x2c0f37=0x0,_0x3a5cd5,_0x394093,_0x1db7f5=0x0;_0x394093=_0x2a8d44['charAt'](_0x1db7f5++);~_0x394093&&(_0x3a5cd5=_0x2c0f37%0x4?_0x3a5cd5*0x40+_0x394093:_0x394093,_0x2c0f37++%0x4)?_0x4ffdd1+=String['fromCharCode'](0xff&_0x3a5cd5>>(-0x2*_0x2c0f37&0x6)):0x0){_0x394093=_0x162a42['indexOf'](_0x394093);}for(let _0x28fad4=0x0,_0x5bf255=_0x4ffdd1['length'];_0x28fad4<_0x5bf255;_0x28fad4++){_0xfd3da3+='%'+('00'+_0x4ffdd1['charCodeAt'](_0x28fad4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xfd3da3);};a0_0x45fa['qdpUMP']=_0x2cd63a,a0_0x45fa['QRmwoo']={},a0_0x45fa['lkDqxd']=!![];}const _0x5c6735=_0x15e17d[0x0],_0x2c3d5e=_0x563825+_0x5c6735,_0x12dddb=a0_0x45fa['QRmwoo'][_0x2c3d5e];return!_0x12dddb?(_0x45fa44=a0_0x45fa['qdpUMP'](_0x45fa44),a0_0x45fa['QRmwoo'][_0x2c3d5e]=_0x45fa44):_0x45fa44=_0x12dddb,_0x45fa44;}export class DependencyResolverTool extends BaseTool{[a0_0xbda7d4(0xe9)](){const _0x2b26aa=a0_0xbda7d4;return _0x2b26aa(0xaa);}['parseParameters'](_0x394093){const _0x39adbe=a0_0xbda7d4;if(typeof _0x394093===_0x39adbe(0xd9)&&_0x394093!==null)return{'path':_0x394093[_0x39adbe(0xc5)]||'.','mode':_0x394093['mode']||RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':_0x394093['includeDev']!==undefined?_0x394093['includeDev']:!![]};if(typeof _0x394093===_0x39adbe(0x9d)){const _0x1db7f5=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x28fad4=_0x1db7f5[_0x39adbe(0xc9)](_0x394093);if(_0x28fad4){const _0x2e4a62=_0x28fad4[0x1],_0x3850e1=_0x28fad4[0x2],_0x1fd896=/path=["']([^"']*)["']/i['exec'](_0x2e4a62),_0x553153=/mode=["']([^"']*)["']/i['exec'](_0x2e4a62),_0x223688=/include-dev=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2e4a62),_0x2b7723=/<path>(.*?)<\/path>/i,_0x870538=_0x2b7723[_0x39adbe(0xc9)](_0x3850e1),_0xbb7520=/<mode>(.*?)<\/mode>/i,_0xb32515=_0xbb7520[_0x39adbe(0xc9)](_0x3850e1),_0x162766=/<include-dev>(.*?)<\/include-dev>/i,_0x48adaf=_0x162766['exec'](_0x3850e1),_0x478e11=(_0x870538?_0x870538[0x1]['trim']():null)||(_0x1fd896?_0x1fd896[0x1]:'.'),_0x50b869=(_0xb32515?_0xb32515[0x1][_0x39adbe(0xb2)]():null)||(_0x553153?_0x553153[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x380b22=(_0x48adaf?_0x48adaf[0x1]['trim']():null)||(_0x223688?_0x223688[0x1]:_0x39adbe(0xb4));return{'path':_0x478e11,'mode':_0x50b869,'includeDev':this[_0x39adbe(0x11a)](_0x380b22,!![])};}const _0x5bf255=/\[resolve\s+([^\]]*)\]/i,_0x3101f3=_0x5bf255['exec'](_0x394093);if(_0x3101f3){const _0x2360fd=_0x3101f3[0x1],_0x32d74c=/path=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2360fd),_0x13b16e=/mode=["']([^"']*)["']/i['exec'](_0x2360fd),_0x4be62e=/include-dev=["']([^"']*)["']/i[_0x39adbe(0xc9)](_0x2360fd);return{'path':_0x32d74c?_0x32d74c[0x1]:'.','mode':_0x13b16e?_0x13b16e[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x39adbe(0x11a)](_0x4be62e?_0x4be62e[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0xbda7d4(0x11a)](_0x28ac00,defaultValue=![]){const _0x14b3c1=a0_0xbda7d4;if(_0x28ac00===undefined||_0x28ac00===null)return defaultValue;if(typeof _0x28ac00==='boolean')return _0x28ac00;if(typeof _0x28ac00==='string')return _0x28ac00[_0x14b3c1(0xd1)]()==='true'||_0x28ac00==='1';return defaultValue;}[a0_0xbda7d4(0x109)](_0x2ef05d){const _0x3ecf31=a0_0xbda7d4;if(!_0x2ef05d||typeof _0x2ef05d!=='object')throw new Error(_0x3ecf31(0xe3));if(_0x2ef05d['path']&&typeof _0x2ef05d[_0x3ecf31(0xc5)]!=='string')throw new Error(_0x3ecf31(0x10e));if(_0x2ef05d[_0x3ecf31(0x107)]&&!RESOLVER_CONFIG['VALID_MODES']['includes'](_0x2ef05d[_0x3ecf31(0x107)]))throw new Error('Invalid\x20mode:\x20'+_0x2ef05d[_0x3ecf31(0x107)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES'][_0x3ecf31(0xd5)](',\x20'));if(_0x2ef05d['includeDev']!==undefined&&typeof _0x2ef05d[_0x3ecf31(0xde)]!==_0x3ecf31(0x112))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0xbda7d4(0xda)](_0xa4e578,_0x4d43d0){const _0x2ec016=a0_0xbda7d4,{projectDir:_0x5c9b91,directoryAccess:_0x2e59c6}=_0x4d43d0;let _0x5108df=_0x5c9b91||process[_0x2ec016(0x110)]();_0x2e59c6&&_0x2e59c6[_0x2ec016(0xf2)]&&(_0x5108df=_0x2e59c6[_0x2ec016(0xf2)]);const _0xcf0b52=a0_0xfd3da3[_0x2ec016(0x114)](_0xa4e578)?a0_0xfd3da3[_0x2ec016(0xae)](_0xa4e578):a0_0xfd3da3[_0x2ec016(0xae)](a0_0xfd3da3[_0x2ec016(0xd5)](_0x5108df,_0xa4e578)),_0x2fcf18=a0_0xfd3da3[_0x2ec016(0xae)](_0x5108df);if(!_0xcf0b52[_0x2ec016(0xfa)](_0x2fcf18))throw new Error('Path\x20traversal\x20detected:\x20'+_0xa4e578+_0x2ec016(0xf8));return _0xcf0b52;}async[a0_0xbda7d4(0xaf)](_0x50dc56){const _0x4a4543=a0_0xbda7d4;if(!RESOLVER_CONFIG[_0x4a4543(0xfe)])return null;try{const _0x3d31c5=_0x50dc56+RESOLVER_CONFIG[_0x4a4543(0xdb)];return await a0_0x4ffdd1['copyFile'](_0x50dc56,_0x3d31c5),this['logger']?.[_0x4a4543(0xea)](_0x4a4543(0x9c),{'backupPath':_0x3d31c5}),_0x3d31c5;}catch(_0x463ba0){return this['logger']?.[_0x4a4543(0x10c)](_0x4a4543(0xf4),{'error':_0x463ba0[_0x4a4543(0xe1)]}),null;}}async[a0_0xbda7d4(0xb9)](_0xc5392b){const _0x587139=a0_0xbda7d4,_0x30b855=RESOLVER_CONFIG[_0x587139(0xc7)]+'/'+encodeURIComponent(_0xc5392b);for(let _0x527a3a=0x1;_0x527a3a<=RESOLVER_CONFIG[_0x587139(0xce)];_0x527a3a++){try{const _0x3e4553=new AbortController(),_0x1a1716=setTimeout(()=>_0x3e4553[_0x587139(0xd7)](),RESOLVER_CONFIG[_0x587139(0xf1)]),_0x436c51=await fetch(_0x30b855,{'signal':_0x3e4553['signal']});clearTimeout(_0x1a1716);if(!_0x436c51['ok']){if(_0x436c51[_0x587139(0x100)]===0x194)return this[_0x587139(0xc4)]?.['warn']('Package\x20not\x20found:\x20'+_0xc5392b),null;throw new Error('HTTP\x20'+_0x436c51[_0x587139(0x100)]+':\x20'+_0x436c51['statusText']);}const _0x57643d=await _0x436c51[_0x587139(0xe7)]();if(!_0x57643d||typeof _0x57643d!=='object'||!_0x57643d['dist-tags'])throw new Error(_0x587139(0xcd));return _0x57643d;}catch(_0x224964){if(_0x527a3a<RESOLVER_CONFIG[_0x587139(0xce)])this['logger']?.['debug']('Retry\x20'+_0x527a3a+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0xc5392b),await new Promise(_0x159232=>setTimeout(_0x159232,RESOLVER_CONFIG[_0x587139(0xd4)]*_0x527a3a));else return this['logger']?.[_0x587139(0xb0)]('Failed\x20to\x20fetch\x20'+_0xc5392b+':',_0x224964[_0x587139(0xe1)]),null;}}return null;}async[a0_0xbda7d4(0xe8)](_0x20585c,_0x150547){const _0xda3349=a0_0xbda7d4,_0xc39aa5=await this['_fetchPackageInfo'](_0x20585c);if(!_0xc39aa5)return null;const _0x2d00f0=_0xc39aa5['dist-tags']?.['latest'];if(!_0x2d00f0)return null;const _0x1cce93=this[_0xda3349(0xff)](_0x2d00f0);if(!_0x1cce93)return null;if(this['_isComplexRange'](_0x150547)){const _0x306ec2=this[_0xda3349(0x113)](_0x150547),_0x1a89fd=this[_0xda3349(0x115)](_0x306ec2,_0x1cce93);if(_0x1a89fd)return _0x2d00f0;return null;}const _0x44e592=this[_0xda3349(0x116)](_0x150547);if(!_0x44e592)return null;const _0x5246c0=this[_0xda3349(0x117)](_0x44e592,_0x1cce93);if(_0x5246c0)return _0x44e592[_0xda3349(0xa0)]+_0x2d00f0;return null;}[a0_0xbda7d4(0xff)](_0x3fd607){const _0x1a4d87=a0_0xbda7d4,_0x136063=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x1185ab=_0x136063[_0x1a4d87(0xc9)](_0x3fd607);if(!_0x1185ab){const _0x14a53a=_0x3fd607[_0x1a4d87(0x101)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x14a53a)return{'major':parseInt(_0x14a53a[0x1],0xa),'minor':parseInt(_0x14a53a[0x2],0xa),'patch':parseInt(_0x14a53a[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x1185ab[0x1],0xa),'minor':parseInt(_0x1185ab[0x2],0xa),'patch':parseInt(_0x1185ab[0x3],0xa),'prerelease':_0x1185ab[0x4]?_0x1185ab[0x4]['split']('.'):null,'build':_0x1185ab[0x5]||null};}[a0_0xbda7d4(0x9e)](_0x18ba79,_0x5c4853){const _0x53f816=a0_0xbda7d4;if(_0x18ba79[_0x53f816(0xbc)]!==_0x5c4853[_0x53f816(0xbc)])return _0x18ba79['major']-_0x5c4853[_0x53f816(0xbc)];if(_0x18ba79['minor']!==_0x5c4853[_0x53f816(0x9f)])return _0x18ba79[_0x53f816(0x9f)]-_0x5c4853['minor'];if(_0x18ba79['patch']!==_0x5c4853['patch'])return _0x18ba79['patch']-_0x5c4853[_0x53f816(0xf3)];if(!_0x18ba79['prerelease']&&!_0x5c4853['prerelease'])return 0x0;if(!_0x18ba79[_0x53f816(0xc3)]&&_0x5c4853[_0x53f816(0xc3)])return 0x1;if(_0x18ba79[_0x53f816(0xc3)]&&!_0x5c4853['prerelease'])return-0x1;return this[_0x53f816(0xa6)](_0x18ba79[_0x53f816(0xc3)],_0x5c4853['prerelease']);}['_comparePrerelease'](_0x4ad632,_0x556fb3){const _0x55fd3c=a0_0xbda7d4,_0x1c0f4b=Math[_0x55fd3c(0xc6)](_0x4ad632[_0x55fd3c(0xbb)],_0x556fb3[_0x55fd3c(0xbb)]);for(let _0xba6979=0x0;_0xba6979<_0x1c0f4b;_0xba6979++){if(_0xba6979>=_0x4ad632['length'])return-0x1;if(_0xba6979>=_0x556fb3[_0x55fd3c(0xbb)])return 0x1;const _0x14455d=_0x4ad632[_0xba6979],_0x2ae625=_0x556fb3[_0xba6979],_0x2f567a=/^\d+$/['test'](_0x14455d)?parseInt(_0x14455d,0xa):null,_0x1af856=/^\d+$/[_0x55fd3c(0xee)](_0x2ae625)?parseInt(_0x2ae625,0xa):null;if(_0x2f567a!==null&&_0x1af856!==null){if(_0x2f567a!==_0x1af856)return _0x2f567a-_0x1af856;continue;}if(_0x2f567a!==null&&_0x1af856===null)return-0x1;if(_0x2f567a===null&&_0x1af856!==null)return 0x1;if(_0x14455d<_0x2ae625)return-0x1;if(_0x14455d>_0x2ae625)return 0x1;}return 0x0;}[a0_0xbda7d4(0x116)](_0xbe834b){const _0x3c6bc2=a0_0xbda7d4,_0x4fe834=_0xbe834b[_0x3c6bc2(0xb2)](),_0x250f2c=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x5d1d09=_0x250f2c['exec'](_0x4fe834);if(_0x5d1d09){const _0x482db6=_0x5d1d09[0x1],_0xcd574b=_0x5d1d09[0x3],_0x5ed672=_0x5d1d09[0x5],_0xecbe17=_0x482db6==='*'||_0x482db6[_0x3c6bc2(0xd1)]()==='x'||_0xcd574b===undefined||_0xcd574b==='*'||_0xcd574b['toLowerCase']()==='x'||_0x5ed672===undefined||_0x5ed672==='*'||_0x5ed672['toLowerCase']()==='x';if(_0xecbe17)return{'prefix':'','operator':_0x3c6bc2(0xd2),'major':_0x482db6==='*'||_0x482db6['toLowerCase']()==='x'?null:parseInt(_0x482db6,0xa),'minor':!_0xcd574b||_0xcd574b==='*'||_0xcd574b[_0x3c6bc2(0xd1)]()==='x'?null:parseInt(_0xcd574b,0xa),'patch':!_0x5ed672||_0x5ed672==='*'||_0x5ed672['toLowerCase']()==='x'?null:parseInt(_0x5ed672,0xa),'original':_0xbe834b};}let _0x496dd2='',_0x5702f3=_0x4fe834,_0x5235c1='=';if(_0x4fe834['startsWith']('^'))_0x496dd2='^',_0x5702f3=_0x4fe834['slice'](0x1),_0x5235c1='^';else{if(_0x4fe834['startsWith']('~'))_0x496dd2='~',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x1),_0x5235c1='~';else{if(_0x4fe834[_0x3c6bc2(0xfa)]('>='))_0x496dd2='>=',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x2)[_0x3c6bc2(0xb2)](),_0x5235c1='>=';else{if(_0x4fe834[_0x3c6bc2(0xfa)]('>'))_0x496dd2='>',_0x5702f3=_0x4fe834[_0x3c6bc2(0x11b)](0x1)['trim'](),_0x5235c1='>';else{if(_0x4fe834['startsWith']('<='))_0x496dd2='<=',_0x5702f3=_0x4fe834['slice'](0x2)['trim'](),_0x5235c1='<=';else _0x4fe834[_0x3c6bc2(0xfa)]('<')&&(_0x496dd2='<',_0x5702f3=_0x4fe834['slice'](0x1)[_0x3c6bc2(0xb2)](),_0x5235c1='<');}}}}const _0x54489c=this['_parseVersion'](_0x5702f3);if(!_0x54489c)return null;return{'prefix':_0x496dd2,'operator':_0x5235c1,'major':_0x54489c[_0x3c6bc2(0xbc)],'minor':_0x54489c[_0x3c6bc2(0x9f)],'patch':_0x54489c['patch'],'prerelease':_0x54489c[_0x3c6bc2(0xc3)],'build':_0x54489c['build'],'original':_0xbe834b};}[a0_0xbda7d4(0x117)](_0x32f4b1,_0x3ef78d){const _0x3ed852=a0_0xbda7d4,_0x216809={'major':_0x32f4b1['major'],'minor':_0x32f4b1[_0x3ed852(0x9f)],'patch':_0x32f4b1[_0x3ed852(0xf3)],'prerelease':_0x32f4b1[_0x3ed852(0xc3)]||null,'build':_0x32f4b1[_0x3ed852(0xef)]||null};switch(_0x32f4b1[_0x3ed852(0xa1)]){case'^':return this[_0x3ed852(0xd3)](_0x216809,_0x3ef78d);case'~':return this['_isTildeUpdateAvailable'](_0x216809,_0x3ef78d);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x216809,_0x3ef78d);case'<':case'<=':return this[_0x3ed852(0x103)](_0x32f4b1,_0x3ef78d);case'x-range':return this[_0x3ed852(0xfd)](_0x32f4b1,_0x3ef78d);case'=':default:return this['_isExactUpdateAvailable'](_0x216809,_0x3ef78d);}}['_isCaretUpdateAvailable'](_0xf8c7d5,_0x42a554){const _0x591707=a0_0xbda7d4,_0x559ff3=this['_compareVersions'](_0x42a554,_0xf8c7d5);if(_0x559ff3<=0x0)return![];if(_0xf8c7d5[_0x591707(0xbc)]===0x0&&_0xf8c7d5[_0x591707(0x9f)]===0x0)return _0x42a554[_0x591707(0xbc)]===0x0&&_0x42a554['minor']===0x0;if(_0xf8c7d5['major']===0x0)return _0x42a554[_0x591707(0xbc)]===0x0&&_0x42a554['minor']===_0xf8c7d5[_0x591707(0x9f)];return _0x42a554['major']===_0xf8c7d5[_0x591707(0xbc)];}[a0_0xbda7d4(0xf6)](_0x32fc69,_0x4de5dc){const _0x49db25=a0_0xbda7d4,_0x4cb0bc=this[_0x49db25(0x9e)](_0x4de5dc,_0x32fc69);if(_0x4cb0bc<=0x0)return![];return _0x4de5dc['major']===_0x32fc69['major']&&_0x4de5dc[_0x49db25(0x9f)]===_0x32fc69[_0x49db25(0x9f)];}[a0_0xbda7d4(0xb5)](_0x5c8e23,_0x535e73){const _0x267378=this['_compareVersions'](_0x535e73,_0x5c8e23);return _0x267378>0x0;}[a0_0xbda7d4(0xc2)](_0x48cbca,_0x1ab732){const _0x2f3b68=a0_0xbda7d4;return this[_0x2f3b68(0xb5)](_0x48cbca,_0x1ab732);}[a0_0xbda7d4(0x103)](_0x256c0e,_0x4c81fd){const _0x39eb9e=a0_0xbda7d4,_0x3b9fc8=this[_0x39eb9e(0x9e)](_0x4c81fd,_0x256c0e);if(_0x256c0e['operator']==='<')return _0x3b9fc8<0x0;else{if(_0x256c0e['operator']==='<=')return _0x3b9fc8<=0x0;}return![];}[a0_0xbda7d4(0xfd)](_0xfc694b,_0x954a9c){const _0x5ca211=a0_0xbda7d4;if(_0xfc694b[_0x5ca211(0xbc)]!==null&&_0x954a9c[_0x5ca211(0xbc)]!==_0xfc694b[_0x5ca211(0xbc)])return![];if(_0xfc694b['minor']!==null&&_0x954a9c[_0x5ca211(0x9f)]!==_0xfc694b['minor'])return![];if(_0xfc694b[_0x5ca211(0xf3)]!==null&&_0x954a9c['patch']!==_0xfc694b['patch'])return![];return!![];}['_isComplexRange'](_0x3239e1){const _0x427b0d=a0_0xbda7d4;if(_0x3239e1[_0x427b0d(0xdc)]('||'))return!![];const _0x542b2a=_0x3239e1['trim']();if(_0x542b2a[_0x427b0d(0xfa)]('^')||_0x542b2a['startsWith']('~'))return![];const _0x31641f=_0x542b2a[_0x427b0d(0xfb)](/\s+/)[_0x427b0d(0xb7)](_0x2c1e40=>_0x2c1e40['length']>0x0);if(_0x31641f[_0x427b0d(0xbb)]>0x1){const _0x163c4a=/^(>=?|<=?|\^|~|[0-9])/;return _0x31641f['every'](_0x208ae1=>_0x163c4a['test'](_0x208ae1));}return![];}[a0_0xbda7d4(0x113)](_0x10da05){const _0x45c01b=a0_0xbda7d4;if(_0x10da05['includes']('||')){const _0x31a872=_0x10da05[_0x45c01b(0xfb)]('||')[_0x45c01b(0xcf)](_0xc66558=>_0xc66558['trim']());return{'type':'or','ranges':_0x31a872['map'](_0x3522d4=>this[_0x45c01b(0x113)](_0x3522d4))};}const _0x126f22=_0x10da05[_0x45c01b(0xb2)]()['split'](/\s+/)[_0x45c01b(0xb7)](_0x5ebd2c=>_0x5ebd2c[_0x45c01b(0xbb)]>0x0);if(_0x126f22[_0x45c01b(0xbb)]>0x1)return{'type':_0x45c01b(0xc8),'ranges':_0x126f22[_0x45c01b(0xcf)](_0x2d435f=>this['_parseVersionRange'](_0x2d435f))};return{'type':'simple','range':this['_parseVersionRange'](_0x10da05)};}['_satisfiesRange'](_0x122b54,_0x1dda86){if(!_0x122b54||!_0x1dda86)return![];return this['_isUpdateAvailable'](_0x122b54,_0x1dda86);}['_satisfiesComplexRange'](_0x2cc755,_0x55e296){const _0x12b80b=a0_0xbda7d4;if(!_0x2cc755||!_0x55e296)return![];switch(_0x2cc755[_0x12b80b(0xa2)]){case _0x12b80b(0xab):return this[_0x12b80b(0xd6)](_0x2cc755['range'],_0x55e296);case _0x12b80b(0xc8):return _0x2cc755['ranges'][_0x12b80b(0xe2)](_0x536172=>this['_satisfiesRange'](_0x536172,_0x55e296));case'or':return _0x2cc755[_0x12b80b(0xa8)][_0x12b80b(0xdf)](_0x34e0e9=>this[_0x12b80b(0x115)](_0x34e0e9,_0x55e296));default:return![];}}async[a0_0xbda7d4(0x10d)](_0x17b15f){const _0x4da515=a0_0xbda7d4,_0x122dcc={},_0x449754=Object['entries'](_0x17b15f);for(let _0x3c4620=0x0;_0x3c4620<_0x449754[_0x4da515(0xbb)];_0x3c4620+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x3b2836=_0x449754[_0x4da515(0x11b)](_0x3c4620,_0x3c4620+RESOLVER_CONFIG[_0x4da515(0xd8)]),_0x176293=_0x3b2836['map'](async([_0x2067d5,_0x392929])=>{const _0x5948ed=_0x4da515;try{const _0x2f5ee6=await this[_0x5948ed(0xe8)](_0x2067d5,_0x392929);if(_0x2f5ee6){const _0x52fda5=_0x392929[_0x5948ed(0x101)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x2067d5,'newVersion':''+_0x52fda5+_0x2f5ee6,'oldVersion':_0x392929};}return null;}catch(_0x64c9cc){return this['logger']?.['error']('Error\x20checking\x20'+_0x2067d5+':',_0x64c9cc['message']),null;}}),_0x2893d6=await Promise[_0x4da515(0xb6)](_0x176293);_0x2893d6[_0x4da515(0x104)](_0x29b20e=>{_0x29b20e&&(_0x122dcc[_0x29b20e['pkg']]=_0x29b20e['newVersion']);});}return _0x122dcc;}async['execute'](_0x3c2fb0,_0x45bdcf={}){const _0x5c2fae=a0_0xbda7d4;try{this[_0x5c2fae(0x109)](_0x3c2fb0);const {path:_0x4047b8,mode:_0x47ba1a,includeDev:_0x51a4d3}=_0x3c2fb0,{projectDir:_0x49e4b6,agentId:_0x12237a,directoryAccess:_0x1908ad}=_0x45bdcf,_0x49c42d=this[_0x5c2fae(0xda)](_0x4047b8,_0x45bdcf),_0x243434=a0_0xfd3da3['join'](_0x49c42d,'package.json');this['logger']?.[_0x5c2fae(0xea)]('Dependency\x20resolver\x20executing',{'mode':_0x47ba1a,'resolvedPath':_0x49c42d,'includeDev':_0x51a4d3,'agentId':_0x12237a});const _0x4872b8=[];_0x4872b8['push'](_0x5c2fae(0xf7)+_0x49c42d),_0x4872b8[_0x5c2fae(0xfc)]('Mode:\x20'+_0x47ba1a);try{await a0_0x4ffdd1[_0x5c2fae(0x106)](_0x243434);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x243434,'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};}_0x4872b8['push']('\x0a📦\x20Reading\x20package.json...');const _0x27a66e=await a0_0x4ffdd1['readFile'](_0x243434,'utf-8'),_0x43d6cc=JSON['parse'](_0x27a66e),_0x3f97db={..._0x43d6cc[_0x5c2fae(0xbf)]};_0x51a4d3&&_0x43d6cc['devDependencies']&&Object[_0x5c2fae(0xa5)](_0x3f97db,_0x43d6cc['devDependencies']);if(Object['keys'](_0x3f97db)['length']===0x0)return{'success':!![],'mode':_0x47ba1a,'message':_0x5c2fae(0xf9),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};if(Object[_0x5c2fae(0xcc)](_0x3f97db)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x5c2fae(0xc0)+Object[_0x5c2fae(0xcc)](_0x3f97db)[_0x5c2fae(0xbb)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xb8)+Object['keys'](_0x3f97db)[_0x5c2fae(0xbb)]+'\x20dependencies\x20to\x20check'),_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0x10f));const _0x479918=await this[_0x5c2fae(0x10d)](_0x3f97db);_0x4872b8['push'](_0x5c2fae(0x108)),_0x4872b8[_0x5c2fae(0xfc)]('📈\x20Updates\x20available:\x20'+Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)]);if(Object[_0x5c2fae(0xcc)](_0x479918)['length']>0x0){_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xd0));for(const [_0x56dbe2,_0x10ee3e]of Object[_0x5c2fae(0x10b)](_0x479918)){const _0x8da24b=_0x3f97db[_0x56dbe2];_0x4872b8['push']('\x20\x20•\x20'+_0x56dbe2+':\x20'+_0x8da24b+_0x5c2fae(0x10a)+_0x10ee3e);}}else _0x4872b8['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x47ba1a===_0x5c2fae(0xba))return Object[_0x5c2fae(0xcc)](_0x479918)['length']>0x0&&_0x4872b8[_0x5c2fae(0xfc)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0x5c2fae(0xba),'message':'Found\x20'+Object['keys'](_0x479918)[_0x5c2fae(0xbb)]+_0x5c2fae(0xc1),'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)[_0x5c2fae(0xbb)],'updatesAvailable':Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)],'updatesApplied':0x0,'errors':0x0},'updates':_0x479918,'output':_0x4872b8['join']('\x0a')};if((_0x47ba1a===_0x5c2fae(0xb3)||_0x47ba1a==='auto')&&Object['keys'](_0x479918)[_0x5c2fae(0xbb)]>0x0){_0x4872b8['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x346708=await this[_0x5c2fae(0xaf)](_0x243434);_0x346708?_0x4872b8['push']('✅\x20Backup\x20created:\x20'+a0_0xfd3da3['basename'](_0x346708)):_0x4872b8['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0x9b));for(const [_0x45a59d,_0x540d17]of Object[_0x5c2fae(0x10b)](_0x479918)){_0x43d6cc['dependencies']?.[_0x45a59d]&&(_0x43d6cc[_0x5c2fae(0xbf)][_0x45a59d]=_0x540d17),_0x43d6cc[_0x5c2fae(0xec)]?.[_0x45a59d]&&(_0x43d6cc['devDependencies'][_0x45a59d]=_0x540d17);}await a0_0x4ffdd1['writeFile'](_0x243434,JSON[_0x5c2fae(0x118)](_0x43d6cc,null,0x2)+'\x0a'),_0x4872b8['push'](_0x5c2fae(0xad)),_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xf0));try{const {stdout:_0x3c8cbf,stderr:_0x14af82}=await exec(_0x5c2fae(0xeb),{'cwd':_0x49c42d,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x3c8cbf){const _0x800629=_0x3c8cbf['trim']()['split']('\x0a');_0x800629['length']>0xa?_0x4872b8[_0x5c2fae(0xfc)]('\x20\x20'+_0x800629['slice'](-0x5)['join'](_0x5c2fae(0xbd))):_0x4872b8['push']('\x20\x20'+_0x3c8cbf['trim']());}_0x14af82&&!_0x14af82[_0x5c2fae(0xdc)](_0x5c2fae(0xac))&&_0x4872b8['push'](_0x5c2fae(0xed)+_0x14af82[_0x5c2fae(0xb2)]());_0x4872b8['push'](_0x5c2fae(0xb1));try{const {stdout:_0x4b0f13}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x49c42d,'timeout':0x7530}),_0x2e487c=JSON[_0x5c2fae(0x105)](_0x4b0f13);if(_0x2e487c['dependencies']){_0x4872b8['push'](_0x5c2fae(0xcb));for(const _0x2c0c3f of Object[_0x5c2fae(0xcc)](_0x479918)){_0x2e487c['dependencies'][_0x2c0c3f]&&_0x4872b8[_0x5c2fae(0xfc)](_0x5c2fae(0xbe)+_0x2c0c3f+'@'+_0x2e487c[_0x5c2fae(0xbf)][_0x2c0c3f]['version']);}}}catch(_0x209fb0){this['logger']?.[_0x5c2fae(0xa3)]('npm\x20ls\x20failed:',_0x209fb0['message']);}return{'success':!![],'mode':_0x47ba1a,'message':'Successfully\x20updated\x20'+Object[_0x5c2fae(0xcc)](_0x479918)[_0x5c2fae(0xbb)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x3f97db)[_0x5c2fae(0xbb)],'updatesAvailable':Object['keys'](_0x479918)[_0x5c2fae(0xbb)],'updatesApplied':Object['keys'](_0x479918)[_0x5c2fae(0xbb)],'errors':0x0},'updates':_0x479918,'backupCreated':_0x346708!==null,'backupPath':_0x346708,'output':_0x4872b8['join']('\x0a')};}catch(_0x4a978e){_0x4872b8['push'](_0x5c2fae(0xa4)+_0x4a978e['message']);if(_0x346708)try{await a0_0x4ffdd1['copyFile'](_0x346708,_0x243434),_0x4872b8[_0x5c2fae(0xfc)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x52609d){_0x4872b8[_0x5c2fae(0xfc)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x47ba1a,'error':'npm\x20install\x20failed:\x20'+_0x4a978e['message'],'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)['length'],'updatesAvailable':Object['keys'](_0x479918)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x479918,'backupCreated':_0x346708!==null,'output':_0x4872b8['join']('\x0a')};}}else{if(_0x47ba1a==='fix'||_0x47ba1a===_0x5c2fae(0xe0))return _0x4872b8['push'](_0x5c2fae(0xdd)),{'success':!![],'mode':_0x47ba1a,'message':_0x5c2fae(0xe6),'statistics':{'totalDependencies':Object[_0x5c2fae(0xcc)](_0x3f97db)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x4872b8[_0x5c2fae(0xd5)]('\x0a')};}}catch(_0x3ef6a0){return this['logger']?.['error'](_0x5c2fae(0xf5),_0x3ef6a0),{'success':![],'error':_0x3ef6a0['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3ef6a0[_0x5c2fae(0xe1)]};}}}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x56e9dd=a0_0x50c5;(function(_0x4da2c8,_0x34cf05){const _0x3dcd87=a0_0x50c5,_0x5aba8b=_0x4da2c8();while(!![]){try{const _0x37d7fb=-parseInt(_0x3dcd87(0x1a6))/0x1+-parseInt(_0x3dcd87(0x18f))/0x2+-parseInt(_0x3dcd87(0x1de))/0x3+-parseInt(_0x3dcd87(0x1cb))/0x4+-parseInt(_0x3dcd87(0x1aa))/0x5+parseInt(_0x3dcd87(0x193))/0x6*(-parseInt(_0x3dcd87(0x197))/0x7)+-parseInt(_0x3dcd87(0x1ad))/0x8*(-parseInt(_0x3dcd87(0x1e2))/0x9);if(_0x37d7fb===_0x34cf05)break;else _0x5aba8b['push'](_0x5aba8b['shift']());}catch(_0x516db8){_0x5aba8b['push'](_0x5aba8b['shift']());}}}(a0_0x5a42,0xde812));import{promises as a0_0x46cc19}from'fs';import a0_0x1079de from'path';import{exec as a0_0x2e2cbc}from'child_process';import{promisify}from'util';function a0_0x50c5(_0x562c40,_0x4f76fd){_0x562c40=_0x562c40-0x160;const _0x5a4284=a0_0x5a42();let _0x50c58e=_0x5a4284[_0x562c40];if(a0_0x50c5['YWwhrk']===undefined){var _0x25992a=function(_0x4c28c6){const _0x43586b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x46cc19='',_0x1079de='';for(let _0x2e2cbc=0x0,_0x4cb9bb,_0x3635f1,_0x1610c6=0x0;_0x3635f1=_0x4c28c6['charAt'](_0x1610c6++);~_0x3635f1&&(_0x4cb9bb=_0x2e2cbc%0x4?_0x4cb9bb*0x40+_0x3635f1:_0x3635f1,_0x2e2cbc++%0x4)?_0x46cc19+=String['fromCharCode'](0xff&_0x4cb9bb>>(-0x2*_0x2e2cbc&0x6)):0x0){_0x3635f1=_0x43586b['indexOf'](_0x3635f1);}for(let _0x136e55=0x0,_0x1edced=_0x46cc19['length'];_0x136e55<_0x1edced;_0x136e55++){_0x1079de+='%'+('00'+_0x46cc19['charCodeAt'](_0x136e55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1079de);};a0_0x50c5['vOsaSN']=_0x25992a,a0_0x50c5['IAWuGy']={},a0_0x50c5['YWwhrk']=!![];}const _0x3d7bac=_0x5a4284[0x0],_0x1cb21f=_0x562c40+_0x3d7bac,_0x2aabec=a0_0x50c5['IAWuGy'][_0x1cb21f];return!_0x2aabec?(_0x50c58e=a0_0x50c5['vOsaSN'](_0x50c58e),a0_0x50c5['IAWuGy'][_0x1cb21f]=_0x50c58e):_0x50c58e=_0x2aabec,_0x50c58e;}function a0_0x5a42(){const _0x8030b2=['CMfUz2u','lMjHy2T1Cc5QC29U','ugfJA2fNzsbUB3qGzM91BMq6ia','tLbnx1jfr0Ltvfjzx1vsta','C2XPy2u','BNbTifDbuK4','DhjPBq','BgvUz3rO','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','4PYfiejHy2T1CcbJCMvHDgvKoIa','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','Bw9Kzq','C3rYAw5N','ChjLzML4','x3bHCNnLvMvYC2LVBG','y2HLy2S','zgLZDc10ywDZ','vKfmsurFtu9ervm','BwLUB3i','Aw5MBW','C2LTCgXL','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','x2zLDgnOugfJA2fNzuLUzM8','ChjLCMvSzwfZzq','x2LZvxbKyxrLqxzHAwXHyMXL','lIbnDxn0igjLig9UzsbVzJOG','Ec1Yyw5Nzq','Cgf0AcbTDxn0igjLigeGC3rYAw5N','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','mta0nte5mM91AuDuAa','CgfYC2u','D29YA2LUz0rPCMvJDg9YEq','Cgf0Aa','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','Cgf0y2G','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','CMfUz2vZ','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','ywnJzxnZ','uKvhsvnuuLLFveLnru9vva','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','ANnVBG','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','uKvuuLLFrevmqvK','DxrMltG','yM9VBgvHBG','zML4','mZiYmZGZnLbHAwz0CW','B2jQzwn0','rM91BMqG','sfruuca','mtKXmJv1wKnlzMu','BwfQB3i','Dg9mB3DLCKnHC2u','yNvPBgq','x3bHCNnLqM9VBgvHBG','x2nVBxbHCMvqCMvYzwXLyxnL','DgvZDa','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','x3zHBgLKyxrLugfYyw1LDgvYCW','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','Bwf4','zMLSDgvY','tufyx0nptKnvuLjftLrFq0Hfq0Tt','A2v5CW','icdIGkiG','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','yxv0BW','C3rHCNrZv2L0Aa','x3bHCNnLq29TCgXLEfjHBMDL','zxHLyW','rxjYB3iGy2HLy2TPBMCG','cUkCQcboBYb1CgrHDgvZig5LzwrLza','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','x2nVBxbHCMvwzxjZAw9UCW','sw52ywXPzcbTB2rLoIa','x3nHDgLZzMLLC1jHBMDL','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','C2LNBMfS','zxHLy3v0zq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','B3bLCMf0B3i','BNbTigXZigzHAwXLzdO','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','zxjYB3i','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','Bg9Nz2vY','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','Aw5JBhvKzurLDG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','zw50CMLLCW','C29Tzq','x3bHCNnLvMvYC2LVBLjHBMDL','4PYfihbHy2THz2uUANnVBIb1CgrHDgvK','yw5K','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','C3rHDhvZ','AxnbyNnVBhv0zq','qKfds1vqx0vyvevou0LptG','mteYndGWoe52z01Xuq','iokgKIa','Dhj1zq','AM9PBG','ndeZmZGYBKnLqKLz','BwfW','DhLWzq','BM9YBwfSAxPL','mtC1AgT1quHJ','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','uKvuuLLFqvruru1qvfm','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','BNbTigLUC3rHBgWGzMfPBgvKoIa','x2LZq29TCgXLEfjHBMDL','zgv2rgvWzw5Kzw5JAwvZ','tufyx0rfuevorevoq0LfuW','C3rYAw5NAwz5','revgqvvmvf9nt0rf','C3bSAxq','DMvYC2LVBG','BwvZC2fNzq','C3rHDhvZvgv4Da','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','odmWmZC1rwLnA0Dl','ChvZAa','rMfPBgvKihrVigzLDgnOia','zgvWzw5Kzw5JAwvZ','mJKXnJi5mgvoC0Lnra','ywXS','y29WEuzPBgu','mJiZodrtEhbuz0m'];a0_0x5a42=function(){return _0x8030b2;};return a0_0x5a42();}import{BaseTool}from'./baseTool.js';import a0_0x4cb9bb from'../utilities/tagParser.js';const exec=promisify(a0_0x2e2cbc),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x56e9dd(0x1bd),'VALID_MODES':['check','fix',a0_0x56e9dd(0x16b)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x56e9dd(0x1af),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x56e9dd(0x1d9)};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'](_0x3635f1){const _0x357e4d=a0_0x56e9dd;if(typeof _0x3635f1===_0x357e4d(0x1df)&&_0x3635f1!==null)return{'path':_0x3635f1['path']||'.','mode':_0x3635f1[_0x357e4d(0x1b9)]||RESOLVER_CONFIG[_0x357e4d(0x1a0)],'includeDev':_0x3635f1['includeDev']!==undefined?_0x3635f1['includeDev']:!![]};if(typeof _0x3635f1==='string'){const _0x1610c6=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x136e55=_0x1610c6['exec'](_0x3635f1);if(_0x136e55){const _0x2cc73d=_0x136e55[0x1],_0x594532=_0x136e55[0x2],_0x5e4c0d=/path=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x2cc73d),_0xe2a66c=/mode=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x2cc73d),_0x676c73=/include-dev=["']([^"']*)["']/i['exec'](_0x2cc73d),_0x1803ab=/<path>(.*?)<\/path>/i,_0x311517=_0x1803ab[_0x357e4d(0x16e)](_0x594532),_0x5349ae=/<mode>(.*?)<\/mode>/i,_0x1edcdf=_0x5349ae['exec'](_0x594532),_0x1a922b=/<include-dev>(.*?)<\/include-dev>/i,_0x1818f5=_0x1a922b[_0x357e4d(0x16e)](_0x594532),_0x3df249=(_0x311517?_0x311517[0x1]['trim']():null)||(_0x5e4c0d?_0x5e4c0d[0x1]:'.'),_0x13fcb7=(_0x1edcdf?_0x1edcdf[0x1][_0x357e4d(0x1b4)]():null)||(_0xe2a66c?_0xe2a66c[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x151815=(_0x1818f5?_0x1818f5[0x1][_0x357e4d(0x1b4)]():null)||(_0x676c73?_0x676c73[0x1]:'true');return{'path':_0x3df249,'mode':_0x13fcb7,'includeDev':this[_0x357e4d(0x1e6)](_0x151815,!![])};}const _0x1edced=/\[resolve\s+([^\]]*)\]/i,_0x581951=_0x1edced['exec'](_0x3635f1);if(_0x581951){const _0x3d5c6f=_0x581951[0x1],_0xff58d5=/path=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f),_0x171328=/mode=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f),_0x3812d9=/include-dev=["']([^"']*)["']/i[_0x357e4d(0x16e)](_0x3d5c6f);return{'path':_0xff58d5?_0xff58d5[0x1]:'.','mode':_0x171328?_0x171328[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x357e4d(0x1e6)](_0x3812d9?_0x3812d9[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error(_0x357e4d(0x1d6));}['_parseBoolean'](_0x6d01c2,defaultValue=![]){const _0x450150=a0_0x56e9dd;if(_0x6d01c2===undefined||_0x6d01c2===null)return defaultValue;if(typeof _0x6d01c2===_0x450150(0x1dc))return _0x6d01c2;if(typeof _0x6d01c2===_0x450150(0x1ba))return _0x6d01c2[_0x450150(0x1e4)]()===_0x450150(0x191)||_0x6d01c2==='1';return defaultValue;}[a0_0x56e9dd(0x162)](_0x509cf8){const _0x1e1c09=a0_0x56e9dd;if(!_0x509cf8||typeof _0x509cf8!=='object')throw new Error(_0x1e1c09(0x1d8));if(_0x509cf8[_0x1e1c09(0x1ce)]&&typeof _0x509cf8['path']!==_0x1e1c09(0x1ba))throw new Error(_0x1e1c09(0x1c9));if(_0x509cf8[_0x1e1c09(0x1b9)]&&!RESOLVER_CONFIG[_0x1e1c09(0x1bf)]['includes'](_0x509cf8[_0x1e1c09(0x1b9)]))throw new Error(_0x1e1c09(0x173)+_0x509cf8['mode']+_0x1e1c09(0x1c7)+RESOLVER_CONFIG['VALID_MODES'][_0x1e1c09(0x192)](',\x20'));if(_0x509cf8[_0x1e1c09(0x184)]!==undefined&&typeof _0x509cf8[_0x1e1c09(0x184)]!=='boolean')throw new Error(_0x1e1c09(0x1ca));}['_resolveAndValidatePath'](_0x2974e4,_0x540d96){const _0x4818c6=a0_0x56e9dd,{projectDir:_0x33c622,directoryAccess:_0x5eb93b}=_0x540d96;let _0x207f5b=_0x33c622||process['cwd']();_0x5eb93b&&_0x5eb93b[_0x4818c6(0x1cd)]&&(_0x207f5b=_0x5eb93b[_0x4818c6(0x1cd)]);const _0x565de7=a0_0x1079de[_0x4818c6(0x18d)](_0x2974e4)?a0_0x1079de['normalize'](_0x2974e4):a0_0x1079de[_0x4818c6(0x196)](a0_0x1079de['join'](_0x207f5b,_0x2974e4)),_0x284b9d=a0_0x1079de['normalize'](_0x207f5b);if(!_0x565de7['startsWith'](_0x284b9d))throw new Error(_0x4818c6(0x18b)+_0x2974e4+_0x4818c6(0x1c3));return _0x565de7;}async['_createBackup'](_0x35e4e2){const _0xa23052=a0_0x56e9dd;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0xc893e0=_0x35e4e2+RESOLVER_CONFIG[_0xa23052(0x18e)];return await a0_0x46cc19[_0xa23052(0x1ac)](_0x35e4e2,_0xc893e0),this[_0xa23052(0x17f)]?.[_0xa23052(0x1c1)]('Created\x20backup',{'backupPath':_0xc893e0}),_0xc893e0;}catch(_0x234bfd){return this[_0xa23052(0x17f)]?.['warn']('Failed\x20to\x20create\x20backup',{'error':_0x234bfd['message']}),null;}}async['_fetchPackageInfo'](_0x2ed0c2){const _0x4fcc73=a0_0x56e9dd,_0x56008f=RESOLVER_CONFIG[_0x4fcc73(0x1b1)]+'/'+encodeURIComponent(_0x2ed0c2);for(let _0xffdf1e=0x1;_0xffdf1e<=RESOLVER_CONFIG[_0x4fcc73(0x199)];_0xffdf1e++){try{const _0x534731=new AbortController(),_0x1e444d=setTimeout(()=>_0x534731['abort'](),RESOLVER_CONFIG[_0x4fcc73(0x1d5)]),_0x1d0202=await fetch(_0x56008f,{'signal':_0x534731[_0x4fcc73(0x176)]});clearTimeout(_0x1e444d);if(!_0x1d0202['ok']){if(_0x1d0202[_0x4fcc73(0x18c)]===0x194)return this[_0x4fcc73(0x17f)]?.['warn'](_0x4fcc73(0x1b0)+_0x2ed0c2),null;throw new Error(_0x4fcc73(0x1e1)+_0x1d0202[_0x4fcc73(0x18c)]+':\x20'+_0x1d0202[_0x4fcc73(0x1a4)]);}const _0x3eb22e=await _0x1d0202[_0x4fcc73(0x1d7)]();if(!_0x3eb22e||typeof _0x3eb22e!=='object'||!_0x3eb22e[_0x4fcc73(0x1be)])throw new Error('Invalid\x20registry\x20response\x20format');return _0x3eb22e;}catch(_0x2cedc0){if(_0xffdf1e<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x4fcc73(0x17f)]?.['debug']('Retry\x20'+_0xffdf1e+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0x2ed0c2),await new Promise(_0x47d82a=>setTimeout(_0x47d82a,RESOLVER_CONFIG[_0x4fcc73(0x1da)]*_0xffdf1e));else return this[_0x4fcc73(0x17f)]?.[_0x4fcc73(0x17d)](_0x4fcc73(0x1a8)+_0x2ed0c2+':',_0x2cedc0[_0x4fcc73(0x1a3)]),null;}}return null;}async['_getLatestCompatibleVersion'](_0x32a300,_0xdc0b03){const _0x40be43=a0_0x56e9dd,_0x1c1ef2=await this[_0x40be43(0x1c4)](_0x32a300);if(!_0x1c1ef2)return null;const _0x16b216=_0x1c1ef2['dist-tags']?.['latest'];if(!_0x16b216)return null;const _0xd9ac1c=this['_parseVersion'](_0x16b216);if(!_0xd9ac1c)return null;if(this[_0x40be43(0x19c)](_0xdc0b03)){const _0x472642=this[_0x40be43(0x16d)](_0xdc0b03),_0x23b97f=this[_0x40be43(0x1b6)](_0x472642,_0xd9ac1c);if(_0x23b97f)return _0x16b216;return null;}const _0x5789c7=this[_0x40be43(0x188)](_0xdc0b03);if(!_0x5789c7)return null;const _0x503564=this[_0x40be43(0x1c6)](_0x5789c7,_0xd9ac1c);if(_0x503564)return _0x5789c7[_0x40be43(0x1bb)]+_0x16b216;return null;}[a0_0x56e9dd(0x1bc)](_0x553042){const _0x453f65=a0_0x56e9dd,_0x219055=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x24b48d=_0x219055[_0x453f65(0x16e)](_0x553042);if(!_0x24b48d){const _0xebab2a=_0x553042['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0xebab2a)return{'major':parseInt(_0xebab2a[0x1],0xa),'minor':parseInt(_0xebab2a[0x2],0xa),'patch':parseInt(_0xebab2a[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x24b48d[0x1],0xa),'minor':parseInt(_0x24b48d[0x2],0xa),'patch':parseInt(_0x24b48d[0x3],0xa),'prerelease':_0x24b48d[0x4]?_0x24b48d[0x4][_0x453f65(0x1a1)]('.'):null,'build':_0x24b48d[0x5]||null};}['_compareVersions'](_0x513761,_0x5cd1dc){const _0x5c7d9d=a0_0x56e9dd;if(_0x513761[_0x5c7d9d(0x1e3)]!==_0x5cd1dc[_0x5c7d9d(0x1e3)])return _0x513761['major']-_0x5cd1dc[_0x5c7d9d(0x1e3)];if(_0x513761['minor']!==_0x5cd1dc[_0x5c7d9d(0x1c0)])return _0x513761[_0x5c7d9d(0x1c0)]-_0x5cd1dc[_0x5c7d9d(0x1c0)];if(_0x513761[_0x5c7d9d(0x1d0)]!==_0x5cd1dc['patch'])return _0x513761['patch']-_0x5cd1dc[_0x5c7d9d(0x1d0)];if(!_0x513761['prerelease']&&!_0x5cd1dc['prerelease'])return 0x0;if(!_0x513761[_0x5c7d9d(0x1c5)]&&_0x5cd1dc[_0x5c7d9d(0x1c5)])return 0x1;if(_0x513761[_0x5c7d9d(0x1c5)]&&!_0x5cd1dc[_0x5c7d9d(0x1c5)])return-0x1;return this[_0x5c7d9d(0x1e7)](_0x513761['prerelease'],_0x5cd1dc[_0x5c7d9d(0x1c5)]);}['_comparePrerelease'](_0x769e4d,_0x2f0eac){const _0x51b890=a0_0x56e9dd,_0xa036a1=Math[_0x51b890(0x164)](_0x769e4d['length'],_0x2f0eac[_0x51b890(0x1b5)]);for(let _0x36bffb=0x0;_0x36bffb<_0xa036a1;_0x36bffb++){if(_0x36bffb>=_0x769e4d['length'])return-0x1;if(_0x36bffb>=_0x2f0eac['length'])return 0x1;const _0x48a179=_0x769e4d[_0x36bffb],_0x37b4af=_0x2f0eac[_0x36bffb],_0x217945=/^\d+$/['test'](_0x48a179)?parseInt(_0x48a179,0xa):null,_0x9ee629=/^\d+$/[_0x51b890(0x160)](_0x37b4af)?parseInt(_0x37b4af,0xa):null;if(_0x217945!==null&&_0x9ee629!==null){if(_0x217945!==_0x9ee629)return _0x217945-_0x9ee629;continue;}if(_0x217945!==null&&_0x9ee629===null)return-0x1;if(_0x217945===null&&_0x9ee629!==null)return 0x1;if(_0x48a179<_0x37b4af)return-0x1;if(_0x48a179>_0x37b4af)return 0x1;}return 0x0;}['_parseVersionRange'](_0x181c80){const _0x2740b8=a0_0x56e9dd,_0x498987=_0x181c80[_0x2740b8(0x1b4)](),_0x34963d=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x13c55d=_0x34963d[_0x2740b8(0x16e)](_0x498987);if(_0x13c55d){const _0xf8b992=_0x13c55d[0x1],_0x5bfad5=_0x13c55d[0x3],_0x32c84a=_0x13c55d[0x5],_0x409807=_0xf8b992==='*'||_0xf8b992['toLowerCase']()==='x'||_0x5bfad5===undefined||_0x5bfad5==='*'||_0x5bfad5['toLowerCase']()==='x'||_0x32c84a===undefined||_0x32c84a==='*'||_0x32c84a['toLowerCase']()==='x';if(_0x409807)return{'prefix':'','operator':_0x2740b8(0x1c8),'major':_0xf8b992==='*'||_0xf8b992['toLowerCase']()==='x'?null:parseInt(_0xf8b992,0xa),'minor':!_0x5bfad5||_0x5bfad5==='*'||_0x5bfad5[_0x2740b8(0x1e4)]()==='x'?null:parseInt(_0x5bfad5,0xa),'patch':!_0x32c84a||_0x32c84a==='*'||_0x32c84a['toLowerCase']()==='x'?null:parseInt(_0x32c84a,0xa),'original':_0x181c80};}let _0x45160b='',_0x19bb48=_0x498987,_0x2be7ac='=';if(_0x498987[_0x2740b8(0x16c)]('^'))_0x45160b='^',_0x19bb48=_0x498987['slice'](0x1),_0x2be7ac='^';else{if(_0x498987['startsWith']('~'))_0x45160b='~',_0x19bb48=_0x498987[_0x2740b8(0x1b2)](0x1),_0x2be7ac='~';else{if(_0x498987['startsWith']('>='))_0x45160b='>=',_0x19bb48=_0x498987['slice'](0x2)[_0x2740b8(0x1b4)](),_0x2be7ac='>=';else{if(_0x498987['startsWith']('>'))_0x45160b='>',_0x19bb48=_0x498987['slice'](0x1)[_0x2740b8(0x1b4)](),_0x2be7ac='>';else{if(_0x498987[_0x2740b8(0x16c)]('<='))_0x45160b='<=',_0x19bb48=_0x498987['slice'](0x2)['trim'](),_0x2be7ac='<=';else _0x498987['startsWith']('<')&&(_0x45160b='<',_0x19bb48=_0x498987[_0x2740b8(0x1b2)](0x1)['trim'](),_0x2be7ac='<');}}}}const _0x2a02d6=this['_parseVersion'](_0x19bb48);if(!_0x2a02d6)return null;return{'prefix':_0x45160b,'operator':_0x2be7ac,'major':_0x2a02d6['major'],'minor':_0x2a02d6['minor'],'patch':_0x2a02d6['patch'],'prerelease':_0x2a02d6[_0x2740b8(0x1c5)],'build':_0x2a02d6['build'],'original':_0x181c80};}['_isUpdateAvailable'](_0x547778,_0x5f0e3f){const _0x19790c=a0_0x56e9dd,_0x2a8124={'major':_0x547778[_0x19790c(0x1e3)],'minor':_0x547778[_0x19790c(0x1c0)],'patch':_0x547778['patch'],'prerelease':_0x547778['prerelease']||null,'build':_0x547778[_0x19790c(0x1e5)]||null};switch(_0x547778['operator']){case'^':return this[_0x19790c(0x1cf)](_0x2a8124,_0x5f0e3f);case'~':return this['_isTildeUpdateAvailable'](_0x2a8124,_0x5f0e3f);case'>=':case'>':return this[_0x19790c(0x16a)](_0x2a8124,_0x5f0e3f);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x547778,_0x5f0e3f);case'x-range':return this['_isXRangeUpdateAvailable'](_0x547778,_0x5f0e3f);case'=':default:return this[_0x19790c(0x178)](_0x2a8124,_0x5f0e3f);}}['_isCaretUpdateAvailable'](_0x4bacfd,_0x11b2f6){const _0x3ba02d=a0_0x56e9dd,_0x410e20=this['_compareVersions'](_0x11b2f6,_0x4bacfd);if(_0x410e20<=0x0)return![];if(_0x4bacfd[_0x3ba02d(0x1e3)]===0x0&&_0x4bacfd['minor']===0x0)return _0x11b2f6[_0x3ba02d(0x1e3)]===0x0&&_0x11b2f6[_0x3ba02d(0x1c0)]===0x0;if(_0x4bacfd[_0x3ba02d(0x1e3)]===0x0)return _0x11b2f6['major']===0x0&&_0x11b2f6['minor']===_0x4bacfd[_0x3ba02d(0x1c0)];return _0x11b2f6[_0x3ba02d(0x1e3)]===_0x4bacfd['major'];}['_isTildeUpdateAvailable'](_0x194cd0,_0x1cf5dd){const _0x193de0=a0_0x56e9dd,_0x1b5677=this[_0x193de0(0x172)](_0x1cf5dd,_0x194cd0);if(_0x1b5677<=0x0)return![];return _0x1cf5dd['major']===_0x194cd0['major']&&_0x1cf5dd[_0x193de0(0x1c0)]===_0x194cd0[_0x193de0(0x1c0)];}['_isSimpleUpdateAvailable'](_0xc5fc84,_0x403b3d){const _0x1967ac=this['_compareVersions'](_0x403b3d,_0xc5fc84);return _0x1967ac>0x0;}['_isExactUpdateAvailable'](_0x4701b3,_0x1dc20d){return this['_isSimpleUpdateAvailable'](_0x4701b3,_0x1dc20d);}['_isLessThanUpdateAvailable'](_0x46f160,_0xfb90fd){const _0x51b107=a0_0x56e9dd,_0x42bc6a=this[_0x51b107(0x172)](_0xfb90fd,_0x46f160);if(_0x46f160[_0x51b107(0x179)]==='<')return _0x42bc6a<0x0;else{if(_0x46f160['operator']==='<=')return _0x42bc6a<=0x0;}return![];}[a0_0x56e9dd(0x180)](_0x8142c2,_0x5b9c2b){const _0xef0a69=a0_0x56e9dd;if(_0x8142c2[_0xef0a69(0x1e3)]!==null&&_0x5b9c2b[_0xef0a69(0x1e3)]!==_0x8142c2['major'])return![];if(_0x8142c2['minor']!==null&&_0x5b9c2b[_0xef0a69(0x1c0)]!==_0x8142c2[_0xef0a69(0x1c0)])return![];if(_0x8142c2['patch']!==null&&_0x5b9c2b['patch']!==_0x8142c2['patch'])return![];return!![];}[a0_0x56e9dd(0x19c)](_0x3c9015){const _0x4648f6=a0_0x56e9dd;if(_0x3c9015['includes']('||'))return!![];const _0xdb7edf=_0x3c9015[_0x4648f6(0x1b4)]();if(_0xdb7edf['startsWith']('^')||_0xdb7edf['startsWith']('~'))return![];const _0x18e5db=_0xdb7edf['split'](/\s+/)[_0x4648f6(0x165)](_0x4ac9a2=>_0x4ac9a2['length']>0x0);if(_0x18e5db['length']>0x1){const _0x5b7b07=/^(>=?|<=?|\^|~|[0-9])/;return _0x18e5db['every'](_0x1b5e72=>_0x5b7b07['test'](_0x1b5e72));}return![];}[a0_0x56e9dd(0x16d)](_0x1bdce){const _0x5287de=a0_0x56e9dd;if(_0x1bdce['includes']('||')){const _0x4e7aca=_0x1bdce[_0x5287de(0x1a1)]('||')['map'](_0x34f349=>_0x34f349['trim']());return{'type':'or','ranges':_0x4e7aca['map'](_0x131023=>this['_parseComplexRange'](_0x131023))};}const _0x39c2a2=_0x1bdce[_0x5287de(0x1b4)]()['split'](/\s+/)[_0x5287de(0x165)](_0x1079e7=>_0x1079e7[_0x5287de(0x1b5)]>0x0);if(_0x39c2a2['length']>0x1)return{'type':'and','ranges':_0x39c2a2[_0x5287de(0x194)](_0x4c52b4=>this[_0x5287de(0x188)](_0x4c52b4))};return{'type':_0x5287de(0x1c2),'range':this['_parseVersionRange'](_0x1bdce)};}[a0_0x56e9dd(0x174)](_0x2d75d1,_0x5969bd){const _0x274c04=a0_0x56e9dd;if(!_0x2d75d1||!_0x5969bd)return![];return this[_0x274c04(0x1c6)](_0x2d75d1,_0x5969bd);}[a0_0x56e9dd(0x1b6)](_0x3b829d,_0x257c8f){const _0x4270ce=a0_0x56e9dd;if(!_0x3b829d||!_0x257c8f)return![];switch(_0x3b829d[_0x4270ce(0x195)]){case'simple':return this['_satisfiesRange'](_0x3b829d[_0x4270ce(0x1ae)],_0x257c8f);case _0x4270ce(0x18a):return _0x3b829d[_0x4270ce(0x1d2)]['every'](_0x4a71f1=>this['_satisfiesRange'](_0x4a71f1,_0x257c8f));case'or':return _0x3b829d['ranges'][_0x4270ce(0x187)](_0x2d09d1=>this['_satisfiesComplexRange'](_0x2d09d1,_0x257c8f));default:return![];}}async['_checkDependencies'](_0x34e233){const _0x1827f6=a0_0x56e9dd,_0x5e731f={},_0x59af90=Object[_0x1827f6(0x186)](_0x34e233);for(let _0x5eb455=0x0;_0x5eb455<_0x59af90['length'];_0x5eb455+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x92a7ba=_0x59af90['slice'](_0x5eb455,_0x5eb455+RESOLVER_CONFIG[_0x1827f6(0x166)]),_0x2de681=_0x92a7ba[_0x1827f6(0x194)](async([_0x49bddb,_0x4865f2])=>{const _0x127f31=_0x1827f6;try{const _0x53473a=await this['_getLatestCompatibleVersion'](_0x49bddb,_0x4865f2);if(_0x53473a){const _0x3c2fca=_0x4865f2['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x49bddb,'newVersion':''+_0x3c2fca+_0x53473a,'oldVersion':_0x4865f2};}return null;}catch(_0x17e00c){return this[_0x127f31(0x17f)]?.[_0x127f31(0x17d)](_0x127f31(0x16f)+_0x49bddb+':',_0x17e00c[_0x127f31(0x1a3)]),null;}}),_0x51a921=await Promise[_0x1827f6(0x1ab)](_0x2de681);_0x51a921['forEach'](_0x19e80f=>{_0x19e80f&&(_0x5e731f[_0x19e80f['pkg']]=_0x19e80f['newVersion']);});}return _0x5e731f;}async[a0_0x56e9dd(0x177)](_0x4b0181,_0x4110df={}){const _0x3c52d7=a0_0x56e9dd;try{this[_0x3c52d7(0x162)](_0x4b0181);const {path:_0x3ffe53,mode:_0x5264cb,includeDev:_0x5d85b2}=_0x4b0181,{projectDir:_0x360810,agentId:_0x787d44,directoryAccess:_0x4d8634}=_0x4110df,_0x4d1b20=this[_0x3c52d7(0x181)](_0x3ffe53,_0x4110df),_0xc09849=a0_0x1079de['join'](_0x4d1b20,'package.json');this[_0x3c52d7(0x17f)]?.[_0x3c52d7(0x1c1)](_0x3c52d7(0x183),{'mode':_0x5264cb,'resolvedPath':_0x4d1b20,'includeDev':_0x5d85b2,'agentId':_0x787d44});const _0x238a8c=[];_0x238a8c['push'](_0x3c52d7(0x171)+_0x4d1b20),_0x238a8c[_0x3c52d7(0x1a7)]('Mode:\x20'+_0x5264cb);try{await a0_0x46cc19[_0x3c52d7(0x1d4)](_0xc09849);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0xc09849,'output':_0x238a8c['join']('\x0a')};}_0x238a8c['push']('\x0a📦\x20Reading\x20package.json...');const _0x31f8b4=await a0_0x46cc19['readFile'](_0xc09849,_0x3c52d7(0x1db)),_0x402832=JSON['parse'](_0x31f8b4),_0x2253a9={..._0x402832[_0x3c52d7(0x1a9)]};_0x5d85b2&&_0x402832['devDependencies']&&Object['assign'](_0x2253a9,_0x402832['devDependencies']);if(Object[_0x3c52d7(0x167)](_0x2253a9)['length']===0x0)return{'success':!![],'mode':_0x5264cb,'message':_0x3c52d7(0x161),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};if(Object[_0x3c52d7(0x167)](_0x2253a9)['length']>RESOLVER_CONFIG[_0x3c52d7(0x19e)])return{'success':![],'error':_0x3c52d7(0x17e)+Object['keys'](_0x2253a9)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};_0x238a8c['push']('📊\x20Found\x20'+Object['keys'](_0x2253a9)['length']+'\x20dependencies\x20to\x20check'),_0x238a8c['push'](_0x3c52d7(0x17b));const _0xdc4f04=await this['_checkDependencies'](_0x2253a9);_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x175)),_0x238a8c[_0x3c52d7(0x1a7)]('📈\x20Updates\x20available:\x20'+Object[_0x3c52d7(0x167)](_0xdc4f04)[_0x3c52d7(0x1b5)]);if(Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)]>0x0){_0x238a8c['push'](_0x3c52d7(0x185));for(const [_0x56a17b,_0x1c9a4b]of Object['entries'](_0xdc4f04)){const _0x3f9c9a=_0x2253a9[_0x56a17b];_0x238a8c['push']('\x20\x20•\x20'+_0x56a17b+':\x20'+_0x3f9c9a+_0x3c52d7(0x190)+_0x1c9a4b);}}else _0x238a8c['push'](_0x3c52d7(0x1d1));if(_0x5264cb==='check')return Object['keys'](_0xdc4f04)['length']>0x0&&_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1a5)),{'success':!![],'mode':_0x3c52d7(0x1bd),'message':_0x3c52d7(0x1e0)+Object[_0x3c52d7(0x167)](_0xdc4f04)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':Object[_0x3c52d7(0x167)](_0xdc4f04)[_0x3c52d7(0x1b5)],'updatesApplied':0x0,'errors':0x0},'updates':_0xdc4f04,'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};if((_0x5264cb==='fix'||_0x5264cb===_0x3c52d7(0x16b))&&Object[_0x3c52d7(0x167)](_0xdc4f04)['length']>0x0){_0x238a8c['push'](_0x3c52d7(0x169));const _0x2cdcd7=await this['_createBackup'](_0xc09849);_0x2cdcd7?_0x238a8c['push'](_0x3c52d7(0x1b7)+a0_0x1079de['basename'](_0x2cdcd7)):_0x238a8c[_0x3c52d7(0x1a7)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x238a8c[_0x3c52d7(0x1a7)]('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x4f8bba,_0xe1c778]of Object[_0x3c52d7(0x186)](_0xdc4f04)){_0x402832[_0x3c52d7(0x1a9)]?.[_0x4f8bba]&&(_0x402832['dependencies'][_0x4f8bba]=_0xe1c778),_0x402832['devDependencies']?.[_0x4f8bba]&&(_0x402832[_0x3c52d7(0x19d)][_0x4f8bba]=_0xe1c778);}await a0_0x46cc19['writeFile'](_0xc09849,JSON[_0x3c52d7(0x19f)](_0x402832,null,0x2)+'\x0a'),_0x238a8c['push'](_0x3c52d7(0x189)),_0x238a8c[_0x3c52d7(0x1a7)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x40796c,stderr:_0x4adae3}=await exec('npm\x20install',{'cwd':_0x4d1b20,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x40796c){const _0x1587c0=_0x40796c['trim']()[_0x3c52d7(0x1a1)]('\x0a');_0x1587c0['length']>0xa?_0x238a8c[_0x3c52d7(0x1a7)]('\x20\x20'+_0x1587c0['slice'](-0x5)['join']('\x0a\x20\x20')):_0x238a8c[_0x3c52d7(0x1a7)]('\x20\x20'+_0x40796c[_0x3c52d7(0x1b4)]());}_0x4adae3&&!_0x4adae3['includes'](_0x3c52d7(0x1b3))&&_0x238a8c[_0x3c52d7(0x1a7)]('⚠️\x20\x20'+_0x4adae3['trim']());_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x17c));try{const {stdout:_0x2ff0ed}=await exec(_0x3c52d7(0x182),{'cwd':_0x4d1b20,'timeout':0x7530}),_0x589f1e=JSON[_0x3c52d7(0x1cc)](_0x2ff0ed);if(_0x589f1e['dependencies']){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1b8));for(const _0x4e4307 of Object['keys'](_0xdc4f04)){_0x589f1e['dependencies'][_0x4e4307]&&_0x238a8c['push'](_0x3c52d7(0x168)+_0x4e4307+'@'+_0x589f1e[_0x3c52d7(0x1a9)][_0x4e4307][_0x3c52d7(0x1a2)]);}}}catch(_0x3c6bdf){this[_0x3c52d7(0x17f)]?.['debug'](_0x3c52d7(0x17a),_0x3c6bdf['message']);}return{'success':!![],'mode':_0x5264cb,'message':'Successfully\x20updated\x20'+Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)]+'\x20package(s)','statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':Object[_0x3c52d7(0x167)](_0xdc4f04)['length'],'updatesApplied':Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)],'errors':0x0},'updates':_0xdc4f04,'backupCreated':_0x2cdcd7!==null,'backupPath':_0x2cdcd7,'output':_0x238a8c['join']('\x0a')};}catch(_0xee8c36){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x1d3)+_0xee8c36['message']);if(_0x2cdcd7)try{await a0_0x46cc19[_0x3c52d7(0x1ac)](_0x2cdcd7,_0xc09849),_0x238a8c['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x209d11){_0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x163));}return{'success':![],'mode':_0x5264cb,'error':_0x3c52d7(0x19b)+_0xee8c36['message'],'statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)[_0x3c52d7(0x1b5)],'updatesAvailable':Object['keys'](_0xdc4f04)[_0x3c52d7(0x1b5)],'updatesApplied':0x0,'errors':0x1},'updates':_0xdc4f04,'backupCreated':_0x2cdcd7!==null,'output':_0x238a8c['join']('\x0a')};}}else{if(_0x5264cb===_0x3c52d7(0x1dd)||_0x5264cb==='auto')return _0x238a8c[_0x3c52d7(0x1a7)](_0x3c52d7(0x170)),{'success':!![],'mode':_0x5264cb,'message':_0x3c52d7(0x198),'statistics':{'totalDependencies':Object[_0x3c52d7(0x167)](_0x2253a9)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x238a8c[_0x3c52d7(0x192)]('\x0a')};}}catch(_0x2a9f4d){return this['logger']?.['error'](_0x3c52d7(0x19a),_0x2a9f4d),{'success':![],'error':_0x2a9f4d['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x2a9f4d[_0x3c52d7(0x1a3)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x38d1(_0x6a61df,_0x57874f){_0x6a61df=_0x6a61df-0x196;const _0x471c1a=a0_0x471c();let _0x38d1b4=_0x471c1a[_0x6a61df];if(a0_0x38d1['HtNQta']===undefined){var _0x4ddaca=function(_0x28f6b4){const _0x2cc007='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58b70e='',_0x11c690='';for(let _0x5f2754=0x0,_0x112521,_0x294c47,_0x3a6c60=0x0;_0x294c47=_0x28f6b4['charAt'](_0x3a6c60++);~_0x294c47&&(_0x112521=_0x5f2754%0x4?_0x112521*0x40+_0x294c47:_0x294c47,_0x5f2754++%0x4)?_0x58b70e+=String['fromCharCode'](0xff&_0x112521>>(-0x2*_0x5f2754&0x6)):0x0){_0x294c47=_0x2cc007['indexOf'](_0x294c47);}for(let _0x25c408=0x0,_0x41f18d=_0x58b70e['length'];_0x25c408<_0x41f18d;_0x25c408++){_0x11c690+='%'+('00'+_0x58b70e['charCodeAt'](_0x25c408)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x11c690);};a0_0x38d1['slNtUV']=_0x4ddaca,a0_0x38d1['AHtYwk']={},a0_0x38d1['HtNQta']=!![];}const _0x4d5fe1=_0x471c1a[0x0],_0x5159f6=_0x6a61df+_0x4d5fe1,_0x367d4d=a0_0x38d1['AHtYwk'][_0x5159f6];return!_0x367d4d?(_0x38d1b4=a0_0x38d1['slNtUV'](_0x38d1b4),a0_0x38d1['AHtYwk'][_0x5159f6]=_0x38d1b4):_0x38d1b4=_0x367d4d,_0x38d1b4;}const a0_0x19bb1a=a0_0x38d1;(function(_0x2f0670,_0x2cc8b2){const _0x1d000a=a0_0x38d1,_0x161e53=_0x2f0670();while(!![]){try{const _0x4aaaf4=parseInt(_0x1d000a(0x1d8))/0x1*(parseInt(_0x1d000a(0x1ed))/0x2)+-parseInt(_0x1d000a(0x1d5))/0x3+-parseInt(_0x1d000a(0x19c))/0x4+-parseInt(_0x1d000a(0x196))/0x5+parseInt(_0x1d000a(0x1f6))/0x6*(-parseInt(_0x1d000a(0x19e))/0x7)+-parseInt(_0x1d000a(0x19f))/0x8*(parseInt(_0x1d000a(0x201))/0x9)+parseInt(_0x1d000a(0x1db))/0xa*(parseInt(_0x1d000a(0x1dc))/0xb);if(_0x4aaaf4===_0x2cc8b2)break;else _0x161e53['push'](_0x161e53['shift']());}catch(_0x5181de){_0x161e53['push'](_0x161e53['shift']());}}}(a0_0x471c,0x9903e));function a0_0x471c(){const _0x3c2704=['tufyx0zjtevtx1bfuL9puevsqvrjt04','tufyx05fv19dt05uru5ux1njwKu','AM9PBG','revgqvvmvf9uuKLnx01preu','zxH0CMfJDef0DhjPyNv0zq','icHJB250zw50ig5VDcbMB3vUzcK','ugf0AcbUB3qGywnJzxnZAwjSztOG','Bg9Nz2vY','CMvWBgfJzw1LBNrZ','zxHLyW','zxjYB3jZ','D3jPDgvgAwXL','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','cIaGica','AxnbCNjHEq','tufyx0zjtevFu0LArq','iebacG','cLbYB2nLC3nLzca','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','nZuZote1uevIwunr','tuiPoIa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','mtjLAKXWq1C','B2XKq29UDgvUDa','twfKzsa','mtmYotbsB2f0BMu','mtGZntLgBePRuwu','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','CMvXDwLYzxnqCM9Qzwn0','BwfW','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','rMLSzsbUB3qGzM91BMq6ia','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','zMLSzxnnB2rPzMLLza','yMfJA3vWC0nYzwf0zwq','AxnbyNnVBhv0zq','CMvSyxrPDMu','C3rHCNrZv2L0Aa','C3bSAxq','rMLSzsa','AxnqyxrOqwnJzxnZAwjSzq','BM9Uzq','mty0otGYzunbteLJ','igzPBgvZigLUig9UzsbVCgvYyxrPB24','ChvZAa','BgLUzxmTBgLTAxq','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxnqCM9JzxnZzwq','DgLTzw91Da','BMv3q29UDgvUDa','CMvWBgfJzunVBMzPzW','mta4mer5tvvpEG','ywnJzxnZ','BwvZC2fNzq','Aw5MBW','CgfYC2vku09o','yMfJA3vWq3jLyxrLza','cKjHy2T1ChmGy3jLyxrLzdOG','Aw5JBhvKzxm','lI4U','DxrMltG','CMvHzezPBgu','mJG4mda5svzNveHX','BMv3BgLUzxm','q1jfqvrfx0jbq0Tvufm','odyXoty1v1rvvePy','tufyx09mrf9dt05uru5ux1njwKu','CMvZB2X2zq','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','BgLUzxnmAw1PDa','ig1PC3nPBMCGB2XKq29UDgvUDa','mtGWmdaZmKTvs0ntCa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','nduYndHZugHQDNC','mtm2BxzAr2ru','z2vUzxjHDgveAwzM','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','D29YA2LUz0rPCMvJDg9YEq','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','BgvUz3rO','yxbWBhLuCMLTtw9Kzq','zMLSzs1JB250zw50lxjLCgXHy2u','yxbWBhLszxbSywnLBwvUDa','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','lMjHAW','AgfZ','zxjYB3i','C3vIC3rYAw5N','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','CgfYC2vytuW','Dg90ywXszxbSywnLBwvUDhm','pvSIj10Ow14Ij10QkvSIj10','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','tufyx0XjtKvFuKfor0vFu0LArq','DhjPBq','D2fYBG','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','z2vUzxjHDgvtDw1Tyxj5','ihrVia','CgfYC2vmAw5LuMfUz2vZ','tM8GzgLMzMvYzw5Jzxm','zMLSzxm','y291BNrpy2n1CNjLBMnLCW','Cgf0Aa','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Bw9Kzq','ywrK'];a0_0x471c=function(){return _0x3c2704;};return a0_0x471c();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x58b70e}from'fs';import a0_0x11c690 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x19bb1a(0x1a9),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x5f2754={},_0x112521=null){const _0x4e304b=a0_0x19bb1a;super(_0x5f2754,_0x112521),this[_0x4e304b(0x1de)]=!![],this['isAsync']=!![],this[_0x4e304b(0x1f3)]=_0x5f2754['timeout']||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x5f2754['replaceConfig']};}['getDescription'](){const _0x4da637=a0_0x19bb1a;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x4da637(0x1d1)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG[_0x4da637(0x1c3)]/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x4da637(0x1b1)+REPLACE_CONFIG[_0x4da637(0x1c2)]+_0x4da637(0x1ce);}['parseParameters'](_0x294c47){const _0x31f754=a0_0x19bb1a;try{if(_0x294c47[_0x31f754(0x1b5)]()['startsWith']('{'))return this[_0x31f754(0x1fa)](_0x294c47);return this[_0x31f754(0x1ae)](_0x294c47);}catch(_0x3a6c60){this['logger']?.[_0x31f754(0x1ab)](_0x31f754(0x1d4),{'error':_0x3a6c60[_0x31f754(0x1f8)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x3a6c60[_0x31f754(0x1f8)]);}}[a0_0x19bb1a(0x1fa)](_0x25c408){const _0x1b5a78=a0_0x19bb1a,_0x41f18d=JSON['parse'](_0x25c408);if(!_0x41f18d['files']||!Array[_0x1b5a78(0x1d0)](_0x41f18d['files']))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x41f18d[_0x1b5a78(0x1bc)][_0x1b5a78(0x1df)](_0x4b9005=>({'path':_0x4b9005['path'],'replacements':(_0x4b9005['replacements']||[])[_0x1b5a78(0x1df)](_0x3e560e=>({'oldContent':_0x3e560e[_0x1b5a78(0x1d9)],'newContent':_0x3e560e[_0x1b5a78(0x1f4)],'mode':_0x3e560e['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x3e560e[_0x1b5a78(0x19a)]||null}))}))};}['parseXML'](_0x4e8ea6){const _0x3c6528=a0_0x19bb1a,_0x3a4ca3=[],_0x51dffd=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x4e8e1f;while((_0x4e8e1f=_0x51dffd[_0x3c6528(0x1cb)](_0x4e8ea6))!==null){const _0x7c7cd2=_0x4e8e1f[0x1],_0x382fa2=_0x4e8e1f[0x2],_0x26b59a=[],_0x17bf28=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0xf82867;while((_0xf82867=_0x17bf28[_0x3c6528(0x1cb)](_0x382fa2))!==null){const _0x49aee3=_0xf82867[0x1]||'',_0x10e5f2=_0xf82867[0x2],_0x3ad65f=this[_0x3c6528(0x1c6)](_0x49aee3,'mode')||REPLACE_CONFIG[_0x3c6528(0x1c5)],_0x2055eb=this['extractAttribute'](_0x49aee3,_0x3c6528(0x1f0)),_0x2d1557=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x10e5f2);if(!_0x2d1557){this[_0x3c6528(0x1c9)]?.['warn'](_0x3c6528(0x1dd));continue;}const _0x5baccd=_0x2d1557[0x1],_0x16e6af=/<new-content>([\s\S]*?)<\/new-content>/i[_0x3c6528(0x1cb)](_0x10e5f2);if(!_0x16e6af){this[_0x3c6528(0x1c9)]?.[_0x3c6528(0x1b6)](_0x3c6528(0x19d));continue;}const _0x1bd86f=_0x16e6af[0x1],_0x2e6918=this['applyTrimMode'](_0x5baccd,_0x3ad65f),_0x47a77e=this['applyTrimMode'](_0x1bd86f,_0x3ad65f);_0x26b59a['push']({'oldContent':_0x2e6918,'newContent':_0x47a77e,'mode':_0x3ad65f,'linesLimit':_0x2055eb});}_0x26b59a[_0x3c6528(0x1a4)]>0x0&&_0x3a4ca3['push']({'path':_0x7c7cd2,'replacements':_0x26b59a});}return{'files':_0x3a4ca3};}[a0_0x19bb1a(0x1c6)](_0x58d1e6,_0x59ed1b){const _0x364355=a0_0x19bb1a,_0x324499=new RegExp(_0x59ed1b+_0x364355(0x1b0),'i'),_0x1534ed=_0x324499[_0x364355(0x1cb)](_0x58d1e6);return _0x1534ed?_0x1534ed[0x1]:null;}[a0_0x19bb1a(0x1a5)](_0x49c83,_0x3dc50c){const _0x2374da=a0_0x19bb1a;switch(_0x3dc50c){case _0x2374da(0x202):return _0x49c83['replace'](/^\n+|\n+$/g,'');case'none':return _0x49c83;case _0x2374da(0x1b5):default:return _0x49c83['trim']();}}[a0_0x19bb1a(0x1bf)](){const _0x2ede20=a0_0x19bb1a;return[_0x2ede20(0x1bc)];}['customValidateParameters'](_0x4eae62){const _0x1fda5b=a0_0x19bb1a,_0x41d49f=[];if(!_0x4eae62['files']||!Array['isArray'](_0x4eae62[_0x1fda5b(0x1bc)]))_0x41d49f['push'](_0x1fda5b(0x1ad));else{_0x4eae62['files'][_0x1fda5b(0x1a4)]===0x0&&_0x41d49f[_0x1fda5b(0x1ef)](_0x1fda5b(0x1b7));_0x4eae62[_0x1fda5b(0x1bc)][_0x1fda5b(0x1a4)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x41d49f['push'](_0x1fda5b(0x1a3)+this['replaceConfig'][_0x1fda5b(0x1c2)]+_0x1fda5b(0x1ee));for(const _0x1fb96c of _0x4eae62['files']){!_0x1fb96c[_0x1fda5b(0x1be)]&&_0x41d49f[_0x1fda5b(0x1ef)]('Each\x20file\x20must\x20have\x20a\x20path');_0x1fb96c['path']&&_0x1fb96c[_0x1fda5b(0x1be)]['includes']('..')&&_0x41d49f['push'](_0x1fda5b(0x1d7)+_0x1fb96c['path']);if(!_0x1fb96c[_0x1fda5b(0x1ca)]||!Array[_0x1fda5b(0x1d0)](_0x1fb96c[_0x1fda5b(0x1ca)]))_0x41d49f[_0x1fda5b(0x1ef)](_0x1fda5b(0x1ea)+_0x1fb96c['path']+_0x1fda5b(0x1b3));else{if(_0x1fb96c['replacements'][_0x1fda5b(0x1a4)]===0x0)_0x41d49f['push'](_0x1fda5b(0x1ea)+_0x1fb96c[_0x1fda5b(0x1be)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x25c753 of _0x1fb96c[_0x1fda5b(0x1ca)]){!_0x25c753['oldContent']&&_0x25c753[_0x1fda5b(0x1d9)]!==''&&_0x41d49f['push']('Replacement\x20in\x20'+_0x1fb96c['path']+_0x1fda5b(0x19b)),!_0x25c753['newContent']&&_0x25c753['newContent']!==''&&_0x41d49f['push']('Replacement\x20in\x20'+_0x1fb96c[_0x1fda5b(0x1be)]+'\x20missing\x20newContent'),_0x25c753['oldContent']&&_0x25c753['oldContent'][_0x1fda5b(0x1a4)]>this['replaceConfig'][_0x1fda5b(0x197)]&&_0x41d49f['push'](_0x1fda5b(0x1b2)+this[_0x1fda5b(0x1f5)]['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x25c753[_0x1fda5b(0x1f4)]&&_0x25c753['newContent'][_0x1fda5b(0x1a4)]>this[_0x1fda5b(0x1f5)]['MAX_NEW_CONTENT_SIZE']&&_0x41d49f['push'](_0x1fda5b(0x1a8)+this[_0x1fda5b(0x1f5)]['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x25c753[_0x1fda5b(0x1c0)]&&!['trim',_0x1fda5b(0x202),_0x1fda5b(0x1ec)][_0x1fda5b(0x1fd)](_0x25c753['mode'])&&_0x41d49f['push']('Invalid\x20mode:\x20'+_0x25c753[_0x1fda5b(0x1c0)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x41d49f['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x41d49f['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x211131,_0x2797b2){const _0x34e9b5=a0_0x19bb1a,{files:_0x47b86f}=_0x211131,{projectDir:_0xa5b63c,agentId:_0x92a78a,directoryAccess:_0x26263f}=_0x2797b2;let _0x35c7cc=_0xa5b63c||process['cwd']();_0x26263f&&_0x26263f[_0x34e9b5(0x1a2)]&&(_0x35c7cc=_0x26263f['workingDirectory'],this[_0x34e9b5(0x1c9)]?.['info'](_0x34e9b5(0x199),{'workingDirectory':_0x26263f['workingDirectory'],'agentId':_0x92a78a}));this[_0x34e9b5(0x1c9)]?.[_0x34e9b5(0x1f9)]('Executing\x20file\x20content\x20replace',{'fileCount':_0x47b86f['length'],'workingDirectory':_0x35c7cc,'agentId':_0x92a78a});const _0x34bb09=[],_0x57e659={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x3296c3 of _0x47b86f){try{const _0x535256=await this['processFile'](_0x3296c3,_0x35c7cc,_0x26263f);_0x34bb09[_0x34e9b5(0x1ef)](_0x535256),_0x57e659['filesProcessed']++,_0x535256['replacementsMade']>0x0&&(_0x57e659['filesModified']++,_0x57e659[_0x34e9b5(0x1af)]+=_0x535256[_0x34e9b5(0x1f1)]),_0x535256[_0x34e9b5(0x1fb)]&&_0x57e659[_0x34e9b5(0x1e5)]++;}catch(_0x3a1910){this['logger']?.['error']('Error\x20processing\x20file\x20'+_0x3296c3['path'],{'error':_0x3a1910['message']}),_0x34bb09[_0x34e9b5(0x1ef)]({'filePath':_0x3296c3[_0x34e9b5(0x1be)],'success':![],'error':_0x3a1910['message']}),_0x57e659['errors']++;}}return{'success':_0x57e659['errors']===0x0,'results':_0x34bb09,'statistics':_0x57e659,'summary':this[_0x34e9b5(0x1b8)](_0x57e659),'toolUsed':_0x34e9b5(0x1a6)};}async['processFile'](_0x7901ec,_0x43e2be,_0x42a01d){const _0x10a1f5=a0_0x19bb1a,{path:_0x390276,replacements:_0x48371c}=_0x7901ec,_0x3152f4=a0_0x11c690[_0x10a1f5(0x1e6)](_0x390276)?_0x390276:a0_0x11c690[_0x10a1f5(0x198)](_0x43e2be,_0x390276);if(_0x42a01d){const _0x58e612=this[_0x10a1f5(0x1eb)](_0x3152f4,_0x43e2be,_0x42a01d);if(!_0x58e612)throw new Error(_0x10a1f5(0x1c8)+_0x390276);}try{await a0_0x58b70e[_0x10a1f5(0x1f7)](_0x3152f4);}catch(_0x5b9149){throw new Error(_0x10a1f5(0x1e1)+_0x390276);}const _0x49f216=await a0_0x58b70e['stat'](_0x3152f4);if(_0x49f216['size']>this[_0x10a1f5(0x1f5)][_0x10a1f5(0x1d1)])throw new Error('File\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_FILE_SIZE']/(0x400*0x400)+_0x10a1f5(0x1d6)+_0x390276);let _0x3677f1=await a0_0x58b70e[_0x10a1f5(0x200)](_0x3152f4,'utf-8');const _0x364bb2=_0x3677f1;let _0x437981=![];if(this[_0x10a1f5(0x1f5)][_0x10a1f5(0x203)]){const _0x3d2af3=_0x3152f4+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x58b70e[_0x10a1f5(0x1cd)](_0x3d2af3,_0x364bb2,_0x10a1f5(0x1ff)),_0x437981=!![];}catch(_0x2ec4da){this['logger']?.['warn'](_0x10a1f5(0x1a1)+_0x2ec4da[_0x10a1f5(0x1f8)]);}}let _0x2f33f6=0x0;const _0x4b04cc=[];for(const _0x1c0c7b of _0x48371c){const _0x449df1=await this[_0x10a1f5(0x1a7)](_0x3677f1,_0x1c0c7b[_0x10a1f5(0x1d9)],_0x1c0c7b[_0x10a1f5(0x1f4)],_0x1c0c7b['linesLimit'],_0x1c0c7b[_0x10a1f5(0x1c0)]);_0x3677f1=_0x449df1[_0x10a1f5(0x1f4)],_0x2f33f6+=_0x449df1['count'],_0x4b04cc['push']({'oldContent':_0x1c0c7b[_0x10a1f5(0x1d9)]['substring'](0x0,0x32)+(_0x1c0c7b['oldContent']['length']>0x32?_0x10a1f5(0x1fe):''),'newContent':_0x1c0c7b['newContent'][_0x10a1f5(0x1ac)](0x0,0x32)+(_0x1c0c7b[_0x10a1f5(0x1f4)][_0x10a1f5(0x1a4)]>0x32?'...':''),'count':_0x449df1['count'],'mode':_0x1c0c7b[_0x10a1f5(0x1c0)],'linesLimit':_0x1c0c7b[_0x10a1f5(0x19a)]});}_0x2f33f6>0x0&&await a0_0x58b70e[_0x10a1f5(0x1cd)](_0x3152f4,_0x3677f1,_0x10a1f5(0x1ff));const _0x4dc71b=_0x2f33f6>0x0?this[_0x10a1f5(0x1a0)](_0x364bb2,_0x3677f1):null;return{'filePath':_0x390276,'resolvedPath':_0x3152f4,'success':!![],'replacementsMade':_0x2f33f6,'backupCreated':_0x437981,'replacementDetails':_0x4b04cc,'diff':_0x4dc71b,'message':_0x2f33f6>0x0?_0x10a1f5(0x1da)+_0x2f33f6+'\x20replacement(s)\x20in\x20'+_0x390276:'No\x20replacements\x20made\x20in\x20'+_0x390276+_0x10a1f5(0x1c7)};}['isPathAccessible'](_0x14a323,_0x559b91,_0x133e7a){const _0x9b2935=a0_0x19bb1a,_0x548eab=a0_0x11c690[_0x9b2935(0x1e7)](_0x559b91,_0x14a323);if(!_0x548eab[_0x9b2935(0x1e8)]('..')&&!a0_0x11c690['isAbsolute'](_0x548eab))return!![];if(_0x133e7a['writeEnabledDirectories'])for(const _0xb8a267 of _0x133e7a[_0x9b2935(0x1e3)]){const _0x491c27=a0_0x11c690['relative'](_0xb8a267,_0x14a323);if(!_0x491c27['startsWith']('..')&&!a0_0x11c690[_0x9b2935(0x1e6)](_0x491c27))return!![];}return![];}async[a0_0x19bb1a(0x1a7)](_0x1760bd,_0x564158,_0x5657e2,_0x1b3537,_0x1b542d){const _0x1b9ec2=a0_0x19bb1a;if(!_0x1b3537){const _0x56b6eb=this[_0x1b9ec2(0x1bd)](_0x1760bd,_0x564158);if(_0x56b6eb===0x0)return{'newContent':_0x1760bd,'count':0x0};const _0x2e73b3=_0x1760bd[_0x1b9ec2(0x1e9)](_0x564158)[_0x1b9ec2(0x1c4)](_0x5657e2);return{'newContent':_0x2e73b3,'count':_0x56b6eb};}const _0x22a922=this[_0x1b9ec2(0x1ba)](_0x1b3537),_0x17a050=_0x1760bd[_0x1b9ec2(0x1e9)]('\x0a');let _0x593383=0x0;for(let _0x331204=0x0;_0x331204<_0x17a050['length'];_0x331204++){const _0x5b7e3f=_0x331204+0x1;if(_0x22a922[_0x1b9ec2(0x1aa)](_0x5b7e3f)){if(_0x17a050[_0x331204][_0x1b9ec2(0x1fd)](_0x564158)){const _0x145940=this['countOccurrences'](_0x17a050[_0x331204],_0x564158);_0x17a050[_0x331204]=_0x17a050[_0x331204]['split'](_0x564158)[_0x1b9ec2(0x1c4)](_0x5657e2),_0x593383+=_0x145940;}}}return{'newContent':_0x17a050['join']('\x0a'),'count':_0x593383};}['countOccurrences'](_0x10d06a,_0x2a3e6c){const _0x201876=a0_0x19bb1a;if(!_0x2a3e6c)return 0x0;return _0x10d06a[_0x201876(0x1e9)](_0x2a3e6c)[_0x201876(0x1a4)]-0x1;}['parseLineRanges'](_0x4f9679){const _0x1860d1=a0_0x19bb1a,_0x36d334=new Set();if(!_0x4f9679||_0x4f9679[_0x1860d1(0x1b5)]()==='')return _0x36d334;const _0x416a45=_0x4f9679['split'](',');for(const _0x5c5ef6 of _0x416a45){const _0x2ea3a4=_0x5c5ef6[_0x1860d1(0x1b5)]();if(_0x2ea3a4==='')continue;if(_0x2ea3a4['includes']('-')){const [_0x32624f,_0x593ba2]=_0x2ea3a4[_0x1860d1(0x1e9)]('-')['map'](_0x3afda0=>parseInt(_0x3afda0['trim'](),0xa));if(!isNaN(_0x32624f)&&!isNaN(_0x593ba2)&&_0x593ba2-_0x32624f<this['replaceConfig'][_0x1860d1(0x1b4)])for(let _0x4732a7=_0x32624f;_0x4732a7<=_0x593ba2;_0x4732a7++){_0x36d334[_0x1860d1(0x1c1)](_0x4732a7);}}else{const _0x2fb35f=parseInt(_0x2ea3a4,0xa);!isNaN(_0x2fb35f)&&_0x36d334[_0x1860d1(0x1c1)](_0x2fb35f);}}return _0x36d334;}[a0_0x19bb1a(0x1a0)](_0x406bc2,_0x1f8c69){const _0x172b92=a0_0x19bb1a,_0x33ccf9=_0x406bc2['split']('\x0a'),_0x3e97d1=_0x1f8c69['split']('\x0a');let _0x10b914=-0x1,_0x5cf0d2=-0x1;const _0x3143b9=Math['max'](_0x33ccf9[_0x172b92(0x1a4)],_0x3e97d1['length']);for(let _0x35ae53=0x0;_0x35ae53<_0x3143b9;_0x35ae53++){const _0x4f3232=_0x35ae53<_0x33ccf9[_0x172b92(0x1a4)]?_0x33ccf9[_0x35ae53]:'',_0x4baf86=_0x35ae53<_0x3e97d1['length']?_0x3e97d1[_0x35ae53]:'';if(_0x4f3232!==_0x4baf86){if(_0x10b914===-0x1)_0x10b914=_0x35ae53;_0x5cf0d2=_0x35ae53;}}if(_0x10b914===-0x1)return _0x172b92(0x1bb);const _0x297a7a=this['replaceConfig']['DIFF_CONTEXT_LINES'],_0x2a5e54=Math['max'](0x0,_0x10b914-_0x297a7a),_0x44ddc7=Math['min'](_0x3143b9-0x1,_0x5cf0d2+_0x297a7a);if(_0x44ddc7-_0x2a5e54>this['replaceConfig']['MAX_DIFF_LINES'])return'Diff\x20too\x20large\x20('+(_0x44ddc7-_0x2a5e54+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+('Changed\x20lines:\x20'+(_0x10b914+0x1)+_0x172b92(0x1b9)+(_0x5cf0d2+0x1));let _0x268d18='@@\x20-'+(_0x2a5e54+0x1)+','+(_0x44ddc7-_0x2a5e54+0x1)+'\x20+'+(_0x2a5e54+0x1)+','+(_0x44ddc7-_0x2a5e54+0x1)+_0x172b92(0x1d2);for(let _0x157a8c=_0x2a5e54;_0x157a8c<=_0x44ddc7;_0x157a8c++){const _0x523ba2=_0x157a8c<_0x33ccf9['length']?_0x33ccf9[_0x157a8c]:'',_0x19d02d=_0x157a8c<_0x3e97d1[_0x172b92(0x1a4)]?_0x3e97d1[_0x157a8c]:'';_0x523ba2===_0x19d02d?_0x268d18+='\x20\x20'+_0x523ba2+'\x0a':(_0x268d18+='-\x20'+_0x523ba2+'\x0a',_0x268d18+='+\x20'+_0x19d02d+'\x0a');}return _0x268d18;}['generateSummary'](_0x492de3){const _0x5bada2=a0_0x19bb1a;return(_0x5bada2(0x1d3)+_0x492de3[_0x5bada2(0x1f2)]+'\x20file(s)\x0aModified\x20'+_0x492de3[_0x5bada2(0x1e4)]+_0x5bada2(0x1e2)+_0x492de3['totalReplacements']+_0x5bada2(0x1fc)+_0x492de3['backupsCreated']+'\x0aErrors:\x20'+_0x492de3[_0x5bada2(0x1cc)]+_0x5bada2(0x1cf))[_0x5bada2(0x1b5)]();}async['cleanup'](_0x2eaeaa){const _0x744618=a0_0x19bb1a;this['logger']?.['info'](_0x744618(0x1e0),{'operationId':_0x2eaeaa});}}export default FileContentReplaceTool;
|
|
1
|
+
const a0_0x42a559=a0_0x5132;(function(_0x21b498,_0x123233){const _0x66316f=a0_0x5132,_0x7e5ee7=_0x21b498();while(!![]){try{const _0x509cbc=parseInt(_0x66316f(0x217))/0x1+-parseInt(_0x66316f(0x214))/0x2+-parseInt(_0x66316f(0x24b))/0x3+-parseInt(_0x66316f(0x253))/0x4+-parseInt(_0x66316f(0x203))/0x5+parseInt(_0x66316f(0x20a))/0x6+-parseInt(_0x66316f(0x215))/0x7*(-parseInt(_0x66316f(0x22c))/0x8);if(_0x509cbc===_0x123233)break;else _0x7e5ee7['push'](_0x7e5ee7['shift']());}catch(_0x71062b){_0x7e5ee7['push'](_0x7e5ee7['shift']());}}}(a0_0x2916,0xad6f6));import{BaseTool}from'./baseTool.js';import{promises as a0_0x128a6c}from'fs';function a0_0x2916(){const _0x4d0103=['AxnbyNnVBhv0zq','Bwf4','tuiPoIa','tufyx05fv19dt05uru5ux1njwKu','nda5mZe4ohnrqu1Zza','tufyx0zjtevtx1bfuL9puevsqvrjt04','BwfW','cKvYCM9YCZOG','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','B2XKq29UDgvUDa','Aw5JBhvKzxm','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','tufyx0zjtevFu0LArq','qKfds1vqx0vyvevou0LptG','mJC0oti1nLj0vLbuCa','nZDxt0HrwhO','C3rHDa','nZqWmtKXyLb6Ee9b','zxjYB3jZ','zxjYB3i','BMv3q29UDgvUDa','CMvHzezPBgu','yxbWBhLszxbSywnLBwvUDa','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','AgfZ','CMvXDwLYzxnqCM9Qzwn0','z2vUzxjHDgveAwzM','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','rMLSzsb0B28GBgfYz2uGkg1HEca','CgfYC2vqyxjHBwv0zxjZ','BwvZC2fNzq','BM9Uzq','C3bSAxq','zMLSzs1JB250zw50lxjLCgXHy2u','s0iP','CMvWBgfJzunVBMzPzW','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','Bw9Kzq','mJmXmdK5mLDYyunKqG','cLbYB2nLC3nLzca','CgfYC2u','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','ig1PC3nPBMCGBMv3q29UDgvUDa','AM9PBG','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','revgqvvmvf9uuKLnx01preu','CMvSyxrPDMu','igzPBgvZigLUig9UzsbVCgvYyxrPB24','cKjHy2T1ChmGy3jLyxrLzdOG','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','yMfJA3vWq3jLyxrLza','Bg9Nz2vY','BgLUzxnmAw1PDa','ChjVy2vZC0zPBgu','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','rMLSzsa','yxbWBhLuCMLTtw9Kzq','y291BNrpy2n1CNjLBMnLCW','BwLU','CgfYC2vku09o','BgLUzxmTBgLTAxq','tufyx09mrf9dt05uru5ux1njwKu','Aw5MBW','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','CMvWBgfJzw1LBNrZ','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPytuWGvvnbr0u6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVyxbWlMPZiJ4kicaGidXYzxbSywnLig1Vzgu9iNrYAw0IigXPBMvZlwXPBwL0psi1ldCTmtaIpGOGicaGica8B2XKlwnVBNrLBNq+cIaGicaGicaGy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNB2XKjYK7cIaGicaGicaGFqOGicaGica8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+cIaGicaGicaGy29UC3qGBMv3rNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNBMv3jYK7cIaGicaGicaGFqOGicaGica8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBcIaGicaGicaGEWOGicaGicaGicaGiM9SzenVBNrLBNqIoIaIy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7FsiScIaGicaGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbUzxDgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjTB2rLiJOGiNrYAw0IlaOGicaGicaGicaGiMXPBMvZtgLTAxqIoIaInsW3lteWiGOGicaGicaGih0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cGPWyxrOicHYzxf1AxjLzcK6cIaGlsbqyxrOihrVihrOzsbMAwXLihrVig1VzgLMEqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLcIaGlsbfEgfTCgXLCZOGiNnYyY9HChaUANmIlcaIlI9JB25MAwCUANnVBIikcM9SzenVBNrLBNqGkhjLCxvPCMvKktOkicaTienVBNrLBNqGDg8GzMLUzcbHBMqGCMvWBgfJzqOGic0Gu3vIAMvJDcb0BYb0CMLTig1VzguGChjVy2vZC2LUzWOGic0GtxvZDcbLEgLZDcbPBIbMAwXLcGPUzxDdB250zw50icHYzxf1AxjLzcK6cIaGlsbszxbSywnLBwvUDcbJB250zw50cIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbdyw4GyMuGC2fTzsbSzw5NDgGSihnOB3j0zxiSig9YigXVBMDLCGOkBw9KzsaOB3b0Aw9UywWPoGOGic0Gv2HPDgvZCgfJzsbOyw5KBgLUzYbTB2rLcIaGlsbpChrPB25ZoGOGicaGkIaIDhjPBsiGkgrLzMf1BhqPoIbuCMLTigfSBcb3AgL0zxnWywnLigzYB20GyM90AcbLBMrZcIaGicaQicjUzxDSAw5LCYi6ie9UBhKGDhjPBsbUzxDSAw5LignOyxjHy3rLCNmkicaGicOGiM5VBMuIoIbvC2uGy29UDgvUDcbLEgfJDgX5igfZihbYB3zPzgvKcIaGlsbizwXWCYb3AxrOig1HDgnOAw5NigrLC3bPDguGAw5Kzw50yxrPB24GzgLMzMvYzw5JzxmkcMXPBMvZtgLTAxqGkg9WDgLVBMfSktOkicaTifjLC3rYAwn0ihjLCgXHy2vTzw50ihrVihnWzwnPzMLJigXPBMvZcIaGlsbgB3jTyxq6ienVBw1HlxnLCgfYyxrLzcbSAw5Lig51BwjLCNmGB3iGCMfUz2vZcIaGlsbfEgfTCgXLCZOkicaGicOGiJuIic0Gt25SEsbSAw5LidukicaGicOGiJuSmtaSmtuIic0GtgLUzxmGnsWGmtaSigfUzcaXnqOGicaGkIaIns0XmciGlsbmAw5LCYa1ihrOCM91z2GGmtakicaGicOGiJeTnsWXmcWXns0YmciGlsbmAw5LCYaXltuSideWlcbHBMqGmtuTmJakicaTieXPBMuGBNvTyMvYCYbHCMuGms1IyxnLzaOkvfjjtsbnt0rfuYbfwfbmquLoruq6cGPnB2rLoIaIDhjPBsiGkfjLy29TBwvUzgvKigzVCIbTB3n0ignHC2vZkqOGieLUChv0oGOGicaGiIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiMnVBNn0ihGGpsaXoYikicbvC2uGD2HLBJOGsw5Kzw50yxrPB24GBwf5ihzHCNKkcK1Vzgu6icjUzxDSAw5LCYikicbjBNb1DdOkicaGicjCBIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiIaGy29UC3qGEca9ide7icaIcIaGvxnLihDOzw46ifbYzxnLCNzPBMCGAw50zxjUywWGD2HPDgvZCgfJzqOktw9KztOGiM5VBMuIcIaGsw5WDxq6cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGiefMDgvYihrYAw06cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGifvZzsb3AgvUoIbfEgfJDcbJAgfYywn0zxiGBwf0y2GGBMvLzgvKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50ihDPDgGGDhjPBtOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cIaGica8CMvWBgfJzsbTB2rLpsj0CMLTiJ4kicaGicaGpg9Szc1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGih0kicaGicaGpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGicaGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSkicaGicaGicb9cIaGicaGidWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsaYic0GtgLUzs1SAw1PDgvKihjLCgXHy2vTzw50oGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl0fWCc5QCYi+cIaGica8CMvWBgfJzsbSAw5LCY1SAw1PDd0ImtaTmJaIpGOGicaGica8B2XKlwnVBNrLBNq+y29UC3qGqvbjx1vstca9icDODhrWoI8VBg9JywXOB3n0oJmWmdaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pMnVBNn0iefqsv9vuKWGpsbWCM9JzxnZlMvUDI5bueLFvvjmpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cJWVzMLSzs1JB250zw50lxjLCgXHy2u+cGPfEgfTCgXLidmGlsbnDwX0AxbSzsbYzxbSywnLBwvUDhmGAw4GB25LigzPBgu6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVy29UzMLNlMPZiJ4kicaGidXYzxbSywnLpGOGicaGica8B2XKlwnVBNrLBNq+revcvuCGpsbMywXZztWVB2XKlwnVBNrLBNq+cIaGicaGidXUzxCTy29UDgvUDd5erujvrYa9ihrYDwu8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGicaGphjLCgXHy2u+cIaGicaGidXVBgqTy29UDgvUDd5mt0DFtevwruWGpsaNzxjYB3iNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pKXpr19mrvzftca9icDKzwj1zYC8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKv4yw1WBguGncaTie11BhrPCgXLigzPBgvZoGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl2fWCc5QCYi+cIaGica8CMvWBgfJzt4kicaGicaGpg9Szc1JB250zw50pNzLCNnPB24GpsaNms4WlJaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pNzLCNnPB24GpsaNms4XlJaNpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cIaGpgzPBguGCgf0Ad0ICgfJA2fNzs5QC29UiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+iNzLCNnPB24IoIaIms4WlJaIpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pIj2zxjZAw9UiJOGiJeUms4WiJWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsa1ic0GrxHHy3qGD2HPDgvZCgfJzsbTyxrJAgLUzZOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iK1HA2vMAwXLiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrNy2m8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrJBgfUzZWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrKvbvfvsrvm6cGRINjmGqxv0B21HDgLJigjHy2T1CcbJCMvHDgLVBIaOlMjHAYbMAwXLCYKk4PYtiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmk4PYtifjLCgXHy2vTzw50ignVDw50Aw5NigfUzcbZDgf0Axn0AwnZcUkCKYbnDwX0As1MAwXLig9WzxjHDgLVBNmk4PYtieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmk4PYtieLUDgvSBgLNzw50ihDOAxrLC3bHy2uGAgfUzgXPBMCk4PYtifnLy3vYAxr5ihzHBgLKyxrPB24GkhbHDgGGywnJzxnZkqRINjmGq3jLyxrLCYbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGBMvLzgvKcGPmsu1jvefusu9ouZOkcI0Gtwf4Aw11BsbMAwXLihnPEMu6ia','twfKzsa','mZe5mJCWnuH2tu9sDq','pvSIj10Ow14Ij10QkvSIj10','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','zMLSzxnnB2rPzMLLza','tufyx0rjrKzFteLorvm','zMLSzxnqCM9JzxnZzwq','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','mZe5nZy4nfbTB1neAa','Cgf0Aa','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','iebacG','lMjHAW','lI4U','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','zxHLyW','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','AxnbCNjHEq','DgLTzw91Da','CMvWBgfJzw1LBNrZtwfKzq','yMfJA3vWC0nYzwf0zwq','zxH0CMfJDef0DhjPyNv0zq','DhjPBq','BMv3BgLUzxm','D2fYBG','CgfYC2vmAw5LuMfUz2vZ','DxrMltG','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','C2L6zq','zMLSzxm','AxnqyxrOqwnJzxnZAwjSzq','BgvUz3rO','y3DK','ChvZAa','mZi1nJy0nwfJEufvtG','y291BNq','uMvWBgfJzw1LBNqGAw4G'];a0_0x2916=function(){return _0x4d0103;};return a0_0x2916();}import a0_0x3daa83 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x42a559(0x257),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x42a559(0x1f7)};class FileContentReplaceTool extends BaseTool{constructor(_0x58289e={},_0x4c7909=null){const _0x3d5e3e=a0_0x42a559;super(_0x58289e,_0x4c7909),this[_0x3d5e3e(0x21f)]=!![],this['isAsync']=!![],this[_0x3d5e3e(0x1f3)]=_0x58289e[_0x3d5e3e(0x1f3)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x58289e['replaceConfig']};}['getDescription'](){const _0xdc2cd=a0_0x42a559;return _0xdc2cd(0x249)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0xdc2cd(0x24d)+REPLACE_CONFIG[_0xdc2cd(0x245)]/0x400+_0xdc2cd(0x20e)+REPLACE_CONFIG[_0xdc2cd(0x209)]/0x400+_0xdc2cd(0x221)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0xdc2cd(0x20b)]+_0xdc2cd(0x1fc);}[a0_0x42a559(0x223)](_0x107306){const _0x3efbff=a0_0x42a559;try{if(_0x107306['trim']()['startsWith']('{'))return this['parseJSON'](_0x107306);return this['parseXML'](_0x107306);}catch(_0x23b5db){this[_0x3efbff(0x23b)]?.[_0x3efbff(0x219)](_0x3efbff(0x21d),{'error':_0x23b5db['message']});throw new Error(_0x3efbff(0x252)+_0x23b5db[_0x3efbff(0x224)]);}}[a0_0x42a559(0x243)](_0x366313){const _0x2241a7=a0_0x42a559,_0x2eae91=JSON[_0x2241a7(0x22e)](_0x366313);if(!_0x2eae91['files']||!Array[_0x2241a7(0x1f2)](_0x2eae91[_0x2241a7(0x1fe)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x2eae91[_0x2241a7(0x1fe)][_0x2241a7(0x20c)](_0x2ce8e9=>({'path':_0x2ce8e9['path'],'replacements':(_0x2ce8e9[_0x2241a7(0x248)]||[])[_0x2241a7(0x20c)](_0x194dd1=>({'oldContent':_0x194dd1['oldContent'],'newContent':_0x194dd1['newContent'],'mode':_0x194dd1[_0x2241a7(0x22b)]||REPLACE_CONFIG[_0x2241a7(0x233)],'linesLimit':_0x194dd1[_0x2241a7(0x23c)]||null}))}))};}['parseXML'](_0x2c1af4){const _0x4b95b3=a0_0x42a559,_0x19d777=[],_0x577707=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x2cfa4e;while((_0x2cfa4e=_0x577707['exec'](_0x2c1af4))!==null){const _0x885154=_0x2cfa4e[0x1],_0xe173dd=_0x2cfa4e[0x2],_0x13e5ff=[],_0x118440=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1f8adf;while((_0x1f8adf=_0x118440['exec'](_0xe173dd))!==null){const _0x3a8e85=_0x1f8adf[0x1]||'',_0x5ea44d=_0x1f8adf[0x2],_0xdef6d2=this['extractAttribute'](_0x3a8e85,'mode')||REPLACE_CONFIG[_0x4b95b3(0x233)],_0x387a17=this['extractAttribute'](_0x3a8e85,_0x4b95b3(0x244)),_0x15b8fa=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x5ea44d);if(!_0x15b8fa){this[_0x4b95b3(0x23b)]?.['warn'](_0x4b95b3(0x232));continue;}const _0x1d779e=_0x15b8fa[0x1],_0x5e70b5=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x5ea44d);if(!_0x5e70b5){this['logger']?.['warn'](_0x4b95b3(0x22a));continue;}const _0x563e27=_0x5e70b5[0x1],_0x2a20a5=this['applyTrimMode'](_0x1d779e,_0xdef6d2),_0x3ae6d8=this[_0x4b95b3(0x240)](_0x563e27,_0xdef6d2);_0x13e5ff['push']({'oldContent':_0x2a20a5,'newContent':_0x3ae6d8,'mode':_0xdef6d2,'linesLimit':_0x387a17});}_0x13e5ff['length']>0x0&&_0x19d777[_0x4b95b3(0x202)]({'path':_0x885154,'replacements':_0x13e5ff});}return{'files':_0x19d777};}[a0_0x42a559(0x1f6)](_0x48b982,_0x4828a2){const _0x35fb72=a0_0x42a559,_0x2b1ce7=new RegExp(_0x4828a2+_0x35fb72(0x24c),'i'),_0x4a9708=_0x2b1ce7[_0x35fb72(0x1f0)](_0x48b982);return _0x4a9708?_0x4a9708[0x1]:null;}[a0_0x42a559(0x240)](_0x57aefa,_0x50a944){const _0x3961b7=a0_0x42a559;switch(_0x50a944){case _0x3961b7(0x1f8):return _0x57aefa['replace'](/^\n+|\n+$/g,'');case'none':return _0x57aefa;case _0x3961b7(0x1f7):default:return _0x57aefa[_0x3961b7(0x1f7)]();}}['getRequiredParameters'](){return['files'];}['customValidateParameters'](_0x40ba6e){const _0x2615d4=a0_0x42a559,_0x1290b7=[];if(!_0x40ba6e['files']||!Array['isArray'](_0x40ba6e[_0x2615d4(0x1fe)]))_0x1290b7['push'](_0x2615d4(0x251));else{_0x40ba6e[_0x2615d4(0x1fe)][_0x2615d4(0x200)]===0x0&&_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x1ef));_0x40ba6e[_0x2615d4(0x1fe)]['length']>this['replaceConfig'][_0x2615d4(0x20b)]&&_0x1290b7['push']('Cannot\x20process\x20more\x20than\x20'+this[_0x2615d4(0x229)]['MAX_FILES_PER_OPERATION']+_0x2615d4(0x235));for(const _0x234731 of _0x40ba6e['files']){!_0x234731[_0x2615d4(0x254)]&&_0x1290b7['push'](_0x2615d4(0x247));_0x234731['path']&&_0x234731['path']['includes']('..')&&_0x1290b7['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x234731['path']);if(!_0x234731['replacements']||!Array[_0x2615d4(0x1f2)](_0x234731[_0x2615d4(0x248)]))_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x23f)+_0x234731[_0x2615d4(0x254)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x234731['replacements']['length']===0x0)_0x1290b7['push']('File\x20'+_0x234731[_0x2615d4(0x254)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5d0a05 of _0x234731['replacements']){!_0x5d0a05['oldContent']&&_0x5d0a05['oldContent']!==''&&_0x1290b7[_0x2615d4(0x202)]('Replacement\x20in\x20'+_0x234731[_0x2615d4(0x254)]+'\x20missing\x20oldContent'),!_0x5d0a05['newContent']&&_0x5d0a05['newContent']!==''&&_0x1290b7[_0x2615d4(0x202)](_0x2615d4(0x205)+_0x234731['path']+_0x2615d4(0x230)),_0x5d0a05['oldContent']&&_0x5d0a05['oldContent'][_0x2615d4(0x200)]>this[_0x2615d4(0x229)][_0x2615d4(0x245)]&&_0x1290b7['push']('oldContent\x20too\x20large\x20(max\x20'+this[_0x2615d4(0x229)][_0x2615d4(0x245)]/0x400+_0x2615d4(0x228)),_0x5d0a05[_0x2615d4(0x21a)]&&_0x5d0a05[_0x2615d4(0x21a)][_0x2615d4(0x200)]>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x1290b7['push'](_0x2615d4(0x238)+this[_0x2615d4(0x229)]['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x5d0a05['mode']&&!['trim',_0x2615d4(0x1f8),_0x2615d4(0x225)][_0x2615d4(0x210)](_0x5d0a05['mode'])&&_0x1290b7['push']('Invalid\x20mode:\x20'+_0x5d0a05[_0x2615d4(0x22b)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x1290b7[_0x2615d4(0x200)]>0x0)throw new Error(_0x2615d4(0x1f1)+_0x1290b7['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x40d0f3,_0x5e5e60){const _0x350964=a0_0x42a559,{files:_0x5e1033}=_0x40d0f3,{projectDir:_0x1890cf,agentId:_0x11ecf3,directoryAccess:_0x583b56}=_0x5e5e60;let _0x5ad28b=_0x1890cf||process[_0x350964(0x201)]();_0x583b56&&_0x583b56['workingDirectory']&&(_0x5ad28b=_0x583b56['workingDirectory'],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x583b56['workingDirectory'],'agentId':_0x11ecf3}));this['logger']?.[_0x350964(0x246)](_0x350964(0x211),{'fileCount':_0x5e1033['length'],'workingDirectory':_0x5ad28b,'agentId':_0x11ecf3});const _0x783f86=[],_0x4db4e4={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x3610aa of _0x5e1033){try{const _0x454252=await this[_0x350964(0x23d)](_0x3610aa,_0x5ad28b,_0x583b56);_0x783f86[_0x350964(0x202)](_0x454252),_0x4db4e4[_0x350964(0x250)]++,_0x454252[_0x350964(0x1f4)]>0x0&&(_0x4db4e4[_0x350964(0x24e)]++,_0x4db4e4['totalReplacements']+=_0x454252['replacementsMade']),_0x454252[_0x350964(0x23a)]&&_0x4db4e4['backupsCreated']++;}catch(_0x42e6c8){this[_0x350964(0x23b)]?.[_0x350964(0x219)]('Error\x20processing\x20file\x20'+_0x3610aa['path'],{'error':_0x42e6c8[_0x350964(0x224)]}),_0x783f86['push']({'filePath':_0x3610aa['path'],'success':![],'error':_0x42e6c8['message']}),_0x4db4e4['errors']++;}}return{'success':_0x4db4e4['errors']===0x0,'results':_0x783f86,'statistics':_0x4db4e4,'summary':this['generateSummary'](_0x4db4e4),'toolUsed':_0x350964(0x227)};}async['processFile'](_0x51b06b,_0x20f137,_0x6dd222){const _0x311683=a0_0x42a559,{path:_0x5963bc,replacements:_0x4474be}=_0x51b06b,_0x162959=a0_0x3daa83['isAbsolute'](_0x5963bc)?_0x5963bc:a0_0x3daa83['resolve'](_0x20f137,_0x5963bc);if(_0x6dd222){const _0x8e491e=this[_0x311683(0x1ff)](_0x162959,_0x20f137,_0x6dd222);if(!_0x8e491e)throw new Error('Path\x20not\x20accessible:\x20'+_0x5963bc);}try{await a0_0x128a6c['access'](_0x162959);}catch(_0x2dfd7b){throw new Error('File\x20not\x20found:\x20'+_0x5963bc);}const _0xb5e663=await a0_0x128a6c[_0x311683(0x216)](_0x162959);if(_0xb5e663[_0x311683(0x1fd)]>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error(_0x311683(0x222)+this['replaceConfig'][_0x311683(0x212)]/(0x400*0x400)+_0x311683(0x208)+_0x5963bc);let _0x428b61=await a0_0x128a6c[_0x311683(0x21b)](_0x162959,'utf-8');const _0x1cf3ec=_0x428b61;let _0x517591=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0x2237af=_0x162959+this['replaceConfig'][_0x311683(0x213)];try{await a0_0x128a6c['writeFile'](_0x2237af,_0x1cf3ec,_0x311683(0x1fb)),_0x517591=!![];}catch(_0x5b0663){this['logger']?.[_0x311683(0x1f9)](_0x311683(0x23e)+_0x5b0663['message']);}}let _0x282580=0x0;const _0x5601ad=[];for(const _0x3091c8 of _0x4474be){const _0x3d676f=await this[_0x311683(0x21c)](_0x428b61,_0x3091c8[_0x311683(0x20f)],_0x3091c8[_0x311683(0x21a)],_0x3091c8[_0x311683(0x23c)],_0x3091c8['mode']);_0x428b61=_0x3d676f['newContent'],_0x282580+=_0x3d676f[_0x311683(0x204)],_0x5601ad['push']({'oldContent':_0x3091c8[_0x311683(0x20f)]['substring'](0x0,0x32)+(_0x3091c8['oldContent'][_0x311683(0x200)]>0x32?_0x311683(0x1ee):''),'newContent':_0x3091c8[_0x311683(0x21a)]['substring'](0x0,0x32)+(_0x3091c8['newContent']['length']>0x32?'...':''),'count':_0x3d676f['count'],'mode':_0x3091c8[_0x311683(0x22b)],'linesLimit':_0x3091c8['linesLimit']});}_0x282580>0x0&&await a0_0x128a6c['writeFile'](_0x162959,_0x428b61,_0x311683(0x1fb));const _0x2c56ab=_0x282580>0x0?this['generateDiff'](_0x1cf3ec,_0x428b61):null;return{'filePath':_0x5963bc,'resolvedPath':_0x162959,'success':!![],'replacementsMade':_0x282580,'backupCreated':_0x517591,'replacementDetails':_0x5601ad,'diff':_0x2c56ab,'message':_0x282580>0x0?_0x311683(0x24a)+_0x282580+'\x20replacement(s)\x20in\x20'+_0x5963bc:_0x311683(0x237)+_0x5963bc+'\x20(content\x20not\x20found)'};}[a0_0x42a559(0x1ff)](_0x89ca33,_0x412f69,_0x439599){const _0xfeaadc=a0_0x42a559,_0x50beb9=a0_0x3daa83['relative'](_0x412f69,_0x89ca33);if(!_0x50beb9['startsWith']('..')&&!a0_0x3daa83[_0xfeaadc(0x206)](_0x50beb9))return!![];if(_0x439599[_0xfeaadc(0x239)])for(const _0x3b23a9 of _0x439599[_0xfeaadc(0x239)]){const _0x2672c0=a0_0x3daa83[_0xfeaadc(0x234)](_0x3b23a9,_0x89ca33);if(!_0x2672c0['startsWith']('..')&&!a0_0x3daa83['isAbsolute'](_0x2672c0))return!![];}return![];}async[a0_0x42a559(0x21c)](_0x37667a,_0x4f3b01,_0x66ac60,_0x30696b,_0x388f85){const _0x2de4a9=a0_0x42a559;if(!_0x30696b){const _0x8c47e7=this[_0x2de4a9(0x241)](_0x37667a,_0x4f3b01);if(_0x8c47e7===0x0)return{'newContent':_0x37667a,'count':0x0};const _0x3a5011=_0x37667a['split'](_0x4f3b01)['join'](_0x66ac60);return{'newContent':_0x3a5011,'count':_0x8c47e7};}const _0x348ff3=this['parseLineRanges'](_0x30696b),_0x3aa6c4=_0x37667a[_0x2de4a9(0x226)]('\x0a');let _0x8aa3eb=0x0;for(let _0xba4f65=0x0;_0xba4f65<_0x3aa6c4['length'];_0xba4f65++){const _0x1ffa49=_0xba4f65+0x1;if(_0x348ff3[_0x2de4a9(0x21e)](_0x1ffa49)){if(_0x3aa6c4[_0xba4f65]['includes'](_0x4f3b01)){const _0x5b0711=this['countOccurrences'](_0x3aa6c4[_0xba4f65],_0x4f3b01);_0x3aa6c4[_0xba4f65]=_0x3aa6c4[_0xba4f65][_0x2de4a9(0x226)](_0x4f3b01)[_0x2de4a9(0x231)](_0x66ac60),_0x8aa3eb+=_0x5b0711;}}}return{'newContent':_0x3aa6c4['join']('\x0a'),'count':_0x8aa3eb};}[a0_0x42a559(0x241)](_0x3b22b8,_0x1edb52){if(!_0x1edb52)return 0x0;return _0x3b22b8['split'](_0x1edb52)['length']-0x1;}[a0_0x42a559(0x1fa)](_0x5f4652){const _0x6a5b27=a0_0x42a559,_0x2e3d7a=new Set();if(!_0x5f4652||_0x5f4652[_0x6a5b27(0x1f7)]()==='')return _0x2e3d7a;const _0xd664e4=_0x5f4652[_0x6a5b27(0x226)](',');for(const _0x189b20 of _0xd664e4){const _0x1e1611=_0x189b20['trim']();if(_0x1e1611==='')continue;if(_0x1e1611['includes']('-')){const [_0x14db95,_0x5cdce]=_0x1e1611['split']('-')[_0x6a5b27(0x20c)](_0xfe20a1=>parseInt(_0xfe20a1['trim'](),0xa));if(!isNaN(_0x14db95)&&!isNaN(_0x5cdce)&&_0x5cdce-_0x14db95<this['replaceConfig']['MAX_LINE_RANGE_SIZE'])for(let _0x3ebc14=_0x14db95;_0x3ebc14<=_0x5cdce;_0x3ebc14++){_0x2e3d7a['add'](_0x3ebc14);}}else{const _0x46a17a=parseInt(_0x1e1611,0xa);!isNaN(_0x46a17a)&&_0x2e3d7a['add'](_0x46a17a);}}return _0x2e3d7a;}[a0_0x42a559(0x220)](_0x38fa50,_0x1bb33e){const _0x5301fd=a0_0x42a559,_0x4fd783=_0x38fa50['split']('\x0a'),_0x5474a9=_0x1bb33e['split']('\x0a');let _0x1ad9c3=-0x1,_0x105908=-0x1;const _0x3e6d38=Math[_0x5301fd(0x207)](_0x4fd783[_0x5301fd(0x200)],_0x5474a9['length']);for(let _0x40481d=0x0;_0x40481d<_0x3e6d38;_0x40481d++){const _0x3be8e1=_0x40481d<_0x4fd783['length']?_0x4fd783[_0x40481d]:'',_0x4c308d=_0x40481d<_0x5474a9[_0x5301fd(0x200)]?_0x5474a9[_0x40481d]:'';if(_0x3be8e1!==_0x4c308d){if(_0x1ad9c3===-0x1)_0x1ad9c3=_0x40481d;_0x105908=_0x40481d;}}if(_0x1ad9c3===-0x1)return'No\x20differences';const _0x1d426d=this[_0x5301fd(0x229)]['DIFF_CONTEXT_LINES'],_0x2f3731=Math[_0x5301fd(0x207)](0x0,_0x1ad9c3-_0x1d426d),_0x29c886=Math[_0x5301fd(0x242)](_0x3e6d38-0x1,_0x105908+_0x1d426d);if(_0x29c886-_0x2f3731>this['replaceConfig'][_0x5301fd(0x24f)])return'Diff\x20too\x20large\x20('+(_0x29c886-_0x2f3731+0x1)+_0x5301fd(0x22f)+('Changed\x20lines:\x20'+(_0x1ad9c3+0x1)+'\x20to\x20'+(_0x105908+0x1));let _0x4449e4='@@\x20-'+(_0x2f3731+0x1)+','+(_0x29c886-_0x2f3731+0x1)+'\x20+'+(_0x2f3731+0x1)+','+(_0x29c886-_0x2f3731+0x1)+_0x5301fd(0x256);for(let _0x139a79=_0x2f3731;_0x139a79<=_0x29c886;_0x139a79++){const _0xbc1377=_0x139a79<_0x4fd783[_0x5301fd(0x200)]?_0x4fd783[_0x139a79]:'',_0x33b2e5=_0x139a79<_0x5474a9[_0x5301fd(0x200)]?_0x5474a9[_0x139a79]:'';_0xbc1377===_0x33b2e5?_0x4449e4+='\x20\x20'+_0xbc1377+'\x0a':(_0x4449e4+='-\x20'+_0xbc1377+'\x0a',_0x4449e4+='+\x20'+_0x33b2e5+'\x0a');}return _0x4449e4;}['generateSummary'](_0x36823e){const _0x1ef783=a0_0x42a559;return(_0x1ef783(0x22d)+_0x36823e['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x36823e[_0x1ef783(0x24e)]+_0x1ef783(0x255)+_0x36823e['totalReplacements']+_0x1ef783(0x236)+_0x36823e[_0x1ef783(0x1f5)]+_0x1ef783(0x20d)+_0x36823e[_0x1ef783(0x218)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0xec2a6a){const _0x531f2d=a0_0x42a559;this['logger']?.[_0x531f2d(0x246)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0xec2a6a});}}function a0_0x5132(_0x27b831,_0x3b61f2){_0x27b831=_0x27b831-0x1ee;const _0x2916f5=a0_0x2916();let _0x5132bd=_0x2916f5[_0x27b831];if(a0_0x5132['JGzLoM']===undefined){var _0x51d124=function(_0x41f392){const _0x1bcee0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x128a6c='',_0x3daa83='';for(let _0x58289e=0x0,_0x4c7909,_0x107306,_0x23b5db=0x0;_0x107306=_0x41f392['charAt'](_0x23b5db++);~_0x107306&&(_0x4c7909=_0x58289e%0x4?_0x4c7909*0x40+_0x107306:_0x107306,_0x58289e++%0x4)?_0x128a6c+=String['fromCharCode'](0xff&_0x4c7909>>(-0x2*_0x58289e&0x6)):0x0){_0x107306=_0x1bcee0['indexOf'](_0x107306);}for(let _0x366313=0x0,_0x2eae91=_0x128a6c['length'];_0x366313<_0x2eae91;_0x366313++){_0x3daa83+='%'+('00'+_0x128a6c['charCodeAt'](_0x366313)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3daa83);};a0_0x5132['GYvKPq']=_0x51d124,a0_0x5132['swgoeg']={},a0_0x5132['JGzLoM']=!![];}const _0x3a9148=_0x2916f5[0x0],_0x121b04=_0x27b831+_0x3a9148,_0x2750a7=a0_0x5132['swgoeg'][_0x121b04];return!_0x2750a7?(_0x5132bd=a0_0x5132['GYvKPq'](_0x5132bd),a0_0x5132['swgoeg'][_0x121b04]=_0x5132bd):_0x5132bd=_0x2750a7,_0x5132bd;}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4a8135=a0_0x16d8;(function(_0x46c182,_0x135876){const _0x273188=a0_0x16d8,_0x28b8af=_0x46c182();while(!![]){try{const _0xb1597=parseInt(_0x273188(0x113))/0x1*(parseInt(_0x273188(0xed))/0x2)+parseInt(_0x273188(0x119))/0x3+parseInt(_0x273188(0xf0))/0x4+parseInt(_0x273188(0xfe))/0x5+parseInt(_0x273188(0x111))/0x6+-parseInt(_0x273188(0xfb))/0x7+-parseInt(_0x273188(0x10b))/0x8;if(_0xb1597===_0x135876)break;else _0x28b8af['push'](_0x28b8af['shift']());}catch(_0x1cd831){_0x28b8af['push'](_0x28b8af['shift']());}}}(a0_0x4755,0xce4e3));import{BaseTool}from'./baseTool.js';import a0_0x14816d from'../utilities/tagParser.js';import a0_0x2d08cc from'../utilities/directoryAccessManager.js';import a0_0xa233b7 from'fs/promises';import a0_0x291fbd from'path';function a0_0x4755(){const _0x511d9f=['C2XPy2u','mZG0nZm4rNvKtffH','C291CMnLugf0Aa','mtK0nJaXrM9Pzu1W','zgvSzxrL','rMfPBgvKihrVihjLywqGzMLSzsa','ihrVia','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','BM93','nda2mZi4nfnbqLbArq','A2v5CW','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','ywXSB3DLzerPCMvJDg9YAwvZ','C291CMnLlxbHDgG','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','ywn0Aw9UCW','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','C3rHDa','y3jLyxrLlwrPCG','DgLTzw91Da','yxbWzw5KrMLSzq','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','BMfTzq','igj5DgvZicHTyxGG','DhjPBq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','q3jLyxrLzcbKAxjLy3rVCNKG','C2L6zq','CMvHzezPBgu','CMvUyw1L','Dhj1zq','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24klsbcywnRDxaGy3jLyxrLzcbMB3iGzgvZDhj1y3rPDMuGB3bLCMf0Aw9UCWOkru5dt0rjtKCGu1vque9svdOklsb1Dgy4icHKzwzHDwX0kqOTigfZy2LPcI0GyMfZzty0cI0GyMLUyxj5cI0GAgv4cIaGica','igj5DgvZigzYB20G','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y29UDgvUDa','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','C3rYAw5N','zgvZDc1WyxrO','BgLZDa','D3jPDgu','igL0zw1ZigLUia','DxrMoa','oIb0ExbLigLZihjLCxvPCMvK','Bw92zuzPBgu','ru5pru5u','rMfPBgvKihrVigrLBgv0zsbMAwXLia','C3rYAw5NAwz5','lMnTza','Bg9Nz2vY','ywXSB3DLza','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','CMvHza','v3jPDguGywnJzxnZigrLBMLLzdOG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','q29WAwvKia','DhLWzq','zgLYzwn0B3j5','ywnJzxnZ','BgvUz3rO','zgvZDfbHDgG','Bg9N','B3bLCMf0Aw9UsgLZDg9YEq','C3rHDhm','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','ywXSB3DLzev4DgvUC2LVBNm','zMLSzvbHDgG','AxneAxjLy3rVCNK','C3vIC3rYAw5N','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','CgfYC2vbDhrYAwj1DgvZ','z2v0v29YA2LUz0rPCMvJDg9YEq','lMv4zq','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','y3jLyxrLlwrPCNm','y29Kzq','rMfPBgvKihrVig1VDMuG','zgLYBMfTzq','CMf3q29UDgvUDa','Bwf4rMLSzvnPEMu','y3DK','zgvSzxrLrMLSzq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','B3v0Chv0ugf0Aa','AxntEw1IB2XPy0XPBMS','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','BgLZDerPCMvJDg9YEq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ywrKvg9iAxn0B3j5','CMvHC29U','BwTKAxi','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','DMfSAwrHDgvszwfKqwnJzxnZ','zgvIDwC','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','yNL0zuXLBMD0Aa','B2jQzwn0','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','B3v0Chv0lxbHDgG','AxngAwXL','Bw92zq','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','Dg9ju09tDhjPBMC','rgvSzxrLzca','AxnbCNjHEq','zxHPC3rZ','BwfW','Cgf0Aa','yMXVy2TLzev4DgvUC2LVBNm','zMLSDgvY','zMLSzq','mtjdq3PnwNG','igj5DgvZihrVia','yxbWzw5K','nJCYmtuWohPPBg54Ba','y3jLyxrLrgLYCW','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','y3jLyxrLuMvSyxrPDMvqyxrO','DMfSAwrHDgvqyxrOqwnJzxnZ','zw5JB2rPBMC','CMvZB2X2zq','BxrPBwu','qwn0Aw9Uia','BM9YBwfSAxPL','y29WEq','mZm0otm1m3PywfvTuW','Aw5JBhvKzxm','DMfSAwrHDgvxCML0zufJy2vZCW','ntm0otCYme56sg5RAq','BwvZC2fNzq','rMfPBgvKihrVihDYAxrLigzPBguG','uMv0CMLLDMvKihn0yxrZigzVCIa','y3jLyxrLrgLYzwn0B3j5','ChvZAa','lMnVBq','Dg9mB3DLCKnHC2u','CMvZB2X2zvbHDgG','y29WEuzPBgu','zMLSzs1WyxrO','zxH0BMfTzq','z2v0rMLSzvn0yxrZ','mZiXmdm3nZznAwPuCwu','z2v0rgvZy3jPChrPB24','igrVzxmGBM90igv4Axn0','rMfPBgvKihrVignVChKG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ'];a0_0x4755=function(){return _0x511d9f;};return a0_0x4755();}import a0_0x17ea40 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x3cf2f4={},_0x3d13dd=null){const _0x5dcd83=a0_0x16d8;super(_0x3cf2f4,_0x3d13dd),this['requiresProject']=!![],this['isAsync']=![],this[_0x5dcd83(0x125)]=_0x3cf2f4[_0x5dcd83(0x125)]||0x7530,this[_0x5dcd83(0x149)]=_0x3cf2f4['maxConcurrentOperations']||0x5,this['maxFileSize']=_0x3cf2f4['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this[_0x5dcd83(0x155)]=_0x3cf2f4[_0x5dcd83(0x155)]||null,this['blockedExtensions']=_0x3cf2f4[_0x5dcd83(0xea)]||[_0x5dcd83(0x15c),'.bat',_0x5dcd83(0x143),'.scr',_0x5dcd83(0x104)],this[_0x5dcd83(0x11c)]=_0x3cf2f4['allowedDirectories']||null,this[_0x5dcd83(0x151)]=[],this[_0x5dcd83(0x153)]=new a0_0x2d08cc(_0x3cf2f4,_0x3d13dd);}[a0_0x4a8135(0x10c)](){const _0x2215f0=a0_0x4a8135;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aCRITICAL:\x20Both\x20XML\x20and\x20JSON\x20formats\x20are\x20fully\x20supported.\x20When\x20using\x20XML\x20format,\x20commands\x20are\x20automatically\x20converted\x20to\x20the\x20appropriate\x20structure\x20internally\x20-\x20you\x20don\x27t\x20need\x20to\x20manually\x20wrap\x20them\x20in\x20an\x20actions\x20array.\x0a\x0aUSAGE\x20-\x20TWO\x20FORMATS\x20SUPPORTED:\x0a\x0aFORMAT\x201\x20-\x20XML\x20STYLE\x20(Recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22src/index.js\x22\x20/>\x0a<write\x20output-path=\x22src/components/Button.js\x22>\x0aconst\x20Button\x20=\x20()\x20=>\x20{\x0a\x20\x20return\x20<button>Click\x20me</button>;\x0a};\x0aexport\x20default\x20Button;\x0a</write>\x0a[/tool]\x0a\x0aFORMAT\x202\x20-\x20JSON\x20STYLE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x20\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x20\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22const\x20Button\x20=\x20()\x20=>\x20{\x20return\x20<button>Click\x20me</button>;\x20};\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20\x0a-\x20Use\x20either\x20format\x20consistently.\x20Do\x20NOT\x20mix\x20formats\x20in\x20a\x20single\x20command.\x0a-\x20XML\x20format\x20is\x20recommended\x20for\x20single\x20operations\x20and\x20better\x20readability\x0a-\x20JSON\x20format\x20is\x20recommended\x20for\x20complex\x20multi-action\x20operations\x0a-\x20Both\x20formats\x20work\x20equally\x20well\x20and\x20produce\x20the\x20same\x20results\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x0a-\x20write:\x20Write\x20content\x20to\x20file\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x0a-\x20delete:\x20Delete\x20a\x20file\x0a-\x20copy:\x20Copy\x20file\x20from\x20source\x20to\x20destination\x0a-\x20move:\x20Move/rename\x20file\x0a-\x20create-dir:\x20Create\x20directory\x0a-\x20list:\x20List\x20directory\x20contents\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20read\x0a-\x20output-path:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20source-path:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20dest-path:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20directory\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20create-dirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aSIMPLE\x20FILE\x20CREATION\x20(XML\x20format\x20-\x20recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<write\x20output-path=\x22hello.c\x22>\x0a#include\x20<stdio.h>\x0a\x0aint\x20main()\x20{\x0a\x20\x20\x20\x20printf(\x22Hello,\x20World!\x5cn\x22);\x0a\x20\x20\x20\x20return\x200;\x0a}\x0a</write>\x0a[/tool]\x0a\x0aREADING\x20FILES\x20(XML\x20format):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22package.json\x22\x20/>\x0a[/tool]\x0a\x0aMULTIPLE\x20OPERATIONS\x20(JSON\x20format\x20recommended):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/backup.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22//\x20Backup\x20file\x5cnconsole.log(\x27backup\x27);\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aOTHER\x20XML\x20EXAMPLES:\x0a[tool\x20id=\x22filesystem\x22]\x0a<copy\x20source-path=\x22template.js\x22\x20dest-path=\x22src/component.js\x22\x20/>\x0a<create-dir\x20directory=\x22src/components/ui\x22\x20/>\x0a<list\x20directory=\x22src\x22\x20/>\x0a[/tool]\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math['round'](this[_0x2215f0(0x163)]/0x400/0x400)+_0x2215f0(0x132);}['parseParameters'](_0x4f26d4){const _0x3c325b=a0_0x4a8135;try{const _0x17bc6e={},_0x4ad2b7=[];this[_0x3c325b(0x144)]?.[_0x3c325b(0x173)](_0x3c325b(0x166),{'contentLength':_0x4f26d4['length'],'contentPreview':_0x4f26d4[_0x3c325b(0x158)](0x0,0xc8)});const _0x7e344=['read',_0x3c325b(0x114),_0x3c325b(0xfa),'move',_0x3c325b(0x124),_0x3c325b(0x13a),_0x3c325b(0xe7),'stats',_0x3c325b(0xef)];for(const _0x490cd0 of _0x7e344){const _0x2c1161=a0_0x14816d[_0x3c325b(0x171)](_0x4f26d4,_0x490cd0);for(const _0x676378 of _0x2c1161){const _0x887e62={'type':_0x490cd0,..._0x676378['attributes']};_0x887e62[_0x3c325b(0x108)]&&(_0x887e62['filePath']=_0x887e62[_0x3c325b(0x108)],delete _0x887e62['file-path']),_0x887e62[_0x3c325b(0x178)]&&(_0x887e62['outputPath']=_0x887e62[_0x3c325b(0x178)],delete _0x887e62[_0x3c325b(0x178)]),_0x887e62[_0x3c325b(0x11d)]&&(_0x887e62[_0x3c325b(0x112)]=_0x887e62['source-path'],delete _0x887e62['source-path']),_0x887e62['dest-path']&&(_0x887e62[_0x3c325b(0x14f)]=_0x887e62['dest-path'],delete _0x887e62[_0x3c325b(0x139)]),_0x887e62['create-dirs']&&(_0x887e62[_0x3c325b(0xf1)]=_0x887e62['create-dirs']===_0x3c325b(0x131),delete _0x887e62['create-dirs']),_0x4ad2b7[_0x3c325b(0x103)](_0x887e62);}}const _0x484749=_0x4f26d4['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x5e7443 of _0x484749){const _0x288084=new a0_0x14816d(),_0x42e71b=_0x288084['parseAttributes'](_0x5e7443[0x1]),_0x149804=_0x5e7443[0x2]['trim'](),_0x55b092={'type':'write','content':_0x149804,..._0x42e71b};_0x55b092['output-path']&&(_0x55b092[_0x3c325b(0x167)]=_0x55b092['output-path'],delete _0x55b092['output-path']),_0x55b092['create-dirs']&&(_0x55b092[_0x3c325b(0xf1)]=_0x55b092[_0x3c325b(0x15e)]==='true',delete _0x55b092[_0x3c325b(0x15e)]),_0x4ad2b7['push'](_0x55b092);}const _0x2acabd=_0x4f26d4['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x5e551c of _0x2acabd){const _0x53864d=new a0_0x14816d(),_0x4cdb4e=_0x53864d[_0x3c325b(0x15a)](_0x5e551c[0x1]),_0x490f7f=_0x5e551c[0x2][_0x3c325b(0x12a)](),_0x578af8={'type':'append','content':_0x490f7f,..._0x4cdb4e};_0x578af8['file-path']&&(_0x578af8['filePath']=_0x578af8['file-path'],delete _0x578af8[_0x3c325b(0x108)]),_0x4ad2b7['push'](_0x578af8);}return _0x17bc6e['actions']=_0x4ad2b7,_0x17bc6e[_0x3c325b(0x162)]=_0x4f26d4[_0x3c325b(0x12a)](),this['logger']?.[_0x3c325b(0x173)]('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0x4ad2b7['length'],'actionTypes':_0x4ad2b7['map'](_0x509978=>_0x509978['type']),'actions':_0x4ad2b7[_0x3c325b(0xe8)](_0x10a4fc=>({'type':_0x10a4fc['type'],'filePath':_0x10a4fc['filePath'],'outputPath':_0x10a4fc['outputPath'],'hasContent':!!_0x10a4fc['content']}))}),_0x17bc6e;}catch(_0x255516){throw new Error(_0x3c325b(0x11b)+_0x255516['message']);}}[a0_0x4a8135(0x12c)](){return['actions'];}[a0_0x4a8135(0x10f)](_0x2fc070){const _0x5d7286=a0_0x4a8135,_0x4af72b=[];if(!_0x2fc070[_0x5d7286(0x11f)]||!Array[_0x5d7286(0xe6)](_0x2fc070['actions'])||_0x2fc070['actions'][_0x5d7286(0x14e)]===0x0)_0x4af72b['push'](_0x5d7286(0x12b));else for(const [_0x13e38b,_0x5e6ba8]of _0x2fc070[_0x5d7286(0x11f)]['entries']()){if(!_0x5e6ba8[_0x5d7286(0x14b)]){_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x13e));continue;}switch(_0x5e6ba8[_0x5d7286(0x14b)]){case _0x5d7286(0x147):case'delete':case _0x5d7286(0xe7):case'stats':!_0x5e6ba8['filePath']&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x137)+_0x5e6ba8['type']);break;case'write':!_0x5e6ba8['outputPath']&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x121));!_0x5e6ba8['content']&&_0x5e6ba8[_0x5d7286(0x135)]!==''&&_0x4af72b[_0x5d7286(0x103)](_0x5d7286(0xf8)+(_0x13e38b+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x5e6ba8[_0x5d7286(0x156)]&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x5e6ba8['content']&&_0x5e6ba8['content']!==''&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case _0x5d7286(0xfa):case'move':!_0x5e6ba8['sourcePath']&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+_0x5d7286(0x120)+_0x5e6ba8['type']);!_0x5e6ba8[_0x5d7286(0x14f)]&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x177)+_0x5e6ba8['type']);break;case _0x5d7286(0x124):case _0x5d7286(0x13a):!_0x5e6ba8['directory']&&_0x4af72b[_0x5d7286(0x103)](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x117)+_0x5e6ba8['type']);break;default:_0x4af72b[_0x5d7286(0x103)]('Action\x20'+(_0x13e38b+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5e6ba8['type']);}_0x5e6ba8[_0x5d7286(0x156)]&&!this['isAllowedFileExtension'](_0x5e6ba8[_0x5d7286(0x156)])&&_0x4af72b['push'](_0x5d7286(0xf8)+(_0x13e38b+0x1)+_0x5d7286(0x136)+a0_0x291fbd['extname'](_0x5e6ba8['filePath'])),_0x5e6ba8['outputPath']&&!this[_0x5d7286(0x159)](_0x5e6ba8[_0x5d7286(0x167)])&&_0x4af72b['push']('Action\x20'+(_0x13e38b+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x291fbd[_0x5d7286(0x109)](_0x5e6ba8['outputPath']));}return{'valid':_0x4af72b['length']===0x0,'errors':_0x4af72b};}async['execute'](_0x4f6b6e,_0x479384){const _0x2b534b=a0_0x4a8135;if(!_0x4f6b6e||typeof _0x4f6b6e!==_0x2b534b(0x176))throw new Error(_0x2b534b(0x169));const {actions:_0x4cf380}=_0x4f6b6e;if(!_0x4cf380)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON[_0x2b534b(0x142)](Object[_0x2b534b(0x11a)](_0x4f6b6e)));if(!Array[_0x2b534b(0xe6)](_0x4cf380))throw new Error(_0x2b534b(0x134)+typeof _0x4cf380);if(_0x4cf380[_0x2b534b(0x14e)]===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x553cba,agentId:_0xab7ce0,directoryAccess:_0x3adcf3}=_0x479384,_0x1e64e1=_0x3adcf3||this['directoryAccessManager'][_0x2b534b(0x127)]({'workingDirectory':_0x553cba||process[_0x2b534b(0x164)](),'writeEnabledDirectories':[_0x553cba||process['cwd']()],'restrictToProject':!![]});_0x3adcf3&&_0x3adcf3['workingDirectory']?(console[_0x2b534b(0x150)](_0x2b534b(0x16a),_0x3adcf3['workingDirectory']),console[_0x2b534b(0x150)](_0x2b534b(0xf2),JSON[_0x2b534b(0x142)](_0x3adcf3,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x553cba||process[_0x2b534b(0x164)]()),console['log'](_0x2b534b(0x174),_0x3adcf3),console['log'](_0x2b534b(0x122),_0x553cba));const _0x5196ae=[];for(const _0x1319c4 of _0x4cf380){try{let _0x1dd747;switch(_0x1319c4['type']){case _0x2b534b(0x147):_0x1dd747=await this['readFile'](_0x1319c4['filePath'],_0x1e64e1,_0x1319c4[_0x2b534b(0xf5)]);break;case _0x2b534b(0x13b):_0x1dd747=await this['writeFile'](_0x1319c4['outputPath'],_0x1319c4[_0x2b534b(0x135)],_0x1e64e1,{'encoding':_0x1319c4[_0x2b534b(0xf5)],'createDirs':_0x1319c4[_0x2b534b(0xf1)]});break;case'append':_0x1dd747=await this['appendToFile'](_0x1319c4['filePath'],_0x1319c4[_0x2b534b(0x135)],_0x1e64e1,_0x1319c4[_0x2b534b(0xf5)]);break;case'delete':_0x1dd747=await this['deleteFile'](_0x1319c4[_0x2b534b(0x156)],_0x1e64e1);break;case'copy':_0x1dd747=await this['copyFile'](_0x1319c4[_0x2b534b(0x112)],_0x1319c4[_0x2b534b(0x14f)],_0x1e64e1);break;case _0x2b534b(0xe2):_0x1dd747=await this['moveFile'](_0x1319c4['sourcePath'],_0x1319c4[_0x2b534b(0x14f)],_0x1e64e1);break;case _0x2b534b(0x124):_0x1dd747=await this[_0x2b534b(0x102)](_0x1319c4['directory'],_0x1e64e1);break;case _0x2b534b(0x13a):_0x1dd747=await this[_0x2b534b(0x16c)](_0x1319c4['directory'],_0x1e64e1);break;case _0x2b534b(0xe7):_0x1dd747=await this['checkExists'](_0x1319c4['filePath'],_0x1e64e1);break;case _0x2b534b(0x152):_0x1dd747=await this[_0x2b534b(0x10a)](_0x1319c4[_0x2b534b(0x156)],_0x1e64e1);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x1319c4['type']);}_0x5196ae['push'](_0x1dd747),this[_0x2b534b(0x16e)](_0x1319c4,_0x1dd747,_0x479384['agentId']);}catch(_0x20510a){const _0x8f9687={'success':![],'action':_0x1319c4[_0x2b534b(0x14b)],'error':_0x20510a[_0x2b534b(0xff)],'filePath':_0x1319c4['filePath']||_0x1319c4[_0x2b534b(0x167)]||_0x1319c4['directory']};_0x5196ae[_0x2b534b(0x103)](_0x8f9687),this['addToHistory'](_0x1319c4,_0x8f9687,_0x479384['agentId']);}}return{'success':!![],'actions':_0x5196ae,'executedActions':_0x4cf380[_0x2b534b(0x14e)],'toolUsed':'filesys'};}async['readFile'](_0x5224ab,_0x51a05b,_0x26395e=a0_0x4a8135(0x13d)){const _0x4b6637=a0_0x4a8135,_0xcf98db=this['directoryAccessManager'][_0x4b6637(0x15b)](_0x51a05b),_0x524a69=this[_0x4b6637(0x106)](_0x5224ab,_0xcf98db),_0x505b57=this[_0x4b6637(0x153)][_0x4b6637(0x172)](_0x524a69,_0x51a05b);if(!_0x505b57[_0x4b6637(0x145)])throw new Error(_0x4b6637(0x154)+_0x505b57['reason']+'\x20('+_0x505b57[_0x4b6637(0xe9)]+')');try{const _0x58d2da=await a0_0xa233b7[_0x4b6637(0x123)](_0x524a69);if(_0x58d2da[_0x4b6637(0x12e)]>this[_0x4b6637(0x163)])throw new Error('File\x20too\x20large:\x20'+_0x58d2da[_0x4b6637(0x12e)]+'\x20bytes\x20(max\x20'+this[_0x4b6637(0x163)]+')');const _0x56eb09=await a0_0xa233b7[_0x4b6637(0x12f)](_0x524a69,_0x26395e);return{'success':!![],'action':'read','filePath':this[_0x4b6637(0x153)][_0x4b6637(0xf3)](_0x524a69,_0x51a05b),'content':_0x56eb09,'size':_0x58d2da['size'],'encoding':_0x26395e,'lastModified':_0x58d2da[_0x4b6637(0xf7)][_0x4b6637(0xe4)](),'message':'Read\x20'+_0x58d2da['size']+_0x4b6637(0x133)+_0x5224ab};}catch(_0x3dab67){throw new Error(_0x4b6637(0x115)+_0x5224ab+':\x20'+_0x3dab67[_0x4b6637(0xff)]);}}async['writeFile'](_0x49c506,_0x3b0057,_0x15cd2a,_0x1b1427={}){const _0x17e6d2=a0_0x4a8135,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x1b1427,_0x42088c=this['directoryAccessManager'][_0x17e6d2(0x15b)](_0x15cd2a),_0x1e9aa1=this[_0x17e6d2(0x106)](_0x49c506,_0x42088c),_0x28c364=this['directoryAccessManager']['validateWriteAccess'](_0x1e9aa1,_0x15cd2a);if(!_0x28c364['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x28c364[_0x17e6d2(0x16f)]+'\x20('+_0x28c364[_0x17e6d2(0xe9)]+')');try{const _0x1c2ecb=Buffer['byteLength'](_0x3b0057,encoding);if(_0x1c2ecb>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x1c2ecb+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x15a08c=a0_0x291fbd[_0x17e6d2(0x161)](_0x1e9aa1);await a0_0xa233b7[_0x17e6d2(0x170)](_0x15a08c,{'recursive':!![]});}let _0x1bebb6=null;try{await a0_0xa233b7[_0x17e6d2(0x14d)](_0x1e9aa1),_0x1bebb6=_0x1e9aa1+'.backup-'+Date['now'](),await a0_0xa233b7[_0x17e6d2(0x107)](_0x1e9aa1,_0x1bebb6);}catch{}await a0_0xa233b7['writeFile'](_0x1e9aa1,_0x3b0057,encoding);const _0x1af95a=await a0_0xa233b7[_0x17e6d2(0x123)](_0x1e9aa1),_0x588d2d=this[_0x17e6d2(0x153)][_0x17e6d2(0xf3)](_0x1e9aa1,_0x15cd2a);return{'success':!![],'action':_0x17e6d2(0x13b),'outputPath':_0x588d2d,'fullPath':_0x1e9aa1,'size':_0x1af95a[_0x17e6d2(0x12e)],'encoding':encoding,'backupPath':_0x1bebb6?this[_0x17e6d2(0x153)][_0x17e6d2(0xf3)](_0x1bebb6,_0x15cd2a):null,'backupFullPath':_0x1bebb6||null,'message':'Wrote\x20'+_0x1af95a[_0x17e6d2(0x12e)]+_0x17e6d2(0xee)+_0x1e9aa1};}catch(_0x1bc40c){throw new Error(_0x17e6d2(0x100)+_0x1e9aa1+':\x20'+_0x1bc40c[_0x17e6d2(0xff)]);}}async['appendToFile'](_0x2d3baf,_0x96952c,_0x40ae0e,_0x4bddd9='utf8'){const _0x464f14=a0_0x4a8135,_0x5a629e=this['directoryAccessManager']['getWorkingDirectory'](_0x40ae0e),_0x507118=this[_0x464f14(0x106)](_0x2d3baf,_0x5a629e),_0x13fb8b=this['directoryAccessManager'][_0x464f14(0xfd)](_0x507118,_0x40ae0e);if(!_0x13fb8b['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x13fb8b['reason']+'\x20('+_0x13fb8b[_0x464f14(0xe9)]+')');try{let _0x13bd7c=0x0;try{const _0x256308=await a0_0xa233b7['stat'](_0x507118);_0x13bd7c=_0x256308[_0x464f14(0x12e)];}catch{}const _0x36e5cd=Buffer[_0x464f14(0x175)](_0x96952c,_0x4bddd9);if(_0x13bd7c+_0x36e5cd>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x13bd7c+_0x36e5cd)+_0x464f14(0x129)+this['maxFileSize']+')');await a0_0xa233b7[_0x464f14(0x126)](_0x507118,_0x96952c,_0x4bddd9);const _0x2277e8=await a0_0xa233b7['stat'](_0x507118),_0x7a03e9=this['directoryAccessManager'][_0x464f14(0xf3)](_0x507118,_0x40ae0e);return{'success':!![],'action':'append','filePath':_0x7a03e9,'fullPath':_0x507118,'appendedBytes':_0x36e5cd,'totalSize':_0x2277e8[_0x464f14(0x12e)],'encoding':_0x4bddd9,'message':'Appended\x20'+_0x36e5cd+'\x20bytes\x20to\x20'+_0x507118};}catch(_0x36df66){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x507118+':\x20'+_0x36df66['message']);}}async[a0_0x4a8135(0x165)](_0x563345,_0x108b84){const _0x1ce8ee=a0_0x4a8135,_0x1d553c=this[_0x1ce8ee(0x153)][_0x1ce8ee(0x15b)](_0x108b84),_0x53e994=this['resolvePath'](_0x563345,_0x1d553c),_0x4b1762=this[_0x1ce8ee(0x153)][_0x1ce8ee(0xfd)](_0x53e994,_0x108b84);if(!_0x4b1762['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x4b1762[_0x1ce8ee(0x16f)]+'\x20('+_0x4b1762['path']+')');try{const _0x21079e=await a0_0xa233b7['stat'](_0x53e994),_0x3d6890=_0x53e994+'.deleted-backup-'+Date[_0x1ce8ee(0x118)]();await a0_0xa233b7[_0x1ce8ee(0x107)](_0x53e994,_0x3d6890),await a0_0xa233b7['unlink'](_0x53e994);const _0x32294c=this[_0x1ce8ee(0x153)][_0x1ce8ee(0xf3)](_0x53e994,_0x108b84),_0x31b247=this[_0x1ce8ee(0x153)]['createRelativePath'](_0x3d6890,_0x108b84);return{'success':!![],'action':_0x1ce8ee(0x114),'filePath':_0x32294c,'fullPath':_0x53e994,'size':_0x21079e['size'],'backupPath':_0x31b247,'backupFullPath':_0x3d6890,'message':_0x1ce8ee(0xe5)+_0x53e994+'\x20(backup\x20created)'};}catch(_0x38e418){throw new Error(_0x1ce8ee(0x141)+_0x53e994+':\x20'+_0x38e418[_0x1ce8ee(0xff)]);}}async['copyFile'](_0xa4dbf0,_0x597efd,_0x142d16){const _0x5724ac=a0_0x4a8135,_0x1dde45=this['directoryAccessManager'][_0x5724ac(0x15b)](_0x142d16),_0x24de14=this['resolvePath'](_0xa4dbf0,_0x1dde45),_0x586493=this[_0x5724ac(0x106)](_0x597efd,_0x1dde45),_0x12a062=this[_0x5724ac(0x153)][_0x5724ac(0x172)](_0x24de14,_0x142d16);if(!_0x12a062['allowed'])throw new Error(_0x5724ac(0x15d)+_0x12a062['reason']+'\x20('+_0x12a062['path']+')');const _0x3090f1=this[_0x5724ac(0x153)][_0x5724ac(0xfd)](_0x586493,_0x142d16);if(!_0x3090f1['allowed'])throw new Error(_0x5724ac(0xe3)+_0x3090f1['reason']+'\x20('+_0x3090f1['path']+')');try{const _0x5a7bbf=await a0_0xa233b7[_0x5724ac(0x123)](_0x24de14);if(_0x5a7bbf['size']>this[_0x5724ac(0x163)])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x5a7bbf['size']+'\x20bytes');const _0x30cec6=a0_0x291fbd['dirname'](_0x586493);await a0_0xa233b7[_0x5724ac(0x170)](_0x30cec6,{'recursive':!![]}),await a0_0xa233b7['copyFile'](_0x24de14,_0x586493);const _0x13c241=this[_0x5724ac(0x153)][_0x5724ac(0xf3)](_0x24de14,_0x142d16),_0x325294=this['directoryAccessManager'][_0x5724ac(0xf3)](_0x586493,_0x142d16);return{'success':!![],'action':_0x5724ac(0xfa),'sourcePath':_0x13c241,'destPath':_0x325294,'sourceFullPath':_0x24de14,'destFullPath':_0x586493,'size':_0x5a7bbf['size'],'message':_0x5724ac(0x14a)+_0x24de14+_0x5724ac(0x116)+_0x586493};}catch(_0x35c9d9){throw new Error(_0x5724ac(0x10e)+_0x24de14+'\x20to\x20'+_0x586493+':\x20'+_0x35c9d9[_0x5724ac(0xff)]);}}async[a0_0x4a8135(0x13f)](_0x5cbcf6,_0x4ed61f,_0x41f1a6){const _0x32b16d=a0_0x4a8135,_0x131c45=this[_0x32b16d(0x153)]['getWorkingDirectory'](_0x41f1a6),_0x3f46fa=this[_0x32b16d(0x106)](_0x5cbcf6,_0x131c45),_0x1d89af=this[_0x32b16d(0x106)](_0x4ed61f,_0x131c45),_0x113624=this['directoryAccessManager'][_0x32b16d(0x172)](_0x3f46fa,_0x41f1a6);if(!_0x113624['allowed'])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x113624['reason']+'\x20('+_0x113624['path']+')');const _0x262d97=this['directoryAccessManager']['validateWriteAccess'](_0x1d89af,_0x41f1a6);if(!_0x262d97['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x262d97[_0x32b16d(0x16f)]+'\x20('+_0x262d97['path']+')');try{const _0x588ae9=await a0_0xa233b7['stat'](_0x3f46fa),_0x24646e=a0_0x291fbd['dirname'](_0x1d89af);await a0_0xa233b7['mkdir'](_0x24646e,{'recursive':!![]}),await a0_0xa233b7[_0x32b16d(0x130)](_0x3f46fa,_0x1d89af);const _0x1af727=this[_0x32b16d(0x153)][_0x32b16d(0xf3)](_0x3f46fa,_0x41f1a6),_0x174a00=this[_0x32b16d(0x153)]['createRelativePath'](_0x1d89af,_0x41f1a6);return{'success':!![],'action':'move','sourcePath':_0x1af727,'destPath':_0x174a00,'fullSourcePath':_0x3f46fa,'fullDestPath':_0x1d89af,'size':_0x588ae9['size'],'message':'Moved\x20'+_0x5cbcf6+_0x32b16d(0x116)+_0x4ed61f};}catch(_0x23fe05){throw new Error(_0x32b16d(0x160)+_0x5cbcf6+'\x20to\x20'+_0x4ed61f+':\x20'+_0x23fe05[_0x32b16d(0xff)]);}}async['createDirectory'](_0x8b4ee1,_0x2d2ba1){const _0x47960e=a0_0x4a8135,_0x4bfa97=this[_0x47960e(0x153)][_0x47960e(0x15b)](_0x2d2ba1),_0x3be836=this['resolvePath'](_0x8b4ee1,_0x4bfa97),_0x13b7e4=this['directoryAccessManager'][_0x47960e(0xfd)](_0x3be836,_0x2d2ba1);if(!_0x13b7e4[_0x47960e(0x145)])throw new Error(_0x47960e(0x148)+_0x13b7e4['reason']+'\x20('+_0x13b7e4[_0x47960e(0xe9)]+')');try{await a0_0xa233b7['mkdir'](_0x3be836,{'recursive':!![]});const _0x32772e=this['directoryAccessManager'][_0x47960e(0xf3)](_0x3be836,_0x2d2ba1);return{'success':!![],'action':'create-dir','directory':_0x32772e,'fullPath':_0x3be836,'message':_0x47960e(0x12d)+_0x8b4ee1};}catch(_0x357e2e){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x8b4ee1+':\x20'+_0x357e2e[_0x47960e(0xff)]);}}async[a0_0x4a8135(0x16c)](_0x500883,_0x282379){const _0x283e3b=a0_0x4a8135,_0xe6159=this[_0x283e3b(0x153)][_0x283e3b(0x15b)](_0x282379),_0x20847b=this['resolvePath'](_0x500883,_0xe6159),_0x47e38d=this['directoryAccessManager'][_0x283e3b(0x172)](_0x20847b,_0x282379);if(!_0x47e38d[_0x283e3b(0x145)])throw new Error('Read\x20access\x20denied:\x20'+_0x47e38d['reason']+'\x20('+_0x47e38d[_0x283e3b(0xe9)]+')');try{const _0x11da56=await a0_0xa233b7['readdir'](_0x20847b,{'withFileTypes':!![]}),_0x2f81ac=[];for(const _0x3908c9 of _0x11da56){const _0x5a18dd=a0_0x291fbd['join'](_0x20847b,_0x3908c9[_0x283e3b(0x128)]),_0xfacd8f=await a0_0xa233b7['stat'](_0x5a18dd);_0x2f81ac[_0x283e3b(0x103)]({'name':_0x3908c9[_0x283e3b(0x128)],'type':_0x3908c9['isDirectory']()?'directory':_0x283e3b(0xec),'size':_0x3908c9[_0x283e3b(0xe1)]()?_0xfacd8f[_0x283e3b(0x12e)]:undefined,'lastModified':_0xfacd8f['mtime'][_0x283e3b(0xe4)](),'permissions':_0xfacd8f['mode'],'isSymlink':_0x3908c9['isSymbolicLink']()});}const _0x5c6e31=this['directoryAccessManager']['createRelativePath'](_0x20847b,_0x282379);return{'success':!![],'action':_0x283e3b(0x13a),'directory':_0x5c6e31,'fullPath':_0x20847b,'contents':_0x2f81ac,'totalItems':_0x2f81ac['length'],'directories':_0x2f81ac[_0x283e3b(0xeb)](_0x304053=>_0x304053['type']===_0x283e3b(0x14c))['length'],'files':_0x2f81ac['filter'](_0xcdbe34=>_0xcdbe34[_0x283e3b(0x14b)]==='file')[_0x283e3b(0x14e)],'message':'Listed\x20'+_0x2f81ac[_0x283e3b(0x14e)]+_0x283e3b(0x13c)+_0x500883};}catch(_0x3241da){throw new Error(_0x283e3b(0x146)+_0x500883+':\x20'+_0x3241da['message']);}}async['checkExists'](_0x248409,_0x3d3ae0){const _0x23e4b9=a0_0x4a8135,_0x3085fd=this['directoryAccessManager']['getWorkingDirectory'](_0x3d3ae0),_0x2259dd=this[_0x23e4b9(0x106)](_0x248409,_0x3085fd),_0x5cb5ab=this['directoryAccessManager']['validateReadAccess'](_0x2259dd,_0x3d3ae0);if(!_0x5cb5ab[_0x23e4b9(0x145)])throw new Error('Read\x20access\x20denied:\x20'+_0x5cb5ab['reason']+'\x20('+_0x5cb5ab[_0x23e4b9(0xe9)]+')');try{const _0x57b79b=await a0_0xa233b7['stat'](_0x2259dd),_0x416867=this['directoryAccessManager'][_0x23e4b9(0xf3)](_0x2259dd,_0x3d3ae0);return{'success':!![],'action':_0x23e4b9(0xe7),'filePath':_0x416867,'fullPath':_0x2259dd,'exists':!![],'type':_0x57b79b[_0x23e4b9(0x157)]()?'directory':_0x23e4b9(0xec),'message':_0x248409+'\x20exists\x20as\x20'+(_0x57b79b[_0x23e4b9(0x157)]()?'directory':_0x23e4b9(0xec))};}catch(_0x25217f){if(_0x25217f[_0x23e4b9(0x15f)]===_0x23e4b9(0x140)){const _0x412aad=this[_0x23e4b9(0x153)][_0x23e4b9(0xf3)](_0x2259dd,_0x3d3ae0);return{'success':!![],'action':'exists','filePath':_0x412aad,'fullPath':_0x2259dd,'exists':![],'message':_0x248409+_0x23e4b9(0x10d)};}throw new Error(_0x23e4b9(0x16b)+_0x248409+':\x20'+_0x25217f[_0x23e4b9(0xff)]);}}async[a0_0x4a8135(0x10a)](_0x22a14d,_0x335e44){const _0x49a790=a0_0x4a8135,_0x5ccf5f=this['directoryAccessManager'][_0x49a790(0x15b)](_0x335e44),_0x17c21c=this[_0x49a790(0x106)](_0x22a14d,_0x5ccf5f),_0x445633=this['directoryAccessManager'][_0x49a790(0x172)](_0x17c21c,_0x335e44);if(!_0x445633['allowed'])throw new Error(_0x49a790(0x154)+_0x445633['reason']+'\x20('+_0x445633[_0x49a790(0xe9)]+')');try{const _0x5c2a75=await a0_0xa233b7['stat'](_0x17c21c),_0x3c660b=this['directoryAccessManager']['createRelativePath'](_0x17c21c,_0x335e44);return{'success':!![],'action':_0x49a790(0x152),'filePath':_0x3c660b,'fullPath':_0x17c21c,'stats':{'size':_0x5c2a75['size'],'type':_0x5c2a75[_0x49a790(0x157)]()?'directory':'file','lastModified':_0x5c2a75[_0x49a790(0xf7)][_0x49a790(0xe4)](),'lastAccessed':_0x5c2a75['atime']['toISOString'](),'created':_0x5c2a75['birthtime'][_0x49a790(0xe4)](),'permissions':_0x5c2a75['mode'],'isSymlink':_0x5c2a75[_0x49a790(0x168)]()},'message':_0x49a790(0x101)+_0x22a14d};}catch(_0x26cd2d){throw new Error(_0x49a790(0x11e)+_0x22a14d+':\x20'+_0x26cd2d['message']);}}['resolvePath'](_0x40165b,_0x22defa){const _0x58f948=a0_0x4a8135;if(a0_0x291fbd['isAbsolute'](_0x40165b))return a0_0x291fbd[_0x58f948(0xf9)](_0x40165b);return a0_0x291fbd[_0x58f948(0xf6)](_0x22defa,_0x40165b);}[a0_0x4a8135(0xf4)](_0x3eb273,_0x1c8d10,_0x496a0f='read'){const _0x9470da=a0_0x4a8135,_0x2d032c=_0x496a0f===_0x9470da(0x13b)?this[_0x9470da(0x153)]['validateWriteAccess'](_0x3eb273,_0x1c8d10):this['directoryAccessManager']['validateReadAccess'](_0x3eb273,_0x1c8d10);if(!_0x2d032c[_0x9470da(0x145)])throw new Error(_0x496a0f+'\x20access\x20denied:\x20'+_0x2d032c['reason']+'\x20('+_0x2d032c['path']+')');return _0x2d032c;}[a0_0x4a8135(0x159)](_0x121998){const _0x1814b3=a0_0x4a8135,_0x31b99c=a0_0x291fbd['extname'](_0x121998)[_0x1814b3(0x105)]();if(this['blockedExtensions'][_0x1814b3(0xfc)](_0x31b99c))return![];if(this['allowedExtensions']&&!this[_0x1814b3(0x155)][_0x1814b3(0xfc)](_0x31b99c))return![];return!![];}[a0_0x4a8135(0x16e)](_0x19b137,_0x4f0ef1,_0x12dc1f){const _0x427a00=a0_0x4a8135,_0xa6d44b={'timestamp':new Date()['toISOString'](),'agentId':_0x12dc1f,'action':_0x19b137[_0x427a00(0x14b)],'filePath':_0x19b137[_0x427a00(0x156)]||_0x19b137['outputPath']||_0x19b137['directory'],'success':_0x4f0ef1['success'],'size':_0x4f0ef1[_0x427a00(0x12e)]};this[_0x427a00(0x151)]['push'](_0xa6d44b),this[_0x427a00(0x151)][_0x427a00(0x14e)]>0xc8&&(this['operationHistory']=this[_0x427a00(0x151)][_0x427a00(0x110)](-0xc8));}[a0_0x4a8135(0x16d)](){const _0x4028f1=a0_0x4a8135;return[_0x4028f1(0x147),'write',_0x4028f1(0xef),_0x4028f1(0x114),'copy','move','create-dir',_0x4028f1(0x13a),'exists',_0x4028f1(0x152)];}['getParameterSchema'](){const _0xddf9ec=a0_0x4a8135;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0xddf9ec(0x138),'enum':this[_0xddf9ec(0x16d)]()},'filePath':{'type':_0xddf9ec(0x138)},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':_0xddf9ec(0x138)},'directory':{'type':_0xddf9ec(0x138)},'content':{'type':'string'},'encoding':{'type':_0xddf9ec(0x138)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x1095f8=null){const _0xc29acc=a0_0x4a8135;if(_0x1095f8)return this['operationHistory'][_0xc29acc(0xeb)](_0x503c94=>_0x503c94['agentId']===_0x1095f8);return[...this[_0xc29acc(0x151)]];}}function a0_0x16d8(_0x361deb,_0x372a6c){_0x361deb=_0x361deb-0xe1;const _0x4755a0=a0_0x4755();let _0x16d8df=_0x4755a0[_0x361deb];if(a0_0x16d8['qiyGGp']===undefined){var _0x4bf62e=function(_0x89574d){const _0x124c58='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14816d='',_0x2d08cc='';for(let _0xa233b7=0x0,_0x291fbd,_0x17ea40,_0x3cf2f4=0x0;_0x17ea40=_0x89574d['charAt'](_0x3cf2f4++);~_0x17ea40&&(_0x291fbd=_0xa233b7%0x4?_0x291fbd*0x40+_0x17ea40:_0x17ea40,_0xa233b7++%0x4)?_0x14816d+=String['fromCharCode'](0xff&_0x291fbd>>(-0x2*_0xa233b7&0x6)):0x0){_0x17ea40=_0x124c58['indexOf'](_0x17ea40);}for(let _0x3d13dd=0x0,_0x4f26d4=_0x14816d['length'];_0x3d13dd<_0x4f26d4;_0x3d13dd++){_0x2d08cc+='%'+('00'+_0x14816d['charCodeAt'](_0x3d13dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d08cc);};a0_0x16d8['qQuPCz']=_0x4bf62e,a0_0x16d8['uipKqL']={},a0_0x16d8['qiyGGp']=!![];}const _0x2ee41a=_0x4755a0[0x0],_0x2b20d8=_0x361deb+_0x2ee41a,_0x14ac0a=a0_0x16d8['uipKqL'][_0x2b20d8];return!_0x14ac0a?(_0x16d8df=a0_0x16d8['qQuPCz'](_0x16d8df),a0_0x16d8['uipKqL'][_0x2b20d8]=_0x16d8df):_0x16d8df=_0x14ac0a,_0x16d8df;}export default FileSystemTool;
|
|
1
|
+
const a0_0x3635c5=a0_0x4aa5;function a0_0x4aa5(_0x4e252f,_0x5eb69b){_0x4e252f=_0x4e252f-0x154;const _0x94aaa=a0_0x94aa();let _0x4aa502=_0x94aaa[_0x4e252f];if(a0_0x4aa5['RzzhBG']===undefined){var _0x73a1b9=function(_0x57cb56){const _0x29e31b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20a6c2='',_0x40468f='';for(let _0x44f065=0x0,_0x482eec,_0x5300ea,_0x1ef9b1=0x0;_0x5300ea=_0x57cb56['charAt'](_0x1ef9b1++);~_0x5300ea&&(_0x482eec=_0x44f065%0x4?_0x482eec*0x40+_0x5300ea:_0x5300ea,_0x44f065++%0x4)?_0x20a6c2+=String['fromCharCode'](0xff&_0x482eec>>(-0x2*_0x44f065&0x6)):0x0){_0x5300ea=_0x29e31b['indexOf'](_0x5300ea);}for(let _0x1ce9a0=0x0,_0x5ae9f1=_0x20a6c2['length'];_0x1ce9a0<_0x5ae9f1;_0x1ce9a0++){_0x40468f+='%'+('00'+_0x20a6c2['charCodeAt'](_0x1ce9a0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40468f);};a0_0x4aa5['YtsFzR']=_0x73a1b9,a0_0x4aa5['lDNetj']={},a0_0x4aa5['RzzhBG']=!![];}const _0x20e960=_0x94aaa[0x0],_0x1cf5c5=_0x4e252f+_0x20e960,_0x213a4a=a0_0x4aa5['lDNetj'][_0x1cf5c5];return!_0x213a4a?(_0x4aa502=a0_0x4aa5['YtsFzR'](_0x4aa502),a0_0x4aa5['lDNetj'][_0x1cf5c5]=_0x4aa502):_0x4aa502=_0x213a4a,_0x4aa502;}(function(_0x3ba273,_0x4fc90f){const _0x656bc4=a0_0x4aa5,_0x559eda=_0x3ba273();while(!![]){try{const _0x20a7a1=-parseInt(_0x656bc4(0x1bc))/0x1*(parseInt(_0x656bc4(0x199))/0x2)+-parseInt(_0x656bc4(0x155))/0x3+parseInt(_0x656bc4(0x16b))/0x4*(-parseInt(_0x656bc4(0x1e2))/0x5)+-parseInt(_0x656bc4(0x174))/0x6+-parseInt(_0x656bc4(0x1a1))/0x7*(parseInt(_0x656bc4(0x1d5))/0x8)+-parseInt(_0x656bc4(0x16d))/0x9+parseInt(_0x656bc4(0x175))/0xa;if(_0x20a7a1===_0x4fc90f)break;else _0x559eda['push'](_0x559eda['shift']());}catch(_0x1271da){_0x559eda['push'](_0x559eda['shift']());}}}(a0_0x94aa,0xe780b));import{BaseTool}from'./baseTool.js';import a0_0x20a6c2 from'../utilities/tagParser.js';import a0_0x40468f from'../utilities/directoryAccessManager.js';function a0_0x94aa(){const _0x18e348=['rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','tgLZDgvKia','y3DK','A2v5CW','ihrVia','rMfPBgvKihrVihjLywqGzMLSzsa','ywDLBNrjza','ywXSB3DLza','CMf3q29UDgvUDa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHPC3rZ','nZuYmteYnu1sEfD1va','y3jLyxrLuMvSyxrPDMvqyxrO','odq2nZvXt012z2W','Bw92zuzPBgu','zgLYBMfTzq','DhjPBq','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','B2jQzwn0','rMfPBgvKihrVig1VDMuG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29WEuzPBgu','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','BgvUz3rO','ChvZAa','DgLTzw91Da','CM91BMq','zgLYzwn0B3j5','AxngAwXL','zgvZDc1WyxrO','BwvZC2fNzq','yxbWzw5KrMLSzq','BxrPBwu','DxrMoa','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','ngnJA3PsvG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','mtm1nZeZndnJr25pAfK','DMfSAwrHDgvxCML0zufJy2vZCW','C3vJy2vZCW','BM93','z2v0v29YA2LUz0rPCMvJDg9YEq','zgvSzxrL','Bwf4rMLSzvnPEMu','mtaWndm0nJburwHPENm','nZiXmtm5ntbNBNHotxO','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','CMvHC29U','tw92zwqG','zgvSzxrLrMLSzq','Aw5JBhvKzxm','Bw92zq','BwTKAxi','y3jLyxrLlwrPCNm','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','lMrLBgv0zwqTyMfJA3vWlq','AxneAxjLy3rVCNK','AxnbCNjHEq','C3rYAw5N','zMLSDgvY','y3jLyxrLrgLYzwn0B3j5','zw50CMLLCW','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','BwfW','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','DMfSAwrHDgvszwfKqwnJzxnZ','yxjYyxK','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C3vIC3rYAw5N','AxntEw1IB2XPy0XPBMS','lMv4zq','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','zxH0BMfTzq','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','CgfYC2vbDhrYAwj1DgvZ','y29WEq','B3v0Chv0lxbHDgG','D3jPDgu','Dhj1zq','qwn0Aw9Uia','otC2ntzKz0TXrfi','q29WAwvKia','C3rHDa','B3v0Chv0ugf0Aa','C3rHDhm','ywnJzxnZ','C291CMnLlxbHDgG','C291CMnLugf0Aa','otq3ndKYn3Huy3n1Aq','y2HLy2TfEgLZDhm','y3jLyxrLrgLYCW','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','zMLSzvbHDgG','yxbWzw5K','z2v0rMLSzvn0yxrZ','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','ywn0Aw9UCW','zMLSzs1WyxrO','zgvIDwC','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','yxbWzw5Kvg9gAwXL','DMfSAwrHDgvqyxrOqwnJzxnZ','Bg9N','BgLZDa','ru5pru5u','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','q3jLyxrLzcbKAxjLy3rVCNKG','igrVzxmGBM90igv4Axn0','Bg9Nz2vY','y29UDgvUDa','ywrKvg9iAxn0B3j5','yM9VBgvHBG','qxbWzw5KzwqG','AM9PBG','nhHqBNbHBq','igj5DgvZihrVia','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','zMLSzq','uMv0CMLLDMvKihn0yxrZigzVCIa','CMvHzezPBgu','y3jLyxrLlwrPCG','zw5JB2rPBMC','zgvZDfbHDgG','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','CMvZB2X2zvbHDgG','CMvXDwLYzxnqCM9Qzwn0','DhLWzq','CMvHza','D3jPDgvgAwXL','u291CMnLigzPBguGDg9VigXHCMDLoIa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','rMfPBgvKihrVignVChKG','C2L6zq','v3jVDguG','Cgf0Aa','B3bLCMf0Aw9UsgLZDg9YEq','y29Kzq','tufyx0zjtevFu0LArq','oeLtEufHrW','BMfTzq'];a0_0x94aa=function(){return _0x18e348;};return a0_0x94aa();}import a0_0x44f065 from'fs/promises';import a0_0x482eec from'path';import a0_0x5300ea from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x1ef9b1={},_0x1ce9a0=null){const _0x108e2b=a0_0x4aa5;super(_0x1ef9b1,_0x1ce9a0),this[_0x108e2b(0x1c8)]=!![],this['isAsync']=![],this['timeout']=_0x1ef9b1[_0x108e2b(0x161)]||0x7530,this[_0x108e2b(0x176)]=_0x1ef9b1['maxConcurrentOperations']||0x5,this[_0x108e2b(0x173)]=_0x1ef9b1['maxFileSize']||SYSTEM_DEFAULTS[_0x108e2b(0x1d4)],this['allowedExtensions']=_0x1ef9b1['allowedExtensions']||null,this['blockedExtensions']=_0x1ef9b1['blockedExtensions']||[_0x108e2b(0x18f),'.bat','.cmd','.scr','.com'],this['allowedDirectories']=_0x1ef9b1['allowedDirectories']||null,this[_0x108e2b(0x1d2)]=[],this['directoryAccessManager']=new a0_0x40468f(_0x1ef9b1,_0x1ce9a0);}['getDescription'](){const _0x238097=a0_0x4aa5;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[_0x238097(0x162)](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';}['parseParameters'](_0x5ae9f1){const _0x2c83fe=a0_0x4aa5;try{const _0x48b9fa={},_0x581f27=[];this['logger']?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x5ae9f1['length'],'contentPreview':_0x5ae9f1[_0x2c83fe(0x18d)](0x0,0xc8)});const _0x2fcdff=['read','delete','copy',_0x2c83fe(0x17b),'create-dir',_0x2c83fe(0x1b1),_0x2c83fe(0x1e1),_0x2c83fe(0x19d),_0x2c83fe(0x1a6)];for(const _0x44231b of _0x2fcdff){const _0x5e449d=a0_0x20a6c2[_0x2c83fe(0x16a)](_0x5ae9f1,_0x44231b);for(const _0x2ed219 of _0x5e449d){const _0x1bbb4d={'type':_0x44231b,..._0x2ed219['attributes']};_0x1bbb4d['file-path']&&(_0x1bbb4d[_0x2c83fe(0x1a5)]=_0x1bbb4d[_0x2c83fe(0x1aa)],delete _0x1bbb4d['file-path']),_0x1bbb4d['output-path']&&(_0x1bbb4d['outputPath']=_0x1bbb4d['output-path'],delete _0x1bbb4d['output-path']),_0x1bbb4d[_0x2c83fe(0x19f)]&&(_0x1bbb4d['sourcePath']=_0x1bbb4d['source-path'],delete _0x1bbb4d['source-path']),_0x1bbb4d['dest-path']&&(_0x1bbb4d[_0x2c83fe(0x1c5)]=_0x1bbb4d[_0x2c83fe(0x165)],delete _0x1bbb4d[_0x2c83fe(0x165)]),_0x1bbb4d['create-dirs']&&(_0x1bbb4d[_0x2c83fe(0x1a3)]=_0x1bbb4d['create-dirs']===_0x2c83fe(0x197),delete _0x1bbb4d['create-dirs']),_0x581f27['push'](_0x1bbb4d);}}const _0x46c39f=_0x5ae9f1['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x18bdfc of _0x46c39f){const _0x9df3c1=new a0_0x20a6c2(),_0x24281e=_0x9df3c1[_0x2c83fe(0x193)](_0x18bdfc[0x1]),_0x3c8249=_0x18bdfc[0x2][_0x2c83fe(0x158)](),_0x2496e0={'type':'write','content':_0x3c8249,..._0x24281e};_0x2496e0[_0x2c83fe(0x195)]&&(_0x2496e0['outputPath']=_0x2496e0[_0x2c83fe(0x195)],delete _0x2496e0['output-path']),_0x2496e0[_0x2c83fe(0x17d)]&&(_0x2496e0[_0x2c83fe(0x1a3)]=_0x2496e0[_0x2c83fe(0x17d)]===_0x2c83fe(0x197),delete _0x2496e0[_0x2c83fe(0x17d)]),_0x581f27[_0x2c83fe(0x160)](_0x2496e0);}const _0x2a0b86=_0x5ae9f1['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x41ee04 of _0x2a0b86){const _0x47f2bf=new a0_0x20a6c2(),_0x5bc865=_0x47f2bf['parseAttributes'](_0x41ee04[0x1]),_0x28327f=_0x41ee04[0x2][_0x2c83fe(0x158)](),_0x39989f={'type':_0x2c83fe(0x1a6),'content':_0x28327f,..._0x5bc865};_0x39989f[_0x2c83fe(0x1aa)]&&(_0x39989f[_0x2c83fe(0x1a5)]=_0x39989f['file-path'],delete _0x39989f[_0x2c83fe(0x1aa)]),_0x581f27[_0x2c83fe(0x160)](_0x39989f);}return _0x48b9fa['actions']=_0x581f27,_0x48b9fa[_0x2c83fe(0x1df)]=_0x5ae9f1[_0x2c83fe(0x158)](),this[_0x2c83fe(0x1b6)]?.[_0x2c83fe(0x1ab)](_0x2c83fe(0x188),{'totalActions':_0x581f27['length'],'actionTypes':_0x581f27[_0x2c83fe(0x187)](_0x503535=>_0x503535[_0x2c83fe(0x1c9)]),'actions':_0x581f27[_0x2c83fe(0x187)](_0x385879=>({'type':_0x385879['type'],'filePath':_0x385879[_0x2c83fe(0x1a5)],'outputPath':_0x385879[_0x2c83fe(0x19c)],'hasContent':!!_0x385879[_0x2c83fe(0x1b7)]}))}),_0x48b9fa;}catch(_0xdfbf48){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0xdfbf48['message']);}}[a0_0x3635c5(0x16c)](){const _0x1216d6=a0_0x3635c5;return[_0x1216d6(0x1a9)];}['customValidateParameters'](_0xe6fcf4){const _0xc268d8=a0_0x3635c5,_0x1c187a=[];if(!_0xe6fcf4[_0xc268d8(0x1a9)]||!Array[_0xc268d8(0x181)](_0xe6fcf4[_0xc268d8(0x1a9)])||_0xe6fcf4['actions'][_0xc268d8(0x15f)]===0x0)_0x1c187a[_0xc268d8(0x160)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x355e3d,_0x13dc42]of _0xe6fcf4['actions'][_0xc268d8(0x185)]()){if(!_0x13dc42[_0xc268d8(0x1c9)]){_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x13dc42['type']){case _0xc268d8(0x1ca):case _0xc268d8(0x172):case _0xc268d8(0x1e1):case _0xc268d8(0x19d):!_0x13dc42[_0xc268d8(0x1a5)]&&_0x1c187a['push'](_0xc268d8(0x198)+(_0x355e3d+0x1)+_0xc268d8(0x15e)+_0x13dc42['type']);break;case _0xc268d8(0x196):!_0x13dc42[_0xc268d8(0x19c)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x13dc42[_0xc268d8(0x1b7)]&&_0x13dc42['content']!==''&&_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0xc268d8(0x1a6):!_0x13dc42[_0xc268d8(0x1a5)]&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1b3));!_0x13dc42['content']&&_0x13dc42['content']!==''&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x13dc42['sourcePath']&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1ac)+_0x13dc42['type']);!_0x13dc42[_0xc268d8(0x1c5)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x13dc42['type']);break;case'create-dir':case _0xc268d8(0x1b1):!_0x13dc42[_0xc268d8(0x163)]&&_0x1c187a[_0xc268d8(0x160)](_0xc268d8(0x198)+(_0x355e3d+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x13dc42['type']);break;default:_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x1cd)+_0x13dc42['type']);}_0x13dc42['filePath']&&!this['isAllowedFileExtension'](_0x13dc42['filePath'])&&_0x1c187a[_0xc268d8(0x160)]('Action\x20'+(_0x355e3d+0x1)+_0xc268d8(0x190)+a0_0x482eec[_0xc268d8(0x191)](_0x13dc42['filePath'])),_0x13dc42[_0xc268d8(0x19c)]&&!this[_0xc268d8(0x159)](_0x13dc42[_0xc268d8(0x19c)])&&_0x1c187a['push']('Action\x20'+(_0x355e3d+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x482eec['extname'](_0x13dc42['outputPath']));}return{'valid':_0x1c187a[_0xc268d8(0x15f)]===0x0,'errors':_0x1c187a};}async['execute'](_0x270e02,_0x453135){const _0x5a612d=a0_0x3635c5;if(!_0x270e02||typeof _0x270e02!==_0x5a612d(0x15a))throw new Error(_0x5a612d(0x1a8));const {actions:_0x55a7fa}=_0x270e02;if(!_0x55a7fa)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object[_0x5a612d(0x1da)](_0x270e02)));if(!Array[_0x5a612d(0x181)](_0x55a7fa))throw new Error('Invalid\x20parameters:\x20actions\x20must\x20be\x20an\x20array.\x20Received\x20type:\x20'+typeof _0x55a7fa);if(_0x55a7fa['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x17a0c7,agentId:_0xf5c009,directoryAccess:_0x22397f}=_0x453135,_0x4fbf84=_0x22397f||this[_0x5a612d(0x1e0)]['createDirectoryAccess']({'workingDirectory':_0x17a0c7||process[_0x5a612d(0x1d9)](),'writeEnabledDirectories':[_0x17a0c7||process['cwd']()],'restrictToProject':!![]});_0x22397f&&_0x22397f['workingDirectory']?(console[_0x5a612d(0x1b0)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x22397f['workingDirectory']),console[_0x5a612d(0x1b0)](_0x5a612d(0x1bf),JSON['stringify'](_0x22397f,null,0x2))):(console[_0x5a612d(0x1b0)](_0x5a612d(0x18b),_0x17a0c7||process['cwd']()),console[_0x5a612d(0x1b0)](_0x5a612d(0x1a4),_0x22397f),console[_0x5a612d(0x1b0)](_0x5a612d(0x1d7),_0x17a0c7));const _0x44d922=[];for(const _0x5202f0 of _0x55a7fa){try{let _0x13e84a;switch(_0x5202f0['type']){case'read':_0x13e84a=await this[_0x5a612d(0x1c2)](_0x5202f0[_0x5a612d(0x1a5)],_0x4fbf84,_0x5202f0[_0x5a612d(0x1c4)]);break;case _0x5a612d(0x196):_0x13e84a=await this['writeFile'](_0x5202f0[_0x5a612d(0x19c)],_0x5202f0[_0x5a612d(0x1b7)],_0x4fbf84,{'encoding':_0x5202f0[_0x5a612d(0x1c4)],'createDirs':_0x5202f0[_0x5a612d(0x1a3)]});break;case'append':_0x13e84a=await this['appendToFile'](_0x5202f0['filePath'],_0x5202f0['content'],_0x4fbf84,_0x5202f0[_0x5a612d(0x1c4)]);break;case'delete':_0x13e84a=await this['deleteFile'](_0x5202f0[_0x5a612d(0x1a5)],_0x4fbf84);break;case'copy':_0x13e84a=await this[_0x5a612d(0x15d)](_0x5202f0[_0x5a612d(0x1a0)],_0x5202f0[_0x5a612d(0x1c5)],_0x4fbf84);break;case'move':_0x13e84a=await this['moveFile'](_0x5202f0[_0x5a612d(0x1a0)],_0x5202f0[_0x5a612d(0x1c5)],_0x4fbf84);break;case _0x5a612d(0x1c3):_0x13e84a=await this[_0x5a612d(0x184)](_0x5202f0[_0x5a612d(0x163)],_0x4fbf84);break;case'list':_0x13e84a=await this['listDirectory'](_0x5202f0['directory'],_0x4fbf84);break;case'exists':_0x13e84a=await this[_0x5a612d(0x1a2)](_0x5202f0['filePath'],_0x4fbf84);break;case _0x5a612d(0x19d):_0x13e84a=await this[_0x5a612d(0x1a7)](_0x5202f0['filePath'],_0x4fbf84);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x5202f0[_0x5a612d(0x1c9)]);}_0x44d922[_0x5a612d(0x160)](_0x13e84a),this['addToHistory'](_0x5202f0,_0x13e84a,_0x453135[_0x5a612d(0x1dd)]);}catch(_0x4f82e5){const _0x40c195={'success':![],'action':_0x5202f0[_0x5a612d(0x1c9)],'error':_0x4f82e5['message'],'filePath':_0x5202f0['filePath']||_0x5202f0['outputPath']||_0x5202f0[_0x5a612d(0x163)]};_0x44d922['push'](_0x40c195),this[_0x5a612d(0x1b8)](_0x5202f0,_0x40c195,_0x453135[_0x5a612d(0x1dd)]);}}return{'success':!![],'actions':_0x44d922,'executedActions':_0x55a7fa[_0x5a612d(0x15f)],'toolUsed':'filesys'};}async['readFile'](_0x4a6f95,_0x23c55f,_0x2c0ccc=a0_0x3635c5(0x169)){const _0x29a3b9=a0_0x3635c5,_0x1f028c=this[_0x29a3b9(0x1e0)][_0x29a3b9(0x171)](_0x23c55f),_0x18ea37=this[_0x29a3b9(0x1c7)](_0x4a6f95,_0x1f028c),_0x47a440=this[_0x29a3b9(0x1e0)][_0x29a3b9(0x189)](_0x18ea37,_0x23c55f);if(!_0x47a440[_0x29a3b9(0x1de)])throw new Error(_0x29a3b9(0x15c)+_0x47a440['reason']+'\x20('+_0x47a440['path']+')');try{const _0x1f1bcf=await a0_0x44f065['stat'](_0x18ea37);if(_0x1f1bcf['size']>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x1f1bcf[_0x29a3b9(0x1cf)]+'\x20bytes\x20(max\x20'+this[_0x29a3b9(0x173)]+')');const _0x2e54d9=await a0_0x44f065['readFile'](_0x18ea37,_0x2c0ccc);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x29a3b9(0x154)](_0x18ea37,_0x23c55f),'content':_0x2e54d9,'size':_0x1f1bcf[_0x29a3b9(0x1cf)],'encoding':_0x2c0ccc,'lastModified':_0x1f1bcf['mtime']['toISOString'](),'message':'Read\x20'+_0x1f1bcf[_0x29a3b9(0x1cf)]+'\x20bytes\x20from\x20'+_0x4a6f95};}catch(_0x4fa4dd){throw new Error(_0x29a3b9(0x1dc)+_0x4a6f95+':\x20'+_0x4fa4dd['message']);}}async[a0_0x3635c5(0x1cb)](_0x50b7ef,_0x3ef57c,_0x533183,_0x9e073e={}){const _0x4734e9=a0_0x3635c5,{encoding:encoding=_0x4734e9(0x169),createDirs:createDirs=!![]}=_0x9e073e,_0xf90b0b=this['directoryAccessManager']['getWorkingDirectory'](_0x533183),_0x30f9b1=this[_0x4734e9(0x1c7)](_0x50b7ef,_0xf90b0b),_0x19a666=this[_0x4734e9(0x1e0)]['validateWriteAccess'](_0x30f9b1,_0x533183);if(!_0x19a666['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x19a666['reason']+'\x20('+_0x19a666[_0x4734e9(0x1d1)]+')');try{const _0x3379cd=Buffer['byteLength'](_0x3ef57c,encoding);if(_0x3379cd>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x3379cd+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x13232d=a0_0x482eec[_0x4734e9(0x157)](_0x30f9b1);await a0_0x44f065[_0x4734e9(0x17c)](_0x13232d,{'recursive':!![]});}let _0x916511=null;try{await a0_0x44f065[_0x4734e9(0x19e)](_0x30f9b1),_0x916511=_0x30f9b1+'.backup-'+Date[_0x4734e9(0x170)](),await a0_0x44f065['copyFile'](_0x30f9b1,_0x916511);}catch{}await a0_0x44f065[_0x4734e9(0x1cb)](_0x30f9b1,_0x3ef57c,encoding);const _0x54d6f9=await a0_0x44f065[_0x4734e9(0x19b)](_0x30f9b1),_0x2eb3da=this[_0x4734e9(0x1e0)][_0x4734e9(0x154)](_0x30f9b1,_0x533183);return{'success':!![],'action':_0x4734e9(0x196),'outputPath':_0x2eb3da,'fullPath':_0x30f9b1,'size':_0x54d6f9[_0x4734e9(0x1cf)],'encoding':encoding,'backupPath':_0x916511?this['directoryAccessManager'][_0x4734e9(0x154)](_0x916511,_0x533183):null,'backupFullPath':_0x916511||null,'message':_0x4734e9(0x1d0)+_0x54d6f9[_0x4734e9(0x1cf)]+_0x4734e9(0x1bd)+_0x30f9b1};}catch(_0x4f53e9){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x30f9b1+':\x20'+_0x4f53e9['message']);}}async[a0_0x3635c5(0x1ae)](_0xe873c9,_0x4b3772,_0x5112fb,_0xa2b4d6=a0_0x3635c5(0x169)){const _0x496893=a0_0x3635c5,_0x15380f=this['directoryAccessManager']['getWorkingDirectory'](_0x5112fb),_0x4183b8=this['resolvePath'](_0xe873c9,_0x15380f),_0x36a822=this['directoryAccessManager']['validateWriteAccess'](_0x4183b8,_0x5112fb);if(!_0x36a822['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x36a822[_0x496893(0x177)]+'\x20('+_0x36a822['path']+')');try{let _0x404223=0x0;try{const _0x3fb025=await a0_0x44f065['stat'](_0x4183b8);_0x404223=_0x3fb025['size'];}catch{}const _0x2df46e=Buffer['byteLength'](_0x4b3772,_0xa2b4d6);if(_0x404223+_0x2df46e>this['maxFileSize'])throw new Error(_0x496893(0x192)+(_0x404223+_0x2df46e)+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');await a0_0x44f065[_0x496893(0x167)](_0x4183b8,_0x4b3772,_0xa2b4d6);const _0xac232c=await a0_0x44f065['stat'](_0x4183b8),_0x17e8a0=this['directoryAccessManager'][_0x496893(0x154)](_0x4183b8,_0x5112fb);return{'success':!![],'action':_0x496893(0x1a6),'filePath':_0x17e8a0,'fullPath':_0x4183b8,'appendedBytes':_0x2df46e,'totalSize':_0xac232c[_0x496893(0x1cf)],'encoding':_0xa2b4d6,'message':_0x496893(0x1ba)+_0x2df46e+_0x496893(0x1bd)+_0x4183b8};}catch(_0xd91728){throw new Error(_0x496893(0x186)+_0x4183b8+':\x20'+_0xd91728[_0x496893(0x166)]);}}async[a0_0x3635c5(0x179)](_0xc2000,_0xac742f){const _0x690d64=a0_0x3635c5,_0x13ee81=this['directoryAccessManager'][_0x690d64(0x171)](_0xac742f),_0x5f01d7=this['resolvePath'](_0xc2000,_0x13ee81),_0x3a9a8d=this['directoryAccessManager'][_0x690d64(0x16e)](_0x5f01d7,_0xac742f);if(!_0x3a9a8d[_0x690d64(0x1de)])throw new Error(_0x690d64(0x1be)+_0x3a9a8d[_0x690d64(0x177)]+'\x20('+_0x3a9a8d['path']+')');try{const _0x364990=await a0_0x44f065[_0x690d64(0x19b)](_0x5f01d7),_0x46177b=_0x5f01d7+_0x690d64(0x17f)+Date[_0x690d64(0x170)]();await a0_0x44f065['copyFile'](_0x5f01d7,_0x46177b),await a0_0x44f065['unlink'](_0x5f01d7);const _0x1ecd74=this[_0x690d64(0x1e0)]['createRelativePath'](_0x5f01d7,_0xac742f),_0x2aa6ae=this[_0x690d64(0x1e0)][_0x690d64(0x154)](_0x46177b,_0xac742f);return{'success':!![],'action':_0x690d64(0x172),'filePath':_0x1ecd74,'fullPath':_0x5f01d7,'size':_0x364990['size'],'backupPath':_0x2aa6ae,'backupFullPath':_0x46177b,'message':'Deleted\x20'+_0x5f01d7+'\x20(backup\x20created)'};}catch(_0x3e9264){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x5f01d7+':\x20'+_0x3e9264['message']);}}async[a0_0x3635c5(0x15d)](_0x382eb4,_0x4aca65,_0x165a3a){const _0x18b474=a0_0x3635c5,_0x42c247=this['directoryAccessManager']['getWorkingDirectory'](_0x165a3a),_0x298286=this[_0x18b474(0x1c7)](_0x382eb4,_0x42c247),_0x41e65e=this[_0x18b474(0x1c7)](_0x4aca65,_0x42c247),_0x53d270=this['directoryAccessManager'][_0x18b474(0x189)](_0x298286,_0x165a3a);if(!_0x53d270['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x53d270[_0x18b474(0x177)]+'\x20('+_0x53d270['path']+')');const _0x37e820=this[_0x18b474(0x1e0)]['validateWriteAccess'](_0x41e65e,_0x165a3a);if(!_0x37e820[_0x18b474(0x1de)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x37e820['reason']+'\x20('+_0x37e820['path']+')');try{const _0x20981e=await a0_0x44f065[_0x18b474(0x19b)](_0x298286);if(_0x20981e['size']>this[_0x18b474(0x173)])throw new Error(_0x18b474(0x1cc)+_0x20981e[_0x18b474(0x1cf)]+'\x20bytes');const _0x1f791f=a0_0x482eec['dirname'](_0x41e65e);await a0_0x44f065[_0x18b474(0x17c)](_0x1f791f,{'recursive':!![]}),await a0_0x44f065[_0x18b474(0x15d)](_0x298286,_0x41e65e);const _0x4851d0=this['directoryAccessManager'][_0x18b474(0x154)](_0x298286,_0x165a3a),_0x57b403=this['directoryAccessManager']['createRelativePath'](_0x41e65e,_0x165a3a);return{'success':!![],'action':'copy','sourcePath':_0x4851d0,'destPath':_0x57b403,'sourceFullPath':_0x298286,'destFullPath':_0x41e65e,'size':_0x20981e[_0x18b474(0x1cf)],'message':_0x18b474(0x19a)+_0x298286+_0x18b474(0x1db)+_0x41e65e};}catch(_0x240346){throw new Error(_0x18b474(0x1ce)+_0x298286+_0x18b474(0x1db)+_0x41e65e+':\x20'+_0x240346['message']);}}async[a0_0x3635c5(0x156)](_0x2bd134,_0x46b00f,_0xc85670){const _0x225802=a0_0x3635c5,_0x3b137c=this['directoryAccessManager']['getWorkingDirectory'](_0xc85670),_0x56a8e0=this[_0x225802(0x1c7)](_0x2bd134,_0x3b137c),_0x501357=this[_0x225802(0x1c7)](_0x46b00f,_0x3b137c),_0xb844c5=this[_0x225802(0x1e0)]['validateReadAccess'](_0x56a8e0,_0xc85670);if(!_0xb844c5[_0x225802(0x1de)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0xb844c5[_0x225802(0x177)]+'\x20('+_0xb844c5['path']+')');const _0x4ec87d=this[_0x225802(0x1e0)][_0x225802(0x16e)](_0x501357,_0xc85670);if(!_0x4ec87d[_0x225802(0x1de)])throw new Error(_0x225802(0x17e)+_0x4ec87d['reason']+'\x20('+_0x4ec87d[_0x225802(0x1d1)]+')');try{const _0x497061=await a0_0x44f065[_0x225802(0x19b)](_0x56a8e0),_0xff1a51=a0_0x482eec[_0x225802(0x157)](_0x501357);await a0_0x44f065['mkdir'](_0xff1a51,{'recursive':!![]}),await a0_0x44f065['rename'](_0x56a8e0,_0x501357);const _0x2fb9c8=this[_0x225802(0x1e0)]['createRelativePath'](_0x56a8e0,_0xc85670),_0x32639d=this[_0x225802(0x1e0)][_0x225802(0x154)](_0x501357,_0xc85670);return{'success':!![],'action':_0x225802(0x17b),'sourcePath':_0x2fb9c8,'destPath':_0x32639d,'fullSourcePath':_0x56a8e0,'fullDestPath':_0x501357,'size':_0x497061['size'],'message':_0x225802(0x178)+_0x2bd134+'\x20to\x20'+_0x46b00f};}catch(_0x14cea5){throw new Error(_0x225802(0x15b)+_0x2bd134+_0x225802(0x1db)+_0x46b00f+':\x20'+_0x14cea5['message']);}}async['createDirectory'](_0x3497ad,_0x402010){const _0x39c76a=a0_0x3635c5,_0x304962=this[_0x39c76a(0x1e0)][_0x39c76a(0x171)](_0x402010),_0x559201=this['resolvePath'](_0x3497ad,_0x304962),_0x71af56=this[_0x39c76a(0x1e0)][_0x39c76a(0x16e)](_0x559201,_0x402010);if(!_0x71af56['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x71af56['reason']+'\x20('+_0x71af56[_0x39c76a(0x1d1)]+')');try{await a0_0x44f065['mkdir'](_0x559201,{'recursive':!![]});const _0x34424b=this[_0x39c76a(0x1e0)]['createRelativePath'](_0x559201,_0x402010);return{'success':!![],'action':'create-dir','directory':_0x34424b,'fullPath':_0x559201,'message':_0x39c76a(0x1b4)+_0x3497ad};}catch(_0x53692c){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x3497ad+':\x20'+_0x53692c['message']);}}async['listDirectory'](_0x47a404,_0x5c3ffa){const _0x4057c7=a0_0x3635c5,_0x1e1165=this['directoryAccessManager']['getWorkingDirectory'](_0x5c3ffa),_0x2310a9=this['resolvePath'](_0x47a404,_0x1e1165),_0xbe5e3f=this[_0x4057c7(0x1e0)][_0x4057c7(0x189)](_0x2310a9,_0x5c3ffa);if(!_0xbe5e3f['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0xbe5e3f['reason']+'\x20('+_0xbe5e3f['path']+')');try{const _0x58c2b4=await a0_0x44f065['readdir'](_0x2310a9,{'withFileTypes':!![]}),_0x3b78a9=[];for(const _0x279d37 of _0x58c2b4){const _0x3ad26f=a0_0x482eec[_0x4057c7(0x1bb)](_0x2310a9,_0x279d37['name']),_0x5824da=await a0_0x44f065[_0x4057c7(0x19b)](_0x3ad26f);_0x3b78a9['push']({'name':_0x279d37[_0x4057c7(0x1d6)],'type':_0x279d37[_0x4057c7(0x180)]()?_0x4057c7(0x163):_0x4057c7(0x1c0),'size':_0x279d37[_0x4057c7(0x164)]()?_0x5824da[_0x4057c7(0x1cf)]:undefined,'lastModified':_0x5824da[_0x4057c7(0x168)]['toISOString'](),'permissions':_0x5824da['mode'],'isSymlink':_0x279d37[_0x4057c7(0x18e)]()});}const _0x5dc8c4=this['directoryAccessManager'][_0x4057c7(0x154)](_0x2310a9,_0x5c3ffa);return{'success':!![],'action':'list','directory':_0x5dc8c4,'fullPath':_0x2310a9,'contents':_0x3b78a9,'totalItems':_0x3b78a9['length'],'directories':_0x3b78a9['filter'](_0x5a7400=>_0x5a7400[_0x4057c7(0x1c9)]==='directory')[_0x4057c7(0x15f)],'files':_0x3b78a9[_0x4057c7(0x183)](_0x55cc79=>_0x55cc79['type']==='file')['length'],'message':_0x4057c7(0x1d8)+_0x3b78a9['length']+'\x20items\x20in\x20'+_0x47a404};}catch(_0x1b0b2a){throw new Error(_0x4057c7(0x1ad)+_0x47a404+':\x20'+_0x1b0b2a['message']);}}async['checkExists'](_0x27d456,_0x8a312b){const _0x51c7a3=a0_0x3635c5,_0x706ec0=this[_0x51c7a3(0x1e0)]['getWorkingDirectory'](_0x8a312b),_0x1884c0=this['resolvePath'](_0x27d456,_0x706ec0),_0xf67a3=this['directoryAccessManager'][_0x51c7a3(0x189)](_0x1884c0,_0x8a312b);if(!_0xf67a3[_0x51c7a3(0x1de)])throw new Error(_0x51c7a3(0x15c)+_0xf67a3[_0x51c7a3(0x177)]+'\x20('+_0xf67a3[_0x51c7a3(0x1d1)]+')');try{const _0x39a352=await a0_0x44f065['stat'](_0x1884c0),_0x1d529c=this['directoryAccessManager'][_0x51c7a3(0x154)](_0x1884c0,_0x8a312b);return{'success':!![],'action':_0x51c7a3(0x1e1),'filePath':_0x1d529c,'fullPath':_0x1884c0,'exists':!![],'type':_0x39a352[_0x51c7a3(0x180)]()?_0x51c7a3(0x163):'file','message':_0x27d456+'\x20exists\x20as\x20'+(_0x39a352['isDirectory']()?'directory':'file')};}catch(_0x1d7a03){if(_0x1d7a03[_0x51c7a3(0x1d3)]===_0x51c7a3(0x1b2)){const _0x4ffac2=this[_0x51c7a3(0x1e0)][_0x51c7a3(0x154)](_0x1884c0,_0x8a312b);return{'success':!![],'action':'exists','filePath':_0x4ffac2,'fullPath':_0x1884c0,'exists':![],'message':_0x27d456+_0x51c7a3(0x1b5)};}throw new Error(_0x51c7a3(0x1c6)+_0x27d456+':\x20'+_0x1d7a03['message']);}}async[a0_0x3635c5(0x1a7)](_0x2fb242,_0x8998eb){const _0x4d56e0=a0_0x3635c5,_0x462d70=this['directoryAccessManager']['getWorkingDirectory'](_0x8998eb),_0x1567ed=this[_0x4d56e0(0x1c7)](_0x2fb242,_0x462d70),_0xa44aa6=this[_0x4d56e0(0x1e0)][_0x4d56e0(0x189)](_0x1567ed,_0x8998eb);if(!_0xa44aa6[_0x4d56e0(0x1de)])throw new Error('Read\x20access\x20denied:\x20'+_0xa44aa6['reason']+'\x20('+_0xa44aa6[_0x4d56e0(0x1d1)]+')');try{const _0x2344cf=await a0_0x44f065[_0x4d56e0(0x19b)](_0x1567ed),_0x2de3d6=this['directoryAccessManager']['createRelativePath'](_0x1567ed,_0x8998eb);return{'success':!![],'action':_0x4d56e0(0x19d),'filePath':_0x2de3d6,'fullPath':_0x1567ed,'stats':{'size':_0x2344cf['size'],'type':_0x2344cf[_0x4d56e0(0x180)]()?'directory':'file','lastModified':_0x2344cf['mtime']['toISOString'](),'lastAccessed':_0x2344cf['atime']['toISOString'](),'created':_0x2344cf['birthtime']['toISOString'](),'permissions':_0x2344cf['mode'],'isSymlink':_0x2344cf[_0x4d56e0(0x18e)]()},'message':_0x4d56e0(0x1c1)+_0x2fb242};}catch(_0x21417d){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x2fb242+':\x20'+_0x21417d['message']);}}['resolvePath'](_0x10a8b0,_0x35899f){if(a0_0x482eec['isAbsolute'](_0x10a8b0))return a0_0x482eec['normalize'](_0x10a8b0);return a0_0x482eec['resolve'](_0x35899f,_0x10a8b0);}[a0_0x3635c5(0x1af)](_0x2758d8,_0x4a9aa9,_0x2f2c67=a0_0x3635c5(0x1ca)){const _0x5792b4=a0_0x3635c5,_0x1fbd92=_0x2f2c67==='write'?this['directoryAccessManager'][_0x5792b4(0x16e)](_0x2758d8,_0x4a9aa9):this[_0x5792b4(0x1e0)][_0x5792b4(0x189)](_0x2758d8,_0x4a9aa9);if(!_0x1fbd92['allowed'])throw new Error(_0x2f2c67+'\x20access\x20denied:\x20'+_0x1fbd92[_0x5792b4(0x177)]+'\x20('+_0x1fbd92[_0x5792b4(0x1d1)]+')');return _0x1fbd92;}[a0_0x3635c5(0x159)](_0x5b1cb9){const _0x13b476=a0_0x3635c5,_0x42827b=a0_0x482eec[_0x13b476(0x191)](_0x5b1cb9)['toLowerCase']();if(this['blockedExtensions'][_0x13b476(0x17a)](_0x42827b))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x13b476(0x17a)](_0x42827b))return![];return!![];}[a0_0x3635c5(0x1b8)](_0x13f950,_0x3824d3,_0x31331a){const _0x220ea7=a0_0x3635c5,_0x1275b0={'timestamp':new Date()['toISOString'](),'agentId':_0x31331a,'action':_0x13f950['type'],'filePath':_0x13f950[_0x220ea7(0x1a5)]||_0x13f950[_0x220ea7(0x19c)]||_0x13f950['directory'],'success':_0x3824d3[_0x220ea7(0x16f)],'size':_0x3824d3[_0x220ea7(0x1cf)]};this[_0x220ea7(0x1d2)][_0x220ea7(0x160)](_0x1275b0),this[_0x220ea7(0x1d2)][_0x220ea7(0x15f)]>0xc8&&(this['operationHistory']=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x1d7969=a0_0x3635c5;return['read','write',_0x1d7969(0x1a6),_0x1d7969(0x172),_0x1d7969(0x194),'move','create-dir',_0x1d7969(0x1b1),_0x1d7969(0x1e1),_0x1d7969(0x19d)];}['getParameterSchema'](){const _0x29ce0e=a0_0x3635c5;return{'type':'object','properties':{'actions':{'type':_0x29ce0e(0x18a),'minItems':0x1,'items':{'type':_0x29ce0e(0x15a),'properties':{'type':{'type':'string','enum':this[_0x29ce0e(0x18c)]()},'filePath':{'type':_0x29ce0e(0x182)},'outputPath':{'type':_0x29ce0e(0x182)},'sourcePath':{'type':_0x29ce0e(0x182)},'destPath':{'type':'string'},'directory':{'type':_0x29ce0e(0x182)},'content':{'type':_0x29ce0e(0x182)},'encoding':{'type':_0x29ce0e(0x182)},'createDirs':{'type':_0x29ce0e(0x1b9)}},'required':[_0x29ce0e(0x1c9)]}}},'required':['actions']};}['getOperationHistory'](_0x1ec591=null){const _0x1a1bc3=a0_0x3635c5;if(_0x1ec591)return this[_0x1a1bc3(0x1d2)][_0x1a1bc3(0x183)](_0x5eb8ab=>_0x5eb8ab[_0x1a1bc3(0x1dd)]===_0x1ec591);return[...this['operationHistory']];}}export default FileSystemTool;
|