@loxia-labs/loxia-autopilot-one 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
  117. package/web-ui/build/index.html +2 -2
  118. package/web-ui/build/static/index-BmKxmRe3.css +1 -0
  119. package/web-ui/build/static/{index-CX8ZfpGw.js → index-BzXbDs8z.js} +69 -69
  120. package/web-ui/build/static/index-Dwg_JrlO.css +0 -1
@@ -1 +1 @@
1
- function a0_0x1cd2(_0x47d1f7,_0x4ed480){_0x47d1f7=_0x47d1f7-0xf4;const _0x5dc7ab=a0_0x5dc7();let _0x1cd24d=_0x5dc7ab[_0x47d1f7];if(a0_0x1cd2['rgoYyp']===undefined){var _0x24b52e=function(_0x16ac6b){const _0x163967='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17a1a2='',_0x3b0ed1='';for(let _0x4e1667=0x0,_0x4c662f,_0x2637ad,_0xa67915=0x0;_0x2637ad=_0x16ac6b['charAt'](_0xa67915++);~_0x2637ad&&(_0x4c662f=_0x4e1667%0x4?_0x4c662f*0x40+_0x2637ad:_0x2637ad,_0x4e1667++%0x4)?_0x17a1a2+=String['fromCharCode'](0xff&_0x4c662f>>(-0x2*_0x4e1667&0x6)):0x0){_0x2637ad=_0x163967['indexOf'](_0x2637ad);}for(let _0x2b9f38=0x0,_0x10022a=_0x17a1a2['length'];_0x2b9f38<_0x10022a;_0x2b9f38++){_0x3b0ed1+='%'+('00'+_0x17a1a2['charCodeAt'](_0x2b9f38)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b0ed1);};a0_0x1cd2['tZRbtF']=_0x24b52e,a0_0x1cd2['LXaAIp']={},a0_0x1cd2['rgoYyp']=!![];}const _0x3d260=_0x5dc7ab[0x0],_0x25279b=_0x47d1f7+_0x3d260,_0x18535d=a0_0x1cd2['LXaAIp'][_0x25279b];return!_0x18535d?(_0x1cd24d=a0_0x1cd2['tZRbtF'](_0x1cd24d),a0_0x1cd2['LXaAIp'][_0x25279b]=_0x1cd24d):_0x1cd24d=_0x18535d,_0x1cd24d;}const a0_0x1dfe8e=a0_0x1cd2;(function(_0xfa9acd,_0x1675c9){const _0x87c6fc=a0_0x1cd2,_0x380307=_0xfa9acd();while(!![]){try{const _0x29a42d=-parseInt(_0x87c6fc(0xfb))/0x1*(-parseInt(_0x87c6fc(0x12b))/0x2)+-parseInt(_0x87c6fc(0x152))/0x3+-parseInt(_0x87c6fc(0x141))/0x4*(-parseInt(_0x87c6fc(0x174))/0x5)+-parseInt(_0x87c6fc(0x170))/0x6*(parseInt(_0x87c6fc(0xf9))/0x7)+parseInt(_0x87c6fc(0x164))/0x8*(parseInt(_0x87c6fc(0x115))/0x9)+-parseInt(_0x87c6fc(0x17e))/0xa+parseInt(_0x87c6fc(0x146))/0xb;if(_0x29a42d===_0x1675c9)break;else _0x380307['push'](_0x380307['shift']());}catch(_0x2d053a){_0x380307['push'](_0x380307['shift']());}}}(a0_0x5dc7,0xa80f7));import{BaseTool}from'./baseTool.js';import a0_0x17a1a2 from'../utilities/tagParser.js';import{promises as a0_0x3b0ed1}from'fs';function a0_0x5dc7(){const _0x3603ec=['rgLYzwn0B3j5ig5VDcbMB3vUzcbMB3iGz2XVyIbWyxr0zxjU','zM91BMq','rKLmrvmGv0LuscbfuLjpuLm6cG','xcqM','C3rHDa','z2v0rgvZy3jPChrPB24','lNjI','zxH0BMfTzq','qMfZzsbKAxjLy3rVCNKGBM90igzVDw5KigzVCIbNBg9IihbHDhrLCM4','lMnHy2HL','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','mJyYntnLDxzUqvm','BwvZC2fNzq','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','zMLUzezPBgvZuMvJDxjZAxzLBhK','DgvTCa','oIbWyxrOihrYyxzLCNnHBcaOlI4Pig5VDcbHBgXVD2vKigzVCIbZzwn1CML0Eq','lMjTCa','AxnqyxrOqwnJzxnZAwjSzq','lMH0BwW','Dg1W','C2HVDwXKu2TPCerPCMvJDg9YEq','Aw5KzxHpzG','vg9Vig1HBNKGC2vHCMnOihrLCM1ZicHTyxGG','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','DgLTzw91Da','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','BgLUzu51BwjLCG','rMfPBgvKihrVihjLywqGzMLSztOG','lMnWCa','AxnbCNjHEq','C2vLA0nVBMzPzW','CMvWBgfJzq','mtjLqKTeA0q','C3bSAxq','CM91BMq','DgfYz2v0','zxHLyW','lNrZEa','zw50CMLLCW','AxnbyNnVBhv0zq','CMvHze9UBhLeAxjLy3rVCMLLCW','BM90rM91BMq','lMPZ','zMLSzvbHDgG','BMfTzq','BM9Kzv9TB2r1BgvZ','lMD6','icaTia','Bwf0y2HLCW','tuiGCgvYigzPBguklsbdyxnLlxnLBNnPDgL2zsbZzwfYy2GGB25SEqOTiev4ywn0ihn0CMLUzYbTyxrJAgLUzYaOBM90ihjLz2v4kqOTifbHDgHZig91DhnPzguGywnJzxnZAwjSzsbKAxjLy3rVCMLLCYb3AwXSigjLihjLCg9YDgvKigfZicjUB3qGzM91BMqIcIaGica','DMvUzg9Y','D29YA2LUz0rPCMvJDg9YEq','D2fYBG','zMLSzvbHDgHZ','mJiYofHLEvruBG','lMnVBMy','Aw5MBW','zxHWyw5Kr2XVyLbHDhrLCM4','lMPWzW','mtiYoti0mZrlBuvJt0G','yNvPBgq','tufyx0XjtKvFq09ovevovf9mru5hveG','uhjVAMvJDcbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLzwSGDg9VBa','ihnLyxjJAcb0zxjTCWOTie1HEgLTDw0G','tM8GBwf0y2HLCYbMB3vUzcbMB3iGDgHLihnWzwnPzMLLzcbZzwfYy2GGDgvYBxmGAw4G','y3DK','lNnHC3m','C2vHCMnOrMLSzxm','DgvZDa','CMvXDwLYzxnqCM9Qzwn0','C2L6zq','mZK0mdq2murpzLrlta','lMjHC2G','lM1WmW','icHPCYbHigrPCMvJDg9YEsWGBM90igeGzMLSzsK','lNr0zG','u2vLAYb0B29Sigv4zwn1DgLVBIbMywLSzwq','igzPBguOCYKPoGOk','C3rHCNrZv2L0Aa','u2vHCMnOihrLCM06ici','zM9YBwf0uMvZDwX0CW','AxneAxjLy3rVCNK','rMLSzsb0B28GBgfYz2uGka','tufyx01bvenirvnFuevsx0zjteu','AM9PBG','Dg9mB3DLCKnHC2u','Bg9Nz2vY','lM51Ehq','yMfZzw5HBwu','odHwAfjsquu','lMf2Aq','zgLZDa','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','tufyx0zjtevFu0LArq','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','kIOV','Aw5JBhvKzxm','rMfPBgvKihrVihbHCNnLihnLzwSGCgfYyw1LDgvYCW','CMvSyxrPDMu','AxngAwXL','mtKWmZu0mMv1y0jqAW','lNDVzMy','B3v0','lIbvC2uGBw9YzsbZCgvJAwzPyYbMAwXLihbHDhrLCM5ZlG','nZu1uwzYu0H4','DhjPBq','lNPPCa','lM1Wna','icHUB3qGAw4GywnJzxnZAwjSzsbKAxjLy3rVCMLLCYK','tufyx0rjuKvdve9swv9ervbusa','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','CgfYC2vqyxjHBwv0zxjZ','lI4U','CMvZB2X2zuzPBgvqyxrOCW','otK4mdmWENLguune','C2vHCMnOvgvYBxm','igzPBguOCYKUcG','rMLSzsbWyxrOia','lMDPDa','ic0G','lM1VDG','lNHTBa','BgvUz3rO','tufyx1rpvefmx01bvenirvm','lMrI','zNjVBq','n0zUAenWAa','tuiSig1HEca','mtK3ntm5AxfPB05l','lJD6','CMvZB2X2zq','ChvZAa','lMHWCa','lNDVzMyY','AgfZ','zxjYB3i','lNbKzG','tufyx1nfqvjdsf9urvjnuW','lMnZCW','Bwf4','lNbUzW','zgLYBMfTzq','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG'];a0_0x5dc7=function(){return _0x3603ec;};return a0_0x5dc7();}import a0_0x4e1667 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([a0_0x1dfe8e(0x107),a0_0x1dfe8e(0x145),'.jpeg','.gif',a0_0x1dfe8e(0x11b),'.ico','.svg',a0_0x1dfe8e(0x103),a0_0x1dfe8e(0x176),'.tar',a0_0x1dfe8e(0x139),'.rar',a0_0x1dfe8e(0xfc),'.exe','.dll','.so','.dylib',a0_0x1dfe8e(0x154),a0_0x1dfe8e(0x177),a0_0x1dfe8e(0x165),a0_0x1dfe8e(0x184),'.wmv',a0_0x1dfe8e(0x171),a0_0x1dfe8e(0x100),a0_0x1dfe8e(0x156),'.eot','.bin','.dat',a0_0x1dfe8e(0xf7),'.sqlite']);class SeekTool extends BaseTool{constructor(_0x4c662f={},_0x2637ad=null){const _0x2280d2=a0_0x1dfe8e;super(_0x4c662f,_0x2637ad),this[_0x2280d2(0x150)]=!![],this['isAsync']=!![],this[_0x2280d2(0x123)]=_0x4c662f['timeout']||0x1d4c0,this[_0x2280d2(0x129)]={...SEEK_CONFIG,..._0x4c662f['seekConfig']};}[a0_0x1dfe8e(0x10f)](){const _0xa11578=a0_0x1dfe8e;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[_0xa11578(0x168)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG[_0xa11578(0xf6)]+_0xa11578(0x17a)+SEEK_CONFIG['MAX_FILES_PER_SEARCH']+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_SEARCH_TERMS']+_0xa11578(0x14a)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0xa11578(0x13c);}[a0_0x1dfe8e(0x17b)](_0xa67915){const _0x5112ad=a0_0x1dfe8e;try{if(_0xa67915['trim']()['startsWith']('{')){const _0x3e5b8b=JSON['parse'](_0xa67915);return{'filePaths':_0x3e5b8b['filePaths']||[],'searchTerms':_0x3e5b8b['searchTerms']||[]};}const _0x2b9f38={'filePaths':[],'searchTerms':[]},_0x10022a=/<in-files>([\s\S]*?)<\/in-files>/i,_0x3e11f3=_0x10022a[_0x5112ad(0x12f)](_0xa67915);if(_0x3e11f3){const _0x559dc7=_0x3e11f3[0x1];_0x2b9f38['filePaths']=_0x559dc7['split']('\x0a')['map'](_0x572463=>_0x572463['trim']())['filter'](_0x3ef6cb=>_0x3ef6cb[_0x5112ad(0xf5)]>0x0);}const _0x35b955=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x34833c=_0x35b955['exec'](_0xa67915);if(_0x34833c){const _0x424be5=_0x34833c[0x1],_0x1d411b=/<term>(.*?)<\/term>/gi;let _0x5247de;while((_0x5247de=_0x1d411b['exec'](_0x424be5))!==null){const _0x3b646b=_0x5247de[0x1][_0x5112ad(0x175)]();_0x3b646b['length']>0x0&&_0x2b9f38['searchTerms'][_0x5112ad(0xfe)](_0x3b646b);}}return _0x2b9f38;}catch(_0x141d19){return this['logger']?.['error'](_0x5112ad(0x16d),{'error':_0x141d19['message']}),{'filePaths':[],'searchTerms':[],'parseError':_0x141d19[_0x5112ad(0x116)]};}}['getRequiredParameters'](){const _0x2f8936=a0_0x1dfe8e;return[_0x2f8936(0x140),_0x2f8936(0x17f)];}[a0_0x1dfe8e(0x114)](_0x58381c){const _0xb82047=a0_0x1dfe8e,_0x203afc=[];if(!_0x58381c['filePaths']||!Array['isArray'](_0x58381c[_0xb82047(0x140)])||_0x58381c['filePaths']['length']===0x0)_0x203afc[_0xb82047(0xfe)]('At\x20least\x20one\x20file\x20path\x20is\x20required');else _0x58381c[_0xb82047(0x140)][_0xb82047(0xf5)]>this[_0xb82047(0x129)]['MAX_FILE_PATHS']&&_0x203afc[_0xb82047(0xfe)]('Too\x20many\x20file\x20paths\x20(max\x20'+this['seekConfig']['MAX_FILE_PATHS']+')');if(!_0x58381c[_0xb82047(0x17f)]||!Array['isArray'](_0x58381c[_0xb82047(0x17f)])||_0x58381c[_0xb82047(0x17f)]['length']===0x0)_0x203afc['push']('At\x20least\x20one\x20search\x20term\x20is\x20required');else _0x58381c[_0xb82047(0x17f)][_0xb82047(0xf5)]>this[_0xb82047(0x129)]['MAX_SEARCH_TERMS']&&_0x203afc[_0xb82047(0xfe)](_0xb82047(0x121)+this['seekConfig'][_0xb82047(0x104)]+')');if(_0x58381c[_0xb82047(0x17f)]&&Array['isArray'](_0x58381c['searchTerms']))for(const [_0x569052,_0x5be664]of _0x58381c['searchTerms']['entries']()){(typeof _0x5be664!=='string'||_0x5be664['trim']()['length']===0x0)&&_0x203afc[_0xb82047(0xfe)]('Search\x20term\x20'+(_0x569052+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string');}if(_0x58381c[_0xb82047(0x140)]&&Array[_0xb82047(0x128)](_0x58381c[_0xb82047(0x140)]))for(const [_0x1284af,_0x4f221c]of _0x58381c[_0xb82047(0x140)][_0xb82047(0x131)]()){(typeof _0x4f221c!=='string'||_0x4f221c[_0xb82047(0x175)]()[_0xb82047(0xf5)]===0x0)&&_0x203afc['push']('File\x20path\x20'+(_0x1284af+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x4f221c['includes']('..')&&_0x203afc[_0xb82047(0xfe)](_0xb82047(0x181)+(_0x1284af+0x1)+_0xb82047(0x11a));}return{'valid':_0x203afc[_0xb82047(0xf5)]===0x0,'errors':_0x203afc};}async['execute'](_0x15bd31,_0x4bbc22){const _0x59f349=a0_0x1dfe8e,{filePaths:_0x317ebb,searchTerms:_0x3066cd}=_0x15bd31,{projectDir:_0x11d0fe,agentId:_0x2a0e19,directoryAccess:_0x5052b2}=_0x4bbc22;let _0x220f6b=_0x11d0fe||process[_0x59f349(0x14c)](),_0x963e64=[_0x220f6b];_0x5052b2&&_0x5052b2[_0x59f349(0x13e)]&&(_0x220f6b=_0x5052b2[_0x59f349(0x13e)],_0x963e64=this[_0x59f349(0x122)](_0x5052b2),this['logger']?.['info']('Using\x20agent\x20configured\x20directory\x20access',{'workingDirectory':_0x5052b2['workingDirectory'],'totalAccessibleDirs':_0x963e64['length'],'readOnlyDirs':_0x5052b2[_0x59f349(0x133)]?.['length']||0x0,'writeEnabledDirs':_0x5052b2['writeEnabledDirectories']?.['length']||0x0,'agentId':_0x2a0e19}));if(!_0x220f6b)throw new Error(_0x59f349(0x149));this['logger']?.['info']('Executing\x20seek\x20tool',{'filePathCount':_0x317ebb['length'],'searchTermCount':_0x3066cd['length'],'workingDirectory':_0x220f6b,'accessibleDirectories':_0x963e64['length'],'agentId':_0x2a0e19});try{const _0x30ada8=await this[_0x59f349(0x17d)](_0x317ebb,_0x220f6b,_0x5052b2?_0x963e64:null),_0x41b4a4=_0x30ada8[_0x59f349(0x10b)],_0x4fe16b=_0x30ada8['notFound'];if(_0x41b4a4[_0x59f349(0xf5)]>this['seekConfig']['MAX_FILES_PER_SEARCH'])return{'success':![],'error':_0x59f349(0x16a)+_0x41b4a4[_0x59f349(0xf5)]+').\x20Maximum\x20is\x20'+this[_0x59f349(0x129)]['MAX_FILES_PER_SEARCH']+_0x59f349(0x173),'filesResolved':_0x41b4a4[_0x59f349(0xf5)],'filesNotFound':_0x4fe16b['length']};const _0x43dbde=await this['searchFiles'](_0x41b4a4,_0x3066cd,_0x220f6b),_0x1e8fd6=this[_0x59f349(0x15b)](_0x43dbde[_0x59f349(0x13b)],_0x43dbde['errorFiles'],_0x4fe16b,_0x41b4a4[_0x59f349(0xf5)]);return{'success':!![],'filesSearched':_0x41b4a4['length'],'filesNotFound':_0x4fe16b['length'],'filesWithErrors':_0x43dbde['errorFiles']['length'],'totalMatches':_0x43dbde['matches'][_0x59f349(0xf5)],'matchesByTerm':_0x43dbde['matchesByTerm'],'formattedResults':_0x1e8fd6,'toolUsed':'seek'};}catch(_0x280de0){this[_0x59f349(0x161)]?.['error'](_0x59f349(0x157),{'error':_0x280de0[_0x59f349(0x116)]});throw _0x280de0;}}['getAllAccessibleDirectories'](_0x3a83ea){const _0x4ad079=a0_0x1dfe8e,_0x265b84=new Set();_0x3a83ea[_0x4ad079(0x13e)]&&_0x265b84['add'](_0x3a83ea[_0x4ad079(0x13e)]);if(_0x3a83ea[_0x4ad079(0x133)]&&Array[_0x4ad079(0x128)](_0x3a83ea[_0x4ad079(0x133)]))for(const _0x1e3c01 of _0x3a83ea[_0x4ad079(0x133)]){_0x265b84['add'](_0x1e3c01);}if(_0x3a83ea[_0x4ad079(0x167)]&&Array[_0x4ad079(0x128)](_0x3a83ea[_0x4ad079(0x167)]))for(const _0x3164ca of _0x3a83ea['writeEnabledDirectories']){_0x265b84['add'](_0x3164ca);}return Array[_0x4ad079(0xf8)](_0x265b84);}[a0_0x1dfe8e(0x11c)](_0x50e144,_0x158b6f){const _0x2888f8=a0_0x1dfe8e;for(const _0x277239 of _0x158b6f){const _0x39f2a9=a0_0x4e1667[_0x2888f8(0x16e)](_0x277239,_0x50e144),_0x5bb586=!_0x39f2a9[_0x2888f8(0x159)]('..')&&!a0_0x4e1667[_0x2888f8(0x132)](_0x39f2a9);if(_0x5bb586)return!![];}return![];}async['resolveFilePaths'](_0x33df95,_0x454847,_0x43f6b6=null){const _0x303047=a0_0x1dfe8e,_0x112b21={'found':[],'notFound':[]};for(const _0x28eaa2 of _0x33df95){const _0x97fc7=_0x28eaa2[_0x303047(0x175)]();if(_0x97fc7['includes']('*')){const _0x1938b7=await this[_0x303047(0x144)](_0x97fc7,_0x454847);_0x1938b7['found'][_0x303047(0xf5)]>0x0?_0x112b21[_0x303047(0x10b)]['push'](..._0x1938b7['found']):_0x112b21[_0x303047(0x134)]['push'](_0x97fc7+'\x20(no\x20matching\x20files)');}else{const _0x415f28=a0_0x4e1667['isAbsolute'](_0x97fc7)?_0x97fc7:a0_0x4e1667['resolve'](_0x454847,_0x97fc7);if(_0x43f6b6&&_0x43f6b6['length']>0x0){if(!this['isPathAccessible'](_0x415f28,_0x43f6b6)){_0x112b21[_0x303047(0x134)][_0x303047(0xfe)](_0x97fc7+_0x303047(0x178));continue;}}try{const _0x35c0b3=await a0_0x3b0ed1['stat'](_0x415f28);if(_0x35c0b3['isFile']())_0x112b21['found']['push'](_0x415f28);else _0x35c0b3[_0x303047(0x15c)]()?_0x112b21[_0x303047(0x134)][_0x303047(0xfe)](_0x97fc7+_0x303047(0x155)):_0x112b21[_0x303047(0x134)][_0x303047(0xfe)](_0x97fc7+'\x20(not\x20a\x20regular\x20file)');}catch(_0x511869){_0x112b21[_0x303047(0x134)][_0x303047(0xfe)](_0x97fc7+'\x20('+(_0x511869['code']||_0x511869['message'])+')');}}}return _0x112b21;}async['expandGlobPattern'](_0x281920,_0x58434b){const _0x5d94ff=a0_0x1dfe8e,_0x28ba1b={'found':[]};if(_0x281920['includes'](_0x5d94ff(0x16b))){const [_0x315a34,_0x4eb8cc]=_0x281920['split']('**/'),_0x1a313d=a0_0x4e1667[_0x5d94ff(0xfd)](_0x58434b,_0x315a34);try{const _0x514ac6=await a0_0x3b0ed1['stat'](_0x1a313d);_0x514ac6[_0x5d94ff(0x15c)]()&&await this[_0x5d94ff(0x118)](_0x1a313d,_0x4eb8cc,_0x28ba1b['found'],0x0,this[_0x5d94ff(0x129)][_0x5d94ff(0x179)]);}catch(_0x4ebd40){this[_0x5d94ff(0x161)]?.['warn'](_0x5d94ff(0x112),{'basePath':_0x1a313d,'error':_0x4ebd40['message']});}}else{if(_0x281920[_0x5d94ff(0x16c)]('*')){const _0x115957=a0_0x4e1667[_0x5d94ff(0x108)](a0_0x4e1667['resolve'](_0x58434b,_0x281920)),_0x1bb78b=a0_0x4e1667[_0x5d94ff(0x163)](_0x281920);try{const _0x225ad3=await a0_0x3b0ed1[_0x5d94ff(0x10e)](_0x115957);if(_0x225ad3['isDirectory']()){const _0x3a6d28=await a0_0x3b0ed1['readdir'](_0x115957);for(const _0x458f1f of _0x3a6d28){const _0x520f4d=a0_0x4e1667['join'](_0x115957,_0x458f1f);try{const _0x3e9691=await a0_0x3b0ed1['stat'](_0x520f4d);_0x3e9691['isFile']()&&this['matchesPattern'](_0x458f1f,_0x1bb78b)&&_0x28ba1b['found'][_0x5d94ff(0xfe)](_0x520f4d);}catch(_0x3fe7d8){continue;}}}}catch(_0x5467e5){this[_0x5d94ff(0x161)]?.['warn'](_0x5d94ff(0x10a),{'dirPath':_0x115957,'error':_0x5467e5['message']});}}}return _0x28ba1b;}async[a0_0x1dfe8e(0x118)](_0x33084b,_0x1dd863,_0x2a65f6,_0x91f1c1,_0x439563){const _0x18b09b=a0_0x1dfe8e;if(_0x91f1c1>=_0x439563){this[_0x18b09b(0x161)]?.[_0x18b09b(0x13f)]('Maximum\x20directory\x20depth\x20reached',{'dir':_0x33084b,'currentDepth':_0x91f1c1});return;}try{const _0xdc1ff8=await a0_0x3b0ed1['readdir'](_0x33084b,{'withFileTypes':!![]});for(const _0x443b88 of _0xdc1ff8){if(_0x443b88['name'][_0x18b09b(0x159)]('.'))continue;const _0x40b23e=a0_0x4e1667['join'](_0x33084b,_0x443b88['name']);try{if(_0x443b88[_0x18b09b(0x15c)]()){if(this['shouldSkipDirectory'](_0x443b88[_0x18b09b(0x137)]))continue;await this['findFilesRecursively'](_0x40b23e,_0x1dd863,_0x2a65f6,_0x91f1c1+0x1,_0x439563);}else{if(_0x443b88[_0x18b09b(0x16f)]()){if(this['matchesPattern'](_0x443b88[_0x18b09b(0x137)],_0x1dd863)){_0x2a65f6['push'](_0x40b23e);if(_0x2a65f6[_0x18b09b(0xf5)]>=this['seekConfig']['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x334ccc){continue;}}}catch(_0x4c9c3e){this[_0x18b09b(0x161)]?.[_0x18b09b(0x13f)]('Error\x20reading\x20directory',{'dir':_0x33084b,'error':_0x4c9c3e[_0x18b09b(0x116)]});}}['matchesPattern'](_0x5652de,_0x2d2031){const _0x8d51c=a0_0x1dfe8e,_0x328acb=_0x2d2031['split']('*')['map'](_0x1a13a4=>this['escapeRegExp'](_0x1a13a4))[_0x8d51c(0x15f)]('.*'),_0x55b3a9=new RegExp('^'+_0x328acb+'$','i');return _0x55b3a9[_0x8d51c(0x14f)](_0x5652de);}['escapeRegExp'](_0x181adb){const _0x51dc12=a0_0x1dfe8e;return _0x181adb[_0x51dc12(0x12a)](/[.*+?^${}()|[\]\\]/g,_0x51dc12(0x10d));}[a0_0x1dfe8e(0x11f)](_0x1c9afe){const _0x3b12e6=a0_0x1dfe8e,_0x42568d=new Set([_0x3b12e6(0x138),_0x3b12e6(0x182),_0x3b12e6(0x166),_0x3b12e6(0x147),'coverage','.next',_0x3b12e6(0x162),_0x3b12e6(0x172),_0x3b12e6(0x12e),_0x3b12e6(0x13d),'__pycache__',_0x3b12e6(0x113),_0x3b12e6(0x11e),_0x3b12e6(0x119)]);return _0x42568d[_0x3b12e6(0x101)](_0x1c9afe[_0x3b12e6(0x160)]());}['shouldSkipFile'](_0x3dbb91){const _0x211884=a0_0x1dfe8e,_0x4f193e=a0_0x4e1667[_0x211884(0x111)](_0x3dbb91)['toLowerCase']();return BINARY_EXTENSIONS[_0x211884(0x101)](_0x4f193e);}async[a0_0x1dfe8e(0x14e)](_0x4769b2,_0x28623c,_0x518b86){const _0x2e58bb=a0_0x1dfe8e,_0x5e3176=[],_0x2bf2c8=[];let _0x55d309=0x0;for(const _0x24e5eb of _0x4769b2){if(this['shouldSkipFile'](_0x24e5eb))continue;try{const _0x486a27=await a0_0x3b0ed1['stat'](_0x24e5eb);if(_0x486a27[_0x2e58bb(0x151)]>this[_0x2e58bb(0x129)]['MAX_FILE_SIZE']){_0x2bf2c8['push']({'filePath':a0_0x4e1667[_0x2e58bb(0x16e)](_0x518b86,_0x24e5eb),'error':_0x2e58bb(0x15d)+Math[_0x2e58bb(0x12d)](_0x486a27['size']/(0x400*0x400))+_0x2e58bb(0xfa)+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+'MB)'});continue;}const _0x5428e7=await this['searchInFile'](_0x24e5eb,_0x28623c,_0x518b86);_0x5e3176['push'](..._0x5428e7),_0x55d309+=_0x5428e7[_0x2e58bb(0xf5)];if(_0x55d309>=this['seekConfig'][_0x2e58bb(0xf6)]){this['logger']?.['warn']('Maximum\x20total\x20matches\x20reached',{'totalMatches':_0x55d309});break;}}catch(_0x3baf70){_0x2bf2c8['push']({'filePath':a0_0x4e1667[_0x2e58bb(0x16e)](_0x518b86,_0x24e5eb),'error':_0x3baf70['message']});}}const _0x59b949={};for(const _0x560efe of _0x5e3176){!_0x59b949[_0x560efe['term']]&&(_0x59b949[_0x560efe['term']]=[]),_0x59b949[_0x560efe['term']][_0x2e58bb(0xfe)]({'filePath':_0x560efe[_0x2e58bb(0x136)],'lineNumber':_0x560efe[_0x2e58bb(0x125)],'lineContent':_0x560efe['lineContent']});}return{'matches':_0x5e3176,'matchesByTerm':_0x59b949,'errorFiles':_0x2bf2c8};}async['searchInFile'](_0x1ccd34,_0x3d5d04,_0x19721c){const _0x51f0c5=a0_0x1dfe8e,_0x139107=[];let _0x27193f=0x0;try{const _0x3bbae3=await a0_0x3b0ed1['readFile'](_0x1ccd34,FILE_ENCODING),_0x3ea977=_0x3bbae3[_0x51f0c5(0x12c)]('\x0a'),_0x383288=a0_0x4e1667[_0x51f0c5(0x16e)](_0x19721c,_0x1ccd34);for(let _0x10afb0=0x0;_0x10afb0<_0x3ea977['length'];_0x10afb0++){const _0x200648=_0x3ea977[_0x10afb0],_0x5de03d=_0x10afb0+0x1;for(const _0x59d9d4 of _0x3d5d04){if(_0x200648[_0x51f0c5(0x16c)](_0x59d9d4)){let _0x7381b7=_0x200648;if(_0x7381b7[_0x51f0c5(0xf5)]>this[_0x51f0c5(0x129)][_0x51f0c5(0x148)]){const _0x1e3ae3=_0x7381b7[_0x51f0c5(0x120)](_0x59d9d4),_0x8210c6=Math[_0x51f0c5(0x106)](0x0,_0x1e3ae3-0x32),_0x43b1fa=Math['min'](_0x7381b7[_0x51f0c5(0xf5)],_0x1e3ae3+_0x59d9d4[_0x51f0c5(0xf5)]+0x32);_0x7381b7=(_0x8210c6>0x0?'...':'')+_0x7381b7['substring'](_0x8210c6,_0x43b1fa)+(_0x43b1fa<_0x7381b7[_0x51f0c5(0xf5)]?_0x51f0c5(0x17c):'');}_0x139107['push']({'term':_0x59d9d4,'filePath':_0x383288,'lineNumber':_0x5de03d,'lineContent':_0x7381b7['trim']()}),_0x27193f++;if(_0x27193f>=this[_0x51f0c5(0x129)][_0x51f0c5(0x15e)])return this[_0x51f0c5(0x161)]?.[_0x51f0c5(0x13f)](_0x51f0c5(0x169),{'filePath':_0x383288}),_0x139107;}}}}catch(_0x144a19){throw new Error(_0x51f0c5(0x126)+_0x144a19[_0x51f0c5(0x116)]);}return _0x139107;}[a0_0x1dfe8e(0x15b)](_0x3129f6,_0x4640ba,_0x2e2572,_0x4e0053){const _0x16cdb6=a0_0x1dfe8e;let _0x2ffa3f='';if(_0x2e2572[_0x16cdb6(0xf5)]>0x0){_0x2ffa3f+='FILES\x20NOT\x20FOUND:\x0a';for(const _0x4faa70 of _0x2e2572){_0x2ffa3f+=_0x16cdb6(0x13a)+_0x4faa70+'\x0a';}_0x2ffa3f+='\x0a';}if(_0x4640ba[_0x16cdb6(0xf5)]>0x0){_0x2ffa3f+=_0x16cdb6(0x10c);for(const _0x171749 of _0x4640ba){_0x2ffa3f+=_0x16cdb6(0x13a)+_0x171749['filePath']+':\x20'+_0x171749[_0x16cdb6(0x102)]+'\x0a';}_0x2ffa3f+='\x0a';}if(_0x3129f6['length']===0x0)_0x2ffa3f+=_0x16cdb6(0x14b)+_0x4e0053+_0x16cdb6(0x180);else{const _0x289fea={};for(const _0x2e2b55 of _0x3129f6){!_0x289fea[_0x2e2b55['term']]&&(_0x289fea[_0x2e2b55['term']]=[]),_0x289fea[_0x2e2b55['term']][_0x16cdb6(0xfe)](_0x2e2b55);}_0x2ffa3f+='SEARCH\x20RESULTS\x20('+_0x3129f6['length']+'\x20total\x20matches\x20in\x20'+_0x4e0053+_0x16cdb6(0x158);for(const [_0x4b01f3,_0x1f6a0d]of Object[_0x16cdb6(0x131)](_0x289fea)){_0x2ffa3f+=_0x16cdb6(0x15a)+_0x4b01f3+'\x22\x20('+_0x1f6a0d[_0x16cdb6(0xf5)]+'\x20matches)\x0a';for(const _0x34fbc0 of _0x1f6a0d){_0x2ffa3f+='\x20\x20'+_0x34fbc0[_0x16cdb6(0x136)]+':'+_0x34fbc0[_0x16cdb6(0x125)]+_0x16cdb6(0x183)+_0x34fbc0['lineContent']+'\x0a';}_0x2ffa3f+='\x0a';}_0x3129f6[_0x16cdb6(0xf5)]>=this[_0x16cdb6(0x129)][_0x16cdb6(0xf6)]&&(_0x2ffa3f+=_0x16cdb6(0x117)+this[_0x16cdb6(0x129)]['MAX_TOTAL_MATCHES']+_0x16cdb6(0x109));}return _0x2ffa3f['trim']();}['getSupportedExtensions'](){const _0x52bef1=a0_0x1dfe8e;return[_0x52bef1(0x135),'.jsx','.ts',_0x52bef1(0x130),'.json',_0x52bef1(0xf4),_0x52bef1(0x11d),_0x52bef1(0x105),'.scss',_0x52bef1(0x14d),'.less','.md','.txt','.log','.py',_0x52bef1(0x110),'.java','.go','.rs','.c',_0x52bef1(0x127),'.h',_0x52bef1(0xff),'.sh',_0x52bef1(0x153),'.zsh','.yml','.yaml','.toml','.ini',_0x52bef1(0x142)];}async['cleanup'](_0x3d3245){const _0x31aed7=a0_0x1dfe8e;this['logger']?.[_0x31aed7(0x143)](_0x31aed7(0x124),{'operationId':_0x3d3245});}}export default SeekTool;
1
+ const a0_0xa558fa=a0_0x40de;function a0_0x56fb(){const _0x1ed893=['tufyx0zjtevFu0LArq','zMLUzezPBgvZuMvJDxjZAxzLBhK','lNnV','DMvUzg9Y','C3bSAxq','lNPPCa','tufyx0zjtevFuefusfm','tufyx0zjtevtx1bfuL9trufsq0G','D29YA2LUz0rPCMvJDg9YEq','ks4Gtwf4Aw11BsbPCYa','Bwf0y2HLCW','BMfTzq','C2vLAW','C3rHDa','lMPZEa','tufyx1rpvefmx01bvenirvm','lM1Wna','C2L6zq','CMvHze9UBhLeAxjLy3rVCMLLCW','CgfYC2u','lNLHBwW','mta0mZiYnw1jD3PAtW','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','igzPBguOCYKUcG','rgLYzwn0B3j5ig5VDcbMB3vUzcbMB3iGz2XVyIbWyxr0zxjU','zxjYB3i','ywrK','lMPZB24','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','tuiSig1HEca','lM1WmW','BM90rM91BMq','mJm5oteYmdfWExHlCu8','yMfZzw5HBwu','zgLZDa','CMvXDwLYzxnqCM9Qzwn0','z2v0rgvZy3jPChrPB24','lNnO','DhjPBq','yNvPBgq','nJCXnta0ENHvDg5l','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','BwvZC2fNzq','AxneAxjLy3rVCNK','AxnqyxrOqwnJzxnZAwjSzq','zM9YBwf0uMvZDwX0CW','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zxHLyW','lMPWzwC','y29Kzq','Aw5MBW','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','mMHpB3zxza','kIOV','tufyx0rjuKvdve9swv9ervbusa','tuiP','vg9Vig1HBNKGzMLSzsbWyxrOCYaOBwf4ia','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','ndbzugLiCha','D2fYBG','mtvxv21rDve','mti0otKWmKnhrg54Da','AgfZ','CMvSyxrPDMu','qxqGBgvHC3qGB25LihnLyxjJAcb0zxjTigLZihjLCxvPCMvK','DgLTzw91Da','Bg9Nz2vY','lMPZ','lMXVzW','lMD6','AxnbCNjHEq','zMLSzvbHDgHZ','qxqGBgvHC3qGB25LigzPBguGCgf0AcbPCYbYzxf1AxjLza','C2vHCMnOvgvYBxm','mtuWqwvKtevt','zMLSzvbHDgG','lMH0BwW','lMHWCa','C2vHCMnOrMLSzxm','lNn2zW','tufyx1nfqvjdsf9urvjnuW','B3v0','icaTia','AxngAwXL','lNr4Da','lMjTCa','lMv4zq','DgvYBq','zxH0BMfTzq','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','lJD6','BwfW','ndbsthvYtgC','C2vLA0nVBMzPzW','qMfZzsbKAxjLy3rVCNKGBM90igzVDw5KigzVCIbNBg9IihbHDhrLCM4','twf4Aw11Bsb0B3rHBcbTyxrJAgvZihjLywnOzwq','C2HVDwXKu2TPCezPBgu','lM1VDG','Bwf0y2HLC1bHDhrLCM4','zMLSDgvY','rMLSzsb0B28GBgfYz2uGka','rKLmrvmGtK9uiezpvu5eoGO','lMnHy2HL','zM91BMq','AM9PBG','lMnWCa','cLnLzwSGvg9VBdOGu2vHCMnOigzVCIbZCgvJAwzPyYbJB250zw50ihDPDgHPBIbWCM9Qzwn0igzPBgvZlIbiAwDOBhKGCMvJB21Tzw5KzwqGzM9YihzLCMLMEwLUzYbPBxbVCNrZlcbMDw5JDgLVBIb1C2fNzsWGyw5KihzHCMLHyMXLihjLzMvYzw5JzxmUcGPytuWGvvnbr0u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGigzPBguVCgf0Ac9VBMuUANmkicaGigzPBguVCgf0Ac90D28UANmkicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+C2vHCMnOihbOCMfZzsbVBMu8l3rLCM0+cIaGica8DgvYBt5ZzwfYy2GGCgHYyxnLihr3BZWVDgvYBt4kicaGidX0zxjTpNnLyxjJAcbWAhjHC2uGDgHYzwu8l3rLCM0+cIaGpc9ZzwfYy2GTDgvYBxm+cJWVC2vLAZ4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIC2vLAYiScIaGiMzPBgvqyxrOCYi6ifSkicaGicjZCMmVy29TCg9Uzw50CY9izwfKzxiUANmIlaOGicaGiNnYyY91DgLSCY8QlMPZiIWkicaGicjZCMmVkIOVkI5QC3GIcIaGxsWkicaIC2vHCMnOvgvYBxmIoIbBcIaGicaIAw1WB3j0ifjLywn0iIWkicaGicj1C2vtDgf0zsiScIaGicaIzNvUy3rPB24GAgfUzgXLu3vIBwL0iGOGif0kFqPGygakcLnvufbpuLrfrcbhte9cifbbvfrfuK5toGOTicOUANmGicaGicaGicaGic0GqwXSic5QCYbMAwXLCYbPBIbHigrPCMvJDg9YEqOTicOQlYOUANmGicaGicaGic0GqwXSic5QCYbMAwXLCYbYzwn1CNnPDMvSEqOTihnYyY8QkI8QlMPZEcaGic0GqwXSic5QC3GGzMLSzxmGDw5KzxiGC3jJlYbYzwn1CNnPDMvSEqOTignVBxbVBMvUDhmVkI4Qic0GqwXSigzPBgvZigLUignVBxbVBMvUDhmVcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiezPBMqGzNvUy3rPB24GDxnHz2u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY9JB21WB25LBNrZlYOUANmkicaGihnYyY91DgLSCY9OzwXWzxjZlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+zNvUy3rPB24GAgfUzgXLu3vIBwL0pc90zxjTpGOGicaGphrLCM0+DxnLu3rHDguOpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidiGlsbwzxjPzNKGAw1WB3j0CZOkphnLzwS+cIaGpgLUlwzPBgvZpGOGicaGC3jJl2nVBxbVBMvUDhmVsgvHzgvYlMPZcIaGicbZCMmVy29TCg9Uzw50CY9gB290zxiUANmkica8l2LUlwzPBgvZpGOGidXZzwfYy2GTDgvYBxm+cIaGica8DgvYBt5PBxbVCNqGuMvHy3q8l3rLCM0+cIaGica8DgvYBt5PBxbVCNqGEYb1C2vtDgf0zsb9pc90zxjTpGOGicaGphrLCM0+zNjVBsaNCMvHy3qNpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidmGlsbgAw5KihzHCMLHyMXLihjLzMvYzw5Jzxm6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+yxbPq2XPzw50pc90zxjTpGOGicaGphrLCM0+y29UzMLNlMfWAvvYBdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrxHHBxbSzsa0ic0Gu2vHCMnOihnWzwnPzMLJigzPBgvZig9UBhK6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihbHy2THz2uUANnVBGOGicaGDhnJB25MAwCUANnVBGOGicaGlMDPDgLNBM9YzqOGidWVAw4TzMLSzxm+cIaGphnLyxjJAc10zxjTCZ4kicaGidX0zxjTpNjLywn0pc90zxjTpGOGicaGphrLCM0+DhLWzxnJCMLWDdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrKvbvfvsrvm6cI0Gu2vHCMnOzxmGzM9Yigv4ywn0ihn0CMLUzYbTyxrJAgvZicHJyxnLlxnLBNnPDgL2zsKklsbszxr1CM5ZigzPBguGCgf0AcWGBgLUzsbUDw1IzxiSigfUzcbSAw5LignVBNrLBNqGzM9YigvHy2GGBwf0y2GklsbtDxbWB3j0CYbNBg9IihbHDhrLCM5ZigzVCIbMBgv4AwjSzsbMAwXLihnLBgvJDgLVBGOTifnRAxbZigjPBMfYEsbMAwXLCYbHDxrVBwf0AwnHBgX5cI0GuMvWB3j0CYbMAwXLCYbUB3qGzM91BMqGyw5KigzPBgvZihDPDgGGzxjYB3jZcI0GtgLTAxrLzcb0BYa','lNnXBgL0zq','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','lNDTDG','ihrVDgfSig1HDgnOzxmGAw4G','mJuZmZq2mefztxDVsG','ChvZAa','lMPHDMe','rxHLy3v0Aw5NihnLzwSGDg9VBa','zxjYB3jgAwXLCW','twf4Aw11BsbKAxjLy3rVCNKGzgvWDgGGCMvHy2HLza','lMXLC3m','lI4U','lM51Ehq','CMvZB2X2zuzPBgvqyxrOCW','icHPCYbHigrPCMvJDg9YEsWGBM90igeGzMLSzsK','DgvZDa','lNjI','lMDPDa','oIbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','y3DK','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','C3rYAw5N','C3rHCNrZv2L0Aa','oty1mJn1y0zTAfO','tuiGCgvYigzPBguklsbszxr1CM5ZihvWihrVia','Dg9mB3DLCKnHC2u','BgvUz3rO','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','mJC5ota2mfPAr1b0Da','CMvZB2X2zq','mtjjA1v5sLa','zxHLy3v0zq'];a0_0x56fb=function(){return _0x1ed893;};return a0_0x56fb();}(function(_0x2f10d7,_0x37f601){const _0x378984=a0_0x40de,_0x5ee7d0=_0x2f10d7();while(!![]){try{const _0x3b8240=parseInt(_0x378984(0x213))/0x1*(parseInt(_0x378984(0x1a6))/0x2)+-parseInt(_0x378984(0x1ae))/0x3*(-parseInt(_0x378984(0x19a))/0x4)+parseInt(_0x378984(0x1e1))/0x5+parseInt(_0x378984(0x1bc))/0x6*(-parseInt(_0x378984(0x1f5))/0x7)+parseInt(_0x378984(0x1ce))/0x8*(-parseInt(_0x378984(0x1af))/0x9)+parseInt(_0x378984(0x1ac))/0xa*(parseInt(_0x378984(0x1fa))/0xb)+-parseInt(_0x378984(0x1fc))/0xc*(parseInt(_0x378984(0x21e))/0xd);if(_0x3b8240===_0x37f601)break;else _0x5ee7d0['push'](_0x5ee7d0['shift']());}catch(_0x405a0a){_0x5ee7d0['push'](_0x5ee7d0['shift']());}}}(a0_0x56fb,0x7f931));import{BaseTool}from'./baseTool.js';import a0_0x587967 from'../utilities/tagParser.js';import{promises as a0_0x4d48bd}from'fs';import a0_0x2dc534 from'path';function a0_0x40de(_0x436335,_0x355a69){_0x436335=_0x436335-0x194;const _0x56fba2=a0_0x56fb();let _0x40dec0=_0x56fba2[_0x436335];if(a0_0x40de['vgVhMd']===undefined){var _0xb0bbb6=function(_0x35eae5){const _0x13378c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x587967='',_0x4d48bd='';for(let _0x2dc534=0x0,_0x39dabc,_0xa485ff,_0x31f9c3=0x0;_0xa485ff=_0x35eae5['charAt'](_0x31f9c3++);~_0xa485ff&&(_0x39dabc=_0x2dc534%0x4?_0x39dabc*0x40+_0xa485ff:_0xa485ff,_0x2dc534++%0x4)?_0x587967+=String['fromCharCode'](0xff&_0x39dabc>>(-0x2*_0x2dc534&0x6)):0x0){_0xa485ff=_0x13378c['indexOf'](_0xa485ff);}for(let _0x2952b8=0x0,_0x29f240=_0x587967['length'];_0x2952b8<_0x29f240;_0x2952b8++){_0x4d48bd+='%'+('00'+_0x587967['charCodeAt'](_0x2952b8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4d48bd);};a0_0x40de['GjZpJM']=_0xb0bbb6,a0_0x40de['mRAtJy']={},a0_0x40de['vgVhMd']=!![];}const _0x271b89=_0x56fba2[0x0],_0x1e53c5=_0x436335+_0x271b89,_0x55c1a5=a0_0x40de['mRAtJy'][_0x1e53c5];return!_0x55c1a5?(_0x40dec0=a0_0x40de['GjZpJM'](_0x40dec0),a0_0x40de['mRAtJy'][_0x1e53c5]=_0x40dec0):_0x40dec0=_0x55c1a5,_0x40dec0;}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_0xa558fa(0x1a2),'.gif',a0_0xa558fa(0x1c7),'.ico',a0_0xa558fa(0x1c1),'.pdf',a0_0xa558fa(0x203),'.tar',a0_0xa558fa(0x1b7),'.rar',a0_0xa558fa(0x1cc),a0_0xa558fa(0x1c8),'.dll',a0_0xa558fa(0x200),'.dylib',a0_0xa558fa(0x21c),a0_0xa558fa(0x20e),'.avi',a0_0xa558fa(0x1d3),a0_0xa558fa(0x1df),'.woff','.woff2','.ttf','.eot','.bin','.dat','.db',a0_0xa558fa(0x1dd)]);class SeekTool extends BaseTool{constructor(_0x39dabc={},_0xa485ff=null){const _0x498869=a0_0xa558fa;super(_0x39dabc,_0xa485ff),this[_0x498869(0x195)]=!![],this['isAsync']=!![],this[_0x498869(0x1b3)]=_0x39dabc[_0x498869(0x1b3)]||0x1d4c0,this[_0x498869(0x1cf)]={...SEEK_CONFIG,..._0x39dabc[_0x498869(0x1cf)]};}[a0_0xa558fa(0x196)](){const _0x21111c=a0_0xa558fa;return _0x21111c(0x1dc)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0x21111c(0x1f6)+SEEK_CONFIG['MAX_TOTAL_MATCHES']+_0x21111c(0x1cb)+SEEK_CONFIG[_0x21111c(0x205)]+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0x21111c(0x1c2)]+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_FILE_SIZE']/(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'](_0x31f9c3){const _0x1b948d=a0_0xa558fa;try{if(_0x31f9c3['trim']()[_0x1b948d(0x1f4)]('{')){const _0x1214ad=JSON[_0x1b948d(0x211)](_0x31f9c3);return{'filePaths':_0x1214ad['filePaths']||[],'searchTerms':_0x1214ad[_0x1b948d(0x1bb)]||[]};}const _0x2952b8={'filePaths':[],'searchTerms':[]},_0x29f240=/<in-files>([\s\S]*?)<\/in-files>/i,_0x4c627a=_0x29f240[_0x1b948d(0x1a1)](_0x31f9c3);if(_0x4c627a){const _0x27619d=_0x4c627a[0x1];_0x2952b8['filePaths']=_0x27619d['split']('\x0a')[_0x1b948d(0x1cd)](_0x15951b=>_0x15951b[_0x1b948d(0x198)]())[_0x1b948d(0x1d5)](_0x4947ce=>_0x4947ce[_0x1b948d(0x1f8)]>0x0);}const _0x66bbe9=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x4ef9d8=_0x66bbe9['exec'](_0x31f9c3);if(_0x4ef9d8){const _0x1ce969=_0x4ef9d8[0x1],_0x4b89f9=/<term>(.*?)<\/term>/gi;let _0x40eb52;while((_0x40eb52=_0x4b89f9['exec'](_0x1ce969))!==null){const _0x585486=_0x40eb52[0x1]['trim']();_0x585486['length']>0x0&&_0x2952b8['searchTerms'][_0x1b948d(0x1e2)](_0x585486);}}return _0x2952b8;}catch(_0x20fc23){return this[_0x1b948d(0x1b4)]?.[_0x1b948d(0x217)]('Failed\x20to\x20parse\x20seek\x20parameters',{'error':_0x20fc23[_0x1b948d(0x19c)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x20fc23[_0x1b948d(0x19c)]};}}[a0_0xa558fa(0x1f2)](){const _0x3c1992=a0_0xa558fa;return[_0x3c1992(0x1b9),'searchTerms'];}[a0_0xa558fa(0x1a0)](_0x2b922f){const _0x216faf=a0_0xa558fa,_0x5e01fa=[];if(!_0x2b922f['filePaths']||!Array['isArray'](_0x2b922f[_0x216faf(0x1b9)])||_0x2b922f[_0x216faf(0x1b9)]['length']===0x0)_0x5e01fa[_0x216faf(0x1e2)](_0x216faf(0x1ba));else _0x2b922f['filePaths']['length']>this['seekConfig'][_0x216faf(0x204)]&&_0x5e01fa[_0x216faf(0x1e2)](_0x216faf(0x1aa)+this['seekConfig'][_0x216faf(0x204)]+')');if(!_0x2b922f[_0x216faf(0x1bb)]||!Array['isArray'](_0x2b922f[_0x216faf(0x1bb)])||_0x2b922f['searchTerms'][_0x216faf(0x1f8)]===0x0)_0x5e01fa['push'](_0x216faf(0x1b2));else _0x2b922f['searchTerms']['length']>this['seekConfig'][_0x216faf(0x1c2)]&&_0x5e01fa['push']('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig']['MAX_SEARCH_TERMS']+')');if(_0x2b922f[_0x216faf(0x1bb)]&&Array[_0x216faf(0x1b8)](_0x2b922f[_0x216faf(0x1bb)]))for(const [_0x41eace,_0x201299]of _0x2b922f['searchTerms']['entries']()){(typeof _0x201299!=='string'||_0x201299[_0x216faf(0x198)]()['length']===0x0)&&_0x5e01fa[_0x216faf(0x1e2)]('Search\x20term\x20'+(_0x41eace+0x1)+_0x216faf(0x1ef));}if(_0x2b922f['filePaths']&&Array['isArray'](_0x2b922f['filePaths']))for(const [_0x965801,_0x464fb0]of _0x2b922f[_0x216faf(0x1b9)]['entries']()){(typeof _0x464fb0!==_0x216faf(0x1f3)||_0x464fb0[_0x216faf(0x198)]()[_0x216faf(0x1f8)]===0x0)&&_0x5e01fa['push']('File\x20path\x20'+(_0x965801+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x464fb0['includes']('..')&&_0x5e01fa['push']('File\x20path\x20'+(_0x965801+0x1)+':\x20path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');}return{'valid':_0x5e01fa[_0x216faf(0x1f8)]===0x0,'errors':_0x5e01fa};}async[a0_0xa558fa(0x1fd)](_0x4d42c2,_0x472198){const _0x53337c=a0_0xa558fa,{filePaths:_0x1ad415,searchTerms:_0x5a8719}=_0x4d42c2,{projectDir:_0x39b07f,agentId:_0x48052b,directoryAccess:_0x4947b6}=_0x472198;let _0xaf8b4d=_0x39b07f||process[_0x53337c(0x1f0)](),_0x4adccc=[_0xaf8b4d];_0x4947b6&&_0x4947b6[_0x53337c(0x206)]&&(_0xaf8b4d=_0x4947b6[_0x53337c(0x206)],_0x4adccc=this[_0x53337c(0x19b)](_0x4947b6),this[_0x53337c(0x1b4)]?.['info']('Using\x20agent\x20configured\x20directory\x20access',{'workingDirectory':_0x4947b6[_0x53337c(0x206)],'totalAccessibleDirs':_0x4adccc['length'],'readOnlyDirs':_0x4947b6[_0x53337c(0x210)]?.[_0x53337c(0x1f8)]||0x0,'writeEnabledDirs':_0x4947b6[_0x53337c(0x1ab)]?.[_0x53337c(0x1f8)]||0x0,'agentId':_0x48052b}));if(!_0xaf8b4d)throw new Error('Project\x20directory\x20is\x20required\x20for\x20seek\x20tool');this['logger']?.['info'](_0x53337c(0x1e4),{'filePathCount':_0x1ad415['length'],'searchTermCount':_0x5a8719['length'],'workingDirectory':_0xaf8b4d,'accessibleDirectories':_0x4adccc['length'],'agentId':_0x48052b});try{const _0x5cc60a=await this[_0x53337c(0x1ea)](_0x1ad415,_0xaf8b4d,_0x4947b6?_0x4adccc:null),_0x5afb62=_0x5cc60a['found'],_0x310755=_0x5cc60a[_0x53337c(0x21d)];if(_0x5afb62['length']>this[_0x53337c(0x1cf)][_0x53337c(0x205)])return{'success':![],'error':'Too\x20many\x20files\x20to\x20search\x20('+_0x5afb62[_0x53337c(0x1f8)]+_0x53337c(0x207)+this['seekConfig']['MAX_FILES_PER_SEARCH']+'.\x20Use\x20more\x20specific\x20file\x20patterns.','filesResolved':_0x5afb62[_0x53337c(0x1f8)],'filesNotFound':_0x310755[_0x53337c(0x1f8)]};const _0x225d08=await this['searchFiles'](_0x5afb62,_0x5a8719,_0xaf8b4d),_0x540dd7=this[_0x53337c(0x19f)](_0x225d08[_0x53337c(0x208)],_0x225d08['errorFiles'],_0x310755,_0x5afb62[_0x53337c(0x1f8)]);return{'success':!![],'filesSearched':_0x5afb62['length'],'filesNotFound':_0x310755['length'],'filesWithErrors':_0x225d08[_0x53337c(0x1e5)][_0x53337c(0x1f8)],'totalMatches':_0x225d08[_0x53337c(0x208)]['length'],'matchesByTerm':_0x225d08['matchesByTerm'],'formattedResults':_0x540dd7,'toolUsed':_0x53337c(0x20a)};}catch(_0xadb431){this['logger']?.['error']('Seek\x20tool\x20execution\x20failed',{'error':_0xadb431[_0x53337c(0x19c)]});throw _0xadb431;}}['getAllAccessibleDirectories'](_0x3ceb0f){const _0x16537b=a0_0xa558fa,_0x5ac8c3=new Set();_0x3ceb0f[_0x16537b(0x206)]&&_0x5ac8c3[_0x16537b(0x218)](_0x3ceb0f['workingDirectory']);if(_0x3ceb0f[_0x16537b(0x210)]&&Array['isArray'](_0x3ceb0f[_0x16537b(0x210)]))for(const _0x1cb90e of _0x3ceb0f[_0x16537b(0x210)]){_0x5ac8c3[_0x16537b(0x218)](_0x1cb90e);}if(_0x3ceb0f[_0x16537b(0x1ab)]&&Array['isArray'](_0x3ceb0f['writeEnabledDirectories']))for(const _0x26580d of _0x3ceb0f[_0x16537b(0x1ab)]){_0x5ac8c3['add'](_0x26580d);}return Array['from'](_0x5ac8c3);}[a0_0xa558fa(0x19e)](_0x151ea2,_0x254efd){const _0x4d2c44=a0_0xa558fa;for(const _0x45ff76 of _0x254efd){const _0x358860=a0_0x2dc534[_0x4d2c44(0x1b1)](_0x45ff76,_0x151ea2),_0x63fb58=!_0x358860[_0x4d2c44(0x1f4)]('..')&&!a0_0x2dc534['isAbsolute'](_0x358860);if(_0x63fb58)return!![];}return![];}async[a0_0xa558fa(0x1ea)](_0x3e68a7,_0x27d90c,_0x19d476=null){const _0x11f034=a0_0xa558fa,_0x4f1bfa={'found':[],'notFound':[]};for(const _0x3f7ab7 of _0x3e68a7){const _0x1ecb88=_0x3f7ab7[_0x11f034(0x198)]();if(_0x1ecb88['includes']('*')){const _0x28d56b=await this['expandGlobPattern'](_0x1ecb88,_0x27d90c);_0x28d56b[_0x11f034(0x1d9)]['length']>0x0?_0x4f1bfa['found']['push'](..._0x28d56b[_0x11f034(0x1d9)]):_0x4f1bfa[_0x11f034(0x21d)]['push'](_0x1ecb88+'\x20(no\x20matching\x20files)');}else{const _0x5ddb47=a0_0x2dc534['isAbsolute'](_0x1ecb88)?_0x1ecb88:a0_0x2dc534[_0x11f034(0x1fb)](_0x27d90c,_0x1ecb88);if(_0x19d476&&_0x19d476['length']>0x0){if(!this['isPathAccessible'](_0x5ddb47,_0x19d476)){_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+'\x20(not\x20in\x20accessible\x20directories)');continue;}}try{const _0x4b7980=await a0_0x4d48bd[_0x11f034(0x20b)](_0x5ddb47);if(_0x4b7980[_0x11f034(0x1c5)]())_0x4f1bfa[_0x11f034(0x1d9)]['push'](_0x5ddb47);else _0x4b7980['isDirectory']()?_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+_0x11f034(0x1eb)):_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+'\x20(not\x20a\x20regular\x20file)');}catch(_0x289602){_0x4f1bfa['notFound']['push'](_0x1ecb88+'\x20('+(_0x289602[_0x11f034(0x1a3)]||_0x289602['message'])+')');}}}return _0x4f1bfa;}async['expandGlobPattern'](_0x16eacd,_0x4ff193){const _0xb7f53c=a0_0xa558fa,_0x3e65ef={'found':[]};if(_0x16eacd['includes'](_0xb7f53c(0x1a7))){const [_0x22896b,_0xef53d9]=_0x16eacd['split']('**/'),_0x592af3=a0_0x2dc534['resolve'](_0x4ff193,_0x22896b);try{const _0x2ffa55=await a0_0x4d48bd[_0xb7f53c(0x20b)](_0x592af3);_0x2ffa55['isDirectory']()&&await this[_0xb7f53c(0x1ff)](_0x592af3,_0xef53d9,_0x3e65ef[_0xb7f53c(0x1d9)],0x0,this[_0xb7f53c(0x1cf)][_0xb7f53c(0x1a8)]);}catch(_0x22ba46){this['logger']?.[_0xb7f53c(0x1ad)](_0xb7f53c(0x1d0),{'basePath':_0x592af3,'error':_0x22ba46[_0xb7f53c(0x19c)]});}}else{if(_0x16eacd['includes']('*')){const _0x5758aa=a0_0x2dc534['dirname'](a0_0x2dc534['resolve'](_0x4ff193,_0x16eacd)),_0x392522=a0_0x2dc534[_0xb7f53c(0x21f)](_0x16eacd);try{const _0x3ab446=await a0_0x4d48bd['stat'](_0x5758aa);if(_0x3ab446['isDirectory']()){const _0x115139=await a0_0x4d48bd['readdir'](_0x5758aa);for(const _0x2a4ef2 of _0x115139){const _0x5b3c63=a0_0x2dc534[_0xb7f53c(0x1da)](_0x5758aa,_0x2a4ef2);try{const _0x42eb3e=await a0_0x4d48bd['stat'](_0x5b3c63);_0x42eb3e[_0xb7f53c(0x1c5)]()&&this['matchesPattern'](_0x2a4ef2,_0x392522)&&_0x3e65ef[_0xb7f53c(0x1d9)][_0xb7f53c(0x1e2)](_0x5b3c63);}catch(_0x274b7c){continue;}}}}catch(_0x479bc7){this[_0xb7f53c(0x1b4)]?.[_0xb7f53c(0x1ad)](_0xb7f53c(0x216),{'dirPath':_0x5758aa,'error':_0x479bc7[_0xb7f53c(0x19c)]});}}}return _0x3e65ef;}async[a0_0xa558fa(0x1ff)](_0x2f858c,_0x4acdb8,_0x2d264b,_0x32d6b4,_0x1e3c99){const _0x28b504=a0_0xa558fa;if(_0x32d6b4>=_0x1e3c99){this['logger']?.[_0x28b504(0x1ad)](_0x28b504(0x1e6),{'dir':_0x2f858c,'currentDepth':_0x32d6b4});return;}try{const _0x4724fa=await a0_0x4d48bd['readdir'](_0x2f858c,{'withFileTypes':!![]});for(const _0x3ae0b1 of _0x4724fa){if(_0x3ae0b1[_0x28b504(0x209)][_0x28b504(0x1f4)]('.'))continue;const _0x3f7c27=a0_0x2dc534['join'](_0x2f858c,_0x3ae0b1[_0x28b504(0x209)]);try{if(_0x3ae0b1[_0x28b504(0x19d)]()){if(this['shouldSkipDirectory'](_0x3ae0b1['name']))continue;await this['findFilesRecursively'](_0x3f7c27,_0x4acdb8,_0x2d264b,_0x32d6b4+0x1,_0x1e3c99);}else{if(_0x3ae0b1[_0x28b504(0x1c5)]()){if(this[_0x28b504(0x1d4)](_0x3ae0b1['name'],_0x4acdb8)){_0x2d264b['push'](_0x3f7c27);if(_0x2d264b[_0x28b504(0x1f8)]>=this[_0x28b504(0x1cf)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x565c41){continue;}}}catch(_0x2a0e0a){this['logger']?.['warn'](_0x28b504(0x21a),{'dir':_0x2f858c,'error':_0x2a0e0a['message']});}}[a0_0xa558fa(0x1d4)](_0x2f8484,_0x144812){const _0x576cee=a0_0xa558fa,_0x2a1fb8=_0x144812[_0x576cee(0x202)]('*')['map'](_0x32fc78=>this['escapeRegExp'](_0x32fc78))[_0x576cee(0x1da)]('.*'),_0x497335=new RegExp('^'+_0x2a1fb8+'$','i');return _0x497335[_0x576cee(0x1ec)](_0x2f8484);}['escapeRegExp'](_0x3bb487){return _0x3bb487['replace'](/[.*+?^${}()|[\]\\]/g,'\x5c$&');}['shouldSkipDirectory'](_0x32ba35){const _0x57f73f=a0_0xa558fa,_0xcf8e33=new Set(['node_modules',_0x57f73f(0x1ee),_0x57f73f(0x194),_0x57f73f(0x199),'coverage','.next',_0x57f73f(0x1e9),_0x57f73f(0x1c3),'target',_0x57f73f(0x201),'__pycache__',_0x57f73f(0x1d8),'tmp','temp']);return _0xcf8e33[_0x57f73f(0x1b0)](_0x32ba35[_0x57f73f(0x1f7)]());}[a0_0xa558fa(0x1d2)](_0x42d2e6){const _0x5b1b14=a0_0xa558fa,_0x522457=a0_0x2dc534[_0x5b1b14(0x1ca)](_0x42d2e6)[_0x5b1b14(0x1f7)]();return BINARY_EXTENSIONS[_0x5b1b14(0x1b0)](_0x522457);}async[a0_0xa558fa(0x1c0)](_0x3d34cc,_0x4951ce,_0xc42fc0){const _0x3b18cf=a0_0xa558fa,_0x673904=[],_0x342b49=[];let _0x533ad5=0x0;for(const _0x2b2637 of _0x3d34cc){if(this[_0x3b18cf(0x1d2)](_0x2b2637))continue;try{const _0x106eab=await a0_0x4d48bd['stat'](_0x2b2637);if(_0x106eab[_0x3b18cf(0x20f)]>this['seekConfig'][_0x3b18cf(0x1fe)]){_0x342b49[_0x3b18cf(0x1e2)]({'filePath':a0_0x2dc534[_0x3b18cf(0x1b1)](_0xc42fc0,_0x2b2637),'error':_0x3b18cf(0x1d6)+Math['round'](_0x106eab['size']/(0x400*0x400))+_0x3b18cf(0x21b)+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+_0x3b18cf(0x1a9)});continue;}const _0x399f5f=await this['searchInFile'](_0x2b2637,_0x4951ce,_0xc42fc0);_0x673904['push'](..._0x399f5f),_0x533ad5+=_0x399f5f[_0x3b18cf(0x1f8)];if(_0x533ad5>=this[_0x3b18cf(0x1cf)]['MAX_TOTAL_MATCHES']){this['logger']?.[_0x3b18cf(0x1ad)](_0x3b18cf(0x1d1),{'totalMatches':_0x533ad5});break;}}catch(_0x6ccb16){_0x342b49[_0x3b18cf(0x1e2)]({'filePath':a0_0x2dc534[_0x3b18cf(0x1b1)](_0xc42fc0,_0x2b2637),'error':_0x6ccb16[_0x3b18cf(0x19c)]});}}const _0x580b91={};for(const _0x2c89c9 of _0x673904){!_0x580b91[_0x2c89c9['term']]&&(_0x580b91[_0x2c89c9[_0x3b18cf(0x1c9)]]=[]),_0x580b91[_0x2c89c9['term']]['push']({'filePath':_0x2c89c9[_0x3b18cf(0x1bd)],'lineNumber':_0x2c89c9['lineNumber'],'lineContent':_0x2c89c9['lineContent']});}return{'matches':_0x673904,'matchesByTerm':_0x580b91,'errorFiles':_0x342b49};}async['searchInFile'](_0x39634d,_0x4812bf,_0x5d4b89){const _0x189e41=a0_0xa558fa,_0xaa4b56=[];let _0x54d350=0x0;try{const _0x5c012d=await a0_0x4d48bd['readFile'](_0x39634d,FILE_ENCODING),_0x40c740=_0x5c012d[_0x189e41(0x202)]('\x0a'),_0x5a582b=a0_0x2dc534[_0x189e41(0x1b1)](_0x5d4b89,_0x39634d);for(let _0x2f06f5=0x0;_0x2f06f5<_0x40c740['length'];_0x2f06f5++){const _0x386f66=_0x40c740[_0x2f06f5],_0x3819a9=_0x2f06f5+0x1;for(const _0x2c2162 of _0x4812bf){if(_0x386f66['includes'](_0x2c2162)){let _0x3c6929=_0x386f66;if(_0x3c6929['length']>this[_0x189e41(0x1cf)]['MAX_LINE_CONTENT_LENGTH']){const _0x4865bd=_0x3c6929['indexOf'](_0x2c2162),_0x514352=Math['max'](0x0,_0x4865bd-0x32),_0x24062b=Math['min'](_0x3c6929[_0x189e41(0x1f8)],_0x4865bd+_0x2c2162[_0x189e41(0x1f8)]+0x32);_0x3c6929=(_0x514352>0x0?_0x189e41(0x1e8):'')+_0x3c6929['substring'](_0x514352,_0x24062b)+(_0x24062b<_0x3c6929[_0x189e41(0x1f8)]?_0x189e41(0x1e8):'');}_0xaa4b56[_0x189e41(0x1e2)]({'term':_0x2c2162,'filePath':_0x5a582b,'lineNumber':_0x3819a9,'lineContent':_0x3c6929['trim']()}),_0x54d350++;if(_0x54d350>=this['seekConfig']['MAX_MATCHES_PER_FILE'])return this['logger']?.[_0x189e41(0x1ad)](_0x189e41(0x1f9),{'filePath':_0x5a582b}),_0xaa4b56;}}}}catch(_0x5e85c4){throw new Error('Failed\x20to\x20read\x20file:\x20'+_0x5e85c4['message']);}return _0xaa4b56;}[a0_0xa558fa(0x19f)](_0x42e38c,_0x250233,_0x37063a,_0x979019){const _0x5b1089=a0_0xa558fa;let _0x329237='';if(_0x37063a['length']>0x0){_0x329237+=_0x5b1089(0x1d7);for(const _0x1f580f of _0x37063a){_0x329237+='\x20\x20-\x20'+_0x1f580f+'\x0a';}_0x329237+='\x0a';}if(_0x250233['length']>0x0){_0x329237+='FILES\x20WITH\x20ERRORS:\x0a';for(const _0xf84c31 of _0x250233){_0x329237+=_0x5b1089(0x1c4)+_0xf84c31['filePath']+':\x20'+_0xf84c31[_0x5b1089(0x217)]+'\x0a';}_0x329237+='\x0a';}if(_0x42e38c[_0x5b1089(0x1f8)]===0x0)_0x329237+='No\x20matches\x20found\x20for\x20the\x20specified\x20search\x20terms\x20in\x20'+_0x979019+_0x5b1089(0x215);else{const _0xe8aead={};for(const _0x1f5b4d of _0x42e38c){!_0xe8aead[_0x1f5b4d[_0x5b1089(0x1c9)]]&&(_0xe8aead[_0x1f5b4d['term']]=[]),_0xe8aead[_0x1f5b4d['term']]['push'](_0x1f5b4d);}_0x329237+='SEARCH\x20RESULTS\x20('+_0x42e38c[_0x5b1089(0x1f8)]+_0x5b1089(0x1e0)+_0x979019+'\x20file(s)):\x0a\x0a';for(const [_0x195f58,_0x178bc0]of Object['entries'](_0xe8aead)){_0x329237+='Search\x20term:\x20\x22'+_0x195f58+'\x22\x20('+_0x178bc0[_0x5b1089(0x1f8)]+'\x20matches)\x0a';for(const _0x57362a of _0x178bc0){_0x329237+='\x20\x20'+_0x57362a[_0x5b1089(0x1bd)]+':'+_0x57362a['lineNumber']+'\x20-\x20'+_0x57362a['lineContent']+'\x0a';}_0x329237+='\x0a';}_0x42e38c['length']>=this[_0x5b1089(0x1cf)][_0x5b1089(0x20d)]&&(_0x329237+=_0x5b1089(0x1f1)+this['seekConfig']['MAX_TOTAL_MATCHES']+_0x5b1089(0x1a5));}return _0x329237[_0x5b1089(0x198)]();}[a0_0xa558fa(0x214)](){const _0xdce6cb=a0_0xa558fa;return[_0xdce6cb(0x1b5),_0xdce6cb(0x20c),'.ts','.tsx',_0xdce6cb(0x219),'.xml',_0xdce6cb(0x1be),'.css','.scss','.sass',_0xdce6cb(0x1e7),'.md',_0xdce6cb(0x1c6),_0xdce6cb(0x1b6),'.py',_0xdce6cb(0x1ed),_0xdce6cb(0x1e3),'.go','.rs','.c',_0xdce6cb(0x1db),'.h',_0xdce6cb(0x1bf),_0xdce6cb(0x197),'.bash','.zsh','.yml',_0xdce6cb(0x212),'.toml','.ini','.conf'];}async['cleanup'](_0x25c474){const _0x5610ea=a0_0xa558fa;this['logger']?.[_0x5610ea(0x1a4)](_0x5610ea(0x1de),{'operationId':_0x25c474});}}export default SeekTool;
@@ -1 +1 @@
1
- const a0_0x1bbc11=a0_0x382c;function a0_0x382c(_0x30f7f5,_0x316caf){_0x30f7f5=_0x30f7f5-0x181;const _0x3773c2=a0_0x3773();let _0x382cdc=_0x3773c2[_0x30f7f5];if(a0_0x382c['hpVQFD']===undefined){var _0x4d2205=function(_0x18441){const _0x532c0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xd47e02='',_0x3615ee='';for(let _0x156fb2=0x0,_0x29121e,_0x30aec9,_0x2c448c=0x0;_0x30aec9=_0x18441['charAt'](_0x2c448c++);~_0x30aec9&&(_0x29121e=_0x156fb2%0x4?_0x29121e*0x40+_0x30aec9:_0x30aec9,_0x156fb2++%0x4)?_0xd47e02+=String['fromCharCode'](0xff&_0x29121e>>(-0x2*_0x156fb2&0x6)):0x0){_0x30aec9=_0x532c0a['indexOf'](_0x30aec9);}for(let _0x291094=0x0,_0x4097e6=_0xd47e02['length'];_0x291094<_0x4097e6;_0x291094++){_0x3615ee+='%'+('00'+_0xd47e02['charCodeAt'](_0x291094)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3615ee);};a0_0x382c['srAfKV']=_0x4d2205,a0_0x382c['KBDlFC']={},a0_0x382c['hpVQFD']=!![];}const _0x20fe87=_0x3773c2[0x0],_0x4d2625=_0x30f7f5+_0x20fe87,_0x4fb90d=a0_0x382c['KBDlFC'][_0x4d2625];return!_0x4fb90d?(_0x382cdc=a0_0x382c['srAfKV'](_0x382cdc),a0_0x382c['KBDlFC'][_0x4d2625]=_0x382cdc):_0x382cdc=_0x4fb90d,_0x382cdc;}(function(_0x1c9f3f,_0x5835ad){const _0x133b2d=a0_0x382c,_0x1c72e2=_0x1c9f3f();while(!![]){try{const _0x55ad5e=-parseInt(_0x133b2d(0x220))/0x1*(parseInt(_0x133b2d(0x18c))/0x2)+parseInt(_0x133b2d(0x186))/0x3*(-parseInt(_0x133b2d(0x245))/0x4)+parseInt(_0x133b2d(0x1f7))/0x5*(-parseInt(_0x133b2d(0x225))/0x6)+-parseInt(_0x133b2d(0x203))/0x7+parseInt(_0x133b2d(0x252))/0x8+parseInt(_0x133b2d(0x197))/0x9*(-parseInt(_0x133b2d(0x19c))/0xa)+-parseInt(_0x133b2d(0x205))/0xb*(-parseInt(_0x133b2d(0x22b))/0xc);if(_0x55ad5e===_0x5835ad)break;else _0x1c72e2['push'](_0x1c72e2['shift']());}catch(_0x3275ee){_0x1c72e2['push'](_0x1c72e2['shift']());}}}(a0_0x3773,0x39935));import{BaseTool}from'./baseTool.js';import a0_0xd47e02 from'../utilities/tagParser.js';import a0_0x3615ee from'../utilities/directoryAccessManager.js';import a0_0x156fb2 from'fs/promises';import a0_0x29121e from'path';import a0_0x30aec9 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x2c448c={},_0x291094=null){const _0x594b61=a0_0x382c;super(_0x2c448c,_0x291094),this[_0x594b61(0x250)]=!![],this['isAsync']=![],this['timeout']=_0x2c448c['timeout']||STATIC_ANALYSIS[_0x594b61(0x19a)],this[_0x594b61(0x244)]=_0x2c448c[_0x594b61(0x244)]||0x1,this[_0x594b61(0x1c7)]=_0x2c448c[_0x594b61(0x1c7)]||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this[_0x594b61(0x23b)]=_0x2c448c['maxFilesPerBatch']||STATIC_ANALYSIS[_0x594b61(0x24c)],this['enableCache']=_0x2c448c[_0x594b61(0x259)]!==![]&&STATIC_ANALYSIS[_0x594b61(0x216)],this['analysisCache']=new Map(),this['cacheExpiry']=STATIC_ANALYSIS[_0x594b61(0x1e2)],this['parallelAnalysis']=_0x2c448c['parallelAnalysis']!==![],this['maxParallelFiles']=_0x2c448c['maxParallelFiles']||0xa,this[_0x594b61(0x1c4)]=_0x2c448c[_0x594b61(0x1c4)]!==![],this[_0x594b61(0x1a4)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x594b61(0x241)]=new a0_0x3615ee(_0x2c448c,_0x291094),this[_0x594b61(0x1b4)]={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}['getDescription'](){const _0x584aa6=a0_0x382c;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[_0x584aa6(0x1eb)](this[_0x584aa6(0x1c7)]/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+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_0x1bbc11(0x198)](_0x4097e6){const _0x4075c0=a0_0x1bbc11;try{const _0x3b63b9={},_0x1ceec5=[];this[_0x4075c0(0x22a)]?.['debug'](_0x4075c0(0x1ab),{'contentLength':_0x4097e6[_0x4075c0(0x219)],'contentPreview':_0x4097e6['substring'](0x0,0xc8)});const _0x41add2=/<analyze\s+(.+?)\/>/g;let _0x224090;while((_0x224090=_0x41add2[_0x4075c0(0x1b9)](_0x4097e6))!==null){const _0x234abb=_0x224090[0x1]['trim'](),_0x4b6785=new a0_0xd47e02(),_0x4fecc3=_0x4b6785[_0x4075c0(0x21c)](_0x234abb),_0x3bc7d3={'type':_0x4075c0(0x1b8),..._0x4fecc3};_0x3bc7d3[_0x4075c0(0x20d)]&&(_0x3bc7d3['filePath']=_0x3bc7d3[_0x4075c0(0x20d)],delete _0x3bc7d3['file-path']),_0x3bc7d3['include-warnings']&&(_0x3bc7d3[_0x4075c0(0x1d2)]=_0x3bc7d3[_0x4075c0(0x1c9)]===_0x4075c0(0x1f3),delete _0x3bc7d3['include-warnings']),_0x3bc7d3['max-errors']&&(_0x3bc7d3['maxErrors']=parseInt(_0x3bc7d3['max-errors'],0xa),delete _0x3bc7d3['max-errors']),_0x1ceec5[_0x4075c0(0x1fc)](_0x3bc7d3);}const _0xf4eebd=/<analyze-project\s+(.+?)\/>/g;while((_0x224090=_0xf4eebd['exec'](_0x4097e6))!==null){const _0x41ab86=_0x224090[0x1][_0x4075c0(0x191)](),_0x46008c=new a0_0xd47e02(),_0x3a64df=_0x46008c[_0x4075c0(0x21c)](_0x41ab86),_0x360244={'type':'analyze-project',..._0x3a64df};_0x360244[_0x4075c0(0x1c9)]&&(_0x360244[_0x4075c0(0x1d2)]=_0x360244[_0x4075c0(0x1c9)]===_0x4075c0(0x1f3),delete _0x360244[_0x4075c0(0x1c9)]),_0x360244['max-errors']&&(_0x360244[_0x4075c0(0x224)]=parseInt(_0x360244['max-errors'],0xa),delete _0x360244[_0x4075c0(0x1a1)]),_0x1ceec5['push'](_0x360244);}const _0x35bf28=/<fix\s+(.+?)\/>/g;while((_0x224090=_0x35bf28['exec'](_0x4097e6))!==null){const _0x2d0e7b=_0x224090[0x1][_0x4075c0(0x191)](),_0x895130=new a0_0xd47e02(),_0xfc7853=_0x895130[_0x4075c0(0x21c)](_0x2d0e7b),_0xeb40d6={'type':'fix',..._0xfc7853};_0xeb40d6[_0x4075c0(0x20d)]&&(_0xeb40d6[_0x4075c0(0x18e)]=_0xeb40d6['file-path'],delete _0xeb40d6[_0x4075c0(0x20d)]),_0xeb40d6[_0x4075c0(0x251)]&&(_0xeb40d6['writeFile']=_0xeb40d6['write-file']===_0x4075c0(0x1f3),delete _0xeb40d6[_0x4075c0(0x251)]),_0x1ceec5[_0x4075c0(0x1fc)](_0xeb40d6);}const _0x3f838c=/<format\s+(.+?)\/>/g;while((_0x224090=_0x3f838c['exec'](_0x4097e6))!==null){const _0x516fe6=_0x224090[0x1][_0x4075c0(0x191)](),_0x403644=new a0_0xd47e02(),_0x2c068c=_0x403644['parseAttributes'](_0x516fe6),_0x5aea86={'type':'format',..._0x2c068c};_0x5aea86[_0x4075c0(0x20d)]&&(_0x5aea86[_0x4075c0(0x18e)]=_0x5aea86[_0x4075c0(0x20d)],delete _0x5aea86[_0x4075c0(0x20d)]),_0x5aea86[_0x4075c0(0x251)]&&(_0x5aea86[_0x4075c0(0x24e)]=_0x5aea86['write-file']===_0x4075c0(0x1f3),delete _0x5aea86['write-file']),_0x1ceec5['push'](_0x5aea86);}const _0x4c48f0=/<security-scan\s+(.+?)\/>/g;while((_0x224090=_0x4c48f0['exec'](_0x4097e6))!==null){const _0x4a3a91=_0x224090[0x1]['trim'](),_0x2d0fc7=new a0_0xd47e02(),_0x241184=_0x2d0fc7['parseAttributes'](_0x4a3a91),_0x2837c3={'type':_0x4075c0(0x200),..._0x241184};_0x2837c3['file-path']&&(_0x2837c3['filePath']=_0x2837c3['file-path'],delete _0x2837c3[_0x4075c0(0x20d)]),_0x2837c3[_0x4075c0(0x1fb)]&&(_0x2837c3[_0x4075c0(0x239)]=_0x2837c3[_0x4075c0(0x1fb)]===_0x4075c0(0x1f3),delete _0x2837c3['skip-test-files']),_0x1ceec5['push'](_0x2837c3);}const _0x461819=/<security-scan-project\s+(.+?)\/>/g;while((_0x224090=_0x461819[_0x4075c0(0x1b9)](_0x4097e6))!==null){const _0x7f4d8a=_0x224090[0x1]['trim'](),_0x57c520=new a0_0xd47e02(),_0x34c0bd=_0x57c520[_0x4075c0(0x21c)](_0x7f4d8a),_0x52bc4a={'type':'security-scan-project',..._0x34c0bd};_0x52bc4a['skip-test-files']&&(_0x52bc4a[_0x4075c0(0x239)]=_0x52bc4a[_0x4075c0(0x1fb)]===_0x4075c0(0x1f3),delete _0x52bc4a[_0x4075c0(0x1fb)]),_0x1ceec5[_0x4075c0(0x1fc)](_0x52bc4a);}const _0x2d2463=/<validate-config\s+(.+?)\/>/g;while((_0x224090=_0x2d2463['exec'](_0x4097e6))!==null){const _0x3efd39=_0x224090[0x1][_0x4075c0(0x191)](),_0xdd4254=new a0_0xd47e02(),_0x2189cf=_0xdd4254[_0x4075c0(0x21c)](_0x3efd39),_0x4f692a={'type':'validate-config',..._0x2189cf};_0x4f692a[_0x4075c0(0x20d)]&&(_0x4f692a['filePath']=_0x4f692a[_0x4075c0(0x20d)],delete _0x4f692a[_0x4075c0(0x20d)]),_0x1ceec5[_0x4075c0(0x1fc)](_0x4f692a);}const _0x612dc4=/<validate-config-directory\s+(.+?)\/>/g;while((_0x224090=_0x612dc4[_0x4075c0(0x1b9)](_0x4097e6))!==null){const _0x2b64c2=_0x224090[0x1][_0x4075c0(0x191)](),_0x4308b8=new a0_0xd47e02(),_0x1de969=_0x4308b8['parseAttributes'](_0x2b64c2),_0x33b654={'type':'validate-config-directory',..._0x1de969};_0x1ceec5[_0x4075c0(0x1fc)](_0x33b654);}return _0x3b63b9[_0x4075c0(0x19b)]=_0x1ceec5,_0x3b63b9[_0x4075c0(0x20f)]=_0x4097e6[_0x4075c0(0x191)](),this[_0x4075c0(0x22a)]?.['debug'](_0x4075c0(0x1b2),{'totalActions':_0x1ceec5[_0x4075c0(0x219)],'actionTypes':_0x1ceec5[_0x4075c0(0x22f)](_0x4463a3=>_0x4463a3[_0x4075c0(0x1a9)])}),_0x3b63b9;}catch(_0x2a624b){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x2a624b[_0x4075c0(0x1f8)]);}}[a0_0x1bbc11(0x199)](){const _0x3548f5=a0_0x1bbc11;return[_0x3548f5(0x19b)];}['customValidateParameters'](_0xfb0db2){const _0x77cbbf=a0_0x1bbc11,_0x5b3225=[];if(!_0xfb0db2[_0x77cbbf(0x19b)]||!Array['isArray'](_0xfb0db2[_0x77cbbf(0x19b)])||_0xfb0db2['actions']['length']===0x0)_0x5b3225['push'](_0x77cbbf(0x218));else{for(const [_0x35c1a7,_0x4ceb35]of _0xfb0db2[_0x77cbbf(0x19b)][_0x77cbbf(0x1da)]()){if(!_0x4ceb35[_0x77cbbf(0x1a9)]){_0x5b3225['push'](_0x77cbbf(0x1b3)+(_0x35c1a7+0x1)+_0x77cbbf(0x1ac));continue;}switch(_0x4ceb35['type']){case'analyze':!_0x4ceb35['filePath']&&_0x5b3225[_0x77cbbf(0x1fc)](_0x77cbbf(0x1b3)+(_0x35c1a7+0x1)+_0x77cbbf(0x207));break;case _0x77cbbf(0x23c):!_0x4ceb35[_0x77cbbf(0x229)]&&_0x5b3225['push']('Action\x20'+(_0x35c1a7+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case _0x77cbbf(0x217):!_0x4ceb35[_0x77cbbf(0x18e)]&&_0x5b3225['push'](_0x77cbbf(0x1b3)+(_0x35c1a7+0x1)+':\x20file-path\x20is\x20required\x20for\x20fix');break;case'format':!_0x4ceb35[_0x77cbbf(0x18e)]&&_0x5b3225['push']('Action\x20'+(_0x35c1a7+0x1)+_0x77cbbf(0x1ff));break;case'security-scan':!_0x4ceb35['filePath']&&_0x5b3225['push']('Action\x20'+(_0x35c1a7+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case'security-scan-project':!_0x4ceb35[_0x77cbbf(0x229)]&&_0x5b3225['push'](_0x77cbbf(0x1b3)+(_0x35c1a7+0x1)+_0x77cbbf(0x188));break;case _0x77cbbf(0x20c):!_0x4ceb35['filePath']&&_0x5b3225[_0x77cbbf(0x1fc)]('Action\x20'+(_0x35c1a7+0x1)+_0x77cbbf(0x19e));break;case _0x77cbbf(0x255):!_0x4ceb35[_0x77cbbf(0x229)]&&_0x5b3225[_0x77cbbf(0x1fc)](_0x77cbbf(0x1b3)+(_0x35c1a7+0x1)+_0x77cbbf(0x247));break;default:_0x5b3225[_0x77cbbf(0x1fc)]('Action\x20'+(_0x35c1a7+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x4ceb35['type']);}}_0xfb0db2['actions'][_0x77cbbf(0x219)]>this['maxFilesPerBatch']&&_0x5b3225[_0x77cbbf(0x1fc)](_0x77cbbf(0x254)+_0xfb0db2['actions'][_0x77cbbf(0x219)]+_0x77cbbf(0x23e)+this[_0x77cbbf(0x23b)]+')');}return{'valid':_0x5b3225['length']===0x0,'errors':_0x5b3225};}async[a0_0x1bbc11(0x232)](_0x2d2ff3,_0x59fe1c){const _0x29dbbf=a0_0x1bbc11,{actions:_0x4d5c48}=_0x2d2ff3,{projectDir:_0x4f9c89,agentId:_0x2692dd,directoryAccess:_0x24e992}=_0x59fe1c,_0x41c274=_0x24e992||this[_0x29dbbf(0x241)][_0x29dbbf(0x1b7)]({'workingDirectory':_0x4f9c89||process['cwd'](),'writeEnabledDirectories':[_0x4f9c89||process['cwd']()],'restrictToProject':!![]}),_0x5e47e0=this[_0x29dbbf(0x241)]['getWorkingDirectory'](_0x41c274),_0xcc3457={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x39b0eb of _0x4d5c48){try{let _0x47c479;switch(_0x39b0eb['type']){case'analyze':_0x47c479=await this['analyzeFile'](_0x39b0eb[_0x29dbbf(0x18e)],_0x5e47e0,_0x41c274,_0x39b0eb);_0x47c479&&(_0xcc3457['files']['push'](_0x47c479),this['updateSummary'](_0xcc3457['summary'],_0x47c479));break;case'analyze-project':const _0x143996=await this[_0x29dbbf(0x18d)](_0x39b0eb[_0x29dbbf(0x229)],_0x39b0eb[_0x29dbbf(0x208)],_0x5e47e0,_0x41c274,_0x39b0eb);_0xcc3457[_0x29dbbf(0x21a)][_0x29dbbf(0x1fc)](..._0x143996);for(const _0x3a1d82 of _0x143996){this['updateSummary'](_0xcc3457['summary'],_0x3a1d82);}break;case _0x29dbbf(0x217):_0x47c479=await this[_0x29dbbf(0x213)](_0x39b0eb[_0x29dbbf(0x18e)],_0x5e47e0,_0x41c274,_0x39b0eb);_0x47c479&&_0xcc3457['files']['push'](_0x47c479);break;case'format':_0x47c479=await this['formatFile'](_0x39b0eb['filePath'],_0x5e47e0,_0x41c274,_0x39b0eb);_0x47c479&&_0xcc3457[_0x29dbbf(0x21a)][_0x29dbbf(0x1fc)](_0x47c479);break;case'security-scan':_0x47c479=await this[_0x29dbbf(0x25f)](_0x39b0eb[_0x29dbbf(0x18e)],_0x5e47e0,_0x41c274,_0x39b0eb);_0x47c479&&(_0xcc3457['files'][_0x29dbbf(0x1fc)](_0x47c479),this[_0x29dbbf(0x257)](_0xcc3457[_0x29dbbf(0x1c2)],_0x47c479));break;case _0x29dbbf(0x1ce):const _0x445c7d=await this[_0x29dbbf(0x1c8)](_0x39b0eb[_0x29dbbf(0x229)],_0x39b0eb['pattern'],_0x5e47e0,_0x41c274,_0x39b0eb);_0xcc3457['files'][_0x29dbbf(0x1fc)](..._0x445c7d);for(const _0x379b28 of _0x445c7d){this[_0x29dbbf(0x257)](_0xcc3457[_0x29dbbf(0x1c2)],_0x379b28);}break;case _0x29dbbf(0x20c):_0x47c479=await this[_0x29dbbf(0x235)](_0x39b0eb[_0x29dbbf(0x18e)],_0x5e47e0,_0x41c274,_0x39b0eb);_0x47c479&&(_0xcc3457['files'][_0x29dbbf(0x1fc)](_0x47c479),this[_0x29dbbf(0x257)](_0xcc3457[_0x29dbbf(0x1c2)],_0x47c479));break;case _0x29dbbf(0x255):const _0x5c136d=await this['validateConfigDirectory'](_0x39b0eb[_0x29dbbf(0x229)],_0x5e47e0,_0x41c274,_0x39b0eb);_0xcc3457['files'][_0x29dbbf(0x1fc)](..._0x5c136d);for(const _0x347d84 of _0x5c136d){this['updateSummary'](_0xcc3457[_0x29dbbf(0x1c2)],_0x347d84);}break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x39b0eb['type']);}}catch(_0x8a85a1){this[_0x29dbbf(0x22a)]?.[_0x29dbbf(0x24d)]('Static\x20analysis\x20action\x20failed',{'action':_0x39b0eb['type'],'error':_0x8a85a1[_0x29dbbf(0x1f8)]}),_0xcc3457['files'][_0x29dbbf(0x1fc)]({'file':_0x39b0eb['filePath']||_0x39b0eb['directory'],'error':_0x8a85a1[_0x29dbbf(0x1f8)],'success':![]});}}return{'success':!![],'results':_0xcc3457,'toolUsed':_0x29dbbf(0x258),'performance':this['getPerformanceMetrics']()};}async['analyzeFile'](_0x137777,_0x5d8a33,_0x5321b7,_0x43a7e2={}){const _0xb9a7ed=a0_0x1bbc11,_0x5ab2e5=a0_0x29121e['isAbsolute'](_0x137777)?a0_0x29121e[_0xb9a7ed(0x19f)](_0x137777):a0_0x29121e[_0xb9a7ed(0x221)](_0x5d8a33,_0x137777),_0x384e38=this['directoryAccessManager'][_0xb9a7ed(0x195)](_0x5ab2e5,_0x5321b7);if(!_0x384e38[_0xb9a7ed(0x22c)])throw new Error('Read\x20access\x20denied:\x20'+_0x384e38[_0xb9a7ed(0x201)]);try{const _0x38763c=await a0_0x156fb2['stat'](_0x5ab2e5);if(_0x38763c[_0xb9a7ed(0x1aa)]>this[_0xb9a7ed(0x1c7)])throw new Error(_0xb9a7ed(0x1fa)+_0x38763c[_0xb9a7ed(0x1aa)]+_0xb9a7ed(0x204)+this[_0xb9a7ed(0x1c7)]+')');const _0x27352f=this[_0xb9a7ed(0x1b1)](_0x5ab2e5);if(!_0x27352f)return{'file':this[_0xb9a7ed(0x241)]['createRelativePath'](_0x5ab2e5,_0x5321b7),'fullPath':_0x5ab2e5,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0xb9a7ed(0x182)};const _0x51906c=await a0_0x156fb2['readFile'](_0x5ab2e5,'utf-8'),_0x17a762=this[_0xb9a7ed(0x1c4)]?this[_0xb9a7ed(0x1dd)](_0x51906c):null,_0x4c813f=this['useContentHash']?_0x5ab2e5+':'+_0x17a762:_0x5ab2e5+':'+_0x38763c['mtime']['getTime']();if(this[_0xb9a7ed(0x259)]&&this['analysisCache']['has'](_0x4c813f)){const _0x4db550=this['analysisCache'][_0xb9a7ed(0x1a8)](_0x4c813f);if(Date[_0xb9a7ed(0x260)]()-_0x4db550[_0xb9a7ed(0x206)]<this['cacheExpiry'])return this[_0xb9a7ed(0x22a)]?.[_0xb9a7ed(0x18b)](_0xb9a7ed(0x1fe),{'file':_0x5ab2e5}),this[_0xb9a7ed(0x1a4)]['cacheHits']++,this[_0xb9a7ed(0x1a4)][_0xb9a7ed(0x209)]++,_0x4db550['result'];}this['metrics']['cacheMisses']++,this['metrics']['totalAnalyses']++;const _0x3ae59f=await this[_0xb9a7ed(0x1e5)](_0x27352f);if(!_0x3ae59f)return{'file':this[_0xb9a7ed(0x241)][_0xb9a7ed(0x185)](_0x5ab2e5,_0x5321b7),'fullPath':_0x5ab2e5,'language':_0x27352f,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0xb9a7ed(0x210)+_0x27352f};const _0x5bc506=Date['now'](),_0x7cb66a=await _0x3ae59f[_0xb9a7ed(0x1b8)](_0x5ab2e5,_0x51906c,{'workingDir':_0x5d8a33,'accessConfig':_0x5321b7,'framework':await this['detectFramework'](_0x5d8a33,_0x27352f)}),_0x3ddd24=Date['now']()-_0x5bc506;this[_0xb9a7ed(0x1a4)]['totalAnalysisTime']+=_0x3ddd24,this[_0xb9a7ed(0x1a4)][_0xb9a7ed(0x1bb)]++;const _0x298e67={'file':this['directoryAccessManager'][_0xb9a7ed(0x185)](_0x5ab2e5,_0x5321b7),'fullPath':_0x5ab2e5,'language':_0x27352f,'framework':await this[_0xb9a7ed(0x1e6)](_0x5d8a33,_0x27352f),'errors':_0x7cb66a[_0xb9a7ed(0x18f)](_0x40e964=>_0x40e964[_0xb9a7ed(0x263)]===STATIC_ANALYSIS['SEVERITY'][_0xb9a7ed(0x183)]),'warnings':_0x43a7e2['includeWarnings']!==![]?_0x7cb66a['filter'](_0x34a22a=>_0x34a22a['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING']):[],'info':_0x7cb66a[_0xb9a7ed(0x18f)](_0x20e301=>_0x20e301[_0xb9a7ed(0x263)]===STATIC_ANALYSIS['SEVERITY'][_0xb9a7ed(0x1de)]),'totalIssues':_0x7cb66a['length'],'analyzed':!![],'timestamp':new Date()[_0xb9a7ed(0x234)]()};return _0x43a7e2[_0xb9a7ed(0x224)]&&_0x298e67['errors'][_0xb9a7ed(0x219)]>_0x43a7e2[_0xb9a7ed(0x224)]&&(_0x298e67['errors']=_0x298e67[_0xb9a7ed(0x20b)]['slice'](0x0,_0x43a7e2[_0xb9a7ed(0x224)]),_0x298e67['truncated']=!![]),this['enableCache']&&this[_0xb9a7ed(0x25b)][_0xb9a7ed(0x1f2)](_0x4c813f,{'result':_0x298e67,'timestamp':Date[_0xb9a7ed(0x260)]()}),_0x298e67;}catch(_0x508c02){throw new Error(_0xb9a7ed(0x1cb)+_0x137777+':\x20'+_0x508c02[_0xb9a7ed(0x1f8)]);}}async['analyzeProject'](_0x4bee76,_0x49d944,_0x5a55e0,_0x5d97ff,_0x2e9974={}){const _0x3e7f9b=a0_0x1bbc11,_0x49e681=a0_0x29121e['isAbsolute'](_0x4bee76)?a0_0x29121e[_0x3e7f9b(0x19f)](_0x4bee76):a0_0x29121e[_0x3e7f9b(0x221)](_0x5a55e0,_0x4bee76),_0x3aed68=this[_0x3e7f9b(0x241)][_0x3e7f9b(0x195)](_0x49e681,_0x5d97ff);if(!_0x3aed68['allowed'])throw new Error(_0x3e7f9b(0x249)+_0x3aed68[_0x3e7f9b(0x201)]);const _0x2601cf=await this['findFiles'](_0x49e681,_0x49d944);if(_0x2601cf[_0x3e7f9b(0x219)]>this['maxFilesPerBatch'])throw new Error('Too\x20many\x20files:\x20'+_0x2601cf[_0x3e7f9b(0x219)]+'\x20(max\x20'+this[_0x3e7f9b(0x23b)]+')');const _0xb51721=[];if(this[_0x3e7f9b(0x226)]&&_0x2601cf['length']>0x1){this[_0x3e7f9b(0x22a)]?.['debug']('Using\x20parallel\x20analysis',{'totalFiles':_0x2601cf[_0x3e7f9b(0x219)],'batchSize':this['maxParallelFiles']});for(let _0x248554=0x0;_0x248554<_0x2601cf['length'];_0x248554+=this['maxParallelFiles']){const _0x380c9b=_0x2601cf[_0x3e7f9b(0x194)](_0x248554,_0x248554+this['maxParallelFiles']);this[_0x3e7f9b(0x1a4)][_0x3e7f9b(0x238)]++;const _0x4346b9={'completed':_0x248554,'total':_0x2601cf['length'],'percentage':Math['round'](_0x248554/_0x2601cf[_0x3e7f9b(0x219)]*0x64)};_0x2e9974['onProgress']&&_0x2e9974[_0x3e7f9b(0x1b6)](_0x4346b9);this['logger']?.['debug']('Analyzing\x20batch',{'batch':Math[_0x3e7f9b(0x1b0)](_0x248554/this[_0x3e7f9b(0x256)])+0x1,'filesInBatch':_0x380c9b['length'],'progress':_0x4346b9['completed']+'/'+_0x4346b9['total']});const _0xb82c4=_0x380c9b['map'](async _0x49d23e=>{const _0x236221=_0x3e7f9b;try{const _0x1255da=await this['analyzeFile'](_0x49d23e,_0x5a55e0,_0x5d97ff,_0x2e9974);return _0x1255da;}catch(_0x831735){return this[_0x236221(0x22a)]?.[_0x236221(0x1c3)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x49d23e,'error':_0x831735[_0x236221(0x1f8)]}),{'file':this[_0x236221(0x241)]['createRelativePath'](_0x49d23e,_0x5d97ff),'fullPath':_0x49d23e,'error':_0x831735['message'],'success':![]};}}),_0x35b278=await Promise[_0x3e7f9b(0x1ed)](_0xb82c4);_0xb51721[_0x3e7f9b(0x1fc)](..._0x35b278['filter'](_0x5b3744=>_0x5b3744!==null));}_0x2e9974['onProgress']&&_0x2e9974['onProgress']({'completed':_0x2601cf[_0x3e7f9b(0x219)],'total':_0x2601cf['length'],'percentage':0x64});}else for(const _0x5b5d59 of _0x2601cf){try{const _0x3acc0d=await this[_0x3e7f9b(0x1a7)](_0x5b5d59,_0x5a55e0,_0x5d97ff,_0x2e9974);_0x3acc0d&&_0xb51721[_0x3e7f9b(0x1fc)](_0x3acc0d);}catch(_0x1fcc54){this['logger']?.['warn'](_0x3e7f9b(0x189),{'file':_0x5b5d59,'error':_0x1fcc54[_0x3e7f9b(0x1f8)]}),_0xb51721[_0x3e7f9b(0x1fc)]({'file':this[_0x3e7f9b(0x241)]['createRelativePath'](_0x5b5d59,_0x5d97ff),'fullPath':_0x5b5d59,'error':_0x1fcc54['message'],'success':![]});}}return _0xb51721;}async['fixFile'](_0x19a72c,_0x1f9daf,_0x3119b5,_0x47dfa3={}){const _0x772e77=a0_0x1bbc11,_0x20859d=a0_0x29121e['isAbsolute'](_0x19a72c)?a0_0x29121e[_0x772e77(0x19f)](_0x19a72c):a0_0x29121e['resolve'](_0x1f9daf,_0x19a72c),_0x192f54=this[_0x772e77(0x241)][_0x772e77(0x195)](_0x20859d,_0x3119b5);if(!_0x192f54[_0x772e77(0x22c)])throw new Error('Read\x20access\x20denied:\x20'+_0x192f54['reason']);if(_0x47dfa3['writeFile']){const _0x3e00e6=this['directoryAccessManager'][_0x772e77(0x187)](_0x20859d,_0x3119b5);if(!_0x3e00e6[_0x772e77(0x22c)])throw new Error('Write\x20access\x20denied:\x20'+_0x3e00e6['reason']);}try{const _0x4d3423=await a0_0x156fb2['readFile'](_0x20859d,_0x772e77(0x1ec)),_0x286b3a=await this[_0x772e77(0x1bd)](),_0x74029f=await _0x286b3a['fix'](_0x20859d,_0x4d3423,{'workingDir':_0x1f9daf,'accessConfig':_0x3119b5,'framework':await this['detectFramework'](_0x1f9daf,this[_0x772e77(0x1b1)](_0x20859d))});return _0x47dfa3['writeFile']&&_0x74029f[_0x772e77(0x20e)]&&(await a0_0x156fb2['writeFile'](_0x20859d,_0x74029f[_0x772e77(0x1b5)],_0x772e77(0x1ec)),this['logger']?.[_0x772e77(0x1d1)]('File\x20fixed\x20and\x20written',{'file':_0x20859d})),{'file':this[_0x772e77(0x241)][_0x772e77(0x185)](_0x20859d,_0x3119b5),'fullPath':_0x20859d,'action':_0x772e77(0x217),'fixed':_0x74029f[_0x772e77(0x20e)],'fixedCount':_0x74029f[_0x772e77(0x1cd)],'remainingErrors':_0x74029f['remainingErrors'],'remainingWarnings':_0x74029f['remainingWarnings'],'changes':_0x74029f[_0x772e77(0x1d0)],'written':!!(_0x47dfa3[_0x772e77(0x24e)]&&_0x74029f[_0x772e77(0x20e)]),'preview':!_0x47dfa3[_0x772e77(0x24e)]&&_0x74029f[_0x772e77(0x20e)]?_0x74029f[_0x772e77(0x1b5)]:undefined};}catch(_0x847ec6){throw new Error(_0x772e77(0x18a)+_0x19a72c+':\x20'+_0x847ec6['message']);}}async['formatFile'](_0x183db9,_0x2c75a2,_0x8b2da2,_0x1069de={}){const _0xfd9b9d=a0_0x1bbc11,_0x573790=a0_0x29121e['isAbsolute'](_0x183db9)?a0_0x29121e['normalize'](_0x183db9):a0_0x29121e[_0xfd9b9d(0x221)](_0x2c75a2,_0x183db9),_0x11e461=this[_0xfd9b9d(0x241)]['validateReadAccess'](_0x573790,_0x8b2da2);if(!_0x11e461[_0xfd9b9d(0x22c)])throw new Error(_0xfd9b9d(0x249)+_0x11e461[_0xfd9b9d(0x201)]);if(_0x1069de['writeFile']){const _0x1e8adc=this[_0xfd9b9d(0x241)][_0xfd9b9d(0x187)](_0x573790,_0x8b2da2);if(!_0x1e8adc['allowed'])throw new Error(_0xfd9b9d(0x261)+_0x1e8adc[_0xfd9b9d(0x201)]);}try{const _0x93ca8f=await a0_0x156fb2['readFile'](_0x573790,'utf-8'),_0x453eed=await this[_0xfd9b9d(0x1dc)]();if(!_0x453eed[_0xfd9b9d(0x1ad)](_0x573790))return{'file':this['directoryAccessManager']['createRelativePath'](_0x573790,_0x8b2da2),'fullPath':_0x573790,'action':'format','formatted':![],'skipped':!![],'skipReason':_0xfd9b9d(0x1f6)};const _0x1d7499=await _0x453eed['format'](_0x573790,_0x93ca8f,{'workingDir':_0x2c75a2,'accessConfig':_0x8b2da2});return _0x1069de[_0xfd9b9d(0x24e)]&&_0x1d7499['formatted']&&(await a0_0x156fb2['writeFile'](_0x573790,_0x1d7499['content'],_0xfd9b9d(0x1ec)),this[_0xfd9b9d(0x22a)]?.[_0xfd9b9d(0x1d1)]('File\x20formatted\x20and\x20written',{'file':_0x573790})),{'file':this['directoryAccessManager']['createRelativePath'](_0x573790,_0x8b2da2),'fullPath':_0x573790,'action':'format','formatted':_0x1d7499['formatted'],'linesChanged':_0x1d7499[_0xfd9b9d(0x215)],'changes':_0x1d7499['changes'],'written':!!(_0x1069de['writeFile']&&_0x1d7499[_0xfd9b9d(0x1ef)]),'preview':!_0x1069de['writeFile']&&_0x1d7499['formatted']?_0x1d7499['content']:undefined};}catch(_0x527c25){throw new Error('Failed\x20to\x20format\x20'+_0x183db9+':\x20'+_0x527c25[_0xfd9b9d(0x1f8)]);}}async[a0_0x1bbc11(0x25f)](_0x194c2b,_0x48546d,_0x588a0c,_0x5a14a6={}){const _0x7e899a=a0_0x1bbc11,_0x12e627=a0_0x29121e['isAbsolute'](_0x194c2b)?a0_0x29121e[_0x7e899a(0x19f)](_0x194c2b):a0_0x29121e[_0x7e899a(0x221)](_0x48546d,_0x194c2b),_0x2a4be6=this['directoryAccessManager'][_0x7e899a(0x195)](_0x12e627,_0x588a0c);if(!_0x2a4be6['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x2a4be6[_0x7e899a(0x201)]);try{const _0x5eaf36=await a0_0x156fb2['stat'](_0x12e627);if(_0x5eaf36['size']>this[_0x7e899a(0x1c7)])throw new Error(_0x7e899a(0x1fa)+_0x5eaf36[_0x7e899a(0x1aa)]+_0x7e899a(0x204)+this[_0x7e899a(0x1c7)]+')');const _0x62f16d=this[_0x7e899a(0x1b1)](_0x12e627);if(!_0x62f16d||!['javascript',_0x7e899a(0x1ae),'python']['includes'](_0x62f16d))return{'file':this['directoryAccessManager']['createRelativePath'](_0x12e627,_0x588a0c),'fullPath':_0x12e627,'language':_0x62f16d||_0x7e899a(0x23d),'issues':[],'skipped':!![],'skipReason':_0x7e899a(0x1ea)};const _0x1d1ad1=await a0_0x156fb2['readFile'](_0x12e627,_0x7e899a(0x1ec)),_0x346642=await this['getSecurityAnalyzer'](),_0x2feb67=await _0x346642['analyze'](_0x12e627,_0x1d1ad1,{'skipTestFiles':_0x5a14a6['skipTestFiles']!==![]}),_0x4f3aaa={'file':this[_0x7e899a(0x241)][_0x7e899a(0x185)](_0x12e627,_0x588a0c),'fullPath':_0x12e627,'language':_0x62f16d,'action':_0x7e899a(0x200),'critical':_0x2feb67['filter'](_0x1ec5d9=>_0x1ec5d9['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x2feb67[_0x7e899a(0x18f)](_0x5ee43a=>_0x5ee43a[_0x7e899a(0x263)]===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x2feb67[_0x7e899a(0x18f)](_0x20074f=>_0x20074f[_0x7e899a(0x263)]===STATIC_ANALYSIS[_0x7e899a(0x1f1)]['WARNING']),'info':_0x2feb67[_0x7e899a(0x18f)](_0x44d173=>_0x44d173['severity']===STATIC_ANALYSIS[_0x7e899a(0x1f1)]['INFO']),'totalIssues':_0x2feb67['length'],'analyzed':!![],'scannersUsed':_0x2feb67['map'](_0x438b40=>_0x438b40['scanner'])['filter']((_0x1bebdc,_0x1e2e07,_0x19d609)=>_0x19d609[_0x7e899a(0x1e4)](_0x1bebdc)===_0x1e2e07),'timestamp':new Date()['toISOString']()};return _0x4f3aaa;}catch(_0x570d22){throw new Error(_0x7e899a(0x1d5)+_0x194c2b+':\x20'+_0x570d22['message']);}}async[a0_0x1bbc11(0x1c8)](_0x20eb89,_0x908ec9,_0xd8ee25,_0x255ce6,_0x202735={}){const _0x33632a=a0_0x1bbc11,_0x39eec0=a0_0x29121e['isAbsolute'](_0x20eb89)?a0_0x29121e['normalize'](_0x20eb89):a0_0x29121e[_0x33632a(0x221)](_0xd8ee25,_0x20eb89),_0xcd0367=this['directoryAccessManager']['validateReadAccess'](_0x39eec0,_0x255ce6);if(!_0xcd0367['allowed'])throw new Error(_0x33632a(0x249)+_0xcd0367[_0x33632a(0x201)]);const _0x48e93d=await this[_0x33632a(0x1f5)](),_0x4f0503=await _0x48e93d['analyzeProject'](_0x39eec0,_0x33632a(0x242),_0x202735),_0x465b25=_0x908ec9||'**/*.{js,jsx,mjs,cjs,ts,tsx,py}',_0x1cd95e=await this[_0x33632a(0x23f)](_0x39eec0,_0x465b25);if(_0x1cd95e[_0x33632a(0x219)]>this['maxFilesPerBatch'])throw new Error('Too\x20many\x20files:\x20'+_0x1cd95e['length']+_0x33632a(0x23e)+this['maxFilesPerBatch']+')');const _0x49cb3d=[];if(this[_0x33632a(0x226)]&&_0x1cd95e[_0x33632a(0x219)]>0x1){this[_0x33632a(0x22a)]?.['debug']('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x1cd95e['length'],'batchSize':this['maxParallelFiles']});for(let _0xdf2108=0x0;_0xdf2108<_0x1cd95e['length'];_0xdf2108+=this['maxParallelFiles']){const _0x404393=_0x1cd95e[_0x33632a(0x194)](_0xdf2108,_0xdf2108+this['maxParallelFiles']);_0x202735[_0x33632a(0x1b6)]&&_0x202735['onProgress']({'completed':_0xdf2108,'total':_0x1cd95e['length'],'percentage':Math[_0x33632a(0x1eb)](_0xdf2108/_0x1cd95e[_0x33632a(0x219)]*0x64)});const _0x346c0e=_0x404393[_0x33632a(0x22f)](async _0x270155=>{const _0x29d2cd=_0x33632a;try{return await this['securityScanFile'](_0x270155,_0xd8ee25,_0x255ce6,_0x202735);}catch(_0x3032d1){return this['logger']?.['warn']('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x270155,'error':_0x3032d1[_0x29d2cd(0x1f8)]}),{'file':this[_0x29d2cd(0x241)]['createRelativePath'](_0x270155,_0x255ce6),'fullPath':_0x270155,'error':_0x3032d1[_0x29d2cd(0x1f8)],'success':![]};}}),_0xecc30f=await Promise['all'](_0x346c0e);_0x49cb3d['push'](..._0xecc30f['filter'](_0x2165f6=>_0x2165f6!==null));}_0x202735[_0x33632a(0x1b6)]&&_0x202735['onProgress']({'completed':_0x1cd95e[_0x33632a(0x219)],'total':_0x1cd95e[_0x33632a(0x219)],'percentage':0x64});}else for(const _0x40e422 of _0x1cd95e){try{const _0x4ce8fa=await this[_0x33632a(0x25f)](_0x40e422,_0xd8ee25,_0x255ce6,_0x202735);_0x4ce8fa&&_0x49cb3d[_0x33632a(0x1fc)](_0x4ce8fa);}catch(_0x5c92e0){this['logger']?.['warn'](_0x33632a(0x23a),{'file':_0x40e422,'error':_0x5c92e0[_0x33632a(0x1f8)]}),_0x49cb3d[_0x33632a(0x1fc)]({'file':this[_0x33632a(0x241)][_0x33632a(0x185)](_0x40e422,_0x255ce6),'fullPath':_0x40e422,'error':_0x5c92e0[_0x33632a(0x1f8)],'success':![]});}}return _0x4f0503['length']>0x0&&_0x49cb3d['push']({'file':a0_0x29121e['join'](_0x39eec0,_0x33632a(0x25d)),'fullPath':a0_0x29121e['join'](_0x39eec0,'package.json'),'action':'dependency-scan','critical':_0x4f0503[_0x33632a(0x18f)](_0x7352b7=>_0x7352b7['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x4f0503[_0x33632a(0x18f)](_0x4dbba9=>_0x4dbba9[_0x33632a(0x263)]===STATIC_ANALYSIS[_0x33632a(0x1f1)][_0x33632a(0x183)]),'warnings':_0x4f0503[_0x33632a(0x18f)](_0x5402dd=>_0x5402dd[_0x33632a(0x263)]===STATIC_ANALYSIS['SEVERITY'][_0x33632a(0x1af)]),'info':_0x4f0503[_0x33632a(0x18f)](_0x46a5c9=>_0x46a5c9['severity']===STATIC_ANALYSIS['SEVERITY'][_0x33632a(0x1de)]),'totalIssues':_0x4f0503[_0x33632a(0x219)],'analyzed':!![],'scannersUsed':['npm-audit'],'timestamp':new Date()[_0x33632a(0x234)]()}),_0x49cb3d;}async['validateConfigFile'](_0x1268cf,_0x3f77b2,_0x176870,_0x592f64={}){const _0xbf0440=a0_0x1bbc11,_0x2c4ef4=a0_0x29121e['isAbsolute'](_0x1268cf)?a0_0x29121e[_0xbf0440(0x19f)](_0x1268cf):a0_0x29121e['resolve'](_0x3f77b2,_0x1268cf),_0x5ae329=this['directoryAccessManager']['validateReadAccess'](_0x2c4ef4,_0x176870);if(!_0x5ae329[_0xbf0440(0x22c)])throw new Error(_0xbf0440(0x249)+_0x5ae329[_0xbf0440(0x201)]);try{const _0x8bde95=await a0_0x156fb2['stat'](_0x2c4ef4);if(_0x8bde95[_0xbf0440(0x1aa)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x8bde95[_0xbf0440(0x1aa)]+_0xbf0440(0x204)+this[_0xbf0440(0x1c7)]+')');const _0x540192=await this['getConfigValidator'](),_0x18bdeb=await _0x540192[_0xbf0440(0x1d6)](_0x2c4ef4,_0x592f64),_0x27ebe3={'file':this['directoryAccessManager'][_0xbf0440(0x185)](_0x2c4ef4,_0x176870),'fullPath':_0x2c4ef4,'action':'validate-config','critical':_0x18bdeb['filter'](_0x3eaf84=>_0x3eaf84['severity']===STATIC_ANALYSIS[_0xbf0440(0x1f1)]['CRITICAL']),'errors':_0x18bdeb[_0xbf0440(0x18f)](_0x201399=>_0x201399['severity']===STATIC_ANALYSIS['SEVERITY'][_0xbf0440(0x183)]),'warnings':_0x18bdeb['filter'](_0x36334e=>_0x36334e[_0xbf0440(0x263)]===STATIC_ANALYSIS[_0xbf0440(0x1f1)]['WARNING']),'info':_0x18bdeb[_0xbf0440(0x18f)](_0x1e0f80=>_0x1e0f80['severity']===STATIC_ANALYSIS[_0xbf0440(0x1f1)]['INFO']),'totalIssues':_0x18bdeb[_0xbf0440(0x219)],'analyzed':!![],'validatorsUsed':_0x18bdeb['map'](_0x52e4eb=>_0x52e4eb[_0xbf0440(0x1ca)])[_0xbf0440(0x18f)]((_0x2ba5ed,_0x5168fe,_0x555553)=>_0x555553[_0xbf0440(0x1e4)](_0x2ba5ed)===_0x5168fe),'timestamp':new Date()[_0xbf0440(0x234)]()};return _0x27ebe3;}catch(_0x334b27){throw new Error('Failed\x20to\x20validate\x20config\x20'+_0x1268cf+':\x20'+_0x334b27[_0xbf0440(0x1f8)]);}}async['validateConfigDirectory'](_0x168350,_0x3e53cc,_0x1b7f85,_0x1d6757={}){const _0x150769=a0_0x1bbc11,_0x26f080=a0_0x29121e['isAbsolute'](_0x168350)?a0_0x29121e['normalize'](_0x168350):a0_0x29121e['resolve'](_0x3e53cc,_0x168350),_0x925ca3=this['directoryAccessManager'][_0x150769(0x195)](_0x26f080,_0x1b7f85);if(!_0x925ca3[_0x150769(0x22c)])throw new Error('Read\x20access\x20denied:\x20'+_0x925ca3[_0x150769(0x201)]);const _0x3fac4a=await this[_0x150769(0x1a2)](_0x26f080);if(_0x3fac4a['length']>this[_0x150769(0x23b)])throw new Error(_0x150769(0x246)+_0x3fac4a[_0x150769(0x219)]+_0x150769(0x23e)+this[_0x150769(0x23b)]+')');const _0x311580=[];for(const _0x3058ce of _0x3fac4a){try{const _0x3dd082=await this[_0x150769(0x235)](_0x3058ce,_0x3e53cc,_0x1b7f85,_0x1d6757);_0x3dd082&&_0x311580['push'](_0x3dd082);}catch(_0xf86575){this['logger']?.[_0x150769(0x1c3)]('Failed\x20to\x20validate\x20config\x20file',{'file':_0x3058ce,'error':_0xf86575['message']}),_0x311580[_0x150769(0x1fc)]({'file':this[_0x150769(0x241)]['createRelativePath'](_0x3058ce,_0x1b7f85),'fullPath':_0x3058ce,'error':_0xf86575['message'],'success':![]});}}return _0x311580;}async['findConfigFiles'](_0x5a72b8){const _0x44f64f=a0_0x1bbc11,_0x140794=[],_0x1a80df=['package.json','tsconfig.json',_0x44f64f(0x181),_0x44f64f(0x248),_0x44f64f(0x1bc),'.env','.env.example',_0x44f64f(0x20a),'.eslintrc.json',_0x44f64f(0x1e8),_0x44f64f(0x25e)],_0x41dfb8=['.yml','.yaml','.json','.tf',_0x44f64f(0x214)],_0x909c8b=async _0xc3a44b=>{const _0x453426=_0x44f64f,_0x1661fe=await a0_0x156fb2[_0x453426(0x1df)](_0xc3a44b,{'withFileTypes':!![]});for(const _0x5a1079 of _0x1661fe){const _0x408268=a0_0x29121e['join'](_0xc3a44b,_0x5a1079[_0x453426(0x22e)]);if(_0x5a1079[_0x453426(0x184)]()){if(_0x5a1079['name']==='.github'||_0x5a1079[_0x453426(0x22e)]===_0x453426(0x25a)||_0x5a1079['name']==='k8s'||_0x5a1079['name']==='terraform')await _0x909c8b(_0x408268);else{if(!['node_modules',_0x453426(0x1a6),'dist','build']['includes'](_0x5a1079[_0x453426(0x22e)]))continue;}}else{if(_0x5a1079[_0x453426(0x1d4)]()){if(_0x1a80df['includes'](_0x5a1079['name']))_0x140794[_0x453426(0x1fc)](_0x408268);else{const _0x242414=a0_0x29121e[_0x453426(0x1a5)](_0x5a1079['name'])['toLowerCase']();if(_0x41dfb8[_0x453426(0x1e1)](_0x242414)){const _0x11a8b5=a0_0x29121e['basename'](a0_0x29121e[_0x453426(0x236)](_0x408268));(_0x11a8b5===_0x453426(0x25a)||_0x11a8b5===_0x453426(0x21d)||_0x11a8b5==='terraform'||_0x11a8b5==='workflows')&&_0x140794['push'](_0x408268);}}}}}};return await _0x909c8b(_0x5a72b8),_0x140794;}['detectLanguage'](_0x5114ec){const _0x22780b=a0_0x1bbc11,_0x2631f4=a0_0x29121e[_0x22780b(0x1a5)](_0x5114ec)['toLowerCase']();return STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x2631f4]||null;}async['detectFramework'](_0x43d949,_0x109248){const _0x148fbc=a0_0x1bbc11;try{if(_0x109248===STATIC_ANALYSIS[_0x148fbc(0x21e)][_0x148fbc(0x1ba)]||_0x109248===STATIC_ANALYSIS[_0x148fbc(0x21e)]['TYPESCRIPT'])return await this[_0x148fbc(0x1f4)](_0x43d949);if(_0x109248===STATIC_ANALYSIS['LANGUAGE']['PYTHON'])return await this['detectPythonFramework'](_0x43d949);return null;}catch(_0x5b938d){return this[_0x148fbc(0x22a)]?.['debug'](_0x148fbc(0x243),{'error':_0x5b938d['message']}),null;}}async['detectJSFramework'](_0x5539a3){const _0x479a5f=a0_0x1bbc11;try{const _0x3c012c=a0_0x29121e[_0x479a5f(0x24b)](_0x5539a3,STATIC_ANALYSIS[_0x479a5f(0x1cf)][_0x479a5f(0x1ba)]),_0x193a0d=await a0_0x156fb2[_0x479a5f(0x202)](_0x3c012c,'utf-8'),_0x1c2c2e=JSON['parse'](_0x193a0d),_0x1b8258={..._0x1c2c2e[_0x479a5f(0x196)],..._0x1c2c2e[_0x479a5f(0x1d9)]};for(const [_0x305392,_0x12aea5]of Object[_0x479a5f(0x1da)](STATIC_ANALYSIS[_0x479a5f(0x25c)])){if(_0x1b8258[_0x12aea5])return _0x305392[_0x479a5f(0x228)]();}return null;}catch(_0x372697){return null;}}async['detectPythonFramework'](_0x29c770){const _0x5d80ce=a0_0x1bbc11;try{const _0x1a36c6=a0_0x29121e[_0x5d80ce(0x24b)](_0x29c770,STATIC_ANALYSIS[_0x5d80ce(0x1cf)]['PYTHON']),_0x3f4c60=await a0_0x156fb2[_0x5d80ce(0x202)](_0x1a36c6,'utf-8');for(const [_0x27c0f8,_0x35b4aa]of Object['entries'](STATIC_ANALYSIS[_0x5d80ce(0x193)])){if(_0x3f4c60['toLowerCase']()['includes'](_0x35b4aa))return _0x27c0f8['toLowerCase']();}return null;}catch(_0x40c8cd){try{const _0x311630=a0_0x29121e[_0x5d80ce(0x24b)](_0x29c770,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON_POETRY']),_0x872607=await a0_0x156fb2['readFile'](_0x311630,'utf-8');for(const [_0x21f492,_0x209ef9]of Object[_0x5d80ce(0x1da)](STATIC_ANALYSIS[_0x5d80ce(0x193)])){if(_0x872607['toLowerCase']()[_0x5d80ce(0x1e1)](_0x209ef9))return _0x21f492['toLowerCase']();}}catch{}return null;}}async[a0_0x1bbc11(0x23f)](_0x36911b,_0x5344d4){const _0x198e76=a0_0x1bbc11,_0x4bfdcf=[],_0x2bdb0c=_0x5344d4||_0x198e76(0x1d8),_0x2e89d9=_0x48f743=>{const _0x2965bb=_0x198e76,_0x11779f=[],_0x3a21db=_0x48f743[_0x2965bb(0x211)](/\*\.\{([^}]+)\}/);if(_0x3a21db){const _0x24db34=_0x3a21db[0x1]['split'](',')['map'](_0x5b5f10=>_0x5b5f10[_0x2965bb(0x191)]());_0x24db34[_0x2965bb(0x1c5)](_0x8eec22=>_0x11779f[_0x2965bb(0x1fc)](_0x8eec22['startsWith']('.')?_0x8eec22:'.'+_0x8eec22));}else{const _0x1c6cc7=_0x48f743['match'](/\*\.([a-z]+)$/i);if(_0x1c6cc7){const _0x110744=_0x1c6cc7[0x1];_0x11779f['push'](_0x110744[_0x2965bb(0x21b)]('.')?_0x110744:'.'+_0x110744);}}if(_0x11779f[_0x2965bb(0x219)]===0x0)return null;return _0x11779f;},_0x41ce78=_0x2e89d9(_0x2bdb0c),_0xdc7e52=async _0x2808e1=>{const _0x5e0ef6=_0x198e76,_0x404a8b=await a0_0x156fb2['readdir'](_0x2808e1,{'withFileTypes':!![]});for(const _0x27a45d of _0x404a8b){const _0x437de1=a0_0x29121e['join'](_0x2808e1,_0x27a45d[_0x5e0ef6(0x22e)]);if(_0x27a45d[_0x5e0ef6(0x184)]())![_0x5e0ef6(0x1c1),'.git',_0x5e0ef6(0x1db),_0x5e0ef6(0x1e9),_0x5e0ef6(0x1fd),_0x5e0ef6(0x262),'venv']['includes'](_0x27a45d['name'])&&await _0xdc7e52(_0x437de1);else{if(_0x27a45d['isFile']()){const _0x22f12a=a0_0x29121e['extname'](_0x27a45d[_0x5e0ef6(0x22e)])['toLowerCase']();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x22f12a]&&((_0x41ce78===null||_0x41ce78[_0x5e0ef6(0x1e1)](_0x22f12a))&&_0x4bfdcf[_0x5e0ef6(0x1fc)](_0x437de1));}}}};return await _0xdc7e52(_0x36911b),_0x4bfdcf;}async['getAnalyzer'](_0x43f280){const _0xd221f1=a0_0x1bbc11;try{if(_0x43f280===STATIC_ANALYSIS['LANGUAGE']['JAVASCRIPT']){if(!this['analyzers']['javascript']){const {default:_0x3d2184}=await import(_0xd221f1(0x1ee));this[_0xd221f1(0x1b4)][_0xd221f1(0x242)]=new _0x3d2184(this[_0xd221f1(0x22a)]);}return this[_0xd221f1(0x1b4)][_0xd221f1(0x242)];}if(_0x43f280===STATIC_ANALYSIS[_0xd221f1(0x21e)]['TYPESCRIPT']){if(!this[_0xd221f1(0x1b4)][_0xd221f1(0x1ae)]){const {default:_0x573a0f}=await import(_0xd221f1(0x1c6));this[_0xd221f1(0x1b4)][_0xd221f1(0x1ae)]=new _0x573a0f(this['logger']);}return this['analyzers']['typescript'];}if(_0x43f280===STATIC_ANALYSIS['LANGUAGE']['PYTHON']){if(!this['analyzers']['python']){const {default:_0x35eae7}=await import(_0xd221f1(0x19d));this[_0xd221f1(0x1b4)][_0xd221f1(0x190)]=new _0x35eae7(this[_0xd221f1(0x22a)]);}return this[_0xd221f1(0x1b4)][_0xd221f1(0x190)];}if(_0x43f280===STATIC_ANALYSIS['LANGUAGE'][_0xd221f1(0x1e3)]||_0x43f280===STATIC_ANALYSIS[_0xd221f1(0x21e)]['SCSS']||_0x43f280===STATIC_ANALYSIS[_0xd221f1(0x21e)][_0xd221f1(0x192)]){if(!this['analyzers']['css']){const {default:_0x48b95b}=await import(_0xd221f1(0x1f0));this['analyzers'][_0xd221f1(0x22d)]=new _0x48b95b(this['logger']);}return this[_0xd221f1(0x1b4)][_0xd221f1(0x22d)];}return null;}catch(_0x5947cb){return this['logger']?.['error'](_0xd221f1(0x237),{'language':_0x43f280,'error':_0x5947cb[_0xd221f1(0x1f8)]}),null;}}async[a0_0x1bbc11(0x1bd)](){const _0x581079=a0_0x1bbc11;if(!this['analyzers'][_0x581079(0x1f9)]){const {default:_0x67f585}=await import('../analyzers/ESLintAnalyzer.js');this[_0x581079(0x1b4)][_0x581079(0x1f9)]=new _0x67f585(this[_0x581079(0x22a)]);}return this[_0x581079(0x1b4)][_0x581079(0x1f9)];}async['getPrettierFormatter'](){const _0x49623f=a0_0x1bbc11;if(!this['formatters'][_0x49623f(0x1a3)]){const {default:_0x4b9268}=await import(_0x49623f(0x1e7));this['formatters'][_0x49623f(0x1a3)]=new _0x4b9268(this[_0x49623f(0x22a)]);}return this['formatters']['prettier'];}async['getSecurityAnalyzer'](){const _0x812432=a0_0x1bbc11;if(!this['analyzers']['security']){const {default:_0x23e380}=await import(_0x812432(0x1e0));this[_0x812432(0x1b4)][_0x812432(0x227)]=new _0x23e380(this['logger']);}return this[_0x812432(0x1b4)][_0x812432(0x227)];}async[a0_0x1bbc11(0x212)](){const _0xb4297=a0_0x1bbc11;if(!this[_0xb4297(0x1b4)][_0xb4297(0x1bf)]){const {default:_0x5beb98}=await import(_0xb4297(0x1a0));this[_0xb4297(0x1b4)]['config']=new _0x5beb98(this['logger']);}return this[_0xb4297(0x1b4)]['config'];}[a0_0x1bbc11(0x257)](_0x5b691,_0x2fdf24){const _0x5d571f=a0_0x1bbc11;if(_0x2fdf24['analyzed']){_0x5b691['totalFiles']++;const _0x32416f=_0x2fdf24[_0x5d571f(0x230)]?.[_0x5d571f(0x219)]||0x0,_0x5bc130=_0x2fdf24['errors']?.[_0x5d571f(0x219)]||0x0,_0x445bd1=_0x2fdf24['warnings']?.['length']||0x0,_0x303b46=_0x2fdf24['info']?.['length']||0x0;_0x5b691['totalCritical']===undefined&&(_0x5b691['totalCritical']=0x0);_0x5b691[_0x5d571f(0x233)]+=_0x32416f,_0x5b691[_0x5d571f(0x240)]+=_0x5bc130,_0x5b691['totalWarnings']+=_0x445bd1,_0x5b691[_0x5d571f(0x24f)]+=_0x303b46;(_0x32416f>0x0||_0x5bc130>0x0)&&_0x5b691['filesWithErrors']++;_0x2fdf24[_0x5d571f(0x1be)]&&(_0x5b691['filesByLanguage'][_0x2fdf24[_0x5d571f(0x1be)]]=(_0x5b691['filesByLanguage'][_0x2fdf24[_0x5d571f(0x1be)]]||0x0)+0x1);const _0x43e514=[..._0x2fdf24['critical']||[],..._0x2fdf24['errors']||[],..._0x2fdf24['warnings']||[]];for(const _0x123068 of _0x43e514){_0x123068['category']&&(_0x5b691['errorsByCategory'][_0x123068[_0x5d571f(0x1d7)]]=(_0x5b691[_0x5d571f(0x1d3)][_0x123068[_0x5d571f(0x1d7)]]||0x0)+0x1);}}}['computeContentHash'](_0x5a397d){const _0x32a0d7=a0_0x1bbc11;return a0_0x30aec9['createHash'](_0x32a0d7(0x21f))['update'](_0x5a397d)[_0x32a0d7(0x223)](_0x32a0d7(0x1c0))['substring'](0x0,0x10);}['getPerformanceMetrics'](){const _0x3aaedd=a0_0x1bbc11,_0xf4a5cc=this[_0x3aaedd(0x1a4)][_0x3aaedd(0x209)]>0x0?this[_0x3aaedd(0x1a4)]['cacheHits']/this['metrics']['totalAnalyses']*0x64:0x0,_0x7c64fe=this[_0x3aaedd(0x1a4)]['filesAnalyzed']>0x0?this['metrics']['totalAnalysisTime']/this[_0x3aaedd(0x1a4)][_0x3aaedd(0x1bb)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0xf4a5cc*0xa)/0xa,'averageAnalysisTime':Math[_0x3aaedd(0x1eb)](_0x7c64fe),'cacheSize':this['analysisCache'][_0x3aaedd(0x1aa)]};}['resetPerformanceMetrics'](){this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}[a0_0x1bbc11(0x231)](){const _0x2daebe=a0_0x1bbc11;this[_0x2daebe(0x25b)]['clear'](),this['logger']?.[_0x2daebe(0x18b)](_0x2daebe(0x264));}['getSupportedActions'](){const _0x4a31b7=a0_0x1bbc11;return[_0x4a31b7(0x1b8),_0x4a31b7(0x23c),_0x4a31b7(0x217),_0x4a31b7(0x222),'security-scan','security-scan-project','validate-config','validate-config-directory'];}['getParameterSchema'](){const _0x3b7393=a0_0x1bbc11;return{'type':'object','properties':{'actions':{'type':_0x3b7393(0x253),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x3b7393(0x24a)]()},'filePath':{'type':'string'},'directory':{'type':_0x3b7393(0x1cc)},'pattern':{'type':_0x3b7393(0x1cc)},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':[_0x3b7393(0x1a9)]}}},'required':[_0x3b7393(0x19b)]};}}export default StaticAnalysisTool;function a0_0x3773(){const _0x5b4fd3=['Dg90ywXdCML0AwnHBa','Dg9ju09tDhjPBMC','DMfSAwrHDgvdB25MAwDgAwXL','zgLYBMfTzq','rMfPBgvKihrVigXVywqGyw5HBhL6zxi','CgfYywXSzwXcyxrJAgvZ','C2TPCfrLC3rgAwXLCW','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','Bwf4rMLSzxnqzxjcyxrJAa','yw5HBhL6zs1WCM9Qzwn0','Dw5RBM93BG','icHTyxGG','zMLUzezPBgvZ','Dg90ywXfCNjVCNm','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','AMf2yxnJCMLWDa','rNjHBwv3B3jRigrLDgvJDgLVBIbMywLSzwq','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','neXAqvfWta','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','zg9JA2vYlwnVBxbVC2uUEw1S','uMvHzcbHy2nLC3mGzgvUAwvKoIa','z2v0u3vWCg9YDgvKqwn0Aw9UCW','AM9PBG','tufyx0zjtevtx1bfuL9cqvrdsa','zxjYB3i','D3jPDgvgAwXL','Dg90ywXjBMzV','CMvXDwLYzxnqCM9Qzwn0','D3jPDguTzMLSzq','mJuWmJKZnLjSCKLxza','yxjYyxK','vg9Vig1HBNKGywn0Aw9UCZOG','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','Bwf4ugfYywXSzwXgAwXLCW','DxbKyxrLu3vTBwfYEq','C3rHDgLJyw5HBhLZAxm','zw5HyMXLq2fJAgu','A3vIzxjUzxrLCW','yw5HBhLZAxndywnOzq','sLnFrLjbtuvxt1jluW','CgfJA2fNzs5QC29U','lNbYzxr0AwvYCMmUANnVBG','C2vJDxjPDhLty2fUrMLSzq','BM93','v3jPDguGywnJzxnZigrLBMLLzdOG','lNzLBNy','C2v2zxjPDhK','qw5HBhLZAxmGy2fJAguGy2XLyxjLza','rg9JA2vYzMLSzq','vw5ZDxbWB3j0zwqGzMLSzsb0ExbL','rvjst1i','AxneAxjLy3rVCNK','y3jLyxrLuMvSyxrPDMvqyxrO','mtaZodiXovP6yvr3CG','DMfSAwrHDgvxCML0zufJy2vZCW','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4TChjVAMvJDa','rMfPBgvKihrVigfUywX5EMuGzMLSzsbPBIbWCM9Qzwn0','rMfPBgvKihrVigzPEca','zgvIDwC','mte2nteYq09Xu1zX','yw5HBhL6zvbYB2PLy3q','zMLSzvbHDgG','zMLSDgvY','ChL0Ag9U','DhjPBq','tevtuW','ufLuse9ox0zsqu1fv09ss1m','C2XPy2u','DMfSAwrHDgvszwfKqwnJzxnZ','zgvWzw5Kzw5JAwvZ','mJi1wu50t2DO','CgfYC2vqyxjHBwv0zxjZ','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','qu5btfLtsvnFveLnru9vva','ywn0Aw9UCW','mteYmZKWq1rmALbe','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzW','BM9YBwfSAxPL','lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','Bwf4lwvYCM9YCW','zMLUzenVBMzPz0zPBgvZ','ChjLDhrPzxi','Bwv0CMLJCW','zxH0BMfTzq','lMDPDa','yw5HBhL6zuzPBgu','z2v0','DhLWzq','C2L6zq','u3rHDgLJqw5HBhLZAxmGDg9VBcbWyxjZAw5NihbHCMfTzxrLCNm','oIb0ExbLigLZihjLCxvPCMvK','AxntDxbWB3j0zwq','DhLWzxnJCMLWDa','v0fstKLorW','zMXVB3i','zgv0zwn0tgfUz3vHz2u','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','qwn0Aw9Uia','yw5HBhL6zxjZ','y29UDgvUDa','B25qCM9NCMvZCW','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','yw5HBhL6zq','zxHLyW','sKfwqvnduKLqva','zMLSzxnbBMfSExPLza','zg9JA2vYlwnVBxbVC2uUEwfTBa','z2v0rvnmAw50qw5HBhL6zxi','BgfUz3vHz2u','y29UzMLN','Agv4','BM9Kzv9TB2r1BgvZ','C3vTBwfYEq','D2fYBG','DxnLq29UDgvUDeHHC2G','zM9YrwfJAa','lI4Vyw5HBhL6zxjZl1r5Cgvty3jPChrbBMfSExPLCI5QCW','Bwf4rMLSzvnPEMu','C2vJDxjPDhLty2fUuhjVAMvJDa','Aw5JBhvKzs13yxjUAw5NCW','DMfSAwrHDg9Y','rMfPBgvKihrVigfUywX5EMuG','C3rYAw5N','zML4zwrdB3vUDa','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','rLjbtuvxt1jlx01btKLgrvnuuW','y2HHBMDLCW','Aw5MBW','Aw5JBhvKzvDHCM5PBMDZ','zxjYB3jZqNLdyxrLz29YEq','AxngAwXL','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4G','DMfSAwrHDgu','y2f0zwDVCNK','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5lgnZCYXZy3nZlhnHC3mSBgvZC30','zgv2rgvWzw5Kzw5JAwvZ','zw50CMLLCW','zgLZDa','z2v0uhjLDhrPzxjgB3jTyxr0zxi','y29TChv0zunVBNrLBNriyxnO','su5gtW','CMvHzgrPCG','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','Aw5JBhvKzxm','q0fdsevFrfvsqvrjt04','q1nt','Aw5KzxHpzG','z2v0qw5HBhL6zxi','zgv0zwn0rNjHBwv3B3jR','lI4Vyw5HBhL6zxjZl1bYzxr0AwvYrM9YBwf0DgvYlMPZ','lNbYzxr0AwvYCMm','yNvPBgq','u2vJDxjPDhKGC2nHBM5PBMCGB25SEsbZDxbWB3j0CYbkyxzHu2nYAxb0lcbuExbLu2nYAxb0lcbHBMqGuhL0Ag9UigzPBgvZ','CM91BMq','DxrMltG','ywXS','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','zM9YBwf0DgvK','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','u0vwrvjjvfK','C2v0','Dhj1zq','zgv0zwn0sLngCMfTzxDVCMS','z2v0u2vJDxjPDhLbBMfSExPLCG','rMLSzsb0ExbLig5VDcbZDxbWB3j0zwqGyNKGuhjLDhrPzxi','mtq1C01KCg94','BwvZC2fNzq','zxnSAw50','rMLSzsb0B28GBgfYz2u6ia','C2TPCc10zxn0lwzPBgvZ','ChvZAa','x19WEwnHy2HLx18','vxnPBMCGy2fJAgvKigfUywX5C2LZihjLC3vSDa','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzVCM1HDa','C2vJDxjPDhKTC2nHBG','CMvHC29U','CMvHzezPBgu','odaWmda5sxDLB2z2','igj5DgvZicHTyxGG','ndrUq25rsuq','DgLTzxn0yw1W','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','Cgf0DgvYBG','Dg90ywXbBMfSExnLCW','lMvZBgLUDhjJlMPZ','zxjYB3jZ','DMfSAwrHDguTy29UzMLN','zMLSzs1WyxrO','zML4zwq','CMf3q29UDgvUDa','tM8Gyw5HBhL6zxiGyxzHAwXHyMXLigzVCIa','Bwf0y2G','z2v0q29UzMLNvMfSAwrHDg9Y','zML4rMLSzq','lNrMDMfYCW','BgLUzxndAgfUz2vK','ru5bqKXfx0nbq0Hf','zML4','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','BgvUz3rO','zMLSzxm','C3rHCNrZv2L0Aa','CgfYC2vbDhrYAwj1DgvZ','AZHZ','tefor1vbr0u','C2HHmJu2','m2j5vgzXAW','CMvZB2X2zq','zM9YBwf0','zgLNzxn0','Bwf4rxjYB3jZ','nZaWmdjquNbSz3K','CgfYywXSzwXbBMfSExnPCW','C2vJDxjPDhK','Dg9mB3DLCKnHC2u','zgLYzwn0B3j5','Bg9Nz2vY','mZuZmJiYnfjkufzeBG','ywXSB3DLza','y3nZ','BMfTzq','BwfW','y3jPDgLJywW','y2XLyxjdywnOzq','zxHLy3v0zq'];a0_0x3773=function(){return _0x5b4fd3;};return a0_0x3773();}
1
+ const a0_0x1af86f=a0_0x224a;function a0_0x224a(_0x103b1b,_0x4b5880){_0x103b1b=_0x103b1b-0x10e;const _0x2d8d93=a0_0x2d8d();let _0x224a26=_0x2d8d93[_0x103b1b];if(a0_0x224a['cciCTK']===undefined){var _0x2125eb=function(_0x312d96){const _0x599d69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a9d9a='',_0x417253='';for(let _0x19f56d=0x0,_0x346124,_0xfb82e9,_0x4ad9e9=0x0;_0xfb82e9=_0x312d96['charAt'](_0x4ad9e9++);~_0xfb82e9&&(_0x346124=_0x19f56d%0x4?_0x346124*0x40+_0xfb82e9:_0xfb82e9,_0x19f56d++%0x4)?_0x3a9d9a+=String['fromCharCode'](0xff&_0x346124>>(-0x2*_0x19f56d&0x6)):0x0){_0xfb82e9=_0x599d69['indexOf'](_0xfb82e9);}for(let _0x256564=0x0,_0x1265b8=_0x3a9d9a['length'];_0x256564<_0x1265b8;_0x256564++){_0x417253+='%'+('00'+_0x3a9d9a['charCodeAt'](_0x256564)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x417253);};a0_0x224a['mjrZDI']=_0x2125eb,a0_0x224a['aRMJEL']={},a0_0x224a['cciCTK']=!![];}const _0x52935d=_0x2d8d93[0x0],_0x435324=_0x103b1b+_0x52935d,_0x55ba1a=a0_0x224a['aRMJEL'][_0x435324];return!_0x55ba1a?(_0x224a26=a0_0x224a['mjrZDI'](_0x224a26),a0_0x224a['aRMJEL'][_0x435324]=_0x224a26):_0x224a26=_0x55ba1a,_0x224a26;}(function(_0x15e36e,_0x35d78f){const _0x22609d=a0_0x224a,_0x501983=_0x15e36e();while(!![]){try{const _0x20fc31=-parseInt(_0x22609d(0x1c4))/0x1+-parseInt(_0x22609d(0x1d5))/0x2*(-parseInt(_0x22609d(0x1b5))/0x3)+parseInt(_0x22609d(0x14f))/0x4+-parseInt(_0x22609d(0x10e))/0x5*(parseInt(_0x22609d(0x185))/0x6)+parseInt(_0x22609d(0x156))/0x7*(-parseInt(_0x22609d(0x1bf))/0x8)+parseInt(_0x22609d(0x147))/0x9+parseInt(_0x22609d(0x16a))/0xa*(parseInt(_0x22609d(0x16e))/0xb);if(_0x20fc31===_0x35d78f)break;else _0x501983['push'](_0x501983['shift']());}catch(_0x75424e){_0x501983['push'](_0x501983['shift']());}}}(a0_0x2d8d,0xdd710));import{BaseTool}from'./baseTool.js';import a0_0x3a9d9a from'../utilities/tagParser.js';import a0_0x417253 from'../utilities/directoryAccessManager.js';import a0_0x19f56d from'fs/promises';import a0_0x346124 from'path';import a0_0xfb82e9 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x4ad9e9={},_0x256564=null){const _0x401067=a0_0x224a;super(_0x4ad9e9,_0x256564),this['requiresProject']=!![],this['isAsync']=![],this['timeout']=_0x4ad9e9['timeout']||STATIC_ANALYSIS[_0x401067(0x1c0)],this['maxConcurrentOperations']=_0x4ad9e9[_0x401067(0x1d2)]||0x1,this[_0x401067(0x1c2)]=_0x4ad9e9[_0x401067(0x1c2)]||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this[_0x401067(0x13d)]=_0x4ad9e9['maxFilesPerBatch']||STATIC_ANALYSIS[_0x401067(0x1e6)],this['enableCache']=_0x4ad9e9[_0x401067(0x178)]!==![]&&STATIC_ANALYSIS[_0x401067(0x1cd)],this[_0x401067(0x186)]=new Map(),this[_0x401067(0x1e0)]=STATIC_ANALYSIS['CACHE_DURATION'],this[_0x401067(0x168)]=_0x4ad9e9['parallelAnalysis']!==![],this[_0x401067(0x1d8)]=_0x4ad9e9['maxParallelFiles']||0xa,this['useContentHash']=_0x4ad9e9['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x401067(0x11e)]=new a0_0x417253(_0x4ad9e9,_0x256564),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this[_0x401067(0x115)]={'prettier':null};}['getDescription'](){const _0x3acc4d=a0_0x224a;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['round'](this[_0x3acc4d(0x1c2)]/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+this['maxFilesPerBatch']+'\x20files\x20per\x20operation\x0a-\x20Analysis\x20timeout:\x20'+this['timeout']/0x3e8+_0x3acc4d(0x165);}[a0_0x1af86f(0x1d0)](_0x1265b8){const _0x10550f=a0_0x1af86f;try{const _0x51f3dd={},_0x2ed8bd=[];this[_0x10550f(0x188)]?.[_0x10550f(0x157)](_0x10550f(0x148),{'contentLength':_0x1265b8[_0x10550f(0x1d9)],'contentPreview':_0x1265b8[_0x10550f(0x11a)](0x0,0xc8)});const _0x172cca=/<analyze\s+(.+?)\/>/g;let _0x448939;while((_0x448939=_0x172cca['exec'](_0x1265b8))!==null){const _0x4488ef=_0x448939[0x1]['trim'](),_0x69d660=new a0_0x3a9d9a(),_0x572d7a=_0x69d660[_0x10550f(0x13a)](_0x4488ef),_0x4e65d4={'type':_0x10550f(0x13f),..._0x572d7a};_0x4e65d4[_0x10550f(0x18e)]&&(_0x4e65d4['filePath']=_0x4e65d4[_0x10550f(0x18e)],delete _0x4e65d4['file-path']),_0x4e65d4['include-warnings']&&(_0x4e65d4['includeWarnings']=_0x4e65d4[_0x10550f(0x18c)]==='true',delete _0x4e65d4['include-warnings']),_0x4e65d4['max-errors']&&(_0x4e65d4[_0x10550f(0x191)]=parseInt(_0x4e65d4['max-errors'],0xa),delete _0x4e65d4[_0x10550f(0x16f)]),_0x2ed8bd[_0x10550f(0x16d)](_0x4e65d4);}const _0x29102c=/<analyze-project\s+(.+?)\/>/g;while((_0x448939=_0x29102c['exec'](_0x1265b8))!==null){const _0x6664de=_0x448939[0x1][_0x10550f(0x14a)](),_0x591365=new a0_0x3a9d9a(),_0x1ca3d8=_0x591365['parseAttributes'](_0x6664de),_0x1fc4bb={'type':'analyze-project',..._0x1ca3d8};_0x1fc4bb[_0x10550f(0x18c)]&&(_0x1fc4bb[_0x10550f(0x182)]=_0x1fc4bb[_0x10550f(0x18c)]==='true',delete _0x1fc4bb[_0x10550f(0x18c)]),_0x1fc4bb['max-errors']&&(_0x1fc4bb[_0x10550f(0x191)]=parseInt(_0x1fc4bb[_0x10550f(0x16f)],0xa),delete _0x1fc4bb[_0x10550f(0x16f)]),_0x2ed8bd[_0x10550f(0x16d)](_0x1fc4bb);}const _0x5181b0=/<fix\s+(.+?)\/>/g;while((_0x448939=_0x5181b0['exec'](_0x1265b8))!==null){const _0x20376c=_0x448939[0x1][_0x10550f(0x14a)](),_0x4f7c18=new a0_0x3a9d9a(),_0x1bffd3=_0x4f7c18[_0x10550f(0x13a)](_0x20376c),_0x13268d={'type':_0x10550f(0x1cc),..._0x1bffd3};_0x13268d['file-path']&&(_0x13268d['filePath']=_0x13268d[_0x10550f(0x18e)],delete _0x13268d['file-path']),_0x13268d[_0x10550f(0x1a8)]&&(_0x13268d['writeFile']=_0x13268d[_0x10550f(0x1a8)]===_0x10550f(0x1c7),delete _0x13268d['write-file']),_0x2ed8bd[_0x10550f(0x16d)](_0x13268d);}const _0x4bd090=/<format\s+(.+?)\/>/g;while((_0x448939=_0x4bd090['exec'](_0x1265b8))!==null){const _0x17e552=_0x448939[0x1][_0x10550f(0x14a)](),_0x2318b7=new a0_0x3a9d9a(),_0x215869=_0x2318b7[_0x10550f(0x13a)](_0x17e552),_0x7f551b={'type':'format',..._0x215869};_0x7f551b['file-path']&&(_0x7f551b[_0x10550f(0x1cb)]=_0x7f551b['file-path'],delete _0x7f551b[_0x10550f(0x18e)]),_0x7f551b[_0x10550f(0x1a8)]&&(_0x7f551b[_0x10550f(0x15d)]=_0x7f551b[_0x10550f(0x1a8)]===_0x10550f(0x1c7),delete _0x7f551b['write-file']),_0x2ed8bd[_0x10550f(0x16d)](_0x7f551b);}const _0x154b62=/<security-scan\s+(.+?)\/>/g;while((_0x448939=_0x154b62[_0x10550f(0x119)](_0x1265b8))!==null){const _0x4b024c=_0x448939[0x1][_0x10550f(0x14a)](),_0x2a2568=new a0_0x3a9d9a(),_0x318e61=_0x2a2568['parseAttributes'](_0x4b024c),_0x4d3c94={'type':_0x10550f(0x174),..._0x318e61};_0x4d3c94[_0x10550f(0x18e)]&&(_0x4d3c94[_0x10550f(0x1cb)]=_0x4d3c94[_0x10550f(0x18e)],delete _0x4d3c94['file-path']),_0x4d3c94['skip-test-files']&&(_0x4d3c94['skipTestFiles']=_0x4d3c94['skip-test-files']==='true',delete _0x4d3c94['skip-test-files']),_0x2ed8bd[_0x10550f(0x16d)](_0x4d3c94);}const _0x5e3bf1=/<security-scan-project\s+(.+?)\/>/g;while((_0x448939=_0x5e3bf1['exec'](_0x1265b8))!==null){const _0x5a0eb6=_0x448939[0x1]['trim'](),_0x4eedcc=new a0_0x3a9d9a(),_0x5b3848=_0x4eedcc[_0x10550f(0x13a)](_0x5a0eb6),_0x37e275={'type':'security-scan-project',..._0x5b3848};_0x37e275['skip-test-files']&&(_0x37e275['skipTestFiles']=_0x37e275[_0x10550f(0x16b)]===_0x10550f(0x1c7),delete _0x37e275['skip-test-files']),_0x2ed8bd[_0x10550f(0x16d)](_0x37e275);}const _0x782f95=/<validate-config\s+(.+?)\/>/g;while((_0x448939=_0x782f95['exec'](_0x1265b8))!==null){const _0x3d7fd1=_0x448939[0x1]['trim'](),_0x24a527=new a0_0x3a9d9a(),_0x3f833b=_0x24a527[_0x10550f(0x13a)](_0x3d7fd1),_0x55593e={'type':_0x10550f(0x131),..._0x3f833b};_0x55593e['file-path']&&(_0x55593e['filePath']=_0x55593e[_0x10550f(0x18e)],delete _0x55593e[_0x10550f(0x18e)]),_0x2ed8bd['push'](_0x55593e);}const _0x17eed3=/<validate-config-directory\s+(.+?)\/>/g;while((_0x448939=_0x17eed3[_0x10550f(0x119)](_0x1265b8))!==null){const _0x39a178=_0x448939[0x1]['trim'](),_0x2512a9=new a0_0x3a9d9a(),_0x47f256=_0x2512a9[_0x10550f(0x13a)](_0x39a178),_0x208640={'type':_0x10550f(0x16c),..._0x47f256};_0x2ed8bd[_0x10550f(0x16d)](_0x208640);}return _0x51f3dd[_0x10550f(0x123)]=_0x2ed8bd,_0x51f3dd['rawContent']=_0x1265b8['trim'](),this['logger']?.['debug'](_0x10550f(0x1ce),{'totalActions':_0x2ed8bd[_0x10550f(0x1d9)],'actionTypes':_0x2ed8bd['map'](_0x51354d=>_0x51354d[_0x10550f(0x10f)])}),_0x51f3dd;}catch(_0x37372e){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x37372e[_0x10550f(0x19b)]);}}[a0_0x1af86f(0x1e3)](){const _0x3a5e6a=a0_0x1af86f;return[_0x3a5e6a(0x123)];}['customValidateParameters'](_0x456006){const _0x105c24=a0_0x1af86f,_0x56c051=[];if(!_0x456006[_0x105c24(0x123)]||!Array['isArray'](_0x456006[_0x105c24(0x123)])||_0x456006[_0x105c24(0x123)][_0x105c24(0x1d9)]===0x0)_0x56c051[_0x105c24(0x16d)](_0x105c24(0x180));else{for(const [_0x2ab612,_0x526f42]of _0x456006['actions']['entries']()){if(!_0x526f42[_0x105c24(0x10f)]){_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x140));continue;}switch(_0x526f42[_0x105c24(0x10f)]){case'analyze':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1dd));break;case _0x105c24(0x1ae):!_0x526f42['directory']&&_0x56c051['push']('Action\x20'+(_0x2ab612+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case'fix':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1c6));break;case _0x105c24(0x149):!_0x526f42[_0x105c24(0x1cb)]&&_0x56c051['push']('Action\x20'+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20format');break;case'security-scan':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x105c24(0x14e):!_0x526f42[_0x105c24(0x14b)]&&_0x56c051[_0x105c24(0x16d)]('Action\x20'+(_0x2ab612+0x1)+':\x20directory\x20is\x20required\x20for\x20security-scan-project');break;case'validate-config':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case'validate-config-directory':!_0x526f42[_0x105c24(0x14b)]&&_0x56c051[_0x105c24(0x16d)](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1d7));break;default:_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x526f42[_0x105c24(0x10f)]);}}_0x456006['actions'][_0x105c24(0x1d9)]>this[_0x105c24(0x13d)]&&_0x56c051[_0x105c24(0x16d)]('Too\x20many\x20actions:\x20'+_0x456006[_0x105c24(0x123)][_0x105c24(0x1d9)]+_0x105c24(0x15a)+this[_0x105c24(0x13d)]+')');}return{'valid':_0x56c051[_0x105c24(0x1d9)]===0x0,'errors':_0x56c051};}async['execute'](_0x2d7027,_0x54ea97){const _0x3c5ffd=a0_0x1af86f,{actions:_0x1ddcb7}=_0x2d7027,{projectDir:_0x527c36,agentId:_0x18c9fd,directoryAccess:_0x105d78}=_0x54ea97,_0xd73cac=_0x105d78||this[_0x3c5ffd(0x11e)][_0x3c5ffd(0x1c3)]({'workingDirectory':_0x527c36||process['cwd'](),'writeEnabledDirectories':[_0x527c36||process[_0x3c5ffd(0x134)]()],'restrictToProject':!![]}),_0x3c7443=this['directoryAccessManager']['getWorkingDirectory'](_0xd73cac),_0x1f3f06={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x1fd077 of _0x1ddcb7){try{let _0x56fff4;switch(_0x1fd077['type']){case _0x3c5ffd(0x13f):_0x56fff4=await this[_0x3c5ffd(0x198)](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06['files']['push'](_0x56fff4),this[_0x3c5ffd(0x1aa)](_0x1f3f06['summary'],_0x56fff4));break;case _0x3c5ffd(0x1ae):const _0x228091=await this['analyzeProject'](_0x1fd077['directory'],_0x1fd077['pattern'],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06[_0x3c5ffd(0x126)][_0x3c5ffd(0x16d)](..._0x228091);for(const _0x5f386e of _0x228091){this['updateSummary'](_0x1f3f06[_0x3c5ffd(0x15f)],_0x5f386e);}break;case _0x3c5ffd(0x1cc):_0x56fff4=await this[_0x3c5ffd(0x15e)](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&_0x1f3f06['files']['push'](_0x56fff4);break;case _0x3c5ffd(0x149):_0x56fff4=await this[_0x3c5ffd(0x150)](_0x1fd077['filePath'],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&_0x1f3f06['files'][_0x3c5ffd(0x16d)](_0x56fff4);break;case _0x3c5ffd(0x174):_0x56fff4=await this['securityScanFile'](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06[_0x3c5ffd(0x126)][_0x3c5ffd(0x16d)](_0x56fff4),this[_0x3c5ffd(0x1aa)](_0x1f3f06[_0x3c5ffd(0x15f)],_0x56fff4));break;case'security-scan-project':const _0x4905e0=await this[_0x3c5ffd(0x17e)](_0x1fd077['directory'],_0x1fd077['pattern'],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06['files']['push'](..._0x4905e0);for(const _0x3fe5ec of _0x4905e0){this['updateSummary'](_0x1f3f06['summary'],_0x3fe5ec);}break;case'validate-config':_0x56fff4=await this['validateConfigFile'](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06['files']['push'](_0x56fff4),this['updateSummary'](_0x1f3f06['summary'],_0x56fff4));break;case _0x3c5ffd(0x16c):const _0x43e97e=await this[_0x3c5ffd(0x122)](_0x1fd077[_0x3c5ffd(0x14b)],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06['files'][_0x3c5ffd(0x16d)](..._0x43e97e);for(const _0x599d8e of _0x43e97e){this[_0x3c5ffd(0x1aa)](_0x1f3f06[_0x3c5ffd(0x15f)],_0x599d8e);}break;default:throw new Error(_0x3c5ffd(0x1bd)+_0x1fd077['type']);}}catch(_0x5c3320){this['logger']?.[_0x3c5ffd(0x13e)](_0x3c5ffd(0x17a),{'action':_0x1fd077['type'],'error':_0x5c3320['message']}),_0x1f3f06[_0x3c5ffd(0x126)]['push']({'file':_0x1fd077['filePath']||_0x1fd077[_0x3c5ffd(0x14b)],'error':_0x5c3320[_0x3c5ffd(0x19b)],'success':![]});}}return{'success':!![],'results':_0x1f3f06,'toolUsed':_0x3c5ffd(0x179),'performance':this[_0x3c5ffd(0x1b9)]()};}async['analyzeFile'](_0x40bb79,_0x141a5e,_0x314b60,_0x4138e8={}){const _0x674763=a0_0x1af86f,_0x10e704=a0_0x346124[_0x674763(0x18b)](_0x40bb79)?a0_0x346124[_0x674763(0x129)](_0x40bb79):a0_0x346124['resolve'](_0x141a5e,_0x40bb79),_0x2a8d97=this['directoryAccessManager']['validateReadAccess'](_0x10e704,_0x314b60);if(!_0x2a8d97[_0x674763(0x1ba)])throw new Error('Read\x20access\x20denied:\x20'+_0x2a8d97[_0x674763(0x176)]);try{const _0xc0420c=await a0_0x19f56d[_0x674763(0x154)](_0x10e704);if(_0xc0420c[_0x674763(0x137)]>this[_0x674763(0x1c2)])throw new Error(_0x674763(0x135)+_0xc0420c['size']+'\x20bytes\x20(max\x20'+this[_0x674763(0x1c2)]+')');const _0xae7782=this[_0x674763(0x18a)](_0x10e704);if(!_0xae7782)return{'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0x674763(0x1a3),'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x2466ec=await a0_0x19f56d[_0x674763(0x167)](_0x10e704,_0x674763(0x14d)),_0x149bb3=this[_0x674763(0x172)]?this['computeContentHash'](_0x2466ec):null,_0x166e3c=this['useContentHash']?_0x10e704+':'+_0x149bb3:_0x10e704+':'+_0xc0420c[_0x674763(0x1e5)][_0x674763(0x1db)]();if(this[_0x674763(0x178)]&&this['analysisCache'][_0x674763(0x175)](_0x166e3c)){const _0x512872=this[_0x674763(0x186)][_0x674763(0x1a0)](_0x166e3c);if(Date[_0x674763(0x1d1)]()-_0x512872[_0x674763(0x1c1)]<this['cacheExpiry'])return this[_0x674763(0x188)]?.[_0x674763(0x157)]('Using\x20cached\x20analysis\x20result',{'file':_0x10e704}),this['metrics']['cacheHits']++,this[_0x674763(0x1b2)][_0x674763(0x1c8)]++,_0x512872[_0x674763(0x177)];}this[_0x674763(0x1b2)][_0x674763(0x14c)]++,this['metrics']['totalAnalyses']++;const _0xb3dfdd=await this['getAnalyzer'](_0xae7782);if(!_0xb3dfdd)return{'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0xae7782,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'No\x20analyzer\x20available\x20for\x20'+_0xae7782};const _0x1e6590=Date[_0x674763(0x1d1)](),_0x3769f7=await _0xb3dfdd[_0x674763(0x13f)](_0x10e704,_0x2466ec,{'workingDir':_0x141a5e,'accessConfig':_0x314b60,'framework':await this['detectFramework'](_0x141a5e,_0xae7782)}),_0x4f573c=Date[_0x674763(0x1d1)]()-_0x1e6590;this[_0x674763(0x1b2)]['totalAnalysisTime']+=_0x4f573c,this[_0x674763(0x1b2)][_0x674763(0x139)]++;const _0x152669={'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0xae7782,'framework':await this[_0x674763(0x1dc)](_0x141a5e,_0xae7782),'errors':_0x3769f7[_0x674763(0x1c5)](_0x313396=>_0x313396['severity']===STATIC_ANALYSIS[_0x674763(0x151)][_0x674763(0x155)]),'warnings':_0x4138e8['includeWarnings']!==![]?_0x3769f7['filter'](_0x2ea8fb=>_0x2ea8fb['severity']===STATIC_ANALYSIS['SEVERITY'][_0x674763(0x19c)]):[],'info':_0x3769f7[_0x674763(0x1c5)](_0x2639fd=>_0x2639fd[_0x674763(0x153)]===STATIC_ANALYSIS[_0x674763(0x151)][_0x674763(0x112)]),'totalIssues':_0x3769f7['length'],'analyzed':!![],'timestamp':new Date()[_0x674763(0x11d)]()};return _0x4138e8[_0x674763(0x191)]&&_0x152669['errors']['length']>_0x4138e8['maxErrors']&&(_0x152669[_0x674763(0x128)]=_0x152669[_0x674763(0x128)]['slice'](0x0,_0x4138e8[_0x674763(0x191)]),_0x152669['truncated']=!![]),this[_0x674763(0x178)]&&this[_0x674763(0x186)][_0x674763(0x114)](_0x166e3c,{'result':_0x152669,'timestamp':Date[_0x674763(0x1d1)]()}),_0x152669;}catch(_0x227edc){throw new Error(_0x674763(0x1a5)+_0x40bb79+':\x20'+_0x227edc[_0x674763(0x19b)]);}}async[a0_0x1af86f(0x1e4)](_0x4fc735,_0x1c0ef6,_0xe85c99,_0x5bd045,_0x4e1bdf={}){const _0x457563=a0_0x1af86f,_0x1f2710=a0_0x346124[_0x457563(0x18b)](_0x4fc735)?a0_0x346124[_0x457563(0x129)](_0x4fc735):a0_0x346124['resolve'](_0xe85c99,_0x4fc735),_0x2b6fde=this[_0x457563(0x11e)]['validateReadAccess'](_0x1f2710,_0x5bd045);if(!_0x2b6fde['allowed'])throw new Error(_0x457563(0x1d6)+_0x2b6fde['reason']);const _0x3c2760=await this['findFiles'](_0x1f2710,_0x1c0ef6);if(_0x3c2760['length']>this[_0x457563(0x13d)])throw new Error(_0x457563(0x125)+_0x3c2760[_0x457563(0x1d9)]+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x2be747=[];if(this['parallelAnalysis']&&_0x3c2760['length']>0x1){this['logger']?.[_0x457563(0x157)]('Using\x20parallel\x20analysis',{'totalFiles':_0x3c2760['length'],'batchSize':this['maxParallelFiles']});for(let _0x2ba395=0x0;_0x2ba395<_0x3c2760['length'];_0x2ba395+=this['maxParallelFiles']){const _0x50e1a5=_0x3c2760['slice'](_0x2ba395,_0x2ba395+this[_0x457563(0x1d8)]);this[_0x457563(0x1b2)]['parallelBatches']++;const _0x3ee22f={'completed':_0x2ba395,'total':_0x3c2760[_0x457563(0x1d9)],'percentage':Math['round'](_0x2ba395/_0x3c2760[_0x457563(0x1d9)]*0x64)};_0x4e1bdf[_0x457563(0x1af)]&&_0x4e1bdf[_0x457563(0x1af)](_0x3ee22f);this['logger']?.[_0x457563(0x157)]('Analyzing\x20batch',{'batch':Math[_0x457563(0x17c)](_0x2ba395/this[_0x457563(0x1d8)])+0x1,'filesInBatch':_0x50e1a5[_0x457563(0x1d9)],'progress':_0x3ee22f[_0x457563(0x194)]+'/'+_0x3ee22f[_0x457563(0x181)]});const _0x4f1dbc=_0x50e1a5['map'](async _0x5c846e=>{const _0x41b64d=_0x457563;try{const _0x103c25=await this['analyzeFile'](_0x5c846e,_0xe85c99,_0x5bd045,_0x4e1bdf);return _0x103c25;}catch(_0x384308){return this[_0x41b64d(0x188)]?.[_0x41b64d(0x1ca)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x5c846e,'error':_0x384308['message']}),{'file':this[_0x41b64d(0x11e)][_0x41b64d(0x111)](_0x5c846e,_0x5bd045),'fullPath':_0x5c846e,'error':_0x384308['message'],'success':![]};}}),_0x27049c=await Promise['all'](_0x4f1dbc);_0x2be747['push'](..._0x27049c[_0x457563(0x1c5)](_0x1e933b=>_0x1e933b!==null));}_0x4e1bdf['onProgress']&&_0x4e1bdf['onProgress']({'completed':_0x3c2760[_0x457563(0x1d9)],'total':_0x3c2760['length'],'percentage':0x64});}else for(const _0x8607a6 of _0x3c2760){try{const _0x5a0f5e=await this['analyzeFile'](_0x8607a6,_0xe85c99,_0x5bd045,_0x4e1bdf);_0x5a0f5e&&_0x2be747['push'](_0x5a0f5e);}catch(_0x1c4322){this['logger']?.[_0x457563(0x1ca)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x8607a6,'error':_0x1c4322[_0x457563(0x19b)]}),_0x2be747['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x8607a6,_0x5bd045),'fullPath':_0x8607a6,'error':_0x1c4322[_0x457563(0x19b)],'success':![]});}}return _0x2be747;}async[a0_0x1af86f(0x15e)](_0x5e4156,_0x2475d2,_0x278b9d,_0x3bd099={}){const _0xf4caeb=a0_0x1af86f,_0x3bcf60=a0_0x346124['isAbsolute'](_0x5e4156)?a0_0x346124[_0xf4caeb(0x129)](_0x5e4156):a0_0x346124[_0xf4caeb(0x1c9)](_0x2475d2,_0x5e4156),_0x9af703=this['directoryAccessManager'][_0xf4caeb(0x1de)](_0x3bcf60,_0x278b9d);if(!_0x9af703['allowed'])throw new Error(_0xf4caeb(0x1d6)+_0x9af703['reason']);if(_0x3bd099['writeFile']){const _0x9cf036=this['directoryAccessManager'][_0xf4caeb(0x18d)](_0x3bcf60,_0x278b9d);if(!_0x9cf036[_0xf4caeb(0x1ba)])throw new Error(_0xf4caeb(0x1bb)+_0x9cf036[_0xf4caeb(0x176)]);}try{const _0x1297fc=await a0_0x19f56d[_0xf4caeb(0x167)](_0x3bcf60,'utf-8'),_0x5e52fd=await this['getESLintAnalyzer'](),_0x5c26e4=await _0x5e52fd[_0xf4caeb(0x1cc)](_0x3bcf60,_0x1297fc,{'workingDir':_0x2475d2,'accessConfig':_0x278b9d,'framework':await this[_0xf4caeb(0x1dc)](_0x2475d2,this[_0xf4caeb(0x18a)](_0x3bcf60))});return _0x3bd099['writeFile']&&_0x5c26e4['fixed']&&(await a0_0x19f56d['writeFile'](_0x3bcf60,_0x5c26e4['content'],_0xf4caeb(0x14d)),this[_0xf4caeb(0x188)]?.[_0xf4caeb(0x192)](_0xf4caeb(0x1b7),{'file':_0x3bcf60})),{'file':this[_0xf4caeb(0x11e)]['createRelativePath'](_0x3bcf60,_0x278b9d),'fullPath':_0x3bcf60,'action':'fix','fixed':_0x5c26e4[_0xf4caeb(0x1be)],'fixedCount':_0x5c26e4[_0xf4caeb(0x164)],'remainingErrors':_0x5c26e4[_0xf4caeb(0x12b)],'remainingWarnings':_0x5c26e4['remainingWarnings'],'changes':_0x5c26e4[_0xf4caeb(0x132)],'written':!!(_0x3bd099['writeFile']&&_0x5c26e4[_0xf4caeb(0x1be)]),'preview':!_0x3bd099['writeFile']&&_0x5c26e4['fixed']?_0x5c26e4[_0xf4caeb(0x17b)]:undefined};}catch(_0x1459a4){throw new Error(_0xf4caeb(0x1e2)+_0x5e4156+':\x20'+_0x1459a4['message']);}}async['formatFile'](_0x43fade,_0x24da4a,_0x2ffaa2,_0x423fb6={}){const _0x3a2d16=a0_0x1af86f,_0x56163f=a0_0x346124['isAbsolute'](_0x43fade)?a0_0x346124['normalize'](_0x43fade):a0_0x346124['resolve'](_0x24da4a,_0x43fade),_0x1f1807=this[_0x3a2d16(0x11e)][_0x3a2d16(0x1de)](_0x56163f,_0x2ffaa2);if(!_0x1f1807[_0x3a2d16(0x1ba)])throw new Error(_0x3a2d16(0x1d6)+_0x1f1807[_0x3a2d16(0x176)]);if(_0x423fb6['writeFile']){const _0x10e686=this[_0x3a2d16(0x11e)]['validateWriteAccess'](_0x56163f,_0x2ffaa2);if(!_0x10e686[_0x3a2d16(0x1ba)])throw new Error(_0x3a2d16(0x1bb)+_0x10e686[_0x3a2d16(0x176)]);}try{const _0x18e3da=await a0_0x19f56d[_0x3a2d16(0x167)](_0x56163f,'utf-8'),_0xd14719=await this[_0x3a2d16(0x1e1)]();if(!_0xd14719['isSupported'](_0x56163f))return{'file':this[_0x3a2d16(0x11e)][_0x3a2d16(0x111)](_0x56163f,_0x2ffaa2),'fullPath':_0x56163f,'action':_0x3a2d16(0x149),'formatted':![],'skipped':!![],'skipReason':'File\x20type\x20not\x20supported\x20by\x20Prettier'};const _0x45f953=await _0xd14719[_0x3a2d16(0x149)](_0x56163f,_0x18e3da,{'workingDir':_0x24da4a,'accessConfig':_0x2ffaa2});return _0x423fb6[_0x3a2d16(0x15d)]&&_0x45f953['formatted']&&(await a0_0x19f56d[_0x3a2d16(0x15d)](_0x56163f,_0x45f953[_0x3a2d16(0x17b)],'utf-8'),this[_0x3a2d16(0x188)]?.['info'](_0x3a2d16(0x17f),{'file':_0x56163f})),{'file':this[_0x3a2d16(0x11e)][_0x3a2d16(0x111)](_0x56163f,_0x2ffaa2),'fullPath':_0x56163f,'action':'format','formatted':_0x45f953['formatted'],'linesChanged':_0x45f953['linesChanged'],'changes':_0x45f953[_0x3a2d16(0x132)],'written':!!(_0x423fb6[_0x3a2d16(0x15d)]&&_0x45f953[_0x3a2d16(0x1a2)]),'preview':!_0x423fb6['writeFile']&&_0x45f953[_0x3a2d16(0x1a2)]?_0x45f953['content']:undefined};}catch(_0x31905b){throw new Error('Failed\x20to\x20format\x20'+_0x43fade+':\x20'+_0x31905b['message']);}}async['securityScanFile'](_0x3a1c50,_0x158291,_0x21978a,_0x1ea9c1={}){const _0x59621c=a0_0x1af86f,_0x49ad5d=a0_0x346124[_0x59621c(0x18b)](_0x3a1c50)?a0_0x346124['normalize'](_0x3a1c50):a0_0x346124['resolve'](_0x158291,_0x3a1c50),_0x4cdc84=this[_0x59621c(0x11e)][_0x59621c(0x1de)](_0x49ad5d,_0x21978a);if(!_0x4cdc84['allowed'])throw new Error(_0x59621c(0x1d6)+_0x4cdc84['reason']);try{const _0x4778d5=await a0_0x19f56d[_0x59621c(0x154)](_0x49ad5d);if(_0x4778d5[_0x59621c(0x137)]>this[_0x59621c(0x1c2)])throw new Error(_0x59621c(0x135)+_0x4778d5['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x20b9ea=this[_0x59621c(0x18a)](_0x49ad5d);if(!_0x20b9ea||!['javascript',_0x59621c(0x133),_0x59621c(0x11f)][_0x59621c(0x1e9)](_0x20b9ea))return{'file':this['directoryAccessManager']['createRelativePath'](_0x49ad5d,_0x21978a),'fullPath':_0x49ad5d,'language':_0x20b9ea||'unknown','issues':[],'skipped':!![],'skipReason':'Security\x20scanning\x20only\x20supports\x20JavaScript,\x20TypeScript,\x20and\x20Python\x20files'};const _0x1a865a=await a0_0x19f56d['readFile'](_0x49ad5d,_0x59621c(0x14d)),_0x4f5603=await this['getSecurityAnalyzer'](),_0x57c6b3=await _0x4f5603[_0x59621c(0x13f)](_0x49ad5d,_0x1a865a,{'skipTestFiles':_0x1ea9c1['skipTestFiles']!==![]}),_0x11827c={'file':this[_0x59621c(0x11e)]['createRelativePath'](_0x49ad5d,_0x21978a),'fullPath':_0x49ad5d,'language':_0x20b9ea,'action':_0x59621c(0x174),'critical':_0x57c6b3['filter'](_0x570227=>_0x570227['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x57c6b3['filter'](_0x46ad08=>_0x46ad08[_0x59621c(0x153)]===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x57c6b3['filter'](_0x47adb0=>_0x47adb0['severity']===STATIC_ANALYSIS[_0x59621c(0x151)][_0x59621c(0x19c)]),'info':_0x57c6b3['filter'](_0x27747c=>_0x27747c[_0x59621c(0x153)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x57c6b3[_0x59621c(0x1d9)],'analyzed':!![],'scannersUsed':_0x57c6b3[_0x59621c(0x1a4)](_0x49add1=>_0x49add1['scanner'])['filter']((_0x59a6ee,_0x3e1eb1,_0x190a48)=>_0x190a48[_0x59621c(0x1b8)](_0x59a6ee)===_0x3e1eb1),'timestamp':new Date()['toISOString']()};return _0x11827c;}catch(_0x4c54ed){throw new Error('Failed\x20to\x20security\x20scan\x20'+_0x3a1c50+':\x20'+_0x4c54ed['message']);}}async['securityScanProject'](_0x94750b,_0x2ce129,_0x53aa92,_0x2852a4,_0xfe5431={}){const _0x5ee1de=a0_0x1af86f,_0x8f1d9e=a0_0x346124[_0x5ee1de(0x18b)](_0x94750b)?a0_0x346124['normalize'](_0x94750b):a0_0x346124[_0x5ee1de(0x1c9)](_0x53aa92,_0x94750b),_0x5baece=this[_0x5ee1de(0x11e)][_0x5ee1de(0x1de)](_0x8f1d9e,_0x2852a4);if(!_0x5baece[_0x5ee1de(0x1ba)])throw new Error(_0x5ee1de(0x1d6)+_0x5baece['reason']);const _0x546488=await this['getSecurityAnalyzer'](),_0x57ad9a=await _0x546488[_0x5ee1de(0x1e4)](_0x8f1d9e,_0x5ee1de(0x1ea),_0xfe5431),_0x572458=_0x2ce129||_0x5ee1de(0x1da),_0x53ab6e=await this[_0x5ee1de(0x189)](_0x8f1d9e,_0x572458);if(_0x53ab6e[_0x5ee1de(0x1d9)]>this['maxFilesPerBatch'])throw new Error(_0x5ee1de(0x125)+_0x53ab6e[_0x5ee1de(0x1d9)]+_0x5ee1de(0x15a)+this[_0x5ee1de(0x13d)]+')');const _0x3aeffd=[];if(this[_0x5ee1de(0x168)]&&_0x53ab6e[_0x5ee1de(0x1d9)]>0x1){this['logger']?.[_0x5ee1de(0x157)]('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x53ab6e['length'],'batchSize':this[_0x5ee1de(0x1d8)]});for(let _0x4f48d1=0x0;_0x4f48d1<_0x53ab6e[_0x5ee1de(0x1d9)];_0x4f48d1+=this[_0x5ee1de(0x1d8)]){const _0x4e8a1c=_0x53ab6e[_0x5ee1de(0x17d)](_0x4f48d1,_0x4f48d1+this['maxParallelFiles']);_0xfe5431[_0x5ee1de(0x1af)]&&_0xfe5431['onProgress']({'completed':_0x4f48d1,'total':_0x53ab6e[_0x5ee1de(0x1d9)],'percentage':Math[_0x5ee1de(0x12f)](_0x4f48d1/_0x53ab6e[_0x5ee1de(0x1d9)]*0x64)});const _0xccd4c0=_0x4e8a1c['map'](async _0x5ce187=>{const _0x1680d1=_0x5ee1de;try{return await this[_0x1680d1(0x142)](_0x5ce187,_0x53aa92,_0x2852a4,_0xfe5431);}catch(_0xefb9df){return this[_0x1680d1(0x188)]?.[_0x1680d1(0x1ca)](_0x1680d1(0x130),{'file':_0x5ce187,'error':_0xefb9df[_0x1680d1(0x19b)]}),{'file':this['directoryAccessManager'][_0x1680d1(0x111)](_0x5ce187,_0x2852a4),'fullPath':_0x5ce187,'error':_0xefb9df[_0x1680d1(0x19b)],'success':![]};}}),_0x72b5b2=await Promise[_0x5ee1de(0x1a6)](_0xccd4c0);_0x3aeffd['push'](..._0x72b5b2[_0x5ee1de(0x1c5)](_0x185aaf=>_0x185aaf!==null));}_0xfe5431['onProgress']&&_0xfe5431[_0x5ee1de(0x1af)]({'completed':_0x53ab6e['length'],'total':_0x53ab6e['length'],'percentage':0x64});}else for(const _0x4d080f of _0x53ab6e){try{const _0x5d497e=await this[_0x5ee1de(0x142)](_0x4d080f,_0x53aa92,_0x2852a4,_0xfe5431);_0x5d497e&&_0x3aeffd['push'](_0x5d497e);}catch(_0x4c36db){this['logger']?.['warn']('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x4d080f,'error':_0x4c36db['message']}),_0x3aeffd[_0x5ee1de(0x16d)]({'file':this[_0x5ee1de(0x11e)][_0x5ee1de(0x111)](_0x4d080f,_0x2852a4),'fullPath':_0x4d080f,'error':_0x4c36db[_0x5ee1de(0x19b)],'success':![]});}}return _0x57ad9a['length']>0x0&&_0x3aeffd['push']({'file':a0_0x346124['join'](_0x8f1d9e,_0x5ee1de(0x1a1)),'fullPath':a0_0x346124[_0x5ee1de(0x161)](_0x8f1d9e,_0x5ee1de(0x1a1)),'action':_0x5ee1de(0x163),'critical':_0x57ad9a['filter'](_0x224650=>_0x224650['severity']===STATIC_ANALYSIS[_0x5ee1de(0x151)]['CRITICAL']),'errors':_0x57ad9a[_0x5ee1de(0x1c5)](_0x12b488=>_0x12b488['severity']===STATIC_ANALYSIS['SEVERITY'][_0x5ee1de(0x155)]),'warnings':_0x57ad9a[_0x5ee1de(0x1c5)](_0xba0983=>_0xba0983[_0x5ee1de(0x153)]===STATIC_ANALYSIS['SEVERITY'][_0x5ee1de(0x19c)]),'info':_0x57ad9a[_0x5ee1de(0x1c5)](_0x8e66f0=>_0x8e66f0[_0x5ee1de(0x153)]===STATIC_ANALYSIS[_0x5ee1de(0x151)]['INFO']),'totalIssues':_0x57ad9a['length'],'analyzed':!![],'scannersUsed':['npm-audit'],'timestamp':new Date()[_0x5ee1de(0x11d)]()}),_0x3aeffd;}async[a0_0x1af86f(0x190)](_0x1d7122,_0x5b4233,_0x5c8846,_0x184a14={}){const _0x1f4aa7=a0_0x1af86f,_0x513480=a0_0x346124['isAbsolute'](_0x1d7122)?a0_0x346124['normalize'](_0x1d7122):a0_0x346124[_0x1f4aa7(0x1c9)](_0x5b4233,_0x1d7122),_0x34c744=this[_0x1f4aa7(0x11e)]['validateReadAccess'](_0x513480,_0x5c8846);if(!_0x34c744[_0x1f4aa7(0x1ba)])throw new Error(_0x1f4aa7(0x1d6)+_0x34c744[_0x1f4aa7(0x176)]);try{const _0x550f9b=await a0_0x19f56d['stat'](_0x513480);if(_0x550f9b[_0x1f4aa7(0x137)]>this['maxFileSize'])throw new Error(_0x1f4aa7(0x135)+_0x550f9b['size']+_0x1f4aa7(0x19a)+this[_0x1f4aa7(0x1c2)]+')');const _0x4b4f3e=await this['getConfigValidator'](),_0x211416=await _0x4b4f3e[_0x1f4aa7(0x1b1)](_0x513480,_0x184a14),_0x75faaf={'file':this['directoryAccessManager']['createRelativePath'](_0x513480,_0x5c8846),'fullPath':_0x513480,'action':'validate-config','critical':_0x211416[_0x1f4aa7(0x1c5)](_0x5c0f5a=>_0x5c0f5a['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x211416[_0x1f4aa7(0x1c5)](_0x59fc58=>_0x59fc58[_0x1f4aa7(0x153)]===STATIC_ANALYSIS[_0x1f4aa7(0x151)]['ERROR']),'warnings':_0x211416[_0x1f4aa7(0x1c5)](_0x4a805b=>_0x4a805b['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x211416['filter'](_0x387a53=>_0x387a53['severity']===STATIC_ANALYSIS[_0x1f4aa7(0x151)][_0x1f4aa7(0x112)]),'totalIssues':_0x211416['length'],'analyzed':!![],'validatorsUsed':_0x211416['map'](_0x4082bc=>_0x4082bc['validator'])['filter']((_0x312496,_0x14a100,_0x1b5d75)=>_0x1b5d75[_0x1f4aa7(0x1b8)](_0x312496)===_0x14a100),'timestamp':new Date()[_0x1f4aa7(0x11d)]()};return _0x75faaf;}catch(_0x3e9d4b){throw new Error(_0x1f4aa7(0x158)+_0x1d7122+':\x20'+_0x3e9d4b[_0x1f4aa7(0x19b)]);}}async['validateConfigDirectory'](_0x15e1b7,_0x3f7688,_0x4c8a88,_0x364d1c={}){const _0x207e2d=a0_0x1af86f,_0x587925=a0_0x346124['isAbsolute'](_0x15e1b7)?a0_0x346124['normalize'](_0x15e1b7):a0_0x346124['resolve'](_0x3f7688,_0x15e1b7),_0x399274=this['directoryAccessManager'][_0x207e2d(0x1de)](_0x587925,_0x4c8a88);if(!_0x399274[_0x207e2d(0x1ba)])throw new Error(_0x207e2d(0x1d6)+_0x399274[_0x207e2d(0x176)]);const _0x15efbe=await this[_0x207e2d(0x162)](_0x587925);if(_0x15efbe['length']>this['maxFilesPerBatch'])throw new Error(_0x207e2d(0x11b)+_0x15efbe['length']+_0x207e2d(0x15a)+this[_0x207e2d(0x13d)]+')');const _0x7385ec=[];for(const _0x2f5602 of _0x15efbe){try{const _0x34342e=await this[_0x207e2d(0x190)](_0x2f5602,_0x3f7688,_0x4c8a88,_0x364d1c);_0x34342e&&_0x7385ec['push'](_0x34342e);}catch(_0x5b41ce){this[_0x207e2d(0x188)]?.[_0x207e2d(0x1ca)]('Failed\x20to\x20validate\x20config\x20file',{'file':_0x2f5602,'error':_0x5b41ce[_0x207e2d(0x19b)]}),_0x7385ec['push']({'file':this[_0x207e2d(0x11e)][_0x207e2d(0x111)](_0x2f5602,_0x4c8a88),'fullPath':_0x2f5602,'error':_0x5b41ce['message'],'success':![]});}}return _0x7385ec;}async['findConfigFiles'](_0x5c08ca){const _0x358876=a0_0x1af86f,_0x5d9433=[],_0x55583e=[_0x358876(0x1a1),'tsconfig.json','Dockerfile','docker-compose.yml','docker-compose.yaml','.env','.env.example',_0x358876(0x141),'.eslintrc.json',_0x358876(0x1b4),'.prettierrc.json'],_0x5df63d=['.yml','.yaml','.json',_0x358876(0x170),'.tfvars'],_0x5a9620=async _0x15b11a=>{const _0x233135=_0x358876,_0x36171c=await a0_0x19f56d['readdir'](_0x15b11a,{'withFileTypes':!![]});for(const _0x395690 of _0x36171c){const _0x53126f=a0_0x346124[_0x233135(0x161)](_0x15b11a,_0x395690['name']);if(_0x395690['isDirectory']()){if(_0x395690['name']===_0x233135(0x1d4)||_0x395690['name']==='kubernetes'||_0x395690[_0x233135(0x152)]===_0x233135(0x1e7)||_0x395690[_0x233135(0x152)]===_0x233135(0x136))await _0x5a9620(_0x53126f);else{if(!['node_modules',_0x233135(0x196),'dist',_0x233135(0x1df)]['includes'](_0x395690['name']))continue;}}else{if(_0x395690['isFile']()){if(_0x55583e['includes'](_0x395690[_0x233135(0x152)]))_0x5d9433[_0x233135(0x16d)](_0x53126f);else{const _0x1c3133=a0_0x346124['extname'](_0x395690[_0x233135(0x152)])[_0x233135(0x118)]();if(_0x5df63d[_0x233135(0x1e9)](_0x1c3133)){const _0x48819a=a0_0x346124['basename'](a0_0x346124['dirname'](_0x53126f));(_0x48819a==='kubernetes'||_0x48819a==='k8s'||_0x48819a===_0x233135(0x136)||_0x48819a==='workflows')&&_0x5d9433[_0x233135(0x16d)](_0x53126f);}}}}}};return await _0x5a9620(_0x5c08ca),_0x5d9433;}[a0_0x1af86f(0x18a)](_0x37f535){const _0x38e13b=a0_0x1af86f,_0x2ced07=a0_0x346124['extname'](_0x37f535)[_0x38e13b(0x118)]();return STATIC_ANALYSIS[_0x38e13b(0x146)][_0x2ced07]||null;}async[a0_0x1af86f(0x1dc)](_0x420a6b,_0x4cd05f){const _0x3da636=a0_0x1af86f;try{if(_0x4cd05f===STATIC_ANALYSIS[_0x3da636(0x19d)]['JAVASCRIPT']||_0x4cd05f===STATIC_ANALYSIS[_0x3da636(0x19d)]['TYPESCRIPT'])return await this[_0x3da636(0x15b)](_0x420a6b);if(_0x4cd05f===STATIC_ANALYSIS['LANGUAGE']['PYTHON'])return await this['detectPythonFramework'](_0x420a6b);return null;}catch(_0x4356d8){return this['logger']?.['debug']('Framework\x20detection\x20failed',{'error':_0x4356d8['message']}),null;}}async[a0_0x1af86f(0x15b)](_0x4406ea){const _0x5d923f=a0_0x1af86f;try{const _0x2946ed=a0_0x346124[_0x5d923f(0x161)](_0x4406ea,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x5d923f(0x19e)]),_0x26880f=await a0_0x19f56d['readFile'](_0x2946ed,_0x5d923f(0x14d)),_0x1d82fc=JSON[_0x5d923f(0x13b)](_0x26880f),_0x2869ac={..._0x1d82fc[_0x5d923f(0x1d3)],..._0x1d82fc['devDependencies']};for(const [_0x21b974,_0x5939fd]of Object['entries'](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x2869ac[_0x5939fd])return _0x21b974['toLowerCase']();}return null;}catch(_0x13f9f5){return null;}}async['detectPythonFramework'](_0x40d818){const _0x4f85ab=a0_0x1af86f;try{const _0x36779e=a0_0x346124[_0x4f85ab(0x161)](_0x40d818,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x4f85ab(0x1bc)]),_0x10efea=await a0_0x19f56d['readFile'](_0x36779e,_0x4f85ab(0x14d));for(const [_0x446383,_0x7684b8]of Object[_0x4f85ab(0x184)](STATIC_ANALYSIS[_0x4f85ab(0x159)])){if(_0x10efea[_0x4f85ab(0x118)]()[_0x4f85ab(0x1e9)](_0x7684b8))return _0x446383[_0x4f85ab(0x118)]();}return null;}catch(_0x437fb6){try{const _0x5168ad=a0_0x346124[_0x4f85ab(0x161)](_0x40d818,STATIC_ANALYSIS[_0x4f85ab(0x173)][_0x4f85ab(0x1ab)]),_0x12bbdc=await a0_0x19f56d['readFile'](_0x5168ad,'utf-8');for(const [_0x5ee90c,_0x4f804c]of Object['entries'](STATIC_ANALYSIS[_0x4f85ab(0x159)])){if(_0x12bbdc['toLowerCase']()[_0x4f85ab(0x1e9)](_0x4f804c))return _0x5ee90c[_0x4f85ab(0x118)]();}}catch{}return null;}}async['findFiles'](_0x36c0c9,_0x5b4bb7){const _0x3e2879=[],_0xe4337d=_0x5b4bb7||'**/*.{js,jsx,mjs,cjs,ts,tsx,py,css,scss,sass,less}',_0x3158ac=_0x449310=>{const _0x1bea3d=a0_0x224a,_0x17eeda=[],_0x3c4037=_0x449310[_0x1bea3d(0x199)](/\*\.\{([^}]+)\}/);if(_0x3c4037){const _0x5b5e11=_0x3c4037[0x1][_0x1bea3d(0x121)](',')['map'](_0x16f2f1=>_0x16f2f1[_0x1bea3d(0x14a)]());_0x5b5e11['forEach'](_0x2fef8a=>_0x17eeda['push'](_0x2fef8a[_0x1bea3d(0x18f)]('.')?_0x2fef8a:'.'+_0x2fef8a));}else{const _0x36b43c=_0x449310['match'](/\*\.([a-z]+)$/i);if(_0x36b43c){const _0x4d68de=_0x36b43c[0x1];_0x17eeda['push'](_0x4d68de['startsWith']('.')?_0x4d68de:'.'+_0x4d68de);}}if(_0x17eeda['length']===0x0)return null;return _0x17eeda;},_0x36956b=_0x3158ac(_0xe4337d),_0x5c8169=async _0x14ce92=>{const _0x78c2ee=a0_0x224a,_0x3b2ee2=await a0_0x19f56d[_0x78c2ee(0x15c)](_0x14ce92,{'withFileTypes':!![]});for(const _0xe47086 of _0x3b2ee2){const _0x337fe2=a0_0x346124[_0x78c2ee(0x161)](_0x14ce92,_0xe47086[_0x78c2ee(0x152)]);if(_0xe47086['isDirectory']())![_0x78c2ee(0x124),'.git','dist',_0x78c2ee(0x1df),_0x78c2ee(0x138),'.venv',_0x78c2ee(0x144)]['includes'](_0xe47086[_0x78c2ee(0x152)])&&await _0x5c8169(_0x337fe2);else{if(_0xe47086['isFile']()){const _0x15ce0d=a0_0x346124[_0x78c2ee(0x13c)](_0xe47086[_0x78c2ee(0x152)])['toLowerCase']();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x15ce0d]&&((_0x36956b===null||_0x36956b['includes'](_0x15ce0d))&&_0x3e2879['push'](_0x337fe2));}}}};return await _0x5c8169(_0x36c0c9),_0x3e2879;}async['getAnalyzer'](_0xd068ef){const _0x49df5d=a0_0x1af86f;try{if(_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)]['JAVASCRIPT']){if(!this[_0x49df5d(0x1ac)]['javascript']){const {default:_0x5367a1}=await import(_0x49df5d(0x193));this[_0x49df5d(0x1ac)][_0x49df5d(0x1ea)]=new _0x5367a1(this['logger']);}return this['analyzers'][_0x49df5d(0x1ea)];}if(_0xd068ef===STATIC_ANALYSIS['LANGUAGE'][_0x49df5d(0x120)]){if(!this[_0x49df5d(0x1ac)][_0x49df5d(0x133)]){const {default:_0x305f71}=await import(_0x49df5d(0x171));this[_0x49df5d(0x1ac)]['typescript']=new _0x305f71(this['logger']);}return this[_0x49df5d(0x1ac)][_0x49df5d(0x133)];}if(_0xd068ef===STATIC_ANALYSIS['LANGUAGE'][_0x49df5d(0x1bc)]){if(!this['analyzers'][_0x49df5d(0x11f)]){const {default:_0x48ac73}=await import(_0x49df5d(0x1b0));this[_0x49df5d(0x1ac)][_0x49df5d(0x11f)]=new _0x48ac73(this[_0x49df5d(0x188)]);}return this[_0x49df5d(0x1ac)]['python'];}if(_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)][_0x49df5d(0x12d)]||_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)]['SCSS']||_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)][_0x49df5d(0x183)]){if(!this[_0x49df5d(0x1ac)]['css']){const {default:_0xd5fe88}=await import(_0x49df5d(0x197));this[_0x49df5d(0x1ac)]['css']=new _0xd5fe88(this[_0x49df5d(0x188)]);}return this['analyzers'][_0x49df5d(0x1b6)];}return null;}catch(_0xc88b91){return this['logger']?.['error']('Failed\x20to\x20load\x20analyzer',{'language':_0xd068ef,'error':_0xc88b91['message']}),null;}}async[a0_0x1af86f(0x1a7)](){const _0x4f765c=a0_0x1af86f;if(!this[_0x4f765c(0x1ac)][_0x4f765c(0x169)]){const {default:_0x1b402b}=await import(_0x4f765c(0x166));this['analyzers'][_0x4f765c(0x169)]=new _0x1b402b(this[_0x4f765c(0x188)]);}return this[_0x4f765c(0x1ac)]['eslint'];}async['getPrettierFormatter'](){const _0x542042=a0_0x1af86f;if(!this[_0x542042(0x115)]['prettier']){const {default:_0x422857}=await import('../analyzers/PrettierFormatter.js');this[_0x542042(0x115)]['prettier']=new _0x422857(this[_0x542042(0x188)]);}return this['formatters'][_0x542042(0x19f)];}async['getSecurityAnalyzer'](){const _0x172706=a0_0x1af86f;if(!this[_0x172706(0x1ac)][_0x172706(0x1ad)]){const {default:_0x18d262}=await import('../analyzers/SecurityAnalyzer.js');this['analyzers']['security']=new _0x18d262(this['logger']);}return this['analyzers'][_0x172706(0x1ad)];}async['getConfigValidator'](){const _0x3b6bc3=a0_0x1af86f;if(!this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)]){const {default:_0xc8e95d}=await import(_0x3b6bc3(0x1a9));this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)]=new _0xc8e95d(this['logger']);}return this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)];}['updateSummary'](_0x27ac1d,_0x571279){const _0xa47436=a0_0x1af86f;if(_0x571279['analyzed']){_0x27ac1d['totalFiles']++;const _0x435fbb=_0x571279['critical']?.[_0xa47436(0x1d9)]||0x0,_0x258f5c=_0x571279[_0xa47436(0x128)]?.['length']||0x0,_0x13e539=_0x571279[_0xa47436(0x145)]?.[_0xa47436(0x1d9)]||0x0,_0x5ae8a3=_0x571279[_0xa47436(0x192)]?.[_0xa47436(0x1d9)]||0x0;_0x27ac1d[_0xa47436(0x113)]===undefined&&(_0x27ac1d[_0xa47436(0x113)]=0x0);_0x27ac1d['totalCritical']+=_0x435fbb,_0x27ac1d[_0xa47436(0x1b3)]+=_0x258f5c,_0x27ac1d['totalWarnings']+=_0x13e539,_0x27ac1d['totalInfo']+=_0x5ae8a3;(_0x435fbb>0x0||_0x258f5c>0x0)&&_0x27ac1d['filesWithErrors']++;_0x571279[_0xa47436(0x127)]&&(_0x27ac1d['filesByLanguage'][_0x571279[_0xa47436(0x127)]]=(_0x27ac1d[_0xa47436(0x187)][_0x571279['language']]||0x0)+0x1);const _0x27d33b=[..._0x571279[_0xa47436(0x1e8)]||[],..._0x571279['errors']||[],..._0x571279['warnings']||[]];for(const _0x23963e of _0x27d33b){_0x23963e[_0xa47436(0x11c)]&&(_0x27ac1d['errorsByCategory'][_0x23963e[_0xa47436(0x11c)]]=(_0x27ac1d['errorsByCategory'][_0x23963e[_0xa47436(0x11c)]]||0x0)+0x1);}}}[a0_0x1af86f(0x195)](_0x1ea077){const _0x417ec7=a0_0x1af86f;return a0_0xfb82e9[_0x417ec7(0x117)]('sha256')['update'](_0x1ea077)[_0x417ec7(0x110)]('hex')['substring'](0x0,0x10);}[a0_0x1af86f(0x1b9)](){const _0x2157eb=a0_0x1af86f,_0x27f333=this['metrics'][_0x2157eb(0x1c8)]>0x0?this[_0x2157eb(0x1b2)][_0x2157eb(0x143)]/this[_0x2157eb(0x1b2)]['totalAnalyses']*0x64:0x0,_0xca647=this[_0x2157eb(0x1b2)][_0x2157eb(0x139)]>0x0?this[_0x2157eb(0x1b2)]['totalAnalysisTime']/this[_0x2157eb(0x1b2)]['filesAnalyzed']:0x0;return{...this[_0x2157eb(0x1b2)],'cacheHitRate':Math[_0x2157eb(0x12f)](_0x27f333*0xa)/0xa,'averageAnalysisTime':Math[_0x2157eb(0x12f)](_0xca647),'cacheSize':this[_0x2157eb(0x186)]['size']};}['resetPerformanceMetrics'](){this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}['clearCache'](){const _0x31790a=a0_0x1af86f;this[_0x31790a(0x186)]['clear'](),this[_0x31790a(0x188)]?.['debug'](_0x31790a(0x12a));}[a0_0x1af86f(0x12e)](){const _0x5d94ae=a0_0x1af86f;return['analyze','analyze-project','fix',_0x5d94ae(0x149),'security-scan','security-scan-project','validate-config','validate-config-directory'];}[a0_0x1af86f(0x116)](){const _0x2c88f1=a0_0x1af86f;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x2c88f1(0x12e)]()},'filePath':{'type':'string'},'directory':{'type':'string'},'pattern':{'type':_0x2c88f1(0x12c)},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':[_0x2c88f1(0x10f)]}}},'required':[_0x2c88f1(0x123)]};}}export default StaticAnalysisTool;function a0_0x2d8d(){const _0x394ae1=['oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','Bwf4ugfYywXSzwXgAwXLCW','BgvUz3rO','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5Fq','z2v0vgLTzq','zgv0zwn0rNjHBwv3B3jR','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','DMfSAwrHDgvszwfKqwnJzxnZ','yNvPBgq','y2fJAgvfEhbPCNK','z2v0uhjLDhrPzxjgB3jTyxr0zxi','rMfPBgvKihrVigzPEca','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','yw5HBhL6zvbYB2PLy3q','BxrPBwu','tufyx0zjtevtx1bfuL9cqvrdsa','AZHZ','y3jPDgLJywW','Aw5JBhvKzxm','AMf2yxnJCMLWDa','nuPPvMDNDG','DhLWzq','zgLNzxn0','y3jLyxrLuMvSyxrPDMvqyxrO','su5gtW','Dg90ywXdCML0AwnHBa','C2v0','zM9YBwf0DgvYCW','z2v0ugfYyw1LDgvYu2nOzw1H','y3jLyxrLsgfZAa','Dg9mB3DLCKnHC2u','zxHLyW','C3vIC3rYAw5N','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','y2f0zwDVCNK','Dg9ju09tDhjPBMC','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','ChL0Ag9U','vfLqrvnduKLqva','C3bSAxq','DMfSAwrHDgvdB25MAwDeAxjLy3rVCNK','ywn0Aw9UCW','BM9Kzv9TB2r1BgvZ','vg9Vig1HBNKGzMLSzxm6ia','zMLSzxm','BgfUz3vHz2u','zxjYB3jZ','BM9YBwfSAxPL','qw5HBhLZAxmGy2fJAguGy2XLyxjLza','CMvTywLUAw5NrxjYB3jZ','C3rYAw5N','q1nt','z2v0u3vWCg9YDgvKqwn0Aw9UCW','CM91BMq','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','DMfSAwrHDguTy29UzMLN','y2HHBMDLCW','DhLWzxnJCMLWDa','y3DK','rMLSzsb0B28GBgfYz2u6ia','DgvYCMfMB3jT','C2L6zq','x19WEwnHy2HLx18','zMLSzxnbBMfSExPLza','CgfYC2vbDhrYAwj1DgvZ','CgfYC2u','zxH0BMfTzq','Bwf4rMLSzxnqzxjcyxrJAa','zxjYB3i','yw5HBhL6zq','oIb0ExbLigLZihjLCxvPCMvK','lMvZBgLUDhjJlMPZ','C2vJDxjPDhLty2fUrMLSzq','y2fJAgviAxrZ','DMvUDG','D2fYBMLUz3m','rvHuru5tsu9ox1rpx0XbtKDvquDf','nZC5mZaZn3DYu0ThAa','u3rHDgLJqw5HBhLZAxmGDg9VBcbWyxjZAw5NihbHCMfTzxrLCNm','zM9YBwf0','DhjPBq','zgLYzwn0B3j5','y2fJAgvnAxnZzxm','DxrMltG','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','ndm2ntaZmMzZufv1vq','zM9YBwf0rMLSzq','u0vwrvjjvfK','BMfTzq','C2v2zxjPDhK','C3rHDa','rvjst1i','mJaZAeLKrKzy','zgvIDwC','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','ufLuse9ox0zsqu1fv09ss1m','icHTyxGG','zgv0zwn0sLngCMfTzxDVCMS','CMvHzgrPCG','D3jPDgvgAwXL','zML4rMLSzq','C3vTBwfYEq','qwn0Aw9Uia','AM9PBG','zMLUzenVBMzPz0zPBgvZ','zgvWzw5Kzw5JEs1Zy2fU','zML4zwrdB3vUDa','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','lI4Vyw5HBhL6zxjZl0vttgLUDefUywX5EMvYlMPZ','CMvHzezPBgu','CgfYywXSzwXbBMfSExnPCW','zxnSAw50','ntaXmhHLAe9JEq','C2TPCc10zxn0lwzPBgvZ','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','ChvZAa','mtC3nZz4sMzLqNC','Bwf4lwvYCM9YCW','lNrM','lI4Vyw5HBhL6zxjZl1r5Cgvty3jPChrbBMfSExPLCI5QCW','DxnLq29UDgvUDeHHC2G','rLjbtuvxt1jlx01btKLgrvnuuW','C2vJDxjPDhKTC2nHBG','AgfZ','CMvHC29U','CMvZDwX0','zw5HyMXLq2fJAgu','C3rHDgLJyw5HBhLZAxm','u3rHDgLJigfUywX5C2LZigfJDgLVBIbMywLSzwq','y29UDgvUDa','zMXVB3i','C2XPy2u','C2vJDxjPDhLty2fUuhjVAMvJDa','rMLSzsbMB3jTyxr0zwqGyw5KihDYAxr0zw4','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','Dg90ywW','Aw5JBhvKzvDHCM5PBMDZ','tevtuW','zw50CMLLCW','mta2ndu0odjsr0nvBMC','yw5HBhLZAxndywnOzq','zMLSzxncEuXHBMD1ywDL','Bg9Nz2vY','zMLUzezPBgvZ','zgv0zwn0tgfUz3vHz2u','AxnbyNnVBhv0zq','Aw5JBhvKzs13yxjUAw5NCW','DMfSAwrHDgvxCML0zufJy2vZCW','zMLSzs1WyxrO','C3rHCNrZv2L0Aa','DMfSAwrHDgvdB25MAwDgAwXL','Bwf4rxjYB3jZ','Aw5MBW','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','y29TCgXLDgvK','y29TChv0zunVBNrLBNriyxnO','lMDPDa','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','yw5HBhL6zuzPBgu','Bwf0y2G','igj5DgvZicHTyxGG','BwvZC2fNzq','v0fstKLorW','tefor1vbr0u','sKfwqvnduKLqva','ChjLDhrPzxi','z2v0','CgfJA2fNzs5QC29U','zM9YBwf0DgvK','Dw5RBM93BG','BwfW','rMfPBgvKihrVigfUywX5EMuG','ywXS','z2v0rvnmAw50qw5HBhL6zxi','D3jPDguTzMLSzq','lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','DxbKyxrLu3vTBwfYEq','ufLuse9ox1bprvrswq','yw5HBhL6zxjZ','C2vJDxjPDhK','yw5HBhL6zs1WCM9Qzwn0','B25qCM9NCMvZCW','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','DMfSAwrHDgu','Bwv0CMLJCW','Dg90ywXfCNjVCNm','lNbYzxr0AwvYCMm','nZGXodGXq01my3DQ','y3nZ','rMLSzsbMAxHLzcbHBMqGD3jPDhrLBG','Aw5KzxHpzG','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','ywXSB3DLza','v3jPDguGywnJzxnZigrLBMLLzdOG','ufLuse9o','vw5RBM93BIbHy3rPB24GDhLWztOG','zML4zwq','nJq1nJbbru1kAK4','qu5btfLtsvnFveLnru9vva','DgLTzxn0yw1W','Bwf4rMLSzvnPEMu','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','mteYmdKZBhvKrKzd','zMLSDgvY','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzPEa','Dhj1zq','Dg90ywXbBMfSExnLCW','CMvZB2X2zq','D2fYBG','zMLSzvbHDgG','zML4','ru5bqKXfx0nbq0Hf','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','y29UzMLN','CgfYC2vqyxjHBwv0zxjZ','BM93','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zgvWzw5Kzw5JAwvZ','lMDPDgH1yG','mM9XB0D5qG','uMvHzcbHy2nLC3mGzgvUAwvKoIa'];a0_0x2d8d=function(){return _0x394ae1;};return a0_0x2d8d();}