@loxia-labs/loxia-autopilot-one 1.0.9 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/{index-BzXbDs8z.js → index-C5X7qBNF.js} +63 -63
- package/web-ui/build/static/index-g2UFuTwG.css +1 -0
- package/web-ui/build/static/index-BmKxmRe3.css +0 -1
package/src/tools/seekTool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x230c82=a0_0x566d;function a0_0x566d(_0xef6fde,_0x34e2f9){_0xef6fde=_0xef6fde-0xa1;const _0x4c142f=a0_0x4c14();let _0x566db3=_0x4c142f[_0xef6fde];if(a0_0x566d['NbcSUb']===undefined){var _0x47cc09=function(_0x5002a1){const _0x664c2c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22bc90='',_0x4ac40b='';for(let _0x3cd011=0x0,_0x5f38ea,_0x16e413,_0x11c652=0x0;_0x16e413=_0x5002a1['charAt'](_0x11c652++);~_0x16e413&&(_0x5f38ea=_0x3cd011%0x4?_0x5f38ea*0x40+_0x16e413:_0x16e413,_0x3cd011++%0x4)?_0x22bc90+=String['fromCharCode'](0xff&_0x5f38ea>>(-0x2*_0x3cd011&0x6)):0x0){_0x16e413=_0x664c2c['indexOf'](_0x16e413);}for(let _0x4b2cf8=0x0,_0xae65b7=_0x22bc90['length'];_0x4b2cf8<_0xae65b7;_0x4b2cf8++){_0x4ac40b+='%'+('00'+_0x22bc90['charCodeAt'](_0x4b2cf8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ac40b);};a0_0x566d['lsrDKF']=_0x47cc09,a0_0x566d['BvdDan']={},a0_0x566d['NbcSUb']=!![];}const _0x4e1fa9=_0x4c142f[0x0],_0x3a965d=_0xef6fde+_0x4e1fa9,_0x118ed0=a0_0x566d['BvdDan'][_0x3a965d];return!_0x118ed0?(_0x566db3=a0_0x566d['lsrDKF'](_0x566db3),a0_0x566d['BvdDan'][_0x3a965d]=_0x566db3):_0x566db3=_0x118ed0,_0x566db3;}(function(_0x78ffe4,_0x1f39ba){const _0x4202cb=a0_0x566d,_0x298e50=_0x78ffe4();while(!![]){try{const _0x3a2fda=-parseInt(_0x4202cb(0x11c))/0x1*(-parseInt(_0x4202cb(0xa5))/0x2)+-parseInt(_0x4202cb(0xde))/0x3+-parseInt(_0x4202cb(0x107))/0x4+-parseInt(_0x4202cb(0x121))/0x5*(-parseInt(_0x4202cb(0xf9))/0x6)+-parseInt(_0x4202cb(0xfb))/0x7*(parseInt(_0x4202cb(0xcf))/0x8)+parseInt(_0x4202cb(0xb2))/0x9+-parseInt(_0x4202cb(0x106))/0xa*(-parseInt(_0x4202cb(0xbe))/0xb);if(_0x3a2fda===_0x1f39ba)break;else _0x298e50['push'](_0x298e50['shift']());}catch(_0x2cb243){_0x298e50['push'](_0x298e50['shift']());}}}(a0_0x4c14,0xba601));function a0_0x4c14(){const _0x17c77a=['lNbKzG','mJe1v29cD3nR','zM9YBwf0uMvZDwX0CW','zxnJyxbLuMvNrxHW','C2vHCMnOrMLSzxm','y29Kzq','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','lJD6','lMPHDMe','zw50CMLLCW','zxHWyw5Kr2XVyLbHDhrLCM4','ks4Gtwf4Aw11BsbPCYa','lIbvC2uGBw9YzsbZCgvJAwzPyYbMAwXLihbHDhrLCM5ZlG','BgvUz3rO','lMrI','lMH0BwW','ChvZAa','mJyWodzyuevvr3a','zxjYB3jgAwXLCW','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','cLnLzwSGvg9VBdOGu2vHCMnOigzVCIbZCgvJAwzPyYbJB250zw50ihDPDgHPBIbWCM9Qzwn0igzPBgvZlIbiAwDOBhKGCMvJB21Tzw5KzwqGzM9YihzLCMLMEwLUzYbPBxbVCNrZlcbMDw5JDgLVBIb1C2fNzsWGyw5KihzHCMLHyMXLihjLzMvYzw5JzxmUcGPytuWGvvnbr0u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGigzPBguVCgf0Ac9VBMuUANmkicaGigzPBguVCgf0Ac90D28UANmkicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+C2vHCMnOihbOCMfZzsbVBMu8l3rLCM0+cIaGica8DgvYBt5ZzwfYy2GGCgHYyxnLihr3BZWVDgvYBt4kicaGidX0zxjTpNnLyxjJAcbWAhjHC2uGDgHYzwu8l3rLCM0+cIaGpc9ZzwfYy2GTDgvYBxm+cJWVC2vLAZ4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIC2vLAYiScIaGiMzPBgvqyxrOCYi6ifSkicaGicjZCMmVy29TCg9Uzw50CY9izwfKzxiUANmIlaOGicaGiNnYyY91DgLSCY8QlMPZiIWkicaGicjZCMmVkIOVkI5QC3GIcIaGxsWkicaIC2vHCMnOvgvYBxmIoIbBcIaGicaIAw1WB3j0ifjLywn0iIWkicaGicj1C2vtDgf0zsiScIaGicaIzNvUy3rPB24GAgfUzgXLu3vIBwL0iGOGif0kFqPGygakcLnvufbpuLrfrcbhte9cifbbvfrfuK5toGOTicOUANmGicaGicaGicaGic0GqwXSic5QCYbMAwXLCYbPBIbHigrPCMvJDg9YEqOTicOQlYOUANmGicaGicaGic0GqwXSic5QCYbMAwXLCYbYzwn1CNnPDMvSEqOTihnYyY8QkI8QlMPZEcaGic0GqwXSic5QC3GGzMLSzxmGDw5KzxiGC3jJlYbYzwn1CNnPDMvSEqOTignVBxbVBMvUDhmVkI4Qic0GqwXSigzPBgvZigLUignVBxbVBMvUDhmVcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiezPBMqGzNvUy3rPB24GDxnHz2u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY9JB21WB25LBNrZlYOUANmkicaGihnYyY91DgLSCY9OzwXWzxjZlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+zNvUy3rPB24GAgfUzgXLu3vIBwL0pc90zxjTpGOGicaGphrLCM0+DxnLu3rHDguOpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidiGlsbwzxjPzNKGAw1WB3j0CZOkphnLzwS+cIaGpgLUlwzPBgvZpGOGicaGC3jJl2nVBxbVBMvUDhmVsgvHzgvYlMPZcIaGicbZCMmVy29TCg9Uzw50CY9gB290zxiUANmkica8l2LUlwzPBgvZpGOGidXZzwfYy2GTDgvYBxm+cIaGica8DgvYBt5PBxbVCNqGuMvHy3q8l3rLCM0+cIaGica8DgvYBt5PBxbVCNqGEYb1C2vtDgf0zsb9pc90zxjTpGOGicaGphrLCM0+zNjVBsaNCMvHy3qNpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidmGlsbgAw5KihzHCMLHyMXLihjLzMvYzw5Jzxm6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+yxbPq2XPzw50pc90zxjTpGOGicaGphrLCM0+y29UzMLNlMfWAvvYBdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrxHHBxbSzsa0ic0Gu2vHCMnOihnWzwnPzMLJigzPBgvZig9UBhK6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihbHy2THz2uUANnVBGOGicaGDhnJB25MAwCUANnVBGOGicaGlMDPDgLNBM9YzqOGidWVAw4TzMLSzxm+cIaGphnLyxjJAc10zxjTCZ4kicaGidX0zxjTpNjLywn0pc90zxjTpGOGicaGphrLCM0+DhLWzxnJCMLWDdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrKvbvfvsrvm6cI0Gu2vHCMnOzxmGzM9Yigv4ywn0ihn0CMLUzYbTyxrJAgvZicHJyxnLlxnLBNnPDgL2zsKklsbszxr1CM5ZigzPBguGCgf0AcWGBgLUzsbUDw1IzxiSigfUzcbSAw5LignVBNrLBNqGzM9YigvHy2GGBwf0y2GklsbtDxbWB3j0CYbNBg9IihbHDhrLCM5ZigzVCIbMBgv4AwjSzsbMAwXLihnLBgvJDgLVBGOTifnRAxbZigjPBMfYEsbMAwXLCYbHDxrVBwf0AwnHBgX5cI0GuMvWB3j0CYbMAwXLCYbUB3qGzM91BMqGyw5KigzPBgvZihDPDgGGzxjYB3jZcI0GtgLTAxrLzcb0BYa','lNnV','lMrSBa','lNjI','icHUBYbTyxrJAgLUzYbMAwXLCYK','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','CMvZB2X2zq','lNnHC3m','tufyx0rjuKvdve9swv9ervbusa','lMnVBMy','mJmXode4nevet1vMvW','lMjHC2G','Bwf0y2HLC0j5vgvYBq','igzPBguOCYKUcG','lMPZ','lMvVDa','lMXLC3m','BwfW','lNr0zG','oIbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','CMvHzgrPCG','tufyx0zjtevFu0LArq','nJm2ndzHs2HzDei','C2vHCMnOsw5gAwXL','zxHLyW','lMrHDa','lMDV','Bg9Nz2vY','CMvHze9UBhLeAxjLy3rVCMLLCW','lMnZCW','C2L6zq','tuiSig1HEca','lNLHBwW','AM9PBG','iIaO','ihrVDgfSig1HDgnOzxmGAw4G','D29YA2LUz0rPCMvJDg9YEq','AxnbCNjHEq','zxH0BMfTzq','ohHks05bCW','rMLSzsbWyxrOia','C3bSAxq','zgLYBMfTzq','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','zMLSzvbHDgHZ','lNn2zW','zM91BMq','lMPZEa','BwLU','lMjTCa','lNjHCG','tufyx1rpvefmx01bvenirvm','rKLmrvmGv0LuscbfuLjpuLm6cG','D2fYBG','mZK5mdC2ognuDurhva','yNvPBgq','zMLSDgvY','DgvYBq','AxneAxjLy3rVCNK','lMDPDa','lNPZAa','CMvXDwLYzxnqCM9Qzwn0','AgfZ','tufyx0zjtevFuefusfm','lNnO','ic0G','Aw5MBW','Dg9mB3DLCKnHC2u','BgLUzunVBNrLBNq','C2HVDwXKu2TPCezPBgu','rMfPBgvKihrVihjLywqGzMLSztOG','ywrK','C2vLA0nVBMzPzW','lMPWzwC','lM1VDG','BwvZC2fNzq','rMfPBgvKihrVihbHCNnLihnLzwSGCgfYyw1LDgvYCW','icaTia','rKLmrvmGtK9uiezpvu5eoGO','oIbWyxrOihrYyxzLCNnHBcaOlI4Pig5VDcbHBgXVD2vKigzVCIbZzwn1CML0Eq','C2HVDwXKu2TPCerPCMvJDg9YEq','mtu3mdyYqvjIs01H','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','mJa2oda3m0LMAhDQqq','AxnbyNnVBhv0zq','lM1Wna','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','CMvHzezPBgu','C2vHCMnOvgvYBxm','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','lMXVzW','BM90rM91BMq','C3rHCNrZv2L0Aa','tufyx01bvenirvnFuevsx0zjteu','mZuWyMfNyxLS','mJa1ntGWohzxCKPrrq','lNb5','lMPZB24','C3rYAw5N','AxngAwXL','tufyx0zjtevtx1bfuL9trufsq0G','u2vLAYb0B29Sigv4zwn1DgLVBIbMywLSzwq','Aw5JBhvKzxm','DgvZDa','zxjYB3i','C3rHDa','tufyx0XjtKvFq09ovevovf9mru5hveG','CMvSyxrPDMu','CMvWBgfJzq','u2vHCMnOihrLCM0G','DgLTzw91Da','Bwf0y2HLC1bHDhrLCM4','tM8GBwf0y2HLCYbMB3vUzcbMB3iGDgHLihnWzwnPzMLLzcbZzwfYy2GGDgvYBxmGAw4G','DhjPBq','zMLUzezPBgvZuMvJDxjZAxzLBhK','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','mtaXB3HKr1HK','yMfZzw5HBwu','vxnPBMCGywDLBNqGy29UzMLNDxjLzcbKAxjLy3rVCNKGywnJzxnZ','BMfTzq'];a0_0x4c14=function(){return _0x17c77a;};return a0_0x4c14();}import{BaseTool}from'./baseTool.js';import a0_0x22bc90 from'../utilities/tagParser.js';import{promises as a0_0x4ac40b}from'fs';import a0_0x3cd011 from'path';const SEEK_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_FILES_PER_SEARCH':0x3e8,'MAX_MATCHES_PER_FILE':0x64,'MAX_TOTAL_MATCHES':0x1f4,'MAX_SEARCH_TERMS':0x32,'MAX_FILE_PATHS':0x64,'MAX_DIRECTORY_DEPTH':0x14,'MAX_LINE_CONTENT_LENGTH':0xc8,'CONTEXT_LINES_BEFORE':0x0,'CONTEXT_LINES_AFTER':0x0},FILE_ENCODING='utf-8',BINARY_EXTENSIONS=new Set(['.png','.jpg',a0_0x230c82(0xf1),'.gif',a0_0x230c82(0xd9),'.ico',a0_0x230c82(0xd5),a0_0x230c82(0x120),'.zip','.tar','.gz',a0_0x230c82(0xda),a0_0x230c82(0x127),'.exe',a0_0x230c82(0xaa),a0_0x230c82(0xa9),'.dylib','.mp3',a0_0x230c82(0xfd),'.avi',a0_0x230c82(0xf2),'.wmv','.woff','.woff2',a0_0x230c82(0xba),a0_0x230c82(0xb7),'.bin',a0_0x230c82(0xc1),a0_0x230c82(0xa2),'.sqlite']);class SeekTool extends BaseTool{constructor(_0x5f38ea={},_0x16e413=null){const _0x1200b7=a0_0x230c82;super(_0x5f38ea,_0x16e413),this[_0x1200b7(0xe5)]=!![],this['isAsync']=!![],this[_0x1200b7(0x116)]=_0x5f38ea['timeout']||0x1d4c0,this[_0x1200b7(0xf0)]={...SEEK_CONFIG,..._0x5f38ea['seekConfig']};}['getDescription'](){const _0xc9d373=a0_0x230c82;return _0xc9d373(0xa8)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG[_0xc9d373(0xdb)]+'\x20matches\x20total\x0a\x0aRESULT\x20FORMAT:\x0aThe\x20tool\x20returns:\x0a-\x20List\x20of\x20files\x20that\x20were\x20not\x20found\x0a-\x20List\x20of\x20files\x20that\x20had\x20errors\x20during\x20search\x0a-\x20For\x20each\x20search\x20term:\x0a\x20\x20-\x20File\x20path\x20where\x20found\x0a\x20\x20-\x20Line\x20number\x0a\x20\x20-\x20Line\x20content\x20(trimmed)\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0aWhen\x20an\x20agent\x20has\x20multiple\x20directories\x20configured,\x20the\x20SeekTool\x20can\x20search\x20across\x20all\x20of\x20them:\x0a-\x20Relative\x20paths\x20are\x20resolved\x20from\x20the\x20working\x20directory\x0a-\x20Absolute\x20paths\x20can\x20reference\x20any\x20accessible\x20directory\x0a-\x20Automatic\x20validation\x20ensures\x20paths\x20are\x20within\x20allowed\x20directories\x0a\x0aExample\x20with\x20multiple\x20directories:\x0aIf\x20agent\x20has\x20access\x20to:\x0a\x20\x20-\x20/home/user/project1\x20(working\x20directory)\x0a\x20\x20-\x20/home/user/project2\x20(read-only)\x0a\x20\x20-\x20/home/user/shared\x20(read-only)\x0a\x0aYou\x20can\x20search:\x0a\x20\x20src/**/*.js\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20/home/user/project1/src/**/*.js\x0a\x20\x20/home/user/project2/config.json\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20project2\x20(absolute\x20path)\x0a\x20\x20/home/user/shared/docs/*.md\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20shared\x20directory\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_FILES_PER_SEARCH']+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_SEARCH_TERMS']+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0xc9d373(0xbd)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Case-sensitive\x20search\x20only\x0a-\x20Exact\x20string\x20matching\x20(not\x20regex)\x0a-\x20Paths\x20outside\x20accessible\x20directories\x20will\x20be\x20reported\x20as\x20\x22not\x20found\x22\x0a\x20\x20\x20\x20';}['parseParameters'](_0x11c652){const _0x27ca6a=a0_0x230c82;try{if(_0x11c652['trim']()['startsWith']('{')){const _0x248ff5=JSON['parse'](_0x11c652);return{'filePaths':_0x248ff5['filePaths']||[],'searchTerms':_0x248ff5[_0x27ca6a(0x100)]||[]};}const _0x4b2cf8={'filePaths':[],'searchTerms':[]},_0xae65b7=/<in-files>([\s\S]*?)<\/in-files>/i,_0x34dfb0=_0xae65b7[_0x27ca6a(0xc0)](_0x11c652);if(_0x34dfb0){const _0xea93b2=_0x34dfb0[0x1];_0x4b2cf8[_0x27ca6a(0xd4)]=_0xea93b2['split']('\x0a')['map'](_0x519819=>_0x519819[_0x27ca6a(0x119)]())[_0x27ca6a(0xe0)](_0x2ee6de=>_0x2ee6de[_0x27ca6a(0xa1)]>0x0);}const _0x1d865a=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x26c2c2=_0x1d865a['exec'](_0x11c652);if(_0x26c2c2){const _0x41d3a6=_0x26c2c2[0x1],_0x261ba0=/<term>(.*?)<\/term>/gi;let _0x35b630;while((_0x35b630=_0x261ba0['exec'](_0x41d3a6))!==null){const _0x4ac096=_0x35b630[0x1]['trim']();_0x4ac096['length']>0x0&&_0x4b2cf8['searchTerms'][_0x27ca6a(0xa4)](_0x4ac096);}}return _0x4b2cf8;}catch(_0x49cfef){return this[_0x27ca6a(0xc3)]?.[_0x27ca6a(0x110)](_0x27ca6a(0xf4),{'error':_0x49cfef[_0x27ca6a(0xf3)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x49cfef['message']};}}['getRequiredParameters'](){const _0x45ba6e=a0_0x230c82;return[_0x45ba6e(0xd4),'searchTerms'];}['customValidateParameters'](_0x581b30){const _0x15bd93=a0_0x230c82,_0x4c761b=[];if(!_0x581b30['filePaths']||!Array['isArray'](_0x581b30[_0x15bd93(0xd4)])||_0x581b30['filePaths']['length']===0x0)_0x4c761b['push']('At\x20least\x20one\x20file\x20path\x20is\x20required');else _0x581b30[_0x15bd93(0xd4)][_0x15bd93(0xa1)]>this[_0x15bd93(0xf0)][_0x15bd93(0xe7)]&&_0x4c761b['push']('Too\x20many\x20file\x20paths\x20(max\x20'+this['seekConfig']['MAX_FILE_PATHS']+')');if(!_0x581b30[_0x15bd93(0x100)]||!Array[_0x15bd93(0xcd)](_0x581b30[_0x15bd93(0x100)])||_0x581b30[_0x15bd93(0x100)]['length']===0x0)_0x4c761b['push']('At\x20least\x20one\x20search\x20term\x20is\x20required');else _0x581b30['searchTerms']['length']>this['seekConfig']['MAX_SEARCH_TERMS']&&_0x4c761b[_0x15bd93(0xa4)]('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig']['MAX_SEARCH_TERMS']+')');if(_0x581b30['searchTerms']&&Array[_0x15bd93(0xcd)](_0x581b30[_0x15bd93(0x100)]))for(const [_0x520057,_0xb8d443]of _0x581b30[_0x15bd93(0x100)][_0x15bd93(0x129)]()){(typeof _0xb8d443!==_0x15bd93(0x10a)||_0xb8d443['trim']()['length']===0x0)&&_0x4c761b['push'](_0x15bd93(0x115)+(_0x520057+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string');}if(_0x581b30[_0x15bd93(0xd4)]&&Array[_0x15bd93(0xcd)](_0x581b30['filePaths']))for(const [_0x578e7f,_0x8c0299]of _0x581b30[_0x15bd93(0xd4)]['entries']()){(typeof _0x8c0299!=='string'||_0x8c0299[_0x15bd93(0x119)]()['length']===0x0)&&_0x4c761b['push'](_0x15bd93(0xd0)+(_0x578e7f+0x1)+_0x15bd93(0xbb)),_0x8c0299['includes']('..')&&_0x4c761b[_0x15bd93(0xa4)](_0x15bd93(0xd0)+(_0x578e7f+0x1)+_0x15bd93(0xf7));}return{'valid':_0x4c761b[_0x15bd93(0xa1)]===0x0,'errors':_0x4c761b};}async['execute'](_0x37bcfc,_0x5b8a46){const _0x3029a1=a0_0x230c82,{filePaths:_0x4403b0,searchTerms:_0x4caadd}=_0x37bcfc,{projectDir:_0x37dbae,agentId:_0x10fb2a,directoryAccess:_0x344e3b}=_0x5b8a46;let _0x552c32=_0x37dbae||process['cwd'](),_0x22c2b8=[_0x552c32];_0x344e3b&&_0x344e3b[_0x3029a1(0xcc)]&&(_0x552c32=_0x344e3b[_0x3029a1(0xcc)],_0x22c2b8=this[_0x3029a1(0x126)](_0x344e3b),this['logger']?.[_0x3029a1(0xea)](_0x3029a1(0x11e),{'workingDirectory':_0x344e3b[_0x3029a1(0xcc)],'totalAccessibleDirs':_0x22c2b8[_0x3029a1(0xa1)],'readOnlyDirs':_0x344e3b[_0x3029a1(0xc4)]?.['length']||0x0,'writeEnabledDirs':_0x344e3b[_0x3029a1(0x101)]?.[_0x3029a1(0xa1)]||0x0,'agentId':_0x10fb2a}));if(!_0x552c32)throw new Error('Project\x20directory\x20is\x20required\x20for\x20seek\x20tool');this[_0x3029a1(0xc3)]?.['info']('Executing\x20seek\x20tool',{'filePathCount':_0x4403b0['length'],'searchTermCount':_0x4caadd['length'],'workingDirectory':_0x552c32,'accessibleDirectories':_0x22c2b8[_0x3029a1(0xa1)],'agentId':_0x10fb2a});try{const _0x546788=await this['resolveFilePaths'](_0x4403b0,_0x552c32,_0x344e3b?_0x22c2b8:null),_0x10f932=_0x546788['found'],_0x58bf6e=_0x546788[_0x3029a1(0x103)];if(_0x10f932['length']>this['seekConfig']['MAX_FILES_PER_SEARCH'])return{'success':![],'error':_0x3029a1(0xa7)+_0x10f932['length']+_0x3029a1(0x12b)+this['seekConfig'][_0x3029a1(0x10c)]+_0x3029a1(0x12c),'filesResolved':_0x10f932['length'],'filesNotFound':_0x58bf6e[_0x3029a1(0xa1)]};const _0x1adb77=await this['searchFiles'](_0x10f932,_0x4caadd,_0x552c32),_0x298970=this[_0x3029a1(0x122)](_0x1adb77['matches'],_0x1adb77[_0x3029a1(0xa6)],_0x58bf6e,_0x10f932[_0x3029a1(0xa1)]);return{'success':!![],'filesSearched':_0x10f932['length'],'filesNotFound':_0x58bf6e['length'],'filesWithErrors':_0x1adb77['errorFiles']['length'],'totalMatches':_0x1adb77['matches']['length'],'matchesByTerm':_0x1adb77[_0x3029a1(0xb4)],'formattedResults':_0x298970,'toolUsed':'seek'};}catch(_0x158b08){this['logger']?.[_0x3029a1(0x110)](_0x3029a1(0x10d),{'error':_0x158b08['message']});throw _0x158b08;}}[a0_0x230c82(0x126)](_0x1d4f09){const _0x51e1da=a0_0x230c82,_0x17e90c=new Set();_0x1d4f09['workingDirectory']&&_0x17e90c[_0x51e1da(0xef)](_0x1d4f09[_0x51e1da(0xcc)]);if(_0x1d4f09[_0x51e1da(0xc4)]&&Array[_0x51e1da(0xcd)](_0x1d4f09[_0x51e1da(0xc4)]))for(const _0x3af9d5 of _0x1d4f09[_0x51e1da(0xc4)]){_0x17e90c[_0x51e1da(0xef)](_0x3af9d5);}if(_0x1d4f09['writeEnabledDirectories']&&Array['isArray'](_0x1d4f09[_0x51e1da(0x101)]))for(const _0x16cade of _0x1d4f09['writeEnabledDirectories']){_0x17e90c['add'](_0x16cade);}return Array['from'](_0x17e90c);}['isPathAccessible'](_0xede62a,_0x26690e){const _0x4c1c9e=a0_0x230c82;for(const _0x4481f9 of _0x26690e){const _0x2a3102=a0_0x3cd011[_0x4c1c9e(0x113)](_0x4481f9,_0xede62a),_0x1a6c38=!_0x2a3102[_0x4c1c9e(0x104)]('..')&&!a0_0x3cd011[_0x4c1c9e(0xfc)](_0x2a3102);if(_0x1a6c38)return!![];}return![];}async['resolveFilePaths'](_0x372dda,_0x199f1b,_0x6a89e0=null){const _0x2a3e4a=a0_0x230c82,_0x2202f2={'found':[],'notFound':[]};for(const _0x30b2a2 of _0x372dda){const _0x1be3f6=_0x30b2a2['trim']();if(_0x1be3f6['includes']('*')){const _0x27bf0c=await this[_0x2a3e4a(0x12a)](_0x1be3f6,_0x199f1b);_0x27bf0c[_0x2a3e4a(0xd6)]['length']>0x0?_0x2202f2[_0x2a3e4a(0xd6)]['push'](..._0x27bf0c['found']):_0x2202f2['notFound'][_0x2a3e4a(0xa4)](_0x1be3f6+_0x2a3e4a(0xac));}else{const _0x1c1199=a0_0x3cd011['isAbsolute'](_0x1be3f6)?_0x1be3f6:a0_0x3cd011[_0x2a3e4a(0xae)](_0x199f1b,_0x1be3f6);if(_0x6a89e0&&_0x6a89e0['length']>0x0){if(!this['isPathAccessible'](_0x1c1199,_0x6a89e0)){_0x2202f2['notFound'][_0x2a3e4a(0xa4)](_0x1be3f6+'\x20(not\x20in\x20accessible\x20directories)');continue;}}try{const _0x511a56=await a0_0x4ac40b['stat'](_0x1c1199);if(_0x511a56[_0x2a3e4a(0x10b)]())_0x2202f2['found']['push'](_0x1c1199);else _0x511a56['isDirectory']()?_0x2202f2[_0x2a3e4a(0x103)][_0x2a3e4a(0xa4)](_0x1be3f6+'\x20(is\x20a\x20directory,\x20not\x20a\x20file)'):_0x2202f2[_0x2a3e4a(0x103)]['push'](_0x1be3f6+'\x20(not\x20a\x20regular\x20file)');}catch(_0x319ab2){_0x2202f2[_0x2a3e4a(0x103)]['push'](_0x1be3f6+'\x20('+(_0x319ab2[_0x2a3e4a(0x125)]||_0x319ab2[_0x2a3e4a(0xf3)])+')');}}}return _0x2202f2;}async['expandGlobPattern'](_0x276239,_0x775142){const _0xd7bc8e=a0_0x230c82,_0x4da734={'found':[]};if(_0x276239[_0xd7bc8e(0x10e)]('**/')){const [_0x240884,_0x28c8aa]=_0x276239['split']('**/'),_0x16079c=a0_0x3cd011['resolve'](_0x775142,_0x240884);try{const _0x3da5be=await a0_0x4ac40b[_0xd7bc8e(0x111)](_0x16079c);_0x3da5be[_0xd7bc8e(0xe2)]()&&await this[_0xd7bc8e(0x11a)](_0x16079c,_0x28c8aa,_0x4da734['found'],0x0,this[_0xd7bc8e(0xf0)][_0xd7bc8e(0xb0)]);}catch(_0x40de8a){this[_0xd7bc8e(0xc3)]?.[_0xd7bc8e(0xdd)]('Base\x20directory\x20not\x20found\x20for\x20glob\x20pattern',{'basePath':_0x16079c,'error':_0x40de8a['message']});}}else{if(_0x276239[_0xd7bc8e(0x10e)]('*')){const _0x2f73f0=a0_0x3cd011[_0xd7bc8e(0xd2)](a0_0x3cd011['resolve'](_0x775142,_0x276239)),_0xb38eea=a0_0x3cd011[_0xd7bc8e(0x11d)](_0x276239);try{const _0x45d0aa=await a0_0x4ac40b['stat'](_0x2f73f0);if(_0x45d0aa[_0xd7bc8e(0xe2)]()){const _0x598ffb=await a0_0x4ac40b[_0xd7bc8e(0xbc)](_0x2f73f0);for(const _0x157d31 of _0x598ffb){const _0x385b79=a0_0x3cd011[_0xd7bc8e(0xc9)](_0x2f73f0,_0x157d31);try{const _0x2f4283=await a0_0x4ac40b[_0xd7bc8e(0x111)](_0x385b79);_0x2f4283['isFile']()&&this['matchesPattern'](_0x157d31,_0xb38eea)&&_0x4da734['found']['push'](_0x385b79);}catch(_0x1340a0){continue;}}}}catch(_0x38b12b){this['logger']?.[_0xd7bc8e(0xdd)]('Directory\x20not\x20found\x20for\x20glob\x20pattern',{'dirPath':_0x2f73f0,'error':_0x38b12b[_0xd7bc8e(0xf3)]});}}}return _0x4da734;}async[a0_0x230c82(0x11a)](_0xa986c3,_0x30a9d0,_0xa329e2,_0x45d668,_0x87a9b3){const _0x1f7983=a0_0x230c82;if(_0x45d668>=_0x87a9b3){this[_0x1f7983(0xc3)]?.['warn']('Maximum\x20directory\x20depth\x20reached',{'dir':_0xa986c3,'currentDepth':_0x45d668});return;}try{const _0x4edc08=await a0_0x4ac40b[_0x1f7983(0xbc)](_0xa986c3,{'withFileTypes':!![]});for(const _0x11234c of _0x4edc08){if(_0x11234c[_0x1f7983(0x11f)]['startsWith']('.'))continue;const _0x288406=a0_0x3cd011[_0x1f7983(0xc9)](_0xa986c3,_0x11234c[_0x1f7983(0x11f)]);try{if(_0x11234c[_0x1f7983(0xe2)]()){if(this[_0x1f7983(0xf8)](_0x11234c[_0x1f7983(0x11f)]))continue;await this[_0x1f7983(0x11a)](_0x288406,_0x30a9d0,_0xa329e2,_0x45d668+0x1,_0x87a9b3);}else{if(_0x11234c[_0x1f7983(0x10b)]()){if(this['matchesPattern'](_0x11234c['name'],_0x30a9d0)){_0xa329e2[_0x1f7983(0xa4)](_0x288406);if(_0xa329e2[_0x1f7983(0xa1)]>=this[_0x1f7983(0xf0)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x152b38){continue;}}}catch(_0x8cb4ca){this[_0x1f7983(0xc3)]?.[_0x1f7983(0xdd)](_0x1f7983(0xfe),{'dir':_0xa986c3,'error':_0x8cb4ca['message']});}}[a0_0x230c82(0x117)](_0x8b00a6,_0x43c5f8){const _0x34af9b=a0_0x230c82,_0x2963d2=_0x43c5f8[_0x34af9b(0xd1)]('*')[_0x34af9b(0xb9)](_0x4ac0ba=>this[_0x34af9b(0x123)](_0x4ac0ba))['join']('.*'),_0x93011f=new RegExp('^'+_0x2963d2+'$','i');return _0x93011f[_0x34af9b(0x10f)](_0x8b00a6);}[a0_0x230c82(0x123)](_0x2d4b99){const _0x10a681=a0_0x230c82;return _0x2d4b99[_0x10a681(0x114)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');}[a0_0x230c82(0xf8)](_0x24bd5c){const _0x13ef22=a0_0x230c82,_0x2bdee7=new Set(['node_modules',_0x13ef22(0xe3),'dist',_0x13ef22(0xdf),'coverage','.next','.nuxt','out','target','vendor','__pycache__','.cache','tmp','temp']);return _0x2bdee7[_0x13ef22(0xe6)](_0x24bd5c['toLowerCase']());}[a0_0x230c82(0xed)](_0x333f2e){const _0x289b8d=a0_0x230c82,_0x4430be=a0_0x3cd011[_0x289b8d(0xce)](_0x333f2e)[_0x289b8d(0xeb)]();return BINARY_EXTENSIONS[_0x289b8d(0xe6)](_0x4430be);}async[a0_0x230c82(0x124)](_0x760c96,_0x5d0aac,_0x4f1dab){const _0x8814=a0_0x230c82,_0x550e15=[],_0x4d0298=[];let _0x596e7b=0x0;for(const _0x22eeef of _0x760c96){if(this[_0x8814(0xed)](_0x22eeef))continue;try{const _0x125ed9=await a0_0x4ac40b['stat'](_0x22eeef);if(_0x125ed9[_0x8814(0xc6)]>this[_0x8814(0xf0)][_0x8814(0xbd)]){_0x4d0298['push']({'filePath':a0_0x3cd011[_0x8814(0x113)](_0x4f1dab,_0x22eeef),'error':'File\x20too\x20large\x20('+Math['round'](_0x125ed9['size']/(0x400*0x400))+_0x8814(0xc7)+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+'MB)'});continue;}const _0x2a9b8d=await this[_0x8814(0xbf)](_0x22eeef,_0x5d0aac,_0x4f1dab);_0x550e15[_0x8814(0xa4)](..._0x2a9b8d),_0x596e7b+=_0x2a9b8d['length'];if(_0x596e7b>=this[_0x8814(0xf0)][_0x8814(0xdb)]){this[_0x8814(0xc3)]?.['warn']('Maximum\x20total\x20matches\x20reached',{'totalMatches':_0x596e7b});break;}}catch(_0x1f75d7){_0x4d0298[_0x8814(0xa4)]({'filePath':a0_0x3cd011['relative'](_0x4f1dab,_0x22eeef),'error':_0x1f75d7['message']});}}const _0x390dac={};for(const _0x581242 of _0x550e15){!_0x390dac[_0x581242['term']]&&(_0x390dac[_0x581242['term']]=[]),_0x390dac[_0x581242['term']][_0x8814(0xa4)]({'filePath':_0x581242['filePath'],'lineNumber':_0x581242['lineNumber'],'lineContent':_0x581242[_0x8814(0xec)]});}return{'matches':_0x550e15,'matchesByTerm':_0x390dac,'errorFiles':_0x4d0298};}async[a0_0x230c82(0xbf)](_0x33e3a5,_0x3d9de0,_0x8675d1){const _0x3545b9=a0_0x230c82,_0x2d3bed=[];let _0x3864a4=0x0;try{const _0x208687=await a0_0x4ac40b[_0x3545b9(0xff)](_0x33e3a5,FILE_ENCODING),_0x1bc623=_0x208687[_0x3545b9(0xd1)]('\x0a'),_0x2aff09=a0_0x3cd011['relative'](_0x8675d1,_0x33e3a5);for(let _0x4d54f8=0x0;_0x4d54f8<_0x1bc623['length'];_0x4d54f8++){const _0x59f6d7=_0x1bc623[_0x4d54f8],_0x12518a=_0x4d54f8+0x1;for(const _0x2def2e of _0x3d9de0){if(_0x59f6d7['includes'](_0x2def2e)){let _0xc5c97e=_0x59f6d7;if(_0xc5c97e['length']>this['seekConfig'][_0x3545b9(0x112)]){const _0x59e97d=_0xc5c97e['indexOf'](_0x2def2e),_0x5b396b=Math['max'](0x0,_0x59e97d-0x32),_0x175575=Math[_0x3545b9(0xd8)](_0xc5c97e[_0x3545b9(0xa1)],_0x59e97d+_0x2def2e['length']+0x32);_0xc5c97e=(_0x5b396b>0x0?'...':'')+_0xc5c97e['substring'](_0x5b396b,_0x175575)+(_0x175575<_0xc5c97e['length']?'...':'');}_0x2d3bed[_0x3545b9(0xa4)]({'term':_0x2def2e,'filePath':_0x2aff09,'lineNumber':_0x12518a,'lineContent':_0xc5c97e[_0x3545b9(0x119)]()}),_0x3864a4++;if(_0x3864a4>=this['seekConfig'][_0x3545b9(0x105)])return this['logger']?.[_0x3545b9(0xdd)](_0x3545b9(0xfa),{'filePath':_0x2aff09}),_0x2d3bed;}}}}catch(_0x2bd136){throw new Error(_0x3545b9(0xee)+_0x2bd136[_0x3545b9(0xf3)]);}return _0x2d3bed;}['formatResults'](_0x342a68,_0x5dc0c7,_0x507647,_0x596b85){const _0x1766b4=a0_0x230c82;let _0x35e46c='';if(_0x507647[_0x1766b4(0xa1)]>0x0){_0x35e46c+=_0x1766b4(0xf6);for(const _0x2bd7bb of _0x507647){_0x35e46c+=_0x1766b4(0xf5)+_0x2bd7bb+'\x0a';}_0x35e46c+='\x0a';}if(_0x5dc0c7[_0x1766b4(0xa1)]>0x0){_0x35e46c+=_0x1766b4(0xdc);for(const _0x1a1be9 of _0x5dc0c7){_0x35e46c+='\x20\x20-\x20'+_0x1a1be9['filePath']+':\x20'+_0x1a1be9[_0x1766b4(0x110)]+'\x0a';}_0x35e46c+='\x0a';}if(_0x342a68[_0x1766b4(0xa1)]===0x0)_0x35e46c+=_0x1766b4(0x118)+_0x596b85+_0x1766b4(0xb5);else{const _0x4033f1={};for(const _0x5010e3 of _0x342a68){!_0x4033f1[_0x5010e3[_0x1766b4(0xe1)]]&&(_0x4033f1[_0x5010e3[_0x1766b4(0xe1)]]=[]),_0x4033f1[_0x5010e3['term']][_0x1766b4(0xa4)](_0x5010e3);}_0x35e46c+='SEARCH\x20RESULTS\x20('+_0x342a68[_0x1766b4(0xa1)]+_0x1766b4(0xcb)+_0x596b85+'\x20file(s)):\x0a\x0a';for(const [_0x11cc57,_0xb11bc]of Object['entries'](_0x4033f1)){_0x35e46c+='Search\x20term:\x20\x22'+_0x11cc57+_0x1766b4(0xca)+_0xb11bc[_0x1766b4(0xa1)]+'\x20matches)\x0a';for(const _0x3176b5 of _0xb11bc){_0x35e46c+='\x20\x20'+_0x3176b5['filePath']+':'+_0x3176b5['lineNumber']+_0x1766b4(0xe9)+_0x3176b5[_0x1766b4(0xec)]+'\x0a';}_0x35e46c+='\x0a';}_0x342a68['length']>=this[_0x1766b4(0xf0)][_0x1766b4(0xdb)]&&(_0x35e46c+='⚠️\x20\x20Maximum\x20matches\x20limit\x20reached\x20('+this[_0x1766b4(0xf0)][_0x1766b4(0xdb)]+_0x1766b4(0x11b));}return _0x35e46c['trim']();}[a0_0x230c82(0xad)](){const _0x35ec33=a0_0x230c82;return[_0x35ec33(0xb6),_0x35ec33(0xd7),'.ts','.tsx',_0x35ec33(0x109),'.xml',_0x35ec33(0xa3),_0x35ec33(0xc5),'.scss',_0x35ec33(0xaf),_0x35ec33(0xb8),'.md','.txt',_0x35ec33(0x102),_0x35ec33(0x108),_0x35ec33(0xab),_0x35ec33(0x128),_0x35ec33(0xc2),'.rs','.c','.cpp','.h','.hpp',_0x35ec33(0xe8),_0x35ec33(0xb3),_0x35ec33(0xe4),'.yml',_0x35ec33(0xc8),'.toml','.ini',_0x35ec33(0xb1)];}async['cleanup'](_0x50db81){const _0x12aae7=a0_0x230c82;this['logger']?.['info'](_0x12aae7(0xd3),{'operationId':_0x50db81});}}export default SeekTool;
|
|
1
|
+
const a0_0x80e5e8=a0_0x4d2a;(function(_0x306265,_0x14358d){const _0x37ee1c=a0_0x4d2a,_0x445dc7=_0x306265();while(!![]){try{const _0x4fcf24=-parseInt(_0x37ee1c(0x1de))/0x1*(parseInt(_0x37ee1c(0x183))/0x2)+-parseInt(_0x37ee1c(0x1dc))/0x3+-parseInt(_0x37ee1c(0x1f2))/0x4*(-parseInt(_0x37ee1c(0x1d2))/0x5)+-parseInt(_0x37ee1c(0x1c3))/0x6+-parseInt(_0x37ee1c(0x1df))/0x7*(parseInt(_0x37ee1c(0x20d))/0x8)+parseInt(_0x37ee1c(0x1d4))/0x9+parseInt(_0x37ee1c(0x1f5))/0xa*(parseInt(_0x37ee1c(0x1c8))/0xb);if(_0x4fcf24===_0x14358d)break;else _0x445dc7['push'](_0x445dc7['shift']());}catch(_0x49b167){_0x445dc7['push'](_0x445dc7['shift']());}}}(a0_0x4bcb,0x409ba));import{BaseTool}from'./baseTool.js';import a0_0x43e51e from'../utilities/tagParser.js';function a0_0x4d2a(_0x28f868,_0x414cf6){_0x28f868=_0x28f868-0x17b;const _0x4bcbfd=a0_0x4bcb();let _0x4d2ac6=_0x4bcbfd[_0x28f868];if(a0_0x4d2a['FcekFK']===undefined){var _0x4dbf55=function(_0x10ef32){const _0x230d07='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43e51e='',_0x1802b5='';for(let _0x930193=0x0,_0x16c405,_0x5639d3,_0x43880a=0x0;_0x5639d3=_0x10ef32['charAt'](_0x43880a++);~_0x5639d3&&(_0x16c405=_0x930193%0x4?_0x16c405*0x40+_0x5639d3:_0x5639d3,_0x930193++%0x4)?_0x43e51e+=String['fromCharCode'](0xff&_0x16c405>>(-0x2*_0x930193&0x6)):0x0){_0x5639d3=_0x230d07['indexOf'](_0x5639d3);}for(let _0x44ba51=0x0,_0x4d70ea=_0x43e51e['length'];_0x44ba51<_0x4d70ea;_0x44ba51++){_0x1802b5+='%'+('00'+_0x43e51e['charCodeAt'](_0x44ba51)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1802b5);};a0_0x4d2a['BfbaPC']=_0x4dbf55,a0_0x4d2a['VrGiJF']={},a0_0x4d2a['FcekFK']=!![];}const _0x1d3714=_0x4bcbfd[0x0],_0x154cd9=_0x28f868+_0x1d3714,_0x3b3434=a0_0x4d2a['VrGiJF'][_0x154cd9];return!_0x3b3434?(_0x4d2ac6=a0_0x4d2a['BfbaPC'](_0x4d2ac6),a0_0x4d2a['VrGiJF'][_0x154cd9]=_0x4d2ac6):_0x4d2ac6=_0x3b3434,_0x4d2ac6;}function a0_0x4bcb(){const _0x3e0eb3=['AxnbCNjHEq','BwfW','AxngAwXL','lNHTBa','lMD6','lMXVzW','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','icHUB3qGysbYzwD1BgfYigzPBguP','C2vLA0nVBMzPzW','oIbWyxrOihrYyxzLCNnHBcaOlI4Pig5VDcbHBgXVD2vKigzVCIbZzwn1CML0Eq','rMLSzsb0B28GBgfYz2uGka','C3bSAxq','AxnqyxrOqwnJzxnZAwjSzq','zxH0BMfTzq','C2HVDwXKu2TPCezPBgu','zMLSzvbHDgG','zxjYB3jgAwXLCW','Aw5JBhvKzxm','lNjZ','BgvUz3rO','twf4Aw11Bsb0B3rHBcbTyxrJAgvZihjLywnOzwq','zxjYB3i','CMvHzezPBgu','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','BMfTzq','ywrK','lNr0zG','DgvZDa','zgLYBMfTzq','oIbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','Bwf0y2HLC1bHDhrLCM4','lM5LEhq','Bg9Nz2vY','lNnV','lMrSBa','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','lNnHC3m','ChvZAa','zM9YBwf0uMvZDwX0CW','C3rHDa','lMrHDa','lMPHDMe','zxHWyw5Kr2XVyLbHDhrLCM4','igzPBguOCYKUcG','lNDVzMyY','ic0G','C2vHCMnOvgvYBxm','BgLUzunVBNrLBNq','CMvHze9UBhLeAxjLy3rVCMLLCW','lNLTBa','zMLUzezPBgvZuMvJDxjZAxzLBhK','C2vHCMnOrMLSzxm','lNDTDG','C3rHCNrZv2L0Aa','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','tufyx0zjtevFuefusfm','BM90rM91BMq','igzPBgvZihbLCIbZzwfYy2GklsbnyxHPBxvTia','zM91BMq','vxnPBMCGywDLBNqGy29UzMLNDxjLzcbKAxjLy3rVCNKGywnJzxnZ','DgvYBq','mtiWnduWnM15qNvQEa','CMvZB2X2zuzPBgvqyxrOCW','lMnVBMy','BwvZC2fNzq','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','odKXr3HksKzZ','y292zxjHz2u','CM91BMq','CMvZB2X2zq','tufyx0zjtevFu0LArq','lMDV','D29YA2LUz0rPCMvJDg9YEq','lNn2zW','tufyx0XjtKvFq09ovevovf9mru5hveG','Bwf0y2HLCW','nwLYuMv4CG','zxnJyxbLuMvNrxHW','mtG2mZGZn3HZz1vjDW','rMfPBgvKihrVihbHCNnLihnLzwSGCgfYyw1LDgvYCW','yMfZzw5HBwu','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','lNjHCG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','tufyx0rjuKvdve9swv9ervbusa','mtu4mZm0mfzmCgvNBq','C2vHCMnOsw5gAwXL','mJCYmJC1t3HSEeDM','mtq1odfiC3D5q1a','CMvWBgfJzq','lI4U','lMnZCW','CMvSyxrPDMu','lMjPBG','DhjPBq','lNrZEa','lM51Ehq','zw50CMLLCW','lMjHC2G','tufyx0zjtevtx1bfuL9trufsq0G','icHPCYbHigrPCMvJDg9YEsWGBM90igeGzMLSzsK','C3rYAw5N','lNjI','CMvXDwLYzxnqCM9Qzwn0','B3v0','Dg9mB3DLCKnHC2u','D2fYBG','ndC5mtC2y3jurgDN','rKLmrvmGv0LuscbfuLjpuLm6cG','lNb5','mti1otaWrer3sgfi','lMnHy2HL','lMDPDa','DgLTzw91Da','CMvHzgrPCG','tufyx1rpvefmx01bvenirvm','Aw5KzxHpzG','lNnXBgL0zq','lMf2Aq','zMLSzvbHDgHZ','lNbKzG','zxHLyW','BwLU','rMLSzsbWyxrOia','AxneAxjLy3rVCNK','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','lM1K','DgvTCa','uhjVAMvJDcbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLzwSGDg9VBa','lMPWzwC','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','lJD6','Bwf4','rMfPBgvKihrVihjLywqGzMLSztOG','mZeYv2zQwMH4','lMDPzG','Bwf0y2HLC0j5vgvYBq','lMjTCa','zMLSDgvY','icHUB3qGAw4GywnJzxnZAwjSzsbKAxjLy3rVCMLLCYK','lIbvC2uGBw9YzsbZCgvJAwzPyYbMAwXLihbHDhrLCM5ZlG','Aw5MBW','lMPZ','lM1Wna','BgLUzu51BwjLCG','C2L6zq','mMvcsNjzBa','AM9PBG','xcqM'];a0_0x4bcb=function(){return _0x3e0eb3;};return a0_0x4bcb();}import{promises as a0_0x1802b5}from'fs';import a0_0x930193 from'path';const SEEK_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_FILES_PER_SEARCH':0x3e8,'MAX_MATCHES_PER_FILE':0x64,'MAX_TOTAL_MATCHES':0x1f4,'MAX_SEARCH_TERMS':0x32,'MAX_FILE_PATHS':0x64,'MAX_DIRECTORY_DEPTH':0x14,'MAX_LINE_CONTENT_LENGTH':0xc8,'CONTEXT_LINES_BEFORE':0x0,'CONTEXT_LINES_AFTER':0x0},FILE_ENCODING='utf-8',BINARY_EXTENSIONS=new Set(['.png','.jpg',a0_0x80e5e8(0x208),a0_0x80e5e8(0x20e),a0_0x80e5e8(0x210),'.ico',a0_0x80e5e8(0x1cf),a0_0x80e5e8(0x1ff),'.zip','.tar',a0_0x80e5e8(0x18a),a0_0x80e5e8(0x1d8),a0_0x80e5e8(0x20a),'.exe',a0_0x80e5e8(0x1a8),a0_0x80e5e8(0x1a7),'.dylib','.mp3',a0_0x80e5e8(0x180),a0_0x80e5e8(0x1fd),'.mov',a0_0x80e5e8(0x1ba),'.woff',a0_0x80e5e8(0x1b2),a0_0x80e5e8(0x1a0),'.eot',a0_0x80e5e8(0x1e4),a0_0x80e5e8(0x1ae),'.db',a0_0x80e5e8(0x1fc)]);class SeekTool extends BaseTool{constructor(_0x16c405={},_0x5639d3=null){const _0x5c22e6=a0_0x80e5e8;super(_0x16c405,_0x5639d3),this[_0x5c22e6(0x1ee)]=!![],this['isAsync']=!![],this['timeout']=_0x16c405[_0x5c22e6(0x1f8)]||0x1d4c0,this[_0x5c22e6(0x18e)]={...SEEK_CONFIG,..._0x16c405[_0x5c22e6(0x18e)]};}['getDescription'](){const _0x1d91f6=a0_0x80e5e8;return'\x0aSeek\x20Tool:\x20Search\x20for\x20specific\x20content\x20within\x20project\x20files.\x20Highly\x20recommended\x20for\x20verifying\x20imports,\x20function\x20usage,\x20and\x20variable\x20references.\x0a\x0aXML\x20USAGE:\x0a<seek>\x0a\x20\x20<in-files>\x0a\x20\x20\x20\x20file/path/one.js\x0a\x20\x20\x20\x20file/path/two.js\x0a\x20\x20\x20\x20src/**/*.js\x0a\x20\x20</in-files>\x0a\x20\x20<search-terms>\x0a\x20\x20\x20\x20<term>search\x20phrase\x20one</term>\x0a\x20\x20\x20\x20<term>search\x20phrase\x20two</term>\x0a\x20\x20\x20\x20<term>search\x20phrase\x20three</term>\x0a\x20\x20</search-terms>\x0a</seek>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22seek\x22,\x0a\x20\x20\x22filePaths\x22:\x20[\x0a\x20\x20\x20\x20\x22src/components/Header.js\x22,\x0a\x20\x20\x20\x20\x22src/utils/*.js\x22,\x0a\x20\x20\x20\x20\x22src/**/*.jsx\x22\x0a\x20\x20],\x0a\x20\x20\x22searchTerms\x22:\x20[\x0a\x20\x20\x20\x20\x22import\x20React\x22,\x0a\x20\x20\x20\x20\x22useState\x22,\x0a\x20\x20\x20\x20\x22function\x20handleSubmit\x22\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20GLOB\x20PATTERNS:\x0a-\x20*.js\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20All\x20.js\x20files\x20in\x20a\x20directory\x0a-\x20**/*.js\x20\x20\x20\x20\x20\x20\x20\x20-\x20All\x20.js\x20files\x20recursively\x0a-\x20src/**/*.jsx\x20\x20\x20-\x20All\x20.jsx\x20files\x20under\x20src/\x20recursively\x0a-\x20components/*.*\x20-\x20All\x20files\x20in\x20components/\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Find\x20function\x20usage:\x0a<seek>\x0a\x20\x20<in-files>\x0a\x20\x20\x20\x20src/components/*.js\x0a\x20\x20\x20\x20src/utils/helpers.js\x0a\x20\x20</in-files>\x0a\x20\x20<search-terms>\x0a\x20\x20\x20\x20<term>function\x20handleSubmit</term>\x0a\x20\x20\x20\x20<term>useState(</term>\x0a\x20\x20</search-terms>\x0a</seek>\x0a\x0aExample\x202\x20-\x20Verify\x20imports:\x0a<seek>\x0a\x20\x20<in-files>\x0a\x20\x20\x20\x20src/components/Header.js\x0a\x20\x20\x20\x20src/components/Footer.js\x0a\x20\x20</in-files>\x0a\x20\x20<search-terms>\x0a\x20\x20\x20\x20<term>import\x20React</term>\x0a\x20\x20\x20\x20<term>import\x20{\x20useState\x20}</term>\x0a\x20\x20\x20\x20<term>from\x20\x27react\x27</term>\x0a\x20\x20</search-terms>\x0a</seek>\x0a\x0aExample\x203\x20-\x20Find\x20variable\x20references:\x0a<seek>\x0a\x20\x20<in-files>\x0a\x20\x20\x20\x20src/**/*.js\x0a\x20\x20</in-files>\x0a\x20\x20<search-terms>\x0a\x20\x20\x20\x20<term>apiClient</term>\x0a\x20\x20\x20\x20<term>config.apiUrl</term>\x0a\x20\x20</search-terms>\x0a</seek>\x0a\x0aExample\x204\x20-\x20Search\x20specific\x20files\x20only:\x0a<seek>\x0a\x20\x20<in-files>\x0a\x20\x20\x20\x20package.json\x0a\x20\x20\x20\x20tsconfig.json\x0a\x20\x20\x20\x20.gitignore\x0a\x20\x20</in-files>\x0a\x20\x20<search-terms>\x0a\x20\x20\x20\x20<term>react</term>\x0a\x20\x20\x20\x20<term>typescript</term>\x0a\x20\x20</search-terms>\x0a</seek>\x0a\x0aFEATURES:\x0a-\x20Searches\x20for\x20exact\x20string\x20matches\x20(case-sensitive)\x0a-\x20Returns\x20file\x20path,\x20line\x20number,\x20and\x20line\x20content\x20for\x20each\x20match\x0a-\x20Supports\x20glob\x20patterns\x20for\x20flexible\x20file\x20selection\x0a-\x20Skips\x20binary\x20files\x20automatically\x0a-\x20Reports\x20files\x20not\x20found\x20and\x20files\x20with\x20errors\x0a-\x20Limited\x20to\x20'+SEEK_CONFIG[_0x1d91f6(0x1cc)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG[_0x1d91f6(0x1fa)]+_0x1d91f6(0x1d7)+SEEK_CONFIG[_0x1d91f6(0x1ea)]+_0x1d91f6(0x1bf)+SEEK_CONFIG['MAX_SEARCH_TERMS']+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0x1d91f6(0x1cc)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Case-sensitive\x20search\x20only\x0a-\x20Exact\x20string\x20matching\x20(not\x20regex)\x0a-\x20Paths\x20outside\x20accessible\x20directories\x20will\x20be\x20reported\x20as\x20\x22not\x20found\x22\x0a\x20\x20\x20\x20';}['parseParameters'](_0x43880a){const _0x2ccf2f=a0_0x80e5e8;try{if(_0x43880a['trim']()[_0x2ccf2f(0x1bb)]('{')){const _0x24f2db=JSON['parse'](_0x43880a);return{'filePaths':_0x24f2db['filePaths']||[],'searchTerms':_0x24f2db[_0x2ccf2f(0x1b4)]||[]};}const _0x44ba51={'filePaths':[],'searchTerms':[]},_0x4d70ea=/<in-files>([\s\S]*?)<\/in-files>/i,_0x48531a=_0x4d70ea[_0x2ccf2f(0x200)](_0x43880a);if(_0x48531a){const _0xe1711c=_0x48531a[0x1];_0x44ba51['filePaths']=_0xe1711c[_0x2ccf2f(0x191)]('\x0a')['map'](_0x33b071=>_0x33b071['trim']())[_0x2ccf2f(0x17b)](_0x1d0795=>_0x1d0795['length']>0x0);}const _0x3fd27f=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0xd39025=_0x3fd27f['exec'](_0x43880a);if(_0xd39025){const _0x2b0a14=_0xd39025[0x1],_0x3972bf=/<term>(.*?)<\/term>/gi;let _0x13270c;while((_0x13270c=_0x3972bf['exec'](_0x2b0a14))!==null){const _0x5e51eb=_0x13270c[0x1][_0x2ccf2f(0x1e5)]();_0x5e51eb['length']>0x0&&_0x44ba51['searchTerms']['push'](_0x5e51eb);}}return _0x44ba51;}catch(_0x173035){return this['logger']?.['error'](_0x2ccf2f(0x1d5),{'error':_0x173035[_0x2ccf2f(0x1c6)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x173035['message']};}}['getRequiredParameters'](){const _0x1006ee=a0_0x80e5e8;return[_0x1006ee(0x1fe),_0x1006ee(0x1b4)];}[a0_0x80e5e8(0x1d9)](_0x16aed7){const _0x5450c6=a0_0x80e5e8,_0x4499dd=[];if(!_0x16aed7[_0x5450c6(0x1fe)]||!Array[_0x5450c6(0x186)](_0x16aed7[_0x5450c6(0x1fe)])||_0x16aed7['filePaths'][_0x5450c6(0x199)]===0x0)_0x4499dd[_0x5450c6(0x1ab)]('At\x20least\x20one\x20file\x20path\x20is\x20required');else _0x16aed7[_0x5450c6(0x1fe)]['length']>this['seekConfig'][_0x5450c6(0x1bd)]&&_0x4499dd['push']('Too\x20many\x20file\x20paths\x20(max\x20'+this[_0x5450c6(0x18e)][_0x5450c6(0x1bd)]+')');if(!_0x16aed7[_0x5450c6(0x1b4)]||!Array[_0x5450c6(0x186)](_0x16aed7['searchTerms'])||_0x16aed7[_0x5450c6(0x1b4)]['length']===0x0)_0x4499dd['push']('At\x20least\x20one\x20search\x20term\x20is\x20required');else _0x16aed7['searchTerms']['length']>this['seekConfig']['MAX_SEARCH_TERMS']&&_0x4499dd['push']('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig']['MAX_SEARCH_TERMS']+')');if(_0x16aed7['searchTerms']&&Array['isArray'](_0x16aed7[_0x5450c6(0x1b4)]))for(const [_0x4701ab,_0x48d619]of _0x16aed7['searchTerms'][_0x5450c6(0x1e8)]()){(typeof _0x48d619!=='string'||_0x48d619[_0x5450c6(0x1e5)]()['length']===0x0)&&_0x4499dd[_0x5450c6(0x1ab)]('Search\x20term\x20'+(_0x4701ab+0x1)+_0x5450c6(0x1a3));}if(_0x16aed7[_0x5450c6(0x1fe)]&&Array[_0x5450c6(0x186)](_0x16aed7['filePaths']))for(const [_0x4cd4cb,_0x9433c3]of _0x16aed7['filePaths'][_0x5450c6(0x1e8)]()){(typeof _0x9433c3!==_0x5450c6(0x1ec)||_0x9433c3['trim']()['length']===0x0)&&_0x4499dd['push'](_0x5450c6(0x202)+(_0x4cd4cb+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x9433c3['includes']('..')&&_0x4499dd['push'](_0x5450c6(0x202)+(_0x4cd4cb+0x1)+_0x5450c6(0x18f));}return{'valid':_0x4499dd[_0x5450c6(0x199)]===0x0,'errors':_0x4499dd};}async['execute'](_0x565a5d,_0x19e899){const _0x483ba0=a0_0x80e5e8,{filePaths:_0x538a95,searchTerms:_0x43bcfd}=_0x565a5d,{projectDir:_0x5be5a7,agentId:_0x35e7ec,directoryAccess:_0x484d39}=_0x19e899;let _0x50f656=_0x5be5a7||process['cwd'](),_0x6f2787=[_0x50f656];_0x484d39&&_0x484d39[_0x483ba0(0x1ce)]&&(_0x50f656=_0x484d39[_0x483ba0(0x1ce)],_0x6f2787=this[_0x483ba0(0x1c7)](_0x484d39),this[_0x483ba0(0x1a6)]?.[_0x483ba0(0x17e)](_0x483ba0(0x1c1),{'workingDirectory':_0x484d39['workingDirectory'],'totalAccessibleDirs':_0x6f2787['length'],'readOnlyDirs':_0x484d39[_0x483ba0(0x1b6)]?.['length']||0x0,'writeEnabledDirs':_0x484d39['writeEnabledDirectories']?.[_0x483ba0(0x199)]||0x0,'agentId':_0x35e7ec}));if(!_0x50f656)throw new Error(_0x483ba0(0x207));this['logger']?.['info']('Executing\x20seek\x20tool',{'filePathCount':_0x538a95[_0x483ba0(0x199)],'searchTermCount':_0x43bcfd[_0x483ba0(0x199)],'workingDirectory':_0x50f656,'accessibleDirectories':_0x6f2787[_0x483ba0(0x199)],'agentId':_0x35e7ec});try{const _0x21b6ae=await this[_0x483ba0(0x1c4)](_0x538a95,_0x50f656,_0x484d39?_0x6f2787:null),_0x599afe=_0x21b6ae['found'],_0x1d8359=_0x21b6ae[_0x483ba0(0x1be)];if(_0x599afe['length']>this[_0x483ba0(0x18e)][_0x483ba0(0x1ea)])return{'success':![],'error':_0x483ba0(0x1a9)+_0x599afe['length']+').\x20Maximum\x20is\x20'+this[_0x483ba0(0x18e)]['MAX_FILES_PER_SEARCH']+_0x483ba0(0x17d),'filesResolved':_0x599afe['length'],'filesNotFound':_0x1d8359['length']};const _0x2b838b=await this['searchFiles'](_0x599afe,_0x43bcfd,_0x50f656),_0x1c2b40=this[_0x483ba0(0x1ac)](_0x2b838b[_0x483ba0(0x1d1)],_0x2b838b[_0x483ba0(0x196)],_0x1d8359,_0x599afe['length']);return{'success':!![],'filesSearched':_0x599afe['length'],'filesNotFound':_0x1d8359[_0x483ba0(0x199)],'filesWithErrors':_0x2b838b[_0x483ba0(0x196)][_0x483ba0(0x199)],'totalMatches':_0x2b838b[_0x483ba0(0x1d1)][_0x483ba0(0x199)],'matchesByTerm':_0x2b838b[_0x483ba0(0x20f)],'formattedResults':_0x1c2b40,'toolUsed':'seek'};}catch(_0x253427){this[_0x483ba0(0x1a6)]?.['error']('Seek\x20tool\x20execution\x20failed',{'error':_0x253427[_0x483ba0(0x1c6)]});throw _0x253427;}}[a0_0x80e5e8(0x1c7)](_0x23052d){const _0x3669e0=a0_0x80e5e8,_0x288617=new Set();_0x23052d[_0x3669e0(0x1ce)]&&_0x288617[_0x3669e0(0x19f)](_0x23052d[_0x3669e0(0x1ce)]);if(_0x23052d['readOnlyDirectories']&&Array['isArray'](_0x23052d['readOnlyDirectories']))for(const _0x261f85 of _0x23052d['readOnlyDirectories']){_0x288617[_0x3669e0(0x19f)](_0x261f85);}if(_0x23052d[_0x3669e0(0x204)]&&Array[_0x3669e0(0x186)](_0x23052d['writeEnabledDirectories']))for(const _0x781cc0 of _0x23052d['writeEnabledDirectories']){_0x288617['add'](_0x781cc0);}return Array['from'](_0x288617);}[a0_0x80e5e8(0x192)](_0x25ba12,_0x12eb0d){const _0x53b0f1=a0_0x80e5e8;for(const _0x11af75 of _0x12eb0d){const _0x5089c8=a0_0x930193[_0x53b0f1(0x1e3)](_0x11af75,_0x25ba12),_0x3d025c=!_0x5089c8['startsWith']('..')&&!a0_0x930193['isAbsolute'](_0x5089c8);if(_0x3d025c)return!![];}return![];}async[a0_0x80e5e8(0x1c4)](_0x2efa3d,_0x36d66e,_0x583e1a=null){const _0x48a1ce=a0_0x80e5e8,_0x4fb0c3={'found':[],'notFound':[]};for(const _0x451f71 of _0x2efa3d){const _0x4d3717=_0x451f71['trim']();if(_0x4d3717[_0x48a1ce(0x197)]('*')){const _0x37ed9b=await this[_0x48a1ce(0x1b0)](_0x4d3717,_0x36d66e);_0x37ed9b['found'][_0x48a1ce(0x199)]>0x0?_0x4fb0c3[_0x48a1ce(0x1c0)]['push'](..._0x37ed9b[_0x48a1ce(0x1c0)]):_0x4fb0c3[_0x48a1ce(0x1be)][_0x48a1ce(0x1ab)](_0x4d3717+'\x20(no\x20matching\x20files)');}else{const _0x4d44a9=a0_0x930193['isAbsolute'](_0x4d3717)?_0x4d3717:a0_0x930193[_0x48a1ce(0x1cb)](_0x36d66e,_0x4d3717);if(_0x583e1a&&_0x583e1a['length']>0x0){if(!this[_0x48a1ce(0x192)](_0x4d44a9,_0x583e1a)){_0x4fb0c3[_0x48a1ce(0x1be)][_0x48a1ce(0x1ab)](_0x4d3717+_0x48a1ce(0x17c));continue;}}try{const _0x2f66b1=await a0_0x1802b5[_0x48a1ce(0x1ad)](_0x4d44a9);if(_0x2f66b1[_0x48a1ce(0x188)]())_0x4fb0c3[_0x48a1ce(0x1c0)][_0x48a1ce(0x1ab)](_0x4d44a9);else _0x2f66b1[_0x48a1ce(0x203)]()?_0x4fb0c3['notFound']['push'](_0x4d3717+_0x48a1ce(0x1eb)):_0x4fb0c3[_0x48a1ce(0x1be)][_0x48a1ce(0x1ab)](_0x4d3717+_0x48a1ce(0x18d));}catch(_0xfa20c0){_0x4fb0c3[_0x48a1ce(0x1be)]['push'](_0x4d3717+'\x20('+(_0xfa20c0['code']||_0xfa20c0['message'])+')');}}}return _0x4fb0c3;}async['expandGlobPattern'](_0x1b4362,_0x633aff){const _0x20a76e=a0_0x80e5e8,_0x12f105={'found':[]};if(_0x1b4362['includes']('**/')){const [_0x3dc253,_0x30bd9c]=_0x1b4362['split']('**/'),_0x10aab0=a0_0x930193['resolve'](_0x633aff,_0x3dc253);try{const _0x563c0f=await a0_0x1802b5['stat'](_0x10aab0);_0x563c0f['isDirectory']()&&await this[_0x20a76e(0x1b8)](_0x10aab0,_0x30bd9c,_0x12f105['found'],0x0,this['seekConfig'][_0x20a76e(0x1db)]);}catch(_0x5895d4){this['logger']?.['warn']('Base\x20directory\x20not\x20found\x20for\x20glob\x20pattern',{'basePath':_0x10aab0,'error':_0x5895d4['message']});}}else{if(_0x1b4362['includes']('*')){const _0x2760e6=a0_0x930193[_0x20a76e(0x1a2)](a0_0x930193[_0x20a76e(0x1cb)](_0x633aff,_0x1b4362)),_0x27e436=a0_0x930193[_0x20a76e(0x1d6)](_0x1b4362);try{const _0x26ee7a=await a0_0x1802b5['stat'](_0x2760e6);if(_0x26ee7a['isDirectory']()){const _0x29228d=await a0_0x1802b5[_0x20a76e(0x1f9)](_0x2760e6);for(const _0xfd95ca of _0x29228d){const _0x4acfc6=a0_0x930193[_0x20a76e(0x184)](_0x2760e6,_0xfd95ca);try{const _0x317e00=await a0_0x1802b5[_0x20a76e(0x1ad)](_0x4acfc6);_0x317e00[_0x20a76e(0x188)]()&&this['matchesPattern'](_0xfd95ca,_0x27e436)&&_0x12f105[_0x20a76e(0x1c0)][_0x20a76e(0x1ab)](_0x4acfc6);}catch(_0x1aeb2d){continue;}}}}catch(_0x2bf234){this['logger']?.['warn']('Directory\x20not\x20found\x20for\x20glob\x20pattern',{'dirPath':_0x2760e6,'error':_0x2bf234['message']});}}}return _0x12f105;}async[a0_0x80e5e8(0x1b8)](_0xc7ab03,_0x487d76,_0x779058,_0x1ba942,_0xe0b373){const _0x3087e7=a0_0x80e5e8;if(_0x1ba942>=_0xe0b373){this['logger']?.['warn']('Maximum\x20directory\x20depth\x20reached',{'dir':_0xc7ab03,'currentDepth':_0x1ba942});return;}try{const _0x56dc59=await a0_0x1802b5['readdir'](_0xc7ab03,{'withFileTypes':!![]});for(const _0x1cb48d of _0x56dc59){if(_0x1cb48d['name'][_0x3087e7(0x1bb)]('.'))continue;const _0x26c68a=a0_0x930193['join'](_0xc7ab03,_0x1cb48d['name']);try{if(_0x1cb48d['isDirectory']()){if(this['shouldSkipDirectory'](_0x1cb48d['name']))continue;await this['findFilesRecursively'](_0x26c68a,_0x487d76,_0x779058,_0x1ba942+0x1,_0xe0b373);}else{if(_0x1cb48d['isFile']()){if(this['matchesPattern'](_0x1cb48d[_0x3087e7(0x19e)],_0x487d76)){_0x779058[_0x3087e7(0x1ab)](_0x26c68a);if(_0x779058[_0x3087e7(0x199)]>=this[_0x3087e7(0x18e)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x38c94d){continue;}}}catch(_0x26b3ce){this[_0x3087e7(0x1a6)]?.['warn'](_0x3087e7(0x1da),{'dir':_0xc7ab03,'error':_0x26b3ce['message']});}}[a0_0x80e5e8(0x1a4)](_0x2dcd1d,_0x8cbab0){const _0x243387=a0_0x80e5e8,_0x102287=_0x8cbab0[_0x243387(0x191)]('*')[_0x243387(0x187)](_0x2ccfa5=>this[_0x243387(0x1d3)](_0x2ccfa5))[_0x243387(0x184)]('.*'),_0x21637c=new RegExp('^'+_0x102287+'$','i');return _0x21637c[_0x243387(0x1a1)](_0x2dcd1d);}['escapeRegExp'](_0xb24cd7){const _0x1f830b=a0_0x80e5e8;return _0xb24cd7[_0x1f830b(0x1e0)](/[.*+?^${}()|[\]\\]/g,_0x1f830b(0x185));}['shouldSkipDirectory'](_0x4c38c6){const _0x10975b=a0_0x80e5e8,_0x438729=new Set(['node_modules',_0x10975b(0x1f7),'dist','build',_0x10975b(0x1c9),_0x10975b(0x1a5),_0x10975b(0x1e7),_0x10975b(0x1ef),'target','vendor','__pycache__',_0x10975b(0x1f6),'tmp',_0x10975b(0x206)]);return _0x438729['has'](_0x4c38c6[_0x10975b(0x1f0)]());}[a0_0x80e5e8(0x194)](_0x315c25){const _0x43c6c4=a0_0x80e5e8,_0x3cf1f1=a0_0x930193[_0x43c6c4(0x193)](_0x315c25)['toLowerCase']();return BINARY_EXTENSIONS['has'](_0x3cf1f1);}async[a0_0x80e5e8(0x1b9)](_0xbf526e,_0x43189b,_0x50e7a0){const _0x301e73=a0_0x80e5e8,_0x40f996=[],_0x5a2ce4=[];let _0x3770ca=0x0;for(const _0x45ed36 of _0xbf526e){if(this['shouldSkipFile'](_0x45ed36))continue;try{const _0x45b3f4=await a0_0x1802b5['stat'](_0x45ed36);if(_0x45b3f4['size']>this['seekConfig']['MAX_FILE_SIZE']){_0x5a2ce4['push']({'filePath':a0_0x930193[_0x301e73(0x1e3)](_0x50e7a0,_0x45ed36),'error':_0x301e73(0x190)+Math[_0x301e73(0x1ca)](_0x45b3f4[_0x301e73(0x182)]/(0x400*0x400))+'MB,\x20max\x20'+Math[_0x301e73(0x1ca)](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+'MB)'});continue;}const _0x7b0645=await this[_0x301e73(0x1dd)](_0x45ed36,_0x43189b,_0x50e7a0);_0x40f996['push'](..._0x7b0645),_0x3770ca+=_0x7b0645[_0x301e73(0x199)];if(_0x3770ca>=this['seekConfig'][_0x301e73(0x1fa)]){this[_0x301e73(0x1a6)]?.[_0x301e73(0x1f1)](_0x301e73(0x19a),{'totalMatches':_0x3770ca});break;}}catch(_0x2f5ece){_0x5a2ce4[_0x301e73(0x1ab)]({'filePath':a0_0x930193[_0x301e73(0x1e3)](_0x50e7a0,_0x45ed36),'error':_0x2f5ece[_0x301e73(0x1c6)]});}}const _0x581ce0={};for(const _0x2708a2 of _0x40f996){!_0x581ce0[_0x2708a2['term']]&&(_0x581ce0[_0x2708a2['term']]=[]),_0x581ce0[_0x2708a2['term']][_0x301e73(0x1ab)]({'filePath':_0x2708a2[_0x301e73(0x195)],'lineNumber':_0x2708a2['lineNumber'],'lineContent':_0x2708a2['lineContent']});}return{'matches':_0x40f996,'matchesByTerm':_0x581ce0,'errorFiles':_0x5a2ce4};}async['searchInFile'](_0x774903,_0x516c39,_0xea39f3){const _0x821b1f=a0_0x80e5e8,_0x4f82cd=[];let _0x447274=0x0;try{const _0x48eaa5=await a0_0x1802b5[_0x821b1f(0x19c)](_0x774903,FILE_ENCODING),_0x4d952c=_0x48eaa5[_0x821b1f(0x191)]('\x0a'),_0x4a5f75=a0_0x930193[_0x821b1f(0x1e3)](_0xea39f3,_0x774903);for(let _0x4e0163=0x0;_0x4e0163<_0x4d952c['length'];_0x4e0163++){const _0x2516d7=_0x4d952c[_0x4e0163],_0x40ef25=_0x4e0163+0x1;for(const _0x27d2cf of _0x516c39){if(_0x2516d7[_0x821b1f(0x197)](_0x27d2cf)){let _0x22bdbe=_0x2516d7;if(_0x22bdbe[_0x821b1f(0x199)]>this[_0x821b1f(0x18e)][_0x821b1f(0x1d0)]){const _0x65e598=_0x22bdbe[_0x821b1f(0x1fb)](_0x27d2cf),_0x1fcbd1=Math[_0x821b1f(0x20b)](0x0,_0x65e598-0x32),_0x4fb6a7=Math[_0x821b1f(0x201)](_0x22bdbe[_0x821b1f(0x199)],_0x65e598+_0x27d2cf['length']+0x32);_0x22bdbe=(_0x1fcbd1>0x0?_0x821b1f(0x1e1):'')+_0x22bdbe['substring'](_0x1fcbd1,_0x4fb6a7)+(_0x4fb6a7<_0x22bdbe[_0x821b1f(0x199)]?'...':'');}_0x4f82cd[_0x821b1f(0x1ab)]({'term':_0x27d2cf,'filePath':_0x4a5f75,'lineNumber':_0x40ef25,'lineContent':_0x22bdbe[_0x821b1f(0x1e5)]()}),_0x447274++;if(_0x447274>=this[_0x821b1f(0x18e)]['MAX_MATCHES_PER_FILE'])return this['logger']?.[_0x821b1f(0x1f1)]('Maximum\x20matches\x20per\x20file\x20reached',{'filePath':_0x4a5f75}),_0x4f82cd;}}}}catch(_0x236bc2){throw new Error(_0x821b1f(0x20c)+_0x236bc2['message']);}return _0x4f82cd;}[a0_0x80e5e8(0x1ac)](_0x399589,_0xe701e5,_0x5b8d41,_0x33f20f){const _0x59e64c=a0_0x80e5e8;let _0x2b0980='';if(_0x5b8d41[_0x59e64c(0x199)]>0x0){_0x2b0980+='FILES\x20NOT\x20FOUND:\x0a';for(const _0x52bb71 of _0x5b8d41){_0x2b0980+='\x20\x20-\x20'+_0x52bb71+'\x0a';}_0x2b0980+='\x0a';}if(_0xe701e5[_0x59e64c(0x199)]>0x0){_0x2b0980+=_0x59e64c(0x1f3);for(const _0x398df6 of _0xe701e5){_0x2b0980+='\x20\x20-\x20'+_0x398df6['filePath']+':\x20'+_0x398df6[_0x59e64c(0x19b)]+'\x0a';}_0x2b0980+='\x0a';}if(_0x399589['length']===0x0)_0x2b0980+='No\x20matches\x20found\x20for\x20the\x20specified\x20search\x20terms\x20in\x20'+_0x33f20f+_0x59e64c(0x1b1);else{const _0xf75de1={};for(const _0x7adb76 of _0x399589){!_0xf75de1[_0x7adb76[_0x59e64c(0x1c2)]]&&(_0xf75de1[_0x7adb76['term']]=[]),_0xf75de1[_0x7adb76['term']]['push'](_0x7adb76);}_0x2b0980+='SEARCH\x20RESULTS\x20('+_0x399589['length']+'\x20total\x20matches\x20in\x20'+_0x33f20f+'\x20file(s)):\x0a\x0a';for(const [_0x428318,_0x151a35]of Object[_0x59e64c(0x1e8)](_0xf75de1)){_0x2b0980+='Search\x20term:\x20\x22'+_0x428318+'\x22\x20('+_0x151a35['length']+'\x20matches)\x0a';for(const _0x433d0f of _0x151a35){_0x2b0980+='\x20\x20'+_0x433d0f['filePath']+':'+_0x433d0f[_0x59e64c(0x181)]+_0x59e64c(0x1b3)+_0x433d0f[_0x59e64c(0x1b5)]+'\x0a';}_0x2b0980+='\x0a';}_0x399589['length']>=this['seekConfig'][_0x59e64c(0x1fa)]&&(_0x2b0980+=_0x59e64c(0x209)+this[_0x59e64c(0x18e)]['MAX_TOTAL_MATCHES']+_0x59e64c(0x19d));}return _0x2b0980[_0x59e64c(0x1e5)]();}[a0_0x80e5e8(0x18c)](){const _0x47ea0b=a0_0x80e5e8;return[_0x47ea0b(0x17f),'.jsx','.ts',_0x47ea0b(0x1e6),'.json',_0x47ea0b(0x189),'.html',_0x47ea0b(0x1e2),'.scss',_0x47ea0b(0x1aa),'.less',_0x47ea0b(0x205),'.txt',_0x47ea0b(0x18b),_0x47ea0b(0x1f4),_0x47ea0b(0x1ed),_0x47ea0b(0x1af),_0x47ea0b(0x1cd),_0x47ea0b(0x198),'.c','.cpp','.h','.hpp','.sh',_0x47ea0b(0x1e9),'.zsh',_0x47ea0b(0x1b7),'.yaml','.toml','.ini',_0x47ea0b(0x1c5)];}async['cleanup'](_0x48aef8){const _0x4d8806=a0_0x80e5e8;this[_0x4d8806(0x1a6)]?.['info'](_0x4d8806(0x1bc),{'operationId':_0x48aef8});}}export default SeekTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x24ff7f=a0_0x1be1;(function(_0x4e1a53,_0x286262){const _0x59a286=a0_0x1be1,_0x5935ae=_0x4e1a53();while(!![]){try{const _0x55eab9=-parseInt(_0x59a286(0x245))/0x1*(parseInt(_0x59a286(0x24e))/0x2)+parseInt(_0x59a286(0x199))/0x3+parseInt(_0x59a286(0x1d0))/0x4*(parseInt(_0x59a286(0x193))/0x5)+parseInt(_0x59a286(0x1a1))/0x6+-parseInt(_0x59a286(0x1a4))/0x7+parseInt(_0x59a286(0x1e2))/0x8+-parseInt(_0x59a286(0x23e))/0x9*(parseInt(_0x59a286(0x1b3))/0xa);if(_0x55eab9===_0x286262)break;else _0x5935ae['push'](_0x5935ae['shift']());}catch(_0x384046){_0x5935ae['push'](_0x5935ae['shift']());}}}(a0_0x3ef6,0x4a57b));import{BaseTool}from'./baseTool.js';import a0_0x38bb13 from'../utilities/tagParser.js';function a0_0x3ef6(){const _0xf1b3db=['lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','DgLTzw91Da','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','zgv0zwn0tgfUz3vHz2u','mtm3nZjMDeHOrMS','C3bSAxq','AMf2yxnJCMLWDa','Bwf4rMLSzxnqzxjcyxrJAa','z2v0rvnmAw50qw5HBhL6zxi','zgv0zwn0sLngCMfTzxDVCMS','Bg9Nz2vY','v3jPDguGywnJzxnZigrLBMLLzdOG','rvHuru5tsu9ox1rpx0XbtKDvquDf','DxrMltG','CM91BMq','y2f0zwDVCNK','zgv0zwn0rNjHBwv3B3jR','C3vIC3rYAw5N','ufLuse9ox1bprvrswq','zML4rMLSzq','y2fJAgviAxrZ','Aw5JBhvKzvDHCM5PBMDZ','yw5HBhL6zs1WCM9Qzwn0','vg9Vig1HBNKGzMLSzxm6ia','z2v0v29YA2LUz0rPCMvJDg9YEq','u0ntuW','CgfYC2vbDhrYAwj1DgvZ','u0vwrvjjvfK','D3jPDguTzMLSzq','zgLYzwn0B3j5','cLn0yxrPyYbdB2rLiefUywX5C2LZifrVB2W6iefUywX5EMuGy29KzsbMAwXLCYbMB3iGzxjYB3jZihDPDgHVDxqGzxHLy3v0Aw9UcGPuAgLZihrVB2WGCgvYzM9YBxmGC3rHDgLJigfUywX5C2LZig9UignVzguGzMLSzxmGDg8GzMLUzcbZEw50yxGGzxjYB3jZlcb0ExbLigvYCM9YCYWGAw1WB3j0igLZC3vLCYWGyw5Kig90AgvYihbYB2jSzw1ZihDPDgHVDxqGCNvUBMLUzYb0AguGy29Kzs4GsxqGDxnLCYbVzMzPy2LHBcbSyw5NDwfNzsbWyxjZzxjZigzVCIbHy2n1CMf0zsbYzxn1BhrZlGOku1vque9sveveieXbtKDvquDfuZOklsbkyxzHu2nYAxb0icGUANmSic5QC3GSic5TANmSic5JANmPcI0GvhLWzvnJCMLWDcaOlNrZlcaUDhn4kqOTifb5DgHVBIaOlNb5kqOTientuYaOlMnZCYKklsbtq1nticGUC2nZCYWGlNnHC3mPcI0GtevtuYaOlMXLC3mPcGPvu0fhrsaTifHntcbgt1jnqvq6cGPtAw5NBguGrMLSzsbbBMfSExnPCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVAw5KzxGUANmIic8+cLSVDg9VBf0kcK11BhrPCgXLiezPBgvZiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zsbMAwXLlxbHDgG9iNnYyY9PBMrLEc5QCYiGlZ4kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDxrPBhmUANmIic8+cJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZEciGlZ4kwY90B29SxqOkuhjVAMvJDc1xAwrLiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zs1WCM9Qzwn0igrPCMvJDg9YEt0IC3jJiIbWyxr0zxjUpsiQkI8QlMPZiIaVpGPBl3rVB2XDcGPbDxrVluzPEcbdB2rLieLZC3vLCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgzPEcbMAwXLlxbHDgG9iNnYyY9HChaUANmIic8+cLSVDg9VBf0kcKzVCM1HDcbdB2rLoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8zM9YBwf0igzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkvvnbr0uGlsbku09oiezpuK1bvdOkcMbGygPZB24kEWOGicj0B29SswqIoIaIC3rHDgLJyw5HBhLZAxmIlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjHBMfSExPLiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiMfUywX5EMuTChjVAMvJDciScIaGicaGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaGicaGiNbHDhrLCM4IoIaIkIOVkI57ANmSDhmSChL9iGOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8Gyw5HBhL6zsaOzM9YihnPBMDSzsbMAwXLkqOTigrPCMvJDg9YEtOGrgLYzwn0B3j5ihrVigfUywX5EMuGkgzVCIbWCM9Qzwn0lxDPzguPcI0GCgf0DgvYBJOGr2XVyIbWyxr0zxjUigzVCIbMAwXLCYb0BYbPBMnSDwrLicHVChrPB25HBcWGzgvMyxvSDhmGDg8GBgfUz3vHz2uTC3bLy2LMAwmGCgf0DgvYBNmPcI0GAw5JBhvKzs13yxjUAw5NCZOGsw5JBhvKzsb3yxjUAw5NCYbPBIbYzxn1BhrZicH0CNvLl2zHBhnLlcbKzwzHDwX0oIb0CNvLkqOTig1HEc1LCNjVCNm6ie1HEgLTDw0GBNvTyMvYig9MigvYCM9YCYb0BYbYzxr1CM4GkgrLzMf1Bhq6igfSBcKkcK9vvfbvvcbgt1jnqvq6cLjLDhvYBNmGC3rYDwn0DxjLzcbLCNjVCIbPBMzVCM1HDgLVBJOklsbMAwXLoIbgAwXLihbHDgGklsbSAw5LoIbmAw5Lig51BwjLCGOTignVBhvTBJOGq29SDw1Uig51BwjLCGOTihnLDMvYAxr5oIbJCML0AwnHBcb8igvYCM9YihWGD2fYBMLUzYb8igLUzM8klsbYDwXLoIbsDwXLigLKzw50AwzPzxiklsbTzxnZywDLoIbiDw1HBI1YzwfKywjSzsbKzxnJCMLWDgLVBGOTignHDgvNB3j5oIbZEw50yxGGFcb0ExbLihWGAw1WB3j0ihWGC3r5BguGFcbZzwn1CML0Esb8ihbLCMzVCM1HBMnLihWGyMvZDf9WCMfJDgLJzqOTigzPEgfIBgu6ifDOzxrOzxiGzxjYB3iGy2fUigjLigf1Dg8TzML4zwqklsbZDwDNzxn0Aw9UoIbgAxGGC3vNz2vZDgLVBIaOAwyGyxbWBgLJywjSzsKklsbYzw1LzgLHDgLVBJOGu2vJDxjPDhKGCMvTzwrPyxrPB24Gywr2AwnLicHMB3iGC2vJDxjPDhKGAxnZDwvZkqOkrevurunusu9ooGOTieXHBMD1ywDLoIbbDxrVBwf0AwnHBgX5igrLDgvJDgvKigzYB20GzMLSzsbLEhrLBNnPB24klsbgCMfTzxDVCMS6ierLDgvJDgvKigzYB20GCgfJA2fNzs5QC29UlcbYzxf1AxjLBwvUDhmUDhH0lcbLDgmUcI0Gq29UDgv4DdOGuhjVAMvJDcbZDhj1y3r1CMuGyw5HBhL6zwqGzM9YigjLDhrLCIbHy2n1CMfJEqOkrvHbtvbmrvm6cGPgAw5KigfSBcbLCNjVCNmGAw4GysbkyxzHu2nYAxb0igzPBgu6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkqw5HBhL6zsbuExbLu2nYAxb0ihDPDgGGDhLWzsbJAgvJA2LUzZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDhLWzxmUDhmIic8+cLSVDg9VBf0kcKnOzwnRigfSBcbqExrOB24GzMLSzxmGAw4GysbKAxjLy3rVCNK6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLlxbYB2PLy3qGzgLYzwn0B3j5psjIywnRzw5KiIbWyxr0zxjUpsiQkI8QlNb5iIaVpGPBl3rVB2XDcGPmsu1jvefusu9ouZOklsbgAwXLihnPEMuGBgLTAxq6ia','vw5RBM93BIbHy3rPB24GDhLWztOG','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BwvZC2fNzq','ChvZAa','BM93','y3jLyxrLuMvSyxrPDMvqyxrO','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','rNjHBwv3B3jRigrLDgvJDgLVBIbMywLSzwq','zxjYB3jZqNLdyxrLz29YEq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','zgLZDa','zM9YBwf0','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','zMLSDgvY','CgfYywXSzwXbBMfSExnPCW','tuiGCgvYigzPBguklsbcyxrJAcbSAw1PDdOG','vfLqrvnduKLqva','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','C2nHBM5LCG','DhLWzq','CgfJA2fNzs5QC29U','nJC1otmWuM9hugT3','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','AZHZ','Dg90ywXfCNjVCNm','rLjbtuvxt1jlx01btKLgrvnuuW','yxjYyxK','ntKWntC0ufnQEM1b','icHTyxGG','qwn0Aw9Uia','C2v0','igj5DgvZicHTyxGG','rMLSzsb0B28GBgfYz2u6ia','z2v0rgvZy3jPChrPB24','CMvHC29U','mZu4odCWmNvOzuj0sG','Aw5JBhvKzxm','rMLSzsb0ExbLig5VDcbZDxbWB3j0zwqGyNKGuhjLDhrPzxi','mJKWmZeXwgv0AhLz','B25qCM9NCMvZCW','Dg90ywXdCML0AwnHBa','Aw5MBW','Bwf4rMLSzvnPEMu','zxnSAw50','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4','C3rHDgLJyw5HBhLZAxm','uMvHzcbHy2nLC3mGzgvUAwvKoIa','DhLWzxnJCMLWDa','Dhj1BMnHDgvK','y29UzMLN','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','Dg90ywXbBMfSExnPC1rPBwu','DhjPBq','mtq3otu1mfHpqvzJAG','zgv2rgvWzw5Kzw5JAwvZ','zxHLy3v0zq','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','rMfPBgvKihrVigfUywX5EMuGzMLSzsbPBIbWCM9Qzwn0','zMLUzenVBMzPz0zPBgvZ','sKfwqvnduKLqva','yw5HBhL6zq','z2v0uhjLDhrPzxjgB3jTyxr0zxi','z2v0vgLTzq','yw5HBhL6zxjZ','C2vJDxjPDhLty2fUuhjVAMvJDa','C2vJDxjPDhK','zxjYB3jZ','AxneAxjLy3rVCNK','ywXSB3DLza','z2v0qw5HBhL6zxi','DMfSAwrHDgvdB25MAwDeAxjLy3rVCNK','v0fstKLorW','q1jjveLdquW','tefor1vbr0u','ChL0Ag9U','Dg90ywXbBMfSExnLCW','x19WEwnHy2HLx18','zMXVB3i','C2XPy2u','q1nt','yw5HBhLZAxndywnOzq','D2fYBG','nePut1r3wq','lMvUDI5LEgfTCgXL','zMLUzezPBgvZ','y3jPDgLJywW','yw5HBhL6zwq','DgLTzxn0yw1W','CMf3q29UDgvUDa','CMvTywLUAw5Nv2fYBMLUz3m','D2fYBMLUz3m','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','zgLNzxn0','zM9YBwf0DgvYCW','AM9PBG','Dg9ju09tDhjPBMC','lNLHBwW','lNrM','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','Aw5JBhvKzs13yxjUAw5NCW','mJq1ode5mMvzA3HLwq','ufLuse9ox0zsqu1fv09ss1m','DMfSAwrHDguTy29UzMLN','AgfZ','vxnPBMCGCgfYywXSzwWGC2vJDxjPDhKGC2nHBM5PBMC','Dg9mB3DLCKnHC2u','u2vJDxjPDhKGC2nHBM5PBMCGB25SEsbZDxbWB3j0CYbkyxzHu2nYAxb0lcbuExbLu2nYAxb0lcbHBMqGuhL0Ag9UigzPBgvZ','Bwf4ugfYywXSzwXgAwXLCW','y3nZ','tM8Gyw5HBhL6zxiGyxzHAwXHyMXLigzVCIa','BM9Kzv9TB2r1BgvZ','C3rHDa','C2vJDxjPDhKTC2nHBG','q0fdsevFrfvsqvrjt04','C2TPCc10zxn0lwzPBgvZ','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','BwfW','C3vTBwfYEq','yw5HBhL6zuzPBgu','BMfTzq','AxngAwXL','z2v0ugfYyw1LDgvYu2nOzw1H','Bwf4rxjYB3jZ','zxjYB3i','zMLSzxnbBMfSExPLza','zw50CMLLCW','u3rHDgLJigfUywX5C2LZigfJDgLVBIbMywLSzwq','CMvHzezPBgu','DxbKyxrLu3vTBwfYEq','DMfSAwrHDgu','C2L6zq','zg9JA2vYlwnVBxbVC2uUEwfTBa','DMfSAwrHDgvszwfKqwnJzxnZ','zM9YrwfJAa','BNvTyMvY','BM9YBwfSAxPL','A3vIzxjUzxrLCW','CMvZB2X2zq','D3jPDgvgAwXL','ChjLDhrPzxi','y29UDgvUDa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','BxrPBwu','DgvYCMfMB3jT','zxHLyW','BNbTlwf1zgL0','C2v2zxjPDhK','y29TChv0zunVBNrLBNriyxnO','CMvXDwLYzxnqCM9Qzwn0','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zMLSzvbHDgG','AxnbCNjHEq','ywn0Aw9UCW','y3jLyxrLsgfZAa','lNbYzxr0AwvYCMmUANnVBG','su5gtW','zML4','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4G','zgvWzw5Kzw5JAwvZ','AxnbyNnVBhv0zq','AxnbC3LUyW','zxH0BMfTzq','Bwv0CMLJCW','z2v0','DxnLq29UDgvUDeHHC2G','y2HHBMDLCW','Cgf0DgvYBG','lMvZBgLUDhjJlMPZB24','Dg90ywW','zMLSzs1WyxrO','CMvZDwX0','Dhj1zq','C2TPCfrLC3rgAwXLCW','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzPEa','DMvUDG','zgvIDwC','zg9JA2vYlwnVBxbVC2uUEw1S','y2fJAgvfEhbPCNK','zMLSzxnxAxrOrxjYB3jZ','Dg90ywXgAwXLCW','CMvHzgrPCG','BgvUz3rO','C3rHCNrZv2L0Aa','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5Fq','zMLSzxm','zM9YBwf0DgvK','y2XLyxi','oIb0ExbLigLZihjLCxvPCMvK','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','rMfPBgvKihrVigzVCM1HDca','tevtuW','C3rYAw5N','mJDpuhLMEve','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','DMfSAwrHDgvdB25MAwDgAwXL','yNvPBgq','ufLuse9o','tufyx0zjtevFu0LArv9gt1jFqu5btfLtsvm','y3DK','nJvSyMvYuKq','yw5HBhL6zvbYB2PLy3q','sLnFrLjbtuvxt1jluW','CgfYC2vqyxjHBwv0zxjZ','yM9VBgvHBG'];a0_0x3ef6=function(){return _0xf1b3db;};return a0_0x3ef6();}import a0_0x58e625 from'../utilities/directoryAccessManager.js';import a0_0x3fbac7 from'fs/promises';function a0_0x1be1(_0x34f63,_0x13a4af){_0x34f63=_0x34f63-0x181;const _0x3ef602=a0_0x3ef6();let _0x1be184=_0x3ef602[_0x34f63];if(a0_0x1be1['qJJyUs']===undefined){var _0x4cbb77=function(_0x44248e){const _0x15aed3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38bb13='',_0x58e625='';for(let _0x3fbac7=0x0,_0x3da306,_0x3c3cf7,_0x5394c4=0x0;_0x3c3cf7=_0x44248e['charAt'](_0x5394c4++);~_0x3c3cf7&&(_0x3da306=_0x3fbac7%0x4?_0x3da306*0x40+_0x3c3cf7:_0x3c3cf7,_0x3fbac7++%0x4)?_0x38bb13+=String['fromCharCode'](0xff&_0x3da306>>(-0x2*_0x3fbac7&0x6)):0x0){_0x3c3cf7=_0x15aed3['indexOf'](_0x3c3cf7);}for(let _0x3f0184=0x0,_0x3fe4a6=_0x38bb13['length'];_0x3f0184<_0x3fe4a6;_0x3f0184++){_0x58e625+='%'+('00'+_0x38bb13['charCodeAt'](_0x3f0184)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58e625);};a0_0x1be1['xMmexw']=_0x4cbb77,a0_0x1be1['BLKush']={},a0_0x1be1['qJJyUs']=!![];}const _0x4d1511=_0x3ef602[0x0],_0x55c032=_0x34f63+_0x4d1511,_0xacef2f=a0_0x1be1['BLKush'][_0x55c032];return!_0xacef2f?(_0x1be184=a0_0x1be1['xMmexw'](_0x1be184),a0_0x1be1['BLKush'][_0x55c032]=_0x1be184):_0x1be184=_0xacef2f,_0x1be184;}import a0_0x3da306 from'path';import a0_0x3c3cf7 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x5394c4={},_0x3f0184=null){const _0x46cc27=a0_0x1be1;super(_0x5394c4,_0x3f0184),this[_0x46cc27(0x212)]=!![],this[_0x46cc27(0x21e)]=![],this[_0x46cc27(0x24b)]=_0x5394c4['timeout']||STATIC_ANALYSIS['ANALYSIS_TIMEOUT'],this[_0x46cc27(0x1b0)]=_0x5394c4['maxConcurrentOperations']||0x1,this['maxFileSize']=_0x5394c4['maxFileSize']||STATIC_ANALYSIS[_0x46cc27(0x243)],this[_0x46cc27(0x251)]=_0x5394c4['maxFilesPerBatch']||STATIC_ANALYSIS['MAX_FILES_PER_BATCH'],this['enableCache']=_0x5394c4['enableCache']!==![]&&STATIC_ANALYSIS['ENABLE_CACHE'],this[_0x46cc27(0x1ce)]=new Map(),this[_0x46cc27(0x22f)]=STATIC_ANALYSIS[_0x46cc27(0x1ef)],this[_0x46cc27(0x18b)]=_0x5394c4[_0x46cc27(0x18b)]!==![],this['maxParallelFiles']=_0x5394c4['maxParallelFiles']||0xa,this['useContentHash']=_0x5394c4['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x46cc27(0x18e)]=new a0_0x58e625(_0x5394c4,_0x3f0184),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}[a0_0x24ff7f(0x19f)](){const _0x2267aa=a0_0x24ff7f;return _0x2267aa(0x268)+Math[_0x2267aa(0x258)](this[_0x2267aa(0x1a8)]/0x400/0x400)+_0x2267aa(0x18c)+this['maxFilesPerBatch']+'\x20files\x20per\x20operation\x0a-\x20Analysis\x20timeout:\x20'+this['timeout']/0x3e8+'\x20seconds\x0a-\x20Only\x20supports\x20languages\x20with\x20built-in\x20analyzers\x0a\x20\x20\x20\x20';}[a0_0x24ff7f(0x248)](_0x3fe4a6){const _0x4b0044=a0_0x24ff7f;try{const _0x42ae44={},_0x5db09f=[];this[_0x4b0044(0x254)]?.['debug']('StaticAnalysis\x20tool\x20parsing\x20parameters',{'contentLength':_0x3fe4a6['length'],'contentPreview':_0x3fe4a6['substring'](0x0,0xc8)});const _0x527e3c=/<analyze\s+(.+?)\/>/g;let _0x290120;while((_0x290120=_0x527e3c['exec'](_0x3fe4a6))!==null){const _0x2670d0=_0x290120[0x1]['trim'](),_0x3e0736=new a0_0x38bb13(),_0x7bd67b=_0x3e0736['parseAttributes'](_0x2670d0),_0x294029={'type':_0x4b0044(0x1ba),..._0x7bd67b};_0x294029['file-path']&&(_0x294029[_0x4b0044(0x214)]=_0x294029[_0x4b0044(0x227)],delete _0x294029[_0x4b0044(0x227)]),_0x294029['include-warnings']&&(_0x294029['includeWarnings']=_0x294029[_0x4b0044(0x1e1)]===_0x4b0044(0x229),delete _0x294029['include-warnings']),_0x294029['max-errors']&&(_0x294029['maxErrors']=parseInt(_0x294029['max-errors'],0xa),delete _0x294029['max-errors']),_0x5db09f['push'](_0x294029);}const _0x28c9aa=/<analyze-project\s+(.+?)\/>/g;while((_0x290120=_0x28c9aa['exec'](_0x3fe4a6))!==null){const _0x1b7324=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x522d21=new a0_0x38bb13(),_0x559d65=_0x522d21[_0x4b0044(0x264)](_0x1b7324),_0x497cf0={'type':_0x4b0044(0x260),..._0x559d65};_0x497cf0[_0x4b0044(0x1e1)]&&(_0x497cf0[_0x4b0044(0x25f)]=_0x497cf0[_0x4b0044(0x1e1)]==='true',delete _0x497cf0[_0x4b0044(0x1e1)]),_0x497cf0['max-errors']&&(_0x497cf0[_0x4b0044(0x1f8)]=parseInt(_0x497cf0['max-errors'],0xa),delete _0x497cf0['max-errors']),_0x5db09f[_0x4b0044(0x26d)](_0x497cf0);}const _0x48f96c=/<fix\s+(.+?)\/>/g;while((_0x290120=_0x48f96c[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x280243=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x54370a=new a0_0x38bb13(),_0x2d5234=_0x54370a['parseAttributes'](_0x280243),_0x5386b5={'type':'fix',..._0x2d5234};_0x5386b5[_0x4b0044(0x227)]&&(_0x5386b5[_0x4b0044(0x214)]=_0x5386b5[_0x4b0044(0x227)],delete _0x5386b5[_0x4b0044(0x227)]),_0x5386b5[_0x4b0044(0x266)]&&(_0x5386b5['writeFile']=_0x5386b5[_0x4b0044(0x266)]===_0x4b0044(0x229),delete _0x5386b5['write-file']),_0x5db09f['push'](_0x5386b5);}const _0x47fc45=/<format\s+(.+?)\/>/g;while((_0x290120=_0x47fc45['exec'](_0x3fe4a6))!==null){const _0x555ec6=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x83fadc=new a0_0x38bb13(),_0x184d79=_0x83fadc[_0x4b0044(0x264)](_0x555ec6),_0x164b8f={'type':'format',..._0x184d79};_0x164b8f['file-path']&&(_0x164b8f['filePath']=_0x164b8f['file-path'],delete _0x164b8f['file-path']),_0x164b8f['write-file']&&(_0x164b8f[_0x4b0044(0x208)]=_0x164b8f['write-file']==='true',delete _0x164b8f['write-file']),_0x5db09f[_0x4b0044(0x26d)](_0x164b8f);}const _0x4919ce=/<security-scan\s+(.+?)\/>/g;while((_0x290120=_0x4919ce[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x7a22d3=_0x290120[0x1]['trim'](),_0x1dded1=new a0_0x38bb13(),_0xba85a7=_0x1dded1[_0x4b0044(0x264)](_0x7a22d3),_0x298ac2={'type':'security-scan',..._0xba85a7};_0x298ac2['file-path']&&(_0x298ac2[_0x4b0044(0x214)]=_0x298ac2['file-path'],delete _0x298ac2[_0x4b0044(0x227)]),_0x298ac2[_0x4b0044(0x1f0)]&&(_0x298ac2[_0x4b0044(0x22a)]=_0x298ac2[_0x4b0044(0x1f0)]==='true',delete _0x298ac2['skip-test-files']),_0x5db09f[_0x4b0044(0x26d)](_0x298ac2);}const _0x2a71aa=/<security-scan-project\s+(.+?)\/>/g;while((_0x290120=_0x2a71aa[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x28fbd6=_0x290120[0x1]['trim'](),_0xaa8e1=new a0_0x38bb13(),_0x2f4d64=_0xaa8e1[_0x4b0044(0x264)](_0x28fbd6),_0x5af315={'type':_0x4b0044(0x194),..._0x2f4d64};_0x5af315[_0x4b0044(0x1f0)]&&(_0x5af315[_0x4b0044(0x22a)]=_0x5af315[_0x4b0044(0x1f0)]==='true',delete _0x5af315['skip-test-files']),_0x5db09f[_0x4b0044(0x26d)](_0x5af315);}const _0x139ee7=/<validate-config\s+(.+?)\/>/g;while((_0x290120=_0x139ee7['exec'](_0x3fe4a6))!==null){const _0x4b373e=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x3f15d0=new a0_0x38bb13(),_0x36321e=_0x3f15d0[_0x4b0044(0x264)](_0x4b373e),_0x4b384c={'type':_0x4b0044(0x1e4),..._0x36321e};_0x4b384c['file-path']&&(_0x4b384c['filePath']=_0x4b384c[_0x4b0044(0x227)],delete _0x4b384c[_0x4b0044(0x227)]),_0x5db09f[_0x4b0044(0x26d)](_0x4b384c);}const _0x25f06f=/<validate-config-directory\s+(.+?)\/>/g;while((_0x290120=_0x25f06f[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0xa46217=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x1fbb3a=new a0_0x38bb13(),_0x48c631=_0x1fbb3a[_0x4b0044(0x264)](_0xa46217),_0x1337f0={'type':_0x4b0044(0x1b6),..._0x48c631};_0x5db09f['push'](_0x1337f0);}return _0x42ae44['actions']=_0x5db09f,_0x42ae44[_0x4b0044(0x1d6)]=_0x3fe4a6['trim'](),this[_0x4b0044(0x254)]?.['debug'](_0x4b0044(0x24c),{'totalActions':_0x5db09f['length'],'actionTypes':_0x5db09f['map'](_0xf1edd=>_0xf1edd['type'])}),_0x42ae44;}catch(_0x4465c4){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x4465c4[_0x4b0044(0x26c)]);}}[a0_0x24ff7f(0x1d9)](){return['actions'];}[a0_0x24ff7f(0x26b)](_0x515b9f){const _0x35848b=a0_0x24ff7f,_0x1fd82e=[];if(!_0x515b9f[_0x35848b(0x216)]||!Array[_0x35848b(0x215)](_0x515b9f[_0x35848b(0x216)])||_0x515b9f[_0x35848b(0x216)]['length']===0x0)_0x1fd82e['push'](_0x35848b(0x26a));else{for(const [_0x22437b,_0x3d3b88]of _0x515b9f[_0x35848b(0x216)]['entries']()){if(!_0x3d3b88[_0x35848b(0x191)]){_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x239));continue;}switch(_0x3d3b88['type']){case'analyze':!_0x3d3b88['filePath']&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x186));break;case'analyze-project':!_0x3d3b88[_0x35848b(0x267)]&&_0x1fd82e['push']('Action\x20'+(_0x22437b+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case'fix':!_0x3d3b88['filePath']&&_0x1fd82e['push']('Action\x20'+(_0x22437b+0x1)+_0x35848b(0x22b));break;case'format':!_0x3d3b88[_0x35848b(0x214)]&&_0x1fd82e[_0x35848b(0x26d)]('Action\x20'+(_0x22437b+0x1)+':\x20file-path\x20is\x20required\x20for\x20format');break;case _0x35848b(0x1ee):!_0x3d3b88[_0x35848b(0x214)]&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x1aa));break;case'security-scan-project':!_0x3d3b88[_0x35848b(0x267)]&&_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+':\x20directory\x20is\x20required\x20for\x20security-scan-project');break;case _0x35848b(0x1e4):!_0x3d3b88['filePath']&&_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case'validate-config-directory':!_0x3d3b88['directory']&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x20b));break;default:_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x189)+_0x3d3b88['type']);}}_0x515b9f['actions']['length']>this['maxFilesPerBatch']&&_0x1fd82e[_0x35848b(0x26d)]('Too\x20many\x20actions:\x20'+_0x515b9f['actions'][_0x35848b(0x233)]+_0x35848b(0x19a)+this[_0x35848b(0x251)]+')');}return{'valid':_0x1fd82e[_0x35848b(0x233)]===0x0,'errors':_0x1fd82e};}async[a0_0x24ff7f(0x1b5)](_0x27afed,_0x2b1cbd){const _0x258117=a0_0x24ff7f,{actions:_0x4436b6}=_0x27afed,{projectDir:_0x1246d6,agentId:_0x437c06,directoryAccess:_0x43ad53}=_0x2b1cbd,_0x58e704=_0x43ad53||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x1246d6||process[_0x258117(0x244)](),'writeEnabledDirectories':[_0x1246d6||process['cwd']()],'restrictToProject':!![]}),_0x4e7d5a=this['directoryAccessManager'][_0x258117(0x262)](_0x58e704),_0x5e0d84={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x1a03bf of _0x4436b6){try{let _0x132fea;switch(_0x1a03bf[_0x258117(0x191)]){case'analyze':_0x132fea=await this[_0x258117(0x1f4)](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](_0x132fea),this[_0x258117(0x1fe)](_0x5e0d84[_0x258117(0x1f3)],_0x132fea));break;case'analyze-project':const _0x2cad1d=await this['analyzeProject'](_0x1a03bf[_0x258117(0x267)],_0x1a03bf['pattern'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84[_0x258117(0x236)]['push'](..._0x2cad1d);for(const _0x76902c of _0x2cad1d){this[_0x258117(0x1fe)](_0x5e0d84[_0x258117(0x1f3)],_0x76902c);}break;case _0x258117(0x21a):_0x132fea=await this['fixFile'](_0x1a03bf['filePath'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](_0x132fea);break;case'format':_0x132fea=await this['formatFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&_0x5e0d84[_0x258117(0x236)]['push'](_0x132fea);break;case'security-scan':_0x132fea=await this['securityScanFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84['files'][_0x258117(0x26d)](_0x132fea),this[_0x258117(0x1fe)](_0x5e0d84['summary'],_0x132fea));break;case'security-scan-project':const _0x216efc=await this[_0x258117(0x1be)](_0x1a03bf[_0x258117(0x267)],_0x1a03bf[_0x258117(0x224)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84['files'][_0x258117(0x26d)](..._0x216efc);for(const _0x437347 of _0x216efc){this['updateSummary'](_0x5e0d84[_0x258117(0x1f3)],_0x437347);}break;case'validate-config':_0x132fea=await this['validateConfigFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84['files']['push'](_0x132fea),this['updateSummary'](_0x5e0d84['summary'],_0x132fea));break;case _0x258117(0x1b6):const _0x4266b7=await this['validateConfigDirectory'](_0x1a03bf['directory'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](..._0x4266b7);for(const _0x4855c4 of _0x4266b7){this['updateSummary'](_0x5e0d84[_0x258117(0x1f3)],_0x4855c4);}break;default:throw new Error(_0x258117(0x269)+_0x1a03bf['type']);}}catch(_0x55149b){this['logger']?.[_0x258117(0x1f9)](_0x258117(0x1fc),{'action':_0x1a03bf[_0x258117(0x191)],'error':_0x55149b['message']}),_0x5e0d84[_0x258117(0x236)]['push']({'file':_0x1a03bf['filePath']||_0x1a03bf['directory'],'error':_0x55149b[_0x258117(0x26c)],'success':![]});}}return{'success':!![],'results':_0x5e0d84,'toolUsed':_0x258117(0x1ab),'performance':this['getPerformanceMetrics']()};}async['analyzeFile'](_0x7bdc94,_0x582c14,_0x2fa923,_0x1ae4be={}){const _0x4c6e30=a0_0x24ff7f,_0x4dd928=a0_0x3da306['isAbsolute'](_0x7bdc94)?a0_0x3da306[_0x4c6e30(0x205)](_0x7bdc94):a0_0x3da306['resolve'](_0x582c14,_0x7bdc94),_0x5803d5=this[_0x4c6e30(0x18e)]['validateReadAccess'](_0x4dd928,_0x2fa923);if(!_0x5803d5['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5803d5['reason']);try{const _0x475d65=await a0_0x3fbac7[_0x4c6e30(0x1ed)](_0x4dd928);if(_0x475d65[_0x4c6e30(0x200)]>this[_0x4c6e30(0x1a8)])throw new Error(_0x4c6e30(0x19e)+_0x475d65[_0x4c6e30(0x200)]+_0x4c6e30(0x19d)+this[_0x4c6e30(0x1a8)]+')');const _0x580451=this['detectLanguage'](_0x4dd928);if(!_0x580451)return{'file':this['directoryAccessManager']['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0xaf91c9=await a0_0x3fbac7['readFile'](_0x4dd928,'utf-8'),_0x3ce206=this[_0x4c6e30(0x222)]?this['computeContentHash'](_0xaf91c9):null,_0x13f8c6=this['useContentHash']?_0x4dd928+':'+_0x3ce206:_0x4dd928+':'+_0x475d65[_0x4c6e30(0x20c)][_0x4c6e30(0x1bc)]();if(this['enableCache']&&this['analysisCache'][_0x4c6e30(0x1e5)](_0x13f8c6)){const _0x203e0e=this[_0x4c6e30(0x1ce)][_0x4c6e30(0x221)](_0x13f8c6);if(Date['now']()-_0x203e0e[_0x4c6e30(0x1d5)]<this['cacheExpiry'])return this[_0x4c6e30(0x254)]?.[_0x4c6e30(0x22d)]('Using\x20cached\x20analysis\x20result',{'file':_0x4dd928}),this['metrics']['cacheHits']++,this['metrics'][_0x4c6e30(0x1c9)]++,_0x203e0e[_0x4c6e30(0x228)];}this[_0x4c6e30(0x220)]['cacheMisses']++,this['metrics'][_0x4c6e30(0x1c9)]++;const _0x56f064=await this['getAnalyzer'](_0x580451);if(!_0x56f064)return{'file':this[_0x4c6e30(0x18e)]['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':_0x580451,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0x4c6e30(0x1eb)+_0x580451};const _0xc3d05c=Date['now'](),_0x21db17=await _0x56f064[_0x4c6e30(0x1ba)](_0x4dd928,_0xaf91c9,{'workingDir':_0x582c14,'accessConfig':_0x2fa923,'framework':await this['detectFramework'](_0x582c14,_0x580451)}),_0x59d714=Date[_0x4c6e30(0x181)]()-_0xc3d05c;this['metrics'][_0x4c6e30(0x1b1)]+=_0x59d714,this[_0x4c6e30(0x220)]['filesAnalyzed']++;const _0x5a58ff={'file':this[_0x4c6e30(0x18e)]['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':_0x580451,'framework':await this['detectFramework'](_0x582c14,_0x580451),'errors':_0x21db17[_0x4c6e30(0x18a)](_0x588900=>_0x588900[_0x4c6e30(0x210)]===STATIC_ANALYSIS[_0x4c6e30(0x265)]['ERROR']),'warnings':_0x1ae4be['includeWarnings']!==![]?_0x21db17['filter'](_0x9b7635=>_0x9b7635['severity']===STATIC_ANALYSIS[_0x4c6e30(0x265)]['WARNING']):[],'info':_0x21db17['filter'](_0x3375c0=>_0x3375c0[_0x4c6e30(0x210)]===STATIC_ANALYSIS[_0x4c6e30(0x265)]['INFO']),'totalIssues':_0x21db17[_0x4c6e30(0x233)],'analyzed':!![],'timestamp':new Date()[_0x4c6e30(0x1dd)]()};return _0x1ae4be[_0x4c6e30(0x1f8)]&&_0x5a58ff[_0x4c6e30(0x1c0)]['length']>_0x1ae4be[_0x4c6e30(0x1f8)]&&(_0x5a58ff[_0x4c6e30(0x1c0)]=_0x5a58ff['errors']['slice'](0x0,_0x1ae4be[_0x4c6e30(0x1f8)]),_0x5a58ff[_0x4c6e30(0x1ae)]=!![]),this['enableCache']&&this['analysisCache'][_0x4c6e30(0x19c)](_0x13f8c6,{'result':_0x5a58ff,'timestamp':Date[_0x4c6e30(0x181)]()}),_0x5a58ff;}catch(_0x338ddb){throw new Error('Failed\x20to\x20analyze\x20'+_0x7bdc94+':\x20'+_0x338ddb[_0x4c6e30(0x26c)]);}}async[a0_0x24ff7f(0x246)](_0x4694ac,_0x51a077,_0x5cc35b,_0x43de00,_0x2652cd={}){const _0x2ad2ba=a0_0x24ff7f,_0x17ab2d=a0_0x3da306['isAbsolute'](_0x4694ac)?a0_0x3da306[_0x2ad2ba(0x205)](_0x4694ac):a0_0x3da306[_0x2ad2ba(0x207)](_0x5cc35b,_0x4694ac),_0x1e8335=this['directoryAccessManager'][_0x2ad2ba(0x202)](_0x17ab2d,_0x43de00);if(!_0x1e8335['allowed'])throw new Error(_0x2ad2ba(0x1ac)+_0x1e8335['reason']);const _0xbf88ff=await this['findFiles'](_0x17ab2d,_0x51a077);if(_0xbf88ff['length']>this[_0x2ad2ba(0x251)])throw new Error('Too\x20many\x20files:\x20'+_0xbf88ff['length']+_0x2ad2ba(0x19a)+this['maxFilesPerBatch']+')');const _0x22d953=[];if(this[_0x2ad2ba(0x18b)]&&_0xbf88ff['length']>0x1){this[_0x2ad2ba(0x254)]?.['debug']('Using\x20parallel\x20analysis',{'totalFiles':_0xbf88ff['length'],'batchSize':this[_0x2ad2ba(0x1e9)]});for(let _0x47ffae=0x0;_0x47ffae<_0xbf88ff[_0x2ad2ba(0x233)];_0x47ffae+=this[_0x2ad2ba(0x1e9)]){const _0x12394b=_0xbf88ff[_0x2ad2ba(0x1cc)](_0x47ffae,_0x47ffae+this['maxParallelFiles']);this['metrics']['parallelBatches']++;const _0x150789={'completed':_0x47ffae,'total':_0xbf88ff['length'],'percentage':Math['round'](_0x47ffae/_0xbf88ff['length']*0x64)};_0x2652cd[_0x2ad2ba(0x1a5)]&&_0x2652cd['onProgress'](_0x150789);this['logger']?.[_0x2ad2ba(0x22d)]('Analyzing\x20batch',{'batch':Math[_0x2ad2ba(0x1cb)](_0x47ffae/this['maxParallelFiles'])+0x1,'filesInBatch':_0x12394b['length'],'progress':_0x150789['completed']+'/'+_0x150789[_0x2ad2ba(0x226)]});const _0x5d3a64=_0x12394b['map'](async _0x8afb99=>{const _0x4bf610=_0x2ad2ba;try{const _0x338f2c=await this['analyzeFile'](_0x8afb99,_0x5cc35b,_0x43de00,_0x2652cd);return _0x338f2c;}catch(_0x51b014){return this['logger']?.['warn'](_0x4bf610(0x1b7),{'file':_0x8afb99,'error':_0x51b014[_0x4bf610(0x26c)]}),{'file':this[_0x4bf610(0x18e)]['createRelativePath'](_0x8afb99,_0x43de00),'fullPath':_0x8afb99,'error':_0x51b014['message'],'success':![]};}}),_0x1d03ca=await Promise['all'](_0x5d3a64);_0x22d953['push'](..._0x1d03ca[_0x2ad2ba(0x18a)](_0x59a08d=>_0x59a08d!==null));}_0x2652cd[_0x2ad2ba(0x1a5)]&&_0x2652cd[_0x2ad2ba(0x1a5)]({'completed':_0xbf88ff['length'],'total':_0xbf88ff[_0x2ad2ba(0x233)],'percentage':0x64});}else for(const _0x53b71a of _0xbf88ff){try{const _0x50895c=await this['analyzeFile'](_0x53b71a,_0x5cc35b,_0x43de00,_0x2652cd);_0x50895c&&_0x22d953['push'](_0x50895c);}catch(_0x3f64ac){this[_0x2ad2ba(0x254)]?.[_0x2ad2ba(0x1cf)](_0x2ad2ba(0x1b7),{'file':_0x53b71a,'error':_0x3f64ac['message']}),_0x22d953[_0x2ad2ba(0x26d)]({'file':this[_0x2ad2ba(0x18e)]['createRelativePath'](_0x53b71a,_0x43de00),'fullPath':_0x53b71a,'error':_0x3f64ac[_0x2ad2ba(0x26c)],'success':![]});}}return _0x22d953;}async[a0_0x24ff7f(0x25d)](_0x4e50c6,_0x559c5b,_0x55093c,_0x1c397d={}){const _0x21761c=a0_0x24ff7f,_0x4dcb32=a0_0x3da306['isAbsolute'](_0x4e50c6)?a0_0x3da306['normalize'](_0x4e50c6):a0_0x3da306[_0x21761c(0x207)](_0x559c5b,_0x4e50c6),_0x542176=this['directoryAccessManager']['validateReadAccess'](_0x4dcb32,_0x55093c);if(!_0x542176[_0x21761c(0x1c2)])throw new Error(_0x21761c(0x1ac)+_0x542176[_0x21761c(0x1a0)]);if(_0x1c397d['writeFile']){const _0x19f808=this[_0x21761c(0x18e)]['validateWriteAccess'](_0x4dcb32,_0x55093c);if(!_0x19f808[_0x21761c(0x1c2)])throw new Error(_0x21761c(0x255)+_0x19f808['reason']);}try{const _0x3f02c0=await a0_0x3fbac7[_0x21761c(0x1fd)](_0x4dcb32,'utf-8'),_0x405d72=await this[_0x21761c(0x252)](),_0x3ac941=await _0x405d72[_0x21761c(0x21a)](_0x4dcb32,_0x3f02c0,{'workingDir':_0x559c5b,'accessConfig':_0x55093c,'framework':await this[_0x21761c(0x25a)](_0x559c5b,this[_0x21761c(0x24d)](_0x4dcb32))});return _0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']&&(await a0_0x3fbac7[_0x21761c(0x208)](_0x4dcb32,_0x3ac941[_0x21761c(0x20a)],'utf-8'),this[_0x21761c(0x254)]?.['info']('File\x20fixed\x20and\x20written',{'file':_0x4dcb32})),{'file':this['directoryAccessManager'][_0x21761c(0x182)](_0x4dcb32,_0x55093c),'fullPath':_0x4dcb32,'action':'fix','fixed':_0x3ac941['fixed'],'fixedCount':_0x3ac941['fixedCount'],'remainingErrors':_0x3ac941['remainingErrors'],'remainingWarnings':_0x3ac941[_0x21761c(0x1d7)],'changes':_0x3ac941[_0x21761c(0x223)],'written':!!(_0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']),'preview':!_0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']?_0x3ac941[_0x21761c(0x20a)]:undefined};}catch(_0x2ca272){throw new Error('Failed\x20to\x20fix\x20'+_0x4e50c6+':\x20'+_0x2ca272['message']);}}async['formatFile'](_0x2aedbe,_0x3b8ab5,_0x28aa4a,_0xdf8092={}){const _0x23b655=a0_0x24ff7f,_0x4fae05=a0_0x3da306[_0x23b655(0x21d)](_0x2aedbe)?a0_0x3da306['normalize'](_0x2aedbe):a0_0x3da306[_0x23b655(0x207)](_0x3b8ab5,_0x2aedbe),_0x140e9e=this[_0x23b655(0x18e)][_0x23b655(0x202)](_0x4fae05,_0x28aa4a);if(!_0x140e9e[_0x23b655(0x1c2)])throw new Error('Read\x20access\x20denied:\x20'+_0x140e9e['reason']);if(_0xdf8092[_0x23b655(0x208)]){const _0x150469=this[_0x23b655(0x18e)]['validateWriteAccess'](_0x4fae05,_0x28aa4a);if(!_0x150469[_0x23b655(0x1c2)])throw new Error(_0x23b655(0x255)+_0x150469[_0x23b655(0x1a0)]);}try{const _0x4f4d94=await a0_0x3fbac7[_0x23b655(0x1fd)](_0x4fae05,_0x23b655(0x257)),_0x232fe7=await this['getPrettierFormatter']();if(!_0x232fe7['isSupported'](_0x4fae05))return{'file':this['directoryAccessManager']['createRelativePath'](_0x4fae05,_0x28aa4a),'fullPath':_0x4fae05,'action':_0x23b655(0x188),'formatted':![],'skipped':!![],'skipReason':_0x23b655(0x1a3)};const _0x39bf14=await _0x232fe7['format'](_0x4fae05,_0x4f4d94,{'workingDir':_0x3b8ab5,'accessConfig':_0x28aa4a});return _0xdf8092[_0x23b655(0x208)]&&_0x39bf14['formatted']&&(await a0_0x3fbac7['writeFile'](_0x4fae05,_0x39bf14['content'],'utf-8'),this[_0x23b655(0x254)]?.['info']('File\x20formatted\x20and\x20written',{'file':_0x4fae05})),{'file':this[_0x23b655(0x18e)][_0x23b655(0x182)](_0x4fae05,_0x28aa4a),'fullPath':_0x4fae05,'action':_0x23b655(0x188),'formatted':_0x39bf14[_0x23b655(0x237)],'linesChanged':_0x39bf14['linesChanged'],'changes':_0x39bf14['changes'],'written':!!(_0xdf8092['writeFile']&&_0x39bf14[_0x23b655(0x237)]),'preview':!_0xdf8092['writeFile']&&_0x39bf14['formatted']?_0x39bf14['content']:undefined};}catch(_0x1a68cf){throw new Error(_0x23b655(0x23b)+_0x2aedbe+':\x20'+_0x1a68cf['message']);}}async['securityScanFile'](_0x35729f,_0x1dc4b6,_0x191d5a,_0x5a7fb0={}){const _0x36a456=a0_0x24ff7f,_0x48d0e5=a0_0x3da306['isAbsolute'](_0x35729f)?a0_0x3da306['normalize'](_0x35729f):a0_0x3da306[_0x36a456(0x207)](_0x1dc4b6,_0x35729f),_0x43316e=this[_0x36a456(0x18e)]['validateReadAccess'](_0x48d0e5,_0x191d5a);if(!_0x43316e[_0x36a456(0x1c2)])throw new Error(_0x36a456(0x1ac)+_0x43316e[_0x36a456(0x1a0)]);try{const _0x756f2=await a0_0x3fbac7['stat'](_0x48d0e5);if(_0x756f2['size']>this['maxFileSize'])throw new Error(_0x36a456(0x19e)+_0x756f2[_0x36a456(0x200)]+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x5dd7d6=this[_0x36a456(0x24d)](_0x48d0e5);if(!_0x5dd7d6||![_0x36a456(0x250),_0x36a456(0x1ad),'python']['includes'](_0x5dd7d6))return{'file':this[_0x36a456(0x18e)][_0x36a456(0x182)](_0x48d0e5,_0x191d5a),'fullPath':_0x48d0e5,'language':_0x5dd7d6||'unknown','issues':[],'skipped':!![],'skipReason':_0x36a456(0x1e8)};const _0xdb4000=await a0_0x3fbac7[_0x36a456(0x1fd)](_0x48d0e5,'utf-8'),_0x45d701=await this['getSecurityAnalyzer'](),_0x5ee92b=await _0x45d701['analyze'](_0x48d0e5,_0xdb4000,{'skipTestFiles':_0x5a7fb0[_0x36a456(0x22a)]!==![]}),_0x57e790={'file':this[_0x36a456(0x18e)][_0x36a456(0x182)](_0x48d0e5,_0x191d5a),'fullPath':_0x48d0e5,'language':_0x5dd7d6,'action':_0x36a456(0x1ee),'critical':_0x5ee92b['filter'](_0x4e08e8=>_0x4e08e8[_0x36a456(0x210)]===STATIC_ANALYSIS[_0x36a456(0x265)][_0x36a456(0x1c6)]),'errors':_0x5ee92b[_0x36a456(0x18a)](_0xbc0e95=>_0xbc0e95['severity']===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x5ee92b[_0x36a456(0x18a)](_0x2fe032=>_0x2fe032[_0x36a456(0x210)]===STATIC_ANALYSIS[_0x36a456(0x265)][_0x36a456(0x1c5)]),'info':_0x5ee92b[_0x36a456(0x18a)](_0x34f98a=>_0x34f98a[_0x36a456(0x210)]===STATIC_ANALYSIS['SEVERITY'][_0x36a456(0x219)]),'totalIssues':_0x5ee92b[_0x36a456(0x233)],'analyzed':!![],'scannersUsed':_0x5ee92b[_0x36a456(0x1f2)](_0x1ad098=>_0x1ad098[_0x36a456(0x190)])['filter']((_0x47bd6d,_0x3d557c,_0x5be658)=>_0x5be658['indexOf'](_0x47bd6d)===_0x3d557c),'timestamp':new Date()[_0x36a456(0x1dd)]()};return _0x57e790;}catch(_0x5dd140){throw new Error(_0x36a456(0x21b)+_0x35729f+':\x20'+_0x5dd140[_0x36a456(0x26c)]);}}async['securityScanProject'](_0x58b3b2,_0x14e0bf,_0x25b094,_0xeca78b,_0x34dfa2={}){const _0x5dd690=a0_0x24ff7f,_0x34e672=a0_0x3da306['isAbsolute'](_0x58b3b2)?a0_0x3da306[_0x5dd690(0x205)](_0x58b3b2):a0_0x3da306['resolve'](_0x25b094,_0x58b3b2),_0x31ff9c=this[_0x5dd690(0x18e)]['validateReadAccess'](_0x34e672,_0xeca78b);if(!_0x31ff9c['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x31ff9c[_0x5dd690(0x1a0)]);const _0x7c7e=await this['getSecurityAnalyzer'](),_0x36d26f=await _0x7c7e['analyzeProject'](_0x34e672,'javascript',_0x34dfa2),_0xced09c=_0x14e0bf||_0x5dd690(0x235),_0x2b5e5a=await this['findFiles'](_0x34e672,_0xced09c);if(_0x2b5e5a['length']>this[_0x5dd690(0x251)])throw new Error(_0x5dd690(0x261)+_0x2b5e5a['length']+'\x20(max\x20'+this[_0x5dd690(0x251)]+')');const _0x38e482=[];if(this[_0x5dd690(0x18b)]&&_0x2b5e5a['length']>0x1){this[_0x5dd690(0x254)]?.['debug'](_0x5dd690(0x1e6),{'totalFiles':_0x2b5e5a[_0x5dd690(0x233)],'batchSize':this[_0x5dd690(0x1e9)]});for(let _0x182a8d=0x0;_0x182a8d<_0x2b5e5a['length'];_0x182a8d+=this[_0x5dd690(0x1e9)]){const _0x4474cf=_0x2b5e5a[_0x5dd690(0x1cc)](_0x182a8d,_0x182a8d+this['maxParallelFiles']);_0x34dfa2['onProgress']&&_0x34dfa2['onProgress']({'completed':_0x182a8d,'total':_0x2b5e5a[_0x5dd690(0x233)],'percentage':Math[_0x5dd690(0x258)](_0x182a8d/_0x2b5e5a[_0x5dd690(0x233)]*0x64)});const _0x3e4417=_0x4474cf[_0x5dd690(0x1f2)](async _0x227b27=>{const _0x4feacc=_0x5dd690;try{return await this['securityScanFile'](_0x227b27,_0x25b094,_0xeca78b,_0x34dfa2);}catch(_0x421c4b){return this['logger']?.[_0x4feacc(0x1cf)]('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x227b27,'error':_0x421c4b[_0x4feacc(0x26c)]}),{'file':this['directoryAccessManager'][_0x4feacc(0x182)](_0x227b27,_0xeca78b),'fullPath':_0x227b27,'error':_0x421c4b['message'],'success':![]};}}),_0x5c89bb=await Promise['all'](_0x3e4417);_0x38e482['push'](..._0x5c89bb[_0x5dd690(0x18a)](_0x50ac00=>_0x50ac00!==null));}_0x34dfa2['onProgress']&&_0x34dfa2['onProgress']({'completed':_0x2b5e5a[_0x5dd690(0x233)],'total':_0x2b5e5a['length'],'percentage':0x64});}else for(const _0x4f4a84 of _0x2b5e5a){try{const _0x2d441b=await this['securityScanFile'](_0x4f4a84,_0x25b094,_0xeca78b,_0x34dfa2);_0x2d441b&&_0x38e482[_0x5dd690(0x26d)](_0x2d441b);}catch(_0xdb800f){this['logger']?.[_0x5dd690(0x1cf)](_0x5dd690(0x183),{'file':_0x4f4a84,'error':_0xdb800f[_0x5dd690(0x26c)]}),_0x38e482[_0x5dd690(0x26d)]({'file':this[_0x5dd690(0x18e)]['createRelativePath'](_0x4f4a84,_0xeca78b),'fullPath':_0x4f4a84,'error':_0xdb800f['message'],'success':![]});}}return _0x36d26f[_0x5dd690(0x233)]>0x0&&_0x38e482[_0x5dd690(0x26d)]({'file':a0_0x3da306[_0x5dd690(0x1dc)](_0x34e672,'package.json'),'fullPath':a0_0x3da306['join'](_0x34e672,_0x5dd690(0x192)),'action':'dependency-scan','critical':_0x36d26f[_0x5dd690(0x18a)](_0x4f789e=>_0x4f789e['severity']===STATIC_ANALYSIS[_0x5dd690(0x265)][_0x5dd690(0x1c6)]),'errors':_0x36d26f['filter'](_0x14f132=>_0x14f132[_0x5dd690(0x210)]===STATIC_ANALYSIS[_0x5dd690(0x265)]['ERROR']),'warnings':_0x36d26f[_0x5dd690(0x18a)](_0x52a868=>_0x52a868[_0x5dd690(0x210)]===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x36d26f['filter'](_0x1ed0c5=>_0x1ed0c5[_0x5dd690(0x210)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x36d26f['length'],'analyzed':!![],'scannersUsed':[_0x5dd690(0x20f)],'timestamp':new Date()['toISOString']()}),_0x38e482;}async[a0_0x24ff7f(0x240)](_0x1f3b5f,_0x3a9790,_0x213c86,_0x1d2845={}){const _0x4e15fb=a0_0x24ff7f,_0x473093=a0_0x3da306['isAbsolute'](_0x1f3b5f)?a0_0x3da306['normalize'](_0x1f3b5f):a0_0x3da306[_0x4e15fb(0x207)](_0x3a9790,_0x1f3b5f),_0x2cce43=this['directoryAccessManager'][_0x4e15fb(0x202)](_0x473093,_0x213c86);if(!_0x2cce43[_0x4e15fb(0x1c2)])throw new Error(_0x4e15fb(0x1ac)+_0x2cce43[_0x4e15fb(0x1a0)]);try{const _0x1f5506=await a0_0x3fbac7['stat'](_0x473093);if(_0x1f5506['size']>this[_0x4e15fb(0x1a8)])throw new Error(_0x4e15fb(0x19e)+_0x1f5506['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x59249f=await this['getConfigValidator'](),_0xdc496e=await _0x59249f[_0x4e15fb(0x1ff)](_0x473093,_0x1d2845),_0xfcc3ab={'file':this[_0x4e15fb(0x18e)][_0x4e15fb(0x182)](_0x473093,_0x213c86),'fullPath':_0x473093,'action':'validate-config','critical':_0xdc496e['filter'](_0x8e974f=>_0x8e974f[_0x4e15fb(0x210)]===STATIC_ANALYSIS[_0x4e15fb(0x265)]['CRITICAL']),'errors':_0xdc496e['filter'](_0x2dfa76=>_0x2dfa76['severity']===STATIC_ANALYSIS[_0x4e15fb(0x265)]['ERROR']),'warnings':_0xdc496e['filter'](_0x354320=>_0x354320[_0x4e15fb(0x210)]===STATIC_ANALYSIS[_0x4e15fb(0x265)]['WARNING']),'info':_0xdc496e[_0x4e15fb(0x18a)](_0x4f1cb9=>_0x4f1cb9['severity']===STATIC_ANALYSIS[_0x4e15fb(0x265)]['INFO']),'totalIssues':_0xdc496e['length'],'analyzed':!![],'validatorsUsed':_0xdc496e[_0x4e15fb(0x1f2)](_0x2d27ff=>_0x2d27ff['validator'])[_0x4e15fb(0x18a)]((_0x2c1c20,_0x27c8b0,_0x48ada9)=>_0x48ada9['indexOf'](_0x2c1c20)===_0x27c8b0),'timestamp':new Date()[_0x4e15fb(0x1dd)]()};return _0xfcc3ab;}catch(_0x44c9e4){throw new Error('Failed\x20to\x20validate\x20config\x20'+_0x1f3b5f+':\x20'+_0x44c9e4[_0x4e15fb(0x26c)]);}}async[a0_0x24ff7f(0x1c4)](_0xa62939,_0x257030,_0x1d3127,_0x368df1={}){const _0x367ebd=a0_0x24ff7f,_0x2fbc8b=a0_0x3da306[_0x367ebd(0x21d)](_0xa62939)?a0_0x3da306['normalize'](_0xa62939):a0_0x3da306['resolve'](_0x257030,_0xa62939),_0x1ff40e=this[_0x367ebd(0x18e)][_0x367ebd(0x202)](_0x2fbc8b,_0x1d3127);if(!_0x1ff40e['allowed'])throw new Error(_0x367ebd(0x1ac)+_0x1ff40e['reason']);const _0x53e214=await this[_0x367ebd(0x1b8)](_0x2fbc8b);if(_0x53e214[_0x367ebd(0x233)]>this[_0x367ebd(0x251)])throw new Error('Too\x20many\x20config\x20files:\x20'+_0x53e214[_0x367ebd(0x233)]+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x4ca888=[];for(const _0x1fa0c2 of _0x53e214){try{const _0x12ddbf=await this[_0x367ebd(0x240)](_0x1fa0c2,_0x257030,_0x1d3127,_0x368df1);_0x12ddbf&&_0x4ca888[_0x367ebd(0x26d)](_0x12ddbf);}catch(_0x5debb3){this['logger']?.[_0x367ebd(0x1cf)]('Failed\x20to\x20validate\x20config\x20file',{'file':_0x1fa0c2,'error':_0x5debb3[_0x367ebd(0x26c)]}),_0x4ca888['push']({'file':this['directoryAccessManager'][_0x367ebd(0x182)](_0x1fa0c2,_0x1d3127),'fullPath':_0x1fa0c2,'error':_0x5debb3['message'],'success':![]});}}return _0x4ca888;}async[a0_0x24ff7f(0x1b8)](_0x4cc998){const _0x49f080=a0_0x24ff7f,_0xe89caf=[],_0x4de698=['package.json','tsconfig.json','Dockerfile',_0x49f080(0x22e),_0x49f080(0x201),'.env',_0x49f080(0x1d1),'.eslintrc.js',_0x49f080(0x225),'.prettierrc',_0x49f080(0x218)],_0x8d5da6=['.yml',_0x49f080(0x1de),'.json',_0x49f080(0x1df),'.tfvars'],_0x51dea6=async _0x428f83=>{const _0x79eff3=_0x49f080,_0x3a3e6c=await a0_0x3fbac7[_0x79eff3(0x232)](_0x428f83,{'withFileTypes':!![]});for(const _0x438295 of _0x3a3e6c){const _0x101d85=a0_0x3da306['join'](_0x428f83,_0x438295[_0x79eff3(0x1f5)]);if(_0x438295[_0x79eff3(0x1c1)]()){if(_0x438295['name']==='.github'||_0x438295[_0x79eff3(0x1f5)]===_0x79eff3(0x206)||_0x438295['name']===_0x79eff3(0x195)||_0x438295['name']==='terraform')await _0x51dea6(_0x101d85);else{if(![_0x79eff3(0x1ec),'.git',_0x79eff3(0x187),_0x79eff3(0x241)][_0x79eff3(0x1a2)](_0x438295[_0x79eff3(0x1f5)]))continue;}}else{if(_0x438295['isFile']()){if(_0x4de698['includes'](_0x438295[_0x79eff3(0x1f5)]))_0xe89caf['push'](_0x101d85);else{const _0x386140=a0_0x3da306['extname'](_0x438295[_0x79eff3(0x1f5)])[_0x79eff3(0x1e7)]();if(_0x8d5da6['includes'](_0x386140)){const _0x403956=a0_0x3da306['basename'](a0_0x3da306['dirname'](_0x101d85));(_0x403956===_0x79eff3(0x206)||_0x403956==='k8s'||_0x403956===_0x79eff3(0x20d)||_0x403956==='workflows')&&_0xe89caf[_0x79eff3(0x26d)](_0x101d85);}}}}}};return await _0x51dea6(_0x4cc998),_0xe89caf;}[a0_0x24ff7f(0x24d)](_0x52e899){const _0x5b1d4b=a0_0x24ff7f,_0x28b976=a0_0x3da306[_0x5b1d4b(0x21f)](_0x52e899)[_0x5b1d4b(0x1e7)]();return STATIC_ANALYSIS[_0x5b1d4b(0x256)][_0x28b976]||null;}async[a0_0x24ff7f(0x25a)](_0x299b8c,_0x4b37b2){const _0x356a24=a0_0x24ff7f;try{if(_0x4b37b2===STATIC_ANALYSIS['LANGUAGE'][_0x356a24(0x1b9)]||_0x4b37b2===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT'])return await this['detectJSFramework'](_0x299b8c);if(_0x4b37b2===STATIC_ANALYSIS['LANGUAGE'][_0x356a24(0x242)])return await this['detectPythonFramework'](_0x299b8c);return null;}catch(_0x4ab653){return this['logger']?.['debug'](_0x356a24(0x184),{'error':_0x4ab653['message']}),null;}}async[a0_0x24ff7f(0x253)](_0x4e374e){const _0x492f90=a0_0x24ff7f;try{const _0x2a7db6=a0_0x3da306['join'](_0x4e374e,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x492f90(0x1b9)]),_0x1796ab=await a0_0x3fbac7['readFile'](_0x2a7db6,_0x492f90(0x257)),_0x30ad96=JSON['parse'](_0x1796ab),_0x30df68={..._0x30ad96[_0x492f90(0x21c)],..._0x30ad96[_0x492f90(0x1b4)]};for(const [_0x300b9d,_0x293432]of Object[_0x492f90(0x1fb)](STATIC_ANALYSIS[_0x492f90(0x247)])){if(_0x30df68[_0x293432])return _0x300b9d[_0x492f90(0x1e7)]();}return null;}catch(_0x59f260){return null;}}async[a0_0x24ff7f(0x23f)](_0x4d41d8){const _0x53bd6e=a0_0x24ff7f;try{const _0xfc4b3=a0_0x3da306['join'](_0x4d41d8,STATIC_ANALYSIS[_0x53bd6e(0x197)][_0x53bd6e(0x242)]),_0x1db1ee=await a0_0x3fbac7[_0x53bd6e(0x1fd)](_0xfc4b3,_0x53bd6e(0x257));for(const [_0x4ca100,_0x1f35b8]of Object['entries'](STATIC_ANALYSIS[_0x53bd6e(0x1e3)])){if(_0x1db1ee[_0x53bd6e(0x1e7)]()[_0x53bd6e(0x1a2)](_0x1f35b8))return _0x4ca100[_0x53bd6e(0x1e7)]();}return null;}catch(_0x7ceb20){try{const _0x33658b=a0_0x3da306[_0x53bd6e(0x1dc)](_0x4d41d8,STATIC_ANALYSIS[_0x53bd6e(0x197)][_0x53bd6e(0x25c)]),_0x15a4dd=await a0_0x3fbac7['readFile'](_0x33658b,_0x53bd6e(0x257));for(const [_0x59d556,_0x301b53]of Object[_0x53bd6e(0x1fb)](STATIC_ANALYSIS['PYTHON_FRAMEWORKS'])){if(_0x15a4dd['toLowerCase']()['includes'](_0x301b53))return _0x59d556[_0x53bd6e(0x1e7)]();}}catch{}return null;}}async[a0_0x24ff7f(0x1d2)](_0x4bad0e,_0x4f53d0){const _0x17294d=[],_0x4685b3=_0x4f53d0||'**/*.{js,jsx,mjs,cjs,ts,tsx,py,css,scss,sass,less}',_0xb13aa8=_0x499204=>{const _0x1cb410=a0_0x1be1,_0x4c6836=[],_0x1f7733=_0x499204['match'](/\*\.\{([^}]+)\}/);if(_0x1f7733){const _0x23710d=_0x1f7733[0x1][_0x1cb410(0x24f)](',')[_0x1cb410(0x1f2)](_0x58bf85=>_0x58bf85[_0x1cb410(0x1b2)]());_0x23710d[_0x1cb410(0x203)](_0x17b1d3=>_0x4c6836[_0x1cb410(0x26d)](_0x17b1d3[_0x1cb410(0x234)]('.')?_0x17b1d3:'.'+_0x17b1d3));}else{const _0x1ebe2f=_0x499204['match'](/\*\.([a-z]+)$/i);if(_0x1ebe2f){const _0x4aee44=_0x1ebe2f[0x1];_0x4c6836[_0x1cb410(0x26d)](_0x4aee44['startsWith']('.')?_0x4aee44:'.'+_0x4aee44);}}if(_0x4c6836['length']===0x0)return null;return _0x4c6836;},_0x575c57=_0xb13aa8(_0x4685b3),_0xef5b02=async _0x3f4920=>{const _0x5cb6ec=a0_0x1be1,_0x420b98=await a0_0x3fbac7[_0x5cb6ec(0x232)](_0x3f4920,{'withFileTypes':!![]});for(const _0x1e8780 of _0x420b98){const _0x4fb7c5=a0_0x3da306[_0x5cb6ec(0x1dc)](_0x3f4920,_0x1e8780['name']);if(_0x1e8780[_0x5cb6ec(0x1c1)]())!['node_modules','.git',_0x5cb6ec(0x187),'build',_0x5cb6ec(0x1ca),'.venv',_0x5cb6ec(0x22c)]['includes'](_0x1e8780[_0x5cb6ec(0x1f5)])&&await _0xef5b02(_0x4fb7c5);else{if(_0x1e8780[_0x5cb6ec(0x1f6)]()){const _0x4a895a=a0_0x3da306['extname'](_0x1e8780['name'])[_0x5cb6ec(0x1e7)]();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x4a895a]&&((_0x575c57===null||_0x575c57['includes'](_0x4a895a))&&_0x17294d['push'](_0x4fb7c5));}}}};return await _0xef5b02(_0x4bad0e),_0x17294d;}async[a0_0x24ff7f(0x1c3)](_0x53084d){const _0x1d63b7=a0_0x24ff7f;try{if(_0x53084d===STATIC_ANALYSIS['LANGUAGE'][_0x1d63b7(0x1b9)]){if(!this['analyzers'][_0x1d63b7(0x250)]){const {default:_0x2c186e}=await import(_0x1d63b7(0x23a));this[_0x1d63b7(0x1bd)]['javascript']=new _0x2c186e(this['logger']);}return this[_0x1d63b7(0x1bd)][_0x1d63b7(0x250)];}if(_0x53084d===STATIC_ANALYSIS['LANGUAGE'][_0x1d63b7(0x18d)]){if(!this[_0x1d63b7(0x1bd)]['typescript']){const {default:_0x4c4c74}=await import('../analyzers/TypeScriptAnalyzer.js');this['analyzers']['typescript']=new _0x4c4c74(this[_0x1d63b7(0x254)]);}return this[_0x1d63b7(0x1bd)]['typescript'];}if(_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x242)]){if(!this[_0x1d63b7(0x1bd)][_0x1d63b7(0x1c8)]){const {default:_0x20a816}=await import(_0x1d63b7(0x1f1));this[_0x1d63b7(0x1bd)][_0x1d63b7(0x1c8)]=new _0x20a816(this[_0x1d63b7(0x254)]);}return this[_0x1d63b7(0x1bd)]['python'];}if(_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x1cd)]||_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x263)]||_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x23c)]){if(!this['analyzers'][_0x1d63b7(0x1ea)]){const {default:_0x5b1ccc}=await import('../analyzers/CSSAnalyzer.js');this[_0x1d63b7(0x1bd)]['css']=new _0x5b1ccc(this['logger']);}return this[_0x1d63b7(0x1bd)]['css'];}return null;}catch(_0x3a23dd){return this['logger']?.[_0x1d63b7(0x1f9)]('Failed\x20to\x20load\x20analyzer',{'language':_0x53084d,'error':_0x3a23dd['message']}),null;}}async[a0_0x24ff7f(0x252)](){const _0x27303c=a0_0x24ff7f;if(!this['analyzers']['eslint']){const {default:_0x43d831}=await import('../analyzers/ESLintAnalyzer.js');this[_0x27303c(0x1bd)]['eslint']=new _0x43d831(this['logger']);}return this['analyzers'][_0x27303c(0x1a9)];}async[a0_0x24ff7f(0x1bb)](){const _0xad4b88=a0_0x24ff7f;if(!this['formatters']['prettier']){const {default:_0x30ffa1}=await import('../analyzers/PrettierFormatter.js');this['formatters']['prettier']=new _0x30ffa1(this[_0xad4b88(0x254)]);}return this[_0xad4b88(0x1db)][_0xad4b88(0x209)];}async['getSecurityAnalyzer'](){const _0x84a25f=a0_0x24ff7f;if(!this['analyzers']['security']){const {default:_0x38f177}=await import(_0x84a25f(0x18f));this[_0x84a25f(0x1bd)]['security']=new _0x38f177(this[_0x84a25f(0x254)]);}return this['analyzers'][_0x84a25f(0x1bf)];}async['getConfigValidator'](){const _0x33b1e0=a0_0x24ff7f;if(!this['analyzers'][_0x33b1e0(0x1af)]){const {default:_0x13fa33}=await import(_0x33b1e0(0x24a));this['analyzers'][_0x33b1e0(0x1af)]=new _0x13fa33(this['logger']);}return this['analyzers'][_0x33b1e0(0x1af)];}['updateSummary'](_0x32a9e9,_0x2fcaaa){const _0x2c1f90=a0_0x24ff7f;if(_0x2fcaaa[_0x2c1f90(0x1d4)]){_0x32a9e9[_0x2c1f90(0x231)]++;const _0x5a57ac=_0x2fcaaa[_0x2c1f90(0x1d3)]?.[_0x2c1f90(0x233)]||0x0,_0x432cce=_0x2fcaaa[_0x2c1f90(0x1c0)]?.[_0x2c1f90(0x233)]||0x0,_0x5070c5=_0x2fcaaa[_0x2c1f90(0x1d8)]?.[_0x2c1f90(0x233)]||0x0,_0x5c3fef=_0x2fcaaa[_0x2c1f90(0x1a7)]?.['length']||0x0;_0x32a9e9['totalCritical']===undefined&&(_0x32a9e9[_0x2c1f90(0x1a6)]=0x0);_0x32a9e9['totalCritical']+=_0x5a57ac,_0x32a9e9[_0x2c1f90(0x196)]+=_0x432cce,_0x32a9e9['totalWarnings']+=_0x5070c5,_0x32a9e9['totalInfo']+=_0x5c3fef;(_0x5a57ac>0x0||_0x432cce>0x0)&&_0x32a9e9[_0x2c1f90(0x230)]++;_0x2fcaaa['language']&&(_0x32a9e9['filesByLanguage'][_0x2fcaaa['language']]=(_0x32a9e9['filesByLanguage'][_0x2fcaaa['language']]||0x0)+0x1);const _0x11978e=[..._0x2fcaaa[_0x2c1f90(0x1d3)]||[],..._0x2fcaaa[_0x2c1f90(0x1c0)]||[],..._0x2fcaaa[_0x2c1f90(0x1d8)]||[]];for(const _0xf1e231 of _0x11978e){_0xf1e231[_0x2c1f90(0x259)]&&(_0x32a9e9[_0x2c1f90(0x185)][_0xf1e231[_0x2c1f90(0x259)]]=(_0x32a9e9['errorsByCategory'][_0xf1e231['category']]||0x0)+0x1);}}}[a0_0x24ff7f(0x211)](_0x13c7ca){const _0x479fb8=a0_0x24ff7f;return a0_0x3c3cf7[_0x479fb8(0x217)]('sha256')['update'](_0x13c7ca)[_0x479fb8(0x1da)]('hex')[_0x479fb8(0x25b)](0x0,0x10);}[a0_0x24ff7f(0x1e0)](){const _0x1a2b40=a0_0x24ff7f,_0xb00e52=this['metrics']['totalAnalyses']>0x0?this['metrics'][_0x1a2b40(0x25e)]/this['metrics'][_0x1a2b40(0x1c9)]*0x64:0x0,_0x309924=this['metrics'][_0x1a2b40(0x1fa)]>0x0?this['metrics'][_0x1a2b40(0x1b1)]/this['metrics'][_0x1a2b40(0x1fa)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0xb00e52*0xa)/0xa,'averageAnalysisTime':Math['round'](_0x309924),'cacheSize':this['analysisCache']['size']};}['resetPerformanceMetrics'](){const _0x584865=a0_0x24ff7f;this[_0x584865(0x220)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}['clearCache'](){const _0x1d0f14=a0_0x24ff7f;this[_0x1d0f14(0x1ce)][_0x1d0f14(0x238)](),this['logger']?.['debug']('Analysis\x20cache\x20cleared');}[a0_0x24ff7f(0x213)](){const _0x400bcc=a0_0x24ff7f;return[_0x400bcc(0x1ba),'analyze-project','fix','format','security-scan',_0x400bcc(0x194),'validate-config','validate-config-directory'];}[a0_0x24ff7f(0x1f7)](){const _0x2891d7=a0_0x24ff7f;return{'type':'object','properties':{'actions':{'type':_0x2891d7(0x198),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x2891d7(0x23d),'enum':this[_0x2891d7(0x213)]()},'filePath':{'type':_0x2891d7(0x23d)},'directory':{'type':_0x2891d7(0x23d)},'pattern':{'type':'string'},'includeWarnings':{'type':_0x2891d7(0x249)},'maxErrors':{'type':_0x2891d7(0x204)}},'required':['type']}}},'required':[_0x2891d7(0x216)]};}}export default StaticAnalysisTool;
|
|
1
|
+
const a0_0x1ee867=a0_0x519e;function a0_0x479a(){const _0x10c3a2=['BNvTyMvY','zw5HyMXLq2fJAgu','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','zxjYB3i','C3bSAxq','Bg9Nz2vY','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','mJqZotK0mdvOqLHlAha','D2fYBMLUz3m','lNLTBa','qwn0Aw9Uia','Dg90ywXbBMfSExnLCW','zxnSAw50','oIb0ExbLigLZihjLCxvPCMvK','ywXSB3DLza','C3rHDa','yM9VBgvHBG','CMvHzezPBgu','C2vJDxjPDhK','u0ntuW','Dhj1BMnHDgvK','su5gtW','Dg9mB3DLCKnHC2u','lMDPDa','D3jPDguTzMLSzq','ndCWnZiWvhbIshHQ','C3vTBwfYEq','Dg9ju09tDhjPBMC','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','ywn0Aw9UCW','y29UzMLN','zMLSDgvY','B2jQzwn0','y29TChv0zunVBNrLBNriyxnO','Aw5JBhvKzxm','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','z2v0v29YA2LUz0rPCMvJDg9YEq','DxrMltG','zMLSzxm','C2TPCc10zxn0lwzPBgvZ','Bwv0CMLJCW','Cgf0DgvYBG','CMvHC29U','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','BM9YBwfSAxPL','DgLTzw91Da','AM9PBG','CMf3q29UDgvUDa','z2v0vgLTzq','DhLWzxnJCMLWDa','zgv0zwn0rNjHBwv3B3jR','C2XPy2u','C2TPCfrLC3rgAwXLCW','z2v0qw5HBhL6zxi','zgv2rgvWzw5Kzw5JAwvZ','DxbKyxrL','zgv0zwn0tgfUz3vHz2u','ywXS','tefor1vbr0u','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','BgfUz3vHz2u','AxngAwXL','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','zM9YBwf0DgvYCW','lMvZBgLUDhjJlMPZB24','C3vIC3rYAw5N','BgvUz3rO','D2fYBG','DgvYCMfMB3jT','rMfPBgvKihrVigXVywqGyw5HBhL6zxi','Bwf4rxjYB3jZ','CMvHzgrPCG','uMvHzcbHy2nLC3mGzgvUAwvKoIa','D29YA2zSB3DZ','yw5HBhL6zxjZ','q1jjveLdquW','AgfZ','yw5HBhL6zvbYB2PLy3q','y29UDgvUDa','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYbMAwXL','qu5btfLtsvnFveLnru9vva','mta3AxbkCezS','y3DK','DMfSAwrHDgvdB25MAwDgAwXL','C2L6zq','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','z2v0','odi3ogHwv2Xksa','zMLSzxnbBMfSExPLza','CgfYywXSzwXcyxrJAgvZ','z2v0u2vJDxjPDhLbBMfSExPLCG','y3jLyxrLuMvSyxrPDMvqyxrO','AZHZ','BMfTzq','mZe1ndCXnLHUAgXiva','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','yw5HBhL6zq','lMvZBgLUDhjJlMPZ','CgfYC2vbDhrYAwj1DgvZ','Dg90ywXbBMfSExnPC1rPBwu','zML4rMLSzq','BwfW','Bwf4ugfYywXSzwXgAwXLCW','DMfSAwrHDgvszwfKqwnJzxnZ','C2v2zxjPDhK','zgvIDwC','D3jPDgvgAwXL','AMf2yxnJCMLWDa','lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','y2HHBMDLCW','zgLYzwn0B3j5','DhjPBq','u0vwrvjjvfK','rMfPBgvKihrVigfUywX5EMuGzMLSzsbPBIbWCM9Qzwn0','zML4zwq','DgLTzxn0yw1W','zM9YBwf0DgvK','tevtuW','Aw5MBW','BwvZC2fNzq','Bwf0y2G','AxnbyNnVBhv0zq','zML4','zgLZDa','y3nZ','lMvUDI5LEgfTCgXL','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','zxHLyW','qw5HBhLZAxmGy2fJAguGy2XLyxjLza','Bwf4lwvYCM9YCW','z2v0q29UzMLNvMfSAwrHDg9Y','yNvPBgq','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','zxjYB3jZqNLdyxrLz29YEq','C2vJDxjPDhLty2fUrMLSzq','sKfwqvnduKLqva','vg9Vig1HBNKGzMLSzxm6ia','DhLWzq','zw50CMLLCW','Bwf4rMLSzvnPEMu','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzVCM1HDa','y3jPDgLJywW','yMfZzw5HBwu','y2fJAgviAxrZ','ndyZoti1nKryt2jizG','CM91BMq','BNbTlwf1zgL0','odi5mZm0muDbEKTzyG','DMfSAwrHDguTy29UzMLN','BxrPBwu','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zM9YBwf0rMLSzq','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','igzPBgvZihbLCIbVCgvYyxrPB24klsbbBMfSExnPCYb0Aw1LB3v0oIa','zgLNzxn0','ChvZAa','icHTyxGG','CgfYywXSzwXbBMfSExnPCW','C3rYAw5N','x19WEwnHy2HLx18','Dg90ywXdCML0AwnHBa','CMvZDwX0','Dg90ywW','C2nHBM5LCG','CMvZB2X2zq','AxnbCNjHEq','zg9JA2vYlwnVBxbVC2uUEw1S','zMLUzenVBMzPz0zPBgvZ','DhnJB25MAwCUANnVBG','CgfYC2u','DMfSAwrHDg9Y','y2f0zwDVCNK','lNLHBwW','DxnLq29UDgvUDeHHC2G','zMLSzxncEuXHBMD1ywDL','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','zgv0zwn0sLngCMfTzxDVCMS','rvHuru5tsu9ox1rpx0XbtKDvquDf','rMLSzsbMB3jTyxr0zwqGyw5KihDYAxr0zw4','B25qCM9NCMvZCW','y2XLyxjdywnOzq','tufyx0zjtevtx1bfuL9cqvrdsa','ChL0Ag9U','rvjst1i','C2vJDxjPDhKTC2nHBG','DxbKyxrLu3vTBwfYEq','lNbYzxr0AwvYCMmUANnVBG','CMvTywLUAw5Nv2fYBMLUz3m','z2v0rgvZy3jPChrPB24','v3jPDguGywnJzxnZigrLBMLLzdOG','Bwf4rMLSzxnqzxjcyxrJAa','rg9JA2vYzMLSzq','v0fstKLorW','Agv4','nwnSBKH0qG','zM9YBwf0','zxH0BMfTzq','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','zxjYB3jZ','ufLuse9ox0zsqu1fv09ss1m','z2v0ugfYyw1LDgvYu2nOzw1H','vfLqrvnduKLqva','yw5HBhLZAxndywnOzq','z2v0uhjLDhrPzxjgB3jTyxr0zxi','AxntDxbWB3j0zwq','Dhj1zq','ufLuse9o','rMLSzsb0B28GBgfYz2u6ia','zMLSzs1WyxrO','vxnPBMCGCgfYywXSzwWGC2vJDxjPDhKGC2nHBM5PBMC','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','C3rHCNrZv2L0Aa','Aw5JBhvKzs13yxjUAw5NCW','yw5HBhL6zs1WCM9Qzwn0','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','nJu5ndy0ofLfEfDPDG','Dw5RBM93BG','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','BM93','zMLSzvbHDgG','u3rHDgLJqw5HBhLZAxmGDg9VBcbWyxjZAw5NihbHCMfTzxrLCNm','rLjbtuvxt1jlx01btKLgrvnuuW','CgfJA2fNzs5QC29U','Aw5KzxHpzG','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5lgnZCYXZy3nZlhnHC3mSBgvZC30','yw5HBhL6zuzPBgu','vg9Vig1HBNKGywn0Aw9UCZOG','A3vIzxjUzxrLCW','vw5RBM93BIbHy3rPB24GDhLWztOG','C3rHDgLJyw5HBhLZAxm'];a0_0x479a=function(){return _0x10c3a2;};return a0_0x479a();}(function(_0x1d7e5f,_0x530016){const _0x170e56=a0_0x519e,_0x1d0cdb=_0x1d7e5f();while(!![]){try{const _0x187640=parseInt(_0x170e56(0x1ce))/0x1*(-parseInt(_0x170e56(0x1d4))/0x2)+-parseInt(_0x170e56(0x1db))/0x3+-parseInt(_0x170e56(0x27c))/0x4+-parseInt(_0x170e56(0x23f))/0x5*(parseInt(_0x170e56(0x254))/0x6)+parseInt(_0x170e56(0x210))/0x7+-parseInt(_0x170e56(0x20d))/0x8+parseInt(_0x170e56(0x26a))/0x9;if(_0x187640===_0x530016)break;else _0x1d0cdb['push'](_0x1d0cdb['shift']());}catch(_0x5623bb){_0x1d0cdb['push'](_0x1d0cdb['shift']());}}}(a0_0x479a,0x939fc));import{BaseTool}from'./baseTool.js';import a0_0xc7a590 from'../utilities/tagParser.js';import a0_0x1c53b7 from'../utilities/directoryAccessManager.js';import a0_0x332bed from'fs/promises';import a0_0x410463 from'path';function a0_0x519e(_0x4c4327,_0x428ff3){_0x4c4327=_0x4c4327-0x1b0;const _0x479a65=a0_0x479a();let _0x519e1d=_0x479a65[_0x4c4327];if(a0_0x519e['qAuxXG']===undefined){var _0x1dca58=function(_0x151711){const _0x3b9922='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc7a590='',_0x1c53b7='';for(let _0x332bed=0x0,_0x410463,_0x35e28c,_0x4834d2=0x0;_0x35e28c=_0x151711['charAt'](_0x4834d2++);~_0x35e28c&&(_0x410463=_0x332bed%0x4?_0x410463*0x40+_0x35e28c:_0x35e28c,_0x332bed++%0x4)?_0xc7a590+=String['fromCharCode'](0xff&_0x410463>>(-0x2*_0x332bed&0x6)):0x0){_0x35e28c=_0x3b9922['indexOf'](_0x35e28c);}for(let _0x3e2285=0x0,_0x3ee0f7=_0xc7a590['length'];_0x3e2285<_0x3ee0f7;_0x3e2285++){_0x1c53b7+='%'+('00'+_0xc7a590['charCodeAt'](_0x3e2285)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c53b7);};a0_0x519e['pDkkoI']=_0x1dca58,a0_0x519e['IFHFoW']={},a0_0x519e['qAuxXG']=!![];}const _0x464478=_0x479a65[0x0],_0x57fe36=_0x4c4327+_0x464478,_0x3fc405=a0_0x519e['IFHFoW'][_0x57fe36];return!_0x3fc405?(_0x519e1d=a0_0x519e['pDkkoI'](_0x519e1d),a0_0x519e['IFHFoW'][_0x57fe36]=_0x519e1d):_0x519e1d=_0x3fc405,_0x519e1d;}import a0_0x35e28c from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x4834d2={},_0x3e2285=null){const _0x398187=a0_0x519e;super(_0x4834d2,_0x3e2285),this['requiresProject']=!![],this['isAsync']=![],this['timeout']=_0x4834d2[_0x398187(0x290)]||STATIC_ANALYSIS[_0x398187(0x1cd)],this[_0x398187(0x28e)]=_0x4834d2[_0x398187(0x28e)]||0x1,this['maxFileSize']=_0x4834d2[_0x398187(0x208)]||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this['maxFilesPerBatch']=_0x4834d2['maxFilesPerBatch']||STATIC_ANALYSIS[_0x398187(0x232)],this[_0x398187(0x264)]=_0x4834d2[_0x398187(0x264)]!==![]&&STATIC_ANALYSIS['ENABLE_CACHE'],this[_0x398187(0x247)]=new Map(),this['cacheExpiry']=STATIC_ANALYSIS['CACHE_DURATION'],this[_0x398187(0x21a)]=_0x4834d2[_0x398187(0x21a)]!==![],this[_0x398187(0x1e3)]=_0x4834d2['maxParallelFiles']||0xa,this[_0x398187(0x22a)]=_0x4834d2[_0x398187(0x22a)]!==![],this[_0x398187(0x28b)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x398187(0x1b8)]=new a0_0x1c53b7(_0x4834d2,_0x3e2285),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}[a0_0x1ee867(0x239)](){const _0x4eaca5=a0_0x1ee867;return'\x0aStatic\x20Code\x20Analysis\x20Tool:\x20Analyze\x20code\x20files\x20for\x20errors\x20without\x20execution\x0a\x0aThis\x20tool\x20performs\x20static\x20analysis\x20on\x20code\x20files\x20to\x20find\x20syntax\x20errors,\x20type\x20errors,\x20import\x20issues,\x20and\x20other\x20problems\x20without\x20running\x20the\x20code.\x20It\x20uses\x20official\x20language\x20parsers\x20for\x20accurate\x20results.\x0a\x0aSUPPORTED\x20LANGUAGES:\x0a-\x20JavaScript\x20(.js,\x20.jsx,\x20.mjs,\x20.cjs)\x0a-\x20TypeScript\x20(.ts,\x20.tsx)\x0a-\x20Python\x20(.py)\x0a-\x20CSS\x20(.css)\x0a-\x20SCSS\x20(.scss,\x20.sass)\x0a-\x20LESS\x20(.less)\x0a\x0aUSAGE\x20-\x20XML\x20FORMAT:\x0a\x0aSingle\x20File\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/index.js\x22\x20/>\x0a[/tool]\x0a\x0aMultiple\x20Files\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/index.js\x22\x20/>\x0a<analyze\x20file-path=\x22src/utils.js\x22\x20/>\x0a<analyze\x20file-path=\x22src/components/Button.jsx\x22\x20/>\x0a[/tool]\x0a\x0aProject-Wide\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze-project\x20directory=\x22src\x22\x20pattern=\x22**/*.js\x22\x20/>\x0a[/tool]\x0a\x0aAuto-Fix\x20Code\x20Issues:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<fix\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aFormat\x20Code:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<format\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aUSAGE\x20-\x20JSON\x20FORMAT:\x0a\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22staticanalysis\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22analyze\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22analyze-project\x22,\x0a\x20\x20\x20\x20\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x20\x20\x20\x20\x22pattern\x22:\x20\x22**/*.{js,ts,py}\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20analyze\x20(for\x20single\x20file)\x0a-\x20directory:\x20Directory\x20to\x20analyze\x20(for\x20project-wide)\x0a-\x20pattern:\x20Glob\x20pattern\x20for\x20files\x20to\x20include\x20(optional,\x20defaults\x20to\x20language-specific\x20patterns)\x0a-\x20include-warnings:\x20Include\x20warnings\x20in\x20results\x20(true/false,\x20default:\x20true)\x0a-\x20max-errors:\x20Maximum\x20number\x20of\x20errors\x20to\x20return\x20(default:\x20all)\x0a\x0aOUTPUT\x20FORMAT:\x0aReturns\x20structured\x20error\x20information:\x0a-\x20file:\x20File\x20path\x0a-\x20line:\x20Line\x20number\x0a-\x20column:\x20Column\x20number\x0a-\x20severity:\x20critical\x20|\x20error\x20|\x20warning\x20|\x20info\x0a-\x20rule:\x20Rule\x20identifier\x0a-\x20message:\x20Human-readable\x20description\x0a-\x20category:\x20syntax\x20|\x20type\x20|\x20import\x20|\x20style\x20|\x20security\x20|\x20performance\x20|\x20best_practice\x0a-\x20fixable:\x20Whether\x20error\x20can\x20be\x20auto-fixed\x0a-\x20suggestion:\x20Fix\x20suggestion\x20(if\x20applicable)\x0a-\x20remediation:\x20Security\x20remediation\x20advice\x20(for\x20security\x20issues)\x0a\x0aDETECTION:\x0a-\x20Language:\x20Automatically\x20detected\x20from\x20file\x20extension\x0a-\x20Framework:\x20Detected\x20from\x20package.json,\x20requirements.txt,\x20etc.\x0a-\x20Context:\x20Project\x20structure\x20analyzed\x20for\x20better\x20accuracy\x0a\x0aEXAMPLES:\x0a\x0aFind\x20all\x20errors\x20in\x20a\x20JavaScript\x20file:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aAnalyze\x20TypeScript\x20with\x20type\x20checking:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/types.ts\x22\x20/>\x0a[/tool]\x0a\x0aCheck\x20all\x20Python\x20files\x20in\x20a\x20directory:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze-project\x20directory=\x22backend\x22\x20pattern=\x22**/*.py\x22\x20/>\x0a[/tool]\x0a\x0aLIMITATIONS:\x0a-\x20File\x20size\x20limit:\x20'+Math[_0x4eaca5(0x20e)](this[_0x4eaca5(0x208)]/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+this[_0x4eaca5(0x23b)]+_0x4eaca5(0x216)+this[_0x4eaca5(0x290)]/0x3e8+_0x4eaca5(0x1d2);}['parseParameters'](_0x3ee0f7){const _0x34a1dd=a0_0x1ee867;try{const _0x28e38d={},_0x2d4903=[];this['logger']?.[_0x34a1dd(0x1e6)](_0x34a1dd(0x259),{'contentLength':_0x3ee0f7['length'],'contentPreview':_0x3ee0f7['substring'](0x0,0xc8)});const _0x4c8533=/<analyze\s+(.+?)\/>/g;let _0x320ad5;while((_0x320ad5=_0x4c8533[_0x34a1dd(0x1fc)](_0x3ee0f7))!==null){const _0x28b2de=_0x320ad5[0x1]['trim'](),_0x572165=new a0_0xc7a590(),_0x1e4e65=_0x572165['parseAttributes'](_0x28b2de),_0x427bbb={'type':'analyze',..._0x1e4e65};_0x427bbb[_0x34a1dd(0x24d)]&&(_0x427bbb[_0x34a1dd(0x258)]=_0x427bbb['file-path'],delete _0x427bbb['file-path']),_0x427bbb['include-warnings']&&(_0x427bbb['includeWarnings']=_0x427bbb['include-warnings']==='true',delete _0x427bbb[_0x34a1dd(0x251)]),_0x427bbb['max-errors']&&(_0x427bbb[_0x34a1dd(0x1c3)]=parseInt(_0x427bbb[_0x34a1dd(0x1fe)],0xa),delete _0x427bbb[_0x34a1dd(0x1fe)]),_0x2d4903[_0x34a1dd(0x218)](_0x427bbb);}const _0x112ef1=/<analyze-project\s+(.+?)\/>/g;while((_0x320ad5=_0x112ef1['exec'](_0x3ee0f7))!==null){const _0x13d543=_0x320ad5[0x1][_0x34a1dd(0x1ec)](),_0x569ece=new a0_0xc7a590(),_0x3a286c=_0x569ece['parseAttributes'](_0x13d543),_0x172f98={'type':_0x34a1dd(0x252),..._0x3a286c};_0x172f98['include-warnings']&&(_0x172f98['includeWarnings']=_0x172f98[_0x34a1dd(0x251)]==='true',delete _0x172f98[_0x34a1dd(0x251)]),_0x172f98['max-errors']&&(_0x172f98[_0x34a1dd(0x1c3)]=parseInt(_0x172f98['max-errors'],0xa),delete _0x172f98[_0x34a1dd(0x1fe)]),_0x2d4903[_0x34a1dd(0x218)](_0x172f98);}const _0x475f35=/<fix\s+(.+?)\/>/g;while((_0x320ad5=_0x475f35[_0x34a1dd(0x1fc)](_0x3ee0f7))!==null){const _0x4153ef=_0x320ad5[0x1]['trim'](),_0x332c19=new a0_0xc7a590(),_0x7f8f9=_0x332c19['parseAttributes'](_0x4153ef),_0x2a97cd={'type':_0x34a1dd(0x1f7),..._0x7f8f9};_0x2a97cd['file-path']&&(_0x2a97cd[_0x34a1dd(0x258)]=_0x2a97cd[_0x34a1dd(0x24d)],delete _0x2a97cd[_0x34a1dd(0x24d)]),_0x2a97cd[_0x34a1dd(0x27b)]&&(_0x2a97cd['writeFile']=_0x2a97cd['write-file']===_0x34a1dd(0x24a),delete _0x2a97cd[_0x34a1dd(0x27b)]),_0x2d4903['push'](_0x2a97cd);}const _0x45d82f=/<format\s+(.+?)\/>/g;while((_0x320ad5=_0x45d82f[_0x34a1dd(0x1fc)](_0x3ee0f7))!==null){const _0x5c339d=_0x320ad5[0x1][_0x34a1dd(0x1ec)](),_0xf7e6f0=new a0_0xc7a590(),_0x58fed6=_0xf7e6f0[_0x34a1dd(0x1df)](_0x5c339d),_0x434d87={'type':_0x34a1dd(0x240),..._0x58fed6};_0x434d87[_0x34a1dd(0x24d)]&&(_0x434d87[_0x34a1dd(0x258)]=_0x434d87['file-path'],delete _0x434d87[_0x34a1dd(0x24d)]),_0x434d87[_0x34a1dd(0x27b)]&&(_0x434d87['writeFile']=_0x434d87['write-file']==='true',delete _0x434d87[_0x34a1dd(0x27b)]),_0x2d4903[_0x34a1dd(0x218)](_0x434d87);}const _0x44c57b=/<security-scan\s+(.+?)\/>/g;while((_0x320ad5=_0x44c57b['exec'](_0x3ee0f7))!==null){const _0xb4f5ed=_0x320ad5[0x1][_0x34a1dd(0x1ec)](),_0xf93a1b=new a0_0xc7a590(),_0x2481a6=_0xf93a1b['parseAttributes'](_0xb4f5ed),_0x185a1e={'type':'security-scan',..._0x2481a6};_0x185a1e[_0x34a1dd(0x24d)]&&(_0x185a1e[_0x34a1dd(0x258)]=_0x185a1e[_0x34a1dd(0x24d)],delete _0x185a1e['file-path']),_0x185a1e[_0x34a1dd(0x28a)]&&(_0x185a1e[_0x34a1dd(0x1b1)]=_0x185a1e[_0x34a1dd(0x28a)]===_0x34a1dd(0x24a),delete _0x185a1e['skip-test-files']),_0x2d4903['push'](_0x185a1e);}const _0x1c94dc=/<security-scan-project\s+(.+?)\/>/g;while((_0x320ad5=_0x1c94dc['exec'](_0x3ee0f7))!==null){const _0x4dd26d=_0x320ad5[0x1][_0x34a1dd(0x1ec)](),_0xe5ab5c=new a0_0xc7a590(),_0x3851c9=_0xe5ab5c[_0x34a1dd(0x1df)](_0x4dd26d),_0x45950a={'type':_0x34a1dd(0x286),..._0x3851c9};_0x45950a[_0x34a1dd(0x28a)]&&(_0x45950a['skipTestFiles']=_0x45950a['skip-test-files']===_0x34a1dd(0x24a),delete _0x45950a[_0x34a1dd(0x28a)]),_0x2d4903[_0x34a1dd(0x218)](_0x45950a);}const _0x683554=/<validate-config\s+(.+?)\/>/g;while((_0x320ad5=_0x683554['exec'](_0x3ee0f7))!==null){const _0x537cd1=_0x320ad5[0x1]['trim'](),_0x440b59=new a0_0xc7a590(),_0x559f7c=_0x440b59['parseAttributes'](_0x537cd1),_0xf9929b={'type':'validate-config',..._0x559f7c};_0xf9929b['file-path']&&(_0xf9929b[_0x34a1dd(0x258)]=_0xf9929b['file-path'],delete _0xf9929b[_0x34a1dd(0x24d)]),_0x2d4903['push'](_0xf9929b);}const _0x417106=/<validate-config-directory\s+(.+?)\/>/g;while((_0x320ad5=_0x417106[_0x34a1dd(0x1fc)](_0x3ee0f7))!==null){const _0x2e21ef=_0x320ad5[0x1][_0x34a1dd(0x1ec)](),_0x3932d5=new a0_0xc7a590(),_0xec57a9=_0x3932d5[_0x34a1dd(0x1df)](_0x2e21ef),_0x23352b={'type':_0x34a1dd(0x1dc),..._0xec57a9};_0x2d4903['push'](_0x23352b);}return _0x28e38d[_0x34a1dd(0x280)]=_0x2d4903,_0x28e38d[_0x34a1dd(0x292)]=_0x3ee0f7[_0x34a1dd(0x1ec)](),this['logger']?.[_0x34a1dd(0x1e6)]('Parsed\x20StaticAnalysis\x20tool\x20parameters',{'totalActions':_0x2d4903[_0x34a1dd(0x1bf)],'actionTypes':_0x2d4903['map'](_0x2c93d1=>_0x2c93d1[_0x34a1dd(0x206)])}),_0x28e38d;}catch(_0x7f69d8){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x7f69d8['message']);}}[a0_0x1ee867(0x22c)](){return['actions'];}['customValidateParameters'](_0x51aa0e){const _0x652ea1=a0_0x1ee867,_0x2f9ea3=[];if(!_0x51aa0e[_0x652ea1(0x280)]||!Array[_0x652ea1(0x222)](_0x51aa0e['actions'])||_0x51aa0e[_0x652ea1(0x280)]['length']===0x0)_0x2f9ea3['push'](_0x652ea1(0x265));else{for(const [_0x439d5d,_0xa4fe97]of _0x51aa0e['actions'][_0x652ea1(0x207)]()){if(!_0xa4fe97['type']){_0x2f9ea3['push'](_0x652ea1(0x26d)+(_0x439d5d+0x1)+_0x652ea1(0x270));continue;}switch(_0xa4fe97['type']){case'analyze':!_0xa4fe97[_0x652ea1(0x258)]&&_0x2f9ea3['push'](_0x652ea1(0x26d)+(_0x439d5d+0x1)+_0x652ea1(0x253));break;case _0x652ea1(0x252):!_0xa4fe97[_0x652ea1(0x1eb)]&&_0x2f9ea3[_0x652ea1(0x218)](_0x652ea1(0x26d)+(_0x439d5d+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case _0x652ea1(0x1f7):!_0xa4fe97['filePath']&&_0x2f9ea3['push'](_0x652ea1(0x26d)+(_0x439d5d+0x1)+':\x20file-path\x20is\x20required\x20for\x20fix');break;case _0x652ea1(0x240):!_0xa4fe97[_0x652ea1(0x258)]&&_0x2f9ea3['push'](_0x652ea1(0x26d)+(_0x439d5d+0x1)+_0x652ea1(0x209));break;case _0x652ea1(0x235):!_0xa4fe97['filePath']&&_0x2f9ea3[_0x652ea1(0x218)](_0x652ea1(0x26d)+(_0x439d5d+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x652ea1(0x286):!_0xa4fe97[_0x652ea1(0x1eb)]&&_0x2f9ea3[_0x652ea1(0x218)](_0x652ea1(0x26d)+(_0x439d5d+0x1)+':\x20directory\x20is\x20required\x20for\x20security-scan-project');break;case _0x652ea1(0x211):!_0xa4fe97['filePath']&&_0x2f9ea3[_0x652ea1(0x218)]('Action\x20'+(_0x439d5d+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case _0x652ea1(0x1dc):!_0xa4fe97[_0x652ea1(0x1eb)]&&_0x2f9ea3['push']('Action\x20'+(_0x439d5d+0x1)+_0x652ea1(0x1fb));break;default:_0x2f9ea3[_0x652ea1(0x218)]('Action\x20'+(_0x439d5d+0x1)+_0x652ea1(0x27f)+_0xa4fe97[_0x652ea1(0x206)]);}}_0x51aa0e['actions'][_0x652ea1(0x1bf)]>this[_0x652ea1(0x23b)]&&_0x2f9ea3[_0x652ea1(0x218)](_0x652ea1(0x25f)+_0x51aa0e['actions'][_0x652ea1(0x1bf)]+_0x652ea1(0x219)+this['maxFilesPerBatch']+')');}return{'valid':_0x2f9ea3[_0x652ea1(0x1bf)]===0x0,'errors':_0x2f9ea3};}async['execute'](_0x3e1be6,_0x27c3ed){const _0x118c8e=a0_0x1ee867,{actions:_0x265b99}=_0x3e1be6,{projectDir:_0x41f877,agentId:_0x250c00,directoryAccess:_0x246765}=_0x27c3ed,_0x1c5735=_0x246765||this[_0x118c8e(0x1b8)][_0x118c8e(0x269)]({'workingDirectory':_0x41f877||process[_0x118c8e(0x1cf)](),'writeEnabledDirectories':[_0x41f877||process[_0x118c8e(0x1cf)]()],'restrictToProject':!![]}),_0x2a139d=this['directoryAccessManager'][_0x118c8e(0x287)](_0x1c5735),_0x55ded={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x53ab46 of _0x265b99){try{let _0x36637b;switch(_0x53ab46['type']){case _0x118c8e(0x1dd):_0x36637b=await this['analyzeFile'](_0x53ab46[_0x118c8e(0x258)],_0x2a139d,_0x1c5735,_0x53ab46);_0x36637b&&(_0x55ded['files'][_0x118c8e(0x218)](_0x36637b),this['updateSummary'](_0x55ded[_0x118c8e(0x27d)],_0x36637b));break;case'analyze-project':const _0x885cdb=await this[_0x118c8e(0x1ca)](_0x53ab46[_0x118c8e(0x1eb)],_0x53ab46['pattern'],_0x2a139d,_0x1c5735,_0x53ab46);_0x55ded[_0x118c8e(0x289)][_0x118c8e(0x218)](..._0x885cdb);for(const _0x5d395b of _0x885cdb){this[_0x118c8e(0x236)](_0x55ded[_0x118c8e(0x27d)],_0x5d395b);}break;case'fix':_0x36637b=await this[_0x118c8e(0x1e1)](_0x53ab46['filePath'],_0x2a139d,_0x1c5735,_0x53ab46);_0x36637b&&_0x55ded['files'][_0x118c8e(0x218)](_0x36637b);break;case _0x118c8e(0x240):_0x36637b=await this[_0x118c8e(0x214)](_0x53ab46['filePath'],_0x2a139d,_0x1c5735,_0x53ab46);_0x36637b&&_0x55ded[_0x118c8e(0x289)][_0x118c8e(0x218)](_0x36637b);break;case _0x118c8e(0x235):_0x36637b=await this[_0x118c8e(0x203)](_0x53ab46[_0x118c8e(0x258)],_0x2a139d,_0x1c5735,_0x53ab46);_0x36637b&&(_0x55ded['files']['push'](_0x36637b),this['updateSummary'](_0x55ded['summary'],_0x36637b));break;case _0x118c8e(0x286):const _0x27e18e=await this['securityScanProject'](_0x53ab46[_0x118c8e(0x1eb)],_0x53ab46[_0x118c8e(0x28c)],_0x2a139d,_0x1c5735,_0x53ab46);_0x55ded[_0x118c8e(0x289)]['push'](..._0x27e18e);for(const _0x406aaa of _0x27e18e){this[_0x118c8e(0x236)](_0x55ded['summary'],_0x406aaa);}break;case'validate-config':_0x36637b=await this['validateConfigFile'](_0x53ab46['filePath'],_0x2a139d,_0x1c5735,_0x53ab46);_0x36637b&&(_0x55ded['files'][_0x118c8e(0x218)](_0x36637b),this['updateSummary'](_0x55ded['summary'],_0x36637b));break;case _0x118c8e(0x1dc):const _0x9e9364=await this['validateConfigDirectory'](_0x53ab46['directory'],_0x2a139d,_0x1c5735,_0x53ab46);_0x55ded[_0x118c8e(0x289)][_0x118c8e(0x218)](..._0x9e9364);for(const _0x2caa9a of _0x9e9364){this['updateSummary'](_0x55ded['summary'],_0x2caa9a);}break;default:throw new Error(_0x118c8e(0x261)+_0x53ab46['type']);}}catch(_0x4fe069){this[_0x118c8e(0x268)]?.[_0x118c8e(0x266)]('Static\x20analysis\x20action\x20failed',{'action':_0x53ab46[_0x118c8e(0x206)],'error':_0x4fe069[_0x118c8e(0x1f4)]}),_0x55ded[_0x118c8e(0x289)][_0x118c8e(0x218)]({'file':_0x53ab46[_0x118c8e(0x258)]||_0x53ab46[_0x118c8e(0x1eb)],'error':_0x4fe069[_0x118c8e(0x1f4)],'success':![]});}}return{'success':!![],'results':_0x55ded,'toolUsed':_0x118c8e(0x262),'performance':this[_0x118c8e(0x256)]()};}async[a0_0x1ee867(0x25e)](_0x3c1254,_0x5e3a22,_0x919c87,_0x29f0b8={}){const _0x2f5b1c=a0_0x1ee867,_0x23bdc4=a0_0x410463['isAbsolute'](_0x3c1254)?a0_0x410463['normalize'](_0x3c1254):a0_0x410463['resolve'](_0x5e3a22,_0x3c1254),_0x4dc16f=this[_0x2f5b1c(0x1b8)]['validateReadAccess'](_0x23bdc4,_0x919c87);if(!_0x4dc16f[_0x2f5b1c(0x271)])throw new Error(_0x2f5b1c(0x1c5)+_0x4dc16f['reason']);try{const _0x2583cf=await a0_0x332bed['stat'](_0x23bdc4);if(_0x2583cf['size']>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x2583cf[_0x2f5b1c(0x1d1)]+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x2e9a96=this[_0x2f5b1c(0x1b5)](_0x23bdc4);if(!_0x2e9a96)return{'file':this['directoryAccessManager']['createRelativePath'](_0x23bdc4,_0x919c87),'fullPath':_0x23bdc4,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x550f1c=await a0_0x332bed[_0x2f5b1c(0x274)](_0x23bdc4,_0x2f5b1c(0x288)),_0x5782d9=this[_0x2f5b1c(0x22a)]?this['computeContentHash'](_0x550f1c):null,_0x1b9d75=this['useContentHash']?_0x23bdc4+':'+_0x5782d9:_0x23bdc4+':'+_0x2583cf[_0x2f5b1c(0x212)][_0x2f5b1c(0x293)]();if(this['enableCache']&&this[_0x2f5b1c(0x247)][_0x2f5b1c(0x1c9)](_0x1b9d75)){const _0xac1e8c=this[_0x2f5b1c(0x247)][_0x2f5b1c(0x1d3)](_0x1b9d75);if(Date[_0x2f5b1c(0x257)]()-_0xac1e8c[_0x2f5b1c(0x1f0)]<this['cacheExpiry'])return this[_0x2f5b1c(0x268)]?.[_0x2f5b1c(0x1e6)]('Using\x20cached\x20analysis\x20result',{'file':_0x23bdc4}),this[_0x2f5b1c(0x28b)]['cacheHits']++,this[_0x2f5b1c(0x28b)]['totalAnalyses']++,_0xac1e8c[_0x2f5b1c(0x21e)];}this[_0x2f5b1c(0x28b)]['cacheMisses']++,this['metrics'][_0x2f5b1c(0x26e)]++;const _0x58b765=await this['getAnalyzer'](_0x2e9a96);if(!_0x58b765)return{'file':this['directoryAccessManager'][_0x2f5b1c(0x1d8)](_0x23bdc4,_0x919c87),'fullPath':_0x23bdc4,'language':_0x2e9a96,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'No\x20analyzer\x20available\x20for\x20'+_0x2e9a96};const _0x46a4dc=Date['now'](),_0x3abe3e=await _0x58b765[_0x2f5b1c(0x1dd)](_0x23bdc4,_0x550f1c,{'workingDir':_0x5e3a22,'accessConfig':_0x919c87,'framework':await this[_0x2f5b1c(0x295)](_0x5e3a22,_0x2e9a96)}),_0x290e91=Date['now']()-_0x46a4dc;this['metrics'][_0x2f5b1c(0x1e0)]+=_0x290e91,this['metrics'][_0x2f5b1c(0x1d5)]++;const _0xcb3454={'file':this['directoryAccessManager'][_0x2f5b1c(0x1d8)](_0x23bdc4,_0x919c87),'fullPath':_0x23bdc4,'language':_0x2e9a96,'framework':await this[_0x2f5b1c(0x295)](_0x5e3a22,_0x2e9a96),'errors':_0x3abe3e[_0x2f5b1c(0x282)](_0x3075a0=>_0x3075a0[_0x2f5b1c(0x1e5)]===STATIC_ANALYSIS[_0x2f5b1c(0x1ed)]['ERROR']),'warnings':_0x29f0b8['includeWarnings']!==![]?_0x3abe3e['filter'](_0x32e8cf=>_0x32e8cf[_0x2f5b1c(0x1e5)]===STATIC_ANALYSIS[_0x2f5b1c(0x1ed)][_0x2f5b1c(0x23d)]):[],'info':_0x3abe3e[_0x2f5b1c(0x282)](_0x471d55=>_0x471d55[_0x2f5b1c(0x1e5)]===STATIC_ANALYSIS[_0x2f5b1c(0x1ed)]['INFO']),'totalIssues':_0x3abe3e[_0x2f5b1c(0x1bf)],'analyzed':!![],'timestamp':new Date()[_0x2f5b1c(0x27e)]()};return _0x29f0b8[_0x2f5b1c(0x1c3)]&&_0xcb3454['errors'][_0x2f5b1c(0x1bf)]>_0x29f0b8[_0x2f5b1c(0x1c3)]&&(_0xcb3454['errors']=_0xcb3454[_0x2f5b1c(0x243)][_0x2f5b1c(0x1b0)](0x0,_0x29f0b8[_0x2f5b1c(0x1c3)]),_0xcb3454[_0x2f5b1c(0x277)]=!![]),this[_0x2f5b1c(0x264)]&&this[_0x2f5b1c(0x247)]['set'](_0x1b9d75,{'result':_0xcb3454,'timestamp':Date[_0x2f5b1c(0x257)]()}),_0xcb3454;}catch(_0x263d5b){throw new Error('Failed\x20to\x20analyze\x20'+_0x3c1254+':\x20'+_0x263d5b[_0x2f5b1c(0x1f4)]);}}async['analyzeProject'](_0x1bb4f4,_0x94f932,_0x130f6a,_0xcd9766,_0x2e7846={}){const _0x4af8d4=a0_0x1ee867,_0x394d99=a0_0x410463[_0x4af8d4(0x1f6)](_0x1bb4f4)?a0_0x410463[_0x4af8d4(0x28f)](_0x1bb4f4):a0_0x410463[_0x4af8d4(0x221)](_0x130f6a,_0x1bb4f4),_0x11d2bb=this['directoryAccessManager'][_0x4af8d4(0x1e4)](_0x394d99,_0xcd9766);if(!_0x11d2bb['allowed'])throw new Error(_0x4af8d4(0x1c5)+_0x11d2bb['reason']);const _0x1b698c=await this['findFiles'](_0x394d99,_0x94f932);if(_0x1b698c[_0x4af8d4(0x1bf)]>this[_0x4af8d4(0x23b)])throw new Error(_0x4af8d4(0x205)+_0x1b698c['length']+'\x20(max\x20'+this[_0x4af8d4(0x23b)]+')');const _0x12e07c=[];if(this['parallelAnalysis']&&_0x1b698c['length']>0x1){this['logger']?.['debug']('Using\x20parallel\x20analysis',{'totalFiles':_0x1b698c['length'],'batchSize':this[_0x4af8d4(0x1e3)]});for(let _0x2ebe16=0x0;_0x2ebe16<_0x1b698c[_0x4af8d4(0x1bf)];_0x2ebe16+=this[_0x4af8d4(0x1e3)]){const _0x3317c2=_0x1b698c['slice'](_0x2ebe16,_0x2ebe16+this[_0x4af8d4(0x1e3)]);this['metrics'][_0x4af8d4(0x1d6)]++;const _0xccb05b={'completed':_0x2ebe16,'total':_0x1b698c['length'],'percentage':Math['round'](_0x2ebe16/_0x1b698c['length']*0x64)};_0x2e7846[_0x4af8d4(0x230)]&&_0x2e7846['onProgress'](_0xccb05b);this[_0x4af8d4(0x268)]?.[_0x4af8d4(0x1e6)]('Analyzing\x20batch',{'batch':Math['floor'](_0x2ebe16/this[_0x4af8d4(0x1e3)])+0x1,'filesInBatch':_0x3317c2['length'],'progress':_0xccb05b['completed']+'/'+_0xccb05b[_0x4af8d4(0x21f)]});const _0x5b0ba9=_0x3317c2[_0x4af8d4(0x1e2)](async _0x115abe=>{const _0x51a8d3=_0x4af8d4;try{const _0x21fb68=await this['analyzeFile'](_0x115abe,_0x130f6a,_0xcd9766,_0x2e7846);return _0x21fb68;}catch(_0x2b5bc0){return this['logger']?.[_0x51a8d3(0x1c0)](_0x51a8d3(0x1ee),{'file':_0x115abe,'error':_0x2b5bc0['message']}),{'file':this['directoryAccessManager']['createRelativePath'](_0x115abe,_0xcd9766),'fullPath':_0x115abe,'error':_0x2b5bc0[_0x51a8d3(0x1f4)],'success':![]};}}),_0x2d4c2c=await Promise[_0x4af8d4(0x1b6)](_0x5b0ba9);_0x12e07c[_0x4af8d4(0x218)](..._0x2d4c2c['filter'](_0xdb70b6=>_0xdb70b6!==null));}_0x2e7846['onProgress']&&_0x2e7846['onProgress']({'completed':_0x1b698c[_0x4af8d4(0x1bf)],'total':_0x1b698c[_0x4af8d4(0x1bf)],'percentage':0x64});}else for(const _0x47973a of _0x1b698c){try{const _0x51bcfd=await this['analyzeFile'](_0x47973a,_0x130f6a,_0xcd9766,_0x2e7846);_0x51bcfd&&_0x12e07c['push'](_0x51bcfd);}catch(_0x1fcc10){this[_0x4af8d4(0x268)]?.[_0x4af8d4(0x1c0)](_0x4af8d4(0x1ee),{'file':_0x47973a,'error':_0x1fcc10['message']}),_0x12e07c['push']({'file':this[_0x4af8d4(0x1b8)]['createRelativePath'](_0x47973a,_0xcd9766),'fullPath':_0x47973a,'error':_0x1fcc10[_0x4af8d4(0x1f4)],'success':![]});}}return _0x12e07c;}async['fixFile'](_0x30640e,_0x275fd9,_0x45eb58,_0x4594be={}){const _0x43e561=a0_0x1ee867,_0x327a8c=a0_0x410463[_0x43e561(0x1f6)](_0x30640e)?a0_0x410463['normalize'](_0x30640e):a0_0x410463[_0x43e561(0x221)](_0x275fd9,_0x30640e),_0x4f300d=this[_0x43e561(0x1b8)][_0x43e561(0x1e4)](_0x327a8c,_0x45eb58);if(!_0x4f300d['allowed'])throw new Error(_0x43e561(0x1c5)+_0x4f300d[_0x43e561(0x28d)]);if(_0x4594be[_0x43e561(0x1e7)]){const _0x557cae=this[_0x43e561(0x1b8)]['validateWriteAccess'](_0x327a8c,_0x45eb58);if(!_0x557cae[_0x43e561(0x271)])throw new Error(_0x43e561(0x23a)+_0x557cae['reason']);}try{const _0x79c938=await a0_0x332bed['readFile'](_0x327a8c,_0x43e561(0x288)),_0x1ff62f=await this['getESLintAnalyzer'](),_0x2fc961=await _0x1ff62f['fix'](_0x327a8c,_0x79c938,{'workingDir':_0x275fd9,'accessConfig':_0x45eb58,'framework':await this[_0x43e561(0x295)](_0x275fd9,this[_0x43e561(0x1b5)](_0x327a8c))});return _0x4594be['writeFile']&&_0x2fc961[_0x43e561(0x1ef)]&&(await a0_0x332bed[_0x43e561(0x1e7)](_0x327a8c,_0x2fc961['content'],'utf-8'),this['logger']?.[_0x43e561(0x1f3)]('File\x20fixed\x20and\x20written',{'file':_0x327a8c})),{'file':this['directoryAccessManager']['createRelativePath'](_0x327a8c,_0x45eb58),'fullPath':_0x327a8c,'action':_0x43e561(0x1f7),'fixed':_0x2fc961[_0x43e561(0x1ef)],'fixedCount':_0x2fc961['fixedCount'],'remainingErrors':_0x2fc961['remainingErrors'],'remainingWarnings':_0x2fc961[_0x43e561(0x238)],'changes':_0x2fc961[_0x43e561(0x1ea)],'written':!!(_0x4594be[_0x43e561(0x1e7)]&&_0x2fc961['fixed']),'preview':!_0x4594be['writeFile']&&_0x2fc961['fixed']?_0x2fc961[_0x43e561(0x1cb)]:undefined};}catch(_0x3efdeb){throw new Error('Failed\x20to\x20fix\x20'+_0x30640e+':\x20'+_0x3efdeb[_0x43e561(0x1f4)]);}}async['formatFile'](_0x3751ff,_0x891cc0,_0x2db81a,_0x1c66de={}){const _0x16a969=a0_0x1ee867,_0xb4d6d4=a0_0x410463[_0x16a969(0x1f6)](_0x3751ff)?a0_0x410463['normalize'](_0x3751ff):a0_0x410463['resolve'](_0x891cc0,_0x3751ff),_0x1f7efa=this[_0x16a969(0x1b8)][_0x16a969(0x1e4)](_0xb4d6d4,_0x2db81a);if(!_0x1f7efa['allowed'])throw new Error(_0x16a969(0x1c5)+_0x1f7efa['reason']);if(_0x1c66de[_0x16a969(0x1e7)]){const _0x24339d=this[_0x16a969(0x1b8)]['validateWriteAccess'](_0xb4d6d4,_0x2db81a);if(!_0x24339d[_0x16a969(0x271)])throw new Error('Write\x20access\x20denied:\x20'+_0x24339d[_0x16a969(0x28d)]);}try{const _0x2a4497=await a0_0x332bed[_0x16a969(0x274)](_0xb4d6d4,'utf-8'),_0x1e6349=await this['getPrettierFormatter']();if(!_0x1e6349[_0x16a969(0x249)](_0xb4d6d4))return{'file':this[_0x16a969(0x1b8)][_0x16a969(0x1d8)](_0xb4d6d4,_0x2db81a),'fullPath':_0xb4d6d4,'action':_0x16a969(0x240),'formatted':![],'skipped':!![],'skipReason':'File\x20type\x20not\x20supported\x20by\x20Prettier'};const _0x4ccbfb=await _0x1e6349['format'](_0xb4d6d4,_0x2a4497,{'workingDir':_0x891cc0,'accessConfig':_0x2db81a});return _0x1c66de[_0x16a969(0x1e7)]&&_0x4ccbfb['formatted']&&(await a0_0x332bed['writeFile'](_0xb4d6d4,_0x4ccbfb['content'],_0x16a969(0x288)),this[_0x16a969(0x268)]?.['info'](_0x16a969(0x22f),{'file':_0xb4d6d4})),{'file':this['directoryAccessManager'][_0x16a969(0x1d8)](_0xb4d6d4,_0x2db81a),'fullPath':_0xb4d6d4,'action':_0x16a969(0x240),'formatted':_0x4ccbfb[_0x16a969(0x1f1)],'linesChanged':_0x4ccbfb['linesChanged'],'changes':_0x4ccbfb['changes'],'written':!!(_0x1c66de['writeFile']&&_0x4ccbfb['formatted']),'preview':!_0x1c66de['writeFile']&&_0x4ccbfb[_0x16a969(0x1f1)]?_0x4ccbfb['content']:undefined};}catch(_0x4434c4){throw new Error('Failed\x20to\x20format\x20'+_0x3751ff+':\x20'+_0x4434c4['message']);}}async[a0_0x1ee867(0x203)](_0x2b4946,_0x5e547a,_0x1b494a,_0x44fc98={}){const _0xa98f37=a0_0x1ee867,_0x210990=a0_0x410463[_0xa98f37(0x1f6)](_0x2b4946)?a0_0x410463[_0xa98f37(0x28f)](_0x2b4946):a0_0x410463[_0xa98f37(0x221)](_0x5e547a,_0x2b4946),_0x5ba0c3=this['directoryAccessManager']['validateReadAccess'](_0x210990,_0x1b494a);if(!_0x5ba0c3['allowed'])throw new Error(_0xa98f37(0x1c5)+_0x5ba0c3[_0xa98f37(0x28d)]);try{const _0x1a2c22=await a0_0x332bed[_0xa98f37(0x272)](_0x210990);if(_0x1a2c22[_0xa98f37(0x1d1)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x1a2c22[_0xa98f37(0x1d1)]+'\x20bytes\x20(max\x20'+this[_0xa98f37(0x208)]+')');const _0x4d8e8a=this[_0xa98f37(0x1b5)](_0x210990);if(!_0x4d8e8a||![_0xa98f37(0x1e8),'typescript','python']['includes'](_0x4d8e8a))return{'file':this['directoryAccessManager'][_0xa98f37(0x1d8)](_0x210990,_0x1b494a),'fullPath':_0x210990,'language':_0x4d8e8a||_0xa98f37(0x255),'issues':[],'skipped':!![],'skipReason':'Security\x20scanning\x20only\x20supports\x20JavaScript,\x20TypeScript,\x20and\x20Python\x20files'};const _0x2383b5=await a0_0x332bed['readFile'](_0x210990,'utf-8'),_0x22451a=await this['getSecurityAnalyzer'](),_0x4874bf=await _0x22451a['analyze'](_0x210990,_0x2383b5,{'skipTestFiles':_0x44fc98[_0xa98f37(0x1b1)]!==![]}),_0x12d310={'file':this['directoryAccessManager'][_0xa98f37(0x1d8)](_0x210990,_0x1b494a),'fullPath':_0x210990,'language':_0x4d8e8a,'action':'security-scan','critical':_0x4874bf[_0xa98f37(0x282)](_0x417b30=>_0x417b30['severity']===STATIC_ANALYSIS[_0xa98f37(0x1ed)][_0xa98f37(0x1c8)]),'errors':_0x4874bf['filter'](_0x571249=>_0x571249['severity']===STATIC_ANALYSIS[_0xa98f37(0x1ed)]['ERROR']),'warnings':_0x4874bf['filter'](_0x76df7d=>_0x76df7d[_0xa98f37(0x1e5)]===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x4874bf[_0xa98f37(0x282)](_0xafb5b4=>_0xafb5b4[_0xa98f37(0x1e5)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x4874bf[_0xa98f37(0x1bf)],'analyzed':!![],'scannersUsed':_0x4874bf[_0xa98f37(0x1e2)](_0x46d053=>_0x46d053[_0xa98f37(0x220)])['filter']((_0x24eece,_0x36e82a,_0x53712f)=>_0x53712f[_0xa98f37(0x25c)](_0x24eece)===_0x36e82a),'timestamp':new Date()['toISOString']()};return _0x12d310;}catch(_0x1e597b){throw new Error('Failed\x20to\x20security\x20scan\x20'+_0x2b4946+':\x20'+_0x1e597b[_0xa98f37(0x1f4)]);}}async['securityScanProject'](_0xb992e5,_0xd2697f,_0x277353,_0x1cc5c1,_0x25372d={}){const _0x3b3288=a0_0x1ee867,_0x37e1f9=a0_0x410463['isAbsolute'](_0xb992e5)?a0_0x410463[_0x3b3288(0x28f)](_0xb992e5):a0_0x410463['resolve'](_0x277353,_0xb992e5),_0x420624=this['directoryAccessManager']['validateReadAccess'](_0x37e1f9,_0x1cc5c1);if(!_0x420624['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x420624[_0x3b3288(0x28d)]);const _0x4c336f=await this[_0x3b3288(0x1d7)](),_0x5f5c77=await _0x4c336f[_0x3b3288(0x1ca)](_0x37e1f9,'javascript',_0x25372d),_0x24f0c5=_0xd2697f||'**/*.{js,jsx,mjs,cjs,ts,tsx,py}',_0x212113=await this['findFiles'](_0x37e1f9,_0x24f0c5);if(_0x212113[_0x3b3288(0x1bf)]>this['maxFilesPerBatch'])throw new Error(_0x3b3288(0x205)+_0x212113['length']+'\x20(max\x20'+this[_0x3b3288(0x23b)]+')');const _0xbbdf4b=[];if(this['parallelAnalysis']&&_0x212113['length']>0x1){this['logger']?.[_0x3b3288(0x1e6)](_0x3b3288(0x24e),{'totalFiles':_0x212113['length'],'batchSize':this[_0x3b3288(0x1e3)]});for(let _0x699356=0x0;_0x699356<_0x212113['length'];_0x699356+=this[_0x3b3288(0x1e3)]){const _0xcb4e45=_0x212113['slice'](_0x699356,_0x699356+this[_0x3b3288(0x1e3)]);_0x25372d['onProgress']&&_0x25372d['onProgress']({'completed':_0x699356,'total':_0x212113[_0x3b3288(0x1bf)],'percentage':Math['round'](_0x699356/_0x212113[_0x3b3288(0x1bf)]*0x64)});const _0x6722f=_0xcb4e45[_0x3b3288(0x1e2)](async _0x3f686e=>{const _0x586461=_0x3b3288;try{return await this['securityScanFile'](_0x3f686e,_0x277353,_0x1cc5c1,_0x25372d);}catch(_0x298c86){return this['logger']?.[_0x586461(0x1c0)]('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x3f686e,'error':_0x298c86[_0x586461(0x1f4)]}),{'file':this['directoryAccessManager']['createRelativePath'](_0x3f686e,_0x1cc5c1),'fullPath':_0x3f686e,'error':_0x298c86[_0x586461(0x1f4)],'success':![]};}}),_0xade13e=await Promise[_0x3b3288(0x1b6)](_0x6722f);_0xbbdf4b['push'](..._0xade13e[_0x3b3288(0x282)](_0x68c826=>_0x68c826!==null));}_0x25372d['onProgress']&&_0x25372d['onProgress']({'completed':_0x212113[_0x3b3288(0x1bf)],'total':_0x212113[_0x3b3288(0x1bf)],'percentage':0x64});}else for(const _0x5c1c4d of _0x212113){try{const _0x44938e=await this[_0x3b3288(0x203)](_0x5c1c4d,_0x277353,_0x1cc5c1,_0x25372d);_0x44938e&&_0xbbdf4b[_0x3b3288(0x218)](_0x44938e);}catch(_0x46d411){this[_0x3b3288(0x268)]?.['warn'](_0x3b3288(0x242),{'file':_0x5c1c4d,'error':_0x46d411[_0x3b3288(0x1f4)]}),_0xbbdf4b[_0x3b3288(0x218)]({'file':this['directoryAccessManager']['createRelativePath'](_0x5c1c4d,_0x1cc5c1),'fullPath':_0x5c1c4d,'error':_0x46d411['message'],'success':![]});}}return _0x5f5c77['length']>0x0&&_0xbbdf4b['push']({'file':a0_0x410463[_0x3b3288(0x291)](_0x37e1f9,_0x3b3288(0x25b)),'fullPath':a0_0x410463[_0x3b3288(0x291)](_0x37e1f9,'package.json'),'action':'dependency-scan','critical':_0x5f5c77[_0x3b3288(0x282)](_0x4090c3=>_0x4090c3[_0x3b3288(0x1e5)]===STATIC_ANALYSIS[_0x3b3288(0x1ed)]['CRITICAL']),'errors':_0x5f5c77[_0x3b3288(0x282)](_0x9691ae=>_0x9691ae['severity']===STATIC_ANALYSIS[_0x3b3288(0x1ed)][_0x3b3288(0x234)]),'warnings':_0x5f5c77['filter'](_0x36a2d2=>_0x36a2d2['severity']===STATIC_ANALYSIS[_0x3b3288(0x1ed)][_0x3b3288(0x23d)]),'info':_0x5f5c77[_0x3b3288(0x282)](_0x124772=>_0x124772['severity']===STATIC_ANALYSIS['SEVERITY'][_0x3b3288(0x278)]),'totalIssues':_0x5f5c77['length'],'analyzed':!![],'scannersUsed':[_0x3b3288(0x20f)],'timestamp':new Date()[_0x3b3288(0x27e)]()}),_0xbbdf4b;}async[a0_0x1ee867(0x1d0)](_0x27501c,_0x5533ae,_0x19517c,_0x53a246={}){const _0x38ec39=a0_0x1ee867,_0x1d39a4=a0_0x410463['isAbsolute'](_0x27501c)?a0_0x410463['normalize'](_0x27501c):a0_0x410463[_0x38ec39(0x221)](_0x5533ae,_0x27501c),_0x25f095=this['directoryAccessManager'][_0x38ec39(0x1e4)](_0x1d39a4,_0x19517c);if(!_0x25f095[_0x38ec39(0x271)])throw new Error('Read\x20access\x20denied:\x20'+_0x25f095[_0x38ec39(0x28d)]);try{const _0x17fcf2=await a0_0x332bed[_0x38ec39(0x272)](_0x1d39a4);if(_0x17fcf2['size']>this['maxFileSize'])throw new Error(_0x38ec39(0x24c)+_0x17fcf2[_0x38ec39(0x1d1)]+'\x20bytes\x20(max\x20'+this[_0x38ec39(0x208)]+')');const _0x4db3b7=await this['getConfigValidator'](),_0x2e4595=await _0x4db3b7['validate'](_0x1d39a4,_0x53a246),_0x52e3cc={'file':this[_0x38ec39(0x1b8)][_0x38ec39(0x1d8)](_0x1d39a4,_0x19517c),'fullPath':_0x1d39a4,'action':_0x38ec39(0x211),'critical':_0x2e4595['filter'](_0x113c0b=>_0x113c0b['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x2e4595['filter'](_0x409db=>_0x409db['severity']===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x2e4595[_0x38ec39(0x282)](_0x9102a1=>_0x9102a1['severity']===STATIC_ANALYSIS[_0x38ec39(0x1ed)][_0x38ec39(0x23d)]),'info':_0x2e4595[_0x38ec39(0x282)](_0x5cecfa=>_0x5cecfa['severity']===STATIC_ANALYSIS[_0x38ec39(0x1ed)]['INFO']),'totalIssues':_0x2e4595['length'],'analyzed':!![],'validatorsUsed':_0x2e4595[_0x38ec39(0x1e2)](_0x2b55f6=>_0x2b55f6[_0x38ec39(0x227)])[_0x38ec39(0x282)]((_0x81b04f,_0x3b882e,_0x2b2876)=>_0x2b2876[_0x38ec39(0x25c)](_0x81b04f)===_0x3b882e),'timestamp':new Date()[_0x38ec39(0x27e)]()};return _0x52e3cc;}catch(_0x4694b1){throw new Error(_0x38ec39(0x201)+_0x27501c+':\x20'+_0x4694b1['message']);}}async['validateConfigDirectory'](_0x5309e9,_0x4023e8,_0x4e49a5,_0xa6fb4b={}){const _0x1c0adf=a0_0x1ee867,_0x12a966=a0_0x410463['isAbsolute'](_0x5309e9)?a0_0x410463[_0x1c0adf(0x28f)](_0x5309e9):a0_0x410463['resolve'](_0x4023e8,_0x5309e9),_0x562de7=this[_0x1c0adf(0x1b8)][_0x1c0adf(0x1e4)](_0x12a966,_0x4e49a5);if(!_0x562de7['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x562de7[_0x1c0adf(0x28d)]);const _0x28817b=await this['findConfigFiles'](_0x12a966);if(_0x28817b['length']>this['maxFilesPerBatch'])throw new Error('Too\x20many\x20config\x20files:\x20'+_0x28817b[_0x1c0adf(0x1bf)]+_0x1c0adf(0x219)+this[_0x1c0adf(0x23b)]+')');const _0x256bc0=[];for(const _0xc04f70 of _0x28817b){try{const _0x1b9078=await this['validateConfigFile'](_0xc04f70,_0x4023e8,_0x4e49a5,_0xa6fb4b);_0x1b9078&&_0x256bc0[_0x1c0adf(0x218)](_0x1b9078);}catch(_0x441585){this['logger']?.[_0x1c0adf(0x1c0)](_0x1c0adf(0x1cc),{'file':_0xc04f70,'error':_0x441585['message']}),_0x256bc0['push']({'file':this['directoryAccessManager'][_0x1c0adf(0x1d8)](_0xc04f70,_0x4e49a5),'fullPath':_0xc04f70,'error':_0x441585['message'],'success':![]});}}return _0x256bc0;}async[a0_0x1ee867(0x224)](_0x5efdee){const _0x31ca78=a0_0x1ee867,_0x12ea20=[],_0x42db05=['package.json',_0x31ca78(0x225),_0x31ca78(0x23c),_0x31ca78(0x223),'docker-compose.yaml','.env',_0x31ca78(0x1fa),_0x31ca78(0x1de),_0x31ca78(0x1bd),'.prettierrc',_0x31ca78(0x237)],_0x2c565e=[_0x31ca78(0x26c),_0x31ca78(0x229),'.json','.tf','.tfvars'],_0x452a69=async _0x585933=>{const _0x398c13=_0x31ca78,_0xfc0d52=await a0_0x332bed[_0x398c13(0x1c4)](_0x585933,{'withFileTypes':!![]});for(const _0x4db369 of _0xfc0d52){const _0x192e38=a0_0x410463[_0x398c13(0x291)](_0x585933,_0x4db369[_0x398c13(0x1da)]);if(_0x4db369['isDirectory']()){if(_0x4db369[_0x398c13(0x1da)]==='.github'||_0x4db369[_0x398c13(0x1da)]===_0x398c13(0x260)||_0x4db369['name']==='k8s'||_0x4db369['name']===_0x398c13(0x1c1))await _0x452a69(_0x192e38);else{if(!['node_modules','.git',_0x398c13(0x1f8),_0x398c13(0x200)][_0x398c13(0x285)](_0x4db369[_0x398c13(0x1da)]))continue;}}else{if(_0x4db369['isFile']()){if(_0x42db05[_0x398c13(0x285)](_0x4db369[_0x398c13(0x1da)]))_0x12ea20[_0x398c13(0x218)](_0x192e38);else{const _0x2705da=a0_0x410463['extname'](_0x4db369['name'])[_0x398c13(0x279)]();if(_0x2c565e[_0x398c13(0x285)](_0x2705da)){const _0x4c68a8=a0_0x410463[_0x398c13(0x20b)](a0_0x410463['dirname'](_0x192e38));(_0x4c68a8===_0x398c13(0x260)||_0x4c68a8===_0x398c13(0x1d9)||_0x4c68a8==='terraform'||_0x4c68a8===_0x398c13(0x1c6))&&_0x12ea20['push'](_0x192e38);}}}}}};return await _0x452a69(_0x5efdee),_0x12ea20;}['detectLanguage'](_0x21edd0){const _0x318ba3=a0_0x1ee867,_0x38f6c8=a0_0x410463['extname'](_0x21edd0)[_0x318ba3(0x279)]();return STATIC_ANALYSIS[_0x318ba3(0x22e)][_0x38f6c8]||null;}async['detectFramework'](_0x7ac9e3,_0x5d0f45){const _0x283ef9=a0_0x1ee867;try{if(_0x5d0f45===STATIC_ANALYSIS['LANGUAGE']['JAVASCRIPT']||_0x5d0f45===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT'])return await this[_0x283ef9(0x22d)](_0x7ac9e3);if(_0x5d0f45===STATIC_ANALYSIS['LANGUAGE'][_0x283ef9(0x24b)])return await this[_0x283ef9(0x24f)](_0x7ac9e3);return null;}catch(_0x31caaf){return this['logger']?.[_0x283ef9(0x1e6)]('Framework\x20detection\x20failed',{'error':_0x31caaf['message']}),null;}}async[a0_0x1ee867(0x22d)](_0x155d83){const _0x19e742=a0_0x1ee867;try{const _0x290eb7=a0_0x410463[_0x19e742(0x291)](_0x155d83,STATIC_ANALYSIS[_0x19e742(0x25a)][_0x19e742(0x204)]),_0x1a1b00=await a0_0x332bed[_0x19e742(0x274)](_0x290eb7,'utf-8'),_0x556024=JSON[_0x19e742(0x226)](_0x1a1b00),_0x23ffa0={..._0x556024['dependencies'],..._0x556024[_0x19e742(0x1b3)]};for(const [_0x352cb2,_0x23341b]of Object['entries'](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x23ffa0[_0x23341b])return _0x352cb2[_0x19e742(0x279)]();}return null;}catch(_0x4c2f1f){return null;}}async[a0_0x1ee867(0x24f)](_0x2a43c4){const _0x57dd69=a0_0x1ee867;try{const _0x45d11d=a0_0x410463[_0x57dd69(0x291)](_0x2a43c4,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON']),_0x57a90b=await a0_0x332bed['readFile'](_0x45d11d,'utf-8');for(const [_0x41631d,_0x3a3222]of Object[_0x57dd69(0x207)](STATIC_ANALYSIS[_0x57dd69(0x244)])){if(_0x57a90b[_0x57dd69(0x279)]()['includes'](_0x3a3222))return _0x41631d['toLowerCase']();}return null;}catch(_0xb806){try{const _0x2852ae=a0_0x410463['join'](_0x2a43c4,STATIC_ANALYSIS[_0x57dd69(0x25a)]['PYTHON_POETRY']),_0x532c11=await a0_0x332bed['readFile'](_0x2852ae,'utf-8');for(const [_0x218822,_0x2d4faa]of Object[_0x57dd69(0x207)](STATIC_ANALYSIS['PYTHON_FRAMEWORKS'])){if(_0x532c11[_0x57dd69(0x279)]()[_0x57dd69(0x285)](_0x2d4faa))return _0x218822[_0x57dd69(0x279)]();}}catch{}return null;}}async['findFiles'](_0x25bf42,_0x45f70b){const _0x165c7a=a0_0x1ee867,_0x2cea81=[],_0x534ef1=_0x45f70b||_0x165c7a(0x25d),_0x665aec=_0x27b9c1=>{const _0x23bdec=_0x165c7a,_0x18d084=[],_0x5ccbd3=_0x27b9c1[_0x23bdec(0x1f5)](/\*\.\{([^}]+)\}/);if(_0x5ccbd3){const _0x513121=_0x5ccbd3[0x1][_0x23bdec(0x267)](',')['map'](_0x54c3fa=>_0x54c3fa['trim']());_0x513121['forEach'](_0x2dd0ef=>_0x18d084['push'](_0x2dd0ef[_0x23bdec(0x250)]('.')?_0x2dd0ef:'.'+_0x2dd0ef));}else{const _0x3d8c82=_0x27b9c1['match'](/\*\.([a-z]+)$/i);if(_0x3d8c82){const _0x5375f3=_0x3d8c82[0x1];_0x18d084['push'](_0x5375f3[_0x23bdec(0x250)]('.')?_0x5375f3:'.'+_0x5375f3);}}if(_0x18d084[_0x23bdec(0x1bf)]===0x0)return null;return _0x18d084;},_0x49e1df=_0x665aec(_0x534ef1),_0x5b3626=async _0x4eec04=>{const _0x474048=_0x165c7a,_0x4eaca4=await a0_0x332bed['readdir'](_0x4eec04,{'withFileTypes':!![]});for(const _0x391481 of _0x4eaca4){const _0x507228=a0_0x410463['join'](_0x4eec04,_0x391481[_0x474048(0x1da)]);if(_0x391481['isDirectory']())!['node_modules',_0x474048(0x27a),'dist','build',_0x474048(0x21c),'.venv','venv']['includes'](_0x391481['name'])&&await _0x5b3626(_0x507228);else{if(_0x391481[_0x474048(0x1ba)]()){const _0x3616c9=a0_0x410463[_0x474048(0x241)](_0x391481[_0x474048(0x1da)])[_0x474048(0x279)]();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x3616c9]&&((_0x49e1df===null||_0x49e1df[_0x474048(0x285)](_0x3616c9))&&_0x2cea81[_0x474048(0x218)](_0x507228));}}}};return await _0x5b3626(_0x25bf42),_0x2cea81;}async[a0_0x1ee867(0x1b2)](_0x4c1e8d){const _0x16c666=a0_0x1ee867;try{if(_0x4c1e8d===STATIC_ANALYSIS['LANGUAGE'][_0x16c666(0x204)]){if(!this['analyzers']['javascript']){const {default:_0x477813}=await import('../analyzers/JavaScriptAnalyzer.js');this['analyzers']['javascript']=new _0x477813(this[_0x16c666(0x268)]);}return this['analyzers']['javascript'];}if(_0x4c1e8d===STATIC_ANALYSIS[_0x16c666(0x1b7)][_0x16c666(0x246)]){if(!this[_0x16c666(0x1c7)]['typescript']){const {default:_0x769a22}=await import('../analyzers/TypeScriptAnalyzer.js');this[_0x16c666(0x1c7)][_0x16c666(0x294)]=new _0x769a22(this['logger']);}return this[_0x16c666(0x1c7)]['typescript'];}if(_0x4c1e8d===STATIC_ANALYSIS['LANGUAGE'][_0x16c666(0x24b)]){if(!this['analyzers'][_0x16c666(0x233)]){const {default:_0x2ecd74}=await import(_0x16c666(0x1bb));this['analyzers']['python']=new _0x2ecd74(this[_0x16c666(0x268)]);}return this[_0x16c666(0x1c7)]['python'];}if(_0x4c1e8d===STATIC_ANALYSIS['LANGUAGE']['CSS']||_0x4c1e8d===STATIC_ANALYSIS[_0x16c666(0x1b7)][_0x16c666(0x276)]||_0x4c1e8d===STATIC_ANALYSIS[_0x16c666(0x1b7)][_0x16c666(0x1f2)]){if(!this['analyzers'][_0x16c666(0x1f9)]){const {default:_0x226777}=await import('../analyzers/CSSAnalyzer.js');this[_0x16c666(0x1c7)][_0x16c666(0x1f9)]=new _0x226777(this['logger']);}return this[_0x16c666(0x1c7)][_0x16c666(0x1f9)];}return null;}catch(_0x29446d){return this[_0x16c666(0x268)]?.['error'](_0x16c666(0x1c2),{'language':_0x4c1e8d,'error':_0x29446d[_0x16c666(0x1f4)]}),null;}}async['getESLintAnalyzer'](){const _0x244248=a0_0x1ee867;if(!this[_0x244248(0x1c7)][_0x244248(0x26f)]){const {default:_0x2c2322}=await import('../analyzers/ESLintAnalyzer.js');this['analyzers']['eslint']=new _0x2c2322(this[_0x244248(0x268)]);}return this[_0x244248(0x1c7)]['eslint'];}async[a0_0x1ee867(0x248)](){const _0x152131=a0_0x1ee867;if(!this['formatters']['prettier']){const {default:_0x1e56f6}=await import('../analyzers/PrettierFormatter.js');this[_0x152131(0x1bc)]['prettier']=new _0x1e56f6(this[_0x152131(0x268)]);}return this[_0x152131(0x1bc)]['prettier'];}async[a0_0x1ee867(0x1d7)](){const _0x3b4fdf=a0_0x1ee867;if(!this['analyzers'][_0x3b4fdf(0x275)]){const {default:_0x27057d}=await import(_0x3b4fdf(0x215));this[_0x3b4fdf(0x1c7)][_0x3b4fdf(0x275)]=new _0x27057d(this['logger']);}return this['analyzers']['security'];}async[a0_0x1ee867(0x1ff)](){const _0x4dc0f3=a0_0x1ee867;if(!this['analyzers']['config']){const {default:_0x379eec}=await import(_0x4dc0f3(0x1e9));this['analyzers'][_0x4dc0f3(0x281)]=new _0x379eec(this['logger']);}return this[_0x4dc0f3(0x1c7)][_0x4dc0f3(0x281)];}['updateSummary'](_0x5c09ae,_0x4f4e47){const _0x250bd0=a0_0x1ee867;if(_0x4f4e47['analyzed']){_0x5c09ae['totalFiles']++;const _0x3ac560=_0x4f4e47[_0x250bd0(0x20a)]?.[_0x250bd0(0x1bf)]||0x0,_0x16de28=_0x4f4e47['errors']?.['length']||0x0,_0x4a2ba3=_0x4f4e47[_0x250bd0(0x26b)]?.['length']||0x0,_0x6615ad=_0x4f4e47[_0x250bd0(0x1f3)]?.[_0x250bd0(0x1bf)]||0x0;_0x5c09ae['totalCritical']===undefined&&(_0x5c09ae['totalCritical']=0x0);_0x5c09ae[_0x250bd0(0x21d)]+=_0x3ac560,_0x5c09ae['totalErrors']+=_0x16de28,_0x5c09ae['totalWarnings']+=_0x4a2ba3,_0x5c09ae['totalInfo']+=_0x6615ad;(_0x3ac560>0x0||_0x16de28>0x0)&&_0x5c09ae['filesWithErrors']++;_0x4f4e47[_0x250bd0(0x1b9)]&&(_0x5c09ae[_0x250bd0(0x22b)][_0x4f4e47[_0x250bd0(0x1b9)]]=(_0x5c09ae[_0x250bd0(0x22b)][_0x4f4e47['language']]||0x0)+0x1);const _0x19c25d=[..._0x4f4e47[_0x250bd0(0x20a)]||[],..._0x4f4e47['errors']||[],..._0x4f4e47['warnings']||[]];for(const _0x2881d5 of _0x19c25d){_0x2881d5['category']&&(_0x5c09ae['errorsByCategory'][_0x2881d5['category']]=(_0x5c09ae[_0x250bd0(0x202)][_0x2881d5[_0x250bd0(0x228)]]||0x0)+0x1);}}}[a0_0x1ee867(0x284)](_0x2a7c4c){const _0x51bb91=a0_0x1ee867;return a0_0x35e28c['createHash']('sha256')[_0x51bb91(0x1b4)](_0x2a7c4c)[_0x51bb91(0x217)](_0x51bb91(0x23e))[_0x51bb91(0x1be)](0x0,0x10);}['getPerformanceMetrics'](){const _0xbc9227=a0_0x1ee867,_0xc63022=this['metrics']['totalAnalyses']>0x0?this[_0xbc9227(0x28b)][_0xbc9227(0x20c)]/this['metrics'][_0xbc9227(0x26e)]*0x64:0x0,_0x40a05e=this['metrics'][_0xbc9227(0x1d5)]>0x0?this['metrics'][_0xbc9227(0x1e0)]/this['metrics'][_0xbc9227(0x1d5)]:0x0;return{...this[_0xbc9227(0x28b)],'cacheHitRate':Math[_0xbc9227(0x20e)](_0xc63022*0xa)/0xa,'averageAnalysisTime':Math['round'](_0x40a05e),'cacheSize':this[_0xbc9227(0x247)]['size']};}['resetPerformanceMetrics'](){this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}[a0_0x1ee867(0x231)](){const _0x394ed8=a0_0x1ee867;this['analysisCache']['clear'](),this['logger']?.[_0x394ed8(0x1e6)](_0x394ed8(0x1fd));}['getSupportedActions'](){const _0x3c5c40=a0_0x1ee867;return[_0x3c5c40(0x1dd),'analyze-project',_0x3c5c40(0x1f7),'format','security-scan','security-scan-project',_0x3c5c40(0x211),_0x3c5c40(0x1dc)];}[a0_0x1ee867(0x245)](){const _0x262bf4=a0_0x1ee867;return{'type':_0x262bf4(0x283),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x262bf4(0x283),'properties':{'type':{'type':_0x262bf4(0x21b),'enum':this[_0x262bf4(0x213)]()},'filePath':{'type':'string'},'directory':{'type':_0x262bf4(0x21b)},'pattern':{'type':'string'},'includeWarnings':{'type':_0x262bf4(0x273)},'maxErrors':{'type':_0x262bf4(0x263)}},'required':[_0x262bf4(0x206)]}}},'required':['actions']};}}export default StaticAnalysisTool;
|