@loxia-labs/loxia-autopilot-one 1.0.15 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-CRkOpV4k.css +1 -0
- package/web-ui/build/static/{index-CR8edPA3.js → index-DzOU48ux.js} +98 -79
- package/web-ui/build/static/index-uN7nOVvZ.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2c6f0c=a0_0x3177;function a0_0x32e9(){const _0x218026=['Aw5JBhvKzurLDG','BNbTifDbuK4','Bgf0zxn0','zML4','BwLUB3i','yNvPBgq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','zw50CMLLCW','CgfYC2u','rMfPBgvKihrVignYzwf0zsbIywnRDxa','Dg9mB3DLCKnHC2u','ugfJA2fNzsbUB3qGzM91BMq6ia','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','x3bHCNnLq29TCgXLEfjHBMDL','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','igzVCIa','DxrMltG','Dhj1zq','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','B3bLCMf0B3i','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','Bg9Nz2vY','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','ChvZAa','tufyx0rfuevorevoq0LfuW','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','Aw5JBhvKzxm','otK2nJuXmg1MrMzsAq','AM9PBG','zgvIDwC','x2LZq29TCgXLEfjHBMDL','rxjYB3iGy2HLy2TPBMCG','C3bSAxq','BwfW','rM91BMqG','DhjPBq','nJe5mdi3mJbdEKTdzKC','tw9KztOG','DhLWzq','revgqvvmvf9nt0rf','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','cIaG','CgTN','z2v0rgvZy3jPChrPB24','D2fYBG','mteWodqWmJrdCg95u3q','uMv0CNKG','DMvYC2LVBG','Aw5MBW','ChjLCMvSzwfZzq','CMvHzezPBgu','CMfUz2vZ','zgLZDc10ywDZ','x2zLDgnOugfJA2fNzuLUzM8','C3rYAw5N','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','C3rHDhvZ','Ec1Yyw5Nzq','CgfJA2fNzs5QC29U','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','zgv2rgvWzw5Kzw5JAwvZ','mtaWnJy0mdbKCNP2ufu','y3DK','x2nYzwf0zujHy2T1Ca','nZmZmdGWzfvpCMjI','BwvZC2fNzq','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','y2HLy2S','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','AxnbyNnVBhv0zq','A2v5CW','ANnVBG','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','mtiWnZa2nwHwEgfbqq','C29Tzq','mKn0yxrSyq','mtbpB2f4uLC','zxHLy3v0zq','C3rHDhvZvgv4Da','C2LNBMfS','4PQG77Ipica','lMjHy2T1Cc5QC29U','ChjLzML4','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','BgvUz3rO','BwfQB3i','zxjYB3i','ywnJzxnZ','yM9VBgvHBG','Bw9Kzq','mZq2ndC3nNDwq0vpyq','x2nVBxbHCMvwzxjZAw9UCW','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','x3bHCNnLvMvYC2LVBLjHBMDL','C3rHCNrZv2L0Aa','BNbTigXZigzHAwXLzdO','uKvuuLLFrevmqvK','x3nHDgLZzMLLC1jHBMDL','tufyx0nptKnvuLjftLrFq0Hfq0Tt','icdIGkiG','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','DgvZDa','zxHLyW','C2XPy2u','sfruuca','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','CgfYC2vqyxjHBwv0zxjZ','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','x2LZvxbKyxrLqxzHAwXHyMXL','tLbnx0nptu1btKrFveLnru9vva','8j+tIIbgB3vUzca','BMv3vMvYC2LVBG','x2nOzwnRrgvWzw5Kzw5JAwvZ','Cgf0Aa','C3rYAw5NAwz5','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','Cgf0y2G','Bwf0y2G','zgvWzw5Kzw5JAwvZ','zM9YrwfJAa','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','B2jQzwn0','BM9YBwfSAxPL','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','Bwf4','tLbnx1jfr0Ltvfjzx1vsta'];a0_0x32e9=function(){return _0x218026;};return a0_0x32e9();}(function(_0x2fb4a1,_0x187f73){const _0x542364=a0_0x3177,_0x43270a=_0x2fb4a1();while(!![]){try{const _0x36ba59=parseInt(_0x542364(0x1cd))/0x1+-parseInt(_0x542364(0x1d8))/0x2*(parseInt(_0x542364(0x1d6))/0x3)+-parseInt(_0x542364(0x166))/0x4*(parseInt(_0x542364(0x1d9))/0x5)+-parseInt(_0x542364(0x1a8))/0x6+-parseInt(_0x542364(0x1ba))/0x7+-parseInt(_0x542364(0x1ca))/0x8+parseInt(_0x542364(0x1b1))/0x9;if(_0x36ba59===_0x187f73)break;else _0x43270a['push'](_0x43270a['shift']());}catch(_0x180076){_0x43270a['push'](_0x43270a['shift']());}}}(a0_0x32e9,0xedb20));import{promises as a0_0x4b8413}from'fs';import a0_0x3e31f1 from'path';import{exec as a0_0x421112}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x1bd5b1 from'../utilities/tagParser.js';const exec=promisify(a0_0x421112),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x2c6f0c(0x1d0),'VALID_MODES':[a0_0x2c6f0c(0x1d0),'fix','auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x2c6f0c(0x15d),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{constructor(_0xf4aed4={},_0x2deb50=null){super(_0xf4aed4,_0x2deb50),this['id']='dependency-resolver';}[a0_0x2c6f0c(0x1b8)](){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_0x2c6f0c(0x176)](_0x23a201){const _0x4022d5=a0_0x2c6f0c;if(typeof _0x23a201===_0x4022d5(0x185)&&_0x23a201!==null)return{'path':_0x23a201[_0x4022d5(0x17d)]||'.','mode':_0x23a201['mode']||RESOLVER_CONFIG[_0x4022d5(0x1b4)],'includeDev':_0x23a201[_0x4022d5(0x18a)]!==undefined?_0x23a201['includeDev']:!![]};if(typeof _0x23a201===_0x4022d5(0x1c3)){const _0x400e9a=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0xc413be=_0x400e9a['exec'](_0x23a201);if(_0xc413be){const _0x4d82b3=_0xc413be[0x1],_0x4e6167=_0xc413be[0x2],_0x2e350f=/path=["']([^"']*)["']/i[_0x4022d5(0x172)](_0x4d82b3),_0xb32fa6=/mode=["']([^"']*)["']/i['exec'](_0x4d82b3),_0x6077b5=/include-dev=["']([^"']*)["']/i[_0x4022d5(0x172)](_0x4d82b3),_0x21dd9d=/<path>(.*?)<\/path>/i,_0x59c82b=_0x21dd9d['exec'](_0x4e6167),_0x1376ec=/<mode>(.*?)<\/mode>/i,_0x43dc77=_0x1376ec['exec'](_0x4e6167),_0x510a31=/<include-dev>(.*?)<\/include-dev>/i,_0xa20602=_0x510a31[_0x4022d5(0x172)](_0x4e6167),_0x3c236e=(_0x59c82b?_0x59c82b[0x1][_0x4022d5(0x1b0)]():null)||(_0x2e350f?_0x2e350f[0x1]:'.'),_0x5a19e7=(_0x43dc77?_0x43dc77[0x1][_0x4022d5(0x1b0)]():null)||(_0xb32fa6?_0xb32fa6[0x1]:RESOLVER_CONFIG['DEFAULT_MODE']),_0x59f9c1=(_0xa20602?_0xa20602[0x1]['trim']():null)||(_0x6077b5?_0x6077b5[0x1]:_0x4022d5(0x19e));return{'path':_0x3c236e,'mode':_0x5a19e7,'includeDev':this['_parseBoolean'](_0x59f9c1,!![])};}const _0x430690=/\[resolve\s+([^\]]*)\]/i,_0x1060ad=_0x430690['exec'](_0x23a201);if(_0x1060ad){const _0x232c11=_0x1060ad[0x1],_0x176b24=/path=["']([^"']*)["']/i['exec'](_0x232c11),_0x438154=/mode=["']([^"']*)["']/i['exec'](_0x232c11),_0xe62abd=/include-dev=["']([^"']*)["']/i['exec'](_0x232c11);return{'path':_0x176b24?_0x176b24[0x1]:'.','mode':_0x438154?_0x438154[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0xe62abd?_0xe62abd[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'](_0x4ce90e,defaultValue=![]){const _0x20706e=a0_0x2c6f0c;if(_0x4ce90e===undefined||_0x4ce90e===null)return defaultValue;if(typeof _0x4ce90e===_0x20706e(0x164))return _0x4ce90e;if(typeof _0x4ce90e===_0x20706e(0x1c3))return _0x4ce90e['toLowerCase']()===_0x20706e(0x19e)||_0x4ce90e==='1';return defaultValue;}['_validateParameters'](_0x3110c3){const _0x557df0=a0_0x2c6f0c;if(!_0x3110c3||typeof _0x3110c3!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x3110c3[_0x557df0(0x17d)]&&typeof _0x3110c3['path']!=='string')throw new Error('path\x20must\x20be\x20a\x20string');if(_0x3110c3['mode']&&!RESOLVER_CONFIG['VALID_MODES']['includes'](_0x3110c3[_0x557df0(0x165)]))throw new Error('Invalid\x20mode:\x20'+_0x3110c3[_0x557df0(0x165)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x3110c3['includeDev']!==undefined&&typeof _0x3110c3[_0x557df0(0x18a)]!=='boolean')throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0x2c6f0c(0x19b)](_0x4fa463,_0x2c2959){const _0x46ec4b=a0_0x2c6f0c,{projectDir:_0xf8c0ea,directoryAccess:_0x4fceaf}=_0x2c2959;let _0x119312=_0xf8c0ea||process[_0x46ec4b(0x1cb)]();_0x4fceaf&&_0x4fceaf['workingDirectory']&&(_0x119312=_0x4fceaf['workingDirectory']);const _0x23ba0f=a0_0x3e31f1[_0x46ec4b(0x1d2)](_0x4fa463)?a0_0x3e31f1['normalize'](_0x4fa463):a0_0x3e31f1[_0x46ec4b(0x186)](a0_0x3e31f1[_0x46ec4b(0x1a9)](_0x119312,_0x4fa463)),_0xc532ca=a0_0x3e31f1[_0x46ec4b(0x186)](_0x119312);if(!_0x23ba0f['startsWith'](_0xc532ca))throw new Error('Path\x20traversal\x20detected:\x20'+_0x4fa463+'\x20resolves\x20outside\x20working\x20directory');return _0x23ba0f;}async[a0_0x2c6f0c(0x1cc)](_0x21a972){const _0x259fdc=a0_0x2c6f0c;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x44cc0a=_0x21a972+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x4b8413['copyFile'](_0x21a972,_0x44cc0a),this['logger']?.[_0x259fdc(0x1bd)]('Created\x20backup',{'backupPath':_0x44cc0a}),_0x44cc0a;}catch(_0x532fdb){return this['logger']?.[_0x259fdc(0x1b9)](_0x259fdc(0x194),{'error':_0x532fdb[_0x259fdc(0x1ce)]}),null;}}async[a0_0x2c6f0c(0x1c2)](_0x126b85){const _0x11e042=a0_0x2c6f0c,_0x22613f=RESOLVER_CONFIG[_0x11e042(0x189)]+'/'+encodeURIComponent(_0x126b85);for(let _0x510466=0x1;_0x510466<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x510466++){try{const _0x204251=new AbortController(),_0x4f4d18=setTimeout(()=>_0x204251['abort'](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x5bf96d=await fetch(_0x22613f,{'signal':_0x204251[_0x11e042(0x15b)]});clearTimeout(_0x4f4d18);if(!_0x5bf96d['ok']){if(_0x5bf96d[_0x11e042(0x1c5)]===0x194)return this['logger']?.['warn'](_0x11e042(0x196)+_0x126b85),null;throw new Error(_0x11e042(0x174)+_0x5bf96d['status']+':\x20'+_0x5bf96d[_0x11e042(0x15a)]);}const _0x2aca46=await _0x5bf96d[_0x11e042(0x1d4)]();if(!_0x2aca46||typeof _0x2aca46!=='object'||!_0x2aca46['dist-tags'])throw new Error('Invalid\x20registry\x20response\x20format');return _0x2aca46;}catch(_0x11648a){if(_0x510466<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this['logger']?.[_0x11e042(0x1aa)](_0x11e042(0x1bb)+_0x510466+'/'+RESOLVER_CONFIG['RETRY_ATTEMPTS']+_0x11e042(0x19c)+_0x126b85),await new Promise(_0x116312=>setTimeout(_0x116312,RESOLVER_CONFIG[_0x11e042(0x16c)]*_0x510466));else return this[_0x11e042(0x1a2)]?.[_0x11e042(0x162)]('Failed\x20to\x20fetch\x20'+_0x126b85+':',_0x11648a[_0x11e042(0x1ce)]),null;}}return null;}async['_getLatestCompatibleVersion'](_0x33d24c,_0x50fb61){const _0x2b5609=a0_0x2c6f0c,_0x588fce=await this['_fetchPackageInfo'](_0x33d24c);if(!_0x588fce)return null;const _0x3679c4=_0x588fce[_0x2b5609(0x1c1)]?.[_0x2b5609(0x18c)];if(!_0x3679c4)return null;const _0x3f1565=this['_parseVersion'](_0x3679c4);if(!_0x3f1565)return null;if(this['_isComplexRange'](_0x50fb61)){const _0x5ea50d=this[_0x2b5609(0x199)](_0x50fb61),_0x3c02ac=this[_0x2b5609(0x19a)](_0x5ea50d,_0x3f1565);if(_0x3c02ac)return _0x3679c4;return null;}const _0x3a8f0f=this[_0x2b5609(0x169)](_0x50fb61);if(!_0x3a8f0f)return null;const _0x2b75db=this[_0x2b5609(0x178)](_0x3a8f0f,_0x3f1565);if(_0x2b75db)return _0x3a8f0f[_0x2b5609(0x15e)]+_0x3679c4;return null;}['_parseVersion'](_0x319edb){const _0xd3111c=a0_0x2c6f0c,_0xf9b5f5=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x424954=_0xf9b5f5[_0xd3111c(0x172)](_0x319edb);if(!_0x424954){const _0x5347c1=_0x319edb[_0xd3111c(0x181)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5347c1)return{'major':parseInt(_0x5347c1[0x1],0xa),'minor':parseInt(_0x5347c1[0x2],0xa),'patch':parseInt(_0x5347c1[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x424954[0x1],0xa),'minor':parseInt(_0x424954[0x2],0xa),'patch':parseInt(_0x424954[0x3],0xa),'prerelease':_0x424954[0x4]?_0x424954[0x4][_0xd3111c(0x1ad)]('.'):null,'build':_0x424954[0x5]||null};}['_compareVersions'](_0x3abfa3,_0x3a6ae3){const _0x59ba42=a0_0x2c6f0c;if(_0x3abfa3[_0x59ba42(0x161)]!==_0x3a6ae3['major'])return _0x3abfa3[_0x59ba42(0x161)]-_0x3a6ae3['major'];if(_0x3abfa3['minor']!==_0x3a6ae3['minor'])return _0x3abfa3['minor']-_0x3a6ae3['minor'];if(_0x3abfa3[_0x59ba42(0x180)]!==_0x3a6ae3[_0x59ba42(0x180)])return _0x3abfa3['patch']-_0x3a6ae3[_0x59ba42(0x180)];if(!_0x3abfa3['prerelease']&&!_0x3a6ae3[_0x59ba42(0x1be)])return 0x0;if(!_0x3abfa3[_0x59ba42(0x1be)]&&_0x3a6ae3['prerelease'])return 0x1;if(_0x3abfa3['prerelease']&&!_0x3a6ae3[_0x59ba42(0x1be)])return-0x1;return this['_comparePrerelease'](_0x3abfa3[_0x59ba42(0x1be)],_0x3a6ae3[_0x59ba42(0x1be)]);}['_comparePrerelease'](_0x377b08,_0x6b3765){const _0x3cbad4=a0_0x2c6f0c,_0x2481c6=Math[_0x3cbad4(0x188)](_0x377b08[_0x3cbad4(0x160)],_0x6b3765[_0x3cbad4(0x160)]);for(let _0x541dd5=0x0;_0x541dd5<_0x2481c6;_0x541dd5++){if(_0x541dd5>=_0x377b08['length'])return-0x1;if(_0x541dd5>=_0x6b3765['length'])return 0x1;const _0x1a35fd=_0x377b08[_0x541dd5],_0xf45db5=_0x6b3765[_0x541dd5],_0x2bf4b1=/^\d+$/[_0x3cbad4(0x171)](_0x1a35fd)?parseInt(_0x1a35fd,0xa):null,_0x592d82=/^\d+$/[_0x3cbad4(0x171)](_0xf45db5)?parseInt(_0xf45db5,0xa):null;if(_0x2bf4b1!==null&&_0x592d82!==null){if(_0x2bf4b1!==_0x592d82)return _0x2bf4b1-_0x592d82;continue;}if(_0x2bf4b1!==null&&_0x592d82===null)return-0x1;if(_0x2bf4b1===null&&_0x592d82!==null)return 0x1;if(_0x1a35fd<_0xf45db5)return-0x1;if(_0x1a35fd>_0xf45db5)return 0x1;}return 0x0;}[a0_0x2c6f0c(0x169)](_0x4b4d15){const _0x1ce8ba=a0_0x2c6f0c,_0xe20211=_0x4b4d15['trim'](),_0x4ef84e=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x309364=_0x4ef84e[_0x1ce8ba(0x172)](_0xe20211);if(_0x309364){const _0x4a1b43=_0x309364[0x1],_0x36f9a1=_0x309364[0x3],_0x5c5bc9=_0x309364[0x5],_0x1022b9=_0x4a1b43==='*'||_0x4a1b43[_0x1ce8ba(0x195)]()==='x'||_0x36f9a1===undefined||_0x36f9a1==='*'||_0x36f9a1[_0x1ce8ba(0x195)]()==='x'||_0x5c5bc9===undefined||_0x5c5bc9==='*'||_0x5c5bc9[_0x1ce8ba(0x195)]()==='x';if(_0x1022b9)return{'prefix':'','operator':_0x1ce8ba(0x1c6),'major':_0x4a1b43==='*'||_0x4a1b43['toLowerCase']()==='x'?null:parseInt(_0x4a1b43,0xa),'minor':!_0x36f9a1||_0x36f9a1==='*'||_0x36f9a1['toLowerCase']()==='x'?null:parseInt(_0x36f9a1,0xa),'patch':!_0x5c5bc9||_0x5c5bc9==='*'||_0x5c5bc9[_0x1ce8ba(0x195)]()==='x'?null:parseInt(_0x5c5bc9,0xa),'original':_0x4b4d15};}let _0x5cbb22='',_0x3afde5=_0xe20211,_0x3c7626='=';if(_0xe20211['startsWith']('^'))_0x5cbb22='^',_0x3afde5=_0xe20211['slice'](0x1),_0x3c7626='^';else{if(_0xe20211[_0x1ce8ba(0x16a)]('~'))_0x5cbb22='~',_0x3afde5=_0xe20211['slice'](0x1),_0x3c7626='~';else{if(_0xe20211[_0x1ce8ba(0x16a)]('>='))_0x5cbb22='>=',_0x3afde5=_0xe20211['slice'](0x2)['trim'](),_0x3c7626='>=';else{if(_0xe20211['startsWith']('>'))_0x5cbb22='>',_0x3afde5=_0xe20211['slice'](0x1)[_0x1ce8ba(0x1b0)](),_0x3c7626='>';else{if(_0xe20211[_0x1ce8ba(0x16a)]('<='))_0x5cbb22='<=',_0x3afde5=_0xe20211['slice'](0x2)[_0x1ce8ba(0x1b0)](),_0x3c7626='<=';else _0xe20211['startsWith']('<')&&(_0x5cbb22='<',_0x3afde5=_0xe20211[_0x1ce8ba(0x173)](0x1)['trim'](),_0x3c7626='<');}}}}const _0x5d2935=this['_parseVersion'](_0x3afde5);if(!_0x5d2935)return null;return{'prefix':_0x5cbb22,'operator':_0x3c7626,'major':_0x5d2935['major'],'minor':_0x5d2935[_0x1ce8ba(0x18e)],'patch':_0x5d2935[_0x1ce8ba(0x180)],'prerelease':_0x5d2935['prerelease'],'build':_0x5d2935[_0x1ce8ba(0x18f)],'original':_0x4b4d15};}[a0_0x2c6f0c(0x178)](_0x5871c7,_0x47f4fe){const _0x53dde0=a0_0x2c6f0c,_0x37457a={'major':_0x5871c7[_0x53dde0(0x161)],'minor':_0x5871c7['minor'],'patch':_0x5871c7['patch'],'prerelease':_0x5871c7['prerelease']||null,'build':_0x5871c7['build']||null};switch(_0x5871c7[_0x53dde0(0x1a0)]){case'^':return this[_0x53dde0(0x184)](_0x37457a,_0x47f4fe);case'~':return this[_0x53dde0(0x1d1)](_0x37457a,_0x47f4fe);case'>=':case'>':return this[_0x53dde0(0x1d5)](_0x37457a,_0x47f4fe);case'<':case'<=':return this[_0x53dde0(0x17f)](_0x5871c7,_0x47f4fe);case'x-range':return this[_0x53dde0(0x177)](_0x5871c7,_0x47f4fe);case'=':default:return this[_0x53dde0(0x197)](_0x37457a,_0x47f4fe);}}['_isCaretUpdateAvailable'](_0x14382c,_0x548ca2){const _0x2ec416=a0_0x2c6f0c,_0x493b14=this[_0x2ec416(0x167)](_0x548ca2,_0x14382c);if(_0x493b14<=0x0)return![];if(_0x14382c['major']===0x0&&_0x14382c['minor']===0x0)return _0x548ca2[_0x2ec416(0x161)]===0x0&&_0x548ca2['minor']===0x0;if(_0x14382c[_0x2ec416(0x161)]===0x0)return _0x548ca2[_0x2ec416(0x161)]===0x0&&_0x548ca2[_0x2ec416(0x18e)]===_0x14382c[_0x2ec416(0x18e)];return _0x548ca2['major']===_0x14382c[_0x2ec416(0x161)];}[a0_0x2c6f0c(0x1d1)](_0x26585c,_0x4267a5){const _0x5aea43=a0_0x2c6f0c,_0x426591=this[_0x5aea43(0x167)](_0x4267a5,_0x26585c);if(_0x426591<=0x0)return![];return _0x4267a5[_0x5aea43(0x161)]===_0x26585c['major']&&_0x4267a5['minor']===_0x26585c['minor'];}[a0_0x2c6f0c(0x1d5)](_0x24d4fb,_0x4ff22c){const _0x521967=this['_compareVersions'](_0x4ff22c,_0x24d4fb);return _0x521967>0x0;}[a0_0x2c6f0c(0x197)](_0x30a8c3,_0x3230ac){const _0x51be3e=a0_0x2c6f0c;return this[_0x51be3e(0x1d5)](_0x30a8c3,_0x3230ac);}['_isLessThanUpdateAvailable'](_0x5d65e8,_0x201aea){const _0x36be87=a0_0x2c6f0c,_0x31b24e=this[_0x36be87(0x167)](_0x201aea,_0x5d65e8);if(_0x5d65e8[_0x36be87(0x1a0)]==='<')return _0x31b24e<0x0;else{if(_0x5d65e8[_0x36be87(0x1a0)]==='<=')return _0x31b24e<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x7bb4a1,_0x4f7342){const _0xb5d3d4=a0_0x2c6f0c;if(_0x7bb4a1[_0xb5d3d4(0x161)]!==null&&_0x4f7342['major']!==_0x7bb4a1['major'])return![];if(_0x7bb4a1['minor']!==null&&_0x4f7342[_0xb5d3d4(0x18e)]!==_0x7bb4a1['minor'])return![];if(_0x7bb4a1[_0xb5d3d4(0x180)]!==null&&_0x4f7342['patch']!==_0x7bb4a1['patch'])return![];return!![];}[a0_0x2c6f0c(0x1ab)](_0x1db7ba){const _0xe61535=a0_0x2c6f0c;if(_0x1db7ba[_0xe61535(0x1a7)]('||'))return!![];const _0x16067c=_0x1db7ba['trim']();if(_0x16067c['startsWith']('^')||_0x16067c['startsWith']('~'))return![];const _0x38e53f=_0x16067c['split'](/\s+/)['filter'](_0x58232b=>_0x58232b[_0xe61535(0x160)]>0x0);if(_0x38e53f[_0xe61535(0x160)]>0x1){const _0x5f26d4=/^(>=?|<=?|\^|~|[0-9])/;return _0x38e53f['every'](_0x20ab2c=>_0x5f26d4['test'](_0x20ab2c));}return![];}['_parseComplexRange'](_0x5b476){const _0x288ef0=a0_0x2c6f0c;if(_0x5b476[_0x288ef0(0x1a7)]('||')){const _0x2b76c1=_0x5b476['split']('||')['map'](_0x28b9b2=>_0x28b9b2[_0x288ef0(0x1b0)]());return{'type':'or','ranges':_0x2b76c1[_0x288ef0(0x1ae)](_0x1f3673=>this['_parseComplexRange'](_0x1f3673))};}const _0x36f1d6=_0x5b476['trim']()[_0x288ef0(0x1ad)](/\s+/)['filter'](_0x285d8f=>_0x285d8f['length']>0x0);if(_0x36f1d6['length']>0x1)return{'type':'and','ranges':_0x36f1d6['map'](_0x2f2682=>this[_0x288ef0(0x169)](_0x2f2682))};return{'type':'simple','range':this['_parseVersionRange'](_0x5b476)};}[a0_0x2c6f0c(0x16d)](_0x1025b6,_0x144beb){const _0x42f6c=a0_0x2c6f0c;if(!_0x1025b6||!_0x144beb)return![];return this[_0x42f6c(0x178)](_0x1025b6,_0x144beb);}['_satisfiesComplexRange'](_0x98b58b,_0x56d147){const _0x560b60=a0_0x2c6f0c;if(!_0x98b58b||!_0x56d147)return![];switch(_0x98b58b[_0x560b60(0x1b3)]){case'simple':return this['_satisfiesRange'](_0x98b58b['range'],_0x56d147);case'and':return _0x98b58b[_0x560b60(0x1c0)]['every'](_0x2a5f59=>this[_0x560b60(0x16d)](_0x2a5f59,_0x56d147));case'or':return _0x98b58b[_0x560b60(0x1c0)][_0x560b60(0x1d7)](_0x2f0817=>this[_0x560b60(0x19a)](_0x2f0817,_0x56d147));default:return![];}}async['_checkDependencies'](_0xc93622){const _0x22881c=a0_0x2c6f0c,_0x2dc9ef={},_0x383a9a=Object[_0x22881c(0x192)](_0xc93622);for(let _0x94fe84=0x0;_0x94fe84<_0x383a9a[_0x22881c(0x160)];_0x94fe84+=RESOLVER_CONFIG[_0x22881c(0x16e)]){const _0x42b0d4=_0x383a9a['slice'](_0x94fe84,_0x94fe84+RESOLVER_CONFIG[_0x22881c(0x16e)]),_0x2e6d2f=_0x42b0d4[_0x22881c(0x1ae)](async([_0x55273a,_0xa01a3])=>{const _0x3230d2=_0x22881c;try{const _0xb803d5=await this[_0x3230d2(0x190)](_0x55273a,_0xa01a3);if(_0xb803d5){const _0x4ec5e3=_0xa01a3['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x55273a,'newVersion':''+_0x4ec5e3+_0xb803d5,'oldVersion':_0xa01a3};}return null;}catch(_0x671d20){return this[_0x3230d2(0x1a2)]?.[_0x3230d2(0x162)](_0x3230d2(0x1ac)+_0x55273a+':',_0x671d20['message']),null;}}),_0x482f2e=await Promise['all'](_0x2e6d2f);_0x482f2e[_0x22881c(0x183)](_0x10dba8=>{const _0x453e0f=_0x22881c;_0x10dba8&&(_0x2dc9ef[_0x10dba8[_0x453e0f(0x1b7)]]=_0x10dba8[_0x453e0f(0x17b)]);});}return _0x2dc9ef;}async[a0_0x2c6f0c(0x159)](_0x1f89b7,_0x5e21c8={}){const _0x4357a5=a0_0x2c6f0c;try{this['_validateParameters'](_0x1f89b7);const {path:_0x42523e,mode:_0x236019,includeDev:_0x550a67}=_0x1f89b7,{projectDir:_0x4b2df5,agentId:_0x2f66cf,directoryAccess:_0x17b47f}=_0x5e21c8,_0x1008df=this['_resolveAndValidatePath'](_0x42523e,_0x5e21c8),_0x132374=a0_0x3e31f1[_0x4357a5(0x1a9)](_0x1008df,_0x4357a5(0x1c7));this['logger']?.['info']('Dependency\x20resolver\x20executing',{'mode':_0x236019,'resolvedPath':_0x1008df,'includeDev':_0x550a67,'agentId':_0x2f66cf});const _0x53e751=[];_0x53e751[_0x4357a5(0x1a4)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x1008df),_0x53e751[_0x4357a5(0x1a4)](_0x4357a5(0x1b2)+_0x236019);try{await a0_0x4b8413[_0x4357a5(0x163)](_0x132374);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x132374,'output':_0x53e751['join']('\x0a')};}_0x53e751[_0x4357a5(0x1a4)]('\x0a📦\x20Reading\x20package.json...');const _0x4acc4f=await a0_0x4b8413[_0x4357a5(0x1bf)](_0x132374,_0x4357a5(0x19d)),_0x389e6d=JSON[_0x4357a5(0x193)](_0x4acc4f),_0x1aa149={..._0x389e6d[_0x4357a5(0x182)]};_0x550a67&&_0x389e6d[_0x4357a5(0x1c9)]&&Object['assign'](_0x1aa149,_0x389e6d[_0x4357a5(0x1c9)]);if(Object['keys'](_0x1aa149)['length']===0x0)return{'success':!![],'mode':_0x236019,'message':_0x4357a5(0x1a3),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x53e751[_0x4357a5(0x1a9)]('\x0a')};if(Object['keys'](_0x1aa149)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x4357a5(0x1b5)+Object[_0x4357a5(0x1d3)](_0x1aa149)[_0x4357a5(0x160)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x4357a5(0x1a5)],'output':_0x53e751['join']('\x0a')};_0x53e751[_0x4357a5(0x1a4)](_0x4357a5(0x17a)+Object['keys'](_0x1aa149)[_0x4357a5(0x160)]+_0x4357a5(0x1a1)),_0x53e751[_0x4357a5(0x1a4)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x537be1=await this[_0x4357a5(0x17c)](_0x1aa149);_0x53e751[_0x4357a5(0x1a4)]('\x0a✅\x20Registry\x20check\x20complete'),_0x53e751[_0x4357a5(0x1a4)]('📈\x20Updates\x20available:\x20'+Object[_0x4357a5(0x1d3)](_0x537be1)[_0x4357a5(0x160)]);if(Object['keys'](_0x537be1)[_0x4357a5(0x160)]>0x0){_0x53e751[_0x4357a5(0x1a4)]('\x0a📋\x20Available\x20updates:');for(const [_0xd56875,_0x36416e]of Object[_0x4357a5(0x192)](_0x537be1)){const _0x5965e4=_0x1aa149[_0xd56875];_0x53e751['push'](_0x4357a5(0x16f)+_0xd56875+':\x20'+_0x5965e4+'\x20→\x20'+_0x36416e);}}else _0x53e751[_0x4357a5(0x1a4)]('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x236019==='check')return Object[_0x4357a5(0x1d3)](_0x537be1)[_0x4357a5(0x160)]>0x0&&_0x53e751['push'](_0x4357a5(0x175)),{'success':!![],'mode':'check','message':_0x4357a5(0x1af)+Object['keys'](_0x537be1)[_0x4357a5(0x160)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x1aa149)['length'],'updatesAvailable':Object[_0x4357a5(0x1d3)](_0x537be1)[_0x4357a5(0x160)],'updatesApplied':0x0,'errors':0x0},'updates':_0x537be1,'output':_0x53e751['join']('\x0a')};if((_0x236019===_0x4357a5(0x18d)||_0x236019==='auto')&&Object[_0x4357a5(0x1d3)](_0x537be1)[_0x4357a5(0x160)]>0x0){_0x53e751[_0x4357a5(0x1a4)](_0x4357a5(0x1c4));const _0x225596=await this[_0x4357a5(0x1cc)](_0x132374);_0x225596?_0x53e751[_0x4357a5(0x1a4)]('✅\x20Backup\x20created:\x20'+a0_0x3e31f1['basename'](_0x225596)):_0x53e751[_0x4357a5(0x1a4)](_0x4357a5(0x170));_0x53e751['push'](_0x4357a5(0x15f));for(const [_0x22bf6e,_0x222d1f]of Object['entries'](_0x537be1)){_0x389e6d['dependencies']?.[_0x22bf6e]&&(_0x389e6d['dependencies'][_0x22bf6e]=_0x222d1f),_0x389e6d[_0x4357a5(0x1c9)]?.[_0x22bf6e]&&(_0x389e6d['devDependencies'][_0x22bf6e]=_0x222d1f);}await a0_0x4b8413['writeFile'](_0x132374,JSON[_0x4357a5(0x17e)](_0x389e6d,null,0x2)+'\x0a'),_0x53e751['push']('✅\x20package.json\x20updated'),_0x53e751['push'](_0x4357a5(0x19f));try{const {stdout:_0x490900,stderr:_0x54190b}=await exec('npm\x20install',{'cwd':_0x1008df,'timeout':RESOLVER_CONFIG[_0x4357a5(0x179)],'maxBuffer':0x400*0x400*0xa});if(_0x490900){const _0x5b7696=_0x490900['trim']()[_0x4357a5(0x1ad)]('\x0a');_0x5b7696[_0x4357a5(0x160)]>0xa?_0x53e751['push']('\x20\x20'+_0x5b7696[_0x4357a5(0x173)](-0x5)[_0x4357a5(0x1a9)](_0x4357a5(0x1b6))):_0x53e751['push']('\x20\x20'+_0x490900[_0x4357a5(0x1b0)]());}_0x54190b&&!_0x54190b[_0x4357a5(0x1a7)](_0x4357a5(0x18b))&&_0x53e751['push'](_0x4357a5(0x15c)+_0x54190b[_0x4357a5(0x1b0)]());_0x53e751['push'](_0x4357a5(0x187));try{const {stdout:_0x218c68}=await exec(_0x4357a5(0x191),{'cwd':_0x1008df,'timeout':0x7530}),_0x3ca282=JSON[_0x4357a5(0x193)](_0x218c68);if(_0x3ca282['dependencies']){_0x53e751[_0x4357a5(0x1a4)](_0x4357a5(0x1cf));for(const _0x21fd6 of Object['keys'](_0x537be1)){_0x3ca282['dependencies'][_0x21fd6]&&_0x53e751['push'](_0x4357a5(0x16f)+_0x21fd6+'@'+_0x3ca282['dependencies'][_0x21fd6][_0x4357a5(0x1bc)]);}}}catch(_0x8e0ea1){this['logger']?.[_0x4357a5(0x1aa)](_0x4357a5(0x16b),_0x8e0ea1[_0x4357a5(0x1ce)]);}return{'success':!![],'mode':_0x236019,'message':_0x4357a5(0x168)+Object[_0x4357a5(0x1d3)](_0x537be1)['length']+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x1aa149)[_0x4357a5(0x160)],'updatesAvailable':Object[_0x4357a5(0x1d3)](_0x537be1)['length'],'updatesApplied':Object[_0x4357a5(0x1d3)](_0x537be1)['length'],'errors':0x0},'updates':_0x537be1,'backupCreated':_0x225596!==null,'backupPath':_0x225596,'output':_0x53e751['join']('\x0a')};}catch(_0x301872){_0x53e751['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x301872[_0x4357a5(0x1ce)]);if(_0x225596)try{await a0_0x4b8413['copyFile'](_0x225596,_0x132374),_0x53e751['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x2fb297){_0x53e751['push'](_0x4357a5(0x198));}return{'success':![],'mode':_0x236019,'error':'npm\x20install\x20failed:\x20'+_0x301872['message'],'statistics':{'totalDependencies':Object[_0x4357a5(0x1d3)](_0x1aa149)['length'],'updatesAvailable':Object[_0x4357a5(0x1d3)](_0x537be1)[_0x4357a5(0x160)],'updatesApplied':0x0,'errors':0x1},'updates':_0x537be1,'backupCreated':_0x225596!==null,'output':_0x53e751[_0x4357a5(0x1a9)]('\x0a')};}}else{if(_0x236019===_0x4357a5(0x18d)||_0x236019==='auto')return _0x53e751['push']('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x236019,'message':_0x4357a5(0x1c8),'statistics':{'totalDependencies':Object[_0x4357a5(0x1d3)](_0x1aa149)[_0x4357a5(0x160)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x53e751['join']('\x0a')};}}catch(_0x3db91d){return this[_0x4357a5(0x1a2)]?.['error'](_0x4357a5(0x1a6),_0x3db91d),{'success':![],'error':_0x3db91d['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3db91d[_0x4357a5(0x1ce)]};}}}function a0_0x3177(_0x44641e,_0x5e8764){_0x44641e=_0x44641e-0x159;const _0x32e94a=a0_0x32e9();let _0x3177ef=_0x32e94a[_0x44641e];if(a0_0x3177['TIAAJS']===undefined){var _0x368562=function(_0x2fd683){const _0x10b158='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b8413='',_0x3e31f1='';for(let _0x421112=0x0,_0x1bd5b1,_0xf4aed4,_0x2deb50=0x0;_0xf4aed4=_0x2fd683['charAt'](_0x2deb50++);~_0xf4aed4&&(_0x1bd5b1=_0x421112%0x4?_0x1bd5b1*0x40+_0xf4aed4:_0xf4aed4,_0x421112++%0x4)?_0x4b8413+=String['fromCharCode'](0xff&_0x1bd5b1>>(-0x2*_0x421112&0x6)):0x0){_0xf4aed4=_0x10b158['indexOf'](_0xf4aed4);}for(let _0x23a201=0x0,_0x400e9a=_0x4b8413['length'];_0x23a201<_0x400e9a;_0x23a201++){_0x3e31f1+='%'+('00'+_0x4b8413['charCodeAt'](_0x23a201)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e31f1);};a0_0x3177['MLRBtc']=_0x368562,a0_0x3177['YunsZI']={},a0_0x3177['TIAAJS']=!![];}const _0x1b38f7=_0x32e94a[0x0],_0x10c7da=_0x44641e+_0x1b38f7,_0x147af7=a0_0x3177['YunsZI'][_0x10c7da];return!_0x147af7?(_0x3177ef=a0_0x3177['MLRBtc'](_0x3177ef),a0_0x3177['YunsZI'][_0x10c7da]=_0x3177ef):_0x3177ef=_0x147af7,_0x3177ef;}export default DependencyResolverTool;
|
|
1
|
+
const a0_0xd1e82e=a0_0x1816;(function(_0x5d6780,_0x2c1775){const _0x200f70=a0_0x1816,_0x32ed85=_0x5d6780();while(!![]){try{const _0x1737f6=parseInt(_0x200f70(0x194))/0x1*(-parseInt(_0x200f70(0x164))/0x2)+parseInt(_0x200f70(0x1d2))/0x3*(parseInt(_0x200f70(0x1a1))/0x4)+parseInt(_0x200f70(0x1c7))/0x5+parseInt(_0x200f70(0x1b3))/0x6+-parseInt(_0x200f70(0x169))/0x7+parseInt(_0x200f70(0x1d5))/0x8*(parseInt(_0x200f70(0x17e))/0x9)+-parseInt(_0x200f70(0x1d8))/0xa;if(_0x1737f6===_0x2c1775)break;else _0x32ed85['push'](_0x32ed85['shift']());}catch(_0x467cea){_0x32ed85['push'](_0x32ed85['shift']());}}}(a0_0x4b40,0xab762));import{promises as a0_0x89b43e}from'fs';import a0_0x300897 from'path';import{exec as a0_0x5cf39f}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0xfce4f7 from'../utilities/tagParser.js';function a0_0x1816(_0x9203c8,_0x4227b9){_0x9203c8=_0x9203c8-0x162;const _0x4b4091=a0_0x4b40();let _0x1816fc=_0x4b4091[_0x9203c8];if(a0_0x1816['dOAEMy']===undefined){var _0x3087fa=function(_0x1ee96e){const _0x1a8d6e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x89b43e='',_0x300897='';for(let _0x5cf39f=0x0,_0xfce4f7,_0x2a1a3f,_0x3a44cd=0x0;_0x2a1a3f=_0x1ee96e['charAt'](_0x3a44cd++);~_0x2a1a3f&&(_0xfce4f7=_0x5cf39f%0x4?_0xfce4f7*0x40+_0x2a1a3f:_0x2a1a3f,_0x5cf39f++%0x4)?_0x89b43e+=String['fromCharCode'](0xff&_0xfce4f7>>(-0x2*_0x5cf39f&0x6)):0x0){_0x2a1a3f=_0x1a8d6e['indexOf'](_0x2a1a3f);}for(let _0x5e17de=0x0,_0x20abf=_0x89b43e['length'];_0x5e17de<_0x20abf;_0x5e17de++){_0x300897+='%'+('00'+_0x89b43e['charCodeAt'](_0x5e17de)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x300897);};a0_0x1816['NzFpUF']=_0x3087fa,a0_0x1816['mfxKYS']={},a0_0x1816['dOAEMy']=!![];}const _0x35ef1b=_0x4b4091[0x0],_0x5c2195=_0x9203c8+_0x35ef1b,_0x39a0ce=a0_0x1816['mfxKYS'][_0x5c2195];return!_0x39a0ce?(_0x1816fc=a0_0x1816['NzFpUF'](_0x1816fc),a0_0x1816['mfxKYS'][_0x5c2195]=_0x1816fc):_0x1816fc=_0x39a0ce,_0x1816fc;}const exec=promisify(a0_0x5cf39f),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0xd1e82e(0x1d0),'VALID_MODES':['check',a0_0xd1e82e(0x190),a0_0xd1e82e(0x1ab)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0xd1e82e(0x1c0),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0xd1e82e(0x173)};function a0_0x4b40(){const _0x4f946b=['A2v5CW','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','zxzLCNK','zxjYB3i','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','x3bHCNnLq29TCgXLEfjHBMDL','ntmWotuXnfvkCeLbwG','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','D29YA2LUz0rPCMvJDg9YEq','CMfUz2u','ChvZAa','x2zLDgnOugfJA2fNzuLUzM8','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','ywnJzxnZ','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','BwLUB3i','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','C3rHDhvZ','C3rHCNrZv2L0Aa','DhjPBq','x3zHBgLKyxrLugfYyw1LDgvYCW','D3jPDgvgAwXL','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','yxnZAwDU','zML4','Ec1Yyw5Nzq','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','4PYfiejHy2T1CcbJCMvHDgvKoIa','mtnZvhj0Bw4','BNbTifDbuK4','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','DgvZDa','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','Cgf0Aa','x3bHCNnLqM9VBgvHBG','x2nYzwf0zujHy2T1Ca','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','tM8GCgfJA2fNzs5QC29UigzVDw5Kigf0oIa','C29Tzq','uKvuuLLFrevmqvK','DhLWzq','nhnQEKL2tG','icdIGkiG','DMvYC2LVBG','4PQG77IpicbgywLSzwqGDg8GCMvZDg9YzsbIywnRDxa','y3DK','x2nVBxbHCMvwzxjZAw9UCW','BwfQB3i','Bw9Kzq','ywjVCNq','lIbnDxn0igjLig9UzsbVzJOG','yxv0BW','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','CgfJA2fNzs5QC29U','AM9PBG','C2LNBMfS','Bg9Nz2vY','yM9VBgvHBG','odaYnty5mefgt0fAuW','C3rYAw5NAwz5','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','C3bSAxq','zxHLy3v0zq','zxHLyW','tufyx0nptKnvuLjftLrFq0Hfq0Tt','BgvUz3rO','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','BwvZC2fNzq','D2fYBG','Cgf0y2G','lMjHy2T1Cc5QC29U','cIaG','x2LZvxbKyxrLqxzHAwXHyMXL','yw5K','BwfW','revgqvvmvf9nt0rf','ChjLCMvSzwfZzq','ntC0ntuZmhbkwMLMBq','x2LZq29TCgXLEfjHBMDL','C3rYAw5N','Dg9mB3DLCKnHC2u','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','Bgf0zxn0','x2nOzwnRrgvWzw5Kzw5JAwvZ','C2XPy2u','ihbHy2THz2uOCYK','y2HLy2S','BM9YBwfSAxPL','mJG5nda5n2nNBK5UBa','rM91BMqG','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','mtzUs3bnr2e','tufyx0rfuevorevoq0LfuW','Aw5JBhvKzurLDG','mJy3mdaXntb6A2P5u3O','CMvHzezPBgu','vKfmsurFtu9ervm','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','zgLZDc10ywDZ','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','x3bHCNnLvMvYC2LVBG','mtC1ntrMuKrrrha','x2nVBxbHCMvqCMvYzwXLyxnL','z2v0rgvZy3jPChrPB24','zgvIDwC','x3bHCNnLvMvYC2LVBLjHBMDL','odaXndiZmerxBgf4yG','qKfds1vqx0vyvevou0LptG','zw50CMLLCW','uKvuuLLFqvruru1qvfm','yMfZzw5HBwu','ywXS','rxjYB3iGy2HLy2TPBMCG','B3bLCMf0B3i','zgv2rgvWzw5Kzw5JAwvZ','BNbTigLUC3rHBgWGzMfPBgvKoIa','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','zgvWzw5Kzw5JAwvZ','rMfPBgvKihrVigzLDgnOia'];a0_0x4b40=function(){return _0x4f946b;};return a0_0x4b40();}export class DependencyResolverTool extends BaseTool{constructor(_0x2a1a3f={},_0x3a44cd=null){super(_0x2a1a3f,_0x3a44cd),this['id']='dependency-resolver';}[a0_0xd1e82e(0x166)](){const _0xf7cb93=a0_0xd1e82e;return _0xf7cb93(0x198);}['parseParameters'](_0x5e17de){const _0x5e3d50=a0_0xd1e82e;if(typeof _0x5e17de==='object'&&_0x5e17de!==null)return{'path':_0x5e17de[_0x5e3d50(0x199)]||'.','mode':_0x5e17de['mode']||RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':_0x5e17de['includeDev']!==undefined?_0x5e17de[_0x5e3d50(0x1d7)]:!![]};if(typeof _0x5e17de===_0x5e3d50(0x1c9)){const _0x20abf=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x309730=_0x20abf[_0x5e3d50(0x1b9)](_0x5e17de);if(_0x309730){const _0x505302=_0x309730[0x1],_0x26f9c4=_0x309730[0x2],_0x447db2=/path=["']([^"']*)["']/i['exec'](_0x505302),_0x35501b=/mode=["']([^"']*)["']/i['exec'](_0x505302),_0x2708bc=/include-dev=["']([^"']*)["']/i[_0x5e3d50(0x1b9)](_0x505302),_0x3d6993=/<path>(.*?)<\/path>/i,_0x581056=_0x3d6993[_0x5e3d50(0x1b9)](_0x26f9c4),_0x593158=/<mode>(.*?)<\/mode>/i,_0x161030=_0x593158['exec'](_0x26f9c4),_0x4888e1=/<include-dev>(.*?)<\/include-dev>/i,_0x3f20a7=_0x4888e1['exec'](_0x26f9c4),_0x140341=(_0x581056?_0x581056[0x1]['trim']():null)||(_0x447db2?_0x447db2[0x1]:'.'),_0x1d35a4=(_0x161030?_0x161030[0x1]['trim']():null)||(_0x35501b?_0x35501b[0x1]:RESOLVER_CONFIG[_0x5e3d50(0x1c5)]),_0x40e408=(_0x3f20a7?_0x3f20a7[0x1]['trim']():null)||(_0x2708bc?_0x2708bc[0x1]:'true');return{'path':_0x140341,'mode':_0x1d35a4,'includeDev':this['_parseBoolean'](_0x40e408,!![])};}const _0x58a347=/\[resolve\s+([^\]]*)\]/i,_0x4752b3=_0x58a347[_0x5e3d50(0x1b9)](_0x5e17de);if(_0x4752b3){const _0x588129=_0x4752b3[0x1],_0x135e84=/path=["']([^"']*)["']/i[_0x5e3d50(0x1b9)](_0x588129),_0x26e537=/mode=["']([^"']*)["']/i['exec'](_0x588129),_0x1aee99=/include-dev=["']([^"']*)["']/i[_0x5e3d50(0x1b9)](_0x588129);return{'path':_0x135e84?_0x135e84[0x1]:'.','mode':_0x26e537?_0x26e537[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x5e3d50(0x19a)](_0x1aee99?_0x1aee99[0x1]:'true',!![])};}throw new Error(_0x5e3d50(0x1db));}throw new Error(_0x5e3d50(0x179));}['_parseBoolean'](_0x4472dc,defaultValue=![]){const _0x6ad09e=a0_0xd1e82e;if(_0x4472dc===undefined||_0x4472dc===null)return defaultValue;if(typeof _0x4472dc===_0x6ad09e(0x1b2))return _0x4472dc;if(typeof _0x4472dc===_0x6ad09e(0x1c9))return _0x4472dc['toLowerCase']()==='true'||_0x4472dc==='1';return defaultValue;}[a0_0xd1e82e(0x18c)](_0x39c5fd){const _0x1ee913=a0_0xd1e82e;if(!_0x39c5fd||typeof _0x39c5fd!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x39c5fd[_0x1ee913(0x199)]&&typeof _0x39c5fd[_0x1ee913(0x199)]!==_0x1ee913(0x1c9))throw new Error('path\x20must\x20be\x20a\x20string');if(_0x39c5fd[_0x1ee913(0x1a8)]&&!RESOLVER_CONFIG[_0x1ee913(0x1da)]['includes'](_0x39c5fd['mode']))throw new Error('Invalid\x20mode:\x20'+_0x39c5fd[_0x1ee913(0x1a8)]+_0x1ee913(0x1aa)+RESOLVER_CONFIG[_0x1ee913(0x1da)][_0x1ee913(0x1af)](',\x20'));if(_0x39c5fd['includeDev']!==undefined&&typeof _0x39c5fd['includeDev']!=='boolean')throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}[a0_0xd1e82e(0x17f)](_0x1089ab,_0x1eb253){const _0x26811e=a0_0xd1e82e,{projectDir:_0x313d5c,directoryAccess:_0x192e0f}=_0x1eb253;let _0x249bc7=_0x313d5c||process[_0x26811e(0x1a5)]();_0x192e0f&&_0x192e0f[_0x26811e(0x180)]&&(_0x249bc7=_0x192e0f['workingDirectory']);const _0x568218=a0_0x300897['isAbsolute'](_0x1089ab)?a0_0x300897[_0x26811e(0x1d1)](_0x1089ab):a0_0x300897[_0x26811e(0x1d1)](a0_0x300897[_0x26811e(0x1af)](_0x249bc7,_0x1089ab)),_0xbeaed0=a0_0x300897['normalize'](_0x249bc7);if(!_0x568218['startsWith'](_0xbeaed0))throw new Error('Path\x20traversal\x20detected:\x20'+_0x1089ab+'\x20resolves\x20outside\x20working\x20directory');return _0x568218;}async[a0_0xd1e82e(0x19b)](_0x563bcf){const _0xc65d16=a0_0xd1e82e;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0xfcbc32=_0x563bcf+RESOLVER_CONFIG[_0xc65d16(0x16a)];return await a0_0x89b43e['copyFile'](_0x563bcf,_0xfcbc32),this[_0xc65d16(0x1b1)]?.['info']('Created\x20backup',{'backupPath':_0xfcbc32}),_0xfcbc32;}catch(_0x367467){return this['logger']?.[_0xc65d16(0x1be)]('Failed\x20to\x20create\x20backup',{'error':_0x367467[_0xc65d16(0x1bd)]}),null;}}async[a0_0xd1e82e(0x183)](_0x19b65b){const _0x458a4a=a0_0xd1e82e,_0x584439=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x19b65b);for(let _0x44988f=0x1;_0x44988f<=RESOLVER_CONFIG[_0x458a4a(0x16c)];_0x44988f++){try{const _0x7436e7=new AbortController(),_0x3f4467=setTimeout(()=>_0x7436e7[_0x458a4a(0x1a9)](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x5e7812=await fetch(_0x584439,{'signal':_0x7436e7[_0x458a4a(0x1b0)]});clearTimeout(_0x3f4467);if(!_0x5e7812['ok']){if(_0x5e7812['status']===0x194)return this[_0x458a4a(0x1b1)]?.[_0x458a4a(0x1be)]('Package\x20not\x20found:\x20'+_0x19b65b),null;throw new Error('HTTP\x20'+_0x5e7812[_0x458a4a(0x189)]+':\x20'+_0x5e7812['statusText']);}const _0x244930=await _0x5e7812['json']();if(!_0x244930||typeof _0x244930!=='object'||!_0x244930[_0x458a4a(0x1dc)])throw new Error(_0x458a4a(0x1ad));return _0x244930;}catch(_0x2773f0){if(_0x44988f<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x458a4a(0x1b1)]?.[_0x458a4a(0x167)]('Retry\x20'+_0x44988f+'/'+RESOLVER_CONFIG[_0x458a4a(0x16c)]+'\x20for\x20'+_0x19b65b),await new Promise(_0x1454d5=>setTimeout(_0x1454d5,RESOLVER_CONFIG[_0x458a4a(0x19f)]*_0x44988f));else return this['logger']?.['error'](_0x458a4a(0x175)+_0x19b65b+':',_0x2773f0['message']),null;}}return null;}async[a0_0xd1e82e(0x196)](_0x5cb54e,_0x39295e){const _0x163c5b=a0_0xd1e82e,_0xb88940=await this[_0x163c5b(0x183)](_0x5cb54e);if(!_0xb88940)return null;const _0x187c09=_0xb88940['dist-tags']?.[_0x163c5b(0x1cc)];if(!_0x187c09)return null;const _0x567467=this[_0x163c5b(0x163)](_0x187c09);if(!_0x567467)return null;if(this['_isComplexRange'](_0x39295e)){const _0x1c557b=this['_parseComplexRange'](_0x39295e),_0x56c087=this[_0x163c5b(0x1b6)](_0x1c557b,_0x567467);if(_0x56c087)return _0x187c09;return null;}const _0x482384=this[_0x163c5b(0x168)](_0x39295e);if(!_0x482384)return null;const _0x36f8f5=this[_0x163c5b(0x1c2)](_0x482384,_0x567467);if(_0x36f8f5)return _0x482384['prefix']+_0x187c09;return null;}['_parseVersion'](_0x3c1ec2){const _0x598792=a0_0xd1e82e,_0x34e977=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x4ea2a1=_0x34e977['exec'](_0x3c1ec2);if(!_0x4ea2a1){const _0x258b6d=_0x3c1ec2['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x258b6d)return{'major':parseInt(_0x258b6d[0x1],0xa),'minor':parseInt(_0x258b6d[0x2],0xa),'patch':parseInt(_0x258b6d[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x4ea2a1[0x1],0xa),'minor':parseInt(_0x4ea2a1[0x2],0xa),'patch':parseInt(_0x4ea2a1[0x3],0xa),'prerelease':_0x4ea2a1[0x4]?_0x4ea2a1[0x4][_0x598792(0x1b7)]('.'):null,'build':_0x4ea2a1[0x5]||null};}[a0_0xd1e82e(0x1a6)](_0x1fbf75,_0x4358e9){const _0x5500fc=a0_0xd1e82e;if(_0x1fbf75[_0x5500fc(0x1a7)]!==_0x4358e9['major'])return _0x1fbf75['major']-_0x4358e9['major'];if(_0x1fbf75[_0x5500fc(0x187)]!==_0x4358e9[_0x5500fc(0x187)])return _0x1fbf75['minor']-_0x4358e9[_0x5500fc(0x187)];if(_0x1fbf75[_0x5500fc(0x1bf)]!==_0x4358e9['patch'])return _0x1fbf75[_0x5500fc(0x1bf)]-_0x4358e9[_0x5500fc(0x1bf)];if(!_0x1fbf75['prerelease']&&!_0x4358e9[_0x5500fc(0x1c6)])return 0x0;if(!_0x1fbf75['prerelease']&&_0x4358e9[_0x5500fc(0x1c6)])return 0x1;if(_0x1fbf75[_0x5500fc(0x1c6)]&&!_0x4358e9[_0x5500fc(0x1c6)])return-0x1;return this['_comparePrerelease'](_0x1fbf75[_0x5500fc(0x1c6)],_0x4358e9[_0x5500fc(0x1c6)]);}[a0_0xd1e82e(0x165)](_0x32f778,_0x38621f){const _0x51d65d=a0_0xd1e82e,_0x208452=Math['max'](_0x32f778['length'],_0x38621f['length']);for(let _0x5b0712=0x0;_0x5b0712<_0x208452;_0x5b0712++){if(_0x5b0712>=_0x32f778[_0x51d65d(0x1bb)])return-0x1;if(_0x5b0712>=_0x38621f['length'])return 0x1;const _0x9eaa2=_0x32f778[_0x5b0712],_0x59fb95=_0x38621f[_0x5b0712],_0x1fab10=/^\d+$/['test'](_0x9eaa2)?parseInt(_0x9eaa2,0xa):null,_0x297b0b=/^\d+$/[_0x51d65d(0x197)](_0x59fb95)?parseInt(_0x59fb95,0xa):null;if(_0x1fab10!==null&&_0x297b0b!==null){if(_0x1fab10!==_0x297b0b)return _0x1fab10-_0x297b0b;continue;}if(_0x1fab10!==null&&_0x297b0b===null)return-0x1;if(_0x1fab10===null&&_0x297b0b!==null)return 0x1;if(_0x9eaa2<_0x59fb95)return-0x1;if(_0x9eaa2>_0x59fb95)return 0x1;}return 0x0;}['_parseVersionRange'](_0x4c047b){const _0x47625b=a0_0xd1e82e,_0x2387b8=_0x4c047b['trim'](),_0x4de16d=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x49b724=_0x4de16d['exec'](_0x2387b8);if(_0x49b724){const _0x420370=_0x49b724[0x1],_0x20e739=_0x49b724[0x3],_0x3d70a1=_0x49b724[0x5],_0x370790=_0x420370==='*'||_0x420370[_0x47625b(0x1ca)]()==='x'||_0x20e739===undefined||_0x20e739==='*'||_0x20e739['toLowerCase']()==='x'||_0x3d70a1===undefined||_0x3d70a1==='*'||_0x3d70a1[_0x47625b(0x1ca)]()==='x';if(_0x370790)return{'prefix':'','operator':'x-range','major':_0x420370==='*'||_0x420370['toLowerCase']()==='x'?null:parseInt(_0x420370,0xa),'minor':!_0x20e739||_0x20e739==='*'||_0x20e739[_0x47625b(0x1ca)]()==='x'?null:parseInt(_0x20e739,0xa),'patch':!_0x3d70a1||_0x3d70a1==='*'||_0x3d70a1[_0x47625b(0x1ca)]()==='x'?null:parseInt(_0x3d70a1,0xa),'original':_0x4c047b};}let _0x433454='',_0x3db528=_0x2387b8,_0x2a3a9e='=';if(_0x2387b8[_0x47625b(0x18a)]('^'))_0x433454='^',_0x3db528=_0x2387b8['slice'](0x1),_0x2a3a9e='^';else{if(_0x2387b8[_0x47625b(0x18a)]('~'))_0x433454='~',_0x3db528=_0x2387b8[_0x47625b(0x1ce)](0x1),_0x2a3a9e='~';else{if(_0x2387b8[_0x47625b(0x18a)]('>='))_0x433454='>=',_0x3db528=_0x2387b8[_0x47625b(0x1ce)](0x2)['trim'](),_0x2a3a9e='>=';else{if(_0x2387b8[_0x47625b(0x18a)]('>'))_0x433454='>',_0x3db528=_0x2387b8['slice'](0x1)[_0x47625b(0x18b)](),_0x2a3a9e='>';else{if(_0x2387b8[_0x47625b(0x18a)]('<='))_0x433454='<=',_0x3db528=_0x2387b8['slice'](0x2)[_0x47625b(0x18b)](),_0x2a3a9e='<=';else _0x2387b8['startsWith']('<')&&(_0x433454='<',_0x3db528=_0x2387b8['slice'](0x1)[_0x47625b(0x18b)](),_0x2a3a9e='<');}}}}const _0x2beeb3=this['_parseVersion'](_0x3db528);if(!_0x2beeb3)return null;return{'prefix':_0x433454,'operator':_0x2a3a9e,'major':_0x2beeb3[_0x47625b(0x1a7)],'minor':_0x2beeb3['minor'],'patch':_0x2beeb3[_0x47625b(0x1bf)],'prerelease':_0x2beeb3[_0x47625b(0x1c6)],'build':_0x2beeb3['build'],'original':_0x4c047b};}[a0_0xd1e82e(0x1c2)](_0x88d51b,_0x41596e){const _0x3f6400=a0_0xd1e82e,_0x3cc922={'major':_0x88d51b['major'],'minor':_0x88d51b['minor'],'patch':_0x88d51b['patch'],'prerelease':_0x88d51b[_0x3f6400(0x1c6)]||null,'build':_0x88d51b['build']||null};switch(_0x88d51b['operator']){case'^':return this[_0x3f6400(0x184)](_0x3cc922,_0x41596e);case'~':return this['_isTildeUpdateAvailable'](_0x3cc922,_0x41596e);case'>=':case'>':return this[_0x3f6400(0x188)](_0x3cc922,_0x41596e);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x88d51b,_0x41596e);case _0x3f6400(0x191):return this[_0x3f6400(0x177)](_0x88d51b,_0x41596e);case'=':default:return this[_0x3f6400(0x17c)](_0x3cc922,_0x41596e);}}[a0_0xd1e82e(0x184)](_0x469470,_0x37a2e3){const _0x1fe47f=a0_0xd1e82e,_0xe751eb=this['_compareVersions'](_0x37a2e3,_0x469470);if(_0xe751eb<=0x0)return![];if(_0x469470['major']===0x0&&_0x469470[_0x1fe47f(0x187)]===0x0)return _0x37a2e3['major']===0x0&&_0x37a2e3['minor']===0x0;if(_0x469470[_0x1fe47f(0x1a7)]===0x0)return _0x37a2e3['major']===0x0&&_0x37a2e3['minor']===_0x469470[_0x1fe47f(0x187)];return _0x37a2e3[_0x1fe47f(0x1a7)]===_0x469470['major'];}[a0_0xd1e82e(0x19c)](_0x555b69,_0x5bf244){const _0x370e8e=a0_0xd1e82e,_0x19e7ed=this['_compareVersions'](_0x5bf244,_0x555b69);if(_0x19e7ed<=0x0)return![];return _0x5bf244['major']===_0x555b69[_0x370e8e(0x1a7)]&&_0x5bf244['minor']===_0x555b69[_0x370e8e(0x187)];}['_isSimpleUpdateAvailable'](_0x18bed8,_0x4e4e78){const _0x1ce8f4=a0_0xd1e82e,_0x304cc4=this[_0x1ce8f4(0x1a6)](_0x4e4e78,_0x18bed8);return _0x304cc4>0x0;}['_isExactUpdateAvailable'](_0x152595,_0x536032){const _0x1ef835=a0_0xd1e82e;return this[_0x1ef835(0x188)](_0x152595,_0x536032);}['_isLessThanUpdateAvailable'](_0x32c0a2,_0xc05a46){const _0x32d3eb=a0_0xd1e82e,_0x12b2e1=this['_compareVersions'](_0xc05a46,_0x32c0a2);if(_0x32c0a2[_0x32d3eb(0x170)]==='<')return _0x12b2e1<0x0;else{if(_0x32c0a2['operator']==='<=')return _0x12b2e1<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x1cadff,_0x3ca3b4){const _0x42e6af=a0_0xd1e82e;if(_0x1cadff[_0x42e6af(0x1a7)]!==null&&_0x3ca3b4[_0x42e6af(0x1a7)]!==_0x1cadff[_0x42e6af(0x1a7)])return![];if(_0x1cadff['minor']!==null&&_0x3ca3b4['minor']!==_0x1cadff['minor'])return![];if(_0x1cadff['patch']!==null&&_0x3ca3b4['patch']!==_0x1cadff[_0x42e6af(0x1bf)])return![];return!![];}[a0_0xd1e82e(0x1c8)](_0x557415){const _0x5eb3fb=a0_0xd1e82e;if(_0x557415['includes']('||'))return!![];const _0x2cbaab=_0x557415['trim']();if(_0x2cbaab[_0x5eb3fb(0x18a)]('^')||_0x2cbaab['startsWith']('~'))return![];const _0x5d1c74=_0x2cbaab[_0x5eb3fb(0x1b7)](/\s+/)['filter'](_0x45b125=>_0x45b125['length']>0x0);if(_0x5d1c74[_0x5eb3fb(0x1bb)]>0x1){const _0x40a579=/^(>=?|<=?|\^|~|[0-9])/;return _0x5d1c74[_0x5eb3fb(0x17a)](_0x26f6b4=>_0x40a579[_0x5eb3fb(0x197)](_0x26f6b4));}return![];}[a0_0xd1e82e(0x17d)](_0x3f3f75){const _0x233236=a0_0xd1e82e;if(_0x3f3f75['includes']('||')){const _0x4dcb41=_0x3f3f75[_0x233236(0x1b7)]('||')[_0x233236(0x1c4)](_0x30c9c2=>_0x30c9c2[_0x233236(0x18b)]());return{'type':'or','ranges':_0x4dcb41[_0x233236(0x1c4)](_0x4c28dd=>this['_parseComplexRange'](_0x4c28dd))};}const _0x56794e=_0x3f3f75[_0x233236(0x18b)]()[_0x233236(0x1b7)](/\s+/)['filter'](_0x2f6c21=>_0x2f6c21[_0x233236(0x1bb)]>0x0);if(_0x56794e[_0x233236(0x1bb)]>0x1)return{'type':_0x233236(0x1c3),'ranges':_0x56794e[_0x233236(0x1c4)](_0x2b9630=>this['_parseVersionRange'](_0x2b9630))};return{'type':'simple','range':this[_0x233236(0x168)](_0x3f3f75)};}['_satisfiesRange'](_0x214924,_0x587d1f){if(!_0x214924||!_0x587d1f)return![];return this['_isUpdateAvailable'](_0x214924,_0x587d1f);}['_satisfiesComplexRange'](_0x53a0b0,_0x205cac){const _0x2aedcf=a0_0xd1e82e;if(!_0x53a0b0||!_0x205cac)return![];switch(_0x53a0b0[_0x2aedcf(0x1a0)]){case'simple':return this['_satisfiesRange'](_0x53a0b0[_0x2aedcf(0x181)],_0x205cac);case'and':return _0x53a0b0['ranges']['every'](_0x2cd402=>this['_satisfiesRange'](_0x2cd402,_0x205cac));case'or':return _0x53a0b0['ranges'][_0x2aedcf(0x19e)](_0x2b361b=>this['_satisfiesComplexRange'](_0x2b361b,_0x205cac));default:return![];}}async['_checkDependencies'](_0x54c12b){const _0x2ee756=a0_0xd1e82e,_0x16b64d={},_0x4623e6=Object['entries'](_0x54c12b);for(let _0xa73b6=0x0;_0xa73b6<_0x4623e6[_0x2ee756(0x1bb)];_0xa73b6+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x334050=_0x4623e6['slice'](_0xa73b6,_0xa73b6+RESOLVER_CONFIG[_0x2ee756(0x1ba)]),_0x47133c=_0x334050['map'](async([_0x9dc757,_0x1d4199])=>{const _0x19748d=_0x2ee756;try{const _0x248342=await this[_0x19748d(0x196)](_0x9dc757,_0x1d4199);if(_0x248342){const _0x4c9ac3=_0x1d4199['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x9dc757,'newVersion':''+_0x4c9ac3+_0x248342,'oldVersion':_0x1d4199};}return null;}catch(_0x2b4bf3){return this['logger']?.[_0x19748d(0x17b)](_0x19748d(0x16f)+_0x9dc757+':',_0x2b4bf3[_0x19748d(0x1bd)]),null;}}),_0x136dfd=await Promise[_0x2ee756(0x16e)](_0x47133c);_0x136dfd['forEach'](_0x3c8b02=>{_0x3c8b02&&(_0x16b64d[_0x3c8b02['pkg']]=_0x3c8b02['newVersion']);});}return _0x16b64d;}async[a0_0xd1e82e(0x1b8)](_0x1097b1,_0x420916={}){const _0x5d8748=a0_0xd1e82e;try{this['_validateParameters'](_0x1097b1);const {path:_0x24979a,mode:_0x4fb40b,includeDev:_0x2e8236}=_0x1097b1,{projectDir:_0xbd394,agentId:_0x51e1c7,directoryAccess:_0x5dbb8b}=_0x420916,_0x28f3c6=this['_resolveAndValidatePath'](_0x24979a,_0x420916),_0x44640e=a0_0x300897['join'](_0x28f3c6,_0x5d8748(0x1ae));this[_0x5d8748(0x1b1)]?.['info'](_0x5d8748(0x1d4),{'mode':_0x4fb40b,'resolvedPath':_0x28f3c6,'includeDev':_0x2e8236,'agentId':_0x51e1c7});const _0x576fc2=[];_0x576fc2['push']('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x28f3c6),_0x576fc2['push']('Mode:\x20'+_0x4fb40b);try{await a0_0x89b43e[_0x5d8748(0x185)](_0x44640e);}catch{return{'success':![],'error':_0x5d8748(0x19d)+_0x44640e,'output':_0x576fc2[_0x5d8748(0x1af)]('\x0a')};}_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x186));const _0x329839=await a0_0x89b43e[_0x5d8748(0x1d9)](_0x44640e,'utf-8'),_0x24ba94=JSON['parse'](_0x329839),_0x26631b={..._0x24ba94['dependencies']};_0x2e8236&&_0x24ba94[_0x5d8748(0x171)]&&Object[_0x5d8748(0x18f)](_0x26631b,_0x24ba94['devDependencies']);if(Object[_0x5d8748(0x176)](_0x26631b)['length']===0x0)return{'success':!![],'mode':_0x4fb40b,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x576fc2['join']('\x0a')};if(Object['keys'](_0x26631b)[_0x5d8748(0x1bb)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x5d8748(0x1b5)+Object['keys'](_0x26631b)['length']+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x5d8748(0x1d6)],'output':_0x576fc2[_0x5d8748(0x1af)]('\x0a')};_0x576fc2[_0x5d8748(0x182)]('📊\x20Found\x20'+Object[_0x5d8748(0x176)](_0x26631b)['length']+_0x5d8748(0x18e)),_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x1bc));const _0x3d658b=await this[_0x5d8748(0x1cd)](_0x26631b);_0x576fc2[_0x5d8748(0x182)]('\x0a✅\x20Registry\x20check\x20complete'),_0x576fc2['push'](_0x5d8748(0x178)+Object[_0x5d8748(0x176)](_0x3d658b)[_0x5d8748(0x1bb)]);if(Object[_0x5d8748(0x176)](_0x3d658b)[_0x5d8748(0x1bb)]>0x0){_0x576fc2[_0x5d8748(0x182)]('\x0a📋\x20Available\x20updates:');for(const [_0x432e8b,_0x316891]of Object['entries'](_0x3d658b)){const _0x34d1e9=_0x26631b[_0x432e8b];_0x576fc2['push'](_0x5d8748(0x1a2)+_0x432e8b+':\x20'+_0x34d1e9+'\x20→\x20'+_0x316891);}}else _0x576fc2[_0x5d8748(0x182)]('\x0a🎉\x20All\x20dependencies\x20are\x20up-to-date!');if(_0x4fb40b===_0x5d8748(0x1d0))return Object['keys'](_0x3d658b)[_0x5d8748(0x1bb)]>0x0&&_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x162)),{'success':!![],'mode':_0x5d8748(0x1d0),'message':_0x5d8748(0x1d3)+Object[_0x5d8748(0x176)](_0x3d658b)[_0x5d8748(0x1bb)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x5d8748(0x176)](_0x26631b)['length'],'updatesAvailable':Object[_0x5d8748(0x176)](_0x3d658b)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x3d658b,'output':_0x576fc2[_0x5d8748(0x1af)]('\x0a')};if((_0x4fb40b===_0x5d8748(0x190)||_0x4fb40b==='auto')&&Object[_0x5d8748(0x176)](_0x3d658b)[_0x5d8748(0x1bb)]>0x0){_0x576fc2[_0x5d8748(0x182)]('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x5cd122=await this[_0x5d8748(0x19b)](_0x44640e);_0x5cd122?_0x576fc2['push'](_0x5d8748(0x193)+a0_0x300897[_0x5d8748(0x16d)](_0x5cd122)):_0x576fc2[_0x5d8748(0x182)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x576fc2['push']('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0xa543f3,_0x15f86f]of Object[_0x5d8748(0x16b)](_0x3d658b)){_0x24ba94['dependencies']?.[_0xa543f3]&&(_0x24ba94[_0x5d8748(0x174)][_0xa543f3]=_0x15f86f),_0x24ba94['devDependencies']?.[_0xa543f3]&&(_0x24ba94['devDependencies'][_0xa543f3]=_0x15f86f);}await a0_0x89b43e[_0x5d8748(0x18d)](_0x44640e,JSON[_0x5d8748(0x1b4)](_0x24ba94,null,0x2)+'\x0a'),_0x576fc2['push']('✅\x20package.json\x20updated'),_0x576fc2[_0x5d8748(0x182)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x5432ca,stderr:_0x1ef1f6}=await exec('npm\x20install',{'cwd':_0x28f3c6,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x5432ca){const _0x5bc55b=_0x5432ca['trim']()[_0x5d8748(0x1b7)]('\x0a');_0x5bc55b[_0x5d8748(0x1bb)]>0xa?_0x576fc2[_0x5d8748(0x182)]('\x20\x20'+_0x5bc55b['slice'](-0x5)[_0x5d8748(0x1af)](_0x5d8748(0x1c1))):_0x576fc2[_0x5d8748(0x182)]('\x20\x20'+_0x5432ca[_0x5d8748(0x18b)]());}_0x1ef1f6&&!_0x1ef1f6['includes'](_0x5d8748(0x195))&&_0x576fc2[_0x5d8748(0x182)]('⚠️\x20\x20'+_0x1ef1f6[_0x5d8748(0x18b)]());_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x1ac));try{const {stdout:_0x429993}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x28f3c6,'timeout':0x7530}),_0x25050d=JSON['parse'](_0x429993);if(_0x25050d[_0x5d8748(0x174)]){_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x192));for(const _0x28f0b1 of Object['keys'](_0x3d658b)){_0x25050d[_0x5d8748(0x174)][_0x28f0b1]&&_0x576fc2['push'](_0x5d8748(0x1a2)+_0x28f0b1+'@'+_0x25050d[_0x5d8748(0x174)][_0x28f0b1][_0x5d8748(0x1a3)]);}}}catch(_0xc952a8){this['logger']?.['debug']('npm\x20ls\x20failed:',_0xc952a8['message']);}return{'success':!![],'mode':_0x4fb40b,'message':'Successfully\x20updated\x20'+Object[_0x5d8748(0x176)](_0x3d658b)[_0x5d8748(0x1bb)]+_0x5d8748(0x1cf),'statistics':{'totalDependencies':Object['keys'](_0x26631b)[_0x5d8748(0x1bb)],'updatesAvailable':Object[_0x5d8748(0x176)](_0x3d658b)['length'],'updatesApplied':Object[_0x5d8748(0x176)](_0x3d658b)['length'],'errors':0x0},'updates':_0x3d658b,'backupCreated':_0x5cd122!==null,'backupPath':_0x5cd122,'output':_0x576fc2['join']('\x0a')};}catch(_0x232647){_0x576fc2[_0x5d8748(0x182)]('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x232647[_0x5d8748(0x1bd)]);if(_0x5cd122)try{await a0_0x89b43e['copyFile'](_0x5cd122,_0x44640e),_0x576fc2['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x1d40c1){_0x576fc2[_0x5d8748(0x182)](_0x5d8748(0x1a4));}return{'success':![],'mode':_0x4fb40b,'error':_0x5d8748(0x172)+_0x232647['message'],'statistics':{'totalDependencies':Object[_0x5d8748(0x176)](_0x26631b)['length'],'updatesAvailable':Object['keys'](_0x3d658b)[_0x5d8748(0x1bb)],'updatesApplied':0x0,'errors':0x1},'updates':_0x3d658b,'backupCreated':_0x5cd122!==null,'output':_0x576fc2['join']('\x0a')};}}else{if(_0x4fb40b===_0x5d8748(0x190)||_0x4fb40b==='auto')return _0x576fc2['push']('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x4fb40b,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object[_0x5d8748(0x176)](_0x26631b)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x576fc2['join']('\x0a')};}}catch(_0x36552f){return this[_0x5d8748(0x1b1)]?.[_0x5d8748(0x17b)](_0x5d8748(0x1cb),_0x36552f),{'success':![],'error':_0x36552f['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x36552f[_0x5d8748(0x1bd)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x48ef31=a0_0xea6b;function a0_0x11a4(){const _0x18f6c0=['DgLTzw91Da','BMv3q29UDgvUDa','twfKzsa','BgvUz3rO','Bw9Kzq','tufyx05fv19dt05uru5ux1njwKu','reLgrL9dt05urvHux0XjtKvt','ig1PC3nPBMCGB2XKq29UDgvUDa','C3rYAw5NAwz5','mMP2Eun4za','mti5mdmXmfreExnhAW','Cgf0Aa','uMvWBgfJzw1LBNqGAw4G','ywnJzxnZ','lMjHAW','AxnbC3LUyW','ihrVia','BgLUzxnmAw1PDa','C3rHCNrZv2L0Aa','pvSIj10Ow14Ij10QkvSIj10','z2vUzxjHDgvtDw1Tyxj5','mJuWmZe3v1znDe51','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','BgLUzxmTBgLTAxq','igzPBgvZigLUig9UzsbVCgvYyxrPB24','B2XKq29UDgvUDa','revgqvvmvf9uuKLnx01preu','ChvZAa','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','yxbWBhLuCMLTtw9Kzq','rMLSzsbUB3qGzM91BMq6ia','BwvZC2fNzq','zxjYB3i','Bwf4','nvPTELb2Da','zMLSzxnnB2rPzMLLza','s0iP','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','mti2mduYnwnjre9Otq','CMvWBgfJzw1LBNrZtwfKzq','mZngC1jyzxm','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','BM9Uzq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','CMvSyxrPDMu','D29YA2LUz0rPCMvJDg9YEq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','yMfJA3vWC0nYzwf0zwq','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','tuiPoIa','CMvWBgfJzw1LBNrZ','CgfYC2vytuW','zMLSzxm','Aw5JBhvKzxm','BMv3BgLUzxm','CgfYC2vqyxjHBwv0zxjZ','zxjYB3jZ','mty4q3vZzMjr','cIaGica','C3bSAxq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','zxHLyW','y291BNrpy2n1CNjLBMnLCW','BwLU','tufyx0rjrKzFteLorvm','igzPBguOCYKktw9KAwzPzwqG','tufyx0zjtevtx1bfuL9puevsqvrjt04','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','rMLSzsa','tufyx0zjtevFu0LArq','qKfds1vqx0vyvevou0LptG','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','q2HHBMDLzcbSAw5LCZOG','odm3nti4wKzYD2zw','Dg90ywXszxbSywnLBwvUDhm','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','ChjVy2vZC0zPBgu','mJCYmJjtCLDTBKm','zMLSzs1JB250zw50lxjLCgXHy2u','mtHqtevgAvm','DhjPBq','tufyx09mrf9dt05uru5ux1njwKu','zxH0CMfJDef0DhjPyNv0zq','Aw5MBW','B2jQzwn0','CgfYC2vku09o','AxnqyxrOqwnJzxnZAwjSzq','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','CgfYC2vmAw5LuMfUz2vZ','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','AxnbyNnVBhv0zq','mJCWnJK4wKXsANHi','AxnbCNjHEq','zMLSzxnqCM9JzxnZzwq','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','Bg9Nz2vY','sw52ywXPzcbTB2rLoIa','y291BNq','DxrMltG','oduYmhztwK9vCa','ywrK','CMvWBgfJzunVBMzPzW','cKjHy2T1ChmGy3jLyxrLzdOG','BwfW','ugf0AcbUB3qGywnJzxnZAwjSztOG','ntC0mdmYDvHgtNHt','z2vUzxjHDgveAwzM','CMvHzezPBgu','AgfZ','AgfZt3DUuhjVCgvYDhK','AM9PBG'];a0_0x11a4=function(){return _0x18f6c0;};return a0_0x11a4();}(function(_0x2bcdea,_0x4bb3d1){const _0x5e07fb=a0_0xea6b,_0x26f69e=_0x2bcdea();while(!![]){try{const _0x9782aa=-parseInt(_0x5e07fb(0x1e1))/0x1*(-parseInt(_0x5e07fb(0x1fe))/0x2)+-parseInt(_0x5e07fb(0x1ef))/0x3+-parseInt(_0x5e07fb(0x1ce))/0x4*(-parseInt(_0x5e07fb(0x217))/0x5)+-parseInt(_0x5e07fb(0x1d4))/0x6*(-parseInt(_0x5e07fb(0x1aa))/0x7)+parseInt(_0x5e07fb(0x1be))/0x8*(parseInt(_0x5e07fb(0x20a))/0x9)+parseInt(_0x5e07fb(0x1ff))/0xa*(parseInt(_0x5e07fb(0x1ac))/0xb)+parseInt(_0x5e07fb(0x1e9))/0xc*(-parseInt(_0x5e07fb(0x1d2))/0xd);if(_0x9782aa===_0x4bb3d1)break;else _0x26f69e['push'](_0x26f69e['shift']());}catch(_0x2b16e5){_0x26f69e['push'](_0x26f69e['shift']());}}}(a0_0x11a4,0x4c82b));import{BaseTool}from'./baseTool.js';import{promises as a0_0x26316a}from'fs';function a0_0xea6b(_0x1a0e3c,_0x4c68a4){_0x1a0e3c=_0x1a0e3c-0x1a9;const _0x11a448=a0_0x11a4();let _0xea6bc9=_0x11a448[_0x1a0e3c];if(a0_0xea6b['frSCit']===undefined){var _0x5102c0=function(_0x14b980){const _0x24bf5d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26316a='',_0x1b74e6='';for(let _0x537716=0x0,_0x50517c,_0x263832,_0x3aeba1=0x0;_0x263832=_0x14b980['charAt'](_0x3aeba1++);~_0x263832&&(_0x50517c=_0x537716%0x4?_0x50517c*0x40+_0x263832:_0x263832,_0x537716++%0x4)?_0x26316a+=String['fromCharCode'](0xff&_0x50517c>>(-0x2*_0x537716&0x6)):0x0){_0x263832=_0x24bf5d['indexOf'](_0x263832);}for(let _0xc4ee3b=0x0,_0x49ddcb=_0x26316a['length'];_0xc4ee3b<_0x49ddcb;_0xc4ee3b++){_0x1b74e6+='%'+('00'+_0x26316a['charCodeAt'](_0xc4ee3b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b74e6);};a0_0xea6b['uHfaEp']=_0x5102c0,a0_0xea6b['ovrmXG']={},a0_0xea6b['frSCit']=!![];}const _0x3421f8=_0x11a448[0x0],_0x8a561c=_0x1a0e3c+_0x3421f8,_0x50810e=a0_0xea6b['ovrmXG'][_0x8a561c];return!_0x50810e?(_0xea6bc9=a0_0xea6b['uHfaEp'](_0xea6bc9),a0_0xea6b['ovrmXG'][_0x8a561c]=_0xea6bc9):_0xea6bc9=_0x50810e,_0xea6bc9;}import a0_0x1b74e6 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x48ef31(0x203),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x537716={},_0x50517c=null){const _0xfa6605=a0_0x48ef31;super(_0x537716,_0x50517c),this['id']=_0xfa6605(0x1d3),this['requiresProject']=!![],this[_0xfa6605(0x204)]=!![],this[_0xfa6605(0x1f5)]=_0x537716['timeout']||0x1d4c0,this[_0xfa6605(0x1eb)]={...REPLACE_CONFIG,..._0x537716[_0xfa6605(0x1eb)]};}['getDescription'](){const _0x15d9b3=a0_0x48ef31;return _0x15d9b3(0x1c8)+REPLACE_CONFIG[_0x15d9b3(0x1ca)]/(0x400*0x400)+_0x15d9b3(0x1dc)+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG[_0x15d9b3(0x1fa)]/0x400+_0x15d9b3(0x1e4)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x15d9b3(0x1b2)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x15d9b3(0x1bf);}[a0_0x48ef31(0x1bc)](_0x263832){const _0x3b53dc=a0_0x48ef31;try{if(_0x263832[_0x3b53dc(0x1d5)]()[_0x3b53dc(0x207)]('{'))return this['parseJSON'](_0x263832);return this[_0x3b53dc(0x1b8)](_0x263832);}catch(_0x3aeba1){this['logger']?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x3aeba1[_0x3b53dc(0x214)]});throw new Error(_0x3b53dc(0x1c1)+_0x3aeba1['message']);}}['parseJSON'](_0xc4ee3b){const _0x5b2fac=a0_0x48ef31,_0x49ddcb=JSON['parse'](_0xc4ee3b);if(!_0x49ddcb[_0x5b2fac(0x1b9)]||!Array['isArray'](_0x49ddcb['files']))throw new Error('JSON\x20must\x20have\x20\x22files\x22\x20array');return{'files':_0x49ddcb[_0x5b2fac(0x1b9)][_0x5b2fac(0x1ed)](_0x21feb2=>({'path':_0x21feb2[_0x5b2fac(0x200)],'replacements':(_0x21feb2[_0x5b2fac(0x1b7)]||[])[_0x5b2fac(0x1ed)](_0x55ae2c=>({'oldContent':_0x55ae2c[_0x5b2fac(0x20e)],'newContent':_0x55ae2c['newContent'],'mode':_0x55ae2c['mode']||REPLACE_CONFIG[_0x5b2fac(0x20f)],'linesLimit':_0x55ae2c[_0x5b2fac(0x206)]||null}))}))};}[a0_0x48ef31(0x1b8)](_0x57e880){const _0x25bde=a0_0x48ef31,_0x285a4c=[],_0xf028b4=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x3bb217;while((_0x3bb217=_0xf028b4[_0x25bde(0x1c2)](_0x57e880))!==null){const _0x15865a=_0x3bb217[0x1],_0x12ccb0=_0x3bb217[0x2],_0x283da1=[],_0x1b0f80=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x355ff;while((_0x355ff=_0x1b0f80['exec'](_0x12ccb0))!==null){const _0x57ea7a=_0x355ff[0x1]||'',_0xfe8638=_0x355ff[0x2],_0x668208=this[_0x25bde(0x1d7)](_0x57ea7a,_0x25bde(0x1f9))||REPLACE_CONFIG[_0x25bde(0x20f)],_0x7caa7d=this[_0x25bde(0x1d7)](_0x57ea7a,_0x25bde(0x20c)),_0x3eaa27=/<old-content>([\s\S]*?)<\/old-content>/i[_0x25bde(0x1c2)](_0xfe8638);if(!_0x3eaa27){this[_0x25bde(0x1e5)]?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x306c33=_0x3eaa27[0x1],_0x4247ca=/<new-content>([\s\S]*?)<\/new-content>/i[_0x25bde(0x1c2)](_0xfe8638);if(!_0x4247ca){this['logger']?.['warn'](_0x25bde(0x1d0));continue;}const _0x1d41c1=_0x4247ca[0x1],_0x303ff7=this['applyTrimMode'](_0x306c33,_0x668208),_0x4eca1a=this['applyTrimMode'](_0x1d41c1,_0x668208);_0x283da1['push']({'oldContent':_0x303ff7,'newContent':_0x4eca1a,'mode':_0x668208,'linesLimit':_0x7caa7d});}_0x283da1[_0x25bde(0x1f8)]>0x0&&_0x285a4c[_0x25bde(0x210)]({'path':_0x15865a,'replacements':_0x283da1});}return{'files':_0x285a4c};}['extractAttribute'](_0x4e4681,_0x31ea96){const _0x3b7cc4=a0_0x48ef31,_0x58682a=new RegExp(_0x31ea96+_0x3b7cc4(0x208),'i'),_0x281d12=_0x58682a[_0x3b7cc4(0x1c2)](_0x4e4681);return _0x281d12?_0x281d12[0x1]:null;}[a0_0x48ef31(0x212)](_0xb7ea99,_0x21a9a0){const _0x1a7467=a0_0x48ef31;switch(_0x21a9a0){case _0x1a7467(0x1bb):return _0xb7ea99['replace'](/^\n+|\n+$/g,'');case _0x1a7467(0x1ae):return _0xb7ea99;case _0x1a7467(0x1d5):default:return _0xb7ea99['trim']();}}['getRequiredParameters'](){const _0x4a420b=a0_0x48ef31;return[_0x4a420b(0x1b9)];}[a0_0x48ef31(0x1a9)](_0x56203e){const _0x34b8cb=a0_0x48ef31,_0x22e306=[];if(!_0x56203e['files']||!Array[_0x34b8cb(0x1e2)](_0x56203e[_0x34b8cb(0x1b9)]))_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1ad));else{_0x56203e['files']['length']===0x0&&_0x22e306[_0x34b8cb(0x210)]('files\x20array\x20cannot\x20be\x20empty');_0x56203e[_0x34b8cb(0x1b9)][_0x34b8cb(0x1f8)]>this['replaceConfig'][_0x34b8cb(0x1c7)]&&_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x211)+this[_0x34b8cb(0x1eb)]['MAX_FILES_PER_OPERATION']+_0x34b8cb(0x20d));for(const _0x2d614f of _0x56203e['files']){!_0x2d614f[_0x34b8cb(0x200)]&&_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1cc));_0x2d614f[_0x34b8cb(0x200)]&&_0x2d614f['path'][_0x34b8cb(0x1ba)]('..')&&_0x22e306[_0x34b8cb(0x210)]('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x2d614f[_0x34b8cb(0x200)]);if(!_0x2d614f[_0x34b8cb(0x1b7)]||!Array['isArray'](_0x2d614f['replacements']))_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1c9)+_0x2d614f['path']+'\x20must\x20have\x20replacements\x20array');else{if(_0x2d614f[_0x34b8cb(0x1b7)]['length']===0x0)_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1c9)+_0x2d614f['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5517ab of _0x2d614f['replacements']){!_0x5517ab[_0x34b8cb(0x20e)]&&_0x5517ab['oldContent']!==''&&_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x201)+_0x2d614f[_0x34b8cb(0x200)]+_0x34b8cb(0x1fc)),!_0x5517ab['newContent']&&_0x5517ab['newContent']!==''&&_0x22e306[_0x34b8cb(0x210)]('Replacement\x20in\x20'+_0x2d614f['path']+'\x20missing\x20newContent'),_0x5517ab[_0x34b8cb(0x20e)]&&_0x5517ab[_0x34b8cb(0x20e)][_0x34b8cb(0x1f8)]>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0x22e306[_0x34b8cb(0x210)]('oldContent\x20too\x20large\x20(max\x20'+this[_0x34b8cb(0x1eb)][_0x34b8cb(0x1d6)]/0x400+_0x34b8cb(0x219)),_0x5517ab[_0x34b8cb(0x1f6)]&&_0x5517ab[_0x34b8cb(0x1f6)][_0x34b8cb(0x1f8)]>this['replaceConfig'][_0x34b8cb(0x1fa)]&&_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1de)+this[_0x34b8cb(0x1eb)][_0x34b8cb(0x1fa)]/0x400+'KB)'),_0x5517ab['mode']&&!['trim','newlines','none'][_0x34b8cb(0x1ba)](_0x5517ab['mode'])&&_0x22e306[_0x34b8cb(0x210)](_0x34b8cb(0x1e6)+_0x5517ab[_0x34b8cb(0x1f9)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x22e306[_0x34b8cb(0x1f8)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x22e306['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0xbdd53a){const _0x399702=a0_0x48ef31;if(!_0xbdd53a['files']||!Array['isArray'](_0xbdd53a[_0x399702(0x1b9)])||_0xbdd53a['files'][_0x399702(0x1f8)]===0x0)return![];const _0x45ad2f=_0xbdd53a[_0x399702(0x1b9)][0x0];if(!_0x45ad2f[_0x399702(0x1b7)]||!Array['isArray'](_0x45ad2f['replacements'])||_0x45ad2f['replacements']['length']===0x0)return![];return _0x45ad2f[_0x399702(0x1b7)][0x0][_0x399702(0x1f3)]('mode');}async['execute'](_0x11ceb3,_0x46c677){const _0x83bc30=a0_0x48ef31;typeof _0x11ceb3==='string'&&(this['logger']?.['info'](_0x83bc30(0x1df)),_0x11ceb3=this['parseParameters'](_0x11ceb3));_0x11ceb3&&typeof _0x11ceb3===_0x83bc30(0x1d9)&&_0x11ceb3[_0x83bc30(0x1b9)]&&!this['_isNormalizedParams'](_0x11ceb3)&&(this['logger']?.['info'](_0x83bc30(0x1b4)),_0x11ceb3=this[_0x83bc30(0x1da)](JSON[_0x83bc30(0x1fd)](_0x11ceb3)));const {files:_0x3450a3}=_0x11ceb3,{projectDir:_0x205858,agentId:_0x135091,directoryAccess:_0x11ae35}=_0x46c677;let _0x14a404=_0x205858||process['cwd']();_0x11ae35&&_0x11ae35[_0x83bc30(0x1b1)]&&(_0x14a404=_0x11ae35[_0x83bc30(0x1b1)],this[_0x83bc30(0x1e5)]?.[_0x83bc30(0x1d8)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x11ae35['workingDirectory'],'agentId':_0x135091}));this[_0x83bc30(0x1e5)]?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x3450a3['length'],'workingDirectory':_0x14a404,'agentId':_0x135091});const _0x3334d9=[],_0x6a01f0={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x4cbfac of _0x3450a3){try{const _0x5335b7=await this['processFile'](_0x4cbfac,_0x14a404,_0x11ae35);_0x3334d9['push'](_0x5335b7),_0x6a01f0['filesProcessed']++,_0x5335b7[_0x83bc30(0x1ab)]>0x0&&(_0x6a01f0['filesModified']++,_0x6a01f0[_0x83bc30(0x1cf)]+=_0x5335b7['replacementsMade']),_0x5335b7['backupCreated']&&_0x6a01f0['backupsCreated']++;}catch(_0x2761a0){this['logger']?.[_0x83bc30(0x215)]('Error\x20processing\x20file\x20'+_0x4cbfac['path'],{'error':_0x2761a0[_0x83bc30(0x214)]}),_0x3334d9[_0x83bc30(0x210)]({'filePath':_0x4cbfac['path'],'success':![],'error':_0x2761a0[_0x83bc30(0x214)]}),_0x6a01f0[_0x83bc30(0x1bd)]++;}}return{'success':_0x6a01f0['errors']===0x0,'results':_0x3334d9,'statistics':_0x6a01f0,'summary':this[_0x83bc30(0x209)](_0x6a01f0),'toolUsed':'file-content-replace'};}async[a0_0x48ef31(0x1d1)](_0x3e0c90,_0x3b88ef,_0x9bc0b8){const _0x7f3010=a0_0x48ef31,{path:_0x486ea6,replacements:_0x174f11}=_0x3e0c90,_0x3c71c7=a0_0x1b74e6[_0x7f3010(0x1e0)](_0x486ea6)?_0x486ea6:a0_0x1b74e6['resolve'](_0x3b88ef,_0x486ea6);if(_0x9bc0b8){const _0x57275b=this[_0x7f3010(0x1db)](_0x3c71c7,_0x3b88ef,_0x9bc0b8);if(!_0x57275b)throw new Error(_0x7f3010(0x1ee)+_0x486ea6);}try{await a0_0x26316a[_0x7f3010(0x202)](_0x3c71c7);}catch(_0xcf8880){throw new Error(_0x7f3010(0x213)+_0x486ea6);}const _0x32013a=await a0_0x26316a['stat'](_0x3c71c7);if(_0x32013a['size']>this[_0x7f3010(0x1eb)]['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x7f3010(0x1eb)][_0x7f3010(0x1ca)]/(0x400*0x400)+_0x7f3010(0x1b6)+_0x486ea6);let _0x27fa72=await a0_0x26316a[_0x7f3010(0x1f1)](_0x3c71c7,'utf-8');const _0x4cbcaf=_0x27fa72;let _0x273109=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0x3c24dd=_0x3c71c7+this['replaceConfig'][_0x7f3010(0x1cb)];try{await a0_0x26316a['writeFile'](_0x3c24dd,_0x4cbcaf,_0x7f3010(0x1e8)),_0x273109=!![];}catch(_0x3c9f3d){this[_0x7f3010(0x1e5)]?.['warn']('Failed\x20to\x20create\x20backup:\x20'+_0x3c9f3d['message']);}}let _0x1c29b8=0x0;const _0x66d83f=[];for(const _0x39f5ab of _0x174f11){const _0x207127=await this['applyReplacement'](_0x27fa72,_0x39f5ab[_0x7f3010(0x20e)],_0x39f5ab[_0x7f3010(0x1f6)],_0x39f5ab[_0x7f3010(0x206)],_0x39f5ab['mode']);_0x27fa72=_0x207127[_0x7f3010(0x1f6)],_0x1c29b8+=_0x207127[_0x7f3010(0x1e7)],_0x66d83f[_0x7f3010(0x210)]({'oldContent':_0x39f5ab[_0x7f3010(0x20e)]['substring'](0x0,0x32)+(_0x39f5ab[_0x7f3010(0x20e)]['length']>0x32?'...':''),'newContent':_0x39f5ab['newContent']['substring'](0x0,0x32)+(_0x39f5ab['newContent']['length']>0x32?'...':''),'count':_0x207127['count'],'mode':_0x39f5ab['mode'],'linesLimit':_0x39f5ab[_0x7f3010(0x206)]});}_0x1c29b8>0x0&&await a0_0x26316a['writeFile'](_0x3c71c7,_0x27fa72,_0x7f3010(0x1e8));const _0x468b86=_0x1c29b8>0x0?this[_0x7f3010(0x1f0)](_0x4cbcaf,_0x27fa72):null;return{'filePath':_0x486ea6,'resolvedPath':_0x3c71c7,'success':!![],'replacementsMade':_0x1c29b8,'backupCreated':_0x273109,'replacementDetails':_0x66d83f,'diff':_0x468b86,'message':_0x1c29b8>0x0?_0x7f3010(0x1f7)+_0x1c29b8+'\x20replacement(s)\x20in\x20'+_0x486ea6:_0x7f3010(0x1b5)+_0x486ea6+'\x20(content\x20not\x20found)'};}['isPathAccessible'](_0x992bf2,_0x569273,_0x12965b){const _0x4ec029=a0_0x48ef31,_0x5f2b4e=a0_0x1b74e6[_0x4ec029(0x1b0)](_0x569273,_0x992bf2);if(!_0x5f2b4e[_0x4ec029(0x207)]('..')&&!a0_0x1b74e6[_0x4ec029(0x1e0)](_0x5f2b4e))return!![];if(_0x12965b[_0x4ec029(0x20b)])for(const _0x364400 of _0x12965b[_0x4ec029(0x20b)]){const _0x4ad56c=a0_0x1b74e6[_0x4ec029(0x1b0)](_0x364400,_0x992bf2);if(!_0x4ad56c[_0x4ec029(0x207)]('..')&&!a0_0x1b74e6['isAbsolute'](_0x4ad56c))return!![];}return![];}async['applyReplacement'](_0x53c2e2,_0x16b834,_0x4f46ec,_0x2cff00,_0x64edd5){const _0x4050a3=a0_0x48ef31;if(!_0x2cff00){const _0x358849=this['countOccurrences'](_0x53c2e2,_0x16b834);if(_0x358849===0x0)return{'newContent':_0x53c2e2,'count':0x0};const _0x106562=_0x53c2e2[_0x4050a3(0x1c0)](_0x16b834)['join'](_0x4f46ec);return{'newContent':_0x106562,'count':_0x358849};}const _0x44f3e6=this[_0x4050a3(0x1dd)](_0x2cff00),_0x596d65=_0x53c2e2[_0x4050a3(0x1c0)]('\x0a');let _0x21e7c4=0x0;for(let _0x42042a=0x0;_0x42042a<_0x596d65[_0x4050a3(0x1f8)];_0x42042a++){const _0x435eff=_0x42042a+0x1;if(_0x44f3e6[_0x4050a3(0x1f2)](_0x435eff)){if(_0x596d65[_0x42042a][_0x4050a3(0x1ba)](_0x16b834)){const _0x49e7a8=this[_0x4050a3(0x1c3)](_0x596d65[_0x42042a],_0x16b834);_0x596d65[_0x42042a]=_0x596d65[_0x42042a][_0x4050a3(0x1c0)](_0x16b834)['join'](_0x4f46ec),_0x21e7c4+=_0x49e7a8;}}}return{'newContent':_0x596d65[_0x4050a3(0x1f4)]('\x0a'),'count':_0x21e7c4};}['countOccurrences'](_0x381623,_0x55568a){if(!_0x55568a)return 0x0;return _0x381623['split'](_0x55568a)['length']-0x1;}['parseLineRanges'](_0x2e46a0){const _0x38201c=a0_0x48ef31,_0xf05134=new Set();if(!_0x2e46a0||_0x2e46a0[_0x38201c(0x1d5)]()==='')return _0xf05134;const _0x25bf79=_0x2e46a0['split'](',');for(const _0x58333e of _0x25bf79){const _0x89abd3=_0x58333e[_0x38201c(0x1d5)]();if(_0x89abd3==='')continue;if(_0x89abd3[_0x38201c(0x1ba)]('-')){const [_0x2e8e5f,_0x4ff354]=_0x89abd3[_0x38201c(0x1c0)]('-')[_0x38201c(0x1ed)](_0x2a3eea=>parseInt(_0x2a3eea['trim'](),0xa));if(!isNaN(_0x2e8e5f)&&!isNaN(_0x4ff354)&&_0x4ff354-_0x2e8e5f<this[_0x38201c(0x1eb)]['MAX_LINE_RANGE_SIZE'])for(let _0x1ab769=_0x2e8e5f;_0x1ab769<=_0x4ff354;_0x1ab769++){_0xf05134[_0x38201c(0x1ea)](_0x1ab769);}}else{const _0x246277=parseInt(_0x89abd3,0xa);!isNaN(_0x246277)&&_0xf05134[_0x38201c(0x1ea)](_0x246277);}}return _0xf05134;}[a0_0x48ef31(0x1f0)](_0x43ba3d,_0xb0cb04){const _0x121589=a0_0x48ef31,_0x1bc997=_0x43ba3d[_0x121589(0x1c0)]('\x0a'),_0x24f819=_0xb0cb04['split']('\x0a');let _0x4e7ae9=-0x1,_0x47ef76=-0x1;const _0x5457bf=Math[_0x121589(0x216)](_0x1bc997['length'],_0x24f819[_0x121589(0x1f8)]);for(let _0xab497b=0x0;_0xab497b<_0x5457bf;_0xab497b++){const _0x4f1240=_0xab497b<_0x1bc997[_0x121589(0x1f8)]?_0x1bc997[_0xab497b]:'',_0x9a0f33=_0xab497b<_0x24f819['length']?_0x24f819[_0xab497b]:'';if(_0x4f1240!==_0x9a0f33){if(_0x4e7ae9===-0x1)_0x4e7ae9=_0xab497b;_0x47ef76=_0xab497b;}}if(_0x4e7ae9===-0x1)return'No\x20differences';const _0x1f8025=this[_0x121589(0x1eb)][_0x121589(0x1fb)],_0x8e967e=Math['max'](0x0,_0x4e7ae9-_0x1f8025),_0xe43a1b=Math[_0x121589(0x1c4)](_0x5457bf-0x1,_0x47ef76+_0x1f8025);if(_0xe43a1b-_0x8e967e>this['replaceConfig'][_0x121589(0x1c5)])return'Diff\x20too\x20large\x20('+(_0xe43a1b-_0x8e967e+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x121589(0x1cd)+(_0x4e7ae9+0x1)+_0x121589(0x205)+(_0x47ef76+0x1));let _0x1e12a2='@@\x20-'+(_0x8e967e+0x1)+','+(_0xe43a1b-_0x8e967e+0x1)+'\x20+'+(_0x8e967e+0x1)+','+(_0xe43a1b-_0x8e967e+0x1)+'\x20@@\x0a';for(let _0x56864e=_0x8e967e;_0x56864e<=_0xe43a1b;_0x56864e++){const _0x198b3a=_0x56864e<_0x1bc997['length']?_0x1bc997[_0x56864e]:'',_0x198371=_0x56864e<_0x24f819[_0x121589(0x1f8)]?_0x24f819[_0x56864e]:'';_0x198b3a===_0x198371?_0x1e12a2+='\x20\x20'+_0x198b3a+'\x0a':(_0x1e12a2+='-\x20'+_0x198b3a+'\x0a',_0x1e12a2+='+\x20'+_0x198371+'\x0a');}return _0x1e12a2;}[a0_0x48ef31(0x209)](_0x4aef1f){const _0x3e3470=a0_0x48ef31;return('\x0aProcessed\x20'+_0x4aef1f[_0x3e3470(0x1e3)]+_0x3e3470(0x1c6)+_0x4aef1f[_0x3e3470(0x218)]+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x4aef1f[_0x3e3470(0x1cf)]+_0x3e3470(0x1ec)+_0x4aef1f[_0x3e3470(0x1b3)]+'\x0aErrors:\x20'+_0x4aef1f[_0x3e3470(0x1bd)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0x1ca7fe){const _0x186e0a=a0_0x48ef31;this['logger']?.[_0x186e0a(0x1d8)](_0x186e0a(0x1af),{'operationId':_0x1ca7fe});}}export default FileContentReplaceTool;
|
|
1
|
+
function a0_0x8553(){const _0x14c8ce=['tufyx05fv19dt05uru5ux1njwKu','tuiPoIa','ChjVy2vZC0zPBgu','CgfYC2vqyxjHBwv0zxjZ','z2v0rgvZy3jPChrPB24','AxnqyxrOqwnJzxnZAwjSzq','BwfW','zMLSzs1JB250zw50lxjLCgXHy2u','CgfYC2vmAw5LuMfUz2vZ','D3jPDgvgAwXL','BgvUz3rO','BwvZC2fNzq','C3rHCNrZv2L0Aa','B2jQzwn0','BMv3BgLUzxm','DxrMltG','CMvWBgfJzunVBMzPzW','z2vUzxjHDgvtDw1Tyxj5','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','Bwf4','mtu0ota0t05PvfHS','C3rHDa','ntq0odj4ueD2Dxy','pvSIj10Ow14Ij10QkvSIj10','AxnbC3LUyW','s0iP','AxnbCNjHEq','AM9PBG','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','tufyx0XjtKvFuKfor0vFu0LArq','yMfJA3vWC0nYzwf0zwq','tufyx0zjtevtx1bfuL9puevsqvrjt04','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','Aw5JBhvKzxm','DgLTzw91Da','rMLSzsa','y3DK','zxHLyW','n3HXqvnpAq','AgfZt3DUuhjVCgvYDhK','zxH0CMfJDef0DhjPyNv0zq','qeaGlq','ywrK','sw52ywXPzcbTB2rLoIa','DhjPBq','ugf0AcbUB3qGywnJzxnZAwjSztOG','CgfYC2vku09o','D2fYBG','C3bSAxq','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','Bg9Nz2vY','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','CgfYC2u','y2XLyw51Ca','CMvZB2X2zq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','cIaGica','CMvHzezPBgu','qKfds1vqx0vyvevou0LptG','uMvWBgfJzw1LBNqGAw4G','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','zxjYB3jZ','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','igzPBguOCYKktw9KAwzPzwqG','ChvZAa','Bw9Kzq','BMv3q29UDgvUDa','CMvWBgfJzw1LBNrZ','ndm5mtqXmMHrr0nzAq','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','y291BNrpy2n1CNjLBMnLCW','C3vIC3rYAw5N','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','z2vUzxjHDgveAwzM','ntGWmZa0ofjvDezXDG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zMLSzxnnB2rPzMLLza','tM8GzgLMzMvYzw5Jzxm','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','C3rYAw5N','cLbYB2nLC3nLzca','tufyx0zjtevFu0LArq','CMvSyxrPDMu','yMfJA3vWq3jLyxrLza','rMLSzsb0B28GBgfYz2uGkg1HEca','mJi4odGYoxjUEvj3qW','nJe2mJK1BeHIu3n1','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','q1jfqvrfx0jbq0Tvufm','BM9Uzq','zxHLy3v0zq','BgLUzxnmAw1PDa','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','mJm2ndGWmePRsejcyG','D29YA2LUz0rPCMvJDg9YEq','CMvWBgfJzw1LBNrZtwfKzq','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','Aw5MBW','Cgf0Aa','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','q2HHBMDLzcbSAw5LCZOG','icHJB250zw50ig5VDcbMB3vUzcK','zMLSzxm','B2XKq29UDgvUDa'];a0_0x8553=function(){return _0x14c8ce;};return a0_0x8553();}const a0_0x3b6b67=a0_0xd99b;(function(_0x1c7080,_0x1ff7d0){const _0x453e59=a0_0xd99b,_0x123518=_0x1c7080();while(!![]){try{const _0x1bbaee=parseInt(_0x453e59(0x152))/0x1+parseInt(_0x453e59(0x150))/0x2+parseInt(_0x453e59(0x129))/0x3+-parseInt(_0x453e59(0x131))/0x4+parseInt(_0x453e59(0x12a))/0x5+parseInt(_0x453e59(0x118))/0x6+-parseInt(_0x453e59(0x162))/0x7*(parseInt(_0x453e59(0x11e))/0x8);if(_0x1bbaee===_0x1ff7d0)break;else _0x123518['push'](_0x123518['shift']());}catch(_0x10aa1a){_0x123518['push'](_0x123518['shift']());}}}(a0_0x8553,0x69d31));import{BaseTool}from'./baseTool.js';import{promises as a0_0x1a27ea}from'fs';function a0_0xd99b(_0x3b1383,_0x1abc69){_0x3b1383=_0x3b1383-0x106;const _0x85534=a0_0x8553();let _0xd99b77=_0x85534[_0x3b1383];if(a0_0xd99b['ZaMNsM']===undefined){var _0x487e36=function(_0x3e4b63){const _0x4fab8c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a27ea='',_0x2778f4='';for(let _0x3fae72=0x0,_0x8de720,_0xb1102b,_0x31027a=0x0;_0xb1102b=_0x3e4b63['charAt'](_0x31027a++);~_0xb1102b&&(_0x8de720=_0x3fae72%0x4?_0x8de720*0x40+_0xb1102b:_0xb1102b,_0x3fae72++%0x4)?_0x1a27ea+=String['fromCharCode'](0xff&_0x8de720>>(-0x2*_0x3fae72&0x6)):0x0){_0xb1102b=_0x4fab8c['indexOf'](_0xb1102b);}for(let _0x52dbe8=0x0,_0x2bc124=_0x1a27ea['length'];_0x52dbe8<_0x2bc124;_0x52dbe8++){_0x2778f4+='%'+('00'+_0x1a27ea['charCodeAt'](_0x52dbe8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2778f4);};a0_0xd99b['aDWihg']=_0x487e36,a0_0xd99b['TzixWy']={},a0_0xd99b['ZaMNsM']=!![];}const _0x3b3560=_0x85534[0x0],_0x1842da=_0x3b1383+_0x3b3560,_0x1199b6=a0_0xd99b['TzixWy'][_0x1842da];return!_0x1199b6?(_0xd99b77=a0_0xd99b['aDWihg'](_0xd99b77),a0_0xd99b['TzixWy'][_0x1842da]=_0xd99b77):_0xd99b77=_0x1199b6,_0xd99b77;}import a0_0x2778f4 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x3fae72={},_0x8de720=null){const _0x34f43a=a0_0xd99b;super(_0x3fae72,_0x8de720),this['id']='file-content-replace',this['requiresProject']=!![],this[_0x34f43a(0x154)]=!![],this['timeout']=_0x3fae72[_0x34f43a(0x15e)]||0x1d4c0,this['replaceConfig']={...REPLACE_CONFIG,..._0x3fae72['replaceConfig']};}[a0_0x3b6b67(0x140)](){const _0x1b2294=a0_0x3b6b67;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['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x1b2294(0x137)+REPLACE_CONFIG[_0x1b2294(0x13c)]/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+_0x1b2294(0x15c)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x1b2294(0x10a);}['parseParameters'](_0xb1102b){const _0x34d9c3=a0_0x3b6b67;try{if(_0xb1102b[_0x34d9c3(0x168)]()['startsWith']('{'))return this[_0x34d9c3(0x16a)](_0xb1102b);return this['parseXML'](_0xb1102b);}catch(_0x31027a){this[_0x34d9c3(0x16e)]?.['error'](_0x34d9c3(0x111),{'error':_0x31027a['message']});throw new Error(_0x34d9c3(0x109)+_0x31027a['message']);}}['parseJSON'](_0x52dbe8){const _0x1bab19=a0_0x3b6b67,_0x2bc124=JSON[_0x1bab19(0x106)](_0x52dbe8);if(!_0x2bc124[_0x1bab19(0x13a)]||!Array['isArray'](_0x2bc124['files']))throw new Error(_0x1bab19(0x16d));return{'files':_0x2bc124[_0x1bab19(0x13a)]['map'](_0x95b5ad=>({'path':_0x95b5ad[_0x1bab19(0x136)],'replacements':(_0x95b5ad['replacements']||[])['map'](_0x33d1c6=>({'oldContent':_0x33d1c6['oldContent'],'newContent':_0x33d1c6[_0x1bab19(0x116)],'mode':_0x33d1c6['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x33d1c6[_0x1bab19(0x12f)]||null}))}))};}['parseXML'](_0x463483){const _0x550fc7=a0_0x3b6b67,_0x28e899=[],_0x2e74ac=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x2e2265;while((_0x2e2265=_0x2e74ac['exec'](_0x463483))!==null){const _0x3a0b14=_0x2e2265[0x1],_0x575dcf=_0x2e2265[0x2],_0x37b1ea=[],_0x2fe6d1=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x43d837;while((_0x43d837=_0x2fe6d1['exec'](_0x575dcf))!==null){const _0xec05b8=_0x43d837[0x1]||'',_0x524076=_0x43d837[0x2],_0x5475a9=this['extractAttribute'](_0xec05b8,_0x550fc7(0x115))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x20ff2e=this[_0x550fc7(0x164)](_0xec05b8,'lines-limit'),_0x143a2b=/<old-content>([\s\S]*?)<\/old-content>/i[_0x550fc7(0x161)](_0x524076);if(!_0x143a2b){this['logger']?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x3ec536=_0x143a2b[0x1],_0x7c569=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x524076);if(!_0x7c569){this[_0x550fc7(0x16e)]?.['warn'](_0x550fc7(0x130));continue;}const _0x9fd96e=_0x7c569[0x1],_0x163663=this['applyTrimMode'](_0x3ec536,_0x5475a9),_0x523dfa=this['applyTrimMode'](_0x9fd96e,_0x5475a9);_0x37b1ea['push']({'oldContent':_0x163663,'newContent':_0x523dfa,'mode':_0x5475a9,'linesLimit':_0x20ff2e});}_0x37b1ea['length']>0x0&&_0x28e899['push']({'path':_0x3a0b14,'replacements':_0x37b1ea});}return{'files':_0x28e899};}[a0_0x3b6b67(0x164)](_0x5977c0,_0x5cc319){const _0x4871d8=a0_0x3b6b67,_0x491a32=new RegExp(_0x5cc319+_0x4871d8(0x153),'i'),_0x3d186b=_0x491a32[_0x4871d8(0x161)](_0x5977c0);return _0x3d186b?_0x3d186b[0x1]:null;}['applyTrimMode'](_0x2a770d,_0xff49f7){const _0x293a36=a0_0x3b6b67;switch(_0xff49f7){case _0x293a36(0x14a):return _0x2a770d['replace'](/^\n+|\n+$/g,'');case _0x293a36(0x12d):return _0x2a770d;case'trim':default:return _0x2a770d[_0x293a36(0x168)]();}}[a0_0x3b6b67(0x10e)](){return['files'];}[a0_0x3b6b67(0x11f)](_0x11eabb){const _0x2fcaa6=a0_0x3b6b67,_0xd07d67=[];if(!_0x11eabb[_0x2fcaa6(0x13a)]||!Array[_0x2fcaa6(0x156)](_0x11eabb['files']))_0xd07d67[_0x2fcaa6(0x114)]('files\x20must\x20be\x20an\x20array');else{_0x11eabb['files']['length']===0x0&&_0xd07d67[_0x2fcaa6(0x114)]('files\x20array\x20cannot\x20be\x20empty');_0x11eabb['files'][_0x2fcaa6(0x146)]>this[_0x2fcaa6(0x14c)][_0x2fcaa6(0x15b)]&&_0xd07d67['push'](_0x2fcaa6(0x11c)+this[_0x2fcaa6(0x14c)][_0x2fcaa6(0x15b)]+'\x20files\x20in\x20one\x20operation');for(const _0x28d677 of _0x11eabb[_0x2fcaa6(0x13a)]){!_0x28d677['path']&&_0xd07d67['push'](_0x2fcaa6(0x10f));_0x28d677[_0x2fcaa6(0x136)]&&_0x28d677[_0x2fcaa6(0x136)]['includes']('..')&&_0xd07d67[_0x2fcaa6(0x114)]('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0x28d677[_0x2fcaa6(0x136)]);if(!_0x28d677[_0x2fcaa6(0x117)]||!Array[_0x2fcaa6(0x156)](_0x28d677[_0x2fcaa6(0x117)]))_0xd07d67[_0x2fcaa6(0x114)]('File\x20'+_0x28d677['path']+'\x20must\x20have\x20replacements\x20array');else{if(_0x28d677[_0x2fcaa6(0x117)]['length']===0x0)_0xd07d67['push'](_0x2fcaa6(0x15f)+_0x28d677[_0x2fcaa6(0x136)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x4293b2 of _0x28d677['replacements']){!_0x4293b2['oldContent']&&_0x4293b2[_0x2fcaa6(0x13b)]!==''&&_0xd07d67['push']('Replacement\x20in\x20'+_0x28d677['path']+'\x20missing\x20oldContent'),!_0x4293b2['newContent']&&_0x4293b2[_0x2fcaa6(0x116)]!==''&&_0xd07d67['push'](_0x2fcaa6(0x10d)+_0x28d677['path']+'\x20missing\x20newContent'),_0x4293b2['oldContent']&&_0x4293b2['oldContent'][_0x2fcaa6(0x146)]>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0xd07d67['push'](_0x2fcaa6(0x12b)+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+_0x2fcaa6(0x155)),_0x4293b2[_0x2fcaa6(0x116)]&&_0x4293b2[_0x2fcaa6(0x116)][_0x2fcaa6(0x146)]>this[_0x2fcaa6(0x14c)][_0x2fcaa6(0x13c)]&&_0xd07d67[_0x2fcaa6(0x114)](_0x2fcaa6(0x122)+this['replaceConfig']['MAX_NEW_CONTENT_SIZE']/0x400+_0x2fcaa6(0x155)),_0x4293b2['mode']&&!['trim',_0x2fcaa6(0x14a),_0x2fcaa6(0x12d)][_0x2fcaa6(0x15d)](_0x4293b2['mode'])&&_0xd07d67['push'](_0x2fcaa6(0x167)+_0x4293b2['mode']+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0xd07d67['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0xd07d67['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x6ef2c8){const _0x1058b4=a0_0x3b6b67;if(!_0x6ef2c8['files']||!Array['isArray'](_0x6ef2c8[_0x1058b4(0x13a)])||_0x6ef2c8[_0x1058b4(0x13a)]['length']===0x0)return![];const _0x31534d=_0x6ef2c8[_0x1058b4(0x13a)][0x0];if(!_0x31534d['replacements']||!Array['isArray'](_0x31534d[_0x1058b4(0x117)])||_0x31534d['replacements']['length']===0x0)return![];return _0x31534d['replacements'][0x0][_0x1058b4(0x163)]('mode');}async[a0_0x3b6b67(0x12e)](_0x3c1bd1,_0x255416){const _0x1bc200=a0_0x3b6b67;typeof _0x3c1bd1===_0x1bc200(0x123)&&(this['logger']?.[_0x1bc200(0x135)](_0x1bc200(0x119)),_0x3c1bd1=this[_0x1bc200(0x13f)](_0x3c1bd1));_0x3c1bd1&&typeof _0x3c1bd1===_0x1bc200(0x149)&&_0x3c1bd1[_0x1bc200(0x13a)]&&!this['_isNormalizedParams'](_0x3c1bd1)&&(this[_0x1bc200(0x16e)]?.['info']('FileContentReplaceTool:\x20Normalizing\x20object\x20parameters'),_0x3c1bd1=this[_0x1bc200(0x16a)](JSON['stringify'](_0x3c1bd1)));const {files:_0x395731}=_0x3c1bd1,{projectDir:_0x48d64c,agentId:_0x385ec4,directoryAccess:_0xb43f71}=_0x255416;let _0xbeb7da=_0x48d64c||process[_0x1bc200(0x160)]();_0xb43f71&&_0xb43f71[_0x1bc200(0x132)]&&(_0xbeb7da=_0xb43f71['workingDirectory'],this[_0x1bc200(0x16e)]?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0xb43f71[_0x1bc200(0x132)],'agentId':_0x385ec4}));this[_0x1bc200(0x16e)]?.[_0x1bc200(0x135)]('Executing\x20file\x20content\x20replace',{'fileCount':_0x395731['length'],'workingDirectory':_0xbeb7da,'agentId':_0x385ec4});const _0x4012df=[],_0x1f596a={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x2423e5 of _0x395731){try{const _0x465cbd=await this[_0x1bc200(0x13e)](_0x2423e5,_0xbeb7da,_0xb43f71);_0x4012df['push'](_0x465cbd),_0x1f596a['filesProcessed']++,_0x465cbd['replacementsMade']>0x0&&(_0x1f596a['filesModified']++,_0x1f596a['totalReplacements']+=_0x465cbd[_0x1bc200(0x133)]),_0x465cbd[_0x1bc200(0x127)]&&_0x1f596a[_0x1bc200(0x15a)]++;}catch(_0x35ca11){this[_0x1bc200(0x16e)]?.['error'](_0x1bc200(0x16f)+_0x2423e5['path'],{'error':_0x35ca11[_0x1bc200(0x147)]}),_0x4012df[_0x1bc200(0x114)]({'filePath':_0x2423e5[_0x1bc200(0x136)],'success':![],'error':_0x35ca11['message']}),_0x1f596a[_0x1bc200(0x110)]++;}}return{'success':_0x1f596a[_0x1bc200(0x110)]===0x0,'results':_0x4012df,'statistics':_0x1f596a,'summary':this[_0x1bc200(0x14d)](_0x1f596a),'toolUsed':_0x1bc200(0x143)};}async['processFile'](_0x4d5b53,_0x58966b,_0x4ffaab){const _0x59e76a=a0_0x3b6b67,{path:_0xbcdc9e,replacements:_0x53ae8a}=_0x4d5b53,_0x420f04=a0_0x2778f4['isAbsolute'](_0xbcdc9e)?_0xbcdc9e:a0_0x2778f4[_0x59e76a(0x108)](_0x58966b,_0xbcdc9e);if(_0x4ffaab){const _0x21699b=this['isPathAccessible'](_0x420f04,_0x58966b,_0x4ffaab);if(!_0x21699b)throw new Error(_0x59e76a(0x169)+_0xbcdc9e);}try{await a0_0x1a27ea['access'](_0x420f04);}catch(_0x4e32a3){throw new Error('File\x20not\x20found:\x20'+_0xbcdc9e);}const _0xe3fdc8=await a0_0x1a27ea[_0x59e76a(0x151)](_0x420f04);if(_0xe3fdc8['size']>this['replaceConfig'][_0x59e76a(0x125)])throw new Error(_0x59e76a(0x128)+this[_0x59e76a(0x14c)][_0x59e76a(0x125)]/(0x400*0x400)+_0x59e76a(0x13d)+_0xbcdc9e);let _0x2bda7c=await a0_0x1a27ea[_0x59e76a(0x10b)](_0x420f04,_0x59e76a(0x14b));const _0xff7078=_0x2bda7c;let _0x5d0dc6=![];if(this[_0x59e76a(0x14c)][_0x59e76a(0x12c)]){const _0x2cb28f=_0x420f04+this['replaceConfig'][_0x59e76a(0x10c)];try{await a0_0x1a27ea[_0x59e76a(0x145)](_0x2cb28f,_0xff7078,'utf-8'),_0x5d0dc6=!![];}catch(_0x1824c7){this[_0x59e76a(0x16e)]?.[_0x59e76a(0x16b)]('Failed\x20to\x20create\x20backup:\x20'+_0x1824c7['message']);}}let _0x58ae90=0x0;const _0x452ddb=[];for(const _0x556470 of _0x53ae8a){const _0x2cba3b=await this['applyReplacement'](_0x2bda7c,_0x556470[_0x59e76a(0x13b)],_0x556470[_0x59e76a(0x116)],_0x556470[_0x59e76a(0x12f)],_0x556470['mode']);_0x2bda7c=_0x2cba3b['newContent'],_0x58ae90+=_0x2cba3b['count'],_0x452ddb['push']({'oldContent':_0x556470['oldContent']['substring'](0x0,0x32)+(_0x556470['oldContent'][_0x59e76a(0x146)]>0x32?'...':''),'newContent':_0x556470[_0x59e76a(0x116)][_0x59e76a(0x11b)](0x0,0x32)+(_0x556470['newContent'][_0x59e76a(0x146)]>0x32?'...':''),'count':_0x2cba3b['count'],'mode':_0x556470['mode'],'linesLimit':_0x556470['linesLimit']});}_0x58ae90>0x0&&await a0_0x1a27ea[_0x59e76a(0x145)](_0x420f04,_0x2bda7c,_0x59e76a(0x14b));const _0x5f24fd=_0x58ae90>0x0?this[_0x59e76a(0x11d)](_0xff7078,_0x2bda7c):null;return{'filePath':_0xbcdc9e,'resolvedPath':_0x420f04,'success':!![],'replacementsMade':_0x58ae90,'backupCreated':_0x5d0dc6,'replacementDetails':_0x452ddb,'diff':_0x5f24fd,'message':_0x58ae90>0x0?'Made\x20'+_0x58ae90+'\x20replacement(s)\x20in\x20'+_0xbcdc9e:_0x59e76a(0x112)+_0xbcdc9e+_0x59e76a(0x139)};}[a0_0x3b6b67(0x141)](_0x300653,_0x5dd168,_0x552992){const _0x5725d5=a0_0x3b6b67,_0x3989ae=a0_0x2778f4[_0x5725d5(0x126)](_0x5dd168,_0x300653);if(!_0x3989ae[_0x5725d5(0x148)]('..')&&!a0_0x2778f4['isAbsolute'](_0x3989ae))return!![];if(_0x552992[_0x5725d5(0x158)])for(const _0xbbefc of _0x552992[_0x5725d5(0x158)]){const _0xc8dcff=a0_0x2778f4[_0x5725d5(0x126)](_0xbbefc,_0x300653);if(!_0xc8dcff[_0x5725d5(0x148)]('..')&&!a0_0x2778f4['isAbsolute'](_0xc8dcff))return!![];}return![];}async['applyReplacement'](_0xebd6a5,_0x4ffcb5,_0x5c4c49,_0x26872c,_0x4cea19){const _0x468c9d=a0_0x3b6b67;if(!_0x26872c){const _0x2954c8=this[_0x468c9d(0x11a)](_0xebd6a5,_0x4ffcb5);if(_0x2954c8===0x0)return{'newContent':_0xebd6a5,'count':0x0};const _0x2a8634=_0xebd6a5['split'](_0x4ffcb5)[_0x468c9d(0x157)](_0x5c4c49);return{'newContent':_0x2a8634,'count':_0x2954c8};}const _0x12d50b=this['parseLineRanges'](_0x26872c),_0x2438a2=_0xebd6a5['split']('\x0a');let _0xcc7de=0x0;for(let _0x10bf3b=0x0;_0x10bf3b<_0x2438a2[_0x468c9d(0x146)];_0x10bf3b++){const _0x39f1aa=_0x10bf3b+0x1;if(_0x12d50b['has'](_0x39f1aa)){if(_0x2438a2[_0x10bf3b][_0x468c9d(0x15d)](_0x4ffcb5)){const _0x2d7964=this['countOccurrences'](_0x2438a2[_0x10bf3b],_0x4ffcb5);_0x2438a2[_0x10bf3b]=_0x2438a2[_0x10bf3b]['split'](_0x4ffcb5)[_0x468c9d(0x157)](_0x5c4c49),_0xcc7de+=_0x2d7964;}}}return{'newContent':_0x2438a2[_0x468c9d(0x157)]('\x0a'),'count':_0xcc7de};}['countOccurrences'](_0x2a8fdf,_0x1afe21){const _0x52b9cf=a0_0x3b6b67;if(!_0x1afe21)return 0x0;return _0x2a8fdf['split'](_0x1afe21)[_0x52b9cf(0x146)]-0x1;}[a0_0x3b6b67(0x144)](_0x548464){const _0x447581=a0_0x3b6b67,_0x48a3d0=new Set();if(!_0x548464||_0x548464['trim']()==='')return _0x48a3d0;const _0x59220a=_0x548464['split'](',');for(const _0x5ba7bd of _0x59220a){const _0x578ad1=_0x5ba7bd[_0x447581(0x168)]();if(_0x578ad1==='')continue;if(_0x578ad1[_0x447581(0x15d)]('-')){const [_0x30c1fd,_0x2b6161]=_0x578ad1[_0x447581(0x16c)]('-')[_0x447581(0x142)](_0x439872=>parseInt(_0x439872['trim'](),0xa));if(!isNaN(_0x30c1fd)&&!isNaN(_0x2b6161)&&_0x2b6161-_0x30c1fd<this['replaceConfig'][_0x447581(0x159)])for(let _0x187671=_0x30c1fd;_0x187671<=_0x2b6161;_0x187671++){_0x48a3d0[_0x447581(0x166)](_0x187671);}}else{const _0x1ebcd3=parseInt(_0x578ad1,0xa);!isNaN(_0x1ebcd3)&&_0x48a3d0[_0x447581(0x166)](_0x1ebcd3);}}return _0x48a3d0;}['generateDiff'](_0x160eaa,_0xd6acb6){const _0x42c579=a0_0x3b6b67,_0x1aa3fb=_0x160eaa[_0x42c579(0x16c)]('\x0a'),_0x526c13=_0xd6acb6['split']('\x0a');let _0x322890=-0x1,_0x4b825f=-0x1;const _0x5388d7=Math['max'](_0x1aa3fb[_0x42c579(0x146)],_0x526c13[_0x42c579(0x146)]);for(let _0x596188=0x0;_0x596188<_0x5388d7;_0x596188++){const _0x188896=_0x596188<_0x1aa3fb[_0x42c579(0x146)]?_0x1aa3fb[_0x596188]:'',_0x50f7d2=_0x596188<_0x526c13[_0x42c579(0x146)]?_0x526c13[_0x596188]:'';if(_0x188896!==_0x50f7d2){if(_0x322890===-0x1)_0x322890=_0x596188;_0x4b825f=_0x596188;}}if(_0x322890===-0x1)return _0x42c579(0x121);const _0x34c85a=this[_0x42c579(0x14c)]['DIFF_CONTEXT_LINES'],_0x3c2ccd=Math[_0x42c579(0x14f)](0x0,_0x322890-_0x34c85a),_0x52865f=Math['min'](_0x5388d7-0x1,_0x4b825f+_0x34c85a);if(_0x52865f-_0x3c2ccd>this['replaceConfig']['MAX_DIFF_LINES'])return'Diff\x20too\x20large\x20('+(_0x52865f-_0x3c2ccd+0x1)+_0x42c579(0x134)+(_0x42c579(0x138)+(_0x322890+0x1)+'\x20to\x20'+(_0x4b825f+0x1));let _0x3c5974=_0x42c579(0x165)+(_0x3c2ccd+0x1)+','+(_0x52865f-_0x3c2ccd+0x1)+'\x20+'+(_0x3c2ccd+0x1)+','+(_0x52865f-_0x3c2ccd+0x1)+'\x20@@\x0a';for(let _0x55bda2=_0x3c2ccd;_0x55bda2<=_0x52865f;_0x55bda2++){const _0x2e0fb0=_0x55bda2<_0x1aa3fb['length']?_0x1aa3fb[_0x55bda2]:'',_0x5eb700=_0x55bda2<_0x526c13['length']?_0x526c13[_0x55bda2]:'';_0x2e0fb0===_0x5eb700?_0x3c5974+='\x20\x20'+_0x2e0fb0+'\x0a':(_0x3c5974+='-\x20'+_0x2e0fb0+'\x0a',_0x3c5974+='+\x20'+_0x5eb700+'\x0a');}return _0x3c5974;}[a0_0x3b6b67(0x14d)](_0x36d6bb){const _0x517956=a0_0x3b6b67;return(_0x517956(0x124)+_0x36d6bb['filesProcessed']+_0x517956(0x113)+_0x36d6bb[_0x517956(0x120)]+_0x517956(0x14e)+_0x36d6bb['totalReplacements']+'\x0aBackups\x20created:\x20'+_0x36d6bb['backupsCreated']+'\x0aErrors:\x20'+_0x36d6bb[_0x517956(0x110)]+_0x517956(0x10a))['trim']();}async[a0_0x3b6b67(0x107)](_0x366a95){const _0x3c87b1=a0_0x3b6b67;this['logger']?.[_0x3c87b1(0x135)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x366a95});}}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x3280(_0x4fcbb5,_0x550cf2){_0x4fcbb5=_0x4fcbb5-0xfc;const _0x51a8a7=a0_0x51a8();let _0x32803f=_0x51a8a7[_0x4fcbb5];if(a0_0x3280['oDZoJu']===undefined){var _0x11e03d=function(_0x1f43cf){const _0x40f237='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x157b05='',_0x3635b7='';for(let _0x14a6f8=0x0,_0x6a85da,_0x2a7b9f,_0x581e83=0x0;_0x2a7b9f=_0x1f43cf['charAt'](_0x581e83++);~_0x2a7b9f&&(_0x6a85da=_0x14a6f8%0x4?_0x6a85da*0x40+_0x2a7b9f:_0x2a7b9f,_0x14a6f8++%0x4)?_0x157b05+=String['fromCharCode'](0xff&_0x6a85da>>(-0x2*_0x14a6f8&0x6)):0x0){_0x2a7b9f=_0x40f237['indexOf'](_0x2a7b9f);}for(let _0x398078=0x0,_0x36137f=_0x157b05['length'];_0x398078<_0x36137f;_0x398078++){_0x3635b7+='%'+('00'+_0x157b05['charCodeAt'](_0x398078)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3635b7);};a0_0x3280['EHQmhN']=_0x11e03d,a0_0x3280['TBVkZj']={},a0_0x3280['oDZoJu']=!![];}const _0x3207dc=_0x51a8a7[0x0],_0x6d47cc=_0x4fcbb5+_0x3207dc,_0x3e31cb=a0_0x3280['TBVkZj'][_0x6d47cc];return!_0x3e31cb?(_0x32803f=a0_0x3280['EHQmhN'](_0x32803f),a0_0x3280['TBVkZj'][_0x6d47cc]=_0x32803f):_0x32803f=_0x3e31cb,_0x32803f;}const a0_0x566f99=a0_0x3280;(function(_0x16edeb,_0x13a66e){const _0x55d85a=a0_0x3280,_0x22e193=_0x16edeb();while(!![]){try{const _0x42361e=parseInt(_0x55d85a(0x17c))/0x1+-parseInt(_0x55d85a(0x145))/0x2+-parseInt(_0x55d85a(0x14d))/0x3+parseInt(_0x55d85a(0x111))/0x4+-parseInt(_0x55d85a(0x14f))/0x5+parseInt(_0x55d85a(0x11c))/0x6+parseInt(_0x55d85a(0x125))/0x7;if(_0x42361e===_0x13a66e)break;else _0x22e193['push'](_0x22e193['shift']());}catch(_0x272870){_0x22e193['push'](_0x22e193['shift']());}}}(a0_0x51a8,0x6e09e));function a0_0x51a8(){const _0x41e4bf=['D3jPDgvgAwXL','C3vJy2vZCW','BgLZDa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','v3jPDguGywnJzxnZigrLBMLLzdOG','C2XPy2u','tufyx0zjtevFu0LArq','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y3DK','DhjPBq','Bg9Nz2vY','C291CMnLlxbHDgG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','yMLYDgH0Aw1L','DMfSAwrHDgvszwfKqwnJzxnZ','ywDLBNrjza','DMfSAwrHDgvqyxrOqwnJzxnZ','zMLSzvbHDgG','zMLSDgvY','uMvHzca','v3jVDguG','igj5DgvZihrVia','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','BwTKAxi','DhLWzq','DxrMoa','mZm0ndCYyxzzsMfs','y3jLyxrLrgLYzwn0B3j5','AxneAxjLy3rVCNK','z2v0t3bLCMf0Aw9UsgLZDg9YEq','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','zgvSzxrL','D3jPDgu','CMvHza','B3bLCMf0Aw9UsgLZDg9YEq','Dhj1zq','BgLZDerPCMvJDg9YEq','mZe3nJy3mhbRCMLluG','AxnbCNjHEq','Cgf0Aa','CMvUyw1L','y3jLyxrLlwrPCNm','icHIywnRDxaGy3jLyxrLzcK','y29UDgvUDa','BwvZC2fNzq','yxr0CMLIDxrLCW','ndG4mJKYmhnJB0LrrW','Bg9N','DMfSAwrHDgvxCML0zufJy2vZCW','z2v0v29YA2LUz0rPCMvJDg9YEq','ywXSB3DLza','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','z2v0rMLSzvn0yxrZ','Aw5JBhvKzxm','ywXSB3DLzerPCMvJDg9YAwvZ','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','ywn0Aw9UCW','z2v0u3vWCg9YDgvKqwn0Aw9UCW','CMvHC29U','ywnJzxnZ','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','ywXSB3DLzev4DgvUC2LVBNm','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','CgfYC2vqyxjHBwv0zxjZ','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','igj5DgvZicHTyxGG','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','y2HLy2TfEgLZDhm','zMLSzs1WyxrO','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','Bwf0y2HbBgW','B3v0Chv0lxbHDgG','DgLTzw91Da','zxHPC3rZ','AM9PBG','yxrPBwu','nJe1mde4twjrDNbN','CMvHzezPBgu','Bwf4rMLSzvnPEMu','BgvUz3rO','y29WEuzPBgu','BM9YBwfSAxPL','C3vIC3rYAw5N','C3rHDa','mJi3odCXnMjVsgjHAa','zxH0BMfTzq','nda3ndi1wvvRquP5','zMLSzq','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','B2jQzwn0','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','igj5DgvZ','ChvZAa','yxbWzw5KrMLSzq','yMXVy2TLzev4DgvUC2LVBNm','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','lNnJCG','zgvZDfbHDgG','Bw9Kzq','BxrPBwu','y3jLyxrLuMvSyxrPDMvqyxrO','yNL0zuXLBMD0Aa','y29WEq','CgfYC2vbDhrYAwj1DgvZ','rMLSzsb0B28GBgfYz2u6ia','tw92zwqG','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','AxngAwXL','C3rYAw5NAwz5','igL0zw1ZigLUia','q3jLyxrLzcbKAxjLy3rVCNKG','u291CMnLigzPBguGDg9VigXHCMDLoIa','BMfTzq','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','C3rYAw5N','q29WAwvKia','CMf3q29UDgvUDa','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','C2L6zq','CMvZB2X2zvbHDgG','zgLYBMfTzq','lMv4zq','C291CMnLugf0Aa','zgvZDc1WyxrO','rMfPBgvKihrVignOzwnRigv4Axn0zw5JzsbVzIa','yxjYyxK','Dg9ju09tDhjPBMC','y3jLyxrLlwrPCG','A2v5CW','mJG4nJyXAK1VD1vg','zgLYzwn0B3j5','D29YA2LUz0rPCMvJDg9YEq','yxbWzw5K','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','BwfW','qwn0Aw9Uia','lMjHy2T1Cc0','yxbWzw5Kvg9gAwXL','y3jLyxrLrgLYCW','rMfPBgvKihrVihDYAxrLigzPBguG','zgvIDwC'];a0_0x51a8=function(){return _0x41e4bf;};return a0_0x51a8();}import{BaseTool}from'./baseTool.js';import a0_0x157b05 from'../utilities/tagParser.js';import a0_0x3635b7 from'../utilities/directoryAccessManager.js';import a0_0x14a6f8 from'fs/promises';import a0_0x6a85da from'path';import a0_0x2a7b9f from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x581e83={},_0x398078=null){const _0x4035ed=a0_0x3280;super(_0x581e83,_0x398078),this['requiresProject']=!![],this['isAsync']=![],this[_0x4035ed(0x141)]=_0x581e83[_0x4035ed(0x141)]||0x7530,this[_0x4035ed(0x12e)]=_0x581e83['maxConcurrentOperations']||0x5,this[_0x4035ed(0x147)]=_0x581e83['maxFileSize']||SYSTEM_DEFAULTS[_0x4035ed(0xfd)],this['allowedExtensions']=_0x581e83['allowedExtensions']||null,this[_0x4035ed(0x158)]=_0x581e83['blockedExtensions']||[_0x4035ed(0x174),'.bat','.cmd',_0x4035ed(0x15a),'.com'],this[_0x4035ed(0x12d)]=_0x581e83['allowedDirectories']||null,this[_0x4035ed(0x119)]=[],this[_0x4035ed(0x180)]=new a0_0x3635b7(_0x581e83,_0x398078);}['getDescription'](){const _0x40ffd2=a0_0x3280;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['round'](this[_0x40ffd2(0x147)]/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a\x20\x20\x20\x20';}[a0_0x566f99(0x137)](_0x36137f){const _0x4c9094=a0_0x566f99;try{const _0x4d9826={},_0x25c0c9=[];this[_0x4c9094(0x101)]?.[_0x4c9094(0x187)]('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x36137f['length'],'contentPreview':_0x36137f[_0x4c9094(0x14b)](0x0,0xc8)});const _0x43986e=[_0x4c9094(0x118),'delete',_0x4c9094(0x160),'move',_0x4c9094(0x17a),'list',_0x4c9094(0x142),'stats','append'];for(const _0x2d2b30 of _0x43986e){const _0x5acd9e=a0_0x157b05[_0x4c9094(0x13e)](_0x36137f,_0x2d2b30);for(const _0x17c83e of _0x5acd9e){const _0x3c8983={'type':_0x2d2b30,..._0x17c83e[_0x4c9094(0x124)]};_0x3c8983[_0x4c9094(0x13c)]&&(_0x3c8983[_0x4c9094(0x108)]=_0x3c8983[_0x4c9094(0x13c)],delete _0x3c8983[_0x4c9094(0x13c)]),_0x3c8983[_0x4c9094(0x140)]&&(_0x3c8983[_0x4c9094(0x133)]=_0x3c8983['output-path'],delete _0x3c8983['output-path']),_0x3c8983[_0x4c9094(0x102)]&&(_0x3c8983[_0x4c9094(0x175)]=_0x3c8983['source-path'],delete _0x3c8983[_0x4c9094(0x102)]),_0x3c8983[_0x4c9094(0x176)]&&(_0x3c8983[_0x4c9094(0x15b)]=_0x3c8983['dest-path'],delete _0x3c8983['dest-path']),_0x3c8983['create-dirs']&&(_0x3c8983[_0x4c9094(0x185)]=_0x3c8983['create-dirs']===_0x4c9094(0x11a),delete _0x3c8983[_0x4c9094(0x120)]),_0x25c0c9[_0x4c9094(0x156)](_0x3c8983);}}const _0x31894d=_0x36137f[_0x4c9094(0x13f)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x829d5d of _0x31894d){const _0x3321c9=new a0_0x157b05(),_0x3076a4=_0x3321c9['parseAttributes'](_0x829d5d[0x1]),_0x5c1cc1=_0x829d5d[0x2][_0x4c9094(0x100)](),_0x2ab22e={'type':_0x4c9094(0x117),'content':_0x5c1cc1,..._0x3076a4};_0x2ab22e[_0x4c9094(0x140)]&&(_0x2ab22e['outputPath']=_0x2ab22e[_0x4c9094(0x140)],delete _0x2ab22e[_0x4c9094(0x140)]),_0x2ab22e[_0x4c9094(0x120)]&&(_0x2ab22e[_0x4c9094(0x185)]=_0x2ab22e['create-dirs']==='true',delete _0x2ab22e[_0x4c9094(0x120)]),_0x25c0c9['push'](_0x2ab22e);}const _0x19d2dc=_0x36137f[_0x4c9094(0x13f)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x131289 of _0x19d2dc){const _0x4e59aa=new a0_0x157b05(),_0x3cd0dc=_0x4e59aa[_0x4c9094(0x161)](_0x131289[0x1]),_0x3f2f76=_0x131289[0x2][_0x4c9094(0x100)](),_0x109625={'type':'append','content':_0x3f2f76,..._0x3cd0dc};_0x109625[_0x4c9094(0x13c)]&&(_0x109625[_0x4c9094(0x108)]=_0x109625[_0x4c9094(0x13c)],delete _0x109625[_0x4c9094(0x13c)]),_0x25c0c9[_0x4c9094(0x156)](_0x109625);}return _0x4d9826['actions']=_0x25c0c9,_0x4d9826[_0x4c9094(0x16e)]=_0x36137f[_0x4c9094(0x100)](),this['logger']?.['debug'](_0x4c9094(0x13a),{'totalActions':_0x25c0c9['length'],'actionTypes':_0x25c0c9[_0x4c9094(0x181)](_0x3febe5=>_0x3febe5[_0x4c9094(0x10f)]),'actions':_0x25c0c9['map'](_0x216fef=>({'type':_0x216fef['type'],'filePath':_0x216fef['filePath'],'outputPath':_0x216fef[_0x4c9094(0x133)],'hasContent':!!_0x216fef['content']}))}),_0x4d9826;}catch(_0xac66eb){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0xac66eb['message']);}}[a0_0x566f99(0x103)](){const _0x20ab94=a0_0x566f99;return[_0x20ab94(0x12f)];}['customValidateParameters'](_0x17d1cb){const _0x545556=a0_0x566f99,_0x2e5767=[];if(!_0x17d1cb[_0x545556(0x12f)]||!Array['isArray'](_0x17d1cb[_0x545556(0x12f)])||_0x17d1cb['actions']['length']===0x0)_0x2e5767['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x241ef6,_0x2e83b0]of _0x17d1cb['actions']['entries']()){if(!_0x2e83b0['type']){_0x2e5767['push'](_0x545556(0x182)+(_0x241ef6+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x2e83b0['type']){case'read':case'delete':case'exists':case'stats':!_0x2e83b0[_0x545556(0x108)]&&_0x2e5767[_0x545556(0x156)]('Action\x20'+(_0x241ef6+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x2e83b0[_0x545556(0x10f)]);break;case'write':!_0x2e83b0['outputPath']&&_0x2e5767[_0x545556(0x156)]('Action\x20'+(_0x241ef6+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x2e83b0[_0x545556(0x122)]&&_0x2e83b0[_0x545556(0x122)]!==''&&_0x2e5767['push'](_0x545556(0x182)+(_0x241ef6+0x1)+_0x545556(0x16b));break;case _0x545556(0x17f):!_0x2e83b0['filePath']&&_0x2e5767['push']('Action\x20'+(_0x241ef6+0x1)+_0x545556(0x159));!_0x2e83b0[_0x545556(0x122)]&&_0x2e83b0['content']!==''&&_0x2e5767[_0x545556(0x156)](_0x545556(0x182)+(_0x241ef6+0x1)+_0x545556(0x153));break;case _0x545556(0x160):case'move':!_0x2e83b0['sourcePath']&&_0x2e5767['push'](_0x545556(0x182)+(_0x241ef6+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x2e83b0['type']);!_0x2e83b0['destPath']&&_0x2e5767[_0x545556(0x156)]('Action\x20'+(_0x241ef6+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x2e83b0[_0x545556(0x10f)]);break;case'create-dir':case'list':!_0x2e83b0[_0x545556(0x17d)]&&_0x2e5767[_0x545556(0x156)](_0x545556(0x182)+(_0x241ef6+0x1)+_0x545556(0x170)+_0x2e83b0[_0x545556(0x10f)]);break;default:_0x2e5767['push'](_0x545556(0x182)+(_0x241ef6+0x1)+_0x545556(0x18b)+_0x2e83b0[_0x545556(0x10f)]);}_0x2e83b0['filePath']&&!this[_0x545556(0x115)](_0x2e83b0[_0x545556(0x108)])&&_0x2e5767[_0x545556(0x156)]('Action\x20'+(_0x241ef6+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x6a85da['extname'](_0x2e83b0[_0x545556(0x108)])),_0x2e83b0[_0x545556(0x133)]&&!this[_0x545556(0x115)](_0x2e83b0[_0x545556(0x133)])&&_0x2e5767['push'](_0x545556(0x182)+(_0x241ef6+0x1)+_0x545556(0x16f)+a0_0x6a85da[_0x545556(0x14e)](_0x2e83b0[_0x545556(0x133)]));}return{'valid':_0x2e5767[_0x545556(0x148)]===0x0,'errors':_0x2e5767};}async['execute'](_0xc94755,_0x4bf2bf){const _0x2744a2=a0_0x566f99;if(!_0xc94755||typeof _0xc94755!==_0x2744a2(0x152))throw new Error(_0x2744a2(0x164));const {actions:_0x951aa5}=_0xc94755;if(!_0x951aa5)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON[_0x2744a2(0x166)](Object[_0x2744a2(0x17b)](_0xc94755)));if(!Array[_0x2744a2(0x11d)](_0x951aa5))throw new Error(_0x2744a2(0x13d)+typeof _0x951aa5);if(_0x951aa5[_0x2744a2(0x148)]===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x16484b,agentId:_0x46ff46,directoryAccess:_0x47ec51}=_0x4bf2bf,_0x167b9c=_0x47ec51||this[_0x2744a2(0x180)][_0x2744a2(0x136)]({'workingDirectory':_0x16484b||process['cwd'](),'writeEnabledDirectories':[_0x16484b||process[_0x2744a2(0xff)]()],'restrictToProject':!![]});_0x47ec51&&_0x47ec51[_0x2744a2(0x17e)]?(console['log'](_0x2744a2(0x12a),_0x47ec51[_0x2744a2(0x17e)]),console['log']('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON['stringify'](_0x47ec51,null,0x2))):(console['log'](_0x2744a2(0x154),_0x16484b||process['cwd']()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x47ec51),console[_0x2744a2(0x126)](_0x2744a2(0x134),_0x16484b));const _0x2bfdef=[];for(const _0x45ed7e of _0x951aa5){try{let _0x247fd1;switch(_0x45ed7e['type']){case _0x2744a2(0x118):_0x247fd1=await this['readFile'](_0x45ed7e['filePath'],_0x167b9c,_0x45ed7e['encoding']);break;case'write':_0x247fd1=await this['writeFile'](_0x45ed7e[_0x2744a2(0x133)],_0x45ed7e['content'],_0x167b9c,{'encoding':_0x45ed7e['encoding'],'createDirs':_0x45ed7e[_0x2744a2(0x185)]});break;case _0x2744a2(0x17f):_0x247fd1=await this[_0x2744a2(0x184)](_0x45ed7e['filePath'],_0x45ed7e[_0x2744a2(0x122)],_0x167b9c,_0x45ed7e['encoding']);break;case _0x2744a2(0x116):_0x247fd1=await this['deleteFile'](_0x45ed7e['filePath'],_0x167b9c);break;case'copy':_0x247fd1=await this[_0x2744a2(0x149)](_0x45ed7e['sourcePath'],_0x45ed7e[_0x2744a2(0x15b)],_0x167b9c);break;case'move':_0x247fd1=await this['moveFile'](_0x45ed7e['sourcePath'],_0x45ed7e['destPath'],_0x167b9c);break;case'create-dir':_0x247fd1=await this[_0x2744a2(0x112)](_0x45ed7e['directory'],_0x167b9c);break;case'list':_0x247fd1=await this[_0x2744a2(0x11b)](_0x45ed7e[_0x2744a2(0x17d)],_0x167b9c);break;case'exists':_0x247fd1=await this[_0x2744a2(0x13b)](_0x45ed7e['filePath'],_0x167b9c);break;case'stats':_0x247fd1=await this[_0x2744a2(0x12b)](_0x45ed7e['filePath'],_0x167b9c);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x45ed7e['type']);}_0x2bfdef['push'](_0x247fd1),this['addToHistory'](_0x45ed7e,_0x247fd1,_0x4bf2bf[_0x2744a2(0x106)]);}catch(_0x496297){const _0x1244ed={'success':![],'action':_0x45ed7e[_0x2744a2(0x10f)],'error':_0x496297['message'],'filePath':_0x45ed7e[_0x2744a2(0x108)]||_0x45ed7e['outputPath']||_0x45ed7e['directory']};_0x2bfdef['push'](_0x1244ed),this['addToHistory'](_0x45ed7e,_0x1244ed,_0x4bf2bf[_0x2744a2(0x106)]);}}return{'success':!![],'actions':_0x2bfdef,'executedActions':_0x951aa5[_0x2744a2(0x148)],'toolUsed':'filesys'};}async[a0_0x566f99(0x146)](_0x52e76e,_0x21c10e,_0x33a86b='utf8'){const _0x5c6a01=a0_0x566f99,_0x38dfb4=this[_0x5c6a01(0x180)]['getWorkingDirectory'](_0x21c10e),_0x29fde0=this['resolvePath'](_0x52e76e,_0x38dfb4),_0x26315c=this['directoryAccessManager']['validateReadAccess'](_0x29fde0,_0x21c10e);if(!_0x26315c['allowed'])throw new Error(_0x5c6a01(0xfe)+_0x26315c['reason']+'\x20('+_0x26315c['path']+')');try{const _0x9a5b68=await a0_0x14a6f8['stat'](_0x29fde0);if(_0x9a5b68['size']>this[_0x5c6a01(0x147)])throw new Error(_0x5c6a01(0x162)+_0x9a5b68['size']+'\x20bytes\x20(max\x20'+this[_0x5c6a01(0x147)]+')');const _0xfe899c=await a0_0x14a6f8[_0x5c6a01(0x146)](_0x29fde0,_0x33a86b);return{'success':!![],'action':'read','filePath':this['directoryAccessManager'][_0x5c6a01(0x15e)](_0x29fde0,_0x21c10e),'content':_0xfe899c,'size':_0x9a5b68['size'],'encoding':_0x33a86b,'lastModified':_0x9a5b68[_0x5c6a01(0x15d)]['toISOString'](),'message':_0x5c6a01(0x10a)+_0x9a5b68['size']+'\x20bytes\x20from\x20'+_0x52e76e};}catch(_0xcbd8f4){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x52e76e+':\x20'+_0xcbd8f4['message']);}}async[a0_0x566f99(0x188)](_0x36d3b1,_0x4c8750,_0x528672,_0x249473={}){const _0xd9251f=a0_0x566f99,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x249473,_0x7c9b4e=this[_0xd9251f(0x180)]['getWorkingDirectory'](_0x528672),_0x1f5586=this['resolvePath'](_0x36d3b1,_0x7c9b4e),_0x36124f=this[_0xd9251f(0x180)]['validateWriteAccess'](_0x1f5586,_0x528672);if(!_0x36124f[_0xd9251f(0x129)])throw new Error(_0xd9251f(0x18d)+_0x36124f['reason']+'\x20('+_0x36124f['path']+')');try{const _0x3669c4=Buffer['byteLength'](_0x4c8750,encoding);if(_0x3669c4>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x3669c4+_0xd9251f(0x139)+this[_0xd9251f(0x147)]+')');if(createDirs){const _0x5c9320=a0_0x6a85da[_0xd9251f(0x173)](_0x1f5586);await a0_0x14a6f8['mkdir'](_0x5c9320,{'recursive':!![]});}let _0x39854e=null;try{await a0_0x14a6f8[_0xd9251f(0x132)](_0x1f5586),_0x39854e=_0x1f5586+_0xd9251f(0x183)+Date['now'](),await a0_0x14a6f8['copyFile'](_0x1f5586,_0x39854e);}catch{}await a0_0x14a6f8[_0xd9251f(0x188)](_0x1f5586,_0x4c8750,encoding);const _0x1040dd=await a0_0x14a6f8[_0xd9251f(0x14c)](_0x1f5586),_0x3232c4=this[_0xd9251f(0x180)]['createRelativePath'](_0x1f5586,_0x528672);return{'success':!![],'action':_0xd9251f(0x117),'outputPath':_0x3232c4,'fullPath':_0x1f5586,'size':_0x1040dd[_0xd9251f(0x171)],'encoding':encoding,'backupPath':_0x39854e?this[_0xd9251f(0x180)]['createRelativePath'](_0x39854e,_0x528672):null,'backupFullPath':_0x39854e||null,'message':_0xd9251f(0x10b)+_0x1040dd['size']+_0xd9251f(0x10c)+_0x1f5586};}catch(_0x2774cc){throw new Error(_0xd9251f(0x186)+_0x1f5586+':\x20'+_0x2774cc['message']);}}async[a0_0x566f99(0x184)](_0x35bfbd,_0x366861,_0x3df955,_0x541177=a0_0x566f99(0x110)){const _0x10dd0f=a0_0x566f99,_0x13a9a3=this[_0x10dd0f(0x180)][_0x10dd0f(0x128)](_0x3df955),_0x3854f0=this[_0x10dd0f(0x172)](_0x35bfbd,_0x13a9a3),_0xd9ed89=this['directoryAccessManager']['validateWriteAccess'](_0x3854f0,_0x3df955);if(!_0xd9ed89['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0xd9ed89[_0x10dd0f(0x131)]+'\x20('+_0xd9ed89[_0x10dd0f(0x11e)]+')');try{let _0x205528=0x0;try{const _0x479259=await a0_0x14a6f8[_0x10dd0f(0x14c)](_0x3854f0);_0x205528=_0x479259[_0x10dd0f(0x171)];}catch{}const _0x29e7f4=Buffer[_0x10dd0f(0x15f)](_0x366861,_0x541177);if(_0x205528+_0x29e7f4>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x205528+_0x29e7f4)+_0x10dd0f(0x139)+this[_0x10dd0f(0x147)]+')');await a0_0x14a6f8[_0x10dd0f(0x157)](_0x3854f0,_0x366861,_0x541177);const _0x4b9ea5=await a0_0x14a6f8['stat'](_0x3854f0),_0x56e36c=this['directoryAccessManager'][_0x10dd0f(0x15e)](_0x3854f0,_0x3df955);return{'success':!![],'action':_0x10dd0f(0x17f),'filePath':_0x56e36c,'fullPath':_0x3854f0,'appendedBytes':_0x29e7f4,'totalSize':_0x4b9ea5['size'],'encoding':_0x541177,'message':'Appended\x20'+_0x29e7f4+_0x10dd0f(0x10c)+_0x3854f0};}catch(_0x3e6799){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x3854f0+':\x20'+_0x3e6799[_0x10dd0f(0x123)]);}}async['deleteFile'](_0x25c9f3,_0xa1cc0c){const _0x2383f1=a0_0x566f99,_0x2c55d4=this['directoryAccessManager'][_0x2383f1(0x128)](_0xa1cc0c),_0x1611f6=this[_0x2383f1(0x172)](_0x25c9f3,_0x2c55d4),_0x369bb5=this[_0x2383f1(0x180)][_0x2383f1(0x127)](_0x1611f6,_0xa1cc0c);if(!_0x369bb5['allowed'])throw new Error('Delete\x20access\x20denied:\x20'+_0x369bb5['reason']+'\x20('+_0x369bb5[_0x2383f1(0x11e)]+')');try{const _0x4ce97f=await a0_0x14a6f8['stat'](_0x1611f6),_0x514ad9=_0x1611f6+'.deleted-backup-'+Date['now']();await a0_0x14a6f8['copyFile'](_0x1611f6,_0x514ad9),await a0_0x14a6f8['unlink'](_0x1611f6);const _0x392d73=this['directoryAccessManager'][_0x2383f1(0x15e)](_0x1611f6,_0xa1cc0c),_0x159e49=this['directoryAccessManager']['createRelativePath'](_0x514ad9,_0xa1cc0c);return{'success':!![],'action':_0x2383f1(0x116),'filePath':_0x392d73,'fullPath':_0x1611f6,'size':_0x4ce97f[_0x2383f1(0x171)],'backupPath':_0x159e49,'backupFullPath':_0x514ad9,'message':'Deleted\x20'+_0x1611f6+_0x2383f1(0x121)};}catch(_0x9c5a24){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x1611f6+':\x20'+_0x9c5a24[_0x2383f1(0x123)]);}}async[a0_0x566f99(0x149)](_0x12d701,_0x311df6,_0x23e7ac){const _0x160adf=a0_0x566f99,_0x428617=this['directoryAccessManager'][_0x160adf(0x128)](_0x23e7ac),_0x33c818=this['resolvePath'](_0x12d701,_0x428617),_0x462bea=this[_0x160adf(0x172)](_0x311df6,_0x428617),_0x4392e2=this[_0x160adf(0x180)]['validateReadAccess'](_0x33c818,_0x23e7ac);if(!_0x4392e2[_0x160adf(0x129)])throw new Error(_0x160adf(0x138)+_0x4392e2[_0x160adf(0x131)]+'\x20('+_0x4392e2['path']+')');const _0x152725=this['directoryAccessManager'][_0x160adf(0x127)](_0x462bea,_0x23e7ac);if(!_0x152725[_0x160adf(0x129)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x152725[_0x160adf(0x131)]+'\x20('+_0x152725['path']+')');try{const _0x38d755=await a0_0x14a6f8['stat'](_0x33c818);if(_0x38d755['size']>this['maxFileSize'])throw new Error(_0x160adf(0x169)+_0x38d755['size']+_0x160adf(0x155));const _0x4f93d0=a0_0x6a85da[_0x160adf(0x173)](_0x462bea);await a0_0x14a6f8['mkdir'](_0x4f93d0,{'recursive':!![]}),await a0_0x14a6f8['copyFile'](_0x33c818,_0x462bea);const _0x16c23b=this[_0x160adf(0x180)][_0x160adf(0x15e)](_0x33c818,_0x23e7ac),_0x42df70=this[_0x160adf(0x180)]['createRelativePath'](_0x462bea,_0x23e7ac);return{'success':!![],'action':_0x160adf(0x160),'sourcePath':_0x16c23b,'destPath':_0x42df70,'sourceFullPath':_0x33c818,'destFullPath':_0x462bea,'size':_0x38d755[_0x160adf(0x171)],'message':_0x160adf(0x16d)+_0x33c818+'\x20to\x20'+_0x462bea};}catch(_0x25d173){throw new Error('Failed\x20to\x20copy\x20'+_0x33c818+'\x20to\x20'+_0x462bea+':\x20'+_0x25d173[_0x160adf(0x123)]);}}async['moveFile'](_0x38e33a,_0x1134f0,_0x520c41){const _0x395a2f=a0_0x566f99,_0x4833ad=this[_0x395a2f(0x180)][_0x395a2f(0x128)](_0x520c41),_0x23fe73=this['resolvePath'](_0x38e33a,_0x4833ad),_0x25465b=this['resolvePath'](_0x1134f0,_0x4833ad),_0x5496e3=this['directoryAccessManager']['validateReadAccess'](_0x23fe73,_0x520c41);if(!_0x5496e3['allowed'])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x5496e3['reason']+'\x20('+_0x5496e3[_0x395a2f(0x11e)]+')');const _0x582fc6=this[_0x395a2f(0x180)]['validateWriteAccess'](_0x25465b,_0x520c41);if(!_0x582fc6['allowed'])throw new Error(_0x395a2f(0x18c)+_0x582fc6[_0x395a2f(0x131)]+'\x20('+_0x582fc6[_0x395a2f(0x11e)]+')');try{const _0x34eab3=await a0_0x14a6f8[_0x395a2f(0x14c)](_0x23fe73),_0x399ef2=a0_0x6a85da[_0x395a2f(0x173)](_0x25465b);await a0_0x14a6f8[_0x395a2f(0x10e)](_0x399ef2,{'recursive':!![]}),await a0_0x14a6f8[_0x395a2f(0x11f)](_0x23fe73,_0x25465b);const _0x5d7e48=this['directoryAccessManager'][_0x395a2f(0x15e)](_0x23fe73,_0x520c41),_0x4dd546=this[_0x395a2f(0x180)]['createRelativePath'](_0x25465b,_0x520c41);return{'success':!![],'action':'move','sourcePath':_0x5d7e48,'destPath':_0x4dd546,'fullSourcePath':_0x23fe73,'fullDestPath':_0x25465b,'size':_0x34eab3['size'],'message':_0x395a2f(0x163)+_0x38e33a+'\x20to\x20'+_0x1134f0};}catch(_0x5e13a0){throw new Error('Failed\x20to\x20move\x20'+_0x38e33a+'\x20to\x20'+_0x1134f0+':\x20'+_0x5e13a0[_0x395a2f(0x123)]);}}async['createDirectory'](_0x505092,_0x280bb8){const _0x13cacb=a0_0x566f99,_0x31febc=this[_0x13cacb(0x180)][_0x13cacb(0x128)](_0x280bb8),_0x160f02=this['resolvePath'](_0x505092,_0x31febc),_0x142af6=this[_0x13cacb(0x180)]['validateWriteAccess'](_0x160f02,_0x280bb8);if(!_0x142af6[_0x13cacb(0x129)])throw new Error('Write\x20access\x20denied:\x20'+_0x142af6[_0x13cacb(0x131)]+'\x20('+_0x142af6['path']+')');try{await a0_0x14a6f8['mkdir'](_0x160f02,{'recursive':!![]});const _0x134561=this[_0x13cacb(0x180)][_0x13cacb(0x15e)](_0x160f02,_0x280bb8);return{'success':!![],'action':'create-dir','directory':_0x134561,'fullPath':_0x160f02,'message':_0x13cacb(0x168)+_0x505092};}catch(_0x40f1be){throw new Error(_0x13cacb(0x10d)+_0x505092+':\x20'+_0x40f1be['message']);}}async[a0_0x566f99(0x11b)](_0x399ff2,_0x2e895d){const _0x23256c=a0_0x566f99,_0x5e4a89=this[_0x23256c(0x180)]['getWorkingDirectory'](_0x2e895d),_0x328d10=this['resolvePath'](_0x399ff2,_0x5e4a89),_0x5db973=this[_0x23256c(0x180)][_0x23256c(0x105)](_0x328d10,_0x2e895d);if(!_0x5db973['allowed'])throw new Error(_0x23256c(0xfe)+_0x5db973['reason']+'\x20('+_0x5db973[_0x23256c(0x11e)]+')');try{const _0x535500=await a0_0x14a6f8['readdir'](_0x328d10,{'withFileTypes':!![]}),_0x2b5de3=[];for(const _0x379d74 of _0x535500){const _0x54f726=a0_0x6a85da[_0x23256c(0x143)](_0x328d10,_0x379d74['name']),_0x3b5a80=await a0_0x14a6f8[_0x23256c(0x14c)](_0x54f726);_0x2b5de3[_0x23256c(0x156)]({'name':_0x379d74[_0x23256c(0x16a)],'type':_0x379d74[_0x23256c(0x113)]()?_0x23256c(0x17d):_0x23256c(0x150),'size':_0x379d74[_0x23256c(0x165)]()?_0x3b5a80['size']:undefined,'lastModified':_0x3b5a80['mtime'][_0x23256c(0x179)](),'permissions':_0x3b5a80[_0x23256c(0x15c)],'isSymlink':_0x379d74['isSymbolicLink']()});}const _0x5271fb=this[_0x23256c(0x180)]['createRelativePath'](_0x328d10,_0x2e895d);return{'success':!![],'action':'list','directory':_0x5271fb,'fullPath':_0x328d10,'contents':_0x2b5de3,'totalItems':_0x2b5de3['length'],'directories':_0x2b5de3['filter'](_0x4a88c9=>_0x4a88c9[_0x23256c(0x10f)]==='directory')['length'],'files':_0x2b5de3[_0x23256c(0x109)](_0x11e489=>_0x11e489['type']===_0x23256c(0x150))[_0x23256c(0x148)],'message':'Listed\x20'+_0x2b5de3[_0x23256c(0x148)]+_0x23256c(0x167)+_0x399ff2};}catch(_0x2b0d3a){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x399ff2+':\x20'+_0x2b0d3a['message']);}}async['checkExists'](_0x284113,_0x18228e){const _0x5c7eea=a0_0x566f99,_0x4a0ce2=this[_0x5c7eea(0x180)][_0x5c7eea(0x128)](_0x18228e),_0xdc7a90=this[_0x5c7eea(0x172)](_0x284113,_0x4a0ce2),_0x4edb53=this[_0x5c7eea(0x180)][_0x5c7eea(0x105)](_0xdc7a90,_0x18228e);if(!_0x4edb53['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x4edb53['reason']+'\x20('+_0x4edb53['path']+')');try{const _0x267e98=await a0_0x14a6f8[_0x5c7eea(0x14c)](_0xdc7a90),_0x1e6ece=this[_0x5c7eea(0x180)]['createRelativePath'](_0xdc7a90,_0x18228e);return{'success':!![],'action':_0x5c7eea(0x142),'filePath':_0x1e6ece,'fullPath':_0xdc7a90,'exists':!![],'type':_0x267e98['isDirectory']()?'directory':'file','message':_0x284113+'\x20exists\x20as\x20'+(_0x267e98['isDirectory']()?_0x5c7eea(0x17d):_0x5c7eea(0x150))};}catch(_0x321ff7){if(_0x321ff7['code']==='ENOENT'){const _0x3365a3=this[_0x5c7eea(0x180)]['createRelativePath'](_0xdc7a90,_0x18228e);return{'success':!![],'action':'exists','filePath':_0x3365a3,'fullPath':_0xdc7a90,'exists':![],'message':_0x284113+'\x20does\x20not\x20exist'};}throw new Error(_0x5c7eea(0x177)+_0x284113+':\x20'+_0x321ff7[_0x5c7eea(0x123)]);}}async['getFileStats'](_0x25342e,_0x31c126){const _0x32e4bd=a0_0x566f99,_0x138927=this[_0x32e4bd(0x180)]['getWorkingDirectory'](_0x31c126),_0x5ef0b2=this['resolvePath'](_0x25342e,_0x138927),_0x55eeee=this['directoryAccessManager'][_0x32e4bd(0x105)](_0x5ef0b2,_0x31c126);if(!_0x55eeee['allowed'])throw new Error(_0x32e4bd(0xfe)+_0x55eeee[_0x32e4bd(0x131)]+'\x20('+_0x55eeee['path']+')');try{const _0xb936d9=await a0_0x14a6f8['stat'](_0x5ef0b2),_0x5cfe00=this['directoryAccessManager']['createRelativePath'](_0x5ef0b2,_0x31c126);return{'success':!![],'action':'stats','filePath':_0x5cfe00,'fullPath':_0x5ef0b2,'stats':{'size':_0xb936d9[_0x32e4bd(0x171)],'type':_0xb936d9[_0x32e4bd(0x113)]()?_0x32e4bd(0x17d):'file','lastModified':_0xb936d9['mtime']['toISOString'](),'lastAccessed':_0xb936d9[_0x32e4bd(0x144)][_0x32e4bd(0x179)](),'created':_0xb936d9[_0x32e4bd(0x104)][_0x32e4bd(0x179)](),'permissions':_0xb936d9[_0x32e4bd(0x15c)],'isSymlink':_0xb936d9['isSymbolicLink']()},'message':'Retrieved\x20stats\x20for\x20'+_0x25342e};}catch(_0x120712){throw new Error(_0x32e4bd(0x151)+_0x25342e+':\x20'+_0x120712[_0x32e4bd(0x123)]);}}[a0_0x566f99(0x172)](_0x3a9f61,_0x4c852c){const _0x5abc2b=a0_0x566f99;if(a0_0x6a85da['isAbsolute'](_0x3a9f61))return a0_0x6a85da[_0x5abc2b(0x14a)](_0x3a9f61);return a0_0x6a85da['resolve'](_0x4c852c,_0x3a9f61);}[a0_0x566f99(0x107)](_0x570776,_0x1630e9,_0x254f5d=a0_0x566f99(0x118)){const _0xd8eaef=a0_0x566f99,_0x5e9041=_0x254f5d===_0xd8eaef(0x117)?this['directoryAccessManager'][_0xd8eaef(0x127)](_0x570776,_0x1630e9):this[_0xd8eaef(0x180)]['validateReadAccess'](_0x570776,_0x1630e9);if(!_0x5e9041['allowed'])throw new Error(_0x254f5d+'\x20access\x20denied:\x20'+_0x5e9041['reason']+'\x20('+_0x5e9041[_0xd8eaef(0x11e)]+')');return _0x5e9041;}[a0_0x566f99(0x115)](_0x46d2ad){const _0x3131c4=a0_0x566f99,_0x348426=a0_0x6a85da[_0x3131c4(0x14e)](_0x46d2ad)['toLowerCase']();if(this['blockedExtensions'][_0x3131c4(0x12c)](_0x348426))return![];if(this['allowedExtensions']&&!this[_0x3131c4(0x135)][_0x3131c4(0x12c)](_0x348426))return![];return!![];}['addToHistory'](_0x57e217,_0x10f914,_0x13ef6d){const _0x3e4982=a0_0x566f99,_0x1be9b4={'timestamp':new Date()[_0x3e4982(0x179)](),'agentId':_0x13ef6d,'action':_0x57e217['type'],'filePath':_0x57e217[_0x3e4982(0x108)]||_0x57e217[_0x3e4982(0x133)]||_0x57e217[_0x3e4982(0x17d)],'success':_0x10f914[_0x3e4982(0x189)],'size':_0x10f914['size']};this[_0x3e4982(0x119)][_0x3e4982(0x156)](_0x1be9b4),this['operationHistory']['length']>0xc8&&(this[_0x3e4982(0x119)]=this[_0x3e4982(0x119)][_0x3e4982(0xfc)](-0xc8));}[a0_0x566f99(0x130)](){const _0x4bcc09=a0_0x566f99;return['read',_0x4bcc09(0x117),'append','delete','copy','move',_0x4bcc09(0x17a),_0x4bcc09(0x18a),'exists','stats'];}['getParameterSchema'](){const _0x201cfb=a0_0x566f99;return{'type':'object','properties':{'actions':{'type':_0x201cfb(0x178),'minItems':0x1,'items':{'type':_0x201cfb(0x152),'properties':{'type':{'type':_0x201cfb(0x16c),'enum':this['getSupportedActions']()},'filePath':{'type':_0x201cfb(0x16c)},'outputPath':{'type':_0x201cfb(0x16c)},'sourcePath':{'type':'string'},'destPath':{'type':_0x201cfb(0x16c)},'directory':{'type':_0x201cfb(0x16c)},'content':{'type':'string'},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':[_0x201cfb(0x10f)]}}},'required':['actions']};}[a0_0x566f99(0x114)](_0x4e48a5=null){const _0x4f97cf=a0_0x566f99;if(_0x4e48a5)return this[_0x4f97cf(0x119)][_0x4f97cf(0x109)](_0x40f0c0=>_0x40f0c0['agentId']===_0x4e48a5);return[...this['operationHistory']];}}export default FileSystemTool;
|
|
1
|
+
const a0_0xf197d7=a0_0x5039;(function(_0x5c950b,_0x12f8e4){const _0x5286e2=a0_0x5039,_0x2f2e51=_0x5c950b();while(!![]){try{const _0x1fff45=-parseInt(_0x5286e2(0xa0))/0x1+parseInt(_0x5286e2(0x9f))/0x2*(-parseInt(_0x5286e2(0xf8))/0x3)+-parseInt(_0x5286e2(0xd4))/0x4*(parseInt(_0x5286e2(0x9b))/0x5)+-parseInt(_0x5286e2(0xaa))/0x6+-parseInt(_0x5286e2(0x108))/0x7+parseInt(_0x5286e2(0xc2))/0x8*(parseInt(_0x5286e2(0xc9))/0x9)+-parseInt(_0x5286e2(0x77))/0xa*(-parseInt(_0x5286e2(0x106))/0xb);if(_0x1fff45===_0x12f8e4)break;else _0x2f2e51['push'](_0x2f2e51['shift']());}catch(_0x3155ea){_0x2f2e51['push'](_0x2f2e51['shift']());}}}(a0_0x3ba7,0xe6013));import{BaseTool}from'./baseTool.js';import a0_0x59ea89 from'../utilities/tagParser.js';import a0_0x19d53b from'../utilities/directoryAccessManager.js';import a0_0x116c86 from'fs/promises';import a0_0x2026d9 from'path';import a0_0x586bb5 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x3ba7(){const _0x1df1f9=['ywnJzxnZ','nZCXnty3m3bRyK5Iuq','v3jVDguG','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','AxneAxjLy3rVCNK','CMvHzgrPCG','zMLSzxn5CW','zgvZDfbHDgG','DMfSAwrHDgvxCML0zufJy2vZCW','BwfW','igj5DgvZ','y3DK','ndeYmZi0uhzZzMHi','B3bLCMf0Aw9UsgLZDg9YEq','zw5JB2rPBMC','qwn0Aw9Uia','Bw92zuzPBgu','BM93','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zxH0BMfTzq','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','y3jLyxrLlwrPCG','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','ywXSB3DLzerPCMvJDg9YAwvZ','uMv0CMLLDMvKihn0yxrZigzVCIa','BxrPBwu','DxrMoa','CgfYC2vbDhrYAwj1DgvZ','C291CMnLugf0Aa','yxbWzw5Kvg9gAwXL','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','BgLZDa','igrVzxmGBM90igv4Axn0','AxnbC3LUyW','y3jLyxrLuMvSyxrPDMvqyxrO','z2v0v29YA2LUz0rPCMvJDg9YEq','v3jPDguGywnJzxnZigrLBMLLzdOG','D3jPDgvgAwXL','CMvHzezPBgu','Dw5SAw5R','y29UDgvUDa','D3jPDgu','zgvSzxrL','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','tgLZDgvKia','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','Dg9ju09tDhjPBMC','oduYmtiZvuzyy2Tb','Aw5JBhvKzxm','C291CMnLlxbHDgG','yMXVy2TLzev4DgvUC2LVBNm','B3v0Chv0ugf0Aa','z2v0rMLSzvn0yxrZ','BgvUz3rO','igj5DgvZicHTyxGG','ru5pru5u','ywXSB3DLza','Bwf4rMLSzvnPEMu','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','B2jQzwn0','Bg9N','mJu4mJaZzwvXEwzQ','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','ntK1mdy3mLb6A0XxDq','ywrKvg9iAxn0B3j5','CMvHC29U','Bw92zq','z2v0t3bLCMf0Aw9UsgLZDg9YEq','BMfTzq','AxnbyNnVBhv0zq','CMvHza','y3jLyxrLrgLYCW','mJuXmgjSr0P4AG','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','C3rYAw5NAwz5','y29WEq','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','yxr0CMLIDxrLCW','zw50CMLLCW','lMnVBq','C3rHDa','igfJy2vZCYbKzw5Pzwq6ia','yxjYyxK','BgLZDerPCMvJDg9YEq','y3jLyxrLrgLYzwn0B3j5','DhLWzq','lMrLBgv0zwqTyMfJA3vWlq','DhjPBq','q29WAwvKia','z2v0u3vWCg9YDgvKqwn0Aw9UCW','uMvHzcbHy2nLC3mGzgvUAwvKoIa','zxHLy3v0zq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','C3rHDhm','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','rMfPBgvKihrVihjLywqGzMLSzsa','z2v0ugfYyw1LDgvYu2nOzw1H','zMLSDgvY','DgLTzw91Da','igv4Axn0CYbHCYa','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','C3rYAw5N','CMvZB2X2zq','oIb0ExbLigLZihjLCxvPCMvK','C2L6zq','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','DMfSAwrHDgvqyxrOqwnJzxnZ','BwvZC2fNzq','nZbVqMLNCMy','rMfPBgvKihrVihDYAxrLigzPBguG','BwTKAxi','zgLYBMfTzq','nKTKEwvzEa','mtu5nJGXn1bhEeTszq','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','y2HLy2TfEgLZDhm','zMLSzq','DMfSAwrHDgvszwfKqwnJzxnZ','Cgf0Aa','zMLSzs1WyxrO','yNL0zuXLBMD0Aa','tufyx0zjtevFu0LArq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','nJm4oduWnKLPuxrgCW','zgvZDc1WyxrO','y29WEuzPBgu','zMLSzvbHDgG','zgLYzwn0B3j5','CMvUyw1L','rMfPBgvKihrVig1VDMuG','B3v0Chv0lxbHDgG','ywXSB3DLzev4DgvUC2LVBNm','yxbWzw5K','y3jLyxrLlwrPCNm','BM9YBwfSAxPL','ywn0Aw9UCW','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','CMvZB2X2zvbHDgG','Bw9Kzq','ChvZAa','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','D29YA2LUz0rPCMvJDg9YEq','AxntEw1IB2XPy0XPBMS','zxHPC3rZ','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','ywDLBNrjza','Dhj1zq','oeTfCuThCa','zgvIDwC','rMfPBgvKihrVignVChKG','z2v0rgvZy3jPChrPB24','ihrVia','C2XPy2u'];a0_0x3ba7=function(){return _0x1df1f9;};return a0_0x3ba7();}function a0_0x5039(_0x328949,_0x11e626){_0x328949=_0x328949-0x74;const _0x3ba7ac=a0_0x3ba7();let _0x503953=_0x3ba7ac[_0x328949];if(a0_0x5039['rveUjd']===undefined){var _0x1dad31=function(_0xec7936){const _0x1b6656='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59ea89='',_0x19d53b='';for(let _0x116c86=0x0,_0x2026d9,_0x586bb5,_0x11ae58=0x0;_0x586bb5=_0xec7936['charAt'](_0x11ae58++);~_0x586bb5&&(_0x2026d9=_0x116c86%0x4?_0x2026d9*0x40+_0x586bb5:_0x586bb5,_0x116c86++%0x4)?_0x59ea89+=String['fromCharCode'](0xff&_0x2026d9>>(-0x2*_0x116c86&0x6)):0x0){_0x586bb5=_0x1b6656['indexOf'](_0x586bb5);}for(let _0x4e844a=0x0,_0x9a5ac=_0x59ea89['length'];_0x4e844a<_0x9a5ac;_0x4e844a++){_0x19d53b+='%'+('00'+_0x59ea89['charCodeAt'](_0x4e844a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19d53b);};a0_0x5039['ZFGqzv']=_0x1dad31,a0_0x5039['UElGVW']={},a0_0x5039['rveUjd']=!![];}const _0x505780=_0x3ba7ac[0x0],_0xf30494=_0x328949+_0x505780,_0x4c89be=a0_0x5039['UElGVW'][_0xf30494];return!_0x4c89be?(_0x503953=a0_0x5039['ZFGqzv'](_0x503953),a0_0x5039['UElGVW'][_0xf30494]=_0x503953):_0x503953=_0x4c89be,_0x503953;}class FileSystemTool extends BaseTool{constructor(_0x11ae58={},_0x4e844a=null){const _0x4f060d=a0_0x5039;super(_0x11ae58,_0x4e844a),this['requiresProject']=!![],this[_0x4f060d(0xea)]=![],this[_0x4f060d(0x91)]=_0x11ae58['timeout']||0x7530,this['maxConcurrentOperations']=_0x11ae58[_0x4f060d(0xda)]||0x5,this[_0x4f060d(0x102)]=_0x11ae58['maxFileSize']||SYSTEM_DEFAULTS[_0x4f060d(0xa8)],this[_0x4f060d(0xb2)]=_0x11ae58['allowedExtensions']||null,this[_0x4f060d(0xfb)]=_0x11ae58[_0x4f060d(0xfb)]||['.exe','.bat','.cmd','.scr',_0x4f060d(0x7e)],this['allowedDirectories']=_0x11ae58[_0x4f060d(0xdf)]||null,this['operationHistory']=[],this['directoryAccessManager']=new a0_0x19d53b(_0x11ae58,_0x4e844a);}[a0_0xf197d7(0xc5)](){const _0x1f9803=a0_0xf197d7;return _0x1f9803(0xa1)+Math['round'](this['maxFileSize']/0x400/0x400)+_0x1f9803(0x93);}['parseParameters'](_0x9a5ac){const _0x213cf6=a0_0xf197d7;try{const _0x322bf={},_0x2daa52=[];this['logger']?.['debug'](_0x213cf6(0xa9),{'contentLength':_0x9a5ac['length'],'contentPreview':_0x9a5ac['substring'](0x0,0xc8)});const _0x2925b3=[_0x213cf6(0x75),_0x213cf6(0xf3),_0x213cf6(0x7a),'move',_0x213cf6(0xdd),'list',_0x213cf6(0xbe),_0x213cf6(0x8c),_0x213cf6(0xb3)];for(const _0x5dbb1d of _0x2925b3){const _0x2ec72f=a0_0x59ea89[_0x213cf6(0x78)](_0x9a5ac,_0x5dbb1d);for(const _0x5d5ba5 of _0x2ec72f){const _0x448624={'type':_0x5dbb1d,..._0x5d5ba5[_0x213cf6(0x7c)]};_0x448624[_0x213cf6(0xa6)]&&(_0x448624[_0x213cf6(0xad)]=_0x448624['file-path'],delete _0x448624[_0x213cf6(0xa6)]),_0x448624['output-path']&&(_0x448624[_0x213cf6(0xfc)]=_0x448624[_0x213cf6(0xb1)],delete _0x448624['output-path']),_0x448624[_0x213cf6(0xfa)]&&(_0x448624['sourcePath']=_0x448624['source-path'],delete _0x448624['source-path']),_0x448624[_0x213cf6(0xab)]&&(_0x448624['destPath']=_0x448624[_0x213cf6(0xab)],delete _0x448624['dest-path']),_0x448624['create-dirs']&&(_0x448624[_0x213cf6(0x76)]=_0x448624['create-dirs']===_0x213cf6(0xc1),delete _0x448624[_0x213cf6(0xb4)]),_0x2daa52['push'](_0x448624);}}const _0xc64d0e=_0x9a5ac['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x282235 of _0xc64d0e){const _0x3cc0fb=new a0_0x59ea89(),_0x1dead9=_0x3cc0fb['parseAttributes'](_0x282235[0x1]),_0x48ccf6=_0x282235[0x2][_0x213cf6(0x86)](),_0x416c25={'type':'write','content':_0x48ccf6,..._0x1dead9};_0x416c25[_0x213cf6(0xb1)]&&(_0x416c25[_0x213cf6(0xfc)]=_0x416c25['output-path'],delete _0x416c25[_0x213cf6(0xb1)]),_0x416c25[_0x213cf6(0xb4)]&&(_0x416c25['createDirs']=_0x416c25['create-dirs']===_0x213cf6(0xc1),delete _0x416c25['create-dirs']),_0x2daa52['push'](_0x416c25);}const _0x1aa2b8=_0x9a5ac['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x16a5f9 of _0x1aa2b8){const _0xbdeba8=new a0_0x59ea89(),_0x45c618=_0xbdeba8[_0x213cf6(0xe3)](_0x16a5f9[0x1]),_0x2c93db=_0x16a5f9[0x2][_0x213cf6(0x86)](),_0x555ff9={'type':'append','content':_0x2c93db,..._0x45c618};_0x555ff9['file-path']&&(_0x555ff9[_0x213cf6(0xad)]=_0x555ff9[_0x213cf6(0xa6)],delete _0x555ff9[_0x213cf6(0xa6)]),_0x2daa52['push'](_0x555ff9);}return _0x322bf['actions']=_0x2daa52,_0x322bf['rawContent']=_0x9a5ac['trim'](),this['logger']?.[_0x213cf6(0xc3)]('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0x2daa52['length'],'actionTypes':_0x2daa52[_0x213cf6(0xd1)](_0x3cfb20=>_0x3cfb20['type']),'actions':_0x2daa52[_0x213cf6(0xd1)](_0x46d29d=>({'type':_0x46d29d['type'],'filePath':_0x46d29d['filePath'],'outputPath':_0x46d29d['outputPath'],'hasContent':!!_0x46d29d['content']}))}),_0x322bf;}catch(_0x23fddc){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x23fddc[_0x213cf6(0x9a)]);}}[a0_0xf197d7(0xbf)](){const _0xfa6da4=a0_0xf197d7;return[_0xfa6da4(0xb6)];}[a0_0xf197d7(0x8b)](_0x388bab){const _0xb04200=a0_0xf197d7,_0x1befc5=[];if(!_0x388bab['actions']||!Array['isArray'](_0x388bab[_0xb04200(0xb6)])||_0x388bab['actions']['length']===0x0)_0x1befc5[_0xb04200(0xba)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x10ca30,_0xfc1ee0]of _0x388bab[_0xb04200(0xb6)][_0xb04200(0x7d)]()){if(!_0xfc1ee0[_0xb04200(0x84)]){_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+_0xb04200(0x96));continue;}switch(_0xfc1ee0['type']){case _0xb04200(0x75):case _0xb04200(0xf3):case _0xb04200(0xbe):case _0xb04200(0x8c):!_0xfc1ee0[_0xb04200(0xad)]&&_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0xfc1ee0[_0xb04200(0x84)]);break;case'write':!_0xfc1ee0[_0xb04200(0xfc)]&&_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+_0xb04200(0xe6));!_0xfc1ee0['content']&&_0xfc1ee0['content']!==''&&_0x1befc5[_0xb04200(0xba)](_0xb04200(0xd7)+(_0x10ca30+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0xb04200(0xb3):!_0xfc1ee0['filePath']&&_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0xfc1ee0['content']&&_0xfc1ee0[_0xb04200(0xf1)]!==''&&_0x1befc5['push'](_0xb04200(0xd7)+(_0x10ca30+0x1)+_0xb04200(0x7b));break;case'copy':case _0xb04200(0x10b):!_0xfc1ee0['sourcePath']&&_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0xfc1ee0[_0xb04200(0x84)]);!_0xfc1ee0['destPath']&&_0x1befc5[_0xb04200(0xba)](_0xb04200(0xd7)+(_0x10ca30+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0xfc1ee0[_0xb04200(0x84)]);break;case'create-dir':case'list':!_0xfc1ee0['directory']&&_0x1befc5['push'](_0xb04200(0xd7)+(_0x10ca30+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0xfc1ee0['type']);break;default:_0x1befc5['push']('Action\x20'+(_0x10ca30+0x1)+':\x20unknown\x20action\x20type:\x20'+_0xfc1ee0['type']);}_0xfc1ee0['filePath']&&!this[_0xb04200(0x103)](_0xfc1ee0[_0xb04200(0xad)])&&_0x1befc5[_0xb04200(0xba)]('Action\x20'+(_0x10ca30+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x2026d9[_0xb04200(0xdb)](_0xfc1ee0[_0xb04200(0xad)])),_0xfc1ee0[_0xb04200(0xfc)]&&!this['isAllowedFileExtension'](_0xfc1ee0['outputPath'])&&_0x1befc5['push'](_0xb04200(0xd7)+(_0x10ca30+0x1)+_0xb04200(0x98)+a0_0x2026d9['extname'](_0xfc1ee0[_0xb04200(0xfc)]));}return{'valid':_0x1befc5[_0xb04200(0xfe)]===0x0,'errors':_0x1befc5};}async[a0_0xf197d7(0x8a)](_0x483f54,_0x39c492){const _0xc66539=a0_0xf197d7;if(!_0x483f54||typeof _0x483f54!=='object')throw new Error(_0xc66539(0xdc));const {actions:_0x244e7e}=_0x483f54;if(!_0x244e7e)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON[_0xc66539(0x79)](Object['keys'](_0x483f54)));if(!Array['isArray'](_0x244e7e))throw new Error(_0xc66539(0x8d)+typeof _0x244e7e);if(_0x244e7e['length']===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x17cdfe,agentId:_0x24ab3c,directoryAccess:_0x16bc89}=_0x39c492,_0x475a6f=_0x16bc89||this[_0xc66539(0xe7)][_0xc66539(0xb7)]({'workingDirectory':_0x17cdfe||process[_0xc66539(0xd3)](),'writeEnabledDirectories':[_0x17cdfe||process[_0xc66539(0xd3)]()],'restrictToProject':!![]});_0x16bc89&&_0x16bc89[_0xc66539(0xbc)]?(console['log']('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x16bc89[_0xc66539(0xbc)]),console[_0xc66539(0x105)](_0xc66539(0xde),JSON[_0xc66539(0x79)](_0x16bc89,null,0x2))):(console['log'](_0xc66539(0xf4),_0x17cdfe||process[_0xc66539(0xd3)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x16bc89),console['log'](_0xc66539(0x107),_0x17cdfe));const _0x115880=[];for(const _0xef1d96 of _0x244e7e){try{let _0x2650dd;switch(_0xef1d96[_0xc66539(0x84)]){case'read':_0x2650dd=await this[_0xc66539(0xef)](_0xef1d96[_0xc66539(0xad)],_0x475a6f,_0xef1d96[_0xc66539(0xd6)]);break;case'write':_0x2650dd=await this[_0xc66539(0xee)](_0xef1d96[_0xc66539(0xfc)],_0xef1d96['content'],_0x475a6f,{'encoding':_0xef1d96['encoding'],'createDirs':_0xef1d96[_0xc66539(0x76)]});break;case'append':_0x2650dd=await this[_0xc66539(0xe5)](_0xef1d96['filePath'],_0xef1d96['content'],_0x475a6f,_0xef1d96['encoding']);break;case'delete':_0x2650dd=await this['deleteFile'](_0xef1d96[_0xc66539(0xad)],_0x475a6f);break;case _0xc66539(0x7a):_0x2650dd=await this[_0xc66539(0xac)](_0xef1d96['sourcePath'],_0xef1d96[_0xc66539(0xcf)],_0x475a6f);break;case _0xc66539(0x10b):_0x2650dd=await this[_0xc66539(0xd8)](_0xef1d96[_0xc66539(0xe4)],_0xef1d96[_0xc66539(0xcf)],_0x475a6f);break;case'create-dir':_0x2650dd=await this[_0xc66539(0x83)](_0xef1d96['directory'],_0x475a6f);break;case _0xc66539(0xe8):_0x2650dd=await this[_0xc66539(0x82)](_0xef1d96[_0xc66539(0xae)],_0x475a6f);break;case _0xc66539(0xbe):_0x2650dd=await this[_0xc66539(0xa2)](_0xef1d96[_0xc66539(0xad)],_0x475a6f);break;case _0xc66539(0x8c):_0x2650dd=await this[_0xc66539(0xfd)](_0xef1d96[_0xc66539(0xad)],_0x475a6f);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0xef1d96['type']);}_0x115880[_0xc66539(0xba)](_0x2650dd),this[_0xc66539(0x109)](_0xef1d96,_0x2650dd,_0x39c492['agentId']);}catch(_0xb70930){const _0x29dd23={'success':![],'action':_0xef1d96[_0xc66539(0x84)],'error':_0xb70930[_0xc66539(0x9a)],'filePath':_0xef1d96[_0xc66539(0xad)]||_0xef1d96['outputPath']||_0xef1d96[_0xc66539(0xae)]};_0x115880['push'](_0x29dd23),this[_0xc66539(0x109)](_0xef1d96,_0x29dd23,_0x39c492[_0xc66539(0xc0)]);}}return{'success':!![],'actions':_0x115880,'executedActions':_0x244e7e['length'],'toolUsed':_0xc66539(0xce)};}async[a0_0xf197d7(0xef)](_0x26f4f4,_0xaf88ca,_0x458ff7='utf8'){const _0x5b0f24=a0_0xf197d7,_0x584770=this['directoryAccessManager'][_0x5b0f24(0xec)](_0xaf88ca),_0x3cd292=this[_0x5b0f24(0xb8)](_0x26f4f4,_0x584770),_0x86f88d=this['directoryAccessManager'][_0x5b0f24(0xa4)](_0x3cd292,_0xaf88ca);if(!_0x86f88d[_0x5b0f24(0x101)])throw new Error(_0x5b0f24(0x89)+_0x86f88d[_0x5b0f24(0x10a)]+'\x20('+_0x86f88d['path']+')');try{const _0x167fd8=await a0_0x116c86[_0x5b0f24(0x7f)](_0x3cd292);if(_0x167fd8['size']>this[_0x5b0f24(0x102)])throw new Error('File\x20too\x20large:\x20'+_0x167fd8['size']+'\x20bytes\x20(max\x20'+this[_0x5b0f24(0x102)]+')');const _0x339d2e=await a0_0x116c86['readFile'](_0x3cd292,_0x458ff7);return{'success':!![],'action':_0x5b0f24(0x75),'filePath':this['directoryAccessManager']['createRelativePath'](_0x3cd292,_0xaf88ca),'content':_0x339d2e,'size':_0x167fd8['size'],'encoding':_0x458ff7,'lastModified':_0x167fd8[_0x5b0f24(0xe1)][_0x5b0f24(0xf7)](),'message':'Read\x20'+_0x167fd8['size']+'\x20bytes\x20from\x20'+_0x26f4f4};}catch(_0x5d216f){throw new Error(_0x5b0f24(0x8e)+_0x26f4f4+':\x20'+_0x5d216f[_0x5b0f24(0x9a)]);}}async[a0_0xf197d7(0xee)](_0x4e262d,_0x3315fb,_0x4d65ff,_0x31b171={}){const _0x1e2bd1=a0_0xf197d7,{encoding:encoding=_0x1e2bd1(0xe2),createDirs:createDirs=!![]}=_0x31b171,_0x13f01d=this['directoryAccessManager'][_0x1e2bd1(0xec)](_0x4d65ff),_0x4106fc=this['resolvePath'](_0x4e262d,_0x13f01d),_0x1e55cb=this[_0x1e2bd1(0xe7)][_0x1e2bd1(0xd0)](_0x4106fc,_0x4d65ff);if(!_0x1e55cb[_0x1e2bd1(0x101)])throw new Error(_0x1e2bd1(0xed)+_0x1e55cb['reason']+'\x20('+_0x1e55cb[_0x1e2bd1(0xa5)]+')');try{const _0x42f21d=Buffer[_0x1e2bd1(0xa7)](_0x3315fb,encoding);if(_0x42f21d>this[_0x1e2bd1(0x102)])throw new Error('Content\x20too\x20large:\x20'+_0x42f21d+_0x1e2bd1(0xff)+this['maxFileSize']+')');if(createDirs){const _0x2bb9e2=a0_0x2026d9[_0x1e2bd1(0x9e)](_0x4106fc);await a0_0x116c86['mkdir'](_0x2bb9e2,{'recursive':!![]});}let _0x1bc3fc=null;try{await a0_0x116c86[_0x1e2bd1(0xc8)](_0x4106fc),_0x1bc3fc=_0x4106fc+'.backup-'+Date[_0x1e2bd1(0xd9)](),await a0_0x116c86['copyFile'](_0x4106fc,_0x1bc3fc);}catch{}await a0_0x116c86['writeFile'](_0x4106fc,_0x3315fb,encoding);const _0xdbdb77=await a0_0x116c86['stat'](_0x4106fc),_0x19bc34=this[_0x1e2bd1(0xe7)][_0x1e2bd1(0xeb)](_0x4106fc,_0x4d65ff);return{'success':!![],'action':_0x1e2bd1(0xf2),'outputPath':_0x19bc34,'fullPath':_0x4106fc,'size':_0xdbdb77[_0x1e2bd1(0x97)],'encoding':encoding,'backupPath':_0x1bc3fc?this['directoryAccessManager']['createRelativePath'](_0x1bc3fc,_0x4d65ff):null,'backupFullPath':_0x1bc3fc||null,'message':_0x1e2bd1(0xca)+_0xdbdb77[_0x1e2bd1(0x97)]+'\x20bytes\x20to\x20'+_0x4106fc};}catch(_0x5e57c9){throw new Error(_0x1e2bd1(0x9c)+_0x4106fc+':\x20'+_0x5e57c9[_0x1e2bd1(0x9a)]);}}async['appendToFile'](_0x85d22,_0x14aab4,_0x2f54b2,_0x5ec614=a0_0xf197d7(0xe2)){const _0x32546b=a0_0xf197d7,_0x5386f8=this['directoryAccessManager'][_0x32546b(0xec)](_0x2f54b2),_0x2c3100=this[_0x32546b(0xb8)](_0x85d22,_0x5386f8),_0x39fda2=this[_0x32546b(0xe7)][_0x32546b(0xd0)](_0x2c3100,_0x2f54b2);if(!_0x39fda2[_0x32546b(0x101)])throw new Error(_0x32546b(0xed)+_0x39fda2[_0x32546b(0x10a)]+'\x20('+_0x39fda2['path']+')');try{let _0x1394e3=0x0;try{const _0x30d71b=await a0_0x116c86[_0x32546b(0x7f)](_0x2c3100);_0x1394e3=_0x30d71b[_0x32546b(0x97)];}catch{}const _0x1cc381=Buffer[_0x32546b(0xa7)](_0x14aab4,_0x5ec614);if(_0x1394e3+_0x1cc381>this[_0x32546b(0x102)])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x1394e3+_0x1cc381)+'\x20bytes\x20(max\x20'+this[_0x32546b(0x102)]+')');await a0_0x116c86['appendFile'](_0x2c3100,_0x14aab4,_0x5ec614);const _0x47455=await a0_0x116c86['stat'](_0x2c3100),_0x1a5fa7=this['directoryAccessManager'][_0x32546b(0xeb)](_0x2c3100,_0x2f54b2);return{'success':!![],'action':'append','filePath':_0x1a5fa7,'fullPath':_0x2c3100,'appendedBytes':_0x1cc381,'totalSize':_0x47455[_0x32546b(0x97)],'encoding':_0x5ec614,'message':'Appended\x20'+_0x1cc381+'\x20bytes\x20to\x20'+_0x2c3100};}catch(_0x451c2e){throw new Error(_0x32546b(0xf6)+_0x2c3100+':\x20'+_0x451c2e['message']);}}async['deleteFile'](_0x47b30e,_0xed6729){const _0x50e142=a0_0xf197d7,_0x4f8a1d=this[_0x50e142(0xe7)][_0x50e142(0xec)](_0xed6729),_0x57c12f=this['resolvePath'](_0x47b30e,_0x4f8a1d),_0x3dae1a=this['directoryAccessManager']['validateWriteAccess'](_0x57c12f,_0xed6729);if(!_0x3dae1a[_0x50e142(0x101)])throw new Error('Delete\x20access\x20denied:\x20'+_0x3dae1a[_0x50e142(0x10a)]+'\x20('+_0x3dae1a[_0x50e142(0xa5)]+')');try{const _0x80a2c9=await a0_0x116c86[_0x50e142(0x7f)](_0x57c12f),_0xf2e036=_0x57c12f+_0x50e142(0x85)+Date[_0x50e142(0xd9)]();await a0_0x116c86[_0x50e142(0xac)](_0x57c12f,_0xf2e036),await a0_0x116c86[_0x50e142(0xf0)](_0x57c12f);const _0x2ecc05=this[_0x50e142(0xe7)]['createRelativePath'](_0x57c12f,_0xed6729),_0x44b5db=this[_0x50e142(0xe7)]['createRelativePath'](_0xf2e036,_0xed6729);return{'success':!![],'action':_0x50e142(0xf3),'filePath':_0x2ecc05,'fullPath':_0x57c12f,'size':_0x80a2c9['size'],'backupPath':_0x44b5db,'backupFullPath':_0xf2e036,'message':'Deleted\x20'+_0x57c12f+'\x20(backup\x20created)'};}catch(_0x15b8a2){throw new Error('Failed\x20to\x20delete\x20file\x20'+_0x57c12f+':\x20'+_0x15b8a2[_0x50e142(0x9a)]);}}async[a0_0xf197d7(0xac)](_0x5a0e3f,_0x29430b,_0x44bc52){const _0x2faf34=a0_0xf197d7,_0x4a5e9b=this[_0x2faf34(0xe7)][_0x2faf34(0xec)](_0x44bc52),_0x3df869=this[_0x2faf34(0xb8)](_0x5a0e3f,_0x4a5e9b),_0x10b13a=this[_0x2faf34(0xb8)](_0x29430b,_0x4a5e9b),_0x12125b=this['directoryAccessManager'][_0x2faf34(0xa4)](_0x3df869,_0x44bc52);if(!_0x12125b['allowed'])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x12125b[_0x2faf34(0x10a)]+'\x20('+_0x12125b[_0x2faf34(0xa5)]+')');const _0x565604=this['directoryAccessManager']['validateWriteAccess'](_0x10b13a,_0x44bc52);if(!_0x565604['allowed'])throw new Error(_0x2faf34(0xbb)+_0x565604['reason']+'\x20('+_0x565604[_0x2faf34(0xa5)]+')');try{const _0x36eed0=await a0_0x116c86[_0x2faf34(0x7f)](_0x3df869);if(_0x36eed0['size']>this[_0x2faf34(0x102)])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x36eed0[_0x2faf34(0x97)]+_0x2faf34(0xd2));const _0x13795e=a0_0x2026d9[_0x2faf34(0x9e)](_0x10b13a);await a0_0x116c86[_0x2faf34(0x9d)](_0x13795e,{'recursive':!![]}),await a0_0x116c86[_0x2faf34(0xac)](_0x3df869,_0x10b13a);const _0xd23b38=this[_0x2faf34(0xe7)]['createRelativePath'](_0x3df869,_0x44bc52),_0x37e15a=this['directoryAccessManager']['createRelativePath'](_0x10b13a,_0x44bc52);return{'success':!![],'action':_0x2faf34(0x7a),'sourcePath':_0xd23b38,'destPath':_0x37e15a,'sourceFullPath':_0x3df869,'destFullPath':_0x10b13a,'size':_0x36eed0['size'],'message':_0x2faf34(0x87)+_0x3df869+'\x20to\x20'+_0x10b13a};}catch(_0x49b828){throw new Error(_0x2faf34(0xc4)+_0x3df869+_0x2faf34(0xc6)+_0x10b13a+':\x20'+_0x49b828['message']);}}async['moveFile'](_0x454063,_0x8b6dea,_0x964a47){const _0x4a9e23=a0_0xf197d7,_0x13fd48=this['directoryAccessManager'][_0x4a9e23(0xec)](_0x964a47),_0xbae31d=this[_0x4a9e23(0xb8)](_0x454063,_0x13fd48),_0x4f814b=this['resolvePath'](_0x8b6dea,_0x13fd48),_0x4ce1cc=this[_0x4a9e23(0xe7)][_0x4a9e23(0xa4)](_0xbae31d,_0x964a47);if(!_0x4ce1cc['allowed'])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x4ce1cc[_0x4a9e23(0x10a)]+'\x20('+_0x4ce1cc[_0x4a9e23(0xa5)]+')');const _0x17bde4=this[_0x4a9e23(0xe7)][_0x4a9e23(0xd0)](_0x4f814b,_0x964a47);if(!_0x17bde4[_0x4a9e23(0x101)])throw new Error(_0x4a9e23(0xcb)+_0x17bde4['reason']+'\x20('+_0x17bde4['path']+')');try{const _0xe0abdc=await a0_0x116c86['stat'](_0xbae31d),_0x13928c=a0_0x2026d9[_0x4a9e23(0x9e)](_0x4f814b);await a0_0x116c86['mkdir'](_0x13928c,{'recursive':!![]}),await a0_0x116c86[_0x4a9e23(0xaf)](_0xbae31d,_0x4f814b);const _0x36ee72=this[_0x4a9e23(0xe7)]['createRelativePath'](_0xbae31d,_0x964a47),_0x196a21=this['directoryAccessManager'][_0x4a9e23(0xeb)](_0x4f814b,_0x964a47);return{'success':!![],'action':_0x4a9e23(0x10b),'sourcePath':_0x36ee72,'destPath':_0x196a21,'fullSourcePath':_0xbae31d,'fullDestPath':_0x4f814b,'size':_0xe0abdc['size'],'message':'Moved\x20'+_0x454063+_0x4a9e23(0xc6)+_0x8b6dea};}catch(_0x4fffbe){throw new Error(_0x4a9e23(0xb0)+_0x454063+'\x20to\x20'+_0x8b6dea+':\x20'+_0x4fffbe[_0x4a9e23(0x9a)]);}}async[a0_0xf197d7(0x83)](_0x9a2860,_0x2ffc66){const _0x2dcc5c=a0_0xf197d7,_0x3967af=this[_0x2dcc5c(0xe7)]['getWorkingDirectory'](_0x2ffc66),_0x187edd=this[_0x2dcc5c(0xb8)](_0x9a2860,_0x3967af),_0xd98476=this[_0x2dcc5c(0xe7)]['validateWriteAccess'](_0x187edd,_0x2ffc66);if(!_0xd98476[_0x2dcc5c(0x101)])throw new Error('Write\x20access\x20denied:\x20'+_0xd98476['reason']+'\x20('+_0xd98476['path']+')');try{await a0_0x116c86['mkdir'](_0x187edd,{'recursive':!![]});const _0x4e9bd2=this[_0x2dcc5c(0xe7)]['createRelativePath'](_0x187edd,_0x2ffc66);return{'success':!![],'action':'create-dir','directory':_0x4e9bd2,'fullPath':_0x187edd,'message':'Created\x20directory\x20'+_0x9a2860};}catch(_0x19a353){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x9a2860+':\x20'+_0x19a353[_0x2dcc5c(0x9a)]);}}async[a0_0xf197d7(0x82)](_0x296efe,_0x3bd9f4){const _0x5b8cec=a0_0xf197d7,_0x10040c=this['directoryAccessManager'][_0x5b8cec(0xec)](_0x3bd9f4),_0x170321=this[_0x5b8cec(0xb8)](_0x296efe,_0x10040c),_0xa5f36e=this['directoryAccessManager'][_0x5b8cec(0xa4)](_0x170321,_0x3bd9f4);if(!_0xa5f36e[_0x5b8cec(0x101)])throw new Error('Read\x20access\x20denied:\x20'+_0xa5f36e[_0x5b8cec(0x10a)]+'\x20('+_0xa5f36e[_0x5b8cec(0xa5)]+')');try{const _0x4daf41=await a0_0x116c86[_0x5b8cec(0xcd)](_0x170321,{'withFileTypes':!![]}),_0x33612a=[];for(const _0x56829d of _0x4daf41){const _0x2c8d62=a0_0x2026d9['join'](_0x170321,_0x56829d['name']),_0xb6a9a7=await a0_0x116c86['stat'](_0x2c8d62);_0x33612a['push']({'name':_0x56829d[_0x5b8cec(0x10d)],'type':_0x56829d[_0x5b8cec(0xcc)]()?'directory':_0x5b8cec(0xa3),'size':_0x56829d['isFile']()?_0xb6a9a7[_0x5b8cec(0x97)]:undefined,'lastModified':_0xb6a9a7[_0x5b8cec(0xe1)]['toISOString'](),'permissions':_0xb6a9a7[_0x5b8cec(0xb9)],'isSymlink':_0x56829d[_0x5b8cec(0xbd)]()});}const _0x70a3ee=this['directoryAccessManager']['createRelativePath'](_0x170321,_0x3bd9f4);return{'success':!![],'action':_0x5b8cec(0xe8),'directory':_0x70a3ee,'fullPath':_0x170321,'contents':_0x33612a,'totalItems':_0x33612a[_0x5b8cec(0xfe)],'directories':_0x33612a[_0x5b8cec(0x90)](_0x17a9f2=>_0x17a9f2['type']==='directory')[_0x5b8cec(0xfe)],'files':_0x33612a[_0x5b8cec(0x90)](_0x1e5405=>_0x1e5405[_0x5b8cec(0x84)]==='file')[_0x5b8cec(0xfe)],'message':_0x5b8cec(0xf5)+_0x33612a['length']+'\x20items\x20in\x20'+_0x296efe};}catch(_0x2024a0){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x296efe+':\x20'+_0x2024a0[_0x5b8cec(0x9a)]);}}async['checkExists'](_0x593d75,_0x2df7cd){const _0x302d79=a0_0xf197d7,_0xf75bf6=this['directoryAccessManager']['getWorkingDirectory'](_0x2df7cd),_0x196f4f=this['resolvePath'](_0x593d75,_0xf75bf6),_0xc9960d=this['directoryAccessManager']['validateReadAccess'](_0x196f4f,_0x2df7cd);if(!_0xc9960d[_0x302d79(0x101)])throw new Error('Read\x20access\x20denied:\x20'+_0xc9960d[_0x302d79(0x10a)]+'\x20('+_0xc9960d['path']+')');try{const _0x353e81=await a0_0x116c86['stat'](_0x196f4f),_0x49dc1d=this[_0x302d79(0xe7)]['createRelativePath'](_0x196f4f,_0x2df7cd);return{'success':!![],'action':_0x302d79(0xbe),'filePath':_0x49dc1d,'fullPath':_0x196f4f,'exists':!![],'type':_0x353e81[_0x302d79(0xcc)]()?_0x302d79(0xae):'file','message':_0x593d75+_0x302d79(0x92)+(_0x353e81['isDirectory']()?'directory':_0x302d79(0xa3))};}catch(_0x226c0d){if(_0x226c0d['code']===_0x302d79(0x100)){const _0x3e3646=this['directoryAccessManager']['createRelativePath'](_0x196f4f,_0x2df7cd);return{'success':!![],'action':'exists','filePath':_0x3e3646,'fullPath':_0x196f4f,'exists':![],'message':_0x593d75+_0x302d79(0xe9)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x593d75+':\x20'+_0x226c0d['message']);}}async[a0_0xf197d7(0xfd)](_0x48b3f2,_0x3a948f){const _0x5876e5=a0_0xf197d7,_0x36717f=this[_0x5876e5(0xe7)]['getWorkingDirectory'](_0x3a948f),_0x3ac749=this['resolvePath'](_0x48b3f2,_0x36717f),_0x4bf8d9=this['directoryAccessManager'][_0x5876e5(0xa4)](_0x3ac749,_0x3a948f);if(!_0x4bf8d9[_0x5876e5(0x101)])throw new Error(_0x5876e5(0x89)+_0x4bf8d9[_0x5876e5(0x10a)]+'\x20('+_0x4bf8d9['path']+')');try{const _0xd3e79a=await a0_0x116c86['stat'](_0x3ac749),_0x3bf2a7=this['directoryAccessManager'][_0x5876e5(0xeb)](_0x3ac749,_0x3a948f);return{'success':!![],'action':_0x5876e5(0x8c),'filePath':_0x3bf2a7,'fullPath':_0x3ac749,'stats':{'size':_0xd3e79a['size'],'type':_0xd3e79a['isDirectory']()?'directory':_0x5876e5(0xa3),'lastModified':_0xd3e79a[_0x5876e5(0xe1)][_0x5876e5(0xf7)](),'lastAccessed':_0xd3e79a['atime']['toISOString'](),'created':_0xd3e79a['birthtime'][_0x5876e5(0xf7)](),'permissions':_0xd3e79a['mode'],'isSymlink':_0xd3e79a['isSymbolicLink']()},'message':_0x5876e5(0xe0)+_0x48b3f2};}catch(_0x449e53){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x48b3f2+':\x20'+_0x449e53[_0x5876e5(0x9a)]);}}['resolvePath'](_0x392c66,_0xa66704){const _0x2c126c=a0_0xf197d7;if(a0_0x2026d9[_0x2c126c(0x74)](_0x392c66))return a0_0x2026d9[_0x2c126c(0xb5)](_0x392c66);return a0_0x2026d9[_0x2c126c(0x95)](_0xa66704,_0x392c66);}[a0_0xf197d7(0x99)](_0x2b9e18,_0x1cc691,_0x4d4145=a0_0xf197d7(0x75)){const _0x5d59fb=a0_0xf197d7,_0x36aac8=_0x4d4145===_0x5d59fb(0xf2)?this[_0x5d59fb(0xe7)]['validateWriteAccess'](_0x2b9e18,_0x1cc691):this[_0x5d59fb(0xe7)][_0x5d59fb(0xa4)](_0x2b9e18,_0x1cc691);if(!_0x36aac8[_0x5d59fb(0x101)])throw new Error(_0x4d4145+_0x5d59fb(0x80)+_0x36aac8['reason']+'\x20('+_0x36aac8['path']+')');return _0x36aac8;}[a0_0xf197d7(0x103)](_0x56a1bc){const _0x3f1c55=a0_0xf197d7,_0x370cea=a0_0x2026d9['extname'](_0x56a1bc)['toLowerCase']();if(this['blockedExtensions']['includes'](_0x370cea))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x3f1c55(0xf9)](_0x370cea))return![];return!![];}['addToHistory'](_0x41c88c,_0x5a57e8,_0x3d77ba){const _0x41d85f=a0_0xf197d7,_0x59f5fb={'timestamp':new Date()['toISOString'](),'agentId':_0x3d77ba,'action':_0x41c88c['type'],'filePath':_0x41c88c['filePath']||_0x41c88c['outputPath']||_0x41c88c[_0x41d85f(0xae)],'success':_0x5a57e8['success'],'size':_0x5a57e8['size']};this[_0x41d85f(0xd5)][_0x41d85f(0xba)](_0x59f5fb),this[_0x41d85f(0xd5)]['length']>0xc8&&(this[_0x41d85f(0xd5)]=this['operationHistory'][_0x41d85f(0xc7)](-0xc8));}[a0_0xf197d7(0x88)](){const _0x260c71=a0_0xf197d7;return[_0x260c71(0x75),_0x260c71(0xf2),'append','delete',_0x260c71(0x7a),_0x260c71(0x10b),_0x260c71(0xdd),'list',_0x260c71(0xbe),_0x260c71(0x8c)];}[a0_0xf197d7(0x8f)](){const _0x334922=a0_0xf197d7;return{'type':'object','properties':{'actions':{'type':_0x334922(0x81),'minItems':0x1,'items':{'type':_0x334922(0x104),'properties':{'type':{'type':_0x334922(0x94),'enum':this[_0x334922(0x88)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':_0x334922(0x94)},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':'string'},'encoding':{'type':_0x334922(0x94)},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':[_0x334922(0xb6)]};}[a0_0xf197d7(0x10c)](_0x553895=null){const _0x283dfb=a0_0xf197d7;if(_0x553895)return this['operationHistory'][_0x283dfb(0x90)](_0x46de20=>_0x46de20['agentId']===_0x553895);return[...this[_0x283dfb(0xd5)]];}}export default FileSystemTool;
|