@loxia-labs/loxia-autopilot-one 1.0.18 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +1 -1
- package/web-ui/build/static/{index-DL2-PyNX.js → index-CcwO7jS4.js} +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x44268d=a0_0x2188;(function(_0x5bfeb2,_0x2548e6){const _0xabd3ae=a0_0x2188,_0x4a99ef=_0x5bfeb2();while(!![]){try{const _0x413cd1=-parseInt(_0xabd3ae(0x1a7))/0x1+parseInt(_0xabd3ae(0x188))/0x2+parseInt(_0xabd3ae(0x153))/0x3+-parseInt(_0xabd3ae(0x164))/0x4+-parseInt(_0xabd3ae(0x197))/0x5*(-parseInt(_0xabd3ae(0x183))/0x6)+parseInt(_0xabd3ae(0x151))/0x7+-parseInt(_0xabd3ae(0x15f))/0x8*(-parseInt(_0xabd3ae(0x15c))/0x9);if(_0x413cd1===_0x2548e6)break;else _0x4a99ef['push'](_0x4a99ef['shift']());}catch(_0x2521f5){_0x4a99ef['push'](_0x4a99ef['shift']());}}}(a0_0x28e9,0xdde6b));import{promises as a0_0x55781c}from'fs';function a0_0x2188(_0x112e1d,_0x44059a){_0x112e1d=_0x112e1d-0x13b;const _0x28e9de=a0_0x28e9();let _0x218869=_0x28e9de[_0x112e1d];if(a0_0x2188['TzNfJy']===undefined){var _0x3c9473=function(_0x1b4b8b){const _0x5b2921='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55781c='',_0x27438b='';for(let _0x54deb1=0x0,_0x105093,_0x2ad9ce,_0x2db41f=0x0;_0x2ad9ce=_0x1b4b8b['charAt'](_0x2db41f++);~_0x2ad9ce&&(_0x105093=_0x54deb1%0x4?_0x105093*0x40+_0x2ad9ce:_0x2ad9ce,_0x54deb1++%0x4)?_0x55781c+=String['fromCharCode'](0xff&_0x105093>>(-0x2*_0x54deb1&0x6)):0x0){_0x2ad9ce=_0x5b2921['indexOf'](_0x2ad9ce);}for(let _0x314747=0x0,_0x1a1a95=_0x55781c['length'];_0x314747<_0x1a1a95;_0x314747++){_0x27438b+='%'+('00'+_0x55781c['charCodeAt'](_0x314747)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27438b);};a0_0x2188['SbxKAo']=_0x3c9473,a0_0x2188['qaymiK']={},a0_0x2188['TzNfJy']=!![];}const _0x3a051f=_0x28e9de[0x0],_0x1e607f=_0x112e1d+_0x3a051f,_0x210b3e=a0_0x2188['qaymiK'][_0x1e607f];return!_0x210b3e?(_0x218869=a0_0x2188['SbxKAo'](_0x218869),a0_0x2188['qaymiK'][_0x1e607f]=_0x218869):_0x218869=_0x210b3e,_0x218869;}import a0_0x27438b from'path';import{exec as a0_0x54deb1}from'child_process';import{promisify}from'util';function a0_0x28e9(){const _0x4ed6f9=['cVcFK4SGqxzHAwXHyMXLihvWzgf0zxm6','ihbHy2THz2uOCYKGD2L0AcbHDMfPBgfIBguGDxbKyxrLCW','BMv3vMvYC2LVBG','DhjPBq','Aw5JBhvKzxm','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','x2zLDgnOugfJA2fNzuLUzM8','zgvIDwC','mZC3nty1sevsqunt','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','C3rHDhvZvgv4Da','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','A2v5CW','x3bHCNnLq29TCgXLEfjHBMDL','BNbTigLUC3rHBgWGzMfPBgvKoIa','sw52ywXPzcbKzxbLBMrLBMn5lxjLC29SDMuGzM9YBwf0lIbvC2uGpgrLCgvUzgvUy3KTCMvZB2X2zt4GDgfNCYbVCIbku09oigzVCM1HDc4','Bw9Kzq','cVcFK6yGuMvHzgLUzYbWywnRywDLlMPZB24UlI4','BwfQB3i','tufyx0rfuevorevoq0LfuW','lIbnDxn0igjLig9UzsbVzJOG','Cgf0Aa','x2LZvgLSzgvvCgrHDgvbDMfPBgfIBgu','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','mtiZotCXoeXIBMD4DG','zxHLyW','x2LZvxbKyxrLqxzHAwXHyMXL','vKfmsurFtu9ervm','ihbHy2THz2uOCYK','yNvPBgq','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','x2LZtgvZC1rOyw5vCgrHDgvbDMfPBgfIBgu','zgvWzw5Kzw5JAwvZ','uKvuuLLFqvruru1qvfm','revgqvvmvf9nt0rf','Aw5JBhvKzurLDG','x3bHCNnLqM9VBgvHBG','CMfUz2vZ','D2fYBG','C3rYAw5NAwz5','tLbnx0nptu1btKrFveLnru9vva','igrLCgvUzgvUy2LLCYb0BYbJAgvJAW','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','tw9KztOG','tufyx0nptKnvuLjftLrFq0Hfq0Tt','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','C2LTCgXL','yM9VBgvHBG','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLCNjVCJO','BwvZC2fNzq','q3jLyxrLzcbIywnRDxa','mtmXmdy1mKjRD1jkqq','Cgf0y2G','mtu2nti1nK1RDvbLyG','yxv0BW','Dhj1zq','ChvZAa','Aw5JBhvKzurLDIbTDxn0igjLigeGyM9VBgvHBG','zxHLy3v0zq','ChjLCMvSzwfZzq','x3bHCNnLvMvYC2LVBLjHBMDL','zgv2rgvWzw5Kzw5JAwvZ','oxnHqNv3sW','ANnVBG','C3rHCNrZv2L0Aa','mty4mZCYntzYBhrNrxu','Cgf0AcbTDxn0igjLigeGC3rYAw5N','x2nVBxbHCMvwzxjZAw9UCW','Dg9mB3DLCKnHC2u','y2HLy2S','nZeYmZG1nMDOEhbhDa','x3nHDgLZzMLLC1jHBMDL','4PQG77Ipica','icdIGkiG','D29YA2LUz0rPCMvJDg9YEq','C3bSAxq','Bg9Nz2vY','BwfW','zxjYB3i','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','yw5K','x2LZrxHHy3rvCgrHDgvbDMfPBgfIBgu','C3rHDhvZ','B3bLCMf0B3i','BwLUB3i','AM9PBG','x2LZq29TCgXLEfjHBMDL','zMLSDgvY','cVcFK6uGsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmGkhrOAxmGBwf5ihrHA2uGysb3AgLSzsKUlI4','zgLZDc10ywDZ','zw50CMLLCW','y29WEuzPBgu','AxnbyNnVBhv0zq','C2XPy2u','rxjYB3iGy2HLy2TPBMCG','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','ChjLzML4','8j+tIcbvCgrHDgvZigf2ywLSywjSztOG','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','lMjHy2T1Cc5QC29U','nML0vg5RAG','CMfUz2u','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','zML4','B2jQzwn0','mJa4mdG2mNH3qLrHua','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','x2nVBxbHCMvqCMvYzwXLyxnL','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','x2nYzwf0zujHy2T1Ca','BgvUz3rO'];a0_0x28e9=function(){return _0x4ed6f9;};return a0_0x28e9();}import{BaseTool}from'./baseTool.js';import a0_0x105093 from'../utilities/tagParser.js';const exec=promisify(a0_0x54deb1),RESOLVER_CONFIG={'DEFAULT_MODE':'check','VALID_MODES':['check','fix',a0_0x44268d(0x154)],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x44268d(0x182),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':'https://registry.npmjs.org'};export class DependencyResolverTool extends BaseTool{constructor(_0x2ad9ce={},_0x2db41f=null){super(_0x2ad9ce,_0x2db41f),this['id']='dependency-resolver';}['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**USAGE:**\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22check\x22\x20}\x0a}\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22path\x22:\x20\x22./my-project\x22,\x20\x22mode\x22:\x20\x22fix\x22\x20}\x0a}\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x314747){const _0x3d3d9b=a0_0x44268d;if(typeof _0x314747==='object'&&_0x314747!==null)return{'path':_0x314747[_0x3d3d9b(0x1a4)]||'.','mode':_0x314747[_0x3d3d9b(0x19f)]||RESOLVER_CONFIG[_0x3d3d9b(0x13f)],'includeDev':_0x314747[_0x3d3d9b(0x140)]!==undefined?_0x314747['includeDev']:!![]};if(typeof _0x314747==='string'){const _0x1a1a95=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x47d31e=_0x1a1a95[_0x3d3d9b(0x1a8)](_0x314747);if(_0x47d31e){const _0x1af2d3=_0x47d31e[0x1],_0x1e648b=_0x47d31e[0x2],_0x10f96d=/path=["']([^"']*)["']/i['exec'](_0x1af2d3),_0x3d07bf=/mode=["']([^"']*)["']/i['exec'](_0x1af2d3),_0x5db4e5=/include-dev=["']([^"']*)["']/i['exec'](_0x1af2d3),_0xca0318=/<path>(.*?)<\/path>/i,_0x4e5794=_0xca0318[_0x3d3d9b(0x1a8)](_0x1e648b),_0x320033=/<mode>(.*?)<\/mode>/i,_0x56db2e=_0x320033[_0x3d3d9b(0x1a8)](_0x1e648b),_0x3f7043=/<include-dev>(.*?)<\/include-dev>/i,_0x533191=_0x3f7043['exec'](_0x1e648b),_0x19a4b9=(_0x4e5794?_0x4e5794[0x1][_0x3d3d9b(0x192)]():null)||(_0x10f96d?_0x10f96d[0x1]:'.'),_0x322f64=(_0x56db2e?_0x56db2e[0x1]['trim']():null)||(_0x3d07bf?_0x3d07bf[0x1]:RESOLVER_CONFIG[_0x3d3d9b(0x13f)]),_0x1aff00=(_0x533191?_0x533191[0x1]['trim']():null)||(_0x5db4e5?_0x5db4e5[0x1]:'true');return{'path':_0x19a4b9,'mode':_0x322f64,'includeDev':this['_parseBoolean'](_0x1aff00,!![])};}const _0x34444e=/\[resolve\s+([^\]]*)\]/i,_0x37ae0b=_0x34444e[_0x3d3d9b(0x1a8)](_0x314747);if(_0x37ae0b){const _0x40a659=_0x37ae0b[0x1],_0x1fcf94=/path=["']([^"']*)["']/i['exec'](_0x40a659),_0x5dd288=/mode=["']([^"']*)["']/i['exec'](_0x40a659),_0x33cd39=/include-dev=["']([^"']*)["']/i[_0x3d3d9b(0x1a8)](_0x40a659);return{'path':_0x1fcf94?_0x1fcf94[0x1]:'.','mode':_0x5dd288?_0x5dd288[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this[_0x3d3d9b(0x141)](_0x33cd39?_0x33cd39[0x1]:'true',!![])};}throw new Error(_0x3d3d9b(0x19e));}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}['_parseBoolean'](_0x476ecf,defaultValue=![]){const _0x141d91=a0_0x44268d;if(_0x476ecf===undefined||_0x476ecf===null)return defaultValue;if(typeof _0x476ecf===_0x141d91(0x14d))return _0x476ecf;if(typeof _0x476ecf==='string')return _0x476ecf['toLowerCase']()===_0x141d91(0x155)||_0x476ecf==='1';return defaultValue;}['_validateParameters'](_0x3a28d0){const _0x19a8e2=a0_0x44268d;if(!_0x3a28d0||typeof _0x3a28d0!==_0x19a8e2(0x187))throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x3a28d0[_0x19a8e2(0x1a4)]&&typeof _0x3a28d0['path']!=='string')throw new Error(_0x19a8e2(0x160));if(_0x3a28d0[_0x19a8e2(0x19f)]&&!RESOLVER_CONFIG[_0x19a8e2(0x1aa)][_0x19a8e2(0x193)](_0x3a28d0['mode']))throw new Error('Invalid\x20mode:\x20'+_0x3a28d0[_0x19a8e2(0x19f)]+_0x19a8e2(0x1a3)+RESOLVER_CONFIG['VALID_MODES']['join'](',\x20'));if(_0x3a28d0[_0x19a8e2(0x140)]!==undefined&&typeof _0x3a28d0['includeDev']!==_0x19a8e2(0x14d))throw new Error(_0x19a8e2(0x157));}['_resolveAndValidatePath'](_0x452801,_0x48ab5b){const _0x124da7=a0_0x44268d,{projectDir:_0x1b8f94,directoryAccess:_0x59799c}=_0x48ab5b;let _0x2d4a52=_0x1b8f94||process['cwd']();_0x59799c&&_0x59799c[_0x124da7(0x168)]&&(_0x2d4a52=_0x59799c[_0x124da7(0x168)]);const _0x21e918=a0_0x27438b[_0x124da7(0x17a)](_0x452801)?a0_0x27438b['normalize'](_0x452801):a0_0x27438b['normalize'](a0_0x27438b['join'](_0x2d4a52,_0x452801)),_0x1ec33c=a0_0x27438b['normalize'](_0x2d4a52);if(!_0x21e918['startsWith'](_0x1ec33c))throw new Error(_0x124da7(0x17e)+_0x452801+_0x124da7(0x13b));return _0x21e918;}async[a0_0x44268d(0x18d)](_0x89b14f){const _0x3dcbb2=a0_0x44268d;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x2a81ca=_0x89b14f+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x55781c['copyFile'](_0x89b14f,_0x2a81ca),this[_0x3dcbb2(0x16a)]?.['info'](_0x3dcbb2(0x150),{'backupPath':_0x2a81ca}),_0x2a81ca;}catch(_0x109906){return this[_0x3dcbb2(0x16a)]?.[_0x3dcbb2(0x143)]('Failed\x20to\x20create\x20backup',{'error':_0x109906[_0x3dcbb2(0x14f)]}),null;}}async[a0_0x44268d(0x195)](_0x160e3c){const _0x6b0e54=a0_0x44268d,_0xccefb9=RESOLVER_CONFIG['NPM_REGISTRY_URL']+'/'+encodeURIComponent(_0x160e3c);for(let _0xdbf623=0x1;_0xdbf623<=RESOLVER_CONFIG[_0x6b0e54(0x13e)];_0xdbf623++){try{const _0x5e8a0f=new AbortController(),_0x40d91a=setTimeout(()=>_0x5e8a0f['abort'](),RESOLVER_CONFIG['REGISTRY_TIMEOUT']),_0x411a26=await fetch(_0xccefb9,{'signal':_0x5e8a0f['signal']});clearTimeout(_0x40d91a);if(!_0x411a26['ok']){if(_0x411a26[_0x6b0e54(0x170)]===0x194)return this[_0x6b0e54(0x16a)]?.['warn']('Package\x20not\x20found:\x20'+_0x160e3c),null;throw new Error('HTTP\x20'+_0x411a26[_0x6b0e54(0x170)]+':\x20'+_0x411a26[_0x6b0e54(0x199)]);}const _0x187cc9=await _0x411a26[_0x6b0e54(0x15d)]();if(!_0x187cc9||typeof _0x187cc9!==_0x6b0e54(0x187)||!_0x187cc9[_0x6b0e54(0x177)])throw new Error(_0x6b0e54(0x185));return _0x187cc9;}catch(_0xfb91d5){if(_0xdbf623<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x6b0e54(0x16a)]?.[_0x6b0e54(0x196)]('Retry\x20'+_0xdbf623+'/'+RESOLVER_CONFIG[_0x6b0e54(0x13e)]+'\x20for\x20'+_0x160e3c),await new Promise(_0x1fc2ae=>setTimeout(_0x1fc2ae,RESOLVER_CONFIG['RETRY_DELAY']*_0xdbf623));else return this['logger']?.['error']('Failed\x20to\x20fetch\x20'+_0x160e3c+':',_0xfb91d5['message']),null;}}return null;}async['_getLatestCompatibleVersion'](_0x32c2fa,_0xc6cee6){const _0x131f2d=a0_0x44268d,_0xf1b122=await this['_fetchPackageInfo'](_0x32c2fa);if(!_0xf1b122)return null;const _0x18c30b=_0xf1b122[_0x131f2d(0x177)]?.['latest'];if(!_0x18c30b)return null;const _0x41fe05=this['_parseVersion'](_0x18c30b);if(!_0x41fe05)return null;if(this[_0x131f2d(0x174)](_0xc6cee6)){const _0x25ae23=this['_parseComplexRange'](_0xc6cee6),_0x5f2b9c=this[_0x131f2d(0x198)](_0x25ae23,_0x41fe05);if(_0x5f2b9c)return _0x18c30b;return null;}const _0x4116d4=this[_0x131f2d(0x15a)](_0xc6cee6);if(!_0x4116d4)return null;const _0x2fec20=this[_0x131f2d(0x1a9)](_0x4116d4,_0x41fe05);if(_0x2fec20)return _0x4116d4[_0x131f2d(0x17f)]+_0x18c30b;return null;}['_parseVersion'](_0x2fce46){const _0x3bcd2b=a0_0x44268d,_0x48838c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x3528ec=_0x48838c[_0x3bcd2b(0x1a8)](_0x2fce46);if(!_0x3528ec){const _0x4f05c4=_0x2fce46['match'](/^(\d+)\.(\d+)\.(\d+)/);if(_0x4f05c4)return{'major':parseInt(_0x4f05c4[0x1],0xa),'minor':parseInt(_0x4f05c4[0x2],0xa),'patch':parseInt(_0x4f05c4[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x3528ec[0x1],0xa),'minor':parseInt(_0x3528ec[0x2],0xa),'patch':parseInt(_0x3528ec[0x3],0xa),'prerelease':_0x3528ec[0x4]?_0x3528ec[0x4][_0x3bcd2b(0x169)]('.'):null,'build':_0x3528ec[0x5]||null};}['_compareVersions'](_0x52d039,_0x226ba5){const _0x1c1123=a0_0x44268d;if(_0x52d039[_0x1c1123(0x1a1)]!==_0x226ba5['major'])return _0x52d039[_0x1c1123(0x1a1)]-_0x226ba5['major'];if(_0x52d039[_0x1c1123(0x172)]!==_0x226ba5[_0x1c1123(0x172)])return _0x52d039[_0x1c1123(0x172)]-_0x226ba5['minor'];if(_0x52d039['patch']!==_0x226ba5['patch'])return _0x52d039[_0x1c1123(0x152)]-_0x226ba5[_0x1c1123(0x152)];if(!_0x52d039['prerelease']&&!_0x226ba5['prerelease'])return 0x0;if(!_0x52d039[_0x1c1123(0x159)]&&_0x226ba5['prerelease'])return 0x1;if(_0x52d039[_0x1c1123(0x159)]&&!_0x226ba5['prerelease'])return-0x1;return this[_0x1c1123(0x18a)](_0x52d039[_0x1c1123(0x159)],_0x226ba5[_0x1c1123(0x159)]);}[a0_0x44268d(0x18a)](_0x47e9c2,_0x5af5d6){const _0x493efa=a0_0x44268d,_0x3d9c75=Math['max'](_0x47e9c2['length'],_0x5af5d6['length']);for(let _0x4176f9=0x0;_0x4176f9<_0x3d9c75;_0x4176f9++){if(_0x4176f9>=_0x47e9c2['length'])return-0x1;if(_0x4176f9>=_0x5af5d6[_0x493efa(0x18e)])return 0x1;const _0x392090=_0x47e9c2[_0x4176f9],_0x31f45c=_0x5af5d6[_0x4176f9],_0x3f07a=/^\d+$/['test'](_0x392090)?parseInt(_0x392090,0xa):null,_0x3b81a9=/^\d+$/['test'](_0x31f45c)?parseInt(_0x31f45c,0xa):null;if(_0x3f07a!==null&&_0x3b81a9!==null){if(_0x3f07a!==_0x3b81a9)return _0x3f07a-_0x3b81a9;continue;}if(_0x3f07a!==null&&_0x3b81a9===null)return-0x1;if(_0x3f07a===null&&_0x3b81a9!==null)return 0x1;if(_0x392090<_0x31f45c)return-0x1;if(_0x392090>_0x31f45c)return 0x1;}return 0x0;}['_parseVersionRange'](_0x13ba73){const _0x27f764=a0_0x44268d,_0x5eced9=_0x13ba73['trim'](),_0x44aada=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x1d4606=_0x44aada[_0x27f764(0x1a8)](_0x5eced9);if(_0x1d4606){const _0x1ef1d7=_0x1d4606[0x1],_0x157048=_0x1d4606[0x3],_0x2eb635=_0x1d4606[0x5],_0x1f625e=_0x1ef1d7==='*'||_0x1ef1d7[_0x27f764(0x162)]()==='x'||_0x157048===undefined||_0x157048==='*'||_0x157048[_0x27f764(0x162)]()==='x'||_0x2eb635===undefined||_0x2eb635==='*'||_0x2eb635[_0x27f764(0x162)]()==='x';if(_0x1f625e)return{'prefix':'','operator':'x-range','major':_0x1ef1d7==='*'||_0x1ef1d7['toLowerCase']()==='x'?null:parseInt(_0x1ef1d7,0xa),'minor':!_0x157048||_0x157048==='*'||_0x157048[_0x27f764(0x162)]()==='x'?null:parseInt(_0x157048,0xa),'patch':!_0x2eb635||_0x2eb635==='*'||_0x2eb635[_0x27f764(0x162)]()==='x'?null:parseInt(_0x2eb635,0xa),'original':_0x13ba73};}let _0x7c0977='',_0x40e708=_0x5eced9,_0xd7209e='=';if(_0x5eced9[_0x27f764(0x15e)]('^'))_0x7c0977='^',_0x40e708=_0x5eced9['slice'](0x1),_0xd7209e='^';else{if(_0x5eced9[_0x27f764(0x15e)]('~'))_0x7c0977='~',_0x40e708=_0x5eced9['slice'](0x1),_0xd7209e='~';else{if(_0x5eced9['startsWith']('>='))_0x7c0977='>=',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x2)['trim'](),_0xd7209e='>=';else{if(_0x5eced9[_0x27f764(0x15e)]('>'))_0x7c0977='>',_0x40e708=_0x5eced9['slice'](0x1)['trim'](),_0xd7209e='>';else{if(_0x5eced9['startsWith']('<='))_0x7c0977='<=',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x2)[_0x27f764(0x192)](),_0xd7209e='<=';else _0x5eced9[_0x27f764(0x15e)]('<')&&(_0x7c0977='<',_0x40e708=_0x5eced9[_0x27f764(0x17b)](0x1)['trim'](),_0xd7209e='<');}}}}const _0x57b95b=this['_parseVersion'](_0x40e708);if(!_0x57b95b)return null;return{'prefix':_0x7c0977,'operator':_0xd7209e,'major':_0x57b95b[_0x27f764(0x1a1)],'minor':_0x57b95b['minor'],'patch':_0x57b95b['patch'],'prerelease':_0x57b95b[_0x27f764(0x159)],'build':_0x57b95b[_0x27f764(0x1ac)],'original':_0x13ba73};}['_isUpdateAvailable'](_0x352f99,_0x262681){const _0x4d7deb=a0_0x44268d,_0x4e9e11={'major':_0x352f99[_0x4d7deb(0x1a1)],'minor':_0x352f99['minor'],'patch':_0x352f99[_0x4d7deb(0x152)],'prerelease':_0x352f99[_0x4d7deb(0x159)]||null,'build':_0x352f99['build']||null};switch(_0x352f99[_0x4d7deb(0x171)]){case'^':return this[_0x4d7deb(0x194)](_0x4e9e11,_0x262681);case'~':return this['_isTildeUpdateAvailable'](_0x4e9e11,_0x262681);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x4e9e11,_0x262681);case'<':case'<=':return this[_0x4d7deb(0x13c)](_0x352f99,_0x262681);case'x-range':return this[_0x4d7deb(0x18b)](_0x352f99,_0x262681);case'=':default:return this[_0x4d7deb(0x16f)](_0x4e9e11,_0x262681);}}[a0_0x44268d(0x194)](_0x1a3afe,_0x5e6205){const _0x1f1d22=a0_0x44268d,_0x310e33=this[_0x1f1d22(0x161)](_0x5e6205,_0x1a3afe);if(_0x310e33<=0x0)return![];if(_0x1a3afe[_0x1f1d22(0x1a1)]===0x0&&_0x1a3afe[_0x1f1d22(0x172)]===0x0)return _0x5e6205['major']===0x0&&_0x5e6205[_0x1f1d22(0x172)]===0x0;if(_0x1a3afe['major']===0x0)return _0x5e6205[_0x1f1d22(0x1a1)]===0x0&&_0x5e6205['minor']===_0x1a3afe[_0x1f1d22(0x172)];return _0x5e6205['major']===_0x1a3afe['major'];}[a0_0x44268d(0x1a5)](_0x5a2895,_0x3a3459){const _0x33c653=a0_0x44268d,_0x23f26a=this[_0x33c653(0x161)](_0x3a3459,_0x5a2895);if(_0x23f26a<=0x0)return![];return _0x3a3459['major']===_0x5a2895[_0x33c653(0x1a1)]&&_0x3a3459['minor']===_0x5a2895[_0x33c653(0x172)];}['_isSimpleUpdateAvailable'](_0x4f010c,_0x1cb3de){const _0x3e40c0=this['_compareVersions'](_0x1cb3de,_0x4f010c);return _0x3e40c0>0x0;}['_isExactUpdateAvailable'](_0x5f33a5,_0x31fb40){const _0x1f021b=a0_0x44268d;return this[_0x1f021b(0x147)](_0x5f33a5,_0x31fb40);}[a0_0x44268d(0x13c)](_0xd6f9ae,_0x55a7a1){const _0x2fa1cf=a0_0x44268d,_0x5f25ac=this['_compareVersions'](_0x55a7a1,_0xd6f9ae);if(_0xd6f9ae['operator']==='<')return _0x5f25ac<0x0;else{if(_0xd6f9ae[_0x2fa1cf(0x171)]==='<=')return _0x5f25ac<=0x0;}return![];}['_isXRangeUpdateAvailable'](_0x55c1ec,_0x11ed88){const _0x2b90f8=a0_0x44268d;if(_0x55c1ec[_0x2b90f8(0x1a1)]!==null&&_0x11ed88['major']!==_0x55c1ec[_0x2b90f8(0x1a1)])return![];if(_0x55c1ec[_0x2b90f8(0x172)]!==null&&_0x11ed88[_0x2b90f8(0x172)]!==_0x55c1ec['minor'])return![];if(_0x55c1ec[_0x2b90f8(0x152)]!==null&&_0x11ed88['patch']!==_0x55c1ec[_0x2b90f8(0x152)])return![];return!![];}['_isComplexRange'](_0x43211d){const _0x193caa=a0_0x44268d;if(_0x43211d[_0x193caa(0x193)]('||'))return!![];const _0x1ca8f2=_0x43211d['trim']();if(_0x1ca8f2[_0x193caa(0x15e)]('^')||_0x1ca8f2[_0x193caa(0x15e)]('~'))return![];const _0x544ebe=_0x1ca8f2['split'](/\s+/)['filter'](_0x50dd71=>_0x50dd71[_0x193caa(0x18e)]>0x0);if(_0x544ebe[_0x193caa(0x18e)]>0x1){const _0x5e0093=/^(>=?|<=?|\^|~|[0-9])/;return _0x544ebe['every'](_0x560ba3=>_0x5e0093['test'](_0x560ba3));}return![];}[a0_0x44268d(0x19c)](_0x3c1dbf){const _0x3edddd=a0_0x44268d;if(_0x3c1dbf['includes']('||')){const _0x347437=_0x3c1dbf['split']('||')[_0x3edddd(0x16b)](_0x4333be=>_0x4333be[_0x3edddd(0x192)]());return{'type':'or','ranges':_0x347437[_0x3edddd(0x16b)](_0x56fe36=>this['_parseComplexRange'](_0x56fe36))};}const _0x1fc335=_0x3c1dbf[_0x3edddd(0x192)]()['split'](/\s+/)[_0x3edddd(0x175)](_0x507729=>_0x507729['length']>0x0);if(_0x1fc335['length']>0x1)return{'type':_0x3edddd(0x16e),'ranges':_0x1fc335['map'](_0x116cbb=>this['_parseVersionRange'](_0x116cbb))};return{'type':'simple','range':this[_0x3edddd(0x15a)](_0x3c1dbf)};}['_satisfiesRange'](_0x5ae0da,_0x46b6f3){if(!_0x5ae0da||!_0x46b6f3)return![];return this['_isUpdateAvailable'](_0x5ae0da,_0x46b6f3);}[a0_0x44268d(0x198)](_0x53f76c,_0xfb24f5){const _0x48f896=a0_0x44268d;if(!_0x53f76c||!_0xfb24f5)return![];switch(_0x53f76c['type']){case _0x48f896(0x14c):return this[_0x48f896(0x165)](_0x53f76c[_0x48f896(0x184)],_0xfb24f5);case'and':return _0x53f76c[_0x48f896(0x142)]['every'](_0x5cd0bc=>this['_satisfiesRange'](_0x5cd0bc,_0xfb24f5));case'or':return _0x53f76c[_0x48f896(0x142)]['some'](_0xc1eedf=>this['_satisfiesComplexRange'](_0xc1eedf,_0xfb24f5));default:return![];}}async['_checkDependencies'](_0x4a481d){const _0x2c379c=a0_0x44268d,_0xe3e837={},_0x374c90=Object[_0x2c379c(0x178)](_0x4a481d);for(let _0x34076a=0x0;_0x34076a<_0x374c90[_0x2c379c(0x18e)];_0x34076a+=RESOLVER_CONFIG[_0x2c379c(0x149)]){const _0x39ffcd=_0x374c90[_0x2c379c(0x17b)](_0x34076a,_0x34076a+RESOLVER_CONFIG[_0x2c379c(0x149)]),_0x2dc1bf=_0x39ffcd['map'](async([_0x3fd3cc,_0x31894f])=>{const _0x5e9e6e=_0x2c379c;try{const _0x3d5694=await this[_0x5e9e6e(0x14b)](_0x3fd3cc,_0x31894f);if(_0x3d5694){const _0x407856=_0x31894f['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x3fd3cc,'newVersion':''+_0x407856+_0x3d5694,'oldVersion':_0x31894f};}return null;}catch(_0x2b000e){return this['logger']?.['error'](_0x5e9e6e(0x17c)+_0x3fd3cc+':',_0x2b000e['message']),null;}}),_0x3f6b5c=await Promise['all'](_0x2dc1bf);_0x3f6b5c['forEach'](_0x5d18c6=>{const _0x28bc27=_0x2c379c;_0x5d18c6&&(_0xe3e837[_0x5d18c6['pkg']]=_0x5d18c6[_0x28bc27(0x191)]);});}return _0xe3e837;}async[a0_0x44268d(0x158)](_0xec3d50,_0xaba1be={}){const _0x439978=a0_0x44268d;try{this['_validateParameters'](_0xec3d50);const {path:_0xe66aec,mode:_0x4f12a2,includeDev:_0x22119e}=_0xec3d50,{projectDir:_0x1944d6,agentId:_0x5232eb,directoryAccess:_0x25731f}=_0xaba1be,_0x472a65=this[_0x439978(0x181)](_0xe66aec,_0xaba1be),_0x1ac3e5=a0_0x27438b['join'](_0x472a65,'package.json');this[_0x439978(0x16a)]?.['info']('Dependency\x20resolver\x20executing',{'mode':_0x4f12a2,'resolvedPath':_0x472a65,'includeDev':_0x22119e,'agentId':_0x5232eb});const _0x33b8d2=[];_0x33b8d2[_0x439978(0x156)]('🔍\x20Checking\x20dependencies\x20in:\x20'+_0x472a65),_0x33b8d2[_0x439978(0x156)](_0x439978(0x148)+_0x4f12a2);try{await a0_0x55781c['access'](_0x1ac3e5);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0x1ac3e5,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}_0x33b8d2[_0x439978(0x156)](_0x439978(0x1a0));const _0x587034=await a0_0x55781c['readFile'](_0x1ac3e5,'utf-8'),_0x3be3c8=JSON['parse'](_0x587034),_0x50a81e={..._0x3be3c8['dependencies']};_0x22119e&&_0x3be3c8[_0x439978(0x15b)]&&Object['assign'](_0x50a81e,_0x3be3c8[_0x439978(0x15b)]);if(Object['keys'](_0x50a81e)['length']===0x0)return{'success':!![],'mode':_0x4f12a2,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};if(Object[_0x439978(0x19b)](_0x50a81e)[_0x439978(0x18e)]>RESOLVER_CONFIG[_0x439978(0x1a2)])return{'success':![],'error':_0x439978(0x189)+Object['keys'](_0x50a81e)[_0x439978(0x18e)]+'),\x20max\x20allowed:\x20'+RESOLVER_CONFIG[_0x439978(0x1a2)],'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};_0x33b8d2[_0x439978(0x156)]('📊\x20Found\x20'+Object['keys'](_0x50a81e)['length']+_0x439978(0x146)),_0x33b8d2[_0x439978(0x156)]('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x528d2c=await this['_checkDependencies'](_0x50a81e);_0x33b8d2[_0x439978(0x156)](_0x439978(0x1a6)),_0x33b8d2['push'](_0x439978(0x180)+Object[_0x439978(0x19b)](_0x528d2c)['length']);if(Object[_0x439978(0x19b)](_0x528d2c)['length']>0x0){_0x33b8d2[_0x439978(0x156)](_0x439978(0x18f));for(const [_0x2d4a27,_0x5cce3c]of Object[_0x439978(0x178)](_0x528d2c)){const _0x43ecef=_0x50a81e[_0x2d4a27];_0x33b8d2[_0x439978(0x156)](_0x439978(0x167)+_0x2d4a27+':\x20'+_0x43ecef+'\x20→\x20'+_0x5cce3c);}}else _0x33b8d2['push'](_0x439978(0x16d));if(_0x4f12a2==='check')return Object['keys'](_0x528d2c)[_0x439978(0x18e)]>0x0&&_0x33b8d2[_0x439978(0x156)]('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':_0x439978(0x163),'message':'Found\x20'+Object['keys'](_0x528d2c)['length']+_0x439978(0x190),'statistics':{'totalDependencies':Object['keys'](_0x50a81e)[_0x439978(0x18e)],'updatesAvailable':Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)],'updatesApplied':0x0,'errors':0x0},'updates':_0x528d2c,'output':_0x33b8d2['join']('\x0a')};if((_0x4f12a2==='fix'||_0x4f12a2==='auto')&&Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)]>0x0){_0x33b8d2[_0x439978(0x156)]('\x0a💾\x20Creating\x20backup\x20of\x20package.json...');const _0x400527=await this[_0x439978(0x18d)](_0x1ac3e5);_0x400527?_0x33b8d2[_0x439978(0x156)]('✅\x20Backup\x20created:\x20'+a0_0x27438b['basename'](_0x400527)):_0x33b8d2['push']('⚠️\x20\x20Backup\x20creation\x20failed,\x20continuing\x20anyway...');_0x33b8d2[_0x439978(0x156)]('\x0a🛠\x20\x20Updating\x20package.json...');for(const [_0x2b555,_0x3c517d]of Object['entries'](_0x528d2c)){_0x3be3c8['dependencies']?.[_0x2b555]&&(_0x3be3c8[_0x439978(0x13d)][_0x2b555]=_0x3c517d),_0x3be3c8[_0x439978(0x15b)]?.[_0x2b555]&&(_0x3be3c8['devDependencies'][_0x2b555]=_0x3c517d);}await a0_0x55781c['writeFile'](_0x1ac3e5,JSON[_0x439978(0x144)](_0x3be3c8,null,0x2)+'\x0a'),_0x33b8d2[_0x439978(0x156)]('✅\x20package.json\x20updated'),_0x33b8d2[_0x439978(0x156)](_0x439978(0x176));try{const {stdout:_0x4afb51,stderr:_0x353dfc}=await exec('npm\x20install',{'cwd':_0x472a65,'timeout':RESOLVER_CONFIG[_0x439978(0x145)],'maxBuffer':0x400*0x400*0xa});if(_0x4afb51){const _0x3fd0de=_0x4afb51['trim']()['split']('\x0a');_0x3fd0de['length']>0xa?_0x33b8d2['push']('\x20\x20'+_0x3fd0de[_0x439978(0x17b)](-0x5)[_0x439978(0x173)]('\x0a\x20\x20')):_0x33b8d2['push']('\x20\x20'+_0x4afb51[_0x439978(0x192)]());}_0x353dfc&&!_0x353dfc['includes']('npm\x20WARN')&&_0x33b8d2[_0x439978(0x156)](_0x439978(0x166)+_0x353dfc[_0x439978(0x192)]());_0x33b8d2['push'](_0x439978(0x14a));try{const {stdout:_0x25ceaa}=await exec(_0x439978(0x17d),{'cwd':_0x472a65,'timeout':0x7530}),_0x579790=JSON['parse'](_0x25ceaa);if(_0x579790[_0x439978(0x13d)]){_0x33b8d2['push'](_0x439978(0x19a));for(const _0xf00578 of Object[_0x439978(0x19b)](_0x528d2c)){_0x579790[_0x439978(0x13d)][_0xf00578]&&_0x33b8d2['push'](_0x439978(0x167)+_0xf00578+'@'+_0x579790[_0x439978(0x13d)][_0xf00578]['version']);}}}catch(_0x4dd3b0){this['logger']?.[_0x439978(0x196)]('npm\x20ls\x20failed:',_0x4dd3b0[_0x439978(0x14f)]);}return{'success':!![],'mode':_0x4f12a2,'message':_0x439978(0x18c)+Object[_0x439978(0x19b)](_0x528d2c)['length']+_0x439978(0x1ab),'statistics':{'totalDependencies':Object[_0x439978(0x19b)](_0x50a81e)['length'],'updatesAvailable':Object['keys'](_0x528d2c)[_0x439978(0x18e)],'updatesApplied':Object[_0x439978(0x19b)](_0x528d2c)[_0x439978(0x18e)],'errors':0x0},'updates':_0x528d2c,'backupCreated':_0x400527!==null,'backupPath':_0x400527,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}catch(_0x45b7ff){_0x33b8d2[_0x439978(0x156)]('\x0a❌\x20npm\x20install\x20failed:\x20'+_0x45b7ff[_0x439978(0x14f)]);if(_0x400527)try{await a0_0x55781c[_0x439978(0x179)](_0x400527,_0x1ac3e5),_0x33b8d2[_0x439978(0x156)]('\uD83D\uDD04 Restored package.json from backup');}catch(_0x2950c3){_0x33b8d2['push']('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x4f12a2,'error':_0x439978(0x19d)+_0x45b7ff['message'],'statistics':{'totalDependencies':Object['keys'](_0x50a81e)['length'],'updatesAvailable':Object['keys'](_0x528d2c)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x528d2c,'backupCreated':_0x400527!==null,'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}}else{if(_0x4f12a2===_0x439978(0x186)||_0x4f12a2===_0x439978(0x154))return _0x33b8d2[_0x439978(0x156)]('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x4f12a2,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object['keys'](_0x50a81e)[_0x439978(0x18e)],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x33b8d2[_0x439978(0x173)]('\x0a')};}}catch(_0x168021){return this[_0x439978(0x16a)]?.[_0x439978(0x16c)](_0x439978(0x14e),_0x168021),{'success':![],'error':_0x168021[_0x439978(0x14f)],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x168021['message']};}}}export default DependencyResolverTool;
|
|
1
|
+
const a0_0x2b744b=a0_0x3953;(function(_0x1bac52,_0x2896ce){const _0x3dfb99=a0_0x3953,_0x439004=_0x1bac52();while(!![]){try{const _0x252788=-parseInt(_0x3dfb99(0x235))/0x1*(parseInt(_0x3dfb99(0x1f7))/0x2)+-parseInt(_0x3dfb99(0x21c))/0x3*(parseInt(_0x3dfb99(0x22a))/0x4)+parseInt(_0x3dfb99(0x1e0))/0x5*(-parseInt(_0x3dfb99(0x21f))/0x6)+-parseInt(_0x3dfb99(0x234))/0x7*(parseInt(_0x3dfb99(0x231))/0x8)+-parseInt(_0x3dfb99(0x1e9))/0x9+parseInt(_0x3dfb99(0x200))/0xa*(parseInt(_0x3dfb99(0x24c))/0xb)+parseInt(_0x3dfb99(0x1e7))/0xc;if(_0x252788===_0x2896ce)break;else _0x439004['push'](_0x439004['shift']());}catch(_0x193737){_0x439004['push'](_0x439004['shift']());}}}(a0_0x3a01,0xbeaff));import{promises as a0_0x48593f}from'fs';import a0_0x5d6d01 from'path';import{exec as a0_0x2c451d}from'child_process';import{promisify}from'util';import{BaseTool}from'./baseTool.js';function a0_0x3953(_0x31a896,_0x249ff4){_0x31a896=_0x31a896-0x1d7;const _0x3a0121=a0_0x3a01();let _0x395307=_0x3a0121[_0x31a896];if(a0_0x3953['LUMhCE']===undefined){var _0x585b9c=function(_0x2abeaa){const _0x33ac17='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x48593f='',_0x5d6d01='';for(let _0x2c451d=0x0,_0x3da48e,_0x3bb9f1,_0x1995f3=0x0;_0x3bb9f1=_0x2abeaa['charAt'](_0x1995f3++);~_0x3bb9f1&&(_0x3da48e=_0x2c451d%0x4?_0x3da48e*0x40+_0x3bb9f1:_0x3bb9f1,_0x2c451d++%0x4)?_0x48593f+=String['fromCharCode'](0xff&_0x3da48e>>(-0x2*_0x2c451d&0x6)):0x0){_0x3bb9f1=_0x33ac17['indexOf'](_0x3bb9f1);}for(let _0x566072=0x0,_0x5725f8=_0x48593f['length'];_0x566072<_0x5725f8;_0x566072++){_0x5d6d01+='%'+('00'+_0x48593f['charCodeAt'](_0x566072)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d6d01);};a0_0x3953['XrUdQy']=_0x585b9c,a0_0x3953['GpnQSW']={},a0_0x3953['LUMhCE']=!![];}const _0x162c28=_0x3a0121[0x0],_0x2f9946=_0x31a896+_0x162c28,_0x1362e5=a0_0x3953['GpnQSW'][_0x2f9946];return!_0x1362e5?(_0x395307=a0_0x3953['XrUdQy'](_0x395307),a0_0x3953['GpnQSW'][_0x2f9946]=_0x395307):_0x395307=_0x1362e5,_0x395307;}import a0_0x3da48e from'../utilities/tagParser.js';const exec=promisify(a0_0x2c451d),RESOLVER_CONFIG={'DEFAULT_MODE':a0_0x2b744b(0x1da),'VALID_MODES':['check','fix','auto'],'NPM_COMMAND_TIMEOUT':0x493e0,'REGISTRY_TIMEOUT':0x2710,'MAX_CONCURRENT_CHECKS':0x5,'BACKUP_EXTENSION':a0_0x2b744b(0x247),'CREATE_BACKUPS':!![],'RETRY_ATTEMPTS':0x3,'RETRY_DELAY':0x3e8,'MAX_DEPENDENCIES':0x1f4,'NPM_REGISTRY_URL':a0_0x2b744b(0x1e2)};export class DependencyResolverTool extends BaseTool{constructor(_0x3bb9f1={},_0x1995f3=null){super(_0x3bb9f1,_0x1995f3),this['id']='dependency-resolver';}['getDescription'](){return'Tool:\x20Dependency\x20Resolver\x20-\x20Resolve\x20Node.js\x20package\x20dependency\x20conflicts\x0a\x0a**Purpose:**\x20Checks\x20npm\x20dependencies\x20for\x20updates\x20and\x20optionally\x20updates\x20package.json\x20to\x20latest\x20compatible\x20versions\x20automatically.\x0a\x0a**USAGE:**\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./my-project\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22check\x22,\x0a\x20\x20\x20\x20\x22includeDev\x22:\x20true\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20project\x20directory\x20with\x20package.json.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Operation\x20mode.\x20Options:\x0a\x20\x20-\x20\x22check\x22\x20-\x20Only\x20check\x20for\x20updates\x20(default)\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Update\x20package.json\x20and\x20run\x20npm\x20install\x0a\x20\x20-\x20\x22auto\x22\x20-\x20Automatically\x20fix\x20all\x20conflicts\x0a-\x20**includeDev**\x20(boolean,\x20optional):\x20Include\x20devDependencies.\x20Default:\x20true\x0a\x0a**What\x20It\x20Does:**\x0a-\x20Checks\x20npm\x20registry\x20for\x20latest\x20compatible\x20versions\x0a-\x20Respects\x20semver\x20ranges\x20(^,\x20~,\x20>=,\x20etc.)\x0a-\x20Creates\x20automatic\x20backups\x20before\x20modifications\x0a-\x20Runs\x20npm\x20install\x20after\x20updates\x20(in\x20fix/auto\x20mode)\x0a-\x20Provides\x20detailed\x20update\x20report\x0a\x0a**Examples:**\x0a\x0a1.\x20Check\x20for\x20updates:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22check\x22\x20}\x0a}\x0a```\x0a\x0a2.\x20Fix\x20outdated\x20dependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22path\x22:\x20\x22./my-project\x22,\x20\x22mode\x22:\x20\x22fix\x22\x20}\x0a}\x0a```\x0a\x0a3.\x20Auto-fix\x20with\x20devDependencies:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22dependency-resolver\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22auto\x22,\x20\x22includeDev\x22:\x20true\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Always\x20creates\x20backup\x20(.backup.json)\x20before\x20modifications\x0a-\x20Network\x20requests\x20have\x20timeout\x20and\x20retry\x20logic\x0a-\x20npm\x20install\x20runs\x20with\x20timeout\x20protection\x20(5\x20minutes\x20max)\x0a-\x20Supports\x20complex\x20semver\x20ranges\x20(||,\x20&&,\x20etc.)';}['parseParameters'](_0x566072){const _0x279889=a0_0x2b744b;if(typeof _0x566072===_0x279889(0x1f3)&&_0x566072!==null)return{'path':_0x566072[_0x279889(0x213)]||'.','mode':_0x566072[_0x279889(0x1fd)]||RESOLVER_CONFIG[_0x279889(0x246)],'includeDev':_0x566072['includeDev']!==undefined?_0x566072['includeDev']:!![]};if(typeof _0x566072===_0x279889(0x251)){const _0x5725f8=/<dependency-resolve([^>]*)>([\s\S]*?)<\/dependency-resolve>/i,_0x58e944=_0x5725f8[_0x279889(0x1dc)](_0x566072);if(_0x58e944){const _0x311dc5=_0x58e944[0x1],_0x12ba2d=_0x58e944[0x2],_0x1b428d=/path=["']([^"']*)["']/i['exec'](_0x311dc5),_0x1850ca=/mode=["']([^"']*)["']/i['exec'](_0x311dc5),_0x355fa4=/include-dev=["']([^"']*)["']/i[_0x279889(0x1dc)](_0x311dc5),_0x44feff=/<path>(.*?)<\/path>/i,_0xf3f990=_0x44feff[_0x279889(0x1dc)](_0x12ba2d),_0x46de17=/<mode>(.*?)<\/mode>/i,_0xec56e=_0x46de17[_0x279889(0x1dc)](_0x12ba2d),_0x572b33=/<include-dev>(.*?)<\/include-dev>/i,_0x3f7098=_0x572b33[_0x279889(0x1dc)](_0x12ba2d),_0x10bea9=(_0xf3f990?_0xf3f990[0x1]['trim']():null)||(_0x1b428d?_0x1b428d[0x1]:'.'),_0x24b1c8=(_0xec56e?_0xec56e[0x1][_0x279889(0x214)]():null)||(_0x1850ca?_0x1850ca[0x1]:RESOLVER_CONFIG[_0x279889(0x246)]),_0x4f5bab=(_0x3f7098?_0x3f7098[0x1][_0x279889(0x214)]():null)||(_0x355fa4?_0x355fa4[0x1]:'true');return{'path':_0x10bea9,'mode':_0x24b1c8,'includeDev':this[_0x279889(0x220)](_0x4f5bab,!![])};}const _0x68d3aa=/\[resolve\s+([^\]]*)\]/i,_0x225040=_0x68d3aa['exec'](_0x566072);if(_0x225040){const _0x55aedc=_0x225040[0x1],_0x8a11a9=/path=["']([^"']*)["']/i['exec'](_0x55aedc),_0x62def7=/mode=["']([^"']*)["']/i['exec'](_0x55aedc),_0x3fb97c=/include-dev=["']([^"']*)["']/i['exec'](_0x55aedc);return{'path':_0x8a11a9?_0x8a11a9[0x1]:'.','mode':_0x62def7?_0x62def7[0x1]:RESOLVER_CONFIG['DEFAULT_MODE'],'includeDev':this['_parseBoolean'](_0x3fb97c?_0x3fb97c[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_0x2b744b(0x220)](_0x254217,defaultValue=![]){const _0x2d4c14=a0_0x2b744b;if(_0x254217===undefined||_0x254217===null)return defaultValue;if(typeof _0x254217==='boolean')return _0x254217;if(typeof _0x254217===_0x2d4c14(0x251))return _0x254217['toLowerCase']()==='true'||_0x254217==='1';return defaultValue;}[a0_0x2b744b(0x1e4)](_0x1d0c3a){const _0x183c23=a0_0x2b744b;if(!_0x1d0c3a||typeof _0x1d0c3a!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x1d0c3a['path']&&typeof _0x1d0c3a['path']!==_0x183c23(0x251))throw new Error('path\x20must\x20be\x20a\x20string');if(_0x1d0c3a[_0x183c23(0x1fd)]&&!RESOLVER_CONFIG['VALID_MODES'][_0x183c23(0x22d)](_0x1d0c3a['mode']))throw new Error('Invalid\x20mode:\x20'+_0x1d0c3a['mode']+_0x183c23(0x24a)+RESOLVER_CONFIG['VALID_MODES'][_0x183c23(0x1ec)](',\x20'));if(_0x1d0c3a['includeDev']!==undefined&&typeof _0x1d0c3a[_0x183c23(0x225)]!==_0x183c23(0x1fb))throw new Error('includeDev\x20must\x20be\x20a\x20boolean');}['_resolveAndValidatePath'](_0x5ae254,_0x28052e){const _0x2e8ce9=a0_0x2b744b,{projectDir:_0x279e45,directoryAccess:_0x4db138}=_0x28052e;let _0x150879=_0x279e45||process[_0x2e8ce9(0x224)]();_0x4db138&&_0x4db138[_0x2e8ce9(0x217)]&&(_0x150879=_0x4db138['workingDirectory']);const _0x12bdea=a0_0x5d6d01[_0x2e8ce9(0x238)](_0x5ae254)?a0_0x5d6d01['normalize'](_0x5ae254):a0_0x5d6d01[_0x2e8ce9(0x24f)](a0_0x5d6d01['join'](_0x150879,_0x5ae254)),_0x3d2388=a0_0x5d6d01['normalize'](_0x150879);if(!_0x12bdea['startsWith'](_0x3d2388))throw new Error(_0x2e8ce9(0x23a)+_0x5ae254+_0x2e8ce9(0x204));return _0x12bdea;}async[a0_0x2b744b(0x21d)](_0x181857){const _0x426e7a=a0_0x2b744b;if(!RESOLVER_CONFIG['CREATE_BACKUPS'])return null;try{const _0x14d975=_0x181857+RESOLVER_CONFIG['BACKUP_EXTENSION'];return await a0_0x48593f['copyFile'](_0x181857,_0x14d975),this['logger']?.[_0x426e7a(0x24b)]('Created\x20backup',{'backupPath':_0x14d975}),_0x14d975;}catch(_0x474031){return this[_0x426e7a(0x212)]?.[_0x426e7a(0x1fe)](_0x426e7a(0x206),{'error':_0x474031[_0x426e7a(0x252)]}),null;}}async['_fetchPackageInfo'](_0xcb6e01){const _0x5e11b1=a0_0x2b744b,_0x33bd1a=RESOLVER_CONFIG[_0x5e11b1(0x219)]+'/'+encodeURIComponent(_0xcb6e01);for(let _0x16eb44=0x1;_0x16eb44<=RESOLVER_CONFIG[_0x5e11b1(0x1db)];_0x16eb44++){try{const _0xfc30c=new AbortController(),_0x40ca08=setTimeout(()=>_0xfc30c['abort'](),RESOLVER_CONFIG[_0x5e11b1(0x21a)]),_0x569c4e=await fetch(_0x33bd1a,{'signal':_0xfc30c[_0x5e11b1(0x240)]});clearTimeout(_0x40ca08);if(!_0x569c4e['ok']){if(_0x569c4e[_0x5e11b1(0x23b)]===0x194)return this[_0x5e11b1(0x212)]?.[_0x5e11b1(0x1fe)]('Package\x20not\x20found:\x20'+_0xcb6e01),null;throw new Error('HTTP\x20'+_0x569c4e['status']+':\x20'+_0x569c4e[_0x5e11b1(0x21b)]);}const _0x1469eb=await _0x569c4e[_0x5e11b1(0x239)]();if(!_0x1469eb||typeof _0x1469eb!==_0x5e11b1(0x1f3)||!_0x1469eb[_0x5e11b1(0x1f0)])throw new Error(_0x5e11b1(0x230));return _0x1469eb;}catch(_0x5bcd66){if(_0x16eb44<RESOLVER_CONFIG['RETRY_ATTEMPTS'])this[_0x5e11b1(0x212)]?.[_0x5e11b1(0x203)]('Retry\x20'+_0x16eb44+'/'+RESOLVER_CONFIG[_0x5e11b1(0x1db)]+_0x5e11b1(0x22e)+_0xcb6e01),await new Promise(_0x3e09cf=>setTimeout(_0x3e09cf,RESOLVER_CONFIG['RETRY_DELAY']*_0x16eb44));else return this['logger']?.['error']('Failed\x20to\x20fetch\x20'+_0xcb6e01+':',_0x5bcd66['message']),null;}}return null;}async[a0_0x2b744b(0x232)](_0x3acc99,_0x11f69f){const _0x496ce0=a0_0x2b744b,_0x34a67c=await this['_fetchPackageInfo'](_0x3acc99);if(!_0x34a67c)return null;const _0x464677=_0x34a67c['dist-tags']?.[_0x496ce0(0x205)];if(!_0x464677)return null;const _0xe1eb0e=this[_0x496ce0(0x202)](_0x464677);if(!_0xe1eb0e)return null;if(this['_isComplexRange'](_0x11f69f)){const _0x40d62d=this[_0x496ce0(0x1ea)](_0x11f69f),_0x5e04d8=this['_satisfiesComplexRange'](_0x40d62d,_0xe1eb0e);if(_0x5e04d8)return _0x464677;return null;}const _0x1ece70=this[_0x496ce0(0x210)](_0x11f69f);if(!_0x1ece70)return null;const _0x458f52=this['_isUpdateAvailable'](_0x1ece70,_0xe1eb0e);if(_0x458f52)return _0x1ece70['prefix']+_0x464677;return null;}['_parseVersion'](_0x1d5e50){const _0x1802ec=a0_0x2b744b,_0x34f7f3=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,_0x3f39b8=_0x34f7f3['exec'](_0x1d5e50);if(!_0x3f39b8){const _0xc543e6=_0x1d5e50[_0x1802ec(0x201)](/^(\d+)\.(\d+)\.(\d+)/);if(_0xc543e6)return{'major':parseInt(_0xc543e6[0x1],0xa),'minor':parseInt(_0xc543e6[0x2],0xa),'patch':parseInt(_0xc543e6[0x3],0xa),'prerelease':null,'build':null};return null;}return{'major':parseInt(_0x3f39b8[0x1],0xa),'minor':parseInt(_0x3f39b8[0x2],0xa),'patch':parseInt(_0x3f39b8[0x3],0xa),'prerelease':_0x3f39b8[0x4]?_0x3f39b8[0x4]['split']('.'):null,'build':_0x3f39b8[0x5]||null};}[a0_0x2b744b(0x223)](_0x599bf8,_0x24e086){const _0x50410b=a0_0x2b744b;if(_0x599bf8['major']!==_0x24e086['major'])return _0x599bf8[_0x50410b(0x248)]-_0x24e086[_0x50410b(0x248)];if(_0x599bf8['minor']!==_0x24e086['minor'])return _0x599bf8['minor']-_0x24e086['minor'];if(_0x599bf8['patch']!==_0x24e086['patch'])return _0x599bf8[_0x50410b(0x20a)]-_0x24e086[_0x50410b(0x20a)];if(!_0x599bf8['prerelease']&&!_0x24e086['prerelease'])return 0x0;if(!_0x599bf8['prerelease']&&_0x24e086['prerelease'])return 0x1;if(_0x599bf8[_0x50410b(0x1dd)]&&!_0x24e086[_0x50410b(0x1dd)])return-0x1;return this[_0x50410b(0x221)](_0x599bf8['prerelease'],_0x24e086[_0x50410b(0x1dd)]);}[a0_0x2b744b(0x221)](_0x59173a,_0x4ee3aa){const _0x5ae11c=a0_0x2b744b,_0x198a62=Math[_0x5ae11c(0x233)](_0x59173a[_0x5ae11c(0x1f5)],_0x4ee3aa[_0x5ae11c(0x1f5)]);for(let _0x16bb5f=0x0;_0x16bb5f<_0x198a62;_0x16bb5f++){if(_0x16bb5f>=_0x59173a['length'])return-0x1;if(_0x16bb5f>=_0x4ee3aa['length'])return 0x1;const _0x5ad4a3=_0x59173a[_0x16bb5f],_0x51b098=_0x4ee3aa[_0x16bb5f],_0x5bdade=/^\d+$/[_0x5ae11c(0x20e)](_0x5ad4a3)?parseInt(_0x5ad4a3,0xa):null,_0x1ddff3=/^\d+$/[_0x5ae11c(0x20e)](_0x51b098)?parseInt(_0x51b098,0xa):null;if(_0x5bdade!==null&&_0x1ddff3!==null){if(_0x5bdade!==_0x1ddff3)return _0x5bdade-_0x1ddff3;continue;}if(_0x5bdade!==null&&_0x1ddff3===null)return-0x1;if(_0x5bdade===null&&_0x1ddff3!==null)return 0x1;if(_0x5ad4a3<_0x51b098)return-0x1;if(_0x5ad4a3>_0x51b098)return 0x1;}return 0x0;}['_parseVersionRange'](_0x2c48bb){const _0x255c0b=a0_0x2b744b,_0x4625a0=_0x2c48bb[_0x255c0b(0x214)](),_0x2bb557=/^(\d+|\*|x)(\.(\d+|\*|x))?(\.(\d+|\*|x))?$/i,_0x329f9d=_0x2bb557[_0x255c0b(0x1dc)](_0x4625a0);if(_0x329f9d){const _0x9b55af=_0x329f9d[0x1],_0x141e45=_0x329f9d[0x3],_0x3a523a=_0x329f9d[0x5],_0x4fcd6a=_0x9b55af==='*'||_0x9b55af['toLowerCase']()==='x'||_0x141e45===undefined||_0x141e45==='*'||_0x141e45['toLowerCase']()==='x'||_0x3a523a===undefined||_0x3a523a==='*'||_0x3a523a['toLowerCase']()==='x';if(_0x4fcd6a)return{'prefix':'','operator':_0x255c0b(0x250),'major':_0x9b55af==='*'||_0x9b55af[_0x255c0b(0x24d)]()==='x'?null:parseInt(_0x9b55af,0xa),'minor':!_0x141e45||_0x141e45==='*'||_0x141e45[_0x255c0b(0x24d)]()==='x'?null:parseInt(_0x141e45,0xa),'patch':!_0x3a523a||_0x3a523a==='*'||_0x3a523a['toLowerCase']()==='x'?null:parseInt(_0x3a523a,0xa),'original':_0x2c48bb};}let _0x1e009c='',_0xc5c0bb=_0x4625a0,_0x50ee0a='=';if(_0x4625a0[_0x255c0b(0x1d7)]('^'))_0x1e009c='^',_0xc5c0bb=_0x4625a0['slice'](0x1),_0x50ee0a='^';else{if(_0x4625a0['startsWith']('~'))_0x1e009c='~',_0xc5c0bb=_0x4625a0['slice'](0x1),_0x50ee0a='~';else{if(_0x4625a0[_0x255c0b(0x1d7)]('>='))_0x1e009c='>=',_0xc5c0bb=_0x4625a0['slice'](0x2)[_0x255c0b(0x214)](),_0x50ee0a='>=';else{if(_0x4625a0['startsWith']('>'))_0x1e009c='>',_0xc5c0bb=_0x4625a0['slice'](0x1)['trim'](),_0x50ee0a='>';else{if(_0x4625a0['startsWith']('<='))_0x1e009c='<=',_0xc5c0bb=_0x4625a0[_0x255c0b(0x22b)](0x2)[_0x255c0b(0x214)](),_0x50ee0a='<=';else _0x4625a0[_0x255c0b(0x1d7)]('<')&&(_0x1e009c='<',_0xc5c0bb=_0x4625a0['slice'](0x1)['trim'](),_0x50ee0a='<');}}}}const _0x5b423a=this[_0x255c0b(0x202)](_0xc5c0bb);if(!_0x5b423a)return null;return{'prefix':_0x1e009c,'operator':_0x50ee0a,'major':_0x5b423a[_0x255c0b(0x248)],'minor':_0x5b423a[_0x255c0b(0x249)],'patch':_0x5b423a['patch'],'prerelease':_0x5b423a[_0x255c0b(0x1dd)],'build':_0x5b423a[_0x255c0b(0x1e6)],'original':_0x2c48bb};}[a0_0x2b744b(0x20c)](_0x573424,_0x39e2d5){const _0x360e31=a0_0x2b744b,_0x1da978={'major':_0x573424[_0x360e31(0x248)],'minor':_0x573424[_0x360e31(0x249)],'patch':_0x573424['patch'],'prerelease':_0x573424[_0x360e31(0x1dd)]||null,'build':_0x573424[_0x360e31(0x1e6)]||null};switch(_0x573424['operator']){case'^':return this[_0x360e31(0x20d)](_0x1da978,_0x39e2d5);case'~':return this['_isTildeUpdateAvailable'](_0x1da978,_0x39e2d5);case'>=':case'>':return this['_isSimpleUpdateAvailable'](_0x1da978,_0x39e2d5);case'<':case'<=':return this['_isLessThanUpdateAvailable'](_0x573424,_0x39e2d5);case _0x360e31(0x250):return this['_isXRangeUpdateAvailable'](_0x573424,_0x39e2d5);case'=':default:return this['_isExactUpdateAvailable'](_0x1da978,_0x39e2d5);}}['_isCaretUpdateAvailable'](_0xe7942c,_0x367744){const _0x21ed5c=a0_0x2b744b,_0x12ba95=this['_compareVersions'](_0x367744,_0xe7942c);if(_0x12ba95<=0x0)return![];if(_0xe7942c['major']===0x0&&_0xe7942c['minor']===0x0)return _0x367744[_0x21ed5c(0x248)]===0x0&&_0x367744['minor']===0x0;if(_0xe7942c['major']===0x0)return _0x367744['major']===0x0&&_0x367744['minor']===_0xe7942c['minor'];return _0x367744['major']===_0xe7942c[_0x21ed5c(0x248)];}['_isTildeUpdateAvailable'](_0x37c8fc,_0x130e62){const _0x1532e6=a0_0x2b744b,_0xda32fc=this['_compareVersions'](_0x130e62,_0x37c8fc);if(_0xda32fc<=0x0)return![];return _0x130e62['major']===_0x37c8fc['major']&&_0x130e62[_0x1532e6(0x249)]===_0x37c8fc[_0x1532e6(0x249)];}[a0_0x2b744b(0x1fa)](_0x5d1a8c,_0x3e35e8){const _0xf31c73=this['_compareVersions'](_0x3e35e8,_0x5d1a8c);return _0xf31c73>0x0;}['_isExactUpdateAvailable'](_0x14b1dd,_0x553667){const _0x3f0358=a0_0x2b744b;return this[_0x3f0358(0x1fa)](_0x14b1dd,_0x553667);}['_isLessThanUpdateAvailable'](_0x4bfe56,_0x10c8a3){const _0xdf6f1c=this['_compareVersions'](_0x10c8a3,_0x4bfe56);if(_0x4bfe56['operator']==='<')return _0xdf6f1c<0x0;else{if(_0x4bfe56['operator']==='<=')return _0xdf6f1c<=0x0;}return![];}[a0_0x2b744b(0x242)](_0x2dac6c,_0x155810){const _0x4d3878=a0_0x2b744b;if(_0x2dac6c[_0x4d3878(0x248)]!==null&&_0x155810[_0x4d3878(0x248)]!==_0x2dac6c[_0x4d3878(0x248)])return![];if(_0x2dac6c['minor']!==null&&_0x155810[_0x4d3878(0x249)]!==_0x2dac6c[_0x4d3878(0x249)])return![];if(_0x2dac6c['patch']!==null&&_0x155810['patch']!==_0x2dac6c['patch'])return![];return!![];}[a0_0x2b744b(0x226)](_0x140446){const _0x5cf854=a0_0x2b744b;if(_0x140446[_0x5cf854(0x22d)]('||'))return!![];const _0x516e8f=_0x140446[_0x5cf854(0x214)]();if(_0x516e8f[_0x5cf854(0x1d7)]('^')||_0x516e8f['startsWith']('~'))return![];const _0x3321ac=_0x516e8f[_0x5cf854(0x1ef)](/\s+/)[_0x5cf854(0x1f4)](_0x300517=>_0x300517['length']>0x0);if(_0x3321ac[_0x5cf854(0x1f5)]>0x1){const _0x50d175=/^(>=?|<=?|\^|~|[0-9])/;return _0x3321ac['every'](_0x3741a7=>_0x50d175['test'](_0x3741a7));}return![];}['_parseComplexRange'](_0x928ba){const _0x52f919=a0_0x2b744b;if(_0x928ba[_0x52f919(0x22d)]('||')){const _0x4b2fa6=_0x928ba['split']('||')['map'](_0xee8df8=>_0xee8df8[_0x52f919(0x214)]());return{'type':'or','ranges':_0x4b2fa6[_0x52f919(0x227)](_0x167f76=>this['_parseComplexRange'](_0x167f76))};}const _0x3c8f7f=_0x928ba[_0x52f919(0x214)]()[_0x52f919(0x1ef)](/\s+/)['filter'](_0x5ac385=>_0x5ac385[_0x52f919(0x1f5)]>0x0);if(_0x3c8f7f[_0x52f919(0x1f5)]>0x1)return{'type':'and','ranges':_0x3c8f7f['map'](_0x24ee4b=>this['_parseVersionRange'](_0x24ee4b))};return{'type':_0x52f919(0x1eb),'range':this[_0x52f919(0x210)](_0x928ba)};}['_satisfiesRange'](_0x1cd934,_0x4ea27d){if(!_0x1cd934||!_0x4ea27d)return![];return this['_isUpdateAvailable'](_0x1cd934,_0x4ea27d);}[a0_0x2b744b(0x1d9)](_0x411ceb,_0x38e912){const _0x4c7990=a0_0x2b744b;if(!_0x411ceb||!_0x38e912)return![];switch(_0x411ceb[_0x4c7990(0x22f)]){case'simple':return this[_0x4c7990(0x1ed)](_0x411ceb[_0x4c7990(0x208)],_0x38e912);case'and':return _0x411ceb['ranges']['every'](_0x3e467d=>this['_satisfiesRange'](_0x3e467d,_0x38e912));case'or':return _0x411ceb[_0x4c7990(0x218)][_0x4c7990(0x1d8)](_0x4e3982=>this['_satisfiesComplexRange'](_0x4e3982,_0x38e912));default:return![];}}async['_checkDependencies'](_0x456c21){const _0x3614ad=a0_0x2b744b,_0x301fe2={},_0x9c0a5c=Object['entries'](_0x456c21);for(let _0x2686ea=0x0;_0x2686ea<_0x9c0a5c[_0x3614ad(0x1f5)];_0x2686ea+=RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']){const _0x47ad9b=_0x9c0a5c['slice'](_0x2686ea,_0x2686ea+RESOLVER_CONFIG['MAX_CONCURRENT_CHECKS']),_0x272e17=_0x47ad9b[_0x3614ad(0x227)](async([_0x198b64,_0x1dc044])=>{const _0x2ba701=_0x3614ad;try{const _0x3170c8=await this[_0x2ba701(0x232)](_0x198b64,_0x1dc044);if(_0x3170c8){const _0x33f874=_0x1dc044['match'](/^[\^~]/)?.[0x0]||'^';return{'pkg':_0x198b64,'newVersion':''+_0x33f874+_0x3170c8,'oldVersion':_0x1dc044};}return null;}catch(_0x2d61e1){return this[_0x2ba701(0x212)]?.[_0x2ba701(0x1de)]('Error\x20checking\x20'+_0x198b64+':',_0x2d61e1['message']),null;}}),_0x1785be=await Promise['all'](_0x272e17);_0x1785be['forEach'](_0x21e3df=>{const _0x2b6faa=_0x3614ad;_0x21e3df&&(_0x301fe2[_0x21e3df['pkg']]=_0x21e3df[_0x2b6faa(0x23e)]);});}return _0x301fe2;}async[a0_0x2b744b(0x22c)](_0x2b0258,_0x18e4c1={}){const _0x55870c=a0_0x2b744b;try{this['_validateParameters'](_0x2b0258);const {path:_0x4c89f4,mode:_0x46c6d6,includeDev:_0x359e57}=_0x2b0258,{projectDir:_0x2d0c00,agentId:_0xbfe589,directoryAccess:_0x251e05}=_0x18e4c1,_0x40e2a0=this['_resolveAndValidatePath'](_0x4c89f4,_0x18e4c1),_0xcb310c=a0_0x5d6d01['join'](_0x40e2a0,_0x55870c(0x222));this['logger']?.[_0x55870c(0x24b)](_0x55870c(0x1e1),{'mode':_0x46c6d6,'resolvedPath':_0x40e2a0,'includeDev':_0x359e57,'agentId':_0xbfe589});const _0x27ee4a=[];_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x209)+_0x40e2a0),_0x27ee4a['push']('Mode:\x20'+_0x46c6d6);try{await a0_0x48593f['access'](_0xcb310c);}catch{return{'success':![],'error':'No\x20package.json\x20found\x20at:\x20'+_0xcb310c,'output':_0x27ee4a[_0x55870c(0x1ec)]('\x0a')};}_0x27ee4a[_0x55870c(0x211)]('\x0a📦\x20Reading\x20package.json...');const _0xa56444=await a0_0x48593f['readFile'](_0xcb310c,'utf-8'),_0x12ef33=JSON['parse'](_0xa56444),_0x285eed={..._0x12ef33['dependencies']};_0x359e57&&_0x12ef33[_0x55870c(0x216)]&&Object['assign'](_0x285eed,_0x12ef33['devDependencies']);if(Object[_0x55870c(0x1fc)](_0x285eed)[_0x55870c(0x1f5)]===0x0)return{'success':!![],'mode':_0x46c6d6,'message':'No\x20dependencies\x20found\x20in\x20package.json','statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'output':_0x27ee4a['join']('\x0a')};if(Object['keys'](_0x285eed)[_0x55870c(0x1f5)]>RESOLVER_CONFIG['MAX_DEPENDENCIES'])return{'success':![],'error':_0x55870c(0x1e5)+Object['keys'](_0x285eed)['length']+_0x55870c(0x243)+RESOLVER_CONFIG[_0x55870c(0x1ff)],'output':_0x27ee4a[_0x55870c(0x1ec)]('\x0a')};_0x27ee4a[_0x55870c(0x211)]('📊\x20Found\x20'+Object['keys'](_0x285eed)['length']+'\x20dependencies\x20to\x20check'),_0x27ee4a['push']('🌐\x20Querying\x20npm\x20registry\x20for\x20updates...');const _0x1c3e06=await this[_0x55870c(0x1f8)](_0x285eed);_0x27ee4a['push'](_0x55870c(0x228)),_0x27ee4a['push']('📈\x20Updates\x20available:\x20'+Object[_0x55870c(0x1fc)](_0x1c3e06)['length']);if(Object[_0x55870c(0x1fc)](_0x1c3e06)[_0x55870c(0x1f5)]>0x0){_0x27ee4a['push']('\x0a📋\x20Available\x20updates:');for(const [_0x2f0a34,_0x27f519]of Object['entries'](_0x1c3e06)){const _0x10c858=_0x285eed[_0x2f0a34];_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x1df)+_0x2f0a34+':\x20'+_0x10c858+_0x55870c(0x1ee)+_0x27f519);}}else _0x27ee4a[_0x55870c(0x211)](_0x55870c(0x23c));if(_0x46c6d6==='check')return Object[_0x55870c(0x1fc)](_0x1c3e06)[_0x55870c(0x1f5)]>0x0&&_0x27ee4a['push']('\x0a💡\x20Run\x20with\x20mode=\x22fix\x22\x20or\x20mode=\x22auto\x22\x20to\x20apply\x20updates'),{'success':!![],'mode':'check','message':_0x55870c(0x245)+Object['keys'](_0x1c3e06)[_0x55870c(0x1f5)]+'\x20package(s)\x20with\x20available\x20updates','statistics':{'totalDependencies':Object[_0x55870c(0x1fc)](_0x285eed)['length'],'updatesAvailable':Object['keys'](_0x1c3e06)['length'],'updatesApplied':0x0,'errors':0x0},'updates':_0x1c3e06,'output':_0x27ee4a[_0x55870c(0x1ec)]('\x0a')};if((_0x46c6d6===_0x55870c(0x1f1)||_0x46c6d6===_0x55870c(0x215))&&Object['keys'](_0x1c3e06)[_0x55870c(0x1f5)]>0x0){_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x20b));const _0x4c43fb=await this['_createBackup'](_0xcb310c);_0x4c43fb?_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x241)+a0_0x5d6d01[_0x55870c(0x237)](_0x4c43fb)):_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x229));_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x1e8));for(const [_0x990d42,_0x15444e]of Object['entries'](_0x1c3e06)){_0x12ef33[_0x55870c(0x207)]?.[_0x990d42]&&(_0x12ef33[_0x55870c(0x207)][_0x990d42]=_0x15444e),_0x12ef33['devDependencies']?.[_0x990d42]&&(_0x12ef33['devDependencies'][_0x990d42]=_0x15444e);}await a0_0x48593f['writeFile'](_0xcb310c,JSON['stringify'](_0x12ef33,null,0x2)+'\x0a'),_0x27ee4a[_0x55870c(0x211)]('✅\x20package.json\x20updated'),_0x27ee4a[_0x55870c(0x211)]('\x0a📥\x20Installing\x20dependencies\x20(this\x20may\x20take\x20a\x20while)...');try{const {stdout:_0x27bbae,stderr:_0x11b9e2}=await exec('npm\x20install',{'cwd':_0x40e2a0,'timeout':RESOLVER_CONFIG['NPM_COMMAND_TIMEOUT'],'maxBuffer':0x400*0x400*0xa});if(_0x27bbae){const _0x2ba116=_0x27bbae['trim']()['split']('\x0a');_0x2ba116[_0x55870c(0x1f5)]>0xa?_0x27ee4a['push']('\x20\x20'+_0x2ba116['slice'](-0x5)['join'](_0x55870c(0x20f))):_0x27ee4a['push']('\x20\x20'+_0x27bbae[_0x55870c(0x214)]());}_0x11b9e2&&!_0x11b9e2['includes'](_0x55870c(0x236))&&_0x27ee4a['push'](_0x55870c(0x1f9)+_0x11b9e2['trim']());_0x27ee4a['push'](_0x55870c(0x23f));try{const {stdout:_0x2aa93f}=await exec(_0x55870c(0x24e),{'cwd':_0x40e2a0,'timeout':0x7530}),_0x197980=JSON['parse'](_0x2aa93f);if(_0x197980[_0x55870c(0x207)]){_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x23d));for(const _0x9ad39a of Object['keys'](_0x1c3e06)){_0x197980[_0x55870c(0x207)][_0x9ad39a]&&_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x1df)+_0x9ad39a+'@'+_0x197980[_0x55870c(0x207)][_0x9ad39a][_0x55870c(0x1f2)]);}}}catch(_0xfc4455){this[_0x55870c(0x212)]?.['debug'](_0x55870c(0x244),_0xfc4455[_0x55870c(0x252)]);}return{'success':!![],'mode':_0x46c6d6,'message':_0x55870c(0x1f6)+Object['keys'](_0x1c3e06)['length']+_0x55870c(0x21e),'statistics':{'totalDependencies':Object[_0x55870c(0x1fc)](_0x285eed)[_0x55870c(0x1f5)],'updatesAvailable':Object['keys'](_0x1c3e06)['length'],'updatesApplied':Object[_0x55870c(0x1fc)](_0x1c3e06)[_0x55870c(0x1f5)],'errors':0x0},'updates':_0x1c3e06,'backupCreated':_0x4c43fb!==null,'backupPath':_0x4c43fb,'output':_0x27ee4a['join']('\x0a')};}catch(_0x4f2276){_0x27ee4a[_0x55870c(0x211)](_0x55870c(0x1e3)+_0x4f2276[_0x55870c(0x252)]);if(_0x4c43fb)try{await a0_0x48593f['copyFile'](_0x4c43fb,_0xcb310c),_0x27ee4a['push']('\uD83D\uDD04 Restored package.json from backup');}catch(_0x1dbf4e){_0x27ee4a[_0x55870c(0x211)]('⚠️\x20\x20Failed\x20to\x20restore\x20backup');}return{'success':![],'mode':_0x46c6d6,'error':'npm\x20install\x20failed:\x20'+_0x4f2276['message'],'statistics':{'totalDependencies':Object[_0x55870c(0x1fc)](_0x285eed)['length'],'updatesAvailable':Object[_0x55870c(0x1fc)](_0x1c3e06)['length'],'updatesApplied':0x0,'errors':0x1},'updates':_0x1c3e06,'backupCreated':_0x4c43fb!==null,'output':_0x27ee4a['join']('\x0a')};}}else{if(_0x46c6d6==='fix'||_0x46c6d6==='auto')return _0x27ee4a['push']('\x0a✨\x20No\x20updates\x20needed'),{'success':!![],'mode':_0x46c6d6,'message':'All\x20dependencies\x20are\x20up-to-date','statistics':{'totalDependencies':Object[_0x55870c(0x1fc)](_0x285eed)['length'],'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x0},'updates':{},'output':_0x27ee4a['join']('\x0a')};}}catch(_0x3748f0){return this[_0x55870c(0x212)]?.[_0x55870c(0x1de)]('Dependency\x20resolver\x20error:',_0x3748f0),{'success':![],'error':_0x3748f0['message'],'statistics':{'totalDependencies':0x0,'updatesAvailable':0x0,'updatesApplied':0x0,'errors':0x1},'output':_0x3748f0[_0x55870c(0x252)]};}}}function a0_0x3a01(){const _0x336d91=['Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMC','cUkDJcbUCg0GAw5ZDgfSBcbMywLSzwq6ia','x3zHBgLKyxrLugfYyw1LDgvYCW','vg9Vig1HBNKGzgvWzw5Kzw5JAwvZicG','yNvPBgq','nti0nZGYmJbWz21KCuW','cVcFM6aGifvWzgf0Aw5NihbHy2THz2uUANnVBI4UlG','mtC4mZG2m1feCvzvqW','x3bHCNnLq29TCgXLEfjHBMDL','C2LTCgXL','AM9PBG','x3nHDgLZzMLLC1jHBMDL','iokgKIa','C3bSAxq','zgLZDc10ywDZ','zML4','DMvYC2LVBG','B2jQzwn0','zMLSDgvY','BgvUz3rO','u3vJy2vZC2z1BgX5ihvWzgf0zwqG','nteYmdy2rgzdBhD3','x2nOzwnRrgvWzw5Kzw5JAwvZ','4PQG77Ipica','x2LZu2LTCgXLvxbKyxrLqxzHAwXHyMXL','yM9VBgvHBG','A2v5CW','Bw9Kzq','D2fYBG','tufyx0rfuevorevoq0LfuW','mtbwwLnTrKq','Bwf0y2G','x3bHCNnLvMvYC2LVBG','zgvIDwC','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','Bgf0zxn0','rMfPBgvKihrVignYzwf0zsbIywnRDxa','zgvWzw5Kzw5JAwvZ','CMfUz2u','8j+uJsbdAgvJA2LUzYbKzxbLBMrLBMnPzxmGAw46ia','Cgf0y2G','cVcFKR4Gq3jLyxrPBMCGyMfJA3vWig9MihbHy2THz2uUANnVBI4UlG','x2LZvxbKyxrLqxzHAwXHyMXL','x2LZq2fYzxrvCgrHDgvbDMfPBgfIBgu','DgvZDa','cIaG','x3bHCNnLvMvYC2LVBLjHBMDL','ChvZAa','Bg9Nz2vY','Cgf0Aa','DhjPBq','yxv0BW','zgv2rgvWzw5Kzw5JAwvZ','D29YA2LUz0rPCMvJDg9YEq','CMfUz2vZ','tLbnx1jfr0Ltvfjzx1vsta','uKvhsvnuuLLFveLnru9vva','C3rHDhvZvgv4Da','mZLLrLn5C1a','x2nYzwf0zujHy2T1Ca','ihbHy2THz2uOCYK','mJyXmtK3nfLVruvvta','x3bHCNnLqM9VBgvHBG','x2nVBxbHCMvqCMvYzwXLyxnL','CgfJA2fNzs5QC29U','x2nVBxbHCMvwzxjZAw9UCW','y3DK','Aw5JBhvKzurLDG','x2LZq29TCgXLEfjHBMDL','BwfW','cUkCHsbszwDPC3rYEsbJAgvJAYbJB21WBgv0zq','4PQG77IpicbcywnRDxaGy3jLyxrPB24GzMfPBgvKlcbJB250Aw51Aw5NigfUExDHEs4UlG','ndCZndK2s09QvhrM','C2XPy2u','zxHLy3v0zq','Aw5JBhvKzxm','igzVCIa','DhLWzq','sw52ywXPzcbYzwDPC3rYEsbYzxnWB25ZzsbMB3jTyxq','nJq2odq0og1jrwDUuW','x2DLDeXHDgvZDenVBxbHDgLIBgvwzxjZAw9U','Bwf4','n2jcB1riEa','nxzutKvpqG','BNbTifDbuK4','yMfZzw5HBwu','AxnbyNnVBhv0zq','ANnVBG','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','C3rHDhvZ','cVcFJOKGqwXSigrLCgvUzgvUy2LLCYbHCMuGDxaTDg8Tzgf0zse','cVcFK6yGsw5ZDgfSBgvKihzLCNnPB25ZoG','BMv3vMvYC2LVBG','4PYfieLUC3rHBgXHDgLVBIbJB21WBgv0zq','C2LNBMfS','4PYfiejHy2T1CcbJCMvHDgvKoIa','x2LZwfjHBMDLvxbKyxrLqxzHAwXHyMXL','ksWGBwf4igfSBg93zwq6ia','BNbTigXZigzHAwXLzdO','rM91BMqG','revgqvvmvf9nt0rf','lMjHy2T1Cc5QC29U','BwfQB3i','BwLUB3i','lIbnDxn0igjLig9UzsbVzJOG','Aw5MBW','nZm1odG3ouTmwKj0uG','Dg9mB3DLCKnHC2u','BNbTigXZic0TzgvWDgG9mcaTlwPZB24','BM9YBwfSAxPL','Ec1Yyw5Nzq','C3rYAw5N','BwvZC2fNzq','C3rHCNrZv2L0Aa','C29Tzq','x3nHDgLZzMLLC0nVBxbSzxHsyw5Nzq','y2HLy2S','uKvuuLLFqvruru1qvfm','zxHLyW','ChjLCMvSzwfZzq','zxjYB3i','icdIGkiG','nvnjAvvqua','rgvWzw5Kzw5JEsbYzxnVBhzLCIbLEgvJDxrPBMC'];a0_0x3a01=function(){return _0x336d91;};return a0_0x3a01();}export default DependencyResolverTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4c7ca7=a0_0x577b;(function(_0x263ab4,_0x4239f6){const _0x1bb705=a0_0x577b,_0x35fc4d=_0x263ab4();while(!![]){try{const _0x317059=-parseInt(_0x1bb705(0x222))/0x1+parseInt(_0x1bb705(0x1de))/0x2*(parseInt(_0x1bb705(0x206))/0x3)+-parseInt(_0x1bb705(0x21b))/0x4+-parseInt(_0x1bb705(0x21a))/0x5*(-parseInt(_0x1bb705(0x1f9))/0x6)+-parseInt(_0x1bb705(0x1e9))/0x7+parseInt(_0x1bb705(0x22a))/0x8*(-parseInt(_0x1bb705(0x225))/0x9)+parseInt(_0x1bb705(0x221))/0xa*(parseInt(_0x1bb705(0x241))/0xb);if(_0x317059===_0x4239f6)break;else _0x35fc4d['push'](_0x35fc4d['shift']());}catch(_0x3d6eef){_0x35fc4d['push'](_0x35fc4d['shift']());}}}(a0_0x45e1,0x687c6));function a0_0x577b(_0xcf8322,_0x2c7f4e){_0xcf8322=_0xcf8322-0x1d6;const _0x45e150=a0_0x45e1();let _0x577b11=_0x45e150[_0xcf8322];if(a0_0x577b['ZSmHqW']===undefined){var _0xdc3c51=function(_0x5bddc2){const _0xd114fb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c8863='',_0x34086d='';for(let _0x18e653=0x0,_0x5a3347,_0x24b61d,_0x43dda3=0x0;_0x24b61d=_0x5bddc2['charAt'](_0x43dda3++);~_0x24b61d&&(_0x5a3347=_0x18e653%0x4?_0x5a3347*0x40+_0x24b61d:_0x24b61d,_0x18e653++%0x4)?_0x4c8863+=String['fromCharCode'](0xff&_0x5a3347>>(-0x2*_0x18e653&0x6)):0x0){_0x24b61d=_0xd114fb['indexOf'](_0x24b61d);}for(let _0xf3a24b=0x0,_0x4a5933=_0x4c8863['length'];_0xf3a24b<_0x4a5933;_0xf3a24b++){_0x34086d+='%'+('00'+_0x4c8863['charCodeAt'](_0xf3a24b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34086d);};a0_0x577b['MOEmbJ']=_0xdc3c51,a0_0x577b['BIWlOJ']={},a0_0x577b['ZSmHqW']=!![];}const _0x58cd15=_0x45e150[0x0],_0x350e39=_0xcf8322+_0x58cd15,_0x376af8=a0_0x577b['BIWlOJ'][_0x350e39];return!_0x376af8?(_0x577b11=a0_0x577b['MOEmbJ'](_0x577b11),a0_0x577b['BIWlOJ'][_0x350e39]=_0x577b11):_0x577b11=_0x376af8,_0x577b11;}function a0_0x45e1(){const _0x35f42f=['zxH0CMfJDef0DhjPyNv0zq','tufyx05fv19dt05uru5ux1njwKu','AxnbC3LUyW','C3rHCNrZv2L0Aa','CMvWBgfJzw1LBNrZ','ChvZAa','Aw5MBW','zMLSzxm','BMv3q29UDgvUDcb0B28GBgfYz2uGkg1HEca','yMfJA3vWq3jLyxrLza','ntm3mJvIzwXszxe','mZiZnti4mgjTsNL3uW','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','AM9PBG','zMLSzxnqCM9JzxnZzwq','z2vUzxjHDgvtDw1Tyxj5','yxbWBhLszxbSywnLBwvUDa','mJKYmhLuAhL5ta','mtm5odi4yMDSt3bp','y291BNrpy2n1CNjLBMnLCW','DhjPBq','ndi0nJjWr09JCwC','zxHLyW','CMvWBgfJzq','ywnJzxnZ','BwfW','mtm4nhfjq2zcwa','ig1PC3nPBMCGBMv3q29UDgvUDa','yxbWBhLuCMLTtw9Kzq','tufyx0zjtevFu0LArq','z2v0rgvZy3jPChrPB24','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','z2vUzxjHDgveAwzM','Aw5JBhvKzxm','cLbYB2nLC3nLzca','qKfds1vqx0vyvevou0LptG','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','ugfYyw1LDgvYihbHCNnPBMCGzMfPBgvKoIa','lMjHAW','CMvWBgfJzunVBMzPzW','CgfYC2vku09o','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','C2L6zq','BgLUzxmTBgLTAxq','zMLSzxmGBxvZDcbIzsbHBIbHCNjHEq','zMLSzs1JB250zw50lxjLCgXHy2u','Cgf0Aa','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','mZaXmdDQugHNqM8','AgfZt3DUuhjVCgvYDhK','Bwf4','BMv3q29UDgvUDa','C3rYAw5N','CMvZB2X2zq','Bw9Kzq','Bg9Nz2vY','BwvZC2fNzq','sw52ywXPzcbTB2rLoIa','nti0oeTZtuX0DW','iebacG','CMvHzezPBgu','D3jPDgvgAwXL','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','B2XKq29UDgvUDa','D2fYBG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','BMv3BgLUzxm','igzPBgvZigLUig9UzsbVCgvYyxrPB24','revgqvvmvf9uuKLnx01preu','ota3mtm3rejHwM5g','ihrVia','BgvUz3rO','tufyx1jfueXbq0vnru5uu19qrvjFrKLmrq','C3rYAw5NAwz5','ywrK','DxrMltG','tufyx0rjrKzFteLorvm','cKvYCM9YCZOG','rMLSzsa','zxjYB3i','igzPBguOCYKktw9KAwzPzwqG','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','tufyx09mrf9dt05uru5ux1njwKu','AxnbyNnVBhv0zq','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','ndC0BhLtq2LT','twfKzsa','ChjVy2vZC0zPBgu','CMvWBgfJzw1LBNrZtwfKzq','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','y291BNq','tufyx0zjtevtx1bfuL9puevsqvrjt04','D29YA2LUz0rPCMvJDg9YEq','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','zMLSzxnnB2rPzMLLza','BgLUzxnmAw1PDa','AxnbCNjHEq','C3bSAxq','nZCXCevWu3fI','y3DK','tufyx0XjtKvFuKfor0vFu0LArq','rwfJAcbMAwXLig11C3qGAgf2zsbHihbHDgG','rMLSzsb0B28GBgfYz2uGkg1HEca','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','Dg90ywXszxbSywnLBwvUDhm','AgfZ','zxjYB3jZ','tM8GzgLMzMvYzw5Jzxm'];a0_0x45e1=function(){return _0x35f42f;};return a0_0x45e1();}import{BaseTool}from'./baseTool.js';import{promises as a0_0x4c8863}from'fs';import a0_0x34086d from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':a0_0x4c7ca7(0x236),'DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':a0_0x4c7ca7(0x224)};class FileContentReplaceTool extends BaseTool{constructor(_0x18e653={},_0x5a3347=null){const _0x312cac=a0_0x4c7ca7;super(_0x18e653,_0x5a3347),this['id']='file-content-replace',this['requiresProject']=!![],this[_0x312cac(0x212)]=!![],this['timeout']=_0x18e653['timeout']||0x1d4c0,this[_0x312cac(0x237)]={...REPLACE_CONFIG,..._0x18e653[_0x312cac(0x237)]};}[a0_0x4c7ca7(0x22e)](){const _0x179a39=a0_0x4c7ca7;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x20\x225\x22,\x20\x225,10,15\x22,\x20\x225-10\x22,\x20\x221-5,10,15-20\x22\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20props.onClick?.(event);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/App.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20API_URL\x20=\x20\x27http://localhost:3000\x27\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20API_URL\x20=\x20process.env.API_URL\x22,\x0a\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x2210-20\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/config.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22DEBUG\x20=\x20false\x22,\x20\x22newContent\x22:\x20\x22DEBUG\x20=\x20true\x22\x20},\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27error\x27\x22,\x20\x22newContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27debug\x27\x22\x20}\x0a\x20\x20\x20\x20]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22version\x20=\x20\x271.0.0\x27\x22,\x20\x22newContent\x22:\x20\x22version\x20=\x20\x271.1.0\x27\x22\x20}]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22package.json\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.0.0\x5c\x22\x22,\x20\x22newContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.1.0\x5c\x22\x22,\x20\x22mode\x22:\x20\x22none\x22\x20}]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aFEATURES:\x0a-\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a-\x20Before/after\x20diff\x20reports\x0a-\x20Replacement\x20counting\x20and\x20statistics\x0a-\x20Multi-file\x20operations\x0a-\x20Line-limited\x20replacements\x0a-\x20Intelligent\x20whitespace\x20handling\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x179a39(0x22d)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG[_0x179a39(0x1f6)]/0x400+'KB\x0a-\x20Maximum\x20new\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+_0x179a39(0x1fd)+REPLACE_CONFIG[_0x179a39(0x1ec)]+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG[_0x179a39(0x1ff)]+'\x0a\x20\x20\x20\x20';}['parseParameters'](_0x24b61d){const _0x3e9233=a0_0x4c7ca7;try{if(_0x24b61d[_0x3e9233(0x224)]()[_0x3e9233(0x213)]('{'))return this['parseJSON'](_0x24b61d);return this['parseXML'](_0x24b61d);}catch(_0x43dda3){this['logger']?.[_0x3e9233(0x1f3)](_0x3e9233(0x239),{'error':_0x43dda3['message']});throw new Error(_0x3e9233(0x235)+_0x43dda3['message']);}}['parseJSON'](_0xf3a24b){const _0x270fad=a0_0x4c7ca7,_0x4a5933=JSON['parse'](_0xf3a24b);if(!_0x4a5933['files']||!Array['isArray'](_0x4a5933[_0x270fad(0x217)]))throw new Error(_0x270fad(0x1e5));return{'files':_0x4a5933['files'][_0x270fad(0x229)](_0x2098b6=>({'path':_0x2098b6['path'],'replacements':(_0x2098b6[_0x270fad(0x214)]||[])['map'](_0x17d52c=>({'oldContent':_0x17d52c['oldContent'],'newContent':_0x17d52c['newContent'],'mode':_0x17d52c[_0x270fad(0x1da)]||REPLACE_CONFIG[_0x270fad(0x1e8)],'linesLimit':_0x17d52c['linesLimit']||null}))}))};}['parseXML'](_0x3c1cd6){const _0x47b1cf=a0_0x4c7ca7,_0x1bc4d8=[],_0x2fd417=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x234221;while((_0x234221=_0x2fd417['exec'](_0x3c1cd6))!==null){const _0x2313ef=_0x234221[0x1],_0x3ee31d=_0x234221[0x2],_0x3fce28=[],_0x972d40=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x2d73d6;while((_0x2d73d6=_0x972d40['exec'](_0x3ee31d))!==null){const _0x51ebd5=_0x2d73d6[0x1]||'',_0x37b289=_0x2d73d6[0x2],_0x3ec7ff=this['extractAttribute'](_0x51ebd5,_0x47b1cf(0x1da))||REPLACE_CONFIG[_0x47b1cf(0x1e8)],_0x22bf71=this[_0x47b1cf(0x210)](_0x51ebd5,_0x47b1cf(0x23c)),_0x8744be=/<old-content>([\s\S]*?)<\/old-content>/i[_0x47b1cf(0x226)](_0x37b289);if(!_0x8744be){this['logger']?.[_0x47b1cf(0x1e4)]('Missing\x20old-content\x20in\x20replace\x20tag');continue;}const _0x297edd=_0x8744be[0x1],_0x30fc28=/<new-content>([\s\S]*?)<\/new-content>/i[_0x47b1cf(0x226)](_0x37b289);if(!_0x30fc28){this['logger']?.[_0x47b1cf(0x1e4)](_0x47b1cf(0x234));continue;}const _0x321a28=_0x30fc28[0x1],_0x1b3438=this[_0x47b1cf(0x22c)](_0x297edd,_0x3ec7ff),_0x2dcf31=this['applyTrimMode'](_0x321a28,_0x3ec7ff);_0x3fce28[_0x47b1cf(0x215)]({'oldContent':_0x1b3438,'newContent':_0x2dcf31,'mode':_0x3ec7ff,'linesLimit':_0x22bf71});}_0x3fce28['length']>0x0&&_0x1bc4d8[_0x47b1cf(0x215)]({'path':_0x2313ef,'replacements':_0x3fce28});}return{'files':_0x1bc4d8};}['extractAttribute'](_0x2db63c,_0x411d75){const _0x5c95d2=new RegExp(_0x411d75+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x2e180f=_0x5c95d2['exec'](_0x2db63c);return _0x2e180f?_0x2e180f[0x1]:null;}[a0_0x4c7ca7(0x22c)](_0x39bae9,_0x5abdea){const _0x43d036=a0_0x4c7ca7;switch(_0x5abdea){case _0x43d036(0x1e6):return _0x39bae9[_0x43d036(0x227)](/^\n+|\n+$/g,'');case'none':return _0x39bae9;case _0x43d036(0x224):default:return _0x39bae9[_0x43d036(0x224)]();}}[a0_0x4c7ca7(0x22f)](){return['files'];}['customValidateParameters'](_0x192eb2){const _0x35a375=a0_0x4c7ca7,_0x17a9eb=[];if(!_0x192eb2[_0x35a375(0x217)]||!Array[_0x35a375(0x204)](_0x192eb2['files']))_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x23d));else{_0x192eb2['files'][_0x35a375(0x1eb)]===0x0&&_0x17a9eb[_0x35a375(0x215)]('files\x20array\x20cannot\x20be\x20empty');_0x192eb2[_0x35a375(0x217)]['length']>this['replaceConfig'][_0x35a375(0x1ff)]&&_0x17a9eb[_0x35a375(0x215)]('Cannot\x20process\x20more\x20than\x20'+this[_0x35a375(0x237)]['MAX_FILES_PER_OPERATION']+_0x35a375(0x1e7));for(const _0xb55524 of _0x192eb2['files']){!_0xb55524['path']&&_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x209));_0xb55524[_0x35a375(0x23f)]&&_0xb55524[_0x35a375(0x23f)][_0x35a375(0x231)]('..')&&_0x17a9eb['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security:\x20'+_0xb55524[_0x35a375(0x23f)]);if(!_0xb55524[_0x35a375(0x214)]||!Array[_0x35a375(0x204)](_0xb55524[_0x35a375(0x214)]))_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x1f2)+_0xb55524[_0x35a375(0x23f)]+_0x35a375(0x201));else{if(_0xb55524['replacements'][_0x35a375(0x1eb)]===0x0)_0x17a9eb[_0x35a375(0x215)](_0x35a375(0x1f2)+_0xb55524[_0x35a375(0x23f)]+'\x20replacements\x20array\x20cannot\x20be\x20empty');else for(const _0x4f7d9a of _0xb55524['replacements']){!_0x4f7d9a[_0x35a375(0x1e3)]&&_0x4f7d9a[_0x35a375(0x1e3)]!==''&&_0x17a9eb['push']('Replacement\x20in\x20'+_0xb55524['path']+'\x20missing\x20oldContent'),!_0x4f7d9a['newContent']&&_0x4f7d9a['newContent']!==''&&_0x17a9eb['push']('Replacement\x20in\x20'+_0xb55524['path']+_0x35a375(0x22b)),_0x4f7d9a['oldContent']&&_0x4f7d9a[_0x35a375(0x1e3)][_0x35a375(0x1eb)]>this['replaceConfig']['MAX_OLD_CONTENT_SIZE']&&_0x17a9eb[_0x35a375(0x215)]('oldContent\x20too\x20large\x20(max\x20'+this[_0x35a375(0x237)][_0x35a375(0x1f6)]/0x400+'KB)'),_0x4f7d9a[_0x35a375(0x1d7)]&&_0x4f7d9a[_0x35a375(0x1d7)][_0x35a375(0x1eb)]>this['replaceConfig']['MAX_NEW_CONTENT_SIZE']&&_0x17a9eb['push'](_0x35a375(0x218)+this['replaceConfig'][_0x35a375(0x211)]/0x400+'KB)'),_0x4f7d9a[_0x35a375(0x1da)]&&![_0x35a375(0x224),_0x35a375(0x1e6),'none'][_0x35a375(0x231)](_0x4f7d9a[_0x35a375(0x1da)])&&_0x17a9eb['push'](_0x35a375(0x1dd)+_0x4f7d9a[_0x35a375(0x1da)]+_0x35a375(0x240));}}}}if(_0x17a9eb['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x17a9eb['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x56dc9a){const _0x11249f=a0_0x4c7ca7;if(!_0x56dc9a[_0x11249f(0x217)]||!Array['isArray'](_0x56dc9a[_0x11249f(0x217)])||_0x56dc9a['files'][_0x11249f(0x1eb)]===0x0)return![];const _0x2631bb=_0x56dc9a[_0x11249f(0x217)][0x0];if(!_0x2631bb['replacements']||!Array['isArray'](_0x2631bb[_0x11249f(0x214)])||_0x2631bb['replacements']['length']===0x0)return![];return _0x2631bb['replacements'][0x0][_0x11249f(0x242)]('mode');}async['execute'](_0x353985,_0x22d818){const _0x122102=a0_0x4c7ca7;typeof _0x353985===_0x122102(0x1d8)&&(this['logger']?.['info'](_0x122102(0x21c)),_0x353985=this['parseParameters'](_0x353985));_0x353985&&typeof _0x353985==='object'&&_0x353985[_0x122102(0x217)]&&!this['_isNormalizedParams'](_0x353985)&&(this['logger']?.['info'](_0x122102(0x23a)),_0x353985=this[_0x122102(0x238)](JSON[_0x122102(0x1ed)](_0x353985)));const {files:_0x487e7f}=_0x353985,{projectDir:_0x129487,agentId:_0x236c3e,directoryAccess:_0x45c59c}=_0x22d818;let _0x9bff9c=_0x129487||process[_0x122102(0x207)]();_0x45c59c&&_0x45c59c['workingDirectory']&&(_0x9bff9c=_0x45c59c[_0x122102(0x200)],this['logger']?.[_0x122102(0x216)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x45c59c[_0x122102(0x200)],'agentId':_0x236c3e}));this[_0x122102(0x1db)]?.['info'](_0x122102(0x20b),{'fileCount':_0x487e7f['length'],'workingDirectory':_0x9bff9c,'agentId':_0x236c3e});const _0x1f85b2=[],_0x37ffb0={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x40fd67 of _0x487e7f){try{const _0x57c201=await this[_0x122102(0x1fb)](_0x40fd67,_0x9bff9c,_0x45c59c);_0x1f85b2[_0x122102(0x215)](_0x57c201),_0x37ffb0['filesProcessed']++,_0x57c201[_0x122102(0x1fc)]>0x0&&(_0x37ffb0[_0x122102(0x202)]++,_0x37ffb0[_0x122102(0x20c)]+=_0x57c201['replacementsMade']),_0x57c201[_0x122102(0x219)]&&_0x37ffb0['backupsCreated']++;}catch(_0xcc56d3){this[_0x122102(0x1db)]?.[_0x122102(0x1f3)](_0x122102(0x1f5)+_0x40fd67[_0x122102(0x23f)],{'error':_0xcc56d3[_0x122102(0x1dc)]}),_0x1f85b2['push']({'filePath':_0x40fd67['path'],'success':![],'error':_0xcc56d3['message']}),_0x37ffb0[_0x122102(0x20e)]++;}}return{'success':_0x37ffb0['errors']===0x0,'results':_0x1f85b2,'statistics':_0x37ffb0,'summary':this['generateSummary'](_0x37ffb0),'toolUsed':_0x122102(0x23e)};}async['processFile'](_0x25d7b9,_0x389ea6,_0x4b1c00){const _0x4b652d=a0_0x4c7ca7,{path:_0x435ba4,replacements:_0x3f0266}=_0x25d7b9,_0x3d6b92=a0_0x34086d[_0x4b652d(0x1f7)](_0x435ba4)?_0x435ba4:a0_0x34086d[_0x4b652d(0x1d9)](_0x389ea6,_0x435ba4);if(_0x4b1c00){const _0x4ffa6c=this['isPathAccessible'](_0x3d6b92,_0x389ea6,_0x4b1c00);if(!_0x4ffa6c)throw new Error('Path\x20not\x20accessible:\x20'+_0x435ba4);}try{await a0_0x4c8863[_0x4b652d(0x228)](_0x3d6b92);}catch(_0x46a949){throw new Error('File\x20not\x20found:\x20'+_0x435ba4);}const _0x41a5fc=await a0_0x4c8863['stat'](_0x3d6b92);if(_0x41a5fc[_0x4b652d(0x23b)]>this[_0x4b652d(0x237)]['MAX_FILE_SIZE'])throw new Error(_0x4b652d(0x20a)+this[_0x4b652d(0x237)][_0x4b652d(0x22d)]/(0x400*0x400)+'MB):\x20'+_0x435ba4);let _0x247875=await a0_0x4c8863[_0x4b652d(0x1e0)](_0x3d6b92,'utf-8');const _0x5889a5=_0x247875;let _0x4cef4a=![];if(this['replaceConfig']['CREATE_BACKUPS']){const _0xd22525=_0x3d6b92+this['replaceConfig'][_0x4b652d(0x233)];try{await a0_0x4c8863[_0x4b652d(0x1e1)](_0xd22525,_0x5889a5,_0x4b652d(0x1ef)),_0x4cef4a=!![];}catch(_0x2495e1){this['logger']?.['warn']('Failed\x20to\x20create\x20backup:\x20'+_0x2495e1[_0x4b652d(0x1dc)]);}}let _0x144cce=0x0;const _0x324700=[];for(const _0x3a4c21 of _0x3f0266){const _0x1d6f62=await this[_0x4b652d(0x220)](_0x247875,_0x3a4c21['oldContent'],_0x3a4c21['newContent'],_0x3a4c21[_0x4b652d(0x203)],_0x3a4c21[_0x4b652d(0x1da)]);_0x247875=_0x1d6f62[_0x4b652d(0x1d7)],_0x144cce+=_0x1d6f62[_0x4b652d(0x1fe)],_0x324700[_0x4b652d(0x215)]({'oldContent':_0x3a4c21[_0x4b652d(0x1e3)]['substring'](0x0,0x32)+(_0x3a4c21['oldContent'][_0x4b652d(0x1eb)]>0x32?'...':''),'newContent':_0x3a4c21['newContent']['substring'](0x0,0x32)+(_0x3a4c21[_0x4b652d(0x1d7)][_0x4b652d(0x1eb)]>0x32?'...':''),'count':_0x1d6f62[_0x4b652d(0x1fe)],'mode':_0x3a4c21[_0x4b652d(0x1da)],'linesLimit':_0x3a4c21[_0x4b652d(0x203)]});}_0x144cce>0x0&&await a0_0x4c8863[_0x4b652d(0x1e1)](_0x3d6b92,_0x247875,_0x4b652d(0x1ef));const _0x1fc68a=_0x144cce>0x0?this[_0x4b652d(0x230)](_0x5889a5,_0x247875):null;return{'filePath':_0x435ba4,'resolvedPath':_0x3d6b92,'success':!![],'replacementsMade':_0x144cce,'backupCreated':_0x4cef4a,'replacementDetails':_0x324700,'diff':_0x1fc68a,'message':_0x144cce>0x0?_0x4b652d(0x1fa)+_0x144cce+'\x20replacement(s)\x20in\x20'+_0x435ba4:'No\x20replacements\x20made\x20in\x20'+_0x435ba4+'\x20(content\x20not\x20found)'};}['isPathAccessible'](_0x25e4e4,_0x147ae1,_0x3be42d){const _0x5ab688=a0_0x4c7ca7,_0x3835c2=a0_0x34086d['relative'](_0x147ae1,_0x25e4e4);if(!_0x3835c2['startsWith']('..')&&!a0_0x34086d[_0x5ab688(0x1f7)](_0x3835c2))return!![];if(_0x3be42d[_0x5ab688(0x1e2)])for(const _0x276467 of _0x3be42d['writeEnabledDirectories']){const _0x1b6391=a0_0x34086d['relative'](_0x276467,_0x25e4e4);if(!_0x1b6391[_0x5ab688(0x213)]('..')&&!a0_0x34086d['isAbsolute'](_0x1b6391))return!![];}return![];}async['applyReplacement'](_0x5f0f84,_0x125436,_0x17c487,_0x214cba,_0x4882c6){const _0x1e268e=a0_0x4c7ca7;if(!_0x214cba){const _0x5662c9=this[_0x1e268e(0x223)](_0x5f0f84,_0x125436);if(_0x5662c9===0x0)return{'newContent':_0x5f0f84,'count':0x0};const _0x140084=_0x5f0f84['split'](_0x125436)[_0x1e268e(0x21d)](_0x17c487);return{'newContent':_0x140084,'count':_0x5662c9};}const _0x18f1b2=this['parseLineRanges'](_0x214cba),_0x4ff4cc=_0x5f0f84['split']('\x0a');let _0x3cc872=0x0;for(let _0x5b3f0d=0x0;_0x5b3f0d<_0x4ff4cc['length'];_0x5b3f0d++){const _0x3021ee=_0x5b3f0d+0x1;if(_0x18f1b2[_0x1e268e(0x20d)](_0x3021ee)){if(_0x4ff4cc[_0x5b3f0d]['includes'](_0x125436)){const _0x45810c=this[_0x1e268e(0x223)](_0x4ff4cc[_0x5b3f0d],_0x125436);_0x4ff4cc[_0x5b3f0d]=_0x4ff4cc[_0x5b3f0d][_0x1e268e(0x205)](_0x125436)[_0x1e268e(0x21d)](_0x17c487),_0x3cc872+=_0x45810c;}}}return{'newContent':_0x4ff4cc[_0x1e268e(0x21d)]('\x0a'),'count':_0x3cc872};}[a0_0x4c7ca7(0x223)](_0x193362,_0xfdb902){const _0x2a511b=a0_0x4c7ca7;if(!_0xfdb902)return 0x0;return _0x193362[_0x2a511b(0x205)](_0xfdb902)['length']-0x1;}['parseLineRanges'](_0x3ebbbc){const _0x15f862=a0_0x4c7ca7,_0x4ca531=new Set();if(!_0x3ebbbc||_0x3ebbbc[_0x15f862(0x224)]()==='')return _0x4ca531;const _0x3ac6d3=_0x3ebbbc['split'](',');for(const _0x5d7b90 of _0x3ac6d3){const _0x5e6e11=_0x5d7b90[_0x15f862(0x224)]();if(_0x5e6e11==='')continue;if(_0x5e6e11[_0x15f862(0x231)]('-')){const [_0x172861,_0x1eece8]=_0x5e6e11['split']('-')['map'](_0x21394c=>parseInt(_0x21394c['trim'](),0xa));if(!isNaN(_0x172861)&&!isNaN(_0x1eece8)&&_0x1eece8-_0x172861<this['replaceConfig'][_0x15f862(0x208)])for(let _0x556eab=_0x172861;_0x556eab<=_0x1eece8;_0x556eab++){_0x4ca531[_0x15f862(0x1ee)](_0x556eab);}}else{const _0x1144ae=parseInt(_0x5e6e11,0xa);!isNaN(_0x1144ae)&&_0x4ca531[_0x15f862(0x1ee)](_0x1144ae);}}return _0x4ca531;}[a0_0x4c7ca7(0x230)](_0x5a2189,_0x5a7e2b){const _0x14b920=a0_0x4c7ca7,_0xb6fb8d=_0x5a2189[_0x14b920(0x205)]('\x0a'),_0x1391af=_0x5a7e2b['split']('\x0a');let _0x5cefbf=-0x1,_0x4bf504=-0x1;const _0x1d6a70=Math[_0x14b920(0x1d6)](_0xb6fb8d['length'],_0x1391af['length']);for(let _0x2e6ba2=0x0;_0x2e6ba2<_0x1d6a70;_0x2e6ba2++){const _0x2222fa=_0x2e6ba2<_0xb6fb8d['length']?_0xb6fb8d[_0x2e6ba2]:'',_0x134bfb=_0x2e6ba2<_0x1391af['length']?_0x1391af[_0x2e6ba2]:'';if(_0x2222fa!==_0x134bfb){if(_0x5cefbf===-0x1)_0x5cefbf=_0x2e6ba2;_0x4bf504=_0x2e6ba2;}}if(_0x5cefbf===-0x1)return _0x14b920(0x20f);const _0x289b7d=this[_0x14b920(0x237)]['DIFF_CONTEXT_LINES'],_0x209d8e=Math[_0x14b920(0x1d6)](0x0,_0x5cefbf-_0x289b7d),_0x4323f0=Math['min'](_0x1d6a70-0x1,_0x4bf504+_0x289b7d);if(_0x4323f0-_0x209d8e>this[_0x14b920(0x237)][_0x14b920(0x1f0)])return'Diff\x20too\x20large\x20('+(_0x4323f0-_0x209d8e+0x1)+_0x14b920(0x1f8)+('Changed\x20lines:\x20'+(_0x5cefbf+0x1)+_0x14b920(0x1ea)+(_0x4bf504+0x1));let _0x5d9bfe='@@\x20-'+(_0x209d8e+0x1)+','+(_0x4323f0-_0x209d8e+0x1)+'\x20+'+(_0x209d8e+0x1)+','+(_0x4323f0-_0x209d8e+0x1)+_0x14b920(0x1df);for(let _0x573236=_0x209d8e;_0x573236<=_0x4323f0;_0x573236++){const _0x53c0a6=_0x573236<_0xb6fb8d['length']?_0xb6fb8d[_0x573236]:'',_0x3c49c9=_0x573236<_0x1391af['length']?_0x1391af[_0x573236]:'';_0x53c0a6===_0x3c49c9?_0x5d9bfe+='\x20\x20'+_0x53c0a6+'\x0a':(_0x5d9bfe+='-\x20'+_0x53c0a6+'\x0a',_0x5d9bfe+='+\x20'+_0x3c49c9+'\x0a');}return _0x5d9bfe;}[a0_0x4c7ca7(0x21f)](_0x58faa4){const _0x15eca1=a0_0x4c7ca7;return(_0x15eca1(0x232)+_0x58faa4[_0x15eca1(0x21e)]+_0x15eca1(0x1f4)+_0x58faa4['filesModified']+'\x20file(s)\x0aTotal\x20replacements:\x20'+_0x58faa4[_0x15eca1(0x20c)]+'\x0aBackups\x20created:\x20'+_0x58faa4['backupsCreated']+_0x15eca1(0x1f1)+_0x58faa4[_0x15eca1(0x20e)]+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0x5841d2){this['logger']?.['info']('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x5841d2});}}export default FileContentReplaceTool;
|
|
1
|
+
const a0_0x401eb6=a0_0x59a2;(function(_0x4ab3e9,_0x174648){const _0x16b5c5=a0_0x59a2,_0x2be8c7=_0x4ab3e9();while(!![]){try{const _0xa76061=parseInt(_0x16b5c5(0x1ac))/0x1*(parseInt(_0x16b5c5(0x1ca))/0x2)+parseInt(_0x16b5c5(0x1ee))/0x3+parseInt(_0x16b5c5(0x1a2))/0x4+parseInt(_0x16b5c5(0x1f8))/0x5+parseInt(_0x16b5c5(0x1e7))/0x6+-parseInt(_0x16b5c5(0x202))/0x7+-parseInt(_0x16b5c5(0x1b4))/0x8*(parseInt(_0x16b5c5(0x1e5))/0x9);if(_0xa76061===_0x174648)break;else _0x2be8c7['push'](_0x2be8c7['shift']());}catch(_0x453696){_0x2be8c7['push'](_0x2be8c7['shift']());}}}(a0_0x4a68,0xa3168));import{BaseTool}from'./baseTool.js';import{promises as a0_0x294529}from'fs';import a0_0x32b004 from'path';const REPLACE_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_OLD_CONTENT_SIZE':0x64*0x400,'MAX_NEW_CONTENT_SIZE':0x64*0x400,'MAX_REPLACEMENTS_PER_FILE':0x3e8,'MAX_FILES_PER_OPERATION':0x32,'MAX_LINE_RANGE_SIZE':0x2710,'CREATE_BACKUPS':!![],'BACKUP_EXTENSION':'.bak','DIFF_CONTEXT_LINES':0x3,'MAX_DIFF_LINES':0x64,'DEFAULT_TRIM_MODE':'trim'};function a0_0x59a2(_0x3baadd,_0x21d795){_0x3baadd=_0x3baadd-0x1a2;const _0x4a6866=a0_0x4a68();let _0x59a2b6=_0x4a6866[_0x3baadd];if(a0_0x59a2['ItsBXa']===undefined){var _0x95ae5=function(_0x15b401){const _0x1d8355='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x294529='',_0x32b004='';for(let _0x44ba53=0x0,_0x384c2a,_0x1a7944,_0x2bb75b=0x0;_0x1a7944=_0x15b401['charAt'](_0x2bb75b++);~_0x1a7944&&(_0x384c2a=_0x44ba53%0x4?_0x384c2a*0x40+_0x1a7944:_0x1a7944,_0x44ba53++%0x4)?_0x294529+=String['fromCharCode'](0xff&_0x384c2a>>(-0x2*_0x44ba53&0x6)):0x0){_0x1a7944=_0x1d8355['indexOf'](_0x1a7944);}for(let _0x3206fc=0x0,_0x199a24=_0x294529['length'];_0x3206fc<_0x199a24;_0x3206fc++){_0x32b004+='%'+('00'+_0x294529['charCodeAt'](_0x3206fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x32b004);};a0_0x59a2['NcuOdE']=_0x95ae5,a0_0x59a2['Ucbcbp']={},a0_0x59a2['ItsBXa']=!![];}const _0x16ac1d=_0x4a6866[0x0],_0x1c452a=_0x3baadd+_0x16ac1d,_0x5187ad=a0_0x59a2['Ucbcbp'][_0x1c452a];return!_0x5187ad?(_0x59a2b6=a0_0x59a2['NcuOdE'](_0x59a2b6),a0_0x59a2['Ucbcbp'][_0x1c452a]=_0x59a2b6):_0x59a2b6=_0x5187ad,_0x59a2b6;}class FileContentReplaceTool extends BaseTool{constructor(_0x44ba53={},_0x384c2a=null){const _0xf3b5a7=a0_0x59a2;super(_0x44ba53,_0x384c2a),this['id']=_0xf3b5a7(0x1f0),this['requiresProject']=!![],this[_0xf3b5a7(0x205)]=!![],this['timeout']=_0x44ba53[_0xf3b5a7(0x20c)]||0x1d4c0,this[_0xf3b5a7(0x1b2)]={...REPLACE_CONFIG,..._0x44ba53['replaceConfig']};}['getDescription'](){const _0x2874f8=a0_0x59a2;return'\x0aFile\x20Content\x20Replace\x20Tool:\x20Replace\x20specific\x20content\x20within\x20files\x20with\x20precision.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20oldFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20newFunction\x20=\x20()\x20=>\x20{}\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x225,7-10\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0apath\x20(required):\x0a\x20\x20-\x20Path\x20to\x20the\x20file\x20to\x20modify\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x0a\x20\x20-\x20Examples:\x20\x22src/app.js\x22,\x20\x22./config.json\x22\x0a\x0aoldContent\x20(required):\x0a\x20\x20-\x20Content\x20to\x20find\x20and\x20replace\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Must\x20exist\x20in\x20file\x0a\x0anewContent\x20(required):\x0a\x20\x20-\x20Replacement\x20content\x0a\x20\x20-\x20Subject\x20to\x20trim\x20mode\x20processing\x0a\x20\x20-\x20Can\x20be\x20same\x20length,\x20shorter,\x20or\x20longer\x0a\x0amode\x20(optional):\x0a\x20\x20-\x20Whitespace\x20handling\x20mode\x0a\x20\x20-\x20Options:\x0a\x20\x20\x20\x20*\x20\x22trim\x22\x20(default):\x20Trim\x20all\x20whitespace\x20from\x20both\x20ends\x0a\x20\x20\x20\x20*\x20\x22newlines\x22:\x20Only\x20trim\x20newline\x20characters\x0a\x20\x20\x20\x20*\x20\x22none\x22:\x20Use\x20content\x20exactly\x20as\x20provided\x0a\x20\x20-\x20Helps\x20with\x20matching\x20despite\x20indentation\x20differences\x0a\x0alinesLimit\x20(optional):\x0a\x20\x20-\x20Restrict\x20replacement\x20to\x20specific\x20lines\x0a\x20\x20-\x20Format:\x20Comma-separated\x20line\x20numbers\x20or\x20ranges\x0a\x20\x20-\x20Examples:\x20\x225\x22,\x20\x225,10,15\x22,\x20\x225-10\x22,\x20\x221-5,10,15-20\x22\x0a\x20\x20-\x20Line\x20numbers\x20are\x201-based\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/components/Button.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20handleClick\x20=\x20(event)\x20=>\x20{\x20console.log(\x27clicked\x27);\x20props.onClick?.(event);\x20}\x22,\x0a\x20\x20\x20\x20\x20\x20\x22mode\x22:\x20\x22trim\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x202\x20-\x20Line-limited\x20replacement:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/App.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[{\x0a\x20\x20\x20\x20\x20\x20\x22oldContent\x22:\x20\x22const\x20API_URL\x20=\x20\x27http://localhost:3000\x27\x22,\x0a\x20\x20\x20\x20\x20\x20\x22newContent\x22:\x20\x22const\x20API_URL\x20=\x20process.env.API_URL\x22,\x0a\x20\x20\x20\x20\x20\x20\x22linesLimit\x22:\x20\x2210-20\x22\x0a\x20\x20\x20\x20}]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x203\x20-\x20Multiple\x20replacements\x20in\x20one\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22src/config.js\x22,\x0a\x20\x20\x20\x20\x22replacements\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22DEBUG\x20=\x20false\x22,\x20\x22newContent\x22:\x20\x22DEBUG\x20=\x20true\x22\x20},\x0a\x20\x20\x20\x20\x20\x20{\x20\x22oldContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27error\x27\x22,\x20\x22newContent\x22:\x20\x22LOG_LEVEL\x20=\x20\x27debug\x27\x22\x20}\x0a\x20\x20\x20\x20]\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aExample\x204\x20-\x20Multiple\x20files:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-content-replace\x22,\x0a\x20\x20\x22files\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22src/app.js\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22version\x20=\x20\x271.0.0\x27\x22,\x20\x22newContent\x22:\x20\x22version\x20=\x20\x271.1.0\x27\x22\x20}]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22path\x22:\x20\x22package.json\x22,\x0a\x20\x20\x20\x20\x20\x20\x22replacements\x22:\x20[{\x20\x22oldContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.0.0\x5c\x22\x22,\x20\x22newContent\x22:\x20\x22\x5c\x22version\x5c\x22:\x20\x5c\x221.1.0\x5c\x22\x22,\x20\x22mode\x22:\x20\x22none\x22\x20}]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aFEATURES:\x0a-\x20Automatic\x20backup\x20creation\x20(.bak\x20files)\x0a-\x20Before/after\x20diff\x20reports\x0a-\x20Replacement\x20counting\x20and\x20statistics\x0a-\x20Multi-file\x20operations\x0a-\x20Line-limited\x20replacements\x0a-\x20Intelligent\x20whitespace\x20handling\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20file\x20size:\x20'+REPLACE_CONFIG[_0x2874f8(0x208)]/(0x400*0x400)+'MB\x0a-\x20Maximum\x20old\x20content\x20size:\x20'+REPLACE_CONFIG['MAX_OLD_CONTENT_SIZE']/0x400+_0x2874f8(0x207)+REPLACE_CONFIG['MAX_NEW_CONTENT_SIZE']/0x400+_0x2874f8(0x1fc)+REPLACE_CONFIG['MAX_REPLACEMENTS_PER_FILE']+'\x0a-\x20Maximum\x20files\x20per\x20operation:\x20'+REPLACE_CONFIG['MAX_FILES_PER_OPERATION']+_0x2874f8(0x1ae);}['parseParameters'](_0x1a7944){const _0x39c200=a0_0x59a2;try{if(_0x1a7944[_0x39c200(0x1be)]()['startsWith']('{'))return this[_0x39c200(0x1ba)](_0x1a7944);return this[_0x39c200(0x1bd)](_0x1a7944);}catch(_0x2bb75b){this[_0x39c200(0x1b7)]?.[_0x39c200(0x20d)](_0x39c200(0x1f2),{'error':_0x2bb75b[_0x39c200(0x1ab)]});throw new Error('Parameter\x20parsing\x20failed:\x20'+_0x2bb75b[_0x39c200(0x1ab)]);}}['parseJSON'](_0x3206fc){const _0x30b5d7=a0_0x59a2,_0x199a24=JSON['parse'](_0x3206fc);if(!_0x199a24['files']||!Array['isArray'](_0x199a24['files']))throw new Error(_0x30b5d7(0x1eb));return{'files':_0x199a24['files'][_0x30b5d7(0x1e6)](_0x38f0bf=>({'path':_0x38f0bf['path'],'replacements':(_0x38f0bf[_0x30b5d7(0x1bb)]||[])[_0x30b5d7(0x1e6)](_0x3c41d9=>({'oldContent':_0x3c41d9[_0x30b5d7(0x1d0)],'newContent':_0x3c41d9['newContent'],'mode':_0x3c41d9['mode']||REPLACE_CONFIG[_0x30b5d7(0x1d9)],'linesLimit':_0x3c41d9[_0x30b5d7(0x1f5)]||null}))}))};}[a0_0x401eb6(0x1bd)](_0x5c6f1e){const _0x57a628=a0_0x401eb6,_0x4c20d0=[],_0x52cb55=/<file\s+path="([^"]+)">([\s\S]*?)<\/file>/gi;let _0x249306;while((_0x249306=_0x52cb55['exec'](_0x5c6f1e))!==null){const _0x38a501=_0x249306[0x1],_0xd784e1=_0x249306[0x2],_0x286bf1=[],_0x35f80e=/<replace(?:\s+([^>]*?))?>([\s\S]*?)<\/replace>/gi;let _0x5389a0;while((_0x5389a0=_0x35f80e[_0x57a628(0x1ec)](_0xd784e1))!==null){const _0x54a814=_0x5389a0[0x1]||'',_0x28dbe2=_0x5389a0[0x2],_0x5f0644=this[_0x57a628(0x1fd)](_0x54a814,'mode')||REPLACE_CONFIG[_0x57a628(0x1d9)],_0x1c851e=this['extractAttribute'](_0x54a814,_0x57a628(0x1a7)),_0x119809=/<old-content>([\s\S]*?)<\/old-content>/i['exec'](_0x28dbe2);if(!_0x119809){this['logger']?.[_0x57a628(0x1db)](_0x57a628(0x1cf));continue;}const _0x2b4ecc=_0x119809[0x1],_0x1d9bfd=/<new-content>([\s\S]*?)<\/new-content>/i['exec'](_0x28dbe2);if(!_0x1d9bfd){this['logger']?.['warn'](_0x57a628(0x1ed));continue;}const _0x4af281=_0x1d9bfd[0x1],_0x3ef2c8=this['applyTrimMode'](_0x2b4ecc,_0x5f0644),_0x23374d=this[_0x57a628(0x1fb)](_0x4af281,_0x5f0644);_0x286bf1[_0x57a628(0x1d5)]({'oldContent':_0x3ef2c8,'newContent':_0x23374d,'mode':_0x5f0644,'linesLimit':_0x1c851e});}_0x286bf1['length']>0x0&&_0x4c20d0['push']({'path':_0x38a501,'replacements':_0x286bf1});}return{'files':_0x4c20d0};}['extractAttribute'](_0x593f1a,_0xe16e59){const _0x2b9ff9=new RegExp(_0xe16e59+'=[\x22\x27]([^\x22\x27]*)[\x22\x27]','i'),_0x51fc14=_0x2b9ff9['exec'](_0x593f1a);return _0x51fc14?_0x51fc14[0x1]:null;}[a0_0x401eb6(0x1fb)](_0x2dc039,_0x1589f2){switch(_0x1589f2){case'newlines':return _0x2dc039['replace'](/^\n+|\n+$/g,'');case'none':return _0x2dc039;case'trim':default:return _0x2dc039['trim']();}}[a0_0x401eb6(0x1b8)](){return['files'];}[a0_0x401eb6(0x1ef)](_0xb7ad0a){const _0x3681ab=a0_0x401eb6,_0xfa2c2e=[];if(!_0xb7ad0a[_0x3681ab(0x1da)]||!Array['isArray'](_0xb7ad0a[_0x3681ab(0x1da)]))_0xfa2c2e['push']('files\x20must\x20be\x20an\x20array');else{_0xb7ad0a[_0x3681ab(0x1da)]['length']===0x0&&_0xfa2c2e['push'](_0x3681ab(0x1c0));_0xb7ad0a[_0x3681ab(0x1da)][_0x3681ab(0x1b3)]>this['replaceConfig']['MAX_FILES_PER_OPERATION']&&_0xfa2c2e['push'](_0x3681ab(0x1fa)+this['replaceConfig'][_0x3681ab(0x1ad)]+'\x20files\x20in\x20one\x20operation');for(const _0x25e984 of _0xb7ad0a[_0x3681ab(0x1da)]){!_0x25e984[_0x3681ab(0x1ce)]&&_0xfa2c2e[_0x3681ab(0x1d5)]('Each\x20file\x20must\x20have\x20a\x20path');_0x25e984[_0x3681ab(0x1ce)]&&_0x25e984['path'][_0x3681ab(0x1b5)]('..')&&_0xfa2c2e[_0x3681ab(0x1d5)](_0x3681ab(0x1cc)+_0x25e984['path']);if(!_0x25e984['replacements']||!Array['isArray'](_0x25e984['replacements']))_0xfa2c2e['push'](_0x3681ab(0x1e4)+_0x25e984[_0x3681ab(0x1ce)]+_0x3681ab(0x1c8));else{if(_0x25e984['replacements']['length']===0x0)_0xfa2c2e[_0x3681ab(0x1d5)]('File\x20'+_0x25e984[_0x3681ab(0x1ce)]+_0x3681ab(0x1f6));else for(const _0x44c6e3 of _0x25e984['replacements']){!_0x44c6e3[_0x3681ab(0x1d0)]&&_0x44c6e3['oldContent']!==''&&_0xfa2c2e[_0x3681ab(0x1d5)]('Replacement\x20in\x20'+_0x25e984[_0x3681ab(0x1ce)]+_0x3681ab(0x1c1)),!_0x44c6e3[_0x3681ab(0x1f3)]&&_0x44c6e3['newContent']!==''&&_0xfa2c2e[_0x3681ab(0x1d5)]('Replacement\x20in\x20'+_0x25e984['path']+'\x20missing\x20newContent'),_0x44c6e3['oldContent']&&_0x44c6e3['oldContent']['length']>this[_0x3681ab(0x1b2)][_0x3681ab(0x1e1)]&&_0xfa2c2e[_0x3681ab(0x1d5)]('oldContent\x20too\x20large\x20(max\x20'+this['replaceConfig']['MAX_OLD_CONTENT_SIZE']/0x400+'KB)'),_0x44c6e3['newContent']&&_0x44c6e3['newContent'][_0x3681ab(0x1b3)]>this['replaceConfig'][_0x3681ab(0x1f7)]&&_0xfa2c2e['push']('newContent\x20too\x20large\x20(max\x20'+this[_0x3681ab(0x1b2)][_0x3681ab(0x1f7)]/0x400+_0x3681ab(0x1f4)),_0x44c6e3[_0x3681ab(0x201)]&&![_0x3681ab(0x1be),'newlines',_0x3681ab(0x203)]['includes'](_0x44c6e3[_0x3681ab(0x201)])&&_0xfa2c2e['push']('Invalid\x20mode:\x20'+_0x44c6e3['mode']+_0x3681ab(0x1aa));}}}}if(_0xfa2c2e['length']>0x0)throw new Error(_0x3681ab(0x1fe)+_0xfa2c2e['join'](',\x20'));return{'valid':!![],'errors':[]};}['_isNormalizedParams'](_0x229939){const _0x362b0d=a0_0x401eb6;if(!_0x229939[_0x362b0d(0x1da)]||!Array['isArray'](_0x229939[_0x362b0d(0x1da)])||_0x229939[_0x362b0d(0x1da)][_0x362b0d(0x1b3)]===0x0)return![];const _0x4f7928=_0x229939[_0x362b0d(0x1da)][0x0];if(!_0x4f7928[_0x362b0d(0x1bb)]||!Array['isArray'](_0x4f7928[_0x362b0d(0x1bb)])||_0x4f7928['replacements'][_0x362b0d(0x1b3)]===0x0)return![];return _0x4f7928[_0x362b0d(0x1bb)][0x0]['hasOwnProperty'](_0x362b0d(0x201));}async['execute'](_0xc924ca,_0x5133cd){const _0x2d1411=a0_0x401eb6;typeof _0xc924ca===_0x2d1411(0x20a)&&(this[_0x2d1411(0x1b7)]?.['info'](_0x2d1411(0x1b0)),_0xc924ca=this['parseParameters'](_0xc924ca));_0xc924ca&&typeof _0xc924ca===_0x2d1411(0x1bc)&&_0xc924ca[_0x2d1411(0x1da)]&&!this['_isNormalizedParams'](_0xc924ca)&&(this['logger']?.['info'](_0x2d1411(0x1c6)),_0xc924ca=this[_0x2d1411(0x1ba)](JSON['stringify'](_0xc924ca)));const {files:_0x24aca1}=_0xc924ca,{projectDir:_0x3f75e5,agentId:_0x3f69c8,directoryAccess:_0x1b0dd0}=_0x5133cd;let _0x265f32=_0x3f75e5||process[_0x2d1411(0x1de)]();_0x1b0dd0&&_0x1b0dd0['workingDirectory']&&(_0x265f32=_0x1b0dd0['workingDirectory'],this[_0x2d1411(0x1b7)]?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x1b0dd0['workingDirectory'],'agentId':_0x3f69c8}));this[_0x2d1411(0x1b7)]?.[_0x2d1411(0x1bf)](_0x2d1411(0x1c9),{'fileCount':_0x24aca1['length'],'workingDirectory':_0x265f32,'agentId':_0x3f69c8});const _0x260b56=[],_0xf2b650={'filesProcessed':0x0,'filesModified':0x0,'totalReplacements':0x0,'backupsCreated':0x0,'errors':0x0};for(const _0x504678 of _0x24aca1){try{const _0x47f541=await this['processFile'](_0x504678,_0x265f32,_0x1b0dd0);_0x260b56['push'](_0x47f541),_0xf2b650[_0x2d1411(0x204)]++,_0x47f541[_0x2d1411(0x1a8)]>0x0&&(_0xf2b650[_0x2d1411(0x1ff)]++,_0xf2b650[_0x2d1411(0x1d3)]+=_0x47f541['replacementsMade']),_0x47f541[_0x2d1411(0x1e2)]&&_0xf2b650[_0x2d1411(0x1b6)]++;}catch(_0x5ef3fa){this[_0x2d1411(0x1b7)]?.['error'](_0x2d1411(0x1a3)+_0x504678['path'],{'error':_0x5ef3fa['message']}),_0x260b56[_0x2d1411(0x1d5)]({'filePath':_0x504678[_0x2d1411(0x1ce)],'success':![],'error':_0x5ef3fa[_0x2d1411(0x1ab)]}),_0xf2b650[_0x2d1411(0x1c3)]++;}}return{'success':_0xf2b650['errors']===0x0,'results':_0x260b56,'statistics':_0xf2b650,'summary':this[_0x2d1411(0x1e0)](_0xf2b650),'toolUsed':'file-content-replace'};}async[a0_0x401eb6(0x1e9)](_0xe1dd47,_0x5ead52,_0xd3758a){const _0x546577=a0_0x401eb6,{path:_0x363a8c,replacements:_0x5329b1}=_0xe1dd47,_0x4f84b7=a0_0x32b004[_0x546577(0x1c4)](_0x363a8c)?_0x363a8c:a0_0x32b004['resolve'](_0x5ead52,_0x363a8c);if(_0xd3758a){const _0x3ba0b4=this[_0x546577(0x1a9)](_0x4f84b7,_0x5ead52,_0xd3758a);if(!_0x3ba0b4)throw new Error(_0x546577(0x200)+_0x363a8c);}try{await a0_0x294529['access'](_0x4f84b7);}catch(_0x219924){throw new Error('File\x20not\x20found:\x20'+_0x363a8c);}const _0x554309=await a0_0x294529[_0x546577(0x1af)](_0x4f84b7);if(_0x554309[_0x546577(0x1d7)]>this['replaceConfig'][_0x546577(0x208)])throw new Error(_0x546577(0x1c5)+this[_0x546577(0x1b2)]['MAX_FILE_SIZE']/(0x400*0x400)+'MB):\x20'+_0x363a8c);let _0x4f6eb8=await a0_0x294529[_0x546577(0x20b)](_0x4f84b7,'utf-8');const _0x5143f2=_0x4f6eb8;let _0x1fd0b8=![];if(this['replaceConfig'][_0x546577(0x1d6)]){const _0x501df9=_0x4f84b7+this['replaceConfig'][_0x546577(0x1a5)];try{await a0_0x294529[_0x546577(0x1b1)](_0x501df9,_0x5143f2,_0x546577(0x1df)),_0x1fd0b8=!![];}catch(_0xbafc9){this[_0x546577(0x1b7)]?.[_0x546577(0x1db)]('Failed\x20to\x20create\x20backup:\x20'+_0xbafc9['message']);}}let _0x508de7=0x0;const _0xe87a31=[];for(const _0x1e7b48 of _0x5329b1){const _0x51185f=await this[_0x546577(0x1d2)](_0x4f6eb8,_0x1e7b48[_0x546577(0x1d0)],_0x1e7b48[_0x546577(0x1f3)],_0x1e7b48['linesLimit'],_0x1e7b48['mode']);_0x4f6eb8=_0x51185f[_0x546577(0x1f3)],_0x508de7+=_0x51185f['count'],_0xe87a31['push']({'oldContent':_0x1e7b48[_0x546577(0x1d0)][_0x546577(0x1d8)](0x0,0x32)+(_0x1e7b48[_0x546577(0x1d0)][_0x546577(0x1b3)]>0x32?'...':''),'newContent':_0x1e7b48['newContent']['substring'](0x0,0x32)+(_0x1e7b48['newContent']['length']>0x32?'...':''),'count':_0x51185f['count'],'mode':_0x1e7b48[_0x546577(0x201)],'linesLimit':_0x1e7b48['linesLimit']});}_0x508de7>0x0&&await a0_0x294529[_0x546577(0x1b1)](_0x4f84b7,_0x4f6eb8,'utf-8');const _0x201acd=_0x508de7>0x0?this['generateDiff'](_0x5143f2,_0x4f6eb8):null;return{'filePath':_0x363a8c,'resolvedPath':_0x4f84b7,'success':!![],'replacementsMade':_0x508de7,'backupCreated':_0x1fd0b8,'replacementDetails':_0xe87a31,'diff':_0x201acd,'message':_0x508de7>0x0?'Made\x20'+_0x508de7+_0x546577(0x1c2)+_0x363a8c:_0x546577(0x1f9)+_0x363a8c+_0x546577(0x1e8)};}[a0_0x401eb6(0x1a9)](_0x4592ad,_0x56cd0d,_0x165b50){const _0xe10643=a0_0x401eb6,_0x209aa4=a0_0x32b004[_0xe10643(0x1e3)](_0x56cd0d,_0x4592ad);if(!_0x209aa4[_0xe10643(0x1c7)]('..')&&!a0_0x32b004['isAbsolute'](_0x209aa4))return!![];if(_0x165b50[_0xe10643(0x206)])for(const _0x3575af of _0x165b50['writeEnabledDirectories']){const _0x400ead=a0_0x32b004['relative'](_0x3575af,_0x4592ad);if(!_0x400ead[_0xe10643(0x1c7)]('..')&&!a0_0x32b004[_0xe10643(0x1c4)](_0x400ead))return!![];}return![];}async['applyReplacement'](_0x175b6c,_0x11c781,_0x28c456,_0x44f81c,_0x31a7ef){const _0x245855=a0_0x401eb6;if(!_0x44f81c){const _0x5bfa0f=this[_0x245855(0x1dd)](_0x175b6c,_0x11c781);if(_0x5bfa0f===0x0)return{'newContent':_0x175b6c,'count':0x0};const _0x172d2f=_0x175b6c['split'](_0x11c781)[_0x245855(0x1ea)](_0x28c456);return{'newContent':_0x172d2f,'count':_0x5bfa0f};}const _0x145c5f=this['parseLineRanges'](_0x44f81c),_0x355640=_0x175b6c['split']('\x0a');let _0x394eb5=0x0;for(let _0x30b433=0x0;_0x30b433<_0x355640['length'];_0x30b433++){const _0x5121bc=_0x30b433+0x1;if(_0x145c5f['has'](_0x5121bc)){if(_0x355640[_0x30b433][_0x245855(0x1b5)](_0x11c781)){const _0x2e910a=this[_0x245855(0x1dd)](_0x355640[_0x30b433],_0x11c781);_0x355640[_0x30b433]=_0x355640[_0x30b433]['split'](_0x11c781)[_0x245855(0x1ea)](_0x28c456),_0x394eb5+=_0x2e910a;}}}return{'newContent':_0x355640[_0x245855(0x1ea)]('\x0a'),'count':_0x394eb5};}['countOccurrences'](_0x342bac,_0x1f83b8){const _0x1ffda2=a0_0x401eb6;if(!_0x1f83b8)return 0x0;return _0x342bac['split'](_0x1f83b8)[_0x1ffda2(0x1b3)]-0x1;}['parseLineRanges'](_0x310c26){const _0x432a9a=a0_0x401eb6,_0x59202c=new Set();if(!_0x310c26||_0x310c26[_0x432a9a(0x1be)]()==='')return _0x59202c;const _0x10583f=_0x310c26['split'](',');for(const _0xf3b632 of _0x10583f){const _0x3963c3=_0xf3b632['trim']();if(_0x3963c3==='')continue;if(_0x3963c3[_0x432a9a(0x1b5)]('-')){const [_0x1b2886,_0x1187c7]=_0x3963c3['split']('-')[_0x432a9a(0x1e6)](_0x40fa94=>parseInt(_0x40fa94[_0x432a9a(0x1be)](),0xa));if(!isNaN(_0x1b2886)&&!isNaN(_0x1187c7)&&_0x1187c7-_0x1b2886<this['replaceConfig'][_0x432a9a(0x209)])for(let _0x55ad1c=_0x1b2886;_0x55ad1c<=_0x1187c7;_0x55ad1c++){_0x59202c['add'](_0x55ad1c);}}else{const _0x15d31f=parseInt(_0x3963c3,0xa);!isNaN(_0x15d31f)&&_0x59202c['add'](_0x15d31f);}}return _0x59202c;}['generateDiff'](_0x23aac4,_0x5b882c){const _0x10b872=a0_0x401eb6,_0xdc3508=_0x23aac4[_0x10b872(0x1a4)]('\x0a'),_0x2ac213=_0x5b882c[_0x10b872(0x1a4)]('\x0a');let _0x59fc6a=-0x1,_0x131bb9=-0x1;const _0x47fb25=Math[_0x10b872(0x1d4)](_0xdc3508['length'],_0x2ac213['length']);for(let _0x433bcc=0x0;_0x433bcc<_0x47fb25;_0x433bcc++){const _0x43c376=_0x433bcc<_0xdc3508[_0x10b872(0x1b3)]?_0xdc3508[_0x433bcc]:'',_0x1ab4ee=_0x433bcc<_0x2ac213['length']?_0x2ac213[_0x433bcc]:'';if(_0x43c376!==_0x1ab4ee){if(_0x59fc6a===-0x1)_0x59fc6a=_0x433bcc;_0x131bb9=_0x433bcc;}}if(_0x59fc6a===-0x1)return'No\x20differences';const _0x1d77af=this[_0x10b872(0x1b2)]['DIFF_CONTEXT_LINES'],_0x228334=Math[_0x10b872(0x1d4)](0x0,_0x59fc6a-_0x1d77af),_0x4f6d2d=Math['min'](_0x47fb25-0x1,_0x131bb9+_0x1d77af);if(_0x4f6d2d-_0x228334>this['replaceConfig'][_0x10b872(0x1b9)])return _0x10b872(0x1cd)+(_0x4f6d2d-_0x228334+0x1)+_0x10b872(0x1f1)+(_0x10b872(0x1a6)+(_0x59fc6a+0x1)+'\x20to\x20'+(_0x131bb9+0x1));let _0x4f40c2='@@\x20-'+(_0x228334+0x1)+','+(_0x4f6d2d-_0x228334+0x1)+'\x20+'+(_0x228334+0x1)+','+(_0x4f6d2d-_0x228334+0x1)+_0x10b872(0x1d1);for(let _0x1a5deb=_0x228334;_0x1a5deb<=_0x4f6d2d;_0x1a5deb++){const _0x3c3838=_0x1a5deb<_0xdc3508[_0x10b872(0x1b3)]?_0xdc3508[_0x1a5deb]:'',_0x3c0d85=_0x1a5deb<_0x2ac213[_0x10b872(0x1b3)]?_0x2ac213[_0x1a5deb]:'';_0x3c3838===_0x3c0d85?_0x4f40c2+='\x20\x20'+_0x3c3838+'\x0a':(_0x4f40c2+='-\x20'+_0x3c3838+'\x0a',_0x4f40c2+='+\x20'+_0x3c0d85+'\x0a');}return _0x4f40c2;}['generateSummary'](_0x564ecf){const _0x542c8a=a0_0x401eb6;return('\x0aProcessed\x20'+_0x564ecf['filesProcessed']+'\x20file(s)\x0aModified\x20'+_0x564ecf[_0x542c8a(0x1ff)]+_0x542c8a(0x1dc)+_0x564ecf[_0x542c8a(0x1d3)]+_0x542c8a(0x1cb)+_0x564ecf['backupsCreated']+'\x0aErrors:\x20'+_0x564ecf[_0x542c8a(0x1c3)]+'\x0a\x20\x20\x20\x20')[_0x542c8a(0x1be)]();}async['cleanup'](_0x554a5e){const _0x4a5688=a0_0x401eb6;this[_0x4a5688(0x1b7)]?.[_0x4a5688(0x1bf)]('File\x20content\x20replace\x20tool\x20cleanup\x20completed',{'operationId':_0x554a5e});}}function a0_0x4a68(){const _0x1b0889=['B2XKq29UDgvUDa','iebacG','yxbWBhLszxbSywnLBwvUDa','Dg90ywXszxbSywnLBwvUDhm','Bwf4','ChvZAa','q1jfqvrfx0jbq0Tvufm','C2L6zq','C3vIC3rYAw5N','revgqvvmvf9uuKLnx01preu','zMLSzxm','D2fYBG','igzPBguOCYKkvg90ywWGCMvWBgfJzw1LBNrZoIa','y291BNrpy2n1CNjLBMnLCW','y3DK','DxrMltG','z2vUzxjHDgvtDw1Tyxj5','tufyx09mrf9dt05uru5ux1njwKu','yMfJA3vWq3jLyxrLza','CMvSyxrPDMu','rMLSzsa','mtG0odC3muDTs1HfrG','BwfW','nte1odGXmLvyDuHzBG','icHJB250zw50ig5VDcbMB3vUzcK','ChjVy2vZC0zPBgu','AM9PBG','sLnptIbTDxn0igHHDMuGiMzPBgvZiIbHCNjHEq','zxHLyW','twLZC2LUzYbUzxCTy29UDgvUDcbPBIbYzxbSywnLihrHzW','mty2nJa0ngHyuMzKEG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zMLSzs1JB250zw50lxjLCgXHy2u','igXPBMvZksWGC2HVD2LUzYbZDw1Tyxj5ig9UBhK6cG','rMfPBgvKihrVihbHCNnLigzPBguTy29UDgvUDc1YzxbSywnLihbHCMfTzxrLCNm','BMv3q29UDgvUDa','s0iP','BgLUzxnmAw1PDa','ihjLCgXHy2vTzw50CYbHCNjHEsbJyw5UB3qGyMuGzw1WDhK','tufyx05fv19dt05uru5ux1njwKu','mta4mZm1mhzZruvyAq','tM8GCMvWBgfJzw1LBNrZig1HzguGAw4G','q2fUBM90ihbYB2nLC3mGBw9Yzsb0AgfUia','yxbWBhLuCMLTtw9Kzq','s0iklsbnyxHPBxvTihjLCgXHy2vTzw50CYbWzxiGzMLSztOG','zxH0CMfJDef0DhjPyNv0zq','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','zMLSzxnnB2rPzMLLza','ugf0AcbUB3qGywnJzxnZAwjSztOG','Bw9Kzq','nZq0ntaZovvRChbjva','BM9Uzq','zMLSzxnqCM9JzxnZzwq','AxnbC3LUyW','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','s0iklsbnyxHPBxvTig5LDYbJB250zw50ihnPEMu6ia','tufyx0zjtevFu0LArq','tufyx0XjtKvFuKfor0vFu0LArq','C3rYAw5N','CMvHzezPBgu','DgLTzw91Da','zxjYB3i','nda1mde3nNHOqvnwBW','rxjYB3iGChjVy2vZC2LUzYbMAwXLia','C3bSAxq','qKfds1vqx0vyvevou0LptG','q2HHBMDLzcbSAw5LCZOG','BgLUzxmTBgLTAxq','CMvWBgfJzw1LBNrZtwfKzq','AxnqyxrOqwnJzxnZAwjSzq','lIbnDxn0igjLicD0CMLTjYWGj25LD2XPBMvZjYWGB3iGj25VBMuN','BwvZC2fNzq','mZKZntLIDeTuqxG','tufyx0zjtevtx1bfuL9puevsqvrjt04','cIaGica','C3rHDa','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGugfYC2LUzYbZDhjPBMCGCgfYyw1LDgvYCW','D3jPDgvgAwXL','CMvWBgfJzunVBMzPzW','BgvUz3rO','odbvz3PLBNi','Aw5JBhvKzxm','yMfJA3vWC0nYzwf0zwq','Bg9Nz2vY','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','tufyx0rjrKzFteLorvm','CgfYC2vku09o','CMvWBgfJzw1LBNrZ','B2jQzwn0','CgfYC2vytuW','DhjPBq','Aw5MBW','zMLSzxmGyxjYyxKGy2fUBM90igjLigvTChr5','ig1PC3nPBMCGB2XKq29UDgvUDa','ihjLCgXHy2vTzw50khmPigLUia','zxjYB3jZ','AxnbyNnVBhv0zq','rMLSzsb0B28GBgfYz2uGkg1HEca','rMLSzunVBNrLBNrszxbSywnLvg9VBdOGtM9YBwfSAxPPBMCGB2jQzwn0ihbHCMfTzxrLCNm','C3rHCNrZv2L0Aa','ig11C3qGAgf2zsbYzxbSywnLBwvUDhmGyxjYyxK','rxHLy3v0Aw5NigzPBguGy29UDgvUDcbYzxbSywnL','ntHYBeHJCKG','cKjHy2T1ChmGy3jLyxrLzdOG','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK6ia','rgLMzIb0B28GBgfYz2uGka','Cgf0Aa','twLZC2LUzYbVBgqTy29UDgvUDcbPBIbYzxbSywnLihrHzW'];a0_0x4a68=function(){return _0x1b0889;};return a0_0x4a68();}export default FileContentReplaceTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3e01b2=a0_0x44fc;(function(_0x4986c1,_0x4ced66){const _0x24d212=a0_0x44fc,_0x1546ca=_0x4986c1();while(!![]){try{const _0x4c41a2=parseInt(_0x24d212(0x1e3))/0x1+-parseInt(_0x24d212(0x1ca))/0x2*(parseInt(_0x24d212(0x1dd))/0x3)+-parseInt(_0x24d212(0x16b))/0x4*(parseInt(_0x24d212(0x1b1))/0x5)+-parseInt(_0x24d212(0x1d9))/0x6+parseInt(_0x24d212(0x1e1))/0x7+-parseInt(_0x24d212(0x194))/0x8+parseInt(_0x24d212(0x1c6))/0x9;if(_0x4c41a2===_0x4ced66)break;else _0x1546ca['push'](_0x1546ca['shift']());}catch(_0x7e560){_0x1546ca['push'](_0x1546ca['shift']());}}}(a0_0x1916,0xa1b34));import{BaseTool}from'./baseTool.js';function a0_0x1916(){const _0x437922=['tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','rMfPBgvKihrVignVChKG','DgLTzw91Da','y29Kzq','lMnVBq','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','lMjHy2T1Cc0','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','y3jLyxrLuMvSyxrPDMvqyxrO','ChvZAa','ywXSB3DLzev4DgvUC2LVBNm','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','BxrPBwu','oIb0ExbLigLZihjLCxvPCMvK','ywDLBNrjza','zMLSzxn5CW','oIbVDxrWDxqTCgf0AcbPCYbYzxf1AxjLzcbMB3iGD3jPDgu','AxneAxjLy3rVCNK','vw5RBM93BIbHy3rPB24GDhLWztOG','zxHPC3rZ','v3jPDguGywnJzxnZigrLBMLLzdOG','y29WEuzPBgu','mJHsvg1lsxO','zMLSzs1WyxrO','zw5JB2rPBMC','ywn0Aw9UCW','C3rYAw5NAwz5','DMfSAwrHDgvszwfKqwnJzxnZ','CMvHzgrPCG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','Bg9N','u291CMnLigzPBguGDg9VigXHCMDLoIa','y3DK','uMv0CMLLDMvKihn0yxrZigzVCIa','lNnJCG','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','Bw92zuzPBgu','BMfTzq','igrVzxmGBM90igv4Axn0','rMfPBgvKihrVigfWCgvUzcb0BYbMAwXLia','yxrPBwu','D29YA2LUz0rPCMvJDg9YEq','C3vIC3rYAw5N','Aw5JBhvKzxm','AxntEw1IB2XPy0XPBMS','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','CgfYC2vbDhrYAwj1DgvZ','ywXSB3DLza','B3v0Chv0lxbHDgG','rMfPBgvKihrVigrLBgv0zsbMAwXLia','ywrKvg9iAxn0B3j5','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','rMfPBgvKihrVihDYAxrLigzPBguG','DMfSAwrHDgvxCML0zufJy2vZCW','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','CMf3q29UDgvUDa','zgLYzwn0B3j5','BwTKAxi','C3rHDhm','Dhj1zq','zgvZDc1WyxrO','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigLZihjLCxvPCMvKlIbszwnLAxzLzcbWyxjHBxm6ia','BgvUz3rO','mJK5ndq5nMnnB0TLrG','lMnTza','icHIywnRDxaGy3jLyxrLzcK','zgLYBMfTzq','z2v0t3bLCMf0Aw9UsgLZDg9YEq','C291CMnLugf0Aa','A2v5CW','Bwf0y2HbBgW','rMfPBgvKihrVig1VDMuG','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','B2jQzwn0','yxbWzw5KrMLSzq','CMvUyw1L','DhLWzq','y3jLyxrLrgLYCW','D3jPDgvgAwXL','y3jLyxrLlwrPCNm','rgvZDgLUyxrPB24GD3jPDguGywnJzxnZigrLBMLLzdOG','CMvHC29U','y2HLy2TfEgLZDhm','zgvSzxrL','rMLSzsb0B28GBgfYz2u6ia','BM93','Bg9Nz2vY','C3rYAw5N','CM91BMq','uMvHzca','zMLSzvbHDgG','igj5DgvZigzYB20G','mJKZmdaWB1PftuDW','AM9PBG','C3rHDa','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','DMfSAwrHDgvqyxrOqwnJzxnZ','yxbWzw5K','zgvIDwC','CMvHza','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','zMLSzq','CgfYC2vqyxjHBwv0zxjZ','lMv4zq','z2v0ugfYyw1LDgvYu2nOzw1H','BwvZC2fNzq','B3v0Chv0ugf0Aa','Dg9mB3DLCKnHC2u','oIbJB250zw50igLZihjLCxvPCMvKigzVCIbHChbLBMq','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','CMvZB2X2zvbHDgG','qwn0Aw9Uia','AxnbyNnVBhv0zq','mtiWmZm5nJnrugLOtfu','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C291CMnLlxbHDgG','y29WEq','mtGXmtrzyKHjA1C','zgvZDfbHDgG','C2L6zq','Bw9Kzq','BgLZDa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','AxngAwXL','CMvXDwLYzxnqCM9Qzwn0','Cgf0Aa','igL0zw1ZigLUia','z2v0v29YA2LUz0rPCMvJDg9YEq','zMLSDgvY','uMvHzcbHy2nLC3mGzgvUAwvKoIa','zxH0BMfTzq','ndG2nZK4nKH5wKrtBW','q29WAwvKia','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','zgvSzxrLrMLSzq','mJGYzfPAzunt','tw92zwqG','igfJy2vZCYbKzw5Pzwq6ia','DhjPBq','mZi2odaZnfr1DvbyqW','ywXSB3DLzerPCMvJDg9YAwvZ','mtmWntu1nKDfsLHnEa','DxrMoa','AxnbC3LUyW','B3bLCMf0Aw9UsgLZDg9YEq','yMXVy2TLzev4DgvUC2LVBNm','y29UDgvUDa','y3jLyxrLlwrPCG','rMLSzsb3B3vSzcbIzwnVBwuGDg9VigXHCMDLoIa','CMvHzezPBgu','Bwf4rMLSzvnPEMu','sw52ywXPzcbWyxjHBwv0zxjZoIbWyxjHBxmGBxvZDcbIzsbHBIbVyMPLy3q','D3jPDgu','Dg9ju09tDhjPBMC'];a0_0x1916=function(){return _0x437922;};return a0_0x1916();}import a0_0x30480a from'../utilities/tagParser.js';import a0_0xbbbbca from'../utilities/directoryAccessManager.js';function a0_0x44fc(_0x2050e9,_0x456732){_0x2050e9=_0x2050e9-0x156;const _0x19162b=a0_0x1916();let _0x44fccc=_0x19162b[_0x2050e9];if(a0_0x44fc['PxUgeT']===undefined){var _0x1995f7=function(_0xea2111){const _0x229471='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x30480a='',_0xbbbbca='';for(let _0x59d4a1=0x0,_0x3c46df,_0x244c07,_0x19c7aa=0x0;_0x244c07=_0xea2111['charAt'](_0x19c7aa++);~_0x244c07&&(_0x3c46df=_0x59d4a1%0x4?_0x3c46df*0x40+_0x244c07:_0x244c07,_0x59d4a1++%0x4)?_0x30480a+=String['fromCharCode'](0xff&_0x3c46df>>(-0x2*_0x59d4a1&0x6)):0x0){_0x244c07=_0x229471['indexOf'](_0x244c07);}for(let _0x593b36=0x0,_0x30e432=_0x30480a['length'];_0x593b36<_0x30e432;_0x593b36++){_0xbbbbca+='%'+('00'+_0x30480a['charCodeAt'](_0x593b36)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xbbbbca);};a0_0x44fc['cvPNee']=_0x1995f7,a0_0x44fc['MTpJsX']={},a0_0x44fc['PxUgeT']=!![];}const _0x387665=_0x19162b[0x0],_0x2ddfd2=_0x2050e9+_0x387665,_0x41e846=a0_0x44fc['MTpJsX'][_0x2ddfd2];return!_0x41e846?(_0x44fccc=a0_0x44fc['cvPNee'](_0x44fccc),a0_0x44fc['MTpJsX'][_0x2ddfd2]=_0x44fccc):_0x44fccc=_0x41e846,_0x44fccc;}import a0_0x59d4a1 from'fs/promises';import a0_0x3c46df from'path';import a0_0x244c07 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x19c7aa={},_0x593b36=null){const _0x3bfcaf=a0_0x44fc;super(_0x19c7aa,_0x593b36),this[_0x3bfcaf(0x1d2)]=!![],this[_0x3bfcaf(0x1e5)]=![],this[_0x3bfcaf(0x157)]=_0x19c7aa[_0x3bfcaf(0x157)]||0x7530,this[_0x3bfcaf(0x172)]=_0x19c7aa[_0x3bfcaf(0x172)]||0x5,this[_0x3bfcaf(0x1ec)]=_0x19c7aa['maxFileSize']||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this['allowedExtensions']=_0x19c7aa['allowedExtensions']||null,this[_0x3bfcaf(0x1e7)]=_0x19c7aa['blockedExtensions']||[_0x3bfcaf(0x1bc),'.bat',_0x3bfcaf(0x195),_0x3bfcaf(0x177),_0x3bfcaf(0x159)],this[_0x3bfcaf(0x1e2)]=_0x19c7aa[_0x3bfcaf(0x1e2)]||null,this[_0x3bfcaf(0x1e6)]=[],this[_0x3bfcaf(0x188)]=new a0_0xbbbbca(_0x19c7aa,_0x593b36);}['getDescription'](){const _0x1058f7=a0_0x44fc;return'\x0aFile\x20System\x20Tool:\x20Perform\x20file\x20and\x20directory\x20operations\x20safely\x20within\x20the\x20project\x20scope.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22src/file.js\x22,\x20\x22content\x22:\x20\x22...\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20read:\x20Read\x20file\x20contents\x20(filePath)\x0a-\x20write:\x20Write\x20content\x20to\x20file\x20(outputPath,\x20content)\x0a-\x20append:\x20Append\x20content\x20to\x20existing\x20file\x20(filePath,\x20content)\x0a-\x20delete:\x20Delete\x20a\x20file\x20(filePath)\x0a-\x20copy:\x20Copy\x20file\x20(sourcePath,\x20destPath)\x0a-\x20move:\x20Move/rename\x20file\x20(sourcePath,\x20destPath)\x0a-\x20create-dir:\x20Create\x20directory\x20(directory)\x0a-\x20list:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20exists:\x20Check\x20if\x20file/directory\x20exists\x20(filePath)\x0a-\x20stats:\x20Get\x20file/directory\x20metadata\x20(filePath)\x0a\x0aPARAMETERS:\x0a-\x20filePath:\x20Path\x20to\x20file\x20(for\x20read,\x20delete,\x20append,\x20exists,\x20stats)\x0a-\x20outputPath:\x20Path\x20where\x20to\x20write/create\x20file\x0a-\x20sourcePath:\x20Source\x20path\x20for\x20copy/move\x20operations\x0a-\x20destPath:\x20Destination\x20path\x20for\x20copy/move\x20operations\x0a-\x20directory:\x20Directory\x20path\x20for\x20create-dir\x20and\x20list\x20operations\x0a-\x20content:\x20Content\x20to\x20write/append\x0a-\x20encoding:\x20File\x20encoding\x20(default:\x20utf8)\x0a-\x20createDirs:\x20Create\x20parent\x20directories\x20if\x20they\x20don\x27t\x20exist\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aWrite\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22write\x22,\x20\x22outputPath\x22:\x20\x22hello.js\x22,\x20\x22content\x22:\x20\x22console.log(\x27Hello\x27);\x22}]\x0a}\x0a```\x0a\x0aRead\x20a\x20file:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22package.json\x22}]\x0a}\x0a```\x0a\x0aMultiple\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22filesystem\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22read\x22,\x20\x22filePath\x22:\x20\x22src/index.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22copy\x22,\x20\x22sourcePath\x22:\x20\x22template.js\x22,\x20\x22destPath\x22:\x20\x22src/component.js\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22create-dir\x22,\x20\x22directory\x22:\x20\x22src/components/ui\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Operations\x20restricted\x20to\x20project\x20directory\x0a-\x20File\x20size\x20limits\x20enforced\x20(max\x20'+Math[_0x1058f7(0x1ad)](this[_0x1058f7(0x1ec)]/0x400/0x400)+_0x1058f7(0x1f0);}[a0_0x3e01b2(0x1bb)](_0x30e432){const _0x4789a6=a0_0x3e01b2;try{const _0x2390e6={},_0xbe57ee=[];this[_0x4789a6(0x1ab)]?.['debug']('FileSystem\x20tool\x20parsing\x20parameters',{'contentLength':_0x30e432['length'],'contentPreview':_0x30e432[_0x4789a6(0x17f)](0x0,0xc8)});const _0x20fbad=['read','delete',_0x4789a6(0x1c9),'move','create-dir','list',_0x4789a6(0x168),'stats','append'];for(const _0x7f30e1 of _0x20fbad){const _0x407c33=a0_0x30480a['extractTagsWithAttributes'](_0x30e432,_0x7f30e1);for(const _0x2c879c of _0x407c33){const _0x47992d={'type':_0x7f30e1,..._0x2c879c['attributes']};_0x47992d[_0x4789a6(0x16c)]&&(_0x47992d[_0x4789a6(0x1af)]=_0x47992d['file-path'],delete _0x47992d[_0x4789a6(0x16c)]),_0x47992d[_0x4789a6(0x185)]&&(_0x47992d[_0x4789a6(0x1bf)]=_0x47992d['output-path'],delete _0x47992d[_0x4789a6(0x185)]),_0x47992d[_0x4789a6(0x1c8)]&&(_0x47992d[_0x4789a6(0x199)]=_0x47992d['source-path'],delete _0x47992d['source-path']),_0x47992d[_0x4789a6(0x191)]&&(_0x47992d['destPath']=_0x47992d[_0x4789a6(0x191)],delete _0x47992d[_0x4789a6(0x191)]),_0x47992d[_0x4789a6(0x1a4)]&&(_0x47992d[_0x4789a6(0x1a2)]=_0x47992d['create-dirs']===_0x4789a6(0x190),delete _0x47992d[_0x4789a6(0x1a4)]),_0xbe57ee[_0x4789a6(0x15e)](_0x47992d);}}const _0x25c191=_0x30e432[_0x4789a6(0x19b)](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x3fe483 of _0x25c191){const _0x2a5ae8=new a0_0x30480a(),_0xff97c0=_0x2a5ae8['parseAttributes'](_0x3fe483[0x1]),_0xbafdd7=_0x3fe483[0x2][_0x4789a6(0x1e0)](),_0x3d17f0={'type':'write','content':_0xbafdd7,..._0xff97c0};_0x3d17f0[_0x4789a6(0x185)]&&(_0x3d17f0['outputPath']=_0x3d17f0[_0x4789a6(0x185)],delete _0x3d17f0[_0x4789a6(0x185)]),_0x3d17f0['create-dirs']&&(_0x3d17f0[_0x4789a6(0x1a2)]=_0x3d17f0[_0x4789a6(0x1a4)]===_0x4789a6(0x190),delete _0x3d17f0['create-dirs']),_0xbe57ee[_0x4789a6(0x15e)](_0x3d17f0);}const _0x569fac=_0x30e432[_0x4789a6(0x19b)](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x3600bc of _0x569fac){const _0x18077d=new a0_0x30480a(),_0x3a3d2a=_0x18077d[_0x4789a6(0x183)](_0x3600bc[0x1]),_0x5a52c3=_0x3600bc[0x2][_0x4789a6(0x1e0)](),_0x266c91={'type':_0x4789a6(0x1b6),'content':_0x5a52c3,..._0x3a3d2a};_0x266c91[_0x4789a6(0x16c)]&&(_0x266c91['filePath']=_0x266c91[_0x4789a6(0x16c)],delete _0x266c91[_0x4789a6(0x16c)]),_0xbe57ee['push'](_0x266c91);}return _0x2390e6['actions']=_0xbe57ee,_0x2390e6[_0x4789a6(0x18c)]=_0x30e432[_0x4789a6(0x1e0)](),this[_0x4789a6(0x1ab)]?.[_0x4789a6(0x1b7)]('Parsed\x20FileSystem\x20tool\x20parameters',{'totalActions':_0xbe57ee['length'],'actionTypes':_0xbe57ee['map'](_0x3d06c9=>_0x3d06c9[_0x4789a6(0x1a1)]),'actions':_0xbe57ee['map'](_0x5c67b3=>({'type':_0x5c67b3[_0x4789a6(0x1a1)],'filePath':_0x5c67b3['filePath'],'outputPath':_0x5c67b3['outputPath'],'hasContent':!!_0x5c67b3['content']}))}),_0x2390e6;}catch(_0x4d44f6){throw new Error(_0x4789a6(0x1d0)+_0x4d44f6[_0x4789a6(0x1be)]);}}['getRequiredParameters'](){const _0x106cb3=a0_0x3e01b2;return[_0x106cb3(0x16e)];}['customValidateParameters'](_0x1835b3){const _0x2273c8=a0_0x3e01b2,_0xe28b51=[];if(!_0x1835b3[_0x2273c8(0x16e)]||!Array['isArray'](_0x1835b3['actions'])||_0x1835b3[_0x2273c8(0x16e)][_0x2273c8(0x193)]===0x0)_0xe28b51['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x10e34b,_0x45e853]of _0x1835b3[_0x2273c8(0x16e)]['entries']()){if(!_0x45e853['type']){_0xe28b51[_0x2273c8(0x15e)](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x162));continue;}switch(_0x45e853['type']){case'read':case _0x2273c8(0x1a8):case _0x2273c8(0x168):case _0x2273c8(0x18f):!_0x45e853['filePath']&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1b9)+_0x45e853[_0x2273c8(0x1a1)]);break;case _0x2273c8(0x1ee):!_0x45e853[_0x2273c8(0x1bf)]&&_0xe28b51['push']('Action\x20'+(_0x10e34b+0x1)+_0x2273c8(0x165));!_0x45e853['content']&&_0x45e853[_0x2273c8(0x1e8)]!==''&&_0xe28b51[_0x2273c8(0x15e)](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x18b));break;case _0x2273c8(0x1b6):!_0x45e853[_0x2273c8(0x1af)]&&_0xe28b51[_0x2273c8(0x15e)]('Action\x20'+(_0x10e34b+0x1)+':\x20file-path\x20is\x20required\x20for\x20append');!_0x45e853[_0x2273c8(0x1e8)]&&_0x45e853[_0x2273c8(0x1e8)]!==''&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1c1));break;case _0x2273c8(0x1c9):case'move':!_0x45e853['sourcePath']&&_0xe28b51[_0x2273c8(0x15e)]('Action\x20'+(_0x10e34b+0x1)+':\x20source-path\x20is\x20required\x20for\x20'+_0x45e853['type']);!_0x45e853[_0x2273c8(0x1cb)]&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+':\x20dest-path\x20is\x20required\x20for\x20'+_0x45e853['type']);break;case'create-dir':case'list':!_0x45e853[_0x2273c8(0x18d)]&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x160)+_0x45e853[_0x2273c8(0x1a1)]);break;default:_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x1cf)+_0x45e853[_0x2273c8(0x1a1)]);}_0x45e853['filePath']&&!this[_0x2273c8(0x19d)](_0x45e853[_0x2273c8(0x1af)])&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x15c)+a0_0x3c46df[_0x2273c8(0x1d8)](_0x45e853['filePath'])),_0x45e853[_0x2273c8(0x1bf)]&&!this['isAllowedFileExtension'](_0x45e853['outputPath'])&&_0xe28b51['push'](_0x2273c8(0x1c4)+(_0x10e34b+0x1)+_0x2273c8(0x15c)+a0_0x3c46df['extname'](_0x45e853[_0x2273c8(0x1bf)]));}return{'valid':_0xe28b51['length']===0x0,'errors':_0xe28b51};}async['execute'](_0x469db9,_0x54a6e7){const _0x2c5b01=a0_0x3e01b2;if(!_0x469db9||typeof _0x469db9!==_0x2c5b01(0x19e))throw new Error(_0x2c5b01(0x1ed));const {actions:_0x4ddd02}=_0x469db9;if(!_0x4ddd02)throw new Error(_0x2c5b01(0x192)+JSON[_0x2c5b01(0x16f)](Object[_0x2c5b01(0x19a)](_0x469db9)));if(!Array['isArray'](_0x4ddd02))throw new Error('Invalid\x20parameters:\x20actions\x20must\x20be\x20an\x20array.\x20Received\x20type:\x20'+typeof _0x4ddd02);if(_0x4ddd02['length']===0x0)throw new Error(_0x2c5b01(0x1db));const {projectDir:_0x516428,agentId:_0x24d974,directoryAccess:_0x5a3a52}=_0x54a6e7,_0x260807=_0x5a3a52||this[_0x2c5b01(0x188)][_0x2c5b01(0x182)]({'workingDirectory':_0x516428||process[_0x2c5b01(0x175)](),'writeEnabledDirectories':[_0x516428||process['cwd']()],'restrictToProject':!![]});_0x5a3a52&&_0x5a3a52['workingDirectory']?(console[_0x2c5b01(0x173)]('FileSystem\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x5a3a52[_0x2c5b01(0x17e)]),console['log'](_0x2c5b01(0x178),JSON[_0x2c5b01(0x16f)](_0x5a3a52,null,0x2))):(console['log']('FileSystem\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x516428||process[_0x2c5b01(0x175)]()),console['log']('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5a3a52),console['log'](_0x2c5b01(0x1b4),_0x516428));const _0x4068fe=[];for(const _0x30f6fd of _0x4ddd02){try{let _0x4646b7;switch(_0x30f6fd[_0x2c5b01(0x1a1)]){case'read':_0x4646b7=await this[_0x2c5b01(0x1eb)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807,_0x30f6fd['encoding']);break;case'write':_0x4646b7=await this[_0x2c5b01(0x1a3)](_0x30f6fd['outputPath'],_0x30f6fd['content'],_0x260807,{'encoding':_0x30f6fd[_0x2c5b01(0x16d)],'createDirs':_0x30f6fd[_0x2c5b01(0x1a2)]});break;case'append':_0x4646b7=await this['appendToFile'](_0x30f6fd['filePath'],_0x30f6fd['content'],_0x260807,_0x30f6fd[_0x2c5b01(0x16d)]);break;case _0x2c5b01(0x1a8):_0x4646b7=await this[_0x2c5b01(0x1dc)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;case _0x2c5b01(0x1c9):_0x4646b7=await this['copyFile'](_0x30f6fd['sourcePath'],_0x30f6fd[_0x2c5b01(0x1cb)],_0x260807);break;case'move':_0x4646b7=await this['moveFile'](_0x30f6fd['sourcePath'],_0x30f6fd[_0x2c5b01(0x1cb)],_0x260807);break;case'create-dir':_0x4646b7=await this['createDirectory'](_0x30f6fd['directory'],_0x260807);break;case _0x2c5b01(0x1ce):_0x4646b7=await this['listDirectory'](_0x30f6fd['directory'],_0x260807);break;case _0x2c5b01(0x168):_0x4646b7=await this[_0x2c5b01(0x1a7)](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;case _0x2c5b01(0x18f):_0x4646b7=await this['getFileStats'](_0x30f6fd[_0x2c5b01(0x1af)],_0x260807);break;default:throw new Error(_0x2c5b01(0x167)+_0x30f6fd[_0x2c5b01(0x1a1)]);}_0x4068fe['push'](_0x4646b7),this['addToHistory'](_0x30f6fd,_0x4646b7,_0x54a6e7['agentId']);}catch(_0x354524){const _0x46fb81={'success':![],'action':_0x30f6fd[_0x2c5b01(0x1a1)],'error':_0x354524['message'],'filePath':_0x30f6fd['filePath']||_0x30f6fd['outputPath']||_0x30f6fd[_0x2c5b01(0x18d)]};_0x4068fe[_0x2c5b01(0x15e)](_0x46fb81),this[_0x2c5b01(0x187)](_0x30f6fd,_0x46fb81,_0x54a6e7[_0x2c5b01(0x163)]);}}return{'success':!![],'actions':_0x4068fe,'executedActions':_0x4ddd02[_0x2c5b01(0x193)],'toolUsed':_0x2c5b01(0x164)};}async['readFile'](_0xa702cb,_0x540daf,_0x18cc7e=a0_0x3e01b2(0x1e4)){const _0x52d130=a0_0x3e01b2,_0x295f71=this[_0x52d130(0x188)]['getWorkingDirectory'](_0x540daf),_0x4f298c=this[_0x52d130(0x1c3)](_0xa702cb,_0x295f71),_0x224ec3=this[_0x52d130(0x188)]['validateReadAccess'](_0x4f298c,_0x540daf);if(!_0x224ec3['allowed'])throw new Error(_0x52d130(0x1d7)+_0x224ec3[_0x52d130(0x1a6)]+'\x20('+_0x224ec3['path']+')');try{const _0xc59bc5=await a0_0x59d4a1['stat'](_0x4f298c);if(_0xc59bc5[_0x52d130(0x1cc)]>this['maxFileSize'])throw new Error(_0x52d130(0x1a9)+_0xc59bc5['size']+'\x20bytes\x20(max\x20'+this[_0x52d130(0x1ec)]+')');const _0x4df39c=await a0_0x59d4a1[_0x52d130(0x1eb)](_0x4f298c,_0x18cc7e);return{'success':!![],'action':'read','filePath':this[_0x52d130(0x188)][_0x52d130(0x15d)](_0x4f298c,_0x540daf),'content':_0x4df39c,'size':_0xc59bc5[_0x52d130(0x1cc)],'encoding':_0x18cc7e,'lastModified':_0xc59bc5['mtime']['toISOString'](),'message':_0x52d130(0x1ae)+_0xc59bc5['size']+_0x52d130(0x1b0)+_0xa702cb};}catch(_0x224c32){throw new Error('Failed\x20to\x20read\x20file\x20'+_0xa702cb+':\x20'+_0x224c32['message']);}}async[a0_0x3e01b2(0x1a3)](_0x1a6572,_0x4ce0fe,_0x2d9bca,_0x453908={}){const _0x17b0cc=a0_0x3e01b2,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x453908,_0x1dcefe=this['directoryAccessManager']['getWorkingDirectory'](_0x2d9bca),_0x307f3a=this['resolvePath'](_0x1a6572,_0x1dcefe),_0x481812=this['directoryAccessManager'][_0x17b0cc(0x18a)](_0x307f3a,_0x2d9bca);if(!_0x481812['allowed'])throw new Error(_0x17b0cc(0x169)+_0x481812[_0x17b0cc(0x1a6)]+'\x20('+_0x481812['path']+')');try{const _0x1e30b8=Buffer['byteLength'](_0x4ce0fe,encoding);if(_0x1e30b8>this[_0x17b0cc(0x1ec)])throw new Error('Content\x20too\x20large:\x20'+_0x1e30b8+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');if(createDirs){const _0x55fe0d=a0_0x3c46df[_0x17b0cc(0x197)](_0x307f3a);await a0_0x59d4a1['mkdir'](_0x55fe0d,{'recursive':!![]});}let _0x4915aa=null;try{await a0_0x59d4a1['access'](_0x307f3a),_0x4915aa=_0x307f3a+_0x17b0cc(0x15b)+Date['now'](),await a0_0x59d4a1['copyFile'](_0x307f3a,_0x4915aa);}catch{}await a0_0x59d4a1[_0x17b0cc(0x1a3)](_0x307f3a,_0x4ce0fe,encoding);const _0x4479ff=await a0_0x59d4a1[_0x17b0cc(0x1b3)](_0x307f3a),_0x1fbccf=this['directoryAccessManager']['createRelativePath'](_0x307f3a,_0x2d9bca);return{'success':!![],'action':_0x17b0cc(0x1ee),'outputPath':_0x1fbccf,'fullPath':_0x307f3a,'size':_0x4479ff['size'],'encoding':encoding,'backupPath':_0x4915aa?this['directoryAccessManager']['createRelativePath'](_0x4915aa,_0x2d9bca):null,'backupFullPath':_0x4915aa||null,'message':'Wrote\x20'+_0x4479ff[_0x17b0cc(0x1cc)]+'\x20bytes\x20to\x20'+_0x307f3a};}catch(_0x509e05){throw new Error(_0x17b0cc(0x189)+_0x307f3a+':\x20'+_0x509e05[_0x17b0cc(0x1be)]);}}async['appendToFile'](_0xa8a634,_0x51ffaa,_0x192f92,_0x38802a=a0_0x3e01b2(0x1e4)){const _0x19dd60=a0_0x3e01b2,_0x14df3b=this['directoryAccessManager'][_0x19dd60(0x1d5)](_0x192f92),_0x353075=this[_0x19dd60(0x1c3)](_0xa8a634,_0x14df3b),_0x5100f6=this['directoryAccessManager']['validateWriteAccess'](_0x353075,_0x192f92);if(!_0x5100f6['allowed'])throw new Error(_0x19dd60(0x169)+_0x5100f6['reason']+'\x20('+_0x5100f6['path']+')');try{let _0x4c4efa=0x0;try{const _0x38c264=await a0_0x59d4a1['stat'](_0x353075);_0x4c4efa=_0x38c264[_0x19dd60(0x1cc)];}catch{}const _0xc7bd02=Buffer['byteLength'](_0x51ffaa,_0x38802a);if(_0x4c4efa+_0xc7bd02>this['maxFileSize'])throw new Error(_0x19dd60(0x1ea)+(_0x4c4efa+_0xc7bd02)+'\x20bytes\x20(max\x20'+this[_0x19dd60(0x1ec)]+')');await a0_0x59d4a1[_0x19dd60(0x19f)](_0x353075,_0x51ffaa,_0x38802a);const _0x44171c=await a0_0x59d4a1[_0x19dd60(0x1b3)](_0x353075),_0xaf1be0=this['directoryAccessManager'][_0x19dd60(0x15d)](_0x353075,_0x192f92);return{'success':!![],'action':_0x19dd60(0x1b6),'filePath':_0xaf1be0,'fullPath':_0x353075,'appendedBytes':_0xc7bd02,'totalSize':_0x44171c[_0x19dd60(0x1cc)],'encoding':_0x38802a,'message':'Appended\x20'+_0xc7bd02+'\x20bytes\x20to\x20'+_0x353075};}catch(_0x3677b8){throw new Error(_0x19dd60(0x17c)+_0x353075+':\x20'+_0x3677b8['message']);}}async['deleteFile'](_0x2ab043,_0x363f58){const _0x3cd9fa=a0_0x3e01b2,_0x5bb679=this[_0x3cd9fa(0x188)][_0x3cd9fa(0x1d5)](_0x363f58),_0x13e813=this[_0x3cd9fa(0x1c3)](_0x2ab043,_0x5bb679),_0x536b71=this['directoryAccessManager']['validateWriteAccess'](_0x13e813,_0x363f58);if(!_0x536b71[_0x3cd9fa(0x184)])throw new Error(_0x3cd9fa(0x1c2)+_0x536b71['reason']+'\x20('+_0x536b71['path']+')');try{const _0x287a9d=await a0_0x59d4a1[_0x3cd9fa(0x1b3)](_0x13e813),_0x5ac4ea=_0x13e813+'.deleted-backup-'+Date[_0x3cd9fa(0x1aa)]();await a0_0x59d4a1['copyFile'](_0x13e813,_0x5ac4ea),await a0_0x59d4a1['unlink'](_0x13e813);const _0x41f0e8=this[_0x3cd9fa(0x188)][_0x3cd9fa(0x15d)](_0x13e813,_0x363f58),_0x2b47c2=this[_0x3cd9fa(0x188)]['createRelativePath'](_0x5ac4ea,_0x363f58);return{'success':!![],'action':_0x3cd9fa(0x1a8),'filePath':_0x41f0e8,'fullPath':_0x13e813,'size':_0x287a9d['size'],'backupPath':_0x2b47c2,'backupFullPath':_0x5ac4ea,'message':'Deleted\x20'+_0x13e813+_0x3cd9fa(0x196)};}catch(_0x553bf5){throw new Error(_0x3cd9fa(0x186)+_0x13e813+':\x20'+_0x553bf5['message']);}}async[a0_0x3e01b2(0x16a)](_0x1752ec,_0x49f59f,_0x5a1eb6){const _0x5cf15d=a0_0x3e01b2,_0xb670e1=this['directoryAccessManager']['getWorkingDirectory'](_0x5a1eb6),_0x2109b6=this[_0x5cf15d(0x1c3)](_0x1752ec,_0xb670e1),_0x2d2f2a=this[_0x5cf15d(0x1c3)](_0x49f59f,_0xb670e1),_0x19640e=this[_0x5cf15d(0x188)]['validateReadAccess'](_0x2109b6,_0x5a1eb6);if(!_0x19640e[_0x5cf15d(0x184)])throw new Error('Source\x20read\x20access\x20denied:\x20'+_0x19640e[_0x5cf15d(0x1a6)]+'\x20('+_0x19640e[_0x5cf15d(0x1d3)]+')');const _0x15e4aa=this[_0x5cf15d(0x188)][_0x5cf15d(0x18a)](_0x2d2f2a,_0x5a1eb6);if(!_0x15e4aa['allowed'])throw new Error(_0x5cf15d(0x1a5)+_0x15e4aa[_0x5cf15d(0x1a6)]+'\x20('+_0x15e4aa[_0x5cf15d(0x1d3)]+')');try{const _0x26a7a7=await a0_0x59d4a1[_0x5cf15d(0x1b3)](_0x2109b6);if(_0x26a7a7['size']>this['maxFileSize'])throw new Error(_0x5cf15d(0x174)+_0x26a7a7[_0x5cf15d(0x1cc)]+'\x20bytes');const _0x3f3b7e=a0_0x3c46df['dirname'](_0x2d2f2a);await a0_0x59d4a1[_0x5cf15d(0x18e)](_0x3f3b7e,{'recursive':!![]}),await a0_0x59d4a1[_0x5cf15d(0x16a)](_0x2109b6,_0x2d2f2a);const _0x7775a1=this['directoryAccessManager']['createRelativePath'](_0x2109b6,_0x5a1eb6),_0x5d0666=this['directoryAccessManager']['createRelativePath'](_0x2d2f2a,_0x5a1eb6);return{'success':!![],'action':'copy','sourcePath':_0x7775a1,'destPath':_0x5d0666,'sourceFullPath':_0x2109b6,'destFullPath':_0x2d2f2a,'size':_0x26a7a7[_0x5cf15d(0x1cc)],'message':_0x5cf15d(0x1da)+_0x2109b6+'\x20to\x20'+_0x2d2f2a};}catch(_0x24118e){throw new Error(_0x5cf15d(0x156)+_0x2109b6+'\x20to\x20'+_0x2d2f2a+':\x20'+_0x24118e[_0x5cf15d(0x1be)]);}}async[a0_0x3e01b2(0x179)](_0x3fd760,_0x1e91b1,_0x29d91e){const _0x5cf0f3=a0_0x3e01b2,_0x4c2add=this['directoryAccessManager']['getWorkingDirectory'](_0x29d91e),_0x51c2bb=this['resolvePath'](_0x3fd760,_0x4c2add),_0x4445b6=this['resolvePath'](_0x1e91b1,_0x4c2add),_0x122598=this['directoryAccessManager'][_0x5cf0f3(0x170)](_0x51c2bb,_0x29d91e);if(!_0x122598[_0x5cf0f3(0x184)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x122598['reason']+'\x20('+_0x122598[_0x5cf0f3(0x1d3)]+')');const _0x587310=this['directoryAccessManager'][_0x5cf0f3(0x18a)](_0x4445b6,_0x29d91e);if(!_0x587310[_0x5cf0f3(0x184)])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x587310['reason']+'\x20('+_0x587310[_0x5cf0f3(0x1d3)]+')');try{const _0x20642a=await a0_0x59d4a1['stat'](_0x51c2bb),_0x3f017e=a0_0x3c46df[_0x5cf0f3(0x197)](_0x4445b6);await a0_0x59d4a1[_0x5cf0f3(0x18e)](_0x3f017e,{'recursive':!![]}),await a0_0x59d4a1[_0x5cf0f3(0x1a0)](_0x51c2bb,_0x4445b6);const _0x575590=this[_0x5cf0f3(0x188)][_0x5cf0f3(0x15d)](_0x51c2bb,_0x29d91e),_0x5a7f1d=this[_0x5cf0f3(0x188)]['createRelativePath'](_0x4445b6,_0x29d91e);return{'success':!![],'action':'move','sourcePath':_0x575590,'destPath':_0x5a7f1d,'fullSourcePath':_0x51c2bb,'fullDestPath':_0x4445b6,'size':_0x20642a[_0x5cf0f3(0x1cc)],'message':_0x5cf0f3(0x1de)+_0x3fd760+'\x20to\x20'+_0x1e91b1};}catch(_0x4b768e){throw new Error(_0x5cf0f3(0x19c)+_0x3fd760+'\x20to\x20'+_0x1e91b1+':\x20'+_0x4b768e[_0x5cf0f3(0x1be)]);}}async['createDirectory'](_0x20c685,_0x93b8d3){const _0x4ea808=a0_0x3e01b2,_0x187b93=this['directoryAccessManager']['getWorkingDirectory'](_0x93b8d3),_0x4cc8a9=this['resolvePath'](_0x20c685,_0x187b93),_0xa2a381=this[_0x4ea808(0x188)]['validateWriteAccess'](_0x4cc8a9,_0x93b8d3);if(!_0xa2a381[_0x4ea808(0x184)])throw new Error(_0x4ea808(0x169)+_0xa2a381['reason']+'\x20('+_0xa2a381[_0x4ea808(0x1d3)]+')');try{await a0_0x59d4a1[_0x4ea808(0x18e)](_0x4cc8a9,{'recursive':!![]});const _0xd7b718=this[_0x4ea808(0x188)][_0x4ea808(0x15d)](_0x4cc8a9,_0x93b8d3);return{'success':!![],'action':_0x4ea808(0x1e9),'directory':_0xd7b718,'fullPath':_0x4cc8a9,'message':'Created\x20directory\x20'+_0x20c685};}catch(_0x46ddea){throw new Error(_0x4ea808(0x15a)+_0x20c685+':\x20'+_0x46ddea[_0x4ea808(0x1be)]);}}async['listDirectory'](_0x1823de,_0x2a4559){const _0x570491=a0_0x3e01b2,_0x566507=this['directoryAccessManager'][_0x570491(0x1d5)](_0x2a4559),_0x242f04=this[_0x570491(0x1c3)](_0x1823de,_0x566507),_0x25b694=this[_0x570491(0x188)]['validateReadAccess'](_0x242f04,_0x2a4559);if(!_0x25b694[_0x570491(0x184)])throw new Error(_0x570491(0x1d7)+_0x25b694['reason']+'\x20('+_0x25b694[_0x570491(0x1d3)]+')');try{const _0x516a78=await a0_0x59d4a1[_0x570491(0x171)](_0x242f04,{'withFileTypes':!![]}),_0x36d6b8=[];for(const _0x3858bb of _0x516a78){const _0x41b8dc=a0_0x3c46df[_0x570491(0x1b2)](_0x242f04,_0x3858bb[_0x570491(0x17a)]),_0x345ad7=await a0_0x59d4a1['stat'](_0x41b8dc);_0x36d6b8[_0x570491(0x15e)]({'name':_0x3858bb[_0x570491(0x17a)],'type':_0x3858bb[_0x570491(0x166)]()?'directory':'file','size':_0x3858bb[_0x570491(0x1d1)]()?_0x345ad7['size']:undefined,'lastModified':_0x345ad7[_0x570491(0x161)]['toISOString'](),'permissions':_0x345ad7[_0x570491(0x1cd)],'isSymlink':_0x3858bb['isSymbolicLink']()});}const _0x21ae91=this[_0x570491(0x188)]['createRelativePath'](_0x242f04,_0x2a4559);return{'success':!![],'action':'list','directory':_0x21ae91,'fullPath':_0x242f04,'contents':_0x36d6b8,'totalItems':_0x36d6b8['length'],'directories':_0x36d6b8[_0x570491(0x1d6)](_0x1c25b3=>_0x1c25b3[_0x570491(0x1a1)]===_0x570491(0x18d))[_0x570491(0x193)],'files':_0x36d6b8[_0x570491(0x1d6)](_0xf42d6d=>_0xf42d6d[_0x570491(0x1a1)]==='file')[_0x570491(0x193)],'message':'Listed\x20'+_0x36d6b8[_0x570491(0x193)]+_0x570491(0x1d4)+_0x1823de};}catch(_0x78c46d){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x1823de+':\x20'+_0x78c46d[_0x570491(0x1be)]);}}async[a0_0x3e01b2(0x1a7)](_0x4837f2,_0x11469a){const _0x6280d7=a0_0x3e01b2,_0x39fa05=this[_0x6280d7(0x188)][_0x6280d7(0x1d5)](_0x11469a),_0xedeb44=this[_0x6280d7(0x1c3)](_0x4837f2,_0x39fa05),_0xe3ec80=this['directoryAccessManager']['validateReadAccess'](_0xedeb44,_0x11469a);if(!_0xe3ec80['allowed'])throw new Error(_0x6280d7(0x1d7)+_0xe3ec80['reason']+'\x20('+_0xe3ec80['path']+')');try{const _0xfa8d60=await a0_0x59d4a1['stat'](_0xedeb44),_0x462694=this['directoryAccessManager']['createRelativePath'](_0xedeb44,_0x11469a);return{'success':!![],'action':_0x6280d7(0x168),'filePath':_0x462694,'fullPath':_0xedeb44,'exists':!![],'type':_0xfa8d60[_0x6280d7(0x166)]()?_0x6280d7(0x18d):_0x6280d7(0x1ba),'message':_0x4837f2+'\x20exists\x20as\x20'+(_0xfa8d60['isDirectory']()?'directory':'file')};}catch(_0x5d3ce1){if(_0x5d3ce1[_0x6280d7(0x158)]==='ENOENT'){const _0x450901=this['directoryAccessManager'][_0x6280d7(0x15d)](_0xedeb44,_0x11469a);return{'success':!![],'action':'exists','filePath':_0x450901,'fullPath':_0xedeb44,'exists':![],'message':_0x4837f2+_0x6280d7(0x17b)};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x4837f2+':\x20'+_0x5d3ce1[_0x6280d7(0x1be)]);}}async['getFileStats'](_0x414011,_0x4fd654){const _0x541b44=a0_0x3e01b2,_0x54a93f=this[_0x541b44(0x188)][_0x541b44(0x1d5)](_0x4fd654),_0x55474c=this[_0x541b44(0x1c3)](_0x414011,_0x54a93f),_0x3834ab=this[_0x541b44(0x188)]['validateReadAccess'](_0x55474c,_0x4fd654);if(!_0x3834ab['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x3834ab[_0x541b44(0x1a6)]+'\x20('+_0x3834ab['path']+')');try{const _0xeda434=await a0_0x59d4a1['stat'](_0x55474c),_0x17423a=this['directoryAccessManager'][_0x541b44(0x15d)](_0x55474c,_0x4fd654);return{'success':!![],'action':'stats','filePath':_0x17423a,'fullPath':_0x55474c,'stats':{'size':_0xeda434[_0x541b44(0x1cc)],'type':_0xeda434[_0x541b44(0x166)]()?_0x541b44(0x18d):_0x541b44(0x1ba),'lastModified':_0xeda434['mtime'][_0x541b44(0x1ef)](),'lastAccessed':_0xeda434[_0x541b44(0x17d)]['toISOString'](),'created':_0xeda434['birthtime'][_0x541b44(0x1ef)](),'permissions':_0xeda434['mode'],'isSymlink':_0xeda434[_0x541b44(0x181)]()},'message':_0x541b44(0x176)+_0x414011};}catch(_0x4557ef){throw new Error('Failed\x20to\x20get\x20stats\x20for\x20'+_0x414011+':\x20'+_0x4557ef[_0x541b44(0x1be)]);}}['resolvePath'](_0x520e79,_0x2e8d8a){const _0x43725b=a0_0x3e01b2;if(a0_0x3c46df[_0x43725b(0x1c5)](_0x520e79))return a0_0x3c46df['normalize'](_0x520e79);return a0_0x3c46df['resolve'](_0x2e8d8a,_0x520e79);}[a0_0x3e01b2(0x1b5)](_0x3499e5,_0x36acdf,_0x346230=a0_0x3e01b2(0x1b8)){const _0x56370b=a0_0x3e01b2,_0x2ac033=_0x346230===_0x56370b(0x1ee)?this[_0x56370b(0x188)]['validateWriteAccess'](_0x3499e5,_0x36acdf):this[_0x56370b(0x188)]['validateReadAccess'](_0x3499e5,_0x36acdf);if(!_0x2ac033[_0x56370b(0x184)])throw new Error(_0x346230+_0x56370b(0x1df)+_0x2ac033[_0x56370b(0x1a6)]+'\x20('+_0x2ac033['path']+')');return _0x2ac033;}[a0_0x3e01b2(0x19d)](_0x4ca490){const _0x3ce6c8=a0_0x3e01b2,_0x720ed5=a0_0x3c46df['extname'](_0x4ca490)[_0x3ce6c8(0x1c0)]();if(this[_0x3ce6c8(0x1e7)][_0x3ce6c8(0x180)](_0x720ed5))return![];if(this['allowedExtensions']&&!this[_0x3ce6c8(0x15f)]['includes'](_0x720ed5))return![];return!![];}['addToHistory'](_0x21e32c,_0x2de022,_0x49990c){const _0x1f666e=a0_0x3e01b2,_0x27f447={'timestamp':new Date()[_0x1f666e(0x1ef)](),'agentId':_0x49990c,'action':_0x21e32c['type'],'filePath':_0x21e32c[_0x1f666e(0x1af)]||_0x21e32c['outputPath']||_0x21e32c[_0x1f666e(0x18d)],'success':_0x2de022['success'],'size':_0x2de022[_0x1f666e(0x1cc)]};this[_0x1f666e(0x1e6)]['push'](_0x27f447),this[_0x1f666e(0x1e6)][_0x1f666e(0x193)]>0xc8&&(this['operationHistory']=this[_0x1f666e(0x1e6)]['slice'](-0xc8));}['getSupportedActions'](){const _0x6f0659=a0_0x3e01b2;return['read',_0x6f0659(0x1ee),_0x6f0659(0x1b6),'delete',_0x6f0659(0x1c9),'move',_0x6f0659(0x1e9),_0x6f0659(0x1ce),'exists','stats'];}[a0_0x3e01b2(0x1bd)](){const _0x40f47f=a0_0x3e01b2;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x40f47f(0x19e),'properties':{'type':{'type':_0x40f47f(0x1ac),'enum':this[_0x40f47f(0x1c7)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':_0x40f47f(0x1ac)},'content':{'type':_0x40f47f(0x1ac)},'encoding':{'type':'string'},'createDirs':{'type':'boolean'}},'required':['type']}}},'required':['actions']};}[a0_0x3e01b2(0x198)](_0x287a43=null){const _0x4aec16=a0_0x3e01b2;if(_0x287a43)return this[_0x4aec16(0x1e6)]['filter'](_0x55a58d=>_0x55a58d['agentId']===_0x287a43);return[...this[_0x4aec16(0x1e6)]];}}export default FileSystemTool;
|
|
1
|
+
const a0_0x2418a1=a0_0x5739;(function(_0x562f5d,_0x3088c4){const _0x193f57=a0_0x5739,_0x280437=_0x562f5d();while(!![]){try{const _0x2881bd=-parseInt(_0x193f57(0x131))/0x1+parseInt(_0x193f57(0x1bb))/0x2*(parseInt(_0x193f57(0x1a3))/0x3)+-parseInt(_0x193f57(0x14e))/0x4+-parseInt(_0x193f57(0x1b2))/0x5*(-parseInt(_0x193f57(0x13f))/0x6)+-parseInt(_0x193f57(0x1be))/0x7+-parseInt(_0x193f57(0x19b))/0x8+-parseInt(_0x193f57(0x170))/0x9*(-parseInt(_0x193f57(0x1b3))/0xa);if(_0x2881bd===_0x3088c4)break;else _0x280437['push'](_0x280437['shift']());}catch(_0x5c7975){_0x280437['push'](_0x280437['shift']());}}}(a0_0x20be,0x7b9ea));import{BaseTool}from'./baseTool.js';import a0_0x383b38 from'../utilities/tagParser.js';import a0_0x462554 from'../utilities/directoryAccessManager.js';import a0_0x43cee1 from'fs/promises';function a0_0x5739(_0x3fcd99,_0x908be){_0x3fcd99=_0x3fcd99-0x131;const _0x20be5e=a0_0x20be();let _0x5739ea=_0x20be5e[_0x3fcd99];if(a0_0x5739['lKLJJo']===undefined){var _0x29c595=function(_0x2d6852){const _0x1e48b2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x383b38='',_0x462554='';for(let _0x43cee1=0x0,_0x4d3671,_0x8522d9,_0x3e3c95=0x0;_0x8522d9=_0x2d6852['charAt'](_0x3e3c95++);~_0x8522d9&&(_0x4d3671=_0x43cee1%0x4?_0x4d3671*0x40+_0x8522d9:_0x8522d9,_0x43cee1++%0x4)?_0x383b38+=String['fromCharCode'](0xff&_0x4d3671>>(-0x2*_0x43cee1&0x6)):0x0){_0x8522d9=_0x1e48b2['indexOf'](_0x8522d9);}for(let _0x387619=0x0,_0x3a9b28=_0x383b38['length'];_0x387619<_0x3a9b28;_0x387619++){_0x462554+='%'+('00'+_0x383b38['charCodeAt'](_0x387619)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x462554);};a0_0x5739['AkEAee']=_0x29c595,a0_0x5739['jVlegG']={},a0_0x5739['lKLJJo']=!![];}const _0x4dfae9=_0x20be5e[0x0],_0x52bcc1=_0x3fcd99+_0x4dfae9,_0x2ac0c4=a0_0x5739['jVlegG'][_0x52bcc1];return!_0x2ac0c4?(_0x5739ea=a0_0x5739['AkEAee'](_0x5739ea),a0_0x5739['jVlegG'][_0x52bcc1]=_0x5739ea):_0x5739ea=_0x2ac0c4,_0x5739ea;}import a0_0x4d3671 from'path';import a0_0x8522d9 from'crypto';import{TOOL_STATUS,FILE_EXTENSIONS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class FileSystemTool extends BaseTool{constructor(_0x3e3c95={},_0x387619=null){const _0x5c98da=a0_0x5739;super(_0x3e3c95,_0x387619),this[_0x5c98da(0x134)]=!![],this['isAsync']=![],this[_0x5c98da(0x176)]=_0x3e3c95['timeout']||0x7530,this['maxConcurrentOperations']=_0x3e3c95['maxConcurrentOperations']||0x5,this['maxFileSize']=_0x3e3c95[_0x5c98da(0x18c)]||SYSTEM_DEFAULTS['MAX_FILE_SIZE'],this[_0x5c98da(0x174)]=_0x3e3c95[_0x5c98da(0x174)]||null,this[_0x5c98da(0x1ac)]=_0x3e3c95['blockedExtensions']||['.exe','.bat','.cmd',_0x5c98da(0x19a),'.com'],this['allowedDirectories']=_0x3e3c95[_0x5c98da(0x14c)]||null,this[_0x5c98da(0x1b8)]=[],this[_0x5c98da(0x182)]=new a0_0x462554(_0x3e3c95,_0x387619);}['getDescription'](){const _0x193829=a0_0x5739;return _0x193829(0x160)+Math['round'](this[_0x193829(0x18c)]/0x400/0x400)+_0x193829(0x1c3);}['parseParameters'](_0x3a9b28){const _0x5f26d9=a0_0x5739;try{const _0x239113={},_0x3234fc=[];this['logger']?.[_0x5f26d9(0x181)](_0x5f26d9(0x197),{'contentLength':_0x3a9b28[_0x5f26d9(0x14b)],'contentPreview':_0x3a9b28[_0x5f26d9(0x180)](0x0,0xc8)});const _0x4ba1ad=['read','delete',_0x5f26d9(0x132),'move',_0x5f26d9(0x177),'list','exists','stats','append'];for(const _0x52319a of _0x4ba1ad){const _0x43a698=a0_0x383b38[_0x5f26d9(0x15c)](_0x3a9b28,_0x52319a);for(const _0x531c19 of _0x43a698){const _0x4fdac2={'type':_0x52319a,..._0x531c19[_0x5f26d9(0x1a6)]};_0x4fdac2['file-path']&&(_0x4fdac2['filePath']=_0x4fdac2['file-path'],delete _0x4fdac2[_0x5f26d9(0x168)]),_0x4fdac2[_0x5f26d9(0x142)]&&(_0x4fdac2[_0x5f26d9(0x15d)]=_0x4fdac2[_0x5f26d9(0x142)],delete _0x4fdac2[_0x5f26d9(0x142)]),_0x4fdac2['source-path']&&(_0x4fdac2['sourcePath']=_0x4fdac2['source-path'],delete _0x4fdac2[_0x5f26d9(0x13c)]),_0x4fdac2['dest-path']&&(_0x4fdac2['destPath']=_0x4fdac2['dest-path'],delete _0x4fdac2['dest-path']),_0x4fdac2[_0x5f26d9(0x17b)]&&(_0x4fdac2[_0x5f26d9(0x167)]=_0x4fdac2[_0x5f26d9(0x17b)]==='true',delete _0x4fdac2['create-dirs']),_0x3234fc['push'](_0x4fdac2);}}const _0x536f02=_0x3a9b28['matchAll'](/<write\s+([^>]*)>(.*?)<\/write>/gs);for(const _0x10fe99 of _0x536f02){const _0x3d2f3a=new a0_0x383b38(),_0x1abc78=_0x3d2f3a[_0x5f26d9(0x1b9)](_0x10fe99[0x1]),_0x3ea009=_0x10fe99[0x2][_0x5f26d9(0x1ad)](),_0x5d0401={'type':_0x5f26d9(0x1a0),'content':_0x3ea009,..._0x1abc78};_0x5d0401[_0x5f26d9(0x142)]&&(_0x5d0401[_0x5f26d9(0x15d)]=_0x5d0401[_0x5f26d9(0x142)],delete _0x5d0401['output-path']),_0x5d0401[_0x5f26d9(0x17b)]&&(_0x5d0401[_0x5f26d9(0x167)]=_0x5d0401['create-dirs']==='true',delete _0x5d0401[_0x5f26d9(0x17b)]),_0x3234fc['push'](_0x5d0401);}const _0x105a39=_0x3a9b28['matchAll'](/<append\s+([^>]*)>(.*?)<\/append>/gs);for(const _0x586f94 of _0x105a39){const _0x4ae84f=new a0_0x383b38(),_0x34cd3b=_0x4ae84f['parseAttributes'](_0x586f94[0x1]),_0x31f825=_0x586f94[0x2]['trim'](),_0x5c4600={'type':'append','content':_0x31f825,..._0x34cd3b};_0x5c4600[_0x5f26d9(0x168)]&&(_0x5c4600['filePath']=_0x5c4600['file-path'],delete _0x5c4600[_0x5f26d9(0x168)]),_0x3234fc[_0x5f26d9(0x1b0)](_0x5c4600);}return _0x239113[_0x5f26d9(0x17e)]=_0x3234fc,_0x239113['rawContent']=_0x3a9b28['trim'](),this[_0x5f26d9(0x16d)]?.['debug'](_0x5f26d9(0x141),{'totalActions':_0x3234fc['length'],'actionTypes':_0x3234fc[_0x5f26d9(0x17a)](_0x3200ff=>_0x3200ff['type']),'actions':_0x3234fc['map'](_0x39edaa=>({'type':_0x39edaa[_0x5f26d9(0x169)],'filePath':_0x39edaa['filePath'],'outputPath':_0x39edaa['outputPath'],'hasContent':!!_0x39edaa['content']}))}),_0x239113;}catch(_0x49e5cf){throw new Error(_0x5f26d9(0x192)+_0x49e5cf['message']);}}['getRequiredParameters'](){const _0x40f0df=a0_0x5739;return[_0x40f0df(0x17e)];}[a0_0x2418a1(0x14a)](_0x2e5f77){const _0x27d8ff=a0_0x2418a1,_0x10ae53=[];if(!_0x2e5f77['actions']||!Array[_0x27d8ff(0x186)](_0x2e5f77[_0x27d8ff(0x17e)])||_0x2e5f77[_0x27d8ff(0x17e)]['length']===0x0)_0x10ae53[_0x27d8ff(0x1b0)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x22362c,_0x5e2be2]of _0x2e5f77[_0x27d8ff(0x17e)][_0x27d8ff(0x1b7)]()){if(!_0x5e2be2[_0x27d8ff(0x169)]){_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+_0x27d8ff(0x19e));continue;}switch(_0x5e2be2[_0x27d8ff(0x169)]){case'read':case _0x27d8ff(0x16e):case'exists':case _0x27d8ff(0x18a):!_0x5e2be2[_0x27d8ff(0x1ae)]&&_0x10ae53['push']('Action\x20'+(_0x22362c+0x1)+':\x20file-path\x20is\x20required\x20for\x20'+_0x5e2be2['type']);break;case'write':!_0x5e2be2['outputPath']&&_0x10ae53[_0x27d8ff(0x1b0)](_0x27d8ff(0x139)+(_0x22362c+0x1)+':\x20output-path\x20is\x20required\x20for\x20write');!_0x5e2be2['content']&&_0x5e2be2['content']!==''&&_0x10ae53[_0x27d8ff(0x1b0)](_0x27d8ff(0x139)+(_0x22362c+0x1)+_0x27d8ff(0x1c1));break;case _0x27d8ff(0x17c):!_0x5e2be2[_0x27d8ff(0x1ae)]&&_0x10ae53[_0x27d8ff(0x1b0)](_0x27d8ff(0x139)+(_0x22362c+0x1)+_0x27d8ff(0x16b));!_0x5e2be2['content']&&_0x5e2be2['content']!==''&&_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+':\x20content\x20is\x20required\x20for\x20append');break;case _0x27d8ff(0x132):case'move':!_0x5e2be2[_0x27d8ff(0x164)]&&_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+_0x27d8ff(0x14d)+_0x5e2be2['type']);!_0x5e2be2[_0x27d8ff(0x16f)]&&_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+_0x27d8ff(0x18d)+_0x5e2be2['type']);break;case'create-dir':case'list':!_0x5e2be2['directory']&&_0x10ae53['push'](_0x27d8ff(0x139)+(_0x22362c+0x1)+_0x27d8ff(0x148)+_0x5e2be2['type']);break;default:_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5e2be2[_0x27d8ff(0x169)]);}_0x5e2be2[_0x27d8ff(0x1ae)]&&!this['isAllowedFileExtension'](_0x5e2be2['filePath'])&&_0x10ae53[_0x27d8ff(0x1b0)]('Action\x20'+(_0x22362c+0x1)+_0x27d8ff(0x199)+a0_0x4d3671[_0x27d8ff(0x149)](_0x5e2be2[_0x27d8ff(0x1ae)])),_0x5e2be2['outputPath']&&!this[_0x27d8ff(0x173)](_0x5e2be2['outputPath'])&&_0x10ae53[_0x27d8ff(0x1b0)](_0x27d8ff(0x139)+(_0x22362c+0x1)+_0x27d8ff(0x199)+a0_0x4d3671[_0x27d8ff(0x149)](_0x5e2be2[_0x27d8ff(0x15d)]));}return{'valid':_0x10ae53['length']===0x0,'errors':_0x10ae53};}async['execute'](_0x7e42b5,_0x340b78){const _0x18bcc3=a0_0x2418a1;if(!_0x7e42b5||typeof _0x7e42b5!=='object')throw new Error('Invalid\x20parameters:\x20params\x20must\x20be\x20an\x20object');const {actions:_0x4b0536}=_0x7e42b5;if(!_0x4b0536)throw new Error('Invalid\x20parameters:\x20actions\x20is\x20required.\x20Received\x20params:\x20'+JSON['stringify'](Object['keys'](_0x7e42b5)));if(!Array['isArray'](_0x4b0536))throw new Error(_0x18bcc3(0x1a9)+typeof _0x4b0536);if(_0x4b0536['length']===0x0)throw new Error(_0x18bcc3(0x16a));const {projectDir:_0x402eaa,agentId:_0x23df7c,directoryAccess:_0x5a7fe6}=_0x340b78,_0x5d795f=_0x5a7fe6||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x402eaa||process[_0x18bcc3(0x165)](),'writeEnabledDirectories':[_0x402eaa||process[_0x18bcc3(0x165)]()],'restrictToProject':!![]});_0x5a7fe6&&_0x5a7fe6[_0x18bcc3(0x15e)]?(console['log'](_0x18bcc3(0x198),_0x5a7fe6['workingDirectory']),console[_0x18bcc3(0x140)](_0x18bcc3(0x179),JSON[_0x18bcc3(0x13b)](_0x5a7fe6,null,0x2))):(console[_0x18bcc3(0x140)](_0x18bcc3(0x137),_0x402eaa||process[_0x18bcc3(0x165)]()),console[_0x18bcc3(0x140)]('FileSystem\x20DEBUG:\x20directoryAccess\x20is:',_0x5a7fe6),console[_0x18bcc3(0x140)](_0x18bcc3(0x178),_0x402eaa));const _0x261821=[];for(const _0x89cf2f of _0x4b0536){try{let _0xde4c3d;switch(_0x89cf2f[_0x18bcc3(0x169)]){case'read':_0xde4c3d=await this[_0x18bcc3(0x15b)](_0x89cf2f[_0x18bcc3(0x1ae)],_0x5d795f,_0x89cf2f['encoding']);break;case'write':_0xde4c3d=await this['writeFile'](_0x89cf2f[_0x18bcc3(0x15d)],_0x89cf2f['content'],_0x5d795f,{'encoding':_0x89cf2f[_0x18bcc3(0x13d)],'createDirs':_0x89cf2f['createDirs']});break;case _0x18bcc3(0x17c):_0xde4c3d=await this['appendToFile'](_0x89cf2f[_0x18bcc3(0x1ae)],_0x89cf2f[_0x18bcc3(0x136)],_0x5d795f,_0x89cf2f['encoding']);break;case _0x18bcc3(0x16e):_0xde4c3d=await this['deleteFile'](_0x89cf2f[_0x18bcc3(0x1ae)],_0x5d795f);break;case _0x18bcc3(0x132):_0xde4c3d=await this['copyFile'](_0x89cf2f[_0x18bcc3(0x164)],_0x89cf2f['destPath'],_0x5d795f);break;case'move':_0xde4c3d=await this['moveFile'](_0x89cf2f[_0x18bcc3(0x164)],_0x89cf2f['destPath'],_0x5d795f);break;case _0x18bcc3(0x177):_0xde4c3d=await this['createDirectory'](_0x89cf2f['directory'],_0x5d795f);break;case _0x18bcc3(0x158):_0xde4c3d=await this[_0x18bcc3(0x1a2)](_0x89cf2f['directory'],_0x5d795f);break;case _0x18bcc3(0x1ba):_0xde4c3d=await this[_0x18bcc3(0x171)](_0x89cf2f['filePath'],_0x5d795f);break;case'stats':_0xde4c3d=await this[_0x18bcc3(0x1aa)](_0x89cf2f['filePath'],_0x5d795f);break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x89cf2f[_0x18bcc3(0x169)]);}_0x261821[_0x18bcc3(0x1b0)](_0xde4c3d),this['addToHistory'](_0x89cf2f,_0xde4c3d,_0x340b78[_0x18bcc3(0x184)]);}catch(_0x47a0a1){const _0x3530e4={'success':![],'action':_0x89cf2f[_0x18bcc3(0x169)],'error':_0x47a0a1['message'],'filePath':_0x89cf2f['filePath']||_0x89cf2f['outputPath']||_0x89cf2f['directory']};_0x261821['push'](_0x3530e4),this[_0x18bcc3(0x191)](_0x89cf2f,_0x3530e4,_0x340b78['agentId']);}}return{'success':!![],'actions':_0x261821,'executedActions':_0x4b0536['length'],'toolUsed':'filesys'};}async[a0_0x2418a1(0x15b)](_0x4f9648,_0x2f08e6,_0x23463b='utf8'){const _0x3b3065=a0_0x2418a1,_0x2782ae=this['directoryAccessManager']['getWorkingDirectory'](_0x2f08e6),_0x441b2d=this['resolvePath'](_0x4f9648,_0x2782ae),_0x4eea20=this[_0x3b3065(0x182)][_0x3b3065(0x163)](_0x441b2d,_0x2f08e6);if(!_0x4eea20[_0x3b3065(0x1a7)])throw new Error(_0x3b3065(0x135)+_0x4eea20['reason']+'\x20('+_0x4eea20[_0x3b3065(0x193)]+')');try{const _0xde0c2e=await a0_0x43cee1['stat'](_0x441b2d);if(_0xde0c2e[_0x3b3065(0x18e)]>this[_0x3b3065(0x18c)])throw new Error(_0x3b3065(0x175)+_0xde0c2e['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x4926e1=await a0_0x43cee1['readFile'](_0x441b2d,_0x23463b);return{'success':!![],'action':'read','filePath':this[_0x3b3065(0x182)][_0x3b3065(0x166)](_0x441b2d,_0x2f08e6),'content':_0x4926e1,'size':_0xde0c2e[_0x3b3065(0x18e)],'encoding':_0x23463b,'lastModified':_0xde0c2e['mtime'][_0x3b3065(0x1a8)](),'message':'Read\x20'+_0xde0c2e['size']+_0x3b3065(0x1bc)+_0x4f9648};}catch(_0x4ac8fa){throw new Error('Failed\x20to\x20read\x20file\x20'+_0x4f9648+':\x20'+_0x4ac8fa['message']);}}async['writeFile'](_0x3d0969,_0x369391,_0x204688,_0x37e30f={}){const _0x4fb2db=a0_0x2418a1,{encoding:encoding='utf8',createDirs:createDirs=!![]}=_0x37e30f,_0x5a1d72=this[_0x4fb2db(0x182)][_0x4fb2db(0x185)](_0x204688),_0x1cb384=this[_0x4fb2db(0x133)](_0x3d0969,_0x5a1d72),_0x36dbf1=this['directoryAccessManager'][_0x4fb2db(0x190)](_0x1cb384,_0x204688);if(!_0x36dbf1['allowed'])throw new Error(_0x4fb2db(0x1c2)+_0x36dbf1[_0x4fb2db(0x195)]+'\x20('+_0x36dbf1['path']+')');try{const _0x102e52=Buffer['byteLength'](_0x369391,encoding);if(_0x102e52>this['maxFileSize'])throw new Error('Content\x20too\x20large:\x20'+_0x102e52+_0x4fb2db(0x183)+this['maxFileSize']+')');if(createDirs){const _0x2873e1=a0_0x4d3671['dirname'](_0x1cb384);await a0_0x43cee1['mkdir'](_0x2873e1,{'recursive':!![]});}let _0x6781f6=null;try{await a0_0x43cee1['access'](_0x1cb384),_0x6781f6=_0x1cb384+'.backup-'+Date[_0x4fb2db(0x146)](),await a0_0x43cee1[_0x4fb2db(0x13e)](_0x1cb384,_0x6781f6);}catch{}await a0_0x43cee1[_0x4fb2db(0x1a4)](_0x1cb384,_0x369391,encoding);const _0x2eeef5=await a0_0x43cee1['stat'](_0x1cb384),_0x584219=this['directoryAccessManager'][_0x4fb2db(0x166)](_0x1cb384,_0x204688);return{'success':!![],'action':'write','outputPath':_0x584219,'fullPath':_0x1cb384,'size':_0x2eeef5[_0x4fb2db(0x18e)],'encoding':encoding,'backupPath':_0x6781f6?this[_0x4fb2db(0x182)][_0x4fb2db(0x166)](_0x6781f6,_0x204688):null,'backupFullPath':_0x6781f6||null,'message':_0x4fb2db(0x15a)+_0x2eeef5['size']+_0x4fb2db(0x162)+_0x1cb384};}catch(_0x164971){throw new Error('Failed\x20to\x20write\x20file\x20'+_0x1cb384+':\x20'+_0x164971['message']);}}async['appendToFile'](_0x44f0bb,_0x57253e,_0x19532d,_0x1a4295=a0_0x2418a1(0x1a5)){const _0x313c6b=a0_0x2418a1,_0xde8ffc=this['directoryAccessManager']['getWorkingDirectory'](_0x19532d),_0xc3da4=this['resolvePath'](_0x44f0bb,_0xde8ffc),_0x4a0071=this['directoryAccessManager'][_0x313c6b(0x190)](_0xc3da4,_0x19532d);if(!_0x4a0071[_0x313c6b(0x1a7)])throw new Error(_0x313c6b(0x1c2)+_0x4a0071['reason']+'\x20('+_0x4a0071[_0x313c6b(0x193)]+')');try{let _0x4a4c16=0x0;try{const _0x15bc69=await a0_0x43cee1['stat'](_0xc3da4);_0x4a4c16=_0x15bc69['size'];}catch{}const _0x3a43b8=Buffer['byteLength'](_0x57253e,_0x1a4295);if(_0x4a4c16+_0x3a43b8>this[_0x313c6b(0x18c)])throw new Error('File\x20would\x20become\x20too\x20large:\x20'+(_0x4a4c16+_0x3a43b8)+_0x313c6b(0x183)+this[_0x313c6b(0x18c)]+')');await a0_0x43cee1[_0x313c6b(0x196)](_0xc3da4,_0x57253e,_0x1a4295);const _0x580ddd=await a0_0x43cee1['stat'](_0xc3da4),_0x3b43b9=this[_0x313c6b(0x182)][_0x313c6b(0x166)](_0xc3da4,_0x19532d);return{'success':!![],'action':'append','filePath':_0x3b43b9,'fullPath':_0xc3da4,'appendedBytes':_0x3a43b8,'totalSize':_0x580ddd['size'],'encoding':_0x1a4295,'message':'Appended\x20'+_0x3a43b8+'\x20bytes\x20to\x20'+_0xc3da4};}catch(_0xf41007){throw new Error('Failed\x20to\x20append\x20to\x20file\x20'+_0xc3da4+':\x20'+_0xf41007['message']);}}async[a0_0x2418a1(0x156)](_0x1658ee,_0x14ffb0){const _0x3dcde9=a0_0x2418a1,_0x4bbaf6=this[_0x3dcde9(0x182)][_0x3dcde9(0x185)](_0x14ffb0),_0x436032=this[_0x3dcde9(0x133)](_0x1658ee,_0x4bbaf6),_0x1ded17=this[_0x3dcde9(0x182)]['validateWriteAccess'](_0x436032,_0x14ffb0);if(!_0x1ded17[_0x3dcde9(0x1a7)])throw new Error(_0x3dcde9(0x1b1)+_0x1ded17['reason']+'\x20('+_0x1ded17['path']+')');try{const _0x2c4c3d=await a0_0x43cee1['stat'](_0x436032),_0x5df1f2=_0x436032+_0x3dcde9(0x154)+Date[_0x3dcde9(0x146)]();await a0_0x43cee1[_0x3dcde9(0x13e)](_0x436032,_0x5df1f2),await a0_0x43cee1['unlink'](_0x436032);const _0x41ebb0=this[_0x3dcde9(0x182)]['createRelativePath'](_0x436032,_0x14ffb0),_0x81b7e1=this[_0x3dcde9(0x182)][_0x3dcde9(0x166)](_0x5df1f2,_0x14ffb0);return{'success':!![],'action':'delete','filePath':_0x41ebb0,'fullPath':_0x436032,'size':_0x2c4c3d['size'],'backupPath':_0x81b7e1,'backupFullPath':_0x5df1f2,'message':_0x3dcde9(0x18f)+_0x436032+'\x20(backup\x20created)'};}catch(_0x13f02b){throw new Error(_0x3dcde9(0x145)+_0x436032+':\x20'+_0x13f02b[_0x3dcde9(0x155)]);}}async['copyFile'](_0xaa879,_0x268ce1,_0x258257){const _0x44349a=a0_0x2418a1,_0x5e9208=this['directoryAccessManager'][_0x44349a(0x185)](_0x258257),_0x1e2c20=this['resolvePath'](_0xaa879,_0x5e9208),_0x30754f=this['resolvePath'](_0x268ce1,_0x5e9208),_0x52f032=this[_0x44349a(0x182)]['validateReadAccess'](_0x1e2c20,_0x258257);if(!_0x52f032['allowed'])throw new Error(_0x44349a(0x19c)+_0x52f032['reason']+'\x20('+_0x52f032[_0x44349a(0x193)]+')');const _0x25073c=this['directoryAccessManager'][_0x44349a(0x190)](_0x30754f,_0x258257);if(!_0x25073c[_0x44349a(0x1a7)])throw new Error('Destination\x20write\x20access\x20denied:\x20'+_0x25073c['reason']+'\x20('+_0x25073c[_0x44349a(0x193)]+')');try{const _0x260793=await a0_0x43cee1['stat'](_0x1e2c20);if(_0x260793['size']>this[_0x44349a(0x18c)])throw new Error(_0x44349a(0x172)+_0x260793['size']+_0x44349a(0x151));const _0x19f36b=a0_0x4d3671['dirname'](_0x30754f);await a0_0x43cee1['mkdir'](_0x19f36b,{'recursive':!![]}),await a0_0x43cee1['copyFile'](_0x1e2c20,_0x30754f);const _0x5c440d=this[_0x44349a(0x182)]['createRelativePath'](_0x1e2c20,_0x258257),_0x4ef4a4=this[_0x44349a(0x182)][_0x44349a(0x166)](_0x30754f,_0x258257);return{'success':!![],'action':_0x44349a(0x132),'sourcePath':_0x5c440d,'destPath':_0x4ef4a4,'sourceFullPath':_0x1e2c20,'destFullPath':_0x30754f,'size':_0x260793[_0x44349a(0x18e)],'message':'Copied\x20'+_0x1e2c20+'\x20to\x20'+_0x30754f};}catch(_0x3e4ca1){throw new Error('Failed\x20to\x20copy\x20'+_0x1e2c20+_0x44349a(0x189)+_0x30754f+':\x20'+_0x3e4ca1['message']);}}async[a0_0x2418a1(0x1bf)](_0x395b90,_0x18036d,_0x4f2db7){const _0xae9c28=a0_0x2418a1,_0x36bfbf=this['directoryAccessManager'][_0xae9c28(0x185)](_0x4f2db7),_0x127dba=this['resolvePath'](_0x395b90,_0x36bfbf),_0x44e9fa=this['resolvePath'](_0x18036d,_0x36bfbf),_0x331e83=this[_0xae9c28(0x182)]['validateReadAccess'](_0x127dba,_0x4f2db7);if(!_0x331e83[_0xae9c28(0x1a7)])throw new Error('Read\x20access\x20denied\x20for\x20source:\x20'+_0x331e83[_0xae9c28(0x195)]+'\x20('+_0x331e83['path']+')');const _0x38cfa4=this[_0xae9c28(0x182)]['validateWriteAccess'](_0x44e9fa,_0x4f2db7);if(!_0x38cfa4['allowed'])throw new Error('Write\x20access\x20denied\x20for\x20destination:\x20'+_0x38cfa4['reason']+'\x20('+_0x38cfa4['path']+')');try{const _0x56a878=await a0_0x43cee1[_0xae9c28(0x150)](_0x127dba),_0x4f54fa=a0_0x4d3671[_0xae9c28(0x18b)](_0x44e9fa);await a0_0x43cee1[_0xae9c28(0x188)](_0x4f54fa,{'recursive':!![]}),await a0_0x43cee1['rename'](_0x127dba,_0x44e9fa);const _0x3b24b5=this[_0xae9c28(0x182)]['createRelativePath'](_0x127dba,_0x4f2db7),_0xaf16ca=this['directoryAccessManager']['createRelativePath'](_0x44e9fa,_0x4f2db7);return{'success':!![],'action':_0xae9c28(0x194),'sourcePath':_0x3b24b5,'destPath':_0xaf16ca,'fullSourcePath':_0x127dba,'fullDestPath':_0x44e9fa,'size':_0x56a878['size'],'message':_0xae9c28(0x1b4)+_0x395b90+'\x20to\x20'+_0x18036d};}catch(_0x23657d){throw new Error(_0xae9c28(0x1ab)+_0x395b90+_0xae9c28(0x189)+_0x18036d+':\x20'+_0x23657d[_0xae9c28(0x155)]);}}async[a0_0x2418a1(0x15f)](_0x1ee53f,_0x2ab15d){const _0x3d4641=a0_0x2418a1,_0x53c762=this[_0x3d4641(0x182)][_0x3d4641(0x185)](_0x2ab15d),_0x26b786=this['resolvePath'](_0x1ee53f,_0x53c762),_0x4704fe=this['directoryAccessManager'][_0x3d4641(0x190)](_0x26b786,_0x2ab15d);if(!_0x4704fe['allowed'])throw new Error(_0x3d4641(0x1c2)+_0x4704fe['reason']+'\x20('+_0x4704fe['path']+')');try{await a0_0x43cee1['mkdir'](_0x26b786,{'recursive':!![]});const _0x344216=this[_0x3d4641(0x182)]['createRelativePath'](_0x26b786,_0x2ab15d);return{'success':!![],'action':_0x3d4641(0x177),'directory':_0x344216,'fullPath':_0x26b786,'message':_0x3d4641(0x1a1)+_0x1ee53f};}catch(_0x10f1fc){throw new Error(_0x3d4641(0x1b5)+_0x1ee53f+':\x20'+_0x10f1fc[_0x3d4641(0x155)]);}}async[a0_0x2418a1(0x1a2)](_0x86ce6b,_0x3b056d){const _0xe5e987=a0_0x2418a1,_0x472158=this[_0xe5e987(0x182)][_0xe5e987(0x185)](_0x3b056d),_0x1905b1=this['resolvePath'](_0x86ce6b,_0x472158),_0x3c7fe1=this[_0xe5e987(0x182)]['validateReadAccess'](_0x1905b1,_0x3b056d);if(!_0x3c7fe1[_0xe5e987(0x1a7)])throw new Error(_0xe5e987(0x135)+_0x3c7fe1['reason']+'\x20('+_0x3c7fe1['path']+')');try{const _0x1e4f8c=await a0_0x43cee1[_0xe5e987(0x161)](_0x1905b1,{'withFileTypes':!![]}),_0x16970f=[];for(const _0x2753b1 of _0x1e4f8c){const _0x18d855=a0_0x4d3671[_0xe5e987(0x159)](_0x1905b1,_0x2753b1[_0xe5e987(0x1c4)]),_0x228bbe=await a0_0x43cee1['stat'](_0x18d855);_0x16970f[_0xe5e987(0x1b0)]({'name':_0x2753b1['name'],'type':_0x2753b1[_0xe5e987(0x187)]()?_0xe5e987(0x1bd):_0xe5e987(0x19f),'size':_0x2753b1['isFile']()?_0x228bbe[_0xe5e987(0x18e)]:undefined,'lastModified':_0x228bbe['mtime']['toISOString'](),'permissions':_0x228bbe['mode'],'isSymlink':_0x2753b1['isSymbolicLink']()});}const _0x1f4f47=this['directoryAccessManager'][_0xe5e987(0x166)](_0x1905b1,_0x3b056d);return{'success':!![],'action':_0xe5e987(0x158),'directory':_0x1f4f47,'fullPath':_0x1905b1,'contents':_0x16970f,'totalItems':_0x16970f['length'],'directories':_0x16970f['filter'](_0x40202c=>_0x40202c[_0xe5e987(0x169)]===_0xe5e987(0x1bd))['length'],'files':_0x16970f['filter'](_0x1b2243=>_0x1b2243[_0xe5e987(0x169)]===_0xe5e987(0x19f))['length'],'message':_0xe5e987(0x14f)+_0x16970f[_0xe5e987(0x14b)]+'\x20items\x20in\x20'+_0x86ce6b};}catch(_0x1d74ce){throw new Error(_0xe5e987(0x138)+_0x86ce6b+':\x20'+_0x1d74ce['message']);}}async['checkExists'](_0x26ec2e,_0x4364df){const _0x5433f8=a0_0x2418a1,_0x584ebb=this['directoryAccessManager'][_0x5433f8(0x185)](_0x4364df),_0x172a13=this[_0x5433f8(0x133)](_0x26ec2e,_0x584ebb),_0x499a7e=this[_0x5433f8(0x182)][_0x5433f8(0x163)](_0x172a13,_0x4364df);if(!_0x499a7e['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x499a7e['reason']+'\x20('+_0x499a7e[_0x5433f8(0x193)]+')');try{const _0x37bf7a=await a0_0x43cee1['stat'](_0x172a13),_0x135969=this[_0x5433f8(0x182)]['createRelativePath'](_0x172a13,_0x4364df);return{'success':!![],'action':'exists','filePath':_0x135969,'fullPath':_0x172a13,'exists':!![],'type':_0x37bf7a['isDirectory']()?_0x5433f8(0x1bd):'file','message':_0x26ec2e+'\x20exists\x20as\x20'+(_0x37bf7a[_0x5433f8(0x187)]()?_0x5433f8(0x1bd):'file')};}catch(_0x499fbb){if(_0x499fbb[_0x5433f8(0x17d)]==='ENOENT'){const _0x561c94=this[_0x5433f8(0x182)]['createRelativePath'](_0x172a13,_0x4364df);return{'success':!![],'action':_0x5433f8(0x1ba),'filePath':_0x561c94,'fullPath':_0x172a13,'exists':![],'message':_0x26ec2e+'\x20does\x20not\x20exist'};}throw new Error('Failed\x20to\x20check\x20existence\x20of\x20'+_0x26ec2e+':\x20'+_0x499fbb['message']);}}async['getFileStats'](_0x311971,_0x1acfeb){const _0x171958=a0_0x2418a1,_0x30a094=this['directoryAccessManager'][_0x171958(0x185)](_0x1acfeb),_0x23f498=this['resolvePath'](_0x311971,_0x30a094),_0x1c9382=this[_0x171958(0x182)][_0x171958(0x163)](_0x23f498,_0x1acfeb);if(!_0x1c9382['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x1c9382[_0x171958(0x195)]+'\x20('+_0x1c9382[_0x171958(0x193)]+')');try{const _0x3b9f91=await a0_0x43cee1['stat'](_0x23f498),_0x40d0ab=this['directoryAccessManager']['createRelativePath'](_0x23f498,_0x1acfeb);return{'success':!![],'action':'stats','filePath':_0x40d0ab,'fullPath':_0x23f498,'stats':{'size':_0x3b9f91['size'],'type':_0x3b9f91['isDirectory']()?_0x171958(0x1bd):'file','lastModified':_0x3b9f91[_0x171958(0x19d)][_0x171958(0x1a8)](),'lastAccessed':_0x3b9f91[_0x171958(0x147)]['toISOString'](),'created':_0x3b9f91['birthtime']['toISOString'](),'permissions':_0x3b9f91['mode'],'isSymlink':_0x3b9f91[_0x171958(0x1af)]()},'message':_0x171958(0x153)+_0x311971};}catch(_0x2a5ff5){throw new Error(_0x171958(0x16c)+_0x311971+':\x20'+_0x2a5ff5[_0x171958(0x155)]);}}['resolvePath'](_0x24b476,_0x3aa831){const _0x40b290=a0_0x2418a1;if(a0_0x4d3671['isAbsolute'](_0x24b476))return a0_0x4d3671['normalize'](_0x24b476);return a0_0x4d3671[_0x40b290(0x13a)](_0x3aa831,_0x24b476);}['validatePathAccess'](_0x5e2898,_0x1617cf,_0xfe6610='read'){const _0x3d8bfb=a0_0x2418a1,_0x2dc5b7=_0xfe6610===_0x3d8bfb(0x1a0)?this[_0x3d8bfb(0x182)]['validateWriteAccess'](_0x5e2898,_0x1617cf):this['directoryAccessManager']['validateReadAccess'](_0x5e2898,_0x1617cf);if(!_0x2dc5b7['allowed'])throw new Error(_0xfe6610+_0x3d8bfb(0x143)+_0x2dc5b7['reason']+'\x20('+_0x2dc5b7['path']+')');return _0x2dc5b7;}['isAllowedFileExtension'](_0x574db4){const _0x2943a6=a0_0x2418a1,_0x395735=a0_0x4d3671[_0x2943a6(0x149)](_0x574db4)[_0x2943a6(0x17f)]();if(this[_0x2943a6(0x1ac)][_0x2943a6(0x144)](_0x395735))return![];if(this[_0x2943a6(0x174)]&&!this['allowedExtensions']['includes'](_0x395735))return![];return!![];}['addToHistory'](_0x4af54e,_0xc627e5,_0x36cf5e){const _0x300001=a0_0x2418a1,_0x164536={'timestamp':new Date()['toISOString'](),'agentId':_0x36cf5e,'action':_0x4af54e[_0x300001(0x169)],'filePath':_0x4af54e[_0x300001(0x1ae)]||_0x4af54e['outputPath']||_0x4af54e[_0x300001(0x1bd)],'success':_0xc627e5[_0x300001(0x152)],'size':_0xc627e5['size']};this[_0x300001(0x1b8)]['push'](_0x164536),this[_0x300001(0x1b8)]['length']>0xc8&&(this[_0x300001(0x1b8)]=this['operationHistory']['slice'](-0xc8));}['getSupportedActions'](){const _0x5939de=a0_0x2418a1;return['read',_0x5939de(0x1a0),'append',_0x5939de(0x16e),'copy','move','create-dir',_0x5939de(0x158),_0x5939de(0x1ba),'stats'];}['getParameterSchema'](){const _0x97277a=a0_0x2418a1;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x97277a(0x1c0),'properties':{'type':{'type':_0x97277a(0x157),'enum':this[_0x97277a(0x1b6)]()},'filePath':{'type':'string'},'outputPath':{'type':'string'},'sourcePath':{'type':'string'},'destPath':{'type':'string'},'directory':{'type':_0x97277a(0x157)},'content':{'type':_0x97277a(0x157)},'encoding':{'type':_0x97277a(0x157)},'createDirs':{'type':'boolean'}},'required':[_0x97277a(0x169)]}}},'required':['actions']};}['getOperationHistory'](_0x186ddd=null){if(_0x186ddd)return this['operationHistory']['filter'](_0x36d6e=>_0x36d6e['agentId']===_0x186ddd);return[...this['operationHistory']];}}export default FileSystemTool;function a0_0x20be(){const _0x2e530a=['y3jLyxrLrgLYzwn0B3j5','cKzPBguGu3LZDgvTifrVB2W6ifbLCMzVCM0GzMLSzsbHBMqGzgLYzwn0B3j5ig9WzxjHDgLVBNmGC2fMzwX5ihDPDgHPBIb0AguGChjVAMvJDcbZy29Wzs4kcLvtquDfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGwWOGicaGEYj0ExbLiJOGiNjLywqIlcaIzMLSzvbHDgGIoIaIC3jJl2LUzgv4lMPZiN0ScIaGicb7iNr5CguIoIaID3jPDguIlcaIB3v0Chv0ugf0Aci6icjZCMmVzMLSzs5QCYiSicjJB250zw50iJOGiI4UlIj9cIaGxqP9cMbGyaOku1vque9sveveiefdveLptLm6cI0GCMvHzdOGuMvHzcbMAwXLignVBNrLBNrZicHMAwXLugf0AcKklsb3CML0ztOGv3jPDguGy29UDgvUDcb0BYbMAwXLicHVDxrWDxrqyxrOlcbJB250zw50kqOTigfWCgvUzdOGqxbWzw5KignVBNrLBNqGDg8GzxHPC3rPBMCGzMLSzsaOzMLSzvbHDgGSignVBNrLBNqPcI0GzgvSzxrLoIbezwXLDguGysbMAwXLicHMAwXLugf0AcKklsbJB3b5oIbdB3b5igzPBguGkhnVDxjJzvbHDgGSigrLC3rqyxrOkqOTig1VDMu6ie1VDMuVCMvUyw1LigzPBguGkhnVDxjJzvbHDgGSigrLC3rqyxrOkqOTignYzwf0zs1KAxi6ienYzwf0zsbKAxjLy3rVCNKGkgrPCMvJDg9YEsKklsbSAxn0oIbmAxn0igrPCMvJDg9YEsbJB250zw50CYaOzgLYzwn0B3j5kqOTigv4Axn0CZOGq2HLy2SGAwyGzMLSzs9KAxjLy3rVCNKGzxHPC3rZicHMAwXLugf0AcKklsbZDgf0CZOGr2v0igzPBguVzgLYzwn0B3j5ig1LDgfKyxrHicHMAwXLugf0AcKkcLbbuKfnrvrfuLm6cI0GzMLSzvbHDgG6ifbHDgGGDg8GzMLSzsaOzM9YihjLywqSigrLBgv0zsWGyxbWzw5KlcbLEgLZDhmSihn0yxrZkqOTig91Dhb1DfbHDgG6ifbHDgGGD2HLCMuGDg8GD3jPDguVy3jLyxrLigzPBguklsbZB3vYy2vqyxrOoIbtB3vYy2uGCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKzxn0ugf0AdOGrgvZDgLUyxrPB24GCgf0AcbMB3iGy29WEs9TB3zLig9WzxjHDgLVBNmklsbKAxjLy3rVCNK6ierPCMvJDg9YEsbWyxrOigzVCIbJCMvHDguTzgLYigfUzcbSAxn0ig9WzxjHDgLVBNmklsbJB250zw50oIbdB250zw50ihrVihDYAxrLl2fWCgvUzaOTigvUy29KAw5NoIbgAwXLigvUy29KAw5NicHKzwzHDwX0oIb1Dgy4kqOTignYzwf0zurPCNm6ienYzwf0zsbWyxjLBNqGzgLYzwn0B3jPzxmGAwyGDgHLEsbKB24NDcbLEgLZDcaODhj1zs9MywXZzsKkcKvyqu1qtevtoGOkv3jPDguGysbMAwXLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBgvZExn0zw0IlaOGicjHy3rPB25ZiJOGw3SIDhLWzsi6icj3CML0zsiSicjVDxrWDxrqyxrOiJOGiMHLBgXVlMPZiIWGiMnVBNrLBNqIoIaIy29UC29Szs5SB2COj0HLBgXVjYK7iN1DcN0kygbGcGPszwfKigeGzMLSztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLC3LZDgvTiIWkicaIywn0Aw9UCYi6ifT7iNr5CguIoIaICMvHzciSicjMAwXLugf0Aci6icjWywnRywDLlMPZB24IFv0kFqPGygakcK11BhrPCgXLig9WzxjHDgLVBNm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzxn5C3rLBsiScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaICMvHzciSicjMAwXLugf0Aci6icjZCMmVAw5KzxGUANmIFsWkicaGihSIDhLWzsi6icjJB3b5iIWGiNnVDxjJzvbHDgGIoIaIDgvTCgXHDguUANmIlcaIzgvZDfbHDgGIoIaIC3jJl2nVBxbVBMvUDc5QCYj9laOGicaGEYj0ExbLiJOGiMnYzwf0zs1KAxiIlcaIzgLYzwn0B3j5iJOGiNnYyY9JB21WB25LBNrZl3vPiN0kicbDcN0kygbGcGPtrunvuKLuwtOklsbpCgvYyxrPB25ZihjLC3rYAwn0zwqGDg8GChjVAMvJDcbKAxjLy3rVCNKklsbgAwXLihnPEMuGBgLTAxrZigvUzM9Yy2vKicHTyxGG','CMvHzgrPCG','igj5DgvZihrVia','DMfSAwrHDgvszwfKqwnJzxnZ','C291CMnLugf0Aa','y3DK','y3jLyxrLuMvSyxrPDMvqyxrO','y3jLyxrLrgLYCW','zMLSzs1WyxrO','DhLWzq','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25ZigfYCMf5igLZigvTChr5','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfWCgvUza','rMfPBgvKihrVigDLDcbZDgf0CYbMB3iG','Bg9Nz2vY','zgvSzxrL','zgvZDfbHDgG','ode2mJC2nNDtv1PcAq','y2HLy2TfEgLZDhm','u291CMnLigzPBguGDg9VigXHCMDLoIa','AxnbBgXVD2vKrMLSzuv4DgvUC2LVBG','ywXSB3DLzev4DgvUC2LVBNm','rMLSzsb0B28GBgfYz2u6ia','DgLTzw91Da','y3jLyxrLlwrPCG','rMLSzvn5C3rLBsberujvrZOGChjVAMvJDerPCIbPCZO','rMLSzvn5C3rLBsberujvrZOGrNvSBcbKAxjLy3rVCNLby2nLC3mGB2jQzwn0oG','BwfW','y3jLyxrLlwrPCNm','yxbWzw5K','y29Kzq','ywn0Aw9UCW','Dg9mB3DLCKnHC2u','C3vIC3rYAw5N','zgvIDwC','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','igj5DgvZicHTyxGG','ywDLBNrjza','z2v0v29YA2LUz0rPCMvJDg9YEq','AxnbCNjHEq','AxneAxjLy3rVCNK','BwTKAxi','ihrVia','C3rHDhm','zgLYBMfTzq','Bwf4rMLSzvnPEMu','oIbKzxn0lxbHDgGGAxmGCMvXDwLYzwqGzM9Yia','C2L6zq','rgvSzxrLzca','DMfSAwrHDgvxCML0zufJy2vZCW','ywrKvg9iAxn0B3j5','rMfPBgvKihrVihbHCNnLigzPBgvZExn0zw0GCgfYyw1LDgvYCZOG','Cgf0Aa','Bw92zq','CMvHC29U','yxbWzw5KrMLSzq','rMLSzvn5C3rLBsb0B29SihbHCNnPBMCGCgfYyw1LDgvYCW','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEtO','oIbMAwXLihr5CguGBM90igfSBg93zwq6ia','lNnJCG','mZC4ndaYng5UzuLlEa','u291CMnLihjLywqGywnJzxnZigrLBMLLzdOG','BxrPBwu','oIb0ExbLigLZihjLCxvPCMvK','zMLSzq','D3jPDgu','q3jLyxrLzcbKAxjLy3rVCNKG','BgLZDerPCMvJDg9YEq','mJyZmJCXownpweHKCa','D3jPDgvgAwXL','DxrMoa','yxr0CMLIDxrLCW','ywXSB3DLza','Dg9ju09tDhjPBMC','sw52ywXPzcbWyxjHBwv0zxjZoIbHy3rPB25Zig11C3qGyMuGyw4GyxjYyxKUifjLy2vPDMvKihr5Cgu6ia','z2v0rMLSzvn0yxrZ','rMfPBgvKihrVig1VDMuG','yMXVy2TLzev4DgvUC2LVBNm','DhjPBq','zMLSzvbHDgG','AxntEw1IB2XPy0XPBMS','ChvZAa','rgvSzxrLigfJy2vZCYbKzw5Pzwq6ia','mti4mtC1nxzmtxb3qG','mtbzr3jgDxG','tw92zwqG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zw50CMLLCW','B3bLCMf0Aw9UsgLZDg9YEq','CgfYC2vbDhrYAwj1DgvZ','zxHPC3rZ','mMjRAhjlEa','igj5DgvZigzYB20G','zgLYzwn0B3j5','mti4mZuZngzOwgXwqG','Bw92zuzPBgu','B2jQzwn0','oIbJB250zw50igLZihjLCxvPCMvKigzVCIb3CML0zq','v3jPDguGywnJzxnZigrLBMLLzdOG','tuiPcI0GrgfUz2vYB3vZigzPBguGDhLWzxmGyMXVy2TLzaOTifbHDgGGDhjHDMvYC2fSihbYB3rLy3rPB24kicaGia','BMfTzq','mZeYndG4BNv3C2v4','y29WEq','CMvZB2X2zvbHDgG','CMvXDwLYzxnqCM9Qzwn0','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29UDgvUDa','rMLSzvn5C3rLBsberujvrZOGvxnPBMCGzMfSBgjHy2SGD29YA2LUzYbKAxjLy3rVCNK6','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','qwn0Aw9Uia','CMvZB2X2zq','C3rYAw5NAwz5','C291CMnLlxbHDgG','zw5JB2rPBMC','y29WEuzPBgu','nKLKD0j6sq','Bg9N','ugfYC2vKiezPBgvtExn0zw0GDg9VBcbWyxjHBwv0zxjZ','B3v0Chv0lxbHDgG','igfJy2vZCYbKzw5Pzwq6ia','Aw5JBhvKzxm','rMfPBgvKihrVigrLBgv0zsbMAwXLia','BM93','yxrPBwu','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','zxH0BMfTzq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BgvUz3rO','ywXSB3DLzerPCMvJDg9YAwvZ','oIbZB3vYy2uTCgf0AcbPCYbYzxf1AxjLzcbMB3iG','mJi2mJC5nNHUuePuCG','tgLZDgvKia','C3rHDa','igj5DgvZ','C3vJy2vZCW','uMv0CMLLDMvKihn0yxrZigzVCIa','lMrLBgv0zwqTyMfJA3vWlq','BwvZC2fNzq','zgvSzxrLrMLSzq','C3rYAw5N','BgLZDa','AM9PBG','v3jVDguG','CMvHzezPBgu','zxH0CMfJDfrHz3nxAxrOqxr0CMLIDxrLCW','B3v0Chv0ugf0Aa','D29YA2LUz0rPCMvJDg9YEq'];a0_0x20be=function(){return _0x2e530a;};return a0_0x20be();}
|