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

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-lCBai6dX.js → index-CX8ZfpGw.js} +113 -60
  119. package/web-ui/build/static/index-Dwg_JrlO.css +1 -0
  120. package/web-ui/build/static/index-CClD1090.css +0 -1
@@ -1 +1 @@
1
- function a0_0x4111(_0x536559,_0x5c9e1e){_0x536559=_0x536559-0x11e;const _0x32a223=a0_0x32a2();let _0x411168=_0x32a223[_0x536559];if(a0_0x4111['BCxmMi']===undefined){var _0x207992=function(_0x32b50d){const _0x4b0f72='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x24565a='',_0xfba496='';for(let _0x16bae8=0x0,_0x2735db,_0x280fad,_0x20ed74=0x0;_0x280fad=_0x32b50d['charAt'](_0x20ed74++);~_0x280fad&&(_0x2735db=_0x16bae8%0x4?_0x2735db*0x40+_0x280fad:_0x280fad,_0x16bae8++%0x4)?_0x24565a+=String['fromCharCode'](0xff&_0x2735db>>(-0x2*_0x16bae8&0x6)):0x0){_0x280fad=_0x4b0f72['indexOf'](_0x280fad);}for(let _0x4eeea6=0x0,_0x55d2cc=_0x24565a['length'];_0x4eeea6<_0x55d2cc;_0x4eeea6++){_0xfba496+='%'+('00'+_0x24565a['charCodeAt'](_0x4eeea6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xfba496);};a0_0x4111['eeZycW']=_0x207992,a0_0x4111['ofQDtq']={},a0_0x4111['BCxmMi']=!![];}const _0x5e986c=_0x32a223[0x0],_0x20d298=_0x536559+_0x5e986c,_0x4d50b6=a0_0x4111['ofQDtq'][_0x20d298];return!_0x4d50b6?(_0x411168=a0_0x4111['eeZycW'](_0x411168),a0_0x4111['ofQDtq'][_0x20d298]=_0x411168):_0x411168=_0x4d50b6,_0x411168;}const a0_0xd42814=a0_0x4111;(function(_0x1c37dd,_0x4a412f){const _0x524574=a0_0x4111,_0x1b4623=_0x1c37dd();while(!![]){try{const _0x3fb63c=-parseInt(_0x524574(0x177))/0x1*(parseInt(_0x524574(0x148))/0x2)+parseInt(_0x524574(0x19f))/0x3+parseInt(_0x524574(0x1a1))/0x4+parseInt(_0x524574(0x142))/0x5+parseInt(_0x524574(0x162))/0x6+-parseInt(_0x524574(0x18f))/0x7+-parseInt(_0x524574(0x172))/0x8*(parseInt(_0x524574(0x15b))/0x9);if(_0x3fb63c===_0x4a412f)break;else _0x1b4623['push'](_0x1b4623['shift']());}catch(_0x52ef7f){_0x1b4623['push'](_0x1b4623['shift']());}}}(a0_0x32a2,0x1fa2b));function a0_0x32a2(){const _0x256ddd=['AxnbyNnVBhv0zq','icHUB3qGysbYzwD1BgfYigzPBguP','C3bSAxq','lNbUzW','lNbKzG','lMnVBMy','twf4Aw11BsbKAxjLy3rVCNKGzgvWDgGGCMvHy2HLza','C2HVDwXKu2TPCerPCMvJDg9YEq','u2vHCMnOihrLCM06ici','zxjYB3jgAwXLCW','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','BgLUzunVBNrLBNq','BwfW','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','lMjPBG','lNrZ','tufyx0zjtevFu0LArq','kIOV','lNnHC3m','lMXVzW','rKLmrvmGtK9uiezpvu5eoGO','lNPPCa','tufyx0zjtevtx1bfuL9trufsq0G','zMLUzezPBgvZuMvJDxjZAxzLBhK','BwLU','CMvXDwLYzxnqCM9Qzwn0','lMLUAq','Bwf4','C3vIC3rYAw5N','lNnJC3m','zMLSzvbHDgG','lMPZB24','CgfYC2u','BgLUzu51BwjLCG','zxHLyW','Bwf0y2HLC0j5vgvYBq','z2v0rgvZy3jPChrPB24','zxjYB3i','lM1VDG','zxHWyw5Kr2XVyLbHDhrLCM4','rxHLy3v0Aw5NihnLzwSGDg9VBa','CMvZB2X2zq','Aw5JBhvKzxm','ntu2odq1uufOugvd','icHUBYbTyxrJAgLUzYbMAwXLCYK','twf4Aw11Bsb0B3rHBcbTyxrJAgvZihjLywnOzwq','AxnqyxrOqwnJzxnZAwjSzq','lNrVBwW','Bwf0y2HLCW','mJq0zenMqxDA','ChvZAa','cLnLzwSGvg9VBdOGu2vHCMnOigzVCIbZCgvJAwzPyYbJB250zw50ihDPDgHPBIbWCM9Qzwn0igzPBgvZlIbiAwDOBhKGCMvJB21Tzw5KzwqGzM9YihzLCMLMEwLUzYbPBxbVCNrZlcbMDw5JDgLVBIb1C2fNzsWGyw5KihzHCMLHyMXLihjLzMvYzw5JzxmUcGPytuWGvvnbr0u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGigzPBguVCgf0Ac9VBMuUANmkicaGigzPBguVCgf0Ac90D28UANmkicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+C2vHCMnOihbOCMfZzsbVBMu8l3rLCM0+cIaGica8DgvYBt5ZzwfYy2GGCgHYyxnLihr3BZWVDgvYBt4kicaGidX0zxjTpNnLyxjJAcbWAhjHC2uGDgHYzwu8l3rLCM0+cIaGpc9ZzwfYy2GTDgvYBxm+cJWVC2vLAZ4kcKPtt04Gvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaIC2vLAYiScIaGiMzPBgvqyxrOCYi6ifSkicaGicjZCMmVy29TCg9Uzw50CY9izwfKzxiUANmIlaOGicaGiNnYyY91DgLSCY8QlMPZiIWkicaGicjZCMmVkIOVkI5QC3GIcIaGxsWkicaIC2vHCMnOvgvYBxmIoIbBcIaGicaIAw1WB3j0ifjLywn0iIWkicaGicj1C2vtDgf0zsiScIaGicaIzNvUy3rPB24GAgfUzgXLu3vIBwL0iGOGif0kFqPGygakcLnvufbpuLrfrcbhte9cifbbvfrfuK5toGOTicOUANmGicaGicaGicaGic0GqwXSic5QCYbMAwXLCYbPBIbHigrPCMvJDg9YEqOTicOQlYOUANmGicaGicaGic0GqwXSic5QCYbMAwXLCYbYzwn1CNnPDMvSEqOTihnYyY8QkI8QlMPZEcaGic0GqwXSic5QC3GGzMLSzxmGDw5KzxiGC3jJlYbYzwn1CNnPDMvSEqOTignVBxbVBMvUDhmVkI4Qic0GqwXSigzPBgvZigLUignVBxbVBMvUDhmVcGPfwefnueXfuZOkcKv4yw1WBguGmsaTiezPBMqGzNvUy3rPB24GDxnHz2u6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY9JB21WB25LBNrZlYOUANmkicaGihnYyY91DgLSCY9OzwXWzxjZlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+zNvUy3rPB24GAgfUzgXLu3vIBwL0pc90zxjTpGOGicaGphrLCM0+DxnLu3rHDguOpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidiGlsbwzxjPzNKGAw1WB3j0CZOkphnLzwS+cIaGpgLUlwzPBgvZpGOGicaGC3jJl2nVBxbVBMvUDhmVsgvHzgvYlMPZcIaGicbZCMmVy29TCg9Uzw50CY9gB290zxiUANmkica8l2LUlwzPBgvZpGOGidXZzwfYy2GTDgvYBxm+cIaGica8DgvYBt5PBxbVCNqGuMvHy3q8l3rLCM0+cIaGica8DgvYBt5PBxbVCNqGEYb1C2vtDgf0zsb9pc90zxjTpGOGicaGphrLCM0+zNjVBsaNCMvHy3qNpc90zxjTpGOGidWVC2vHCMnOlxrLCM1ZpGO8l3nLzwS+cGPfEgfTCgXLidmGlsbgAw5KihzHCMLHyMXLihjLzMvYzw5Jzxm6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihnYyY8QkI8QlMPZcIaGpc9PBI1MAwXLCZ4kica8C2vHCMnOlxrLCM1ZpGOGicaGphrLCM0+yxbPq2XPzw50pc90zxjTpGOGicaGphrLCM0+y29UzMLNlMfWAvvYBdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrxHHBxbSzsa0ic0Gu2vHCMnOihnWzwnPzMLJigzPBgvZig9UBhK6cJXZzwvRpGOGidXPBI1MAwXLCZ4kicaGihbHy2THz2uUANnVBGOGicaGDhnJB25MAwCUANnVBGOGicaGlMDPDgLNBM9YzqOGidWVAw4TzMLSzxm+cIaGphnLyxjJAc10zxjTCZ4kicaGidX0zxjTpNjLywn0pc90zxjTpGOGicaGphrLCM0+DhLWzxnJCMLWDdWVDgvYBt4kica8l3nLyxjJAc10zxjTCZ4kpc9ZzwvRpGOkrKvbvfvsrvm6cI0Gu2vHCMnOzxmGzM9Yigv4ywn0ihn0CMLUzYbTyxrJAgvZicHJyxnLlxnLBNnPDgL2zsKklsbszxr1CM5ZigzPBguGCgf0AcWGBgLUzsbUDw1IzxiSigfUzcbSAw5LignVBNrLBNqGzM9YigvHy2GGBwf0y2GklsbtDxbWB3j0CYbNBg9IihbHDhrLCM5ZigzVCIbMBgv4AwjSzsbMAwXLihnLBgvJDgLVBGOTifnRAxbZigjPBMfYEsbMAwXLCYbHDxrVBwf0AwnHBgX5cI0GuMvWB3j0CYbMAwXLCYbUB3qGzM91BMqGyw5KigzPBgvZihDPDgGGzxjYB3jZcI0GtgLTAxrLzcb0BYa','AxnbCNjHEq','DgvYBq','zMLSzvbHDgHZ','lMf2Aq','AxneAxjLy3rVCNK','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','CMvHzgrPCG','lMXLC3m','xcqM','qMfZzsbKAxjLy3rVCNKGBM90igzVDw5KigzVCIbNBg9IihbHDhrLCM4','igzPBguOCYKUcG','BMfTzq','tM8GBwf0y2HLCYbMB3vUzcbMB3iGDgHLihnWzwnPzMLLzcbZzwfYy2GGDgvYBxmGAw4G','AxnbC3LUyW','zxnJyxbLuMvNrxHW','lNnXBgL0zq','nZa0ndaZrufsCM1o','uhjVAMvJDcbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLzwSGDg9VBa','lMDV','tuiSig1HEca','zMLSDgvY','rMfPBgvKihrVihjLywqGzMLSztOG','ywrK','nJqYnJaWvuLir1Lp','zM91BMq','CMvSyxrPDMu','lMH0BwW','zgLZDa','lNLTBa','tufyx1rpvefmx01bvenirvm','DhjPBq','Bwf0y2HLC1bHDhrLCM4','rMLSzsb0B28GBgfYz2uGka','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','D2fYBG','rMLSzsbWyxrOia','ic0G','DgvZDa','y2XLyw51Ca','mJrmsfnpB1a','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','icaTia','tufyx1nfqvjdsf9urvjnuW','zxH0BMfTzq','mZrXruPZAwK','CMvZB2X2zuzPBgvqyxrOCW','Aw5KzxHpzG','CM91BMq','D29YA2LUz0rPCMvJDg9YEq','lMHWCa','BgvUz3rO','tufyx0zjtevFuefusfm','C2vHCMnOsw5gAwXL','BwvZC2fNzq','tufyx01bvenirvnFuevsx0zjteu','zgLYBMfTzq','AgfZ','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','lNrHCG','zM9YBwf0uMvZDwX0CW','C2vLA0nVBMzPzW','zw50CMLLCW','Bg9Nz2vY','tufyx0rjuKvdve9swv9ervbusa','lM5LEhq','C2L6zq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','C2vHCMnOrMLSzxm','mJm4ndyYrK1QCLPi','lMr5BgLI','lNDTDG','rKLmrvmGv0LuscbfuLjpuLm6cG','lNHTBa','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','lNn2zW','Dg1W','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','C2vHCMnOvgvYBxm','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','C3rHCNrZv2L0Aa','tufyx0XjtKvFq09ovevovf9mru5hveG','BM90rM91BMq','qxqGBgvHC3qGB25LihnLyxjJAcb0zxjTigLZihjLCxvPCMvK','CMvWBgfJzq','ntiWmJaWt0X1seTm','C2HVDwXKu2TPCezPBgu','ndi5mdb1s3LOz1C','x19WEwnHy2HLx18','CMvHze9UBhLeAxjLy3rVCMLLCW','lMPZEa','C3rHDa','CgfYC2vqyxjHBwv0zxjZ','C3rYAw5N','DMvUzg9Y','lNPZAa','DxrMltG'];a0_0x32a2=function(){return _0x256ddd;};return a0_0x32a2();}import{BaseTool}from'./baseTool.js';import a0_0x24565a from'../utilities/tagParser.js';import{promises as a0_0xfba496}from'fs';import a0_0x16bae8 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=a0_0xd42814(0x1aa),BINARY_EXTENSIONS=new Set([a0_0xd42814(0x1ae),'.jpg','.jpeg','.gif','.bmp','.ico',a0_0xd42814(0x195),a0_0xd42814(0x1af),a0_0xd42814(0x12c),a0_0xd42814(0x185),'.gz','.rar','.7z','.exe','.dll','.so',a0_0xd42814(0x190),'.mp3','.mp4',a0_0xd42814(0x14e),a0_0xd42814(0x13d),a0_0xd42814(0x191),'.woff','.woff2','.ttf','.eot',a0_0xd42814(0x125),'.dat','.db',a0_0xd42814(0x15a)]);class SeekTool extends BaseTool{constructor(_0x2735db={},_0x280fad=null){const _0x4cceac=a0_0xd42814;super(_0x2735db,_0x280fad),this[_0x4cceac(0x130)]=!![],this[_0x4cceac(0x158)]=!![],this['timeout']=_0x2735db['timeout']||0x1d4c0,this['seekConfig']={...SEEK_CONFIG,..._0x2735db['seekConfig']};}[a0_0xd42814(0x13b)](){const _0x2acdaf=a0_0xd42814;return _0x2acdaf(0x14a)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG[_0x2acdaf(0x168)]+_0x2acdaf(0x184)+SEEK_CONFIG[_0x2acdaf(0x12d)]+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0x2acdaf(0x175)]+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Case-sensitive\x20search\x20only\x0a-\x20Exact\x20string\x20matching\x20(not\x20regex)\x0a-\x20Paths\x20outside\x20accessible\x20directories\x20will\x20be\x20reported\x20as\x20\x22not\x20found\x22\x0a\x20\x20\x20\x20';}[a0_0xd42814(0x1a6)](_0x20ed74){const _0x25467d=a0_0xd42814;try{if(_0x20ed74['trim']()['startsWith']('{')){const _0x589220=JSON[_0x25467d(0x137)](_0x20ed74);return{'filePaths':_0x589220[_0x25467d(0x14d)]||[],'searchTerms':_0x589220[_0x25467d(0x198)]||[]};}const _0x4eeea6={'filePaths':[],'searchTerms':[]},_0x55d2cc=/<in-files>([\s\S]*?)<\/in-files>/i,_0x28a790=_0x55d2cc[_0x25467d(0x139)](_0x20ed74);if(_0x28a790){const _0xe50aaa=_0x28a790[0x1];_0x4eeea6['filePaths']=_0xe50aaa[_0x25467d(0x1ad)]('\x0a')['map'](_0x658616=>_0x658616['trim']())[_0x25467d(0x15f)](_0x326139=>_0x326139[_0x25467d(0x17d)]>0x0);}const _0x193b27=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x3025f9=_0x193b27[_0x25467d(0x139)](_0x20ed74);if(_0x3025f9){const _0x3f93fb=_0x3025f9[0x1],_0x59a5d9=/<term>(.*?)<\/term>/gi;let _0x1c2bff;while((_0x1c2bff=_0x59a5d9[_0x25467d(0x139)](_0x3f93fb))!==null){const _0x53f81d=_0x1c2bff[0x1]['trim']();_0x53f81d[_0x25467d(0x17d)]>0x0&&_0x4eeea6['searchTerms']['push'](_0x53f81d);}}return _0x4eeea6;}catch(_0x229884){return this['logger']?.[_0x25467d(0x13c)]('Failed\x20to\x20parse\x20seek\x20parameters',{'error':_0x229884[_0x25467d(0x180)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x229884[_0x25467d(0x180)]};}}[a0_0xd42814(0x18d)](){return['filePaths','searchTerms'];}[a0_0xd42814(0x199)](_0x3b3da4){const _0x2f1391=a0_0xd42814,_0x48aec8=[];if(!_0x3b3da4[_0x2f1391(0x14d)]||!Array[_0x2f1391(0x14b)](_0x3b3da4['filePaths'])||_0x3b3da4['filePaths']['length']===0x0)_0x48aec8['push']('At\x20least\x20one\x20file\x20path\x20is\x20required');else _0x3b3da4['filePaths'][_0x2f1391(0x17d)]>this[_0x2f1391(0x187)][_0x2f1391(0x17e)]&&_0x48aec8['push']('Too\x20many\x20file\x20paths\x20(max\x20'+this[_0x2f1391(0x187)]['MAX_FILE_PATHS']+')');if(!_0x3b3da4[_0x2f1391(0x198)]||!Array[_0x2f1391(0x14b)](_0x3b3da4['searchTerms'])||_0x3b3da4[_0x2f1391(0x198)][_0x2f1391(0x17d)]===0x0)_0x48aec8['push'](_0x2f1391(0x19d));else _0x3b3da4[_0x2f1391(0x198)]['length']>this[_0x2f1391(0x187)][_0x2f1391(0x175)]&&_0x48aec8[_0x2f1391(0x149)]('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig'][_0x2f1391(0x175)]+')');if(_0x3b3da4['searchTerms']&&Array['isArray'](_0x3b3da4['searchTerms']))for(const [_0x3c4dc2,_0x8f7cc2]of _0x3b3da4['searchTerms'][_0x2f1391(0x188)]()){(typeof _0x8f7cc2!==_0x2f1391(0x1a7)||_0x8f7cc2[_0x2f1391(0x169)]()[_0x2f1391(0x17d)]===0x0)&&_0x48aec8['push']('Search\x20term\x20'+(_0x3c4dc2+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string');}if(_0x3b3da4[_0x2f1391(0x14d)]&&Array['isArray'](_0x3b3da4['filePaths']))for(const [_0x1752ef,_0x3c0f04]of _0x3b3da4['filePaths']['entries']()){(typeof _0x3c0f04!==_0x2f1391(0x1a7)||_0x3c0f04['trim']()[_0x2f1391(0x17d)]===0x0)&&_0x48aec8['push'](_0x2f1391(0x16e)+(_0x1752ef+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x3c0f04['includes']('..')&&_0x48aec8['push']('File\x20path\x20'+(_0x1752ef+0x1)+':\x20path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');}return{'valid':_0x48aec8['length']===0x0,'errors':_0x48aec8};}async['execute'](_0x394ce1,_0x54e5ed){const _0xdf8e5b=a0_0xd42814,{filePaths:_0x20e704,searchTerms:_0x30c5d5}=_0x394ce1,{projectDir:_0x5db963,agentId:_0x27833c,directoryAccess:_0xbeb10c}=_0x54e5ed;let _0x3f6134=_0x5db963||process['cwd'](),_0x541ea0=[_0x3f6134];_0xbeb10c&&_0xbeb10c['workingDirectory']&&(_0x3f6134=_0xbeb10c[_0xdf8e5b(0x17b)],_0x541ea0=this['getAllAccessibleDirectories'](_0xbeb10c),this['logger']?.['info']('Using\x20agent\x20configured\x20directory\x20access',{'workingDirectory':_0xbeb10c[_0xdf8e5b(0x17b)],'totalAccessibleDirs':_0x541ea0[_0xdf8e5b(0x17d)],'readOnlyDirs':_0xbeb10c[_0xdf8e5b(0x1a3)]?.['length']||0x0,'writeEnabledDirs':_0xbeb10c['writeEnabledDirectories']?.['length']||0x0,'agentId':_0x27833c}));if(!_0x3f6134)throw new Error(_0xdf8e5b(0x15c));this[_0xdf8e5b(0x189)]?.['info'](_0xdf8e5b(0x13f),{'filePathCount':_0x20e704['length'],'searchTermCount':_0x30c5d5['length'],'workingDirectory':_0x3f6134,'accessibleDirectories':_0x541ea0[_0xdf8e5b(0x17d)],'agentId':_0x27833c});try{const _0x26b9f8=await this[_0xdf8e5b(0x178)](_0x20e704,_0x3f6134,_0xbeb10c?_0x541ea0:null),_0x280af1=_0x26b9f8[_0xdf8e5b(0x163)],_0x424b60=_0x26b9f8['notFound'];if(_0x280af1[_0xdf8e5b(0x17d)]>this['seekConfig'][_0xdf8e5b(0x12d)])return{'success':![],'error':_0xdf8e5b(0x150)+_0x280af1[_0xdf8e5b(0x17d)]+').\x20Maximum\x20is\x20'+this[_0xdf8e5b(0x187)][_0xdf8e5b(0x12d)]+'.\x20Use\x20more\x20specific\x20file\x20patterns.','filesResolved':_0x280af1['length'],'filesNotFound':_0x424b60['length']};const _0x60c1bf=await this['searchFiles'](_0x280af1,_0x30c5d5,_0x3f6134),_0x489cae=this['formatResults'](_0x60c1bf['matches'],_0x60c1bf['errorFiles'],_0x424b60,_0x280af1['length']);return{'success':!![],'filesSearched':_0x280af1['length'],'filesNotFound':_0x424b60[_0xdf8e5b(0x17d)],'filesWithErrors':_0x60c1bf[_0xdf8e5b(0x120)][_0xdf8e5b(0x17d)],'totalMatches':_0x60c1bf[_0xdf8e5b(0x147)]['length'],'matchesByTerm':_0x60c1bf[_0xdf8e5b(0x13a)],'formattedResults':_0x489cae,'toolUsed':'seek'};}catch(_0x315e68){this[_0xdf8e5b(0x189)]?.[_0xdf8e5b(0x13c)]('Seek\x20tool\x20execution\x20failed',{'error':_0x315e68['message']});throw _0x315e68;}}[a0_0xd42814(0x121)](_0x50eec8){const _0xb76235=a0_0xd42814,_0x356a3e=new Set();_0x50eec8['workingDirectory']&&_0x356a3e[_0xb76235(0x161)](_0x50eec8['workingDirectory']);if(_0x50eec8[_0xb76235(0x1a3)]&&Array[_0xb76235(0x14b)](_0x50eec8['readOnlyDirectories']))for(const _0x43235c of _0x50eec8[_0xb76235(0x1a3)]){_0x356a3e['add'](_0x43235c);}if(_0x50eec8['writeEnabledDirectories']&&Array[_0xb76235(0x14b)](_0x50eec8[_0xb76235(0x124)]))for(const _0xe1cf65 of _0x50eec8['writeEnabledDirectories']){_0x356a3e['add'](_0xe1cf65);}return Array['from'](_0x356a3e);}['isPathAccessible'](_0x1e842e,_0x1ddbce){const _0xa7b1a3=a0_0xd42814;for(const _0x2d19b7 of _0x1ddbce){const _0x4fed09=a0_0x16bae8[_0xa7b1a3(0x164)](_0x2d19b7,_0x1e842e),_0x48753c=!_0x4fed09[_0xa7b1a3(0x19a)]('..')&&!a0_0x16bae8[_0xa7b1a3(0x1ab)](_0x4fed09);if(_0x48753c)return!![];}return![];}async['resolveFilePaths'](_0x5c39d9,_0x4c04b7,_0x203510=null){const _0x1d4b4a=a0_0xd42814,_0x5280ae={'found':[],'notFound':[]};for(const _0x117bbd of _0x5c39d9){const _0x5eb26e=_0x117bbd[_0x1d4b4a(0x169)]();if(_0x5eb26e['includes']('*')){const _0x2a36c2=await this['expandGlobPattern'](_0x5eb26e,_0x4c04b7);_0x2a36c2['found'][_0x1d4b4a(0x17d)]>0x0?_0x5280ae[_0x1d4b4a(0x163)][_0x1d4b4a(0x149)](..._0x2a36c2[_0x1d4b4a(0x163)]):_0x5280ae[_0x1d4b4a(0x19c)]['push'](_0x5eb26e+_0x1d4b4a(0x143));}else{const _0x2105ea=a0_0x16bae8['isAbsolute'](_0x5eb26e)?_0x5eb26e:a0_0x16bae8['resolve'](_0x4c04b7,_0x5eb26e);if(_0x203510&&_0x203510[_0x1d4b4a(0x17d)]>0x0){if(!this[_0x1d4b4a(0x145)](_0x2105ea,_0x203510)){_0x5280ae[_0x1d4b4a(0x19c)][_0x1d4b4a(0x149)](_0x5eb26e+'\x20(not\x20in\x20accessible\x20directories)');continue;}}try{const _0x2890bb=await a0_0xfba496['stat'](_0x2105ea);if(_0x2890bb['isFile']())_0x5280ae['found']['push'](_0x2105ea);else _0x2890bb[_0x1d4b4a(0x14f)]()?_0x5280ae['notFound']['push'](_0x5eb26e+'\x20(is\x20a\x20directory,\x20not\x20a\x20file)'):_0x5280ae[_0x1d4b4a(0x19c)]['push'](_0x5eb26e+_0x1d4b4a(0x1ac));}catch(_0x4d09bc){_0x5280ae['notFound']['push'](_0x5eb26e+'\x20('+(_0x4d09bc['code']||_0x4d09bc['message'])+')');}}}return _0x5280ae;}async[a0_0xd42814(0x13e)](_0x117364,_0x23334e){const _0x11b089=a0_0xd42814,_0x1d5842={'found':[]};if(_0x117364['includes'](_0x11b089(0x128))){const [_0x186c5e,_0x4cd700]=_0x117364['split']('**/'),_0x3c34e7=a0_0x16bae8[_0x11b089(0x140)](_0x23334e,_0x186c5e);try{const _0x43a8b9=await a0_0xfba496['stat'](_0x3c34e7);_0x43a8b9[_0x11b089(0x14f)]()&&await this[_0x11b089(0x12e)](_0x3c34e7,_0x4cd700,_0x1d5842[_0x11b089(0x163)],0x0,this['seekConfig'][_0x11b089(0x18a)]);}catch(_0x1f3555){this[_0x11b089(0x189)]?.['warn'](_0x11b089(0x154),{'basePath':_0x3c34e7,'error':_0x1f3555['message']});}}else{if(_0x117364['includes']('*')){const _0x456d45=a0_0x16bae8[_0x11b089(0x182)](a0_0x16bae8[_0x11b089(0x140)](_0x23334e,_0x117364)),_0x384061=a0_0x16bae8['basename'](_0x117364);try{const _0x1f4311=await a0_0xfba496['stat'](_0x456d45);if(_0x1f4311[_0x11b089(0x14f)]()){const _0x330198=await a0_0xfba496[_0x11b089(0x151)](_0x456d45);for(const _0x5133d8 of _0x330198){const _0x24127d=a0_0x16bae8['join'](_0x456d45,_0x5133d8);try{const _0x2f318a=await a0_0xfba496[_0x11b089(0x1a5)](_0x24127d);_0x2f318a['isFile']()&&this['matchesPattern'](_0x5133d8,_0x384061)&&_0x1d5842['found'][_0x11b089(0x149)](_0x24127d);}catch(_0x3d9e8f){continue;}}}}catch(_0x422421){this[_0x11b089(0x189)]?.[_0x11b089(0x16d)]('Directory\x20not\x20found\x20for\x20glob\x20pattern',{'dirPath':_0x456d45,'error':_0x422421[_0x11b089(0x180)]});}}}return _0x1d5842;}async['findFilesRecursively'](_0x30cbff,_0x4147be,_0xe30479,_0x36f1ed,_0x17f8d2){const _0x431011=a0_0xd42814;if(_0x36f1ed>=_0x17f8d2){this['logger']?.['warn'](_0x431011(0x1b1),{'dir':_0x30cbff,'currentDepth':_0x36f1ed});return;}try{const _0x4c3bda=await a0_0xfba496[_0x431011(0x151)](_0x30cbff,{'withFileTypes':!![]});for(const _0x94a18c of _0x4c3bda){if(_0x94a18c[_0x431011(0x156)][_0x431011(0x19a)]('.'))continue;const _0x46b43a=a0_0x16bae8['join'](_0x30cbff,_0x94a18c['name']);try{if(_0x94a18c[_0x431011(0x14f)]()){if(this[_0x431011(0x11e)](_0x94a18c[_0x431011(0x156)]))continue;await this[_0x431011(0x12e)](_0x46b43a,_0x4147be,_0xe30479,_0x36f1ed+0x1,_0x17f8d2);}else{if(_0x94a18c['isFile']()){if(this[_0x431011(0x16a)](_0x94a18c[_0x431011(0x156)],_0x4147be)){_0xe30479[_0x431011(0x149)](_0x46b43a);if(_0xe30479['length']>=this[_0x431011(0x187)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x4963bd){continue;}}}catch(_0x5bd2c4){this['logger']?.['warn'](_0x431011(0x16c),{'dir':_0x30cbff,'error':_0x5bd2c4['message']});}}[a0_0xd42814(0x16a)](_0x305b9e,_0xb8d7c3){const _0x4974a4=a0_0xd42814,_0x4ae946=_0xb8d7c3['split']('*')[_0x4974a4(0x123)](_0x3bab42=>this[_0x4974a4(0x159)](_0x3bab42))['join']('.*'),_0x41e173=new RegExp('^'+_0x4ae946+'$','i');return _0x41e173[_0x4974a4(0x170)](_0x305b9e);}['escapeRegExp'](_0x129d03){const _0x35717a=a0_0xd42814;return _0x129d03[_0x35717a(0x19e)](/[.*+?^${}()|[\]\\]/g,_0x35717a(0x153));}[a0_0xd42814(0x11e)](_0x12b162){const _0x5c202d=a0_0xd42814,_0x5b0223=new Set(['node_modules','.git',_0x5c202d(0x166),'build','coverage',_0x5c202d(0x18b),'.nuxt','out','target',_0x5c202d(0x1a8),_0x5c202d(0x1a2),'.cache',_0x5c202d(0x196),'temp']);return _0x5b0223[_0x5c202d(0x183)](_0x12b162['toLowerCase']());}['shouldSkipFile'](_0x5bee88){const _0x14fb21=a0_0xd42814,_0x4b82a8=a0_0x16bae8[_0x14fb21(0x176)](_0x5bee88)['toLowerCase']();return BINARY_EXTENSIONS[_0x14fb21(0x183)](_0x4b82a8);}async[a0_0xd42814(0x18e)](_0x2026f8,_0xc0f419,_0x4cc5f0){const _0x85e4cc=a0_0xd42814,_0x1e71b1=[],_0x5b921f=[];let _0x4ddc7c=0x0;for(const _0x479a65 of _0x2026f8){if(this[_0x85e4cc(0x1a0)](_0x479a65))continue;try{const _0x2761eb=await a0_0xfba496[_0x85e4cc(0x1a5)](_0x479a65);if(_0x2761eb[_0x85e4cc(0x18c)]>this[_0x85e4cc(0x187)]['MAX_FILE_SIZE']){_0x5b921f[_0x85e4cc(0x149)]({'filePath':a0_0x16bae8['relative'](_0x4cc5f0,_0x479a65),'error':_0x85e4cc(0x16b)+Math['round'](_0x2761eb[_0x85e4cc(0x18c)]/(0x400*0x400))+_0x85e4cc(0x15e)+Math[_0x85e4cc(0x17a)](this['seekConfig'][_0x85e4cc(0x127)]/(0x400*0x400))+'MB)'});continue;}const _0xdc4a0f=await this[_0x85e4cc(0x17f)](_0x479a65,_0xc0f419,_0x4cc5f0);_0x1e71b1[_0x85e4cc(0x149)](..._0xdc4a0f),_0x4ddc7c+=_0xdc4a0f[_0x85e4cc(0x17d)];if(_0x4ddc7c>=this['seekConfig']['MAX_TOTAL_MATCHES']){this[_0x85e4cc(0x189)]?.['warn'](_0x85e4cc(0x144),{'totalMatches':_0x4ddc7c});break;}}catch(_0x2e8af3){_0x5b921f[_0x85e4cc(0x149)]({'filePath':a0_0x16bae8['relative'](_0x4cc5f0,_0x479a65),'error':_0x2e8af3[_0x85e4cc(0x180)]});}}const _0x3fb8e5={};for(const _0xbc02ce of _0x1e71b1){!_0x3fb8e5[_0xbc02ce['term']]&&(_0x3fb8e5[_0xbc02ce[_0x85e4cc(0x14c)]]=[]),_0x3fb8e5[_0xbc02ce[_0x85e4cc(0x14c)]][_0x85e4cc(0x149)]({'filePath':_0xbc02ce['filePath'],'lineNumber':_0xbc02ce[_0x85e4cc(0x138)],'lineContent':_0xbc02ce[_0x85e4cc(0x122)]});}return{'matches':_0x1e71b1,'matchesByTerm':_0x3fb8e5,'errorFiles':_0x5b921f};}async['searchInFile'](_0x3bea41,_0x5300a9,_0x42796b){const _0x289e7a=a0_0xd42814,_0xb98a4e=[];let _0x5cf5fa=0x0;try{const _0x1a1e68=await a0_0xfba496['readFile'](_0x3bea41,FILE_ENCODING),_0x1dc302=_0x1a1e68[_0x289e7a(0x1ad)]('\x0a'),_0x4ecd4b=a0_0x16bae8[_0x289e7a(0x164)](_0x42796b,_0x3bea41);for(let _0x2cf658=0x0;_0x2cf658<_0x1dc302[_0x289e7a(0x17d)];_0x2cf658++){const _0x5e681b=_0x1dc302[_0x2cf658],_0x1ac837=_0x2cf658+0x1;for(const _0x565b6f of _0x5300a9){if(_0x5e681b[_0x289e7a(0x141)](_0x565b6f)){let _0x43f468=_0x5e681b;if(_0x43f468[_0x289e7a(0x17d)]>this['seekConfig'][_0x289e7a(0x19b)]){const _0x91e218=_0x43f468[_0x289e7a(0x179)](_0x565b6f),_0x56783e=Math[_0x289e7a(0x132)](0x0,_0x91e218-0x32),_0x52d8ef=Math[_0x289e7a(0x12f)](_0x43f468['length'],_0x91e218+_0x565b6f[_0x289e7a(0x17d)]+0x32);_0x43f468=(_0x56783e>0x0?'...':'')+_0x43f468[_0x289e7a(0x133)](_0x56783e,_0x52d8ef)+(_0x52d8ef<_0x43f468[_0x289e7a(0x17d)]?'...':'');}_0xb98a4e['push']({'term':_0x565b6f,'filePath':_0x4ecd4b,'lineNumber':_0x1ac837,'lineContent':_0x43f468[_0x289e7a(0x169)]()}),_0x5cf5fa++;if(_0x5cf5fa>=this[_0x289e7a(0x187)][_0x289e7a(0x181)])return this['logger']?.[_0x289e7a(0x16d)]('Maximum\x20matches\x20per\x20file\x20reached',{'filePath':_0x4ecd4b}),_0xb98a4e;}}}}catch(_0x23be33){throw new Error(_0x289e7a(0x160)+_0x23be33[_0x289e7a(0x180)]);}return _0xb98a4e;}[a0_0xd42814(0x186)](_0x3c850d,_0x2bb899,_0x1c3e18,_0x2e77dc){const _0x5d2321=a0_0xd42814;let _0x16ae7f='';if(_0x1c3e18['length']>0x0){_0x16ae7f+=_0x5d2321(0x12b);for(const _0x4a9ae9 of _0x1c3e18){_0x16ae7f+='\x20\x20-\x20'+_0x4a9ae9+'\x0a';}_0x16ae7f+='\x0a';}if(_0x2bb899['length']>0x0){_0x16ae7f+=_0x5d2321(0x192);for(const _0x35c76c of _0x2bb899){_0x16ae7f+=_0x5d2321(0x174)+_0x35c76c[_0x5d2321(0x135)]+':\x20'+_0x35c76c[_0x5d2321(0x13c)]+'\x0a';}_0x16ae7f+='\x0a';}if(_0x3c850d['length']===0x0)_0x16ae7f+=_0x5d2321(0x157)+_0x2e77dc+_0x5d2321(0x155);else{const _0x23ee45={};for(const _0x53261b of _0x3c850d){!_0x23ee45[_0x53261b[_0x5d2321(0x14c)]]&&(_0x23ee45[_0x53261b['term']]=[]),_0x23ee45[_0x53261b[_0x5d2321(0x14c)]]['push'](_0x53261b);}_0x16ae7f+='SEARCH\x20RESULTS\x20('+_0x3c850d[_0x5d2321(0x17d)]+'\x20total\x20matches\x20in\x20'+_0x2e77dc+'\x20file(s)):\x0a\x0a';for(const [_0x1a29ab,_0x238bd1]of Object['entries'](_0x23ee45)){_0x16ae7f+=_0x5d2321(0x11f)+_0x1a29ab+'\x22\x20('+_0x238bd1['length']+'\x20matches)\x0a';for(const _0x46f602 of _0x238bd1){_0x16ae7f+='\x20\x20'+_0x46f602['filePath']+':'+_0x46f602[_0x5d2321(0x138)]+_0x5d2321(0x16f)+_0x46f602[_0x5d2321(0x122)]+'\x0a';}_0x16ae7f+='\x0a';}_0x3c850d[_0x5d2321(0x17d)]>=this[_0x5d2321(0x187)]['MAX_TOTAL_MATCHES']&&(_0x16ae7f+=_0x5d2321(0x173)+this['seekConfig'][_0x5d2321(0x168)]+_0x5d2321(0x197));}return _0x16ae7f['trim']();}['getSupportedExtensions'](){const _0x403470=a0_0xd42814;return['.js',_0x403470(0x1a4),_0x403470(0x126),'.tsx',_0x403470(0x136),_0x403470(0x193),_0x403470(0x165),'.css',_0x403470(0x134),_0x403470(0x129),_0x403470(0x152),'.md','.txt',_0x403470(0x12a),'.py','.rb','.java',_0x403470(0x15d),'.rs','.c','.cpp','.h',_0x403470(0x17c),'.sh','.bash',_0x403470(0x1a9),_0x403470(0x167),'.yaml',_0x403470(0x146),_0x403470(0x131),_0x403470(0x1b0)];}async[a0_0xd42814(0x171)](_0x5ebda7){const _0x558672=a0_0xd42814;this[_0x558672(0x189)]?.['info'](_0x558672(0x194),{'operationId':_0x5ebda7});}}export default SeekTool;
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 +1 @@
1
- function a0_0x4ad7(_0x8c2258,_0x46cb3e){_0x8c2258=_0x8c2258-0xf8;const _0x32928a=a0_0x3292();let _0x4ad748=_0x32928a[_0x8c2258];if(a0_0x4ad7['Alatti']===undefined){var _0x55a937=function(_0x458ecc){const _0x36e37b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x76ded8='',_0x191670='';for(let _0x30f987=0x0,_0x555190,_0x306ea3,_0x438e22=0x0;_0x306ea3=_0x458ecc['charAt'](_0x438e22++);~_0x306ea3&&(_0x555190=_0x30f987%0x4?_0x555190*0x40+_0x306ea3:_0x306ea3,_0x30f987++%0x4)?_0x76ded8+=String['fromCharCode'](0xff&_0x555190>>(-0x2*_0x30f987&0x6)):0x0){_0x306ea3=_0x36e37b['indexOf'](_0x306ea3);}for(let _0x45f572=0x0,_0x24fda1=_0x76ded8['length'];_0x45f572<_0x24fda1;_0x45f572++){_0x191670+='%'+('00'+_0x76ded8['charCodeAt'](_0x45f572)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x191670);};a0_0x4ad7['UbLuUQ']=_0x55a937,a0_0x4ad7['YFtHfU']={},a0_0x4ad7['Alatti']=!![];}const _0x4b97ef=_0x32928a[0x0],_0x5ce70c=_0x8c2258+_0x4b97ef,_0x2697e1=a0_0x4ad7['YFtHfU'][_0x5ce70c];return!_0x2697e1?(_0x4ad748=a0_0x4ad7['UbLuUQ'](_0x4ad748),a0_0x4ad7['YFtHfU'][_0x5ce70c]=_0x4ad748):_0x4ad748=_0x2697e1,_0x4ad748;}const a0_0x389de5=a0_0x4ad7;(function(_0x81bb,_0x539288){const _0x4f1bd5=a0_0x4ad7,_0x137a6b=_0x81bb();while(!![]){try{const _0x2ee7a8=parseInt(_0x4f1bd5(0xfe))/0x1+-parseInt(_0x4f1bd5(0x19f))/0x2+parseInt(_0x4f1bd5(0x119))/0x3*(-parseInt(_0x4f1bd5(0x1a1))/0x4)+-parseInt(_0x4f1bd5(0x131))/0x5+parseInt(_0x4f1bd5(0x13e))/0x6+parseInt(_0x4f1bd5(0x180))/0x7+parseInt(_0x4f1bd5(0x10e))/0x8*(parseInt(_0x4f1bd5(0x174))/0x9);if(_0x2ee7a8===_0x539288)break;else _0x137a6b['push'](_0x137a6b['shift']());}catch(_0x3b1938){_0x137a6b['push'](_0x137a6b['shift']());}}}(a0_0x3292,0x7362b));import{BaseTool}from'./baseTool.js';import a0_0x76ded8 from'../utilities/tagParser.js';import a0_0x191670 from'../utilities/directoryAccessManager.js';import a0_0x30f987 from'fs/promises';import a0_0x555190 from'path';import a0_0x306ea3 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x438e22={},_0x45f572=null){const _0x557366=a0_0x4ad7;super(_0x438e22,_0x45f572),this[_0x557366(0x17d)]=!![],this['isAsync']=![],this['timeout']=_0x438e22[_0x557366(0x149)]||STATIC_ANALYSIS[_0x557366(0x129)],this[_0x557366(0x110)]=_0x438e22[_0x557366(0x110)]||0x1,this['maxFileSize']=_0x438e22['maxFileSize']||STATIC_ANALYSIS[_0x557366(0x132)],this[_0x557366(0x153)]=_0x438e22['maxFilesPerBatch']||STATIC_ANALYSIS[_0x557366(0x1a3)],this['enableCache']=_0x438e22[_0x557366(0x1a2)]!==![]&&STATIC_ANALYSIS['ENABLE_CACHE'],this['analysisCache']=new Map(),this['cacheExpiry']=STATIC_ANALYSIS['CACHE_DURATION'],this['parallelAnalysis']=_0x438e22['parallelAnalysis']!==![],this['maxParallelFiles']=_0x438e22[_0x557366(0x11c)]||0xa,this[_0x557366(0x15b)]=_0x438e22[_0x557366(0x15b)]!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this['directoryAccessManager']=new a0_0x191670(_0x438e22,_0x45f572),this[_0x557366(0x106)]={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this[_0x557366(0x123)]={'prettier':null};}[a0_0x389de5(0x12e)](){const _0x25ac78=a0_0x389de5;return _0x25ac78(0x15c)+Math['round'](this[_0x25ac78(0x1c1)]/0x400/0x400)+_0x25ac78(0x107)+this['maxFilesPerBatch']+_0x25ac78(0x10a)+this[_0x25ac78(0x149)]/0x3e8+_0x25ac78(0x171);}['parseParameters'](_0x24fda1){const _0x6fefd2=a0_0x389de5;try{const _0x58b3dd={},_0x487234=[];this[_0x6fefd2(0x185)]?.[_0x6fefd2(0x167)](_0x6fefd2(0x10c),{'contentLength':_0x24fda1['length'],'contentPreview':_0x24fda1[_0x6fefd2(0x155)](0x0,0xc8)});const _0x2ad083=/<analyze\s+(.+?)\/>/g;let _0x3e2c28;while((_0x3e2c28=_0x2ad083[_0x6fefd2(0x118)](_0x24fda1))!==null){const _0x414ee2=_0x3e2c28[0x1]['trim'](),_0x3b4f86=new a0_0x76ded8(),_0x269b1f=_0x3b4f86[_0x6fefd2(0x12f)](_0x414ee2),_0x22a9d9={'type':'analyze',..._0x269b1f};_0x22a9d9['file-path']&&(_0x22a9d9['filePath']=_0x22a9d9[_0x6fefd2(0x120)],delete _0x22a9d9['file-path']),_0x22a9d9[_0x6fefd2(0x1bb)]&&(_0x22a9d9[_0x6fefd2(0x12d)]=_0x22a9d9[_0x6fefd2(0x1bb)]==='true',delete _0x22a9d9[_0x6fefd2(0x1bb)]),_0x22a9d9['max-errors']&&(_0x22a9d9[_0x6fefd2(0x182)]=parseInt(_0x22a9d9[_0x6fefd2(0x1c7)],0xa),delete _0x22a9d9['max-errors']),_0x487234['push'](_0x22a9d9);}const _0x210602=/<analyze-project\s+(.+?)\/>/g;while((_0x3e2c28=_0x210602[_0x6fefd2(0x118)](_0x24fda1))!==null){const _0x57ffdf=_0x3e2c28[0x1][_0x6fefd2(0x103)](),_0x53366c=new a0_0x76ded8(),_0x559532=_0x53366c['parseAttributes'](_0x57ffdf),_0x361436={'type':'analyze-project',..._0x559532};_0x361436['include-warnings']&&(_0x361436['includeWarnings']=_0x361436['include-warnings']==='true',delete _0x361436[_0x6fefd2(0x1bb)]),_0x361436['max-errors']&&(_0x361436['maxErrors']=parseInt(_0x361436[_0x6fefd2(0x1c7)],0xa),delete _0x361436['max-errors']),_0x487234[_0x6fefd2(0x1c8)](_0x361436);}const _0x2f666f=/<fix\s+(.+?)\/>/g;while((_0x3e2c28=_0x2f666f['exec'](_0x24fda1))!==null){const _0x4b30ef=_0x3e2c28[0x1]['trim'](),_0x2bc84c=new a0_0x76ded8(),_0x5082a8=_0x2bc84c['parseAttributes'](_0x4b30ef),_0x59f144={'type':_0x6fefd2(0x1d2),..._0x5082a8};_0x59f144['file-path']&&(_0x59f144['filePath']=_0x59f144['file-path'],delete _0x59f144['file-path']),_0x59f144[_0x6fefd2(0x184)]&&(_0x59f144['writeFile']=_0x59f144['write-file']==='true',delete _0x59f144['write-file']),_0x487234[_0x6fefd2(0x1c8)](_0x59f144);}const _0x4ab254=/<format\s+(.+?)\/>/g;while((_0x3e2c28=_0x4ab254['exec'](_0x24fda1))!==null){const _0x511fc2=_0x3e2c28[0x1][_0x6fefd2(0x103)](),_0xfe55bb=new a0_0x76ded8(),_0x5c0ac2=_0xfe55bb['parseAttributes'](_0x511fc2),_0x11f520={'type':'format',..._0x5c0ac2};_0x11f520['file-path']&&(_0x11f520[_0x6fefd2(0x154)]=_0x11f520[_0x6fefd2(0x120)],delete _0x11f520[_0x6fefd2(0x120)]),_0x11f520['write-file']&&(_0x11f520['writeFile']=_0x11f520[_0x6fefd2(0x184)]==='true',delete _0x11f520['write-file']),_0x487234[_0x6fefd2(0x1c8)](_0x11f520);}const _0x16c611=/<security-scan\s+(.+?)\/>/g;while((_0x3e2c28=_0x16c611[_0x6fefd2(0x118)](_0x24fda1))!==null){const _0x5d95ea=_0x3e2c28[0x1]['trim'](),_0x2f5af3=new a0_0x76ded8(),_0x2a8d98=_0x2f5af3['parseAttributes'](_0x5d95ea),_0x1a75f7={'type':_0x6fefd2(0x1d5),..._0x2a8d98};_0x1a75f7['file-path']&&(_0x1a75f7[_0x6fefd2(0x154)]=_0x1a75f7[_0x6fefd2(0x120)],delete _0x1a75f7['file-path']),_0x1a75f7['skip-test-files']&&(_0x1a75f7['skipTestFiles']=_0x1a75f7['skip-test-files']===_0x6fefd2(0x1d0),delete _0x1a75f7[_0x6fefd2(0xff)]),_0x487234[_0x6fefd2(0x1c8)](_0x1a75f7);}const _0x3bf038=/<security-scan-project\s+(.+?)\/>/g;while((_0x3e2c28=_0x3bf038['exec'](_0x24fda1))!==null){const _0x535352=_0x3e2c28[0x1]['trim'](),_0x2f681e=new a0_0x76ded8(),_0x7e6669=_0x2f681e['parseAttributes'](_0x535352),_0x4745c3={'type':'security-scan-project',..._0x7e6669};_0x4745c3['skip-test-files']&&(_0x4745c3['skipTestFiles']=_0x4745c3['skip-test-files']==='true',delete _0x4745c3[_0x6fefd2(0xff)]),_0x487234[_0x6fefd2(0x1c8)](_0x4745c3);}const _0x3a3e4d=/<validate-config\s+(.+?)\/>/g;while((_0x3e2c28=_0x3a3e4d['exec'](_0x24fda1))!==null){const _0x9a9345=_0x3e2c28[0x1][_0x6fefd2(0x103)](),_0x15922f=new a0_0x76ded8(),_0x5162f1=_0x15922f['parseAttributes'](_0x9a9345),_0x23e2e5={'type':'validate-config',..._0x5162f1};_0x23e2e5['file-path']&&(_0x23e2e5[_0x6fefd2(0x154)]=_0x23e2e5['file-path'],delete _0x23e2e5['file-path']),_0x487234[_0x6fefd2(0x1c8)](_0x23e2e5);}const _0x181369=/<validate-config-directory\s+(.+?)\/>/g;while((_0x3e2c28=_0x181369['exec'](_0x24fda1))!==null){const _0x35264a=_0x3e2c28[0x1]['trim'](),_0x4c2732=new a0_0x76ded8(),_0x7bb5e6=_0x4c2732[_0x6fefd2(0x12f)](_0x35264a),_0x2477f8={'type':_0x6fefd2(0x19d),..._0x7bb5e6};_0x487234['push'](_0x2477f8);}return _0x58b3dd[_0x6fefd2(0x1b0)]=_0x487234,_0x58b3dd['rawContent']=_0x24fda1[_0x6fefd2(0x103)](),this[_0x6fefd2(0x185)]?.['debug'](_0x6fefd2(0x163),{'totalActions':_0x487234['length'],'actionTypes':_0x487234[_0x6fefd2(0x176)](_0x3df1f0=>_0x3df1f0[_0x6fefd2(0x1d7)])}),_0x58b3dd;}catch(_0x5c4452){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x5c4452['message']);}}['getRequiredParameters'](){const _0x451721=a0_0x389de5;return[_0x451721(0x1b0)];}['customValidateParameters'](_0x2bac23){const _0x294a60=a0_0x389de5,_0x4a1028=[];if(!_0x2bac23['actions']||!Array[_0x294a60(0x133)](_0x2bac23['actions'])||_0x2bac23['actions'][_0x294a60(0x114)]===0x0)_0x4a1028[_0x294a60(0x1c8)]('At\x20least\x20one\x20action\x20is\x20required');else{for(const [_0x8afcc1,_0x175c1c]of _0x2bac23[_0x294a60(0x1b0)][_0x294a60(0x17f)]()){if(!_0x175c1c['type']){_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x175c1c[_0x294a60(0x1d7)]){case'analyze':!_0x175c1c['filePath']&&_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+':\x20file-path\x20is\x20required\x20for\x20analyze');break;case _0x294a60(0x10b):!_0x175c1c['directory']&&_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case'fix':!_0x175c1c['filePath']&&_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+_0x294a60(0x168));break;case _0x294a60(0x1b6):!_0x175c1c[_0x294a60(0x154)]&&_0x4a1028[_0x294a60(0x1c8)](_0x294a60(0x102)+(_0x8afcc1+0x1)+_0x294a60(0x1bf));break;case _0x294a60(0x1d5):!_0x175c1c['filePath']&&_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x294a60(0x11d):!_0x175c1c['directory']&&_0x4a1028['push'](_0x294a60(0x102)+(_0x8afcc1+0x1)+_0x294a60(0x12a));break;case _0x294a60(0x136):!_0x175c1c[_0x294a60(0x154)]&&_0x4a1028[_0x294a60(0x1c8)]('Action\x20'+(_0x8afcc1+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case'validate-config-directory':!_0x175c1c['directory']&&_0x4a1028['push']('Action\x20'+(_0x8afcc1+0x1)+_0x294a60(0x1b9));break;default:_0x4a1028[_0x294a60(0x1c8)]('Action\x20'+(_0x8afcc1+0x1)+_0x294a60(0x1a7)+_0x175c1c['type']);}}_0x2bac23['actions'][_0x294a60(0x114)]>this[_0x294a60(0x153)]&&_0x4a1028[_0x294a60(0x1c8)](_0x294a60(0x150)+_0x2bac23['actions'][_0x294a60(0x114)]+'\x20(max\x20'+this['maxFilesPerBatch']+')');}return{'valid':_0x4a1028[_0x294a60(0x114)]===0x0,'errors':_0x4a1028};}async['execute'](_0x7c67d,_0x3a28b7){const _0x4f3e95=a0_0x389de5,{actions:_0x5a0b6c}=_0x7c67d,{projectDir:_0x389817,agentId:_0xf372a6,directoryAccess:_0x599dce}=_0x3a28b7,_0x5c04b1=_0x599dce||this[_0x4f3e95(0x14b)]['createDirectoryAccess']({'workingDirectory':_0x389817||process[_0x4f3e95(0x159)](),'writeEnabledDirectories':[_0x389817||process['cwd']()],'restrictToProject':!![]}),_0x128326=this[_0x4f3e95(0x14b)][_0x4f3e95(0x1cf)](_0x5c04b1),_0x225ce6={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x1f7e32 of _0x5a0b6c){try{let _0x484075;switch(_0x1f7e32[_0x4f3e95(0x1d7)]){case'analyze':_0x484075=await this['analyzeFile'](_0x1f7e32['filePath'],_0x128326,_0x5c04b1,_0x1f7e32);_0x484075&&(_0x225ce6[_0x4f3e95(0x1cc)][_0x4f3e95(0x1c8)](_0x484075),this[_0x4f3e95(0x1b1)](_0x225ce6['summary'],_0x484075));break;case _0x4f3e95(0x10b):const _0xbc6f65=await this['analyzeProject'](_0x1f7e32['directory'],_0x1f7e32[_0x4f3e95(0x19a)],_0x128326,_0x5c04b1,_0x1f7e32);_0x225ce6[_0x4f3e95(0x1cc)]['push'](..._0xbc6f65);for(const _0x451344 of _0xbc6f65){this['updateSummary'](_0x225ce6[_0x4f3e95(0x18a)],_0x451344);}break;case _0x4f3e95(0x1d2):_0x484075=await this[_0x4f3e95(0x18e)](_0x1f7e32['filePath'],_0x128326,_0x5c04b1,_0x1f7e32);_0x484075&&_0x225ce6['files'][_0x4f3e95(0x1c8)](_0x484075);break;case'format':_0x484075=await this['formatFile'](_0x1f7e32['filePath'],_0x128326,_0x5c04b1,_0x1f7e32);_0x484075&&_0x225ce6[_0x4f3e95(0x1cc)]['push'](_0x484075);break;case _0x4f3e95(0x1d5):_0x484075=await this['securityScanFile'](_0x1f7e32['filePath'],_0x128326,_0x5c04b1,_0x1f7e32);_0x484075&&(_0x225ce6['files'][_0x4f3e95(0x1c8)](_0x484075),this[_0x4f3e95(0x1b1)](_0x225ce6['summary'],_0x484075));break;case _0x4f3e95(0x11d):const _0x372329=await this[_0x4f3e95(0x161)](_0x1f7e32[_0x4f3e95(0x140)],_0x1f7e32['pattern'],_0x128326,_0x5c04b1,_0x1f7e32);_0x225ce6[_0x4f3e95(0x1cc)][_0x4f3e95(0x1c8)](..._0x372329);for(const _0x43b824 of _0x372329){this['updateSummary'](_0x225ce6[_0x4f3e95(0x18a)],_0x43b824);}break;case'validate-config':_0x484075=await this[_0x4f3e95(0x15f)](_0x1f7e32['filePath'],_0x128326,_0x5c04b1,_0x1f7e32);_0x484075&&(_0x225ce6[_0x4f3e95(0x1cc)][_0x4f3e95(0x1c8)](_0x484075),this['updateSummary'](_0x225ce6['summary'],_0x484075));break;case'validate-config-directory':const _0x433cda=await this[_0x4f3e95(0x1cb)](_0x1f7e32[_0x4f3e95(0x140)],_0x128326,_0x5c04b1,_0x1f7e32);_0x225ce6['files']['push'](..._0x433cda);for(const _0x5b6a26 of _0x433cda){this[_0x4f3e95(0x1b1)](_0x225ce6[_0x4f3e95(0x18a)],_0x5b6a26);}break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x1f7e32[_0x4f3e95(0x1d7)]);}}catch(_0x37a0a7){this[_0x4f3e95(0x185)]?.[_0x4f3e95(0x17b)](_0x4f3e95(0x188),{'action':_0x1f7e32['type'],'error':_0x37a0a7[_0x4f3e95(0x115)]}),_0x225ce6['files'][_0x4f3e95(0x1c8)]({'file':_0x1f7e32['filePath']||_0x1f7e32[_0x4f3e95(0x140)],'error':_0x37a0a7['message'],'success':![]});}}return{'success':!![],'results':_0x225ce6,'toolUsed':_0x4f3e95(0x1be),'performance':this[_0x4f3e95(0x1af)]()};}async['analyzeFile'](_0x5f40ae,_0x2d6ca1,_0x455a51,_0x35e95c={}){const _0x559dc7=a0_0x389de5,_0x46283b=a0_0x555190[_0x559dc7(0x198)](_0x5f40ae)?a0_0x555190['normalize'](_0x5f40ae):a0_0x555190[_0x559dc7(0x197)](_0x2d6ca1,_0x5f40ae),_0x3410ea=this['directoryAccessManager']['validateReadAccess'](_0x46283b,_0x455a51);if(!_0x3410ea['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x3410ea[_0x559dc7(0x148)]);try{const _0x7e26c1=await a0_0x30f987['stat'](_0x46283b);if(_0x7e26c1[_0x559dc7(0x117)]>this[_0x559dc7(0x1c1)])throw new Error(_0x559dc7(0x181)+_0x7e26c1[_0x559dc7(0x117)]+_0x559dc7(0x111)+this['maxFileSize']+')');const _0x47d86f=this['detectLanguage'](_0x46283b);if(!_0x47d86f)return{'file':this[_0x559dc7(0x14b)][_0x559dc7(0x1d6)](_0x46283b,_0x455a51),'fullPath':_0x46283b,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x449f0e=await a0_0x30f987['readFile'](_0x46283b,'utf-8'),_0x2f296a=this[_0x559dc7(0x15b)]?this[_0x559dc7(0x1ae)](_0x449f0e):null,_0x5a8fb1=this[_0x559dc7(0x15b)]?_0x46283b+':'+_0x2f296a:_0x46283b+':'+_0x7e26c1[_0x559dc7(0x165)]['getTime']();if(this[_0x559dc7(0x1a2)]&&this['analysisCache']['has'](_0x5a8fb1)){const _0x4652e8=this[_0x559dc7(0x13d)][_0x559dc7(0x144)](_0x5a8fb1);if(Date['now']()-_0x4652e8['timestamp']<this[_0x559dc7(0x1a8)])return this[_0x559dc7(0x185)]?.[_0x559dc7(0x167)](_0x559dc7(0xfd),{'file':_0x46283b}),this[_0x559dc7(0x100)][_0x559dc7(0x1cd)]++,this['metrics'][_0x559dc7(0x178)]++,_0x4652e8['result'];}this['metrics']['cacheMisses']++,this[_0x559dc7(0x100)]['totalAnalyses']++;const _0x32021f=await this['getAnalyzer'](_0x47d86f);if(!_0x32021f)return{'file':this[_0x559dc7(0x14b)][_0x559dc7(0x1d6)](_0x46283b,_0x455a51),'fullPath':_0x46283b,'language':_0x47d86f,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'No\x20analyzer\x20available\x20for\x20'+_0x47d86f};const _0x1367ad=Date[_0x559dc7(0x19c)](),_0x4b760c=await _0x32021f['analyze'](_0x46283b,_0x449f0e,{'workingDir':_0x2d6ca1,'accessConfig':_0x455a51,'framework':await this['detectFramework'](_0x2d6ca1,_0x47d86f)}),_0x29e4bf=Date['now']()-_0x1367ad;this['metrics']['totalAnalysisTime']+=_0x29e4bf,this['metrics']['filesAnalyzed']++;const _0x398ac5={'file':this[_0x559dc7(0x14b)]['createRelativePath'](_0x46283b,_0x455a51),'fullPath':_0x46283b,'language':_0x47d86f,'framework':await this[_0x559dc7(0x1bd)](_0x2d6ca1,_0x47d86f),'errors':_0x4b760c[_0x559dc7(0x14e)](_0x1cd64d=>_0x1cd64d['severity']===STATIC_ANALYSIS[_0x559dc7(0x146)][_0x559dc7(0x11b)]),'warnings':_0x35e95c[_0x559dc7(0x12d)]!==![]?_0x4b760c[_0x559dc7(0x14e)](_0x1033b9=>_0x1033b9['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING']):[],'info':_0x4b760c[_0x559dc7(0x14e)](_0x8a69e8=>_0x8a69e8[_0x559dc7(0x17e)]===STATIC_ANALYSIS[_0x559dc7(0x146)][_0x559dc7(0x164)]),'totalIssues':_0x4b760c[_0x559dc7(0x114)],'analyzed':!![],'timestamp':new Date()['toISOString']()};return _0x35e95c[_0x559dc7(0x182)]&&_0x398ac5['errors'][_0x559dc7(0x114)]>_0x35e95c['maxErrors']&&(_0x398ac5['errors']=_0x398ac5['errors'][_0x559dc7(0x17a)](0x0,_0x35e95c['maxErrors']),_0x398ac5[_0x559dc7(0x128)]=!![]),this[_0x559dc7(0x1a2)]&&this['analysisCache'][_0x559dc7(0x12c)](_0x5a8fb1,{'result':_0x398ac5,'timestamp':Date['now']()}),_0x398ac5;}catch(_0x1e1a36){throw new Error('Failed\x20to\x20analyze\x20'+_0x5f40ae+':\x20'+_0x1e1a36['message']);}}async['analyzeProject'](_0x3138a8,_0x15aa9e,_0xfef3e,_0x2a69a4,_0x1be3e5={}){const _0x336bca=a0_0x389de5,_0xe57816=a0_0x555190[_0x336bca(0x198)](_0x3138a8)?a0_0x555190[_0x336bca(0x13c)](_0x3138a8):a0_0x555190['resolve'](_0xfef3e,_0x3138a8),_0x2bef05=this[_0x336bca(0x14b)]['validateReadAccess'](_0xe57816,_0x2a69a4);if(!_0x2bef05['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x2bef05['reason']);const _0x55c7a5=await this[_0x336bca(0x13f)](_0xe57816,_0x15aa9e);if(_0x55c7a5['length']>this[_0x336bca(0x153)])throw new Error(_0x336bca(0x11a)+_0x55c7a5['length']+_0x336bca(0x1a4)+this['maxFilesPerBatch']+')');const _0x3c10ee=[];if(this[_0x336bca(0x193)]&&_0x55c7a5[_0x336bca(0x114)]>0x1){this[_0x336bca(0x185)]?.['debug'](_0x336bca(0x1bc),{'totalFiles':_0x55c7a5['length'],'batchSize':this[_0x336bca(0x11c)]});for(let _0x845be5=0x0;_0x845be5<_0x55c7a5['length'];_0x845be5+=this[_0x336bca(0x11c)]){const _0x492192=_0x55c7a5[_0x336bca(0x17a)](_0x845be5,_0x845be5+this['maxParallelFiles']);this[_0x336bca(0x100)]['parallelBatches']++;const _0xc7ad2c={'completed':_0x845be5,'total':_0x55c7a5[_0x336bca(0x114)],'percentage':Math['round'](_0x845be5/_0x55c7a5['length']*0x64)};_0x1be3e5['onProgress']&&_0x1be3e5[_0x336bca(0x1a0)](_0xc7ad2c);this[_0x336bca(0x185)]?.[_0x336bca(0x167)]('Analyzing\x20batch',{'batch':Math[_0x336bca(0x18d)](_0x845be5/this[_0x336bca(0x11c)])+0x1,'filesInBatch':_0x492192[_0x336bca(0x114)],'progress':_0xc7ad2c['completed']+'/'+_0xc7ad2c['total']});const _0x18bed7=_0x492192[_0x336bca(0x176)](async _0x2d7442=>{const _0x537325=_0x336bca;try{const _0x37ad5e=await this[_0x537325(0x192)](_0x2d7442,_0xfef3e,_0x2a69a4,_0x1be3e5);return _0x37ad5e;}catch(_0x223956){return this['logger']?.[_0x537325(0x151)](_0x537325(0x139),{'file':_0x2d7442,'error':_0x223956[_0x537325(0x115)]}),{'file':this[_0x537325(0x14b)]['createRelativePath'](_0x2d7442,_0x2a69a4),'fullPath':_0x2d7442,'error':_0x223956[_0x537325(0x115)],'success':![]};}}),_0x4fa0d2=await Promise['all'](_0x18bed7);_0x3c10ee['push'](..._0x4fa0d2['filter'](_0x5112d2=>_0x5112d2!==null));}_0x1be3e5[_0x336bca(0x1a0)]&&_0x1be3e5['onProgress']({'completed':_0x55c7a5[_0x336bca(0x114)],'total':_0x55c7a5['length'],'percentage':0x64});}else for(const _0xfaae5d of _0x55c7a5){try{const _0x30c9d2=await this['analyzeFile'](_0xfaae5d,_0xfef3e,_0x2a69a4,_0x1be3e5);_0x30c9d2&&_0x3c10ee[_0x336bca(0x1c8)](_0x30c9d2);}catch(_0x17d93b){this['logger']?.['warn'](_0x336bca(0x139),{'file':_0xfaae5d,'error':_0x17d93b['message']}),_0x3c10ee['push']({'file':this[_0x336bca(0x14b)]['createRelativePath'](_0xfaae5d,_0x2a69a4),'fullPath':_0xfaae5d,'error':_0x17d93b[_0x336bca(0x115)],'success':![]});}}return _0x3c10ee;}async[a0_0x389de5(0x18e)](_0x568365,_0x21430c,_0x35d75b,_0x2884e2={}){const _0x484817=a0_0x389de5,_0x3f9b06=a0_0x555190['isAbsolute'](_0x568365)?a0_0x555190[_0x484817(0x13c)](_0x568365):a0_0x555190['resolve'](_0x21430c,_0x568365),_0x335c42=this['directoryAccessManager'][_0x484817(0x16f)](_0x3f9b06,_0x35d75b);if(!_0x335c42['allowed'])throw new Error(_0x484817(0x158)+_0x335c42[_0x484817(0x148)]);if(_0x2884e2[_0x484817(0x1b7)]){const _0x1e63fd=this[_0x484817(0x14b)][_0x484817(0x1b3)](_0x3f9b06,_0x35d75b);if(!_0x1e63fd['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x1e63fd[_0x484817(0x148)]);}try{const _0x2a0b87=await a0_0x30f987[_0x484817(0x19e)](_0x3f9b06,'utf-8'),_0x26c3d7=await this[_0x484817(0x1ad)](),_0xbffdd5=await _0x26c3d7['fix'](_0x3f9b06,_0x2a0b87,{'workingDir':_0x21430c,'accessConfig':_0x35d75b,'framework':await this[_0x484817(0x1bd)](_0x21430c,this[_0x484817(0x16b)](_0x3f9b06))});return _0x2884e2['writeFile']&&_0xbffdd5['fixed']&&(await a0_0x30f987[_0x484817(0x1b7)](_0x3f9b06,_0xbffdd5['content'],'utf-8'),this[_0x484817(0x185)]?.['info']('File\x20fixed\x20and\x20written',{'file':_0x3f9b06})),{'file':this['directoryAccessManager']['createRelativePath'](_0x3f9b06,_0x35d75b),'fullPath':_0x3f9b06,'action':_0x484817(0x1d2),'fixed':_0xbffdd5[_0x484817(0x130)],'fixedCount':_0xbffdd5['fixedCount'],'remainingErrors':_0xbffdd5['remainingErrors'],'remainingWarnings':_0xbffdd5[_0x484817(0x127)],'changes':_0xbffdd5['changes'],'written':!!(_0x2884e2[_0x484817(0x1b7)]&&_0xbffdd5[_0x484817(0x130)]),'preview':!_0x2884e2[_0x484817(0x1b7)]&&_0xbffdd5['fixed']?_0xbffdd5['content']:undefined};}catch(_0x3605a0){throw new Error('Failed\x20to\x20fix\x20'+_0x568365+':\x20'+_0x3605a0['message']);}}async['formatFile'](_0x3ddee0,_0x31e84c,_0x19b3f4,_0xd649d6={}){const _0x76c7fb=a0_0x389de5,_0x39a333=a0_0x555190[_0x76c7fb(0x198)](_0x3ddee0)?a0_0x555190['normalize'](_0x3ddee0):a0_0x555190['resolve'](_0x31e84c,_0x3ddee0),_0xeab5d3=this['directoryAccessManager'][_0x76c7fb(0x16f)](_0x39a333,_0x19b3f4);if(!_0xeab5d3['allowed'])throw new Error(_0x76c7fb(0x158)+_0xeab5d3[_0x76c7fb(0x148)]);if(_0xd649d6['writeFile']){const _0x54ce7d=this['directoryAccessManager'][_0x76c7fb(0x1b3)](_0x39a333,_0x19b3f4);if(!_0x54ce7d['allowed'])throw new Error(_0x76c7fb(0x145)+_0x54ce7d['reason']);}try{const _0x391839=await a0_0x30f987[_0x76c7fb(0x19e)](_0x39a333,_0x76c7fb(0x125)),_0x362399=await this[_0x76c7fb(0x186)]();if(!_0x362399[_0x76c7fb(0x157)](_0x39a333))return{'file':this[_0x76c7fb(0x14b)]['createRelativePath'](_0x39a333,_0x19b3f4),'fullPath':_0x39a333,'action':'format','formatted':![],'skipped':!![],'skipReason':_0x76c7fb(0x195)};const _0x1c721b=await _0x362399['format'](_0x39a333,_0x391839,{'workingDir':_0x31e84c,'accessConfig':_0x19b3f4});return _0xd649d6[_0x76c7fb(0x1b7)]&&_0x1c721b[_0x76c7fb(0x1c6)]&&(await a0_0x30f987['writeFile'](_0x39a333,_0x1c721b['content'],_0x76c7fb(0x125)),this['logger']?.['info'](_0x76c7fb(0x11e),{'file':_0x39a333})),{'file':this[_0x76c7fb(0x14b)]['createRelativePath'](_0x39a333,_0x19b3f4),'fullPath':_0x39a333,'action':'format','formatted':_0x1c721b['formatted'],'linesChanged':_0x1c721b[_0x76c7fb(0x19b)],'changes':_0x1c721b[_0x76c7fb(0x108)],'written':!!(_0xd649d6['writeFile']&&_0x1c721b['formatted']),'preview':!_0xd649d6[_0x76c7fb(0x1b7)]&&_0x1c721b['formatted']?_0x1c721b['content']:undefined};}catch(_0x20e013){throw new Error('Failed\x20to\x20format\x20'+_0x3ddee0+':\x20'+_0x20e013['message']);}}async[a0_0x389de5(0x172)](_0x3741fa,_0x33dbff,_0x21528d,_0x30a772={}){const _0x153790=a0_0x389de5,_0xe33f84=a0_0x555190['isAbsolute'](_0x3741fa)?a0_0x555190['normalize'](_0x3741fa):a0_0x555190['resolve'](_0x33dbff,_0x3741fa),_0x12d1a1=this[_0x153790(0x14b)][_0x153790(0x16f)](_0xe33f84,_0x21528d);if(!_0x12d1a1['allowed'])throw new Error(_0x153790(0x158)+_0x12d1a1['reason']);try{const _0x576ee8=await a0_0x30f987['stat'](_0xe33f84);if(_0x576ee8['size']>this[_0x153790(0x1c1)])throw new Error('File\x20too\x20large:\x20'+_0x576ee8[_0x153790(0x117)]+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x3afbdf=this['detectLanguage'](_0xe33f84);if(!_0x3afbdf||!['javascript','typescript',_0x153790(0x1ba)]['includes'](_0x3afbdf))return{'file':this[_0x153790(0x14b)]['createRelativePath'](_0xe33f84,_0x21528d),'fullPath':_0xe33f84,'language':_0x3afbdf||'unknown','issues':[],'skipped':!![],'skipReason':'Security\x20scanning\x20only\x20supports\x20JavaScript,\x20TypeScript,\x20and\x20Python\x20files'};const _0x4ccc12=await a0_0x30f987[_0x153790(0x19e)](_0xe33f84,_0x153790(0x125)),_0x4c9cd4=await this[_0x153790(0x124)](),_0x721b2d=await _0x4c9cd4['analyze'](_0xe33f84,_0x4ccc12,{'skipTestFiles':_0x30a772[_0x153790(0x16c)]!==![]}),_0x23ff80={'file':this[_0x153790(0x14b)][_0x153790(0x1d6)](_0xe33f84,_0x21528d),'fullPath':_0xe33f84,'language':_0x3afbdf,'action':'security-scan','critical':_0x721b2d[_0x153790(0x14e)](_0x3da1f9=>_0x3da1f9['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x721b2d[_0x153790(0x14e)](_0x58464f=>_0x58464f[_0x153790(0x17e)]===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x721b2d['filter'](_0x541033=>_0x541033[_0x153790(0x17e)]===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x721b2d[_0x153790(0x14e)](_0x449164=>_0x449164[_0x153790(0x17e)]===STATIC_ANALYSIS[_0x153790(0x146)]['INFO']),'totalIssues':_0x721b2d['length'],'analyzed':!![],'scannersUsed':_0x721b2d['map'](_0x503d91=>_0x503d91[_0x153790(0x141)])['filter']((_0x35cddc,_0x13f17f,_0x5788b4)=>_0x5788b4['indexOf'](_0x35cddc)===_0x13f17f),'timestamp':new Date()['toISOString']()};return _0x23ff80;}catch(_0x169e3b){throw new Error(_0x153790(0x175)+_0x3741fa+':\x20'+_0x169e3b[_0x153790(0x115)]);}}async['securityScanProject'](_0x3c4683,_0x4c6441,_0x2fd93a,_0x2e4a09,_0x46c358={}){const _0xb1be40=a0_0x389de5,_0x58d7f3=a0_0x555190[_0xb1be40(0x198)](_0x3c4683)?a0_0x555190['normalize'](_0x3c4683):a0_0x555190[_0xb1be40(0x197)](_0x2fd93a,_0x3c4683),_0x32f895=this['directoryAccessManager'][_0xb1be40(0x16f)](_0x58d7f3,_0x2e4a09);if(!_0x32f895[_0xb1be40(0x183)])throw new Error('Read\x20access\x20denied:\x20'+_0x32f895[_0xb1be40(0x148)]);const _0x49980d=await this[_0xb1be40(0x124)](),_0x3793a0=await _0x49980d['analyzeProject'](_0x58d7f3,_0xb1be40(0xf8),_0x46c358),_0x47b1f1=_0x4c6441||'**/*.{js,jsx,mjs,cjs,ts,tsx,py}',_0x284909=await this['findFiles'](_0x58d7f3,_0x47b1f1);if(_0x284909['length']>this[_0xb1be40(0x153)])throw new Error('Too\x20many\x20files:\x20'+_0x284909['length']+_0xb1be40(0x1a4)+this['maxFilesPerBatch']+')');const _0x520402=[];if(this['parallelAnalysis']&&_0x284909[_0xb1be40(0x114)]>0x1){this[_0xb1be40(0x185)]?.['debug']('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x284909[_0xb1be40(0x114)],'batchSize':this['maxParallelFiles']});for(let _0x240ba6=0x0;_0x240ba6<_0x284909[_0xb1be40(0x114)];_0x240ba6+=this['maxParallelFiles']){const _0xe36df1=_0x284909[_0xb1be40(0x17a)](_0x240ba6,_0x240ba6+this['maxParallelFiles']);_0x46c358[_0xb1be40(0x1a0)]&&_0x46c358[_0xb1be40(0x1a0)]({'completed':_0x240ba6,'total':_0x284909['length'],'percentage':Math[_0xb1be40(0x121)](_0x240ba6/_0x284909[_0xb1be40(0x114)]*0x64)});const _0x52388a=_0xe36df1[_0xb1be40(0x176)](async _0x1731eb=>{const _0x32fdc2=_0xb1be40;try{return await this[_0x32fdc2(0x172)](_0x1731eb,_0x2fd93a,_0x2e4a09,_0x46c358);}catch(_0x105615){return this[_0x32fdc2(0x185)]?.['warn'](_0x32fdc2(0x112),{'file':_0x1731eb,'error':_0x105615['message']}),{'file':this['directoryAccessManager'][_0x32fdc2(0x1d6)](_0x1731eb,_0x2e4a09),'fullPath':_0x1731eb,'error':_0x105615[_0x32fdc2(0x115)],'success':![]};}}),_0x218391=await Promise['all'](_0x52388a);_0x520402[_0xb1be40(0x1c8)](..._0x218391[_0xb1be40(0x14e)](_0x4ea096=>_0x4ea096!==null));}_0x46c358[_0xb1be40(0x1a0)]&&_0x46c358['onProgress']({'completed':_0x284909[_0xb1be40(0x114)],'total':_0x284909['length'],'percentage':0x64});}else for(const _0x57e2c2 of _0x284909){try{const _0x5f0ca4=await this['securityScanFile'](_0x57e2c2,_0x2fd93a,_0x2e4a09,_0x46c358);_0x5f0ca4&&_0x520402['push'](_0x5f0ca4);}catch(_0x4ac235){this[_0xb1be40(0x185)]?.['warn'](_0xb1be40(0x112),{'file':_0x57e2c2,'error':_0x4ac235[_0xb1be40(0x115)]}),_0x520402[_0xb1be40(0x1c8)]({'file':this[_0xb1be40(0x14b)][_0xb1be40(0x1d6)](_0x57e2c2,_0x2e4a09),'fullPath':_0x57e2c2,'error':_0x4ac235['message'],'success':![]});}}return _0x3793a0[_0xb1be40(0x114)]>0x0&&_0x520402['push']({'file':a0_0x555190['join'](_0x58d7f3,'package.json'),'fullPath':a0_0x555190[_0xb1be40(0x18c)](_0x58d7f3,_0xb1be40(0x126)),'action':_0xb1be40(0x109),'critical':_0x3793a0[_0xb1be40(0x14e)](_0x3d7ae2=>_0x3d7ae2[_0xb1be40(0x17e)]===STATIC_ANALYSIS['SEVERITY'][_0xb1be40(0x116)]),'errors':_0x3793a0['filter'](_0x2372ed=>_0x2372ed[_0xb1be40(0x17e)]===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x3793a0[_0xb1be40(0x14e)](_0x34313e=>_0x34313e[_0xb1be40(0x17e)]===STATIC_ANALYSIS[_0xb1be40(0x146)]['WARNING']),'info':_0x3793a0['filter'](_0x4aecae=>_0x4aecae[_0xb1be40(0x17e)]===STATIC_ANALYSIS['SEVERITY'][_0xb1be40(0x164)]),'totalIssues':_0x3793a0[_0xb1be40(0x114)],'analyzed':!![],'scannersUsed':['npm-audit'],'timestamp':new Date()[_0xb1be40(0x1a5)]()}),_0x520402;}async[a0_0x389de5(0x15f)](_0x4839c4,_0x79e58d,_0x45600,_0x33e39e={}){const _0x20e084=a0_0x389de5,_0x5a6bf0=a0_0x555190['isAbsolute'](_0x4839c4)?a0_0x555190['normalize'](_0x4839c4):a0_0x555190['resolve'](_0x79e58d,_0x4839c4),_0xad18d8=this['directoryAccessManager']['validateReadAccess'](_0x5a6bf0,_0x45600);if(!_0xad18d8[_0x20e084(0x183)])throw new Error('Read\x20access\x20denied:\x20'+_0xad18d8['reason']);try{const _0x3e28ea=await a0_0x30f987[_0x20e084(0x1c0)](_0x5a6bf0);if(_0x3e28ea[_0x20e084(0x117)]>this[_0x20e084(0x1c1)])throw new Error(_0x20e084(0x181)+_0x3e28ea['size']+'\x20bytes\x20(max\x20'+this[_0x20e084(0x1c1)]+')');const _0x16ab19=await this[_0x20e084(0x1ca)](),_0x19016b=await _0x16ab19['validate'](_0x5a6bf0,_0x33e39e),_0x733403={'file':this['directoryAccessManager']['createRelativePath'](_0x5a6bf0,_0x45600),'fullPath':_0x5a6bf0,'action':_0x20e084(0x136),'critical':_0x19016b[_0x20e084(0x14e)](_0x1769b9=>_0x1769b9['severity']===STATIC_ANALYSIS[_0x20e084(0x146)]['CRITICAL']),'errors':_0x19016b[_0x20e084(0x14e)](_0x542303=>_0x542303[_0x20e084(0x17e)]===STATIC_ANALYSIS[_0x20e084(0x146)]['ERROR']),'warnings':_0x19016b['filter'](_0x1a4b2b=>_0x1a4b2b['severity']===STATIC_ANALYSIS['SEVERITY'][_0x20e084(0x16e)]),'info':_0x19016b[_0x20e084(0x14e)](_0x3e0c63=>_0x3e0c63[_0x20e084(0x17e)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x19016b['length'],'analyzed':!![],'validatorsUsed':_0x19016b[_0x20e084(0x176)](_0x2bdcd5=>_0x2bdcd5['validator'])['filter']((_0x1a89ac,_0x308fa2,_0x98981e)=>_0x98981e['indexOf'](_0x1a89ac)===_0x308fa2),'timestamp':new Date()['toISOString']()};return _0x733403;}catch(_0x11a2c1){throw new Error(_0x20e084(0x1aa)+_0x4839c4+':\x20'+_0x11a2c1['message']);}}async[a0_0x389de5(0x1cb)](_0x4814b5,_0x434429,_0x324bbe,_0x2642d3={}){const _0x4a244f=a0_0x389de5,_0x241ad3=a0_0x555190['isAbsolute'](_0x4814b5)?a0_0x555190['normalize'](_0x4814b5):a0_0x555190['resolve'](_0x434429,_0x4814b5),_0x3591f5=this[_0x4a244f(0x14b)][_0x4a244f(0x16f)](_0x241ad3,_0x324bbe);if(!_0x3591f5['allowed'])throw new Error(_0x4a244f(0x158)+_0x3591f5['reason']);const _0x52e924=await this['findConfigFiles'](_0x241ad3);if(_0x52e924['length']>this['maxFilesPerBatch'])throw new Error(_0x4a244f(0x166)+_0x52e924['length']+_0x4a244f(0x1a4)+this[_0x4a244f(0x153)]+')');const _0xc4200d=[];for(const _0x13a7cf of _0x52e924){try{const _0x407071=await this['validateConfigFile'](_0x13a7cf,_0x434429,_0x324bbe,_0x2642d3);_0x407071&&_0xc4200d['push'](_0x407071);}catch(_0x51e7d5){this[_0x4a244f(0x185)]?.[_0x4a244f(0x151)](_0x4a244f(0x1c2),{'file':_0x13a7cf,'error':_0x51e7d5['message']}),_0xc4200d['push']({'file':this[_0x4a244f(0x14b)]['createRelativePath'](_0x13a7cf,_0x324bbe),'fullPath':_0x13a7cf,'error':_0x51e7d5[_0x4a244f(0x115)],'success':![]});}}return _0xc4200d;}async['findConfigFiles'](_0xa7f289){const _0xf976ab=a0_0x389de5,_0x10be03=[],_0x1bf1ce=['package.json',_0xf976ab(0x15a),'Dockerfile',_0xf976ab(0x134),_0xf976ab(0x101),'.env',_0xf976ab(0x14c),'.eslintrc.js',_0xf976ab(0x143),_0xf976ab(0x1b8),'.prettierrc.json'],_0x3106ef=['.yml',_0xf976ab(0x14f),'.json','.tf','.tfvars'],_0x43dd69=async _0x201f7a=>{const _0x5c6572=_0xf976ab,_0x3feaf5=await a0_0x30f987['readdir'](_0x201f7a,{'withFileTypes':!![]});for(const _0x523698 of _0x3feaf5){const _0x865475=a0_0x555190[_0x5c6572(0x18c)](_0x201f7a,_0x523698['name']);if(_0x523698['isDirectory']()){if(_0x523698[_0x5c6572(0x13a)]==='.github'||_0x523698['name']==='kubernetes'||_0x523698['name']==='k8s'||_0x523698[_0x5c6572(0x13a)]===_0x5c6572(0x196))await _0x43dd69(_0x865475);else{if(![_0x5c6572(0x14a),_0x5c6572(0x138),'dist',_0x5c6572(0x147)]['includes'](_0x523698['name']))continue;}}else{if(_0x523698['isFile']()){if(_0x1bf1ce[_0x5c6572(0x199)](_0x523698[_0x5c6572(0x13a)]))_0x10be03['push'](_0x865475);else{const _0x4051e7=a0_0x555190[_0x5c6572(0x18b)](_0x523698['name'])[_0x5c6572(0x194)]();if(_0x3106ef[_0x5c6572(0x199)](_0x4051e7)){const _0x76adce=a0_0x555190[_0x5c6572(0x142)](a0_0x555190['dirname'](_0x865475));(_0x76adce==='kubernetes'||_0x76adce===_0x5c6572(0x14d)||_0x76adce==='terraform'||_0x76adce===_0x5c6572(0x1d4))&&_0x10be03[_0x5c6572(0x1c8)](_0x865475);}}}}}};return await _0x43dd69(_0xa7f289),_0x10be03;}['detectLanguage'](_0x428493){const _0x59ab90=a0_0x389de5,_0x3dab74=a0_0x555190[_0x59ab90(0x18b)](_0x428493)['toLowerCase']();return STATIC_ANALYSIS[_0x59ab90(0x1d1)][_0x3dab74]||null;}async[a0_0x389de5(0x1bd)](_0x379199,_0x488ddc){const _0x55345a=a0_0x389de5;try{if(_0x488ddc===STATIC_ANALYSIS['LANGUAGE'][_0x55345a(0x122)]||_0x488ddc===STATIC_ANALYSIS[_0x55345a(0x1b2)]['TYPESCRIPT'])return await this['detectJSFramework'](_0x379199);if(_0x488ddc===STATIC_ANALYSIS['LANGUAGE'][_0x55345a(0x1d9)])return await this[_0x55345a(0x1ac)](_0x379199);return null;}catch(_0x2c0523){return this[_0x55345a(0x185)]?.[_0x55345a(0x167)]('Framework\x20detection\x20failed',{'error':_0x2c0523['message']}),null;}}async[a0_0x389de5(0x1d8)](_0xf49cc6){const _0x2eabc=a0_0x389de5;try{const _0x38e0df=a0_0x555190['join'](_0xf49cc6,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x2eabc(0x122)]),_0x803d9e=await a0_0x30f987['readFile'](_0x38e0df,_0x2eabc(0x125)),_0x3f6e5a=JSON['parse'](_0x803d9e),_0x37f045={..._0x3f6e5a['dependencies'],..._0x3f6e5a['devDependencies']};for(const [_0x2da233,_0x491820]of Object['entries'](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x37f045[_0x491820])return _0x2da233['toLowerCase']();}return null;}catch(_0x3f14bd){return null;}}async['detectPythonFramework'](_0x17e7cd){const _0x169489=a0_0x389de5;try{const _0x17bb83=a0_0x555190['join'](_0x17e7cd,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON']),_0x9f886d=await a0_0x30f987[_0x169489(0x19e)](_0x17bb83,_0x169489(0x125));for(const [_0x53e0e6,_0x2bc0c5]of Object[_0x169489(0x17f)](STATIC_ANALYSIS[_0x169489(0x137)])){if(_0x9f886d[_0x169489(0x194)]()[_0x169489(0x199)](_0x2bc0c5))return _0x53e0e6['toLowerCase']();}return null;}catch(_0x453c1b){try{const _0x43501b=a0_0x555190['join'](_0x17e7cd,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON_POETRY']),_0xf6f287=await a0_0x30f987[_0x169489(0x19e)](_0x43501b,_0x169489(0x125));for(const [_0x3721e5,_0x25d6f7]of Object['entries'](STATIC_ANALYSIS['PYTHON_FRAMEWORKS'])){if(_0xf6f287[_0x169489(0x194)]()[_0x169489(0x199)](_0x25d6f7))return _0x3721e5[_0x169489(0x194)]();}}catch{}return null;}}async[a0_0x389de5(0x13f)](_0x5d8f97,_0x2e96b0){const _0x4e6720=a0_0x389de5,_0x4fe527=[],_0x1cddfe=_0x2e96b0||_0x4e6720(0x12b),_0x4585d0=_0xd4f1de=>{const _0xa902e8=_0x4e6720,_0xdf3aee=[],_0x14171e=_0xd4f1de[_0xa902e8(0xf9)](/\*\.\{([^}]+)\}/);if(_0x14171e){const _0x4bb76e=_0x14171e[0x1][_0xa902e8(0x1c5)](',')[_0xa902e8(0x176)](_0x487f80=>_0x487f80['trim']());_0x4bb76e['forEach'](_0x20e495=>_0xdf3aee[_0xa902e8(0x1c8)](_0x20e495[_0xa902e8(0x105)]('.')?_0x20e495:'.'+_0x20e495));}else{const _0x2e9797=_0xd4f1de[_0xa902e8(0xf9)](/\*\.([a-z]+)$/i);if(_0x2e9797){const _0x3bbfae=_0x2e9797[0x1];_0xdf3aee['push'](_0x3bbfae['startsWith']('.')?_0x3bbfae:'.'+_0x3bbfae);}}if(_0xdf3aee['length']===0x0)return null;return _0xdf3aee;},_0x19d556=_0x4585d0(_0x1cddfe),_0xb67d26=async _0x559eb=>{const _0x141627=_0x4e6720,_0x2156a9=await a0_0x30f987['readdir'](_0x559eb,{'withFileTypes':!![]});for(const _0x56b478 of _0x2156a9){const _0x19f565=a0_0x555190['join'](_0x559eb,_0x56b478['name']);if(_0x56b478[_0x141627(0x1c9)]())!['node_modules',_0x141627(0x138),_0x141627(0x189),'build',_0x141627(0x17c),_0x141627(0x13b),_0x141627(0x1c4)]['includes'](_0x56b478['name'])&&await _0xb67d26(_0x19f565);else{if(_0x56b478[_0x141627(0x156)]()){const _0x31ed4f=a0_0x555190[_0x141627(0x18b)](_0x56b478[_0x141627(0x13a)])[_0x141627(0x194)]();STATIC_ANALYSIS[_0x141627(0x1d1)][_0x31ed4f]&&((_0x19d556===null||_0x19d556['includes'](_0x31ed4f))&&_0x4fe527[_0x141627(0x1c8)](_0x19f565));}}}};return await _0xb67d26(_0x5d8f97),_0x4fe527;}async['getAnalyzer'](_0x1f2886){const _0x280918=a0_0x389de5;try{if(_0x1f2886===STATIC_ANALYSIS[_0x280918(0x1b2)]['JAVASCRIPT']){if(!this[_0x280918(0x106)]['javascript']){const {default:_0x1cb93f}=await import(_0x280918(0x152));this['analyzers']['javascript']=new _0x1cb93f(this['logger']);}return this['analyzers']['javascript'];}if(_0x1f2886===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT']){if(!this['analyzers'][_0x280918(0x191)]){const {default:_0x3fccf7}=await import('../analyzers/TypeScriptAnalyzer.js');this[_0x280918(0x106)][_0x280918(0x191)]=new _0x3fccf7(this[_0x280918(0x185)]);}return this[_0x280918(0x106)]['typescript'];}if(_0x1f2886===STATIC_ANALYSIS['LANGUAGE']['PYTHON']){if(!this[_0x280918(0x106)][_0x280918(0x1ba)]){const {default:_0x4cde2d}=await import('../analyzers/PythonAnalyzer.js');this[_0x280918(0x106)][_0x280918(0x1ba)]=new _0x4cde2d(this['logger']);}return this['analyzers']['python'];}if(_0x1f2886===STATIC_ANALYSIS['LANGUAGE']['CSS']||_0x1f2886===STATIC_ANALYSIS['LANGUAGE']['SCSS']||_0x1f2886===STATIC_ANALYSIS[_0x280918(0x1b2)][_0x280918(0x113)]){if(!this['analyzers']['css']){const {default:_0x299f9b}=await import(_0x280918(0x187));this['analyzers']['css']=new _0x299f9b(this['logger']);}return this['analyzers']['css'];}return null;}catch(_0x4298d5){return this['logger']?.[_0x280918(0x17b)](_0x280918(0xfc),{'language':_0x1f2886,'error':_0x4298d5[_0x280918(0x115)]}),null;}}async['getESLintAnalyzer'](){const _0x5a7071=a0_0x389de5;if(!this[_0x5a7071(0x106)][_0x5a7071(0x135)]){const {default:_0x29ffca}=await import(_0x5a7071(0x10d));this[_0x5a7071(0x106)][_0x5a7071(0x135)]=new _0x29ffca(this['logger']);}return this['analyzers']['eslint'];}async[a0_0x389de5(0x186)](){const _0x1ff853=a0_0x389de5;if(!this[_0x1ff853(0x123)]['prettier']){const {default:_0x330e47}=await import(_0x1ff853(0x190));this[_0x1ff853(0x123)]['prettier']=new _0x330e47(this['logger']);}return this[_0x1ff853(0x123)]['prettier'];}async['getSecurityAnalyzer'](){const _0x257933=a0_0x389de5;if(!this[_0x257933(0x106)]['security']){const {default:_0x131f6d}=await import('../analyzers/SecurityAnalyzer.js');this['analyzers'][_0x257933(0x1a9)]=new _0x131f6d(this['logger']);}return this['analyzers']['security'];}async['getConfigValidator'](){const _0x4e72b9=a0_0x389de5;if(!this['analyzers']['config']){const {default:_0x1b4c1b}=await import(_0x4e72b9(0x1b4));this[_0x4e72b9(0x106)]['config']=new _0x1b4c1b(this[_0x4e72b9(0x185)]);}return this['analyzers']['config'];}['updateSummary'](_0x1a1358,_0x3001e2){const _0x4baa43=a0_0x389de5;if(_0x3001e2[_0x4baa43(0x16a)]){_0x1a1358[_0x4baa43(0x1b5)]++;const _0x4bd88f=_0x3001e2['critical']?.['length']||0x0,_0x324ff0=_0x3001e2['errors']?.['length']||0x0,_0x3ca5bb=_0x3001e2['warnings']?.[_0x4baa43(0x114)]||0x0,_0x3d6c15=_0x3001e2[_0x4baa43(0x10f)]?.['length']||0x0;_0x1a1358['totalCritical']===undefined&&(_0x1a1358[_0x4baa43(0x1c3)]=0x0);_0x1a1358['totalCritical']+=_0x4bd88f,_0x1a1358['totalErrors']+=_0x324ff0,_0x1a1358[_0x4baa43(0x16d)]+=_0x3ca5bb,_0x1a1358[_0x4baa43(0x169)]+=_0x3d6c15;(_0x4bd88f>0x0||_0x324ff0>0x0)&&_0x1a1358[_0x4baa43(0x170)]++;_0x3001e2[_0x4baa43(0x1a6)]&&(_0x1a1358[_0x4baa43(0x15d)][_0x3001e2[_0x4baa43(0x1a6)]]=(_0x1a1358['filesByLanguage'][_0x3001e2['language']]||0x0)+0x1);const _0x17ce8c=[..._0x3001e2['critical']||[],..._0x3001e2[_0x4baa43(0xfb)]||[],..._0x3001e2[_0x4baa43(0x1ce)]||[]];for(const _0x5d654c of _0x17ce8c){_0x5d654c[_0x4baa43(0x104)]&&(_0x1a1358['errorsByCategory'][_0x5d654c[_0x4baa43(0x104)]]=(_0x1a1358['errorsByCategory'][_0x5d654c['category']]||0x0)+0x1);}}}[a0_0x389de5(0x1ae)](_0x32f295){const _0x19cc67=a0_0x389de5;return a0_0x306ea3[_0x19cc67(0x173)](_0x19cc67(0x1ab))['update'](_0x32f295)['digest']('hex')[_0x19cc67(0x155)](0x0,0x10);}[a0_0x389de5(0x1af)](){const _0xf7c193=a0_0x389de5,_0x1aee9c=this[_0xf7c193(0x100)]['totalAnalyses']>0x0?this['metrics'][_0xf7c193(0x1cd)]/this['metrics']['totalAnalyses']*0x64:0x0,_0xb72349=this['metrics']['filesAnalyzed']>0x0?this[_0xf7c193(0x100)][_0xf7c193(0x18f)]/this['metrics'][_0xf7c193(0x15e)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0x1aee9c*0xa)/0xa,'averageAnalysisTime':Math['round'](_0xb72349),'cacheSize':this['analysisCache'][_0xf7c193(0x117)]};}['resetPerformanceMetrics'](){const _0x1261d5=a0_0x389de5;this[_0x1261d5(0x100)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}[a0_0x389de5(0x11f)](){const _0x1d34cc=a0_0x389de5;this['analysisCache'][_0x1d34cc(0x179)](),this[_0x1d34cc(0x185)]?.[_0x1d34cc(0x167)](_0x1d34cc(0x1d3));}['getSupportedActions'](){const _0x5827db=a0_0x389de5;return[_0x5827db(0x177),_0x5827db(0x10b),'fix','format','security-scan','security-scan-project','validate-config',_0x5827db(0x19d)];}[a0_0x389de5(0xfa)](){const _0x5481eb=a0_0x389de5;return{'type':_0x5481eb(0x160),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x5481eb(0x160),'properties':{'type':{'type':'string','enum':this[_0x5481eb(0x162)]()},'filePath':{'type':'string'},'directory':{'type':'string'},'pattern':{'type':'string'},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':['type']}}},'required':[_0x5481eb(0x1b0)]};}}export default StaticAnalysisTool;function a0_0x3292(){const _0x7a7896=['C2L6zq','zxHLyW','otmYmtn6D2zbu3q','vg9Vig1HBNKGzMLSzxm6ia','rvjst1i','Bwf4ugfYywXSzwXgAwXLCW','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','rMLSzsbMB3jTyxr0zwqGyw5KihDYAxr0zw4','y2XLyxjdywnOzq','zMLSzs1WyxrO','CM91BMq','sKfwqvnduKLqva','zM9YBwf0DgvYCW','z2v0u2vJDxjPDhLbBMfSExPLCG','DxrMltG','CgfJA2fNzs5QC29U','CMvTywLUAw5Nv2fYBMLUz3m','Dhj1BMnHDgvK','qu5btfLtsvnFveLnru9vva','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4TChjVAMvJDa','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5lgnZCYXZy3nZlhnHC3mSBgvZC30','C2v0','Aw5JBhvKzvDHCM5PBMDZ','z2v0rgvZy3jPChrPB24','CgfYC2vbDhrYAwj1DgvZ','zML4zwq','mtC4mJG5nvz2tKvKEq','tufyx0zjtevFu0LArv9gt1jFqu5btfLtsvm','AxnbCNjHEq','zg9JA2vYlwnVBxbVC2uUEw1S','zxnSAw50','DMfSAwrHDguTy29UzMLN','ufLuse9ox0zsqu1fv09ss1m','lMDPDa','rMfPBgvKihrVigfUywX5EMuGzMLSzsbPBIbWCM9Qzwn0','BMfTzq','lNzLBNy','BM9YBwfSAxPL','yw5HBhLZAxndywnOzq','mZq0mJy1nNPTsLPgBW','zMLUzezPBgvZ','zgLYzwn0B3j5','C2nHBM5LCG','yMfZzw5HBwu','lMvZBgLUDhjJlMPZB24','z2v0','v3jPDguGywnJzxnZigrLBMLLzdOG','u0vwrvjjvfK','yNvPBgq','CMvHC29U','DgLTzw91Da','BM9Kzv9TB2r1BgvZ','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','lMvUDI5LEgfTCgXL','AZHZ','zMLSDgvY','lNLHBwW','vg9Vig1HBNKGywn0Aw9UCZOG','D2fYBG','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','Bwf4rMLSzxnqzxjcyxrJAa','zMLSzvbHDgG','C3vIC3rYAw5N','AxngAwXL','AxntDxbWB3j0zwq','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y3DK','DhnJB25MAwCUANnVBG','DxnLq29UDgvUDeHHC2G','cLn0yxrPyYbdB2rLiefUywX5C2LZifrVB2W6iefUywX5EMuGy29KzsbMAwXLCYbMB3iGzxjYB3jZihDPDgHVDxqGzxHLy3v0Aw9UcGPuAgLZihrVB2WGCgvYzM9YBxmGC3rHDgLJigfUywX5C2LZig9UignVzguGzMLSzxmGDg8GzMLUzcbZEw50yxGGzxjYB3jZlcb0ExbLigvYCM9YCYWGAw1WB3j0igLZC3vLCYWGyw5Kig90AgvYihbYB2jSzw1ZihDPDgHVDxqGCNvUBMLUzYb0AguGy29Kzs4GsxqGDxnLCYbVzMzPy2LHBcbSyw5NDwfNzsbWyxjZzxjZigzVCIbHy2n1CMf0zsbYzxn1BhrZlGOku1vque9sveveieXbtKDvquDfuZOklsbkyxzHu2nYAxb0icGUANmSic5QC3GSic5TANmSic5JANmPcI0GvhLWzvnJCMLWDcaOlNrZlcaUDhn4kqOTifb5DgHVBIaOlNb5kqOTientuYaOlMnZCYKklsbtq1nticGUC2nZCYWGlNnHC3mPcI0GtevtuYaOlMXLC3mPcGPvu0fhrsaTifHntcbgt1jnqvq6cGPtAw5NBguGrMLSzsbbBMfSExnPCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVAw5KzxGUANmIic8+cLSVDg9VBf0kcK11BhrPCgXLiezPBgvZiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zsbMAwXLlxbHDgG9iNnYyY9PBMrLEc5QCYiGlZ4kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDxrPBhmUANmIic8+cJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2nVBxbVBMvUDhmVqNv0Dg9UlMPZEciGlZ4kwY90B29SxqOkuhjVAMvJDc1xAwrLiefUywX5C2LZoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8yw5HBhL6zs1WCM9Qzwn0igrPCMvJDg9YEt0IC3jJiIbWyxr0zxjUpsiQkI8QlMPZiIaVpGPBl3rVB2XDcGPbDxrVluzPEcbdB2rLieLZC3vLCZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgzPEcbMAwXLlxbHDgG9iNnYyY9HChaUANmIic8+cLSVDg9VBf0kcKzVCM1HDcbdB2rLoGPBDg9VBcbPzd0IC3rHDgLJyw5HBhLZAxmIxqO8zM9YBwf0igzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkvvnbr0uGlsbku09oiezpuK1bvdOkcMbGygPZB24kEWOGicj0B29SswqIoIaIC3rHDgLJyw5HBhLZAxmIlaOGicjHy3rPB25ZiJOGwWOGicaGEWOGicaGicaIDhLWzsi6icjHBMfSExPLiIWkicaGicaGiMzPBgvqyxrOiJOGiNnYyY9PBMrLEc5QCYikicaGih0ScIaGicb7cIaGicaGicj0ExbLiJOGiMfUywX5EMuTChjVAMvJDciScIaGicaGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaGicaGiNbHDhrLCM4IoIaIkIOVkI57ANmSDhmSChL9iGOGicaGFqOGif0kFqPGygakcLbbuKfnrvrfuLm6cI0GzMLSzs1WyxrOoIbqyxrOihrVigzPBguGDg8Gyw5HBhL6zsaOzM9YihnPBMDSzsbMAwXLkqOTigrPCMvJDg9YEtOGrgLYzwn0B3j5ihrVigfUywX5EMuGkgzVCIbWCM9Qzwn0lxDPzguPcI0GCgf0DgvYBJOGr2XVyIbWyxr0zxjUigzVCIbMAwXLCYb0BYbPBMnSDwrLicHVChrPB25HBcWGzgvMyxvSDhmGDg8GBgfUz3vHz2uTC3bLy2LMAwmGCgf0DgvYBNmPcI0GAw5JBhvKzs13yxjUAw5NCZOGsw5JBhvKzsb3yxjUAw5NCYbPBIbYzxn1BhrZicH0CNvLl2zHBhnLlcbKzwzHDwX0oIb0CNvLkqOTig1HEc1LCNjVCNm6ie1HEgLTDw0GBNvTyMvYig9MigvYCM9YCYb0BYbYzxr1CM4GkgrLzMf1Bhq6igfSBcKkcK9vvfbvvcbgt1jnqvq6cLjLDhvYBNmGC3rYDwn0DxjLzcbLCNjVCIbPBMzVCM1HDgLVBJOklsbMAwXLoIbgAwXLihbHDgGklsbSAw5LoIbmAw5Lig51BwjLCGOTignVBhvTBJOGq29SDw1Uig51BwjLCGOTihnLDMvYAxr5oIbJCML0AwnHBcb8igvYCM9YihWGD2fYBMLUzYb8igLUzM8klsbYDwXLoIbsDwXLigLKzw50AwzPzxiklsbTzxnZywDLoIbiDw1HBI1YzwfKywjSzsbKzxnJCMLWDgLVBGOTignHDgvNB3j5oIbZEw50yxGGFcb0ExbLihWGAw1WB3j0ihWGC3r5BguGFcbZzwn1CML0Esb8ihbLCMzVCM1HBMnLihWGyMvZDf9WCMfJDgLJzqOTigzPEgfIBgu6ifDOzxrOzxiGzxjYB3iGy2fUigjLigf1Dg8TzML4zwqklsbZDwDNzxn0Aw9UoIbgAxGGC3vNz2vZDgLVBIaOAwyGyxbWBgLJywjSzsKklsbYzw1LzgLHDgLVBJOGu2vJDxjPDhKGCMvTzwrPyxrPB24Gywr2AwnLicHMB3iGC2vJDxjPDhKGAxnZDwvZkqOkrevurunusu9ooGOTieXHBMD1ywDLoIbbDxrVBwf0AwnHBgX5igrLDgvJDgvKigzYB20GzMLSzsbLEhrLBNnPB24klsbgCMfTzxDVCMS6ierLDgvJDgvKigzYB20GCgfJA2fNzs5QC29UlcbYzxf1AxjLBwvUDhmUDhH0lcbLDgmUcI0Gq29UDgv4DdOGuhjVAMvJDcbZDhj1y3r1CMuGyw5HBhL6zwqGzM9YigjLDhrLCIbHy2n1CMfJEqOkrvHbtvbmrvm6cGPgAw5KigfSBcbLCNjVCNmGAw4GysbkyxzHu2nYAxb0igzPBgu6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLigzPBguTCgf0Ad0IC3jJl2fWCc5QCYiGlZ4kwY90B29SxqOkqw5HBhL6zsbuExbLu2nYAxb0ihDPDgGGDhLWzsbJAgvJA2LUzZOkw3rVB2WGAwq9iNn0yxrPy2fUywX5C2LZiL0kpgfUywX5EMuGzMLSzs1WyxrOpsjZCMmVDhLWzxmUDhmIic8+cLSVDg9VBf0kcKnOzwnRigfSBcbqExrOB24GzMLSzxmGAw4GysbKAxjLy3rVCNK6cLT0B29SigLKpsjZDgf0AwnHBMfSExnPCYjDcJXHBMfSExPLlxbYB2PLy3qGzgLYzwn0B3j5psjIywnRzw5KiIbWyxr0zxjUpsiQkI8QlNb5iIaVpGPBl3rVB2XDcGPmsu1jvefusu9ouZOklsbgAwXLihnPEMuGBgLTAxq6ia','zMLSzxncEuXHBMD1ywDL','zMLSzxnbBMfSExPLza','DMfSAwrHDgvdB25MAwDgAwXL','B2jQzwn0','C2vJDxjPDhLty2fUuhjVAMvJDa','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','su5gtW','BxrPBwu','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','zgvIDwC','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzPEa','Dg90ywXjBMzV','yw5HBhL6zwq','zgv0zwn0tgfUz3vHz2u','C2TPCfrLC3rgAwXLCW','Dg90ywXxyxjUAw5NCW','v0fstKLorW','DMfSAwrHDgvszwfKqwnJzxnZ','zMLSzxnxAxrOrxjYB3jZ','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','C2vJDxjPDhLty2fUrMLSzq','y3jLyxrLsgfZAa','mZzbs3zTA0W','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4G','BwfW','yw5HBhL6zq','Dg90ywXbBMfSExnLCW','y2XLyxi','C2XPy2u','zxjYB3i','x19WEwnHy2HLx18','CMvXDwLYzxnqCM9Qzwn0','C2v2zxjPDhK','zw50CMLLCW','nJq4mZaWmuXysgH6zG','rMLSzsb0B28GBgfYz2u6ia','Bwf4rxjYB3jZ','ywXSB3DLza','D3jPDguTzMLSzq','Bg9Nz2vY','z2v0uhjLDhrPzxjgB3jTyxr0zxi','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','u3rHDgLJigfUywX5C2LZigfJDgLVBIbMywLSzwq','zgLZDa','C3vTBwfYEq','zxH0BMfTzq','AM9PBG','zMXVB3i','zML4rMLSzq','Dg90ywXbBMfSExnPC1rPBwu','lI4Vyw5HBhL6zxjZl1bYzxr0AwvYrM9YBwf0DgvYlMPZ','DhLWzxnJCMLWDa','yw5HBhL6zuzPBgu','CgfYywXSzwXbBMfSExnPCW','Dg9mB3DLCKnHC2u','rMLSzsb0ExbLig5VDcbZDxbWB3j0zwqGyNKGuhjLDhrPzxi','DgvYCMfMB3jT','CMvZB2X2zq','AxnbyNnVBhv0zq','Aw5JBhvKzxm','Cgf0DgvYBG','BgLUzxndAgfUz2vK','BM93','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','CMvHzezPBgu','mte5mJm5mMPpr3PMvW','B25qCM9NCMvZCW','nZjxExPmBNO','zw5HyMXLq2fJAgu','tufyx0zjtevtx1bfuL9cqvrdsa','icHTyxGG','Dg9ju09tDhjPBMC','BgfUz3vHz2u','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','y2fJAgvfEhbPCNK','C2vJDxjPDhK','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','C2HHmJu2','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','z2v0rvnmAw50qw5HBhL6zxi','y29TChv0zunVBNrLBNriyxnO','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','ywn0Aw9UCW','DxbKyxrLu3vTBwfYEq','tefor1vbr0u','DMfSAwrHDgvxCML0zufJy2vZCW','lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','Dg90ywXgAwXLCW','zM9YBwf0','D3jPDgvgAwXL','lNbYzxr0AwvYCMm','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','ChL0Ag9U','Aw5JBhvKzs13yxjUAw5NCW','vxnPBMCGCgfYywXSzwWGyw5HBhLZAxm','zgv0zwn0rNjHBwv3B3jR','C3rHDgLJyw5HBhLZAxm','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzVCM1HDa','C3rHDa','Bwf4rMLSzvnPEMu','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYbMAwXL','Dg90ywXdCML0AwnHBa','DMvUDG','C3bSAxq','zM9YBwf0DgvK','Bwf4lwvYCM9YCW','ChvZAa','AxneAxjLy3rVCNK','z2v0q29UzMLNvMfSAwrHDg9Y','DMfSAwrHDgvdB25MAwDeAxjLy3rVCNK','zMLSzxm','y2fJAgviAxrZ','D2fYBMLUz3m','z2v0v29YA2LUz0rPCMvJDg9YEq','Dhj1zq','rvHuru5tsu9ox1rpx0XbtKDvquDf','zML4','qw5HBhLZAxmGy2fJAguGy2XLyxjLza','D29YA2zSB3DZ','C2vJDxjPDhKTC2nHBG','y3jLyxrLuMvSyxrPDMvqyxrO','DhLWzq','zgv0zwn0sLngCMfTzxDVCMS','ufLuse9o','AMf2yxnJCMLWDa','Bwf0y2G','z2v0ugfYyw1LDgvYu2nOzw1H','zxjYB3jZ','rMfPBgvKihrVigXVywqGyw5HBhL6zxi','vxnPBMCGy2fJAgvKigfUywX5C2LZihjLC3vSDa','mtGWnJGXtKrVA0vK','C2TPCc10zxn0lwzPBgvZ','Bwv0CMLJCW','zg9JA2vYlwnVBxbVC2uUEwfTBa','qwn0Aw9Uia','DhjPBq','y2f0zwDVCNK','C3rHCNrZv2L0Aa','yw5HBhL6zxjZ','tuiGCgvYigzPBguklsbcyxrJAcbSAw1PDdOG','y2HHBMDLCW','zgvWzw5Kzw5JEs1Zy2fU','igzPBgvZihbLCIbVCgvYyxrPB24klsbbBMfSExnPCYb0Aw1LB3v0oIa','yw5HBhL6zs1WCM9Qzwn0','u3rHDgLJqw5HBhLZAxmGDg9VBcbWyxjZAw5NihbHCMfTzxrLCNm','lI4Vyw5HBhL6zxjZl0vttgLUDefUywX5EMvYlMPZ','nJa4mtq0zuzMzxfg','Aw5MBW','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','igj5DgvZicHTyxGG','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','tevtuW','BgvUz3rO','BwvZC2fNzq','q1jjveLdquW'];a0_0x3292=function(){return _0x7a7896;};return a0_0x3292();}
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();}