@loxia-labs/loxia-autopilot-one 1.0.16 → 1.0.18
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 +5 -3
- 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/agentActivityService.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
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-Cb8CHAFw.css +1 -0
- package/web-ui/build/static/index-DL2-PyNX.js +367 -0
- package/web-ui/build/static/index-DFmFvOoy.css +0 -1
- package/web-ui/build/static/index-DOk0l6Kf.js +0 -348
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x11db4f=a0_0x4746;(function(_0x22fba7,_0x2dcb04){const _0x3cee1a=a0_0x4746,_0x323196=_0x22fba7();while(!![]){try{const _0x5adfc9=parseInt(_0x3cee1a(0x1b1))/0x1+parseInt(_0x3cee1a(0x1c2))/0x2+parseInt(_0x3cee1a(0x1de))/0x3*(-parseInt(_0x3cee1a(0x1b7))/0x4)+-parseInt(_0x3cee1a(0x1b3))/0x5*(-parseInt(_0x3cee1a(0x193))/0x6)+-parseInt(_0x3cee1a(0x1a7))/0x7*(-parseInt(_0x3cee1a(0x1ee))/0x8)+-parseInt(_0x3cee1a(0x1c5))/0x9+parseInt(_0x3cee1a(0x1f1))/0xa;if(_0x5adfc9===_0x2dcb04)break;else _0x323196['push'](_0x323196['shift']());}catch(_0x1b6c42){_0x323196['push'](_0x323196['shift']());}}}(a0_0x2026,0x4bc5f));import{promises as a0_0x2afda5}from'fs';import a0_0x1b8ed0 from'path';function a0_0x4746(_0x2720e2,_0x65d315){_0x2720e2=_0x2720e2-0x188;const _0x20269c=a0_0x2026();let _0x474650=_0x20269c[_0x2720e2];if(a0_0x4746['sKoTMn']===undefined){var _0x21fc85=function(_0x472b68){const _0x2c6d8b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2afda5='',_0x1b8ed0='';for(let _0x5c3a2f=0x0,_0x3dd1c2,_0x367aa5,_0x2ac30e=0x0;_0x367aa5=_0x472b68['charAt'](_0x2ac30e++);~_0x367aa5&&(_0x3dd1c2=_0x5c3a2f%0x4?_0x3dd1c2*0x40+_0x367aa5:_0x367aa5,_0x5c3a2f++%0x4)?_0x2afda5+=String['fromCharCode'](0xff&_0x3dd1c2>>(-0x2*_0x5c3a2f&0x6)):0x0){_0x367aa5=_0x2c6d8b['indexOf'](_0x367aa5);}for(let _0x45bb56=0x0,_0x12f228=_0x2afda5['length'];_0x45bb56<_0x12f228;_0x45bb56++){_0x1b8ed0+='%'+('00'+_0x2afda5['charCodeAt'](_0x45bb56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b8ed0);};a0_0x4746['cxTzug']=_0x21fc85,a0_0x4746['EXmljB']={},a0_0x4746['sKoTMn']=!![];}const _0x3e2bbd=_0x20269c[0x0],_0x1712f3=_0x2720e2+_0x3e2bbd,_0x1ddc95=a0_0x4746['EXmljB'][_0x1712f3];return!_0x1ddc95?(_0x474650=a0_0x4746['cxTzug'](_0x474650),a0_0x4746['EXmljB'][_0x1712f3]=_0x474650):_0x474650=_0x1ddc95,_0x474650;}import{exec as a0_0x5c3a2f}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x3dd1c2 from'../utilities/tagParser.js';const exec=promisify(a0_0x5c3a2f),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x11db4f(0x1ad),'VALID_MODES':[a0_0x11db4f(0x1ad),'fix',a0_0x11db4f(0x1c4)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x11db4f(0x1fa),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x11db4f(0x1c6)};function a0_0x2026(){const _0x126691=['zxHLyW','x2nVBxbHCMvwzxjZAw9UCW','icdIGkiG','Cgf0Aa','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','q1jfqvrfx0jbq0Tvufm','ugfJA2fNzsbUB3qGzM91BMq6ia','yNvPBgq','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','lIbnDxn0igjLig9UzsbVzJOG','revgqvvmvf9nt0rf','ndLABujxzgK','x3nHDgLZzMLLC1jHBMDL','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','BgvUz3rO','CgfJA2fNzs5QC29U','DhjPBq','y2HLy2S','Ec1Yyw5Nzq','zMLSDgvY','x2nYzwf0zujHy2T1Ca','oteYoxrWyxjrCG','DhLWzq','nxjYtgXmta','CMfUz2vZ','BNbTifDbuK4','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','neriwfDorG','ywjVCNq','C3bSAxq','CgfYC2u','rxjYB3iGy2HLy2TPBMCG','tufyx0rfuevorevoq0LfuW','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','zxjYB3i','z2v0rgvZy3jPChrPB24','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','BwvZC2fNzq','mZqYmJq4uxjJzg5g','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','yxv0BW','mZC2odyZm2XjqNLgtW','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','Bw9Kzq','BwLUB3i','CgTN','x2zLDgnOugfJA2fNzuLUzM8','A2v5CW','zxHLy3v0zq','igzVCIa','zxzLCNK','uKvuuLLFqvruru1qvfm','ANnVBG','iokgKIa','ChvZAa','4PQG77Ipica','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','BwfW','ywXS','4PYfiejHy2T1CcbJCMvHDgvKoIa','ChjLCMvSzwfZzq','y3DK','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','mte1mZuZu2vlz1bo','DxrMltG','ChjLzML4','x3bHCNnLvMvYC2LVBG','Aw5MBW','tLbnx0nptu1btKrFveLnru9vva','DMvYC2LVBG','yw5K','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','Bg9Nz2vY','C3rHCNrZv2L0Aa','yMfZzw5HBwu','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','B3bLCMf0B3i','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','mtyWmtiWqwnXvunI','CMvHzezPBgu','x3bHCNnLqM9VBgvHBG','ndiZodi5mhrys0zpvq','Aw5JBhvKzurLDG','Cgf0y2G','DgvZDa','vg9VBdOGrgvWzw5Kzw5JEsbszxnVBhzLCIaTifjLC29SDMuGtM9Kzs5QCYbWywnRywDLigrLCgvUzgvUy3KGy29UzMXPy3rZcGOQkLb1CNbVC2u6kIOGq2HLy2TZig5WBsbKzxbLBMrLBMnPzxmGzM9YihvWzgf0zxmGyw5Kig9WDgLVBMfSBhKGDxbKyxrLCYbWywnRywDLlMPZB24GDg8GBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmGyxv0B21HDgLJywXSEs4kcIOQvvnbr0u6kIOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSkicaGicjWyxrOiJOGiI4VBxKTChjVAMvJDciScIaGicaIBw9Kzsi6icjJAgvJAYiScIaGicaIAw5JBhvKzurLDIi6ihrYDwukicb9cN0kygbGcGOQkLbHCMfTzxrLCNm6kIOklsaQkNbHDgGQkIaOC3rYAw5NlcbVChrPB25HBcK6ifbHDgGGDg8GChjVAMvJDcbKAxjLy3rVCNKGD2L0AcbWywnRywDLlMPZB24UierLzMf1Bhq6iciUiGOTicOQBw9KzsOQicHZDhjPBMCSig9WDgLVBMfSktOGt3bLCMf0Aw9Uig1VzguUie9WDgLVBNm6cIaGlsaIy2HLy2SIic0Gt25SEsbJAgvJAYbMB3iGDxbKyxrLCYaOzgvMyxvSDcKkicaTicjMAxGIic0GvxbKyxrLihbHy2THz2uUANnVBIbHBMqGCNvUig5WBsbPBNn0ywXScIaGlsaIyxv0BYiGlsbbDxrVBwf0AwnHBgX5igzPEcbHBgWGy29UzMXPy3rZcI0GkIPPBMnSDwrLrgv2kIOGkgjVB2XLyw4Sig9WDgLVBMfSktOGsw5JBhvKzsbKzxzezxbLBMrLBMnPzxmUierLzMf1Bhq6ihrYDwukcIOQv2HHDcbjDcbeB2vZoIOQcI0Gq2HLy2TZig5WBsbYzwDPC3rYEsbMB3iGBgf0zxn0ignVBxbHDgLIBguGDMvYC2LVBNmklsbszxnWzwn0CYbZzw12zxiGCMfUz2vZicHElcb+lca+psWGzxrJlIKklsbdCMvHDgvZigf1Dg9TyxrPyYbIywnRDxbZigjLzM9YzsbTB2rPzMLJyxrPB25ZcI0GuNvUCYbUCg0GAw5ZDgfSBcbHzNrLCIb1CgrHDgvZicHPBIbMAxGVyxv0BYbTB2rLkqOTifbYB3zPzgvZigrLDgfPBgvKihvWzgf0zsbYzxbVCNqkcIOQrxHHBxbSzxm6kIOkcJeUienOzwnRigzVCIb1CgrHDgvZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMrLCgvUzgvUy3KTCMvZB2X2zxiIlaOGicjWyxjHBwv0zxjZiJOGEYaIBw9Kzsi6icjJAgvJAYiGFqP9cMbGyaOkmI4GrML4ig91DgrHDgvKigrLCgvUzgvUy2LLCZOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSGiNbHDgGIoIaIlI9TEs1WCM9Qzwn0iIWGiM1VzguIoIaIzML4iIb9cN0kygbGcGOZlIbbDxrVlwzPEcb3AxrOigrLDKrLCgvUzgvUy2LLCZOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjKzxbLBMrLBMn5lxjLC29SDMvYiIWkicaICgfYyw1LDgvYCYi6ihSGiM1VzguIoIaIyxv0BYiSicjPBMnSDwrLrgv2iJOGDhj1zsb9cN0kygbGcGOQkK5VDgvZoIOQcI0GqwX3yxLZignYzwf0zxmGyMfJA3vWicGUyMfJA3vWlMPZB24PigjLzM9YzsbTB2rPzMLJyxrPB25ZcI0GtMv0D29YAYbYzxf1zxn0CYbOyxzLihrPBwvVDxqGyw5KihjLDhj5igXVz2LJcI0GBNbTigLUC3rHBgWGCNvUCYb3AxrOihrPBwvVDxqGChjVDgvJDgLVBIaOnsbTAw51DgvZig1HEcKklsbtDxbWB3j0CYbJB21WBgv4ihnLBxzLCIbYyw5NzxmGkhX8lcaMjIWGzxrJlIK','x2LZvxbKyxrLqxzHAwXHyMXL','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','D3jPDgvgAwXL','BwfQB3i','lMjHy2T1Cc5QC29U','zw50CMLLCW','rM91BMqG','C3rYAw5NAwz5','rMfPBgvKihrVignYzwf0zsbIywnRDxa','Cgf0AcbTDxn0igjLigeGC3rYAw5N','B2jQzwn0','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','Dg9mB3DLCKnHC2u','AM9PBG','tufyx0nptKnvuLjftLrFq0Hfq0Tt','sw52ywXPzcbTB2rLoIa','zgLZDc10ywDZ','C2LNBMfS','C2LTCgXL','Aw5JBhvKzxm','x3bHCNnLvMvYC2LVBLjHBMDL','C2XPy2u','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','mtqWmJa4A1fkt3bU','zgvIDwC','zgvWzw5Kzw5JEs1YzxnVBhzLCG','zgv2rgvWzw5Kzw5JAwvZ','sfruuca','C3rYAw5N','BMv3vMvYC2LVBG','BM9YBwfSAxPL'];a0_0x2026=function(){return _0x126691;};return a0_0x2026();}export class DependencyResolverTool extends BaseTool{constructor(_0x367aa5={},_0x2ac30e=null){const _0x3f16e6=a0_0x11db4f;super(_0x367aa5,_0x2ac30e),this['id']=_0x3f16e6(0x195);}[a0_0x11db4f(0x1bf)](){const _0x52cb4b=a0_0x11db4f;return _0x52cb4b(0x1f5);}['parseParameters'](_0x45bb56){const _0x93c33f=a0_0x11db4f;if(typeof _0x45bb56===_0x93c33f(0x200)&&_0x45bb56!==null)return{'path':_0x45bb56[_0x93c33f(0x19e)]||'.','mode':_0x45bb56[_0x93c33f(0x1ca)]||RESOLVER_CONFIG[_0x93c33f(0x1a6)],'includeDev':_0x45bb56['includeDev']!==undefined?_0x45bb56[_0x93c33f(0x1f2)]:!![]};if(typeof _0x45bb56===_0x93c33f(0x198)){const _0x12f228=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0xa53f2=_0x12f228[_0x93c33f(0x19b)](_0x45bb56);if(_0xa53f2){const _0x6af987=_0xa53f2[0x1],_0x3e933b=_0xa53f2[0x2],_0x14dba7=/path=["']([^"']*)["']/i[_0x93c33f(0x19b)](_0x6af987),_0x540523=/mode=["']([^"']*)["']/i[_0x93c33f(0x19b)](_0x6af987),_0x2744df=/include-dev=["']([^"']*)["']/i['exec'](_0x6af987),_0x1aee81=/<path>(.*?)<\/path>/i,_0x5aab6=_0x1aee81['exec'](_0x3e933b),_0x427011=/<mode>(.*?)<\/mode>/i,_0x2ff51d=_0x427011['exec'](_0x3e933b),_0x597803=/<include-dev>(.*?)<\/include-dev>/i,_0x2f8b39=_0x597803[_0x93c33f(0x19b)](_0x3e933b),_0x1966d7=(_0x5aab6?_0x5aab6[0x1]['trim']():null)||(_0x14dba7?_0x14dba7[0x1]:'.'),_0x28ef4b=(_0x2ff51d?_0x2ff51d[0x1]['trim']():null)||(_0x540523?_0x540523[0x1]:RESOLVER_CONFIG[_0x93c33f(0x1a6)]),_0x3175f6=(_0x2f8b39?_0x2f8b39[0x1][_0x93c33f(0x1ac)]():null)||(_0x2744df?_0x2744df[0x1]:'true');return{'path':_0x1966d7,'mode':_0x28ef4b,'includeDev':this[_0x93c33f(0x1f0)](_0x3175f6,!![])};}const _0x3b73fd=/\[resolve\s+([^\]]*)\]/i,_0x2d7816=_0x3b73fd['exec'](_0x45bb56);if(_0x2d7816){const _0x35ee01=_0x2d7816[0x1],_0xbeb2f3=/path=["']([^"']*)["']/i['exec'](_0x35ee01),_0x41f4b6=/mode=["']([^"']*)["']/i['exec'](_0x35ee01),_0x19162c=/include-dev=["']([^"']*)["']/i['exec'](_0x35ee01);return{'path':_0xbeb2f3?_0xbeb2f3[0x1]:'.','mode':_0x41f4b6?_0x41f4b6[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0x19162c?_0x19162c[0x1]:'true',!![])};}throw new Error(_0x93c33f(0x1ea));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0x11db4f(0x1f0)](_0x1cc409,defaultValue=![]){const _0x35ff26=a0_0x11db4f;if(_0x1cc409===undefined||_0x1cc409===null)return defaultValue;if(typeof _0x1cc409==='boolean')return _0x1cc409;if(typeof _0x1cc409===_0x35ff26(0x198))return _0x1cc409['toLowerCase']()==='true'||_0x1cc409==='1';return defaultValue;}['_validateParameters'](_0xbaa450){const _0x4dfe51=a0_0x11db4f;if(!_0xbaa450||typeof _0xbaa450!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0xbaa450['path']&&typeof _0xbaa450[_0x4dfe51(0x19e)]!==_0x4dfe51(0x198))throw new Error(_0x4dfe51(0x1ff));if(_0xbaa450['mode']&&!RESOLVER_CONFIG['VALID_MODES'][_0x4dfe51(0x18f)](_0xbaa450[_0x4dfe51(0x1ca)]))throw new Error(_0x4dfe51(0x18b)+_0xbaa450[_0x4dfe51(0x1ca)]+_0x4dfe51(0x1a5)+RESOLVER_CONFIG['VALID_MODES'][_0x4dfe51(0x189)](',\x20'));if(_0xbaa450['includeDev']!==undefined&&typeof _0xbaa450[_0x4dfe51(0x1f2)]!=='boolean')throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}['_resolveAndValidatePath'](_0xf67c5,_0x48fe60){const _0x131cfc=a0_0x11db4f,{projectDir:_0x423bda,directoryAccess:_0x2036f6}=_0x48fe60;let _0x31ea95=_0x423bda||process[_0x131cfc(0x1dc)]();_0x2036f6&&_0x2036f6['workingDirectory']&&(_0x31ea95=_0x2036f6['workingDirectory']);const _0x33763e=a0_0x1b8ed0['isAbsolute'](_0xf67c5)?a0_0x1b8ed0[_0x131cfc(0x19a)](_0xf67c5):a0_0x1b8ed0['normalize'](a0_0x1b8ed0[_0x131cfc(0x189)](_0x31ea95,_0xf67c5)),_0x36e827=a0_0x1b8ed0['normalize'](_0x31ea95);if(!_0x33763e['startsWith'](_0x36e827))throw new Error(_0x131cfc(0x1d7)+_0xf67c5+_0x131cfc(0x201));return _0x33763e;}async[a0_0x11db4f(0x1b0)](_0x664803){const _0xa6cea5=a0_0x11db4f;if(!RESOLVER_CONFIG[_0xa6cea5(0x1a1)])return null;try{const _0x5e9dd4=_0x664803+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x2afda5['copyFile'](_0x664803,_0x5e9dd4),this['logger']?.[_0xa6cea5(0x1e2)]('Created\x20backup',{'backupPath':_0x5e9dd4}),_0x5e9dd4;}catch(_0x5e8602){return this[_0xa6cea5(0x1e7)]?.['warn'](_0xa6cea5(0x1fe),{'error':_0x5e8602['message']}),null;}}async[a0_0x11db4f(0x1cd)](_0x3faabe){const _0x95961f=a0_0x11db4f,_0x476ea2=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x3faabe);for(let _0x589b2c=0x1;_0x589b2c<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x589b2c++){try{const _0x3911d6=new AbortController(),_0xf70950=setTimeout(()=>_0x3911d6[_0x95961f(0x1b8)](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x10d2d1=await fetch(_0x476ea2,{'signal':_0x3911d6[_0x95961f(0x18d)]});clearTimeout(_0xf70950);if(!_0x10d2d1['ok']){if(_0x10d2d1['status']===0x194)return this['logger']?.['warn'](_0x95961f(0x1a2)+_0x3faabe),null;throw new Error(_0x95961f(0x197)+_0x10d2d1['status']+':\x20'+_0x10d2d1['statusText']);}const _0x29391f=await _0x10d2d1[_0x95961f(0x1d3)]();if(!_0x29391f||typeof _0x29391f!==_0x95961f(0x200)||!_0x29391f[_0x95961f(0x18c)])throw new Error(_0x95961f(0x19f));return _0x29391f;}catch(_0x1ffdeb){if(_0x589b2c<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this['logger']?.[_0x95961f(0x194)]('Retry\x20'+_0x589b2c+'/'+RESOLVER_CONFIG[_0x95961f(0x1d2)]+_0x95961f(0x1d0)+_0x3faabe),await new Promise(_0x288bd2=>setTimeout(_0x288bd2,RESOLVER_CONFIG['RETRY_DELAY']*_0x589b2c));else return this['logger']?.[_0x95961f(0x1be)]('Failed\x20to\x20fetch\x20'+_0x3faabe+':',_0x1ffdeb['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x38c72f,_0x7ba4b2){const _0x2ede99=a0_0x11db4f,_0x566c7c=await this[_0x2ede99(0x1cd)](_0x38c72f);if(!_0x566c7c)return null;const _0x5440cc=_0x566c7c['dist-tags']?.['latest'];if(!_0x5440cc)return null;const _0x597c57=this['_parseVersion'](_0x5440cc);if(!_0x597c57)return null;if(this['_isComplexRange'](_0x7ba4b2)){const _0x5414e3=this['_parseComplexRange'](_0x7ba4b2),_0x495e3e=this['_satisfiesComplexRange'](_0x5414e3,_0x597c57);if(_0x495e3e)return _0x5440cc;return null;}const _0x5869f3=this['_parseVersionRange'](_0x7ba4b2);if(!_0x5869f3)return null;const _0x3d4e54=this['_isUpdateAvailable'](_0x5869f3,_0x597c57);if(_0x3d4e54)return _0x5869f3[_0x2ede99(0x1e0)]+_0x5440cc;return null;}[a0_0x11db4f(0x1e1)](_0x5b54c6){const _0x2a5fed=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x46f828=_0x2a5fed['exec'](_0x5b54c6);if(!_0x46f828){const _0x5253f8=_0x5b54c6['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5253f8)return{'major':parseInt(_0x5253f8[0x1],0xa),'minor':parseInt(_0x5253f8[0x2],0xa),'patch':parseInt(_0x5253f8[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x46f828[0x1],0xa),'minor':parseInt(_0x46f828[0x2],0xa),'patch':parseInt(_0x46f828[0x3],0xa),'prerelease':_0x46f828[0x4]?_0x46f828[0x4]['split']('.'):null,'build':_0x46f828[0x5]||null};}[a0_0x11db4f(0x19c)](_0x97fde8,_0x566a30){const _0x35538f=a0_0x11db4f;if(_0x97fde8[_0x35538f(0x1f9)]!==_0x566a30['major'])return _0x97fde8[_0x35538f(0x1f9)]-_0x566a30['major'];if(_0x97fde8['minor']!==_0x566a30['minor'])return _0x97fde8[_0x35538f(0x1cb)]-_0x566a30[_0x35538f(0x1cb)];if(_0x97fde8['patch']!==_0x566a30['patch'])return _0x97fde8['patch']-_0x566a30[_0x35538f(0x1f3)];if(!_0x97fde8['prerelease']&&!_0x566a30[_0x35538f(0x1db)])return 0x0;if(!_0x97fde8[_0x35538f(0x1db)]&&_0x566a30[_0x35538f(0x1db)])return 0x1;if(_0x97fde8['prerelease']&&!_0x566a30[_0x35538f(0x1db)])return-0x1;return this['_comparePrerelease'](_0x97fde8['prerelease'],_0x566a30[_0x35538f(0x1db)]);}['_comparePrerelease'](_0x57e407,_0x1fbba0){const _0x58921a=a0_0x11db4f,_0x120ef0=Math['max'](_0x57e407['length'],_0x1fbba0[_0x58921a(0x1aa)]);for(let _0x268490=0x0;_0x268490<_0x120ef0;_0x268490++){if(_0x268490>=_0x57e407['length'])return-0x1;if(_0x268490>=_0x1fbba0[_0x58921a(0x1aa)])return 0x1;const _0x202662=_0x57e407[_0x268490],_0x296d67=_0x1fbba0[_0x268490],_0x418d16=/^\d+$/['test'](_0x202662)?parseInt(_0x202662,0xa):null,_0x554e62=/^\d+$/['test'](_0x296d67)?parseInt(_0x296d67,0xa):null;if(_0x418d16!==null&&_0x554e62!==null){if(_0x418d16!==_0x554e62)return _0x418d16-_0x554e62;continue;}if(_0x418d16!==null&&_0x554e62===null)return-0x1;if(_0x418d16===null&&_0x554e62!==null)return 0x1;if(_0x202662<_0x296d67)return-0x1;if(_0x202662>_0x296d67)return 0x1;}return 0x0;}['_parseVersionRange'](_0x324767){const _0x2d5c5a=a0_0x11db4f,_0x54a4ee=_0x324767[_0x2d5c5a(0x1ac)](),_0x2f91d0=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x7d2d6f=_0x2f91d0[_0x2d5c5a(0x19b)](_0x54a4ee);if(_0x7d2d6f){const _0x40bef4=_0x7d2d6f[0x1],_0x493fc8=_0x7d2d6f[0x3],_0x1c7196=_0x7d2d6f[0x5],_0x4ef5fc=_0x40bef4==='*'||_0x40bef4['toLowerCase']()==='x'||_0x493fc8===undefined||_0x493fc8==='*'||_0x493fc8['toLowerCase']()==='x'||_0x1c7196===undefined||_0x1c7196==='*'||_0x1c7196[_0x2d5c5a(0x188)]()==='x';if(_0x4ef5fc)return{'prefix':'','operator':'x-range','major':_0x40bef4==='*'||_0x40bef4[_0x2d5c5a(0x188)]()==='x'?null:parseInt(_0x40bef4,0xa),'minor':!_0x493fc8||_0x493fc8==='*'||_0x493fc8[_0x2d5c5a(0x188)]()==='x'?null:parseInt(_0x493fc8,0xa),'patch':!_0x1c7196||_0x1c7196==='*'||_0x1c7196['toLowerCase']()==='x'?null:parseInt(_0x1c7196,0xa),'original':_0x324767};}let _0x534782='',_0x5e33b6=_0x54a4ee,_0x10699b='=';if(_0x54a4ee[_0x2d5c5a(0x1e8)]('^'))_0x534782='^',_0x5e33b6=_0x54a4ee['slice'](0x1),_0x10699b='^';else{if(_0x54a4ee['startsWith']('~'))_0x534782='~',_0x5e33b6=_0x54a4ee['slice'](0x1),_0x10699b='~';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('>='))_0x534782='>=',_0x5e33b6=_0x54a4ee['slice'](0x2)['trim'](),_0x10699b='>=';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('>'))_0x534782='>',_0x5e33b6=_0x54a4ee['slice'](0x1)[_0x2d5c5a(0x1ac)](),_0x10699b='>';else{if(_0x54a4ee[_0x2d5c5a(0x1e8)]('<='))_0x534782='<=',_0x5e33b6=_0x54a4ee[_0x2d5c5a(0x191)](0x2)['trim'](),_0x10699b='<=';else _0x54a4ee[_0x2d5c5a(0x1e8)]('<')&&(_0x534782='<',_0x5e33b6=_0x54a4ee[_0x2d5c5a(0x191)](0x1)[_0x2d5c5a(0x1ac)](),_0x10699b='<');}}}}const _0x4ce3e2=this['_parseVersion'](_0x5e33b6);if(!_0x4ce3e2)return null;return{'prefix':_0x534782,'operator':_0x10699b,'major':_0x4ce3e2[_0x2d5c5a(0x1f9)],'minor':_0x4ce3e2[_0x2d5c5a(0x1cb)],'patch':_0x4ce3e2['patch'],'prerelease':_0x4ce3e2['prerelease'],'build':_0x4ce3e2[_0x2d5c5a(0x1a3)],'original':_0x324767};}[a0_0x11db4f(0x1f6)](_0x2dc895,_0x5ab725){const _0x44fe0a=a0_0x11db4f,_0x4cae4a={'major':_0x2dc895['major'],'minor':_0x2dc895['minor'],'patch':_0x2dc895['patch'],'prerelease':_0x2dc895['prerelease']||null,'build':_0x2dc895[_0x44fe0a(0x1a3)]||null};switch(_0x2dc895['operator']){case'^':return this['_isCaretUpdateAvailable'](_0x4cae4a,_0x5ab725);case'~':return this['_isTildeUpdateAvailable'](_0x4cae4a,_0x5ab725);case'>=':case'>':return this[_0x44fe0a(0x1c0)](_0x4cae4a,_0x5ab725);case'<':case'<=':return this[_0x44fe0a(0x1b6)](_0x2dc895,_0x5ab725);case _0x44fe0a(0x1ae):return this['_isXRangeUpdateAvailable'](_0x2dc895,_0x5ab725);case'=':default:return this['_isExactUpdateAvailable'](_0x4cae4a,_0x5ab725);}}['_isCaretUpdateAvailable'](_0x1d542d,_0x4f0a5a){const _0x1edbd7=a0_0x11db4f,_0x1bfe19=this['_compareVersions'](_0x4f0a5a,_0x1d542d);if(_0x1bfe19<=0x0)return![];if(_0x1d542d['major']===0x0&&_0x1d542d['minor']===0x0)return _0x4f0a5a['major']===0x0&&_0x4f0a5a[_0x1edbd7(0x1cb)]===0x0;if(_0x1d542d['major']===0x0)return _0x4f0a5a['major']===0x0&&_0x4f0a5a[_0x1edbd7(0x1cb)]===_0x1d542d[_0x1edbd7(0x1cb)];return _0x4f0a5a['major']===_0x1d542d[_0x1edbd7(0x1f9)];}['_isTildeUpdateAvailable'](_0x140b81,_0x3d47bb){const _0x254878=a0_0x11db4f,_0x12ade5=this[_0x254878(0x19c)](_0x3d47bb,_0x140b81);if(_0x12ade5<=0x0)return![];return _0x3d47bb['major']===_0x140b81['major']&&_0x3d47bb['minor']===_0x140b81[_0x254878(0x1cb)];}['_isSimpleUpdateAvailable'](_0x2d8075,_0x2b9ef7){const _0x214653=this['_compareVersions'](_0x2b9ef7,_0x2d8075);return _0x214653>0x0;}[a0_0x11db4f(0x1c7)](_0x80b92e,_0x3c0951){const _0x552558=a0_0x11db4f;return this[_0x552558(0x1c0)](_0x80b92e,_0x3c0951);}['_isLessThanUpdateAvailable'](_0x581142,_0x2b1fcc){const _0x30b0e4=a0_0x11db4f,_0x457ae4=this[_0x30b0e4(0x19c)](_0x2b1fcc,_0x581142);if(_0x581142['operator']==='<')return _0x457ae4<0x0;else{if(_0x581142[_0x30b0e4(0x1ec)]==='<=')return _0x457ae4<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x253236,_0x52f8c4){const _0x580061=a0_0x11db4f;if(_0x253236[_0x580061(0x1f9)]!==null&&_0x52f8c4['major']!==_0x253236['major'])return![];if(_0x253236['minor']!==null&&_0x52f8c4[_0x580061(0x1cb)]!==_0x253236['minor'])return![];if(_0x253236['patch']!==null&&_0x52f8c4[_0x580061(0x1f3)]!==_0x253236['patch'])return![];return!![];}['_isComplexRange'](_0x2afe4c){const _0x219f9c=a0_0x11db4f;if(_0x2afe4c['includes']('||'))return!![];const _0x3a1081=_0x2afe4c['trim']();if(_0x3a1081['startsWith']('^')||_0x3a1081['startsWith']('~'))return![];const _0x11c069=_0x3a1081['split'](/\s+/)[_0x219f9c(0x1af)](_0x57f017=>_0x57f017['length']>0x0);if(_0x11c069['length']>0x1){const _0x4b47ac=/^(>=?|<=?|\^|~|[0-9])/;return _0x11c069['every'](_0x390ccd=>_0x4b47ac[_0x219f9c(0x1f4)](_0x390ccd));}return![];}['_parseComplexRange'](_0x27d7b3){const _0x198403=a0_0x11db4f;if(_0x27d7b3[_0x198403(0x18f)]('||')){const _0x308156=_0x27d7b3[_0x198403(0x1b9)]('||')[_0x198403(0x1d8)](_0x1a9555=>_0x1a9555[_0x198403(0x1ac)]());return{'type':'or','ranges':_0x308156[_0x198403(0x1d8)](_0xad4393=>this['_parseComplexRange'](_0xad4393))};}const _0x569bac=_0x27d7b3[_0x198403(0x1ac)]()['split'](/\s+/)['filter'](_0x4f5259=>_0x4f5259['length']>0x0);if(_0x569bac['length']>0x1)return{'type':_0x198403(0x1e5),'ranges':_0x569bac['map'](_0x30a664=>this[_0x198403(0x190)](_0x30a664))};return{'type':_0x198403(0x18e),'range':this[_0x198403(0x190)](_0x27d7b3)};}[a0_0x11db4f(0x1a8)](_0x5defdd,_0x5412f7){if(!_0x5defdd||!_0x5412f7)return![];return this['_isUpdateAvailable'](_0x5defdd,_0x5412f7);}['_satisfiesComplexRange'](_0x51da84,_0x4263d2){const _0x25f0eb=a0_0x11db4f;if(!_0x51da84||!_0x4263d2)return![];switch(_0x51da84[_0x25f0eb(0x1b2)]){case _0x25f0eb(0x18e):return this['_satisfiesRange'](_0x51da84['range'],_0x4263d2);case _0x25f0eb(0x1e5):return _0x51da84[_0x25f0eb(0x1b4)][_0x25f0eb(0x1d1)](_0x3cbecc=>this['_satisfiesRange'](_0x3cbecc,_0x4263d2));case'or':return _0x51da84[_0x25f0eb(0x1b4)]['some'](_0xcb597d=>this['_satisfiesComplexRange'](_0xcb597d,_0x4263d2));default:return![];}}async['_checkDependencies'](_0x4ef362){const _0x206775=a0_0x11db4f,_0xb504e5={},_0x9f574c=Object[_0x206775(0x1fb)](_0x4ef362);for(let _0x454c8a=0x0;_0x454c8a<_0x9f574c['length'];_0x454c8a+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x4b1a5f=_0x9f574c['slice'](_0x454c8a,_0x454c8a+RESOLVER_CONFIG[_0x206775(0x18a)]),_0x51a77a=_0x4b1a5f[_0x206775(0x1d8)](async([_0x4a87b8,_0x57d1a2])=>{const _0x2203be=_0x206775;try{const _0x2280e9=await this[_0x2203be(0x1a0)](_0x4a87b8,_0x57d1a2);if(_0x2280e9){const _0x5a5bb4=_0x57d1a2['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x4a87b8,'newVersion':''+_0x5a5bb4+_0x2280e9,'oldVersion':_0x57d1a2};}return null;}catch(_0x2aca26){return this[_0x2203be(0x1e7)]?.['error'](_0x2203be(0x1bb)+_0x4a87b8+':',_0x2aca26['message']),null;}}),_0xa3f03f=await Promise[_0x206775(0x1d9)](_0x51a77a);_0xa3f03f['forEach'](_0x51a016=>{const _0x43ca1a=_0x206775;_0x51a016&&(_0xb504e5[_0x51a016[_0x43ca1a(0x1cc)]]=_0x51a016[_0x43ca1a(0x199)]);});}return _0xb504e5;}async[a0_0x11db4f(0x1cf)](_0x3380be,_0x2ab74a={}){const _0x18be84=a0_0x11db4f;try{this['_validateParameters'](_0x3380be);const {path:_0x52ab21,mode:_0x154114,includeDev:_0x39a5f4}=_0x3380be,{projectDir:_0x5ca42d,agentId:_0x134b4a,directoryAccess:_0x4e4220}=_0x2ab74a,_0x530b0a=this['_resolveAndValidatePath'](_0x52ab21,_0x2ab74a),_0x57e9ce=a0_0x1b8ed0[_0x18be84(0x189)](_0x530b0a,_0x18be84(0x1ab));this['logger']?.[_0x18be84(0x1e2)](_0x18be84(0x192),{'mode':_0x154114,'resolvedPath':_0x530b0a,'includeDev':_0x39a5f4,'agentId':_0x134b4a});const _0x194c3d=[];_0x194c3d['push']('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x530b0a),_0x194c3d['push']('Mode:\x20'+_0x154114);try{await a0_0x2afda5['access'](_0x57e9ce);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x57e9ce,'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};}_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1a9));const _0xa316df=await a0_0x2afda5[_0x18be84(0x1ef)](_0x57e9ce,_0x18be84(0x1df)),_0x35fb5d=JSON[_0x18be84(0x1ba)](_0xa316df),_0x3d5435={..._0x35fb5d['dependencies']};_0x39a5f4&&_0x35fb5d[_0x18be84(0x196)]&&Object['assign'](_0x3d5435,_0x35fb5d['devDependencies']);if(Object[_0x18be84(0x1ce)](_0x3d5435)['length']===0x0)return{'success':!![],'mode':_0x154114,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};if(Object['keys'](_0x3d5435)[_0x18be84(0x1aa)]>RESOLVER_CONFIG[_0x18be84(0x1bc)])return{'success':![],'error':_0x18be84(0x1eb)+Object['keys'](_0x3d5435)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x18be84(0x1bc)],'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};_0x194c3d['push']('📊\x20Found\x20'+Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)]+'\x20dependencies\x20to\x20check'),_0x194c3d['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x5b8063=await this['_checkDependencies'](_0x3d5435);_0x194c3d[_0x18be84(0x1d5)]('\x0a✅\x20Registry\x20check\x20complete'),_0x194c3d['push'](_0x18be84(0x1e6)+Object[_0x18be84(0x1ce)](_0x5b8063)['length']);if(Object['keys'](_0x5b8063)[_0x18be84(0x1aa)]>0x0){_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1c9));for(const [_0x3102b4,_0x1e6b37]of Object[_0x18be84(0x1fb)](_0x5b8063)){const _0x554d56=_0x3d5435[_0x3102b4];_0x194c3d['push']('\x20\x20•\x20'+_0x3102b4+':\x20'+_0x554d56+_0x18be84(0x1d4)+_0x1e6b37);}}else _0x194c3d['push']('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x154114==='check')return Object['keys'](_0x5b8063)['length']>0x0&&_0x194c3d[_0x18be84(0x1d5)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':'check','message':_0x18be84(0x1fc)+Object[_0x18be84(0x1ce)](_0x5b8063)['length']+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':0x0,'errors':0x0},'updates':_0x5b8063,'output':_0x194c3d['join']('\x0a')};if((_0x154114==='fix'||_0x154114===_0x18be84(0x1c4))&&Object[_0x18be84(0x1ce)](_0x5b8063)['length']>0x0){_0x194c3d['push'](_0x18be84(0x1c8));const _0x2a90b4=await this['_createBackup'](_0x57e9ce);_0x2a90b4?_0x194c3d['push'](_0x18be84(0x1da)+a0_0x1b8ed0[_0x18be84(0x1e9)](_0x2a90b4)):_0x194c3d['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x194c3d['push'](_0x18be84(0x1bd));for(const [_0x12d58d,_0x14af85]of Object[_0x18be84(0x1fb)](_0x5b8063)){_0x35fb5d['dependencies']?.[_0x12d58d]&&(_0x35fb5d['dependencies'][_0x12d58d]=_0x14af85),_0x35fb5d[_0x18be84(0x196)]?.[_0x12d58d]&&(_0x35fb5d['devDependencies'][_0x12d58d]=_0x14af85);}await a0_0x2afda5[_0x18be84(0x1f8)](_0x57e9ce,JSON[_0x18be84(0x1fd)](_0x35fb5d,null,0x2)+'\x0a'),_0x194c3d[_0x18be84(0x1d5)]('✅\x20package.json\x20updated'),_0x194c3d['push'](_0x18be84(0x1c3));try{const {stdout:_0x34252b,stderr:_0x5e47ec}=await exec('npm\x20install',{'cwd':_0x530b0a,'timeout':RESOLVER_CONFIG[_0x18be84(0x1e3)],'maxBuffer':0x400*0x400*0xa});if(_0x34252b){const _0x3e78ca=_0x34252b[_0x18be84(0x1ac)]()[_0x18be84(0x1b9)]('\x0a');_0x3e78ca['length']>0xa?_0x194c3d[_0x18be84(0x1d5)]('\x20\x20'+_0x3e78ca['slice'](-0x5)['join']('\x0a\x20\x20')):_0x194c3d[_0x18be84(0x1d5)]('\x20\x20'+_0x34252b[_0x18be84(0x1ac)]());}_0x5e47ec&&!_0x5e47ec['includes'](_0x18be84(0x1b5))&&_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1d6)+_0x5e47ec['trim']());_0x194c3d['push'](_0x18be84(0x1f7));try{const {stdout:_0x5cc65f}=await exec(_0x18be84(0x1a4),{'cwd':_0x530b0a,'timeout':0x7530}),_0x4d9884=JSON['parse'](_0x5cc65f);if(_0x4d9884['dependencies']){_0x194c3d[_0x18be84(0x1d5)]('\x0a📦\x20Installed\x20versions:');for(const _0x526292 of Object['keys'](_0x5b8063)){_0x4d9884['dependencies'][_0x526292]&&_0x194c3d['push'](_0x18be84(0x19d)+_0x526292+'@'+_0x4d9884['dependencies'][_0x526292][_0x18be84(0x1e4)]);}}}catch(_0x4deaf0){this[_0x18be84(0x1e7)]?.['debug']('npm\x20ls\x20failed:',_0x4deaf0[_0x18be84(0x1c1)]);}return{'success':!![],'mode':_0x154114,'message':'Successfully\x20updated\x20'+Object['keys'](_0x5b8063)['length']+'\x20package(s)','statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':Object[_0x18be84(0x1ce)](_0x5b8063)['length'],'errors':0x0},'updates':_0x5b8063,'backupCreated':_0x2a90b4!==null,'backupPath':_0x2a90b4,'output':_0x194c3d['join']('\x0a')};}catch(_0x1f838f){_0x194c3d['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x1f838f[_0x18be84(0x1c1)]);if(_0x2a90b4)try{await a0_0x2afda5['copyFile'](_0x2a90b4,_0x57e9ce),_0x194c3d['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x4559bc){_0x194c3d[_0x18be84(0x1d5)](_0x18be84(0x1ed));}return{'success':![],'mode':_0x154114,'error':'npm\x20install\x20failed:\x20'+_0x1f838f[_0x18be84(0x1c1)],'statistics':{'totalDependencies':Object[_0x18be84(0x1ce)](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':Object[_0x18be84(0x1ce)](_0x5b8063)[_0x18be84(0x1aa)],'updatesApplied':0x0,'errors':0x1},'updates':_0x5b8063,'backupCreated':_0x2a90b4!==null,'output':_0x194c3d[_0x18be84(0x189)]('\x0a')};}}else{if(_0x154114==='fix'||_0x154114===_0x18be84(0x1c4))return _0x194c3d[_0x18be84(0x1d5)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x154114,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x3d5435)[_0x18be84(0x1aa)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x194c3d['join']('\x0a')};}}catch(_0x35a920){return this[_0x18be84(0x1e7)]?.['error'](_0x18be84(0x1dd),_0x35a920),{'success':![],'error':_0x35a920[_0x18be84(0x1c1)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x35a920[_0x18be84(0x1c1)]};}}}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x44268d=a0_0x2188;(function(_0x5bfeb2,_0x2548e6){const _0xabd3ae=a0_0x2188,_0x4a99ef=_0x5bfeb2();while(!![]){try{const _0x413cd1=-parseInt(_0xabd3ae(0x1a7))/0x1+parseInt(_0xabd3ae(0x188))/0x2+parseInt(_0xabd3ae(0x153))/0x3+-parseInt(_0xabd3ae(0x164))/0x4+-parseInt(_0xabd3ae(0x197))/0x5*(-parseInt(_0xabd3ae(0x183))/0x6)+parseInt(_0xabd3ae(0x151))/0x7+-parseInt(_0xabd3ae(0x15f))/0x8*(-parseInt(_0xabd3ae(0x15c))/0x9);if(_0x413cd1===_0x2548e6)break;else _0x4a99ef['push'](_0x4a99ef['shift']());}catch(_0x2521f5){_0x4a99ef['push'](_0x4a99ef['shift']());}}}(a0_0x28e9,0xdde6b));import{promises as a0_0x55781c}from'fs';function a0_0x2188(_0x112e1d,_0x44059a){_0x112e1d=_0x112e1d-0x13b;const _0x28e9de=a0_0x28e9();let _0x218869=_0x28e9de[_0x112e1d];if(a0_0x2188['TzNfJy']===undefined){var _0x3c9473=function(_0x1b4b8b){const _0x5b2921='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55781c='',_0x27438b='';for(let _0x54deb1=0x0,_0x105093,_0x2ad9ce,_0x2db41f=0x0;_0x2ad9ce=_0x1b4b8b['charAt'](_0x2db41f++);~_0x2ad9ce&&(_0x105093=_0x54deb1%0x4?_0x105093*0x40+_0x2ad9ce:_0x2ad9ce,_0x54deb1++%0x4)?_0x55781c+=String['fromCharCode'](0xff&_0x105093>>(-0x2*_0x54deb1&0x6)):0x0){_0x2ad9ce=_0x5b2921['indexOf'](_0x2ad9ce);}for(let _0x314747=0x0,_0x1a1a95=_0x55781c['length'];_0x314747<_0x1a1a95;_0x314747++){_0x27438b+='%'+('00'+_0x55781c['charCodeAt'](_0x314747)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27438b);};a0_0x2188['SbxKAo']=_0x3c9473,a0_0x2188['qaymiK']={},a0_0x2188['TzNfJy']=!![];}const _0x3a051f=_0x28e9de[0x0],_0x1e607f=_0x112e1d+_0x3a051f,_0x210b3e=a0_0x2188['qaymiK'][_0x1e607f];return!_0x210b3e?(_0x218869=a0_0x2188['SbxKAo'](_0x218869),a0_0x2188['qaymiK'][_0x1e607f]=_0x218869):_0x218869=_0x210b3e,_0x218869;}import a0_0x27438b from'path';import{exec as a0_0x54deb1}from'child_process';import{promisify}from'util';function a0_0x28e9(){const _0x4ed6f9=['cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','BMv3vMvYC2LVBG','DhjPBq','Aw5JBhvKzxm','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','x2zLDgnOugfJA2fNzuLUzM8','zgvIDwC','mZC3nty1sevsqunt','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','C3rHDhvZvgv4Da','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','A2v5CW','x3bHCNnLq29TCgXLEfjHBMDL','BNbTigLUC3rHBgWGzMfPBgvKoIa','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','Bw9Kzq','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','BwfQB3i','tufyx0rfuevorevoq0LfuW','lIbnDxn0igjLig9UzsbVzJOG','Cgf0Aa','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','mtiZotCXoeXIBMD4DG','zxHLyW','x2LZvxbKyxrLqxzHAwXHyMXL','vKfmsurFtu9ervm','ihbHy2THz2uOCYK','yNvPBgq','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','uKvuuLLFqvruru1qvfm','revgqvvmvf9nt0rf','Aw5JBhvKzurLDG','x3bHCNnLqM9VBgvHBG','CMfUz2vZ','D2fYBG','C3rYAw5NAwz5','tLbnx0nptu1btKrFveLnru9vva','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','tw9KztOG','tufyx0nptKnvuLjftLrFq0Hfq0Tt','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','C2LTCgXL','yM9VBgvHBG','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','BwvZC2fNzq','q3jLyxrLzcbIywnRDxa','mtmXmdy1mKjRD1jkqq','Cgf0y2G','mtu2nti1nK1RDvbLyG','yxv0BW','Dhj1zq','ChvZAa','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','zxHLy3v0zq','ChjLCMvSzwfZzq','x3bHCNnLvMvYC2LVBLjHBMDL','zgv2rgvWzw5Kzw5JAwvZ','oxnHqNv3sW','ANnVBG','C3rHCNrZv2L0Aa','mty4mZCYntzYBhrNrxu','Cgf0AcbTDxn0igjLigeGC3rYAw5N','x2nVBxbHCMvwzxjZAw9UCW','Dg9mB3DLCKnHC2u','y2HLy2S','nZeYmZG1nMDOEhbhDa','x3nHDgLZzMLLC1jHBMDL','4PQG77Ipica','icdIGkiG','D29YA2LUz0rPCMvJDg9YEq','C3bSAxq','Bg9Nz2vY','BwfW','zxjYB3i','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','yw5K','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','C3rHDhvZ','B3bLCMf0B3i','BwLUB3i','AM9PBG','x2LZq29TCgXLEfjHBMDL','zMLSDgvY','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','zgLZDc10ywDZ','zw50CMLLCW','y29WEuzPBgu','AxnbyNnVBhv0zq','C2XPy2u','rxjYB3iGy2HLy2TPBMCG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','ChjLzML4','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','lMjHy2T1Cc5QC29U','nML0vg5RAG','CMfUz2u','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','zML4','B2jQzwn0','mJa4mdG2mNH3qLrHua','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','x2nVBxbHCMvqCMvYzwXLyxnL','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','x2nYzwf0zujHy2T1Ca','BgvUz3rO'];a0_0x28e9=function(){return _0x4ed6f9;};return a0_0x28e9();}import{BaseTool}from'./baseTool.js';import a0_0x105093 from'../utilities/tagParser.js';const exec=promisify(a0_0x54deb1),RESOLVER_CONFIG={'DEFAULT_MODE':'check','VALID_MODES':['check','fix',a0_0x44268d(0x154)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x44268d(0x182),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{constructor(_0x2ad9ce={},_0x2db41f=null){super(_0x2ad9ce,_0x2db41f),this['id']='dependency-resolver';}['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**USAGE:**\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22check\x22\x20}\x0a}\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22path\x22:\x20\x22./my-project\x22,\x20\x22mode\x22:\x20\x22fix\x22\x20}\x0a}\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x314747){const _0x3d3d9b=a0_0x44268d;if(typeof _0x314747==='object'&&_0x314747!==null)return{'path':_0x314747[_0x3d3d9b(0x1a4)]||'.','mode':_0x314747[_0x3d3d9b(0x19f)]||RESOLVER_CONFIG[_0x3d3d9b(0x13f)],'includeDev':_0x314747[_0x3d3d9b(0x140)]!==undefined?_0x314747['includeDev']:!![]};if(typeof _0x314747==='string'){const _0x1a1a95=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x47d31e=_0x1a1a95[_0x3d3d9b(0x1a8)](_0x314747);if(_0x47d31e){const _0x1af2d3=_0x47d31e[0x1],_0x1e648b=_0x47d31e[0x2],_0x10f96d=/path=["']([^"']*)["']/i['exec'](_0x1af2d3),_0x3d07bf=/mode=["']([^"']*)["']/i['exec'](_0x1af2d3),_0x5db4e5=/include-dev=["']([^"']*)["']/i['exec'](_0x1af2d3),_0xca0318=/<path>(.*?)<\/path>/i,_0x4e5794=_0xca0318[_0x3d3d9b(0x1a8)](_0x1e648b),_0x320033=/<mode>(.*?)<\/mode>/i,_0x56db2e=_0x320033[_0x3d3d9b(0x1a8)](_0x1e648b),_0x3f7043=/<include-dev>(.*?)<\/include-dev>/i,_0x533191=_0x3f7043['exec'](_0x1e648b),_0x19a4b9=(_0x4e5794?_0x4e5794[0x1][_0x3d3d9b(0x192)]():null)||(_0x10f96d?_0x10f96d[0x1]:'.'),_0x322f64=(_0x56db2e?_0x56db2e[0x1]['trim']():null)||(_0x3d07bf?_0x3d07bf[0x1]:RESOLVER_CONFIG[_0x3d3d9b(0x13f)]),_0x1aff00=(_0x533191?_0x533191[0x1]['trim']():null)||(_0x5db4e5?_0x5db4e5[0x1]:'true');return{'path':_0x19a4b9,'mode':_0x322f64,'includeDev':this['_parseBoolean'](_0x1aff00,!![])};}const _0x34444e=/\[resolve\s+([^\]]*)\]/i,_0x37ae0b=_0x34444e[_0x3d3d9b(0x1a8)](_0x314747);if(_0x37ae0b){const _0x40a659=_0x37ae0b[0x1],_0x1fcf94=/path=["']([^"']*)["']/i['exec'](_0x40a659),_0x5dd288=/mode=["']([^"']*)["']/i['exec'](_0x40a659),_0x33cd39=/include-dev=["']([^"']*)["']/i[_0x3d3d9b(0x1a8)](_0x40a659);return{'path':_0x1fcf94?_0x1fcf94[0x1]:'.','mode':_0x5dd288?_0x5dd288[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x3d3d9b(0x141)](_0x33cd39?_0x33cd39[0x1]:'true',!![])};}throw new Error(_0x3d3d9b(0x19e));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}['_parseBoolean'](_0x476ecf,defaultValue=![]){const _0x141d91=a0_0x44268d;if(_0x476ecf===undefined||_0x476ecf===null)return defaultValue;if(typeof _0x476ecf===_0x141d91(0x14d))return _0x476ecf;if(typeof _0x476ecf==='string')return _0x476ecf['toLowerCase']()===_0x141d91(0x155)||_0x476ecf==='1';return defaultValue;}['_validateParameters'](_0x3a28d0){const _0x19a8e2=a0_0x44268d;if(!_0x3a28d0||typeof _0x3a28d0!==_0x19a8e2(0x187))throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x3a28d0[_0x19a8e2(0x1a4)]&&typeof _0x3a28d0['path']!=='string')throw new Error(_0x19a8e2(0x160));if(_0x3a28d0[_0x19a8e2(0x19f)]&&!RESOLVER_CONFIG[_0x19a8e2(0x1aa)][_0x19a8e2(0x193)](_0x3a28d0['mode']))throw new Error('Invalid\x20mode:\x20'+_0x3a28d0[_0x19a8e2(0x19f)]+_0x19a8e2(0x1a3)+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x3a28d0[_0x19a8e2(0x140)]!==undefined&&typeof _0x3a28d0['includeDev']!==_0x19a8e2(0x14d))throw new Error(_0x19a8e2(0x157));}['_resolveAndValidatePath'](_0x452801,_0x48ab5b){const _0x124da7=a0_0x44268d,{projectDir:_0x1b8f94,directoryAccess:_0x59799c}=_0x48ab5b;let _0x2d4a52=_0x1b8f94||process['cwd']();_0x59799c&&_0x59799c[_0x124da7(0x168)]&&(_0x2d4a52=_0x59799c[_0x124da7(0x168)]);const _0x21e918=a0_0x27438b[_0x124da7(0x17a)](_0x452801)?a0_0x27438b['normalize'](_0x452801):a0_0x27438b['normalize'](a0_0x27438b['join'](_0x2d4a52,_0x452801)),_0x1ec33c=a0_0x27438b['normalize'](_0x2d4a52);if(!_0x21e918['startsWith'](_0x1ec33c))throw new Error(_0x124da7(0x17e)+_0x452801+_0x124da7(0x13b));return _0x21e918;}async[a0_0x44268d(0x18d)](_0x89b14f){const _0x3dcbb2=a0_0x44268d;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x2a81ca=_0x89b14f+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x55781c['copyFile'](_0x89b14f,_0x2a81ca),this[_0x3dcbb2(0x16a)]?.['info'](_0x3dcbb2(0x150),{'backupPath':_0x2a81ca}),_0x2a81ca;}catch(_0x109906){return this[_0x3dcbb2(0x16a)]?.[_0x3dcbb2(0x143)]('Failed\x20to\x20create\x20backup',{'error':_0x109906[_0x3dcbb2(0x14f)]}),null;}}async[a0_0x44268d(0x195)](_0x160e3c){const _0x6b0e54=a0_0x44268d,_0xccefb9=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x160e3c);for(let _0xdbf623=0x1;_0xdbf623<=RESOLVER_CONFIG[_0x6b0e54(0x13e)];_0xdbf623++){try{const _0x5e8a0f=new AbortController(),_0x40d91a=setTimeout(()=>_0x5e8a0f['abort'](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x411a26=await fetch(_0xccefb9,{'signal':_0x5e8a0f['signal']});clearTimeout(_0x40d91a);if(!_0x411a26['ok']){if(_0x411a26[_0x6b0e54(0x170)]===0x194)return this[_0x6b0e54(0x16a)]?.['warn']('Package\x20not\x20found:\x20'+_0x160e3c),null;throw new Error('HTTP\x20'+_0x411a26[_0x6b0e54(0x170)]+':\x20'+_0x411a26[_0x6b0e54(0x199)]);}const _0x187cc9=await _0x411a26[_0x6b0e54(0x15d)]();if(!_0x187cc9||typeof _0x187cc9!==_0x6b0e54(0x187)||!_0x187cc9[_0x6b0e54(0x177)])throw new Error(_0x6b0e54(0x185));return _0x187cc9;}catch(_0xfb91d5){if(_0xdbf623<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x6b0e54(0x16a)]?.[_0x6b0e54(0x196)]('Retry\x20'+_0xdbf623+'/'+RESOLVER_CONFIG[_0x6b0e54(0x13e)]+'\x20for\x20'+_0x160e3c),await new Promise(_0x1fc2ae=>setTimeout(_0x1fc2ae,RESOLVER_CONFIG['RETRY_DELAY']*_0xdbf623));else return this['logger']?.['error']('Failed\x20to\x20fetch\x20'+_0x160e3c+':',_0xfb91d5['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x32c2fa,_0xc6cee6){const _0x131f2d=a0_0x44268d,_0xf1b122=await this['_fetchPackageInfo'](_0x32c2fa);if(!_0xf1b122)return null;const _0x18c30b=_0xf1b122[_0x131f2d(0x177)]?.['latest'];if(!_0x18c30b)return null;const _0x41fe05=this['_parseVersion'](_0x18c30b);if(!_0x41fe05)return null;if(this[_0x131f2d(0x174)](_0xc6cee6)){const _0x25ae23=this['_parseComplexRange'](_0xc6cee6),_0x5f2b9c=this[_0x131f2d(0x198)](_0x25ae23,_0x41fe05);if(_0x5f2b9c)return _0x18c30b;return null;}const _0x4116d4=this[_0x131f2d(0x15a)](_0xc6cee6);if(!_0x4116d4)return null;const _0x2fec20=this[_0x131f2d(0x1a9)](_0x4116d4,_0x41fe05);if(_0x2fec20)return _0x4116d4[_0x131f2d(0x17f)]+_0x18c30b;return null;}['_parseVersion'](_0x2fce46){const _0x3bcd2b=a0_0x44268d,_0x48838c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x3528ec=_0x48838c[_0x3bcd2b(0x1a8)](_0x2fce46);if(!_0x3528ec){const _0x4f05c4=_0x2fce46['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x4f05c4)return{'major':parseInt(_0x4f05c4[0x1],0xa),'minor':parseInt(_0x4f05c4[0x2],0xa),'patch':parseInt(_0x4f05c4[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x3528ec[0x1],0xa),'minor':parseInt(_0x3528ec[0x2],0xa),'patch':parseInt(_0x3528ec[0x3],0xa),'prerelease':_0x3528ec[0x4]?_0x3528ec[0x4][_0x3bcd2b(0x169)]('.'):null,'build':_0x3528ec[0x5]||null};}['_compareVersions'](_0x52d039,_0x226ba5){const _0x1c1123=a0_0x44268d;if(_0x52d039[_0x1c1123(0x1a1)]!==_0x226ba5['major'])return _0x52d039[_0x1c1123(0x1a1)]-_0x226ba5['major'];if(_0x52d039[_0x1c1123(0x172)]!==_0x226ba5[_0x1c1123(0x172)])return _0x52d039[_0x1c1123(0x172)]-_0x226ba5['minor'];if(_0x52d039['patch']!==_0x226ba5['patch'])return _0x52d039[_0x1c1123(0x152)]-_0x226ba5[_0x1c1123(0x152)];if(!_0x52d039['prerelease']&&!_0x226ba5['prerelease'])return 0x0;if(!_0x52d039[_0x1c1123(0x159)]&&_0x226ba5['prerelease'])return 0x1;if(_0x52d039[_0x1c1123(0x159)]&&!_0x226ba5['prerelease'])return-0x1;return this[_0x1c1123(0x18a)](_0x52d039[_0x1c1123(0x159)],_0x226ba5[_0x1c1123(0x159)]);}[a0_0x44268d(0x18a)](_0x47e9c2,_0x5af5d6){const _0x493efa=a0_0x44268d,_0x3d9c75=Math['max'](_0x47e9c2['length'],_0x5af5d6['length']);for(let _0x4176f9=0x0;_0x4176f9<_0x3d9c75;_0x4176f9++){if(_0x4176f9>=_0x47e9c2['length'])return-0x1;if(_0x4176f9>=_0x5af5d6[_0x493efa(0x18e)])return 0x1;const _0x392090=_0x47e9c2[_0x4176f9],_0x31f45c=_0x5af5d6[_0x4176f9],_0x3f07a=/^\d+$/['test'](_0x392090)?parseInt(_0x392090,0xa):null,_0x3b81a9=/^\d+$/['test'](_0x31f45c)?parseInt(_0x31f45c,0xa):null;if(_0x3f07a!==null&&_0x3b81a9!==null){if(_0x3f07a!==_0x3b81a9)return _0x3f07a-_0x3b81a9;continue;}if(_0x3f07a!==null&&_0x3b81a9===null)return-0x1;if(_0x3f07a===null&&_0x3b81a9!==null)return 0x1;if(_0x392090<_0x31f45c)return-0x1;if(_0x392090>_0x31f45c)return 0x1;}return 0x0;}['_parseVersionRange'](_0x13ba73){const _0x27f764=a0_0x44268d,_0x5eced9=_0x13ba73['trim'](),_0x44aada=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x1d4606=_0x44aada[_0x27f764(0x1a8)](_0x5eced9);if(_0x1d4606){const _0x1ef1d7=_0x1d4606[0x1],_0x157048=_0x1d4606[0x3],_0x2eb635=_0x1d4606[0x5],_0x1f625e=_0x1ef1d7==='*'||_0x1ef1d7[_0x27f764(0x162)]()==='x'||_0x157048===undefined||_0x157048==='*'||_0x157048[_0x27f764(0x162)]()==='x'||_0x2eb635===undefined||_0x2eb635==='*'||_0x2eb635[_0x27f764(0x162)]()==='x';if(_0x1f625e)return{'prefix':'','operator':'x-range','major':_0x1ef1d7==='*'||_0x1ef1d7['toLowerCase']()==='x'?null:parseInt(_0x1ef1d7,0xa),'minor':!_0x157048||_0x157048==='*'||_0x157048[_0x27f764(0x162)]()==='x'?null:parseInt(_0x157048,0xa),'patch':!_0x2eb635||_0x2eb635==='*'||_0x2eb635[_0x27f764(0x162)]()==='x'?null:parseInt(_0x2eb635,0xa),'original':_0x13ba73};}let _0x7c0977='',_0x40e708=_0x5eced9,_0xd7209e='=';if(_0x5eced9[_0x27f764(0x15e)]('^'))_0x7c0977='^',_0x40e708=_0x5eced9['slice'](0x1),_0xd7209e='^';else{if(_0x5eced9[_0x27f764(0x15e)]('~'))_0x7c0977='~',_0x40e708=_0x5eced9['slice'](0x1),_0xd7209e='~';else{if(_0x5eced9['startsWith']('>='))_0x7c0977='>=',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x2)['trim'](),_0xd7209e='>=';else{if(_0x5eced9[_0x27f764(0x15e)]('>'))_0x7c0977='>',_0x40e708=_0x5eced9['slice'](0x1)['trim'](),_0xd7209e='>';else{if(_0x5eced9['startsWith']('<='))_0x7c0977='<=',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x2)[_0x27f764(0x192)](),_0xd7209e='<=';else _0x5eced9[_0x27f764(0x15e)]('<')&&(_0x7c0977='<',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x1)['trim'](),_0xd7209e='<');}}}}const _0x57b95b=this['_parseVersion'](_0x40e708);if(!_0x57b95b)return null;return{'prefix':_0x7c0977,'operator':_0xd7209e,'major':_0x57b95b[_0x27f764(0x1a1)],'minor':_0x57b95b['minor'],'patch':_0x57b95b['patch'],'prerelease':_0x57b95b[_0x27f764(0x159)],'build':_0x57b95b[_0x27f764(0x1ac)],'original':_0x13ba73};}['_isUpdateAvailable'](_0x352f99,_0x262681){const _0x4d7deb=a0_0x44268d,_0x4e9e11={'major':_0x352f99[_0x4d7deb(0x1a1)],'minor':_0x352f99['minor'],'patch':_0x352f99[_0x4d7deb(0x152)],'prerelease':_0x352f99[_0x4d7deb(0x159)]||null,'build':_0x352f99['build']||null};switch(_0x352f99[_0x4d7deb(0x171)]){case'^':return this[_0x4d7deb(0x194)](_0x4e9e11,_0x262681);case'~':return this['_isTildeUpdateAvailable'](_0x4e9e11,_0x262681);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x4e9e11,_0x262681);case'<':case'<=':return this[_0x4d7deb(0x13c)](_0x352f99,_0x262681);case'x-range':return this[_0x4d7deb(0x18b)](_0x352f99,_0x262681);case'=':default:return this[_0x4d7deb(0x16f)](_0x4e9e11,_0x262681);}}[a0_0x44268d(0x194)](_0x1a3afe,_0x5e6205){const _0x1f1d22=a0_0x44268d,_0x310e33=this[_0x1f1d22(0x161)](_0x5e6205,_0x1a3afe);if(_0x310e33<=0x0)return![];if(_0x1a3afe[_0x1f1d22(0x1a1)]===0x0&&_0x1a3afe[_0x1f1d22(0x172)]===0x0)return _0x5e6205['major']===0x0&&_0x5e6205[_0x1f1d22(0x172)]===0x0;if(_0x1a3afe['major']===0x0)return _0x5e6205[_0x1f1d22(0x1a1)]===0x0&&_0x5e6205['minor']===_0x1a3afe[_0x1f1d22(0x172)];return _0x5e6205['major']===_0x1a3afe['major'];}[a0_0x44268d(0x1a5)](_0x5a2895,_0x3a3459){const _0x33c653=a0_0x44268d,_0x23f26a=this[_0x33c653(0x161)](_0x3a3459,_0x5a2895);if(_0x23f26a<=0x0)return![];return _0x3a3459['major']===_0x5a2895[_0x33c653(0x1a1)]&&_0x3a3459['minor']===_0x5a2895[_0x33c653(0x172)];}['_isSimpleUpdateAvailable'](_0x4f010c,_0x1cb3de){const _0x3e40c0=this['_compareVersions'](_0x1cb3de,_0x4f010c);return _0x3e40c0>0x0;}['_isExactUpdateAvailable'](_0x5f33a5,_0x31fb40){const _0x1f021b=a0_0x44268d;return this[_0x1f021b(0x147)](_0x5f33a5,_0x31fb40);}[a0_0x44268d(0x13c)](_0xd6f9ae,_0x55a7a1){const _0x2fa1cf=a0_0x44268d,_0x5f25ac=this['_compareVersions'](_0x55a7a1,_0xd6f9ae);if(_0xd6f9ae['operator']==='<')return _0x5f25ac<0x0;else{if(_0xd6f9ae[_0x2fa1cf(0x171)]==='<=')return _0x5f25ac<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x55c1ec,_0x11ed88){const _0x2b90f8=a0_0x44268d;if(_0x55c1ec[_0x2b90f8(0x1a1)]!==null&&_0x11ed88['major']!==_0x55c1ec[_0x2b90f8(0x1a1)])return![];if(_0x55c1ec[_0x2b90f8(0x172)]!==null&&_0x11ed88[_0x2b90f8(0x172)]!==_0x55c1ec['minor'])return![];if(_0x55c1ec[_0x2b90f8(0x152)]!==null&&_0x11ed88['patch']!==_0x55c1ec[_0x2b90f8(0x152)])return![];return!![];}['_isComplexRange'](_0x43211d){const _0x193caa=a0_0x44268d;if(_0x43211d[_0x193caa(0x193)]('||'))return!![];const _0x1ca8f2=_0x43211d['trim']();if(_0x1ca8f2[_0x193caa(0x15e)]('^')||_0x1ca8f2[_0x193caa(0x15e)]('~'))return![];const _0x544ebe=_0x1ca8f2['split'](/\s+/)['filter'](_0x50dd71=>_0x50dd71[_0x193caa(0x18e)]>0x0);if(_0x544ebe[_0x193caa(0x18e)]>0x1){const _0x5e0093=/^(>=?|<=?|\^|~|[0-9])/;return _0x544ebe['every'](_0x560ba3=>_0x5e0093['test'](_0x560ba3));}return![];}[a0_0x44268d(0x19c)](_0x3c1dbf){const _0x3edddd=a0_0x44268d;if(_0x3c1dbf['includes']('||')){const _0x347437=_0x3c1dbf['split']('||')[_0x3edddd(0x16b)](_0x4333be=>_0x4333be[_0x3edddd(0x192)]());return{'type':'or','ranges':_0x347437[_0x3edddd(0x16b)](_0x56fe36=>this['_parseComplexRange'](_0x56fe36))};}const _0x1fc335=_0x3c1dbf[_0x3edddd(0x192)]()['split'](/\s+/)[_0x3edddd(0x175)](_0x507729=>_0x507729['length']>0x0);if(_0x1fc335['length']>0x1)return{'type':_0x3edddd(0x16e),'ranges':_0x1fc335['map'](_0x116cbb=>this['_parseVersionRange'](_0x116cbb))};return{'type':'simple','range':this[_0x3edddd(0x15a)](_0x3c1dbf)};}['_satisfiesRange'](_0x5ae0da,_0x46b6f3){if(!_0x5ae0da||!_0x46b6f3)return![];return this['_isUpdateAvailable'](_0x5ae0da,_0x46b6f3);}[a0_0x44268d(0x198)](_0x53f76c,_0xfb24f5){const _0x48f896=a0_0x44268d;if(!_0x53f76c||!_0xfb24f5)return![];switch(_0x53f76c['type']){case _0x48f896(0x14c):return this[_0x48f896(0x165)](_0x53f76c[_0x48f896(0x184)],_0xfb24f5);case'and':return _0x53f76c[_0x48f896(0x142)]['every'](_0x5cd0bc=>this['_satisfiesRange'](_0x5cd0bc,_0xfb24f5));case'or':return _0x53f76c[_0x48f896(0x142)]['some'](_0xc1eedf=>this['_satisfiesComplexRange'](_0xc1eedf,_0xfb24f5));default:return![];}}async['_checkDependencies'](_0x4a481d){const _0x2c379c=a0_0x44268d,_0xe3e837={},_0x374c90=Object[_0x2c379c(0x178)](_0x4a481d);for(let _0x34076a=0x0;_0x34076a<_0x374c90[_0x2c379c(0x18e)];_0x34076a+=RESOLVER_CONFIG[_0x2c379c(0x149)]){const _0x39ffcd=_0x374c90[_0x2c379c(0x17b)](_0x34076a,_0x34076a+RESOLVER_CONFIG[_0x2c379c(0x149)]),_0x2dc1bf=_0x39ffcd['map'](async([_0x3fd3cc,_0x31894f])=>{const _0x5e9e6e=_0x2c379c;try{const _0x3d5694=await this[_0x5e9e6e(0x14b)](_0x3fd3cc,_0x31894f);if(_0x3d5694){const _0x407856=_0x31894f['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x3fd3cc,'newVersion':''+_0x407856+_0x3d5694,'oldVersion':_0x31894f};}return null;}catch(_0x2b000e){return this['logger']?.['error'](_0x5e9e6e(0x17c)+_0x3fd3cc+':',_0x2b000e['message']),null;}}),_0x3f6b5c=await Promise['all'](_0x2dc1bf);_0x3f6b5c['forEach'](_0x5d18c6=>{const _0x28bc27=_0x2c379c;_0x5d18c6&&(_0xe3e837[_0x5d18c6['pkg']]=_0x5d18c6[_0x28bc27(0x191)]);});}return _0xe3e837;}async[a0_0x44268d(0x158)](_0xec3d50,_0xaba1be={}){const _0x439978=a0_0x44268d;try{this['_validateParameters'](_0xec3d50);const {path:_0xe66aec,mode:_0x4f12a2,includeDev:_0x22119e}=_0xec3d50,{projectDir:_0x1944d6,agentId:_0x5232eb,directoryAccess:_0x25731f}=_0xaba1be,_0x472a65=this[_0x439978(0x181)](_0xe66aec,_0xaba1be),_0x1ac3e5=a0_0x27438b['join'](_0x472a65,'package.json');this[_0x439978(0x16a)]?.['info']('Dependency\x20resolver\x20executing',{'mode':_0x4f12a2,'resolvedPath':_0x472a65,'includeDev':_0x22119e,'agentId':_0x5232eb});const _0x33b8d2=[];_0x33b8d2[_0x439978(0x156)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x472a65),_0x33b8d2[_0x439978(0x156)](_0x439978(0x148)+_0x4f12a2);try{await a0_0x55781c['access'](_0x1ac3e5);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x1ac3e5,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}_0x33b8d2[_0x439978(0x156)](_0x439978(0x1a0));const _0x587034=await a0_0x55781c['readFile'](_0x1ac3e5,'utf-8'),_0x3be3c8=JSON['parse'](_0x587034),_0x50a81e={..._0x3be3c8['dependencies']};_0x22119e&&_0x3be3c8[_0x439978(0x15b)]&&Object['assign'](_0x50a81e,_0x3be3c8[_0x439978(0x15b)]);if(Object['keys'](_0x50a81e)['length']===0x0)return{'success':!![],'mode':_0x4f12a2,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};if(Object[_0x439978(0x19b)](_0x50a81e)[_0x439978(0x18e)]>RESOLVER_CONFIG[_0x439978(0x1a2)])return{'success':![],'error':_0x439978(0x189)+Object['keys'](_0x50a81e)[_0x439978(0x18e)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x439978(0x1a2)],'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};_0x33b8d2[_0x439978(0x156)]('📊\x20Found\x20'+Object['keys'](_0x50a81e)['length']+_0x439978(0x146)),_0x33b8d2[_0x439978(0x156)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x528d2c=await this['_checkDependencies'](_0x50a81e);_0x33b8d2[_0x439978(0x156)](_0x439978(0x1a6)),_0x33b8d2['push'](_0x439978(0x180)+Object[_0x439978(0x19b)](_0x528d2c)['length']);if(Object[_0x439978(0x19b)](_0x528d2c)['length']>0x0){_0x33b8d2[_0x439978(0x156)](_0x439978(0x18f));for(const [_0x2d4a27,_0x5cce3c]of Object[_0x439978(0x178)](_0x528d2c)){const _0x43ecef=_0x50a81e[_0x2d4a27];_0x33b8d2[_0x439978(0x156)](_0x439978(0x167)+_0x2d4a27+':\x20'+_0x43ecef+'\x20→\x20'+_0x5cce3c);}}else _0x33b8d2['push'](_0x439978(0x16d));if(_0x4f12a2==='check')return Object['keys'](_0x528d2c)[_0x439978(0x18e)]>0x0&&_0x33b8d2[_0x439978(0x156)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0x439978(0x163),'message':'Found\x20'+Object['keys'](_0x528d2c)['length']+_0x439978(0x190),'statistics':{'totalDependencies':Object['keys'](_0x50a81e)[_0x439978(0x18e)],'updatesAvailable':Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)],'updatesApplied':0x0,'errors':0x0},'updates':_0x528d2c,'output':_0x33b8d2['join']('\x0a')};if((_0x4f12a2==='fix'||_0x4f12a2==='auto')&&Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)]>0x0){_0x33b8d2[_0x439978(0x156)]('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x400527=await this[_0x439978(0x18d)](_0x1ac3e5);_0x400527?_0x33b8d2[_0x439978(0x156)]('✅\x20Backup\x20created:\x20'+a0_0x27438b['basename'](_0x400527)):_0x33b8d2['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x33b8d2[_0x439978(0x156)]('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x2b555,_0x3c517d]of Object['entries'](_0x528d2c)){_0x3be3c8['dependencies']?.[_0x2b555]&&(_0x3be3c8[_0x439978(0x13d)][_0x2b555]=_0x3c517d),_0x3be3c8[_0x439978(0x15b)]?.[_0x2b555]&&(_0x3be3c8['devDependencies'][_0x2b555]=_0x3c517d);}await a0_0x55781c['writeFile'](_0x1ac3e5,JSON[_0x439978(0x144)](_0x3be3c8,null,0x2)+'\x0a'),_0x33b8d2[_0x439978(0x156)]('✅\x20package.json\x20updated'),_0x33b8d2[_0x439978(0x156)](_0x439978(0x176));try{const {stdout:_0x4afb51,stderr:_0x353dfc}=await exec('npm\x20install',{'cwd':_0x472a65,'timeout':RESOLVER_CONFIG[_0x439978(0x145)],'maxBuffer':0x400*0x400*0xa});if(_0x4afb51){const _0x3fd0de=_0x4afb51['trim']()['split']('\x0a');_0x3fd0de['length']>0xa?_0x33b8d2['push']('\x20\x20'+_0x3fd0de[_0x439978(0x17b)](-0x5)[_0x439978(0x173)]('\x0a\x20\x20')):_0x33b8d2['push']('\x20\x20'+_0x4afb51[_0x439978(0x192)]());}_0x353dfc&&!_0x353dfc['includes']('npm\x20WARN')&&_0x33b8d2[_0x439978(0x156)](_0x439978(0x166)+_0x353dfc[_0x439978(0x192)]());_0x33b8d2['push'](_0x439978(0x14a));try{const {stdout:_0x25ceaa}=await exec(_0x439978(0x17d),{'cwd':_0x472a65,'timeout':0x7530}),_0x579790=JSON['parse'](_0x25ceaa);if(_0x579790[_0x439978(0x13d)]){_0x33b8d2['push'](_0x439978(0x19a));for(const _0xf00578 of Object[_0x439978(0x19b)](_0x528d2c)){_0x579790[_0x439978(0x13d)][_0xf00578]&&_0x33b8d2['push'](_0x439978(0x167)+_0xf00578+'@'+_0x579790[_0x439978(0x13d)][_0xf00578]['version']);}}}catch(_0x4dd3b0){this['logger']?.[_0x439978(0x196)]('npm\x20ls\x20failed:',_0x4dd3b0[_0x439978(0x14f)]);}return{'success':!![],'mode':_0x4f12a2,'message':_0x439978(0x18c)+Object[_0x439978(0x19b)](_0x528d2c)['length']+_0x439978(0x1ab),'statistics':{'totalDependencies':Object[_0x439978(0x19b)](_0x50a81e)['length'],'updatesAvailable':Object['keys'](_0x528d2c)[_0x439978(0x18e)],'updatesApplied':Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)],'errors':0x0},'updates':_0x528d2c,'backupCreated':_0x400527!==null,'backupPath':_0x400527,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}catch(_0x45b7ff){_0x33b8d2[_0x439978(0x156)]('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x45b7ff[_0x439978(0x14f)]);if(_0x400527)try{await a0_0x55781c[_0x439978(0x179)](_0x400527,_0x1ac3e5),_0x33b8d2[_0x439978(0x156)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x2950c3){_0x33b8d2['push']('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x4f12a2,'error':_0x439978(0x19d)+_0x45b7ff['message'],'statistics':{'totalDependencies':Object['keys'](_0x50a81e)['length'],'updatesAvailable':Object['keys'](_0x528d2c)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x528d2c,'backupCreated':_0x400527!==null,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}}else{if(_0x4f12a2===_0x439978(0x186)||_0x4f12a2===_0x439978(0x154))return _0x33b8d2[_0x439978(0x156)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x4f12a2,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x50a81e)[_0x439978(0x18e)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}}catch(_0x168021){return this[_0x439978(0x16a)]?.[_0x439978(0x16c)](_0x439978(0x14e),_0x168021),{'success':![],'error':_0x168021[_0x439978(0x14f)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x168021['message']};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x302dd=a0_0x3dab;(function(_0x7cc100,_0x216c4b){const _0x2e031d=a0_0x3dab,_0x4f2119=_0x7cc100();while(!![]){try{const _0x1b61cf=parseInt(_0x2e031d(0x10b))/0x1+-parseInt(_0x2e031d(0x102))/0x2*(-parseInt(_0x2e031d(0x101))/0x3)+-parseInt(_0x2e031d(0x118))/0x4*(-parseInt(_0x2e031d(0xf8))/0x5)+parseInt(_0x2e031d(0x11a))/0x6*(parseInt(_0x2e031d(0xfc))/0x7)+parseInt(_0x2e031d(0x132))/0x8*(-parseInt(_0x2e031d(0xf4))/0x9)+parseInt(_0x2e031d(0x12d))/0xa+-parseInt(_0x2e031d(0xe4))/0xb;if(_0x1b61cf===_0x216c4b)break;else _0x4f2119['push'](_0x4f2119['shift']());}catch(_0x1e83ef){_0x4f2119['push'](_0x4f2119['shift']());}}}(a0_0x1383,0xeacda));function a0_0x1383(){const _0x635bb8=['ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','AxnbCNjHEq','mty5odq1mdz1rwzZruS','yMfJA3vWC0nYzwf0zwq','CgfYC2vqyxjHBwv0zxjZ','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','cLbYB2nLC3nLzca','ywrK','q2HHBMDLzcbSAw5LCZOG','sw52ywXPzcbTB2rLoIa','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','D3jPDgvgAwXL','AxnqyxrOqwnJzxnZAwjSzq','zMLSzs1JB250zw50lxjLCgXHy2u','B2jQzwn0','s0iP','z2v0rgvZy3jPChrPB24','ouTTvNHfza','zxHLy3v0zq','zxHLyW','ihrVia','mZe4nZvJDgL5u00','BwvZC2fNzq','qKfds1vqx0vyvevou0LptG','CgfYC2vku09o','nJG3mteZseTey1vq','cKjHy2T1ChmGy3jLyxrLzdOG','CMvWBgfJzq','CgfYC2vytuW','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','mti5vMryq2fM','mtiXmZrpB0jlteq','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlwnVBNrLBNqTCMvWBgfJzsiScIaGiMzPBgvZiJOGwWOGicaGEWOGicaGicaICgf0Aci6icjZCMmVyxbWlMPZiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifSkicaGicaGicb7cIaGicaGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbVBgrgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjUzxDdB250zw50iJOGiMnVBNn0ig5LD0z1BMn0Aw9Uid0GkcKGpt4GE30IlaOGicaGicaGicaGiM1VzguIoIaIDhjPBsiScIaGicaGicaGicaIBgLUzxnmAw1PDci6ici1ldCTmtaIcIaGicaGicaGFqOGicaGicbDcIaGicb9cIaGxqP9cMbGyaOkuefsqu1fvevsuZOkcNbHDgGGkhjLCxvPCMvKktOkicaTifbHDgGGDg8GDgHLigzPBguGDg8GBw9KAwz5cIaGlsbdyw4GyMuGCMvSyxrPDMuGB3iGywjZB2X1DgukicaTiev4yw1WBgvZoIaIC3jJl2fWCc5QCYiSiciUl2nVBMzPzY5QC29UiGOkB2XKq29UDgvUDcaOCMvXDwLYzwqPoGOGic0Gq29UDgvUDcb0BYbMAw5KigfUzcbYzxbSywnLcIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbnDxn0igv4Axn0igLUigzPBgukcM5LD0nVBNrLBNqGkhjLCxvPCMvKktOkicaTifjLCgXHy2vTzw50ignVBNrLBNqkicaTifn1yMPLy3qGDg8GDhjPBsbTB2rLihbYB2nLC3nPBMCkicaTienHBIbIzsbZyw1LigXLBMD0AcWGC2HVCNrLCIWGB3iGBg9Uz2vYcGPTB2rLicHVChrPB25HBcK6cIaGlsbxAgL0zxnWywnLigHHBMrSAw5Nig1VzgukicaTie9WDgLVBNm6cIaGicaQicj0CMLTiIaOzgvMyxvSDcK6ifrYAw0GywXSihDOAxrLC3bHy2uGzNjVBsbIB3rOigvUzhmkicaGicOGiM5LD2XPBMvZiJOGt25SEsb0CMLTig5LD2XPBMuGy2HHCMfJDgvYCWOGicaGkIaIBM9Uzsi6ifvZzsbJB250zw50igv4ywn0BhKGyxmGChjVDMLKzwqkicaTieHLBhbZihDPDgGGBwf0y2HPBMCGzgvZCgL0zsbPBMrLBNrHDgLVBIbKAwzMzxjLBMnLCWOkBgLUzxnmAw1PDcaOB3b0Aw9UywWPoGOGic0GuMvZDhjPy3qGCMvWBgfJzw1LBNqGDg8GC3bLy2LMAwmGBgLUzxmkicaTiezVCM1HDdOGq29TBweTC2vWyxjHDgvKigXPBMuGBNvTyMvYCYbVCIbYyw5NzxmkicaTiev4yw1WBgvZoIaInsiSici1ldeWlde1iIWGiJuTmtaIlcaIms01ldeWlde1ltiWiGOGic0GtgLUzsbUDw1IzxjZigfYzsaXlwjHC2vKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbOyw5KBgvdBgLJAYa9icHLDMvUDcKGpt4GEYbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoYb9iIWkicaGicaGiM5LD0nVBNrLBNqIoIaIy29UC3qGAgfUzgXLq2XPy2SGpsaOzxzLBNqPid0+ihSGy29UC29Szs5SB2COj2nSAwnRzwqNktSGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSGFsiScIaGicaGicjTB2rLiJOGiNrYAw0IcIaGicb9xqOGih1DcN0kygbGcGPfEgfTCgXLidiGlsbmAw5LlwXPBwL0zwqGCMvWBgfJzw1LBNq6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifT7cIaGicaICgf0Aci6icjZCMmVqxbWlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbbueLFvvjmid0Gj2H0Dha6lY9SB2nHBgHVC3q6mZaWmcCIlaOGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbbueLFvvjmid0GChjVy2vZCY5LBNyUqvbjx1vstciScIaGicaGicjSAw5LC0XPBwL0iJOGiJeWltiWiGOGicaGFv0kicb9xqP9cMbGyaOkrxHHBxbSzsaZic0GtxvSDgLWBguGCMvWBgfJzw1LBNrZigLUig9UzsbMAwXLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBMzPzY5QCYiScIaGicaICMvWBgfJzw1LBNrZiJOGwWOGicaGicb7icjVBgrdB250zw50iJOGiKrfqLvhid0GzMfSC2uIlcaIBMv3q29UDgvUDci6icjerujvrYa9ihrYDwuIih0ScIaGicaGihSGiM9SzenVBNrLBNqIoIaIte9hx0XfvKvmid0Gj2vYCM9YjYiSicjUzxDdB250zw50iJOGiKXpr19mrvzftca9icDKzwj1zYCIih0kicaGif0kicb9xqP9cMbGyaOkrxHHBxbSzsa0ic0GtxvSDgLWBguGzMLSzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBEYaIB2XKq29UDgvUDci6icj2zxjZAw9Uid0GjZeUmc4WjYiSicjUzxDdB250zw50iJOGiNzLCNnPB24GpsaNms4XlJaNiIb9xqOGicaGFsWkicaGihSkicaGicaGiNbHDgGIoIaICgfJA2fNzs5QC29UiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifT7icjVBgrdB250zw50iJOGiLWIDMvYC2LVBLWIoIbCiJeUmc4WxciIlcaIBMv3q29UDgvUDci6icjCiNzLCNnPB25CiJOGxciXlJeUmfWIiIWGiM1VzguIoIaIBM9UzsiGFv0kicaGih0kicbDcN0kygbGcGPgrufuvvjfuZOklsbbDxrVBwf0AwmGyMfJA3vWignYzwf0Aw9UicGUyMfRigzPBgvZkqOTiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmklsbszxbSywnLBwvUDcbJB3vUDgLUzYbHBMqGC3rHDgLZDgLJCWOTie11BhrPlwzPBguGB3bLCMf0Aw9UCWOTieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmklsbjBNrLBgXPz2vUDcb3AgL0zxnWywnLigHHBMrSAw5NcGPmsu1jvefusu9ouZOklsbnyxHPBxvTigzPBguGC2L6ztOG','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','zxH0CMfJDef0DhjPyNv0zq','CMvSyxrPDMu','AM9PBG','tufyx0zjtevtx1bfuL9puevsqvrjt04','tM8GzgLMzMvYzw5Jzxm','D29YA2LUz0rPCMvJDg9YEq','mJG4nJrpvfPntLG','rgLMzIb0B28GBgfYz2uGka','CMvWBgfJzw1LBNrZ','Cgf0Aa','zxjYB3jZ','tufyx05fv19dt05uru5ux1njwKu','lI4U','CMvZB2X2zq','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','C3bSAxq','ywnJzxnZ','zMLSzxnqCM9JzxnZzwq','DhjPBq','ntGWyKLMz0PO','Dg90ywXszxbSywnLBwvUDhm','mte0tKnfu2XS','DxrMltG','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','cKvYCM9YCZOG','AxnbyNnVBhv0zq','BgLUzxnmAw1PDa','zMLSzxnnB2rPzMLLza','C3vIC3rYAw5N','zMLSzxm','z2vUzxjHDgvtDw1Tyxj5','DgLTzw91Da','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','yxbWBhLuCMLTtw9Kzq','CMvHzezPBgu','CMvWBgfJzunVBMzPzW','reLgrL9dt05urvHux0XjtKvt','Aw5JBhvKzxm','twfKzsa','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','mJi3otaWvMH3C2LH','x2LZtM9YBwfSAxPLzfbHCMfTCW','iebacG','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','BM9Uzq','ndC2ota0ogvVsuX4yq','Bwf4','tufyx0zjtevFu0LArq','tufyx09mrf9dt05uru5ux1njwKu','Aw5MBW','ChvZAa','C3rHCNrZv2L0Aa','yxbWBhLszxbSywnLBwvUDa','BwfW','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','CgfYC2vmAw5LuMfUz2vZ','B2XKq29UDgvUDa','rMLSzsa','BMv3q29UDgvUDa','revgqvvmvf9uuKLnx01preu','rMLSzsb0B28GBgfYz2uGkg1HEca','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','y2XLyw51Ca','Bw9Kzq','AxnbC3LUyW','tuiPoIa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','C3rYAw5N','D2fYBG','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','igzPBguOCYKktw9KAwzPzwqG','BgvUz3rO','Bg9Nz2vY','cIaGica','ChjVy2vZC0zPBgu'];a0_0x1383=function(){return _0x635bb8;};return a0_0x1383();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x13dd02}from'fs';function a0_0x3dab(_0x10e980,_0x4aea5d){_0x10e980=_0x10e980-0xc7;const _0x1383a2=a0_0x1383();let _0x3dab9d=_0x1383a2[_0x10e980];if(a0_0x3dab['wkWPZv']===undefined){var _0x4a8a9d=function(_0xce39f3){const _0x7dd0c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x13dd02='',_0xc3a20f='';for(let _0x1d899a=0x0,_0x1b13d7,_0x30b77c,_0xde56d2=0x0;_0x30b77c=_0xce39f3['charAt'](_0xde56d2++);~_0x30b77c&&(_0x1b13d7=_0x1d899a%0x4?_0x1b13d7*0x40+_0x30b77c:_0x30b77c,_0x1d899a++%0x4)?_0x13dd02+=String['fromCharCode'](0xff&_0x1b13d7>>(-0x2*_0x1d899a&0x6)):0x0){_0x30b77c=_0x7dd0c9['indexOf'](_0x30b77c);}for(let _0x37eba8=0x0,_0x16644b=_0x13dd02['length'];_0x37eba8<_0x16644b;_0x37eba8++){_0xc3a20f+='%'+('00'+_0x13dd02['charCodeAt'](_0x37eba8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc3a20f);};a0_0x3dab['WWdkPI']=_0x4a8a9d,a0_0x3dab['plQkfy']={},a0_0x3dab['wkWPZv']=!![];}const _0x4bbbf9=_0x1383a2[0x0],_0x2a0466=_0x10e980+_0x4bbbf9,_0x18903c=a0_0x3dab['plQkfy'][_0x2a0466];return!_0x18903c?(_0x3dab9d=a0_0x3dab['WWdkPI'](_0x3dab9d),a0_0x3dab['plQkfy'][_0x2a0466]=_0x3dab9d):_0x3dab9d=_0x18903c,_0x3dab9d;}import a0_0xc3a20f from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x1d899a={},_0x1b13d7=null){const _0x2404a9=a0_0x3dab;super(_0x1d899a,_0x1b13d7),this['id']=_0x2404a9(0xf0),this['requiresProject']=!![],this[_0x2404a9(0xd7)]=!![],this[_0x2404a9(0x124)]=_0x1d899a[_0x2404a9(0x124)]||0x1d4c0,this[_0x2404a9(0x128)]={...REPLACE_CONFIG,..._0x1d899a['replaceConfig']};}[a0_0x302dd(0xf3)](){const _0x4423d4=a0_0x302dd;return _0x4423d4(0x103)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0x4423d4(0x113)+REPLACE_CONFIG[_0x4423d4(0xc7)]/0x400+_0x4423d4(0x12c)+REPLACE_CONFIG[_0x4423d4(0x110)]/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x4423d4(0x104)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x4423d4(0xe0);}[a0_0x302dd(0xe6)](_0x30b77c){const _0x595255=a0_0x302dd;try{if(_0x30b77c[_0x595255(0x117)]()[_0x595255(0xca)]('{'))return this[_0x595255(0xfb)](_0x30b77c);return this[_0x595255(0xff)](_0x30b77c);}catch(_0xde56d2){this['logger']?.['error'](_0x595255(0xcd),{'error':_0xde56d2['message']});throw new Error(_0x595255(0xd4)+_0xde56d2[_0x595255(0xf9)]);}}[a0_0x302dd(0xfb)](_0x37eba8){const _0x284d5e=a0_0x302dd,_0x16644b=JSON['parse'](_0x37eba8);if(!_0x16644b['files']||!Array['isArray'](_0x16644b[_0x284d5e(0x122)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x16644b['files']['map'](_0x45e95d=>({'path':_0x45e95d['path'],'replacements':(_0x45e95d['replacements']||[])['map'](_0x55435d=>({'oldContent':_0x55435d['oldContent'],'newContent':_0x55435d[_0x284d5e(0xd1)],'mode':_0x55435d[_0x284d5e(0xd6)]||REPLACE_CONFIG[_0x284d5e(0xd2)],'linesLimit':_0x55435d[_0x284d5e(0x11f)]||null}))}))};}['parseXML'](_0x15ebed){const _0x4aaca1=a0_0x302dd,_0x344100=[],_0x46f31c=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x1f497f;while((_0x1f497f=_0x46f31c['exec'](_0x15ebed))!==null){const _0x5ac4ef=_0x1f497f[0x1],_0x2c598f=_0x1f497f[0x2],_0x19dedf=[],_0x26be21=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x12e388;while((_0x12e388=_0x26be21['exec'](_0x2c598f))!==null){const _0x1b8a21=_0x12e388[0x1]||'',_0x276946=_0x12e388[0x2],_0x335f81=this[_0x4aaca1(0x105)](_0x1b8a21,'mode')||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x265813=this[_0x4aaca1(0x105)](_0x1b8a21,'lines-limit'),_0xec1435=/<old-content>([\s\S]*?)<\/old-content>/i[_0x4aaca1(0xf6)](_0x276946);if(!_0xec1435){this['logger']?.['warn'](_0x4aaca1(0x100));continue;}const _0x75a700=_0xec1435[0x1],_0x5d281f=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x276946);if(!_0x5d281f){this['logger']?.[_0x4aaca1(0xdb)](_0x4aaca1(0xd9));continue;}const _0x535e1d=_0x5d281f[0x1],_0x9e9182=this[_0x4aaca1(0x126)](_0x75a700,_0x335f81),_0x137f86=this[_0x4aaca1(0x126)](_0x535e1d,_0x335f81);_0x19dedf['push']({'oldContent':_0x9e9182,'newContent':_0x137f86,'mode':_0x335f81,'linesLimit':_0x265813});}_0x19dedf['length']>0x0&&_0x344100[_0x4aaca1(0xc9)]({'path':_0x5ac4ef,'replacements':_0x19dedf});}return{'files':_0x344100};}[a0_0x302dd(0x105)](_0x397ef9,_0x239c79){const _0x110d21=a0_0x302dd,_0x220011=new RegExp(_0x239c79+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0xc5d0c0=_0x220011[_0x110d21(0xf6)](_0x397ef9);return _0xc5d0c0?_0xc5d0c0[0x1]:null;}[a0_0x302dd(0x126)](_0x13977e,_0x15d00c){const _0x44b2ca=a0_0x302dd;switch(_0x15d00c){case'newlines':return _0x13977e[_0x44b2ca(0xfe)](/^\n+|\n+$/g,'');case _0x44b2ca(0x131):return _0x13977e;case _0x44b2ca(0x117):default:return _0x13977e[_0x44b2ca(0x117)]();}}['getRequiredParameters'](){const _0x4b4d3c=a0_0x302dd;return[_0x4b4d3c(0x122)];}['customValidateParameters'](_0x213d23){const _0xc114a8=a0_0x302dd,_0x4c101e=[];if(!_0x213d23['files']||!Array['isArray'](_0x213d23['files']))_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0x125));else{_0x213d23[_0xc114a8(0x122)][_0xc114a8(0xde)]===0x0&&_0x4c101e[_0xc114a8(0xc9)]('files\x20array\x20cannot\x20be\x20empty');_0x213d23[_0xc114a8(0x122)]['length']>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x4c101e['push']('Cannot\x20process\x20more\x20than\x20'+this[_0xc114a8(0x128)][_0xc114a8(0x108)]+'\x20files\x20in\x20one\x20operation');for(const _0x41d427 of _0x213d23[_0xc114a8(0x122)]){!_0x41d427[_0xc114a8(0x10e)]&&_0x4c101e[_0xc114a8(0xc9)]('Each\x20file\x20must\x20have\x20a\x20path');_0x41d427[_0xc114a8(0x10e)]&&_0x41d427['path'][_0xc114a8(0x12a)]('..')&&_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0xe2)+_0x41d427[_0xc114a8(0x10e)]);if(!_0x41d427[_0xc114a8(0x10d)]||!Array[_0xc114a8(0xe3)](_0x41d427[_0xc114a8(0x10d)]))_0x4c101e['push'](_0xc114a8(0xd0)+_0x41d427[_0xc114a8(0x10e)]+_0xc114a8(0xdc));else{if(_0x41d427['replacements']['length']===0x0)_0x4c101e['push'](_0xc114a8(0xd0)+_0x41d427[_0xc114a8(0x10e)]+_0xc114a8(0x130));else for(const _0x3e50f1 of _0x41d427['replacements']){!_0x3e50f1['oldContent']&&_0x3e50f1['oldContent']!==''&&_0x4c101e[_0xc114a8(0xc9)]('Replacement\x20in\x20'+_0x41d427['path']+'\x20missing\x20oldContent'),!_0x3e50f1['newContent']&&_0x3e50f1['newContent']!==''&&_0x4c101e['push']('Replacement\x20in\x20'+_0x41d427[_0xc114a8(0x10e)]+'\x20missing\x20newContent'),_0x3e50f1['oldContent']&&_0x3e50f1['oldContent']['length']>this['replaceConfig'][_0xc114a8(0xc7)]&&_0x4c101e[_0xc114a8(0xc9)]('oldContent\x20too\x20large\x20(max\x20'+this[_0xc114a8(0x128)]['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x3e50f1[_0xc114a8(0xd1)]&&_0x3e50f1[_0xc114a8(0xd1)]['length']>this['replaceConfig'][_0xc114a8(0x110)]&&_0x4c101e['push'](_0xc114a8(0xe7)+this[_0xc114a8(0x128)][_0xc114a8(0x110)]/0x400+_0xc114a8(0xf2)),_0x3e50f1['mode']&&![_0xc114a8(0x117),'newlines',_0xc114a8(0x131)]['includes'](_0x3e50f1['mode'])&&_0x4c101e[_0xc114a8(0xc9)](_0xc114a8(0xeb)+_0x3e50f1['mode']+_0xc114a8(0xec));}}}}if(_0x4c101e[_0xc114a8(0xde)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x4c101e['join'](',\x20'));return{'valid':!![],'errors':[]};}[a0_0x302dd(0x12e)](_0x28a4d3){const _0x246602=a0_0x302dd;if(!_0x28a4d3[_0x246602(0x122)]||!Array['isArray'](_0x28a4d3['files'])||_0x28a4d3['files'][_0x246602(0xde)]===0x0)return![];const _0x5d5fd9=_0x28a4d3[_0x246602(0x122)][0x0];if(!_0x5d5fd9[_0x246602(0x10d)]||!Array[_0x246602(0xe3)](_0x5d5fd9[_0x246602(0x10d)])||_0x5d5fd9['replacements'][_0x246602(0xde)]===0x0)return![];return _0x5d5fd9['replacements'][0x0]['hasOwnProperty']('mode');}async[a0_0x302dd(0xf5)](_0x5a6da2,_0x316b89){const _0x18b91e=a0_0x302dd;typeof _0x5a6da2===_0x18b91e(0xda)&&(this[_0x18b91e(0xdf)]?.['info']('FileContentReplaceTool:\x20Parsing\x20string\x20parameters'),_0x5a6da2=this[_0x18b91e(0xe6)](_0x5a6da2));_0x5a6da2&&typeof _0x5a6da2===_0x18b91e(0xf1)&&_0x5a6da2['files']&&!this['_isNormalizedParams'](_0x5a6da2)&&(this['logger']?.['info']('FileContentReplaceTool:\x20Normalizing\x20object\x20parameters'),_0x5a6da2=this[_0x18b91e(0xfb)](JSON['stringify'](_0x5a6da2)));const {files:_0x15e764}=_0x5a6da2,{projectDir:_0x4f7c12,agentId:_0x3c8f6b,directoryAccess:_0x4d591e}=_0x316b89;let _0x2afd83=_0x4f7c12||process['cwd']();_0x4d591e&&_0x4d591e[_0x18b91e(0x10a)]&&(_0x2afd83=_0x4d591e['workingDirectory'],this[_0x18b91e(0xdf)]?.[_0x18b91e(0xc8)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x4d591e[_0x18b91e(0x10a)],'agentId':_0x3c8f6b}));this[_0x18b91e(0xdf)]?.[_0x18b91e(0xc8)]('Executing\x20file\x20content\x20replace',{'fileCount':_0x15e764['length'],'workingDirectory':_0x2afd83,'agentId':_0x3c8f6b});const _0x196729=[],_0x415a0f={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x46edf6 of _0x15e764){try{const _0xe4baa5=await this[_0x18b91e(0xe1)](_0x46edf6,_0x2afd83,_0x4d591e);_0x196729[_0x18b91e(0xc9)](_0xe4baa5),_0x415a0f[_0x18b91e(0x116)]++,_0xe4baa5['replacementsMade']>0x0&&(_0x415a0f['filesModified']++,_0x415a0f['totalReplacements']+=_0xe4baa5['replacementsMade']),_0xe4baa5['backupCreated']&&_0x415a0f['backupsCreated']++;}catch(_0x573c56){this[_0x18b91e(0xdf)]?.['error']('Error\x20processing\x20file\x20'+_0x46edf6['path'],{'error':_0x573c56['message']}),_0x196729[_0x18b91e(0xc9)]({'filePath':_0x46edf6['path'],'success':![],'error':_0x573c56[_0x18b91e(0xf9)]}),_0x415a0f[_0x18b91e(0x10f)]++;}}return{'success':_0x415a0f[_0x18b91e(0x10f)]===0x0,'results':_0x196729,'statistics':_0x415a0f,'summary':this[_0x18b91e(0x123)](_0x415a0f),'toolUsed':_0x18b91e(0xf0)};}async[a0_0x302dd(0xe1)](_0x465ace,_0x19bcfc,_0x405562){const _0x33f3a2=a0_0x302dd,{path:_0x43a153,replacements:_0x58a103}=_0x465ace,_0x2d026c=a0_0xc3a20f['isAbsolute'](_0x43a153)?_0x43a153:a0_0xc3a20f[_0x33f3a2(0x112)](_0x19bcfc,_0x43a153);if(_0x405562){const _0x58248b=this['isPathAccessible'](_0x2d026c,_0x19bcfc,_0x405562);if(!_0x58248b)throw new Error('Path\x20not\x20accessible:\x20'+_0x43a153);}try{await a0_0x13dd02[_0x33f3a2(0x115)](_0x2d026c);}catch(_0x1660d6){throw new Error('File\x20not\x20found:\x20'+_0x43a153);}const _0x479474=await a0_0x13dd02['stat'](_0x2d026c);if(_0x479474['size']>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error(_0x33f3a2(0xd3)+this[_0x33f3a2(0x128)][_0x33f3a2(0x134)]/(0x400*0x400)+_0x33f3a2(0xd8)+_0x43a153);let _0x4bd1d1=await a0_0x13dd02[_0x33f3a2(0x127)](_0x2d026c,'utf-8');const _0x2966fb=_0x4bd1d1;let _0x3b626a=![];if(this[_0x33f3a2(0x128)]['CREATE_BACKUPS']){const _0xd1c5ef=_0x2d026c+this[_0x33f3a2(0x128)][_0x33f3a2(0xfa)];try{await a0_0x13dd02[_0x33f3a2(0xee)](_0xd1c5ef,_0x2966fb,_0x33f3a2(0x11b)),_0x3b626a=!![];}catch(_0x44c2df){this[_0x33f3a2(0xdf)]?.[_0x33f3a2(0xdb)]('Failed\x20to\x20create\x20backup:\x20'+_0x44c2df[_0x33f3a2(0xf9)]);}}let _0x2f8ecf=0x0;const _0x50c325=[];for(const _0x4f85aa of _0x58a103){const _0xc57977=await this[_0x33f3a2(0xcb)](_0x4bd1d1,_0x4f85aa[_0x33f3a2(0xcf)],_0x4f85aa[_0x33f3a2(0xd1)],_0x4f85aa['linesLimit'],_0x4f85aa['mode']);_0x4bd1d1=_0xc57977['newContent'],_0x2f8ecf+=_0xc57977['count'],_0x50c325[_0x33f3a2(0xc9)]({'oldContent':_0x4f85aa[_0x33f3a2(0xcf)][_0x33f3a2(0x121)](0x0,0x32)+(_0x4f85aa[_0x33f3a2(0xcf)]['length']>0x32?_0x33f3a2(0x111):''),'newContent':_0x4f85aa['newContent']['substring'](0x0,0x32)+(_0x4f85aa['newContent']['length']>0x32?_0x33f3a2(0x111):''),'count':_0xc57977['count'],'mode':_0x4f85aa[_0x33f3a2(0xd6)],'linesLimit':_0x4f85aa['linesLimit']});}_0x2f8ecf>0x0&&await a0_0x13dd02['writeFile'](_0x2d026c,_0x4bd1d1,'utf-8');const _0x371b46=_0x2f8ecf>0x0?this['generateDiff'](_0x2966fb,_0x4bd1d1):null;return{'filePath':_0x43a153,'resolvedPath':_0x2d026c,'success':!![],'replacementsMade':_0x2f8ecf,'backupCreated':_0x3b626a,'replacementDetails':_0x50c325,'diff':_0x371b46,'message':_0x2f8ecf>0x0?_0x33f3a2(0x12b)+_0x2f8ecf+'\x20replacement(s)\x20in\x20'+_0x43a153:'No\x20replacements\x20made\x20in\x20'+_0x43a153+'\x20(content\x20not\x20found)'};}[a0_0x302dd(0xef)](_0x54df71,_0x7fb092,_0x3af0f0){const _0x2bdb97=a0_0x302dd,_0x5bcb2c=a0_0xc3a20f['relative'](_0x7fb092,_0x54df71);if(!_0x5bcb2c['startsWith']('..')&&!a0_0xc3a20f[_0x2bdb97(0x11e)](_0x5bcb2c))return!![];if(_0x3af0f0[_0x2bdb97(0x11c)])for(const _0x23130e of _0x3af0f0['writeEnabledDirectories']){const _0xeaf36c=a0_0xc3a20f[_0x2bdb97(0x106)](_0x23130e,_0x54df71);if(!_0xeaf36c[_0x2bdb97(0xca)]('..')&&!a0_0xc3a20f[_0x2bdb97(0x11e)](_0xeaf36c))return!![];}return![];}async['applyReplacement'](_0x43781c,_0x25d77a,_0x171aab,_0x3cc93d,_0x29334d){const _0x5766da=a0_0x302dd;if(!_0x3cc93d){const _0x31bc75=this['countOccurrences'](_0x43781c,_0x25d77a);if(_0x31bc75===0x0)return{'newContent':_0x43781c,'count':0x0};const _0x5bada2=_0x43781c['split'](_0x25d77a)[_0x5766da(0x107)](_0x171aab);return{'newContent':_0x5bada2,'count':_0x31bc75};}const _0x1b60a3=this[_0x5766da(0xce)](_0x3cc93d),_0x280d1f=_0x43781c[_0x5766da(0x114)]('\x0a');let _0x11093e=0x0;for(let _0x34940c=0x0;_0x34940c<_0x280d1f['length'];_0x34940c++){const _0x2371c7=_0x34940c+0x1;if(_0x1b60a3['has'](_0x2371c7)){if(_0x280d1f[_0x34940c][_0x5766da(0x12a)](_0x25d77a)){const _0x4cf47c=this['countOccurrences'](_0x280d1f[_0x34940c],_0x25d77a);_0x280d1f[_0x34940c]=_0x280d1f[_0x34940c][_0x5766da(0x114)](_0x25d77a)['join'](_0x171aab),_0x11093e+=_0x4cf47c;}}}return{'newContent':_0x280d1f['join']('\x0a'),'count':_0x11093e};}['countOccurrences'](_0x18b41b,_0x2846ff){const _0x536da4=a0_0x302dd;if(!_0x2846ff)return 0x0;return _0x18b41b['split'](_0x2846ff)[_0x536da4(0xde)]-0x1;}[a0_0x302dd(0xce)](_0x249137){const _0x146220=a0_0x302dd,_0x2cfa53=new Set();if(!_0x249137||_0x249137[_0x146220(0x117)]()==='')return _0x2cfa53;const _0x2be4ad=_0x249137['split'](',');for(const _0x23c5a of _0x2be4ad){const _0x641c2f=_0x23c5a[_0x146220(0x117)]();if(_0x641c2f==='')continue;if(_0x641c2f[_0x146220(0x12a)]('-')){const [_0x4fe8a4,_0x5aa537]=_0x641c2f[_0x146220(0x114)]('-')[_0x146220(0xcc)](_0xefb062=>parseInt(_0xefb062[_0x146220(0x117)](),0xa));if(!isNaN(_0x4fe8a4)&&!isNaN(_0x5aa537)&&_0x5aa537-_0x4fe8a4<this['replaceConfig']['MAX_LINE_RANGE_SIZE'])for(let _0x20971b=_0x4fe8a4;_0x20971b<=_0x5aa537;_0x20971b++){_0x2cfa53[_0x146220(0xe9)](_0x20971b);}}else{const _0x171f60=parseInt(_0x641c2f,0xa);!isNaN(_0x171f60)&&_0x2cfa53[_0x146220(0xe9)](_0x171f60);}}return _0x2cfa53;}['generateDiff'](_0xb62cf8,_0x25b1c5){const _0x52bd31=a0_0x302dd,_0x8cfaa6=_0xb62cf8[_0x52bd31(0x114)]('\x0a'),_0x4408c7=_0x25b1c5['split']('\x0a');let _0xd652ca=-0x1,_0x341958=-0x1;const _0xa113b=Math[_0x52bd31(0x133)](_0x8cfaa6['length'],_0x4408c7[_0x52bd31(0xde)]);for(let _0x4e0e1d=0x0;_0x4e0e1d<_0xa113b;_0x4e0e1d++){const _0x818f70=_0x4e0e1d<_0x8cfaa6['length']?_0x8cfaa6[_0x4e0e1d]:'',_0x43c53e=_0x4e0e1d<_0x4408c7[_0x52bd31(0xde)]?_0x4408c7[_0x4e0e1d]:'';if(_0x818f70!==_0x43c53e){if(_0xd652ca===-0x1)_0xd652ca=_0x4e0e1d;_0x341958=_0x4e0e1d;}}if(_0xd652ca===-0x1)return _0x52bd31(0x109);const _0x4f0f8c=this[_0x52bd31(0x128)][_0x52bd31(0x129)],_0xc627ee=Math[_0x52bd31(0x133)](0x0,_0xd652ca-_0x4f0f8c),_0x2e2717=Math['min'](_0xa113b-0x1,_0x341958+_0x4f0f8c);if(_0x2e2717-_0xc627ee>this[_0x52bd31(0x128)]['MAX_DIFF_LINES'])return _0x52bd31(0x10c)+(_0x2e2717-_0xc627ee+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x52bd31(0xea)+(_0xd652ca+0x1)+_0x52bd31(0xf7)+(_0x341958+0x1));let _0x146909='@@\x20-'+(_0xc627ee+0x1)+','+(_0x2e2717-_0xc627ee+0x1)+'\x20+'+(_0xc627ee+0x1)+','+(_0x2e2717-_0xc627ee+0x1)+_0x52bd31(0x12f);for(let _0x3db436=_0xc627ee;_0x3db436<=_0x2e2717;_0x3db436++){const _0x33ac0d=_0x3db436<_0x8cfaa6[_0x52bd31(0xde)]?_0x8cfaa6[_0x3db436]:'',_0xf1feff=_0x3db436<_0x4408c7['length']?_0x4408c7[_0x3db436]:'';_0x33ac0d===_0xf1feff?_0x146909+='\x20\x20'+_0x33ac0d+'\x0a':(_0x146909+='-\x20'+_0x33ac0d+'\x0a',_0x146909+='+\x20'+_0xf1feff+'\x0a');}return _0x146909;}[a0_0x302dd(0x123)](_0x46ed58){const _0x3cbfa6=a0_0x302dd;return(_0x3cbfa6(0xe8)+_0x46ed58['filesProcessed']+_0x3cbfa6(0xdd)+_0x46ed58[_0x3cbfa6(0x120)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x46ed58[_0x3cbfa6(0x119)]+_0x3cbfa6(0xfd)+_0x46ed58[_0x3cbfa6(0xe5)]+_0x3cbfa6(0x11d)+_0x46ed58['errors']+_0x3cbfa6(0xe0))[_0x3cbfa6(0x117)]();}async[a0_0x302dd(0xd5)](_0x369826){const _0x55e618=a0_0x302dd;this['logger']?.[_0x55e618(0xc8)](_0x55e618(0xed),{'operationId':_0x369826});}}export default FileContentReplaceTool;
|
|
1
|
+
const a0_0x4c7ca7=a0_0x577b;(function(_0x263ab4,_0x4239f6){const _0x1bb705=a0_0x577b,_0x35fc4d=_0x263ab4();while(!![]){try{const _0x317059=-parseInt(_0x1bb705(0x222))/0x1+parseInt(_0x1bb705(0x1de))/0x2*(parseInt(_0x1bb705(0x206))/0x3)+-parseInt(_0x1bb705(0x21b))/0x4+-parseInt(_0x1bb705(0x21a))/0x5*(-parseInt(_0x1bb705(0x1f9))/0x6)+-parseInt(_0x1bb705(0x1e9))/0x7+parseInt(_0x1bb705(0x22a))/0x8*(-parseInt(_0x1bb705(0x225))/0x9)+parseInt(_0x1bb705(0x221))/0xa*(parseInt(_0x1bb705(0x241))/0xb);if(_0x317059===_0x4239f6)break;else _0x35fc4d['push'](_0x35fc4d['shift']());}catch(_0x3d6eef){_0x35fc4d['push'](_0x35fc4d['shift']());}}}(a0_0x45e1,0x687c6));function a0_0x577b(_0xcf8322,_0x2c7f4e){_0xcf8322=_0xcf8322-0x1d6;const _0x45e150=a0_0x45e1();let _0x577b11=_0x45e150[_0xcf8322];if(a0_0x577b['ZSmHqW']===undefined){var _0xdc3c51=function(_0x5bddc2){const _0xd114fb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c8863='',_0x34086d='';for(let _0x18e653=0x0,_0x5a3347,_0x24b61d,_0x43dda3=0x0;_0x24b61d=_0x5bddc2['charAt'](_0x43dda3++);~_0x24b61d&&(_0x5a3347=_0x18e653%0x4?_0x5a3347*0x40+_0x24b61d:_0x24b61d,_0x18e653++%0x4)?_0x4c8863+=String['fromCharCode'](0xff&_0x5a3347>>(-0x2*_0x18e653&0x6)):0x0){_0x24b61d=_0xd114fb['indexOf'](_0x24b61d);}for(let _0xf3a24b=0x0,_0x4a5933=_0x4c8863['length'];_0xf3a24b<_0x4a5933;_0xf3a24b++){_0x34086d+='%'+('00'+_0x4c8863['charCodeAt'](_0xf3a24b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34086d);};a0_0x577b['MOEmbJ']=_0xdc3c51,a0_0x577b['BIWlOJ']={},a0_0x577b['ZSmHqW']=!![];}const _0x58cd15=_0x45e150[0x0],_0x350e39=_0xcf8322+_0x58cd15,_0x376af8=a0_0x577b['BIWlOJ'][_0x350e39];return!_0x376af8?(_0x577b11=a0_0x577b['MOEmbJ'](_0x577b11),a0_0x577b['BIWlOJ'][_0x350e39]=_0x577b11):_0x577b11=_0x376af8,_0x577b11;}function a0_0x45e1(){const _0x35f42f=['zxH0CMfJDef0DhjPyNv0zq','tufyx05fv19dt05uru5ux1njwKu','AxnbC3LUyW','C3rHCNrZv2L0Aa','CMvWBgfJzw1LBNrZ','ChvZAa','Aw5MBW','zMLSzxm','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','yMfJA3vWq3jLyxrLza','ntm3mJvIzwXszxe','mZiZnti4mgjTsNL3uW','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','AM9PBG','zMLSzxnqCM9JzxnZzwq','z2vUzxjHDgvtDw1Tyxj5','yxbWBhLszxbSywnLBwvUDa','mJKYmhLuAhL5ta','mtm5odi4yMDSt3bp','y291BNrpy2n1CNjLBMnLCW','DhjPBq','ndi0nJjWr09JCwC','zxHLyW','CMvWBgfJzq','ywnJzxnZ','BwfW','mtm4nhfjq2zcwa','ig1PC3nPBMCGBMv3q29UDgvUDa','yxbWBhLuCMLTtw9Kzq','tufyx0zjtevFu0LArq','z2v0rgvZy3jPChrPB24','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','z2vUzxjHDgveAwzM','Aw5JBhvKzxm','cLbYB2nLC3nLzca','qKfds1vqx0vyvevou0LptG','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','lMjHAW','CMvWBgfJzunVBMzPzW','CgfYC2vku09o','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','C2L6zq','BgLUzxmTBgLTAxq','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','zMLSzs1JB250zw50lxjLCgXHy2u','Cgf0Aa','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','mZaXmdDQugHNqM8','AgfZt3DUuhjVCgvYDhK','Bwf4','BMv3q29UDgvUDa','C3rYAw5N','CMvZB2X2zq','Bw9Kzq','Bg9Nz2vY','BwvZC2fNzq','sw52ywXPzcbTB2rLoIa','nti0oeTZtuX0DW','iebacG','CMvHzezPBgu','D3jPDgvgAwXL','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','B2XKq29UDgvUDa','D2fYBG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','BMv3BgLUzxm','igzPBgvZigLUig9UzsbVCgvYyxrPB24','revgqvvmvf9uuKLnx01preu','ota3mtm3rejHwM5g','ihrVia','BgvUz3rO','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','C3rYAw5NAwz5','ywrK','DxrMltG','tufyx0rjrKzFteLorvm','cKvYCM9YCZOG','rMLSzsa','zxjYB3i','igzPBguOCYKktw9KAwzPzwqG','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','tufyx09mrf9dt05uru5ux1njwKu','AxnbyNnVBhv0zq','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','ndC0BhLtq2LT','twfKzsa','ChjVy2vZC0zPBgu','CMvWBgfJzw1LBNrZtwfKzq','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','y291BNq','tufyx0zjtevtx1bfuL9puevsqvrjt04','D29YA2LUz0rPCMvJDg9YEq','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','zMLSzxnnB2rPzMLLza','BgLUzxnmAw1PDa','AxnbCNjHEq','C3bSAxq','nZCXCevWu3fI','y3DK','tufyx0XjtKvFuKfor0vFu0LArq','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','rMLSzsb0B28GBgfYz2uGkg1HEca','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','Dg90ywXszxbSywnLBwvUDhm','AgfZ','zxjYB3jZ','tM8GzgLMzMvYzw5Jzxm'];a0_0x45e1=function(){return _0x35f42f;};return a0_0x45e1();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x4c8863}from'fs';import a0_0x34086d 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_0x4c7ca7(0x236),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x4c7ca7(0x224)};class FileContentReplaceTool extends BaseTool{constructor(_0x18e653={},_0x5a3347=null){const _0x312cac=a0_0x4c7ca7;super(_0x18e653,_0x5a3347),this['id']='file-content-replace',this['requiresProject']=!![],this[_0x312cac(0x212)]=!![],this['timeout']=_0x18e653['timeout']||0x1d4c0,this[_0x312cac(0x237)]={...REPLACE_CONFIG,..._0x18e653[_0x312cac(0x237)]};}[a0_0x4c7ca7(0x22e)](){const _0x179a39=a0_0x4c7ca7;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x20\x225\x22,\x20\x225,10,15\x22,\x20\x225-10\x22,\x20\x221-5,10,15-20\x22\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20props.onClick?.(event);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/App.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20API_URL\x20=\x20\x27http://localhost:3000\x27\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20API_URL\x20=\x20process.env.API_URL\x22,\x0a\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x2210-20\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/config.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22DEBUG\x20=\x20false\x22,\x20\x22newContent\x22:\x20\x22DEBUG\x20=\x20true\x22\x20},\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27error\x27\x22,\x20\x22newContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27debug\x27\x22\x20}\x0a\x20\x20\x20\x20]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22version\x20=\x20\x271.0.0\x27\x22,\x20\x22newContent\x22:\x20\x22version\x20=\x20\x271.1.0\x27\x22\x20}]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22package.json\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.0.0\x5c\x22\x22,\x20\x22newContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.1.0\x5c\x22\x22,\x20\x22mode\x22:\x20\x22none\x22\x20}]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aFEATURES:\x0a-\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a-\x20Before/after\x20diff\x20reports\x0a-\x20Replacement\x20counting\x20and\x20statistics\x0a-\x20Multi-file\x20operations\x0a-\x20Line-limited\x20replacements\x0a-\x20Intelligent\x20whitespace\x20handling\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x179a39(0x22d)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG[_0x179a39(0x1f6)]/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+_0x179a39(0x1fd)+REPLACE_CONFIG[_0x179a39(0x1ec)]+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0x179a39(0x1ff)]+'\x0a\x20\x20\x20\x20';}['parseParameters'](_0x24b61d){const _0x3e9233=a0_0x4c7ca7;try{if(_0x24b61d[_0x3e9233(0x224)]()[_0x3e9233(0x213)]('{'))return this['parseJSON'](_0x24b61d);return this['parseXML'](_0x24b61d);}catch(_0x43dda3){this['logger']?.[_0x3e9233(0x1f3)](_0x3e9233(0x239),{'error':_0x43dda3['message']});throw new Error(_0x3e9233(0x235)+_0x43dda3['message']);}}['parseJSON'](_0xf3a24b){const _0x270fad=a0_0x4c7ca7,_0x4a5933=JSON['parse'](_0xf3a24b);if(!_0x4a5933['files']||!Array['isArray'](_0x4a5933[_0x270fad(0x217)]))throw new Error(_0x270fad(0x1e5));return{'files':_0x4a5933['files'][_0x270fad(0x229)](_0x2098b6=>({'path':_0x2098b6['path'],'replacements':(_0x2098b6[_0x270fad(0x214)]||[])['map'](_0x17d52c=>({'oldContent':_0x17d52c['oldContent'],'newContent':_0x17d52c['newContent'],'mode':_0x17d52c[_0x270fad(0x1da)]||REPLACE_CONFIG[_0x270fad(0x1e8)],'linesLimit':_0x17d52c['linesLimit']||null}))}))};}['parseXML'](_0x3c1cd6){const _0x47b1cf=a0_0x4c7ca7,_0x1bc4d8=[],_0x2fd417=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x234221;while((_0x234221=_0x2fd417['exec'](_0x3c1cd6))!==null){const _0x2313ef=_0x234221[0x1],_0x3ee31d=_0x234221[0x2],_0x3fce28=[],_0x972d40=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x2d73d6;while((_0x2d73d6=_0x972d40['exec'](_0x3ee31d))!==null){const _0x51ebd5=_0x2d73d6[0x1]||'',_0x37b289=_0x2d73d6[0x2],_0x3ec7ff=this['extractAttribute'](_0x51ebd5,_0x47b1cf(0x1da))||REPLACE_CONFIG[_0x47b1cf(0x1e8)],_0x22bf71=this[_0x47b1cf(0x210)](_0x51ebd5,_0x47b1cf(0x23c)),_0x8744be=/<old-content>([\s\S]*?)<\/old-content>/i[_0x47b1cf(0x226)](_0x37b289);if(!_0x8744be){this['logger']?.[_0x47b1cf(0x1e4)]('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x297edd=_0x8744be[0x1],_0x30fc28=/<new-content>([\s\S]*?)<\/new-content>/i[_0x47b1cf(0x226)](_0x37b289);if(!_0x30fc28){this['logger']?.[_0x47b1cf(0x1e4)](_0x47b1cf(0x234));continue;}const _0x321a28=_0x30fc28[0x1],_0x1b3438=this[_0x47b1cf(0x22c)](_0x297edd,_0x3ec7ff),_0x2dcf31=this['applyTrimMode'](_0x321a28,_0x3ec7ff);_0x3fce28[_0x47b1cf(0x215)]({'oldContent':_0x1b3438,'newContent':_0x2dcf31,'mode':_0x3ec7ff,'linesLimit':_0x22bf71});}_0x3fce28['length']>0x0&&_0x1bc4d8[_0x47b1cf(0x215)]({'path':_0x2313ef,'replacements':_0x3fce28});}return{'files':_0x1bc4d8};}['extractAttribute'](_0x2db63c,_0x411d75){const _0x5c95d2=new RegExp(_0x411d75+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x2e180f=_0x5c95d2['exec'](_0x2db63c);return _0x2e180f?_0x2e180f[0x1]:null;}[a0_0x4c7ca7(0x22c)](_0x39bae9,_0x5abdea){const _0x43d036=a0_0x4c7ca7;switch(_0x5abdea){case _0x43d036(0x1e6):return _0x39bae9[_0x43d036(0x227)](/^\n+|\n+$/g,'');case'none':return _0x39bae9;case _0x43d036(0x224):default:return _0x39bae9[_0x43d036(0x224)]();}}[a0_0x4c7ca7(0x22f)](){return['files'];}['customValidateParameters'](_0x192eb2){const _0x35a375=a0_0x4c7ca7,_0x17a9eb=[];if(!_0x192eb2[_0x35a375(0x217)]||!Array[_0x35a375(0x204)](_0x192eb2['files']))_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x23d));else{_0x192eb2['files'][_0x35a375(0x1eb)]===0x0&&_0x17a9eb[_0x35a375(0x215)]('files\x20array\x20cannot\x20be\x20empty');_0x192eb2[_0x35a375(0x217)]['length']>this['replaceConfig'][_0x35a375(0x1ff)]&&_0x17a9eb[_0x35a375(0x215)]('Cannot\x20process\x20more\x20than\x20'+this[_0x35a375(0x237)]['MAX_FILES_PER_OPERATION']+_0x35a375(0x1e7));for(const _0xb55524 of _0x192eb2['files']){!_0xb55524['path']&&_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x209));_0xb55524[_0x35a375(0x23f)]&&_0xb55524[_0x35a375(0x23f)][_0x35a375(0x231)]('..')&&_0x17a9eb['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0xb55524[_0x35a375(0x23f)]);if(!_0xb55524[_0x35a375(0x214)]||!Array[_0x35a375(0x204)](_0xb55524[_0x35a375(0x214)]))_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x1f2)+_0xb55524[_0x35a375(0x23f)]+_0x35a375(0x201));else{if(_0xb55524['replacements'][_0x35a375(0x1eb)]===0x0)_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x1f2)+_0xb55524[_0x35a375(0x23f)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x4f7d9a of _0xb55524['replacements']){!_0x4f7d9a[_0x35a375(0x1e3)]&&_0x4f7d9a[_0x35a375(0x1e3)]!==''&&_0x17a9eb['push']('Replacement\x20in\x20'+_0xb55524['path']+'\x20missing\x20oldContent'),!_0x4f7d9a['newContent']&&_0x4f7d9a['newContent']!==''&&_0x17a9eb['push']('Replacement\x20in\x20'+_0xb55524['path']+_0x35a375(0x22b)),_0x4f7d9a['oldContent']&&_0x4f7d9a[_0x35a375(0x1e3)][_0x35a375(0x1eb)]>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0x17a9eb[_0x35a375(0x215)]('oldContent\x20too\x20large\x20(max\x20'+this[_0x35a375(0x237)][_0x35a375(0x1f6)]/0x400+'KB)'),_0x4f7d9a[_0x35a375(0x1d7)]&&_0x4f7d9a[_0x35a375(0x1d7)][_0x35a375(0x1eb)]>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x17a9eb['push'](_0x35a375(0x218)+this['replaceConfig'][_0x35a375(0x211)]/0x400+'KB)'),_0x4f7d9a[_0x35a375(0x1da)]&&![_0x35a375(0x224),_0x35a375(0x1e6),'none'][_0x35a375(0x231)](_0x4f7d9a[_0x35a375(0x1da)])&&_0x17a9eb['push'](_0x35a375(0x1dd)+_0x4f7d9a[_0x35a375(0x1da)]+_0x35a375(0x240));}}}}if(_0x17a9eb['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x17a9eb['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x56dc9a){const _0x11249f=a0_0x4c7ca7;if(!_0x56dc9a[_0x11249f(0x217)]||!Array['isArray'](_0x56dc9a[_0x11249f(0x217)])||_0x56dc9a['files'][_0x11249f(0x1eb)]===0x0)return![];const _0x2631bb=_0x56dc9a[_0x11249f(0x217)][0x0];if(!_0x2631bb['replacements']||!Array['isArray'](_0x2631bb[_0x11249f(0x214)])||_0x2631bb['replacements']['length']===0x0)return![];return _0x2631bb['replacements'][0x0][_0x11249f(0x242)]('mode');}async['execute'](_0x353985,_0x22d818){const _0x122102=a0_0x4c7ca7;typeof _0x353985===_0x122102(0x1d8)&&(this['logger']?.['info'](_0x122102(0x21c)),_0x353985=this['parseParameters'](_0x353985));_0x353985&&typeof _0x353985==='object'&&_0x353985[_0x122102(0x217)]&&!this['_isNormalizedParams'](_0x353985)&&(this['logger']?.['info'](_0x122102(0x23a)),_0x353985=this[_0x122102(0x238)](JSON[_0x122102(0x1ed)](_0x353985)));const {files:_0x487e7f}=_0x353985,{projectDir:_0x129487,agentId:_0x236c3e,directoryAccess:_0x45c59c}=_0x22d818;let _0x9bff9c=_0x129487||process[_0x122102(0x207)]();_0x45c59c&&_0x45c59c['workingDirectory']&&(_0x9bff9c=_0x45c59c[_0x122102(0x200)],this['logger']?.[_0x122102(0x216)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x45c59c[_0x122102(0x200)],'agentId':_0x236c3e}));this[_0x122102(0x1db)]?.['info'](_0x122102(0x20b),{'fileCount':_0x487e7f['length'],'workingDirectory':_0x9bff9c,'agentId':_0x236c3e});const _0x1f85b2=[],_0x37ffb0={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x40fd67 of _0x487e7f){try{const _0x57c201=await this[_0x122102(0x1fb)](_0x40fd67,_0x9bff9c,_0x45c59c);_0x1f85b2[_0x122102(0x215)](_0x57c201),_0x37ffb0['filesProcessed']++,_0x57c201[_0x122102(0x1fc)]>0x0&&(_0x37ffb0[_0x122102(0x202)]++,_0x37ffb0[_0x122102(0x20c)]+=_0x57c201['replacementsMade']),_0x57c201[_0x122102(0x219)]&&_0x37ffb0['backupsCreated']++;}catch(_0xcc56d3){this[_0x122102(0x1db)]?.[_0x122102(0x1f3)](_0x122102(0x1f5)+_0x40fd67[_0x122102(0x23f)],{'error':_0xcc56d3[_0x122102(0x1dc)]}),_0x1f85b2['push']({'filePath':_0x40fd67['path'],'success':![],'error':_0xcc56d3['message']}),_0x37ffb0[_0x122102(0x20e)]++;}}return{'success':_0x37ffb0['errors']===0x0,'results':_0x1f85b2,'statistics':_0x37ffb0,'summary':this['generateSummary'](_0x37ffb0),'toolUsed':_0x122102(0x23e)};}async['processFile'](_0x25d7b9,_0x389ea6,_0x4b1c00){const _0x4b652d=a0_0x4c7ca7,{path:_0x435ba4,replacements:_0x3f0266}=_0x25d7b9,_0x3d6b92=a0_0x34086d[_0x4b652d(0x1f7)](_0x435ba4)?_0x435ba4:a0_0x34086d[_0x4b652d(0x1d9)](_0x389ea6,_0x435ba4);if(_0x4b1c00){const _0x4ffa6c=this['isPathAccessible'](_0x3d6b92,_0x389ea6,_0x4b1c00);if(!_0x4ffa6c)throw new Error('Path\x20not\x20accessible:\x20'+_0x435ba4);}try{await a0_0x4c8863[_0x4b652d(0x228)](_0x3d6b92);}catch(_0x46a949){throw new Error('File\x20not\x20found:\x20'+_0x435ba4);}const _0x41a5fc=await a0_0x4c8863['stat'](_0x3d6b92);if(_0x41a5fc[_0x4b652d(0x23b)]>this[_0x4b652d(0x237)]['MAX_FILE_SIZE'])throw new Error(_0x4b652d(0x20a)+this[_0x4b652d(0x237)][_0x4b652d(0x22d)]/(0x400*0x400)+'MB):\x20'+_0x435ba4);let _0x247875=await a0_0x4c8863[_0x4b652d(0x1e0)](_0x3d6b92,'utf-8');const _0x5889a5=_0x247875;let _0x4cef4a=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0xd22525=_0x3d6b92+this['replaceConfig'][_0x4b652d(0x233)];try{await a0_0x4c8863[_0x4b652d(0x1e1)](_0xd22525,_0x5889a5,_0x4b652d(0x1ef)),_0x4cef4a=!![];}catch(_0x2495e1){this['logger']?.['warn']('Failed\x20to\x20create\x20backup:\x20'+_0x2495e1[_0x4b652d(0x1dc)]);}}let _0x144cce=0x0;const _0x324700=[];for(const _0x3a4c21 of _0x3f0266){const _0x1d6f62=await this[_0x4b652d(0x220)](_0x247875,_0x3a4c21['oldContent'],_0x3a4c21['newContent'],_0x3a4c21[_0x4b652d(0x203)],_0x3a4c21[_0x4b652d(0x1da)]);_0x247875=_0x1d6f62[_0x4b652d(0x1d7)],_0x144cce+=_0x1d6f62[_0x4b652d(0x1fe)],_0x324700[_0x4b652d(0x215)]({'oldContent':_0x3a4c21[_0x4b652d(0x1e3)]['substring'](0x0,0x32)+(_0x3a4c21['oldContent'][_0x4b652d(0x1eb)]>0x32?'...':''),'newContent':_0x3a4c21['newContent']['substring'](0x0,0x32)+(_0x3a4c21[_0x4b652d(0x1d7)][_0x4b652d(0x1eb)]>0x32?'...':''),'count':_0x1d6f62[_0x4b652d(0x1fe)],'mode':_0x3a4c21[_0x4b652d(0x1da)],'linesLimit':_0x3a4c21[_0x4b652d(0x203)]});}_0x144cce>0x0&&await a0_0x4c8863[_0x4b652d(0x1e1)](_0x3d6b92,_0x247875,_0x4b652d(0x1ef));const _0x1fc68a=_0x144cce>0x0?this[_0x4b652d(0x230)](_0x5889a5,_0x247875):null;return{'filePath':_0x435ba4,'resolvedPath':_0x3d6b92,'success':!![],'replacementsMade':_0x144cce,'backupCreated':_0x4cef4a,'replacementDetails':_0x324700,'diff':_0x1fc68a,'message':_0x144cce>0x0?_0x4b652d(0x1fa)+_0x144cce+'\x20replacement(s)\x20in\x20'+_0x435ba4:'No\x20replacements\x20made\x20in\x20'+_0x435ba4+'\x20(content\x20not\x20found)'};}['isPathAccessible'](_0x25e4e4,_0x147ae1,_0x3be42d){const _0x5ab688=a0_0x4c7ca7,_0x3835c2=a0_0x34086d['relative'](_0x147ae1,_0x25e4e4);if(!_0x3835c2['startsWith']('..')&&!a0_0x34086d[_0x5ab688(0x1f7)](_0x3835c2))return!![];if(_0x3be42d[_0x5ab688(0x1e2)])for(const _0x276467 of _0x3be42d['writeEnabledDirectories']){const _0x1b6391=a0_0x34086d['relative'](_0x276467,_0x25e4e4);if(!_0x1b6391[_0x5ab688(0x213)]('..')&&!a0_0x34086d['isAbsolute'](_0x1b6391))return!![];}return![];}async['applyReplacement'](_0x5f0f84,_0x125436,_0x17c487,_0x214cba,_0x4882c6){const _0x1e268e=a0_0x4c7ca7;if(!_0x214cba){const _0x5662c9=this[_0x1e268e(0x223)](_0x5f0f84,_0x125436);if(_0x5662c9===0x0)return{'newContent':_0x5f0f84,'count':0x0};const _0x140084=_0x5f0f84['split'](_0x125436)[_0x1e268e(0x21d)](_0x17c487);return{'newContent':_0x140084,'count':_0x5662c9};}const _0x18f1b2=this['parseLineRanges'](_0x214cba),_0x4ff4cc=_0x5f0f84['split']('\x0a');let _0x3cc872=0x0;for(let _0x5b3f0d=0x0;_0x5b3f0d<_0x4ff4cc['length'];_0x5b3f0d++){const _0x3021ee=_0x5b3f0d+0x1;if(_0x18f1b2[_0x1e268e(0x20d)](_0x3021ee)){if(_0x4ff4cc[_0x5b3f0d]['includes'](_0x125436)){const _0x45810c=this[_0x1e268e(0x223)](_0x4ff4cc[_0x5b3f0d],_0x125436);_0x4ff4cc[_0x5b3f0d]=_0x4ff4cc[_0x5b3f0d][_0x1e268e(0x205)](_0x125436)[_0x1e268e(0x21d)](_0x17c487),_0x3cc872+=_0x45810c;}}}return{'newContent':_0x4ff4cc[_0x1e268e(0x21d)]('\x0a'),'count':_0x3cc872};}[a0_0x4c7ca7(0x223)](_0x193362,_0xfdb902){const _0x2a511b=a0_0x4c7ca7;if(!_0xfdb902)return 0x0;return _0x193362[_0x2a511b(0x205)](_0xfdb902)['length']-0x1;}['parseLineRanges'](_0x3ebbbc){const _0x15f862=a0_0x4c7ca7,_0x4ca531=new Set();if(!_0x3ebbbc||_0x3ebbbc[_0x15f862(0x224)]()==='')return _0x4ca531;const _0x3ac6d3=_0x3ebbbc['split'](',');for(const _0x5d7b90 of _0x3ac6d3){const _0x5e6e11=_0x5d7b90[_0x15f862(0x224)]();if(_0x5e6e11==='')continue;if(_0x5e6e11[_0x15f862(0x231)]('-')){const [_0x172861,_0x1eece8]=_0x5e6e11['split']('-')['map'](_0x21394c=>parseInt(_0x21394c['trim'](),0xa));if(!isNaN(_0x172861)&&!isNaN(_0x1eece8)&&_0x1eece8-_0x172861<this['replaceConfig'][_0x15f862(0x208)])for(let _0x556eab=_0x172861;_0x556eab<=_0x1eece8;_0x556eab++){_0x4ca531[_0x15f862(0x1ee)](_0x556eab);}}else{const _0x1144ae=parseInt(_0x5e6e11,0xa);!isNaN(_0x1144ae)&&_0x4ca531[_0x15f862(0x1ee)](_0x1144ae);}}return _0x4ca531;}[a0_0x4c7ca7(0x230)](_0x5a2189,_0x5a7e2b){const _0x14b920=a0_0x4c7ca7,_0xb6fb8d=_0x5a2189[_0x14b920(0x205)]('\x0a'),_0x1391af=_0x5a7e2b['split']('\x0a');let _0x5cefbf=-0x1,_0x4bf504=-0x1;const _0x1d6a70=Math[_0x14b920(0x1d6)](_0xb6fb8d['length'],_0x1391af['length']);for(let _0x2e6ba2=0x0;_0x2e6ba2<_0x1d6a70;_0x2e6ba2++){const _0x2222fa=_0x2e6ba2<_0xb6fb8d['length']?_0xb6fb8d[_0x2e6ba2]:'',_0x134bfb=_0x2e6ba2<_0x1391af['length']?_0x1391af[_0x2e6ba2]:'';if(_0x2222fa!==_0x134bfb){if(_0x5cefbf===-0x1)_0x5cefbf=_0x2e6ba2;_0x4bf504=_0x2e6ba2;}}if(_0x5cefbf===-0x1)return _0x14b920(0x20f);const _0x289b7d=this[_0x14b920(0x237)]['DIFF_CONTEXT_LINES'],_0x209d8e=Math[_0x14b920(0x1d6)](0x0,_0x5cefbf-_0x289b7d),_0x4323f0=Math['min'](_0x1d6a70-0x1,_0x4bf504+_0x289b7d);if(_0x4323f0-_0x209d8e>this[_0x14b920(0x237)][_0x14b920(0x1f0)])return'Diff\x20too\x20large\x20('+(_0x4323f0-_0x209d8e+0x1)+_0x14b920(0x1f8)+('Changed\x20lines:\x20'+(_0x5cefbf+0x1)+_0x14b920(0x1ea)+(_0x4bf504+0x1));let _0x5d9bfe='@@\x20-'+(_0x209d8e+0x1)+','+(_0x4323f0-_0x209d8e+0x1)+'\x20+'+(_0x209d8e+0x1)+','+(_0x4323f0-_0x209d8e+0x1)+_0x14b920(0x1df);for(let _0x573236=_0x209d8e;_0x573236<=_0x4323f0;_0x573236++){const _0x53c0a6=_0x573236<_0xb6fb8d['length']?_0xb6fb8d[_0x573236]:'',_0x3c49c9=_0x573236<_0x1391af['length']?_0x1391af[_0x573236]:'';_0x53c0a6===_0x3c49c9?_0x5d9bfe+='\x20\x20'+_0x53c0a6+'\x0a':(_0x5d9bfe+='-\x20'+_0x53c0a6+'\x0a',_0x5d9bfe+='+\x20'+_0x3c49c9+'\x0a');}return _0x5d9bfe;}[a0_0x4c7ca7(0x21f)](_0x58faa4){const _0x15eca1=a0_0x4c7ca7;return(_0x15eca1(0x232)+_0x58faa4[_0x15eca1(0x21e)]+_0x15eca1(0x1f4)+_0x58faa4['filesModified']+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x58faa4[_0x15eca1(0x20c)]+'\x0aBackups\x20created:\x20'+_0x58faa4['backupsCreated']+_0x15eca1(0x1f1)+_0x58faa4[_0x15eca1(0x20e)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0x5841d2){this['logger']?.['info']('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x5841d2});}}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x5297(_0x4873aa,_0x135896){_0x4873aa=_0x4873aa-0x1d2;const _0x594050=a0_0x5940();let _0x5297f7=_0x594050[_0x4873aa];if(a0_0x5297['omfqVT']===undefined){var _0x42e79f=function(_0x8eaa2f){const _0x4be18d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4fdb84='',_0x49f1b2='';for(let _0x3a76f4=0x0,_0x4573e1,_0xd5f857,_0x5e27ed=0x0;_0xd5f857=_0x8eaa2f['charAt'](_0x5e27ed++);~_0xd5f857&&(_0x4573e1=_0x3a76f4%0x4?_0x4573e1*0x40+_0xd5f857:_0xd5f857,_0x3a76f4++%0x4)?_0x4fdb84+=String['fromCharCode'](0xff&_0x4573e1>>(-0x2*_0x3a76f4&0x6)):0x0){_0xd5f857=_0x4be18d['indexOf'](_0xd5f857);}for(let _0x5b677c=0x0,_0x5e3c4f=_0x4fdb84['length'];_0x5b677c<_0x5e3c4f;_0x5b677c++){_0x49f1b2+='%'+('00'+_0x4fdb84['charCodeAt'](_0x5b677c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49f1b2);};a0_0x5297['hGkbqi']=_0x42e79f,a0_0x5297['ywltMV']={},a0_0x5297['omfqVT']=!![];}const _0x48b000=_0x594050[0x0],_0x1c482b=_0x4873aa+_0x48b000,_0x3dcf88=a0_0x5297['ywltMV'][_0x1c482b];return!_0x3dcf88?(_0x5297f7=a0_0x5297['hGkbqi'](_0x5297f7),a0_0x5297['ywltMV'][_0x1c482b]=_0x5297f7):_0x5297f7=_0x3dcf88,_0x5297f7;}const a0_0x245027=a0_0x5297;(function(_0x36d034,_0x315cb8){const _0x37f318=a0_0x5297,_0x37f41c=_0x36d034();while(!![]){try{const _0x30d55a=-parseInt(_0x37f318(0x247))/0x1*(-parseInt(_0x37f318(0x220))/0x2)+-parseInt(_0x37f318(0x25a))/0x3*(-parseInt(_0x37f318(0x20c))/0x4)+parseInt(_0x37f318(0x216))/0x5+parseInt(_0x37f318(0x1dd))/0x6+-parseInt(_0x37f318(0x1e7))/0x7+-parseInt(_0x37f318(0x23b))/0x8*(parseInt(_0x37f318(0x20a))/0x9)+-parseInt(_0x37f318(0x1fc))/0xa*(parseInt(_0x37f318(0x25b))/0xb);if(_0x30d55a===_0x315cb8)break;else _0x37f41c['push'](_0x37f41c['shift']());}catch(_0x545041){_0x37f41c['push'](_0x37f41c['shift']());}}}(a0_0x5940,0x9924d));import{BaseTool}from'./baseTool.js';import a0_0x4fdb84 from'../utilities/tagParser.js';import a0_0x49f1b2 from'../utilities/directoryAccessManager.js';import a0_0x3a76f4 from'fs/promises';import a0_0x4573e1 from'path';import a0_0xd5f857 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x5e27ed={},_0x5b677c=null){const _0x4e4eee=a0_0x5297;super(_0x5e27ed,_0x5b677c),this[_0x4e4eee(0x237)]=!![],this[_0x4e4eee(0x1f5)]=![],this['timeout']=_0x5e27ed[_0x4e4eee(0x20f)]||0x7530,this['maxConcurrentOperations']=_0x5e27ed[_0x4e4eee(0x224)]||0x5,this[_0x4e4eee(0x217)]=_0x5e27ed[_0x4e4eee(0x217)]||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x5e27ed['allowedExtensions']||null,this[_0x4e4eee(0x252)]=_0x5e27ed['blockedExtensions']||['.exe','.bat','.cmd','.scr',_0x4e4eee(0x231)],this[_0x4e4eee(0x254)]=_0x5e27ed[_0x4e4eee(0x254)]||null,this[_0x4e4eee(0x204)]=[],this[_0x4e4eee(0x250)]=new a0_0x49f1b2(_0x5e27ed,_0x5b677c);}['getDescription'](){const _0x2b7de2=a0_0x5297;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22src/file.js\x22,\x20\x22content\x22:\x20\x22...\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x20(filePath)\x0a-\x20write:\x20Write\x20content\x20to\x20file\x20(outputPath,\x20content)\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x20(filePath,\x20content)\x0a-\x20delete:\x20Delete\x20a\x20file\x20(filePath)\x0a-\x20copy:\x20Copy\x20file\x20(sourcePath,\x20destPath)\x0a-\x20move:\x20Move/rename\x20file\x20(sourcePath,\x20destPath)\x0a-\x20create-dir:\x20Create\x20directory\x20(directory)\x0a-\x20list:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x20(filePath)\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x20(filePath)\x0a\x0aPARAMETERS:\x0a-\x20filePath:\x20Path\x20to\x20file\x20(for\x20read,\x20delete,\x20append,\x20exists,\x20stats)\x0a-\x20outputPath:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20sourcePath:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20destPath:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20create-dir\x20and\x20list\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20createDirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aWrite\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22hello.js\x22,\x20\x22content\x22:\x20\x22console.log(\x27Hello\x27);\x22}]\x0a}\x0a```\x0a\x0aRead\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22package.json\x22}]\x0a}\x0a```\x0a\x0aMultiple\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22copy\x22,\x20\x22sourcePath\x22:\x20\x22template.js\x22,\x20\x22destPath\x22:\x20\x22src/component.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22create-dir\x22,\x20\x22directory\x22:\x20\x22src/components/ui\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x2b7de2(0x233)](this['maxFileSize']/0x400/0x400)+_0x2b7de2(0x240);}['parseParameters'](_0x5e3c4f){const _0xffa6bd=a0_0x5297;try{const _0x1ed127={},_0x1acbad=[];this[_0xffa6bd(0x22f)]?.[_0xffa6bd(0x1dc)](_0xffa6bd(0x264),{'contentLength':_0x5e3c4f['length'],'contentPreview':_0x5e3c4f[_0xffa6bd(0x25c)](0x0,0xc8)});const _0x127c5f=['read',_0xffa6bd(0x21d),'copy','move',_0xffa6bd(0x246),_0xffa6bd(0x1f4),'exists','stats','append'];for(const _0xfd4327 of _0x127c5f){const _0x108de3=a0_0x4fdb84[_0xffa6bd(0x1e3)](_0x5e3c4f,_0xfd4327);for(const _0x26cd38 of _0x108de3){const _0x3f04e1={'type':_0xfd4327,..._0x26cd38['attributes']};_0x3f04e1['file-path']&&(_0x3f04e1[_0xffa6bd(0x222)]=_0x3f04e1[_0xffa6bd(0x1d2)],delete _0x3f04e1['file-path']),_0x3f04e1['output-path']&&(_0x3f04e1[_0xffa6bd(0x242)]=_0x3f04e1['output-path'],delete _0x3f04e1['output-path']),_0x3f04e1['source-path']&&(_0x3f04e1['sourcePath']=_0x3f04e1[_0xffa6bd(0x1ea)],delete _0x3f04e1[_0xffa6bd(0x1ea)]),_0x3f04e1['dest-path']&&(_0x3f04e1['destPath']=_0x3f04e1['dest-path'],delete _0x3f04e1[_0xffa6bd(0x218)]),_0x3f04e1['create-dirs']&&(_0x3f04e1['createDirs']=_0x3f04e1['create-dirs']===_0xffa6bd(0x1e1),delete _0x3f04e1['create-dirs']),_0x1acbad['push'](_0x3f04e1);}}const _0x4d7e5c=_0x5e3c4f[_0xffa6bd(0x25f)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0xc51e48 of _0x4d7e5c){const _0xf031b5=new a0_0x4fdb84(),_0x5e6a55=_0xf031b5[_0xffa6bd(0x23e)](_0xc51e48[0x1]),_0x1018bb=_0xc51e48[0x2]['trim'](),_0xe78be3={'type':'write','content':_0x1018bb,..._0x5e6a55};_0xe78be3['output-path']&&(_0xe78be3['outputPath']=_0xe78be3['output-path'],delete _0xe78be3[_0xffa6bd(0x235)]),_0xe78be3[_0xffa6bd(0x21e)]&&(_0xe78be3['createDirs']=_0xe78be3['create-dirs']==='true',delete _0xe78be3['create-dirs']),_0x1acbad[_0xffa6bd(0x1f7)](_0xe78be3);}const _0x26dab8=_0x5e3c4f[_0xffa6bd(0x25f)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x18460f of _0x26dab8){const _0x2a07fc=new a0_0x4fdb84(),_0x54b66b=_0x2a07fc['parseAttributes'](_0x18460f[0x1]),_0x3c5a3b=_0x18460f[0x2][_0xffa6bd(0x1d4)](),_0x23a376={'type':_0xffa6bd(0x245),'content':_0x3c5a3b,..._0x54b66b};_0x23a376['file-path']&&(_0x23a376[_0xffa6bd(0x222)]=_0x23a376[_0xffa6bd(0x1d2)],delete _0x23a376[_0xffa6bd(0x1d2)]),_0x1acbad[_0xffa6bd(0x1f7)](_0x23a376);}return _0x1ed127['actions']=_0x1acbad,_0x1ed127['rawContent']=_0x5e3c4f['trim'](),this['logger']?.['debug'](_0xffa6bd(0x23d),{'totalActions':_0x1acbad[_0xffa6bd(0x232)],'actionTypes':_0x1acbad[_0xffa6bd(0x21c)](_0x1fcb12=>_0x1fcb12[_0xffa6bd(0x1eb)]),'actions':_0x1acbad[_0xffa6bd(0x21c)](_0x22c370=>({'type':_0x22c370[_0xffa6bd(0x1eb)],'filePath':_0x22c370[_0xffa6bd(0x222)],'outputPath':_0x22c370[_0xffa6bd(0x242)],'hasContent':!!_0x22c370['content']}))}),_0x1ed127;}catch(_0x30202b){throw new Error(_0xffa6bd(0x211)+_0x30202b[_0xffa6bd(0x206)]);}}[a0_0x245027(0x251)](){return['actions'];}['customValidateParameters'](_0x3268a0){const _0x11058f=a0_0x245027,_0x1a9601=[];if(!_0x3268a0[_0x11058f(0x21a)]||!Array[_0x11058f(0x263)](_0x3268a0['actions'])||_0x3268a0['actions']['length']===0x0)_0x1a9601[_0x11058f(0x1f7)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x143bae,_0x264ccb]of _0x3268a0['actions'][_0x11058f(0x1fa)]()){if(!_0x264ccb[_0x11058f(0x1eb)]){_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x264ccb[_0x11058f(0x1eb)]){case _0x11058f(0x229):case'delete':case'exists':case'stats':!_0x264ccb[_0x11058f(0x222)]&&_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x264ccb['type']);break;case'write':!_0x264ccb[_0x11058f(0x242)]&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x264ccb['content']&&_0x264ccb['content']!==''&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x264ccb[_0x11058f(0x222)]&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x230));!_0x264ccb[_0x11058f(0x261)]&&_0x264ccb[_0x11058f(0x261)]!==''&&_0x1a9601['push'](_0x11058f(0x1ec)+(_0x143bae+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x264ccb[_0x11058f(0x202)]&&_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+_0x11058f(0x1ef)+_0x264ccb['type']);!_0x264ccb[_0x11058f(0x241)]&&_0x1a9601[_0x11058f(0x1f7)](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x226)+_0x264ccb['type']);break;case'create-dir':case _0x11058f(0x1f4):!_0x264ccb['directory']&&_0x1a9601['push']('Action\x20'+(_0x143bae+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x264ccb[_0x11058f(0x1eb)]);break;default:_0x1a9601[_0x11058f(0x1f7)]('Action\x20'+(_0x143bae+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x264ccb['type']);}_0x264ccb['filePath']&&!this[_0x11058f(0x200)](_0x264ccb[_0x11058f(0x222)])&&_0x1a9601['push']('Action\x20'+(_0x143bae+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x4573e1['extname'](_0x264ccb[_0x11058f(0x222)])),_0x264ccb['outputPath']&&!this['isAllowedFileExtension'](_0x264ccb[_0x11058f(0x242)])&&_0x1a9601[_0x11058f(0x1f7)](_0x11058f(0x1ec)+(_0x143bae+0x1)+_0x11058f(0x203)+a0_0x4573e1[_0x11058f(0x256)](_0x264ccb[_0x11058f(0x242)]));}return{'valid':_0x1a9601[_0x11058f(0x232)]===0x0,'errors':_0x1a9601};}async['execute'](_0xdb3dd8,_0x3bbcb7){const _0xe738b=a0_0x245027;if(!_0xdb3dd8||typeof _0xdb3dd8!=='object')throw new Error(_0xe738b(0x207));const {actions:_0x3dfc94}=_0xdb3dd8;if(!_0x3dfc94)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object[_0xe738b(0x20b)](_0xdb3dd8)));if(!Array[_0xe738b(0x263)](_0x3dfc94))throw new Error(_0xe738b(0x23c)+typeof _0x3dfc94);if(_0x3dfc94['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x3d745f,agentId:_0x1332ca,directoryAccess:_0x1330d3}=_0x3bbcb7,_0x15aa42=_0x1330d3||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x3d745f||process['cwd'](),'writeEnabledDirectories':[_0x3d745f||process['cwd']()],'restrictToProject':!![]});_0x1330d3&&_0x1330d3['workingDirectory']?(console['log']('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x1330d3[_0xe738b(0x1de)]),console[_0xe738b(0x228)]('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x1330d3,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x3d745f||process[_0xe738b(0x262)]()),console['log'](_0xe738b(0x243),_0x1330d3),console['log']('FileSystem\x20DEBUG:\x20projectDir\x20is:',_0x3d745f));const _0x1bda22=[];for(const _0x5152a2 of _0x3dfc94){try{let _0x470022;switch(_0x5152a2[_0xe738b(0x1eb)]){case _0xe738b(0x229):_0x470022=await this['readFile'](_0x5152a2['filePath'],_0x15aa42,_0x5152a2[_0xe738b(0x1e2)]);break;case'write':_0x470022=await this[_0xe738b(0x1d3)](_0x5152a2['outputPath'],_0x5152a2['content'],_0x15aa42,{'encoding':_0x5152a2[_0xe738b(0x1e2)],'createDirs':_0x5152a2[_0xe738b(0x1d6)]});break;case _0xe738b(0x245):_0x470022=await this[_0xe738b(0x24a)](_0x5152a2['filePath'],_0x5152a2['content'],_0x15aa42,_0x5152a2[_0xe738b(0x1e2)]);break;case _0xe738b(0x21d):_0x470022=await this[_0xe738b(0x24c)](_0x5152a2['filePath'],_0x15aa42);break;case'copy':_0x470022=await this[_0xe738b(0x227)](_0x5152a2[_0xe738b(0x202)],_0x5152a2['destPath'],_0x15aa42);break;case'move':_0x470022=await this['moveFile'](_0x5152a2['sourcePath'],_0x5152a2['destPath'],_0x15aa42);break;case'create-dir':_0x470022=await this['createDirectory'](_0x5152a2[_0xe738b(0x1e8)],_0x15aa42);break;case _0xe738b(0x1f4):_0x470022=await this['listDirectory'](_0x5152a2[_0xe738b(0x1e8)],_0x15aa42);break;case _0xe738b(0x1df):_0x470022=await this['checkExists'](_0x5152a2['filePath'],_0x15aa42);break;case'stats':_0x470022=await this[_0xe738b(0x24d)](_0x5152a2[_0xe738b(0x222)],_0x15aa42);break;default:throw new Error(_0xe738b(0x212)+_0x5152a2[_0xe738b(0x1eb)]);}_0x1bda22['push'](_0x470022),this['addToHistory'](_0x5152a2,_0x470022,_0x3bbcb7['agentId']);}catch(_0x1635a7){const _0x5521d6={'success':![],'action':_0x5152a2['type'],'error':_0x1635a7[_0xe738b(0x206)],'filePath':_0x5152a2['filePath']||_0x5152a2['outputPath']||_0x5152a2[_0xe738b(0x1e8)]};_0x1bda22['push'](_0x5521d6),this[_0xe738b(0x249)](_0x5152a2,_0x5521d6,_0x3bbcb7[_0xe738b(0x1e9)]);}}return{'success':!![],'actions':_0x1bda22,'executedActions':_0x3dfc94[_0xe738b(0x232)],'toolUsed':_0xe738b(0x23f)};}async[a0_0x245027(0x1da)](_0x33cff3,_0x2d3e08,_0x1f65a6='utf8'){const _0x42df13=a0_0x245027,_0x342dc9=this['directoryAccessManager']['getWorkingDirectory'](_0x2d3e08),_0x2d29a8=this[_0x42df13(0x201)](_0x33cff3,_0x342dc9),_0x287c60=this[_0x42df13(0x250)]['validateReadAccess'](_0x2d29a8,_0x2d3e08);if(!_0x287c60[_0x42df13(0x1f9)])throw new Error('Read\x20access\x20denied:\x20'+_0x287c60[_0x42df13(0x1d9)]+'\x20('+_0x287c60['path']+')');try{const _0x44b9fc=await a0_0x3a76f4[_0x42df13(0x266)](_0x2d29a8);if(_0x44b9fc['size']>this[_0x42df13(0x217)])throw new Error(_0x42df13(0x22a)+_0x44b9fc['size']+'\x20bytes\x20(max\x20'+this[_0x42df13(0x217)]+')');const _0x5f585d=await a0_0x3a76f4[_0x42df13(0x1da)](_0x2d29a8,_0x1f65a6);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x42df13(0x223)](_0x2d29a8,_0x2d3e08),'content':_0x5f585d,'size':_0x44b9fc[_0x42df13(0x205)],'encoding':_0x1f65a6,'lastModified':_0x44b9fc[_0x42df13(0x225)]['toISOString'](),'message':'Read\x20'+_0x44b9fc['size']+_0x42df13(0x210)+_0x33cff3};}catch(_0x155a82){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x33cff3+':\x20'+_0x155a82['message']);}}async[a0_0x245027(0x1d3)](_0x4b9968,_0x35deb9,_0x54954a,_0x26c702={}){const _0x348572=a0_0x245027,{encoding:encoding=_0x348572(0x253),createDirs:createDirs=!![]}=_0x26c702,_0x14f71b=this['directoryAccessManager'][_0x348572(0x1fd)](_0x54954a),_0x2256f9=this['resolvePath'](_0x4b9968,_0x14f71b),_0xd1be03=this[_0x348572(0x250)]['validateWriteAccess'](_0x2256f9,_0x54954a);if(!_0xd1be03['allowed'])throw new Error(_0x348572(0x244)+_0xd1be03['reason']+'\x20('+_0xd1be03[_0x348572(0x234)]+')');try{const _0x46b2b1=Buffer[_0x348572(0x1f1)](_0x35deb9,encoding);if(_0x46b2b1>this[_0x348572(0x217)])throw new Error('Content\x20too\x20large:\x20'+_0x46b2b1+'\x20bytes\x20(max\x20'+this[_0x348572(0x217)]+')');if(createDirs){const _0xeca57a=a0_0x4573e1[_0x348572(0x1e0)](_0x2256f9);await a0_0x3a76f4[_0x348572(0x213)](_0xeca57a,{'recursive':!![]});}let _0x118833=null;try{await a0_0x3a76f4[_0x348572(0x22e)](_0x2256f9),_0x118833=_0x2256f9+'.backup-'+Date['now'](),await a0_0x3a76f4['copyFile'](_0x2256f9,_0x118833);}catch{}await a0_0x3a76f4[_0x348572(0x1d3)](_0x2256f9,_0x35deb9,encoding);const _0x10bf4a=await a0_0x3a76f4[_0x348572(0x266)](_0x2256f9),_0xaf1c1f=this['directoryAccessManager'][_0x348572(0x223)](_0x2256f9,_0x54954a);return{'success':!![],'action':'write','outputPath':_0xaf1c1f,'fullPath':_0x2256f9,'size':_0x10bf4a['size'],'encoding':encoding,'backupPath':_0x118833?this[_0x348572(0x250)][_0x348572(0x223)](_0x118833,_0x54954a):null,'backupFullPath':_0x118833||null,'message':'Wrote\x20'+_0x10bf4a[_0x348572(0x205)]+'\x20bytes\x20to\x20'+_0x2256f9};}catch(_0x37020b){throw new Error(_0x348572(0x221)+_0x2256f9+':\x20'+_0x37020b[_0x348572(0x206)]);}}async[a0_0x245027(0x24a)](_0xb5bb3,_0xfac376,_0x55088d,_0x3d25ae='utf8'){const _0x5f28f9=a0_0x245027,_0xd5213e=this['directoryAccessManager'][_0x5f28f9(0x1fd)](_0x55088d),_0x48855c=this['resolvePath'](_0xb5bb3,_0xd5213e),_0x12bd3c=this[_0x5f28f9(0x250)]['validateWriteAccess'](_0x48855c,_0x55088d);if(!_0x12bd3c['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x12bd3c['reason']+'\x20('+_0x12bd3c[_0x5f28f9(0x234)]+')');try{let _0x505182=0x0;try{const _0x595581=await a0_0x3a76f4['stat'](_0x48855c);_0x505182=_0x595581[_0x5f28f9(0x205)];}catch{}const _0x543494=Buffer[_0x5f28f9(0x1f1)](_0xfac376,_0x3d25ae);if(_0x505182+_0x543494>this[_0x5f28f9(0x217)])throw new Error(_0x5f28f9(0x208)+(_0x505182+_0x543494)+'\x20bytes\x20(max\x20'+this[_0x5f28f9(0x217)]+')');await a0_0x3a76f4['appendFile'](_0x48855c,_0xfac376,_0x3d25ae);const _0x1598e5=await a0_0x3a76f4['stat'](_0x48855c),_0x2189d3=this[_0x5f28f9(0x250)]['createRelativePath'](_0x48855c,_0x55088d);return{'success':!![],'action':_0x5f28f9(0x245),'filePath':_0x2189d3,'fullPath':_0x48855c,'appendedBytes':_0x543494,'totalSize':_0x1598e5['size'],'encoding':_0x3d25ae,'message':_0x5f28f9(0x258)+_0x543494+_0x5f28f9(0x248)+_0x48855c};}catch(_0x3ef060){throw new Error(_0x5f28f9(0x255)+_0x48855c+':\x20'+_0x3ef060[_0x5f28f9(0x206)]);}}async['deleteFile'](_0x285aa2,_0x2fe647){const _0x1ef36d=a0_0x245027,_0x7927d0=this[_0x1ef36d(0x250)]['getWorkingDirectory'](_0x2fe647),_0x29a4d1=this[_0x1ef36d(0x201)](_0x285aa2,_0x7927d0),_0x343477=this['directoryAccessManager']['validateWriteAccess'](_0x29a4d1,_0x2fe647);if(!_0x343477['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x343477['reason']+'\x20('+_0x343477['path']+')');try{const _0x4d27e8=await a0_0x3a76f4['stat'](_0x29a4d1),_0x1d0077=_0x29a4d1+'.deleted-backup-'+Date['now']();await a0_0x3a76f4[_0x1ef36d(0x227)](_0x29a4d1,_0x1d0077),await a0_0x3a76f4['unlink'](_0x29a4d1);const _0x167c83=this[_0x1ef36d(0x250)][_0x1ef36d(0x223)](_0x29a4d1,_0x2fe647),_0x9bc258=this['directoryAccessManager']['createRelativePath'](_0x1d0077,_0x2fe647);return{'success':!![],'action':'delete','filePath':_0x167c83,'fullPath':_0x29a4d1,'size':_0x4d27e8[_0x1ef36d(0x205)],'backupPath':_0x9bc258,'backupFullPath':_0x1d0077,'message':'Deleted\x20'+_0x29a4d1+_0x1ef36d(0x22c)};}catch(_0xb0b5df){throw new Error(_0x1ef36d(0x214)+_0x29a4d1+':\x20'+_0xb0b5df['message']);}}async[a0_0x245027(0x227)](_0xd5098c,_0x3a5e17,_0x417806){const _0x4667c9=a0_0x245027,_0x935a94=this['directoryAccessManager']['getWorkingDirectory'](_0x417806),_0x3d689d=this['resolvePath'](_0xd5098c,_0x935a94),_0x553fae=this['resolvePath'](_0x3a5e17,_0x935a94),_0x497c32=this[_0x4667c9(0x250)][_0x4667c9(0x1f3)](_0x3d689d,_0x417806);if(!_0x497c32['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x497c32[_0x4667c9(0x1d9)]+'\x20('+_0x497c32['path']+')');const _0x523cdf=this['directoryAccessManager']['validateWriteAccess'](_0x553fae,_0x417806);if(!_0x523cdf['allowed'])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x523cdf['reason']+'\x20('+_0x523cdf[_0x4667c9(0x234)]+')');try{const _0xfc16d1=await a0_0x3a76f4[_0x4667c9(0x266)](_0x3d689d);if(_0xfc16d1[_0x4667c9(0x205)]>this['maxFileSize'])throw new Error(_0x4667c9(0x1ed)+_0xfc16d1['size']+'\x20bytes');const _0x1cd837=a0_0x4573e1['dirname'](_0x553fae);await a0_0x3a76f4['mkdir'](_0x1cd837,{'recursive':!![]}),await a0_0x3a76f4[_0x4667c9(0x227)](_0x3d689d,_0x553fae);const _0x1b09aa=this[_0x4667c9(0x250)]['createRelativePath'](_0x3d689d,_0x417806),_0x1dd8ce=this['directoryAccessManager']['createRelativePath'](_0x553fae,_0x417806);return{'success':!![],'action':_0x4667c9(0x1f0),'sourcePath':_0x1b09aa,'destPath':_0x1dd8ce,'sourceFullPath':_0x3d689d,'destFullPath':_0x553fae,'size':_0xfc16d1[_0x4667c9(0x205)],'message':_0x4667c9(0x1f6)+_0x3d689d+_0x4667c9(0x265)+_0x553fae};}catch(_0x5aa5dc){throw new Error(_0x4667c9(0x25d)+_0x3d689d+_0x4667c9(0x265)+_0x553fae+':\x20'+_0x5aa5dc['message']);}}async[a0_0x245027(0x21f)](_0x57e4f9,_0x492dd8,_0x2684ab){const _0x444f71=a0_0x245027,_0x1c8259=this['directoryAccessManager'][_0x444f71(0x1fd)](_0x2684ab),_0xbc555a=this[_0x444f71(0x201)](_0x57e4f9,_0x1c8259),_0x4ca8de=this[_0x444f71(0x201)](_0x492dd8,_0x1c8259),_0x297f9d=this[_0x444f71(0x250)][_0x444f71(0x1f3)](_0xbc555a,_0x2684ab);if(!_0x297f9d[_0x444f71(0x1f9)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x297f9d['reason']+'\x20('+_0x297f9d['path']+')');const _0x51a4ed=this['directoryAccessManager'][_0x444f71(0x259)](_0x4ca8de,_0x2684ab);if(!_0x51a4ed['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x51a4ed[_0x444f71(0x1d9)]+'\x20('+_0x51a4ed['path']+')');try{const _0x5d7f2c=await a0_0x3a76f4['stat'](_0xbc555a),_0x2b64b3=a0_0x4573e1['dirname'](_0x4ca8de);await a0_0x3a76f4[_0x444f71(0x213)](_0x2b64b3,{'recursive':!![]}),await a0_0x3a76f4['rename'](_0xbc555a,_0x4ca8de);const _0x484719=this[_0x444f71(0x250)][_0x444f71(0x223)](_0xbc555a,_0x2684ab),_0x520923=this[_0x444f71(0x250)][_0x444f71(0x223)](_0x4ca8de,_0x2684ab);return{'success':!![],'action':'move','sourcePath':_0x484719,'destPath':_0x520923,'fullSourcePath':_0xbc555a,'fullDestPath':_0x4ca8de,'size':_0x5d7f2c[_0x444f71(0x205)],'message':_0x444f71(0x1f2)+_0x57e4f9+'\x20to\x20'+_0x492dd8};}catch(_0x599fc4){throw new Error('Failed\x20to\x20move\x20'+_0x57e4f9+'\x20to\x20'+_0x492dd8+':\x20'+_0x599fc4[_0x444f71(0x206)]);}}async['createDirectory'](_0x5bd118,_0x3b76e8){const _0x35141d=a0_0x245027,_0x27bdf1=this[_0x35141d(0x250)][_0x35141d(0x1fd)](_0x3b76e8),_0x2e407e=this[_0x35141d(0x201)](_0x5bd118,_0x27bdf1),_0x2aa730=this['directoryAccessManager']['validateWriteAccess'](_0x2e407e,_0x3b76e8);if(!_0x2aa730[_0x35141d(0x1f9)])throw new Error('Write\x20access\x20denied:\x20'+_0x2aa730[_0x35141d(0x1d9)]+'\x20('+_0x2aa730[_0x35141d(0x234)]+')');try{await a0_0x3a76f4[_0x35141d(0x213)](_0x2e407e,{'recursive':!![]});const _0x490b8f=this[_0x35141d(0x250)]['createRelativePath'](_0x2e407e,_0x3b76e8);return{'success':!![],'action':'create-dir','directory':_0x490b8f,'fullPath':_0x2e407e,'message':'Created\x20directory\x20'+_0x5bd118};}catch(_0x3da68e){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x5bd118+':\x20'+_0x3da68e[_0x35141d(0x206)]);}}async['listDirectory'](_0x3728e4,_0x23dbec){const _0x7d4c01=a0_0x245027,_0x4d9f9d=this[_0x7d4c01(0x250)][_0x7d4c01(0x1fd)](_0x23dbec),_0x483d60=this[_0x7d4c01(0x201)](_0x3728e4,_0x4d9f9d),_0x9613=this[_0x7d4c01(0x250)]['validateReadAccess'](_0x483d60,_0x23dbec);if(!_0x9613[_0x7d4c01(0x1f9)])throw new Error(_0x7d4c01(0x20d)+_0x9613[_0x7d4c01(0x1d9)]+'\x20('+_0x9613[_0x7d4c01(0x234)]+')');try{const _0x577734=await a0_0x3a76f4[_0x7d4c01(0x1d7)](_0x483d60,{'withFileTypes':!![]}),_0x534ed0=[];for(const _0x5150f6 of _0x577734){const _0x26bb39=a0_0x4573e1[_0x7d4c01(0x22d)](_0x483d60,_0x5150f6[_0x7d4c01(0x1e4)]),_0x36b10b=await a0_0x3a76f4[_0x7d4c01(0x266)](_0x26bb39);_0x534ed0[_0x7d4c01(0x1f7)]({'name':_0x5150f6[_0x7d4c01(0x1e4)],'type':_0x5150f6['isDirectory']()?_0x7d4c01(0x1e8):'file','size':_0x5150f6['isFile']()?_0x36b10b['size']:undefined,'lastModified':_0x36b10b[_0x7d4c01(0x225)]['toISOString'](),'permissions':_0x36b10b[_0x7d4c01(0x1e5)],'isSymlink':_0x5150f6[_0x7d4c01(0x219)]()});}const _0x404087=this['directoryAccessManager']['createRelativePath'](_0x483d60,_0x23dbec);return{'success':!![],'action':'list','directory':_0x404087,'fullPath':_0x483d60,'contents':_0x534ed0,'totalItems':_0x534ed0['length'],'directories':_0x534ed0['filter'](_0x262c0e=>_0x262c0e[_0x7d4c01(0x1eb)]==='directory')[_0x7d4c01(0x232)],'files':_0x534ed0[_0x7d4c01(0x1d5)](_0x4ee3c2=>_0x4ee3c2['type']==='file')[_0x7d4c01(0x232)],'message':_0x7d4c01(0x1ff)+_0x534ed0['length']+_0x7d4c01(0x22b)+_0x3728e4};}catch(_0x7bb3a8){throw new Error(_0x7d4c01(0x215)+_0x3728e4+':\x20'+_0x7bb3a8[_0x7d4c01(0x206)]);}}async['checkExists'](_0x211ac6,_0x177c10){const _0x692a6b=a0_0x245027,_0x43d656=this['directoryAccessManager'][_0x692a6b(0x1fd)](_0x177c10),_0x5b1c7a=this[_0x692a6b(0x201)](_0x211ac6,_0x43d656),_0x459e93=this['directoryAccessManager'][_0x692a6b(0x1f3)](_0x5b1c7a,_0x177c10);if(!_0x459e93[_0x692a6b(0x1f9)])throw new Error(_0x692a6b(0x20d)+_0x459e93['reason']+'\x20('+_0x459e93[_0x692a6b(0x234)]+')');try{const _0xdf287b=await a0_0x3a76f4['stat'](_0x5b1c7a),_0x1e6f82=this['directoryAccessManager'][_0x692a6b(0x223)](_0x5b1c7a,_0x177c10);return{'success':!![],'action':'exists','filePath':_0x1e6f82,'fullPath':_0x5b1c7a,'exists':!![],'type':_0xdf287b['isDirectory']()?'directory':_0x692a6b(0x236),'message':_0x211ac6+_0x692a6b(0x239)+(_0xdf287b['isDirectory']()?'directory':'file')};}catch(_0x136bee){if(_0x136bee[_0x692a6b(0x1fb)]===_0x692a6b(0x1ee)){const _0x2f9f53=this[_0x692a6b(0x250)][_0x692a6b(0x223)](_0x5b1c7a,_0x177c10);return{'success':!![],'action':'exists','filePath':_0x2f9f53,'fullPath':_0x5b1c7a,'exists':![],'message':_0x211ac6+_0x692a6b(0x24e)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x211ac6+':\x20'+_0x136bee[_0x692a6b(0x206)]);}}async['getFileStats'](_0x471600,_0x517ed8){const _0x3b124f=a0_0x245027,_0x420b74=this[_0x3b124f(0x250)]['getWorkingDirectory'](_0x517ed8),_0x247c1f=this['resolvePath'](_0x471600,_0x420b74),_0x4df6cd=this['directoryAccessManager']['validateReadAccess'](_0x247c1f,_0x517ed8);if(!_0x4df6cd[_0x3b124f(0x1f9)])throw new Error(_0x3b124f(0x20d)+_0x4df6cd['reason']+'\x20('+_0x4df6cd[_0x3b124f(0x234)]+')');try{const _0x13de96=await a0_0x3a76f4['stat'](_0x247c1f),_0x16dd11=this['directoryAccessManager'][_0x3b124f(0x223)](_0x247c1f,_0x517ed8);return{'success':!![],'action':'stats','filePath':_0x16dd11,'fullPath':_0x247c1f,'stats':{'size':_0x13de96['size'],'type':_0x13de96['isDirectory']()?'directory':_0x3b124f(0x236),'lastModified':_0x13de96[_0x3b124f(0x225)]['toISOString'](),'lastAccessed':_0x13de96[_0x3b124f(0x209)]['toISOString'](),'created':_0x13de96[_0x3b124f(0x20e)]['toISOString'](),'permissions':_0x13de96[_0x3b124f(0x1e5)],'isSymlink':_0x13de96['isSymbolicLink']()},'message':_0x3b124f(0x23a)+_0x471600};}catch(_0x2847cb){throw new Error(_0x3b124f(0x1d8)+_0x471600+':\x20'+_0x2847cb[_0x3b124f(0x206)]);}}['resolvePath'](_0x459067,_0xa80136){const _0xc61d7b=a0_0x245027;if(a0_0x4573e1['isAbsolute'](_0x459067))return a0_0x4573e1['normalize'](_0x459067);return a0_0x4573e1[_0xc61d7b(0x1f8)](_0xa80136,_0x459067);}['validatePathAccess'](_0x548fe9,_0x33aa51,_0x1b8824=a0_0x245027(0x229)){const _0x593d00=a0_0x245027,_0x219b3f=_0x1b8824==='write'?this['directoryAccessManager']['validateWriteAccess'](_0x548fe9,_0x33aa51):this['directoryAccessManager'][_0x593d00(0x1f3)](_0x548fe9,_0x33aa51);if(!_0x219b3f['allowed'])throw new Error(_0x1b8824+_0x593d00(0x257)+_0x219b3f['reason']+'\x20('+_0x219b3f['path']+')');return _0x219b3f;}['isAllowedFileExtension'](_0x35529a){const _0x2edc5a=a0_0x245027,_0x2bb251=a0_0x4573e1['extname'](_0x35529a)[_0x2edc5a(0x21b)]();if(this['blockedExtensions']['includes'](_0x2bb251))return![];if(this['allowedExtensions']&&!this[_0x2edc5a(0x25e)][_0x2edc5a(0x1e6)](_0x2bb251))return![];return!![];}[a0_0x245027(0x249)](_0x428d35,_0x147b99,_0xf02348){const _0x2a48aa=a0_0x245027,_0x287f95={'timestamp':new Date()[_0x2a48aa(0x1db)](),'agentId':_0xf02348,'action':_0x428d35[_0x2a48aa(0x1eb)],'filePath':_0x428d35[_0x2a48aa(0x222)]||_0x428d35['outputPath']||_0x428d35['directory'],'success':_0x147b99['success'],'size':_0x147b99[_0x2a48aa(0x205)]};this['operationHistory']['push'](_0x287f95),this['operationHistory'][_0x2a48aa(0x232)]>0xc8&&(this[_0x2a48aa(0x204)]=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x1d0956=a0_0x245027;return[_0x1d0956(0x229),_0x1d0956(0x260),_0x1d0956(0x245),'delete',_0x1d0956(0x1f0),'move',_0x1d0956(0x246),'list','exists','stats'];}['getParameterSchema'](){const _0x20139f=a0_0x245027;return{'type':_0x20139f(0x1fe),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x20139f(0x1fe),'properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':'string'},'outputPath':{'type':_0x20139f(0x238)},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':'string'},'encoding':{'type':_0x20139f(0x238)},'createDirs':{'type':_0x20139f(0x24f)}},'required':[_0x20139f(0x1eb)]}}},'required':['actions']};}[a0_0x245027(0x24b)](_0x3aa744=null){const _0x36e8f0=a0_0x245027;if(_0x3aa744)return this[_0x36e8f0(0x204)][_0x36e8f0(0x1d5)](_0x336af1=>_0x336af1[_0x36e8f0(0x1e9)]===_0x3aa744);return[...this[_0x36e8f0(0x204)]];}}export default FileSystemTool;function a0_0x5940(){const _0x16d917=['z2v0rMLSzvn0yxrZ','igrVzxmGBM90igv4Axn0','yM9VBgvHBG','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','yMXVy2TLzev4DgvUC2LVBNm','DxrMoa','ywXSB3DLzerPCMvJDg9YAwvZ','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','zxH0BMfTzq','igfJy2vZCYbKzw5Pzwq6ia','qxbWzw5KzwqG','DMfSAwrHDgvxCML0zufJy2vZCW','m1Pzu0LUsq','mZK2zNvtENLX','C3vIC3rYAw5N','rMfPBgvKihrVignVChKG','ywXSB3DLzev4DgvUC2LVBNm','Bwf0y2HbBgW','D3jPDgu','y29UDgvUDa','y3DK','AxnbCNjHEq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','ihrVia','C3rHDa','zMLSzs1WyxrO','D3jPDgvgAwXL','DhjPBq','zMLSDgvY','y3jLyxrLrgLYCW','CMvHzgrPCG','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','CMvHC29U','CMvHzezPBgu','Dg9ju09tDhjPBMC','zgvIDwC','mJK3ndy4A0LPrgHs','D29YA2LUz0rPCMvJDg9YEq','zxHPC3rZ','zgLYBMfTzq','Dhj1zq','zw5JB2rPBMC','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','BMfTzq','Bw9Kzq','Aw5JBhvKzxm','mtm1nJaZm1vxzNHwsG','zgLYzwn0B3j5','ywDLBNrjza','C291CMnLlxbHDgG','DhLWzq','qwn0Aw9Uia','u291CMnLigzPBguGDg9VigXHCMDLoIa','ru5pru5u','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','y29WEq','yNL0zuXLBMD0Aa','tw92zwqG','DMfSAwrHDgvszwfKqwnJzxnZ','BgLZDa','AxnbC3LUyW','q29WAwvKia','ChvZAa','CMvZB2X2zq','ywXSB3DLza','zw50CMLLCW','y29Kzq','mtaZnJiWD2rKtNrA','z2v0v29YA2LUz0rPCMvJDg9YEq','B2jQzwn0','tgLZDgvKia','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','CMvZB2X2zvbHDgG','C291CMnLugf0Aa','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','B3bLCMf0Aw9UsgLZDg9YEq','C2L6zq','BwvZC2fNzq','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','yxrPBwu','ndCZneT6wfn5uW','A2v5CW','nJu4nJeYDuPdBLLK','uMvHzcbHy2nLC3mGzgvUAwvKoIa','yMLYDgH0Aw1L','DgLTzw91Da','igj5DgvZigzYB20G','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','vw5RBM93BIbHy3rPB24GDhLWztOG','BwTKAxi','rMfPBgvKihrVigrLBgv0zsbMAwXLia','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','mtGXnZe5nu55C1Dqsq','Bwf4rMLSzvnPEMu','zgvZDc1WyxrO','AxntEw1IB2XPy0XPBMS','ywn0Aw9UCW','Dg9mB3DLCKnHC2u','BwfW','zgvSzxrL','y3jLyxrLlwrPCNm','Bw92zuzPBgu','ndm5nde2sNf5qujQ','rMfPBgvKihrVihDYAxrLigzPBguG','zMLSzvbHDgG','y3jLyxrLuMvSyxrPDMvqyxrO','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','BxrPBwu','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','y29WEuzPBgu','Bg9N','CMvHza','rMLSzsb0B28GBgfYz2u6ia','igL0zw1ZigLUia','icHIywnRDxaGy3jLyxrLzcK','AM9PBG','ywnJzxnZ','Bg9Nz2vY','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','lMnVBq','BgvUz3rO','CM91BMq','Cgf0Aa','B3v0Chv0lxbHDgG','zMLSzq','CMvXDwLYzxnqCM9Qzwn0','C3rYAw5N','igv4Axn0CYbHCYa','uMv0CMLLDMvKihn0yxrZigzVCIa','mZK5mNnHveHNzW','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','CgfYC2vbDhrYAwj1DgvZ','zMLSzxn5CW','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','zgvZDfbHDgG','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGzgLYzwn0B3j5qwnJzxnZigLZoG','v3jPDguGywnJzxnZigrLBMLLzdOG','yxbWzw5K','y3jLyxrLlwrPCG','nhPYBvjpEG','igj5DgvZihrVia','ywrKvg9iAxn0B3j5','yxbWzw5Kvg9gAwXL','z2v0t3bLCMf0Aw9UsgLZDg9YEq','zgvSzxrLrMLSzq'];a0_0x5940=function(){return _0x16d917;};return a0_0x5940();}
|
|
1
|
+
const a0_0x3e01b2=a0_0x44fc;(function(_0x4986c1,_0x4ced66){const _0x24d212=a0_0x44fc,_0x1546ca=_0x4986c1();while(!![]){try{const _0x4c41a2=parseInt(_0x24d212(0x1e3))/0x1+-parseInt(_0x24d212(0x1ca))/0x2*(parseInt(_0x24d212(0x1dd))/0x3)+-parseInt(_0x24d212(0x16b))/0x4*(parseInt(_0x24d212(0x1b1))/0x5)+-parseInt(_0x24d212(0x1d9))/0x6+parseInt(_0x24d212(0x1e1))/0x7+-parseInt(_0x24d212(0x194))/0x8+parseInt(_0x24d212(0x1c6))/0x9;if(_0x4c41a2===_0x4ced66)break;else _0x1546ca['push'](_0x1546ca['shift']());}catch(_0x7e560){_0x1546ca['push'](_0x1546ca['shift']());}}}(a0_0x1916,0xa1b34));import{BaseTool}from'./baseTool.js';function a0_0x1916(){const _0x437922=['tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','rMfPBgvKihrVignVChKG','DgLTzw91Da','y29Kzq','lMnVBq','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','lMjHy2T1Cc0','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','y3jLyxrLuMvSyxrPDMvqyxrO','ChvZAa','ywXSB3DLzev4DgvUC2LVBNm','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','BxrPBwu','oIb0ExbLigLZihjLCxvPCMvK','ywDLBNrjza','zMLSzxn5CW','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','AxneAxjLy3rVCNK','vw5RBM93BIbHy3rPB24GDhLWztOG','zxHPC3rZ','v3jPDguGywnJzxnZigrLBMLLzdOG','y29WEuzPBgu','mJHsvg1lsxO','zMLSzs1WyxrO','zw5JB2rPBMC','ywn0Aw9UCW','C3rYAw5NAwz5','DMfSAwrHDgvszwfKqwnJzxnZ','CMvHzgrPCG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','Bg9N','u291CMnLigzPBguGDg9VigXHCMDLoIa','y3DK','uMv0CMLLDMvKihn0yxrZigzVCIa','lNnJCG','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','Bw92zuzPBgu','BMfTzq','igrVzxmGBM90igv4Axn0','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','yxrPBwu','D29YA2LUz0rPCMvJDg9YEq','C3vIC3rYAw5N','Aw5JBhvKzxm','AxntEw1IB2XPy0XPBMS','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','CgfYC2vbDhrYAwj1DgvZ','ywXSB3DLza','B3v0Chv0lxbHDgG','rMfPBgvKihrVigrLBgv0zsbMAwXLia','ywrKvg9iAxn0B3j5','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','rMfPBgvKihrVihDYAxrLigzPBguG','DMfSAwrHDgvxCML0zufJy2vZCW','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','CMf3q29UDgvUDa','zgLYzwn0B3j5','BwTKAxi','C3rHDhm','Dhj1zq','zgvZDc1WyxrO','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','BgvUz3rO','mJK5ndq5nMnnB0TLrG','lMnTza','icHIywnRDxaGy3jLyxrLzcK','zgLYBMfTzq','z2v0t3bLCMf0Aw9UsgLZDg9YEq','C291CMnLugf0Aa','A2v5CW','Bwf0y2HbBgW','rMfPBgvKihrVig1VDMuG','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','B2jQzwn0','yxbWzw5KrMLSzq','CMvUyw1L','DhLWzq','y3jLyxrLrgLYCW','D3jPDgvgAwXL','y3jLyxrLlwrPCNm','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','CMvHC29U','y2HLy2TfEgLZDhm','zgvSzxrL','rMLSzsb0B28GBgfYz2u6ia','BM93','Bg9Nz2vY','C3rYAw5N','CM91BMq','uMvHzca','zMLSzvbHDgG','igj5DgvZigzYB20G','mJKZmdaWB1PftuDW','AM9PBG','C3rHDa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','DMfSAwrHDgvqyxrOqwnJzxnZ','yxbWzw5K','zgvIDwC','CMvHza','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','zMLSzq','CgfYC2vqyxjHBwv0zxjZ','lMv4zq','z2v0ugfYyw1LDgvYu2nOzw1H','BwvZC2fNzq','B3v0Chv0ugf0Aa','Dg9mB3DLCKnHC2u','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','CMvZB2X2zvbHDgG','qwn0Aw9Uia','AxnbyNnVBhv0zq','mtiWmZm5nJnrugLOtfu','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C291CMnLlxbHDgG','y29WEq','mtGXmtrzyKHjA1C','zgvZDfbHDgG','C2L6zq','Bw9Kzq','BgLZDa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','AxngAwXL','CMvXDwLYzxnqCM9Qzwn0','Cgf0Aa','igL0zw1ZigLUia','z2v0v29YA2LUz0rPCMvJDg9YEq','zMLSDgvY','uMvHzcbHy2nLC3mGzgvUAwvKoIa','zxH0BMfTzq','ndG2nZK4nKH5wKrtBW','q29WAwvKia','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zgvSzxrLrMLSzq','mJGYzfPAzunt','tw92zwqG','igfJy2vZCYbKzw5Pzwq6ia','DhjPBq','mZi2odaZnfr1DvbyqW','ywXSB3DLzerPCMvJDg9YAwvZ','mtmWntu1nKDfsLHnEa','DxrMoa','AxnbC3LUyW','B3bLCMf0Aw9UsgLZDg9YEq','yMXVy2TLzev4DgvUC2LVBNm','y29UDgvUDa','y3jLyxrLlwrPCG','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','CMvHzezPBgu','Bwf4rMLSzvnPEMu','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','D3jPDgu','Dg9ju09tDhjPBMC'];a0_0x1916=function(){return _0x437922;};return a0_0x1916();}import a0_0x30480a from'../utilities/tagParser.js';import a0_0xbbbbca from'../utilities/directoryAccessManager.js';function a0_0x44fc(_0x2050e9,_0x456732){_0x2050e9=_0x2050e9-0x156;const _0x19162b=a0_0x1916();let _0x44fccc=_0x19162b[_0x2050e9];if(a0_0x44fc['PxUgeT']===undefined){var _0x1995f7=function(_0xea2111){const _0x229471='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x30480a='',_0xbbbbca='';for(let _0x59d4a1=0x0,_0x3c46df,_0x244c07,_0x19c7aa=0x0;_0x244c07=_0xea2111['charAt'](_0x19c7aa++);~_0x244c07&&(_0x3c46df=_0x59d4a1%0x4?_0x3c46df*0x40+_0x244c07:_0x244c07,_0x59d4a1++%0x4)?_0x30480a+=String['fromCharCode'](0xff&_0x3c46df>>(-0x2*_0x59d4a1&0x6)):0x0){_0x244c07=_0x229471['indexOf'](_0x244c07);}for(let _0x593b36=0x0,_0x30e432=_0x30480a['length'];_0x593b36<_0x30e432;_0x593b36++){_0xbbbbca+='%'+('00'+_0x30480a['charCodeAt'](_0x593b36)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xbbbbca);};a0_0x44fc['cvPNee']=_0x1995f7,a0_0x44fc['MTpJsX']={},a0_0x44fc['PxUgeT']=!![];}const _0x387665=_0x19162b[0x0],_0x2ddfd2=_0x2050e9+_0x387665,_0x41e846=a0_0x44fc['MTpJsX'][_0x2ddfd2];return!_0x41e846?(_0x44fccc=a0_0x44fc['cvPNee'](_0x44fccc),a0_0x44fc['MTpJsX'][_0x2ddfd2]=_0x44fccc):_0x44fccc=_0x41e846,_0x44fccc;}import a0_0x59d4a1 from'fs/promises';import a0_0x3c46df from'path';import a0_0x244c07 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x19c7aa={},_0x593b36=null){const _0x3bfcaf=a0_0x44fc;super(_0x19c7aa,_0x593b36),this[_0x3bfcaf(0x1d2)]=!![],this[_0x3bfcaf(0x1e5)]=![],this[_0x3bfcaf(0x157)]=_0x19c7aa[_0x3bfcaf(0x157)]||0x7530,this[_0x3bfcaf(0x172)]=_0x19c7aa[_0x3bfcaf(0x172)]||0x5,this[_0x3bfcaf(0x1ec)]=_0x19c7aa['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x19c7aa['allowedExtensions']||null,this[_0x3bfcaf(0x1e7)]=_0x19c7aa['blockedExtensions']||[_0x3bfcaf(0x1bc),'.bat',_0x3bfcaf(0x195),_0x3bfcaf(0x177),_0x3bfcaf(0x159)],this[_0x3bfcaf(0x1e2)]=_0x19c7aa[_0x3bfcaf(0x1e2)]||null,this[_0x3bfcaf(0x1e6)]=[],this[_0x3bfcaf(0x188)]=new a0_0xbbbbca(_0x19c7aa,_0x593b36);}['getDescription'](){const _0x1058f7=a0_0x44fc;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22src/file.js\x22,\x20\x22content\x22:\x20\x22...\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x20(filePath)\x0a-\x20write:\x20Write\x20content\x20to\x20file\x20(outputPath,\x20content)\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x20(filePath,\x20content)\x0a-\x20delete:\x20Delete\x20a\x20file\x20(filePath)\x0a-\x20copy:\x20Copy\x20file\x20(sourcePath,\x20destPath)\x0a-\x20move:\x20Move/rename\x20file\x20(sourcePath,\x20destPath)\x0a-\x20create-dir:\x20Create\x20directory\x20(directory)\x0a-\x20list:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x20(filePath)\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x20(filePath)\x0a\x0aPARAMETERS:\x0a-\x20filePath:\x20Path\x20to\x20file\x20(for\x20read,\x20delete,\x20append,\x20exists,\x20stats)\x0a-\x20outputPath:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20sourcePath:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20destPath:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20create-dir\x20and\x20list\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20createDirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aWrite\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22hello.js\x22,\x20\x22content\x22:\x20\x22console.log(\x27Hello\x27);\x22}]\x0a}\x0a```\x0a\x0aRead\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22package.json\x22}]\x0a}\x0a```\x0a\x0aMultiple\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22copy\x22,\x20\x22sourcePath\x22:\x20\x22template.js\x22,\x20\x22destPath\x22:\x20\x22src/component.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22create-dir\x22,\x20\x22directory\x22:\x20\x22src/components/ui\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x1058f7(0x1ad)](this[_0x1058f7(0x1ec)]/0x400/0x400)+_0x1058f7(0x1f0);}[a0_0x3e01b2(0x1bb)](_0x30e432){const _0x4789a6=a0_0x3e01b2;try{const _0x2390e6={},_0xbe57ee=[];this[_0x4789a6(0x1ab)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x30e432['length'],'contentPreview':_0x30e432[_0x4789a6(0x17f)](0x0,0xc8)});const _0x20fbad=['read','delete',_0x4789a6(0x1c9),'move','create-dir','list',_0x4789a6(0x168),'stats','append'];for(const _0x7f30e1 of _0x20fbad){const _0x407c33=a0_0x30480a['extractTagsWithAttributes'](_0x30e432,_0x7f30e1);for(const _0x2c879c of _0x407c33){const _0x47992d={'type':_0x7f30e1,..._0x2c879c['attributes']};_0x47992d[_0x4789a6(0x16c)]&&(_0x47992d[_0x4789a6(0x1af)]=_0x47992d['file-path'],delete _0x47992d[_0x4789a6(0x16c)]),_0x47992d[_0x4789a6(0x185)]&&(_0x47992d[_0x4789a6(0x1bf)]=_0x47992d['output-path'],delete _0x47992d[_0x4789a6(0x185)]),_0x47992d[_0x4789a6(0x1c8)]&&(_0x47992d[_0x4789a6(0x199)]=_0x47992d['source-path'],delete _0x47992d['source-path']),_0x47992d[_0x4789a6(0x191)]&&(_0x47992d['destPath']=_0x47992d[_0x4789a6(0x191)],delete _0x47992d[_0x4789a6(0x191)]),_0x47992d[_0x4789a6(0x1a4)]&&(_0x47992d[_0x4789a6(0x1a2)]=_0x47992d['create-dirs']===_0x4789a6(0x190),delete _0x47992d[_0x4789a6(0x1a4)]),_0xbe57ee[_0x4789a6(0x15e)](_0x47992d);}}const _0x25c191=_0x30e432[_0x4789a6(0x19b)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x3fe483 of _0x25c191){const _0x2a5ae8=new a0_0x30480a(),_0xff97c0=_0x2a5ae8['parseAttributes'](_0x3fe483[0x1]),_0xbafdd7=_0x3fe483[0x2][_0x4789a6(0x1e0)](),_0x3d17f0={'type':'write','content':_0xbafdd7,..._0xff97c0};_0x3d17f0[_0x4789a6(0x185)]&&(_0x3d17f0['outputPath']=_0x3d17f0[_0x4789a6(0x185)],delete _0x3d17f0[_0x4789a6(0x185)]),_0x3d17f0['create-dirs']&&(_0x3d17f0[_0x4789a6(0x1a2)]=_0x3d17f0[_0x4789a6(0x1a4)]===_0x4789a6(0x190),delete _0x3d17f0['create-dirs']),_0xbe57ee[_0x4789a6(0x15e)](_0x3d17f0);}const _0x569fac=_0x30e432[_0x4789a6(0x19b)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x3600bc of _0x569fac){const _0x18077d=new a0_0x30480a(),_0x3a3d2a=_0x18077d[_0x4789a6(0x183)](_0x3600bc[0x1]),_0x5a52c3=_0x3600bc[0x2][_0x4789a6(0x1e0)](),_0x266c91={'type':_0x4789a6(0x1b6),'content':_0x5a52c3,..._0x3a3d2a};_0x266c91[_0x4789a6(0x16c)]&&(_0x266c91['filePath']=_0x266c91[_0x4789a6(0x16c)],delete _0x266c91[_0x4789a6(0x16c)]),_0xbe57ee['push'](_0x266c91);}return _0x2390e6['actions']=_0xbe57ee,_0x2390e6[_0x4789a6(0x18c)]=_0x30e432[_0x4789a6(0x1e0)](),this[_0x4789a6(0x1ab)]?.[_0x4789a6(0x1b7)]('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0xbe57ee['length'],'actionTypes':_0xbe57ee['map'](_0x3d06c9=>_0x3d06c9[_0x4789a6(0x1a1)]),'actions':_0xbe57ee['map'](_0x5c67b3=>({'type':_0x5c67b3[_0x4789a6(0x1a1)],'filePath':_0x5c67b3['filePath'],'outputPath':_0x5c67b3['outputPath'],'hasContent':!!_0x5c67b3['content']}))}),_0x2390e6;}catch(_0x4d44f6){throw new Error(_0x4789a6(0x1d0)+_0x4d44f6[_0x4789a6(0x1be)]);}}['getRequiredParameters'](){const _0x106cb3=a0_0x3e01b2;return[_0x106cb3(0x16e)];}['customValidateParameters'](_0x1835b3){const _0x2273c8=a0_0x3e01b2,_0xe28b51=[];if(!_0x1835b3[_0x2273c8(0x16e)]||!Array['isArray'](_0x1835b3['actions'])||_0x1835b3[_0x2273c8(0x16e)][_0x2273c8(0x193)]===0x0)_0xe28b51['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x10e34b,_0x45e853]of _0x1835b3[_0x2273c8(0x16e)]['entries']()){if(!_0x45e853['type']){_0xe28b51[_0x2273c8(0x15e)](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x162));continue;}switch(_0x45e853['type']){case'read':case _0x2273c8(0x1a8):case _0x2273c8(0x168):case _0x2273c8(0x18f):!_0x45e853['filePath']&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1b9)+_0x45e853[_0x2273c8(0x1a1)]);break;case _0x2273c8(0x1ee):!_0x45e853[_0x2273c8(0x1bf)]&&_0xe28b51['push']('Action\x20'+(_0x10e34b+0x1)+_0x2273c8(0x165));!_0x45e853['content']&&_0x45e853[_0x2273c8(0x1e8)]!==''&&_0xe28b51[_0x2273c8(0x15e)](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x18b));break;case _0x2273c8(0x1b6):!_0x45e853[_0x2273c8(0x1af)]&&_0xe28b51[_0x2273c8(0x15e)]('Action\x20'+(_0x10e34b+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x45e853[_0x2273c8(0x1e8)]&&_0x45e853[_0x2273c8(0x1e8)]!==''&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1c1));break;case _0x2273c8(0x1c9):case'move':!_0x45e853['sourcePath']&&_0xe28b51[_0x2273c8(0x15e)]('Action\x20'+(_0x10e34b+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x45e853['type']);!_0x45e853[_0x2273c8(0x1cb)]&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x45e853['type']);break;case'create-dir':case'list':!_0x45e853[_0x2273c8(0x18d)]&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x160)+_0x45e853[_0x2273c8(0x1a1)]);break;default:_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1cf)+_0x45e853[_0x2273c8(0x1a1)]);}_0x45e853['filePath']&&!this[_0x2273c8(0x19d)](_0x45e853[_0x2273c8(0x1af)])&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x15c)+a0_0x3c46df[_0x2273c8(0x1d8)](_0x45e853['filePath'])),_0x45e853[_0x2273c8(0x1bf)]&&!this['isAllowedFileExtension'](_0x45e853['outputPath'])&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x15c)+a0_0x3c46df['extname'](_0x45e853[_0x2273c8(0x1bf)]));}return{'valid':_0xe28b51['length']===0x0,'errors':_0xe28b51};}async['execute'](_0x469db9,_0x54a6e7){const _0x2c5b01=a0_0x3e01b2;if(!_0x469db9||typeof _0x469db9!==_0x2c5b01(0x19e))throw new Error(_0x2c5b01(0x1ed));const {actions:_0x4ddd02}=_0x469db9;if(!_0x4ddd02)throw new Error(_0x2c5b01(0x192)+JSON[_0x2c5b01(0x16f)](Object[_0x2c5b01(0x19a)](_0x469db9)));if(!Array['isArray'](_0x4ddd02))throw new Error('Invalid\x20parameters:\x20actions\x20must\x20be\x20an\x20array.\x20Received\x20type:\x20'+typeof _0x4ddd02);if(_0x4ddd02['length']===0x0)throw new Error(_0x2c5b01(0x1db));const {projectDir:_0x516428,agentId:_0x24d974,directoryAccess:_0x5a3a52}=_0x54a6e7,_0x260807=_0x5a3a52||this[_0x2c5b01(0x188)][_0x2c5b01(0x182)]({'workingDirectory':_0x516428||process[_0x2c5b01(0x175)](),'writeEnabledDirectories':[_0x516428||process['cwd']()],'restrictToProject':!![]});_0x5a3a52&&_0x5a3a52['workingDirectory']?(console[_0x2c5b01(0x173)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x5a3a52[_0x2c5b01(0x17e)]),console['log'](_0x2c5b01(0x178),JSON[_0x2c5b01(0x16f)](_0x5a3a52,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x516428||process[_0x2c5b01(0x175)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5a3a52),console['log'](_0x2c5b01(0x1b4),_0x516428));const _0x4068fe=[];for(const _0x30f6fd of _0x4ddd02){try{let _0x4646b7;switch(_0x30f6fd[_0x2c5b01(0x1a1)]){case'read':_0x4646b7=await this[_0x2c5b01(0x1eb)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807,_0x30f6fd['encoding']);break;case'write':_0x4646b7=await this[_0x2c5b01(0x1a3)](_0x30f6fd['outputPath'],_0x30f6fd['content'],_0x260807,{'encoding':_0x30f6fd[_0x2c5b01(0x16d)],'createDirs':_0x30f6fd[_0x2c5b01(0x1a2)]});break;case'append':_0x4646b7=await this['appendToFile'](_0x30f6fd['filePath'],_0x30f6fd['content'],_0x260807,_0x30f6fd[_0x2c5b01(0x16d)]);break;case _0x2c5b01(0x1a8):_0x4646b7=await this[_0x2c5b01(0x1dc)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;case _0x2c5b01(0x1c9):_0x4646b7=await this['copyFile'](_0x30f6fd['sourcePath'],_0x30f6fd[_0x2c5b01(0x1cb)],_0x260807);break;case'move':_0x4646b7=await this['moveFile'](_0x30f6fd['sourcePath'],_0x30f6fd[_0x2c5b01(0x1cb)],_0x260807);break;case'create-dir':_0x4646b7=await this['createDirectory'](_0x30f6fd['directory'],_0x260807);break;case _0x2c5b01(0x1ce):_0x4646b7=await this['listDirectory'](_0x30f6fd['directory'],_0x260807);break;case _0x2c5b01(0x168):_0x4646b7=await this[_0x2c5b01(0x1a7)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;case _0x2c5b01(0x18f):_0x4646b7=await this['getFileStats'](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;default:throw new Error(_0x2c5b01(0x167)+_0x30f6fd[_0x2c5b01(0x1a1)]);}_0x4068fe['push'](_0x4646b7),this['addToHistory'](_0x30f6fd,_0x4646b7,_0x54a6e7['agentId']);}catch(_0x354524){const _0x46fb81={'success':![],'action':_0x30f6fd[_0x2c5b01(0x1a1)],'error':_0x354524['message'],'filePath':_0x30f6fd['filePath']||_0x30f6fd['outputPath']||_0x30f6fd[_0x2c5b01(0x18d)]};_0x4068fe[_0x2c5b01(0x15e)](_0x46fb81),this[_0x2c5b01(0x187)](_0x30f6fd,_0x46fb81,_0x54a6e7[_0x2c5b01(0x163)]);}}return{'success':!![],'actions':_0x4068fe,'executedActions':_0x4ddd02[_0x2c5b01(0x193)],'toolUsed':_0x2c5b01(0x164)};}async['readFile'](_0xa702cb,_0x540daf,_0x18cc7e=a0_0x3e01b2(0x1e4)){const _0x52d130=a0_0x3e01b2,_0x295f71=this[_0x52d130(0x188)]['getWorkingDirectory'](_0x540daf),_0x4f298c=this[_0x52d130(0x1c3)](_0xa702cb,_0x295f71),_0x224ec3=this[_0x52d130(0x188)]['validateReadAccess'](_0x4f298c,_0x540daf);if(!_0x224ec3['allowed'])throw new Error(_0x52d130(0x1d7)+_0x224ec3[_0x52d130(0x1a6)]+'\x20('+_0x224ec3['path']+')');try{const _0xc59bc5=await a0_0x59d4a1['stat'](_0x4f298c);if(_0xc59bc5[_0x52d130(0x1cc)]>this['maxFileSize'])throw new Error(_0x52d130(0x1a9)+_0xc59bc5['size']+'\x20bytes\x20(max\x20'+this[_0x52d130(0x1ec)]+')');const _0x4df39c=await a0_0x59d4a1[_0x52d130(0x1eb)](_0x4f298c,_0x18cc7e);return{'success':!![],'action':'read','filePath':this[_0x52d130(0x188)][_0x52d130(0x15d)](_0x4f298c,_0x540daf),'content':_0x4df39c,'size':_0xc59bc5[_0x52d130(0x1cc)],'encoding':_0x18cc7e,'lastModified':_0xc59bc5['mtime']['toISOString'](),'message':_0x52d130(0x1ae)+_0xc59bc5['size']+_0x52d130(0x1b0)+_0xa702cb};}catch(_0x224c32){throw new Error('Failed\x20to\x20read\x20file\x20'+_0xa702cb+':\x20'+_0x224c32['message']);}}async[a0_0x3e01b2(0x1a3)](_0x1a6572,_0x4ce0fe,_0x2d9bca,_0x453908={}){const _0x17b0cc=a0_0x3e01b2,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x453908,_0x1dcefe=this['directoryAccessManager']['getWorkingDirectory'](_0x2d9bca),_0x307f3a=this['resolvePath'](_0x1a6572,_0x1dcefe),_0x481812=this['directoryAccessManager'][_0x17b0cc(0x18a)](_0x307f3a,_0x2d9bca);if(!_0x481812['allowed'])throw new Error(_0x17b0cc(0x169)+_0x481812[_0x17b0cc(0x1a6)]+'\x20('+_0x481812['path']+')');try{const _0x1e30b8=Buffer['byteLength'](_0x4ce0fe,encoding);if(_0x1e30b8>this[_0x17b0cc(0x1ec)])throw new Error('Content\x20too\x20large:\x20'+_0x1e30b8+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x55fe0d=a0_0x3c46df[_0x17b0cc(0x197)](_0x307f3a);await a0_0x59d4a1['mkdir'](_0x55fe0d,{'recursive':!![]});}let _0x4915aa=null;try{await a0_0x59d4a1['access'](_0x307f3a),_0x4915aa=_0x307f3a+_0x17b0cc(0x15b)+Date['now'](),await a0_0x59d4a1['copyFile'](_0x307f3a,_0x4915aa);}catch{}await a0_0x59d4a1[_0x17b0cc(0x1a3)](_0x307f3a,_0x4ce0fe,encoding);const _0x4479ff=await a0_0x59d4a1[_0x17b0cc(0x1b3)](_0x307f3a),_0x1fbccf=this['directoryAccessManager']['createRelativePath'](_0x307f3a,_0x2d9bca);return{'success':!![],'action':_0x17b0cc(0x1ee),'outputPath':_0x1fbccf,'fullPath':_0x307f3a,'size':_0x4479ff['size'],'encoding':encoding,'backupPath':_0x4915aa?this['directoryAccessManager']['createRelativePath'](_0x4915aa,_0x2d9bca):null,'backupFullPath':_0x4915aa||null,'message':'Wrote\x20'+_0x4479ff[_0x17b0cc(0x1cc)]+'\x20bytes\x20to\x20'+_0x307f3a};}catch(_0x509e05){throw new Error(_0x17b0cc(0x189)+_0x307f3a+':\x20'+_0x509e05[_0x17b0cc(0x1be)]);}}async['appendToFile'](_0xa8a634,_0x51ffaa,_0x192f92,_0x38802a=a0_0x3e01b2(0x1e4)){const _0x19dd60=a0_0x3e01b2,_0x14df3b=this['directoryAccessManager'][_0x19dd60(0x1d5)](_0x192f92),_0x353075=this[_0x19dd60(0x1c3)](_0xa8a634,_0x14df3b),_0x5100f6=this['directoryAccessManager']['validateWriteAccess'](_0x353075,_0x192f92);if(!_0x5100f6['allowed'])throw new Error(_0x19dd60(0x169)+_0x5100f6['reason']+'\x20('+_0x5100f6['path']+')');try{let _0x4c4efa=0x0;try{const _0x38c264=await a0_0x59d4a1['stat'](_0x353075);_0x4c4efa=_0x38c264[_0x19dd60(0x1cc)];}catch{}const _0xc7bd02=Buffer['byteLength'](_0x51ffaa,_0x38802a);if(_0x4c4efa+_0xc7bd02>this['maxFileSize'])throw new Error(_0x19dd60(0x1ea)+(_0x4c4efa+_0xc7bd02)+'\x20bytes\x20(max\x20'+this[_0x19dd60(0x1ec)]+')');await a0_0x59d4a1[_0x19dd60(0x19f)](_0x353075,_0x51ffaa,_0x38802a);const _0x44171c=await a0_0x59d4a1[_0x19dd60(0x1b3)](_0x353075),_0xaf1be0=this['directoryAccessManager'][_0x19dd60(0x15d)](_0x353075,_0x192f92);return{'success':!![],'action':_0x19dd60(0x1b6),'filePath':_0xaf1be0,'fullPath':_0x353075,'appendedBytes':_0xc7bd02,'totalSize':_0x44171c[_0x19dd60(0x1cc)],'encoding':_0x38802a,'message':'Appended\x20'+_0xc7bd02+'\x20bytes\x20to\x20'+_0x353075};}catch(_0x3677b8){throw new Error(_0x19dd60(0x17c)+_0x353075+':\x20'+_0x3677b8['message']);}}async['deleteFile'](_0x2ab043,_0x363f58){const _0x3cd9fa=a0_0x3e01b2,_0x5bb679=this[_0x3cd9fa(0x188)][_0x3cd9fa(0x1d5)](_0x363f58),_0x13e813=this[_0x3cd9fa(0x1c3)](_0x2ab043,_0x5bb679),_0x536b71=this['directoryAccessManager']['validateWriteAccess'](_0x13e813,_0x363f58);if(!_0x536b71[_0x3cd9fa(0x184)])throw new Error(_0x3cd9fa(0x1c2)+_0x536b71['reason']+'\x20('+_0x536b71['path']+')');try{const _0x287a9d=await a0_0x59d4a1[_0x3cd9fa(0x1b3)](_0x13e813),_0x5ac4ea=_0x13e813+'.deleted-backup-'+Date[_0x3cd9fa(0x1aa)]();await a0_0x59d4a1['copyFile'](_0x13e813,_0x5ac4ea),await a0_0x59d4a1['unlink'](_0x13e813);const _0x41f0e8=this[_0x3cd9fa(0x188)][_0x3cd9fa(0x15d)](_0x13e813,_0x363f58),_0x2b47c2=this[_0x3cd9fa(0x188)]['createRelativePath'](_0x5ac4ea,_0x363f58);return{'success':!![],'action':_0x3cd9fa(0x1a8),'filePath':_0x41f0e8,'fullPath':_0x13e813,'size':_0x287a9d['size'],'backupPath':_0x2b47c2,'backupFullPath':_0x5ac4ea,'message':'Deleted\x20'+_0x13e813+_0x3cd9fa(0x196)};}catch(_0x553bf5){throw new Error(_0x3cd9fa(0x186)+_0x13e813+':\x20'+_0x553bf5['message']);}}async[a0_0x3e01b2(0x16a)](_0x1752ec,_0x49f59f,_0x5a1eb6){const _0x5cf15d=a0_0x3e01b2,_0xb670e1=this['directoryAccessManager']['getWorkingDirectory'](_0x5a1eb6),_0x2109b6=this[_0x5cf15d(0x1c3)](_0x1752ec,_0xb670e1),_0x2d2f2a=this[_0x5cf15d(0x1c3)](_0x49f59f,_0xb670e1),_0x19640e=this[_0x5cf15d(0x188)]['validateReadAccess'](_0x2109b6,_0x5a1eb6);if(!_0x19640e[_0x5cf15d(0x184)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x19640e[_0x5cf15d(0x1a6)]+'\x20('+_0x19640e[_0x5cf15d(0x1d3)]+')');const _0x15e4aa=this[_0x5cf15d(0x188)][_0x5cf15d(0x18a)](_0x2d2f2a,_0x5a1eb6);if(!_0x15e4aa['allowed'])throw new Error(_0x5cf15d(0x1a5)+_0x15e4aa[_0x5cf15d(0x1a6)]+'\x20('+_0x15e4aa[_0x5cf15d(0x1d3)]+')');try{const _0x26a7a7=await a0_0x59d4a1[_0x5cf15d(0x1b3)](_0x2109b6);if(_0x26a7a7['size']>this['maxFileSize'])throw new Error(_0x5cf15d(0x174)+_0x26a7a7[_0x5cf15d(0x1cc)]+'\x20bytes');const _0x3f3b7e=a0_0x3c46df['dirname'](_0x2d2f2a);await a0_0x59d4a1[_0x5cf15d(0x18e)](_0x3f3b7e,{'recursive':!![]}),await a0_0x59d4a1[_0x5cf15d(0x16a)](_0x2109b6,_0x2d2f2a);const _0x7775a1=this['directoryAccessManager']['createRelativePath'](_0x2109b6,_0x5a1eb6),_0x5d0666=this['directoryAccessManager']['createRelativePath'](_0x2d2f2a,_0x5a1eb6);return{'success':!![],'action':'copy','sourcePath':_0x7775a1,'destPath':_0x5d0666,'sourceFullPath':_0x2109b6,'destFullPath':_0x2d2f2a,'size':_0x26a7a7[_0x5cf15d(0x1cc)],'message':_0x5cf15d(0x1da)+_0x2109b6+'\x20to\x20'+_0x2d2f2a};}catch(_0x24118e){throw new Error(_0x5cf15d(0x156)+_0x2109b6+'\x20to\x20'+_0x2d2f2a+':\x20'+_0x24118e[_0x5cf15d(0x1be)]);}}async[a0_0x3e01b2(0x179)](_0x3fd760,_0x1e91b1,_0x29d91e){const _0x5cf0f3=a0_0x3e01b2,_0x4c2add=this['directoryAccessManager']['getWorkingDirectory'](_0x29d91e),_0x51c2bb=this['resolvePath'](_0x3fd760,_0x4c2add),_0x4445b6=this['resolvePath'](_0x1e91b1,_0x4c2add),_0x122598=this['directoryAccessManager'][_0x5cf0f3(0x170)](_0x51c2bb,_0x29d91e);if(!_0x122598[_0x5cf0f3(0x184)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x122598['reason']+'\x20('+_0x122598[_0x5cf0f3(0x1d3)]+')');const _0x587310=this['directoryAccessManager'][_0x5cf0f3(0x18a)](_0x4445b6,_0x29d91e);if(!_0x587310[_0x5cf0f3(0x184)])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x587310['reason']+'\x20('+_0x587310[_0x5cf0f3(0x1d3)]+')');try{const _0x20642a=await a0_0x59d4a1['stat'](_0x51c2bb),_0x3f017e=a0_0x3c46df[_0x5cf0f3(0x197)](_0x4445b6);await a0_0x59d4a1[_0x5cf0f3(0x18e)](_0x3f017e,{'recursive':!![]}),await a0_0x59d4a1[_0x5cf0f3(0x1a0)](_0x51c2bb,_0x4445b6);const _0x575590=this[_0x5cf0f3(0x188)][_0x5cf0f3(0x15d)](_0x51c2bb,_0x29d91e),_0x5a7f1d=this[_0x5cf0f3(0x188)]['createRelativePath'](_0x4445b6,_0x29d91e);return{'success':!![],'action':'move','sourcePath':_0x575590,'destPath':_0x5a7f1d,'fullSourcePath':_0x51c2bb,'fullDestPath':_0x4445b6,'size':_0x20642a[_0x5cf0f3(0x1cc)],'message':_0x5cf0f3(0x1de)+_0x3fd760+'\x20to\x20'+_0x1e91b1};}catch(_0x4b768e){throw new Error(_0x5cf0f3(0x19c)+_0x3fd760+'\x20to\x20'+_0x1e91b1+':\x20'+_0x4b768e[_0x5cf0f3(0x1be)]);}}async['createDirectory'](_0x20c685,_0x93b8d3){const _0x4ea808=a0_0x3e01b2,_0x187b93=this['directoryAccessManager']['getWorkingDirectory'](_0x93b8d3),_0x4cc8a9=this['resolvePath'](_0x20c685,_0x187b93),_0xa2a381=this[_0x4ea808(0x188)]['validateWriteAccess'](_0x4cc8a9,_0x93b8d3);if(!_0xa2a381[_0x4ea808(0x184)])throw new Error(_0x4ea808(0x169)+_0xa2a381['reason']+'\x20('+_0xa2a381[_0x4ea808(0x1d3)]+')');try{await a0_0x59d4a1[_0x4ea808(0x18e)](_0x4cc8a9,{'recursive':!![]});const _0xd7b718=this[_0x4ea808(0x188)][_0x4ea808(0x15d)](_0x4cc8a9,_0x93b8d3);return{'success':!![],'action':_0x4ea808(0x1e9),'directory':_0xd7b718,'fullPath':_0x4cc8a9,'message':'Created\x20directory\x20'+_0x20c685};}catch(_0x46ddea){throw new Error(_0x4ea808(0x15a)+_0x20c685+':\x20'+_0x46ddea[_0x4ea808(0x1be)]);}}async['listDirectory'](_0x1823de,_0x2a4559){const _0x570491=a0_0x3e01b2,_0x566507=this['directoryAccessManager'][_0x570491(0x1d5)](_0x2a4559),_0x242f04=this[_0x570491(0x1c3)](_0x1823de,_0x566507),_0x25b694=this[_0x570491(0x188)]['validateReadAccess'](_0x242f04,_0x2a4559);if(!_0x25b694[_0x570491(0x184)])throw new Error(_0x570491(0x1d7)+_0x25b694['reason']+'\x20('+_0x25b694[_0x570491(0x1d3)]+')');try{const _0x516a78=await a0_0x59d4a1[_0x570491(0x171)](_0x242f04,{'withFileTypes':!![]}),_0x36d6b8=[];for(const _0x3858bb of _0x516a78){const _0x41b8dc=a0_0x3c46df[_0x570491(0x1b2)](_0x242f04,_0x3858bb[_0x570491(0x17a)]),_0x345ad7=await a0_0x59d4a1['stat'](_0x41b8dc);_0x36d6b8[_0x570491(0x15e)]({'name':_0x3858bb[_0x570491(0x17a)],'type':_0x3858bb[_0x570491(0x166)]()?'directory':'file','size':_0x3858bb[_0x570491(0x1d1)]()?_0x345ad7['size']:undefined,'lastModified':_0x345ad7[_0x570491(0x161)]['toISOString'](),'permissions':_0x345ad7[_0x570491(0x1cd)],'isSymlink':_0x3858bb['isSymbolicLink']()});}const _0x21ae91=this[_0x570491(0x188)]['createRelativePath'](_0x242f04,_0x2a4559);return{'success':!![],'action':'list','directory':_0x21ae91,'fullPath':_0x242f04,'contents':_0x36d6b8,'totalItems':_0x36d6b8['length'],'directories':_0x36d6b8[_0x570491(0x1d6)](_0x1c25b3=>_0x1c25b3[_0x570491(0x1a1)]===_0x570491(0x18d))[_0x570491(0x193)],'files':_0x36d6b8[_0x570491(0x1d6)](_0xf42d6d=>_0xf42d6d[_0x570491(0x1a1)]==='file')[_0x570491(0x193)],'message':'Listed\x20'+_0x36d6b8[_0x570491(0x193)]+_0x570491(0x1d4)+_0x1823de};}catch(_0x78c46d){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x1823de+':\x20'+_0x78c46d[_0x570491(0x1be)]);}}async[a0_0x3e01b2(0x1a7)](_0x4837f2,_0x11469a){const _0x6280d7=a0_0x3e01b2,_0x39fa05=this[_0x6280d7(0x188)][_0x6280d7(0x1d5)](_0x11469a),_0xedeb44=this[_0x6280d7(0x1c3)](_0x4837f2,_0x39fa05),_0xe3ec80=this['directoryAccessManager']['validateReadAccess'](_0xedeb44,_0x11469a);if(!_0xe3ec80['allowed'])throw new Error(_0x6280d7(0x1d7)+_0xe3ec80['reason']+'\x20('+_0xe3ec80['path']+')');try{const _0xfa8d60=await a0_0x59d4a1['stat'](_0xedeb44),_0x462694=this['directoryAccessManager']['createRelativePath'](_0xedeb44,_0x11469a);return{'success':!![],'action':_0x6280d7(0x168),'filePath':_0x462694,'fullPath':_0xedeb44,'exists':!![],'type':_0xfa8d60[_0x6280d7(0x166)]()?_0x6280d7(0x18d):_0x6280d7(0x1ba),'message':_0x4837f2+'\x20exists\x20as\x20'+(_0xfa8d60['isDirectory']()?'directory':'file')};}catch(_0x5d3ce1){if(_0x5d3ce1[_0x6280d7(0x158)]==='ENOENT'){const _0x450901=this['directoryAccessManager'][_0x6280d7(0x15d)](_0xedeb44,_0x11469a);return{'success':!![],'action':'exists','filePath':_0x450901,'fullPath':_0xedeb44,'exists':![],'message':_0x4837f2+_0x6280d7(0x17b)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x4837f2+':\x20'+_0x5d3ce1[_0x6280d7(0x1be)]);}}async['getFileStats'](_0x414011,_0x4fd654){const _0x541b44=a0_0x3e01b2,_0x54a93f=this[_0x541b44(0x188)][_0x541b44(0x1d5)](_0x4fd654),_0x55474c=this[_0x541b44(0x1c3)](_0x414011,_0x54a93f),_0x3834ab=this[_0x541b44(0x188)]['validateReadAccess'](_0x55474c,_0x4fd654);if(!_0x3834ab['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x3834ab[_0x541b44(0x1a6)]+'\x20('+_0x3834ab['path']+')');try{const _0xeda434=await a0_0x59d4a1['stat'](_0x55474c),_0x17423a=this['directoryAccessManager'][_0x541b44(0x15d)](_0x55474c,_0x4fd654);return{'success':!![],'action':'stats','filePath':_0x17423a,'fullPath':_0x55474c,'stats':{'size':_0xeda434[_0x541b44(0x1cc)],'type':_0xeda434[_0x541b44(0x166)]()?_0x541b44(0x18d):_0x541b44(0x1ba),'lastModified':_0xeda434['mtime'][_0x541b44(0x1ef)](),'lastAccessed':_0xeda434[_0x541b44(0x17d)]['toISOString'](),'created':_0xeda434['birthtime'][_0x541b44(0x1ef)](),'permissions':_0xeda434['mode'],'isSymlink':_0xeda434[_0x541b44(0x181)]()},'message':_0x541b44(0x176)+_0x414011};}catch(_0x4557ef){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x414011+':\x20'+_0x4557ef[_0x541b44(0x1be)]);}}['resolvePath'](_0x520e79,_0x2e8d8a){const _0x43725b=a0_0x3e01b2;if(a0_0x3c46df[_0x43725b(0x1c5)](_0x520e79))return a0_0x3c46df['normalize'](_0x520e79);return a0_0x3c46df['resolve'](_0x2e8d8a,_0x520e79);}[a0_0x3e01b2(0x1b5)](_0x3499e5,_0x36acdf,_0x346230=a0_0x3e01b2(0x1b8)){const _0x56370b=a0_0x3e01b2,_0x2ac033=_0x346230===_0x56370b(0x1ee)?this[_0x56370b(0x188)]['validateWriteAccess'](_0x3499e5,_0x36acdf):this[_0x56370b(0x188)]['validateReadAccess'](_0x3499e5,_0x36acdf);if(!_0x2ac033[_0x56370b(0x184)])throw new Error(_0x346230+_0x56370b(0x1df)+_0x2ac033[_0x56370b(0x1a6)]+'\x20('+_0x2ac033['path']+')');return _0x2ac033;}[a0_0x3e01b2(0x19d)](_0x4ca490){const _0x3ce6c8=a0_0x3e01b2,_0x720ed5=a0_0x3c46df['extname'](_0x4ca490)[_0x3ce6c8(0x1c0)]();if(this[_0x3ce6c8(0x1e7)][_0x3ce6c8(0x180)](_0x720ed5))return![];if(this['allowedExtensions']&&!this[_0x3ce6c8(0x15f)]['includes'](_0x720ed5))return![];return!![];}['addToHistory'](_0x21e32c,_0x2de022,_0x49990c){const _0x1f666e=a0_0x3e01b2,_0x27f447={'timestamp':new Date()[_0x1f666e(0x1ef)](),'agentId':_0x49990c,'action':_0x21e32c['type'],'filePath':_0x21e32c[_0x1f666e(0x1af)]||_0x21e32c['outputPath']||_0x21e32c[_0x1f666e(0x18d)],'success':_0x2de022['success'],'size':_0x2de022[_0x1f666e(0x1cc)]};this[_0x1f666e(0x1e6)]['push'](_0x27f447),this[_0x1f666e(0x1e6)][_0x1f666e(0x193)]>0xc8&&(this['operationHistory']=this[_0x1f666e(0x1e6)]['slice'](-0xc8));}['getSupportedActions'](){const _0x6f0659=a0_0x3e01b2;return['read',_0x6f0659(0x1ee),_0x6f0659(0x1b6),'delete',_0x6f0659(0x1c9),'move',_0x6f0659(0x1e9),_0x6f0659(0x1ce),'exists','stats'];}[a0_0x3e01b2(0x1bd)](){const _0x40f47f=a0_0x3e01b2;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x40f47f(0x19e),'properties':{'type':{'type':_0x40f47f(0x1ac),'enum':this[_0x40f47f(0x1c7)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':_0x40f47f(0x1ac)},'content':{'type':_0x40f47f(0x1ac)},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}[a0_0x3e01b2(0x198)](_0x287a43=null){const _0x4aec16=a0_0x3e01b2;if(_0x287a43)return this[_0x4aec16(0x1e6)]['filter'](_0x55a58d=>_0x55a58d['agentId']===_0x287a43);return[...this[_0x4aec16(0x1e6)]];}}export default FileSystemTool;
|