@loxia-labs/loxia-autopilot-one 1.0.12 → 1.0.13
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/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 -2
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3c7aa7=a0_0x15c3;(function(_0x35af09,_0x1d24a2){const _0x3794ac=a0_0x15c3,_0x4492c6=_0x35af09();while(!![]){try{const _0x33bd72=-parseInt(_0x3794ac(0x66))/0x1+-parseInt(_0x3794ac(0x69))/0x2*(-parseInt(_0x3794ac(0x94))/0x3)+-parseInt(_0x3794ac(0xb4))/0x4+parseInt(_0x3794ac(0xdb))/0x5*(parseInt(_0x3794ac(0xc2))/0x6)+-parseInt(_0x3794ac(0x73))/0x7*(parseInt(_0x3794ac(0xd8))/0x8)+parseInt(_0x3794ac(0xb0))/0x9+-parseInt(_0x3794ac(0x6e))/0xa;if(_0x33bd72===_0x1d24a2)break;else _0x4492c6['push'](_0x4492c6['shift']());}catch(_0x4abd76){_0x4492c6['push'](_0x4492c6['shift']());}}}(a0_0x25e2,0x203f4));import{promises as a0_0x32dcee}from'fs';import a0_0x99e494 from'path';import{exec as a0_0x3e2dfa}from'child_process';import{promisify}from'util';function a0_0x25e2(){const _0x42f2d9=['C3bSAxq','ChvZAa','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','Bw9Kzq','AM9PBG','zM9YrwfJAa','CgfYC2vqyxjHBwv0zxjZ','q3jLyxrLzcbIywnRDxa','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','C2LTCgXL','zMLSDgvY','BM9YBwfSAxPL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','BNbTifDbuK4','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','mtyYmZCWofj3CxbzEG','x2zLDgnOugfJA2fNzuLUzM8','tLbnx1jfr0Ltvfjzx1vsta','Cgf0Aa','mtaWmdqWD3zswgHY','zxzLCNK','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','Cgf0AcbTDxn0igjLigeGC3rYAw5N','C2XPy2u','zxHLyW','ChjLCMvSzwfZzq','zxjYB3i','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','yxv0BW','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','D3jPDgvgAwXL','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','rxjYB3iGy2HLy2TPBMCG','mtG2mtK4u1rvBezu','Bwf4','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','uMv0CNKG','DMvYC2LVBG','DxrMltG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','yM9VBgvHBG','BwfW','Cgf0y2G','Dhj1zq','x3bHCNnLq29TCgXLEfjHBMDL','zw50CMLLCW','qKfds1vqx0vyvevou0LptG','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','B2jQzwn0','y29WEuzPBgu','y2HLy2S','BwvZC2fNzq','Dg9mB3DLCKnHC2u','C3rHDhvZvgv4Da','mta0zvnPB0Lr','z2v0rgvZy3jPChrPB24','uKvhsvnuuLLFveLnru9vva','mtvzEu9isgy','DhLWzq','tufyx0rfuevorevoq0LfuW','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','cIaG','x2nOzwnRrgvWzw5Kzw5JAwvZ','rMfPBgvKihrVignYzwf0zsbIywnRDxa','zgv2rgvWzw5Kzw5JAwvZ','nZmXntnRtM5dCKi','BgvUz3rO','icdIGkiG','mJuXnJqYy0LTELbo','yNvPBgq','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','Bgf0zxn0','ihbHy2THz2uOCYK','mtyWodu2mhPRuNjRBq','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','x3zHBgLKyxrLugfYyw1LDgvYCW','lIbnDxn0igjLig9UzsbVzJOG','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','ndqZmuXRzuThqq','yMfZzw5HBwu','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','DhjPBq','x2nVBxbHCMvwzxjZAw9UCW','x3bHCNnLvMvYC2LVBG','ywXS','zgvIDwC','tM8GCgfJA2fNzs5QC29UigzVDw5Kigf0oIa','CMfUz2vZ','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','Aw5JBhvKzxm','A2v5CW','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','DgvZDa','C3rYAw5N','x3nHDgLZzMLLC1jHBMDL','uKvuuLLFrevmqvK','x3bHCNnLqM9VBgvHBG','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','x3bHCNnLvMvYC2LVBLjHBMDL','C3rHCNrZv2L0Aa','uKvuuLLFqvruru1qvfm','zgvWzw5Kzw5JEs1YzxnVBhzLCG','Bg9Nz2vY','q1jfqvrfx0jbq0Tvufm','rM91BMqG','Aw5MBW','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','m1zbvgLAuW','tLbnx0nptu1btKrFveLnru9vva','CMfUz2u','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','BMv3vMvYC2LVBG','AxnbyNnVBhv0zq','BwfQB3i','x2nVBxbHCMvqCMvYzwXLyxnL','BwLUB3i','Aw5JBhvKzurLDG','4PYfiejHy2T1CcbJCMvHDgvKoIa'];a0_0x25e2=function(){return _0x42f2d9;};return a0_0x25e2();}import{BaseTool}from'./baseTool.js';function a0_0x15c3(_0x3ff190,_0x1fadc9){_0x3ff190=_0x3ff190-0x65;const _0x25e2ce=a0_0x25e2();let _0x15c3f9=_0x25e2ce[_0x3ff190];if(a0_0x15c3['tELuEh']===undefined){var _0x579f4a=function(_0x296a67){const _0x2399e3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32dcee='',_0x99e494='';for(let _0x3e2dfa=0x0,_0x32cb9b,_0x8b17ac,_0x559ec4=0x0;_0x8b17ac=_0x296a67['charAt'](_0x559ec4++);~_0x8b17ac&&(_0x32cb9b=_0x3e2dfa%0x4?_0x32cb9b*0x40+_0x8b17ac:_0x8b17ac,_0x3e2dfa++%0x4)?_0x32dcee+=String['fromCharCode'](0xff&_0x32cb9b>>(-0x2*_0x3e2dfa&0x6)):0x0){_0x8b17ac=_0x2399e3['indexOf'](_0x8b17ac);}for(let _0x2caa05=0x0,_0xca62da=_0x32dcee['length'];_0x2caa05<_0xca62da;_0x2caa05++){_0x99e494+='%'+('00'+_0x32dcee['charCodeAt'](_0x2caa05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x99e494);};a0_0x15c3['DMzbnJ']=_0x579f4a,a0_0x15c3['HZWoDd']={},a0_0x15c3['tELuEh']=!![];}const _0x2b4452=_0x25e2ce[0x0],_0x54adf0=_0x3ff190+_0x2b4452,_0x4bdd74=a0_0x15c3['HZWoDd'][_0x54adf0];return!_0x4bdd74?(_0x15c3f9=a0_0x15c3['DMzbnJ'](_0x15c3f9),a0_0x15c3['HZWoDd'][_0x54adf0]=_0x15c3f9):_0x15c3f9=_0x4bdd74,_0x15c3f9;}import a0_0x32cb9b from'../utilities/tagParser.js';const exec=promisify(a0_0x3e2dfa),RESOLVER_CONFIG={'DEFAULT_MODE':'check','VALID_MODES':[a0_0x3c7aa7(0xd4),'fix',a0_0x3c7aa7(0xbd)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':'.backup.json','CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x3c7aa7(0xac)};export class DependencyResolverTool extends BaseTool{constructor(_0x8b17ac={},_0x559ec4=null){const _0x3cb5a6=a0_0x3c7aa7;super(_0x8b17ac,_0x559ec4),this['id']=_0x3cb5a6(0x8e);}[a0_0x3c7aa7(0xd9)](){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.)';}[a0_0x3c7aa7(0xa5)](_0x2caa05){const _0x5c919c=a0_0x3c7aa7;if(typeof _0x2caa05===_0x5c919c(0xd2)&&_0x2caa05!==null)return{'path':_0x2caa05[_0x5c919c(0xb3)]||'.','mode':_0x2caa05['mode']||RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':_0x2caa05[_0x5c919c(0x9d)]!==undefined?_0x2caa05[_0x5c919c(0x9d)]:!![]};if(typeof _0x2caa05===_0x5c919c(0x86)){const _0xca62da=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x3285a0=_0xca62da['exec'](_0x2caa05);if(_0x3285a0){const _0x17430c=_0x3285a0[0x1],_0x11f269=_0x3285a0[0x2],_0x8873d3=/path=["']([^"']*)["']/i[_0x5c919c(0xb9)](_0x17430c),_0x31d4d4=/mode=["']([^"']*)["']/i['exec'](_0x17430c),_0x7ab69d=/include-dev=["']([^"']*)["']/i['exec'](_0x17430c),_0x1c1f6e=/<path>(.*?)<\/path>/i,_0x4afa24=_0x1c1f6e['exec'](_0x11f269),_0x530558=/<mode>(.*?)<\/mode>/i,_0x3fd9b4=_0x530558['exec'](_0x11f269),_0x59b6a4=/<include-dev>(.*?)<\/include-dev>/i,_0xce3353=_0x59b6a4['exec'](_0x11f269),_0x58dfd5=(_0x4afa24?_0x4afa24[0x1]['trim']():null)||(_0x8873d3?_0x8873d3[0x1]:'.'),_0x25d31b=(_0x3fd9b4?_0x3fd9b4[0x1][_0x5c919c(0x78)]():null)||(_0x31d4d4?_0x31d4d4[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x2e0da0=(_0xce3353?_0xce3353[0x1][_0x5c919c(0x78)]():null)||(_0x7ab69d?_0x7ab69d[0x1]:'true');return{'path':_0x58dfd5,'mode':_0x25d31b,'includeDev':this[_0x5c919c(0x89)](_0x2e0da0,!![])};}const _0xdb730e=/\[resolve\s+([^\]]*)\]/i,_0x528ab6=_0xdb730e[_0x5c919c(0xb9)](_0x2caa05);if(_0x528ab6){const _0x5ac48d=_0x528ab6[0x1],_0x24a5fd=/path=["']([^"']*)["']/i['exec'](_0x5ac48d),_0x10afc5=/mode=["']([^"']*)["']/i['exec'](_0x5ac48d),_0x5d1dca=/include-dev=["']([^"']*)["']/i[_0x5c919c(0xb9)](_0x5ac48d);return{'path':_0x24a5fd?_0x24a5fd[0x1]:'.','mode':_0x10afc5?_0x10afc5[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x5c919c(0x89)](_0x5d1dca?_0x5d1dca[0x1]:'true',!![])};}throw new Error(_0x5c919c(0x97));}throw new Error(_0x5c919c(0xaf));}[a0_0x3c7aa7(0x89)](_0x1da89b,defaultValue=![]){const _0xc95eae=a0_0x3c7aa7;if(_0x1da89b===undefined||_0x1da89b===null)return defaultValue;if(typeof _0x1da89b===_0xc95eae(0xca))return _0x1da89b;if(typeof _0x1da89b===_0xc95eae(0x86))return _0x1da89b[_0xc95eae(0xd6)]()===_0xc95eae(0xcd)||_0x1da89b==='1';return defaultValue;}[a0_0x3c7aa7(0x70)](_0x17d7c5){const _0x3fdeca=a0_0x3c7aa7;if(!_0x17d7c5||typeof _0x17d7c5!==_0x3fdeca(0xd2))throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x17d7c5['path']&&typeof _0x17d7c5['path']!==_0x3fdeca(0x86))throw new Error(_0x3fdeca(0xb7));if(_0x17d7c5['mode']&&!RESOLVER_CONFIG['VALID_MODES'][_0x3fdeca(0x80)](_0x17d7c5['mode']))throw new Error('Invalid\x20mode:\x20'+_0x17d7c5[_0x3fdeca(0xa2)]+_0x3fdeca(0x71)+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x17d7c5[_0x3fdeca(0x9d)]!==undefined&&typeof _0x17d7c5[_0x3fdeca(0x9d)]!=='boolean')throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}['_resolveAndValidatePath'](_0x2614c6,_0x196964){const _0x288a56=a0_0x3c7aa7,{projectDir:_0x1784f3,directoryAccess:_0x452451}=_0x196964;let _0x316627=_0x1784f3||process['cwd']();_0x452451&&_0x452451['workingDirectory']&&(_0x316627=_0x452451['workingDirectory']);const _0x1260f3=a0_0x99e494[_0x288a56(0x99)](_0x2614c6)?a0_0x99e494[_0x288a56(0xab)](_0x2614c6):a0_0x99e494[_0x288a56(0xab)](a0_0x99e494[_0x288a56(0xa3)](_0x316627,_0x2614c6)),_0x2857f6=a0_0x99e494['normalize'](_0x316627);if(!_0x1260f3['startsWith'](_0x2857f6))throw new Error(_0x288a56(0xb6)+_0x2614c6+_0x288a56(0x6f));return _0x1260f3;}async['_createBackup'](_0x212507){const _0x2a6c72=a0_0x3c7aa7;if(!RESOLVER_CONFIG[_0x2a6c72(0x90)])return null;try{const _0x1610a4=_0x212507+RESOLVER_CONFIG[_0x2a6c72(0xd0)];return await a0_0x32dcee['copyFile'](_0x212507,_0x1610a4),this['logger']?.[_0x2a6c72(0x92)](_0x2a6c72(0xa6),{'backupPath':_0x1610a4}),_0x1610a4;}catch(_0x5938f6){return this[_0x2a6c72(0x8f)]?.['warn'](_0x2a6c72(0xe1),{'error':_0x5938f6[_0x2a6c72(0xd5)]}),null;}}async[a0_0x3c7aa7(0xb1)](_0x36050a){const _0x5434fb=a0_0x3c7aa7,_0x32fea2=RESOLVER_CONFIG[_0x5434fb(0xb2)]+'/'+encodeURIComponent(_0x36050a);for(let _0x13dc43=0x1;_0x13dc43<=RESOLVER_CONFIG[_0x5434fb(0x8d)];_0x13dc43++){try{const _0x15e46c=new AbortController(),_0x48bc3f=setTimeout(()=>_0x15e46c['abort'](),RESOLVER_CONFIG[_0x5434fb(0xda)]),_0x3f8bb8=await fetch(_0x32fea2,{'signal':_0x15e46c['signal']});clearTimeout(_0x48bc3f);if(!_0x3f8bb8['ok']){if(_0x3f8bb8['status']===0x194)return this[_0x5434fb(0x8f)]?.['warn']('Package\x20not\x20found:\x20'+_0x36050a),null;throw new Error('HTTP\x20'+_0x3f8bb8['status']+':\x20'+_0x3f8bb8[_0x5434fb(0xd7)]);}const _0x3ea09d=await _0x3f8bb8['json']();if(!_0x3ea09d||typeof _0x3ea09d!==_0x5434fb(0xd2)||!_0x3ea09d['dist-tags'])throw new Error('Invalid\x20registry\x20response\x20format');return _0x3ea09d;}catch(_0x6d0e3d){if(_0x13dc43<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this['logger']?.[_0x5434fb(0x7c)](_0x5434fb(0xc5)+_0x13dc43+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0x36050a),await new Promise(_0x52c60c=>setTimeout(_0x52c60c,RESOLVER_CONFIG[_0x5434fb(0x88)]*_0x13dc43));else return this[_0x5434fb(0x8f)]?.[_0x5434fb(0xbb)]('Failed\x20to\x20fetch\x20'+_0x36050a+':',_0x6d0e3d[_0x5434fb(0xd5)]),null;}}return null;}async[a0_0x3c7aa7(0xc4)](_0x154eb1,_0x556e3e){const _0x414c44=a0_0x3c7aa7,_0x3ec9eb=await this[_0x414c44(0xb1)](_0x154eb1);if(!_0x3ec9eb)return null;const _0xa4d9da=_0x3ec9eb['dist-tags']?.[_0x414c44(0x6c)];if(!_0xa4d9da)return null;const _0x494f20=this[_0x414c44(0x7a)](_0xa4d9da);if(!_0x494f20)return null;if(this['_isComplexRange'](_0x556e3e)){const _0x2c9b6e=this['_parseComplexRange'](_0x556e3e),_0x5973e2=this[_0x414c44(0x77)](_0x2c9b6e,_0x494f20);if(_0x5973e2)return _0xa4d9da;return null;}const _0x2a31bd=this[_0x414c44(0x8b)](_0x556e3e);if(!_0x2a31bd)return null;const _0xd799de=this['_isUpdateAvailable'](_0x2a31bd,_0x494f20);if(_0xd799de)return _0x2a31bd['prefix']+_0xa4d9da;return null;}['_parseVersion'](_0x25f150){const _0x26d547=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x50863e=_0x26d547['exec'](_0x25f150);if(!_0x50863e){const _0x3decac=_0x25f150['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x3decac)return{'major':parseInt(_0x3decac[0x1],0xa),'minor':parseInt(_0x3decac[0x2],0xa),'patch':parseInt(_0x3decac[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x50863e[0x1],0xa),'minor':parseInt(_0x50863e[0x2],0xa),'patch':parseInt(_0x50863e[0x3],0xa),'prerelease':_0x50863e[0x4]?_0x50863e[0x4]['split']('.'):null,'build':_0x50863e[0x5]||null};}[a0_0x3c7aa7(0x79)](_0x12a8da,_0x2a5214){const _0x286ac4=a0_0x3c7aa7;if(_0x12a8da[_0x286ac4(0x9a)]!==_0x2a5214['major'])return _0x12a8da[_0x286ac4(0x9a)]-_0x2a5214['major'];if(_0x12a8da[_0x286ac4(0x9c)]!==_0x2a5214[_0x286ac4(0x9c)])return _0x12a8da['minor']-_0x2a5214[_0x286ac4(0x9c)];if(_0x12a8da[_0x286ac4(0xcc)]!==_0x2a5214[_0x286ac4(0xcc)])return _0x12a8da[_0x286ac4(0xcc)]-_0x2a5214['patch'];if(!_0x12a8da['prerelease']&&!_0x2a5214[_0x286ac4(0xba)])return 0x0;if(!_0x12a8da[_0x286ac4(0xba)]&&_0x2a5214[_0x286ac4(0xba)])return 0x1;if(_0x12a8da[_0x286ac4(0xba)]&&!_0x2a5214['prerelease'])return-0x1;return this['_comparePrerelease'](_0x12a8da[_0x286ac4(0xba)],_0x2a5214['prerelease']);}[a0_0x3c7aa7(0x9b)](_0x26d6a4,_0x3ac2a0){const _0x584d07=a0_0x3c7aa7,_0x32397f=Math[_0x584d07(0xc3)](_0x26d6a4[_0x584d07(0x67)],_0x3ac2a0[_0x584d07(0x67)]);for(let _0x3e3380=0x0;_0x3e3380<_0x32397f;_0x3e3380++){if(_0x3e3380>=_0x26d6a4[_0x584d07(0x67)])return-0x1;if(_0x3e3380>=_0x3ac2a0['length'])return 0x1;const _0x57490d=_0x26d6a4[_0x3e3380],_0x3f08c0=_0x3ac2a0[_0x3e3380],_0x2c68d1=/^\d+$/[_0x584d07(0x85)](_0x57490d)?parseInt(_0x57490d,0xa):null,_0x32177b=/^\d+$/['test'](_0x3f08c0)?parseInt(_0x3f08c0,0xa):null;if(_0x2c68d1!==null&&_0x32177b!==null){if(_0x2c68d1!==_0x32177b)return _0x2c68d1-_0x32177b;continue;}if(_0x2c68d1!==null&&_0x32177b===null)return-0x1;if(_0x2c68d1===null&&_0x32177b!==null)return 0x1;if(_0x57490d<_0x3f08c0)return-0x1;if(_0x57490d>_0x3f08c0)return 0x1;}return 0x0;}['_parseVersionRange'](_0x57033e){const _0x203437=a0_0x3c7aa7,_0x4a8c8e=_0x57033e['trim'](),_0x14bf27=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x1e5c12=_0x14bf27[_0x203437(0xb9)](_0x4a8c8e);if(_0x1e5c12){const _0x14e90f=_0x1e5c12[0x1],_0x5ce0a0=_0x1e5c12[0x3],_0x29ab95=_0x1e5c12[0x5],_0x14a1a2=_0x14e90f==='*'||_0x14e90f['toLowerCase']()==='x'||_0x5ce0a0===undefined||_0x5ce0a0==='*'||_0x5ce0a0[_0x203437(0xd6)]()==='x'||_0x29ab95===undefined||_0x29ab95==='*'||_0x29ab95[_0x203437(0xd6)]()==='x';if(_0x14a1a2)return{'prefix':'','operator':'x-range','major':_0x14e90f==='*'||_0x14e90f['toLowerCase']()==='x'?null:parseInt(_0x14e90f,0xa),'minor':!_0x5ce0a0||_0x5ce0a0==='*'||_0x5ce0a0['toLowerCase']()==='x'?null:parseInt(_0x5ce0a0,0xa),'patch':!_0x29ab95||_0x29ab95==='*'||_0x29ab95[_0x203437(0xd6)]()==='x'?null:parseInt(_0x29ab95,0xa),'original':_0x57033e};}let _0x5545ba='',_0x4adaa0=_0x4a8c8e,_0x27fb49='=';if(_0x4a8c8e[_0x203437(0x8c)]('^'))_0x5545ba='^',_0x4adaa0=_0x4a8c8e['slice'](0x1),_0x27fb49='^';else{if(_0x4a8c8e['startsWith']('~'))_0x5545ba='~',_0x4adaa0=_0x4a8c8e[_0x203437(0xb8)](0x1),_0x27fb49='~';else{if(_0x4a8c8e[_0x203437(0x8c)]('>='))_0x5545ba='>=',_0x4adaa0=_0x4a8c8e['slice'](0x2)['trim'](),_0x27fb49='>=';else{if(_0x4a8c8e[_0x203437(0x8c)]('>'))_0x5545ba='>',_0x4adaa0=_0x4a8c8e['slice'](0x1)[_0x203437(0x78)](),_0x27fb49='>';else{if(_0x4a8c8e[_0x203437(0x8c)]('<='))_0x5545ba='<=',_0x4adaa0=_0x4a8c8e[_0x203437(0xb8)](0x2)[_0x203437(0x78)](),_0x27fb49='<=';else _0x4a8c8e['startsWith']('<')&&(_0x5545ba='<',_0x4adaa0=_0x4a8c8e['slice'](0x1)['trim'](),_0x27fb49='<');}}}}const _0x1b0989=this[_0x203437(0x7a)](_0x4adaa0);if(!_0x1b0989)return null;return{'prefix':_0x5545ba,'operator':_0x27fb49,'major':_0x1b0989['major'],'minor':_0x1b0989[_0x203437(0x9c)],'patch':_0x1b0989['patch'],'prerelease':_0x1b0989['prerelease'],'build':_0x1b0989[_0x203437(0x6a)],'original':_0x57033e};}['_isUpdateAvailable'](_0x46468d,_0x2d5da2){const _0x47e145=a0_0x3c7aa7,_0x421913={'major':_0x46468d['major'],'minor':_0x46468d[_0x47e145(0x9c)],'patch':_0x46468d[_0x47e145(0xcc)],'prerelease':_0x46468d['prerelease']||null,'build':_0x46468d[_0x47e145(0x6a)]||null};switch(_0x46468d['operator']){case'^':return this['_isCaretUpdateAvailable'](_0x421913,_0x2d5da2);case'~':return this[_0x47e145(0xbc)](_0x421913,_0x2d5da2);case'>=':case'>':return this[_0x47e145(0xbe)](_0x421913,_0x2d5da2);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x46468d,_0x2d5da2);case'x-range':return this['_isXRangeUpdateAvailable'](_0x46468d,_0x2d5da2);case'=':default:return this[_0x47e145(0x8a)](_0x421913,_0x2d5da2);}}[a0_0x3c7aa7(0x83)](_0x15b564,_0x52a767){const _0x7f76a1=a0_0x3c7aa7,_0x13de76=this['_compareVersions'](_0x52a767,_0x15b564);if(_0x13de76<=0x0)return![];if(_0x15b564[_0x7f76a1(0x9a)]===0x0&&_0x15b564['minor']===0x0)return _0x52a767['major']===0x0&&_0x52a767[_0x7f76a1(0x9c)]===0x0;if(_0x15b564[_0x7f76a1(0x9a)]===0x0)return _0x52a767[_0x7f76a1(0x9a)]===0x0&&_0x52a767['minor']===_0x15b564['minor'];return _0x52a767['major']===_0x15b564['major'];}[a0_0x3c7aa7(0xbc)](_0x192f77,_0x10f8e0){const _0x2ac8b1=a0_0x3c7aa7,_0x566381=this[_0x2ac8b1(0x79)](_0x10f8e0,_0x192f77);if(_0x566381<=0x0)return![];return _0x10f8e0[_0x2ac8b1(0x9a)]===_0x192f77[_0x2ac8b1(0x9a)]&&_0x10f8e0['minor']===_0x192f77['minor'];}[a0_0x3c7aa7(0xbe)](_0x1052ee,_0x3f3410){const _0x104d11=this['_compareVersions'](_0x3f3410,_0x1052ee);return _0x104d11>0x0;}['_isExactUpdateAvailable'](_0x49f21d,_0x1bb323){const _0x18f8c6=a0_0x3c7aa7;return this[_0x18f8c6(0xbe)](_0x49f21d,_0x1bb323);}[a0_0x3c7aa7(0xde)](_0x49830a,_0x2fb38a){const _0x520034=a0_0x3c7aa7,_0x4bda58=this[_0x520034(0x79)](_0x2fb38a,_0x49830a);if(_0x49830a['operator']==='<')return _0x4bda58<0x0;else{if(_0x49830a['operator']==='<=')return _0x4bda58<=0x0;}return![];}[a0_0x3c7aa7(0xa1)](_0x50b9bf,_0x35e06f){const _0x1d4f13=a0_0x3c7aa7;if(_0x50b9bf[_0x1d4f13(0x9a)]!==null&&_0x35e06f[_0x1d4f13(0x9a)]!==_0x50b9bf['major'])return![];if(_0x50b9bf['minor']!==null&&_0x35e06f[_0x1d4f13(0x9c)]!==_0x50b9bf['minor'])return![];if(_0x50b9bf[_0x1d4f13(0xcc)]!==null&&_0x35e06f[_0x1d4f13(0xcc)]!==_0x50b9bf[_0x1d4f13(0xcc)])return![];return!![];}['_isComplexRange'](_0x4154b9){const _0x3bcd4=a0_0x3c7aa7;if(_0x4154b9['includes']('||'))return!![];const _0xbd0318=_0x4154b9['trim']();if(_0xbd0318[_0x3bcd4(0x8c)]('^')||_0xbd0318[_0x3bcd4(0x8c)]('~'))return![];const _0x35edc2=_0xbd0318[_0x3bcd4(0x9f)](/\s+/)['filter'](_0x297d0b=>_0x297d0b['length']>0x0);if(_0x35edc2[_0x3bcd4(0x67)]>0x1){const _0x45f8a9=/^(>=?|<=?|\^|~|[0-9])/;return _0x35edc2[_0x3bcd4(0xb5)](_0x70afde=>_0x45f8a9['test'](_0x70afde));}return![];}['_parseComplexRange'](_0x3642d6){const _0x41fede=a0_0x3c7aa7;if(_0x3642d6[_0x41fede(0x80)]('||')){const _0x370b40=_0x3642d6[_0x41fede(0x9f)]('||')['map'](_0x52523a=>_0x52523a[_0x41fede(0x78)]());return{'type':'or','ranges':_0x370b40[_0x41fede(0xcb)](_0x8e4281=>this[_0x41fede(0xce)](_0x8e4281))};}const _0x58f8d6=_0x3642d6['trim']()[_0x41fede(0x9f)](/\s+/)[_0x41fede(0xaa)](_0x501f1a=>_0x501f1a[_0x41fede(0x67)]>0x0);if(_0x58f8d6['length']>0x1)return{'type':'and','ranges':_0x58f8d6[_0x41fede(0xcb)](_0x1c7c87=>this['_parseVersionRange'](_0x1c7c87))};return{'type':_0x41fede(0xa9),'range':this[_0x41fede(0x8b)](_0x3642d6)};}['_satisfiesRange'](_0x51ff23,_0x1c0244){if(!_0x51ff23||!_0x1c0244)return![];return this['_isUpdateAvailable'](_0x51ff23,_0x1c0244);}['_satisfiesComplexRange'](_0x29432f,_0x4a2256){const _0x3d58ab=a0_0x3c7aa7;if(!_0x29432f||!_0x4a2256)return![];switch(_0x29432f[_0x3d58ab(0xdc)]){case'simple':return this[_0x3d58ab(0x87)](_0x29432f[_0x3d58ab(0x96)],_0x4a2256);case'and':return _0x29432f[_0x3d58ab(0x7e)]['every'](_0x40a8a0=>this[_0x3d58ab(0x87)](_0x40a8a0,_0x4a2256));case'or':return _0x29432f['ranges']['some'](_0x41a0c5=>this[_0x3d58ab(0x77)](_0x41a0c5,_0x4a2256));default:return![];}}async[a0_0x3c7aa7(0xe0)](_0xabece4){const _0x23aba1=a0_0x3c7aa7,_0x1fd01c={},_0x10feb4=Object[_0x23aba1(0xcf)](_0xabece4);for(let _0xc58ded=0x0;_0xc58ded<_0x10feb4['length'];_0xc58ded+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0xd782d9=_0x10feb4['slice'](_0xc58ded,_0xc58ded+RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']),_0x5b2aed=_0xd782d9['map'](async([_0x54e46f,_0x2165fe])=>{const _0x38b8d0=_0x23aba1;try{const _0x432cc1=await this['_getLatestCompatibleVersion'](_0x54e46f,_0x2165fe);if(_0x432cc1){const _0x18cd86=_0x2165fe['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x54e46f,'newVersion':''+_0x18cd86+_0x432cc1,'oldVersion':_0x2165fe};}return null;}catch(_0xb99029){return this[_0x38b8d0(0x8f)]?.[_0x38b8d0(0xbb)](_0x38b8d0(0xc1)+_0x54e46f+':',_0xb99029['message']),null;}}),_0x384e6a=await Promise[_0x23aba1(0x7b)](_0x5b2aed);_0x384e6a[_0x23aba1(0xa4)](_0x389176=>{const _0x1fb3ae=_0x23aba1;_0x389176&&(_0x1fd01c[_0x389176['pkg']]=_0x389176[_0x1fb3ae(0x98)]);});}return _0x1fd01c;}async['execute'](_0x43259e,_0x6e7d73={}){const _0x1fe3e2=a0_0x3c7aa7;try{this['_validateParameters'](_0x43259e);const {path:_0x2f36d3,mode:_0x54a3de,includeDev:_0x2e1796}=_0x43259e,{projectDir:_0x203179,agentId:_0x4406db,directoryAccess:_0x7b0fbe}=_0x6e7d73,_0x206de4=this['_resolveAndValidatePath'](_0x2f36d3,_0x6e7d73),_0x1fdce3=a0_0x99e494[_0x1fe3e2(0xa3)](_0x206de4,'package.json');this[_0x1fe3e2(0x8f)]?.[_0x1fe3e2(0x92)]('Dependency\x20resolver\x20executing',{'mode':_0x54a3de,'resolvedPath':_0x206de4,'includeDev':_0x2e1796,'agentId':_0x4406db});const _0x42064b=[];_0x42064b[_0x1fe3e2(0xa0)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x206de4),_0x42064b['push']('Mode:\x20'+_0x54a3de);try{await a0_0x32dcee['access'](_0x1fdce3);}catch{return{'success':![],'error':_0x1fe3e2(0x7d)+_0x1fdce3,'output':_0x42064b['join']('\x0a')};}_0x42064b[_0x1fe3e2(0xa0)](_0x1fe3e2(0xa7));const _0xe08d28=await a0_0x32dcee['readFile'](_0x1fdce3,_0x1fe3e2(0xc7)),_0x349fbd=JSON['parse'](_0xe08d28),_0x500bca={..._0x349fbd[_0x1fe3e2(0x84)]};_0x2e1796&&_0x349fbd[_0x1fe3e2(0x65)]&&Object['assign'](_0x500bca,_0x349fbd['devDependencies']);if(Object[_0x1fe3e2(0x81)](_0x500bca)['length']===0x0)return{'success':!![],'mode':_0x54a3de,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x42064b['join']('\x0a')};if(Object['keys'](_0x500bca)[_0x1fe3e2(0x67)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object['keys'](_0x500bca)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x1fe3e2(0xdd)],'output':_0x42064b['join']('\x0a')};_0x42064b[_0x1fe3e2(0xa0)]('📊\x20Found\x20'+Object['keys'](_0x500bca)['length']+_0x1fe3e2(0xd1)),_0x42064b['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x21dc0b=await this[_0x1fe3e2(0xe0)](_0x500bca);_0x42064b[_0x1fe3e2(0xa0)]('\x0a✅\x20Registry\x20check\x20complete'),_0x42064b['push'](_0x1fe3e2(0xc0)+Object[_0x1fe3e2(0x81)](_0x21dc0b)[_0x1fe3e2(0x67)]);if(Object[_0x1fe3e2(0x81)](_0x21dc0b)['length']>0x0){_0x42064b['push'](_0x1fe3e2(0x82));for(const [_0x4ede37,_0x35d54f]of Object[_0x1fe3e2(0xcf)](_0x21dc0b)){const _0x5bc4eb=_0x500bca[_0x4ede37];_0x42064b['push']('\x20\x20•\x20'+_0x4ede37+':\x20'+_0x5bc4eb+'\x20→\x20'+_0x35d54f);}}else _0x42064b[_0x1fe3e2(0xa0)](_0x1fe3e2(0x76));if(_0x54a3de==='check')return Object['keys'](_0x21dc0b)[_0x1fe3e2(0x67)]>0x0&&_0x42064b['push'](_0x1fe3e2(0x93)),{'success':!![],'mode':'check','message':_0x1fe3e2(0x91)+Object[_0x1fe3e2(0x81)](_0x21dc0b)[_0x1fe3e2(0x67)]+_0x1fe3e2(0x72),'statistics':{'totalDependencies':Object[_0x1fe3e2(0x81)](_0x500bca)[_0x1fe3e2(0x67)],'updatesAvailable':Object[_0x1fe3e2(0x81)](_0x21dc0b)[_0x1fe3e2(0x67)],'updatesApplied':0x0,'errors':0x0},'updates':_0x21dc0b,'output':_0x42064b[_0x1fe3e2(0xa3)]('\x0a')};if((_0x54a3de==='fix'||_0x54a3de===_0x1fe3e2(0xbd))&&Object['keys'](_0x21dc0b)['length']>0x0){_0x42064b[_0x1fe3e2(0xa0)](_0x1fe3e2(0xc9));const _0xac9549=await this['_createBackup'](_0x1fdce3);_0xac9549?_0x42064b['push'](_0x1fe3e2(0x9e)+a0_0x99e494[_0x1fe3e2(0x74)](_0xac9549)):_0x42064b['push'](_0x1fe3e2(0xad));_0x42064b['push']('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x338b63,_0x49ac9d]of Object[_0x1fe3e2(0xcf)](_0x21dc0b)){_0x349fbd['dependencies']?.[_0x338b63]&&(_0x349fbd['dependencies'][_0x338b63]=_0x49ac9d),_0x349fbd[_0x1fe3e2(0x65)]?.[_0x338b63]&&(_0x349fbd['devDependencies'][_0x338b63]=_0x49ac9d);}await a0_0x32dcee[_0x1fe3e2(0xbf)](_0x1fdce3,JSON['stringify'](_0x349fbd,null,0x2)+'\x0a'),_0x42064b['push']('✅\x20package.json\x20updated'),_0x42064b['push'](_0x1fe3e2(0xa8));try{const {stdout:_0x1e3491,stderr:_0x13dd35}=await exec('npm\x20install',{'cwd':_0x206de4,'timeout':RESOLVER_CONFIG[_0x1fe3e2(0x95)],'maxBuffer':0x400*0x400*0xa});if(_0x1e3491){const _0x382c50=_0x1e3491['trim']()['split']('\x0a');_0x382c50[_0x1fe3e2(0x67)]>0xa?_0x42064b[_0x1fe3e2(0xa0)]('\x20\x20'+_0x382c50[_0x1fe3e2(0xb8)](-0x5)['join'](_0x1fe3e2(0xdf))):_0x42064b[_0x1fe3e2(0xa0)]('\x20\x20'+_0x1e3491[_0x1fe3e2(0x78)]());}_0x13dd35&&!_0x13dd35['includes'](_0x1fe3e2(0xae))&&_0x42064b[_0x1fe3e2(0xa0)]('⚠️\x20\x20'+_0x13dd35[_0x1fe3e2(0x78)]());_0x42064b[_0x1fe3e2(0xa0)](_0x1fe3e2(0x7f));try{const {stdout:_0x3d9267}=await exec(_0x1fe3e2(0xc8),{'cwd':_0x206de4,'timeout':0x7530}),_0x4a057c=JSON['parse'](_0x3d9267);if(_0x4a057c['dependencies']){_0x42064b['push']('\x0a📦\x20Installed\x20versions:');for(const _0x1afbe2 of Object[_0x1fe3e2(0x81)](_0x21dc0b)){_0x4a057c['dependencies'][_0x1afbe2]&&_0x42064b['push'](_0x1fe3e2(0x68)+_0x1afbe2+'@'+_0x4a057c['dependencies'][_0x1afbe2][_0x1fe3e2(0xc6)]);}}}catch(_0x2eed03){this[_0x1fe3e2(0x8f)]?.['debug']('npm\x20ls\x20failed:',_0x2eed03['message']);}return{'success':!![],'mode':_0x54a3de,'message':_0x1fe3e2(0x6b)+Object['keys'](_0x21dc0b)['length']+_0x1fe3e2(0x6d),'statistics':{'totalDependencies':Object[_0x1fe3e2(0x81)](_0x500bca)['length'],'updatesAvailable':Object['keys'](_0x21dc0b)[_0x1fe3e2(0x67)],'updatesApplied':Object['keys'](_0x21dc0b)[_0x1fe3e2(0x67)],'errors':0x0},'updates':_0x21dc0b,'backupCreated':_0xac9549!==null,'backupPath':_0xac9549,'output':_0x42064b['join']('\x0a')};}catch(_0x290c32){_0x42064b[_0x1fe3e2(0xa0)]('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x290c32[_0x1fe3e2(0xd5)]);if(_0xac9549)try{await a0_0x32dcee[_0x1fe3e2(0xd3)](_0xac9549,_0x1fdce3),_0x42064b['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x282dde){_0x42064b['push']('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x54a3de,'error':'npm\x20install\x20failed:\x20'+_0x290c32[_0x1fe3e2(0xd5)],'statistics':{'totalDependencies':Object['keys'](_0x500bca)[_0x1fe3e2(0x67)],'updatesAvailable':Object['keys'](_0x21dc0b)[_0x1fe3e2(0x67)],'updatesApplied':0x0,'errors':0x1},'updates':_0x21dc0b,'backupCreated':_0xac9549!==null,'output':_0x42064b['join']('\x0a')};}}else{if(_0x54a3de==='fix'||_0x54a3de==='auto')return _0x42064b['push']('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x54a3de,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x500bca)[_0x1fe3e2(0x67)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x42064b['join']('\x0a')};}}catch(_0x21869f){return this[_0x1fe3e2(0x8f)]?.['error'](_0x1fe3e2(0x75),_0x21869f),{'success':![],'error':_0x21869f[_0x1fe3e2(0xd5)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x21869f['message']};}}}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x54eaf6=a0_0x214b;(function(_0x23e0d8,_0x4bd30a){const _0x578d93=a0_0x214b,_0x1baef8=_0x23e0d8();while(!![]){try{const _0x58100c=parseInt(_0x578d93(0x15d))/0x1+-parseInt(_0x578d93(0x158))/0x2*(parseInt(_0x578d93(0x15b))/0x3)+-parseInt(_0x578d93(0x18f))/0x4*(-parseInt(_0x578d93(0x196))/0x5)+-parseInt(_0x578d93(0x192))/0x6*(-parseInt(_0x578d93(0x146))/0x7)+parseInt(_0x578d93(0x191))/0x8*(-parseInt(_0x578d93(0x173))/0x9)+-parseInt(_0x578d93(0x17a))/0xa*(-parseInt(_0x578d93(0x198))/0xb)+-parseInt(_0x578d93(0x197))/0xc*(parseInt(_0x578d93(0x183))/0xd);if(_0x58100c===_0x4bd30a)break;else _0x1baef8['push'](_0x1baef8['shift']());}catch(_0x4b59de){_0x1baef8['push'](_0x1baef8['shift']());}}}(a0_0x4b7d,0x9e70d));import{promises as a0_0x130836}from'fs';function a0_0x4b7d(){const _0x54c44c=['ndiWEKnpt3Dq','mJm5nZm3m2DHEeLpvq','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','C3bSAxq','Bg9Nz2vY','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','AM9PBG','tufyx0rfuevorevoq0LfuW','DxrMltG','C3rYAw5N','zM9YrwfJAa','x3bHCNnLq29TCgXLEfjHBMDL','B2jQzwn0','B3bLCMf0B3i','yxv0BW','zgvIDwC','cUkCQcboBYb1CgrHDgvZig5LzwrLza','yMfZzw5HBwu','C2LNBMfS','y29WEuzPBgu','icdIGkiG','x3bHCNnLqM9VBgvHBG','ChvZAa','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','Bgf0zxn0','zxzLCNK','yNvPBgq','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','Bwf0y2G','rxjYB3iGy2HLy2TPBMCG','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','C3rYAw5NAwz5','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','zxHLyW','Aw5JBhvKzxm','tLbnx1jfr0Ltvfjzx1vsta','mtr0r0nMzxC','lMjHy2T1Cc5QC29U','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','AxnbyNnVBhv0zq','Dg9mB3DLCKnHC2u','x3nHDgLZzMLLC1jHBMDL','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','Bw9Kzq','ANnVBG','ksWGBwf4igfSBg93zwq6ia','rMfPBgvKihrVigzLDgnOia','z2v0rgvZy3jPChrPB24','Aw5JBhvKzurLDG','C2LTCgXL','CMvHzezPBgu','BwfW','vKfmsurFtu9ervm','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','nJC1mZu0DvDQtxbn','zw50CMLLCW','C2XPy2u','nKnMq1ryCa','zgv2rgvWzw5Kzw5JAwvZ','nJeXmtaYDuDkwK5U','x2LZvxbKyxrLqxzHAwXHyMXL','yM9VBgvHBG','CgfYC2u','x3bHCNnLvMvYC2LVBG','BNbTigLUC3rHBgWGzMfPBgvKoIa','BMv3vMvYC2LVBG','x2LZq29TCgXLEfjHBMDL','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','D2fYBG','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','CgfJA2fNzs5QC29U','DhjPBq','Ec1Yyw5Nzq','4PYfiejHy2T1CcbJCMvHDgvKoIa','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x2nOzwnRrgvWzw5Kzw5JAwvZ','Cgf0y2G','BwvZC2fNzq','x3zHBgLKyxrLugfYyw1LDgvYCW','x2zLDgnOugfJA2fNzuLUzM8','mJa0oteYme9VD2HNsG','revgqvvmvf9nt0rf','Cgf0Aa','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','x2nYzwf0zujHy2T1Ca','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','C3rHCNrZv2L0Aa','mJbmr3jfuwS','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','A2v5CW','x3bHCNnLvMvYC2LVBLjHBMDL','tufyx0nptKnvuLjftLrFq0Hfq0Tt','sfruuca','ChjLCMvSzwfZzq','8j+tIIbgB3vUzca','BNbTifDbuK4','mZG1nZq5t3PcufzY','CMfUz2vZ','x2nVBxbHCMvwzxjZAw9UCW','zML4','Bwf4','BwLUB3i','BwfQB3i','zgvWzw5Kzw5JAwvZ','y2HLy2S','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BgvUz3rO','BM9YBwfSAxPL','nJuWndu2wwDczhbg','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','oeLfzgXkBa','mZy1ntaZogP4DxfsuG','x2nVBxbHCMvqCMvYzwXLyxnL','uKvhsvnuuLLFveLnru9vva','yw5K','mtbjCxbMCfK'];a0_0x4b7d=function(){return _0x54c44c;};return a0_0x4b7d();}import a0_0x200071 from'path';function a0_0x214b(_0xf561f1,_0x574730){_0xf561f1=_0xf561f1-0x12d;const _0x4b7d5e=a0_0x4b7d();let _0x214bf8=_0x4b7d5e[_0xf561f1];if(a0_0x214b['pQCKWs']===undefined){var _0x3b3c82=function(_0x29c3b6){const _0x4abded='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x130836='',_0x200071='';for(let _0x15902b=0x0,_0x1ffd5b,_0x49554e,_0xc3b6a8=0x0;_0x49554e=_0x29c3b6['charAt'](_0xc3b6a8++);~_0x49554e&&(_0x1ffd5b=_0x15902b%0x4?_0x1ffd5b*0x40+_0x49554e:_0x49554e,_0x15902b++%0x4)?_0x130836+=String['fromCharCode'](0xff&_0x1ffd5b>>(-0x2*_0x15902b&0x6)):0x0){_0x49554e=_0x4abded['indexOf'](_0x49554e);}for(let _0xf669a5=0x0,_0xdee14e=_0x130836['length'];_0xf669a5<_0xdee14e;_0xf669a5++){_0x200071+='%'+('00'+_0x130836['charCodeAt'](_0xf669a5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x200071);};a0_0x214b['bhIcAc']=_0x3b3c82,a0_0x214b['sKomsy']={},a0_0x214b['pQCKWs']=!![];}const _0xb74a92=_0x4b7d5e[0x0],_0x52febb=_0xf561f1+_0xb74a92,_0x38e352=a0_0x214b['sKomsy'][_0x52febb];return!_0x38e352?(_0x214bf8=a0_0x214b['bhIcAc'](_0x214bf8),a0_0x214b['sKomsy'][_0x52febb]=_0x214bf8):_0x214bf8=_0x38e352,_0x214bf8;}import{exec as a0_0x15902b}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x1ffd5b from'../utilities/tagParser.js';const exec=promisify(a0_0x15902b),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x54eaf6(0x18b),'VALID_MODES':[a0_0x54eaf6(0x18b),a0_0x54eaf6(0x186),'auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x54eaf6(0x147),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x54eaf6(0x17b)};export class DependencyResolverTool extends BaseTool{constructor(_0x49554e={},_0xc3b6a8=null){super(_0x49554e,_0xc3b6a8),this['id']='dependency-resolver';}[a0_0x54eaf6(0x151)](){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'](_0xf669a5){const _0x29d31d=a0_0x54eaf6;if(typeof _0xf669a5==='object'&&_0xf669a5!==null)return{'path':_0xf669a5[_0x29d31d(0x175)]||'.','mode':_0xf669a5['mode']||RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':_0xf669a5[_0x29d31d(0x152)]!==undefined?_0xf669a5[_0x29d31d(0x152)]:!![]};if(typeof _0xf669a5==='string'){const _0xdee14e=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x4d55f7=_0xdee14e['exec'](_0xf669a5);if(_0x4d55f7){const _0xb92a1b=_0x4d55f7[0x1],_0x3620d8=_0x4d55f7[0x2],_0x323b49=/path=["']([^"']*)["']/i[_0x29d31d(0x143)](_0xb92a1b),_0x30f1be=/mode=["']([^"']*)["']/i['exec'](_0xb92a1b),_0x240eed=/include-dev=["']([^"']*)["']/i[_0x29d31d(0x143)](_0xb92a1b),_0x418b58=/<path>(.*?)<\/path>/i,_0x31f858=_0x418b58[_0x29d31d(0x143)](_0x3620d8),_0x124076=/<mode>(.*?)<\/mode>/i,_0xc600df=_0x124076[_0x29d31d(0x143)](_0x3620d8),_0x24e2e2=/<include-dev>(.*?)<\/include-dev>/i,_0x4338d7=_0x24e2e2[_0x29d31d(0x143)](_0x3620d8),_0x44f51=(_0x31f858?_0x31f858[0x1]['trim']():null)||(_0x323b49?_0x323b49[0x1]:'.'),_0x31fb=(_0xc600df?_0xc600df[0x1]['trim']():null)||(_0x30f1be?_0x30f1be[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x3b6401=(_0x4338d7?_0x4338d7[0x1]['trim']():null)||(_0x240eed?_0x240eed[0x1]:'true');return{'path':_0x44f51,'mode':_0x31fb,'includeDev':this[_0x29d31d(0x135)](_0x3b6401,!![])};}const _0x5023b9=/\[resolve\s+([^\]]*)\]/i,_0xab31c1=_0x5023b9[_0x29d31d(0x143)](_0xf669a5);if(_0xab31c1){const _0x25dd21=_0xab31c1[0x1],_0x3ca2b5=/path=["']([^"']*)["']/i[_0x29d31d(0x143)](_0x25dd21),_0x92b84e=/mode=["']([^"']*)["']/i[_0x29d31d(0x143)](_0x25dd21),_0x1f161e=/include-dev=["']([^"']*)["']/i['exec'](_0x25dd21);return{'path':_0x3ca2b5?_0x3ca2b5[0x1]:'.','mode':_0x92b84e?_0x92b84e[0x1]:RESOLVER_CONFIG[_0x29d31d(0x174)],'includeDev':this[_0x29d31d(0x135)](_0x1f161e?_0x1f161e[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}['_parseBoolean'](_0xab4e0c,defaultValue=![]){if(_0xab4e0c===undefined||_0xab4e0c===null)return defaultValue;if(typeof _0xab4e0c==='boolean')return _0xab4e0c;if(typeof _0xab4e0c==='string')return _0xab4e0c['toLowerCase']()==='true'||_0xab4e0c==='1';return defaultValue;}[a0_0x54eaf6(0x171)](_0x5f3e6d){const _0x59d2e9=a0_0x54eaf6;if(!_0x5f3e6d||typeof _0x5f3e6d!==_0x59d2e9(0x1a4))throw new Error(_0x59d2e9(0x13f));if(_0x5f3e6d[_0x59d2e9(0x175)]&&typeof _0x5f3e6d[_0x59d2e9(0x175)]!==_0x59d2e9(0x1a1))throw new Error('path\x20must\x20be\x20a\x20string');if(_0x5f3e6d['mode']&&!RESOLVER_CONFIG[_0x59d2e9(0x156)]['includes'](_0x5f3e6d['mode']))throw new Error('Invalid\x20mode:\x20'+_0x5f3e6d[_0x59d2e9(0x14d)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES'][_0x59d2e9(0x19e)](',\x20'));if(_0x5f3e6d[_0x59d2e9(0x152)]!==undefined&&typeof _0x5f3e6d['includeDev']!==_0x59d2e9(0x15f))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0x54eaf6(0x19c)](_0xbc3b32,_0x36bd0e){const _0x32b3b2=a0_0x54eaf6,{projectDir:_0x2c90c9,directoryAccess:_0x2ea181}=_0x36bd0e;let _0x17366a=_0x2c90c9||process['cwd']();_0x2ea181&&_0x2ea181['workingDirectory']&&(_0x17366a=_0x2ea181['workingDirectory']);const _0x8746d5=a0_0x200071[_0x32b3b2(0x149)](_0xbc3b32)?a0_0x200071['normalize'](_0xbc3b32):a0_0x200071[_0x32b3b2(0x18e)](a0_0x200071['join'](_0x17366a,_0xbc3b32)),_0x4a1acf=a0_0x200071['normalize'](_0x17366a);if(!_0x8746d5[_0x32b3b2(0x179)](_0x4a1acf))throw new Error(_0x32b3b2(0x157)+_0xbc3b32+'\x20resolves\x20outside\x20working\x20directory');return _0x8746d5;}async[a0_0x54eaf6(0x177)](_0x1b0711){const _0x31e1e4=a0_0x54eaf6;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x538ccb=_0x1b0711+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x130836['copyFile'](_0x1b0711,_0x538ccb),this[_0x31e1e4(0x19b)]?.['info']('Created\x20backup',{'backupPath':_0x538ccb}),_0x538ccb;}catch(_0x321e2c){return this['logger']?.[_0x31e1e4(0x167)]('Failed\x20to\x20create\x20backup',{'error':_0x321e2c[_0x31e1e4(0x170)]}),null;}}async['_fetchPackageInfo'](_0x12d311){const _0x44855f=a0_0x54eaf6,_0x3479fa=RESOLVER_CONFIG[_0x44855f(0x145)]+'/'+encodeURIComponent(_0x12d311);for(let _0x235f52=0x1;_0x235f52<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x235f52++){try{const _0x1d6150=new AbortController(),_0x48bb1c=setTimeout(()=>_0x1d6150['abort'](),RESOLVER_CONFIG[_0x44855f(0x194)]),_0x455a21=await fetch(_0x3479fa,{'signal':_0x1d6150[_0x44855f(0x132)]});clearTimeout(_0x48bb1c);if(!_0x455a21['ok']){if(_0x455a21['status']===0x194)return this['logger']?.[_0x44855f(0x167)]('Package\x20not\x20found:\x20'+_0x12d311),null;throw new Error(_0x44855f(0x17f)+_0x455a21['status']+':\x20'+_0x455a21['statusText']);}const _0x42d860=await _0x455a21[_0x44855f(0x14e)]();if(!_0x42d860||typeof _0x42d860!==_0x44855f(0x1a4)||!_0x42d860['dist-tags'])throw new Error(_0x44855f(0x199));return _0x42d860;}catch(_0x4aa2ac){if(_0x235f52<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x44855f(0x19b)]?.[_0x44855f(0x12f)]('Retry\x20'+_0x235f52+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+'\x20for\x20'+_0x12d311),await new Promise(_0xdb68ef=>setTimeout(_0xdb68ef,RESOLVER_CONFIG['RETRY_DELAY']*_0x235f52));else return this['logger']?.['error'](_0x44855f(0x150)+_0x12d311+':',_0x4aa2ac['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x318e97,_0x408bac){const _0x6b32a9=a0_0x54eaf6,_0x20f320=await this[_0x6b32a9(0x172)](_0x318e97);if(!_0x20f320)return null;const _0x1a6cdd=_0x20f320['dist-tags']?.[_0x6b32a9(0x138)];if(!_0x1a6cdd)return null;const _0x5e0682=this['_parseVersion'](_0x1a6cdd);if(!_0x5e0682)return null;if(this[_0x6b32a9(0x164)](_0x408bac)){const _0x20bd83=this[_0x6b32a9(0x1a3)](_0x408bac),_0x4bf596=this['_satisfiesComplexRange'](_0x20bd83,_0x5e0682);if(_0x4bf596)return _0x1a6cdd;return null;}const _0x54661f=this[_0x6b32a9(0x17d)](_0x408bac);if(!_0x54661f)return null;const _0x40c235=this['_isUpdateAvailable'](_0x54661f,_0x5e0682);if(_0x40c235)return _0x54661f['prefix']+_0x1a6cdd;return null;}[a0_0x54eaf6(0x161)](_0x2d528c){const _0x213ee5=a0_0x54eaf6,_0x382649=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x381eb5=_0x382649[_0x213ee5(0x143)](_0x2d528c);if(!_0x381eb5){const _0x46eac9=_0x2d528c['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x46eac9)return{'major':parseInt(_0x46eac9[0x1],0xa),'minor':parseInt(_0x46eac9[0x2],0xa),'patch':parseInt(_0x46eac9[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x381eb5[0x1],0xa),'minor':parseInt(_0x381eb5[0x2],0xa),'patch':parseInt(_0x381eb5[0x3],0xa),'prerelease':_0x381eb5[0x4]?_0x381eb5[0x4][_0x213ee5(0x19a)]('.'):null,'build':_0x381eb5[0x5]||null};}[a0_0x54eaf6(0x185)](_0xa200bd,_0x7af8ff){const _0x1a5461=a0_0x54eaf6;if(_0xa200bd['major']!==_0x7af8ff['major'])return _0xa200bd['major']-_0x7af8ff[_0x1a5461(0x189)];if(_0xa200bd[_0x1a5461(0x188)]!==_0x7af8ff['minor'])return _0xa200bd[_0x1a5461(0x188)]-_0x7af8ff['minor'];if(_0xa200bd['patch']!==_0x7af8ff['patch'])return _0xa200bd[_0x1a5461(0x16f)]-_0x7af8ff['patch'];if(!_0xa200bd['prerelease']&&!_0x7af8ff['prerelease'])return 0x0;if(!_0xa200bd['prerelease']&&_0x7af8ff['prerelease'])return 0x1;if(_0xa200bd['prerelease']&&!_0x7af8ff['prerelease'])return-0x1;return this['_comparePrerelease'](_0xa200bd['prerelease'],_0x7af8ff['prerelease']);}[a0_0x54eaf6(0x193)](_0x34be17,_0x3a6947){const _0x5ac98b=a0_0x54eaf6,_0xbad91c=Math[_0x5ac98b(0x187)](_0x34be17['length'],_0x3a6947['length']);for(let _0x54d61b=0x0;_0x54d61b<_0xbad91c;_0x54d61b++){if(_0x54d61b>=_0x34be17['length'])return-0x1;if(_0x54d61b>=_0x3a6947['length'])return 0x1;const _0x35f614=_0x34be17[_0x54d61b],_0x5e4d67=_0x3a6947[_0x54d61b],_0x2ed61e=/^\d+$/['test'](_0x35f614)?parseInt(_0x35f614,0xa):null,_0x3cc079=/^\d+$/['test'](_0x5e4d67)?parseInt(_0x5e4d67,0xa):null;if(_0x2ed61e!==null&&_0x3cc079!==null){if(_0x2ed61e!==_0x3cc079)return _0x2ed61e-_0x3cc079;continue;}if(_0x2ed61e!==null&&_0x3cc079===null)return-0x1;if(_0x2ed61e===null&&_0x3cc079!==null)return 0x1;if(_0x35f614<_0x5e4d67)return-0x1;if(_0x35f614>_0x5e4d67)return 0x1;}return 0x0;}[a0_0x54eaf6(0x17d)](_0x50265d){const _0x22d9dc=a0_0x54eaf6,_0x3bdf9c=_0x50265d['trim'](),_0x546a26=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x2c2c8a=_0x546a26['exec'](_0x3bdf9c);if(_0x2c2c8a){const _0x9e319b=_0x2c2c8a[0x1],_0x1e3dab=_0x2c2c8a[0x3],_0x20577f=_0x2c2c8a[0x5],_0x2b9117=_0x9e319b==='*'||_0x9e319b[_0x22d9dc(0x14a)]()==='x'||_0x1e3dab===undefined||_0x1e3dab==='*'||_0x1e3dab[_0x22d9dc(0x14a)]()==='x'||_0x20577f===undefined||_0x20577f==='*'||_0x20577f[_0x22d9dc(0x14a)]()==='x';if(_0x2b9117)return{'prefix':'','operator':'x-range','major':_0x9e319b==='*'||_0x9e319b['toLowerCase']()==='x'?null:parseInt(_0x9e319b,0xa),'minor':!_0x1e3dab||_0x1e3dab==='*'||_0x1e3dab[_0x22d9dc(0x14a)]()==='x'?null:parseInt(_0x1e3dab,0xa),'patch':!_0x20577f||_0x20577f==='*'||_0x20577f[_0x22d9dc(0x14a)]()==='x'?null:parseInt(_0x20577f,0xa),'original':_0x50265d};}let _0x2575fe='',_0x5cc076=_0x3bdf9c,_0x6ce4aa='=';if(_0x3bdf9c[_0x22d9dc(0x179)]('^'))_0x2575fe='^',_0x5cc076=_0x3bdf9c[_0x22d9dc(0x15a)](0x1),_0x6ce4aa='^';else{if(_0x3bdf9c[_0x22d9dc(0x179)]('~'))_0x2575fe='~',_0x5cc076=_0x3bdf9c['slice'](0x1),_0x6ce4aa='~';else{if(_0x3bdf9c['startsWith']('>='))_0x2575fe='>=',_0x5cc076=_0x3bdf9c['slice'](0x2)['trim'](),_0x6ce4aa='>=';else{if(_0x3bdf9c['startsWith']('>'))_0x2575fe='>',_0x5cc076=_0x3bdf9c['slice'](0x1)['trim'](),_0x6ce4aa='>';else{if(_0x3bdf9c[_0x22d9dc(0x179)]('<='))_0x2575fe='<=',_0x5cc076=_0x3bdf9c[_0x22d9dc(0x15a)](0x2)[_0x22d9dc(0x16a)](),_0x6ce4aa='<=';else _0x3bdf9c['startsWith']('<')&&(_0x2575fe='<',_0x5cc076=_0x3bdf9c[_0x22d9dc(0x15a)](0x1)['trim'](),_0x6ce4aa='<');}}}}const _0x225b65=this['_parseVersion'](_0x5cc076);if(!_0x225b65)return null;return{'prefix':_0x2575fe,'operator':_0x6ce4aa,'major':_0x225b65[_0x22d9dc(0x189)],'minor':_0x225b65['minor'],'patch':_0x225b65[_0x22d9dc(0x16f)],'prerelease':_0x225b65[_0x22d9dc(0x180)],'build':_0x225b65[_0x22d9dc(0x13a)],'original':_0x50265d};}['_isUpdateAvailable'](_0x1478ee,_0x5a9bbf){const _0x4b40e9=a0_0x54eaf6,_0x411d78={'major':_0x1478ee['major'],'minor':_0x1478ee['minor'],'patch':_0x1478ee['patch'],'prerelease':_0x1478ee[_0x4b40e9(0x180)]||null,'build':_0x1478ee[_0x4b40e9(0x13a)]||null};switch(_0x1478ee[_0x4b40e9(0x12d)]){case'^':return this[_0x4b40e9(0x176)](_0x411d78,_0x5a9bbf);case'~':return this['_isTildeUpdateAvailable'](_0x411d78,_0x5a9bbf);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x411d78,_0x5a9bbf);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x1478ee,_0x5a9bbf);case _0x4b40e9(0x16b):return this[_0x4b40e9(0x18c)](_0x1478ee,_0x5a9bbf);case'=':default:return this[_0x4b40e9(0x137)](_0x411d78,_0x5a9bbf);}}['_isCaretUpdateAvailable'](_0x5c924d,_0x54867e){const _0x52479c=a0_0x54eaf6,_0x1fa399=this['_compareVersions'](_0x54867e,_0x5c924d);if(_0x1fa399<=0x0)return![];if(_0x5c924d['major']===0x0&&_0x5c924d[_0x52479c(0x188)]===0x0)return _0x54867e[_0x52479c(0x189)]===0x0&&_0x54867e[_0x52479c(0x188)]===0x0;if(_0x5c924d[_0x52479c(0x189)]===0x0)return _0x54867e[_0x52479c(0x189)]===0x0&&_0x54867e[_0x52479c(0x188)]===_0x5c924d['minor'];return _0x54867e['major']===_0x5c924d[_0x52479c(0x189)];}['_isTildeUpdateAvailable'](_0x3268ac,_0xabe8cf){const _0x5e19ff=a0_0x54eaf6,_0x504837=this['_compareVersions'](_0xabe8cf,_0x3268ac);if(_0x504837<=0x0)return![];return _0xabe8cf['major']===_0x3268ac['major']&&_0xabe8cf['minor']===_0x3268ac[_0x5e19ff(0x188)];}[a0_0x54eaf6(0x14c)](_0x1f7706,_0x511328){const _0x109be5=a0_0x54eaf6,_0x4c7fc1=this[_0x109be5(0x185)](_0x511328,_0x1f7706);return _0x4c7fc1>0x0;}[a0_0x54eaf6(0x137)](_0x3f6011,_0xa45c1c){const _0x167c26=a0_0x54eaf6;return this[_0x167c26(0x14c)](_0x3f6011,_0xa45c1c);}[a0_0x54eaf6(0x148)](_0x92b210,_0x19e6a2){const _0x1ed224=this['_compareVersions'](_0x19e6a2,_0x92b210);if(_0x92b210['operator']==='<')return _0x1ed224<0x0;else{if(_0x92b210['operator']==='<=')return _0x1ed224<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0xa7a798,_0x272829){const _0x40efb9=a0_0x54eaf6;if(_0xa7a798['major']!==null&&_0x272829[_0x40efb9(0x189)]!==_0xa7a798['major'])return![];if(_0xa7a798['minor']!==null&&_0x272829[_0x40efb9(0x188)]!==_0xa7a798['minor'])return![];if(_0xa7a798['patch']!==null&&_0x272829[_0x40efb9(0x16f)]!==_0xa7a798['patch'])return![];return!![];}[a0_0x54eaf6(0x164)](_0x5634f9){const _0xfb6a99=a0_0x54eaf6;if(_0x5634f9['includes']('||'))return!![];const _0x52aa75=_0x5634f9['trim']();if(_0x52aa75['startsWith']('^')||_0x52aa75['startsWith']('~'))return![];const _0x34f7f6=_0x52aa75['split'](/\s+/)['filter'](_0x2013e2=>_0x2013e2['length']>0x0);if(_0x34f7f6['length']>0x1){const _0x191fcb=/^(>=?|<=?|\^|~|[0-9])/;return _0x34f7f6[_0xfb6a99(0x139)](_0x272b0d=>_0x191fcb['test'](_0x272b0d));}return![];}['_parseComplexRange'](_0x2c214d){const _0x1f6e20=a0_0x54eaf6;if(_0x2c214d[_0x1f6e20(0x144)]('||')){const _0x2378d4=_0x2c214d[_0x1f6e20(0x19a)]('||')[_0x1f6e20(0x155)](_0x4a3564=>_0x4a3564[_0x1f6e20(0x16a)]());return{'type':'or','ranges':_0x2378d4[_0x1f6e20(0x155)](_0x31b4d0=>this[_0x1f6e20(0x1a3)](_0x31b4d0))};}const _0x309705=_0x2c214d[_0x1f6e20(0x16a)]()[_0x1f6e20(0x19a)](/\s+/)['filter'](_0x3f19ac=>_0x3f19ac[_0x1f6e20(0x18d)]>0x0);if(_0x309705['length']>0x1)return{'type':_0x1f6e20(0x195),'ranges':_0x309705['map'](_0x4bd5c1=>this['_parseVersionRange'](_0x4bd5c1))};return{'type':_0x1f6e20(0x153),'range':this['_parseVersionRange'](_0x2c214d)};}[a0_0x54eaf6(0x14b)](_0x39af82,_0x52a7c7){const _0x2db947=a0_0x54eaf6;if(!_0x39af82||!_0x52a7c7)return![];return this[_0x2db947(0x15e)](_0x39af82,_0x52a7c7);}['_satisfiesComplexRange'](_0x120370,_0x25486c){const _0x4ae2d2=a0_0x54eaf6;if(!_0x120370||!_0x25486c)return![];switch(_0x120370['type']){case'simple':return this[_0x4ae2d2(0x14b)](_0x120370['range'],_0x25486c);case _0x4ae2d2(0x195):return _0x120370[_0x4ae2d2(0x184)][_0x4ae2d2(0x139)](_0x4d935a=>this[_0x4ae2d2(0x14b)](_0x4d935a,_0x25486c));case'or':return _0x120370['ranges']['some'](_0x480e2e=>this[_0x4ae2d2(0x165)](_0x480e2e,_0x25486c));default:return![];}}async['_checkDependencies'](_0x24db59){const _0x4a2b52=a0_0x54eaf6,_0xeaed9e={},_0x291788=Object[_0x4a2b52(0x159)](_0x24db59);for(let _0x1a7a50=0x0;_0x1a7a50<_0x291788[_0x4a2b52(0x18d)];_0x1a7a50+=RESOLVER_CONFIG[_0x4a2b52(0x17e)]){const _0x486308=_0x291788['slice'](_0x1a7a50,_0x1a7a50+RESOLVER_CONFIG[_0x4a2b52(0x17e)]),_0xb47997=_0x486308[_0x4a2b52(0x155)](async([_0x332c05,_0x32c5c1])=>{const _0x2bea59=_0x4a2b52;try{const _0x2811a3=await this['_getLatestCompatibleVersion'](_0x332c05,_0x32c5c1);if(_0x2811a3){const _0x235026=_0x32c5c1[_0x2bea59(0x13c)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x332c05,'newVersion':''+_0x235026+_0x2811a3,'oldVersion':_0x32c5c1};}return null;}catch(_0x1d7e11){return this['logger']?.['error'](_0x2bea59(0x13d)+_0x332c05+':',_0x1d7e11['message']),null;}}),_0x9e043=await Promise['all'](_0xb47997);_0x9e043[_0x4a2b52(0x1a2)](_0x314255=>{const _0x3a958f=_0x4a2b52;_0x314255&&(_0xeaed9e[_0x314255['pkg']]=_0x314255[_0x3a958f(0x163)]);});}return _0xeaed9e;}async['execute'](_0x3979e7,_0x4a3569={}){const _0xab7d02=a0_0x54eaf6;try{this[_0xab7d02(0x171)](_0x3979e7);const {path:_0xbd2f57,mode:_0x483fbf,includeDev:_0x38832f}=_0x3979e7,{projectDir:_0x3da64f,agentId:_0x196541,directoryAccess:_0x9fdcf4}=_0x4a3569,_0x65b65b=this['_resolveAndValidatePath'](_0xbd2f57,_0x4a3569),_0x52b04a=a0_0x200071[_0xab7d02(0x19e)](_0x65b65b,_0xab7d02(0x169));this[_0xab7d02(0x19b)]?.['info']('Dependency\x20resolver\x20executing',{'mode':_0x483fbf,'resolvedPath':_0x65b65b,'includeDev':_0x38832f,'agentId':_0x196541});const _0x39acca=[];_0x39acca[_0xab7d02(0x136)](_0xab7d02(0x190)+_0x65b65b),_0x39acca['push']('Mode:\x20'+_0x483fbf);try{await a0_0x130836['access'](_0x52b04a);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x52b04a,'output':_0x39acca[_0xab7d02(0x19e)]('\x0a')};}_0x39acca[_0xab7d02(0x136)](_0xab7d02(0x166));const _0x592785=await a0_0x130836[_0xab7d02(0x154)](_0x52b04a,_0xab7d02(0x1a0)),_0x3fe97e=JSON['parse'](_0x592785),_0x5bb5e8={..._0x3fe97e['dependencies']};_0x38832f&&_0x3fe97e['devDependencies']&&Object['assign'](_0x5bb5e8,_0x3fe97e['devDependencies']);if(Object['keys'](_0x5bb5e8)[_0xab7d02(0x18d)]===0x0)return{'success':!![],'mode':_0x483fbf,'message':_0xab7d02(0x13b),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x39acca[_0xab7d02(0x19e)]('\x0a')};if(Object[_0xab7d02(0x17c)](_0x5bb5e8)[_0xab7d02(0x18d)]>RESOLVER_CONFIG[_0xab7d02(0x19f)])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object['keys'](_0x5bb5e8)['length']+_0xab7d02(0x14f)+RESOLVER_CONFIG['MAX_DEPENDENCIES'],'output':_0x39acca['join']('\x0a')};_0x39acca['push'](_0xab7d02(0x181)+Object[_0xab7d02(0x17c)](_0x5bb5e8)[_0xab7d02(0x18d)]+'\x20dependencies\x20to\x20check'),_0x39acca[_0xab7d02(0x136)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x52720d=await this[_0xab7d02(0x16e)](_0x5bb5e8);_0x39acca['push']('\x0a✅\x20Registry\x20check\x20complete'),_0x39acca['push']('📈\x20Updates\x20available:\x20'+Object['keys'](_0x52720d)['length']);if(Object['keys'](_0x52720d)[_0xab7d02(0x18d)]>0x0){_0x39acca[_0xab7d02(0x136)](_0xab7d02(0x142));for(const [_0x42e141,_0x425a98]of Object[_0xab7d02(0x159)](_0x52720d)){const _0x4a4722=_0x5bb5e8[_0x42e141];_0x39acca['push']('\x20\x20•\x20'+_0x42e141+':\x20'+_0x4a4722+'\x20→\x20'+_0x425a98);}}else _0x39acca['push'](_0xab7d02(0x178));if(_0x483fbf==='check')return Object[_0xab7d02(0x17c)](_0x52720d)['length']>0x0&&_0x39acca['push']('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0xab7d02(0x18b),'message':'Found\x20'+Object['keys'](_0x52720d)[_0xab7d02(0x18d)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x5bb5e8)['length'],'updatesAvailable':Object[_0xab7d02(0x17c)](_0x52720d)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x52720d,'output':_0x39acca['join']('\x0a')};if((_0x483fbf===_0xab7d02(0x186)||_0x483fbf===_0xab7d02(0x12e))&&Object[_0xab7d02(0x17c)](_0x52720d)['length']>0x0){_0x39acca['push']('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x370b91=await this['_createBackup'](_0x52b04a);_0x370b91?_0x39acca[_0xab7d02(0x136)](_0xab7d02(0x16c)+a0_0x200071[_0xab7d02(0x131)](_0x370b91)):_0x39acca['push'](_0xab7d02(0x19d));_0x39acca['push']('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x5970a1,_0x5bc938]of Object[_0xab7d02(0x159)](_0x52720d)){_0x3fe97e[_0xab7d02(0x18a)]?.[_0x5970a1]&&(_0x3fe97e['dependencies'][_0x5970a1]=_0x5bc938),_0x3fe97e['devDependencies']?.[_0x5970a1]&&(_0x3fe97e[_0xab7d02(0x15c)][_0x5970a1]=_0x5bc938);}await a0_0x130836['writeFile'](_0x52b04a,JSON[_0xab7d02(0x141)](_0x3fe97e,null,0x2)+'\x0a'),_0x39acca['push']('✅\x20package.json\x20updated'),_0x39acca[_0xab7d02(0x136)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x122d5e,stderr:_0x1fe160}=await exec('npm\x20install',{'cwd':_0x65b65b,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x122d5e){const _0x59ec26=_0x122d5e[_0xab7d02(0x16a)]()['split']('\x0a');_0x59ec26[_0xab7d02(0x18d)]>0xa?_0x39acca[_0xab7d02(0x136)]('\x20\x20'+_0x59ec26['slice'](-0x5)['join']('\x0a\x20\x20')):_0x39acca[_0xab7d02(0x136)]('\x20\x20'+_0x122d5e['trim']());}_0x1fe160&&!_0x1fe160['includes'](_0xab7d02(0x182))&&_0x39acca[_0xab7d02(0x136)]('⚠️\x20\x20'+_0x1fe160['trim']());_0x39acca['push'](_0xab7d02(0x16d));try{const {stdout:_0x571ac5}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x65b65b,'timeout':0x7530}),_0x4ea1c6=JSON[_0xab7d02(0x160)](_0x571ac5);if(_0x4ea1c6['dependencies']){_0x39acca['push']('\x0a📦\x20Installed\x20versions:');for(const _0x34e2ac of Object[_0xab7d02(0x17c)](_0x52720d)){_0x4ea1c6[_0xab7d02(0x18a)][_0x34e2ac]&&_0x39acca['push'](_0xab7d02(0x134)+_0x34e2ac+'@'+_0x4ea1c6[_0xab7d02(0x18a)][_0x34e2ac]['version']);}}}catch(_0x1a905d){this[_0xab7d02(0x19b)]?.[_0xab7d02(0x12f)]('npm\x20ls\x20failed:',_0x1a905d[_0xab7d02(0x170)]);}return{'success':!![],'mode':_0x483fbf,'message':_0xab7d02(0x168)+Object['keys'](_0x52720d)['length']+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x5bb5e8)[_0xab7d02(0x18d)],'updatesAvailable':Object['keys'](_0x52720d)[_0xab7d02(0x18d)],'updatesApplied':Object['keys'](_0x52720d)['length'],'errors':0x0},'updates':_0x52720d,'backupCreated':_0x370b91!==null,'backupPath':_0x370b91,'output':_0x39acca[_0xab7d02(0x19e)]('\x0a')};}catch(_0xc5ae1e){_0x39acca['push'](_0xab7d02(0x13e)+_0xc5ae1e['message']);if(_0x370b91)try{await a0_0x130836[_0xab7d02(0x133)](_0x370b91,_0x52b04a),_0x39acca[_0xab7d02(0x136)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x41920e){_0x39acca['push'](_0xab7d02(0x140));}return{'success':![],'mode':_0x483fbf,'error':_0xab7d02(0x162)+_0xc5ae1e[_0xab7d02(0x170)],'statistics':{'totalDependencies':Object['keys'](_0x5bb5e8)[_0xab7d02(0x18d)],'updatesAvailable':Object['keys'](_0x52720d)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x52720d,'backupCreated':_0x370b91!==null,'output':_0x39acca['join']('\x0a')};}}else{if(_0x483fbf===_0xab7d02(0x186)||_0x483fbf==='auto')return _0x39acca[_0xab7d02(0x136)](_0xab7d02(0x130)),{'success':!![],'mode':_0x483fbf,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object[_0xab7d02(0x17c)](_0x5bb5e8)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x39acca['join']('\x0a')};}}catch(_0x4da622){return this[_0xab7d02(0x19b)]?.['error']('Dependency\x20resolver\x20error:',_0x4da622),{'success':![],'error':_0x4da622['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x4da622[_0xab7d02(0x170)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x639b04=a0_0xfcd2;function a0_0x4b5d(){const _0x3aec16=['igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','rMLSzsb0B28GBgfYz2uGkg1HEca','CMvWBgfJzw1LBNrZtwfKzq','Bg9Nz2vY','iebacG','z2vUzxjHDgveAwzM','rMLSzsbUB3qGzM91BMq6ia','zxjYB3i','ig1PC3nPBMCGB2XKq29UDgvUDa','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','zMLSzs1JB250zw50lxjLCgXHy2u','C2L6zq','CgfYC2vmAw5LuMfUz2vZ','CgfYC2vku09o','BwLU','zxH0CMfJDef0DhjPyNv0zq','z2vUzxjHDgvtDw1Tyxj5','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','cKjHy2T1ChmGy3jLyxrLzdOG','ywrK','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','Aw5MBW','Dg90ywXszxbSywnLBwvUDhm','q2HHBMDLzcbSAw5LCZOG','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','mJfstLHQzu4','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlwnVBNrLBNqTCMvWBgfJzsiScIaGiMzPBgvZiJOGwWOGicaGEWOGicaGicaICgf0Aci6icjZCMmVyxbWlMPZiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifSkicaGicaGicb7cIaGicaGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbVBgrgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjUzxDdB250zw50iJOGiMnVBNn0ig5LD0z1BMn0Aw9Uid0GkcKGpt4GE30IlaOGicaGicaGicaGiM1VzguIoIaIDhjPBsiScIaGicaGicaGicaIBgLUzxnmAw1PDci6ici1ldCTmtaIcIaGicaGicaGFqOGicaGicbDcIaGicb9cIaGxqP9cMbGyaOkuefsqu1fvevsuZOkcNbHDgGGkhjLCxvPCMvKktOkicaTifbHDgGGDg8GDgHLigzPBguGDg8GBw9KAwz5cIaGlsbdyw4GyMuGCMvSyxrPDMuGB3iGywjZB2X1DgukicaTiev4yw1WBgvZoIaIC3jJl2fWCc5QCYiSiciUl2nVBMzPzY5QC29UiGOkB2XKq29UDgvUDcaOCMvXDwLYzwqPoGOGic0Gq29UDgvUDcb0BYbMAw5KigfUzcbYzxbSywnLcIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbnDxn0igv4Axn0igLUigzPBgukcM5LD0nVBNrLBNqGkhjLCxvPCMvKktOkicaTifjLCgXHy2vTzw50ignVBNrLBNqkicaTifn1yMPLy3qGDg8GDhjPBsbTB2rLihbYB2nLC3nPBMCkicaTienHBIbIzsbZyw1LigXLBMD0AcWGC2HVCNrLCIWGB3iGBg9Uz2vYcGPTB2rLicHVChrPB25HBcK6cIaGlsbxAgL0zxnWywnLigHHBMrSAw5Nig1VzgukicaTie9WDgLVBNm6cIaGicaQicj0CMLTiIaOzgvMyxvSDcK6ifrYAw0GywXSihDOAxrLC3bHy2uGzNjVBsbIB3rOigvUzhmkicaGicOGiM5LD2XPBMvZiJOGt25SEsb0CMLTig5LD2XPBMuGy2HHCMfJDgvYCWOGicaGkIaIBM9Uzsi6ifvZzsbJB250zw50igv4ywn0BhKGyxmGChjVDMLKzwqkicaTieHLBhbZihDPDgGGBwf0y2HPBMCGzgvZCgL0zsbPBMrLBNrHDgLVBIbKAwzMzxjLBMnLCWOkBgLUzxnmAw1PDcaOB3b0Aw9UywWPoGOGic0GuMvZDhjPy3qGCMvWBgfJzw1LBNqGDg8GC3bLy2LMAwmGBgLUzxmkicaTiezVCM1HDdOGq29TBweTC2vWyxjHDgvKigXPBMuGBNvTyMvYCYbVCIbYyw5NzxmkicaTiev4yw1WBgvZoIaInsiSici1ldeWlde1iIWGiJuTmtaIlcaIms01ldeWlde1ltiWiGOGic0GtgLUzsbUDw1IzxjZigfYzsaXlwjHC2vKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbOyw5KBgvdBgLJAYa9icHLDMvUDcKGpt4GEYbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoYb9iIWkicaGicaGiM5LD0nVBNrLBNqIoIaIy29UC3qGAgfUzgXLq2XPy2SGpsaOzxzLBNqPid0+ihSGy29UC29Szs5SB2COj2nSAwnRzwqNktSGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSGFsiScIaGicaGicjTB2rLiJOGiNrYAw0IcIaGicb9xqOGih1DcN0kygbGcGPfEgfTCgXLidiGlsbmAw5LlwXPBwL0zwqGCMvWBgfJzw1LBNq6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifT7cIaGicaICgf0Aci6icjZCMmVqxbWlMPZiIWkicaGicjYzxbSywnLBwvUDhmIoIbBEWOGicaGicaIB2XKq29UDgvUDci6icjJB25ZDcbbueLFvvjmid0Gj2H0Dha6lY9SB2nHBgHVC3q6mZaWmcCIlaOGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbbueLFvvjmid0GChjVy2vZCY5LBNyUqvbjx1vstciScIaGicaGicjSAw5LC0XPBwL0iJOGiJeWltiWiGOGicaGFv0kicb9xqP9cMbGyaOkrxHHBxbSzsaZic0GtxvSDgLWBguGCMvWBgfJzw1LBNrZigLUig9UzsbMAwXLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTy29UDgvUDc1YzxbSywnLiIWkicaIzMLSzxmIoIbBEWOGicaGiNbHDgGIoIaIC3jJl2nVBMzPzY5QCYiScIaGicaICMvWBgfJzw1LBNrZiJOGwWOGicaGicb7icjVBgrdB250zw50iJOGiKrfqLvhid0GzMfSC2uIlcaIBMv3q29UDgvUDci6icjerujvrYa9ihrYDwuIih0ScIaGicaGihSGiM9SzenVBNrLBNqIoIaIte9hx0XfvKvmid0Gj2vYCM9YjYiSicjUzxDdB250zw50iJOGiKXpr19mrvzftca9icDKzwj1zYCIih0kicaGif0kicb9xqP9cMbGyaOkrxHHBxbSzsa0ic0GtxvSDgLWBguGzMLSzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBEYaIB2XKq29UDgvUDci6icj2zxjZAw9Uid0GjZeUmc4WjYiSicjUzxDdB250zw50iJOGiNzLCNnPB24GpsaNms4XlJaNiIb9xqOGicaGFsWkicaGihSkicaGicaGiNbHDgGIoIaICgfJA2fNzs5QC29UiIWkicaGicaGiNjLCgXHy2vTzw50CYi6ifT7icjVBgrdB250zw50iJOGiLWIDMvYC2LVBLWIoIbCiJeUmc4WxciIlcaIBMv3q29UDgvUDci6icjCiNzLCNnPB25CiJOGxciXlJeUmfWIiIWGiM1VzguIoIaIBM9UzsiGFv0kicaGih0kicbDcN0kygbGcGPgrufuvvjfuZOklsbbDxrVBwf0AwmGyMfJA3vWignYzwf0Aw9UicGUyMfRigzPBgvZkqOTiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmklsbszxbSywnLBwvUDcbJB3vUDgLUzYbHBMqGC3rHDgLZDgLJCWOTie11BhrPlwzPBguGB3bLCMf0Aw9UCWOTieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmklsbjBNrLBgXPz2vUDcb3AgL0zxnWywnLigHHBMrSAw5NcGPmsu1jvefusu9ouZOklsbnyxHPBxvTigzPBguGC2L6ztOG','ihjLCgXHy2vTzw50khmPigLUia','yMfJA3vWC0nYzwf0zwq','ChvZAa','DxrMltG','CMvSyxrPDMu','zMLSzxnnB2rPzMLLza','C3rHCNrZv2L0Aa','C3bSAxq','CMvXDwLYzxnqCM9Qzwn0','BMv3q29UDgvUDa','Bwf4','CMvWBgfJzw1LBNrZ','Cgf0Aa','ntaXmZG2mfDICwrfDW','icHJB250zw50ig5VDcbMB3vUzcK','y3DK','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','AxnbCNjHEq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','zxHLyW','CgfYC2u','D3jPDgvgAwXL','uMvWBgfJzw1LBNqGAw4G','D2fYBG','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','CMvZB2X2zq','DgLTzw91Da','BM9Uzq','BwfW','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','rgLMzIb0B28GBgfYz2uGka','zMLSzxm','mZa4mtq3Bez6AwfM','CMvHzezPBgu','BgLUzxnmAw1PDa','BgvUz3rO','BwvZC2fNzq','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','BMv3BgLUzxm','mJCZndyWCwjKEMnY','Aw5JBhvKzxm','CMvWBgfJzunVBMzPzW','yxbWBhLuCMLTtw9Kzq','CgfYC2vqyxjHBwv0zxjZ','zxjYB3jZ','mZmZnJe4BMLkswnf','reLgrL9dt05urvHux0XjtKvt','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','pvSIj10Ow14Ij10QkvSIj10','B2jQzwn0','qeaGlq','AxnbyNnVBhv0zq','s0iP','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','y291BNq','q1jfqvrfx0jbq0Tvufm','C3vIC3rYAw5N','tufyx05fv19dt05uru5ux1njwKu','y2XLyw51Ca','revgqvvmvf9uuKLnx01preu','tufyx09mrf9dt05uru5ux1njwKu','DhjPBq','mtG2otq1meP5sfz0yq','B2XKq29UDgvUDa','tufyx0zjtevtx1bfuL9puevsqvrjt04','mJy1oda4mdbdr2LAteK','sw52ywXPzcbTB2rLoIa','mJy1mJKZou5xtxjLqW','tuiPoIa','cIaGica','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','AM9PBG','AgfZt3DUuhjVCgvYDhK','ywnJzxnZ','tufyx0rjrKzFteLorvm','ChjVy2vZC0zPBgu','lI4U','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','Bw9Kzq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ'];a0_0x4b5d=function(){return _0x3aec16;};return a0_0x4b5d();}(function(_0x4aba8e,_0x18e5a5){const _0xf1810d=a0_0xfcd2,_0x2c72f2=_0x4aba8e();while(!![]){try{const _0x2871a8=parseInt(_0xf1810d(0x215))/0x1+-parseInt(_0xf1810d(0x1c3))/0x2+-parseInt(_0xf1810d(0x1c8))/0x3+-parseInt(_0xf1810d(0x200))/0x4+-parseInt(_0xf1810d(0x21c))/0x5+parseInt(_0xf1810d(0x1b1))/0x6*(parseInt(_0xf1810d(0x1f1))/0x7)+parseInt(_0xf1810d(0x1c6))/0x8;if(_0x2871a8===_0x18e5a5)break;else _0x2c72f2['push'](_0x2c72f2['shift']());}catch(_0x48b0b9){_0x2c72f2['push'](_0x2c72f2['shift']());}}}(a0_0x4b5d,0xa3a99));function a0_0xfcd2(_0x26aa6c,_0x65b714){_0x26aa6c=_0x26aa6c-0x1af;const _0x4b5d07=a0_0x4b5d();let _0xfcd287=_0x4b5d07[_0x26aa6c];if(a0_0xfcd2['OmjbUR']===undefined){var _0x189c31=function(_0x13b134){const _0x88951e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2c65fb='',_0x436eaa='';for(let _0x576102=0x0,_0xd35ea8,_0x5c2b51,_0x59ed44=0x0;_0x5c2b51=_0x13b134['charAt'](_0x59ed44++);~_0x5c2b51&&(_0xd35ea8=_0x576102%0x4?_0xd35ea8*0x40+_0x5c2b51:_0x5c2b51,_0x576102++%0x4)?_0x2c65fb+=String['fromCharCode'](0xff&_0xd35ea8>>(-0x2*_0x576102&0x6)):0x0){_0x5c2b51=_0x88951e['indexOf'](_0x5c2b51);}for(let _0x41ea39=0x0,_0x22aaad=_0x2c65fb['length'];_0x41ea39<_0x22aaad;_0x41ea39++){_0x436eaa+='%'+('00'+_0x2c65fb['charCodeAt'](_0x41ea39)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x436eaa);};a0_0xfcd2['mWoAsj']=_0x189c31,a0_0xfcd2['CBynAM']={},a0_0xfcd2['OmjbUR']=!![];}const _0x2e0edb=_0x4b5d07[0x0],_0x52d8c7=_0x26aa6c+_0x2e0edb,_0x47028f=a0_0xfcd2['CBynAM'][_0x52d8c7];return!_0x47028f?(_0xfcd287=a0_0xfcd2['mWoAsj'](_0xfcd287),a0_0xfcd2['CBynAM'][_0x52d8c7]=_0xfcd287):_0xfcd287=_0x47028f,_0xfcd287;}import{BaseTool}from'./baseTool.js';import{promises as a0_0x2c65fb}from'fs';import a0_0x436eaa 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':a0_0x639b04(0x1c2)};class FileContentReplaceTool extends BaseTool{constructor(_0x576102={},_0xd35ea8=null){const _0x283357=a0_0x639b04;super(_0x576102,_0xd35ea8),this['id']='file-content-replace',this[_0x283357(0x1fb)]=!![],this['isAsync']=!![],this['timeout']=_0x576102[_0x283357(0x20f)]||0x1d4c0,this[_0x283357(0x21e)]={...REPLACE_CONFIG,..._0x576102['replaceConfig']};}['getDescription'](){const _0x58f874=a0_0x639b04;return _0x58f874(0x1f2)+REPLACE_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0x58f874(0x1f0)+REPLACE_CONFIG[_0x58f874(0x1c1)]/0x400+_0x58f874(0x204)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+_0x58f874(0x205)+REPLACE_CONFIG[_0x58f874(0x212)]+_0x58f874(0x207)+REPLACE_CONFIG[_0x58f874(0x1c5)]+_0x58f874(0x1ca);}[a0_0x639b04(0x1af)](_0x5c2b51){const _0x432aa0=a0_0x639b04;try{if(_0x5c2b51['trim']()['startsWith']('{'))return this[_0x432aa0(0x1e3)](_0x5c2b51);return this['parseXML'](_0x5c2b51);}catch(_0x59ed44){this['logger']?.['error'](_0x432aa0(0x20d),{'error':_0x59ed44[_0x432aa0(0x219)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x59ed44[_0x432aa0(0x219)]);}}['parseJSON'](_0x41ea39){const _0x3eb6cf=a0_0x639b04,_0x22aaad=JSON[_0x3eb6cf(0x209)](_0x41ea39);if(!_0x22aaad[_0x3eb6cf(0x214)]||!Array['isArray'](_0x22aaad['files']))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x22aaad['files']['map'](_0x383a20=>({'path':_0x383a20[_0x3eb6cf(0x1ff)],'replacements':(_0x383a20[_0x3eb6cf(0x1fe)]||[])[_0x3eb6cf(0x211)](_0x44a07c=>({'oldContent':_0x44a07c[_0x3eb6cf(0x1c4)],'newContent':_0x44a07c['newContent'],'mode':_0x44a07c['mode']||REPLACE_CONFIG[_0x3eb6cf(0x1c0)],'linesLimit':_0x44a07c[_0x3eb6cf(0x217)]||null}))}))};}['parseXML'](_0x192e92){const _0x29d52b=a0_0x639b04,_0x223413=[],_0x539e7e=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x9e319e;while((_0x9e319e=_0x539e7e[_0x29d52b(0x208)](_0x192e92))!==null){const _0x1c4cb4=_0x9e319e[0x1],_0x79011f=_0x9e319e[0x2],_0x4f84c3=[],_0x1e19e0=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0xe7e26f;while((_0xe7e26f=_0x1e19e0['exec'](_0x79011f))!==null){const _0x51bc9f=_0xe7e26f[0x1]||'',_0x11819c=_0xe7e26f[0x2],_0x3426a9=this[_0x29d52b(0x1e5)](_0x51bc9f,'mode')||REPLACE_CONFIG[_0x29d52b(0x1c0)],_0x17791c=this['extractAttribute'](_0x51bc9f,'lines-limit'),_0x21aff8=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x11819c);if(!_0x21aff8){this[_0x29d52b(0x1d9)]?.['warn'](_0x29d52b(0x203));continue;}const _0x47d464=_0x21aff8[0x1],_0x72b3b8=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x11819c);if(!_0x72b3b8){this['logger']?.[_0x29d52b(0x20c)](_0x29d52b(0x21a));continue;}const _0x417dd9=_0x72b3b8[0x1],_0x40f8ac=this['applyTrimMode'](_0x47d464,_0x3426a9),_0xb85139=this['applyTrimMode'](_0x417dd9,_0x3426a9);_0x4f84c3[_0x29d52b(0x1f5)]({'oldContent':_0x40f8ac,'newContent':_0xb85139,'mode':_0x3426a9,'linesLimit':_0x17791c});}_0x4f84c3['length']>0x0&&_0x223413['push']({'path':_0x1c4cb4,'replacements':_0x4f84c3});}return{'files':_0x223413};}[a0_0x639b04(0x1e5)](_0x2dbeaa,_0x248480){const _0x49843b=a0_0x639b04,_0x4aa435=new RegExp(_0x248480+_0x49843b(0x1b4),'i'),_0x229aad=_0x4aa435['exec'](_0x2dbeaa);return _0x229aad?_0x229aad[0x1]:null;}[a0_0x639b04(0x21f)](_0x5b82d5,_0x42e0b7){const _0xefc426=a0_0x639b04;switch(_0x42e0b7){case _0xefc426(0x21b):return _0x5b82d5['replace'](/^\n+|\n+$/g,'');case _0xefc426(0x210):return _0x5b82d5;case _0xefc426(0x1c2):default:return _0x5b82d5[_0xefc426(0x1c2)]();}}[a0_0x639b04(0x1d5)](){return['files'];}['customValidateParameters'](_0x53c633){const _0x25419a=a0_0x639b04,_0x4367cf=[];if(!_0x53c633['files']||!Array[_0x25419a(0x206)](_0x53c633['files']))_0x4367cf[_0x25419a(0x1f5)]('files\x20must\x20be\x20an\x20array');else{_0x53c633[_0x25419a(0x214)]['length']===0x0&&_0x4367cf[_0x25419a(0x1f5)](_0x25419a(0x1b9));_0x53c633[_0x25419a(0x214)][_0x25419a(0x218)]>this[_0x25419a(0x21e)][_0x25419a(0x1c5)]&&_0x4367cf[_0x25419a(0x1f5)]('Cannot\x20process\x20more\x20than\x20'+this['replaceConfig']['MAX_FILES_PER_OPERATION']+'\x20files\x20in\x20one\x20operation');for(const _0x11541a of _0x53c633[_0x25419a(0x214)]){!_0x11541a[_0x25419a(0x1ff)]&&_0x4367cf['push'](_0x25419a(0x1ec));_0x11541a[_0x25419a(0x1ff)]&&_0x11541a[_0x25419a(0x1ff)][_0x25419a(0x21d)]('..')&&_0x4367cf['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x11541a['path']);if(!_0x11541a[_0x25419a(0x1fe)]||!Array[_0x25419a(0x206)](_0x11541a['replacements']))_0x4367cf['push']('File\x20'+_0x11541a[_0x25419a(0x1ff)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x11541a[_0x25419a(0x1fe)]['length']===0x0)_0x4367cf['push']('File\x20'+_0x11541a[_0x25419a(0x1ff)]+_0x25419a(0x1e9));else for(const _0xd327e9 of _0x11541a[_0x25419a(0x1fe)]){!_0xd327e9[_0x25419a(0x1c4)]&&_0xd327e9['oldContent']!==''&&_0x4367cf['push']('Replacement\x20in\x20'+_0x11541a[_0x25419a(0x1ff)]+_0x25419a(0x1de)),!_0xd327e9['newContent']&&_0xd327e9[_0x25419a(0x1fc)]!==''&&_0x4367cf['push'](_0x25419a(0x20b)+_0x11541a[_0x25419a(0x1ff)]+'\x20missing\x20newContent'),_0xd327e9['oldContent']&&_0xd327e9['oldContent'][_0x25419a(0x218)]>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0x4367cf[_0x25419a(0x1f5)](_0x25419a(0x1b3)+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0xd327e9[_0x25419a(0x1fc)]&&_0xd327e9['newContent']['length']>this[_0x25419a(0x21e)][_0x25419a(0x1be)]&&_0x4367cf[_0x25419a(0x1f5)](_0x25419a(0x1df)+this[_0x25419a(0x21e)]['MAX_NEW_CONTENT_SIZE']/0x400+_0x25419a(0x1b8)),_0xd327e9[_0x25419a(0x1d4)]&&!['trim',_0x25419a(0x21b),_0x25419a(0x210)]['includes'](_0xd327e9['mode'])&&_0x4367cf[_0x25419a(0x1f5)](_0x25419a(0x1c7)+_0xd327e9[_0x25419a(0x1d4)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x4367cf['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x4367cf['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x430a88){const _0x301196=a0_0x639b04;if(!_0x430a88[_0x301196(0x214)]||!Array['isArray'](_0x430a88['files'])||_0x430a88['files']['length']===0x0)return![];const _0x1450fd=_0x430a88['files'][0x0];if(!_0x1450fd['replacements']||!Array[_0x301196(0x206)](_0x1450fd[_0x301196(0x1fe)])||_0x1450fd['replacements'][_0x301196(0x218)]===0x0)return![];return _0x1450fd[_0x301196(0x1fe)][0x0][_0x301196(0x1ce)](_0x301196(0x1d4));}async['execute'](_0x360dac,_0x33dde6){const _0x3a4ed7=a0_0x639b04;typeof _0x360dac==='string'&&(this[_0x3a4ed7(0x1d9)]?.['info'](_0x3a4ed7(0x1cc)),_0x360dac=this['parseParameters'](_0x360dac));_0x360dac&&typeof _0x360dac===_0x3a4ed7(0x1b5)&&_0x360dac[_0x3a4ed7(0x214)]&&!this['_isNormalizedParams'](_0x360dac)&&(this['logger']?.[_0x3a4ed7(0x1ed)]('FileContentReplaceTool:\x20Normalizing\x20object\x20parameters'),_0x360dac=this[_0x3a4ed7(0x1e3)](JSON['stringify'](_0x360dac)));const {files:_0x64d898}=_0x360dac,{projectDir:_0x561418,agentId:_0x23f0cc,directoryAccess:_0x1f8a70}=_0x33dde6;let _0x5d110a=_0x561418||process[_0x3a4ed7(0x202)]();_0x1f8a70&&_0x1f8a70['workingDirectory']&&(_0x5d110a=_0x1f8a70['workingDirectory'],this['logger']?.['info'](_0x3a4ed7(0x1ba),{'workingDirectory':_0x1f8a70['workingDirectory'],'agentId':_0x23f0cc}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x64d898['length'],'workingDirectory':_0x5d110a,'agentId':_0x23f0cc});const _0x5ac8e4=[],_0x1bcf49={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x2e88d6 of _0x64d898){try{const _0x3801d5=await this[_0x3a4ed7(0x1d1)](_0x2e88d6,_0x5d110a,_0x1f8a70);_0x5ac8e4[_0x3a4ed7(0x1f5)](_0x3801d5),_0x1bcf49['filesProcessed']++,_0x3801d5['replacementsMade']>0x0&&(_0x1bcf49[_0x3a4ed7(0x1f8)]++,_0x1bcf49['totalReplacements']+=_0x3801d5[_0x3a4ed7(0x1d8)]),_0x3801d5['backupCreated']&&_0x1bcf49[_0x3a4ed7(0x1f4)]++;}catch(_0x48b393){this[_0x3a4ed7(0x1d9)]?.[_0x3a4ed7(0x1dd)](_0x3a4ed7(0x1cb)+_0x2e88d6['path'],{'error':_0x48b393['message']}),_0x5ac8e4['push']({'filePath':_0x2e88d6['path'],'success':![],'error':_0x48b393[_0x3a4ed7(0x219)]}),_0x1bcf49['errors']++;}}return{'success':_0x1bcf49[_0x3a4ed7(0x1b0)]===0x0,'results':_0x5ac8e4,'statistics':_0x1bcf49,'summary':this['generateSummary'](_0x1bcf49),'toolUsed':_0x3a4ed7(0x1e0)};}async[a0_0x639b04(0x1d1)](_0x5c8bff,_0x17ad83,_0x3fbb2c){const _0x46ebe5=a0_0x639b04,{path:_0x2308a6,replacements:_0x3cd0a9}=_0x5c8bff,_0x173256=a0_0x436eaa['isAbsolute'](_0x2308a6)?_0x2308a6:a0_0x436eaa[_0x46ebe5(0x20e)](_0x17ad83,_0x2308a6);if(_0x3fbb2c){const _0xc078bd=this['isPathAccessible'](_0x173256,_0x17ad83,_0x3fbb2c);if(!_0xc078bd)throw new Error('Path\x20not\x20accessible:\x20'+_0x2308a6);}try{await a0_0x2c65fb[_0x46ebe5(0x1cf)](_0x173256);}catch(_0x5ceeec){throw new Error(_0x46ebe5(0x1dc)+_0x2308a6);}const _0x1545ae=await a0_0x2c65fb['stat'](_0x173256);if(_0x1545ae[_0x46ebe5(0x1e1)]>this[_0x46ebe5(0x21e)]['MAX_FILE_SIZE'])throw new Error(_0x46ebe5(0x1d7)+this[_0x46ebe5(0x21e)]['MAX_FILE_SIZE']/(0x400*0x400)+_0x46ebe5(0x1c9)+_0x2308a6);let _0x2abfe8=await a0_0x2c65fb[_0x46ebe5(0x216)](_0x173256,'utf-8');const _0xb193b8=_0x2abfe8;let _0x2cb170=![];if(this[_0x46ebe5(0x21e)][_0x46ebe5(0x1bc)]){const _0x3a9c81=_0x173256+this['replaceConfig']['BACKUP_EXTENSION'];try{await a0_0x2c65fb['writeFile'](_0x3a9c81,_0xb193b8,_0x46ebe5(0x1f6)),_0x2cb170=!![];}catch(_0xa2ebcf){this['logger']?.[_0x46ebe5(0x20c)](_0x46ebe5(0x1e7)+_0xa2ebcf[_0x46ebe5(0x219)]);}}let _0x57d23a=0x0;const _0x186669=[];for(const _0x498f41 of _0x3cd0a9){const _0x3ca381=await this['applyReplacement'](_0x2abfe8,_0x498f41['oldContent'],_0x498f41[_0x46ebe5(0x1fc)],_0x498f41[_0x46ebe5(0x217)],_0x498f41['mode']);_0x2abfe8=_0x3ca381[_0x46ebe5(0x1fc)],_0x57d23a+=_0x3ca381[_0x46ebe5(0x1bb)],_0x186669['push']({'oldContent':_0x498f41['oldContent'][_0x46ebe5(0x1bd)](0x0,0x32)+(_0x498f41[_0x46ebe5(0x1c4)][_0x46ebe5(0x218)]>0x32?_0x46ebe5(0x1d2):''),'newContent':_0x498f41['newContent']['substring'](0x0,0x32)+(_0x498f41[_0x46ebe5(0x1fc)]['length']>0x32?_0x46ebe5(0x1d2):''),'count':_0x3ca381['count'],'mode':_0x498f41[_0x46ebe5(0x1d4)],'linesLimit':_0x498f41[_0x46ebe5(0x217)]});}_0x57d23a>0x0&&await a0_0x2c65fb[_0x46ebe5(0x20a)](_0x173256,_0x2abfe8,'utf-8');const _0x2972b5=_0x57d23a>0x0?this[_0x46ebe5(0x1db)](_0xb193b8,_0x2abfe8):null;return{'filePath':_0x2308a6,'resolvedPath':_0x173256,'success':!![],'replacementsMade':_0x57d23a,'backupCreated':_0x2cb170,'replacementDetails':_0x186669,'diff':_0x2972b5,'message':_0x57d23a>0x0?'Made\x20'+_0x57d23a+_0x46ebe5(0x1f3)+_0x2308a6:_0x46ebe5(0x1d3)+_0x2308a6+_0x46ebe5(0x201)};}['isPathAccessible'](_0x4d424b,_0x3e4385,_0xc714e3){const _0xbe04f0=a0_0x639b04,_0x399a9c=a0_0x436eaa['relative'](_0x3e4385,_0x4d424b);if(!_0x399a9c[_0xbe04f0(0x1f9)]('..')&&!a0_0x436eaa['isAbsolute'](_0x399a9c))return!![];if(_0xc714e3['writeEnabledDirectories'])for(const _0x164e85 of _0xc714e3['writeEnabledDirectories']){const _0x3e2146=a0_0x436eaa[_0xbe04f0(0x1f7)](_0x164e85,_0x4d424b);if(!_0x3e2146['startsWith']('..')&&!a0_0x436eaa[_0xbe04f0(0x1b7)](_0x3e2146))return!![];}return![];}async['applyReplacement'](_0x5d75c3,_0xacdf4f,_0x53bbe0,_0x4a9ffb,_0x18cec8){const _0x522e73=a0_0x639b04;if(!_0x4a9ffb){const _0x144155=this['countOccurrences'](_0x5d75c3,_0xacdf4f);if(_0x144155===0x0)return{'newContent':_0x5d75c3,'count':0x0};const _0x440730=_0x5d75c3[_0x522e73(0x1fa)](_0xacdf4f)[_0x522e73(0x1cd)](_0x53bbe0);return{'newContent':_0x440730,'count':_0x144155};}const _0x5332cb=this[_0x522e73(0x1e2)](_0x4a9ffb),_0x40be58=_0x5d75c3['split']('\x0a');let _0x9e49ff=0x0;for(let _0x164561=0x0;_0x164561<_0x40be58[_0x522e73(0x218)];_0x164561++){const _0x2fdcb2=_0x164561+0x1;if(_0x5332cb['has'](_0x2fdcb2)){if(_0x40be58[_0x164561]['includes'](_0xacdf4f)){const _0x54840c=this['countOccurrences'](_0x40be58[_0x164561],_0xacdf4f);_0x40be58[_0x164561]=_0x40be58[_0x164561]['split'](_0xacdf4f)[_0x522e73(0x1cd)](_0x53bbe0),_0x9e49ff+=_0x54840c;}}}return{'newContent':_0x40be58['join']('\x0a'),'count':_0x9e49ff};}['countOccurrences'](_0x264bac,_0x8ca93){const _0x1d1b70=a0_0x639b04;if(!_0x8ca93)return 0x0;return _0x264bac['split'](_0x8ca93)[_0x1d1b70(0x218)]-0x1;}[a0_0x639b04(0x1e2)](_0x18f3ed){const _0x4fcf02=a0_0x639b04,_0x4c90e7=new Set();if(!_0x18f3ed||_0x18f3ed[_0x4fcf02(0x1c2)]()==='')return _0x4c90e7;const _0x4fa2e1=_0x18f3ed['split'](',');for(const _0x1d5ab2 of _0x4fa2e1){const _0xf1027=_0x1d5ab2['trim']();if(_0xf1027==='')continue;if(_0xf1027[_0x4fcf02(0x21d)]('-')){const [_0x49f2a1,_0x1158c4]=_0xf1027['split']('-')[_0x4fcf02(0x211)](_0x529dd5=>parseInt(_0x529dd5['trim'](),0xa));if(!isNaN(_0x49f2a1)&&!isNaN(_0x1158c4)&&_0x1158c4-_0x49f2a1<this[_0x4fcf02(0x21e)]['MAX_LINE_RANGE_SIZE'])for(let _0x344d95=_0x49f2a1;_0x344d95<=_0x1158c4;_0x344d95++){_0x4c90e7[_0x4fcf02(0x1eb)](_0x344d95);}}else{const _0x570537=parseInt(_0xf1027,0xa);!isNaN(_0x570537)&&_0x4c90e7[_0x4fcf02(0x1eb)](_0x570537);}}return _0x4c90e7;}['generateDiff'](_0x28fefa,_0x3a0f02){const _0x23c28c=a0_0x639b04,_0x548be7=_0x28fefa['split']('\x0a'),_0x4572f6=_0x3a0f02[_0x23c28c(0x1fa)]('\x0a');let _0x21fd9f=-0x1,_0x13d4b1=-0x1;const _0x941cb6=Math[_0x23c28c(0x1fd)](_0x548be7[_0x23c28c(0x218)],_0x4572f6[_0x23c28c(0x218)]);for(let _0x48611e=0x0;_0x48611e<_0x941cb6;_0x48611e++){const _0x47b438=_0x48611e<_0x548be7['length']?_0x548be7[_0x48611e]:'',_0x5535d0=_0x48611e<_0x4572f6[_0x23c28c(0x218)]?_0x4572f6[_0x48611e]:'';if(_0x47b438!==_0x5535d0){if(_0x21fd9f===-0x1)_0x21fd9f=_0x48611e;_0x13d4b1=_0x48611e;}}if(_0x21fd9f===-0x1)return'No\x20differences';const _0x43d5ad=this['replaceConfig'][_0x23c28c(0x1b2)],_0x5fcb55=Math[_0x23c28c(0x1fd)](0x0,_0x21fd9f-_0x43d5ad),_0x203927=Math[_0x23c28c(0x1e4)](_0x941cb6-0x1,_0x13d4b1+_0x43d5ad);if(_0x203927-_0x5fcb55>this['replaceConfig'][_0x23c28c(0x1d0)])return _0x23c28c(0x213)+(_0x203927-_0x5fcb55+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x23c28c(0x1ef)+(_0x21fd9f+0x1)+'\x20to\x20'+(_0x13d4b1+0x1));let _0x1b4334=_0x23c28c(0x1b6)+(_0x5fcb55+0x1)+','+(_0x203927-_0x5fcb55+0x1)+'\x20+'+(_0x5fcb55+0x1)+','+(_0x203927-_0x5fcb55+0x1)+_0x23c28c(0x1da);for(let _0x1c68e0=_0x5fcb55;_0x1c68e0<=_0x203927;_0x1c68e0++){const _0x4e95f9=_0x1c68e0<_0x548be7['length']?_0x548be7[_0x1c68e0]:'',_0x463b51=_0x1c68e0<_0x4572f6['length']?_0x4572f6[_0x1c68e0]:'';_0x4e95f9===_0x463b51?_0x1b4334+='\x20\x20'+_0x4e95f9+'\x0a':(_0x1b4334+='-\x20'+_0x4e95f9+'\x0a',_0x1b4334+='+\x20'+_0x463b51+'\x0a');}return _0x1b4334;}[a0_0x639b04(0x1e6)](_0x3562f1){const _0x17c4d3=a0_0x639b04;return('\x0aProcessed\x20'+_0x3562f1['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x3562f1['filesModified']+_0x17c4d3(0x1d6)+_0x3562f1[_0x17c4d3(0x1ee)]+_0x17c4d3(0x1ea)+_0x3562f1['backupsCreated']+'\x0aErrors:\x20'+_0x3562f1[_0x17c4d3(0x1b0)]+_0x17c4d3(0x1ca))[_0x17c4d3(0x1c2)]();}async[a0_0x639b04(0x1bf)](_0x5e396e){const _0x1f8bdb=a0_0x639b04;this['logger']?.['info'](_0x1f8bdb(0x1e8),{'operationId':_0x5e396e});}}export default FileContentReplaceTool;
|
|
1
|
+
function a0_0x19f8(_0x308cf,_0x5bcc82){_0x308cf=_0x308cf-0xdf;const _0x167c9b=a0_0x167c();let _0x19f8e=_0x167c9b[_0x308cf];if(a0_0x19f8['WgKqBd']===undefined){var _0x23e853=function(_0x297024){const _0x44e40b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32580e='',_0x1d9bee='';for(let _0x22d360=0x0,_0xaa967,_0x1bc99a,_0x6ab54b=0x0;_0x1bc99a=_0x297024['charAt'](_0x6ab54b++);~_0x1bc99a&&(_0xaa967=_0x22d360%0x4?_0xaa967*0x40+_0x1bc99a:_0x1bc99a,_0x22d360++%0x4)?_0x32580e+=String['fromCharCode'](0xff&_0xaa967>>(-0x2*_0x22d360&0x6)):0x0){_0x1bc99a=_0x44e40b['indexOf'](_0x1bc99a);}for(let _0xc90772=0x0,_0x23ed20=_0x32580e['length'];_0xc90772<_0x23ed20;_0xc90772++){_0x1d9bee+='%'+('00'+_0x32580e['charCodeAt'](_0xc90772)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d9bee);};a0_0x19f8['mgpvtI']=_0x23e853,a0_0x19f8['PGhwKo']={},a0_0x19f8['WgKqBd']=!![];}const _0x197251=_0x167c9b[0x0],_0x1656ba=_0x308cf+_0x197251,_0x4310ee=a0_0x19f8['PGhwKo'][_0x1656ba];return!_0x4310ee?(_0x19f8e=a0_0x19f8['mgpvtI'](_0x19f8e),a0_0x19f8['PGhwKo'][_0x1656ba]=_0x19f8e):_0x19f8e=_0x4310ee,_0x19f8e;}const a0_0x410cba=a0_0x19f8;(function(_0x42d397,_0x2b46c1){const _0x43aabe=a0_0x19f8,_0x5b83af=_0x42d397();while(!![]){try{const _0x19c339=-parseInt(_0x43aabe(0x11f))/0x1*(parseInt(_0x43aabe(0xf7))/0x2)+parseInt(_0x43aabe(0x124))/0x3+parseInt(_0x43aabe(0x104))/0x4*(-parseInt(_0x43aabe(0xee))/0x5)+parseInt(_0x43aabe(0xf4))/0x6+parseInt(_0x43aabe(0x10a))/0x7+-parseInt(_0x43aabe(0x11d))/0x8*(-parseInt(_0x43aabe(0x142))/0x9)+-parseInt(_0x43aabe(0x13c))/0xa;if(_0x19c339===_0x2b46c1)break;else _0x5b83af['push'](_0x5b83af['shift']());}catch(_0x21ade9){_0x5b83af['push'](_0x5b83af['shift']());}}}(a0_0x167c,0x2b10f));import{BaseTool}from'./baseTool.js';import{promises as a0_0x32580e}from'fs';import a0_0x1d9bee from'path';function a0_0x167c(){const _0x6b6ae4=['rMLSzsa','yMfJA3vWq3jLyxrLza','Dg90ywXszxbSywnLBwvUDhm','CgfYC2vku09o','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','D29YA2LUz0rPCMvJDg9YEq','CMvWBgfJzw1LBNrZtwfKzq','AgfZt3DUuhjVCgvYDhK','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','BgvUz3rO','BM9Uzq','B2XKq29UDgvUDa','x2LZtM9YBwfSAxPLzfbHCMfTCW','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','cKvYCM9YCZOG','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','iebacG','C2L6zq','DxrMltG','ChvZAa','nZe0nJm2mejHBvDHyq','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','z2vUzxjHDgvtDw1Tyxj5','tufyx0zjtevtx1bfuL9puevsqvrjt04','rgLMzIb0B28GBgfYz2uGka','BMv3q29UDgvUDa','owTVuhnxEa','ig1PC3nPBMCGB2XKq29UDgvUDa','zMLSzs1JB250zw50lxjLCgXHy2u','lI4U','q2HHBMDLzcbSAw5LCZOG','revgqvvmvf9uuKLnx01preu','zxHLy3v0zq','y291BNq','Bw9Kzq','CMvWBgfJzunVBMzPzW','qKfds1vqx0vyvevou0LptG','sw52ywXPzcbTB2rLoIa','AxnbyNnVBhv0zq','AxnbCNjHEq','zMLSzxnnB2rPzMLLza','C3bSAxq','D3jPDgvgAwXL','Aw5JBhvKzxm','zMLSzxnqCM9JzxnZzwq','mZv3sKDqyNe','yxbWBhLuCMLTtw9Kzq','AM9PBG','zxjYB3jZ','CgfYC2vqyxjHBwv0zxjZ','DhjPBq','mJa1nte0nfbhqNHjsq','zxH0CMfJDef0DhjPyNv0zq','cKjHy2T1ChmGy3jLyxrLzdOG','nJe1ndHhtwPuzxu','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','BgLUzxnmAw1PDa','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','BgLUzxmTBgLTAxq','AxnqyxrOqwnJzxnZAwjSzq','z2vUzxjHDgveAwzM','cIaGica','zxjYB3i','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','D2fYBG','y291BNrpy2n1CNjLBMnLCW','tufyx0zjtevFu0LArq','mtaWngPUwM5uEq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zxHLyW','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','C3rHCNrZv2L0Aa','BMv3BgLUzxm','mJi0nZq5n2X6A2vgtq','icHJB250zw50ig5VDcbMB3vUzcK','yxbWBhLszxbSywnLBwvUDa','BwvZC2fNzq','CMvZB2X2zq','Cgf0Aa','zMLSzxm','Aw5MBW','CMvXDwLYzxnqCM9Qzwn0','CMvWBgfJzw1LBNrZ','ihjLCgXHy2vTzw50khmPigLUia','C3rYAw5N','DgLTzw91Da','AgfZ','B2jQzwn0','tufyx05fv19dt05uru5ux1njwKu','rMLSzsbUB3qGzM91BMq6ia','ihrVia','BwfW','mtqXmdeWnhnkyNPAAG','Bg9Nz2vY','nvPyz2XgyW','s0iP','y3DK','CgfYC2vytuW','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','nJiWndeYuNvHBhLg','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','CMvSyxrPDMu','BwLU'];a0_0x167c=function(){return _0x6b6ae4;};return a0_0x167c();}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':a0_0x410cba(0xf3)};class FileContentReplaceTool extends BaseTool{constructor(_0x22d360={},_0xaa967=null){const _0x1d23ae=a0_0x410cba;super(_0x22d360,_0xaa967),this['id']='file-content-replace',this[_0x1d23ae(0x112)]=!![],this['isAsync']=!![],this[_0x1d23ae(0x116)]=_0x22d360[_0x1d23ae(0x116)]||0x1d4c0,this[_0x1d23ae(0xe4)]={...REPLACE_CONFIG,..._0x22d360[_0x1d23ae(0xe4)]};}['getDescription'](){const _0x70ed1b=a0_0x410cba;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[_0x70ed1b(0x103)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x70ed1b(0x107)+REPLACE_CONFIG[_0x70ed1b(0x119)]/0x400+_0x70ed1b(0x13d)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x70ed1b(0xfe);}[a0_0x410cba(0xf2)](_0x1bc99a){const _0x477076=a0_0x410cba;try{if(_0x1bc99a[_0x477076(0xf3)]()[_0x477076(0x108)]('{'))return this[_0x477076(0x12b)](_0x1bc99a);return this[_0x477076(0x122)](_0x1bc99a);}catch(_0x6ab54b){this[_0x477076(0x11e)]?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x6ab54b[_0x477076(0x10d)]});throw new Error(_0x477076(0x137)+_0x6ab54b[_0x477076(0x10d)]);}}[a0_0x410cba(0x12b)](_0xc90772){const _0x535ccd=a0_0x410cba,_0x23ed20=JSON['parse'](_0xc90772);if(!_0x23ed20[_0x535ccd(0x110)]||!Array['isArray'](_0x23ed20[_0x535ccd(0x110)]))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x23ed20['files'][_0x535ccd(0x11c)](_0x26a464=>({'path':_0x26a464[_0x535ccd(0x10f)],'replacements':(_0x26a464[_0x535ccd(0x113)]||[])['map'](_0x51a998=>({'oldContent':_0x51a998['oldContent'],'newContent':_0x51a998['newContent'],'mode':_0x51a998[_0x535ccd(0xe3)]||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x51a998[_0x535ccd(0xf9)]||null}))}))};}['parseXML'](_0x17b6d1){const _0x528d6f=a0_0x410cba,_0x462bd9=[],_0x187abe=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x44e452;while((_0x44e452=_0x187abe[_0x528d6f(0x106)](_0x17b6d1))!==null){const _0x3ae9be=_0x44e452[0x1],_0x1db4e5=_0x44e452[0x2],_0x505b4e=[],_0x5f10ef=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x2351a8;while((_0x2351a8=_0x5f10ef[_0x528d6f(0x106)](_0x1db4e5))!==null){const _0x2c5026=_0x2351a8[0x1]||'',_0x36f8fd=_0x2351a8[0x2],_0xb75c25=this['extractAttribute'](_0x2c5026,'mode')||REPLACE_CONFIG[_0x528d6f(0xe0)],_0x248121=this[_0x528d6f(0xf5)](_0x2c5026,_0x528d6f(0xfb)),_0x4a7612=/<old-content>([\s\S]*?)<\/old-content>/i[_0x528d6f(0x106)](_0x36f8fd);if(!_0x4a7612){this['logger']?.[_0x528d6f(0x101)]('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x2b9576=_0x4a7612[0x1],_0x2a6ed1=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x36f8fd);if(!_0x2a6ed1){this['logger']?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x107b40=_0x2a6ed1[0x1],_0x5779ff=this[_0x528d6f(0xef)](_0x2b9576,_0xb75c25),_0x75a4f2=this['applyTrimMode'](_0x107b40,_0xb75c25);_0x505b4e[_0x528d6f(0x13b)]({'oldContent':_0x5779ff,'newContent':_0x75a4f2,'mode':_0xb75c25,'linesLimit':_0x248121});}_0x505b4e[_0x528d6f(0x131)]>0x0&&_0x462bd9[_0x528d6f(0x13b)]({'path':_0x3ae9be,'replacements':_0x505b4e});}return{'files':_0x462bd9};}[a0_0x410cba(0xf5)](_0x1d1c1a,_0x550874){const _0xa66bcc=new RegExp(_0x550874+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x6dbd09=_0xa66bcc['exec'](_0x1d1c1a);return _0x6dbd09?_0x6dbd09[0x1]:null;}[a0_0x410cba(0xef)](_0x2b9206,_0x522334){const _0xde349c=a0_0x410cba;switch(_0x522334){case _0xde349c(0x109):return _0x2b9206['replace'](/^\n+|\n+$/g,'');case'none':return _0x2b9206;case'trim':default:return _0x2b9206['trim']();}}[a0_0x410cba(0x135)](){const _0x581351=a0_0x410cba;return[_0x581351(0x110)];}[a0_0x410cba(0x105)](_0x2842ad){const _0x582801=a0_0x410cba,_0x9d1056=[];if(!_0x2842ad[_0x582801(0x110)]||!Array['isArray'](_0x2842ad['files']))_0x9d1056[_0x582801(0x13b)]('files\x20must\x20be\x20an\x20array');else{_0x2842ad[_0x582801(0x110)]['length']===0x0&&_0x9d1056[_0x582801(0x13b)]('files\x20array\x20cannot\x20be\x20empty');_0x2842ad[_0x582801(0x110)]['length']>this['replaceConfig'][_0x582801(0x13f)]&&_0x9d1056[_0x582801(0x13b)](_0x582801(0x123)+this[_0x582801(0xe4)][_0x582801(0x13f)]+'\x20files\x20in\x20one\x20operation');for(const _0x5154ab of _0x2842ad[_0x582801(0x110)]){!_0x5154ab['path']&&_0x9d1056[_0x582801(0x13b)]('Each\x20file\x20must\x20have\x20a\x20path');_0x5154ab['path']&&_0x5154ab['path'][_0x582801(0xec)]('..')&&_0x9d1056['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x5154ab[_0x582801(0x10f)]);if(!_0x5154ab['replacements']||!Array['isArray'](_0x5154ab['replacements']))_0x9d1056[_0x582801(0x13b)]('File\x20'+_0x5154ab[_0x582801(0x10f)]+_0x582801(0x125));else{if(_0x5154ab[_0x582801(0x113)][_0x582801(0x131)]===0x0)_0x9d1056[_0x582801(0x13b)](_0x582801(0x128)+_0x5154ab['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x41471d of _0x5154ab[_0x582801(0x113)]){!_0x41471d['oldContent']&&_0x41471d['oldContent']!==''&&_0x9d1056[_0x582801(0x13b)]('Replacement\x20in\x20'+_0x5154ab['path']+_0x582801(0x143)),!_0x41471d[_0x582801(0x141)]&&_0x41471d['newContent']!==''&&_0x9d1056[_0x582801(0x13b)]('Replacement\x20in\x20'+_0x5154ab['path']+'\x20missing\x20newContent'),_0x41471d['oldContent']&&_0x41471d['oldContent'][_0x582801(0x131)]>this[_0x582801(0xe4)]['MAX_OLD_CONTENT_SIZE']&&_0x9d1056['push'](_0x582801(0x130)+this[_0x582801(0xe4)]['MAX_OLD_CONTENT_SIZE']/0x400+_0x582801(0x120)),_0x41471d[_0x582801(0x141)]&&_0x41471d['newContent']['length']>this[_0x582801(0xe4)][_0x582801(0x119)]&&_0x9d1056['push']('newContent\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_NEW_CONTENT_SIZE']/0x400+'KB)'),_0x41471d[_0x582801(0xe3)]&&!['trim',_0x582801(0x109),_0x582801(0x132)][_0x582801(0xec)](_0x41471d[_0x582801(0xe3)])&&_0x9d1056[_0x582801(0x13b)](_0x582801(0xe6)+_0x41471d['mode']+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x9d1056['length']>0x0)throw new Error(_0x582801(0xfa)+_0x9d1056['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x1a2835){const _0xe2a9b0=a0_0x410cba;if(!_0x1a2835[_0xe2a9b0(0x110)]||!Array[_0xe2a9b0(0xe8)](_0x1a2835[_0xe2a9b0(0x110)])||_0x1a2835['files'][_0xe2a9b0(0x131)]===0x0)return![];const _0x525031=_0x1a2835['files'][0x0];if(!_0x525031['replacements']||!Array['isArray'](_0x525031[_0xe2a9b0(0x113)])||_0x525031[_0xe2a9b0(0x113)][_0xe2a9b0(0x131)]===0x0)return![];return _0x525031[_0xe2a9b0(0x113)][0x0][_0xe2a9b0(0x12f)](_0xe2a9b0(0xe3));}async[a0_0x410cba(0xe1)](_0x1ecf30,_0x2e1ea4){const _0x3e9b5f=a0_0x410cba;typeof _0x1ecf30===_0x3e9b5f(0x115)&&(this[_0x3e9b5f(0x11e)]?.[_0x3e9b5f(0x111)]('FileContentReplaceTool:\x20Parsing\x20string\x20parameters'),_0x1ecf30=this[_0x3e9b5f(0xf2)](_0x1ecf30));_0x1ecf30&&typeof _0x1ecf30===_0x3e9b5f(0x118)&&_0x1ecf30['files']&&!this[_0x3e9b5f(0x134)](_0x1ecf30)&&(this['logger']?.['info'](_0x3e9b5f(0xf8)),_0x1ecf30=this[_0x3e9b5f(0x12b)](JSON['stringify'](_0x1ecf30)));const {files:_0x25b041}=_0x1ecf30,{projectDir:_0x3d434f,agentId:_0x3f6963,directoryAccess:_0x221811}=_0x2e1ea4;let _0x14a0b5=_0x3d434f||process[_0x3e9b5f(0x121)]();_0x221811&&_0x221811['workingDirectory']&&(_0x14a0b5=_0x221811[_0x3e9b5f(0x12d)],this[_0x3e9b5f(0x11e)]?.['info'](_0x3e9b5f(0x12c),{'workingDirectory':_0x221811[_0x3e9b5f(0x12d)],'agentId':_0x3f6963}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x25b041['length'],'workingDirectory':_0x14a0b5,'agentId':_0x3f6963});const _0x3412c0=[],_0x4709de={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x4e0a2d of _0x25b041){try{const _0xca7efa=await this['processFile'](_0x4e0a2d,_0x14a0b5,_0x221811);_0x3412c0[_0x3e9b5f(0x13b)](_0xca7efa),_0x4709de[_0x3e9b5f(0xed)]++,_0xca7efa[_0x3e9b5f(0x12e)]>0x0&&(_0x4709de['filesModified']++,_0x4709de['totalReplacements']+=_0xca7efa[_0x3e9b5f(0x12e)]),_0xca7efa[_0x3e9b5f(0x129)]&&_0x4709de['backupsCreated']++;}catch(_0x1a80be){this['logger']?.[_0x3e9b5f(0xff)]('Error\x20processing\x20file\x20'+_0x4e0a2d['path'],{'error':_0x1a80be[_0x3e9b5f(0x10d)]}),_0x3412c0['push']({'filePath':_0x4e0a2d['path'],'success':![],'error':_0x1a80be[_0x3e9b5f(0x10d)]}),_0x4709de['errors']++;}}return{'success':_0x4709de['errors']===0x0,'results':_0x3412c0,'statistics':_0x4709de,'summary':this['generateSummary'](_0x4709de),'toolUsed':_0x3e9b5f(0x144)};}async['processFile'](_0x3ea2a6,_0x23225d,_0x16bf01){const _0x265a7f=a0_0x410cba,{path:_0x58f6d9,replacements:_0x24789d}=_0x3ea2a6,_0x2c70f4=a0_0x1d9bee[_0x265a7f(0xe7)](_0x58f6d9)?_0x58f6d9:a0_0x1d9bee[_0x265a7f(0x10e)](_0x23225d,_0x58f6d9);if(_0x16bf01){const _0x3af013=this[_0x265a7f(0xfc)](_0x2c70f4,_0x23225d,_0x16bf01);if(!_0x3af013)throw new Error('Path\x20not\x20accessible:\x20'+_0x58f6d9);}try{await a0_0x32580e['access'](_0x2c70f4);}catch(_0x1bd456){throw new Error(_0x265a7f(0x11a)+_0x58f6d9);}const _0x20e5ca=await a0_0x32580e['stat'](_0x2c70f4);if(_0x20e5ca[_0x265a7f(0x139)]>this[_0x265a7f(0xe4)]['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x265a7f(0xe4)][_0x265a7f(0x103)]/(0x400*0x400)+'MB):\x20'+_0x58f6d9);let _0x277978=await a0_0x32580e['readFile'](_0x2c70f4,'utf-8');const _0x172c78=_0x277978;let _0x2d2c6a=![];if(this[_0x265a7f(0xe4)]['CREATE_BACKUPS']){const _0x31b0f1=_0x2c70f4+this[_0x265a7f(0xe4)][_0x265a7f(0xe5)];try{await a0_0x32580e[_0x265a7f(0xeb)](_0x31b0f1,_0x172c78,'utf-8'),_0x2d2c6a=!![];}catch(_0x3a8e7e){this['logger']?.[_0x265a7f(0x101)]('Failed\x20to\x20create\x20backup:\x20'+_0x3a8e7e[_0x265a7f(0x10d)]);}}let _0x57db27=0x0;const _0x3c9904=[];for(const _0x3b8049 of _0x24789d){const _0x2c7383=await this[_0x265a7f(0x10c)](_0x277978,_0x3b8049[_0x265a7f(0x133)],_0x3b8049[_0x265a7f(0x141)],_0x3b8049['linesLimit'],_0x3b8049[_0x265a7f(0xe3)]);_0x277978=_0x2c7383['newContent'],_0x57db27+=_0x2c7383[_0x265a7f(0xe2)],_0x3c9904['push']({'oldContent':_0x3b8049[_0x265a7f(0x133)]['substring'](0x0,0x32)+(_0x3b8049[_0x265a7f(0x133)]['length']>0x32?_0x265a7f(0x145):''),'newContent':_0x3b8049[_0x265a7f(0x141)]['substring'](0x0,0x32)+(_0x3b8049['newContent']['length']>0x32?'...':''),'count':_0x2c7383['count'],'mode':_0x3b8049[_0x265a7f(0xe3)],'linesLimit':_0x3b8049['linesLimit']});}_0x57db27>0x0&&await a0_0x32580e['writeFile'](_0x2c70f4,_0x277978,_0x265a7f(0x13a));const _0x383fbd=_0x57db27>0x0?this['generateDiff'](_0x172c78,_0x277978):null;return{'filePath':_0x58f6d9,'resolvedPath':_0x2c70f4,'success':!![],'replacementsMade':_0x57db27,'backupCreated':_0x2d2c6a,'replacementDetails':_0x3c9904,'diff':_0x383fbd,'message':_0x57db27>0x0?'Made\x20'+_0x57db27+_0x265a7f(0x114)+_0x58f6d9:'No\x20replacements\x20made\x20in\x20'+_0x58f6d9+_0x265a7f(0x10b)};}[a0_0x410cba(0xfc)](_0x2a3f5c,_0x26a14f,_0x1f5d5){const _0x57f737=a0_0x410cba,_0x4a178a=a0_0x1d9bee['relative'](_0x26a14f,_0x2a3f5c);if(!_0x4a178a[_0x57f737(0x108)]('..')&&!a0_0x1d9bee['isAbsolute'](_0x4a178a))return!![];if(_0x1f5d5['writeEnabledDirectories'])for(const _0x5ecbd7 of _0x1f5d5['writeEnabledDirectories']){const _0xc5b1a5=a0_0x1d9bee[_0x57f737(0x126)](_0x5ecbd7,_0x2a3f5c);if(!_0xc5b1a5['startsWith']('..')&&!a0_0x1d9bee[_0x57f737(0xe7)](_0xc5b1a5))return!![];}return![];}async['applyReplacement'](_0x490cbc,_0x37c44a,_0x3062f3,_0x9e973b,_0x285473){const _0xd125d0=a0_0x410cba;if(!_0x9e973b){const _0x525de3=this[_0xd125d0(0x102)](_0x490cbc,_0x37c44a);if(_0x525de3===0x0)return{'newContent':_0x490cbc,'count':0x0};const _0x16ea36=_0x490cbc[_0xd125d0(0xea)](_0x37c44a)[_0xd125d0(0xf0)](_0x3062f3);return{'newContent':_0x16ea36,'count':_0x525de3};}const _0x285f38=this['parseLineRanges'](_0x9e973b),_0x311869=_0x490cbc['split']('\x0a');let _0x246722=0x0;for(let _0xf8a368=0x0;_0xf8a368<_0x311869[_0xd125d0(0x131)];_0xf8a368++){const _0x17f8ab=_0xf8a368+0x1;if(_0x285f38[_0xd125d0(0x117)](_0x17f8ab)){if(_0x311869[_0xf8a368][_0xd125d0(0xec)](_0x37c44a)){const _0x1b323a=this['countOccurrences'](_0x311869[_0xf8a368],_0x37c44a);_0x311869[_0xf8a368]=_0x311869[_0xf8a368]['split'](_0x37c44a)[_0xd125d0(0xf0)](_0x3062f3),_0x246722+=_0x1b323a;}}}return{'newContent':_0x311869[_0xd125d0(0xf0)]('\x0a'),'count':_0x246722};}['countOccurrences'](_0x5595cb,_0x4f1a24){if(!_0x4f1a24)return 0x0;return _0x5595cb['split'](_0x4f1a24)['length']-0x1;}['parseLineRanges'](_0x49aa33){const _0x2cfed6=a0_0x410cba,_0x43629b=new Set();if(!_0x49aa33||_0x49aa33[_0x2cfed6(0xf3)]()==='')return _0x43629b;const _0x222ac0=_0x49aa33['split'](',');for(const _0x2d163e of _0x222ac0){const _0x2b4cc9=_0x2d163e['trim']();if(_0x2b4cc9==='')continue;if(_0x2b4cc9['includes']('-')){const [_0x21e89b,_0x2d753c]=_0x2b4cc9['split']('-')[_0x2cfed6(0x11c)](_0x52fbf4=>parseInt(_0x52fbf4[_0x2cfed6(0xf3)](),0xa));if(!isNaN(_0x21e89b)&&!isNaN(_0x2d753c)&&_0x2d753c-_0x21e89b<this[_0x2cfed6(0xe4)]['MAX_LINE_RANGE_SIZE'])for(let _0x2b660c=_0x21e89b;_0x2b660c<=_0x2d753c;_0x2b660c++){_0x43629b['add'](_0x2b660c);}}else{const _0x4e016a=parseInt(_0x2b4cc9,0xa);!isNaN(_0x4e016a)&&_0x43629b['add'](_0x4e016a);}}return _0x43629b;}[a0_0x410cba(0xfd)](_0x39991c,_0x3dacd4){const _0xbe8320=a0_0x410cba,_0x4842ce=_0x39991c[_0xbe8320(0xea)]('\x0a'),_0x5eb37c=_0x3dacd4[_0xbe8320(0xea)]('\x0a');let _0x2b2cea=-0x1,_0x308003=-0x1;const _0x1ffdae=Math['max'](_0x4842ce[_0xbe8320(0x131)],_0x5eb37c[_0xbe8320(0x131)]);for(let _0x44a051=0x0;_0x44a051<_0x1ffdae;_0x44a051++){const _0x3ae51e=_0x44a051<_0x4842ce['length']?_0x4842ce[_0x44a051]:'',_0xda52ac=_0x44a051<_0x5eb37c['length']?_0x5eb37c[_0x44a051]:'';if(_0x3ae51e!==_0xda52ac){if(_0x2b2cea===-0x1)_0x2b2cea=_0x44a051;_0x308003=_0x44a051;}}if(_0x2b2cea===-0x1)return'No\x20differences';const _0x2edd70=this[_0xbe8320(0xe4)]['DIFF_CONTEXT_LINES'],_0x344970=Math['max'](0x0,_0x2b2cea-_0x2edd70),_0x31996a=Math[_0xbe8320(0x127)](_0x1ffdae-0x1,_0x308003+_0x2edd70);if(_0x31996a-_0x344970>this[_0xbe8320(0xe4)]['MAX_DIFF_LINES'])return _0xbe8320(0x140)+(_0x31996a-_0x344970+0x1)+_0xbe8320(0x100)+(_0xbe8320(0xdf)+(_0x2b2cea+0x1)+_0xbe8320(0x11b)+(_0x308003+0x1));let _0x131047='@@\x20-'+(_0x344970+0x1)+','+(_0x31996a-_0x344970+0x1)+'\x20+'+(_0x344970+0x1)+','+(_0x31996a-_0x344970+0x1)+_0xbe8320(0x138);for(let _0x5ad7ad=_0x344970;_0x5ad7ad<=_0x31996a;_0x5ad7ad++){const _0x280fb1=_0x5ad7ad<_0x4842ce[_0xbe8320(0x131)]?_0x4842ce[_0x5ad7ad]:'',_0x5c532d=_0x5ad7ad<_0x5eb37c['length']?_0x5eb37c[_0x5ad7ad]:'';_0x280fb1===_0x5c532d?_0x131047+='\x20\x20'+_0x280fb1+'\x0a':(_0x131047+='-\x20'+_0x280fb1+'\x0a',_0x131047+='+\x20'+_0x5c532d+'\x0a');}return _0x131047;}[a0_0x410cba(0x13e)](_0x5377aa){const _0x362acc=a0_0x410cba;return('\x0aProcessed\x20'+_0x5377aa['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x5377aa[_0x362acc(0xe9)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x5377aa[_0x362acc(0x12a)]+_0x362acc(0xf6)+_0x5377aa['backupsCreated']+_0x362acc(0x136)+_0x5377aa[_0x362acc(0xf1)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0x1f2cb1){const _0x3365ab=a0_0x410cba;this[_0x3365ab(0x11e)]?.[_0x3365ab(0x111)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x1f2cb1});}}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x39ce(_0x284f3f,_0x164a22){_0x284f3f=_0x284f3f-0xfc;const _0x4b5e44=a0_0x4b5e();let _0x39cec8=_0x4b5e44[_0x284f3f];if(a0_0x39ce['pMmJVX']===undefined){var _0x1262e3=function(_0x1fa436){const _0x788413='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f0866='',_0x2ba149='';for(let _0x131e2b=0x0,_0x5b88e1,_0x260c76,_0x2b6940=0x0;_0x260c76=_0x1fa436['charAt'](_0x2b6940++);~_0x260c76&&(_0x5b88e1=_0x131e2b%0x4?_0x5b88e1*0x40+_0x260c76:_0x260c76,_0x131e2b++%0x4)?_0x1f0866+=String['fromCharCode'](0xff&_0x5b88e1>>(-0x2*_0x131e2b&0x6)):0x0){_0x260c76=_0x788413['indexOf'](_0x260c76);}for(let _0x3357a2=0x0,_0x5eb69a=_0x1f0866['length'];_0x3357a2<_0x5eb69a;_0x3357a2++){_0x2ba149+='%'+('00'+_0x1f0866['charCodeAt'](_0x3357a2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ba149);};a0_0x39ce['BstlmL']=_0x1262e3,a0_0x39ce['TmWDLI']={},a0_0x39ce['pMmJVX']=!![];}const _0x45baaf=_0x4b5e44[0x0],_0x598fcd=_0x284f3f+_0x45baaf,_0x3fc657=a0_0x39ce['TmWDLI'][_0x598fcd];return!_0x3fc657?(_0x39cec8=a0_0x39ce['BstlmL'](_0x39cec8),a0_0x39ce['TmWDLI'][_0x598fcd]=_0x39cec8):_0x39cec8=_0x3fc657,_0x39cec8;}const a0_0x314236=a0_0x39ce;(function(_0x39f3a2,_0x884bbe){const _0x1b4021=a0_0x39ce,_0x20d669=_0x39f3a2();while(!![]){try{const _0x4b22ea=parseInt(_0x1b4021(0x135))/0x1*(-parseInt(_0x1b4021(0x11a))/0x2)+parseInt(_0x1b4021(0x12a))/0x3*(parseInt(_0x1b4021(0x14f))/0x4)+parseInt(_0x1b4021(0x159))/0x5+-parseInt(_0x1b4021(0x152))/0x6+-parseInt(_0x1b4021(0x189))/0x7*(-parseInt(_0x1b4021(0x145))/0x8)+-parseInt(_0x1b4021(0x16b))/0x9+parseInt(_0x1b4021(0x173))/0xa;if(_0x4b22ea===_0x884bbe)break;else _0x20d669['push'](_0x20d669['shift']());}catch(_0x38bc66){_0x20d669['push'](_0x20d669['shift']());}}}(a0_0x4b5e,0x82d14));import{BaseTool}from'./baseTool.js';import a0_0x1f0866 from'../utilities/tagParser.js';import a0_0x2ba149 from'../utilities/directoryAccessManager.js';import a0_0x131e2b from'fs/promises';import a0_0x5b88e1 from'path';import a0_0x260c76 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x2b6940={},_0x3357a2=null){const _0x346b6a=a0_0x39ce;super(_0x2b6940,_0x3357a2),this[_0x346b6a(0x129)]=!![],this['isAsync']=![],this['timeout']=_0x2b6940[_0x346b6a(0x116)]||0x7530,this['maxConcurrentOperations']=_0x2b6940[_0x346b6a(0x175)]||0x5,this['maxFileSize']=_0x2b6940[_0x346b6a(0x144)]||SYSTEM_DEFAULTS[_0x346b6a(0x192)],this['allowedExtensions']=_0x2b6940['allowedExtensions']||null,this[_0x346b6a(0x15b)]=_0x2b6940[_0x346b6a(0x15b)]||['.exe','.bat',_0x346b6a(0x13f),_0x346b6a(0x11d),'.com'],this[_0x346b6a(0x13a)]=_0x2b6940['allowedDirectories']||null,this[_0x346b6a(0x14b)]=[],this[_0x346b6a(0x15a)]=new a0_0x2ba149(_0x2b6940,_0x3357a2);}['getDescription'](){const _0x4a5699=a0_0x39ce;return _0x4a5699(0x100)+Math[_0x4a5699(0x10a)](this[_0x4a5699(0x144)]/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a\x20\x20\x20\x20';}[a0_0x314236(0x104)](_0x5eb69a){const _0x460db0=a0_0x314236;try{const _0xa3a8e0={},_0x504541=[];this[_0x460db0(0x188)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x5eb69a[_0x460db0(0x120)],'contentPreview':_0x5eb69a['substring'](0x0,0xc8)});const _0x2ff534=['read',_0x460db0(0x18c),'copy',_0x460db0(0x127),'create-dir',_0x460db0(0x184),'exists',_0x460db0(0x138),'append'];for(const _0x4b27 of _0x2ff534){const _0x5e249a=a0_0x1f0866['extractTagsWithAttributes'](_0x5eb69a,_0x4b27);for(const _0x332af7 of _0x5e249a){const _0x2ec72b={'type':_0x4b27,..._0x332af7[_0x460db0(0x16c)]};_0x2ec72b['file-path']&&(_0x2ec72b['filePath']=_0x2ec72b['file-path'],delete _0x2ec72b['file-path']),_0x2ec72b[_0x460db0(0x179)]&&(_0x2ec72b['outputPath']=_0x2ec72b[_0x460db0(0x179)],delete _0x2ec72b['output-path']),_0x2ec72b['source-path']&&(_0x2ec72b['sourcePath']=_0x2ec72b['source-path'],delete _0x2ec72b['source-path']),_0x2ec72b['dest-path']&&(_0x2ec72b[_0x460db0(0x150)]=_0x2ec72b['dest-path'],delete _0x2ec72b[_0x460db0(0x132)]),_0x2ec72b['create-dirs']&&(_0x2ec72b[_0x460db0(0x121)]=_0x2ec72b[_0x460db0(0x13e)]==='true',delete _0x2ec72b[_0x460db0(0x13e)]),_0x504541['push'](_0x2ec72b);}}const _0x182d78=_0x5eb69a[_0x460db0(0x109)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x4ad42c of _0x182d78){const _0x10ff5d=new a0_0x1f0866(),_0x5811a2=_0x10ff5d['parseAttributes'](_0x4ad42c[0x1]),_0x14a98f=_0x4ad42c[0x2]['trim'](),_0x3d92bb={'type':_0x460db0(0x17a),'content':_0x14a98f,..._0x5811a2};_0x3d92bb['output-path']&&(_0x3d92bb[_0x460db0(0x10b)]=_0x3d92bb[_0x460db0(0x179)],delete _0x3d92bb[_0x460db0(0x179)]),_0x3d92bb[_0x460db0(0x13e)]&&(_0x3d92bb[_0x460db0(0x121)]=_0x3d92bb['create-dirs']==='true',delete _0x3d92bb[_0x460db0(0x13e)]),_0x504541['push'](_0x3d92bb);}const _0x2cd26f=_0x5eb69a['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x32a796 of _0x2cd26f){const _0x5b17a6=new a0_0x1f0866(),_0x182f2c=_0x5b17a6['parseAttributes'](_0x32a796[0x1]),_0x270326=_0x32a796[0x2][_0x460db0(0x14a)](),_0x57c4ce={'type':_0x460db0(0x161),'content':_0x270326,..._0x182f2c};_0x57c4ce['file-path']&&(_0x57c4ce[_0x460db0(0x15d)]=_0x57c4ce[_0x460db0(0x110)],delete _0x57c4ce['file-path']),_0x504541['push'](_0x57c4ce);}return _0xa3a8e0['actions']=_0x504541,_0xa3a8e0['rawContent']=_0x5eb69a[_0x460db0(0x14a)](),this[_0x460db0(0x188)]?.[_0x460db0(0x146)](_0x460db0(0x103),{'totalActions':_0x504541[_0x460db0(0x120)],'actionTypes':_0x504541[_0x460db0(0x180)](_0x37c72b=>_0x37c72b[_0x460db0(0x128)]),'actions':_0x504541['map'](_0x115b45=>({'type':_0x115b45['type'],'filePath':_0x115b45[_0x460db0(0x15d)],'outputPath':_0x115b45['outputPath'],'hasContent':!!_0x115b45[_0x460db0(0x169)]}))}),_0xa3a8e0;}catch(_0x7c75a){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x7c75a['message']);}}['getRequiredParameters'](){const _0x2ace35=a0_0x314236;return[_0x2ace35(0x15e)];}[a0_0x314236(0x11e)](_0x563425){const _0x59b74a=a0_0x314236,_0x346e4f=[];if(!_0x563425['actions']||!Array[_0x59b74a(0xfe)](_0x563425['actions'])||_0x563425['actions']['length']===0x0)_0x346e4f['push'](_0x59b74a(0x113));else for(const [_0x1d20b1,_0x5ac64e]of _0x563425['actions']['entries']()){if(!_0x5ac64e[_0x59b74a(0x128)]){_0x346e4f['push'](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x5ac64e[_0x59b74a(0x128)]){case _0x59b74a(0x172):case'delete':case'exists':case'stats':!_0x5ac64e[_0x59b74a(0x15d)]&&_0x346e4f[_0x59b74a(0x148)](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+_0x59b74a(0x187)+_0x5ac64e[_0x59b74a(0x128)]);break;case _0x59b74a(0x17a):!_0x5ac64e[_0x59b74a(0x10b)]&&_0x346e4f['push'](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+_0x59b74a(0x101));!_0x5ac64e['content']&&_0x5ac64e['content']!==''&&_0x346e4f['push']('Action\x20'+(_0x1d20b1+0x1)+_0x59b74a(0x14d));break;case'append':!_0x5ac64e['filePath']&&_0x346e4f[_0x59b74a(0x148)]('Action\x20'+(_0x1d20b1+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x5ac64e['content']&&_0x5ac64e['content']!==''&&_0x346e4f['push'](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case _0x59b74a(0x127):!_0x5ac64e['sourcePath']&&_0x346e4f['push'](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x5ac64e[_0x59b74a(0x128)]);!_0x5ac64e[_0x59b74a(0x150)]&&_0x346e4f[_0x59b74a(0x148)]('Action\x20'+(_0x1d20b1+0x1)+_0x59b74a(0x190)+_0x5ac64e['type']);break;case _0x59b74a(0x171):case'list':!_0x5ac64e[_0x59b74a(0x10d)]&&_0x346e4f['push']('Action\x20'+(_0x1d20b1+0x1)+_0x59b74a(0xfd)+_0x5ac64e['type']);break;default:_0x346e4f[_0x59b74a(0x148)]('Action\x20'+(_0x1d20b1+0x1)+_0x59b74a(0xff)+_0x5ac64e['type']);}_0x5ac64e[_0x59b74a(0x15d)]&&!this[_0x59b74a(0x16d)](_0x5ac64e[_0x59b74a(0x15d)])&&_0x346e4f[_0x59b74a(0x148)](_0x59b74a(0x10c)+(_0x1d20b1+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x5b88e1[_0x59b74a(0x10f)](_0x5ac64e[_0x59b74a(0x15d)])),_0x5ac64e[_0x59b74a(0x10b)]&&!this[_0x59b74a(0x16d)](_0x5ac64e['outputPath'])&&_0x346e4f['push']('Action\x20'+(_0x1d20b1+0x1)+_0x59b74a(0x143)+a0_0x5b88e1['extname'](_0x5ac64e['outputPath']));}return{'valid':_0x346e4f[_0x59b74a(0x120)]===0x0,'errors':_0x346e4f};}async[a0_0x314236(0x156)](_0xa1f22b,_0x4e127b){const _0x1a9845=a0_0x314236;if(!_0xa1f22b||typeof _0xa1f22b!=='object')throw new Error('Invalid\x20parameters:\x20params\x20must\x20be\x20an\x20object');const {actions:_0x4a3344}=_0xa1f22b;if(!_0x4a3344)throw new Error(_0x1a9845(0x18f)+JSON[_0x1a9845(0x183)](Object[_0x1a9845(0x111)](_0xa1f22b)));if(!Array[_0x1a9845(0xfe)](_0x4a3344))throw new Error(_0x1a9845(0x126)+typeof _0x4a3344);if(_0x4a3344['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x39c828,agentId:_0x148ead,directoryAccess:_0x12d7f5}=_0x4e127b,_0x11dae9=_0x12d7f5||this[_0x1a9845(0x15a)][_0x1a9845(0x193)]({'workingDirectory':_0x39c828||process['cwd'](),'writeEnabledDirectories':[_0x39c828||process[_0x1a9845(0x176)]()],'restrictToProject':!![]});_0x12d7f5&&_0x12d7f5['workingDirectory']?(console[_0x1a9845(0x115)](_0x1a9845(0x185),_0x12d7f5['workingDirectory']),console[_0x1a9845(0x115)]('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON[_0x1a9845(0x183)](_0x12d7f5,null,0x2))):(console['log'](_0x1a9845(0x102),_0x39c828||process['cwd']()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x12d7f5),console[_0x1a9845(0x115)](_0x1a9845(0x154),_0x39c828));const _0x17977d=[];for(const _0x2af696 of _0x4a3344){try{let _0x1cc810;switch(_0x2af696[_0x1a9845(0x128)]){case'read':_0x1cc810=await this['readFile'](_0x2af696['filePath'],_0x11dae9,_0x2af696[_0x1a9845(0x147)]);break;case'write':_0x1cc810=await this['writeFile'](_0x2af696['outputPath'],_0x2af696[_0x1a9845(0x169)],_0x11dae9,{'encoding':_0x2af696[_0x1a9845(0x147)],'createDirs':_0x2af696[_0x1a9845(0x121)]});break;case _0x1a9845(0x161):_0x1cc810=await this['appendToFile'](_0x2af696[_0x1a9845(0x15d)],_0x2af696[_0x1a9845(0x169)],_0x11dae9,_0x2af696[_0x1a9845(0x147)]);break;case _0x1a9845(0x18c):_0x1cc810=await this['deleteFile'](_0x2af696['filePath'],_0x11dae9);break;case'copy':_0x1cc810=await this[_0x1a9845(0x160)](_0x2af696['sourcePath'],_0x2af696['destPath'],_0x11dae9);break;case _0x1a9845(0x127):_0x1cc810=await this['moveFile'](_0x2af696[_0x1a9845(0x170)],_0x2af696['destPath'],_0x11dae9);break;case _0x1a9845(0x171):_0x1cc810=await this[_0x1a9845(0x12d)](_0x2af696[_0x1a9845(0x10d)],_0x11dae9);break;case _0x1a9845(0x184):_0x1cc810=await this['listDirectory'](_0x2af696[_0x1a9845(0x10d)],_0x11dae9);break;case'exists':_0x1cc810=await this[_0x1a9845(0x14e)](_0x2af696[_0x1a9845(0x15d)],_0x11dae9);break;case _0x1a9845(0x138):_0x1cc810=await this['getFileStats'](_0x2af696[_0x1a9845(0x15d)],_0x11dae9);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x2af696['type']);}_0x17977d['push'](_0x1cc810),this[_0x1a9845(0x163)](_0x2af696,_0x1cc810,_0x4e127b['agentId']);}catch(_0x3b48a8){const _0x21637d={'success':![],'action':_0x2af696['type'],'error':_0x3b48a8[_0x1a9845(0x119)],'filePath':_0x2af696['filePath']||_0x2af696[_0x1a9845(0x10b)]||_0x2af696[_0x1a9845(0x10d)]};_0x17977d['push'](_0x21637d),this[_0x1a9845(0x163)](_0x2af696,_0x21637d,_0x4e127b['agentId']);}}return{'success':!![],'actions':_0x17977d,'executedActions':_0x4a3344['length'],'toolUsed':_0x1a9845(0x182)};}async[a0_0x314236(0x17d)](_0x25861f,_0x2a8731,_0x1b1017='utf8'){const _0x27f1b6=a0_0x314236,_0x3654d1=this[_0x27f1b6(0x15a)]['getWorkingDirectory'](_0x2a8731),_0x5a2d8b=this['resolvePath'](_0x25861f,_0x3654d1),_0x32f835=this['directoryAccessManager'][_0x27f1b6(0x117)](_0x5a2d8b,_0x2a8731);if(!_0x32f835[_0x27f1b6(0x12e)])throw new Error(_0x27f1b6(0x114)+_0x32f835['reason']+'\x20('+_0x32f835['path']+')');try{const _0x2ca79e=await a0_0x131e2b[_0x27f1b6(0x139)](_0x5a2d8b);if(_0x2ca79e[_0x27f1b6(0x186)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x2ca79e['size']+'\x20bytes\x20(max\x20'+this[_0x27f1b6(0x144)]+')');const _0x341a5f=await a0_0x131e2b[_0x27f1b6(0x17d)](_0x5a2d8b,_0x1b1017);return{'success':!![],'action':_0x27f1b6(0x172),'filePath':this[_0x27f1b6(0x15a)][_0x27f1b6(0x166)](_0x5a2d8b,_0x2a8731),'content':_0x341a5f,'size':_0x2ca79e['size'],'encoding':_0x1b1017,'lastModified':_0x2ca79e[_0x27f1b6(0x191)][_0x27f1b6(0x140)](),'message':_0x27f1b6(0x177)+_0x2ca79e['size']+_0x27f1b6(0xfc)+_0x25861f};}catch(_0x1a6f91){throw new Error(_0x27f1b6(0x155)+_0x25861f+':\x20'+_0x1a6f91[_0x27f1b6(0x119)]);}}async[a0_0x314236(0x18e)](_0x4870c8,_0x3ad8a1,_0x359a04,_0x363915={}){const _0x535d69=a0_0x314236,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x363915,_0x2e2278=this['directoryAccessManager']['getWorkingDirectory'](_0x359a04),_0x160410=this['resolvePath'](_0x4870c8,_0x2e2278),_0x2cd0e7=this['directoryAccessManager']['validateWriteAccess'](_0x160410,_0x359a04);if(!_0x2cd0e7[_0x535d69(0x12e)])throw new Error(_0x535d69(0x168)+_0x2cd0e7[_0x535d69(0x134)]+'\x20('+_0x2cd0e7[_0x535d69(0x108)]+')');try{const _0x32f94f=Buffer[_0x535d69(0x165)](_0x3ad8a1,encoding);if(_0x32f94f>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x32f94f+'\x20bytes\x20(max\x20'+this[_0x535d69(0x144)]+')');if(createDirs){const _0x1c207a=a0_0x5b88e1[_0x535d69(0x11f)](_0x160410);await a0_0x131e2b[_0x535d69(0x12f)](_0x1c207a,{'recursive':!![]});}let _0x3637c0=null;try{await a0_0x131e2b['access'](_0x160410),_0x3637c0=_0x160410+_0x535d69(0x107)+Date['now'](),await a0_0x131e2b[_0x535d69(0x160)](_0x160410,_0x3637c0);}catch{}await a0_0x131e2b[_0x535d69(0x18e)](_0x160410,_0x3ad8a1,encoding);const _0x56deab=await a0_0x131e2b[_0x535d69(0x139)](_0x160410),_0x12f400=this[_0x535d69(0x15a)][_0x535d69(0x166)](_0x160410,_0x359a04);return{'success':!![],'action':_0x535d69(0x17a),'outputPath':_0x12f400,'fullPath':_0x160410,'size':_0x56deab['size'],'encoding':encoding,'backupPath':_0x3637c0?this['directoryAccessManager'][_0x535d69(0x166)](_0x3637c0,_0x359a04):null,'backupFullPath':_0x3637c0||null,'message':'Wrote\x20'+_0x56deab[_0x535d69(0x186)]+'\x20bytes\x20to\x20'+_0x160410};}catch(_0x2fe1b6){throw new Error(_0x535d69(0x10e)+_0x160410+':\x20'+_0x2fe1b6[_0x535d69(0x119)]);}}async[a0_0x314236(0x13b)](_0x46657d,_0x399663,_0x5e2813,_0x2688b7='utf8'){const _0x408dd8=a0_0x314236,_0x36f501=this['directoryAccessManager']['getWorkingDirectory'](_0x5e2813),_0x3665ce=this['resolvePath'](_0x46657d,_0x36f501),_0x46d91c=this['directoryAccessManager']['validateWriteAccess'](_0x3665ce,_0x5e2813);if(!_0x46d91c['allowed'])throw new Error(_0x408dd8(0x168)+_0x46d91c[_0x408dd8(0x134)]+'\x20('+_0x46d91c[_0x408dd8(0x108)]+')');try{let _0x43e638=0x0;try{const _0x4f096e=await a0_0x131e2b[_0x408dd8(0x139)](_0x3665ce);_0x43e638=_0x4f096e[_0x408dd8(0x186)];}catch{}const _0x4d88cc=Buffer[_0x408dd8(0x165)](_0x399663,_0x2688b7);if(_0x43e638+_0x4d88cc>this[_0x408dd8(0x144)])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x43e638+_0x4d88cc)+'\x20bytes\x20(max\x20'+this[_0x408dd8(0x144)]+')');await a0_0x131e2b['appendFile'](_0x3665ce,_0x399663,_0x2688b7);const _0x3fd709=await a0_0x131e2b[_0x408dd8(0x139)](_0x3665ce),_0x23517c=this[_0x408dd8(0x15a)]['createRelativePath'](_0x3665ce,_0x5e2813);return{'success':!![],'action':_0x408dd8(0x161),'filePath':_0x23517c,'fullPath':_0x3665ce,'appendedBytes':_0x4d88cc,'totalSize':_0x3fd709[_0x408dd8(0x186)],'encoding':_0x2688b7,'message':_0x408dd8(0x13c)+_0x4d88cc+'\x20bytes\x20to\x20'+_0x3665ce};}catch(_0x29bab0){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x3665ce+':\x20'+_0x29bab0[_0x408dd8(0x119)]);}}async[a0_0x314236(0x112)](_0x183b61,_0x2fda3a){const _0x4546c1=a0_0x314236,_0x5737c8=this[_0x4546c1(0x15a)][_0x4546c1(0x151)](_0x2fda3a),_0x15d348=this[_0x4546c1(0x13d)](_0x183b61,_0x5737c8),_0x2a23ea=this['directoryAccessManager']['validateWriteAccess'](_0x15d348,_0x2fda3a);if(!_0x2a23ea['allowed'])throw new Error(_0x4546c1(0x17f)+_0x2a23ea['reason']+'\x20('+_0x2a23ea[_0x4546c1(0x108)]+')');try{const _0x1f2876=await a0_0x131e2b['stat'](_0x15d348),_0x46d0b0=_0x15d348+'.deleted-backup-'+Date['now']();await a0_0x131e2b['copyFile'](_0x15d348,_0x46d0b0),await a0_0x131e2b[_0x4546c1(0x141)](_0x15d348);const _0x458716=this[_0x4546c1(0x15a)]['createRelativePath'](_0x15d348,_0x2fda3a),_0x40aca8=this[_0x4546c1(0x15a)]['createRelativePath'](_0x46d0b0,_0x2fda3a);return{'success':!![],'action':'delete','filePath':_0x458716,'fullPath':_0x15d348,'size':_0x1f2876[_0x4546c1(0x186)],'backupPath':_0x40aca8,'backupFullPath':_0x46d0b0,'message':'Deleted\x20'+_0x15d348+'\x20(backup\x20created)'};}catch(_0x4ca798){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x15d348+':\x20'+_0x4ca798[_0x4546c1(0x119)]);}}async[a0_0x314236(0x160)](_0x58e34f,_0x59b64f,_0x4c5cd0){const _0x13387d=a0_0x314236,_0x193f0f=this['directoryAccessManager']['getWorkingDirectory'](_0x4c5cd0),_0x46eaee=this[_0x13387d(0x13d)](_0x58e34f,_0x193f0f),_0x4be73a=this[_0x13387d(0x13d)](_0x59b64f,_0x193f0f),_0x1b648f=this['directoryAccessManager']['validateReadAccess'](_0x46eaee,_0x4c5cd0);if(!_0x1b648f[_0x13387d(0x12e)])throw new Error(_0x13387d(0x16a)+_0x1b648f['reason']+'\x20('+_0x1b648f['path']+')');const _0x5b2ed3=this['directoryAccessManager']['validateWriteAccess'](_0x4be73a,_0x4c5cd0);if(!_0x5b2ed3[_0x13387d(0x12e)])throw new Error(_0x13387d(0x12c)+_0x5b2ed3[_0x13387d(0x134)]+'\x20('+_0x5b2ed3[_0x13387d(0x108)]+')');try{const _0x326edb=await a0_0x131e2b['stat'](_0x46eaee);if(_0x326edb[_0x13387d(0x186)]>this[_0x13387d(0x144)])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x326edb[_0x13387d(0x186)]+'\x20bytes');const _0xfb2f9d=a0_0x5b88e1['dirname'](_0x4be73a);await a0_0x131e2b['mkdir'](_0xfb2f9d,{'recursive':!![]}),await a0_0x131e2b[_0x13387d(0x160)](_0x46eaee,_0x4be73a);const _0x44279b=this['directoryAccessManager'][_0x13387d(0x166)](_0x46eaee,_0x4c5cd0),_0x2557a2=this[_0x13387d(0x15a)][_0x13387d(0x166)](_0x4be73a,_0x4c5cd0);return{'success':!![],'action':_0x13387d(0x149),'sourcePath':_0x44279b,'destPath':_0x2557a2,'sourceFullPath':_0x46eaee,'destFullPath':_0x4be73a,'size':_0x326edb[_0x13387d(0x186)],'message':'Copied\x20'+_0x46eaee+_0x13387d(0x16f)+_0x4be73a};}catch(_0x1d1e3f){throw new Error(_0x13387d(0x174)+_0x46eaee+'\x20to\x20'+_0x4be73a+':\x20'+_0x1d1e3f[_0x13387d(0x119)]);}}async[a0_0x314236(0x15c)](_0x30a3ec,_0x1cabd1,_0x21a4fc){const _0x2a06f0=a0_0x314236,_0x57fa36=this['directoryAccessManager']['getWorkingDirectory'](_0x21a4fc),_0x539cd2=this['resolvePath'](_0x30a3ec,_0x57fa36),_0x3ffb22=this['resolvePath'](_0x1cabd1,_0x57fa36),_0x303422=this['directoryAccessManager']['validateReadAccess'](_0x539cd2,_0x21a4fc);if(!_0x303422['allowed'])throw new Error(_0x2a06f0(0x18b)+_0x303422[_0x2a06f0(0x134)]+'\x20('+_0x303422[_0x2a06f0(0x108)]+')');const _0xfc37e8=this['directoryAccessManager'][_0x2a06f0(0x14c)](_0x3ffb22,_0x21a4fc);if(!_0xfc37e8['allowed'])throw new Error(_0x2a06f0(0x124)+_0xfc37e8[_0x2a06f0(0x134)]+'\x20('+_0xfc37e8[_0x2a06f0(0x108)]+')');try{const _0x2afded=await a0_0x131e2b[_0x2a06f0(0x139)](_0x539cd2),_0x400484=a0_0x5b88e1['dirname'](_0x3ffb22);await a0_0x131e2b[_0x2a06f0(0x12f)](_0x400484,{'recursive':!![]}),await a0_0x131e2b[_0x2a06f0(0x125)](_0x539cd2,_0x3ffb22);const _0x2c56e2=this[_0x2a06f0(0x15a)][_0x2a06f0(0x166)](_0x539cd2,_0x21a4fc),_0x5e5afd=this['directoryAccessManager']['createRelativePath'](_0x3ffb22,_0x21a4fc);return{'success':!![],'action':'move','sourcePath':_0x2c56e2,'destPath':_0x5e5afd,'fullSourcePath':_0x539cd2,'fullDestPath':_0x3ffb22,'size':_0x2afded[_0x2a06f0(0x186)],'message':'Moved\x20'+_0x30a3ec+'\x20to\x20'+_0x1cabd1};}catch(_0x5440f3){throw new Error('Failed\x20to\x20move\x20'+_0x30a3ec+_0x2a06f0(0x16f)+_0x1cabd1+':\x20'+_0x5440f3[_0x2a06f0(0x119)]);}}async[a0_0x314236(0x12d)](_0x2fb4d9,_0x274a2d){const _0x3e2080=a0_0x314236,_0x34455b=this[_0x3e2080(0x15a)][_0x3e2080(0x151)](_0x274a2d),_0x4e2163=this['resolvePath'](_0x2fb4d9,_0x34455b),_0x2ff40e=this[_0x3e2080(0x15a)][_0x3e2080(0x14c)](_0x4e2163,_0x274a2d);if(!_0x2ff40e['allowed'])throw new Error(_0x3e2080(0x168)+_0x2ff40e[_0x3e2080(0x134)]+'\x20('+_0x2ff40e['path']+')');try{await a0_0x131e2b['mkdir'](_0x4e2163,{'recursive':!![]});const _0x19f827=this['directoryAccessManager']['createRelativePath'](_0x4e2163,_0x274a2d);return{'success':!![],'action':_0x3e2080(0x171),'directory':_0x19f827,'fullPath':_0x4e2163,'message':_0x3e2080(0x181)+_0x2fb4d9};}catch(_0x20748a){throw new Error(_0x3e2080(0x158)+_0x2fb4d9+':\x20'+_0x20748a[_0x3e2080(0x119)]);}}async[a0_0x314236(0x17b)](_0x56baae,_0x39542b){const _0x1cbf8b=a0_0x314236,_0x5d6767=this[_0x1cbf8b(0x15a)][_0x1cbf8b(0x151)](_0x39542b),_0x4a9fd3=this[_0x1cbf8b(0x13d)](_0x56baae,_0x5d6767),_0x34230f=this['directoryAccessManager'][_0x1cbf8b(0x117)](_0x4a9fd3,_0x39542b);if(!_0x34230f['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x34230f[_0x1cbf8b(0x134)]+'\x20('+_0x34230f['path']+')');try{const _0x4d6ea6=await a0_0x131e2b[_0x1cbf8b(0x18d)](_0x4a9fd3,{'withFileTypes':!![]}),_0x2adf98=[];for(const _0x178baa of _0x4d6ea6){const _0xd815fc=a0_0x5b88e1[_0x1cbf8b(0x11c)](_0x4a9fd3,_0x178baa[_0x1cbf8b(0x123)]),_0x9c97c5=await a0_0x131e2b[_0x1cbf8b(0x139)](_0xd815fc);_0x2adf98['push']({'name':_0x178baa[_0x1cbf8b(0x123)],'type':_0x178baa[_0x1cbf8b(0x16e)]()?_0x1cbf8b(0x10d):_0x1cbf8b(0x118),'size':_0x178baa['isFile']()?_0x9c97c5['size']:undefined,'lastModified':_0x9c97c5['mtime']['toISOString'](),'permissions':_0x9c97c5['mode'],'isSymlink':_0x178baa[_0x1cbf8b(0x17e)]()});}const _0x1d3cf1=this[_0x1cbf8b(0x15a)][_0x1cbf8b(0x166)](_0x4a9fd3,_0x39542b);return{'success':!![],'action':_0x1cbf8b(0x184),'directory':_0x1d3cf1,'fullPath':_0x4a9fd3,'contents':_0x2adf98,'totalItems':_0x2adf98[_0x1cbf8b(0x120)],'directories':_0x2adf98['filter'](_0x5af08c=>_0x5af08c[_0x1cbf8b(0x128)]===_0x1cbf8b(0x10d))['length'],'files':_0x2adf98['filter'](_0xc41d27=>_0xc41d27[_0x1cbf8b(0x128)]==='file')[_0x1cbf8b(0x120)],'message':_0x1cbf8b(0x12b)+_0x2adf98['length']+_0x1cbf8b(0x17c)+_0x56baae};}catch(_0x2240d4){throw new Error(_0x1cbf8b(0x18a)+_0x56baae+':\x20'+_0x2240d4['message']);}}async['checkExists'](_0x219cac,_0x3cd718){const _0x1a4b45=a0_0x314236,_0x204b57=this['directoryAccessManager'][_0x1a4b45(0x151)](_0x3cd718),_0x6ff4ab=this[_0x1a4b45(0x13d)](_0x219cac,_0x204b57),_0x2284a4=this['directoryAccessManager'][_0x1a4b45(0x117)](_0x6ff4ab,_0x3cd718);if(!_0x2284a4[_0x1a4b45(0x12e)])throw new Error('Read\x20access\x20denied:\x20'+_0x2284a4['reason']+'\x20('+_0x2284a4['path']+')');try{const _0x2f1f9e=await a0_0x131e2b['stat'](_0x6ff4ab),_0x25582a=this['directoryAccessManager']['createRelativePath'](_0x6ff4ab,_0x3cd718);return{'success':!![],'action':_0x1a4b45(0x137),'filePath':_0x25582a,'fullPath':_0x6ff4ab,'exists':!![],'type':_0x2f1f9e['isDirectory']()?'directory':'file','message':_0x219cac+_0x1a4b45(0x11b)+(_0x2f1f9e['isDirectory']()?_0x1a4b45(0x10d):'file')};}catch(_0x298869){if(_0x298869['code']==='ENOENT'){const _0x4b1ccf=this[_0x1a4b45(0x15a)]['createRelativePath'](_0x6ff4ab,_0x3cd718);return{'success':!![],'action':'exists','filePath':_0x4b1ccf,'fullPath':_0x6ff4ab,'exists':![],'message':_0x219cac+_0x1a4b45(0x142)};}throw new Error(_0x1a4b45(0x136)+_0x219cac+':\x20'+_0x298869[_0x1a4b45(0x119)]);}}async['getFileStats'](_0x511cbc,_0x5da962){const _0x4db796=a0_0x314236,_0x55fa2d=this[_0x4db796(0x15a)]['getWorkingDirectory'](_0x5da962),_0x3aa41c=this[_0x4db796(0x13d)](_0x511cbc,_0x55fa2d),_0x19061c=this[_0x4db796(0x15a)][_0x4db796(0x117)](_0x3aa41c,_0x5da962);if(!_0x19061c[_0x4db796(0x12e)])throw new Error('Read\x20access\x20denied:\x20'+_0x19061c[_0x4db796(0x134)]+'\x20('+_0x19061c[_0x4db796(0x108)]+')');try{const _0x14180b=await a0_0x131e2b['stat'](_0x3aa41c),_0x239142=this[_0x4db796(0x15a)]['createRelativePath'](_0x3aa41c,_0x5da962);return{'success':!![],'action':_0x4db796(0x138),'filePath':_0x239142,'fullPath':_0x3aa41c,'stats':{'size':_0x14180b[_0x4db796(0x186)],'type':_0x14180b['isDirectory']()?'directory':_0x4db796(0x118),'lastModified':_0x14180b['mtime'][_0x4db796(0x140)](),'lastAccessed':_0x14180b['atime']['toISOString'](),'created':_0x14180b['birthtime'][_0x4db796(0x140)](),'permissions':_0x14180b['mode'],'isSymlink':_0x14180b['isSymbolicLink']()},'message':_0x4db796(0x122)+_0x511cbc};}catch(_0x571c27){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x511cbc+':\x20'+_0x571c27['message']);}}['resolvePath'](_0x214b09,_0x1d5dfe){const _0x20412d=a0_0x314236;if(a0_0x5b88e1[_0x20412d(0x133)](_0x214b09))return a0_0x5b88e1['normalize'](_0x214b09);return a0_0x5b88e1[_0x20412d(0x157)](_0x1d5dfe,_0x214b09);}['validatePathAccess'](_0x265a4b,_0xc4cc67,_0x324169='read'){const _0x53aedf=a0_0x314236,_0x267071=_0x324169==='write'?this['directoryAccessManager'][_0x53aedf(0x14c)](_0x265a4b,_0xc4cc67):this['directoryAccessManager'][_0x53aedf(0x117)](_0x265a4b,_0xc4cc67);if(!_0x267071['allowed'])throw new Error(_0x324169+'\x20access\x20denied:\x20'+_0x267071[_0x53aedf(0x134)]+'\x20('+_0x267071[_0x53aedf(0x108)]+')');return _0x267071;}[a0_0x314236(0x16d)](_0x4604a7){const _0x139b99=a0_0x314236,_0x1d63ac=a0_0x5b88e1[_0x139b99(0x10f)](_0x4604a7)[_0x139b99(0x164)]();if(this[_0x139b99(0x15b)][_0x139b99(0x15f)](_0x1d63ac))return![];if(this[_0x139b99(0x153)]&&!this[_0x139b99(0x153)][_0x139b99(0x15f)](_0x1d63ac))return![];return!![];}['addToHistory'](_0x4b6be8,_0x153645,_0x3e9363){const _0x145cc6=a0_0x314236,_0x429984={'timestamp':new Date()['toISOString'](),'agentId':_0x3e9363,'action':_0x4b6be8[_0x145cc6(0x128)],'filePath':_0x4b6be8['filePath']||_0x4b6be8[_0x145cc6(0x10b)]||_0x4b6be8[_0x145cc6(0x10d)],'success':_0x153645[_0x145cc6(0x106)],'size':_0x153645['size']};this['operationHistory']['push'](_0x429984),this['operationHistory'][_0x145cc6(0x120)]>0xc8&&(this['operationHistory']=this[_0x145cc6(0x14b)][_0x145cc6(0x178)](-0xc8));}['getSupportedActions'](){const _0x4b1971=a0_0x314236;return['read',_0x4b1971(0x17a),_0x4b1971(0x161),_0x4b1971(0x18c),_0x4b1971(0x149),_0x4b1971(0x127),_0x4b1971(0x171),'list','exists',_0x4b1971(0x138)];}['getParameterSchema'](){const _0x38919a=a0_0x314236;return{'type':_0x38919a(0x130),'properties':{'actions':{'type':_0x38919a(0x167),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x38919a(0x131),'enum':this[_0x38919a(0x162)]()},'filePath':{'type':'string'},'outputPath':{'type':_0x38919a(0x131)},'sourcePath':{'type':'string'},'destPath':{'type':_0x38919a(0x131)},'directory':{'type':'string'},'content':{'type':'string'},'encoding':{'type':'string'},'createDirs':{'type':_0x38919a(0x105)}},'required':[_0x38919a(0x128)]}}},'required':[_0x38919a(0x15e)]};}['getOperationHistory'](_0x24b9b8=null){if(_0x24b9b8)return this['operationHistory']['filter'](_0x2e2d8e=>_0x2e2d8e['agentId']===_0x24b9b8);return[...this['operationHistory']];}}export default FileSystemTool;function a0_0x4b5e(){const _0x119d79=['sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','BxrPBwu','tufyx0zjtevFu0LArq','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','igj5DgvZigzYB20G','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','AxnbCNjHEq','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcLvtquDfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEYj0ExbLiJOGiNjLywqIlcaIzMLSzvbHDgGIoIaIC3jJl2LUzgv4lMPZiN0ScIaGicb7iNr5CguIoIaID3jPDguIlcaIB3v0Chv0ugf0Aci6icjZCMmVzMLSzs5QCYiSicjJB250zw50iJOGiI4UlIj9cIaGxqP9cMbGyaOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZicHMAwXLugf0AcKklsb3CML0ztOGv3jPDguGy29UDgvUDcb0BYbMAwXLicHVDxrWDxrqyxrOlcbJB250zw50kqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzsaOzMLSzvbHDgGSignVBNrLBNqPcI0GzgvSzxrLoIbezwXLDguGysbMAwXLicHMAwXLugf0AcKklsbJB3b5oIbdB3b5igzPBguGkhnVDxjJzvbHDgGSigrLC3rqyxrOkqOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguGkhnVDxjJzvbHDgGSigrLC3rqyxrOkqOTignYzwf0zs1KAxi6ienYzwf0zsbKAxjLy3rVCNKGkgrPCMvJDg9YEsKklsbSAxn0oIbmAxn0igrPCMvJDg9YEsbJB250zw50CYaOzgLYzwn0B3j5kqOTigv4Axn0CZOGq2HLy2SGAwyGzMLSzs9KAxjLy3rVCNKGzxHPC3rZicHMAwXLugf0AcKklsbZDgf0CZOGr2v0igzPBguVzgLYzwn0B3j5ig1LDgfKyxrHicHMAwXLugf0AcKkcLbbuKfnrvrfuLm6cI0GzMLSzvbHDgG6ifbHDgGGDg8GzMLSzsaOzM9YihjLywqSigrLBgv0zsWGyxbWzw5KlcbLEgLZDhmSihn0yxrZkqOTig91Dhb1DfbHDgG6ifbHDgGGD2HLCMuGDg8GD3jPDguVy3jLyxrLigzPBguklsbZB3vYy2vqyxrOoIbtB3vYy2uGCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKzxn0ugf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbJCMvHDguTzgLYigfUzcbSAxn0ig9WzxjHDgLVBNmklsbJB250zw50oIbdB250zw50ihrVihDYAxrLl2fWCgvUzaOTigvUy29KAw5NoIbgAwXLigvUy29KAw5NicHKzwzHDwX0oIb1Dgy4kqOTignYzwf0zurPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOkv3jPDguGysbMAwXLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGw3SIDhLWzsi6icj3CML0zsiSicjVDxrWDxrqyxrOiJOGiMHLBgXVlMPZiIWGiMnVBNrLBNqIoIaIy29UC29Szs5SB2COj0HLBgXVjYK7iN1DcN0kygbGcGPszwfKigeGzMLSztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLC3LZDgvTiIWkicaIywn0Aw9UCYi6ifT7iNr5CguIoIaICMvHzciSicjMAwXLugf0Aci6icjWywnRywDLlMPZB24IFv0kFqPGygakcK11BhrPCgXLig9WzxjHDgLVBNm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaICMvHzciSicjMAwXLugf0Aci6icjZCMmVAw5KzxGUANmIFsWkicaGihSIDhLWzsi6icjJB3b5iIWGiNnVDxjJzvbHDgGIoIaIDgvTCgXHDguUANmIlcaIzgvZDfbHDgGIoIaIC3jJl2nVBxbVBMvUDc5QCYj9laOGicaGEYj0ExbLiJOGiMnYzwf0zs1KAxiIlcaIzgLYzwn0B3j5iJOGiNnYyY9JB21WB25LBNrZl3vPiN0kicbDcN0kygbGcGPtrunvuKLuwtOklsbpCgvYyxrPB25ZihjLC3rYAwn0zwqGDg8GChjVAMvJDcbKAxjLy3rVCNKklsbgAwXLihnPEMuGBgLTAxrZigvUzM9Yy2vKicHTyxGG','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','CgfYC2vqyxjHBwv0zxjZ','yM9VBgvHBG','C3vJy2vZCW','lMjHy2T1Cc0','Cgf0Aa','Bwf0y2HbBgW','CM91BMq','B3v0Chv0ugf0Aa','qwn0Aw9Uia','zgLYzwn0B3j5','rMfPBgvKihrVihDYAxrLigzPBguG','zxH0BMfTzq','zMLSzs1WyxrO','A2v5CW','zgvSzxrLrMLSzq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','uMvHzcbHy2nLC3mGzgvUAwvKoIa','Bg9N','DgLTzw91Da','DMfSAwrHDgvszwfKqwnJzxnZ','zMLSzq','BwvZC2fNzq','ndzwverbweW','igv4Axn0CYbHCYa','AM9PBG','lNnJCG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zgLYBMfTzq','BgvUz3rO','y3jLyxrLrgLYCW','uMv0CMLLDMvKihn0yxrZigzVCIa','BMfTzq','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','CMvUyw1L','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','Bw92zq','DhLWzq','CMvXDwLYzxnqCM9Qzwn0','ndyWntn1wLbRzfa','tgLZDgvKia','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','y3jLyxrLrgLYzwn0B3j5','ywXSB3DLza','BwTKAxi','B2jQzwn0','C3rYAw5N','zgvZDc1WyxrO','AxnbyNnVBhv0zq','CMvHC29U','mtqZmtfmDfPyyuS','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','zxHPC3rZ','C3rHDhm','C3rHDa','ywXSB3DLzerPCMvJDg9YAwvZ','yxbWzw5Kvg9gAwXL','qxbWzw5KzwqG','CMvZB2X2zvbHDgG','y3jLyxrLlwrPCNm','lMnTza','Dg9ju09tDhjPBMC','Dw5SAw5R','igrVzxmGBM90igv4Axn0','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','Bwf4rMLSzvnPEMu','nJyXnMffCvP6rq','zgvIDwC','zw5JB2rPBMC','ChvZAa','y29WEq','DhjPBq','B3bLCMf0Aw9UsgLZDg9YEq','DMfSAwrHDgvxCML0zufJy2vZCW','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','y2HLy2TfEgLZDhm','mJb0ExrRvuS','zgvZDfbHDgG','z2v0v29YA2LUz0rPCMvJDg9YEq','ntu4mtK2mLHdC3LYCa','ywXSB3DLzev4DgvUC2LVBNm','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','rMfPBgvKihrVihjLywqGzMLSzsa','zxHLy3v0zq','CMvZB2X2zq','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','ndaZmtKWmhPPrwTpBG','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','yMXVy2TLzev4DgvUC2LVBNm','Bw92zuzPBgu','zMLSzvbHDgG','ywn0Aw9UCW','Aw5JBhvKzxm','y29WEuzPBgu','yxbWzw5K','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ywrKvg9iAxn0B3j5','Dg9mB3DLCKnHC2u','yNL0zuXLBMD0Aa','y3jLyxrLuMvSyxrPDMvqyxrO','yxjYyxK','v3jPDguGywnJzxnZigrLBMLLzdOG','y29UDgvUDa','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','mZu0ody2nhnrwwTtAG','yxr0CMLIDxrLCW','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','AxneAxjLy3rVCNK','ihrVia','C291CMnLugf0Aa','y3jLyxrLlwrPCG','CMvHza','otC4mtuWmfLptgryuq','rMfPBgvKihrVignVChKG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','y3DK','uMvHzca','C2XPy2u','B3v0Chv0lxbHDgG','D3jPDgu','BgLZDerPCMvJDg9YEq','igL0zw1ZigLUia','CMvHzezPBgu','AxntEw1IB2XPy0XPBMS','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','BwfW','q3jLyxrLzcbKAxjLy3rVCNKG','zMLSzxn5CW','C3rYAw5NAwz5','BgLZDa','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','C2L6zq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','Bg9Nz2vY','mJC3oxjlzMvJtW','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','uMvHzcbHy2nLC3mGzgvUAwvKigzVCIbZB3vYy2u6ia','zgvSzxrL','CMvHzgrPCG','D3jPDgvgAwXL'];a0_0x4b5e=function(){return _0x119d79;};return a0_0x4b5e();}
|
|
1
|
+
const a0_0x18e037=a0_0x5728;function a0_0x5728(_0x1fa7fb,_0x899089){_0x1fa7fb=_0x1fa7fb-0x132;const _0x340040=a0_0x3400();let _0x57288f=_0x340040[_0x1fa7fb];if(a0_0x5728['CfLqPj']===undefined){var _0x5301b0=function(_0x469bb0){const _0x593df5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x25e97a='',_0x1572ad='';for(let _0x19bfb9=0x0,_0x4ba44d,_0xcf7912,_0x210b8e=0x0;_0xcf7912=_0x469bb0['charAt'](_0x210b8e++);~_0xcf7912&&(_0x4ba44d=_0x19bfb9%0x4?_0x4ba44d*0x40+_0xcf7912:_0xcf7912,_0x19bfb9++%0x4)?_0x25e97a+=String['fromCharCode'](0xff&_0x4ba44d>>(-0x2*_0x19bfb9&0x6)):0x0){_0xcf7912=_0x593df5['indexOf'](_0xcf7912);}for(let _0x325aab=0x0,_0x21b3ca=_0x25e97a['length'];_0x325aab<_0x21b3ca;_0x325aab++){_0x1572ad+='%'+('00'+_0x25e97a['charCodeAt'](_0x325aab)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1572ad);};a0_0x5728['LYARtY']=_0x5301b0,a0_0x5728['Szzyao']={},a0_0x5728['CfLqPj']=!![];}const _0xa0f633=_0x340040[0x0],_0x5afdf1=_0x1fa7fb+_0xa0f633,_0x3c905e=a0_0x5728['Szzyao'][_0x5afdf1];return!_0x3c905e?(_0x57288f=a0_0x5728['LYARtY'](_0x57288f),a0_0x5728['Szzyao'][_0x5afdf1]=_0x57288f):_0x57288f=_0x3c905e,_0x57288f;}(function(_0x3b156b,_0x144115){const _0x36bb53=a0_0x5728,_0x491986=_0x3b156b();while(!![]){try{const _0x271238=parseInt(_0x36bb53(0x14a))/0x1*(parseInt(_0x36bb53(0x1c0))/0x2)+-parseInt(_0x36bb53(0x15a))/0x3+-parseInt(_0x36bb53(0x14f))/0x4*(-parseInt(_0x36bb53(0x1a3))/0x5)+parseInt(_0x36bb53(0x188))/0x6*(-parseInt(_0x36bb53(0x133))/0x7)+-parseInt(_0x36bb53(0x135))/0x8+parseInt(_0x36bb53(0x184))/0x9*(parseInt(_0x36bb53(0x13b))/0xa)+-parseInt(_0x36bb53(0x161))/0xb*(-parseInt(_0x36bb53(0x17f))/0xc);if(_0x271238===_0x144115)break;else _0x491986['push'](_0x491986['shift']());}catch(_0x64c809){_0x491986['push'](_0x491986['shift']());}}}(a0_0x3400,0xb3374));import{BaseTool}from'./baseTool.js';function a0_0x3400(){const _0x51172b=['DhLWzq','Bw92zq','y3jLyxrLuMvSyxrPDMvqyxrO','mwjjserPzq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','DMfSAwrHDgvszwfKqwnJzxnZ','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','DMfSAwrHDgvxCML0zufJy2vZCW','mtq4uNb4zvrz','B3v0Chv0ugf0Aa','z2v0t3bLCMf0Aw9UsgLZDg9YEq','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','AxnbC3LUyW','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','ywXSB3DLzev4DgvUC2LVBNm','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','AxnbyNnVBhv0zq','zgLYzwn0B3j5','z2v0v29YA2LUz0rPCMvJDg9YEq','mJi3nJK2n0PcrwjWzq','Cgf0Aa','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','C291CMnLugf0Aa','yxbWzw5KrMLSzq','yMXVy2TLzev4DgvUC2LVBNm','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','mZi5nZHnzK9QALq','AM9PBG','y3jLyxrLrgLYCW','zgvSzxrL','CMvZB2X2zvbHDgG','y29UDgvUDa','C3rHDhm','ywrKvg9iAxn0B3j5','zMLSDgvY','Bg9N','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','yxrPBwu','zMLSzq','igrVzxmGBM90igv4Axn0','uMv0CMLLDMvKihn0yxrZigzVCIa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','D29YA2LUz0rPCMvJDg9YEq','igfJy2vZCYbKzw5Pzwq6ia','zgvSzxrLrMLSzq','zxHPC3rZ','igj5DgvZigzYB20G','lMnTza','y3jLyxrLlwrPCG','uMvHzcbHy2nLC3mGzgvUAwvKigzVCIbZB3vYy2u6ia','v3jVDguG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','lMjHDa','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Dg9ju09tDhjPBMC','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','nZe0mhbYAxvdqq','rMfPBgvKihrVignVChKG','Bwf4rMLSzvnPEMu','BxrPBwu','BwTKAxi','ndvSquHuteu','C2L6zq','tw92zwqG','Bwf0y2HbBgW','nKDvEeTrDa','rMLSzsb0B28GBgfYz2u6ia','zgvZDfbHDgG','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','CMvHC29U','ywXSB3DLza','y3jLyxrLrgLYzwn0B3j5','DxrMoa','u291CMnLigzPBguGDg9VigXHCMDLoIa','AxntEw1IB2XPy0XPBMS','Bg9Nz2vY','Bw9Kzq','yxr0CMLIDxrLCW','zMLSzvbHDgG','zMLSzs1WyxrO','ChvZAa','z2v0rMLSzvn0yxrZ','qwn0Aw9Uia','v3jPDguGywnJzxnZigrLBMLLzdOG','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','zxHLy3v0zq','zxH0BMfTzq','DhjPBq','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','y29WEuzPBgu','D3jPDgu','CMvHza','mtq2nZq1ANP1CvDA','ihrVia','yM9VBgvHBG','y3jLyxrLlwrPCNm','DgLTzw91Da','A2v5CW','ywn0Aw9UCW','zw5JB2rPBMC','CMvHzezPBgu','tgLZDgvKia','igL0zw1ZigLUia','C3rHDa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','B3v0Chv0lxbHDgG','B2jQzwn0','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','rMfPBgvKihrVihDYAxrLigzPBguG','B3bLCMf0Aw9UsgLZDg9YEq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','BgLZDa','CM91BMq','D3jPDgvgAwXL','y3DK','C3rYAw5N','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','ywDLBNrjza','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','mtuWmtCWr0XdzKXx','AxneAxjLy3rVCNK','BwvZC2fNzq','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29Kzq','AxnbCNjHEq','yxbWzw5K','ody1mJC5ofnXuvfTra','igj5DgvZicHTyxGG','mJa1mZG1nNHwC2TwCa','C291CMnLlxbHDgG','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','igj5DgvZihrVia','BgvUz3rO','odiXotbkugHYBuC','zgvZDc1WyxrO','BM93','rMfPBgvKihrVigrLBgv0zsbMAwXLia','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','zgvIDwC','Bw92zuzPBgu','yxbWzw5Kvg9gAwXL','C2XPy2u','y29WEq','C3vIC3rYAw5N','lMv4zq'];a0_0x3400=function(){return _0x51172b;};return a0_0x3400();}import a0_0x25e97a from'../utilities/tagParser.js';import a0_0x1572ad from'../utilities/directoryAccessManager.js';import a0_0x19bfb9 from'fs/promises';import a0_0x4ba44d from'path';import a0_0xcf7912 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x210b8e={},_0x325aab=null){const _0x4d3acb=a0_0x5728;super(_0x210b8e,_0x325aab),this['requiresProject']=!![],this[_0x4d3acb(0x153)]=![],this[_0x4d3acb(0x1a7)]=_0x210b8e['timeout']||0x7530,this[_0x4d3acb(0x17a)]=_0x210b8e['maxConcurrentOperations']||0x5,this['maxFileSize']=_0x210b8e['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x210b8e['allowedExtensions']||null,this['blockedExtensions']=_0x210b8e[_0x4d3acb(0x15f)]||[_0x4d3acb(0x146),_0x4d3acb(0x17b),_0x4d3acb(0x176),'.scr','.com'],this['allowedDirectories']=_0x210b8e['allowedDirectories']||null,this[_0x4d3acb(0x1b5)]=[],this[_0x4d3acb(0x170)]=new a0_0x1572ad(_0x210b8e,_0x325aab);}['getDescription'](){const _0x112944=a0_0x5728;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[_0x112944(0x1b8)](this[_0x112944(0x181)]/0x400/0x400)+_0x112944(0x1bf);}['parseParameters'](_0x21b3ca){const _0x5528d8=a0_0x5728;try{const _0x30f386={},_0x5c1e8a=[];this['logger']?.[_0x5528d8(0x140)]('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x21b3ca['length'],'contentPreview':_0x21b3ca[_0x5528d8(0x145)](0x0,0xc8)});const _0xf23e1=['read',_0x5528d8(0x164),'copy','move',_0x5528d8(0x177),_0x5528d8(0x1b7),'exists',_0x5528d8(0x167),'append'];for(const _0x915640 of _0xf23e1){const _0x166a63=a0_0x25e97a['extractTagsWithAttributes'](_0x21b3ca,_0x915640);for(const _0x1442a7 of _0x166a63){const _0x51b1dc={'type':_0x915640,..._0x1442a7[_0x5528d8(0x194)]};_0x51b1dc[_0x5528d8(0x196)]&&(_0x51b1dc[_0x5528d8(0x195)]=_0x51b1dc['file-path'],delete _0x51b1dc[_0x5528d8(0x196)]),_0x51b1dc['output-path']&&(_0x51b1dc[_0x5528d8(0x150)]=_0x51b1dc[_0x5528d8(0x1b1)],delete _0x51b1dc['output-path']),_0x51b1dc[_0x5528d8(0x136)]&&(_0x51b1dc['sourcePath']=_0x51b1dc['source-path'],delete _0x51b1dc[_0x5528d8(0x136)]),_0x51b1dc[_0x5528d8(0x13c)]&&(_0x51b1dc['destPath']=_0x51b1dc[_0x5528d8(0x13c)],delete _0x51b1dc[_0x5528d8(0x13c)]),_0x51b1dc['create-dirs']&&(_0x51b1dc[_0x5528d8(0x163)]=_0x51b1dc['create-dirs']==='true',delete _0x51b1dc['create-dirs']),_0x5c1e8a['push'](_0x51b1dc);}}const _0x2081e4=_0x21b3ca['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x1eeaa9 of _0x2081e4){const _0x1eb120=new a0_0x25e97a(),_0x35e1a4=_0x1eb120['parseAttributes'](_0x1eeaa9[0x1]),_0x4795d4=_0x1eeaa9[0x2][_0x5528d8(0x19e)](),_0x451063={'type':_0x5528d8(0x1a1),'content':_0x4795d4,..._0x35e1a4};_0x451063[_0x5528d8(0x1b1)]&&(_0x451063[_0x5528d8(0x150)]=_0x451063[_0x5528d8(0x1b1)],delete _0x451063[_0x5528d8(0x1b1)]),_0x451063[_0x5528d8(0x1a6)]&&(_0x451063[_0x5528d8(0x163)]=_0x451063[_0x5528d8(0x1a6)]==='true',delete _0x451063['create-dirs']),_0x5c1e8a['push'](_0x451063);}const _0x4a0d1f=_0x21b3ca[_0x5528d8(0x187)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x11ae04 of _0x4a0d1f){const _0x5c615c=new a0_0x25e97a(),_0x12e1f0=_0x5c615c['parseAttributes'](_0x11ae04[0x1]),_0x7b941a=_0x11ae04[0x2][_0x5528d8(0x19e)](),_0x3908bf={'type':_0x5528d8(0x132),'content':_0x7b941a,..._0x12e1f0};_0x3908bf[_0x5528d8(0x196)]&&(_0x3908bf['filePath']=_0x3908bf['file-path'],delete _0x3908bf[_0x5528d8(0x196)]),_0x5c1e8a[_0x5528d8(0x197)](_0x3908bf);}return _0x30f386[_0x5528d8(0x1a9)]=_0x5c1e8a,_0x30f386['rawContent']=_0x21b3ca[_0x5528d8(0x19e)](),this[_0x5528d8(0x192)]?.['debug']('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0x5c1e8a['length'],'actionTypes':_0x5c1e8a['map'](_0x387cf9=>_0x387cf9['type']),'actions':_0x5c1e8a['map'](_0x1d39c2=>({'type':_0x1d39c2['type'],'filePath':_0x1d39c2['filePath'],'outputPath':_0x1d39c2[_0x5528d8(0x150)],'hasContent':!!_0x1d39c2['content']}))}),_0x30f386;}catch(_0x18fddd){throw new Error(_0x5528d8(0x16b)+_0x18fddd[_0x5528d8(0x1c2)]);}}[a0_0x18e037(0x17c)](){const _0x3c064d=a0_0x18e037;return[_0x3c064d(0x1a9)];}[a0_0x18e037(0x14b)](_0x5bc681){const _0x1ead7f=a0_0x18e037,_0x160369=[];if(!_0x5bc681['actions']||!Array[_0x1ead7f(0x1c5)](_0x5bc681['actions'])||_0x5bc681['actions']['length']===0x0)_0x160369[_0x1ead7f(0x197)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x47a3fb,_0x4c5567]of _0x5bc681[_0x1ead7f(0x1a9)]['entries']()){if(!_0x4c5567['type']){_0x160369['push']('Action\x20'+(_0x47a3fb+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x4c5567[_0x1ead7f(0x147)]){case _0x1ead7f(0x1a2):case'delete':case _0x1ead7f(0x174):case'stats':!_0x4c5567[_0x1ead7f(0x195)]&&_0x160369[_0x1ead7f(0x197)](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+_0x1ead7f(0x154)+_0x4c5567[_0x1ead7f(0x147)]);break;case _0x1ead7f(0x1a1):!_0x4c5567['outputPath']&&_0x160369['push'](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x4c5567[_0x1ead7f(0x166)]&&_0x4c5567[_0x1ead7f(0x166)]!==''&&_0x160369['push'](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0x1ead7f(0x132):!_0x4c5567[_0x1ead7f(0x195)]&&_0x160369[_0x1ead7f(0x197)]('Action\x20'+(_0x47a3fb+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x4c5567[_0x1ead7f(0x166)]&&_0x4c5567['content']!==''&&_0x160369['push'](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+_0x1ead7f(0x17e));break;case _0x1ead7f(0x144):case'move':!_0x4c5567['sourcePath']&&_0x160369[_0x1ead7f(0x197)]('Action\x20'+(_0x47a3fb+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x4c5567[_0x1ead7f(0x147)]);!_0x4c5567['destPath']&&_0x160369['push'](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x4c5567['type']);break;case'create-dir':case _0x1ead7f(0x1b7):!_0x4c5567[_0x1ead7f(0x158)]&&_0x160369['push']('Action\x20'+(_0x47a3fb+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x4c5567[_0x1ead7f(0x147)]);break;default:_0x160369[_0x1ead7f(0x197)](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x4c5567[_0x1ead7f(0x147)]);}_0x4c5567[_0x1ead7f(0x195)]&&!this[_0x1ead7f(0x156)](_0x4c5567['filePath'])&&_0x160369[_0x1ead7f(0x197)](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+_0x1ead7f(0x1b0)+a0_0x4ba44d[_0x1ead7f(0x19d)](_0x4c5567[_0x1ead7f(0x195)])),_0x4c5567['outputPath']&&!this[_0x1ead7f(0x156)](_0x4c5567[_0x1ead7f(0x150)])&&_0x160369['push'](_0x1ead7f(0x199)+(_0x47a3fb+0x1)+_0x1ead7f(0x1b0)+a0_0x4ba44d[_0x1ead7f(0x19d)](_0x4c5567['outputPath']));}return{'valid':_0x160369[_0x1ead7f(0x13a)]===0x0,'errors':_0x160369};}async[a0_0x18e037(0x19c)](_0x1d9642,_0x38eef7){const _0x3dfd74=a0_0x18e037;if(!_0x1d9642||typeof _0x1d9642!==_0x3dfd74(0x1b2))throw new Error(_0x3dfd74(0x15c));const {actions:_0x10af5c}=_0x1d9642;if(!_0x10af5c)throw new Error(_0x3dfd74(0x1af)+JSON['stringify'](Object[_0x3dfd74(0x1a8)](_0x1d9642)));if(!Array['isArray'](_0x10af5c))throw new Error(_0x3dfd74(0x1bd)+typeof _0x10af5c);if(_0x10af5c['length']===0x0)throw new Error(_0x3dfd74(0x1b3));const {projectDir:_0xbda88d,agentId:_0x56e9db,directoryAccess:_0x13f5fa}=_0x38eef7,_0x3d79c3=_0x13f5fa||this[_0x3dfd74(0x170)]['createDirectoryAccess']({'workingDirectory':_0xbda88d||process[_0x3dfd74(0x1ba)](),'writeEnabledDirectories':[_0xbda88d||process[_0x3dfd74(0x1ba)]()],'restrictToProject':!![]});_0x13f5fa&&_0x13f5fa[_0x3dfd74(0x171)]?(console['log']('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x13f5fa['workingDirectory']),console['log'](_0x3dfd74(0x18b),JSON['stringify'](_0x13f5fa,null,0x2))):(console[_0x3dfd74(0x16a)](_0x3dfd74(0x160),_0xbda88d||process['cwd']()),console[_0x3dfd74(0x16a)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x13f5fa),console[_0x3dfd74(0x16a)]('FileSystem\x20DEBUG:\x20projectDir\x20is:',_0xbda88d));const _0x437aea=[];for(const _0x3b7d26 of _0x10af5c){try{let _0x34ed2c;switch(_0x3b7d26['type']){case'read':_0x34ed2c=await this[_0x3dfd74(0x1ab)](_0x3b7d26[_0x3dfd74(0x195)],_0x3d79c3,_0x3b7d26['encoding']);break;case'write':_0x34ed2c=await this['writeFile'](_0x3b7d26['outputPath'],_0x3b7d26[_0x3dfd74(0x166)],_0x3d79c3,{'encoding':_0x3b7d26[_0x3dfd74(0x1aa)],'createDirs':_0x3b7d26[_0x3dfd74(0x163)]});break;case _0x3dfd74(0x132):_0x34ed2c=await this['appendToFile'](_0x3b7d26['filePath'],_0x3b7d26[_0x3dfd74(0x166)],_0x3d79c3,_0x3b7d26[_0x3dfd74(0x1aa)]);break;case'delete':_0x34ed2c=await this[_0x3dfd74(0x173)](_0x3b7d26['filePath'],_0x3d79c3);break;case _0x3dfd74(0x144):_0x34ed2c=await this[_0x3dfd74(0x1a0)](_0x3b7d26[_0x3dfd74(0x15d)],_0x3b7d26[_0x3dfd74(0x18a)],_0x3d79c3);break;case'move':_0x34ed2c=await this[_0x3dfd74(0x141)](_0x3b7d26[_0x3dfd74(0x15d)],_0x3b7d26[_0x3dfd74(0x18a)],_0x3d79c3);break;case'create-dir':_0x34ed2c=await this[_0x3dfd74(0x18e)](_0x3b7d26['directory'],_0x3d79c3);break;case'list':_0x34ed2c=await this['listDirectory'](_0x3b7d26[_0x3dfd74(0x158)],_0x3d79c3);break;case'exists':_0x34ed2c=await this['checkExists'](_0x3b7d26['filePath'],_0x3d79c3);break;case _0x3dfd74(0x167):_0x34ed2c=await this[_0x3dfd74(0x198)](_0x3b7d26['filePath'],_0x3d79c3);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x3b7d26['type']);}_0x437aea[_0x3dfd74(0x197)](_0x34ed2c),this['addToHistory'](_0x3b7d26,_0x34ed2c,_0x38eef7[_0x3dfd74(0x1be)]);}catch(_0x53bcc9){const _0x524308={'success':![],'action':_0x3b7d26['type'],'error':_0x53bcc9[_0x3dfd74(0x1c2)],'filePath':_0x3b7d26['filePath']||_0x3b7d26['outputPath']||_0x3b7d26[_0x3dfd74(0x158)]};_0x437aea[_0x3dfd74(0x197)](_0x524308),this[_0x3dfd74(0x168)](_0x3b7d26,_0x524308,_0x38eef7[_0x3dfd74(0x1be)]);}}return{'success':!![],'actions':_0x437aea,'executedActions':_0x10af5c[_0x3dfd74(0x13a)],'toolUsed':'filesys'};}async['readFile'](_0x353a20,_0x234921,_0x13b996='utf8'){const _0x3e469b=a0_0x18e037,_0x139b5e=this['directoryAccessManager']['getWorkingDirectory'](_0x234921),_0x212836=this['resolvePath'](_0x353a20,_0x139b5e),_0x15b2e9=this['directoryAccessManager']['validateReadAccess'](_0x212836,_0x234921);if(!_0x15b2e9['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x15b2e9[_0x3e469b(0x18c)]+'\x20('+_0x15b2e9[_0x3e469b(0x15b)]+')');try{const _0x2754c3=await a0_0x19bfb9['stat'](_0x212836);if(_0x2754c3['size']>this['maxFileSize'])throw new Error(_0x3e469b(0x189)+_0x2754c3['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x18432a=await a0_0x19bfb9['readFile'](_0x212836,_0x13b996);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x3e469b(0x149)](_0x212836,_0x234921),'content':_0x18432a,'size':_0x2754c3[_0x3e469b(0x185)],'encoding':_0x13b996,'lastModified':_0x2754c3['mtime']['toISOString'](),'message':'Read\x20'+_0x2754c3['size']+_0x3e469b(0x175)+_0x353a20};}catch(_0x3c8d07){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x353a20+':\x20'+_0x3c8d07['message']);}}async[a0_0x18e037(0x1b9)](_0x2cf517,_0x21ac00,_0x326a07,_0x37245d={}){const _0x1c51cb=a0_0x18e037,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x37245d,_0x446eda=this[_0x1c51cb(0x170)]['getWorkingDirectory'](_0x326a07),_0x1b18b9=this['resolvePath'](_0x2cf517,_0x446eda),_0x331128=this[_0x1c51cb(0x170)][_0x1c51cb(0x14e)](_0x1b18b9,_0x326a07);if(!_0x331128['allowed'])throw new Error(_0x1c51cb(0x19a)+_0x331128['reason']+'\x20('+_0x331128['path']+')');try{const _0x4e054a=Buffer['byteLength'](_0x21ac00,encoding);if(_0x4e054a>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x4e054a+_0x1c51cb(0x134)+this[_0x1c51cb(0x181)]+')');if(createDirs){const _0x2d1de5=a0_0x4ba44d['dirname'](_0x1b18b9);await a0_0x19bfb9['mkdir'](_0x2d1de5,{'recursive':!![]});}let _0x3cda2c=null;try{await a0_0x19bfb9['access'](_0x1b18b9),_0x3cda2c=_0x1b18b9+'.backup-'+Date[_0x1c51cb(0x13d)](),await a0_0x19bfb9[_0x1c51cb(0x1a0)](_0x1b18b9,_0x3cda2c);}catch{}await a0_0x19bfb9[_0x1c51cb(0x1b9)](_0x1b18b9,_0x21ac00,encoding);const _0x157150=await a0_0x19bfb9[_0x1c51cb(0x1ae)](_0x1b18b9),_0x597c09=this['directoryAccessManager']['createRelativePath'](_0x1b18b9,_0x326a07);return{'success':!![],'action':_0x1c51cb(0x1a1),'outputPath':_0x597c09,'fullPath':_0x1b18b9,'size':_0x157150['size'],'encoding':encoding,'backupPath':_0x3cda2c?this[_0x1c51cb(0x170)]['createRelativePath'](_0x3cda2c,_0x326a07):null,'backupFullPath':_0x3cda2c||null,'message':_0x1c51cb(0x179)+_0x157150[_0x1c51cb(0x185)]+'\x20bytes\x20to\x20'+_0x1b18b9};}catch(_0x57c688){throw new Error(_0x1c51cb(0x1b4)+_0x1b18b9+':\x20'+_0x57c688[_0x1c51cb(0x1c2)]);}}async[a0_0x18e037(0x142)](_0x46e144,_0x4eed58,_0xf2cb23,_0x3450fa=a0_0x18e037(0x18f)){const _0x241ad8=a0_0x18e037,_0x31532d=this[_0x241ad8(0x170)]['getWorkingDirectory'](_0xf2cb23),_0x57a134=this['resolvePath'](_0x46e144,_0x31532d),_0x3a4611=this['directoryAccessManager'][_0x241ad8(0x14e)](_0x57a134,_0xf2cb23);if(!_0x3a4611['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x3a4611[_0x241ad8(0x18c)]+'\x20('+_0x3a4611[_0x241ad8(0x15b)]+')');try{let _0x42d0d0=0x0;try{const _0x254db7=await a0_0x19bfb9['stat'](_0x57a134);_0x42d0d0=_0x254db7[_0x241ad8(0x185)];}catch{}const _0x140e85=Buffer['byteLength'](_0x4eed58,_0x3450fa);if(_0x42d0d0+_0x140e85>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x42d0d0+_0x140e85)+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');await a0_0x19bfb9[_0x241ad8(0x15e)](_0x57a134,_0x4eed58,_0x3450fa);const _0x1d82d3=await a0_0x19bfb9[_0x241ad8(0x1ae)](_0x57a134),_0x51f4d1=this['directoryAccessManager']['createRelativePath'](_0x57a134,_0xf2cb23);return{'success':!![],'action':_0x241ad8(0x132),'filePath':_0x51f4d1,'fullPath':_0x57a134,'appendedBytes':_0x140e85,'totalSize':_0x1d82d3['size'],'encoding':_0x3450fa,'message':'Appended\x20'+_0x140e85+_0x241ad8(0x139)+_0x57a134};}catch(_0x5c7681){throw new Error(_0x241ad8(0x152)+_0x57a134+':\x20'+_0x5c7681[_0x241ad8(0x1c2)]);}}async['deleteFile'](_0x672827,_0x23eb9a){const _0x12a8d7=a0_0x18e037,_0x71424b=this[_0x12a8d7(0x170)]['getWorkingDirectory'](_0x23eb9a),_0x3f60eb=this['resolvePath'](_0x672827,_0x71424b),_0x20a8e1=this['directoryAccessManager'][_0x12a8d7(0x14e)](_0x3f60eb,_0x23eb9a);if(!_0x20a8e1[_0x12a8d7(0x18d)])throw new Error(_0x12a8d7(0x14d)+_0x20a8e1[_0x12a8d7(0x18c)]+'\x20('+_0x20a8e1[_0x12a8d7(0x15b)]+')');try{const _0x44facb=await a0_0x19bfb9[_0x12a8d7(0x1ae)](_0x3f60eb),_0x10b683=_0x3f60eb+'.deleted-backup-'+Date['now']();await a0_0x19bfb9['copyFile'](_0x3f60eb,_0x10b683),await a0_0x19bfb9['unlink'](_0x3f60eb);const _0x1b091b=this['directoryAccessManager']['createRelativePath'](_0x3f60eb,_0x23eb9a),_0x3f3b55=this['directoryAccessManager'][_0x12a8d7(0x149)](_0x10b683,_0x23eb9a);return{'success':!![],'action':_0x12a8d7(0x164),'filePath':_0x1b091b,'fullPath':_0x3f60eb,'size':_0x44facb[_0x12a8d7(0x185)],'backupPath':_0x3f3b55,'backupFullPath':_0x10b683,'message':'Deleted\x20'+_0x3f60eb+'\x20(backup\x20created)'};}catch(_0x341638){throw new Error(_0x12a8d7(0x13e)+_0x3f60eb+':\x20'+_0x341638[_0x12a8d7(0x1c2)]);}}async[a0_0x18e037(0x1a0)](_0x4df92f,_0x189f53,_0x2d2582){const _0x317dac=a0_0x18e037,_0x5358c7=this['directoryAccessManager']['getWorkingDirectory'](_0x2d2582),_0x25fb71=this['resolvePath'](_0x4df92f,_0x5358c7),_0x6f4748=this[_0x317dac(0x165)](_0x189f53,_0x5358c7),_0x5b15d2=this[_0x317dac(0x170)]['validateReadAccess'](_0x25fb71,_0x2d2582);if(!_0x5b15d2[_0x317dac(0x18d)])throw new Error(_0x317dac(0x138)+_0x5b15d2[_0x317dac(0x18c)]+'\x20('+_0x5b15d2['path']+')');const _0x41f91d=this['directoryAccessManager'][_0x317dac(0x14e)](_0x6f4748,_0x2d2582);if(!_0x41f91d['allowed'])throw new Error(_0x317dac(0x137)+_0x41f91d['reason']+'\x20('+_0x41f91d['path']+')');try{const _0x2d1ceb=await a0_0x19bfb9['stat'](_0x25fb71);if(_0x2d1ceb['size']>this[_0x317dac(0x181)])throw new Error(_0x317dac(0x190)+_0x2d1ceb[_0x317dac(0x185)]+'\x20bytes');const _0x529e35=a0_0x4ba44d['dirname'](_0x6f4748);await a0_0x19bfb9[_0x317dac(0x183)](_0x529e35,{'recursive':!![]}),await a0_0x19bfb9[_0x317dac(0x1a0)](_0x25fb71,_0x6f4748);const _0x4b5c55=this[_0x317dac(0x170)]['createRelativePath'](_0x25fb71,_0x2d2582),_0x213656=this[_0x317dac(0x170)][_0x317dac(0x149)](_0x6f4748,_0x2d2582);return{'success':!![],'action':_0x317dac(0x144),'sourcePath':_0x4b5c55,'destPath':_0x213656,'sourceFullPath':_0x25fb71,'destFullPath':_0x6f4748,'size':_0x2d1ceb[_0x317dac(0x185)],'message':'Copied\x20'+_0x25fb71+_0x317dac(0x1a4)+_0x6f4748};}catch(_0x17679c){throw new Error(_0x317dac(0x180)+_0x25fb71+_0x317dac(0x1a4)+_0x6f4748+':\x20'+_0x17679c[_0x317dac(0x1c2)]);}}async['moveFile'](_0x104aa9,_0x4eea5d,_0x235cf3){const _0x2e91b2=a0_0x18e037,_0x222fad=this['directoryAccessManager']['getWorkingDirectory'](_0x235cf3),_0x192fb9=this['resolvePath'](_0x104aa9,_0x222fad),_0x3dc780=this[_0x2e91b2(0x165)](_0x4eea5d,_0x222fad),_0x29a44b=this[_0x2e91b2(0x170)]['validateReadAccess'](_0x192fb9,_0x235cf3);if(!_0x29a44b[_0x2e91b2(0x18d)])throw new Error(_0x2e91b2(0x178)+_0x29a44b[_0x2e91b2(0x18c)]+'\x20('+_0x29a44b[_0x2e91b2(0x15b)]+')');const _0x3afbc0=this[_0x2e91b2(0x170)][_0x2e91b2(0x14e)](_0x3dc780,_0x235cf3);if(!_0x3afbc0[_0x2e91b2(0x18d)])throw new Error(_0x2e91b2(0x19f)+_0x3afbc0['reason']+'\x20('+_0x3afbc0['path']+')');try{const _0x256c16=await a0_0x19bfb9['stat'](_0x192fb9),_0x9980c2=a0_0x4ba44d['dirname'](_0x3dc780);await a0_0x19bfb9['mkdir'](_0x9980c2,{'recursive':!![]}),await a0_0x19bfb9['rename'](_0x192fb9,_0x3dc780);const _0x4026b6=this[_0x2e91b2(0x170)][_0x2e91b2(0x149)](_0x192fb9,_0x235cf3),_0x1e44a9=this['directoryAccessManager']['createRelativePath'](_0x3dc780,_0x235cf3);return{'success':!![],'action':'move','sourcePath':_0x4026b6,'destPath':_0x1e44a9,'fullSourcePath':_0x192fb9,'fullDestPath':_0x3dc780,'size':_0x256c16['size'],'message':_0x2e91b2(0x186)+_0x104aa9+'\x20to\x20'+_0x4eea5d};}catch(_0x5a8ebd){throw new Error('Failed\x20to\x20move\x20'+_0x104aa9+_0x2e91b2(0x1a4)+_0x4eea5d+':\x20'+_0x5a8ebd[_0x2e91b2(0x1c2)]);}}async[a0_0x18e037(0x18e)](_0x312cab,_0xda3dbb){const _0x2ad558=a0_0x18e037,_0x30c49a=this['directoryAccessManager']['getWorkingDirectory'](_0xda3dbb),_0x272ad6=this[_0x2ad558(0x165)](_0x312cab,_0x30c49a),_0xbb4a76=this[_0x2ad558(0x170)]['validateWriteAccess'](_0x272ad6,_0xda3dbb);if(!_0xbb4a76[_0x2ad558(0x18d)])throw new Error('Write\x20access\x20denied:\x20'+_0xbb4a76['reason']+'\x20('+_0xbb4a76['path']+')');try{await a0_0x19bfb9[_0x2ad558(0x183)](_0x272ad6,{'recursive':!![]});const _0x70f17=this[_0x2ad558(0x170)][_0x2ad558(0x149)](_0x272ad6,_0xda3dbb);return{'success':!![],'action':_0x2ad558(0x177),'directory':_0x70f17,'fullPath':_0x272ad6,'message':'Created\x20directory\x20'+_0x312cab};}catch(_0xc39300){throw new Error(_0x2ad558(0x1bc)+_0x312cab+':\x20'+_0xc39300[_0x2ad558(0x1c2)]);}}async['listDirectory'](_0x3b2173,_0x2302f4){const _0x1c4e85=a0_0x18e037,_0x2169af=this['directoryAccessManager'][_0x1c4e85(0x159)](_0x2302f4),_0x339d7e=this['resolvePath'](_0x3b2173,_0x2169af),_0x5cd2c1=this[_0x1c4e85(0x170)][_0x1c4e85(0x14c)](_0x339d7e,_0x2302f4);if(!_0x5cd2c1['allowed'])throw new Error(_0x1c4e85(0x1c3)+_0x5cd2c1[_0x1c4e85(0x18c)]+'\x20('+_0x5cd2c1['path']+')');try{const _0x10031e=await a0_0x19bfb9['readdir'](_0x339d7e,{'withFileTypes':!![]}),_0x324595=[];for(const _0x5c7429 of _0x10031e){const _0xf1b49e=a0_0x4ba44d[_0x1c4e85(0x162)](_0x339d7e,_0x5c7429['name']),_0x368810=await a0_0x19bfb9[_0x1c4e85(0x1ae)](_0xf1b49e);_0x324595[_0x1c4e85(0x197)]({'name':_0x5c7429['name'],'type':_0x5c7429[_0x1c4e85(0x1c1)]()?_0x1c4e85(0x158):'file','size':_0x5c7429['isFile']()?_0x368810['size']:undefined,'lastModified':_0x368810[_0x1c4e85(0x182)]['toISOString'](),'permissions':_0x368810[_0x1c4e85(0x193)],'isSymlink':_0x5c7429['isSymbolicLink']()});}const _0x23dc2c=this[_0x1c4e85(0x170)]['createRelativePath'](_0x339d7e,_0x2302f4);return{'success':!![],'action':_0x1c4e85(0x1b7),'directory':_0x23dc2c,'fullPath':_0x339d7e,'contents':_0x324595,'totalItems':_0x324595['length'],'directories':_0x324595[_0x1c4e85(0x169)](_0x1e27e1=>_0x1e27e1['type']==='directory')['length'],'files':_0x324595[_0x1c4e85(0x169)](_0x12bb96=>_0x12bb96['type']==='file')['length'],'message':_0x1c4e85(0x1ac)+_0x324595['length']+_0x1c4e85(0x1ad)+_0x3b2173};}catch(_0x1ebf64){throw new Error(_0x1c4e85(0x13f)+_0x3b2173+':\x20'+_0x1ebf64[_0x1c4e85(0x1c2)]);}}async['checkExists'](_0x360371,_0x8021fa){const _0xf55693=a0_0x18e037,_0x493aef=this['directoryAccessManager']['getWorkingDirectory'](_0x8021fa),_0x1a6f23=this[_0xf55693(0x165)](_0x360371,_0x493aef),_0x464498=this['directoryAccessManager']['validateReadAccess'](_0x1a6f23,_0x8021fa);if(!_0x464498[_0xf55693(0x18d)])throw new Error(_0xf55693(0x1c3)+_0x464498['reason']+'\x20('+_0x464498[_0xf55693(0x15b)]+')');try{const _0x1738d1=await a0_0x19bfb9[_0xf55693(0x1ae)](_0x1a6f23),_0x15a2a1=this['directoryAccessManager']['createRelativePath'](_0x1a6f23,_0x8021fa);return{'success':!![],'action':_0xf55693(0x174),'filePath':_0x15a2a1,'fullPath':_0x1a6f23,'exists':!![],'type':_0x1738d1['isDirectory']()?'directory':_0xf55693(0x16d),'message':_0x360371+'\x20exists\x20as\x20'+(_0x1738d1['isDirectory']()?'directory':_0xf55693(0x16d))};}catch(_0x4ab062){if(_0x4ab062[_0xf55693(0x1c4)]==='ENOENT'){const _0x53a2e3=this[_0xf55693(0x170)][_0xf55693(0x149)](_0x1a6f23,_0x8021fa);return{'success':!![],'action':'exists','filePath':_0x53a2e3,'fullPath':_0x1a6f23,'exists':![],'message':_0x360371+_0xf55693(0x16e)};}throw new Error(_0xf55693(0x19b)+_0x360371+':\x20'+_0x4ab062[_0xf55693(0x1c2)]);}}async[a0_0x18e037(0x198)](_0x43947d,_0x26b61d){const _0x3a8e74=a0_0x18e037,_0x1a0a1e=this[_0x3a8e74(0x170)][_0x3a8e74(0x159)](_0x26b61d),_0x23d86e=this['resolvePath'](_0x43947d,_0x1a0a1e),_0x27a8c6=this[_0x3a8e74(0x170)][_0x3a8e74(0x14c)](_0x23d86e,_0x26b61d);if(!_0x27a8c6['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x27a8c6[_0x3a8e74(0x18c)]+'\x20('+_0x27a8c6[_0x3a8e74(0x15b)]+')');try{const _0x18edbd=await a0_0x19bfb9['stat'](_0x23d86e),_0x25ca0f=this[_0x3a8e74(0x170)][_0x3a8e74(0x149)](_0x23d86e,_0x26b61d);return{'success':!![],'action':_0x3a8e74(0x167),'filePath':_0x25ca0f,'fullPath':_0x23d86e,'stats':{'size':_0x18edbd['size'],'type':_0x18edbd['isDirectory']()?'directory':_0x3a8e74(0x16d),'lastModified':_0x18edbd['mtime'][_0x3a8e74(0x17d)](),'lastAccessed':_0x18edbd[_0x3a8e74(0x16c)][_0x3a8e74(0x17d)](),'created':_0x18edbd['birthtime']['toISOString'](),'permissions':_0x18edbd[_0x3a8e74(0x193)],'isSymlink':_0x18edbd[_0x3a8e74(0x191)]()},'message':_0x3a8e74(0x16f)+_0x43947d};}catch(_0x64660c){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x43947d+':\x20'+_0x64660c[_0x3a8e74(0x1c2)]);}}['resolvePath'](_0x91bcf5,_0x46ce7e){const _0x320af5=a0_0x18e037;if(a0_0x4ba44d[_0x320af5(0x157)](_0x91bcf5))return a0_0x4ba44d['normalize'](_0x91bcf5);return a0_0x4ba44d['resolve'](_0x46ce7e,_0x91bcf5);}['validatePathAccess'](_0x1620ea,_0x381560,_0x149d63='read'){const _0x41c10d=a0_0x18e037,_0x41332a=_0x149d63===_0x41c10d(0x1a1)?this['directoryAccessManager']['validateWriteAccess'](_0x1620ea,_0x381560):this[_0x41c10d(0x170)][_0x41c10d(0x14c)](_0x1620ea,_0x381560);if(!_0x41332a['allowed'])throw new Error(_0x149d63+_0x41c10d(0x172)+_0x41332a['reason']+'\x20('+_0x41332a[_0x41c10d(0x15b)]+')');return _0x41332a;}[a0_0x18e037(0x156)](_0x3b35c5){const _0x461922=a0_0x18e037,_0xe433d5=a0_0x4ba44d['extname'](_0x3b35c5)['toLowerCase']();if(this['blockedExtensions']['includes'](_0xe433d5))return![];if(this[_0x461922(0x155)]&&!this['allowedExtensions']['includes'](_0xe433d5))return![];return!![];}['addToHistory'](_0x1856d2,_0x364d13,_0x51f013){const _0x5e5bd4=a0_0x18e037,_0x321984={'timestamp':new Date()[_0x5e5bd4(0x17d)](),'agentId':_0x51f013,'action':_0x1856d2[_0x5e5bd4(0x147)],'filePath':_0x1856d2[_0x5e5bd4(0x195)]||_0x1856d2['outputPath']||_0x1856d2[_0x5e5bd4(0x158)],'success':_0x364d13['success'],'size':_0x364d13['size']};this['operationHistory'][_0x5e5bd4(0x197)](_0x321984),this[_0x5e5bd4(0x1b5)][_0x5e5bd4(0x13a)]>0xc8&&(this[_0x5e5bd4(0x1b5)]=this[_0x5e5bd4(0x1b5)][_0x5e5bd4(0x143)](-0xc8));}[a0_0x18e037(0x1b6)](){const _0x104bb5=a0_0x18e037;return['read',_0x104bb5(0x1a1),'append',_0x104bb5(0x164),_0x104bb5(0x144),_0x104bb5(0x148),_0x104bb5(0x177),'list','exists',_0x104bb5(0x167)];}['getParameterSchema'](){const _0x31cbfd=a0_0x18e037;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x31cbfd(0x1b2),'properties':{'type':{'type':_0x31cbfd(0x1bb),'enum':this[_0x31cbfd(0x1b6)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':_0x31cbfd(0x1bb)},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':'string'},'encoding':{'type':'string'},'createDirs':{'type':_0x31cbfd(0x1a5)}},'required':[_0x31cbfd(0x147)]}}},'required':[_0x31cbfd(0x1a9)]};}[a0_0x18e037(0x151)](_0x21e410=null){const _0x8f0f1a=a0_0x18e037;if(_0x21e410)return this['operationHistory'][_0x8f0f1a(0x169)](_0x421e4c=>_0x421e4c[_0x8f0f1a(0x1be)]===_0x21e410);return[...this['operationHistory']];}}export default FileSystemTool;
|