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

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 +1 -1
  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-BVF_10a5.css +1 -0
  119. package/web-ui/build/static/{index-CX8ZfpGw.js → index-DE5VFS1q.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_0x52336e=a0_0x4130;(function(_0x1402ad,_0x312a9e){const _0x2a2aca=a0_0x4130,_0x17e7cc=_0x1402ad();while(!![]){try{const _0x2fa499=parseInt(_0x2a2aca(0xf2))/0x1*(parseInt(_0x2a2aca(0xc1))/0x2)+-parseInt(_0x2a2aca(0xf7))/0x3+parseInt(_0x2a2aca(0x120))/0x4+parseInt(_0x2a2aca(0x140))/0x5+-parseInt(_0x2a2aca(0xc0))/0x6*(-parseInt(_0x2a2aca(0x148))/0x7)+-parseInt(_0x2a2aca(0xd8))/0x8*(parseInt(_0x2a2aca(0x107))/0x9)+-parseInt(_0x2a2aca(0xd0))/0xa*(-parseInt(_0x2a2aca(0x139))/0xb);if(_0x2fa499===_0x312a9e)break;else _0x17e7cc['push'](_0x17e7cc['shift']());}catch(_0x4e1e4b){_0x17e7cc['push'](_0x17e7cc['shift']());}}}(a0_0x40bb,0x3db2e));function a0_0x4130(_0xbea847,_0x3b3017){_0xbea847=_0xbea847-0xb3;const _0x40bbc0=a0_0x40bb();let _0x4130cd=_0x40bbc0[_0xbea847];if(a0_0x4130['QdwLYE']===undefined){var _0x2aa3a6=function(_0x989c6f){const _0x331500='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5502d1='',_0x4f0baa='';for(let _0x884cfb=0x0,_0x40c800,_0x5d1af4,_0x598f25=0x0;_0x5d1af4=_0x989c6f['charAt'](_0x598f25++);~_0x5d1af4&&(_0x40c800=_0x884cfb%0x4?_0x40c800*0x40+_0x5d1af4:_0x5d1af4,_0x884cfb++%0x4)?_0x5502d1+=String['fromCharCode'](0xff&_0x40c800>>(-0x2*_0x884cfb&0x6)):0x0){_0x5d1af4=_0x331500['indexOf'](_0x5d1af4);}for(let _0x516975=0x0,_0x35e0af=_0x5502d1['length'];_0x516975<_0x35e0af;_0x516975++){_0x4f0baa+='%'+('00'+_0x5502d1['charCodeAt'](_0x516975)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f0baa);};a0_0x4130['XxDjEc']=_0x2aa3a6,a0_0x4130['GIEmBx']={},a0_0x4130['QdwLYE']=!![];}const _0x2b2b9a=_0x40bbc0[0x0],_0x16c0b7=_0xbea847+_0x2b2b9a,_0x77aa77=a0_0x4130['GIEmBx'][_0x16c0b7];return!_0x77aa77?(_0x4130cd=a0_0x4130['XxDjEc'](_0x4130cd),a0_0x4130['GIEmBx'][_0x16c0b7]=_0x4130cd):_0x4130cd=_0x77aa77,_0x4130cd;}import{BaseTool}from'./baseTool.js';import a0_0x5502d1 from'../utilities/tagParser.js';function a0_0x40bb(){const _0x431d30=['lJD6','zxHLy3v0zq','BM90rM91BMq','igzPBgvZihbLCIbZzwfYy2GklsbnyxHPBxvTia','AxngAwXL','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','tuiP','x19WEwnHy2HLx18','yMfZzw5HBwu','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','zw50CMLLCW','lMD6','lNrHCG','nti0otrHB0LOu2m','mJrHEMfMCMO','lNjHCG','tufyx1rpvefmx01bvenirvm','BwvZC2fNzq','uhjVAMvJDcbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLzwSGDg9VBa','lNr4Da','lMf2Aq','oIbWyxrOihrYyxzLCNnHBcaOlI4Pig5VDcbHBgXVD2vKigzVCIbZzwn1CML0Eq','yNvPBgq','CMvHze9UBhLeAxjLy3rVCMLLCW','Bwf0y2HLC0j5vgvYBq','lMLUAq','qxqGBgvHC3qGB25LigzPBguGCgf0AcbPCYbYzxf1AxjLza','C3vIC3rYAw5N','xcqM','mtbprujIyu0','CMvSyxrPDMu','ig1HDgnOzxmPcG','tufyx0XjtKvFq09ovevovf9mru5hveG','zMLSzvbHDgG','zMLSzvbHDgHZ','ic0G','C2vLA0nVBMzPzW','ohbXr2jotW','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','icHUB3qGAw4GywnJzxnZAwjSzsbKAxjLy3rVCMLLCYK','Aw5JBhvKzxm','lNPPCa','lMrI','ChvZAa','lMLJBW','BwLU','DgvZDa','lNb5','DgfYz2v0','tufyx0zjtevFu0LArq','BMfTzq','lMH0BwW','zMLUzezPBgvZuMvJDxjZAxzLBhK','D29YA2LUz0rPCMvJDg9YEq','BgvUz3rO','lNjZ','y29Kzq','AxnbyNnVBhv0zq','zM9YBwf0uMvZDwX0CW','tufyx0zjtevtx1bfuL9trufsq0G','rMfPBgvKihrVihjLywqGzMLSztOG','lNbUzW','lNjI','nZC1mNjev2jzwG','twf4Aw11BsbKAxjLy3rVCNKGzgvWDgGGCMvHy2HLza','rKLmrvmGv0LuscbfuLjpuLm6cG','C3bSAxq','C2vHCMnOsw5gAwXL','mtm5mJi1ofntyNb3Ea','DgLTzw91Da','zxH0BMfTzq','kIOV','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','u2vHCMnOihrLCM0G','DhjPBq','lMXLC3m','zNjVBq','AxneAxjLy3rVCNK','Dg9mB3DLCKnHC2u','lNnO','iIaO','zxHWyw5Kr2XVyLbHDhrLCM4','Bwf0y2HLCW','Bg9Nz2vY','nta4ndaXv0P2tgLL','C3rHDa','CMvHzezPBgu','rMLSzsbWyxrOia','icHUBYbTyxrJAgLUzYbMAwXLCYK','D2fYBG','lMnVBMy','rgLYzwn0B3j5ig5VDcbMB3vUzcbMB3iGz2XVyIbWyxr0zxjU','B3v0','Aw5MBW','lM1VDG','lMv4zq','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','lMjHC2G','C3rHCNrZv2L0Aa','lM1WmW','tufyx1nfqvjdsf9urvjnuW','icaTia','lNrVBwW','lNDVzMy','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','AM9PBG','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','BgLUzunVBNrLBNq','tufyx0zjtevFuefusfm','nJyXotuYqLzJBvbs','CgfYC2vqyxjHBwv0zxjZ','lNnHC3m','AgfZ','lI4U','zM91BMq','lNLTBa','vxnPBMCGywDLBNqGy29UzMLNDxjLzcbKAxjLy3rVCNKGywnJzxnZ','C2vHCMnOvgvYBxm','CMvHzgrPCG','lM5LEhq','vg9Vig1HBNKGC2vHCMnOihrLCM1ZicHTyxGG','AxnbCNjHEq','lMr5BgLI','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','rMfPBgvKihrVihbHCNnLihnLzwSGCgfYyw1LDgvYCW','ywrK','Dg1W','lMDPzG','zxjYB3i','lMHWCa','lM1Wna','BwfW','lIbvC2uGBw9YzsbZCgvJAwzPyYbMAwXLihbHDhrLCM5ZlG','y2XLyw51Ca','mJa4mZy5n0jSAuHpyW','Bwf0y2HLC1bHDhrLCM4','vg9Vig1HBNKGzMLSzsbWyxrOCYaOBwf4ia','BgLUzu51BwjLCG','igzPBguOCYKPoGOk','y292zxjHz2u','zxnJyxbLuMvNrxHW','mta1oda4nwvZvfDVra','tM8GBwf0y2HLCYbMB3vUzcbMB3iGDgHLihnWzwnPzMLLzcbZzwfYy2GGDgvYBxmGAw4G','lNrZEa','lNn2zW','AxnqyxrOqwnJzxnZAwjSzq','CM91BMq','lMPWzW','BM9Kzv9TB2r1BgvZ','otftrwn0AKi','DgvYBq','lMPHDMe','CMvZB2X2zuzPBgvqyxrOCW'];a0_0x40bb=function(){return _0x431d30;};return a0_0x40bb();}import{promises as a0_0x4f0baa}from'fs';import a0_0x884cfb 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_0x52336e(0xf0),a0_0x52336e(0x146),'.jpeg',a0_0x52336e(0x132),'.bmp',a0_0x52336e(0xdf),a0_0x52336e(0x143),'.pdf',a0_0x52336e(0xdc),a0_0x52336e(0xbf),a0_0x52336e(0xbe),a0_0x52336e(0xc2),a0_0x52336e(0xb3),a0_0x52336e(0x112),'.dll','.so',a0_0x52336e(0x12d),a0_0x52336e(0x116),a0_0x52336e(0x135),a0_0x52336e(0xc7),a0_0x52336e(0x111),'.wmv',a0_0x52336e(0x11a),'.woff2','.ttf','.eot','.bin','.dat',a0_0x52336e(0xdd),'.sqlite']);class SeekTool extends BaseTool{constructor(_0x40c800={},_0x5d1af4=null){const _0x1f76b4=a0_0x52336e;super(_0x40c800,_0x5d1af4),this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x40c800[_0x1f76b4(0xf8)]||0x1d4c0,this['seekConfig']={...SEEK_CONFIG,..._0x40c800['seekConfig']};}['getDescription'](){const _0x396e60=a0_0x52336e;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[_0x396e60(0xe4)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG['MAX_TOTAL_MATCHES']+_0x396e60(0x113)+SEEK_CONFIG['MAX_FILES_PER_SEARCH']+_0x396e60(0xb6)+SEEK_CONFIG['MAX_SEARCH_TERMS']+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0x396e60(0xe4)]/(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';}[a0_0x52336e(0x121)](_0x598f25){const _0x2f0e5a=a0_0x52336e;try{if(_0x598f25[_0x2f0e5a(0xfd)]()['startsWith']('{')){const _0x10ef69=JSON['parse'](_0x598f25);return{'filePaths':_0x10ef69['filePaths']||[],'searchTerms':_0x10ef69[_0x2f0e5a(0x128)]||[]};}const _0x516975={'filePaths':[],'searchTerms':[]},_0x35e0af=/<in-files>([\s\S]*?)<\/in-files>/i,_0x281ef0=_0x35e0af['exec'](_0x598f25);if(_0x281ef0){const _0x245f99=_0x281ef0[0x1];_0x516975['filePaths']=_0x245f99['split']('\x0a')[_0x2f0e5a(0x136)](_0x586042=>_0x586042['trim']())['filter'](_0x76642c=>_0x76642c[_0x2f0e5a(0xe9)]>0x0);}const _0x202848=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x3ac32f=_0x202848['exec'](_0x598f25);if(_0x3ac32f){const _0x5b0609=_0x3ac32f[0x1],_0x49474e=/<term>(.*?)<\/term>/gi;let _0x408d84;while((_0x408d84=_0x49474e['exec'](_0x5b0609))!==null){const _0x33f321=_0x408d84[0x1][_0x2f0e5a(0xfd)]();_0x33f321['length']>0x0&&_0x516975['searchTerms']['push'](_0x33f321);}}return _0x516975;}catch(_0x5becba){return this['logger']?.[_0x2f0e5a(0x133)](_0x2f0e5a(0x12f),{'error':_0x5becba['message']}),{'filePaths':[],'searchTerms':[],'parseError':_0x5becba[_0x2f0e5a(0xc4)]};}}['getRequiredParameters'](){const _0x43e49d=a0_0x52336e;return[_0x43e49d(0xd5),'searchTerms'];}[a0_0x52336e(0x12e)](_0x121d0a){const _0x51dbbe=a0_0x52336e,_0x656f25=[];if(!_0x121d0a['filePaths']||!Array[_0x51dbbe(0x12c)](_0x121d0a['filePaths'])||_0x121d0a['filePaths'][_0x51dbbe(0xe9)]===0x0)_0x656f25['push'](_0x51dbbe(0xcd));else _0x121d0a['filePaths'][_0x51dbbe(0xe9)]>this['seekConfig'][_0x51dbbe(0x11f)]&&_0x656f25[_0x51dbbe(0xde)](_0x51dbbe(0x13b)+this[_0x51dbbe(0xd7)]['MAX_FILE_PATHS']+')');if(!_0x121d0a[_0x51dbbe(0x128)]||!Array['isArray'](_0x121d0a[_0x51dbbe(0x128)])||_0x121d0a[_0x51dbbe(0x128)][_0x51dbbe(0xe9)]===0x0)_0x656f25['push']('At\x20least\x20one\x20search\x20term\x20is\x20required');else _0x121d0a['searchTerms']['length']>this['seekConfig']['MAX_SEARCH_TERMS']&&_0x656f25[_0x51dbbe(0xde)](_0x51dbbe(0x12b)+this['seekConfig'][_0x51dbbe(0x117)]+')');if(_0x121d0a[_0x51dbbe(0x128)]&&Array[_0x51dbbe(0x12c)](_0x121d0a[_0x51dbbe(0x128)]))for(const [_0x2be510,_0x183d9d]of _0x121d0a[_0x51dbbe(0x128)][_0x51dbbe(0xbd)]()){(typeof _0x183d9d!=='string'||_0x183d9d['trim']()[_0x51dbbe(0xe9)]===0x0)&&_0x656f25[_0x51dbbe(0xde)](_0x51dbbe(0xfc)+(_0x2be510+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string');}if(_0x121d0a['filePaths']&&Array['isArray'](_0x121d0a[_0x51dbbe(0xd5)]))for(const [_0x5a458c,_0x5f2ee3]of _0x121d0a[_0x51dbbe(0xd5)]['entries']()){(typeof _0x5f2ee3!=='string'||_0x5f2ee3['trim']()['length']===0x0)&&_0x656f25['push']('File\x20path\x20'+(_0x5a458c+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x5f2ee3['includes']('..')&&_0x656f25['push'](_0x51dbbe(0x10a)+(_0x5a458c+0x1)+_0x51dbbe(0xc8));}return{'valid':_0x656f25['length']===0x0,'errors':_0x656f25};}async[a0_0x52336e(0xb4)](_0x3e93f9,_0x54572b){const _0x405c38=a0_0x52336e,{filePaths:_0x5bb7c7,searchTerms:_0x2e8d92}=_0x3e93f9,{projectDir:_0x161515,agentId:_0x44497c,directoryAccess:_0x51f383}=_0x54572b;let _0x127bea=_0x161515||process['cwd'](),_0x39373e=[_0x127bea];_0x51f383&&_0x51f383[_0x405c38(0xe8)]&&(_0x127bea=_0x51f383['workingDirectory'],_0x39373e=this[_0x405c38(0x11b)](_0x51f383),this['logger']?.[_0x405c38(0x110)](_0x405c38(0x127),{'workingDirectory':_0x51f383[_0x405c38(0xe8)],'totalAccessibleDirs':_0x39373e[_0x405c38(0xe9)],'readOnlyDirs':_0x51f383[_0x405c38(0xca)]?.['length']||0x0,'writeEnabledDirs':_0x51f383[_0x405c38(0xb8)]?.[_0x405c38(0xe9)]||0x0,'agentId':_0x44497c}));if(!_0x127bea)throw new Error(_0x405c38(0xc5));this['logger']?.[_0x405c38(0x110)]('Executing\x20seek\x20tool',{'filePathCount':_0x5bb7c7['length'],'searchTermCount':_0x2e8d92['length'],'workingDirectory':_0x127bea,'accessibleDirectories':_0x39373e[_0x405c38(0xe9)],'agentId':_0x44497c});try{const _0x414865=await this[_0x405c38(0x14b)](_0x5bb7c7,_0x127bea,_0x51f383?_0x39373e:null),_0x18568e=_0x414865[_0x405c38(0x125)],_0x52dce6=_0x414865['notFound'];if(_0x18568e[_0x405c38(0xe9)]>this['seekConfig']['MAX_FILES_PER_SEARCH'])return{'success':![],'error':_0x405c38(0xd9)+_0x18568e[_0x405c38(0xe9)]+').\x20Maximum\x20is\x20'+this['seekConfig']['MAX_FILES_PER_SEARCH']+_0x405c38(0x137),'filesResolved':_0x18568e['length'],'filesNotFound':_0x52dce6['length']};const _0x5a6937=await this['searchFiles'](_0x18568e,_0x2e8d92,_0x127bea),_0x2a55ab=this['formatResults'](_0x5a6937[_0x405c38(0x105)],_0x5a6937['errorFiles'],_0x52dce6,_0x18568e['length']);return{'success':!![],'filesSearched':_0x18568e[_0x405c38(0xe9)],'filesNotFound':_0x52dce6[_0x405c38(0xe9)],'filesWithErrors':_0x5a6937['errorFiles'][_0x405c38(0xe9)],'totalMatches':_0x5a6937[_0x405c38(0x105)][_0x405c38(0xe9)],'matchesByTerm':_0x5a6937[_0x405c38(0xcb)],'formattedResults':_0x2a55ab,'toolUsed':'seek'};}catch(_0x9b0878){this['logger']?.[_0x405c38(0x133)]('Seek\x20tool\x20execution\x20failed',{'error':_0x9b0878['message']});throw _0x9b0878;}}['getAllAccessibleDirectories'](_0x617e9a){const _0x5ef246=a0_0x52336e,_0x20c567=new Set();_0x617e9a[_0x5ef246(0xe8)]&&_0x20c567[_0x5ef246(0x130)](_0x617e9a['workingDirectory']);if(_0x617e9a['readOnlyDirectories']&&Array['isArray'](_0x617e9a[_0x5ef246(0xca)]))for(const _0x43fb90 of _0x617e9a['readOnlyDirectories']){_0x20c567[_0x5ef246(0x130)](_0x43fb90);}if(_0x617e9a['writeEnabledDirectories']&&Array[_0x5ef246(0x12c)](_0x617e9a['writeEnabledDirectories']))for(const _0x37ae1b of _0x617e9a['writeEnabledDirectories']){_0x20c567['add'](_0x37ae1b);}return Array[_0x5ef246(0xff)](_0x20c567);}[a0_0x52336e(0x144)](_0x372c89,_0x12ff7c){const _0x1151f6=a0_0x52336e;for(const _0x477043 of _0x12ff7c){const _0x450dc3=a0_0x884cfb[_0x1151f6(0xd1)](_0x477043,_0x372c89),_0x3196e7=!_0x450dc3[_0x1151f6(0x115)]('..')&&!a0_0x884cfb[_0x1151f6(0xec)](_0x450dc3);if(_0x3196e7)return!![];}return![];}async[a0_0x52336e(0x14b)](_0x1e9b19,_0x8502ee,_0x2cf6c3=null){const _0x235f06=a0_0x52336e,_0xf078c3={'found':[],'notFound':[]};for(const _0x21939f of _0x1e9b19){const _0x258869=_0x21939f[_0x235f06(0xfd)]();if(_0x258869[_0x235f06(0xdb)]('*')){const _0x43b55b=await this[_0x235f06(0x104)](_0x258869,_0x8502ee);_0x43b55b[_0x235f06(0x125)]['length']>0x0?_0xf078c3[_0x235f06(0x125)][_0x235f06(0xde)](..._0x43b55b['found']):_0xf078c3['notFound']['push'](_0x258869+_0x235f06(0x10b));}else{const _0x54a2f2=a0_0x884cfb[_0x235f06(0xec)](_0x258869)?_0x258869:a0_0x884cfb['resolve'](_0x8502ee,_0x258869);if(_0x2cf6c3&&_0x2cf6c3[_0x235f06(0xe9)]>0x0){if(!this[_0x235f06(0x144)](_0x54a2f2,_0x2cf6c3)){_0xf078c3[_0x235f06(0xb5)]['push'](_0x258869+_0x235f06(0xda));continue;}}try{const _0x47ed76=await a0_0x4f0baa[_0x235f06(0x108)](_0x54a2f2);if(_0x47ed76[_0x235f06(0xb7)]())_0xf078c3['found']['push'](_0x54a2f2);else _0x47ed76[_0x235f06(0x100)]()?_0xf078c3['notFound'][_0x235f06(0xde)](_0x258869+'\x20(is\x20a\x20directory,\x20not\x20a\x20file)'):_0xf078c3[_0x235f06(0xb5)][_0x235f06(0xde)](_0x258869+'\x20(not\x20a\x20regular\x20file)');}catch(_0x9af119){_0xf078c3[_0x235f06(0xb5)][_0x235f06(0xde)](_0x258869+'\x20('+(_0x9af119[_0x235f06(0xeb)]||_0x9af119['message'])+')');}}}return _0xf078c3;}async['expandGlobPattern'](_0x2b3ff3,_0x151a7e){const _0xacebe5=a0_0x52336e,_0x564c67={'found':[]};if(_0x2b3ff3['includes'](_0xacebe5(0xfa))){const [_0x30768e,_0x53b1d3]=_0x2b3ff3[_0xacebe5(0xf5)]('**/'),_0x1fec29=a0_0x884cfb['resolve'](_0x151a7e,_0x30768e);try{const _0x2b2c95=await a0_0x4f0baa[_0xacebe5(0x108)](_0x1fec29);_0x2b2c95[_0xacebe5(0x100)]()&&await this['findFilesRecursively'](_0x1fec29,_0x53b1d3,_0x564c67[_0xacebe5(0x125)],0x0,this['seekConfig']['MAX_DIRECTORY_DEPTH']);}catch(_0x5aef01){this[_0xacebe5(0x106)]?.[_0xacebe5(0x10c)]('Base\x20directory\x20not\x20found\x20for\x20glob\x20pattern',{'basePath':_0x1fec29,'error':_0x5aef01['message']});}}else{if(_0x2b3ff3['includes']('*')){const _0x106e9c=a0_0x884cfb['dirname'](a0_0x884cfb['resolve'](_0x151a7e,_0x2b3ff3)),_0xebcfe6=a0_0x884cfb[_0xacebe5(0xbb)](_0x2b3ff3);try{const _0x3be556=await a0_0x4f0baa[_0xacebe5(0x108)](_0x106e9c);if(_0x3be556[_0xacebe5(0x100)]()){const _0xc26887=await a0_0x4f0baa[_0xacebe5(0x129)](_0x106e9c);for(const _0x3dd739 of _0xc26887){const _0x216db5=a0_0x884cfb['join'](_0x106e9c,_0x3dd739);try{const _0x4ad5aa=await a0_0x4f0baa['stat'](_0x216db5);_0x4ad5aa[_0xacebe5(0xb7)]()&&this[_0xacebe5(0x13a)](_0x3dd739,_0xebcfe6)&&_0x564c67['found'][_0xacebe5(0xde)](_0x216db5);}catch(_0x39e9d4){continue;}}}}catch(_0x225b06){this['logger']?.[_0xacebe5(0x10c)](_0xacebe5(0x10e),{'dirPath':_0x106e9c,'error':_0x225b06[_0xacebe5(0xc4)]});}}}return _0x564c67;}async[a0_0x52336e(0xe7)](_0x43a585,_0x30d31a,_0xdf522b,_0x5c7172,_0x5b24e){const _0x50c1f2=a0_0x52336e;if(_0x5c7172>=_0x5b24e){this['logger']?.['warn'](_0x50c1f2(0xf3),{'dir':_0x43a585,'currentDepth':_0x5c7172});return;}try{const _0x42d15c=await a0_0x4f0baa[_0x50c1f2(0x129)](_0x43a585,{'withFileTypes':!![]});for(const _0x333bd4 of _0x42d15c){if(_0x333bd4[_0x50c1f2(0xe5)][_0x50c1f2(0x115)]('.'))continue;const _0x12f6f9=a0_0x884cfb[_0x50c1f2(0x11c)](_0x43a585,_0x333bd4['name']);try{if(_0x333bd4['isDirectory']()){if(this['shouldSkipDirectory'](_0x333bd4[_0x50c1f2(0xe5)]))continue;await this[_0x50c1f2(0xe7)](_0x12f6f9,_0x30d31a,_0xdf522b,_0x5c7172+0x1,_0x5b24e);}else{if(_0x333bd4['isFile']()){if(this[_0x50c1f2(0x13a)](_0x333bd4['name'],_0x30d31a)){_0xdf522b['push'](_0x12f6f9);if(_0xdf522b['length']>=this['seekConfig'][_0x50c1f2(0xee)])return;}}}}catch(_0x423b01){continue;}}}catch(_0x57ccdf){this[_0x50c1f2(0x106)]?.['warn']('Error\x20reading\x20directory',{'dir':_0x43a585,'error':_0x57ccdf['message']});}}['matchesPattern'](_0xab9e6e,_0x108b82){const _0x391b60=a0_0x52336e,_0x2c35a0=_0x108b82[_0x391b60(0xf5)]('*')['map'](_0x3b9586=>this['escapeRegExp'](_0x3b9586))['join']('.*'),_0x131a5f=new RegExp('^'+_0x2c35a0+'$','i');return _0x131a5f[_0x391b60(0xe1)](_0xab9e6e);}[a0_0x52336e(0x13f)](_0x137c6a){const _0x203c33=a0_0x52336e;return _0x137c6a['replace'](/[.*+?^${}()|[\]\\]/g,_0x203c33(0xcf));}['shouldSkipDirectory'](_0x524a1b){const _0x1a5b0f=a0_0x52336e,_0x477853=new Set([_0x1a5b0f(0x147),'.git','dist',_0x1a5b0f(0xc9),_0x1a5b0f(0x13e),_0x1a5b0f(0x12a),'.nuxt',_0x1a5b0f(0x10f),_0x1a5b0f(0xe3),'vendor',_0x1a5b0f(0xba),'.cache',_0x1a5b0f(0x131),'temp']);return _0x477853[_0x1a5b0f(0x123)](_0x524a1b['toLowerCase']());}['shouldSkipFile'](_0x1231af){const _0xbb0b13=a0_0x52336e,_0x7df79e=a0_0x884cfb[_0xbb0b13(0xf9)](_0x1231af)[_0xbb0b13(0x101)]();return BINARY_EXTENSIONS[_0xbb0b13(0x123)](_0x7df79e);}async['searchFiles'](_0x2b253b,_0x491e4e,_0x68eb63){const _0xd72a33=a0_0x52336e,_0x3f7789=[],_0x43744c=[];let _0x5c4b5f=0x0;for(const _0x54099e of _0x2b253b){if(this['shouldSkipFile'](_0x54099e))continue;try{const _0x24ff8d=await a0_0x4f0baa[_0xd72a33(0x108)](_0x54099e);if(_0x24ff8d['size']>this[_0xd72a33(0xd7)]['MAX_FILE_SIZE']){_0x43744c['push']({'filePath':a0_0x884cfb['relative'](_0x68eb63,_0x54099e),'error':'File\x20too\x20large\x20('+Math[_0xd72a33(0x145)](_0x24ff8d['size']/(0x400*0x400))+'MB,\x20max\x20'+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+_0xd72a33(0xb9)});continue;}const _0x144f53=await this['searchInFile'](_0x54099e,_0x491e4e,_0x68eb63);_0x3f7789['push'](..._0x144f53),_0x5c4b5f+=_0x144f53['length'];if(_0x5c4b5f>=this['seekConfig'][_0xd72a33(0xc3)]){this[_0xd72a33(0x106)]?.[_0xd72a33(0x10c)]('Maximum\x20total\x20matches\x20reached',{'totalMatches':_0x5c4b5f});break;}}catch(_0x1f8c2a){_0x43744c['push']({'filePath':a0_0x884cfb[_0xd72a33(0xd1)](_0x68eb63,_0x54099e),'error':_0x1f8c2a['message']});}}const _0x4d2bf8={};for(const _0x3ec106 of _0x3f7789){!_0x4d2bf8[_0x3ec106[_0xd72a33(0x149)]]&&(_0x4d2bf8[_0x3ec106['term']]=[]),_0x4d2bf8[_0x3ec106['term']]['push']({'filePath':_0x3ec106['filePath'],'lineNumber':_0x3ec106['lineNumber'],'lineContent':_0x3ec106['lineContent']});}return{'matches':_0x3f7789,'matchesByTerm':_0x4d2bf8,'errorFiles':_0x43744c};}async[a0_0x52336e(0xf6)](_0x7935bf,_0x4fc231,_0x595e03){const _0x5ba6f1=a0_0x52336e,_0x31bea4=[];let _0x513fba=0x0;try{const _0x34801d=await a0_0x4f0baa[_0x5ba6f1(0x109)](_0x7935bf,FILE_ENCODING),_0x262e94=_0x34801d['split']('\x0a'),_0x259f5c=a0_0x884cfb[_0x5ba6f1(0xd1)](_0x595e03,_0x7935bf);for(let _0x49a205=0x0;_0x49a205<_0x262e94[_0x5ba6f1(0xe9)];_0x49a205++){const _0xb76c1a=_0x262e94[_0x49a205],_0x19cffa=_0x49a205+0x1;for(const _0x1ad137 of _0x4fc231){if(_0xb76c1a[_0x5ba6f1(0xdb)](_0x1ad137)){let _0x2d34d2=_0xb76c1a;if(_0x2d34d2[_0x5ba6f1(0xe9)]>this[_0x5ba6f1(0xd7)][_0x5ba6f1(0xd3)]){const _0x9a766e=_0x2d34d2['indexOf'](_0x1ad137),_0x50dd0a=Math['max'](0x0,_0x9a766e-0x32),_0x497b32=Math[_0x5ba6f1(0xe0)](_0x2d34d2[_0x5ba6f1(0xe9)],_0x9a766e+_0x1ad137['length']+0x32);_0x2d34d2=(_0x50dd0a>0x0?_0x5ba6f1(0x124):'')+_0x2d34d2[_0x5ba6f1(0xce)](_0x50dd0a,_0x497b32)+(_0x497b32<_0x2d34d2[_0x5ba6f1(0xe9)]?'...':'');}_0x31bea4[_0x5ba6f1(0xde)]({'term':_0x1ad137,'filePath':_0x259f5c,'lineNumber':_0x19cffa,'lineContent':_0x2d34d2[_0x5ba6f1(0xfd)]()}),_0x513fba++;if(_0x513fba>=this['seekConfig']['MAX_MATCHES_PER_FILE'])return this['logger']?.['warn'](_0x5ba6f1(0xbc),{'filePath':_0x259f5c}),_0x31bea4;}}}}catch(_0x301eab){throw new Error(_0x5ba6f1(0xef)+_0x301eab['message']);}return _0x31bea4;}[a0_0x52336e(0xed)](_0x44936f,_0x182223,_0x3d5d21,_0x11e681){const _0x2229ca=a0_0x52336e;let _0x567aed='';if(_0x3d5d21['length']>0x0){_0x567aed+='FILES\x20NOT\x20FOUND:\x0a';for(const _0x4495ec of _0x3d5d21){_0x567aed+=_0x2229ca(0x118)+_0x4495ec+'\x0a';}_0x567aed+='\x0a';}if(_0x182223['length']>0x0){_0x567aed+=_0x2229ca(0xf4);for(const _0x58c8aa of _0x182223){_0x567aed+='\x20\x20-\x20'+_0x58c8aa[_0x2229ca(0xd4)]+':\x20'+_0x58c8aa['error']+'\x0a';}_0x567aed+='\x0a';}if(_0x44936f[_0x2229ca(0xe9)]===0x0)_0x567aed+=_0x2229ca(0x141)+_0x11e681+'\x20file(s).\x0a';else{const _0x1a0b47={};for(const _0xde6356 of _0x44936f){!_0x1a0b47[_0xde6356[_0x2229ca(0x149)]]&&(_0x1a0b47[_0xde6356[_0x2229ca(0x149)]]=[]),_0x1a0b47[_0xde6356[_0x2229ca(0x149)]]['push'](_0xde6356);}_0x567aed+='SEARCH\x20RESULTS\x20('+_0x44936f['length']+'\x20total\x20matches\x20in\x20'+_0x11e681+_0x2229ca(0x13d);for(const [_0x168bbd,_0x14a683]of Object['entries'](_0x1a0b47)){_0x567aed+='Search\x20term:\x20\x22'+_0x168bbd+_0x2229ca(0x103)+_0x14a683['length']+_0x2229ca(0xd2);for(const _0x3131b7 of _0x14a683){_0x567aed+='\x20\x20'+_0x3131b7[_0x2229ca(0xd4)]+':'+_0x3131b7[_0x2229ca(0x13c)]+_0x2229ca(0xd6)+_0x3131b7[_0x2229ca(0x11e)]+'\x0a';}_0x567aed+='\x0a';}_0x44936f[_0x2229ca(0xe9)]>=this[_0x2229ca(0xd7)]['MAX_TOTAL_MATCHES']&&(_0x567aed+=_0x2229ca(0x11d)+this[_0x2229ca(0xd7)][_0x2229ca(0xc3)]+').\x20Some\x20matches\x20may\x20not\x20be\x20shown.\x0a');}return _0x567aed[_0x2229ca(0xfd)]();}['getSupportedExtensions'](){const _0x41d98a=a0_0x52336e;return['.js','.jsx','.ts',_0x41d98a(0x142),'.json','.xml',_0x41d98a(0xe6),'.css','.scss',_0x41d98a(0x122),_0x41d98a(0xfe),'.md',_0x41d98a(0xc6),'.log',_0x41d98a(0xe2),_0x41d98a(0xf1),_0x41d98a(0x14a),'.go',_0x41d98a(0xea),'.c','.cpp','.h',_0x41d98a(0x134),_0x41d98a(0x102),_0x41d98a(0x114),'.zsh',_0x41d98a(0x126),'.yaml',_0x41d98a(0x119),_0x41d98a(0xcc),_0x41d98a(0x10d)];}async[a0_0x52336e(0x138)](_0x37b7f2){const _0x15094d=a0_0x52336e;this['logger']?.[_0x15094d(0x110)](_0x15094d(0xfb),{'operationId':_0x37b7f2});}}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_0x499fab=a0_0x2427;(function(_0xe562b5,_0x25a36f){const _0x1e314e=a0_0x2427,_0x45958f=_0xe562b5();while(!![]){try{const _0x10fd58=-parseInt(_0x1e314e(0x27d))/0x1*(parseInt(_0x1e314e(0x22e))/0x2)+parseInt(_0x1e314e(0x20f))/0x3*(parseInt(_0x1e314e(0x275))/0x4)+parseInt(_0x1e314e(0x259))/0x5+-parseInt(_0x1e314e(0x1c9))/0x6*(parseInt(_0x1e314e(0x1d7))/0x7)+parseInt(_0x1e314e(0x279))/0x8+-parseInt(_0x1e314e(0x280))/0x9*(parseInt(_0x1e314e(0x27e))/0xa)+-parseInt(_0x1e314e(0x1ed))/0xb*(-parseInt(_0x1e314e(0x246))/0xc);if(_0x10fd58===_0x25a36f)break;else _0x45958f['push'](_0x45958f['shift']());}catch(_0xc8f477){_0x45958f['push'](_0x45958f['shift']());}}}(a0_0x114c,0x858a8));function a0_0x114c(){const _0x4cf81f=['C3rHCNrZv2L0Aa','zxH0BMfTzq','C2v2zxjPDhK','x19WEwnHy2HLx18','CMvTywLUAw5NrxjYB3jZ','y2HHBMDLCW','zML4zwq','zML4','DMfSAwrHDgvxCML0zufJy2vZCW','vw5RBM93BIbHy3rPB24GDhLWztOG','rMfPBgvKihrVihbHCNnLihn0yxrPyYbHBMfSExnPCYbWyxjHBwv0zxjZoIa','Cgf0DgvYBG','zgv0zwn0tgfUz3vHz2u','AMf2yxnJCMLWDa','q1jjveLdquW','DgLTzw91Da','y2XLyxjdywnOzq','rMLSzsb0B28GBgfYz2u6ia','AxnbC3LUyW','BMfTzq','DMfSAwrHDgvdB25MAwDgAwXL','AxneAxjLy3rVCNK','C2vJDxjPDhKTC2nHBG','D3jPDguTzMLSzq','ChvZAa','DMfSAwrHDguTy29UzMLN','AxnbyNnVBhv0zq','zgvWzw5Kzw5JAwvZ','igj5DgvZicHTyxGG','ywn0Aw9UCW','y3DK','z2v0vgLTzq','Dg9mB3DLCKnHC2u','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','su5gtW','zg9JA2vYlwnVBxbVC2uUEwfTBa','C2TPCfrLC3rgAwXLCW','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','C2vJDxjPDhLty2fUrMLSzq','Bwv0CMLJCW','nNLzq0zfBq','Dg90ywXbBMfSExnPC1rPBwu','DxbKyxrLu3vTBwfYEq','Dg9ju09tDhjPBMC','zMLSzs1WyxrO','zgLNzxn0','ywXSB3DLza','oIb0ExbLigLZihjLCxvPCMvK','C2L6zq','C3rYAw5N','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4TChjVAMvJDa','A3vIzxjUzxrLCW','BgfUz3vHz2u','lMDPDa','mJG5nJyYmwzfC1nywq','Dg90ywW','rLjbtuvxt1jlx01btKLgrvnuuW','lI4Vyw5HBhL6zxjZl1bYzxr0AwvYrM9YBwf0DgvYlMPZ','lNbYzxr0AwvYCMmUANnVBG','lNrMDMfYCW','BM9YBwfSAxPL','zMLSDgvY','rMfPBgvKihrVigzPEca','C3vTBwfYEq','zMLSzvbHDgG','vxnPBMCGy2fJAgvKigfUywX5C2LZihjLC3vSDa','q0fdsevFrfvsqvrjt04','zMLSzxncEuXHBMD1ywDL','DxbKyxrL','igzPBgvZihbLCIbVCgvYyxrPB24klsbbBMfSExnPCYb0Aw1LB3v0oIa','zxjYB3i','yw5HBhLZAxndywnOzq','ufLuse9ox0zsqu1fv09ss1m','zM9YrwfJAa','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','Aw5JBhvKzxm','mZnxyK1HthC','vg9Vig1HBNKGzMLSzxm6ia','zgv0zwn0rNjHBwv3B3jR','zMLSzxnbBMfSExPLza','CMvZzxrqzxjMB3jTyw5Jzu1LDhjPy3m','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','Aw5JBhvKzs13yxjUAw5NCW','ChjLDhrPzxi','AxngAwXL','z2v0uhjLDhrPzxjgB3jTyxr0zxi','DhjPBq','Dhj1BMnHDgvK','BgLUzxndAgfUz2vK','Aw5JBhvKzvDHCM5PBMDZ','C3bSAxq','yw5HBhL6zvbYB2PLy3q','DhLWzxnJCMLWDa','z2v0u2vJDxjPDhLbBMfSExPLCG','qw5HBhL6Aw5NigjHDgnO','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','Dw5RBM93BG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','C3vIC3rYAw5N','zMLSzxnxAxrOrxjYB3jZ','DxnLq29UDgvUDeHHC2G','DMfSAwrHDgvszwfKqwnJzxnZ','CgfYC2vbDhrYAwj1DgvZ','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','Dhj1zq','BgvUz3rO','icHTyxGG','yw5HBhL6zxjZ','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','mtq0mte0qK5xwxbQ','CM91BMq','Bg9Nz2vY','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zMLSzxm','z2v0rgvZy3jPChrPB24','DMfSAwrHDg9Y','CgfYywXSzwXbBMfSExnPCW','zgv2rgvWzw5Kzw5JAwvZ','B25qCM9NCMvZCW','y3nZ','rNjHBwv3B3jRigrLDgvJDgLVBIbMywLSzwq','C3rHDa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYbMAwXL','CMf3q29UDgvUDa','zgvIDwC','CMvZB2X2zq','C2XPy2u','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29TCgXLDgvK','BM9Kzv9TB2r1BgvZ','CMvHC29U','BNbTlwf1zgL0','BxrPBwu','yw5HBhL6zs1WCM9Qzwn0','rMfPBgvKihrVigXVywqGyw5HBhL6zxi','yNvPBgq','zw5HyMXLq2fJAgu','u0ntuW','nJzOvvHIuvG','vfLqrvnduKLqva','C2vJDxjPDhK','zxjYB3jZ','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','tefor1vbr0u','Dg90ywXdCML0AwnHBa','Bwf4rxjYB3jZ','lMvZBgLUDhjJlMPZB24','zgLYzwn0B3j5','zML4zwrdB3vUDa','CMvHzezPBgu','zgv0zwn0sLngCMfTzxDVCMS','zM9YBwf0DgvYCW','yMfZzw5HBwu','CMvTywLUAw5Nv2fYBMLUz3m','rvHuru5tsu9ox1rpx0XbtKDvquDf','AxntDxbWB3j0zwq','Aw5MBW','AM9PBG','ru5bqKXfx0nbq0Hf','Aw5KzxHpzG','y29UzMLN','u2vJDxjPDhKGC2nHBM5PBMCGB25SEsbZDxbWB3j0CYbkyxzHu2nYAxb0lcbuExbLu2nYAxb0lcbHBMqGuhL0Ag9UigzPBgvZ','mJaZodq0mhvXuhnbza','CgfYywXSzwXcyxrJAgvZ','BM93','lI4Vyw5HBhL6zxjZl1r5Cgvty3jPChrbBMfSExPLCI5QCW','C2HHmJu2','sKfwqvnduKLqva','ChL0Ag9U','CgfYC2u','y29UDgvUDa','Bwf4rMLSzvnPEMu','D2fYBG','y2fJAgvfEhbPCNK','y3jLyxrLsgfZAa','v0fstKLorW','DgLTzxn0yw1W','v3jPDguGywnJzxnZigrLBMLLzdOG','DhLWzq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzVCM1HDa','tM8Gyw5HBhL6zxiGyxzHAwXHyMXLigzVCIa','ndu3mta1mezty25duG','y3jPDgLJywW','CMvHzgrPCG','lI4Vyw5HBhL6zxjZl0vttgLUDefUywX5EMvYlMPZ','C2vJDxjPDhLty2fUuhjVAMvJDa','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','D3jPDgvgAwXL','qwn0Aw9Uia','Bwf4rMLSzxnqzxjcyxrJAa','u0vwrvjjvfK','ufLuse9o','zxHLyW','BwfW','yxjYyxK','zMLUzezPBgvZ','rvjst1i','lMvZBgLUDhjJlMPZ','DxrMltG','BwvZC2fNzq','zM9YBwf0rMLSzq','z2v0','zxnSAw50','Bwf0y2G','Bwf4ugfYywXSzwXgAwXLCW','yw5HBhL6zuzPBgu','y2fJAgvnAxnZzxm','y2f0zwDVCNK','lNLTBa','ognbu29ita','zM9YBwf0','cLn0yxrPyYbdB2rLiefUywX5C2LZifrVB2W6iefUywX5EMuGy29KzsbMAwXLCYbMB3iGzxjYB3jZihDPDgHVDxqGzxHLy3v0Aw9UcGPuAgLZihrVB2WGCgvYzM9YBxmGC3rHDgLJigfUywX5C2LZig9UignVzguGzMLSzxmGDg8GzMLUzcbZEw50yxGGzxjYB3jZlcb0ExbLigvYCM9YCYWGAw1WB3j0igLZC3vLCYWGyw5Kig90AgvYihbYB2jSzw1ZihDPDgHVDxqGCNvUBMLUzYb0AguGy29Kzs4GsxqGDxnLCYbVzMzPy2LHBcbSyw5NDwfNzsbWyxjZzxjZigzVCIbHy2n1CMf0zsbYzxn1BhrZlGOku1vque9sveveieXbtKDvquDfuZOklsbkyxzHu2nYAxb0icGUANmSic5QC3GSic5TANmSic5JANmPcI0GvhLWzvnJCMLWDcaOlNrZlcaUDhn4kqOTifb5DgHVBIaOlNb5kqOTientuYaOlMnZCYKklsbtq1nticGUC2nZCYWGlNnHC3mPcI0GtevtuYaOlMXLC3mPcGPvu0fhrsaTifHntcbgt1jnqvq6cGPtAw5NBguGrMLSzsbbBMfSExnPCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVAw5KzxGUANmIic8+cLSVDg9VBf0kcK11BhrPCgXLiezPBgvZiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zsbMAwXLlxbHDgG9iNnYyY9PBMrLEc5QCYiGlZ4kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDxrPBhmUANmIic8+cJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZEciGlZ4kwY90B29SxqOkuhjVAMvJDc1xAwrLiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zs1WCM9Qzwn0igrPCMvJDg9YEt0IC3jJiIbWyxr0zxjUpsiQkI8QlMPZiIaVpGPBl3rVB2XDcGPbDxrVluzPEcbdB2rLieLZC3vLCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgzPEcbMAwXLlxbHDgG9iNnYyY9HChaUANmIic8+cLSVDg9VBf0kcKzVCM1HDcbdB2rLoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8zM9YBwf0igzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkvvnbr0uGlsbku09oiezpuK1bvdOkcMbGygPZB24kEWOGicj0B29SswqIoIaIC3rHDgLJyw5HBhLZAxmIlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjHBMfSExPLiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiMfUywX5EMuTChjVAMvJDciScIaGicaGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaGicaGiNbHDhrLCM4IoIaIkIOVkI57ANmSDhmSChL9iGOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8Gyw5HBhL6zsaOzM9YihnPBMDSzsbMAwXLkqOTigrPCMvJDg9YEtOGrgLYzwn0B3j5ihrVigfUywX5EMuGkgzVCIbWCM9Qzwn0lxDPzguPcI0GCgf0DgvYBJOGr2XVyIbWyxr0zxjUigzVCIbMAwXLCYb0BYbPBMnSDwrLicHVChrPB25HBcWGzgvMyxvSDhmGDg8GBgfUz3vHz2uTC3bLy2LMAwmGCgf0DgvYBNmPcI0GAw5JBhvKzs13yxjUAw5NCZOGsw5JBhvKzsb3yxjUAw5NCYbPBIbYzxn1BhrZicH0CNvLl2zHBhnLlcbKzwzHDwX0oIb0CNvLkqOTig1HEc1LCNjVCNm6ie1HEgLTDw0GBNvTyMvYig9MigvYCM9YCYb0BYbYzxr1CM4GkgrLzMf1Bhq6igfSBcKkcK9vvfbvvcbgt1jnqvq6cLjLDhvYBNmGC3rYDwn0DxjLzcbLCNjVCIbPBMzVCM1HDgLVBJOklsbMAwXLoIbgAwXLihbHDgGklsbSAw5LoIbmAw5Lig51BwjLCGOTignVBhvTBJOGq29SDw1Uig51BwjLCGOTihnLDMvYAxr5oIbJCML0AwnHBcb8igvYCM9YihWGD2fYBMLUzYb8igLUzM8klsbYDwXLoIbsDwXLigLKzw50AwzPzxiklsbTzxnZywDLoIbiDw1HBI1YzwfKywjSzsbKzxnJCMLWDgLVBGOTignHDgvNB3j5oIbZEw50yxGGFcb0ExbLihWGAw1WB3j0ihWGC3r5BguGFcbZzwn1CML0Esb8ihbLCMzVCM1HBMnLihWGyMvZDf9WCMfJDgLJzqOTigzPEgfIBgu6ifDOzxrOzxiGzxjYB3iGy2fUigjLigf1Dg8TzML4zwqklsbZDwDNzxn0Aw9UoIbgAxGGC3vNz2vZDgLVBIaOAwyGyxbWBgLJywjSzsKklsbYzw1LzgLHDgLVBJOGu2vJDxjPDhKGCMvTzwrPyxrPB24Gywr2AwnLicHMB3iGC2vJDxjPDhKGAxnZDwvZkqOkrevurunusu9ooGOTieXHBMD1ywDLoIbbDxrVBwf0AwnHBgX5igrLDgvJDgvKigzYB20GzMLSzsbLEhrLBNnPB24klsbgCMfTzxDVCMS6ierLDgvJDgvKigzYB20GCgfJA2fNzs5QC29UlcbYzxf1AxjLBwvUDhmUDhH0lcbLDgmUcI0Gq29UDgv4DdOGuhjVAMvJDcbZDhj1y3r1CMuGyw5HBhL6zwqGzM9YigjLDhrLCIbHy2n1CMfJEqOkrvHbtvbmrvm6cGPgAw5KigfSBcbLCNjVCNmGAw4GysbkyxzHu2nYAxb0igzPBgu6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkqw5HBhL6zsbuExbLu2nYAxb0ihDPDgGGDhLWzsbJAgvJA2LUzZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDhLWzxmUDhmIic8+cLSVDg9VBf0kcKnOzwnRigfSBcbqExrOB24GzMLSzxmGAw4GysbKAxjLy3rVCNK6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLlxbYB2PLy3qGzgLYzwn0B3j5psjIywnRzw5KiIbWyxr0zxjUpsiQkI8QlNb5iIaVpGPBl3rVB2XDcGPmsu1jvefusu9ouZOklsbgAwXLihnPEMuGBgLTAxq6ia','y3jLyxrLuMvSyxrPDMvqyxrO','mJKZmZi1nM5mrwzMvq','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5lgnZCYXZy3nZlhnHC3mSBgvZC30','zML4rMLSzq','zMLUzenVBMzPz0zPBgvZ','mZq0owjIBe9ArW','mtbmD0Tgzg4','AxnbCNjHEq','nZmWnZu0mxrIyuTxrW','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','vg9Vig1HBNKGywn0Aw9UCZOG','Bwf4lwvYCM9YCW','yw5HBhL6zq','zw50CMLLCW'];a0_0x114c=function(){return _0x4cf81f;};return a0_0x114c();}import{BaseTool}from'./baseTool.js';function a0_0x2427(_0x411682,_0x51d12c){_0x411682=_0x411682-0x1b3;const _0x114cbc=a0_0x114c();let _0x24274c=_0x114cbc[_0x411682];if(a0_0x2427['fcmNFS']===undefined){var _0x308b9d=function(_0x5f53f1){const _0x191af3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17136b='',_0x1c7cbf='';for(let _0x16b9f4=0x0,_0x3d71ac,_0x45b761,_0x16b910=0x0;_0x45b761=_0x5f53f1['charAt'](_0x16b910++);~_0x45b761&&(_0x3d71ac=_0x16b9f4%0x4?_0x3d71ac*0x40+_0x45b761:_0x45b761,_0x16b9f4++%0x4)?_0x17136b+=String['fromCharCode'](0xff&_0x3d71ac>>(-0x2*_0x16b9f4&0x6)):0x0){_0x45b761=_0x191af3['indexOf'](_0x45b761);}for(let _0x499925=0x0,_0xd99e3d=_0x17136b['length'];_0x499925<_0xd99e3d;_0x499925++){_0x1c7cbf+='%'+('00'+_0x17136b['charCodeAt'](_0x499925)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c7cbf);};a0_0x2427['sdoFVY']=_0x308b9d,a0_0x2427['yCaMIB']={},a0_0x2427['fcmNFS']=!![];}const _0x458560=_0x114cbc[0x0],_0x5263ac=_0x411682+_0x458560,_0x3552ef=a0_0x2427['yCaMIB'][_0x5263ac];return!_0x3552ef?(_0x24274c=a0_0x2427['sdoFVY'](_0x24274c),a0_0x2427['yCaMIB'][_0x5263ac]=_0x24274c):_0x24274c=_0x3552ef,_0x24274c;}import a0_0x17136b from'../utilities/tagParser.js';import a0_0x1c7cbf from'../utilities/directoryAccessManager.js';import a0_0x16b9f4 from'fs/promises';import a0_0x3d71ac from'path';import a0_0x45b761 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x16b910={},_0x499925=null){const _0x4ee482=a0_0x2427;super(_0x16b910,_0x499925),this['requiresProject']=!![],this[_0x4ee482(0x298)]=![],this[_0x4ee482(0x295)]=_0x16b910['timeout']||STATIC_ANALYSIS['ANALYSIS_TIMEOUT'],this[_0x4ee482(0x212)]=_0x16b910[_0x4ee482(0x212)]||0x1,this['maxFileSize']=_0x16b910['maxFileSize']||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this['maxFilesPerBatch']=_0x16b910[_0x4ee482(0x261)]||STATIC_ANALYSIS['MAX_FILES_PER_BATCH'],this[_0x4ee482(0x22c)]=_0x16b910['enableCache']!==![]&&STATIC_ANALYSIS[_0x4ee482(0x242)],this[_0x4ee482(0x1e8)]=new Map(),this[_0x4ee482(0x251)]=STATIC_ANALYSIS[_0x4ee482(0x1e3)],this['parallelAnalysis']=_0x16b910['parallelAnalysis']!==![],this['maxParallelFiles']=_0x16b910['maxParallelFiles']||0xa,this[_0x4ee482(0x206)]=_0x16b910['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this['directoryAccessManager']=new a0_0x1c7cbf(_0x16b910,_0x499925),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}[a0_0x499fab(0x214)](){const _0x4d0e55=a0_0x499fab;return _0x4d0e55(0x277)+Math['round'](this['maxFileSize']/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+this['maxFilesPerBatch']+_0x4d0e55(0x1e6)+this['timeout']/0x3e8+_0x4d0e55(0x203);}['parseParameters'](_0xd99e3d){const _0x3a7a70=a0_0x499fab;try{const _0x9f00f3={},_0x25bf61=[];this[_0x3a7a70(0x211)]?.[_0x3a7a70(0x220)]('StaticAnalysis\x20tool\x20parsing\x20parameters',{'contentLength':_0xd99e3d[_0x3a7a70(0x20b)],'contentPreview':_0xd99e3d[_0x3a7a70(0x204)](0x0,0xc8)});const _0x1fd507=/<analyze\s+(.+?)\/>/g;let _0x297cda;while((_0x297cda=_0x1fd507['exec'](_0xd99e3d))!==null){const _0x2c8d7b=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x3ac7f3=new a0_0x17136b(),_0x211ff2=_0x3ac7f3['parseAttributes'](_0x2c8d7b),_0x272a9e={'type':_0x3a7a70(0x284),..._0x211ff2};_0x272a9e[_0x3a7a70(0x1cd)]&&(_0x272a9e[_0x3a7a70(0x1e1)]=_0x272a9e['file-path'],delete _0x272a9e[_0x3a7a70(0x1cd)]),_0x272a9e[_0x3a7a70(0x1f3)]&&(_0x272a9e[_0x3a7a70(0x1fa)]=_0x272a9e['include-warnings']==='true',delete _0x272a9e['include-warnings']),_0x272a9e['max-errors']&&(_0x272a9e['maxErrors']=parseInt(_0x272a9e['max-errors'],0xa),delete _0x272a9e['max-errors']),_0x25bf61['push'](_0x272a9e);}const _0x474a04=/<analyze-project\s+(.+?)\/>/g;while((_0x297cda=_0x474a04['exec'](_0xd99e3d))!==null){const _0x2cecfa=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x2b6901=new a0_0x17136b(),_0x1ff685=_0x2b6901[_0x3a7a70(0x208)](_0x2cecfa),_0x111aba={'type':_0x3a7a70(0x229),..._0x1ff685};_0x111aba[_0x3a7a70(0x1f3)]&&(_0x111aba[_0x3a7a70(0x1fa)]=_0x111aba['include-warnings']===_0x3a7a70(0x20a),delete _0x111aba['include-warnings']),_0x111aba[_0x3a7a70(0x283)]&&(_0x111aba['maxErrors']=parseInt(_0x111aba['max-errors'],0xa),delete _0x111aba[_0x3a7a70(0x283)]),_0x25bf61['push'](_0x111aba);}const _0xadf938=/<fix\s+(.+?)\/>/g;while((_0x297cda=_0xadf938['exec'](_0xd99e3d))!==null){const _0xc06d0c=_0x297cda[0x1]['trim'](),_0x511435=new a0_0x17136b(),_0x1f3f93=_0x511435[_0x3a7a70(0x208)](_0xc06d0c),_0x3db1db={'type':_0x3a7a70(0x28d),..._0x1f3f93};_0x3db1db['file-path']&&(_0x3db1db[_0x3a7a70(0x1e1)]=_0x3db1db['file-path'],delete _0x3db1db[_0x3a7a70(0x1cd)]),_0x3db1db['write-file']&&(_0x3db1db[_0x3a7a70(0x25f)]=_0x3db1db['write-file']==='true',delete _0x3db1db[_0x3a7a70(0x1b7)]),_0x25bf61['push'](_0x3db1db);}const _0x47ff8f=/<format\s+(.+?)\/>/g;while((_0x297cda=_0x47ff8f[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x434cce=_0x297cda[0x1]['trim'](),_0x2debf0=new a0_0x17136b(),_0x3f5445=_0x2debf0['parseAttributes'](_0x434cce),_0x3d7596={'type':_0x3a7a70(0x276),..._0x3f5445};_0x3d7596['file-path']&&(_0x3d7596['filePath']=_0x3d7596['file-path'],delete _0x3d7596[_0x3a7a70(0x1cd)]),_0x3d7596['write-file']&&(_0x3d7596['writeFile']=_0x3d7596['write-file']===_0x3a7a70(0x20a),delete _0x3d7596[_0x3a7a70(0x1b7)]),_0x25bf61[_0x3a7a70(0x1b8)](_0x3d7596);}const _0x5edbc3=/<security-scan\s+(.+?)\/>/g;while((_0x297cda=_0x5edbc3['exec'](_0xd99e3d))!==null){const _0x2046cb=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x4bfeff=new a0_0x17136b(),_0x3ffc15=_0x4bfeff[_0x3a7a70(0x208)](_0x2046cb),_0x13dec8={'type':'security-scan',..._0x3ffc15};_0x13dec8[_0x3a7a70(0x1cd)]&&(_0x13dec8[_0x3a7a70(0x1e1)]=_0x13dec8[_0x3a7a70(0x1cd)],delete _0x13dec8['file-path']),_0x13dec8['skip-test-files']&&(_0x13dec8[_0x3a7a70(0x1c5)]=_0x13dec8['skip-test-files']==='true',delete _0x13dec8['skip-test-files']),_0x25bf61[_0x3a7a70(0x1b8)](_0x13dec8);}const _0x2a989d=/<security-scan-project\s+(.+?)\/>/g;while((_0x297cda=_0x2a989d[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x5c8db4=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x408f01=new a0_0x17136b(),_0x2bc945=_0x408f01['parseAttributes'](_0x5c8db4),_0x47c667={'type':'security-scan-project',..._0x2bc945};_0x47c667['skip-test-files']&&(_0x47c667['skipTestFiles']=_0x47c667['skip-test-files']===_0x3a7a70(0x20a),delete _0x47c667['skip-test-files']),_0x25bf61['push'](_0x47c667);}const _0xad7e6c=/<validate-config\s+(.+?)\/>/g;while((_0x297cda=_0xad7e6c['exec'](_0xd99e3d))!==null){const _0x5ee640=_0x297cda[0x1]['trim'](),_0x5704d6=new a0_0x17136b(),_0x246c0f=_0x5704d6[_0x3a7a70(0x208)](_0x5ee640),_0xd8d5cf={'type':_0x3a7a70(0x1b9),..._0x246c0f};_0xd8d5cf['file-path']&&(_0xd8d5cf[_0x3a7a70(0x1e1)]=_0xd8d5cf['file-path'],delete _0xd8d5cf[_0x3a7a70(0x1cd)]),_0x25bf61[_0x3a7a70(0x1b8)](_0xd8d5cf);}const _0x56cb7c=/<validate-config-directory\s+(.+?)\/>/g;while((_0x297cda=_0x56cb7c[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x560f39=_0x297cda[0x1]['trim'](),_0x38413f=new a0_0x17136b(),_0x5c10e2=_0x38413f[_0x3a7a70(0x208)](_0x560f39),_0x188d6e={'type':_0x3a7a70(0x1f2),..._0x5c10e2};_0x25bf61['push'](_0x188d6e);}return _0x9f00f3['actions']=_0x25bf61,_0x9f00f3[_0x3a7a70(0x21f)]=_0xd99e3d[_0x3a7a70(0x1f7)](),this['logger']?.['debug']('Parsed\x20StaticAnalysis\x20tool\x20parameters',{'totalActions':_0x25bf61[_0x3a7a70(0x20b)],'actionTypes':_0x25bf61[_0x3a7a70(0x265)](_0xb8bd6a=>_0xb8bd6a['type'])}),_0x9f00f3;}catch(_0x56be49){throw new Error(_0x3a7a70(0x290)+_0x56be49[_0x3a7a70(0x26b)]);}}[a0_0x499fab(0x202)](){const _0x5ab653=a0_0x499fab;return[_0x5ab653(0x1bd)];}[a0_0x499fab(0x20e)](_0x2a4536){const _0x39306d=a0_0x499fab,_0x53f060=[];if(!_0x2a4536[_0x39306d(0x1bd)]||!Array[_0x39306d(0x27f)](_0x2a4536[_0x39306d(0x1bd)])||_0x2a4536[_0x39306d(0x1bd)][_0x39306d(0x20b)]===0x0)_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x1eb));else{for(const [_0x2e6409,_0x5597e6]of _0x2a4536[_0x39306d(0x1bd)]['entries']()){if(!_0x5597e6['type']){_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+_0x39306d(0x1d0));continue;}switch(_0x5597e6[_0x39306d(0x256)]){case'analyze':!_0x5597e6[_0x39306d(0x1e1)]&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20analyze');break;case _0x39306d(0x229):!_0x5597e6['directory']&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case _0x39306d(0x28d):!_0x5597e6['filePath']&&_0x53f060[_0x39306d(0x1b8)]('Action\x20'+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20fix');break;case _0x39306d(0x276):!_0x5597e6['filePath']&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+_0x39306d(0x257));break;case _0x39306d(0x1b6):!_0x5597e6['filePath']&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x39306d(0x1c6):!_0x5597e6[_0x39306d(0x237)]&&_0x53f060[_0x39306d(0x1b8)]('Action\x20'+(_0x2e6409+0x1)+_0x39306d(0x1d3));break;case'validate-config':!_0x5597e6[_0x39306d(0x1e1)]&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case _0x39306d(0x1f2):!_0x5597e6[_0x39306d(0x237)]&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20directory\x20is\x20required\x20for\x20validate-config-directory');break;default:_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5597e6['type']);}}_0x2a4536[_0x39306d(0x1bd)]['length']>this[_0x39306d(0x261)]&&_0x53f060['push'](_0x39306d(0x282)+_0x2a4536[_0x39306d(0x1bd)]['length']+'\x20(max\x20'+this[_0x39306d(0x261)]+')');}return{'valid':_0x53f060[_0x39306d(0x20b)]===0x0,'errors':_0x53f060};}async['execute'](_0x3d5e8f,_0x49e25a){const _0x427dfe=a0_0x499fab,{actions:_0x3369b8}=_0x3d5e8f,{projectDir:_0x124036,agentId:_0x2911ee,directoryAccess:_0xdce5b0}=_0x49e25a,_0x4d64a5=_0xdce5b0||this['directoryAccessManager'][_0x427dfe(0x281)]({'workingDirectory':_0x124036||process['cwd'](),'writeEnabledDirectories':[_0x124036||process[_0x427dfe(0x1be)]()],'restrictToProject':!![]}),_0x3997e7=this['directoryAccessManager']['getWorkingDirectory'](_0x4d64a5),_0x550c81={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x43ddb8 of _0x3369b8){try{let _0x28fd07;switch(_0x43ddb8['type']){case _0x427dfe(0x284):_0x28fd07=await this[_0x427dfe(0x271)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81['files']['push'](_0x28fd07),this['updateSummary'](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case _0x427dfe(0x229):const _0x4d6a03=await this[_0x427dfe(0x1fc)](_0x43ddb8['directory'],_0x43ddb8[_0x427dfe(0x291)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files']['push'](..._0x4d6a03);for(const _0x18305b of _0x4d6a03){this['updateSummary'](_0x550c81['summary'],_0x18305b);}break;case _0x427dfe(0x28d):_0x28fd07=await this[_0x427dfe(0x27b)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&_0x550c81['files'][_0x427dfe(0x1b8)](_0x28fd07);break;case _0x427dfe(0x276):_0x28fd07=await this['formatFile'](_0x43ddb8['filePath'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&_0x550c81['files']['push'](_0x28fd07);break;case _0x427dfe(0x1b6):_0x28fd07=await this['securityScanFile'](_0x43ddb8['filePath'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81[_0x427dfe(0x213)][_0x427dfe(0x1b8)](_0x28fd07),this[_0x427dfe(0x1cb)](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case'security-scan-project':const _0x246cae=await this[_0x427dfe(0x25d)](_0x43ddb8['directory'],_0x43ddb8['pattern'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files'][_0x427dfe(0x1b8)](..._0x246cae);for(const _0x7d2579 of _0x246cae){this['updateSummary'](_0x550c81['summary'],_0x7d2579);}break;case _0x427dfe(0x1b9):_0x28fd07=await this[_0x427dfe(0x1b4)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81['files'][_0x427dfe(0x1b8)](_0x28fd07),this[_0x427dfe(0x1cb)](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case _0x427dfe(0x1f2):const _0x4d7126=await this['validateConfigDirectory'](_0x43ddb8[_0x427dfe(0x237)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files']['push'](..._0x4d7126);for(const _0x5594fa of _0x4d7126){this['updateSummary'](_0x550c81['summary'],_0x5594fa);}break;default:throw new Error(_0x427dfe(0x28f)+_0x43ddb8[_0x427dfe(0x256)]);}}catch(_0x37b14b){this[_0x427dfe(0x211)]?.[_0x427dfe(0x1e7)]('Static\x20analysis\x20action\x20failed',{'action':_0x43ddb8[_0x427dfe(0x256)],'error':_0x37b14b['message']}),_0x550c81['files'][_0x427dfe(0x1b8)]({'file':_0x43ddb8[_0x427dfe(0x1e1)]||_0x43ddb8['directory'],'error':_0x37b14b['message'],'success':![]});}}return{'success':!![],'results':_0x550c81,'toolUsed':'staticanalysis','performance':this[_0x427dfe(0x232)]()};}async[a0_0x499fab(0x271)](_0x20fa7d,_0x4ddd7a,_0x49f3b9,_0x548435={}){const _0x51ed0b=a0_0x499fab,_0x3415c7=a0_0x3d71ac[_0x51ed0b(0x1ba)](_0x20fa7d)?a0_0x3d71ac[_0x51ed0b(0x1dd)](_0x20fa7d):a0_0x3d71ac['resolve'](_0x4ddd7a,_0x20fa7d),_0x20ab9b=this['directoryAccessManager'][_0x51ed0b(0x207)](_0x3415c7,_0x49f3b9);if(!_0x20ab9b['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x20ab9b['reason']);try{const _0x187a09=await a0_0x16b9f4['stat'](_0x3415c7);if(_0x187a09[_0x51ed0b(0x1d1)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x187a09[_0x51ed0b(0x1d1)]+_0x51ed0b(0x1bc)+this['maxFileSize']+')');const _0x8199c7=this[_0x51ed0b(0x292)](_0x3415c7);if(!_0x8199c7)return{'file':this['directoryAccessManager']['createRelativePath'](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x5c107d=await a0_0x16b9f4[_0x51ed0b(0x239)](_0x3415c7,_0x51ed0b(0x26a)),_0x44686f=this['useContentHash']?this['computeContentHash'](_0x5c107d):null,_0x1f174a=this['useContentHash']?_0x3415c7+':'+_0x44686f:_0x3415c7+':'+_0x187a09[_0x51ed0b(0x228)][_0x51ed0b(0x1bf)]();if(this['enableCache']&&this['analysisCache']['has'](_0x1f174a)){const _0x5697c4=this[_0x51ed0b(0x1e8)][_0x51ed0b(0x26d)](_0x1f174a);if(Date[_0x51ed0b(0x248)]()-_0x5697c4[_0x51ed0b(0x254)]<this[_0x51ed0b(0x251)])return this['logger']?.[_0x51ed0b(0x220)](_0x51ed0b(0x1e2),{'file':_0x3415c7}),this['metrics']['cacheHits']++,this[_0x51ed0b(0x1c8)]['totalAnalyses']++,_0x5697c4['result'];}this['metrics'][_0x51ed0b(0x272)]++,this['metrics']['totalAnalyses']++;const _0x4d291b=await this['getAnalyzer'](_0x8199c7);if(!_0x4d291b)return{'file':this[_0x51ed0b(0x21c)][_0x51ed0b(0x278)](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':_0x8199c7,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0x51ed0b(0x258)+_0x8199c7};const _0x30083d=Date[_0x51ed0b(0x248)](),_0x13d4a8=await _0x4d291b['analyze'](_0x3415c7,_0x5c107d,{'workingDir':_0x4ddd7a,'accessConfig':_0x49f3b9,'framework':await this['detectFramework'](_0x4ddd7a,_0x8199c7)}),_0x44c22f=Date['now']()-_0x30083d;this['metrics'][_0x51ed0b(0x1ca)]+=_0x44c22f,this['metrics'][_0x51ed0b(0x1f0)]++;const _0x53d5e4={'file':this[_0x51ed0b(0x21c)][_0x51ed0b(0x278)](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':_0x8199c7,'framework':await this['detectFramework'](_0x4ddd7a,_0x8199c7),'errors':_0x13d4a8[_0x51ed0b(0x1de)](_0x537f8c=>_0x537f8c['severity']===STATIC_ANALYSIS[_0x51ed0b(0x262)][_0x51ed0b(0x268)]),'warnings':_0x548435[_0x51ed0b(0x1fa)]!==![]?_0x13d4a8['filter'](_0x1a3854=>_0x1a3854['severity']===STATIC_ANALYSIS[_0x51ed0b(0x262)]['WARNING']):[],'info':_0x13d4a8['filter'](_0x3f102d=>_0x3f102d[_0x51ed0b(0x288)]===STATIC_ANALYSIS[_0x51ed0b(0x262)][_0x51ed0b(0x1c3)]),'totalIssues':_0x13d4a8[_0x51ed0b(0x20b)],'analyzed':!![],'timestamp':new Date()[_0x51ed0b(0x1cc)]()};return _0x548435['maxErrors']&&_0x53d5e4[_0x51ed0b(0x231)][_0x51ed0b(0x20b)]>_0x548435[_0x51ed0b(0x235)]&&(_0x53d5e4['errors']=_0x53d5e4['errors'][_0x51ed0b(0x222)](0x0,_0x548435['maxErrors']),_0x53d5e4[_0x51ed0b(0x1f8)]=!![]),this[_0x51ed0b(0x22c)]&&this[_0x51ed0b(0x1e8)]['set'](_0x1f174a,{'result':_0x53d5e4,'timestamp':Date[_0x51ed0b(0x248)]()}),_0x53d5e4;}catch(_0x1a9aee){throw new Error('Failed\x20to\x20analyze\x20'+_0x20fa7d+':\x20'+_0x1a9aee['message']);}}async['analyzeProject'](_0x38938f,_0xf1357,_0x1df8b2,_0x2482d8,_0xc3cc2c={}){const _0x4be301=a0_0x499fab,_0x1d94e0=a0_0x3d71ac['isAbsolute'](_0x38938f)?a0_0x3d71ac['normalize'](_0x38938f):a0_0x3d71ac['resolve'](_0x1df8b2,_0x38938f),_0x40ee87=this[_0x4be301(0x21c)][_0x4be301(0x207)](_0x1d94e0,_0x2482d8);if(!_0x40ee87[_0x4be301(0x1cf)])throw new Error('Read\x20access\x20denied:\x20'+_0x40ee87[_0x4be301(0x226)]);const _0x12e64c=await this[_0x4be301(0x267)](_0x1d94e0,_0xf1357);if(_0x12e64c[_0x4be301(0x20b)]>this['maxFilesPerBatch'])throw new Error(_0x4be301(0x1ee)+_0x12e64c['length']+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x43d6de=[];if(this[_0x4be301(0x216)]&&_0x12e64c[_0x4be301(0x20b)]>0x1){this['logger']?.[_0x4be301(0x220)]('Using\x20parallel\x20analysis',{'totalFiles':_0x12e64c['length'],'batchSize':this['maxParallelFiles']});for(let _0x3c9c97=0x0;_0x3c9c97<_0x12e64c[_0x4be301(0x20b)];_0x3c9c97+=this['maxParallelFiles']){const _0x422d81=_0x12e64c['slice'](_0x3c9c97,_0x3c9c97+this['maxParallelFiles']);this['metrics'][_0x4be301(0x247)]++;const _0x2f002a={'completed':_0x3c9c97,'total':_0x12e64c[_0x4be301(0x20b)],'percentage':Math['round'](_0x3c9c97/_0x12e64c[_0x4be301(0x20b)]*0x64)};_0xc3cc2c[_0x4be301(0x218)]&&_0xc3cc2c['onProgress'](_0x2f002a);this['logger']?.[_0x4be301(0x220)](_0x4be301(0x1ff),{'batch':Math['floor'](_0x3c9c97/this[_0x4be301(0x270)])+0x1,'filesInBatch':_0x422d81[_0x4be301(0x20b)],'progress':_0x2f002a[_0x4be301(0x224)]+'/'+_0x2f002a[_0x4be301(0x1d8)]});const _0x2d2a6a=_0x422d81['map'](async _0x588c06=>{const _0xb8ec7=_0x4be301;try{const _0x36b1b1=await this['analyzeFile'](_0x588c06,_0x1df8b2,_0x2482d8,_0xc3cc2c);return _0x36b1b1;}catch(_0x3ba636){return this[_0xb8ec7(0x211)]?.[_0xb8ec7(0x250)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x588c06,'error':_0x3ba636[_0xb8ec7(0x26b)]}),{'file':this['directoryAccessManager']['createRelativePath'](_0x588c06,_0x2482d8),'fullPath':_0x588c06,'error':_0x3ba636['message'],'success':![]};}}),_0x282534=await Promise['all'](_0x2d2a6a);_0x43d6de[_0x4be301(0x1b8)](..._0x282534['filter'](_0x7f871b=>_0x7f871b!==null));}_0xc3cc2c[_0x4be301(0x218)]&&_0xc3cc2c[_0x4be301(0x218)]({'completed':_0x12e64c['length'],'total':_0x12e64c['length'],'percentage':0x64});}else for(const _0x437bab of _0x12e64c){try{const _0x411e04=await this['analyzeFile'](_0x437bab,_0x1df8b2,_0x2482d8,_0xc3cc2c);_0x411e04&&_0x43d6de[_0x4be301(0x1b8)](_0x411e04);}catch(_0x3db9b2){this[_0x4be301(0x211)]?.[_0x4be301(0x250)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x437bab,'error':_0x3db9b2[_0x4be301(0x26b)]}),_0x43d6de['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x437bab,_0x2482d8),'fullPath':_0x437bab,'error':_0x3db9b2['message'],'success':![]});}}return _0x43d6de;}async[a0_0x499fab(0x27b)](_0x456436,_0x12815a,_0x479497,_0x6f023e={}){const _0x12ef22=a0_0x499fab,_0x2ce2f1=a0_0x3d71ac[_0x12ef22(0x1ba)](_0x456436)?a0_0x3d71ac['normalize'](_0x456436):a0_0x3d71ac[_0x12ef22(0x221)](_0x12815a,_0x456436),_0x5556da=this[_0x12ef22(0x21c)][_0x12ef22(0x207)](_0x2ce2f1,_0x479497);if(!_0x5556da['allowed'])throw new Error(_0x12ef22(0x223)+_0x5556da['reason']);if(_0x6f023e['writeFile']){const _0x438aca=this['directoryAccessManager'][_0x12ef22(0x28e)](_0x2ce2f1,_0x479497);if(!_0x438aca['allowed'])throw new Error(_0x12ef22(0x255)+_0x438aca['reason']);}try{const _0x2c9260=await a0_0x16b9f4[_0x12ef22(0x239)](_0x2ce2f1,'utf-8'),_0x487adc=await this['getESLintAnalyzer'](),_0x1ea2c5=await _0x487adc[_0x12ef22(0x28d)](_0x2ce2f1,_0x2c9260,{'workingDir':_0x12815a,'accessConfig':_0x479497,'framework':await this['detectFramework'](_0x12815a,this['detectLanguage'](_0x2ce2f1))});return _0x6f023e['writeFile']&&_0x1ea2c5['fixed']&&(await a0_0x16b9f4[_0x12ef22(0x25f)](_0x2ce2f1,_0x1ea2c5[_0x12ef22(0x24e)],'utf-8'),this[_0x12ef22(0x211)]?.[_0x12ef22(0x240)]('File\x20fixed\x20and\x20written',{'file':_0x2ce2f1})),{'file':this['directoryAccessManager'][_0x12ef22(0x278)](_0x2ce2f1,_0x479497),'fullPath':_0x2ce2f1,'action':_0x12ef22(0x28d),'fixed':_0x1ea2c5[_0x12ef22(0x28c)],'fixedCount':_0x1ea2c5[_0x12ef22(0x238)],'remainingErrors':_0x1ea2c5[_0x12ef22(0x28a)],'remainingWarnings':_0x1ea2c5[_0x12ef22(0x23d)],'changes':_0x1ea2c5[_0x12ef22(0x28b)],'written':!!(_0x6f023e['writeFile']&&_0x1ea2c5['fixed']),'preview':!_0x6f023e[_0x12ef22(0x25f)]&&_0x1ea2c5[_0x12ef22(0x28c)]?_0x1ea2c5['content']:undefined};}catch(_0x2ad397){throw new Error(_0x12ef22(0x1df)+_0x456436+':\x20'+_0x2ad397[_0x12ef22(0x26b)]);}}async[a0_0x499fab(0x26c)](_0x554f65,_0x521632,_0x44b21b,_0x16ad9e={}){const _0x588215=a0_0x499fab,_0x2e9939=a0_0x3d71ac[_0x588215(0x1ba)](_0x554f65)?a0_0x3d71ac['normalize'](_0x554f65):a0_0x3d71ac['resolve'](_0x521632,_0x554f65),_0x1dcaac=this['directoryAccessManager']['validateReadAccess'](_0x2e9939,_0x44b21b);if(!_0x1dcaac['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x1dcaac[_0x588215(0x226)]);if(_0x16ad9e[_0x588215(0x25f)]){const _0x288f3b=this[_0x588215(0x21c)]['validateWriteAccess'](_0x2e9939,_0x44b21b);if(!_0x288f3b['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x288f3b['reason']);}try{const _0x1c4f20=await a0_0x16b9f4['readFile'](_0x2e9939,'utf-8'),_0xe75ba0=await this['getPrettierFormatter']();if(!_0xe75ba0[_0x588215(0x23f)](_0x2e9939))return{'file':this[_0x588215(0x21c)]['createRelativePath'](_0x2e9939,_0x44b21b),'fullPath':_0x2e9939,'action':'format','formatted':![],'skipped':!![],'skipReason':'File\x20type\x20not\x20supported\x20by\x20Prettier'};const _0x299510=await _0xe75ba0['format'](_0x2e9939,_0x1c4f20,{'workingDir':_0x521632,'accessConfig':_0x44b21b});return _0x16ad9e[_0x588215(0x25f)]&&_0x299510['formatted']&&(await a0_0x16b9f4[_0x588215(0x25f)](_0x2e9939,_0x299510[_0x588215(0x24e)],'utf-8'),this[_0x588215(0x211)]?.['info']('File\x20formatted\x20and\x20written',{'file':_0x2e9939})),{'file':this['directoryAccessManager'][_0x588215(0x278)](_0x2e9939,_0x44b21b),'fullPath':_0x2e9939,'action':_0x588215(0x276),'formatted':_0x299510['formatted'],'linesChanged':_0x299510[_0x588215(0x1f9)],'changes':_0x299510[_0x588215(0x28b)],'written':!!(_0x16ad9e['writeFile']&&_0x299510['formatted']),'preview':!_0x16ad9e[_0x588215(0x25f)]&&_0x299510['formatted']?_0x299510['content']:undefined};}catch(_0x41e631){throw new Error('Failed\x20to\x20format\x20'+_0x554f65+':\x20'+_0x41e631[_0x588215(0x26b)]);}}async[a0_0x499fab(0x1c7)](_0x16e2c9,_0x19bd2f,_0x155850,_0x20f6cf={}){const _0x3efca9=a0_0x499fab,_0x2a1f02=a0_0x3d71ac[_0x3efca9(0x1ba)](_0x16e2c9)?a0_0x3d71ac['normalize'](_0x16e2c9):a0_0x3d71ac['resolve'](_0x19bd2f,_0x16e2c9),_0x295b7e=this['directoryAccessManager']['validateReadAccess'](_0x2a1f02,_0x155850);if(!_0x295b7e['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x295b7e['reason']);try{const _0x2081fc=await a0_0x16b9f4[_0x3efca9(0x21b)](_0x2a1f02);if(_0x2081fc['size']>this['maxFileSize'])throw new Error(_0x3efca9(0x297)+_0x2081fc[_0x3efca9(0x1d1)]+'\x20bytes\x20(max\x20'+this[_0x3efca9(0x24f)]+')');const _0x140409=this[_0x3efca9(0x292)](_0x2a1f02);if(!_0x140409||![_0x3efca9(0x293),_0x3efca9(0x1fd),'python']['includes'](_0x140409))return{'file':this['directoryAccessManager'][_0x3efca9(0x278)](_0x2a1f02,_0x155850),'fullPath':_0x2a1f02,'language':_0x140409||_0x3efca9(0x201),'issues':[],'skipped':!![],'skipReason':_0x3efca9(0x245)};const _0x211341=await a0_0x16b9f4[_0x3efca9(0x239)](_0x2a1f02,'utf-8'),_0x763fcf=await this[_0x3efca9(0x1fe)](),_0x1d1fb2=await _0x763fcf[_0x3efca9(0x284)](_0x2a1f02,_0x211341,{'skipTestFiles':_0x20f6cf['skipTestFiles']!==![]}),_0x193391={'file':this[_0x3efca9(0x21c)]['createRelativePath'](_0x2a1f02,_0x155850),'fullPath':_0x2a1f02,'language':_0x140409,'action':_0x3efca9(0x1b6),'critical':_0x1d1fb2['filter'](_0x22ee1f=>_0x22ee1f[_0x3efca9(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x3efca9(0x294)]),'errors':_0x1d1fb2['filter'](_0x360b64=>_0x360b64['severity']===STATIC_ANALYSIS[_0x3efca9(0x262)][_0x3efca9(0x268)]),'warnings':_0x1d1fb2[_0x3efca9(0x1de)](_0x5a587c=>_0x5a587c[_0x3efca9(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x3efca9(0x253)]),'info':_0x1d1fb2['filter'](_0x1e6a38=>_0x1e6a38[_0x3efca9(0x288)]===STATIC_ANALYSIS[_0x3efca9(0x262)][_0x3efca9(0x1c3)]),'totalIssues':_0x1d1fb2[_0x3efca9(0x20b)],'analyzed':!![],'scannersUsed':_0x1d1fb2['map'](_0x1f4d25=>_0x1f4d25['scanner'])[_0x3efca9(0x1de)]((_0x43650d,_0x55c43d,_0x4ac90d)=>_0x4ac90d[_0x3efca9(0x243)](_0x43650d)===_0x55c43d),'timestamp':new Date()[_0x3efca9(0x1cc)]()};return _0x193391;}catch(_0x7e2161){throw new Error('Failed\x20to\x20security\x20scan\x20'+_0x16e2c9+':\x20'+_0x7e2161[_0x3efca9(0x26b)]);}}async['securityScanProject'](_0x3c459e,_0x2b111c,_0x4011ca,_0x125003,_0x56707a={}){const _0x54a747=a0_0x499fab,_0x22e8e5=a0_0x3d71ac['isAbsolute'](_0x3c459e)?a0_0x3d71ac[_0x54a747(0x1dd)](_0x3c459e):a0_0x3d71ac['resolve'](_0x4011ca,_0x3c459e),_0x118b14=this[_0x54a747(0x21c)][_0x54a747(0x207)](_0x22e8e5,_0x125003);if(!_0x118b14[_0x54a747(0x1cf)])throw new Error(_0x54a747(0x223)+_0x118b14[_0x54a747(0x226)]);const _0x5511f4=await this[_0x54a747(0x1fe)](),_0x151592=await _0x5511f4['analyzeProject'](_0x22e8e5,_0x54a747(0x293),_0x56707a),_0x2f1e8b=_0x2b111c||'**/*.{js,jsx,mjs,cjs,ts,tsx,py}',_0x13eb90=await this['findFiles'](_0x22e8e5,_0x2f1e8b);if(_0x13eb90[_0x54a747(0x20b)]>this[_0x54a747(0x261)])throw new Error(_0x54a747(0x1ee)+_0x13eb90['length']+_0x54a747(0x20c)+this['maxFilesPerBatch']+')');const _0x13c7f7=[];if(this[_0x54a747(0x216)]&&_0x13eb90[_0x54a747(0x20b)]>0x1){this[_0x54a747(0x211)]?.[_0x54a747(0x220)]('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x13eb90[_0x54a747(0x20b)],'batchSize':this['maxParallelFiles']});for(let _0xd532c=0x0;_0xd532c<_0x13eb90['length'];_0xd532c+=this[_0x54a747(0x270)]){const _0x40ae20=_0x13eb90['slice'](_0xd532c,_0xd532c+this[_0x54a747(0x270)]);_0x56707a[_0x54a747(0x218)]&&_0x56707a[_0x54a747(0x218)]({'completed':_0xd532c,'total':_0x13eb90['length'],'percentage':Math[_0x54a747(0x210)](_0xd532c/_0x13eb90[_0x54a747(0x20b)]*0x64)});const _0x24164e=_0x40ae20['map'](async _0x1887ed=>{const _0x23d822=_0x54a747;try{return await this['securityScanFile'](_0x1887ed,_0x4011ca,_0x125003,_0x56707a);}catch(_0x2c2a29){return this[_0x23d822(0x211)]?.['warn'](_0x23d822(0x1c1),{'file':_0x1887ed,'error':_0x2c2a29[_0x23d822(0x26b)]}),{'file':this['directoryAccessManager'][_0x23d822(0x278)](_0x1887ed,_0x125003),'fullPath':_0x1887ed,'error':_0x2c2a29['message'],'success':![]};}}),_0x3e3880=await Promise['all'](_0x24164e);_0x13c7f7[_0x54a747(0x1b8)](..._0x3e3880['filter'](_0x4ed29a=>_0x4ed29a!==null));}_0x56707a['onProgress']&&_0x56707a['onProgress']({'completed':_0x13eb90[_0x54a747(0x20b)],'total':_0x13eb90[_0x54a747(0x20b)],'percentage':0x64});}else for(const _0x2b7956 of _0x13eb90){try{const _0x7f4526=await this[_0x54a747(0x1c7)](_0x2b7956,_0x4011ca,_0x125003,_0x56707a);_0x7f4526&&_0x13c7f7[_0x54a747(0x1b8)](_0x7f4526);}catch(_0x456e7){this[_0x54a747(0x211)]?.['warn']('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x2b7956,'error':_0x456e7[_0x54a747(0x26b)]}),_0x13c7f7[_0x54a747(0x1b8)]({'file':this[_0x54a747(0x21c)]['createRelativePath'](_0x2b7956,_0x125003),'fullPath':_0x2b7956,'error':_0x456e7[_0x54a747(0x26b)],'success':![]});}}return _0x151592['length']>0x0&&_0x13c7f7[_0x54a747(0x1b8)]({'file':a0_0x3d71ac['join'](_0x22e8e5,'package.json'),'fullPath':a0_0x3d71ac[_0x54a747(0x241)](_0x22e8e5,'package.json'),'action':'dependency-scan','critical':_0x151592['filter'](_0x213bd3=>_0x213bd3['severity']===STATIC_ANALYSIS[_0x54a747(0x262)][_0x54a747(0x294)]),'errors':_0x151592[_0x54a747(0x1de)](_0x1c9117=>_0x1c9117['severity']===STATIC_ANALYSIS[_0x54a747(0x262)]['ERROR']),'warnings':_0x151592[_0x54a747(0x1de)](_0x123af3=>_0x123af3[_0x54a747(0x288)]===STATIC_ANALYSIS[_0x54a747(0x262)]['WARNING']),'info':_0x151592[_0x54a747(0x1de)](_0x2e2eec=>_0x2e2eec[_0x54a747(0x288)]===STATIC_ANALYSIS[_0x54a747(0x262)]['INFO']),'totalIssues':_0x151592['length'],'analyzed':!![],'scannersUsed':[_0x54a747(0x227)],'timestamp':new Date()['toISOString']()}),_0x13c7f7;}async[a0_0x499fab(0x1b4)](_0x5bf2ab,_0xb46573,_0x597ee1,_0x147716={}){const _0x2cd8cd=a0_0x499fab,_0x8abee8=a0_0x3d71ac[_0x2cd8cd(0x1ba)](_0x5bf2ab)?a0_0x3d71ac[_0x2cd8cd(0x1dd)](_0x5bf2ab):a0_0x3d71ac['resolve'](_0xb46573,_0x5bf2ab),_0x170cbf=this[_0x2cd8cd(0x21c)][_0x2cd8cd(0x207)](_0x8abee8,_0x597ee1);if(!_0x170cbf[_0x2cd8cd(0x1cf)])throw new Error(_0x2cd8cd(0x223)+_0x170cbf['reason']);try{const _0x116833=await a0_0x16b9f4[_0x2cd8cd(0x21b)](_0x8abee8);if(_0x116833[_0x2cd8cd(0x1d1)]>this['maxFileSize'])throw new Error(_0x2cd8cd(0x297)+_0x116833[_0x2cd8cd(0x1d1)]+_0x2cd8cd(0x1bc)+this['maxFileSize']+')');const _0x2f1db3=await this['getConfigValidator'](),_0x16dfc4=await _0x2f1db3['validate'](_0x8abee8,_0x147716),_0x5dec5d={'file':this[_0x2cd8cd(0x21c)]['createRelativePath'](_0x8abee8,_0x597ee1),'fullPath':_0x8abee8,'action':'validate-config','critical':_0x16dfc4['filter'](_0xee5d8c=>_0xee5d8c[_0x2cd8cd(0x288)]===STATIC_ANALYSIS[_0x2cd8cd(0x262)][_0x2cd8cd(0x294)]),'errors':_0x16dfc4['filter'](_0x170816=>_0x170816['severity']===STATIC_ANALYSIS['SEVERITY'][_0x2cd8cd(0x268)]),'warnings':_0x16dfc4[_0x2cd8cd(0x1de)](_0x3e82df=>_0x3e82df[_0x2cd8cd(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x2cd8cd(0x253)]),'info':_0x16dfc4[_0x2cd8cd(0x1de)](_0x150a50=>_0x150a50['severity']===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x16dfc4[_0x2cd8cd(0x20b)],'analyzed':!![],'validatorsUsed':_0x16dfc4[_0x2cd8cd(0x265)](_0x47181e=>_0x47181e[_0x2cd8cd(0x215)])['filter']((_0x573bb7,_0x29b463,_0x218ffd)=>_0x218ffd[_0x2cd8cd(0x243)](_0x573bb7)===_0x29b463),'timestamp':new Date()[_0x2cd8cd(0x1cc)]()};return _0x5dec5d;}catch(_0x5a1836){throw new Error(_0x2cd8cd(0x1c2)+_0x5bf2ab+':\x20'+_0x5a1836['message']);}}async['validateConfigDirectory'](_0x488238,_0x34c65c,_0x39d2d3,_0x59fefa={}){const _0x1d6299=a0_0x499fab,_0x207a11=a0_0x3d71ac[_0x1d6299(0x1ba)](_0x488238)?a0_0x3d71ac[_0x1d6299(0x1dd)](_0x488238):a0_0x3d71ac['resolve'](_0x34c65c,_0x488238),_0x1b4317=this[_0x1d6299(0x21c)]['validateReadAccess'](_0x207a11,_0x39d2d3);if(!_0x1b4317['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x1b4317[_0x1d6299(0x226)]);const _0x494bca=await this[_0x1d6299(0x27c)](_0x207a11);if(_0x494bca['length']>this['maxFilesPerBatch'])throw new Error(_0x1d6299(0x25e)+_0x494bca['length']+_0x1d6299(0x20c)+this['maxFilesPerBatch']+')');const _0x259bcc=[];for(const _0x5ee7a7 of _0x494bca){try{const _0x144d6d=await this['validateConfigFile'](_0x5ee7a7,_0x34c65c,_0x39d2d3,_0x59fefa);_0x144d6d&&_0x259bcc[_0x1d6299(0x1b8)](_0x144d6d);}catch(_0x589354){this[_0x1d6299(0x211)]?.[_0x1d6299(0x250)](_0x1d6299(0x21e),{'file':_0x5ee7a7,'error':_0x589354[_0x1d6299(0x26b)]}),_0x259bcc['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x5ee7a7,_0x39d2d3),'fullPath':_0x5ee7a7,'error':_0x589354[_0x1d6299(0x26b)],'success':![]});}}return _0x259bcc;}async[a0_0x499fab(0x27c)](_0xdb8e30){const _0x51e3a1=a0_0x499fab,_0x52e11c=[],_0xa4cadd=['package.json','tsconfig.json','Dockerfile','docker-compose.yml',_0x51e3a1(0x1c4),'.env','.env.example',_0x51e3a1(0x269),_0x51e3a1(0x236),'.prettierrc',_0x51e3a1(0x1db)],_0x57d625=[_0x51e3a1(0x274),'.yaml','.json','.tf',_0x51e3a1(0x1dc)],_0x5c838d=async _0x20e73b=>{const _0x4fc02d=_0x51e3a1,_0x320507=await a0_0x16b9f4['readdir'](_0x20e73b,{'withFileTypes':!![]});for(const _0xb64232 of _0x320507){const _0x57c0c7=a0_0x3d71ac['join'](_0x20e73b,_0xb64232['name']);if(_0xb64232['isDirectory']()){if(_0xb64232[_0x4fc02d(0x1b3)]==='.github'||_0xb64232[_0x4fc02d(0x1b3)]==='kubernetes'||_0xb64232['name']==='k8s'||_0xb64232[_0x4fc02d(0x1b3)]==='terraform')await _0x5c838d(_0x57c0c7);else{if(!['node_modules','.git','dist','build']['includes'](_0xb64232['name']))continue;}}else{if(_0xb64232[_0x4fc02d(0x1f5)]()){if(_0xa4cadd['includes'](_0xb64232['name']))_0x52e11c[_0x4fc02d(0x1b8)](_0x57c0c7);else{const _0x5482c2=a0_0x3d71ac[_0x4fc02d(0x287)](_0xb64232[_0x4fc02d(0x1b3)])[_0x4fc02d(0x1c0)]();if(_0x57d625[_0x4fc02d(0x1ec)](_0x5482c2)){const _0x293250=a0_0x3d71ac[_0x4fc02d(0x23c)](a0_0x3d71ac['dirname'](_0x57c0c7));(_0x293250===_0x4fc02d(0x1d4)||_0x293250==='k8s'||_0x293250==='terraform'||_0x293250==='workflows')&&_0x52e11c[_0x4fc02d(0x1b8)](_0x57c0c7);}}}}}};return await _0x5c838d(_0xdb8e30),_0x52e11c;}[a0_0x499fab(0x292)](_0x143d56){const _0xa31d8c=a0_0x499fab,_0x1d70c1=a0_0x3d71ac['extname'](_0x143d56)[_0xa31d8c(0x1c0)]();return STATIC_ANALYSIS[_0xa31d8c(0x23e)][_0x1d70c1]||null;}async[a0_0x499fab(0x1ef)](_0x594615,_0x2c3fc8){const _0x2a2129=a0_0x499fab;try{if(_0x2c3fc8===STATIC_ANALYSIS['LANGUAGE']['JAVASCRIPT']||_0x2c3fc8===STATIC_ANALYSIS['LANGUAGE'][_0x2a2129(0x22f)])return await this['detectJSFramework'](_0x594615);if(_0x2c3fc8===STATIC_ANALYSIS[_0x2a2129(0x233)][_0x2a2129(0x263)])return await this['detectPythonFramework'](_0x594615);return null;}catch(_0x4e2fb2){return this[_0x2a2129(0x211)]?.[_0x2a2129(0x220)](_0x2a2129(0x21a),{'error':_0x4e2fb2[_0x2a2129(0x26b)]}),null;}}async[a0_0x499fab(0x23a)](_0x4fdc50){const _0x51c149=a0_0x499fab;try{const _0x1da281=a0_0x3d71ac['join'](_0x4fdc50,STATIC_ANALYSIS[_0x51c149(0x1d9)][_0x51c149(0x24b)]),_0x2ffcbd=await a0_0x16b9f4['readFile'](_0x1da281,'utf-8'),_0x120649=JSON[_0x51c149(0x24d)](_0x2ffcbd),_0x498beb={..._0x120649[_0x51c149(0x1bb)],..._0x120649[_0x51c149(0x217)]};for(const [_0xae8228,_0x463ab3]of Object[_0x51c149(0x285)](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x498beb[_0x463ab3])return _0xae8228[_0x51c149(0x1c0)]();}return null;}catch(_0x4a3b63){return null;}}async[a0_0x499fab(0x21d)](_0x50203a){const _0x514178=a0_0x499fab;try{const _0x740ae6=a0_0x3d71ac['join'](_0x50203a,STATIC_ANALYSIS[_0x514178(0x1d9)][_0x514178(0x263)]),_0x458a02=await a0_0x16b9f4['readFile'](_0x740ae6,_0x514178(0x26a));for(const [_0x3829b4,_0x19368e]of Object[_0x514178(0x285)](STATIC_ANALYSIS[_0x514178(0x1e9)])){if(_0x458a02[_0x514178(0x1c0)]()[_0x514178(0x1ec)](_0x19368e))return _0x3829b4['toLowerCase']();}return null;}catch(_0x5bfa0a){try{const _0x238a2f=a0_0x3d71ac['join'](_0x50203a,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON_POETRY']),_0x296ca3=await a0_0x16b9f4[_0x514178(0x239)](_0x238a2f,'utf-8');for(const [_0xce292b,_0x459f59]of Object['entries'](STATIC_ANALYSIS[_0x514178(0x1e9)])){if(_0x296ca3[_0x514178(0x1c0)]()['includes'](_0x459f59))return _0xce292b['toLowerCase']();}}catch{}return null;}}async['findFiles'](_0x1cc5da,_0x551885){const _0x264fb4=a0_0x499fab,_0x2f9334=[],_0x46720a=_0x551885||_0x264fb4(0x27a),_0x33433e=_0x3b763a=>{const _0x53ad8a=_0x264fb4,_0x211cff=[],_0x4b136a=_0x3b763a['match'](/\*\.\{([^}]+)\}/);if(_0x4b136a){const _0x8e9f0e=_0x4b136a[0x1][_0x53ad8a(0x1fb)](',')[_0x53ad8a(0x265)](_0x5cdee2=>_0x5cdee2[_0x53ad8a(0x1f7)]());_0x8e9f0e[_0x53ad8a(0x1ea)](_0x500256=>_0x211cff[_0x53ad8a(0x1b8)](_0x500256[_0x53ad8a(0x286)]('.')?_0x500256:'.'+_0x500256));}else{const _0x440820=_0x3b763a[_0x53ad8a(0x26f)](/\*\.([a-z]+)$/i);if(_0x440820){const _0x2d74de=_0x440820[0x1];_0x211cff['push'](_0x2d74de[_0x53ad8a(0x286)]('.')?_0x2d74de:'.'+_0x2d74de);}}if(_0x211cff[_0x53ad8a(0x20b)]===0x0)return null;return _0x211cff;},_0x289158=_0x33433e(_0x46720a),_0x184fb4=async _0x378587=>{const _0x69769f=_0x264fb4,_0x3e977a=await a0_0x16b9f4[_0x69769f(0x25b)](_0x378587,{'withFileTypes':!![]});for(const _0x2c816c of _0x3e977a){const _0x5bcb1b=a0_0x3d71ac[_0x69769f(0x241)](_0x378587,_0x2c816c['name']);if(_0x2c816c[_0x69769f(0x1b5)]())![_0x69769f(0x225),_0x69769f(0x1d6),'dist',_0x69769f(0x22b),_0x69769f(0x289),'.venv','venv'][_0x69769f(0x1ec)](_0x2c816c[_0x69769f(0x1b3)])&&await _0x184fb4(_0x5bcb1b);else{if(_0x2c816c[_0x69769f(0x1f5)]()){const _0x1bcdd7=a0_0x3d71ac[_0x69769f(0x287)](_0x2c816c[_0x69769f(0x1b3)])[_0x69769f(0x1c0)]();STATIC_ANALYSIS[_0x69769f(0x23e)][_0x1bcdd7]&&((_0x289158===null||_0x289158['includes'](_0x1bcdd7))&&_0x2f9334[_0x69769f(0x1b8)](_0x5bcb1b));}}}};return await _0x184fb4(_0x1cc5da),_0x2f9334;}async['getAnalyzer'](_0x118484){const _0x1f184f=a0_0x499fab;try{if(_0x118484===STATIC_ANALYSIS[_0x1f184f(0x233)][_0x1f184f(0x24b)]){if(!this[_0x1f184f(0x20d)]['javascript']){const {default:_0x4640dc}=await import('../analyzers/JavaScriptAnalyzer.js');this['analyzers'][_0x1f184f(0x293)]=new _0x4640dc(this['logger']);}return this[_0x1f184f(0x20d)]['javascript'];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT']){if(!this[_0x1f184f(0x20d)][_0x1f184f(0x1fd)]){const {default:_0x1f25df}=await import(_0x1f184f(0x249));this['analyzers'][_0x1f184f(0x1fd)]=new _0x1f25df(this['logger']);}return this['analyzers']['typescript'];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE'][_0x1f184f(0x263)]){if(!this['analyzers']['python']){const {default:_0x36a4d1}=await import('../analyzers/PythonAnalyzer.js');this['analyzers'][_0x1f184f(0x24c)]=new _0x36a4d1(this['logger']);}return this[_0x1f184f(0x20d)][_0x1f184f(0x24c)];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE']['CSS']||_0x118484===STATIC_ANALYSIS['LANGUAGE'][_0x1f184f(0x22d)]||_0x118484===STATIC_ANALYSIS['LANGUAGE']['LESS']){if(!this['analyzers']['css']){const {default:_0x3b47ff}=await import(_0x1f184f(0x200));this[_0x1f184f(0x20d)][_0x1f184f(0x219)]=new _0x3b47ff(this['logger']);}return this['analyzers'][_0x1f184f(0x219)];}return null;}catch(_0x5e5a5d){return this['logger']?.[_0x1f184f(0x1e7)](_0x1f184f(0x22a),{'language':_0x118484,'error':_0x5e5a5d[_0x1f184f(0x26b)]}),null;}}async['getESLintAnalyzer'](){const _0x1205cc=a0_0x499fab;if(!this['analyzers']['eslint']){const {default:_0xea7973}=await import(_0x1205cc(0x25c));this['analyzers']['eslint']=new _0xea7973(this['logger']);}return this['analyzers'][_0x1205cc(0x26e)];}async[a0_0x499fab(0x1f6)](){const _0x4e5a19=a0_0x499fab;if(!this['formatters'][_0x4e5a19(0x1f4)]){const {default:_0x9028a3}=await import(_0x4e5a19(0x1da));this[_0x4e5a19(0x23b)]['prettier']=new _0x9028a3(this['logger']);}return this['formatters']['prettier'];}async[a0_0x499fab(0x1fe)](){const _0x3cbc48=a0_0x499fab;if(!this[_0x3cbc48(0x20d)]['security']){const {default:_0x400e5a}=await import(_0x3cbc48(0x209));this[_0x3cbc48(0x20d)][_0x3cbc48(0x230)]=new _0x400e5a(this[_0x3cbc48(0x211)]);}return this[_0x3cbc48(0x20d)][_0x3cbc48(0x230)];}async['getConfigValidator'](){const _0x393d5d=a0_0x499fab;if(!this['analyzers']['config']){const {default:_0x587b1c}=await import('../analyzers/ConfigValidator.js');this['analyzers']['config']=new _0x587b1c(this['logger']);}return this[_0x393d5d(0x20d)][_0x393d5d(0x244)];}['updateSummary'](_0x3ebfa8,_0xb21778){const _0x1aca4f=a0_0x499fab;if(_0xb21778['analyzed']){_0x3ebfa8['totalFiles']++;const _0x39477c=_0xb21778['critical']?.['length']||0x0,_0x8b4656=_0xb21778['errors']?.[_0x1aca4f(0x20b)]||0x0,_0x67139d=_0xb21778['warnings']?.[_0x1aca4f(0x20b)]||0x0,_0x2880fc=_0xb21778['info']?.['length']||0x0;_0x3ebfa8['totalCritical']===undefined&&(_0x3ebfa8[_0x1aca4f(0x234)]=0x0);_0x3ebfa8['totalCritical']+=_0x39477c,_0x3ebfa8['totalErrors']+=_0x8b4656,_0x3ebfa8['totalWarnings']+=_0x67139d,_0x3ebfa8['totalInfo']+=_0x2880fc;(_0x39477c>0x0||_0x8b4656>0x0)&&_0x3ebfa8[_0x1aca4f(0x205)]++;_0xb21778[_0x1aca4f(0x1d5)]&&(_0x3ebfa8[_0x1aca4f(0x1e4)][_0xb21778[_0x1aca4f(0x1d5)]]=(_0x3ebfa8['filesByLanguage'][_0xb21778['language']]||0x0)+0x1);const _0xe8245d=[..._0xb21778[_0x1aca4f(0x25a)]||[],..._0xb21778['errors']||[],..._0xb21778['warnings']||[]];for(const _0x1c6337 of _0xe8245d){_0x1c6337[_0x1aca4f(0x273)]&&(_0x3ebfa8['errorsByCategory'][_0x1c6337[_0x1aca4f(0x273)]]=(_0x3ebfa8['errorsByCategory'][_0x1c6337[_0x1aca4f(0x273)]]||0x0)+0x1);}}}['computeContentHash'](_0x3b523b){const _0x599703=a0_0x499fab;return a0_0x45b761[_0x599703(0x252)](_0x599703(0x24a))[_0x599703(0x1e5)](_0x3b523b)[_0x599703(0x1ce)]('hex')['substring'](0x0,0x10);}[a0_0x499fab(0x232)](){const _0x3c85f4=a0_0x499fab,_0x4572cd=this['metrics']['totalAnalyses']>0x0?this['metrics']['cacheHits']/this['metrics']['totalAnalyses']*0x64:0x0,_0x243a0c=this[_0x3c85f4(0x1c8)]['filesAnalyzed']>0x0?this['metrics']['totalAnalysisTime']/this[_0x3c85f4(0x1c8)][_0x3c85f4(0x1f0)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0x4572cd*0xa)/0xa,'averageAnalysisTime':Math['round'](_0x243a0c),'cacheSize':this[_0x3c85f4(0x1e8)][_0x3c85f4(0x1d1)]};}[a0_0x499fab(0x1f1)](){const _0x109d00=a0_0x499fab;this[_0x109d00(0x1c8)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}[a0_0x499fab(0x296)](){const _0x12e66a=a0_0x499fab;this[_0x12e66a(0x1e8)]['clear'](),this[_0x12e66a(0x211)]?.[_0x12e66a(0x220)]('Analysis\x20cache\x20cleared');}['getSupportedActions'](){const _0x2306cb=a0_0x499fab;return['analyze',_0x2306cb(0x229),'fix','format',_0x2306cb(0x1b6),_0x2306cb(0x1c6),_0x2306cb(0x1b9),_0x2306cb(0x1f2)];}['getParameterSchema'](){const _0x39b7bd=a0_0x499fab;return{'type':'object','properties':{'actions':{'type':_0x39b7bd(0x266),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':_0x39b7bd(0x1d2)},'directory':{'type':'string'},'pattern':{'type':'string'},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':['type']}}},'required':[_0x39b7bd(0x1bd)]};}}export default StaticAnalysisTool;