@loxia-labs/loxia-autopilot-one 1.0.7 → 1.0.8
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/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/web-ui/build/index.html +2 -2
- package/web-ui/build/static/{index-BVF_10a5.css → index-BmKxmRe3.css} +1 -1
- package/web-ui/build/static/{index-DE5VFS1q.js → index-BzXbDs8z.js} +63 -63
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3ca43f=a0_0xcdb4;(function(_0x21fbe4,_0x1cd27e){const _0x292f67=a0_0xcdb4,_0xcb4214=_0x21fbe4();while(!![]){try{const _0x356cc6=parseInt(_0x292f67(0xb8))/0x1*(-parseInt(_0x292f67(0xb1))/0x2)+-parseInt(_0x292f67(0x9c))/0x3*(-parseInt(_0x292f67(0xc5))/0x4)+parseInt(_0x292f67(0xbb))/0x5*(parseInt(_0x292f67(0xae))/0x6)+-parseInt(_0x292f67(0xad))/0x7*(-parseInt(_0x292f67(0xa0))/0x8)+parseInt(_0x292f67(0x9e))/0x9*(parseInt(_0x292f67(0xe0))/0xa)+parseInt(_0x292f67(0x94))/0xb+-parseInt(_0x292f67(0xb3))/0xc*(parseInt(_0x292f67(0xec))/0xd);if(_0x356cc6===_0x1cd27e)break;else _0xcb4214['push'](_0xcb4214['shift']());}catch(_0x3cdde8){_0xcb4214['push'](_0xcb4214['shift']());}}}(a0_0x27e8,0xbffc8));import{promises as a0_0x58f77b}from'fs';import a0_0x171250 from'path';function a0_0xcdb4(_0x4a5477,_0xb599b0){_0x4a5477=_0x4a5477-0x80;const _0x27e827=a0_0x27e8();let _0xcdb430=_0x27e827[_0x4a5477];if(a0_0xcdb4['aGlLoi']===undefined){var _0x3aed3b=function(_0x5892bf){const _0x5d9768='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58f77b='',_0x171250='';for(let _0xf38af0=0x0,_0x1429d4,_0x57a73d,_0x49c23e=0x0;_0x57a73d=_0x5892bf['charAt'](_0x49c23e++);~_0x57a73d&&(_0x1429d4=_0xf38af0%0x4?_0x1429d4*0x40+_0x57a73d:_0x57a73d,_0xf38af0++%0x4)?_0x58f77b+=String['fromCharCode'](0xff&_0x1429d4>>(-0x2*_0xf38af0&0x6)):0x0){_0x57a73d=_0x5d9768['indexOf'](_0x57a73d);}for(let _0x297831=0x0,_0x26b04f=_0x58f77b['length'];_0x297831<_0x26b04f;_0x297831++){_0x171250+='%'+('00'+_0x58f77b['charCodeAt'](_0x297831)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x171250);};a0_0xcdb4['OodIsg']=_0x3aed3b,a0_0xcdb4['LnpNFv']={},a0_0xcdb4['aGlLoi']=!![];}const _0x34ac82=_0x27e827[0x0],_0x266f70=_0x4a5477+_0x34ac82,_0x2211b7=a0_0xcdb4['LnpNFv'][_0x266f70];return!_0x2211b7?(_0xcdb430=a0_0xcdb4['OodIsg'](_0xcdb430),a0_0xcdb4['LnpNFv'][_0x266f70]=_0xcdb430):_0xcdb430=_0x2211b7,_0xcdb430;}import{exec as a0_0xf38af0}from'child_process';function a0_0x27e8(){const _0x3177d8=['rMfPBgvKihrVigzLDgnOia','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','x2LZvxbKyxrLqxzHAwXHyMXL','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','Bgf0zxn0','nZG1ndy5ugDVBM1K','BwfQB3i','mte5n3nUD3P4Aa','DhjPBq','mtu2odHRAuXJtKC','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','BwfW','y29WEuzPBgu','iokgKIa','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','B2jQzwn0','DxrMltG','sw52ywXPzcbTB2rLoIa','zgLZDc10ywDZ','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','zxHLyW','C3rHDhvZ','nda5nuTKy09Iuq','mZiWotu5ogXpwxrJrG','Cgf0y2G','C3rYAw5N','mtu4ntm4mMvlBuLUCq','Aw5JBhvKzurLDG','nZe0mZzdA3HlBgy','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','D29YA2LUz0rPCMvJDg9YEq','x3bHCNnLvMvYC2LVBG','DgvZDa','muvPzKD2qW','zgvWzw5Kzw5JAwvZ','icdIGkiG','nuDrCgrRuW','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','Aw5MBW','tufyx0rfuevorevoq0LfuW','BM9YBwfSAxPL','uMv0CNKG','CMvHzezPBgu','ihbHy2THz2uOCYK','rM91BMqG','zgvIDwC','mtjWCKjMEey','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','zML4','yxv0BW','zxjYB3i','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','Ec1Yyw5Nzq','yNvPBgq','igzVCIa','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','x2nVBxbHCMvqCMvYzwXLyxnL','tM8GzgvWzw5Kzw5JAwvZigzVDw5KigLUihbHy2THz2uUANnVBG','BNbTifDbuK4','ChjLzML4','CgfJA2fNzs5QC29U','AxnbyNnVBhv0zq','8j+tIIbgB3vUzca','C29Tzq','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','AM9PBG','Bw9Kzq','ugfJA2fNzsbUB3qGzM91BMq6ia','ChvZAa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','D3jPDgvgAwXL','C3rHCNrZv2L0Aa','x3bHCNnLvMvYC2LVBLjHBMDL','mZG2nZbcy3vHCLi','zw50CMLLCW','rxjYB3iGy2HLy2TPBMCG','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','x2nOzwnRrgvWzw5Kzw5JAwvZ','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','ksWGBwf4igfSBg93zwq6ia','uKvhsvnuuLLFveLnru9vva','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','y2HLy2S','BNbTigLUC3rHBgWGzMfPBgvKoIa','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','mZq4ngjAtMnQuG','ChjLCMvSzwfZzq','tLbnx1jfr0Ltvfjzx1vsta','D2fYBG','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','yMfZzw5HBwu','yM9VBgvHBG','C3rYAw5NAwz5','DhLWzq','lMjHy2T1Cc5QC29U','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','yw5K','Dg9mB3DLCKnHC2u','zM9YrwfJAa','B3bLCMf0B3i','4PQG77Ipica','BwLUB3i','x3bHCNnLqM9VBgvHBG','x3nHDgLZzMLLC1jHBMDL','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','BwvZC2fNzq','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','Aw5JBhvKzxm','A2v5CW','CMfUz2u','BgvUz3rO','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','uKvuuLLFqvruru1qvfm','x2zLDgnOugfJA2fNzuLUzM8','tM8GCgfJA2fNzs5QC29UigzVDw5Kigf0oIa','revgqvvmvf9nt0rf','C2LTCgXL','zMLSDgvY','x3bHCNnLq29TCgXLEfjHBMDL','Bg9Nz2vY','x2nVBxbHCMvwzxjZAw9UCW','C3bSAxq','C2XPy2u','mJeXodmWm0Lfsg1IvG','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK'];a0_0x27e8=function(){return _0x3177d8;};return a0_0x27e8();}import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x1429d4 from'../utilities/tagParser.js';const exec=promisify(a0_0xf38af0),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x3ca43f(0xe9),'VALID_MODES':[a0_0x3ca43f(0xe9),a0_0x3ca43f(0xc7),a0_0x3ca43f(0xc8)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x3ca43f(0xf7),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<dependency-resolve>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>check</mode>\x0a\x20\x20<include-dev>true</include-dev>\x0a</dependency-resolve>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<mode>check</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>fix</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x57a73d){const _0x1a42bd=a0_0x3ca43f;if(typeof _0x57a73d===_0x1a42bd(0xa6)&&_0x57a73d!==null)return{'path':_0x57a73d['path']||'.','mode':_0x57a73d[_0x1a42bd(0xd9)]||RESOLVER_CONFIG[_0x1a42bd(0x8c)],'includeDev':_0x57a73d['includeDev']!==undefined?_0x57a73d['includeDev']:!![]};if(typeof _0x57a73d===_0x1a42bd(0xb0)){const _0x49c23e=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x297831=_0x49c23e['exec'](_0x57a73d);if(_0x297831){const _0x46b760=_0x297831[0x1],_0xc4a96c=_0x297831[0x2],_0x28afec=/path=["']([^"']*)["']/i['exec'](_0x46b760),_0x48d70c=/mode=["']([^"']*)["']/i['exec'](_0x46b760),_0x35703c=/include-dev=["']([^"']*)["']/i['exec'](_0x46b760),_0x4ae5d7=/<path>(.*?)<\/path>/i,_0x60db9e=_0x4ae5d7[_0x1a42bd(0xab)](_0xc4a96c),_0x374608=/<mode>(.*?)<\/mode>/i,_0xdb1e8=_0x374608[_0x1a42bd(0xab)](_0xc4a96c),_0x17fef9=/<include-dev>(.*?)<\/include-dev>/i,_0x179e10=_0x17fef9[_0x1a42bd(0xab)](_0xc4a96c),_0x588a85=(_0x60db9e?_0x60db9e[0x1][_0x1a42bd(0x9f)]():null)||(_0x28afec?_0x28afec[0x1]:'.'),_0x4ab9e5=(_0xdb1e8?_0xdb1e8[0x1][_0x1a42bd(0x9f)]():null)||(_0x48d70c?_0x48d70c[0x1]:RESOLVER_CONFIG[_0x1a42bd(0x8c)]),_0x544c5f=(_0x179e10?_0x179e10[0x1][_0x1a42bd(0x9f)]():null)||(_0x35703c?_0x35703c[0x1]:'true');return{'path':_0x588a85,'mode':_0x4ab9e5,'includeDev':this[_0x1a42bd(0xff)](_0x544c5f,!![])};}const _0x26b04f=/\[resolve\s+([^\]]*)\]/i,_0xbecfac=_0x26b04f['exec'](_0x57a73d);if(_0xbecfac){const _0x2a4b48=_0xbecfac[0x1],_0x1cfdc3=/path=["']([^"']*)["']/i['exec'](_0x2a4b48),_0x3efdaf=/mode=["']([^"']*)["']/i['exec'](_0x2a4b48),_0x1c1f68=/include-dev=["']([^"']*)["']/i[_0x1a42bd(0xab)](_0x2a4b48);return{'path':_0x1cfdc3?_0x1cfdc3[0x1]:'.','mode':_0x3efdaf?_0x3efdaf[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x1a42bd(0xff)](_0x1c1f68?_0x1c1f68[0x1]:'true',!![])};}throw new Error('Invalid\x20dependency-resolve\x20format.\x20Use\x20<dependency-resolve>\x20tags\x20or\x20JSON\x20format.');}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0x3ca43f(0xff)](_0x4fe8c2,defaultValue=![]){if(_0x4fe8c2===undefined||_0x4fe8c2===null)return defaultValue;if(typeof _0x4fe8c2==='boolean')return _0x4fe8c2;if(typeof _0x4fe8c2==='string')return _0x4fe8c2['toLowerCase']()==='true'||_0x4fe8c2==='1';return defaultValue;}['_validateParameters'](_0x724e7f){const _0x12b7bd=a0_0x3ca43f;if(!_0x724e7f||typeof _0x724e7f!==_0x12b7bd(0xa6))throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x724e7f['path']&&typeof _0x724e7f['path']!=='string')throw new Error('path\x20must\x20be\x20a\x20string');if(_0x724e7f['mode']&&!RESOLVER_CONFIG['VALID_MODES']['includes'](_0x724e7f['mode']))throw new Error(_0x12b7bd(0xa8)+_0x724e7f[_0x12b7bd(0xd9)]+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG['VALID_MODES'][_0x12b7bd(0xd8)](',\x20'));if(_0x724e7f['includeDev']!==undefined&&typeof _0x724e7f[_0x12b7bd(0xb2)]!==_0x12b7bd(0xf4))throw new Error(_0x12b7bd(0xaa));}[a0_0x3ca43f(0x98)](_0x592f8f,_0x5e028e){const _0x21429e=a0_0x3ca43f,{projectDir:_0x254c95,directoryAccess:_0x45fd02}=_0x5e028e;let _0x102c88=_0x254c95||process['cwd']();_0x45fd02&&_0x45fd02['workingDirectory']&&(_0x102c88=_0x45fd02[_0x21429e(0xb5)]);const _0x6d7ee0=a0_0x171250[_0x21429e(0xd4)](_0x592f8f)?a0_0x171250[_0x21429e(0xbf)](_0x592f8f):a0_0x171250['normalize'](a0_0x171250[_0x21429e(0xd8)](_0x102c88,_0x592f8f)),_0x2856a7=a0_0x171250[_0x21429e(0xbf)](_0x102c88);if(!_0x6d7ee0['startsWith'](_0x2856a7))throw new Error('Path\x20traversal\x20detected:\x20'+_0x592f8f+_0x21429e(0x96));return _0x6d7ee0;}async['_createBackup'](_0x11a79b){const _0x22b2f5=a0_0x3ca43f;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x8464fc=_0x11a79b+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x58f77b['copyFile'](_0x11a79b,_0x8464fc),this[_0x22b2f5(0x90)]?.[_0x22b2f5(0xbd)]('Created\x20backup',{'backupPath':_0x8464fc}),_0x8464fc;}catch(_0x423510){return this[_0x22b2f5(0x90)]?.[_0x22b2f5(0xef)]('Failed\x20to\x20create\x20backup',{'error':_0x423510[_0x22b2f5(0x82)]}),null;}}async[a0_0x3ca43f(0x8a)](_0x1323f0){const _0x5ab631=a0_0x3ca43f,_0x370dfa=RESOLVER_CONFIG[_0x5ab631(0xee)]+'/'+encodeURIComponent(_0x1323f0);for(let _0x55933f=0x1;_0x55933f<=RESOLVER_CONFIG[_0x5ab631(0x89)];_0x55933f++){try{const _0x2efa07=new AbortController(),_0x48f53e=setTimeout(()=>_0x2efa07['abort'](),RESOLVER_CONFIG[_0x5ab631(0xe7)]),_0x514c47=await fetch(_0x370dfa,{'signal':_0x2efa07['signal']});clearTimeout(_0x48f53e);if(!_0x514c47['ok']){if(_0x514c47[_0x5ab631(0xac)]===0x194)return this['logger']?.[_0x5ab631(0xef)](_0x5ab631(0xda)+_0x1323f0),null;throw new Error('HTTP\x20'+_0x514c47['status']+':\x20'+_0x514c47['statusText']);}const _0x46888d=await _0x514c47['json']();if(!_0x46888d||typeof _0x46888d!=='object'||!_0x46888d[_0x5ab631(0xa9)])throw new Error(_0x5ab631(0xf8));return _0x46888d;}catch(_0xee3d01){if(_0x55933f<RESOLVER_CONFIG[_0x5ab631(0x89)])this['logger']?.[_0x5ab631(0xc4)](_0x5ab631(0xc0)+_0x55933f+'/'+RESOLVER_CONFIG[_0x5ab631(0x89)]+_0x5ab631(0xcd)+_0x1323f0),await new Promise(_0x1a27db=>setTimeout(_0x1a27db,RESOLVER_CONFIG['RETRY_DELAY']*_0x55933f));else return this['logger']?.[_0x5ab631(0xc9)](_0x5ab631(0x97)+_0x1323f0+':',_0xee3d01['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x3d6aab,_0x51f106){const _0x46dca3=a0_0x3ca43f,_0x38d38b=await this['_fetchPackageInfo'](_0x3d6aab);if(!_0x38d38b)return null;const _0x17e094=_0x38d38b['dist-tags']?.[_0x46dca3(0x9b)];if(!_0x17e094)return null;const _0x115e10=this[_0x46dca3(0xb6)](_0x17e094);if(!_0x115e10)return null;if(this['_isComplexRange'](_0x51f106)){const _0x6f3c55=this[_0x46dca3(0x8f)](_0x51f106),_0x1ee84f=this['_satisfiesComplexRange'](_0x6f3c55,_0x115e10);if(_0x1ee84f)return _0x17e094;return null;}const _0x521004=this[_0x46dca3(0xdf)](_0x51f106);if(!_0x521004)return null;const _0x539c9d=this['_isUpdateAvailable'](_0x521004,_0x115e10);if(_0x539c9d)return _0x521004[_0x46dca3(0xd2)]+_0x17e094;return null;}['_parseVersion'](_0x47c40a){const _0x228df0=a0_0x3ca43f,_0xe359a8=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x4de7e8=_0xe359a8[_0x228df0(0xab)](_0x47c40a);if(!_0x4de7e8){const _0x2a8d7e=_0x47c40a['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x2a8d7e)return{'major':parseInt(_0x2a8d7e[0x1],0xa),'minor':parseInt(_0x2a8d7e[0x2],0xa),'patch':parseInt(_0x2a8d7e[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x4de7e8[0x1],0xa),'minor':parseInt(_0x4de7e8[0x2],0xa),'patch':parseInt(_0x4de7e8[0x3],0xa),'prerelease':_0x4de7e8[0x4]?_0x4de7e8[0x4]['split']('.'):null,'build':_0x4de7e8[0x5]||null};}['_compareVersions'](_0x264acf,_0x456b03){const _0x56541d=a0_0x3ca43f;if(_0x264acf[_0x56541d(0x9d)]!==_0x456b03[_0x56541d(0x9d)])return _0x264acf[_0x56541d(0x9d)]-_0x456b03[_0x56541d(0x9d)];if(_0x264acf['minor']!==_0x456b03['minor'])return _0x264acf['minor']-_0x456b03['minor'];if(_0x264acf[_0x56541d(0xaf)]!==_0x456b03['patch'])return _0x264acf['patch']-_0x456b03['patch'];if(!_0x264acf[_0x56541d(0xed)]&&!_0x456b03['prerelease'])return 0x0;if(!_0x264acf[_0x56541d(0xed)]&&_0x456b03[_0x56541d(0xed)])return 0x1;if(_0x264acf[_0x56541d(0xed)]&&!_0x456b03[_0x56541d(0xed)])return-0x1;return this['_comparePrerelease'](_0x264acf[_0x56541d(0xed)],_0x456b03[_0x56541d(0xed)]);}[a0_0x3ca43f(0xcf)](_0x35078f,_0x45c507){const _0x52879d=a0_0x3ca43f,_0x4d25bc=Math['max'](_0x35078f[_0x52879d(0x87)],_0x45c507['length']);for(let _0xcae297=0x0;_0xcae297<_0x4d25bc;_0xcae297++){if(_0xcae297>=_0x35078f[_0x52879d(0x87)])return-0x1;if(_0xcae297>=_0x45c507['length'])return 0x1;const _0x9af3b5=_0x35078f[_0xcae297],_0x35fb01=_0x45c507[_0xcae297],_0x1056be=/^\d+$/['test'](_0x9af3b5)?parseInt(_0x9af3b5,0xa):null,_0x3fba9a=/^\d+$/['test'](_0x35fb01)?parseInt(_0x35fb01,0xa):null;if(_0x1056be!==null&&_0x3fba9a!==null){if(_0x1056be!==_0x3fba9a)return _0x1056be-_0x3fba9a;continue;}if(_0x1056be!==null&&_0x3fba9a===null)return-0x1;if(_0x1056be===null&&_0x3fba9a!==null)return 0x1;if(_0x9af3b5<_0x35fb01)return-0x1;if(_0x9af3b5>_0x35fb01)return 0x1;}return 0x0;}[a0_0x3ca43f(0xdf)](_0x1ff698){const _0x32cac6=a0_0x3ca43f,_0x5cb4ff=_0x1ff698['trim'](),_0x17ba0f=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x196d43=_0x17ba0f['exec'](_0x5cb4ff);if(_0x196d43){const _0x584be2=_0x196d43[0x1],_0x5c6011=_0x196d43[0x3],_0x132dea=_0x196d43[0x5],_0x5aaf42=_0x584be2==='*'||_0x584be2['toLowerCase']()==='x'||_0x5c6011===undefined||_0x5c6011==='*'||_0x5c6011[_0x32cac6(0xfa)]()==='x'||_0x132dea===undefined||_0x132dea==='*'||_0x132dea[_0x32cac6(0xfa)]()==='x';if(_0x5aaf42)return{'prefix':'','operator':'x-range','major':_0x584be2==='*'||_0x584be2['toLowerCase']()==='x'?null:parseInt(_0x584be2,0xa),'minor':!_0x5c6011||_0x5c6011==='*'||_0x5c6011[_0x32cac6(0xfa)]()==='x'?null:parseInt(_0x5c6011,0xa),'patch':!_0x132dea||_0x132dea==='*'||_0x132dea['toLowerCase']()==='x'?null:parseInt(_0x132dea,0xa),'original':_0x1ff698};}let _0x420138='',_0x2010f3=_0x5cb4ff,_0x3eab2c='=';if(_0x5cb4ff[_0x32cac6(0xde)]('^'))_0x420138='^',_0x2010f3=_0x5cb4ff[_0x32cac6(0x93)](0x1),_0x3eab2c='^';else{if(_0x5cb4ff[_0x32cac6(0xde)]('~'))_0x420138='~',_0x2010f3=_0x5cb4ff['slice'](0x1),_0x3eab2c='~';else{if(_0x5cb4ff['startsWith']('>='))_0x420138='>=',_0x2010f3=_0x5cb4ff['slice'](0x2)[_0x32cac6(0x9f)](),_0x3eab2c='>=';else{if(_0x5cb4ff['startsWith']('>'))_0x420138='>',_0x2010f3=_0x5cb4ff['slice'](0x1)[_0x32cac6(0x9f)](),_0x3eab2c='>';else{if(_0x5cb4ff[_0x32cac6(0xde)]('<='))_0x420138='<=',_0x2010f3=_0x5cb4ff[_0x32cac6(0x93)](0x2)['trim'](),_0x3eab2c='<=';else _0x5cb4ff[_0x32cac6(0xde)]('<')&&(_0x420138='<',_0x2010f3=_0x5cb4ff['slice'](0x1)['trim'](),_0x3eab2c='<');}}}}const _0x399c8a=this[_0x32cac6(0xb6)](_0x2010f3);if(!_0x399c8a)return null;return{'prefix':_0x420138,'operator':_0x3eab2c,'major':_0x399c8a[_0x32cac6(0x9d)],'minor':_0x399c8a['minor'],'patch':_0x399c8a['patch'],'prerelease':_0x399c8a[_0x32cac6(0xed)],'build':_0x399c8a[_0x32cac6(0xcc)],'original':_0x1ff698};}['_isUpdateAvailable'](_0x4aa4d8,_0x3f0bde){const _0x275c18=a0_0x3ca43f,_0x834bd5={'major':_0x4aa4d8['major'],'minor':_0x4aa4d8[_0x275c18(0xfe)],'patch':_0x4aa4d8['patch'],'prerelease':_0x4aa4d8['prerelease']||null,'build':_0x4aa4d8['build']||null};switch(_0x4aa4d8[_0x275c18(0xfc)]){case'^':return this[_0x275c18(0xf0)](_0x834bd5,_0x3f0bde);case'~':return this['_isTildeUpdateAvailable'](_0x834bd5,_0x3f0bde);case'>=':case'>':return this[_0x275c18(0x88)](_0x834bd5,_0x3f0bde);case'<':case'<=':return this[_0x275c18(0xdc)](_0x4aa4d8,_0x3f0bde);case _0x275c18(0xcb):return this['_isXRangeUpdateAvailable'](_0x4aa4d8,_0x3f0bde);case'=':default:return this['_isExactUpdateAvailable'](_0x834bd5,_0x3f0bde);}}[a0_0x3ca43f(0xf0)](_0x34f9eb,_0x598036){const _0x39ed90=a0_0x3ca43f,_0x1926b1=this['_compareVersions'](_0x598036,_0x34f9eb);if(_0x1926b1<=0x0)return![];if(_0x34f9eb[_0x39ed90(0x9d)]===0x0&&_0x34f9eb[_0x39ed90(0xfe)]===0x0)return _0x598036['major']===0x0&&_0x598036['minor']===0x0;if(_0x34f9eb[_0x39ed90(0x9d)]===0x0)return _0x598036['major']===0x0&&_0x598036[_0x39ed90(0xfe)]===_0x34f9eb['minor'];return _0x598036[_0x39ed90(0x9d)]===_0x34f9eb['major'];}[a0_0x3ca43f(0xbc)](_0x9ac48b,_0x4ac7ac){const _0x159fdc=a0_0x3ca43f,_0x1d3212=this['_compareVersions'](_0x4ac7ac,_0x9ac48b);if(_0x1d3212<=0x0)return![];return _0x4ac7ac['major']===_0x9ac48b[_0x159fdc(0x9d)]&&_0x4ac7ac[_0x159fdc(0xfe)]===_0x9ac48b[_0x159fdc(0xfe)];}['_isSimpleUpdateAvailable'](_0x5742bb,_0x149643){const _0x49cc67=a0_0x3ca43f,_0x18375c=this[_0x49cc67(0x91)](_0x149643,_0x5742bb);return _0x18375c>0x0;}['_isExactUpdateAvailable'](_0x58ace1,_0x79c139){const _0x2c9330=a0_0x3ca43f;return this[_0x2c9330(0x88)](_0x58ace1,_0x79c139);}['_isLessThanUpdateAvailable'](_0x1c122d,_0x1cf74e){const _0x4b8dc2=a0_0x3ca43f,_0x5c87a8=this['_compareVersions'](_0x1cf74e,_0x1c122d);if(_0x1c122d[_0x4b8dc2(0xfc)]==='<')return _0x5c87a8<0x0;else{if(_0x1c122d['operator']==='<=')return _0x5c87a8<=0x0;}return![];}[a0_0x3ca43f(0xe3)](_0x2235b8,_0x5be4bf){const _0x551a6c=a0_0x3ca43f;if(_0x2235b8[_0x551a6c(0x9d)]!==null&&_0x5be4bf[_0x551a6c(0x9d)]!==_0x2235b8[_0x551a6c(0x9d)])return![];if(_0x2235b8['minor']!==null&&_0x5be4bf[_0x551a6c(0xfe)]!==_0x2235b8['minor'])return![];if(_0x2235b8[_0x551a6c(0xaf)]!==null&&_0x5be4bf[_0x551a6c(0xaf)]!==_0x2235b8[_0x551a6c(0xaf)])return![];return!![];}['_isComplexRange'](_0x49dc93){const _0x1e1c67=a0_0x3ca43f;if(_0x49dc93[_0x1e1c67(0x84)]('||'))return!![];const _0x268921=_0x49dc93[_0x1e1c67(0x9f)]();if(_0x268921['startsWith']('^')||_0x268921['startsWith']('~'))return![];const _0x549ed8=_0x268921['split'](/\s+/)[_0x1e1c67(0x8e)](_0x27e75f=>_0x27e75f[_0x1e1c67(0x87)]>0x0);if(_0x549ed8['length']>0x1){const _0x4e30e6=/^(>=?|<=?|\^|~|[0-9])/;return _0x549ed8['every'](_0x456168=>_0x4e30e6[_0x1e1c67(0xb7)](_0x456168));}return![];}['_parseComplexRange'](_0x2843c3){const _0x12511c=a0_0x3ca43f;if(_0x2843c3['includes']('||')){const _0x226690=_0x2843c3[_0x12511c(0x92)]('||')['map'](_0x356875=>_0x356875[_0x12511c(0x9f)]());return{'type':'or','ranges':_0x226690['map'](_0x31693f=>this[_0x12511c(0x8f)](_0x31693f))};}const _0x209fc2=_0x2843c3['trim']()['split'](/\s+/)['filter'](_0x451450=>_0x451450[_0x12511c(0x87)]>0x0);if(_0x209fc2[_0x12511c(0x87)]>0x1)return{'type':'and','ranges':_0x209fc2[_0x12511c(0xa2)](_0x5a5208=>this['_parseVersionRange'](_0x5a5208))};return{'type':_0x12511c(0x8d),'range':this[_0x12511c(0xdf)](_0x2843c3)};}[a0_0x3ca43f(0x80)](_0x55a4f1,_0x4d0aaa){const _0x424aa2=a0_0x3ca43f;if(!_0x55a4f1||!_0x4d0aaa)return![];return this[_0x424aa2(0x99)](_0x55a4f1,_0x4d0aaa);}[a0_0x3ca43f(0xe5)](_0x47f845,_0x77c2a7){const _0x3c2831=a0_0x3ca43f;if(!_0x47f845||!_0x77c2a7)return![];switch(_0x47f845[_0x3c2831(0xf6)]){case'simple':return this['_satisfiesRange'](_0x47f845[_0x3c2831(0x86)],_0x77c2a7);case _0x3c2831(0xf9):return _0x47f845['ranges']['every'](_0x857320=>this[_0x3c2831(0x80)](_0x857320,_0x77c2a7));case'or':return _0x47f845['ranges'][_0x3c2831(0xd6)](_0x3724c4=>this[_0x3c2831(0xe5)](_0x3724c4,_0x77c2a7));default:return![];}}async[a0_0x3ca43f(0xe4)](_0x493f14){const _0x484f98=a0_0x3ca43f,_0x5dd965={},_0x429fec=Object[_0x484f98(0xe1)](_0x493f14);for(let _0x42ee36=0x0;_0x42ee36<_0x429fec[_0x484f98(0x87)];_0x42ee36+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x7c08f5=_0x429fec['slice'](_0x42ee36,_0x42ee36+RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']),_0x131d56=_0x7c08f5[_0x484f98(0xa2)](async([_0x51520c,_0x2456bb])=>{const _0x3b2695=_0x484f98;try{const _0xc42d6a=await this[_0x3b2695(0xce)](_0x51520c,_0x2456bb);if(_0xc42d6a){const _0x44c363=_0x2456bb['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x51520c,'newVersion':''+_0x44c363+_0xc42d6a,'oldVersion':_0x2456bb};}return null;}catch(_0x5d8d17){return this[_0x3b2695(0x90)]?.['error'](_0x3b2695(0xe2)+_0x51520c+':',_0x5d8d17['message']),null;}}),_0x17157c=await Promise['all'](_0x131d56);_0x17157c[_0x484f98(0xfb)](_0x1fa8b9=>{_0x1fa8b9&&(_0x5dd965[_0x1fa8b9['pkg']]=_0x1fa8b9['newVersion']);});}return _0x5dd965;}async['execute'](_0x20b20d,_0x1700b7={}){const _0x1f2eb5=a0_0x3ca43f;try{this['_validateParameters'](_0x20b20d);const {path:_0x1d36f1,mode:_0xacbd48,includeDev:_0xb8001a}=_0x20b20d,{projectDir:_0xdf6e15,agentId:_0x2d5008,directoryAccess:_0x5d3369}=_0x1700b7,_0xc350a7=this['_resolveAndValidatePath'](_0x1d36f1,_0x1700b7),_0x193475=a0_0x171250['join'](_0xc350a7,_0x1f2eb5(0xd3));this['logger']?.[_0x1f2eb5(0xbd)]('Dependency\x20resolver\x20executing',{'mode':_0xacbd48,'resolvedPath':_0xc350a7,'includeDev':_0xb8001a,'agentId':_0x2d5008});const _0x44c356=[];_0x44c356['push']('🔍\x20Checking\x20dependencies\x20in:\x20'+_0xc350a7),_0x44c356['push']('Mode:\x20'+_0xacbd48);try{await a0_0x58f77b['access'](_0x193475);}catch{return{'success':![],'error':_0x1f2eb5(0x8b)+_0x193475,'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};}_0x44c356[_0x1f2eb5(0xdb)]('\x0a📦\x20Reading\x20package.json...');const _0x561965=await a0_0x58f77b[_0x1f2eb5(0xc1)](_0x193475,_0x1f2eb5(0xa7)),_0x468004=JSON['parse'](_0x561965),_0x4ab15e={..._0x468004[_0x1f2eb5(0xb9)]};_0xb8001a&&_0x468004['devDependencies']&&Object['assign'](_0x4ab15e,_0x468004['devDependencies']);if(Object[_0x1f2eb5(0x85)](_0x4ab15e)['length']===0x0)return{'success':!![],'mode':_0xacbd48,'message':_0x1f2eb5(0xd0),'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};if(Object['keys'](_0x4ab15e)['length']>RESOLVER_CONFIG[_0x1f2eb5(0xbe)])return{'success':![],'error':_0x1f2eb5(0x83)+Object['keys'](_0x4ab15e)[_0x1f2eb5(0x87)]+_0x1f2eb5(0xe6)+RESOLVER_CONFIG[_0x1f2eb5(0xbe)],'output':_0x44c356['join']('\x0a')};_0x44c356['push'](_0x1f2eb5(0xd5)+Object[_0x1f2eb5(0x85)](_0x4ab15e)['length']+_0x1f2eb5(0xe8)),_0x44c356[_0x1f2eb5(0xdb)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x5650e4=await this[_0x1f2eb5(0xe4)](_0x4ab15e);_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xb4)),_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0x81)+Object['keys'](_0x5650e4)[_0x1f2eb5(0x87)]);if(Object['keys'](_0x5650e4)['length']>0x0){_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xa5));for(const [_0x4a762c,_0x187ff6]of Object['entries'](_0x5650e4)){const _0x4a1b33=_0x4ab15e[_0x4a762c];_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xba)+_0x4a762c+':\x20'+_0x4a1b33+_0x1f2eb5(0xa4)+_0x187ff6);}}else _0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xf1));if(_0xacbd48===_0x1f2eb5(0xe9))return Object['keys'](_0x5650e4)['length']>0x0&&_0x44c356['push'](_0x1f2eb5(0xca)),{'success':!![],'mode':_0x1f2eb5(0xe9),'message':_0x1f2eb5(0xc3)+Object['keys'](_0x5650e4)[_0x1f2eb5(0x87)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object['keys'](_0x4ab15e)['length'],'updatesAvailable':Object[_0x1f2eb5(0x85)](_0x5650e4)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x5650e4,'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};if((_0xacbd48==='fix'||_0xacbd48===_0x1f2eb5(0xc8))&&Object['keys'](_0x5650e4)['length']>0x0){_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xc6));const _0x44d552=await this['_createBackup'](_0x193475);_0x44d552?_0x44c356['push']('✅\x20Backup\x20created:\x20'+a0_0x171250[_0x1f2eb5(0xf3)](_0x44d552)):_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0x95));_0x44c356['push']('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x514f5d,_0x26c232]of Object[_0x1f2eb5(0xe1)](_0x5650e4)){_0x468004[_0x1f2eb5(0xb9)]?.[_0x514f5d]&&(_0x468004[_0x1f2eb5(0xb9)][_0x514f5d]=_0x26c232),_0x468004['devDependencies']?.[_0x514f5d]&&(_0x468004['devDependencies'][_0x514f5d]=_0x26c232);}await a0_0x58f77b[_0x1f2eb5(0xdd)](_0x193475,JSON[_0x1f2eb5(0xf5)](_0x468004,null,0x2)+'\x0a'),_0x44c356[_0x1f2eb5(0xdb)]('✅\x20package.json\x20updated'),_0x44c356['push']('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x117768,stderr:_0x137283}=await exec('npm\x20install',{'cwd':_0xc350a7,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x117768){const _0x4976c3=_0x117768['trim']()[_0x1f2eb5(0x92)]('\x0a');_0x4976c3[_0x1f2eb5(0x87)]>0xa?_0x44c356['push']('\x20\x20'+_0x4976c3[_0x1f2eb5(0x93)](-0x5)['join']('\x0a\x20\x20')):_0x44c356['push']('\x20\x20'+_0x117768[_0x1f2eb5(0x9f)]());}_0x137283&&!_0x137283['includes'](_0x1f2eb5(0xd1))&&_0x44c356['push'](_0x1f2eb5(0xfd)+_0x137283[_0x1f2eb5(0x9f)]());_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xeb));try{const {stdout:_0x2fd9e0}=await exec(_0x1f2eb5(0xa1),{'cwd':_0xc350a7,'timeout':0x7530}),_0x5df2d0=JSON['parse'](_0x2fd9e0);if(_0x5df2d0[_0x1f2eb5(0xb9)]){_0x44c356['push'](_0x1f2eb5(0xd7));for(const _0x1bb4c6 of Object[_0x1f2eb5(0x85)](_0x5650e4)){_0x5df2d0['dependencies'][_0x1bb4c6]&&_0x44c356[_0x1f2eb5(0xdb)](_0x1f2eb5(0xba)+_0x1bb4c6+'@'+_0x5df2d0[_0x1f2eb5(0xb9)][_0x1bb4c6]['version']);}}}catch(_0x31e297){this[_0x1f2eb5(0x90)]?.[_0x1f2eb5(0xc4)]('npm\x20ls\x20failed:',_0x31e297[_0x1f2eb5(0x82)]);}return{'success':!![],'mode':_0xacbd48,'message':_0x1f2eb5(0x9a)+Object['keys'](_0x5650e4)[_0x1f2eb5(0x87)]+_0x1f2eb5(0xc2),'statistics':{'totalDependencies':Object[_0x1f2eb5(0x85)](_0x4ab15e)[_0x1f2eb5(0x87)],'updatesAvailable':Object['keys'](_0x5650e4)[_0x1f2eb5(0x87)],'updatesApplied':Object['keys'](_0x5650e4)['length'],'errors':0x0},'updates':_0x5650e4,'backupCreated':_0x44d552!==null,'backupPath':_0x44d552,'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};}catch(_0x474453){_0x44c356['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x474453['message']);if(_0x44d552)try{await a0_0x58f77b[_0x1f2eb5(0xa3)](_0x44d552,_0x193475),_0x44c356['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x2e3941){_0x44c356[_0x1f2eb5(0xdb)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0xacbd48,'error':_0x1f2eb5(0xea)+_0x474453[_0x1f2eb5(0x82)],'statistics':{'totalDependencies':Object[_0x1f2eb5(0x85)](_0x4ab15e)['length'],'updatesAvailable':Object[_0x1f2eb5(0x85)](_0x5650e4)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x5650e4,'backupCreated':_0x44d552!==null,'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};}}else{if(_0xacbd48==='fix'||_0xacbd48===_0x1f2eb5(0xc8))return _0x44c356[_0x1f2eb5(0xdb)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0xacbd48,'message':_0x1f2eb5(0xf2),'statistics':{'totalDependencies':Object['keys'](_0x4ab15e)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x44c356[_0x1f2eb5(0xd8)]('\x0a')};}}catch(_0x1614ea){return this[_0x1f2eb5(0x90)]?.[_0x1f2eb5(0xc9)]('Dependency\x20resolver\x20error:',_0x1614ea),{'success':![],'error':_0x1614ea[_0x1f2eb5(0x82)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x1614ea['message']};}}}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x556a87=a0_0x2fdc;(function(_0x3e7863,_0x16ea01){const _0xedc2e6=a0_0x2fdc,_0x222ec6=_0x3e7863();while(!![]){try{const _0x5368b1=parseInt(_0xedc2e6(0x1e2))/0x1+parseInt(_0xedc2e6(0x21f))/0x2+parseInt(_0xedc2e6(0x1a1))/0x3+parseInt(_0xedc2e6(0x1b5))/0x4+parseInt(_0xedc2e6(0x1b1))/0x5+-parseInt(_0xedc2e6(0x1a3))/0x6*(parseInt(_0xedc2e6(0x20b))/0x7)+-parseInt(_0xedc2e6(0x20f))/0x8;if(_0x5368b1===_0x16ea01)break;else _0x222ec6['push'](_0x222ec6['shift']());}catch(_0xd854b5){_0x222ec6['push'](_0x222ec6['shift']());}}}(a0_0x545c,0x87701));import{promises as a0_0x7dc6e3}from'fs';import a0_0x4e96f4 from'path';import{exec as a0_0x2dee47}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';import a0_0x498a89 from'../utilities/tagParser.js';function a0_0x2fdc(_0x5d2997,_0x12a33e){_0x5d2997=_0x5d2997-0x19f;const _0x545cab=a0_0x545c();let _0x2fdc17=_0x545cab[_0x5d2997];if(a0_0x2fdc['mpMKpI']===undefined){var _0x10a04b=function(_0x546f3c){const _0x2640cf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7dc6e3='',_0x4e96f4='';for(let _0x2dee47=0x0,_0x498a89,_0x577f02,_0x29d2b2=0x0;_0x577f02=_0x546f3c['charAt'](_0x29d2b2++);~_0x577f02&&(_0x498a89=_0x2dee47%0x4?_0x498a89*0x40+_0x577f02:_0x577f02,_0x2dee47++%0x4)?_0x7dc6e3+=String['fromCharCode'](0xff&_0x498a89>>(-0x2*_0x2dee47&0x6)):0x0){_0x577f02=_0x2640cf['indexOf'](_0x577f02);}for(let _0x235b6a=0x0,_0x49eb5b=_0x7dc6e3['length'];_0x235b6a<_0x49eb5b;_0x235b6a++){_0x4e96f4+='%'+('00'+_0x7dc6e3['charCodeAt'](_0x235b6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4e96f4);};a0_0x2fdc['PaSnAG']=_0x10a04b,a0_0x2fdc['ZIutbI']={},a0_0x2fdc['mpMKpI']=!![];}const _0x491392=_0x545cab[0x0],_0x44e9f1=_0x5d2997+_0x491392,_0x416972=a0_0x2fdc['ZIutbI'][_0x44e9f1];return!_0x416972?(_0x2fdc17=a0_0x2fdc['PaSnAG'](_0x2fdc17),a0_0x2fdc['ZIutbI'][_0x44e9f1]=_0x2fdc17):_0x2fdc17=_0x416972,_0x2fdc17;}function a0_0x545c(){const _0x368686=['Bw9Kzq','zxHLy3v0zq','BNbTigXZigzHAwXLzdO','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','zgv2rgvWzw5Kzw5JAwvZ','igzVCIa','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','B2jQzwn0','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC','B3bLCMf0B3i','iokgKIa','x3bHCNnLq29TCgXLEfjHBMDL','y2HLy2S','Dg9mB3DLCKnHC2u','ugfJA2fNzsbUB3qGzM91BMq6ia','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','D2fYBG','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','vKfmsurFtu9ervm','x2nVBxbHCMvqCMvYzwXLyxnL','Bg9Nz2vY','Aw5MBW','yM9VBgvHBG','DgvZDa','Cgf0AcbTDxn0igjLigeGC3rYAw5N','tufyx0rfuevorevoq0LfuW','mtr1vLPsz1O','BwLUB3i','DhLWzq','BM9YBwfSAxPL','mtK4nJGZodrts09RyNC','4PYfiejHy2T1CcbJCMvHDgvKoIa','x2nVBxbHCMvwzxjZAw9UCW','C3rYAw5NAwz5','yNvPBgq','rxjYB3iGy2HLy2TPBMCG','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','yxv0BW','BMv3vMvYC2LVBG','x3zHBgLKyxrLugfYyw1LDgvYCW','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','x2nYzwf0zujHy2T1Ca','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','C3rYAw5N','mti0mJu0nfjrruHiyW','tufyx0nptKnvuLjftLrFq0Hfq0Tt','BNbTigLUC3rHBgW','CgTN','DxrMltG','yMfZzw5HBwu','mJu2mJa3ognJtfHtzq','uMv0CNKG','mty2mJeYnNLxzKDhuG','x2LZvxbKyxrLqxzHAwXHyMXL','Bgf0zxn0','Bwf0y2G','yw5K','x3bHCNnLvMvYC2LVBG','Aw5JBhvKzxm','A2v5CW','uKvuuLLFqvruru1qvfm','C3rHDhvZ','ChjLzML4','AM9PBG','cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','C2LNBMfS','ndy0mde5mhfItKXurq','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','icdIGkiG','C3bSAxq','mtG1mZeXnLnVzuDNsG','qwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zq','4PQG77Ipica','revgqvvmvf9nt0rf','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','8j+tIIbgB3vUzca','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','zxjYB3i','sw52ywXPzcbTB2rLoIa','ChvZAa','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','uKvhsvnuuLLFveLnru9vva','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','CgfJA2fNzs5QC29U','C2XPy2u','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','C29Tzq','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','zxHLyW','y3DK','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','BwfQB3i','q1jfqvrfx0jbq0Tvufm','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','zMLSDgvY','C3rHCNrZv2L0Aa','x3bHCNnLvMvYC2LVBLjHBMDL','zw50CMLLCW','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','rMfPBgvKihrVignYzwf0zsbIywnRDxa','rMfPBgvKihrVigzLDgnOia','Dhj1zq','cVcFKQeGuNvUihDPDgGGBw9Kzt0IzML4iIbVCIbTB2rLpsjHDxrViIb0BYbHChbSEsb1CgrHDgvZ','CMfUz2u','Aw5JBhvKzurLDG','8j+mKcbrDwvYEwLUzYbUCg0GCMvNAxn0CNKGzM9YihvWzgf0zxmUlI4','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','Cgf0Aa','Cgf0y2G','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','zgLZDc10ywDZ','BwvZC2fNzq','x3bHCNnLqM9VBgvHBG','rM91BMqG','nZi1nZi4BuTrEvns','tLbnx0nptu1btKrFveLnru9vva','BwfW','zML4','ChjLCMvSzwfZzq','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','lMjHy2T1Cc5QC29U','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','BgvUz3rO','x3nHDgLZzMLLC1jHBMDL','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','DhjPBq'];a0_0x545c=function(){return _0x368686;};return a0_0x545c();}const exec=promisify(a0_0x2dee47),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x556a87(0x1fc),'VALID_MODES':[a0_0x556a87(0x1fc),'fix',a0_0x556a87(0x218)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x556a87(0x1ea),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x556a87(0x1ee)};export class DependencyResolverTool extends BaseTool{['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<dependency-resolve>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>check</mode>\x0a\x20\x20<include-dev>true</include-dev>\x0a</dependency-resolve>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<mode>check</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```xml\x0a<dependency-resolver>\x0a\x20\x20<path>./my-project</path>\x0a\x20\x20<mode>fix</mode>\x0a</dependency-resolver>\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x577f02){const _0x57a032=a0_0x556a87;if(typeof _0x577f02==='object'&&_0x577f02!==null)return{'path':_0x577f02['path']||'.','mode':_0x577f02[_0x57a032(0x1f0)]||RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':_0x577f02['includeDev']!==undefined?_0x577f02[_0x57a032(0x1d8)]:!![]};if(typeof _0x577f02===_0x57a032(0x21e)){const _0x29d2b2=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x235b6a=_0x29d2b2['exec'](_0x577f02);if(_0x235b6a){const _0x2b2463=_0x235b6a[0x1],_0x48481c=_0x235b6a[0x2],_0x45b1cc=/path=["']([^"']*)["']/i['exec'](_0x2b2463),_0x124457=/mode=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x4bc959=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x2b2463),_0x5319ad=/<path>(.*?)<\/path>/i,_0x546806=_0x5319ad[_0x57a032(0x1c8)](_0x48481c),_0x2d0f75=/<mode>(.*?)<\/mode>/i,_0x49d201=_0x2d0f75[_0x57a032(0x1c8)](_0x48481c),_0x134c49=/<include-dev>(.*?)<\/include-dev>/i,_0x43d7f4=_0x134c49['exec'](_0x48481c),_0x1f3049=(_0x546806?_0x546806[0x1][_0x57a032(0x1ef)]():null)||(_0x45b1cc?_0x45b1cc[0x1]:'.'),_0x53daa7=(_0x49d201?_0x49d201[0x1]['trim']():null)||(_0x124457?_0x124457[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)]),_0x9e98c8=(_0x43d7f4?_0x43d7f4[0x1][_0x57a032(0x1ef)]():null)||(_0x4bc959?_0x4bc959[0x1]:_0x57a032(0x1d5));return{'path':_0x1f3049,'mode':_0x53daa7,'includeDev':this['_parseBoolean'](_0x9e98c8,!![])};}const _0x49eb5b=/\[resolve\s+([^\]]*)\]/i,_0x521118=_0x49eb5b['exec'](_0x577f02);if(_0x521118){const _0x836cb7=_0x521118[0x1],_0x2475c4=/path=["']([^"']*)["']/i['exec'](_0x836cb7),_0x3ddbb3=/mode=["']([^"']*)["']/i['exec'](_0x836cb7),_0x4e0efc=/include-dev=["']([^"']*)["']/i[_0x57a032(0x1c8)](_0x836cb7);return{'path':_0x2475c4?_0x2475c4[0x1]:'.','mode':_0x3ddbb3?_0x3ddbb3[0x1]:RESOLVER_CONFIG[_0x57a032(0x1b8)],'includeDev':this[_0x57a032(0x1e0)](_0x4e0efc?_0x4e0efc[0x1]:'true',!![])};}throw new Error(_0x57a032(0x215));}throw new Error(_0x57a032(0x217));}[a0_0x556a87(0x1e0)](_0x54e626,defaultValue=![]){const _0x234b26=a0_0x556a87;if(_0x54e626===undefined||_0x54e626===null)return defaultValue;if(typeof _0x54e626===_0x234b26(0x207))return _0x54e626;if(typeof _0x54e626==='string')return _0x54e626[_0x234b26(0x1fd)]()==='true'||_0x54e626==='1';return defaultValue;}[a0_0x556a87(0x21a)](_0xe8033){const _0x11be1c=a0_0x556a87;if(!_0xe8033||typeof _0xe8033!==_0x11be1c(0x1f7))throw new Error(_0x11be1c(0x1bb));if(_0xe8033['path']&&typeof _0xe8033[_0x11be1c(0x1db)]!==_0x11be1c(0x21e))throw new Error(_0x11be1c(0x209));if(_0xe8033[_0x11be1c(0x1f0)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x11be1c(0x1a9)](_0xe8033[_0x11be1c(0x1f0)]))throw new Error(_0x11be1c(0x1bd)+_0xe8033['mode']+'.\x20Must\x20be\x20one\x20of:\x20'+RESOLVER_CONFIG[_0x11be1c(0x203)]['join'](',\x20'));if(_0xe8033[_0x11be1c(0x1d8)]!==undefined&&typeof _0xe8033[_0x11be1c(0x1d8)]!=='boolean')throw new Error(_0x11be1c(0x1e7));}['_resolveAndValidatePath'](_0x58f6fe,_0x1a369b){const _0xe91b1f=a0_0x556a87,{projectDir:_0x257d04,directoryAccess:_0xb05d10}=_0x1a369b;let _0x4d560a=_0x257d04||process[_0xe91b1f(0x1c9)]();_0xb05d10&&_0xb05d10['workingDirectory']&&(_0x4d560a=_0xb05d10['workingDirectory']);const _0x3c377d=a0_0x4e96f4['isAbsolute'](_0x58f6fe)?a0_0x4e96f4[_0xe91b1f(0x20e)](_0x58f6fe):a0_0x4e96f4['normalize'](a0_0x4e96f4['join'](_0x4d560a,_0x58f6fe)),_0x380147=a0_0x4e96f4[_0xe91b1f(0x20e)](_0x4d560a);if(!_0x3c377d[_0xe91b1f(0x1cf)](_0x380147))throw new Error(_0xe91b1f(0x1bf)+_0x58f6fe+_0xe91b1f(0x1d2));return _0x3c377d;}async[a0_0x556a87(0x21c)](_0x5ae5f5){const _0x44720b=a0_0x556a87;if(!RESOLVER_CONFIG[_0x44720b(0x1cc)])return null;try{const _0x7cf3a=_0x5ae5f5+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x7dc6e3['copyFile'](_0x5ae5f5,_0x7cf3a),this['logger']?.[_0x44720b(0x206)]('Created\x20backup',{'backupPath':_0x7cf3a}),_0x7cf3a;}catch(_0x34216d){return this[_0x44720b(0x205)]?.['warn'](_0x44720b(0x1d3),{'error':_0x34216d[_0x44720b(0x1df)]}),null;}}async['_fetchPackageInfo'](_0x22e188){const _0x252a88=a0_0x556a87,_0xcc8687=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x22e188);for(let _0x40490b=0x1;_0x40490b<=RESOLVER_CONFIG['RETRY_ATTEMPTS'];_0x40490b++){try{const _0x5bec00=new AbortController(),_0x141de1=setTimeout(()=>_0x5bec00['abort'](),RESOLVER_CONFIG[_0x252a88(0x1c1)]),_0x1e94cb=await fetch(_0xcc8687,{'signal':_0x5bec00[_0x252a88(0x1b0)]});clearTimeout(_0x141de1);if(!_0x1e94cb['ok']){if(_0x1e94cb['status']===0x194)return this['logger']?.[_0x252a88(0x201)](_0x252a88(0x1fe)+_0x22e188),null;throw new Error('HTTP\x20'+_0x1e94cb[_0x252a88(0x1ac)]+':\x20'+_0x1e94cb['statusText']);}const _0x128194=await _0x1e94cb['json']();if(!_0x128194||typeof _0x128194!=='object'||!_0x128194[_0x252a88(0x1de)])throw new Error(_0x252a88(0x200));return _0x128194;}catch(_0x2ad61f){if(_0x40490b<RESOLVER_CONFIG[_0x252a88(0x1ab)])this['logger']?.['debug'](_0x252a88(0x1a2)+_0x40490b+'/'+RESOLVER_CONFIG[_0x252a88(0x1ab)]+_0x252a88(0x1f5)+_0x22e188),await new Promise(_0x49060c=>setTimeout(_0x49060c,RESOLVER_CONFIG['RETRY_DELAY']*_0x40490b));else return this[_0x252a88(0x205)]?.[_0x252a88(0x1bc)](_0x252a88(0x1d4)+_0x22e188+':',_0x2ad61f[_0x252a88(0x1df)]),null;}}return null;}async[a0_0x556a87(0x1ff)](_0x1749dd,_0x3bf91c){const _0x9d7775=a0_0x556a87,_0x258270=await this['_fetchPackageInfo'](_0x1749dd);if(!_0x258270)return null;const _0x816d6c=_0x258270[_0x9d7775(0x1de)]?.[_0x9d7775(0x1a5)];if(!_0x816d6c)return null;const _0x5cb4f7=this[_0x9d7775(0x1a8)](_0x816d6c);if(!_0x5cb4f7)return null;if(this['_isComplexRange'](_0x3bf91c)){const _0x47a5fc=this['_parseComplexRange'](_0x3bf91c),_0x5a6126=this[_0x9d7775(0x1eb)](_0x47a5fc,_0x5cb4f7);if(_0x5a6126)return _0x816d6c;return null;}const _0x1e0c3a=this[_0x9d7775(0x1d0)](_0x3bf91c);if(!_0x1e0c3a)return null;const _0x243fbe=this[_0x9d7775(0x1a4)](_0x1e0c3a,_0x5cb4f7);if(_0x243fbe)return _0x1e0c3a[_0x9d7775(0x1ad)]+_0x816d6c;return null;}[a0_0x556a87(0x1a8)](_0x54ddf6){const _0x1599db=a0_0x556a87,_0x36783b=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x166fa8=_0x36783b['exec'](_0x54ddf6);if(!_0x166fa8){const _0x5e1825=_0x54ddf6[_0x1599db(0x1a6)](/^(\d+)\.(\d+)\.(\d+)/);if(_0x5e1825)return{'major':parseInt(_0x5e1825[0x1],0xa),'minor':parseInt(_0x5e1825[0x2],0xa),'patch':parseInt(_0x5e1825[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x166fa8[0x1],0xa),'minor':parseInt(_0x166fa8[0x2],0xa),'patch':parseInt(_0x166fa8[0x3],0xa),'prerelease':_0x166fa8[0x4]?_0x166fa8[0x4]['split']('.'):null,'build':_0x166fa8[0x5]||null};}[a0_0x556a87(0x211)](_0xed3f47,_0x1fcb39){const _0x5531de=a0_0x556a87;if(_0xed3f47[_0x5531de(0x1cb)]!==_0x1fcb39['major'])return _0xed3f47[_0x5531de(0x1cb)]-_0x1fcb39[_0x5531de(0x1cb)];if(_0xed3f47['minor']!==_0x1fcb39[_0x5531de(0x20c)])return _0xed3f47['minor']-_0x1fcb39['minor'];if(_0xed3f47[_0x5531de(0x1dc)]!==_0x1fcb39['patch'])return _0xed3f47[_0x5531de(0x1dc)]-_0x1fcb39['patch'];if(!_0xed3f47['prerelease']&&!_0x1fcb39[_0x5531de(0x1e6)])return 0x0;if(!_0xed3f47['prerelease']&&_0x1fcb39[_0x5531de(0x1e6)])return 0x1;if(_0xed3f47['prerelease']&&!_0x1fcb39['prerelease'])return-0x1;return this[_0x5531de(0x204)](_0xed3f47['prerelease'],_0x1fcb39[_0x5531de(0x1e6)]);}[a0_0x556a87(0x204)](_0x28c0ec,_0x164828){const _0x48fce7=a0_0x556a87,_0x4b6c9a=Math['max'](_0x28c0ec[_0x48fce7(0x1ec)],_0x164828['length']);for(let _0x3b6d79=0x0;_0x3b6d79<_0x4b6c9a;_0x3b6d79++){if(_0x3b6d79>=_0x28c0ec[_0x48fce7(0x1ec)])return-0x1;if(_0x3b6d79>=_0x164828[_0x48fce7(0x1ec)])return 0x1;const _0x43cbf8=_0x28c0ec[_0x3b6d79],_0x302342=_0x164828[_0x3b6d79],_0x4d4d37=/^\d+$/['test'](_0x43cbf8)?parseInt(_0x43cbf8,0xa):null,_0x142d01=/^\d+$/['test'](_0x302342)?parseInt(_0x302342,0xa):null;if(_0x4d4d37!==null&&_0x142d01!==null){if(_0x4d4d37!==_0x142d01)return _0x4d4d37-_0x142d01;continue;}if(_0x4d4d37!==null&&_0x142d01===null)return-0x1;if(_0x4d4d37===null&&_0x142d01!==null)return 0x1;if(_0x43cbf8<_0x302342)return-0x1;if(_0x43cbf8>_0x302342)return 0x1;}return 0x0;}[a0_0x556a87(0x1d0)](_0x23d53b){const _0x316cff=a0_0x556a87,_0x4b4a85=_0x23d53b['trim'](),_0x485d3b=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x42f655=_0x485d3b['exec'](_0x4b4a85);if(_0x42f655){const _0x58f43d=_0x42f655[0x1],_0x430cc8=_0x42f655[0x3],_0x36d58b=_0x42f655[0x5],_0xc274fb=_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'||_0x430cc8===undefined||_0x430cc8==='*'||_0x430cc8['toLowerCase']()==='x'||_0x36d58b===undefined||_0x36d58b==='*'||_0x36d58b['toLowerCase']()==='x';if(_0xc274fb)return{'prefix':'','operator':'x-range','major':_0x58f43d==='*'||_0x58f43d[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x58f43d,0xa),'minor':!_0x430cc8||_0x430cc8==='*'||_0x430cc8[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x430cc8,0xa),'patch':!_0x36d58b||_0x36d58b==='*'||_0x36d58b[_0x316cff(0x1fd)]()==='x'?null:parseInt(_0x36d58b,0xa),'original':_0x23d53b};}let _0x15959b='',_0x2f0a18=_0x4b4a85,_0x4f0e33='=';if(_0x4b4a85['startsWith']('^'))_0x15959b='^',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='^';else{if(_0x4b4a85['startsWith']('~'))_0x15959b='~',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1),_0x4f0e33='~';else{if(_0x4b4a85['startsWith']('>='))_0x15959b='>=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='>=';else{if(_0x4b4a85['startsWith']('>'))_0x15959b='>',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='>';else{if(_0x4b4a85[_0x316cff(0x1cf)]('<='))_0x15959b='<=',_0x2f0a18=_0x4b4a85['slice'](0x2)['trim'](),_0x4f0e33='<=';else _0x4b4a85[_0x316cff(0x1cf)]('<')&&(_0x15959b='<',_0x2f0a18=_0x4b4a85[_0x316cff(0x1c4)](0x1)['trim'](),_0x4f0e33='<');}}}}const _0x2ba724=this['_parseVersion'](_0x2f0a18);if(!_0x2ba724)return null;return{'prefix':_0x15959b,'operator':_0x4f0e33,'major':_0x2ba724['major'],'minor':_0x2ba724['minor'],'patch':_0x2ba724[_0x316cff(0x1dc)],'prerelease':_0x2ba724['prerelease'],'build':_0x2ba724['build'],'original':_0x23d53b};}[a0_0x556a87(0x1a4)](_0x3b8d40,_0x22671d){const _0x4eeaa1=a0_0x556a87,_0x20d479={'major':_0x3b8d40['major'],'minor':_0x3b8d40['minor'],'patch':_0x3b8d40[_0x4eeaa1(0x1dc)],'prerelease':_0x3b8d40['prerelease']||null,'build':_0x3b8d40[_0x4eeaa1(0x213)]||null};switch(_0x3b8d40[_0x4eeaa1(0x1f9)]){case'^':return this[_0x4eeaa1(0x1e8)](_0x20d479,_0x22671d);case'~':return this['_isTildeUpdateAvailable'](_0x20d479,_0x22671d);case'>=':case'>':return this[_0x4eeaa1(0x1f3)](_0x20d479,_0x22671d);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x3b8d40,_0x22671d);case'x-range':return this[_0x4eeaa1(0x1ca)](_0x3b8d40,_0x22671d);case'=':default:return this[_0x4eeaa1(0x1c7)](_0x20d479,_0x22671d);}}['_isCaretUpdateAvailable'](_0x31b55f,_0x4adf5d){const _0x57fd31=a0_0x556a87,_0x180027=this['_compareVersions'](_0x4adf5d,_0x31b55f);if(_0x180027<=0x0)return![];if(_0x31b55f[_0x57fd31(0x1cb)]===0x0&&_0x31b55f[_0x57fd31(0x20c)]===0x0)return _0x4adf5d[_0x57fd31(0x1cb)]===0x0&&_0x4adf5d[_0x57fd31(0x20c)]===0x0;if(_0x31b55f[_0x57fd31(0x1cb)]===0x0)return _0x4adf5d['major']===0x0&&_0x4adf5d['minor']===_0x31b55f['minor'];return _0x4adf5d['major']===_0x31b55f['major'];}['_isTildeUpdateAvailable'](_0x5e5a8a,_0x13b36a){const _0x57fead=a0_0x556a87,_0x33a138=this[_0x57fead(0x211)](_0x13b36a,_0x5e5a8a);if(_0x33a138<=0x0)return![];return _0x13b36a[_0x57fead(0x1cb)]===_0x5e5a8a['major']&&_0x13b36a['minor']===_0x5e5a8a['minor'];}['_isSimpleUpdateAvailable'](_0x37d1d8,_0x4e7a94){const _0x3c64e7=this['_compareVersions'](_0x4e7a94,_0x37d1d8);return _0x3c64e7>0x0;}[a0_0x556a87(0x1c7)](_0x105972,_0x4b11e4){return this['_isSimpleUpdateAvailable'](_0x105972,_0x4b11e4);}[a0_0x556a87(0x1f6)](_0x28a07f,_0xc2968a){const _0x115bc8=a0_0x556a87,_0xef1dee=this[_0x115bc8(0x211)](_0xc2968a,_0x28a07f);if(_0x28a07f[_0x115bc8(0x1f9)]==='<')return _0xef1dee<0x0;else{if(_0x28a07f[_0x115bc8(0x1f9)]==='<=')return _0xef1dee<=0x0;}return![];}[a0_0x556a87(0x1ca)](_0x3b80aa,_0x505f5c){const _0xbdf396=a0_0x556a87;if(_0x3b80aa['major']!==null&&_0x505f5c['major']!==_0x3b80aa[_0xbdf396(0x1cb)])return![];if(_0x3b80aa[_0xbdf396(0x20c)]!==null&&_0x505f5c['minor']!==_0x3b80aa['minor'])return![];if(_0x3b80aa['patch']!==null&&_0x505f5c['patch']!==_0x3b80aa[_0xbdf396(0x1dc)])return![];return!![];}['_isComplexRange'](_0x54f44f){const _0x10f8aa=a0_0x556a87;if(_0x54f44f['includes']('||'))return!![];const _0x278fcd=_0x54f44f['trim']();if(_0x278fcd[_0x10f8aa(0x1cf)]('^')||_0x278fcd['startsWith']('~'))return![];const _0x5e92d3=_0x278fcd[_0x10f8aa(0x1b4)](/\s+/)['filter'](_0x2a1c73=>_0x2a1c73[_0x10f8aa(0x1ec)]>0x0);if(_0x5e92d3[_0x10f8aa(0x1ec)]>0x1){const _0x998a0=/^(>=?|<=?|\^|~|[0-9])/;return _0x5e92d3['every'](_0x35718d=>_0x998a0[_0x10f8aa(0x208)](_0x35718d));}return![];}[a0_0x556a87(0x1fb)](_0x5c14a2){const _0x4e7924=a0_0x556a87;if(_0x5c14a2['includes']('||')){const _0x2557ba=_0x5c14a2[_0x4e7924(0x1b4)]('||')['map'](_0x26a70d=>_0x26a70d['trim']());return{'type':'or','ranges':_0x2557ba['map'](_0x302350=>this['_parseComplexRange'](_0x302350))};}const _0x46fa5a=_0x5c14a2['trim']()['split'](/\s+/)[_0x4e7924(0x1ce)](_0x1607e=>_0x1607e['length']>0x0);if(_0x46fa5a['length']>0x1)return{'type':'and','ranges':_0x46fa5a[_0x4e7924(0x1e4)](_0x36d3c7=>this['_parseVersionRange'](_0x36d3c7))};return{'type':'simple','range':this['_parseVersionRange'](_0x5c14a2)};}[a0_0x556a87(0x1ed)](_0x2f1224,_0x552ef2){if(!_0x2f1224||!_0x552ef2)return![];return this['_isUpdateAvailable'](_0x2f1224,_0x552ef2);}['_satisfiesComplexRange'](_0x1fec66,_0x507494){const _0x2cfe59=a0_0x556a87;if(!_0x1fec66||!_0x507494)return![];switch(_0x1fec66[_0x2cfe59(0x20d)]){case'simple':return this[_0x2cfe59(0x1ed)](_0x1fec66[_0x2cfe59(0x1d7)],_0x507494);case _0x2cfe59(0x1a7):return _0x1fec66['ranges']['every'](_0x382f47=>this[_0x2cfe59(0x1ed)](_0x382f47,_0x507494));case'or':return _0x1fec66['ranges'][_0x2cfe59(0x1c6)](_0x5278fc=>this[_0x2cfe59(0x1eb)](_0x5278fc,_0x507494));default:return![];}}async['_checkDependencies'](_0x5db316){const _0x3f6975=a0_0x556a87,_0x4892c8={},_0x19736b=Object[_0x3f6975(0x1d1)](_0x5db316);for(let _0x3f6302=0x0;_0x3f6302<_0x19736b['length'];_0x3f6302+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x2c9f10=_0x19736b[_0x3f6975(0x1c4)](_0x3f6302,_0x3f6302+RESOLVER_CONFIG[_0x3f6975(0x220)]),_0x3db5ec=_0x2c9f10[_0x3f6975(0x1e4)](async([_0x95a83b,_0x723469])=>{const _0x42c773=_0x3f6975;try{const _0x4e036b=await this['_getLatestCompatibleVersion'](_0x95a83b,_0x723469);if(_0x4e036b){const _0x16ac96=_0x723469[_0x42c773(0x1a6)](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x95a83b,'newVersion':''+_0x16ac96+_0x4e036b,'oldVersion':_0x723469};}return null;}catch(_0x229e90){return this['logger']?.['error'](_0x42c773(0x214)+_0x95a83b+':',_0x229e90['message']),null;}}),_0x292139=await Promise['all'](_0x3db5ec);_0x292139['forEach'](_0x1ce6ba=>{const _0x5c855e=_0x3f6975;_0x1ce6ba&&(_0x4892c8[_0x1ce6ba[_0x5c855e(0x222)]]=_0x1ce6ba[_0x5c855e(0x219)]);});}return _0x4892c8;}async[a0_0x556a87(0x1f1)](_0x28a5d4,_0x391601={}){const _0x3a6197=a0_0x556a87;try{this[_0x3a6197(0x21a)](_0x28a5d4);const {path:_0x4a9af0,mode:_0x3fc84e,includeDev:_0x1c0ae8}=_0x28a5d4,{projectDir:_0xc6257a,agentId:_0x47ba2b,directoryAccess:_0x13aba9}=_0x391601,_0x259ac9=this[_0x3a6197(0x1cd)](_0x4a9af0,_0x391601),_0x54b629=a0_0x4e96f4[_0x3a6197(0x1ae)](_0x259ac9,_0x3a6197(0x1c3));this['logger']?.['info'](_0x3a6197(0x1f8),{'mode':_0x3fc84e,'resolvedPath':_0x259ac9,'includeDev':_0x1c0ae8,'agentId':_0x47ba2b});const _0x21fb4f=[];_0x21fb4f['push'](_0x3a6197(0x21d)+_0x259ac9),_0x21fb4f[_0x3a6197(0x1be)]('Mode:\x20'+_0x3fc84e);try{await a0_0x7dc6e3['access'](_0x54b629);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x54b629,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}_0x21fb4f[_0x3a6197(0x1be)]('\x0a📦\x20Reading\x20package.json...');const _0x373c61=await a0_0x7dc6e3['readFile'](_0x54b629,_0x3a6197(0x19f)),_0xa44eda=JSON['parse'](_0x373c61),_0x35af9c={..._0xa44eda[_0x3a6197(0x1e9)]};_0x1c0ae8&&_0xa44eda[_0x3a6197(0x1f4)]&&Object['assign'](_0x35af9c,_0xa44eda[_0x3a6197(0x1f4)]);if(Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]===0x0)return{'success':!![],'mode':_0x3fc84e,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x21fb4f['join']('\x0a')};if(Object['keys'](_0x35af9c)['length']>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':'Too\x20many\x20dependencies\x20('+Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x3a6197(0x20a)],'output':_0x21fb4f['join']('\x0a')};_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1ba)+Object[_0x3a6197(0x1aa)](_0x35af9c)['length']+_0x3a6197(0x1da)),_0x21fb4f['push'](_0x3a6197(0x1d9));const _0x5d845f=await this['_checkDependencies'](_0x35af9c);_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1dd)),_0x21fb4f['push'](_0x3a6197(0x1c5)+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]);if(Object['keys'](_0x5d845f)['length']>0x0){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1af));for(const [_0x50d29f,_0x5b7e76]of Object['entries'](_0x5d845f)){const _0x24d55f=_0x35af9c[_0x50d29f];_0x21fb4f[_0x3a6197(0x1be)]('\x20\x20•\x20'+_0x50d29f+':\x20'+_0x24d55f+_0x3a6197(0x1fa)+_0x5b7e76);}}else _0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x202));if(_0x3fc84e==='check')return Object['keys'](_0x5d845f)[_0x3a6197(0x1ec)]>0x0&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1d6)),{'success':!![],'mode':_0x3a6197(0x1fc),'message':_0x3a6197(0x1e1)+Object['keys'](_0x5d845f)['length']+_0x3a6197(0x21b),'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x5d845f,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};if((_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')&&Object[_0x3a6197(0x1aa)](_0x5d845f)['length']>0x0){_0x21fb4f['push'](_0x3a6197(0x1b2));const _0x553867=await this['_createBackup'](_0x54b629);_0x553867?_0x21fb4f['push'](_0x3a6197(0x210)+a0_0x4e96f4[_0x3a6197(0x1a0)](_0x553867)):_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x21fb4f['push'](_0x3a6197(0x1c2));for(const [_0x42876b,_0x4c93e0]of Object['entries'](_0x5d845f)){_0xa44eda[_0x3a6197(0x1e9)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1e9)][_0x42876b]=_0x4c93e0),_0xa44eda[_0x3a6197(0x1f4)]?.[_0x42876b]&&(_0xa44eda[_0x3a6197(0x1f4)][_0x42876b]=_0x4c93e0);}await a0_0x7dc6e3['writeFile'](_0x54b629,JSON[_0x3a6197(0x212)](_0xa44eda,null,0x2)+'\x0a'),_0x21fb4f[_0x3a6197(0x1be)]('✅\x20package.json\x20updated'),_0x21fb4f['push'](_0x3a6197(0x1c0));try{const {stdout:_0x420ff9,stderr:_0x4c8227}=await exec(_0x3a6197(0x221),{'cwd':_0x259ac9,'timeout':RESOLVER_CONFIG[_0x3a6197(0x1e3)],'maxBuffer':0x400*0x400*0xa});if(_0x420ff9){const _0x2617ea=_0x420ff9['trim']()[_0x3a6197(0x1b4)]('\x0a');_0x2617ea[_0x3a6197(0x1ec)]>0xa?_0x21fb4f['push']('\x20\x20'+_0x2617ea['slice'](-0x5)['join']('\x0a\x20\x20')):_0x21fb4f['push']('\x20\x20'+_0x420ff9['trim']());}_0x4c8227&&!_0x4c8227[_0x3a6197(0x1a9)]('npm\x20WARN')&&_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x1b7)+_0x4c8227['trim']());_0x21fb4f['push'](_0x3a6197(0x1b9));try{const {stdout:_0x3eac3a}=await exec('npm\x20ls\x20--depth=0\x20--json',{'cwd':_0x259ac9,'timeout':0x7530}),_0x1a5789=JSON['parse'](_0x3eac3a);if(_0x1a5789['dependencies']){_0x21fb4f[_0x3a6197(0x1be)](_0x3a6197(0x216));for(const _0x53531e of Object['keys'](_0x5d845f)){_0x1a5789['dependencies'][_0x53531e]&&_0x21fb4f['push'](_0x3a6197(0x1b3)+_0x53531e+'@'+_0x1a5789[_0x3a6197(0x1e9)][_0x53531e]['version']);}}}catch(_0x3c7daa){this['logger']?.['debug'](_0x3a6197(0x1f2),_0x3c7daa[_0x3a6197(0x1df)]);}return{'success':!![],'mode':_0x3fc84e,'message':'Successfully\x20updated\x20'+Object[_0x3a6197(0x1aa)](_0x5d845f)[_0x3a6197(0x1ec)]+'\x20package(s)','statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'errors':0x0},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'backupPath':_0x553867,'output':_0x21fb4f[_0x3a6197(0x1ae)]('\x0a')};}catch(_0x44058c){_0x21fb4f['push']('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)]);if(_0x553867)try{await a0_0x7dc6e3['copyFile'](_0x553867,_0x54b629),_0x21fb4f[_0x3a6197(0x1be)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0xba2c18){_0x21fb4f[_0x3a6197(0x1be)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x3fc84e,'error':'npm\x20install\x20failed:\x20'+_0x44058c[_0x3a6197(0x1df)],'statistics':{'totalDependencies':Object[_0x3a6197(0x1aa)](_0x35af9c)[_0x3a6197(0x1ec)],'updatesAvailable':Object[_0x3a6197(0x1aa)](_0x5d845f)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x5d845f,'backupCreated':_0x553867!==null,'output':_0x21fb4f['join']('\x0a')};}}else{if(_0x3fc84e===_0x3a6197(0x1e5)||_0x3fc84e==='auto')return _0x21fb4f[_0x3a6197(0x1be)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x3fc84e,'message':_0x3a6197(0x1b6),'statistics':{'totalDependencies':Object['keys'](_0x35af9c)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x21fb4f['join']('\x0a')};}}catch(_0x72f3b2){return this[_0x3a6197(0x205)]?.[_0x3a6197(0x1bc)]('Dependency\x20resolver\x20error:',_0x72f3b2),{'success':![],'error':_0x72f3b2['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x72f3b2[_0x3a6197(0x1df)]};}}}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x521141=a0_0x3b4e;function a0_0x3b4e(_0x37e915,_0xf64dd8){_0x37e915=_0x37e915-0xeb;const _0x3ef90d=a0_0x3ef9();let _0x3b4e8f=_0x3ef90d[_0x37e915];if(a0_0x3b4e['TnKfgs']===undefined){var _0x2f6997=function(_0x4438aa){const _0x2c626e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b8e05='',_0x574c29='';for(let _0x474ef0=0x0,_0x569201,_0x2697c4,_0x972ec9=0x0;_0x2697c4=_0x4438aa['charAt'](_0x972ec9++);~_0x2697c4&&(_0x569201=_0x474ef0%0x4?_0x569201*0x40+_0x2697c4:_0x2697c4,_0x474ef0++%0x4)?_0x1b8e05+=String['fromCharCode'](0xff&_0x569201>>(-0x2*_0x474ef0&0x6)):0x0){_0x2697c4=_0x2c626e['indexOf'](_0x2697c4);}for(let _0x38e11a=0x0,_0x4a7d07=_0x1b8e05['length'];_0x38e11a<_0x4a7d07;_0x38e11a++){_0x574c29+='%'+('00'+_0x1b8e05['charCodeAt'](_0x38e11a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x574c29);};a0_0x3b4e['ZEtmbr']=_0x2f6997,a0_0x3b4e['bswutE']={},a0_0x3b4e['TnKfgs']=!![];}const _0x54c452=_0x3ef90d[0x0],_0x5f15fd=_0x37e915+_0x54c452,_0x45d0e9=a0_0x3b4e['bswutE'][_0x5f15fd];return!_0x45d0e9?(_0x3b4e8f=a0_0x3b4e['ZEtmbr'](_0x3b4e8f),a0_0x3b4e['bswutE'][_0x5f15fd]=_0x3b4e8f):_0x3b4e8f=_0x45d0e9,_0x3b4e8f;}(function(_0x2edfda,_0x51441c){const _0x185642=a0_0x3b4e,_0x429242=_0x2edfda();while(!![]){try{const _0x21ea64=parseInt(_0x185642(0x140))/0x1+-parseInt(_0x185642(0x125))/0x2*(-parseInt(_0x185642(0x10e))/0x3)+-parseInt(_0x185642(0x122))/0x4*(-parseInt(_0x185642(0x143))/0x5)+parseInt(_0x185642(0x135))/0x6*(parseInt(_0x185642(0x119))/0x7)+-parseInt(_0x185642(0xfa))/0x8+-parseInt(_0x185642(0xee))/0x9*(parseInt(_0x185642(0x116))/0xa)+-parseInt(_0x185642(0x147))/0xb;if(_0x21ea64===_0x51441c)break;else _0x429242['push'](_0x429242['shift']());}catch(_0x1d2eef){_0x429242['push'](_0x429242['shift']());}}}(a0_0x3ef9,0x3ea93));import{BaseTool}from'./baseTool.js';import{promises as a0_0x1b8e05}from'fs';import a0_0x574c29 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x521141(0xfc)};class FileContentReplaceTool extends BaseTool{constructor(_0x474ef0={},_0x569201=null){const _0x1c6407=a0_0x521141;super(_0x474ef0,_0x569201),this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x474ef0[_0x1c6407(0x146)]||0x1d4c0,this[_0x1c6407(0x149)]={...REPLACE_CONFIG,..._0x474ef0['replaceConfig']};}[a0_0x521141(0x145)](){const _0x39da0c=a0_0x521141;return _0x39da0c(0x103)+REPLACE_CONFIG[_0x39da0c(0xf5)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG[_0x39da0c(0xf9)]/0x400+_0x39da0c(0x132)+REPLACE_CONFIG[_0x39da0c(0x11d)]/0x400+_0x39da0c(0x138)+REPLACE_CONFIG[_0x39da0c(0x142)]+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x39da0c(0xf3);}[a0_0x521141(0x137)](_0x2697c4){const _0x8fc3ee=a0_0x521141;try{if(_0x2697c4['trim']()['startsWith']('{'))return this['parseJSON'](_0x2697c4);return this[_0x8fc3ee(0x15a)](_0x2697c4);}catch(_0x972ec9){this['logger']?.[_0x8fc3ee(0x131)](_0x8fc3ee(0x101),{'error':_0x972ec9[_0x8fc3ee(0x12e)]});throw new Error(_0x8fc3ee(0x157)+_0x972ec9['message']);}}[a0_0x521141(0x111)](_0x38e11a){const _0x3a1329=a0_0x521141,_0x4a7d07=JSON['parse'](_0x38e11a);if(!_0x4a7d07['files']||!Array['isArray'](_0x4a7d07['files']))throw new Error(_0x3a1329(0x151));return{'files':_0x4a7d07['files']['map'](_0x17681e=>({'path':_0x17681e[_0x3a1329(0x133)],'replacements':(_0x17681e[_0x3a1329(0x10a)]||[])[_0x3a1329(0x105)](_0x3d1969=>({'oldContent':_0x3d1969['oldContent'],'newContent':_0x3d1969[_0x3a1329(0x11c)],'mode':_0x3d1969['mode']||REPLACE_CONFIG[_0x3a1329(0xeb)],'linesLimit':_0x3d1969['linesLimit']||null}))}))};}[a0_0x521141(0x15a)](_0x5e03fa){const _0x3d3138=a0_0x521141,_0x5159eb=[],_0x16a458=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x307b6d;while((_0x307b6d=_0x16a458[_0x3d3138(0x100)](_0x5e03fa))!==null){const _0x5dac51=_0x307b6d[0x1],_0x500e16=_0x307b6d[0x2],_0x5264db=[],_0x1c632b=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x4262cb;while((_0x4262cb=_0x1c632b[_0x3d3138(0x100)](_0x500e16))!==null){const _0x58c23d=_0x4262cb[0x1]||'',_0x540494=_0x4262cb[0x2],_0x154748=this['extractAttribute'](_0x58c23d,'mode')||REPLACE_CONFIG[_0x3d3138(0xeb)],_0x3f548d=this['extractAttribute'](_0x58c23d,_0x3d3138(0x156)),_0x4acbab=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x540494);if(!_0x4acbab){this[_0x3d3138(0x14a)]?.['warn']('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x3c85c1=_0x4acbab[0x1],_0x53fa66=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x540494);if(!_0x53fa66){this[_0x3d3138(0x14a)]?.[_0x3d3138(0x113)]('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4a64fe=_0x53fa66[0x1],_0x5ebbdc=this[_0x3d3138(0x161)](_0x3c85c1,_0x154748),_0xbd215f=this['applyTrimMode'](_0x4a64fe,_0x154748);_0x5264db['push']({'oldContent':_0x5ebbdc,'newContent':_0xbd215f,'mode':_0x154748,'linesLimit':_0x3f548d});}_0x5264db['length']>0x0&&_0x5159eb[_0x3d3138(0x152)]({'path':_0x5dac51,'replacements':_0x5264db});}return{'files':_0x5159eb};}['extractAttribute'](_0x3edf41,_0xfe729c){const _0x1b4f18=a0_0x521141,_0x26920c=new RegExp(_0xfe729c+_0x1b4f18(0x10c),'i'),_0x550b81=_0x26920c[_0x1b4f18(0x100)](_0x3edf41);return _0x550b81?_0x550b81[0x1]:null;}[a0_0x521141(0x161)](_0x3cd20d,_0x45a0e2){const _0x2ecccc=a0_0x521141;switch(_0x45a0e2){case _0x2ecccc(0x144):return _0x3cd20d['replace'](/^\n+|\n+$/g,'');case _0x2ecccc(0x112):return _0x3cd20d;case _0x2ecccc(0xfc):default:return _0x3cd20d[_0x2ecccc(0xfc)]();}}['getRequiredParameters'](){const _0x2ca4cc=a0_0x521141;return[_0x2ca4cc(0x15f)];}[a0_0x521141(0xf2)](_0x4c439e){const _0x33959b=a0_0x521141,_0x5bc401=[];if(!_0x4c439e['files']||!Array['isArray'](_0x4c439e[_0x33959b(0x15f)]))_0x5bc401['push'](_0x33959b(0xed));else{_0x4c439e[_0x33959b(0x15f)][_0x33959b(0x118)]===0x0&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x108));_0x4c439e['files'][_0x33959b(0x118)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0xfe)+this['replaceConfig'][_0x33959b(0x109)]+_0x33959b(0xf4));for(const _0x9c0e40 of _0x4c439e['files']){!_0x9c0e40[_0x33959b(0x133)]&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x11b));_0x9c0e40[_0x33959b(0x133)]&&_0x9c0e40[_0x33959b(0x133)]['includes']('..')&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x134)+_0x9c0e40[_0x33959b(0x133)]);if(!_0x9c0e40['replacements']||!Array[_0x33959b(0x15d)](_0x9c0e40[_0x33959b(0x10a)]))_0x5bc401['push']('File\x20'+_0x9c0e40['path']+'\x20must\x20have\x20replacements\x20array');else{if(_0x9c0e40['replacements'][_0x33959b(0x118)]===0x0)_0x5bc401[_0x33959b(0x152)](_0x33959b(0x13b)+_0x9c0e40['path']+_0x33959b(0xf7));else for(const _0x3fca22 of _0x9c0e40['replacements']){!_0x3fca22['oldContent']&&_0x3fca22['oldContent']!==''&&_0x5bc401['push'](_0x33959b(0x155)+_0x9c0e40[_0x33959b(0x133)]+_0x33959b(0x15c)),!_0x3fca22['newContent']&&_0x3fca22[_0x33959b(0x11c)]!==''&&_0x5bc401['push']('Replacement\x20in\x20'+_0x9c0e40['path']+_0x33959b(0x106)),_0x3fca22['oldContent']&&_0x3fca22['oldContent']['length']>this[_0x33959b(0x149)][_0x33959b(0xf9)]&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x114)+this[_0x33959b(0x149)]['MAX_OLD_CONTENT_SIZE']/0x400+_0x33959b(0x124)),_0x3fca22[_0x33959b(0x11c)]&&_0x3fca22[_0x33959b(0x11c)]['length']>this['replaceConfig'][_0x33959b(0x11d)]&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x115)+this[_0x33959b(0x149)]['MAX_NEW_CONTENT_SIZE']/0x400+_0x33959b(0x124)),_0x3fca22['mode']&&![_0x33959b(0xfc),'newlines',_0x33959b(0x112)][_0x33959b(0x12b)](_0x3fca22['mode'])&&_0x5bc401[_0x33959b(0x152)](_0x33959b(0x121)+_0x3fca22[_0x33959b(0x128)]+'.\x20Must\x20be\x20\x27trim\x27,\x20\x27newlines\x27,\x20or\x20\x27none\x27');}}}}if(_0x5bc401['length']>0x0)throw new Error(_0x33959b(0xf1)+_0x5bc401[_0x33959b(0x120)](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x1e70cb,_0x5137f0){const _0x271547=a0_0x521141,{files:_0x6f0067}=_0x1e70cb,{projectDir:_0x30e8db,agentId:_0x16d8e4,directoryAccess:_0x46e659}=_0x5137f0;let _0x2d0151=_0x30e8db||process[_0x271547(0x10d)]();_0x46e659&&_0x46e659['workingDirectory']&&(_0x2d0151=_0x46e659[_0x271547(0x136)],this[_0x271547(0x14a)]?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x46e659['workingDirectory'],'agentId':_0x16d8e4}));this[_0x271547(0x14a)]?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x6f0067['length'],'workingDirectory':_0x2d0151,'agentId':_0x16d8e4});const _0x137e43=[],_0x131263={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x5ea314 of _0x6f0067){try{const _0x116d53=await this['processFile'](_0x5ea314,_0x2d0151,_0x46e659);_0x137e43[_0x271547(0x152)](_0x116d53),_0x131263['filesProcessed']++,_0x116d53[_0x271547(0xec)]>0x0&&(_0x131263[_0x271547(0x11a)]++,_0x131263[_0x271547(0x12f)]+=_0x116d53['replacementsMade']),_0x116d53[_0x271547(0x126)]&&_0x131263[_0x271547(0xfd)]++;}catch(_0x43ac3d){this[_0x271547(0x14a)]?.[_0x271547(0x131)](_0x271547(0x14c)+_0x5ea314['path'],{'error':_0x43ac3d['message']}),_0x137e43[_0x271547(0x152)]({'filePath':_0x5ea314['path'],'success':![],'error':_0x43ac3d['message']}),_0x131263['errors']++;}}return{'success':_0x131263[_0x271547(0x14e)]===0x0,'results':_0x137e43,'statistics':_0x131263,'summary':this['generateSummary'](_0x131263),'toolUsed':_0x271547(0x127)};}async[a0_0x521141(0x159)](_0x259e28,_0x4f77a4,_0x5e87e1){const _0x3571dd=a0_0x521141,{path:_0x2f0bcb,replacements:_0x40a27d}=_0x259e28,_0x48cab0=a0_0x574c29['isAbsolute'](_0x2f0bcb)?_0x2f0bcb:a0_0x574c29['resolve'](_0x4f77a4,_0x2f0bcb);if(_0x5e87e1){const _0x531ce2=this['isPathAccessible'](_0x48cab0,_0x4f77a4,_0x5e87e1);if(!_0x531ce2)throw new Error('Path\x20not\x20accessible:\x20'+_0x2f0bcb);}try{await a0_0x1b8e05['access'](_0x48cab0);}catch(_0x269a40){throw new Error('File\x20not\x20found:\x20'+_0x2f0bcb);}const _0x24186b=await a0_0x1b8e05[_0x3571dd(0x14f)](_0x48cab0);if(_0x24186b[_0x3571dd(0xf8)]>this[_0x3571dd(0x149)]['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this['replaceConfig'][_0x3571dd(0xf5)]/(0x400*0x400)+_0x3571dd(0x12c)+_0x2f0bcb);let _0x21388e=await a0_0x1b8e05[_0x3571dd(0x13f)](_0x48cab0,_0x3571dd(0x13a));const _0x273126=_0x21388e;let _0x48abb4=![];if(this['replaceConfig'][_0x3571dd(0x102)]){const _0x1fada1=_0x48cab0+this[_0x3571dd(0x149)][_0x3571dd(0x15e)];try{await a0_0x1b8e05['writeFile'](_0x1fada1,_0x273126,'utf-8'),_0x48abb4=!![];}catch(_0x2df031){this['logger']?.[_0x3571dd(0x113)](_0x3571dd(0x14b)+_0x2df031['message']);}}let _0x572dab=0x0;const _0x4d45ad=[];for(const _0x4ef624 of _0x40a27d){const _0x397ff7=await this['applyReplacement'](_0x21388e,_0x4ef624[_0x3571dd(0x150)],_0x4ef624['newContent'],_0x4ef624['linesLimit'],_0x4ef624['mode']);_0x21388e=_0x397ff7[_0x3571dd(0x11c)],_0x572dab+=_0x397ff7['count'],_0x4d45ad[_0x3571dd(0x152)]({'oldContent':_0x4ef624['oldContent'][_0x3571dd(0xf0)](0x0,0x32)+(_0x4ef624['oldContent'][_0x3571dd(0x118)]>0x32?_0x3571dd(0x160):''),'newContent':_0x4ef624['newContent'][_0x3571dd(0xf0)](0x0,0x32)+(_0x4ef624['newContent'][_0x3571dd(0x118)]>0x32?_0x3571dd(0x160):''),'count':_0x397ff7[_0x3571dd(0x104)],'mode':_0x4ef624[_0x3571dd(0x128)],'linesLimit':_0x4ef624[_0x3571dd(0x14d)]});}_0x572dab>0x0&&await a0_0x1b8e05[_0x3571dd(0x153)](_0x48cab0,_0x21388e,'utf-8');const _0x522f73=_0x572dab>0x0?this[_0x3571dd(0x11e)](_0x273126,_0x21388e):null;return{'filePath':_0x2f0bcb,'resolvedPath':_0x48cab0,'success':!![],'replacementsMade':_0x572dab,'backupCreated':_0x48abb4,'replacementDetails':_0x4d45ad,'diff':_0x522f73,'message':_0x572dab>0x0?_0x3571dd(0x11f)+_0x572dab+_0x3571dd(0x12a)+_0x2f0bcb:'No\x20replacements\x20made\x20in\x20'+_0x2f0bcb+'\x20(content\x20not\x20found)'};}[a0_0x521141(0x148)](_0x9728,_0x400043,_0x83c739){const _0x3fa765=a0_0x521141,_0xda6751=a0_0x574c29['relative'](_0x400043,_0x9728);if(!_0xda6751['startsWith']('..')&&!a0_0x574c29['isAbsolute'](_0xda6751))return!![];if(_0x83c739[_0x3fa765(0x13c)])for(const _0x1c4afd of _0x83c739['writeEnabledDirectories']){const _0x46824e=a0_0x574c29[_0x3fa765(0x117)](_0x1c4afd,_0x9728);if(!_0x46824e[_0x3fa765(0xf6)]('..')&&!a0_0x574c29[_0x3fa765(0x10f)](_0x46824e))return!![];}return![];}async['applyReplacement'](_0xe4d286,_0x20a257,_0x1fd319,_0x283efc,_0x104a66){const _0xb1807b=a0_0x521141;if(!_0x283efc){const _0x2aa623=this[_0xb1807b(0x15b)](_0xe4d286,_0x20a257);if(_0x2aa623===0x0)return{'newContent':_0xe4d286,'count':0x0};const _0x4d9bbb=_0xe4d286['split'](_0x20a257)[_0xb1807b(0x120)](_0x1fd319);return{'newContent':_0x4d9bbb,'count':_0x2aa623};}const _0x5ed233=this[_0xb1807b(0xff)](_0x283efc),_0x2f01b6=_0xe4d286[_0xb1807b(0x10b)]('\x0a');let _0xc42fe=0x0;for(let _0x4e36b6=0x0;_0x4e36b6<_0x2f01b6['length'];_0x4e36b6++){const _0x2591f6=_0x4e36b6+0x1;if(_0x5ed233[_0xb1807b(0x141)](_0x2591f6)){if(_0x2f01b6[_0x4e36b6][_0xb1807b(0x12b)](_0x20a257)){const _0x439c9b=this[_0xb1807b(0x15b)](_0x2f01b6[_0x4e36b6],_0x20a257);_0x2f01b6[_0x4e36b6]=_0x2f01b6[_0x4e36b6][_0xb1807b(0x10b)](_0x20a257)['join'](_0x1fd319),_0xc42fe+=_0x439c9b;}}}return{'newContent':_0x2f01b6[_0xb1807b(0x120)]('\x0a'),'count':_0xc42fe};}['countOccurrences'](_0x374ab8,_0x5c1947){const _0x29abe0=a0_0x521141;if(!_0x5c1947)return 0x0;return _0x374ab8['split'](_0x5c1947)[_0x29abe0(0x118)]-0x1;}['parseLineRanges'](_0x507f84){const _0x14b407=a0_0x521141,_0xc0b367=new Set();if(!_0x507f84||_0x507f84['trim']()==='')return _0xc0b367;const _0x1212e4=_0x507f84[_0x14b407(0x10b)](',');for(const _0x417d5f of _0x1212e4){const _0x1972d5=_0x417d5f[_0x14b407(0xfc)]();if(_0x1972d5==='')continue;if(_0x1972d5[_0x14b407(0x12b)]('-')){const [_0xe4c693,_0x1b78e9]=_0x1972d5[_0x14b407(0x10b)]('-')[_0x14b407(0x105)](_0x36ec86=>parseInt(_0x36ec86[_0x14b407(0xfc)](),0xa));if(!isNaN(_0xe4c693)&&!isNaN(_0x1b78e9)&&_0x1b78e9-_0xe4c693<this[_0x14b407(0x149)]['MAX_LINE_RANGE_SIZE'])for(let _0x1ff325=_0xe4c693;_0x1ff325<=_0x1b78e9;_0x1ff325++){_0xc0b367[_0x14b407(0xef)](_0x1ff325);}}else{const _0x10fbc2=parseInt(_0x1972d5,0xa);!isNaN(_0x10fbc2)&&_0xc0b367[_0x14b407(0xef)](_0x10fbc2);}}return _0xc0b367;}[a0_0x521141(0x11e)](_0x5038ed,_0x88b2f7){const _0x4127e2=a0_0x521141,_0x682dff=_0x5038ed[_0x4127e2(0x10b)]('\x0a'),_0x34c5a9=_0x88b2f7['split']('\x0a');let _0x4be869=-0x1,_0x2199a8=-0x1;const _0xce8682=Math[_0x4127e2(0xfb)](_0x682dff[_0x4127e2(0x118)],_0x34c5a9[_0x4127e2(0x118)]);for(let _0x319d16=0x0;_0x319d16<_0xce8682;_0x319d16++){const _0x1feec9=_0x319d16<_0x682dff[_0x4127e2(0x118)]?_0x682dff[_0x319d16]:'',_0x39247c=_0x319d16<_0x34c5a9[_0x4127e2(0x118)]?_0x34c5a9[_0x319d16]:'';if(_0x1feec9!==_0x39247c){if(_0x4be869===-0x1)_0x4be869=_0x319d16;_0x2199a8=_0x319d16;}}if(_0x4be869===-0x1)return'No\x20differences';const _0x277f71=this[_0x4127e2(0x149)][_0x4127e2(0x158)],_0x57fb29=Math['max'](0x0,_0x4be869-_0x277f71),_0x4c3b1d=Math[_0x4127e2(0x13e)](_0xce8682-0x1,_0x2199a8+_0x277f71);if(_0x4c3b1d-_0x57fb29>this[_0x4127e2(0x149)]['MAX_DIFF_LINES'])return _0x4127e2(0x13d)+(_0x4c3b1d-_0x57fb29+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+('Changed\x20lines:\x20'+(_0x4be869+0x1)+'\x20to\x20'+(_0x2199a8+0x1));let _0x187c69=_0x4127e2(0x154)+(_0x57fb29+0x1)+','+(_0x4c3b1d-_0x57fb29+0x1)+'\x20+'+(_0x57fb29+0x1)+','+(_0x4c3b1d-_0x57fb29+0x1)+_0x4127e2(0x129);for(let _0x43e540=_0x57fb29;_0x43e540<=_0x4c3b1d;_0x43e540++){const _0x535f1c=_0x43e540<_0x682dff[_0x4127e2(0x118)]?_0x682dff[_0x43e540]:'',_0x42ecde=_0x43e540<_0x34c5a9['length']?_0x34c5a9[_0x43e540]:'';_0x535f1c===_0x42ecde?_0x187c69+='\x20\x20'+_0x535f1c+'\x0a':(_0x187c69+='-\x20'+_0x535f1c+'\x0a',_0x187c69+='+\x20'+_0x42ecde+'\x0a');}return _0x187c69;}[a0_0x521141(0x12d)](_0xbce435){const _0x263e0a=a0_0x521141;return('\x0aProcessed\x20'+_0xbce435['filesProcessed']+_0x263e0a(0x130)+_0xbce435['filesModified']+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0xbce435[_0x263e0a(0x12f)]+_0x263e0a(0x110)+_0xbce435['backupsCreated']+_0x263e0a(0x123)+_0xbce435[_0x263e0a(0x14e)]+'\x0a\x20\x20\x20\x20')[_0x263e0a(0xfc)]();}async[a0_0x521141(0x139)](_0xc55e9d){const _0x2461b4=a0_0x521141;this['logger']?.[_0x2461b4(0x107)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0xc55e9d});}}function a0_0x3ef9(){const _0x34411a=['BwfW','ig1PC3nPBMCGBMv3q29UDgvUDa','Aw5MBW','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','tufyx0zjtevtx1bfuL9puevsqvrjt04','CMvWBgfJzw1LBNrZ','C3bSAxq','pvSIj10Ow14Ij10QkvSIj10','y3DK','ovHzsM1crW','AxnbyNnVBhv0zq','cKjHy2T1ChmGy3jLyxrLzdOG','CgfYC2vku09o','BM9Uzq','D2fYBG','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','mtbJsfbHsvm','CMvSyxrPDMu','BgvUz3rO','ndeZmJaZEwnhsM9O','zMLSzxnnB2rPzMLLza','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','BMv3q29UDgvUDa','tufyx05fv19dt05uru5ux1njwKu','z2vUzxjHDgveAwzM','twfKzsa','AM9PBG','sw52ywXPzcbTB2rLoIa','mJaWs3jYueff','cKvYCM9YCZOG','s0iP','ntK4mJjSq3jvs1i','yMfJA3vWq3jLyxrLza','zMLSzs1JB250zw50lxjLCgXHy2u','Bw9Kzq','iebacG','ihjLCgXHy2vTzw50khmPigLUia','Aw5JBhvKzxm','tuiPoIa','z2vUzxjHDgvtDw1Tyxj5','BwvZC2fNzq','Dg90ywXszxbSywnLBwvUDhm','igzPBguOCYKktw9KAwzPzwqG','zxjYB3i','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','Cgf0Aa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','mtjJtvjAA0e','D29YA2LUz0rPCMvJDg9YEq','CgfYC2vqyxjHBwv0zxjZ','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','y2XLyw51Ca','DxrMltG','rMLSzsa','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','rgLMzIb0B28GBgfYz2uGka','BwLU','CMvHzezPBgu','mJi5ntu2sxnZEgzN','AgfZ','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','nta2ntbTs2HewNm','BMv3BgLUzxm','z2v0rgvZy3jPChrPB24','DgLTzw91Da','mJqZmdG5uNPxq3LO','AxnqyxrOqwnJzxnZAwjSzq','CMvWBgfJzunVBMzPzW','Bg9Nz2vY','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','BgLUzxnmAw1PDa','zxjYB3jZ','C3rHDa','B2XKq29UDgvUDa','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','ChvZAa','D3jPDgvgAwXL','qeaGlq','uMvWBgfJzw1LBNqGAw4G','BgLUzxmTBgLTAxq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','reLgrL9dt05urvHux0XjtKvt','ChjVy2vZC0zPBgu','CgfYC2vytuW','y291BNrpy2n1CNjLBMnLCW','ig1PC3nPBMCGB2XKq29UDgvUDa','AxnbCNjHEq','qKfds1vqx0vyvevou0LptG','zMLSzxm','lI4U','yxbWBhLuCMLTtw9Kzq','revgqvvmvf9uuKLnx01preu','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','mZG1oteZn3rtvLfNza','ywrK','C3vIC3rYAw5N','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','cGPot1rfuZOkcI0GvxnLihrOzsbZzwvRihrVB2WGzMLYC3qGDg8GDMvYAwz5ignVBNrLBNqGzxHPC3rZcI0GqMfJA3vWCYbHCMuGy3jLyxrLzcbHDxrVBwf0AwnHBgX5icGUyMfRigv4DgvUC2LVBIKklsbszxbSywnLBwvUDhmGyxjLignHC2uTC2vUC2L0AxzLcI0Gt2XKignVBNrLBNqGBxvZDcbTyxrJAcbLEgfJDgX5icHHzNrLCIb0CMLTig1VzguGyxbWBgLLzcKklsbnDwX0AxbSzsbVy2n1CNjLBMnLCYbHCMuGywXSihjLCgXHy2vKihvUBgvZCYbSAw5LC0XPBwL0ihnWzwnPzMLLzaOTifrVB2WGDMfSAwrHDgvZihbHDgHZigfNywLUC3qGywDLBNqNCYbHy2nLC3nPyMXLigrPCMvJDg9YAwvZcGPnvuXuss1esvjfq1rpuLKGu1vque9svdOkcLDVCMTZihDPDgGGywDLBNqNCYbJB25MAwD1CMvKigfJy2vZC2LIBguGzgLYzwn0B3jPzxmUcLzHBgLKyxrLCYbWyxrOCYbHz2fPBNn0igrPCMvJDg9YEufJy2vZCYbJB25MAwD1CMf0Aw9UlGOGicaG','igzPBgvZigLUig9UzsbVCgvYyxrPB24','tufyx0zjtevFu0LArq','C3rHCNrZv2L0Aa','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','C2L6zq','tufyx09mrf9dt05uru5ux1njwKu','mtG5mdm2oeziuuDuua','Bwf4','DhjPBq','yMfJA3vWC0nYzwf0zwq','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','CgfYC2vmAw5LuMfUz2vZ','zxHLyW','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','q1jfqvrfx0jbq0Tvufm','cKzPBguGq29UDgvUDcbszxbSywnLifrVB2W6ifjLCgXHy2uGC3bLy2LMAwmGy29UDgvUDcb3AxrOAw4GzMLSzxmGD2L0AcbWCMvJAxnPB24UcGPytuWGvvnbr0u6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVyxbWlMPZiJ4kicaGidXYzxbSywnLig1Vzgu9iNrYAw0IigXPBMvZlwXPBwL0psi1ldCTmtaIpGOGicaGica8B2XKlwnVBNrLBNq+cIaGicaGicaGy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNB2XKjYK7cIaGicaGicaGFqOGicaGica8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+cIaGicaGicaGy29UC3qGBMv3rNvUy3rPB24GpsaOksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNBMv3jYK7cIaGicaGicaGFqOGicaGica8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs1JB250zw50lxjLCgXHy2uIlaOGicjMAwXLCYi6ifSkicaGihSkicaGicaGiNbHDgGIoIaIC3jJl2fWCc5QCYiScIaGicaGicjYzxbSywnLBwvUDhmIoIbBcIaGicaGicaGEWOGicaGicaGicaGiM9SzenVBNrLBNqIoIaIy29UC3qGB2XKrNvUy3rPB24GpsaOksa9pIb7FsiScIaGicaGicaGicaIBMv3q29UDgvUDci6icjJB25ZDcbUzxDgDw5JDgLVBIa9icGPid0+ihT9iIWkicaGicaGicaGicjTB2rLiJOGiNrYAw0IlaOGicaGicaGicaGiMXPBMvZtgLTAxqIoIaInsW3lteWiGOGicaGicaGih0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cGPWyxrOicHYzxf1AxjLzcK6cIaGlsbqyxrOihrVihrOzsbMAwXLihrVig1VzgLMEqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLcIaGlsbfEgfTCgXLCZOGiNnYyY9HChaUANmIlcaIlI9JB25MAwCUANnVBIikcM9SzenVBNrLBNqGkhjLCxvPCMvKktOkicaTienVBNrLBNqGDg8GzMLUzcbHBMqGCMvWBgfJzqOGic0Gu3vIAMvJDcb0BYb0CMLTig1VzguGChjVy2vZC2LUzWOGic0GtxvZDcbLEgLZDcbPBIbMAwXLcGPUzxDdB250zw50icHYzxf1AxjLzcK6cIaGlsbszxbSywnLBwvUDcbJB250zw50cIaGlsbtDwjQzwn0ihrVihrYAw0GBw9KzsbWCM9JzxnZAw5NcIaGlsbdyw4GyMuGC2fTzsbSzw5NDgGSihnOB3j0zxiSig9YigXVBMDLCGOkBw9KzsaOB3b0Aw9UywWPoGOGic0Gv2HPDgvZCgfJzsbOyw5KBgLUzYbTB2rLcIaGlsbpChrPB25ZoGOGicaGkIaIDhjPBsiGkgrLzMf1BhqPoIbuCMLTigfSBcb3AgL0zxnWywnLigzYB20GyM90AcbLBMrZcIaGicaQicjUzxDSAw5LCYi6ie9UBhKGDhjPBsbUzxDSAw5LignOyxjHy3rLCNmkicaGicOGiM5VBMuIoIbvC2uGy29UDgvUDcbLEgfJDgX5igfZihbYB3zPzgvKcIaGlsbizwXWCYb3AxrOig1HDgnOAw5NigrLC3bPDguGAw5Kzw50yxrPB24GzgLMzMvYzw5JzxmkcMXPBMvZtgLTAxqGkg9WDgLVBMfSktOkicaTifjLC3rYAwn0ihjLCgXHy2vTzw50ihrVihnWzwnPzMLJigXPBMvZcIaGlsbgB3jTyxq6ienVBw1HlxnLCgfYyxrLzcbSAw5Lig51BwjLCNmGB3iGCMfUz2vZcIaGlsbfEgfTCgXLCZOkicaGicOGiJuIic0Gt25SEsbSAw5LidukicaGicOGiJuSmtaSmtuIic0GtgLUzxmGnsWGmtaSigfUzcaXnqOGicaGkIaIns0XmciGlsbmAw5LCYa1ihrOCM91z2GGmtakicaGicOGiJeTnsWXmcWXns0YmciGlsbmAw5LCYaXltuSideWlcbHBMqGmtuTmJakicaTieXPBMuGBNvTyMvYCYbHCMuGms1IyxnLzaOkvfjjtsbnt0rfuYbfwfbmquLoruq6cGPnB2rLoIaIDhjPBsiGkfjLy29TBwvUzgvKigzVCIbTB3n0ignHC2vZkqOGieLUChv0oGOGicaGiIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiMnVBNn0ihGGpsaXoYikicbvC2uGD2HLBJOGsw5Kzw50yxrPB24GBwf5ihzHCNKkcK1Vzgu6icjUzxDSAw5LCYikicbjBNb1DdOkicaGicjCBIaGy29UC3qGEca9ide7icbCBIikicbbzNrLCIb0CMLToGOGicaGiIaGy29UC3qGEca9ide7icaIcIaGvxnLihDOzw46ifbYzxnLCNzPBMCGAw50zxjUywWGD2HPDgvZCgfJzqOktw9KztOGiM5VBMuIcIaGsw5WDxq6cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGiefMDgvYihrYAw06cIaGicaIicbJB25ZDcb4id0GmtSGifXUiGOGifvZzsb3AgvUoIbfEgfJDcbJAgfYywn0zxiGBwf0y2GGBMvLzgvKcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiejHC2LJihjLCgXHy2vTzw50ihDPDgGGDhjPBtOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cIaGica8CMvWBgfJzsbTB2rLpsj0CMLTiJ4kicaGicaGpg9Szc1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGih0kicaGicaGpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pGOGicaGicaGignVBNn0igHHBMrSzunSAwnRid0Gkgv2zw50ksa9pIb7cIaGicaGicaGicbJB25ZB2XLlMXVzYGNy2XPy2TLzcCPoWOGicaGicaGicaGChjVChmUB25dBgLJAZ8Ukgv2zw50ktSkicaGicaGicb9cIaGicaGidWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsaYic0GtgLUzs1SAw1PDgvKihjLCgXHy2vTzw50oGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl0fWCc5QCYi+cIaGica8CMvWBgfJzsbSAw5LCY1SAw1PDd0ImtaTmJaIpGOGicaGica8B2XKlwnVBNrLBNq+y29UC3qGqvbjx1vstca9icDODhrWoI8VBg9JywXOB3n0oJmWmdaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pMnVBNn0iefqsv9vuKWGpsbWCM9JzxnZlMvUDI5bueLFvvjmpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cJWVzMLSzs1JB250zw50lxjLCgXHy2u+cGPfEgfTCgXLidmGlsbnDwX0AxbSzsbYzxbSywnLBwvUDhmGAw4GB25LigzPBgu6cJXMAwXLlwnVBNrLBNqTCMvWBgfJzt4kica8zMLSzsbWyxrOpsjZCMmVy29UzMLNlMPZiJ4kicaGidXYzxbSywnLpGOGicaGica8B2XKlwnVBNrLBNq+revcvuCGpsbMywXZztWVB2XKlwnVBNrLBNq+cIaGicaGidXUzxCTy29UDgvUDd5erujvrYa9ihrYDwu8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGicaGphjLCgXHy2u+cIaGicaGidXVBgqTy29UDgvUDd5mt0DFtevwruWGpsaNzxjYB3iNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pKXpr19mrvzftca9icDKzwj1zYC8l25LDY1JB250zw50pGOGicaGpc9YzxbSywnLpGOGidWVzMLSzt4kpc9MAwXLlwnVBNrLBNqTCMvWBgfJzt4kcKv4yw1WBguGncaTie11BhrPCgXLigzPBgvZoGO8zMLSzs1JB250zw50lxjLCgXHy2u+cIaGpgzPBguGCgf0Ad0IC3jJl2fWCc5QCYi+cIaGica8CMvWBgfJzt4kicaGicaGpg9Szc1JB250zw50pNzLCNnPB24GpsaNms4WlJaNpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pNzLCNnPB24GpsaNms4XlJaNpc9UzxCTy29UDgvUDd4kicaGidWVCMvWBgfJzt4kica8l2zPBgu+cIaGpgzPBguGCgf0Ad0ICgfJA2fNzs5QC29UiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+iNzLCNnPB24IoIaIms4WlJaIpc9VBgqTy29UDgvUDd4kicaGicaGpg5LDY1JB250zw50pIj2zxjZAw9UiJOGiJeUms4WiJWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrxHHBxbSzsa1ic0GrxHHy3qGD2HPDgvZCgfJzsbTyxrJAgLUzZOkpgzPBguTy29UDgvUDc1YzxbSywnLpGOGidXMAwXLihbHDgG9iK1HA2vMAwXLiJ4kicaGidXYzxbSywnLig1Vzgu9iM5VBMuIpGOGicaGica8B2XKlwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrNy2m8l29Szc1JB250zw50pGOGicaGica8BMv3lwnVBNrLBNq+xhrIDwLSzdPCBLX0xhrJBgfUzZWVBMv3lwnVBNrLBNq+cIaGica8l3jLCgXHy2u+cIaGpc9MAwXLpGO8l2zPBguTy29UDgvUDc1YzxbSywnLpGOkrKvbvfvsrvm6cGRINjmGqxv0B21HDgLJigjHy2T1CcbJCMvHDgLVBIaOlMjHAYbMAwXLCYKk4PYtiejLzM9Yzs9HzNrLCIbKAwzMihjLCg9YDhmk4PYtifjLCgXHy2vTzw50ignVDw50Aw5NigfUzcbZDgf0Axn0AwnZcUkCKYbnDwX0As1MAwXLig9WzxjHDgLVBNmk4PYtieXPBMuTBgLTAxrLzcbYzxbSywnLBwvUDhmk4PYtieLUDgvSBgLNzw50ihDOAxrLC3bHy2uGAgfUzgXPBMCk4PYtifnLy3vYAxr5ihzHBgLKyxrPB24GkhbHDgGGywnJzxnZkqRINjmGq3jLyxrLCYbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGBMvLzgvKcGPmsu1jvefusu9ouZOkcI0Gtwf4Aw11BsbMAwXLihnPEMu6ia','y291BNq'];a0_0x3ef9=function(){return _0x34411a;};return a0_0x3ef9();}export default FileContentReplaceTool;
|
|
1
|
+
const a0_0x3b1076=a0_0x4b47;(function(_0x4f5a9a,_0x21fa75){const _0x8b6f0b=a0_0x4b47,_0x588fb4=_0x4f5a9a();while(!![]){try{const _0x6d98c8=-parseInt(_0x8b6f0b(0x244))/0x1*(-parseInt(_0x8b6f0b(0x258))/0x2)+parseInt(_0x8b6f0b(0x250))/0x3+-parseInt(_0x8b6f0b(0x233))/0x4+-parseInt(_0x8b6f0b(0x20a))/0x5+-parseInt(_0x8b6f0b(0x232))/0x6*(-parseInt(_0x8b6f0b(0x21e))/0x7)+-parseInt(_0x8b6f0b(0x230))/0x8*(-parseInt(_0x8b6f0b(0x209))/0x9)+-parseInt(_0x8b6f0b(0x211))/0xa;if(_0x6d98c8===_0x21fa75)break;else _0x588fb4['push'](_0x588fb4['shift']());}catch(_0x44cff8){_0x588fb4['push'](_0x588fb4['shift']());}}}(a0_0x4994,0xc948c));import{BaseTool}from'./baseTool.js';import{promises as a0_0x5959cc}from'fs';import a0_0x102328 from'path';function a0_0x4b47(_0x1b5c29,_0x361d5a){_0x1b5c29=_0x1b5c29-0x1ef;const _0x499488=a0_0x4994();let _0x4b4790=_0x499488[_0x1b5c29];if(a0_0x4b47['yZMPez']===undefined){var _0x39a5ac=function(_0x66fa40){const _0x16de5b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5959cc='',_0x102328='';for(let _0x352a22=0x0,_0x4f773e,_0x84c4ea,_0x413ff8=0x0;_0x84c4ea=_0x66fa40['charAt'](_0x413ff8++);~_0x84c4ea&&(_0x4f773e=_0x352a22%0x4?_0x4f773e*0x40+_0x84c4ea:_0x84c4ea,_0x352a22++%0x4)?_0x5959cc+=String['fromCharCode'](0xff&_0x4f773e>>(-0x2*_0x352a22&0x6)):0x0){_0x84c4ea=_0x16de5b['indexOf'](_0x84c4ea);}for(let _0x30234a=0x0,_0x28584f=_0x5959cc['length'];_0x30234a<_0x28584f;_0x30234a++){_0x102328+='%'+('00'+_0x5959cc['charCodeAt'](_0x30234a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x102328);};a0_0x4b47['DmNOqg']=_0x39a5ac,a0_0x4b47['ufEUsv']={},a0_0x4b47['yZMPez']=!![];}const _0x3fb7ec=_0x499488[0x0],_0x40fdab=_0x1b5c29+_0x3fb7ec,_0x4b512c=a0_0x4b47['ufEUsv'][_0x40fdab];return!_0x4b512c?(_0x4b4790=a0_0x4b47['DmNOqg'](_0x4b4790),a0_0x4b47['ufEUsv'][_0x40fdab]=_0x4b4790):_0x4b4790=_0x4b512c,_0x4b4790;}const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x3b1076(0x22c),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};class FileContentReplaceTool extends BaseTool{constructor(_0x352a22={},_0x4f773e=null){const _0x2c925f=a0_0x3b1076;super(_0x352a22,_0x4f773e),this[_0x2c925f(0x21d)]=!![],this[_0x2c925f(0x234)]=!![],this[_0x2c925f(0x204)]=_0x352a22['timeout']||0x1d4c0,this[_0x2c925f(0x1f9)]={...REPLACE_CONFIG,..._0x352a22[_0x2c925f(0x1f9)]};}['getDescription'](){const _0x8c4b41=a0_0x3b1076;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aXML\x20USAGE:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22\x20lines-limit=\x225,7-10\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20oldFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27old\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20newFunction\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27new\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x0a\x20\x20\x20\x20*\x20\x225\x22\x20-\x20Only\x20line\x205\x0a\x20\x20\x20\x20*\x20\x225,10,15\x22\x20-\x20Lines\x205,\x2010,\x20and\x2015\x0a\x20\x20\x20\x20*\x20\x225-10\x22\x20-\x20Lines\x205\x20through\x2010\x0a\x20\x20\x20\x20*\x20\x221-5,10,15-20\x22\x20-\x20Lines\x201-5,\x2010,\x20and\x2015-20\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aTRIM\x20MODES\x20EXPLAINED:\x0a\x0aMode:\x20\x22trim\x22\x20(Recommended\x20for\x20most\x20cases)\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22const\x20x\x20=\x201;\x22\x0a\x20\x20Use\x20when:\x20Indentation\x20may\x20vary\x0a\x0aMode:\x20\x22newlines\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x5cn\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x22\x0a\x20\x20Use\x20when:\x20Preserving\x20internal\x20whitespace\x0a\x0aMode:\x20\x22none\x22\x0a\x20\x20Input:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20After\x20trim:\x0a\x20\x20\x20\x20\x22\x20\x20const\x20x\x20=\x201;\x20\x20\x5cn\x22\x0a\x20\x20Use\x20when:\x20Exact\x20character\x20match\x20needed\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement\x20with\x20trim:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/components/Button.js\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22trim\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20handleClick\x20=\x20(event)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20console.log(\x27clicked\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20props.onClick?.(event);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/App.js\x22>\x0a\x20\x20\x20\x20<replace\x20lines-limit=\x2210-20\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>const\x20API_URL\x20=\x20\x27http://localhost:3000\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>const\x20API_URL\x20=\x20process.env.API_URL</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/config.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>DEBUG\x20=\x20false</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>DEBUG\x20=\x20true</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>LOG_LEVEL\x20=\x20\x27error\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>LOG_LEVEL\x20=\x20\x27debug\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22src/app.js\x22>\x0a\x20\x20\x20\x20<replace>\x0a\x20\x20\x20\x20\x20\x20<old-content>version\x20=\x20\x271.0.0\x27</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>version\x20=\x20\x271.1.0\x27</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a\x20\x20<file\x20path=\x22package.json\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x22version\x22:\x20\x221.0.0\x22</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x22version\x22:\x20\x221.1.0\x22</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aExample\x205\x20-\x20Exact\x20whitespace\x20matching:\x0a<file-content-replace>\x0a\x20\x20<file\x20path=\x22Makefile\x22>\x0a\x20\x20\x20\x20<replace\x20mode=\x22none\x22>\x0a\x20\x20\x20\x20\x20\x20<old-content>\x5ctbuild:\x5cn\x5ct\x5ctgcc</old-content>\x0a\x20\x20\x20\x20\x20\x20<new-content>\x5ctbuild:\x5cn\x5ct\x5ctclang</new-content>\x0a\x20\x20\x20\x20</replace>\x0a\x20\x20</file>\x0a</file-content-replace>\x0a\x0aFEATURES:\x0a\x0a✓\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a✓\x20Before/after\x20diff\x20reports\x0a✓\x20Replacement\x20counting\x20and\x20statistics\x0a✓\x20Multi-file\x20operations\x0a✓\x20Line-limited\x20replacements\x0a✓\x20Intelligent\x20whitespace\x20handling\x0a✓\x20Security\x20validation\x20(path\x20access)\x0a✓\x20Creates\x20parent\x20directories\x20if\x20needed\x0a\x0aLIMITATIONS:\x0a\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x8c4b41(0x22e)]/(0x400*0x400)+_0x8c4b41(0x205)+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x8c4b41(0x203)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+'KB\x0a-\x20Maximum\x20replacements\x20per\x20file:\x20'+REPLACE_CONFIG[_0x8c4b41(0x21f)]+_0x8c4b41(0x236)+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+'\x0a\x0aNOTES:\x0a\x0a-\x20Use\x20the\x20seek\x20tool\x20first\x20to\x20verify\x20content\x20exists\x0a-\x20Backups\x20are\x20created\x20automatically\x20(.bak\x20extension)\x0a-\x20Replacements\x20are\x20case-sensitive\x0a-\x20Old\x20content\x20must\x20match\x20exactly\x20(after\x20trim\x20mode\x20applied)\x0a-\x20Multiple\x20occurrences\x20are\x20all\x20replaced\x20unless\x20linesLimit\x20specified\x0a-\x20Tool\x20validates\x20paths\x20against\x20agent\x27s\x20accessible\x20directories\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0a\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}[a0_0x3b1076(0x254)](_0x84c4ea){const _0x4ad958=a0_0x3b1076;try{if(_0x84c4ea['trim']()['startsWith']('{'))return this['parseJSON'](_0x84c4ea);return this[_0x4ad958(0x23f)](_0x84c4ea);}catch(_0x413ff8){this['logger']?.['error']('Failed\x20to\x20parse\x20file-content-replace\x20parameters',{'error':_0x413ff8[_0x4ad958(0x222)]});throw new Error(_0x4ad958(0x239)+_0x413ff8['message']);}}[a0_0x3b1076(0x216)](_0x30234a){const _0x259108=a0_0x3b1076,_0x28584f=JSON[_0x259108(0x227)](_0x30234a);if(!_0x28584f['files']||!Array[_0x259108(0x219)](_0x28584f[_0x259108(0x22a)]))throw new Error(_0x259108(0x251));return{'files':_0x28584f[_0x259108(0x22a)][_0x259108(0x213)](_0x481200=>({'path':_0x481200['path'],'replacements':(_0x481200[_0x259108(0x23d)]||[])['map'](_0x289d3f=>({'oldContent':_0x289d3f[_0x259108(0x226)],'newContent':_0x289d3f['newContent'],'mode':_0x289d3f['mode']||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],'linesLimit':_0x289d3f[_0x259108(0x255)]||null}))}))};}['parseXML'](_0xd140eb){const _0x17681a=a0_0x3b1076,_0x536172=[],_0x190d82=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x5555cd;while((_0x5555cd=_0x190d82['exec'](_0xd140eb))!==null){const _0x6f007c=_0x5555cd[0x1],_0x3e5b15=_0x5555cd[0x2],_0x3cc2fe=[],_0x5a95af=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x1d9b21;while((_0x1d9b21=_0x5a95af['exec'](_0x3e5b15))!==null){const _0x4ab5e9=_0x1d9b21[0x1]||'',_0xc8c1d0=_0x1d9b21[0x2],_0x37cddf=this['extractAttribute'](_0x4ab5e9,_0x17681a(0x249))||REPLACE_CONFIG['DEFAULT_TRIM_MODE'],_0x2cefb4=this['extractAttribute'](_0x4ab5e9,'lines-limit'),_0x38a39f=/<old-content>([\s\S]*?)<\/old-content>/i[_0x17681a(0x1fb)](_0xc8c1d0);if(!_0x38a39f){this[_0x17681a(0x212)]?.['warn'](_0x17681a(0x237));continue;}const _0x425c13=_0x38a39f[0x1],_0x2f4463=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0xc8c1d0);if(!_0x2f4463){this[_0x17681a(0x212)]?.['warn']('Missing\x20new-content\x20in\x20replace\x20tag');continue;}const _0x4e8f67=_0x2f4463[0x1],_0x174b8a=this[_0x17681a(0x202)](_0x425c13,_0x37cddf),_0x1d34dc=this['applyTrimMode'](_0x4e8f67,_0x37cddf);_0x3cc2fe[_0x17681a(0x246)]({'oldContent':_0x174b8a,'newContent':_0x1d34dc,'mode':_0x37cddf,'linesLimit':_0x2cefb4});}_0x3cc2fe[_0x17681a(0x24d)]>0x0&&_0x536172[_0x17681a(0x246)]({'path':_0x6f007c,'replacements':_0x3cc2fe});}return{'files':_0x536172};}[a0_0x3b1076(0x20c)](_0x5e6522,_0x174a9c){const _0x162e0d=new RegExp(_0x174a9c+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x106e79=_0x162e0d['exec'](_0x5e6522);return _0x106e79?_0x106e79[0x1]:null;}[a0_0x3b1076(0x202)](_0x527d4a,_0x3af6af){const _0x3159ed=a0_0x3b1076;switch(_0x3af6af){case _0x3159ed(0x25a):return _0x527d4a['replace'](/^\n+|\n+$/g,'');case'none':return _0x527d4a;case _0x3159ed(0x1f7):default:return _0x527d4a['trim']();}}['getRequiredParameters'](){return['files'];}[a0_0x3b1076(0x206)](_0x472582){const _0x272d77=a0_0x3b1076,_0x459f3f=[];if(!_0x472582['files']||!Array['isArray'](_0x472582[_0x272d77(0x22a)]))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1f4));else{_0x472582['files']['length']===0x0&&_0x459f3f['push'](_0x272d77(0x1ff));_0x472582['files'][_0x272d77(0x24d)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fd)+this['replaceConfig'][_0x272d77(0x1f1)]+'\x20files\x20in\x20one\x20operation');for(const _0x53d45c of _0x472582['files']){!_0x53d45c[_0x272d77(0x1f0)]&&_0x459f3f['push']('Each\x20file\x20must\x20have\x20a\x20path');_0x53d45c['path']&&_0x53d45c['path']['includes']('..')&&_0x459f3f['push'](_0x272d77(0x21b)+_0x53d45c[_0x272d77(0x1f0)]);if(!_0x53d45c['replacements']||!Array['isArray'](_0x53d45c['replacements']))_0x459f3f[_0x272d77(0x246)](_0x272d77(0x224)+_0x53d45c[_0x272d77(0x1f0)]+'\x20must\x20have\x20replacements\x20array');else{if(_0x53d45c['replacements'][_0x272d77(0x24d)]===0x0)_0x459f3f['push'](_0x272d77(0x224)+_0x53d45c['path']+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x5c326c of _0x53d45c[_0x272d77(0x23d)]){!_0x5c326c['oldContent']&&_0x5c326c[_0x272d77(0x226)]!==''&&_0x459f3f[_0x272d77(0x246)]('Replacement\x20in\x20'+_0x53d45c[_0x272d77(0x1f0)]+_0x272d77(0x21a)),!_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']!==''&&_0x459f3f['push']('Replacement\x20in\x20'+_0x53d45c['path']+_0x272d77(0x20b)),_0x5c326c[_0x272d77(0x226)]&&_0x5c326c[_0x272d77(0x226)]['length']>this['replaceConfig'][_0x272d77(0x24c)]&&_0x459f3f[_0x272d77(0x246)](_0x272d77(0x1fa)+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x5c326c[_0x272d77(0x1fe)]&&_0x5c326c['newContent']['length']>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x459f3f['push'](_0x272d77(0x22d)+this[_0x272d77(0x1f9)][_0x272d77(0x1f8)]/0x400+'KB)'),_0x5c326c[_0x272d77(0x249)]&&![_0x272d77(0x1f7),_0x272d77(0x25a),'none']['includes'](_0x5c326c[_0x272d77(0x249)])&&_0x459f3f[_0x272d77(0x246)]('Invalid\x20mode:\x20'+_0x5c326c['mode']+_0x272d77(0x220));}}}}if(_0x459f3f[_0x272d77(0x24d)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x459f3f[_0x272d77(0x243)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x3b1076(0x238)](_0x3f557b,_0x31de1e){const _0x58a100=a0_0x3b1076,{files:_0x503ca5}=_0x3f557b,{projectDir:_0x3b8993,agentId:_0x139bea,directoryAccess:_0xa70fbf}=_0x31de1e;let _0x3d2191=_0x3b8993||process['cwd']();_0xa70fbf&&_0xa70fbf['workingDirectory']&&(_0x3d2191=_0xa70fbf['workingDirectory'],this['logger']?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0xa70fbf[_0x58a100(0x23b)],'agentId':_0x139bea}));this['logger']?.['info']('Executing\x20file\x20content\x20replace',{'fileCount':_0x503ca5['length'],'workingDirectory':_0x3d2191,'agentId':_0x139bea});const _0x52c786=[],_0x56a159={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x28c25b of _0x503ca5){try{const _0x5b2339=await this[_0x58a100(0x231)](_0x28c25b,_0x3d2191,_0xa70fbf);_0x52c786[_0x58a100(0x246)](_0x5b2339),_0x56a159['filesProcessed']++,_0x5b2339['replacementsMade']>0x0&&(_0x56a159[_0x58a100(0x210)]++,_0x56a159[_0x58a100(0x253)]+=_0x5b2339[_0x58a100(0x229)]),_0x5b2339[_0x58a100(0x214)]&&_0x56a159[_0x58a100(0x245)]++;}catch(_0x356c7f){this[_0x58a100(0x212)]?.[_0x58a100(0x1f6)](_0x58a100(0x257)+_0x28c25b['path'],{'error':_0x356c7f['message']}),_0x52c786['push']({'filePath':_0x28c25b[_0x58a100(0x1f0)],'success':![],'error':_0x356c7f[_0x58a100(0x222)]}),_0x56a159[_0x58a100(0x208)]++;}}return{'success':_0x56a159['errors']===0x0,'results':_0x52c786,'statistics':_0x56a159,'summary':this[_0x58a100(0x242)](_0x56a159),'toolUsed':_0x58a100(0x22f)};}async[a0_0x3b1076(0x231)](_0x345a03,_0xe2dc42,_0x11eae3){const _0x4eec56=a0_0x3b1076,{path:_0x14c7b1,replacements:_0x2ba411}=_0x345a03,_0x18a165=a0_0x102328[_0x4eec56(0x1ef)](_0x14c7b1)?_0x14c7b1:a0_0x102328[_0x4eec56(0x240)](_0xe2dc42,_0x14c7b1);if(_0x11eae3){const _0x4ae01d=this[_0x4eec56(0x207)](_0x18a165,_0xe2dc42,_0x11eae3);if(!_0x4ae01d)throw new Error(_0x4eec56(0x225)+_0x14c7b1);}try{await a0_0x5959cc[_0x4eec56(0x21c)](_0x18a165);}catch(_0x2b8704){throw new Error(_0x4eec56(0x247)+_0x14c7b1);}const _0x482dfe=await a0_0x5959cc['stat'](_0x18a165);if(_0x482dfe[_0x4eec56(0x235)]>this['replaceConfig']['MAX_FILE_SIZE'])throw new Error('File\x20too\x20large\x20(max\x20'+this[_0x4eec56(0x1f9)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x14c7b1);let _0x15f671=await a0_0x5959cc['readFile'](_0x18a165,_0x4eec56(0x223));const _0x478804=_0x15f671;let _0x21ddf1=![];if(this[_0x4eec56(0x1f9)]['CREATE_BACKUPS']){const _0x2a9b7b=_0x18a165+this[_0x4eec56(0x1f9)]['BACKUP_EXTENSION'];try{await a0_0x5959cc['writeFile'](_0x2a9b7b,_0x478804,'utf-8'),_0x21ddf1=!![];}catch(_0x157ccc){this['logger']?.['warn'](_0x4eec56(0x228)+_0x157ccc[_0x4eec56(0x222)]);}}let _0x427fdf=0x0;const _0x145bca=[];for(const _0x16331e of _0x2ba411){const _0x3762f9=await this[_0x4eec56(0x24e)](_0x15f671,_0x16331e['oldContent'],_0x16331e['newContent'],_0x16331e['linesLimit'],_0x16331e['mode']);_0x15f671=_0x3762f9['newContent'],_0x427fdf+=_0x3762f9['count'],_0x145bca['push']({'oldContent':_0x16331e['oldContent']['substring'](0x0,0x32)+(_0x16331e[_0x4eec56(0x226)][_0x4eec56(0x24d)]>0x32?_0x4eec56(0x20d):''),'newContent':_0x16331e['newContent']['substring'](0x0,0x32)+(_0x16331e['newContent'][_0x4eec56(0x24d)]>0x32?'...':''),'count':_0x3762f9['count'],'mode':_0x16331e[_0x4eec56(0x249)],'linesLimit':_0x16331e['linesLimit']});}_0x427fdf>0x0&&await a0_0x5959cc[_0x4eec56(0x24b)](_0x18a165,_0x15f671,'utf-8');const _0x4e2cfd=_0x427fdf>0x0?this[_0x4eec56(0x218)](_0x478804,_0x15f671):null;return{'filePath':_0x14c7b1,'resolvedPath':_0x18a165,'success':!![],'replacementsMade':_0x427fdf,'backupCreated':_0x21ddf1,'replacementDetails':_0x145bca,'diff':_0x4e2cfd,'message':_0x427fdf>0x0?'Made\x20'+_0x427fdf+'\x20replacement(s)\x20in\x20'+_0x14c7b1:'No\x20replacements\x20made\x20in\x20'+_0x14c7b1+'\x20(content\x20not\x20found)'};}[a0_0x3b1076(0x207)](_0x3e8792,_0x5bf52c,_0x46eb38){const _0x51227a=a0_0x3b1076,_0x306e0c=a0_0x102328[_0x51227a(0x1fc)](_0x5bf52c,_0x3e8792);if(!_0x306e0c[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0x306e0c))return!![];if(_0x46eb38['writeEnabledDirectories'])for(const _0xc5b470 of _0x46eb38['writeEnabledDirectories']){const _0xf9a6a1=a0_0x102328['relative'](_0xc5b470,_0x3e8792);if(!_0xf9a6a1[_0x51227a(0x217)]('..')&&!a0_0x102328[_0x51227a(0x1ef)](_0xf9a6a1))return!![];}return![];}async[a0_0x3b1076(0x24e)](_0x55d411,_0x43a035,_0x5eb7d2,_0x1057b3,_0x13cb4f){const _0x1820e8=a0_0x3b1076;if(!_0x1057b3){const _0x11151e=this[_0x1820e8(0x20e)](_0x55d411,_0x43a035);if(_0x11151e===0x0)return{'newContent':_0x55d411,'count':0x0};const _0x4b4d04=_0x55d411[_0x1820e8(0x23a)](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2);return{'newContent':_0x4b4d04,'count':_0x11151e};}const _0x539e7f=this[_0x1820e8(0x24a)](_0x1057b3),_0x35ead5=_0x55d411['split']('\x0a');let _0x6aed7b=0x0;for(let _0x54ace3=0x0;_0x54ace3<_0x35ead5['length'];_0x54ace3++){const _0x10ff67=_0x54ace3+0x1;if(_0x539e7f['has'](_0x10ff67)){if(_0x35ead5[_0x54ace3]['includes'](_0x43a035)){const _0x2f5f98=this[_0x1820e8(0x20e)](_0x35ead5[_0x54ace3],_0x43a035);_0x35ead5[_0x54ace3]=_0x35ead5[_0x54ace3]['split'](_0x43a035)[_0x1820e8(0x243)](_0x5eb7d2),_0x6aed7b+=_0x2f5f98;}}}return{'newContent':_0x35ead5['join']('\x0a'),'count':_0x6aed7b};}['countOccurrences'](_0x2970b1,_0x5a4e4c){if(!_0x5a4e4c)return 0x0;return _0x2970b1['split'](_0x5a4e4c)['length']-0x1;}[a0_0x3b1076(0x24a)](_0x1e45d7){const _0x201e6c=a0_0x3b1076,_0x14fc05=new Set();if(!_0x1e45d7||_0x1e45d7['trim']()==='')return _0x14fc05;const _0x11369c=_0x1e45d7[_0x201e6c(0x23a)](',');for(const _0x279192 of _0x11369c){const _0x3d22c8=_0x279192['trim']();if(_0x3d22c8==='')continue;if(_0x3d22c8[_0x201e6c(0x201)]('-')){const [_0x18f5ed,_0x197367]=_0x3d22c8['split']('-')['map'](_0xda6fe4=>parseInt(_0xda6fe4['trim'](),0xa));if(!isNaN(_0x18f5ed)&&!isNaN(_0x197367)&&_0x197367-_0x18f5ed<this[_0x201e6c(0x1f9)][_0x201e6c(0x1f5)])for(let _0x21f343=_0x18f5ed;_0x21f343<=_0x197367;_0x21f343++){_0x14fc05['add'](_0x21f343);}}else{const _0x24d98c=parseInt(_0x3d22c8,0xa);!isNaN(_0x24d98c)&&_0x14fc05['add'](_0x24d98c);}}return _0x14fc05;}['generateDiff'](_0x49a6ed,_0x51ad7f){const _0x57ac78=a0_0x3b1076,_0x32b0ee=_0x49a6ed[_0x57ac78(0x23a)]('\x0a'),_0x41e633=_0x51ad7f['split']('\x0a');let _0x485ce0=-0x1,_0x5329b9=-0x1;const _0x5ace8c=Math['max'](_0x32b0ee['length'],_0x41e633[_0x57ac78(0x24d)]);for(let _0x2aac6e=0x0;_0x2aac6e<_0x5ace8c;_0x2aac6e++){const _0x2f729f=_0x2aac6e<_0x32b0ee[_0x57ac78(0x24d)]?_0x32b0ee[_0x2aac6e]:'',_0x58be6b=_0x2aac6e<_0x41e633['length']?_0x41e633[_0x2aac6e]:'';if(_0x2f729f!==_0x58be6b){if(_0x485ce0===-0x1)_0x485ce0=_0x2aac6e;_0x5329b9=_0x2aac6e;}}if(_0x485ce0===-0x1)return _0x57ac78(0x248);const _0x3c954c=this['replaceConfig']['DIFF_CONTEXT_LINES'],_0x4a1841=Math[_0x57ac78(0x200)](0x0,_0x485ce0-_0x3c954c),_0xbe33cd=Math[_0x57ac78(0x256)](_0x5ace8c-0x1,_0x5329b9+_0x3c954c);if(_0xbe33cd-_0x4a1841>this['replaceConfig'][_0x57ac78(0x221)])return'Diff\x20too\x20large\x20('+(_0xbe33cd-_0x4a1841+0x1)+'\x20lines),\x20showing\x20summary\x20only:\x0a'+(_0x57ac78(0x259)+(_0x485ce0+0x1)+_0x57ac78(0x20f)+(_0x5329b9+0x1));let _0x439991=_0x57ac78(0x22b)+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+'\x20+'+(_0x4a1841+0x1)+','+(_0xbe33cd-_0x4a1841+0x1)+_0x57ac78(0x1f2);for(let _0x5e5894=_0x4a1841;_0x5e5894<=_0xbe33cd;_0x5e5894++){const _0x3df573=_0x5e5894<_0x32b0ee['length']?_0x32b0ee[_0x5e5894]:'',_0x2ab855=_0x5e5894<_0x41e633['length']?_0x41e633[_0x5e5894]:'';_0x3df573===_0x2ab855?_0x439991+='\x20\x20'+_0x3df573+'\x0a':(_0x439991+='-\x20'+_0x3df573+'\x0a',_0x439991+='+\x20'+_0x2ab855+'\x0a');}return _0x439991;}[a0_0x3b1076(0x242)](_0x59f6cf){const _0xf19956=a0_0x3b1076;return(_0xf19956(0x23e)+_0x59f6cf['filesProcessed']+_0xf19956(0x241)+_0x59f6cf['filesModified']+_0xf19956(0x23c)+_0x59f6cf[_0xf19956(0x253)]+_0xf19956(0x215)+_0x59f6cf[_0xf19956(0x245)]+'\x0aErrors:\x20'+_0x59f6cf['errors']+_0xf19956(0x1f3))['trim']();}async['cleanup'](_0x46b6da){const _0x305f0e=a0_0x3b1076;this['logger']?.[_0x305f0e(0x24f)](_0x305f0e(0x252),{'operationId':_0x46b6da});}}export default FileContentReplaceTool;function a0_0x4994(){const _0x2a01f5=['mtqYnty1m1z6ANDfBq','yMfJA3vWC0nYzwf0zwq','ChvZAa','rMLSzsbUB3qGzM91BMq6ia','tM8GzgLMzMvYzw5Jzxm','Bw9Kzq','CgfYC2vmAw5LuMfUz2vZ','D3jPDgvgAwXL','tufyx09mrf9dt05uru5ux1njwKu','BgvUz3rO','yxbWBhLszxbSywnLBwvUDa','Aw5MBW','ndmWndy3meDvzgfRzG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','rMLSzsbJB250zw50ihjLCgXHy2uGDg9VBcbJBgvHBNvWignVBxbSzxrLza','Dg90ywXszxbSywnLBwvUDhm','CgfYC2vqyxjHBwv0zxjZ','BgLUzxnmAw1PDa','BwLU','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','mM1fBfHXEq','q2HHBMDLzcbSAw5LCZOG','BMv3BgLUzxm','AxnbyNnVBhv0zq','Cgf0Aa','tufyx0zjtevtx1bfuL9puevsqvrjt04','iebacG','cIaGica','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','tufyx0XjtKvFuKfor0vFu0LArq','zxjYB3i','DhjPBq','tufyx05fv19dt05uru5ux1njwKu','CMvWBgfJzunVBMzPzW','B2XKq29UDgvUDcb0B28GBgfYz2uGkg1HEca','zxHLyW','CMvSyxrPDMu','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','BMv3q29UDgvUDa','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','Bwf4','Aw5JBhvKzxm','yxbWBhLuCMLTtw9Kzq','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','DgLTzw91Da','tuiklsbnyxHPBxvTig9SzcbJB250zw50ihnPEMu6ia','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','AxnqyxrOqwnJzxnZAwjSzq','zxjYB3jZ','ntGYm2XABNz5vW','ntu4otKXnuXKBu55uq','ig1PC3nPBMCGBMv3q29UDgvUDa','zxH0CMfJDef0DhjPyNv0zq','lI4U','y291BNrpy2n1CNjLBMnLCW','ihrVia','zMLSzxnnB2rPzMLLza','mJeYndiWmdbvDNr5wuq','Bg9Nz2vY','BwfW','yMfJA3vWq3jLyxrLza','cKjHy2T1ChmGy3jLyxrLzdOG','CgfYC2vku09o','C3rHCNrZv2L0Aa','z2vUzxjHDgveAwzM','AxnbCNjHEq','ig1PC3nPBMCGB2XKq29UDgvUDa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','ywnJzxnZ','CMvXDwLYzxnqCM9Qzwn0','oty5mdCZs0LuugHS','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','tufyx0rjrKzFteLorvm','BwvZC2fNzq','DxrMltG','rMLSzsa','ugf0AcbUB3qGywnJzxnZAwjSztOG','B2XKq29UDgvUDa','CgfYC2u','rMfPBgvKihrVignYzwf0zsbIywnRDxa6ia','CMvWBgfJzw1LBNrZtwfKzq','zMLSzxm','qeaGlq','lMjHAW','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','tufyx0zjtevFu0LArq','zMLSzs1JB250zw50lxjLCgXHy2u','mte1otjsA2nHELC','ChjVy2vZC0zPBgu','mJrqrxj0Ehu','mte0mdyZnM9ou3fiAq','AxnbC3LUyW','C2L6zq','cI0Gtwf4Aw11BsbMAwXLCYbWzxiGB3bLCMf0Aw9UoIa','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW','zxHLy3v0zq','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','C3bSAxq','D29YA2LUz0rPCMvJDg9YEq','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','CMvWBgfJzw1LBNrZ','cLbYB2nLC3nLzca','CgfYC2vytuW','CMvZB2X2zq','igzPBguOCYKktw9KAwzPzwqG','z2vUzxjHDgvtDw1Tyxj5','AM9PBG'];a0_0x4994=function(){return _0x2a01f5;};return a0_0x4994();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2f6a18=a0_0x7ce1;(function(_0x115ec2,_0x36530f){const _0x16196a=a0_0x7ce1,_0x2f4855=_0x115ec2();while(!![]){try{const _0x17a7a7=parseInt(_0x16196a(0x1ad))/0x1*(parseInt(_0x16196a(0x1f6))/0x2)+-parseInt(_0x16196a(0x1b6))/0x3*(parseInt(_0x16196a(0x214))/0x4)+-parseInt(_0x16196a(0x240))/0x5+parseInt(_0x16196a(0x1cf))/0x6*(-parseInt(_0x16196a(0x236))/0x7)+-parseInt(_0x16196a(0x1dc))/0x8*(parseInt(_0x16196a(0x1cb))/0x9)+parseInt(_0x16196a(0x1bc))/0xa*(-parseInt(_0x16196a(0x1ae))/0xb)+parseInt(_0x16196a(0x211))/0xc*(parseInt(_0x16196a(0x220))/0xd);if(_0x17a7a7===_0x36530f)break;else _0x2f4855['push'](_0x2f4855['shift']());}catch(_0x332d82){_0x2f4855['push'](_0x2f4855['shift']());}}}(a0_0x20b4,0xd1ce5));function a0_0x20b4(){const _0x42fa3e=['z2v0u3vWCg9YDgvKqwn0Aw9UCW','Cgf0Aa','BM93','Bw9Kzq','BwvZC2fNzq','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','CMvZB2X2zvbHDgG','C3vIC3rYAw5N','v3jPDguGywnJzxnZigrLBMLLzdOG','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y3jLyxrLlwrPCG','Bwf4rMLSzvnPEMu','yxbWzw5Kvg9gAwXL','y3jLyxrLrgLYCW','rMLSzsb0B28GBgfYz2u6ia','zxHLy3v0zq','y3jLyxrLlwrPCNm','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','mty2nZrWC3fjuKm','ywDLBNrjza','igfJy2vZCYbKzw5Pzwq6ia','CgfYC2vqyxjHBwv0zxjZ','BMfTzq','BgLZDa','igj5DgvZicHTyxGG','DMfSAwrHDgvszwfKqwnJzxnZ','AxneAxjLy3rVCNK','ywn0Aw9UCW','nJi2odu2nujwuMf6AW','y2HLy2TfEgLZDhm','lMrLBgv0zwqTyMfJA3vWlq','yNL0zuXLBMD0Aa','y3jLyxrLrgLYzwn0B3j5','rMfPBgvKihrVignVChKG','Dg9mB3DLCKnHC2u','mJG5s1nxvuPP','mZn6wLnOCLa','rgvSzxrLzca','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','CMvHC29U','rMfPBgvKihrVihjLywqGzMLSzsa','BgLZDerPCMvJDg9YEq','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','qwn0Aw9Uia','mtiXndqZBM9Rzxvw','Bwf0y2HbBgW','igj5DgvZihrVia','zxH0BMfTzq','AxnbCNjHEq','C3rHDhm','ndKYmti3mg5qC2jlyq','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','rMfPBgvKihrVigrLBgv0zsbMAwXLia','D3jPDgvgAwXL','tufyx0zjtevFu0LArq','B3v0Chv0lxbHDgG','ihrVia','C3rYAw5N','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','z2v0rMLSzvn0yxrZ','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','DhLWzq','C2L6zq','q29UDgvUDcb0B28GBgfYz2u6ia','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','oxb2ww1YEa','tw92zwqG','zw50CMLLCW','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','mJCWANP0vNLy','y29UDgvUDa','zgLYzwn0B3j5','ywrKvg9iAxn0B3j5','DMfSAwrHDgvqyxrOqwnJzxnZ','Bg9Nz2vY','Bg9N','Dw5SAw5R','ChvZAa','CM91BMq','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','CMvHza','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','mtm1ntm5otjZrxLbEKy','zw5JB2rPBMC','y3jLyxrLuMvSyxrPDMvqyxrO','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','zgLYBMfTzq','igL0zw1ZigLUia','BxrPBwu','AxnbC3LUyW','B3bLCMf0Aw9UsgLZDg9YEq','zgvZDfbHDgG','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','C291CMnLlxbHDgG','BwfW','uMvHzcbHy2nLC3mGzgvUAwvKigzVCIbZB3vYy2u6ia','BwTKAxi','DxrMoa','zMLSzvbHDgG','yxbWzw5K','D3jPDgu','B3v0Chv0ugf0Aa','y29WEuzPBgu','CMvHzezPBgu','ntG3ngrJt0rbuG','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','DgLTzw91Da','Dg9ju09tDhjPBMC','ywXSB3DLza','C291CMnLugf0Aa','y3DK','C2XPy2u','z2v0v29YA2LUz0rPCMvJDg9YEq','zMLSzxn5CW','AxngAwXL','zxHPC3rZ','AM9PBG','yM9VBgvHBG','z2v0rgvZy3jPChrPB24','ywXSB3DLzerPCMvJDg9YAwvZ','CMvXDwLYzxnqCM9Qzwn0','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','qxbWzw5KzwqG','z2v0ugfYyw1LDgvYu2nOzw1H','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcKnssvrjq0fmoIbcB3rOifHntcbHBMqGsLnptIbMB3jTyxrZigfYzsbMDwXSEsbZDxbWB3j0zwqUifDOzw4GDxnPBMCGwe1migzVCM1HDcWGy29TBwfUzhmGyxjLigf1Dg9TyxrPy2fSBhKGy29UDMvYDgvKihrVihrOzsbHChbYB3bYAwf0zsbZDhj1y3r1CMuGAw50zxjUywXSEsaTihLVDsbKB24NDcbUzwvKihrVig1HBNvHBgX5ihDYyxaGDgHLBsbPBIbHBIbHy3rPB25ZigfYCMf5lGOkvvnbr0uGlsbuv08GrK9stufuuYbtvvbqt1juruq6cGPgt1jnqvqGmsaTifHntcbtvfLmrsaOuMvJB21Tzw5KzwqPoGPBDg9VBcbPzd0IzMLSzxn5C3rLBsjDcJXYzwfKigzPBguTCgf0Ad0IC3jJl2LUzgv4lMPZiIaVpGO8D3jPDguGB3v0Chv0lxbHDgG9iNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYi+cMnVBNn0iej1DhrVBIa9icGPid0+ihSkicbYzxr1CM4Gpgj1DhrVBJ5dBgLJAYbTztWVyNv0Dg9UpJSkFtSkzxHWB3j0igrLzMf1BhqGqNv0Dg9UoWO8l3DYAxrLpGPBl3rVB2XDcGPgt1jnqvqGmIaTiePtt04Gu1rzteu6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiSiaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWGcIaGicaGicjVDxrWDxrqyxrOiJOGiNnYyY9JB21WB25LBNrZl0j1DhrVBI5QCYiScIaGicaGicjJB250zw50iJOGiMnVBNn0iej1DhrVBIa9icGPid0+ihSGCMv0DxjUidXIDxr0B24+q2XPy2SGBwu8l2j1DhrVBJ47ih07iGOGicaGFqOGif0kFqPGygakcKLnue9svefovdOGcI0GvxnLigvPDgHLCIbMB3jTyxqGy29UC2LZDgvUDgX5lIbeBYbot1qGBwL4igzVCM1HDhmGAw4GysbZAw5NBguGy29TBwfUzc4klsbytuWGzM9YBwf0igLZihjLy29TBwvUzgvKigzVCIbZAw5NBguGB3bLCMf0Aw9UCYbHBMqGyMv0DgvYihjLywrHyMLSAxr5cI0GsLnptIbMB3jTyxqGAxmGCMvJB21Tzw5KzwqGzM9YignVBxbSzxGGBxvSDgKTywn0Aw9Uig9WzxjHDgLVBNmklsbcB3rOigzVCM1HDhmGD29YAYbLCxvHBgX5ihDLBgWGyw5KihbYB2r1y2uGDgHLihnHBwuGCMvZDwX0CWOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZcI0GD3jPDgu6ifDYAxrLignVBNrLBNqGDg8GzMLSzqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzqOTigrLBgv0ztOGrgvSzxrLigeGzMLSzqOTignVChK6ienVChKGzMLSzsbMCM9TihnVDxjJzsb0BYbKzxn0Aw5HDgLVBGOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguklsbJCMvHDguTzgLYoIbdCMvHDguGzgLYzwn0B3j5cI0GBgLZDdOGtgLZDcbKAxjLy3rVCNKGy29UDgvUDhmklsbLEgLZDhm6ienOzwnRigLMigzPBguVzgLYzwn0B3j5igv4Axn0CWOTihn0yxrZoIbhzxqGzMLSzs9KAxjLy3rVCNKGBwv0ywrHDgekcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8GCMvHzaOTig91Dhb1Dc1WyxrOoIbqyxrOihDOzxjLihrVihDYAxrLl2nYzwf0zsbMAwXLcI0GC291CMnLlxbHDgG6ifnVDxjJzsbWyxrOigzVCIbJB3b5l21VDMuGB3bLCMf0Aw9UCWOTigrLC3qTCgf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbKAxjLy3rVCNKGB3bLCMf0Aw9UCWOTignVBNrLBNq6ienVBNrLBNqGDg8GD3jPDguVyxbWzw5KcI0Gzw5JB2rPBMC6iezPBguGzw5JB2rPBMCGkgrLzMf1Bhq6ihv0zJGPcI0Gy3jLyxrLlwrPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOku0LnueXfiezjteuGq1jfqvrjt04GkfHntcbMB3jTyxqGlsbYzwnVBw1LBMrLzcK6cLT0B29SigLKpsjMAwXLC3LZDgvTiL0kphDYAxrLig91Dhb1Dc1WyxrOpsjOzwXSBY5JiJ4ki2LUy2X1zguGphn0zgLVlMG+cGPPBNqGBwfPBIGPihSkicaGihbYAw50zIGIsgvSBg8SifDVCMXKivXUiIK7cIaGicbYzxr1CM4GmdSkFqO8l3DYAxrLpGPBl3rVB2XDcGPsrufesu5hiezjtevticHytuWGzM9YBwf0ktOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8CMvHzcbMAwXLlxbHDgG9iNbHy2THz2uUANnVBIiGlZ4kwY90B29SxqOktvvmveLqteuGt1bfuKfusu9ouYaOsLnptIbMB3jTyxqGCMvJB21Tzw5KzwqPoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjYzwfKiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiNDYAxrLiIWkicaGicaGiM91Dhb1DfbHDgGIoIaIC3jJl2jHy2T1Cc5QCYiScIaGicaGicjJB250zw50iJOGiI8ViejHy2T1CcbMAwXLxg5JB25ZB2XLlMXVzYGNyMfJA3vWjYK7iGOGicaGFqOGif0kFqPGygakcK9usevsifHntcbfwefnueXfuZOkw3rVB2WGAwq9iMzPBgvZExn0zw0IxqO8y29WEsbZB3vYy2uTCgf0Ad0IDgvTCgXHDguUANmIigrLC3qTCgf0Ad0IC3jJl2nVBxbVBMvUDc5QCYiGlZ4kpgnYzwf0zs1KAxiGzgLYzwn0B3j5psjZCMmVy29TCg9Uzw50CY91AsiGlZ4kpgXPC3qGzgLYzwn0B3j5psjZCMmIic8+cLSVDg9VBf0kcLnfq1vssvrzoGOTie9WzxjHDgLVBNmGCMvZDhjPy3rLzcb0BYbWCM9Qzwn0igrPCMvJDg9YEqOTiezPBguGC2L6zsbSAw1PDhmGzw5MB3jJzwqGkg1HEca','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zMLSzs1WyxrO','zMLSzq','lMnTza','CMvUyw1L','igv4Axn0CYbHCYa','mJG2ogHVC29isa','AxntEw1IB2XPy0XPBMS','yMXVy2TLzev4DgvUC2LVBNm','neHkChj0zG','D29YA2LUz0rPCMvJDg9YEq','lMv4zq','Bw92zq','C3rHDa','CMf3q29UDgvUDa','CgfYC2vbDhrYAwj1DgvZ','yxbWzw5KrMLSzq','zgvSzxrL','rMfPBgvKihrVihDYAxrLigzPBguG','C3rYAw5NAwz5','u291CMnLigzPBguGDg9VigXHCMDLoIa','mJq5mJyYs0vizhni','DMfSAwrHDgvxCML0zufJy2vZCW','BgvUz3rO','y29WEq'];a0_0x20b4=function(){return _0x42fa3e;};return a0_0x20b4();}import{BaseTool}from'./baseTool.js';function a0_0x7ce1(_0x3655d5,_0x5a18c7){_0x3655d5=_0x3655d5-0x1a7;const _0x20b4d6=a0_0x20b4();let _0x7ce15a=_0x20b4d6[_0x3655d5];if(a0_0x7ce1['qEeUjG']===undefined){var _0x30f2d3=function(_0x247483){const _0x35acd7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x232f1f='',_0x1b5a86='';for(let _0x4fab84=0x0,_0x2eeb5d,_0x3cc4dd,_0x360436=0x0;_0x3cc4dd=_0x247483['charAt'](_0x360436++);~_0x3cc4dd&&(_0x2eeb5d=_0x4fab84%0x4?_0x2eeb5d*0x40+_0x3cc4dd:_0x3cc4dd,_0x4fab84++%0x4)?_0x232f1f+=String['fromCharCode'](0xff&_0x2eeb5d>>(-0x2*_0x4fab84&0x6)):0x0){_0x3cc4dd=_0x35acd7['indexOf'](_0x3cc4dd);}for(let _0x220379=0x0,_0x3a8c47=_0x232f1f['length'];_0x220379<_0x3a8c47;_0x220379++){_0x1b5a86+='%'+('00'+_0x232f1f['charCodeAt'](_0x220379)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b5a86);};a0_0x7ce1['FHxfEl']=_0x30f2d3,a0_0x7ce1['WvKeod']={},a0_0x7ce1['qEeUjG']=!![];}const _0x48d6f5=_0x20b4d6[0x0],_0x29f8b4=_0x3655d5+_0x48d6f5,_0x3696bd=a0_0x7ce1['WvKeod'][_0x29f8b4];return!_0x3696bd?(_0x7ce15a=a0_0x7ce1['FHxfEl'](_0x7ce15a),a0_0x7ce1['WvKeod'][_0x29f8b4]=_0x7ce15a):_0x7ce15a=_0x3696bd,_0x7ce15a;}import a0_0x232f1f from'../utilities/tagParser.js';import a0_0x1b5a86 from'../utilities/directoryAccessManager.js';import a0_0x4fab84 from'fs/promises';import a0_0x2eeb5d from'path';import a0_0x3cc4dd from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x360436={},_0x220379=null){const _0x7b21be=a0_0x7ce1;super(_0x360436,_0x220379),this[_0x7b21be(0x206)]=!![],this[_0x7b21be(0x1e6)]=![],this[_0x7b21be(0x1f8)]=_0x360436[_0x7b21be(0x1f8)]||0x7530,this['maxConcurrentOperations']=_0x360436[_0x7b21be(0x1ca)]||0x5,this['maxFileSize']=_0x360436[_0x7b21be(0x22f)]||SYSTEM_DEFAULTS[_0x7b21be(0x1c0)],this['allowedExtensions']=_0x360436['allowedExtensions']||null,this[_0x7b21be(0x213)]=_0x360436[_0x7b21be(0x213)]||[_0x7b21be(0x216),'.bat',_0x7b21be(0x20e),'.scr','.com'],this[_0x7b21be(0x205)]=_0x360436[_0x7b21be(0x205)]||null,this[_0x7b21be(0x1e7)]=[],this['directoryAccessManager']=new a0_0x1b5a86(_0x360436,_0x220379);}[a0_0x2f6a18(0x204)](){const _0x3ef1f7=a0_0x2f6a18;return _0x3ef1f7(0x20a)+Math[_0x3ef1f7(0x1d8)](this[_0x3ef1f7(0x22f)]/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}[a0_0x2f6a18(0x239)](_0x3a8c47){const _0x675309=a0_0x2f6a18;try{const _0x4b7a64={},_0x287b33=[];this['logger']?.['debug'](_0x675309(0x1b0),{'contentLength':_0x3a8c47[_0x675309(0x222)],'contentPreview':_0x3a8c47[_0x675309(0x22b)](0x0,0xc8)});const _0x4d4073=['read','delete',_0x675309(0x223),_0x675309(0x217),'create-dir','list',_0x675309(0x201),'stats','append'];for(const _0x37b8a9 of _0x4d4073){const _0x24ce87=a0_0x232f1f[_0x675309(0x1b4)](_0x3a8c47,_0x37b8a9);for(const _0x1a457f of _0x24ce87){const _0xc23f2c={'type':_0x37b8a9,..._0x1a457f['attributes']};_0xc23f2c[_0x675309(0x20c)]&&(_0xc23f2c['filePath']=_0xc23f2c['file-path'],delete _0xc23f2c['file-path']),_0xc23f2c[_0x675309(0x1c1)]&&(_0xc23f2c[_0x675309(0x1f3)]=_0xc23f2c['output-path'],delete _0xc23f2c['output-path']),_0xc23f2c[_0x675309(0x1eb)]&&(_0xc23f2c[_0x675309(0x1fb)]=_0xc23f2c['source-path'],delete _0xc23f2c['source-path']),_0xc23f2c['dest-path']&&(_0xc23f2c['destPath']=_0xc23f2c['dest-path'],delete _0xc23f2c['dest-path']),_0xc23f2c['create-dirs']&&(_0xc23f2c['createDirs']=_0xc23f2c[_0x675309(0x234)]==='true',delete _0xc23f2c['create-dirs']),_0x287b33['push'](_0xc23f2c);}}const _0x4c7b03=_0x3a8c47[_0x675309(0x1b7)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x4a94fc of _0x4c7b03){const _0x492ad3=new a0_0x232f1f(),_0x441c95=_0x492ad3[_0x675309(0x21a)](_0x4a94fc[0x1]),_0x57426e=_0x4a94fc[0x2]['trim'](),_0x22447a={'type':_0x675309(0x1f2),'content':_0x57426e,..._0x441c95};_0x22447a[_0x675309(0x1c1)]&&(_0x22447a['outputPath']=_0x22447a['output-path'],delete _0x22447a[_0x675309(0x1c1)]),_0x22447a['create-dirs']&&(_0x22447a[_0x675309(0x231)]=_0x22447a[_0x675309(0x234)]==='true',delete _0x22447a['create-dirs']),_0x287b33[_0x675309(0x1d7)](_0x22447a);}const _0x432f41=_0x3a8c47[_0x675309(0x1b7)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x399b39 of _0x432f41){const _0x459901=new a0_0x232f1f(),_0x4623ea=_0x459901['parseAttributes'](_0x399b39[0x1]),_0x542205=_0x399b39[0x2]['trim'](),_0xff69df={'type':'append','content':_0x542205,..._0x4623ea};_0xff69df[_0x675309(0x20c)]&&(_0xff69df[_0x675309(0x1f0)]=_0xff69df['file-path'],delete _0xff69df['file-path']),_0x287b33['push'](_0xff69df);}return _0x4b7a64['actions']=_0x287b33,_0x4b7a64[_0x675309(0x219)]=_0x3a8c47['trim'](),this[_0x675309(0x1d4)]?.['debug'](_0x675309(0x229),{'totalActions':_0x287b33[_0x675309(0x222)],'actionTypes':_0x287b33[_0x675309(0x1ec)](_0xb7d33b=>_0xb7d33b[_0x675309(0x1c7)]),'actions':_0x287b33[_0x675309(0x1ec)](_0x133acb=>({'type':_0x133acb['type'],'filePath':_0x133acb[_0x675309(0x1f0)],'outputPath':_0x133acb['outputPath'],'hasContent':!!_0x133acb['content']}))}),_0x4b7a64;}catch(_0x5c7df9){throw new Error('Failed\x20to\x20parse\x20filesystem\x20parameters:\x20'+_0x5c7df9['message']);}}[a0_0x2f6a18(0x1c6)](){const _0x17065b=a0_0x2f6a18;return[_0x17065b(0x23f)];}['customValidateParameters'](_0x1e6bf5){const _0x3cb82d=a0_0x2f6a18,_0xf7a1bb=[];if(!_0x1e6bf5[_0x3cb82d(0x23f)]||!Array['isArray'](_0x1e6bf5['actions'])||_0x1e6bf5[_0x3cb82d(0x23f)]['length']===0x0)_0xf7a1bb['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x2e675c,_0x5eee49]of _0x1e6bf5[_0x3cb82d(0x23f)][_0x3cb82d(0x1cd)]()){if(!_0x5eee49['type']){_0xf7a1bb['push']('Action\x20'+(_0x2e675c+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x5eee49['type']){case _0x3cb82d(0x1da):case _0x3cb82d(0x21c):case _0x3cb82d(0x201):case _0x3cb82d(0x1bb):!_0x5eee49[_0x3cb82d(0x1f0)]&&_0xf7a1bb['push'](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x5eee49[_0x3cb82d(0x1c7)]);break;case'write':!_0x5eee49['outputPath']&&_0xf7a1bb['push'](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x5eee49[_0x3cb82d(0x1d0)]&&_0x5eee49['content']!==''&&_0xf7a1bb['push'](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case'append':!_0x5eee49['filePath']&&_0xf7a1bb[_0x3cb82d(0x1d7)]('Action\x20'+(_0x2e675c+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x5eee49[_0x3cb82d(0x1d0)]&&_0x5eee49['content']!==''&&_0xf7a1bb['push']('Action\x20'+(_0x2e675c+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x5eee49[_0x3cb82d(0x1fb)]&&_0xf7a1bb['push'](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+_0x3cb82d(0x1f7)+_0x5eee49['type']);!_0x5eee49['destPath']&&_0xf7a1bb['push'](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x5eee49['type']);break;case _0x3cb82d(0x22e):case'list':!_0x5eee49['directory']&&_0xf7a1bb[_0x3cb82d(0x1d7)](_0x3cb82d(0x1b5)+(_0x2e675c+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x5eee49[_0x3cb82d(0x1c7)]);break;default:_0xf7a1bb['push']('Action\x20'+(_0x2e675c+0x1)+_0x3cb82d(0x1e1)+_0x5eee49[_0x3cb82d(0x1c7)]);}_0x5eee49[_0x3cb82d(0x1f0)]&&!this['isAllowedFileExtension'](_0x5eee49['filePath'])&&_0xf7a1bb[_0x3cb82d(0x1d7)]('Action\x20'+(_0x2e675c+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x2eeb5d[_0x3cb82d(0x1b9)](_0x5eee49[_0x3cb82d(0x1f0)])),_0x5eee49[_0x3cb82d(0x1f3)]&&!this[_0x3cb82d(0x1df)](_0x5eee49[_0x3cb82d(0x1f3)])&&_0xf7a1bb['push']('Action\x20'+(_0x2e675c+0x1)+_0x3cb82d(0x1e9)+a0_0x2eeb5d['extname'](_0x5eee49['outputPath']));}return{'valid':_0xf7a1bb['length']===0x0,'errors':_0xf7a1bb};}async[a0_0x2f6a18(0x233)](_0x5762ee,_0x44fa3a){const _0xe16e4e=a0_0x2f6a18;if(!_0x5762ee||typeof _0x5762ee!=='object')throw new Error(_0xe16e4e(0x1d9));const {actions:_0x570ae1}=_0x5762ee;if(!_0x570ae1)throw new Error(_0xe16e4e(0x1db)+JSON['stringify'](Object['keys'](_0x5762ee)));if(!Array[_0xe16e4e(0x1ba)](_0x570ae1))throw new Error(_0xe16e4e(0x22d)+typeof _0x570ae1);if(_0x570ae1[_0xe16e4e(0x222)]===0x0)throw new Error('Invalid\x20parameters:\x20actions\x20array\x20is\x20empty');const {projectDir:_0x30871b,agentId:_0x44239a,directoryAccess:_0x1e4070}=_0x44fa3a,_0x53ba25=_0x1e4070||this[_0xe16e4e(0x20b)][_0xe16e4e(0x1ea)]({'workingDirectory':_0x30871b||process['cwd'](),'writeEnabledDirectories':[_0x30871b||process['cwd']()],'restrictToProject':!![]});_0x1e4070&&_0x1e4070[_0xe16e4e(0x215)]?(console['log']('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x1e4070['workingDirectory']),console[_0xe16e4e(0x1d5)]('FileSystem\x20DEBUG:\x20Full\x20directoryAccess\x20object:',JSON[_0xe16e4e(0x21e)](_0x1e4070,null,0x2))):(console[_0xe16e4e(0x1d5)](_0xe16e4e(0x1ce),_0x30871b||process[_0xe16e4e(0x1fc)]()),console[_0xe16e4e(0x1d5)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x1e4070),console['log']('FileSystem\x20DEBUG:\x20projectDir\x20is:',_0x30871b));const _0xaae333=[];for(const _0x28129a of _0x570ae1){try{let _0x2005fb;switch(_0x28129a['type']){case _0xe16e4e(0x1da):_0x2005fb=await this[_0xe16e4e(0x1f5)](_0x28129a[_0xe16e4e(0x1f0)],_0x53ba25,_0x28129a[_0xe16e4e(0x1dd)]);break;case'write':_0x2005fb=await this['writeFile'](_0x28129a[_0xe16e4e(0x1f3)],_0x28129a['content'],_0x53ba25,{'encoding':_0x28129a[_0xe16e4e(0x1dd)],'createDirs':_0x28129a[_0xe16e4e(0x231)]});break;case'append':_0x2005fb=await this[_0xe16e4e(0x230)](_0x28129a['filePath'],_0x28129a[_0xe16e4e(0x1d0)],_0x53ba25,_0x28129a['encoding']);break;case'delete':_0x2005fb=await this['deleteFile'](_0x28129a[_0xe16e4e(0x1f0)],_0x53ba25);break;case'copy':_0x2005fb=await this['copyFile'](_0x28129a[_0xe16e4e(0x1fb)],_0x28129a[_0xe16e4e(0x1e8)],_0x53ba25);break;case'move':_0x2005fb=await this['moveFile'](_0x28129a[_0xe16e4e(0x1fb)],_0x28129a['destPath'],_0x53ba25);break;case'create-dir':_0x2005fb=await this[_0xe16e4e(0x1aa)](_0x28129a['directory'],_0x53ba25);break;case'list':_0x2005fb=await this[_0xe16e4e(0x1b3)](_0x28129a['directory'],_0x53ba25);break;case'exists':_0x2005fb=await this[_0xe16e4e(0x1a7)](_0x28129a[_0xe16e4e(0x1f0)],_0x53ba25);break;case _0xe16e4e(0x1bb):_0x2005fb=await this[_0xe16e4e(0x1c5)](_0x28129a[_0xe16e4e(0x1f0)],_0x53ba25);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x28129a[_0xe16e4e(0x1c7)]);}_0xaae333[_0xe16e4e(0x1d7)](_0x2005fb),this['addToHistory'](_0x28129a,_0x2005fb,_0x44fa3a[_0xe16e4e(0x237)]);}catch(_0xd53a2){const _0x34a69d={'success':![],'action':_0x28129a[_0xe16e4e(0x1c7)],'error':_0xd53a2['message'],'filePath':_0x28129a['filePath']||_0x28129a[_0xe16e4e(0x1f3)]||_0x28129a[_0xe16e4e(0x1d1)]};_0xaae333[_0xe16e4e(0x1d7)](_0x34a69d),this[_0xe16e4e(0x1d2)](_0x28129a,_0x34a69d,_0x44fa3a[_0xe16e4e(0x237)]);}}return{'success':!![],'actions':_0xaae333,'executedActions':_0x570ae1['length'],'toolUsed':_0xe16e4e(0x1ff)};}async[a0_0x2f6a18(0x1f5)](_0x620f07,_0x178887,_0x306182='utf8'){const _0x20b4e3=a0_0x2f6a18,_0x79e80c=this['directoryAccessManager'][_0x20b4e3(0x1fe)](_0x178887),_0x2fb005=this['resolvePath'](_0x620f07,_0x79e80c),_0x3eb678=this['directoryAccessManager']['validateReadAccess'](_0x2fb005,_0x178887);if(!_0x3eb678['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x3eb678['reason']+'\x20('+_0x3eb678[_0x20b4e3(0x225)]+')');try{const _0x2c32fc=await a0_0x4fab84['stat'](_0x2fb005);if(_0x2c32fc[_0x20b4e3(0x1c8)]>this['maxFileSize'])throw new Error(_0x20b4e3(0x232)+_0x2c32fc['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x2aec1c=await a0_0x4fab84[_0x20b4e3(0x1f5)](_0x2fb005,_0x306182);return{'success':!![],'action':_0x20b4e3(0x1da),'filePath':this['directoryAccessManager']['createRelativePath'](_0x2fb005,_0x178887),'content':_0x2aec1c,'size':_0x2c32fc[_0x20b4e3(0x1c8)],'encoding':_0x306182,'lastModified':_0x2c32fc['mtime'][_0x20b4e3(0x1f9)](),'message':'Read\x20'+_0x2c32fc['size']+'\x20bytes\x20from\x20'+_0x620f07};}catch(_0x36a2a3){throw new Error(_0x20b4e3(0x1b2)+_0x620f07+':\x20'+_0x36a2a3[_0x20b4e3(0x228)]);}}async[a0_0x2f6a18(0x1bf)](_0x491304,_0x3fd6a9,_0x317a65,_0x52cabd={}){const _0x81b90f=a0_0x2f6a18,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x52cabd,_0x5f2a7c=this['directoryAccessManager'][_0x81b90f(0x1fe)](_0x317a65),_0x10835a=this['resolvePath'](_0x491304,_0x5f2a7c),_0x893cf9=this[_0x81b90f(0x20b)]['validateWriteAccess'](_0x10835a,_0x317a65);if(!_0x893cf9[_0x81b90f(0x1fa)])throw new Error(_0x81b90f(0x22c)+_0x893cf9['reason']+'\x20('+_0x893cf9['path']+')');try{const _0x2118bf=Buffer['byteLength'](_0x3fd6a9,encoding);if(_0x2118bf>this[_0x81b90f(0x22f)])throw new Error(_0x81b90f(0x1c9)+_0x2118bf+_0x81b90f(0x23c)+this[_0x81b90f(0x22f)]+')');if(createDirs){const _0x5479be=a0_0x2eeb5d['dirname'](_0x10835a);await a0_0x4fab84['mkdir'](_0x5479be,{'recursive':!![]});}let _0x2b8406=null;try{await a0_0x4fab84['access'](_0x10835a),_0x2b8406=_0x10835a+'.backup-'+Date[_0x81b90f(0x226)](),await a0_0x4fab84['copyFile'](_0x10835a,_0x2b8406);}catch{}await a0_0x4fab84['writeFile'](_0x10835a,_0x3fd6a9,encoding);const _0x20847d=await a0_0x4fab84['stat'](_0x10835a),_0x2b81b3=this['directoryAccessManager']['createRelativePath'](_0x10835a,_0x317a65);return{'success':!![],'action':_0x81b90f(0x1f2),'outputPath':_0x2b81b3,'fullPath':_0x10835a,'size':_0x20847d['size'],'encoding':encoding,'backupPath':_0x2b8406?this['directoryAccessManager'][_0x81b90f(0x1de)](_0x2b8406,_0x317a65):null,'backupFullPath':_0x2b8406||null,'message':'Wrote\x20'+_0x20847d[_0x81b90f(0x1c8)]+'\x20bytes\x20to\x20'+_0x10835a};}catch(_0x122b89){throw new Error(_0x81b90f(0x21d)+_0x10835a+':\x20'+_0x122b89[_0x81b90f(0x228)]);}}async[a0_0x2f6a18(0x230)](_0x270500,_0x233c2c,_0xa4a1a1,_0x134549=a0_0x2f6a18(0x1ef)){const _0x5f444b=a0_0x2f6a18,_0x510d0e=this[_0x5f444b(0x20b)][_0x5f444b(0x1fe)](_0xa4a1a1),_0x95e726=this['resolvePath'](_0x270500,_0x510d0e),_0x1ccae0=this[_0x5f444b(0x20b)]['validateWriteAccess'](_0x95e726,_0xa4a1a1);if(!_0x1ccae0[_0x5f444b(0x1fa)])throw new Error(_0x5f444b(0x22c)+_0x1ccae0['reason']+'\x20('+_0x1ccae0[_0x5f444b(0x225)]+')');try{let _0x1bc142=0x0;try{const _0x4499aa=await a0_0x4fab84[_0x5f444b(0x218)](_0x95e726);_0x1bc142=_0x4499aa['size'];}catch{}const _0x562e72=Buffer[_0x5f444b(0x1a9)](_0x233c2c,_0x134549);if(_0x1bc142+_0x562e72>this[_0x5f444b(0x22f)])throw new Error(_0x5f444b(0x207)+(_0x1bc142+_0x562e72)+_0x5f444b(0x23c)+this['maxFileSize']+')');await a0_0x4fab84[_0x5f444b(0x21b)](_0x95e726,_0x233c2c,_0x134549);const _0x1f435a=await a0_0x4fab84['stat'](_0x95e726),_0x3058f6=this[_0x5f444b(0x20b)]['createRelativePath'](_0x95e726,_0xa4a1a1);return{'success':!![],'action':'append','filePath':_0x3058f6,'fullPath':_0x95e726,'appendedBytes':_0x562e72,'totalSize':_0x1f435a['size'],'encoding':_0x134549,'message':_0x5f444b(0x208)+_0x562e72+_0x5f444b(0x1b8)+_0x95e726};}catch(_0x300f6e){throw new Error(_0x5f444b(0x1e0)+_0x95e726+':\x20'+_0x300f6e['message']);}}async['deleteFile'](_0x365d86,_0x56c98d){const _0x21b36a=a0_0x2f6a18,_0x602de3=this[_0x21b36a(0x20b)][_0x21b36a(0x1fe)](_0x56c98d),_0x492cfc=this['resolvePath'](_0x365d86,_0x602de3),_0xd4e9e9=this[_0x21b36a(0x20b)]['validateWriteAccess'](_0x492cfc,_0x56c98d);if(!_0xd4e9e9['allowed'])throw new Error(_0x21b36a(0x235)+_0xd4e9e9['reason']+'\x20('+_0xd4e9e9['path']+')');try{const _0x5a5ab0=await a0_0x4fab84['stat'](_0x492cfc),_0x333afe=_0x492cfc+_0x21b36a(0x1a8)+Date['now']();await a0_0x4fab84[_0x21b36a(0x1f4)](_0x492cfc,_0x333afe),await a0_0x4fab84[_0x21b36a(0x1d6)](_0x492cfc);const _0x25be36=this[_0x21b36a(0x20b)][_0x21b36a(0x1de)](_0x492cfc,_0x56c98d),_0x51e793=this[_0x21b36a(0x20b)][_0x21b36a(0x1de)](_0x333afe,_0x56c98d);return{'success':!![],'action':_0x21b36a(0x21c),'filePath':_0x25be36,'fullPath':_0x492cfc,'size':_0x5a5ab0[_0x21b36a(0x1c8)],'backupPath':_0x51e793,'backupFullPath':_0x333afe,'message':_0x21b36a(0x1af)+_0x492cfc+'\x20(backup\x20created)'};}catch(_0x2be098){throw new Error(_0x21b36a(0x1be)+_0x492cfc+':\x20'+_0x2be098[_0x21b36a(0x228)]);}}async[a0_0x2f6a18(0x1f4)](_0x28d905,_0x1575c2,_0x3d084f){const _0x48dcff=a0_0x2f6a18,_0x5a7f22=this[_0x48dcff(0x20b)][_0x48dcff(0x1fe)](_0x3d084f),_0x19a4a9=this['resolvePath'](_0x28d905,_0x5a7f22),_0x1cf2b0=this['resolvePath'](_0x1575c2,_0x5a7f22),_0x31cd48=this[_0x48dcff(0x20b)]['validateReadAccess'](_0x19a4a9,_0x3d084f);if(!_0x31cd48['allowed'])throw new Error(_0x48dcff(0x1bd)+_0x31cd48[_0x48dcff(0x1b1)]+'\x20('+_0x31cd48[_0x48dcff(0x225)]+')');const _0x1c646d=this[_0x48dcff(0x20b)]['validateWriteAccess'](_0x1cf2b0,_0x3d084f);if(!_0x1c646d['allowed'])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x1c646d[_0x48dcff(0x1b1)]+'\x20('+_0x1c646d['path']+')');try{const _0x2e2a6a=await a0_0x4fab84['stat'](_0x19a4a9);if(_0x2e2a6a[_0x48dcff(0x1c8)]>this['maxFileSize'])throw new Error(_0x48dcff(0x21f)+_0x2e2a6a['size']+'\x20bytes');const _0x12930c=a0_0x2eeb5d[_0x48dcff(0x1e3)](_0x1cf2b0);await a0_0x4fab84[_0x48dcff(0x1ee)](_0x12930c,{'recursive':!![]}),await a0_0x4fab84['copyFile'](_0x19a4a9,_0x1cf2b0);const _0x1fe58c=this[_0x48dcff(0x20b)][_0x48dcff(0x1de)](_0x19a4a9,_0x3d084f),_0x7ebd8=this[_0x48dcff(0x20b)][_0x48dcff(0x1de)](_0x1cf2b0,_0x3d084f);return{'success':!![],'action':_0x48dcff(0x223),'sourcePath':_0x1fe58c,'destPath':_0x7ebd8,'sourceFullPath':_0x19a4a9,'destFullPath':_0x1cf2b0,'size':_0x2e2a6a[_0x48dcff(0x1c8)],'message':'Copied\x20'+_0x19a4a9+_0x48dcff(0x1c2)+_0x1cf2b0};}catch(_0x5b1866){throw new Error(_0x48dcff(0x1ab)+_0x19a4a9+_0x48dcff(0x1c2)+_0x1cf2b0+':\x20'+_0x5b1866[_0x48dcff(0x228)]);}}async['moveFile'](_0x4d1c65,_0x4ff6c2,_0x18294d){const _0x3dad16=a0_0x2f6a18,_0x37e658=this['directoryAccessManager']['getWorkingDirectory'](_0x18294d),_0x4e97b7=this['resolvePath'](_0x4d1c65,_0x37e658),_0x309a49=this[_0x3dad16(0x22a)](_0x4ff6c2,_0x37e658),_0x3b2c2c=this['directoryAccessManager'][_0x3dad16(0x23d)](_0x4e97b7,_0x18294d);if(!_0x3b2c2c['allowed'])throw new Error(_0x3dad16(0x1ed)+_0x3b2c2c[_0x3dad16(0x1b1)]+'\x20('+_0x3b2c2c['path']+')');const _0x4bfd51=this[_0x3dad16(0x20b)]['validateWriteAccess'](_0x309a49,_0x18294d);if(!_0x4bfd51['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x4bfd51['reason']+'\x20('+_0x4bfd51['path']+')');try{const _0x1a94e9=await a0_0x4fab84[_0x3dad16(0x218)](_0x4e97b7),_0x4d29f0=a0_0x2eeb5d[_0x3dad16(0x1e3)](_0x309a49);await a0_0x4fab84['mkdir'](_0x4d29f0,{'recursive':!![]}),await a0_0x4fab84[_0x3dad16(0x20f)](_0x4e97b7,_0x309a49);const _0x72b74d=this[_0x3dad16(0x20b)]['createRelativePath'](_0x4e97b7,_0x18294d),_0x256551=this['directoryAccessManager']['createRelativePath'](_0x309a49,_0x18294d);return{'success':!![],'action':_0x3dad16(0x217),'sourcePath':_0x72b74d,'destPath':_0x256551,'fullSourcePath':_0x4e97b7,'fullDestPath':_0x309a49,'size':_0x1a94e9['size'],'message':_0x3dad16(0x1cc)+_0x4d1c65+'\x20to\x20'+_0x4ff6c2};}catch(_0x4115a9){throw new Error('Failed\x20to\x20move\x20'+_0x4d1c65+_0x3dad16(0x1c2)+_0x4ff6c2+':\x20'+_0x4115a9[_0x3dad16(0x228)]);}}async[a0_0x2f6a18(0x1aa)](_0x1f0944,_0x497454){const _0x49090f=a0_0x2f6a18,_0x3a9b83=this['directoryAccessManager'][_0x49090f(0x1fe)](_0x497454),_0x3a44c5=this[_0x49090f(0x22a)](_0x1f0944,_0x3a9b83),_0x458ed2=this['directoryAccessManager']['validateWriteAccess'](_0x3a44c5,_0x497454);if(!_0x458ed2[_0x49090f(0x1fa)])throw new Error(_0x49090f(0x22c)+_0x458ed2[_0x49090f(0x1b1)]+'\x20('+_0x458ed2['path']+')');try{await a0_0x4fab84['mkdir'](_0x3a44c5,{'recursive':!![]});const _0x428914=this[_0x49090f(0x20b)][_0x49090f(0x1de)](_0x3a44c5,_0x497454);return{'success':!![],'action':_0x49090f(0x22e),'directory':_0x428914,'fullPath':_0x3a44c5,'message':'Created\x20directory\x20'+_0x1f0944};}catch(_0x14ec9a){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x1f0944+':\x20'+_0x14ec9a[_0x49090f(0x228)]);}}async[a0_0x2f6a18(0x1b3)](_0x270116,_0x4d2343){const _0x4ff3b3=a0_0x2f6a18,_0x2fd1a4=this[_0x4ff3b3(0x20b)]['getWorkingDirectory'](_0x4d2343),_0x522a2e=this['resolvePath'](_0x270116,_0x2fd1a4),_0xcc6a2c=this['directoryAccessManager'][_0x4ff3b3(0x23d)](_0x522a2e,_0x4d2343);if(!_0xcc6a2c[_0x4ff3b3(0x1fa)])throw new Error('Read\x20access\x20denied:\x20'+_0xcc6a2c['reason']+'\x20('+_0xcc6a2c[_0x4ff3b3(0x225)]+')');try{const _0x4a6dce=await a0_0x4fab84['readdir'](_0x522a2e,{'withFileTypes':!![]}),_0x23e942=[];for(const _0x1f942a of _0x4a6dce){const _0x4e0b4c=a0_0x2eeb5d[_0x4ff3b3(0x202)](_0x522a2e,_0x1f942a[_0x4ff3b3(0x23a)]),_0x171090=await a0_0x4fab84['stat'](_0x4e0b4c);_0x23e942[_0x4ff3b3(0x1d7)]({'name':_0x1f942a[_0x4ff3b3(0x23a)],'type':_0x1f942a['isDirectory']()?_0x4ff3b3(0x1d1):'file','size':_0x1f942a[_0x4ff3b3(0x200)]()?_0x171090['size']:undefined,'lastModified':_0x171090['mtime']['toISOString'](),'permissions':_0x171090[_0x4ff3b3(0x227)],'isSymlink':_0x1f942a['isSymbolicLink']()});}const _0x4f3ed7=this['directoryAccessManager']['createRelativePath'](_0x522a2e,_0x4d2343);return{'success':!![],'action':_0x4ff3b3(0x23b),'directory':_0x4f3ed7,'fullPath':_0x522a2e,'contents':_0x23e942,'totalItems':_0x23e942[_0x4ff3b3(0x222)],'directories':_0x23e942['filter'](_0x53fb10=>_0x53fb10['type']==='directory')[_0x4ff3b3(0x222)],'files':_0x23e942['filter'](_0xe8773f=>_0xe8773f[_0x4ff3b3(0x1c7)]==='file')[_0x4ff3b3(0x222)],'message':'Listed\x20'+_0x23e942['length']+_0x4ff3b3(0x1e4)+_0x270116};}catch(_0x4c367a){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x270116+':\x20'+_0x4c367a['message']);}}async[a0_0x2f6a18(0x1a7)](_0x3e04a6,_0x2e4abb){const _0x1f216c=a0_0x2f6a18,_0xb5fa63=this['directoryAccessManager'][_0x1f216c(0x1fe)](_0x2e4abb),_0xde7e2=this['resolvePath'](_0x3e04a6,_0xb5fa63),_0x424e96=this[_0x1f216c(0x20b)][_0x1f216c(0x23d)](_0xde7e2,_0x2e4abb);if(!_0x424e96['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x424e96['reason']+'\x20('+_0x424e96['path']+')');try{const _0xf200cf=await a0_0x4fab84[_0x1f216c(0x218)](_0xde7e2),_0x4a2378=this['directoryAccessManager'][_0x1f216c(0x1de)](_0xde7e2,_0x2e4abb);return{'success':!![],'action':'exists','filePath':_0x4a2378,'fullPath':_0xde7e2,'exists':!![],'type':_0xf200cf[_0x1f216c(0x23e)]()?'directory':_0x1f216c(0x20d),'message':_0x3e04a6+_0x1f216c(0x210)+(_0xf200cf[_0x1f216c(0x23e)]()?'directory':'file')};}catch(_0x4da4e5){if(_0x4da4e5['code']==='ENOENT'){const _0x634622=this['directoryAccessManager']['createRelativePath'](_0xde7e2,_0x2e4abb);return{'success':!![],'action':'exists','filePath':_0x634622,'fullPath':_0xde7e2,'exists':![],'message':_0x3e04a6+'\x20does\x20not\x20exist'};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x3e04a6+':\x20'+_0x4da4e5[_0x1f216c(0x228)]);}}async[a0_0x2f6a18(0x1c5)](_0x5d64f2,_0x4c2d41){const _0x1562a6=a0_0x2f6a18,_0x358e50=this['directoryAccessManager']['getWorkingDirectory'](_0x4c2d41),_0x41e3a0=this[_0x1562a6(0x22a)](_0x5d64f2,_0x358e50),_0x596f6=this['directoryAccessManager']['validateReadAccess'](_0x41e3a0,_0x4c2d41);if(!_0x596f6['allowed'])throw new Error(_0x1562a6(0x1e2)+_0x596f6['reason']+'\x20('+_0x596f6['path']+')');try{const _0x5cc6cf=await a0_0x4fab84['stat'](_0x41e3a0),_0x48bce9=this['directoryAccessManager'][_0x1562a6(0x1de)](_0x41e3a0,_0x4c2d41);return{'success':!![],'action':'stats','filePath':_0x48bce9,'fullPath':_0x41e3a0,'stats':{'size':_0x5cc6cf['size'],'type':_0x5cc6cf[_0x1562a6(0x23e)]()?_0x1562a6(0x1d1):'file','lastModified':_0x5cc6cf[_0x1562a6(0x1e5)]['toISOString'](),'lastAccessed':_0x5cc6cf['atime'][_0x1562a6(0x1f9)](),'created':_0x5cc6cf['birthtime'][_0x1562a6(0x1f9)](),'permissions':_0x5cc6cf['mode'],'isSymlink':_0x5cc6cf[_0x1562a6(0x212)]()},'message':'Retrieved\x20stats\x20for\x20'+_0x5d64f2};}catch(_0x16c520){throw new Error(_0x1562a6(0x1c4)+_0x5d64f2+':\x20'+_0x16c520['message']);}}[a0_0x2f6a18(0x22a)](_0x832adf,_0x675949){if(a0_0x2eeb5d['isAbsolute'](_0x832adf))return a0_0x2eeb5d['normalize'](_0x832adf);return a0_0x2eeb5d['resolve'](_0x675949,_0x832adf);}[a0_0x2f6a18(0x1d3)](_0x321b2f,_0xe6c54e,_0x4cb755='read'){const _0x403083=a0_0x2f6a18,_0x3d554c=_0x4cb755==='write'?this[_0x403083(0x20b)][_0x403083(0x221)](_0x321b2f,_0xe6c54e):this[_0x403083(0x20b)]['validateReadAccess'](_0x321b2f,_0xe6c54e);if(!_0x3d554c['allowed'])throw new Error(_0x4cb755+_0x403083(0x238)+_0x3d554c[_0x403083(0x1b1)]+'\x20('+_0x3d554c[_0x403083(0x225)]+')');return _0x3d554c;}['isAllowedFileExtension'](_0x3fa9bd){const _0x284b1b=a0_0x2f6a18,_0x4bb6d6=a0_0x2eeb5d['extname'](_0x3fa9bd)[_0x284b1b(0x1ac)]();if(this['blockedExtensions']['includes'](_0x4bb6d6))return![];if(this['allowedExtensions']&&!this['allowedExtensions']['includes'](_0x4bb6d6))return![];return!![];}[a0_0x2f6a18(0x1d2)](_0x4abbee,_0x35004c,_0x334c45){const _0x5bb10d=a0_0x2f6a18,_0xdbba8e={'timestamp':new Date()[_0x5bb10d(0x1f9)](),'agentId':_0x334c45,'action':_0x4abbee['type'],'filePath':_0x4abbee[_0x5bb10d(0x1f0)]||_0x4abbee['outputPath']||_0x4abbee[_0x5bb10d(0x1d1)],'success':_0x35004c['success'],'size':_0x35004c['size']};this['operationHistory'][_0x5bb10d(0x1d7)](_0xdbba8e),this[_0x5bb10d(0x1e7)]['length']>0xc8&&(this[_0x5bb10d(0x1e7)]=this[_0x5bb10d(0x1e7)][_0x5bb10d(0x1fd)](-0xc8));}[a0_0x2f6a18(0x224)](){const _0x2b0abe=a0_0x2f6a18;return[_0x2b0abe(0x1da),_0x2b0abe(0x1f2),_0x2b0abe(0x1f1),_0x2b0abe(0x21c),_0x2b0abe(0x223),_0x2b0abe(0x217),_0x2b0abe(0x22e),'list',_0x2b0abe(0x201),'stats'];}[a0_0x2f6a18(0x209)](){const _0x146848=a0_0x2f6a18;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x146848(0x224)]()},'filePath':{'type':_0x146848(0x1c3)},'outputPath':{'type':'string'},'sourcePath':{'type':_0x146848(0x1c3)},'destPath':{'type':'string'},'directory':{'type':_0x146848(0x1c3)},'content':{'type':'string'},'encoding':{'type':_0x146848(0x1c3)},'createDirs':{'type':_0x146848(0x203)}},'required':[_0x146848(0x1c7)]}}},'required':[_0x146848(0x23f)]};}['getOperationHistory'](_0x48a98e=null){const _0x2d41cb=a0_0x2f6a18;if(_0x48a98e)return this[_0x2d41cb(0x1e7)]['filter'](_0x229b92=>_0x229b92['agentId']===_0x48a98e);return[...this['operationHistory']];}}export default FileSystemTool;
|
|
1
|
+
const a0_0x56928e=a0_0x66da;(function(_0x180b51,_0x162ce1){const _0x564279=a0_0x66da,_0xfd7eb7=_0x180b51();while(!![]){try{const _0x53c17a=-parseInt(_0x564279(0x1ac))/0x1+parseInt(_0x564279(0x1b9))/0x2+parseInt(_0x564279(0x1b1))/0x3+parseInt(_0x564279(0x1b5))/0x4*(-parseInt(_0x564279(0x1d1))/0x5)+-parseInt(_0x564279(0x21b))/0x6+-parseInt(_0x564279(0x218))/0x7+parseInt(_0x564279(0x18f))/0x8;if(_0x53c17a===_0x162ce1)break;else _0xfd7eb7['push'](_0xfd7eb7['shift']());}catch(_0x49af0f){_0xfd7eb7['push'](_0xfd7eb7['shift']());}}}(a0_0x465f,0xa1c03));import{BaseTool}from'./baseTool.js';import a0_0x1f0f77 from'../utilities/tagParser.js';import a0_0x393cbc from'../utilities/directoryAccessManager.js';import a0_0x480df1 from'fs/promises';import a0_0x22f23d from'path';function a0_0x66da(_0x1a6e5c,_0x218d27){_0x1a6e5c=_0x1a6e5c-0x184;const _0x465f0d=a0_0x465f();let _0x66da4d=_0x465f0d[_0x1a6e5c];if(a0_0x66da['sYoKhZ']===undefined){var _0x431eab=function(_0x2d1a16){const _0x53d4e0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f0f77='',_0x393cbc='';for(let _0x480df1=0x0,_0x22f23d,_0xf4f7c,_0x2f75be=0x0;_0xf4f7c=_0x2d1a16['charAt'](_0x2f75be++);~_0xf4f7c&&(_0x22f23d=_0x480df1%0x4?_0x22f23d*0x40+_0xf4f7c:_0xf4f7c,_0x480df1++%0x4)?_0x1f0f77+=String['fromCharCode'](0xff&_0x22f23d>>(-0x2*_0x480df1&0x6)):0x0){_0xf4f7c=_0x53d4e0['indexOf'](_0xf4f7c);}for(let _0x247ed4=0x0,_0x21e727=_0x1f0f77['length'];_0x247ed4<_0x21e727;_0x247ed4++){_0x393cbc+='%'+('00'+_0x1f0f77['charCodeAt'](_0x247ed4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x393cbc);};a0_0x66da['ZHPgjy']=_0x431eab,a0_0x66da['MytUEN']={},a0_0x66da['sYoKhZ']=!![];}const _0x4baf65=_0x465f0d[0x0],_0x169d3f=_0x1a6e5c+_0x4baf65,_0x27ae02=a0_0x66da['MytUEN'][_0x169d3f];return!_0x27ae02?(_0x66da4d=a0_0x66da['ZHPgjy'](_0x66da4d),a0_0x66da['MytUEN'][_0x169d3f]=_0x66da4d):_0x66da4d=_0x27ae02,_0x66da4d;}import a0_0xf4f7c from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x2f75be={},_0x247ed4=null){const _0x3d2783=a0_0x66da;super(_0x2f75be,_0x247ed4),this['requiresProject']=!![],this[_0x3d2783(0x20f)]=![],this[_0x3d2783(0x1db)]=_0x2f75be['timeout']||0x7530,this['maxConcurrentOperations']=_0x2f75be['maxConcurrentOperations']||0x5,this[_0x3d2783(0x1c4)]=_0x2f75be[_0x3d2783(0x1c4)]||SYSTEM_DEFAULTS[_0x3d2783(0x216)],this[_0x3d2783(0x1d2)]=_0x2f75be[_0x3d2783(0x1d2)]||null,this['blockedExtensions']=_0x2f75be[_0x3d2783(0x185)]||['.exe','.bat',_0x3d2783(0x1bc),'.scr',_0x3d2783(0x1cd)],this['allowedDirectories']=_0x2f75be[_0x3d2783(0x1f8)]||null,this['operationHistory']=[],this[_0x3d2783(0x1c5)]=new a0_0x393cbc(_0x2f75be,_0x247ed4);}['getDescription'](){const _0x26b53e=a0_0x66da;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aCRITICAL:\x20Both\x20XML\x20and\x20JSON\x20formats\x20are\x20fully\x20supported.\x20When\x20using\x20XML\x20format,\x20commands\x20are\x20automatically\x20converted\x20to\x20the\x20appropriate\x20structure\x20internally\x20-\x20you\x20don\x27t\x20need\x20to\x20manually\x20wrap\x20them\x20in\x20an\x20actions\x20array.\x0a\x0aUSAGE\x20-\x20TWO\x20FORMATS\x20SUPPORTED:\x0a\x0aFORMAT\x201\x20-\x20XML\x20STYLE\x20(Recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22src/index.js\x22\x20/>\x0a<write\x20output-path=\x22src/components/Button.js\x22>\x0aconst\x20Button\x20=\x20()\x20=>\x20{\x0a\x20\x20return\x20<button>Click\x20me</button>;\x0a};\x0aexport\x20default\x20Button;\x0a</write>\x0a[/tool]\x0a\x0aFORMAT\x202\x20-\x20JSON\x20STYLE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x20\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x20\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22const\x20Button\x20=\x20()\x20=>\x20{\x20return\x20<button>Click\x20me</button>;\x20};\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20\x0a-\x20Use\x20either\x20format\x20consistently.\x20Do\x20NOT\x20mix\x20formats\x20in\x20a\x20single\x20command.\x0a-\x20XML\x20format\x20is\x20recommended\x20for\x20single\x20operations\x20and\x20better\x20readability\x0a-\x20JSON\x20format\x20is\x20recommended\x20for\x20complex\x20multi-action\x20operations\x0a-\x20Both\x20formats\x20work\x20equally\x20well\x20and\x20produce\x20the\x20same\x20results\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x0a-\x20write:\x20Write\x20content\x20to\x20file\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x0a-\x20delete:\x20Delete\x20a\x20file\x0a-\x20copy:\x20Copy\x20file\x20from\x20source\x20to\x20destination\x0a-\x20move:\x20Move/rename\x20file\x0a-\x20create-dir:\x20Create\x20directory\x0a-\x20list:\x20List\x20directory\x20contents\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20read\x0a-\x20output-path:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20source-path:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20dest-path:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20directory\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20create-dirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aSIMPLE\x20FILE\x20CREATION\x20(XML\x20format\x20-\x20recommended):\x0a[tool\x20id=\x22filesystem\x22]\x0a<write\x20output-path=\x22hello.c\x22>\x0a#include\x20<stdio.h>\x0a\x0aint\x20main()\x20{\x0a\x20\x20\x20\x20printf(\x22Hello,\x20World!\x5cn\x22);\x0a\x20\x20\x20\x20return\x200;\x0a}\x0a</write>\x0a[/tool]\x0a\x0aREADING\x20FILES\x20(XML\x20format):\x0a[tool\x20id=\x22filesystem\x22]\x0a<read\x20file-path=\x22package.json\x22\x20/>\x0a[/tool]\x0a\x0aMULTIPLE\x20OPERATIONS\x20(JSON\x20format\x20recommended):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22read\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22write\x22,\x0a\x20\x20\x20\x20\x20\x20\x22outputPath\x22:\x20\x22src/backup.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22content\x22:\x20\x22//\x20Backup\x20file\x5cnconsole.log(\x27backup\x27);\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aOTHER\x20XML\x20EXAMPLES:\x0a[tool\x20id=\x22filesystem\x22]\x0a<copy\x20source-path=\x22template.js\x22\x20dest-path=\x22src/component.js\x22\x20/>\x0a<create-dir\x20directory=\x22src/components/ui\x22\x20/>\x0a<list\x20directory=\x22src\x22\x20/>\x0a[/tool]\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x26b53e(0x214)](this['maxFileSize']/0x400/0x400)+'MB)\x0a-\x20Dangerous\x20file\x20types\x20blocked\x0a-\x20Path\x20traversal\x20protection\x0a-\x20Backup\x20created\x20for\x20destructive\x20operations\x0a\x0aENCODING\x20SUPPORT:\x0a-\x20utf8\x20(default)\x0a-\x20ascii\x0a-\x20base64\x0a-\x20binary\x0a-\x20hex\x0a\x20\x20\x20\x20';}[a0_0x56928e(0x1d8)](_0x21e727){const _0x12f302=a0_0x56928e;try{const _0x5e9c5a={},_0xcee7a9=[];this[_0x12f302(0x1ba)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x21e727['length'],'contentPreview':_0x21e727[_0x12f302(0x1bd)](0x0,0xc8)});const _0x340fda=[_0x12f302(0x1fd),'delete','copy','move',_0x12f302(0x1a7),'list',_0x12f302(0x201),'stats',_0x12f302(0x1c3)];for(const _0x1ae523 of _0x340fda){const _0x1e90ef=a0_0x1f0f77[_0x12f302(0x19c)](_0x21e727,_0x1ae523);for(const _0x1e7229 of _0x1e90ef){const _0x2a677a={'type':_0x1ae523,..._0x1e7229[_0x12f302(0x184)]};_0x2a677a[_0x12f302(0x213)]&&(_0x2a677a[_0x12f302(0x1bb)]=_0x2a677a[_0x12f302(0x213)],delete _0x2a677a['file-path']),_0x2a677a['output-path']&&(_0x2a677a['outputPath']=_0x2a677a['output-path'],delete _0x2a677a['output-path']),_0x2a677a['source-path']&&(_0x2a677a['sourcePath']=_0x2a677a[_0x12f302(0x1be)],delete _0x2a677a[_0x12f302(0x1be)]),_0x2a677a['dest-path']&&(_0x2a677a['destPath']=_0x2a677a['dest-path'],delete _0x2a677a[_0x12f302(0x1f9)]),_0x2a677a[_0x12f302(0x1aa)]&&(_0x2a677a[_0x12f302(0x217)]=_0x2a677a[_0x12f302(0x1aa)]===_0x12f302(0x1e9),delete _0x2a677a[_0x12f302(0x1aa)]),_0xcee7a9['push'](_0x2a677a);}}const _0x11b4cf=_0x21e727['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x22953b of _0x11b4cf){const _0x38383d=new a0_0x1f0f77(),_0x22d39d=_0x38383d['parseAttributes'](_0x22953b[0x1]),_0x1bea93=_0x22953b[0x2]['trim'](),_0x24f3ee={'type':'write','content':_0x1bea93,..._0x22d39d};_0x24f3ee['output-path']&&(_0x24f3ee[_0x12f302(0x1e5)]=_0x24f3ee[_0x12f302(0x1c7)],delete _0x24f3ee['output-path']),_0x24f3ee['create-dirs']&&(_0x24f3ee['createDirs']=_0x24f3ee['create-dirs']==='true',delete _0x24f3ee['create-dirs']),_0xcee7a9['push'](_0x24f3ee);}const _0x57e12b=_0x21e727['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x233764 of _0x57e12b){const _0x4c2aa5=new a0_0x1f0f77(),_0x55ff68=_0x4c2aa5[_0x12f302(0x1a3)](_0x233764[0x1]),_0x2be7c4=_0x233764[0x2]['trim'](),_0x401892={'type':_0x12f302(0x1c3),'content':_0x2be7c4,..._0x55ff68};_0x401892['file-path']&&(_0x401892['filePath']=_0x401892[_0x12f302(0x213)],delete _0x401892[_0x12f302(0x213)]),_0xcee7a9['push'](_0x401892);}return _0x5e9c5a[_0x12f302(0x1da)]=_0xcee7a9,_0x5e9c5a[_0x12f302(0x1e3)]=_0x21e727['trim'](),this[_0x12f302(0x1ba)]?.['debug'](_0x12f302(0x211),{'totalActions':_0xcee7a9['length'],'actionTypes':_0xcee7a9['map'](_0x1924cc=>_0x1924cc['type']),'actions':_0xcee7a9[_0x12f302(0x1a4)](_0xe0b282=>({'type':_0xe0b282['type'],'filePath':_0xe0b282[_0x12f302(0x1bb)],'outputPath':_0xe0b282['outputPath'],'hasContent':!!_0xe0b282['content']}))}),_0x5e9c5a;}catch(_0x4ca0e8){throw new Error(_0x12f302(0x1f0)+_0x4ca0e8[_0x12f302(0x18b)]);}}['getRequiredParameters'](){const _0x4d0da9=a0_0x56928e;return[_0x4d0da9(0x1da)];}['customValidateParameters'](_0x26f50e){const _0x567e7e=a0_0x56928e,_0x4de645=[];if(!_0x26f50e['actions']||!Array['isArray'](_0x26f50e[_0x567e7e(0x1da)])||_0x26f50e['actions'][_0x567e7e(0x186)]===0x0)_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x1cf));else for(const [_0x221697,_0x2a2170]of _0x26f50e[_0x567e7e(0x1da)]['entries']()){if(!_0x2a2170['type']){_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x21d));continue;}switch(_0x2a2170['type']){case'read':case _0x567e7e(0x1c0):case'exists':case'stats':!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x2a2170[_0x567e7e(0x1f3)]);break;case _0x567e7e(0x1e0):!_0x2a2170[_0x567e7e(0x1e5)]&&_0x4de645['push']('Action\x20'+(_0x221697+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170[_0x567e7e(0x195)]!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20write');break;case _0x567e7e(0x1c3):!_0x2a2170[_0x567e7e(0x1bb)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1a6));!_0x2a2170[_0x567e7e(0x195)]&&_0x2a2170['content']!==''&&_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case'copy':case'move':!_0x2a2170[_0x567e7e(0x1ea)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);!_0x2a2170[_0x567e7e(0x188)]&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x2a2170['type']);break;case'create-dir':case _0x567e7e(0x206):!_0x2a2170['directory']&&_0x4de645['push'](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x212)+_0x2a2170[_0x567e7e(0x1f3)]);break;default:_0x4de645[_0x567e7e(0x1a9)](_0x567e7e(0x210)+(_0x221697+0x1)+_0x567e7e(0x1ee)+_0x2a2170['type']);}_0x2a2170['filePath']&&!this[_0x567e7e(0x1f7)](_0x2a2170[_0x567e7e(0x1bb)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+':\x20file\x20type\x20not\x20allowed:\x20'+a0_0x22f23d['extname'](_0x2a2170[_0x567e7e(0x1bb)])),_0x2a2170[_0x567e7e(0x1e5)]&&!this['isAllowedFileExtension'](_0x2a2170[_0x567e7e(0x1e5)])&&_0x4de645[_0x567e7e(0x1a9)]('Action\x20'+(_0x221697+0x1)+_0x567e7e(0x1dd)+a0_0x22f23d[_0x567e7e(0x18d)](_0x2a2170['outputPath']));}return{'valid':_0x4de645['length']===0x0,'errors':_0x4de645};}async[a0_0x56928e(0x1c6)](_0x3ccd8f,_0x4dd8af){const _0x2cc37d=a0_0x56928e;if(!_0x3ccd8f||typeof _0x3ccd8f!=='object')throw new Error(_0x2cc37d(0x1d3));const {actions:_0x488d92}=_0x3ccd8f;if(!_0x488d92)throw new Error(_0x2cc37d(0x197)+JSON['stringify'](Object['keys'](_0x3ccd8f)));if(!Array[_0x2cc37d(0x1d9)](_0x488d92))throw new Error(_0x2cc37d(0x1ff)+typeof _0x488d92);if(_0x488d92[_0x2cc37d(0x186)]===0x0)throw new Error(_0x2cc37d(0x1cc));const {projectDir:_0x459181,agentId:_0x53844e,directoryAccess:_0x5baa16}=_0x4dd8af,_0x4bd31f=_0x5baa16||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x459181||process[_0x2cc37d(0x200)](),'writeEnabledDirectories':[_0x459181||process[_0x2cc37d(0x200)]()],'restrictToProject':!![]});_0x5baa16&&_0x5baa16['workingDirectory']?(console['log'](_0x2cc37d(0x1b8),_0x5baa16['workingDirectory']),console[_0x2cc37d(0x1e2)](_0x2cc37d(0x1fb),JSON['stringify'](_0x5baa16,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x459181||process[_0x2cc37d(0x200)]()),console[_0x2cc37d(0x1e2)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5baa16),console['log'](_0x2cc37d(0x1e6),_0x459181));const _0x3c6d99=[];for(const _0x55367b of _0x488d92){try{let _0x49d0ba;switch(_0x55367b['type']){case _0x2cc37d(0x1fd):_0x49d0ba=await this[_0x2cc37d(0x1e1)](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1e0):_0x49d0ba=await this['writeFile'](_0x55367b[_0x2cc37d(0x1e5)],_0x55367b['content'],_0x4bd31f,{'encoding':_0x55367b[_0x2cc37d(0x1ca)],'createDirs':_0x55367b['createDirs']});break;case _0x2cc37d(0x1c3):_0x49d0ba=await this['appendToFile'](_0x55367b[_0x2cc37d(0x1bb)],_0x55367b[_0x2cc37d(0x195)],_0x4bd31f,_0x55367b['encoding']);break;case _0x2cc37d(0x1c0):_0x49d0ba=await this[_0x2cc37d(0x1ce)](_0x55367b['filePath'],_0x4bd31f);break;case _0x2cc37d(0x1e8):_0x49d0ba=await this[_0x2cc37d(0x192)](_0x55367b['sourcePath'],_0x55367b['destPath'],_0x4bd31f);break;case _0x2cc37d(0x198):_0x49d0ba=await this['moveFile'](_0x55367b[_0x2cc37d(0x1ea)],_0x55367b[_0x2cc37d(0x188)],_0x4bd31f);break;case _0x2cc37d(0x1a7):_0x49d0ba=await this['createDirectory'](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x206):_0x49d0ba=await this[_0x2cc37d(0x1fa)](_0x55367b[_0x2cc37d(0x1af)],_0x4bd31f);break;case _0x2cc37d(0x201):_0x49d0ba=await this['checkExists'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;case _0x2cc37d(0x1bf):_0x49d0ba=await this['getFileStats'](_0x55367b[_0x2cc37d(0x1bb)],_0x4bd31f);break;default:throw new Error(_0x2cc37d(0x1a8)+_0x55367b['type']);}_0x3c6d99[_0x2cc37d(0x1a9)](_0x49d0ba),this['addToHistory'](_0x55367b,_0x49d0ba,_0x4dd8af[_0x2cc37d(0x1b0)]);}catch(_0x2db287){const _0x46da5f={'success':![],'action':_0x55367b['type'],'error':_0x2db287['message'],'filePath':_0x55367b[_0x2cc37d(0x1bb)]||_0x55367b[_0x2cc37d(0x1e5)]||_0x55367b['directory']};_0x3c6d99[_0x2cc37d(0x1a9)](_0x46da5f),this[_0x2cc37d(0x1f6)](_0x55367b,_0x46da5f,_0x4dd8af['agentId']);}}return{'success':!![],'actions':_0x3c6d99,'executedActions':_0x488d92['length'],'toolUsed':_0x2cc37d(0x1d6)};}async[a0_0x56928e(0x1e1)](_0x54fbb5,_0x190016,_0x2f8663=a0_0x56928e(0x1a0)){const _0x3ba0d0=a0_0x56928e,_0x123995=this[_0x3ba0d0(0x1c5)]['getWorkingDirectory'](_0x190016),_0x483128=this[_0x3ba0d0(0x1ec)](_0x54fbb5,_0x123995),_0x26d970=this['directoryAccessManager']['validateReadAccess'](_0x483128,_0x190016);if(!_0x26d970['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x26d970['reason']+'\x20('+_0x26d970[_0x3ba0d0(0x1f1)]+')');try{const _0x4b9c43=await a0_0x480df1['stat'](_0x483128);if(_0x4b9c43[_0x3ba0d0(0x1cb)]>this[_0x3ba0d0(0x1c4)])throw new Error(_0x3ba0d0(0x1b4)+_0x4b9c43['size']+_0x3ba0d0(0x1c2)+this['maxFileSize']+')');const _0x3c6882=await a0_0x480df1['readFile'](_0x483128,_0x2f8663);return{'success':!![],'action':'read','filePath':this['directoryAccessManager']['createRelativePath'](_0x483128,_0x190016),'content':_0x3c6882,'size':_0x4b9c43[_0x3ba0d0(0x1cb)],'encoding':_0x2f8663,'lastModified':_0x4b9c43['mtime'][_0x3ba0d0(0x18a)](),'message':'Read\x20'+_0x4b9c43['size']+'\x20bytes\x20from\x20'+_0x54fbb5};}catch(_0x2327e9){throw new Error(_0x3ba0d0(0x189)+_0x54fbb5+':\x20'+_0x2327e9[_0x3ba0d0(0x18b)]);}}async[a0_0x56928e(0x1d4)](_0x225a3b,_0x2c3eaa,_0x3a3614,_0x3613a9={}){const _0x4f99d4=a0_0x56928e,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x3613a9,_0x3f4a44=this[_0x4f99d4(0x1c5)]['getWorkingDirectory'](_0x3a3614),_0x39c853=this['resolvePath'](_0x225a3b,_0x3f4a44),_0x2e8ebc=this[_0x4f99d4(0x1c5)]['validateWriteAccess'](_0x39c853,_0x3a3614);if(!_0x2e8ebc['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x2e8ebc[_0x4f99d4(0x1e7)]+'\x20('+_0x2e8ebc['path']+')');try{const _0x28f7db=Buffer[_0x4f99d4(0x202)](_0x2c3eaa,encoding);if(_0x28f7db>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x28f7db+_0x4f99d4(0x1c2)+this['maxFileSize']+')');if(createDirs){const _0x40b17a=a0_0x22f23d['dirname'](_0x39c853);await a0_0x480df1[_0x4f99d4(0x1e4)](_0x40b17a,{'recursive':!![]});}let _0x552c5f=null;try{await a0_0x480df1[_0x4f99d4(0x1fc)](_0x39c853),_0x552c5f=_0x39c853+_0x4f99d4(0x204)+Date['now'](),await a0_0x480df1['copyFile'](_0x39c853,_0x552c5f);}catch{}await a0_0x480df1[_0x4f99d4(0x1d4)](_0x39c853,_0x2c3eaa,encoding);const _0x1760d9=await a0_0x480df1['stat'](_0x39c853),_0x397df1=this['directoryAccessManager'][_0x4f99d4(0x209)](_0x39c853,_0x3a3614);return{'success':!![],'action':_0x4f99d4(0x1e0),'outputPath':_0x397df1,'fullPath':_0x39c853,'size':_0x1760d9[_0x4f99d4(0x1cb)],'encoding':encoding,'backupPath':_0x552c5f?this[_0x4f99d4(0x1c5)]['createRelativePath'](_0x552c5f,_0x3a3614):null,'backupFullPath':_0x552c5f||null,'message':_0x4f99d4(0x1df)+_0x1760d9['size']+'\x20bytes\x20to\x20'+_0x39c853};}catch(_0x2ef7ca){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x39c853+':\x20'+_0x2ef7ca['message']);}}async['appendToFile'](_0x5791de,_0x41fb67,_0x1482e1,_0x8a4a8d='utf8'){const _0x5119b4=a0_0x56928e,_0xf2c522=this[_0x5119b4(0x1c5)]['getWorkingDirectory'](_0x1482e1),_0x1f7d1f=this[_0x5119b4(0x1ec)](_0x5791de,_0xf2c522),_0x4eb2d5=this[_0x5119b4(0x1c5)][_0x5119b4(0x19b)](_0x1f7d1f,_0x1482e1);if(!_0x4eb2d5[_0x5119b4(0x207)])throw new Error(_0x5119b4(0x1b3)+_0x4eb2d5['reason']+'\x20('+_0x4eb2d5['path']+')');try{let _0x576fef=0x0;try{const _0x4e8775=await a0_0x480df1['stat'](_0x1f7d1f);_0x576fef=_0x4e8775[_0x5119b4(0x1cb)];}catch{}const _0x2ccb8a=Buffer['byteLength'](_0x41fb67,_0x8a4a8d);if(_0x576fef+_0x2ccb8a>this['maxFileSize'])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x576fef+_0x2ccb8a)+'\x20bytes\x20(max\x20'+this[_0x5119b4(0x1c4)]+')');await a0_0x480df1[_0x5119b4(0x1c9)](_0x1f7d1f,_0x41fb67,_0x8a4a8d);const _0x4bda2b=await a0_0x480df1['stat'](_0x1f7d1f),_0x483a29=this[_0x5119b4(0x1c5)]['createRelativePath'](_0x1f7d1f,_0x1482e1);return{'success':!![],'action':_0x5119b4(0x1c3),'filePath':_0x483a29,'fullPath':_0x1f7d1f,'appendedBytes':_0x2ccb8a,'totalSize':_0x4bda2b[_0x5119b4(0x1cb)],'encoding':_0x8a4a8d,'message':_0x5119b4(0x208)+_0x2ccb8a+_0x5119b4(0x194)+_0x1f7d1f};}catch(_0x3467c8){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0x1f7d1f+':\x20'+_0x3467c8[_0x5119b4(0x18b)]);}}async[a0_0x56928e(0x1ce)](_0x4dc5f9,_0x14a9a5){const _0x1707ce=a0_0x56928e,_0x39737a=this['directoryAccessManager'][_0x1707ce(0x190)](_0x14a9a5),_0x271971=this[_0x1707ce(0x1ec)](_0x4dc5f9,_0x39737a),_0x143005=this[_0x1707ce(0x1c5)][_0x1707ce(0x19b)](_0x271971,_0x14a9a5);if(!_0x143005[_0x1707ce(0x207)])throw new Error('Delete\x20access\x20denied:\x20'+_0x143005['reason']+'\x20('+_0x143005[_0x1707ce(0x1f1)]+')');try{const _0x14788e=await a0_0x480df1[_0x1707ce(0x1c1)](_0x271971),_0x3a718b=_0x271971+_0x1707ce(0x187)+Date[_0x1707ce(0x1f4)]();await a0_0x480df1[_0x1707ce(0x192)](_0x271971,_0x3a718b),await a0_0x480df1['unlink'](_0x271971);const _0x5e7fef=this[_0x1707ce(0x1c5)]['createRelativePath'](_0x271971,_0x14a9a5),_0x49717a=this[_0x1707ce(0x1c5)][_0x1707ce(0x209)](_0x3a718b,_0x14a9a5);return{'success':!![],'action':_0x1707ce(0x1c0),'filePath':_0x5e7fef,'fullPath':_0x271971,'size':_0x14788e[_0x1707ce(0x1cb)],'backupPath':_0x49717a,'backupFullPath':_0x3a718b,'message':_0x1707ce(0x1f2)+_0x271971+_0x1707ce(0x1a5)};}catch(_0x5d2d2a){throw new Error(_0x1707ce(0x1eb)+_0x271971+':\x20'+_0x5d2d2a[_0x1707ce(0x18b)]);}}async['copyFile'](_0x2136ae,_0x312b06,_0x121082){const _0x3f9872=a0_0x56928e,_0x2c280e=this[_0x3f9872(0x1c5)]['getWorkingDirectory'](_0x121082),_0x2875ec=this[_0x3f9872(0x1ec)](_0x2136ae,_0x2c280e),_0x5d8253=this[_0x3f9872(0x1ec)](_0x312b06,_0x2c280e),_0x36f1eb=this['directoryAccessManager'][_0x3f9872(0x19f)](_0x2875ec,_0x121082);if(!_0x36f1eb[_0x3f9872(0x207)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x36f1eb['reason']+'\x20('+_0x36f1eb[_0x3f9872(0x1f1)]+')');const _0x4c5502=this[_0x3f9872(0x1c5)]['validateWriteAccess'](_0x5d8253,_0x121082);if(!_0x4c5502[_0x3f9872(0x207)])throw new Error(_0x3f9872(0x1c8)+_0x4c5502[_0x3f9872(0x1e7)]+'\x20('+_0x4c5502['path']+')');try{const _0x13f604=await a0_0x480df1[_0x3f9872(0x1c1)](_0x2875ec);if(_0x13f604['size']>this['maxFileSize'])throw new Error('Source\x20file\x20too\x20large:\x20'+_0x13f604['size']+_0x3f9872(0x1dc));const _0x55868e=a0_0x22f23d['dirname'](_0x5d8253);await a0_0x480df1[_0x3f9872(0x1e4)](_0x55868e,{'recursive':!![]}),await a0_0x480df1['copyFile'](_0x2875ec,_0x5d8253);const _0x42b2e5=this[_0x3f9872(0x1c5)]['createRelativePath'](_0x2875ec,_0x121082),_0x1345a4=this['directoryAccessManager'][_0x3f9872(0x209)](_0x5d8253,_0x121082);return{'success':!![],'action':'copy','sourcePath':_0x42b2e5,'destPath':_0x1345a4,'sourceFullPath':_0x2875ec,'destFullPath':_0x5d8253,'size':_0x13f604['size'],'message':'Copied\x20'+_0x2875ec+'\x20to\x20'+_0x5d8253};}catch(_0x490e1a){throw new Error(_0x3f9872(0x203)+_0x2875ec+_0x3f9872(0x1ed)+_0x5d8253+':\x20'+_0x490e1a[_0x3f9872(0x18b)]);}}async[a0_0x56928e(0x1b7)](_0x26a36e,_0xd0c458,_0x336e21){const _0x57874e=a0_0x56928e,_0x1f3f9f=this[_0x57874e(0x1c5)]['getWorkingDirectory'](_0x336e21),_0x14c61a=this['resolvePath'](_0x26a36e,_0x1f3f9f),_0x1767e0=this['resolvePath'](_0xd0c458,_0x1f3f9f),_0x311c7b=this[_0x57874e(0x1c5)][_0x57874e(0x19f)](_0x14c61a,_0x336e21);if(!_0x311c7b[_0x57874e(0x207)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x311c7b['reason']+'\x20('+_0x311c7b[_0x57874e(0x1f1)]+')');const _0x42b719=this[_0x57874e(0x1c5)]['validateWriteAccess'](_0x1767e0,_0x336e21);if(!_0x42b719['allowed'])throw new Error(_0x57874e(0x219)+_0x42b719[_0x57874e(0x1e7)]+'\x20('+_0x42b719['path']+')');try{const _0x40911a=await a0_0x480df1['stat'](_0x14c61a),_0x57f163=a0_0x22f23d['dirname'](_0x1767e0);await a0_0x480df1[_0x57874e(0x1e4)](_0x57f163,{'recursive':!![]}),await a0_0x480df1[_0x57874e(0x19d)](_0x14c61a,_0x1767e0);const _0x1eb62a=this['directoryAccessManager']['createRelativePath'](_0x14c61a,_0x336e21),_0x549b14=this[_0x57874e(0x1c5)][_0x57874e(0x209)](_0x1767e0,_0x336e21);return{'success':!![],'action':'move','sourcePath':_0x1eb62a,'destPath':_0x549b14,'fullSourcePath':_0x14c61a,'fullDestPath':_0x1767e0,'size':_0x40911a['size'],'message':_0x57874e(0x1ae)+_0x26a36e+'\x20to\x20'+_0xd0c458};}catch(_0x4d7cef){throw new Error(_0x57874e(0x20c)+_0x26a36e+'\x20to\x20'+_0xd0c458+':\x20'+_0x4d7cef['message']);}}async[a0_0x56928e(0x20e)](_0x3cffa8,_0x338293){const _0x2075a9=a0_0x56928e,_0x48b66f=this['directoryAccessManager'][_0x2075a9(0x190)](_0x338293),_0x44becb=this['resolvePath'](_0x3cffa8,_0x48b66f),_0x1a6c77=this[_0x2075a9(0x1c5)]['validateWriteAccess'](_0x44becb,_0x338293);if(!_0x1a6c77['allowed'])throw new Error(_0x2075a9(0x1b3)+_0x1a6c77['reason']+'\x20('+_0x1a6c77[_0x2075a9(0x1f1)]+')');try{await a0_0x480df1['mkdir'](_0x44becb,{'recursive':!![]});const _0x3a24b8=this[_0x2075a9(0x1c5)][_0x2075a9(0x209)](_0x44becb,_0x338293);return{'success':!![],'action':_0x2075a9(0x1a7),'directory':_0x3a24b8,'fullPath':_0x44becb,'message':_0x2075a9(0x1ad)+_0x3cffa8};}catch(_0x130e3e){throw new Error(_0x2075a9(0x20d)+_0x3cffa8+':\x20'+_0x130e3e[_0x2075a9(0x18b)]);}}async['listDirectory'](_0x3e8863,_0x23c6e4){const _0x251d5b=a0_0x56928e,_0x2ee735=this[_0x251d5b(0x1c5)][_0x251d5b(0x190)](_0x23c6e4),_0x501ffa=this['resolvePath'](_0x3e8863,_0x2ee735),_0xffa5c=this['directoryAccessManager'][_0x251d5b(0x19f)](_0x501ffa,_0x23c6e4);if(!_0xffa5c[_0x251d5b(0x207)])throw new Error(_0x251d5b(0x1ef)+_0xffa5c['reason']+'\x20('+_0xffa5c[_0x251d5b(0x1f1)]+')');try{const _0x20e455=await a0_0x480df1[_0x251d5b(0x1a2)](_0x501ffa,{'withFileTypes':!![]}),_0x3f89fc=[];for(const _0x543bc7 of _0x20e455){const _0x10cba4=a0_0x22f23d[_0x251d5b(0x18c)](_0x501ffa,_0x543bc7['name']),_0x4cf3e4=await a0_0x480df1['stat'](_0x10cba4);_0x3f89fc['push']({'name':_0x543bc7['name'],'type':_0x543bc7['isDirectory']()?_0x251d5b(0x1af):'file','size':_0x543bc7[_0x251d5b(0x20a)]()?_0x4cf3e4['size']:undefined,'lastModified':_0x4cf3e4[_0x251d5b(0x1b2)]['toISOString'](),'permissions':_0x4cf3e4[_0x251d5b(0x1d7)],'isSymlink':_0x543bc7[_0x251d5b(0x1d5)]()});}const _0x36d46e=this['directoryAccessManager'][_0x251d5b(0x209)](_0x501ffa,_0x23c6e4);return{'success':!![],'action':_0x251d5b(0x206),'directory':_0x36d46e,'fullPath':_0x501ffa,'contents':_0x3f89fc,'totalItems':_0x3f89fc['length'],'directories':_0x3f89fc[_0x251d5b(0x1f5)](_0x4d0bae=>_0x4d0bae[_0x251d5b(0x1f3)]===_0x251d5b(0x1af))['length'],'files':_0x3f89fc[_0x251d5b(0x1f5)](_0x28928b=>_0x28928b[_0x251d5b(0x1f3)]==='file')[_0x251d5b(0x186)],'message':_0x251d5b(0x21a)+_0x3f89fc[_0x251d5b(0x186)]+'\x20items\x20in\x20'+_0x3e8863};}catch(_0x16e66a){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x3e8863+':\x20'+_0x16e66a['message']);}}async['checkExists'](_0xaf1a25,_0x3356aa){const _0x26d822=a0_0x56928e,_0x4ba57e=this[_0x26d822(0x1c5)][_0x26d822(0x190)](_0x3356aa),_0x293096=this[_0x26d822(0x1ec)](_0xaf1a25,_0x4ba57e),_0x51ee99=this['directoryAccessManager'][_0x26d822(0x19f)](_0x293096,_0x3356aa);if(!_0x51ee99['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x51ee99['reason']+'\x20('+_0x51ee99[_0x26d822(0x1f1)]+')');try{const _0x4acdbb=await a0_0x480df1['stat'](_0x293096),_0x5c7ddf=this['directoryAccessManager'][_0x26d822(0x209)](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x5c7ddf,'fullPath':_0x293096,'exists':!![],'type':_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a),'message':_0xaf1a25+'\x20exists\x20as\x20'+(_0x4acdbb[_0x26d822(0x1fe)]()?_0x26d822(0x1af):_0x26d822(0x19a))};}catch(_0x5667b3){if(_0x5667b3['code']===_0x26d822(0x193)){const _0x1ac484=this['directoryAccessManager']['createRelativePath'](_0x293096,_0x3356aa);return{'success':!![],'action':_0x26d822(0x201),'filePath':_0x1ac484,'fullPath':_0x293096,'exists':![],'message':_0xaf1a25+_0x26d822(0x1a1)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0xaf1a25+':\x20'+_0x5667b3['message']);}}async['getFileStats'](_0x319bf6,_0x316cf0){const _0x51d8b6=a0_0x56928e,_0x412bd9=this['directoryAccessManager'][_0x51d8b6(0x190)](_0x316cf0),_0x2431dd=this[_0x51d8b6(0x1ec)](_0x319bf6,_0x412bd9),_0x5689ba=this[_0x51d8b6(0x1c5)][_0x51d8b6(0x19f)](_0x2431dd,_0x316cf0);if(!_0x5689ba['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5689ba['reason']+'\x20('+_0x5689ba['path']+')');try{const _0x4d1f35=await a0_0x480df1[_0x51d8b6(0x1c1)](_0x2431dd),_0x4fdb28=this['directoryAccessManager'][_0x51d8b6(0x209)](_0x2431dd,_0x316cf0);return{'success':!![],'action':_0x51d8b6(0x1bf),'filePath':_0x4fdb28,'fullPath':_0x2431dd,'stats':{'size':_0x4d1f35[_0x51d8b6(0x1cb)],'type':_0x4d1f35['isDirectory']()?_0x51d8b6(0x1af):_0x51d8b6(0x19a),'lastModified':_0x4d1f35['mtime'][_0x51d8b6(0x18a)](),'lastAccessed':_0x4d1f35['atime']['toISOString'](),'created':_0x4d1f35['birthtime'][_0x51d8b6(0x18a)](),'permissions':_0x4d1f35['mode'],'isSymlink':_0x4d1f35['isSymbolicLink']()},'message':_0x51d8b6(0x196)+_0x319bf6};}catch(_0x4d5f5d){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x319bf6+':\x20'+_0x4d5f5d[_0x51d8b6(0x18b)]);}}['resolvePath'](_0x541578,_0x1747ec){const _0x5eb2bb=a0_0x56928e;if(a0_0x22f23d[_0x5eb2bb(0x1de)](_0x541578))return a0_0x22f23d[_0x5eb2bb(0x1b6)](_0x541578);return a0_0x22f23d[_0x5eb2bb(0x19e)](_0x1747ec,_0x541578);}['validatePathAccess'](_0x4d516b,_0x36e2fd,_0x33a528='read'){const _0xdcda19=a0_0x56928e,_0x2ff7eb=_0x33a528==='write'?this[_0xdcda19(0x1c5)][_0xdcda19(0x19b)](_0x4d516b,_0x36e2fd):this[_0xdcda19(0x1c5)][_0xdcda19(0x19f)](_0x4d516b,_0x36e2fd);if(!_0x2ff7eb[_0xdcda19(0x207)])throw new Error(_0x33a528+'\x20access\x20denied:\x20'+_0x2ff7eb[_0xdcda19(0x1e7)]+'\x20('+_0x2ff7eb['path']+')');return _0x2ff7eb;}['isAllowedFileExtension'](_0x44d9a3){const _0x1bac09=a0_0x56928e,_0x2ee181=a0_0x22f23d[_0x1bac09(0x18d)](_0x44d9a3)[_0x1bac09(0x205)]();if(this[_0x1bac09(0x185)]['includes'](_0x2ee181))return![];if(this['allowedExtensions']&&!this['allowedExtensions'][_0x1bac09(0x215)](_0x2ee181))return![];return!![];}[a0_0x56928e(0x1f6)](_0x17472a,_0x4fe42a,_0x2c0073){const _0x31670e=a0_0x56928e,_0x458cbc={'timestamp':new Date()[_0x31670e(0x18a)](),'agentId':_0x2c0073,'action':_0x17472a['type'],'filePath':_0x17472a[_0x31670e(0x1bb)]||_0x17472a['outputPath']||_0x17472a[_0x31670e(0x1af)],'success':_0x4fe42a['success'],'size':_0x4fe42a[_0x31670e(0x1cb)]};this[_0x31670e(0x1d0)]['push'](_0x458cbc),this[_0x31670e(0x1d0)][_0x31670e(0x186)]>0xc8&&(this[_0x31670e(0x1d0)]=this[_0x31670e(0x1d0)][_0x31670e(0x191)](-0xc8));}['getSupportedActions'](){const _0x235c31=a0_0x56928e;return[_0x235c31(0x1fd),_0x235c31(0x1e0),_0x235c31(0x1c3),'delete',_0x235c31(0x1e8),'move','create-dir',_0x235c31(0x206),'exists','stats'];}[a0_0x56928e(0x1ab)](){const _0x3de3fd=a0_0x56928e;return{'type':_0x3de3fd(0x21c),'properties':{'actions':{'type':_0x3de3fd(0x20b),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x3de3fd(0x18e),'enum':this[_0x3de3fd(0x199)]()},'filePath':{'type':'string'},'outputPath':{'type':_0x3de3fd(0x18e)},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':'string'},'content':{'type':_0x3de3fd(0x18e)},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}['getOperationHistory'](_0x3e9c4d=null){const _0x2d1861=a0_0x56928e;if(_0x3e9c4d)return this[_0x2d1861(0x1d0)]['filter'](_0x4c36a6=>_0x4c36a6['agentId']===_0x3e9c4d);return[...this[_0x2d1861(0x1d0)]];}}function a0_0x465f(){const _0x588c7a=['ndm3ndK4yuLut2TK','q3jLyxrLzcbKAxjLy3rVCNKG','tw92zwqG','zgLYzwn0B3j5','ywDLBNrjza','mJmWmde3nxjtu2HbCa','BxrPBwu','v3jPDguGywnJzxnZigrLBMLLzdOG','rMLSzsb0B28GBgfYz2u6ia','ngPWA21NqG','BM9YBwfSAxPL','Bw92zuzPBgu','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','mtm0mJCZmLPpqwXZwq','Bg9Nz2vY','zMLSzvbHDgG','lMnTza','C3vIC3rYAw5N','C291CMnLlxbHDgG','C3rHDhm','zgvSzxrL','C3rHDa','igj5DgvZicHTyxGG','yxbWzw5K','Bwf4rMLSzvnPEMu','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHLy3v0zq','B3v0Chv0lxbHDgG','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','yxbWzw5KrMLSzq','zw5JB2rPBMC','C2L6zq','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','lMnVBq','zgvSzxrLrMLSzq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','B3bLCMf0Aw9UsgLZDg9YEq','ndq0ntaWnxfIBfLjwa','ywXSB3DLzev4DgvUC2LVBNm','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','D3jPDgvgAwXL','AxntEw1IB2XPy0XPBMS','zMLSzxn5CW','Bw9Kzq','CgfYC2vqyxjHBwv0zxjZ','AxnbCNjHEq','ywn0Aw9UCW','DgLTzw91Da','igj5DgvZ','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','AxnbyNnVBhv0zq','v3jVDguG','D3jPDgu','CMvHzezPBgu','Bg9N','CMf3q29UDgvUDa','BwTKAxi','B3v0Chv0ugf0Aa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','CMvHC29U','y29WEq','Dhj1zq','C291CMnLugf0Aa','rMfPBgvKihrVigrLBgv0zsbMAwXLia','CMvZB2X2zvbHDgG','ihrVia','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','uMvHzcbHy2nLC3mGzgvUAwvKoIa','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','Cgf0Aa','rgvSzxrLzca','DhLWzq','BM93','zMLSDgvY','ywrKvg9iAxn0B3j5','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','ywXSB3DLzerPCMvJDg9YAwvZ','zgvZDc1WyxrO','BgLZDerPCMvJDg9YEq','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','ywnJzxnZ','CMvHza','AxneAxjLy3rVCNK','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','y3DK','zxHPC3rZ','yNL0zuXLBMD0Aa','rMfPBgvKihrVignVChKG','lMjHy2T1Cc0','Dg9mB3DLCKnHC2u','BgLZDa','ywXSB3DLza','qxbWzw5KzwqG','y3jLyxrLuMvSyxrPDMvqyxrO','AxngAwXL','yxjYyxK','rMfPBgvKihrVig1VDMuG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','y3jLyxrLrgLYzwn0B3j5','AxnbC3LUyW','qwn0Aw9Uia','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','zMLSzs1WyxrO','CM91BMq','Aw5JBhvKzxm','tufyx0zjtevFu0LArq','y3jLyxrLrgLYCW','oti2nZuZmunmCffNDW','v3jPDguGywnJzxnZigrLBMLLzcbMB3iGzgvZDgLUyxrPB246ia','tgLZDgvKia','mtC4mdGWA3zYvKrS','B2jQzwn0','oIb0ExbLigLZihjLCxvPCMvK','yxr0CMLIDxrLCW','yMXVy2TLzev4DgvUC2LVBNm','BgvUz3rO','lMrLBgv0zwqTyMfJA3vWlq','zgvZDfbHDgG','rMfPBgvKihrVihjLywqGzMLSzsa','Dg9ju09tDhjPBMC','BwvZC2fNzq','AM9PBG','zxH0BMfTzq','C3rYAw5N','mtuYmZy0mtzgrfHPywW','z2v0v29YA2LUz0rPCMvJDg9YEq','C2XPy2u','y29WEuzPBgu','ru5pru5u','igj5DgvZihrVia','y29UDgvUDa','uMv0CMLLDMvKihn0yxrZigzVCIa','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','Bw92zq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zMLSzq','DMfSAwrHDgvxCML0zufJy2vZCW','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','CMvUyw1L','CMvZB2X2zq','DMfSAwrHDgvszwfKqwnJzxnZ','DxrMoa','igrVzxmGBM90igv4Axn0','CMvHzgrPCG','CgfYC2vbDhrYAwj1DgvZ','BwfW','icHIywnRDxaGy3jLyxrLzcK','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','y3jLyxrLlwrPCG','vw5RBM93BIbHy3rPB24GDhLWztOG','ChvZAa','y3jLyxrLlwrPCNm','z2v0ugfYyw1LDgvYu2nOzw1H'];a0_0x465f=function(){return _0x588c7a;};return a0_0x465f();}export default FileSystemTool;
|